sig   module type Type =     sig       type t       val get :         CamomileLibrary.UnicodeString.Type.t ->         int -> CamomileLibrary.UChar.t       val init :         int ->         (int -> CamomileLibrary.UChar.t) ->         CamomileLibrary.UnicodeString.Type.t       val length : CamomileLibrary.UnicodeString.Type.t -> int       type index       val look :         CamomileLibrary.UnicodeString.Type.t ->         CamomileLibrary.UnicodeString.Type.index -> CamomileLibrary.UChar.t       val nth :         CamomileLibrary.UnicodeString.Type.t ->         int -> CamomileLibrary.UnicodeString.Type.index       val next :         CamomileLibrary.UnicodeString.Type.t ->         CamomileLibrary.UnicodeString.Type.index ->         CamomileLibrary.UnicodeString.Type.index       val prev :         CamomileLibrary.UnicodeString.Type.t ->         CamomileLibrary.UnicodeString.Type.index ->         CamomileLibrary.UnicodeString.Type.index       val out_of_range :         CamomileLibrary.UnicodeString.Type.t ->         CamomileLibrary.UnicodeString.Type.index -> bool       val iter :         (CamomileLibrary.UChar.t -> unit) ->         CamomileLibrary.UnicodeString.Type.t -> unit       val compare :         CamomileLibrary.UnicodeString.Type.t ->         CamomileLibrary.UnicodeString.Type.t -> int       val first :         CamomileLibrary.UnicodeString.Type.t ->         CamomileLibrary.UnicodeString.Type.index       val last :         CamomileLibrary.UnicodeString.Type.t ->         CamomileLibrary.UnicodeString.Type.index       val move :         CamomileLibrary.UnicodeString.Type.t ->         CamomileLibrary.UnicodeString.Type.index ->         int -> CamomileLibrary.UnicodeString.Type.index       val compare_index :         CamomileLibrary.UnicodeString.Type.t ->         CamomileLibrary.UnicodeString.Type.index ->         CamomileLibrary.UnicodeString.Type.index -> int       module Buf :         sig           type buf           val create : int -> CamomileLibrary.UnicodeString.Type.Buf.buf           val contents :             CamomileLibrary.UnicodeString.Type.Buf.buf ->             CamomileLibrary.UnicodeString.Type.t           val clear : CamomileLibrary.UnicodeString.Type.Buf.buf -> unit           val reset : CamomileLibrary.UnicodeString.Type.Buf.buf -> unit           val add_char :             CamomileLibrary.UnicodeString.Type.Buf.buf ->             CamomileLibrary.UChar.t -> unit           val add_string :             CamomileLibrary.UnicodeString.Type.Buf.buf ->             CamomileLibrary.UnicodeString.Type.t -> unit           val add_buffer :             CamomileLibrary.UnicodeString.Type.Buf.buf ->             CamomileLibrary.UnicodeString.Type.Buf.buf -> unit         end     end end