Tower Data Context:
    Element 0
        Scope: FirDefaultStarImportingScope
    Element 1
        Scope: FirExplicitStarImportingScope
    Element 2
        Scope: FirDefaultSimpleImportingScope
    Element 3
        Scope: FirDefaultSimpleImportingScope
    Element 4
        Scope: FirPackageMemberScope
    Element 5
        Scope: FirExplicitSimpleImportingScope
    Element 6
        Implicit receiver:
            FirRegularClassSymbol public final companion object Companion : R|kotlin/Any|
                Type: Foo.Companion
    Element 7
        Scope: FirNestedClassifierScopeImpl
            Classifiers:
                FirRegularClassSymbol public final companion object Companion : R|kotlin/Any|
                FirRegularClassSymbol public final? class NestedClass : R|kotlin/Any|
        Static scope owner symbol: FirRegularClassSymbol public final class Foo<TypeParameter> : R|kotlin/Any|
    Element 8
        Scope: FirMemberTypeParameterScope
            Classifiers:
                FirTypeParameterSymbol TypeParameter
    Element 9
        Scope: FirLocalScope
            Properties:
                FirValueParameterSymbol a: R|kotlin/String| = String(foo)
                FirValueParameterSymbol b: R|@R|MyAnnotation|(name = this@R|/Foo.Companion|.R|/Foo.Companion.CONSTANT_NAME| [evaluated = String(NAME)])  kotlin/Int| = R|<local>/a|.R|kotlin/String.length|
                FirValueParameterSymbol c: R|kotlin/Long| = R|<local>/a|.R|kotlin/String.length|.R|kotlin/Int.minus|(Int(1)).R|kotlin/Int.toLong|()

FILE: [ResolvedTo(IMPORTS)] primaryConstructorProperty_annotationOnType.kt
    @R|kotlin/annotation/Target|[Types](Q|kotlin/annotation/AnnotationTarget|.R|kotlin/annotation/AnnotationTarget.TYPE|) public final [ResolvedTo(STATUS)] annotation class MyAnnotation : R|kotlin/Annotation| {
        public [ResolvedTo(STATUS)] constructor([ResolvedTo(STATUS)] name: R|kotlin/String|): R|MyAnnotation| {
            LAZY_super<R|kotlin/Any|>
        }

        public final [ResolvedTo(STATUS)] val name: R|kotlin/String| = R|<local>/name|
            public [ResolvedTo(STATUS)] get(): R|kotlin/String|

    }
    public final [ResolvedTo(ANNOTATION_ARGUMENTS)] class Foo<[ResolvedTo(ANNOTATION_ARGUMENTS)] TypeParameter> : R|kotlin/Any| {
        public [ResolvedTo(BODY_RESOLVE)] constructor<[ResolvedTo(ANNOTATION_ARGUMENTS)] TypeParameter>([ResolvedTo(BODY_RESOLVE)] a: R|kotlin/String| = String(foo), [ResolvedTo(BODY_RESOLVE)] b: R|@R|MyAnnotation|(name = this@R|/Foo.Companion|.R|/Foo.Companion.CONSTANT_NAME| [evaluated = String(NAME)])  kotlin/Int| = R|<local>/a|.R|kotlin/String.length|, [ResolvedTo(BODY_RESOLVE)] c: R|kotlin/Long| = R|<local>/a|.R|kotlin/String.length|.R|kotlin/Int.minus|(Int(1)).R|kotlin/Int.toLong|()): R|Foo<TypeParameter>| {
            super<R|kotlin/Any|>()
        }

        public final [ResolvedTo(STATUS)] val a: R|kotlin/String| = R|<local>/a|
            public [ResolvedTo(STATUS)] get(): R|kotlin/String|

        public final [ResolvedTo(STATUS)] val b: R|@R|MyAnnotation|(name = this@R|/Foo.Companion|.R|/Foo.Companion.CONSTANT_NAME| [evaluated = String(NAME)])  kotlin/Int| = R|<local>/b|
            public [ResolvedTo(STATUS)] get(): R|@R|MyAnnotation|(name = this@R|/Foo.Companion|.R|/Foo.Companion.CONSTANT_NAME| [evaluated = String(NAME)])  kotlin/Int|

        public final [ResolvedTo(STATUS)] val c: R|kotlin/Long| = R|<local>/c|
            public [ResolvedTo(STATUS)] get(): R|kotlin/Long|

        public final? [ResolvedTo(RAW_FIR)] class NestedClass : R|kotlin/Any| {
            public? [ResolvedTo(RAW_FIR)] constructor(): R|Foo.NestedClass| {
                LAZY_super<R|kotlin/Any|>
            }

        }

        public final companion [ResolvedTo(STATUS)] object Companion : R|kotlin/Any| {
            private [ResolvedTo(STATUS)] constructor(): R|Foo.Companion| {
                LAZY_super<R|kotlin/Any|>
            }

            public final const [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] val CONSTANT_NAME: R|kotlin/String| = String(NAME)
                public [ResolvedTo(IMPLICIT_TYPES_BODY_RESOLVE)] get(): R|kotlin/String|

        }

    }
