eliminate uncurry and pointfree