Uses proper currying.