KaNamedClassSymbol:
  anchorPsi: KtClass
  annotations: [
    kotlin/annotation/Target(allowedTargets = [kotlin.annotation.AnnotationTarget.TYPE])
      psi: KtAnnotationEntry
  ]
  classId: Anno1
  classKind: ANNOTATION_CLASS
  companionObject: null
  contextReceivers: []
  isActual: false
  isData: false
  isExpect: false
  isExternal: false
  isFun: false
  isInline: false
  isInner: false
  location: TOP_LEVEL
  modality: FINAL
  name: Anno1
  origin: SOURCE
  psi: KtClass
  realPsi: KtClass
  superTypes: [
    KaUsualClassType:
      annotations: []
      typeArguments: []
      type: kotlin/Annotation
  ]
  typeParameters: []
  visibility: PUBLIC
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingModule: KaSourceModule "Sources of main"
  applicableAnnotationTargets: [TYPE]
  deprecation: null
  importableFqName: Anno1

KaNamedClassSymbol:
  anchorPsi: KtClass
  annotations: [
    kotlin/annotation/Target(allowedTargets = [kotlin.annotation.AnnotationTarget.TYPE])
      psi: KtAnnotationEntry
  ]
  classId: Anno2
  classKind: ANNOTATION_CLASS
  companionObject: null
  contextReceivers: []
  isActual: false
  isData: false
  isExpect: false
  isExternal: false
  isFun: false
  isInline: false
  isInner: false
  location: TOP_LEVEL
  modality: FINAL
  name: Anno2
  origin: SOURCE
  psi: KtClass
  realPsi: KtClass
  superTypes: [
    KaUsualClassType:
      annotations: []
      typeArguments: []
      type: kotlin/Annotation
  ]
  typeParameters: []
  visibility: PUBLIC
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingModule: KaSourceModule "Sources of main"
  applicableAnnotationTargets: [TYPE]
  deprecation: null
  importableFqName: Anno2

KaNamedClassSymbol:
  anchorPsi: KtClass
  annotations: [
    kotlin/annotation/Target(allowedTargets = [kotlin.annotation.AnnotationTarget.TYPE])
      psi: KtAnnotationEntry
  ]
  classId: Anno3
  classKind: ANNOTATION_CLASS
  companionObject: null
  contextReceivers: []
  isActual: false
  isData: false
  isExpect: false
  isExternal: false
  isFun: false
  isInline: false
  isInner: false
  location: TOP_LEVEL
  modality: FINAL
  name: Anno3
  origin: SOURCE
  psi: KtClass
  realPsi: KtClass
  superTypes: [
    KaUsualClassType:
      annotations: []
      typeArguments: []
      type: kotlin/Annotation
  ]
  typeParameters: []
  visibility: PUBLIC
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingModule: KaSourceModule "Sources of main"
  applicableAnnotationTargets: [TYPE]
  deprecation: null
  importableFqName: Anno3

KaNamedClassSymbol:
  anchorPsi: KtClass
  annotations: [
    kotlin/annotation/Target(allowedTargets = [kotlin.annotation.AnnotationTarget.TYPE])
      psi: KtAnnotationEntry
  ]
  classId: Anno4
  classKind: ANNOTATION_CLASS
  companionObject: null
  contextReceivers: []
  isActual: false
  isData: false
  isExpect: false
  isExternal: false
  isFun: false
  isInline: false
  isInner: false
  location: TOP_LEVEL
  modality: FINAL
  name: Anno4
  origin: SOURCE
  psi: KtClass
  realPsi: KtClass
  superTypes: [
    KaUsualClassType:
      annotations: []
      typeArguments: []
      type: kotlin/Annotation
  ]
  typeParameters: []
  visibility: PUBLIC
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingModule: KaSourceModule "Sources of main"
  applicableAnnotationTargets: [TYPE]
  deprecation: null
  importableFqName: Anno4

