docs: protected boolean splitSegments() {
  		boolean change = false;
  
  		work.reset();
  		for( int i = 0; i < splits.size-1; i++ ) {
  			change |= checkSplit(change, i,i+1);
  		}
  
  		change |= checkSplit(change, splits.size - 1, 0);
  
  		// swap the two lists
  		GrowQueue_I32 tmp = work;
  		work = splits;
  		splits = tmp;
  
  		return change;
  	}