MODULE_FRAGMENT
  FILE fqName:<root> fileName:main.kt
    FUN name:main visibility:public modality:FINAL returnType:kotlin.Unit
      BLOCK_BODY
        VAR name:my type:com.example.myModule.MyInterfaceWrapper [val]
          CONSTRUCTOR_CALL 'public constructor <init> (myInterface: com.example.iface.MyInterface) [primary] declared in com.example.myModule.MyInterfaceWrapper' type=com.example.myModule.MyInterfaceWrapper origin=null
            ARG myInterface: BLOCK type=<root>.main.<no name provided> origin=OBJECT_LITERAL
              CLASS CLASS name:<no name provided> modality:FINAL visibility:local superTypes:[com.example.iface.MyInterface]
                thisReceiver: VALUE_PARAMETER INSTANCE_RECEIVER kind:DispatchReceiver name:<this> type:<root>.main.<no name provided>
                CONSTRUCTOR visibility:public returnType:<root>.main.<no name provided> [primary]
                  BLOCK_BODY
                    DELEGATING_CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in kotlin.Any'
                    INSTANCE_INITIALIZER_CALL classDescriptor='CLASS CLASS name:<no name provided> modality:FINAL visibility:local superTypes:[com.example.iface.MyInterface]' 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 [fake_override,operator] declared in com.example.iface.MyInterface
                FUN FAKE_OVERRIDE name:foo visibility:public modality:OPEN returnType:kotlin.String [fake_override]
                  VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:com.example.iface.MyInterface
                  overridden:
                    public open fun foo (): kotlin.String declared in com.example.iface.MyInterface
                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 [fake_override] declared in com.example.iface.MyInterface
                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 [fake_override] declared in com.example.iface.MyInterface
                FUN name:bar visibility:public modality:OPEN returnType:kotlin.Unit
                  VALUE_PARAMETER kind:DispatchReceiver name:<this> index:0 type:<root>.main.<no name provided>
                  overridden:
                    public abstract fun bar (): kotlin.Unit declared in com.example.iface.MyInterface
                  BLOCK_BODY
              CONSTRUCTOR_CALL 'public constructor <init> () [primary] declared in <root>.main.<no name provided>' type=<root>.main.<no name provided> origin=OBJECT_LITERAL
        CALL 'public final fun println (message: kotlin.Any?): kotlin.Unit [inline] declared in kotlin.io' type=kotlin.Unit origin=null
          ARG message: CALL 'public open fun foo (): kotlin.String declared in com.example.myModule.MyInterfaceWrapper' type=kotlin.String origin=null
            ARG <this>: GET_VAR 'val my: com.example.myModule.MyInterfaceWrapper [val] declared in <root>.main' type=com.example.myModule.MyInterfaceWrapper origin=null
