KtFile: annotationValues.kt
  PACKAGE_DIRECTIVE
    PsiElement(package)('package')
    PsiWhiteSpace(' ')
    REFERENCE_EXPRESSION
      PsiElement(IDENTIFIER)('test')
  PsiWhiteSpace('\n\n')
  IMPORT_LIST
    IMPORT_DIRECTIVE
      PsiElement(import)('import')
      PsiWhiteSpace(' ')
      DOT_QUALIFIED_EXPRESSION
        DOT_QUALIFIED_EXPRESSION
          REFERENCE_EXPRESSION
            PsiElement(IDENTIFIER)('test')
          PsiElement(DOT)('.')
          REFERENCE_EXPRESSION
            PsiElement(IDENTIFIER)('E')
        PsiElement(DOT)('.')
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('E1')
    PsiWhiteSpace('\n')
    IMPORT_DIRECTIVE
      PsiElement(import)('import')
      PsiWhiteSpace(' ')
      DOT_QUALIFIED_EXPRESSION
        DOT_QUALIFIED_EXPRESSION
          REFERENCE_EXPRESSION
            PsiElement(IDENTIFIER)('kotlin')
          PsiElement(DOT)('.')
          REFERENCE_EXPRESSION
            PsiElement(IDENTIFIER)('reflect')
        PsiElement(DOT)('.')
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('KClass')
  PsiWhiteSpace('\n\n')
  PROPERTY
    MODIFIER_LIST
      PsiElement(const)('const')
    PsiWhiteSpace(' ')
    PsiElement(val)('val')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('CONSTANT')
    PsiWhiteSpace(' ')
    PsiElement(EQ)('=')
    PsiWhiteSpace(' ')
    INTEGER_CONSTANT
      PsiElement(INTEGER_LITERAL)('12')
  PsiWhiteSpace('\n\n')
  CLASS
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('AnnotationValues')
    PsiWhiteSpace(' ')
    CLASS_BODY
      PsiElement(LBRACE)('{')
      PsiWhiteSpace('\n    ')
      CLASS
        MODIFIER_LIST
          ANNOTATION_ENTRY
            PsiElement(AT)('@')
            CONSTRUCTOR_CALLEE
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('Simple')
            VALUE_ARGUMENT_LIST
              PsiElement(LPAR)('(')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                INTEGER_CONSTANT
                  PsiElement(INTEGER_LITERAL)('12')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                INTEGER_CONSTANT
                  PsiElement(INTEGER_LITERAL)('12L')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                INTEGER_CONSTANT
                  PsiElement(INTEGER_LITERAL)('12')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n\n        ')
              VALUE_ARGUMENT
                FLOAT_CONSTANT
                  PsiElement(FLOAT_CONSTANT)('3.3')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                VALUE_ARGUMENT_NAME
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('f')
                PsiWhiteSpace(' ')
                PsiElement(EQ)('=')
                PsiWhiteSpace(' ')
                FLOAT_CONSTANT
                  PsiElement(FLOAT_CONSTANT)('3.3F')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n\n        ')
              VALUE_ARGUMENT
                VALUE_ARGUMENT_NAME
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('c')
                PsiWhiteSpace(' ')
                PsiElement(EQ)('=')
                PsiWhiteSpace(' ')
                CHARACTER_CONSTANT
                  PsiElement(CHARACTER_LITERAL)(''a'')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n\n        ')
              VALUE_ARGUMENT
                VALUE_ARGUMENT_NAME
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('b1')
                PsiWhiteSpace(' ')
                PsiElement(EQ)('=')
                PsiWhiteSpace(' ')
                BOOLEAN_CONSTANT
                  PsiElement(true)('true')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                VALUE_ARGUMENT_NAME
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('b2')
                PsiWhiteSpace(' ')
                PsiElement(EQ)('=')
                PsiWhiteSpace(' ')
                BOOLEAN_CONSTANT
                  PsiElement(false)('false')
              PsiWhiteSpace('\n    ')
              PsiElement(RPAR)(')')
        PsiWhiteSpace('\n    ')
        PsiElement(class)('class')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('WithSimple')
      PsiWhiteSpace('\n\n    ')
      CLASS
        MODIFIER_LIST
          ANNOTATION_ENTRY
            PsiElement(AT)('@')
            CONSTRUCTOR_CALLEE
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('StringLiteral')
            VALUE_ARGUMENT_LIST
              PsiElement(LPAR)('(')
              VALUE_ARGUMENT
                STRING_TEMPLATE
                  PsiElement(OPEN_QUOTE)('"')
                  LITERAL_STRING_TEMPLATE_ENTRY
                    PsiElement(REGULAR_STRING_PART)('some')
                  PsiElement(CLOSING_QUOTE)('"')
              PsiElement(COMMA)(',')
              PsiWhiteSpace(' ')
              VALUE_ARGUMENT
                STRING_TEMPLATE
                  PsiElement(OPEN_QUOTE)('"')
                  PsiElement(CLOSING_QUOTE)('"')
              PsiElement(COMMA)(',')
              PsiWhiteSpace(' ')
              VALUE_ARGUMENT
                STRING_TEMPLATE
                  PsiElement(OPEN_QUOTE)('"')
                  LITERAL_STRING_TEMPLATE_ENTRY
                    PsiElement(REGULAR_STRING_PART)('H')
                  SHORT_STRING_TEMPLATE_ENTRY
                    PsiElement(SHORT_TEMPLATE_ENTRY_START)('$')
                    REFERENCE_EXPRESSION
                      PsiElement(IDENTIFIER)('CONSTANT')
                  PsiElement(CLOSING_QUOTE)('"')
              PsiElement(RPAR)(')')
        PsiWhiteSpace('\n    ')
        PsiElement(class)('class')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('WithStringLiteral')
      PsiWhiteSpace('\n\n    ')
      CLASS
        MODIFIER_LIST
          ANNOTATION_ENTRY
            PsiElement(AT)('@')
            CONSTRUCTOR_CALLEE
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('EnumLiteral')
            VALUE_ARGUMENT_LIST
              PsiElement(LPAR)('(')
              VALUE_ARGUMENT
                REFERENCE_EXPRESSION
                  PsiElement(IDENTIFIER)('E1')
              PsiElement(COMMA)(',')
              PsiWhiteSpace(' ')
              VALUE_ARGUMENT
                DOT_QUALIFIED_EXPRESSION
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('E')
                  PsiElement(DOT)('.')
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('E2')
              PsiElement(COMMA)(',')
              PsiWhiteSpace(' ')
              VALUE_ARGUMENT
                VALUE_ARGUMENT_NAME
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('e3')
                PsiWhiteSpace(' ')
                PsiElement(EQ)('=')
                PsiWhiteSpace(' ')
                DOT_QUALIFIED_EXPRESSION
                  DOT_QUALIFIED_EXPRESSION
                    REFERENCE_EXPRESSION
                      PsiElement(IDENTIFIER)('test')
                    PsiElement(DOT)('.')
                    REFERENCE_EXPRESSION
                      PsiElement(IDENTIFIER)('E')
                  PsiElement(DOT)('.')
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('E2')
              PsiElement(RPAR)(')')
        PsiWhiteSpace('\n    ')
        PsiElement(class)('class')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('WithEnumLiteral')
      PsiWhiteSpace('\n\n    ')
      CLASS
        MODIFIER_LIST
          ANNOTATION_ENTRY
            PsiElement(AT)('@')
            CONSTRUCTOR_CALLEE
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('VarArg')
            VALUE_ARGUMENT_LIST
              PsiElement(LPAR)('(')
              VALUE_ARGUMENT
                INTEGER_CONSTANT
                  PsiElement(INTEGER_LITERAL)('1')
              PsiElement(COMMA)(',')
              PsiWhiteSpace(' ')
              VALUE_ARGUMENT
                INTEGER_CONSTANT
                  PsiElement(INTEGER_LITERAL)('2')
              PsiElement(COMMA)(',')
              PsiWhiteSpace(' ')
              VALUE_ARGUMENT
                INTEGER_CONSTANT
                  PsiElement(INTEGER_LITERAL)('3')
              PsiElement(RPAR)(')')
        PsiWhiteSpace('\n    ')
        PsiElement(class)('class')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('WithVarArg')
      PsiWhiteSpace('\n\n    ')
      CLASS
        MODIFIER_LIST
          ANNOTATION_ENTRY
            PsiElement(AT)('@')
            CONSTRUCTOR_CALLEE
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('Arrays')
            VALUE_ARGUMENT_LIST
              PsiElement(LPAR)('(')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                COLLECTION_LITERAL_EXPRESSION
                  PsiElement(LBRACKET)('[')
                  INTEGER_CONSTANT
                    PsiElement(INTEGER_LITERAL)('1')
                  PsiElement(COMMA)(',')
                  PsiWhiteSpace(' ')
                  INTEGER_CONSTANT
                    PsiElement(INTEGER_LITERAL)('2')
                  PsiElement(COMMA)(',')
                  PsiWhiteSpace(' ')
                  INTEGER_CONSTANT
                    PsiElement(INTEGER_LITERAL)('3')
                  PsiElement(RBRACKET)(']')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                COLLECTION_LITERAL_EXPRESSION
                  PsiElement(LBRACKET)('[')
                  INTEGER_CONSTANT
                    PsiElement(INTEGER_LITERAL)('1L')
                  PsiElement(RBRACKET)(']')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                COLLECTION_LITERAL_EXPRESSION
                  PsiElement(LBRACKET)('[')
                  PsiElement(RBRACKET)(']')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                COLLECTION_LITERAL_EXPRESSION
                  PsiElement(LBRACKET)('[')
                  FLOAT_CONSTANT
                    PsiElement(FLOAT_CONSTANT)('2.2')
                  PsiElement(RBRACKET)(']')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                COLLECTION_LITERAL_EXPRESSION
                  PsiElement(LBRACKET)('[')
                  CHARACTER_CONSTANT
                    PsiElement(CHARACTER_LITERAL)(''a'')
                  PsiElement(RBRACKET)(']')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                COLLECTION_LITERAL_EXPRESSION
                  PsiElement(LBRACKET)('[')
                  BOOLEAN_CONSTANT
                    PsiElement(true)('true')
                  PsiElement(COMMA)(',')
                  PsiWhiteSpace(' ')
                  BOOLEAN_CONSTANT
                    PsiElement(false)('false')
                  PsiElement(RBRACKET)(']')
              PsiWhiteSpace('\n    ')
              PsiElement(RPAR)(')')
        PsiWhiteSpace('\n    ')
        PsiElement(class)('class')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('WithArrays')
      PsiWhiteSpace('\n\n    ')
      CLASS
        MODIFIER_LIST
          ANNOTATION_ENTRY
            PsiElement(AT)('@')
            CONSTRUCTOR_CALLEE
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('ClassLiteral')
            VALUE_ARGUMENT_LIST
              PsiElement(LPAR)('(')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                CLASS_LITERAL_EXPRESSION
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('WithClassLiteral')
                  PsiElement(COLONCOLON)('::')
                  PsiElement(class)('class')
              PsiElement(COMMA)(',')
              PsiWhiteSpace('\n        ')
              VALUE_ARGUMENT
                CLASS_LITERAL_EXPRESSION
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('String')
                  PsiElement(COLONCOLON)('::')
                  PsiElement(class)('class')
              PsiWhiteSpace('\n    ')
              PsiElement(RPAR)(')')
        PsiWhiteSpace('\n    ')
        PsiElement(class)('class')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('WithClassLiteral')
        TYPE_PARAMETER_LIST
          PsiElement(LT)('<')
          TYPE_PARAMETER
            PsiElement(IDENTIFIER)('T')
          PsiElement(GT)('>')
      PsiWhiteSpace('\n\n    ')
      CLASS
        MODIFIER_LIST
          ANNOTATION_ENTRY
            PsiElement(AT)('@')
            CONSTRUCTOR_CALLEE
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('Outer')
            VALUE_ARGUMENT_LIST
              PsiElement(LPAR)('(')
              VALUE_ARGUMENT
                STRING_TEMPLATE
                  PsiElement(OPEN_QUOTE)('"')
                  LITERAL_STRING_TEMPLATE_ENTRY
                    PsiElement(REGULAR_STRING_PART)('value')
                  PsiElement(CLOSING_QUOTE)('"')
              PsiElement(COMMA)(',')
              PsiWhiteSpace(' ')
              VALUE_ARGUMENT
                VALUE_ARGUMENT_NAME
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('nested')
                PsiWhiteSpace(' ')
                PsiElement(EQ)('=')
                PsiWhiteSpace(' ')
                CALL_EXPRESSION
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('Nested')
                  VALUE_ARGUMENT_LIST
                    PsiElement(LPAR)('(')
                    VALUE_ARGUMENT
                      INTEGER_CONSTANT
                        PsiElement(INTEGER_LITERAL)('12')
                    PsiElement(COMMA)(',')
                    PsiWhiteSpace(' ')
                    VALUE_ARGUMENT
                      STRING_TEMPLATE
                        PsiElement(OPEN_QUOTE)('"')
                        LITERAL_STRING_TEMPLATE_ENTRY
                          PsiElement(REGULAR_STRING_PART)('nested value')
                        PsiElement(CLOSING_QUOTE)('"')
                    PsiElement(RPAR)(')')
              PsiElement(RPAR)(')')
        PsiWhiteSpace('\n    ')
        PsiElement(class)('class')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('WithNested')
      PsiWhiteSpace('\n')
      PsiElement(RBRACE)('}')
  PsiWhiteSpace('\n\n')
  CLASS
    MODIFIER_LIST
      PsiElement(annotation)('annotation')
    PsiWhiteSpace(' ')
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('Simple')
    PRIMARY_CONSTRUCTOR
      VALUE_PARAMETER_LIST
        PsiElement(LPAR)('(')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('i')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('Int')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('l')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('Long')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('b')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('Byte')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('d')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('Double')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('f')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('Float')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('c')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('Char')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('b1')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('Boolean')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('b2')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('Boolean')
        PsiWhiteSpace('\n')
        PsiElement(RPAR)(')')
  PsiWhiteSpace('\n\n')
  CLASS
    MODIFIER_LIST
      PsiElement(annotation)('annotation')
    PsiWhiteSpace(' ')
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('StringLiteral')
    PRIMARY_CONSTRUCTOR
      VALUE_PARAMETER_LIST
        PsiElement(LPAR)('(')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('s1')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('String')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('s2')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('String')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('s3')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('String')
        PsiWhiteSpace('\n')
        PsiElement(RPAR)(')')
  PsiWhiteSpace('\n\n')
  CLASS
    MODIFIER_LIST
      PsiElement(enum)('enum')
    PsiWhiteSpace(' ')
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('E')
    PsiWhiteSpace(' ')
    CLASS_BODY
      PsiElement(LBRACE)('{')
      PsiWhiteSpace('\n    ')
      ENUM_ENTRY
        PsiElement(IDENTIFIER)('E1')
        PsiElement(COMMA)(',')
      PsiWhiteSpace(' ')
      ENUM_ENTRY
        PsiElement(IDENTIFIER)('E2')
      PsiWhiteSpace('\n')
      PsiElement(RBRACE)('}')
  PsiWhiteSpace('\n')
  CLASS
    MODIFIER_LIST
      PsiElement(annotation)('annotation')
    PsiWhiteSpace(' ')
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('EnumLiteral')
    PRIMARY_CONSTRUCTOR
      VALUE_PARAMETER_LIST
        PsiElement(LPAR)('(')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('e1')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('E')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('e2')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('E')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('e3')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('E')
        PsiWhiteSpace('\n')
        PsiElement(RPAR)(')')
  PsiWhiteSpace('\n\n')
  CLASS
    MODIFIER_LIST
      PsiElement(annotation)('annotation')
    PsiWhiteSpace(' ')
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('VarArg')
    PRIMARY_CONSTRUCTOR
      VALUE_PARAMETER_LIST
        PsiElement(LPAR)('(')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          MODIFIER_LIST
            PsiElement(vararg)('vararg')
          PsiWhiteSpace(' ')
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('v')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('Int')
        PsiWhiteSpace('\n')
        PsiElement(RPAR)(')')
  PsiWhiteSpace('\n\n')
  CLASS
    MODIFIER_LIST
      PsiElement(annotation)('annotation')
    PsiWhiteSpace(' ')
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('Arrays')
    PRIMARY_CONSTRUCTOR
      VALUE_PARAMETER_LIST
        PsiElement(LPAR)('(')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('ia')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('IntArray')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('la')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('LongArray')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('fa')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('FloatArray')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('da')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('DoubleArray')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('ca')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('CharArray')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('ba')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('BooleanArray')
        PsiWhiteSpace('\n')
        PsiElement(RPAR)(')')
  PsiWhiteSpace('\n\n')
  CLASS
    MODIFIER_LIST
      PsiElement(annotation)('annotation')
    PsiWhiteSpace(' ')
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('ClassLiteral')
    PRIMARY_CONSTRUCTOR
      VALUE_PARAMETER_LIST
        PsiElement(LPAR)('(')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('c1')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('KClass')
              TYPE_ARGUMENT_LIST
                PsiElement(LT)('<')
                TYPE_PROJECTION
                  PsiElement(MUL)('*')
                PsiElement(GT)('>')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('c2')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('KClass')
              TYPE_ARGUMENT_LIST
                PsiElement(LT)('<')
                TYPE_PROJECTION
                  PsiElement(MUL)('*')
                PsiElement(GT)('>')
        PsiWhiteSpace('\n')
        PsiElement(RPAR)(')')
  PsiWhiteSpace('\n\n\n')
  CLASS
    MODIFIER_LIST
      PsiElement(annotation)('annotation')
    PsiWhiteSpace(' ')
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('Nested')
    PRIMARY_CONSTRUCTOR
      VALUE_PARAMETER_LIST
        PsiElement(LPAR)('(')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('i')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('Int')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('s')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('String')
        PsiWhiteSpace('\n')
        PsiElement(RPAR)(')')
  PsiWhiteSpace('\n\n')
  CLASS
    MODIFIER_LIST
      PsiElement(annotation)('annotation')
    PsiWhiteSpace(' ')
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('Outer')
    PRIMARY_CONSTRUCTOR
      VALUE_PARAMETER_LIST
        PsiElement(LPAR)('(')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('some')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('String')
        PsiElement(COMMA)(',')
        PsiWhiteSpace('\n    ')
        VALUE_PARAMETER
          PsiElement(val)('val')
          PsiWhiteSpace(' ')
          PsiElement(IDENTIFIER)('nested')
          PsiElement(COLON)(':')
          PsiWhiteSpace(' ')
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('Nested')
        PsiWhiteSpace('\n')
        PsiElement(RPAR)(')')