{
const context = DOM.context2d(width, height);
context.fillRect(0, 0, width, height);
context.globalAlpha = 1;
let i = 0;
do {
const x = Math.random() * width,
y = Math.random() * height,
type = (Math.random() * 3) | 0;
const v = intensity([x, y], type);
const c = d3.hcl(colors[type]);
c.l *= v;
context.fillStyle = c;
context.beginPath();
context.arc(x, y, 5 * Math.exp(-i / 300000), 0, 2 * Math.PI);
context.fill();
if (i % 1000 === 0) yield context.canvas;
} while (i++ < 1000000);
}