polys = array(N).map(j => Polygon.fromPath(`${array(7).map(i => {
const curr = PVector((j + 1) * 10, 0).rotateTo(TAU / 6 * i + j * TAU / ((N - 1) * 3))
if(i === 0) return `M${curr.x} ${curr.y}`
else {
const prev = curr.clone().rotateBy(-TAU / 6)
const handle1 = prev.clone().mag(2 + j).rotateBy(PI/2).add(prev)
const handle2 = curr.clone().mag(2 + j).rotateBy(-PI/2).add(curr)
return `C${handle1.x} ${handle1.y} ${handle2.x} ${handle2.y} ${curr.x} ${curr.y}`
}
}).join(' ')} Z`))