FILE: typeParameters.kt
    public? final? interface List<out T : Any> : kotlin/Any {
        public? final? operator fun get(index: Int): T

        public? final? infix fun concat(other: List<T>): List<T>

    }
    public? final typealias StringList = List<out String>
    public? final typealias AnyList = List<*>
    public? abstract class AbstractList<out T : Any> : List<T> {
        public? constructor<T : Any>(): R|AbstractList<T>| {
            super<kotlin/Any>()
        }

    }
    public? final? class SomeList : AbstractList<Int> {
        public? constructor(): R|SomeList| {
            super<AbstractList<Int>>()
        }

        public? open? override fun get(index: Int): Int {
            ^get Int(42)
        }

        public? open? override fun concat(other: List<Int>): List<Int> {
            ^concat this#
        }

    }
