sig   type 'a t   val return : '-> 'CCList.MONAD.t   val ( >>= ) :     'CCList.MONAD.t -> ('-> 'CCList.MONAD.t) -> 'CCList.MONAD.t end