@NotNull
      private ContractReturnValue expressionToReturnValue(LighterASTNode expression) {
        expression = skipParenthesesDown(myTree, expression);
        if (expression == null) return returnAny();
        IElementType type = expression.getTokenType();
        if (type == NEW_EXPRESSION) {
          return returnNew();
        }
        if (type == THIS_EXPRESSION) {
          return returnThis();
        }
        if (type == REFERENCE_EXPRESSION) {
          int paramIndex = resolveParameter(expression);
          if (paramIndex >= 0 && (assignedParameters == null || !assignedParameters.get(paramIndex))) {
            return returnParameter(paramIndex);
          }
        }
        return returnAny();
      }
@NotNull
      private ContractReturnValue expressionToReturnValue(LighterASTNode expression)