KaConstructorSymbol:
  anchorPsi: KtPrimaryConstructor
  annotations: []
  callableId: null
  containingClassId: Anno5
  contextParameters: []
  contextReceivers: []
  hasStableParameterNames: true
  isActual: false
  isCompanion: false
  isExpect: false
  isExtension: false
  isExternal: false
  isPrimary: true
  location: CLASS
  modality: FINAL
  origin: SOURCE
  psi: KtPrimaryConstructor
  realPsi: KtPrimaryConstructor
  receiverParameter: null
  returnType: KaUsualClassType:
    annotations: []
    typeArguments: []
    type: Anno5
  typeParameters: []
  valueParameters: [
    KaValueParameterSymbol:
      anchorPsi: KtParameter
      annotations: []
      callableId: null
      contextParameters: []
      contextReceivers: []
      hasDeclaredDefaultValue: false
      hasDefaultValue: false
      isActual: false
      isCompanion: false
      isCrossinline: false
      isDelegated: false
      isExpect: false
      isExtension: false
      isExternal: false
      isImplicitLambdaParameter: false
      isNoinline: false
      isVal: true
      isVararg: false
      location: LOCAL
      modality: FINAL
      name: s
      origin: SOURCE
      primaryConstructorProperty: KaKotlinPropertySymbol(/Anno5.s)
      psi: KtParameter
      realPsi: KtParameter
      receiverParameter: null
      returnType: KaUsualClassType:
        annotations: []
        typeArguments: []
        type: kotlin/String
      typeParameters: []
      visibility: PUBLIC
      getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
      getContainingJvmClassName: Anno5
      getContainingModule: KaSourceModule "Sources of main"
      deprecation: null
      importableFqName: null
  ]
  visibility: PUBLIC
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingJvmClassName: Anno5
  getContainingModule: KaSourceModule "Sources of main"
  deprecation: null
  javaMethodName: null
  importableFqName: Anno5

KaNamedClassSymbol:
  anchorPsi: KtClass
  annotations: [
    kotlin/annotation/Target(allowedTargets = [kotlin.annotation.AnnotationTarget.TYPE])
      psi: KtAnnotationEntry
  ]
  classId: Anno5
  classKind: ANNOTATION_CLASS
  companionObject: null
  contextReceivers: []
  isActual: false
  isData: false
  isExpect: false
  isExternal: false
  isFun: false
  isInline: false
  isInner: false
  location: TOP_LEVEL
  modality: FINAL
  name: Anno5
  origin: SOURCE
  psi: KtClass
  realPsi: KtClass
  superTypes: [
    KaUsualClassType:
      annotations: []
      typeArguments: []
      type: kotlin/Annotation
  ]
  typeParameters: []
  visibility: PUBLIC
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingModule: KaSourceModule "Sources of main"
  applicableAnnotationTargets: [TYPE]
  deprecation: null
  importableFqName: Anno5

KaNamedClassSymbol:
  anchorPsi: KtClass
  annotations: []
  classId: I
  classKind: INTERFACE
  companionObject: null
  contextReceivers: []
  isActual: false
  isData: false
  isExpect: false
  isExternal: false
  isFun: false
  isInline: false
  isInner: false
  location: TOP_LEVEL
  modality: ABSTRACT
  name: I
  origin: SOURCE
  psi: KtClass
  realPsi: KtClass
  superTypes: [
    KaUsualClassType:
      annotations: []
      typeArguments: []
      type: kotlin/Any
  ]
  typeParameters: []
  visibility: PUBLIC
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingModule: KaSourceModule "Sources of main"
  applicableAnnotationTargets: null
  deprecation: null
  importableFqName: I

