import java.lang.reflect.InvocationTargetException;
import java.lang.reflect.Method;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
public class Main
{
static <A,B
> void addAll
(Collection
<B
> dest, Collection
<A
> source,
String methodName
) {
for (A a: source)
{
if (m == null)
m = a.getClass().getMethod(methodName);
dest.add((B)m.invoke(a));
}
}
{
ArrayList<String> s = new ArrayList<String>();
List
<Integer
> i
= Arrays.
asList(1,
2,
3); addAll(s, i, "toString");
}
}
aW1wb3J0IGphdmEubGFuZy5yZWZsZWN0Lkludm9jYXRpb25UYXJnZXRFeGNlcHRpb247CmltcG9ydCBqYXZhLmxhbmcucmVmbGVjdC5NZXRob2Q7CmltcG9ydCBqYXZhLnV0aWwuQXJyYXlMaXN0OwppbXBvcnQgamF2YS51dGlsLkFycmF5czsKaW1wb3J0IGphdmEudXRpbC5Db2xsZWN0aW9uOwppbXBvcnQgamF2YS51dGlsLkxpc3Q7CgpwdWJsaWMgY2xhc3MgTWFpbgp7CiAgIHN0YXRpYyA8QSxCPiB2b2lkIGFkZEFsbChDb2xsZWN0aW9uPEI+IGRlc3QsIENvbGxlY3Rpb248QT4gc291cmNlLCBTdHJpbmcgbWV0aG9kTmFtZSkKICAgICAgICAgIHRocm93cyBJbGxlZ2FsQWNjZXNzRXhjZXB0aW9uLCBJbnZvY2F0aW9uVGFyZ2V0RXhjZXB0aW9uLCBOb1N1Y2hNZXRob2RFeGNlcHRpb24KICAgewogICAgICBNZXRob2QgbSA9IG51bGw7CiAgICAgIGZvciAoQSBhOiBzb3VyY2UpCiAgICAgIHsKICAgICAgICAgaWYgKG0gPT0gbnVsbCkKICAgICAgICAgICAgbSA9IGEuZ2V0Q2xhc3MoKS5nZXRNZXRob2QobWV0aG9kTmFtZSk7CiAgICAgICAgIGRlc3QuYWRkKChCKW0uaW52b2tlKGEpKTsKICAgICAgfQogICB9CiAgIAogICBwdWJsaWMgc3RhdGljIHZvaWQgbWFpbihTdHJpbmdbXSBhcmdzKSB0aHJvd3MgRXhjZXB0aW9uCiAgIHsKICAgICAgQXJyYXlMaXN0PFN0cmluZz4gcyA9IG5ldyBBcnJheUxpc3Q8U3RyaW5nPigpOwogICAgICBMaXN0PEludGVnZXI+IGkgPSBBcnJheXMuYXNMaXN0KDEsMiwzKTsKICAgICAgYWRkQWxsKHMsIGksICJ0b1N0cmluZyIpOwogICAgICBTeXN0ZW0ub3V0LnByaW50bG4ocyk7CiAgIH0KfQ==