apply currying