namespace test
// <namespace name="p">
namespace p

internal final class C {
    /*primary*/ public constructor C()
    internal final fun f() : Unit
}

internal open class G</*0*/ T> {
    /*primary*/ public constructor G</*0*/ T>()
    internal final fun a() : Unit
    internal open fun f() : T
}

internal final class G2</*0*/ E> : test.p.G<E> {
    /*primary*/ public constructor G2</*0*/ E>()
    internal final override /*1*/ /*fake_override*/ fun a() : Unit
    internal open override /*1*/ fun f() : E
    internal final fun g() : E
}
internal final fun foo() : Unit
internal final fun foo(/*0*/ a : test.p.C) : Unit
// </namespace name="p">

internal final class A {
    /*primary*/ public constructor A()
}
