sig   type 'a m = 'a option   val return : '-> 'BatOption.Monad.m   val bind :     'BatOption.Monad.m ->     ('-> 'BatOption.Monad.m) -> 'BatOption.Monad.m end