public abstract interface UseParameterAsUpperBound : R|kotlin/Any| {
    public abstract interface Sub : R|test/UseParameterAsUpperBound.Super| {
        public abstract fun <B : R|ft<kotlin/Any, kotlin/Any?>|, A : R|ft<B, B?>|> foo(b: R|ft<B, B?>|, a: R|ft<A, A?>|): R|kotlin/Unit|

        public abstract fun <A : R|ft<kotlin/Any, kotlin/Any?>|, B : R|ft<A, A?>|> foo(a: R|ft<A, A?>|, b: R|ft<B, B?>|): R|kotlin/Unit|

    }
    public abstract interface Super : R|kotlin/Any| {
        public abstract fun <A : R|ft<kotlin/Any, kotlin/Any?>|, B : R|ft<A, A?>|> foo(a: R|ft<A, A?>|, b: R|ft<B, B?>|): R|kotlin/Unit|

    }
}
