module type StateMonad = sig .. end
sig
end
include GapiMonad.Monad
val get : 'a -> 'a * 'a
'a -> 'a * 'a
val put : 'a -> 'b -> unit * 'a
'a -> 'b -> unit * 'a