FILE fqName:<root> fileName:/member.kt
  CLASS CLASS name:Delegate modality:FINAL visibility:public flags:
    $this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:Delegate flags:
    superClasses:
      CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Any modality:OPEN visibility:public flags:
    CONSTRUCTOR visibility:public <> (value:kotlin.String) returnType:Delegate flags:
      VALUE_PARAMETER name:value index:0 type:kotlin.String flags:
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
        INSTANCE_INITIALIZER_CALL classDescriptor='Delegate'
    PROPERTY name:value type:kotlin.String visibility:public modality:FINAL flags:val
      FIELD PROPERTY_BACKING_FIELD name:value type:kotlin.String visibility:public
        EXPRESSION_BODY
          GET_VAR 'value-parameter value: String' type=kotlin.String origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-value> visibility:public modality:FINAL <> ($this:Delegate) returnType:String flags:
        $this: VALUE_PARAMETER name:<this> type:Delegate flags:
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='<get-value>(): String'
            GET_FIELD 'value: String' type=kotlin.String origin=null
              receiver: GET_VAR 'this@Delegate: Delegate' type=Delegate origin=null
    FUN name:getValue visibility:public modality:FINAL <> ($this:Delegate, thisRef:kotlin.Any?, property:kotlin.Any?) returnType:String flags:
      $this: VALUE_PARAMETER name:<this> type:Delegate flags:
      VALUE_PARAMETER name:thisRef index:0 type:kotlin.Any? flags:
      VALUE_PARAMETER name:property index:1 type:kotlin.Any? flags:
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='getValue(Any?, Any?): String'
          CALL '<get-value>(): String' type=kotlin.String origin=GET_PROPERTY
            $this: GET_VAR 'this@Delegate: Delegate' type=Delegate origin=null
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:Boolean flags:
      overridden:
        FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:Boolean flags:
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
      VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:Int flags:
      overridden:
        FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:Int flags:
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:String flags:
      overridden:
        FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:String flags:
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
  CLASS CLASS name:DelegateProvider modality:FINAL visibility:public flags:
    $this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:DelegateProvider flags:
    superClasses:
      CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Any modality:OPEN visibility:public flags:
    CONSTRUCTOR visibility:public <> (value:kotlin.String) returnType:DelegateProvider flags:
      VALUE_PARAMETER name:value index:0 type:kotlin.String flags:
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
        INSTANCE_INITIALIZER_CALL classDescriptor='DelegateProvider'
    PROPERTY name:value type:kotlin.String visibility:public modality:FINAL flags:val
      FIELD PROPERTY_BACKING_FIELD name:value type:kotlin.String visibility:public
        EXPRESSION_BODY
          GET_VAR 'value-parameter value: String' type=kotlin.String origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR name:<get-value> visibility:public modality:FINAL <> ($this:DelegateProvider) returnType:String flags:
        $this: VALUE_PARAMETER name:<this> type:DelegateProvider flags:
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='<get-value>(): String'
            GET_FIELD 'value: String' type=kotlin.String origin=null
              receiver: GET_VAR 'this@DelegateProvider: DelegateProvider' type=DelegateProvider origin=null
    FUN name:provideDelegate visibility:public modality:FINAL <> ($this:DelegateProvider, thisRef:kotlin.Any?, property:kotlin.Any?) returnType:Delegate flags:
      $this: VALUE_PARAMETER name:<this> type:DelegateProvider flags:
      VALUE_PARAMETER name:thisRef index:0 type:kotlin.Any? flags:
      VALUE_PARAMETER name:property index:1 type:kotlin.Any? flags:
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='provideDelegate(Any?, Any?): Delegate'
          CALL 'constructor Delegate(String)' type=Delegate origin=null
            value: CALL '<get-value>(): String' type=kotlin.String origin=GET_PROPERTY
              $this: GET_VAR 'this@DelegateProvider: DelegateProvider' type=DelegateProvider origin=null
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:Boolean flags:
      overridden:
        FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:Boolean flags:
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
      VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:Int flags:
      overridden:
        FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:Int flags:
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:String flags:
      overridden:
        FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:String flags:
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
  CLASS CLASS name:Host modality:FINAL visibility:public flags:
    $this: VALUE_PARAMETER INSTANCE_RECEIVER name:<this> type:Host flags:
    superClasses:
      CLASS IR_EXTERNAL_DECLARATION_STUB CLASS name:Any modality:OPEN visibility:public flags:
    CONSTRUCTOR visibility:public <> () returnType:Host flags:
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
        INSTANCE_INITIALIZER_CALL classDescriptor='Host'
    PROPERTY name:testMember type:kotlin.String visibility:public modality:FINAL flags:delegatedmval
      FIELD DELEGATE name:testMember$delegate type:Delegate visibility:private
        EXPRESSION_BODY
          CALL 'provideDelegate(Any?, Any?): Delegate' type=Delegate origin=null
            $this: CALL 'constructor DelegateProvider(String)' type=DelegateProvider origin=null
              value: CONST String type=kotlin.String value=OK
            thisRef: GET_VAR 'this@Host: Host' type=Host origin=null
            property: PROPERTY_REFERENCE 'testMember: String' field=null getter='<get-testMember>(): String' setter=null type=kotlin.reflect.KProperty1<Host, kotlin.String> origin=PROPERTY_REFERENCE_FOR_DELEGATE
      FUN DELEGATED_PROPERTY_ACCESSOR name:<get-testMember> visibility:public modality:FINAL <> ($this:Host) returnType:String flags:
        $this: VALUE_PARAMETER name:<this> type:Host flags:
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='<get-testMember>(): String'
            CALL 'getValue(Any?, Any?): String' type=kotlin.String origin=null
              $this: GET_FIELD '`testMember$delegate`: Delegate' type=Delegate origin=null
                receiver: GET_VAR 'this@Host: Host' type=Host origin=null
              thisRef: GET_VAR 'this@Host: Host' type=Host origin=null
              property: PROPERTY_REFERENCE 'testMember: String' field=null getter='<get-testMember>(): String' setter=null type=kotlin.reflect.KProperty1<Host, kotlin.String> origin=PROPERTY_REFERENCE_FOR_DELEGATE
    FUN FAKE_OVERRIDE name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:Boolean flags:
      overridden:
        FUN IR_EXTERNAL_DECLARATION_STUB name:equals visibility:public modality:OPEN <> ($this:kotlin.Any, other:kotlin.Any?) returnType:Boolean flags:
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
      VALUE_PARAMETER name:other index:0 type:kotlin.Any? flags:
    FUN FAKE_OVERRIDE name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:Int flags:
      overridden:
        FUN IR_EXTERNAL_DECLARATION_STUB name:hashCode visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:Int flags:
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:
    FUN FAKE_OVERRIDE name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:String flags:
      overridden:
        FUN IR_EXTERNAL_DECLARATION_STUB name:toString visibility:public modality:OPEN <> ($this:kotlin.Any) returnType:String flags:
      $this: VALUE_PARAMETER name:<this> type:kotlin.Any flags:

