package

public fun test(/*0*/ v: p.Visitor<kotlin.Nothing>, /*1*/ e: p.Element): kotlin.Unit

package p {

    public open class Element {
        public constructor Element()
        public open fun </*0*/ D : kotlin.Any!, /*1*/ R : kotlin.Any!> accept(/*0*/ @org.jetbrains.annotations.NotNull visitor: p.Visitor<R!>, /*1*/ data: D!): R!
        public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
        public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    }

    public interface Visitor</*0*/ D : kotlin.Any!> {
        public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
        public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
        public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    }
}
