@elmethis/vue 0.11.0 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/lib/index.vue.cjs CHANGED
@@ -1,5 +1,5 @@
1
- Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));require(`@elmethis/core/tokens.css`);let c=require(`vue`),l=require(`@a2ui/web_core/v0_9`),u=require(`@a2ui/web_core/v0_9/basic_catalog`),d=require(`clsx`),f=require(`@vueuse/core`);require(`zod`);let p=require(`katex`),m=require(`@mdi/js`),h=require(`@elmethis/core`),g=require(`shiki`),_=require(`@46ki75/ikuma-theme/dark`);_=s(_);let ee=require(`@46ki75/ikuma-theme/light`);ee=s(ee);let te=require(`marked`);var v={"elm-tabs":`_elm-tabs_fka8s_1`,"tab-container":`_tab-container_fka8s_14`,tab:`_tab_fka8s_14`,active:`_active_fka8s_42`,"tab-content":`_tab-content_fka8s_53`,"tab-content-inner":`_tab-content-inner_fka8s_58`},y={"elm-collapse":`_elm-collapse_12wiu_1`,row:`_row_12wiu_5`,open:`_open_12wiu_11`,column:`_column_12wiu_16`,both:`_both_12wiu_27`,inner:`_inner_12wiu_44`},b=(0,c.defineComponent)({name:`ElmCollapse`,props:{isOpen:{type:Boolean,default:void 0},direction:{type:String,default:`row`},transitionTimingFunction:{type:String,default:`ease-in-out`}},setup(e,{slots:t}){return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(y[`elm-collapse`],e.isOpen&&y.open,e.direction===`row`&&y.row,e.direction===`column`&&y.column,e.direction===`both`&&y.both),style:{"--elmethis-scoped-transition-timing-function":e.transitionTimingFunction}},[(0,c.createVNode)(`div`,{class:y.inner},[t.default?.()])])}});function ne(e){let{props:t,key:n,emit:r,defaultValue:i}=e;return(0,f.useVModel)(t,n,r,{passive:!0,defaultValue:i})}var re=Symbol(`elm.tabs`),ie=e=>{if(e==null)throw Error(`ElmTabs subcomponents must be used within <ElmTabs>`);return e},ae=(0,c.defineComponent)({name:`ElmTabs`,props:{value:{type:String,default:void 0},defaultValue:{type:String,default:``},transitionTimingFunction:{type:String,default:`linear`}},emits:[`update:value`],setup(e,{emit:t,slots:n}){let r=ne({props:e,key:`value`,emit:t,defaultValue:e.defaultValue??``});return(0,c.provide)(re,{selectedValue:r,setSelectedValue:e=>{r.value=e},get transitionTimingFunction(){return e.transitionTimingFunction}}),()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(v[`elm-tabs`])},[n.default?.()])}}),oe=(0,c.defineComponent)({name:`ElmTabList`,setup(e,{slots:t}){return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(v[`tab-container`])},[t.default?.()])}}),se=(0,c.defineComponent)({name:`ElmTab`,props:{value:{type:String,required:!0}},setup(e,{slots:t}){let n=ie((0,c.inject)(re));return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(v.tab,n.selectedValue.value===e.value&&v.active),onClick:()=>n.setSelectedValue(e.value)},[t.default?.()])}}),ce=(0,c.defineComponent)({name:`ElmTabPanel`,props:{value:{type:String,required:!0}},setup(e,{slots:t}){let n=ie((0,c.inject)(re));return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(v[`tab-content`])},[(0,c.createVNode)(b,{direction:`row`,isOpen:n.selectedValue.value===e.value,transitionTimingFunction:n.transitionTimingFunction},{default:()=>[(0,c.createVNode)(`div`,{class:v[`tab-content-inner`]},[t.default?.()])]})])}}),le={"elm-heading":`_elm-heading_9vw8y_1`,h1:`_h1_9vw8y_13`,h2:`_h2_9vw8y_35`,"h2-underline":`_h2-underline_9vw8y_61`,h3:`_h3_9vw8y_72`,h4:`_h4_9vw8y_87`,h5:`_h5_9vw8y_91`,h6:`_h6_9vw8y_95`},x={text:`_text_zme4t_1`},ue={"elm-fragment-identifier":`_elm-fragment-identifier_xb2v4_1`},de=(0,c.defineComponent)({name:`ElmFragmentIdentifier`,inheritAttrs:!1,props:{id:{type:String,required:!0}},setup(e,{attrs:t}){let n=e=>{let t=new URL(window.location.href);t.hash=e,window.history.replaceState(null,``,t.toString()),document.getElementById(e)?.scrollIntoView({behavior:`smooth`})};return()=>{let{class:r,...i}=t;return(0,c.createVNode)(`span`,(0,c.mergeProps)({class:(0,d.clsx)(ue[`elm-fragment-identifier`],r),onClick:()=>n(e.id)},i),[(0,c.createTextVNode)(`#`)])}}}),fe=Object.freeze({1:1.5,2:1.4,3:1.3,4:1.2,5:1.15,6:1.1}),pe=(0,c.defineComponent)({name:`ElmHeading`,props:{level:{type:Number,required:!0},text:{type:String,default:void 0},id:{type:String,default:void 0}},setup(e,{slots:t}){return()=>(0,c.createVNode)(`h${e.level}`,{class:(0,d.clsx)(le[`elm-heading`],x.text,le[`h${e.level}`]),style:{"--elmethis-scoped-font-size":`${fe[e.level]}em`},id:e.id},{default:()=>[(0,c.createVNode)(`span`,null,[e.text]),t.default?.(),e.id&&(0,c.createVNode)(`span`,{style:{padding:`0.5rem`}},[(0,c.createVNode)(de,{id:e.id},null)]),e.level===2&&(0,c.createVNode)(`span`,{class:le[`h2-underline`],"aria-hidden":`true`},null)]})}}),me={"elm-inline-text":`_elm-inline-text_uf3sg_1`,code:`_code_uf3sg_13`,kbd:`_kbd_uf3sg_25`,link:`_link_uf3sg_58`,ogp:`_ogp_uf3sg_94`,"ogp-text":`_ogp-text_uf3sg_104`,"ogp-title":`_ogp-title_uf3sg_109`,"ogp-description":`_ogp-description_uf3sg_115`},he={"elm-inline-icon":`_elm-inline-icon_1qs0i_1`},S=(0,c.defineComponent)({name:`ElmInlineIcon`,inheritAttrs:!1,props:{src:{type:String,required:!0},alt:{type:String,default:void 0},width:{type:[Number,String],default:void 0},height:{type:[Number,String],default:void 0},size:{type:[Number,String],default:16}},setup(e,{attrs:t}){return()=>{let{class:n,...r}=t;return(0,c.createVNode)(`span`,(0,c.mergeProps)({class:(0,d.clsx)(he[`elm-inline-icon`],n)},r),[(0,c.createVNode)(`img`,{src:e.src,alt:e.alt,class:he[`elm-inline-icon`],width:e.width??e.size,height:e.height??e.size},null)])}}}),C=(0,c.defineComponent)({name:`ElmInlineText`,inheritAttrs:!1,props:{color:{type:String,default:void 0},size:{type:String,default:`1em`},backgroundColor:{type:String,default:void 0},bold:{type:Boolean,default:!1},italic:{type:Boolean,default:!1},underline:{type:Boolean,default:!1},strikethrough:{type:Boolean,default:!1},code:{type:Boolean,default:!1},kbd:{type:Boolean,default:!1},ruby:{type:String,default:void 0},href:{type:String,default:void 0},favicon:{type:String,default:void 0}},setup(e,{attrs:t,slots:n}){return()=>{let{class:r,style:i,...a}=t,o=n.default?.();return e.href&&(o=(0,c.createVNode)(`a`,{class:me.link,href:e.href,target:`_blank`,rel:`noopener noreferrer`},[e.favicon&&(0,c.createVNode)(S,{src:e.favicon,alt:`favicon`},null),o])),e.kbd&&((function(){return o})(),o=(0,c.createVNode)(`kbd`,{class:me.kbd},[o])),e.strikethrough&&((function(){return o})(),o=(0,c.createVNode)(`del`,null,[o])),e.italic&&((function(){return o})(),o=(0,c.createVNode)(`em`,null,[o])),e.underline&&((function(){return o})(),o=(0,c.createVNode)(`ins`,null,[o])),e.bold&&((function(){return o})(),o=(0,c.createVNode)(`strong`,null,[o])),e.code&&((function(){return o})(),o=(0,c.createVNode)(`code`,{class:me.code},[o])),e.ruby&&(o=(0,c.createVNode)(`ruby`,{class:me[`elm-inline-text`]},[(0,c.createVNode)(`span`,null,[o]),(0,c.createVNode)(`rt`,null,[e.ruby])])),(0,c.createVNode)(`span`,(0,c.mergeProps)({class:(0,d.clsx)(me[`elm-inline-text`],x.text,r),style:[i,{"--elmethis-scoped-color":e.color,"--elmethis-scoped-font-size":e.size,"--elmethis-scoped-background-color":e.backgroundColor}]},a),[o])}}}),ge={"elm-paragraph":`_elm-paragraph_rbsk5_1`},_e=(0,c.defineComponent)({name:`ElmParagraph`,inheritAttrs:!1,props:{color:{type:String,default:void 0},backgroundColor:{type:String,default:void 0}},setup(e,{attrs:t,slots:n}){return()=>{let{class:r,style:i,...a}=t;return(0,c.createVNode)(`p`,(0,c.mergeProps)({class:(0,d.clsx)(ge[`elm-paragraph`],x.text,r),style:[i,{"--elmethis-scoped-color":e.color,"--elmethis-scoped-background-color":e.backgroundColor}]},a),[n.default?.()])}}}),w={"elm-a2ui":`_elm-a2ui_4ps3c_1`,surface:`_surface_4ps3c_5`,text:`_text_4ps3c_11`,"text-h1":`_text-h1_4ps3c_16`,"text-h2":`_text-h2_4ps3c_21`,"text-h3":`_text-h3_4ps3c_26`,"text-h4":`_text-h4_4ps3c_31`,"text-h5":`_text-h5_4ps3c_36`,"text-body":`_text-body_4ps3c_41`,row:`_row_4ps3c_47`,column:`_column_4ps3c_53`,"child-wrap":`_child-wrap_4ps3c_60`,list:`_list_4ps3c_64`,"list-horizontal":`_list-horizontal_4ps3c_71`,"list-item":`_list-item_4ps3c_75`,card:`_card_4ps3c_81`,button:`_button_4ps3c_91`,"button-primary":`_button-primary_4ps3c_110`,image:`_image_4ps3c_122`,icon:`_icon_4ps3c_130`,divider:`_divider_4ps3c_139`,"divider-vertical":`_divider-vertical_4ps3c_145`,"text-field":`_text-field_4ps3c_155`,label:`_label_4ps3c_161`,input:`_input_4ps3c_167`,checkbox:`_checkbox_4ps3c_180`,"checkbox-label":`_checkbox-label_4ps3c_188`,slider:`_slider_4ps3c_192`,modal:`_modal_4ps3c_199`,"modal-content":`_modal-content_4ps3c_203`,video:`_video_4ps3c_209`,audio:`_audio_4ps3c_210`,"choice-picker":`_choice-picker_4ps3c_217`,"choice-picker-label":`_choice-picker-label_4ps3c_223`,"choice-picker-options":`_choice-picker-options_4ps3c_229`,"choice-picker-option":`_choice-picker-option_4ps3c_229`,"datetime-input":`_datetime-input_4ps3c_246`};function ve(e){"@babel/helpers - typeof";return ve=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},ve(e)}function ye(e,t){if(ve(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(ve(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function be(e){var t=ye(e,`string`);return ve(t)==`symbol`?t:t+``}function xe(e,t,n){return(t=be(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function T(e,t){return{name:e.name,render:t}}var Se=class e{constructor(e=[]){xe(this,`entries`,void 0);let t=new Map;for(let n of e)t.set(n.name,n);this.entries=t}get(e){return this.entries.get(e)?.render}names(){return Array.from(this.entries.keys())}extend(...t){let n=new Map(this.entries);for(let r of t)if(r instanceof e)for(let[e,t]of r.entries)n.set(e,t);else n.set(r.name,r);return new e(n.values())}},Ce={start:`flex-start`,end:`flex-end`,center:`center`,spaceBetween:`space-between`,spaceAround:`space-around`,spaceEvenly:`space-evenly`,stretch:`stretch`},we={start:`flex-start`,end:`flex-end`,center:`center`,stretch:`stretch`},Te={contain:`contain`,cover:`cover`,fill:`fill`,none:`none`,scaleDown:`scale-down`};function E(e){return e===0?{marginBlockStart:0}:void 0}function D(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!(0,c.isVNode)(e)}var Ee={shortText:`text`,number:`number`,obscured:`password`};function De(e){switch(e){case`h1`:return 1;case`h2`:return 2;case`h3`:return 3;case`h4`:return 4;case`h5`:return 5;default:return 1}}var Oe=new Se([T(u.TextApi,({props:e,resolve:t})=>{let n=t(e.text),r=e.variant??`body`;return r===`caption`?(0,c.createVNode)(C,null,D(n)?n:{default:()=>[n]}):r===`body`?(0,c.createVNode)(_e,null,D(n)?n:{default:()=>[n]}):(0,c.createVNode)(pe,{level:De(r)},D(n)?n:{default:()=>[n]})}),T(u.RowApi,({props:e,childRefs:t,renderChild:n})=>(0,c.createVNode)(`div`,{class:w.row,style:{justifyContent:Ce[e.justify??`start`],alignItems:we[e.align??`center`]}},[t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(`span`,{key:`${e}:${r}`,class:w[`child-wrap`]},[n(e,t,r)]))])),T(u.ColumnApi,({props:e,childRefs:t,renderChild:n})=>(0,c.createVNode)(`div`,{class:w.column,style:{"--margin-block":`2rem`}},[t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(`span`,{key:`${e}:${r}`,class:w[`child-wrap`]},[n(e,t,r)]))])),T(u.ListApi,({props:e,childRefs:t,renderChild:n})=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(w.list,e.direction===`horizontal`&&w[`list-horizontal`])},[t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(`div`,{key:`${e}:${r}`,class:w[`list-item`]},[n(e,t,r)]))])),T(u.CardApi,({props:e,renderChild:t})=>(0,c.createVNode)(`div`,{class:w.card},[t(e.child)])),T(u.ButtonApi,({props:e,renderChild:t,dispatchAction:n})=>(0,c.createVNode)(`div`,{role:`button`,tabindex:0,class:(0,d.clsx)(w.button,e.variant===`primary`&&w[`button-primary`]),onClick:e.action?()=>n(`action`):void 0,onKeydown:e.action?e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n(`action`))}:void 0},[t(e.child)])),T(u.ImageApi,({props:e,resolve:t})=>(0,c.createVNode)(`img`,{class:w.image,src:t(e.url),alt:e.description?t(e.description):``,style:{objectFit:Te[e.fit??`cover`]}},null)),T(u.IconApi,({props:e,resolve:t})=>{let n=t(e.name);return(0,c.createVNode)(`span`,{class:w.icon,"aria-label":n,"data-icon":n},null)}),T(u.DividerApi,({props:e})=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(w.divider,e.axis===`vertical`&&w[`divider-vertical`]),role:`separator`},null)),T(u.TextFieldApi,({props:e,resolve:t,setBinding:n})=>{let r=e.variant??`shortText`,i=e.value?t(e.value):``;return(0,c.createVNode)(`div`,{class:w[`text-field`]},[(0,c.createVNode)(`label`,{class:w.label},[t(e.label)]),r===`longText`?(0,c.createVNode)(`textarea`,{class:w.input,value:i,onInput:e=>n(`value`,e.target.value),onChange:e=>n(`value`,e.target.value)},null):(0,c.createVNode)(`input`,{class:w.input,type:Ee[r]??`text`,value:i,onInput:e=>n(`value`,e.target.value),onChange:e=>n(`value`,e.target.value)},null)])}),T(u.CheckBoxApi,({props:e,ctx:t,resolve:n,setBinding:r})=>{let i=e.value,a=typeof i==`boolean`?i:!!(t.dataContext.resolveDynamicValue(i)??!1);return(0,c.createVNode)(`label`,{class:w.checkbox},[(0,c.createVNode)(`input`,{type:`checkbox`,checked:a,onChange:e=>r(`value`,e.target.checked)},null),(0,c.createVNode)(`span`,{class:w[`checkbox-label`]},[n(e.label)])])}),T(u.SliderApi,({props:e,ctx:t,setBinding:n})=>{let r=e.value,i=typeof r==`number`?r:Number(t.dataContext.resolveDynamicValue(r)??0);return(0,c.createVNode)(`input`,{class:w.slider,type:`range`,value:i,min:e.min??0,max:e.max,onInput:e=>n(`value`,Number(e.target.value)),onChange:e=>n(`value`,Number(e.target.value))},null)}),T(u.TabsApi,({props:e,resolve:t,renderChild:n})=>{let r;return(0,c.createVNode)(ae,{defaultValue:`0`},{default:()=>[(0,c.createVNode)(oe,null,D(r=e.tabs.map((e,n)=>{let r;return(0,c.createVNode)(se,{key:n,value:String(n)},D(r=t(e.title))?r:{default:()=>[r]})}))?r:{default:()=>[r]}),e.tabs.map((e,t)=>{let r;return(0,c.createVNode)(ce,{key:t,value:String(t)},D(r=n(e.child))?r:{default:()=>[r]})})]})}),T(u.ModalApi,({props:e,renderChild:t})=>(0,c.createVNode)(`div`,{class:w.modal},[t(e.trigger),(0,c.createVNode)(`div`,{class:w[`modal-content`]},[t(e.content)])])),T(u.VideoApi,({props:e,resolve:t})=>(0,c.createVNode)(`video`,{class:w.video,controls:!0,src:t(e.url)},null)),T(u.AudioPlayerApi,({props:e,resolve:t})=>(0,c.createVNode)(`audio`,{class:w.audio,controls:!0,src:t(e.url)},null)),T(u.ChoicePickerApi,({props:e,componentId:t,ctx:n,resolve:r,setBinding:i})=>{let a=e.value,o=Array.isArray(a)?a:n.dataContext.resolveDynamicValue(a)??[],s=Array.isArray(o)?o:[],l=(e.variant??`mutuallyExclusive`)===`multipleSelection`;return(0,c.createVNode)(`div`,{class:w[`choice-picker`],"data-choice-picker":t,onChange:e=>{let t=e.currentTarget,n=t.querySelectorAll(`input`),r=n.length>0&&n[0].type===`checkbox`,a=Array.from(t.querySelectorAll(`input:checked`)).map(e=>e.value);i(`value`,r?a:a.slice(0,1))}},[e.label?(0,c.createVNode)(`span`,{class:w[`choice-picker-label`]},[r(e.label)]):null,(0,c.createVNode)(`div`,{class:w[`choice-picker-options`]},[e.options.map(e=>(0,c.createVNode)(`label`,{key:e.value,class:w[`choice-picker-option`]},[(0,c.createVNode)(`input`,{type:l?`checkbox`:`radio`,name:t,value:e.value,checked:s.includes(e.value)},null),(0,c.createVNode)(`span`,null,[r(e.label)])]))])])}),T(u.DateTimeInputApi,({props:e,resolve:t,setBinding:n})=>{let r=e.enableDate??!1,i=e.enableTime??!1,a=r&&i?`datetime-local`:r?`date`:i?`time`:`text`;return(0,c.createVNode)(`div`,{class:w[`datetime-input`]},[e.label?(0,c.createVNode)(`label`,{class:w.label},[t(e.label)]):null,(0,c.createVNode)(`input`,{class:w.input,type:a,value:e.value?t(e.value):``,min:e.min==null?void 0:String(e.min),max:e.max==null?void 0:String(e.max),onInput:e=>n(`value`,e.target.value),onChange:e=>n(`value`,e.target.value)},null)])})]),ke=`root`,Ae=Symbol(`elmethis.a2ui.surface`),je=Symbol(`elmethis.a2ui.catalog`),Me=Symbol(`elmethis.a2ui.ancestors`),Ne=(0,c.defineComponent)({name:`ComponentHost`,props:{id:{type:String,required:!0},basePath:{type:String,required:!0},index:{type:Number,default:0}},setup(e){let t=(0,c.inject)(Ae,void 0),n=(0,c.inject)(je,void 0),r=(0,c.inject)(Me,[]),i=r.includes(e.id);(0,c.provide)(Me,[...r,e.id]);let a=(0,c.ref)(0),o=(0,c.ref)(!1),s=[],u=null;return(0,c.onMounted)(()=>{if(!t)return;let n=e=>{u?.unsubscribe(),u=e.onUpdated.subscribe(()=>{a.value++}),o.value=!0},r=t.componentsModel.get(e.id);r&&n(r),s.push(t.componentsModel.onCreated.subscribe(t=>{t.id===e.id&&(n(t),a.value++)})),s.push(t.componentsModel.onDeleted.subscribe(t=>{t===e.id&&(u?.unsubscribe(),u=null,a.value++)})),s.push(t.dataModel.subscribe(`/`,()=>{a.value++}))}),(0,c.onUnmounted)(()=>{for(let e of s)e.unsubscribe();u?.unsubscribe()}),()=>{if(a.value,i||!t||!n)return null;let r=t.componentsModel.get(e.id);if(!r)return o.value?null:(0,c.createVNode)(`span`,{"data-a2ui-state":`loading`,"data-a2ui-component-id":e.id,style:{color:`gray`,fontSize:`0.875em`,fontStyle:`italic`}},[(0,c.createTextVNode)(`[Loading `),e.id,(0,c.createTextVNode)(`…]`)]);let s=n.get(r.type);if(!s)return(0,c.createVNode)(`span`,{"data-a2ui-state":`unknown`,"data-a2ui-component-id":e.id,"data-a2ui-component-type":r.type,style:{color:`tomato`,fontWeight:600}},[(0,c.createTextVNode)(`Unknown component: `),r.type]);let u=new l.ComponentContext(t,e.id,e.basePath),d=e=>typeof e==`string`?e:e==null?``:typeof e==`object`?u.dataContext.resolveDynamicValue(e)??``:String(e),f=n=>{if(Array.isArray(n))return n.filter(e=>typeof e==`string`).map(t=>({id:t,path:e.basePath}));if(n&&typeof n==`object`&&`componentId`in n){let e=n,r=t.dataModel.get(e.path);return Array.isArray(r)?r.map((t,n)=>({id:e.componentId,path:`${e.path}/${n}`})):[]}return[]},p=(t,n=e.basePath,r=0)=>(0,c.createVNode)(Ne,{key:t,id:t,basePath:n,index:r},null),m=e.id,h={componentId:e.id,index:e.index??0,props:r.properties,surface:t,ctx:u,resolve:d,childRefs:f,renderChild:p,setBinding:(e,n)=>{if(!t)return;let r=t.componentsModel.get(m);if(!r)return;let i=r.properties[e];if(!i||typeof i!=`object`||!(`path`in i))return;let a=i.path;new l.ComponentContext(t,m).dataContext.set(a,n)},dispatchAction:(e=`action`)=>{if(!t)return;let n=t.componentsModel.get(m);if(!n)return;let r=n.properties[e];if(!r)return;let i=new l.ComponentContext(t,m),a=e=>{if(typeof e!=`object`||!e)return e;if(`path`in e||`call`in e)return i.dataContext.resolveDynamicValue(e);if(Array.isArray(e))return e.map(a);let t={};for(let[n,r]of Object.entries(e))t[n]=a(r);return t};t.dispatchAction(a(r),m).catch(e=>{console.error(`[ComponentHost] action dispatch failed:`,e)})}};return(0,c.createVNode)(`span`,{"data-a2ui-component-id":e.id,style:{display:`contents`}},[s(h)])}}});async function Pe(e,{signal:t,onMessage:n,onError:r}){if(t?.aborted)return;let i=e.getReader(),a=new TextDecoder,o=``,s=()=>{i.cancel().catch(()=>{})};t?.addEventListener(`abort`,s,{once:!0});let c=e=>{let t=e.trim();if(t)try{n(JSON.parse(t))}catch(e){r?.(e,t)}};try{for(;;){let{done:e,value:t}=await i.read();if(e)break;o+=a.decode(t,{stream:!0});let n=o.split(`
2
- `);o=n.pop()??``;for(let e of n)c(e)}t?.aborted||c(o)}finally{t?.removeEventListener(`abort`,s);try{i.releaseLock()}catch{}}}var Fe=`https://a2ui.org/specification/v0_9/basic_catalog.json`,Ie=(0,c.defineComponent)({name:`A2uiSurfaceView`,props:{surface:{type:Object,required:!0}},setup(e){return(0,c.provide)(Ae,e.surface),(0,c.provide)(Me,[]),()=>(0,c.createVNode)(`div`,{class:w.surface,style:{"--elmethis-margin-block-start":`2rem`}},[(0,c.createVNode)(Ne,{id:ke,basePath:`/`},null)])}}),Le=(0,c.defineComponent)({name:`A2uiSurface`,props:{surface:{type:Object,required:!0},catalog:{type:Object,default:void 0}},setup(e){return(0,c.provide)(je,e.catalog??Oe),(0,c.provide)(Ae,e.surface),(0,c.provide)(Me,[]),()=>(0,c.createVNode)(`div`,{class:w.surface,style:{"--elmethis-margin-block-start":`2rem`}},[(0,c.createVNode)(Ne,{id:ke,basePath:`/`},null)])}}),Re=(0,c.defineComponent)({name:`ElmA2ui`,props:{url:{type:String,default:void 0},headers:{type:Object,default:void 0},messages:{type:Array,default:void 0},catalogId:{type:String,default:void 0},catalog:{type:Object,default:void 0}},setup(e){(0,c.provide)(je,e.catalog??Oe);let t=(0,c.ref)([]),n=(0,c.ref)(0),r=new Map,i=null,a=async()=>{let a=e.catalogId,o=e.messages?[...e.messages]:[...t.value],s=i;if(s!==null&&s.catalogId===a&&o.length>=s.messages.length&&s.messages.every((e,t)=>e===o[t])&&s){let e=o.slice(s.processed);if(!e.length)return;for(let t of e)try{s.processor.processMessages([t])}catch(e){console.warn(`[ElmA2ui] skipped invalid A2UI message:`,t,e)}await Promise.resolve(),await Promise.resolve(),s.processed=o.length,s.messages=o,n.value++;return}if(s){for(let e of s.subs)e.unsubscribe();s.processor.model.dispose()}let c=new Set([Fe]);a&&c.add(a);for(let e of o)if(e&&typeof e==`object`&&`createSurface`in e){let t=e.createSurface?.catalogId;typeof t==`string`&&c.add(t)}let d=new l.MessageProcessor(Array.from(c).map(e=>new l.Catalog(e,u.BASIC_COMPONENTS,u.BASIC_FUNCTIONS))),f=new Map,p=[];p.push(d.model.onSurfaceCreated.subscribe(e=>{f.set(e.id,e),n.value++})),p.push(d.model.onSurfaceDeleted.subscribe(e=>{f.delete(e),n.value++})),r=f;for(let e of o)try{d.processMessages([e])}catch(t){console.warn(`[ElmA2ui] skipped invalid A2UI message:`,e,t)}i={processor:d,subs:p,processed:o.length,messages:o,catalogId:a},n.value++};(0,c.watch)([()=>e.messages,()=>e.catalogId,()=>t.value.length],()=>{a()},{immediate:!0});let o=null;return(0,c.onMounted)(()=>{if(!e.url)return;o=new AbortController;let n=o.signal;fetch(e.url,{headers:e.headers,signal:n}).then(async e=>{e.body&&await Pe(e.body,{signal:n,onMessage:e=>{e&&typeof e==`object`&&t.value.push(e)},onError:(e,t)=>{console.warn(`[ElmA2ui] skipped invalid JSON line:`,t,e)}})}).catch(e=>{e instanceof Error&&e.name!==`AbortError`&&console.error(`[ElmA2ui] stream error:`,e)})}),(0,c.onUnmounted)(()=>{if(o?.abort(),i){for(let e of i.subs)e.unsubscribe();i.processor.model.dispose()}}),()=>(n.value,(0,c.createVNode)(`div`,{class:w[`elm-a2ui`]},[Array.from(r.values()).map(e=>(0,c.createVNode)(Ie,{key:e.id,surface:e},null))]))}}),ze={"elm-katex":`_elm-katex_189xe_1`},Be=(0,c.defineComponent)({name:`ElmKatex`,props:{expression:{type:String,required:!0},block:{type:Boolean,default:!1}},setup(e){let t=(0,c.computed)(()=>(0,p.renderToString)(e.expression,{displayMode:e.block,output:`mathml`}));return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(x.text,e.block?ze[`elm-katex`]:void 0),innerHTML:t.value},null)}}),O={"elm-code-block":`_elm-code-block_xdmlc_1`,"language-icon":`_language-icon_xdmlc_17`,caption:`_caption_xdmlc_22`,"copy-icon":`_copy-icon_xdmlc_29`,divider:`_divider_xdmlc_33`,code:`_code_xdmlc_40`},Ve=(e,t,n)=>t===`id`?`${e}-${n}`:e.replace(/url\(#([^)]+)\)/g,`url(#$1-${n})`),He=(e,t)=>{let n={};for(let[r,i]of Object.entries(e.attrs??{}))n[r]=Ve(i,r,t);return e.style&&(n.style=e.style),(0,c.h)(e.tag,n,e.children?.map(e=>He(e,t)))},Ue=(0,c.defineComponent)({name:`LanguageGlyph`,props:{icon:{type:Object,required:!0},size:{type:[Number,String],default:24}},setup(e){let t=(0,c.useId)().replace(/:/g,``);return()=>(0,c.h)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:e.icon.viewBox,width:e.size,height:e.size,...e.icon.attrs},e.icon.children.map(e=>He(e,t)))}}),We={"elm-mdi-icon":`_elm-mdi-icon_ihskx_1`},k=(0,c.defineComponent)({name:`ElmMdiIcon`,inheritAttrs:!1,props:{d:{type:String,required:!0},size:{type:String,default:`1em`},color:{type:String,default:`currentColor`},lightColor:{type:String,default:void 0},darkColor:{type:String,default:void 0}},setup(e,{attrs:t}){return()=>{let{class:n,style:r,...i}=t;return(0,c.createVNode)(`svg`,(0,c.mergeProps)({class:(0,d.clsx)(We[`elm-mdi-icon`],n),style:[{"--elmethis-scoped-color":e.lightColor??e.color,"--dark-color":e.darkColor??e.color},r],width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:e.color,xmlns:`http://www.w3.org/2000/svg`,focusable:`false`,role:`img`},i),[(0,c.createVNode)(`path`,{d:e.d},null)])}}}),Ge=(0,c.defineComponent)({name:`ElmLanguageIcon`,props:{size:{type:Number,default:24},language:{type:String,required:!0}},setup(e){return()=>{let t=(0,h.normalizeLanguage)(e.language);return t===`file`?(0,c.createVNode)(k,{d:m.mdiCodeTags,size:String(e.size)},null):(0,c.h)(Ue,{icon:h.languageIcons[t],size:e.size})}}}),Ke={"elm-shiki-highlighter":`_elm-shiki-highlighter_j5tas_1`},qe=(0,c.defineComponent)({name:`ElmShikiHighlighter`,inheritAttrs:!1,props:{code:{type:String,required:!0},language:{type:String,default:`txt`}},setup(e,{attrs:t}){let n=(0,c.ref)(``),r=async(e,t,r)=>{if(!e){r()&&(n.value=``);return}try{let i=await(0,g.codeToHtml)(e,{lang:t,themes:{dark:_.default,light:ee.default},defaultColor:!1,colorReplacements:{"#ffffff":`transparent`,"#121212":`transparent`}});r()&&(n.value=i)}catch{r()&&(n.value=`<pre>${e.replace(/</g,`&lt;`)}</pre>`)}};return(0,c.watch)([()=>e.code,()=>e.language],([e,t],n,i)=>{let a=!0;i(()=>{a=!1}),r(e,t,()=>a)},{immediate:!0}),()=>{let{class:e,...r}=t;return(0,c.createVNode)(`pre`,(0,c.mergeProps)({class:(0,d.clsx)(Ke[`elm-shiki-highlighter`],e),innerHTML:n.value},r),null)}}}),Je={"use-clipboard":`_use-clipboard_mb0qt_1`,"use-clipboard-icon-copied":`_use-clipboard-icon-copied_mb0qt_15`},Ye=e=>{let t=e.delay??1500,n=(0,f.useClipboard)({copiedDuring:t}),r=(0,f.useClipboardItems)({copiedDuring:t}),i=(0,c.computed)(()=>n.copied.value||r.copied.value),a=async()=>{let t=e.content;typeof t==`string`?await n.copy(t):await r.copy(t.map(e=>new ClipboardItem(e)))};return{copy:a,CopyButton:(0,c.defineComponent)({name:`CopyButton`,setup(){return()=>(0,c.createVNode)(`span`,{class:(0,d.clsx)(Je[`use-clipboard`],e.class),style:e.style,onClick:a},[(0,c.createVNode)(k,{class:(0,d.clsx)(i.value&&Je[`use-clipboard-icon-copied`]),d:i.value?m.mdiClipboardCheckOutline:m.mdiClipboardOutline,size:`1.25rem`},null)])}})}},Xe=(0,c.defineComponent)({name:`ElmCodeBlock`,props:{code:{type:String,required:!0},language:{type:String,default:`txt`},caption:{type:String,default:void 0}},setup(e,{slots:t}){let{CopyButton:n}=Ye({content:e.code});return()=>(0,c.createVNode)(`figure`,{class:(0,d.clsx)(O[`elm-code-block`])},[(0,c.createVNode)(`span`,{class:O[`language-icon`]},[(0,c.createVNode)(Ge,{language:e.language},null)]),(0,c.createVNode)(`span`,{class:O.caption},[(0,c.createVNode)(C,null,{default:()=>[e.caption||e.language,t.default?.()]})]),(0,c.createVNode)(`div`,{class:O[`copy-icon`]},[(0,c.h)(n)]),(0,c.createVNode)(`hr`,{class:O.divider},null),(0,c.createVNode)(`div`,{class:O.code},[(0,c.createVNode)(qe,{code:e.code,language:e.language},null)])])}}),A={"elm-audio-player":`_elm-audio-player_p7xym_1`,loading:`_loading_p7xym_34`,header:`_header_p7xym_40`,artwork:`_artwork_p7xym_46`,"artwork-error":`_artwork-error_p7xym_63`,meta:`_meta_p7xym_69`,title:`_title_p7xym_77`,artist:`_artist_p7xym_87`,equalizer:`_equalizer_p7xym_99`,playing:`_playing_p7xym_116`,"elm-eq":`_elm-eq_p7xym_1`,seekbar:`_seekbar_p7xym_151`,track:`_track_p7xym_167`,fill:`_fill_p7xym_176`,thumb:`_thumb_p7xym_189`,"hover-thumb":`_hover-thumb_p7xym_209`,"elm-pulse":`_elm-pulse_p7xym_1`,controls:`_controls_p7xym_248`,time:`_time_p7xym_254`,"time-current":`_time-current_p7xym_264`,"time-total":`_time-total_p7xym_269`,transport:`_transport_p7xym_273`,"icon-button":`_icon-button_p7xym_281`,"play-button":`_play-button_p7xym_312`,volume:`_volume_p7xym_359`,"volume-slider":`_volume-slider_p7xym_366`,errored:`_errored_p7xym_412`,"error-notice":`_error-notice_p7xym_421`,"error-message":`_error-message_p7xym_431`},Ze=e=>{(!Number.isFinite(e)||e<0)&&(e=0);let t=Math.floor(e),n=Math.floor(t/3600),r=Math.floor(t%3600/60),i=t%60,a=`${n>0?String(r).padStart(2,`0`):String(r)}:${String(i).padStart(2,`0`)}`;return n>0?`${n}:${a}`:a},Qe=e=>{let t=e.split(/[?#]/)[0].split(`/`).filter(Boolean).pop()??e;try{return decodeURIComponent(t)}catch{return t}},$e=(0,c.defineComponent)({name:`ElmAudioPlayer`,props:{src:{type:String,required:!0},title:{type:String,default:void 0},artist:{type:String,default:void 0},errorMessage:{type:String,default:`This audio couldn't be loaded.`},seekStep:{type:Number,default:10},loop:{type:Boolean,default:void 0},autoplay:{type:Boolean,default:void 0}},setup(e){let t=(0,c.ref)(null),n=(0,c.ref)(null),r=null,i=(0,c.ref)(!1),a=(0,c.ref)(!0),o=(0,c.ref)(!1),s=(0,c.ref)(0),l=(0,c.ref)(0),u=(0,c.ref)(1),f=(0,c.ref)(!1),p=(0,c.ref)(null),h=(0,c.computed)(()=>s.value>0?Math.min(1,l.value/s.value):0),g=(0,c.computed)(()=>f.value||u.value===0?m.mdiVolumeOff:u.value<.34?m.mdiVolumeLow:u.value<.67?m.mdiVolumeMedium:m.mdiVolumeHigh),_=(0,c.computed)(()=>e.title??Qe(e.src)),ee=()=>{if(r!=null)return;let e=()=>{t.value&&(l.value=t.value.currentTime),r=requestAnimationFrame(e)};r=requestAnimationFrame(e)},te=()=>{r!=null&&(cancelAnimationFrame(r),r=null)};(0,c.onBeforeUnmount)(te);let v=()=>{let e=t.value;e&&(e.paused?e.play().catch(()=>i.value=!1):e.pause())},y=e=>{let n=t.value;if(!n||!Number.isFinite(s.value)||s.value<=0)return;let r=Math.max(0,Math.min(s.value,e));n.currentTime=r,l.value=r},b=e=>{let t=n.value;if(!t)return 0;let r=t.getBoundingClientRect();return r.width===0?0:Math.max(0,Math.min(1,(e-r.left)/r.width))},ne=e=>{e.currentTarget.setPointerCapture(e.pointerId),y(b(e.clientX)*s.value)},re=e=>{let t=b(e.clientX);p.value=t,e.currentTarget.hasPointerCapture(e.pointerId)&&y(t*s.value)},ie=t=>{t.key===`ArrowRight`?(t.preventDefault(),y(l.value+e.seekStep)):t.key===`ArrowLeft`?(t.preventDefault(),y(l.value-e.seekStep)):t.key===`Home`?(t.preventDefault(),y(0)):t.key===`End`&&(t.preventDefault(),y(s.value))},ae=e=>{let n=t.value,r=Math.max(0,Math.min(1,e));n&&(n.volume=r,n.muted=r===0),u.value=r,f.value=r===0},oe=()=>{let e=t.value;if(!e)return;let n=!e.muted;e.muted=n,f.value=n};return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(A[`elm-audio-player`],i.value&&A.playing,a.value&&A.loading,o.value&&A.errored),style:{"--elmethis-scoped-progress":h.value,"--elmethis-scoped-hover":p.value??0}},[(0,c.createVNode)(`audio`,{ref:t,src:e.src,loop:e.loop,autoplay:e.autoplay,preload:`metadata`,onLoadedmetadata:()=>{let e=t.value;e&&(s.value=e.duration,u.value=e.volume,f.value=e.muted,a.value=!1)},onDurationchange:()=>{t.value&&(s.value=t.value.duration)},onCanplay:()=>a.value=!1,onWaiting:()=>a.value=!0,onPlaying:()=>a.value=!1,onTimeupdate:()=>{r==null&&t.value&&(l.value=t.value.currentTime)},onPlay:()=>{i.value=!0,ee()},onPause:()=>{i.value=!1,te()},onEnded:()=>{i.value=!1,te()},onVolumechange:()=>{let e=t.value;e&&(u.value=e.volume,f.value=e.muted)},onError:()=>{o.value=!0,a.value=!1}},null),(0,c.createVNode)(`div`,{class:A.header},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(A.artwork,o.value&&A[`artwork-error`]),"aria-hidden":`true`},[(0,c.createVNode)(k,{d:o.value?m.mdiAlertCircleOutline:m.mdiMusicNote,size:`1.25rem`},null)]),(0,c.createVNode)(`div`,{class:A.meta},[(0,c.createVNode)(`span`,{class:A.title,title:_.value},[_.value]),e.artist&&(0,c.createVNode)(`span`,{class:A.artist},[e.artist])]),(0,c.createVNode)(`span`,{class:A.equalizer,"aria-hidden":`true`},[(0,c.createVNode)(`i`,null,null),(0,c.createVNode)(`i`,null,null),(0,c.createVNode)(`i`,null,null),(0,c.createVNode)(`i`,null,null)])]),o.value?(0,c.createVNode)(`div`,{class:A[`error-notice`],role:`alert`},[(0,c.createVNode)(k,{d:m.mdiAlertCircleOutline,size:`1.25rem`},null),(0,c.createVNode)(`span`,{class:A[`error-message`]},[e.errorMessage])]):(0,c.createVNode)(c.Fragment,null,[(0,c.createVNode)(`div`,{ref:n,class:A.seekbar,role:`slider`,tabindex:0,"aria-label":`Seek`,"aria-valuemin":0,"aria-valuemax":Math.round(s.value)||0,"aria-valuenow":Math.round(l.value),"aria-valuetext":`${Ze(l.value)} of ${Ze(s.value)}`,onPointerdown:ne,onPointermove:re,onPointerleave:()=>p.value=null,onKeydown:ie},[(0,c.createVNode)(`div`,{class:A.track,"aria-hidden":`true`},[(0,c.createVNode)(`div`,{class:A.fill},null)]),(0,c.createVNode)(`span`,{class:A[`hover-thumb`],"aria-hidden":`true`},null),(0,c.createVNode)(`span`,{class:A.thumb,"aria-hidden":`true`},null)]),(0,c.createVNode)(`div`,{class:A.controls},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(A.time,A[`time-current`])},[Ze(l.value)]),(0,c.createVNode)(`div`,{class:A.transport},[(0,c.createVNode)(`button`,{type:`button`,class:A[`icon-button`],onClick:()=>y(l.value-e.seekStep),"aria-label":`Back ${e.seekStep} seconds`},[(0,c.createVNode)(k,{d:m.mdiRewind10,size:`1.25rem`},null)]),(0,c.createVNode)(`button`,{type:`button`,class:A[`play-button`],onClick:v,"aria-label":i.value?`Pause`:`Play`,"aria-pressed":i.value},[(0,c.createVNode)(k,{d:i.value?m.mdiPause:m.mdiPlay,size:`1.5rem`},null)]),(0,c.createVNode)(`button`,{type:`button`,class:A[`icon-button`],onClick:()=>y(l.value+e.seekStep),"aria-label":`Forward ${e.seekStep} seconds`},[(0,c.createVNode)(k,{d:m.mdiFastForward10,size:`1.25rem`},null)])]),(0,c.createVNode)(`div`,{class:A.volume},[(0,c.createVNode)(`button`,{type:`button`,class:A[`icon-button`],onClick:oe,"aria-label":f.value?`Unmute`:`Mute`,"aria-pressed":f.value},[(0,c.createVNode)(k,{d:g.value,size:`1.25rem`},null)]),(0,c.createVNode)(`input`,{class:A[`volume-slider`],type:`range`,min:0,max:1,step:.01,value:f.value?0:u.value,"aria-label":`Volume`,onInput:e=>ae(e.target.valueAsNumber),style:{"--elmethis-scoped-volume":f.value?0:u.value}},null)]),(0,c.createVNode)(`span`,{class:(0,d.clsx)(A.time,A[`time-total`])},[Ze(s.value)])])])])}}),j={"elm-block-image":`_elm-block-image_kwjx3_1`,"image-container":`_image-container_kwjx3_12`,image:`_image_kwjx3_12`,fallback:`_fallback_kwjx3_36`,"caption-box":`_caption-box_kwjx3_46`,"caption-icon":`_caption-icon_kwjx3_57`},et={"elm-rectangle-wave":`_elm-rectangle-wave_70gad_21`,wave:`_wave_70gad_1`},tt=(0,c.defineComponent)({name:`ElmRectangleWave`,setup(){return()=>(0,c.createVNode)(`div`,{"aria-hidden":`true`,class:(0,d.clsx)(et[`elm-rectangle-wave`])},null)}}),nt={"elm-modal":`_elm-modal_12j1m_1`,shown:`_shown_12j1m_18`},rt=(0,c.defineComponent)({name:`ElmModal`,inheritAttrs:!1,props:{isOpen:{type:Boolean,default:void 0},delay:{type:Number,default:200},onClose:{type:Function,default:void 0}},setup(e,{attrs:t,slots:n}){let r=(0,c.ref)(null),i=(0,c.ref)(!1),a,o=(e,t)=>{let n=r.value;if(n)if(a!==void 0&&(clearTimeout(a),a=void 0),e)n.showModal(),i.value=!0;else{if(!i.value)return;i.value=!1,a=setTimeout(()=>{r.value?.close()},t)}};(0,c.onMounted)(()=>o(e.isOpen,e.delay)),(0,c.watch)([()=>e.isOpen,()=>e.delay],([e,t])=>o(e,t)),(0,c.onBeforeUnmount)(()=>{a!==void 0&&clearTimeout(a)});let s=t=>{r.value&&e.onClose?.(t,r.value)};return()=>{let{class:a,style:o,...l}=t;return(0,c.createVNode)(`dialog`,(0,c.mergeProps)({ref:r,class:(0,d.clsx)(nt[`elm-modal`],i.value&&nt.shown,a),onClick:s,style:[{"--elmethis-scoped-modal-delay":`${e.delay}ms`},o]},{closedby:`none`},l),[(0,c.createVNode)(`div`,{onClick:e=>e.stopPropagation()},[n.default?.()])])}}}),it=(e={})=>{let t=(0,c.ref)(!1),n=()=>{t.value=!0},r=()=>{t.value=!1};return{Modal:(0,c.defineComponent)({name:`Modal`,setup(n,{slots:i}){return()=>(0,c.createVNode)(rt,{isOpen:t.value,delay:e.delay,onClose:r},{default:()=>[i.default?.()]})}}),isOpen:t,show:n,hide:r,toggle:()=>{t.value=!t.value}}},at=(0,c.defineComponent)({name:`ElmBlockImage`,props:{src:{type:String,required:!0},srcSet:{type:String,default:void 0},sizes:{type:String,default:void 0},alt:{type:String,default:void 0},enableModal:{type:Boolean,default:void 0},caption:{type:String,default:void 0},width:{type:[Number,String],default:void 0},height:{type:[Number,String],default:void 0}},setup(e){let t=(0,c.ref)(!0),{Modal:n,isOpen:r,show:i,hide:a}=it(),o=(0,c.ref)(null),s=()=>{o.value?.decode().then(()=>t.value=!1,()=>{})};(0,c.onMounted)(s),(0,c.watch)(()=>e.src,s);let l=()=>{(e.enableModal??!0)&&!t.value&&i()},u=()=>e.enableModal??!0,f=n=>(0,c.createVNode)(`img`,(0,c.mergeProps)({ref:n?void 0:o,class:j.image,src:e.src,alt:e.alt??e.caption??`Image`,srcset:n?void 0:e.srcSet,sizes:n?void 0:e.sizes,width:e.width,height:e.height,loading:n?`lazy`:void 0,onLoad:()=>t.value=!1,onClick:n?()=>a():void 0,style:{"--elmethis-scoped-opacity":t.value?.01:1,"--elmethis-scoped-cursor":u()?r.value?`zoom-out`:`zoom-in`:`default`,"--elmethis-scoped-aspect-ratio":e.width&&e.height?`${e.width} / ${e.height}`:`auto`}},{fetchpriority:n?`low`:`auto`}),null);return()=>(0,c.createVNode)(`figure`,{class:(0,d.clsx)(j[`elm-block-image`])},[(0,c.createVNode)(`div`,{class:j[`image-container`],style:{"--elmethis-scoped-opacity":t.value?1:.01},onClick:l},[f(!1),(0,c.createVNode)(`div`,{class:j.fallback},[(0,c.createVNode)(tt,null,null)])]),e.caption&&(0,c.createVNode)(`figcaption`,{class:j[`caption-box`],style:{"--elmethis-scoped-opacity":t.value?.01:1}},[(0,c.createVNode)(`span`,{class:j[`caption-icon`]},[(0,c.createVNode)(k,{d:m.mdiMessageImageOutline,size:`1.25rem`},null)]),(0,c.createVNode)(C,{size:`1rem`},{default:()=>[e.caption]})]),(0,c.h)(n,null,{default:()=>r.value?f(!0):null})])}}),ot={"elm-file":`_elm-file_1oen6_1`,"file-size":`_file-size_1oen6_13`,"download-icon":`_download-icon_1oen6_18`};function st(e){let t=e.split(/[?#]/)[0].split(`/`).filter(Boolean);return t.length>0?t[t.length-1]:null}var ct=(0,c.defineComponent)({name:`ElmFile`,props:{name:{type:String,default:void 0},src:{type:String,required:!0},filesize:{type:String,default:void 0}},setup(e){let t=async()=>{let t;try{let n=await fetch(e.src);if(!n.ok)throw Error(`Failed to download file`);let r=await n.blob();t=document.createElement(`a`),t.href=URL.createObjectURL(r),t.download=e.name??st(e.src)??`file`,t.click()}catch(e){console.error(`ERROR:`,e)}finally{t&&URL.revokeObjectURL(t.href)}};return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(ot[`elm-file`])},[(0,c.createVNode)(`div`,null,[(0,c.createVNode)(k,{d:m.mdiFile,size:`1.25rem`},null)]),(0,c.createVNode)(`div`,null,[(0,c.createVNode)(C,null,{default:()=>[e.name??st(e.src)]})]),(0,c.createVNode)(`div`,{class:ot[`file-size`]},[(0,c.createVNode)(C,null,{default:()=>[e.filesize]})]),(0,c.createVNode)(`div`,{class:ot[`download-icon`],onClick:t},[(0,c.createVNode)(k,{d:m.mdiDownload,size:`1.25rem`},null)])])}}),M={"elm-bookmark":`_elm-bookmark_67069_1`,container:`_container_67069_24`,image:`_image_67069_36`,content:`_content_67069_56`,title:`_title_67069_72`,description:`_description_67069_76`,link:`_link_67069_81`},lt={visibility:`hidden`,width:`0`},ut=(0,c.defineComponent)({name:`ElmBookmark`,props:{title:{type:String,default:void 0},description:{type:String,default:void 0},image:{type:String,default:void 0},url:{type:String,default:void 0},favicon:{type:String,default:void 0}},setup(e){let t=(0,c.ref)(!1);return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(M[`elm-bookmark`])},[(0,c.createVNode)(`a`,{class:M.container,href:e.url,target:`_blank`,rel:`noopener noreferrer`},[(0,c.createVNode)(`img`,{class:M.image,src:e.image,alt:`OGP Image`,onError:()=>t.value=!0,style:t.value||e.image==null?lt:{}},null),(0,c.createVNode)(`div`,{class:M.content},[(0,c.createVNode)(`div`,{class:M.title},[(0,c.createVNode)(C,{bold:!0},{default:()=>[e.title]})]),(0,c.createVNode)(`div`,{class:M.description},[(0,c.createVNode)(C,{size:`0.75rem`},{default:()=>[e.description]})]),(0,c.createVNode)(`div`,{class:M.link},[e.favicon?(0,c.createVNode)(S,{src:e.favicon},null):(0,c.createVNode)(k,{d:m.mdiLinkVariant,color:`var(--elmethis-color-accent-info)`},null),(0,c.createVNode)(C,{size:`0.75rem`},{default:()=>[e.url]})])])])])}}),N={"elm-toggle":`_elm-toggle_d59g8_1`,open:`_open_d59g8_9`,summary:`_summary_d59g8_14`,"summary-left":`_summary-left_d59g8_29`,divider:`_divider_d59g8_36`,chevron:`_chevron_d59g8_50`,cross:`_cross_d59g8_63`,border:`_border_d59g8_77`,content:`_content_d59g8_85`},dt=(0,c.defineComponent)({name:`ElmToggle`,props:{summary:{type:String,default:void 0},defaultIsOpen:{type:Boolean,default:!1},isOpen:{type:Boolean,default:void 0},monochrome:{type:Boolean,default:!1}},emits:[`update:isOpen`],setup(e,{emit:t,slots:n}){let r=ne({props:e,key:`isOpen`,emit:t,defaultValue:e.defaultIsOpen??!1});return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(N[`elm-toggle`],r.value&&N.open)},[(0,c.createVNode)(`div`,{class:N.summary,onClick:e=>{e.preventDefault(),r.value=!r.value}},[(0,c.createVNode)(`div`,{class:N[`summary-left`]},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(N.chevron,r.value&&N.open)},[(0,c.createVNode)(k,{d:m.mdiChevronRight,color:e.monochrome?`var(--elmethis-color-neutral-weak)`:`var(--elmethis-color-primary)`,size:`1rem`},null)]),(0,c.createVNode)(`div`,null,[e.summary==null?n.summary?.():(0,c.createVNode)(C,null,{default:()=>[e.summary]})])]),(0,c.createVNode)(`hr`,{class:N.divider},null),(0,c.createVNode)(`span`,{class:(0,d.clsx)(N.cross,r.value&&N.open)},[(0,c.createVNode)(k,{d:m.mdiPlus,size:`1rem`,color:e.monochrome?`var(--elmethis-color-neutral-weak)`:r.value?`var(--elmethis-color-accent-error)`:`var(--elmethis-color-primary)`},null)])]),(0,c.createVNode)(`div`,{class:N.border},null),(0,c.createVNode)(`div`,{class:(0,d.clsx)(N.content,r.value&&N.open)},[n.default?.()])])}}),P={"elm-block-quote":`_elm-block-quote_lqbme_1`,body:`_body_lqbme_20`,icon:`_icon_lqbme_25`,"icon-top-left":`_icon-top-left_lqbme_30`,"icon-bottom-right":`_icon-bottom-right_lqbme_34`},ft=(0,c.defineComponent)({name:`ElmBlockQuote`,setup(e,{slots:t}){return()=>(0,c.createVNode)(`blockquote`,{class:(0,d.clsx)(P[`elm-block-quote`],x.text)},[(0,c.createVNode)(`div`,{class:(0,d.clsx)(P.icon,P[`icon-top-left`])},[(0,c.createVNode)(k,{d:m.mdiFormatQuoteOpen},null)]),(0,c.createVNode)(`div`,{class:P.body},[t.default?.()]),(0,c.createVNode)(`div`,{class:(0,d.clsx)(P.icon,P[`icon-bottom-right`])},[(0,c.createVNode)(k,{d:m.mdiFormatQuoteClose},null)])])}}),pt={"elm-callout":`_elm-callout_1xydl_1`,header:`_header_1xydl_27`,content:`_content_1xydl_36`,icon:`_icon_1xydl_40`,note:`_note_1xydl_45`,tip:`_tip_1xydl_49`,important:`_important_1xydl_53`,warning:`_warning_1xydl_57`,caution:`_caution_1xydl_61`},mt=Object.freeze({note:m.mdiInformation,tip:m.mdiLightbulbOn,important:m.mdiShieldAlert,warning:m.mdiAlert,caution:m.mdiAlertOctagram}),ht=(0,c.defineComponent)({name:`ElmCallout`,props:{type:{type:String,default:`note`}},setup(e,{slots:t}){return()=>(0,c.createVNode)(`aside`,{class:(0,d.clsx)(pt[`elm-callout`],pt[e.type])},[(0,c.createVNode)(`div`,{class:pt.header},[(0,c.createVNode)(k,{class:pt.icon,d:mt[e.type],size:`1.25rem`},null),(0,c.createVNode)(`span`,null,[e.type])]),(0,c.createVNode)(`div`,{class:pt.content},[t.default?.()])])}}),gt={"elm-divider":`_elm-divider_8xkqn_1`},_t=(0,c.defineComponent)({name:`ElmDivider`,inheritAttrs:!1,setup(e,{attrs:t}){return()=>{let{class:e,...n}=t;return(0,c.createVNode)(`hr`,(0,c.mergeProps)({class:(0,d.clsx)(gt[`elm-divider`],e)},n),null)}}}),vt={"elm-list":`_elm-list_n8430_1`,bulleted:`_bulleted_n8430_9`,numbered:`_numbered_n8430_58`},yt=(0,c.defineComponent)({name:`ElmList`,props:{listStyle:{type:String,default:`unordered`}},setup(e,{slots:t}){return()=>e.listStyle===`ordered`?(0,c.createVNode)(`ol`,{class:(0,d.clsx)(x.text,vt[`elm-list`],vt.numbered)},[t.default?.()]):(0,c.createVNode)(`ul`,{class:(0,d.clsx)(x.text,vt[`elm-list`],vt.bulleted)},[t.default?.()])}}),F={"elm-table-frame":`_elm-table-frame_wl7v3_3`,"elm-table-scroll":`_elm-table-scroll_wl7v3_50`,"elm-table":`_elm-table_wl7v3_3`,caption:`_caption_wl7v3_68`,"caption-inner":`_caption-inner_wl7v3_78`,spacing:`_spacing_wl7v3_85`,"sticky-row-header":`_sticky-row-header_wl7v3_96`},bt=Symbol(`elm.table.HasRowHeader`),xt=Symbol(`elm.table.Section`),St=(0,c.defineComponent)({name:`ElmTable`,inheritAttrs:!1,props:{caption:{type:String,default:void 0},hasRowHeader:{type:Boolean,default:!1}},setup(e,{attrs:t,slots:n}){(0,c.provide)(bt,(0,c.computed)(()=>e.hasRowHeader));let r=(0,c.ref)(null),i=(0,c.ref)(!1),a=(0,c.ref)(!0),o=(0,c.ref)(!0),s=()=>{let e=r.value;if(e==null)return;let t=e.scrollWidth-e.clientWidth;i.value=t>1,a.value=e.scrollLeft<=1,o.value=e.scrollLeft>=t-1},l=null;return(0,c.onMounted)(()=>{let e=r.value;e!=null&&(s(),e.addEventListener(`scroll`,s,{passive:!0}),typeof ResizeObserver<`u`&&(l=new ResizeObserver(s),l.observe(e)))}),(0,c.onBeforeUnmount)(()=>{r.value?.removeEventListener(`scroll`,s),l?.disconnect()}),()=>{let{class:s,...l}=t;return(0,c.createVNode)(`div`,{class:F[`elm-table-frame`],"data-overflow-start":i.value&&!a.value?``:void 0,"data-overflow-end":i.value&&!o.value?``:void 0},[(0,c.createVNode)(`div`,{ref:r,class:F[`elm-table-scroll`],tabindex:i.value?0:void 0,role:i.value&&e.caption!=null?`region`:void 0,"aria-label":i.value&&e.caption!=null?e.caption:void 0},[(0,c.createVNode)(`table`,(0,c.mergeProps)({class:(0,d.clsx)(F[`elm-table`],x.text,e.hasRowHeader&&F[`sticky-row-header`],s)},l),[e.caption&&(0,c.createVNode)(`caption`,null,[(0,c.createVNode)(`span`,{class:F.caption},[(0,c.createVNode)(`span`,{class:F.spacing},null),(0,c.createVNode)(`span`,{class:F[`caption-inner`]},[(0,c.createVNode)(C,null,{default:()=>[e.caption]})]),(0,c.createVNode)(`span`,{class:F.spacing},null)])]),n.default?.()])])])}}}),Ct=(0,c.defineComponent)({name:`ElmTableBody`,setup(e,{slots:t}){return(0,c.provide)(xt,`body`),()=>(0,c.createVNode)(`tbody`,null,[t.default?.()])}}),wt={"elm-table-cell":`_elm-table-cell_1a21f_1`,td:`_td_1a21f_20`,th:`_th_1a21f_25`},Tt=(0,c.defineComponent)({name:`ElmTableCell`,inheritAttrs:!1,props:{isHeader:{type:Boolean,default:!1},columnIndex:{type:Number,default:void 0},text:{type:String,default:void 0},scope:{type:String,default:void 0}},setup(e,{attrs:t,slots:n}){let r=(0,c.inject)(xt,`body`),i=(0,c.inject)(bt,(0,c.ref)(!1));return()=>{let{class:a,style:o,...s}=t,l=r===`head`,u=!l&&!e.isHeader&&e.columnIndex===0&&i.value,f=l||e.isHeader||u,p=e.scope??(l?`col`:u?`row`:void 0),m=e.text==null?n.default?.():e.text;return f?(0,c.createVNode)(`th`,(0,c.mergeProps)({class:(0,d.clsx)(wt[`elm-table-cell`],wt.th,a),style:o,scope:p},s),[m]):(0,c.createVNode)(`td`,(0,c.mergeProps)({class:(0,d.clsx)(wt[`elm-table-cell`],wt.td,a),style:o},s),[m])}}}),Et={"elm-table-header":`_elm-table-header_jhft7_1`},Dt=(0,c.defineComponent)({name:`ElmTableHeader`,setup(e,{slots:t}){return(0,c.provide)(xt,`head`),()=>(0,c.createVNode)(`thead`,{class:(0,d.clsx)(Et[`elm-table-header`])},[t.default?.()])}}),Ot={"elm-table-row":`_elm-table-row_mkm0q_1`},kt=(0,c.defineComponent)({name:`ElmTableRow`,setup(e,{slots:t}){return()=>(0,c.createVNode)(`tr`,{class:(0,d.clsx)(Ot[`elm-table-row`])},[t.default?.()])}}),At={"elm-unsupported-block":`_elm-unsupported-block_xdddx_1`,message:`_message_xdddx_14`,icon:`_icon_xdddx_21`,details:`_details_xdddx_25`},jt=(0,c.defineComponent)({name:`ElmUnsupportedBlock`,inheritAttrs:!1,props:{details:{type:String,default:void 0}},setup(e,{attrs:t}){return()=>{let{class:n,...r}=t;return(0,c.createVNode)(`div`,(0,c.mergeProps)({class:(0,d.clsx)(At[`elm-unsupported-block`],n)},r),[(0,c.createVNode)(`div`,{class:At.message},[(0,c.createVNode)(`svg`,{viewBox:`0 0 24 24`,width:`1.25rem`,height:`1.25rem`,class:At.icon},[(0,c.createVNode)(`path`,{d:`M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z`},null)]),(0,c.createVNode)(C,null,{default:()=>[(0,c.createTextVNode)(`UNSUPPORTED BLOCK`)]})]),e.details&&(0,c.createVNode)(`div`,{class:At.details},[(0,c.createVNode)(C,null,{default:()=>[e.details]})])])}}});function I(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!(0,c.isVNode)(e)}function Mt(e){return Array.isArray(e)?e.filter(e=>typeof e==`string`):[]}var Nt={boxSizing:`content-box`,paddingBlock:`0.25rem`,width:`100%`,display:`flex`,flexDirection:`row`,gap:`0.25rem`,justifyContent:`space-around`,overflowX:`auto`},Pt=Oe.extend(T(h.RichTextApi,({props:e,resolve:t})=>{let n=t(e.text),r=e.decoration??[];return r.includes(`katex`)?(0,c.createVNode)(Be,{expression:n,block:!1},null):(0,c.createVNode)(C,{bold:r.includes(`bold`),italic:r.includes(`italic`),underline:r.includes(`underline`),strikethrough:r.includes(`strikethrough`),code:r.includes(`code`),color:e.color,ruby:e.ruby},I(n)?n:{default:()=>[n]})}),T(h.LinkTextApi,({props:e,resolve:t})=>{let n;return(0,c.createVNode)(C,{href:e.href,favicon:e.favicon},I(n=t(e.text))?n:{default:()=>[n]})}),T(h.IconApi,({props:e,resolve:t})=>(0,c.createVNode)(S,{src:t(e.src),alt:e.alt},null)),T(h.ColumnApi,({props:e,index:t,childRefs:n,renderChild:r})=>(0,c.createVNode)(`div`,{style:{display:`flex`,flexDirection:`column`,justifyContent:Ce[e.justify??`start`],alignItems:we[e.align??`stretch`],flex:e.widthRatio==null?void 0:String(e.widthRatio),boxSizing:`border-box`,padding:`0.125rem`,...E(t)}},[n(e.children).map(({id:e,path:t},n)=>(0,c.createVNode)(`span`,{key:`${e}:${n}`},[r(e,t,n)]))])),T(h.ColumnListApi,({props:e,index:t,childRefs:n,renderChild:r})=>(0,c.createVNode)(`div`,{style:{...Nt,...E(t)}},[n(e.children).map(({id:e,path:t},n)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${n}`},[r(e,t,n)]))])),T(h.HeadingApi,({props:e,index:t,childRefs:n,renderChild:r})=>{let i;return(0,c.createVNode)(pe,{level:e.level,style:E(t)},I(i=n(e.children).map(({id:e,path:t},n)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${n}`},[r(e,t,n)])))?i:{default:()=>[i]})}),T(h.ParagraphApi,({props:e,index:t,childRefs:n,renderChild:r})=>{let i;return(0,c.createVNode)(_e,{color:e.color,backgroundColor:e.backgroundColor,style:E(t)},I(i=n(e.children).map(({id:e,path:t},n)=>(0,c.createVNode)(`span`,{key:`${e}:${n}`},[r(e,t,n)])))?i:{default:()=>[i]})}),T(h.ListApi,({props:e,index:t,childRefs:n,renderChild:r})=>{let i;return(0,c.createVNode)(yt,{listStyle:e.style??`unordered`,style:E(t)},I(i=n(e.children).map(({id:e,path:t},n)=>(0,c.createVNode)(`li`,{key:`${e}:${n}`},[r(e,t,n)])))?i:{default:()=>[i]})}),T(h.ListItemApi,({props:e,childRefs:t,renderChild:n})=>(0,c.createVNode)(c.Fragment,null,[t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)]))])),T(h.BlockQuoteApi,({props:e,index:t,childRefs:n,renderChild:r})=>{let i;return(0,c.createVNode)(ft,(0,c.mergeProps)({cite:e.cite},{style:E(t)}),I(i=n(e.children).map(({id:e,path:t},n)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${n}`},[r(e,t,n)])))?i:{default:()=>[i]})}),T(h.CalloutApi,({props:e,index:t,childRefs:n,renderChild:r})=>{let i;return(0,c.createVNode)(ht,{type:e.type,style:E(t)},I(i=n(e.children).map(({id:e,path:t},n)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${n}`},[r(e,t,n)])))?i:{default:()=>[i]})}),T(h.DividerApi,({index:e})=>(0,c.createVNode)(_t,{style:E(e)},null)),T(h.ToggleApi,({props:e,index:t,childRefs:n,renderChild:r})=>(0,c.createVNode)(dt,{style:E(t)},{summary:()=>n(e.summary).map(({id:e,path:t},n)=>(0,c.createVNode)(`span`,{key:`${e}:${n}`},[r(e,t,n)])),default:()=>n(e.children).map(({id:e,path:t},n)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${n}`},[r(e,t,n)]))})),T(h.BookmarkApi,({props:e,index:t,resolve:n})=>(0,c.createVNode)(ut,{url:n(e.url),title:e.title?n(e.title):void 0,description:e.description?n(e.description):void 0,image:e.image?n(e.image):void 0,style:E(t)},null)),T(h.FileApi,({props:e,index:t,resolve:n})=>(0,c.createVNode)(ct,{src:n(e.src),name:e.name?n(e.name):void 0,style:E(t)},null)),T(h.AudioApi,({props:e,index:t,resolve:n})=>(0,c.createVNode)($e,{src:n(e.src),title:e.title?n(e.title):void 0,artist:e.artist?n(e.artist):void 0,seekStep:e.seekStep,loop:e.loop,autoplay:e.autoPlay,style:E(t)},null)),T(h.VideoApi,({props:e,index:t,resolve:n})=>{let r=e.caption?n(e.caption):void 0;return(0,c.createVNode)(`figure`,{style:{...E(t),margin:0}},[(0,c.createVNode)(`video`,{src:n(e.src),poster:e.poster?n(e.poster):void 0,title:e.title?n(e.title):void 0,width:e.width,height:e.height,loop:e.loop,autoplay:e.autoPlay,muted:e.muted,controls:!0,style:{maxWidth:`100%`,height:`auto`}},null),r?(0,c.createVNode)(`figcaption`,null,[r]):null])}),T(h.BlockImageApi,({props:e,index:t,resolve:n})=>(0,c.createVNode)(at,{src:n(e.src),alt:e.alt?n(e.alt):void 0,width:e.width,height:e.height,srcSet:e.srcset?n(e.srcset):void 0,sizes:e.sizes?n(e.sizes):void 0,caption:e.caption?n(e.caption):void 0,enableModal:!0,style:E(t)},null)),T(h.CodeBlockApi,({props:e,index:t,resolve:n})=>(0,c.createVNode)(Xe,{code:n(e.code),language:e.language?n(e.language):void 0,caption:e.caption?n(e.caption):void 0,style:E(t)},null)),T(h.KatexApi,({props:e,index:t,resolve:n})=>(0,c.createVNode)(Be,{expression:n(e.expression),block:!0,style:E(t)},null)),T(h.MermaidApi,({props:e,index:t,resolve:n})=>(0,c.createVNode)(Xe,{code:n(e.code),language:`mermaid`,style:E(t)},null)),T(h.ContentTabApi,()=>null),T(h.ContentTabsApi,({props:e,index:t,surface:n,renderChild:r})=>{let i,a=(Array.isArray(e.children)?e.children:[]).map(e=>{let t=n.componentsModel.get(e);return{tabId:e,labelIds:Mt(t?.properties.label),contentIds:Mt(t?.properties.content)}});return(0,c.createVNode)(ae,{defaultValue:`0`,style:E(t)},{default:()=>[(0,c.createVNode)(oe,null,I(i=a.map(({tabId:e,labelIds:t},n)=>{let i;return(0,c.createVNode)(se,{key:e,value:String(n)},I(i=t.map((e,t)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${t}`},[r(e,`/`,t)])))?i:{default:()=>[i]})}))?i:{default:()=>[i]}),a.map(({tabId:e,contentIds:t},n)=>{let i;return(0,c.createVNode)(ce,{key:e,value:String(n)},I(i=t.map((e,t)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${t}`},[r(e,`/`,t)])))?i:{default:()=>[i]})})]})}),T(h.TableApi,({props:e,index:t,childRefs:n,renderChild:r})=>{let i,a;return(0,c.createVNode)(St,{caption:e.caption?String(e.caption):void 0,hasRowHeader:e.hasRowHeader,style:E(t)},{default:()=>[e.header&&e.header.length>0&&(0,c.createVNode)(Dt,null,I(i=n(e.header).map(({id:e,path:t},n)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${n}`},[r(e,t,n)])))?i:{default:()=>[i]}),(0,c.createVNode)(Ct,null,I(a=n(e.body).map(({id:e,path:t},n)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${n}`},[r(e,t,n)])))?a:{default:()=>[a]})]})}),T(h.TableRowApi,({props:e,childRefs:t,renderChild:n})=>{let r;return(0,c.createVNode)(kt,null,I(r=t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)])))?r:{default:()=>[r]})}),T(h.TableCellApi,({props:e,index:t,childRefs:n,renderChild:r})=>{let i;return(0,c.createVNode)(Tt,{isHeader:e.isHeader,columnIndex:t},I(i=n(e.children).map(({id:e,path:t},n)=>(0,c.createVNode)(`span`,{key:`${e}:${n}`},[r(e,t,n)])))?i:{default:()=>[i]})}),T(h.UnsupportedApi,({props:e,index:t})=>(0,c.createVNode)(jt,{details:e.details?`Unsupported component type: ${String(e.details)}`:`Unsupported component type`,style:E(t)},null))),Ft={"elm-html":`_elm-html_339tp_1`},It=e=>{let t=[],n=0,r,i=0;for(let a=0;a<e.length;a++){let o=e[a];if(r){o===`\\`?a++:o===r&&(r=void 0);continue}o===`"`||o===`'`?r=o:o===`(`?n++:o===`)`?n=Math.max(0,n-1):o===`;`&&n===0&&(t.push(e.slice(i,a)),i=a+1)}return t.push(e.slice(i)),t},Lt=e=>{let t={};for(let n of It(e)){let e=n.indexOf(`:`);if(e===-1)continue;let r=n.slice(0,e).trim(),i=n.slice(e+1).trim();if(!r||!i)continue;let a=r.startsWith(`--`)?r:r.replace(/-([a-z])/g,(e,t)=>t.toUpperCase());t[a]=i}return t},Rt=e=>{if(e!==void 0)return typeof e==`string`?Lt(e):(0,c.normalizeStyle)(e)},zt=(0,c.defineComponent)({name:`ElmHtml`,inheritAttrs:!1,props:{html:{type:String,required:!0},autoHeight:{type:Boolean,default:!0},sandbox:{type:String,default:void 0},height:{type:[Number,String],default:void 0},title:{type:String,default:void 0}},setup(e,{attrs:t}){let n=(0,c.ref)(null),r=(0,c.ref)(void 0);(0,c.watch)(()=>[e.html,e.autoHeight],([,e])=>{e&&(r.value=void 0)},{flush:`pre`});let i,a=e=>{let t=n.value;if(!t)return;let a,o=()=>{let e=t.contentDocument?.documentElement;e&&(r.value=e.scrollHeight)},s=()=>{let e=t.contentDocument?.documentElement;e&&(a?.disconnect(),a=new ResizeObserver(o),a.observe(e))},c=()=>{e&&(o(),s())};t.addEventListener(`load`,c),i=()=>{t.removeEventListener(`load`,c),a?.disconnect()}};return(0,c.onMounted)(()=>a(e.autoHeight)),(0,c.watch)(()=>[e.html,e.autoHeight],([,e])=>{i?.(),a(e)},{flush:`post`}),(0,c.onBeforeUnmount)(()=>i?.()),()=>{let{class:i,style:a,src:o,srcDoc:s,srcdoc:l,...u}=t,f=Rt(a),p=f?.height,m=new Set(e.sandbox?.split(/\s+/).filter(Boolean)??[]);if([...m].some(e=>e.toLowerCase()===`allow-scripts`))for(let e of m)e.toLowerCase()===`allow-same-origin`&&m.delete(e);else e.autoHeight&&m.add(`allow-same-origin`);let h=[...m].join(` `);return(0,c.createVNode)(`iframe`,(0,c.mergeProps)({key:String(e.autoHeight),ref:n,title:e.title??`Embedded HTML content`,class:(0,d.clsx)(Ft[`elm-html`],i),style:e.autoHeight?{...f,height:r.value===void 0?p:`${r.value}px`}:f,height:e.autoHeight?r.value===void 0&&p===void 0?e.height:void 0:e.height},u,{srcdoc:e.html,sandbox:h}),null)}}}),L={"elm-html-viewer":`_elm-html-viewer_1gua5_1`,header:`_header_1gua5_16`,"icon-button":`_icon-button_1gua5_24`,divider:`_divider_1gua5_50`,content:`_content_1gua5_58`},Bt=(0,c.defineComponent)({name:`ElmHtmlViewer`,props:{html:{type:String,required:!0},filename:{type:String,default:void 0},sandbox:{type:String,default:void 0},autoHeight:{type:Boolean,default:void 0}},setup(e){let t=()=>{let t;try{let n=`<!doctype html>
1
+ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.create,t=Object.defineProperty,n=Object.getOwnPropertyDescriptor,r=Object.getOwnPropertyNames,i=Object.getPrototypeOf,a=Object.prototype.hasOwnProperty,o=(e,i,o,s)=>{if(i&&typeof i==`object`||typeof i==`function`)for(var c=r(i),l=0,u=c.length,d;l<u;l++)d=c[l],!a.call(e,d)&&d!==o&&t(e,d,{get:(e=>i[e]).bind(null,d),enumerable:!(s=n(i,d))||s.enumerable});return e},s=(n,r,a)=>(a=n==null?{}:e(i(n)),o(r||!n||!n.__esModule?t(a,`default`,{value:n,enumerable:!0}):a,n));require(`@elmethis/core/tokens.css`);let c=require(`vue`),l=require(`@a2ui/web_core/v0_9`),u=require(`@a2ui/web_core/v0_9/basic_catalog`),d=require(`clsx`),f=require(`@vueuse/core`);require(`zod`);let p=require(`katex`),m=require(`@mdi/js`),h=require(`@elmethis/core`),g=require(`shiki`),_=require(`@46ki75/ikuma-theme/dark`);_=s(_);let v=require(`@46ki75/ikuma-theme/light`);v=s(v);let ee=require(`marked`);var y={"elm-tabs":`_elm-tabs_whoym_1`,"tab-container":`_tab-container_whoym_13`,tab:`_tab_whoym_13`,active:`_active_whoym_41`,"tab-content":`_tab-content_whoym_52`,"tab-content-inner":`_tab-content-inner_whoym_57`},b={"elm-collapse":`_elm-collapse_12wiu_1`,row:`_row_12wiu_5`,open:`_open_12wiu_11`,column:`_column_12wiu_16`,both:`_both_12wiu_27`,inner:`_inner_12wiu_44`},x=(0,c.defineComponent)({name:`ElmCollapse`,props:{isOpen:{type:Boolean,default:void 0},direction:{type:String,default:`row`},transitionTimingFunction:{type:String,default:`ease-in-out`}},setup(e,{slots:t}){return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(b[`elm-collapse`],e.isOpen&&b.open,e.direction===`row`&&b.row,e.direction===`column`&&b.column,e.direction===`both`&&b.both),style:{"--elmethis-scoped-transition-timing-function":e.transitionTimingFunction}},[(0,c.createVNode)(`div`,{class:b.inner},[t.default?.()])])}});function te(e){let{props:t,key:n,emit:r,defaultValue:i}=e;return(0,f.useVModel)(t,n,r,{passive:!0,defaultValue:i})}var ne=Symbol(`elm.tabs`),re=e=>{if(e==null)throw Error(`ElmTabs subcomponents must be used within <ElmTabs>`);return e},ie=(0,c.defineComponent)({name:`ElmTabs`,props:{value:{type:String,default:void 0},defaultValue:{type:String,default:``},transitionTimingFunction:{type:String,default:`linear`}},emits:[`update:value`],setup(e,{emit:t,slots:n}){let r=te({props:e,key:`value`,emit:t,defaultValue:e.defaultValue??``});return(0,c.provide)(ne,{selectedValue:r,setSelectedValue:e=>{r.value=e},get transitionTimingFunction(){return e.transitionTimingFunction}}),()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(y[`elm-tabs`])},[n.default?.()])}}),ae=(0,c.defineComponent)({name:`ElmTabList`,setup(e,{slots:t}){return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(y[`tab-container`])},[t.default?.()])}}),oe=(0,c.defineComponent)({name:`ElmTab`,props:{value:{type:String,required:!0}},setup(e,{slots:t}){let n=re((0,c.inject)(ne));return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(y.tab,n.selectedValue.value===e.value&&y.active),onClick:()=>n.setSelectedValue(e.value)},[t.default?.()])}}),se=(0,c.defineComponent)({name:`ElmTabPanel`,props:{value:{type:String,required:!0}},setup(e,{slots:t}){let n=re((0,c.inject)(ne));return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(y[`tab-content`])},[(0,c.createVNode)(x,{direction:`row`,isOpen:n.selectedValue.value===e.value,transitionTimingFunction:n.transitionTimingFunction},{default:()=>[(0,c.createVNode)(`div`,{class:y[`tab-content-inner`]},[t.default?.()])]})])}}),ce={"elm-heading":`_elm-heading_1fuld_1`,h1:`_h1_1fuld_12`,h2:`_h2_1fuld_34`,"h2-underline":`_h2-underline_1fuld_60`,h3:`_h3_1fuld_71`,h4:`_h4_1fuld_86`,h5:`_h5_1fuld_90`,h6:`_h6_1fuld_94`},S={text:`_text_zme4t_1`},le={"elm-fragment-identifier":`_elm-fragment-identifier_xb2v4_1`},ue=(0,c.defineComponent)({name:`ElmFragmentIdentifier`,inheritAttrs:!1,props:{id:{type:String,required:!0}},setup(e,{attrs:t}){let n=e=>{let t=new URL(window.location.href);t.hash=e,window.history.replaceState(null,``,t.toString()),document.getElementById(e)?.scrollIntoView({behavior:`smooth`})};return()=>{let{class:r,...i}=t;return(0,c.createVNode)(`span`,(0,c.mergeProps)({class:(0,d.clsx)(le[`elm-fragment-identifier`],r),onClick:()=>n(e.id)},i),[(0,c.createTextVNode)(`#`)])}}}),de=Object.freeze({1:1.5,2:1.4,3:1.3,4:1.2,5:1.15,6:1.1}),fe=(0,c.defineComponent)({name:`ElmHeading`,props:{level:{type:Number,required:!0},text:{type:String,default:void 0},id:{type:String,default:void 0}},setup(e,{slots:t}){return()=>(0,c.createVNode)(`h${e.level}`,{class:(0,d.clsx)(ce[`elm-heading`],S.text,ce[`h${e.level}`]),style:{"--elmethis-scoped-font-size":`${de[e.level]}em`},id:e.id},{default:()=>[(0,c.createVNode)(`span`,null,[e.text]),t.default?.(),e.id&&(0,c.createVNode)(`span`,{style:{padding:`0.5rem`}},[(0,c.createVNode)(ue,{id:e.id},null)]),e.level===2&&(0,c.createVNode)(`span`,{class:ce[`h2-underline`],"aria-hidden":`true`},null)]})}}),pe={"elm-inline-text":`_elm-inline-text_uf3sg_1`,code:`_code_uf3sg_13`,kbd:`_kbd_uf3sg_25`,link:`_link_uf3sg_58`,ogp:`_ogp_uf3sg_94`,"ogp-text":`_ogp-text_uf3sg_104`,"ogp-title":`_ogp-title_uf3sg_109`,"ogp-description":`_ogp-description_uf3sg_115`},me={"elm-inline-icon":`_elm-inline-icon_1qs0i_1`},C=(0,c.defineComponent)({name:`ElmInlineIcon`,inheritAttrs:!1,props:{src:{type:String,required:!0},alt:{type:String,default:void 0},width:{type:[Number,String],default:void 0},height:{type:[Number,String],default:void 0},size:{type:[Number,String],default:16}},setup(e,{attrs:t}){return()=>{let{class:n,...r}=t;return(0,c.createVNode)(`span`,(0,c.mergeProps)({class:(0,d.clsx)(me[`elm-inline-icon`],n)},r),[(0,c.createVNode)(`img`,{src:e.src,alt:e.alt,class:me[`elm-inline-icon`],width:e.width??e.size,height:e.height??e.size},null)])}}}),w=(0,c.defineComponent)({name:`ElmInlineText`,inheritAttrs:!1,props:{color:{type:String,default:void 0},size:{type:String,default:`1em`},backgroundColor:{type:String,default:void 0},bold:{type:Boolean,default:!1},italic:{type:Boolean,default:!1},underline:{type:Boolean,default:!1},strikethrough:{type:Boolean,default:!1},code:{type:Boolean,default:!1},kbd:{type:Boolean,default:!1},ruby:{type:String,default:void 0},href:{type:String,default:void 0},favicon:{type:String,default:void 0}},setup(e,{attrs:t,slots:n}){return()=>{let{class:r,style:i,...a}=t,o=n.default?.();return e.href&&(o=(0,c.createVNode)(`a`,{class:pe.link,href:e.href,target:`_blank`,rel:`noopener noreferrer`},[e.favicon&&(0,c.createVNode)(C,{src:e.favicon,alt:`favicon`},null),o])),e.kbd&&((function(){return o})(),o=(0,c.createVNode)(`kbd`,{class:pe.kbd},[o])),e.strikethrough&&((function(){return o})(),o=(0,c.createVNode)(`del`,null,[o])),e.italic&&((function(){return o})(),o=(0,c.createVNode)(`em`,null,[o])),e.underline&&((function(){return o})(),o=(0,c.createVNode)(`ins`,null,[o])),e.bold&&((function(){return o})(),o=(0,c.createVNode)(`strong`,null,[o])),e.code&&((function(){return o})(),o=(0,c.createVNode)(`code`,{class:pe.code},[o])),e.ruby&&(o=(0,c.createVNode)(`ruby`,{class:pe[`elm-inline-text`]},[(0,c.createVNode)(`span`,null,[o]),(0,c.createVNode)(`rt`,null,[e.ruby])])),(0,c.createVNode)(`span`,(0,c.mergeProps)({class:(0,d.clsx)(pe[`elm-inline-text`],S.text,r),style:[i,{"--elmethis-scoped-color":e.color,"--elmethis-scoped-font-size":e.size,"--elmethis-scoped-background-color":e.backgroundColor}]},a),[o])}}}),he={"elm-paragraph":`_elm-paragraph_y4o6n_1`},ge=(0,c.defineComponent)({name:`ElmParagraph`,inheritAttrs:!1,props:{color:{type:String,default:void 0},backgroundColor:{type:String,default:void 0}},setup(e,{attrs:t,slots:n}){return()=>{let{class:r,style:i,...a}=t;return(0,c.createVNode)(`p`,(0,c.mergeProps)({class:(0,d.clsx)(he[`elm-paragraph`],S.text,r),style:[i,{"--elmethis-scoped-color":e.color,"--elmethis-scoped-background-color":e.backgroundColor}]},a),[n.default?.()])}}}),T={"elm-a2ui":`_elm-a2ui_ttxdd_1`,surface:`_surface_ttxdd_18`,text:`_text_ttxdd_26`,"text-h1":`_text-h1_ttxdd_31`,"text-h2":`_text-h2_ttxdd_36`,"text-h3":`_text-h3_ttxdd_41`,"text-h4":`_text-h4_ttxdd_46`,"text-h5":`_text-h5_ttxdd_51`,"text-body":`_text-body_ttxdd_56`,row:`_row_ttxdd_62`,column:`_column_ttxdd_68`,"child-wrap":`_child-wrap_ttxdd_75`,list:`_list_ttxdd_79`,"list-horizontal":`_list-horizontal_ttxdd_86`,"list-item":`_list-item_ttxdd_90`,card:`_card_ttxdd_96`,button:`_button_ttxdd_106`,"button-primary":`_button-primary_ttxdd_125`,image:`_image_ttxdd_137`,icon:`_icon_ttxdd_145`,divider:`_divider_ttxdd_154`,"divider-vertical":`_divider-vertical_ttxdd_160`,"text-field":`_text-field_ttxdd_170`,label:`_label_ttxdd_176`,input:`_input_ttxdd_182`,checkbox:`_checkbox_ttxdd_195`,"checkbox-label":`_checkbox-label_ttxdd_203`,slider:`_slider_ttxdd_207`,modal:`_modal_ttxdd_214`,"modal-content":`_modal-content_ttxdd_218`,video:`_video_ttxdd_224`,audio:`_audio_ttxdd_225`,"choice-picker":`_choice-picker_ttxdd_232`,"choice-picker-label":`_choice-picker-label_ttxdd_238`,"choice-picker-options":`_choice-picker-options_ttxdd_244`,"choice-picker-option":`_choice-picker-option_ttxdd_244`,"datetime-input":`_datetime-input_ttxdd_261`};function _e(e){"@babel/helpers - typeof";return _e=typeof Symbol==`function`&&typeof Symbol.iterator==`symbol`?function(e){return typeof e}:function(e){return e&&typeof Symbol==`function`&&e.constructor===Symbol&&e!==Symbol.prototype?`symbol`:typeof e},_e(e)}function ve(e,t){if(_e(e)!=`object`||!e)return e;var n=e[Symbol.toPrimitive];if(n!==void 0){var r=n.call(e,t||`default`);if(_e(r)!=`object`)return r;throw TypeError(`@@toPrimitive must return a primitive value.`)}return(t===`string`?String:Number)(e)}function ye(e){var t=ve(e,`string`);return _e(t)==`symbol`?t:t+``}function be(e,t,n){return(t=ye(t))in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function E(e,t){return{name:e.name,render:t}}var xe=class e{constructor(e=[]){be(this,`entries`,void 0);let t=new Map;for(let n of e)t.set(n.name,n);this.entries=t}get(e){return this.entries.get(e)?.render}names(){return Array.from(this.entries.keys())}extend(...t){let n=new Map(this.entries);for(let r of t)if(r instanceof e)for(let[e,t]of r.entries)n.set(e,t);else n.set(r.name,r);return new e(n.values())}},Se={start:`flex-start`,end:`flex-end`,center:`center`,spaceBetween:`space-between`,spaceAround:`space-around`,spaceEvenly:`space-evenly`,stretch:`stretch`},Ce={start:`flex-start`,end:`flex-end`,center:`center`,stretch:`stretch`},we={contain:`contain`,cover:`cover`,fill:`fill`,none:`none`,scaleDown:`scale-down`};function Te(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!(0,c.isVNode)(e)}var Ee={shortText:`text`,number:`number`,obscured:`password`};function De(e){switch(e){case`h1`:return 1;case`h2`:return 2;case`h3`:return 3;case`h4`:return 4;case`h5`:return 5;default:return 1}}var Oe=new xe([E(u.TextApi,({props:e,resolve:t})=>{let n=t(e.text),r=e.variant??`body`;return r===`caption`?(0,c.createVNode)(w,null,Te(n)?n:{default:()=>[n]}):r===`body`?(0,c.createVNode)(ge,null,Te(n)?n:{default:()=>[n]}):(0,c.createVNode)(fe,{level:De(r)},Te(n)?n:{default:()=>[n]})}),E(u.RowApi,({props:e,childRefs:t,renderChild:n})=>(0,c.createVNode)(`div`,{class:T.row,style:{justifyContent:Se[e.justify??`start`],alignItems:Ce[e.align??`center`]}},[t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(`span`,{key:`${e}:${r}`,class:T[`child-wrap`]},[n(e,t,r)]))])),E(u.ColumnApi,({props:e,childRefs:t,renderChild:n})=>(0,c.createVNode)(`div`,{class:T.column},[t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(`span`,{key:`${e}:${r}`,class:T[`child-wrap`]},[n(e,t,r)]))])),E(u.ListApi,({props:e,childRefs:t,renderChild:n})=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(T.list,e.direction===`horizontal`&&T[`list-horizontal`])},[t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(`div`,{key:`${e}:${r}`,class:T[`list-item`]},[n(e,t,r)]))])),E(u.CardApi,({props:e,renderChild:t})=>(0,c.createVNode)(`div`,{class:T.card},[t(e.child)])),E(u.ButtonApi,({props:e,renderChild:t,dispatchAction:n})=>(0,c.createVNode)(`div`,{role:`button`,tabindex:0,class:(0,d.clsx)(T.button,e.variant===`primary`&&T[`button-primary`]),onClick:e.action?()=>n(`action`):void 0,onKeydown:e.action?e=>{(e.key===`Enter`||e.key===` `)&&(e.preventDefault(),n(`action`))}:void 0},[t(e.child)])),E(u.ImageApi,({props:e,resolve:t})=>(0,c.createVNode)(`img`,{class:T.image,src:t(e.url),alt:e.description?t(e.description):``,style:{objectFit:we[e.fit??`cover`]}},null)),E(u.IconApi,({props:e,resolve:t})=>{let n=t(e.name);return(0,c.createVNode)(`span`,{class:T.icon,"aria-label":n,"data-icon":n},null)}),E(u.DividerApi,({props:e})=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(T.divider,e.axis===`vertical`&&T[`divider-vertical`]),role:`separator`},null)),E(u.TextFieldApi,({props:e,resolve:t,setBinding:n})=>{let r=e.variant??`shortText`,i=e.value?t(e.value):``;return(0,c.createVNode)(`div`,{class:T[`text-field`]},[(0,c.createVNode)(`label`,{class:T.label},[t(e.label)]),r===`longText`?(0,c.createVNode)(`textarea`,{class:T.input,value:i,onInput:e=>n(`value`,e.target.value),onChange:e=>n(`value`,e.target.value)},null):(0,c.createVNode)(`input`,{class:T.input,type:Ee[r]??`text`,value:i,onInput:e=>n(`value`,e.target.value),onChange:e=>n(`value`,e.target.value)},null)])}),E(u.CheckBoxApi,({props:e,ctx:t,resolve:n,setBinding:r})=>{let i=e.value,a=typeof i==`boolean`?i:!!(t.dataContext.resolveDynamicValue(i)??!1);return(0,c.createVNode)(`label`,{class:T.checkbox},[(0,c.createVNode)(`input`,{type:`checkbox`,checked:a,onChange:e=>r(`value`,e.target.checked)},null),(0,c.createVNode)(`span`,{class:T[`checkbox-label`]},[n(e.label)])])}),E(u.SliderApi,({props:e,ctx:t,setBinding:n})=>{let r=e.value,i=typeof r==`number`?r:Number(t.dataContext.resolveDynamicValue(r)??0);return(0,c.createVNode)(`input`,{class:T.slider,type:`range`,value:i,min:e.min??0,max:e.max,onInput:e=>n(`value`,Number(e.target.value)),onChange:e=>n(`value`,Number(e.target.value))},null)}),E(u.TabsApi,({props:e,resolve:t,renderChild:n})=>{let r;return(0,c.createVNode)(ie,{defaultValue:`0`},{default:()=>[(0,c.createVNode)(ae,null,Te(r=e.tabs.map((e,n)=>{let r;return(0,c.createVNode)(oe,{key:n,value:String(n)},Te(r=t(e.title))?r:{default:()=>[r]})}))?r:{default:()=>[r]}),e.tabs.map((e,t)=>{let r;return(0,c.createVNode)(se,{key:t,value:String(t)},Te(r=n(e.child))?r:{default:()=>[r]})})]})}),E(u.ModalApi,({props:e,renderChild:t})=>(0,c.createVNode)(`div`,{class:T.modal},[t(e.trigger),(0,c.createVNode)(`div`,{class:T[`modal-content`]},[t(e.content)])])),E(u.VideoApi,({props:e,resolve:t})=>(0,c.createVNode)(`video`,{class:T.video,controls:!0,src:t(e.url)},null)),E(u.AudioPlayerApi,({props:e,resolve:t})=>(0,c.createVNode)(`audio`,{class:T.audio,controls:!0,src:t(e.url)},null)),E(u.ChoicePickerApi,({props:e,componentId:t,ctx:n,resolve:r,setBinding:i})=>{let a=e.value,o=Array.isArray(a)?a:n.dataContext.resolveDynamicValue(a)??[],s=Array.isArray(o)?o:[],l=(e.variant??`mutuallyExclusive`)===`multipleSelection`;return(0,c.createVNode)(`div`,{class:T[`choice-picker`],"data-choice-picker":t,onChange:e=>{let t=e.currentTarget,n=t.querySelectorAll(`input`),r=n.length>0&&n[0].type===`checkbox`,a=Array.from(t.querySelectorAll(`input:checked`)).map(e=>e.value);i(`value`,r?a:a.slice(0,1))}},[e.label?(0,c.createVNode)(`span`,{class:T[`choice-picker-label`]},[r(e.label)]):null,(0,c.createVNode)(`div`,{class:T[`choice-picker-options`]},[e.options.map(e=>(0,c.createVNode)(`label`,{key:e.value,class:T[`choice-picker-option`]},[(0,c.createVNode)(`input`,{type:l?`checkbox`:`radio`,name:t,value:e.value,checked:s.includes(e.value)},null),(0,c.createVNode)(`span`,null,[r(e.label)])]))])])}),E(u.DateTimeInputApi,({props:e,resolve:t,setBinding:n})=>{let r=e.enableDate??!1,i=e.enableTime??!1,a=r&&i?`datetime-local`:r?`date`:i?`time`:`text`;return(0,c.createVNode)(`div`,{class:T[`datetime-input`]},[e.label?(0,c.createVNode)(`label`,{class:T.label},[t(e.label)]):null,(0,c.createVNode)(`input`,{class:T.input,type:a,value:e.value?t(e.value):``,min:e.min==null?void 0:String(e.min),max:e.max==null?void 0:String(e.max),onInput:e=>n(`value`,e.target.value),onChange:e=>n(`value`,e.target.value)},null)])})]),ke=`root`,Ae=Symbol(`elmethis.a2ui.surface`),je=Symbol(`elmethis.a2ui.catalog`),Me=Symbol(`elmethis.a2ui.ancestors`),Ne=(0,c.defineComponent)({name:`ComponentHost`,props:{id:{type:String,required:!0},basePath:{type:String,required:!0},index:{type:Number,default:0}},setup(e){let t=(0,c.inject)(Ae,void 0),n=(0,c.inject)(je,void 0),r=(0,c.inject)(Me,[]),i=r.includes(e.id);(0,c.provide)(Me,[...r,e.id]);let a=(0,c.ref)(0),o=(0,c.ref)(!1),s=[],u=null;return(0,c.onMounted)(()=>{if(!t)return;let n=e=>{u?.unsubscribe(),u=e.onUpdated.subscribe(()=>{a.value++}),o.value=!0},r=t.componentsModel.get(e.id);r&&n(r),s.push(t.componentsModel.onCreated.subscribe(t=>{t.id===e.id&&(n(t),a.value++)})),s.push(t.componentsModel.onDeleted.subscribe(t=>{t===e.id&&(u?.unsubscribe(),u=null,a.value++)})),s.push(t.dataModel.subscribe(`/`,()=>{a.value++}))}),(0,c.onUnmounted)(()=>{for(let e of s)e.unsubscribe();u?.unsubscribe()}),()=>{if(a.value,i||!t||!n)return null;let r=t.componentsModel.get(e.id);if(!r)return o.value?null:(0,c.createVNode)(`span`,{"data-a2ui-state":`loading`,"data-a2ui-component-id":e.id,style:{color:`gray`,fontSize:`0.875em`,fontStyle:`italic`}},[(0,c.createTextVNode)(`[Loading `),e.id,(0,c.createTextVNode)(`…]`)]);let s=n.get(r.type);if(!s)return(0,c.createVNode)(`span`,{"data-a2ui-state":`unknown`,"data-a2ui-component-id":e.id,"data-a2ui-component-type":r.type,style:{color:`tomato`,fontWeight:600}},[(0,c.createTextVNode)(`Unknown component: `),r.type]);let u=new l.ComponentContext(t,e.id,e.basePath),d=e=>typeof e==`string`?e:e==null?``:typeof e==`object`?u.dataContext.resolveDynamicValue(e)??``:String(e),f=n=>{if(Array.isArray(n))return n.filter(e=>typeof e==`string`).map(t=>({id:t,path:e.basePath}));if(n&&typeof n==`object`&&`componentId`in n){let e=n,r=t.dataModel.get(e.path);return Array.isArray(r)?r.map((t,n)=>({id:e.componentId,path:`${e.path}/${n}`})):[]}return[]},p=(t,n=e.basePath,r=0)=>(0,c.createVNode)(Ne,{key:t,id:t,basePath:n,index:r},null),m=e.id,h={componentId:e.id,index:e.index??0,props:r.properties,surface:t,ctx:u,resolve:d,childRefs:f,renderChild:p,setBinding:(e,n)=>{if(!t)return;let r=t.componentsModel.get(m);if(!r)return;let i=r.properties[e];if(!i||typeof i!=`object`||!(`path`in i))return;let a=i.path;new l.ComponentContext(t,m).dataContext.set(a,n)},dispatchAction:(e=`action`)=>{if(!t)return;let n=t.componentsModel.get(m);if(!n)return;let r=n.properties[e];if(!r)return;let i=new l.ComponentContext(t,m),a=e=>{if(typeof e!=`object`||!e)return e;if(`path`in e||`call`in e)return i.dataContext.resolveDynamicValue(e);if(Array.isArray(e))return e.map(a);let t={};for(let[n,r]of Object.entries(e))t[n]=a(r);return t};t.dispatchAction(a(r),m).catch(e=>{console.error(`[ComponentHost] action dispatch failed:`,e)})}};return(0,c.createVNode)(`span`,{"data-a2ui-component-id":e.id,style:{display:`contents`}},[s(h)])}}});async function Pe(e,{signal:t,onMessage:n,onError:r}){if(t?.aborted)return;let i=e.getReader(),a=new TextDecoder,o=``,s=()=>{i.cancel().catch(()=>{})};t?.addEventListener(`abort`,s,{once:!0});let c=e=>{let t=e.trim();if(t)try{n(JSON.parse(t))}catch(e){r?.(e,t)}};try{for(;;){let{done:e,value:t}=await i.read();if(e)break;o+=a.decode(t,{stream:!0});let n=o.split(`
2
+ `);o=n.pop()??``;for(let e of n)c(e)}t?.aborted||c(o)}finally{t?.removeEventListener(`abort`,s);try{i.releaseLock()}catch{}}}var Fe=`https://a2ui.org/specification/v0_9/basic_catalog.json`,Ie=(0,c.defineComponent)({name:`A2uiSurfaceView`,props:{surface:{type:Object,required:!0}},setup(e){return(0,c.provide)(Ae,e.surface),(0,c.provide)(Me,[]),()=>(0,c.createVNode)(`div`,{class:T.surface},[(0,c.createVNode)(Ne,{id:ke,basePath:`/`},null)])}}),Le=(0,c.defineComponent)({name:`A2uiSurface`,props:{surface:{type:Object,required:!0},catalog:{type:Object,default:void 0}},setup(e){return(0,c.provide)(je,e.catalog??Oe),(0,c.provide)(Ae,e.surface),(0,c.provide)(Me,[]),()=>(0,c.createVNode)(`div`,{class:T.surface},[(0,c.createVNode)(Ne,{id:ke,basePath:`/`},null)])}}),Re=(0,c.defineComponent)({name:`ElmA2ui`,props:{url:{type:String,default:void 0},headers:{type:Object,default:void 0},messages:{type:Array,default:void 0},catalogId:{type:String,default:void 0},catalog:{type:Object,default:void 0}},setup(e){(0,c.provide)(je,e.catalog??Oe);let t=(0,c.ref)([]),n=(0,c.ref)(0),r=new Map,i=null,a=async()=>{let a=e.catalogId,o=e.messages?[...e.messages]:[...t.value],s=i;if(s!==null&&s.catalogId===a&&o.length>=s.messages.length&&s.messages.every((e,t)=>e===o[t])&&s){let e=o.slice(s.processed);if(!e.length)return;for(let t of e)try{s.processor.processMessages([t])}catch(e){console.warn(`[ElmA2ui] skipped invalid A2UI message:`,t,e)}await Promise.resolve(),await Promise.resolve(),s.processed=o.length,s.messages=o,n.value++;return}if(s){for(let e of s.subs)e.unsubscribe();s.processor.model.dispose()}let c=new Set([Fe]);a&&c.add(a);for(let e of o)if(e&&typeof e==`object`&&`createSurface`in e){let t=e.createSurface?.catalogId;typeof t==`string`&&c.add(t)}let d=new l.MessageProcessor(Array.from(c).map(e=>new l.Catalog(e,u.BASIC_COMPONENTS,u.BASIC_FUNCTIONS))),f=new Map,p=[];p.push(d.model.onSurfaceCreated.subscribe(e=>{f.set(e.id,e),n.value++})),p.push(d.model.onSurfaceDeleted.subscribe(e=>{f.delete(e),n.value++})),r=f;for(let e of o)try{d.processMessages([e])}catch(t){console.warn(`[ElmA2ui] skipped invalid A2UI message:`,e,t)}i={processor:d,subs:p,processed:o.length,messages:o,catalogId:a},n.value++};(0,c.watch)([()=>e.messages,()=>e.catalogId,()=>t.value.length],()=>{a()},{immediate:!0});let o=null;return(0,c.onMounted)(()=>{if(!e.url)return;o=new AbortController;let n=o.signal;fetch(e.url,{headers:e.headers,signal:n}).then(async e=>{e.body&&await Pe(e.body,{signal:n,onMessage:e=>{e&&typeof e==`object`&&t.value.push(e)},onError:(e,t)=>{console.warn(`[ElmA2ui] skipped invalid JSON line:`,t,e)}})}).catch(e=>{e instanceof Error&&e.name!==`AbortError`&&console.error(`[ElmA2ui] stream error:`,e)})}),(0,c.onUnmounted)(()=>{if(o?.abort(),i){for(let e of i.subs)e.unsubscribe();i.processor.model.dispose()}}),()=>(n.value,(0,c.createVNode)(`div`,{class:T[`elm-a2ui`]},[Array.from(r.values()).map(e=>(0,c.createVNode)(Ie,{key:e.id,surface:e},null))]))}}),ze={"elm-katex":`_elm-katex_e25qs_5`},Be=(0,c.defineComponent)({name:`ElmKatex`,props:{expression:{type:String,required:!0},block:{type:Boolean,default:!1}},setup(e){let t=(0,c.computed)(()=>(0,p.renderToString)(e.expression,{displayMode:e.block,output:`mathml`}));return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(S.text,e.block?ze[`elm-katex`]:void 0),innerHTML:t.value},null)}}),D={"elm-code-block":`_elm-code-block_6itf9_1`,"language-icon":`_language-icon_6itf9_16`,caption:`_caption_6itf9_21`,"copy-icon":`_copy-icon_6itf9_28`,divider:`_divider_6itf9_32`,code:`_code_6itf9_39`},Ve=(e,t,n)=>t===`id`?`${e}-${n}`:e.replace(/url\(#([^)]+)\)/g,`url(#$1-${n})`),He=(e,t)=>{let n={};for(let[r,i]of Object.entries(e.attrs??{}))n[r]=Ve(i,r,t);return e.style&&(n.style=e.style),(0,c.h)(e.tag,n,e.children?.map(e=>He(e,t)))},Ue=(0,c.defineComponent)({name:`LanguageGlyph`,props:{icon:{type:Object,required:!0},size:{type:[Number,String],default:24}},setup(e){let t=(0,c.useId)().replace(/:/g,``);return()=>(0,c.h)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,viewBox:e.icon.viewBox,width:e.size,height:e.size,...e.icon.attrs},e.icon.children.map(e=>He(e,t)))}}),We={"elm-mdi-icon":`_elm-mdi-icon_ihskx_1`},O=(0,c.defineComponent)({name:`ElmMdiIcon`,inheritAttrs:!1,props:{d:{type:String,required:!0},size:{type:String,default:`1em`},color:{type:String,default:`currentColor`},lightColor:{type:String,default:void 0},darkColor:{type:String,default:void 0}},setup(e,{attrs:t}){return()=>{let{class:n,style:r,...i}=t;return(0,c.createVNode)(`svg`,(0,c.mergeProps)({class:(0,d.clsx)(We[`elm-mdi-icon`],n),style:[{"--elmethis-scoped-color":e.lightColor??e.color,"--dark-color":e.darkColor??e.color},r],width:e.size,height:e.size,viewBox:`0 0 24 24`,fill:e.color,xmlns:`http://www.w3.org/2000/svg`,focusable:`false`,role:`img`},i),[(0,c.createVNode)(`path`,{d:e.d},null)])}}}),Ge=(0,c.defineComponent)({name:`ElmLanguageIcon`,props:{size:{type:Number,default:24},language:{type:String,required:!0}},setup(e){return()=>{let t=(0,h.normalizeLanguage)(e.language);return t===`file`?(0,c.createVNode)(O,{d:m.mdiCodeTags,size:String(e.size)},null):(0,c.h)(Ue,{icon:h.languageIcons[t],size:e.size})}}}),Ke={"elm-shiki-highlighter":`_elm-shiki-highlighter_j5tas_1`},qe=(0,c.defineComponent)({name:`ElmShikiHighlighter`,inheritAttrs:!1,props:{code:{type:String,required:!0},language:{type:String,default:`txt`}},setup(e,{attrs:t}){let n=(0,c.ref)(``),r=async(e,t,r)=>{if(!e){r()&&(n.value=``);return}try{let i=await(0,g.codeToHtml)(e,{lang:t,themes:{dark:_.default,light:v.default},defaultColor:!1,colorReplacements:{"#ffffff":`transparent`,"#121212":`transparent`}});r()&&(n.value=i)}catch{r()&&(n.value=`<pre>${e.replace(/</g,`&lt;`)}</pre>`)}};return(0,c.watch)([()=>e.code,()=>e.language],([e,t],n,i)=>{let a=!0;i(()=>{a=!1}),r(e,t,()=>a)},{immediate:!0}),()=>{let{class:e,...r}=t;return(0,c.createVNode)(`pre`,(0,c.mergeProps)({class:(0,d.clsx)(Ke[`elm-shiki-highlighter`],e),innerHTML:n.value},r),null)}}}),Je={"use-clipboard":`_use-clipboard_mb0qt_1`,"use-clipboard-icon-copied":`_use-clipboard-icon-copied_mb0qt_15`},Ye=e=>{let t=e.delay??1500,n=(0,f.useClipboard)({copiedDuring:t}),r=(0,f.useClipboardItems)({copiedDuring:t}),i=(0,c.computed)(()=>n.copied.value||r.copied.value),a=async()=>{let t=e.content;typeof t==`string`?await n.copy(t):await r.copy(t.map(e=>new ClipboardItem(e)))};return{copy:a,CopyButton:(0,c.defineComponent)({name:`CopyButton`,setup(){return()=>(0,c.createVNode)(`span`,{class:(0,d.clsx)(Je[`use-clipboard`],e.class),style:e.style,onClick:a},[(0,c.createVNode)(O,{class:(0,d.clsx)(i.value&&Je[`use-clipboard-icon-copied`]),d:i.value?m.mdiClipboardCheckOutline:m.mdiClipboardOutline,size:`1.25rem`},null)])}})}},Xe=(0,c.defineComponent)({name:`ElmCodeBlock`,props:{code:{type:String,required:!0},language:{type:String,default:`txt`},caption:{type:String,default:void 0}},setup(e,{slots:t}){let{CopyButton:n}=Ye({content:e.code});return()=>(0,c.createVNode)(`figure`,{class:(0,d.clsx)(D[`elm-code-block`])},[(0,c.createVNode)(`span`,{class:D[`language-icon`]},[(0,c.createVNode)(Ge,{language:e.language},null)]),(0,c.createVNode)(`span`,{class:D.caption},[(0,c.createVNode)(w,null,{default:()=>[e.caption||e.language,t.default?.()]})]),(0,c.createVNode)(`div`,{class:D[`copy-icon`]},[(0,c.h)(n)]),(0,c.createVNode)(`hr`,{class:D.divider},null),(0,c.createVNode)(`div`,{class:D.code},[(0,c.createVNode)(qe,{code:e.code,language:e.language},null)])])}}),k={"elm-audio-player":`_elm-audio-player_1b0m3_1`,loading:`_loading_1b0m3_33`,header:`_header_1b0m3_39`,artwork:`_artwork_1b0m3_45`,"artwork-error":`_artwork-error_1b0m3_62`,meta:`_meta_1b0m3_68`,title:`_title_1b0m3_76`,artist:`_artist_1b0m3_86`,equalizer:`_equalizer_1b0m3_98`,playing:`_playing_1b0m3_115`,"elm-eq":`_elm-eq_1b0m3_1`,seekbar:`_seekbar_1b0m3_150`,track:`_track_1b0m3_166`,fill:`_fill_1b0m3_175`,thumb:`_thumb_1b0m3_188`,"hover-thumb":`_hover-thumb_1b0m3_208`,"elm-pulse":`_elm-pulse_1b0m3_1`,controls:`_controls_1b0m3_247`,time:`_time_1b0m3_253`,"time-current":`_time-current_1b0m3_263`,"time-total":`_time-total_1b0m3_268`,transport:`_transport_1b0m3_272`,"icon-button":`_icon-button_1b0m3_280`,"play-button":`_play-button_1b0m3_311`,volume:`_volume_1b0m3_358`,"volume-slider":`_volume-slider_1b0m3_365`,errored:`_errored_1b0m3_411`,"error-notice":`_error-notice_1b0m3_420`,"error-message":`_error-message_1b0m3_430`},Ze=e=>{(!Number.isFinite(e)||e<0)&&(e=0);let t=Math.floor(e),n=Math.floor(t/3600),r=Math.floor(t%3600/60),i=t%60,a=`${n>0?String(r).padStart(2,`0`):String(r)}:${String(i).padStart(2,`0`)}`;return n>0?`${n}:${a}`:a},Qe=e=>{let t=e.split(/[?#]/)[0].split(`/`).filter(Boolean).pop()??e;try{return decodeURIComponent(t)}catch{return t}},$e=(0,c.defineComponent)({name:`ElmAudioPlayer`,props:{src:{type:String,required:!0},title:{type:String,default:void 0},artist:{type:String,default:void 0},errorMessage:{type:String,default:`This audio couldn't be loaded.`},seekStep:{type:Number,default:10},loop:{type:Boolean,default:void 0},autoplay:{type:Boolean,default:void 0}},setup(e){let t=(0,c.ref)(null),n=(0,c.ref)(null),r=null,i=(0,c.ref)(!1),a=(0,c.ref)(!0),o=(0,c.ref)(!1),s=(0,c.ref)(0),l=(0,c.ref)(0),u=(0,c.ref)(1),f=(0,c.ref)(!1),p=(0,c.ref)(null),h=(0,c.computed)(()=>s.value>0?Math.min(1,l.value/s.value):0),g=(0,c.computed)(()=>f.value||u.value===0?m.mdiVolumeOff:u.value<.34?m.mdiVolumeLow:u.value<.67?m.mdiVolumeMedium:m.mdiVolumeHigh),_=(0,c.computed)(()=>e.title??Qe(e.src)),v=()=>{if(r!=null)return;let e=()=>{t.value&&(l.value=t.value.currentTime),r=requestAnimationFrame(e)};r=requestAnimationFrame(e)},ee=()=>{r!=null&&(cancelAnimationFrame(r),r=null)};(0,c.onBeforeUnmount)(ee);let y=()=>{let e=t.value;e&&(e.paused?e.play().catch(()=>i.value=!1):e.pause())},b=e=>{let n=t.value;if(!n||!Number.isFinite(s.value)||s.value<=0)return;let r=Math.max(0,Math.min(s.value,e));n.currentTime=r,l.value=r},x=e=>{let t=n.value;if(!t)return 0;let r=t.getBoundingClientRect();return r.width===0?0:Math.max(0,Math.min(1,(e-r.left)/r.width))},te=e=>{e.currentTarget.setPointerCapture(e.pointerId),b(x(e.clientX)*s.value)},ne=e=>{let t=x(e.clientX);p.value=t,e.currentTarget.hasPointerCapture(e.pointerId)&&b(t*s.value)},re=t=>{t.key===`ArrowRight`?(t.preventDefault(),b(l.value+e.seekStep)):t.key===`ArrowLeft`?(t.preventDefault(),b(l.value-e.seekStep)):t.key===`Home`?(t.preventDefault(),b(0)):t.key===`End`&&(t.preventDefault(),b(s.value))},ie=e=>{let n=t.value,r=Math.max(0,Math.min(1,e));n&&(n.volume=r,n.muted=r===0),u.value=r,f.value=r===0},ae=()=>{let e=t.value;if(!e)return;let n=!e.muted;e.muted=n,f.value=n};return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(k[`elm-audio-player`],i.value&&k.playing,a.value&&k.loading,o.value&&k.errored),style:{"--elmethis-scoped-progress":h.value,"--elmethis-scoped-hover":p.value??0}},[(0,c.createVNode)(`audio`,{ref:t,src:e.src,loop:e.loop,autoplay:e.autoplay,preload:`metadata`,onLoadedmetadata:()=>{let e=t.value;e&&(s.value=e.duration,u.value=e.volume,f.value=e.muted,a.value=!1)},onDurationchange:()=>{t.value&&(s.value=t.value.duration)},onCanplay:()=>a.value=!1,onWaiting:()=>a.value=!0,onPlaying:()=>a.value=!1,onTimeupdate:()=>{r==null&&t.value&&(l.value=t.value.currentTime)},onPlay:()=>{i.value=!0,v()},onPause:()=>{i.value=!1,ee()},onEnded:()=>{i.value=!1,ee()},onVolumechange:()=>{let e=t.value;e&&(u.value=e.volume,f.value=e.muted)},onError:()=>{o.value=!0,a.value=!1}},null),(0,c.createVNode)(`div`,{class:k.header},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(k.artwork,o.value&&k[`artwork-error`]),"aria-hidden":`true`},[(0,c.createVNode)(O,{d:o.value?m.mdiAlertCircleOutline:m.mdiMusicNote,size:`1.25rem`},null)]),(0,c.createVNode)(`div`,{class:k.meta},[(0,c.createVNode)(`span`,{class:k.title,title:_.value},[_.value]),e.artist&&(0,c.createVNode)(`span`,{class:k.artist},[e.artist])]),(0,c.createVNode)(`span`,{class:k.equalizer,"aria-hidden":`true`},[(0,c.createVNode)(`i`,null,null),(0,c.createVNode)(`i`,null,null),(0,c.createVNode)(`i`,null,null),(0,c.createVNode)(`i`,null,null)])]),o.value?(0,c.createVNode)(`div`,{class:k[`error-notice`],role:`alert`},[(0,c.createVNode)(O,{d:m.mdiAlertCircleOutline,size:`1.25rem`},null),(0,c.createVNode)(`span`,{class:k[`error-message`]},[e.errorMessage])]):(0,c.createVNode)(c.Fragment,null,[(0,c.createVNode)(`div`,{ref:n,class:k.seekbar,role:`slider`,tabindex:0,"aria-label":`Seek`,"aria-valuemin":0,"aria-valuemax":Math.round(s.value)||0,"aria-valuenow":Math.round(l.value),"aria-valuetext":`${Ze(l.value)} of ${Ze(s.value)}`,onPointerdown:te,onPointermove:ne,onPointerleave:()=>p.value=null,onKeydown:re},[(0,c.createVNode)(`div`,{class:k.track,"aria-hidden":`true`},[(0,c.createVNode)(`div`,{class:k.fill},null)]),(0,c.createVNode)(`span`,{class:k[`hover-thumb`],"aria-hidden":`true`},null),(0,c.createVNode)(`span`,{class:k.thumb,"aria-hidden":`true`},null)]),(0,c.createVNode)(`div`,{class:k.controls},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(k.time,k[`time-current`])},[Ze(l.value)]),(0,c.createVNode)(`div`,{class:k.transport},[(0,c.createVNode)(`button`,{type:`button`,class:k[`icon-button`],onClick:()=>b(l.value-e.seekStep),"aria-label":`Back ${e.seekStep} seconds`},[(0,c.createVNode)(O,{d:m.mdiRewind10,size:`1.25rem`},null)]),(0,c.createVNode)(`button`,{type:`button`,class:k[`play-button`],onClick:y,"aria-label":i.value?`Pause`:`Play`,"aria-pressed":i.value},[(0,c.createVNode)(O,{d:i.value?m.mdiPause:m.mdiPlay,size:`1.5rem`},null)]),(0,c.createVNode)(`button`,{type:`button`,class:k[`icon-button`],onClick:()=>b(l.value+e.seekStep),"aria-label":`Forward ${e.seekStep} seconds`},[(0,c.createVNode)(O,{d:m.mdiFastForward10,size:`1.25rem`},null)])]),(0,c.createVNode)(`div`,{class:k.volume},[(0,c.createVNode)(`button`,{type:`button`,class:k[`icon-button`],onClick:ae,"aria-label":f.value?`Unmute`:`Mute`,"aria-pressed":f.value},[(0,c.createVNode)(O,{d:g.value,size:`1.25rem`},null)]),(0,c.createVNode)(`input`,{class:k[`volume-slider`],type:`range`,min:0,max:1,step:.01,value:f.value?0:u.value,"aria-label":`Volume`,onInput:e=>ie(e.target.valueAsNumber),style:{"--elmethis-scoped-volume":f.value?0:u.value}},null)]),(0,c.createVNode)(`span`,{class:(0,d.clsx)(k.time,k[`time-total`])},[Ze(s.value)])])])])}}),et={"elm-block-image":`_elm-block-image_19s1y_1`,"image-container":`_image-container_19s1y_11`,image:`_image_19s1y_11`,fallback:`_fallback_19s1y_35`,"caption-box":`_caption-box_19s1y_45`,"caption-icon":`_caption-icon_19s1y_56`},tt={"elm-rectangle-wave":`_elm-rectangle-wave_70gad_21`,wave:`_wave_70gad_1`},nt=(0,c.defineComponent)({name:`ElmRectangleWave`,setup(){return()=>(0,c.createVNode)(`div`,{"aria-hidden":`true`,class:(0,d.clsx)(tt[`elm-rectangle-wave`])},null)}}),rt={"elm-modal":`_elm-modal_12j1m_1`,shown:`_shown_12j1m_18`},it=(0,c.defineComponent)({name:`ElmModal`,inheritAttrs:!1,props:{isOpen:{type:Boolean,default:void 0},delay:{type:Number,default:200},onClose:{type:Function,default:void 0}},setup(e,{attrs:t,slots:n}){let r=(0,c.ref)(null),i=(0,c.ref)(!1),a,o=(e,t)=>{let n=r.value;if(n)if(a!==void 0&&(clearTimeout(a),a=void 0),e)n.showModal(),i.value=!0;else{if(!i.value)return;i.value=!1,a=setTimeout(()=>{r.value?.close()},t)}};(0,c.onMounted)(()=>o(e.isOpen,e.delay)),(0,c.watch)([()=>e.isOpen,()=>e.delay],([e,t])=>o(e,t)),(0,c.onBeforeUnmount)(()=>{a!==void 0&&clearTimeout(a)});let s=t=>{r.value&&e.onClose?.(t,r.value)};return()=>{let{class:a,style:o,...l}=t;return(0,c.createVNode)(`dialog`,(0,c.mergeProps)({ref:r,class:(0,d.clsx)(rt[`elm-modal`],i.value&&rt.shown,a),onClick:s,style:[{"--elmethis-scoped-modal-delay":`${e.delay}ms`},o]},{closedby:`none`},l),[(0,c.createVNode)(`div`,{onClick:e=>e.stopPropagation()},[n.default?.()])])}}}),at=(e={})=>{let t=(0,c.ref)(!1),n=()=>{t.value=!0},r=()=>{t.value=!1};return{Modal:(0,c.defineComponent)({name:`Modal`,setup(n,{slots:i}){return()=>(0,c.createVNode)(it,{isOpen:t.value,delay:e.delay,onClose:r},{default:()=>[i.default?.()]})}}),isOpen:t,show:n,hide:r,toggle:()=>{t.value=!t.value}}},ot=(0,c.defineComponent)({name:`ElmBlockImage`,props:{src:{type:String,required:!0},srcSet:{type:String,default:void 0},sizes:{type:String,default:void 0},alt:{type:String,default:void 0},enableModal:{type:Boolean,default:void 0},caption:{type:String,default:void 0},width:{type:[Number,String],default:void 0},height:{type:[Number,String],default:void 0}},setup(e){let t=(0,c.ref)(!0),{Modal:n,isOpen:r,show:i,hide:a}=at(),o=(0,c.ref)(null),s=()=>{o.value?.decode().then(()=>t.value=!1,()=>{})};(0,c.onMounted)(s),(0,c.watch)(()=>e.src,s);let l=()=>{(e.enableModal??!0)&&!t.value&&i()},u=()=>e.enableModal??!0,f=n=>(0,c.createVNode)(`img`,(0,c.mergeProps)({ref:n?void 0:o,class:et.image,src:e.src,alt:e.alt??e.caption??`Image`,srcset:n?void 0:e.srcSet,sizes:n?void 0:e.sizes,width:e.width,height:e.height,loading:n?`lazy`:void 0,onLoad:()=>t.value=!1,onClick:n?()=>a():void 0,style:{"--elmethis-scoped-opacity":t.value?.01:1,"--elmethis-scoped-cursor":u()?r.value?`zoom-out`:`zoom-in`:`default`,"--elmethis-scoped-aspect-ratio":e.width&&e.height?`${e.width} / ${e.height}`:`auto`}},{fetchpriority:n?`low`:`auto`}),null);return()=>(0,c.createVNode)(`figure`,{class:(0,d.clsx)(et[`elm-block-image`])},[(0,c.createVNode)(`div`,{class:et[`image-container`],style:{"--elmethis-scoped-opacity":t.value?1:.01},onClick:l},[f(!1),(0,c.createVNode)(`div`,{class:et.fallback},[(0,c.createVNode)(nt,null,null)])]),e.caption&&(0,c.createVNode)(`figcaption`,{class:et[`caption-box`],style:{"--elmethis-scoped-opacity":t.value?.01:1}},[(0,c.createVNode)(`span`,{class:et[`caption-icon`]},[(0,c.createVNode)(O,{d:m.mdiMessageImageOutline,size:`1.25rem`},null)]),(0,c.createVNode)(w,{size:`1rem`},{default:()=>[e.caption]})]),(0,c.h)(n,null,{default:()=>r.value?f(!0):null})])}}),st={"elm-file":`_elm-file_aoaqq_1`,"file-size":`_file-size_aoaqq_12`,"download-icon":`_download-icon_aoaqq_17`};function ct(e){let t=e.split(/[?#]/)[0].split(`/`).filter(Boolean);return t.length>0?t[t.length-1]:null}var lt=(0,c.defineComponent)({name:`ElmFile`,props:{name:{type:String,default:void 0},src:{type:String,required:!0},filesize:{type:String,default:void 0}},setup(e){let t=async()=>{let t;try{let n=await fetch(e.src);if(!n.ok)throw Error(`Failed to download file`);let r=await n.blob();t=document.createElement(`a`),t.href=URL.createObjectURL(r),t.download=e.name??ct(e.src)??`file`,t.click()}catch(e){console.error(`ERROR:`,e)}finally{t&&URL.revokeObjectURL(t.href)}};return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(st[`elm-file`])},[(0,c.createVNode)(`div`,null,[(0,c.createVNode)(O,{d:m.mdiFile,size:`1.25rem`},null)]),(0,c.createVNode)(`div`,null,[(0,c.createVNode)(w,null,{default:()=>[e.name??ct(e.src)]})]),(0,c.createVNode)(`div`,{class:st[`file-size`]},[(0,c.createVNode)(w,null,{default:()=>[e.filesize]})]),(0,c.createVNode)(`div`,{class:st[`download-icon`],onClick:t},[(0,c.createVNode)(O,{d:m.mdiDownload,size:`1.25rem`},null)])])}}),A={"elm-bookmark":`_elm-bookmark_cbkg4_1`,container:`_container_cbkg4_23`,image:`_image_cbkg4_35`,content:`_content_cbkg4_55`,title:`_title_cbkg4_71`,description:`_description_cbkg4_75`,link:`_link_cbkg4_80`},ut={visibility:`hidden`,width:`0`},dt=(0,c.defineComponent)({name:`ElmBookmark`,props:{title:{type:String,default:void 0},description:{type:String,default:void 0},image:{type:String,default:void 0},url:{type:String,default:void 0},favicon:{type:String,default:void 0}},setup(e){let t=(0,c.ref)(!1);return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(A[`elm-bookmark`])},[(0,c.createVNode)(`a`,{class:A.container,href:e.url,target:`_blank`,rel:`noopener noreferrer`},[(0,c.createVNode)(`img`,{class:A.image,src:e.image,alt:`OGP Image`,onError:()=>t.value=!0,style:t.value||e.image==null?ut:{}},null),(0,c.createVNode)(`div`,{class:A.content},[(0,c.createVNode)(`div`,{class:A.title},[(0,c.createVNode)(w,{bold:!0},{default:()=>[e.title]})]),(0,c.createVNode)(`div`,{class:A.description},[(0,c.createVNode)(w,{size:`0.75rem`},{default:()=>[e.description]})]),(0,c.createVNode)(`div`,{class:A.link},[e.favicon?(0,c.createVNode)(C,{src:e.favicon},null):(0,c.createVNode)(O,{d:m.mdiLinkVariant,color:`var(--elmethis-color-accent-info)`},null),(0,c.createVNode)(w,{size:`0.75rem`},{default:()=>[e.url]})])])])])}}),j={"elm-toggle":`_elm-toggle_qfazq_1`,open:`_open_qfazq_8`,summary:`_summary_qfazq_13`,"summary-left":`_summary-left_qfazq_28`,divider:`_divider_qfazq_35`,chevron:`_chevron_qfazq_49`,cross:`_cross_qfazq_62`,border:`_border_qfazq_76`,content:`_content_qfazq_84`},ft=(0,c.defineComponent)({name:`ElmToggle`,props:{summary:{type:String,default:void 0},defaultIsOpen:{type:Boolean,default:!1},isOpen:{type:Boolean,default:void 0},monochrome:{type:Boolean,default:!1}},emits:[`update:isOpen`],setup(e,{emit:t,slots:n}){let r=te({props:e,key:`isOpen`,emit:t,defaultValue:e.defaultIsOpen??!1});return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(j[`elm-toggle`],r.value&&j.open)},[(0,c.createVNode)(`div`,{class:j.summary,onClick:e=>{e.preventDefault(),r.value=!r.value}},[(0,c.createVNode)(`div`,{class:j[`summary-left`]},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(j.chevron,r.value&&j.open)},[(0,c.createVNode)(O,{d:m.mdiChevronRight,color:e.monochrome?`var(--elmethis-color-neutral-weak)`:`var(--elmethis-color-primary)`,size:`1rem`},null)]),(0,c.createVNode)(`div`,null,[e.summary==null?n.summary?.():(0,c.createVNode)(w,null,{default:()=>[e.summary]})])]),(0,c.createVNode)(`hr`,{class:j.divider},null),(0,c.createVNode)(`span`,{class:(0,d.clsx)(j.cross,r.value&&j.open)},[(0,c.createVNode)(O,{d:m.mdiPlus,size:`1rem`,color:e.monochrome?`var(--elmethis-color-neutral-weak)`:r.value?`var(--elmethis-color-accent-error)`:`var(--elmethis-color-primary)`},null)])]),(0,c.createVNode)(`div`,{class:j.border},null),(0,c.createVNode)(`div`,{class:(0,d.clsx)(j.content,r.value&&j.open)},[n.default?.()])])}}),M={"elm-block-quote":`_elm-block-quote_xzf6a_1`,body:`_body_xzf6a_19`,icon:`_icon_xzf6a_27`,"icon-top-left":`_icon-top-left_xzf6a_32`,"icon-bottom-right":`_icon-bottom-right_xzf6a_36`},pt=(0,c.defineComponent)({name:`ElmBlockQuote`,setup(e,{slots:t}){return()=>(0,c.createVNode)(`blockquote`,{class:(0,d.clsx)(M[`elm-block-quote`],S.text)},[(0,c.createVNode)(`div`,{class:(0,d.clsx)(M.icon,M[`icon-top-left`])},[(0,c.createVNode)(O,{d:m.mdiFormatQuoteOpen},null)]),(0,c.createVNode)(`div`,{class:M.body},[t.default?.()]),(0,c.createVNode)(`div`,{class:(0,d.clsx)(M.icon,M[`icon-bottom-right`])},[(0,c.createVNode)(O,{d:m.mdiFormatQuoteClose},null)])])}}),mt={"elm-callout":`_elm-callout_1nsmp_1`,header:`_header_1nsmp_26`,content:`_content_1nsmp_35`,icon:`_icon_1nsmp_42`,note:`_note_1nsmp_47`,tip:`_tip_1nsmp_51`,important:`_important_1nsmp_55`,warning:`_warning_1nsmp_59`,caution:`_caution_1nsmp_63`},ht=Object.freeze({note:m.mdiInformation,tip:m.mdiLightbulbOn,important:m.mdiShieldAlert,warning:m.mdiAlert,caution:m.mdiAlertOctagram}),gt=(0,c.defineComponent)({name:`ElmCallout`,props:{type:{type:String,default:`note`}},setup(e,{slots:t}){return()=>(0,c.createVNode)(`aside`,{class:(0,d.clsx)(mt[`elm-callout`],mt[e.type])},[(0,c.createVNode)(`div`,{class:mt.header},[(0,c.createVNode)(O,{class:mt.icon,d:ht[e.type],size:`1.25rem`},null),(0,c.createVNode)(`span`,null,[e.type])]),(0,c.createVNode)(`div`,{class:mt.content},[t.default?.()])])}}),N={"elm-notion-callout":`_elm-notion-callout_15idh_1`,icon:`_icon_15idh_9`,content:`_content_15idh_15`,filled:`_filled_15idh_20`,outlined:`_outlined_15idh_24`,default:`_default_15idh_29`,gray:`_gray_15idh_38`,red:`_red_15idh_43`,orange:`_orange_15idh_48`,yellow:`_yellow_15idh_55`,green:`_green_15idh_62`,cyan:`_cyan_15idh_69`,blue:`_blue_15idh_74`,purple:`_purple_15idh_79`,magenta:`_magenta_15idh_86`},_t=(0,c.defineComponent)({name:`ElmNotionCallout`,inheritAttrs:!1,props:{icon:{type:Object,default:void 0},color:{type:String,default:`gray`},variant:{type:String,default:`filled`}},setup(e,{slots:t,attrs:n}){return()=>{let{class:r,...i}=n;return(0,c.createVNode)(`div`,(0,c.mergeProps)({class:(0,d.clsx)(N[`elm-notion-callout`],N[e.color],N[e.variant],r)},i),[e.icon!==void 0&&(e.icon.kind===`emoji`?(0,c.createVNode)(`span`,{class:N.icon,role:`img`},[e.icon.emoji]):(0,c.createVNode)(C,{class:N.icon,src:e.icon.src,alt:e.icon.alt,size:20},null)),(0,c.createVNode)(`div`,{class:N.content},[t.default?.()])])}}}),vt={"elm-divider":`_elm-divider_9m6gb_1`},yt=(0,c.defineComponent)({name:`ElmDivider`,inheritAttrs:!1,setup(e,{attrs:t}){return()=>{let{class:e,...n}=t;return(0,c.createVNode)(`hr`,(0,c.mergeProps)({class:(0,d.clsx)(vt[`elm-divider`],e)},n),null)}}}),bt={"elm-list":`_elm-list_brpi5_1`,bulleted:`_bulleted_brpi5_8`,numbered:`_numbered_brpi5_57`},xt=(0,c.defineComponent)({name:`ElmList`,props:{listStyle:{type:String,default:`unordered`}},setup(e,{slots:t}){return()=>e.listStyle===`ordered`?(0,c.createVNode)(`ol`,{class:(0,d.clsx)(S.text,bt[`elm-list`],bt.numbered)},[t.default?.()]):(0,c.createVNode)(`ul`,{class:(0,d.clsx)(S.text,bt[`elm-list`],bt.bulleted)},[t.default?.()])}}),P={"elm-table-frame":`_elm-table-frame_1b7h2_3`,"elm-table-scroll":`_elm-table-scroll_1b7h2_49`,"elm-table":`_elm-table_1b7h2_3`,caption:`_caption_1b7h2_67`,"caption-inner":`_caption-inner_1b7h2_77`,spacing:`_spacing_1b7h2_84`,"sticky-row-header":`_sticky-row-header_1b7h2_95`},St=Symbol(`elm.table.HasRowHeader`),Ct=Symbol(`elm.table.Section`),wt=(0,c.defineComponent)({name:`ElmTable`,inheritAttrs:!1,props:{caption:{type:String,default:void 0},hasRowHeader:{type:Boolean,default:!1}},setup(e,{attrs:t,slots:n}){(0,c.provide)(St,(0,c.computed)(()=>e.hasRowHeader));let r=(0,c.ref)(null),i=(0,c.ref)(!1),a=(0,c.ref)(!0),o=(0,c.ref)(!0),s=()=>{let e=r.value;if(e==null)return;let t=e.scrollWidth-e.clientWidth;i.value=t>1,a.value=e.scrollLeft<=1,o.value=e.scrollLeft>=t-1},l=null;return(0,c.onMounted)(()=>{let e=r.value;e!=null&&(s(),e.addEventListener(`scroll`,s,{passive:!0}),typeof ResizeObserver<`u`&&(l=new ResizeObserver(s),l.observe(e)))}),(0,c.onBeforeUnmount)(()=>{r.value?.removeEventListener(`scroll`,s),l?.disconnect()}),()=>{let{class:s,...l}=t;return(0,c.createVNode)(`div`,{class:P[`elm-table-frame`],"data-overflow-start":i.value&&!a.value?``:void 0,"data-overflow-end":i.value&&!o.value?``:void 0},[(0,c.createVNode)(`div`,{ref:r,class:P[`elm-table-scroll`],tabindex:i.value?0:void 0,role:i.value&&e.caption!=null?`region`:void 0,"aria-label":i.value&&e.caption!=null?e.caption:void 0},[(0,c.createVNode)(`table`,(0,c.mergeProps)({class:(0,d.clsx)(P[`elm-table`],S.text,e.hasRowHeader&&P[`sticky-row-header`],s)},l),[e.caption&&(0,c.createVNode)(`caption`,null,[(0,c.createVNode)(`span`,{class:P.caption},[(0,c.createVNode)(`span`,{class:P.spacing},null),(0,c.createVNode)(`span`,{class:P[`caption-inner`]},[(0,c.createVNode)(w,null,{default:()=>[e.caption]})]),(0,c.createVNode)(`span`,{class:P.spacing},null)])]),n.default?.()])])])}}}),Tt=(0,c.defineComponent)({name:`ElmTableBody`,setup(e,{slots:t}){return(0,c.provide)(Ct,`body`),()=>(0,c.createVNode)(`tbody`,null,[t.default?.()])}}),Et={"elm-table-cell":`_elm-table-cell_1a21f_1`,td:`_td_1a21f_20`,th:`_th_1a21f_25`},Dt=(0,c.defineComponent)({name:`ElmTableCell`,inheritAttrs:!1,props:{isHeader:{type:Boolean,default:!1},columnIndex:{type:Number,default:void 0},text:{type:String,default:void 0},scope:{type:String,default:void 0}},setup(e,{attrs:t,slots:n}){let r=(0,c.inject)(Ct,`body`),i=(0,c.inject)(St,(0,c.ref)(!1));return()=>{let{class:a,style:o,...s}=t,l=r===`head`,u=!l&&!e.isHeader&&e.columnIndex===0&&i.value,f=l||e.isHeader||u,p=e.scope??(l?`col`:u?`row`:void 0),m=e.text==null?n.default?.():e.text;return f?(0,c.createVNode)(`th`,(0,c.mergeProps)({class:(0,d.clsx)(Et[`elm-table-cell`],Et.th,a),style:o,scope:p},s),[m]):(0,c.createVNode)(`td`,(0,c.mergeProps)({class:(0,d.clsx)(Et[`elm-table-cell`],Et.td,a),style:o},s),[m])}}}),Ot={"elm-table-header":`_elm-table-header_jhft7_1`},kt=(0,c.defineComponent)({name:`ElmTableHeader`,setup(e,{slots:t}){return(0,c.provide)(Ct,`head`),()=>(0,c.createVNode)(`thead`,{class:(0,d.clsx)(Ot[`elm-table-header`])},[t.default?.()])}}),At={"elm-table-row":`_elm-table-row_mkm0q_1`},jt=(0,c.defineComponent)({name:`ElmTableRow`,setup(e,{slots:t}){return()=>(0,c.createVNode)(`tr`,{class:(0,d.clsx)(At[`elm-table-row`])},[t.default?.()])}}),Mt={"elm-unsupported-block":`_elm-unsupported-block_8bkk1_1`,message:`_message_8bkk1_13`,icon:`_icon_8bkk1_20`,details:`_details_8bkk1_24`},Nt=(0,c.defineComponent)({name:`ElmUnsupportedBlock`,inheritAttrs:!1,props:{details:{type:String,default:void 0}},setup(e,{attrs:t}){return()=>{let{class:n,...r}=t;return(0,c.createVNode)(`div`,(0,c.mergeProps)({class:(0,d.clsx)(Mt[`elm-unsupported-block`],n)},r),[(0,c.createVNode)(`div`,{class:Mt.message},[(0,c.createVNode)(`svg`,{viewBox:`0 0 24 24`,width:`1.25rem`,height:`1.25rem`,class:Mt.icon},[(0,c.createVNode)(`path`,{d:`M13,9H11V7H13M13,17H11V11H13M12,2A10,10 0 0,0 2,12A10,10 0 0,0 12,22A10,10 0 0,0 22,12A10,10 0 0,0 12,2Z`},null)]),(0,c.createVNode)(w,null,{default:()=>[(0,c.createTextVNode)(`UNSUPPORTED BLOCK`)]})]),e.details&&(0,c.createVNode)(`div`,{class:Mt.details},[(0,c.createVNode)(w,null,{default:()=>[e.details]})])])}}});function F(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!(0,c.isVNode)(e)}function Pt(e){return Array.isArray(e)?e.filter(e=>typeof e==`string`):[]}var Ft={boxSizing:`content-box`,paddingBlock:`0.25rem`,width:`100%`,display:`flex`,flexDirection:`row`,gap:`0.25rem`,justifyContent:`space-around`,overflowX:`auto`},It=Oe.extend(E(h.RichTextApi,({props:e,resolve:t})=>{let n=t(e.text),r=e.decoration??[];return r.includes(`katex`)?(0,c.createVNode)(Be,{expression:n,block:!1},null):(0,c.createVNode)(w,{bold:r.includes(`bold`),italic:r.includes(`italic`),underline:r.includes(`underline`),strikethrough:r.includes(`strikethrough`),code:r.includes(`code`),color:e.color,ruby:e.ruby},F(n)?n:{default:()=>[n]})}),E(h.LinkTextApi,({props:e,resolve:t})=>{let n;return(0,c.createVNode)(w,{href:e.href,favicon:e.favicon},F(n=t(e.text))?n:{default:()=>[n]})}),E(h.IconApi,({props:e,resolve:t})=>(0,c.createVNode)(C,{src:t(e.src),alt:e.alt},null)),E(h.ColumnApi,({props:e,childRefs:t,renderChild:n})=>(0,c.createVNode)(`div`,{style:{display:`flex`,flexDirection:`column`,justifyContent:Se[e.justify??`start`],alignItems:Ce[e.align??`stretch`],flex:e.widthRatio==null?void 0:String(e.widthRatio),boxSizing:`border-box`,padding:`0.125rem`,gap:`var(--elmethis-stack-gap)`}},[t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(`span`,{key:`${e}:${r}`},[n(e,t,r)]))])),E(h.ColumnListApi,({props:e,childRefs:t,renderChild:n})=>(0,c.createVNode)(`div`,{style:Ft},[t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)]))])),E(h.HeadingApi,({props:e,childRefs:t,renderChild:n})=>{let r;return(0,c.createVNode)(fe,{level:e.level},F(r=t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)])))?r:{default:()=>[r]})}),E(h.ParagraphApi,({props:e,childRefs:t,renderChild:n})=>{let r;return(0,c.createVNode)(ge,{color:e.color,backgroundColor:e.backgroundColor},F(r=t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(`span`,{key:`${e}:${r}`},[n(e,t,r)])))?r:{default:()=>[r]})}),E(h.ListApi,({props:e,childRefs:t,renderChild:n})=>{let r;return(0,c.createVNode)(xt,{listStyle:e.style??`unordered`},F(r=t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(`li`,{key:`${e}:${r}`},[n(e,t,r)])))?r:{default:()=>[r]})}),E(h.ListItemApi,({props:e,childRefs:t,renderChild:n})=>(0,c.createVNode)(c.Fragment,null,[t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)]))])),E(h.BlockQuoteApi,({props:e,childRefs:t,renderChild:n})=>{let r;return(0,c.createVNode)(pt,{cite:e.cite},F(r=t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)])))?r:{default:()=>[r]})}),E(h.CalloutApi,({props:e,childRefs:t,renderChild:n})=>{let r;return(0,c.createVNode)(gt,{type:e.type},F(r=t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)])))?r:{default:()=>[r]})}),E(h.NotionCalloutApi,({props:e,childRefs:t,renderChild:n})=>{let r;return(0,c.createVNode)(_t,{icon:e.icon,color:e.color,variant:e.variant},F(r=t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)])))?r:{default:()=>[r]})}),E(h.DividerApi,()=>(0,c.createVNode)(yt,null,null)),E(h.ToggleApi,({props:e,childRefs:t,renderChild:n})=>(0,c.createVNode)(ft,null,{summary:()=>t(e.summary).map(({id:e,path:t},r)=>(0,c.createVNode)(`span`,{key:`${e}:${r}`},[n(e,t,r)])),default:()=>t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)]))})),E(h.BookmarkApi,({props:e,resolve:t})=>(0,c.createVNode)(dt,{url:t(e.url),title:e.title?t(e.title):void 0,description:e.description?t(e.description):void 0,image:e.image?t(e.image):void 0},null)),E(h.FileApi,({props:e,resolve:t})=>(0,c.createVNode)(lt,{src:t(e.src),name:e.name?t(e.name):void 0},null)),E(h.AudioApi,({props:e,resolve:t})=>(0,c.createVNode)($e,{src:t(e.src),title:e.title?t(e.title):void 0,artist:e.artist?t(e.artist):void 0,seekStep:e.seekStep,loop:e.loop,autoplay:e.autoPlay},null)),E(h.VideoApi,({props:e,resolve:t})=>{let n=e.caption?t(e.caption):void 0;return(0,c.createVNode)(`figure`,{style:{margin:0}},[(0,c.createVNode)(`video`,{src:t(e.src),poster:e.poster?t(e.poster):void 0,title:e.title?t(e.title):void 0,width:e.width,height:e.height,loop:e.loop,autoplay:e.autoPlay,muted:e.muted,controls:!0,style:{maxWidth:`100%`,height:`auto`}},null),n?(0,c.createVNode)(`figcaption`,null,[n]):null])}),E(h.BlockImageApi,({props:e,resolve:t})=>(0,c.createVNode)(ot,{src:t(e.src),alt:e.alt?t(e.alt):void 0,width:e.width,height:e.height,srcSet:e.srcset?t(e.srcset):void 0,sizes:e.sizes?t(e.sizes):void 0,caption:e.caption?t(e.caption):void 0,enableModal:!0},null)),E(h.CodeBlockApi,({props:e,resolve:t})=>(0,c.createVNode)(Xe,{code:t(e.code),language:e.language?t(e.language):void 0,caption:e.caption?t(e.caption):void 0},null)),E(h.KatexApi,({props:e,resolve:t})=>(0,c.createVNode)(Be,{expression:t(e.expression),block:!0},null)),E(h.MermaidApi,({props:e,resolve:t})=>(0,c.createVNode)(Xe,{code:t(e.code),language:`mermaid`},null)),E(h.ContentTabApi,()=>null),E(h.ContentTabsApi,({props:e,surface:t,renderChild:n})=>{let r,i=(Array.isArray(e.children)?e.children:[]).map(e=>{let n=t.componentsModel.get(e);return{tabId:e,labelIds:Pt(n?.properties.label),contentIds:Pt(n?.properties.content)}});return(0,c.createVNode)(ie,{defaultValue:`0`},{default:()=>[(0,c.createVNode)(ae,null,F(r=i.map(({tabId:e,labelIds:t},r)=>{let i;return(0,c.createVNode)(oe,{key:e,value:String(r)},F(i=t.map((e,t)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${t}`},[n(e,`/`,t)])))?i:{default:()=>[i]})}))?r:{default:()=>[r]}),i.map(({tabId:e,contentIds:t},r)=>{let i;return(0,c.createVNode)(se,{key:e,value:String(r)},F(i=t.map((e,t)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${t}`},[n(e,`/`,t)])))?i:{default:()=>[i]})})]})}),E(h.TableApi,({props:e,childRefs:t,renderChild:n})=>{let r,i;return(0,c.createVNode)(wt,{caption:e.caption?String(e.caption):void 0,hasRowHeader:e.hasRowHeader},{default:()=>[e.header&&e.header.length>0&&(0,c.createVNode)(kt,null,F(r=t(e.header).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)])))?r:{default:()=>[r]}),(0,c.createVNode)(Tt,null,F(i=t(e.body).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)])))?i:{default:()=>[i]})]})}),E(h.TableRowApi,({props:e,childRefs:t,renderChild:n})=>{let r;return(0,c.createVNode)(jt,null,F(r=t(e.children).map(({id:e,path:t},r)=>(0,c.createVNode)(c.Fragment,{key:`${e}:${r}`},[n(e,t,r)])))?r:{default:()=>[r]})}),E(h.TableCellApi,({props:e,index:t,childRefs:n,renderChild:r})=>{let i;return(0,c.createVNode)(Dt,{isHeader:e.isHeader,columnIndex:t},F(i=n(e.children).map(({id:e,path:t},n)=>(0,c.createVNode)(`span`,{key:`${e}:${n}`},[r(e,t,n)])))?i:{default:()=>[i]})}),E(h.UnsupportedApi,({props:e})=>(0,c.createVNode)(Nt,{details:e.details?`Unsupported component type: ${String(e.details)}`:`Unsupported component type`},null))),Lt={"elm-html":`_elm-html_339tp_1`},Rt=e=>{let t=[],n=0,r,i=0;for(let a=0;a<e.length;a++){let o=e[a];if(r){o===`\\`?a++:o===r&&(r=void 0);continue}o===`"`||o===`'`?r=o:o===`(`?n++:o===`)`?n=Math.max(0,n-1):o===`;`&&n===0&&(t.push(e.slice(i,a)),i=a+1)}return t.push(e.slice(i)),t},zt=e=>{let t={};for(let n of Rt(e)){let e=n.indexOf(`:`);if(e===-1)continue;let r=n.slice(0,e).trim(),i=n.slice(e+1).trim();if(!r||!i)continue;let a=r.startsWith(`--`)?r:r.replace(/-([a-z])/g,(e,t)=>t.toUpperCase());t[a]=i}return t},Bt=e=>{if(e!==void 0)return typeof e==`string`?zt(e):(0,c.normalizeStyle)(e)},Vt=(0,c.defineComponent)({name:`ElmHtml`,inheritAttrs:!1,props:{html:{type:String,required:!0},autoHeight:{type:Boolean,default:!0},sandbox:{type:String,default:void 0},height:{type:[Number,String],default:void 0},title:{type:String,default:void 0}},setup(e,{attrs:t}){let n=(0,c.ref)(null),r=(0,c.ref)(void 0);(0,c.watch)(()=>[e.html,e.autoHeight],([,e])=>{e&&(r.value=void 0)},{flush:`pre`});let i,a=e=>{let t=n.value;if(!t)return;let a,o=()=>{let e=t.contentDocument?.documentElement;e&&(r.value=e.scrollHeight)},s=()=>{let e=t.contentDocument?.documentElement;e&&(a?.disconnect(),a=new ResizeObserver(o),a.observe(e))},c=()=>{e&&(o(),s())};t.addEventListener(`load`,c),i=()=>{t.removeEventListener(`load`,c),a?.disconnect()}};return(0,c.onMounted)(()=>a(e.autoHeight)),(0,c.watch)(()=>[e.html,e.autoHeight],([,e])=>{i?.(),a(e)},{flush:`post`}),(0,c.onBeforeUnmount)(()=>i?.()),()=>{let{class:i,style:a,src:o,srcDoc:s,srcdoc:l,...u}=t,f=Bt(a),p=f?.height,m=new Set(e.sandbox?.split(/\s+/).filter(Boolean)??[]);if([...m].some(e=>e.toLowerCase()===`allow-scripts`))for(let e of m)e.toLowerCase()===`allow-same-origin`&&m.delete(e);else e.autoHeight&&m.add(`allow-same-origin`);let h=[...m].join(` `);return(0,c.createVNode)(`iframe`,(0,c.mergeProps)({key:String(e.autoHeight),ref:n,title:e.title??`Embedded HTML content`,class:(0,d.clsx)(Lt[`elm-html`],i),style:e.autoHeight?{...f,height:r.value===void 0?p:`${r.value}px`}:f,height:e.autoHeight?r.value===void 0&&p===void 0?e.height:void 0:e.height},u,{srcdoc:e.html,sandbox:h}),null)}}}),I={"elm-html-viewer":`_elm-html-viewer_jde0x_1`,header:`_header_jde0x_15`,"icon-button":`_icon-button_jde0x_23`,divider:`_divider_jde0x_49`,content:`_content_jde0x_57`},Ht=(0,c.defineComponent)({name:`ElmHtmlViewer`,props:{html:{type:String,required:!0},filename:{type:String,default:void 0},sandbox:{type:String,default:void 0},autoHeight:{type:Boolean,default:void 0}},setup(e){let t=()=>{let t;try{let n=`<!doctype html>
3
3
  <html lang="en">
4
4
  <head>
5
5
  <meta charset="utf-8" />
@@ -10,4 +10,4 @@ Object.defineProperty(exports,Symbol.toStringTag,{value:`Module`});var e=Object.
10
10
  <iframe sandbox title="Embedded HTML content"></iframe>
11
11
  <script>document.querySelector("iframe").srcdoc = ${JSON.stringify(e.html).replace(/<\//g,`<\\/`)};<\/script>
12
12
  </body>
13
- </html>`;t=URL.createObjectURL(new Blob([n],{type:`text/html`}));let r=()=>URL.revokeObjectURL(t),i=window.open(t,`_blank`,`noreferrer`);i?i.addEventListener(`load`,r,{once:!0}):r()}catch(e){console.error(`Failed to open HTML in a new tab`,e),t&&URL.revokeObjectURL(t)}},n=()=>{let t,n;try{t=URL.createObjectURL(new Blob([e.html],{type:`text/html`})),n=document.createElement(`a`),n.href=t,n.download=e.filename||`download.html`,document.body.appendChild(n),n.click()}catch(e){console.error(`Failed to download HTML`,e)}finally{n?.remove(),t&&URL.revokeObjectURL(t)}};return()=>(0,c.createVNode)(`figure`,{class:(0,d.clsx)(L[`elm-html-viewer`])},[(0,c.createVNode)(`div`,{class:L.header},[(0,c.createVNode)(`button`,{type:`button`,class:L[`icon-button`],onClick:n,"aria-label":`Download`},[(0,c.createVNode)(k,{d:m.mdiDownload,size:`1.25rem`},null)]),(0,c.createVNode)(`button`,{type:`button`,class:L[`icon-button`],onClick:t,"aria-label":`Open in new tab`},[(0,c.createVNode)(k,{d:m.mdiOpenInNew,size:`1.25rem`},null)])]),(0,c.createVNode)(`hr`,{class:L.divider},null),(0,c.createVNode)(`div`,{class:L.content},[(0,c.createVNode)(zt,{html:e.html,sandbox:e.sandbox,autoHeight:e.autoHeight},null)])])}}),Vt={"parallax-watcher":`_parallax-watcher_z693a_1`,parallax:`_parallax_z693a_1`},Ht=(0,c.defineComponent)({name:`ElmParallax`,props:{images:{type:Array,required:!0}},setup(e){let t=(0,c.ref)(0),n=()=>{t.value=window.scrollY};return(0,c.onMounted)(()=>window.addEventListener(`scroll`,n)),(0,c.onBeforeUnmount)(()=>window.removeEventListener(`scroll`,n)),()=>(0,c.createVNode)(`div`,null,[(0,c.createVNode)(`div`,{class:Vt[`parallax-watcher`]},null),e.images.map((e,n)=>(0,c.createVNode)(`div`,{key:n,class:Vt.parallax,style:{backgroundImage:`url(${e})`,transform:`scale(1.2) translateY(${t.value/(1e3*(n+1))}%)`,transformOrigin:`bottom`}},null))])}}),Ut={"elm-tooltip":`_elm-tooltip_1b13f_1`,tooltip:`_tooltip_1b13f_5`,show:`_show_1b13f_18`},Wt=(0,c.defineComponent)({name:`ElmTooltip`,setup(e,{slots:t}){let n=(0,c.ref)(null),r=(0,c.ref)(!1),i=!1,a,o=(0,c.ref)({}),s=()=>{let e=n.value;if(!e)return;i&&(window.clearTimeout(a),i=!1);let t=e.getBoundingClientRect(),s=window.innerWidth;t.x>s/2?o.value={top:`${t.bottom}px`,right:`${s-t.x-t.width}px`}:o.value={top:`${t.bottom}px`,left:`${t.x}px`},r.value=!0},l=()=>{i||(i=!0,a=setTimeout(()=>{i=!1,r.value=!1},250))};return()=>(0,c.createVNode)(`span`,{ref:n,class:(0,d.clsx)(Ut[`elm-tooltip`]),onMouseover:s,onMouseleave:l},[t.original?.(),(0,c.createVNode)(`div`,{class:(0,d.clsx)(Ut.tooltip,r.value&&Ut.show),style:o.value},[t.tooltip?.()])])}}),Gt={"elm-block-fallback":`_elm-block-fallback_1sx02_1`},Kt={"elm-dot-loading-icon":`_elm-dot-loading-icon_qjgj2_15`,dot:`_dot_qjgj2_25`,bounce:`_bounce_qjgj2_1`},qt=(0,c.defineComponent)({name:`ElmDotLoadingIcon`,inheritAttrs:!1,props:{size:{type:String,default:`4em`}},setup(e,{attrs:t}){return()=>{let{class:n,style:r,...i}=t;return(0,c.createVNode)(`span`,(0,c.mergeProps)({class:(0,d.clsx)(Kt[`elm-dot-loading-icon`],n),style:[{"--elmethis-scoped-size":e.size},r]},i),[(0,c.createVNode)(`span`,{class:Kt.dot,"aria-hidden":`true`},null),(0,c.createVNode)(`span`,{class:Kt.dot,"aria-hidden":`true`},null),(0,c.createVNode)(`span`,{class:Kt.dot,"aria-hidden":`true`},null)])}}}),Jt=(0,c.defineComponent)({name:`ElmBlockFallback`,props:{height:{type:String,default:`16rem`}},setup(e){return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(Gt[`elm-block-fallback`]),style:{"--elmethis-scoped-height":e.height}},[(0,c.createVNode)(qt,null,null),(0,c.createVNode)(tt,null,null)])}}),R={"elm-button":`_elm-button_9qh0y_1`,normal:`_normal_9qh0y_22`,primary:`_primary_9qh0y_29`,colored:`_colored_9qh0y_36`,enable:`_enable_9qh0y_40`,flex:`_flex_9qh0y_59`,ripple:`_ripple_9qh0y_83`,"button-ripple":`_button-ripple_9qh0y_1`},Yt=(0,c.defineComponent)({name:`ElmButton`,inheritAttrs:!1,props:{isLoading:{type:Boolean,default:!1},block:{type:Boolean,default:!1},color:{type:String,default:void 0},primary:{type:Boolean,default:!1},disabled:{type:Boolean,default:void 0}},setup(e,{attrs:t,slots:n}){let r=(0,c.ref)(!1),i;return(0,c.onUnmounted)(()=>clearTimeout(i)),()=>{let{class:a,style:o,onClick:s,...l}=t;return(0,c.createVNode)(`button`,(0,c.mergeProps)({onClick:t=>{!e.isLoading&&!e.disabled&&typeof s==`function`&&(r.value=!0,clearTimeout(i),i=setTimeout(()=>r.value=!1,300),s(t))},disabled:e.disabled,class:(0,d.clsx)(R[`elm-button`],!e.isLoading&&!e.disabled&&R.enable,e.color&&R.colored,!e.color&&!e.primary&&R.normal,!e.color&&e.primary&&R.primary,a),style:[{display:e.block?`flex`:`inline-flex`,width:e.block?`100%`:`auto`,cursor:e.disabled?`not-allowed`:e.isLoading?`progress`:`pointer`,"--elmethis-scoped-opacity":e.disabled||e.isLoading?.6:void 0,"--elmethis-scoped-color":e.color},o]},l),[r.value&&(0,c.createVNode)(`span`,{class:R.ripple},null),e.isLoading?(0,c.createVNode)(qt,{size:`1.5rem`},null):(0,c.createVNode)(`span`,{class:R.flex},[n.default?.()])])}}}),z={"elm-button-dropdown":`_elm-button-dropdown_hhp3p_1`,block:`_block_hhp3p_7`,main:`_main_hhp3p_11`,caret:`_caret_hhp3p_24`,segment:`_segment_hhp3p_34`,menu:`_menu_hhp3p_39`,item:`_item_hhp3p_51`,selected:`_selected_hhp3p_71`,"item-disabled":`_item-disabled_hhp3p_79`};function Xt(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!(0,c.isVNode)(e)}var Zt=(0,c.defineComponent)({name:`ElmButtonDropdown`,props:{label:{type:String,default:void 0},items:{type:Array,required:!0},selectedOptionId:{type:String,default:void 0},defaultSelectedOptionId:{type:String,default:null},primary:{type:Boolean,default:!0},color:{type:String,default:void 0},block:{type:Boolean,default:!1},disabled:{type:Boolean,default:void 0},disableMainButton:{type:Boolean,default:!1},disableDropdown:{type:Boolean,default:!1},isLoading:{type:Boolean,default:!1},autoClose:{type:Boolean,default:!0},dropdownIcon:{type:String,default:m.mdiMenuDown}},emits:[`update:selectedOptionId`,`click`,`itemClick`,`openChange`],setup(e,{emit:t,slots:n}){let r=(0,f.useVModel)(e,`selectedOptionId`,t,{passive:!0,defaultValue:e.defaultSelectedOptionId??null}),i=(0,c.ref)(!1),a=(0,c.ref)(null),o=e=>{i.value!==e&&(i.value=e,t(`openChange`,e))},s=e=>{!i.value||!a.value||a.value.contains(e.target)||o(!1)};return(0,c.onMounted)(()=>document.addEventListener(`click`,s)),(0,c.onBeforeUnmount)(()=>document.removeEventListener(`click`,s)),()=>{let s,l=e.items.find(e=>e.id===r.value)??null,u=e.disabled||e.disableDropdown||e.isLoading,f=e.disabled||e.disableMainButton,p={class:(0,d.clsx)(z.main,z.segment),primary:e.primary,color:e.color,isLoading:e.isLoading,disabled:f,onClick:()=>t(`click`,l)},h={class:(0,d.clsx)(z.caret,z.segment),primary:e.primary,color:e.color,disabled:u,"aria-label":`Toggle dropdown`,"aria-expanded":i.value,onClick:()=>o(!i.value)};return(0,c.createVNode)(`div`,{ref:a,class:(0,d.clsx)(z[`elm-button-dropdown`],e.block&&z.block)},[(0,c.createVNode)(Yt,p,{default:()=>[l?(0,c.createVNode)(c.Fragment,null,[l.icon&&(0,c.createVNode)(S,{src:l.icon},null),l.label]):(0,c.createVNode)(c.Fragment,null,[n.icon?.(),e.label])]}),(0,c.createVNode)(Yt,h,{default:()=>[(0,c.createVNode)(k,{d:e.dropdownIcon,size:`1.25rem`},null)]}),(0,c.createVNode)(b,{isOpen:i.value,class:z.menu},Xt(s=e.items.map(n=>(0,c.createVNode)(`div`,{key:n.id,class:(0,d.clsx)(z.item,x.text,n.id===r.value&&z.selected,n.disabled&&z[`item-disabled`]),"aria-selected":n.id===r.value,onClick:i=>{i.stopPropagation(),!n.disabled&&(r.value=n.id,n.onClick?.(),t(`itemClick`,n),e.autoClose&&o(!1))}},[(0,c.createVNode)(k,{d:m.mdiChevronRight,color:`var(--elmethis-color-primary-weak)`,size:`0.75em`},null),n.icon&&(0,c.createVNode)(S,{src:n.icon},null),(0,c.createVNode)(C,null,{default:()=>[n.label]})])))?s:{default:()=>[s]})])}}}),B={"elm-checkbox":`_elm-checkbox_18dfs_1`,disabled:`_disabled_18dfs_12`,checkbox:`_checkbox_18dfs_22`,rect:`_rect_18dfs_27`,loading:`_loading_18dfs_30`,checked:`_checked_18dfs_34`,"loading-dot":`_loading-dot_18dfs_39`,"check-line":`_check-line_18dfs_54`,"elmethis-checkbox-check-line":`_elmethis-checkbox-check-line_18dfs_1`},Qt=(0,c.defineComponent)({name:`ElmCheckbox`,inheritAttrs:!1,props:{label:{type:String,required:!0},isLoading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},checked:{type:Boolean,default:void 0},defaultChecked:{type:Boolean,default:!1}},emits:[`update:checked`],setup(e,{attrs:t,emit:n}){let r=ne({props:e,key:`checked`,emit:n,defaultValue:e.defaultChecked??!1});return()=>{let{class:n,...i}=t;return(0,c.createVNode)(`div`,(0,c.mergeProps)({class:(0,d.clsx)(B[`elm-checkbox`],e.disabled&&B.disabled,n),onClick:()=>{!e.isLoading&&!e.disabled&&(r.value=!r.value)}},i),[(0,c.createVNode)(`div`,{style:{display:`flex`,alignItems:`center`,gap:`0.5rem`}},[(0,c.createVNode)(`svg`,{width:`24`,height:`24`,class:B.checkbox},[(0,c.createVNode)(`circle`,{cx:`0`,cy:`0`,r:`2`,class:B[`loading-dot`],style:{opacity:+!!e.isLoading}},[(0,c.createVNode)(`animate`,{attributeName:`cx`,values:`4; 20; 20; 4; 4`,dur:`1.2s`,repeatCount:`indefinite`,keySplines:`0.25 0.1 0.25 1; 0.42 0 0.58 1; 0.25 0.1 0.25 1; 0.42 0 0.58 1`,calcMode:`spline`},null),(0,c.createVNode)(`animate`,{attributeName:`cy`,values:`4; 4; 20; 20; 4`,dur:`1.2s`,repeatCount:`indefinite`,keySplines:`0.25 0.1 0.25 1; 0.42 0 0.58 1; 0.25 0.1 0.25 1; 0.42 0 0.58 1`,calcMode:`spline`},null)]),(0,c.createVNode)(`circle`,{cx:`20`,cy:`20`,r:`2`,class:B[`loading-dot`],style:{opacity:+!!e.isLoading}},[(0,c.createVNode)(`animate`,{attributeName:`cx`,values:`20; 4; 4; 20; 20`,dur:`1.2s`,repeatCount:`indefinite`,keySplines:`0.25 0.1 0.25 1; 0.42 0 0.58 1; 0.25 0.1 0.25 1; 0.42 0 0.58 1`,calcMode:`spline`},null),(0,c.createVNode)(`animate`,{attributeName:`cy`,values:`20; 20; 4; 4; 20`,dur:`1.2s`,repeatCount:`indefinite`,keySplines:`0.25 0.1 0.25 1; 0.42 0 0.58 1; 0.25 0.1 0.25 1; 0.42 0 0.58 1`,calcMode:`spline`},null)]),(0,c.createVNode)(`rect`,{x:`4`,y:`4`,width:`16`,height:`16`,class:(0,d.clsx)(B.rect,r.value&&B.checked,e.isLoading&&B.loading),"stroke-width":`0.8`},null),r.value&&(0,c.createVNode)(`polyline`,{class:B[`check-line`],points:`5,12 10,17 19,8`,"stroke-width":`1.5`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`0`,y1:`1`,x2:`4`,y2:`1`,"stroke-width":`2`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`4`,y1:`0`,x2:`24`,y2:`0`,"stroke-width":`1`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`0`,y1:`4`,x2:`0`,y2:`16`,"stroke-width":`1`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`0`,y1:`18`,x2:`0`,y2:`20`,"stroke-width":`1`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`0`,y1:`24`,x2:`20`,y2:`24`,"stroke-width":`1`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`20`,y1:`23`,x2:`24`,y2:`23`,"stroke-width":`1.5`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`24`,y1:`4`,x2:`24`,y2:`20`,style:{strokeWidth:`1px`},fill:`transparent`},null)]),(0,c.createVNode)(C,null,{default:()=>[e.label]})])])}}}),V={"elm-select":`_elm-select_1u7w1_1`,disabled:`_disabled_1u7w1_23`,active:`_active_1u7w1_27`,label:`_label_1u7w1_31`,"label-active":`_label-active_1u7w1_44`,body:`_body_1u7w1_49`,"selected-option":`_selected-option_1u7w1_56`,"option-content":`_option-content_1u7w1_59`,fallback:`_fallback_1u7w1_66`,pulldown:`_pulldown_1u7w1_74`,option:`_option_1u7w1_59`};function $t(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!(0,c.isVNode)(e)}var en=(0,c.defineComponent)({name:`ElmSelect`,props:{label:{type:String,required:!0},placeholder:{type:String,default:void 0},disabled:{type:Boolean,default:void 0},isLoading:{type:Boolean,default:!1},options:{type:Array,required:!0},selectedOptionId:{type:String,default:void 0},defaultSelectedOptionId:{type:String,default:null}},emits:[`update:selectedOptionId`],setup(e,{emit:t,slots:n}){let r=(0,f.useVModel)(e,`selectedOptionId`,t,{passive:!0,defaultValue:e.defaultSelectedOptionId??null}),i=(0,c.ref)(!1),a=(0,c.ref)(null),o=e=>{!i.value||!a.value||a.value.contains(e.target)||(i.value=!1)};(0,c.onMounted)(()=>document.addEventListener(`click`,o)),(0,c.onBeforeUnmount)(()=>document.removeEventListener(`click`,o));let s=()=>{!e.disabled&&!e.isLoading&&(i.value=!i.value)};return()=>{let t,o=e.options.find(e=>e.id===r.value)??null;return(0,c.createVNode)(`div`,{ref:a,class:(0,d.clsx)(V[`elm-select`],i.value&&V.active,(e.disabled||e.isLoading)&&V.disabled),onClick:s},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(V.label,i.value&&V[`label-active`])},[n.icon?.()??(0,c.createVNode)(k,{d:m.mdiArrowDownDropCircleOutline,size:`0.75rem`},null),e.label]),(0,c.createVNode)(`div`,{class:V.body},[(0,c.createVNode)(`div`,{class:(0,d.clsx)(V[`selected-option`],x.text)},[o?(0,c.createVNode)(`div`,{class:V[`option-content`]},[o.icon&&(0,c.createVNode)(S,{src:o.icon},null),(0,c.createVNode)(C,null,{default:()=>[o.label]})]):(0,c.createVNode)(`div`,{class:V.fallback},[(0,c.createVNode)(`span`,null,[e.placeholder??`Select an option`])])]),(0,c.createVNode)(k,{d:m.mdiMenuDown,size:`1.5rem`},null),(0,c.createVNode)(b,{isOpen:i.value,class:V.pulldown},$t(t=e.options.map(e=>(0,c.createVNode)(`div`,{key:e.id,class:(0,d.clsx)(V.option,x.text),onClick:t=>{t.stopPropagation(),r.value=e.id,i.value=!1}},[(0,c.createVNode)(k,{d:m.mdiChevronRight,color:`var(--elmethis-color-primary-weak)`,size:`0.75em`},null),e.icon&&(0,c.createVNode)(S,{src:e.icon},null),(0,c.createVNode)(C,null,{default:()=>[e.label]})])))?t:{default:()=>[t]})])])}}}),H={switch:`_switch_9s4vz_1`,bar:`_bar_9s4vz_5`,checked:`_checked_9s4vz_21`,disabled:`_disabled_9s4vz_26`,circle:`_circle_9s4vz_31`},tn=(0,c.defineComponent)({name:`ElmSwitch`,props:{color:{type:String,default:void 0},size:{type:String,default:void 0},disabled:{type:Boolean,default:!1},checked:{type:Boolean,required:!0}},emits:[`update:checked`],setup(e,{emit:t}){return()=>(0,c.createVNode)(`div`,{onClick:()=>{e.disabled||t(`update:checked`,!e.checked)},style:{"--elmethis-scoped-color":e.color??`var(--elmethis-color-primary)`,"--elmethis-scoped-padding":`2px`,"--elmethis-scoped-size":e.size??`18px`,"--elmethis-scoped-width":`calc(var(--elmethis-scoped-size) * 2 + var(--elmethis-scoped-padding) * 2)`}},[(0,c.createVNode)(`input`,{class:H.switch,type:`checkbox`,checked:e.checked,disabled:e.disabled},null),(0,c.createVNode)(`div`,{class:(0,d.clsx)(H.bar,e.checked&&H.checked,e.disabled&&H.disabled)},[(0,c.createVNode)(`div`,{class:(0,d.clsx)(H.circle,e.checked&&H.checked,e.disabled&&H.disabled)},null)])])}}),U={loading:`_loading_lgmx3_23`,"elm-text-area":`_elm-text-area_lgmx3_37`,disabled:`_disabled_lgmx3_63`,active:`_active_lgmx3_67`,header:`_header_lgmx3_72`,"label-active":`_label-active_lgmx3_85`,requierd:`_requierd_lgmx3_90`,body:`_body_lgmx3_96`,textarea:`_textarea_lgmx3_101`},nn=(0,c.defineComponent)({name:`ElmTextArea`,inheritAttrs:!1,props:{label:{type:String,required:!0},isLoading:{type:Boolean,default:!1},rows:{type:Number,default:3},maxLength:{type:Number,default:void 0},placeholder:{type:String,default:void 0},disabled:{type:Boolean,default:void 0},required:{type:Boolean,default:void 0},value:{type:String,default:void 0},defaultValue:{type:String,default:void 0}},emits:[`update:value`],setup(e,{attrs:t,emit:n,slots:r}){let i=(0,c.ref)(!1),a=(0,c.ref)(String(e.defaultValue??``)),o=(0,c.computed)(()=>e.value==null?a.value:String(e.value)),s=(0,c.computed)(()=>e.value!=null||e.defaultValue!=null),l=(0,c.computed)(()=>o.value.length);return()=>{let{class:u,style:f,onFocus:p,onBlur:h,...g}=t;return(0,c.createVNode)(`label`,{class:(0,d.clsx)(U[`elm-text-area`],i.value&&U.active,(e.disabled||e.isLoading)&&U.disabled,u),style:f},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(U.header,i.value&&U[`label-active`])},[r.icon?.()??(0,c.createVNode)(k,{d:m.mdiTextLong,size:`0.75rem`},null),(0,c.createVNode)(`span`,null,[e.label,e.required&&(0,c.createVNode)(`span`,{class:U.requierd},[(0,c.createTextVNode)(`*`)])]),s.value&&(0,c.createVNode)(C,{color:e.maxLength!=null&&l.value>e.maxLength?`var(--elmethis-color-accent-error)`:`gray`,size:`0.75rem`},{default:()=>[e.maxLength==null?`${l.value}`:`${l.value} / ${e.maxLength}`]})]),(0,c.createVNode)(`div`,{class:U.body},[(0,c.createVNode)(`textarea`,(0,c.mergeProps)({value:o.value,rows:e.rows,maxlength:e.maxLength,class:U.textarea,placeholder:e.placeholder,onFocus:e=>{i.value=!0,p?.(e)},onBlur:e=>{i.value=!1,h?.(e)},disabled:e.disabled||e.isLoading,style:{cursor:e.disabled?`not-allowed`:e.isLoading?`progress`:`auto`},"aria-required":e.required,onInput:e=>{let t=e.target.value;a.value=t,n(`update:value`,t)}},g),null)]),(0,c.createVNode)(`div`,{class:U.loading,style:{opacity:+!!e.isLoading}},null)])}}}),W={loading:`_loading_11box_23`,"elm-text-field":`_elm-text-field_11box_37`,disabled:`_disabled_11box_59`,active:`_active_11box_63`,header:`_header_11box_68`,"label-active":`_label-active_11box_81`,requierd:`_requierd_11box_86`,body:`_body_11box_92`,input:`_input_11box_100`,"right-icon-box":`_right-icon-box_11box_121`,"clickable-icon":`_clickable-icon_11box_126`,"prefix-suffix":`_prefix-suffix_11box_142`},rn=(0,c.defineComponent)({name:`ElmTextField`,inheritAttrs:!1,props:{label:{type:String,required:!0},maxLength:{type:Number,default:void 0},prefix:{type:String,default:void 0},suffix:{type:String,default:void 0},placeholder:{type:String,default:void 0},disabled:{type:Boolean,default:void 0},isLoading:{type:Boolean,default:!1},isPassword:{type:Boolean,default:!1},required:{type:Boolean,default:void 0},value:{type:String,default:void 0}},emits:[`update:value`],setup(e,{attrs:t,emit:n,slots:r}){let i=(0,c.ref)(null),a=(0,c.ref)(!1),o=(0,c.ref)(e.isPassword?`password`:`text`),s=e=>{let t=i.value;t&&((Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,`value`)?.set)?.call(t,e),t.dispatchEvent(new Event(`input`,{bubbles:!0})))};return()=>{let{class:l,style:u,onFocus:f,onBlur:p,...h}=t,g=e.value==null?0:String(e.value).length;return(0,c.createVNode)(`label`,{class:(0,d.clsx)(W[`elm-text-field`],a.value&&W.active,(e.disabled||e.isLoading)&&W.disabled,l),style:u},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(W.header,a.value&&W[`label-active`])},[r.icon?.()??(0,c.createVNode)(k,{d:m.mdiText,size:`0.75rem`},null),(0,c.createVNode)(`span`,null,[e.label,e.required&&(0,c.createVNode)(`span`,{class:W.requierd},[(0,c.createTextVNode)(`*`)])]),e.value!=null&&(0,c.createVNode)(C,{color:e.maxLength!=null&&g>e.maxLength?`var(--elmethis-color-accent-error)`:`gray`,size:`0.75rem`},{default:()=>[e.maxLength==null?`${g}`:`${g} / ${e.maxLength}`]})]),(0,c.createVNode)(`div`,{class:W.body},[e.prefix&&(0,c.createVNode)(`span`,{class:W[`prefix-suffix`]},[e.prefix]),(0,c.createVNode)(`input`,(0,c.mergeProps)({ref:i,value:e.value,type:o.value,class:W.input,placeholder:e.placeholder,onInput:e=>{n(`update:value`,e.target.value)},onFocus:e=>{a.value=!0,f?.(e)},onBlur:e=>{a.value=!1,p?.(e)},disabled:e.disabled||e.isLoading,style:{cursor:e.disabled?`not-allowed`:e.isLoading?`progress`:`auto`},"aria-required":e.required},h),null),(0,c.createVNode)(`div`,{class:W[`right-icon-box`]},[(0,c.createVNode)(`span`,{class:W[`prefix-suffix`]},[e.suffix!=null&&(0,c.createVNode)(C,null,{default:()=>[e.suffix]})]),(0,c.createVNode)(`div`,{class:W[`clickable-icon`],onClick:()=>{!e.isLoading&&!e.disabled&&(o.value=o.value===`text`?`password`:`text`)}},[(0,c.createVNode)(k,{d:o.value===`text`?m.mdiEyeOutline:m.mdiEyeOffOutline,size:`1.25rem`,color:`gray`},null)]),(0,c.createVNode)(`div`,{class:W[`clickable-icon`],onClick:()=>{!e.isLoading&&!e.disabled&&s(``)}},[(0,c.createVNode)(k,{d:m.mdiTrashCanOutline,size:`1.25rem`,color:`gray`},null)])])]),(0,c.createVNode)(`div`,{class:W.loading,style:{opacity:+!!e.isLoading}},null)])}}}),an={"elm-validation":`_elm-validation_1cigg_1`},on=(0,c.defineComponent)({name:`ElmValidation`,props:{text:{type:String,required:!0},validColor:{type:String,default:`var(--elmethis-color-accent-success)`},isValid:{type:Boolean,required:!0}},setup(e){return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(an[`elm-validation`]),style:{"--elmethis-scoped-opacity":e.isValid?1:.5}},[(0,c.createVNode)(k,{d:e.isValid?m.mdiCheckCircle:m.mdiCheckCircleOutline,color:e.isValid?e.validColor:void 0},null),(0,c.createVNode)(C,{color:e.isValid?e.validColor:void 0},{default:()=>[e.text]})])}}),sn=(0,c.defineComponent)({name:`ElmCopyIcon`,inheritAttrs:!1,props:{content:{type:[String,Array],required:!0}},setup(e,{attrs:t}){let{CopyButton:n}=Ye({class:t.class,style:t.style,content:e.content});return()=>(0,c.h)(n)}}),cn={"elm-square-loading-icon":`_elm-square-loading-icon_m72nq_19`,square:`_square_m72nq_28`,appear:`_appear_m72nq_1`},ln=(0,c.defineComponent)({name:`ElmSquareLoadingIcon`,inheritAttrs:!1,props:{size:{type:String,default:`3rem`},dimensions:{type:Number,default:4}},setup(e,{attrs:t}){return()=>{let{class:n,style:r,...i}=t,a=1200,o=a/(e.dimensions*3),s=[];for(let t=0;t<e.dimensions;t++)for(let n=0;n<e.dimensions;n++)s.push((0,c.createVNode)(`span`,{key:`${t}-${n}`,class:cn.square,style:{"--elmethis-scoped-delay":`${o*(t+n)}ms`}},null));return(0,c.createVNode)(`span`,(0,c.mergeProps)({class:(0,d.clsx)(cn[`elm-square-loading-icon`],n),style:[{"--elmethis-scoped-size":e.size,"--elmethis-scoped-dimensions":e.dimensions,"--elmethis-scoped-duration":`${a}ms`},r]},i),[s])}}}),G=`elmethis-theme`,un=`elmethis-theme-change`,dn=e=>e===`dark`?`dark`:e===`light`?`light`:null,fn=()=>typeof matchMedia<`u`&&matchMedia(`(prefers-color-scheme: dark)`).matches,pn=(e,t)=>{let n=document.documentElement;e==null?(n.style.removeProperty(`color-scheme`),n.removeAttribute(`data-theme`),t&&typeof localStorage<`u`&&localStorage.removeItem(G)):(n.style.colorScheme=e,n.setAttribute(`data-theme`,e),t&&typeof localStorage<`u`&&localStorage.setItem(G,e)),window.dispatchEvent(new CustomEvent(un,{detail:e}))},mn=()=>{if(typeof window>`u`)return!1;let e=dn(localStorage.getItem(G));return e==null?fn():e===`dark`};function hn(){let e=(0,c.ref)(mn()),t=()=>{e.value=!e.value,pn(e.value?`dark`:`light`,!0)},n=t=>{let n=t.detail;e.value=n==null?fn():n===`dark`},r=t=>{if(t.key!==G)return;let n=dn(t.newValue);e.value=n==null?fn():n===`dark`,pn(n,!1)},i,a=t=>{dn(localStorage.getItem(G))??(e.value=t.matches)};return(0,c.onMounted)(()=>{window.addEventListener(un,n),window.addEventListener(`storage`,r);let e=dn(localStorage.getItem(G));e!=null&&pn(e,!1),typeof matchMedia<`u`&&(i=matchMedia(`(prefers-color-scheme: dark)`),i.addEventListener(`change`,a))}),(0,c.onBeforeUnmount)(()=>{window.removeEventListener(un,n),window.removeEventListener(`storage`,r),i?.removeEventListener(`change`,a)}),{isDarkTheme:e,toggleTheme:t}}var gn={"elm-toggle-theme":`_elm-toggle-theme_11awq_1`},_n=(0,c.defineComponent)({name:`ElmToggleTheme`,props:{size:{type:[String,Number],default:`2rem`}},setup(e){let{isDarkTheme:t,toggleTheme:n}=hn();return()=>t.value?(0,c.createVNode)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:e.size,height:e.size,viewBox:`0 0 24 24`,class:(0,d.clsx)(gn[`elm-toggle-theme`]),onClick:n},[(0,c.createVNode)(`path`,{"fill-opacity":`0`,d:`M15.22 6.03l2.53-1.94L14.56 4L13.5 1l-1.06 3l-3.19.09l2.53 1.94l-.91 3.06l2.63-1.81l2.63 1.81z`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{id:`lineMdSunnyOutlineToMoonLoopTransition0`,fill:`freeze`,attributeName:`fill-opacity`,begin:`0.6s;lineMdSunnyOutlineToMoonLoopTransition0.begin+6s`,dur:`0.4s`,values:`0;1`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+2.2s`,dur:`0.4s`,values:`1;0`},null)]),(0,c.createVNode)(`path`,{"fill-opacity":`0`,d:`M13.61 5.25L15.25 4l-2.06-.05L12.5 2l-.69 1.95L9.75 4l1.64 1.25l-.59 1.98l1.7-1.17l1.7 1.17z`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+3s`,dur:`0.4s`,values:`0;1`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+5.2s`,dur:`0.4s`,values:`1;0`},null)]),(0,c.createVNode)(`path`,{"fill-opacity":`0`,d:`M19.61 12.25L21.25 11l-2.06-.05L18.5 9l-.69 1.95l-2.06.05l1.64 1.25l-.59 1.98l1.7-1.17l1.7 1.17z`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+0.4s`,dur:`0.4s`,values:`0;1`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+2.8s`,dur:`0.4s`,values:`1;0`},null)]),(0,c.createVNode)(`path`,{"fill-opacity":`0`,d:`M20.828 9.731l1.876-1.439l-2.366-.067L19.552 6l-.786 2.225l-2.366.067l1.876 1.439L17.601 12l1.951-1.342L21.503 12z`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+3.4s`,dur:`0.4s`,values:`0;1`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+5.6s`,dur:`0.4s`,values:`1;0`},null)]),(0,c.createVNode)(`g`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`},[(0,c.createVNode)(`g`,null,[(0,c.createVNode)(`path`,{"stroke-dasharray":`2`,"stroke-dashoffset":`4`,d:`M12 21v1M21 12h1M12 3v-1M3 12h-1`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`stroke-dashoffset`,dur:`0.2s`,values:`4;2`},null)]),(0,c.createVNode)(`path`,{"stroke-dasharray":`2`,"stroke-dashoffset":`4`,d:`M18.5 18.5l0.5 0.5M18.5 5.5l0.5 -0.5M5.5 5.5l-0.5 -0.5M5.5 18.5l-0.5 0.5`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`stroke-dashoffset`,begin:`0.2s`,dur:`0.2s`,values:`4;2`},null)]),(0,c.createVNode)(`set`,{fill:`freeze`,attributeName:`opacity`,begin:`0.5s`,to:`0`},null)]),(0,c.createVNode)(`path`,{d:`M7 6 C7 12.08 11.92 17 18 17 C18.53 17 19.05 16.96 19.56 16.89 C17.95 19.36 15.17 21 12 21 C7.03 21 3 16.97 3 12 C3 8.83 4.64 6.05 7.11 4.44 C7.04 4.95 7 5.47 7 6 Z`,opacity:`0`},[(0,c.createVNode)(`set`,{fill:`freeze`,attributeName:`opacity`,begin:`0.5s`,to:`1`},null)])]),(0,c.createVNode)(`mask`,{id:`lineMdSunnyOutlineToMoonLoopTransition1`},[(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`12`,fill:`#fff`},null),(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`4`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.1s`,dur:`0.4s`,values:`4;8`},null)]),(0,c.createVNode)(`circle`,{cx:`22`,cy:`2`,r:`3`,fill:`#fff`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cx`,begin:`0.1s`,dur:`0.4s`,values:`22;18`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cy`,begin:`0.1s`,dur:`0.4s`,values:`2;6`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.1s`,dur:`0.4s`,values:`3;12`},null)]),(0,c.createVNode)(`circle`,{cx:`22`,cy:`2`,r:`1`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cx`,begin:`0.1s`,dur:`0.4s`,values:`22;18`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cy`,begin:`0.1s`,dur:`0.4s`,values:`2;6`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.1s`,dur:`0.4s`,values:`1;10`},null)])]),(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`6`,mask:`url(#lineMdSunnyOutlineToMoonLoopTransition1)`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.1s`,dur:`0.4s`,values:`6;10`},null),(0,c.createVNode)(`set`,{fill:`freeze`,attributeName:`opacity`,begin:`0.5s`,to:`0`},null)])]):(0,c.createVNode)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:e.size,height:e.size,viewBox:`0 0 24 24`,class:(0,d.clsx)(gn[`elm-toggle-theme`]),onClick:n},[(0,c.createVNode)(`g`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`},[(0,c.createVNode)(`path`,{"stroke-dasharray":`2`,"stroke-dashoffset":`2`,d:`M12 19v1M19 12h1M12 5v-1M5 12h-1`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`d`,begin:`1.2s`,dur:`0.2s`,values:`M12 19v1M19 12h1M12 5v-1M5 12h-1;M12 21v1M21 12h1M12 3v-1M3 12h-1`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`stroke-dashoffset`,begin:`1.2s`,dur:`0.2s`,values:`2;0`},null)]),(0,c.createVNode)(`path`,{"stroke-dasharray":`2`,"stroke-dashoffset":`2`,d:`M17 17l0.5 0.5M17 7l0.5 -0.5M7 7l-0.5 -0.5M7 17l-0.5 0.5`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`d`,begin:`1.4s`,dur:`0.2s`,values:`M17 17l0.5 0.5M17 7l0.5 -0.5M7 7l-0.5 -0.5M7 17l-0.5 0.5;M18.5 18.5l0.5 0.5M18.5 5.5l0.5 -0.5M5.5 5.5l-0.5 -0.5M5.5 18.5l-0.5 0.5`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`stroke-dashoffset`,begin:`1.4s`,dur:`0.2s`,values:`2;0`},null)]),(0,c.createVNode)(`animateTransform`,{attributeName:`transform`,dur:`30s`,repeatCount:`indefinite`,type:`rotate`,values:`0 12 12;360 12 12`},null)]),(0,c.createVNode)(`g`,{fill:`currentColor`},[(0,c.createVNode)(`path`,{d:`M15.22 6.03L17.75 4.09L14.56 4L13.5 1L12.44 4L9.25 4.09L11.78 6.03L10.87 9.09L13.5 7.28L16.13 9.09L15.22 6.03Z`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,dur:`0.4s`,values:`1;0`},null)]),(0,c.createVNode)(`path`,{d:`M19.61 12.25L21.25 11L19.19 10.95L18.5 9L17.81 10.95L15.75 11L17.39 12.25L16.8 14.23L18.5 13.06L20.2 14.23L19.61 12.25Z`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`0.2s`,dur:`0.4s`,values:`1;0`},null)])]),(0,c.createVNode)(`path`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M7 6 C7 12.08 11.92 17 18 17 C18.53 17 19.05 16.96 19.56 16.89 C17.95 19.36 15.17 21 12 21 C7.03 21 3 16.97 3 12 C3 8.83 4.64 6.05 7.11 4.44 C7.04 4.95 7 5.47 7 6 Z`},[(0,c.createVNode)(`set`,{fill:`freeze`,attributeName:`opacity`,begin:`0.6s`,to:`0`},null)]),(0,c.createVNode)(`mask`,{id:`lineMdMoonToSunnyOutlineLoopTransition0`},[(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`12`,fill:`#fff`},null),(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`8`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.6s`,dur:`0.4s`,values:`8;4`},null)]),(0,c.createVNode)(`circle`,{cx:`18`,cy:`6`,r:`12`,fill:`#fff`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cx`,begin:`0.6s`,dur:`0.4s`,values:`18;22`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cy`,begin:`0.6s`,dur:`0.4s`,values:`6;2`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.6s`,dur:`0.4s`,values:`12;3`},null)]),(0,c.createVNode)(`circle`,{cx:`18`,cy:`6`,r:`10`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cx`,begin:`0.6s`,dur:`0.4s`,values:`18;22`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cy`,begin:`0.6s`,dur:`0.4s`,values:`6;2`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.6s`,dur:`0.4s`,values:`10;1`},null)])]),(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`10`,mask:`url(#lineMdMoonToSunnyOutlineLoopTransition0)`,opacity:`0`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.6s`,dur:`0.4s`,values:`10;6`},null),(0,c.createVNode)(`set`,{fill:`freeze`,attributeName:`opacity`,begin:`0.6s`,to:`1`},null)])])}}),vn={"elm-breadcrumb":`_elm-breadcrumb_13oke_1`,"link-container":`_link-container_13oke_9`,icon:`_icon_13oke_23`,chunk:`_chunk_13oke_36`,chevron:`_chevron_13oke_41`},yn=(0,c.defineComponent)({name:`ElmBreadcrumb`,props:{links:{type:Array,required:!0}},setup(e){return()=>(0,c.createVNode)(`nav`,{class:(0,d.clsx)(vn[`elm-breadcrumb`])},[e.links.map((t,n)=>(0,c.createVNode)(`span`,{key:n,style:{display:`contents`}},[(0,c.createVNode)(`span`,{class:vn[`link-container`],onClick:t.onClick},[(0,c.createVNode)(k,{class:vn.icon,d:n===0?m.mdiHome:n===e.links.length-1?m.mdiApplicationOutline:m.mdiFolderOpen,size:`1rem`},null),(0,c.createVNode)(`span`,{class:vn.chunk},[t.text])]),e.links.length!==n+1&&(0,c.createVNode)(k,{class:vn.chevron,d:m.mdiChevronRight,size:`1rem`},null)]))])}}),K={"elm-page-top":`_elm-page-top_18d6m_1`,move:`_move_18d6m_1`,visible:`_visible_18d6m_30`,partial:`_partial_18d6m_37`,text:`_text_18d6m_74`},bn=(0,c.defineComponent)({name:`ElmPageTop`,props:{position:{type:String,default:`right`}},setup(e){let t=(0,c.ref)(!1),n=()=>{t.value=window.scrollY>100};(0,c.onMounted)(()=>{window.addEventListener(`scroll`,n,{passive:!0}),n()}),(0,c.onBeforeUnmount)(()=>window.removeEventListener(`scroll`,n));let r=()=>{window.scrollTo({top:0,behavior:`smooth`})};return()=>(0,c.createVNode)(`nav`,{class:(0,d.clsx)(K[`elm-page-top`],t.value&&K.visible),style:{"--elmethis-scoped-size":`64px`,left:e.position===`left`?`0`:`auto`,right:e.position===`right`?`0`:`auto`},onClick:r},[(0,c.createVNode)(`div`,{"aria-hidden":`true`,class:K.partial},null),(0,c.createVNode)(`div`,{"aria-hidden":`true`,class:K.partial},null),(0,c.createVNode)(`div`,{"aria-hidden":`true`,class:K.partial},null),(0,c.createVNode)(`span`,{class:K.text},[(0,c.createTextVNode)(`Back to Top`)])])}}),q={"elm-color-primitive-sample":`_elm-color-primitive-sample_vuro0_1`,toolbar:`_toolbar_vuro0_6`,"mode-toggle":`_mode-toggle_vuro0_11`,"mode-toggle-icon":`_mode-toggle-icon_vuro0_24`,"section-title":`_section-title_vuro0_33`,group:`_group_vuro0_40`,scale:`_scale_vuro0_46`,swatch:`_swatch_vuro0_52`,"swatch-name":`_swatch-name_vuro0_55`,"swatch-bg":`_swatch-bg_vuro0_60`},xn=e=>{let t=e.match(/\d+(\.\d+)?/g);if(!t||t.length<3)return null;let n=e=>Math.round(Number(e)).toString(16).padStart(2,`0`);return`#${n(t[0])}${n(t[1])}${n(t[2])}`},J=[100,500,900],Sn=[100,200,300,400,500,600,700,800,900],Cn=[{hue:`red`,steps:J},{hue:`orange`,steps:J},{hue:`yellow`,steps:J},{hue:`green`,steps:J},{hue:`cyan`,steps:J},{hue:`blue`,steps:J},{hue:`purple`,steps:J},{hue:`magenta`,steps:J},{hue:`slate`,steps:Sn},{hue:`gold`,steps:Sn}],wn=(0,c.defineComponent)({name:`ElmColorPrimitiveSample`,setup(){let e=(0,c.ref)(null),t=(0,c.ref)(`variable`),n;(0,c.onBeforeUnmount)(()=>{n!==void 0&&clearTimeout(n)});let r=async r=>{let i=r.target?.closest(`[data-copy-token]`),a=i?.getAttribute(`data-copy-token`);if(!i||!a)return;let o=a;if(t.value===`hex`){let e=i.closest(`[data-theme]`)??document.documentElement,t=document.createElement(`span`);t.style.color=`var(${a})`,t.style.display=`none`,e.appendChild(t);let n=xn(window.getComputedStyle(t).color);t.remove(),n&&(o=n)}await window.navigator.clipboard.writeText(o),n!==void 0&&clearTimeout(n),e.value=a,n=setTimeout(()=>{e.value=null,n=void 0},1500)};return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(q[`elm-color-primitive-sample`]),onClick:e=>{r(e)}},[(0,c.createVNode)(`div`,{class:q.toolbar},[(0,c.createVNode)(`button`,{type:`button`,class:q[`mode-toggle`],onClick:()=>{t.value=t.value===`variable`?`hex`:`variable`}},[(0,c.createVNode)(k,{class:q[`mode-toggle-icon`],d:t.value===`hex`?m.mdiHexadecimal:m.mdiFormatColorFill,size:`1.25rem`},null),(0,c.createTextVNode)(`Copy: `),t.value===`hex`?`hex value`:`variable name`])]),Cn.map(({hue:t,steps:n})=>(0,c.createVNode)(`div`,{key:t,class:q.group},[(0,c.createVNode)(`span`,{class:q[`section-title`]},[t]),(0,c.createVNode)(`div`,{class:q.scale},[n.map(n=>{let r=`--elmethis-primitive-color-${t}-${n}`;return(0,c.createVNode)(`div`,{key:r,class:q.swatch,style:{gridColumn:String(n/100)},"data-copy-token":r,title:r},[(0,c.createVNode)(`div`,{class:q[`swatch-bg`],style:{backgroundColor:`var(${r})`}},null),(0,c.createVNode)(`code`,{class:q[`swatch-name`]},[e.value===r?`copied!`:n])])})])]))])}}),Y={"elm-color-semantic-sample":`_elm-color-semantic-sample_6i1j1_1`,toolbar:`_toolbar_6i1j1_6`,"mode-toggle":`_mode-toggle_6i1j1_11`,"mode-toggle-icon":`_mode-toggle-icon_6i1j1_24`,panels:`_panels_6i1j1_33`,header:`_header_6i1j1_38`,body:`_body_6i1j1_49`,"section-title":`_section-title_6i1j1_56`,group:`_group_6i1j1_63`,panel:`_panel_6i1j1_33`,"panel-body":`_panel-body_6i1j1_72`,surface:`_surface_6i1j1_86`,foreground:`_foreground_6i1j1_97`,"accent-pair":`_accent-pair_6i1j1_102`,"color-sample-container":`_color-sample-container_6i1j1_112`,"color-sample":`_color-sample_6i1j1_112`,"color-sample-bg":`_color-sample-bg_6i1j1_121`,"color-sample-name":`_color-sample-name_6i1j1_127`},Tn=e=>{let t=e.match(/\d+(\.\d+)?/g);if(!t||t.length<3)return null;let n=e=>Math.round(Number(e)).toString(16).padStart(2,`0`);return`#${n(t[0])}${n(t[1])}${n(t[2])}`},En=[`--elmethis-color-surface-sunken`,`--elmethis-color-surface-base`,`--elmethis-color-surface-raised`],Dn=[`--elmethis-color-neutral-weak`,`--elmethis-color-neutral`,`--elmethis-color-neutral-strong`,`--elmethis-color-primary-weak`,`--elmethis-color-primary`,`--elmethis-color-primary-strong`,`--elmethis-color-accent-link`,`--elmethis-color-accent-link-visited`],On=[`--elmethis-color-neutral-weak`,`--elmethis-color-neutral`,`--elmethis-color-neutral-strong`],kn=[`--elmethis-color-primary-weak`,`--elmethis-color-primary`,`--elmethis-color-primary-strong`],An=[{fg:`--elmethis-color-accent-info`,surface:`--elmethis-color-accent-info-surface`},{fg:`--elmethis-color-accent-success`,surface:`--elmethis-color-accent-success-surface`},{fg:`--elmethis-color-accent-important`,surface:`--elmethis-color-accent-important-surface`},{fg:`--elmethis-color-accent-warning`,surface:`--elmethis-color-accent-warning-surface`},{fg:`--elmethis-color-accent-error`,surface:`--elmethis-color-accent-error-surface`}],jn=[`red`,`orange`,`yellow`,`green`,`cyan`,`blue`,`magenta`].map(e=>({fg:`--elmethis-color-display-${e}`,surface:`--elmethis-color-display-${e}-surface`})),Mn=(0,c.defineComponent)({name:`ElmColorSemanticSample`,setup(){let e=(0,c.ref)(null),t=(0,c.ref)(`variable`),n;(0,c.onBeforeUnmount)(()=>{n!==void 0&&clearTimeout(n)});let r=async r=>{let i=r.target?.closest(`[data-copy-token]`),a=i?.getAttribute(`data-copy-token`);if(!i||!a)return;let o=a;if(t.value===`hex`){let e=i.closest(`[data-theme]`)??document.documentElement,t=document.createElement(`span`);t.style.color=`var(${a})`,t.style.display=`none`,e.appendChild(t);let n=Tn(window.getComputedStyle(t).color);t.remove(),n&&(o=n)}await window.navigator.clipboard.writeText(o),n!==void 0&&clearTimeout(n),e.value=a,n=setTimeout(()=>{e.value=null,n=void 0},1500)},i=t=>e.value===t?`copied!`:t,a=e=>(0,c.createVNode)(`div`,{class:Y[`color-sample-container`]},[e.map(e=>(0,c.createVNode)(`div`,{key:e,class:Y[`color-sample`],"data-copy-token":e},[(0,c.createVNode)(`div`,{class:Y[`color-sample-bg`],style:{backgroundColor:`var(${e})`}},null),(0,c.createVNode)(`code`,{class:Y[`color-sample-name`]},[i(e)])]))]),o=e=>(0,c.createVNode)(`div`,{class:Y.panel,"data-theme":e,style:{colorScheme:e}},[(0,c.createVNode)(`div`,{class:Y[`panel-body`],style:{backgroundColor:`var(--elmethis-color-surface-base)`}},[(0,c.createVNode)(`header`,{class:Y.header,style:{backgroundColor:`var(--elmethis-color-surface-sunken)`}},[(0,c.createVNode)(`span`,{"data-copy-token":`--elmethis-color-surface-sunken`},[i(`--elmethis-color-surface-sunken`)])]),(0,c.createVNode)(`div`,{class:Y.body},[(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Surface`)]),En.map(e=>(0,c.createVNode)(`div`,{key:e,class:Y.surface,style:{backgroundColor:`var(${e})`},"data-copy-token":e},[i(e)]))]),(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Foreground`)]),Dn.map(e=>(0,c.createVNode)(`span`,{key:e,class:Y.foreground,style:{color:`var(${e})`},"data-copy-token":e},[i(e)]))]),(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Accent`)]),An.map(({fg:e,surface:t})=>(0,c.createVNode)(`div`,{key:e,class:Y[`accent-pair`],style:{color:`var(${e})`,backgroundColor:`var(${t})`}},[(0,c.createVNode)(`span`,{"data-copy-token":e},[i(e)]),(0,c.createVNode)(`span`,{"data-copy-token":t},[i(t)])]))]),(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Neutral`)]),a(On)]),(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Primary`)]),a(kn)]),(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Display`)]),jn.map(({fg:e,surface:t})=>(0,c.createVNode)(`div`,{key:e,class:Y[`accent-pair`],style:{color:`var(${e})`,backgroundColor:`var(${t})`}},[(0,c.createVNode)(`span`,{"data-copy-token":e},[i(e)]),(0,c.createVNode)(`span`,{"data-copy-token":t},[i(t)])]))])])])]);return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(Y[`elm-color-semantic-sample`])},[(0,c.createVNode)(`div`,{class:Y.toolbar},[(0,c.createVNode)(`button`,{type:`button`,class:Y[`mode-toggle`],onClick:()=>{t.value=t.value===`variable`?`hex`:`variable`}},[(0,c.createVNode)(k,{class:Y[`mode-toggle-icon`],d:t.value===`hex`?m.mdiHexadecimal:m.mdiFormatColorFill,size:`1.25rem`},null),(0,c.createTextVNode)(`Copy: `),t.value===`hex`?`hex value`:`variable name`])]),(0,c.createVNode)(`div`,{class:Y.panels,onClick:e=>{r(e)}},[o(`light`),o(`dark`)])])}}),Nn={"elm-markdown":`_elm-markdown_14gxe_1`};function X(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!(0,c.isVNode)(e)}var Z=e=>{let t,n,r,i,a=[];for(let o=0;o<e.length;o++){let s=e[o];switch(s.type){case`blockquote`:if(s.tokens&&s.tokens.length!==0){let e;a.push((0,c.createVNode)(ft,{key:o},X(e=Z(s.tokens))?e:{default:()=>[e]}))}break;case`br`:a.push((0,c.createVNode)(`br`,{key:o},null));break;case`code`:a.push((0,c.createVNode)(Xe,{key:o,code:s.text.trim(),language:s.lang},null));break;case`codespan`:a.push((0,c.createVNode)(C,{key:o,code:!0},{default:()=>[s.text]}));break;case`def`:break;case`del`:a.push(s.tokens&&s.tokens.length!==0?(0,c.createVNode)(C,{key:o,strikethrough:!0},X(t=Z(s.tokens))?t:{default:()=>[t]}):(0,c.createVNode)(C,{key:o,strikethrough:!0},{default:()=>[s.text]}));break;case`em`:a.push(s.tokens&&s.tokens.length!==0?(0,c.createVNode)(C,{key:o,italic:!0},X(n=Z(s.tokens))?n:{default:()=>[n]}):(0,c.createVNode)(C,{key:o,italic:!0},{default:()=>[s.text]}));break;case`escape`:break;case`heading`:{let e=s.depth;if(s.tokens&&s.tokens.length!==0){let t;a.push((0,c.createVNode)(pe,{key:o,level:e},X(t=Z(s.tokens))?t:{default:()=>[t]}))}else a.push((0,c.createVNode)(pe,{key:o,level:e,text:s.text},null));break}case`hr`:a.push((0,c.createVNode)(_t,{key:o},null));break;case`html`:break;case`image`:a.push((0,c.createVNode)(at,{key:o,enableModal:!0,src:s.href,alt:s.text},null));break;case`link`:a.push(s.tokens&&s.tokens.length!==0?(0,c.createVNode)(C,{key:o,href:s.href},X(r=Z(s.tokens))?r:{default:()=>[r]}):(0,c.createVNode)(C,{key:o,href:s.href},{default:()=>[s.text]}));break;case`list`:{let e=s.items.map((e,t)=>(0,c.createVNode)(`li`,{key:t},[Z(e.tokens)]));a.push((0,c.createVNode)(yt,{key:o,listStyle:s.ordered?`ordered`:`unordered`},X(e)?e:{default:()=>[e]}));break}case`list_item`:a.push((0,c.createVNode)(`li`,{key:o},[s.tokens&&s.tokens.length!==0?Z(s.tokens):s.text]));break;case`paragraph`:a.push((0,c.createVNode)(_e,{key:o},{default:()=>[s.tokens&&s.tokens.length!==0?Z(s.tokens):s.text]}));break;case`space`:break;case`strong`:a.push(s.tokens&&s.tokens.length!==0?(0,c.createVNode)(C,{key:o,bold:!0},X(i=Z(s.tokens))?i:{default:()=>[i]}):(0,c.createVNode)(C,{key:o,bold:!0},{default:()=>[s.text]}));break;case`table`:{let e,t=e=>e.map((e,t)=>{let n;return(0,c.createVNode)(Tt,{key:t},X(n=Z(e.tokens))?n:{default:()=>[n]})}),n=(0,c.createVNode)(kt,null,X(e=t(s.header))?e:{default:()=>[e]}),r=s.rows.map((e,n)=>{let r;return(0,c.createVNode)(kt,{key:n},X(r=t(e))?r:{default:()=>[r]})});a.push((0,c.createVNode)(St,{key:o},{default:()=>[(0,c.createVNode)(Dt,null,X(n)?n:{default:()=>[n]}),(0,c.createVNode)(Ct,null,X(r)?r:{default:()=>[r]})]}));break}case`text`:s.tokens&&s.tokens.length!==0?a.push(...Z(s.tokens)):a.push(s.text);break;default:break}}return a},Pn=(0,c.defineComponent)({name:`ElmMarkdownStable`,props:{tokens:{type:Array,required:!0}},setup(e){return()=>Z(e.tokens)}}),Fn=(0,c.defineComponent)({name:`ElmMarkdown`,props:{markdown:{type:String,required:!0},isStreaming:{type:Boolean,default:!1}},setup(e){let t=(0,c.shallowRef)([]),n=(0,c.shallowRef)([]);return(0,c.watch)(()=>e.markdown,r=>{let i=te.marked.setOptions({gfm:!0}).lexer(r);if(e.isStreaming&&i.length>0){let e=i.slice(0,-1);e.length!==t.value.length&&(t.value=e),n.value=i.slice(-1)}else t.value=i,n.value=[]},{immediate:!0}),()=>(0,c.createVNode)(`div`,{class:Nn[`elm-markdown`]},[(0,c.createVNode)(Pn,{tokens:t.value},null),Z(n.value)])}}),Q={"elm-wordle":`_elm-wordle_1llms_1`,"message-area":`_message-area_1llms_11`,"fade-in":`_fade-in_1llms_1`,error:`_error_1llms_26`,status:`_status_1llms_32`,board:`_board_1llms_41`,row:`_row_1llms_47`,cell:`_cell_1llms_52`,empty:`_empty_1llms_68`,tbd:`_tbd_1llms_74`,correct:`_correct_1llms_80`,present:`_present_1llms_86`,absent:`_absent_1llms_92`,keyboard:`_keyboard_1llms_100`,"keyboard-row":`_keyboard-row_1llms_108`,key:`_key_1llms_100`,wide:`_wide_1llms_137`,"reset-container":`_reset-container_1llms_156`,hidden:`_hidden_1llms_159`,"reset-button":`_reset-button_1llms_164`},In=`which.there.their.about.would.these.other.words.could.write.first.water.after.where.right.think.three.years.place.sound.great.again.still.every.small.found.those.never.under.might.while.house.world.below.asked.going.large.until.along.shall.being.often.earth.began.since.study.night.light.above.paper.parts.young.story.point.times.heard.whole.white.given.means.music.miles.thing.today.later.using.money.lines.order.group.among.learn.known.space.table.early.trees.short.hands.state.black.shown.stood.front.voice.kinds.makes.comes.close.power.lived.vowel.taken.built.heart.ready.quite.class.bring.round.horse.shows.piece.green.stand.birds.start.river.tried.least.field.whose.girls.leave.added.color.third.hours.moved.plant.doing.names.forms.heavy.ideas.cried.check.floor.begin.woman.alone.plane.spell.watch.carry.wrote.clear.named.books.child.glass.human.takes.party.build.seems.blood.sides.seven.mouth.solve.north.value.death.maybe.happy.tells.gives.looks.shape.lives.steps.areas.sense.speak.force.ocean.speed.women.metal.south.grass.scale.cells.lower.sleep.wrong.pages.ships.needs.rocks.eight.major.level.total.ahead.reach.stars.store.sight.terms.catch.works.board.cover.songs.equal.stone.waves.guess.dance.spoke.break.cause.radio.weeks.lands.basic.liked.trade.fresh.final.fight.meant.drive.spent.local.waxes.knows.train.bread.homes.teeth.coast.thick.brown.clean.quiet.sugar.facts.steel.forth.rules.notes.units.peace.month.verbs.seeds.helps.sharp.visit.woods.chief.walls.cross.wings.grown.cases.foods.crops.fruit.stick.wants.stage.sheep.nouns.plain.drink.bones.apart.turns.moves.touch.angle.based.range.marks.tired.older.farms.spend.shoes.goods.chair.twice.cents.empty.alike.style.broke.pairs.count.enjoy.score.shore.roots.paint.heads.shook.serve.angry.crowd.wheel.quick.dress.share.alive.noise.solid.cloth.signs.hills.types.drawn.worth.truck.piano.upper.loved.usual.faces.drove.cabin.boats.towns.proud.court.model.prime.fifty.plans.yards.prove.tools.price.sheet.smell.boxes.raise.match.truth.roads.threw.enemy.lunch.chart.scene.graph.doubt.guide.winds.block.grain.smoke.mixed.games.wagon.sweet.topic.extra.plate.title.knife.fence.falls.cloud.wheat.plays.enter.broad.steam.atoms.press.lying.basis.clock.taste.grows.thank.storm.agree.brain.track.smile.funny.beach.stock.hurry.saved.sorry.giant.trail.offer.ought.rough.daily.avoid.keeps.throw.allow.cream.laugh.edges.teach.frame.bells.dream.magic.occur.ended.chord.false.skill.holes.dozen.brave.apple.climb.outer.pitch.ruler.holds.fixed.costs.calls.blank.staff.labor.eaten.youth.tones.honor.globe.gases.doors.poles.loose.apply.tears.exact.brush.chest.layer.whale.minor.faith.tests.judge.items.worry.waste.hoped.strip.begun.aside.lakes.bound.depth.candy.event.worse.aware.shell.rooms.ranch.image.snake.aloud.dried.likes.motor.pound.knees.refer.fully.chain.shirt.flour.drops.spite.orbit.banks.shoot.curve.tribe.tight.blind.slept.shade.claim.flies.theme.queen.fifth.union.hence.straw.entry.issue.birth.feels.anger.brief.rhyme.glory.guard.flows.flesh.owned.trick.yours.sizes.noted.width.burst.route.lungs.uncle.bears.royal.kings.forty.trial.cards.brass.opera.chose.owner.vapor.beats.mouse.tough.wires.meter.tower.finds.inner.stuck.arrow.poems.label.swing.solar.truly.tense.beans.split.rises.weigh.hotel.stems.pride.swung.grade.digit.badly.boots.pilot.sales.swept.lucky.prize.stove.tubes.acres.wound.steep.slide.trunk.error.porch.slave.exist.faced.mines.marry.juice.raced.waved.goose.trust.fewer.favor.mills.views.joint.eager.spots.blend.rings.adult.index.nails.horns.balls.flame.rates.drill.trace.skins.waxed.seats.stuff.ratio.minds.dirty.silly.coins.hello.trips.leads.rifle.hopes.bases.shine.bench.moral.fires.meals.shake.shops.cycle.movie.slope.canoe.teams.folks.fired.bands.thumb.shout.canal.habit.reply.ruled.fever.crust.shelf.walks.midst.crack.print.tales.coach.stiff.flood.verse.awake.rocky.march.fault.swift.faint.civil.ghost.feast.blade.limit.germs.reads.ducks.dairy.worst.gifts.lists.stops.rapid.brick.claws.beads.beast.skirt.cakes.lions.frogs.tries.nerve.grand.armed.treat.honey.moist.legal.penny.crown.shock.taxes.sixty.altar.pulls.sport.drums.talks.dying.dates.drank.blows.lever.wages.proof.drugs.tanks.sings.tails.pause.herds.arose.hated.clues.novel.shame.burnt.races.flash.weary.heels.token.coats.spare.shiny.alarm.dimes.sixth.clerk.mercy.sunny.guest.float.shone.pipes.worms.bills.sweat.suits.smart.upset.rains.sandy.rainy.parks.sadly.fancy.rider.unity.bunch.rolls.crash.craft.newly.gates.hatch.paths.funds.wider.grace.grave.tides.admit.shift.sails.pupil.tiger.angel.cruel.agent.drama.urged.patch.nests.vital.sword.blame.weeds.screw.vocal.bacon.chalk.cargo.crazy.acted.goats.arise.witch.loves.queer.dwell.backs.ropes.shots.merry.phone.cheek.peaks.ideal.beard.eagle.creek.cries.ashes.stall.yield.mayor.opens.input.fleet.tooth.cubic.wives.burns.poets.apron.spear.organ.cliff.stamp.paste.rural.baked.chase.slice.slant.knock.noisy.sorts.stays.wiped.blown.piled.clubs.cheer.widow.twist.tenth.hides.comma.sweep.spoon.stern.crept.maple.deeds.rides.muddy.crime.jelly.ridge.drift.dusty.devil.tempo.humor.sends.steal.tents.waist.roses.reign.noble.cheap.dense.linen.geese.woven.posts.hired.wrath.salad.bowed.tires.shark.belts.grasp.blast.polar.fungi.tends.pearl.loads.jokes.veins.frost.hears.loses.hosts.diver.phase.toads.alert.tasks.seams.coral.focus.naked.puppy.jumps.spoil.quart.macro.fears.flung.spark.vivid.brook.steer.spray.decay.ports.socks.urban.goals.grant.minus.films.tunes.shaft.firms.skies.bride.wreck.flock.stare.hobby.bonds.dared.faded.thief.crude.pants.flute.votes.tonal.radar.wells.skull.hairs.argue.wears.dolls.voted.caves.cared.broom.scent.panel.fairy.olive.bends.prism.lamps.cable.peach.ruins.rally.schwa.lambs.sells.cools.draft.charm.limbs.brake.gazed.cubes.delay.beams.fetch.ranks.array.harsh.camel.vines.picks.naval.purse.rigid.crawl.toast.soils.sauce.basin.ponds.twins.wrist.fluid.pools.brand.stalk.robot.reeds.hoofs.buses.sheer.grief.bloom.dwelt.melts.risen.flags.knelt.fiber.roofs.freed.armor.piles.aimed.algae.twigs.lemon.ditch.drunk.rests.chill.slain.panic.cords.tuned.crisp.ledge.dived.swamp.clung.stole.molds.yarns.liver.gauge.breed.stool.gulls.awoke.gross.diary.rails.belly.trend.flask.stake.fried.draws.actor.handy.bowls.haste.scope.deals.knots.moons.essay.thump.hangs.bliss.dealt.gains.bombs.clown.palms.cones.roast.tidal.bored.chant.acids.dough.camps.swore.lover.hooks.males.cocoa.punch.award.reins.ninth.noses.links.drain.fills.nylon.lunar.pulse.flown.elbow.fatal.sites.moths.meats.foxes.mined.attic.fiery.mount.usage.swear.snowy.rusty.scare.traps.relax.react.valid.robin.cease.gills.prior.safer.polio.loyal.swell.salty.marsh.vague.weave.mound.seals.mules.virus.scout.acute.windy.stout.folds.seize.hilly.joins.pluck.stack.lords.dunes.burro.hawks.trout.feeds.scarf.halls.coals.towel.souls.elect.buggy.pumps.loans.spins.files.oxide.pains.photo.rival.flats.syrup.rodeo.sands.moose.pints.curly.comic.cloak.onion.clams.scrap.didst.couch.codes.fails.ounce.lodge.greet.gypsy.utter.paved.zones.fours.alley.tiles.bless.crest.elder.kills.yeast.erect.bugle.medal.roles.hound.snail.alter.ankle.relay.loops.zeros.bites.modes.debts.realm.glove.rayon.swims.poked.stray.lifts.maker.lumps.graze.dread.barns.docks.masts.pours.wharf.curse.plump.robes.seeks.cedar.curls.jolly.myths.cages.gloom.locks.pedal.beets.crows.anode.slash.creep.rowed.chips.fists.wines.cares.valve.newer.motel.ivory.necks.clamp.barge.blues.alien.frown.strap.crews.shack.gonna.saves.stump.ferry.idols.cooks.juicy.glare.carts.alloy.bulbs.lawns.lasts.fuels.oddly.crane.filed.weird.shawl.slips.troop.bolts.suite.sleek.quilt.tramp.blaze.atlas.odors.scrub.crabs.probe.logic.adobe.exile.rebel.grind.sting.spine.cling.desks.grove.leaps.prose.lofty.agony.snare.tusks.bulls.moods.humid.finer.dimly.plank.china.pines.guilt.sacks.brace.quote.lathe.gaily.fonts.scalp.adopt.foggy.ferns.grams.clump.perch.tumor.teens.crank.fable.hedge.genes.sober.boast.tract.cigar.unite.owing.thigh.haiku.swish.dikes.wedge.booth.eased.frail.cough.tombs.darts.forts.choir.pouch.pinch.hairy.buyer.torch.vigor.waltz.heats.herbs.users.flint.click.madam.bleak.blunt.aided.lacks.masks.waded.risks.nurse.chaos.sewed.cured.ample.lease.steak.sinks.merit.bluff.bathe.gleam.bonus.colts.shear.gland.silky.skate.birch.anvil.sleds.groan.maids.meets.speck.hymns.hints.drown.bosom.slick.quest.coils.spied.snows.stead.snack.plows.blond.tamed.thorn.waits.glued.banjo.tease.arena.bulky.carve.stunt.warms.shady.razor.folly.leafy.notch.fools.otter.pears.flush.genus.ached.fives.flaps.spout.smote.fumes.adapt.cuffs.tasty.stoop.clips.disks.sniff.lanes.brisk.imply.demon.super.furry.raged.growl.texts.hardy.stung.typed.hates.wiser.timid.serum.beaks.rotor.casts.baths.glide.plots.trait.resin.slums.lyric.puffs.decks.brood.mourn.aloft.abuse.whirl.edged.ovary.quack.heaps.slang.await.civic.saint.bevel.sonar.aunts.packs.froze.tonic.corps.swarm.frank.repay.gaunt.wired.niece.cello.needy.chuck.stony.media.surge.hurts.repel.husky.dated.hunts.mists.exert.dries.mates.sworn.baker.spice.oasis.boils.spurs.doves.sneak.paces.colon.siege.strum.drier.cacao.humus.bales.piped.nasty.rinse.boxer.shrub.amuse.tacks.cited.slung.delta.laden.larva.rents.yells.spool.spill.crush.jewel.snaps.stain.kicks.tying.slits.rated.eerie.smash.plums.zebra.earns.bushy.scary.squad.tutor.silks.slabs.bumps.evils.fangs.snout.peril.pivot.yacht.lobby.jeans.grins.viola.liner.comet.scars.chops.raids.eater.slate.skips.soles.misty.urine.knobs.sleet.holly.pests.forks.grill.trays.pails.borne.tenor.wares.carol.woody.canon.wakes.kitty.miner.polls.shaky.nasal.scorn.chess.taxis.crate.shyly.tulip.forge.nymph.budge.lowly.abide.depot.oases.asses.sheds.fudge.pills.rivet.thine.groom.lanky.boost.broth.heave.gravy.beech.timed.quail.inert.gears.chick.hinge.trash.clash.sighs.renew.bough.dwarf.slows.quill.shave.spore.sixes.chunk.madly.paced.braid.fuzzy.motto.spies.slack.mucus.magma.awful.discs.erase.posed.asset.cider.taper.theft.churn.satin.slots.taxed.bully.sloth.shale.tread.raked.curds.manor.aisle.bulge.loins.stair.tapes.leans.bunks.squat.towed.lance.panes.sakes.heirs.caste.dummy.pores.fauna.crook.poise.epoch.risky.warns.fling.berry.grape.flank.drags.squid.pelts.icing.irony.irons.barks.whoop.choke.diets.whips.tally.dozed.twine.kites.bikes.ticks.riots.roars.vault.looms.scold.blink.dandy.pupae.sieve.spike.ducts.lends.pizza.brink.widen.plumb.pagan.feats.bison.soggy.scoop.argon.nudge.skiff.amber.sexes.rouse.salts.hitch.exalt.leash.dined.chute.snort.gusts.melon.cheat.reefs.llama.lasso.debut.quota.oaths.prone.mixes.rafts.dives.stale.inlet.flick.pinto.brows.untie.batch.greed.chore.stirs.blush.onset.barbs.volts.beige.swoop.paddy.laced.shove.jerky.poppy.leaks.fares.dodge.godly.squaw.affix.brute.nicer.undue.snarl.merge.doses.showy.daddy.roost.vases.swirl.petty.colds.curry.cobra.genie.flare.messy.cores.soaks.ripen.whine.amino.plaid.spiny.mowed.baton.peers.vowed.pious.swans.exits.afoot.plugs.idiom.chili.rites.serfs.cleft.berth.grubs.annex.dizzy.hasty.latch.wasps.mirth.baron.plead.aloof.aging.pixel.bared.mummy.hotly.auger.buddy.chaps.badge.stark.fairs.gully.mumps.emery.filly.ovens.drone.gauze.idiot.fussy.annoy.shank.gouge.bleed.elves.roped.unfit.baggy.mower.scant.grabs.fleas.lousy.album.sawed.cooky.murky.infer.burly.waged.dingy.brine.kneel.creak.vanes.smoky.spurt.combs.easel.laces.humps.rumor.aroma.horde.swiss.leapt.opium.slime.afire.pansy.mares.soaps.husks.snips.hazel.lined.cafes.naive.wraps.sized.piers.beset.agile.tongs.steed.fraud.booty.valor.downy.witty.mossy.psalm.scuba.tours.polka.milky.gaudy.shrug.tufts.wilds.laser.truss.hares.creed.lilac.siren.tarry.bribe.swine.muted.flips.cures.sinew.boxed.hoops.gasps.hoods.niche.yucca.glows.sewer.whack.fuses.gowns.droop.bucks.pangs.mails.whisk.haven.clasp.sling.stint.urges.champ.piety.chirp.pleat.posse.sunup.menus.howls.quake.knack.plaza.fiend.caked.bangs.erupt.poker.olden.cramp.voter.poses.manly.slump.fined.grips.gaped.purge.hiked.maize.fluff.strut.sloop.prowl.roach.cocks.bland.dials.plume.slaps.soups.dully.wills.foams.solos.skier.eaves.totem.fused.latex.veils.mused.mains.myrrh.racks.galls.gnats.bouts.sisal.shuts.hoses.dryly.hover.gloss.seeps.denim.putty.guppy.leaky.dusky.filth.oboes.spans.fowls.adorn.glaze.haunt.dares.obeys.bakes.abyss.smelt.gangs.aches.trawl.claps.undid.spicy.hoist.fades.vicar.acorn.pussy.gruff.musty.tarts.snuff.hunch.truce.tweed.dryer.loser.sheaf.moles.lapse.tawny.vexed.autos.wager.domes.sheen.clang.spade.sowed.broil.slyly.studs.grunt.donor.slugs.aspen.homer.croak.tithe.halts.avert.havoc.hogan.glint.ruddy.jeeps.flaky.ladle.taunt.snore.fines.props.prune.pesos.radii.pokes.tiled.daisy.heron.villa.farce.binds.cites.fixes.jerks.livid.waked.inked.booms.chews.licks.hyena.scoff.lusty.sonic.smith.usher.tucks.vigil.molts.sects.spars.dumps.scaly.wisps.sores.mince.panda.flier.axles.plied.booby.patio.rabbi.petal.polyp.tints.grate.troll.tolls.relic.phony.bleat.flaws.flake.snags.aptly.drawl.ulcer.soapy.bossy.monks.crags.caged.twang.diner.taped.cadet.grids.spawn.guile.noose.mores.girth.slimy.aides.spasm.burrs.alibi.lymph.saucy.muggy.liter.joked.goofy.exams.enact.stork.lured.toxic.omens.nears.covet.wrung.forum.venom.moody.alder.sassy.flair.guild.prays.wrens.hauls.stave.tilts.pecks.stomp.gales.tempt.capes.mesas.omits.tepee.harry.wring.evoke.limes.cluck.lunge.highs.canes.giddy.lithe.verge.khaki.queue.loath.foyer.outdo.fared.deter.crumb.astir.spire.jumpy.extol.buoys.stubs.lucid.thong.afore.whiff.maxim.hulls.clogs.slats.jiffy.arbor.cinch.igloo.goody.gazes.dowel.calms.bitch.scowl.gulps.coded.waver.mason.lobes.ebony.flail.isles.clods.dazed.adept.oozed.sedan.clays.warts.ketch.skunk.manes.adore.sneer.mango.fiord.flora.roomy.minks.thaws.watts.freer.exult.plush.paled.twain.clink.scamp.pawed.grope.bravo.gable.stink.sever.waned.rarer.regal.wards.fawns.babes.unify.amend.oaken.glade.visor.hefty.nines.throb.pecan.butts.pence.sills.jails.flyer.saber.nomad.miter.beeps.domed.gulfs.curbs.heath.moors.aorta.larks.tangy.wryly.cheep.rages.evade.lures.freak.vogue.tunic.slams.knits.dumpy.mania.spits.firth.hikes.trots.nosed.clank.dogma.bloat.balsa.graft.middy.stile.keyed.finch.sperm.chaff.wiles.amigo.copra.amiss.eying.twirl.lurch.popes.chins.smock.tines.guise.grits.junks.shoal.cache.tapir.atoll.deity.toils.spree.mocks.scans.shorn.revel.raven.hoary.reels.scuff.mimic.weedy.corny.truer.rouge.ember.floes.torso.wipes.edict.sulky.recur.groin.baste.kinks.surer.piggy.moldy.franc.liars.inept.gusty.facet.jetty.equip.leper.slink.soars.cater.dowry.sided.yearn.decoy.taboo.ovals.heals.pleas.beret.spilt.gayly.rover.endow.pygmy.carat.abbey.vents.waken.chimp.fumed.sodas.vinyl.clout.wades.mites.smirk.bores.bunny.surly.frock.foray.purer.milks.query.mired.blare.froth.gruel.navel.paler.puffy.casks.grime.derby.mamma.gavel.teddy.vomit.moans.allot.defer.wield.viper.louse.erred.hewed.abhor.wrest.waxen.adage.ardor.stabs.pored.rondo.loped.fishy.bible.hires.foals.feuds.jambs.thuds.jeers.knead.quirk.rugby.expel.greys.rigor.ester.lyres.aback.glues.lotus.lurid.rungs.hutch.thyme.valet.tommy.yokes.epics.trill.pikes.ozone.caper.chime.frees.famed.leech.smite.neigh.erode.robed.hoard.salve.conic.gawky.craze.jacks.gloat.mushy.rumps.fetus.wince.pinks.shalt.toots.glens.cooed.rusts.stews.shred.parka.chugs.winks.clots.shrew.booed.filmy.juror.dents.gummy.grays.hooky.butte.dogie.poled.reams.fifes.spank.gayer.tepid.spook.taint.flirt.rogue.spiky.opals.miser.cocky.coyly.balmy.slosh.brawl.aphid.faked.hydra.brags.chide.yanks.allay.video.altos.eases.meted.chasm.longs.excel.taffy.impel.savor.koala.quays.dawns.proxy.clove.duets.dregs.tardy.briar.grimy.ultra.meaty.halve.wails.suede.mauve.envoy.arson.coves.gooey.brews.sofas.chums.amaze.zooms.abbot.halos.scour.suing.cribs.sagas.enema.wordy.harps.coupe.molar.flops.weeps.mints.ashen.felts.askew.munch.mewed.divan.vices.jumbo.blobs.blots.spunk.acrid.topaz.cubed.clans.flees.slurs.gnaws.welds.fords.emits.agate.pumas.mends.darks.dukes.plies.canny.hoots.oozes.lamed.fouls.clefs.nicks.mated.skims.brunt.tuber.tinge.fates.ditty.thins.frets.eider.bayou.mulch.fasts.amass.damps.morns.friar.palsy.vista.croon.conch.udder.tacos.skits.mikes.quits.preen.aster.adder.elegy.pulpy.scows.baled.hovel.lavas.crave.optic.welts.busts.knave.razed.shins.totes.scoot.dears.crock.mutes.trims.skein.doted.shuns.veers.fakes.yoked.wooed.hacks.sprig.wands.lulls.seers.snobs.nooks.pined.perky.mooed.frill.dines.booze.tripe.prong.drips.odder.levee.antic.sidle.pithy.corks.yelps.joker.fleck.buffs.scram.tiers.bogey.doled.irate.vales.coped.hails.elude.bulks.aired.vying.stags.strew.cocci.pacts.scabs.silos.dusts.yodel.terse.jaded.baser.jibes.foils.sways.forgo.slays.preys.treks.quell.peeks.assay.lurks.eject.boars.trite.belch.gnash.wanes.lutes.whims.dosed.chewy.snipe.umbra.teems.dozes.kelps.upped.brawn.doped.shush.rinds.slush.moron.voile.woken.fjord.sheik.jests.kayak.slews.toted.saner.drape.patty.raves.sulfa.grist.skied.vixen.civet.vouch.tiara.homey.moped.runts.serge.kinky.rills.corns.brats.pries.amble.fries.loons.tsars.datum.musky.pigmy.gnome.ravel.ovule.icily.liken.lemur.frays.silts.sifts.plods.ramps.tress.earls.dudes.waive.karat.jolts.peons.beers.horny.pales.wreak.lairs.lynch.stank.swoon.idler.abort.blitz.ensue.atone.bingo.roves.kilts.scald.adios.cynic.dulls.memos.elfin.dales.peels.peals.bares.sinus.crone.sable.hinds.shirk.enrol.wilts.roams.duped.cysts.mitts.safes.spats.coops.filet.knell.refit.covey.punks.kilns.fitly.abate.talcs.heeds.duels.wanly.ruffs.gauss.lapel.jaunt.whelp.cleat.gauzy.dirge.edits.wormy.moats.smear.prods.bowel.frisk.vests.bayed.rasps.tames.delve.embed.befit.wafer.ceded.novas.feign.spews.larch.huffs.doles.mamas.hulks.pried.brims.irked.aspic.swipe.mealy.skimp.bluer.slake.dowdy.penis.brays.pupas.egret.flunk.phlox.gripe.peony.douse.blurs.darns.slunk.lefts.chats.inane.vials.stilt.rinks.woofs.wowed.bongs.frond.ingot.evict.singe.shyer.flied.slops.dolts.drool.dells.whelk.hippy.feted.ether.cocos.hives.jibed.mazes.trios.sirup.squab.laths.leers.pasta.rifts.lopes.alias.whirs.diced.slags.lodes.foxed.idled.prows.plait.malts.chafe.cower.toyed.chefs.keels.sties.racer.etude.sucks.sulks.micas.czars.copse.ailed.abler.rabid.golds.croup.snaky.visas.palls.mopes.boned.wispy.raved.swaps.junky.doily.pawns.tamer.poach.baits.damns.gumbo.daunt.prank.hunks.buxom.heres.honks.stows.unbar.idles.routs.sages.goads.remit.copes.deign.culls.girds.haves.lucks.stunk.dodos.shams.snubs.icons.usurp.dooms.hells.soled.comas.paves.maths.perks.limps.wombs.blurb.daubs.cokes.sours.stuns.cased.musts.coeds.cowed.aping.zoned.rummy.fetes.skulk.quaff.rajah.deans.reaps.galas.tills.roved.kudos.toned.pared.scull.vexes.punts.snoop.bails.dames.hazes.lores.marts.voids.ameba.rakes.adzes.harms.rears.satyr.swill.hexes.colic.leeks.hurls.yowls.ivies.plops.musks.papaw.jells.bused.cruet.bided.filch.zests.rooks.laxly.rends.loams.basks.sires.carps.pokey.flits.muses.bawls.shuck.viler.lisps.peeps.sorer.lolls.prude.diked.floss.flogs.scums.dopes.bogie.pinky.leafs.tubas.scads.lowed.yeses.biked.qualm.evens.caned.gawks.whits.wooly.gluts.romps.bests.dunce.crony.joist.tunas.boner.malls.parch.avers.crams.pares.dally.bigot.kales.flays.leach.gushy.pooch.huger.slyer.golfs.mires.flues.loafs.arced.acnes.neons.fiefs.dints.dazes.pouts.cored.yules.lilts.beefs.mutts.fells.cowls.spuds.lames.jawed.dupes.deads.bylaw.noons.nifty.clued.vireo.gapes.metes.cuter.maims.droll.cupid.mauls.sedge.papas.wheys.eking.loots.hilts.meows.beaus.dices.peppy.riper.fogey.gists.yogas.gilts.skews.cedes.zeals.alums.okays.elope.grump.wafts.soots.blimp.hefts.mulls.hosed.cress.doffs.ruder.pixie.waifs.ousts.pucks.biers.gulch.suets.hobos.lints.brans.teals.garbs.pewee.helms.turfs.quips.wends.banes.napes.icier.swats.bagel.hexed.ogres.goner.gilds.pyres.lards.bides.paged.talon.flout.medic.veals.putts.dirks.dotes.tippy.blurt.piths.acing.barer.whets.gaits.wools.dunks.heros.swabs.dirts.jutes.hemps.surfs.okapi.chows.shoos.dusks.parry.decal.furls.cilia.sears.novae.murks.warps.slues.lamer.saris.weans.purrs.dills.togas.newts.meany.bunts.razes.goons.wicks.ruses.vends.geode.drake.judos.lofts.pulps.lauds.mucks.vises.mocha.oiled.roman.ethyl.gotta.fugue.smack.gourd.bumpy.radix.fatty.borax.cubit.cacti.gamma.focal.avail.papal.golly.elite.versa.billy.adieu.annum.howdy.rhino.norms.bobby.axiom.setup.yolks.terns.mixer.genre.knoll.abode.junta.gorge.combo.alpha.overt.kinda.spelt.prick.nobly.ephod.audio.modal.veldt.warty.fluke.bonny.bream.rosin.bolls.doers.downs.beady.motif.humph.fella.mould.crepe.kerns.aloha.glyph.azure.riser.blest.locus.lumpy.beryl.wanna.brier.tuner.rowdy.mural.timer.canst.krill.quoth.lemme.triad.tenon.amply.deeps.padre.leant.pacer.octal.dolly.trans.sumac.foamy.lolly.giver.quipu.codex.manna.unwed.vodka.ferny.salon.duple.boron.revue.crier.alack.inter.dilly.whist.cults.spake.reset.loess.decor.mover.verve.ethic.gamut.lingo.dunno.align.sissy.incur.reedy.avant.piper.waxer.calyx.basil.coons.seine.piney.lemma.trams.winch.whirr.saith.ionic.heady.harem.tummy.sally.shied.dross.farad.saver.tilde.jingo.bower.serif.facto.belle.inset.bogus.caved.forte.sooty.bongo.toves.credo.basal.yella.aglow.glean.gusto.hymen.ethos.terra.brash.scrip.swash.aleph.tinny.itchy.wanta.trice.jowls.gongs.garde.boric.twill.sower.henry.awash.libel.spurn.sabre.rebut.penal.obese.sonny.quirt.mebbe.tacit.greek.xenon.hullo.pique.roger.negro.hadst.gecko.beget.uncut.aloes.louis.quint.clunk.raped.salvo.diode.matey.hertz.xylem.kiosk.apace.cawed.peter.wench.cohos.sorta.gamba.bytes.tango.nutty.axial.aleck.natal.clomp.gored.siree.bandy.gunny.runic.whizz.rupee.fated.wiper.bards.briny.staid.hocks.ochre.yummy.gents.soupy.roper.swath.cameo.edger.spate.gimme.ebbed.breve.theta.deems.dykes.servo.telly.tabby.tares.blocs.welch.ghoul.vitae.cumin.dinky.bronc.tabor.teeny.comer.borer.sired.privy.mammy.deary.gyros.sprit.conga.quire.thugs.furor.bloke.runes.bawdy.cadre.toxin.annul.egged.anion.nodes.picky.stein.jello.audit.echos.fagot.letup.eyrie.fount.caped.axons.amuck.banal.riled.petit.umber.miler.fibre.agave.bated.bilge.vitro.feint.pudgy.mater.manic.umped.pesky.strep.slurp.pylon.puree.caret.temps.newel.yawns.seedy.treed.coups.rangy.brads.mangy.loner.circa.tibia.afoul.mommy.titer.carne.kooky.motes.amity.suave.hippo.curvy.samba.newsy.anise.imams.tulle.aways.liven.hallo.wales.opted.canto.idyll.bodes.curio.wrack.hiker.chive.yokel.dotty.demur.cusps.specs.quads.laity.toner.decry.writs.saute.clack.aught.logos.tipsy.natty.ducal.bidet.bulgy.metre.lusts.unary.goeth.baler.sited.shies.hasps.brung.holed.swank.looky.melee.huffy.loamy.pimps.titan.binge.shunt.femur.libra.seder.honed.annas.coypu.shims.zowie.jihad.savvy.nadir.basso.monic.maned.mousy.omega.laver.prima.picas.folio.mecca.reals.troth.testy.balky.crimp.chink.abets.splat.abaci.vaunt.cutie.pasty.moray.levis.ratty.islet.joust.motet.viral.nukes.grads.comfy.voila.woozy.blued.whomp.sward.metro.skeet.chine.aerie.bowie.tubby.emirs.coati.unzip.slobs.trike.funky.ducat.dewey.skoal.wadis.oomph.taker.minim.getup.stoic.synod.runty.flyby.braze.inlay.venue.louts.peaty.orlon.humpy.radon.beaut.raspy.unfed.crick.nappy.vizor.yipes.rebus.divot.kiwis.vetch.squib.sitar.kiddo.dyers.cotta.matzo.lager.zebus.crass.dacha.kneed.dicta.fakir.knurl.runny.unpin.julep.globs.nudes.sushi.tacky.stoke.kaput.butch.hulas.croft.achoo.genii.nodal.outgo.spiel.viols.fetid.cagey.fudgy.epoxy.leggy.hanky.lapis.felon.beefy.coots.melba.caddy.segue.betel.frizz.drear.kooks.turbo.hoagy.moult.helix.zonal.arias.nosey.paean.lacey.banns.swain.fryer.retch.tenet.gigas.whiny.ogled.rumen.begot.cruse.abuts.riven.balks.sines.sigma.abase.ennui.gores.unset.augur.sated.odium.latin.dings.moire.scion.henna.kraut.dicks.lifer.prigs.bebop.gages.gazer.fanny.gibes.aural.tempi.hooch.rapes.snuck.harts.techs.emend.ninny.guava.scarp.liege.tufty.sepia.tomes.carob.emcee.prams.poser.verso.hubba.joule.baize.blips.scrim.cubby.clave.winos.rearm.liens.lumen.chump.nanny.trump.fichu.chomp.homos.purty.maser.woosh.patsy.shill.rusks.avast.swami.boded.ahhhh.lobed.natch.shish.tansy.snoot.payer.altho.sappy.laxer.hubby.aegis.riles.ditto.jazzy.dingo.quasi.septa.peaky.lorry.heerd.bitty.payee.seamy.apses.imbue.belie.chary.spoof.phyla.clime.babel.wacky.sumps.skids.khans.crypt.inure.nonce.outen.faire.hooey.anole.kazoo.calve.limbo.argot.ducky.faker.vibes.gassy.unlit.nervy.femme.biter.fiche.boors.gaffe.saxes.recap.synch.facie.dicey.ouija.hewer.legit.gurus.edify.tweak.caron.typos.rerun.polly.surds.hamza.nulls.hater.lefty.mogul.mafia.debug.pates.blabs.splay.talus.porno.moola.nixed.kilos.snide.horsy.gesso.jaggy.trove.nixes.creel.pater.iotas.cadge.skyed.hokum.furze.ankhs.curie.nutsy.hilum.remix.angst.burls.jimmy.veiny.tryst.codon.befog.gamed.flume.axman.doozy.lubes.rheas.bozos.butyl.kelly.mynah.jocks.donut.avian.wurst.chock.quash.quals.hayed.bombe.cushy.spacy.puked.leery.thews.prink.amens.tesla.intro.fiver.frump.capos.opine.coder.namer.jowly.pukes.haled.chard.duffs.bruin.reuse.whang.toons.frats.silty.telex.cutup.nisei.neato.decaf.softy.bimbo.adlib.loony.shoed.agues.peeve.noway.gamey.sarge.reran.epact.potty.coned.upend.narco.ikats.whorl.jinks.tizzy.weepy.posit.marge.vegan.clops.numbs.reeks.rubes.rower.biped.tiffs.hocus.hammy.bunco.fixit.tykes.chaws.yucky.hokey.resew.maven.adman.scuzz.slogs.souse.nacho.mimed.melds.boffo.debit.pinup.vagus.gulag.randy.bosun.educe.faxes.auras.pesto.antsy.betas.fizzy.dorky.snits.moxie.thane.mylar.nobby.gamin.gouty.esses.goyim.paned.druid.jades.rehab.gofer.tzars.octet.homed.socko.dorks.eared.anted.elide.fazes.oxbow.dowse.situs.macaw.scone.drily.hyper.salsa.mooch.gated.unjam.lipid.mitre.venal.knish.ritzy.divas.torus.mange.dimer.recut.meson.wined.fends.phage.fiats.caulk.cavil.panty.roans.bilks.hones.botch.estop.sully.sooth.gelds.ahold.raper.pager.fixer.infix.hicks.tuxes.plebe.twits.abash.twixt.wacko.primp.nabla.girts.miffs.emote.xerox.rebid.shahs.rutty.grout.grift.deify.biddy.kopek.semis.bries.acmes.piton.hussy.torts.disco.whore.boozy.gibed.vamps.amour.soppy.gonzo.durst.wader.tutus.perms.catty.glitz.brigs.nerds.barmy.gizmo.owlet.sayer.molls.shard.whops.comps.corer.colas.matte.droid.ploys.vapid.cairn.deism.mixup.yikes.prosy.raker.flubs.whish.reify.craps.shags.clone.hazed.macho.recto.refix.drams.biker.aquas.porky.doyen.exude.goofs.divvy.noels.jived.hulky.cager.harpy.oldie.vivas.admix.codas.zilch.deist.orcas.retro.pilaf.parse.rants.zingy.toddy.chiff.micro.veeps.girly.nexus.demos.bibbs.antes.lulus.gnarl.zippy.ivied.epees.wimps.tromp.grail.yoyos.poufs.hales.roust.cabal.rawer.pampa.mosey.kefir.burgs.unmet.cuspy.boobs.boons.hypes.dynes.nards.lanai.yogis.sepal.quark.toked.prate.ayins.hawed.swigs.vitas.toker.doper.bossa.linty.foist.mondo.stash.kayos.twerp.zesty.capon.wimpy.rewed.fungo.tarot.frosh.kabob.pinko.redid.mimeo.heist.tarps.lamas.sutra.dinar.whams.busty.spays.mambo.nabob.preps.odour.cabby.conks.sluff.dados.houri.swart.balms.gutsy.faxed.egads.pushy.retry.agora.drubs.daffy.chits.mufti.karma.lotto.toffs.burps.deuce.zings.kappa.clads.doggy.duper.scams.ogler.mimes.throe.zetas.waled.promo.blats.muffs.oinks.viand.coset.finks.faddy.minis.snafu.sauna.usury.muxes.craws.stats.condo.coxes.loopy.dorms.ascot.dippy.execs.dopey.envoi.umpty.gismo.fazed.strop.jives.slims.batik.pings.sonly.leggo.pekoe.prawn.luaus.campy.oodle.prexy.proms.touts.ogles.tweet.toady.naiad.hider.nuked.fatso.sluts.obits.narcs.tyros.delis.wooer.hyped.poset.byway.texas.scrod.avows.futon.torte.tuple.carom.kebab.tamps.jilts.duals.artsy.repro.modem.toped.psych.sicko.klutz.tarns.coxed.drays.cloys.anded.piker.aimer.suras.limos.flack.hapax.dutch.mucky.shire.klieg.staph.layup.tokes.axing.toper.duvet.cowry.profs.blahs.addle.sudsy.batty.coifs.suety.gabby.hafta.pitas.gouda.deice.taupe.topes.duchy.nitro.carny.limey.orals.hirer.taxer.roils.ruble.elate.dolor.wryer.snots.quais.coked.gimel.gorse.minas.goest.agape.manta.jings.iliac.admen.offen.cills.offal.lotta.bolas.thwap.alway.boggy.donna.locos.belay.gluey.bitsy.mimsy.hilar.outta.vroom.fetal.raths.renal.dyads.crocs.vires.culpa.kivas.feist.teats.thats.yawls.whens.abaca.ohhhh.aphis.fusty.eclat.perdu.mayst.exeat.molly.supra.wetly.plasm.buffa.semen.pukka.tagua.paras.stoat.secco.carte.haute.molal.shads.forma.ovoid.pions.modus.bueno.rheum.scurf.parer.ephah.doest.sprue.flams.molto.dieth.choos.miked.bronx.goopy.bally.plumy.moony.morts.yourn.bipod.spume.algal.ambit.mucho.spued.dozer.harum.groat.skint.laude.thrum.pappy.oncet.rimed.gigue.limed.plein.redly.humpf.lites.seest.grebe.absit.thanx.pshaw.yawps.plats.payed.areal.tilth.youse.gwine.thees.watsa.lento.spitz.yawed.gipsy.sprat.cornu.amahs.blowy.wahoo.lubra.mecum.whooo.coqui.sabra.edema.mrads.dicot.astro.kited.ouzel.didos.grata.bonne.axmen.klunk.summa.laves.purls.yawny.teary.masse.largo.bazar.pssst.sylph.lulab.toque.fugit.plunk.ortho.lucre.cooch.whipt.folky.tyres.wheee.corky.injun.solon.didot.kerfs.rayed.wassa.chile.begat.nippy.litre.magna.rebox.hydro.milch.brent.gyves.lazed.feued.mavis.inapt.baulk.casus.scrum.wised.fossa.dower.kyrie.bhoys.scuse.feuar.ohmic.juste.ukase.beaux.tusky.orate.musta.lardy.intra.quiff.epsom.neath.ocher.tared.homme.mezzo.corms.psoas.beaky.terry.infra.spivs.tuans.belli.bergs.anima.weirs.mahua.scops.manse.titre.curia.kebob.cycad.talky.fucks.tapis.amide.dolce.sloes.jakes.russe.blash.tutti.pruta.panga.blebs.tench.swarf.herem.missy.merse.pawky.limen.vivre.chert.unsee.tiros.brack.foots.welsh.fosse.knops.ileum.noire.firma.podgy.laird.thunk.shute.rowan.shoji.poesy.uncap.fames.glees.costa.turps.fores.solum.imago.byres.fondu.coney.polis.dictu.kraal.sherd.mumbo.wroth.chars.unbox.vacuo.slued.weest.hades.wiled.syncs.muser.excon.hoars.sibyl.passe.joeys.lotsa.lepta.shays.bocks.endue.darer.nones.ileus.plash.busby.wheal.buffo.yobbo.biles.poxes.rooty.licit.terce.bromo.hayey.dweeb.imbed.saran.bruit.punky.softs.biffs.loppy.agars.aquae.livre.biome.bunds.shews.diems.ginny.degum.polos.desex.unman.dungy.vitam.wedgy.glebe.apers.ridgy.roids.wifey.vapes.whoas.bunko.yolky.ulnas.reeky.bodge.brant.davit.deque.liker.jenny.tacts.fulls.treap.ligne.acked.refry.vower.aargh.churl.momma.gaols.whump.arras.marls.tiler.grogs.memes.midis.tided.haler.duces.twiny.poste.unrig.prise.drabs.quids.facer.spier.baric.geoid.remap.trier.gunks.steno.stoma.airer.ovate.torah.apian.smuts.pocks.yurts.exurb.defog.nuder.bosky.nimbi.mothy.joyed.labia.pards.jammy.bigly.faxer.hoppy.nurbs.cotes.dishy.vised.celeb.pismo.casas.withs.dodgy.scudi.mungs.muons.ureas.ioctl.unhip.krone.sager.verst.expat.gronk.uvula.shawm.bilgy.braes.cento.webby.lippy.gamic.lordy.mazed.tings.shoat.faery.wirer.diazo.carer.rater.greps.rente.zloty.viers.unapt.poops.fecal.kepis.taxon.eyers.wonts.spina.stoae.yenta.pooey.buret.japan.bedew.hafts.selfs.oared.herby.pryer.oakum.dinks.titty.sepoy.penes.fusee.winey.gimps.nihil.rille.giber.ousel.umiak.cuppy.hames.shits.azine.glads.tacet.bumph.coyer.honky.gamer.gooky.waspy.sedgy.bents.varia.djinn.junco.pubic.wilco.lazes.idyls.lupus.rives.snood.schmo.spazz.finis.noter.pavan.orbed.bates.pipet.baddy.goers.shako.stets.sebum.seeth.lobar.raver.ajuga.riced.velds.dribs.ville.dhows.unsew.halma.krona.limby.jiffs.treys.bauds.pffft.mimer.plebs.caner.jiber.cuppa.washy.chuff.unarm.yukky.styes.waker.flaks.maces.rimes.gimpy.guano.liras.kapok.scuds.bwana.oring.aider.prier.klugy.monte.golem.velar.firer.pieta.umbel.campo.unpeg.fovea.abeam.boson.asker.goths.vocab.vined.trows.tikis.loper.indie.boffs.spang.grapy.tater.ichor.kilty.lochs.supes.degas.flics.torsi.beths.weber.resaw.lawny.coven.mujik.relet.therm.heigh.shnor.trued.zayin.liest.barfs.bassi.qophs.roily.flabs.punny.okras.hanks.dipso.nerfs.fauns.calla.pseud.lurer.magus.obeah.atria.twink.palmy.pocky.pends.recta.plonk.slaws.keens.nicad.pones.inker.whews.groks.mosts.trews.ulnar.gyppy.cocas.expos.eruct.oiler.vacua.dreck.dater.arums.tubal.voxel.dixit.beery.assai.lades.actin.ghoti.buzzy.meads.grody.ribby.clews.creme.email.pyxie.kulak.bocci.rived.duddy.hoper.lapin.wonks.petri.phial.fugal.holon.boomy.duomo.musos.shier.hayer.porgy.hived.litho.fisty.stagy.luvya.maria.smogs.asana.yogic.slomo.fawny.amine.wefts.gonad.twirp.brava.plyer.fermi.loges.niter.revet.unate.gyved.totty.zappy.honer.giros.dicer.calks.luxes.monad.cruft.quoin.fumer.amped.shlep.vinca.yahoo.vulva.zooey.dryad.nixie.moper.iambs.lunes.nudie.limns.weals.nohow.miaow.gouts.mynas.mazer.kikes.oxeye.stoup.jujus.debar.pubes.taels.defun.rands.blear.paver.goosy.sprog.oleos.toffy.pawer.maced.crits.kluge.tubed.sahib.ganef.scats.sputa.vaned.acned.taxol.plink.oweth.tribs.resay.boule.thous.haply.glans.maxis.bezel.antis.porks.quoit.alkyd.glary.beamy.hexad.bonks.tecum.kerbs.filar.frier.redux.abuzz.fader.shoer.couth.trues.guyed.goony.booky.fuzes.hurly.genet.hodad.calix.filer.pawls.iodic.utero.henge.unsay.liers.piing.weald.sexed.folic.poxed.cunts.anile.kiths.becks.tatty.plena.rebar.abled.toyer.attar.teaks.aioli.awing.anent.feces.redip.wists.prats.mesne.muter.smurf.owest.bahts.lossy.ftped.hunky.hoers.slier.sicks.fatly.delft.hiver.himbo.pengo.busks.loxes.zonks.ilium.aport.ikons.mulct.reeve.civvy.canna.barfy.kaiak.scudo.knout.gaper.bhang.pease.uteri.lases.paten.rasae.axels.stoas.ombre.styli.gunky.hazer.kenaf.ahoys.ammos.weeny.urger.kudzu.paren.bolos.fetor.nitty.techy.lieth.somas.darky.villi.gluon.janes.cants.farts.socle.jinns.ruing.slily.ricer.hadda.wowee.rices.nerts.cauls.swive.lilty.micks.arity.pasha.finif.oinky.gutty.tetra.wises.wolds.balds.picot.whats.shiki.bungs.snarf.legos.dungs.stogy.berms.tangs.vails.roods.morel.sware.elans.latus.gules.razer.doxie.buena.overs.gutta.zincs.nates.kirks.tikes.donee.jerry.mohel.ceder.doges.unmap.folia.rawly.snark.topoi.ceils.immix.yores.diest.bubba.pomps.forky.turdy.lawzy.poohs.worts.gloms.beano.muley.barky.tunny.auric.funks.gaffs.cordy.curdy.lisle.toric.soyas.reman.mungy.carpy.apish.oaten.gappy.aurae.bract.rooky.axled.burry.sizer.proem.turfy.impro.mashy.miens.nonny.olios.grook.sates.agley.corgi.dashy.doser.dildo.apsos.xored.laker.playa.selah.malty.dulse.frigs.demit.whoso.rials.sawer.spics.bedim.snugs.fanin.azoic.icers.suers.wizen.koine.topos.shirr.rifer.feral.laded.lased.turds.swede.easts.cozen.unhit.pally.aitch.sedum.coper.ruche.geeks.swags.etext.algin.offed.ninja.holer.doter.toter.besot.dicut.macer.peens.pewit.redox.poler.yecch.fluky.doeth.twats.cruds.bebug.bider.stele.hexer.wests.gluer.pilau.abaft.whelm.lacer.inode.tabus.gator.cuing.refly.luted.cukes.bairn.bight.arses.crump.loggy.blini.spoor.toyon.harks.wazoo.fenny.naves.keyer.tufas.morph.rajas.typal.spiff.oxlip.unban.mussy.finny.rimer.login.molas.cirri.huzza.agone.unsex.unwon.peats.toile.zombi.dewed.nooky.alkyl.ixnay.dovey.holey.cuber.amyls.podia.chino.apnea.prims.lycra.johns.primo.fatwa.egger.hempy.snook.hying.fuzed.barms.crink.moots.yerba.rhumb.unarc.direr.munge.eland.nares.wrier.noddy.atilt.jukes.ender.thens.unfix.doggo.zooks.diddy.shmoo.brusk.prest.curer.pasts.kelpy.bocce.kicky.taros.lings.dicky.nerdy.abend.stela.biggy.laved.baldy.pubis.gooks.wonky.stied.hypos.assed.spumy.osier.roble.rumba.biffy.pupal`.split(`.`),Ln=`aahed.aalii.aargh.aarti.abaca.abaci.abacs.abaft.abaka.abamp.aband.abash.abask.abaya.abbas.abbed.abbes.abcee.abeam.abear.abele.abers.abets.abies.abler.ables.ablet.ablow.abmho.abohm.aboil.aboma.aboon.abord.abore.abram.abray.abrim.abrin.abris.absey.absit.abuna.abune.abuts.abuzz.abyes.abysm.acais.acari.accas.accoy.acerb.acers.aceta.achar.ached.aches.achoo.acids.acidy.acing.acini.ackee.acker.acmes.acmic.acned.acnes.acock.acold.acred.acres.acros.acted.actin.acton.acyls.adaws.adays.adbot.addax.added.adder.addio.addle.adeem.adhan.adieu.adios.adits.adman.admen.admix.adobo.adown.adoze.adrad.adred.adsum.aduki.adunc.adust.advew.adyta.adzed.adzes.aecia.aedes.aegis.aeons.aerie.aeros.aesir.afald.afara.afars.afear.aflaj.afore.afrit.afros.agama.agami.agars.agast.agave.agaze.agene.agers.agger.aggie.aggri.aggro.aggry.aghas.agila.agios.agism.agist.agita.aglee.aglet.agley.agloo.aglus.agmas.agoge.agone.agons.agood.agria.agrin.agros.agued.agues.aguna.aguti.aheap.ahent.ahigh.ahind.ahing.ahint.ahold.ahull.ahuru.aidas.aided.aides.aidoi.aidos.aiery.aigas.aight.ailed.aimed.aimer.ainee.ainga.aioli.aired.airer.airns.airth.airts.aitch.aitus.aiver.aiyee.aizle.ajies.ajiva.ajuga.ajwan.akees.akela.akene.aking.akita.akkas.alaap.alack.alamo.aland.alane.alang.alans.alant.alapa.alaps.alary.alate.alays.albas.albee.alcid.alcos.aldea.alder.aldol.aleck.alecs.alefs.aleft.aleph.alews.aleye.alfas.algal.algas.algid.algin.algor.algum.alias.alifs.aline.alist.aliya.alkie.alkos.alkyd.alkyl.allee.allel.allis.allod.allyl.almah.almas.almeh.almes.almud.almug.alods.aloed.aloes.aloha.aloin.aloos.alowe.altho.altos.alula.alums.alure.alvar.alway.amahs.amain.amate.amaut.amban.ambit.ambos.ambry.ameba.ameer.amene.amens.ament.amias.amice.amici.amide.amido.amids.amies.amiga.amigo.amine.amino.amins.amirs.amlas.amman.ammon.ammos.amnia.amnic.amnio.amoks.amole.amort.amour.amove.amowt.amped.ampul.amrit.amuck.amyls.anana.anata.ancho.ancle.ancon.andro.anear.anele.anent.angas.anglo.anigh.anile.anils.anima.animi.anion.anise.anker.ankhs.ankus.anlas.annal.annas.annat.anoas.anole.anomy.ansae.antae.antar.antas.anted.antes.antis.antra.antre.antsy.anura.anyon.apace.apage.apaid.apayd.apays.apeak.apeek.apers.apert.apery.apgar.aphis.apian.apiol.apish.apism.apode.apods.apoop.aport.appal.appay.appel.appro.appui.appuy.apres.apses.apsis.apsos.apted.apter.aquae.aquas.araba.araks.arame.arars.arbas.arced.archi.arcos.arcus.ardeb.ardri.aread.areae.areal.arear.areas.areca.aredd.arede.arefy.areic.arene.arepa.arere.arete.arets.arett.argal.argan.argil.argle.argol.argon.argot.argus.arhat.arias.ariel.ariki.arils.ariot.arish.arked.arled.arles.armed.armer.armet.armil.arnas.arnut.aroba.aroha.aroid.arpas.arpen.arrah.arras.arret.arris.arroz.arsed.arses.arsey.arsis.artal.artel.artic.artis.aruhe.arums.arval.arvee.arvos.aryls.asana.ascon.ascus.asdic.ashed.ashes.ashet.asked.asker.askoi.askos.aspen.asper.aspic.aspie.aspis.aspro.assai.assam.asses.assez.assot.aster.astir.astun.asura.asway.aswim.asyla.ataps.ataxy.atigi.atilt.atimy.atlas.atman.atmas.atmos.atocs.atoke.atoks.atoms.atomy.atony.atopy.atria.atrip.attap.attar.atuas.audad.auger.aught.aulas.aulic.auloi.aulos.aumil.aunes.aunts.aurae.aural.aurar.auras.aurei.aures.auric.auris.aurum.autos.auxin.avale.avant.avast.avels.avens.avers.avgas.avine.avion.avise.aviso.avize.avows.avyze.awarn.awato.awave.aways.awdls.aweel.aweto.awing.awmry.awned.awner.awols.awork.axels.axile.axils.axing.axite.axled.axles.axman.axmen.axoid.axone.axons.ayahs.ayaya.ayelp.aygre.ayins.ayont.ayres.ayrie.azans.azide.azido.azine.azlon.azoic.azole.azons.azote.azoth.azuki.azurn.azury.azygy.azyme.azyms.baaed.baals.babas.babel.babes.babka.baboo.babul.babus.bacca.bacco.baccy.bacha.bachs.backs.baddy.baels.baffs.baffy.bafts.baghs.bagie.bahts.bahus.bahut.bails.bairn.baisa.baith.baits.baiza.baize.bajan.bajra.bajri.bajus.baked.baken.bakes.bakra.balas.balds.baldy.baled.bales.balks.balky.balls.bally.balms.baloo.balsa.balti.balun.balus.bambi.banak.banco.bancs.banda.bandh.bands.bandy.baned.banes.bangs.bania.banks.banns.bants.bantu.banty.banya.bapus.barbe.barbs.barby.barca.barde.bardo.bards.bardy.bared.barer.bares.barfi.barfs.baric.barks.barky.barms.barmy.barns.barny.barps.barra.barre.barro.barry.barye.basan.based.basen.baser.bases.basho.basij.basks.bason.basse.bassi.basso.bassy.basta.basti.basto.basts.bated.bates.baths.batik.batta.batts.battu.bauds.bauks.baulk.baurs.bavin.bawds.bawks.bawls.bawns.bawrs.bawty.bayed.bayer.bayes.bayle.bayts.bazar.bazoo.beads.beaks.beaky.beals.beams.beamy.beano.beans.beany.beare.bears.beath.beats.beaty.beaus.beaut.beaux.bebop.becap.becke.becks.bedad.bedel.bedes.bedew.bedim.bedye.beedi.beefs.beeps.beers.beery.beets.befog.begad.begar.begem.begot.begum.beige.beigy.beins.bekah.belah.belar.belay.belee.belga.bells.belon.belts.bemad.bemas.bemix.bemud.bends.bendy.benes.benet.benga.benis.benne.benni.benny.bento.bents.benty.bepat.beray.beres.bergs.berko.berks.berme.berms.berob.beryl.besat.besaw.besee.beses.besit.besom.besot.besti.bests.betas.beted.betes.beths.betid.beton.betta.betty.bever.bevor.bevue.bevvy.bewet.bewig.bezes.bezil.bezzy.bhais.bhaji.bhang.bhats.bhels.bhoot.bhuna.bhuts.biach.biali.bialy.bibbs.bibes.biccy.bices.bided.bider.bides.bidet.bidis.bidon.bield.biers.biffo.biffs.biffy.bifid.bigae.biggs.biggy.bigha.bight.bigly.bigos.bijou.biked.biker.bikes.bikie.bilbo.bilby.biled.biles.bilgy.bilks.bills.bimah.bimas.bimbo.binal.bindi.binds.biner.bines.bings.bingy.binit.binks.bints.biogs.biont.biota.biped.bipod.birds.birks.birle.birls.biros.birrs.birse.birsy.bises.bisks.bisom.bitch.biter.bites.bitos.bitou.bitsy.bitte.bitts.bivia.bivvy.bizes.bizzo.bizzy.blabs.blads.blady.blaer.blaes.blaff.blags.blahs.blain.blams.blart.blase.blash.blate.blats.blatt.blaud.blawn.blaws.blays.blear.blebs.blech.blees.blent.blert.blest.blets.bleys.blimy.bling.blini.blins.bliny.blips.blist.blite.blits.blive.blobs.blocs.blogs.blook.bloop.blore.blots.blows.blowy.blubs.blude.bluds.bludy.blued.blues.bluet.bluey.bluid.blume.blunk.blurs.blype.boabs.boaks.boars.boart.boats.bobac.bobak.bobas.bobol.bobos.bocca.bocce.bocci.boche.bocks.boded.bodes.bodge.bodhi.bodle.boeps.boets.boeuf.boffo.boffs.bogan.bogey.boggy.bogie.bogle.bogue.bogus.bohea.bohos.boils.boing.boink.boite.boked.bokeh.bokes.bokos.bolar.bolas.bolds.boles.bolix.bolls.bolos.bolts.bolus.bomas.bombe.bombo.bombs.bonce.bonds.boned.boner.bones.bongs.bonie.bonks.bonne.bonny.bonza.bonze.booai.booay.boobs.boody.booed.boofy.boogy.boohs.books.booky.bools.booms.boomy.boong.boons.boord.boors.boose.boots.boppy.borak.boral.boras.borde.bords.bored.boree.borel.borer.bores.borgo.boric.borks.borms.borna.boron.borts.borty.bortz.bosie.bosks.bosky.boson.bosun.botas.botel.botes.bothy.botte.botts.botty.bouge.bouks.boult.bouns.bourd.bourg.bourn.bouse.bousy.bouts.bovid.bowat.bowed.bower.bowes.bowet.bowie.bowls.bowne.bowrs.bowse.boxed.boxen.boxes.boxla.boxty.boyar.boyau.boyed.boyfs.boygs.boyla.boyos.boysy.bozos.braai.brach.brack.bract.brads.braes.brags.brail.braks.braky.brame.brane.brank.brans.brant.brast.brats.brava.bravi.braws.braxy.brays.braza.braze.bream.brede.breds.breem.breer.brees.breid.breis.breme.brens.brent.brere.brers.breve.brews.breys.brier.bries.brigs.briki.briks.brill.brims.brins.brios.brise.briss.brith.brits.britt.brize.broch.brock.brods.brogh.brogs.brome.bromo.bronc.brond.brool.broos.brose.brosy.brows.brugh.bruin.bruit.brule.brume.brung.brusk.brust.bruts.buats.buaze.bubal.bubas.bubba.bubbe.bubby.bubus.buchu.bucko.bucks.bucku.budas.budis.budos.buffa.buffe.buffi.buffo.buffs.buffy.bufos.bufty.buhls.buhrs.buiks.buist.bukes.bulbs.bulgy.bulks.bulla.bulls.bulse.bumbo.bumfs.bumph.bumps.bumpy.bunas.bunce.bunco.bunde.bundh.bunds.bundt.bundu.bundy.bungs.bungy.bunia.bunje.bunjy.bunko.bunks.bunns.bunts.bunty.bunya.buoys.buppy.buran.buras.burbs.burds.buret.burfi.burgh.burgs.burin.burka.burke.burks.burls.burns.buroo.burps.burqa.burro.burrs.burry.bursa.burse.busby.buses.busks.busky.bussu.busti.busts.busty.buteo.butes.butle.butoh.butts.butty.butut.butyl.buzzy.bwana.bwazi.byded.bydes.byked.bykes.byres.byrls.byssi.bytes.byway.caaed.cabas.caber.cabob.caboc.cabre.cacas.cacks.cacky.cadee.cades.cadge.cadgy.cadie.cadis.cadre.caeca.caese.cafes.caffs.caged.cager.cages.cagot.cahow.caids.cains.caird.cajon.cajun.caked.cakes.cakey.calfs.calid.calif.calix.calks.calla.calls.calms.calmy.calos.calpa.calps.calve.calyx.caman.camas.cames.camis.camos.campi.campo.camps.campy.camus.caned.caneh.caner.canes.cangs.canid.canna.canns.canso.canst.canto.cants.canty.capas.caped.capes.capex.caphs.capiz.caple.capon.capos.capot.capri.capul.carap.carbo.carbs.carby.cardi.cards.cardy.cared.carer.cares.caret.carex.carks.carle.carls.carns.carny.carob.carom.caron.carpi.carps.carrs.carse.carta.carte.carts.carvy.casas.casco.cased.cases.casks.casky.casts.casus.cates.cauda.cauks.cauld.cauls.caums.caups.cauri.causa.cavas.caved.cavel.caver.caves.cavie.cawed.cawks.caxon.ceaze.cebid.cecal.cecum.ceded.ceder.cedes.cedis.ceiba.ceili.ceils.celeb.cella.celli.cells.celom.celts.cense.cento.cents.centu.ceorl.cepes.cerci.cered.ceres.cerge.ceria.ceric.cerne.ceroc.ceros.certs.certy.cesse.cesta.cesti.cetes.cetyl.cezve.chace.chack.chaco.chado.chads.chaft.chais.chals.chams.chana.chang.chank.chape.chaps.chapt.chara.chare.chark.charr.chars.chary.chats.chave.chavs.chawk.chaws.chaya.chays.cheep.chefs.cheka.chela.chelp.chemo.chems.chere.chert.cheth.chevy.chews.chewy.chiao.chias.chibs.chica.chich.chico.chics.chiel.chiks.chile.chimb.chimo.chimp.chine.ching.chink.chino.chins.chips.chirk.chirl.chirm.chiro.chirr.chirt.chiru.chits.chive.chivs.chivy.chizz.choco.chocs.chode.chogs.choil.choko.choky.chola.choli.cholo.chomp.chons.choof.chook.choom.choon.chops.chota.chott.chout.choux.chowk.chows.chubs.chufa.chuff.chugs.chums.churl.churr.chuse.chuts.chyle.chyme.chynd.cibol.cided.cides.ciels.ciggy.cilia.cills.cimar.cimex.cinct.cines.cinqs.cions.cippi.circs.cires.cirls.cirri.cisco.cissy.cists.cital.cited.citer.cites.cives.civet.civie.civvy.clach.clade.clads.claes.clags.clame.clams.clans.claps.clapt.claro.clart.clary.clast.clats.claut.clave.clavi.claws.clays.cleck.cleek.cleep.clefs.clegs.cleik.clems.clepe.clept.cleve.clews.clied.clies.clift.clime.cline.clint.clipe.clips.clipt.clits.cloam.clods.cloff.clogs.cloke.clomb.clomp.clonk.clons.cloop.cloot.clops.clote.clots.clour.clous.clows.cloye.cloys.cloze.clubs.clues.cluey.clunk.clype.cnida.coact.coady.coala.coals.coaly.coapt.coarb.coate.coati.coats.cobbs.cobby.cobia.coble.cobza.cocas.cocci.cocco.cocks.cocky.cocos.codas.codec.coded.coden.coder.codes.codex.codon.coeds.coffs.cogie.cogon.cogue.cohab.cohen.cohoe.cohog.cohos.coifs.coign.coils.coins.coirs.coits.coked.cokes.colas.colby.colds.coled.coles.coley.colic.colin.colls.colly.colog.colts.colza.comae.comal.comas.combe.combi.combo.combs.comby.comer.comes.comix.commo.comms.commy.compo.comps.compt.comte.comus.coned.cones.coney.confs.conga.conge.congo.conia.conin.conks.conky.conne.conns.conte.conto.conus.convo.cooch.cooed.cooee.cooer.cooey.coofs.cooks.cooky.cools.cooly.coomb.cooms.coomy.coons.coops.coopt.coost.coots.cooze.copal.copay.coped.copen.coper.copes.coppy.copra.copsy.coqui.coram.corbe.corby.cords.cored.cores.corey.corgi.coria.corks.corky.corms.corni.corno.corns.cornu.corps.corse.corso.cosec.cosed.coses.coset.cosey.cosie.costa.coste.costs.cotan.coted.cotes.coths.cotta.cotts.coude.coups.courb.courd.coure.cours.couta.couth.coved.coves.covin.cowal.cowan.cowed.cowks.cowls.cowps.cowry.coxae.coxal.coxed.coxes.coxib.coyau.coyed.coyer.coypu.cozed.cozen.cozes.cozey.cozie.craal.crabs.crags.craic.craig.crake.crame.crams.crans.crape.craps.crapy.crare.craws.crays.creds.creel.crees.crems.crena.creps.crepy.crewe.crews.crias.cribs.cries.crims.crine.crios.cripe.crips.crise.crith.crits.croci.crocs.croft.crogs.cromb.crome.cronk.crons.crool.croon.crops.crore.crost.crout.crows.croze.cruck.crudo.cruds.crudy.crues.cruet.cruft.crunk.cruor.crura.cruse.crusy.cruve.crwth.cryer.ctene.cubby.cubeb.cubed.cuber.cubes.cubit.cuddy.cuffo.cuffs.cuifs.cuing.cuish.cuits.cukes.culch.culet.culex.culls.cully.culms.culpa.culti.cults.culty.cumec.cundy.cunei.cunit.cunts.cupel.cupid.cuppa.cuppy.curat.curbs.curch.curds.curdy.cured.curer.cures.curet.curfs.curia.curie.curli.curls.curns.curny.currs.cursi.curst.cusec.cushy.cusks.cusps.cuspy.cusso.cusum.cutch.cuter.cutes.cutey.cutin.cutis.cutto.cutty.cutup.cuvee.cuzes.cwtch.cyano.cyans.cycad.cycas.cyclo.cyder.cylix.cymae.cymar.cymas.cymes.cymol.cysts.cytes.cyton.czars.daals.dabba.daces.dacha.dacks.dadah.dadas.dados.daffs.daffy.dagga.daggy.dagos.dahls.daiko.daine.daint.daker.daled.dales.dalis.dalle.dalts.daman.damar.dames.damme.damns.damps.dampy.dancy.dangs.danio.danks.danny.dants.daraf.darbs.darcy.dared.darer.dares.darga.dargs.daric.daris.darks.darky.darns.darre.darts.darzi.dashi.dashy.datal.dated.dater.dates.datos.datto.daube.daubs.dauby.dauds.dault.daurs.dauts.daven.davit.dawah.dawds.dawed.dawen.dawks.dawns.dawts.dayan.daych.daynt.dazed.dazer.dazes.deads.deair.deals.deans.deare.dearn.dears.deary.deash.deave.deaws.deawy.debag.debby.debel.debes.debts.debud.debur.debus.debye.decad.decaf.decan.decko.decks.decos.dedal.deeds.deedy.deely.deems.deens.deeps.deere.deers.deets.deeve.deevs.defat.deffo.defis.defog.degas.degum.degus.deice.deids.deify.deils.deism.deist.deked.dekes.dekko.deled.deles.delfs.delft.delis.dells.delly.delos.delph.delts.deman.demes.demic.demit.demob.demoi.demos.dempt.denar.denay.dench.denes.denet.denis.dents.deoxy.derat.deray.dered.deres.derig.derma.derms.derns.derny.deros.derro.derry.derth.dervs.desex.deshi.desis.desks.desse.devas.devel.devis.devon.devos.devot.dewan.dewar.dewax.dewed.dexes.dexie.dhaba.dhaks.dhals.dhikr.dhobi.dhole.dholl.dhols.dhoti.dhows.dhuti.diact.dials.diane.diazo.dibbs.diced.dicer.dices.dicht.dicks.dicky.dicot.dicta.dicts.dicty.diddy.didie.didos.didst.diebs.diels.diene.diets.diffs.dight.dikas.diked.diker.dikes.dikey.dildo.dilli.dills.dimbo.dimer.dimes.dimps.dinar.dined.dines.dinge.dings.dinic.dinks.dinky.dinna.dinos.dints.diols.diota.dippy.dipso.diram.direr.dirke.dirks.dirls.dirts.disas.disci.discs.dishy.disks.disme.dital.ditas.dited.dites.ditsy.ditts.ditzy.divan.divas.dived.dives.divis.divna.divos.divot.divvy.diwan.dixie.dixit.diyas.dizen.djinn.djins.doabs.doats.dobby.dobes.dobie.dobla.dobra.dobro.docht.docks.docos.docus.doddy.dodos.doeks.doers.doest.doeth.doffs.dogan.doges.dogey.doggo.doggy.dogie.dohyo.doilt.doily.doits.dojos.dolce.dolci.doled.doles.dolia.dolls.dolma.dolor.dolos.dolts.domal.domed.domes.domic.donah.donas.donee.doner.donga.dongs.donko.donna.donne.donny.donsy.doobs.dooce.doody.dooks.doole.dools.dooly.dooms.doomy.doona.doorn.doors.doozy.dopas.doped.doper.dopes.dorad.dorba.dorbs.doree.dores.doric.doris.dorks.dorky.dorms.dormy.dorps.dorrs.dorsa.dorse.dorts.dorty.dosai.dosas.dosed.doseh.doser.doses.dosha.dotal.doted.doter.dotes.dotty.douar.douce.doucs.douks.doula.douma.doums.doups.doura.douse.douts.doved.doven.dover.doves.dovie.dowar.dowds.dowed.dower.dowie.dowle.dowls.dowly.downa.downs.dowps.dowse.dowts.doxed.doxes.doxie.doyen.doyly.dozed.dozer.dozes.drabs.drack.draco.draff.drags.drail.drams.drant.draps.drats.drave.draws.drays.drear.dreck.dreed.dreer.drees.dregs.dreks.drent.drere.drest.dreys.dribs.drice.dries.drily.drips.dript.droid.droil.droke.drole.drome.drony.droob.droog.drook.drops.dropt.drouk.drows.drubs.drugs.drums.drupe.druse.drusy.druxy.dryad.dryas.dsobo.dsomo.duads.duals.duans.duars.dubbo.ducal.ducat.duces.ducks.ducky.ducts.duddy.duded.dudes.duels.duets.duett.duffs.dufus.duing.duits.dukas.duked.dukes.dukka.dulce.dules.dulia.dulls.dulse.dumas.dumbo.dumbs.dumka.dumky.dumps.dunam.dunch.dunes.dungs.dungy.dunks.dunno.dunny.dunsh.dunts.duomi.duomo.duped.duper.dupes.duple.duply.duppy.dural.duras.dured.dures.durgy.durns.duroc.duros.duroy.durra.durrs.durry.durst.durum.durzi.dusks.dusts.duxes.dwaal.dwale.dwalm.dwams.dwang.dwaum.dweeb.dwile.dwine.dyads.dyers.dyked.dykes.dykey.dykon.dynel.dynes.dzhos.eagre.ealed.eales.eaned.eards.eared.earls.earns.earnt.earst.eased.easer.eases.easle.easts.eathe.eaved.eaves.ebbed.ebbet.ebons.ebook.ecads.eched.eches.echos.ecrus.edema.edged.edger.edges.edile.edits.educe.educt.eejit.eensy.eeven.eevns.effed.egads.egers.egest.eggar.egged.egger.egmas.ehing.eider.eidos.eigne.eiked.eikon.eilds.eisel.ejido.ekkas.elain.eland.elans.elchi.eldin.elemi.elfed.eliad.elint.elmen.eloge.elogy.eloin.elops.elpee.elsin.elute.elvan.elven.elver.elves.emacs.embar.embay.embog.embow.embox.embus.emeer.emend.emerg.emery.emeus.emics.emirs.emits.emmas.emmer.emmet.emmew.emmys.emoji.emong.emote.emove.empts.emule.emure.emyde.emyds.enarm.enate.ended.ender.endew.endue.enews.enfix.eniac.enlit.enmew.ennog.enoki.enols.enorm.enows.enrol.ensew.ensky.entia.enure.enurn.envoi.enzym.eorls.eosin.epact.epees.ephah.ephas.ephod.ephor.epics.epode.epopt.epris.eques.equid.erbia.erevs.ergon.ergos.ergot.erhus.erica.erick.erics.ering.erned.ernes.erose.erred.erses.eruct.erugo.eruvs.erven.ervil.escar.escot.esile.eskar.esker.esnes.esses.estoc.estop.estro.etage.etape.etats.etens.ethal.ethne.ethyl.etics.etnas.ettin.ettle.etuis.etwee.etyma.eughs.euked.eupad.euros.eusol.evens.evert.evets.evhoe.evils.evite.evohe.ewers.ewest.ewhow.ewked.exams.exeat.execs.exeem.exeme.exfil.exies.exine.exing.exits.exode.exome.exons.expat.expos.exude.exuls.exurb.eyass.eyers.eyots.eyras.eyres.eyrie.eyrir.ezine.fabby.faced.facer.faces.facia.facta.facts.faddy.faded.fader.fades.fadge.fados.faena.faery.faffs.faffy.faggy.fagin.fagot.faiks.fails.faine.fains.fairs.faked.faker.fakes.fakey.fakie.fakir.falaj.falls.famed.fames.fanal.fands.fanes.fanga.fango.fangs.fanks.fanon.fanos.fanum.faqir.farad.farci.farcy.fards.fared.farer.fares.farle.farls.farms.faros.farro.farse.farts.fasci.fasti.fasts.fated.fates.fatly.fatso.fatwa.faugh.fauld.fauns.faurd.fauts.fauve.favas.favel.faver.faves.favus.fawns.fawny.faxed.faxes.fayed.fayer.fayne.fayre.fazed.fazes.feals.feare.fears.feart.fease.feats.feaze.feces.fecht.fecit.fecks.fedex.feebs.feeds.feels.feens.feers.feese.feeze.fehme.feint.feist.felch.felid.fells.felly.felts.felty.femal.femes.femmy.fends.fendy.fenis.fenks.fenny.fents.feods.feoff.ferer.feres.feria.ferly.fermi.ferms.ferns.ferny.fesse.festa.fests.festy.fetas.feted.fetes.fetor.fetta.fetts.fetwa.feuar.feuds.feued.feyed.feyer.feyly.fezes.fezzy.fiars.fiats.fibro.fices.fiche.fichu.ficin.ficos.fides.fidge.fidos.fiefs.fient.fiere.fiers.fiest.fifed.fifer.fifes.fifis.figgy.figos.fiked.fikes.filar.filch.filed.files.filii.filks.fille.fillo.fills.filmi.films.filos.filum.finca.finds.fined.fines.finis.finks.finny.finos.fiord.fiqhs.fique.fired.firer.fires.firie.firks.firms.firns.firry.firth.fiscs.fisks.fists.fisty.fitch.fitly.fitna.fitte.fitts.fiver.fives.fixed.fixes.fixit.fjeld.flabs.flaff.flags.flaks.flamm.flams.flamy.flane.flans.flaps.flary.flats.flava.flawn.flaws.flawy.flaxy.flays.fleam.fleas.fleek.fleer.flees.flegs.fleme.fleur.flews.flexi.flexo.fleys.flics.flied.flies.flimp.flims.flips.flirs.flisk.flite.flits.flitt.flobs.flocs.floes.flogs.flong.flops.flors.flory.flosh.flota.flote.flows.flubs.flued.flues.fluey.fluky.flump.fluor.flurr.fluty.fluyt.flyby.flype.flyte.foals.foams.foehn.fogey.fogie.fogle.fogou.fohns.foids.foils.foins.folds.foley.folia.folic.folie.folks.folky.fomes.fonda.fonds.fondu.fones.fonly.fonts.foods.foody.fools.foots.footy.foram.forbs.forby.fordo.fords.forel.fores.forex.forks.forky.forme.forms.forts.forza.forze.fossa.fosse.fouat.fouds.fouer.fouet.foule.fouls.fount.fours.fouth.fovea.fowls.fowth.foxed.foxes.foxie.foyle.foyne.frabs.frack.fract.frags.fraim.franc.frape.fraps.frass.frate.frati.frats.fraus.frays.frees.freet.freit.fremd.frena.freon.frere.frets.fribs.frier.fries.frigs.frise.frist.frith.frits.fritt.frize.frizz.froes.frogs.frons.frore.frorn.frory.frosh.frows.frowy.frugs.frump.frush.frust.fryer.fubar.fubby.fubsy.fucks.fucus.fuddy.fudgy.fuels.fuero.fuffs.fuffy.fugal.fuggy.fugie.fugio.fugle.fugly.fugus.fujis.fulls.fumed.fumer.fumes.fumet.fundi.funds.fundy.fungo.fungs.funks.fural.furan.furca.furls.furol.furrs.furth.furze.furzy.fused.fusee.fusel.fuses.fusil.fusks.fusts.fusty.futon.fuzed.fuzee.fuzes.fuzil.fyces.fyked.fykes.fyles.fyrds.fytte.gabba.gabby.gable.gaddi.gades.gadge.gadid.gadis.gadje.gadjo.gadso.gaffs.gaged.gager.gages.gaids.gains.gairs.gaita.gaits.gaitt.gajos.galah.galas.galax.galea.galed.gales.galls.gally.galop.galut.galvo.gamas.gamay.gamba.gambe.gambo.gambs.gamed.games.gamey.gamic.gamin.gamme.gammy.gamps.ganch.gandy.ganef.ganev.gangs.ganja.ganof.gants.gaols.gaped.gaper.gapes.gapos.gappy.garbe.garbo.garbs.garda.gares.garis.garms.garni.garre.garth.garum.gases.gasps.gaspy.gasts.gatch.gated.gater.gates.gaths.gator.gauch.gaucy.gauds.gauje.gault.gaums.gaumy.gaups.gaurs.gauss.gauzy.gavot.gawcy.gawds.gawks.gawps.gawsy.gayal.gazal.gazar.gazed.gazes.gazon.gazoo.geals.geans.geare.gears.geats.gebur.gecks.geeks.geeps.geest.geist.geits.gelds.gelee.gelid.gelly.gelts.gemel.gemma.gemmy.gemot.genal.genas.genes.genet.genic.genii.genip.genny.genoa.genom.genro.gents.genty.genua.genus.geode.geoid.gerah.gerbe.geres.gerle.germs.germy.gerne.gesse.gesso.geste.gests.getas.getup.geums.geyan.geyer.ghast.ghats.ghaut.ghazi.ghees.ghest.ghyll.gibed.gibel.giber.gibes.gibli.gibus.gifts.gigas.gighe.gigot.gigue.gilas.gilds.gilet.gills.gilly.gilpy.gilts.gimel.gimme.gimps.gimpy.ginch.ginge.gings.ginks.ginny.ginzo.gipon.gippo.gippy.girds.girls.girns.giron.giros.girrs.girsh.girts.gismo.gisms.gists.gitch.gites.giust.gived.gives.gizmo.glace.glads.glady.glaik.glair.glams.glans.glary.glaum.glaur.glazy.gleba.glebe.gleby.glede.gleds.gleed.gleek.glees.gleet.gleis.glens.glent.gleys.glial.glias.glibs.gliff.glift.glike.glime.glims.glisk.glits.glitz.gloam.globi.globs.globy.glode.glogg.gloms.gloop.glops.glost.glout.glows.gloze.glued.gluer.glues.gluey.glugs.glume.glums.gluon.glute.gluts.gnarl.gnarr.gnars.gnats.gnawn.gnaws.gnows.goads.goafs.goals.goary.goats.goaty.goban.gobar.gobbi.gobbo.gobby.gobis.gobos.godet.godso.goels.goers.goest.goeth.goety.gofer.goffs.gogga.gogos.goier.gojis.golds.goldy.goles.golfs.golpe.golps.gombo.gomer.gompa.gonch.gonef.gongs.gonia.gonif.gonks.gonna.gonof.gonys.gonzo.gooby.goods.goofs.googs.gooks.gooky.goold.gools.gooly.goons.goony.goops.goopy.goors.goory.goosy.gopak.gopik.goral.goras.gored.gores.goris.gorms.gormy.gorps.gorse.gorsy.gosht.gosse.gotch.goths.gothy.gotta.gouch.gouks.goura.gouts.gouty.gowan.gowds.gowfs.gowks.gowls.gowns.goxes.goyim.goyle.graal.grabs.grads.graff.graip.grama.grame.gramp.grams.grana.grans.grapy.gravs.grays.grebe.grebo.grece.greek.grees.grege.grego.grein.grens.grese.greve.grews.greys.grice.gride.grids.griff.grift.grigs.grike.grins.griot.grips.gript.gripy.grise.grist.grisy.grith.grits.grize.groat.grody.grogs.groks.groma.grone.groof.grosz.grots.grouf.grovy.grows.grrls.grrrl.grubs.grued.grues.grufe.grume.grump.grund.gryce.gryde.gryke.grype.grypt.guaco.guana.guano.guans.guars.gucks.gucky.gudes.guffs.gugas.guids.guimp.guiro.gulag.gular.gulas.gules.gulet.gulfs.gulfy.gulls.gulph.gulps.gulpy.gumma.gummi.gumps.gundy.gunge.gungy.gunks.gunky.gunny.guqin.gurdy.gurge.gurls.gurly.gurns.gurry.gursh.gurus.gushy.gusla.gusle.gusli.gussy.gusts.gutsy.gutta.gutty.guyed.guyle.guyot.guyse.gwine.gyals.gyans.gybed.gybes.gyeld.gymps.gynae.gynie.gynny.gynos.gyoza.gypos.gyppo.gyppy.gyral.gyred.gyres.gyron.gyros.gyrus.gytes.gyved.gyves.haafs.haars.hable.habus.hacek.hacks.hadal.haded.hades.hadji.hadst.haems.haets.haffs.hafiz.hafts.haggs.hahas.haick.haika.haiks.haiku.hails.haily.hains.haint.hairs.haith.hajes.hajis.hajji.hakam.hakas.hakea.hakes.hakim.hakus.halal.haled.haler.hales.halfa.halfs.halid.hallo.halls.halma.halms.halon.halos.halse.halts.halva.halwa.hamal.hamba.hamed.hames.hammy.hamza.hanap.hance.hanch.hands.hangi.hangs.hanks.hanky.hansa.hanse.hants.haole.haoma.hapax.haply.happi.hapus.haram.hards.hared.hares.harim.harks.harls.harms.harns.haros.harps.harts.hashy.hasks.hasps.hasta.hated.hates.hatha.hauds.haufs.haugh.hauld.haulm.hauls.hault.hauns.hause.haver.haves.hawed.hawks.hawms.hawse.hayed.hayer.hayey.hayle.hazan.hazed.hazer.hazes.heads.heald.heals.heame.heaps.heapy.heare.hears.heast.heats.heben.hebes.hecht.hecks.heder.hedgy.heeds.heedy.heels.heeze.hefte.hefts.heids.heigh.heils.heirs.hejab.hejra.heled.heles.helio.hells.helms.helos.helot.helps.helve.hemal.hemes.hemic.hemin.hemps.hempy.hench.hends.henge.henna.henny.henry.hents.hepar.herbs.herby.herds.heres.herls.herma.herms.herns.heros.herry.herse.hertz.herye.hesps.hests.hetes.heths.heuch.heugh.hevea.hewed.hewer.hewgh.hexad.hexed.hexer.hexes.hexyl.heyed.hiant.hicks.hided.hider.hides.hiems.highs.hight.hijab.hijra.hiked.hiker.hikes.hikoi.hilar.hilch.hillo.hills.hilts.hilum.hilus.himbo.hinau.hinds.hings.hinky.hinny.hints.hiois.hiply.hired.hiree.hirer.hires.hissy.hists.hithe.hived.hiver.hives.hizen.hoaed.hoagy.hoars.hoary.hoast.hobos.hocks.hocus.hodad.hodja.hoers.hogan.hogen.hoggs.hoghs.hohed.hoick.hoied.hoiks.hoing.hoise.hokas.hoked.hokes.hokey.hokis.hokku.hokum.holds.holed.holes.holey.holks.holla.hollo.holme.holms.holon.holos.holts.homas.homed.homes.homey.homie.homme.homos.honan.honda.honds.honed.honer.hones.hongi.hongs.honks.honky.hooch.hoods.hoody.hooey.hoofs.hooka.hooks.hooky.hooly.hoons.hoops.hoord.hoors.hoosh.hoots.hooty.hoove.hopak.hoped.hoper.hopes.hoppy.horah.horal.horas.horis.horks.horme.horns.horst.horsy.hosed.hosel.hosen.hoser.hoses.hosey.hosta.hosts.hotch.hoten.hotty.houff.houfs.hough.houri.hours.houts.hovea.hoved.hoven.hoves.howbe.howes.howff.howfs.howks.howls.howre.howso.hoxed.hoxes.hoyas.hoyed.hoyle.hubby.hucks.hudna.hudud.huers.huffs.huffy.huger.huggy.huhus.huias.hulas.hules.hulks.hulky.hullo.hulls.hully.humas.humfs.humic.humps.humpy.hunks.hunts.hurds.hurls.hurly.hurra.hurst.hurts.hushy.husks.husos.hutia.huzza.huzzy.hwyls.hydra.hyens.hygge.hying.hykes.hylas.hyleg.hyles.hylic.hymns.hynde.hyoid.hyped.hypes.hypha.hyphy.hypos.hyrax.hyson.hythe.iambi.iambs.ibrik.icers.iched.iches.ichor.icier.icker.ickle.icons.ictal.ictic.ictus.idant.ideas.idees.ident.idled.idles.idola.idols.idyls.iftar.igapo.igged.iglus.ihram.ikans.ikats.ikons.ileac.ileal.ileum.ileus.iliad.ilial.ilium.iller.illth.imago.imams.imari.imaum.imbar.imbed.imide.imido.imids.imine.imino.immew.immit.immix.imped.impis.impot.impro.imshi.imshy.inapt.inarm.inbye.incel.incle.incog.incus.incut.indew.india.indie.indol.indow.indri.indue.inerm.infix.infos.infra.ingan.ingle.inion.inked.inker.inkle.inned.innit.inorb.inrun.inset.inspo.intel.intil.intis.intra.inula.inure.inurn.inust.invar.inwit.iodic.iodid.iodin.iotas.ippon.irade.irids.iring.irked.iroko.irone.irons.isbas.ishes.isled.isles.isnae.issei.istle.items.ither.ivied.ivies.ixias.ixnay.ixora.ixtle.izard.izars.izzat.jaaps.jabot.jacal.jacks.jacky.jaded.jades.jafas.jaffa.jagas.jager.jaggs.jaggy.jagir.jagra.jails.jaker.jakes.jakey.jalap.jalop.jambe.jambo.jambs.jambu.james.jammy.jamon.janes.janns.janny.janty.japan.japed.japer.japes.jarks.jarls.jarps.jarta.jarul.jasey.jaspe.jasps.jatos.jauks.jaups.javas.javel.jawan.jawed.jaxie.jeans.jeats.jebel.jedis.jeels.jeely.jeeps.jeers.jeeze.jefes.jeffs.jehad.jehus.jelab.jello.jells.jembe.jemmy.jenny.jeons.jerid.jerks.jerry.jesse.jests.jesus.jetes.jeton.jeune.jewed.jewie.jhala.jiaos.jibba.jibbs.jibed.jiber.jibes.jiffs.jiggy.jigot.jihad.jills.jilts.jimmy.jimpy.jingo.jinks.jinne.jinni.jinns.jirds.jirga.jirre.jisms.jived.jiver.jives.jivey.jnana.jobed.jobes.jocko.jocks.jocky.jocos.jodel.joeys.johns.joins.joked.jokes.jokey.jokol.joled.joles.jolls.jolts.jolty.jomon.jomos.jones.jongs.jonty.jooks.joram.jorum.jotas.jotty.jotun.joual.jougs.jouks.joule.jours.jowar.jowed.jowls.jowly.joyed.jubas.jubes.jucos.judas.judgy.judos.jugal.jugum.jujus.juked.jukes.jukus.julep.jumar.jumby.jumps.junco.junks.junky.jupes.jupon.jural.jurat.jurel.jures.justs.jutes.jutty.juves.juvie.kaama.kabab.kabar.kabob.kacha.kacks.kadai.kades.kadis.kafir.kagos.kagus.kahal.kaiak.kaids.kaies.kaifs.kaika.kaiks.kails.kaims.kaing.kains.kakas.kakis.kalam.kales.kalif.kalis.kalpa.kamas.kames.kamik.kamis.kamme.kanae.kanas.kandy.kaneh.kanes.kanga.kangs.kanji.kants.kanzu.kaons.kapas.kaphs.kapok.kapow.kapus.kaput.karas.karat.karks.karns.karoo.karos.karri.karst.karsy.karts.karzy.kasha.kasme.katal.katas.katis.katti.kaugh.kauri.kauru.kaury.kaval.kavas.kawas.kawau.kawed.kayle.kayos.kazis.kazoo.kbars.kebar.kebob.kecks.kedge.kedgy.keech.keefs.keeks.keels.keema.keeno.keens.keeps.keets.keeve.kefir.kehua.keirs.kelep.kelim.kells.kelly.kelps.kelpy.kelts.kelty.kembo.kembs.kemps.kempt.kempy.kenaf.kench.kendo.kenos.kente.kents.kepis.kerbs.kerel.kerfs.kerky.kerma.kerne.kerns.keros.kerry.kerve.kesar.kests.ketas.ketch.ketes.ketol.kevel.kevil.kexes.keyed.keyer.khadi.khafs.khans.khaph.khats.khaya.khazi.kheda.kheth.khets.khoja.khors.khoum.khuds.kiaat.kiack.kiang.kibbe.kibbi.kibei.kibes.kibla.kicks.kicky.kiddo.kiddy.kidel.kidge.kiefs.kiers.kieve.kievs.kight.kikes.kikoi.kiley.kilim.kills.kilns.kilos.kilps.kilts.kilty.kimbo.kinas.kinda.kinds.kindy.kines.kings.kinin.kinks.kinos.kiore.kipes.kippa.kipps.kirby.kirks.kirns.kirri.kisan.kissy.kists.kited.kiter.kites.kithe.kiths.kitul.kivas.kiwis.klang.klaps.klett.klick.klieg.kliks.klong.kloof.kluge.klutz.knags.knaps.knarl.knars.knaur.knawe.knees.knell.knish.knits.knive.knobs.knops.knosp.knots.knout.knowe.knows.knubs.knurl.knurr.knurs.knuts.koans.koaps.koban.kobos.koels.koffs.kofta.kogal.kohas.kohen.kohls.koine.kojis.kokam.kokas.koker.kokra.kokum.kolas.kolos.kombu.konbu.kondo.konks.kooks.kooky.koori.kopek.kophs.kopje.koppa.korai.koras.korat.kores.korma.koros.korun.korus.koses.kotch.kotos.kotow.koura.kraal.krabs.kraft.krais.krait.krang.krans.kranz.kraut.krays.kreep.kreng.krewe.krona.krone.kroon.krubi.krunk.ksars.kubie.kudos.kudus.kudzu.kufis.kugel.kuias.kukri.kukus.kulak.kulan.kulas.kulfi.kumis.kumys.kuris.kurre.kurta.kurus.kusso.kutas.kutch.kutis.kutus.kuzus.kvass.kvell.kwela.kyack.kyaks.kyang.kyars.kyats.kybos.kydst.kyles.kylie.kylin.kylix.kyloe.kynde.kynds.kypes.kyrie.kytes.kythe.laari.labda.labia.labis.labra.laced.lacer.laces.lacet.lacey.lacks.laddy.laded.lader.lades.laers.laevo.lagan.lahal.lahar.laich.laics.laids.laigh.laika.laiks.laird.lairs.lairy.laith.laity.laked.laker.lakes.lakhs.lakin.laksa.laldy.lalls.lamas.lambs.lamby.lamed.lamer.lames.lamia.lammy.lamps.lanai.lanas.lanch.lande.lands.lanes.lanks.lants.lapin.lapis.lapje.larch.lards.lardy.laree.lares.largo.laris.larks.larky.larns.larnt.larum.lased.laser.lases.lassi.lassu.lassy.lasts.latah.lated.laten.latex.lathi.laths.lathy.latke.latus.lauan.lauch.lauds.laufs.laund.laura.laval.lavas.laved.laver.laves.lavra.lavvy.lawed.lawer.lawin.lawks.lawns.lawny.laxed.laxer.laxes.laxly.layed.layin.layup.lazar.lazed.lazes.lazos.lazzi.lazzo.leads.leady.leafs.leaks.leams.leans.leany.leaps.leare.lears.leary.leats.leavy.leaze.leben.leccy.ledes.ledgy.ledum.leear.leeks.leeps.leers.leese.leets.leeze.lefte.lefts.leger.leges.legge.leggo.legit.lehrs.lehua.leirs.leish.leman.lemed.lemel.lemes.lemma.lemme.lends.lenes.lengs.lenis.lenos.lense.lenti.lento.leone.lepid.lepra.lepta.lered.leres.lerps.lesbo.leses.lests.letch.lethe.letup.leuch.leuco.leuds.leugh.levas.levee.leves.levin.levis.lewis.lexes.lexis.lezes.lezza.lezzy.liana.liane.liang.liard.liars.liart.liber.libra.libri.lichi.licht.licit.licks.lidar.lidos.liefs.liens.liers.lieus.lieve.lifer.lifes.lifts.ligan.liger.ligge.ligne.liked.liker.likes.likin.lills.lilos.lilts.liman.limas.limax.limba.limbi.limbs.limby.limed.limen.limes.limey.limma.limns.limos.limpa.limps.linac.linch.linds.lindy.lined.lines.liney.linga.lings.lingy.linin.links.linky.linns.linny.linos.lints.linty.linum.linux.lions.lipas.lipes.lipin.lipos.lippy.liras.lirks.lirot.lisks.lisle.lisps.lists.litai.litas.lited.liter.lites.litho.liths.litre.lived.liven.lives.livor.livre.llano.loach.loads.loafs.loams.loans.loast.loave.lobar.lobed.lobes.lobos.lobus.loche.lochs.locie.locis.locks.locos.locum.loden.lodes.loess.lofts.logan.loges.loggy.logia.logie.logoi.logon.logos.lohan.loids.loins.loipe.loirs.lokes.lolls.lolly.lolog.lomas.lomed.lomes.loner.longa.longe.longs.looby.looed.looey.loofa.loofs.looie.looks.looky.looms.loons.loony.loops.loord.loots.loped.loper.lopes.loppy.loral.loran.lords.lordy.lorel.lores.loric.loris.losed.losel.losen.loses.lossy.lotah.lotas.lotes.lotic.lotos.lotsa.lotta.lotte.lotto.lotus.loued.lough.louie.louis.louma.lound.louns.loupe.loups.loure.lours.loury.louts.lovat.loved.loves.lovey.lovie.lowan.lowed.lowes.lownd.lowne.lowns.lowps.lowry.lowse.lowts.loxed.loxes.lozen.luach.luaus.lubed.lubes.lubra.luces.lucks.lucre.ludes.ludic.ludos.luffa.luffs.luged.luger.luges.lulls.lulus.lumas.lumbi.lumme.lummy.lumps.lunas.lunes.lunet.lungi.lungs.lunks.lunts.lupin.lured.lurer.lures.lurex.lurgi.lurgy.lurks.lurry.lurve.luser.lushy.lusks.lusts.lusus.lutea.luted.luter.lutes.luvvy.luxed.luxer.luxes.lweis.lyams.lyard.lyart.lyase.lycea.lycee.lycra.lymes.lynes.lyres.lysed.lyses.lysin.lysis.lysol.lyssa.lyted.lytes.lythe.lytic.lytta.maaed.maare.maars.mabes.macas.maced.macer.maces.mache.machi.machs.macks.macle.macon.madge.madid.madre.maerl.mafic.mages.maggs.magot.magus.mahoe.mahua.mahwa.maids.maiko.maiks.maile.maill.mails.maims.mains.maire.mairs.maise.maist.makar.makes.makis.makos.malam.malar.malas.malax.males.malic.malik.malis.malls.malms.malmy.malts.malty.malus.malva.malwa.mamas.mamba.mamee.mamey.mamie.manas.manat.mandi.maneb.maned.maneh.manes.manet.mangs.manis.manky.manna.manos.manse.manta.manto.manty.manul.manus.mapau.maqui.marae.marah.maras.marcs.mardy.mares.marge.margs.maria.marid.marka.marks.marle.marls.marly.marms.maron.maror.marra.marri.marse.marts.marvy.masas.mased.maser.mases.mashy.masks.massa.massy.masts.masty.masus.matai.mated.mater.mates.maths.matin.matlo.matte.matts.matza.matzo.mauby.mauds.mauls.maund.mauri.mausy.mauts.mauzy.maven.mavie.mavin.mavis.mawed.mawks.mawky.mawns.mawrs.maxed.maxes.maxis.mayan.mayas.mayed.mayos.mayst.mazed.mazer.mazes.mazey.mazut.mbira.meads.meals.meane.means.meany.meare.mease.meath.meats.mebos.mechs.mecks.medii.medle.meeds.meers.meets.meffs.meins.meint.meiny.meith.mekka.melas.melba.melds.melic.melik.mells.melts.melty.memes.memos.menad.mends.mened.menes.menge.mengs.mensa.mense.mensh.menta.mento.menus.meous.meows.merch.mercs.merde.mered.merel.merer.meres.meril.meris.merks.merle.merls.merse.mesal.mesas.mesel.meses.meshy.mesic.mesne.meson.messy.mesto.meted.metes.metho.meths.metic.metif.metis.metol.metre.meuse.meved.meves.mewed.mewls.meynt.mezes.mezze.mezzo.mhorr.miaou.miaow.miasm.miaul.micas.miche.micht.micks.micky.micos.micra.middy.midgy.midis.miens.mieve.miffs.miffy.mifty.miggs.mihas.mihis.miked.mikes.mikra.mikva.milch.milds.miler.miles.milfs.milia.milko.milks.mille.mills.milor.milos.milpa.milts.milty.miltz.mimed.mimeo.mimer.mimes.mimsy.minae.minar.minas.mincy.minds.mined.mines.minge.mings.mingy.minis.minke.minks.minny.minos.mints.mired.mires.mirex.mirid.mirin.mirks.mirky.mirly.miros.mirvs.mirza.misch.misdo.mises.misgo.misos.missa.mists.misty.mitch.miter.mites.mitis.mitre.mitts.mixed.mixen.mixer.mixes.mixte.mixup.mizen.mizzy.mneme.moans.moats.mobby.mobes.mobey.mobie.moble.mochi.mochs.mochy.mocks.moder.modes.modge.modii.modus.moers.mofos.moggy.mohel.mohos.mohrs.mohua.mohur.moile.moils.moira.moire.moits.mojos.mokes.mokis.mokos.molal.molas.molds.moled.moles.molla.molls.molly.molto.molts.molys.momes.momma.mommy.momus.monad.monal.monas.monde.mondo.moner.mongo.mongs.monic.monie.monks.monos.monte.monty.moobs.mooch.moods.mooed.mooks.moola.mooli.mools.mooly.moong.moons.moony.moops.moors.moory.moots.moove.moped.moper.mopes.mopey.moppy.mopsy.mopus.morae.moras.morat.moray.morel.mores.moria.morne.morns.morra.morro.morse.morts.mosed.moses.mosey.mosks.mosso.moste.mosts.moted.moten.motes.motet.motey.moths.mothy.motis.motte.motts.motty.motus.motza.mouch.moues.mould.mouls.moups.moust.mousy.moved.moves.mowas.mowed.mowra.moxas.moxie.moyas.moyle.moyls.mozed.mozes.mozos.mpret.mucho.mucic.mucid.mucin.mucks.mucor.mucro.mudge.mudir.mudra.muffs.mufti.mugga.muggs.muggy.muhly.muids.muils.muirs.muist.mujik.mulct.muled.mules.muley.mulga.mulie.mulla.mulls.mulse.mulsh.mumms.mumps.mumsy.mumus.munga.munge.mungo.mungs.munis.munts.muntu.muons.muras.mured.mures.murex.murid.murks.murls.murly.murra.murre.murri.murrs.murry.murti.murva.musar.musca.mused.muser.muses.muset.musha.musit.musks.musos.musse.mussy.musth.musts.mutch.muted.muter.mutes.mutha.mutis.muton.mutts.muxed.muxes.muzak.muzzy.mvule.myall.mylar.mynah.mynas.myoid.myoma.myope.myops.myopy.mysid.mythi.myths.mythy.myxos.mzees.naams.naans.nabes.nabis.nabks.nabla.nabob.nache.nacho.nacre.nadas.naeve.naevi.naffs.nagas.naggy.nagor.nahal.naiad.naifs.naiks.nails.naira.nairu.naked.naker.nakfa.nalas.naled.nalla.named.namer.names.namma.namus.nanas.nance.nancy.nandu.nanna.nanos.nanua.napas.naped.napes.napoo.nappa.nappe.nappy.naras.narco.narcs.nards.nares.naric.naris.narks.narky.narre.nashi.natch.nates.natis.natty.nauch.naunt.navar.naves.navew.navvy.nawab.nazes.nazir.nazis.nduja.neafe.neals.neaps.nears.neath.neats.nebek.nebel.necks.neddy.needs.neeld.neele.neemb.neems.neeps.neese.neeze.negro.negus.neifs.neist.neive.nelis.nelly.nemas.nemns.nempt.nenes.neons.neper.nepit.neral.nerds.nerka.nerks.nerol.nerts.nertz.nervy.nests.netes.netop.netts.netty.neuks.neume.neums.nevel.neves.nevus.newbs.newed.newel.newie.newsy.newts.nexts.nexus.ngaio.ngana.ngati.ngoma.ngwee.nicad.nicht.nicks.nicol.nidal.nided.nides.nidor.nidus.niefs.nieve.nifes.niffs.niffy.nifty.niger.nighs.nihil.nikab.nikah.nikau.nills.nimbi.nimbs.nimps.niner.nines.ninon.nipas.nippy.niqab.nirls.nirly.nisei.nisse.nisus.niter.nites.nitid.niton.nitre.nitro.nitry.nitty.nival.nixed.nixer.nixes.nixie.nizam.nkosi.noahs.nobby.nocks.nodal.noddy.nodes.nodus.noels.noggs.nohow.noils.noily.noint.noirs.noles.nolls.nolos.nomas.nomen.nomes.nomic.nomoi.nomos.nonas.nonce.nones.nonet.nongs.nonis.nonny.nonyl.noobs.nooit.nooks.nooky.noons.noops.nopal.noria.noris.norks.norma.norms.nosed.noser.noses.notal.noted.noter.notes.notum.nould.noule.nouls.nouns.nouny.noups.novae.novas.novum.noway.nowed.nowls.nowts.nowty.noxal.noxes.noyau.noyed.noyes.nubby.nubia.nucha.nuddy.nuder.nudes.nudie.nudzh.nuffs.nugae.nuked.nukes.nulla.nulls.numbs.numen.nummy.nunny.nurds.nurdy.nurls.nurrs.nutso.nutsy.nyaff.nyala.nying.nyssa.oaked.oaker.oakum.oared.oases.oasis.oasts.oaten.oater.oaths.oaves.obang.obeah.obeli.obeys.obias.obied.obiit.obits.objet.oboes.obole.oboli.obols.occam.ocher.oches.ochre.ochry.ocker.ocrea.octad.octan.octas.octyl.oculi.odahs.odals.odeon.odeum.odism.odist.odium.odors.odour.odyle.odyls.ofays.offed.offie.oflag.ofter.ogams.ogeed.ogees.oggin.ogham.ogive.ogled.ogler.ogles.ogmic.ogres.ohias.ohing.ohmic.ohone.oidia.oiled.oiler.oinks.oints.ojime.okapi.okays.okehs.okras.oktas.oldie.oleic.olein.olent.oleos.oleum.olios.ollas.ollav.oller.ollie.ology.olpae.olpes.omasa.omber.ombus.omens.omers.omits.omlah.omovs.omrah.oncer.onces.oncet.oncus.onely.oners.onery.onium.onkus.onlay.onned.ontic.oobit.oohed.oomph.oonts.ooped.oorie.ooses.ootid.oozed.oozes.opahs.opals.opens.opepe.oping.oppos.opsin.opted.opter.orach.oracy.orals.orang.orant.orate.orbed.orcas.orcin.ordos.oread.orfes.orgia.orgic.orgue.oribi.oriel.orixa.orles.orlon.orlop.ormer.ornis.orpin.orris.ortho.orval.orzos.oscar.oshac.osier.osmic.osmol.ossia.ostia.otaku.otary.ottar.ottos.oubit.oucht.ouens.ouija.oulks.oumas.oundy.oupas.ouped.ouphe.ouphs.ourie.ousel.ousts.outby.outed.outre.outro.outta.ouzel.ouzos.ovals.ovels.ovens.overs.ovist.ovoli.ovolo.ovule.owche.owies.owled.owler.owlet.owned.owres.owrie.owsen.oxbow.oxers.oxeye.oxids.oxies.oxime.oxims.oxlip.oxter.oyers.ozeki.ozzie.paals.paans.pacas.paced.pacer.paces.pacey.pacha.packs.pacos.pacta.pacts.padis.padle.padma.padre.padri.paean.paedo.paeon.paged.pager.pages.pagle.pagod.pagri.paiks.pails.pains.paire.pairs.paisa.paise.pakka.palas.palay.palea.paled.pales.palet.palis.palki.palla.palls.pally.palms.palmy.palpi.palps.palsa.pampa.panax.pance.panda.pands.pandy.paned.panes.panga.pangs.panim.panko.panne.panni.panto.pants.panty.paoli.paolo.papas.papaw.papes.pappi.pappy.parae.paras.parch.pardi.pards.pardy.pared.paren.pareo.pares.pareu.parev.parge.pargo.paris.parki.parks.parky.parle.parly.parma.parol.parps.parra.parrs.parti.parts.parve.parvo.paseo.pases.pasha.pashm.paska.paspy.passe.pasts.pated.paten.pater.pates.paths.patin.patka.patly.patte.patus.pauas.pauls.pavan.paved.paven.paver.paves.pavid.pavin.pavis.pawas.pawaw.pawed.pawer.pawks.pawky.pawls.pawns.paxes.payed.payor.paysd.peage.peags.peaks.peaky.peals.peans.peare.pears.peart.pease.peats.peaty.peavy.peaze.pebas.pechs.pecke.pecks.pecky.pedes.pedis.pedro.peece.peeks.peels.peens.peeoy.peepe.peeps.peers.peery.peeve.peggy.peghs.peins.peise.peize.pekan.pekes.pekin.pekoe.pelas.pelau.peles.pelfs.pells.pelma.pelon.pelta.pelts.pends.pendu.pened.penes.pengo.penie.penis.penks.penna.penni.pents.peons.peony.pepla.pepos.peppy.pepsi.perai.perce.percs.perdu.perdy.perea.peres.peris.perks.perms.perns.perog.perps.perry.perse.perst.perts.perve.pervo.pervs.pervy.pesos.pests.pesty.petar.peter.petit.petre.petri.petti.petto.pewee.pewit.peyse.phage.phang.phare.pharm.pheer.phene.pheon.phese.phial.phish.phizz.phlox.phoca.phono.phons.phots.phpht.phuts.phyla.phyle.piani.pians.pibal.pical.picas.piccy.picks.picot.picra.picul.piend.piers.piert.pieta.piets.piezo.pight.pigmy.piing.pikas.pikau.piked.piker.pikes.pikey.pikis.pikul.pilae.pilaf.pilao.pilar.pilau.pilaw.pilch.pilea.piled.pilei.piler.piles.pilis.pills.pilow.pilum.pilus.pimas.pimps.pinas.pined.pines.pingo.pings.pinko.pinks.pinna.pinny.pinon.pinot.pinta.pints.pinup.pions.piony.pious.pioye.pioys.pipal.pipas.piped.pipes.pipet.pipis.pipit.pippy.pipul.pirai.pirls.pirns.pirog.pisco.pises.pisky.pisos.pissy.piste.pitas.piths.piton.pitot.pitta.piums.pixes.pized.pizes.plaas.plack.plage.plans.plaps.plash.plasm.plast.plats.platt.platy.playa.plays.pleas.plebe.plebs.plena.pleon.plesh.plews.plica.plies.plims.pling.plink.ploat.plods.plong.plonk.plook.plops.plots.plotz.plouk.plows.ploye.ploys.plues.pluff.plugs.plums.plumy.pluot.pluto.plyer.poach.poaka.poake.poboy.pocks.pocky.podal.poddy.podex.podge.podgy.podia.poems.poeps.poets.pogey.pogge.pogos.pohed.poilu.poind.pokal.poked.pokes.pokey.pokie.poled.poler.poles.poley.polio.polis.polje.polks.polls.polly.polos.polts.polys.pombe.pomes.pommy.pomos.pomps.ponce.poncy.ponds.pones.poney.ponga.pongo.pongs.pongy.ponks.ponts.ponty.ponzu.poods.pooed.poofs.poofy.poohs.pooja.pooka.pooks.pools.poons.poops.poopy.poori.poort.poots.poove.poovy.popes.poppa.popsy.porae.poral.pored.porer.pores.porge.porgy.porin.porks.porky.porno.porns.porny.porta.ports.porty.posed.poses.posey.posho.posts.potae.potch.poted.potes.potin.potoo.potsy.potto.potts.potty.pouff.poufs.pouke.pouks.poule.poulp.poult.poupe.poupt.pours.pouts.powan.powin.pownd.powns.powny.powre.poxed.poxes.poynt.poyou.poyse.pozzy.praam.prads.prahu.prams.prana.prang.praos.prase.prate.prats.pratt.praty.praus.prays.predy.preed.prees.preif.prems.premy.prent.preon.preop.preps.presa.prese.prest.preve.prexy.preys.prial.pricy.prief.prier.pries.prigs.prill.prima.primi.primp.prims.primy.prink.prion.prise.priss.proas.probs.prods.proem.profs.progs.proin.proke.prole.proll.promo.proms.pronk.props.prore.proso.pross.prost.prosy.proto.proul.prows.proyn.prunt.pruta.pryer.pryse.pseud.pshaw.psion.psoae.psoai.psoas.psora.psych.psyop.pubco.pubes.pubis.pucan.pucer.puces.pucka.pucks.puddy.pudge.pudic.pudor.pudsy.pudus.puers.puffa.puffs.puggy.pugil.puhas.pujah.pujas.pukas.puked.puker.pukes.pukey.pukka.pukus.pulao.pulas.puled.puler.pules.pulik.pulis.pulka.pulks.pulli.pulls.pully.pulmo.pulps.pulus.pumas.pumie.pumps.punas.punce.punga.pungs.punji.punka.punks.punky.punny.punto.punts.punty.pupae.pupas.pupus.purda.pured.pures.purin.puris.purls.purpy.purrs.pursy.purty.puses.pusle.pussy.putid.puton.putti.putto.putts.puzel.pwned.pyats.pyets.pygal.pyins.pylon.pyned.pynes.pyoid.pyots.pyral.pyran.pyres.pyrex.pyric.pyros.pyxed.pyxes.pyxie.pyxis.pzazz.qadis.qaids.qajaq.qanat.qapik.qibla.qophs.qorma.quads.quaff.quags.quair.quais.quaky.quale.quant.quare.quass.quate.quats.quayd.quays.qubit.quean.queme.quena.quern.queyn.queys.quich.quids.quiff.quims.quina.quine.quino.quins.quint.quipo.quips.quipu.quire.quirt.quist.quits.quoad.quods.quoif.quoin.quoit.quoll.quonk.quops.qursh.quyte.rabat.rabic.rabis.raced.races.rache.racks.racon.radge.radix.radon.raffs.rafts.ragas.ragde.raged.ragee.rager.rages.ragga.raggs.raggy.ragis.ragus.rahed.rahui.raias.raids.raiks.raile.rails.raine.rains.raird.raita.raits.rajas.rajes.raked.rakee.raker.rakes.rakia.rakis.rakus.rales.ramal.ramee.ramet.ramie.ramin.ramis.rammy.ramps.ramus.ranas.rance.rands.ranee.ranga.rangi.rangs.rangy.ranid.ranis.ranke.ranks.rants.raped.raper.rapes.raphe.rappe.rared.raree.rares.rarks.rased.raser.rases.rasps.rasse.rasta.ratal.ratan.ratas.ratch.rated.ratel.rater.rates.ratha.rathe.raths.ratoo.ratos.ratus.rauns.raupo.raved.ravel.raver.raves.ravey.ravin.rawer.rawin.rawly.rawns.raxed.raxes.rayah.rayas.rayed.rayle.rayne.razed.razee.razer.razes.razoo.readd.reads.reais.reaks.realo.reals.reame.reams.reamy.reans.reaps.rears.reast.reata.reate.reave.rebbe.rebec.rebid.rebit.rebop.rebuy.recal.recce.recco.reccy.recit.recks.recon.recta.recti.recto.redan.redds.reddy.reded.redes.redia.redid.redip.redly.redon.redos.redox.redry.redub.redux.redye.reech.reede.reeds.reefs.reefy.reeks.reeky.reels.reens.reest.reeve.refed.refel.reffo.refis.refix.refly.refry.regar.reges.reggo.regie.regma.regna.regos.regur.rehem.reifs.reify.reiki.reiks.reink.reins.reird.reist.reive.rejig.rejon.reked.rekes.rekey.relet.relie.relit.rello.reman.remap.remen.remet.remex.remix.renay.rends.reney.renga.renig.renin.renne.renos.rente.rents.reoil.reorg.repeg.repin.repla.repos.repot.repps.repro.reran.rerig.resat.resaw.resay.resee.reses.resew.resid.resit.resod.resow.resto.rests.resty.resus.retag.retax.retem.retia.retie.retox.revet.revie.rewan.rewax.rewed.rewet.rewin.rewon.rewth.rexes.rezes.rheas.rheme.rheum.rhies.rhime.rhine.rhody.rhomb.rhone.rhumb.rhyne.rhyta.riads.rials.riant.riata.ribas.ribby.ribes.riced.ricer.rices.ricey.richt.ricin.ricks.rides.ridgy.ridic.riels.riems.rieve.rifer.riffs.rifte.rifts.rifty.riggs.rigol.riled.riles.riley.rille.rills.rimae.rimed.rimer.rimes.rimus.rinds.rindy.rines.rings.rinks.rioja.riots.riped.ripes.ripps.rises.rishi.risks.risps.risus.rites.ritts.ritzy.rivas.rived.rivel.riven.rives.riyal.rizas.roads.roams.roans.roars.roary.roate.robed.robes.roble.rocks.roded.rodes.roguy.rohes.roids.roils.roily.roins.roist.rojak.rojis.roked.roker.rokes.rolag.roles.rolfs.rolls.romal.roman.romeo.romps.ronde.rondo.roneo.rones.ronin.ronne.ronte.ronts.roods.roofs.roofy.rooks.rooky.rooms.roons.roops.roopy.roosa.roose.roots.rooty.roped.roper.ropes.ropey.roque.roral.rores.roric.rorid.rorie.rorts.rorty.rosed.roses.roset.roshi.rosin.rosit.rosti.rosts.rotal.rotan.rotas.rotch.roted.rotes.rotis.rotls.roton.rotos.rotte.rouen.roues.roule.rouls.roums.roups.roupy.roust.routh.routs.roved.roven.roves.rowan.rowed.rowel.rowen.rowie.rowme.rownd.rowth.rowts.royne.royst.rozet.rozit.ruana.rubai.rubby.rubel.rubes.rubin.ruble.rubli.rubus.ruche.rucks.rudas.rudds.rudes.rudie.rudis.rueda.ruers.ruffe.ruffs.rugae.rugal.ruggy.ruing.ruins.rukhs.ruled.rules.rumal.rumbo.rumen.rumes.rumly.rummy.rumpo.rumps.rumpy.runch.runds.runed.runes.rungs.runic.runny.runts.runty.rupia.rurps.rurus.rusas.ruses.rushy.rusks.rusma.russe.rusts.ruths.rutin.rutty.ryals.rybat.ryked.rykes.rymme.rynds.ryots.ryper.saags.sabal.sabed.saber.sabes.sabha.sabin.sabir.sable.sabot.sabra.sabre.sacks.sacra.saddo.sades.sadhe.sadhu.sadis.sados.sadza.safed.safes.sagas.sager.sages.saggy.sagos.sagum.saheb.sahib.saice.saick.saics.saids.saiga.sails.saims.saine.sains.sairs.saist.saith.sajou.sakai.saker.sakes.sakia.sakis.sakti.salal.salat.salep.sales.salet.salic.salix.salle.salmi.salol.salop.salpa.salps.salse.salto.salts.salue.salut.saman.samas.samba.sambo.samek.samel.samen.sames.samey.samfu.sammy.sampi.samps.sands.saned.sanes.sanga.sangh.sango.sangs.sanko.sansa.santo.sants.saola.sapan.sapid.sapor.saran.sards.sared.saree.sarge.sargo.sarin.saris.sarks.sarky.sarod.saros.sarus.saser.sasin.sasse.satai.satay.sated.satem.sates.satis.sauba.sauch.saugh.sauls.sault.saunt.saury.sauts.saved.saver.saves.savey.savin.sawah.sawed.sawer.saxes.sayed.sayer.sayid.sayne.sayon.sayst.sazes.scabs.scads.scaff.scags.scail.scala.scall.scams.scand.scans.scapa.scape.scapi.scarp.scars.scart.scath.scats.scatt.scaud.scaup.scaur.scaws.sceat.scena.scend.schav.schmo.schul.schwa.sclim.scody.scogs.scoog.scoot.scopa.scops.scots.scoug.scoup.scowp.scows.scrab.scrae.scrag.scran.scrat.scraw.scray.scrim.scrip.scrob.scrod.scrog.scrow.scudi.scudo.scuds.scuff.scuft.scugs.sculk.scull.sculp.sculs.scums.scups.scurf.scurs.scuse.scuta.scute.scuts.scuzz.scyes.sdayn.sdein.seals.seame.seams.seamy.seans.seare.sears.sease.seats.seaze.sebum.secco.sechs.sects.seder.sedes.sedge.sedgy.sedum.seeds.seeks.seeld.seels.seely.seems.seeps.seepy.seers.sefer.segar.segni.segno.segol.segos.sehri.seifs.seils.seine.seirs.seise.seism.seity.seiza.sekos.sekts.selah.seles.selfs.sella.selle.sells.selva.semee.semes.semie.semis.senas.sends.senes.sengi.senna.senor.sensa.sensi.sente.senti.sents.senvy.senza.sepad.sepal.sepic.sepoy.septa.septs.serac.serai.seral.sered.serer.seres.serfs.serge.seric.serin.serks.seron.serow.serra.serre.serrs.serry.servo.sesey.sessa.setae.setal.seton.setts.sewan.sewar.sewed.sewel.sewen.sewin.sexed.sexer.sexes.sexto.sexts.seyen.shads.shags.shahs.shako.shakt.shalm.shaly.shama.shams.shand.shans.shaps.sharn.shash.shaul.shawm.shawn.shaws.shaya.shays.shchi.sheaf.sheal.sheas.sheds.sheel.shend.shent.sheol.sherd.shere.shero.shets.sheva.shewn.shews.shiai.shiel.shier.shies.shill.shily.shims.shins.ships.shirr.shirs.shish.shiso.shist.shite.shits.shiur.shiva.shive.shivs.shlep.shlub.shmek.shmoe.shoat.shoed.shoer.shoes.shogi.shogs.shoji.shojo.shola.shool.shoon.shoos.shope.shops.shorl.shote.shots.shott.showd.shows.shoyu.shred.shris.shrow.shtik.shtum.shtup.shule.shuln.shuls.shuns.shura.shute.shuts.shwas.shyer.sials.sibbs.sibyl.sices.sicht.sicko.sicks.sicky.sidas.sided.sider.sides.sidha.sidhe.sidle.sield.siens.sient.sieth.sieur.sifts.sighs.sigil.sigla.signa.signs.sijos.sikas.siker.sikes.silds.siled.silen.siler.siles.silex.silks.sills.silos.silts.silty.silva.simar.simas.simba.simis.simps.simul.sinds.sined.sines.sings.sinhs.sinks.sinky.sinus.siped.sipes.sippy.sired.siree.sires.sirih.siris.siroc.sirra.sirup.sisal.sises.sista.sists.sitar.sited.sites.sithe.sitka.situp.situs.siver.sixer.sixes.sixmo.sixte.sizar.sized.sizel.sizer.sizes.skags.skail.skald.skank.skart.skats.skatt.skaws.skean.skear.skeds.skeed.skeef.skeen.skeer.skees.skeet.skegg.skegs.skein.skelf.skell.skelm.skelp.skene.skens.skeos.skeps.skers.skets.skews.skids.skied.skies.skiey.skimo.skims.skink.skins.skint.skios.skips.skirl.skirr.skite.skits.skive.skivy.sklim.skoal.skody.skoff.skogs.skols.skool.skort.skosh.skran.skrik.skuas.skugs.skyed.skyer.skyey.skyfs.skyre.skyrs.skyte.slabs.slade.slaes.slags.slaid.slake.slams.slane.slank.slaps.slart.slats.slaty.slaws.slays.slebs.sleds.sleer.slews.sleys.slier.slily.slims.slipe.slips.slipt.slish.slits.slive.sloan.slobs.sloes.slogs.sloid.slojd.slomo.sloom.sloot.slops.slopy.slorm.slots.slove.slows.sloyd.slubb.slubs.slued.slues.sluff.slugs.sluit.slums.slurb.slurs.sluse.sluts.slyer.slype.smaak.smaik.smalm.smalt.smarm.smaze.smeek.smees.smeik.smeke.smerk.smews.smirr.smirs.smits.smogs.smoko.smolt.smoor.smoot.smore.smorg.smout.smowt.smugs.smurs.smush.smuts.snabs.snafu.snags.snaps.snarf.snark.snars.snary.snash.snath.snaws.snead.sneap.snebs.sneck.sneds.sneed.snees.snell.snibs.snick.snies.snift.snigs.snips.snipy.snirt.snits.snobs.snods.snoek.snoep.snogs.snoke.snood.snook.snool.snoot.snots.snowk.snows.snubs.snugs.snush.snyes.soaks.soaps.soare.soars.soave.sobas.socas.soces.socko.socks.socle.sodas.soddy.sodic.sodom.sofar.sofas.softa.softs.softy.soger.sohur.soils.soily.sojas.sojus.sokah.soken.sokes.sokol.solah.solan.solas.solde.soldi.soldo.solds.soled.solei.soler.soles.solon.solos.solum.solus.soman.somas.sonce.sonde.sones.songs.sonly.sonne.sonny.sonse.sonsy.sooey.sooks.sooky.soole.sools.sooms.soops.soote.soots.sophs.sophy.sopor.soppy.sopra.soral.soras.sorbo.sorbs.sorda.sordo.sords.sored.soree.sorel.sorer.sores.sorex.sorgo.sorns.sorra.sorta.sorts.sorus.soths.sotol.souce.souct.sough.souks.souls.soums.soups.soupy.sours.souse.souts.sowar.sowce.sowed.sowff.sowfs.sowle.sowls.sowms.sownd.sowne.sowps.sowse.sowth.soyas.soyle.soyuz.sozin.spacy.spado.spaed.spaer.spaes.spags.spahi.spail.spain.spait.spake.spald.spale.spall.spalt.spams.spane.spang.spans.spard.spars.spart.spate.spats.spaul.spawl.spaws.spayd.spays.spaza.spazz.speal.spean.speat.specs.spect.speel.speer.speil.speir.speks.speld.spelk.speos.spets.speug.spews.spewy.spial.spica.spick.spics.spide.spier.spies.spiff.spifs.spiks.spile.spims.spina.spink.spins.spirt.spiry.spits.spitz.spivs.splay.splog.spode.spods.spoom.spoor.spoot.spork.sposh.spots.sprad.sprag.sprat.spred.sprew.sprit.sprod.sprog.sprue.sprug.spuds.spued.spuer.spues.spugs.spule.spume.spumy.spurs.sputa.spyal.spyre.squab.squaw.squeg.squid.squit.squiz.stabs.stade.stags.stagy.staig.stane.stang.staph.staps.starn.starr.stars.stats.staun.staws.stays.stean.stear.stedd.stede.steds.steek.steem.steen.steil.stela.stele.stell.steme.stems.stend.steno.stens.stent.steps.stept.stere.stets.stews.stewy.steys.stich.stied.sties.stilb.stile.stime.stims.stimy.stipa.stipe.stire.stirk.stirp.stirs.stive.stivy.stoae.stoai.stoas.stoat.stobs.stoep.stogy.stoit.stoln.stoma.stond.stong.stonk.stonn.stook.stoor.stope.stops.stopt.stoss.stots.stott.stoun.stoup.stour.stown.stowp.stows.strad.strae.strag.strak.strep.strew.stria.strig.strim.strop.strow.stroy.strum.stubs.stude.studs.stull.stulm.stumm.stums.stuns.stupa.stupe.sture.sturt.styed.styes.styli.stylo.styme.stymy.styre.styte.subah.subas.subby.suber.subha.succi.sucks.sucky.sucre.sudds.sudor.sudsy.suede.suent.suers.suete.suets.suety.sugan.sughs.sugos.suhur.suids.suint.suits.sujee.sukhs.sukuk.sulci.sulfa.sulfo.sulks.sulph.sulus.sumis.summa.sumos.sumph.sumps.sunis.sunks.sunna.sunns.sunup.supes.supra.surah.sural.suras.surat.surds.sured.sures.surfs.surfy.surgy.surra.sused.suses.susus.sutor.sutra.sutta.swabs.swack.swads.swage.swags.swail.swain.swale.swaly.swamy.swang.swank.swans.swaps.swapt.sward.sware.swarf.swart.swats.swayl.sways.sweal.swede.sweed.sweel.sweer.swees.sweir.swelt.swerf.sweys.swies.swigs.swile.swims.swink.swipe.swire.swiss.swith.swits.swive.swizz.swobs.swole.swoln.swops.swopt.swots.swoun.sybbe.sybil.syboe.sybow.sycee.syces.sycon.syens.syker.sykes.sylis.sylph.sylva.symar.synch.syncs.synds.syned.synes.synth.syped.sypes.syphs.syrah.syren.sysop.sythe.syver.taals.taata.taber.tabes.tabid.tabis.tabla.tabor.tabun.tabus.tacan.taces.tacet.tache.tacho.tachs.tacks.tacos.tacts.taels.tafia.taggy.tagma.tahas.tahrs.taiga.taigs.taiko.tails.tains.taira.taish.taits.tajes.takas.takes.takhi.takin.takis.takky.talak.talaq.talar.talas.talcs.talcy.talea.taler.tales.talks.talky.talls.talma.talpa.taluk.talus.tamal.tamed.tames.tamin.tamis.tammy.tamps.tanas.tanga.tangi.tangs.tanhs.tanka.tanks.tanky.tanna.tansy.tanti.tanto.tanty.tapas.taped.tapen.tapes.tapet.tapis.tappa.tapus.taras.tardo.tared.tares.targa.targe.tarns.taroc.tarok.taros.tarps.tarre.tarry.tarsi.tarts.tarty.tasar.tased.taser.tases.tasks.tassa.tasse.tasso.tatar.tater.tates.taths.tatie.tatou.tatts.tatus.taube.tauld.tauon.taupe.tauts.tavah.tavas.taver.tawai.tawas.tawed.tawer.tawie.tawse.tawts.taxed.taxer.taxes.taxis.taxol.taxon.taxor.taxus.tayra.tazza.tazze.teade.teads.teaed.teaks.teals.teams.tears.teats.teaze.techs.techy.tecta.teels.teems.teend.teene.teens.teeny.teers.teffs.teggs.tegua.tegus.tehrs.teiid.teils.teind.teins.telae.telco.teles.telex.telia.telic.tells.telly.teloi.telos.temed.temes.tempi.temps.tempt.temse.tench.tends.tendu.tenes.tenge.tenia.tenne.tenno.tenny.tenon.tents.tenty.tenue.tepal.tepas.tepoy.terai.teras.terce.terek.teres.terfe.terfs.terga.terms.terne.terns.terry.terts.tesla.testa.teste.tests.tetes.teths.tetra.tetri.teuch.teugh.tewed.tewel.tewit.texas.texes.texts.thack.thagi.thaim.thale.thali.thana.thane.thang.thans.thanx.tharm.thars.thaws.thawy.thebe.theca.theed.theek.thees.thegn.theic.thein.thelf.thema.thens.theow.therm.thesp.thete.thews.thewy.thigs.thilk.thill.thine.thins.thiol.thirl.thoft.thole.tholi.thoro.thorp.thous.thowl.thrae.thraw.thrid.thrip.throe.thuds.thugs.thuja.thunk.thurl.thuya.thymi.thymy.tians.tiars.tical.ticca.ticed.tices.tichy.ticks.ticky.tiddy.tided.tides.tiers.tiffs.tifos.tifts.tiges.tigon.tikas.tikes.tikis.tikka.tilak.tiled.tiler.tiles.tills.tilly.tilth.tilts.timbo.timed.times.timon.timps.tinas.tinct.tinds.tinea.tined.tines.tinge.tings.tinks.tinny.tints.tinty.tipis.tippy.tired.tires.tirls.tiros.tirrs.titch.titer.titis.titre.titty.titup.tiyin.tiyns.tizes.tizzy.toads.toady.toaze.tocks.tocky.tocos.todde.toeas.toffs.toffy.tofts.tofus.togae.togas.toged.toges.togue.tohos.toile.toils.toing.toise.toits.tokay.toked.toker.tokes.tokos.tolan.tolar.tolas.toled.toles.tolls.tolly.tolts.tolus.tolyl.toman.tombs.tomes.tomia.tommy.tomos.tondi.tondo.toned.toner.tones.toney.tongs.tonka.tonks.tonne.tonus.tools.tooms.toons.toots.toped.topee.topek.toper.topes.tophe.tophi.tophs.topis.topoi.topos.toppy.toque.torah.toran.toras.torcs.tores.toric.torii.toros.torot.torrs.torse.torsi.torsk.torta.torte.torts.tosas.tosed.toses.toshy.tossy.toted.toter.totes.totty.touks.touns.tours.touse.tousy.touts.touze.touzy.towed.towie.towns.towny.towse.towsy.towts.towze.towzy.toyed.toyer.toyon.toyos.tozed.tozes.tozie.trabs.trads.tragi.traik.trams.trank.tranq.trans.trant.trape.traps.trapt.trass.trats.tratt.trave.trayf.trays.treck.treed.treen.trees.trefa.treif.treks.trema.trems.tress.trest.trets.trews.treyf.treys.triac.tride.trier.tries.triff.trigo.trigs.trike.trild.trill.trims.trine.trins.triol.trior.trios.trips.tripy.trist.troad.troak.troat.trock.trode.trods.trogs.trois.troke.tromp.trona.tronc.trone.tronk.trons.trooz.troth.trots.trows.troys.trued.trues.trugo.trugs.trull.tryer.tryke.tryma.tryps.tsade.tsadi.tsars.tsked.tsuba.tsubo.tuans.tuart.tuath.tubae.tubar.tubas.tubby.tubed.tubes.tucks.tufas.tuffe.tuffs.tufts.tufty.tugra.tuile.tuina.tuism.tuktu.tules.tulpa.tulsi.tumid.tummy.tumps.tumpy.tunas.tunds.tuned.tuner.tunes.tungs.tunny.tupek.tupik.tuple.tuque.turds.turfs.turfy.turks.turme.turms.turns.turnt.turps.turrs.tushy.tusks.tusky.tutee.tutti.tutty.tutus.tuxes.tuyer.twaes.twain.twals.twank.twats.tways.tweel.tween.tweep.tweer.twerk.twerp.twier.twigs.twill.twilt.twink.twins.twiny.twire.twirp.twite.twits.twoer.twyer.tyees.tyers.tyiyn.tykes.tyler.tymps.tynde.tyned.tynes.typal.typed.types.typey.typic.typos.typps.typto.tyran.tyred.tyres.tyros.tythe.tzars.udals.udons.ugali.ugged.uhlan.uhuru.ukase.ulama.ulans.ulema.ulmin.ulnad.ulnae.ulnar.ulnas.ulpan.ulvas.ulyie.ulzie.umami.umbel.umber.umble.umbos.umbre.umiac.umiak.umiaq.ummah.ummas.ummed.umped.umphs.umpie.umpty.umrah.umras.unais.unapt.unarm.unary.unaus.unbag.unban.unbar.unbed.unbid.unbox.uncap.unces.uncia.uncos.uncoy.uncus.undam.undee.undos.undug.uneth.unfix.ungag.unget.ungod.ungot.ungum.unhat.unhip.unica.units.unjam.unked.unket.unkid.unlaw.unlay.unled.unlet.unlid.unman.unmew.unmix.unpay.unpeg.unpen.unpin.unred.unrid.unrig.unrip.unsaw.unsay.unsee.unsew.unsex.unsod.untax.untin.unwet.unwit.unwon.upbow.upbye.updos.updry.upend.upjet.uplay.upled.uplit.upped.upran.uprun.upsee.upsey.uptak.upter.uptie.uraei.urali.uraos.urare.urari.urase.urate.urbex.urbia.urdee.ureal.ureas.uredo.ureic.urena.urent.urged.urger.urges.urial.urite.urman.urnal.urned.urped.ursae.ursid.urson.urubu.urvas.users.usnea.usque.usure.usury.uteri.uveal.uveas.uvula.vacua.vaded.vades.vagal.vagus.vails.vaire.vairs.vairy.vakas.vakil.vales.valis.valse.vamps.vampy.vanda.vaned.vanes.vangs.vants.vaped.vaper.vapes.varan.varas.vardy.varec.vares.varia.varix.varna.varus.varve.vasal.vases.vasts.vasty.vatic.vatus.vauch.vaute.vauts.vawte.vaxes.veale.veals.vealy.veena.veeps.veers.veery.vegas.veges.vegie.vegos.vehme.veils.veily.veins.veiny.velar.velds.veldt.veles.vells.velum.venae.venal.vends.vendu.veney.venge.venin.vents.venus.verbs.verra.verry.verst.verts.vertu.vespa.vesta.vests.vetch.vexed.vexer.vexes.vexil.vezir.vials.viand.vibes.vibex.vibey.viced.vices.vichy.viers.views.viewy.vifda.viffs.vigas.vigia.vilde.viler.villi.vills.vimen.vinal.vinas.vinca.vined.viner.vines.vinew.vinic.vinos.vints.viold.viols.vired.vireo.vires.virga.virge.virid.virls.virtu.visas.vised.vises.visie.visne.vison.visto.vitae.vitas.vitex.vitro.vitta.vivas.vivat.vivda.viver.vives.vizir.vizor.vleis.vlies.vlogs.voars.vocab.voces.voddy.vodou.vodun.voema.vogie.voids.voile.voips.volae.volar.voled.voles.volet.volks.volta.volte.volti.volts.volva.volve.vomer.voted.votes.vouge.voulu.vowed.vower.voxel.vozhd.vraic.vrils.vroom.vrous.vrouw.vrows.vuggs.vuggy.vughs.vughy.vulgo.vulns.vulva.vutty.waacs.wacke.wacko.wacks.wadds.waddy.waded.wader.wades.wadge.wadis.wadts.waffs.wafts.waged.wages.wagga.wagyu.wahoo.waide.waifs.waift.wails.wains.wairs.waite.waits.wakas.waked.waken.waker.wakes.wakfs.waldo.walds.waled.waler.wales.walie.walis.walks.walla.walls.wally.walty.wamed.wames.wamus.wands.waned.wanes.waney.wangs.wanks.wanky.wanle.wanly.wanna.wants.wanty.wanze.waqfs.warbs.warby.wards.wared.wares.warez.warks.warms.warns.warps.warre.warst.warts.wases.washy.wasms.wasps.waspy.wasts.watap.watts.wauff.waugh.wauks.waulk.wauls.waurs.waved.waves.wavey.wawas.wawes.wawls.waxed.waxer.waxes.wayed.wazir.wazoo.weald.weals.weamb.weans.wears.webby.weber.wecht.wedel.wedgy.weeds.weeke.weeks.weels.weems.weens.weeny.weeps.weepy.weest.weete.weets.wefte.wefts.weids.weils.weirs.weise.weize.wekas.welds.welke.welks.welkt.wells.welly.welts.wembs.wends.wenge.wenny.wents.weros.wersh.wests.wetas.wetly.wexed.wexes.whamo.whams.whang.whaps.whare.whata.whats.whaup.whaur.wheal.whear.wheen.wheep.wheft.whelk.whelm.whens.whets.whews.wheys.whids.whift.whigs.whilk.whims.whins.whios.whips.whipt.whirr.whirs.whish.whiss.whist.whits.whity.whizz.whomp.whoof.whoot.whops.whore.whorl.whort.whoso.whows.whump.whups.whyda.wicca.wicks.wicky.widdy.wides.wiels.wifed.wifes.wifey.wifie.wifty.wigan.wigga.wiggy.wikis.wilco.wilds.wiled.wiles.wilga.wilis.wilja.wills.wilts.wimps.winds.wined.wines.winey.winge.wings.wingy.winks.winna.winns.winos.winze.wiped.wiper.wipes.wired.wirer.wires.wirra.wised.wises.wisha.wisht.wisps.wists.witan.wited.wites.withe.withs.withy.wived.wiver.wives.wizen.wizes.woads.woald.wocks.wodge.woful.wojus.woker.wokka.wolds.wolfs.wolly.wolve.wombs.womby.womyn.wonga.wongi.wonks.wonky.wonts.woods.wooed.woofs.woofy.woold.wools.woons.woops.woopy.woose.woosh.wootz.words.works.worms.wormy.worts.wowed.wowee.woxen.wrang.wraps.wrapt.wrast.wrate.wrawl.wrens.wrick.wried.wrier.wries.writs.wroke.wroot.wroth.wryer.wuddy.wudus.wulls.wurst.wuses.wushu.wussy.wuxia.wyled.wyles.wynds.wynns.wyted.wytes.xebec.xenia.xenic.xenon.xeric.xerox.xerus.xoana.xrays.xylan.xylem.xylic.xylol.xylyl.xysti.xysts.yaars.yabas.yabba.yabby.yacca.yacka.yacks.yaffs.yager.yages.yagis.yahoo.yaird.yakka.yakow.yales.yamen.yampy.yamun.yangs.yanks.yapok.yapon.yapps.yappy.yarak.yarco.yards.yarer.yarfa.yarks.yarns.yarrs.yarta.yarto.yates.yauds.yauld.yaups.yawed.yawey.yawls.yawns.yawny.yawps.ybore.yclad.ycled.ycond.ydrad.ydred.yeads.yeahs.yealm.yeans.yeard.years.yecch.yechs.yechy.yedes.yeeds.yeesh.yeggs.yelks.yells.yelms.yelps.yelts.yenta.yente.yerba.yerds.yerks.yeses.yesks.yests.yesty.yetis.yetts.yeuks.yeuky.yeven.yeves.yewen.yexed.yexes.yfere.yiked.yikes.yills.yince.yipes.yippy.yirds.yirks.yirrs.yirth.yites.yitie.ylems.ylike.ylkes.ymolt.ympes.yobbo.yobby.yocks.yodel.yodhs.yodle.yogas.yogee.yoghs.yogic.yogin.yogis.yoick.yojan.yoked.yokel.yoker.yokes.yokul.yolks.yolky.yomim.yomps.yonic.yonis.yonks.yoofs.yoops.yores.yorks.yorps.youks.yourn.yours.yourt.youse.yowed.yowes.yowie.yowls.yowza.yrapt.yrent.yrivd.yrneh.ysame.ytost.yuans.yucas.yucca.yucch.yucko.yucks.yucky.yufts.yugas.yuked.yukes.yukky.yukos.yulan.yules.yummo.yummy.yumps.yupon.yuppy.yurta.yurts.yuzus.zabra.zacks.zaida.zaidy.zaire.zakat.zaman.zambo.zamia.zanja.zante.zanza.zanze.zappy.zarfs.zaris.zatis.zaxes.zayin.zazen.zeals.zebec.zebub.zebus.zedas.zeins.zendo.zerda.zerks.zeros.zests.zetas.zexes.zezes.zhomo.zibet.ziffs.zigan.zilas.zilch.zilla.zills.zimbi.zimbs.zinco.zincs.zincy.zineb.zines.zings.zingy.zinke.zinky.zippo.zippy.ziram.zitis.zizel.zizit.zlote.zloty.zoaea.zobos.zobus.zocco.zoeae.zoeal.zoeas.zoism.zoist.zombi.zonae.zonda.zoned.zoner.zones.zonks.zooea.zooey.zooid.zooks.zooms.zoons.zooty.zoppa.zoppo.zoril.zoris.zorro.zouks.zowee.zowie.zulus.zupan.zupas.zuppa.zurfs.zuzim.zygal.zygon.zymes.zymic`.split(`.`),$=5,Rn=6,zn=Object.freeze(new Set([...Ln,...In]));function Bn(){return In[Math.floor(Math.random()*In.length)]}function Vn(e){return zn.has(e)}function Hn(e,t){let n=Array.from({length:$},(t,n)=>({letter:e[n],status:`absent`})),r={};for(let e=0;e<$;e++)r[t[e]]=(r[t[e]]??0)+1;for(let i=0;i<$;i++)e[i]===t[i]&&(n[i].status=`correct`,r[e[i]]--);for(let t=0;t<$;t++){if(n[t].status===`correct`)continue;let i=e[t];(r[i]??0)>0&&(n[t].status=`present`,r[i]--)}return n}var Un=[[`Q`,`W`,`E`,`R`,`T`,`Y`,`U`,`I`,`O`,`P`],[`A`,`S`,`D`,`F`,`G`,`H`,`J`,`K`,`L`],[`Enter`,`Z`,`X`,`C`,`V`,`B`,`N`,`M`,`⌫`]];function Wn(e,t){switch(t.type){case`addLetter`:return e.gameStatus!==`playing`||e.currentGuess.length>=$?e:{...e,currentGuess:e.currentGuess+t.letter.toLowerCase(),errorMessage:``};case`removeLetter`:return e.currentGuess.length===0?e:{...e,currentGuess:e.currentGuess.slice(0,-1),errorMessage:``};case`submit`:{if(e.gameStatus!==`playing`)return e;let t=e.currentGuess;if(t.length!==$)return{...e,errorMessage:`Not enough letters`};if(!Vn(t))return{...e,errorMessage:`Not in word list`};let n=Hn(t,e.answer),r=[...e.board,n],i={...e.letterStatuses};for(let{letter:e,status:t}of n){let n=i[e];n!==`correct`&&(t===`correct`||n!==`present`)&&(i[e]=t)}let a=e.gameStatus;return t===e.answer?a=`won`:r.length>=Rn&&(a=`lost`),{...e,board:r,letterStatuses:i,gameStatus:a,currentGuess:``,errorMessage:``}}case`reset`:return{answer:t.answer,board:[],currentGuess:``,gameStatus:`playing`,letterStatuses:{},errorMessage:``};default:return e}}var Gn=e=>{let t=(0,c.ref)({answer:e?.initialWord??Bn(),board:[],currentGuess:``,gameStatus:`playing`,letterStatuses:{},errorMessage:``}),n=e=>{t.value=Wn(t.value,e)},r=e=>n({type:`addLetter`,letter:e}),i=()=>n({type:`removeLetter`}),a=()=>n({type:`submit`}),o=()=>n({type:`reset`,answer:Bn()}),s=(0,c.defineComponent)({name:`Wordle`,setup(){let e=e=>{let{key:t,ctrlKey:n,altKey:o,metaKey:s}=e;n||o||s||(t===`Enter`?a():t===`Backspace`?i():/^[a-zA-Z]$/.test(t)&&r(t))};return(0,c.onMounted)(()=>document.addEventListener(`keydown`,e)),(0,c.onBeforeUnmount)(()=>document.removeEventListener(`keydown`,e)),()=>{let{answer:e,board:n,currentGuess:s,gameStatus:l,letterStatuses:u,errorMessage:f}=t.value,p=Array.from({length:Rn},(e,t)=>{let r=n[t],i=t===n.length&&l===`playing`,a=Array.from({length:$},(e,t)=>{let n=``,a=`empty`;return r?(n=r[t].letter.toUpperCase(),a=r[t].status):i&&(n=(s[t]??``).toUpperCase(),a=n?`tbd`:`empty`),(0,c.createVNode)(`div`,{key:t,class:(0,d.clsx)(Q.cell,a===`correct`&&Q.correct,a===`present`&&Q.present,a===`absent`&&Q.absent,a===`tbd`&&Q.tbd,a===`empty`&&Q.empty)},[n])});return(0,c.createVNode)(`div`,{key:t,class:Q.row},[a])});return(0,c.createVNode)(`div`,{class:Q[`elm-wordle`]},[(0,c.createVNode)(`div`,{class:(0,d.clsx)(Q[`message-area`],f?Q.error:l===`playing`?void 0:Q.status),"aria-live":`polite`},[f||(l===`won`?`🎉 You won in ${n.length} ${n.length===1?`guess`:`guesses`}!`:l===`lost`?`😢 The word was "${e.toUpperCase()}"`:null)]),(0,c.createVNode)(`div`,{class:Q.board},[p]),(0,c.createVNode)(`div`,{class:Q.keyboard,onClick:e=>{let t=e.target.closest(`button[data-key]`)?.dataset.key;t&&(t===`Enter`?a():t===`⌫`?i():r(t))}},[Un.map((e,t)=>(0,c.createVNode)(`div`,{key:t,class:Q[`keyboard-row`]},[e.map(e=>{let t=u[e.toLowerCase()];return(0,c.createVNode)(`button`,{key:e,"data-key":e,class:(0,d.clsx)(Q.key,e===`Enter`&&Q.wide,e===`⌫`&&Q.wide,t===`correct`&&Q.correct,t===`present`&&Q.present,t===`absent`&&Q.absent)},[e])})]))]),(0,c.createVNode)(`div`,{class:(0,d.clsx)(Q[`reset-container`],l===`playing`&&Q.hidden)},[(0,c.createVNode)(`button`,{class:Q[`reset-button`],onClick:o},[(0,c.createTextVNode)(`Play Again`)])])])}}});return{answer:(0,c.computed)(()=>t.value.answer),board:(0,c.computed)(()=>t.value.board),currentGuess:(0,c.computed)(()=>t.value.currentGuess),gameStatus:(0,c.computed)(()=>t.value.gameStatus),letterStatuses:(0,c.computed)(()=>t.value.letterStatuses),errorMessage:(0,c.computed)(()=>t.value.errorMessage),submit:a,addLetter:r,removeLetter:i,reset:o,Wordle:s}};exports.A2uiSurface=Le,exports.CatalogRenderer=Se,exports.ElmA2ui=Re,exports.ElmAudioPlayer=$e,exports.ElmBlockFallback=Jt,exports.ElmBlockImage=at,exports.ElmBlockQuote=ft,exports.ElmBookmark=ut,exports.ElmBreadcrumb=yn,exports.ElmButton=Yt,exports.ElmButtonDropdown=Zt,exports.ElmCallout=ht,exports.ElmCheckbox=Qt,exports.ElmCodeBlock=Xe,exports.ElmCollapse=b,exports.ElmColorPrimitiveSample=wn,exports.ElmColorSemanticSample=Mn,exports.ElmCopyIcon=sn,exports.ElmDivider=_t,exports.ElmDotLoadingIcon=qt,exports.ElmFile=ct,exports.ElmFragmentIdentifier=de,exports.ElmHeading=pe,exports.ElmHtml=zt,exports.ElmHtmlViewer=Bt,exports.ElmInlineIcon=S,exports.ElmInlineText=C,exports.ElmKatex=Be,exports.ElmLanguageIcon=Ge,exports.ElmList=yt,exports.ElmMarkdown=Fn,exports.ElmMdiIcon=k,exports.ElmModal=rt,exports.ElmPageTop=bn,exports.ElmParagraph=_e,exports.ElmParallax=Ht,exports.ElmRectangleWave=tt,exports.ElmSelect=en,exports.ElmShikiHighlighter=qe,exports.ElmSquareLoadingIcon=ln,exports.ElmSwitch=tn,exports.ElmTab=se,exports.ElmTabList=oe,exports.ElmTabPanel=ce,exports.ElmTable=St,exports.ElmTableBody=Ct,exports.ElmTableCell=Tt,exports.ElmTableHeader=Dt,exports.ElmTableRow=kt,exports.ElmTabs=ae,exports.ElmTextArea=nn,exports.ElmTextField=rn,exports.ElmToggle=dt,exports.ElmToggleTheme=_n,exports.ElmTooltip=Wt,exports.ElmUnsupportedBlock=jt,exports.ElmValidation=on,exports.HasRowHeaderContext=bt,exports.LANGUAGES=h.LANGUAGES,exports.THEME_CHANGE_EVENT=un,exports.TableSectionContext=xt,exports.basicCatalog=Oe,exports.blockCatalog=Pt,exports.defineRenderer=T,exports.useClipboard=Ye,exports.useElmethisTheme=hn,exports.useModal=it,exports.useWordle=Gn;
13
+ </html>`;t=URL.createObjectURL(new Blob([n],{type:`text/html`}));let r=()=>URL.revokeObjectURL(t),i=window.open(t,`_blank`,`noreferrer`);i?i.addEventListener(`load`,r,{once:!0}):r()}catch(e){console.error(`Failed to open HTML in a new tab`,e),t&&URL.revokeObjectURL(t)}},n=()=>{let t,n;try{t=URL.createObjectURL(new Blob([e.html],{type:`text/html`})),n=document.createElement(`a`),n.href=t,n.download=e.filename||`download.html`,document.body.appendChild(n),n.click()}catch(e){console.error(`Failed to download HTML`,e)}finally{n?.remove(),t&&URL.revokeObjectURL(t)}};return()=>(0,c.createVNode)(`figure`,{class:(0,d.clsx)(I[`elm-html-viewer`])},[(0,c.createVNode)(`div`,{class:I.header},[(0,c.createVNode)(`button`,{type:`button`,class:I[`icon-button`],onClick:n,"aria-label":`Download`},[(0,c.createVNode)(O,{d:m.mdiDownload,size:`1.25rem`},null)]),(0,c.createVNode)(`button`,{type:`button`,class:I[`icon-button`],onClick:t,"aria-label":`Open in new tab`},[(0,c.createVNode)(O,{d:m.mdiOpenInNew,size:`1.25rem`},null)])]),(0,c.createVNode)(`hr`,{class:I.divider},null),(0,c.createVNode)(`div`,{class:I.content},[(0,c.createVNode)(Vt,{html:e.html,sandbox:e.sandbox,autoHeight:e.autoHeight},null)])])}}),Ut={"parallax-watcher":`_parallax-watcher_z693a_1`,parallax:`_parallax_z693a_1`},Wt=(0,c.defineComponent)({name:`ElmParallax`,props:{images:{type:Array,required:!0}},setup(e){let t=(0,c.ref)(0),n=()=>{t.value=window.scrollY};return(0,c.onMounted)(()=>window.addEventListener(`scroll`,n)),(0,c.onBeforeUnmount)(()=>window.removeEventListener(`scroll`,n)),()=>(0,c.createVNode)(`div`,null,[(0,c.createVNode)(`div`,{class:Ut[`parallax-watcher`]},null),e.images.map((e,n)=>(0,c.createVNode)(`div`,{key:n,class:Ut.parallax,style:{backgroundImage:`url(${e})`,transform:`scale(1.2) translateY(${t.value/(1e3*(n+1))}%)`,transformOrigin:`bottom`}},null))])}}),Gt={"elm-tooltip":`_elm-tooltip_1b13f_1`,tooltip:`_tooltip_1b13f_5`,show:`_show_1b13f_18`},Kt=(0,c.defineComponent)({name:`ElmTooltip`,setup(e,{slots:t}){let n=(0,c.ref)(null),r=(0,c.ref)(!1),i=!1,a,o=(0,c.ref)({}),s=()=>{let e=n.value;if(!e)return;i&&(window.clearTimeout(a),i=!1);let t=e.getBoundingClientRect(),s=window.innerWidth;t.x>s/2?o.value={top:`${t.bottom}px`,right:`${s-t.x-t.width}px`}:o.value={top:`${t.bottom}px`,left:`${t.x}px`},r.value=!0},l=()=>{i||(i=!0,a=setTimeout(()=>{i=!1,r.value=!1},250))};return()=>(0,c.createVNode)(`span`,{ref:n,class:(0,d.clsx)(Gt[`elm-tooltip`]),onMouseover:s,onMouseleave:l},[t.original?.(),(0,c.createVNode)(`div`,{class:(0,d.clsx)(Gt.tooltip,r.value&&Gt.show),style:o.value},[t.tooltip?.()])])}}),qt={"elm-block-fallback":`_elm-block-fallback_1sx02_1`},Jt={"elm-dot-loading-icon":`_elm-dot-loading-icon_qjgj2_15`,dot:`_dot_qjgj2_25`,bounce:`_bounce_qjgj2_1`},Yt=(0,c.defineComponent)({name:`ElmDotLoadingIcon`,inheritAttrs:!1,props:{size:{type:String,default:`4em`}},setup(e,{attrs:t}){return()=>{let{class:n,style:r,...i}=t;return(0,c.createVNode)(`span`,(0,c.mergeProps)({class:(0,d.clsx)(Jt[`elm-dot-loading-icon`],n),style:[{"--elmethis-scoped-size":e.size},r]},i),[(0,c.createVNode)(`span`,{class:Jt.dot,"aria-hidden":`true`},null),(0,c.createVNode)(`span`,{class:Jt.dot,"aria-hidden":`true`},null),(0,c.createVNode)(`span`,{class:Jt.dot,"aria-hidden":`true`},null)])}}}),Xt=(0,c.defineComponent)({name:`ElmBlockFallback`,props:{height:{type:String,default:`16rem`}},setup(e){return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(qt[`elm-block-fallback`]),style:{"--elmethis-scoped-height":e.height}},[(0,c.createVNode)(Yt,null,null),(0,c.createVNode)(nt,null,null)])}}),L={"elm-button":`_elm-button_9qh0y_1`,normal:`_normal_9qh0y_22`,primary:`_primary_9qh0y_29`,colored:`_colored_9qh0y_36`,enable:`_enable_9qh0y_40`,flex:`_flex_9qh0y_59`,ripple:`_ripple_9qh0y_83`,"button-ripple":`_button-ripple_9qh0y_1`},Zt=(0,c.defineComponent)({name:`ElmButton`,inheritAttrs:!1,props:{isLoading:{type:Boolean,default:!1},block:{type:Boolean,default:!1},color:{type:String,default:void 0},primary:{type:Boolean,default:!1},disabled:{type:Boolean,default:void 0}},setup(e,{attrs:t,slots:n}){let r=(0,c.ref)(!1),i;return(0,c.onUnmounted)(()=>clearTimeout(i)),()=>{let{class:a,style:o,onClick:s,...l}=t;return(0,c.createVNode)(`button`,(0,c.mergeProps)({onClick:t=>{!e.isLoading&&!e.disabled&&typeof s==`function`&&(r.value=!0,clearTimeout(i),i=setTimeout(()=>r.value=!1,300),s(t))},disabled:e.disabled,class:(0,d.clsx)(L[`elm-button`],!e.isLoading&&!e.disabled&&L.enable,e.color&&L.colored,!e.color&&!e.primary&&L.normal,!e.color&&e.primary&&L.primary,a),style:[{display:e.block?`flex`:`inline-flex`,width:e.block?`100%`:`auto`,cursor:e.disabled?`not-allowed`:e.isLoading?`progress`:`pointer`,"--elmethis-scoped-opacity":e.disabled||e.isLoading?.6:void 0,"--elmethis-scoped-color":e.color},o]},l),[r.value&&(0,c.createVNode)(`span`,{class:L.ripple},null),e.isLoading?(0,c.createVNode)(Yt,{size:`1.5rem`},null):(0,c.createVNode)(`span`,{class:L.flex},[n.default?.()])])}}}),R={"elm-button-dropdown":`_elm-button-dropdown_hhp3p_1`,block:`_block_hhp3p_7`,main:`_main_hhp3p_11`,caret:`_caret_hhp3p_24`,segment:`_segment_hhp3p_34`,menu:`_menu_hhp3p_39`,item:`_item_hhp3p_51`,selected:`_selected_hhp3p_71`,"item-disabled":`_item-disabled_hhp3p_79`};function Qt(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!(0,c.isVNode)(e)}var $t=(0,c.defineComponent)({name:`ElmButtonDropdown`,props:{label:{type:String,default:void 0},items:{type:Array,required:!0},selectedOptionId:{type:String,default:void 0},defaultSelectedOptionId:{type:String,default:null},primary:{type:Boolean,default:!0},color:{type:String,default:void 0},block:{type:Boolean,default:!1},disabled:{type:Boolean,default:void 0},disableMainButton:{type:Boolean,default:!1},disableDropdown:{type:Boolean,default:!1},isLoading:{type:Boolean,default:!1},autoClose:{type:Boolean,default:!0},dropdownIcon:{type:String,default:m.mdiMenuDown}},emits:[`update:selectedOptionId`,`click`,`itemClick`,`openChange`],setup(e,{emit:t,slots:n}){let r=(0,f.useVModel)(e,`selectedOptionId`,t,{passive:!0,defaultValue:e.defaultSelectedOptionId??null}),i=(0,c.ref)(!1),a=(0,c.ref)(null),o=e=>{i.value!==e&&(i.value=e,t(`openChange`,e))},s=e=>{!i.value||!a.value||a.value.contains(e.target)||o(!1)};return(0,c.onMounted)(()=>document.addEventListener(`click`,s)),(0,c.onBeforeUnmount)(()=>document.removeEventListener(`click`,s)),()=>{let s,l=e.items.find(e=>e.id===r.value)??null,u=e.disabled||e.disableDropdown||e.isLoading,f=e.disabled||e.disableMainButton,p={class:(0,d.clsx)(R.main,R.segment),primary:e.primary,color:e.color,isLoading:e.isLoading,disabled:f,onClick:()=>t(`click`,l)},h={class:(0,d.clsx)(R.caret,R.segment),primary:e.primary,color:e.color,disabled:u,"aria-label":`Toggle dropdown`,"aria-expanded":i.value,onClick:()=>o(!i.value)};return(0,c.createVNode)(`div`,{ref:a,class:(0,d.clsx)(R[`elm-button-dropdown`],e.block&&R.block)},[(0,c.createVNode)(Zt,p,{default:()=>[l?(0,c.createVNode)(c.Fragment,null,[l.icon&&(0,c.createVNode)(C,{src:l.icon},null),l.label]):(0,c.createVNode)(c.Fragment,null,[n.icon?.(),e.label])]}),(0,c.createVNode)(Zt,h,{default:()=>[(0,c.createVNode)(O,{d:e.dropdownIcon,size:`1.25rem`},null)]}),(0,c.createVNode)(x,{isOpen:i.value,class:R.menu},Qt(s=e.items.map(n=>(0,c.createVNode)(`div`,{key:n.id,class:(0,d.clsx)(R.item,S.text,n.id===r.value&&R.selected,n.disabled&&R[`item-disabled`]),"aria-selected":n.id===r.value,onClick:i=>{i.stopPropagation(),!n.disabled&&(r.value=n.id,n.onClick?.(),t(`itemClick`,n),e.autoClose&&o(!1))}},[(0,c.createVNode)(O,{d:m.mdiChevronRight,color:`var(--elmethis-color-primary-weak)`,size:`0.75em`},null),n.icon&&(0,c.createVNode)(C,{src:n.icon},null),(0,c.createVNode)(w,null,{default:()=>[n.label]})])))?s:{default:()=>[s]})])}}}),z={"elm-checkbox":`_elm-checkbox_18dfs_1`,disabled:`_disabled_18dfs_12`,checkbox:`_checkbox_18dfs_22`,rect:`_rect_18dfs_27`,loading:`_loading_18dfs_30`,checked:`_checked_18dfs_34`,"loading-dot":`_loading-dot_18dfs_39`,"check-line":`_check-line_18dfs_54`,"elmethis-checkbox-check-line":`_elmethis-checkbox-check-line_18dfs_1`},en=(0,c.defineComponent)({name:`ElmCheckbox`,inheritAttrs:!1,props:{label:{type:String,required:!0},isLoading:{type:Boolean,default:!1},disabled:{type:Boolean,default:!1},checked:{type:Boolean,default:void 0},defaultChecked:{type:Boolean,default:!1}},emits:[`update:checked`],setup(e,{attrs:t,emit:n}){let r=te({props:e,key:`checked`,emit:n,defaultValue:e.defaultChecked??!1});return()=>{let{class:n,...i}=t;return(0,c.createVNode)(`div`,(0,c.mergeProps)({class:(0,d.clsx)(z[`elm-checkbox`],e.disabled&&z.disabled,n),onClick:()=>{!e.isLoading&&!e.disabled&&(r.value=!r.value)}},i),[(0,c.createVNode)(`div`,{style:{display:`flex`,alignItems:`center`,gap:`0.5rem`}},[(0,c.createVNode)(`svg`,{width:`24`,height:`24`,class:z.checkbox},[(0,c.createVNode)(`circle`,{cx:`0`,cy:`0`,r:`2`,class:z[`loading-dot`],style:{opacity:+!!e.isLoading}},[(0,c.createVNode)(`animate`,{attributeName:`cx`,values:`4; 20; 20; 4; 4`,dur:`1.2s`,repeatCount:`indefinite`,keySplines:`0.25 0.1 0.25 1; 0.42 0 0.58 1; 0.25 0.1 0.25 1; 0.42 0 0.58 1`,calcMode:`spline`},null),(0,c.createVNode)(`animate`,{attributeName:`cy`,values:`4; 4; 20; 20; 4`,dur:`1.2s`,repeatCount:`indefinite`,keySplines:`0.25 0.1 0.25 1; 0.42 0 0.58 1; 0.25 0.1 0.25 1; 0.42 0 0.58 1`,calcMode:`spline`},null)]),(0,c.createVNode)(`circle`,{cx:`20`,cy:`20`,r:`2`,class:z[`loading-dot`],style:{opacity:+!!e.isLoading}},[(0,c.createVNode)(`animate`,{attributeName:`cx`,values:`20; 4; 4; 20; 20`,dur:`1.2s`,repeatCount:`indefinite`,keySplines:`0.25 0.1 0.25 1; 0.42 0 0.58 1; 0.25 0.1 0.25 1; 0.42 0 0.58 1`,calcMode:`spline`},null),(0,c.createVNode)(`animate`,{attributeName:`cy`,values:`20; 20; 4; 4; 20`,dur:`1.2s`,repeatCount:`indefinite`,keySplines:`0.25 0.1 0.25 1; 0.42 0 0.58 1; 0.25 0.1 0.25 1; 0.42 0 0.58 1`,calcMode:`spline`},null)]),(0,c.createVNode)(`rect`,{x:`4`,y:`4`,width:`16`,height:`16`,class:(0,d.clsx)(z.rect,r.value&&z.checked,e.isLoading&&z.loading),"stroke-width":`0.8`},null),r.value&&(0,c.createVNode)(`polyline`,{class:z[`check-line`],points:`5,12 10,17 19,8`,"stroke-width":`1.5`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`0`,y1:`1`,x2:`4`,y2:`1`,"stroke-width":`2`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`4`,y1:`0`,x2:`24`,y2:`0`,"stroke-width":`1`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`0`,y1:`4`,x2:`0`,y2:`16`,"stroke-width":`1`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`0`,y1:`18`,x2:`0`,y2:`20`,"stroke-width":`1`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`0`,y1:`24`,x2:`20`,y2:`24`,"stroke-width":`1`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`20`,y1:`23`,x2:`24`,y2:`23`,"stroke-width":`1.5`,fill:`transparent`},null),(0,c.createVNode)(`line`,{x1:`24`,y1:`4`,x2:`24`,y2:`20`,style:{strokeWidth:`1px`},fill:`transparent`},null)]),(0,c.createVNode)(w,null,{default:()=>[e.label]})])])}}}),B={"elm-select":`_elm-select_1u7w1_1`,disabled:`_disabled_1u7w1_23`,active:`_active_1u7w1_27`,label:`_label_1u7w1_31`,"label-active":`_label-active_1u7w1_44`,body:`_body_1u7w1_49`,"selected-option":`_selected-option_1u7w1_56`,"option-content":`_option-content_1u7w1_59`,fallback:`_fallback_1u7w1_66`,pulldown:`_pulldown_1u7w1_74`,option:`_option_1u7w1_59`};function tn(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!(0,c.isVNode)(e)}var nn=(0,c.defineComponent)({name:`ElmSelect`,props:{label:{type:String,required:!0},placeholder:{type:String,default:void 0},disabled:{type:Boolean,default:void 0},isLoading:{type:Boolean,default:!1},options:{type:Array,required:!0},selectedOptionId:{type:String,default:void 0},defaultSelectedOptionId:{type:String,default:null}},emits:[`update:selectedOptionId`],setup(e,{emit:t,slots:n}){let r=(0,f.useVModel)(e,`selectedOptionId`,t,{passive:!0,defaultValue:e.defaultSelectedOptionId??null}),i=(0,c.ref)(!1),a=(0,c.ref)(null),o=e=>{!i.value||!a.value||a.value.contains(e.target)||(i.value=!1)};(0,c.onMounted)(()=>document.addEventListener(`click`,o)),(0,c.onBeforeUnmount)(()=>document.removeEventListener(`click`,o));let s=()=>{!e.disabled&&!e.isLoading&&(i.value=!i.value)};return()=>{let t,o=e.options.find(e=>e.id===r.value)??null;return(0,c.createVNode)(`div`,{ref:a,class:(0,d.clsx)(B[`elm-select`],i.value&&B.active,(e.disabled||e.isLoading)&&B.disabled),onClick:s},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(B.label,i.value&&B[`label-active`])},[n.icon?.()??(0,c.createVNode)(O,{d:m.mdiArrowDownDropCircleOutline,size:`0.75rem`},null),e.label]),(0,c.createVNode)(`div`,{class:B.body},[(0,c.createVNode)(`div`,{class:(0,d.clsx)(B[`selected-option`],S.text)},[o?(0,c.createVNode)(`div`,{class:B[`option-content`]},[o.icon&&(0,c.createVNode)(C,{src:o.icon},null),(0,c.createVNode)(w,null,{default:()=>[o.label]})]):(0,c.createVNode)(`div`,{class:B.fallback},[(0,c.createVNode)(`span`,null,[e.placeholder??`Select an option`])])]),(0,c.createVNode)(O,{d:m.mdiMenuDown,size:`1.5rem`},null),(0,c.createVNode)(x,{isOpen:i.value,class:B.pulldown},tn(t=e.options.map(e=>(0,c.createVNode)(`div`,{key:e.id,class:(0,d.clsx)(B.option,S.text),onClick:t=>{t.stopPropagation(),r.value=e.id,i.value=!1}},[(0,c.createVNode)(O,{d:m.mdiChevronRight,color:`var(--elmethis-color-primary-weak)`,size:`0.75em`},null),e.icon&&(0,c.createVNode)(C,{src:e.icon},null),(0,c.createVNode)(w,null,{default:()=>[e.label]})])))?t:{default:()=>[t]})])])}}}),V={"elm-slider":`_elm-slider_1cmd9_1`,vertical:`_vertical_1cmd9_7`,disabled:`_disabled_1cmd9_12`,track:`_track_1cmd9_20`,rail:`_rail_1cmd9_47`,"restricted-start":`_restricted-start_1cmd9_62`,"restricted-end":`_restricted-end_1cmd9_63`,fill:`_fill_1cmd9_100`,thumb:`_thumb_1cmd9_129`,"has-markers":`_has-markers_1cmd9_170`,"has-marker-labels":`_has-marker-labels_1cmd9_174`,marks:`_marks_1cmd9_163`,mark:`_mark_1cmd9_163`,"mark-start":`_mark-start_1cmd9_258`,"mark-end":`_mark-end_1cmd9_262`,tick:`_tick_1cmd9_274`,"mark-restricted":`_mark-restricted_1cmd9_287`,"mark-label":`_mark-label_1cmd9_207`},H=(e,t,n)=>Math.min(n,Math.max(t,e)),U=e=>Math.round(e*1e9)/1e9,rn=500,an=e=>e==null||typeof e==`boolean`?``:typeof e==`string`?e:typeof e==`number`?String(e):Array.isArray(e)?e.map(an).join(``):(0,c.isVNode)(e)?an(e.children):``,on=(0,c.defineComponent)({name:`ElmSlider`,inheritAttrs:!1,props:{min:{type:Number,default:0},max:{type:Number,default:100},step:{type:Number,default:1},innerMin:{type:Number,default:void 0},innerMax:{type:Number,default:void 0},orientation:{type:String,default:`horizontal`},value:{type:Number,default:void 0},defaultValue:{type:Number,default:void 0},disabled:{type:Boolean,default:void 0},markers:{type:Boolean,default:void 0},markerLabels:{type:Boolean,default:void 0},formatMarkerLabel:{type:Function,default:void 0}},emits:[`update:value`],setup(e,{attrs:t,emit:n}){let r=(0,c.ref)(null),i=(0,c.computed)(()=>e.orientation===`vertical`),a=(0,c.computed)(()=>Math.min(e.min,e.max)),o=(0,c.computed)(()=>Math.max(e.min,e.max)),s=(0,c.computed)(()=>H(e.innerMin??a.value,a.value,o.value)),l=(0,c.computed)(()=>H(e.innerMax??o.value,s.value,o.value)),u=t=>{let n=Math.abs(e.step);return H(U(n>0?e.min+Math.round((t-e.min)/n)*n:t),s.value,l.value)},f=e=>H(U(e),s.value,l.value),p=te({props:e,key:`value`,emit:n,defaultValue:f(e.defaultValue??(s.value+l.value)/2)}),m=t=>e.max===e.min?0:H((t-e.min)/(e.max-e.min),0,1),h=(t,n)=>{let a=r.value;if(!a)return p.value;let o=a.getBoundingClientRect(),s=i.value?o.height===0?0:H((o.bottom-n)/o.height,0,1):o.width===0?0:H((t-o.left)/o.width,0,1);return u(e.min+s*(e.max-e.min))},g=t=>{e.disabled||(t.currentTarget.setPointerCapture(t.pointerId),p.value=h(t.clientX,t.clientY))},_=t=>{e.disabled||t.currentTarget.hasPointerCapture(t.pointerId)&&(p.value=h(t.clientX,t.clientY))},v=(0,c.computed)(()=>H(p.value,s.value,l.value)),ee=t=>{if(e.disabled)return;let n=Math.abs(e.step);switch(t.key){case`ArrowRight`:case`ArrowUp`:t.preventDefault(),p.value=f(v.value+n);break;case`ArrowLeft`:case`ArrowDown`:t.preventDefault(),p.value=f(v.value-n);break;case`PageUp`:t.preventDefault(),p.value=f(v.value+n*10);break;case`PageDown`:t.preventDefault(),p.value=f(v.value-n*10);break;case`Home`:t.preventDefault(),p.value=s.value;break;case`End`:t.preventDefault(),p.value=l.value;break}},y=(0,c.computed)(()=>{if(!e.markers&&!e.markerLabels)return[];let t=Math.abs(e.step);if(t<=0||e.max<=e.min)return[];let n=Math.floor(U((e.max-e.min)/t)),r=[];if(n<=rn){for(let i=0;i<=n;i++){let n=U(e.min+i*t);r.push({value:n,ratio:m(n)})}U(e.min+n*t)!==U(e.max)&&r.push({value:e.max,ratio:m(e.max)})}else{let t=(e.max-e.min)/rn;for(let n=0;n<=rn;n++){let i=n===rn?e.max:U(e.min+n*t);r.push({value:i,ratio:m(i)})}}return r}),b=(0,c.computed)(()=>{if(!e.markerLabels)return 0;let t=0;for(let n of y.value){let r=an(e.formatMarkerLabel?.(n.value)??n.value);r.length>t&&(t=r.length)}return t});return()=>{let{class:n,style:a,onKeydown:o,...u}=t,f=m(v.value),p=m(s.value),h=m(l.value);return(0,c.createVNode)(`div`,{class:(0,d.clsx)(V[`elm-slider`],i.value&&V.vertical,e.disabled&&V.disabled,e.markers&&V[`has-markers`],e.markerLabels&&V[`has-marker-labels`],n),style:{"--elmethis-scoped-value-ratio":f,"--elmethis-scoped-inner-min-ratio":p,"--elmethis-scoped-inner-max-ratio":h,"--elmethis-scoped-max-marker-label-chars":b.value,...a}},[(0,c.createVNode)(`div`,(0,c.mergeProps)({ref:r,class:V.track,tabindex:e.disabled?-1:0,onPointerdown:g,onPointermove:_,onKeydown:t=>{ee(t),!e.disabled&&o?.(t)}},u,{role:`slider`,"aria-orientation":e.orientation,"aria-valuemin":s.value,"aria-valuemax":l.value,"aria-valuenow":v.value,"aria-disabled":e.disabled||void 0}),[(0,c.createVNode)(`div`,{class:V.rail,"aria-hidden":`true`},[(0,c.createVNode)(`div`,{class:V[`restricted-start`]},null),(0,c.createVNode)(`div`,{class:V.fill},null),(0,c.createVNode)(`div`,{class:V[`restricted-end`]},null)]),y.value.length>0&&(0,c.createVNode)(`div`,{class:V.marks,"aria-hidden":`true`},[y.value.map((t,n)=>(0,c.createVNode)(`span`,{key:t.value,class:(0,d.clsx)(V.mark,n===0&&V[`mark-start`],n===y.value.length-1&&V[`mark-end`],(t.value<s.value||t.value>l.value)&&V[`mark-restricted`]),style:{"--elmethis-scoped-marker-ratio":t.ratio}},[e.markers&&(0,c.createVNode)(`i`,{class:V.tick},null),e.markerLabels&&(0,c.createVNode)(`span`,{class:V[`mark-label`]},[e.formatMarkerLabel?.(t.value)??t.value])]))]),(0,c.createVNode)(`span`,{class:V.thumb,"aria-hidden":`true`},null)])])}}}),W={switch:`_switch_9s4vz_1`,bar:`_bar_9s4vz_5`,checked:`_checked_9s4vz_21`,disabled:`_disabled_9s4vz_26`,circle:`_circle_9s4vz_31`},sn=(0,c.defineComponent)({name:`ElmSwitch`,props:{color:{type:String,default:void 0},size:{type:String,default:void 0},disabled:{type:Boolean,default:!1},checked:{type:Boolean,required:!0}},emits:[`update:checked`],setup(e,{emit:t}){return()=>(0,c.createVNode)(`div`,{onClick:()=>{e.disabled||t(`update:checked`,!e.checked)},style:{"--elmethis-scoped-color":e.color??`var(--elmethis-color-primary)`,"--elmethis-scoped-padding":`2px`,"--elmethis-scoped-size":e.size??`18px`,"--elmethis-scoped-width":`calc(var(--elmethis-scoped-size) * 2 + var(--elmethis-scoped-padding) * 2)`}},[(0,c.createVNode)(`input`,{class:W.switch,type:`checkbox`,checked:e.checked,disabled:e.disabled},null),(0,c.createVNode)(`div`,{class:(0,d.clsx)(W.bar,e.checked&&W.checked,e.disabled&&W.disabled)},[(0,c.createVNode)(`div`,{class:(0,d.clsx)(W.circle,e.checked&&W.checked,e.disabled&&W.disabled)},null)])])}}),G={loading:`_loading_lgmx3_23`,"elm-text-area":`_elm-text-area_lgmx3_37`,disabled:`_disabled_lgmx3_63`,active:`_active_lgmx3_67`,header:`_header_lgmx3_72`,"label-active":`_label-active_lgmx3_85`,requierd:`_requierd_lgmx3_90`,body:`_body_lgmx3_96`,textarea:`_textarea_lgmx3_101`},cn=(0,c.defineComponent)({name:`ElmTextArea`,inheritAttrs:!1,props:{label:{type:String,required:!0},isLoading:{type:Boolean,default:!1},rows:{type:Number,default:3},maxLength:{type:Number,default:void 0},placeholder:{type:String,default:void 0},disabled:{type:Boolean,default:void 0},required:{type:Boolean,default:void 0},value:{type:String,default:void 0},defaultValue:{type:String,default:void 0}},emits:[`update:value`],setup(e,{attrs:t,emit:n,slots:r}){let i=(0,c.ref)(!1),a=(0,c.ref)(String(e.defaultValue??``)),o=(0,c.computed)(()=>e.value==null?a.value:String(e.value)),s=(0,c.computed)(()=>e.value!=null||e.defaultValue!=null),l=(0,c.computed)(()=>o.value.length);return()=>{let{class:u,style:f,onFocus:p,onBlur:h,...g}=t;return(0,c.createVNode)(`label`,{class:(0,d.clsx)(G[`elm-text-area`],i.value&&G.active,(e.disabled||e.isLoading)&&G.disabled,u),style:f},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(G.header,i.value&&G[`label-active`])},[r.icon?.()??(0,c.createVNode)(O,{d:m.mdiTextLong,size:`0.75rem`},null),(0,c.createVNode)(`span`,null,[e.label,e.required&&(0,c.createVNode)(`span`,{class:G.requierd},[(0,c.createTextVNode)(`*`)])]),s.value&&(0,c.createVNode)(w,{color:e.maxLength!=null&&l.value>e.maxLength?`var(--elmethis-color-accent-error)`:`gray`,size:`0.75rem`},{default:()=>[e.maxLength==null?`${l.value}`:`${l.value} / ${e.maxLength}`]})]),(0,c.createVNode)(`div`,{class:G.body},[(0,c.createVNode)(`textarea`,(0,c.mergeProps)({value:o.value,rows:e.rows,maxlength:e.maxLength,class:G.textarea,placeholder:e.placeholder,onFocus:e=>{i.value=!0,p?.(e)},onBlur:e=>{i.value=!1,h?.(e)},disabled:e.disabled||e.isLoading,style:{cursor:e.disabled?`not-allowed`:e.isLoading?`progress`:`auto`},"aria-required":e.required,onInput:e=>{let t=e.target.value;a.value=t,n(`update:value`,t)}},g),null)]),(0,c.createVNode)(`div`,{class:G.loading,style:{opacity:+!!e.isLoading}},null)])}}}),K={loading:`_loading_11box_23`,"elm-text-field":`_elm-text-field_11box_37`,disabled:`_disabled_11box_59`,active:`_active_11box_63`,header:`_header_11box_68`,"label-active":`_label-active_11box_81`,requierd:`_requierd_11box_86`,body:`_body_11box_92`,input:`_input_11box_100`,"right-icon-box":`_right-icon-box_11box_121`,"clickable-icon":`_clickable-icon_11box_126`,"prefix-suffix":`_prefix-suffix_11box_142`},ln=(0,c.defineComponent)({name:`ElmTextField`,inheritAttrs:!1,props:{label:{type:String,required:!0},maxLength:{type:Number,default:void 0},prefix:{type:String,default:void 0},suffix:{type:String,default:void 0},placeholder:{type:String,default:void 0},disabled:{type:Boolean,default:void 0},isLoading:{type:Boolean,default:!1},isPassword:{type:Boolean,default:!1},required:{type:Boolean,default:void 0},value:{type:String,default:void 0}},emits:[`update:value`],setup(e,{attrs:t,emit:n,slots:r}){let i=(0,c.ref)(null),a=(0,c.ref)(!1),o=(0,c.ref)(e.isPassword?`password`:`text`),s=e=>{let t=i.value;t&&((Object.getOwnPropertyDescriptor(window.HTMLInputElement.prototype,`value`)?.set)?.call(t,e),t.dispatchEvent(new Event(`input`,{bubbles:!0})))};return()=>{let{class:l,style:u,onFocus:f,onBlur:p,...h}=t,g=e.value==null?0:String(e.value).length;return(0,c.createVNode)(`label`,{class:(0,d.clsx)(K[`elm-text-field`],a.value&&K.active,(e.disabled||e.isLoading)&&K.disabled,l),style:u},[(0,c.createVNode)(`span`,{class:(0,d.clsx)(K.header,a.value&&K[`label-active`])},[r.icon?.()??(0,c.createVNode)(O,{d:m.mdiText,size:`0.75rem`},null),(0,c.createVNode)(`span`,null,[e.label,e.required&&(0,c.createVNode)(`span`,{class:K.requierd},[(0,c.createTextVNode)(`*`)])]),e.value!=null&&(0,c.createVNode)(w,{color:e.maxLength!=null&&g>e.maxLength?`var(--elmethis-color-accent-error)`:`gray`,size:`0.75rem`},{default:()=>[e.maxLength==null?`${g}`:`${g} / ${e.maxLength}`]})]),(0,c.createVNode)(`div`,{class:K.body},[e.prefix&&(0,c.createVNode)(`span`,{class:K[`prefix-suffix`]},[e.prefix]),(0,c.createVNode)(`input`,(0,c.mergeProps)({ref:i,value:e.value,type:o.value,class:K.input,placeholder:e.placeholder,onInput:e=>{n(`update:value`,e.target.value)},onFocus:e=>{a.value=!0,f?.(e)},onBlur:e=>{a.value=!1,p?.(e)},disabled:e.disabled||e.isLoading,style:{cursor:e.disabled?`not-allowed`:e.isLoading?`progress`:`auto`},"aria-required":e.required},h),null),(0,c.createVNode)(`div`,{class:K[`right-icon-box`]},[(0,c.createVNode)(`span`,{class:K[`prefix-suffix`]},[e.suffix!=null&&(0,c.createVNode)(w,null,{default:()=>[e.suffix]})]),(0,c.createVNode)(`div`,{class:K[`clickable-icon`],onClick:()=>{!e.isLoading&&!e.disabled&&(o.value=o.value===`text`?`password`:`text`)}},[(0,c.createVNode)(O,{d:o.value===`text`?m.mdiEyeOutline:m.mdiEyeOffOutline,size:`1.25rem`,color:`gray`},null)]),(0,c.createVNode)(`div`,{class:K[`clickable-icon`],onClick:()=>{!e.isLoading&&!e.disabled&&s(``)}},[(0,c.createVNode)(O,{d:m.mdiTrashCanOutline,size:`1.25rem`,color:`gray`},null)])])]),(0,c.createVNode)(`div`,{class:K.loading,style:{opacity:+!!e.isLoading}},null)])}}}),un={"elm-validation":`_elm-validation_1cigg_1`},dn=(0,c.defineComponent)({name:`ElmValidation`,props:{text:{type:String,required:!0},validColor:{type:String,default:`var(--elmethis-color-accent-success)`},isValid:{type:Boolean,required:!0}},setup(e){return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(un[`elm-validation`]),style:{"--elmethis-scoped-opacity":e.isValid?1:.5}},[(0,c.createVNode)(O,{d:e.isValid?m.mdiCheckCircle:m.mdiCheckCircleOutline,color:e.isValid?e.validColor:void 0},null),(0,c.createVNode)(w,{color:e.isValid?e.validColor:void 0},{default:()=>[e.text]})])}}),fn=(0,c.defineComponent)({name:`ElmCopyIcon`,inheritAttrs:!1,props:{content:{type:[String,Array],required:!0}},setup(e,{attrs:t}){let{CopyButton:n}=Ye({class:t.class,style:t.style,content:e.content});return()=>(0,c.h)(n)}}),pn={"elm-square-loading-icon":`_elm-square-loading-icon_m72nq_19`,square:`_square_m72nq_28`,appear:`_appear_m72nq_1`},mn=(0,c.defineComponent)({name:`ElmSquareLoadingIcon`,inheritAttrs:!1,props:{size:{type:String,default:`3rem`},dimensions:{type:Number,default:4}},setup(e,{attrs:t}){return()=>{let{class:n,style:r,...i}=t,a=1200,o=a/(e.dimensions*3),s=[];for(let t=0;t<e.dimensions;t++)for(let n=0;n<e.dimensions;n++)s.push((0,c.createVNode)(`span`,{key:`${t}-${n}`,class:pn.square,style:{"--elmethis-scoped-delay":`${o*(t+n)}ms`}},null));return(0,c.createVNode)(`span`,(0,c.mergeProps)({class:(0,d.clsx)(pn[`elm-square-loading-icon`],n),style:[{"--elmethis-scoped-size":e.size,"--elmethis-scoped-dimensions":e.dimensions,"--elmethis-scoped-duration":`${a}ms`},r]},i),[s])}}}),hn=`elmethis-theme`,gn=`elmethis-theme-change`,_n=e=>e===`dark`?`dark`:e===`light`?`light`:null,vn=()=>typeof matchMedia<`u`&&matchMedia(`(prefers-color-scheme: dark)`).matches,yn=(e,t)=>{let n=document.documentElement;e==null?(n.style.removeProperty(`color-scheme`),n.removeAttribute(`data-theme`),t&&typeof localStorage<`u`&&localStorage.removeItem(hn)):(n.style.colorScheme=e,n.setAttribute(`data-theme`,e),t&&typeof localStorage<`u`&&localStorage.setItem(hn,e)),window.dispatchEvent(new CustomEvent(gn,{detail:e}))},bn=()=>{if(typeof window>`u`)return!1;let e=_n(localStorage.getItem(hn));return e==null?vn():e===`dark`};function xn(){let e=(0,c.ref)(bn()),t=()=>{e.value=!e.value,yn(e.value?`dark`:`light`,!0)},n=t=>{let n=t.detail;e.value=n==null?vn():n===`dark`},r=t=>{if(t.key!==hn)return;let n=_n(t.newValue);e.value=n==null?vn():n===`dark`,yn(n,!1)},i,a=t=>{_n(localStorage.getItem(hn))??(e.value=t.matches)};return(0,c.onMounted)(()=>{window.addEventListener(gn,n),window.addEventListener(`storage`,r);let e=_n(localStorage.getItem(hn));e!=null&&yn(e,!1),typeof matchMedia<`u`&&(i=matchMedia(`(prefers-color-scheme: dark)`),i.addEventListener(`change`,a))}),(0,c.onBeforeUnmount)(()=>{window.removeEventListener(gn,n),window.removeEventListener(`storage`,r),i?.removeEventListener(`change`,a)}),{isDarkTheme:e,toggleTheme:t}}var Sn={"elm-toggle-theme":`_elm-toggle-theme_11awq_1`},Cn=(0,c.defineComponent)({name:`ElmToggleTheme`,props:{size:{type:[String,Number],default:`2rem`}},setup(e){let{isDarkTheme:t,toggleTheme:n}=xn();return()=>t.value?(0,c.createVNode)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:e.size,height:e.size,viewBox:`0 0 24 24`,class:(0,d.clsx)(Sn[`elm-toggle-theme`]),onClick:n},[(0,c.createVNode)(`path`,{"fill-opacity":`0`,d:`M15.22 6.03l2.53-1.94L14.56 4L13.5 1l-1.06 3l-3.19.09l2.53 1.94l-.91 3.06l2.63-1.81l2.63 1.81z`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{id:`lineMdSunnyOutlineToMoonLoopTransition0`,fill:`freeze`,attributeName:`fill-opacity`,begin:`0.6s;lineMdSunnyOutlineToMoonLoopTransition0.begin+6s`,dur:`0.4s`,values:`0;1`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+2.2s`,dur:`0.4s`,values:`1;0`},null)]),(0,c.createVNode)(`path`,{"fill-opacity":`0`,d:`M13.61 5.25L15.25 4l-2.06-.05L12.5 2l-.69 1.95L9.75 4l1.64 1.25l-.59 1.98l1.7-1.17l1.7 1.17z`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+3s`,dur:`0.4s`,values:`0;1`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+5.2s`,dur:`0.4s`,values:`1;0`},null)]),(0,c.createVNode)(`path`,{"fill-opacity":`0`,d:`M19.61 12.25L21.25 11l-2.06-.05L18.5 9l-.69 1.95l-2.06.05l1.64 1.25l-.59 1.98l1.7-1.17l1.7 1.17z`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+0.4s`,dur:`0.4s`,values:`0;1`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+2.8s`,dur:`0.4s`,values:`1;0`},null)]),(0,c.createVNode)(`path`,{"fill-opacity":`0`,d:`M20.828 9.731l1.876-1.439l-2.366-.067L19.552 6l-.786 2.225l-2.366.067l1.876 1.439L17.601 12l1.951-1.342L21.503 12z`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+3.4s`,dur:`0.4s`,values:`0;1`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`lineMdSunnyOutlineToMoonLoopTransition0.begin+5.6s`,dur:`0.4s`,values:`1;0`},null)]),(0,c.createVNode)(`g`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`},[(0,c.createVNode)(`g`,null,[(0,c.createVNode)(`path`,{"stroke-dasharray":`2`,"stroke-dashoffset":`4`,d:`M12 21v1M21 12h1M12 3v-1M3 12h-1`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`stroke-dashoffset`,dur:`0.2s`,values:`4;2`},null)]),(0,c.createVNode)(`path`,{"stroke-dasharray":`2`,"stroke-dashoffset":`4`,d:`M18.5 18.5l0.5 0.5M18.5 5.5l0.5 -0.5M5.5 5.5l-0.5 -0.5M5.5 18.5l-0.5 0.5`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`stroke-dashoffset`,begin:`0.2s`,dur:`0.2s`,values:`4;2`},null)]),(0,c.createVNode)(`set`,{fill:`freeze`,attributeName:`opacity`,begin:`0.5s`,to:`0`},null)]),(0,c.createVNode)(`path`,{d:`M7 6 C7 12.08 11.92 17 18 17 C18.53 17 19.05 16.96 19.56 16.89 C17.95 19.36 15.17 21 12 21 C7.03 21 3 16.97 3 12 C3 8.83 4.64 6.05 7.11 4.44 C7.04 4.95 7 5.47 7 6 Z`,opacity:`0`},[(0,c.createVNode)(`set`,{fill:`freeze`,attributeName:`opacity`,begin:`0.5s`,to:`1`},null)])]),(0,c.createVNode)(`mask`,{id:`lineMdSunnyOutlineToMoonLoopTransition1`},[(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`12`,fill:`#fff`},null),(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`4`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.1s`,dur:`0.4s`,values:`4;8`},null)]),(0,c.createVNode)(`circle`,{cx:`22`,cy:`2`,r:`3`,fill:`#fff`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cx`,begin:`0.1s`,dur:`0.4s`,values:`22;18`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cy`,begin:`0.1s`,dur:`0.4s`,values:`2;6`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.1s`,dur:`0.4s`,values:`3;12`},null)]),(0,c.createVNode)(`circle`,{cx:`22`,cy:`2`,r:`1`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cx`,begin:`0.1s`,dur:`0.4s`,values:`22;18`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cy`,begin:`0.1s`,dur:`0.4s`,values:`2;6`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.1s`,dur:`0.4s`,values:`1;10`},null)])]),(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`6`,mask:`url(#lineMdSunnyOutlineToMoonLoopTransition1)`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.1s`,dur:`0.4s`,values:`6;10`},null),(0,c.createVNode)(`set`,{fill:`freeze`,attributeName:`opacity`,begin:`0.5s`,to:`0`},null)])]):(0,c.createVNode)(`svg`,{xmlns:`http://www.w3.org/2000/svg`,width:e.size,height:e.size,viewBox:`0 0 24 24`,class:(0,d.clsx)(Sn[`elm-toggle-theme`]),onClick:n},[(0,c.createVNode)(`g`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`},[(0,c.createVNode)(`path`,{"stroke-dasharray":`2`,"stroke-dashoffset":`2`,d:`M12 19v1M19 12h1M12 5v-1M5 12h-1`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`d`,begin:`1.2s`,dur:`0.2s`,values:`M12 19v1M19 12h1M12 5v-1M5 12h-1;M12 21v1M21 12h1M12 3v-1M3 12h-1`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`stroke-dashoffset`,begin:`1.2s`,dur:`0.2s`,values:`2;0`},null)]),(0,c.createVNode)(`path`,{"stroke-dasharray":`2`,"stroke-dashoffset":`2`,d:`M17 17l0.5 0.5M17 7l0.5 -0.5M7 7l-0.5 -0.5M7 17l-0.5 0.5`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`d`,begin:`1.4s`,dur:`0.2s`,values:`M17 17l0.5 0.5M17 7l0.5 -0.5M7 7l-0.5 -0.5M7 17l-0.5 0.5;M18.5 18.5l0.5 0.5M18.5 5.5l0.5 -0.5M5.5 5.5l-0.5 -0.5M5.5 18.5l-0.5 0.5`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`stroke-dashoffset`,begin:`1.4s`,dur:`0.2s`,values:`2;0`},null)]),(0,c.createVNode)(`animateTransform`,{attributeName:`transform`,dur:`30s`,repeatCount:`indefinite`,type:`rotate`,values:`0 12 12;360 12 12`},null)]),(0,c.createVNode)(`g`,{fill:`currentColor`},[(0,c.createVNode)(`path`,{d:`M15.22 6.03L17.75 4.09L14.56 4L13.5 1L12.44 4L9.25 4.09L11.78 6.03L10.87 9.09L13.5 7.28L16.13 9.09L15.22 6.03Z`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,dur:`0.4s`,values:`1;0`},null)]),(0,c.createVNode)(`path`,{d:`M19.61 12.25L21.25 11L19.19 10.95L18.5 9L17.81 10.95L15.75 11L17.39 12.25L16.8 14.23L18.5 13.06L20.2 14.23L19.61 12.25Z`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`fill-opacity`,begin:`0.2s`,dur:`0.4s`,values:`1;0`},null)])]),(0,c.createVNode)(`path`,{fill:`none`,stroke:`currentColor`,"stroke-linecap":`round`,"stroke-linejoin":`round`,"stroke-width":`2`,d:`M7 6 C7 12.08 11.92 17 18 17 C18.53 17 19.05 16.96 19.56 16.89 C17.95 19.36 15.17 21 12 21 C7.03 21 3 16.97 3 12 C3 8.83 4.64 6.05 7.11 4.44 C7.04 4.95 7 5.47 7 6 Z`},[(0,c.createVNode)(`set`,{fill:`freeze`,attributeName:`opacity`,begin:`0.6s`,to:`0`},null)]),(0,c.createVNode)(`mask`,{id:`lineMdMoonToSunnyOutlineLoopTransition0`},[(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`12`,fill:`#fff`},null),(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`8`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.6s`,dur:`0.4s`,values:`8;4`},null)]),(0,c.createVNode)(`circle`,{cx:`18`,cy:`6`,r:`12`,fill:`#fff`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cx`,begin:`0.6s`,dur:`0.4s`,values:`18;22`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cy`,begin:`0.6s`,dur:`0.4s`,values:`6;2`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.6s`,dur:`0.4s`,values:`12;3`},null)]),(0,c.createVNode)(`circle`,{cx:`18`,cy:`6`,r:`10`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cx`,begin:`0.6s`,dur:`0.4s`,values:`18;22`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`cy`,begin:`0.6s`,dur:`0.4s`,values:`6;2`},null),(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.6s`,dur:`0.4s`,values:`10;1`},null)])]),(0,c.createVNode)(`circle`,{cx:`12`,cy:`12`,r:`10`,mask:`url(#lineMdMoonToSunnyOutlineLoopTransition0)`,opacity:`0`,fill:`currentColor`},[(0,c.createVNode)(`animate`,{fill:`freeze`,attributeName:`r`,begin:`0.6s`,dur:`0.4s`,values:`10;6`},null),(0,c.createVNode)(`set`,{fill:`freeze`,attributeName:`opacity`,begin:`0.6s`,to:`1`},null)])])}}),wn={"elm-breadcrumb":`_elm-breadcrumb_13oke_1`,"link-container":`_link-container_13oke_9`,icon:`_icon_13oke_23`,chunk:`_chunk_13oke_36`,chevron:`_chevron_13oke_41`},Tn=(0,c.defineComponent)({name:`ElmBreadcrumb`,props:{links:{type:Array,required:!0}},setup(e){return()=>(0,c.createVNode)(`nav`,{class:(0,d.clsx)(wn[`elm-breadcrumb`])},[e.links.map((t,n)=>(0,c.createVNode)(`span`,{key:n,style:{display:`contents`}},[(0,c.createVNode)(`span`,{class:wn[`link-container`],onClick:t.onClick},[(0,c.createVNode)(O,{class:wn.icon,d:n===0?m.mdiHome:n===e.links.length-1?m.mdiApplicationOutline:m.mdiFolderOpen,size:`1rem`},null),(0,c.createVNode)(`span`,{class:wn.chunk},[t.text])]),e.links.length!==n+1&&(0,c.createVNode)(O,{class:wn.chevron,d:m.mdiChevronRight,size:`1rem`},null)]))])}}),En={"elm-page-top":`_elm-page-top_18d6m_1`,move:`_move_18d6m_1`,visible:`_visible_18d6m_30`,partial:`_partial_18d6m_37`,text:`_text_18d6m_74`},Dn=(0,c.defineComponent)({name:`ElmPageTop`,props:{position:{type:String,default:`right`}},setup(e){let t=(0,c.ref)(!1),n=()=>{t.value=window.scrollY>100};(0,c.onMounted)(()=>{window.addEventListener(`scroll`,n,{passive:!0}),n()}),(0,c.onBeforeUnmount)(()=>window.removeEventListener(`scroll`,n));let r=()=>{window.scrollTo({top:0,behavior:`smooth`})};return()=>(0,c.createVNode)(`nav`,{class:(0,d.clsx)(En[`elm-page-top`],t.value&&En.visible),style:{"--elmethis-scoped-size":`64px`,left:e.position===`left`?`0`:`auto`,right:e.position===`right`?`0`:`auto`},onClick:r},[(0,c.createVNode)(`div`,{"aria-hidden":`true`,class:En.partial},null),(0,c.createVNode)(`div`,{"aria-hidden":`true`,class:En.partial},null),(0,c.createVNode)(`div`,{"aria-hidden":`true`,class:En.partial},null),(0,c.createVNode)(`span`,{class:En.text},[(0,c.createTextVNode)(`Back to Top`)])])}}),q={"elm-color-primitive-sample":`_elm-color-primitive-sample_vuro0_1`,toolbar:`_toolbar_vuro0_6`,"mode-toggle":`_mode-toggle_vuro0_11`,"mode-toggle-icon":`_mode-toggle-icon_vuro0_24`,"section-title":`_section-title_vuro0_33`,group:`_group_vuro0_40`,scale:`_scale_vuro0_46`,swatch:`_swatch_vuro0_52`,"swatch-name":`_swatch-name_vuro0_55`,"swatch-bg":`_swatch-bg_vuro0_60`},On=e=>{let t=e.match(/\d+(\.\d+)?/g);if(!t||t.length<3)return null;let n=e=>Math.round(Number(e)).toString(16).padStart(2,`0`);return`#${n(t[0])}${n(t[1])}${n(t[2])}`},J=[100,500,900],kn=[100,200,300,400,500,600,700,800,900],An=[{hue:`red`,steps:J},{hue:`orange`,steps:J},{hue:`yellow`,steps:J},{hue:`green`,steps:J},{hue:`cyan`,steps:J},{hue:`blue`,steps:J},{hue:`purple`,steps:J},{hue:`magenta`,steps:J},{hue:`slate`,steps:kn},{hue:`gold`,steps:kn}],jn=(0,c.defineComponent)({name:`ElmColorPrimitiveSample`,setup(){let e=(0,c.ref)(null),t=(0,c.ref)(`variable`),n;(0,c.onBeforeUnmount)(()=>{n!==void 0&&clearTimeout(n)});let r=async r=>{let i=r.target?.closest(`[data-copy-token]`),a=i?.getAttribute(`data-copy-token`);if(!i||!a)return;let o=a;if(t.value===`hex`){let e=i.closest(`[data-theme]`)??document.documentElement,t=document.createElement(`span`);t.style.color=`var(${a})`,t.style.display=`none`,e.appendChild(t);let n=On(window.getComputedStyle(t).color);t.remove(),n&&(o=n)}await window.navigator.clipboard.writeText(o),n!==void 0&&clearTimeout(n),e.value=a,n=setTimeout(()=>{e.value=null,n=void 0},1500)};return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(q[`elm-color-primitive-sample`]),onClick:e=>{r(e)}},[(0,c.createVNode)(`div`,{class:q.toolbar},[(0,c.createVNode)(`button`,{type:`button`,class:q[`mode-toggle`],onClick:()=>{t.value=t.value===`variable`?`hex`:`variable`}},[(0,c.createVNode)(O,{class:q[`mode-toggle-icon`],d:t.value===`hex`?m.mdiHexadecimal:m.mdiFormatColorFill,size:`1.25rem`},null),(0,c.createTextVNode)(`Copy: `),t.value===`hex`?`hex value`:`variable name`])]),An.map(({hue:t,steps:n})=>(0,c.createVNode)(`div`,{key:t,class:q.group},[(0,c.createVNode)(`span`,{class:q[`section-title`]},[t]),(0,c.createVNode)(`div`,{class:q.scale},[n.map(n=>{let r=`--elmethis-primitive-color-${t}-${n}`;return(0,c.createVNode)(`div`,{key:r,class:q.swatch,style:{gridColumn:String(n/100)},"data-copy-token":r,title:r},[(0,c.createVNode)(`div`,{class:q[`swatch-bg`],style:{backgroundColor:`var(${r})`}},null),(0,c.createVNode)(`code`,{class:q[`swatch-name`]},[e.value===r?`copied!`:n])])})])]))])}}),Y={"elm-color-semantic-sample":`_elm-color-semantic-sample_6i1j1_1`,toolbar:`_toolbar_6i1j1_6`,"mode-toggle":`_mode-toggle_6i1j1_11`,"mode-toggle-icon":`_mode-toggle-icon_6i1j1_24`,panels:`_panels_6i1j1_33`,header:`_header_6i1j1_38`,body:`_body_6i1j1_49`,"section-title":`_section-title_6i1j1_56`,group:`_group_6i1j1_63`,panel:`_panel_6i1j1_33`,"panel-body":`_panel-body_6i1j1_72`,surface:`_surface_6i1j1_86`,foreground:`_foreground_6i1j1_97`,"accent-pair":`_accent-pair_6i1j1_102`,"color-sample-container":`_color-sample-container_6i1j1_112`,"color-sample":`_color-sample_6i1j1_112`,"color-sample-bg":`_color-sample-bg_6i1j1_121`,"color-sample-name":`_color-sample-name_6i1j1_127`},Mn=e=>{let t=e.match(/\d+(\.\d+)?/g);if(!t||t.length<3)return null;let n=e=>Math.round(Number(e)).toString(16).padStart(2,`0`);return`#${n(t[0])}${n(t[1])}${n(t[2])}`},Nn=[`--elmethis-color-surface-sunken`,`--elmethis-color-surface-base`,`--elmethis-color-surface-raised`],Pn=[`--elmethis-color-neutral-weak`,`--elmethis-color-neutral`,`--elmethis-color-neutral-strong`,`--elmethis-color-primary-weak`,`--elmethis-color-primary`,`--elmethis-color-primary-strong`,`--elmethis-color-accent-link`,`--elmethis-color-accent-link-visited`],Fn=[`--elmethis-color-neutral-weak`,`--elmethis-color-neutral`,`--elmethis-color-neutral-strong`],In=[`--elmethis-color-primary-weak`,`--elmethis-color-primary`,`--elmethis-color-primary-strong`],Ln=[{fg:`--elmethis-color-accent-info`,surface:`--elmethis-color-accent-info-surface`},{fg:`--elmethis-color-accent-success`,surface:`--elmethis-color-accent-success-surface`},{fg:`--elmethis-color-accent-important`,surface:`--elmethis-color-accent-important-surface`},{fg:`--elmethis-color-accent-warning`,surface:`--elmethis-color-accent-warning-surface`},{fg:`--elmethis-color-accent-error`,surface:`--elmethis-color-accent-error-surface`}],Rn=[`red`,`orange`,`yellow`,`green`,`cyan`,`blue`,`magenta`].map(e=>({fg:`--elmethis-color-display-${e}`,surface:`--elmethis-color-display-${e}-surface`})),zn=(0,c.defineComponent)({name:`ElmColorSemanticSample`,setup(){let e=(0,c.ref)(null),t=(0,c.ref)(`variable`),n;(0,c.onBeforeUnmount)(()=>{n!==void 0&&clearTimeout(n)});let r=async r=>{let i=r.target?.closest(`[data-copy-token]`),a=i?.getAttribute(`data-copy-token`);if(!i||!a)return;let o=a;if(t.value===`hex`){let e=i.closest(`[data-theme]`)??document.documentElement,t=document.createElement(`span`);t.style.color=`var(${a})`,t.style.display=`none`,e.appendChild(t);let n=Mn(window.getComputedStyle(t).color);t.remove(),n&&(o=n)}await window.navigator.clipboard.writeText(o),n!==void 0&&clearTimeout(n),e.value=a,n=setTimeout(()=>{e.value=null,n=void 0},1500)},i=t=>e.value===t?`copied!`:t,a=e=>(0,c.createVNode)(`div`,{class:Y[`color-sample-container`]},[e.map(e=>(0,c.createVNode)(`div`,{key:e,class:Y[`color-sample`],"data-copy-token":e},[(0,c.createVNode)(`div`,{class:Y[`color-sample-bg`],style:{backgroundColor:`var(${e})`}},null),(0,c.createVNode)(`code`,{class:Y[`color-sample-name`]},[i(e)])]))]),o=e=>(0,c.createVNode)(`div`,{class:Y.panel,"data-theme":e,style:{colorScheme:e}},[(0,c.createVNode)(`div`,{class:Y[`panel-body`],style:{backgroundColor:`var(--elmethis-color-surface-base)`}},[(0,c.createVNode)(`header`,{class:Y.header,style:{backgroundColor:`var(--elmethis-color-surface-sunken)`}},[(0,c.createVNode)(`span`,{"data-copy-token":`--elmethis-color-surface-sunken`},[i(`--elmethis-color-surface-sunken`)])]),(0,c.createVNode)(`div`,{class:Y.body},[(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Surface`)]),Nn.map(e=>(0,c.createVNode)(`div`,{key:e,class:Y.surface,style:{backgroundColor:`var(${e})`},"data-copy-token":e},[i(e)]))]),(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Foreground`)]),Pn.map(e=>(0,c.createVNode)(`span`,{key:e,class:Y.foreground,style:{color:`var(${e})`},"data-copy-token":e},[i(e)]))]),(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Accent`)]),Ln.map(({fg:e,surface:t})=>(0,c.createVNode)(`div`,{key:e,class:Y[`accent-pair`],style:{color:`var(${e})`,backgroundColor:`var(${t})`}},[(0,c.createVNode)(`span`,{"data-copy-token":e},[i(e)]),(0,c.createVNode)(`span`,{"data-copy-token":t},[i(t)])]))]),(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Neutral`)]),a(Fn)]),(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Primary`)]),a(In)]),(0,c.createVNode)(`div`,{class:Y.group},[(0,c.createVNode)(`span`,{class:Y[`section-title`]},[(0,c.createTextVNode)(`Display`)]),Rn.map(({fg:e,surface:t})=>(0,c.createVNode)(`div`,{key:e,class:Y[`accent-pair`],style:{color:`var(${e})`,backgroundColor:`var(${t})`}},[(0,c.createVNode)(`span`,{"data-copy-token":e},[i(e)]),(0,c.createVNode)(`span`,{"data-copy-token":t},[i(t)])]))])])])]);return()=>(0,c.createVNode)(`div`,{class:(0,d.clsx)(Y[`elm-color-semantic-sample`])},[(0,c.createVNode)(`div`,{class:Y.toolbar},[(0,c.createVNode)(`button`,{type:`button`,class:Y[`mode-toggle`],onClick:()=>{t.value=t.value===`variable`?`hex`:`variable`}},[(0,c.createVNode)(O,{class:Y[`mode-toggle-icon`],d:t.value===`hex`?m.mdiHexadecimal:m.mdiFormatColorFill,size:`1.25rem`},null),(0,c.createTextVNode)(`Copy: `),t.value===`hex`?`hex value`:`variable name`])]),(0,c.createVNode)(`div`,{class:Y.panels,onClick:e=>{r(e)}},[o(`light`),o(`dark`)])])}}),Bn={"elm-markdown":`_elm-markdown_1g767_1`};function X(e){return typeof e==`function`||Object.prototype.toString.call(e)===`[object Object]`&&!(0,c.isVNode)(e)}var Z=e=>{let t,n,r,i,a=[];for(let o=0;o<e.length;o++){let s=e[o];switch(s.type){case`blockquote`:if(s.tokens&&s.tokens.length!==0){let e;a.push((0,c.createVNode)(pt,{key:o},X(e=Z(s.tokens))?e:{default:()=>[e]}))}break;case`br`:a.push((0,c.createVNode)(`br`,{key:o},null));break;case`code`:a.push((0,c.createVNode)(Xe,{key:o,code:s.text.trim(),language:s.lang},null));break;case`codespan`:a.push((0,c.createVNode)(w,{key:o,code:!0},{default:()=>[s.text]}));break;case`def`:break;case`del`:a.push(s.tokens&&s.tokens.length!==0?(0,c.createVNode)(w,{key:o,strikethrough:!0},X(t=Z(s.tokens))?t:{default:()=>[t]}):(0,c.createVNode)(w,{key:o,strikethrough:!0},{default:()=>[s.text]}));break;case`em`:a.push(s.tokens&&s.tokens.length!==0?(0,c.createVNode)(w,{key:o,italic:!0},X(n=Z(s.tokens))?n:{default:()=>[n]}):(0,c.createVNode)(w,{key:o,italic:!0},{default:()=>[s.text]}));break;case`escape`:break;case`heading`:{let e=s.depth;if(s.tokens&&s.tokens.length!==0){let t;a.push((0,c.createVNode)(fe,{key:o,level:e},X(t=Z(s.tokens))?t:{default:()=>[t]}))}else a.push((0,c.createVNode)(fe,{key:o,level:e,text:s.text},null));break}case`hr`:a.push((0,c.createVNode)(yt,{key:o},null));break;case`html`:break;case`image`:a.push((0,c.createVNode)(ot,{key:o,enableModal:!0,src:s.href,alt:s.text},null));break;case`link`:a.push(s.tokens&&s.tokens.length!==0?(0,c.createVNode)(w,{key:o,href:s.href},X(r=Z(s.tokens))?r:{default:()=>[r]}):(0,c.createVNode)(w,{key:o,href:s.href},{default:()=>[s.text]}));break;case`list`:{let e=s.items.map((e,t)=>(0,c.createVNode)(`li`,{key:t},[Z(e.tokens)]));a.push((0,c.createVNode)(xt,{key:o,listStyle:s.ordered?`ordered`:`unordered`},X(e)?e:{default:()=>[e]}));break}case`list_item`:a.push((0,c.createVNode)(`li`,{key:o},[s.tokens&&s.tokens.length!==0?Z(s.tokens):s.text]));break;case`paragraph`:a.push((0,c.createVNode)(ge,{key:o},{default:()=>[s.tokens&&s.tokens.length!==0?Z(s.tokens):s.text]}));break;case`space`:break;case`strong`:a.push(s.tokens&&s.tokens.length!==0?(0,c.createVNode)(w,{key:o,bold:!0},X(i=Z(s.tokens))?i:{default:()=>[i]}):(0,c.createVNode)(w,{key:o,bold:!0},{default:()=>[s.text]}));break;case`table`:{let e,t=e=>e.map((e,t)=>{let n;return(0,c.createVNode)(Dt,{key:t},X(n=Z(e.tokens))?n:{default:()=>[n]})}),n=(0,c.createVNode)(jt,null,X(e=t(s.header))?e:{default:()=>[e]}),r=s.rows.map((e,n)=>{let r;return(0,c.createVNode)(jt,{key:n},X(r=t(e))?r:{default:()=>[r]})});a.push((0,c.createVNode)(wt,{key:o},{default:()=>[(0,c.createVNode)(kt,null,X(n)?n:{default:()=>[n]}),(0,c.createVNode)(Tt,null,X(r)?r:{default:()=>[r]})]}));break}case`text`:s.tokens&&s.tokens.length!==0?a.push(...Z(s.tokens)):a.push(s.text);break;default:break}}return a},Vn=(0,c.defineComponent)({name:`ElmMarkdownStable`,props:{tokens:{type:Array,required:!0}},setup(e){return()=>Z(e.tokens)}}),Hn=(0,c.defineComponent)({name:`ElmMarkdown`,props:{markdown:{type:String,required:!0},isStreaming:{type:Boolean,default:!1}},setup(e){let t=(0,c.shallowRef)([]),n=(0,c.shallowRef)([]);return(0,c.watch)(()=>e.markdown,r=>{let i=ee.marked.setOptions({gfm:!0}).lexer(r);if(e.isStreaming&&i.length>0){let e=i.slice(0,-1);e.length!==t.value.length&&(t.value=e),n.value=i.slice(-1)}else t.value=i,n.value=[]},{immediate:!0}),()=>(0,c.createVNode)(`div`,{class:Bn[`elm-markdown`]},[(0,c.createVNode)(Vn,{tokens:t.value},null),Z(n.value)])}}),Q={"elm-wordle":`_elm-wordle_1llms_1`,"message-area":`_message-area_1llms_11`,"fade-in":`_fade-in_1llms_1`,error:`_error_1llms_26`,status:`_status_1llms_32`,board:`_board_1llms_41`,row:`_row_1llms_47`,cell:`_cell_1llms_52`,empty:`_empty_1llms_68`,tbd:`_tbd_1llms_74`,correct:`_correct_1llms_80`,present:`_present_1llms_86`,absent:`_absent_1llms_92`,keyboard:`_keyboard_1llms_100`,"keyboard-row":`_keyboard-row_1llms_108`,key:`_key_1llms_100`,wide:`_wide_1llms_137`,"reset-container":`_reset-container_1llms_156`,hidden:`_hidden_1llms_159`,"reset-button":`_reset-button_1llms_164`},Un=`which.there.their.about.would.these.other.words.could.write.first.water.after.where.right.think.three.years.place.sound.great.again.still.every.small.found.those.never.under.might.while.house.world.below.asked.going.large.until.along.shall.being.often.earth.began.since.study.night.light.above.paper.parts.young.story.point.times.heard.whole.white.given.means.music.miles.thing.today.later.using.money.lines.order.group.among.learn.known.space.table.early.trees.short.hands.state.black.shown.stood.front.voice.kinds.makes.comes.close.power.lived.vowel.taken.built.heart.ready.quite.class.bring.round.horse.shows.piece.green.stand.birds.start.river.tried.least.field.whose.girls.leave.added.color.third.hours.moved.plant.doing.names.forms.heavy.ideas.cried.check.floor.begin.woman.alone.plane.spell.watch.carry.wrote.clear.named.books.child.glass.human.takes.party.build.seems.blood.sides.seven.mouth.solve.north.value.death.maybe.happy.tells.gives.looks.shape.lives.steps.areas.sense.speak.force.ocean.speed.women.metal.south.grass.scale.cells.lower.sleep.wrong.pages.ships.needs.rocks.eight.major.level.total.ahead.reach.stars.store.sight.terms.catch.works.board.cover.songs.equal.stone.waves.guess.dance.spoke.break.cause.radio.weeks.lands.basic.liked.trade.fresh.final.fight.meant.drive.spent.local.waxes.knows.train.bread.homes.teeth.coast.thick.brown.clean.quiet.sugar.facts.steel.forth.rules.notes.units.peace.month.verbs.seeds.helps.sharp.visit.woods.chief.walls.cross.wings.grown.cases.foods.crops.fruit.stick.wants.stage.sheep.nouns.plain.drink.bones.apart.turns.moves.touch.angle.based.range.marks.tired.older.farms.spend.shoes.goods.chair.twice.cents.empty.alike.style.broke.pairs.count.enjoy.score.shore.roots.paint.heads.shook.serve.angry.crowd.wheel.quick.dress.share.alive.noise.solid.cloth.signs.hills.types.drawn.worth.truck.piano.upper.loved.usual.faces.drove.cabin.boats.towns.proud.court.model.prime.fifty.plans.yards.prove.tools.price.sheet.smell.boxes.raise.match.truth.roads.threw.enemy.lunch.chart.scene.graph.doubt.guide.winds.block.grain.smoke.mixed.games.wagon.sweet.topic.extra.plate.title.knife.fence.falls.cloud.wheat.plays.enter.broad.steam.atoms.press.lying.basis.clock.taste.grows.thank.storm.agree.brain.track.smile.funny.beach.stock.hurry.saved.sorry.giant.trail.offer.ought.rough.daily.avoid.keeps.throw.allow.cream.laugh.edges.teach.frame.bells.dream.magic.occur.ended.chord.false.skill.holes.dozen.brave.apple.climb.outer.pitch.ruler.holds.fixed.costs.calls.blank.staff.labor.eaten.youth.tones.honor.globe.gases.doors.poles.loose.apply.tears.exact.brush.chest.layer.whale.minor.faith.tests.judge.items.worry.waste.hoped.strip.begun.aside.lakes.bound.depth.candy.event.worse.aware.shell.rooms.ranch.image.snake.aloud.dried.likes.motor.pound.knees.refer.fully.chain.shirt.flour.drops.spite.orbit.banks.shoot.curve.tribe.tight.blind.slept.shade.claim.flies.theme.queen.fifth.union.hence.straw.entry.issue.birth.feels.anger.brief.rhyme.glory.guard.flows.flesh.owned.trick.yours.sizes.noted.width.burst.route.lungs.uncle.bears.royal.kings.forty.trial.cards.brass.opera.chose.owner.vapor.beats.mouse.tough.wires.meter.tower.finds.inner.stuck.arrow.poems.label.swing.solar.truly.tense.beans.split.rises.weigh.hotel.stems.pride.swung.grade.digit.badly.boots.pilot.sales.swept.lucky.prize.stove.tubes.acres.wound.steep.slide.trunk.error.porch.slave.exist.faced.mines.marry.juice.raced.waved.goose.trust.fewer.favor.mills.views.joint.eager.spots.blend.rings.adult.index.nails.horns.balls.flame.rates.drill.trace.skins.waxed.seats.stuff.ratio.minds.dirty.silly.coins.hello.trips.leads.rifle.hopes.bases.shine.bench.moral.fires.meals.shake.shops.cycle.movie.slope.canoe.teams.folks.fired.bands.thumb.shout.canal.habit.reply.ruled.fever.crust.shelf.walks.midst.crack.print.tales.coach.stiff.flood.verse.awake.rocky.march.fault.swift.faint.civil.ghost.feast.blade.limit.germs.reads.ducks.dairy.worst.gifts.lists.stops.rapid.brick.claws.beads.beast.skirt.cakes.lions.frogs.tries.nerve.grand.armed.treat.honey.moist.legal.penny.crown.shock.taxes.sixty.altar.pulls.sport.drums.talks.dying.dates.drank.blows.lever.wages.proof.drugs.tanks.sings.tails.pause.herds.arose.hated.clues.novel.shame.burnt.races.flash.weary.heels.token.coats.spare.shiny.alarm.dimes.sixth.clerk.mercy.sunny.guest.float.shone.pipes.worms.bills.sweat.suits.smart.upset.rains.sandy.rainy.parks.sadly.fancy.rider.unity.bunch.rolls.crash.craft.newly.gates.hatch.paths.funds.wider.grace.grave.tides.admit.shift.sails.pupil.tiger.angel.cruel.agent.drama.urged.patch.nests.vital.sword.blame.weeds.screw.vocal.bacon.chalk.cargo.crazy.acted.goats.arise.witch.loves.queer.dwell.backs.ropes.shots.merry.phone.cheek.peaks.ideal.beard.eagle.creek.cries.ashes.stall.yield.mayor.opens.input.fleet.tooth.cubic.wives.burns.poets.apron.spear.organ.cliff.stamp.paste.rural.baked.chase.slice.slant.knock.noisy.sorts.stays.wiped.blown.piled.clubs.cheer.widow.twist.tenth.hides.comma.sweep.spoon.stern.crept.maple.deeds.rides.muddy.crime.jelly.ridge.drift.dusty.devil.tempo.humor.sends.steal.tents.waist.roses.reign.noble.cheap.dense.linen.geese.woven.posts.hired.wrath.salad.bowed.tires.shark.belts.grasp.blast.polar.fungi.tends.pearl.loads.jokes.veins.frost.hears.loses.hosts.diver.phase.toads.alert.tasks.seams.coral.focus.naked.puppy.jumps.spoil.quart.macro.fears.flung.spark.vivid.brook.steer.spray.decay.ports.socks.urban.goals.grant.minus.films.tunes.shaft.firms.skies.bride.wreck.flock.stare.hobby.bonds.dared.faded.thief.crude.pants.flute.votes.tonal.radar.wells.skull.hairs.argue.wears.dolls.voted.caves.cared.broom.scent.panel.fairy.olive.bends.prism.lamps.cable.peach.ruins.rally.schwa.lambs.sells.cools.draft.charm.limbs.brake.gazed.cubes.delay.beams.fetch.ranks.array.harsh.camel.vines.picks.naval.purse.rigid.crawl.toast.soils.sauce.basin.ponds.twins.wrist.fluid.pools.brand.stalk.robot.reeds.hoofs.buses.sheer.grief.bloom.dwelt.melts.risen.flags.knelt.fiber.roofs.freed.armor.piles.aimed.algae.twigs.lemon.ditch.drunk.rests.chill.slain.panic.cords.tuned.crisp.ledge.dived.swamp.clung.stole.molds.yarns.liver.gauge.breed.stool.gulls.awoke.gross.diary.rails.belly.trend.flask.stake.fried.draws.actor.handy.bowls.haste.scope.deals.knots.moons.essay.thump.hangs.bliss.dealt.gains.bombs.clown.palms.cones.roast.tidal.bored.chant.acids.dough.camps.swore.lover.hooks.males.cocoa.punch.award.reins.ninth.noses.links.drain.fills.nylon.lunar.pulse.flown.elbow.fatal.sites.moths.meats.foxes.mined.attic.fiery.mount.usage.swear.snowy.rusty.scare.traps.relax.react.valid.robin.cease.gills.prior.safer.polio.loyal.swell.salty.marsh.vague.weave.mound.seals.mules.virus.scout.acute.windy.stout.folds.seize.hilly.joins.pluck.stack.lords.dunes.burro.hawks.trout.feeds.scarf.halls.coals.towel.souls.elect.buggy.pumps.loans.spins.files.oxide.pains.photo.rival.flats.syrup.rodeo.sands.moose.pints.curly.comic.cloak.onion.clams.scrap.didst.couch.codes.fails.ounce.lodge.greet.gypsy.utter.paved.zones.fours.alley.tiles.bless.crest.elder.kills.yeast.erect.bugle.medal.roles.hound.snail.alter.ankle.relay.loops.zeros.bites.modes.debts.realm.glove.rayon.swims.poked.stray.lifts.maker.lumps.graze.dread.barns.docks.masts.pours.wharf.curse.plump.robes.seeks.cedar.curls.jolly.myths.cages.gloom.locks.pedal.beets.crows.anode.slash.creep.rowed.chips.fists.wines.cares.valve.newer.motel.ivory.necks.clamp.barge.blues.alien.frown.strap.crews.shack.gonna.saves.stump.ferry.idols.cooks.juicy.glare.carts.alloy.bulbs.lawns.lasts.fuels.oddly.crane.filed.weird.shawl.slips.troop.bolts.suite.sleek.quilt.tramp.blaze.atlas.odors.scrub.crabs.probe.logic.adobe.exile.rebel.grind.sting.spine.cling.desks.grove.leaps.prose.lofty.agony.snare.tusks.bulls.moods.humid.finer.dimly.plank.china.pines.guilt.sacks.brace.quote.lathe.gaily.fonts.scalp.adopt.foggy.ferns.grams.clump.perch.tumor.teens.crank.fable.hedge.genes.sober.boast.tract.cigar.unite.owing.thigh.haiku.swish.dikes.wedge.booth.eased.frail.cough.tombs.darts.forts.choir.pouch.pinch.hairy.buyer.torch.vigor.waltz.heats.herbs.users.flint.click.madam.bleak.blunt.aided.lacks.masks.waded.risks.nurse.chaos.sewed.cured.ample.lease.steak.sinks.merit.bluff.bathe.gleam.bonus.colts.shear.gland.silky.skate.birch.anvil.sleds.groan.maids.meets.speck.hymns.hints.drown.bosom.slick.quest.coils.spied.snows.stead.snack.plows.blond.tamed.thorn.waits.glued.banjo.tease.arena.bulky.carve.stunt.warms.shady.razor.folly.leafy.notch.fools.otter.pears.flush.genus.ached.fives.flaps.spout.smote.fumes.adapt.cuffs.tasty.stoop.clips.disks.sniff.lanes.brisk.imply.demon.super.furry.raged.growl.texts.hardy.stung.typed.hates.wiser.timid.serum.beaks.rotor.casts.baths.glide.plots.trait.resin.slums.lyric.puffs.decks.brood.mourn.aloft.abuse.whirl.edged.ovary.quack.heaps.slang.await.civic.saint.bevel.sonar.aunts.packs.froze.tonic.corps.swarm.frank.repay.gaunt.wired.niece.cello.needy.chuck.stony.media.surge.hurts.repel.husky.dated.hunts.mists.exert.dries.mates.sworn.baker.spice.oasis.boils.spurs.doves.sneak.paces.colon.siege.strum.drier.cacao.humus.bales.piped.nasty.rinse.boxer.shrub.amuse.tacks.cited.slung.delta.laden.larva.rents.yells.spool.spill.crush.jewel.snaps.stain.kicks.tying.slits.rated.eerie.smash.plums.zebra.earns.bushy.scary.squad.tutor.silks.slabs.bumps.evils.fangs.snout.peril.pivot.yacht.lobby.jeans.grins.viola.liner.comet.scars.chops.raids.eater.slate.skips.soles.misty.urine.knobs.sleet.holly.pests.forks.grill.trays.pails.borne.tenor.wares.carol.woody.canon.wakes.kitty.miner.polls.shaky.nasal.scorn.chess.taxis.crate.shyly.tulip.forge.nymph.budge.lowly.abide.depot.oases.asses.sheds.fudge.pills.rivet.thine.groom.lanky.boost.broth.heave.gravy.beech.timed.quail.inert.gears.chick.hinge.trash.clash.sighs.renew.bough.dwarf.slows.quill.shave.spore.sixes.chunk.madly.paced.braid.fuzzy.motto.spies.slack.mucus.magma.awful.discs.erase.posed.asset.cider.taper.theft.churn.satin.slots.taxed.bully.sloth.shale.tread.raked.curds.manor.aisle.bulge.loins.stair.tapes.leans.bunks.squat.towed.lance.panes.sakes.heirs.caste.dummy.pores.fauna.crook.poise.epoch.risky.warns.fling.berry.grape.flank.drags.squid.pelts.icing.irony.irons.barks.whoop.choke.diets.whips.tally.dozed.twine.kites.bikes.ticks.riots.roars.vault.looms.scold.blink.dandy.pupae.sieve.spike.ducts.lends.pizza.brink.widen.plumb.pagan.feats.bison.soggy.scoop.argon.nudge.skiff.amber.sexes.rouse.salts.hitch.exalt.leash.dined.chute.snort.gusts.melon.cheat.reefs.llama.lasso.debut.quota.oaths.prone.mixes.rafts.dives.stale.inlet.flick.pinto.brows.untie.batch.greed.chore.stirs.blush.onset.barbs.volts.beige.swoop.paddy.laced.shove.jerky.poppy.leaks.fares.dodge.godly.squaw.affix.brute.nicer.undue.snarl.merge.doses.showy.daddy.roost.vases.swirl.petty.colds.curry.cobra.genie.flare.messy.cores.soaks.ripen.whine.amino.plaid.spiny.mowed.baton.peers.vowed.pious.swans.exits.afoot.plugs.idiom.chili.rites.serfs.cleft.berth.grubs.annex.dizzy.hasty.latch.wasps.mirth.baron.plead.aloof.aging.pixel.bared.mummy.hotly.auger.buddy.chaps.badge.stark.fairs.gully.mumps.emery.filly.ovens.drone.gauze.idiot.fussy.annoy.shank.gouge.bleed.elves.roped.unfit.baggy.mower.scant.grabs.fleas.lousy.album.sawed.cooky.murky.infer.burly.waged.dingy.brine.kneel.creak.vanes.smoky.spurt.combs.easel.laces.humps.rumor.aroma.horde.swiss.leapt.opium.slime.afire.pansy.mares.soaps.husks.snips.hazel.lined.cafes.naive.wraps.sized.piers.beset.agile.tongs.steed.fraud.booty.valor.downy.witty.mossy.psalm.scuba.tours.polka.milky.gaudy.shrug.tufts.wilds.laser.truss.hares.creed.lilac.siren.tarry.bribe.swine.muted.flips.cures.sinew.boxed.hoops.gasps.hoods.niche.yucca.glows.sewer.whack.fuses.gowns.droop.bucks.pangs.mails.whisk.haven.clasp.sling.stint.urges.champ.piety.chirp.pleat.posse.sunup.menus.howls.quake.knack.plaza.fiend.caked.bangs.erupt.poker.olden.cramp.voter.poses.manly.slump.fined.grips.gaped.purge.hiked.maize.fluff.strut.sloop.prowl.roach.cocks.bland.dials.plume.slaps.soups.dully.wills.foams.solos.skier.eaves.totem.fused.latex.veils.mused.mains.myrrh.racks.galls.gnats.bouts.sisal.shuts.hoses.dryly.hover.gloss.seeps.denim.putty.guppy.leaky.dusky.filth.oboes.spans.fowls.adorn.glaze.haunt.dares.obeys.bakes.abyss.smelt.gangs.aches.trawl.claps.undid.spicy.hoist.fades.vicar.acorn.pussy.gruff.musty.tarts.snuff.hunch.truce.tweed.dryer.loser.sheaf.moles.lapse.tawny.vexed.autos.wager.domes.sheen.clang.spade.sowed.broil.slyly.studs.grunt.donor.slugs.aspen.homer.croak.tithe.halts.avert.havoc.hogan.glint.ruddy.jeeps.flaky.ladle.taunt.snore.fines.props.prune.pesos.radii.pokes.tiled.daisy.heron.villa.farce.binds.cites.fixes.jerks.livid.waked.inked.booms.chews.licks.hyena.scoff.lusty.sonic.smith.usher.tucks.vigil.molts.sects.spars.dumps.scaly.wisps.sores.mince.panda.flier.axles.plied.booby.patio.rabbi.petal.polyp.tints.grate.troll.tolls.relic.phony.bleat.flaws.flake.snags.aptly.drawl.ulcer.soapy.bossy.monks.crags.caged.twang.diner.taped.cadet.grids.spawn.guile.noose.mores.girth.slimy.aides.spasm.burrs.alibi.lymph.saucy.muggy.liter.joked.goofy.exams.enact.stork.lured.toxic.omens.nears.covet.wrung.forum.venom.moody.alder.sassy.flair.guild.prays.wrens.hauls.stave.tilts.pecks.stomp.gales.tempt.capes.mesas.omits.tepee.harry.wring.evoke.limes.cluck.lunge.highs.canes.giddy.lithe.verge.khaki.queue.loath.foyer.outdo.fared.deter.crumb.astir.spire.jumpy.extol.buoys.stubs.lucid.thong.afore.whiff.maxim.hulls.clogs.slats.jiffy.arbor.cinch.igloo.goody.gazes.dowel.calms.bitch.scowl.gulps.coded.waver.mason.lobes.ebony.flail.isles.clods.dazed.adept.oozed.sedan.clays.warts.ketch.skunk.manes.adore.sneer.mango.fiord.flora.roomy.minks.thaws.watts.freer.exult.plush.paled.twain.clink.scamp.pawed.grope.bravo.gable.stink.sever.waned.rarer.regal.wards.fawns.babes.unify.amend.oaken.glade.visor.hefty.nines.throb.pecan.butts.pence.sills.jails.flyer.saber.nomad.miter.beeps.domed.gulfs.curbs.heath.moors.aorta.larks.tangy.wryly.cheep.rages.evade.lures.freak.vogue.tunic.slams.knits.dumpy.mania.spits.firth.hikes.trots.nosed.clank.dogma.bloat.balsa.graft.middy.stile.keyed.finch.sperm.chaff.wiles.amigo.copra.amiss.eying.twirl.lurch.popes.chins.smock.tines.guise.grits.junks.shoal.cache.tapir.atoll.deity.toils.spree.mocks.scans.shorn.revel.raven.hoary.reels.scuff.mimic.weedy.corny.truer.rouge.ember.floes.torso.wipes.edict.sulky.recur.groin.baste.kinks.surer.piggy.moldy.franc.liars.inept.gusty.facet.jetty.equip.leper.slink.soars.cater.dowry.sided.yearn.decoy.taboo.ovals.heals.pleas.beret.spilt.gayly.rover.endow.pygmy.carat.abbey.vents.waken.chimp.fumed.sodas.vinyl.clout.wades.mites.smirk.bores.bunny.surly.frock.foray.purer.milks.query.mired.blare.froth.gruel.navel.paler.puffy.casks.grime.derby.mamma.gavel.teddy.vomit.moans.allot.defer.wield.viper.louse.erred.hewed.abhor.wrest.waxen.adage.ardor.stabs.pored.rondo.loped.fishy.bible.hires.foals.feuds.jambs.thuds.jeers.knead.quirk.rugby.expel.greys.rigor.ester.lyres.aback.glues.lotus.lurid.rungs.hutch.thyme.valet.tommy.yokes.epics.trill.pikes.ozone.caper.chime.frees.famed.leech.smite.neigh.erode.robed.hoard.salve.conic.gawky.craze.jacks.gloat.mushy.rumps.fetus.wince.pinks.shalt.toots.glens.cooed.rusts.stews.shred.parka.chugs.winks.clots.shrew.booed.filmy.juror.dents.gummy.grays.hooky.butte.dogie.poled.reams.fifes.spank.gayer.tepid.spook.taint.flirt.rogue.spiky.opals.miser.cocky.coyly.balmy.slosh.brawl.aphid.faked.hydra.brags.chide.yanks.allay.video.altos.eases.meted.chasm.longs.excel.taffy.impel.savor.koala.quays.dawns.proxy.clove.duets.dregs.tardy.briar.grimy.ultra.meaty.halve.wails.suede.mauve.envoy.arson.coves.gooey.brews.sofas.chums.amaze.zooms.abbot.halos.scour.suing.cribs.sagas.enema.wordy.harps.coupe.molar.flops.weeps.mints.ashen.felts.askew.munch.mewed.divan.vices.jumbo.blobs.blots.spunk.acrid.topaz.cubed.clans.flees.slurs.gnaws.welds.fords.emits.agate.pumas.mends.darks.dukes.plies.canny.hoots.oozes.lamed.fouls.clefs.nicks.mated.skims.brunt.tuber.tinge.fates.ditty.thins.frets.eider.bayou.mulch.fasts.amass.damps.morns.friar.palsy.vista.croon.conch.udder.tacos.skits.mikes.quits.preen.aster.adder.elegy.pulpy.scows.baled.hovel.lavas.crave.optic.welts.busts.knave.razed.shins.totes.scoot.dears.crock.mutes.trims.skein.doted.shuns.veers.fakes.yoked.wooed.hacks.sprig.wands.lulls.seers.snobs.nooks.pined.perky.mooed.frill.dines.booze.tripe.prong.drips.odder.levee.antic.sidle.pithy.corks.yelps.joker.fleck.buffs.scram.tiers.bogey.doled.irate.vales.coped.hails.elude.bulks.aired.vying.stags.strew.cocci.pacts.scabs.silos.dusts.yodel.terse.jaded.baser.jibes.foils.sways.forgo.slays.preys.treks.quell.peeks.assay.lurks.eject.boars.trite.belch.gnash.wanes.lutes.whims.dosed.chewy.snipe.umbra.teems.dozes.kelps.upped.brawn.doped.shush.rinds.slush.moron.voile.woken.fjord.sheik.jests.kayak.slews.toted.saner.drape.patty.raves.sulfa.grist.skied.vixen.civet.vouch.tiara.homey.moped.runts.serge.kinky.rills.corns.brats.pries.amble.fries.loons.tsars.datum.musky.pigmy.gnome.ravel.ovule.icily.liken.lemur.frays.silts.sifts.plods.ramps.tress.earls.dudes.waive.karat.jolts.peons.beers.horny.pales.wreak.lairs.lynch.stank.swoon.idler.abort.blitz.ensue.atone.bingo.roves.kilts.scald.adios.cynic.dulls.memos.elfin.dales.peels.peals.bares.sinus.crone.sable.hinds.shirk.enrol.wilts.roams.duped.cysts.mitts.safes.spats.coops.filet.knell.refit.covey.punks.kilns.fitly.abate.talcs.heeds.duels.wanly.ruffs.gauss.lapel.jaunt.whelp.cleat.gauzy.dirge.edits.wormy.moats.smear.prods.bowel.frisk.vests.bayed.rasps.tames.delve.embed.befit.wafer.ceded.novas.feign.spews.larch.huffs.doles.mamas.hulks.pried.brims.irked.aspic.swipe.mealy.skimp.bluer.slake.dowdy.penis.brays.pupas.egret.flunk.phlox.gripe.peony.douse.blurs.darns.slunk.lefts.chats.inane.vials.stilt.rinks.woofs.wowed.bongs.frond.ingot.evict.singe.shyer.flied.slops.dolts.drool.dells.whelk.hippy.feted.ether.cocos.hives.jibed.mazes.trios.sirup.squab.laths.leers.pasta.rifts.lopes.alias.whirs.diced.slags.lodes.foxed.idled.prows.plait.malts.chafe.cower.toyed.chefs.keels.sties.racer.etude.sucks.sulks.micas.czars.copse.ailed.abler.rabid.golds.croup.snaky.visas.palls.mopes.boned.wispy.raved.swaps.junky.doily.pawns.tamer.poach.baits.damns.gumbo.daunt.prank.hunks.buxom.heres.honks.stows.unbar.idles.routs.sages.goads.remit.copes.deign.culls.girds.haves.lucks.stunk.dodos.shams.snubs.icons.usurp.dooms.hells.soled.comas.paves.maths.perks.limps.wombs.blurb.daubs.cokes.sours.stuns.cased.musts.coeds.cowed.aping.zoned.rummy.fetes.skulk.quaff.rajah.deans.reaps.galas.tills.roved.kudos.toned.pared.scull.vexes.punts.snoop.bails.dames.hazes.lores.marts.voids.ameba.rakes.adzes.harms.rears.satyr.swill.hexes.colic.leeks.hurls.yowls.ivies.plops.musks.papaw.jells.bused.cruet.bided.filch.zests.rooks.laxly.rends.loams.basks.sires.carps.pokey.flits.muses.bawls.shuck.viler.lisps.peeps.sorer.lolls.prude.diked.floss.flogs.scums.dopes.bogie.pinky.leafs.tubas.scads.lowed.yeses.biked.qualm.evens.caned.gawks.whits.wooly.gluts.romps.bests.dunce.crony.joist.tunas.boner.malls.parch.avers.crams.pares.dally.bigot.kales.flays.leach.gushy.pooch.huger.slyer.golfs.mires.flues.loafs.arced.acnes.neons.fiefs.dints.dazes.pouts.cored.yules.lilts.beefs.mutts.fells.cowls.spuds.lames.jawed.dupes.deads.bylaw.noons.nifty.clued.vireo.gapes.metes.cuter.maims.droll.cupid.mauls.sedge.papas.wheys.eking.loots.hilts.meows.beaus.dices.peppy.riper.fogey.gists.yogas.gilts.skews.cedes.zeals.alums.okays.elope.grump.wafts.soots.blimp.hefts.mulls.hosed.cress.doffs.ruder.pixie.waifs.ousts.pucks.biers.gulch.suets.hobos.lints.brans.teals.garbs.pewee.helms.turfs.quips.wends.banes.napes.icier.swats.bagel.hexed.ogres.goner.gilds.pyres.lards.bides.paged.talon.flout.medic.veals.putts.dirks.dotes.tippy.blurt.piths.acing.barer.whets.gaits.wools.dunks.heros.swabs.dirts.jutes.hemps.surfs.okapi.chows.shoos.dusks.parry.decal.furls.cilia.sears.novae.murks.warps.slues.lamer.saris.weans.purrs.dills.togas.newts.meany.bunts.razes.goons.wicks.ruses.vends.geode.drake.judos.lofts.pulps.lauds.mucks.vises.mocha.oiled.roman.ethyl.gotta.fugue.smack.gourd.bumpy.radix.fatty.borax.cubit.cacti.gamma.focal.avail.papal.golly.elite.versa.billy.adieu.annum.howdy.rhino.norms.bobby.axiom.setup.yolks.terns.mixer.genre.knoll.abode.junta.gorge.combo.alpha.overt.kinda.spelt.prick.nobly.ephod.audio.modal.veldt.warty.fluke.bonny.bream.rosin.bolls.doers.downs.beady.motif.humph.fella.mould.crepe.kerns.aloha.glyph.azure.riser.blest.locus.lumpy.beryl.wanna.brier.tuner.rowdy.mural.timer.canst.krill.quoth.lemme.triad.tenon.amply.deeps.padre.leant.pacer.octal.dolly.trans.sumac.foamy.lolly.giver.quipu.codex.manna.unwed.vodka.ferny.salon.duple.boron.revue.crier.alack.inter.dilly.whist.cults.spake.reset.loess.decor.mover.verve.ethic.gamut.lingo.dunno.align.sissy.incur.reedy.avant.piper.waxer.calyx.basil.coons.seine.piney.lemma.trams.winch.whirr.saith.ionic.heady.harem.tummy.sally.shied.dross.farad.saver.tilde.jingo.bower.serif.facto.belle.inset.bogus.caved.forte.sooty.bongo.toves.credo.basal.yella.aglow.glean.gusto.hymen.ethos.terra.brash.scrip.swash.aleph.tinny.itchy.wanta.trice.jowls.gongs.garde.boric.twill.sower.henry.awash.libel.spurn.sabre.rebut.penal.obese.sonny.quirt.mebbe.tacit.greek.xenon.hullo.pique.roger.negro.hadst.gecko.beget.uncut.aloes.louis.quint.clunk.raped.salvo.diode.matey.hertz.xylem.kiosk.apace.cawed.peter.wench.cohos.sorta.gamba.bytes.tango.nutty.axial.aleck.natal.clomp.gored.siree.bandy.gunny.runic.whizz.rupee.fated.wiper.bards.briny.staid.hocks.ochre.yummy.gents.soupy.roper.swath.cameo.edger.spate.gimme.ebbed.breve.theta.deems.dykes.servo.telly.tabby.tares.blocs.welch.ghoul.vitae.cumin.dinky.bronc.tabor.teeny.comer.borer.sired.privy.mammy.deary.gyros.sprit.conga.quire.thugs.furor.bloke.runes.bawdy.cadre.toxin.annul.egged.anion.nodes.picky.stein.jello.audit.echos.fagot.letup.eyrie.fount.caped.axons.amuck.banal.riled.petit.umber.miler.fibre.agave.bated.bilge.vitro.feint.pudgy.mater.manic.umped.pesky.strep.slurp.pylon.puree.caret.temps.newel.yawns.seedy.treed.coups.rangy.brads.mangy.loner.circa.tibia.afoul.mommy.titer.carne.kooky.motes.amity.suave.hippo.curvy.samba.newsy.anise.imams.tulle.aways.liven.hallo.wales.opted.canto.idyll.bodes.curio.wrack.hiker.chive.yokel.dotty.demur.cusps.specs.quads.laity.toner.decry.writs.saute.clack.aught.logos.tipsy.natty.ducal.bidet.bulgy.metre.lusts.unary.goeth.baler.sited.shies.hasps.brung.holed.swank.looky.melee.huffy.loamy.pimps.titan.binge.shunt.femur.libra.seder.honed.annas.coypu.shims.zowie.jihad.savvy.nadir.basso.monic.maned.mousy.omega.laver.prima.picas.folio.mecca.reals.troth.testy.balky.crimp.chink.abets.splat.abaci.vaunt.cutie.pasty.moray.levis.ratty.islet.joust.motet.viral.nukes.grads.comfy.voila.woozy.blued.whomp.sward.metro.skeet.chine.aerie.bowie.tubby.emirs.coati.unzip.slobs.trike.funky.ducat.dewey.skoal.wadis.oomph.taker.minim.getup.stoic.synod.runty.flyby.braze.inlay.venue.louts.peaty.orlon.humpy.radon.beaut.raspy.unfed.crick.nappy.vizor.yipes.rebus.divot.kiwis.vetch.squib.sitar.kiddo.dyers.cotta.matzo.lager.zebus.crass.dacha.kneed.dicta.fakir.knurl.runny.unpin.julep.globs.nudes.sushi.tacky.stoke.kaput.butch.hulas.croft.achoo.genii.nodal.outgo.spiel.viols.fetid.cagey.fudgy.epoxy.leggy.hanky.lapis.felon.beefy.coots.melba.caddy.segue.betel.frizz.drear.kooks.turbo.hoagy.moult.helix.zonal.arias.nosey.paean.lacey.banns.swain.fryer.retch.tenet.gigas.whiny.ogled.rumen.begot.cruse.abuts.riven.balks.sines.sigma.abase.ennui.gores.unset.augur.sated.odium.latin.dings.moire.scion.henna.kraut.dicks.lifer.prigs.bebop.gages.gazer.fanny.gibes.aural.tempi.hooch.rapes.snuck.harts.techs.emend.ninny.guava.scarp.liege.tufty.sepia.tomes.carob.emcee.prams.poser.verso.hubba.joule.baize.blips.scrim.cubby.clave.winos.rearm.liens.lumen.chump.nanny.trump.fichu.chomp.homos.purty.maser.woosh.patsy.shill.rusks.avast.swami.boded.ahhhh.lobed.natch.shish.tansy.snoot.payer.altho.sappy.laxer.hubby.aegis.riles.ditto.jazzy.dingo.quasi.septa.peaky.lorry.heerd.bitty.payee.seamy.apses.imbue.belie.chary.spoof.phyla.clime.babel.wacky.sumps.skids.khans.crypt.inure.nonce.outen.faire.hooey.anole.kazoo.calve.limbo.argot.ducky.faker.vibes.gassy.unlit.nervy.femme.biter.fiche.boors.gaffe.saxes.recap.synch.facie.dicey.ouija.hewer.legit.gurus.edify.tweak.caron.typos.rerun.polly.surds.hamza.nulls.hater.lefty.mogul.mafia.debug.pates.blabs.splay.talus.porno.moola.nixed.kilos.snide.horsy.gesso.jaggy.trove.nixes.creel.pater.iotas.cadge.skyed.hokum.furze.ankhs.curie.nutsy.hilum.remix.angst.burls.jimmy.veiny.tryst.codon.befog.gamed.flume.axman.doozy.lubes.rheas.bozos.butyl.kelly.mynah.jocks.donut.avian.wurst.chock.quash.quals.hayed.bombe.cushy.spacy.puked.leery.thews.prink.amens.tesla.intro.fiver.frump.capos.opine.coder.namer.jowly.pukes.haled.chard.duffs.bruin.reuse.whang.toons.frats.silty.telex.cutup.nisei.neato.decaf.softy.bimbo.adlib.loony.shoed.agues.peeve.noway.gamey.sarge.reran.epact.potty.coned.upend.narco.ikats.whorl.jinks.tizzy.weepy.posit.marge.vegan.clops.numbs.reeks.rubes.rower.biped.tiffs.hocus.hammy.bunco.fixit.tykes.chaws.yucky.hokey.resew.maven.adman.scuzz.slogs.souse.nacho.mimed.melds.boffo.debit.pinup.vagus.gulag.randy.bosun.educe.faxes.auras.pesto.antsy.betas.fizzy.dorky.snits.moxie.thane.mylar.nobby.gamin.gouty.esses.goyim.paned.druid.jades.rehab.gofer.tzars.octet.homed.socko.dorks.eared.anted.elide.fazes.oxbow.dowse.situs.macaw.scone.drily.hyper.salsa.mooch.gated.unjam.lipid.mitre.venal.knish.ritzy.divas.torus.mange.dimer.recut.meson.wined.fends.phage.fiats.caulk.cavil.panty.roans.bilks.hones.botch.estop.sully.sooth.gelds.ahold.raper.pager.fixer.infix.hicks.tuxes.plebe.twits.abash.twixt.wacko.primp.nabla.girts.miffs.emote.xerox.rebid.shahs.rutty.grout.grift.deify.biddy.kopek.semis.bries.acmes.piton.hussy.torts.disco.whore.boozy.gibed.vamps.amour.soppy.gonzo.durst.wader.tutus.perms.catty.glitz.brigs.nerds.barmy.gizmo.owlet.sayer.molls.shard.whops.comps.corer.colas.matte.droid.ploys.vapid.cairn.deism.mixup.yikes.prosy.raker.flubs.whish.reify.craps.shags.clone.hazed.macho.recto.refix.drams.biker.aquas.porky.doyen.exude.goofs.divvy.noels.jived.hulky.cager.harpy.oldie.vivas.admix.codas.zilch.deist.orcas.retro.pilaf.parse.rants.zingy.toddy.chiff.micro.veeps.girly.nexus.demos.bibbs.antes.lulus.gnarl.zippy.ivied.epees.wimps.tromp.grail.yoyos.poufs.hales.roust.cabal.rawer.pampa.mosey.kefir.burgs.unmet.cuspy.boobs.boons.hypes.dynes.nards.lanai.yogis.sepal.quark.toked.prate.ayins.hawed.swigs.vitas.toker.doper.bossa.linty.foist.mondo.stash.kayos.twerp.zesty.capon.wimpy.rewed.fungo.tarot.frosh.kabob.pinko.redid.mimeo.heist.tarps.lamas.sutra.dinar.whams.busty.spays.mambo.nabob.preps.odour.cabby.conks.sluff.dados.houri.swart.balms.gutsy.faxed.egads.pushy.retry.agora.drubs.daffy.chits.mufti.karma.lotto.toffs.burps.deuce.zings.kappa.clads.doggy.duper.scams.ogler.mimes.throe.zetas.waled.promo.blats.muffs.oinks.viand.coset.finks.faddy.minis.snafu.sauna.usury.muxes.craws.stats.condo.coxes.loopy.dorms.ascot.dippy.execs.dopey.envoi.umpty.gismo.fazed.strop.jives.slims.batik.pings.sonly.leggo.pekoe.prawn.luaus.campy.oodle.prexy.proms.touts.ogles.tweet.toady.naiad.hider.nuked.fatso.sluts.obits.narcs.tyros.delis.wooer.hyped.poset.byway.texas.scrod.avows.futon.torte.tuple.carom.kebab.tamps.jilts.duals.artsy.repro.modem.toped.psych.sicko.klutz.tarns.coxed.drays.cloys.anded.piker.aimer.suras.limos.flack.hapax.dutch.mucky.shire.klieg.staph.layup.tokes.axing.toper.duvet.cowry.profs.blahs.addle.sudsy.batty.coifs.suety.gabby.hafta.pitas.gouda.deice.taupe.topes.duchy.nitro.carny.limey.orals.hirer.taxer.roils.ruble.elate.dolor.wryer.snots.quais.coked.gimel.gorse.minas.goest.agape.manta.jings.iliac.admen.offen.cills.offal.lotta.bolas.thwap.alway.boggy.donna.locos.belay.gluey.bitsy.mimsy.hilar.outta.vroom.fetal.raths.renal.dyads.crocs.vires.culpa.kivas.feist.teats.thats.yawls.whens.abaca.ohhhh.aphis.fusty.eclat.perdu.mayst.exeat.molly.supra.wetly.plasm.buffa.semen.pukka.tagua.paras.stoat.secco.carte.haute.molal.shads.forma.ovoid.pions.modus.bueno.rheum.scurf.parer.ephah.doest.sprue.flams.molto.dieth.choos.miked.bronx.goopy.bally.plumy.moony.morts.yourn.bipod.spume.algal.ambit.mucho.spued.dozer.harum.groat.skint.laude.thrum.pappy.oncet.rimed.gigue.limed.plein.redly.humpf.lites.seest.grebe.absit.thanx.pshaw.yawps.plats.payed.areal.tilth.youse.gwine.thees.watsa.lento.spitz.yawed.gipsy.sprat.cornu.amahs.blowy.wahoo.lubra.mecum.whooo.coqui.sabra.edema.mrads.dicot.astro.kited.ouzel.didos.grata.bonne.axmen.klunk.summa.laves.purls.yawny.teary.masse.largo.bazar.pssst.sylph.lulab.toque.fugit.plunk.ortho.lucre.cooch.whipt.folky.tyres.wheee.corky.injun.solon.didot.kerfs.rayed.wassa.chile.begat.nippy.litre.magna.rebox.hydro.milch.brent.gyves.lazed.feued.mavis.inapt.baulk.casus.scrum.wised.fossa.dower.kyrie.bhoys.scuse.feuar.ohmic.juste.ukase.beaux.tusky.orate.musta.lardy.intra.quiff.epsom.neath.ocher.tared.homme.mezzo.corms.psoas.beaky.terry.infra.spivs.tuans.belli.bergs.anima.weirs.mahua.scops.manse.titre.curia.kebob.cycad.talky.fucks.tapis.amide.dolce.sloes.jakes.russe.blash.tutti.pruta.panga.blebs.tench.swarf.herem.missy.merse.pawky.limen.vivre.chert.unsee.tiros.brack.foots.welsh.fosse.knops.ileum.noire.firma.podgy.laird.thunk.shute.rowan.shoji.poesy.uncap.fames.glees.costa.turps.fores.solum.imago.byres.fondu.coney.polis.dictu.kraal.sherd.mumbo.wroth.chars.unbox.vacuo.slued.weest.hades.wiled.syncs.muser.excon.hoars.sibyl.passe.joeys.lotsa.lepta.shays.bocks.endue.darer.nones.ileus.plash.busby.wheal.buffo.yobbo.biles.poxes.rooty.licit.terce.bromo.hayey.dweeb.imbed.saran.bruit.punky.softs.biffs.loppy.agars.aquae.livre.biome.bunds.shews.diems.ginny.degum.polos.desex.unman.dungy.vitam.wedgy.glebe.apers.ridgy.roids.wifey.vapes.whoas.bunko.yolky.ulnas.reeky.bodge.brant.davit.deque.liker.jenny.tacts.fulls.treap.ligne.acked.refry.vower.aargh.churl.momma.gaols.whump.arras.marls.tiler.grogs.memes.midis.tided.haler.duces.twiny.poste.unrig.prise.drabs.quids.facer.spier.baric.geoid.remap.trier.gunks.steno.stoma.airer.ovate.torah.apian.smuts.pocks.yurts.exurb.defog.nuder.bosky.nimbi.mothy.joyed.labia.pards.jammy.bigly.faxer.hoppy.nurbs.cotes.dishy.vised.celeb.pismo.casas.withs.dodgy.scudi.mungs.muons.ureas.ioctl.unhip.krone.sager.verst.expat.gronk.uvula.shawm.bilgy.braes.cento.webby.lippy.gamic.lordy.mazed.tings.shoat.faery.wirer.diazo.carer.rater.greps.rente.zloty.viers.unapt.poops.fecal.kepis.taxon.eyers.wonts.spina.stoae.yenta.pooey.buret.japan.bedew.hafts.selfs.oared.herby.pryer.oakum.dinks.titty.sepoy.penes.fusee.winey.gimps.nihil.rille.giber.ousel.umiak.cuppy.hames.shits.azine.glads.tacet.bumph.coyer.honky.gamer.gooky.waspy.sedgy.bents.varia.djinn.junco.pubic.wilco.lazes.idyls.lupus.rives.snood.schmo.spazz.finis.noter.pavan.orbed.bates.pipet.baddy.goers.shako.stets.sebum.seeth.lobar.raver.ajuga.riced.velds.dribs.ville.dhows.unsew.halma.krona.limby.jiffs.treys.bauds.pffft.mimer.plebs.caner.jiber.cuppa.washy.chuff.unarm.yukky.styes.waker.flaks.maces.rimes.gimpy.guano.liras.kapok.scuds.bwana.oring.aider.prier.klugy.monte.golem.velar.firer.pieta.umbel.campo.unpeg.fovea.abeam.boson.asker.goths.vocab.vined.trows.tikis.loper.indie.boffs.spang.grapy.tater.ichor.kilty.lochs.supes.degas.flics.torsi.beths.weber.resaw.lawny.coven.mujik.relet.therm.heigh.shnor.trued.zayin.liest.barfs.bassi.qophs.roily.flabs.punny.okras.hanks.dipso.nerfs.fauns.calla.pseud.lurer.magus.obeah.atria.twink.palmy.pocky.pends.recta.plonk.slaws.keens.nicad.pones.inker.whews.groks.mosts.trews.ulnar.gyppy.cocas.expos.eruct.oiler.vacua.dreck.dater.arums.tubal.voxel.dixit.beery.assai.lades.actin.ghoti.buzzy.meads.grody.ribby.clews.creme.email.pyxie.kulak.bocci.rived.duddy.hoper.lapin.wonks.petri.phial.fugal.holon.boomy.duomo.musos.shier.hayer.porgy.hived.litho.fisty.stagy.luvya.maria.smogs.asana.yogic.slomo.fawny.amine.wefts.gonad.twirp.brava.plyer.fermi.loges.niter.revet.unate.gyved.totty.zappy.honer.giros.dicer.calks.luxes.monad.cruft.quoin.fumer.amped.shlep.vinca.yahoo.vulva.zooey.dryad.nixie.moper.iambs.lunes.nudie.limns.weals.nohow.miaow.gouts.mynas.mazer.kikes.oxeye.stoup.jujus.debar.pubes.taels.defun.rands.blear.paver.goosy.sprog.oleos.toffy.pawer.maced.crits.kluge.tubed.sahib.ganef.scats.sputa.vaned.acned.taxol.plink.oweth.tribs.resay.boule.thous.haply.glans.maxis.bezel.antis.porks.quoit.alkyd.glary.beamy.hexad.bonks.tecum.kerbs.filar.frier.redux.abuzz.fader.shoer.couth.trues.guyed.goony.booky.fuzes.hurly.genet.hodad.calix.filer.pawls.iodic.utero.henge.unsay.liers.piing.weald.sexed.folic.poxed.cunts.anile.kiths.becks.tatty.plena.rebar.abled.toyer.attar.teaks.aioli.awing.anent.feces.redip.wists.prats.mesne.muter.smurf.owest.bahts.lossy.ftped.hunky.hoers.slier.sicks.fatly.delft.hiver.himbo.pengo.busks.loxes.zonks.ilium.aport.ikons.mulct.reeve.civvy.canna.barfy.kaiak.scudo.knout.gaper.bhang.pease.uteri.lases.paten.rasae.axels.stoas.ombre.styli.gunky.hazer.kenaf.ahoys.ammos.weeny.urger.kudzu.paren.bolos.fetor.nitty.techy.lieth.somas.darky.villi.gluon.janes.cants.farts.socle.jinns.ruing.slily.ricer.hadda.wowee.rices.nerts.cauls.swive.lilty.micks.arity.pasha.finif.oinky.gutty.tetra.wises.wolds.balds.picot.whats.shiki.bungs.snarf.legos.dungs.stogy.berms.tangs.vails.roods.morel.sware.elans.latus.gules.razer.doxie.buena.overs.gutta.zincs.nates.kirks.tikes.donee.jerry.mohel.ceder.doges.unmap.folia.rawly.snark.topoi.ceils.immix.yores.diest.bubba.pomps.forky.turdy.lawzy.poohs.worts.gloms.beano.muley.barky.tunny.auric.funks.gaffs.cordy.curdy.lisle.toric.soyas.reman.mungy.carpy.apish.oaten.gappy.aurae.bract.rooky.axled.burry.sizer.proem.turfy.impro.mashy.miens.nonny.olios.grook.sates.agley.corgi.dashy.doser.dildo.apsos.xored.laker.playa.selah.malty.dulse.frigs.demit.whoso.rials.sawer.spics.bedim.snugs.fanin.azoic.icers.suers.wizen.koine.topos.shirr.rifer.feral.laded.lased.turds.swede.easts.cozen.unhit.pally.aitch.sedum.coper.ruche.geeks.swags.etext.algin.offed.ninja.holer.doter.toter.besot.dicut.macer.peens.pewit.redox.poler.yecch.fluky.doeth.twats.cruds.bebug.bider.stele.hexer.wests.gluer.pilau.abaft.whelm.lacer.inode.tabus.gator.cuing.refly.luted.cukes.bairn.bight.arses.crump.loggy.blini.spoor.toyon.harks.wazoo.fenny.naves.keyer.tufas.morph.rajas.typal.spiff.oxlip.unban.mussy.finny.rimer.login.molas.cirri.huzza.agone.unsex.unwon.peats.toile.zombi.dewed.nooky.alkyl.ixnay.dovey.holey.cuber.amyls.podia.chino.apnea.prims.lycra.johns.primo.fatwa.egger.hempy.snook.hying.fuzed.barms.crink.moots.yerba.rhumb.unarc.direr.munge.eland.nares.wrier.noddy.atilt.jukes.ender.thens.unfix.doggo.zooks.diddy.shmoo.brusk.prest.curer.pasts.kelpy.bocce.kicky.taros.lings.dicky.nerdy.abend.stela.biggy.laved.baldy.pubis.gooks.wonky.stied.hypos.assed.spumy.osier.roble.rumba.biffy.pupal`.split(`.`),Wn=`aahed.aalii.aargh.aarti.abaca.abaci.abacs.abaft.abaka.abamp.aband.abash.abask.abaya.abbas.abbed.abbes.abcee.abeam.abear.abele.abers.abets.abies.abler.ables.ablet.ablow.abmho.abohm.aboil.aboma.aboon.abord.abore.abram.abray.abrim.abrin.abris.absey.absit.abuna.abune.abuts.abuzz.abyes.abysm.acais.acari.accas.accoy.acerb.acers.aceta.achar.ached.aches.achoo.acids.acidy.acing.acini.ackee.acker.acmes.acmic.acned.acnes.acock.acold.acred.acres.acros.acted.actin.acton.acyls.adaws.adays.adbot.addax.added.adder.addio.addle.adeem.adhan.adieu.adios.adits.adman.admen.admix.adobo.adown.adoze.adrad.adred.adsum.aduki.adunc.adust.advew.adyta.adzed.adzes.aecia.aedes.aegis.aeons.aerie.aeros.aesir.afald.afara.afars.afear.aflaj.afore.afrit.afros.agama.agami.agars.agast.agave.agaze.agene.agers.agger.aggie.aggri.aggro.aggry.aghas.agila.agios.agism.agist.agita.aglee.aglet.agley.agloo.aglus.agmas.agoge.agone.agons.agood.agria.agrin.agros.agued.agues.aguna.aguti.aheap.ahent.ahigh.ahind.ahing.ahint.ahold.ahull.ahuru.aidas.aided.aides.aidoi.aidos.aiery.aigas.aight.ailed.aimed.aimer.ainee.ainga.aioli.aired.airer.airns.airth.airts.aitch.aitus.aiver.aiyee.aizle.ajies.ajiva.ajuga.ajwan.akees.akela.akene.aking.akita.akkas.alaap.alack.alamo.aland.alane.alang.alans.alant.alapa.alaps.alary.alate.alays.albas.albee.alcid.alcos.aldea.alder.aldol.aleck.alecs.alefs.aleft.aleph.alews.aleye.alfas.algal.algas.algid.algin.algor.algum.alias.alifs.aline.alist.aliya.alkie.alkos.alkyd.alkyl.allee.allel.allis.allod.allyl.almah.almas.almeh.almes.almud.almug.alods.aloed.aloes.aloha.aloin.aloos.alowe.altho.altos.alula.alums.alure.alvar.alway.amahs.amain.amate.amaut.amban.ambit.ambos.ambry.ameba.ameer.amene.amens.ament.amias.amice.amici.amide.amido.amids.amies.amiga.amigo.amine.amino.amins.amirs.amlas.amman.ammon.ammos.amnia.amnic.amnio.amoks.amole.amort.amour.amove.amowt.amped.ampul.amrit.amuck.amyls.anana.anata.ancho.ancle.ancon.andro.anear.anele.anent.angas.anglo.anigh.anile.anils.anima.animi.anion.anise.anker.ankhs.ankus.anlas.annal.annas.annat.anoas.anole.anomy.ansae.antae.antar.antas.anted.antes.antis.antra.antre.antsy.anura.anyon.apace.apage.apaid.apayd.apays.apeak.apeek.apers.apert.apery.apgar.aphis.apian.apiol.apish.apism.apode.apods.apoop.aport.appal.appay.appel.appro.appui.appuy.apres.apses.apsis.apsos.apted.apter.aquae.aquas.araba.araks.arame.arars.arbas.arced.archi.arcos.arcus.ardeb.ardri.aread.areae.areal.arear.areas.areca.aredd.arede.arefy.areic.arene.arepa.arere.arete.arets.arett.argal.argan.argil.argle.argol.argon.argot.argus.arhat.arias.ariel.ariki.arils.ariot.arish.arked.arled.arles.armed.armer.armet.armil.arnas.arnut.aroba.aroha.aroid.arpas.arpen.arrah.arras.arret.arris.arroz.arsed.arses.arsey.arsis.artal.artel.artic.artis.aruhe.arums.arval.arvee.arvos.aryls.asana.ascon.ascus.asdic.ashed.ashes.ashet.asked.asker.askoi.askos.aspen.asper.aspic.aspie.aspis.aspro.assai.assam.asses.assez.assot.aster.astir.astun.asura.asway.aswim.asyla.ataps.ataxy.atigi.atilt.atimy.atlas.atman.atmas.atmos.atocs.atoke.atoks.atoms.atomy.atony.atopy.atria.atrip.attap.attar.atuas.audad.auger.aught.aulas.aulic.auloi.aulos.aumil.aunes.aunts.aurae.aural.aurar.auras.aurei.aures.auric.auris.aurum.autos.auxin.avale.avant.avast.avels.avens.avers.avgas.avine.avion.avise.aviso.avize.avows.avyze.awarn.awato.awave.aways.awdls.aweel.aweto.awing.awmry.awned.awner.awols.awork.axels.axile.axils.axing.axite.axled.axles.axman.axmen.axoid.axone.axons.ayahs.ayaya.ayelp.aygre.ayins.ayont.ayres.ayrie.azans.azide.azido.azine.azlon.azoic.azole.azons.azote.azoth.azuki.azurn.azury.azygy.azyme.azyms.baaed.baals.babas.babel.babes.babka.baboo.babul.babus.bacca.bacco.baccy.bacha.bachs.backs.baddy.baels.baffs.baffy.bafts.baghs.bagie.bahts.bahus.bahut.bails.bairn.baisa.baith.baits.baiza.baize.bajan.bajra.bajri.bajus.baked.baken.bakes.bakra.balas.balds.baldy.baled.bales.balks.balky.balls.bally.balms.baloo.balsa.balti.balun.balus.bambi.banak.banco.bancs.banda.bandh.bands.bandy.baned.banes.bangs.bania.banks.banns.bants.bantu.banty.banya.bapus.barbe.barbs.barby.barca.barde.bardo.bards.bardy.bared.barer.bares.barfi.barfs.baric.barks.barky.barms.barmy.barns.barny.barps.barra.barre.barro.barry.barye.basan.based.basen.baser.bases.basho.basij.basks.bason.basse.bassi.basso.bassy.basta.basti.basto.basts.bated.bates.baths.batik.batta.batts.battu.bauds.bauks.baulk.baurs.bavin.bawds.bawks.bawls.bawns.bawrs.bawty.bayed.bayer.bayes.bayle.bayts.bazar.bazoo.beads.beaks.beaky.beals.beams.beamy.beano.beans.beany.beare.bears.beath.beats.beaty.beaus.beaut.beaux.bebop.becap.becke.becks.bedad.bedel.bedes.bedew.bedim.bedye.beedi.beefs.beeps.beers.beery.beets.befog.begad.begar.begem.begot.begum.beige.beigy.beins.bekah.belah.belar.belay.belee.belga.bells.belon.belts.bemad.bemas.bemix.bemud.bends.bendy.benes.benet.benga.benis.benne.benni.benny.bento.bents.benty.bepat.beray.beres.bergs.berko.berks.berme.berms.berob.beryl.besat.besaw.besee.beses.besit.besom.besot.besti.bests.betas.beted.betes.beths.betid.beton.betta.betty.bever.bevor.bevue.bevvy.bewet.bewig.bezes.bezil.bezzy.bhais.bhaji.bhang.bhats.bhels.bhoot.bhuna.bhuts.biach.biali.bialy.bibbs.bibes.biccy.bices.bided.bider.bides.bidet.bidis.bidon.bield.biers.biffo.biffs.biffy.bifid.bigae.biggs.biggy.bigha.bight.bigly.bigos.bijou.biked.biker.bikes.bikie.bilbo.bilby.biled.biles.bilgy.bilks.bills.bimah.bimas.bimbo.binal.bindi.binds.biner.bines.bings.bingy.binit.binks.bints.biogs.biont.biota.biped.bipod.birds.birks.birle.birls.biros.birrs.birse.birsy.bises.bisks.bisom.bitch.biter.bites.bitos.bitou.bitsy.bitte.bitts.bivia.bivvy.bizes.bizzo.bizzy.blabs.blads.blady.blaer.blaes.blaff.blags.blahs.blain.blams.blart.blase.blash.blate.blats.blatt.blaud.blawn.blaws.blays.blear.blebs.blech.blees.blent.blert.blest.blets.bleys.blimy.bling.blini.blins.bliny.blips.blist.blite.blits.blive.blobs.blocs.blogs.blook.bloop.blore.blots.blows.blowy.blubs.blude.bluds.bludy.blued.blues.bluet.bluey.bluid.blume.blunk.blurs.blype.boabs.boaks.boars.boart.boats.bobac.bobak.bobas.bobol.bobos.bocca.bocce.bocci.boche.bocks.boded.bodes.bodge.bodhi.bodle.boeps.boets.boeuf.boffo.boffs.bogan.bogey.boggy.bogie.bogle.bogue.bogus.bohea.bohos.boils.boing.boink.boite.boked.bokeh.bokes.bokos.bolar.bolas.bolds.boles.bolix.bolls.bolos.bolts.bolus.bomas.bombe.bombo.bombs.bonce.bonds.boned.boner.bones.bongs.bonie.bonks.bonne.bonny.bonza.bonze.booai.booay.boobs.boody.booed.boofy.boogy.boohs.books.booky.bools.booms.boomy.boong.boons.boord.boors.boose.boots.boppy.borak.boral.boras.borde.bords.bored.boree.borel.borer.bores.borgo.boric.borks.borms.borna.boron.borts.borty.bortz.bosie.bosks.bosky.boson.bosun.botas.botel.botes.bothy.botte.botts.botty.bouge.bouks.boult.bouns.bourd.bourg.bourn.bouse.bousy.bouts.bovid.bowat.bowed.bower.bowes.bowet.bowie.bowls.bowne.bowrs.bowse.boxed.boxen.boxes.boxla.boxty.boyar.boyau.boyed.boyfs.boygs.boyla.boyos.boysy.bozos.braai.brach.brack.bract.brads.braes.brags.brail.braks.braky.brame.brane.brank.brans.brant.brast.brats.brava.bravi.braws.braxy.brays.braza.braze.bream.brede.breds.breem.breer.brees.breid.breis.breme.brens.brent.brere.brers.breve.brews.breys.brier.bries.brigs.briki.briks.brill.brims.brins.brios.brise.briss.brith.brits.britt.brize.broch.brock.brods.brogh.brogs.brome.bromo.bronc.brond.brool.broos.brose.brosy.brows.brugh.bruin.bruit.brule.brume.brung.brusk.brust.bruts.buats.buaze.bubal.bubas.bubba.bubbe.bubby.bubus.buchu.bucko.bucks.bucku.budas.budis.budos.buffa.buffe.buffi.buffo.buffs.buffy.bufos.bufty.buhls.buhrs.buiks.buist.bukes.bulbs.bulgy.bulks.bulla.bulls.bulse.bumbo.bumfs.bumph.bumps.bumpy.bunas.bunce.bunco.bunde.bundh.bunds.bundt.bundu.bundy.bungs.bungy.bunia.bunje.bunjy.bunko.bunks.bunns.bunts.bunty.bunya.buoys.buppy.buran.buras.burbs.burds.buret.burfi.burgh.burgs.burin.burka.burke.burks.burls.burns.buroo.burps.burqa.burro.burrs.burry.bursa.burse.busby.buses.busks.busky.bussu.busti.busts.busty.buteo.butes.butle.butoh.butts.butty.butut.butyl.buzzy.bwana.bwazi.byded.bydes.byked.bykes.byres.byrls.byssi.bytes.byway.caaed.cabas.caber.cabob.caboc.cabre.cacas.cacks.cacky.cadee.cades.cadge.cadgy.cadie.cadis.cadre.caeca.caese.cafes.caffs.caged.cager.cages.cagot.cahow.caids.cains.caird.cajon.cajun.caked.cakes.cakey.calfs.calid.calif.calix.calks.calla.calls.calms.calmy.calos.calpa.calps.calve.calyx.caman.camas.cames.camis.camos.campi.campo.camps.campy.camus.caned.caneh.caner.canes.cangs.canid.canna.canns.canso.canst.canto.cants.canty.capas.caped.capes.capex.caphs.capiz.caple.capon.capos.capot.capri.capul.carap.carbo.carbs.carby.cardi.cards.cardy.cared.carer.cares.caret.carex.carks.carle.carls.carns.carny.carob.carom.caron.carpi.carps.carrs.carse.carta.carte.carts.carvy.casas.casco.cased.cases.casks.casky.casts.casus.cates.cauda.cauks.cauld.cauls.caums.caups.cauri.causa.cavas.caved.cavel.caver.caves.cavie.cawed.cawks.caxon.ceaze.cebid.cecal.cecum.ceded.ceder.cedes.cedis.ceiba.ceili.ceils.celeb.cella.celli.cells.celom.celts.cense.cento.cents.centu.ceorl.cepes.cerci.cered.ceres.cerge.ceria.ceric.cerne.ceroc.ceros.certs.certy.cesse.cesta.cesti.cetes.cetyl.cezve.chace.chack.chaco.chado.chads.chaft.chais.chals.chams.chana.chang.chank.chape.chaps.chapt.chara.chare.chark.charr.chars.chary.chats.chave.chavs.chawk.chaws.chaya.chays.cheep.chefs.cheka.chela.chelp.chemo.chems.chere.chert.cheth.chevy.chews.chewy.chiao.chias.chibs.chica.chich.chico.chics.chiel.chiks.chile.chimb.chimo.chimp.chine.ching.chink.chino.chins.chips.chirk.chirl.chirm.chiro.chirr.chirt.chiru.chits.chive.chivs.chivy.chizz.choco.chocs.chode.chogs.choil.choko.choky.chola.choli.cholo.chomp.chons.choof.chook.choom.choon.chops.chota.chott.chout.choux.chowk.chows.chubs.chufa.chuff.chugs.chums.churl.churr.chuse.chuts.chyle.chyme.chynd.cibol.cided.cides.ciels.ciggy.cilia.cills.cimar.cimex.cinct.cines.cinqs.cions.cippi.circs.cires.cirls.cirri.cisco.cissy.cists.cital.cited.citer.cites.cives.civet.civie.civvy.clach.clade.clads.claes.clags.clame.clams.clans.claps.clapt.claro.clart.clary.clast.clats.claut.clave.clavi.claws.clays.cleck.cleek.cleep.clefs.clegs.cleik.clems.clepe.clept.cleve.clews.clied.clies.clift.clime.cline.clint.clipe.clips.clipt.clits.cloam.clods.cloff.clogs.cloke.clomb.clomp.clonk.clons.cloop.cloot.clops.clote.clots.clour.clous.clows.cloye.cloys.cloze.clubs.clues.cluey.clunk.clype.cnida.coact.coady.coala.coals.coaly.coapt.coarb.coate.coati.coats.cobbs.cobby.cobia.coble.cobza.cocas.cocci.cocco.cocks.cocky.cocos.codas.codec.coded.coden.coder.codes.codex.codon.coeds.coffs.cogie.cogon.cogue.cohab.cohen.cohoe.cohog.cohos.coifs.coign.coils.coins.coirs.coits.coked.cokes.colas.colby.colds.coled.coles.coley.colic.colin.colls.colly.colog.colts.colza.comae.comal.comas.combe.combi.combo.combs.comby.comer.comes.comix.commo.comms.commy.compo.comps.compt.comte.comus.coned.cones.coney.confs.conga.conge.congo.conia.conin.conks.conky.conne.conns.conte.conto.conus.convo.cooch.cooed.cooee.cooer.cooey.coofs.cooks.cooky.cools.cooly.coomb.cooms.coomy.coons.coops.coopt.coost.coots.cooze.copal.copay.coped.copen.coper.copes.coppy.copra.copsy.coqui.coram.corbe.corby.cords.cored.cores.corey.corgi.coria.corks.corky.corms.corni.corno.corns.cornu.corps.corse.corso.cosec.cosed.coses.coset.cosey.cosie.costa.coste.costs.cotan.coted.cotes.coths.cotta.cotts.coude.coups.courb.courd.coure.cours.couta.couth.coved.coves.covin.cowal.cowan.cowed.cowks.cowls.cowps.cowry.coxae.coxal.coxed.coxes.coxib.coyau.coyed.coyer.coypu.cozed.cozen.cozes.cozey.cozie.craal.crabs.crags.craic.craig.crake.crame.crams.crans.crape.craps.crapy.crare.craws.crays.creds.creel.crees.crems.crena.creps.crepy.crewe.crews.crias.cribs.cries.crims.crine.crios.cripe.crips.crise.crith.crits.croci.crocs.croft.crogs.cromb.crome.cronk.crons.crool.croon.crops.crore.crost.crout.crows.croze.cruck.crudo.cruds.crudy.crues.cruet.cruft.crunk.cruor.crura.cruse.crusy.cruve.crwth.cryer.ctene.cubby.cubeb.cubed.cuber.cubes.cubit.cuddy.cuffo.cuffs.cuifs.cuing.cuish.cuits.cukes.culch.culet.culex.culls.cully.culms.culpa.culti.cults.culty.cumec.cundy.cunei.cunit.cunts.cupel.cupid.cuppa.cuppy.curat.curbs.curch.curds.curdy.cured.curer.cures.curet.curfs.curia.curie.curli.curls.curns.curny.currs.cursi.curst.cusec.cushy.cusks.cusps.cuspy.cusso.cusum.cutch.cuter.cutes.cutey.cutin.cutis.cutto.cutty.cutup.cuvee.cuzes.cwtch.cyano.cyans.cycad.cycas.cyclo.cyder.cylix.cymae.cymar.cymas.cymes.cymol.cysts.cytes.cyton.czars.daals.dabba.daces.dacha.dacks.dadah.dadas.dados.daffs.daffy.dagga.daggy.dagos.dahls.daiko.daine.daint.daker.daled.dales.dalis.dalle.dalts.daman.damar.dames.damme.damns.damps.dampy.dancy.dangs.danio.danks.danny.dants.daraf.darbs.darcy.dared.darer.dares.darga.dargs.daric.daris.darks.darky.darns.darre.darts.darzi.dashi.dashy.datal.dated.dater.dates.datos.datto.daube.daubs.dauby.dauds.dault.daurs.dauts.daven.davit.dawah.dawds.dawed.dawen.dawks.dawns.dawts.dayan.daych.daynt.dazed.dazer.dazes.deads.deair.deals.deans.deare.dearn.dears.deary.deash.deave.deaws.deawy.debag.debby.debel.debes.debts.debud.debur.debus.debye.decad.decaf.decan.decko.decks.decos.dedal.deeds.deedy.deely.deems.deens.deeps.deere.deers.deets.deeve.deevs.defat.deffo.defis.defog.degas.degum.degus.deice.deids.deify.deils.deism.deist.deked.dekes.dekko.deled.deles.delfs.delft.delis.dells.delly.delos.delph.delts.deman.demes.demic.demit.demob.demoi.demos.dempt.denar.denay.dench.denes.denet.denis.dents.deoxy.derat.deray.dered.deres.derig.derma.derms.derns.derny.deros.derro.derry.derth.dervs.desex.deshi.desis.desks.desse.devas.devel.devis.devon.devos.devot.dewan.dewar.dewax.dewed.dexes.dexie.dhaba.dhaks.dhals.dhikr.dhobi.dhole.dholl.dhols.dhoti.dhows.dhuti.diact.dials.diane.diazo.dibbs.diced.dicer.dices.dicht.dicks.dicky.dicot.dicta.dicts.dicty.diddy.didie.didos.didst.diebs.diels.diene.diets.diffs.dight.dikas.diked.diker.dikes.dikey.dildo.dilli.dills.dimbo.dimer.dimes.dimps.dinar.dined.dines.dinge.dings.dinic.dinks.dinky.dinna.dinos.dints.diols.diota.dippy.dipso.diram.direr.dirke.dirks.dirls.dirts.disas.disci.discs.dishy.disks.disme.dital.ditas.dited.dites.ditsy.ditts.ditzy.divan.divas.dived.dives.divis.divna.divos.divot.divvy.diwan.dixie.dixit.diyas.dizen.djinn.djins.doabs.doats.dobby.dobes.dobie.dobla.dobra.dobro.docht.docks.docos.docus.doddy.dodos.doeks.doers.doest.doeth.doffs.dogan.doges.dogey.doggo.doggy.dogie.dohyo.doilt.doily.doits.dojos.dolce.dolci.doled.doles.dolia.dolls.dolma.dolor.dolos.dolts.domal.domed.domes.domic.donah.donas.donee.doner.donga.dongs.donko.donna.donne.donny.donsy.doobs.dooce.doody.dooks.doole.dools.dooly.dooms.doomy.doona.doorn.doors.doozy.dopas.doped.doper.dopes.dorad.dorba.dorbs.doree.dores.doric.doris.dorks.dorky.dorms.dormy.dorps.dorrs.dorsa.dorse.dorts.dorty.dosai.dosas.dosed.doseh.doser.doses.dosha.dotal.doted.doter.dotes.dotty.douar.douce.doucs.douks.doula.douma.doums.doups.doura.douse.douts.doved.doven.dover.doves.dovie.dowar.dowds.dowed.dower.dowie.dowle.dowls.dowly.downa.downs.dowps.dowse.dowts.doxed.doxes.doxie.doyen.doyly.dozed.dozer.dozes.drabs.drack.draco.draff.drags.drail.drams.drant.draps.drats.drave.draws.drays.drear.dreck.dreed.dreer.drees.dregs.dreks.drent.drere.drest.dreys.dribs.drice.dries.drily.drips.dript.droid.droil.droke.drole.drome.drony.droob.droog.drook.drops.dropt.drouk.drows.drubs.drugs.drums.drupe.druse.drusy.druxy.dryad.dryas.dsobo.dsomo.duads.duals.duans.duars.dubbo.ducal.ducat.duces.ducks.ducky.ducts.duddy.duded.dudes.duels.duets.duett.duffs.dufus.duing.duits.dukas.duked.dukes.dukka.dulce.dules.dulia.dulls.dulse.dumas.dumbo.dumbs.dumka.dumky.dumps.dunam.dunch.dunes.dungs.dungy.dunks.dunno.dunny.dunsh.dunts.duomi.duomo.duped.duper.dupes.duple.duply.duppy.dural.duras.dured.dures.durgy.durns.duroc.duros.duroy.durra.durrs.durry.durst.durum.durzi.dusks.dusts.duxes.dwaal.dwale.dwalm.dwams.dwang.dwaum.dweeb.dwile.dwine.dyads.dyers.dyked.dykes.dykey.dykon.dynel.dynes.dzhos.eagre.ealed.eales.eaned.eards.eared.earls.earns.earnt.earst.eased.easer.eases.easle.easts.eathe.eaved.eaves.ebbed.ebbet.ebons.ebook.ecads.eched.eches.echos.ecrus.edema.edged.edger.edges.edile.edits.educe.educt.eejit.eensy.eeven.eevns.effed.egads.egers.egest.eggar.egged.egger.egmas.ehing.eider.eidos.eigne.eiked.eikon.eilds.eisel.ejido.ekkas.elain.eland.elans.elchi.eldin.elemi.elfed.eliad.elint.elmen.eloge.elogy.eloin.elops.elpee.elsin.elute.elvan.elven.elver.elves.emacs.embar.embay.embog.embow.embox.embus.emeer.emend.emerg.emery.emeus.emics.emirs.emits.emmas.emmer.emmet.emmew.emmys.emoji.emong.emote.emove.empts.emule.emure.emyde.emyds.enarm.enate.ended.ender.endew.endue.enews.enfix.eniac.enlit.enmew.ennog.enoki.enols.enorm.enows.enrol.ensew.ensky.entia.enure.enurn.envoi.enzym.eorls.eosin.epact.epees.ephah.ephas.ephod.ephor.epics.epode.epopt.epris.eques.equid.erbia.erevs.ergon.ergos.ergot.erhus.erica.erick.erics.ering.erned.ernes.erose.erred.erses.eruct.erugo.eruvs.erven.ervil.escar.escot.esile.eskar.esker.esnes.esses.estoc.estop.estro.etage.etape.etats.etens.ethal.ethne.ethyl.etics.etnas.ettin.ettle.etuis.etwee.etyma.eughs.euked.eupad.euros.eusol.evens.evert.evets.evhoe.evils.evite.evohe.ewers.ewest.ewhow.ewked.exams.exeat.execs.exeem.exeme.exfil.exies.exine.exing.exits.exode.exome.exons.expat.expos.exude.exuls.exurb.eyass.eyers.eyots.eyras.eyres.eyrie.eyrir.ezine.fabby.faced.facer.faces.facia.facta.facts.faddy.faded.fader.fades.fadge.fados.faena.faery.faffs.faffy.faggy.fagin.fagot.faiks.fails.faine.fains.fairs.faked.faker.fakes.fakey.fakie.fakir.falaj.falls.famed.fames.fanal.fands.fanes.fanga.fango.fangs.fanks.fanon.fanos.fanum.faqir.farad.farci.farcy.fards.fared.farer.fares.farle.farls.farms.faros.farro.farse.farts.fasci.fasti.fasts.fated.fates.fatly.fatso.fatwa.faugh.fauld.fauns.faurd.fauts.fauve.favas.favel.faver.faves.favus.fawns.fawny.faxed.faxes.fayed.fayer.fayne.fayre.fazed.fazes.feals.feare.fears.feart.fease.feats.feaze.feces.fecht.fecit.fecks.fedex.feebs.feeds.feels.feens.feers.feese.feeze.fehme.feint.feist.felch.felid.fells.felly.felts.felty.femal.femes.femmy.fends.fendy.fenis.fenks.fenny.fents.feods.feoff.ferer.feres.feria.ferly.fermi.ferms.ferns.ferny.fesse.festa.fests.festy.fetas.feted.fetes.fetor.fetta.fetts.fetwa.feuar.feuds.feued.feyed.feyer.feyly.fezes.fezzy.fiars.fiats.fibro.fices.fiche.fichu.ficin.ficos.fides.fidge.fidos.fiefs.fient.fiere.fiers.fiest.fifed.fifer.fifes.fifis.figgy.figos.fiked.fikes.filar.filch.filed.files.filii.filks.fille.fillo.fills.filmi.films.filos.filum.finca.finds.fined.fines.finis.finks.finny.finos.fiord.fiqhs.fique.fired.firer.fires.firie.firks.firms.firns.firry.firth.fiscs.fisks.fists.fisty.fitch.fitly.fitna.fitte.fitts.fiver.fives.fixed.fixes.fixit.fjeld.flabs.flaff.flags.flaks.flamm.flams.flamy.flane.flans.flaps.flary.flats.flava.flawn.flaws.flawy.flaxy.flays.fleam.fleas.fleek.fleer.flees.flegs.fleme.fleur.flews.flexi.flexo.fleys.flics.flied.flies.flimp.flims.flips.flirs.flisk.flite.flits.flitt.flobs.flocs.floes.flogs.flong.flops.flors.flory.flosh.flota.flote.flows.flubs.flued.flues.fluey.fluky.flump.fluor.flurr.fluty.fluyt.flyby.flype.flyte.foals.foams.foehn.fogey.fogie.fogle.fogou.fohns.foids.foils.foins.folds.foley.folia.folic.folie.folks.folky.fomes.fonda.fonds.fondu.fones.fonly.fonts.foods.foody.fools.foots.footy.foram.forbs.forby.fordo.fords.forel.fores.forex.forks.forky.forme.forms.forts.forza.forze.fossa.fosse.fouat.fouds.fouer.fouet.foule.fouls.fount.fours.fouth.fovea.fowls.fowth.foxed.foxes.foxie.foyle.foyne.frabs.frack.fract.frags.fraim.franc.frape.fraps.frass.frate.frati.frats.fraus.frays.frees.freet.freit.fremd.frena.freon.frere.frets.fribs.frier.fries.frigs.frise.frist.frith.frits.fritt.frize.frizz.froes.frogs.frons.frore.frorn.frory.frosh.frows.frowy.frugs.frump.frush.frust.fryer.fubar.fubby.fubsy.fucks.fucus.fuddy.fudgy.fuels.fuero.fuffs.fuffy.fugal.fuggy.fugie.fugio.fugle.fugly.fugus.fujis.fulls.fumed.fumer.fumes.fumet.fundi.funds.fundy.fungo.fungs.funks.fural.furan.furca.furls.furol.furrs.furth.furze.furzy.fused.fusee.fusel.fuses.fusil.fusks.fusts.fusty.futon.fuzed.fuzee.fuzes.fuzil.fyces.fyked.fykes.fyles.fyrds.fytte.gabba.gabby.gable.gaddi.gades.gadge.gadid.gadis.gadje.gadjo.gadso.gaffs.gaged.gager.gages.gaids.gains.gairs.gaita.gaits.gaitt.gajos.galah.galas.galax.galea.galed.gales.galls.gally.galop.galut.galvo.gamas.gamay.gamba.gambe.gambo.gambs.gamed.games.gamey.gamic.gamin.gamme.gammy.gamps.ganch.gandy.ganef.ganev.gangs.ganja.ganof.gants.gaols.gaped.gaper.gapes.gapos.gappy.garbe.garbo.garbs.garda.gares.garis.garms.garni.garre.garth.garum.gases.gasps.gaspy.gasts.gatch.gated.gater.gates.gaths.gator.gauch.gaucy.gauds.gauje.gault.gaums.gaumy.gaups.gaurs.gauss.gauzy.gavot.gawcy.gawds.gawks.gawps.gawsy.gayal.gazal.gazar.gazed.gazes.gazon.gazoo.geals.geans.geare.gears.geats.gebur.gecks.geeks.geeps.geest.geist.geits.gelds.gelee.gelid.gelly.gelts.gemel.gemma.gemmy.gemot.genal.genas.genes.genet.genic.genii.genip.genny.genoa.genom.genro.gents.genty.genua.genus.geode.geoid.gerah.gerbe.geres.gerle.germs.germy.gerne.gesse.gesso.geste.gests.getas.getup.geums.geyan.geyer.ghast.ghats.ghaut.ghazi.ghees.ghest.ghyll.gibed.gibel.giber.gibes.gibli.gibus.gifts.gigas.gighe.gigot.gigue.gilas.gilds.gilet.gills.gilly.gilpy.gilts.gimel.gimme.gimps.gimpy.ginch.ginge.gings.ginks.ginny.ginzo.gipon.gippo.gippy.girds.girls.girns.giron.giros.girrs.girsh.girts.gismo.gisms.gists.gitch.gites.giust.gived.gives.gizmo.glace.glads.glady.glaik.glair.glams.glans.glary.glaum.glaur.glazy.gleba.glebe.gleby.glede.gleds.gleed.gleek.glees.gleet.gleis.glens.glent.gleys.glial.glias.glibs.gliff.glift.glike.glime.glims.glisk.glits.glitz.gloam.globi.globs.globy.glode.glogg.gloms.gloop.glops.glost.glout.glows.gloze.glued.gluer.glues.gluey.glugs.glume.glums.gluon.glute.gluts.gnarl.gnarr.gnars.gnats.gnawn.gnaws.gnows.goads.goafs.goals.goary.goats.goaty.goban.gobar.gobbi.gobbo.gobby.gobis.gobos.godet.godso.goels.goers.goest.goeth.goety.gofer.goffs.gogga.gogos.goier.gojis.golds.goldy.goles.golfs.golpe.golps.gombo.gomer.gompa.gonch.gonef.gongs.gonia.gonif.gonks.gonna.gonof.gonys.gonzo.gooby.goods.goofs.googs.gooks.gooky.goold.gools.gooly.goons.goony.goops.goopy.goors.goory.goosy.gopak.gopik.goral.goras.gored.gores.goris.gorms.gormy.gorps.gorse.gorsy.gosht.gosse.gotch.goths.gothy.gotta.gouch.gouks.goura.gouts.gouty.gowan.gowds.gowfs.gowks.gowls.gowns.goxes.goyim.goyle.graal.grabs.grads.graff.graip.grama.grame.gramp.grams.grana.grans.grapy.gravs.grays.grebe.grebo.grece.greek.grees.grege.grego.grein.grens.grese.greve.grews.greys.grice.gride.grids.griff.grift.grigs.grike.grins.griot.grips.gript.gripy.grise.grist.grisy.grith.grits.grize.groat.grody.grogs.groks.groma.grone.groof.grosz.grots.grouf.grovy.grows.grrls.grrrl.grubs.grued.grues.grufe.grume.grump.grund.gryce.gryde.gryke.grype.grypt.guaco.guana.guano.guans.guars.gucks.gucky.gudes.guffs.gugas.guids.guimp.guiro.gulag.gular.gulas.gules.gulet.gulfs.gulfy.gulls.gulph.gulps.gulpy.gumma.gummi.gumps.gundy.gunge.gungy.gunks.gunky.gunny.guqin.gurdy.gurge.gurls.gurly.gurns.gurry.gursh.gurus.gushy.gusla.gusle.gusli.gussy.gusts.gutsy.gutta.gutty.guyed.guyle.guyot.guyse.gwine.gyals.gyans.gybed.gybes.gyeld.gymps.gynae.gynie.gynny.gynos.gyoza.gypos.gyppo.gyppy.gyral.gyred.gyres.gyron.gyros.gyrus.gytes.gyved.gyves.haafs.haars.hable.habus.hacek.hacks.hadal.haded.hades.hadji.hadst.haems.haets.haffs.hafiz.hafts.haggs.hahas.haick.haika.haiks.haiku.hails.haily.hains.haint.hairs.haith.hajes.hajis.hajji.hakam.hakas.hakea.hakes.hakim.hakus.halal.haled.haler.hales.halfa.halfs.halid.hallo.halls.halma.halms.halon.halos.halse.halts.halva.halwa.hamal.hamba.hamed.hames.hammy.hamza.hanap.hance.hanch.hands.hangi.hangs.hanks.hanky.hansa.hanse.hants.haole.haoma.hapax.haply.happi.hapus.haram.hards.hared.hares.harim.harks.harls.harms.harns.haros.harps.harts.hashy.hasks.hasps.hasta.hated.hates.hatha.hauds.haufs.haugh.hauld.haulm.hauls.hault.hauns.hause.haver.haves.hawed.hawks.hawms.hawse.hayed.hayer.hayey.hayle.hazan.hazed.hazer.hazes.heads.heald.heals.heame.heaps.heapy.heare.hears.heast.heats.heben.hebes.hecht.hecks.heder.hedgy.heeds.heedy.heels.heeze.hefte.hefts.heids.heigh.heils.heirs.hejab.hejra.heled.heles.helio.hells.helms.helos.helot.helps.helve.hemal.hemes.hemic.hemin.hemps.hempy.hench.hends.henge.henna.henny.henry.hents.hepar.herbs.herby.herds.heres.herls.herma.herms.herns.heros.herry.herse.hertz.herye.hesps.hests.hetes.heths.heuch.heugh.hevea.hewed.hewer.hewgh.hexad.hexed.hexer.hexes.hexyl.heyed.hiant.hicks.hided.hider.hides.hiems.highs.hight.hijab.hijra.hiked.hiker.hikes.hikoi.hilar.hilch.hillo.hills.hilts.hilum.hilus.himbo.hinau.hinds.hings.hinky.hinny.hints.hiois.hiply.hired.hiree.hirer.hires.hissy.hists.hithe.hived.hiver.hives.hizen.hoaed.hoagy.hoars.hoary.hoast.hobos.hocks.hocus.hodad.hodja.hoers.hogan.hogen.hoggs.hoghs.hohed.hoick.hoied.hoiks.hoing.hoise.hokas.hoked.hokes.hokey.hokis.hokku.hokum.holds.holed.holes.holey.holks.holla.hollo.holme.holms.holon.holos.holts.homas.homed.homes.homey.homie.homme.homos.honan.honda.honds.honed.honer.hones.hongi.hongs.honks.honky.hooch.hoods.hoody.hooey.hoofs.hooka.hooks.hooky.hooly.hoons.hoops.hoord.hoors.hoosh.hoots.hooty.hoove.hopak.hoped.hoper.hopes.hoppy.horah.horal.horas.horis.horks.horme.horns.horst.horsy.hosed.hosel.hosen.hoser.hoses.hosey.hosta.hosts.hotch.hoten.hotty.houff.houfs.hough.houri.hours.houts.hovea.hoved.hoven.hoves.howbe.howes.howff.howfs.howks.howls.howre.howso.hoxed.hoxes.hoyas.hoyed.hoyle.hubby.hucks.hudna.hudud.huers.huffs.huffy.huger.huggy.huhus.huias.hulas.hules.hulks.hulky.hullo.hulls.hully.humas.humfs.humic.humps.humpy.hunks.hunts.hurds.hurls.hurly.hurra.hurst.hurts.hushy.husks.husos.hutia.huzza.huzzy.hwyls.hydra.hyens.hygge.hying.hykes.hylas.hyleg.hyles.hylic.hymns.hynde.hyoid.hyped.hypes.hypha.hyphy.hypos.hyrax.hyson.hythe.iambi.iambs.ibrik.icers.iched.iches.ichor.icier.icker.ickle.icons.ictal.ictic.ictus.idant.ideas.idees.ident.idled.idles.idola.idols.idyls.iftar.igapo.igged.iglus.ihram.ikans.ikats.ikons.ileac.ileal.ileum.ileus.iliad.ilial.ilium.iller.illth.imago.imams.imari.imaum.imbar.imbed.imide.imido.imids.imine.imino.immew.immit.immix.imped.impis.impot.impro.imshi.imshy.inapt.inarm.inbye.incel.incle.incog.incus.incut.indew.india.indie.indol.indow.indri.indue.inerm.infix.infos.infra.ingan.ingle.inion.inked.inker.inkle.inned.innit.inorb.inrun.inset.inspo.intel.intil.intis.intra.inula.inure.inurn.inust.invar.inwit.iodic.iodid.iodin.iotas.ippon.irade.irids.iring.irked.iroko.irone.irons.isbas.ishes.isled.isles.isnae.issei.istle.items.ither.ivied.ivies.ixias.ixnay.ixora.ixtle.izard.izars.izzat.jaaps.jabot.jacal.jacks.jacky.jaded.jades.jafas.jaffa.jagas.jager.jaggs.jaggy.jagir.jagra.jails.jaker.jakes.jakey.jalap.jalop.jambe.jambo.jambs.jambu.james.jammy.jamon.janes.janns.janny.janty.japan.japed.japer.japes.jarks.jarls.jarps.jarta.jarul.jasey.jaspe.jasps.jatos.jauks.jaups.javas.javel.jawan.jawed.jaxie.jeans.jeats.jebel.jedis.jeels.jeely.jeeps.jeers.jeeze.jefes.jeffs.jehad.jehus.jelab.jello.jells.jembe.jemmy.jenny.jeons.jerid.jerks.jerry.jesse.jests.jesus.jetes.jeton.jeune.jewed.jewie.jhala.jiaos.jibba.jibbs.jibed.jiber.jibes.jiffs.jiggy.jigot.jihad.jills.jilts.jimmy.jimpy.jingo.jinks.jinne.jinni.jinns.jirds.jirga.jirre.jisms.jived.jiver.jives.jivey.jnana.jobed.jobes.jocko.jocks.jocky.jocos.jodel.joeys.johns.joins.joked.jokes.jokey.jokol.joled.joles.jolls.jolts.jolty.jomon.jomos.jones.jongs.jonty.jooks.joram.jorum.jotas.jotty.jotun.joual.jougs.jouks.joule.jours.jowar.jowed.jowls.jowly.joyed.jubas.jubes.jucos.judas.judgy.judos.jugal.jugum.jujus.juked.jukes.jukus.julep.jumar.jumby.jumps.junco.junks.junky.jupes.jupon.jural.jurat.jurel.jures.justs.jutes.jutty.juves.juvie.kaama.kabab.kabar.kabob.kacha.kacks.kadai.kades.kadis.kafir.kagos.kagus.kahal.kaiak.kaids.kaies.kaifs.kaika.kaiks.kails.kaims.kaing.kains.kakas.kakis.kalam.kales.kalif.kalis.kalpa.kamas.kames.kamik.kamis.kamme.kanae.kanas.kandy.kaneh.kanes.kanga.kangs.kanji.kants.kanzu.kaons.kapas.kaphs.kapok.kapow.kapus.kaput.karas.karat.karks.karns.karoo.karos.karri.karst.karsy.karts.karzy.kasha.kasme.katal.katas.katis.katti.kaugh.kauri.kauru.kaury.kaval.kavas.kawas.kawau.kawed.kayle.kayos.kazis.kazoo.kbars.kebar.kebob.kecks.kedge.kedgy.keech.keefs.keeks.keels.keema.keeno.keens.keeps.keets.keeve.kefir.kehua.keirs.kelep.kelim.kells.kelly.kelps.kelpy.kelts.kelty.kembo.kembs.kemps.kempt.kempy.kenaf.kench.kendo.kenos.kente.kents.kepis.kerbs.kerel.kerfs.kerky.kerma.kerne.kerns.keros.kerry.kerve.kesar.kests.ketas.ketch.ketes.ketol.kevel.kevil.kexes.keyed.keyer.khadi.khafs.khans.khaph.khats.khaya.khazi.kheda.kheth.khets.khoja.khors.khoum.khuds.kiaat.kiack.kiang.kibbe.kibbi.kibei.kibes.kibla.kicks.kicky.kiddo.kiddy.kidel.kidge.kiefs.kiers.kieve.kievs.kight.kikes.kikoi.kiley.kilim.kills.kilns.kilos.kilps.kilts.kilty.kimbo.kinas.kinda.kinds.kindy.kines.kings.kinin.kinks.kinos.kiore.kipes.kippa.kipps.kirby.kirks.kirns.kirri.kisan.kissy.kists.kited.kiter.kites.kithe.kiths.kitul.kivas.kiwis.klang.klaps.klett.klick.klieg.kliks.klong.kloof.kluge.klutz.knags.knaps.knarl.knars.knaur.knawe.knees.knell.knish.knits.knive.knobs.knops.knosp.knots.knout.knowe.knows.knubs.knurl.knurr.knurs.knuts.koans.koaps.koban.kobos.koels.koffs.kofta.kogal.kohas.kohen.kohls.koine.kojis.kokam.kokas.koker.kokra.kokum.kolas.kolos.kombu.konbu.kondo.konks.kooks.kooky.koori.kopek.kophs.kopje.koppa.korai.koras.korat.kores.korma.koros.korun.korus.koses.kotch.kotos.kotow.koura.kraal.krabs.kraft.krais.krait.krang.krans.kranz.kraut.krays.kreep.kreng.krewe.krona.krone.kroon.krubi.krunk.ksars.kubie.kudos.kudus.kudzu.kufis.kugel.kuias.kukri.kukus.kulak.kulan.kulas.kulfi.kumis.kumys.kuris.kurre.kurta.kurus.kusso.kutas.kutch.kutis.kutus.kuzus.kvass.kvell.kwela.kyack.kyaks.kyang.kyars.kyats.kybos.kydst.kyles.kylie.kylin.kylix.kyloe.kynde.kynds.kypes.kyrie.kytes.kythe.laari.labda.labia.labis.labra.laced.lacer.laces.lacet.lacey.lacks.laddy.laded.lader.lades.laers.laevo.lagan.lahal.lahar.laich.laics.laids.laigh.laika.laiks.laird.lairs.lairy.laith.laity.laked.laker.lakes.lakhs.lakin.laksa.laldy.lalls.lamas.lambs.lamby.lamed.lamer.lames.lamia.lammy.lamps.lanai.lanas.lanch.lande.lands.lanes.lanks.lants.lapin.lapis.lapje.larch.lards.lardy.laree.lares.largo.laris.larks.larky.larns.larnt.larum.lased.laser.lases.lassi.lassu.lassy.lasts.latah.lated.laten.latex.lathi.laths.lathy.latke.latus.lauan.lauch.lauds.laufs.laund.laura.laval.lavas.laved.laver.laves.lavra.lavvy.lawed.lawer.lawin.lawks.lawns.lawny.laxed.laxer.laxes.laxly.layed.layin.layup.lazar.lazed.lazes.lazos.lazzi.lazzo.leads.leady.leafs.leaks.leams.leans.leany.leaps.leare.lears.leary.leats.leavy.leaze.leben.leccy.ledes.ledgy.ledum.leear.leeks.leeps.leers.leese.leets.leeze.lefte.lefts.leger.leges.legge.leggo.legit.lehrs.lehua.leirs.leish.leman.lemed.lemel.lemes.lemma.lemme.lends.lenes.lengs.lenis.lenos.lense.lenti.lento.leone.lepid.lepra.lepta.lered.leres.lerps.lesbo.leses.lests.letch.lethe.letup.leuch.leuco.leuds.leugh.levas.levee.leves.levin.levis.lewis.lexes.lexis.lezes.lezza.lezzy.liana.liane.liang.liard.liars.liart.liber.libra.libri.lichi.licht.licit.licks.lidar.lidos.liefs.liens.liers.lieus.lieve.lifer.lifes.lifts.ligan.liger.ligge.ligne.liked.liker.likes.likin.lills.lilos.lilts.liman.limas.limax.limba.limbi.limbs.limby.limed.limen.limes.limey.limma.limns.limos.limpa.limps.linac.linch.linds.lindy.lined.lines.liney.linga.lings.lingy.linin.links.linky.linns.linny.linos.lints.linty.linum.linux.lions.lipas.lipes.lipin.lipos.lippy.liras.lirks.lirot.lisks.lisle.lisps.lists.litai.litas.lited.liter.lites.litho.liths.litre.lived.liven.lives.livor.livre.llano.loach.loads.loafs.loams.loans.loast.loave.lobar.lobed.lobes.lobos.lobus.loche.lochs.locie.locis.locks.locos.locum.loden.lodes.loess.lofts.logan.loges.loggy.logia.logie.logoi.logon.logos.lohan.loids.loins.loipe.loirs.lokes.lolls.lolly.lolog.lomas.lomed.lomes.loner.longa.longe.longs.looby.looed.looey.loofa.loofs.looie.looks.looky.looms.loons.loony.loops.loord.loots.loped.loper.lopes.loppy.loral.loran.lords.lordy.lorel.lores.loric.loris.losed.losel.losen.loses.lossy.lotah.lotas.lotes.lotic.lotos.lotsa.lotta.lotte.lotto.lotus.loued.lough.louie.louis.louma.lound.louns.loupe.loups.loure.lours.loury.louts.lovat.loved.loves.lovey.lovie.lowan.lowed.lowes.lownd.lowne.lowns.lowps.lowry.lowse.lowts.loxed.loxes.lozen.luach.luaus.lubed.lubes.lubra.luces.lucks.lucre.ludes.ludic.ludos.luffa.luffs.luged.luger.luges.lulls.lulus.lumas.lumbi.lumme.lummy.lumps.lunas.lunes.lunet.lungi.lungs.lunks.lunts.lupin.lured.lurer.lures.lurex.lurgi.lurgy.lurks.lurry.lurve.luser.lushy.lusks.lusts.lusus.lutea.luted.luter.lutes.luvvy.luxed.luxer.luxes.lweis.lyams.lyard.lyart.lyase.lycea.lycee.lycra.lymes.lynes.lyres.lysed.lyses.lysin.lysis.lysol.lyssa.lyted.lytes.lythe.lytic.lytta.maaed.maare.maars.mabes.macas.maced.macer.maces.mache.machi.machs.macks.macle.macon.madge.madid.madre.maerl.mafic.mages.maggs.magot.magus.mahoe.mahua.mahwa.maids.maiko.maiks.maile.maill.mails.maims.mains.maire.mairs.maise.maist.makar.makes.makis.makos.malam.malar.malas.malax.males.malic.malik.malis.malls.malms.malmy.malts.malty.malus.malva.malwa.mamas.mamba.mamee.mamey.mamie.manas.manat.mandi.maneb.maned.maneh.manes.manet.mangs.manis.manky.manna.manos.manse.manta.manto.manty.manul.manus.mapau.maqui.marae.marah.maras.marcs.mardy.mares.marge.margs.maria.marid.marka.marks.marle.marls.marly.marms.maron.maror.marra.marri.marse.marts.marvy.masas.mased.maser.mases.mashy.masks.massa.massy.masts.masty.masus.matai.mated.mater.mates.maths.matin.matlo.matte.matts.matza.matzo.mauby.mauds.mauls.maund.mauri.mausy.mauts.mauzy.maven.mavie.mavin.mavis.mawed.mawks.mawky.mawns.mawrs.maxed.maxes.maxis.mayan.mayas.mayed.mayos.mayst.mazed.mazer.mazes.mazey.mazut.mbira.meads.meals.meane.means.meany.meare.mease.meath.meats.mebos.mechs.mecks.medii.medle.meeds.meers.meets.meffs.meins.meint.meiny.meith.mekka.melas.melba.melds.melic.melik.mells.melts.melty.memes.memos.menad.mends.mened.menes.menge.mengs.mensa.mense.mensh.menta.mento.menus.meous.meows.merch.mercs.merde.mered.merel.merer.meres.meril.meris.merks.merle.merls.merse.mesal.mesas.mesel.meses.meshy.mesic.mesne.meson.messy.mesto.meted.metes.metho.meths.metic.metif.metis.metol.metre.meuse.meved.meves.mewed.mewls.meynt.mezes.mezze.mezzo.mhorr.miaou.miaow.miasm.miaul.micas.miche.micht.micks.micky.micos.micra.middy.midgy.midis.miens.mieve.miffs.miffy.mifty.miggs.mihas.mihis.miked.mikes.mikra.mikva.milch.milds.miler.miles.milfs.milia.milko.milks.mille.mills.milor.milos.milpa.milts.milty.miltz.mimed.mimeo.mimer.mimes.mimsy.minae.minar.minas.mincy.minds.mined.mines.minge.mings.mingy.minis.minke.minks.minny.minos.mints.mired.mires.mirex.mirid.mirin.mirks.mirky.mirly.miros.mirvs.mirza.misch.misdo.mises.misgo.misos.missa.mists.misty.mitch.miter.mites.mitis.mitre.mitts.mixed.mixen.mixer.mixes.mixte.mixup.mizen.mizzy.mneme.moans.moats.mobby.mobes.mobey.mobie.moble.mochi.mochs.mochy.mocks.moder.modes.modge.modii.modus.moers.mofos.moggy.mohel.mohos.mohrs.mohua.mohur.moile.moils.moira.moire.moits.mojos.mokes.mokis.mokos.molal.molas.molds.moled.moles.molla.molls.molly.molto.molts.molys.momes.momma.mommy.momus.monad.monal.monas.monde.mondo.moner.mongo.mongs.monic.monie.monks.monos.monte.monty.moobs.mooch.moods.mooed.mooks.moola.mooli.mools.mooly.moong.moons.moony.moops.moors.moory.moots.moove.moped.moper.mopes.mopey.moppy.mopsy.mopus.morae.moras.morat.moray.morel.mores.moria.morne.morns.morra.morro.morse.morts.mosed.moses.mosey.mosks.mosso.moste.mosts.moted.moten.motes.motet.motey.moths.mothy.motis.motte.motts.motty.motus.motza.mouch.moues.mould.mouls.moups.moust.mousy.moved.moves.mowas.mowed.mowra.moxas.moxie.moyas.moyle.moyls.mozed.mozes.mozos.mpret.mucho.mucic.mucid.mucin.mucks.mucor.mucro.mudge.mudir.mudra.muffs.mufti.mugga.muggs.muggy.muhly.muids.muils.muirs.muist.mujik.mulct.muled.mules.muley.mulga.mulie.mulla.mulls.mulse.mulsh.mumms.mumps.mumsy.mumus.munga.munge.mungo.mungs.munis.munts.muntu.muons.muras.mured.mures.murex.murid.murks.murls.murly.murra.murre.murri.murrs.murry.murti.murva.musar.musca.mused.muser.muses.muset.musha.musit.musks.musos.musse.mussy.musth.musts.mutch.muted.muter.mutes.mutha.mutis.muton.mutts.muxed.muxes.muzak.muzzy.mvule.myall.mylar.mynah.mynas.myoid.myoma.myope.myops.myopy.mysid.mythi.myths.mythy.myxos.mzees.naams.naans.nabes.nabis.nabks.nabla.nabob.nache.nacho.nacre.nadas.naeve.naevi.naffs.nagas.naggy.nagor.nahal.naiad.naifs.naiks.nails.naira.nairu.naked.naker.nakfa.nalas.naled.nalla.named.namer.names.namma.namus.nanas.nance.nancy.nandu.nanna.nanos.nanua.napas.naped.napes.napoo.nappa.nappe.nappy.naras.narco.narcs.nards.nares.naric.naris.narks.narky.narre.nashi.natch.nates.natis.natty.nauch.naunt.navar.naves.navew.navvy.nawab.nazes.nazir.nazis.nduja.neafe.neals.neaps.nears.neath.neats.nebek.nebel.necks.neddy.needs.neeld.neele.neemb.neems.neeps.neese.neeze.negro.negus.neifs.neist.neive.nelis.nelly.nemas.nemns.nempt.nenes.neons.neper.nepit.neral.nerds.nerka.nerks.nerol.nerts.nertz.nervy.nests.netes.netop.netts.netty.neuks.neume.neums.nevel.neves.nevus.newbs.newed.newel.newie.newsy.newts.nexts.nexus.ngaio.ngana.ngati.ngoma.ngwee.nicad.nicht.nicks.nicol.nidal.nided.nides.nidor.nidus.niefs.nieve.nifes.niffs.niffy.nifty.niger.nighs.nihil.nikab.nikah.nikau.nills.nimbi.nimbs.nimps.niner.nines.ninon.nipas.nippy.niqab.nirls.nirly.nisei.nisse.nisus.niter.nites.nitid.niton.nitre.nitro.nitry.nitty.nival.nixed.nixer.nixes.nixie.nizam.nkosi.noahs.nobby.nocks.nodal.noddy.nodes.nodus.noels.noggs.nohow.noils.noily.noint.noirs.noles.nolls.nolos.nomas.nomen.nomes.nomic.nomoi.nomos.nonas.nonce.nones.nonet.nongs.nonis.nonny.nonyl.noobs.nooit.nooks.nooky.noons.noops.nopal.noria.noris.norks.norma.norms.nosed.noser.noses.notal.noted.noter.notes.notum.nould.noule.nouls.nouns.nouny.noups.novae.novas.novum.noway.nowed.nowls.nowts.nowty.noxal.noxes.noyau.noyed.noyes.nubby.nubia.nucha.nuddy.nuder.nudes.nudie.nudzh.nuffs.nugae.nuked.nukes.nulla.nulls.numbs.numen.nummy.nunny.nurds.nurdy.nurls.nurrs.nutso.nutsy.nyaff.nyala.nying.nyssa.oaked.oaker.oakum.oared.oases.oasis.oasts.oaten.oater.oaths.oaves.obang.obeah.obeli.obeys.obias.obied.obiit.obits.objet.oboes.obole.oboli.obols.occam.ocher.oches.ochre.ochry.ocker.ocrea.octad.octan.octas.octyl.oculi.odahs.odals.odeon.odeum.odism.odist.odium.odors.odour.odyle.odyls.ofays.offed.offie.oflag.ofter.ogams.ogeed.ogees.oggin.ogham.ogive.ogled.ogler.ogles.ogmic.ogres.ohias.ohing.ohmic.ohone.oidia.oiled.oiler.oinks.oints.ojime.okapi.okays.okehs.okras.oktas.oldie.oleic.olein.olent.oleos.oleum.olios.ollas.ollav.oller.ollie.ology.olpae.olpes.omasa.omber.ombus.omens.omers.omits.omlah.omovs.omrah.oncer.onces.oncet.oncus.onely.oners.onery.onium.onkus.onlay.onned.ontic.oobit.oohed.oomph.oonts.ooped.oorie.ooses.ootid.oozed.oozes.opahs.opals.opens.opepe.oping.oppos.opsin.opted.opter.orach.oracy.orals.orang.orant.orate.orbed.orcas.orcin.ordos.oread.orfes.orgia.orgic.orgue.oribi.oriel.orixa.orles.orlon.orlop.ormer.ornis.orpin.orris.ortho.orval.orzos.oscar.oshac.osier.osmic.osmol.ossia.ostia.otaku.otary.ottar.ottos.oubit.oucht.ouens.ouija.oulks.oumas.oundy.oupas.ouped.ouphe.ouphs.ourie.ousel.ousts.outby.outed.outre.outro.outta.ouzel.ouzos.ovals.ovels.ovens.overs.ovist.ovoli.ovolo.ovule.owche.owies.owled.owler.owlet.owned.owres.owrie.owsen.oxbow.oxers.oxeye.oxids.oxies.oxime.oxims.oxlip.oxter.oyers.ozeki.ozzie.paals.paans.pacas.paced.pacer.paces.pacey.pacha.packs.pacos.pacta.pacts.padis.padle.padma.padre.padri.paean.paedo.paeon.paged.pager.pages.pagle.pagod.pagri.paiks.pails.pains.paire.pairs.paisa.paise.pakka.palas.palay.palea.paled.pales.palet.palis.palki.palla.palls.pally.palms.palmy.palpi.palps.palsa.pampa.panax.pance.panda.pands.pandy.paned.panes.panga.pangs.panim.panko.panne.panni.panto.pants.panty.paoli.paolo.papas.papaw.papes.pappi.pappy.parae.paras.parch.pardi.pards.pardy.pared.paren.pareo.pares.pareu.parev.parge.pargo.paris.parki.parks.parky.parle.parly.parma.parol.parps.parra.parrs.parti.parts.parve.parvo.paseo.pases.pasha.pashm.paska.paspy.passe.pasts.pated.paten.pater.pates.paths.patin.patka.patly.patte.patus.pauas.pauls.pavan.paved.paven.paver.paves.pavid.pavin.pavis.pawas.pawaw.pawed.pawer.pawks.pawky.pawls.pawns.paxes.payed.payor.paysd.peage.peags.peaks.peaky.peals.peans.peare.pears.peart.pease.peats.peaty.peavy.peaze.pebas.pechs.pecke.pecks.pecky.pedes.pedis.pedro.peece.peeks.peels.peens.peeoy.peepe.peeps.peers.peery.peeve.peggy.peghs.peins.peise.peize.pekan.pekes.pekin.pekoe.pelas.pelau.peles.pelfs.pells.pelma.pelon.pelta.pelts.pends.pendu.pened.penes.pengo.penie.penis.penks.penna.penni.pents.peons.peony.pepla.pepos.peppy.pepsi.perai.perce.percs.perdu.perdy.perea.peres.peris.perks.perms.perns.perog.perps.perry.perse.perst.perts.perve.pervo.pervs.pervy.pesos.pests.pesty.petar.peter.petit.petre.petri.petti.petto.pewee.pewit.peyse.phage.phang.phare.pharm.pheer.phene.pheon.phese.phial.phish.phizz.phlox.phoca.phono.phons.phots.phpht.phuts.phyla.phyle.piani.pians.pibal.pical.picas.piccy.picks.picot.picra.picul.piend.piers.piert.pieta.piets.piezo.pight.pigmy.piing.pikas.pikau.piked.piker.pikes.pikey.pikis.pikul.pilae.pilaf.pilao.pilar.pilau.pilaw.pilch.pilea.piled.pilei.piler.piles.pilis.pills.pilow.pilum.pilus.pimas.pimps.pinas.pined.pines.pingo.pings.pinko.pinks.pinna.pinny.pinon.pinot.pinta.pints.pinup.pions.piony.pious.pioye.pioys.pipal.pipas.piped.pipes.pipet.pipis.pipit.pippy.pipul.pirai.pirls.pirns.pirog.pisco.pises.pisky.pisos.pissy.piste.pitas.piths.piton.pitot.pitta.piums.pixes.pized.pizes.plaas.plack.plage.plans.plaps.plash.plasm.plast.plats.platt.platy.playa.plays.pleas.plebe.plebs.plena.pleon.plesh.plews.plica.plies.plims.pling.plink.ploat.plods.plong.plonk.plook.plops.plots.plotz.plouk.plows.ploye.ploys.plues.pluff.plugs.plums.plumy.pluot.pluto.plyer.poach.poaka.poake.poboy.pocks.pocky.podal.poddy.podex.podge.podgy.podia.poems.poeps.poets.pogey.pogge.pogos.pohed.poilu.poind.pokal.poked.pokes.pokey.pokie.poled.poler.poles.poley.polio.polis.polje.polks.polls.polly.polos.polts.polys.pombe.pomes.pommy.pomos.pomps.ponce.poncy.ponds.pones.poney.ponga.pongo.pongs.pongy.ponks.ponts.ponty.ponzu.poods.pooed.poofs.poofy.poohs.pooja.pooka.pooks.pools.poons.poops.poopy.poori.poort.poots.poove.poovy.popes.poppa.popsy.porae.poral.pored.porer.pores.porge.porgy.porin.porks.porky.porno.porns.porny.porta.ports.porty.posed.poses.posey.posho.posts.potae.potch.poted.potes.potin.potoo.potsy.potto.potts.potty.pouff.poufs.pouke.pouks.poule.poulp.poult.poupe.poupt.pours.pouts.powan.powin.pownd.powns.powny.powre.poxed.poxes.poynt.poyou.poyse.pozzy.praam.prads.prahu.prams.prana.prang.praos.prase.prate.prats.pratt.praty.praus.prays.predy.preed.prees.preif.prems.premy.prent.preon.preop.preps.presa.prese.prest.preve.prexy.preys.prial.pricy.prief.prier.pries.prigs.prill.prima.primi.primp.prims.primy.prink.prion.prise.priss.proas.probs.prods.proem.profs.progs.proin.proke.prole.proll.promo.proms.pronk.props.prore.proso.pross.prost.prosy.proto.proul.prows.proyn.prunt.pruta.pryer.pryse.pseud.pshaw.psion.psoae.psoai.psoas.psora.psych.psyop.pubco.pubes.pubis.pucan.pucer.puces.pucka.pucks.puddy.pudge.pudic.pudor.pudsy.pudus.puers.puffa.puffs.puggy.pugil.puhas.pujah.pujas.pukas.puked.puker.pukes.pukey.pukka.pukus.pulao.pulas.puled.puler.pules.pulik.pulis.pulka.pulks.pulli.pulls.pully.pulmo.pulps.pulus.pumas.pumie.pumps.punas.punce.punga.pungs.punji.punka.punks.punky.punny.punto.punts.punty.pupae.pupas.pupus.purda.pured.pures.purin.puris.purls.purpy.purrs.pursy.purty.puses.pusle.pussy.putid.puton.putti.putto.putts.puzel.pwned.pyats.pyets.pygal.pyins.pylon.pyned.pynes.pyoid.pyots.pyral.pyran.pyres.pyrex.pyric.pyros.pyxed.pyxes.pyxie.pyxis.pzazz.qadis.qaids.qajaq.qanat.qapik.qibla.qophs.qorma.quads.quaff.quags.quair.quais.quaky.quale.quant.quare.quass.quate.quats.quayd.quays.qubit.quean.queme.quena.quern.queyn.queys.quich.quids.quiff.quims.quina.quine.quino.quins.quint.quipo.quips.quipu.quire.quirt.quist.quits.quoad.quods.quoif.quoin.quoit.quoll.quonk.quops.qursh.quyte.rabat.rabic.rabis.raced.races.rache.racks.racon.radge.radix.radon.raffs.rafts.ragas.ragde.raged.ragee.rager.rages.ragga.raggs.raggy.ragis.ragus.rahed.rahui.raias.raids.raiks.raile.rails.raine.rains.raird.raita.raits.rajas.rajes.raked.rakee.raker.rakes.rakia.rakis.rakus.rales.ramal.ramee.ramet.ramie.ramin.ramis.rammy.ramps.ramus.ranas.rance.rands.ranee.ranga.rangi.rangs.rangy.ranid.ranis.ranke.ranks.rants.raped.raper.rapes.raphe.rappe.rared.raree.rares.rarks.rased.raser.rases.rasps.rasse.rasta.ratal.ratan.ratas.ratch.rated.ratel.rater.rates.ratha.rathe.raths.ratoo.ratos.ratus.rauns.raupo.raved.ravel.raver.raves.ravey.ravin.rawer.rawin.rawly.rawns.raxed.raxes.rayah.rayas.rayed.rayle.rayne.razed.razee.razer.razes.razoo.readd.reads.reais.reaks.realo.reals.reame.reams.reamy.reans.reaps.rears.reast.reata.reate.reave.rebbe.rebec.rebid.rebit.rebop.rebuy.recal.recce.recco.reccy.recit.recks.recon.recta.recti.recto.redan.redds.reddy.reded.redes.redia.redid.redip.redly.redon.redos.redox.redry.redub.redux.redye.reech.reede.reeds.reefs.reefy.reeks.reeky.reels.reens.reest.reeve.refed.refel.reffo.refis.refix.refly.refry.regar.reges.reggo.regie.regma.regna.regos.regur.rehem.reifs.reify.reiki.reiks.reink.reins.reird.reist.reive.rejig.rejon.reked.rekes.rekey.relet.relie.relit.rello.reman.remap.remen.remet.remex.remix.renay.rends.reney.renga.renig.renin.renne.renos.rente.rents.reoil.reorg.repeg.repin.repla.repos.repot.repps.repro.reran.rerig.resat.resaw.resay.resee.reses.resew.resid.resit.resod.resow.resto.rests.resty.resus.retag.retax.retem.retia.retie.retox.revet.revie.rewan.rewax.rewed.rewet.rewin.rewon.rewth.rexes.rezes.rheas.rheme.rheum.rhies.rhime.rhine.rhody.rhomb.rhone.rhumb.rhyne.rhyta.riads.rials.riant.riata.ribas.ribby.ribes.riced.ricer.rices.ricey.richt.ricin.ricks.rides.ridgy.ridic.riels.riems.rieve.rifer.riffs.rifte.rifts.rifty.riggs.rigol.riled.riles.riley.rille.rills.rimae.rimed.rimer.rimes.rimus.rinds.rindy.rines.rings.rinks.rioja.riots.riped.ripes.ripps.rises.rishi.risks.risps.risus.rites.ritts.ritzy.rivas.rived.rivel.riven.rives.riyal.rizas.roads.roams.roans.roars.roary.roate.robed.robes.roble.rocks.roded.rodes.roguy.rohes.roids.roils.roily.roins.roist.rojak.rojis.roked.roker.rokes.rolag.roles.rolfs.rolls.romal.roman.romeo.romps.ronde.rondo.roneo.rones.ronin.ronne.ronte.ronts.roods.roofs.roofy.rooks.rooky.rooms.roons.roops.roopy.roosa.roose.roots.rooty.roped.roper.ropes.ropey.roque.roral.rores.roric.rorid.rorie.rorts.rorty.rosed.roses.roset.roshi.rosin.rosit.rosti.rosts.rotal.rotan.rotas.rotch.roted.rotes.rotis.rotls.roton.rotos.rotte.rouen.roues.roule.rouls.roums.roups.roupy.roust.routh.routs.roved.roven.roves.rowan.rowed.rowel.rowen.rowie.rowme.rownd.rowth.rowts.royne.royst.rozet.rozit.ruana.rubai.rubby.rubel.rubes.rubin.ruble.rubli.rubus.ruche.rucks.rudas.rudds.rudes.rudie.rudis.rueda.ruers.ruffe.ruffs.rugae.rugal.ruggy.ruing.ruins.rukhs.ruled.rules.rumal.rumbo.rumen.rumes.rumly.rummy.rumpo.rumps.rumpy.runch.runds.runed.runes.rungs.runic.runny.runts.runty.rupia.rurps.rurus.rusas.ruses.rushy.rusks.rusma.russe.rusts.ruths.rutin.rutty.ryals.rybat.ryked.rykes.rymme.rynds.ryots.ryper.saags.sabal.sabed.saber.sabes.sabha.sabin.sabir.sable.sabot.sabra.sabre.sacks.sacra.saddo.sades.sadhe.sadhu.sadis.sados.sadza.safed.safes.sagas.sager.sages.saggy.sagos.sagum.saheb.sahib.saice.saick.saics.saids.saiga.sails.saims.saine.sains.sairs.saist.saith.sajou.sakai.saker.sakes.sakia.sakis.sakti.salal.salat.salep.sales.salet.salic.salix.salle.salmi.salol.salop.salpa.salps.salse.salto.salts.salue.salut.saman.samas.samba.sambo.samek.samel.samen.sames.samey.samfu.sammy.sampi.samps.sands.saned.sanes.sanga.sangh.sango.sangs.sanko.sansa.santo.sants.saola.sapan.sapid.sapor.saran.sards.sared.saree.sarge.sargo.sarin.saris.sarks.sarky.sarod.saros.sarus.saser.sasin.sasse.satai.satay.sated.satem.sates.satis.sauba.sauch.saugh.sauls.sault.saunt.saury.sauts.saved.saver.saves.savey.savin.sawah.sawed.sawer.saxes.sayed.sayer.sayid.sayne.sayon.sayst.sazes.scabs.scads.scaff.scags.scail.scala.scall.scams.scand.scans.scapa.scape.scapi.scarp.scars.scart.scath.scats.scatt.scaud.scaup.scaur.scaws.sceat.scena.scend.schav.schmo.schul.schwa.sclim.scody.scogs.scoog.scoot.scopa.scops.scots.scoug.scoup.scowp.scows.scrab.scrae.scrag.scran.scrat.scraw.scray.scrim.scrip.scrob.scrod.scrog.scrow.scudi.scudo.scuds.scuff.scuft.scugs.sculk.scull.sculp.sculs.scums.scups.scurf.scurs.scuse.scuta.scute.scuts.scuzz.scyes.sdayn.sdein.seals.seame.seams.seamy.seans.seare.sears.sease.seats.seaze.sebum.secco.sechs.sects.seder.sedes.sedge.sedgy.sedum.seeds.seeks.seeld.seels.seely.seems.seeps.seepy.seers.sefer.segar.segni.segno.segol.segos.sehri.seifs.seils.seine.seirs.seise.seism.seity.seiza.sekos.sekts.selah.seles.selfs.sella.selle.sells.selva.semee.semes.semie.semis.senas.sends.senes.sengi.senna.senor.sensa.sensi.sente.senti.sents.senvy.senza.sepad.sepal.sepic.sepoy.septa.septs.serac.serai.seral.sered.serer.seres.serfs.serge.seric.serin.serks.seron.serow.serra.serre.serrs.serry.servo.sesey.sessa.setae.setal.seton.setts.sewan.sewar.sewed.sewel.sewen.sewin.sexed.sexer.sexes.sexto.sexts.seyen.shads.shags.shahs.shako.shakt.shalm.shaly.shama.shams.shand.shans.shaps.sharn.shash.shaul.shawm.shawn.shaws.shaya.shays.shchi.sheaf.sheal.sheas.sheds.sheel.shend.shent.sheol.sherd.shere.shero.shets.sheva.shewn.shews.shiai.shiel.shier.shies.shill.shily.shims.shins.ships.shirr.shirs.shish.shiso.shist.shite.shits.shiur.shiva.shive.shivs.shlep.shlub.shmek.shmoe.shoat.shoed.shoer.shoes.shogi.shogs.shoji.shojo.shola.shool.shoon.shoos.shope.shops.shorl.shote.shots.shott.showd.shows.shoyu.shred.shris.shrow.shtik.shtum.shtup.shule.shuln.shuls.shuns.shura.shute.shuts.shwas.shyer.sials.sibbs.sibyl.sices.sicht.sicko.sicks.sicky.sidas.sided.sider.sides.sidha.sidhe.sidle.sield.siens.sient.sieth.sieur.sifts.sighs.sigil.sigla.signa.signs.sijos.sikas.siker.sikes.silds.siled.silen.siler.siles.silex.silks.sills.silos.silts.silty.silva.simar.simas.simba.simis.simps.simul.sinds.sined.sines.sings.sinhs.sinks.sinky.sinus.siped.sipes.sippy.sired.siree.sires.sirih.siris.siroc.sirra.sirup.sisal.sises.sista.sists.sitar.sited.sites.sithe.sitka.situp.situs.siver.sixer.sixes.sixmo.sixte.sizar.sized.sizel.sizer.sizes.skags.skail.skald.skank.skart.skats.skatt.skaws.skean.skear.skeds.skeed.skeef.skeen.skeer.skees.skeet.skegg.skegs.skein.skelf.skell.skelm.skelp.skene.skens.skeos.skeps.skers.skets.skews.skids.skied.skies.skiey.skimo.skims.skink.skins.skint.skios.skips.skirl.skirr.skite.skits.skive.skivy.sklim.skoal.skody.skoff.skogs.skols.skool.skort.skosh.skran.skrik.skuas.skugs.skyed.skyer.skyey.skyfs.skyre.skyrs.skyte.slabs.slade.slaes.slags.slaid.slake.slams.slane.slank.slaps.slart.slats.slaty.slaws.slays.slebs.sleds.sleer.slews.sleys.slier.slily.slims.slipe.slips.slipt.slish.slits.slive.sloan.slobs.sloes.slogs.sloid.slojd.slomo.sloom.sloot.slops.slopy.slorm.slots.slove.slows.sloyd.slubb.slubs.slued.slues.sluff.slugs.sluit.slums.slurb.slurs.sluse.sluts.slyer.slype.smaak.smaik.smalm.smalt.smarm.smaze.smeek.smees.smeik.smeke.smerk.smews.smirr.smirs.smits.smogs.smoko.smolt.smoor.smoot.smore.smorg.smout.smowt.smugs.smurs.smush.smuts.snabs.snafu.snags.snaps.snarf.snark.snars.snary.snash.snath.snaws.snead.sneap.snebs.sneck.sneds.sneed.snees.snell.snibs.snick.snies.snift.snigs.snips.snipy.snirt.snits.snobs.snods.snoek.snoep.snogs.snoke.snood.snook.snool.snoot.snots.snowk.snows.snubs.snugs.snush.snyes.soaks.soaps.soare.soars.soave.sobas.socas.soces.socko.socks.socle.sodas.soddy.sodic.sodom.sofar.sofas.softa.softs.softy.soger.sohur.soils.soily.sojas.sojus.sokah.soken.sokes.sokol.solah.solan.solas.solde.soldi.soldo.solds.soled.solei.soler.soles.solon.solos.solum.solus.soman.somas.sonce.sonde.sones.songs.sonly.sonne.sonny.sonse.sonsy.sooey.sooks.sooky.soole.sools.sooms.soops.soote.soots.sophs.sophy.sopor.soppy.sopra.soral.soras.sorbo.sorbs.sorda.sordo.sords.sored.soree.sorel.sorer.sores.sorex.sorgo.sorns.sorra.sorta.sorts.sorus.soths.sotol.souce.souct.sough.souks.souls.soums.soups.soupy.sours.souse.souts.sowar.sowce.sowed.sowff.sowfs.sowle.sowls.sowms.sownd.sowne.sowps.sowse.sowth.soyas.soyle.soyuz.sozin.spacy.spado.spaed.spaer.spaes.spags.spahi.spail.spain.spait.spake.spald.spale.spall.spalt.spams.spane.spang.spans.spard.spars.spart.spate.spats.spaul.spawl.spaws.spayd.spays.spaza.spazz.speal.spean.speat.specs.spect.speel.speer.speil.speir.speks.speld.spelk.speos.spets.speug.spews.spewy.spial.spica.spick.spics.spide.spier.spies.spiff.spifs.spiks.spile.spims.spina.spink.spins.spirt.spiry.spits.spitz.spivs.splay.splog.spode.spods.spoom.spoor.spoot.spork.sposh.spots.sprad.sprag.sprat.spred.sprew.sprit.sprod.sprog.sprue.sprug.spuds.spued.spuer.spues.spugs.spule.spume.spumy.spurs.sputa.spyal.spyre.squab.squaw.squeg.squid.squit.squiz.stabs.stade.stags.stagy.staig.stane.stang.staph.staps.starn.starr.stars.stats.staun.staws.stays.stean.stear.stedd.stede.steds.steek.steem.steen.steil.stela.stele.stell.steme.stems.stend.steno.stens.stent.steps.stept.stere.stets.stews.stewy.steys.stich.stied.sties.stilb.stile.stime.stims.stimy.stipa.stipe.stire.stirk.stirp.stirs.stive.stivy.stoae.stoai.stoas.stoat.stobs.stoep.stogy.stoit.stoln.stoma.stond.stong.stonk.stonn.stook.stoor.stope.stops.stopt.stoss.stots.stott.stoun.stoup.stour.stown.stowp.stows.strad.strae.strag.strak.strep.strew.stria.strig.strim.strop.strow.stroy.strum.stubs.stude.studs.stull.stulm.stumm.stums.stuns.stupa.stupe.sture.sturt.styed.styes.styli.stylo.styme.stymy.styre.styte.subah.subas.subby.suber.subha.succi.sucks.sucky.sucre.sudds.sudor.sudsy.suede.suent.suers.suete.suets.suety.sugan.sughs.sugos.suhur.suids.suint.suits.sujee.sukhs.sukuk.sulci.sulfa.sulfo.sulks.sulph.sulus.sumis.summa.sumos.sumph.sumps.sunis.sunks.sunna.sunns.sunup.supes.supra.surah.sural.suras.surat.surds.sured.sures.surfs.surfy.surgy.surra.sused.suses.susus.sutor.sutra.sutta.swabs.swack.swads.swage.swags.swail.swain.swale.swaly.swamy.swang.swank.swans.swaps.swapt.sward.sware.swarf.swart.swats.swayl.sways.sweal.swede.sweed.sweel.sweer.swees.sweir.swelt.swerf.sweys.swies.swigs.swile.swims.swink.swipe.swire.swiss.swith.swits.swive.swizz.swobs.swole.swoln.swops.swopt.swots.swoun.sybbe.sybil.syboe.sybow.sycee.syces.sycon.syens.syker.sykes.sylis.sylph.sylva.symar.synch.syncs.synds.syned.synes.synth.syped.sypes.syphs.syrah.syren.sysop.sythe.syver.taals.taata.taber.tabes.tabid.tabis.tabla.tabor.tabun.tabus.tacan.taces.tacet.tache.tacho.tachs.tacks.tacos.tacts.taels.tafia.taggy.tagma.tahas.tahrs.taiga.taigs.taiko.tails.tains.taira.taish.taits.tajes.takas.takes.takhi.takin.takis.takky.talak.talaq.talar.talas.talcs.talcy.talea.taler.tales.talks.talky.talls.talma.talpa.taluk.talus.tamal.tamed.tames.tamin.tamis.tammy.tamps.tanas.tanga.tangi.tangs.tanhs.tanka.tanks.tanky.tanna.tansy.tanti.tanto.tanty.tapas.taped.tapen.tapes.tapet.tapis.tappa.tapus.taras.tardo.tared.tares.targa.targe.tarns.taroc.tarok.taros.tarps.tarre.tarry.tarsi.tarts.tarty.tasar.tased.taser.tases.tasks.tassa.tasse.tasso.tatar.tater.tates.taths.tatie.tatou.tatts.tatus.taube.tauld.tauon.taupe.tauts.tavah.tavas.taver.tawai.tawas.tawed.tawer.tawie.tawse.tawts.taxed.taxer.taxes.taxis.taxol.taxon.taxor.taxus.tayra.tazza.tazze.teade.teads.teaed.teaks.teals.teams.tears.teats.teaze.techs.techy.tecta.teels.teems.teend.teene.teens.teeny.teers.teffs.teggs.tegua.tegus.tehrs.teiid.teils.teind.teins.telae.telco.teles.telex.telia.telic.tells.telly.teloi.telos.temed.temes.tempi.temps.tempt.temse.tench.tends.tendu.tenes.tenge.tenia.tenne.tenno.tenny.tenon.tents.tenty.tenue.tepal.tepas.tepoy.terai.teras.terce.terek.teres.terfe.terfs.terga.terms.terne.terns.terry.terts.tesla.testa.teste.tests.tetes.teths.tetra.tetri.teuch.teugh.tewed.tewel.tewit.texas.texes.texts.thack.thagi.thaim.thale.thali.thana.thane.thang.thans.thanx.tharm.thars.thaws.thawy.thebe.theca.theed.theek.thees.thegn.theic.thein.thelf.thema.thens.theow.therm.thesp.thete.thews.thewy.thigs.thilk.thill.thine.thins.thiol.thirl.thoft.thole.tholi.thoro.thorp.thous.thowl.thrae.thraw.thrid.thrip.throe.thuds.thugs.thuja.thunk.thurl.thuya.thymi.thymy.tians.tiars.tical.ticca.ticed.tices.tichy.ticks.ticky.tiddy.tided.tides.tiers.tiffs.tifos.tifts.tiges.tigon.tikas.tikes.tikis.tikka.tilak.tiled.tiler.tiles.tills.tilly.tilth.tilts.timbo.timed.times.timon.timps.tinas.tinct.tinds.tinea.tined.tines.tinge.tings.tinks.tinny.tints.tinty.tipis.tippy.tired.tires.tirls.tiros.tirrs.titch.titer.titis.titre.titty.titup.tiyin.tiyns.tizes.tizzy.toads.toady.toaze.tocks.tocky.tocos.todde.toeas.toffs.toffy.tofts.tofus.togae.togas.toged.toges.togue.tohos.toile.toils.toing.toise.toits.tokay.toked.toker.tokes.tokos.tolan.tolar.tolas.toled.toles.tolls.tolly.tolts.tolus.tolyl.toman.tombs.tomes.tomia.tommy.tomos.tondi.tondo.toned.toner.tones.toney.tongs.tonka.tonks.tonne.tonus.tools.tooms.toons.toots.toped.topee.topek.toper.topes.tophe.tophi.tophs.topis.topoi.topos.toppy.toque.torah.toran.toras.torcs.tores.toric.torii.toros.torot.torrs.torse.torsi.torsk.torta.torte.torts.tosas.tosed.toses.toshy.tossy.toted.toter.totes.totty.touks.touns.tours.touse.tousy.touts.touze.touzy.towed.towie.towns.towny.towse.towsy.towts.towze.towzy.toyed.toyer.toyon.toyos.tozed.tozes.tozie.trabs.trads.tragi.traik.trams.trank.tranq.trans.trant.trape.traps.trapt.trass.trats.tratt.trave.trayf.trays.treck.treed.treen.trees.trefa.treif.treks.trema.trems.tress.trest.trets.trews.treyf.treys.triac.tride.trier.tries.triff.trigo.trigs.trike.trild.trill.trims.trine.trins.triol.trior.trios.trips.tripy.trist.troad.troak.troat.trock.trode.trods.trogs.trois.troke.tromp.trona.tronc.trone.tronk.trons.trooz.troth.trots.trows.troys.trued.trues.trugo.trugs.trull.tryer.tryke.tryma.tryps.tsade.tsadi.tsars.tsked.tsuba.tsubo.tuans.tuart.tuath.tubae.tubar.tubas.tubby.tubed.tubes.tucks.tufas.tuffe.tuffs.tufts.tufty.tugra.tuile.tuina.tuism.tuktu.tules.tulpa.tulsi.tumid.tummy.tumps.tumpy.tunas.tunds.tuned.tuner.tunes.tungs.tunny.tupek.tupik.tuple.tuque.turds.turfs.turfy.turks.turme.turms.turns.turnt.turps.turrs.tushy.tusks.tusky.tutee.tutti.tutty.tutus.tuxes.tuyer.twaes.twain.twals.twank.twats.tways.tweel.tween.tweep.tweer.twerk.twerp.twier.twigs.twill.twilt.twink.twins.twiny.twire.twirp.twite.twits.twoer.twyer.tyees.tyers.tyiyn.tykes.tyler.tymps.tynde.tyned.tynes.typal.typed.types.typey.typic.typos.typps.typto.tyran.tyred.tyres.tyros.tythe.tzars.udals.udons.ugali.ugged.uhlan.uhuru.ukase.ulama.ulans.ulema.ulmin.ulnad.ulnae.ulnar.ulnas.ulpan.ulvas.ulyie.ulzie.umami.umbel.umber.umble.umbos.umbre.umiac.umiak.umiaq.ummah.ummas.ummed.umped.umphs.umpie.umpty.umrah.umras.unais.unapt.unarm.unary.unaus.unbag.unban.unbar.unbed.unbid.unbox.uncap.unces.uncia.uncos.uncoy.uncus.undam.undee.undos.undug.uneth.unfix.ungag.unget.ungod.ungot.ungum.unhat.unhip.unica.units.unjam.unked.unket.unkid.unlaw.unlay.unled.unlet.unlid.unman.unmew.unmix.unpay.unpeg.unpen.unpin.unred.unrid.unrig.unrip.unsaw.unsay.unsee.unsew.unsex.unsod.untax.untin.unwet.unwit.unwon.upbow.upbye.updos.updry.upend.upjet.uplay.upled.uplit.upped.upran.uprun.upsee.upsey.uptak.upter.uptie.uraei.urali.uraos.urare.urari.urase.urate.urbex.urbia.urdee.ureal.ureas.uredo.ureic.urena.urent.urged.urger.urges.urial.urite.urman.urnal.urned.urped.ursae.ursid.urson.urubu.urvas.users.usnea.usque.usure.usury.uteri.uveal.uveas.uvula.vacua.vaded.vades.vagal.vagus.vails.vaire.vairs.vairy.vakas.vakil.vales.valis.valse.vamps.vampy.vanda.vaned.vanes.vangs.vants.vaped.vaper.vapes.varan.varas.vardy.varec.vares.varia.varix.varna.varus.varve.vasal.vases.vasts.vasty.vatic.vatus.vauch.vaute.vauts.vawte.vaxes.veale.veals.vealy.veena.veeps.veers.veery.vegas.veges.vegie.vegos.vehme.veils.veily.veins.veiny.velar.velds.veldt.veles.vells.velum.venae.venal.vends.vendu.veney.venge.venin.vents.venus.verbs.verra.verry.verst.verts.vertu.vespa.vesta.vests.vetch.vexed.vexer.vexes.vexil.vezir.vials.viand.vibes.vibex.vibey.viced.vices.vichy.viers.views.viewy.vifda.viffs.vigas.vigia.vilde.viler.villi.vills.vimen.vinal.vinas.vinca.vined.viner.vines.vinew.vinic.vinos.vints.viold.viols.vired.vireo.vires.virga.virge.virid.virls.virtu.visas.vised.vises.visie.visne.vison.visto.vitae.vitas.vitex.vitro.vitta.vivas.vivat.vivda.viver.vives.vizir.vizor.vleis.vlies.vlogs.voars.vocab.voces.voddy.vodou.vodun.voema.vogie.voids.voile.voips.volae.volar.voled.voles.volet.volks.volta.volte.volti.volts.volva.volve.vomer.voted.votes.vouge.voulu.vowed.vower.voxel.vozhd.vraic.vrils.vroom.vrous.vrouw.vrows.vuggs.vuggy.vughs.vughy.vulgo.vulns.vulva.vutty.waacs.wacke.wacko.wacks.wadds.waddy.waded.wader.wades.wadge.wadis.wadts.waffs.wafts.waged.wages.wagga.wagyu.wahoo.waide.waifs.waift.wails.wains.wairs.waite.waits.wakas.waked.waken.waker.wakes.wakfs.waldo.walds.waled.waler.wales.walie.walis.walks.walla.walls.wally.walty.wamed.wames.wamus.wands.waned.wanes.waney.wangs.wanks.wanky.wanle.wanly.wanna.wants.wanty.wanze.waqfs.warbs.warby.wards.wared.wares.warez.warks.warms.warns.warps.warre.warst.warts.wases.washy.wasms.wasps.waspy.wasts.watap.watts.wauff.waugh.wauks.waulk.wauls.waurs.waved.waves.wavey.wawas.wawes.wawls.waxed.waxer.waxes.wayed.wazir.wazoo.weald.weals.weamb.weans.wears.webby.weber.wecht.wedel.wedgy.weeds.weeke.weeks.weels.weems.weens.weeny.weeps.weepy.weest.weete.weets.wefte.wefts.weids.weils.weirs.weise.weize.wekas.welds.welke.welks.welkt.wells.welly.welts.wembs.wends.wenge.wenny.wents.weros.wersh.wests.wetas.wetly.wexed.wexes.whamo.whams.whang.whaps.whare.whata.whats.whaup.whaur.wheal.whear.wheen.wheep.wheft.whelk.whelm.whens.whets.whews.wheys.whids.whift.whigs.whilk.whims.whins.whios.whips.whipt.whirr.whirs.whish.whiss.whist.whits.whity.whizz.whomp.whoof.whoot.whops.whore.whorl.whort.whoso.whows.whump.whups.whyda.wicca.wicks.wicky.widdy.wides.wiels.wifed.wifes.wifey.wifie.wifty.wigan.wigga.wiggy.wikis.wilco.wilds.wiled.wiles.wilga.wilis.wilja.wills.wilts.wimps.winds.wined.wines.winey.winge.wings.wingy.winks.winna.winns.winos.winze.wiped.wiper.wipes.wired.wirer.wires.wirra.wised.wises.wisha.wisht.wisps.wists.witan.wited.wites.withe.withs.withy.wived.wiver.wives.wizen.wizes.woads.woald.wocks.wodge.woful.wojus.woker.wokka.wolds.wolfs.wolly.wolve.wombs.womby.womyn.wonga.wongi.wonks.wonky.wonts.woods.wooed.woofs.woofy.woold.wools.woons.woops.woopy.woose.woosh.wootz.words.works.worms.wormy.worts.wowed.wowee.woxen.wrang.wraps.wrapt.wrast.wrate.wrawl.wrens.wrick.wried.wrier.wries.writs.wroke.wroot.wroth.wryer.wuddy.wudus.wulls.wurst.wuses.wushu.wussy.wuxia.wyled.wyles.wynds.wynns.wyted.wytes.xebec.xenia.xenic.xenon.xeric.xerox.xerus.xoana.xrays.xylan.xylem.xylic.xylol.xylyl.xysti.xysts.yaars.yabas.yabba.yabby.yacca.yacka.yacks.yaffs.yager.yages.yagis.yahoo.yaird.yakka.yakow.yales.yamen.yampy.yamun.yangs.yanks.yapok.yapon.yapps.yappy.yarak.yarco.yards.yarer.yarfa.yarks.yarns.yarrs.yarta.yarto.yates.yauds.yauld.yaups.yawed.yawey.yawls.yawns.yawny.yawps.ybore.yclad.ycled.ycond.ydrad.ydred.yeads.yeahs.yealm.yeans.yeard.years.yecch.yechs.yechy.yedes.yeeds.yeesh.yeggs.yelks.yells.yelms.yelps.yelts.yenta.yente.yerba.yerds.yerks.yeses.yesks.yests.yesty.yetis.yetts.yeuks.yeuky.yeven.yeves.yewen.yexed.yexes.yfere.yiked.yikes.yills.yince.yipes.yippy.yirds.yirks.yirrs.yirth.yites.yitie.ylems.ylike.ylkes.ymolt.ympes.yobbo.yobby.yocks.yodel.yodhs.yodle.yogas.yogee.yoghs.yogic.yogin.yogis.yoick.yojan.yoked.yokel.yoker.yokes.yokul.yolks.yolky.yomim.yomps.yonic.yonis.yonks.yoofs.yoops.yores.yorks.yorps.youks.yourn.yours.yourt.youse.yowed.yowes.yowie.yowls.yowza.yrapt.yrent.yrivd.yrneh.ysame.ytost.yuans.yucas.yucca.yucch.yucko.yucks.yucky.yufts.yugas.yuked.yukes.yukky.yukos.yulan.yules.yummo.yummy.yumps.yupon.yuppy.yurta.yurts.yuzus.zabra.zacks.zaida.zaidy.zaire.zakat.zaman.zambo.zamia.zanja.zante.zanza.zanze.zappy.zarfs.zaris.zatis.zaxes.zayin.zazen.zeals.zebec.zebub.zebus.zedas.zeins.zendo.zerda.zerks.zeros.zests.zetas.zexes.zezes.zhomo.zibet.ziffs.zigan.zilas.zilch.zilla.zills.zimbi.zimbs.zinco.zincs.zincy.zineb.zines.zings.zingy.zinke.zinky.zippo.zippy.ziram.zitis.zizel.zizit.zlote.zloty.zoaea.zobos.zobus.zocco.zoeae.zoeal.zoeas.zoism.zoist.zombi.zonae.zonda.zoned.zoner.zones.zonks.zooea.zooey.zooid.zooks.zooms.zoons.zooty.zoppa.zoppo.zoril.zoris.zorro.zouks.zowee.zowie.zulus.zupan.zupas.zuppa.zurfs.zuzim.zygal.zygon.zymes.zymic`.split(`.`),$=5,Gn=6,Kn=Object.freeze(new Set([...Wn,...Un]));function qn(){return Un[Math.floor(Math.random()*Un.length)]}function Jn(e){return Kn.has(e)}function Yn(e,t){let n=Array.from({length:$},(t,n)=>({letter:e[n],status:`absent`})),r={};for(let e=0;e<$;e++)r[t[e]]=(r[t[e]]??0)+1;for(let i=0;i<$;i++)e[i]===t[i]&&(n[i].status=`correct`,r[e[i]]--);for(let t=0;t<$;t++){if(n[t].status===`correct`)continue;let i=e[t];(r[i]??0)>0&&(n[t].status=`present`,r[i]--)}return n}var Xn=[[`Q`,`W`,`E`,`R`,`T`,`Y`,`U`,`I`,`O`,`P`],[`A`,`S`,`D`,`F`,`G`,`H`,`J`,`K`,`L`],[`Enter`,`Z`,`X`,`C`,`V`,`B`,`N`,`M`,`⌫`]];function Zn(e,t){switch(t.type){case`addLetter`:return e.gameStatus!==`playing`||e.currentGuess.length>=$?e:{...e,currentGuess:e.currentGuess+t.letter.toLowerCase(),errorMessage:``};case`removeLetter`:return e.currentGuess.length===0?e:{...e,currentGuess:e.currentGuess.slice(0,-1),errorMessage:``};case`submit`:{if(e.gameStatus!==`playing`)return e;let t=e.currentGuess;if(t.length!==$)return{...e,errorMessage:`Not enough letters`};if(!Jn(t))return{...e,errorMessage:`Not in word list`};let n=Yn(t,e.answer),r=[...e.board,n],i={...e.letterStatuses};for(let{letter:e,status:t}of n){let n=i[e];n!==`correct`&&(t===`correct`||n!==`present`)&&(i[e]=t)}let a=e.gameStatus;return t===e.answer?a=`won`:r.length>=Gn&&(a=`lost`),{...e,board:r,letterStatuses:i,gameStatus:a,currentGuess:``,errorMessage:``}}case`reset`:return{answer:t.answer,board:[],currentGuess:``,gameStatus:`playing`,letterStatuses:{},errorMessage:``};default:return e}}var Qn=e=>{let t=(0,c.ref)({answer:e?.initialWord??qn(),board:[],currentGuess:``,gameStatus:`playing`,letterStatuses:{},errorMessage:``}),n=e=>{t.value=Zn(t.value,e)},r=e=>n({type:`addLetter`,letter:e}),i=()=>n({type:`removeLetter`}),a=()=>n({type:`submit`}),o=()=>n({type:`reset`,answer:qn()}),s=(0,c.defineComponent)({name:`Wordle`,setup(){let e=e=>{let{key:t,ctrlKey:n,altKey:o,metaKey:s}=e;n||o||s||(t===`Enter`?a():t===`Backspace`?i():/^[a-zA-Z]$/.test(t)&&r(t))};return(0,c.onMounted)(()=>document.addEventListener(`keydown`,e)),(0,c.onBeforeUnmount)(()=>document.removeEventListener(`keydown`,e)),()=>{let{answer:e,board:n,currentGuess:s,gameStatus:l,letterStatuses:u,errorMessage:f}=t.value,p=Array.from({length:Gn},(e,t)=>{let r=n[t],i=t===n.length&&l===`playing`,a=Array.from({length:$},(e,t)=>{let n=``,a=`empty`;return r?(n=r[t].letter.toUpperCase(),a=r[t].status):i&&(n=(s[t]??``).toUpperCase(),a=n?`tbd`:`empty`),(0,c.createVNode)(`div`,{key:t,class:(0,d.clsx)(Q.cell,a===`correct`&&Q.correct,a===`present`&&Q.present,a===`absent`&&Q.absent,a===`tbd`&&Q.tbd,a===`empty`&&Q.empty)},[n])});return(0,c.createVNode)(`div`,{key:t,class:Q.row},[a])});return(0,c.createVNode)(`div`,{class:Q[`elm-wordle`]},[(0,c.createVNode)(`div`,{class:(0,d.clsx)(Q[`message-area`],f?Q.error:l===`playing`?void 0:Q.status),"aria-live":`polite`},[f||(l===`won`?`🎉 You won in ${n.length} ${n.length===1?`guess`:`guesses`}!`:l===`lost`?`😢 The word was "${e.toUpperCase()}"`:null)]),(0,c.createVNode)(`div`,{class:Q.board},[p]),(0,c.createVNode)(`div`,{class:Q.keyboard,onClick:e=>{let t=e.target.closest(`button[data-key]`)?.dataset.key;t&&(t===`Enter`?a():t===`⌫`?i():r(t))}},[Xn.map((e,t)=>(0,c.createVNode)(`div`,{key:t,class:Q[`keyboard-row`]},[e.map(e=>{let t=u[e.toLowerCase()];return(0,c.createVNode)(`button`,{key:e,"data-key":e,class:(0,d.clsx)(Q.key,e===`Enter`&&Q.wide,e===`⌫`&&Q.wide,t===`correct`&&Q.correct,t===`present`&&Q.present,t===`absent`&&Q.absent)},[e])})]))]),(0,c.createVNode)(`div`,{class:(0,d.clsx)(Q[`reset-container`],l===`playing`&&Q.hidden)},[(0,c.createVNode)(`button`,{class:Q[`reset-button`],onClick:o},[(0,c.createTextVNode)(`Play Again`)])])])}}});return{answer:(0,c.computed)(()=>t.value.answer),board:(0,c.computed)(()=>t.value.board),currentGuess:(0,c.computed)(()=>t.value.currentGuess),gameStatus:(0,c.computed)(()=>t.value.gameStatus),letterStatuses:(0,c.computed)(()=>t.value.letterStatuses),errorMessage:(0,c.computed)(()=>t.value.errorMessage),submit:a,addLetter:r,removeLetter:i,reset:o,Wordle:s}};exports.A2uiSurface=Le,exports.CatalogRenderer=xe,exports.ElmA2ui=Re,exports.ElmAudioPlayer=$e,exports.ElmBlockFallback=Xt,exports.ElmBlockImage=ot,exports.ElmBlockQuote=pt,exports.ElmBookmark=dt,exports.ElmBreadcrumb=Tn,exports.ElmButton=Zt,exports.ElmButtonDropdown=$t,exports.ElmCallout=gt,exports.ElmCheckbox=en,exports.ElmCodeBlock=Xe,exports.ElmCollapse=x,exports.ElmColorPrimitiveSample=jn,exports.ElmColorSemanticSample=zn,exports.ElmCopyIcon=fn,exports.ElmDivider=yt,exports.ElmDotLoadingIcon=Yt,exports.ElmFile=lt,exports.ElmFragmentIdentifier=ue,exports.ElmHeading=fe,exports.ElmHtml=Vt,exports.ElmHtmlViewer=Ht,exports.ElmInlineIcon=C,exports.ElmInlineText=w,exports.ElmKatex=Be,exports.ElmLanguageIcon=Ge,exports.ElmList=xt,exports.ElmMarkdown=Hn,exports.ElmMdiIcon=O,exports.ElmModal=it,exports.ElmNotionCallout=_t,exports.ElmPageTop=Dn,exports.ElmParagraph=ge,exports.ElmParallax=Wt,exports.ElmRectangleWave=nt,exports.ElmSelect=nn,exports.ElmShikiHighlighter=qe,exports.ElmSlider=on,exports.ElmSquareLoadingIcon=mn,exports.ElmSwitch=sn,exports.ElmTab=oe,exports.ElmTabList=ae,exports.ElmTabPanel=se,exports.ElmTable=wt,exports.ElmTableBody=Tt,exports.ElmTableCell=Dt,exports.ElmTableHeader=kt,exports.ElmTableRow=jt,exports.ElmTabs=ie,exports.ElmTextArea=cn,exports.ElmTextField=ln,exports.ElmToggle=ft,exports.ElmToggleTheme=Cn,exports.ElmTooltip=Kt,exports.ElmUnsupportedBlock=Nt,exports.ElmValidation=dn,exports.HasRowHeaderContext=St,exports.LANGUAGES=h.LANGUAGES,exports.THEME_CHANGE_EVENT=gn,exports.TableSectionContext=Ct,exports.basicCatalog=Oe,exports.blockCatalog=It,exports.defineRenderer=E,exports.useClipboard=Ye,exports.useElmethisTheme=xn,exports.useModal=at,exports.useWordle=Qn;