FILE fqName:<root> fileName:/samConversions.kt
  FUN name:test0 visibility:public modality:FINAL returnType:kotlin.Unit
    VALUE_PARAMETER kind:ExtensionReceiver name:<this> index:0 type:<root>.J
    VALUE_PARAMETER kind:Regular name:a index:1 type:java.lang.Runnable
    BLOCK_BODY
      CALL 'public open fun runStatic (r: @[FlexibleNullability] java.lang.Runnable?): kotlin.Unit declared in <root>.J' type=kotlin.Unit origin=null
        ARG r: GET_VAR 'a: java.lang.Runnable declared in <root>.test0' type=java.lang.Runnable origin=null
      CALL 'public open fun runIt (r: @[FlexibleNullability] java.lang.Runnable?): kotlin.Unit declared in <root>.J' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR '<this>: <root>.J declared in <root>.test0' type=<root>.J origin=IMPLICIT_ARGUMENT
        ARG r: GET_VAR 'a: java.lang.Runnable declared in <root>.test0' type=java.lang.Runnable origin=null
  FUN name:test1 visibility:public modality:FINAL returnType:kotlin.Unit
    BLOCK_BODY
      CALL 'public open fun runStatic (r: @[FlexibleNullability] java.lang.Runnable?): kotlin.Unit declared in <root>.J' type=kotlin.Unit origin=null
        ARG r: TYPE_OP type=@[FlexibleNullability] java.lang.Runnable? origin=SAM_CONVERSION typeOperand=@[FlexibleNullability] java.lang.Runnable?
          FUN_EXPR type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
            FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL returnType:kotlin.Unit
              BLOCK_BODY
                CALL 'public final fun test1 (): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
  FUN name:test2 visibility:public modality:FINAL returnType:kotlin.Unit
    VALUE_PARAMETER kind:ExtensionReceiver name:<this> index:0 type:<root>.J
    BLOCK_BODY
      CALL 'public open fun runIt (r: @[FlexibleNullability] java.lang.Runnable?): kotlin.Unit declared in <root>.J' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR '<this>: <root>.J declared in <root>.test2' type=<root>.J origin=IMPLICIT_ARGUMENT
        ARG r: TYPE_OP type=@[FlexibleNullability] java.lang.Runnable? origin=SAM_CONVERSION typeOperand=@[FlexibleNullability] java.lang.Runnable?
          FUN_EXPR type=kotlin.Function0<kotlin.Unit> origin=LAMBDA
            FUN LOCAL_FUNCTION_FOR_LAMBDA name:<anonymous> visibility:local modality:FINAL returnType:kotlin.Unit
              BLOCK_BODY
                CALL 'public final fun test1 (): kotlin.Unit declared in <root>' type=kotlin.Unit origin=null
  FUN name:test3 visibility:public modality:FINAL returnType:kotlin.Unit
    VALUE_PARAMETER kind:ExtensionReceiver name:<this> index:0 type:<root>.J
    VALUE_PARAMETER kind:Regular name:a index:1 type:kotlin.Function0<kotlin.Unit>
    BLOCK_BODY
      CALL 'public open fun run2 (r1: @[FlexibleNullability] java.lang.Runnable?, r2: @[FlexibleNullability] java.lang.Runnable?): kotlin.Unit declared in <root>.J' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR '<this>: <root>.J declared in <root>.test3' type=<root>.J origin=IMPLICIT_ARGUMENT
        ARG r1: TYPE_OP type=@[FlexibleNullability] java.lang.Runnable? origin=SAM_CONVERSION typeOperand=@[FlexibleNullability] java.lang.Runnable?
          GET_VAR 'a: kotlin.Function0<kotlin.Unit> declared in <root>.test3' type=kotlin.Function0<kotlin.Unit> origin=null
        ARG r2: TYPE_OP type=@[FlexibleNullability] java.lang.Runnable? origin=SAM_CONVERSION typeOperand=@[FlexibleNullability] java.lang.Runnable?
          GET_VAR 'a: kotlin.Function0<kotlin.Unit> declared in <root>.test3' type=kotlin.Function0<kotlin.Unit> origin=null
  FUN name:test4 visibility:public modality:FINAL returnType:kotlin.Unit
    VALUE_PARAMETER kind:ExtensionReceiver name:<this> index:0 type:<root>.J
    VALUE_PARAMETER kind:Regular name:a index:1 type:kotlin.Function0<kotlin.Unit>
    VALUE_PARAMETER kind:Regular name:b index:2 type:kotlin.Function0<kotlin.Unit>
    VALUE_PARAMETER kind:Regular name:flag index:3 type:kotlin.Boolean
    BLOCK_BODY
      CALL 'public open fun runIt (r: @[FlexibleNullability] java.lang.Runnable?): kotlin.Unit declared in <root>.J' type=kotlin.Unit origin=null
        ARG <this>: GET_VAR '<this>: <root>.J declared in <root>.test4' type=<root>.J origin=IMPLICIT_ARGUMENT
        ARG r: TYPE_OP type=@[FlexibleNullability] java.lang.Runnable? origin=SAM_CONVERSION typeOperand=@[FlexibleNullability] java.lang.Runnable?
          WHEN type=kotlin.Function0<kotlin.Unit> origin=IF
            BRANCH
              if: GET_VAR 'flag: kotlin.Boolean declared in <root>.test4' type=kotlin.Boolean origin=null
              then: GET_VAR 'a: kotlin.Function0<kotlin.Unit> declared in <root>.test4' type=kotlin.Function0<kotlin.Unit> origin=null
            BRANCH
              if: CONST Boolean type=kotlin.Boolean value=true
              then: GET_VAR 'b: kotlin.Function0<kotlin.Unit> declared in <root>.test4' type=kotlin.Function0<kotlin.Unit> origin=null
