Module: lib
Module: main
FILE fqName:<root> fileName:/1.kt
  CLASS CLASS name:MyClass1 modality:FINAL visibility:public superTypes:[kotlin.Any]
    annotations:
      JavaAnn(value = <null>)
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.MyClass1
    CONSTRUCTOR visibility:public returnType:<root>.MyClass1 [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:MyClass1 modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  CLASS CLASS name:MyClass2 modality:FINAL visibility:public superTypes:[kotlin.Any]
    annotations:
      JavaAnn(value = <null>)
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.MyClass2
    CONSTRUCTOR visibility:public returnType:<root>.MyClass2 [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:MyClass2 modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  CLASS CLASS name:MyClass3 modality:FINAL visibility:public superTypes:[kotlin.Any]
    annotations:
      JavaAnn(value = ["asd"] type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String)
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.MyClass3
    CONSTRUCTOR visibility:public returnType:<root>.MyClass3 [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:MyClass3 modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  CLASS CLASS name:MyClass4 modality:FINAL visibility:public superTypes:[kotlin.Any]
    annotations:
      JavaAnn(value = [] type=kotlin.Array<out kotlin.String> varargElementType=kotlin.String)
    thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.MyClass4
    CONSTRUCTOR visibility:public returnType:<root>.MyClass4 [primary]
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () declared in kotlin.Any'
        INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:MyClass4 modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN returnType:kotlin.Boolean [fake_override,operator]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
      overridden:
        public open fun equals (other: kotlin.Any?): kotlin.Boolean declared in kotlin.Any
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN returnType:kotlin.Int [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun hashCode (): kotlin.Int declared in kotlin.Any
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN returnType:kotlin.String [fake_override]
      VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      overridden:
        public open fun toString (): kotlin.String declared in kotlin.Any
  FUN name:box visibility:public modality:FINAL returnType:kotlin.String
    BLOCK_BODY
      VAR name:value1 type:kotlin.Array<kotlin.String> [val]
        CALL 'public abstract fun <get-value> (): kotlin.Array<kotlin.String> declared in <root>.JavaAnn' type=kotlin.Array<kotlin.String> origin=GET_PROPERTY
          ARG <this>: TYPE_OP type=<root>.JavaAnn origin=IMPLICIT_NOTNULL typeOperand=<root>.JavaAnn
            CALL 'public open fun getAnnotation <A> (p0: @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] A of java.lang.Class.getAnnotation?>?): @[FlexibleNullability] A of java.lang.Class.getAnnotation? declared in java.lang.Class' type=@[FlexibleNullability] <root>.JavaAnn? origin=null
              TYPE_ARG A: @[FlexibleNullability] <root>.JavaAnn?
              ARG <this>: CALL 'public final fun <get-java> <T> (<this>: kotlin.reflect.KClass<T of kotlin.jvm.<get-java>>): java.lang.Class<T of kotlin.jvm.<get-java>> declared in kotlin.jvm' type=java.lang.Class<<root>.MyClass1> origin=GET_PROPERTY
                TYPE_ARG T: <root>.MyClass1
                ARG <this>: CLASS_REFERENCE 'CLASS CLASS name:MyClass1 modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<<root>.MyClass1>
              ARG p0: CALL 'public final fun <get-java> <T> (<this>: kotlin.reflect.KClass<T of kotlin.jvm.<get-java>>): java.lang.Class<T of kotlin.jvm.<get-java>> declared in kotlin.jvm' type=java.lang.Class<<root>.JavaAnn> origin=GET_PROPERTY
                TYPE_ARG T: <root>.JavaAnn
                ARG <this>: CLASS_REFERENCE 'CLASS IR_EXTERNAL_JAVA_DECLARATION_STUB ANNOTATION_CLASS name:JavaAnn modality:OPEN visibility:public/*package*/ superTypes:[kotlin.Any; kotlin.Annotation]' type=kotlin.reflect.KClass<<root>.JavaAnn>
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
            ARG <this>: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
              ARG arg0: CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
                ARG <this>: GET_VAR 'val value1: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
              ARG arg1: CONST Int type=kotlin.Int value=2
          then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
            STRING_CONCATENATION type=kotlin.String
              CONST String type=kotlin.String value="fail1: "
              CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
                ARG <this>: GET_VAR 'val value1: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
            ARG <this>: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
              ARG arg0: CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.String origin=GET_ARRAY_ELEMENT
                ARG <this>: GET_VAR 'val value1: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
                ARG index: CONST Int type=kotlin.Int value=0
              ARG arg1: CONST String type=kotlin.String value="d1"
          then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
            STRING_CONCATENATION type=kotlin.String
              CONST String type=kotlin.String value="fail2: "
              CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.String origin=GET_ARRAY_ELEMENT
                ARG <this>: GET_VAR 'val value1: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
                ARG index: CONST Int type=kotlin.Int value=0
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
            ARG <this>: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
              ARG arg0: CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.String origin=GET_ARRAY_ELEMENT
                ARG <this>: GET_VAR 'val value1: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
                ARG index: CONST Int type=kotlin.Int value=1
              ARG arg1: CONST String type=kotlin.String value="d2"
          then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
            STRING_CONCATENATION type=kotlin.String
              CONST String type=kotlin.String value="fail3: "
              CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.String origin=GET_ARRAY_ELEMENT
                ARG <this>: GET_VAR 'val value1: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
                ARG index: CONST Int type=kotlin.Int value=1
      VAR name:value2 type:kotlin.Array<kotlin.String> [val]
        CALL 'public abstract fun <get-value> (): kotlin.Array<kotlin.String> declared in <root>.JavaAnn' type=kotlin.Array<kotlin.String> origin=GET_PROPERTY
          ARG <this>: TYPE_OP type=<root>.JavaAnn origin=IMPLICIT_NOTNULL typeOperand=<root>.JavaAnn
            CALL 'public open fun getAnnotation <A> (p0: @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] A of java.lang.Class.getAnnotation?>?): @[FlexibleNullability] A of java.lang.Class.getAnnotation? declared in java.lang.Class' type=@[FlexibleNullability] <root>.JavaAnn? origin=null
              TYPE_ARG A: @[FlexibleNullability] <root>.JavaAnn?
              ARG <this>: CALL 'public final fun <get-java> <T> (<this>: kotlin.reflect.KClass<T of kotlin.jvm.<get-java>>): java.lang.Class<T of kotlin.jvm.<get-java>> declared in kotlin.jvm' type=java.lang.Class<<root>.MyClass2> origin=GET_PROPERTY
                TYPE_ARG T: <root>.MyClass2
                ARG <this>: CLASS_REFERENCE 'CLASS CLASS name:MyClass2 modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<<root>.MyClass2>
              ARG p0: CALL 'public final fun <get-java> <T> (<this>: kotlin.reflect.KClass<T of kotlin.jvm.<get-java>>): java.lang.Class<T of kotlin.jvm.<get-java>> declared in kotlin.jvm' type=java.lang.Class<<root>.JavaAnn> origin=GET_PROPERTY
                TYPE_ARG T: <root>.JavaAnn
                ARG <this>: CLASS_REFERENCE 'CLASS IR_EXTERNAL_JAVA_DECLARATION_STUB ANNOTATION_CLASS name:JavaAnn modality:OPEN visibility:public/*package*/ superTypes:[kotlin.Any; kotlin.Annotation]' type=kotlin.reflect.KClass<<root>.JavaAnn>
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
            ARG <this>: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
              ARG arg0: CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
                ARG <this>: GET_VAR 'val value2: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
              ARG arg1: CONST Int type=kotlin.Int value=2
          then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
            STRING_CONCATENATION type=kotlin.String
              CONST String type=kotlin.String value="fail4: "
              CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
                ARG <this>: GET_VAR 'val value2: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
            ARG <this>: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
              ARG arg0: CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.String origin=GET_ARRAY_ELEMENT
                ARG <this>: GET_VAR 'val value2: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
                ARG index: CONST Int type=kotlin.Int value=0
              ARG arg1: CONST String type=kotlin.String value="d1"
          then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
            STRING_CONCATENATION type=kotlin.String
              CONST String type=kotlin.String value="fail5: "
              CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.String origin=GET_ARRAY_ELEMENT
                ARG <this>: GET_VAR 'val value2: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
                ARG index: CONST Int type=kotlin.Int value=0
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
            ARG <this>: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
              ARG arg0: CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.String origin=GET_ARRAY_ELEMENT
                ARG <this>: GET_VAR 'val value2: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
                ARG index: CONST Int type=kotlin.Int value=1
              ARG arg1: CONST String type=kotlin.String value="d2"
          then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
            STRING_CONCATENATION type=kotlin.String
              CONST String type=kotlin.String value="fail6: "
              CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.String origin=GET_ARRAY_ELEMENT
                ARG <this>: GET_VAR 'val value2: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
                ARG index: CONST Int type=kotlin.Int value=1
      VAR name:value3 type:kotlin.Array<kotlin.String> [val]
        CALL 'public abstract fun <get-value> (): kotlin.Array<kotlin.String> declared in <root>.JavaAnn' type=kotlin.Array<kotlin.String> origin=GET_PROPERTY
          ARG <this>: TYPE_OP type=<root>.JavaAnn origin=IMPLICIT_NOTNULL typeOperand=<root>.JavaAnn
            CALL 'public open fun getAnnotation <A> (p0: @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] A of java.lang.Class.getAnnotation?>?): @[FlexibleNullability] A of java.lang.Class.getAnnotation? declared in java.lang.Class' type=@[FlexibleNullability] <root>.JavaAnn? origin=null
              TYPE_ARG A: @[FlexibleNullability] <root>.JavaAnn?
              ARG <this>: CALL 'public final fun <get-java> <T> (<this>: kotlin.reflect.KClass<T of kotlin.jvm.<get-java>>): java.lang.Class<T of kotlin.jvm.<get-java>> declared in kotlin.jvm' type=java.lang.Class<<root>.MyClass3> origin=GET_PROPERTY
                TYPE_ARG T: <root>.MyClass3
                ARG <this>: CLASS_REFERENCE 'CLASS CLASS name:MyClass3 modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<<root>.MyClass3>
              ARG p0: CALL 'public final fun <get-java> <T> (<this>: kotlin.reflect.KClass<T of kotlin.jvm.<get-java>>): java.lang.Class<T of kotlin.jvm.<get-java>> declared in kotlin.jvm' type=java.lang.Class<<root>.JavaAnn> origin=GET_PROPERTY
                TYPE_ARG T: <root>.JavaAnn
                ARG <this>: CLASS_REFERENCE 'CLASS IR_EXTERNAL_JAVA_DECLARATION_STUB ANNOTATION_CLASS name:JavaAnn modality:OPEN visibility:public/*package*/ superTypes:[kotlin.Any; kotlin.Annotation]' type=kotlin.reflect.KClass<<root>.JavaAnn>
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
            ARG <this>: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
              ARG arg0: CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
                ARG <this>: GET_VAR 'val value3: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
              ARG arg1: CONST Int type=kotlin.Int value=1
          then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
            STRING_CONCATENATION type=kotlin.String
              CONST String type=kotlin.String value="fail7: "
              CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
                ARG <this>: GET_VAR 'val value3: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
            ARG <this>: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
              ARG arg0: CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.String origin=GET_ARRAY_ELEMENT
                ARG <this>: GET_VAR 'val value3: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
                ARG index: CONST Int type=kotlin.Int value=0
              ARG arg1: CONST String type=kotlin.String value="asd"
          then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
            STRING_CONCATENATION type=kotlin.String
              CONST String type=kotlin.String value="fail8: "
              CALL 'public final fun get (index: kotlin.Int): T of kotlin.Array declared in kotlin.Array' type=kotlin.String origin=GET_ARRAY_ELEMENT
                ARG <this>: GET_VAR 'val value3: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
                ARG index: CONST Int type=kotlin.Int value=0
      VAR name:value4 type:kotlin.Array<kotlin.String> [val]
        CALL 'public abstract fun <get-value> (): kotlin.Array<kotlin.String> declared in <root>.JavaAnn' type=kotlin.Array<kotlin.String> origin=GET_PROPERTY
          ARG <this>: TYPE_OP type=<root>.JavaAnn origin=IMPLICIT_NOTNULL typeOperand=<root>.JavaAnn
            CALL 'public open fun getAnnotation <A> (p0: @[FlexibleNullability] java.lang.Class<@[FlexibleNullability] A of java.lang.Class.getAnnotation?>?): @[FlexibleNullability] A of java.lang.Class.getAnnotation? declared in java.lang.Class' type=@[FlexibleNullability] <root>.JavaAnn? origin=null
              TYPE_ARG A: @[FlexibleNullability] <root>.JavaAnn?
              ARG <this>: CALL 'public final fun <get-java> <T> (<this>: kotlin.reflect.KClass<T of kotlin.jvm.<get-java>>): java.lang.Class<T of kotlin.jvm.<get-java>> declared in kotlin.jvm' type=java.lang.Class<<root>.MyClass4> origin=GET_PROPERTY
                TYPE_ARG T: <root>.MyClass4
                ARG <this>: CLASS_REFERENCE 'CLASS CLASS name:MyClass4 modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.reflect.KClass<<root>.MyClass4>
              ARG p0: CALL 'public final fun <get-java> <T> (<this>: kotlin.reflect.KClass<T of kotlin.jvm.<get-java>>): java.lang.Class<T of kotlin.jvm.<get-java>> declared in kotlin.jvm' type=java.lang.Class<<root>.JavaAnn> origin=GET_PROPERTY
                TYPE_ARG T: <root>.JavaAnn
                ARG <this>: CLASS_REFERENCE 'CLASS IR_EXTERNAL_JAVA_DECLARATION_STUB ANNOTATION_CLASS name:JavaAnn modality:OPEN visibility:public/*package*/ superTypes:[kotlin.Any; kotlin.Annotation]' type=kotlin.reflect.KClass<<root>.JavaAnn>
      WHEN type=kotlin.Unit origin=IF
        BRANCH
          if: CALL 'public final fun not (): kotlin.Boolean declared in kotlin.Boolean' type=kotlin.Boolean origin=EXCLEQ
            ARG <this>: CALL 'public final fun EQEQ (arg0: kotlin.Any?, arg1: kotlin.Any?): kotlin.Boolean declared in kotlin.internal.ir' type=kotlin.Boolean origin=EXCLEQ
              ARG arg0: CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
                ARG <this>: GET_VAR 'val value4: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
              ARG arg1: CONST Int type=kotlin.Int value=0
          then: RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
            STRING_CONCATENATION type=kotlin.String
              CONST String type=kotlin.String value="fail 9: "
              CALL 'public final fun <get-size> (): kotlin.Int declared in kotlin.Array' type=kotlin.Int origin=GET_PROPERTY
                ARG <this>: GET_VAR 'val value4: kotlin.Array<kotlin.String> declared in <root>.box' type=kotlin.Array<kotlin.String> origin=null
      RETURN type=kotlin.Nothing from='public final fun box (): kotlin.String declared in <root>'
        CONST String type=kotlin.String value="OK"
