kleisli compose complete