RAW_FIR:
FILE: classMembers.kt
    public? final? class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public? final? fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

IMPORTS:
FILE: classMembers.kt
    public? final? class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public? final? fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

SUPER_TYPES:
FILE: classMembers.kt
    public? final? [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public? final? fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

TYPES:
FILE: classMembers.kt
    public? final? [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public? final? [ResolvePhaseWithForAllDeclarationsKey=TYPES] fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

STATUS:
FILE: classMembers.kt
    public final [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=STATUS] fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

CONTRACTS:
FILE: classMembers.kt
    public final [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=CONTRACTS] fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

IMPLICIT_TYPES_BODY_RESOLVE:
FILE: classMembers.kt
    public final [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=IMPLICIT_TYPES_BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

BODY_RESOLVE:
FILE: classMembers.kt
    public final [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
            this@R|/A|.R|/A.receive|(this@R|/A|.R|/A.functionWithLazyBody|())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public final [ResolvePhaseWithForAllDeclarationsKey=STATUS] fun receive(value: R|kotlin/String|): R|kotlin/Unit| {
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=STATUS] fun functionWithLazyBody(): R|kotlin/String| {
            ^functionWithLazyBody String(42)
        }

    }

NoResolve:
FILE: classMembers.kt
    public? final? class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public? final? fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

BodyResolveWithChildren:
FILE: classMembers.kt
    public final [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
            this@R|/A|.R|/A.receive|(this@R|/A|.R|/A.functionWithLazyBody|())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public final [ResolvePhaseWithForAllDeclarationsKey=STATUS] fun receive(value: R|kotlin/String|): R|kotlin/Unit| {
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=STATUS] fun functionWithLazyBody(): R|kotlin/String| {
            ^functionWithLazyBody String(42)
        }

    }

CallableBodyResolve:
FILE: classMembers.kt
    public final [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
            this@R|/A|.R|/A.receive|(this@R|/A|.R|/A.functionWithLazyBody|())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public final [ResolvePhaseWithForAllDeclarationsKey=STATUS] fun receive(value: R|kotlin/String|): R|kotlin/Unit| {
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=STATUS] fun functionWithLazyBody(): R|kotlin/String| {
            ^functionWithLazyBody String(42)
        }

    }

CallableReturnType:
FILE: classMembers.kt
    public? final? class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public? final? fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

AnnotationType:
FILE: classMembers.kt
    public? final? [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public? final? [ResolvePhaseWithForAllDeclarationsKey=TYPES] fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

AnnotationsArguments:
FILE: classMembers.kt
    public final [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=BODY_RESOLVE] fun resolveMe(): R|kotlin/Unit| {
            this@R|/A|.R|/A.receive|(this@R|/A|.R|/A.functionWithLazyBody|())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public final [ResolvePhaseWithForAllDeclarationsKey=STATUS] fun receive(value: R|kotlin/String|): R|kotlin/Unit| {
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=STATUS] fun functionWithLazyBody(): R|kotlin/String| {
            ^functionWithLazyBody String(42)
        }

    }

CallableContracts:
FILE: classMembers.kt
    public final [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=CONTRACTS] fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

DeclarationStatus:
FILE: classMembers.kt
    public final [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final [ResolvePhaseWithForAllDeclarationsKey=STATUS] fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

ValueParametersTypes:
FILE: classMembers.kt
    public? final? [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public? final? [ResolvePhaseWithForAllDeclarationsKey=TYPES] fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

TypeParametersTypes:
FILE: classMembers.kt
    public? final? [ResolvePhaseWithForAllDeclarationsKey=SUPER_TYPES] class A : R|kotlin/Any| {
        public? [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public? final? [ResolvePhaseWithForAllDeclarationsKey=TYPES] fun resolveMe(): R|kotlin/Unit| {
            receive#(functionWithLazyBody#())
        }

        public? final? val x: Int = IntegerLiteral(10)
            [ContainingClassKey=A] public? get(): Int {
                ^ field#
            }

        public? final? fun receive(value: String): R|kotlin/Unit| {
        }

        public? final? fun functionWithLazyBody(): String {
            ^functionWithLazyBody String(42)
        }

    }

FILE RAW TO BODY:
FILE: classMembers.kt
    public final [ResolvePhaseWithForAllDeclarationsKey=BODY_RESOLVE] class A : R|kotlin/Any| {
        public [ContainingClassKey=A] constructor(): R|A| {
            super<R|kotlin/Any|>()
        }

        public final fun resolveMe(): R|kotlin/Unit| {
            this@R|/A|.R|/A.receive|(this@R|/A|.R|/A.functionWithLazyBody|())
        }

        public final [IsReferredViaField=true] val x: R|kotlin/Int| = Int(10)
            [ContainingClassKey=A] public get(): R|kotlin/Int| {
                ^ this@R|/A|.F|/A.x|
            }

        public final fun receive(value: R|kotlin/String|): R|kotlin/Unit| {
        }

        public final fun functionWithLazyBody(): R|kotlin/String| {
            ^functionWithLazyBody String(42)
        }

    }
