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