JetFile: SimpleModifiers.kt
  PACKAGE_DIRECTIVE
    PsiElement(package)('package')
    PsiWhiteSpace(' ')
    DOT_QUALIFIED_EXPRESSION
      DOT_QUALIFIED_EXPRESSION
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('foo')
        PsiElement(DOT)('.')
        REFERENCE_EXPRESSION
          PsiElement(IDENTIFIER)('bar')
      PsiElement(DOT)('.')
      REFERENCE_EXPRESSION
        PsiElement(IDENTIFIER)('goo')
  IMPORT_LIST
    <empty list>
  PsiWhiteSpace('\n\n')
  CLASS
    MODIFIER_LIST
      PsiElement(abstract)('abstract')
      PsiWhiteSpace('\n')
      PsiElement(open)('open')
      PsiWhiteSpace('\n')
      PsiElement(open)('open')
      PsiWhiteSpace('\n')
      PsiElement(annotation)('annotation')
      PsiWhiteSpace('\n')
      PsiElement(override)('override')
      PsiWhiteSpace('\n')
      PsiElement(open)('open')
      PsiWhiteSpace('\n')
      PsiElement(abstract)('abstract')
      PsiWhiteSpace('\n')
      PsiElement(private)('private')
      PsiWhiteSpace('\n')
      PsiElement(protected)('protected')
      PsiWhiteSpace('\n')
      PsiElement(public)('public')
      PsiWhiteSpace('\n')
      PsiElement(internal)('internal')
      PsiWhiteSpace('\n')
      PsiElement(in)('in')
      PsiWhiteSpace('\n')
      PsiElement(out)('out')
      PsiErrorElement:Use '@' symbol before annotations
        <empty list>
      PsiWhiteSpace('\n')
      ANNOTATION_ENTRY
        CONSTRUCTOR_CALLEE
          TYPE_REFERENCE
            USER_TYPE
              REFERENCE_EXPRESSION
                PsiElement(IDENTIFIER)('ref')
    PsiWhiteSpace('\n ')
    PsiElement(class)('class')
    PsiWhiteSpace(' ')
    PsiElement(IDENTIFIER)('Bar')
    TYPE_PARAMETER_LIST
      PsiElement(LT)('<')
      TYPE_PARAMETER
        MODIFIER_LIST
          PsiElement(abstract)('abstract')
          PsiWhiteSpace('\n        ')
          PsiElement(open)('open')
          PsiWhiteSpace('\n        ')
          PsiElement(enum)('enum')
          PsiWhiteSpace('\n        ')
          PsiElement(open)('open')
          PsiWhiteSpace('\n        ')
          PsiElement(annotation)('annotation')
          PsiWhiteSpace('\n        ')
          PsiElement(override)('override')
          PsiWhiteSpace('\n        ')
          PsiElement(open)('open')
          PsiWhiteSpace('\n        ')
          PsiElement(abstract)('abstract')
          PsiWhiteSpace('\n        ')
          PsiElement(private)('private')
          PsiWhiteSpace('\n        ')
          PsiElement(protected)('protected')
          PsiWhiteSpace('\n        ')
          PsiElement(public)('public')
          PsiWhiteSpace('\n        ')
          PsiElement(internal)('internal')
          PsiWhiteSpace('\n        ')
          PsiElement(in)('in')
          PsiWhiteSpace('\n        ')
          PsiElement(out)('out')
          PsiErrorElement:Use '@' symbol before annotations
            <empty list>
          PsiWhiteSpace('\n        ')
          ANNOTATION_ENTRY
            CONSTRUCTOR_CALLEE
              TYPE_REFERENCE
                USER_TYPE
                  REFERENCE_EXPRESSION
                    PsiElement(IDENTIFIER)('ref')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('T')
      PsiElement(GT)('>')
    PsiWhiteSpace(' ')
    CLASS_BODY
      PsiElement(LBRACE)('{')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('abstract')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('open')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('enum')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('open')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('annotation')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('override')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('open')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('abstract')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('private')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('protected')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('public')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('internal')
      PsiWhiteSpace('\n    ')
      PROPERTY
        PsiElement(val)('val')
        PsiWhiteSpace(' ')
        PsiElement(IDENTIFIER)('lazy')
      PsiWhiteSpace('\n')
      PsiElement(RBRACE)('}')