FILE: script.kts
    SCRIPT: <script-script.kts>

        public final? [ContainingScriptKey=FirScriptSymbol <script-script.kts>] class Builder : R|kotlin/Any| {
            public? [ContainingClassKey=Builder] constructor(): R|Builder| {
                super<R|kotlin/Any|>()
            }

            public? final? var version: String = String()
                public? [ContainingClassKey=Builder] get(): String
                public? [ContainingClassKey=Builder] set(value: String): R|kotlin/Unit|

            public? final? fun execute(): R|kotlin/Unit| {
                println#(version#)
            }

            public final? [ContainingScriptKey=FirScriptSymbol <script-script.kts>] class Nested : R|kotlin/Any| {
                public? [ContainingClassKey=Nested] constructor(): R|Builder.Nested| {
                    super<R|kotlin/Any|>()
                }

                public? final? fun foo(): R|kotlin/Unit| {
                }

                public? final? fun boo(): R|kotlin/Unit| {
                }

            }

        }

        public? final? fun build(action: ( Builder.() -> Unit )): <implicit> {
            ^build Builder#().apply#(action#)
        }

        public? final? fun build2(action: ( Builder.() -> Unit )): Builder {
            ^build2 Builder#().apply#(action#)
        }

        init {
            build#(<L> = build@fun <implicit>.<anonymous>(): <implicit> <inline=Unknown>  {
                version# = String(123)
                local final? [ContainingScriptKey=FirScriptSymbol <script-script.kts>] class A : R|kotlin/Any| {
                    public? [ContainingClassKey=A] constructor(): R|<local>/A| {
                        super<R|kotlin/Any|>()
                    }

                    public? final? fun doo(): R|kotlin/Unit| {
                    }

                }

                execute#()
            }
            )
        }

        init {
            +=(version#, IntegerLiteral(123))
        }

        public? final? val builder: <implicit> = build#(<L> = build@fun <implicit>.<anonymous>(): <implicit> <inline=Unknown>  {
            version# = String(321)
        }
        )
            public? get(): <implicit>

        init {
            println#()
        }

        init {
            builder#.version# = String()
        }

        init {
            builder#.execute#()
        }

