sig
  type t
  type uint8 = Uint8.t
  val zero : Uint8.uint8
  val one : Uint8.uint8
  val add : Uint8.uint8 -> Uint8.uint8 -> Uint8.uint8
  val sub : Uint8.uint8 -> Uint8.uint8 -> Uint8.uint8
  val mul : Uint8.uint8 -> Uint8.uint8 -> Uint8.uint8
  val div : Uint8.uint8 -> Uint8.uint8 -> Uint8.uint8
  val rem : Uint8.uint8 -> Uint8.uint8 -> Uint8.uint8
  val succ : Uint8.uint8 -> Uint8.uint8
  val pred : Uint8.uint8 -> Uint8.uint8
  val max_int : Uint8.uint8
  val min_int : Uint8.uint8
  val logand : Uint8.uint8 -> Uint8.uint8 -> Uint8.uint8
  val logor : Uint8.uint8 -> Uint8.uint8 -> Uint8.uint8
  val logxor : Uint8.uint8 -> Uint8.uint8 -> Uint8.uint8
  val lognot : Uint8.uint8 -> Uint8.uint8
  val shift_left : Uint8.uint8 -> int -> Uint8.uint8
  val shift_right : Uint8.uint8 -> int -> Uint8.uint8
  val of_int : int -> Uint8.uint8
  val to_int : Uint8.uint8 -> int
  val of_float : float -> Uint8.uint8
  val to_float : Uint8.uint8 -> float
  val of_int32 : int32 -> Uint8.uint8
  val to_int32 : Uint8.uint8 -> int32
  val of_string : string -> Uint8.uint8
  val to_string : Uint8.uint8 -> string
  val to_string_bin : Uint8.uint8 -> string
  val to_string_oct : Uint8.uint8 -> string
  val to_string_hex : Uint8.uint8 -> string
  val bits_of_float : float -> Uint8.uint8
  val float_of_bits : Uint8.uint8 -> float
  val compare : Uint8.t -> Uint8.t -> int
  val printer : Stdlib.Format.formatter -> Uint8.uint8 -> unit
  val printer_bin : Stdlib.Format.formatter -> Uint8.uint8 -> unit
  val printer_oct : Stdlib.Format.formatter -> Uint8.uint8 -> unit
  val printer_hex : Stdlib.Format.formatter -> Uint8.uint8 -> unit
end