{#each levels as lv, slot (lv)} {@const top = slot * (boardHeight + GAP)} {WORLD[lv]} {#if showCoords} {#each Array.from({ length: FILES }, (_, n) => n) as n (n)} {fileLetter(n)} {/each} {#each Array.from({ length: RANKS }, (_, n) => n) as n (n)} {rankNumber(n)} {/each} {/if} {/each} {#each drawn as i (i)} {@const p = place(i)!} (visited = i)} onclick={decorative ? undefined : () => tap(i)} onkeydown={decorative ? undefined : (e) => key(e, i)} /> {/each} {#each artworkTokens as t (t.id)} {@const p = place(t.at)} {#if p} 1} y="5.5" text-anchor="middle">{LETTERS[kindOf(t.piece)]} {/if} {/each} {#each reach as i (i)} {@const p = place(i)} {#if p} {/if} {/each} {#each targets as i (i)} {@const p = place(i)} {#if p} {#if g.cells[i] === ''} {:else} {/if} {/if} {/each}