| WriteResultUnused (m ())
-class read v :: (v m r w) -> m (ReadResult m r w) | TC r & Monad m
-class write v :: w (v m r w) -> m (WriteResult m r w) | TC w & Monad m
+class read v :: (v m r w) -> m (ReadResult m r w) | TC r & Monad m
+class write v :: (v m r w) w -> m (WriteResult m r w) | TC w & Monad m
//* Box type, to get rid of a possible complex constructor of combinators
:: SDS m r w = E.sds: SDS (sds m r w) (m ()) /*force kind*/ & read sds & write sds