refactored lambda terms