/* package whatever; // don't place package name! */
import java.util.*;
import java.lang.*;
import java.io.*;
import static java.
lang.
System.
*;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
{
Govno govno = new Govno();
Mocha mocha = new Mocha();
out.println(mocha.getClass()); // моча класса Моча
out.println(mocha instanceof Govno); // но здесь моча класса говно
// скорее всего из-за того, что сначала создается (и приводится) объект
// а потом уже идет проверка мочи на говно
Govno kakakha = (Govno) mocha; // делаем из мочи говно
out.println(kakakha.getClass()); // говно по прежнему моча
out.println(kakakha instanceof Govno); // моча в кой-то веки стала говном
}
}
class Govno
{
}
class Mocha extends Govno
{
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgppbXBvcnQgc3RhdGljIGphdmEubGFuZy5TeXN0ZW0uKjsKCi8qIE5hbWUgb2YgdGhlIGNsYXNzIGhhcyB0byBiZSAiTWFpbiIgb25seSBpZiB0aGUgY2xhc3MgaXMgcHVibGljLiAqLwpjbGFzcyBJZGVvbmUKewoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CgkJR292bm8gZ292bm8gPSBuZXcgR292bm8oKTsKCQlNb2NoYSBtb2NoYSA9IG5ldyBNb2NoYSgpOwoJCQoJCW91dC5wcmludGxuKG1vY2hhLmdldENsYXNzKCkpOyAvLyDQvNC+0YfQsCDQutC70LDRgdGB0LAg0JzQvtGH0LAKCQlvdXQucHJpbnRsbihtb2NoYSBpbnN0YW5jZW9mIEdvdm5vKTsgLy8g0L3QviDQt9C00LXRgdGMINC80L7Rh9CwINC60LvQsNGB0YHQsCDQs9C+0LLQvdC+CgkJLy8g0YHQutC+0YDQtdC1INCy0YHQtdCz0L4g0LjQty3Qt9CwINGC0L7Qs9C+LCDRh9GC0L4g0YHQvdCw0YfQsNC70LAg0YHQvtC30LTQsNC10YLRgdGPICjQuCDQv9GA0LjQstC+0LTQuNGC0YHRjykg0L7QsdGK0LXQutGCCgkJLy8g0LAg0L/QvtGC0L7QvCDRg9C20LUg0LjQtNC10YIg0L/RgNC+0LLQtdGA0LrQsCDQvNC+0YfQuCDQvdCwINCz0L7QstC90L4KCQkKCQlHb3ZubyBrYWtha2hhID0gKEdvdm5vKSBtb2NoYTsgLy8g0LTQtdC70LDQtdC8INC40Lcg0LzQvtGH0Lgg0LPQvtCy0L3QvgoJCQoJCW91dC5wcmludGxuKGtha2FraGEuZ2V0Q2xhc3MoKSk7IC8vINCz0L7QstC90L4g0L/QviDQv9GA0LXQttC90LXQvNGDINC80L7Rh9CwCgkJb3V0LnByaW50bG4oa2FrYWtoYSBpbnN0YW5jZW9mIEdvdm5vKTsgLy8g0LzQvtGH0LAg0LIg0LrQvtC5LdGC0L4g0LLQtdC60Lgg0YHRgtCw0LvQsCDQs9C+0LLQvdC+0LwKCX0KfQoKY2xhc3MgR292bm8gCnsKCVN0cmluZyBwb25vcyA9ICJwb25vcyI7Cn0KCmNsYXNzIE1vY2hhIGV4dGVuZHMgR292bm8KewoJU3RyaW5nIHNzYWtpID0gInNzYWtpIjsKfQ==