KtFile: funInterfaceDeclaration.kt
  PACKAGE_DIRECTIVE
    PsiElement(package)('package')
    PsiWhiteSpace(' ')
    REFERENCE_EXPRESSION
      PsiElement(IDENTIFIER)('test')
  IMPORT_LIST
    <empty list>
  PsiWhiteSpace('\n\n')
  CLASS
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('FunInterfaceDeclaration')
    PsiWhiteSpace(' ')
    CLASS_BODY
      PsiElement(LBRACE)('{')
      PsiWhiteSpace('\n    ')
      CLASS
        MODIFIER_LIST
          ANNOTATION_ENTRY
            PsiElement(AT)('@')
            CONSTRUCTOR_CALLEE
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('Suppress')
            VALUE_ARGUMENT_LIST
              PsiElement(LPAR)('(')
              VALUE_ARGUMENT
                STRING_TEMPLATE
                  PsiElement(OPEN_QUOTE)('"')
                  LITERAL_STRING_TEMPLATE_ENTRY
                    PsiElement(REGULAR_STRING_PART)('UNSUPPORTED_FEATURE')
                  PsiElement(CLOSING_QUOTE)('"')
              PsiElement(RPAR)(')')
          PsiWhiteSpace('\n    ')
          PsiElement(fun)('fun')
        PsiWhiteSpace(' ')
        PsiElement(interface)('interface')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('KRunnable')
        PsiWhiteSpace(' ')
        CLASS_BODY
          PsiElement(LBRACE)('{')
          PsiWhiteSpace('\n        ')
          FUN
            PsiElement(fun)('fun')
            PsiWhiteSpace(' ')
            PsiElement(IDENTIFIER)('invoke')
            VALUE_PARAMETER_LIST
              PsiElement(LPAR)('(')
              PsiElement(RPAR)(')')
          PsiWhiteSpace('\n    ')
          PsiElement(RBRACE)('}')
      PsiWhiteSpace('\n\n    ')
      CLASS
        MODIFIER_LIST
          ANNOTATION_ENTRY
            PsiElement(AT)('@')
            CONSTRUCTOR_CALLEE
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('Suppress')
            VALUE_ARGUMENT_LIST
              PsiElement(LPAR)('(')
              VALUE_ARGUMENT
                STRING_TEMPLATE
                  PsiElement(OPEN_QUOTE)('"')
                  LITERAL_STRING_TEMPLATE_ENTRY
                    PsiElement(REGULAR_STRING_PART)('UNSUPPORTED_FEATURE')
                  PsiElement(CLOSING_QUOTE)('"')
              PsiElement(RPAR)(')')
          PsiWhiteSpace('\n    ')
          PsiElement(fun)('fun')
        PsiWhiteSpace(' ')
        PsiElement(interface)('interface')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('GenericKRunnable')
        TYPE_PARAMETER_LIST
          PsiElement(LT)('<')
          TYPE_PARAMETER
            PsiElement(IDENTIFIER)('T')
          PsiElement(COMMA)(',')
          PsiWhiteSpace(' ')
          TYPE_PARAMETER
            PsiElement(IDENTIFIER)('R')
          PsiElement(GT)('>')
        PsiWhiteSpace(' ')
        CLASS_BODY
          PsiElement(LBRACE)('{')
          PsiWhiteSpace('\n        ')
          FUN
            PsiElement(fun)('fun')
            PsiWhiteSpace(' ')
            PsiElement(IDENTIFIER)('invoke')
            VALUE_PARAMETER_LIST
              PsiElement(LPAR)('(')
              VALUE_PARAMETER
                PsiElement(IDENTIFIER)('t')
                PsiElement(COLON)(':')
                PsiWhiteSpace(' ')
                TYPE_REFERENCE
                  USER_TYPE
                    REFERENCE_EXPRESSION
                      PsiElement(IDENTIFIER)('T')
              PsiElement(RPAR)(')')
            PsiElement(COLON)(':')
            PsiWhiteSpace(' ')
            TYPE_REFERENCE
              USER_TYPE
                REFERENCE_EXPRESSION
                  PsiElement(IDENTIFIER)('R')
          PsiWhiteSpace('\n    ')
          PsiElement(RBRACE)('}')
      PsiWhiteSpace('\n')
      PsiElement(RBRACE)('}')