KaNamedFunctionSymbol:
  anchorPsi: KtNamedFunction
  annotations: []
  callableId: /X.f
  contextParameters: []
  contextReceivers: []
  contractEffects: []
  hasStableParameterNames: true
  isActual: false
  isBuiltinFunctionInvoke: false
  isCompanion: false
  isExpect: false
  isExtension: false
  isExternal: false
  isInfix: false
  isInline: false
  isOperator: false
  isOverride: false
  isStatic: false
  isSuspend: false
  isTailRec: false
  location: CLASS
  modality: FINAL
  name: f
  origin: SOURCE
  psi: KtNamedFunction
  realPsi: KtNamedFunction
  receiverParameter: null
  returnType: KaUsualClassType:
    annotations: [
      Anno3()
        psi: KtAnnotationEntry
    ]
    typeArguments: []
    type: @R|Anno3|()  I
  typeParameters: []
  valueParameters: [
    KaValueParameterSymbol:
      anchorPsi: KtParameter
      annotations: []
      callableId: null
      contextParameters: []
      contextReceivers: []
      hasDeclaredDefaultValue: false
      hasDefaultValue: false
      isActual: false
      isCompanion: false
      isCrossinline: false
      isDelegated: false
      isExpect: false
      isExtension: false
      isExternal: false
      isImplicitLambdaParameter: false
      isNoinline: false
      isVal: true
      isVararg: false
      location: LOCAL
      modality: FINAL
      name: arg
      origin: SOURCE
      primaryConstructorProperty: null
      psi: KtParameter
      realPsi: KtParameter
      receiverParameter: null
      returnType: KaUsualClassType:
        annotations: [
          Anno2()
            psi: KtAnnotationEntry
        ]
        typeArguments: []
        type: @R|Anno2|()  I
      typeParameters: []
      visibility: PUBLIC
      getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
      getContainingJvmClassName: X
      getContainingModule: KaSourceModule "Sources of main"
      deprecation: null
      importableFqName: null
  ]
  visibility: PUBLIC
  getDispatchReceiver(): KaUsualClassType:
    annotations: []
    typeArguments: []
    type: X
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingJvmClassName: X
  canBeOperator: false
  getContainingModule: KaSourceModule "Sources of main"
  deprecation: null
  returnValueStatus: Unspecified
  javaMethodName: f
  importableFqName: null

KaKotlinPropertySymbol:
  anchorPsi: KtProperty
  annotations: []
  backingFieldSymbol: KaBackingFieldSymbol:
    anchorPsi: KtProperty
    annotations: []
    callableId: null
    contextParameters: []
    contextReceivers: []
    isActual: false
    isCompanion: false
    isDelegated: false
    isExpect: false
    isExtension: false
    isExternal: false
    isNotDefault: false
    isVal: true
    location: PROPERTY
    modality: FINAL
    name: field
    origin: PROPERTY_BACKING_FIELD
    owningProperty: KaKotlinPropertySymbol(/X.x)
    psi: null
    realPsi: null
    receiverParameter: null
    returnType: KaUsualClassType:
      annotations: [
        Anno4()
          psi: KtAnnotationEntry
      ]
      typeArguments: []
      type: @R|Anno4|()  I
    typeParameters: []
    visibility: PRIVATE
    getDispatchReceiver(): KaUsualClassType:
      annotations: []
      typeArguments: []
      type: X
    getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
    getContainingJvmClassName: X
    getContainingModule: KaSourceModule "Sources of main"
    deprecation: null
    importableFqName: null
  callableId: /X.x
  contextParameters: []
  contextReceivers: []
  getter: KaPropertyGetterSymbol:
    anchorPsi: KtProperty
    annotations: []
    callableId: null
    contextParameters: []
    contextReceivers: []
    hasStableParameterNames: true
    isActual: false
    isCompanion: false
    isExpect: false
    isExtension: false
    isExternal: false
    isInline: false
    isNotDefault: false
    isOverride: false
    location: PROPERTY
    modality: FINAL
    origin: SOURCE
    psi: null
    realPsi: null
    receiverParameter: null
    returnType: KaUsualClassType:
      annotations: [
        Anno4()
          psi: KtAnnotationEntry
      ]
      typeArguments: []
      type: @R|Anno4|()  I
    typeParameters: []
    valueParameters: []
    visibility: PUBLIC
    getDispatchReceiver(): KaUsualClassType:
      annotations: []
      typeArguments: []
      type: X
    getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
    getContainingJvmClassName: X
    getContainingModule: KaSourceModule "Sources of main"
    deprecation: null
    javaMethodName: getX
    importableFqName: null
  hasBackingField: true
  hasGetter: true
  hasSetter: false
  initializer: KaNonConstantInitializerValue(this)
  isActual: false
  isCompanion: false
  isConst: false
  isDelegated: false
  isExpect: false
  isExtension: false
  isExternal: false
  isLateInit: false
  isOverride: false
  isStatic: false
  isVal: true
  location: CLASS
  modality: FINAL
  name: x
  origin: SOURCE
  primaryConstructorParameter: null
  psi: KtProperty
  realPsi: KtProperty
  receiverParameter: null
  returnType: KaUsualClassType:
    annotations: [
      Anno4()
        psi: KtAnnotationEntry
    ]
    typeArguments: []
    type: @R|Anno4|()  I
  setter: null
  typeParameters: []
  visibility: PUBLIC
  getDispatchReceiver(): KaUsualClassType:
    annotations: []
    typeArguments: []
    type: X
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingJvmClassName: X
  getContainingModule: KaSourceModule "Sources of main"
  deprecation: null
  isInline: false
  importableFqName: null

