monad almost complete