modify implementation for unaryExpression