@0:0..13:0 FILE fqName:<root> fileName:/supercall.kt
  @0:0..7:1 CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]
    @0:0..7:1 CONSTRUCTOR visibility:public <> () returnType:<root>.A [primary]
      @0:0..7:1 BLOCK_BODY
        @0:0..7:1 DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
        @0:0..7:1 INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:A modality:FINAL visibility:public superTypes:[kotlin.Any]' type=kotlin.Unit
    @1:4..6:5 FUN name:f visibility:public modality:FINAL <> (<this>:<root>.A, flag:kotlin.Boolean) returnType:kotlin.Unit
      @1:4..6:5 VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.A
      @1:10..23 VALUE_PARAMETER kind:Regular name:flag index:1 type:kotlin.Boolean
      @1:25..6:5 BLOCK_BODY
        @2:8..4:9 WHEN type=kotlin.Unit origin=IF
          @2:12..4:9 BRANCH
            @2:12..16 GET_VAR 'flag: kotlin.Boolean declared in <root>.A.f' type=kotlin.Boolean origin=null
            @2:18..4:9 BLOCK type=kotlin.Unit origin=null
              @3:12..22 TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
                @3:12..22 CALL 'public open fun toString (): kotlin.String [fake_override] declared in <root>.A' type=kotlin.String origin=null
                  @3:12..22 GET_VAR '<this>: <root>.A declared in <root>.A.f' type=<root>.A origin=IMPLICIT_ARGUMENT
        @5:14..24 TYPE_OP type=kotlin.Unit origin=IMPLICIT_COERCION_TO_UNIT typeOperand=kotlin.Unit
          @5:14..24 CALL 'public open fun toString (): kotlin.String declared in kotlin.Any' superQualifier='CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Any modality:OPEN visibility:public superTypes:[]' type=kotlin.String origin=null
            @5:8..13 GET_VAR '<this>: <root>.A declared in <root>.A.f' type=<root>.A origin=IMPLICIT_ARGUMENT
    @-1:-1..-1 FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> (<this>:kotlin.Any, other:kotlin.Any?) returnType:kotlin.Boolean [fake_override,operator]
      @-1:-1..-1 VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
      @-1:-1..-1 VALUE_PARAMETER kind:Regular name:other index:1 type:kotlin.Any?
    @-1:-1..-1 FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> (<this>:kotlin.Any) returnType:kotlin.Int [fake_override]
      @-1:-1..-1 VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
    @-1:-1..-1 FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> (<this>:kotlin.Any) returnType:kotlin.String [fake_override]
      @-1:-1..-1 VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:kotlin.Any
    @0:0..7:1 VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.A
  @9:0..12:1 FUN name:main visibility:public modality:FINAL <> () returnType:kotlin.Unit
    @9:11..12:1 BLOCK_BODY
      @10:4..15 VAR name:a type:<root>.A [val]
        @10:12..15 CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in <root>.A' type=<root>.A origin=null
      @11:6..14 CALL 'public final fun f (flag: kotlin.Boolean): kotlin.Unit declared in <root>.A' type=kotlin.Unit origin=null
        @11:4..5 GET_VAR 'val a: <root>.A [val] declared in <root>.main' type=<root>.A origin=null
        @11:8..13 CONST Boolean type=kotlin.Boolean value=false
