type t = private int val make_maker : unit -> (unit -> t) * (unit -> t) * (t -> unit) val dummy : t external to_int : t -> int = "%identity" external of_int : int -> t = "%identity"