// the test checks that function own type parameters (`S` in this test) won't be substituted recursively // SUBSTITUTOR: T -> kotlin.collections.List, S -> kotlin.Long fun foo(x: List, y: Map>, k: String): T