sig
  type 'a t =
    'It_type.IT.Subarray.C.t = private {
    arr : 'a array;
    ofs : int;
    len : int;
  }
  val empty : 'It_type.IT.S.C.t
  val mk : arr:'a array -> ofs:int -> len:int -> 'It_type.IT.S.C.t
end