FILE fqName:<root> fileName:/test.kt
  CLASS CLASS name:A modality:FINAL visibility:public superTypes:[<root>.Java1]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.A
    CONSTRUCTOR visibility:public returnType:<root>.A [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java1'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:FINAL visibility:public superTypes:[<root>.Java1]' 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 <root>.Java1
    FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.PublicVisibility
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java1
    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 <root>.Java1
    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 <root>.Java1
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val]
      overridden:
        public open a: kotlin.Int declared in <root>.Java1
      FUN FAKE_OVERRIDE name:<get-a> visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java1
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val]
        overridden:
          public open fun <get-a> (): kotlin.Int declared in <root>.Java1
  CLASS CLASS name:AA modality:FINAL visibility:public superTypes:[<root>.Java15]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.AA
    CONSTRUCTOR visibility:public returnType:<root>.AA [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java15'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:AA modality:FINAL visibility:public superTypes:[<root>.Java15]' 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 <root>.Java15
    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 <root>.Java15
    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 <root>.Java15
    FUN name:foo visibility:protected modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.AA
      overridden:
        public/*package*/ open fun foo (): kotlin.Unit declared in <root>.Java15
      BLOCK_BODY
    PROPERTY FAKE_OVERRIDE name:a visibility:public/*package*/ modality:FINAL [fake_override,var]
      overridden:
        public/*package*/ final a: kotlin.Int declared in <root>.Java15
  CLASS CLASS name:B modality:FINAL visibility:public superTypes:[<root>.Java1]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.B
    CONSTRUCTOR visibility:public returnType:<root>.B [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java1'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:B modality:FINAL visibility:public superTypes:[<root>.Java1]' 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 <root>.Java1
    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 <root>.Java1
    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 <root>.Java1
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.B
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java1
      BLOCK_BODY
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val]
      overridden:
        public open a: kotlin.Int declared in <root>.Java1
      FUN FAKE_OVERRIDE name:<get-a> visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java1
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val]
        overridden:
          public open fun <get-a> (): kotlin.Int declared in <root>.Java1
  CLASS CLASS name:BB modality:FINAL visibility:public superTypes:[<root>.Java16]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.BB
    CONSTRUCTOR visibility:public returnType:<root>.BB [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java16'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:BB modality:FINAL visibility:public superTypes:[<root>.Java16]' 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 <root>.Java16
    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 <root>.Java16
    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 <root>.Java16
    PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
      overridden:
        internal open a: kotlin.Int declared in <root>.Java16
      FUN FAKE_OVERRIDE name:<get-a> visibility:internal modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java16
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
        overridden:
          internal open fun <get-a> (): kotlin.Int declared in <root>.Java16
  CLASS CLASS name:C modality:FINAL visibility:public superTypes:[<root>.Java2]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.C
    CONSTRUCTOR visibility:public returnType:<root>.C [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java2'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[<root>.Java2]' 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 <root>.Java2
    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 <root>.Java2
    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 <root>.Java2
  CLASS CLASS name:CC modality:FINAL visibility:public superTypes:[<root>.Java17]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.CC
    CONSTRUCTOR visibility:public returnType:<root>.CC [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java17'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:CC modality:FINAL visibility:public superTypes:[<root>.Java17]' 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 <root>.Java17
    FUN FAKE_OVERRIDE name:foo visibility:public/*package*/ modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java17
      overridden:
        public/*package*/ open fun foo (): kotlin.Unit declared in <root>.Java17
    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 <root>.Java17
    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 <root>.Java17
    PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
      overridden:
        internal open a: kotlin.Int declared in <root>.Java17
      FUN FAKE_OVERRIDE name:<get-a> visibility:internal modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java17
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
        overridden:
          internal open fun <get-a> (): kotlin.Int declared in <root>.Java17
    PROPERTY FAKE_OVERRIDE name:a visibility:public/*package*/ modality:FINAL [fake_override,var]
      overridden:
        public/*package*/ final a: kotlin.Int declared in <root>.Java17
  CLASS CLASS name:D modality:FINAL visibility:public superTypes:[<root>.Java2]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.D
    PROPERTY name:a visibility:public modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]
        EXPRESSION_BODY
          CONST Int type=kotlin.Int value=55
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:public modality:FINAL returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.D
        correspondingProperty: PROPERTY name:a visibility:public modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public final fun <get-a> (): kotlin.Int declared in <root>.D'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
              receiver: GET_VAR '<this>: <root>.D declared in <root>.D.<get-a>' type=<root>.D origin=null
    CONSTRUCTOR visibility:public returnType:<root>.D [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java2'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:D modality:FINAL visibility:public superTypes:[<root>.Java2]' 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 <root>.Java2
    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 <root>.Java2
    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 <root>.Java2
    FUN name:foo visibility:public modality:FINAL returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.D
      BLOCK_BODY
  CLASS CLASS name:DD modality:FINAL visibility:public superTypes:[<root>.Java17]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.DD
    CONSTRUCTOR visibility:public returnType:<root>.DD [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java17'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:DD modality:FINAL visibility:public superTypes:[<root>.Java17]' 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 <root>.Java17
    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 <root>.Java17
    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 <root>.Java17
    FUN name:foo visibility:internal modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.DD
      overridden:
        public/*package*/ open fun foo (): kotlin.Unit declared in <root>.Java17
      BLOCK_BODY
    PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
      overridden:
        internal open a: kotlin.Int declared in <root>.Java17
      FUN FAKE_OVERRIDE name:<get-a> visibility:internal modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java17
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
        overridden:
          internal open fun <get-a> (): kotlin.Int declared in <root>.Java17
    PROPERTY FAKE_OVERRIDE name:a visibility:public/*package*/ modality:FINAL [fake_override,var]
      overridden:
        public/*package*/ final a: kotlin.Int declared in <root>.Java17
  CLASS CLASS name:DefaultVisibility modality:OPEN visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.DefaultVisibility
    PROPERTY name:a visibility:public modality:OPEN [val]
      FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]
        EXPRESSION_BODY
          CONST Int type=kotlin.Int value=4
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:public modality:OPEN returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.DefaultVisibility
        correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-a> (): kotlin.Int declared in <root>.DefaultVisibility'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
              receiver: GET_VAR '<this>: <root>.DefaultVisibility declared in <root>.DefaultVisibility.<get-a>' type=<root>.DefaultVisibility origin=null
    CONSTRUCTOR visibility:public returnType:<root>.DefaultVisibility [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:DefaultVisibility modality:OPEN 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
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.DefaultVisibility
      BLOCK_BODY
  CLASS CLASS name:E modality:FINAL visibility:public superTypes:[<root>.Java3]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.E
    CONSTRUCTOR visibility:public returnType:<root>.E [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java3'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:E modality:FINAL visibility:public superTypes:[<root>.Java3]' 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 <root>.Java3
    FUN FAKE_OVERRIDE name:foo visibility:protected modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.ProtectedVisibility
      overridden:
        protected open fun foo (): kotlin.Unit declared in <root>.Java3
    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 <root>.Java3
    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 <root>.Java3
    PROPERTY FAKE_OVERRIDE name:a visibility:protected modality:OPEN [fake_override,val]
      overridden:
        protected open a: kotlin.Int declared in <root>.Java3
      FUN FAKE_OVERRIDE name:<get-a> visibility:protected modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java3
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:protected modality:OPEN [fake_override,val]
        overridden:
          protected open fun <get-a> (): kotlin.Int declared in <root>.Java3
  CLASS CLASS name:F modality:FINAL visibility:public superTypes:[<root>.Java3]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.F
    CONSTRUCTOR visibility:public returnType:<root>.F [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java3'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:F modality:FINAL visibility:public superTypes:[<root>.Java3]' 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 <root>.Java3
    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 <root>.Java3
    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 <root>.Java3
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.F
      overridden:
        protected open fun foo (): kotlin.Unit declared in <root>.Java3
      BLOCK_BODY
    PROPERTY name:a visibility:public modality:OPEN [val]
      overridden:
        protected open a: kotlin.Int declared in <root>.Java3
      FUN name:<get-a> visibility:public modality:OPEN returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.F
        correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val]
        overridden:
          protected open fun <get-a> (): kotlin.Int declared in <root>.Java3
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-a> (): kotlin.Int declared in <root>.F'
            CONST Int type=kotlin.Int value=55
  CLASS CLASS name:G modality:FINAL visibility:public superTypes:[<root>.Java4]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.G
    CONSTRUCTOR visibility:public returnType:<root>.G [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java4'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:G modality:FINAL visibility:public superTypes:[<root>.Java4]' 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 <root>.Java4
    FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.DefaultVisibility
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java4
    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 <root>.Java4
    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 <root>.Java4
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val]
      overridden:
        public open a: kotlin.Int declared in <root>.Java4
      FUN FAKE_OVERRIDE name:<get-a> visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java4
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val]
        overridden:
          public open fun <get-a> (): kotlin.Int declared in <root>.Java4
  CLASS CLASS name:H modality:FINAL visibility:public superTypes:[<root>.Java4]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.H
    CONSTRUCTOR visibility:public returnType:<root>.H [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java4'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:H modality:FINAL visibility:public superTypes:[<root>.Java4]' 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 <root>.Java4
    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 <root>.Java4
    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 <root>.Java4
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.H
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java4
      BLOCK_BODY
    PROPERTY name:a visibility:public modality:OPEN [val]
      overridden:
        public open a: kotlin.Int declared in <root>.Java4
      FUN name:<get-a> visibility:public modality:OPEN returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.H
        correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val]
        overridden:
          public open fun <get-a> (): kotlin.Int declared in <root>.Java4
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-a> (): kotlin.Int declared in <root>.H'
            CONST Int type=kotlin.Int value=55
  CLASS CLASS name:I modality:FINAL visibility:public superTypes:[<root>.Java5]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.I
    CONSTRUCTOR visibility:public returnType:<root>.I [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java5'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:I modality:FINAL visibility:public superTypes:[<root>.Java5]' 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 <root>.Java5
    FUN FAKE_OVERRIDE name:foo visibility:internal modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.InternalVisibility
      overridden:
        internal open fun foo (): kotlin.Unit declared in <root>.Java5
    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 <root>.Java5
    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 <root>.Java5
    PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
      overridden:
        internal open a: kotlin.Int declared in <root>.Java5
      FUN FAKE_OVERRIDE name:<get-a> visibility:internal modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java5
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
        overridden:
          internal open fun <get-a> (): kotlin.Int declared in <root>.Java5
  CLASS CLASS name:InternalVisibility modality:OPEN visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.InternalVisibility
    PROPERTY name:a visibility:internal modality:OPEN [val]
      FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]
        EXPRESSION_BODY
          CONST Int type=kotlin.Int value=4
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:internal modality:OPEN returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.InternalVisibility
        correspondingProperty: PROPERTY name:a visibility:internal modality:OPEN [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='internal open fun <get-a> (): kotlin.Int declared in <root>.InternalVisibility'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
              receiver: GET_VAR '<this>: <root>.InternalVisibility declared in <root>.InternalVisibility.<get-a>' type=<root>.InternalVisibility origin=null
    CONSTRUCTOR visibility:public returnType:<root>.InternalVisibility [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:InternalVisibility modality:OPEN 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
    FUN name:foo visibility:internal modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.InternalVisibility
      BLOCK_BODY
  CLASS CLASS name:J modality:FINAL visibility:public superTypes:[<root>.Java6]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.J
    CONSTRUCTOR visibility:public returnType:<root>.J [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java6'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:J modality:FINAL visibility:public superTypes:[<root>.Java6]' 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 <root>.Java6
    FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java6
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java6
    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 <root>.Java6
    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 <root>.Java6
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:FINAL [fake_override,var]
      overridden:
        public final a: kotlin.Int declared in <root>.Java6
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val]
      overridden:
        public open a: kotlin.Int declared in <root>.Java6
      FUN FAKE_OVERRIDE name:<get-a> visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java6
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val]
        overridden:
          public open fun <get-a> (): kotlin.Int declared in <root>.Java6
  CLASS CLASS name:K modality:FINAL visibility:public superTypes:[<root>.Java6]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.K
    CONSTRUCTOR visibility:public returnType:<root>.K [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java6'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:K modality:FINAL visibility:public superTypes:[<root>.Java6]' 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 <root>.Java6
    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 <root>.Java6
    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 <root>.Java6
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.K
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java6
      BLOCK_BODY
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:FINAL [fake_override,var]
      overridden:
        public final a: kotlin.Int declared in <root>.Java6
    PROPERTY name:a visibility:public modality:OPEN [val]
      overridden:
        public open a: kotlin.Int declared in <root>.Java6
      FUN name:<get-a> visibility:public modality:OPEN returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.K
        correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val]
        overridden:
          public open fun <get-a> (): kotlin.Int declared in <root>.Java6
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-a> (): kotlin.Int declared in <root>.K'
            CONST Int type=kotlin.Int value=55
  CLASS CLASS name:L modality:FINAL visibility:public superTypes:[<root>.Java7]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.L
    CONSTRUCTOR visibility:public returnType:<root>.L [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java7'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:L modality:FINAL visibility:public superTypes:[<root>.Java7]' 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 <root>.Java7
    FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java7
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java7
    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 <root>.Java7
    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 <root>.Java7
    PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
      overridden:
        internal open a: kotlin.Int declared in <root>.Java7
      FUN FAKE_OVERRIDE name:<get-a> visibility:internal modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java7
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
        overridden:
          internal open fun <get-a> (): kotlin.Int declared in <root>.Java7
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:FINAL [fake_override,var]
      overridden:
        public final a: kotlin.Int declared in <root>.Java7
  CLASS CLASS name:M modality:FINAL visibility:public superTypes:[<root>.Java8]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.M
    CONSTRUCTOR visibility:public returnType:<root>.M [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java8'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:M modality:FINAL visibility:public superTypes:[<root>.Java8]' 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 <root>.Java8
    FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java8
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java8
    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 <root>.Java8
    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 <root>.Java8
    PROPERTY FAKE_OVERRIDE name:a visibility:protected modality:OPEN [fake_override,val]
      overridden:
        protected open a: kotlin.Int declared in <root>.Java8
      FUN FAKE_OVERRIDE name:<get-a> visibility:protected modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java8
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:protected modality:OPEN [fake_override,val]
        overridden:
          protected open fun <get-a> (): kotlin.Int declared in <root>.Java8
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:FINAL [fake_override,var]
      overridden:
        public final a: kotlin.Int declared in <root>.Java8
  CLASS CLASS name:N modality:FINAL visibility:public superTypes:[<root>.Java8]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.N
    CONSTRUCTOR visibility:public returnType:<root>.N [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java8'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:N modality:FINAL visibility:public superTypes:[<root>.Java8]' 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 <root>.Java8
    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 <root>.Java8
    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 <root>.Java8
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.N
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java8
      BLOCK_BODY
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:FINAL [fake_override,var]
      overridden:
        public final a: kotlin.Int declared in <root>.Java8
    PROPERTY name:a visibility:protected modality:OPEN [val]
      overridden:
        protected open a: kotlin.Int declared in <root>.Java8
      FUN name:<get-a> visibility:protected modality:OPEN returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.N
        correspondingProperty: PROPERTY name:a visibility:protected modality:OPEN [val]
        overridden:
          protected open fun <get-a> (): kotlin.Int declared in <root>.Java8
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='protected open fun <get-a> (): kotlin.Int declared in <root>.N'
            CONST Int type=kotlin.Int value=55
  CLASS CLASS name:O modality:FINAL visibility:public superTypes:[<root>.Java9]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.O
    CONSTRUCTOR visibility:public returnType:<root>.O [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java9'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:O modality:FINAL visibility:public superTypes:[<root>.Java9]' 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 <root>.Java9
    FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java9
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java9
    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 <root>.Java9
    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 <root>.Java9
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:FINAL [fake_override,var]
      overridden:
        public final a: kotlin.Int declared in <root>.Java9
  CLASS CLASS name:P modality:FINAL visibility:public superTypes:[<root>.Java9]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.P
    CONSTRUCTOR visibility:public returnType:<root>.P [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java9'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:P modality:FINAL visibility:public superTypes:[<root>.Java9]' 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 <root>.Java9
    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 <root>.Java9
    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 <root>.Java9
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.P
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java9
      BLOCK_BODY
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:FINAL [fake_override,var]
      overridden:
        public final a: kotlin.Int declared in <root>.Java9
  CLASS CLASS name:PrivateVisibility modality:OPEN visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.PrivateVisibility
    PROPERTY name:a visibility:private modality:FINAL [val]
      FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]
        EXPRESSION_BODY
          CONST Int type=kotlin.Int value=2
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:private modality:FINAL returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.PrivateVisibility
        correspondingProperty: PROPERTY name:a visibility:private modality:FINAL [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='private final fun <get-a> (): kotlin.Int declared in <root>.PrivateVisibility'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
              receiver: GET_VAR '<this>: <root>.PrivateVisibility declared in <root>.PrivateVisibility.<get-a>' type=<root>.PrivateVisibility origin=null
    CONSTRUCTOR visibility:public returnType:<root>.PrivateVisibility [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:PrivateVisibility modality:OPEN 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
    FUN name:foo visibility:private modality:FINAL returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.PrivateVisibility
      BLOCK_BODY
  CLASS CLASS name:ProtectedVisibility modality:OPEN visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.ProtectedVisibility
    PROPERTY name:a visibility:protected modality:OPEN [val]
      FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]
        EXPRESSION_BODY
          CONST Int type=kotlin.Int value=3
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:protected modality:OPEN returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.ProtectedVisibility
        correspondingProperty: PROPERTY name:a visibility:protected modality:OPEN [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='protected open fun <get-a> (): kotlin.Int declared in <root>.ProtectedVisibility'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
              receiver: GET_VAR '<this>: <root>.ProtectedVisibility declared in <root>.ProtectedVisibility.<get-a>' type=<root>.ProtectedVisibility origin=null
    CONSTRUCTOR visibility:public returnType:<root>.ProtectedVisibility [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:ProtectedVisibility modality:OPEN 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
    FUN name:foo visibility:protected modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.ProtectedVisibility
      BLOCK_BODY
  CLASS CLASS name:PublicVisibility modality:OPEN visibility:public superTypes:[kotlin.Any]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.PublicVisibility
    PROPERTY name:a visibility:public modality:OPEN [val]
      FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]
        EXPRESSION_BODY
          CONST Int type=kotlin.Int value=1
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:public modality:OPEN returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.PublicVisibility
        correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val]
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-a> (): kotlin.Int declared in <root>.PublicVisibility'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null
              receiver: GET_VAR '<this>: <root>.PublicVisibility declared in <root>.PublicVisibility.<get-a>' type=<root>.PublicVisibility origin=null
    CONSTRUCTOR visibility:public returnType:<root>.PublicVisibility [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:PublicVisibility modality:OPEN 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
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.PublicVisibility
      BLOCK_BODY
  CLASS CLASS name:Q modality:FINAL visibility:public superTypes:[<root>.Java10]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.Q
    CONSTRUCTOR visibility:public returnType:<root>.Q [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java10'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Q modality:FINAL visibility:public superTypes:[<root>.Java10]' 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 <root>.Java10
    FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java10
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java10
    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 <root>.Java10
    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 <root>.Java10
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:FINAL [fake_override,var]
      overridden:
        public final a: kotlin.Int declared in <root>.Java10
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val]
      overridden:
        public open a: kotlin.Int declared in <root>.Java10
      FUN FAKE_OVERRIDE name:<get-a> visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java10
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val]
        overridden:
          public open fun <get-a> (): kotlin.Int declared in <root>.Java10
  CLASS CLASS name:R modality:FINAL visibility:public superTypes:[<root>.Java10]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.R
    CONSTRUCTOR visibility:public returnType:<root>.R [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java10'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:R modality:FINAL visibility:public superTypes:[<root>.Java10]' 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 <root>.Java10
    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 <root>.Java10
    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 <root>.Java10
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.R
      overridden:
        public open fun foo (): kotlin.Unit declared in <root>.Java10
      BLOCK_BODY
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:FINAL [fake_override,var]
      overridden:
        public final a: kotlin.Int declared in <root>.Java10
    PROPERTY name:a visibility:public modality:OPEN [val]
      overridden:
        public open a: kotlin.Int declared in <root>.Java10
      FUN name:<get-a> visibility:public modality:OPEN returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.R
        correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val]
        overridden:
          public open fun <get-a> (): kotlin.Int declared in <root>.Java10
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-a> (): kotlin.Int declared in <root>.R'
            CONST Int type=kotlin.Int value=55
  CLASS CLASS name:S modality:FINAL visibility:public superTypes:[<root>.Java11]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.S
    CONSTRUCTOR visibility:public returnType:<root>.S [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java11'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:S modality:FINAL visibility:public superTypes:[<root>.Java11]' 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 <root>.Java11
    FUN FAKE_OVERRIDE name:foo visibility:protected/*protected and package*/ modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java11
      overridden:
        protected/*protected and package*/ open fun foo (): kotlin.Unit declared in <root>.Java11
    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 <root>.Java11
    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 <root>.Java11
    PROPERTY FAKE_OVERRIDE name:a visibility:protected modality:OPEN [fake_override,val]
      overridden:
        protected open a: kotlin.Int declared in <root>.Java11
      FUN FAKE_OVERRIDE name:<get-a> visibility:protected modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java11
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:protected modality:OPEN [fake_override,val]
        overridden:
          protected open fun <get-a> (): kotlin.Int declared in <root>.Java11
    PROPERTY FAKE_OVERRIDE name:a visibility:protected/*protected and package*/ modality:FINAL [fake_override,var]
      overridden:
        protected/*protected and package*/ final a: kotlin.Int declared in <root>.Java11
  CLASS CLASS name:T modality:FINAL visibility:public superTypes:[<root>.Java11]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.T
    CONSTRUCTOR visibility:public returnType:<root>.T [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java11'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:T modality:FINAL visibility:public superTypes:[<root>.Java11]' 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 <root>.Java11
    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 <root>.Java11
    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 <root>.Java11
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.T
      overridden:
        protected/*protected and package*/ open fun foo (): kotlin.Unit declared in <root>.Java11
      BLOCK_BODY
    PROPERTY FAKE_OVERRIDE name:a visibility:protected/*protected and package*/ modality:FINAL [fake_override,var]
      overridden:
        protected/*protected and package*/ final a: kotlin.Int declared in <root>.Java11
    PROPERTY name:a visibility:protected modality:OPEN [val]
      overridden:
        protected open a: kotlin.Int declared in <root>.Java11
      FUN name:<get-a> visibility:protected modality:OPEN returnType:kotlin.Int
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.T
        correspondingProperty: PROPERTY name:a visibility:protected modality:OPEN [val]
        overridden:
          protected open fun <get-a> (): kotlin.Int declared in <root>.Java11
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='protected open fun <get-a> (): kotlin.Int declared in <root>.T'
            CONST Int type=kotlin.Int value=55
  CLASS CLASS name:U modality:FINAL visibility:public superTypes:[<root>.Java12]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.U
    CONSTRUCTOR visibility:public returnType:<root>.U [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java12'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:U modality:FINAL visibility:public superTypes:[<root>.Java12]' 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 <root>.Java12
    FUN FAKE_OVERRIDE name:foo visibility:protected/*protected and package*/ modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java12
      overridden:
        protected/*protected and package*/ open fun foo (): kotlin.Unit declared in <root>.Java12
    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 <root>.Java12
    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 <root>.Java12
    PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
      overridden:
        internal open a: kotlin.Int declared in <root>.Java12
      FUN FAKE_OVERRIDE name:<get-a> visibility:internal modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java12
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
        overridden:
          internal open fun <get-a> (): kotlin.Int declared in <root>.Java12
    PROPERTY FAKE_OVERRIDE name:a visibility:protected/*protected and package*/ modality:FINAL [fake_override,var]
      overridden:
        protected/*protected and package*/ final a: kotlin.Int declared in <root>.Java12
  CLASS CLASS name:V modality:FINAL visibility:public superTypes:[<root>.Java12]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.V
    CONSTRUCTOR visibility:public returnType:<root>.V [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java12'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:V modality:FINAL visibility:public superTypes:[<root>.Java12]' 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 <root>.Java12
    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 <root>.Java12
    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 <root>.Java12
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.V
      overridden:
        protected/*protected and package*/ open fun foo (): kotlin.Unit declared in <root>.Java12
      BLOCK_BODY
    PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
      overridden:
        internal open a: kotlin.Int declared in <root>.Java12
      FUN FAKE_OVERRIDE name:<get-a> visibility:internal modality:OPEN returnType:kotlin.Int [fake_override]
        VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java12
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:internal modality:OPEN [fake_override,val]
        overridden:
          internal open fun <get-a> (): kotlin.Int declared in <root>.Java12
    PROPERTY FAKE_OVERRIDE name:a visibility:protected/*protected and package*/ modality:FINAL [fake_override,var]
      overridden:
        protected/*protected and package*/ final a: kotlin.Int declared in <root>.Java12
  CLASS CLASS name:W modality:FINAL visibility:public superTypes:[<root>.Java13]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.W
    CONSTRUCTOR visibility:public returnType:<root>.W [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java13'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:W modality:FINAL visibility:public superTypes:[<root>.Java13]' 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 <root>.Java13
    FUN FAKE_OVERRIDE name:foo visibility:protected/*protected and package*/ modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java13
      overridden:
        protected/*protected and package*/ open fun foo (): kotlin.Unit declared in <root>.Java13
    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 <root>.Java13
    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 <root>.Java13
    PROPERTY FAKE_OVERRIDE name:a visibility:protected/*protected and package*/ modality:FINAL [fake_override,var]
      overridden:
        protected/*protected and package*/ final a: kotlin.Int declared in <root>.Java13
  CLASS CLASS name:X modality:FINAL visibility:public superTypes:[<root>.Java13]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.X
    CONSTRUCTOR visibility:public returnType:<root>.X [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java13'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:X modality:FINAL visibility:public superTypes:[<root>.Java13]' 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 <root>.Java13
    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 <root>.Java13
    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 <root>.Java13
    FUN name:foo visibility:public modality:OPEN returnType:kotlin.Unit
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.X
      overridden:
        protected/*protected and package*/ open fun foo (): kotlin.Unit declared in <root>.Java13
      BLOCK_BODY
    PROPERTY FAKE_OVERRIDE name:a visibility:protected/*protected and package*/ modality:FINAL [fake_override,var]
      overridden:
        protected/*protected and package*/ final a: kotlin.Int declared in <root>.Java13
  CLASS CLASS name:Y modality:FINAL visibility:public superTypes:[<root>.Java14]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.Y
    CONSTRUCTOR visibility:public returnType:<root>.Y [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java14'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Y modality:FINAL visibility:public superTypes:[<root>.Java14]' 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 <root>.Java14
    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 <root>.Java14
    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 <root>.Java14
  CLASS CLASS name:Z modality:FINAL visibility:public superTypes:[<root>.Java15]
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.Z
    CONSTRUCTOR visibility:public returnType:<root>.Z [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java15'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Z modality:FINAL visibility:public superTypes:[<root>.Java15]' 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 <root>.Java15
    FUN FAKE_OVERRIDE name:foo visibility:public/*package*/ modality:OPEN returnType:kotlin.Unit [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.Java15
      overridden:
        public/*package*/ open fun foo (): kotlin.Unit declared in <root>.Java15
    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 <root>.Java15
    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 <root>.Java15
    PROPERTY FAKE_OVERRIDE name:a visibility:public/*package*/ modality:FINAL [fake_override,var]
      overridden:
        public/*package*/ final a: kotlin.Int declared in <root>.Java15
  FUN name:test visibility:public modality:FINAL returnType:kotlin.Unit
    VALUE_PARAMETER kind:Regular name:a index:0 type:<root>.A
    VALUE_PARAMETER kind:Regular name:b index:1 type:<root>.B
    VALUE_PARAMETER kind:Regular name:d index:2 type:<root>.D
    VALUE_PARAMETER kind:Regular name:f index:3 type:<root>.F
    VALUE_PARAMETER kind:Regular name:g index:4 type:<root>.G
    VALUE_PARAMETER kind:Regular name:h index:5 type:<root>.H
    VALUE_PARAMETER kind:Regular name:j index:6 type:<root>.J
    VALUE_PARAMETER kind:Regular name:k index:7 type:<root>.K
    VALUE_PARAMETER kind:Regular name:l index:8 type:<root>.L
    VALUE_PARAMETER kind:Regular name:m index:9 type:<root>.M
    VALUE_PARAMETER kind:Regular name:n index:10 type:<root>.N
    VALUE_PARAMETER kind:Regular name:o index:11 type:<root>.O
    VALUE_PARAMETER kind:Regular name:p index:12 type:<root>.P
    VALUE_PARAMETER kind:Regular name:q index:13 type:<root>.Q
    VALUE_PARAMETER kind:Regular name:r index:14 type:<root>.R
    VALUE_PARAMETER kind:Regular name:s index:15 type:<root>.S
    VALUE_PARAMETER kind:Regular name:t index:16 type:<root>.T
    VALUE_PARAMETER kind:Regular name:u index:17 type:<root>.U
    VALUE_PARAMETER kind:Regular name:v index:18 type:<root>.V
    VALUE_PARAMETER kind:Regular name:w index:19 type:<root>.W
    VALUE_PARAMETER kind:Regular name:x index:20 type:<root>.X
    VALUE_PARAMETER kind:Regular name:aa index:21 type:<root>.AA
    VALUE_PARAMETER kind:Regular name:cc index:22 type:<root>.CC
    VALUE_PARAMETER kind:Regular name:dd index:23 type:<root>.DD
    BLOCK_BODY
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        CALL 'public open fun <get-a> (): kotlin.Int declared in <root>.A' type=kotlin.Int origin=GET_PROPERTY
          ARG <this>: GET_VAR 'a: <root>.A declared in <root>.test' type=<root>.A origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.A' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'a: <root>.A declared in <root>.test' type=<root>.A origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        CALL 'public open fun <get-a> (): kotlin.Int declared in <root>.B' type=kotlin.Int origin=GET_PROPERTY
          ARG <this>: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        CALL 'public final fun <get-a> (): kotlin.Int declared in <root>.D' type=kotlin.Int origin=GET_PROPERTY
          ARG <this>: GET_VAR 'd: <root>.D declared in <root>.test' type=<root>.D origin=null
      CALL 'public final fun foo (): kotlin.Unit declared in <root>.D' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'd: <root>.D declared in <root>.test' type=<root>.D origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        CALL 'public open fun <get-a> (): kotlin.Int declared in <root>.F' type=kotlin.Int origin=GET_PROPERTY
          ARG <this>: GET_VAR 'f: <root>.F declared in <root>.test' type=<root>.F origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.F' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'f: <root>.F declared in <root>.test' type=<root>.F origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        CALL 'public open fun <get-a> (): kotlin.Int declared in <root>.G' type=kotlin.Int origin=GET_PROPERTY
          ARG <this>: GET_VAR 'g: <root>.G declared in <root>.test' type=<root>.G origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.G' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'g: <root>.G declared in <root>.test' type=<root>.G origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        CALL 'public open fun <get-a> (): kotlin.Int declared in <root>.H' type=kotlin.Int origin=GET_PROPERTY
          ARG <this>: GET_VAR 'h: <root>.H declared in <root>.test' type=<root>.H origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.H' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'h: <root>.H declared in <root>.test' type=<root>.H origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:public declared in <root>.Java6' type=kotlin.Int superQualifierSymbol=<root>.J origin=null
          receiver: GET_VAR 'j: <root>.J declared in <root>.test' type=<root>.J origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.J' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'j: <root>.J declared in <root>.test' type=<root>.J origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        CALL 'public open fun <get-a> (): kotlin.Int declared in <root>.K' type=kotlin.Int origin=GET_PROPERTY
          ARG <this>: GET_VAR 'k: <root>.K declared in <root>.test' type=<root>.K origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.K' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'k: <root>.K declared in <root>.test' type=<root>.K origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:public declared in <root>.Java7' type=kotlin.Int superQualifierSymbol=<root>.L origin=null
          receiver: GET_VAR 'l: <root>.L declared in <root>.test' type=<root>.L origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.L' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'l: <root>.L declared in <root>.test' type=<root>.L origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:public declared in <root>.Java8' type=kotlin.Int superQualifierSymbol=<root>.M origin=null
          receiver: GET_VAR 'm: <root>.M declared in <root>.test' type=<root>.M origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.M' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'm: <root>.M declared in <root>.test' type=<root>.M origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:public declared in <root>.Java8' type=kotlin.Int superQualifierSymbol=<root>.N origin=null
          receiver: GET_VAR 'n: <root>.N declared in <root>.test' type=<root>.N origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.N' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'n: <root>.N declared in <root>.test' type=<root>.N origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:public declared in <root>.Java9' type=kotlin.Int superQualifierSymbol=<root>.O origin=null
          receiver: GET_VAR 'o: <root>.O declared in <root>.test' type=<root>.O origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.O' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'o: <root>.O declared in <root>.test' type=<root>.O origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:public declared in <root>.Java9' type=kotlin.Int superQualifierSymbol=<root>.P origin=null
          receiver: GET_VAR 'p: <root>.P declared in <root>.test' type=<root>.P origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.P' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'p: <root>.P declared in <root>.test' type=<root>.P origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:public declared in <root>.Java10' type=kotlin.Int superQualifierSymbol=<root>.Q origin=null
          receiver: GET_VAR 'q: <root>.Q declared in <root>.test' type=<root>.Q origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.Q' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'q: <root>.Q declared in <root>.test' type=<root>.Q origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        CALL 'public open fun <get-a> (): kotlin.Int declared in <root>.R' type=kotlin.Int origin=GET_PROPERTY
          ARG <this>: GET_VAR 'r: <root>.R declared in <root>.test' type=<root>.R origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.R' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'r: <root>.R declared in <root>.test' type=<root>.R origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:protected/*protected and package*/ declared in <root>.Java11' type=kotlin.Int superQualifierSymbol=<root>.S origin=null
          receiver: GET_VAR 's: <root>.S declared in <root>.test' type=<root>.S origin=null
      CALL 'protected/*protected and package*/ open fun foo (): kotlin.Unit declared in <root>.S' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 's: <root>.S declared in <root>.test' type=<root>.S origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:protected/*protected and package*/ declared in <root>.Java11' type=kotlin.Int superQualifierSymbol=<root>.T origin=null
          receiver: GET_VAR 't: <root>.T declared in <root>.test' type=<root>.T origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.T' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 't: <root>.T declared in <root>.test' type=<root>.T origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:protected/*protected and package*/ declared in <root>.Java12' type=kotlin.Int superQualifierSymbol=<root>.U origin=null
          receiver: GET_VAR 'u: <root>.U declared in <root>.test' type=<root>.U origin=null
      CALL 'protected/*protected and package*/ open fun foo (): kotlin.Unit declared in <root>.U' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'u: <root>.U declared in <root>.test' type=<root>.U origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:protected/*protected and package*/ declared in <root>.Java12' type=kotlin.Int superQualifierSymbol=<root>.V origin=null
          receiver: GET_VAR 'v: <root>.V declared in <root>.test' type=<root>.V origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.V' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'v: <root>.V declared in <root>.test' type=<root>.V origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:protected/*protected and package*/ declared in <root>.Java13' type=kotlin.Int superQualifierSymbol=<root>.W origin=null
          receiver: GET_VAR 'w: <root>.W declared in <root>.test' type=<root>.W origin=null
      CALL 'protected/*protected and package*/ open fun foo (): kotlin.Unit declared in <root>.W' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'w: <root>.W declared in <root>.test' type=<root>.W origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:protected/*protected and package*/ declared in <root>.Java13' type=kotlin.Int superQualifierSymbol=<root>.X origin=null
          receiver: GET_VAR 'x: <root>.X declared in <root>.test' type=<root>.X origin=null
      CALL 'public open fun foo (): kotlin.Unit declared in <root>.X' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'x: <root>.X declared in <root>.test' type=<root>.X origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:public/*package*/ declared in <root>.Java15' type=kotlin.Int superQualifierSymbol=<root>.AA origin=null
          receiver: GET_VAR 'aa: <root>.AA declared in <root>.test' type=<root>.AA origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:public/*package*/ declared in <root>.Java17' type=kotlin.Int superQualifierSymbol=<root>.CC origin=null
          receiver: GET_VAR 'cc: <root>.CC declared in <root>.test' type=<root>.CC origin=null
      CALL 'public/*package*/ open fun foo (): kotlin.Unit declared in <root>.CC' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'cc: <root>.CC declared in <root>.test' type=<root>.CC origin=null
      TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
        GET_FIELD 'FIELD IR_EXTERNAL_JAVA_DECLARATION_STUB name:a type:kotlin.Int visibility:public/*package*/ declared in <root>.Java17' type=kotlin.Int superQualifierSymbol=<root>.DD origin=null
          receiver: GET_VAR 'dd: <root>.DD declared in <root>.test' type=<root>.DD origin=null
      CALL 'internal open fun foo (): kotlin.Unit declared in <root>.DD' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR 'dd: <root>.DD declared in <root>.test' type=<root>.DD origin=null
