sig val next : unit -> int val get : unit -> int val self : State.t end