import java.io.*;

public class test_3 {
  final static int NN = 100;
  final int NNN  = 100;
  final static String s = "hello";
  public static void main(String [] args){
    X x = new X();
    Y y = new Y();
    call_interf(x);
    call_interf(y);
  }

  static void call_interf(interf f){
    System.out.println("call interf");
    f.foo(100);
    f.goo();
  }
}

interface interf2 {
  void goo();
}

interface interf extends interf2 {
  int N = test_3.NN;
  void foo(int n);
}

class X extends Z implements interf {
  public void foo(int n){ System.out.println("X="+n+N); 
  System.out.println(test_3.s); }
}

class Z {
  public void goo() { System.out.println("X:goo"); }
}

class Y implements interf {
  public void foo(int n){ System.out.println("Y="+n); }
  public void goo() { System.out.println("Y:goo"); }
}

