SiphonL and SiphonR with profunctor instances