sig   type t =       (int, Bigarray.int16_unsigned_elt, Bigarray.c_layout) Bigarray.Array1.t   exception Malformed_code   val validate : CamomileLibrary.UTF16.t -> unit   val get : CamomileLibrary.UTF16.t -> int -> CamomileLibrary.UChar.t   exception Out_of_range   val init :     int -> (int -> CamomileLibrary.UChar.t) -> CamomileLibrary.UTF16.t   val length : CamomileLibrary.UTF16.t -> int   type index = int   val nth : CamomileLibrary.UTF16.t -> int -> CamomileLibrary.UTF16.index   val first : CamomileLibrary.UTF16.t -> CamomileLibrary.UTF16.index   val last : CamomileLibrary.UTF16.t -> CamomileLibrary.UTF16.index   val look :     CamomileLibrary.UTF16.t ->     CamomileLibrary.UTF16.index -> CamomileLibrary.UChar.t   val out_of_range :     CamomileLibrary.UTF16.t -> CamomileLibrary.UTF16.index -> bool   val compare_index :     CamomileLibrary.UTF16.t ->     CamomileLibrary.UTF16.index -> CamomileLibrary.UTF16.index -> int   val next :     CamomileLibrary.UTF16.t ->     CamomileLibrary.UTF16.index -> CamomileLibrary.UTF16.index   val prev :     CamomileLibrary.UTF16.t ->     CamomileLibrary.UTF16.index -> CamomileLibrary.UTF16.index   val move :     CamomileLibrary.UTF16.t ->     CamomileLibrary.UTF16.index -> int -> CamomileLibrary.UTF16.index   val iter :     (CamomileLibrary.UChar.t -> unit) -> CamomileLibrary.UTF16.t -> unit   val compare : CamomileLibrary.UTF16.t -> CamomileLibrary.UTF16.t -> int   module Buf :     sig       type buf       val create : int -> CamomileLibrary.UTF16.Buf.buf       val contents : CamomileLibrary.UTF16.Buf.buf -> CamomileLibrary.UTF16.t       val clear : CamomileLibrary.UTF16.Buf.buf -> unit       val reset : CamomileLibrary.UTF16.Buf.buf -> unit       val add_char :         CamomileLibrary.UTF16.Buf.buf -> CamomileLibrary.UChar.t -> unit       val add_string :         CamomileLibrary.UTF16.Buf.buf -> CamomileLibrary.UTF16.t -> unit       val add_buffer :         CamomileLibrary.UTF16.Buf.buf ->         CamomileLibrary.UTF16.Buf.buf -> unit     end end