saisirGraine()} /> {#if refusGraine !== null} {/if}
{#each champs as entree (entree.cle)} {/each}
{t('generation.contraintes.titre')} {#each bascules as entree (entree.cle)} {@const { cle, etiquette } = entree}
basculer(evenement, entree)} /> {#if refusBascule !== null && refusBascule.cle === cle} (refusBascule = null)} /> {/if}
{/each}
{t('generation.coeurs.titre')}
{#if !coeurs.automatique}
(refusCoeurs = null)} onkeydown={toucheCoeurs} onblur={validerCoeurs} /> {#if refusCoeurs !== null} {/if}
{/if}

{t('generation.coeurs.disponibles', { disponibles: coeurs.disponibles })}

{t('generation.coeurs.note')}

{#if mesure === null}

{t('generation.duree.inconnue')}

{:else}

{t('generation.duree.observee', mesure)}

{t('generation.duree.estimee', estimation)}

{/if}