FILE fqName:ann fileName:/genericAnnotationClasses.kt
  CLASS ANNOTATION_CLASS name:Test1 modality:OPEN visibility:public superTypes:[kotlin.Annotation]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:ann.Test1<T of ann.Test1>
    TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
    PROPERTY name:x visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'x: kotlin.Int declared in ann.Test1.<init>' type=kotlin.Int origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:FINAL returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:ann.Test1<T of ann.Test1>
        correspondingProperty: PROPERTY name:x visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-x> (): kotlin.Int declared in ann.Test1'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
              receiver: GET_VAR '<this>: ann.Test1<T of ann.Test1> declared in ann.Test1.<get-x>' type=ann.Test1<T of ann.Test1> origin=null
    CONSTRUCTOR visibility:public returnType:ann.Test1<T of ann.Test1> [primary]
      VALUE_PARAMETER kind:Regular name:x index:0 type:kotlin.Int
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS ANNOTATION_CLASS name:Test1 modality:OPEN visibility:public superTypes:[kotlin.Annotation]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Annotation
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Annotation
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Annotation
  CLASS ANNOTATION_CLASS name:Test2 modality:OPEN visibility:public superTypes:[kotlin.Annotation]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:ann.Test2<T1 of ann.Test2, T2 of ann.Test2>
    TYPE_PARAMETER name:T1 index:0 variance: superTypes:[kotlin.Any] reified:false
    TYPE_PARAMETER name:T2 index:1 variance: superTypes:[kotlin.Any?] reified:false
    PROPERTY name:x visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'x: kotlin.Int declared in ann.Test2.<init>' type=kotlin.Int origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:FINAL returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:ann.Test2<T1 of ann.Test2, T2 of ann.Test2>
        correspondingProperty: PROPERTY name:x visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-x> (): kotlin.Int declared in ann.Test2'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
              receiver: GET_VAR '<this>: ann.Test2<T1 of ann.Test2, T2 of ann.Test2> declared in ann.Test2.<get-x>' type=ann.Test2<T1 of ann.Test2, T2 of ann.Test2> origin=null
    CONSTRUCTOR visibility:public returnType:ann.Test2<T1 of ann.Test2, T2 of ann.Test2> [primary]
      VALUE_PARAMETER kind:Regular name:x index:0 type:kotlin.Int
        EXPRESSION_BODY
          CONST Int type=kotlin.Int value=0
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS ANNOTATION_CLASS name:Test2 modality:OPEN visibility:public superTypes:[kotlin.Annotation]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Annotation
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Annotation
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Annotation
  CLASS ANNOTATION_CLASS name:Test3 modality:OPEN visibility:public superTypes:[kotlin.Annotation]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:ann.Test3<T1 of ann.Test3, T2 of ann.Test3>
    TYPE_PARAMETER name:T1 index:0 variance: superTypes:[kotlin.Any?] reified:false
    TYPE_PARAMETER name:T2 index:1 variance: superTypes:[ann.I<T1 of ann.Test3>] reified:false
    PROPERTY name:x visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:x type:ann.Test1<ann.I<T2 of ann.Test3>> visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'x: ann.Test1<ann.I<T2 of ann.Test3>> declared in ann.Test3.<init>' type=ann.Test1<ann.I<T2 of ann.Test3>> origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:FINAL returnType:ann.Test1<ann.I<T2 of ann.Test3>>
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:ann.Test3<T1 of ann.Test3, T2 of ann.Test3>
        correspondingProperty: PROPERTY name:x visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-x> (): ann.Test1<ann.I<T2 of ann.Test3>> declared in ann.Test3'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:ann.Test1<ann.I<T2 of ann.Test3>> visibility:private [final]' type=ann.Test1<ann.I<T2 of ann.Test3>> origin=null
              receiver: GET_VAR '<this>: ann.Test3<T1 of ann.Test3, T2 of ann.Test3> declared in ann.Test3.<get-x>' type=ann.Test3<T1 of ann.Test3, T2 of ann.Test3> origin=null
    CONSTRUCTOR visibility:public returnType:ann.Test3<T1 of ann.Test3, T2 of ann.Test3> [primary]
      VALUE_PARAMETER kind:Regular name:x index:0 type:ann.Test1<ann.I<T2 of ann.Test3>>
        EXPRESSION_BODY
          CONSTRUCTOR_CALL 'public constructor <init> (x: kotlin.Int) declared in ann.Test1' type=ann.Test1<ann.I<T2 of ann.Test3>> origin=null
            TYPE_ARG (of class) T: ann.I<T2 of ann.Test3>
            ARG x: CONST Int type=kotlin.Int value=1
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS ANNOTATION_CLASS name:Test3 modality:OPEN visibility:public superTypes:[kotlin.Annotation]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Annotation
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Annotation
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Annotation
  CLASS ANNOTATION_CLASS name:Test4 modality:OPEN visibility:public superTypes:[kotlin.Annotation]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:ann.Test4
    PROPERTY name:x visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Array<ann.Test3<kotlin.Int, ann.C<kotlin.Int>>> visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'x: kotlin.Array<ann.Test3<kotlin.Int, ann.C<kotlin.Int>>> declared in ann.Test4.<init>' type=kotlin.Array<ann.Test3<kotlin.Int, ann.C<kotlin.Int>>> origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-x> visibility:public modality:FINAL returnType:kotlin.Array<ann.Test3<kotlin.Int, ann.C<kotlin.Int>>>
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:ann.Test4
        correspondingProperty: PROPERTY name:x visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-x> (): kotlin.Array<ann.Test3<kotlin.Int, ann.C<kotlin.Int>>> declared in ann.Test4'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:x type:kotlin.Array<ann.Test3<kotlin.Int, ann.C<kotlin.Int>>> visibility:private [final]' type=kotlin.Array<ann.Test3<kotlin.Int, ann.C<kotlin.Int>>> origin=null
              receiver: GET_VAR '<this>: ann.Test4 declared in ann.Test4.<get-x>' type=ann.Test4 origin=null
    CONSTRUCTOR visibility:public returnType:ann.Test4 [primary]
      VALUE_PARAMETER kind:Regular name:x index:0 type:kotlin.Array<ann.Test3<kotlin.Int, ann.C<kotlin.Int>>>
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS ANNOTATION_CLASS name:Test4 modality:OPEN visibility:public superTypes:[kotlin.Annotation]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Annotation
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Annotation
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Annotation
  CLASS ANNOTATION_CLASS name:Test5 modality:OPEN visibility:public superTypes:[kotlin.Annotation]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:ann.Test5<T of ann.Test5>
    TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
    PROPERTY name:xs visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:xs type:kotlin.Array<out ann.Test3<T of ann.Test5, ann.C<T of ann.Test5>>> visibility:private [final]
        EXPRESSION_BODY
          GET_VAR 'xs: kotlin.Array<out ann.Test3<T of ann.Test5, ann.C<T of ann.Test5>>> declared in ann.Test5.<init>' type=kotlin.Array<out ann.Test3<T of ann.Test5, ann.C<T of ann.Test5>>> origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-xs> visibility:public modality:FINAL returnType:kotlin.Array<out ann.Test3<T of ann.Test5, ann.C<T of ann.Test5>>>
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:ann.Test5<T of ann.Test5>
        correspondingProperty: PROPERTY name:xs visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-xs> (): kotlin.Array<out ann.Test3<T of ann.Test5, ann.C<T of ann.Test5>>> declared in ann.Test5'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:xs type:kotlin.Array<out ann.Test3<T of ann.Test5, ann.C<T of ann.Test5>>> visibility:private [final]' type=kotlin.Array<out ann.Test3<T of ann.Test5, ann.C<T of ann.Test5>>> origin=null
              receiver: GET_VAR '<this>: ann.Test5<T of ann.Test5> declared in ann.Test5.<get-xs>' type=ann.Test5<T of ann.Test5> origin=null
    CONSTRUCTOR visibility:public returnType:ann.Test5<T of ann.Test5> [primary]
      VALUE_PARAMETER kind:Regular name:xs index:0 type:kotlin.Array<out ann.Test3<T of ann.Test5, ann.C<T of ann.Test5>>> varargElementType:ann.Test3<T of ann.Test5, ann.C<T of ann.Test5>> [vararg]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS ANNOTATION_CLASS name:Test5 modality:OPEN visibility:public superTypes:[kotlin.Annotation]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Annotation
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Annotation
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Annotation
  CLASS CLASS name:ARG modality:FINAL visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:ann.ARG
    CONSTRUCTOR visibility:public returnType:ann.ARG [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:ARG modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  CLASS CLASS name:C modality:FINAL visibility:public superTypes:[ann.I<T of ann.C>]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:ann.C<T of ann.C>
    TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
    CONSTRUCTOR visibility:public returnType:ann.C<T of ann.C> [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[ann.I<T of ann.C>]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in ann.I
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in ann.I
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in ann.I
  CLASS CLASS name:CC modality:FINAL visibility:public superTypes:[kotlin.Any]
    annotations:
      Test1<ann.ARG>(x = 42)
      Test2<kotlin.String, kotlin.String>(x = 38)
      Test3<kotlin.String, ann.C<kotlin.String>>(x = Test1<ann.I<ann.C<kotlin.String>>>(x = 39))
      Test4(x = [Test3<kotlin.Int, ann.C<kotlin.Int>>(x = Test1<ann.I<ann.C<kotlin.Int>>>(x = 40)), Test3<kotlin.Int, ann.C<kotlin.Int>>(x = Test1<ann.I<ann.C<kotlin.Int>>>(x = 50)), Test3<kotlin.Int, ann.C<kotlin.Int>>(x = Test1<ann.I<ann.C<kotlin.Int>>>(x = 60))] type=kotlin.Array<ann.Test3<kotlin.Int, ann.C<kotlin.Int>>> varargElementType=ann.Test3<kotlin.Int, ann.C<kotlin.Int>>)
      Test5<ann.ARG>(xs = [Test3<ann.ARG, ann.C<ann.ARG>>(x = Test1<ann.I<ann.C<ann.ARG>>>(x = 70)), Test3<ann.ARG, ann.C<ann.ARG>>(x = Test1<ann.I<ann.C<ann.ARG>>>(x = 80))] type=kotlin.Array<out ann.Test3<ann.ARG, ann.C<ann.ARG>>> varargElementType=ann.Test3<ann.ARG, ann.C<ann.ARG>>)
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:ann.CC
    CONSTRUCTOR visibility:public returnType:ann.CC [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:CC modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  CLASS INTERFACE name:I modality:ABSTRACT visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:ann.I<T of ann.I>
    TYPE_PARAMETER name:T index:0 variance: superTypes:[kotlin.Any?] reified:false
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
