FILE fqName:<root> fileName:/1.kt
  CLASS CLASS name:A modality:OPEN visibility:public superTypes:[kotlin.Any]
    $this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.A
    PROPERTY name:a visibility:public modality:OPEN [var]
      FIELD PROPERTY_BACKING_FIELD name:a type:java.util.ArrayList<kotlin.Int> visibility:private
        EXPRESSION_BODY
          CALL 'public final fun arrayListOf <T> (): java.util.ArrayList<T of kotlin.collections.arrayListOf> declared in kotlin.collections' type=java.util.ArrayList<kotlin.Int> origin=null
            <T>: kotlin.Int
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-a> visibility:public modality:OPEN <> ($this:<root>.A) returnType:java.util.ArrayList<kotlin.Int>
        correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [var]
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-a> (): java.util.ArrayList<kotlin.Int> declared in <root>.A'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:java.util.ArrayList<kotlin.Int> visibility:private' type=java.util.ArrayList<kotlin.Int> origin=null
              receiver: GET_VAR '<this>: <root>.A declared in <root>.A.<get-a>' type=<root>.A origin=null
      FUN DEFAULT_PROPERTY_ACCESSOR name:<set-a> visibility:public modality:OPEN <> ($this:<root>.A, <set-?>:java.util.ArrayList<kotlin.Int>) returnType:kotlin.Unit
        correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [var]
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        VALUE_PARAMETER name:<set-?> index:0 type:java.util.ArrayList<kotlin.Int>
        BLOCK_BODY
          SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:a type:java.util.ArrayList<kotlin.Int> visibility:private' type=kotlin.Unit origin=null
            receiver: GET_VAR '<this>: <root>.A declared in <root>.A.<set-a>' type=<root>.A origin=null
            value: GET_VAR '<set-?>: java.util.ArrayList<kotlin.Int> declared in <root>.A.<set-a>' type=java.util.ArrayList<kotlin.Int> origin=null
    PROPERTY name:b visibility:public modality:OPEN [var]
      FIELD PROPERTY_BACKING_FIELD name:b type:java.util.HashSet<kotlin.Any?> visibility:private
        EXPRESSION_BODY
          CALL 'public final fun hashSetOf <T> (): java.util.HashSet<T of kotlin.collections.hashSetOf> declared in kotlin.collections' type=java.util.HashSet<kotlin.Any?> origin=null
            <T>: kotlin.Any?
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-b> visibility:public modality:OPEN <> ($this:<root>.A) returnType:java.util.HashSet<kotlin.Any?>
        correspondingProperty: PROPERTY name:b visibility:public modality:OPEN [var]
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-b> (): java.util.HashSet<kotlin.Any?> declared in <root>.A'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:b type:java.util.HashSet<kotlin.Any?> visibility:private' type=java.util.HashSet<kotlin.Any?> origin=null
              receiver: GET_VAR '<this>: <root>.A declared in <root>.A.<get-b>' type=<root>.A origin=null
      FUN DEFAULT_PROPERTY_ACCESSOR name:<set-b> visibility:public modality:OPEN <> ($this:<root>.A, <set-?>:java.util.HashSet<kotlin.Any?>) returnType:kotlin.Unit
        correspondingProperty: PROPERTY name:b visibility:public modality:OPEN [var]
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        VALUE_PARAMETER name:<set-?> index:0 type:java.util.HashSet<kotlin.Any?>
        BLOCK_BODY
          SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:b type:java.util.HashSet<kotlin.Any?> visibility:private' type=kotlin.Unit origin=null
            receiver: GET_VAR '<this>: <root>.A declared in <root>.A.<set-b>' type=<root>.A origin=null
            value: GET_VAR '<set-?>: java.util.HashSet<kotlin.Any?> declared in <root>.A.<set-b>' type=java.util.HashSet<kotlin.Any?> origin=null
    PROPERTY name:c visibility:public modality:OPEN [var]
      FIELD PROPERTY_BACKING_FIELD name:c type:kotlin.IntArray visibility:private
        EXPRESSION_BODY
          CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-c> visibility:public modality:OPEN <> ($this:<root>.A) returnType:kotlin.IntArray
        correspondingProperty: PROPERTY name:c visibility:public modality:OPEN [var]
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-c> (): kotlin.IntArray declared in <root>.A'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:c type:kotlin.IntArray visibility:private' type=kotlin.IntArray origin=null
              receiver: GET_VAR '<this>: <root>.A declared in <root>.A.<get-c>' type=<root>.A origin=null
      FUN DEFAULT_PROPERTY_ACCESSOR name:<set-c> visibility:public modality:OPEN <> ($this:<root>.A, <set-?>:kotlin.IntArray) returnType:kotlin.Unit
        correspondingProperty: PROPERTY name:c visibility:public modality:OPEN [var]
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        VALUE_PARAMETER name:<set-?> index:0 type:kotlin.IntArray
        BLOCK_BODY
          SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:c type:kotlin.IntArray visibility:private' type=kotlin.Unit origin=null
            receiver: GET_VAR '<this>: <root>.A declared in <root>.A.<set-c>' type=<root>.A origin=null
            value: GET_VAR '<set-?>: kotlin.IntArray declared in <root>.A.<set-c>' type=kotlin.IntArray origin=null
    PROPERTY name:d visibility:public modality:OPEN [var]
      FIELD PROPERTY_BACKING_FIELD name:d type:kotlin.Array<out kotlin.String> visibility:private
        EXPRESSION_BODY
          CALL 'public final fun arrayOf <T> (vararg elements: T of kotlin.arrayOf): kotlin.Array<T of kotlin.arrayOf> declared in kotlin' type=kotlin.Array<kotlin.String> origin=null
            <T>: kotlin.String
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-d> visibility:public modality:OPEN <> ($this:<root>.A) returnType:kotlin.Array<out kotlin.String>
        correspondingProperty: PROPERTY name:d visibility:public modality:OPEN [var]
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-d> (): kotlin.Array<out kotlin.String> declared in <root>.A'
            GET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:d type:kotlin.Array<out kotlin.String> visibility:private' type=kotlin.Array<out kotlin.String> origin=null
              receiver: GET_VAR '<this>: <root>.A declared in <root>.A.<get-d>' type=<root>.A origin=null
      FUN DEFAULT_PROPERTY_ACCESSOR name:<set-d> visibility:public modality:OPEN <> ($this:<root>.A, <set-?>:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
        correspondingProperty: PROPERTY name:d visibility:public modality:OPEN [var]
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        VALUE_PARAMETER name:<set-?> index:0 type:kotlin.Array<out kotlin.String>
        BLOCK_BODY
          SET_FIELD 'FIELD PROPERTY_BACKING_FIELD name:d type:kotlin.Array<out kotlin.String> visibility:private' type=kotlin.Unit origin=null
            receiver: GET_VAR '<this>: <root>.A declared in <root>.A.<set-d>' type=<root>.A origin=null
            value: GET_VAR '<set-?>: kotlin.Array<out kotlin.String> declared in <root>.A.<set-d>' type=kotlin.Array<out kotlin.String> origin=null
    CONSTRUCTOR visibility:public <> () returnType:<root>.A [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A 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:<this> 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:<this> 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:<this> type:kotlin.Any
    FUN name:bar visibility:public modality:OPEN <> ($this:<root>.A) returnType:java.util.ArrayList<kotlin.Int>
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar (): java.util.ArrayList<kotlin.Int> declared in <root>.A'
          CALL 'public open fun <get-a> (): java.util.ArrayList<kotlin.Int> declared in <root>.A' type=java.util.ArrayList<kotlin.Int> origin=GET_PROPERTY
            $this: GET_VAR '<this>: <root>.A declared in <root>.A.bar' type=<root>.A origin=null
    FUN name:bar2 visibility:public modality:OPEN <> ($this:<root>.A) returnType:java.util.HashSet<kotlin.Any?>
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar2 (): java.util.HashSet<kotlin.Any?> declared in <root>.A'
          CALL 'public open fun <get-b> (): java.util.HashSet<kotlin.Any?> declared in <root>.A' type=java.util.HashSet<kotlin.Any?> origin=GET_PROPERTY
            $this: GET_VAR '<this>: <root>.A declared in <root>.A.bar2' type=<root>.A origin=null
    FUN name:bar3 visibility:public modality:OPEN <> ($this:<root>.A) returnType:kotlin.IntArray
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar3 (): kotlin.IntArray declared in <root>.A'
          CALL 'public open fun <get-c> (): kotlin.IntArray declared in <root>.A' type=kotlin.IntArray origin=GET_PROPERTY
            $this: GET_VAR '<this>: <root>.A declared in <root>.A.bar3' type=<root>.A origin=null
    FUN name:bar4 visibility:public modality:OPEN <> ($this:<root>.A) returnType:kotlin.Array<out kotlin.String>
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar4 (): kotlin.Array<out kotlin.String> declared in <root>.A'
          CALL 'public open fun <get-d> (): kotlin.Array<out kotlin.String> declared in <root>.A' type=kotlin.Array<out kotlin.String> origin=GET_PROPERTY
            $this: GET_VAR '<this>: <root>.A declared in <root>.A.bar4' type=<root>.A origin=null
    FUN name:foo visibility:public modality:OPEN <> ($this:<root>.A, a:java.util.ArrayList<kotlin.Int>) returnType:kotlin.Unit
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      VALUE_PARAMETER name:a index:0 type:java.util.ArrayList<kotlin.Int>
      BLOCK_BODY
    FUN name:foo2 visibility:public modality:OPEN <> ($this:<root>.A, b:java.util.HashSet<kotlin.Any?>) returnType:kotlin.Unit
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      VALUE_PARAMETER name:b index:0 type:java.util.HashSet<kotlin.Any?>
      BLOCK_BODY
    FUN name:foo3 visibility:public modality:OPEN <> ($this:<root>.A, c:kotlin.IntArray) returnType:kotlin.Unit
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      VALUE_PARAMETER name:c index:0 type:kotlin.IntArray
      BLOCK_BODY
    FUN name:foo4 visibility:public modality:OPEN <> ($this:<root>.A, d:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      VALUE_PARAMETER name:d index:0 type:kotlin.Array<out kotlin.String>
      BLOCK_BODY
  CLASS CLASS name:B modality:FINAL visibility:public superTypes:[<root>.Java1]
    $this: VALUE_PARAMETER INSTANCE_RECEIVER 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]'
    FUN FAKE_OVERRIDE name:bar visibility:public modality:OPEN <> ($this:<root>.A) returnType:java.util.ArrayList<kotlin.Int> [fake_override]
      overridden:
        public open fun bar (): java.util.ArrayList<kotlin.Int> declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.A
    FUN FAKE_OVERRIDE name:bar2 visibility:public modality:OPEN <> ($this:<root>.A) returnType:java.util.HashSet<kotlin.Any?> [fake_override]
      overridden:
        public open fun bar2 (): java.util.HashSet<kotlin.Any?> declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.A
    FUN FAKE_OVERRIDE name:bar3 visibility:public modality:OPEN <> ($this:<root>.A) returnType:kotlin.IntArray [fake_override]
      overridden:
        public open fun bar3 (): kotlin.IntArray declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.A
    FUN FAKE_OVERRIDE name:bar4 visibility:public modality:OPEN <> ($this:<root>.A) returnType:kotlin.Array<out kotlin.String> [fake_override]
      overridden:
        public open fun bar4 (): kotlin.Array<out kotlin.String> declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.A
    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 <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any
      VALUE_PARAMETER name:other index:0 type:kotlin.Any?
    FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN <> ($this:<root>.A, a:java.util.ArrayList<kotlin.Int>) returnType:kotlin.Unit [fake_override]
      overridden:
        public open fun foo (a: java.util.ArrayList<kotlin.Int>): kotlin.Unit declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      VALUE_PARAMETER name:a index:0 type:java.util.ArrayList<kotlin.Int>
    FUN FAKE_OVERRIDE name:foo2 visibility:public modality:OPEN <> ($this:<root>.A, b:java.util.HashSet<kotlin.Any?>) returnType:kotlin.Unit [fake_override]
      overridden:
        public open fun foo2 (b: java.util.HashSet<kotlin.Any?>): kotlin.Unit declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      VALUE_PARAMETER name:b index:0 type:java.util.HashSet<kotlin.Any?>
    FUN FAKE_OVERRIDE name:foo3 visibility:public modality:OPEN <> ($this:<root>.A, c:kotlin.IntArray) returnType:kotlin.Unit [fake_override]
      overridden:
        public open fun foo3 (c: kotlin.IntArray): kotlin.Unit declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      VALUE_PARAMETER name:c index:0 type:kotlin.IntArray
    FUN FAKE_OVERRIDE name:foo4 visibility:public modality:OPEN <> ($this:<root>.A, d:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit [fake_override]
      overridden:
        public open fun foo4 (d: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.A
      VALUE_PARAMETER name:d index:0 type:kotlin.Array<out kotlin.String>
    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 <root>.Java1
      $this: VALUE_PARAMETER name:<this> 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 <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any
    PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,var]
      overridden:
        public open a: java.util.ArrayList<kotlin.Int>
      FUN FAKE_OVERRIDE name:<get-a> visibility:public modality:OPEN <> ($this:<root>.A) returnType:java.util.ArrayList<kotlin.Int> [fake_override]
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,var]
        overridden:
          public open fun <get-a> (): java.util.ArrayList<kotlin.Int> declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.A
      FUN FAKE_OVERRIDE name:<set-a> visibility:public modality:OPEN <> ($this:<root>.A, <set-?>:java.util.ArrayList<kotlin.Int>) returnType:kotlin.Unit [fake_override]
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:a visibility:public modality:OPEN [fake_override,var]
        overridden:
          public open fun <set-a> (<set-?>: java.util.ArrayList<kotlin.Int>): kotlin.Unit declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        VALUE_PARAMETER name:<set-?> index:0 type:java.util.ArrayList<kotlin.Int>
    PROPERTY FAKE_OVERRIDE name:b visibility:public modality:OPEN [fake_override,var]
      overridden:
        public open b: java.util.HashSet<kotlin.Any?>
      FUN FAKE_OVERRIDE name:<get-b> visibility:public modality:OPEN <> ($this:<root>.A) returnType:java.util.HashSet<kotlin.Any?> [fake_override]
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:b visibility:public modality:OPEN [fake_override,var]
        overridden:
          public open fun <get-b> (): java.util.HashSet<kotlin.Any?> declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.A
      FUN FAKE_OVERRIDE name:<set-b> visibility:public modality:OPEN <> ($this:<root>.A, <set-?>:java.util.HashSet<kotlin.Any?>) returnType:kotlin.Unit [fake_override]
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:b visibility:public modality:OPEN [fake_override,var]
        overridden:
          public open fun <set-b> (<set-?>: java.util.HashSet<kotlin.Any?>): kotlin.Unit declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        VALUE_PARAMETER name:<set-?> index:0 type:java.util.HashSet<kotlin.Any?>
    PROPERTY FAKE_OVERRIDE name:c visibility:public modality:OPEN [fake_override,var]
      overridden:
        public open c: kotlin.IntArray
      FUN FAKE_OVERRIDE name:<get-c> visibility:public modality:OPEN <> ($this:<root>.A) returnType:kotlin.IntArray [fake_override]
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:c visibility:public modality:OPEN [fake_override,var]
        overridden:
          public open fun <get-c> (): kotlin.IntArray declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.A
      FUN FAKE_OVERRIDE name:<set-c> visibility:public modality:OPEN <> ($this:<root>.A, <set-?>:kotlin.IntArray) returnType:kotlin.Unit [fake_override]
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:c visibility:public modality:OPEN [fake_override,var]
        overridden:
          public open fun <set-c> (<set-?>: kotlin.IntArray): kotlin.Unit declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        VALUE_PARAMETER name:<set-?> index:0 type:kotlin.IntArray
    PROPERTY FAKE_OVERRIDE name:d visibility:public modality:OPEN [fake_override,var]
      overridden:
        public open d: kotlin.Array<out kotlin.String>
      FUN FAKE_OVERRIDE name:<get-d> visibility:public modality:OPEN <> ($this:<root>.A) returnType:kotlin.Array<out kotlin.String> [fake_override]
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:d visibility:public modality:OPEN [fake_override,var]
        overridden:
          public open fun <get-d> (): kotlin.Array<out kotlin.String> declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.A
      FUN FAKE_OVERRIDE name:<set-d> visibility:public modality:OPEN <> ($this:<root>.A, <set-?>:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit [fake_override]
        correspondingProperty: PROPERTY FAKE_OVERRIDE name:d visibility:public modality:OPEN [fake_override,var]
        overridden:
          public open fun <set-d> (<set-?>: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.A
        VALUE_PARAMETER name:<set-?> index:0 type:kotlin.Array<out kotlin.String>
  CLASS CLASS name:C modality:FINAL visibility:public superTypes:[<root>.Java1]
    $this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.C
    CONSTRUCTOR visibility:public <> () returnType:<root>.C [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in <root>.Java1'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:C modality:FINAL visibility:public superTypes:[<root>.Java1]'
    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 <root>.Java1
      $this: VALUE_PARAMETER name:<this> 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 <root>.Java1
      $this: VALUE_PARAMETER name:<this> 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 <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any
    FUN name:bar visibility:public modality:OPEN <> ($this:<root>.C) returnType:java.util.ArrayList<kotlin.Int>
      overridden:
        public open fun bar (): java.util.ArrayList<kotlin.Int> declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.C
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar (): java.util.ArrayList<kotlin.Int> declared in <root>.C'
          CALL 'public final fun arrayListOf <T> (): java.util.ArrayList<T of kotlin.collections.arrayListOf> declared in kotlin.collections' type=java.util.ArrayList<kotlin.Int> origin=null
            <T>: kotlin.Int
    FUN name:bar2 visibility:public modality:OPEN <> ($this:<root>.C) returnType:java.util.HashSet<kotlin.Any?>
      overridden:
        public open fun bar2 (): java.util.HashSet<kotlin.Any?> declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.C
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar2 (): java.util.HashSet<kotlin.Any?> declared in <root>.C'
          CALL 'public final fun hashSetOf <T> (): java.util.HashSet<T of kotlin.collections.hashSetOf> declared in kotlin.collections' type=java.util.HashSet<kotlin.Any?> origin=null
            <T>: kotlin.Any?
    FUN name:bar3 visibility:public modality:OPEN <> ($this:<root>.C) returnType:kotlin.IntArray
      overridden:
        public open fun bar3 (): kotlin.IntArray declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.C
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar3 (): kotlin.IntArray declared in <root>.C'
          CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
    FUN name:bar4 visibility:public modality:OPEN <> ($this:<root>.C) returnType:kotlin.Array<out kotlin.String>
      overridden:
        public open fun bar4 (): kotlin.Array<out kotlin.String> declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.C
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar4 (): kotlin.Array<out kotlin.String> declared in <root>.C'
          CALL 'public final fun arrayOf <T> (vararg elements: T of kotlin.arrayOf): kotlin.Array<T of kotlin.arrayOf> declared in kotlin' type=kotlin.Array<kotlin.String> origin=null
            <T>: kotlin.String
    FUN name:foo visibility:public modality:OPEN <> ($this:<root>.C, a:java.util.ArrayList<kotlin.Int>) returnType:kotlin.Unit
      overridden:
        public open fun foo (a: java.util.ArrayList<kotlin.Int>): kotlin.Unit declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.C
      VALUE_PARAMETER name:a index:0 type:java.util.ArrayList<kotlin.Int>
      BLOCK_BODY
    FUN name:foo2 visibility:public modality:OPEN <> ($this:<root>.C, b:java.util.HashSet<kotlin.Any?>) returnType:kotlin.Unit
      overridden:
        public open fun foo2 (b: java.util.HashSet<kotlin.Any?>): kotlin.Unit declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.C
      VALUE_PARAMETER name:b index:0 type:java.util.HashSet<kotlin.Any?>
      BLOCK_BODY
    FUN name:foo3 visibility:public modality:OPEN <> ($this:<root>.C, c:kotlin.IntArray) returnType:kotlin.Unit
      overridden:
        public open fun foo3 (c: kotlin.IntArray): kotlin.Unit declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.C
      VALUE_PARAMETER name:c index:0 type:kotlin.IntArray
      BLOCK_BODY
    FUN name:foo4 visibility:public modality:OPEN <> ($this:<root>.C, d:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
      overridden:
        public open fun foo4 (d: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.Java1
      $this: VALUE_PARAMETER name:<this> type:<root>.C
      VALUE_PARAMETER name:d index:0 type:kotlin.Array<out kotlin.String>
      BLOCK_BODY
    PROPERTY name:a visibility:public modality:OPEN [var]
      overridden:
        public open a: java.util.ArrayList<kotlin.Int>
      FUN name:<get-a> visibility:public modality:OPEN <> ($this:<root>.C) returnType:java.util.ArrayList<kotlin.Int>
        correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [var]
        overridden:
          public open fun <get-a> (): java.util.ArrayList<kotlin.Int> declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.C
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-a> (): java.util.ArrayList<kotlin.Int> declared in <root>.C'
            CALL 'public final fun arrayListOf <T> (): java.util.ArrayList<T of kotlin.collections.arrayListOf> declared in kotlin.collections' type=java.util.ArrayList<kotlin.Int> origin=null
              <T>: kotlin.Int
      FUN name:<set-a> visibility:public modality:OPEN <> ($this:<root>.C, value:java.util.ArrayList<kotlin.Int>) returnType:kotlin.Unit
        correspondingProperty: PROPERTY name:a visibility:public modality:OPEN [var]
        overridden:
          public open fun <set-a> (<set-?>: java.util.ArrayList<kotlin.Int>): kotlin.Unit declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.C
        VALUE_PARAMETER name:value index:0 type:java.util.ArrayList<kotlin.Int>
        BLOCK_BODY
    PROPERTY name:b visibility:public modality:OPEN [var]
      overridden:
        public open b: java.util.HashSet<kotlin.Any?>
      FUN name:<get-b> visibility:public modality:OPEN <> ($this:<root>.C) returnType:java.util.HashSet<kotlin.Any?>
        correspondingProperty: PROPERTY name:b visibility:public modality:OPEN [var]
        overridden:
          public open fun <get-b> (): java.util.HashSet<kotlin.Any?> declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.C
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-b> (): java.util.HashSet<kotlin.Any?> declared in <root>.C'
            CALL 'public final fun hashSetOf <T> (): java.util.HashSet<T of kotlin.collections.hashSetOf> declared in kotlin.collections' type=java.util.HashSet<kotlin.Any?> origin=null
              <T>: kotlin.Any?
      FUN name:<set-b> visibility:public modality:OPEN <> ($this:<root>.C, value:java.util.HashSet<kotlin.Any?>) returnType:kotlin.Unit
        correspondingProperty: PROPERTY name:b visibility:public modality:OPEN [var]
        overridden:
          public open fun <set-b> (<set-?>: java.util.HashSet<kotlin.Any?>): kotlin.Unit declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.C
        VALUE_PARAMETER name:value index:0 type:java.util.HashSet<kotlin.Any?>
        BLOCK_BODY
    PROPERTY name:c visibility:public modality:OPEN [var]
      overridden:
        public open c: kotlin.IntArray
      FUN name:<get-c> visibility:public modality:OPEN <> ($this:<root>.C) returnType:kotlin.IntArray
        correspondingProperty: PROPERTY name:c visibility:public modality:OPEN [var]
        overridden:
          public open fun <get-c> (): kotlin.IntArray declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.C
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-c> (): kotlin.IntArray declared in <root>.C'
            CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
      FUN name:<set-c> visibility:public modality:OPEN <> ($this:<root>.C, value:kotlin.IntArray) returnType:kotlin.Unit
        correspondingProperty: PROPERTY name:c visibility:public modality:OPEN [var]
        overridden:
          public open fun <set-c> (<set-?>: kotlin.IntArray): kotlin.Unit declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.C
        VALUE_PARAMETER name:value index:0 type:kotlin.IntArray
        BLOCK_BODY
    PROPERTY name:d visibility:public modality:OPEN [var]
      overridden:
        public open d: kotlin.Array<out kotlin.String>
      FUN name:<get-d> visibility:public modality:OPEN <> ($this:<root>.C) returnType:kotlin.Array<out kotlin.String>
        correspondingProperty: PROPERTY name:d visibility:public modality:OPEN [var]
        overridden:
          public open fun <get-d> (): kotlin.Array<out kotlin.String> declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.C
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='public open fun <get-d> (): kotlin.Array<out kotlin.String> declared in <root>.C'
            CALL 'public final fun arrayOf <T> (vararg elements: T of kotlin.arrayOf): kotlin.Array<T of kotlin.arrayOf> declared in kotlin' type=kotlin.Array<kotlin.String> origin=null
              <T>: kotlin.String
      FUN name:<set-d> visibility:public modality:OPEN <> ($this:<root>.C, value:kotlin.Array<out kotlin.String>) returnType:kotlin.Unit
        correspondingProperty: PROPERTY name:d visibility:public modality:OPEN [var]
        overridden:
          public open fun <set-d> (<set-?>: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.Java1
        $this: VALUE_PARAMETER name:<this> type:<root>.C
        VALUE_PARAMETER name:value index:0 type:kotlin.Array<out kotlin.String>
        BLOCK_BODY
  CLASS CLASS name:D modality:ABSTRACT visibility:public superTypes:[<root>.Java3]
    $this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.D
    CONSTRUCTOR visibility:public <> () returnType:<root>.D [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:D modality:ABSTRACT visibility:public superTypes:[<root>.Java3]'
    FUN FAKE_OVERRIDE name:bar visibility:public modality:ABSTRACT <> ($this:<root>.Java2) returnType:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>? [fake_override]
      overridden:
        public abstract fun bar (): @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>? declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
    FUN FAKE_OVERRIDE name:bar2 visibility:public modality:ABSTRACT <> ($this:<root>.Java2) returnType:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>? [fake_override]
      overridden:
        public abstract fun bar2 (): @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>? declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
    FUN FAKE_OVERRIDE name:bar3 visibility:public modality:ABSTRACT <> ($this:<root>.Java2) returnType:@[FlexibleNullability] kotlin.IntArray? [fake_override]
      overridden:
        public abstract fun bar3 (): @[FlexibleNullability] kotlin.IntArray? declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
    FUN FAKE_OVERRIDE name:bar4 visibility:public modality:ABSTRACT <> ($this:<root>.Java2) returnType:@[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>? [fake_override]
      overridden:
        public abstract fun bar4 (): @[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>? declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
    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 <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any
      VALUE_PARAMETER name:other index:0 type:kotlin.Any?
    FUN FAKE_OVERRIDE name:foo visibility:public modality:ABSTRACT <> ($this:<root>.Java2, a:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>?) returnType:kotlin.Unit [fake_override]
      overridden:
        public abstract fun foo (a: @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>?): kotlin.Unit declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
      VALUE_PARAMETER name:a index:0 type:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>?
    FUN FAKE_OVERRIDE name:foo2 visibility:public modality:ABSTRACT <> ($this:<root>.Java2, c:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>?) returnType:kotlin.Unit [fake_override]
      overridden:
        public abstract fun foo2 (c: @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>?): kotlin.Unit declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
      VALUE_PARAMETER name:c index:0 type:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>?
    FUN FAKE_OVERRIDE name:foo3 visibility:public modality:ABSTRACT <> ($this:<root>.Java2, d:@[FlexibleNullability] kotlin.IntArray?) returnType:kotlin.Unit [fake_override]
      overridden:
        public abstract fun foo3 (d: @[FlexibleNullability] kotlin.IntArray?): kotlin.Unit declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
      VALUE_PARAMETER name:d index:0 type:@[FlexibleNullability] kotlin.IntArray?
    FUN FAKE_OVERRIDE name:foo4 visibility:public modality:ABSTRACT <> ($this:<root>.Java2, e:@[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>?) returnType:kotlin.Unit [fake_override]
      overridden:
        public abstract fun foo4 (e: @[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>?): kotlin.Unit declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
      VALUE_PARAMETER name:e index:0 type:@[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>?
    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 <root>.Java3
      $this: VALUE_PARAMETER name:<this> 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 <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any
  CLASS CLASS name:E modality:FINAL visibility:public superTypes:[<root>.Java3]
    $this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.E
    CONSTRUCTOR visibility:public <> () returnType:<root>.E [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:E modality:FINAL visibility:public superTypes:[<root>.Java3]'
    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 <root>.Java3
      $this: VALUE_PARAMETER name:<this> 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 <root>.Java3
      $this: VALUE_PARAMETER name:<this> 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 <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any
    FUN name:bar visibility:public modality:OPEN <> ($this:<root>.E) returnType:kotlin.collections.MutableList<kotlin.Int>
      overridden:
        public abstract fun bar (): @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>? declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.E
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar (): kotlin.collections.MutableList<kotlin.Int> declared in <root>.E'
          CALL 'public final fun mutableListOf <T> (): kotlin.collections.MutableList<T of kotlin.collections.mutableListOf> declared in kotlin.collections' type=kotlin.collections.MutableList<kotlin.Int> origin=null
            <T>: kotlin.Int
    FUN name:bar2 visibility:public modality:OPEN <> ($this:<root>.E) returnType:kotlin.collections.MutableSet<kotlin.Any>
      overridden:
        public abstract fun bar2 (): @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>? declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.E
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar2 (): kotlin.collections.MutableSet<kotlin.Any> declared in <root>.E'
          CALL 'public final fun mutableSetOf <T> (): kotlin.collections.MutableSet<T of kotlin.collections.mutableSetOf> declared in kotlin.collections' type=kotlin.collections.MutableSet<kotlin.Any> origin=null
            <T>: kotlin.Any
    FUN name:bar3 visibility:public modality:OPEN <> ($this:<root>.E) returnType:kotlin.IntArray
      overridden:
        public abstract fun bar3 (): @[FlexibleNullability] kotlin.IntArray? declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.E
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar3 (): kotlin.IntArray declared in <root>.E'
          CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
    FUN name:bar4 visibility:public modality:OPEN <> ($this:<root>.E) returnType:kotlin.Array<kotlin.String>
      overridden:
        public abstract fun bar4 (): @[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>? declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.E
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='public open fun bar4 (): kotlin.Array<kotlin.String> declared in <root>.E'
          CALL 'public final fun arrayOf <T> (vararg elements: T of kotlin.arrayOf): kotlin.Array<T of kotlin.arrayOf> declared in kotlin' type=kotlin.Array<kotlin.String> origin=null
            <T>: kotlin.String
            elements: VARARG type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String
              CONST String type=kotlin.String value=""
    FUN name:foo visibility:public modality:OPEN <> ($this:<root>.E, a:kotlin.collections.MutableList<kotlin.Int>?) returnType:kotlin.Unit
      overridden:
        public abstract fun foo (a: @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>?): kotlin.Unit declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.E
      VALUE_PARAMETER name:a index:0 type:kotlin.collections.MutableList<kotlin.Int>?
      BLOCK_BODY
    FUN name:foo2 visibility:public modality:OPEN <> ($this:<root>.E, c:kotlin.collections.MutableSet<kotlin.Any>?) returnType:kotlin.Unit
      overridden:
        public abstract fun foo2 (c: @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>?): kotlin.Unit declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.E
      VALUE_PARAMETER name:c index:0 type:kotlin.collections.MutableSet<kotlin.Any>?
      BLOCK_BODY
    FUN name:foo3 visibility:public modality:OPEN <> ($this:<root>.E, d:kotlin.IntArray?) returnType:kotlin.Unit
      overridden:
        public abstract fun foo3 (d: @[FlexibleNullability] kotlin.IntArray?): kotlin.Unit declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.E
      VALUE_PARAMETER name:d index:0 type:kotlin.IntArray?
      BLOCK_BODY
    FUN name:foo4 visibility:public modality:OPEN <> ($this:<root>.E, e:kotlin.Array<out kotlin.String>?) returnType:kotlin.Unit
      overridden:
        public abstract fun foo4 (e: @[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>?): kotlin.Unit declared in <root>.Java3
      $this: VALUE_PARAMETER name:<this> type:<root>.E
      VALUE_PARAMETER name:e index:0 type:kotlin.Array<out kotlin.String>?
      BLOCK_BODY
  CLASS INTERFACE name:KotlinInterface modality:ABSTRACT visibility:public superTypes:[<root>.Java2]
    $this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:<root>.KotlinInterface
    FUN FAKE_OVERRIDE name:bar visibility:public modality:ABSTRACT <> ($this:<root>.Java2) returnType:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>? [fake_override]
      overridden:
        public abstract fun bar (): @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>? declared in <root>.Java2
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
    FUN FAKE_OVERRIDE name:bar2 visibility:public modality:ABSTRACT <> ($this:<root>.Java2) returnType:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>? [fake_override]
      overridden:
        public abstract fun bar2 (): @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>? declared in <root>.Java2
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
    FUN FAKE_OVERRIDE name:bar3 visibility:public modality:ABSTRACT <> ($this:<root>.Java2) returnType:@[FlexibleNullability] kotlin.IntArray? [fake_override]
      overridden:
        public abstract fun bar3 (): @[FlexibleNullability] kotlin.IntArray? declared in <root>.Java2
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
    FUN FAKE_OVERRIDE name:bar4 visibility:public modality:ABSTRACT <> ($this:<root>.Java2) returnType:@[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>? [fake_override]
      overridden:
        public abstract fun bar4 (): @[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>? declared in <root>.Java2
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
    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 <root>.Java2
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any
      VALUE_PARAMETER name:other index:0 type:kotlin.Any?
    FUN FAKE_OVERRIDE name:foo visibility:public modality:ABSTRACT <> ($this:<root>.Java2, a:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>?) returnType:kotlin.Unit [fake_override]
      overridden:
        public abstract fun foo (a: @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>?): kotlin.Unit declared in <root>.Java2
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
      VALUE_PARAMETER name:a index:0 type:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>?
    FUN FAKE_OVERRIDE name:foo2 visibility:public modality:ABSTRACT <> ($this:<root>.Java2, c:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>?) returnType:kotlin.Unit [fake_override]
      overridden:
        public abstract fun foo2 (c: @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>?): kotlin.Unit declared in <root>.Java2
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
      VALUE_PARAMETER name:c index:0 type:@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>?
    FUN FAKE_OVERRIDE name:foo3 visibility:public modality:ABSTRACT <> ($this:<root>.Java2, d:@[FlexibleNullability] kotlin.IntArray?) returnType:kotlin.Unit [fake_override]
      overridden:
        public abstract fun foo3 (d: @[FlexibleNullability] kotlin.IntArray?): kotlin.Unit declared in <root>.Java2
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
      VALUE_PARAMETER name:d index:0 type:@[FlexibleNullability] kotlin.IntArray?
    FUN FAKE_OVERRIDE name:foo4 visibility:public modality:ABSTRACT <> ($this:<root>.Java2, e:@[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>?) returnType:kotlin.Unit [fake_override]
      overridden:
        public abstract fun foo4 (e: @[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>?): kotlin.Unit declared in <root>.Java2
      $this: VALUE_PARAMETER name:<this> type:<root>.Java2
      VALUE_PARAMETER name:e index:0 type:@[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>?
    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 <root>.Java2
      $this: VALUE_PARAMETER name:<this> 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 <root>.Java2
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any
  FUN name:test visibility:public modality:FINAL <> (b:<root>.B, c:<root>.C, d:<root>.D, e:<root>.E) returnType:kotlin.Unit
    VALUE_PARAMETER name:b index:0 type:<root>.B
    VALUE_PARAMETER name:c index:1 type:<root>.C
    VALUE_PARAMETER name:d index:2 type:<root>.D
    VALUE_PARAMETER name:e index:3 type:<root>.E
    BLOCK_BODY
      CALL 'public open fun <set-a> (<set-?>: java.util.ArrayList<kotlin.Int>): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=EQ
        $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
        <set-?>: CALL 'public final fun arrayListOf <T> (vararg elements: T of kotlin.collections.arrayListOf): java.util.ArrayList<T of kotlin.collections.arrayListOf> declared in kotlin.collections' type=java.util.ArrayList<kotlin.Int> origin=null
          <T>: kotlin.Int
          elements: VARARG type=kotlin.Array<out kotlin.Int> varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public open fun <set-b> (<set-?>: java.util.HashSet<kotlin.Any?>): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=EQ
        $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
        <set-?>: CALL 'public final fun hashSetOf <T> (vararg elements: T of kotlin.collections.hashSetOf): java.util.HashSet<T of kotlin.collections.hashSetOf> declared in kotlin.collections' type=java.util.HashSet<kotlin.Any?> origin=null
          <T>: kotlin.Any?
          elements: VARARG type=kotlin.Array<out kotlin.Any?> varargElementType=kotlin.Any?
            CONST Int type=kotlin.Int value=1
            CONST String type=kotlin.String value=""
            CONST Null type=kotlin.Nothing? value=null
      CALL 'public open fun <set-c> (<set-?>: kotlin.IntArray): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=EQ
        $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
        <set-?>: CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
          elements: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public open fun <set-d> (<set-?>: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=EQ
        $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
        <set-?>: CALL 'public final fun arrayOf <T> (vararg elements: T of kotlin.arrayOf): kotlin.Array<T of kotlin.arrayOf> declared in kotlin' type=kotlin.Array<kotlin.String> origin=null
          <T>: kotlin.String
          elements: VARARG type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String
            CONST String type=kotlin.String value=""
      CALL 'public open fun foo (a: java.util.ArrayList<kotlin.Int>): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=null
        $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
        a: CALL 'public final fun arrayListOf <T> (vararg elements: T of kotlin.collections.arrayListOf): java.util.ArrayList<T of kotlin.collections.arrayListOf> declared in kotlin.collections' type=java.util.ArrayList<kotlin.Int> origin=null
          <T>: kotlin.Int
          elements: VARARG type=kotlin.Array<out kotlin.Int> varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public open fun foo2 (b: java.util.HashSet<kotlin.Any?>): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=null
        $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
        b: CALL 'public final fun hashSetOf <T> (vararg elements: T of kotlin.collections.hashSetOf): java.util.HashSet<T of kotlin.collections.hashSetOf> declared in kotlin.collections' type=java.util.HashSet<kotlin.Any?> origin=null
          <T>: kotlin.Any?
          elements: VARARG type=kotlin.Array<out kotlin.Any?> varargElementType=kotlin.Any?
            CONST Int type=kotlin.Int value=1
            CONST String type=kotlin.String value=""
            CONST Null type=kotlin.Nothing? value=null
      CALL 'public open fun foo3 (c: kotlin.IntArray): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=null
        $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
        c: CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
          elements: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public open fun foo4 (d: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.B' type=kotlin.Unit origin=null
        $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
        d: CALL 'public final fun arrayOf <T> (vararg elements: T of kotlin.arrayOf): kotlin.Array<T of kotlin.arrayOf> declared in kotlin' type=kotlin.Array<kotlin.String> origin=null
          <T>: kotlin.String
          elements: VARARG type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String
            CONST String type=kotlin.String value=""
      VAR name:k1 type:kotlin.collections.List<kotlin.Int> [val]
        CALL 'public open fun bar (): java.util.ArrayList<kotlin.Int> declared in <root>.B' type=java.util.ArrayList<kotlin.Int> origin=null
          $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
      VAR name:k2 type:kotlin.collections.Set<kotlin.Any?> [val]
        CALL 'public open fun bar2 (): java.util.HashSet<kotlin.Any?> declared in <root>.B' type=java.util.HashSet<kotlin.Any?> origin=null
          $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
      VAR name:k3 type:kotlin.IntArray [val]
        CALL 'public open fun bar3 (): kotlin.IntArray declared in <root>.B' type=kotlin.IntArray origin=null
          $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
      VAR name:k4 type:kotlin.Array<out kotlin.String> [val]
        CALL 'public open fun bar4 (): kotlin.Array<out kotlin.String> declared in <root>.B' type=kotlin.Array<out kotlin.String> origin=null
          $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
      CALL 'public open fun <set-a> (value: java.util.ArrayList<kotlin.Int>): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=EQ
        $this: GET_VAR 'c: <root>.C declared in <root>.test' type=<root>.C origin=null
        value: CALL 'public final fun arrayListOf <T> (vararg elements: T of kotlin.collections.arrayListOf): java.util.ArrayList<T of kotlin.collections.arrayListOf> declared in kotlin.collections' type=java.util.ArrayList<kotlin.Int> origin=null
          <T>: kotlin.Int
          elements: VARARG type=kotlin.Array<out kotlin.Int> varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public open fun <set-b> (value: java.util.HashSet<kotlin.Any?>): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=EQ
        $this: GET_VAR 'c: <root>.C declared in <root>.test' type=<root>.C origin=null
        value: CALL 'public final fun hashSetOf <T> (vararg elements: T of kotlin.collections.hashSetOf): java.util.HashSet<T of kotlin.collections.hashSetOf> declared in kotlin.collections' type=java.util.HashSet<kotlin.Any?> origin=null
          <T>: kotlin.Any?
          elements: VARARG type=kotlin.Array<out kotlin.Any?> varargElementType=kotlin.Any?
            CONST Int type=kotlin.Int value=1
            CONST String type=kotlin.String value=""
            CONST Null type=kotlin.Nothing? value=null
      CALL 'public open fun <set-c> (value: kotlin.IntArray): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=EQ
        $this: GET_VAR 'c: <root>.C declared in <root>.test' type=<root>.C origin=null
        value: CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
          elements: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public open fun <set-d> (value: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=EQ
        $this: GET_VAR 'c: <root>.C declared in <root>.test' type=<root>.C origin=null
        value: CALL 'public final fun arrayOf <T> (vararg elements: T of kotlin.arrayOf): kotlin.Array<T of kotlin.arrayOf> declared in kotlin' type=kotlin.Array<kotlin.String> origin=null
          <T>: kotlin.String
          elements: VARARG type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String
            CONST String type=kotlin.String value=""
      CALL 'public open fun foo (a: java.util.ArrayList<kotlin.Int>): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=null
        $this: GET_VAR 'c: <root>.C declared in <root>.test' type=<root>.C origin=null
        a: CALL 'public final fun arrayListOf <T> (vararg elements: T of kotlin.collections.arrayListOf): java.util.ArrayList<T of kotlin.collections.arrayListOf> declared in kotlin.collections' type=java.util.ArrayList<kotlin.Int> origin=null
          <T>: kotlin.Int
          elements: VARARG type=kotlin.Array<out kotlin.Int> varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public open fun foo2 (b: java.util.HashSet<kotlin.Any?>): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=null
        $this: GET_VAR 'c: <root>.C declared in <root>.test' type=<root>.C origin=null
        b: CALL 'public final fun hashSetOf <T> (vararg elements: T of kotlin.collections.hashSetOf): java.util.HashSet<T of kotlin.collections.hashSetOf> declared in kotlin.collections' type=java.util.HashSet<kotlin.Any?> origin=null
          <T>: kotlin.Any?
          elements: VARARG type=kotlin.Array<out kotlin.Any?> varargElementType=kotlin.Any?
            CONST Int type=kotlin.Int value=1
            CONST String type=kotlin.String value=""
            CONST Null type=kotlin.Nothing? value=null
      CALL 'public open fun foo3 (c: kotlin.IntArray): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=null
        $this: GET_VAR 'c: <root>.C declared in <root>.test' type=<root>.C origin=null
        c: CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
          elements: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public open fun foo4 (d: kotlin.Array<out kotlin.String>): kotlin.Unit declared in <root>.C' type=kotlin.Unit origin=null
        $this: GET_VAR 'c: <root>.C declared in <root>.test' type=<root>.C origin=null
        d: CALL 'public final fun arrayOf <T> (vararg elements: T of kotlin.arrayOf): kotlin.Array<T of kotlin.arrayOf> declared in kotlin' type=kotlin.Array<kotlin.String> origin=null
          <T>: kotlin.String
          elements: VARARG type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String
            CONST String type=kotlin.String value=""
      VAR name:k5 type:kotlin.collections.List<kotlin.Int> [val]
        CALL 'public open fun bar (): java.util.ArrayList<kotlin.Int> declared in <root>.B' type=java.util.ArrayList<kotlin.Int> origin=null
          $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
      VAR name:k6 type:kotlin.collections.Set<kotlin.Any?> [val]
        CALL 'public open fun bar2 (): java.util.HashSet<kotlin.Any?> declared in <root>.B' type=java.util.HashSet<kotlin.Any?> origin=null
          $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
      VAR name:k7 type:kotlin.IntArray [val]
        CALL 'public open fun bar3 (): kotlin.IntArray declared in <root>.B' type=kotlin.IntArray origin=null
          $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
      VAR name:k8 type:kotlin.Array<out kotlin.String> [val]
        CALL 'public open fun bar4 (): kotlin.Array<out kotlin.String> declared in <root>.B' type=kotlin.Array<out kotlin.String> origin=null
          $this: GET_VAR 'b: <root>.B declared in <root>.test' type=<root>.B origin=null
      CALL 'public abstract fun foo (a: @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>?): kotlin.Unit declared in <root>.D' type=kotlin.Unit origin=null
        $this: GET_VAR 'd: <root>.D declared in <root>.test' type=<root>.D origin=null
        a: CALL 'public final fun arrayListOf <T> (vararg elements: T of kotlin.collections.arrayListOf): java.util.ArrayList<T of kotlin.collections.arrayListOf> declared in kotlin.collections' type=java.util.ArrayList<kotlin.Int> origin=null
          <T>: kotlin.Int
          elements: VARARG type=kotlin.Array<out kotlin.Int> varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public abstract fun foo2 (c: @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>?): kotlin.Unit declared in <root>.D' type=kotlin.Unit origin=null
        $this: GET_VAR 'd: <root>.D declared in <root>.test' type=<root>.D origin=null
        c: CALL 'public final fun setOf <T> (element: T of kotlin.collections.setOf): kotlin.collections.Set<T of kotlin.collections.setOf> declared in kotlin.collections' type=kotlin.collections.Set<kotlin.Int> origin=null
          <T>: kotlin.Int
          element: CONST Int type=kotlin.Int value=1
      CALL 'public abstract fun foo3 (d: @[FlexibleNullability] kotlin.IntArray?): kotlin.Unit declared in <root>.D' type=kotlin.Unit origin=null
        $this: GET_VAR 'd: <root>.D declared in <root>.test' type=<root>.D origin=null
        d: CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
          elements: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public abstract fun foo4 (e: @[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>?): kotlin.Unit declared in <root>.D' type=kotlin.Unit origin=null
        $this: GET_VAR 'd: <root>.D declared in <root>.test' type=<root>.D origin=null
        e: CALL 'public final fun arrayOf <T> (vararg elements: T of kotlin.arrayOf): kotlin.Array<T of kotlin.arrayOf> declared in kotlin' type=kotlin.Array<kotlin.String> origin=null
          <T>: kotlin.String
          elements: VARARG type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String
            CONST String type=kotlin.String value=""
      VAR name:k9 type:kotlin.collections.List<kotlin.Int> [val]
        TYPE_OP type=kotlin.collections.List<@[FlexibleNullability] kotlin.Int?> origin=IMPLICIT_NOTNULL typeOperand=kotlin.collections.List<@[FlexibleNullability] kotlin.Int?>
          CALL 'public abstract fun bar (): @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>? declared in <root>.D' type=@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableList<@[FlexibleNullability] kotlin.Int?>? origin=null
            $this: GET_VAR 'd: <root>.D declared in <root>.test' type=<root>.D origin=null
      VAR name:k10 type:kotlin.collections.Set<kotlin.Any?> [val]
        TYPE_OP type=kotlin.collections.Set<@[FlexibleNullability] kotlin.Any?> origin=IMPLICIT_NOTNULL typeOperand=kotlin.collections.Set<@[FlexibleNullability] kotlin.Any?>
          CALL 'public abstract fun bar2 (): @[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>? declared in <root>.D' type=@[FlexibleNullability] @[FlexibleMutability] kotlin.collections.MutableSet<@[FlexibleNullability] kotlin.Any?>? origin=null
            $this: GET_VAR 'd: <root>.D declared in <root>.test' type=<root>.D origin=null
      VAR name:k11 type:kotlin.IntArray [val]
        TYPE_OP type=kotlin.IntArray origin=IMPLICIT_NOTNULL typeOperand=kotlin.IntArray
          CALL 'public abstract fun bar3 (): @[FlexibleNullability] kotlin.IntArray? declared in <root>.D' type=@[FlexibleNullability] kotlin.IntArray? origin=null
            $this: GET_VAR 'd: <root>.D declared in <root>.test' type=<root>.D origin=null
      VAR name:k12 type:kotlin.Array<out kotlin.String> [val]
        TYPE_OP type=kotlin.Array<out @[FlexibleNullability] kotlin.String?> origin=IMPLICIT_NOTNULL typeOperand=kotlin.Array<out @[FlexibleNullability] kotlin.String?>
          CALL 'public abstract fun bar4 (): @[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>? declared in <root>.D' type=@[FlexibleNullability] kotlin.Array<out @[FlexibleNullability] kotlin.String?>? origin=null
            $this: GET_VAR 'd: <root>.D declared in <root>.test' type=<root>.D origin=null
      CALL 'public open fun foo (a: kotlin.collections.MutableList<kotlin.Int>?): kotlin.Unit declared in <root>.E' type=kotlin.Unit origin=null
        $this: GET_VAR 'e: <root>.E declared in <root>.test' type=<root>.E origin=null
        a: CALL 'public final fun arrayListOf <T> (vararg elements: T of kotlin.collections.arrayListOf): java.util.ArrayList<T of kotlin.collections.arrayListOf> declared in kotlin.collections' type=java.util.ArrayList<kotlin.Int> origin=null
          <T>: kotlin.Int
          elements: VARARG type=kotlin.Array<out kotlin.Int> varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public open fun foo2 (c: kotlin.collections.MutableSet<kotlin.Any>?): kotlin.Unit declared in <root>.E' type=kotlin.Unit origin=null
        $this: GET_VAR 'e: <root>.E declared in <root>.test' type=<root>.E origin=null
        c: CALL 'public final fun mutableSetOf <T> (vararg elements: T of kotlin.collections.mutableSetOf): kotlin.collections.MutableSet<T of kotlin.collections.mutableSetOf> declared in kotlin.collections' type=kotlin.collections.MutableSet<kotlin.Any> origin=null
          <T>: kotlin.Any
          elements: VARARG type=kotlin.Array<out kotlin.Any> varargElementType=kotlin.Any
            CONST Int type=kotlin.Int value=1
            CONST String type=kotlin.String value=""
      CALL 'public open fun foo3 (d: kotlin.IntArray?): kotlin.Unit declared in <root>.E' type=kotlin.Unit origin=null
        $this: GET_VAR 'e: <root>.E declared in <root>.test' type=<root>.E origin=null
        d: CALL 'public final fun intArrayOf (vararg elements: kotlin.Int): kotlin.IntArray declared in kotlin' type=kotlin.IntArray origin=null
          elements: VARARG type=kotlin.IntArray varargElementType=kotlin.Int
            CONST Int type=kotlin.Int value=1
      CALL 'public open fun foo4 (e: kotlin.Array<out kotlin.String>?): kotlin.Unit declared in <root>.E' type=kotlin.Unit origin=null
        $this: GET_VAR 'e: <root>.E declared in <root>.test' type=<root>.E origin=null
        e: CALL 'public final fun arrayOf <T> (vararg elements: T of kotlin.arrayOf): kotlin.Array<T of kotlin.arrayOf> declared in kotlin' type=kotlin.Array<kotlin.String> origin=null
          <T>: kotlin.String
          elements: VARARG type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String
            CONST String type=kotlin.String value=""
      VAR name:k13 type:kotlin.collections.List<kotlin.Int> [val]
        CALL 'public open fun bar (): kotlin.collections.MutableList<kotlin.Int> declared in <root>.E' type=kotlin.collections.MutableList<kotlin.Int> origin=null
          $this: GET_VAR 'e: <root>.E declared in <root>.test' type=<root>.E origin=null
      VAR name:k14 type:kotlin.collections.Set<kotlin.Any?> [val]
        CALL 'public open fun bar2 (): kotlin.collections.MutableSet<kotlin.Any> declared in <root>.E' type=kotlin.collections.MutableSet<kotlin.Any> origin=null
          $this: GET_VAR 'e: <root>.E declared in <root>.test' type=<root>.E origin=null
      VAR name:k15 type:kotlin.IntArray [val]
        CALL 'public open fun bar3 (): kotlin.IntArray declared in <root>.E' type=kotlin.IntArray origin=null
          $this: GET_VAR 'e: <root>.E declared in <root>.test' type=<root>.E origin=null
      VAR name:k16 type:kotlin.Array<out kotlin.String> [val]
        CALL 'public open fun bar4 (): kotlin.Array<kotlin.String> declared in <root>.E' type=kotlin.Array<kotlin.String> origin=null
          $this: GET_VAR 'e: <root>.E declared in <root>.test' type=<root>.E origin=null
