sig
  type t
  exception Bad_encoding
  val of_char : char -> Utf8_char.t
  val of_bytes : string -> Utf8_char.t
  val to_bytes : Utf8_char.t -> string
  val size : Utf8_char.t -> int
  val to_U_char : Utf8_char.t -> U_char.t
  val utf8_character_size : int -> int
end