`:m}async function Ue(t,e=t.className.match(/shj-lang-([\\w-]+)/)?.[1],s,c){let m=t.textContent;s??(s=`${t.tagName=="CODE"?"in":m.split(`\n`).length<2?"one":"multi"}line`),t.dataset.lang=e,t.className=`${[...t.classList].filter(n=>!n.startsWith("shj-")).join(" ")} shj-lang-${e} shj-${s}`,t.innerHTML=await we(m,e,s=="multiline",c)}var Ke=async t=>Promise.all(Array.from(document.querySelectorAll(\'[class*="shj-lang-"]\')).map(e=>Ue(e,void 0,void 0,t))),Ve=(t,e)=>{b[t]=e};\nvar t=[{match:/#.*/g,sub:"todo"},{match:/("""|\'\'\')(\\\\[^]|(?!\\1)[^])*\\1?/g,sub:"todo"},{type:"str",match:/f("|\')(\\\\[^]|(?!\\1).)*\\1?|f((["\'])\\4\\4)(\\\\[^]|(?!\\3)[^])*\\3?/gi,sub:[{type:"var",match:/{[^{}]*}/g,sub:[{match:/(?!^{)[^]*(?=}$)/g,sub:"py"}]}]},{expand:"str"},{type:"kwd",match:/\\b(and|as|assert|break|class|continue|def|del|elif|else|except|finally|for|from|global|if|import|in|is|lambda|nonlocal|not|or|pass|raise|return|try|while|with|yield)\\b/g},{type:"bool",match:/\\b(False|True|None)\\b/g},{expand:"num"},{type:"func",match:/[a-z_]+(?=\\s*\\()/g},{type:"oper",match:/[-/*+<>,=!&|^%]+/g},{type:"class",match:/\\b[A-Z][\\w_]*\\b/g}];\n// export{Ke as highlightAll,Ue as highlightElement,we as highlightText,Ve as loadLanguage,Zt as tokenize};\nKe();\n';
const frontSide = `