public void advance() {previousValue = value;if (value == 1) {value = minShingleSize;} else if (value == maxShingleSize) {reset();} else {++value;}}

public virtual void Advance(){previousValue = value;if (value == 1){value = outerInstance.minShingleSize;}else if (value == outerInstance.maxShingleSize){Reset();}else{++value;}}
