/**
 * public abstract interface Foo : kotlin/Any {
 *
 *   // signature: bar()V
 *   public abstract fun bar(): kotlin/Unit
 *
 *   // signature: foo()V
 *   public open fun foo(): kotlin/Unit
 *
 *   // signature: foo2(I)V
 *   public open fun foo2(a: kotlin/Int): kotlin/Unit
 *
 *   // signature: privateDefaultMethod(Ljava/lang/String;)V
 *   private final fun privateDefaultMethod(x: kotlin/String? (* = ... *)): kotlin/Unit
 *
 *   // signature: privateMethod()V
 *   private final fun privateMethod(): kotlin/Unit
 *
 *   // module name: main
 *
 *   // has method bodies in interface
 * }
 */
@kotlin.Metadata()
public abstract interface Foo {

    public default void foo() {
    }

    public default void foo2(int a) {
    }

    public abstract void bar();

    public default void privateMethod() {
    }

    public default void privateDefaultMethod(@org.jetbrains.annotations.Nullable()
    java.lang.String x) {
    }
}
