{#if room}
{error}
{/if} {#if phrase}On the other device, open the hall and claim this phrase within ten minutes: {phrase.phrase}
{/if} {#if room?.remote?.started && !seatLost && room.remote.seats.some((s) => s.standIn)}A bot duels for {room.remote.seats.filter((s) => s.standIn).map((s) => s.name).join(', ')}, at the host's word, until a transfer phrase from the host brings them back.
{/if} {#if watching && room?.remote?.started && !room.state.over}{seatLost} Claim it here, or write to the keeper.
{:else}{#if room.remote.expected.length > 0}{room.speaker(room.remote.host)} began the duel before {room.remote.expected.join(' and ')} arrived, and the seat held for {room.remote.expected.length === 1 ? 'them' : 'each'} went with it.
{/if}Had a seat at this duel? Ask the host for a transfer phrase, or make one on the device that still holds the seat, and claim it here. Or write to the keeper for a link that brings it back.
{/if}{#if r.rematch} {room.speaker(r.rematch.by)} called for a rematch at table {r.rematch.to}. Take your seat {:else} The same company sits down at a new table, with a seat held for everyone here. {/if}
{/if} {#if joining && seatFree}room {roomId}
A wizard has opened this table and is gathering opponents. Choose a name and sit down. The duel begins when the host says.
Just watching? You are in the Peanut Gallery until you sit.
{hostName} is gathering wizards. Sit down above, or watch from the gallery until the duel begins.
{:else}The table is full, so you watch from the Peanut Gallery. The duel begins when {hostName} says.
{/if} {:else}room {roomId}
Send this link, or the code. Whoever opens it takes a seat, up to a dozen, and the duel begins when you say. Anyone who arrives once it has begun watches from the Peanut Gallery.
{link}
This is a rematch of table {r.rematchOf}, with seats held for those not yet back.
{/if} {#if !watching}{r.keeper} keeps this site and answers every call, sometimes within the minute, sometimes after a night's sleep.{#if keeperHour} It is {keeperHour} where {r.keeper} lives.{/if} The seat is held either way.
{r.keeper} has been called to the table by {room.speaker(r.challenge.by)}.{#if keeperHour} It is {keeperHour} there.{/if} A seat is held for them. If they can come now, they will take it. If they are asleep or away, they will leave a word below when they can. In the meantime you can seat a bot, invite a friend, or play another duel in a new tab. This table keeps its place in your hall until you come back.
{/if} {/if} {#if r.error}{r.error}
{/if}{joining ? 'Finding the table.' : 'Finding your seat.'}
{/if}