async function generateSpans(text) {
const tokens = encode(text);
const htmlPromises = bundleTokens(tokens).map(
async (t) =>
`<span title="${t.tokens}" style="
padding: 3px;
border-right: 3px solid white;
line-height: 3em;
font-family: courier;
background-color: ${await stringToPastelColor(t.text)};
position: relative;
"><span style="position: absolute; top: 5.5ch; line-height: 1em; left: -0.5px; font-size: 0.45em">${t.tokens.join(
"<br>"
)}</span>${t.text.replace("\n", "<br>").replace(" ", " ")}</span>`
);
const html = await Promise.all(htmlPromises);
return html.join("");
}