we have another one in Arrow using Free Monad
# arrow
p
we have another one in Arrow using Free Monad