KaNamedClassSymbol:
  anchorPsi: KtClass
  annotations: []
  classId: X
  classKind: CLASS
  companionObject: null
  contextReceivers: []
  isActual: false
  isData: false
  isExpect: false
  isExternal: false
  isFun: false
  isInline: false
  isInner: false
  location: TOP_LEVEL
  modality: FINAL
  name: X
  origin: SOURCE
  psi: KtClass
  realPsi: KtClass
  superTypes: [
    KaUsualClassType:
      annotations: [
        Anno1()
          psi: KtAnnotationEntry
      ]
      typeArguments: []
      type: @R|Anno1|()  I
  ]
  typeParameters: []
  visibility: PUBLIC
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingModule: KaSourceModule "Sources of main"
  applicableAnnotationTargets: null
  deprecation: null
  importableFqName: X

KaTypeParameterSymbol:
  anchorPsi: KtTypeParameter
  annotations: []
  isActual: false
  isExpect: false
  isExternal: false
  isReified: false
  location: LOCAL
  modality: FINAL
  name: T
  origin: SOURCE
  psi: KtTypeParameter
  realPsi: KtTypeParameter
  upperBounds: []
  variance: INVARIANT
  visibility: LOCAL
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingModule: KaSourceModule "Sources of main"
  deprecation: null
  importableFqName: null

KaNamedFunctionSymbol:
  anchorPsi: KtNamedFunction
  annotations: []
  callableId: /foo
  contextParameters: []
  contextReceivers: []
  contractEffects: []
  hasStableParameterNames: true
  isActual: false
  isBuiltinFunctionInvoke: false
  isCompanion: false
  isExpect: false
  isExtension: true
  isExternal: false
  isInfix: false
  isInline: false
  isOperator: false
  isOverride: false
  isStatic: false
  isSuspend: false
  isTailRec: false
  location: TOP_LEVEL
  modality: FINAL
  name: foo
  origin: SOURCE
  psi: KtNamedFunction
  realPsi: KtNamedFunction
  receiverParameter: KaReceiverParameterSymbol:
    anchorPsi: KtTypeReference
    annotations: []
    callableId: null
    contextParameters: []
    contextReceivers: []
    isActual: false
    isCompanion: false
    isDelegated: false
    isExpect: false
    isExtension: false
    isExternal: false
    isVal: true
    location: LOCAL
    modality: FINAL
    name: <receiver>
    origin: SOURCE
    owningCallableSymbol: KaNamedFunctionSymbol(/foo)
    psi: KtTypeReference
    realPsi: KtTypeReference
    receiverParameter: null
    returnType: KaTypeParameterType:
      annotations: []
      type: T
    typeParameters: []
    visibility: PUBLIC
    getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
    getContainingJvmClassName: TypeAnnotationsKt
    getContainingModule: KaSourceModule "Sources of main"
    deprecation: null
    importableFqName: null
  returnType: KaUsualClassType:
    annotations: []
    typeArguments: [
      KaTypeParameterType:
        annotations: [
          Anno5(s = "1")
            psi: KtAnnotationEntry
        ]
        type: @R|Anno5|(s = String(1) [evaluated = String(1)])  T
    ]
    type: kotlin/collections/List<@R|Anno5|(s = String(1) [evaluated = String(1)])  T>?
  typeParameters: [
    KaTypeParameterSymbol:
      anchorPsi: KtTypeParameter
      annotations: []
      isActual: false
      isExpect: false
      isExternal: false
      isReified: false
      location: LOCAL
      modality: FINAL
      name: T
      origin: SOURCE
      psi: KtTypeParameter
      realPsi: KtTypeParameter
      upperBounds: []
      variance: INVARIANT
      visibility: LOCAL
      getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
      getContainingModule: KaSourceModule "Sources of main"
      deprecation: null
      importableFqName: null
  ]
  valueParameters: []
  visibility: PUBLIC
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingJvmClassName: TypeAnnotationsKt
  canBeOperator: false
  getContainingModule: KaSourceModule "Sources of main"
  deprecation: null
  returnValueStatus: Unspecified
  javaMethodName: foo
  importableFqName: foo

