sig
  val utf8_nb_bytes_of_char : char -> int
  val utf8_index_of_char : string -> int -> int
  val utf8_char_of_index : string -> int -> int
  val utf8_string_length : string -> int
  val utf8_substr : string -> int -> int -> string
  val utf8_is_prefix : string -> string -> bool
  val utf8_is_suffix : string -> string -> bool
  val utf8_substr_pos : string -> string -> int option
  val utf8_contains : string -> string -> bool
  val utf8_strbefore : string -> string -> string
  val utf8_strafter : string -> string -> string
  val utf8_char_of_code : int -> string
  val utf8_string_get_bol : string -> (int * int) list
  val utf8_count_nl : string -> int
  val utf8_escape : string -> string
end