import java.util.*;
import java.util.regex.*;
import java.lang.*;
import java.io.*;
class Ideone
{
{
String s
= "Half Bone-in Spiral int with dark Packd Smithfield Half Bone-in Spiral Ham with Glaze Pack"; String[] res
= splitIncludeDelimeter
("(\\b.{1,32}(?![\\w-])\\W?)", s
); }
List<String> list = new LinkedList<>();
Matcher matcher = Pattern.compile(regex).matcher(text);
int now, old = 0;
while(matcher.find()){
now = matcher.end();
list.add(text.substring(old, now));
old = now;
}
if(list.size() == 0)
//adding rest of a text as last element
String finalElement
= text.
substring(old
); list.add(finalElement);
return list.
toArray(new String[list.
size()]); }
}
aW1wb3J0IGphdmEudXRpbC4qOwppbXBvcnQgamF2YS51dGlsLnJlZ2V4Lio7CmltcG9ydCBqYXZhLmxhbmcuKjsKaW1wb3J0IGphdmEuaW8uKjsKCmNsYXNzIElkZW9uZQp7CglwdWJsaWMgc3RhdGljIHZvaWQgbWFpbiAoU3RyaW5nW10gYXJncykgdGhyb3dzIGphdmEubGFuZy5FeGNlcHRpb24KCXsKCQlTdHJpbmcgcyA9ICJIYWxmIEJvbmUtaW4gU3BpcmFsIGludCB3aXRoIGRhcmsgUGFja2QgU21pdGhmaWVsZCBIYWxmIEJvbmUtaW4gU3BpcmFsIEhhbSB3aXRoIEdsYXplIFBhY2siOwoJCVN0cmluZ1tdIHJlcyA9IHNwbGl0SW5jbHVkZURlbGltZXRlcigiKFxcYi57MSwzMn0oPyFbXFx3LV0pXFxXPykiLCBzKTsKCQlTeXN0ZW0ub3V0LnByaW50bG4oQXJyYXlzLnRvU3RyaW5nKHJlcykpOwoJfQoJCglwdWJsaWMgc3RhdGljIFN0cmluZ1tdIHNwbGl0SW5jbHVkZURlbGltZXRlcihTdHJpbmcgcmVnZXgsIFN0cmluZyB0ZXh0KXsKCSAgICBMaXN0PFN0cmluZz4gbGlzdCA9IG5ldyBMaW5rZWRMaXN0PD4oKTsKCSAgICBNYXRjaGVyIG1hdGNoZXIgPSBQYXR0ZXJuLmNvbXBpbGUocmVnZXgpLm1hdGNoZXIodGV4dCk7CgkKCSAgICBpbnQgbm93LCBvbGQgPSAwOwoJICAgIHdoaWxlKG1hdGNoZXIuZmluZCgpKXsKCSAgICAgICAgbm93ID0gbWF0Y2hlci5lbmQoKTsKCSAgICAgICAgbGlzdC5hZGQodGV4dC5zdWJzdHJpbmcob2xkLCBub3cpKTsKCSAgICAgICAgb2xkID0gbm93OwoJICAgIH0KCQoJICAgIGlmKGxpc3Quc2l6ZSgpID09IDApCgkgICAgICAgIHJldHVybiBuZXcgU3RyaW5nW117dGV4dH07CgkKCSAgICAvL2FkZGluZyByZXN0IG9mIGEgdGV4dCBhcyBsYXN0IGVsZW1lbnQKCSAgICBTdHJpbmcgZmluYWxFbGVtZW50ID0gdGV4dC5zdWJzdHJpbmcob2xkKTsKCSAgICBsaXN0LmFkZChmaW5hbEVsZW1lbnQpOwoJCgkgICAgcmV0dXJuIGxpc3QudG9BcnJheShuZXcgU3RyaW5nW2xpc3Quc2l6ZSgpXSk7Cgl9Cn0=