viewof bz = {
const { seed, size, patches, nudge, wrap } = settings;
const sketch = DOM.context2d(size.width, size.height);
const { canvas } = sketch;
const strip = stripper(settings)(sketch);
sketch.fillStyle = "snow";
sketch.fillRect(0, 0, canvas.width, canvas.height);
sketch.translate(nudge.x, 0);
let [flip, flop] = [
Array.from({ length: patches.w }, () => 0),
Array.from({ length: patches.w }, () => 0)
];
flip[seed.x] = 1;
const evolve = ev(wrap);
for (let y = seed.y0; y < patches.h; y++) {
flip.forEach(strip(y));
flip.forEach(evolve([flip, flop]));
[flip, flop] = [flop, flip];
}
grid(settings)(sketch);
canvas.value = [flip, flop];
return canvas;
}