points = {
restart;
let throwAway = xPrime * yPrime;
let xGen = haltonSequence(xPrime, 1000 + throwAway);
let yGen = haltonSequence(yPrime, 1000 + throwAway);
let done = false;
let points = [];
let index = 0;
while (!done) {
let xStep = xGen.next();
let yStep = yGen.next();
done = xStep.done || yStep.done;
if (done) break;
points.push({ x: xStep.value, y: yStep.value, index: index - throwAway });
if (!skipAnimation && points.length > throwAway && index % speed == 0)
yield points.slice(throwAway);
index += 1;
}
yield points;
}