sig
  val names : string list
  val guest : (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t
  val steal : (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t
  val softirq : (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t
  val irq : (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t
  val iowait : (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t
  val idle : (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t
  val sys : (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t
  val nice : (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t
  val user : (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t
  val fold :
    init:'acc__ ->
    user:('acc__ ->
          (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> 'acc__) ->
    nice:('acc__ ->
          (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> 'acc__) ->
    sys:('acc__ ->
         (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> 'acc__) ->
    idle:('acc__ ->
          (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> 'acc__) ->
    iowait:('acc__ ->
            (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
            'acc__) ->
    irq:('acc__ ->
         (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
         'acc__) ->
    softirq:('acc__ ->
             (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
             'acc__) ->
    steal:('acc__ ->
           (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           'acc__) ->
    guest:('acc__ ->
           (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           'acc__) ->
    'acc__
  val make_creator :
    user:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
          'compile_acc__ -> ('input__ -> Procfs.bigint) * 'compile_acc__) ->
    nice:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
          'compile_acc__ -> ('input__ -> Procfs.bigint) * 'compile_acc__) ->
    sys:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
         'compile_acc__ -> ('input__ -> Procfs.bigint) * 'compile_acc__) ->
    idle:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
          'compile_acc__ -> ('input__ -> Procfs.bigint) * 'compile_acc__) ->
    iowait:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
            'compile_acc__ ->
            ('input__ -> Procfs.bigint option) * 'compile_acc__) ->
    irq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
         'compile_acc__ ->
         ('input__ -> Procfs.bigint option) * 'compile_acc__) ->
    softirq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
             'compile_acc__ ->
             ('input__ -> Procfs.bigint option) * 'compile_acc__) ->
    steal:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           'compile_acc__ ->
           ('input__ -> Procfs.bigint option) * 'compile_acc__) ->
    guest:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           'compile_acc__ ->
           ('input__ -> Procfs.bigint option) * 'compile_acc__) ->
    'compile_acc__ -> ('input__ -> Procfs.Kstat.cpu_t) * 'compile_acc__
  val create :
    user:Procfs.bigint ->
    nice:Procfs.bigint ->
    sys:Procfs.bigint ->
    idle:Procfs.bigint ->
    iowait:Procfs.bigint option ->
    irq:Procfs.bigint option ->
    softirq:Procfs.bigint option ->
    steal:Procfs.bigint option ->
    guest:Procfs.bigint option -> Procfs.Kstat.cpu_t
  val map :
    user:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
          Procfs.bigint) ->
    nice:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
          Procfs.bigint) ->
    sys:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
         Procfs.bigint) ->
    idle:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
          Procfs.bigint) ->
    iowait:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
            Procfs.bigint option) ->
    irq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
         Procfs.bigint option) ->
    softirq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
             Procfs.bigint option) ->
    steal:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           Procfs.bigint option) ->
    guest:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           Procfs.bigint option) ->
    Procfs.Kstat.cpu_t
  val iter :
    user:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> unit) ->
    nice:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> unit) ->
    sys:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> unit) ->
    idle:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> unit) ->
    iowait:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
            unit) ->
    irq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t -> unit) ->
    softirq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
             unit) ->
    steal:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           unit) ->
    guest:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           unit) ->
    unit
  val for_all :
    user:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> bool) ->
    nice:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> bool) ->
    sys:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> bool) ->
    idle:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> bool) ->
    iowait:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
            bool) ->
    irq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t -> bool) ->
    softirq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
             bool) ->
    steal:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           bool) ->
    guest:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           bool) ->
    bool
  val exists :
    user:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> bool) ->
    nice:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> bool) ->
    sys:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> bool) ->
    idle:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> bool) ->
    iowait:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
            bool) ->
    irq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t -> bool) ->
    softirq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
             bool) ->
    steal:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           bool) ->
    guest:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           bool) ->
    bool
  val to_list :
    user:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> 'elem__) ->
    nice:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> 'elem__) ->
    sys:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> 'elem__) ->
    idle:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t -> 'elem__) ->
    iowait:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
            'elem__) ->
    irq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
         'elem__) ->
    softirq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
             'elem__) ->
    steal:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           'elem__) ->
    guest:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
           'elem__) ->
    'elem__ list
  val map_poly :
    ([< `Read | `Set_and_create ], Procfs.Kstat.cpu_t, 'x0)
    Fieldslib.Field.user -> 'x0 list
  module Direct :
    sig
      val iter :
        Procfs.Kstat.cpu_t ->
        user:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
              Procfs.Kstat.cpu_t -> Procfs.bigint -> unit) ->
        nice:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
              Procfs.Kstat.cpu_t -> Procfs.bigint -> unit) ->
        sys:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
             Procfs.Kstat.cpu_t -> Procfs.bigint -> unit) ->
        idle:((Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
              Procfs.Kstat.cpu_t -> Procfs.bigint -> unit) ->
        iowait:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
                Procfs.Kstat.cpu_t -> Procfs.bigint option -> unit) ->
        irq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
             Procfs.Kstat.cpu_t -> Procfs.bigint option -> unit) ->
        softirq:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
                 Procfs.Kstat.cpu_t -> Procfs.bigint option -> unit) ->
        steal:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
               Procfs.Kstat.cpu_t -> Procfs.bigint option -> unit) ->
        guest:((Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
               Procfs.Kstat.cpu_t -> Procfs.bigint option -> unit) ->
        unit
      val fold :
        Procfs.Kstat.cpu_t ->
        init:'acc__ ->
        user:('acc__ ->
              (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
              Procfs.Kstat.cpu_t -> Procfs.bigint -> 'acc__) ->
        nice:('acc__ ->
              (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
              Procfs.Kstat.cpu_t -> Procfs.bigint -> 'acc__) ->
        sys:('acc__ ->
             (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
             Procfs.Kstat.cpu_t -> Procfs.bigint -> 'acc__) ->
        idle:('acc__ ->
              (Procfs.Kstat.cpu_t, Procfs.bigint) Fieldslib.Field.t ->
              Procfs.Kstat.cpu_t -> Procfs.bigint -> 'acc__) ->
        iowait:('acc__ ->
                (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
                Procfs.Kstat.cpu_t -> Procfs.bigint option -> 'acc__) ->
        irq:('acc__ ->
             (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
             Procfs.Kstat.cpu_t -> Procfs.bigint option -> 'acc__) ->
        softirq:('acc__ ->
                 (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
                 Procfs.Kstat.cpu_t -> Procfs.bigint option -> 'acc__) ->
        steal:('acc__ ->
               (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
               Procfs.Kstat.cpu_t -> Procfs.bigint option -> 'acc__) ->
        guest:('acc__ ->
               (Procfs.Kstat.cpu_t, Procfs.bigint option) Fieldslib.Field.t ->
               Procfs.Kstat.cpu_t -> Procfs.bigint option -> 'acc__) ->
        'acc__
    end
end