FILE fqName:<root> fileName:/dynamicWithImplicitCast.kt
  FUN name:test1 visibility:public modality:FINAL <> (d:dynamic) returnType:kotlin.Int flags:[]
    VALUE_PARAMETER name:d index:0 type:dynamic flags:[]
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='FUN name:test1 visibility:public modality:FINAL <> (d:dynamic) returnType:kotlin.Int flags:[]'
        WHEN type=kotlin.Int origin=IF
          BRANCH
            if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=kotlin.String
              typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:String modality:FINAL visibility:public flags:[] superTypes:[kotlin.Comparable<kotlin.String>; kotlin.CharSequence]
              GET_VAR 'VALUE_PARAMETER name:d index:0 type:dynamic flags:[]' type=dynamic origin=null
            then: CALL 'FUN IR_EXTERNAL_DECLARATION_STUB name:<get-length> visibility:public modality:OPEN <> ($this:kotlin.String) returnType:kotlin.Int flags:[]' type=kotlin.Int origin=GET_PROPERTY
              $this: TYPE_OP type=kotlin.String origin=IMPLICIT_CAST typeOperand=kotlin.String
                typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:String modality:FINAL visibility:public flags:[] superTypes:[kotlin.Comparable<kotlin.String>; kotlin.CharSequence]
                GET_VAR 'VALUE_PARAMETER name:d index:0 type:dynamic flags:[]' type=dynamic origin=null
          BRANCH
            if: CONST Boolean type=kotlin.Boolean value=true
            then: CONST Int type=kotlin.Int value=-1
  FUN name:test2 visibility:public modality:FINAL <> (d:dynamic) returnType:kotlin.Int flags:[]
    VALUE_PARAMETER name:d index:0 type:dynamic flags:[]
    BLOCK_BODY
      RETURN type=kotlin.Nothing from='FUN name:test2 visibility:public modality:FINAL <> (d:dynamic) returnType:kotlin.Int flags:[]'
        WHEN type=kotlin.Int origin=IF
          BRANCH
            if: TYPE_OP type=kotlin.Boolean origin=INSTANCEOF typeOperand=kotlin.Array<*>
              typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Array modality:FINAL visibility:public flags:[] superTypes:[kotlin.Any]
              GET_VAR 'VALUE_PARAMETER name:d index:0 type:dynamic flags:[]' type=dynamic origin=null
            then: CALL 'FUN IR_EXTERNAL_DECLARATION_STUB name:<get-size> visibility:public modality:FINAL <> ($this:kotlin.Array<kotlin.Array.T>) returnType:kotlin.Int flags:[]' type=kotlin.Int origin=GET_PROPERTY
              $this: TYPE_OP type=kotlin.Array<out kotlin.Any?> origin=IMPLICIT_CAST typeOperand=kotlin.Array<out kotlin.Any?>
                typeOperand: CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Array modality:FINAL visibility:public flags:[] superTypes:[kotlin.Any]
                GET_VAR 'VALUE_PARAMETER name:d index:0 type:dynamic flags:[]' type=dynamic origin=null
          BRANCH
            if: CONST Boolean type=kotlin.Boolean value=true
            then: CONST Int type=kotlin.Int value=-1
