return (Node a ts)
-- | Monadic forest builder, in depth-first order
+#ifndef __NHC__
unfoldForestM :: Monad m => (b -> m (a, [b])) -> [b] -> m (Forest a)
+#endif
unfoldForestM f = mapM (unfoldTreeM f)
-- | Monadic tree builder, in breadth-first order,