FILE /delegatedProperties.kt
  PROPERTY public val test1: kotlin.Int
    FIELD DELEGATE val `test1$delegate`: kotlin.Lazy<kotlin.Int>
      EXPRESSION_BODY
        CALL 'lazy(() -> Int): Lazy<Int>' type=kotlin.Lazy<kotlin.Int> origin=null
          <T>: Int
          initializer: BLOCK type=() -> kotlin.Int origin=LAMBDA
            FUN LOCAL_FUNCTION_FOR_LAMBDA local final fun <anonymous>(): kotlin.Int
              BLOCK_BODY
                RETURN type=kotlin.Nothing from='<anonymous>(): Int'
                  CONST Int type=kotlin.Int value='42'
            CALLABLE_REFERENCE '<anonymous>(): Int' type=() -> kotlin.Int origin=LAMBDA
    FUN DELEGATED_PROPERTY_ACCESSOR public fun <get-test1>(): kotlin.Int
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='<get-test1>(): Int'
          CALL 'getValue(Any?, KProperty<*>) on Lazy<Int>: Int' type=kotlin.Int origin=null
            <T>: Int
            $receiver: GET_FIELD '`test1$delegate`: Lazy<Int>' type=kotlin.Lazy<kotlin.Int> origin=null
            thisRef: CONST Null type=kotlin.Nothing? value='null'
            property: CALLABLE_REFERENCE 'test1: Int' type=kotlin.reflect.KProperty0<kotlin.Int> origin=PROPERTY_REFERENCE_FOR_DELEGATE
  CLASS CLASS C
    CONSTRUCTOR public constructor C(map: kotlin.collections.MutableMap<kotlin.String, kotlin.Any>)
      BLOCK_BODY
        DELEGATING_CONSTRUCTOR_CALL 'constructor Any()'
        INSTANCE_INITIALIZER_CALL classDescriptor='C'
    PROPERTY public final val map: kotlin.collections.MutableMap<kotlin.String, kotlin.Any>
      FIELD PROPERTY_BACKING_FIELD public final val map: kotlin.collections.MutableMap<kotlin.String, kotlin.Any>
        EXPRESSION_BODY
          GET_VAR 'value-parameter map: MutableMap<String, Any>' type=kotlin.collections.MutableMap<kotlin.String, kotlin.Any> origin=INITIALIZE_PROPERTY_FROM_PARAMETER
      FUN DEFAULT_PROPERTY_ACCESSOR public final fun <get-map>(): kotlin.collections.MutableMap<kotlin.String, kotlin.Any>
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='<get-map>(): MutableMap<String, Any>'
            GET_FIELD 'map: MutableMap<String, Any>' type=kotlin.collections.MutableMap<kotlin.String, kotlin.Any> origin=null
              receiver: GET_VAR '<receiver: C>' type=C origin=null
    PROPERTY public final val test2: kotlin.Int
      FIELD DELEGATE val `test2$delegate`: kotlin.Lazy<kotlin.Int>
        EXPRESSION_BODY
          CALL 'lazy(() -> Int): Lazy<Int>' type=kotlin.Lazy<kotlin.Int> origin=null
            <T>: Int
            initializer: BLOCK type=() -> kotlin.Int origin=LAMBDA
              FUN LOCAL_FUNCTION_FOR_LAMBDA local final fun <anonymous>(): kotlin.Int
                BLOCK_BODY
                  RETURN type=kotlin.Nothing from='<anonymous>(): Int'
                    CONST Int type=kotlin.Int value='42'
              CALLABLE_REFERENCE '<anonymous>(): Int' type=() -> kotlin.Int origin=LAMBDA
      FUN DELEGATED_PROPERTY_ACCESSOR public final fun <get-test2>(): kotlin.Int
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='<get-test2>(): Int'
            CALL 'getValue(Any?, KProperty<*>) on Lazy<Int>: Int' type=kotlin.Int origin=null
              <T>: Int
              $receiver: GET_FIELD '`test2$delegate`: Lazy<Int>' type=kotlin.Lazy<kotlin.Int> origin=null
                receiver: GET_VAR '<receiver: C>' type=C origin=null
              thisRef: GET_VAR '<receiver: C>' type=C origin=null
              property: CALLABLE_REFERENCE 'test2: Int' type=kotlin.reflect.KProperty1<C, kotlin.Int> origin=PROPERTY_REFERENCE_FOR_DELEGATE
    PROPERTY public final var test3: kotlin.Any
      FIELD DELEGATE val `test3$delegate`: kotlin.collections.MutableMap<kotlin.String, kotlin.Any>
        EXPRESSION_BODY
          CALL '<get-map>(): MutableMap<String, Any>' type=kotlin.collections.MutableMap<kotlin.String, kotlin.Any> origin=GET_PROPERTY
            $this: GET_VAR '<receiver: C>' type=C origin=null
      FUN DELEGATED_PROPERTY_ACCESSOR public final fun <get-test3>(): kotlin.Any
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='<get-test3>(): Any'
            CALL 'getValue(Any?, KProperty<*>) on MutableMap<in String, in Any>: Any' type=kotlin.Any origin=null
              <V>: Any
              $receiver: GET_FIELD '`test3$delegate`: MutableMap<String, Any>' type=kotlin.collections.MutableMap<kotlin.String, kotlin.Any> origin=null
                receiver: GET_VAR '<receiver: C>' type=C origin=null
              thisRef: GET_VAR '<receiver: C>' type=C origin=null
              property: CALLABLE_REFERENCE 'test3: Any' type=kotlin.reflect.KMutableProperty1<C, kotlin.Any> origin=PROPERTY_REFERENCE_FOR_DELEGATE
      FUN DELEGATED_PROPERTY_ACCESSOR public final fun <set-test3>(<set-?>: kotlin.Any): kotlin.Unit
        BLOCK_BODY
          RETURN type=kotlin.Nothing from='<set-test3>(Any): Unit'
            CALL 'setValue(Any?, KProperty<*>, Any) on MutableMap<in String, in Any>: Unit' type=kotlin.Unit origin=null
              <V>: Any
              $receiver: GET_FIELD '`test3$delegate`: MutableMap<String, Any>' type=kotlin.collections.MutableMap<kotlin.String, kotlin.Any> origin=null
                receiver: GET_VAR '<receiver: C>' type=C origin=null
              thisRef: GET_VAR '<receiver: C>' type=C origin=null
              property: CALLABLE_REFERENCE 'test3: Any' type=kotlin.reflect.KMutableProperty1<C, kotlin.Any> origin=PROPERTY_REFERENCE_FOR_DELEGATE
              value: GET_VAR 'value-parameter <set-?>: Any' type=kotlin.Any origin=null
  PROPERTY public var test4: kotlin.Any
    FIELD DELEGATE val `test4$delegate`: java.util.HashMap<kotlin.String, kotlin.Any>
      EXPRESSION_BODY
        CALL 'hashMapOf(vararg Pair<String, Any>): HashMap<String, Any>' type=java.util.HashMap<kotlin.String, kotlin.Any> origin=null
          <K>: String
          <V>: Any
    FUN DELEGATED_PROPERTY_ACCESSOR public fun <get-test4>(): kotlin.Any
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='<get-test4>(): Any'
          CALL 'getValue(Any?, KProperty<*>) on MutableMap<in String, in Any>: Any' type=kotlin.Any origin=null
            <V>: Any
            $receiver: GET_FIELD '`test4$delegate`: HashMap<String, Any>' type=java.util.HashMap<kotlin.String, kotlin.Any> origin=null
            thisRef: CONST Null type=kotlin.Nothing? value='null'
            property: CALLABLE_REFERENCE 'test4: Any' type=kotlin.reflect.KMutableProperty0<kotlin.Any> origin=PROPERTY_REFERENCE_FOR_DELEGATE
    FUN DELEGATED_PROPERTY_ACCESSOR public fun <set-test4>(<set-?>: kotlin.Any): kotlin.Unit
      BLOCK_BODY
        RETURN type=kotlin.Nothing from='<set-test4>(Any): Unit'
          CALL 'setValue(Any?, KProperty<*>, Any) on MutableMap<in String, in Any>: Unit' type=kotlin.Unit origin=null
            <V>: Any
            $receiver: GET_FIELD '`test4$delegate`: HashMap<String, Any>' type=java.util.HashMap<kotlin.String, kotlin.Any> origin=null
            thisRef: CONST Null type=kotlin.Nothing? value='null'
            property: CALLABLE_REFERENCE 'test4: Any' type=kotlin.reflect.KMutableProperty0<kotlin.Any> origin=PROPERTY_REFERENCE_FOR_DELEGATE
            value: GET_VAR 'value-parameter <set-?>: Any' type=kotlin.Any origin=null
