class C1 {
public void f ( ) {
}
public void g ( ) {
f ( );
}
}
class C2 extends C1 {
public void f ( ) {
}
}
public class Prog {
public static void main
(String args
[ ]) { C1 a = new C1( );
a.f( );
C2 b = new C2( );
b.f( );
a = b;
a.f( );
b.g( );
}
}
Y2xhc3MgQzEgewogICAgICAgICAgICAgICAgcHVibGljIHZvaWQgZiAoICkgewogICAgICAgICAgICAgICAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnQoIiAxICIpOwogICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICBwdWJsaWMgdm9pZCBnICggKSB7ICAKICAgICAgICAgICAgICAgICAgICAgICAgICBmICggKTsKICAgICAgICAgICAgICAgIH0KICAgICAgIH0KCiAgICAgICAgICAgICAgICAgIGNsYXNzIEMyIGV4dGVuZHMgQzEgewogICAgICAgICAgICAgICAgICAgICAgICAgIHB1YmxpYyB2b2lkIGYgKCApIHsKICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgU3lzdGVtLm91dC5wcmludCgiIDIgIik7CiAgICAgICAgICAgICAgICAgICAgICAgICAgfQogICAgICAgICAgICAgICAgIH0KCiAgICAgICAgICAgICAgICAgcHVibGljIGNsYXNzIFByb2cgewogICAgICAgICAgICAgICAgICAgICAgICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluKFN0cmluZyBhcmdzWyBdKSB7CiAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgIEMxIGEgPSBuZXcgQzEoICk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgYS5mKCApOwogICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICAgICBDMiBiID0gbmV3IEMyKCApOwogICAgICAgICAgICAgICAgICAgICAgICAgIGIuZiggKTsKICAgICAgICAgICAgICAgICAgICAgICAgICBhID0gYjsKICAgICAgICAgICAgICAgICAgICAgICAgICBhLmYoICk7CiAgICAgICAgICAgICAgICAgICAgICAgICAgYi5nKCApOwogICAgICAgICAgICAgICAgICAgICAgICAgIH0KICAgICAgIH0=