automatic partial application