sig   type ('a, 'b, 'c) t   val create :     ('a, 'b) Bigarray.kind ->     'Bigarray.layout -> int -> int -> ('a, 'b, 'c) Bigarray.Array2.t   external dim1 : ('a, 'b, 'c) Bigarray.Array2.t -> int = "%caml_ba_dim_1"   external dim2 : ('a, 'b, 'c) Bigarray.Array2.t -> int = "%caml_ba_dim_2"   external kind : ('a, 'b, 'c) Bigarray.Array2.t -> ('a, 'b) Bigarray.kind     = "caml_ba_kind"   external layout : ('a, 'b, 'c) Bigarray.Array2.t -> 'Bigarray.layout     = "caml_ba_layout"   val size_in_bytes : ('a, 'b, 'c) Bigarray.Array2.t -> int   external get : ('a, 'b, 'c) Bigarray.Array2.t -> int -> int -> 'a     = "%caml_ba_ref_2"   external set : ('a, 'b, 'c) Bigarray.Array2.t -> int -> int -> '-> unit     = "%caml_ba_set_2"   external sub_left :     ('a, 'b, Bigarray.c_layout) Bigarray.Array2.t ->     int -> int -> ('a, 'b, Bigarray.c_layout) Bigarray.Array2.t     = "caml_ba_sub"   external sub_right :     ('a, 'b, Bigarray.fortran_layout) Bigarray.Array2.t ->     int -> int -> ('a, 'b, Bigarray.fortran_layout) Bigarray.Array2.t     = "caml_ba_sub"   val slice_left :     ('a, 'b, Bigarray.c_layout) Bigarray.Array2.t ->     int -> ('a, 'b, Bigarray.c_layout) Bigarray.Array1.t   val slice_right :     ('a, 'b, Bigarray.fortran_layout) Bigarray.Array2.t ->     int -> ('a, 'b, Bigarray.fortran_layout) Bigarray.Array1.t   external blit :     ('a, 'b, 'c) Bigarray.Array2.t -> ('a, 'b, 'c) Bigarray.Array2.t -> unit     = "caml_ba_blit"   external fill : ('a, 'b, 'c) Bigarray.Array2.t -> '-> unit     = "caml_ba_fill"   val of_array :     ('a, 'b) Bigarray.kind ->     'Bigarray.layout -> 'a array array -> ('a, 'b, 'c) Bigarray.Array2.t   val map_file :     Unix.file_descr ->     ?pos:int64 ->     ('a, 'b) Bigarray.kind ->     'Bigarray.layout ->     bool -> int -> int -> ('a, 'b, 'c) Bigarray.Array2.t   external unsafe_get : ('a, 'b, 'c) Bigarray.Array2.t -> int -> int -> 'a     = "%caml_ba_unsafe_ref_2"   external unsafe_set :     ('a, 'b, 'c) Bigarray.Array2.t -> int -> int -> '-> unit     = "%caml_ba_unsafe_set_2" end