+rws :: (r -> s -> (a, s, w)) -> RWS r w s a
+runRWS :: (RWS r w s a) r s -> (a, s, w)
+evalRWS :: (RWS r w s a) r s -> (a, w)
+execRWS :: (RWS r w s a) r s -> (s, w)
+mapRWS :: ((a, s, w) -> (b, s, w`)) (RWS r w s a) -> RWS r w` s b
+withRWS :: (r` s -> (r, s)) (RWS r w s a) -> RWS r` w s a
+