/* package whatever; // don't place package name! */
import java.util.* ;
import java.lang.* ;
import java.io.* ;
/* Name of the class has to be "Main" only if the class is public. */
class Ideone
{
}
static < T> T get( ) {
return coalesce( ) ;
}
//@SafeVarargs NOT SAFE!
public static < T> T coalesce( T ... args ) {
for ( T i : args) {
if ( i != null ) {
return i;
}
}
T newInstance = null ;
try {
final Class
<? extends Object [ ] > arrayClass
= args.
getClass ( ) ; final Class<?> componentType = arrayClass.getComponentType ( ) ;
newInstance = ( T) componentType.newInstance ( ) ;
e.printStackTrace ( ) ;
}
return newInstance;
}
}
LyogcGFja2FnZSB3aGF0ZXZlcjsgLy8gZG9uJ3QgcGxhY2UgcGFja2FnZSBuYW1lISAqLwoKaW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CmltcG9ydCBqYXZhLmlvLio7CgovKiBOYW1lIG9mIHRoZSBjbGFzcyBoYXMgdG8gYmUgIk1haW4iIG9ubHkgaWYgdGhlIGNsYXNzIGlzIHB1YmxpYy4gKi8KY2xhc3MgSWRlb25lCnsKICAgIHB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbiB7CiAgICAgICAgU3RyaW5nIHMgPSBnZXQoKTsKICAgICAgICBTeXN0ZW0ub3V0LnByaW50bG4ocyk7CiAgICB9CgogICAgc3RhdGljIDxUPiBUIGdldCgpIHsKICAgICAgICByZXR1cm4gY29hbGVzY2UoKTsKICAgIH0KCiAgICAvL0BTYWZlVmFyYXJncyBOT1QgU0FGRSEKICAgIHB1YmxpYyBzdGF0aWMgPFQ+IFQgY29hbGVzY2UoVCAuLi4gYXJncykgewogICAgICAgIGZvcihUIGkgOiBhcmdzKSB7CiAgICAgICAgICAgIGlmKGkgIT0gbnVsbCkgewogICAgICAgICAgICAgICAgcmV0dXJuIGk7CiAgICAgICAgICAgIH0KICAgICAgICB9CiAgICAgICAgVCBuZXdJbnN0YW5jZSA9IG51bGw7CiAgICAgICAgdHJ5IHsKICAgICAgICAgICAgZmluYWwgQ2xhc3M8PyBleHRlbmRzIE9iamVjdFtdPiBhcnJheUNsYXNzID0gYXJncy5nZXRDbGFzcygpOwogICAgICAgICAgICBmaW5hbCBDbGFzczw/PiBjb21wb25lbnRUeXBlID0gYXJyYXlDbGFzcy5nZXRDb21wb25lbnRUeXBlKCk7CiAgICAgICAgICAgIG5ld0luc3RhbmNlID0gKFQpIGNvbXBvbmVudFR5cGUubmV3SW5zdGFuY2UoKTsKICAgICAgICB9Y2F0Y2goRXhjZXB0aW9uIGUpIHsKICAgICAgICAgICAgZS5wcmludFN0YWNrVHJhY2UoKTsKICAgICAgICB9CiAgICAgICAgcmV0dXJuIG5ld0luc3RhbmNlOwogICAgfQp9