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