import java.util.*;
import java.lang.*;
class Main
{
{
List<String> foo = new ArrayList<String>();
foo.add("one");
foo.add("two");
foo.add("The abc");
foo.add("THE zzz");
foo.add("one the");
Comparator<String> ignoreLeadingThe = new Comparator<String>() {
// TODO check for nulls?
// (?i) makes the match case-insensitive
a = a.replaceAll("(?i)^the\\s+", "");
b = b.replaceAll("(?i)^the\\s+", "");
// TODO use compareToIgnoreCase() instead?
return a.compareTo(b);
}
};
}
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS5sYW5nLio7CgpjbGFzcyBNYWluCnsKCXB1YmxpYyBzdGF0aWMgdm9pZCBtYWluIChTdHJpbmdbXSBhcmdzKSB0aHJvd3MgamF2YS5sYW5nLkV4Y2VwdGlvbgoJewoJCUxpc3Q8U3RyaW5nPiBmb28gPSBuZXcgQXJyYXlMaXN0PFN0cmluZz4oKTsKCQlmb28uYWRkKCJvbmUiKTsKCQlmb28uYWRkKCJ0d28iKTsKCQlmb28uYWRkKCJUaGUgYWJjIik7CgkJZm9vLmFkZCgiVEhFIHp6eiIpOwoJCWZvby5hZGQoIm9uZSB0aGUiKTsKCQkKCQlTeXN0ZW0ub3V0LnByaW50bG4oZm9vKTsKCgkJQ29tcGFyYXRvcjxTdHJpbmc+IGlnbm9yZUxlYWRpbmdUaGUgPSBuZXcgQ29tcGFyYXRvcjxTdHJpbmc+KCkgewoJCSAgICBAT3ZlcnJpZGUgcHVibGljIGludCBjb21wYXJlKFN0cmluZyBhLCBTdHJpbmcgYikgewoJCSAgICAgICAgLy8gVE9ETyBjaGVjayBmb3IgbnVsbHM/CgkJCgkJICAgICAgICAvLyAoP2kpIG1ha2VzIHRoZSBtYXRjaCBjYXNlLWluc2Vuc2l0aXZlCgkJICAgICAgICBhID0gYS5yZXBsYWNlQWxsKCIoP2kpXnRoZVxccysiLCAiIik7CgkJICAgICAgICBiID0gYi5yZXBsYWNlQWxsKCIoP2kpXnRoZVxccysiLCAiIik7CgkJCgkJICAgICAgICAvLyBUT0RPIHVzZSBjb21wYXJlVG9JZ25vcmVDYXNlKCkgaW5zdGVhZD8KCQkgICAgICAgIHJldHVybiBhLmNvbXBhcmVUbyhiKTsKCQkgICAgfQoJCX07CgkJCgkJQ29sbGVjdGlvbnMuc29ydChmb28sIGlnbm9yZUxlYWRpbmdUaGUpOwoJCQoJCVN5c3RlbS5vdXQucHJpbnRsbihmb28pOwoJfQp9