public List<Integer> partition() {
URIDistinguisher D = new URIDistinguisher(_boundary, _ST);
IndexMap<StringTree> map = new IndexMap<StringTree>();
List<List<String>> res = new ArrayList<List<String>>();
for (String uristr : _uris) {
StringTree st = D.get_node(uristr);
int cell = map.map(st);
if (cell == res.size()) res.add(new ArrayList<String>());
res.get(cell).add(uristr);
}
List<Integer> sizes = new ArrayList<Integer>();