import java.util.regex.*;
import java.util.*;
import java.lang.*;
import java.io.*;
class Ideone
{
{
String s
= "qweSSXFF rrrrrFfF7f syyyyyearssssssyear"; String regex
= "(?i)RR|SYYYY|SSSSS|ff\\d|ff(?=\\D)|SSXFF|E|YEAR|SYEAR"; String[] res
= splitIncludingDelimiters
(regex, s
); }
List<String> list = new LinkedList<>();
Matcher matcher = Pattern.compile(regex).matcher(text);
while(matcher.find()){
matcher.appendReplacement(sbuf, matcher.group());
list.add(sbuf.toString());
sbuf.setLength(0);
}
matcher.appendTail(sbuf);
if (sbuf.length() > 0) list.add(sbuf.toString());
return list.
toArray(new String[list.
size()]); }
}
aW1wb3J0IGphdmEudXRpbC5yZWdleC4qOwppbXBvcnQgamF2YS51dGlsLio7CmltcG9ydCBqYXZhLmxhbmcuKjsKaW1wb3J0IGphdmEuaW8uKjsKCmNsYXNzIElkZW9uZQp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KCXsKCQlTdHJpbmcgcyA9ICJxd2VTU1hGRiBycnJyckZmRjdmIHN5eXl5eWVhcnNzc3Nzc3llYXIiOwoJCVN0cmluZyByZWdleCA9ICIoP2kpUlJ8U1lZWVl8U1NTU1N8ZmZcXGR8ZmYoPz1cXEQpfFNTWEZGfEV8WUVBUnxTWUVBUiI7CgkJU3RyaW5nW10gcmVzID0gc3BsaXRJbmNsdWRpbmdEZWxpbWl0ZXJzKHJlZ2V4LCBzKTsKCQlTeXN0ZW0ub3V0LnByaW50bG4oQXJyYXlzLnRvU3RyaW5nKHJlcykpOwoJfQoJcHVibGljIHN0YXRpYyBTdHJpbmdbXSBzcGxpdEluY2x1ZGluZ0RlbGltaXRlcnMoU3RyaW5nIHJlZ2V4LCBTdHJpbmcgdGV4dCkgewoJICAgIExpc3Q8U3RyaW5nPiBsaXN0ID0gbmV3IExpbmtlZExpc3Q8PigpOwoJICAgIE1hdGNoZXIgbWF0Y2hlciA9IFBhdHRlcm4uY29tcGlsZShyZWdleCkubWF0Y2hlcih0ZXh0KTsKCQoJICAgIFN0cmluZ0J1ZmZlciBzYnVmID0gbmV3IFN0cmluZ0J1ZmZlcigpOwoJICAgIHdoaWxlKG1hdGNoZXIuZmluZCgpKXsKCSAgICAgICAgbWF0Y2hlci5hcHBlbmRSZXBsYWNlbWVudChzYnVmLCBtYXRjaGVyLmdyb3VwKCkpOwoJICAgICAgICBsaXN0LmFkZChzYnVmLnRvU3RyaW5nKCkpOwoJICAgICAgICBzYnVmLnNldExlbmd0aCgwKTsKCSAgICB9CgkKCSAgICBtYXRjaGVyLmFwcGVuZFRhaWwoc2J1Zik7CgkgICAgaWYgKHNidWYubGVuZ3RoKCkgPiAwKSBsaXN0LmFkZChzYnVmLnRvU3RyaW5nKCkpOwoJCgkgICAgcmV0dXJuIGxpc3QudG9BcnJheShuZXcgU3RyaW5nW2xpc3Quc2l6ZSgpXSk7Cgl9Cn0=