canvas = {
const context = DOM.context2d(width, height);
const canvas = context.canvas;
canvas.style.width = "100%";
canvas.style.maxWidth = "720px";
canvas.style.display = "block";
canvas.style.margin = "auto";
context.lineCap = "square";
context.fillStyle = "#fff";
while (true) {
const t = Date.now() / 20000;
context.save();
context.fillRect(0, 0, width, height);
context.translate(width / 2, height / 2 + 28);
knots(context, t, N * 2 / 9, N * 3 / 9, 0);
knots(context, t, N * 5 / 9, N * 6 / 9, 0);
knots(context, t, N * 8 / 9, N * 9 / 9, 0);
knots(context, t, N * 0 / 9, N * 1 / 9, 5);
knots(context, t, N * 3 / 9, N * 4 / 9, 5);
knots(context, t, N * 6 / 9, N * 7 / 9, 5);
knots(context, t, N * 0 / 9 - 1, N * 2 / 9 + 1, 0);
knots(context, t, N * 3 / 9 - 1, N * 5 / 9 + 1, 0);
knots(context, t, N * 6 / 9 - 1, N * 8 / 9 + 1, 0);
context.restore();
yield canvas;
}
}