import java.util.*;
import java.lang.*;
class Main
{
public static class Class1 implements Comparable<Object>{
super();
this.name = name;
}
@Override
return "Class1 [name=" + name + "]";
}
@Override
public int compareTo
(Object o
) { return (o instanceof Class1)?compareTo((Class1)o):compareTo((Class2)o);
}
public int compareTo(Class1 o){
return name.compareTo(o.name);
}
public int compareTo(Class2 o){
return name.compareTo(o.name2);
}
}
public static class Class2 implements Comparable<Object>{
super();
this.name2 = name;
}
@Override
return "Class2 [name=" + name2 + "]";
}
@Override
public int compareTo
(Object o
) { return (o instanceof Class1)?compareTo((Class1)o):compareTo((Class2)o);
}
public int compareTo(Class1 o){
return name2.compareTo(o.name);
}
public int compareTo(Class2 o){
return name2.compareTo(o.name2);
}
}
{
PriorityQueue<Object> queue=new PriorityQueue<Object>();
queue.add(o7);
queue.add(o4);
queue.add(o3);
queue.add(o8);
queue.add(o5);
queue.add(o1);
queue.add(o2);
queue.add(o9);
queue.add(o0);
queue.add(o6);
while ((last = queue.poll()) != null) {
}
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CgpjbGFzcyBNYWluCnsKICAgIHB1YmxpYyBzdGF0aWMgY2xhc3MgQ2xhc3MxIGltcGxlbWVudHMgQ29tcGFyYWJsZTxPYmplY3Q+ewpTdHJpbmcgbmFtZTsKCnB1YmxpYyBDbGFzczEoU3RyaW5nIG5hbWUpIHsKICAgIHN1cGVyKCk7CiAgICB0aGlzLm5hbWUgPSBuYW1lOwp9CgpAT3ZlcnJpZGUKcHVibGljIFN0cmluZyB0b1N0cmluZygpIHsKICAgIHJldHVybiAiQ2xhc3MxIFtuYW1lPSIgKyBuYW1lICsgIl0iOwp9CgpAT3ZlcnJpZGUKcHVibGljIGludCBjb21wYXJlVG8oT2JqZWN0IG8pIHsKICAgIHJldHVybiAobyBpbnN0YW5jZW9mIENsYXNzMSk/Y29tcGFyZVRvKChDbGFzczEpbyk6Y29tcGFyZVRvKChDbGFzczIpbyk7Cn0KCnB1YmxpYyBpbnQgY29tcGFyZVRvKENsYXNzMSBvKXsKICAgIHJldHVybiBuYW1lLmNvbXBhcmVUbyhvLm5hbWUpOwp9CgpwdWJsaWMgaW50IGNvbXBhcmVUbyhDbGFzczIgbyl7CiAgICByZXR1cm4gbmFtZS5jb21wYXJlVG8oby5uYW1lMik7Cn0KCn0KICAgIHB1YmxpYyBzdGF0aWMgY2xhc3MgQ2xhc3MyIGltcGxlbWVudHMgQ29tcGFyYWJsZTxPYmplY3Q+ewpTdHJpbmcgbmFtZTI7CgpwdWJsaWMgQ2xhc3MyKFN0cmluZyBuYW1lKSB7CiAgICBzdXBlcigpOwogICAgdGhpcy5uYW1lMiA9IG5hbWU7Cn0KCkBPdmVycmlkZQpwdWJsaWMgU3RyaW5nIHRvU3RyaW5nKCkgewogICAgcmV0dXJuICJDbGFzczIgW25hbWU9IiArIG5hbWUyICsgIl0iOwp9CgpAT3ZlcnJpZGUKcHVibGljIGludCBjb21wYXJlVG8oT2JqZWN0IG8pIHsKICAgIHJldHVybiAobyBpbnN0YW5jZW9mIENsYXNzMSk/Y29tcGFyZVRvKChDbGFzczEpbyk6Y29tcGFyZVRvKChDbGFzczIpbyk7Cn0KCnB1YmxpYyBpbnQgY29tcGFyZVRvKENsYXNzMSBvKXsKICAgIHJldHVybiBuYW1lMi5jb21wYXJlVG8oby5uYW1lKTsKfQoKcHVibGljIGludCBjb21wYXJlVG8oQ2xhc3MyIG8pewogICAgcmV0dXJuIG5hbWUyLmNvbXBhcmVUbyhvLm5hbWUyKTsKfQoKfQoJcHVibGljIHN0YXRpYyB2b2lkIG1haW4gKFN0cmluZ1tdIGFyZ3MpIHRocm93cyBqYXZhLmxhbmcuRXhjZXB0aW9uCgl7CiAgICBQcmlvcml0eVF1ZXVlPE9iamVjdD4gcXVldWU9bmV3IFByaW9yaXR5UXVldWU8T2JqZWN0PigpOwogICAgT2JqZWN0IG8xPW5ldyBDbGFzczEoIm8xIik7CiAgICBPYmplY3QgbzI9bmV3IENsYXNzMigibzIiKTsKICAgIE9iamVjdCBvMz1uZXcgQ2xhc3MxKCJvMyIpOwogICAgT2JqZWN0IG80PW5ldyBDbGFzczEoIm80Iik7CiAgICBPYmplY3QgbzU9bmV3IENsYXNzMigibzUiKTsKICAgIE9iamVjdCBvNj1uZXcgQ2xhc3MyKCJvNiIpOwogICAgT2JqZWN0IG83PW5ldyBDbGFzczEoIm83Iik7CiAgICBPYmplY3Qgbzg9bmV3IENsYXNzMigibzgiKTsKICAgIE9iamVjdCBvOT1uZXcgQ2xhc3MxKCJvOSIpOwogICAgT2JqZWN0IG8wPW5ldyBDbGFzczEoIm8wIik7CiAgICBxdWV1ZS5hZGQobzcpOwogICAgcXVldWUuYWRkKG80KTsKICAgIHF1ZXVlLmFkZChvMyk7CiAgICBxdWV1ZS5hZGQobzgpOwogICAgcXVldWUuYWRkKG81KTsKICAgIHF1ZXVlLmFkZChvMSk7CiAgICBxdWV1ZS5hZGQobzIpOwogICAgcXVldWUuYWRkKG85KTsKICAgIHF1ZXVlLmFkZChvMCk7CiAgICBxdWV1ZS5hZGQobzYpOwoKICAgIE9iamVjdCBsYXN0OwogICAgd2hpbGUgKChsYXN0ID0gcXVldWUucG9sbCgpKSAhPSBudWxsKSB7CiAgICAgICAgICAgIFN5c3RlbS5vdXQucHJpbnRsbihsYXN0KTsKICAgIH0KCX0KfQ==