package

public fun test1(/*0*/ collection: MyCollection): kotlin.Unit
public fun MyAnotherCollectionInterface.iterator(): MyIterator
public fun MyCollectionInterface.iterator(): MyIterator

public interface MyAnotherCollectionInterface {
    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 final class MyCollection : MyCollectionInterface, MyAnotherCollectionInterface {
    public constructor MyCollection()
    public open override /*2*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public open override /*2*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public open override /*2*/ /*fake_override*/ fun toString(): kotlin.String
}

public interface MyCollectionInterface {
    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 final class MyElement {
    public constructor MyElement()
    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 final class MyIterator {
    public constructor MyIterator()
    public open override /*1*/ /*fake_override*/ fun equals(/*0*/ other: kotlin.Any?): kotlin.Boolean
    public final fun hasNext(): kotlin.Boolean
    public open override /*1*/ /*fake_override*/ fun hashCode(): kotlin.Int
    public final fun next(): MyElement
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
}
