sig
  type t
  type elt
  type mapelt
  val create : int -> int -> Genimage.IMAGEINDEXED.t
  val make :
    int -> int -> Genimage.IMAGEINDEXED.elt -> Genimage.IMAGEINDEXED.t
  val destroy : Genimage.IMAGEINDEXED.t -> unit
  val get :
    Genimage.IMAGEINDEXED.t -> int -> int -> Genimage.IMAGEINDEXED.elt
  val get_color :
    Genimage.IMAGEINDEXED.t -> int -> int -> Genimage.IMAGEINDEXED.mapelt
  val set :
    Genimage.IMAGEINDEXED.t ->
    int -> int -> Genimage.IMAGEINDEXED.elt -> unit
  val unsafe_get :
    Genimage.IMAGEINDEXED.t -> int -> int -> Genimage.IMAGEINDEXED.elt
  val unsafe_get_color :
    Genimage.IMAGEINDEXED.t -> int -> int -> Genimage.IMAGEINDEXED.mapelt
  val unsafe_set :
    Genimage.IMAGEINDEXED.t ->
    int -> int -> Genimage.IMAGEINDEXED.elt -> unit
  val copy : Genimage.IMAGEINDEXED.t -> Genimage.IMAGEINDEXED.t
  val sub :
    Genimage.IMAGEINDEXED.t ->
    int -> int -> int -> int -> Genimage.IMAGEINDEXED.t
  val blit :
    Genimage.IMAGEINDEXED.t ->
    int -> int -> Genimage.IMAGEINDEXED.t -> int -> int -> int -> int -> unit
  val map :
    (Genimage.IMAGEINDEXED.elt ->
     Genimage.IMAGEINDEXED.elt -> Genimage.IMAGEINDEXED.elt) ->
    Genimage.IMAGEINDEXED.t ->
    int -> int -> Genimage.IMAGEINDEXED.t -> int -> int -> int -> int -> unit
  val dump : Genimage.IMAGEINDEXED.t -> string
  val unsafe_access : Genimage.IMAGEINDEXED.t -> int -> int -> string * int
  val get_strip : Genimage.IMAGEINDEXED.t -> int -> int -> int -> string
  val set_strip :
    Genimage.IMAGEINDEXED.t -> int -> int -> int -> string -> unit
  val get_scanline : Genimage.IMAGEINDEXED.t -> int -> string
  val set_scanline : Genimage.IMAGEINDEXED.t -> int -> string -> unit
end