package package foobar { public val x1: [ERROR : ] public val x2: java.util.List? = null public val y1: kotlin.collections.List? = null public fun done(/*0*/ result: O): foobar.Iteratee public abstract class Collection : kotlin.collections.Iterable { public constructor Collection() 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 final fun iterate(/*0*/ iteratee: foobar.Iteratee): O public abstract override /*1*/ /*fake_override*/ fun iterator(): kotlin.collections.Iterator public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String } public abstract class Foo { public constructor Foo() public abstract val x: T 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 abstract class Iteratee { public constructor Iteratee() public abstract val isDone: kotlin.Boolean public abstract val result: O public abstract fun done(): O 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 abstract fun process(/*0*/ item: I): foobar.Iteratee public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String } public final class StrangeIterateeImpl : foobar.Iteratee { public constructor StrangeIterateeImpl(/*0*/ obj: O) public open override /*1*/ val isDone: kotlin.Boolean = true public final val obj: O public open override /*1*/ val result: O public open override /*1*/ fun done(): O 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*/ fun process(/*0*/ item: I): foobar.Iteratee public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String } public abstract class Sum : foobar.Iteratee { public constructor Sum() public abstract override /*1*/ val isDone: kotlin.Boolean public abstract override /*1*/ val result: kotlin.Int public abstract override /*1*/ fun done(): kotlin.Int 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*/ fun process(/*0*/ item: kotlin.Int): foobar.Iteratee public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String } package foobar.a { public val a: java.util.List? = null public val a2: [ERROR : util.List]? public val a3: [ERROR : LinkedList]? public val b: kotlin.collections.List? = null public val b1: [ERROR : util.List]? } }