sig type 'a m val bind : 'a BatInterfaces.Monad.m -> ('a -> 'b BatInterfaces.Monad.m) -> 'b BatInterfaces.Monad.m val return : 'a -> 'a BatInterfaces.Monad.m end