FILE fqName: fileName:/test.kt CLASS CLASS name:A modality:ABSTRACT visibility:public superTypes:[.JavaDefault; .KotlinDefault] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.A CONSTRUCTOR visibility:public <> () returnType:.A [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:ABSTRACT visibility:public superTypes:[.JavaDefault; .KotlinDefault]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaDefault public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaDefault public open fun hashCode (): kotlin.Int declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaDefault public open fun toString (): kotlin.String declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.A) returnType:kotlin.Unit overridden: public abstract fun foo (): kotlin.Unit declared in .JavaDefault public open fun foo (): kotlin.Unit declared in .KotlinDefault $this: VALUE_PARAMETER name: type:.A BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.A) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.A BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .A' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .A declared in .A.test' type=.A origin=null CALL 'public open fun foo (): kotlin.Unit declared in .A' type=kotlin.Unit origin=null $this: GET_VAR ': .A declared in .A.test' type=.A origin=null PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open a: kotlin.Int FUN name: visibility:public modality:OPEN <> ($this:.A) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open fun (): kotlin.Int declared in .KotlinDefault $this: VALUE_PARAMETER name: type:.A BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun (): kotlin.Int declared in .A' CONST Int type=kotlin.Int value=5 CLASS CLASS name:B modality:ABSTRACT visibility:public superTypes:[.JavaDefault; .KotlinPrivate] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.B CONSTRUCTOR visibility:public <> () returnType:.B [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:B modality:ABSTRACT visibility:public superTypes:[.JavaDefault; .KotlinPrivate]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaDefault public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:foo visibility:public modality:ABSTRACT <> ($this:.JavaDefault) returnType:kotlin.Unit [fake_override] overridden: public abstract fun foo (): kotlin.Unit declared in .JavaDefault $this: VALUE_PARAMETER name: type:.JavaDefault FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaDefault public open fun hashCode (): kotlin.Int declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaDefault public open fun toString (): kotlin.String declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:test visibility:public modality:FINAL <> ($this:.B) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.B BLOCK_BODY CALL 'public abstract fun foo (): kotlin.Unit declared in .B' type=kotlin.Unit origin=null $this: GET_VAR ': .B declared in .B.test' type=.B origin=null CLASS CLASS name:C modality:FINAL visibility:public superTypes:[.JavaDefault; .KotlinPrivate] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.C 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=5 FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> ($this:.C) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:FINAL [val] $this: VALUE_PARAMETER name: type:.C BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in .C' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null receiver: GET_VAR ': .C declared in .C.' type=.C origin=null CONSTRUCTOR visibility:public <> () returnType:.C [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[.JavaDefault; .KotlinPrivate]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaDefault public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaDefault public open fun hashCode (): kotlin.Int declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaDefault public open fun toString (): kotlin.String declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.C) returnType:kotlin.Unit overridden: public abstract fun foo (): kotlin.Unit declared in .JavaDefault $this: VALUE_PARAMETER name: type:.C BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.C) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.C BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public final fun (): kotlin.Int declared in .C' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .C declared in .C.test' type=.C origin=null CALL 'public open fun foo (): kotlin.Unit declared in .C' type=kotlin.Unit origin=null $this: GET_VAR ': .C declared in .C.test' type=.C origin=null CLASS CLASS name:D modality:FINAL visibility:public superTypes:[.JavaDefault; .KotlinProtected] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.D CONSTRUCTOR visibility:public <> () returnType:.D [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .KotlinProtected' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:D modality:FINAL visibility:public superTypes:[.JavaDefault; .KotlinProtected]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaDefault public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinProtected $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaDefault public open fun hashCode (): kotlin.Int declared in .KotlinProtected $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaDefault public open fun toString (): kotlin.String declared in .KotlinProtected $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.D) returnType:kotlin.Unit overridden: public abstract fun foo (): kotlin.Unit declared in .JavaDefault protected open fun foo (): kotlin.Unit declared in .KotlinProtected $this: VALUE_PARAMETER name: type:.D BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.D) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.D BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'protected open fun (): kotlin.Int declared in .D' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .D declared in .D.test' type=.D origin=null CALL 'public open fun foo (): kotlin.Unit declared in .D' type=kotlin.Unit origin=null $this: GET_VAR ': .D declared in .D.test' type=.D origin=null PROPERTY name:a visibility:protected modality:OPEN [val] overridden: protected open a: kotlin.Int FUN name: visibility:protected modality:OPEN <> ($this:.D) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:protected modality:OPEN [val] overridden: protected open fun (): kotlin.Int declared in .KotlinProtected $this: VALUE_PARAMETER name: type:.D BLOCK_BODY RETURN type=kotlin.Nothing from='protected open fun (): kotlin.Int declared in .D' CONST Int type=kotlin.Int value=5 CLASS CLASS name:E modality:FINAL visibility:public superTypes:[.JavaDefault; .KotlinPublic] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.E CONSTRUCTOR visibility:public <> () returnType:.E [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:E modality:FINAL visibility:public superTypes:[.JavaDefault; .KotlinPublic]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaDefault public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaDefault public open fun hashCode (): kotlin.Int declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaDefault public open fun toString (): kotlin.String declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.E) returnType:kotlin.Unit overridden: public abstract fun foo (): kotlin.Unit declared in .JavaDefault public open fun foo (): kotlin.Unit declared in .KotlinPublic $this: VALUE_PARAMETER name: type:.E BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.E) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.E BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .E' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .E declared in .E.test' type=.E origin=null CALL 'public open fun foo (): kotlin.Unit declared in .E' type=kotlin.Unit origin=null $this: GET_VAR ': .E declared in .E.test' type=.E origin=null PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open a: kotlin.Int FUN name: visibility:public modality:OPEN <> ($this:.E) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open fun (): kotlin.Int declared in .KotlinPublic $this: VALUE_PARAMETER name: type:.E BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun (): kotlin.Int declared in .E' CONST Int type=kotlin.Int value=5 CLASS CLASS name:F modality:FINAL visibility:public superTypes:[.JavaDefault; .KotlinInternal] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.F CONSTRUCTOR visibility:public <> () returnType:.F [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .KotlinInternal' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:F modality:FINAL visibility:public superTypes:[.JavaDefault; .KotlinInternal]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaDefault public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinInternal $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaDefault public open fun hashCode (): kotlin.Int declared in .KotlinInternal $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaDefault public open fun toString (): kotlin.String declared in .KotlinInternal $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.F) returnType:kotlin.Unit overridden: public abstract fun foo (): kotlin.Unit declared in .JavaDefault internal open fun foo (): kotlin.Unit declared in .KotlinInternal $this: VALUE_PARAMETER name: type:.F BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.F) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.F BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .F' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .F declared in .F.test' type=.F origin=null CALL 'public open fun foo (): kotlin.Unit declared in .F' type=kotlin.Unit origin=null $this: GET_VAR ': .F declared in .F.test' type=.F origin=null PROPERTY name:a visibility:public modality:OPEN [val] overridden: internal open a: kotlin.Int FUN name: visibility:public modality:OPEN <> ($this:.F) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val] overridden: internal open fun (): kotlin.Int declared in .KotlinInternal $this: VALUE_PARAMETER name: type:.F BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun (): kotlin.Int declared in .F' CONST Int type=kotlin.Int value=5 CLASS CLASS name:G modality:FINAL visibility:public superTypes:[.JavaPrivate; .KotlinDefault] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.G CONSTRUCTOR visibility:public <> () returnType:.G [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .JavaPrivate' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:G modality:FINAL visibility:public superTypes:[.JavaPrivate; .KotlinDefault]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaPrivate public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN <> ($this:.KotlinDefault) returnType:kotlin.Unit [fake_override] overridden: public open fun foo (): kotlin.Unit declared in .KotlinDefault $this: VALUE_PARAMETER name: type:.KotlinDefault FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaPrivate public open fun hashCode (): kotlin.Int declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaPrivate public open fun toString (): kotlin.String declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:test visibility:public modality:FINAL <> ($this:.G) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.G BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .G' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .G declared in .G.test' type=.G origin=null CALL 'public open fun foo (): kotlin.Unit declared in .G' type=kotlin.Unit origin=null $this: GET_VAR ': .G declared in .G.test' type=.G origin=null PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val] overridden: public open a: kotlin.Int FUN FAKE_OVERRIDE name: visibility:public modality:OPEN <> ($this:.KotlinDefault) returnType:kotlin.Int [fake_override] correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val] overridden: public open fun (): kotlin.Int declared in .KotlinDefault $this: VALUE_PARAMETER name: type:.KotlinDefault CLASS CLASS name:H modality:FINAL visibility:public superTypes:[.JavaPrivate; .KotlinDefault] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.H CONSTRUCTOR visibility:public <> () returnType:.H [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .JavaPrivate' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:H modality:FINAL visibility:public superTypes:[.JavaPrivate; .KotlinDefault]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaPrivate public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaPrivate public open fun hashCode (): kotlin.Int declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaPrivate public open fun toString (): kotlin.String declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.H) returnType:kotlin.Unit overridden: public open fun foo (): kotlin.Unit declared in .KotlinDefault $this: VALUE_PARAMETER name: type:.H BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.H) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.H BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .H' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .H declared in .H.test' type=.H origin=null CALL 'public open fun foo (): kotlin.Unit declared in .H' type=kotlin.Unit origin=null $this: GET_VAR ': .H declared in .H.test' type=.H origin=null PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open a: kotlin.Int FUN name: visibility:public modality:OPEN <> ($this:.H) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open fun (): kotlin.Int declared in .KotlinDefault $this: VALUE_PARAMETER name: type:.H BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun (): kotlin.Int declared in .H' CONST Int type=kotlin.Int value=5 CLASS CLASS name:I modality:FINAL visibility:public superTypes:[.JavaPrivate; .KotlinPrivate] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.I CONSTRUCTOR visibility:public <> () returnType:.I [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .JavaPrivate' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:I modality:FINAL visibility:public superTypes:[.JavaPrivate; .KotlinPrivate]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaPrivate public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaPrivate public open fun hashCode (): kotlin.Int declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaPrivate public open fun toString (): kotlin.String declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any CLASS CLASS name:J modality:FINAL visibility:public superTypes:[.JavaPrivate; .KotlinPublic] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.J CONSTRUCTOR visibility:public <> () returnType:.J [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .JavaPrivate' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:J modality:FINAL visibility:public superTypes:[.JavaPrivate; .KotlinPublic]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaPrivate public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN <> ($this:.KotlinPublic) returnType:kotlin.Unit [fake_override] overridden: public open fun foo (): kotlin.Unit declared in .KotlinPublic $this: VALUE_PARAMETER name: type:.KotlinPublic FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaPrivate public open fun hashCode (): kotlin.Int declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaPrivate public open fun toString (): kotlin.String declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:test visibility:public modality:FINAL <> ($this:.J) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.J BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .J' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .J declared in .J.test' type=.J origin=null CALL 'public open fun foo (): kotlin.Unit declared in .J' type=kotlin.Unit origin=null $this: GET_VAR ': .J declared in .J.test' type=.J origin=null PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val] overridden: public open a: kotlin.Int FUN FAKE_OVERRIDE name: visibility:public modality:OPEN <> ($this:.KotlinPublic) returnType:kotlin.Int [fake_override] correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,val] overridden: public open fun (): kotlin.Int declared in .KotlinPublic $this: VALUE_PARAMETER name: type:.KotlinPublic CLASS CLASS name:K modality:FINAL visibility:public superTypes:[.JavaPrivate; .KotlinPublic] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.K CONSTRUCTOR visibility:public <> () returnType:.K [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .JavaPrivate' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:K modality:FINAL visibility:public superTypes:[.JavaPrivate; .KotlinPublic]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaPrivate public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaPrivate public open fun hashCode (): kotlin.Int declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaPrivate public open fun toString (): kotlin.String declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.K) returnType:kotlin.Unit overridden: public open fun foo (): kotlin.Unit declared in .KotlinPublic $this: VALUE_PARAMETER name: type:.K BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.K) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.K BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .K' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .K declared in .K.test' type=.K origin=null CALL 'public open fun foo (): kotlin.Unit declared in .K' type=kotlin.Unit origin=null $this: GET_VAR ': .K declared in .K.test' type=.K origin=null PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open a: kotlin.Int FUN name: visibility:public modality:OPEN <> ($this:.K) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open fun (): kotlin.Int declared in .KotlinPublic $this: VALUE_PARAMETER name: type:.K BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun (): kotlin.Int declared in .K' CONST Int type=kotlin.Int value=5 CLASS CLASS name:KotlinInternal modality:OPEN visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.KotlinInternal CONSTRUCTOR visibility:public <> () returnType:.KotlinInternal [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:KotlinInternal modality:OPEN visibility:public superTypes:[kotlin.Any]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:internal modality:OPEN <> ($this:.KotlinInternal) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.KotlinInternal BLOCK_BODY PROPERTY name:a visibility:internal modality:OPEN [val] FUN name: visibility:internal modality:OPEN <> ($this:.KotlinInternal) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:internal modality:OPEN [val] $this: VALUE_PARAMETER name: type:.KotlinInternal BLOCK_BODY RETURN type=kotlin.Nothing from='internal open fun (): kotlin.Int declared in .KotlinInternal' CONST Int type=kotlin.Int value=1 CLASS CLASS name:KotlinProtected modality:OPEN visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.KotlinProtected 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=1 FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:protected modality:OPEN <> ($this:.KotlinProtected) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:protected modality:OPEN [val] $this: VALUE_PARAMETER name: type:.KotlinProtected BLOCK_BODY RETURN type=kotlin.Nothing from='protected open fun (): kotlin.Int declared in .KotlinProtected' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null receiver: GET_VAR ': .KotlinProtected declared in .KotlinProtected.' type=.KotlinProtected origin=null CONSTRUCTOR visibility:public <> () returnType:.KotlinProtected [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:KotlinProtected modality:OPEN visibility:public superTypes:[kotlin.Any]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:protected modality:OPEN <> ($this:.KotlinProtected) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.KotlinProtected BLOCK_BODY CLASS CLASS name:L modality:FINAL visibility:public superTypes:[.JavaProtected; .KotlinDefault] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.L CONSTRUCTOR visibility:public <> () returnType:.L [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .JavaProtected' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:L modality:FINAL visibility:public superTypes:[.JavaProtected; .KotlinDefault]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaProtected public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaProtected public open fun hashCode (): kotlin.Int declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaProtected public open fun toString (): kotlin.String declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.L) returnType:kotlin.Unit overridden: protected/*protected and package*/ open fun foo (): kotlin.Unit declared in .JavaProtected public open fun foo (): kotlin.Unit declared in .KotlinDefault $this: VALUE_PARAMETER name: type:.L BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.L) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.L BLOCK_BODY 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*/' type=kotlin.Int origin=null receiver: GET_VAR ': .L declared in .L.test' type=.L origin=null CALL 'public open fun foo (): kotlin.Unit declared in .L' type=kotlin.Unit origin=null $this: GET_VAR ': .L declared in .L.test' type=.L origin=null PROPERTY FAKE_OVERRIDE name:a visibility:protected/*protected and package*/ modality:FINAL [fake_override,var] overridden: protected/*protected and package*/ final a: kotlin.Int PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open a: kotlin.Int FUN name: visibility:public modality:OPEN <> ($this:.L) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open fun (): kotlin.Int declared in .KotlinDefault $this: VALUE_PARAMETER name: type:.L BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun (): kotlin.Int declared in .L' CONST Int type=kotlin.Int value=5 CLASS CLASS name:M modality:FINAL visibility:public superTypes:[.JavaProtected; .KotlinPrivate] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.M CONSTRUCTOR visibility:public <> () returnType:.M [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .JavaProtected' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:M modality:FINAL visibility:public superTypes:[.JavaProtected; .KotlinPrivate]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaProtected public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:foo visibility:protected/*protected and package*/ modality:OPEN <> ($this:.JavaProtected) returnType:kotlin.Unit [fake_override] overridden: protected/*protected and package*/ open fun foo (): kotlin.Unit declared in .JavaProtected $this: VALUE_PARAMETER name: type:.JavaProtected FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaProtected public open fun hashCode (): kotlin.Int declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaProtected public open fun toString (): kotlin.String declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:test visibility:public modality:FINAL <> ($this:.M) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.M BLOCK_BODY 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*/' type=kotlin.Int origin=null receiver: GET_VAR ': .M declared in .M.test' type=.M origin=null CALL 'protected/*protected and package*/ open fun foo (): kotlin.Unit declared in .M' type=kotlin.Unit origin=null $this: GET_VAR ': .M declared in .M.test' type=.M origin=null PROPERTY FAKE_OVERRIDE name:a visibility:protected/*protected and package*/ modality:FINAL [fake_override,var] overridden: protected/*protected and package*/ final a: kotlin.Int CLASS CLASS name:N modality:FINAL visibility:public superTypes:[.JavaProtected; .KotlinPrivate] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.N 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=5 FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> ($this:.N) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:FINAL [val] $this: VALUE_PARAMETER name: type:.N BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in .N' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null receiver: GET_VAR ': .N declared in .N.' type=.N origin=null CONSTRUCTOR visibility:public <> () returnType:.N [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .JavaProtected' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:N modality:FINAL visibility:public superTypes:[.JavaProtected; .KotlinPrivate]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaProtected public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaProtected public open fun hashCode (): kotlin.Int declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaProtected public open fun toString (): kotlin.String declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.N) returnType:kotlin.Unit overridden: protected/*protected and package*/ open fun foo (): kotlin.Unit declared in .JavaProtected $this: VALUE_PARAMETER name: type:.N BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.N) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.N BLOCK_BODY 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*/' type=kotlin.Int origin=null receiver: GET_VAR ': .N declared in .N.test' type=.N origin=null CALL 'public open fun foo (): kotlin.Unit declared in .N' type=kotlin.Unit origin=null $this: GET_VAR ': .N declared in .N.test' type=.N origin=null PROPERTY FAKE_OVERRIDE name:a visibility:protected/*protected and package*/ modality:FINAL [fake_override,var] overridden: protected/*protected and package*/ final a: kotlin.Int CLASS CLASS name:O modality:FINAL visibility:public superTypes:[.JavaProtected; .KotlinPublic] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.O CONSTRUCTOR visibility:public <> () returnType:.O [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .JavaProtected' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:O modality:FINAL visibility:public superTypes:[.JavaProtected; .KotlinPublic]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaProtected public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaProtected public open fun hashCode (): kotlin.Int declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaProtected public open fun toString (): kotlin.String declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.O) returnType:kotlin.Unit overridden: protected/*protected and package*/ open fun foo (): kotlin.Unit declared in .JavaProtected public open fun foo (): kotlin.Unit declared in .KotlinPublic $this: VALUE_PARAMETER name: type:.O BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.O) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.O BLOCK_BODY 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*/' type=kotlin.Int origin=null receiver: GET_VAR ': .O declared in .O.test' type=.O origin=null CALL 'public open fun foo (): kotlin.Unit declared in .O' type=kotlin.Unit origin=null $this: GET_VAR ': .O declared in .O.test' type=.O origin=null PROPERTY FAKE_OVERRIDE name:a visibility:protected/*protected and package*/ modality:FINAL [fake_override,var] overridden: protected/*protected and package*/ final a: kotlin.Int PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open a: kotlin.Int FUN name: visibility:public modality:OPEN <> ($this:.O) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open fun (): kotlin.Int declared in .KotlinPublic $this: VALUE_PARAMETER name: type:.O BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun (): kotlin.Int declared in .O' CONST Int type=kotlin.Int value=5 CLASS CLASS name:P modality:FINAL visibility:public superTypes:[.JavaPublic; .KotlinDefault] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.P CONSTRUCTOR visibility:public <> () returnType:.P [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:P modality:FINAL visibility:public superTypes:[.JavaPublic; .KotlinDefault]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaPublic public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaPublic public open fun hashCode (): kotlin.Int declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaPublic public open fun toString (): kotlin.String declared in .KotlinDefault $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.P) returnType:kotlin.Unit overridden: public abstract fun foo (): kotlin.Unit declared in .JavaPublic public open fun foo (): kotlin.Unit declared in .KotlinDefault $this: VALUE_PARAMETER name: type:.P BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.P) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.P BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .P' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .P declared in .P.test' type=.P origin=null CALL 'public open fun foo (): kotlin.Unit declared in .P' type=kotlin.Unit origin=null $this: GET_VAR ': .P declared in .P.test' type=.P origin=null PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open a: kotlin.Int FUN name: visibility:public modality:OPEN <> ($this:.P) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open fun (): kotlin.Int declared in .KotlinDefault $this: VALUE_PARAMETER name: type:.P BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun (): kotlin.Int declared in .P' CONST Int type=kotlin.Int value=5 CLASS CLASS name:Q modality:FINAL visibility:public superTypes:[.JavaPublic; .KotlinPrivate] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.Q 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=5 FUN DEFAULT_PROPERTY_ACCESSOR name: visibility:public modality:FINAL <> ($this:.Q) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:FINAL [val] $this: VALUE_PARAMETER name: type:.Q BLOCK_BODY RETURN type=kotlin.Nothing from='public final fun (): kotlin.Int declared in .Q' GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:kotlin.Int visibility:private [final]' type=kotlin.Int origin=null receiver: GET_VAR ': .Q declared in .Q.' type=.Q origin=null CONSTRUCTOR visibility:public <> () returnType:.Q [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:Q modality:FINAL visibility:public superTypes:[.JavaPublic; .KotlinPrivate]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaPublic public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaPublic public open fun hashCode (): kotlin.Int declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaPublic public open fun toString (): kotlin.String declared in .KotlinPrivate $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.Q) returnType:kotlin.Unit overridden: public abstract fun foo (): kotlin.Unit declared in .JavaPublic $this: VALUE_PARAMETER name: type:.Q BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.Q) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.Q BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public final fun (): kotlin.Int declared in .Q' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .Q declared in .Q.test' type=.Q origin=null CALL 'public open fun foo (): kotlin.Unit declared in .Q' type=kotlin.Unit origin=null $this: GET_VAR ': .Q declared in .Q.test' type=.Q origin=null CLASS CLASS name:R modality:FINAL visibility:public superTypes:[.JavaPublic; .KotlinProtected] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.R CONSTRUCTOR visibility:public <> () returnType:.R [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .KotlinProtected' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:R modality:FINAL visibility:public superTypes:[.JavaPublic; .KotlinProtected]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaPublic public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinProtected $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaPublic public open fun hashCode (): kotlin.Int declared in .KotlinProtected $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaPublic public open fun toString (): kotlin.String declared in .KotlinProtected $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.R) returnType:kotlin.Unit overridden: public abstract fun foo (): kotlin.Unit declared in .JavaPublic protected open fun foo (): kotlin.Unit declared in .KotlinProtected $this: VALUE_PARAMETER name: type:.R BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.R) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.R BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'protected open fun (): kotlin.Int declared in .R' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .R declared in .R.test' type=.R origin=null CALL 'public open fun foo (): kotlin.Unit declared in .R' type=kotlin.Unit origin=null $this: GET_VAR ': .R declared in .R.test' type=.R origin=null PROPERTY name:a visibility:protected modality:OPEN [val] overridden: protected open a: kotlin.Int FUN name: visibility:protected modality:OPEN <> ($this:.R) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:protected modality:OPEN [val] overridden: protected open fun (): kotlin.Int declared in .KotlinProtected $this: VALUE_PARAMETER name: type:.R BLOCK_BODY RETURN type=kotlin.Nothing from='protected open fun (): kotlin.Int declared in .R' CONST Int type=kotlin.Int value=5 CLASS CLASS name:S modality:FINAL visibility:public superTypes:[.JavaPublic; .KotlinPublic] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.S CONSTRUCTOR visibility:public <> () returnType:.S [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in kotlin.Any' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:S modality:FINAL visibility:public superTypes:[.JavaPublic; .KotlinPublic]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaPublic public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaPublic public open fun hashCode (): kotlin.Int declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaPublic public open fun toString (): kotlin.String declared in .KotlinPublic $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.S) returnType:kotlin.Unit overridden: public abstract fun foo (): kotlin.Unit declared in .JavaPublic public open fun foo (): kotlin.Unit declared in .KotlinPublic $this: VALUE_PARAMETER name: type:.S BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.S) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.S BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .S' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .S declared in .S.test' type=.S origin=null CALL 'public open fun foo (): kotlin.Unit declared in .S' type=kotlin.Unit origin=null $this: GET_VAR ': .S declared in .S.test' type=.S origin=null PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open a: kotlin.Int FUN name: visibility:public modality:OPEN <> ($this:.S) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val] overridden: public open fun (): kotlin.Int declared in .KotlinPublic $this: VALUE_PARAMETER name: type:.S BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun (): kotlin.Int declared in .S' CONST Int type=kotlin.Int value=5 CLASS CLASS name:T modality:FINAL visibility:public superTypes:[.JavaPublic; .KotlinInternal] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.T CONSTRUCTOR visibility:public <> () returnType:.T [primary] BLOCK_BODY DELEGATING_CONSTRUCTOR_CALL 'public constructor () declared in .KotlinInternal' INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:T modality:FINAL visibility:public superTypes:[.JavaPublic; .KotlinInternal]' FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .JavaPublic public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in .KotlinInternal $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in .JavaPublic public open fun hashCode (): kotlin.Int declared in .KotlinInternal $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in .JavaPublic public open fun toString (): kotlin.String declared in .KotlinInternal $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.T) returnType:kotlin.Unit overridden: public abstract fun foo (): kotlin.Unit declared in .JavaPublic internal open fun foo (): kotlin.Unit declared in .KotlinInternal $this: VALUE_PARAMETER name: type:.T BLOCK_BODY FUN name:test visibility:public modality:FINAL <> ($this:.T) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.T BLOCK_BODY TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'internal open fun (): kotlin.Int declared in .T' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR ': .T declared in .T.test' type=.T origin=null CALL 'public open fun foo (): kotlin.Unit declared in .T' type=kotlin.Unit origin=null $this: GET_VAR ': .T declared in .T.test' type=.T origin=null PROPERTY name:a visibility:internal modality:OPEN [val] overridden: internal open a: kotlin.Int FUN name: visibility:internal modality:OPEN <> ($this:.T) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:internal modality:OPEN [val] overridden: internal open fun (): kotlin.Int declared in .KotlinInternal $this: VALUE_PARAMETER name: type:.T BLOCK_BODY RETURN type=kotlin.Nothing from='internal open fun (): kotlin.Int declared in .T' CONST Int type=kotlin.Int value=5 CLASS INTERFACE name:KotlinDefault modality:ABSTRACT visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.KotlinDefault FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.KotlinDefault) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.KotlinDefault BLOCK_BODY PROPERTY name:a visibility:public modality:OPEN [val] FUN name: visibility:public modality:OPEN <> ($this:.KotlinDefault) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val] $this: VALUE_PARAMETER name: type:.KotlinDefault BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun (): kotlin.Int declared in .KotlinDefault' CONST Int type=kotlin.Int value=1 CLASS INTERFACE name:KotlinPrivate modality:ABSTRACT visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.KotlinPrivate FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:private modality:FINAL <> ($this:.KotlinPrivate) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.KotlinPrivate BLOCK_BODY PROPERTY name:a visibility:private modality:FINAL [val] FUN name: visibility:private modality:FINAL <> ($this:.KotlinPrivate) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:private modality:FINAL [val] $this: VALUE_PARAMETER name: type:.KotlinPrivate BLOCK_BODY RETURN type=kotlin.Nothing from='private final fun (): kotlin.Int declared in .KotlinPrivate' CONST Int type=kotlin.Int value=1 CLASS INTERFACE name:KotlinPublic modality:ABSTRACT visibility:public superTypes:[kotlin.Any] $this: VALUE_PARAMETER INSTANCE_RECEIVER name: type:.KotlinPublic FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator] overridden: public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any VALUE_PARAMETER name:other index:0 type:kotlin.Any? FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.Int [fake_override] overridden: public open fun hashCode (): kotlin.Int declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:kotlin.String [fake_override] overridden: public open fun toString (): kotlin.String declared in kotlin.Any $this: VALUE_PARAMETER name: type:kotlin.Any FUN name:foo visibility:public modality:OPEN <> ($this:.KotlinPublic) returnType:kotlin.Unit $this: VALUE_PARAMETER name: type:.KotlinPublic BLOCK_BODY PROPERTY name:a visibility:public modality:OPEN [val] FUN name: visibility:public modality:OPEN <> ($this:.KotlinPublic) returnType:kotlin.Int correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [val] $this: VALUE_PARAMETER name: type:.KotlinPublic BLOCK_BODY RETURN type=kotlin.Nothing from='public open fun (): kotlin.Int declared in .KotlinPublic' CONST Int type=kotlin.Int value=1 FUN name:test visibility:public modality:FINAL <> (a:.A, b:.B, c:.C, d:.D, e:.E, f:.F, h:.H, j:.J, k:.K, l:.L, m:.M, n:.N, o:.O, p:.P, q:.Q, r:.R, s:.S, t:.T) returnType:kotlin.Unit VALUE_PARAMETER name:a index:0 type:.A VALUE_PARAMETER name:b index:1 type:.B VALUE_PARAMETER name:c index:2 type:.C VALUE_PARAMETER name:d index:3 type:.D VALUE_PARAMETER name:e index:4 type:.E VALUE_PARAMETER name:f index:5 type:.F VALUE_PARAMETER name:h index:6 type:.H VALUE_PARAMETER name:j index:7 type:.J VALUE_PARAMETER name:k index:8 type:.K VALUE_PARAMETER name:l index:9 type:.L VALUE_PARAMETER name:m index:10 type:.M VALUE_PARAMETER name:n index:11 type:.N VALUE_PARAMETER name:o index:12 type:.O VALUE_PARAMETER name:p index:13 type:.P VALUE_PARAMETER name:q index:14 type:.Q VALUE_PARAMETER name:r index:15 type:.R VALUE_PARAMETER name:s index:16 type:.S VALUE_PARAMETER name:t index:17 type:.T BLOCK_BODY CALL 'public open fun foo (): kotlin.Unit declared in .A' type=kotlin.Unit origin=null $this: GET_VAR 'a: .A declared in .test' type=.A origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .A' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR 'a: .A declared in .test' type=.A origin=null CALL 'public final fun test (): kotlin.Unit declared in .A' type=kotlin.Unit origin=null $this: GET_VAR 'a: .A declared in .test' type=.A origin=null CALL 'public abstract fun foo (): kotlin.Unit declared in .B' type=kotlin.Unit origin=null $this: GET_VAR 'b: .B declared in .test' type=.B origin=null CALL 'public final fun test (): kotlin.Unit declared in .B' type=kotlin.Unit origin=null $this: GET_VAR 'b: .B declared in .test' type=.B origin=null CALL 'public open fun foo (): kotlin.Unit declared in .C' type=kotlin.Unit origin=null $this: GET_VAR 'c: .C declared in .test' type=.C origin=null CALL 'public final fun test (): kotlin.Unit declared in .C' type=kotlin.Unit origin=null $this: GET_VAR 'c: .C declared in .test' type=.C origin=null CALL 'public open fun foo (): kotlin.Unit declared in .D' type=kotlin.Unit origin=null $this: GET_VAR 'd: .D declared in .test' type=.D origin=null CALL 'public open fun foo (): kotlin.Unit declared in .D' type=kotlin.Unit origin=null $this: GET_VAR 'd: .D declared in .test' type=.D origin=null CALL 'public open fun foo (): kotlin.Unit declared in .E' type=kotlin.Unit origin=null $this: GET_VAR 'e: .E declared in .test' type=.E origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .E' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR 'e: .E declared in .test' type=.E origin=null CALL 'public final fun test (): kotlin.Unit declared in .E' type=kotlin.Unit origin=null $this: GET_VAR 'e: .E declared in .test' type=.E origin=null CALL 'public open fun foo (): kotlin.Unit declared in .F' type=kotlin.Unit origin=null $this: GET_VAR 'f: .F declared in .test' type=.F origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .F' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR 'f: .F declared in .test' type=.F origin=null CALL 'public final fun test (): kotlin.Unit declared in .F' type=kotlin.Unit origin=null $this: GET_VAR 'f: .F declared in .test' type=.F origin=null CALL 'public open fun foo (): kotlin.Unit declared in .H' type=kotlin.Unit origin=null $this: GET_VAR 'h: .H declared in .test' type=.H origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .H' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR 'h: .H declared in .test' type=.H origin=null CALL 'public final fun test (): kotlin.Unit declared in .H' type=kotlin.Unit origin=null $this: GET_VAR 'h: .H declared in .test' type=.H origin=null CALL 'public open fun foo (): kotlin.Unit declared in .J' type=kotlin.Unit origin=null $this: GET_VAR 'j: .J declared in .test' type=.J origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .J' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR 'j: .J declared in .test' type=.J origin=null CALL 'public final fun test (): kotlin.Unit declared in .J' type=kotlin.Unit origin=null $this: GET_VAR 'j: .J declared in .test' type=.J origin=null CALL 'public open fun foo (): kotlin.Unit declared in .K' type=kotlin.Unit origin=null $this: GET_VAR 'k: .K declared in .test' type=.K origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .K' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR 'k: .K declared in .test' type=.K origin=null CALL 'public final fun test (): kotlin.Unit declared in .K' type=kotlin.Unit origin=null $this: GET_VAR 'k: .K declared in .test' type=.K origin=null CALL 'public open fun foo (): kotlin.Unit declared in .L' type=kotlin.Unit origin=null $this: GET_VAR 'l: .L declared in .test' type=.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:protected/*protected and package*/' type=kotlin.Int origin=null receiver: GET_VAR 'l: .L declared in .test' type=.L origin=null CALL 'public final fun test (): kotlin.Unit declared in .L' type=kotlin.Unit origin=null $this: GET_VAR 'l: .L declared in .test' type=.L origin=null CALL 'protected/*protected and package*/ open fun foo (): kotlin.Unit declared in .M' type=kotlin.Unit origin=null $this: GET_VAR 'm: .M declared in .test' type=.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:protected/*protected and package*/' type=kotlin.Int origin=null receiver: GET_VAR 'm: .M declared in .test' type=.M origin=null CALL 'public final fun test (): kotlin.Unit declared in .M' type=kotlin.Unit origin=null $this: GET_VAR 'm: .M declared in .test' type=.M origin=null CALL 'public open fun foo (): kotlin.Unit declared in .N' type=kotlin.Unit origin=null $this: GET_VAR 'n: .N declared in .test' type=.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:protected/*protected and package*/' type=kotlin.Int origin=null receiver: GET_VAR 'n: .N declared in .test' type=.N origin=null CALL 'public final fun test (): kotlin.Unit declared in .N' type=kotlin.Unit origin=null $this: GET_VAR 'n: .N declared in .test' type=.N origin=null CALL 'public open fun foo (): kotlin.Unit declared in .O' type=kotlin.Unit origin=null $this: GET_VAR 'o: .O declared in .test' type=.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:protected/*protected and package*/' type=kotlin.Int origin=null receiver: GET_VAR 'o: .O declared in .test' type=.O origin=null CALL 'public final fun test (): kotlin.Unit declared in .O' type=kotlin.Unit origin=null $this: GET_VAR 'o: .O declared in .test' type=.O origin=null CALL 'public open fun foo (): kotlin.Unit declared in .P' type=kotlin.Unit origin=null $this: GET_VAR 'p: .P declared in .test' type=.P origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .P' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR 'p: .P declared in .test' type=.P origin=null CALL 'public final fun test (): kotlin.Unit declared in .P' type=kotlin.Unit origin=null $this: GET_VAR 'p: .P declared in .test' type=.P origin=null CALL 'public open fun foo (): kotlin.Unit declared in .Q' type=kotlin.Unit origin=null $this: GET_VAR 'q: .Q declared in .test' type=.Q origin=null CALL 'public final fun test (): kotlin.Unit declared in .Q' type=kotlin.Unit origin=null $this: GET_VAR 'q: .Q declared in .test' type=.Q origin=null CALL 'public open fun foo (): kotlin.Unit declared in .R' type=kotlin.Unit origin=null $this: GET_VAR 'r: .R declared in .test' type=.R origin=null CALL 'public final fun test (): kotlin.Unit declared in .R' type=kotlin.Unit origin=null $this: GET_VAR 'r: .R declared in .test' type=.R origin=null CALL 'public open fun foo (): kotlin.Unit declared in .S' type=kotlin.Unit origin=null $this: GET_VAR 's: .S declared in .test' type=.S origin=null CALL 'public final fun test (): kotlin.Unit declared in .S' type=kotlin.Unit origin=null $this: GET_VAR 's: .S declared in .test' type=.S origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'public open fun (): kotlin.Int declared in .S' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR 's: .S declared in .test' type=.S origin=null CALL 'public open fun foo (): kotlin.Unit declared in .T' type=kotlin.Unit origin=null $this: GET_VAR 't: .T declared in .test' type=.T origin=null CALL 'public final fun test (): kotlin.Unit declared in .T' type=kotlin.Unit origin=null $this: GET_VAR 't: .T declared in .test' type=.T origin=null TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit CALL 'internal open fun (): kotlin.Int declared in .T' type=kotlin.Int origin=GET_PROPERTY $this: GET_VAR 't: .T declared in .test' type=.T origin=null