{
const context = DOM.context2d(width, height);
const mutate = d3.geoProjectionMutator(interpolate);
const projection = mutate(0)
.rotate([-20, 0])
.center([0, 52])
.clipExtent([[-1, -1], [width + 1, height + 1]])
.translate([width / 2, height / 2])
.scale(width);
const path = d3.geoPath(projection, context);
while (true) {
mutate((Math.sin(Date.now() / 250) + 1) / 2);
context.clearRect(0, 0, width, height);
context.beginPath(), path(land), context.fill();
yield context.canvas;
}
}