FILE: provideDelegate.kt
    public final class Delegate<T> : R|kotlin/Any| {
        public constructor<T>(value: R|T|): R|Delegate<T>| {
            super<R|kotlin/Any|>()
        }

        public final var value: R|T| = R|<local>/value|
            public get(): R|T|
            public set(value: R|T|): R|kotlin/Unit|

        public final operator fun getValue(thisRef: R|kotlin/Any?|, property: R|kotlin/reflect/KProperty<*>|): R|T| {
            ^getValue this@R|/Delegate|.R|/Delegate.value|
        }

        public final operator fun setValue(thisRef: R|kotlin/Any?|, property: R|kotlin/reflect/KProperty<*>|, newValue: R|T|): R|kotlin/Unit| {
            this@R|/Delegate|.R|/Delegate.value| = R|<local>/newValue|
        }

    }
    public final class DelegateProvider<T> : R|kotlin/Any| {
        public constructor<T>(value: R|T|): R|DelegateProvider<T>| {
            super<R|kotlin/Any|>()
        }

        public final val value: R|T| = R|<local>/value|
            public get(): R|T|

        public final operator fun provideDelegate(thisRef: R|kotlin/Any?|, property: R|kotlin/reflect/KProperty<*>|): R|Delegate<T>| {
            ^provideDelegate R|/Delegate.Delegate|<R|T|>(this@R|/DelegateProvider|.R|/DelegateProvider.value|)
        }

    }
    public final fun <T> delegate(value: R|T|): R|DelegateProvider<T>| {
        ^delegate R|/DelegateProvider.DelegateProvider|<R|T|>(R|<local>/value|)
    }
    public final class A : R|kotlin/Any| {
        public constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final val x: R|kotlin/Int|by R|/delegate|<R|kotlin/Int|>(Int(1)).R|SubstitutionOverride</DelegateProvider.provideDelegate: R|Delegate<Stub (chain inference): TypeVariable(_T)>|>|(this@R|/A|, ::R|/A.x|)
            public get(): R|kotlin/Int| {
                ^ this@R|/A|.D|/A.x|.R|SubstitutionOverride</Delegate.getValue: R|Stub (chain inference): TypeVariable(_T)|>|(this@R|/A|, ::R|/A.x|)
            }

    }
