PsiJavaFile:QualifiedAnnotation.java
  PsiImportList
    <empty list>
  PsiClass:PsiElement
    PsiModifierList:
      <empty list>
    PsiKeyword:interface('interface')
    PsiWhiteSpace(' ')
    PsiIdentifier:PsiElement('PsiElement')
    PsiTypeParameterList
      <empty list>
    PsiReferenceList
      <empty list>
    PsiReferenceList
      <empty list>
    PsiWhiteSpace(' ')
    PsiJavaToken:LBRACE('{')
    PsiWhiteSpace('\n  ')
    PsiMethod:getCopyableUserData
      PsiModifierList:@org.jetbrains.annotations.Nullable
        PsiAnnotation
          PsiJavaToken:AT('@')
          PsiJavaCodeReferenceElement:org.jetbrains.annotations.Nullable
            PsiJavaCodeReferenceElement:org.jetbrains.annotations
              PsiJavaCodeReferenceElement:org.jetbrains
                PsiJavaCodeReferenceElement:org
                  PsiIdentifier:org('org')
                  PsiReferenceParameterList
                    <empty list>
                PsiJavaToken:DOT('.')
                PsiIdentifier:jetbrains('jetbrains')
                PsiReferenceParameterList
                  <empty list>
              PsiJavaToken:DOT('.')
              PsiIdentifier:annotations('annotations')
              PsiReferenceParameterList
                <empty list>
            PsiJavaToken:DOT('.')
            PsiIdentifier:Nullable('Nullable')
            PsiReferenceParameterList
              <empty list>
          PsiAnnotationParameterList
            <empty list>
      PsiWhiteSpace(' ')
      PsiTypeParameterList
        PsiJavaToken:LT('<')
        PsiTypeParameter:T
          PsiIdentifier:T('T')
          PsiElement(EXTENDS_BOUND_LIST)
            <empty list>
        PsiJavaToken:GT('>')
      PsiWhiteSpace(' ')
      PsiTypeElement:T
        PsiJavaCodeReferenceElement:T
          PsiIdentifier:T('T')
          PsiReferenceParameterList
            <empty list>
      PsiWhiteSpace(' ')
      PsiIdentifier:getCopyableUserData('getCopyableUserData')
      PsiParameterList:(Key<T> key)
        PsiJavaToken:LPARENTH('(')
        PsiParameter:key
          PsiModifierList:
            <empty list>
          PsiTypeElement:Key<T>
            PsiJavaCodeReferenceElement:Key<T>
              PsiIdentifier:Key('Key')
              PsiReferenceParameterList
                PsiJavaToken:LT('<')
                PsiTypeElement:T
                  PsiJavaCodeReferenceElement:T
                    PsiIdentifier:T('T')
                    PsiReferenceParameterList
                      <empty list>
                PsiJavaToken:GT('>')
          PsiWhiteSpace(' ')
          PsiIdentifier:key('key')
        PsiJavaToken:RPARENTH(')')
      PsiReferenceList
        <empty list>
      PsiJavaToken:SEMICOLON(';')
    PsiWhiteSpace('\n')
    PsiJavaToken:RBRACE('}')