include module type of Stdlib.ArrayLabels
val length : 'a array -> intval get : 'a array -> int -> 'aval set : 'a array -> int -> 'a -> unitval make : int -> 'a -> 'a arrayval create_float : int -> float arrayval init : int -> f:(int -> 'a) -> 'a arrayval make_matrix : dimx:int -> dimy:int -> 'a -> 'a array arrayval init_matrix : 
  dimx:int ->
  dimy:int ->
  f:(int -> int -> 'a) ->
  'a array arrayval append : 'a array -> 'a array -> 'a arrayval concat : 'a array list -> 'a arrayval sub : 'a array -> pos:int -> len:int -> 'a arrayval copy : 'a array -> 'a arrayval fill : 'a array -> pos:int -> len:int -> 'a -> unitval blit : 
  src:'a array ->
  src_pos:int ->
  dst:'a array ->
  dst_pos:int ->
  len:int ->
  unitval to_list : 'a array -> 'a listval of_list : 'a list -> 'a arrayval iter : f:('a -> unit) -> 'a array -> unitval iteri : f:(int -> 'a -> unit) -> 'a array -> unitval map : f:('a -> 'b) -> 'a array -> 'b arrayval map_inplace : f:('a -> 'a) -> 'a array -> unitval mapi : f:(int -> 'a -> 'b) -> 'a array -> 'b arrayval mapi_inplace : f:(int -> 'a -> 'a) -> 'a array -> unitval fold_left : f:('acc -> 'a -> 'acc) -> init:'acc -> 'a array -> 'accval fold_left_map : 
  f:('acc -> 'a -> 'acc * 'b) ->
  init:'acc ->
  'a array ->
  'acc * 'b arrayval fold_right : f:('a -> 'acc -> 'acc) -> 'a array -> init:'acc -> 'accval iter2 : f:('a -> 'b -> unit) -> 'a array -> 'b array -> unitval map2 : f:('a -> 'b -> 'c) -> 'a array -> 'b array -> 'c arrayval for_all : f:('a -> bool) -> 'a array -> boolval exists : f:('a -> bool) -> 'a array -> boolval for_all2 : f:('a -> 'b -> bool) -> 'a array -> 'b array -> boolval exists2 : f:('a -> 'b -> bool) -> 'a array -> 'b array -> boolval mem : 'a -> set:'a array -> boolval memq : 'a -> set:'a array -> boolval find_opt : f:('a -> bool) -> 'a array -> 'a optionval find_index : f:('a -> bool) -> 'a array -> int optionval find_map : f:('a -> 'b option) -> 'a array -> 'b optionval find_mapi : f:(int -> 'a -> 'b option) -> 'a array -> 'b optionval split : ('a * 'b) array -> 'a array * 'b arrayval combine : 'a array -> 'b array -> ('a * 'b) arrayval stable_sort : cmp:('a -> 'a -> int) -> 'a array -> unitval fast_sort : cmp:('a -> 'a -> int) -> 'a array -> unitval shuffle : rand:(int -> int) -> 'a array -> unitval to_seq : 'a array -> 'a Stdlib.Seq.tval to_seqi : 'a array -> (int * 'a) Stdlib.Seq.tval of_seq : 'a Stdlib.Seq.t -> 'a arrayval unsafe_get : 'a array -> int -> 'aval unsafe_set : 'a array -> int -> 'a -> unitval sexp_of_t : ('a -> Sexplib0.Sexp.t) -> 'a t -> Sexplib0.Sexp.tval create : len:int -> 'a -> 'a arrayval filter_mapi : 'a array -> f:(int -> 'a -> 'b option) -> 'b arrayval rev : 'a array -> 'a arrayval sort : 'a array -> compare:('a -> 'a -> int) -> unit