KaTypeParameterSymbol:
  anchorPsi: KtTypeParameter
  annotations: []
  isActual: false
  isExpect: false
  isExternal: false
  isReified: false
  location: LOCAL
  modality: FINAL
  name: T
  origin: SOURCE
  psi: KtTypeParameter
  realPsi: KtTypeParameter
  upperBounds: []
  variance: INVARIANT
  visibility: LOCAL
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingModule: KaSourceModule "Sources of main"
  deprecation: null
  importableFqName: null

KaNamedFunctionSymbol:
  anchorPsi: KtNamedFunction
  annotations: []
  callableId: /foo2
  contextParameters: []
  contextReceivers: []
  contractEffects: []
  hasStableParameterNames: true
  isActual: false
  isBuiltinFunctionInvoke: false
  isCompanion: false
  isExpect: false
  isExtension: true
  isExternal: false
  isInfix: false
  isInline: false
  isOperator: false
  isOverride: false
  isStatic: false
  isSuspend: false
  isTailRec: false
  location: TOP_LEVEL
  modality: FINAL
  name: foo2
  origin: SOURCE
  psi: KtNamedFunction
  realPsi: KtNamedFunction
  receiverParameter: KaReceiverParameterSymbol:
    anchorPsi: KtTypeReference
    annotations: []
    callableId: null
    contextParameters: []
    contextReceivers: []
    isActual: false
    isCompanion: false
    isDelegated: false
    isExpect: false
    isExtension: false
    isExternal: false
    isVal: true
    location: LOCAL
    modality: FINAL
    name: <receiver>
    origin: SOURCE
    owningCallableSymbol: KaNamedFunctionSymbol(/foo2)
    psi: KtTypeReference
    realPsi: KtTypeReference
    receiverParameter: null
    returnType: KaTypeParameterType:
      annotations: []
      type: T
    typeParameters: []
    visibility: PUBLIC
    getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
    getContainingJvmClassName: TypeAnnotationsKt
    getContainingModule: KaSourceModule "Sources of main"
    deprecation: null
    importableFqName: null
  returnType: KaUsualClassType:
    annotations: []
    typeArguments: [
      KaUsualClassType:
        annotations: []
        typeArguments: [
          KaTypeParameterType:
            annotations: [
              Anno5(s = "1")
                psi: KtAnnotationEntry
            ]
            type: @R|Anno5|(s = String(1) [evaluated = String(1)])  T
        ]
        type: kotlin/collections/List<@R|Anno5|(s = String(1) [evaluated = String(1)])  T>
    ]
    type: kotlin/collections/List<kotlin/collections/List<@R|Anno5|(s = String(1) [evaluated = String(1)])  T>>?
  typeParameters: [
    KaTypeParameterSymbol:
      anchorPsi: KtTypeParameter
      annotations: []
      isActual: false
      isExpect: false
      isExternal: false
      isReified: false
      location: LOCAL
      modality: FINAL
      name: T
      origin: SOURCE
      psi: KtTypeParameter
      realPsi: KtTypeParameter
      upperBounds: []
      variance: INVARIANT
      visibility: LOCAL
      getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
      getContainingModule: KaSourceModule "Sources of main"
      deprecation: null
      importableFqName: null
  ]
  valueParameters: []
  visibility: PUBLIC
  getContainingFileSymbol: KaFileSymbol(typeAnnotations.kt)
  getContainingJvmClassName: TypeAnnotationsKt
  canBeOperator: false
  getContainingModule: KaSourceModule "Sources of main"
  deprecation: null
  returnValueStatus: Unspecified
  javaMethodName: foo2
  importableFqName: foo2
