support partial-application