package

public fun generate1(/*0*/ f: suspend SuperInterface.() -> kotlin.Unit): kotlin.Unit
public fun generate2(/*0*/ f: suspend RestrictedController.() -> kotlin.Unit): kotlin.Unit
public fun generate3(/*0*/ f: suspend SubClass.() -> kotlin.Unit): kotlin.Unit
public fun kotlin.String.test(): kotlin.Unit

@kotlin.coroutines.RestrictsSuspension public open class RestrictedController : SuperInterface {
    public constructor RestrictedController()
    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 suspend fun memberFun(): kotlin.Unit
    public open override /*1*/ suspend /*fake_override*/ fun superFun(): kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    public final suspend fun kotlin.String.memberExtFun(): kotlin.Unit
    public open override /*1*/ suspend /*fake_override*/ fun kotlin.String.superExtFun(): kotlin.Unit
}

public final class SubClass : RestrictedController {
    public constructor SubClass()
    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 override /*1*/ suspend /*fake_override*/ fun memberFun(): kotlin.Unit
    public final suspend fun subFun(): kotlin.Unit
    public open override /*1*/ suspend /*fake_override*/ fun superFun(): kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    public final override /*1*/ suspend /*fake_override*/ fun kotlin.String.memberExtFun(): kotlin.Unit
    public final suspend fun kotlin.String.subExtFun(): kotlin.Unit
    public open override /*1*/ suspend /*fake_override*/ fun kotlin.String.superExtFun(): kotlin.Unit
}

public interface SuperInterface {
    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 suspend fun superFun(): kotlin.Unit
    public open override /*1*/ /*fake_override*/ fun toString(): kotlin.String
    public open suspend fun kotlin.String.superExtFun(): kotlin.Unit
}
