@panphora/hyper-cms 0.11.1 → 0.11.3

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.
@@ -1,6 +1,7 @@
1
- var hypercms=(()=>{var Qo=Object.defineProperty;var _c=Object.getOwnPropertyDescriptor;var Cc=Object.getOwnPropertyNames;var Oc=Object.prototype.hasOwnProperty;var ei=(e,t)=>{for(var n in t)Qo(e,n,{get:t[n],enumerable:!0})},Nc=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of Cc(t))!Oc.call(e,o)&&o!==n&&Qo(e,o,{get:()=>t[o],enumerable:!(r=_c(t,o))||r.enumerable});return e};var Rc=e=>Nc(Qo({},"__esModule",{value:!0}),e);var Wh={};ei(Wh,{cms:()=>zh,default:()=>Vh});function St(e){let t=0,n=null,r=-1;for(let o=0;o<e.length;o++){let i=e[o];i==="\\"?o++:n?i===n&&(n=null):i==='"'||i==="'"?n=i:i==="["||i==="("?t++:i==="]"||i===")"?t>0&&t--:i==="@"&&t===0&&(r=o)}return r}function oo(e){let t=St(e);return t===-1?{selector:e,prop:null}:{selector:e.slice(0,t),prop:e.slice(t+1)||null}}function io(e,t){if(typeof e=="string"){let n=t&&t.defaultView,r=n&&n.DOMParser||globalThis.DOMParser;return new r().parseFromString(e,"text/html")}if(e&&e.nodeType===9)return e;throw new TypeError("expected an HTML string or a Document")}function ti(e){let t=new Map;return(n,r)=>{if(typeof r!="string")return io(r,e);let o=t.get(n);if(o&&o.text===r)return o.doc;let i=io(r,e);return t.set(n,{text:r,doc:i}),i}}function As(e,t){let n=t.doctype;if(!n)return!1;let r=e.doctype;if(r&&r.name===n.name&&r.publicId===n.publicId&&r.systemId===n.systemId)return!1;let o=e.implementation.createDocumentType(n.name,n.publicId,n.systemId);return r?e.replaceChild(o,r):e.insertBefore(o,e.documentElement),!0}function ni(e,t=[]){if(typeof e!="function")return()=>!1;let n=new WeakMap,r=new Set(t);return o=>{if(!o||o.nodeType!==1)return!1;let i=n.get(o);if(i!==void 0)return i;let s=[],l=o,a=!1;for(;l&&l.nodeType===1;){let h=n.get(l);if(h!==void 0){a=h;break}if(s.push(l),e(l,r.has(l))){a=!0;break}if(r.has(l))break;l=l.parentElement}for(let h of s)n.set(h,a);return a}}function ri(e,t){let n=new WeakMap;if(!e||!t||typeof t!="object"||Array.isArray(t))return n;let r=t["~"],o=typeof r=="string"?r.split(",").map(Number):null,i=o&&typeof t["^"]=="string"?t["^"].split(","):null,s=b=>Number.isInteger(b)&&b>=0,l=0,a=!1,h=b=>{let f=b;for(;f>0;){let u=o[l++];if(l>o.length||!s(u))return!1;f+=u-1}return!0},d=(b,f)=>{if(a)return;if(o){let p=l++,v=o[p];if(p>=o.length||!s(v)){a=!0;return}let A=!i||i[p]===b.tagName.toLowerCase();if(!A||v!==b.children.length){let M=A&&t[f];typeof M=="string"&&M&&n.set(b,M),h(v)||(a=!0);return}}let u=t[f];typeof u=="string"&&u&&n.set(b,u);let m=b.children;for(let p=0;p<m.length;p++)d(m[p],f===""?String(p):`${f}.${p}`)};return d(e,""),n}function Ss(e){return t=>{for(let n of e){let r=n(t);if(typeof r=="string"&&r!=="")return r}return null}}var In=Ss([e=>e.getAttribute("data-id"),e=>e.getAttribute("id")]);function so(e,t,n,r=null){let o=new Map,i=new Set,s=l=>{if(n(l))return;let a=t(l);a&&(o.has(a)?i.add(a):o.set(a,l))};if(r){let l=a=>{for(let h of a.querySelectorAll(r))s(h);for(let h of a.querySelectorAll("template"))h.content&&l(h.content)};s(e),l(e.tagName==="TEMPLATE"&&e.content?e.content:e)}else{let l=a=>{s(a);let h=a.tagName==="TEMPLATE"&&a.content?a.content.children:a.children;for(let d=0;d<h.length;d++)l(h[d])};l(e)}for(let l of i)o.delete(l),l.startsWith("merge:")&&console.warn(`[hyper-morph] merge disabled for duplicate identity "${l.slice(l.indexOf(":",6)+1)}"`);return o}var Lc=new Set(["href","src","name","type","role"]),Es=new Set(["SCRIPT","STYLE","TEXTAREA","TEMPLATE","IFRAME","OBJECT","CANVAS","VIDEO","AUDIO","svg","SVG"]);function Vn(e,t=5381){let n=t;for(let r=0;r<e.length;r++)n=(n<<5)+n^e.charCodeAt(r);return n>>>0}function Ts(e){return e.replace(/\s+/g," ")}function _s({ignored:e=()=>!1,ignoreAttribute:t=()=>!1}={}){let n=new WeakMap,r=new WeakMap;function o(f){let u=f.attributes,m=u.length;if(m===0)return{all:"",sig:f.tagName+"|"};let p=[],v="",A=[];for(let M=0;M<m;M++){let L=u[M],H=L.name;t(f,H)||p.push(H+"="+L.value),H==="class"?v=L.value.indexOf(" ")<0?L.value:L.value.split(/\s+/).filter(Boolean).sort().join(" "):Lc.has(H)&&A.push(H+"="+L.value)}return p.length>1&&p.sort(),A.length>1&&A.sort(),{all:p.join(""),sig:f.tagName+"|"+v+(A.length?"|"+A.join("|"):"")}}function i(f){return f.nodeType===1&&f.tagName==="TEMPLATE"&&f.content?f.content.childNodes:f.childNodes}function s(f){let u=n.get(f);if(u)return u;if(f.nodeType===3)u={hash:"T"+Vn(f.nodeValue),hint:Ts(f.nodeValue).slice(0,64),sig:null,tok:null};else if(f.nodeType===8)u={hash:"C"+Vn(f.nodeValue),hint:"",sig:null,tok:null};else if(f.nodeType===1){let m=o(f),p=Vn(f.tagName+""+m.all),v="";for(let A of a(f))if(A.nodeType===1){let M=s(A);p=Vn(M.hash,p),v.length<64&&(v+=" "+M.hint)}else p=Vn(h(A),p),A.kind==="text"&&v.length<64&&(v+=A.value.slice(0,64));u={hash:"E"+p,hint:Ts(v).trim().slice(0,64),sig:m.sig,tok:null}}else u={hash:"N"+f.nodeType,hint:"",sig:null,tok:null};return n.set(f,u),u}function l(f){if(!f.tok){f.tok=new Set;for(let u of f.hint.toLowerCase().split(/[^\p{L}\p{N}]+/u))u&&f.tok.add(u)}return f.tok}function a(f){let u=r.get(f);if(u)return u;u=[];let m=null,p=()=>{m&&(m.value=m.nodes.map(v=>v.nodeValue).join(""),u.push(m),m=null)};for(let v of i(f)){if(v.nodeType===3){m||(m={kind:"text",nodes:[],value:"",parent:f,hash:void 0}),m.nodes.push(v);continue}p(),v.nodeType===8?u.push({kind:"comment",nodes:[v],value:v.nodeValue,parent:f,hash:void 0}):v.nodeType===1&&!e(v)&&u.push(v)}return p(),r.set(f,u),u}function h(f){return f.nodeType===1?s(f).hash:(f.hash===void 0&&(f.hash=(f.kind==="text"?"T":"C")+Vn(f.value)),f.hash)}function d(f,u){let m=l(s(f)),p=l(s(u));if(m.size===0&&p.size===0)return{coef:1,share:1};if(m.size===0||p.size===0)return null;let v=0;for(let A of m)p.has(A)&&v++;return{coef:v/Math.min(m.size,p.size),share:v/Math.max(m.size,p.size)}}function b(f,u){let m=d(f,u);return!!m&&m.coef>=.5}return{meta:s,unitsOf:a,unitHash:h,similar:b,score:d,childrenOf:i}}var Cs=16,Ic=2e3,jc=3,Dc={align:0};function oi(e,t,n){let{meta:r,unitsOf:o,unitHash:i,similar:s,score:l}=n.analyzer,a=n.baseId||(()=>null),h=n.sideId||(()=>null),d=new Map,b=new Map,f=new Set,u=new Map,m=new Set,p=new Set,v=new Set,A=[],M=[],L=[],H=[],B=Ic,te=new Map,re=new Map,K=(k,g)=>{d.set(k,g),b.set(g,k)},W=k=>!!k&&k.nodeType===1,he=(k,g)=>{let y=u.get(k);return!!y&&y.has(g)},V=k=>Es.has(k.tagName),xe=(k,g)=>{let y=a(k);if(!y)return!0;let O=h(g);return!O||y===O},We=globalThis.__hyperMorphProfile,at=We?performance.now():0;We&&(r(e),r(t),We.meta=(We.meta||0)+(performance.now()-at),at=performance.now()),K(e,t);for(let[k,g]of n.baseIndex){let y=n.sideIndex.get(k);y&&y.tagName===g.tagName&&!d.has(g)&&!b.has(y)&&K(g,y)}H.push([e,t]);for(let[k,g]of d)W(k)&&k!==e&&H.push([k,g]);return dt(),Nt(),We&&(We.align=(We.align||0)+(performance.now()-at)),{map:d,reverse:b,moved:m,identical:p,pairIdenticalChildren:G,weak:f,unpair:xt,rematch:Nt,insertedByHash:_e};function Nt(){ut(),dt();for(let k=0;k<L.length;){let g=L.length;nt(k,g),k=g,dt(),ut(),dt()}}function xt(k){let g=d.get(k);if(!g)return;u.has(k)||u.set(k,new Set),u.get(k).add(g);let y=(_,E)=>{d.delete(_),b.delete(E),m.delete(_),p.delete(_),f.delete(_),v.delete(_)},O=(_,E)=>{for(let I of o(_)){let N=d.get(I);!N||!(W(N)?E.contains(N):E.contains(N.nodes[0]))||(y(I,N),W(I)&&O(I,N))}};y(k,g),W(k)&&O(k,g),A.push(k),M.push(g)}function _e(){let k=new Map;for(let g of new Set(M)){if(b.has(g))continue;let y=r(g).hash;k.has(y)||k.set(y,[]),k.get(y).push(g)}return k}function dt(){for(;H.length;){let[k,g]=H.shift();v.has(k)||p.has(k)||Rt(k,g)}}function Ze(k,g){if(!V(k))for(let y of o(k))W(y)&&(g.push(y),Ze(y,g))}function Rt(k,g){v.add(k);let y=o(k),O=o(g);Dc.align+=y.length+O.length,te=new Map,re=new Map;for(let j=0;j<y.length;j++)te.set(y[j],j);for(let j=0;j<O.length;j++)re.set(O[j],j);if(k.tagName==="HTML")for(let j of["HEAD","BODY"]){let J=y.find(ce=>W(ce)&&ce.tagName===j),$=O.find(ce=>W(ce)&&ce.tagName===j);J&&$&&!d.has(J)&&!b.has($)&&K(J,$)}for(let j=0;j<y.length&&j<O.length;j++){let J=y[j],$=O[j];d.has(J)||b.has($)||(W(J)?W($)&&J.tagName===$.tagName&&J.isEqualNode($)&&C(J,$):!W($)&&J.kind===$.kind&&J.value===$.value&&C(J,$))}et(y,O);let _=y.filter(j=>!d.has(j)),E=O.filter(j=>!b.has(j));_.length&&E.length&&(ct(_,E),ye(_,E),se(_,E,y,O),Ve(y,O));let I=!1,N=!1;for(let j of y){if(!d.has(j)){W(j)&&(A.push(j),Ze(j,A),I=!0);continue}W(j)&&!p.has(j)&&H.push([j,d.get(j)])}for(let j of O)!b.has(j)&&W(j)&&(M.push(j),Ze(j,M),N=!0);I&&N&&L.push([k,g])}function nt(k,g){for(let y=k;y<g;y++){let[O,_]=L[y],E=o(O),I=o(_),N=new Map,j=new Map,J=null;for(let $ of E)W($)&&(d.has($)?J=$:(N.has(J)||N.set(J,[]),N.get(J).push($)));J=null;for(let $ of I)W($)&&(b.has($)?J=b.get($):(j.has(J)||j.set(J,[]),j.get(J).push($)));for(let[$,ce]of N){let ge=j.get($);if(!(!ge||ce.length!==ge.length)&&ce.every((ht,ft)=>ge[ft].tagName===ht.tagName&&xe(ht,ge[ft])&&!he(ht,ge[ft])))for(let ht=0;ht<ce.length;ht++)Qe(ce[ht],ge[ht])}}}function Qe(k,g){K(k,g),f.add(k),H.push([k,g]),dt()}function ct(k,g){let y=Wn(k,i),O=Wn(g,i),_=new Map;for(let E of g){let I=i(E);O.get(I)===1&&_.set(I,E)}for(let E of k){if(d.has(E))continue;let I=i(E);if(y.get(I)!==1)continue;let N=_.get(I);N&&!b.has(N)&&C(E,N)}}function C(k,g){K(k,g),p.add(k),W(k)&&v.add(k)}function G(k){let g=d.get(k);if(!g||!W(k))return;let y=o(k),O=o(g);for(let _=0;_<y.length&&_<O.length;_++)d.has(y[_])||C(y[_],O[_])}function ye(k,g){let y=I=>W(I)&&!V(I)?r(I).sig+""+r(I).hint:null,O=Wn(k,y),_=Wn(g,y),E=new Map;for(let I of g){let N=y(I);N!=null&&_.get(N)===1&&E.set(N,I)}for(let I of k){if(d.has(I))continue;let N=y(I);if(N==null||O.get(N)!==1)continue;let j=E.get(N);j&&!b.has(j)&&xe(I,j)&&K(I,j)}}function se(k,g,y,O){let _=new Map;for(let I of g){if(!W(I)||b.has(I)||V(I))continue;let N=r(I).sig;_.has(N)||_.set(N,[]),_.get(N).push({el:I,index:re.get(I)})}let E=[];for(let I of k){if(d.has(I)||!W(I)||V(I))continue;let N=_.get(r(I).sig);if(!N||!N.length)continue;let j=te.get(I),J=N.filter($=>!b.has($.el)).map($=>({c:$,d:Math.abs($.index-j)}));J.sort(($,ce)=>$.d-ce.d),J.length>Cs&&(J=J.slice(0,Cs));for(let{c:$,d:ce}of J){if(!xe(I,$.el))continue;let ge=l(I,$.el);ge&&ge.coef>=.5&&E.push({b:I,s:$.el,coef:ge.coef,share:ge.share,d:ce,bi:j})}}E.sort((I,N)=>N.coef-I.coef||N.share-I.share||I.d-N.d||I.bi-N.bi);for(let I of E)!d.has(I.b)&&!b.has(I.s)&&K(I.b,I.s)}function Ce(k,g){return W(k)!==W(g)?!1:W(k)?k.tagName!==g.tagName||!xe(k,g)?!1:V(k)||r(k).hint===""||r(g).hint===""?!0:s(k,g):k.kind===g.kind}function rt(k,g){let y=(_,E)=>{let I=E===null?-1:_===g?re.get(E):te.get(E),N=_[I+1];return N&&!W(N)?N:null},O=null;for(let _ of k){if(W(_)){O=_;continue}if(d.has(_))continue;let E=O===null?null:d.get(O);if(O!==null&&!E)continue;let I=y(g,E);I&&!b.has(I)&&I.kind===_.kind&&K(_,I)}}function Ve(k,g){rt(k,g);let y=Ke(k,g),O=(E,I)=>W(E)&&r(E).hint!==""&&r(I).hint===""&&!!I.querySelector("br")&&!y(E,I),_=0;for(let E of k){if(d.has(E)){let N=re.get(d.get(E));N!==void 0&&N>=_&&(_=N+1);continue}let I=0;for(let N=_;N<g.length&&I<jc;N++){let j=g[N];if(!b.has(j)&&(I++,Ce(E,j)&&!he(E,j)&&!O(E,j))){K(E,j),W(E)&&(r(E).hint===""||r(j).hint==="")&&f.add(E),_=N+1;break}}}et(k,g)}function Ke(k,g){let y=(O,_,E)=>{for(let I=_-1;I>=0;I--)if(W(O[I])&&E(O[I]))return O[I];return null};return(O,_)=>{let E=te.get(O),I=re.get(_);if(E===I)return!0;let N=y(k,E,J=>d.has(J)),j=y(g,I,J=>b.has(J));return N?d.get(N)===j:!j}}function et(k,g){let y=k.filter(N=>W(N)&&!d.has(N)),O=g.filter(N=>W(N)&&!b.has(N));if(!y.length||!O.length)return;let _=Wn(y,N=>N.tagName),E=Wn(O,N=>N.tagName),I=Ke(k,g);for(let N of y){let j=N.tagName;if(_.get(j)!==1||E.get(j)!==1)continue;let J=O.find($=>$.tagName===j);J&&!b.has(J)&&I(N,J)&&xe(N,J)&&!he(N,J)&&(K(N,J),f.add(N))}}function ut(){let k=new Map;for(let N of f)if(W(N)&&W(d.get(N))){let j=r(N).hash;k.has(j)||k.set(j,[]),k.get(j).push(N)}if(k.size)for(let N of M){if(b.has(N)||!W(N))continue;let j=k.get(r(N).hash),J=j&&j.find($=>f.has($)&&!he($,N)&&xe($,N));J&&(xt(J),C(J,N),m.add(J))}let g=new Map,y=new Map,O=new Map;for(let N of f){let j=d.get(N);W(N)&&W(j)&&O.set(j,N)}let _=(N,j)=>{if(!b.has(N))return!0;let J=O.get(N);return J===b.get(N)&&J!==j&&!J.contains(j)},E=N=>{if(b.has(N)){let j=O.get(N);O.delete(N),xt(j)}};for(let N of[...M,...O.keys()]){if(b.has(N)&&!O.has(N))continue;let j=r(N).hash;if(g.has(j)||g.set(j,[]),g.get(j).push(N),V(N))continue;let J=r(N).sig;y.has(J)||y.set(J,[]),y.get(J).push(N)}let I=new Set;for(let N of f){let j=d.get(N);!W(N)||!W(j)||V(N)||r(N).hint===""||r(j).hint===""||s(N,j)||I.add(N)}for(let N of[...A,...I]){let j=d.get(N);if(j&&!(f.has(N)&&I.has(N)))continue;let J=ft=>{j&&xt(N),E(ft)},$=g.get(r(N).hash);if($){let ft=$.find(ue=>ue!==j&&_(ue,N)&&!he(N,ue));if(ft){J(ft),C(N,ft),m.add(N);continue}}if(V(N)||B<=0)continue;let ce=y.get(r(N).sig);if(!ce)continue;let ge=null,ht=0;for(let ft of ce)if(!(ft===j||!_(ft,N)||!xe(N,ft)||he(N,ft))&&(B--<=0||s(N,ft)&&(ht++,ge=ft,ht>1)))break;ht===1&&(J(ge),K(N,ge),m.add(N),H.push([N,ge]))}}}function Wn(e,t){let n=new Map;for(let r of e){let o=t(r);o!=null&&n.set(o,(n.get(o)||0)+1)}return n}var Pc={diff:0},Os=typeof Intl<"u"&&typeof Intl.Segmenter=="function"?new Intl.Segmenter(void 0,{granularity:"word"}):null,Fc=/[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Thai}\p{Script=Lao}\p{Script=Khmer}\p{Script=Myanmar}]/u,qc=/[\p{L}\p{M}\p{N}_'’]+|\s+|[\s\S]/gu,Bc=/\P{M}\p{M}*/gu;function ci(e){if(e==="")return[];if(Os){let n=[];for(let r of Os.segment(e))n.push(r.segment);return n}let t=[];for(let n of e.match(qc))if(Fc.test(n))for(let r of n.match(Bc))t.push(r);else t.push(n);return t}var Hc=/^[  ]+$/,$c=e=>Hc.test(e)?" ".repeat(e.length):e,Sr=e=>typeof e.k=="string"&&/^\s+$/.test(e.k),it="",Ns=e=>e.every(t=>Sr(t)||t.k===it),Uc=/^[\x00-\x7f\u00A0]*$/,zc=/[A-Za-z0-9_']+|[ \u00A0]+|\s|./g;function Vc(e){return e===""?[]:e.match(zc)}function jn(e,t=!1){return(t?Vc(e):ci(e)).map(n=>({k:$c(n),raw:n,len:n.length}))}var lo=(...e)=>e.every(t=>Uc.test(t));function ii(e,t,n){let r=e.length,o=t.length,i=Math.min(r+o,n),s=i+1,l=new Int32Array(2*i+3),a=[],h=r===0&&o===0;for(let u=0;u<=i&&!h;u++){a.push(l.slice(s-u,s+u+1));for(let m=-u;m<=u;m+=2){let p;m===-u||m!==u&&l[s+m-1]<l[s+m+1]?p=l[s+m+1]:p=l[s+m-1]+1;let v=p-m,A=p;for(;p<r&&v<o&&e[p].k===t[v].k;)p++,v++;if(Pc.diff+=1+p-A,l[s+m]=p,p>=r&&v>=o){h=!0;break}}}if(!h)return null;let d=[],b=r,f=o;for(let u=a.length-1;u>0;u--){let m=a[u],p=b-f,v=p+u,A=p===-u||p!==u&&m[v-1]<m[v+1]?p+1:p-1,M=m[A+u],L=M-A;for(;b>M&&f>L;)d.push([0,b-1,f-1]),b--,f--;b===M?(d.push([1,b,f-1]),f--):(d.push([-1,b-1,f]),b--)}for(;b>0&&f>0;)d.push([0,b-1,f-1]),b--,f--;return d.reverse(),d}function Wc(e,t,n){let r=b=>b.k===it;if(!e.some(r)&&!t.some(r))return ii(e,t,n);let o=[],i=[];for(let b=0;b<e.length;b++)r(e[b])||o.push(b);for(let b=0;b<t.length;b++)r(t[b])||i.push(b);let s=ii(o.map(b=>e[b]),i.map(b=>t[b]),n);if(!s)return null;let l=[],a=0,h=0,d=(b,f)=>{for(;a<b&&h<f&&e[a].k===t[h].k;)l.push([0,a++,h++]);let u=ii(e.slice(a,b),t.slice(h,f),n);if(!u)return!1;for(let[m,p,v]of u)l.push([m,p+a,v+h]);return a=b,h=f,!0};for(let[b,f,u]of s)if(b===0){if(!d(o[f],i[u]))return null;l.push([0,a,h]),a++,h++}return d(e.length,t.length)?l:null}function Kn(e,t,n=4e3){let r=[],o=0;for(;o<e.length&&o<t.length&&e[o].k===t[o].k;)e[o].raw!==t[o].raw&&r.push({bi:o,tok:t[o]}),o++;let i=0;for(;i<e.length-o&&i<t.length-o&&e[e.length-1-i].k===t[t.length-1-i].k;)e[e.length-1-i].raw!==t[t.length-1-i].raw&&r.push({bi:e.length-1-i,tok:t[t.length-1-i]}),i++;let s=e.slice(o,e.length-i),l=t.slice(o,t.length-i),a=Zc(s,l)?null:Wc(s,l,n);if(!a){let A=s.length||l.length?[{bs:o,be:o+s.length,toks:l}]:[];return{hunks:A,cosmetic:r,coarse:!0,parts:A.map(M=>({...M,gap:[],group:0})),cosmeticEq:r}}let h=[],d=(A,M)=>{s[A].raw!==l[M].raw&&r.push({bi:o+A,tok:l[M]})},b=null,f=[],u=0,m=0,p=()=>{b&&h.push(b),b=null;for(let[A,M]of f)d(A,M);f=[],u++};for(let[A,M,L]of a){if(A===0){b&&Sr(s[M])&&!s[M].k.includes(`
2
- `)?f.push([M,L]):(p(),d(M,L)),m=M+1;continue}(!b||f.length)&&(b&&h.push(b),b={bs:o+m,be:o+m,toks:[],gap:f.map(([H,B])=>({bi:o+H,tok:l[B]})),group:u},f=[]),A===-1?(b.be=o+m+1,m=M+1):b.toks.push(l[L])}p(),Kc(h,e);let v=li(h);return{hunks:v.hunks,cosmetic:r.concat(v.cosmetic),parts:h,cosmeticEq:r}}function Kc(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(r.gap.length)continue;let o=n+1<e.length?e[n+1].bs:1/0;if(r.toks.length){if(r.bs===r.be)for(;r.bs+1<o&&r.bs<t.length&&r.toks[0].k===it&&t[r.bs].k===it;)r.toks=[...r.toks.slice(1),r.toks[0]],r.bs++,r.be++}else for(;r.be+1<o&&r.be<t.length&&t[r.bs].k===it&&t[r.be].k===it;)r.bs++,r.be++}}function li(e,t=()=>!1){let n=[],r=[],o=null,i=-1;for(let s of e){let l=t(s);if(o&&!o.alone&&!l&&s.group===i){o.be=s.be;for(let a of s.gap)o.toks.push(a.tok);for(let a of s.toks)o.toks.push(a);continue}o&&n.push({bs:o.bs,be:o.be,toks:o.toks});for(let a of s.gap)r.push(a);o={bs:s.bs,be:s.be,toks:s.toks.slice(),alone:l},i=s.group}return o&&n.push({bs:o.bs,be:o.be,toks:o.toks}),{hunks:n,cosmetic:r}}var Gc=(e,t)=>e.bs===t.bs&&e.be===t.be&&fi(e.toks,t.toks);function ui(e,t,n){let r=d=>b=>d.some(f=>Gc(b,f)),o=li(e.parts,r(t.parts)),i=li(t.parts,r(e.parts)),s=e.cosmeticEq.concat(o.cosmetic),l=t.cosmeticEq.concat(i.cosmetic),[a,h]=n?Yc(o.hunks,i.hunks,n,s,l):[o.hunks,i.hunks];return{lh:a,rh:h,cosL:s,cosR:l}}function Yc(e,t,n,r,o){let i=(u,m)=>u.k===m.k&&u.raw===m.raw,s=[{list:e.map(u=>({...u})),resp:new Set(r.map(u=>u.bi))},{list:t.map(u=>({...u})),resp:new Set(o.map(u=>u.bi))}],l=u=>u.bs===u.be,a=(u,m,p,v)=>{let A=u.list[m];if(!l(A))return v(A)===p?A.toks:null;let M=m?u.list[m-1].be:0,L=m+1<u.list.length?u.list[m+1].bs:n.length;if(p<M||p>L)return null;let H=A.toks,B=A.bs;for(;B>p;){let te=H[H.length-1];if(!i(te,n[B-1])||u.resp.has(B-1))return null;H=[te,...H.slice(0,-1)],B--}for(;B<p;){if(!i(H[0],n[B])||u.resp.has(B))return null;H=[...H.slice(1),H[0]],B++}return H},h=(u,m,p,v,A,M)=>{let L=u.list[m],H=A?p.slice(p.length-v):p.slice(0,v),B=A?p.slice(0,p.length-v):p.slice(v),te={bs:M,be:M,toks:H};if(l(L)){if(!B.length){u.list[m]=te;return}let K={bs:M,be:M,toks:B};A&&(K.lead=!0),u.list.splice(m,1,...A?[K,te]:[te,K]);return}let re={bs:L.bs,be:L.be,toks:B};u.list.splice(m,1,...A?[re,te]:[te,re])},d=(u,m,p,v,A)=>{let M=u.list[m],L=A?p.slice(p.length-v):p.slice(0,v),H=A?p.slice(0,p.length-v):p.slice(v),B={bs:M.bs,be:M.be,toks:L};if(!H.length){u.list[m]=B;return}let te=A?{bs:M.bs,be:M.bs,toks:H,lead:!0}:{bs:M.be,be:M.be,toks:H};u.list.splice(m,1,...A?[te,B]:[B,te])},b=s[0],f=s[1];for(let u=0;u<64;u++){let m=!1;e:for(let p=0;p<b.list.length;p++)for(let v=0;v<f.list.length;v++){let A=b.list[p],M=f.list[v];if(!(A.bs===M.bs&&A.be===M.be&&fi(A.toks,M.toks)))for(let L of[!0,!1]){let H=te=>L?te.be:te.bs,B=l(A)?[H(M),A.bs]:[H(A)];for(let te of B){let re=a(b,p,te,H),K=re&&a(f,v,te,H);if(!K)continue;let W=(at,Nt)=>L?at[at.length-1-Nt]:at[Nt],he=0;for(;he<re.length&&he<K.length&&W(re,he).k===W(K,he).k;)he++;if(!he)continue;let V=L?re.slice(0,re.length-he):re.slice(he),xe=L?K.slice(0,K.length-he):K.slice(he);if(!(he<re.length&&he<K.length&&!Ns(V)&&!Ns(xe)&&(l(A)&&l(M)||A.bs===M.bs&&A.be===M.be)||!(L?re.slice(re.length-he):re.slice(0,he)).some(at=>!Sr(at)))){if(he===re.length&&he===K.length&&l(A)&&l(M)){if(A.bs===te&&M.bs===te)continue;b.list[p]={bs:te,be:te,toks:re},f.list[v]={bs:te,be:te,toks:K}}else!l(A)&&A.bs===M.bs&&A.be===M.be?(d(b,p,re,he,L),d(f,v,K,he,L)):(h(b,p,re,he,L,te),h(f,v,K,he,L,te));m=!0;break e}}}}if(!m)break}return[b.list,f.list]}var Xc=48,Jc=.3;function Zc(e,t){let n=e.filter(s=>!Sr(s)),r=t.filter(s=>!Sr(s));if(Math.min(n.length,r.length)<Xc)return!1;let o=new Map;for(let s of n)o.set(s.k,(o.get(s.k)||0)+1);let i=0;for(let s of r){let l=o.get(s.k);l>0&&(i++,o.set(s.k,l-1))}return i/Math.min(n.length,r.length)<Jc}var Qc=(e,t)=>{let n=new Set;for(let r of e.toks)typeof r.k!="string"&&n.add(r.k.el);for(let r=e.bs;r<e.be;r++)typeof t[r].k!="string"&&n.add(t[r].k.el);return n},fi=(e,t)=>e.length===t.length&&e.every((n,r)=>n.k===t[r].k);function Rs(e,t,n,r="remote"){let o=Kn(e,t),i=Kn(e,n),{lh:s,rh:l,cosL:a,cosR:h}=ui(o,i,e),d=C=>C.bs===C.be,b=C=>C.toks.some(G=>typeof G.k=="string"),f=C=>d(C)&&!b(C),u=(C,G)=>G.bs<C.be&&C.bs<G.be,m=(C,G)=>!u(C,G)&&G.bs<=C.be&&C.bs<=G.be&&(d(C)&&b(C)||d(G)&&b(G))&&!(d(C)&&d(G)),p=(C,G)=>C.bs===G.bs&&C.be===G.be&&fi(C.toks,G.toks),v=[],A=new Set;for(let C of s){let G=l.find(ye=>!A.has(ye)&&p(C,ye));G?(A.add(G),v.push({bs:C.bs,be:C.be,side:"both",l:C,r:G,toks:C.toks})):v.push({bs:C.bs,be:C.be,side:"L",l:C,toks:C.toks,lead:!!C.lead})}for(let C of l)A.has(C)||v.push({bs:C.bs,be:C.be,side:"R",r:C,toks:C.toks,lead:!!C.lead});v.sort((C,G)=>C.bs-G.bs||C.be-G.be||G.lead-C.lead);let M=0,L=0;for(let C of v)C.side==="both"&&(M+=C.toks.length-(C.be-C.bs));let H=v.map((C,G)=>G),B=C=>H[C]===C?C:H[C]=B(H[C]),te=(C,G)=>(C=B(C),G=B(G),C===G?!1:(H[C]=G,!0)),re=v.map(C=>Qc({bs:C.bs,be:C.be,toks:C.toks},e)),K={L:new Map,R:new Map};v.forEach((C,G)=>{let ye=C.side==="both"?["L","R"]:[C.side];for(let se of ye)for(let Ce of re[G])K[se].has(Ce)||K[se].set(Ce,[]),K[se].get(Ce).push(G)});for(let C of[K.L,K.R])for(let G of C.values())for(let ye=1;ye<G.length;ye++)te(G[0],G[ye]);for(let C=0;C<v.length;C++)for(let G=C+1;G<v.length;G++){let ye=v[C],se=v[G];ye.side===se.side&&ye.side!=="both"||ye.bs>se.be||(u(ye,se)||m(ye,se)?te(C,G):ye.bs===se.bs&&d(ye)&&d(se)&&L++)}let W=(C,G)=>{let ye=C==="L"?s:l;for(let se of ye)if(se.toks.some(Ce=>Ce.kind==="close"&&Ce.k.el===G.el))return se.bs;for(let se=0;se<e.length;se++)if(e[se].kind==="close"&&e[se].k.el===G.el)return se;return-1};v.forEach((C,G)=>{if(!(!f(C)||C.side==="both"))for(let ye of C.toks){if(ye.kind!=="open")continue;let se=W(C.side,ye.k);if(se<=C.bs)continue;let Ce=new Uint8Array(se-C.bs),rt=[];if(v.forEach((Ve,Ke)=>{if(!(Ve.side===C.side||d(Ve))&&Ve.bs<se&&Ve.be>C.bs){rt.push(Ke);for(let et=Math.max(Ve.bs,C.bs);et<Math.min(Ve.be,se);et++)Ce[et-C.bs]=1}}),rt.length&&Ce.every(Ve=>Ve===1))for(let Ve of rt)te(G,Ve)}});let he=!0;for(;he;){he=!1;let C=new Map;v.forEach((G,ye)=>{let se=B(ye),Ce=C.get(se)||{bs:G.bs,be:G.be,L:!1,R:!1};Ce.bs=Math.min(Ce.bs,G.bs),Ce.be=Math.max(Ce.be,G.be),G.side!=="R"&&(Ce.L=!0),G.side!=="L"&&(Ce.R=!0),C.set(se,Ce)}),v.forEach((G,ye)=>{for(let[se,Ce]of C){if(B(ye)===B(se)||!(Ce.L&&Ce.R))continue;let rt=G.bs<Ce.be&&G.be>Ce.bs,Ve=d(G)&&b(G)&&(G.bs===Ce.be||G.bs===Ce.bs);(rt||Ve)&&te(ye,se)&&(he=!0)}})}let V=new Map;v.forEach((C,G)=>{let ye=B(G);V.has(ye)||V.set(ye,[]),V.get(ye).push(C)});let xe=[];for(let C of V.values()){let G=C.some(se=>se.side==="L"),ye=C.some(se=>se.side==="R");if(G&&ye){let se=Math.min(...C.map(Ke=>Ke.bs)),Ce=Math.max(...C.map(Ke=>Ke.be)),rt=C.filter(Ke=>Ke.side!=="R").map(Ke=>Ke.l).sort((Ke,et)=>Ke.bs-et.bs),Ve=C.filter(Ke=>Ke.side!=="L").map(Ke=>Ke.r).sort((Ke,et)=>Ke.bs-et.bs);xe.push({bs:se,be:Ce,kind:"conflict",localHunks:rt,remoteHunks:Ve})}else for(let se of C)xe.push({bs:se.bs,be:se.be,kind:se.side,u:se})}let We=(C,G)=>{let ye=C==="L"?s:l;for(let se of ye)if(se.toks.some(Ce=>Ce.kind==="close"&&Ce.k.el===G.el))return se.bs+.5;for(let se=0;se<e.length;se++)if(e[se].kind==="close"&&e[se].k.el===G.el)return se;return 1/0},at=(C,G)=>{let ye=C==="L"?s:l;for(let se of ye)if(se.toks.some(Ce=>Ce.kind==="open"&&Ce.k.el===G.el))return se.bs-.5;for(let se=0;se<e.length;se++)if(e[se].kind==="open"&&e[se].k.el===G.el)return se;return-1/0},Nt=C=>C.kind==="R"?"R":"L",xt=C=>C.kind==="R"?1:0;xe.sort((C,G)=>{if(C.bs!==G.bs)return C.bs-G.bs;let ye=C.bs===C.be,se=G.bs===G.be;if(ye!==se)return ye?-1:1;if(ye&&se&&C.kind!=="conflict"&&G.kind!=="conflict"){let rt=C.u.toks,Ve=G.u.toks,Ke=ut=>ut.length&&ut.every(k=>k.kind==="open"),et=ut=>ut.length&&ut.every(k=>k.kind==="close");if(Ke(rt)&&Ke(Ve)){let ut=Math.max(...rt.map(g=>We(Nt(C),g.k))),k=Math.max(...Ve.map(g=>We(Nt(G),g.k)));if(ut!==k)return k-ut}if(et(rt)&&et(Ve)){let ut=Math.min(...rt.map(g=>at(Nt(C),g.k))),k=Math.min(...Ve.map(g=>at(Nt(G),g.k)));return ut!==k?k-ut:xt(G)-xt(C)}}let Ce=rt=>rt.u&&rt.u.lead?1:0;return Ce(G)-Ce(C)||xt(C)-xt(G)||C.be-G.be});let _e=[],dt=[],Ze=0,Rt=C=>{C>Ze&&(_e.push({bs:Ze,be:C,toks:e.slice(Ze,C),source:"base"}),Ze=C)};for(let C of xe){if(Rt(C.bs),C.kind==="conflict"){let G=ai(e,C.localHunks,C.bs,C.be),ye=ai(e,C.remoteHunks,C.bs,C.be),se=r==="local"?G:r==="both"?G.concat(ye):ye;dt.push({bs:C.bs,be:C.be,base:e.slice(C.bs,C.be),local:G,remote:ye,resolved:se}),_e.push({bs:C.bs,be:C.be,toks:se,source:"conflict",localHunks:C.localHunks,localToks:G,keepsLocal:r!=="remote"})}else _e.push({bs:C.bs,be:C.be,toks:C.u.toks,source:C.kind==="R"?"remote":"local",localHunks:C.kind==="R"?[]:[C.u.l]});Ze=Math.max(Ze,C.be)}Rt(e.length);let nt=new Map(a.map(C=>[C.bi,C.tok])),Qe=new Map(h.map(C=>[C.bi,C.tok])),ct=[];for(let C of _e){C.source==="base"&&(C.toks=C.toks.map((G,ye)=>{let se=C.bs+ye,Ce=nt.get(se),rt=Qe.get(se),Ve=Ce&&rt?r==="remote"?rt:Ce:Ce||rt||G;return Ve===G?G:{...Ve,cosmetic:!0}}));for(let G of C.toks)ct.push({...G,src:C.source})}return{tokens:ct,segments:_e,conflicts:dt,localHunks:s,remoteHunks:l,collapsedDelta:M,samePoint:L,mapLocalOffset:eu(e,s,_e)}}function ai(e,t,n,r){let o=[],i=n;for(let s of t)o=o.concat(e.slice(i,s.bs),s.toks),i=s.be;return o.concat(e.slice(i,r))}var si=e=>e.reduce((t,n)=>t+n.len,0);function eu(e,t,n){let r=new Int32Array(e.length+1);for(let s=0;s<e.length;s++)r[s+1]=r[s]+e[s].len;let o=t.map(s=>({bs:r[s.bs],be:r[s.be],text:s.toks.map(l=>l.raw).join(""),ref:s})),i=n.map(s=>({bs:r[s.bs],be:r[s.be],len:si(s.toks),source:s.source,localHunks:s.localHunks||[],localLen:s.localToks?si(s.localToks):0,keepsLocal:s.keepsLocal,ref:s}));return s=>{let l=null,a=null,h=0,d=0,b=0;for(let u of o){let m=u.bs-b;if(s<=d+m){l=b+(s-d);break}if(d+=m,b=u.bs,s<=d+u.text.length){a=u,h=s-d,l=u.bs;break}d+=u.text.length,b=u.be}l===null&&(l=b+(s-d));let f=0;for(let u of i){if(!a&&l<=u.bs)return f;if(!(a?u.localHunks.includes(a.ref):l<u.be)){f+=u.len;continue}if(u.source==="base")return f+(l-u.bs);if(u.source==="remote")return f+u.len;if(u.source==="local")return f+Math.min(h,u.len);if(!u.keepsLocal||!a)return f+u.len;let p=u.localHunks.indexOf(a.ref),v=si(ai(e,u.localHunks.slice(0,p),u.ref.bs,a.ref.bs));return f+Math.min(v+h,u.localLen)}return f}}function Tr(e,t,n,r="remote"){if(t===n||n===e)return{text:t,conflicts:[],mapLocalOffset:u=>Math.min(u,t.length),granularity:"word"};let o=lo(e,t,n),i=jn(e,o),s=jn(t,o),l=jn(n,o),a=i.length<=2e4&&s.length<=2e4&&l.length<=2e4?Rs(i,s,l,r):null,h="word",d=i;if(!a){let u=m=>m.split(/(?<=\n)/).map(p=>({k:p,raw:p,len:p.length}));d=u(e),a=Rs(d,u(t),u(n),r),h="line"}let b=u=>u.map(m=>m.raw).join(""),f=[0];for(let u of d)f.push(f[f.length-1]+u.len);return{text:b(a.tokens),conflicts:a.conflicts.map(u=>({bs:f[u.bs],be:f[u.be],base:b(u.base),local:b(u.local),remote:b(u.remote),resolved:b(u.resolved)})),mapLocalOffset:a.mapLocalOffset,granularity:h}}function Er(e,t,n=4e3){if(e===t)return[];let r=lo(e,t),o=jn(e,r),i=jn(t,r),s=Kn(o,i,n),l=[0];for(let a of o)l.push(l[l.length-1]+a.len);return s.hunks.map(a=>({bs:l[a.bs],be:l[a.be],text:a.toks.map(h=>h.raw).join("")}))}var Yn="\uFFFC";var tu={caret:0},mn=new Set("A ABBR B BDI BDO CITE CODE DATA DEL DFN EM FONT I INS KBD MARK Q S SAMP SMALL SPAN STRIKE STRONG SUB SUP TIME TT U VAR".split(" ")),Ps=new Set(["BR","WBR","IMG"]),nu=new Set("ADDRESS ARTICLE ASIDE AUDIO BLOCKQUOTE BODY CANVAS CAPTION CENTER COL COLGROUP DD DETAILS DIALOG DIR DIV DL DT FIELDSET FIGCAPTION FIGURE FOOTER FORM FRAME FRAMESET H1 H2 H3 H4 H5 H6 HEAD HEADER HGROUP HR HTML IFRAME LEGEND LI MAIN MATH MENU NAV NOSCRIPT OBJECT OL OPTGROUP OPTION P PRE SCRIPT SECTION SELECT STYLE SUMMARY SVG TABLE TBODY TD TEMPLATE TEXTAREA TFOOT TH THEAD TITLE TR UL VIDEO".split(" "));function Dn(e,t={}){if(e.nodeType===3)return!0;if(e.nodeType!==1)return!1;if(t.ignored&&t.ignored(e)||Ps.has(e.tagName))return!0;if(!mn.has(e.tagName))return!nu.has(e.tagName);if(t.remoteWins&&t.remoteWins(e))return!1;let n=t.inlineCache&&t.inlineCache.get(e);if(n!==void 0)return n;let r=!0;for(let o of e.childNodes)if(!Dn(o,t)){r=!1;break}return t.inlineCache&&t.inlineCache.set(e,r),r}function ru(e){return!e.firstChild||e.textContent===""&&!e.querySelector("br,img,wbr")}function _r(e,t={}){let n={text:"",marks:[],atoms:[],nodes:[],stackAt:[],pins:[],placeholder:null},r=(o,i)=>{for(let s of o){if(s.nodeType===3){let d=s.nodeValue;if(!d)continue;n.nodes.push({node:s,s:n.text.length,e:n.text.length+d.length}),n.text+=d;for(let b=0;b<d.length;b++)n.stackAt.push(i);continue}if(s.nodeType!==1)continue;if(t.ignored&&t.ignored(s)){n.pins.push({el:s,i:n.text.length});continue}if(t.skip&&t.skip.has(s))continue;let l=s.tagName;if(t.blocks&&t.blocks.has(s)){n.text.length&&n.text[n.text.length-1]!==it&&(n.stackAt.push(i),n.text+=it);let d={el:s,tag:l,from:n.text.length,to:-1,depth:i.length,block:!0};n.marks.push(d);let b=i.concat([d]);r(s.childNodes,b),n.stackAt.push(b),n.text+=it,d.to=n.text.length;continue}let a=mn.has(l)&&ru(s);if(Ps.has(l)||!mn.has(l)||t.remoteWins&&t.remoteWins(s)||t.atomize&&t.atomize(s)||a){n.atoms.push({i:n.text.length,el:s,key:a?l+":empty":l,stack:i}),n.stackAt.push(i),n.text+=Yn;continue}let h={el:s,tag:l,from:n.text.length,to:-1,depth:i.length};n.marks.push(h),r(s.childNodes,i.concat([h])),h.to=n.text.length}};if(r(e,[]),n.atoms.length===1&&n.atoms[0].el.tagName==="BR"&&n.marks.length===0&&ao(n).trim()===""){let o=n.atoms[0];n.placeholder=o.el,n.text=n.text.slice(0,o.i)+n.text.slice(o.i+1),n.stackAt.splice(o.i,1);for(let i of n.nodes)i.s>o.i&&(i.s--,i.e--);n.atoms=[]}return n.atomAt=new Map(n.atoms.map(o=>[o.i,o])),n}function ou(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/ /g,"&nbsp;")}function iu(e){let t="<"+e.tagName.toLowerCase();for(let n of e.attributes)t+=` ${n.name}="${n.value.replace(/"/g,"&quot;")}"`;return t+">"}function hi(e,t,n){let r="",o=[];for(let i=t;i<n;i++){let s=e.stackAt[i],l=0;for(;l<o.length&&l<s.length&&o[l]===s[l];)l++;for(;o.length>l;)r+=`</${o.pop().tag.toLowerCase()}>`;for(;o.length<s.length;){let h=s[o.length];r+=iu(h.el),o.push(h)}let a=e.atomAt.get(i);r+=a?a.el.outerHTML:e.text[i]===it?"":ou(e.text[i])}for(;o.length;)r+=`</${o.pop().tag.toLowerCase()}>`;return r}function su(e,t){let n=[...e.el.attributes].filter(r=>!t(e.el,r.name)).map(r=>r.name+"="+r.value).sort().join("");return e.tag+"|"+n}function Fs(e,t){let n=[...e.attributes].filter(r=>!t(e,r.name)).map(r=>r.name+"="+r.value).sort().join("");return e.tagName+"|"+n+"|"+e.innerHTML}function Ms(e,t=()=>!1){let n=new Map,r=i=>{let s=n.get(i);return s===void 0&&(s="{"+i.map(l=>su(l,t)).sort().join(",")+"}",n.set(i,s)),s},o="";for(let i=0;i<e.text.length;i++){let s=e.atomAt.get(i);o+=(s?"["+Fs(s.el,t)+"]":e.text[i])+r(e.stackAt[i])}return e.text.length===0&&e.placeholder&&(o+="[br]"),o}function Gn(e,t,n,r=o=>o.key){let o=[],i=e.text,s=0,l=a=>{if(a<=s)return;let h=i.slice(s,a);if(n)for(let d of h.split(/(?<=\n)/))o.push({k:d,raw:d,len:d.length});else for(let d of jn(h,t))o.push(d)};for(let a of e.atoms)l(a.i),o.push({k:"\0"+r(a),raw:Yn,len:1,atom:!0}),s=a.i+1;return l(i.length),o}function ao(e){if(!e.atoms.length)return e.text;let t="",n=0;for(let r of e.atoms)t+=e.text.slice(n,r.i),n=r.i+1;return t+e.text.slice(n)}var mi=e=>{let t=new Int32Array(e.length+1);for(let n=0;n<e.length;n++)t[n+1]=t[n]+e[n].len;return t};function Ls(e,t,n,r){let o=mi(t),i=mi(n),s=[],l=0,a=0;for(let d of r.hunks){a+=d.bs-l;let b=a+d.toks.length;s.push({bs:o[d.bs],be:o[d.be],ss:i[a],se:i[b],text:e.text.slice(i[a],i[b]),toks:d.toks,lead:!!d.lead}),a=b,l=d.be}let h=new Map;for(let d of r.cosmetic)h.set(d.bi,d.tok.raw);return{hunks:s,respell:h}}function Is(e,t,n){let r=s=>s===it||/\s/.test(s),o=s=>s.replace(/[\u001E\s]/g,""),i=[];for(let s of e){let l=t.slice(s.bs,s.be),a=n.slice(s.ss,s.se);if(!l.includes(it)&&!a.includes(it)||l.includes(Yn)||a.includes(Yn)||o(l)!==o(a)){i.push(s);continue}let h=0,d=0;for(;;){let b=h,f=d;for(;b<l.length&&r(l[b]);)b++;for(;f<a.length&&r(a[f]);)f++;let u=h,m=d;for(;u<b&&m<f&&l[u]===a[m];)u++,m++;let p=b,v=f;for(;p>u&&v>m&&l[p-1]===a[v-1];)p--,v--;if(p>u||v>m){let A=a.slice(m,v);i.push({bs:s.bs+u,be:s.bs+p,ss:s.ss+m,se:s.ss+v,text:A,toks:[...A].map(M=>({k:M,raw:M,len:1})),lead:s.lead})}if(b>=l.length)break;h=b+1,d=f+1}}return i}function js(e,t,n){let r=new Int32Array(t+1).fill(-1),o=new Int32Array(n+1).fill(-1),i=0,s=0,l=a=>{for(;i<a;)r[i]=s,o[s]=i,i++,s++};for(let a of e)l(a.bs),i=a.be,s=a.se;return l(t),r[t]=s,o[s]=t,{bTo:r,toB:o}}function Ds(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}function pi(e){let{out:t,policy:n="remote",L:r,R:o}=e,i=e.provenance||new WeakMap,s=e.textMappers||new WeakMap,l=e.conflicts||[],a=e.decisions||[],h=l.length,d=!!(r&&r.reverse&&r.map&&o&&o.reverse&&o.map),b={base:null,local:null,remote:null};if(d&&e.moveIn){let c=ne=>Ae=>ne.some(ee=>ee===Ae||ee.nodeType===1&&ee.contains(Ae)),x=c(e.local),S=c(e.remote),w=c(e.base),R=new Set,P=ne=>{if(!mn.has(ne.tagName))return;let Ae=r.map.get(ne),ee=o.map.get(ne);(Ae&&!x(Ae)||ee&&!S(ee))&&R.add(ne);for(let ae of ne.children)P(ae)};for(let ne of e.base)ne.nodeType===1&&P(ne);let X=ne=>Ae=>{if(!mn.has(Ae.tagName))return!1;let ee=ne.reverse.get(Ae);return!!ee&&(R.has(ee)||!w(ee))};R.size&&(b.base=ne=>R.has(ne)),b.local=X(r),b.remote=X(o)}let f={base:new Set,local:new Set,remote:new Set};if(d&&e.moveIn){let c=w=>R=>w.some(P=>P===R||P.nodeType===1&&P.contains(R)),x=c(e.local),S=c(e.remote);for(let w of _r(e.base,{...e,atomize:b.base}).atoms){let R=r.map.get(w.el),P=o.map.get(w.el),X=!!R&&!x(R),ne=!!P&&!S(P);!X&&!ne||(f.base.add(w.el),R&&!X&&f.local.add(R),P&&!ne&&f.remote.add(P),x(w.el)&&f.local.add(w.el),S(w.el)&&f.remote.add(w.el))}}let u=_r(e.base,{...e,atomize:b.base,skip:f.base}),m=_r(e.local,{...e,atomize:b.local,skip:f.local}),p=_r(e.remote,{...e,atomize:b.remote,skip:f.remote}),v=new Map(u.atoms.map(c=>[c.el,c])),A=(c,x,S)=>{x.namespaceURI?c.setAttributeNS(x.namespaceURI,x.name,S):c.setAttribute(x.name,S)},M=(c,x,S,w)=>{if(!x&&(!S||!w)){for(let P of(S||w).attributes)A(c,P,P.value);return}let R=new Map;for(let P of[x,S,w])if(P)for(let X of P.attributes)R.set(X.name,X);for(let[P,X]of R){let ne=x?x.getAttribute(P):null,Ae=S?S.getAttribute(P):ne,ee=w?w.getAttribute(P):ne,ae;Ae===ee?ae=Ae:Ae===ne?(ae=ee,a.push({kind:"attr",el:c,name:P,source:"remote"})):ee===ne?(ae=Ae,a.push({kind:"attr",el:c,name:P,source:"local"})):(ae=n==="local"?Ae:ee,l.push({kind:"attr",el:c,name:P,base:ne,local:Ae,remote:ee,resolved:ae}),a.push({kind:"attr",el:c,name:P,source:"both"})),ae!=null&&A(c,X,ae)}},L=(c,x,S,w)=>c&&e.mergeAttrs?e.mergeAttrs(c,x,S,w):M(w,c,x,S),H=e.mergeElement||((c,x,S)=>{let w=t.createElement(c.tagName);L(c,x,S,w);let R=x||c,P=S||c,X=n==="local"?R.isEqualNode(c)?P:R:P.isEqualNode(c)?R:P;for(let ne of X.childNodes)w.appendChild(t.importNode(ne,!0));return i.set(w,{base:c,local:x,remote:S}),w}),B=e.cloneUnit||((c,x)=>{let S=t.importNode(c,!0);return i.set(S,{base:null,local:x==="local"?c:null,remote:x==="remote"?c:null}),S}),te=e.atomKey||(c=>Fs(c,()=>!1)),re=(c,x)=>{let S=new Map;for(let w of c.atoms)if(e.remoteWins&&e.remoteWins(w.el)&&mn.has(w.el.tagName))S.set(w,"w"+w.el.tagName+"#"+(w.el.id||""));else if(!d)S.set(w,w.key);else if(c===u)S.set(w,"="+te(w.el));else{let R=x.reverse.get(w.el),P=R?v.get(R):null;P?S.set(w,"="+te(P.el)):R?S.set(w,"m"+te(w.el)):S.set(w,"="+te(w.el))}return w=>S.get(w)},K=re(u,null),W=re(m,r),he=re(p,o),V=lo(ao(u),ao(m),ao(p)),xe=Gn(u,V,!1,K),We=Gn(m,V,!1,W),at=Gn(p,V,!1,he),Nt=xe.length>2e4||We.length>2e4||at.length>2e4;Nt&&(xe=Gn(u,V,!0,K),We=Gn(m,V,!0,W),at=Gn(p,V,!0,he));let xt=ui(Kn(xe,We),Kn(xe,at),xe),_e=Ls(m,xe,We,{hunks:xt.lh,cosmetic:xt.cosL}),dt=Ls(p,xe,at,{hunks:xt.rh,cosmetic:xt.cosR});_e.hunks=Is(_e.hunks,u.text,m.text),dt.hunks=Is(dt.hunks,u.text,p.text);let Ze=js(_e.hunks,u.text.length,m.text.length),Rt=js(dt.hunks,u.text.length,p.text.length),nt=u.text.length,Qe=c=>new Map(c.atoms.map(x=>[x.el,x])),ct=Qe(m),C=Qe(p),G=(c,x,S)=>{let w=new Set;if(!d)return w;for(let R of c.atoms){let P=v.get(x.reverse.get(R.el));P&&S.bTo[P.i]<0&&w.add(P)}return w},ye=G(m,r,Ze),se=G(p,o,Rt),Ce=c=>!Dn(c,{...e,remoteWins:null}),rt=new Set;if(d)for(let c of u.atoms){if(!Ce(c.el))continue;let x=r.map.get(c.el)||null,S=o.map.get(c.el)||null,w=x&&!S?x:S&&!x?S:null;w&&(ct.has(w)||C.has(w))&&!w.isEqualNode(c.el)&&rt.add(c)}let Ve=1,Ke=(c,x)=>({id:Ve++,tag:c,base:null,local:null,remote:null,rank:x}),et=new Map,ut=[];for(let c of u.marks){let x=Ke(c.tag,c.depth);x.block=!!c.block,x.base=c.el,x.baseMark=c,et.set(c.el,x),ut.push(x)}let k=(c,x)=>{let S=-1,w=-1;for(let R=c.from;R<c.to;R++){let P=x[R];P>=0&&(S<0&&(S=P),w=P+1)}return S<0?null:[S,w]},g=(c,x,S,w)=>{for(let R of c.marks){let P=S?S.reverse.get(R.el):null;P&&S.identical.has(P)&&S.pairIdenticalChildren&&S.pairIdenticalChildren(P);let X=P?et.get(P):null;if(X&&X[x]&&(X=null),!X){let ne=k(R,w),Ae=0;if(ne)for(let ee of ut){if(ee.tag!==R.tag||ee[x]||!!ee.block!=!!R.block)continue;let ae=Math.min(ne[1],ee.baseMark.to)-Math.max(ne[0],ee.baseMark.from);(ae>Ae||ae===Ae&&ae>0&&Math.abs(ee.rank-R.depth)<Math.abs(X.rank-R.depth))&&(X=ee,Ae=ae)}}X||(X=Ke(R.tag,R.depth),X.block=!!R.block,X.new=x),X[x]=R.el,X[x+"Mark"]=R,et.set(R.el,X)}};g(m,"local",r,Ze.toB),g(p,"remote",o,Rt.toB);let y=c=>c.merged||c,O=c=>{let x=new Set;for(let S of c)S.block||x.add(et.get(S.el));return x},_=new Map,E=c=>{let x=_.get(c);return x||(x=O(c),_.set(c,x)),x},I=(c,x)=>{let S=[],w=null;for(let R=0;R<nt;R++){let P=x[R];if(P<0){w&&S.push(w),w=null;continue}let X=E(u.stackAt[R]),ne=E(c.stackAt[P]),Ae=new Set,ee=new Set;for(let ae of ne)X.has(ae)||Ae.add(ae);for(let ae of X)ne.has(ae)||ee.add(ae);if(!Ae.size&&!ee.size){w&&S.push(w),w=null;continue}if(w&&Ds(w.added,Ae)&&Ds(w.removed,ee)){w.be=R+1;continue}w&&S.push(w),w={bs:R,be:R+1,added:Ae,removed:ee}}return w&&S.push(w),S},N=I(m,Ze.bTo),j=I(p,Rt.bTo),J=c=>c.be>c.bs?[c.bs,c.be-1]:[c.bs-1,c.bs],$=(c,x)=>{if(nt===0)return null;let[S,w]=J(c);for(let R of x){if(R.be<=S)continue;if(R.bs>w)break;let P=R.bs<=S&&w<R.be;return P&&c.text===""&&R.bs===c.bs&&R.be===c.be?"straddle":P?R:c.be>c.bs?"straddle":null}return null},ce=c=>c.bs===c.be,ge=(c,x)=>{let S=!1;for(let w=c.bs;w<c.be;w++){let R=u.text[w];if(R===it)S=!0;else if(!/\s/.test(R))return!1}for(let w=c.ss;w<c.se;w++){let R=x.text[w];if(R===it)S=!0;else if(!/\s/.test(R))return!1}return S},ht=(c,x)=>c.bs<x.be&&x.bs<c.be,ft=(c,x)=>c.bs<=x.be&&x.bs<=c.be&&ce(c)!==ce(x),ue=(c,x)=>u.text.slice(c.bs,c.be).includes(it)||x.text.slice(c.ss,c.se).includes(it),Ge=c=>{if(ce(c))return!1;let x=c.bs,S=c.be;for(;x>0&&/\s/.test(u.text[x-1]);)x--;for(;S<u.text.length&&/\s/.test(u.text[S]);)S++;return(x===0||u.text[x-1]===it)&&(S===u.text.length||u.text[S]===it)},Ft=(c,x)=>!ue(c,x)&&!Ge(c),vt=(c,x)=>ht(c,x)||ft(c,x)&&!(ge(c,m)&&Ft(x,p))&&!(ge(x,p)&&Ft(c,m)),Ht=(c,x)=>{if(c.bs!==x.bs||c.be!==x.be||c.toks.length!==x.toks.length)return!1;let S=c.ss,w=x.ss;for(let R=0;R<c.toks.length;R++){let P=c.toks[R],X=x.toks[R];if(P.k!==X.k||P.atom&&!m.atomAt.get(S).el.isEqualNode(p.atomAt.get(w).el))return!1;S+=P.len,w+=X.len}return!0},Wt=(c,x,S,w)=>{for(let R of u.atoms){if(R.i<c.bs||R.i>=c.be||w.has(R)||rt.has(R))continue;let P=x.bTo[R.i],X=P>=0?S.atomAt.get(P):null;if(X&&!X.el.isEqualNode(R.el))return!0}return!1},Tt=[],Et=_e.hunks,T=dt.hunks,D=0,F=0,z=0,q=0,U=0,Q=c=>{c>z&&(Tt.push({src:"base",from:z,to:c,dL:q,dR:U}),z=c)};for(;D<Et.length||F<T.length;){let c=Et[D],x=T[F],S=!!c&&(!x||c.bs<x.bs||c.bs===x.bs&&c.be<=x.be&&!x.lead);if(c&&x&&c.bs===x.bs&&ce(c)&&ce(x)){let Ot=ge(c,m),Ln=ge(x,p);Ot!==Ln&&(S=Ln)}let w=S?c:x,R=S?x:c,P=!!R&&Ht(c,x),X=!!R&&(S?!!Et[D+1]&&Ht(Et[D+1],x):!!T[F+1]&&Ht(c,T[F+1])),ne=!!R&&!P&&!X&&(nt===0||vt(c,x)),Ae=ne,ee=$(w,S?j:N);if(ee==="straddle"&&(Ae=!0),!Ae&&w.be>w.bs&&(Ae=Wt(w,S?Rt:Ze,S?p:m,S?ye:se)),!Ae&&P){Q(w.bs),Tt.push({src:"both",lfrom:c.ss,rfrom:x.ss,len:w.text.length}),z=w.be,q+=w.text.length-(w.be-w.bs),U+=w.text.length-(w.be-w.bs),D++,F++;continue}if(!Ae){Q(w.bs),Tt.push({src:S?"local":"remote",from:w.ss,to:w.se,inherit:ee&&ee!=="straddle"?ee:null}),z=w.be,S?(q+=w.text.length-(w.be-w.bs),D++):(U+=w.text.length-(w.be-w.bs),F++);continue}let ae=w.bs,Be=w.be,Me=D,qe=F,kt=Ot=>Ot.bs<Be&&Ot.be>ae||ce(Ot)&&(Ot.bs===ae||Ot.bs===Be);S?Me++:qe++,ne&&(ae=Math.min(ae,R.bs),Be=Math.max(Be,R.be),S?qe++:Me++);let lt=!0;for(;lt;){for(lt=!1;Me<Et.length&&kt(Et[Me]);)ae=Math.min(ae,Et[Me].bs),Be=Math.max(Be,Et[Me].be),Me++,lt=!0;for(;qe<T.length&&kt(T[qe]);)ae=Math.min(ae,T[qe].bs),Be=Math.max(Be,T[qe].be),qe++,lt=!0}let Xt=ae+q,Bt=ae+U,sn=Be-ae,cn=Be-ae;for(let Ot=D;Ot<Me;Ot++)sn+=Et[Ot].text.length-(Et[Ot].be-Et[Ot].bs);for(let Ot=F;Ot<qe;Ot++)cn+=T[Ot].text.length-(T[Ot].be-T[Ot].bs);let gn=Xt+sn,bn=Bt+cn;Q(ae);let Ct={kind:"text",node:e.node||null,base:hi(u,ae,Be),local:hi(m,Xt,gn),remote:hi(p,Bt,bn),resolved:null,range:null,bs:ae,be:Be,lss:Xt,lse:gn,rss:Bt,rse:bn};Ct.resolved=n==="local"?Ct.local:n==="remote"?Ct.remote:Ct.local+Ct.remote,n!=="remote"&&Tt.push({src:"local",from:Xt,to:gn,conflict:Ct}),n!=="local"&&Tt.push({src:"remote",from:Bt,to:bn,conflict:Ct}),l.push(Ct),z=Be,q+=sn-(Be-ae),U+=cn-(Be-ae),D=Me,F=qe}Q(nt);let le=u.text,ke=[];if(_e.respell.size||dt.respell.size){let c=mi(xe),x=[];for(let S=0;S<xe.length;S++){let w=xe[S].raw,R=_e.respell.get(S)??w,P=dt.respell.get(S)??w;(R!==w||P!==w)&&ke.push([c[S],R!==w&&P!==w?"both":R!==w?"local":"remote"]),x.push(R===P?R:R===w?P:P===w||n==="local"?R:P)}le=x.join("")}let me="",ve=[],Pe=[],je=[],wt=[];for(let c of Tt){let x=me.length;if(c.src==="base"){for(let S=c.from;S<c.to;S++)ve.push(S),Pe.push(S+c.dL),je.push(S+c.dR),wt.push(c);me+=le.slice(c.from,c.to)}else if(c.src==="both"){for(let S=0;S<c.len;S++)ve.push(-1),Pe.push(c.lfrom+S),je.push(c.rfrom+S),wt.push(c);me+=m.text.slice(c.lfrom,c.lfrom+c.len)}else{let S=c.src==="local"?m:p;for(let w=c.from;w<c.to;w++)ve.push(-1),Pe.push(c.src==="local"?w:-1),je.push(c.src==="remote"?w:-1),wt.push(c);me+=S.text.slice(c.from,c.to)}c.ms=x,c.me=me.length,c.conflict&&(c.conflict.range||(c.conflict.range=[x,x]),c.conflict.range[1]=me.length)}let pe=me.length,Xe=new Int32Array(nt+1).fill(-1),Ee=new Int32Array(m.text.length+1).fill(-1),Dt=new Int32Array(p.text.length+1).fill(-1);for(let c=0;c<pe;c++)ve[c]>=0&&(Xe[ve[c]]=c),Pe[c]>=0&&(Ee[Pe[c]]=c),je[c]>=0&&(Dt[je[c]]=c);let At=(c,x)=>{let S=-1,w=-1;for(let R=c.from;R<c.to;R++){let P=x[R];P>=0&&(S<0&&(S=P),w=P+1)}return S<0?null:[S,w]},Mt=[],gt=[];for(let c of new Set(et.values()))c.new==="local"?Mt.push(c):c.new==="remote"&&gt.push(c);let xr=(c,x)=>{c.remote=x.remote,c.remoteMark=x.remoteMark,c.new="both",x.merged=c,et.set(x.remote,c)};if(Mt.length&&gt.length){let c=e.idOf;for(let x of Mt){let S=c?c.local(x.local):null;if(!S)continue;let w=gt.find(R=>!R.merged&&R.tag===x.tag&&!!R.block==!!x.block&&c.remote(R.remote)===S);w&&xr(x,w)}for(let x of Mt){if(x.remote)continue;let S=At(x.localMark,Ee);if(S)for(let w of gt){if(w.merged||w.tag!==x.tag||!!w.block!=!!x.block)continue;let R=At(w.remoteMark,Dt);if(R&&Math.min(S[1],R[1])-Math.max(S[0],R[0])>0){xr(x,w);break}}}}_.clear();let vr=c=>{for(let x of c)if(x.block)return y(et.get(x.el));return null},hn=u.marks.some(c=>c.block)||m.marks.some(c=>c.block)||p.marks.some(c=>c.block),nn=new Array(pe).fill(null),Un=new Set;if(hn){let c=(ee,ae,Be)=>{let Me=new Set([ee,ae,Be]);Me.delete(null);let qe=[];for(let lt of Me){let Xt=lt===ee,Bt=lt===ae,sn=lt===Be;(Bt===sn?Bt:Bt===Xt?sn:Bt)&&qe.push(lt)}if(qe.length<=1)return qe[0]||null;let kt=n==="local"?ae:Be;return qe.includes(kt)?kt:qe[0]},x=(ee,ae)=>ae>=0?vr(ee.stackAt[ae]):null,S=new Map;for(let ee=0;ee<pe;ee++){if(me[ee]!==it)continue;let ae=ve[ee]>=0?x(u,ve[ee]):null,Be=x(m,Pe[ee]),Me=x(p,je[ee]);S.set(ee,[ae,ve[ee]>=0?c(ae,Be,Me):Be||Me])}let w=new Set([...S.values()].map(ee=>ee[1])),R=ee=>ee!==it&&ee!==Yn&&!/\s/.test(ee),P=(ee,ae)=>{let Be=ee;for(;Be<ae&&!R(me[Be]);)Be++;return Be<ae&&ve[Be]>=0?x(u,ve[Be]):null},X=new Map,ne=0;for(let ee=0;ee<pe;ee++){if(me[ee]!==it)continue;let[ae,Be]=S.get(ee),Me=P(ne,ee),qe=Be,kt=X.get(qe)===qe&&Me===qe;qe&&X.has(qe)&&!kt&&ae&&!X.has(ae)&&!w.has(ae)&&(qe=ae),qe&&!X.has(qe)&&X.set(qe,Me);for(let lt=ne;lt<=ee;lt++)nn[lt]=qe;ne=ee+1}let Ae=ee=>{for(let ae=0;ae<ee.text.length;ae++)if(R(ee.text[ae])&&!x(ee,ae))return!0;return!1};if(!Ae(u)&&!Ae(m)&&!Ae(p)){let ee=[],ae=0;for(let Me=0;Me<pe;Me++)(me[Me]===it||Me===pe-1)&&(ee.push([ae,Me]),ae=Me+1);let Be=new Set(nn);for(let Me=0;Me<ee.length;Me++){let[qe,kt]=ee[Me];if(nn[kt])continue;let lt=qe;for(;lt<=kt&&!R(me[lt]);)lt++;if(lt>kt)continue;let Xt=x(u,ve[lt]),Bt=x(m,Pe[lt]),sn=x(p,je[lt]),cn=c(Xt,Bt,sn)||Bt||sn||Xt;if(cn&&!Be.has(cn)){Be.add(cn);for(let Ct=qe;Ct<=kt;Ct++)nn[Ct]=cn;continue}let gn=Me>0&&nn[ee[Me-1][1]],bn=Me+1<ee.length&&nn[ee[Me+1][1]];if(gn)Un.add(ee[Me-1][1]);else if(bn&&me[kt]===it)Un.add(kt);else continue;for(let Ct=qe;Ct<=kt;Ct++)nn[Ct]=gn||bn}}}let Qr=new Map,eo=c=>{let x=Qr.get(c);if(x)return x;x=[1/0,-1/0];for(let[S,w]of[[c.baseMark,Xe],[c.localMark,Ee],[c.remoteMark,Dt]]){let R=S&&At(S,w);R&&(x[0]=Math.min(x[0],R[0]),x[1]=Math.max(x[1],R[1]))}return Qr.set(c,x),x},to=(c,x,S)=>{let w=-1,R=-1;for(let P=0;P<c.length;P++){let X=et.get(c[P].el);X===x&&(w=P),X===S&&(R=P)}return w>=0&&R>=0?w-R:0},zn=(c,x)=>[...c].sort((S,w)=>{for(let X of x){let ne=to(X,S,w);if(ne)return ne}let R=eo(S),P=eo(w);return R[0]-P[0]||P[1]-R[1]||S.rank-w.rank||S.id-w.id}),no=new Map,Y=new Map,Te=c=>{let x=ve[c],S=Pe[c],w=je[c],R=wt[c];if(x>=0){let Me=u.stackAt[x],qe=m.stackAt[S],kt=p.stackAt[w],lt=no.get(Me);lt||no.set(Me,lt=new Map);let Xt=lt.get(qe);Xt||lt.set(qe,Xt=new Map);let Bt=Xt.get(kt);if(Bt)return Bt;let sn=E(Me),cn=E(qe),gn=E(kt),bn=new Set;for(let Ct of new Set([...sn,...cn,...gn])){let Ot=sn.has(Ct),Ln=cn.has(Ct),xs=gn.has(Ct);(Ln===xs?Ln:Ln===Ot?xs:Ln)&&bn.add(Ct)}return Bt=zn(bn,[qe,kt,Me]),Xt.set(kt,Bt),Bt}if(R.src==="both"){let Me=m.stackAt[S],qe=p.stackAt[w];return zn(new Set([...E(Me),...E(qe)]),[Me,qe])}let X=(R.src==="local"?m:p).stackAt[R.src==="local"?S:w];if(!R.inherit)return zn(E(X),[X]);let ne=Y.get(R);ne||Y.set(R,ne=new Map);let Ae=ne.get(X);if(Ae)return Ae;let ee=new Set(E(X));for(let Me of R.inherit.added)ee.add(y(Me));for(let Me of R.inherit.removed)ee.delete(y(Me));let ae=R.src==="local"?p:m,Be=(R.src==="local"?Rt.bTo:Ze.bTo)[R.inherit.bs];return Ae=zn(ee,[X,ae.stackAt[Be]]),ne.set(X,Ae),Ae},be=new Int32Array(m.text.length+1);be[m.text.length]=pe;for(let c=m.text.length-1;c>=0;c--)be[c]=Ee[c]>=0?Ee[c]:be[c+1];tu.caret+=m.text.length;let Ne=c=>c<=0?0:(c>m.text.length&&(c=m.text.length),Ee[c-1]>=0?Ee[c-1]+1:be[c]),$e=[],ie=[],Se=null,oe=[],Re="",Fe=-1,Pt=c=>{Se?Se.appendChild(c):$e.push(c)},rn=c=>{if(!Re)return;let x=t.createTextNode(Re);Pt(x),ie.push({node:x,ms:Fe,me:c,local:[],u:oe.length?oe[oe.length-1].u:null}),Re=""},pn=new Set,Ut=new Map,wn=new Set,De=c=>{let x=t.createElement(c.tag);if(c.block&&Ar.add(x),!Ut.has(c)){Ut.set(c,x),L(c.base,c.local,c.remote,x),i.set(x,{base:c.base,local:c.local,remote:c.remote});let w=(X,ne)=>d&&c[ne]&&X.reverse.get(c[ne])?ne:null,R=!c.base&&(w(r,"local")||w(o,"remote"));if(R){let X=R==="local"?r.reverse.get(c.local):o.reverse.get(c.remote),ne=i.get(x);ne.local=ne.local||r.map.get(X)||null,ne.remote=ne.remote||o.map.get(X)||null,a.push({kind:"move",el:x,source:R})}else c.base||a.push({kind:"insert",el:x,source:c.local&&c.remote?"both":c.local?"local":"remote"});let P=i.get(x);P.local&&(wn.has(P.local)?P.local=null:wn.add(P.local))}else{let w=Ut.get(c);for(let R of w.attributes)R.name!=="id"&&R.name!=="data-id"&&A(x,R,R.value);i.set(x,{base:null,local:null,remote:null})}Pt(x),oe.push({u:c,el:x}),Se=x},Ue=new Set,Z=new Map;for(let c of m.pins){let x=Ne(c.i);Z.has(x)||Z.set(x,[]),Z.get(x).push(c)}let de=c=>{let x=Z.get(c);if(x){rn(c);for(let S of x){let w=S.el.namespaceURI&&S.el.namespaceURI!=="http://www.w3.org/1999/xhtml"?t.createElementNS(S.el.namespaceURI,S.el.tagName):t.createElement(S.el.tagName);i.set(w,{base:null,local:S.el,remote:null,pinned:!0}),Ue.add(w),Pt(w)}}},we=u.atoms.length||m.atoms.length||p.atoms.length,Ie=c=>{if(!we)return null;let x=ve[c]>=0?u.atomAt.get(ve[c]):null,S=Pe[c]>=0?m.atomAt.get(Pe[c]):null,w=je[c]>=0?p.atomAt.get(je[c]):null;return x||S||w?{ab:x,al:S,ar:w}:null},Oe=(c,x,S,w)=>{if(!c||!d)return null;let R=v.get(x.reverse.get(c.el))||null;return!R||R===w||(w?R.el.isEqualNode(w.el):S.bTo[R.i]>=0)?null:R},Ye=(c,x)=>{if(!c||!d||!e.moveIn)return null;let S=x.reverse.get(c.el);return S&&!v.has(S)?S:null},ot=(c,x)=>{let S=new Map;for(let w of c.atoms)S.set(x(w),(S.get(x(w))||0)+1);return S},qt=ot(u,K),zt=ot(m,W),Jt=ot(p,he),_t=c=>{let x=K(c);return qt.get(x)===1&&(zt.get(x)||0)<=1&&(Jt.get(x)||0)<=1},Zt=new Map,mt=new Set,bt=new Set,Qt=new Set;for(let c=0;c<pe;c++){let x=Ie(c);if(!x)continue;let{ab:S,al:w,ar:R}=x,P=Oe(R,o,Rt,S),X=Oe(w,r,Ze,S),ne=S,Ae=null;if(P?(ne=P,Ae="remote"):X&&(ne=X,Ae="local"),ne){mt.has(ne)?Zt.set(c,{dup:ne.el}):(mt.add(ne),Zt.set(c,{bk:ne,from:Ae,al:w,ar:R}));continue}let ee=Ye(R,o),ae=Ye(w,r),Be=ee||ae;if(Be){bt.has(Be)?Zt.set(c,{dup:Be}):(bt.add(Be),Zt.set(c,{moveIn:Be,side:ee?"remote":"local",sideEl:ee?R.el:w.el}));continue}let Me=(kt,lt)=>kt&&d&&v.get(lt.reverse.get(kt.el))||null,qe=Me(R,o)||Me(w,r);if(qe&&(Qt.add(qe),wt[c].conflict&&_t(qe))){if(mt.has(qe)){Zt.set(c,{dup:qe.el});continue}mt.add(qe)}Zt.set(c,{al:w,ar:R})}let ln=new Map,ro=(c,x)=>{if(c[x]>=0)return c[x];for(let S=x-1;S>=0;S--)if(c[S]>=0)return c[S]+1;return 0};if(d)for(let c of u.atoms){if(mt.has(c)||Qt.has(c))continue;let x=r.map.get(c.el)||null,S=o.map.get(c.el)||null,w=x&&ct.get(x),R=S&&C.get(S);if(x&&!w||S&&!R)continue;let P=!(w&&R)&&rt.has(c);if(!P&&!(w&&R&&_t(c)))continue;let X=n==="local"?[[w,Ee],[R,Dt]]:[[R,Dt],[w,Ee]],[ne,Ae]=X.find(([ae])=>ae),ee=ro(Ae,ne.i);ln.has(ee)||ln.set(ee,[]),ln.get(ee).push({a:c,lt:x,rt:S,edited:P}),mt.add(c)}if(d&&e.moveIn){let c=[[m,r,Ee,"local"],[p,o,Dt,"remote"]];n!=="local"&&c.reverse();for(let[x,S,w,R]of c)for(let P of x.atoms){let X=Ye(P,S);if(!X||bt.has(X))continue;bt.add(X);let ne=ro(w,P.i);ln.has(ne)||ln.set(ne,[]),ln.get(ne).push({move:X,side:R,sideEl:P.el})}}let wr=c=>{let x=ln.get(c);if(x){if(rn(c),x.some(S=>Ce(S.move?S.sideEl:S.a.el)))for(;oe.length;)oe.pop(),Se=oe.length?oe[oe.length-1].el:null;for(let{a:S,lt:w,rt:R,edited:P,move:X,side:ne,sideEl:Ae}of x){if(X){let ae=e.moveIn(X,ne,Ae);ae&&Pt(ae);continue}pn.add(S);let ee=H(S.el,w,R);P&&(l.push({kind:"structure",el:ee,detail:"edit-beats-delete",base:S.el}),a.push({kind:"insert",el:ee,source:w?"local":"remote"})),Pt(ee)}}},Ar=new Set;for(let c=0;c<pe;c++){let x=Ie(c),w=!!x&&Ce((x.ab||x.al||x.ar).el)?[]:nn[c]?[nn[c],...Te(c)]:Te(c),R=0;for(;R<oe.length&&R<w.length&&oe[R].u===w[R];)R++;if(R<oe.length)for(rn(c);oe.length>R;)oe.pop(),Se=oe.length?oe[oe.length-1].el:null;if(de(c),wr(c),w.length>oe.length)for(rn(c);oe.length<w.length;)De(w[oe.length]);if(me[c]===it){if(Un.has(c))continue;rn(c);let P=oe.length;for(;P>0&&!oe[P-1].u.block;)P--;if(P>0)for(;oe.length>=P;)oe.pop(),Se=oe.length?oe[oe.length-1].el:null;continue}if(x){rn(c);let P=Zt.get(c),X;if(P.dup){l.push({kind:"structure",el:null,detail:"both-moved",base:P.dup});continue}if(P.moveIn){if(X=e.moveIn(P.moveIn,P.side,P.sideEl),!X)continue}else if(P.bk){let ne=P.bk;if(pn.add(ne),ne===x.ab)X=H(ne.el,P.al.el,P.ar.el);else{let Ae=r.map.get(ne.el)||null,ee=o.map.get(ne.el)||null;X=H(ne.el,Ae,ee),(!Ae||!ee)&&l.push({kind:"structure",el:null,detail:"move-beats-delete",base:ne.el}),a.push({kind:"move",el:X,source:P.from})}}else P.al?(X=B(P.al.el,"local"),P.ar&&(i.get(X).remote=P.ar.el),a.push({kind:"insert",el:X,source:P.ar?"both":"local"})):(X=B(P.ar.el,"remote"),a.push({kind:"insert",el:X,source:"remote"}));Pt(X);continue}Re||(Fe=c),Re+=me[c]}if(rn(pe),(Z.has(pe)||ln.has(pe))&&(oe.length=0,Se=null,de(pe),wr(pe)),pe===0&&(m.placeholder||p.placeholder||u.placeholder)){let c=t.createElement("br");i.set(c,{base:u.placeholder,local:m.placeholder,remote:p.placeholder}),$e.push(c)}let fe=0,ze=c=>{for(;fe>0&&ie[fe-1].me>=c;)fe--;for(;fe<ie.length&&ie[fe].me<c;)fe++;let x=ie[fe];if(!x)return ie[ie.length-1]||null;let S=ie[fe+1];return x.me===c&&S&&S.ms===c?S:x},st=new Map,tt={},Je=(c,x,S)=>{let w=ze(c)||(S?tt:null);if(!w)return;let R=st.get(w)||{l:!1,r:!1};x!=="remote"&&(R.l=!0),x!=="local"&&(R.r=!0),st.set(w,R)},an=c=>{if(c.conflict)return!0;let x=c.src==="local"?m.text:c.src==="remote"?p.text:"";for(let S=c.from;S<c.to;S++)if(x[S]!==Yn&&x[S]!==it)return!0;return!1};for(let c of Tt)c.src!=="base"&&Je(c.ms,c.conflict?"both":c.src,an(c));for(let[c,x]of ke)Xe[c]>=0&&Je(Xe[c],x);for(let c of ie.length?ie:[tt]){let x=st.get(c);x&&a.push({kind:"text",node:c.node||null,source:x.l&&x.r?"both":x.l?"local":"remote"})}for(let c of ut){if(Ut.has(c))continue;let x=!c.local&&!(d&&r.map.get(c.base)),S=!c.remote&&!(d&&o.map.get(c.base));!x&&!S||a.push({kind:"remove",source:x&&S?"both":x?"local":"remote",base:c.base})}let on=(c,x,S)=>{if(x<=c)return!1;for(let w=c;w<x;w++)if(S[w]>=0)return!1;return!0};for(let c of ut)for(let x of["local","remote"]){let S=c[x+"Mark"],w=c.baseMark;if(!S)continue;let R=x==="local"?Ze:Rt;if(!on(w.from,w.to,R.bTo)||!on(S.from,S.to,R.toB))continue;let P=(x==="local"?Et:T).find(X=>X.ss<=S.from&&S.from<X.se);P&&(P.be<=w.from||P.bs>=w.to)&&a.push({kind:"move",el:Ut.get(c)||null,source:x})}let An=c=>{let x=et.get(c.node.parentNode);return x?y(x):null};for(let c of m.nodes){let x=-1;for(let w=c.s;w<c.e;w++)if(Ee[w]>=0){x=Ee[w];break}let S;if(x>=0)S=ze(x);else{let w=Ne(c.s),R=An(c);S=ie.find(P=>P.u===R&&P.me>=w)||ie.filter(P=>P.u===R).pop()}S&&S.local.push(c)}let en=new Map,$t=ie[ie.length-1]||null,Yt=0;for(let c of m.nodes){let x=null;for(let S=c.s;S<=c.e;S++){let w=Ne(S);for(;Yt>0&&ie[Yt-1].me>=w;)Yt--;for(;Yt<ie.length&&ie[Yt].me<w;)Yt++;let R=X=>X&&w>=X.ms&&w<=X.me&&(w<X.me||S===c.e||X===x),P=R(ie[Yt])?ie[Yt]:R(ie[Yt+1])?ie[Yt+1]:ie[Yt]||$t;if(!P)break;if(x===P){let X=en.get(P);X[X.length-1].to=S-c.s;continue}x=P,en.has(P)||en.set(P,[]),en.get(P).push({node:c.node,from:S-c.s,to:S-c.s,flatStart:c.s})}}for(let c of ie){let x=c.local,S=!1;for(let X of x)for(let ne=X.s;ne<X.e&&!S;ne++)(Ee[ne]<c.ms||Ee[ne]>=c.me)&&(S=!0);i.set(c.node,{base:null,local:x.map(X=>X.node),remote:null,caret:en.get(c)||[],partial:S});let w=c.ms,R=c.me-c.ms,P=X=>{let ne=0,Ae=-1;for(let ee of x){let ae=ee.e-ee.s;if(X<=ne+ae){Ae=ee.s+(X-ne);break}ne+=ae}return Ae<0&&(Ae=x.length?x[x.length-1].e:0),Math.max(0,Math.min(Ne(Ae)-w,R))};P.flat=X=>Math.max(0,Math.min(Ne(X)-w,R)),s.set(c.node,P)}function Sc(){if(!m.text.includes(it))return[{flatLocal:m.text,localNodes:m.nodes,textNodes:ie,lToM:Ee,mapLocal:Ne}];let c=[],x=0,S=0;for(let w=0;w<=m.text.length;w++){if(w<m.text.length&&m.text[w]!==it)continue;let R=x,P=w;if(P>R){let X=[];for(;S<m.nodes.length&&m.nodes[S].e<=R;)S++;for(let ne=S;ne<m.nodes.length&&m.nodes[ne].s<P;ne++){let Ae=m.nodes[ne],ee=Math.max(Ae.s,R),ae=Math.min(Ae.e,P);ee<ae&&X.push({node:Ae.node,s:ee-R,e:ae-R})}c.push({flatLocal:m.text.slice(R,P),localNodes:X,textNodes:ie,lToM:Ee.subarray?Ee.subarray(R,P+1):Ee.slice(R,P+1),mapLocal:ne=>Ne(R+Math.max(0,Math.min(ne,P-R)))})}x=w+1}return c}let Tc={...e,blocks:Ar,ignored:c=>Ue.has(c)||(e.ignored?e.ignored(c):!1)},ys=e.ignoreAttribute||(()=>!1),Ec=Ms(_r($e,Tc),ys)!==Ms(p,ys);return{nodes:$e,text:me,textNodes:ie,localDiverged:Ec,mapLocal:Ne,conflicts:l.slice(h),granularity:Nt?"line":"word",segments:Sc(),localHunks:Et,remoteHunks:T,lToM:Ee}}var lu="http://www.w3.org/1999/xhtml";function au(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t^e.charCodeAt(n);return(t>>>0).toString(36)}function Kt(e){return!!e&&e.nodeType===1&&e.tagName==="SCRIPT"&&e.namespaceURI===lu}function cu(e){let t=(e.getAttribute("type")||"").split(";")[0].trim().toLowerCase();return t==="application/json"||t.endsWith("+json")}function co(e,t){let n=e.getAttribute("src"),r=(e.getAttribute("type")||"text/javascript").split(";")[0].trim().toLowerCase();if(n){let o=n;try{let i=new URL(n,t);o=i.origin+i.pathname+i.search}catch{}return"script|src|"+r+"|"+o}return"script|inline|"+r+"|"+au(e.textContent.trim())}var uu={match:e=>e.hasAttribute("merge"),identity:e=>e.getAttribute("merge")};function Xn(e,t=[],n=!1){if(!Kt(e)||e.hasAttribute("src"))return null;let r=[uu,...t];for(let o=0;o<r.length;o++){let i=r[o];if(!i.match(e))continue;if(!cu(e))return n&&console.warn("[hyper-morph] merge ignored: script type is not JSON",e),null;let s=i.identity(e);return s==null||s===""?null:{key:o+":"+s,raw:s,recognizer:i}}return null}function qs(e,t,n){let r=new Set,o=i=>{Kt(i)&&!t(i)&&r.add(co(i,n))};o(e);for(let i of e.querySelectorAll("script"))o(i);return r}function Cr(e,t){let n=t.createElement("div");n.innerHTML="<script><\/script>";let r=n.firstChild;for(let o of e.attributes)r.setAttribute(o.name,o.value);return r.textContent=e.textContent,r}function Bs(e,t,n){let r=[],o=[],i=Array.from(e.querySelectorAll("script"));Kt(e)&&i.unshift(e);for(let s of i){if(!Kt(s)||n.ignored(s)||n.skip.has(s)||t.has(co(s,n.baseURI)))continue;let l=s.ownerDocument.createElement("script");for(let a of s.attributes)l.setAttribute(a.name,a.value);l.textContent=s.textContent,n.beforeNodeAdded(l)!==!1&&(l.hasAttribute("src")&&o.push(new Promise(a=>{l.addEventListener("load",()=>a()),l.addEventListener("error",()=>a())})),s.replaceWith(l),n.afterNodeAdded(l),r.push(l))}return{executed:r,loads:o}}function fu(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t^e.charCodeAt(n);return(t>>>0).toString(36)}function du(e,t){try{let n=new URL(e,t);return n.origin+n.pathname+n.search}catch{return e}}function Hs(e,t){let n=e.tagName;if(n==="TITLE"||n==="BASE")return n;if(n==="SCRIPT")return co(e,t);if(n==="LINK"){let r=e.getAttribute("href");return r?"link|"+(e.getAttribute("rel")||"")+"|"+du(r,t):e.outerHTML}if(n==="META"){for(let r of["charset","name","property","http-equiv","itemprop"])if(e.hasAttribute(r))return"meta|"+r+"="+e.getAttribute(r);return e.outerHTML}return n==="STYLE"?"style|"+fu(e.textContent):e.outerHTML}function gi(e,t){for(;;){for(;t<e.length&&/\s/.test(e[t]);)t++;if(e[t]==="/"&&e[t+1]==="/"){for(;t<e.length&&e[t]!==`
3
- `;)t++;continue}if(e[t]==="/"&&e[t+1]==="*"){let n=e.indexOf("*/",t+2);if(n===-1)return e.length;t=n+2;continue}return t}}function hu(e){return e.replace(/\\'/g,"'").replace(/(\\*)"/g,(t,n)=>n.length%2===0?n+'\\"':t)}var mu=/^-?(0|[1-9]\d*)(\.\d+)?([eE][+-]?\d+)?$/,pu=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function bi(e){try{return JSON.parse(e)}catch{return JSON.parse(gu(e))}}function gu(e){let t="",n=0,r=(o,i)=>{throw new Error(`Invalid relaxed JSON: ${o} at position ${i}`)};for(;n<e.length&&(n=gi(e,n),!(n>=e.length));){let o=e[n];if("{}[]:".includes(o)){t+=o,n++;continue}if(o===","){let l=gi(e,n+1);if(e[l]==="}"||e[l]==="]"){n++;continue}t+=o,n++;continue}if(o==='"'||o==="'"){let l=n+1;for(;l<e.length&&e[l]!==o;)e[l]==="\\"&&l++,l++;l>=e.length&&r("unterminated string",n);let a=e.slice(n+1,l);o==="'"&&(a=hu(a)),t+='"'+a+'"',n=l+1;continue}let i=n;for(;i<e.length&&/[A-Za-z0-9_$.+\-]/.test(e[i]);)i++;i===n&&r("unexpected character "+JSON.stringify(o),n);let s=e.slice(n,i);if(s==="true"||s==="false"||s==="null"||mu.test(s)){t+=s,n=i;continue}if(pu.test(s)){if(e[gi(e,i)]===":"){t+='"'+s+'"',n=i;continue}r("unquoted value "+JSON.stringify(s),n)}r("invalid token "+JSON.stringify(s),n)}return t}var yt=Symbol("hyper-morph-json-merge:missing"),$s=["id","_id","uuid","key","slug","code","name"];function Jn(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Or(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function bu(e,t,n){Object.defineProperty(e,t,{value:n,enumerable:!0,writable:!0,configurable:!0})}function Sn(e,t){if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!Sn(e[n],t[n]))return!1;return!0}if(Jn(e)&&Jn(t)){let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!Or(t,r)||!Sn(e[r],t[r]))return!1;return!0}return!1}function Us(e,t,n,r){return Sn(t,n)?t:Sn(t,e)?n:Sn(n,e)?t:Jn(t)&&Jn(n)?ku(Jn(e)?e:{},t,n,r):Array.isArray(t)&&Array.isArray(n)?wu(Array.isArray(e)?e:[],t,n,r):n}function zs(e,t,n,r){return t===yt&&n===yt?yt:t===yt?e===yt?n:Sn(n,e)?yt:n:n===yt?e===yt?t:yt:Us(e,t,n,r)}function ku(e,t,n,r){let o={},i=new Set([...Object.keys(e),...Object.keys(t),...Object.keys(n)]);for(let s of i){let l=zs(Or(e,s)?e[s]:yt,Or(t,s)?t[s]:yt,Or(n,s)?n[s]:yt,r);l!==yt&&bu(o,s,l)}return o}function yu(e){return e===null||typeof e!="object"}function uo(e){return typeof e+":"+String(e)}function xu(e,t){for(let n of t){let r=new Set;for(let o of n){if(!Or(o,e))return!1;let i=o[e];if(typeof i!="string"&&typeof i!="number")return!1;let s=uo(i);if(r.has(s))return!1;r.add(s)}}return!0}function vu(e,t,n,r){let o=[e,t,n],i=!0;for(let s of o)for(let l of s)Jn(l)||(i=!1);if(i){for(let s of r.keyCandidates)if(xu(s,o))return{kind:"keyed",field:s};return null}for(let s of o){let l=new Set;for(let a of s){if(!yu(a))return null;let h=uo(a);if(l.has(h))return null;l.add(h)}}return{kind:"self"}}function wu(e,t,n,r){let o=vu(e,t,n,r);if(!o)return n;let i=o.kind==="self"?uo:u=>uo(u[o.field]),s=u=>{let m=new Map;for(let p of u)m.set(i(p),p);return m},l=s(e),a=s(t),h=s(n),d=new Map,b=new Set([...l.keys(),...a.keys(),...h.keys()]);for(let u of b){let m=zs(l.has(u)?l.get(u):yt,a.has(u)?a.get(u):yt,h.has(u)?h.get(u):yt,r);m!==yt&&d.set(u,m)}let f=[];for(let u of n){let m=i(u);d.has(m)&&f.push(m)}for(let u=0;u<t.length;u++){let m=i(t[u]);if(!d.has(m)||f.includes(m))continue;let p=0;for(let v=u-1;v>=0;v--){let A=f.indexOf(i(t[v]));if(A!==-1){p=A+1;break}}f.splice(p,0,m)}return f.map(u=>d.get(u))}function Vs(e,t,n,r={}){let o=r.keyCandidates?[...r.keyCandidates,...$s]:$s;return Us(e===void 0?yt:e,t,n,{keyCandidates:o})}function ki(e,t,n,r={}){let o=r.parse||bi,i=[],s=(b,f)=>{if(typeof b!="string")return yt;try{return o(b)}catch(u){return i.push(`${f} side is not valid JSON (${u.message})`),yt}},l=s(t,"local"),a=s(n,"remote");if(l===yt)return{text:n,warnings:i};if(a===yt)return{text:t,warnings:i};let h=s(e,"base"),d=Vs(h===yt?void 0:h,l,a,r);return Sn(d,a)?{text:n,warnings:i}:Sn(d,l)?{text:t,warnings:i}:{text:JSON.stringify(d,null,2),warnings:i}}var Le=e=>!!e&&e.nodeType===1,Au=new Set("P H1 H2 H3 H4 H5 H6 DIV LI DD DT BLOCKQUOTE FIGCAPTION SUMMARY ADDRESS".split(" ")),Ws=5e4;function yi(e,t,n,r){let o=r.ignored,i=_s({ignored:o,ignoreAttribute:r.ignoreAttribute}),{unitsOf:s,meta:l}=i,a=r.baseURI,h=r.mergeTags!==null,d=T=>D=>{if(h&&D.tagName==="SCRIPT"){let F=Xn(D,r.mergeTags);if(F)return"merge:"+F.key}return D.parentElement&&D.parentElement.tagName==="HEAD"?Hs(D,a):T(D)},b=d(r.identity.base),f=d(r.identity.local),u=d(r.identity.remote),m=r.authored||r.identity,p=T=>T&&T.nodeType===9?T.documentElement:T,v=p(e),A=p(t),M=p(n),L=globalThis.__hyperMorphProfile,H=L?performance.now():0,B="[id],[data-id],script,head>*",te=T=>T===In?B:null,re=so(v,b,o,te(r.identity.base)),K=r.localIsBase?Gs():oi(v,A,{analyzer:i,baseIndex:re,sideIndex:so(A,f,o,te(r.identity.local)),baseId:m.base,sideId:m.local}),W=oi(v,M,{analyzer:i,baseIndex:re,sideIndex:so(M,u,o,te(r.identity.remote)),baseId:m.base,sideId:m.remote});Ve(),Ke(K,W),Ke(W,K),L&&(L.alignTotal=(L.alignTotal||0)+(performance.now()-H),H=performance.now());let he=v.ownerDocument.implementation.createHTMLDocument(""),V=new WeakMap,xe=new WeakMap,We=[],at=[],Nt=new Set,xt=[],_e=new Set,dt=new Set,Ze=new Set,Rt=new WeakMap,nt=r.conflicts||"remote",Qe=T=>We.push(T),ct=T=>We.push(T),C=T=>at.push(T),G=Ce(),ye=y(v,K.map.get(v),W.map.get(v),!!r.localIsBase,!!r.childrenOnly);ye.tagName==="HTML"?he.replaceChild(ye,he.documentElement):he.body.appendChild(ye),L&&(L.build=(L.build||0)+(performance.now()-H));let se=r.childrenOnly?!Ge(ft(ye),ft(M)):!ht(ye,M);return{doc:he,root:ye,provenance:V,textMappers:xe,decisions:We,conflicts:at,localDiverged:se,mergedScripts:Nt,segments:xt,remoteIdOf:r.identity.remote,customIdentity:r.identity.remote!==In,L:K,R:W};function Ce(){let T=new Map,D=new Set;if(r.localIsBase||!K.insertedByHash)return{partner:T,drop:D};let F=K.insertedByHash(),z=W.insertedByHash();if(!F.size||!z.size)return{partner:T,drop:D};let q={ignored:o,remoteWins:r.remoteWins,inlineCache:Rt},U=pe=>{let Xe=0;for(let Ee=pe.parentNode;Ee;Ee=Ee.parentNode)Xe++;return Xe},Q=[],le=pe=>{let Xe=pe.textContent.trim();return Xe.split(/\s+/).length>=3||Xe.replace(/\s/g,"").length>=12},ke=pe=>{let Xe=K.map.get(pe),Ee=W.map.get(pe);return Xe&&K.reverse.get(Xe.parentNode)!==pe.parentNode||Ee&&W.reverse.get(Ee.parentNode)!==pe.parentNode},me=(pe,Xe,Ee)=>{for(let At of Ee.parentNode.children){let Mt=At!==Ee&&pe.reverse.get(At);if(Mt&&ke(Mt))return!0}let Dt=pe.reverse.get(Ee.parentNode);if(Dt){for(let At of Dt.children)if(!Xe.map.has(At)&&!o(At))return!0}return!1};for(let[pe,Xe]of F){let Ee=z.get(pe);if(!Ee)continue;let Dt=Xe.length===1&&Ee.length===1;for(let At of Xe)Dn(At,q)||Q.push([At,Ee,U(At),Dt&&(le(At)||me(K,W,At)||me(W,K,Ee[0]))])}if(!Q.length)return{partner:T,drop:D};Q.sort((pe,Xe)=>pe[2]-Xe[2]);let ve=new Set,Pe=new Set,je=pe=>{for(let Xe of pe.querySelectorAll("*"))ve.add(Xe)},wt=(pe,Xe)=>pe.reverse.get(Xe.parentNode)||null;for(let[pe,Xe,,Ee]of Q){if(ve.has(pe))continue;let Dt=wt(K,pe),At=gt=>!Pe.has(gt)&&!ve.has(gt)&&gt.tagName===pe.tagName,Mt=Xe.find(gt=>At(gt)&&Dt&&wt(W,gt)===Dt)||(Ee?Xe.find(At):null);Mt&&(Pe.add(Mt),je(pe),je(Mt),!(Dt&&wt(W,Mt)===Dt)&&(T.set(pe,Mt),T.set(Mt,pe),D.add(nt==="local"?Mt:pe)))}return{partner:T,drop:D}}function rt(T,D,F){if(_e.add(T),G.drop.has(T))return null;_e.add(F);let z=D==="local"?T:F,q=D==="local"?F:T,U;return i.unitHash(z)===i.unitHash(q)?(U=ce(z,"local",!0),V.get(U).remote=q):U=$(z,q),C({kind:"structure",el:U,detail:"both-moved",base:null,local:z,remote:q}),Qe({kind:"insert",el:U,source:"both"}),U}function Ve(){if(!K.weak||!W.weak||!K.weak.size||!W.weak.size||!K.unpair)return;let T=new Map;for(let F of K.weak){let z=K.map.get(F);Le(F)&&Le(z)&&T.set(i.unitHash(z),F)}let D=!1;for(let F of Array.from(W.weak)){let z=W.map.get(F);if(!Le(F)||!Le(z))continue;let q=T.get(i.unitHash(z));!q||q===F||!K.weak.has(q)||K.map.has(F)&&W.map.has(q)||K.map.get(q).tagName===z.tagName&&(K.unpair(q),W.unpair(F),D=!0)}D&&(K.rematch(),W.rematch())}function Ke(T,D){if(!T.weak||!T.weak.size||!D.insertedByHash)return;let F=D.insertedByHash();if(!F.size)return;let z=!1;for(let q of Array.from(T.weak)){let U=T.map.get(q);if(!U)continue;let Q=F.get(i.unitHash(U));Q&&Q.some(le=>le.tagName===U.tagName)&&(T.unpair(q),z=!0)}z&&T.rematch()}function et(T,D){if(T.map.has(D))return T.map.get(D);let F=[];for(let q=D.parentNode;q&&!T.map.has(q);q=q.parentNode)F.push(q);let z=F.length?F[F.length-1].parentNode:D.parentNode;if(!z||!T.identical.has(z))return null;T.pairIdenticalChildren(z);for(let q=F.length-1;q>=0;q--)T.pairIdenticalChildren(F[q]);return T.map.get(D)||null}function ut(T,D,F){if(dt.has(T)||Ze.has(T))return C({kind:"structure",el:null,detail:"both-moved",base:T}),dt.has(T)?null:ce(F,D);let z=et(K,T),q=et(W,T);(!z||!q)&&C({kind:"structure",el:null,detail:"move-beats-delete",base:T});let U=y(T,z,q,!1);return(D==="local"?Qe:ct)({kind:"move",el:U,source:D}),U}function k(T,D,F,z){return z||!D||D===F?{el:F,asBase:!0,twin:q=>q,baseOf:q=>q,units:s(F),here:()=>!0,parentOfTwin:()=>F}:{el:D,asBase:!1,twin:q=>T.map.get(q),baseOf:q=>T.reverse.get(q),units:s(D),here:q=>Le(q)?q.parentNode===D||D.tagName==="TEMPLATE"&&q.parentNode===D.content:q.parent===D||D.tagName==="TEMPLATE"&&q.parent===D.content}}function g(T,D,F){return!D||F&&F.identical.has(T)?!1:Le(T)?l(T).hash!==l(D).hash:T.value!==D.value}function y(T,D,F,z,q=!1){let U=z||r.remoteWins(T),Q=T.namespaceURI&&T.namespaceURI!=="http://www.w3.org/1999/xhtml"?he.createElementNS(T.namespaceURI,T.tagName):he.createElement(T.tagName),le={base:T,local:D||null,remote:F||null};if(V.set(Q,le),_e.add(T),dt.add(T),D&&_e.add(D),F&&_e.add(F),r.skipUnchanged&&!q&&(r.localIsBase||K.identical.has(T))&&F&&W.identical.has(T)&&!r.remoteWins(T)){le.unchanged=!0;for(let me of T.attributes)me.namespaceURI?Q.setAttributeNS(me.namespaceURI,me.name,me.value):Q.setAttribute(me.name,me.value);return Q}Ze.add(T),q||E(T,U?T:D,F,Q);let ke=T.tagName;if(Kt(T))_(T,U?T:D,F,Q);else if(ke==="TEXTAREA")Q.textContent=O(T.textContent,(U?T:D)?(U?T:D).textContent:T.textContent,F?F.textContent:T.textContent,Q,"text");else{let me=ge(T,D,F,U,Q),ve=ke==="TEMPLATE"&&Q.content?Q.content:Q;for(let Pe of me)ve.appendChild(Pe)}return Ze.delete(T),Q}function O(T,D,F,z,q){if(D===F)return D;if(D===T)return F!==T&&ct({kind:q,node:z,source:"remote"}),F;if(F===T)return Qe({kind:q,node:z,source:"local"}),D;let U=nt==="local"?D:F;return C({kind:q,node:z,base:T,local:D,remote:F,resolved:U}),We.push({kind:q,node:z,source:"both"}),U}function _(T,D,F,z){let q=T.textContent,U=D?D.textContent:q,Q=F?F.textContent:q,le=h?Xn(T,r.mergeTags,!0):null;if(le&&U!==Q){let ke=F&&F.getAttribute("merge-key")||T.getAttribute("merge-key"),{text:me,warnings:ve}=ki(r.localIsBase?void 0:q,U,Q,{parse:le.recognizer.parse,keyCandidates:ke?ke.split(/[\s,]+/).filter(Boolean):void 0});for(let Pe of ve)console.warn(`[hyper-morph] merge "${le.raw}": ${Pe}`);z.textContent=me,Nt.add(z),me!==Q?Qe({kind:"text",node:z,source:me===U?"local":"both"}):me!==q&&ct({kind:"text",node:z,source:"remote"});return}z.textContent=O(q,U,Q,z,"text")}function E(T,D,F,z){let q=new Map;for(let U of[T,D,F])if(U)for(let Q of U.attributes)r.ignoreAttribute(U,Q.name)||q.set(Q.name,Q);for(let[U,Q]of q){let le=T?T.getAttribute(U):null,ke=D?D.getAttribute(U):le,me=F?F.getAttribute(U):le,ve;ke===me?ve=ke:ke===le?(ve=me,ct({kind:"attr",el:z,name:U,source:"remote"})):me===le?(ve=ke,Qe({kind:"attr",el:z,name:U,source:"local"})):(ve=I(U,le,ke,me),ve===void 0&&(ve=nt==="local"?ke:me,C({kind:"attr",el:z,name:U,base:le,local:ke,remote:me,resolved:ve})),We.push({kind:"attr",el:z,name:U,source:"both"})),ve!=null&&(Q.namespaceURI?z.setAttributeNS(Q.namespaceURI,Q.name,ve):z.setAttribute(U,ve))}}function I(T,D,F,z){if(T==="class"){let q=me=>new Set((me||"").split(/\s+/).filter(Boolean)),U=q(D),Q=q(F),le=q(z),ke=new Set;for(let me of new Set([...U,...Q,...le])){let ve=U.has(me),Pe=Q.has(me),je=le.has(me);(Pe===je?Pe:Pe===ve?je:Pe)&&ke.add(me)}return[...ke].join(" ")}if(T==="style"){let q=ve=>{let Pe=new Map;if(!ve)return Pe;let je=0,wt=null,pe="",Xe=()=>{let Ee=pe.indexOf(":");Ee>0&&Pe.set(pe.slice(0,Ee).trim(),pe.slice(Ee+1).trim()),pe=""};for(let Ee of ve){if(wt){pe+=Ee,Ee===wt&&(wt=null);continue}if(Ee==='"'||Ee==="'"){wt=Ee,pe+=Ee;continue}if(Ee==="("?je++:Ee===")"&&je--,Ee===";"&&je===0){Xe();continue}pe+=Ee}return pe.trim()&&Xe(),Pe},U=q(D),Q=q(F),le=q(z),ke=new Map,me=!1;for(let ve of new Set([...U.keys(),...Q.keys(),...le.keys()])){let Pe=U.get(ve)??null,je=Q.get(ve)??null,wt=le.get(ve)??null,pe;je===wt?pe=je:je===Pe?pe=wt:wt===Pe?pe=je:(pe=nt==="local"?je:wt,me=!0),pe!=null&&ke.set(ve,pe)}return me?void 0:[...ke].map(([ve,Pe])=>`${ve}: ${Pe}`).join("; ")}}function N(T,D,F,z){let q=T.value,U=z?q:D?D.value:"",Q=F?F.value:"";_e.add(T),D&&_e.add(D),F&&_e.add(F);let le=Tr(q,U,Q,nt),ke=le.text===""?null:he.createTextNode(le.text);ke&&(V.set(ke,{base:T.nodes,local:D?D.nodes:null,remote:F?F.nodes:null}),xe.set(ke,le.mapLocalOffset)),U!==q&&Q!==q?We.push({kind:"text",node:ke,source:"both"}):U!==q?Qe({kind:"text",node:ke,source:"local"}):Q!==q&&ct({kind:"text",node:ke,source:"remote"});for(let me of le.conflicts)C({kind:"text",node:ke,base:q.slice(me.bs,me.be),local:me.local,remote:me.remote,resolved:me.resolved});return ke}function j(T,D){return Er(T,D).every(F=>F.bs===F.be)}function J(T,D){let F=T?T.value:"",z=D?D.value:"",q;if(F===z||!z?q=F:F?j(F,z)?q=z:j(z,F)?q=F:(q=nt==="local"?F:nt==="both"?F+z:z,C({kind:"structure",el:null,detail:"insert-collision",local:F,remote:z,resolved:q})):q=z,T&&_e.add(T),D&&_e.add(D),q==="")return null;let U=he.createTextNode(q);return V.set(U,{base:null,local:T?T.nodes:null,remote:D?D.nodes:null}),F?Qe({kind:"insert",el:U,source:z&&F===z?"both":"local"}):ct({kind:"insert",el:U,source:"remote"}),U}function $(T,D){let F={ignored:o,remoteWins:r.remoteWins,inlineCache:Rt},z=le=>s(le).every(ke=>Le(ke)?Dn(ke,F):ke.kind==="text"),q=null;if(z(T)&&z(D)){let le=T.textContent,ke=D.textContent;le===ke||j(ke,le)?q=D:j(le,ke)&&(q=T)}if(!q){let le=nt==="local",ke=ce(le?T:D,le?"local":"remote",!0),me=V.get(ke);return le?me.remote=D:me.local=T,C({kind:"structure",el:ke,detail:"insert-collision",local:T,remote:D,resolved:le?T:D}),ke}let U=T.namespaceURI&&T.namespaceURI!=="http://www.w3.org/1999/xhtml"?he.createElementNS(T.namespaceURI,T.tagName):he.createElement(T.tagName);E(null,T,D,U),V.set(U,{base:null,local:T,remote:D}),_e.add(T),_e.add(D);let Q=pi({base:Array.from(q.childNodes),local:Array.from(T.childNodes),remote:Array.from(D.childNodes),out:he,policy:nt,idOf:{local:f,remote:u},ignored:o,ignoreAttribute:r.ignoreAttribute,remoteWins:r.remoteWins,provenance:V,textMappers:xe,conflicts:at,decisions:We,node:U});xt.push(...Q.segments);for(let le of Q.nodes)U.appendChild(le);return U}function ce(T,D,F=!1){if(!F&&Le(T)){let Q=G.partner.get(T);if(Q)return rt(T,D,Q)}if(!Le(T)){if(T.value==="")return null;let Q=T.kind==="comment"?he.createComment(T.value):he.createTextNode(T.value);return V.set(Q,{base:null,local:D==="local"?T.nodes:null,remote:D==="remote"?T.nodes:null}),_e.add(T),Q}let z=T.namespaceURI&&T.namespaceURI!=="http://www.w3.org/1999/xhtml"?he.createElementNS(T.namespaceURI,T.tagName):he.createElement(T.tagName);for(let Q of T.attributes)Q.namespaceURI?z.setAttributeNS(Q.namespaceURI,Q.name,Q.value):z.setAttribute(Q.name,Q.value);V.set(z,{base:null,local:D==="local"?T:null,remote:D==="remote"?T:null}),_e.add(T);let q=T.tagName==="TEMPLATE"&&z.content?z.content:z,U=D==="local"?K:W;for(let Q of s(T)){let le=Le(Q)?U.reverse.get(Q):null;if(le&&dt.has(le)){C({kind:"structure",el:null,detail:"both-moved",base:le});continue}if(le&&!Ze.has(le)){let me=K.map.get(le)||null,ve=W.map.get(le)||null;if(me||ve){let Pe=y(le,me,ve,!1);D==="local"?Qe({kind:"move",el:Pe,source:"local"}):ct({kind:"move",el:Pe,source:"remote"}),q.appendChild(Pe);continue}}let ke=ce(Q,D);ke&&q.appendChild(ke)}return z}function ge(T,D,F,z,q){D&&K.identical.has(T)&&K.pairIdenticalChildren(T),F&&W.identical.has(T)&&W.pairIdenticalChildren(T);let U=k(K,D,T,z),Q=k(W,F,T,!1),le=s(T),ke=new Set(le),me=new Map;for(let Y=0;Y<le.length;Y++)me.set(le[Y],Y);let ve=[],Pe=new Set,je=new Map,wt=new Set,pe=new Set,Xe=[];no();let Ee=Y=>{let Te=[];for(let be of Y.units){if(pe.has(be))continue;let Ne=Y.baseOf(be);Ne&&ke.has(Ne)&&Te.push(me.get(Ne))}return Te},Dt=Y=>Y.every((Te,be)=>be===0||Te>=Y[be-1]),At=!U.asBase&&!Dt(Ee(U)),Mt=!Q.asBase&&!Dt(Ee(Q));At&&Mt&&C({kind:"structure",el:null,detail:"both-reordered",base:T});let gt=Mt||!At?{V:Q,A:W,side:"remote",other:U,otherA:K,otherSide:"local"}:{V:U,A:K,side:"local",other:Q,otherA:W,otherSide:"remote"};At?Qe({kind:"move",el:null,source:Mt?"both":"local",base:T}):Mt&&ct({kind:"move",el:null,source:"remote",base:T});let xr=U.asBase?[]:U.units.filter(Y=>!U.baseOf(Y)&&!pe.has(Y)&&!G.partner.has(Y)),vr=Q.asBase?[]:Q.units.filter(Y=>!Q.baseOf(Y)&&!pe.has(Y)&&!G.partner.has(Y)),hn=new Map;if(xr.length&&vr.length){let Y=new Map,Te=new Map;for(let ie of vr){if(Le(ie)){let oe=u(ie);oe&&Y.set(oe,ie)}let Se=i.unitHash(ie);Te.has(Se)||Te.set(Se,[]),Te.get(Se).push(ie)}let be=(ie,Se)=>{let oe=ie.units.indexOf(Se);for(let Re=oe-1;Re>=0;Re--){let Fe=ie.baseOf(ie.units[Re]);if(Fe)return Fe}return"start"},Ne=new Map,$e=new Map;for(let ie of vr){let Se=be(Q,ie);Le(ie)?($e.has(Se)||$e.set(Se,[]),$e.get(Se).push(ie)):ie.kind==="text"&&!Ne.has(Se)&&Ne.set(Se,ie)}for(let ie of xr){let Se=null;if(Le(ie)){let oe=f(ie);oe&&Y.has(oe)&&!hn.has(Y.get(oe))&&(Se=Y.get(oe))}else if(ie.kind==="text"){let oe=Ne.get(be(U,ie));oe&&!hn.has(oe)&&(Se=oe)}if(!Se){let oe=Te.get(i.unitHash(ie));oe&&(Se=oe.find(Re=>!hn.has(Re)&&Le(Re)===Le(ie)&&(Le(Re)?Re.tagName===ie.tagName:Re.kind===ie.kind))||null)}if(!Se&&Le(ie)){let oe=m.local(ie),Re=($e.get(be(U,ie))||[]).filter(Fe=>{let Pt=m.remote(Fe);return!hn.has(Fe)&&Fe.tagName===ie.tagName&&!(oe&&Pt&&oe!==Pt)&&i.similar(ie,Fe)});Re.length===1&&(Se=Re[0])}Se&&(hn.set(Se,ie),hn.set(ie,Se))}}let nn=Y=>{if(_e.has(Y))return je.get(Y)||null;let Te=U.twin(Y),be=Q.twin(Y),Ne=Te&&!U.asBase&&!U.here(Te),$e=be&&!Q.asBase&&!Q.here(be);if(Ne||$e){if((!Te||!be)&&C({kind:"structure",el:null,detail:"move-beats-delete",base:Y}),!Wt(Y))return _e.add(Y),null;C({kind:"structure",el:null,detail:"both-moved",base:Y})}if(!Te&&!be)return _e.add(Y),ct({kind:"remove",source:"both",base:Y}),null;if(!Te&&!g(Y,be,W))return _e.add(Y),Qe({kind:"remove",source:"local",base:Y}),null;if(!be&&!g(Y,Te,K))return _e.add(Y),ct({kind:"remove",source:"remote",base:Y}),null;let ie=!Te||!be,Se=U.asBase?K.map.get(Y)||null:Te,oe;return Le(Y)?oe=y(Y,Se,be,U.asBase):Y.kind==="comment"?oe=vt(Y,Se,be,U.asBase):oe=N(Y,Se,be,U.asBase),_e.add(Y),oe&&(je.set(Y,oe),Te&&je.set(Te,oe),be&&je.set(be,oe),ie&&(C({kind:"structure",el:oe,detail:"edit-beats-delete",base:Y}),Te?Qe({kind:"insert",el:oe,source:"local"}):ct({kind:"insert",el:oe,source:"remote"}))),oe},Un=(Y,Te,be,Ne)=>{if(_e.has(Y))return je.get(Y)||null;let $e=Te.baseOf(Y);if($e&&ke.has($e))return pe.has($e)&&!pe.has(Y)?Qr($e,Y,Ne):nn($e);if($e)return eo($e,Y,Ne);let ie=hn.get(Y);if(ie){let oe=Ne==="local"?Y:ie,Re=Ne==="local"?ie:Y,Fe;return Le(oe)?i.unitHash(oe)===i.unitHash(Re)?(Fe=ce(oe,"local"),V.get(Fe).remote=Re):Fe=$(oe,Re):Fe=J(oe,Re),_e.add(oe),_e.add(Re),Fe&&(je.set(oe,Fe),je.set(Re,Fe),Le(oe)&&Qe({kind:"insert",el:Fe,source:"both"})),Fe}let Se=ce(Y,Ne);return Se&&(je.set(Y,Se),Ne==="local"?Qe({kind:"insert",el:Se,source:"local"}):ct({kind:"insert",el:Se,source:"remote"})),Se},Qr=(Y,Te,be)=>{let Ne;return Le(Y)?(Ne=ut(Y,be,Te),Ne&&_e.add(Te)):(Ne=ce(Te,be),_e.add(Te),Ne&&(be==="local"?Qe:ct)({kind:"insert",el:Ne,source:be})),Ne&&je.set(Te,Ne),Ne},eo=(Y,Te,be)=>{let $e=(be==="local"?W:K).map.get(Y),ie=Te,Se=$e?Tt($e,be==="local"?F:D,be==="local"?W:K):!1,oe=$e&&!Se&&!Et(Y,$e);if(oe&&be===gt.otherSide)return C({kind:"structure",el:null,detail:"both-moved",base:Y}),null;if(oe&&C({kind:"structure",el:null,detail:"both-moved",base:Y}),$e||C({kind:"structure",el:null,detail:"move-beats-delete",base:Y}),Ze.has(Y)){C({kind:"structure",el:null,detail:"both-moved",base:Y});let Fe=ce(ie,be);return Fe&&je.set(Te,Fe),Fe}let Re=Le(Y)?y(Y,be==="local"?ie:K.map.get(Y)||null,be==="remote"?ie:W.map.get(Y)||null,!1):null;return Re&&(je.set(Y,Re),je.set(Te,Re),$e&&je.set($e,Re),be==="local"?Qe({kind:"move",el:Re,source:"local"}):ct({kind:"move",el:Re,source:"remote"})),Re};for(let Y of gt.V.units){if(pe.has(Y)){let be=je.get(Y);Pe.has(be)||(ve.push(be),Pe.add(be));continue}if(_e.has(Y)&&!(je.get(Y)&&Pe.has(je.get(Y)))){let be=gt.V.baseOf(Y);be&&!ke.has(be)&&C({kind:"structure",el:null,detail:"both-moved",base:be});continue}let Te=Un(Y,gt.V,gt.A,gt.side);Te&&!Pe.has(Te)&&(ve.push(Te),Pe.add(Te),!gt.V.baseOf(Y)&&!hn.has(Y)&&!pe.has(Y)&&wt.add(Te))}for(let Y of Xe)Pe.has(Y.frag)||(ve.splice(to(Y.at),0,Y.frag),Pe.add(Y.frag));if(!gt.other.asBase){let Y=gt.other,Te=gt.otherSide,be=gt.otherA,Ne=null,$e=0,ie=null;for(let Se of Y.units){let oe=je.get(Se);if(oe&&Pe.has(oe)){Ne=oe,ie=null;continue}if(_e.has(Se)){let Pt=Y.baseOf(Se);Pt&&!ke.has(Pt)&&C({kind:"structure",el:null,detail:"both-moved",base:Pt});continue}let Re=Un(Se,Y,be,Te);if(!Re)continue;let Fe;if(ie)Fe=ve.indexOf(ie)+1;else if(Ne){if(Fe=ve.indexOf(Ne)+1,Te==="remote")for(;Fe<ve.length&&wt.has(ve[Fe]);)Fe++}else Fe=$e++;ve.splice(Fe,0,Re),Pe.add(Re),ie=Re}}for(let Y=0;Y<le.length;Y++){let Te=le[Y];if(_e.has(Te))continue;let be=nn(Te);be&&ve.splice(to(Y),0,be)}return ve;function to(Y){for(let Te=Y-1;Te>=0;Te--){let be=je.get(le[Te]);if(be){let Ne=ve.indexOf(be);if(Ne>=0)return Ne+1}}return 0}function zn(Y){let Te={ignored:o,remoteWins:()=>!1},be=Z=>Y(Z)||Le(Z)&&r.remoteWins(Z)&&mn.has(Z.tagName)&&Dn(Z,Te),Ne=new Map,$e=Z=>{if(!Le(Z)||!Au.has(Z.tagName))return!1;let de=Ne.get(Z);return de===void 0&&(de=!o(Z)&&!r.remoteWins(Z)&&s(Z).every(be),Ne.set(Z,de)),de},ie=Z=>!Le(Z)&&Z.kind==="text",Se=null,oe=new Map,Re=Z=>{let de=oe.get(Z);if(de)return de;let we=Le(Z)?Z.textContent:Z.value;de=new Set;let Ie=we.toLowerCase();if(!(we.length>Ws))if(/^[\x00-\x7f]*$/.test(Ie))for(let Oe of Ie.split(/[^\p{L}\p{N}]+/u))Oe&&de.add(Oe);else for(let Oe of ci(Ie))/^[\s\p{P}]+$/u.test(Oe)||de.add(Oe);return oe.set(Z,de),de},Fe=Z=>(Le(Z)?Z.textContent:Z.value).toLowerCase().replace(/\s+/g," ").trim(),Pt=new Map,rn=Z=>{let de=Pt.get(Z);if(de)return de;de=new Set(Re(Z));let we=Oe=>{if(Oe)for(let Ye of Re(Oe))de.add(Ye)},Ie=ke.has(Z)?Z:!U.asBase&&U.baseOf(Z)||!Q.asBase&&Q.baseOf(Z);return Ie&&(we(Ie),we(K.map.get(Ie)),we(W.map.get(Ie))),Pt.set(Z,de),de},pn=(Z,de)=>{let we=Fe(de),Ie=ke.has(Z)?Z:!U.asBase&&U.baseOf(Z)||!Q.asBase&&Q.baseOf(Z),Oe=mt=>we?mt.split(we).length-1:0;if(Ie&&Le(de)&&!ke.has(de)){let mt=Oe(Fe(Ie));for(let bt of[K.map.get(Ie),W.map.get(Ie)]){if(!bt||bt===de||bt.ownerDocument!==de.ownerDocument)continue;let Qt=Fe(bt);if(Qt.length>we.length&&Oe(Qt)>=mt&&(Qt.startsWith(we)||Qt.endsWith(we)))return!1}}let Ye=Re(de),ot=rn(Z),qt=0;for(let mt of Ye)ot.has(mt)&&qt++;if(Ye.size&&qt*2>=Ye.size)return!0;if(!we||we.length>Ws)return!1;let zt=Ie?[Z,Ie,K.map.get(Ie),W.map.get(Ie)]:[Z],Jt=(mt,bt)=>mt!==bt&&(mt.startsWith(bt)||mt.endsWith(bt));if(zt.some(mt=>mt&&Jt(Fe(mt),we)))return!0;if(!ke.has(de)||!Ie)return!1;let _t=Fe(Z),Zt=Fe(Ie);return[K.map.get(de),W.map.get(de)].some(mt=>{let bt=mt&&Fe(mt);return!!bt&&_t!==bt&&(_t.startsWith(bt)&&!Zt.startsWith(bt)||_t.endsWith(bt)&&!Zt.endsWith(bt))})},Ut=Z=>{Se||(Se=new Set),Se.add(Z)},wn=Z=>{Ut(Z);for(let[de,we]of[[K,U],[W,Q]]){if(we.asBase)continue;let Ie=de.map.get(Z);Ie&&we.here(Ie)&&Ut(Ie)}},De=(Z,de)=>Z.asBase||le.every(we=>!Le(we)||de.identical.has(we)&&Z.here(de.map.get(we)))&&Z.units.every(we=>!Le(we)||Z.baseOf(we));if(De(U,K)&&De(Q,W))return null;let Ue=Z=>{if(Z.asBase)return!1;let de=-1;for(let we of Z.units){let Ie=Le(we)?Z.baseOf(we):null;if(!Ie||!ke.has(Ie))continue;let Oe=me.get(Ie);if(Oe<de)return!0;de=Oe}return!1};if(Ue(U)||Ue(Q))return null;for(let[Z,de]of[[U,K],[Q,W]]){if(Z.asBase||De(Z,de))continue;let we=Z.units,Ie=de===K?m.local:m.remote,Oe=(fe,ze)=>{let st=Le(fe)&&m.base(fe),tt=Le(ze)&&Ie(ze);return!st||!tt||st===tt},Ye=new Map;for(let fe=0;fe<we.length;fe++)Ye.set(we[fe],fe);let ot=fe=>!!fe&&(Le(fe)?Z.here(fe):Ye.has(fe)),qt=fe=>{let ze=Z.twin(fe);return ot(ze)?ze:null},zt=le.filter(fe=>!Z.twin(fe)&&$e(fe)),Jt=we.filter(fe=>!Z.baseOf(fe)&&$e(fe)),_t=(fe,ze)=>ze===le?!!qt(fe):ke.has(Z.baseOf(fe)),Zt=fe=>{let ze=new Int32Array(fe.length),st=new Int32Array(fe.length),tt=-1;for(let Je=0;Je<fe.length;Je++)ze[Je]=tt,_t(fe[Je],fe)&&(tt=Je);tt=fe.length;for(let Je=fe.length-1;Je>=0;Je--)st[Je]=tt,_t(fe[Je],fe)&&(tt=Je);return{prev:ze,next:st}},mt=Zt(we),bt=Zt(le),Qt=(fe,ze)=>{wn(fe),Ut(ze)};for(let fe of Jt){let ze=Ye.get(fe),st=mt.prev[ze],tt=mt.next[ze],Je=st>=0?Z.baseOf(we[st]):null,an=tt<we.length?Z.baseOf(we[tt]):null,on=Je?me.get(Je):-1,An=an?me.get(an):le.length;for(let en=Math.max(0,on);en<=Math.min(An,le.length-1);en++){let $t=le[en];($e($t)||ie($t))&&(!Oe($t,fe)||!pn($t,fe)||(ie($t)?Ut(fe):Qt($t,fe)))}}let ln=(fe,ze,st)=>{for(let tt=ze+st;tt>=0&&tt<fe.length;tt+=st){let Je=fe[tt];if($e(Je))return Je;if(Le(Je)||Je.value.trim())return null}return null},ro=fe=>{let ze=new Set;for(let st of s(fe))if(!Le(st)&&st.kind==="text")for(let tt of Re(st))ze.add(tt);return ze},wr=(fe,ze)=>{let st=Re(ze),tt=new Set;for(let Je of ro(fe))st.has(Je)||tt.add(Je);return tt},Ar=(fe,ze)=>{if(!fe.size)return!1;let st=Re(ze),tt=0;for(let Je of fe)st.has(Je)&&tt++;return tt*2>=fe.size};for(let fe of le){if(de.identical.has(fe)||!$e(fe))continue;let ze=qt(fe);if(!ze||!$e(ze))continue;let st=wr(ze,fe),tt=wr(fe,ze);for(let Je of[-1,1]){let an=ln(le,me.get(fe),Je);an&&Ar(st,an)&&(Qt(fe,ze),wn(an));let on=ln(we,Ye.get(ze)??-1,Je);if(on&&Ar(tt,on)){Qt(fe,ze);let An=Z.baseOf(on);An?Qt(An,on):Ut(on)}}}for(let fe of zt){let ze=me.get(fe),st=bt.prev[ze],tt=bt.next[ze],Je=st>=0?qt(le[st]):null,an=tt<le.length?qt(le[tt]):null,on=Je?Ye.get(Je)??-1:-1,An=an?Ye.get(an)??-1:we.length;for(let en=Math.max(0,on);en<=Math.min(An,we.length-1);en++){let $t=we[en];if(($e($t)||ie($t))&&!(!Oe(fe,$t)||!pn($t,fe))&&(wn(fe),!ie($t))){let Yt=Z.baseOf($t);Yt?Qt(Yt,$t):Ut($t)}}}}if(!Se)return null;for(let Z of Array.from(Se))if(ke.has(Z))for(let de of[K,W]){let we=de.map.get(Z);we&&we.parentNode!==(de===K?D:F)&&!(de===K?U:Q).asBase&&Se.delete(Z)}return Se.size?Se:null}function no(){if((U.asBase||K.identical.has(T))&&(Q.asBase||W.identical.has(T)))return;let Y={ignored:o,remoteWins:r.remoteWins,inlineCache:Rt},Te=De=>Le(De)?Dn(De,Y):De.kind==="text",be=zn(Te),Ne=De=>be&&be.has(De)||Te(De),$e=le.map(Ne);if(!$e.includes(!0))return;let ie=De=>{let Ue=De.units,Z=new Map;for(let ot=0;ot<Ue.length;ot++)Z.set(Ue[ot],ot);let de=[],we=-1;for(let ot=0;ot<le.length;ot++){if($e[ot])continue;let qt=De.twin(le[ot]),zt=qt?Z.get(qt):void 0;zt===void 0||zt<=we||Ne(qt)||(de.push([ot,zt]),we=zt)}let Ie=[],Oe=-1,Ye=-1;for(let ot=0;ot<=de.length;ot++){let[qt,zt]=ot<de.length?de[ot]:[le.length,Ue.length],Jt={bLo:-1,bHi:-1,sLo:-1,sHi:-1,next:zt};for(let _t=Oe+1;_t<qt;_t++)$e[_t]&&(Jt.bLo<0&&(Jt.bLo=_t),Jt.bHi=_t);for(let _t=Ye+1;_t<zt;_t++)Ne(Ue[_t])&&(Jt.sLo<0&&(Jt.sLo=_t),Jt.sHi=_t);Ie.push(Jt),Oe=qt,Ye=zt}return{units:Ue,list:Ie}},Se=ie(U),oe=ie(Q),Re=[];for(let De of[Se,oe])for(let Ue of De.list)Ue.bLo>=0&&Re.push([Ue.bLo,Ue.bHi]);Re.sort((De,Ue)=>De[0]-Ue[0]);let Fe=[];for(let[De,Ue]of Re){let Z=Fe[Fe.length-1];Z&&De<=Z.hi?Z.hi=Math.max(Z.hi,Ue):Fe.push({lo:De,hi:Ue})}let Pt=(De,Ue)=>{let Z=-1,de=-1;for(let Oe=0;Oe<De.list.length;Oe++){let Ye=De.list[Oe];Ye.bLo<Ue.lo||Ye.bLo>Ue.hi||(Z<0&&(Z=Oe),de=Oe)}let we=1/0,Ie=-1;for(let Oe=Z;Oe>=0&&Oe<=de;Oe++){let Ye=De.list[Oe];Ye.sLo>=0&&(we=Math.min(we,Ye.sLo),Ie=Math.max(Ie,Ye.sHi)),Oe<de&&(we=Math.min(we,Ye.next),Ie=Math.max(Ie,Ye.next))}return Ie<0?[]:De.units.slice(we,Ie+1)},rn=(De,Ue)=>De.length===Ue.length&&De.every((Z,de)=>i.unitHash(Z)===i.unitHash(Ue[de])),pn=De=>!Le(De)&&De.kind==="comment",Ut=De=>{if(!De.length)return[];let Ue=(Oe,Ye)=>Le(Oe)?Oe:Oe.nodes[Ye?Oe.nodes.length-1:0],Z=Ue(De[0]),de=Ue(De[De.length-1],!0),we=Oe=>Oe&&Le(Oe)&&o(Oe);for(;we(Z.previousSibling);)Z=Z.previousSibling;for(;we(de.nextSibling);)de=de.nextSibling;let Ie=[];for(let Oe=Z;Oe&&(Ie.push(Oe),Oe!==de);Oe=Oe.nextSibling);return Ie},wn=De=>De.some(Ue=>Le(Ue)&&o(Ue));for(let De of Fe){let Ue=le.slice(De.lo,De.hi+1),Z=U.asBase?null:Pt(Se,De),de=Q.asBase?null:Pt(oe,De);if(Ue.some(pn)||Z&&Z.some(pn)||de&&de.some(pn))continue;let we=Ut(Z||Ue),Ie=Ut(de||Ue);if((!Z||rn(Ue,Z))&&(!de||rn(Ue,de))&&!(Z&&wn(we)))continue;let Oe=pi({base:Ut(Ue),local:we,remote:Ie,out:he,policy:nt,blocks:be,L:Z?K:Ks(K,T),R:de?W:Ks(W,T),idOf:{local:f,remote:u},ignored:o,ignoreAttribute:r.ignoreAttribute,remoteWins:r.remoteWins,mergeElement:(ot,qt,zt)=>y(ot,qt,zt,!1),cloneUnit:ce,mergeAttrs:E,atomKey:i.unitHash,moveIn:ut,provenance:V,textMappers:xe,conflicts:at,decisions:We,node:q});xt.push(...Oe.segments);let Ye=he.createDocumentFragment();for(let ot of Oe.nodes)Ye.appendChild(ot);for(let ot of[...Ue,...Z||[],...de||[]])_e.add(ot),pe.add(ot),je.set(ot,Ye);Xe.push({frag:Ye,at:De.lo})}}}function ht(T,D){let F=V.get(T);return F&&F.unchanged?!0:T.tagName!==D.tagName||!ue(T,D)?!1:Ge(ft(T),ft(D))}function ft(T){return T.tagName==="TEMPLATE"&&T.content?T.content:T}function ue(T,D){let F=0;for(let z of T.attributes)if(!r.ignoreAttribute(T,z.name)&&(F++,D.getAttribute(z.name)!==z.value))return!1;for(let z of D.attributes)r.ignoreAttribute(D,z.name)||F--;return F===0}function Ge(T,D){let F=Ft(T,q=>{let U=V.get(q);return!!(U&&U.pinned)}),z=Ft(D,o);if(F.length!==z.length)return!1;for(let q=0;q<F.length;q++){let U=F[q],Q=z[q];if(typeof U=="string"||typeof Q=="string"){if(U!==Q)return!1}else{if(U.nodeType!==Q.nodeType)return!1;if(U.nodeType===1){if(!ht(U,Q))return!1}else if(U.nodeValue!==Q.nodeValue)return!1}}return!0}function Ft(T,D){let F=[],z=null;for(let q=T.firstChild;q;q=q.nextSibling){if(q.nodeType===3){z=z===null?q.nodeValue:z+q.nodeValue;continue}q.nodeType===1&&D(q)||(z!==null&&(z!==""&&F.push(z),z=null),F.push(q))}return z!==null&&z!==""&&F.push(z),F}function vt(T,D,F,z){let q=T.value,U=z?q:D?D.value:"",Q=F?F.value:"";_e.add(T),D&&_e.add(D),F&&_e.add(F);let le=U===Q?U:U===q?Q:Q===q||nt==="local"?U:Q;if(U!==q&&Q!==q&&U!==Q&&C({kind:"text",node:null,base:q,local:U,remote:Q,resolved:le}),!D&&!F)return null;let ke=he.createComment(le);return V.set(ke,{base:T.nodes,local:D?D.nodes:null,remote:F?F.nodes:null}),ke}function Ht(T,D){let F=D.map.get(T);if(!F)return null;let z=Le(F)?F.parentNode:F.parent,q=Le(T)?T.parentNode:T.parent;return D.map.get(q)===z?null:D.reverse.get(z)||null}function Wt(T){let D=new Set([T]),F=T;for(let z=0;z<64;z++){let q=Ht(F,K)||Ht(F,W);if(!q)return!1;if(q===T||Le(T)&&Le(q)&&T.contains(q)||D.has(q))return!0;D.add(q),F=q}return!0}function Tt(T,D,F){if(!D)return!1;let z=Le(T)?T.parentNode:T.parent;return z===D||D.tagName==="TEMPLATE"&&z===D.content}function Et(T,D){let F=Le(T)?T.parentNode:T.parent,z=Le(D)?D.parentNode:D.parent;return!!(K.map.get(F)===z?K:W.map.get(F)===z?W:null)}}function Ks(e,t){return e.map.get(t)?Gs():{map:{get:r=>r&&r.nodeType===1&&e.map.get(r)||r,has:()=>!0},reverse:{get:r=>e.reverse.get(r)||r,has:()=>!0},moved:new Set,identical:{has:()=>!0},pairIdenticalChildren:()=>{}}}function Gs(){let e={get:t=>t,has:()=>!0};return{map:e,reverse:e,moved:new Set,identical:{has:()=>!0},pairIdenticalChildren:()=>{}}}var Ys=new Set(["INPUT","OPTION","TEXTAREA"]);function Xs(e,t,n,r){let o=e.ownerDocument,{provenance:i,textMappers:s}=n,l=r.hooks,a=[],h=[],d=[],b=new Set,f=[],u=[],m=new Set,p=new Map,v=k=>!!k&&(k===e||e.contains(k)||e.nodeType===1&&e.tagName==="TEMPLATE"&&e.content.contains(k)),A=new Map,M=new Map,L=new Map,H=new Map;(function k(g){let y=i.get(g);if(y){if(g.nodeType===1){let _=y.local?r.toLive(y.local):null;_&&v(_)&&_.nodeType===1&&(A.set(g,_),M.set(_,g))}else if(Array.isArray(y.local)){let _=K(y.local,y.local.map(E=>r.toLive(E)).filter(E=>E&&v(E)&&E.nodeType===g.nodeType));if(_.length&&(A.set(g,_[0]),M.set(_[0],g),L.set(g,_)),Array.isArray(y.caret))for(let E of y.caret){let I=r.toLive(E.node);if(!I||!v(I)||I.nodeType!==3)continue;let N=H.get(I);Array.isArray(N)||H.set(I,N=[]),N.push({merged:g,from:E.from,to:E.to,flatStart:E.flatStart})}else{let E=0;for(let I of _)H.set(I,{merged:g,shift:E}),E+=I.nodeValue.length}}}let O=g.nodeType===1&&g.tagName==="TEMPLATE"&&g.content?g.content.childNodes:g.childNodes;for(let _ of O)k(_)})(t);let B=new Set;for(let k of A.values())B.add(k);for(let k of L.values())for(let g of k)B.add(g);for(let k of n.segments||[])W(k);let te=r.restoreFocus===!1?null:Su(o,H);r.childrenOnly?We(he(e),he(t)):V(e,t);for(let{node:k,parent:g}of f)b.has(k)||!k.parentNode||k.nodeType===1&&(r.ignored(k)||at(k))||ct(k,g);return Tu(o,te,H,s,L,p),{applied:a,moved:h,replaced:d,identities:u,mergedScriptsLive:m,liveOf:A};function re(k,g){let y=k.slice(g.bs,g.be),O=0;for(;O<y.length&&O<g.text.length&&y[O]===g.text[O];)O++;let _=0;for(;_<y.length-O&&_<g.text.length-O&&y[y.length-1-_]===g.text[g.text.length-1-_];)_++;return{bs:g.bs+O,be:g.be-_,text:g.text.slice(O,g.text.length-_)}}function K(k,g){if(!g.length)return g;let y=new Set;for(let _ of k){let E=_.parentNode;if(E)for(let I=E.firstChild;I;I=I.nextSibling)I.nodeType===3&&y.add(r.toLive(I))}let O=[];for(let _ of g){O.push(_);for(let E=_.nextSibling;E&&E.nodeType===3&&!y.has(E)&&!O.includes(E);E=E.nextSibling)O.push(E)}return O}function W(k){let g=[];for(let ue of k.localNodes){let Ge=r.toLive(ue.node);if(!Ge||!v(Ge)||Ge.nodeType!==3)return;g.push(Ge)}let y=K(k.localNodes.map(ue=>ue.node),g);if(!y.length)return;let O=y.map(ue=>ue.nodeValue).join(""),{flatLocal:_,lToM:E,mapLocal:I}=k;if(O===_)return;let N=k.textNodes.map(ue=>({node:ue.node,ms:ue.ms,me:ue.me})),j=[],J=0;for(let ue of y)j.push(J),J+=ue.nodeValue.length;let $=(ue,Ge)=>y.find((Ft,vt)=>j[vt]<=ue&&ue+Ge<=j[vt]+Ft.nodeValue.length)||null,ce=[],ge=0;for(let ue of Er(_,O).map(Ge=>re(_,Ge))){let Ge=ue.bs+ge;ge+=ue.text.length-(ue.be-ue.bs);let Ft,vt;if(ue.be>ue.bs){Ft=E[ue.bs];let Ht=Ft>=0;for(let Wt=ue.bs;Ht&&Wt<ue.be;Wt++)E[Wt]!==Ft+(Wt-ue.bs)&&(Ht=!1);if(!Ht)continue;vt=Ft+(ue.be-ue.bs)}else{let Ht=ue.bs>0?E[ue.bs-1]:0,Wt=ue.bs<_.length?E[ue.bs]:0;if(Ht<0||Wt<0)continue;Ft=vt=I(ue.bs)}ce.push({ms:Ft,me:vt,text:ue.text,live:vt===Ft?$(Ge,ue.text.length):null})}ce.sort((ue,Ge)=>Ge.ms-ue.ms);let ht=(ue,Ge)=>(L.get(ue.node)||[A.get(ue.node)]).includes(Ge),ft=ue=>!!ue&&ue.nodeType===1&&mn.has(ue.tagName);for(let ue of ce){let Ge=N.find(vt=>vt.ms<=ue.ms&&ue.me<=vt.me&&ue.ms<vt.me);if(Ge&&ue.live&&Ge.ms===ue.ms&&!ht(Ge,ue.live)){let vt=N.find(Ht=>Ht.me===ue.ms&&ht(Ht,ue.live));vt&&(Ge=vt)}if(!Ge&&ue.me===ue.ms){let vt=N.find(Et=>Et.me===ue.ms),Ht=N.find(Et=>Et.ms===ue.ms),Wt=vt||Ht;if(!Wt)continue;let Tt=Wt.node;for(;ft(Tt.parentNode)&&(vt?Tt.parentNode.lastChild:Tt.parentNode.firstChild)===Tt;)Tt=Tt.parentNode;if(Tt===Wt.node)Ge=Wt;else{let Et=Tt.ownerDocument.createTextNode(ue.text);Tt.parentNode.insertBefore(Et,vt?Tt.nextSibling:Tt);continue}}if(!Ge)continue;let Ft=Ge.node.nodeValue;Ge.node.nodeValue=Ft.slice(0,ue.ms-Ge.ms)+ue.text+Ft.slice(ue.me-Ge.ms),Ge.me+=ue.text.length-(ue.me-ue.ms)}}function he(k){return k.nodeType===1&&k.tagName==="TEMPLATE"&&k.content?k.content:k}function V(k,g){b.add(k);let y=i.get(g);if(y&&y.remote&&n.remoteIdOf){let _=n.remoteIdOf(y.remote);_&&u.push([k,_])}if(y&&y.unchanged){n.customIdentity&&y.remote&&dt(k,y.remote),y.remote&&_e(k,y.remote);return}if(l.beforeNodeMorphed(k,g)===!1)return;ye(k,g);let O=k.tagName;if(Kt(k))k.textContent!==g.textContent&&(a.push({kind:"text",node:k,before:k.textContent,after:g.textContent}),k.textContent=g.textContent),n.mergedScripts.has(g)&&m.add(k);else if(O==="TEXTAREA")ut(k,g,y);else{Ke(k,g,y);let _=O==="TEMPLATE"&&k.content?k.content:k,E=O==="TEMPLATE"&&g.content?g.content:g;r.protectFocusedValue==="subtree"&&Ce(k)&&k!==o.body?xe(_):We(_,E)}l.afterNodeMorphed(k,g)}function xe(k){for(let g=k.firstChild;g;g=g.nextSibling){let y=M.get(g);y&&A.get(y.parentNode)!==k||(b.add(g),g.nodeType===1&&xe(g))}}function We(k,g){let y=nt(k.firstChild),O=new Set;for(let _ of Array.from(g.childNodes)){let E=A.get(_);E&&b.has(E)&&!O.has(E)&&(E=null);let I=i.get(_);if(I&&I.pinned){E&&E.nodeType===1&&((E.parentNode!==k||nt(E.nextSibling)!==y)&&Qe(k,E,y),b.add(E),O.add(E));continue}if(E&&E.nodeType===1){if(E!==y){let J=E.parentNode;if(J===k&&y&&rt(E)){let $=E.nextSibling;for(let ce=y;ce&&ce!==E;){let ge=ce.nextSibling;Qe(k,ce,$),ce=ge}}else Qe(k,E,y),J!==k&&(h.push(E),a.push({kind:"move",el:E,from:J,to:k}))}O.add(E),V(E,_),y=nt(E.nextSibling);continue}if(E&&E.nodeType!==1){let J=L.get(_)||[E];E!==y&&Qe(k,E,y);let $=_.nodeValue;if(_.nodeType===3){let ce=Nt(_),ge=J.map(ht=>ht.nodeValue).join("");ce!=null&&ge!==ce&&($=Tr(ce,ge,_.nodeValue).text)}l.beforeNodeMorphed(E,_)!==!1&&(E.nodeValue!==$&&(a.push({kind:"text",node:E,before:E.nodeValue,after:$}),E.nodeValue=$),l.afterNodeMorphed(E,_)),b.add(E),O.add(E),p.set(_,E),y=nt(E.nextSibling);continue}if(_.nodeType===3&&y&&y.nodeType===3&&!b.has(y)&&!H.has(y)){y.nodeValue!==_.nodeValue&&(a.push({kind:"text",node:y,before:y.nodeValue,after:_.nodeValue}),y.nodeValue=_.nodeValue),b.add(y),p.set(_,y),y=nt(y.nextSibling);continue}let N=i.get(_),j=C(N&&N.unchanged&&N.remote?N.remote:_);l.beforeNodeAdded(j)!==!1&&(k.insertBefore(j,y),b.add(j),j.nodeType===3&&p.set(_,j),j.nodeType===1&&(d.push(j),Rt(j,_),Kt(j)||G(j,_),r.formState==="property"&&Ve(N)&&_e(j,N.remote)),y=nt(j.nextSibling),a.push({kind:"insert",node:j,parent:k}),l.afterNodeAdded(j))}for(let _ of Array.from(k.childNodes))b.has(_)||O.has(_)||_.nodeType===1&&(r.ignored(_)||at(_))||(B.has(_)?f.push({node:_,parent:k}):ct(_,k))}function at(k){return r.preserve&&k.parentNode&&k.parentNode.nodeType===1&&k.parentNode.tagName==="HEAD"&&r.preserve(k)===!0}function Nt(k){let g=i.get(k);return!g||!Array.isArray(g.local)?null:g.local.map(y=>y.nodeValue).join("")}function xt(k){return i.get(k)}function _e(k,g){if(!Ys.has(k.tagName)&&!k.querySelector("input,option,textarea"))return;let y=(O,_)=>{if(O.tagName!==_.tagName)return;O.tagName==="TEXTAREA"?ut(O,_,{remote:_}):Ys.has(O.tagName)&&Ke(O,_,{remote:_});let E=Ze(O),I=Ze(_);if(E.length===I.length)for(let N=0;N<E.length;N++)y(E[N],I[N])};y(k,g)}function dt(k,g){let y=Ze(k),O=Ze(g);if(y.length===O.length)for(let _=0;_<y.length;_++){let E=n.remoteIdOf(O[_]);E&&u.push([y[_],E]),dt(y[_],O[_])}}function Ze(k){let g=k.tagName==="TEMPLATE"&&k.content?k.content:k;return Array.from(g.children).filter(y=>!r.ignored(y))}function Rt(k,g){if(!n.remoteIdOf)return;let y=(O,_)=>{let E=i.get(_);if(E&&E.remote&&_.nodeType===1){let j=n.remoteIdOf(E.remote);j&&u.push([O,j])}let I=O.childNodes,N=_.childNodes;for(let j=0;j<I.length&&j<N.length;j++)y(I[j],N[j])};y(k,g)}function nt(k){for(;k&&k.nodeType===1&&r.ignored(k);)k=k.nextSibling;return k}function Qe(k,g,y){if(typeof k.moveBefore=="function"&&g.ownerDocument===k.ownerDocument)try{k.moveBefore(g,y);return}catch{}k.insertBefore(g,y)}function ct(k,g){l.beforeNodeRemoved(k)!==!1&&(k.parentNode.removeChild(k),a.push({kind:"remove",node:k,parent:g}),l.afterNodeRemoved(k))}function C(k){if(Kt(k))return Cr(k,o);let g=o.importNode(k,!0);if(g.nodeType===1)for(let y of Array.from(g.querySelectorAll("script")))Kt(y)&&y.replaceWith(Cr(y,o));return g}function G(k,g){let y=k.tagName==="TEMPLATE"&&k.content?k.content:k,O=g.tagName==="TEMPLATE"&&g.content?g.content:g,_=Array.from(y.childNodes),E=Array.from(O.childNodes);for(let I=0;I<E.length&&I<_.length;I++){let N=E[I],j=_[I],J=A.get(N);J&&b.has(J)&&(J=null);let $=i.get(N);if($&&$.pinned){if(J&&J.nodeType===1){let ce=J.parentNode;Qe(y,J,j),ce!==y&&(h.push(J),a.push({kind:"move",el:J,from:ce,to:y})),b.add(J)}j.remove();continue}if(J){let ce=J.parentNode;Qe(y,J,j),j.remove(),J.nodeType===1?(ce!==y&&(h.push(J),a.push({kind:"move",el:J,from:ce,to:y})),V(J,N)):(b.add(J),p.set(N,J),J.nodeValue!==N.nodeValue&&(a.push({kind:"text",node:J,before:J.nodeValue,after:N.nodeValue}),J.nodeValue=N.nodeValue));continue}b.add(j),j.nodeType===3&&p.set(N,j),N.nodeType===1&&!Kt(N)&&G(j,N)}}function ye(k,g){for(let y of Array.from(g.attributes)){if(se(k,y.name)||r.ignoreAttribute(k,y.name))continue;let O=y.namespaceURI?k.getAttributeNS(y.namespaceURI,y.localName):k.getAttribute(y.name);O!==y.value&&l.beforeAttributeUpdated(y.name,k,"update")!==!1&&(y.namespaceURI?k.setAttributeNS(y.namespaceURI,y.name,y.value):k.setAttribute(y.name,y.value),a.push({kind:"attr",el:k,name:y.name,before:O,after:y.value}))}for(let y of Array.from(k.attributes)){if(se(k,y.name)||r.ignoreAttribute(k,y.name)||(y.namespaceURI?g.hasAttributeNS(y.namespaceURI,y.localName):g.hasAttribute(y.name))||l.beforeAttributeUpdated(y.name,k,"remove")===!1)continue;let _=y.value;y.namespaceURI?k.removeAttributeNS(y.namespaceURI,y.localName):k.removeAttribute(y.name),a.push({kind:"attr",el:k,name:y.name,before:_,after:null})}}function se(k,g){let y=k.tagName;return y==="INPUT"?g==="value"||g==="checked"||g==="disabled":y==="OPTION"?g==="selected":!1}function Ce(k){return k===o.activeElement}function rt(k){let g=o.activeElement;return!!g&&g!==o.body&&k.contains(g)}function Ve(k){let g=k&&k.remote;return g&&g.nodeType===1?g:null}function Ke(k,g,y){let O=k.tagName,_=Ve(y),E=r.formState==="property"&&_?_:g;if(O==="INPUT"){let I=r.protectFocusedValue&&Ce(k),N=(k.getAttribute("type")||"").toLowerCase(),j=N!=="file"&&N!=="checkbox"&&N!=="radio",J=_&&_.hasAttribute("value")&&_.value!==_.getAttribute("value")?_.value:null;if(j&&!I)if(r.formState==="property"){let $=g.getAttribute("value"),ce=k.getAttribute("value");(ce!==$||k.value!==E.value)&&l.beforeAttributeUpdated("value",k,$==null?"remove":"update")!==!1&&(ce!==$&&($==null?k.removeAttribute("value"):k.setAttribute("value",$),a.push({kind:"attr",el:k,name:"value",before:ce,after:$})),k.value!==E.value&&(k.value=E.value))}else if(g.hasAttribute("value")||J!=null){let $=J??g.getAttribute("value");k.getAttribute("value")!==$&&l.beforeAttributeUpdated("value",k,"update")!==!1?(k.setAttribute("value",$),k.value!==$&&(k.value=$),a.push({kind:"attr",el:k,name:"value",before:null,after:$})):k.value!==$&&k.getAttribute("value")===$&&(k.value=$)}else(k.hasAttribute("value")||k.value!=="")&&l.beforeAttributeUpdated("value",k,"remove")!==!1&&(k.removeAttribute("value"),k.value="",a.push({kind:"attr",el:k,name:"value",before:"",after:null}));if(!j&&N!=="file"){let $=g.getAttribute("value");$==null?k.hasAttribute("value")&&l.beforeAttributeUpdated("value",k,"remove")!==!1&&k.removeAttribute("value"):k.getAttribute("value")!==$&&l.beforeAttributeUpdated("value",k,"update")!==!1&&k.setAttribute("value",$)}I||(et(k,E,"checked"),r.formState==="property"&&k.indeterminate!==E.indeterminate&&(k.indeterminate=E.indeterminate)),et(k,E,"disabled")}else if(O==="OPTION"){let I=k.parentNode&&k.closest("select");r.protectFocusedValue&&I&&Ce(I)||et(k,E,"selected")}}function et(k,g,y){let O=r.formState==="property"?!!g[y]:g.hasAttribute(y);if(r.formState!=="property"){let _=k.hasAttribute(y);if(_!==O){if(l.beforeAttributeUpdated(y,k,O?"update":"remove")===!1)return;O?k.setAttribute(y,""):k.removeAttribute(y),a.push({kind:"attr",el:k,name:y,before:_?"":null,after:O?"":null})}}k[y]!==O&&(k[y]=O)}function ut(k,g,y){if(r.protectFocusedValue&&Ce(k)||l.beforeAttributeUpdated("value",k,"update")===!1)return;let O=Ve(y),_=g.textContent,E=O&&O.value!==O.defaultValue?O.value:_;r.formState!=="property"&&k.textContent!==_&&(a.push({kind:"text",node:k,before:k.textContent,after:_}),k.textContent=_),k.value!==E&&(k.value=E)}}function Su(e,t){let n=e.activeElement;if(!n||n===e.body||n===e.documentElement)return null;let r={el:n,id:n.getAttribute&&n.getAttribute("id"),scrollTop:n.scrollTop,scrollLeft:n.scrollLeft};if(n.tagName==="INPUT"||n.tagName==="TEXTAREA"){try{r.selection=[n.selectionStart,n.selectionEnd,n.selectionDirection]}catch{}return r}let o=e.getSelection&&e.getSelection();if(o&&o.rangeCount){let i=o.getRangeAt(0);r.range={sc:i.startContainer,so:i.startOffset,ec:i.endContainer,eo:i.endOffset}}return r}function Tu(e,t,n,r,o,i){if(!t)return;let s=t.el;if(!s.isConnected&&t.id&&(s=e.getElementById(t.id)),!s||!s.isConnected)return;if(e.activeElement!==s)try{s.focus({preventScroll:!0})}catch{}try{s.scrollTop=t.scrollTop,s.scrollLeft=t.scrollLeft}catch{}if(t.selection){try{s.setSelectionRange&&!s.selectionEnd&&t.selection[1]!=null&&s.setSelectionRange(t.selection[0],t.selection[1],t.selection[2]||"none")}catch{}return}if(!t.range)return;let l=(d,b)=>{let f=n.get(d);if(Array.isArray(f)){let u=f.find(A=>b>=A.from&&b<A.to)||f.find(A=>b===A.to)||f[f.length-1],m=i.get(u.merged);if(!m||!m.isConnected)return null;let p=r.get(u.merged),v=p&&p.flat?p.flat(u.flatStart+b):b;return[m,Math.max(0,Math.min(v,m.nodeValue.length))]}if(f){let u=(o.get(f.merged)||[d])[0];if(!u.isConnected)return null;let m=r.get(f.merged),p=f.shift+b,v=m?m(p):p;return[u,Math.max(0,Math.min(v,u.nodeValue.length))]}return d.isConnected?[d,Math.min(b,d.nodeType===3?d.nodeValue.length:d.childNodes.length)]:null},a=l(t.range.sc,t.range.so),h=l(t.range.ec,t.range.eo);if(!(!a||!h))try{let d=e.createRange();d.setStart(a[0],a[1]),d.setEnd(h[0],h[1]);let b=e.getSelection();b.removeAllRanges(),b.addRange(d)}catch{}}var jm=Symbol("hyper-morph-duplicate-key");var Eu='[editor-ui],[clay~="editor-ui"],[save-ignore],[snapshot-remove],[no-snapshot],[no-save],[save-remove],[freeze],[save-freeze],[clay~="no-save"],[clay~="no-snapshot"],[clay~="freeze"]',_u='[editor-ui],[clay~="editor-ui"],[no-undo],[clay~="no-undo"]',Cu='[no-undo]:not([editor-ui]):not([clay~="editor-ui"]),[clay~="no-undo"]:not([editor-ui]):not([clay~="editor-ui"])';function Ou(e){if(e.tagName!=="LINK"&&e.tagName!=="SCRIPT")return!1;let t=e.getAttribute("src")||e.getAttribute("href")||"";return/^(chrome|moz|safari-web)-extension:/.test(t)}function Nu(e,t,n,r){if(t==null)return;if(typeof t=="string")return t;let o=t;if(o.nodeType===9){let i=e.getAttribute("id");o=i&&o.getElementById(i)||(e.tagName==="BODY"?o.body:e.tagName==="HTML"?o.documentElement:o.body&&o.body.firstElementChild)}if((!o||o.nodeType!==1||o.tagName!==e.tagName)&&(o=Ru(e,t,r)),!!o)return n?Array.from(o.childNodes):o}function Ru(e,t,n){let r=t.nodeType===9?t.documentElement:t;if(!r||r.nodeType!==1)return null;let o=new Map,i=[r,...r.querySelectorAll("script")];for(let a of i){let h=Xn(a,n);h&&!o.has(h.key)&&o.set(h.key,a.textContent)}if(!o.size)return null;let s=e.cloneNode(!0),l=!1;for(let a of[s,...s.querySelectorAll("script")]){let h=Xn(a,n);h&&o.has(h.key)&&(a.textContent=o.get(h.key),l=!0)}return l?s:null}function Js(e,t){if(typeof e=="string"||e.nodeType===9)return e;if(e.nodeType===1&&e===e.ownerDocument.documentElement)return e.ownerDocument;let n=t.implementation.createHTMLDocument(""),r=e.nodeType===1&&e.tagName==="HTML"?e:null;if(r)return n.replaceChild(n.adoptNode(r),n.documentElement),n;let o=e.nodeType===11?Array.from(e.childNodes):e.nodeType?[e]:Array.from(e);for(let i of o)n.body.appendChild(n.adoptNode(i));return n}function Tn(e,t,n={}){let r=n||{};if(!r.head?.block)return Zs(e,t,r);try{return Zs(e,t,r)}catch(o){return Promise.reject(o)}}function Zs(e,t,n){let r=n.policy||"sync",o=r==="raw"?void 0:(a,h)=>Ou(a)||(r==="history"?!(h&&a.matches(Cu))&&a.matches(_u):a.matches(Eu)),i=n.callbacks||{},s={ignore:o,hooks:i,protectFocusedValue:n.ignoreActiveValue===!0?"subtree":!1,restoreFocus:n.restoreFocus!==!1,formState:n.formStateSync||"attribute",scripts:{execute:n.scripts?.handle!==!1,merge:n.scripts?.merge!==!1,mergeTags:n.scripts?.mergeTags||[]},head:{awaitLoads:!!n.head?.block,preserve:n.head?.shouldPreserve||(()=>!1)}};if(typeof n.key=="function"&&(s.identity={base:n.key,local:n.key,remote:n.key}),e&&e.nodeType===9)return Nr(Object.assign({},s,{live:e,base:n.scripts?.mergeBase||null,remote:Js(t,e)}));if(e.tagName==="HTML"&&e.parentNode&&e.parentNode.nodeType===9){let a=Object.assign({},s,{live:e.ownerDocument,base:n.scripts?.mergeBase||null,remote:Js(t,e.ownerDocument)});return Nr(a)}n.morphStyle==="innerHTML"&&(s.children=!0);let l=Nu(e,n.scripts?.mergeBase,!!s.children,s.scripts.mergeTags);return l!==void 0&&(s.base=l),xi(e,t,s)}var Mu=new Set(["live","base","remote","local","identity","ignore","remoteWins","ignoreAttribute","conflicts","protectFocusedValue","restoreFocus","head","scripts","formState","children","hooks","beforeApply"]),un=()=>{};function Rr(e,t=[]){if(!e||typeof e!="object")throw new TypeError("options object required");for(let s of Object.keys(e))if(!Mu.has(s))throw new TypeError(`unknown option "${s}"`);let n=Object.assign({beforeNodeAdded:un,afterNodeAdded:un,beforeNodeRemoved:un,afterNodeRemoved:un,beforeNodeMorphed:un,afterNodeMorphed:un,beforeAttributeUpdated:un},e.hooks||{}),r=e.conflicts||"remote";if(!["remote","local","both"].includes(r))throw new TypeError("conflicts must be remote, local or both");let o=e.formState||"attribute";if(!["attribute","property"].includes(o))throw new TypeError("formState must be attribute or property");let i=e.protectFocusedValue;if(i!==void 0&&typeof i!="boolean"&&i!=="subtree")throw new TypeError('protectFocusedValue must be a boolean or "subtree"');return{ignored:ni(e.ignore,t),remoteWins:ni(e.remoteWins,t),ignoreAttribute:typeof e.ignoreAttribute=="function"?e.ignoreAttribute:()=>!1,conflicts:r,protectFocusedValue:i===void 0?!0:i,restoreFocus:e.restoreFocus!==!1,head:Object.assign({awaitLoads:!1,preserve:()=>!1},e.head||{}),scripts:Object.assign({execute:!0,merge:!0,mergeTags:[]},e.scripts||{}),formState:o,hooks:n,children:!!e.children,beforeApply:typeof e.beforeApply=="function"?e.beforeApply:null}}function Zn(e){if(typeof e=="function")return e;if(e&&typeof e=="object"&&e.map){if(typeof e.first=="function")return e.first;if(typeof e.then=="function")return e.then}return In}function Qn(e,t){if(typeof e=="function")return e;if(e&&typeof e=="object"&&e.map){let n=ri(t,e.map),r=typeof e.then=="function"?e.then:In;if(typeof e.first=="function"){let o=e.first;return i=>o(i)||n.get(i)||r(i)}return o=>n.get(o)||r(o)}return In}function Lu(e,t,n,r={}){let o=b=>b&&b.nodeType===9?b.documentElement:b,i=o(t),s=o(n),l=o(e)||i,a=Object.assign({},r);delete a.live,delete a.base,delete a.remote;let h=Rr(a,[l,i,s].filter(Boolean)),d=r.identity||{};return yi(l,i,s,{identity:{base:Qn(d.base,l),local:Qn(d.local,i),remote:Qn(d.remote,s)},authored:{base:Zn(d.base),local:Zn(d.local),remote:Zn(d.remote)},skipUnchanged:h.hooks.beforeNodeMorphed===un&&h.hooks.afterNodeMorphed===un,ignored:h.ignored,remoteWins:h.remoteWins,ignoreAttribute:h.ignoreAttribute,conflicts:h.conflicts,mergeTags:h.scripts.merge===!1?null:h.scripts.mergeTags,baseURI:i.ownerDocument&&i.ownerDocument.baseURI||"about:blank",localIsBase:!e||e===t,childrenOnly:h.children})}function vi({liveRoot:e,baseRoot:t,localRoot:n,remoteRoot:r,toLive:o,options:i,identity:s,childrenOnly:l,isDocument:a}){let h=Rr(i,[e,t,n,r].filter(Boolean));if(h.ignored(e))return{report:wi(),loads:[]};let d=e.ownerDocument,b=h.scripts.execute?qs(e,h.ignored,d.baseURI):null,f=yi(t||n,n,r,{identity:{base:Qn(s.base,t||n),local:Qn(s.local,n),remote:Qn(s.remote,r)},authored:{base:Zn(s.base),local:Zn(s.local),remote:Zn(s.remote)},ignored:h.ignored,remoteWins:h.remoteWins,ignoreAttribute:h.ignoreAttribute,conflicts:h.conflicts,mergeTags:h.scripts.merge===!1?null:h.scripts.mergeTags,baseURI:d.baseURI,localIsBase:!t,childrenOnly:l,skipUnchanged:h.hooks.beforeNodeMorphed===un&&h.hooks.afterNodeMorphed===un});h.beforeApply&&h.beforeApply(f.doc);let u=globalThis.__hyperMorphProfile,m=u?performance.now():0,p=Xs(e,f.root,f,{toLive:o,ignored:h.ignored,ignoreAttribute:h.ignoreAttribute,formState:h.formState,protectFocusedValue:h.protectFocusedValue,restoreFocus:h.restoreFocus,preserve:h.head.preserve,hooks:h.hooks,childrenOnly:l});u&&(u.apply=(u.apply||0)+(performance.now()-m));let v=[];if(h.head.awaitLoads)for(let L of p.applied){if(L.kind!=="insert"||L.node.nodeType!==1)continue;let H=L.node;H.tagName==="LINK"&&/\bstylesheet\b/i.test(H.getAttribute("rel")||"")&&H.getAttribute("href")&&H.closest("head")&&v.push(new Promise(te=>{H.addEventListener("load",()=>te()),H.addEventListener("error",()=>te())}))}if(b){let L=Bs(e,b,{ignored:h.ignored,skip:p.mergedScriptsLive,baseURI:d.baseURI,beforeNodeAdded:h.hooks.beforeNodeAdded,afterNodeAdded:h.hooks.afterNodeAdded});v.push(...L.loads)}let A=L=>L&&p.liveOf&&p.liveOf.get(L)||null;return{report:{applied:p.applied,decisions:f.decisions.map(L=>Object.assign({},L,{node:L.node?A(L.node):null,el:L.el?A(L.el):null,applied:!!(L.node?A(L.node):L.el&&A(L.el))})),conflicts:f.conflicts.map(L=>Object.assign({},L,{node:L.node?A(L.node):L.node,el:L.el?A(L.el):L.el})),localDiverged:f.localDiverged,identities:p.identities,moved:p.moved,replaced:p.replaced},loads:v}}var Qs=new WeakMap;function wi(){return{applied:[],decisions:[],conflicts:[],localDiverged:!1,identities:[],moved:[],replaced:[]}}function Nr(e){let t=e||{},n=t.live;if(!n||n.nodeType!==9)throw new TypeError("live must be a Document");let r=Qs.get(n);r||(r=ti(n),Qs.set(n,r));let o=r("remote",t.remote),i=typeof t.base=="string"&&t.base===""?null:t.base,s=i?r("base",i):null,l=t.local?t.local.root:n.documentElement,a=t.local?t.local.toLive:b=>b;As(n,o);let{report:h,loads:d}=vi({liveRoot:n.documentElement,baseRoot:s?s.documentElement:null,localRoot:l,remoteRoot:o.documentElement,toLive:a,options:t,identity:t.identity||{},childrenOnly:!1,isDocument:!0});return Promise.all(d).then(()=>h)}function Iu(e,t,n={}){return Nr(Object.assign({},n,{live:e,base:null,remote:t}))}function el(e,t){if(e==null)return{root:t.createElement("template"),first:null};if(typeof e=="string"){let r=/^\s*(?:<!--[\s\S]*?-->\s*)*(?:<!doctype[^>]*>\s*)?<(html|body)[\s>]/i.exec(e);if(r){let i=io(e,t),s=r[1].toLowerCase()==="html"?i.documentElement:i.body;return{root:s,first:s}}let o=t.createElement("template");return o.innerHTML=e,{root:o,first:o.content.firstElementChild}}if(e.nodeType===9)return{root:e.documentElement,first:e.documentElement};if(e.nodeType===1){let r=t.createElement("template"),o=e.isConnected;return r.content.appendChild(o?t.importNode(e,!0):e),{root:r,first:e}}if(e.nodeType===11){let r=t.createElement("template");return r.content.appendChild(e),{root:r,first:r.content.firstElementChild}}let n=t.createElement("template");for(let r of Array.from(e))n.content.appendChild(r.parentNode?t.importNode(r,!0):r);return{root:n,first:n.content.firstElementChild}}function xi(e,t,n={}){if(!e||e.nodeType!==1)throw new TypeError("oldEl must be an Element");let r=e.ownerDocument,{base:o,...i}=n,s=!!i.children;if(Rr(i,[e]).ignored(e))return Promise.resolve(wi());let l=el(t,r),a=o!=null?el(o,r):null,h,d=null;if(s)h=l.root,d=a?a.root:null;else{if(h=l.first,d=a?a.first:null,!h){let u=Rr(i);return u.hooks.beforeNodeRemoved(e)!==!1&&(e.remove(),u.hooks.afterNodeRemoved(e)),Promise.resolve({applied:[{kind:"remove",node:e,parent:null}],decisions:[],conflicts:[],localDiverged:!1,identities:[],moved:[],replaced:[e]})}if(h.tagName!==e.tagName){let u=Rr(i,[e,h]);if(u.hooks.beforeNodeMorphed(e,h)===!1)return Promise.resolve(wi());let m=vi({liveRoot:e,baseRoot:d&&d.tagName===e.tagName?d:null,localRoot:e,remoteRoot:h,toLive:v=>v,options:i,identity:i.identity||{},childrenOnly:!0,isDocument:!1}),p=Kt(h)?Cr(h,r):r.importNode(h,!1);if(!Kt(p))for(;e.firstChild;)p.appendChild(e.firstChild);return u.hooks.beforeNodeAdded(p)===!1||u.hooks.beforeNodeRemoved(e)===!1?Promise.resolve(m.report):(e.replaceWith(p),u.hooks.afterNodeRemoved(e),u.hooks.afterNodeAdded(p),u.hooks.afterNodeMorphed(e,h),m.report.replaced.push(p),m.report.applied.push({kind:"insert",node:p,parent:p.parentNode},{kind:"remove",node:e,parent:p.parentNode}),Promise.all(m.loads).then(()=>m.report))}}let{report:b,loads:f}=vi({liveRoot:e,baseRoot:d,localRoot:e,remoteRoot:h,toLive:u=>u,options:i,identity:i.identity||{},childrenOnly:s,isDocument:!1});return Promise.all(f).then(()=>b)}var Ai={mergeDocument:Nr,morphDocument:Iu,morphElement:xi,merge3:Lu,morph:Tn};var fo=["textContent","innerText","innerHTML","outerHTML","value","checked","selected","disabled","readOnly","type","tagName","nodeName","nodeType","nodeValue","childElementCount","id","className","classList","baseURI","offsetWidth","offsetHeight","clientWidth","clientHeight","scrollWidth","scrollHeight","dataset","currentSrc","duration","paused","title","documentURI","contentType"],Si=new Set(fo),tl=new Set(["textContent","innerText","innerHTML","value","checked","selected","disabled","readOnly","type","id","className","title"]),Mr=new Set(["tagName","nodeName","nodeType","nodeValue","childElementCount","classList","baseURI","documentURI","contentType","offsetWidth","offsetHeight","clientWidth","clientHeight","scrollWidth","scrollHeight","currentSrc","duration","paused","dataset"]);var mo={};ei(mo,{EmptyListInsert:()=>Ir,MAX_RULE_DEPTH:()=>nr,MaxRuleDepthExceeded:()=>Pn,NoRulesTag:()=>Ti,RuleTargetReadOnly:()=>jr,RulesParseError:()=>er,ShapeMismatch:()=>Lr,UnknownRulesVersion:()=>tr,WriteRefused:()=>ho,WriteRejected:()=>Ei});var er=class extends Error{constructor(t,n){super(t),this.name="RulesParseError",this.cause=n}},tr=class extends Error{constructor(t){super(`unknown rules version: ${t}. Library supports "1".`),this.name="UnknownRulesVersion",this.version=t}},nr=20,Pn=class extends Error{constructor(t){super(`rule depth exceeded ${nr} at path: ${t.join(".")}`),this.name="MaxRuleDepthExceeded",this.path=t}},Lr=class extends Error{constructor(t){super(`shape mismatch: ${t.length} field(s) failed validation`),this.name="ShapeMismatch",this.mismatches=t}},Ir=class extends Error{constructor(t){super(`cannot add items to empty list at "${t.join(".")}" \u2014 no sibling to clone as template. Seed the list with a hidden item first.`),this.name="EmptyListInsert",this.path=t}},jr=class extends Error{constructor(t){super(`cannot write to read-only DOM property "${t}"`),this.name="RuleTargetReadOnly",this.target=t}},ho=class extends Error{constructor(t){super(`write refused: ${t.length} write(s) broke the content-only policy`),this.name="WriteRefused",this.refusals=t}},Ti=class extends Error{constructor(t){super(`no <script data-rules-name~="${t}"> rules tag in this document`),this.name="NoRulesTag",this.token=t}},Ei=class extends Error{constructor(t,n){super(`write rejected: ${t.length} unknown key(s), ${n.length} rule(s) with no matching element`),this.name="WriteRejected",this.unknownKeys=t,this.unmatched=n}};function En(e,t,n,r={}){if(Object.prototype.hasOwnProperty.call(r,"exclude")&&e.semanticExclude===!1)throw new Error("This adapter does not support semantic exclude queries; omit exclude or use the DOM adapter.");return _i(e,t,n,{depth:0,path:[]},r)}function _i(e,t,n,r,o){if(r.depth>nr)throw new Pn(r.path);if(typeof n=="string")return qu(e,t,n,r,o);if(Array.isArray(n)){let[i,s]=n,l=e.find(t,i,o);return rl(o,r,l),l.map((a,h)=>_i(e,a,s,{depth:r.depth+1,path:[...r.path,h]},o))}if(typeof n=="object"&&n!==null){let i={};for(let[s,l]of Object.entries(n))i[s]=_i(e,t,l,{depth:r.depth+1,path:[...r.path,s]},o);return i}return null}function qu(e,t,n,r,o){if(n.endsWith("[]")){let l=n.slice(0,-2),a=e.find(t,l,o);return rl(o,r,a),a.map(h=>e.text(h))}if(n.startsWith("@"))return nl(e,t,n.slice(1));let i=St(n);if(i!==-1){let l=n.slice(0,i),a=n.slice(i+1),h=l?e.find(t,l,o):[t];return h.length===0?null:nl(e,h[0],a)}if(n===".")return e.text(t);let s=e.find(t,n,o);return s.length===0?null:e.text(s[0])}function rl(e,t,n){if(typeof e.onRowsRead=="function")try{e.onRowsRead(t.path.slice(),n)}catch(r){console.warn(`[hyper-html-api] onRowsRead threw at "${t.path.join(".")||"(root)"}"`,r)}}function nl(e,t,n){if(Si.has(n)){let o=e.prop(t,n);return o==null?null:String(o)}let r=e.attr(t,n);return r||null}var ol=Object.freeze({data:Object.freeze({tokens:["no-data"],bundles:["editor-ui"]}),save:Object.freeze({tokens:["no-save"],bundles:["editor-ui"]}),snapshot:Object.freeze({tokens:["no-snapshot"],bundles:["editor-ui"]}),watch:Object.freeze({tokens:["no-watch"],bundles:["editor-ui"]}),undo:Object.freeze({tokens:["no-undo"],bundles:["editor-ui"]}),history:Object.freeze({tokens:[],bundles:["editor-ui"]})}),Bu=Object.freeze({"editor-ui":Object.freeze(["no-data","no-save","no-snapshot","no-watch","no-undo"])}),il=Object.freeze(["no-save","no-snapshot","no-trigger-autosave","no-dirty","no-watch","no-undo","no-data","freeze","editor-ui"]);function Ci(e,t){if(!e||e.nodeType!==1)return!1;let n=e.getAttribute?.("clay");return!!(n&&n.split(/\s+/).includes(t)||e.hasAttribute?.(t))}function Hu(e,t){if(Ci(e,t))return!0;for(let[n,r]of Object.entries(Bu))if(r.includes(t)&&Ci(e,n))return!0;return!1}function Dr(e){let t=ol[e];if(!t)throw new Error(`Unknown region capability: ${e}`);return[...t.tokens,...t.bundles].flatMap(n=>[`[clay~="${n}"]`,`[${n}]`]).join(", ")}function $u(e,t){let n=e&&e.nodeType===1?e:e?.parentElement;for(;n&&n.nodeType===1;){let r=ol[t];if(!r)throw new Error(`Unknown region capability: ${t}`);if(r.tokens.some(o=>Hu(n,o))||r.bundles.some(o=>Ci(n,o)))return n;n=n.parentElement}return null}function sl(e,t){return!!$u(e,t)}var Uu=/:(?:focus(?:-within|-visible)?|hover|active|visited|defined)\b/i;function ll(e,t){if(!/^(INPUT|TEXTAREA|SELECT|OPTION)$/.test(e.tagName||""))return;let n=(e.getAttribute?.("type")||"").toLowerCase();if("value"in e&&"value"in t&&e.tagName!=="OPTION"&&n!=="checkbox"&&n!=="radio"&&(t.value=e.value),"checked"in e&&"checked"in t&&(t.checked=e.checked),"selected"in e&&"selected"in t&&(t.selected=e.selected),e.tagName==="SELECT")for(let r=0;r<e.options.length;r++)t.options[r].selected=e.options[r].selected;"indeterminate"in e&&"indeterminate"in t&&(t.indeterminate=e.indeterminate)}function al(e,t,n,r){if(r)return!!e.closest?.(t);let o=e;for(;o?.nodeType===1;){if(o.matches(t))return!0;if(o===n)break;o=o.parentElement}return!1}function cl(e,t,n,r,o,i,s,l){if(e.nodeType===1&&((s?sl(e,n):al(e,r,i,!1))||o&&al(e,o,i,s)))return null;let a=t.importNode(e,!1);l.cloneToLive.set(a,e),l.liveToClone.set(e,a);let h=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,d=a.nodeType===1&&a.tagName==="TEMPLATE"?a.content:a;h!==e&&(l.cloneToLive.set(d,h),l.liveToClone.set(h,d));for(let b of h.childNodes||[]){let f=cl(b,t,n,r,o,i,s,l);f&&(d.appendChild(f),b.nodeType===1&&ll(b,f))}return e.nodeType===1&&ll(e,a),a}function Pr(e,{capability:t="data",exclude:n=null,inherit:r=!0}={}){if(!e)throw new TypeError("createContentView requires a DOM context");let o=e.nodeType===9?e:e.ownerDocument;if(!o?.implementation?.createHTMLDocument)throw new TypeError("createContentView requires an HTML DOM implementation");let i=o.implementation.createHTMLDocument(""),s=new WeakMap,l=new WeakMap,a=e.nodeType===9?e.documentElement:e;n&&i.documentElement.matches(n);let h=Dr(t),d=cl(a,i,t,h,n,a,r,{cloneToLive:s,liveToClone:l});e.nodeType===9&&d&&(i.replaceChild(d,i.documentElement),l.set(e,i),s.set(i,e));let b=f=>{if(Uu.test(f))throw new Error(`Filtered content queries do not support stateful selector: ${f}`)};return{root:d,document:i,capability:t,selector:Dr(t),cloneToLive:s,liveToClone:l,original(f){return s.get(f)||null},cloneOf(f){return l.get(f)||null},query(f,u=d){return b(f),Array.from(u.querySelectorAll(f),m=>s.get(m)||m)},text(f=d){return(f===d?d:l.get(f))?.textContent||""},html(f=d){return(f===d?d:l.get(f))?.innerHTML??""},clone(f=d){let u=f===d?d:l.get(f);return u?i.importNode(u,!0):null}}}function ul(e){return e&&e.nodeType===1&&e.tagName==="SCRIPT"&&e.hasAttribute&&e.hasAttribute("data-rules-name")}function zu(e){return e?(e.nodeType===9||e.nodeType===11,e):null}var Lt={semanticExclude:!0,find(e,t,n={}){let r=zu(e);if(!r||!r.querySelectorAll)return[];let o=Array.from(r.querySelectorAll(t));n.includeRulesTag||(o=o.filter(l=>!ul(l)));let i=[];n.skip&&i.push(n.skip);let s=n.templateAttr===null?null:n.templateAttr||"cms-template";if(s&&i.push("["+s+"]"),i.length){let l=i.join(", ");o=o.filter(a=>!a.closest||!a.closest(l))}return o},parent(e){return e?e.parentElement:null},children(e){return e?Array.from(e.children):[]},text(e,t){if(t===void 0)return(e.textContent||"").trim();e.textContent=t},attr(e,t,n){if(n===void 0)return e.hasAttribute&&e.hasAttribute(t)?e.getAttribute(t):null;e.setAttribute(t,n)},removeAttr(e,t){e&&e.removeAttribute&&e.removeAttribute(t)},prop(e,t,n){if(n===void 0){let r=e?e[t]:void 0;return r!==void 0?r:null}e[t]=n},clone(e){return e.cloneNode(!0)},insertAt(e,t,n){let r=e.children[n]||null;e.insertBefore(t,r)},remove(e){e&&e.parentNode&&e.parentNode.removeChild(e)},replaceWith(e,t){if(!e||!e.parentNode)throw new Error("dom.replaceWith: node has no parent");let r=e.ownerDocument.createElement("template");r.innerHTML=t;let o=r.content.firstElementChild;if(!o)throw new Error("dom.replaceWith: html did not parse to an element");return e.parentNode.replaceChild(o,e),o},stripIds(e){let t=0;return e.id&&(e.removeAttribute("id"),t++),(e.querySelectorAll?e.querySelectorAll("[id]"):[]).forEach(r=>{r.removeAttribute("id"),t++}),t},sameNode(e,t){return e===t}};function kn(e,t={}){if(t.exclude===null)return Lt;let n=[Dr("data"),t.exclude].filter(Boolean).join(", "),r=e.nodeType===9?e:e.ownerDocument||e,o=e.nodeType===9?e.documentElement:e;if(!t._write&&!o?.matches?.(n)&&!o?.querySelector?.(n)&&!r?.querySelector?.(n))return Lt;let i=e.nodeType===9||!e.isConnected?e:e.ownerDocument,s=e.nodeType===9?e:e.ownerDocument,l=null,a=()=>l||(l=Pr(i,{capability:"data",exclude:t.exclude||null})),h=m=>{let p=a();return m===e?p.cloneOf(e):p.cloneOf(m)||m},d=m=>l?.original(m)||m,b=(m,p)=>{a().liveToClone.set(m,p),a().cloneToLive.set(p,m);let v=m.childNodes||[],A=p.childNodes||[];for(let M=0;M<Math.min(v.length,A.length);M++)b(v[M],A[M])},f=(m,p,v,A)=>{let M=Array.from(m.childNodes).filter(re=>l.cloneOf(re)),H=M[0];for(;H&&M.includes(H);)H=H.nextSibling;for(let re of M)re.remove();if(v==="innerHTML"){let re=s.createElement("template");re.innerHTML=A;for(let K of Array.from(re.content.childNodes))m.insertBefore(K,H||null)}else m.insertBefore(s.createTextNode(A),H||null);let B=Pr(m,{capability:"data",exclude:t.exclude||null});p.replaceChildren(...Array.from(B.root?.childNodes||[]));let te=re=>{let K=B.original(re);K&&(l.liveToClone.set(K,re),l.cloneToLive.set(re,K));for(let W of Array.from(re.childNodes||[]))te(W)};for(let re of Array.from(p.childNodes))te(re)},u={...Lt,find(m,p,v={}){let A=h(m);if(!A?.querySelectorAll)return[];let M=a().query(p,A);v.includeRulesTag||(M=M.filter(B=>!ul(B)));let L=[];v.skip&&L.push(v.skip);let H=v.templateAttr===null?null:v.templateAttr||"cms-template";if(H&&L.push(`[${H}]`),L.length){let B=L.join(", ");M=M.filter(te=>!te.closest?.(B))}return M},parent(m){let p=h(m)?.parentElement;return p?d(p):null},children(m){return Array.from(h(m)?.children||[],d)},text(m,p){if(p===void 0){let M=d(m);return!M?.matches?.(n)&&!M?.querySelector?.(n)?Lt.text(M):(h(m)?.textContent||"").trim()}let v=d(m);if(!v?.matches?.(n)&&!v?.querySelector?.(n)&&!l){Lt.text(v,p);return}let A=a().cloneOf(v);A?f(v,A,"textContent",p):Lt.text(v,p)},attr(m,p,v){let A=d(m);if(v===void 0)return Lt.attr(A,p);Lt.attr(A,p,v);let M=l?.cloneOf(A);M&&(Lt.attr(M,p,v),Pr(A,{capability:"data",exclude:t.exclude||null}).root===null&&(M.remove(),l.liveToClone.delete(A),l.cloneToLive.delete(M)))},removeAttr(m,p){let v=d(m);Lt.removeAttr(v,p);let A=l?.cloneOf(v);A&&Lt.removeAttr(A,p)},prop(m,p,v){let A=d(m);if(v===void 0)return p==="innerHTML"||p==="outerHTML"||p==="textContent"||p==="innerText"?Lt.prop(h(A),p):Lt.prop(A,p);let M=p==="innerHTML"||p==="textContent"||p==="innerText",L=M?a().cloneOf(A):l?.cloneOf(A);L&&M?f(A,L,p,v):(Lt.prop(A,p,v),L&&Lt.prop(L,p,v))},clone(m){let p=h(m);return p===m?Lt.clone(m):s.importNode(p,!0)},insertAt(m,p,v){let A=d(m),L=u.children(A)[v]||(()=>{for(let te=A.children.length-1;te>=0;te--){let re=A.children[te];if(a().cloneOf(re))return re.nextElementSibling}return A.firstElementChild})(),H=d(p);A.insertBefore(H,L||null);let B=a().cloneOf(A);if(B){let te=a().cloneOf(H);te||(te=s.importNode(H,!0),b(H,te));let re=Array.from(B.children);B.insertBefore(te,re[v]||null)}},remove(m){let p=d(m),v=a().cloneOf(p);Lt.remove(p),v&&Lt.remove(v)},replaceWith(m,p){let v=d(m),A=a().cloneOf(v),M=Lt.replaceWith(v,p);if(A){let L=Pr(M,{capability:"data",exclude:t.exclude||null});if(!L.root)A.remove();else{A.replaceWith(L.root);let H=B=>{let te=L.original(B);te&&(l.liveToClone.set(te,B),l.cloneToLive.set(B,te));for(let re of Array.from(B.childNodes||[]))H(re)};H(L.root)}}return M}};return u}var rr=Lt;function Oi(e){try{return JSON.parse(e)}catch(t){throw new er(`Invalid strict JSON: ${t.message}`,t)}}function or(e){try{return JSON.parse(e)}catch{}let t={BRACE_OPEN:"{",BRACE_CLOSE:"}",BRACKET_OPEN:"[",BRACKET_CLOSE:"]",COLON:":",COMMA:",",STRING:"STRING",SELECTOR:"SELECTOR",IDENTIFIER:"IDENTIFIER",NUMBER:"NUMBER",BOOLEAN:"BOOLEAN"};function n(o){let i=[],s=0;for(;s<o.length;){let l=o[s];if(/\s/.test(l)){s++;continue}if("{}".includes(l)){i.push({type:l,value:l}),s++;continue}if(l==="["){let b=!1,f=s+1;for(;f<o.length&&/\s/.test(o[f]);)f++;if(f<o.length&&/[a-zA-Z_]/.test(o[f])&&(b=!0),!b){i.push({type:l,value:l}),s++;continue}}if(l==="]"){i.push({type:l,value:l}),s++;continue}if(l===":"){i.push({type:t.COLON,value:l}),s++;continue}if(l===","){i.push({type:t.COMMA,value:l}),s++;continue}if(l==='"'||l==="'"){let b=l,f=s+1;for(;f<o.length&&o[f]!==b;)o[f]==="\\"&&f++,f++;i.push({type:t.STRING,value:o.substring(s+1,f),quoted:!0,sourceQuote:b}),s=f+1;continue}let a=s,h;for(;a<o.length&&!/[{},]/.test(o[a]);)if(o[a]===":"){let b=[":first",":last",":nth-child",":nth-of-type",":first-child",":last-child",":first-of-type",":last-of-type",":only-child",":only-of-type",":hover",":focus",":active",":visited",":disabled",":enabled",":checked",":empty",":root",":target",":not",":before",":after",":nth-last-child",":nth-last-of-type"],f=!1;for(let u of b){let m=u.substring(1);if(o.substring(a+1,a+1+m.length)===m){f=!0,a+=m.length;break}}if(!f)break}else if(o[a]==="["){for(a++;a<o.length&&o[a]!=="]";){if(o[a]==='"'||o[a]==="'"){let b=o[a];for(a++;a<o.length&&o[a]!==b;)o[a]==="\\"&&a++,a++}a++}a<o.length&&o[a]==="]"&&a++}else a++;h=o.substring(s,a);let d=t.IDENTIFIER;/^-?\d+(\.\d+)?$/.test(h)?d=t.NUMBER:h==="true"||h==="false"||h==="null"?d=t.BOOLEAN:/^[.#@\[]|[.#@\[]| /.test(h)&&(d=t.SELECTOR),i.push({type:d,value:h,quoted:!1}),s=a}return i}function r(o){let i="";for(let s=0;s<o.length;s++){let l=o[s];if("{}".includes(l.type)||"[]".includes(l.type)){i+=l.value;continue}if(l.type===t.COLON){i+=l.value;continue}if(l.type===t.COMMA){let a=o[s+1];if(a&&(a.type==="}"||a.type==="]"))continue;i+=l.value;continue}if(l.type===t.STRING&&l.quoted){let a=l.value;l.sourceQuote==="'"&&(a=a.replace(/\\'/g,"'"),a=a.replace(/(\\*)"/g,(h,d)=>d.length%2===0?d+'\\"':h)),i+=`"${a}"`;continue}if(l.type===t.NUMBER||l.type===t.BOOLEAN){i+=l.value;continue}if(l.type===t.SELECTOR||l.type===t.IDENTIFIER){i+=`"${l.value}"`;continue}i+=`"${l.value}"`}return i}try{let o=n(e),i=r(o);return JSON.parse(i)}catch(o){throw new er("Invalid extraction rules syntax: "+o.message,o)}}var dl="1",fl=/^[a-zA-Z0-9_-]+$/;function Fr(e,t,n){let r;if(n===void 0)r="script[data-rules-name]";else{if(typeof n!="string"||!fl.test(n))throw new Error(`hyper-html-api: invalid rules token ${JSON.stringify(n)} (must match ${fl})`);r=`script[data-rules-name~="${n}"]`}let o=e.find(t,r,{includeRulesTag:!0});if(o.length===0)return null;n!==void 0&&o.length>1&&console.warn(`hyper-html-api: ${o.length} rules tags match data-rules-name~="${n}"; using the first.`);let i=o[0],s=e.attr(i,"data-rules-version");if(s!==dl)throw new tr(s);return{rules:or(e.text(i)),tagNode:i}}var Bp=new Function("url","return import(url)");function kl(e,t,n,r){let o=e.length,i=t.length,s=new Array(o).fill(-1);if(r){let v=new Set;for(let A=0;A<o;A++){let M=r[A];!(M>=0&&M<i)||v.has(M)||(s[A]=M,v.add(M))}}if(o===0||i===0)return s;let l=e.map(v=>gl(v,n)),a=t.map(v=>gl(v,n)),h=new Array(i).fill(!1);for(let v of s)v>=0&&(h[v]=!0);let d=new Map;a.forEach((v,A)=>{h[A]||d.set(v,d.has(v)?-1:A)});let b=new Map;l.forEach((v,A)=>{s[A]>=0||b.set(v,(b.get(v)||0)+1)}),l.forEach((v,A)=>{if(s[A]>=0||b.get(v)!==1)return;let M=d.get(v);M===void 0||M===-1||h[M]||(s[A]=M,h[M]=!0)});let f=[];for(let v=0;v<o;v++)s[v]<0&&f.push(v);let u=[];for(let v=0;v<i;v++)h[v]||u.push(v);if(f.length===0||u.length===0)return s;let m=o*i+1,p=(v,A)=>Wu(e[v],t[A],n)*m+Math.abs(v-A);for(let[v,A]of Ku(f,u,p))s[v]=A;return s}var yl=e=>typeof e=="object"&&e!==null;function gl(e,t){if(!yl(t))return e==null?" null":String(e);let n=Object.keys(t);return JSON.stringify(n.map(r=>{let o=JSON.stringify(e?.[r]);return o===void 0?" undef":o}))}function Wu(e,t,n){if(!yl(n))return e===t?0:1;let r=Object.keys(n);if(r.length===0)return 0;let o=0;for(let i of r){let s=JSON.stringify(e?.[i]),l=JSON.stringify(t?.[i]);s!==l&&o++}return o}function Ku(e,t,n){return e.length<=t.length?bl(e,t,n,!1):bl(t,e,(r,o)=>n(o,r),!0)}function bl(e,t,n,r){let o=e.length,i=t.length,s=[];for(let b=0;b<=o;b++)s.push(new Float64Array(i+1).fill(1/0));let l=[];for(let b=0;b<=o;b++)l.push(new Uint8Array(i+1));for(let b=0;b<=i;b++)s[o][b]=0;for(let b=o-1;b>=0;b--)for(let f=i-1;f>=0;f--){let u=n(e[b],t[f])+s[b+1][f+1],m=s[b][f+1];u<=m?(s[b][f]=u,l[b][f]=1):s[b][f]=m}let a=[],h=0,d=0;for(;h<o&&d<i;)l[h][d]&&(a.push(r?[t[d],e[h]]:[e[h],t[d]]),h++),d++;return a}function Ri(e,t,n,r,o,i,s,l={}){let a=e.find(t,n,l);if(o.length===0){a.forEach(B=>e.remove(B)),Ni(l,"onRowsApplied",i.path,[]);return}let h=o.length>a.length,d=a[0]||null;if(h&&!d&&(d=Ju(e,t,n,l),!d))throw new Ir(i.path);let b=a.map(B=>Xu(e,B,r,l)),f=null;if(h&&d){f=e.clone(d),l.templateAttr&&e.removeAttr(f,l.templateAttr);let B=e.stripIds(f);B>0&&console.warn(`[hyper-html-api] stripped ${B} id attribute(s) from cloned template at "${i.path.join(".")||"(root)"}"`)}let u=kl(o,b,r,Gu(e,a,o,i,l)),m=a[0]||d,p=e.parent(m),v=a.length>0?xl(e,p,m):0,A=Zu(e,a),M=new Set,L=[],H=o.map((B,te)=>{let re=u[te];if(re>=0)return M.add(re),L.push(!1),a[re];L.push(!0);let K=e.clone(f);return e.stripIds(K),K});a.forEach((B,te)=>{M.has(te)||e.remove(B)}),A?H.forEach((B,te)=>{let re=v+te;e.children(p).findIndex(he=>e.sameNode(he,B))!==re&&e.insertAt(p,B,re)}):Qu(e,H,L,p,v),Yu(e,H,r,o,i,s,l),Ni(l,"onRowsApplied",i.path,H)}function Ni(e,t,n,r){if(typeof e[t]=="function")try{return e[t](n.slice(),r)}catch(o){console.warn(`[hyper-html-api] ${t} threw at "${n.join(".")||"(root)"}"`,o);return}}function Gu(e,t,n,r,o){let i=Ni(o,"identifyRows",r.path,n);if(!Array.isArray(i))return null;let s=new Array(n.length).fill(-1),l=new Set;for(let a=0;a<n.length;a++)if(i[a]){for(let h=0;h<t.length;h++)if(!(l.has(h)||!e.sameNode(t[h],i[a]))){s[a]=h,l.add(h);break}}return s}function Yu(e,t,n,r,o,i,s){t.forEach((l,a)=>{if(n===null){let h=r[a],d=h==null?"":String(h);e.text(l)!==d&&e.text(l,d)}else{let h=i(e,l,n,r[a],{depth:o.depth+1,path:[...o.path,a]},s);h&&h!==l&&(t[a]=h)}})}function Xu(e,t,n,r){return n===null?e.text(t):En(e,t,n,r.onRowsRead?{...r,onRowsRead:void 0}:r)}function xl(e,t,n){let r=e.children(t);for(let o=0;o<r.length;o++)if(e.sameNode(r[o],n))return o;return-1}function Ju(e,t,n,r){if(!r.templateAttr)return null;let o=t;for(;o;){let i=e.find(o,n,{includeRulesTag:!1,templateAttr:null});for(let s of i)if(e.attr(s,r.templateAttr)!=null)return s;o=e.parent(o)}return null}function Zu(e,t){if(t.length<=1)return!0;let n=e.parent(t[0]);if(!n)return!1;let r=e.children(n),o=[];for(let i of t){let s=r.findIndex(l=>e.sameNode(l,i));if(s===-1)return!1;o.push(s)}return o.sort((i,s)=>i-s),o[o.length-1]-o[0]===o.length-1}function Qu(e,t,n,r,o){let i=null,s=o;for(let l=0;l<t.length;l++){if(!n[l]){i=t[l];continue}let a=i?e.parent(i):r;if(!a)continue;let h=i?xl(e,a,i)+1:s++;e.insertAt(a,t[l],h),i=t[l]}}var vl=new Set(["checked","selected","disabled","readOnly","paused"]);function ir(e,t,n,r,o={}){if(Object.prototype.hasOwnProperty.call(o,"exclude")&&e.semanticExclude===!1)throw new Error("This adapter does not support semantic exclude queries; omit exclude or use the DOM adapter.");let i=[];if(Mi(n,r,[],i),i.length)throw new Lr(i);po(e,t,n,r,{depth:0,path:[]},o)}function po(e,t,n,r,o,i={}){if(o.depth>nr)throw new Pn(o.path);if(r===void 0)return t;if(typeof n=="string")return ef(e,t,n,r,o,i);if(Array.isArray(n)){let[s,l]=n;return Ri(e,t,s,l,r,o,po,i),t}if(typeof n=="object"&&n!==null){for(let[s,l]of Object.entries(n)){let a=po(e,t,l,r==null?r:r[s],{depth:o.depth+1,path:[...o.path,s]},i);a&&a!==t&&(t=a)}return t}return t}function ef(e,t,n,r,o,i){if(n.endsWith("[]")){let a=n.slice(0,-2);return Ri(e,t,a,null,r,o,po,i),t}if(n.startsWith("@"))return Al(e,t,n.slice(1),r);let s=St(n);if(s!==-1){let a=n.slice(0,s),h=n.slice(s+1),d=a?e.find(t,a,i):[t];return d.length===0||Al(e,d[0],h,r),t}if(n===".")return wl(e,t,r),t;let l=e.find(t,n,i);return l.length===0||wl(e,l[0],r),t}function wl(e,t,n){let r=n==null?"":String(n);e.text(t)!==r&&e.text(t,r)}function Al(e,t,n,r){if(Mr.has(n)){let i=e.prop(t,n);if(i===r||i!=null&&r!=null&&String(i)===String(r))return t;throw new jr(n)}if(n==="outerHTML"){let i=r==null?"":String(r);return e.replaceWith(t,i)}if(tl.has(n)){let i=tf(n,r);return e.prop(t,n)!==i&&e.prop(t,n,i),t}let o=r==null?"":String(r);return e.attr(t,n)!==o&&e.attr(t,n,o),t}function tf(e,t){return t==null?vl.has(e)?!1:"":vl.has(e)?t==="false"?!1:!!t:t}function Mi(e,t,n,r){if(t!==void 0){if(typeof e=="string"){if(e.endsWith("[]")){Array.isArray(t)?t.forEach((o,i)=>{typeof o=="object"&&o!==null&&r.push({path:Br([...n,i]),expected:"scalar",got:qr(o)})}):r.push({path:Br(n),expected:"array",got:qr(t)});return}t!==null&&typeof t=="object"&&r.push({path:Br(n),expected:"scalar",got:qr(t)});return}if(Array.isArray(e)){if(!Array.isArray(t)){r.push({path:Br(n),expected:"array",got:qr(t)});return}let o=e[1];t.forEach((i,s)=>Mi(o,i,[...n,s],r));return}if(typeof e=="object"&&e!==null){if(t===null||Array.isArray(t)||typeof t!="object"){r.push({path:Br(n),expected:"object",got:qr(t)});return}for(let[o,i]of Object.entries(e))Mi(i,t[o],[...n,o],r)}}}function qr(e){return e===null?"null":Array.isArray(e)?"array":typeof e}function Br(e){return e.join(".")}var mf=Object.freeze({refusedRuleForms:["innerHTML","outerHTML"],refusedTargets:["script","style","template","noscript","iframe","object","embed","xmp","plaintext","noembed","noframes","meta","link","base","animate","set","animatemotion","animatetransform"],refusedAttributes:["style","srcdoc","is","http-equiv","sandbox","allow","nonce","integrity","charset","htmlclaytoken","htmlclayid","data-rules-name","data-rules-version","clay","contenteditable",...il],refusedAttributePrefixes:["on"],urlAttributes:["href","src","srcset","action","formaction","poster","cite","data","ping","background","longdesc","usemap","xlink:href","manifest","codebase","icon"],refusedSchemes:["javascript","vbscript","data"]});function Li(e,t,n){if(n&&typeof n=="object")return{rules:n,tagNode:null};if(typeof n=="string"){let r=t&&t.ownerDocument?t.ownerDocument:t;return Fr(e,r,n)}return null}var Vt={extract:(e,t,n={})=>En(kn(e,n),e,t,n),apply:(e,t,n,r={})=>ir(kn(e,{...r,_write:!0}),e,t,n,r),findRulesIn:(e,t)=>Fr(rr,e,t),findRules:(e,t)=>Li(rr,e,t),bind:(e,t,n={})=>{let r=Li(rr,e,t);if(!r){let o=typeof t=="string"?`data-rules-name~="${t}"`:"the provided rules object";throw new Error(`hyper-html-api: could not resolve rules for ${o}`)}return{...r,get:()=>En(kn(e,n),e,r.rules,n),set:o=>ir(kn(e,{...n,_write:!0}),e,r.rules,o,n)}},parseStrict:Oi,parseRelaxed:or,ruleAttrIndex:St,splitRule:oo,errors:mo,DOM_PROPERTIES:fo};var ji={};ei(ji,{fromString:()=>yn,getRuleAtPath:()=>Fn,getValueAtPath:()=>bf,setAtPath:()=>Ii,toString:()=>gf});function gf(e){return e.map(String).join(".")}function yn(e){return e===""?[]:e.split(".").map(t=>/^\d+$/.test(t)?Number(t):t)}function Fn(e,t){let n=e;for(let r of t){if(n==null)return;if(typeof n=="string"){if(n.endsWith("[]")&&(typeof r=="number"||r==="*")){n=n.slice(0,-2);continue}return}if(Array.isArray(n)){if(typeof r!="number"&&r!=="*")return;n=n[1];continue}if(typeof n=="object"){if(typeof r=="number"||!(r in n))return;n=n[r];continue}return}return n}function bf(e,t){let n=e;for(let r of t){if(n==null)return;n=n[r]}return n}function Ii(e,t,n){if(t.length===0)return n;let[r,...o]=t;if(typeof r=="number"){let i=Array.isArray(e)?[...e]:[];return i[r]=Ii(i[r],o,n),i}return{...e&&typeof e=="object"?e:{},[r]:Ii((e||{})[r],o,n)}}function Hr(e){if(typeof e=="string")return e.endsWith("[]")?[]:"";if(Array.isArray(e))return[];if(typeof e=="object"&&e!==null){let t={};for(let[n,r]of Object.entries(e))t[n]=Hr(r);return t}return""}function go(e,t,{ignoreActiveValue:n=!0}={}){Ai.morph(e,t,{morphStyle:"innerHTML",ignoreActiveValue:n,restoreFocus:!0,formStateSync:"property",policy:"raw"})}var Tl=new WeakMap,Di=e=>e.map(String).join(".");function kf(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}function El(e,t){if(!e||!e.querySelector)return null;let n=e.querySelector(`[data-hcms-path="${kf(t)}"]`),r=n&&n.querySelector(".hcms-array-items");return r?Array.from(r.children).filter(o=>o.matches&&o.matches("[data-hcms-card], [data-hcms-array-item]")):null}function _l(e,t,n){let r=El(e,t);!r||r.length!==n.length||r.forEach((o,i)=>{n[i]&&Tl.set(o,n[i])})}function bo(){let e=new Map;return{hooks:{onRowsRead(t,n){e.set(Di(t),n)}},seed(t){for(let[n,r]of e)_l(t,n,r);e.clear()}}}function Cl(e){return{identifyRows(t,n){let r=El(e,Di(t));return!r||r.length!==n.length?null:r.map(o=>Tl.get(o)||null)},onRowsApplied(t,n){_l(e,Di(t),n)}}}var Ol={skip:"[data-hcms-shell]",templateAttr:"cms-template"},Pi="data-hcms-rollback-ui",yf=0;function Nl(e,t,n,r={}){return xf(e,t,n,r)}function xf(e,t,n,r){let{shellRoot:o,structural:i,structuralPath:s,formRoot:l}=r,a=l?{...Ol,...Cl(l)}:Ol;if(!i)try{return Vt.apply(e,t,n,a),{ok:!0}}catch(f){return{ok:!1,error:f}}let h=vf(e,t,s),d=h?Af(h):null,b=h?null:Tf(e,o);try{return Vt.apply(e,t,n,a),{ok:!0}}catch(f){return d?Sf(h,d):b&&Ef(e,o,b),{ok:!1,error:f}}}function vf(e,t,n){if(!n||!e)return null;let r=yn(n),o=[],i=t;for(let s of r){if(typeof i=="string"||i==null||Array.isArray(i))break;if(typeof i=="object"&&s in i){if(o.push(s),i=i[s],Array.isArray(i)||typeof i=="string"&&i.endsWith("[]"))break}else return null}return!Array.isArray(i)&&!(typeof i=="string"&&i.endsWith("[]"))?null:wf(e,t,o)}function wf(e,t,n){if(n.length===0)return null;let r=e,o=t;for(let i=0;i<n.length;i++){let s=n[i];if(!o||typeof o!="object"||Array.isArray(o))return null;let l=o[s];if(l==null)return null;if(i===n.length-1){if(Array.isArray(l)){let[a]=l;return r.querySelector?.(a)?.parentElement||null}if(typeof l=="string"&&l.endsWith("[]")){let a=l.slice(0,-2);return r.querySelector?.(a)?.parentElement||null}return null}o=l}return null}function Af(e){let t=[],n=[];for(let r of Array.from(e.childNodes))t.push(Fi(r,n));return{nodes:t,retained:n}}function Sf(e,t){let n=e.cloneNode(!1);for(let r of t.nodes)n.appendChild(r);Tn(e,Array.from(n.childNodes),Ml()),Rl(e,t.retained)}function Tf(e,t){let n=[],r=[];for(let o of Array.from(e.childNodes))o===t||t&&o.contains?.(t)||n.push(Fi(o,r));return{nodes:n,retained:r}}function Ef(e,t,n){let r=e.cloneNode(!1);for(let o of n.nodes)r.appendChild(o);Tn(e,Array.from(r.childNodes),Ml()),Rl(e,n.retained)}function Fi(e,t){let n=e.cloneNode(!1);if(e.nodeType===1&&e.matches('[editor-ui],[clay~="editor-ui"]')){let i=String(++yf);n.setAttribute(Pi,i),t.push({id:i,node:e})}let r=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,o=n.nodeType===1&&n.tagName==="TEMPLATE"?n.content:n;for(let i of Array.from(r.childNodes||[]))o.appendChild(Fi(i,t));return n}function Rl(e,t){for(let{id:n,node:r}of t){let o=e.querySelector(`[${Pi}="${n}"]`);o===r?r.removeAttribute(Pi):r.isConnected?o?.remove():o?.replaceWith(r)}}function Ml(){return{morphStyle:"innerHTML",policy:"raw",restoreFocus:!1,scripts:{handle:!1,merge:!1}}}function yo(e){return e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replace(/[-_]/g," ").replace(/\s+/g," ").trim().replace(/^./,t=>t.toUpperCase())}var _f='<div class="hcms-drag-handle mirk-sortable__grip" aria-hidden="true"><div class="mirk-sortable__dots"><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span></div></div>',qi='<svg class="hcms-x" viewBox="0 0 16 16" shape-rendering="crispEdges" aria-hidden="true"><path d="M4 4 L12 12 M12 4 L4 12" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="square"></path></svg>',jl={"@scalar":`
1
+ var hypercms=(()=>{var zs=Object.defineProperty;var ou=Object.getOwnPropertyDescriptor;var su=Object.getOwnPropertyNames;var iu=Object.prototype.hasOwnProperty;var Vs=(e,t)=>{for(var n in t)zs(e,n,{get:t[n],enumerable:!0})},lu=(e,t,n,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of su(t))!iu.call(e,o)&&o!==n&&zs(e,o,{get:()=>t[o],enumerable:!(r=ou(t,o))||r.enumerable});return e};var au=e=>lu(zs({},"__esModule",{value:!0}),e);var Bp={};Vs(Bp,{cms:()=>Dp,default:()=>Fp});function rn(e){let t=0,n=null,r=-1;for(let o=0;o<e.length;o++){let s=e[o];s==="\\"?o++:n?s===n&&(n=null):s==='"'||s==="'"?n=s:s==="["||s==="("?t++:s==="]"||s===")"?t>0&&t--:s==="@"&&t===0&&(r=o)}return r}function $o(e){let t=rn(e);return t===-1?{selector:e,prop:null}:{selector:e.slice(0,t),prop:e.slice(t+1)||null}}function Ho(e,t){if(typeof e=="string"){let n=t&&t.defaultView,r=n&&n.DOMParser||globalThis.DOMParser;return new r().parseFromString(e,"text/html")}if(e&&e.nodeType===9)return e;throw new TypeError("expected an HTML string or a Document")}function Ws(e){let t=new Map;return(n,r)=>{if(typeof r!="string")return Ho(r,e);let o=t.get(n);if(o&&o.text===r)return o.doc;let s=Ho(r,e);return t.set(n,{text:r,doc:s}),s}}function El(e,t){let n=t.doctype;if(!n)return!1;let r=e.doctype;if(r&&r.name===n.name&&r.publicId===n.publicId&&r.systemId===n.systemId)return!1;let o=e.implementation.createDocumentType(n.name,n.publicId,n.systemId);return r?e.replaceChild(o,r):e.insertBefore(o,e.documentElement),!0}var Ks=()=>!1;function Gs(e,t=[]){if(typeof e!="function")return Ks;let n=new WeakMap,r=new Set(t);return o=>{if(!o||o.nodeType!==1)return!1;let s=n.get(o);if(s!==void 0)return s;let l=[],i=o,a=!1;for(;i&&i.nodeType===1;){let c=n.get(i);if(c!==void 0){a=c;break}if(l.push(i),e(i,r.has(i))){a=!0;break}if(r.has(i))break;i=i.parentElement}for(let c of l)n.set(c,a);return a}}var ng=Object.freeze(["root-tag","equal","root-attrs","root-level","not-in-body","ignored-ancestor","remote-wins-ancestor","form-ancestor","script-or-template","no-live-twin","live-detached","ancestor-live","sibling-live","outside-id-changed","chain-unpaired"]);function nr(){return{lazyTwins:0,hashRejected:0,similarTiesStrict:0,similarTiesLoose:0,ambiguousMoves:0,certificationPairs:0,certificationVisited:0,fastPathAttempted:0,fastPathTaken:0,fastPathFallback:null}}function Ys(e,t){let n=new WeakMap;if(!e||!t||typeof t!="object"||Array.isArray(t))return n;let r=t["~"],o=typeof r=="string"?r.split(",").map(Number):null,s=o&&typeof t["^"]=="string"?t["^"].split(","):null,l=u=>Number.isInteger(u)&&u>=0,i=0,a=!1,c=u=>{let f=u;for(;f>0;){let d=o[i++];if(i>o.length||!l(d))return!1;f+=d-1}return!0},h=(u,f)=>{if(a)return;if(o){let y=i++,m=o[y];if(y>=o.length||!l(m)){a=!0;return}let g=!s||s[y]===u.tagName.toLowerCase();if(!g||m!==u.children.length){let k=g&&t[f];typeof k=="string"&&k&&n.set(u,k),c(m)||(a=!0);return}}let d=t[f];typeof d=="string"&&d&&n.set(u,d);let p=u.children;for(let y=0;y<p.length;y++)h(p[y],f===""?String(y):`${f}.${y}`)};return h(e,""),n}function _l(e){return t=>{for(let n of e){let r=n(t);if(typeof r=="string"&&r!=="")return r}return null}}var Sn=_l([e=>e.getAttribute("data-id"),e=>e.getAttribute("id")]);function zo(e,t,n,r=null,o=null){let s=new Map,l=new Set,i=a=>{if(n(a))return;let c=t(a);c&&(s.has(c)?l.add(c):s.set(c,a))};if(r){let a=c=>{for(let h of c.querySelectorAll(r))i(h);for(let h of c.querySelectorAll("template"))h.content&&a(h.content)};i(e),a(e.tagName==="TEMPLATE"&&e.content?e.content:e)}else{let a=c=>{i(c);let h=c.tagName==="TEMPLATE"&&c.content?c.content.children:c.children;for(let u=0;u<h.length;u++)a(h[u])};a(e)}for(let a of l)s.delete(a),o&&o.add(a),Xs(a);return s}function Xs(e){e.startsWith("merge:")&&console.warn(`[hyper-morph] merge disabled for duplicate identity "${e.slice(e.indexOf(":",6)+1)}"`)}var fu=new Set(["href","src","name","type","role"]),Nl=new Set(["SCRIPT","STYLE","TEXTAREA","TEMPLATE","IFRAME","OBJECT","CANVAS","VIDEO","AUDIO","svg","SVG"]);function Nr(e,t=5381){let n=t;for(let r=0;r<e.length;r++)n=(n<<5)+n^e.charCodeAt(r);return n>>>0}function Ol(e){return e.replace(/\s+/g," ")}var uu=0;function Cl({ignored:e=()=>!1,ignoreAttribute:t=()=>!1,stats:n=null}={}){let r=new WeakMap,o=new WeakMap;function s(O){let C=O.attributes,_=C.length;if(_===0)return{all:"",sig:O.tagName+"|"};let M=[],j="",I=[];for(let P=0;P<_;P++){let R=C[P],T=R.name;t(O,T)||M.push(T+"="+R.value),T==="class"?j=R.value.indexOf(" ")<0?R.value:R.value.split(/\s+/).filter(Boolean).sort().join(" "):fu.has(T)&&I.push(T+"="+R.value)}return M.length>1&&M.sort(),I.length>1&&I.sort(),{all:M.join(""),sig:O.tagName+"|"+j+(I.length?"|"+I.join("|"):"")}}function l(O){return O.nodeType===1&&O.tagName==="TEMPLATE"&&O.content?O.content.childNodes:O.childNodes}function i(O){let C=r.get(O);if(C)return C;if(O.nodeType===3)C={hash:"T"+Nr(O.nodeValue),hint:Ol(O.nodeValue).slice(0,64),sig:null,tok:null};else if(O.nodeType===8)C={hash:"C"+Nr(O.nodeValue),hint:"",sig:null,tok:null};else if(O.nodeType===1){let _=s(O),M=Nr(O.tagName+""+_.all),j="";for(let I of c(O))if(I.nodeType===1){let P=i(I);M=Nr(P.hash,M),j.length<64&&(j+=" "+P.hint)}else M=Nr(h(I),M),I.kind==="text"&&j.length<64&&(j+=I.value.slice(0,64));C={hash:"E"+M,hint:Ol(j).trim().slice(0,64),sig:_.sig,tok:null}}else C={hash:"N"+O.nodeType,hint:"",sig:null,tok:null};return r.set(O,C),C}function a(O){if(!O.tok){O.tok=new Set;for(let C of O.hint.toLowerCase().split(/[^\p{L}\p{N}]+/u))C&&O.tok.add(C)}return O.tok}function c(O){let C=o.get(O);if(C)return C;C=[];let _=null,M=()=>{_&&(_.value=_.nodes.map(j=>j.nodeValue).join(""),C.push(_),_=null)};for(let j of l(O)){if(j.nodeType===3){_||(_={kind:"text",nodes:[],value:"",parent:O,hash:void 0}),_.nodes.push(j);continue}M(),j.nodeType===8?C.push({kind:"comment",nodes:[j],value:j.nodeValue,parent:O,hash:void 0}):j.nodeType===1&&!e(j)&&C.push(j)}return M(),o.set(O,C),C}function h(O){return O.nodeType===1?i(O).hash:(O.hash===void 0&&(O.hash=(O.kind==="text"?"T":"C")+Nr(O.value)),O.hash)}function u(O,C){let _=a(i(O)),M=a(i(C));if(_.size===0&&M.size===0)return{coef:1,share:1};if(_.size===0||M.size===0)return null;let j=0;for(let I of _)M.has(I)&&j++;return{coef:j/Math.min(_.size,M.size),share:j/Math.max(_.size,M.size)}}function f(O,C){let _=u(O,C);return!!_&&_.coef>=.5}let d=new WeakMap;function p(O){let C=d.get(O);if(C)return C;C=[];for(let _ of O.attributes)t(O,_.name)||C.push([_.namespaceURI||"",_.localName,_.value]);return C.sort((_,M)=>_[0]<M[0]?-1:_[0]>M[0]?1:_[1]<M[1]?-1:_[1]>M[1]?1:0),d.set(O,C),C}let y=new WeakMap;function m(O,C){if(O===C)return!0;if(h(O)!==h(C))return!1;let _=y.get(O);if(_&&_.has(C))return _.get(C);let M=y.get(C);if(M&&M.has(O))return M.get(O);let j=g(O,C),I=j===!0;return j===!1&&n&&n.hashRejected++,_||y.set(O,_=new WeakMap),_.set(C,I),I}function g(O,C){if(O.nodeType===1){if(C.nodeType!==1||O.tagName!==C.tagName||O.namespaceURI!==C.namespaceURI)return!1;let _=p(O),M=p(C);if(_.length!==M.length)return!1;for(let P=0;P<_.length;P++)if(_[P][0]!==M[P][0]||_[P][1]!==M[P][1]||_[P][2]!==M[P][2])return!1;let j=c(O),I=c(C);if(j.length!==I.length)return!1;for(let P=0;P<j.length;P++){if(h(j[P])!==h(I[P]))return!1;if(!m(j[P],I[P]))return uu}return!0}return C.nodeType===1?!1:O.kind===C.kind&&O.value===C.value}let k=new WeakMap,S=new Map,v=0;function x(O){let C=k.get(O);if(C)return C;let _=h(O),M=S.get(_);M||S.set(_,M=[]);let j=M.find(I=>m(I.unit,O));return C=j?j.key:"K"+v++,j||M.push({unit:O,key:C}),k.set(O,C),C}return{meta:i,unitsOf:c,unitHash:h,similar:f,score:u,childrenOf:l,equalUnits:m,exactUnitKey:x,ignored:e}}var Ml=16,du=2e3,hu=3,Js={align:0,certifyVisited:0,certifyScheduled:0};function Zs(e,t,n){let{meta:r,unitsOf:o,unitHash:s,similar:l,score:i,childrenOf:a,equalUnits:c,ignored:h}=n.analyzer,u=n.baseId||(()=>null),f=n.sideId||(()=>null),d=n.baseKey||(()=>null),p=n.sideKey||(()=>null),y=n.baseDropped||new Set,m=n.sideDropped||new Set,g=n.stats||null,k=g?new Set:null,S=g?new Set:null,v=new Map,x=new Map,O=new Set,C=new Map,_=new Set,M=new Set,j=new Set,I=[],P=[],R=[],T=[],A=du,W=new Map,F=new Map,$=(B,G)=>{v.set(B,G),x.set(G,B)},Ne=new Set,Ce=new Set,Be=null,re=B=>{let G=B.nodeType?B.parentNode:B.parent;if(!G||G.nodeType!==11)return G;if(!Be){Be=new WeakMap;let he=be=>{for(let fe of be.querySelectorAll("template"))fe.content&&(Be.set(fe.content,fe),he(fe.content))};for(let be of[e,t])he(be.tagName==="TEMPLATE"&&be.content?be.content:be)}return Be.get(G)||null},Ee=(B,G)=>{for(let he=re(B);he&&!Ne.has(he);he=re(he))Ne.add(he);for(let he=re(G);he&&!Ce.has(he);he=re(he))Ce.add(he)},Ge=B=>{for(let G=re(B);G;G=re(G))if(v.has(G))return M.has(G);return!1},_e=B=>{for(let G=re(B);G;G=re(G)){let he=x.get(G);if(he!==void 0)return M.has(he)}return!1},w=B=>!!B&&B.nodeType===1,V=(B,G)=>{let he=C.get(B);return!!he&&he.has(G)},ne=B=>Nl.has(B.tagName),te=n.comparisons||n.scope,Pe=(B,G)=>{if(te){if(te.same.get(B)===G)return!0;if(te.differ.get(B)===G)return!1}if(!B.isEqualNode(G))return!1;if(B.tagName==="TEMPLATE")return c(B,G);let he=B.getElementsByTagName("template");if(he.length===0)return!0;let be=G.getElementsByTagName("template");if(he.length!==be.length)return!1;for(let fe=0;fe<he.length;fe++)if(!c(he[fe],be[fe]))return!1;return!0},ze=(B,G)=>{let he=u(B);if(!he)return!0;let be=f(G);return!be||he===be},Se=B=>{let G=d(B);return G&&n.baseIndex.get(G)===B&&!m.has(G)?G:null},it=B=>{let G=p(B);return G&&n.sideIndex.get(G)===B&&!y.has(G)?G:null},tt=(B,G)=>{let he=Se(B);if(!he)return!0;let be=it(G);return!be||he===be},Q=globalThis.__hyperMorphProfile,ce=Q?performance.now():0;Q&&!n.scope&&(r(e),r(t),Q.meta=(Q.meta||0)+(performance.now()-ce),ce=performance.now()),$(e,t);let Re=new Set;for(let[B,G]of n.baseIndex){let he=n.sideIndex.get(B);he&&he.tagName===G.tagName&&!v.has(G)&&!x.has(he)&&($(G,he),Ee(G,he),Re.add(G))}if(Re.size){let B=[];if(n.scope)for(let fe of n.scope.chain)Re.has(fe)&&B.push(fe);let G=[n.scope?n.scope.root:e];for(;G.length;){let fe=G.pop();Re.has(fe)&&B.push(fe);let we=a(fe);for(let oe=we.length-1;oe>=0;oe--)we[oe].nodeType===1&&G.push(we[oe])}let he=new Set;for(let fe=B.length-1;fe>=0;fe--){let we=B[fe];n.scope&&n.scope.onChain.has(we)?he.add(we):ie(we,v.get(we),he)?(M.add(we),j.add(we),g&&g.certificationPairs++):he.add(we)}let be=new Set;for(let fe of B)M.has(fe)&&!be.has(fe)&&Ue(fe,be)}n.scope&&n.scope.head&&ge(n.scope.head[0],n.scope.head[1]);function Ue(B,G){let he=[B];for(;he.length;){let be=he.pop();if(!G.has(be)){G.add(be),Y(be);for(let fe of o(be))w(fe)&&v.has(fe)&&he.push(fe)}}}T.push([e,t]);for(let[B,G]of v)w(B)&&B!==e&&T.push([B,G]);return kt(),qe(),Q&&(Q.align=(Q.align||0)+(performance.now()-ce)),{map:v,reverse:x,moved:_,identical:M,pairIdenticalChildren:Y,weak:O,unpair:ot,rematch:qe,insertedByHash:xt,refused:S,identityPaired:Re};function qe(){ke(),kt();for(let B=0;B<R.length;){let G=R.length;St(B,G),B=G,kt(),ke(),kt()}}function ot(B){let G=v.get(B);if(!G)return;C.has(B)||C.set(B,new Set),C.get(B).add(G);let he=(fe,we)=>{v.delete(fe),x.delete(we),_.delete(fe),M.delete(fe),O.delete(fe),j.delete(fe)},be=(fe,we)=>{for(let oe of o(fe)){let K=v.get(oe);!K||Re.has(oe)||!(w(K)?we.contains(K):we.contains(K.nodes[0]))||(he(oe,K),w(oe)&&be(oe,K))}};he(B,G),w(B)&&be(B,G),I.push(B),P.push(G)}function xt(){let B=new Map;for(let G of new Set(P)){if(x.has(G))continue;let he=r(G).hash;B.has(he)||B.set(he,[]),B.get(he).push(G)}return B}function kt(){for(;T.length;){let[B,G]=T.shift();v.get(B)!==G||j.has(B)||M.has(B)||dt(B,G)}}function Ct(B,G){if(!ne(B))for(let he of o(B))w(he)&&(G.push(he),Ct(he,G))}function dt(B,G){j.add(B);let he=o(B),be=o(G);Js.align+=he.length+be.length,W=new Map,F=new Map;for(let ue=0;ue<he.length;ue++)W.set(he[ue],ue);for(let ue=0;ue<be.length;ue++)F.set(be[ue],ue);if(B.tagName==="HTML")for(let ue of["HEAD","BODY"]){let Le=he.find(We=>w(We)&&We.tagName===ue),De=be.find(We=>w(We)&&We.tagName===ue);Le&&De&&!v.has(Le)&&!x.has(De)&&$(Le,De)}for(let ue=0;ue<he.length&&ue<be.length;ue++){let Le=he[ue],De=be[ue];v.has(Le)||x.has(De)||(w(Le)?w(De)&&Le.tagName===De.tagName&&Pe(Le,De)&&ge(Le,De):!w(De)&&Le.kind===De.kind&&Le.value===De.value&&ge(Le,De))}Ie(he,be);let fe=he.filter(ue=>!v.has(ue)),we=be.filter(ue=>!x.has(ue));fe.length&&we.length&&(H(fe,we),J(fe,we),se(fe,we,he,be),Me(he,be));let oe=!1,K=!1;for(let ue of he){if(!v.has(ue)){w(ue)&&(I.push(ue),Ct(ue,I),oe=!0);continue}w(ue)&&!M.has(ue)&&T.push([ue,v.get(ue)])}for(let ue of be)!x.has(ue)&&w(ue)&&(P.push(ue),Ct(ue,P),K=!0);oe&&K&&R.push([B,G])}function St(B,G){for(let he=B;he<G;he++){let[be,fe]=R[he];if(v.get(be)!==fe)continue;let we=o(be),oe=o(fe),K=new Map,ue=new Map,Le=null;for(let De of we)w(De)&&(v.has(De)?Le=De:(K.has(Le)||K.set(Le,[]),K.get(Le).push(De)));Le=null;for(let De of oe)w(De)&&(x.has(De)?Le=x.get(De):(ue.has(Le)||ue.set(Le,[]),ue.get(Le).push(De)));for(let[De,We]of K){let Oe=ue.get(De);if(!(!Oe||We.length!==Oe.length)&&We.every((Ze,st)=>Oe[st].tagName===Ze.tagName&&ze(Ze,Oe[st])&&!V(Ze,Oe[st])))for(let Ze=0;Ze<We.length;Ze++)ht(We[Ze],Oe[Ze])}}}function ht(B,G){$(B,G),O.add(B),T.push([B,G]),kt()}function H(B,G){let he=Cr(B,s),be=Cr(G,s),fe=new Map;for(let we of G){let oe=s(we);be.get(oe)===1&&fe.set(oe,we)}for(let we of B){if(v.has(we))continue;let oe=s(we);if(he.get(oe)!==1)continue;let K=fe.get(oe);K&&!x.has(K)&&c(we,K)&&ge(we,K)}}function ie(B,G,he){let be=[[B,G]];for(;be.length;){let[fe,we]=be.pop();if(Js.certifyVisited++,g&&g.certificationVisited++,fe.nodeType!==we.nodeType)return!1;if(fe.nodeType===3||fe.nodeType===8){if(fe.nodeValue!==we.nodeValue)return!1;continue}if(fe.nodeType!==1){if(!fe.isEqualNode(we))return!1;continue}if(fe.tagName!==we.tagName||fe.namespaceURI!==we.namespaceURI||h(fe)!==h(we))return!1;let oe=fe.attributes,K=we.attributes;if(oe.length!==K.length)return!1;for(let Oe=0;Oe<oe.length;Oe++){let Ze=oe[Oe];if(we.getAttributeNS(Ze.namespaceURI,Ze.localName)!==Ze.value)return!1}let ue=v.get(fe);if(ue!==void 0&&ue!==we)return!1;let Le=x.get(we);if(Le!==void 0&&Le!==fe)return!1;if(fe!==B){if(M.has(fe))continue;if(he.has(fe))return!1}let De=a(fe),We=a(we);if(De.length!==We.length)return!1;Js.certifyScheduled+=De.length;for(let Oe=De.length-1;Oe>=0;Oe--)be.push([De[Oe],We[Oe]])}return!0}function pe(B,G){return!w(B)||!(Ne.has(B)||Ce.has(G))?!0:!!N(B,G)||!(Se(B)||it(G))}function ge(B,G){if(w(B)&&(Ne.has(B)||Ce.has(G))){let he=N(B,G);if(!he){if(Se(B)||it(G))return;$(B,G),T.push([B,G]);return}for(let be=0;be<he.length;be+=2){let fe=he[be],we=he[be+1],oe=v.get(fe);oe!==void 0&&oe!==we&&Ae(fe,oe);let K=x.get(we);K!==void 0&&K!==fe&&Ae(K,we),v.get(fe)===we&&(_.delete(fe),O.delete(fe),M.add(fe),j.add(fe))}}D(B,G)}function Ae(B,G){v.delete(B),x.delete(G),_.delete(B),M.delete(B),O.delete(B),j.delete(B)}function N(B,G){let he=[B,G,!1],be=[];for(;he.length;){let fe=he.pop(),we=he.pop(),oe=he.pop(),K=v.get(oe),ue=x.get(we);if(oe!==B&&(K!==void 0&&K!==we&&Re.has(oe)||ue!==void 0&&ue!==oe&&Re.has(ue)))return null;if(!(K===we&&M.has(oe))&&((K!==void 0||ue!==void 0)&&be.push(oe,we),!!w(oe))){if(fe||K!==void 0&&K!==we||ue!==void 0&&ue!==oe){let Le=o(oe),De=o(we);for(let We=0;We<Le.length&&We<De.length;We++)he.push(Le[We],De[We],!0)}else if(Ne.has(oe)||Ce.has(we)){let Le=oe.tagName==="TEMPLATE"?oe.content:oe,De=we.tagName==="TEMPLATE"?we.content:we;for(let We=Le.firstElementChild,Oe=De.firstElementChild;We&&Oe;){if(h(We)){We=We.nextElementSibling;continue}if(h(Oe)){Oe=Oe.nextElementSibling;continue}(v.has(We)||x.has(Oe)||Ne.has(We)||Ce.has(Oe))&&he.push(We,Oe,!1),We=We.nextElementSibling,Oe=Oe.nextElementSibling}}}}return be}function D(B,G){$(B,G),M.add(B),w(B)&&j.add(B)}function Y(B){let G=v.get(B);if(!G||!w(B))return;let he=o(B),be=o(G);for(let fe=0;fe<he.length&&fe<be.length;fe++)v.has(he[fe])||D(he[fe],be[fe])}function J(B,G){let he=oe=>w(oe)&&!ne(oe)?r(oe).sig+""+r(oe).hint:null,be=Cr(B,he),fe=Cr(G,he),we=new Map;for(let oe of G){let K=he(oe);K!=null&&fe.get(K)===1&&we.set(K,oe)}for(let oe of B){if(v.has(oe))continue;let K=he(oe);if(K==null||be.get(K)!==1)continue;let ue=we.get(K);ue&&!x.has(ue)&&ze(oe,ue)&&$(oe,ue)}}function se(B,G,he,be){let fe=new Map;for(let oe of G){if(!w(oe)||x.has(oe)||ne(oe))continue;let K=r(oe).sig;fe.has(K)||fe.set(K,[]),fe.get(K).push({el:oe,index:F.get(oe)})}let we=[];for(let oe of B){if(v.has(oe)||!w(oe)||ne(oe))continue;let K=fe.get(r(oe).sig);if(!K||!K.length)continue;let ue=W.get(oe),Le=K.filter(De=>!x.has(De.el)).map(De=>({c:De,d:Math.abs(De.index-ue)}));Le.sort((De,We)=>De.d-We.d),Le.length>Ml&&(Le=Le.slice(0,Ml));for(let{c:De,d:We}of Le){if(!ze(oe,De.el))continue;let Oe=i(oe,De.el);Oe&&Oe.coef>=.5&&we.push({b:oe,s:De.el,coef:Oe.coef,share:Oe.share,d:We,bi:ue})}}if(we.sort((oe,K)=>K.coef-oe.coef||K.share-oe.share||oe.d-K.d||oe.bi-K.bi),g&&we.length>1){let oe=new Map;for(let K of we){let ue=oe.get(K.b);ue?ue.coef===K.coef&&(ue.share===K.share?ue.strict++:ue.loose++):oe.set(K.b,{coef:K.coef,share:K.share,strict:0,loose:0})}for(let[K,ue]of oe)k.has(K)||!(ue.strict||ue.loose)||(k.add(K),ue.strict?g.similarTiesStrict++:g.similarTiesLoose++)}for(let oe of we)!v.has(oe.b)&&!x.has(oe.s)&&$(oe.b,oe.s)}function Fe(B,G){return w(B)!==w(G)?!1:w(B)?B.tagName!==G.tagName||!ze(B,G)?!1:ne(B)||r(B).hint===""||r(G).hint===""?!0:l(B,G):B.kind===G.kind}function ee(B,G){let he=(fe,we)=>{let oe=we===null?-1:fe===G?F.get(we):W.get(we),K=fe[oe+1];return K&&!w(K)?K:null},be=null;for(let fe of B){if(w(fe)){be=fe;continue}if(v.has(fe))continue;let we=be===null?null:v.get(be);if(be!==null&&!we)continue;let oe=he(G,we);oe&&!x.has(oe)&&oe.kind===fe.kind&&$(fe,oe)}}function Me(B,G){ee(B,G);let he=Ve(B,G),be=(we,oe)=>w(we)&&r(we).hint!==""&&r(oe).hint===""&&!!oe.querySelector("br")&&!he(we,oe),fe=0;for(let we of B){if(v.has(we)){let K=F.get(v.get(we));K!==void 0&&K>=fe&&(fe=K+1);continue}let oe=0;for(let K=fe;K<G.length&&oe<hu;K++){let ue=G[K];if(!x.has(ue)&&(oe++,Fe(we,ue)&&!V(we,ue)&&!be(we,ue))){$(we,ue),w(we)&&(r(we).hint===""||r(ue).hint==="")&&O.add(we),fe=K+1;break}}}Ie(B,G)}function Ve(B,G){let he=(be,fe,we)=>{for(let oe=fe-1;oe>=0;oe--)if(w(be[oe])&&we(be[oe]))return be[oe];return null};return(be,fe)=>{let we=W.get(be),oe=F.get(fe);if(we===oe)return!0;let K=he(B,we,Le=>v.has(Le)),ue=he(G,oe,Le=>x.has(Le));return K?v.get(K)===ue:!ue}}function Ie(B,G){let he=B.filter(K=>w(K)&&!v.has(K)),be=G.filter(K=>w(K)&&!x.has(K));if(!he.length||!be.length)return;let fe=Cr(he,K=>K.tagName),we=Cr(be,K=>K.tagName),oe=Ve(B,G);for(let K of he){let ue=K.tagName;if(fe.get(ue)!==1||we.get(ue)!==1)continue;let Le=be.find(De=>De.tagName===ue);Le&&!x.has(Le)&&oe(K,Le)&&ze(K,Le)&&!V(K,Le)&&(c(K,Le)?ge(K,Le):($(K,Le),O.add(K)))}}function ke(){let B=new Map;for(let K of O)if(w(K)&&w(v.get(K))){let ue=r(K).hash;B.has(ue)||B.set(ue,[]),B.get(ue).push(K)}if(B.size)for(let K of P){if(x.has(K)||!w(K)||_e(K))continue;let ue=B.get(r(K).hash),Le=ue&&ue.find(De=>O.has(De)&&!V(De,K)&&ze(De,K)&&tt(De,K)&&c(De,K)&&pe(De,K));Le&&(ot(Le),ge(Le,K),Ee(Le,K),_.add(Le))}let G=new Map,he=new Map,be=new Map;for(let K of O){let ue=v.get(K);w(K)&&w(ue)&&be.set(ue,K)}let fe=(K,ue)=>{if(!x.has(K))return!_e(K);let Le=be.get(K);return Le===x.get(K)&&Le!==ue&&!Le.contains(ue)},we=K=>{if(x.has(K)){let ue=be.get(K);be.delete(K),ot(ue)}};for(let K of[...P,...be.keys()]){if(x.has(K)&&!be.has(K))continue;let ue=r(K).hash;if(G.has(ue)||G.set(ue,[]),G.get(ue).push(K),ne(K))continue;let Le=r(K).sig;he.has(Le)||he.set(Le,[]),he.get(Le).push(K)}let oe=new Set;for(let K of O){let ue=v.get(K);!w(K)||!w(ue)||ne(K)||r(K).hint===""||r(ue).hint===""||l(K,ue)||oe.add(K)}for(let K of[...I,...oe]){let ue=v.get(K);if(ue?!(O.has(K)&&oe.has(K)):Ge(K))continue;let Le=st=>{ue&&ot(K),we(st)},De=G.get(r(K).hash);if(De){let st=De.find(E=>E!==ue&&fe(E,K)&&!V(K,E)&&tt(K,E)&&c(K,E)&&pe(K,E));if(st){Le(st),ge(K,st),Ee(K,st),_.add(K);continue}}if(ne(K)||A<=0)continue;let We=he.get(r(K).sig);if(!We)continue;let Oe=null,Ze=0;for(let st of We)if(!(st===ue||!fe(st,K)||!ze(K,st)||!tt(K,st)||V(K,st))&&(A--<=0||l(K,st)&&(Ze++,Oe=st,Ze>1)))break;Ze>1&&S&&S.add(K),Ze===1&&(Le(Oe),$(K,Oe),Ee(K,Oe),_.add(K),T.push([K,Oe]))}}}function Cr(e,t){let n=new Map;for(let r of e){let o=t(r);o!=null&&n.set(o,(n.get(o)||0)+1)}return n}var mu={diff:0},Rl=typeof Intl<"u"&&typeof Intl.Segmenter=="function"?new Intl.Segmenter(void 0,{granularity:"word"}):null,pu=/[\p{Script=Han}\p{Script=Hiragana}\p{Script=Katakana}\p{Script=Thai}\p{Script=Lao}\p{Script=Khmer}\p{Script=Myanmar}]/u,gu=/[\p{L}\p{M}\p{N}_'’]+|\s+|[\s\S]/gu,bu=/\P{M}\p{M}*/gu;function ku(e){if(e==="")return[];if(Rl){let n=[];for(let r of Rl.segment(e))n.push(r.segment);return n}let t=[];for(let n of e.match(gu))if(pu.test(n))for(let r of n.match(bu))t.push(r);else t.push(n);return t}var yu=/^[  ]+$/,xu=e=>yu.test(e)?" ".repeat(e.length):e,rr=e=>typeof e.k=="string"&&/^\s+$/.test(e.k),Tt="",Qs=e=>e.every(t=>rr(t)||t.k===Tt),vu=/^[\x00-\x7f\u00A0]*$/,wu=/[A-Za-z0-9_']+|[ \u00A0]+|\s|./g;function Au(e){return e===""?[]:e.match(wu)}function hn(e,t=!1){return(t?Au(e):ku(e)).map(n=>({k:xu(n),raw:n,len:n.length}))}var Tn=(...e)=>e.every(t=>vu.test(t));function ei(e,t,n){let r=e.length,o=t.length,s=Math.min(r+o,n),l=s+1,i=new Int32Array(2*s+3),a=[],c=r===0&&o===0;for(let d=0;d<=s&&!c;d++){a.push(i.slice(l-d,l+d+1));for(let p=-d;p<=d;p+=2){let y;p===-d||p!==d&&i[l+p-1]<i[l+p+1]?y=i[l+p+1]:y=i[l+p-1]+1;let m=y-p,g=y;for(;y<r&&m<o&&e[y].k===t[m].k;)y++,m++;if(mu.diff+=1+y-g,i[l+p]=y,y>=r&&m>=o){c=!0;break}}}if(!c)return null;let h=[],u=r,f=o;for(let d=a.length-1;d>0;d--){let p=a[d],y=u-f,m=y+d,g=y===-d||y!==d&&p[m-1]<p[m+1]?y+1:y-1,k=p[g+d],S=k-g;for(;u>k&&f>S;)h.push([0,u-1,f-1]),u--,f--;u===k?(h.push([1,u,f-1]),f--):(h.push([-1,u-1,f]),u--)}for(;u>0&&f>0;)h.push([0,u-1,f-1]),u--,f--;return h.reverse(),h}function Su(e,t,n){let r=u=>u.k===Tt;if(!e.some(r)&&!t.some(r))return ei(e,t,n);let o=[],s=[];for(let u=0;u<e.length;u++)r(e[u])||o.push(u);for(let u=0;u<t.length;u++)r(t[u])||s.push(u);let l=ei(o.map(u=>e[u]),s.map(u=>t[u]),n);if(!l)return null;let i=[],a=0,c=0,h=(u,f)=>{for(;a<u&&c<f&&e[a].k===t[c].k;)i.push([0,a++,c++]);let d=ei(e.slice(a,u),t.slice(c,f),n);if(!d)return!1;for(let[p,y,m]of d)i.push([p,y+a,m+c]);return a=u,c=f,!0};for(let[u,f,d]of l)if(u===0){if(!h(o[f],s[d]))return null;i.push([0,a,c]),a++,c++}return h(e.length,t.length)?i:null}function Yn(e,t,n=4e3){let r=[],o=0;for(;o<e.length&&o<t.length&&e[o].k===t[o].k;)e[o].raw!==t[o].raw&&r.push({bi:o,tok:t[o]}),o++;let s=0;for(;s<e.length-o&&s<t.length-o&&e[e.length-1-s].k===t[t.length-1-s].k;)e[e.length-1-s].raw!==t[t.length-1-s].raw&&r.push({bi:e.length-1-s,tok:t[t.length-1-s]}),s++;let l=e.slice(o,e.length-s),i=t.slice(o,t.length-s),a=Cu(l,i)?null:Su(l,i,n);if(!a){let g=l.length||i.length?[{bs:o,be:o+l.length,toks:i}]:[];return{hunks:g,cosmetic:r,coarse:!0,parts:g.map(k=>({...k,gap:[],group:0})),cosmeticEq:r}}let c=[],h=(g,k)=>{l[g].raw!==i[k].raw&&r.push({bi:o+g,tok:i[k]})},u=null,f=[],d=0,p=0,y=()=>{u&&c.push(u),u=null;for(let[g,k]of f)h(g,k);f=[],d++};for(let[g,k,S]of a){if(g===0){u&&rr(l[k])&&!l[k].k.includes(`
2
+ `)?f.push([k,S]):(y(),h(k,S)),p=k+1;continue}(!u||f.length)&&(u&&c.push(u),u={bs:o+p,be:o+p,toks:[],gap:f.map(([v,x])=>({bi:o+v,tok:i[x]})),group:d},f=[]),g===-1?(u.be=o+p+1,p=k+1):u.toks.push(i[S])}y(),Tu(c,e);let m=ni(c);return{hunks:m.hunks,cosmetic:r.concat(m.cosmetic),parts:c,cosmeticEq:r}}function Tu(e,t){for(let n=0;n<e.length;n++){let r=e[n];if(r.gap.length)continue;let o=n+1<e.length?e[n+1].bs:1/0;if(r.toks.length){if(r.bs===r.be)for(;r.bs+1<o&&r.bs<t.length&&r.toks[0].k===Tt&&t[r.bs].k===Tt;)r.toks=[...r.toks.slice(1),r.toks[0]],r.bs++,r.be++}else for(;r.be+1<o&&r.be<t.length&&t[r.bs].k===Tt&&t[r.be].k===Tt;)r.bs++,r.be++}}function ni(e,t=()=>!1){let n=[],r=[],o=null,s=-1;for(let l of e){let i=t(l);if(o&&!o.alone&&!i&&l.group===s){o.be=l.be;for(let a of l.gap)o.toks.push(a.tok);for(let a of l.toks)o.toks.push(a);continue}o&&n.push({bs:o.bs,be:o.be,toks:o.toks});for(let a of l.gap)r.push(a);o={bs:l.bs,be:l.be,toks:l.toks.slice(),alone:i},s=l.group}return o&&n.push({bs:o.bs,be:o.be,toks:o.toks}),{hunks:n,cosmetic:r}}var Eu=(e,t)=>e.bs===t.bs&&e.be===t.be&&si(e.toks,t.toks);function oi(e,t,n){let r=h=>u=>h.some(f=>Eu(u,f)),o=ni(e.parts,r(t.parts)),s=ni(t.parts,r(e.parts)),l=e.cosmeticEq.concat(o.cosmetic),i=t.cosmeticEq.concat(s.cosmetic),[a,c]=n?_u(o.hunks,s.hunks,n,l,i):[o.hunks,s.hunks];return{lh:a,rh:c,cosL:l,cosR:i}}function _u(e,t,n,r,o){let s=(p,y)=>p.k===y.k&&p.raw===y.raw,l=[{list:e.map(p=>({...p})),resp:new Set(r.map(p=>p.bi)),raw:new Map(r.map(p=>[p.bi,p.tok]))},{list:t.map(p=>({...p})),resp:new Set(o.map(p=>p.bi)),raw:new Map(o.map(p=>[p.bi,p.tok]))}],i=p=>p.bs===p.be,a=(p,y,m,g)=>{let k=p.list[y];if(!i(k))return g(k)===m?k.toks:null;let S=y?p.list[y-1].be:0,v=y+1<p.list.length?p.list[y+1].bs:n.length;if(m<S||m>v)return null;let x=k.toks,O=k.bs;for(;O>m;){let C=x[x.length-1];if(!s(C,n[O-1])||p.resp.has(O-1))return null;x=[C,...x.slice(0,-1)],O--}for(;O<m;){if(!s(x[0],n[O])||p.resp.has(O))return null;x=[...x.slice(1),x[0]],O++}return x},c=(p,y,m,g,k,S)=>{let v=p.list[y],x=k?m.slice(m.length-g):m.slice(0,g),O=k?m.slice(0,m.length-g):m.slice(g),C={bs:S,be:S,toks:x};if(i(v)){if(!O.length){p.list[y]=C;return}let M={bs:S,be:S,toks:O};k&&(M.lead=!0),p.list.splice(y,1,...k?[M,C]:[C,M]);return}let _={bs:v.bs,be:v.be,toks:O};p.list.splice(y,1,...k?[_,C]:[C,_])},h=(p,y,m,g,k)=>{let S=p.list[y],v=k?m.slice(m.length-g):m.slice(0,g),x=k?m.slice(0,m.length-g):m.slice(g),O={bs:S.bs,be:S.be,toks:v};if(!x.length){p.list[y]=O;return}let C=k?{bs:S.bs,be:S.bs,toks:x,lead:!0}:{bs:S.be,be:S.be,toks:x};p.list.splice(y,1,...k?[C,O]:[O,C])},u=(p,y,m,g)=>{let k=p.list[y],S=m.list[g],v=k.be,x=S.bs;if(v>=x||y+1<p.list.length&&p.list[y+1].bs<=S.be||g>0&&m.list[g-1].be>=k.bs)return!1;for(let F=v;F<x;F++)if(!rr(n[F])||n[F].k.includes(`
3
+ `))return!1;let O=F=>n.slice(v,x).map(($,Ne)=>F.raw.get(v+Ne)||$),C=[...k.toks,...O(p)],_=[...O(m),...S.toks],M=(F,$,Ne)=>$>=0&&$+Ne.length<=F.length&&Ne.every((Ce,Be)=>F[$+Be].k===Ce.k),j=(F,$,Ne)=>Qs(F)&&n.slice($,Ne).some(Ce=>!rr(Ce)),I=F=>F.some($=>!rr($)),P,R,T,A;if(i(k)&&I(k.toks)&&M(_,0,k.toks)){let F=_.slice(k.toks.length);j(F,v,S.be)||(P=v,R=k.toks,T=_.slice(0,k.toks.length),A=[null,{bs:v,be:S.be,toks:F}])}if(P===void 0&&i(S)&&I(S.toks)){let F=C.length-S.toks.length,$=C.slice(0,F);M(C,F,S.toks)&&!j($,k.bs,x)&&(P=x,R=C.slice(F),T=S.toks,A=[{bs:k.bs,be:x,toks:$},null])}if(P===void 0)return!1;let W=F=>F&&(F.bs<F.be||F.toks.length);return p.list.splice(y,1,...[A[0],{bs:P,be:P,toks:R}].filter(W)),m.list.splice(g,1,...[{bs:P,be:P,toks:T},A[1]].filter(W)),!0},f=l[0],d=l[1];for(let p=0;p<64;p++){let y=!1;e:for(let m=0;m<f.list.length;m++)for(let g=0;g<d.list.length;g++){let k=f.list[m],S=d.list[g];if(!(k.bs===S.bs&&k.be===S.be&&si(k.toks,S.toks))){for(let v of[!0,!1]){let x=C=>v?C.be:C.bs,O=i(k)?[x(S),k.bs]:[x(k)];for(let C of O){let _=a(f,m,C,x),M=_&&a(d,g,C,x);if(!M)continue;let j=(A,W)=>v?A[A.length-1-W]:A[W],I=0;for(;I<_.length&&I<M.length&&j(_,I).k===j(M,I).k;)I++;if(!I)continue;let P=v?_.slice(0,_.length-I):_.slice(I),R=v?M.slice(0,M.length-I):M.slice(I);if(!(I<_.length&&I<M.length&&!Qs(P)&&!Qs(R)&&(i(k)&&i(S)||k.bs===S.bs&&k.be===S.be)||!(v?_.slice(_.length-I):_.slice(0,I)).some(A=>!rr(A)))){if(I===_.length&&I===M.length&&i(k)&&i(S)){if(k.bs===C&&S.bs===C)continue;f.list[m]={bs:C,be:C,toks:_},d.list[g]={bs:C,be:C,toks:M}}else!i(k)&&k.bs===S.bs&&k.be===S.be?(h(f,m,_,I,v),h(d,g,M,I,v)):(c(f,m,_,I,v,C),c(d,g,M,I,v,C));y=!0;break e}}}if(u(f,m,d,g)||u(d,g,f,m)){y=!0;break e}}}if(!y)break}return[f.list,d.list]}var Ou=48,Nu=.3;function Cu(e,t){let n=e.filter(l=>!rr(l)),r=t.filter(l=>!rr(l));if(Math.min(n.length,r.length)<Ou)return!1;let o=new Map;for(let l of n)o.set(l.k,(o.get(l.k)||0)+1);let s=0;for(let l of r){let i=o.get(l.k);i>0&&(s++,o.set(l.k,i-1))}return s/Math.min(n.length,r.length)<Nu}var Mu=(e,t)=>{let n=new Set;for(let r of e.toks)typeof r.k!="string"&&n.add(r.k.el);for(let r=e.bs;r<e.be;r++)typeof t[r].k!="string"&&n.add(t[r].k.el);return n},si=(e,t)=>e.length===t.length&&e.every((n,r)=>n.k===t[r].k);function Il(e,t,n,r="remote"){let o=Yn(e,t),s=Yn(e,n),{lh:l,rh:i,cosL:a,cosR:c}=oi(o,s,e),h=w=>w.bs===w.be,u=w=>w.toks.some(V=>typeof V.k=="string"),f=w=>h(w)&&!u(w),d=(w,V)=>V.bs<w.be&&w.bs<V.be,p=(w,V)=>!d(w,V)&&V.bs<=w.be&&w.bs<=V.be&&(h(w)&&u(w)||h(V)&&u(V))&&!(h(w)&&h(V)),y=(w,V)=>w.bs===V.bs&&w.be===V.be&&si(w.toks,V.toks),m=[],g=new Set;for(let w of l){let V=i.find(ne=>!g.has(ne)&&y(w,ne));V?(g.add(V),m.push({bs:w.bs,be:w.be,side:"both",l:w,r:V,toks:w.toks})):m.push({bs:w.bs,be:w.be,side:"L",l:w,toks:w.toks,lead:!!w.lead})}for(let w of i)g.has(w)||m.push({bs:w.bs,be:w.be,side:"R",r:w,toks:w.toks,lead:!!w.lead});m.sort((w,V)=>w.bs-V.bs||w.be-V.be||V.lead-w.lead);let k=0,S=0;for(let w of m)w.side==="both"&&(k+=w.toks.length-(w.be-w.bs));let v=m.map((w,V)=>V),x=w=>v[w]===w?w:v[w]=x(v[w]),O=(w,V)=>(w=x(w),V=x(V),w===V?!1:(v[w]=V,!0)),C=m.map(w=>Mu({bs:w.bs,be:w.be,toks:w.toks},e)),_={L:new Map,R:new Map};m.forEach((w,V)=>{let ne=w.side==="both"?["L","R"]:[w.side];for(let te of ne)for(let Pe of C[V])_[te].has(Pe)||_[te].set(Pe,[]),_[te].get(Pe).push(V)});for(let w of[_.L,_.R])for(let V of w.values())for(let ne=1;ne<V.length;ne++)O(V[0],V[ne]);for(let w=0;w<m.length;w++)for(let V=w+1;V<m.length;V++){let ne=m[w],te=m[V];ne.side===te.side&&ne.side!=="both"||ne.bs>te.be||(d(ne,te)||p(ne,te)?O(w,V):ne.bs===te.bs&&h(ne)&&h(te)&&S++)}let M=(w,V)=>{let ne=w==="L"?l:i;for(let te of ne)if(te.toks.some(Pe=>Pe.kind==="close"&&Pe.k.el===V.el))return te.bs;for(let te=0;te<e.length;te++)if(e[te].kind==="close"&&e[te].k.el===V.el)return te;return-1};m.forEach((w,V)=>{if(!(!f(w)||w.side==="both"))for(let ne of w.toks){if(ne.kind!=="open")continue;let te=M(w.side,ne.k);if(te<=w.bs)continue;let Pe=new Uint8Array(te-w.bs),ze=[];if(m.forEach((Se,it)=>{if(!(Se.side===w.side||h(Se))&&Se.bs<te&&Se.be>w.bs){ze.push(it);for(let tt=Math.max(Se.bs,w.bs);tt<Math.min(Se.be,te);tt++)Pe[tt-w.bs]=1}}),ze.length&&Pe.every(Se=>Se===1))for(let Se of ze)O(V,Se)}});let j=!0;for(;j;){j=!1;let w=new Map;m.forEach((V,ne)=>{let te=x(ne),Pe=w.get(te)||{bs:V.bs,be:V.be,L:!1,R:!1};Pe.bs=Math.min(Pe.bs,V.bs),Pe.be=Math.max(Pe.be,V.be),V.side!=="R"&&(Pe.L=!0),V.side!=="L"&&(Pe.R=!0),w.set(te,Pe)}),m.forEach((V,ne)=>{for(let[te,Pe]of w){if(x(ne)===x(te)||!(Pe.L&&Pe.R))continue;let ze=V.bs<Pe.be&&V.be>Pe.bs,Se=h(V)&&u(V)&&(V.bs===Pe.be||V.bs===Pe.bs);(ze||Se)&&O(ne,te)&&(j=!0)}})}let I=new Map;m.forEach((w,V)=>{let ne=x(V);I.has(ne)||I.set(ne,[]),I.get(ne).push(w)});let P=[];for(let w of I.values()){let V=w.some(te=>te.side==="L"),ne=w.some(te=>te.side==="R");if(V&&ne){let te=Math.min(...w.map(it=>it.bs)),Pe=Math.max(...w.map(it=>it.be)),ze=w.filter(it=>it.side!=="R").map(it=>it.l).sort((it,tt)=>it.bs-tt.bs),Se=w.filter(it=>it.side!=="L").map(it=>it.r).sort((it,tt)=>it.bs-tt.bs);P.push({bs:te,be:Pe,kind:"conflict",localHunks:ze,remoteHunks:Se})}else for(let te of w)P.push({bs:te.bs,be:te.be,kind:te.side,u:te})}let R=(w,V)=>{let ne=w==="L"?l:i;for(let te of ne)if(te.toks.some(Pe=>Pe.kind==="close"&&Pe.k.el===V.el))return te.bs+.5;for(let te=0;te<e.length;te++)if(e[te].kind==="close"&&e[te].k.el===V.el)return te;return 1/0},T=(w,V)=>{let ne=w==="L"?l:i;for(let te of ne)if(te.toks.some(Pe=>Pe.kind==="open"&&Pe.k.el===V.el))return te.bs-.5;for(let te=0;te<e.length;te++)if(e[te].kind==="open"&&e[te].k.el===V.el)return te;return-1/0},A=w=>w.kind==="R"?"R":"L",W=w=>w.kind==="R"?1:0;P.sort((w,V)=>{if(w.bs!==V.bs)return w.bs-V.bs;let ne=w.bs===w.be,te=V.bs===V.be;if(ne!==te)return ne?-1:1;if(ne&&te&&w.kind!=="conflict"&&V.kind!=="conflict"){let ze=w.u.toks,Se=V.u.toks,it=Q=>Q.length&&Q.every(ce=>ce.kind==="open"),tt=Q=>Q.length&&Q.every(ce=>ce.kind==="close");if(it(ze)&&it(Se)){let Q=Math.max(...ze.map(Re=>R(A(w),Re.k))),ce=Math.max(...Se.map(Re=>R(A(V),Re.k)));if(Q!==ce)return ce-Q}if(tt(ze)&&tt(Se)){let Q=Math.min(...ze.map(Re=>T(A(w),Re.k))),ce=Math.min(...Se.map(Re=>T(A(V),Re.k)));return Q!==ce?ce-Q:W(V)-W(w)}}let Pe=ze=>ze.u&&ze.u.lead?1:0;return Pe(V)-Pe(w)||W(w)-W(V)||w.be-V.be});let F=[],$=[],Ne=0,Ce=w=>{w>Ne&&(F.push({bs:Ne,be:w,toks:e.slice(Ne,w),source:"base"}),Ne=w)};for(let w of P){if(Ce(w.bs),w.kind==="conflict"){let V=ri(e,w.localHunks,w.bs,w.be),ne=ri(e,w.remoteHunks,w.bs,w.be),te=r==="local"?V:r==="both"?V.concat(ne):ne,Pe=(it,tt)=>{let Q=0;for(let ce of it)ce.be<=w.bs&&!tt.includes(ce)&&(Q+=ce.toks.length-(ce.be-ce.bs));return Q},ze=w.bs+Pe(l,w.localHunks),Se=w.bs+Pe(i,w.remoteHunks);$.push({bs:w.bs,be:w.be,ls:ze,le:ze+V.length,rs:Se,re:Se+ne.length,ms:0,me:0,base:e.slice(w.bs,w.be),local:V,remote:ne,resolved:te}),F.push({bs:w.bs,be:w.be,toks:te,source:"conflict",localHunks:w.localHunks,localToks:V,keepsLocal:r!=="remote"})}else F.push({bs:w.bs,be:w.be,toks:w.u.toks,source:w.kind==="R"?"remote":"local",localHunks:w.kind==="R"?[]:[w.u.l]});Ne=Math.max(Ne,w.be)}Ce(e.length);let Be=0,re=0;for(let w of F)w.source==="conflict"&&($[re].ms=Be,$[re].me=Be+w.toks.length,re++),Be+=w.toks.length;let Ee=new Map(a.map(w=>[w.bi,w.tok])),Ge=new Map(c.map(w=>[w.bi,w.tok])),_e=[];for(let w of F){w.source==="base"&&(w.toks=w.toks.map((V,ne)=>{let te=w.bs+ne,Pe=Ee.get(te),ze=Ge.get(te),Se=Pe&&ze?r==="remote"?ze:Pe:Pe||ze||V;return Se===V?V:{...Se,cosmetic:!0}}));for(let V of w.toks)_e.push({...V,src:w.source})}return{tokens:_e,segments:F,conflicts:$,localHunks:l,remoteHunks:i,collapsedDelta:k,samePoint:S,mapLocalOffset:Ru(e,l,F)}}function ri(e,t,n,r){let o=[],s=n;for(let l of t)o=o.concat(e.slice(s,l.bs),l.toks),s=l.be;return o.concat(e.slice(s,r))}var ti=e=>e.reduce((t,n)=>t+n.len,0);function Ru(e,t,n){let r=new Int32Array(e.length+1);for(let l=0;l<e.length;l++)r[l+1]=r[l]+e[l].len;let o=t.map(l=>({bs:r[l.bs],be:r[l.be],text:l.toks.map(i=>i.raw).join(""),ref:l})),s=n.map(l=>({bs:r[l.bs],be:r[l.be],len:ti(l.toks),source:l.source,localHunks:l.localHunks||[],localLen:l.localToks?ti(l.localToks):0,keepsLocal:l.keepsLocal,ref:l}));return l=>{let i=null,a=null,c=0,h=0,u=0;for(let d of o){let p=d.bs-u;if(l<=h+p){i=u+(l-h);break}if(h+=p,u=d.bs,l<=h+d.text.length){a=d,c=l-h,i=d.bs;break}h+=d.text.length,u=d.be}i===null&&(i=u+(l-h));let f=0;for(let d of s){if(!a&&i<=d.bs)return f;if(!(a?d.localHunks.includes(a.ref):i<d.be)){f+=d.len;continue}if(d.source==="base")return f+(i-d.bs);if(d.source==="remote")return f+d.len;if(d.source==="local")return f+Math.min(c,d.len);if(!d.keepsLocal||!a)return f+d.len;let y=d.localHunks.indexOf(a.ref),m=ti(ri(e,d.localHunks.slice(0,y),d.ref.bs,a.ref.bs));return f+Math.min(m+c,d.localLen)}return f}}function uo(e,t,n,r="remote"){if(t===n||n===e)return{text:t,conflicts:[],mapLocalOffset:g=>Math.min(g,t.length),granularity:"word"};let o=Tn(e,t,n),s=hn(e,o),l=hn(t,o),i=hn(n,o),a=s.length<=2e4&&l.length<=2e4&&i.length<=2e4?Il(s,l,i,r):null,c="word",h=s;if(!a){let g=k=>k.split(/(?<=\n)/).map(S=>({k:S,raw:S,len:S.length}));h=g(e),a=Il(h,g(t),g(n),r),c="line"}let u=g=>g.map(k=>k.raw).join(""),f=g=>{let k=[0];for(let S of g)k.push(k[k.length-1]+S.len);return k},d=f(h),p=null,y=null,m=null;if(a.conflicts.length){let g=k=>k.split(/(?<=\n)/).map(S=>({k:S,raw:S,len:S.length}));p=f(c==="line"?g(t):l),y=f(c==="line"?g(n):i),m=f(a.tokens)}return{text:u(a.tokens),conflicts:a.conflicts.map(g=>({bs:d[g.bs],be:d[g.be],ls:p[g.ls],le:p[g.le],rs:y[g.rs],re:y[g.re],ms:m[g.ms],me:m[g.me],base:u(g.base),local:u(g.local),remote:u(g.remote),resolved:u(g.resolved)})),mapLocalOffset:a.mapLocalOffset,granularity:c}}function gr(e,t,n=4e3){if(e===t)return[];let r=Tn(e,t),o=hn(e,r),s=hn(t,r),l=Yn(o,s,n),i=[0];for(let a of o)i.push(i[i.length-1]+a.len);return l.hunks.map(a=>({bs:i[a.bs],be:i[a.be],text:a.toks.map(c=>c.raw).join("")}))}function Xt(e=2e4*8){return{remaining:e,comparisons:0,sortComparisons:0,mapCells:0,mapWrites:0,coverageChecks:0}}function Hn({base:e,side:t,retained:n,transfers:r,baseAtomKey:o=i=>i.el,sideAtomKey:s=i=>i.el,budget:l=Xt()}){let i=[],a=x=>({status:"fallback",reason:x}),c=x=>x>l.remaining?!1:(l.remaining-=x,!0);if(!c((n.length+r.length)*3))return a("work-limit");for(let[x,O]of[["retained",n],["transfer",r]])for(let C of O){let{from:_,to:M,target:j}=C;if(!Number.isInteger(_)||!Number.isInteger(M)||!Number.isInteger(j)||_<0||M<=_||M>e.text.length||j<0||j+M-_>t.text.length)return a("invalid-range");i.push({...C,kind:x})}let h=Symbol(),u=x=>(O,C)=>{if(!c(1))throw h;return l.sortComparisons++,x(O,C)},f,d;try{f=i.slice().sort(u((x,O)=>x.from-O.from||x.to-O.to)),d=i.slice().sort(u((x,O)=>x.target-O.target||x.to-x.from-(O.to-O.from)))}catch(x){if(x===h)return a("work-limit");throw x}if(!c(i.length*2))return a("work-limit");for(let x=1;x<f.length;x++)if(f[x].from<f[x-1].to)return a("source-overlap");for(let x=1;x<d.length;x++)if(d[x].target<d[x-1].target+d[x-1].to-d[x-1].from)return a("target-overlap");for(let x of f){let O=x.to-x.from;if(!c(O))return a("work-limit");for(let C=0;C<O;C++){let _=x.from+C,M=x.target+C;if(l.comparisons++,e.text[_]!==t.text[M])return a("unequal-occurrence");let j=e.atomAt.get(_),I=t.atomAt.get(M);if(!!j!=!!I||j&&o(j)!==s(I))return a("different-atom")}}let p=e.text.length+t.text.length+2,y=i.reduce((x,O)=>x+(O.to-O.from)*2,2);if(!c(p+y+i.length))return a("work-limit");let m=new Int32Array(e.text.length+1).fill(-1),g=new Int32Array(t.text.length+1).fill(-1);l.mapCells+=p,l.mapWrites+=y;let k=-1,S=!0;for(let x of f){x.target<k&&(S=!1),k=x.target+x.to-x.from;for(let O=0;O<x.to-x.from;O++)m[x.from+O]=x.target+O,g[x.target+O]=x.from+O}return m[e.text.length]=t.text.length,g[t.text.length]=e.text.length,{status:"ready",runs:f,bTo:m,toB:g,monotone:S,covers:(x,O)=>{if(!c(O-x))return null;l.coverageChecks+=O-x;for(let C=x;C<O;C++)if(e.text[C]!==Tt&&!/\s/.test(e.text[C])&&m[C]<0)return!1;return!0}}}function ii({base:e,side:t,baseOf:n=()=>null,budget:r=Xt()}){if(e.text===t.text||!e.text.includes(Tt)&&!t.text.includes(Tt))return{status:"none"};let o=(e.text.length+t.text.length)*8;if(o>r.remaining)return{status:"fallback",reason:"work-limit"};r.remaining-=o,r.boundarySteps=(r.boundarySteps||0)+o;let s=(p,y)=>y<p.length&&(p[y]===Tt||/\s/.test(p[y])),l=new Map,i=Symbol(),a=(p,y)=>{let m=p.stackAt[y]||[];if(!l.has(m)){if(m.length>r.remaining)throw i;r.remaining-=m.length,r.boundarySteps+=m.length,l.set(m,m.find(g=>g.block)?.el||null)}return l.get(m)},c=[],h=(p,y)=>{let m=a(e,p),g=a(t,y),k=m&&g&&n(g)!==m?"transfer":"retained",S=c[c.length-1];S&&S.to===p&&S.target+S.to-S.from===y&&S.kind===k&&S.destination===g?S.to++:c.push({from:p,to:p+1,target:y,destination:g,kind:k})},u=0,f=0,d=!1;try{for(;u<e.text.length||f<t.text.length;){if(u<e.text.length&&f<t.text.length&&e.text[u]===t.text[f]){let S=e.atomAt.get(u),v=t.atomAt.get(f);if(!!S!=!!v||S&&n(v.el)!==S.el)return{status:"none"};h(u++,f++);continue}if(!s(e.text,u)&&!s(t.text,f))return{status:"none"};let p=u,y=f;for(;s(e.text,u);)u++;for(;s(t.text,f);)f++;let m=e.text.slice(p,u),g=t.text.slice(y,f);(m.includes(Tt)||g.includes(Tt))&&(d=!0);let k=0;for(;k<u-p&&k<f-y&&e.text[u-k-1]===t.text[f-k-1];)k++;for(let S=k;S>0;S--)h(u-S,f-S)}}catch(p){if(p===i)return{status:"fallback",reason:"work-limit"};throw p}return d?Hn({base:e,side:t,retained:c.filter(p=>p.kind==="retained"),transfers:c.filter(p=>p.kind==="transfer"),sideAtomKey:p=>n(p.el)||p.el,budget:r}):{status:"none"}}var Ll=/\s/,Vo=/\S/;function Ln(e,t,n,r,o,s,l=-1,i=-1){if(!e.length)return-1;o(r,e.length);let a=new Int32Array(e.length),c=0;for(let d=1;d<e.length;d++){for(o(r,1);c&&(o(r,1),e[c]!==e[d]);)c=a[c-1];o(r,1),e[c]===e[d]&&c++,a[d]=c}let h=-1,u=0,f=0;c=0;for(let d=0;d<t.length;d++){for(o(r,1);c&&(o(r,1),e[c]!==t[d]);)c=a[c-1];if(o(r,1),e[c]===t[d]&&c++,c!==e.length)continue;let p=d+1-e.length,y=d+1;for(c=a[c-1];u<n.length&&n[u].from<p;)o(r,1),u++;for(;f<n.length&&n[f].to<y;)o(r,1),f++;if(o(r,6),!(u===n.length||f===n.length||n[u].from!==p||n[f].to!==y||l>=0&&p<i&&y>l)){if(!s)return p;if(h>=0)return-1;h=p}}return h}function ho(e){return!e.flat.atoms.length&&!e.flat.pins?.length}function li(e,t,n,r){let o=null;for(let l of t)if(r(n,1),!(l.source!==e.source||l.side!==e.side))for(let i of l.runs){if(r(n,1),i.source!==e.source)continue;let a=Math.max(e.from,i.from),c=Math.min(e.to,i.to);a>=c||(o||(r(n,e.to-e.from),o=new Uint8Array(e.to-e.from)),r(n,c-a),o.fill(1,a-e.from,c-e.from))}if(!o)return!1;r(n,e.to-e.from);let s=!1;for(let l=e.from;l<e.to;l++)if(Vo.test(e.flat.text[l])){if(!o[l-e.from])return!1;s=!0}return s}function ai({source:e,side:t,views:n,eligible:r,blocked:o,baseId:s,model:l,tokensOf:i,budget:a,charge:c}){let{V:h,A:u,idOf:f}=n[t],d=n[1-t];if(e.nodeType!==1||u.identical.has(e)||d.A.identical.has(e)||o.has(e)||!r(e))return null;let p=h.twin(e),y=d.V.twin(e);if(!p||!y||u.map.get(e)!==p||u.reverse.get(p)!==e||d.A.map.get(e)!==y||d.A.reverse.get(y)!==e||!h.here(p)||!d.V.here(y)||!r(p)||!r(y))return null;let m=s(e);if(m!==f(p)||m!==d.idOf(y))return null;let g=l(e,null,a),k=l(p,u,a),S=l(y,d.A,a);if(!ho(g)||!ho(k)||!ho(S))return null;let v=g.flat.text,x=k.flat.text;if(c(a,v.length+x.length*3),!Vo.test(x)||x.length>=v.length)return null;let O=v.startsWith(x),C=v.endsWith(x);if(O===C)return null;let _=O?x.length:0,M=O?v.length:v.length-x.length,j=_,I=M;for(;j<I&&(c(a,1),!!Ll.test(v[j]));)j++;for(;I>j&&(c(a,1),!!Ll.test(v[I-1]));)I--;if(j===I)return null;let P=i(g,a),R=!1,T=!1;for(let A of P)c(a,1),A.from===j&&(R=!0),A.to===I&&(T=!0);return!R||!T?null:{source:e,side:t,flat:g.flat,from:_,to:M}}function jl({base:e,views:t,side:n,attempt:r,eligible:o,blocked:s,baseId:l,model:i,tokensOf:a,certificates:c,charge:h,exhausted:u,limit:f}){if(f<=0)return null;let d=Xt(f),{V:p,A:y,idOf:m}=t[n],g=t[1-n],[k,S,v,x]=r,O=null;try{for(let C=k;C<=S;C++){h(d,1);let _=e[C];if(_.nodeType!==1||y.identical.has(_)||g.A.identical.has(_)||s.has(_)||!o(_))continue;let M=ai({source:_,side:n,views:t,eligible:o,blocked:s,baseId:l,model:i,tokensOf:a,budget:d,charge:h});if(!M||li(M,c,d,h))continue;let{flat:j,from:I,to:P}=M;h(d,(P-I)*2);let R=j.text.slice(I,P).trim();for(let T=v;T<=x;T++){h(d,1);let A=p.units[T],W=p.baseOf(A);if(!W||W===_||W.nodeType!==1||A.nodeType!==1||W.parentNode!==_.parentNode||A.parentNode!==y.map.get(_).parentNode||y.map.get(W)!==A||y.reverse.get(A)!==W||s.has(W)||!o(W)||!o(A)||l(W)!==m(A))continue;let F=i(W,null,d),$=i(A,y,d);if(!ho(F)||!ho($))continue;let Ne=F.flat.text,Ce=$.flat.text;if(h(d,Ne.length),!Vo.test(Ne)||Ce.length<=Ne.length)continue;let Be=a($,d),re=Ln(Ne,Ce,Be,d,h,!0);if(!(re<0)&&!(Ln(R,Ce,Be,d,h,!1,re,re+Ne.length)<0)){(O||=[]).push(M);break}}}}catch(C){if(C!==u)throw C}return O}function Pl(e,t,n,r,o,s,l){if(s==="both"||n.atoms.length||r.atoms.length||o.atoms.length)return s;let i=s==="remote";if(i?l.rss!==l.rse||l.lss===l.lse||l.local===l.base:l.lss!==l.lse||l.rss===l.rse||l.remote===l.base)return s;for(let a of e){if(a.source!==t||a.side!==(i?1:0)||a.flat.text!==n.text||a.flat.nodes.length!==n.nodes.length||l.be<=a.from||l.bs>=a.to)continue;let c=!0;for(let u=0;u<n.nodes.length;u++){let f=a.flat.nodes[u],d=n.nodes[u];if(f.node!==d.node||f.s!==d.s||f.e!==d.e){c=!1;break}}if(!c)continue;let h=!1;for(let u=l.bs;u<l.be;u++)if(Vo.test(n.text[u])){if(u<a.from||u>=a.to){c=!1;break}h=!0}if(c&&h)return i?"local":"remote"}return s}var zn="\uFFFC";var Iu={caret:0},En=new Set("A ABBR B BDI BDO CITE CODE DATA DEL DFN EM FONT I INS KBD MARK Q S SAMP SMALL SPAN STRIKE STRONG SUB SUP TIME TT U VAR".split(" ")),zl=new Set(["BR","WBR","IMG"]),ci=new Set("ADDRESS ARTICLE ASIDE AUDIO BLOCKQUOTE BODY CANVAS CAPTION CENTER COL COLGROUP DD DETAILS DIALOG DIR DIV DL DT FIELDSET FIGCAPTION FIGURE FOOTER FORM FRAME FRAMESET H1 H2 H3 H4 H5 H6 HEAD HEADER HGROUP HR HTML IFRAME LEGEND LI MAIN MATH MENU NAV NOSCRIPT OBJECT OL OPTGROUP OPTION P PRE SCRIPT SECTION SELECT STYLE SUMMARY SVG TABLE TBODY TD TEMPLATE TEXTAREA TFOOT TH THEAD TITLE TR UL VIDEO".split(" "));function Vn(e,t={}){if(e.nodeType===3)return!0;if(e.nodeType!==1)return!1;if(t.ignored&&t.ignored(e)||zl.has(e.tagName))return!0;if(!En.has(e.tagName))return!ci.has(e.tagName);if(t.remoteWins&&t.remoteWins(e))return!1;let n=t.inlineCache&&t.inlineCache.get(e);if(n!==void 0)return n;let r=!0;for(let o of e.childNodes)if(!Vn(o,t)){r=!1;break}return t.inlineCache&&t.inlineCache.set(e,r),r}function Lu(e){return!e.firstChild||e.textContent===""&&!e.querySelector("br,img,wbr")}function on(e,t={}){let n={text:"",marks:[],atoms:[],nodes:[],stackAt:[],pins:[],placeholder:null,via:null},r=(o,s)=>{for(let l of o){if(l.nodeType===3){let u=l.nodeValue;if(!u)continue;n.nodes.push({node:l,s:n.text.length,e:n.text.length+u.length}),n.text+=u;for(let f=0;f<u.length;f++)n.stackAt.push(s);continue}if(l.nodeType!==1)continue;if(t.ignored&&t.ignored(l)){n.pins.push({el:l,i:n.text.length});continue}if(t.skip&&t.skip.has(l))continue;let i=t.via&&t.via(l)||l;i!==l&&(n.via||(n.via=new Map)).set(i,l);let a=l.tagName;if(t.blocks&&t.blocks.has(l)){n.text.length&&n.text[n.text.length-1]!==Tt&&(n.stackAt.push(s),n.text+=Tt);let u={el:l,tag:a,from:n.text.length,to:-1,depth:s.length,block:!0};n.marks.push(u);let f=s.concat([u]);r(i.childNodes,f),n.stackAt.push(f),n.text+=Tt,u.to=n.text.length;continue}let c=En.has(a)&&Lu(i);if(zl.has(a)||!En.has(a)||t.remoteWins&&t.remoteWins(l)||t.atomize&&t.atomize(l)||c){n.atoms.push({i:n.text.length,el:l,key:c?a+":empty":a,stack:s}),n.stackAt.push(s),n.text+=zn;continue}let h={el:l,tag:a,from:n.text.length,to:-1,depth:s.length};n.marks.push(h),r(i.childNodes,s.concat([h])),h.to=n.text.length}};if(r(e,[]),n.atoms.length===1&&n.atoms[0].el.tagName==="BR"&&n.marks.length===0&&Go(n).trim()===""){let o=n.atoms[0];n.placeholder=o.el,n.text=n.text.slice(0,o.i)+n.text.slice(o.i+1),n.stackAt.splice(o.i,1);for(let s of n.nodes)s.s>o.i&&(s.s--,s.e--);n.atoms=[]}return n.atomAt=new Map(n.atoms.map(o=>[o.i,o])),n}function ju(e){return e.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/ /g,"&nbsp;")}function Pu(e){let t="<"+e.tagName.toLowerCase();for(let n of e.attributes)t+=` ${n.name}="${n.value.replace(/"/g,"&quot;")}"`;return t+">"}function Rr(e,t,n){let r="",o=[];for(let s=t;s<n;s++){let l=e.stackAt[s],i=0;for(;i<o.length&&i<l.length&&o[i]===l[i];)i++;for(;o.length>i;)r+=`</${o.pop().tag.toLowerCase()}>`;for(;o.length<l.length;){let c=l[o.length];r+=Pu(c.el),o.push(c)}let a=e.atomAt.get(s);r+=a?a.el.outerHTML:e.text[s]===Tt?"":ju(e.text[s])}for(;o.length;)r+=`</${o.pop().tag.toLowerCase()}>`;return r}function Du(e,t){let n=[...e.el.attributes].filter(r=>!t(e.el,r.name)).map(r=>r.name+"="+r.value).sort().join("");return e.tag+"|"+n}function Vl(e,t){let n=[...e.attributes].filter(r=>!t(e,r.name)).map(r=>r.name+"="+r.value).sort().join("");return e.tagName+"|"+n+"|"+e.innerHTML}function Dl(e,t=()=>!1){let n=new Map,r=s=>{let l=n.get(s);return l===void 0&&(l="{"+s.map(i=>Du(i,t)).sort().join(",")+"}",n.set(s,l)),l},o="";for(let s=0;s<e.text.length;s++){let l=e.atomAt.get(s);o+=(l?"["+Vl(l.el,t)+"]":e.text[s])+r(e.stackAt[s])}return e.text.length===0&&e.placeholder&&(o+="[br]"),o}function Mr(e,t,n,r=o=>o.key){let o=[],s=e.text,l=0,i=a=>{if(a<=l)return;let c=s.slice(l,a);if(n)for(let h of c.split(/(?<=\n)/))o.push({k:h,raw:h,len:h.length});else for(let h of hn(c,t))o.push(h)};for(let a of e.atoms)i(a.i),o.push({k:"\0"+r(a),raw:zn,len:1,atom:!0}),l=a.i+1;return i(s.length),o}function Go(e){if(!e.atoms.length)return e.text;let t="",n=0;for(let r of e.atoms)t+=e.text.slice(n,r.i),n=r.i+1;return t+e.text.slice(n)}var Ir=e=>{let t=new Int32Array(e.length+1);for(let n=0;n<e.length;n++)t[n+1]=t[n]+e[n].len;return t};function Wo(e,t,n,r){let o=Ir(t),s=Ir(n),l=[],i=0,a=0;for(let h of r.hunks){a+=h.bs-i;let u=a+h.toks.length;l.push({bs:o[h.bs],be:o[h.be],ss:s[a],se:s[u],text:e.text.slice(s[a],s[u]),toks:h.toks,lead:!!h.lead}),a=u,i=h.be}let c=new Map;for(let h of r.cosmetic)c.set(h.bi,h.tok.raw);return{hunks:l,respell:c}}function Fl(e,t,n){let r=l=>l===Tt||/\s/.test(l),o=l=>l.replace(/[\u001E\s]/g,""),s=[];for(let l of e){let i=t.slice(l.bs,l.be),a=n.slice(l.ss,l.se);if(!i.includes(Tt)&&!a.includes(Tt)||i.includes(zn)||a.includes(zn)||o(i)!==o(a)){s.push(l);continue}let c=0,h=0;for(;;){let u=c,f=h;for(;u<i.length&&r(i[u]);)u++;for(;f<a.length&&r(a[f]);)f++;let d=c,p=h;for(;d<u&&p<f&&i[d]===a[p];)d++,p++;let y=u,m=f;for(;y>d&&m>p&&i[y-1]===a[m-1];)y--,m--;if(y>d||m>p){let g=a.slice(p,m);s.push({bs:l.bs+d,be:l.bs+y,ss:l.ss+p,se:l.ss+m,text:g,toks:[...g].map(k=>({k,raw:k,len:1})),lead:l.lead})}if(u>=i.length)break;c=u+1,h=f+1}}return s}function Bl(e,t,n){let r=new Int32Array(t+1).fill(-1),o=new Int32Array(n+1).fill(-1),s=0,l=0,i=a=>{for(;s<a;)r[s]=l,o[l]=s,s++,l++};for(let a of e)i(a.bs),s=a.be,l=a.se;return i(t),r[t]=l,o[l]=t,{bTo:r,toB:o}}function ql(e,t,n){let r=[],o=0,s=0,l=(i,a)=>{if(o===i&&s===a)return;let c=t.text.slice(s,a);r.push({bs:o,be:i,ss:s,se:a,text:c,toks:hn(c,Tn(c)),lead:!1})};for(let i of n.runs)l(i.from,i.target),o=i.to,s=i.target+i.to-i.from;return l(e.text.length,t.text.length),{hunks:r,respell:new Map}}function Ul(e,t,n,r){let o=Ir(t),s=Ir(n),l=(a,c)=>{let h=0,u=a.length;for(;h<u;){let f=h+u>>>1;a[f]<c?h=f+1:u=f}return a[h]===c?h:-1};for(let a of e.hunks)if(l(o,a.bs)<0||l(o,a.be)<0)return null;if(e.hunks.some(a=>l(s,a.ss)<0||l(s,a.se)<0)){if(!r)return null;let a=[];for(let f of e.hunks)a.push(f.ss,f.se);let c=[],h=0,u=0;for(let f of n){let d=u+f.len;for(;h<a.length&&a[h]<=u;)h++;let p=u;for(;h<a.length&&a[h]<d;){let y=a[h++];if(y>p){let m=f.raw.slice(p-u,y-u);c.push(...hn(m,Tn(m))),p=y}}if(p===u)c.push(f);else{let y=f.raw.slice(p-u);c.push(...hn(y,Tn(y)))}u=d}n=c,s=Ir(n)}let i=[];for(let a of e.hunks){let c=l(o,a.bs),h=l(o,a.be),u=l(s,a.ss),f=l(s,a.se);if(c<0||h<0||u<0||f<0)return null;i.push({bs:c,be:h,toks:n.slice(u,f),gap:[],group:i.length})}return{parts:i,cosmeticEq:[],tokens:n}}function fi(e,t,n,r={},o=null){return Wl(e,t,n,r.base,r.local,r.remote,o,{})}function Wl(e,t,n,r,o,s,l,i){let a=Tn(Go(e),Go(t),Go(n)),c=Mr(e,a,!1,r),h=Mr(t,a,!1,o),u=Mr(n,a,!1,s),f=c.length>2e4||h.length>2e4||u.length>2e4;f&&(c=Mr(e,a,!0,r),h=Mr(t,a,!0,o),u=Mr(n,a,!0,s));let d=l?.local?ql(e,t,l.local):null,p=l?.remote?ql(e,n,l.remote):null,y=d?Ul(d,c,h,!f):Yn(c,h),m=p?Ul(p,c,u,!f):Yn(c,u);d&&y&&(h=y.tokens),p&&m&&(u=m.tokens);let g,k;if(y&&m){let S=oi(y,m,c);g=Wo(t,c,h,{hunks:S.lh,cosmetic:S.cosL}),k=Wo(n,c,u,{hunks:S.rh,cosmetic:S.cosR})}else g=d||Wo(t,c,h,y),k=p||Wo(n,c,u,m);return g.hunks=Fl(g.hunks,e.text,t.text),k.hunks=Fl(k.hunks,e.text,n.text),i.base=e,i.local=t,i.remote=n,i.lines=f,i.baseTokens=c,i.localEdits=g,i.remoteEdits=k,i.localMap=Bl(g.hunks,e.text.length,t.text.length),i.remoteMap=Bl(k.hunks,e.text.length,n.text.length),i.full=null,i}function $l(e,t){if(e.size!==t.size)return!1;for(let n of e)if(!t.has(n))return!1;return!0}var Lr=/\s/;function Ko(e,t,n){for(let r=t;r<n;r++)if(!Lr.test(e[r]))return!1;return!0}function Fu(e,t,n){let r=e.cache[n]||(e.cache[n]=new Map);if(r.has(t))return r.get(t);let o=n===0?"local":"remote",s=n===0?"remote":"local",l=t.baseMark,i=t[s+"Mark"],a=!t.block&&!t[o]&&!!i&&l.to>l.from;if(a){let c=n===0?e.ML:e.MR,h=n===0?e.MR:e.ML,u=n===0?e.fr:e.fl,f=!1;for(let d=l.from;d<l.to;d++){if(c.bTo[d]>=0){a=!1;break}h.bTo[d]<0&&!Lr.test(e.fb.text[d])&&(f=!0)}if(a&&!f){for(let d=i.from;d<i.to;d++)if(h.toB[d]<0&&!Lr.test(u.text[d])){f=!0;break}}a&&=f}return r.set(t,a),a}function Hl(e,t,n,r,o,s,l,i,a){let c=i===0?e.fl:e.fr,h=null;for(let u=n;u<r;u++){let f=t[u];if(!Ko(c.text,f.ss,f.se))return null;if(Ko(e.fb.text,f.bs,f.be)){if(f.bs<f.be&&f.ss<f.se||Lr.test(e.fb.text[f.bs-1]||"")||Lr.test(e.fb.text[f.be]||""))continue;return null}let d=!1;for(let p=f.bs;p<f.be;p++){if(Lr.test(e.fb.text[p]))continue;let y=null;for(let m of e.fb.stackAt[p]){let g=e.byEl.get(m.el);if(g&&Fu(e,g,i)){y=g;break}}if(!y)return null;(h||(h=new Set)).add(y),d=!0}if(!d)return null}if(!h){if((i===0?"local":"remote")!==a)return null;let u=i===0?e.fr:e.fl,f=!1;for(let d=s;d<l;d++){let p=o[d];if(!Ko(e.fb.text,p.bs,p.be))return null;Ko(u.text,p.ss,p.se)||(f=!0)}if(!f)return null}return h||0}function br(e){let{out:t,policy:n="remote",L:r,R:o}=e,s=e.provenance||new WeakMap,l=e.textMappers||new WeakMap,i=e.conflicts||[],a=e.decisions||[],c=i.length,h=e.conflict||(b=>i.push(b)),u={textNodes:null,text:"",out:null,atomOut:new Map,breakOut:new Map,node:e.node||null},f=[],d=!!(r&&r.reverse&&r.map&&o&&o.reverse&&o.map),p={base:null,local:null,remote:null};if(!e.prepared&&d&&e.moveIn){let b=Te=>Ke=>Te.some(je=>je===Ke||je.nodeType===1&&je.contains(Ke)),L=b(e.local),q=b(e.remote),U=b(e.base),X=new Set,me=Te=>{if(!En.has(Te.tagName))return;let Ke=r.map.get(Te),je=o.map.get(Te);(Ke&&!L(Ke)||je&&!q(je))&&X.add(Te);for(let Ye of Te.children)me(Ye)};for(let Te of e.base)Te.nodeType===1&&me(Te);let ve=Te=>Ke=>{if(!En.has(Ke.tagName))return!1;let je=Te.reverse.get(Ke);return!!je&&(X.has(je)||!U(je))};X.size&&(p.base=Te=>X.has(Te)),p.local=ve(r),p.remote=ve(o)}let y={base:new Set,local:new Set,remote:new Set};if(!e.prepared&&d&&e.moveIn){let b=U=>X=>U.some(me=>me===X||me.nodeType===1&&me.contains(X)),L=b(e.local),q=b(e.remote);for(let U of on(e.base,{...e,atomize:p.base}).atoms){let X=r.map.get(U.el),me=o.map.get(U.el),ve=!!X&&!L(X),Te=!!me&&!q(me);!ve&&!Te||(ve&&e.movePlanned?.(U.el,"local",X,null),Te&&e.movePlanned?.(U.el,"remote",me,null),y.base.add(U.el),X&&!ve&&y.local.add(X),me&&!Te&&y.remote.add(me),L(U.el)&&y.local.add(U.el),q(U.el)&&y.remote.add(U.el))}}let m=e.prepared?.base||on(e.base,{...e,atomize:p.base,skip:y.base}),g=e.prepared?.local||on(e.local,{...e,atomize:p.local,skip:y.local}),k=e.prepared?.remote||on(e.remote,{...e,atomize:p.remote,skip:y.remote}),S=new Map(m.atoms.map(b=>[b.el,b])),v={},x=b=>e.prepared?e.prepared.full?.(b)||null:y[b].size?(v[b]||(v[b]=on(e[b],{...e,atomize:p[b]})),v[b]):null,O=(b,L,q)=>{L.namespaceURI?b.setAttributeNS(L.namespaceURI,L.name,q):b.setAttribute(L.name,q)},C=(b,L,q,U)=>{if(!L&&(!q||!U)){for(let me of(q||U).attributes)O(b,me,me.value);return}let X=new Map;for(let me of[L,q,U])if(me)for(let ve of me.attributes)X.set(ve.name,ve);for(let[me,ve]of X){let Te=L?L.getAttribute(me):null,Ke=q?q.getAttribute(me):Te,je=U?U.getAttribute(me):Te,Ye;Ke===je?Ye=Ke:Ke===Te?(Ye=je,a.push({kind:"attr",el:b,name:me,source:"remote"})):je===Te?(Ye=Ke,a.push({kind:"attr",el:b,name:me,source:"local"})):(Ye=n==="local"?Ke:je,h({kind:"attr",el:b,name:me,base:Te,local:Ke,remote:je,resolved:Ye},{el:b,sample:ve}),a.push({kind:"attr",el:b,name:me,source:"both"})),Ye!=null&&O(b,ve,Ye)}},_=(b,L,q,U)=>b&&e.mergeAttrs?e.mergeAttrs(b,L,q,U):C(U,b,L,q),M=e.mergeElement||((b,L,q)=>{let U=t.createElement(b.tagName);_(b,L,q,U);let X=L||b,me=q||b,ve=n==="local"?X.isEqualNode(b)?me:X:me.isEqualNode(b)?X:me;for(let Te of ve.childNodes)U.appendChild(t.importNode(Te,!0));return s.set(U,{base:b,local:L,remote:q}),U}),j=e.cloneUnit||((b,L)=>{let q=t.importNode(b,!0);return s.set(q,{base:null,local:L==="local"?b:null,remote:L==="remote"?b:null}),q}),I=e.atomKey||(b=>Vl(b,()=>!1)),P=(b,L)=>{let q=new Map;for(let U of b.atoms)if(e.remoteWins&&e.remoteWins(U.el)&&En.has(U.el.tagName))q.set(U,"w"+U.el.tagName+"#"+(U.el.id||""));else if(!d)q.set(U,U.key);else if(b===m)q.set(U,"="+I(U.el));else{let X=L.reverse.get(U.el),me=X?S.get(X):null;me?q.set(U,"="+I(me.el)):X?q.set(U,"m"+I(U.el)):q.set(U,"="+I(U.el))}return U=>q.get(U)},R=P(m,null),T=P(g,r),A=P(k,o),W=e.certifiedOrigins?e.certifiedOrigins(m,g,k,R,T,A):null;if(W?.fallback)return null;if(!W&&!e.prepared&&e.blocks){let b=Xt(),L=ii({base:m,side:g,baseOf:U=>r?.reverse?.get(U)||null,budget:b}),q=ii({base:m,side:k,baseOf:U=>o?.reverse?.get(U)||null,budget:b});(L.status==="ready"||q.status==="ready")&&(W={local:L.status==="ready"?L:null,remote:q.status==="ready"?q:null})}let F=e.prepared||Wl(m,g,k,R,T,A,W,u),$=F.lines,Ne=F.baseTokens,Ce=F.localEdits,Be=F.remoteEdits,re=F.localMap,Ee=F.remoteMap,Ge=m.text.length,_e=b=>new Map(b.atoms.map(L=>[L.el,L])),w=_e(g),V=_e(k),ne=(b,L,q)=>{let U=new Set;if(!d)return U;for(let X of b.atoms){let me=S.get(L.reverse.get(X.el));me&&q.bTo[me.i]<0&&U.add(me)}return U},te=ne(g,r,re),Pe=ne(k,o,Ee),ze=b=>!Vn(b,{...e,remoteWins:null}),Se=new Set;if(d)for(let b of m.atoms){if(!ze(b.el))continue;let L=r.map.get(b.el)||null,q=o.map.get(b.el)||null,U=L&&!q?L:q&&!L?q:null;U&&(w.has(U)||V.has(U))&&!U.isEqualNode(b.el)&&Se.add(b)}let it=1,tt=(b,L)=>({id:it++,tag:b,base:null,local:null,remote:null,rank:L}),Q=new Map,ce=[];for(let b of m.marks){let L=tt(b.tag,b.depth);L.block=!!b.block,L.base=b.el,L.baseMark=b,Q.set(b.el,L),ce.push(L)}let Re=(b,L)=>{let q=-1,U=-1;for(let X=b.from;X<b.to;X++){let me=L[X];me>=0&&(q<0&&(q=me),U=me+1)}return q<0?null:[q,U]},Ue=(b,L,q,U)=>{for(let X of b.marks){let me=q?q.reverse.get(X.el):null;me&&q.identical.has(me)&&q.pairIdenticalChildren&&q.pairIdenticalChildren(me);let ve=me?Q.get(me):null;if(ve&&ve[L]&&(ve=null),!ve){let Te=Re(X,U),Ke=0;if(Te)for(let je of ce){if(je.tag!==X.tag||je[L]||!!je.block!=!!X.block)continue;let Ye=Math.min(Te[1],je.baseMark.to)-Math.max(Te[0],je.baseMark.from);(Ye>Ke||Ye===Ke&&Ye>0&&Math.abs(je.rank-X.depth)<Math.abs(ve.rank-X.depth))&&(ve=je,Ke=Ye)}}ve||(ve=tt(X.tag,X.depth),ve.block=!!X.block,ve.new=L),ve[L]=X.el,ve[L+"Mark"]=X,Q.set(X.el,ve)}};Ue(g,"local",r,re.toB),Ue(k,"remote",o,Ee.toB);let qe=b=>b.merged||b,ot=b=>{let L=new Set;for(let q of b)q.block||L.add(Q.get(q.el));return L},xt=new Map,kt=b=>{let L=xt.get(b);return L||(L=ot(b),xt.set(b,L)),L},Ct=(b,L)=>{let q=[],U=null;for(let X=0;X<Ge;X++){let me=L[X];if(me<0){U&&q.push(U),U=null;continue}let ve=kt(m.stackAt[X]),Te=kt(b.stackAt[me]),Ke=new Set,je=new Set;for(let Ye of Te)ve.has(Ye)||Ke.add(Ye);for(let Ye of ve)Te.has(Ye)||je.add(Ye);if(!Ke.size&&!je.size){U&&q.push(U),U=null;continue}if(U&&$l(U.added,Ke)&&$l(U.removed,je)){U.be=X+1;continue}U&&q.push(U),U={bs:X,be:X+1,added:Ke,removed:je}}return U&&q.push(U),q},dt=Ct(g,re.bTo),St=Ct(k,Ee.bTo),ht=b=>b.be>b.bs?[b.bs,b.be-1]:[b.bs-1,b.bs],H=(b,L)=>{if(Ge===0)return null;let[q,U]=ht(b);for(let X of L){if(X.be<=q)continue;if(X.bs>U)break;let me=X.bs<=q&&U<X.be;return me&&b.text===""&&X.bs===b.bs&&X.be===b.be?"straddle":me?X:b.be>b.bs?"straddle":null}return null},ie=b=>b.bs===b.be,pe=(b,L,q=null)=>{let U=!1;for(let X=b.bs;X<b.be;X++){let me=m.text[X];if(me===Tt)U=!0;else if(!/\s/.test(me))return!1}for(let X=b.ss;X<b.se;X++){let me=L.text[X];if(me===Tt)U=!0;else if(!/\s/.test(me)){let ve=q&&e.scopeUnits&&ie(b)&&L.atomAt.get(X);if(!ve||!ze(ve.el)||q.ss!==q.se||q.bs>=q.be)return!1;for(let Ke=q.bs;Ke<q.be;Ke++)if(!/\s/.test(m.text[Ke]))return!1;let Te=L===g?1:2;if(!e.scopeUnits[Te].includes(ve.el)||(Te===1?r:o)?.reverse.has(ve.el))return!1;U=!0}}return U},ge=(b,L)=>b.bs<L.be&&L.bs<b.be,Ae=(b,L)=>b.bs<=L.be&&L.bs<=b.be&&ie(b)!==ie(L),N=(b,L)=>m.text.slice(b.bs,b.be).includes(Tt)||L.text.slice(b.ss,b.se).includes(Tt),D=b=>{if(ie(b))return!1;let L=b.bs,q=b.be;for(;L>0&&/\s/.test(m.text[L-1]);)L--;for(;q<m.text.length&&/\s/.test(m.text[q]);)q++;return(L===0||m.text[L-1]===Tt)&&(q===m.text.length||m.text[q]===Tt)},Y=(b,L)=>!N(b,L)&&!D(b),J=(b,L)=>ge(b,L)||Ae(b,L)&&!(b.transferIn||b.transferOut||L.transferIn||L.transferOut)&&!(pe(b,g,L)&&Y(L,k))&&!(pe(L,k,b)&&Y(b,g)),se=(b,L)=>{if(b.bs!==L.bs||b.be!==L.be||b.toks.length!==L.toks.length)return!1;let q=b.ss,U=L.ss;for(let X=0;X<b.toks.length;X++){let me=b.toks[X],ve=L.toks[X];if(me.k!==ve.k||me.atom&&!g.atomAt.get(q).el.isEqualNode(k.atomAt.get(U).el))return!1;q+=me.len,U+=ve.len}return!0},Fe=(b,L,q,U)=>{for(let X of m.atoms){if(X.i<b.bs||X.i>=b.be||U.has(X)||Se.has(X))continue;let me=L.bTo[X.i],ve=me>=0?q.atomAt.get(me):null;if(ve&&!ve.el.isEqualNode(X.el))return!0}return!1},ee=[],Me=null,Ve=null,Ie=Ce.hunks,ke=Be.hunks,B=0,G=0,he=0,be=0,fe=0,we=b=>{b>he&&(ee.push({src:"base",from:he,to:b,dL:be,dR:fe}),he=b)};for(;B<Ie.length||G<ke.length;){let b=Ie[B],L=ke[G],q=!!b&&(!L||b.bs<L.bs||b.bs===L.bs&&b.be<=L.be&&!L.lead);if(b&&L&&b.bs===L.bs&&ie(b)&&ie(L)){let Gt=pe(b,g),fo=pe(L,k);Gt!==fo&&(q=fo)}let U=q?b:L,X=q?L:b,me=!!X&&se(b,L),ve=!!X&&(q?!!Ie[B+1]&&se(Ie[B+1],L):!!ke[G+1]&&se(b,ke[G+1])),Te=!!X&&!me&&!ve&&(Ge===0||J(b,L)),Ke=Te,je=H(U,q?St:dt);if(je==="straddle"&&(Ke=!0),!Ke&&U.be>U.bs&&(Ke=Fe(U,q?Ee:re,q?k:g,q?te:Pe)),!Ke&&me){we(U.bs),ee.push({src:"both",lfrom:b.ss,rfrom:L.ss,len:U.text.length,owner:b.owner||L.owner||null,transfer:b.transferIn||L.transferIn||null}),he=U.be,be+=U.text.length-(U.be-U.bs),fe+=U.text.length-(U.be-U.bs),B++,G++;continue}if(!Ke){we(U.bs),ee.push({src:q?"local":"remote",from:U.ss,to:U.se,inherit:je&&je!=="straddle"?je:null,owner:U.owner||null,transfer:U.transferIn||null}),he=U.be,q?(be+=U.text.length-(U.be-U.bs),B++):(fe+=U.text.length-(U.be-U.bs),G++);continue}let Ye=U.bs,yt=U.be,ut=B,gt=G,Vt=Gt=>Gt.bs<yt&&Gt.be>Ye||ie(Gt)&&(Gt.bs===Ye||Gt.bs===yt);q?ut++:gt++,Te&&(Ye=Math.min(Ye,X.bs),yt=Math.max(yt,X.be),q?gt++:ut++);let $t=!0;for(;$t;){for($t=!1;ut<Ie.length&&Vt(Ie[ut]);)Ye=Math.min(Ye,Ie[ut].bs),yt=Math.max(yt,Ie[ut].be),ut++,$t=!0;for(;gt<ke.length&&Vt(ke[gt]);)Ye=Math.min(Ye,ke[gt].bs),yt=Math.max(yt,ke[gt].be),gt++,$t=!0}let kn=Ye+be,un=Ye+fe,An=yt-Ye,Cn=yt-Ye;for(let Gt=B;Gt<ut;Gt++)An+=Ie[Gt].text.length-(Ie[Gt].be-Ie[Gt].bs);for(let Gt=G;Gt<gt;Gt++)Cn+=ke[Gt].text.length-(ke[Gt].be-ke[Gt].bs);let Un=kn+An,$n=un+Cn;if(we(Ye),B<ut&&G<gt&&!W&&!e.prepared&&!e.nativeTransfers&&!e.sourceRetentions&&!m.atoms.length&&!g.atoms.length&&!k.atoms.length&&!m.pins.length&&!g.pins.length&&!k.pins.length){Me||={fb:m,fl:g,fr:k,ML:re,MR:Ee,byEl:Q,cache:[null,null]};let Gt=Hl(Me,Ie,B,ut,ke,G,gt,0,n),fo=Hl(Me,ke,G,gt,Ie,B,ut,1,n);if(Gt===null!=(fo===null)){let Hs=Gt!==null,Al=Hs?Gt:fo;if(Al){Ve||=new Map;for(let ru of Al)Ve.set(ru,Hs?"local":"remote")}ee.push(Hs?{src:"remote",from:un,to:$n}:{src:"local",from:kn,to:Un}),he=yt,be+=An-(yt-Ye),fe+=Cn-(yt-Ye),B=ut,G=gt;continue}}let nn={kind:"text",node:e.node||null,base:Rr(m,Ye,yt),local:Rr(g,kn,Un),remote:Rr(k,un,$n),resolved:null,range:null,bs:Ye,be:yt,lss:kn,lse:Un,rss:un,rse:$n},mr=e.sourceRetentions?Pl(e.sourceRetentions,e.scope?.base,m,g,k,n,nn):n;nn.resolved=mr==="local"?nn.local:mr==="remote"?nn.remote:nn.local+nn.remote,mr!=="remote"&&ee.push({src:"local",from:kn,to:Un,conflict:nn}),mr!=="local"&&ee.push({src:"remote",from:un,to:$n,conflict:nn});let pr={site:"inline",policy:mr,fb:m,fl:g,fr:k,scope:e.scope||null,synthetic:!!e.synthetic,full:x,merged:u};f.push(pr),h(nn,pr),he=yt,be+=An-(yt-Ye),fe+=Cn-(yt-Ye),B=ut,G=gt}we(Ge);let oe=m.text,K=[];if(Ce.respell.size||Be.respell.size){let b=Ir(Ne),L=[];for(let q=0;q<Ne.length;q++){let U=Ne[q].raw,X=Ce.respell.get(q)??U,me=Be.respell.get(q)??U;(X!==U||me!==U)&&K.push([b[q],X!==U&&me!==U?"both":X!==U?"local":"remote"]),L.push(X===me?X:X===U?me:me===U||n==="local"?X:me)}oe=L.join("")}let ue="",Le=[],De=[],We=[],Oe=[];for(let b of ee){let L=ue.length;if(b.src==="base"){for(let q=b.from;q<b.to;q++)Le.push(q),De.push(e.nativeTransfers?re.bTo[q]:q+b.dL),We.push(e.nativeTransfers?Ee.bTo[q]:q+b.dR),Oe.push(b);ue+=oe.slice(b.from,b.to)}else if(b.src==="both"){for(let q=0;q<b.len;q++){let U=b.transfer&&(b.transfer.side==="remote"?b.rfrom+q:b.lfrom+q);Le.push(b.transfer&&U>=b.transfer.ss&&U<b.transfer.se?b.transfer.bs+U-b.transfer.ss:-1),De.push(b.lfrom+q),We.push(b.rfrom+q),Oe.push(b)}ue+=g.text.slice(b.lfrom,b.lfrom+b.len)}else{let q=b.src==="local"?g:k,U=b.transfer&&e.nativeTransfers.byOrigin[b.src==="local"?"remote":"local"].get(b.transfer.key);for(let X=b.from;X<b.to;X++){let me=b.transfer&&X>=b.transfer.ss&&X<b.transfer.se?b.transfer.bs+X-b.transfer.ss:-1,ve=me>=0&&(!U||U.destination===b.owner)?(b.src==="local"?Ee:re).bTo[me]:-1;Le.push(me),De.push(b.src==="local"?X:ve),We.push(b.src==="remote"?X:ve),Oe.push(b)}ue+=q.text.slice(b.from,b.to)}b.ms=L,b.me=ue.length,b.conflict&&(b.conflict.range||(b.conflict.range=[L,L]),b.conflict.range[1]=ue.length)}let Ze=ue.length,st=new Int32Array(Ge+1).fill(-1),E=new Int32Array(g.text.length+1).fill(-1),z=new Int32Array(k.text.length+1).fill(-1);for(let b=0;b<Ze;b++)Le[b]>=0&&(st[Le[b]]=b),De[b]>=0&&(E[De[b]]=b),We[b]>=0&&(z[We[b]]=b);let Z=(b,L)=>{let q=-1,U=-1;for(let X=b.from;X<b.to;X++){let me=L[X];me>=0&&(q<0&&(q=me),U=me+1)}return q<0?null:[q,U]},ye=[],de=[];for(let b of new Set(Q.values()))b.new==="local"?ye.push(b):b.new==="remote"&&de.push(b);let le=(b,L)=>{b.remote=L.remote,b.remoteMark=L.remoteMark,b.new="both",L.merged=b,Q.set(L.remote,b)};if(ye.length&&de.length){let b=e.idOf;for(let L of ye){let q=b?b.local(L.local):null;if(!q)continue;let U=de.find(X=>!X.merged&&X.tag===L.tag&&!!X.block==!!L.block&&b.remote(X.remote)===q);U&&le(L,U)}for(let L of ye){if(L.remote)continue;let q=Z(L.localMark,E);if(q)for(let U of de){if(U.merged||U.tag!==L.tag||!!U.block!=!!L.block)continue;let X=Z(U.remoteMark,z);if(X&&Math.min(q[1],X[1])-Math.max(q[0],X[0])>0){le(L,U);break}}}}xt.clear();let ae=b=>{for(let L of b)if(L.block)return qe(Q.get(L.el));return null},$e=m.marks.some(b=>b.block)||g.marks.some(b=>b.block)||k.marks.some(b=>b.block),Je=new Array(Ze).fill(null),He=new Set;if(e.nativeTransfers)for(let b=0;b<Ze;b++){let L=Oe[b].owner;Je[b]=L?qe(Q.get(L)):Le[b]>=0?ae(m.stackAt[Le[b]]):null}else if($e){let b=(je,Ye,yt)=>{let ut=new Set([je,Ye,yt]);ut.delete(null);let gt=[];for(let $t of ut){let kn=$t===je,un=$t===Ye,An=$t===yt;(un===An?un:un===kn?An:un)&&gt.push($t)}if(gt.length<=1)return gt[0]||null;let Vt=n==="local"?Ye:yt;return gt.includes(Vt)?Vt:gt[0]},L=(je,Ye)=>Ye>=0?ae(je.stackAt[Ye]):null,q=new Map;for(let je=0;je<Ze;je++){if(ue[je]!==Tt)continue;let Ye=Le[je]>=0?L(m,Le[je]):null,yt=L(g,De[je]),ut=L(k,We[je]);q.set(je,[Ye,Le[je]>=0?b(Ye,yt,ut):yt||ut])}let U=new Set([...q.values()].map(je=>je[1])),X=je=>je!==Tt&&je!==zn&&!/\s/.test(je),me=(je,Ye)=>{let yt=je;for(;yt<Ye&&!X(ue[yt]);)yt++;return yt<Ye&&Le[yt]>=0?L(m,Le[yt]):null},ve=new Map,Te=0;for(let je=0;je<Ze;je++){if(ue[je]!==Tt)continue;let[Ye,yt]=q.get(je),ut=me(Te,je),gt=yt,Vt=ve.get(gt)===gt&&ut===gt;gt&&ve.has(gt)&&!Vt&&Ye&&!ve.has(Ye)&&!U.has(Ye)&&(gt=Ye),gt&&!ve.has(gt)&&ve.set(gt,ut);for(let $t=Te;$t<=je;$t++)Je[$t]=gt;Te=je+1}let Ke=je=>{for(let Ye=0;Ye<je.text.length;Ye++)if(X(je.text[Ye])&&!L(je,Ye))return!0;return!1};if(!Ke(m)&&!Ke(g)&&!Ke(k)){let je=[],Ye=0;for(let ut=0;ut<Ze;ut++)(ue[ut]===Tt||ut===Ze-1)&&(je.push([Ye,ut]),Ye=ut+1);let yt=new Set(Je);for(let ut=0;ut<je.length;ut++){let[gt,Vt]=je[ut];if(Je[Vt])continue;let $t=gt;for(;$t<=Vt&&!X(ue[$t]);)$t++;if($t>Vt)continue;let kn=L(m,Le[$t]),un=L(g,De[$t]),An=L(k,We[$t]),Cn=b(kn,un,An)||un||An||kn;if(Cn&&!yt.has(Cn)){yt.add(Cn);for(let nn=gt;nn<=Vt;nn++)Je[nn]=Cn;continue}let Un=ut>0&&Je[je[ut-1][1]],$n=ut+1<je.length&&Je[je[ut+1][1]];if(Un)He.add(je[ut-1][1]);else if($n&&ue[Vt]===Tt)He.add(Vt);else continue;for(let nn=gt;nn<=Vt;nn++)Je[nn]=Un||$n}}}let Xe=new Map,Qe=b=>{let L=Xe.get(b);if(L)return L;L=[1/0,-1/0];for(let[q,U]of[[b.baseMark,st],[b.localMark,E],[b.remoteMark,z]]){let X=q&&Z(q,U);X&&(L[0]=Math.min(L[0],X[0]),L[1]=Math.max(L[1],X[1]))}return Xe.set(b,L),L},rt=(b,L,q)=>{let U=-1,X=-1;for(let me=0;me<b.length;me++){let ve=Q.get(b[me].el);ve===L&&(U=me),ve===q&&(X=me)}return U>=0&&X>=0?U-X:0},jt=(b,L)=>[...b].sort((q,U)=>{for(let ve of L){let Te=rt(ve,q,U);if(Te)return Te}let X=Qe(q),me=Qe(U);return X[0]-me[0]||me[1]-X[1]||q.rank-U.rank||q.id-U.id}),Et=new Map,en=new Map,Pt=e.nativeTransfers?[]:null,vt=b=>{if(Pt)return Pt;let L=Le[b],q=De[b],U=We[b],X=Oe[b];if(L>=0){let ut=m.stackAt[L],gt=g.stackAt[q],Vt=k.stackAt[U],$t=Et.get(ut);$t||Et.set(ut,$t=new Map);let kn=$t.get(gt);kn||$t.set(gt,kn=new Map);let un=kn.get(Vt);if(un)return un;let An=kt(ut),Cn=kt(gt),Un=kt(Vt),$n=new Set;for(let nn of new Set([...An,...Cn,...Un])){let mr=An.has(nn),pr=Cn.has(nn),Gt=Un.has(nn);(pr===Gt?pr:pr===mr?Gt:pr)&&$n.add(nn)}return un=jt($n,[gt,Vt,ut]),kn.set(Vt,un),un}if(X.src==="both"){let ut=g.stackAt[q],gt=k.stackAt[U];return jt(new Set([...kt(ut),...kt(gt)]),[ut,gt])}let ve=(X.src==="local"?g:k).stackAt[X.src==="local"?q:U];if(!X.inherit)return jt(kt(ve),[ve]);let Te=en.get(X);Te||en.set(X,Te=new Map);let Ke=Te.get(ve);if(Ke)return Ke;let je=new Set(kt(ve));for(let ut of X.inherit.added)je.add(qe(ut));for(let ut of X.inherit.removed)je.delete(qe(ut));let Ye=X.src==="local"?k:g,yt=(X.src==="local"?Ee.bTo:re.bTo)[X.inherit.bs];return Ke=jt(je,[ve,Ye.stackAt[yt]]),Te.set(ve,Ke),Ke},At=new Int32Array(g.text.length+1);At[g.text.length]=Ze;for(let b=g.text.length-1;b>=0;b--)At[b]=E[b]>=0?E[b]:At[b+1];Iu.caret+=g.text.length;let wt=b=>b<=0?0:(b>g.text.length&&(b=g.text.length),E[b-1]>=0?E[b-1]+1:At[b]),Ft=[],mt=[],Wt=null,Mt=[],gn="",Jt=-1,Kn=b=>{Wt?Wt.appendChild(b):Ft.push(b)},Bn=b=>{if(!gn)return;let L=t.createTextNode(gn);Kn(L),mt.push({node:L,ms:Jt,me:b,local:[],u:Mt.length?Mt[Mt.length-1].u:null}),gn=""},qo=new Set,Gn=new Map,ao=new Set,$s=b=>{let L=t.createElement(b.tag);if(b.block&&Bt.add(L),!Gn.has(b)){Gn.set(b,L),_(b.base,b.local,b.remote,L),s.set(L,{base:b.base,local:b.local,remote:b.remote});let U=(ve,Te)=>d&&b[Te]&&ve.reverse.get(b[Te])?Te:null,X=!b.base&&(U(r,"local")||U(o,"remote"));if(X){let ve=X==="local"?r.reverse.get(b.local):o.reverse.get(b.remote),Te=s.get(L);Te.local=Te.local||r.map.get(ve)||null,Te.remote=Te.remote||o.map.get(ve)||null,a.push({kind:"move",el:L,source:X}),e.moveBuilt?.(ve,X,b[X],L)}else b.base||a.push({kind:"insert",el:L,source:b.local&&b.remote?"both":b.local?"local":"remote"});let me=s.get(L);me.local&&(ao.has(me.local)?me.local=null:ao.add(me.local))}else{let U=Gn.get(b);for(let X of U.attributes)X.name!=="id"&&X.name!=="data-id"&&O(L,X,X.value);s.set(L,{base:null,local:null,remote:null})}Kn(L),Mt.push({u:b,el:L}),Wt=L},xe=new Set,nt=new Map;for(let b of g.pins){let L=wt(b.i);nt.has(L)||nt.set(L,[]),nt.get(L).push(b)}let et=b=>{let L=nt.get(b);if(L){Bn(b);for(let q of L){let U=q.el.namespaceURI&&q.el.namespaceURI!=="http://www.w3.org/1999/xhtml"?t.createElementNS(q.el.namespaceURI,q.el.tagName):t.createElement(q.el.tagName);s.set(U,{base:null,local:q.el,remote:null,pinned:!0}),xe.add(U),Kn(U)}}},_t=m.atoms.length||g.atoms.length||k.atoms.length,Ht=b=>{if(!_t)return null;let L=Le[b]>=0?m.atomAt.get(Le[b]):null,q=De[b]>=0?g.atomAt.get(De[b]):null,U=We[b]>=0?k.atomAt.get(We[b]):null;return L||q||U?{ab:L,al:q,ar:U}:null},at=(b,L,q)=>{let U=e.idOf;if(!U||!U.base)return!1;let X=U.base(b.el);return X!=null&&X===U[q](L.el)},Nt=(b,L,q,U,X)=>{if(!b||!d)return null;let me=S.get(L.reverse.get(b.el))||null;return!me||me===U||(U?me.el.isEqualNode(U.el)&&!at(me,b,X):q.bTo[me.i]>=0)?null:me},Ut=(b,L)=>{if(!b||!d||!e.moveIn)return null;let q=L.reverse.get(b.el);return q&&!S.has(q)?q:null},pt=(b,L)=>{let q=new Map;for(let U of b.atoms)q.set(L(U),(q.get(L(U))||0)+1);return q},Rt=pt(m,R),dn=pt(g,T),bn=pt(k,A),On=b=>{let L=R(b);return Rt.get(L)===1&&(dn.get(L)||0)<=1&&(bn.get(L)||0)<=1},wn=new Map,Nn=new Set,qn=new Set,Uo=new Set,ft=null;for(let b=0;b<Ze;b++){let L=Ht(b);if(!L)continue;let{ab:q,al:U,ar:X}=L,me=Nt(X,o,Ee,q,"remote"),ve=Nt(U,r,re,q,"local"),Te=q,Ke=null;if(me?(Te=me,Ke="remote"):ve&&(Te=ve,Ke="local"),Te){q&&Te!==q&&(ft||=new Map).set(q,Ke),Nn.has(Te)?wn.set(b,{dup:Te.el}):(Nn.add(Te),wn.set(b,{bk:Te,from:Ke,al:U,ar:X}));continue}let je=Ut(X,o),Ye=Ut(U,r),yt=je||Ye;if(yt){qn.has(yt)?wn.set(b,{dup:yt}):(qn.add(yt),wn.set(b,{moveIn:yt,side:je?"remote":"local",sideEl:je?X.el:U.el}));continue}let ut=(Vt,$t)=>Vt&&d&&S.get($t.reverse.get(Vt.el))||null,gt=ut(X,o)||ut(U,r);if(gt&&(Uo.add(gt),Oe[b].conflict&&(On(gt)||X&&(X.el===gt.el||o.identityPaired?.has(gt.el))&&at(gt,X,"remote")||U&&(U.el===gt.el||r.identityPaired?.has(gt.el))&&at(gt,U,"local")))){if(Nn.has(gt)){wn.set(b,{dup:gt.el});continue}Nn.add(gt)}wn.set(b,{al:U,ar:X})}let lt=new Map,qt,ct,Dt=(b,L)=>{if(b[L]>=0)return b[L];for(let q=L-1;q>=0;q--)if(b[q]>=0)return b[q]+1;return 0};if(d)for(let b of m.atoms){if(Nn.has(b)||Uo.has(b))continue;let L=r.map.get(b.el)||null,q=o.map.get(b.el)||null,U=L&&w.get(L),X=q&&V.get(q);if(L&&!U||q&&!X)continue;let me=!(U&&X)&&Se.has(b);if(!me&&!(U&&X&&(On(b)||ft?.has(b)||(U.el===b.el||r.identityPaired?.has(b.el))&&(X.el===b.el||o.identityPaired?.has(b.el))&&at(b,U,"local")&&at(b,X,"remote"))))continue;let ve=ft?.get(b),Te=n;if(ve){let ut=ve==="local"?k:g,gt=ve==="local"?o:r,Vt=ve==="local"?ct:qt;if(Vt===void 0){Vt=ut.atoms.length===m.atoms.length;for(let $t=0;Vt&&$t<m.atoms.length;$t++)Vt=gt.reverse.get(ut.atoms[$t].el)===m.atoms[$t].el;ve==="local"?ct=Vt:qt=Vt}Vt&&(Te=ve)}let Ke=Te==="local"?[[U,E],[X,z]]:[[X,z],[U,E]],[je,Ye]=Ke.find(([ut])=>ut),yt=Dt(Ye,je.i);lt.has(yt)||lt.set(yt,[]),lt.get(yt).push({a:b,lt:L,rt:q,edited:me}),Nn.add(b)}if(d&&e.moveIn){let b=[[g,r,E,"local"],[k,o,z,"remote"]];n!=="local"&&b.reverse();for(let[L,q,U,X]of b)for(let me of L.atoms){let ve=Ut(me,q);if(!ve||qn.has(ve))continue;qn.add(ve);let Te=Dt(U,me.i);lt.has(Te)||lt.set(Te,[]),lt.get(Te).push({move:ve,side:X,sideEl:me.el})}}let Zt=b=>{let L=lt.get(b);if(L){if(Bn(b),L.some(q=>ze(q.move?q.sideEl:q.a.el)))for(;Mt.length;)Mt.pop(),Wt=Mt.length?Mt[Mt.length-1].el:null;for(let{a:q,lt:U,rt:X,edited:me,move:ve,side:Te,sideEl:Ke}of L){if(ve){let Ye=e.moveIn(ve,Te,Ke);Ye&&Kn(Ye);continue}qo.add(q);let je=M(q.el,U,X);me&&(h({kind:"structure",el:je,detail:"edit-beats-delete",base:q.el},{subject:q.el,deleted:U?"remote":"local"}),a.push({kind:"insert",el:je,source:U?"local":"remote"})),Kn(je)}}},Bt=new Set,sn=i.length>c;for(let b=0;b<Ze;b++){let L=Ht(b),q=e.scopeUnits&&L&&(L.ab?.stack.some(ve=>ve.block)||L.al?.stack.some(ve=>ve.block)||L.ar?.stack.some(ve=>ve.block)),X=!!L&&ze((L.ab||L.al||L.ar).el)&&!q?[]:Je[b]?[Je[b],...vt(b)]:vt(b),me=0;for(;me<Mt.length&&me<X.length&&Mt[me].u===X[me];)me++;if(me<Mt.length)for(Bn(b);Mt.length>me;)Mt.pop(),Wt=Mt.length?Mt[Mt.length-1].el:null;if(et(b),Zt(b),X.length>Mt.length)for(Bn(b);Mt.length<X.length;)$s(X[Mt.length]);if(ue[b]===Tt){if(He.has(b))continue;Bn(b);let ve=Mt.length;for(;ve>0&&!Mt[ve-1].u.block;)ve--;if(ve>0)for(sn&&u.breakOut.set(b,Mt[ve-1].el);Mt.length>=ve;)Mt.pop(),Wt=Mt.length?Mt[Mt.length-1].el:null;continue}if(L){Bn(b);let ve=wn.get(b),Te;if(ve.dup){h({kind:"structure",el:null,detail:"both-moved",base:ve.dup},{subject:ve.dup});continue}if(ve.moveIn){if(Te=e.moveIn(ve.moveIn,ve.side,ve.sideEl),!Te)continue}else if(ve.bk){let Ke=ve.bk;if(qo.add(Ke),Ke===L.ab)Te=M(Ke.el,ve.al.el,ve.ar.el);else{let je=r.map.get(Ke.el)||null,Ye=o.map.get(Ke.el)||null;Te=M(Ke.el,je,Ye),(!je||!Ye)&&h({kind:"structure",el:null,detail:"move-beats-delete",base:Ke.el},{subject:Ke.el,deleted:je?"remote":"local"}),a.push({kind:"move",el:Te,source:ve.from})}}else ve.al?(Te=j(ve.al.el,"local"),ve.ar&&(s.get(Te).remote=ve.ar.el),a.push({kind:"insert",el:Te,source:ve.ar?"both":"local"})):(Te=j(ve.ar.el,"remote"),a.push({kind:"insert",el:Te,source:"remote"}));sn&&u.atomOut.set(b,Te),Kn(Te);continue}gn||(Jt=b),gn+=ue[b]}if(Bn(Ze),(nt.has(Ze)||lt.has(Ze))&&(Mt.length=0,Wt=null,et(Ze),Zt(Ze)),Ze===0&&(g.placeholder||k.placeholder||m.placeholder)){let b=t.createElement("br");s.set(b,{base:m.placeholder,local:g.placeholder,remote:k.placeholder}),Ft.push(b)}let Kt=0,It=b=>{for(;Kt>0&&mt[Kt-1].me>=b;)Kt--;for(;Kt<mt.length&&mt[Kt].me<b;)Kt++;let L=mt[Kt];if(!L)return mt[mt.length-1]||null;let q=mt[Kt+1];return L.me===b&&q&&q.ms===b?q:L},Ot=new Map,zt={},tn=(b,L,q)=>{let U=It(b)||(q?zt:null);if(!U)return;let X=Ot.get(U)||{l:!1,r:!1};L!=="remote"&&(X.l=!0),L!=="local"&&(X.r=!0),Ot.set(U,X)},er=b=>{if(b.conflict)return!0;let L=b.src==="local"?g.text:b.src==="remote"?k.text:"";for(let q=b.from;q<b.to;q++)if(L[q]!==zn&&L[q]!==Tt)return!0;return!1};for(let b of ee)b.src!=="base"&&tn(b.ms,b.conflict?"both":b.src,er(b));for(let[b,L]of K)st[b]>=0&&tn(st[b],L);for(let b of mt.length?mt:[zt]){let L=Ot.get(b);L&&a.push({kind:"text",node:b.node||null,source:L.l&&L.r?"both":L.l?"local":"remote"})}for(let b of ce){if(Gn.has(b))continue;let L=!b.local&&!(d&&r.map.get(b.base)),q=!b.remote&&!(d&&o.map.get(b.base));!L&&!q||a.push({kind:"remove",source:L&&q?"both":L?"local":"remote",base:b.base})}if(Ve)for(let[b,L]of Ve)Gn.has(b)&&h({kind:"structure",el:Gn.get(b),detail:"edit-beats-delete",base:b.base},{subject:b.base,deleted:L});let tr=(b,L,q)=>{if(L<=b)return!1;for(let U=b;U<L;U++)if(q[U]>=0)return!1;return!0};for(let b of ce)for(let L of["local","remote"]){let q=b[L+"Mark"],U=b.baseMark;if(!q)continue;let X=L==="local"?re:Ee;if(!tr(U.from,U.to,X.bTo)||!tr(q.from,q.to,X.toB))continue;let me=(L==="local"?Ie:ke).find(ve=>ve.ss<=q.from&&q.from<ve.se);me&&(me.be<=U.from||me.bs>=U.to)&&a.push({kind:"move",el:Gn.get(b)||null,source:L})}let Qf=b=>{let L=Q.get(b.node.parentNode);return L?qe(L):null};for(let b of g.nodes){let L=-1;for(let U=b.s;U<b.e;U++)if(E[U]>=0){L=E[U];break}let q;if(L>=0)q=It(L);else{let U=wt(b.s),X=Qf(b);q=mt.find(me=>me.u===X&&me.me>=U)||mt.filter(me=>me.u===X).pop()}q&&q.local.push(b)}let co=new Map,eu=mt[mt.length-1]||null,In=0;for(let b of g.nodes){let L=null;for(let q=b.s;q<=b.e;q++){let U=wt(q);for(;In>0&&mt[In-1].me>=U;)In--;for(;In<mt.length&&mt[In].me<U;)In++;let X=ve=>ve&&U>=ve.ms&&U<=ve.me&&(U<ve.me||q===b.e||ve===L),me=X(mt[In])?mt[In]:X(mt[In+1])?mt[In+1]:mt[In]||eu;if(!me)break;if(L===me){let ve=co.get(me);ve[ve.length-1].to=q-b.s;continue}L=me,co.has(me)||co.set(me,[]),co.get(me).push({node:b.node,from:q-b.s,to:q-b.s,flatStart:b.s})}}for(let b of mt){let L=b.local,q=!1;for(let ve of L)for(let Te=ve.s;Te<ve.e&&!q;Te++)(E[Te]<b.ms||E[Te]>=b.me)&&(q=!0);s.set(b.node,{base:null,local:L.map(ve=>ve.node),remote:null,caret:co.get(b)||[],partial:q});let U=b.ms,X=b.me-b.ms,me=ve=>{let Te=0,Ke=-1;for(let je of L){let Ye=je.e-je.s;if(ve<=Te+Ye){Ke=je.s+(ve-Te);break}Te+=Ye}return Ke<0&&(Ke=L.length?L[L.length-1].e:0),Math.max(0,Math.min(wt(Ke)-U,X))};me.flat=ve=>Math.max(0,Math.min(wt(ve)-U,X)),l.set(b.node,me)}function tu(){if(!g.text.includes(Tt))return[{flatLocal:g.text,localNodes:g.nodes,textNodes:mt,lToM:E,mapLocal:wt}];let b=[],L=0,q=0;for(let U=0;U<=g.text.length;U++){if(U<g.text.length&&g.text[U]!==Tt)continue;let X=L,me=U;if(me>X){let ve=[];for(;q<g.nodes.length&&g.nodes[q].e<=X;)q++;for(let Te=q;Te<g.nodes.length&&g.nodes[Te].s<me;Te++){let Ke=g.nodes[Te],je=Math.max(Ke.s,X),Ye=Math.min(Ke.e,me);je<Ye&&ve.push({node:Ke.node,s:je-X,e:Ye-X})}b.push({flatLocal:g.text.slice(X,me),localNodes:ve,textNodes:mt,lToM:E.subarray?E.subarray(X,me+1):E.slice(X,me+1),mapLocal:Te=>wt(X+Math.max(0,Math.min(Te,me-X)))})}L=U+1}return b}let vl={...e,blocks:Bt,ignored:b=>xe.has(b)||(e.ignored?e.ignored(b):!1)},wl=e.ignoreAttribute||(()=>!1),nu=Dl(on(Ft,vl),wl)!==Dl(k,wl);if(f.length){let b=L=>{let q=s.get(L);return q&&q.unchanged?q.remote:null};u.text=ue,u.textNodes=mt,u.out=on(Ft,{...vl,via:b})}let Or=null;if(e.scopeUnits){Or=new Map;let b=new Set(Ft),L=Te=>{for(;Te&&!b.has(Te);)Te=Te.parentNode;return Te},q=e.scopeUnits.map(Te=>{let Ke=new Map;for(let je of Te)if(je.nodeType===1)Ke.set(je,je);else for(let Ye of je.nodes)Ke.set(Ye,je);return Ke}),U=(Te,Ke)=>{for(;Te&&!Ke.has(Te);)Te=Te.parentNode;return Te?Ke.get(Te):null},X=[m,g,k].map((Te,Ke)=>{let je=new Array(Te.text.length);for(let Ye of Te.nodes){let yt=U(Ye.node,q[Ke]);yt&&je.fill(yt,Ye.s,Ye.e)}for(let Ye of Te.atoms)je[Ye.i]=U(Ye.el,q[Ke]);return je}),me=(Te,Ke)=>{if(!Te||!Ke)return;let je=Or.get(Te);je||Or.set(Te,je=new Set),je.add(Ke)};for(let Te of Ft){let Ke=s.get(Te);Ke&&(me(U(Ke.base,q[0]),Te),me(U(Ke.local,q[1]),Te),me(U(Ke.remote,q[2]),Te))}for(let Te of mt){let Ke=L(Te.node);for(let je=Te.ms;je<Te.me;je++)me(X[0][Le[je]],Ke),me(X[1][De[je]],Ke),me(X[2][We[je]],Ke)}let ve=new Map(Ft.map((Te,Ke)=>[Te,Ke]));for(let[Te,Ke]of Or)Or.set(Te,Array.from(Ke).sort((je,Ye)=>ve.get(je)-ve.get(Ye)))}return{unitOutputs:Or,nodes:Ft,text:ue,textNodes:mt,localDiverged:nu,mapLocal:wt,conflicts:i.slice(c),granularity:$?"line":"word",segments:tu(),localHunks:Ie,remoteHunks:ke,lToM:E}}function Kl(e,t,n,r,o){if(!o(e.length*8+1))return null;let s=0,l=t===0,i=!1;for(let a of hn(e,r)){if(!o(1))return null;if(s+=a.len,s===t&&(l=!0),s===n&&(i=!0),s>=n)break}return l&&i}function Bu(e,t,n,r,o,s,l){if(!l(t.length*2))return!1;let i=new Map,a=new Map,c=new Set;for(let h of t){let u=h.bs<h.be,f=u?n[h.ownerIndex].text.base:n[h.ownerIndex].text[e],d=u?h.bs:h.ss,p=u?h.be:h.se;if(!l((p-d)*4+1))return!1;for(;d<p&&/\s/.test(f[d]);)d++;for(;p>d&&/\s/.test(f[p-1]);)p--;if(d===p)continue;let y=f.slice(d,p),m=u?i:a;u&&h.text&&c.add(y),m.has(y)?m.set(y,null):m.set(y,{h,from:d,to:p})}for(let h of r){if(!l(1))return!1;if(h.side!==e)continue;let u=h.deletion,f=n[u.ownerIndex].text.base;if(!l((u.be-u.bs)*3)||c.has(f.slice(u.bs,u.be).trim()))return!1}for(let[h,u]of i){if(!l(h.length+1))return!1;let f=a.get(h);if(!u||!f)continue;let d=u.h,p=f.h;if(!d.text||d.transferOut||p.transferIn||d.owner===p.owner)continue;let y=n[d.ownerIndex],m=n[p.ownerIndex];if(!l(y.text.base.length))return!1;if(!/\S/.test(y.text.base.slice(0,d.bs)+y.text.base.slice(d.be)))continue;let g=Kl(y.text.base,u.from,u.to,s,l),k=Kl(m.text[e],f.from,f.to,s,l);if(g===null||k===null)return!1;if(!g||!k)continue;let S=`${y.index}:${u.from}:${u.to}`,v={key:S,side:e,source:d.owner,destination:p.owner,deletion:d,insertion:p,sourceOffset:u.from-d.bs,targetOffset:f.from-p.ss,length:u.to-u.from};d.transferOut=v,p.transferIn=v,o[e].set(S,v),r.push(v)}return!0}function Gl({base:e,local:t,remote:n,localTwin:r,remoteTwin:o,eligible:s,nodes:l,budget:i=Xt(2e4*32)}){let a=_=>_>i.remaining?!1:(i.remaining-=_,i.nativeSteps=(i.nativeSteps||0)+_,!0);if(e.length<2||t.length!==e.length||n.length!==e.length||!a(e.length*12))return null;for(let[_,M]of[["base",e],["local",t],["remote",n]]){let j=l[_];if(j.length!==M.length||j.some((I,P)=>I!==M[P]))return null}let c=[],h=0;for(let _=0;_<e.length;_++){let M=e[_],j=t[_],I=n[_];if(r(M)!==j||o(M)!==I)return null;let P={};for(let[R,T]of[["base",M],["local",j],["remote",I]]){if(!s(T)||T.tagName!==M.tagName||T.namespaceURI!==M.namespaceURI||!a(T.childNodes.length+1))return null;let A="";for(let W of T.childNodes){if(W.nodeType!==3||!a(W.data.length*4+1))return null;A+=W.data}if(A.includes(Tt)||(h+=A.length+1,h>2e4))return null;P[R]=A}c.push({base:M,local:j,remote:I,index:_,text:P})}let u=c.every(_=>Tn(_.text.base,_.text.local,_.text.remote)),f={local:[],remote:[]};for(let _ of c){_.hunks={local:[],remote:[]};for(let M of["local","remote"]){let j=_.text.base,I=_.text[M];if(j===I)continue;let P=j.length+I.length+4,R=P*8;if(!a(R))return null;let T=Math.floor(i.remaining/8),A=Math.min(4e3,Math.max(0,Math.floor((Math.sqrt(P*P+T)-P)/2)));if(A<1||!a(4*(A+1)*(P+A+1)))return null;let W=0;for(let F of gr(j,I,A)){if(!a(F.text.length+1))return null;let $=F.bs+W,Ne={...F,ss:$,se:$+F.text.length,toks:hn(F.text,u),owner:_.base,ownerIndex:_.index};_.hunks[M].push(Ne),f[M].push(Ne),W+=F.text.length-(F.be-F.bs)}}}let d=[],p={local:new Map,remote:new Map};for(let _ of["local","remote"]){let M=new Map,j=new Map,I=!1,P=(R,T,A)=>{R.has(T)?R.set(T,null):R.set(T,A)};for(let R of f[_]){if(!a(1))return null;let T=c[R.ownerIndex].text.base;if(R.bs<R.be&&R.text===""){let A=T.slice(R.bs,R.be);if(!a(A.length*2))return null;/\S/.test(A)&&P(M,A,R)}else if(R.bs===R.be&&/\S/.test(R.text)){if(!a(R.text.length*2))return null;P(j,R.text,R)}else R.bs<R.be&&(I=!0)}for(let[R,T]of M){if(!a(R.length+1))return null;let A=j.get(R);if(!T||!A||T.owner===A.owner)continue;let W=c[T.ownerIndex];if(!a(W.text.base.length))return null;if(!/\S/.test(W.text.base.slice(0,T.bs)+W.text.base.slice(T.be)))continue;let F=`${W.index}:${T.bs}:${T.be}`,$={key:F,side:_,source:T.owner,destination:A.owner,deletion:T,insertion:A};T.transferOut=$,A.transferIn=$,p[_].set(F,$),d.push($)}if(I&&j.size&&!Bu(_,f[_],c,d,p,u,a))return null}if(!d.length)return null;let y=(_,M)=>_.bs<M.be&&M.bs<_.be,m=_=>_.bs===_.be,g=(_,M)=>_.bs<=M.be&&M.bs<=_.be&&m(_)!==m(M),k=(_,M)=>_.bs===M.bs&&_.be===M.be&&_.text===M.text,S=(_,M)=>!!(_.transferIn||_.transferOut&&(!_.text||M.bs===_.be&&/\s/.test(M.text[0])||M.bs===_.bs&&/\s/.test(M.text[M.text.length-1])));for(let _ of d){let M=_.side==="local"?"remote":"local",j=c[_.deletion.ownerIndex];for(let I of j.hunks[M])if(!a(1)||y(_.deletion,I)&&I.transferOut?.key!==_.key)return null}for(let _ of c)for(let M of _.hunks.local)for(let j of _.hunks.remote){if(!a(1))return null;if(k(M,j)){if(M.transferIn?.key!==j.transferIn?.key)return null;continue}if(y(M,j)||g(M,j)&&!S(M,j)&&!S(j,M))return null}if(!a(h*8))return null;let v=new Set([...e,...t,...n]),x={base:on(e,{blocks:v}),local:on(t,{blocks:v}),remote:on(n,{blocks:v})},O={};for(let _ of["base","local","remote"]){let M=x[_];if(M.atoms.length||M.pins.length)return null;O[_]=new Map(M.marks.filter(j=>j.block).map(j=>[j.el,j.from]))}for(let _ of c){let M=O.base.get(_.base);if(M===void 0)return null;for(let j of["local","remote"]){let I=O[j].get(_[j]);if(I===void 0)return null;for(let P of _.hunks[j])P.bs+=M,P.be+=M,P.ss+=I,P.se+=I}}for(let _ of d)_.bs=_.deletion.bs+(_.sourceOffset||0),_.be=_.length===void 0?_.deletion.be:_.bs+_.length,_.ss=_.insertion.ss+(_.targetOffset||0),_.se=_.length===void 0?_.insertion.se:_.ss+_.length;let C={};for(let _ of["local","remote"]){let M=0,j=0,I=[];for(let R of f[_]){if(!a(1))return null;R.bs>M&&I.push({from:M,to:R.bs,target:j}),M=R.be,j=R.se}M<x.base.text.length&&I.push({from:M,to:x.base.text.length,target:j});let P=d.filter(R=>R.side===_).map(R=>({from:R.bs,to:R.be,target:R.ss,destination:R.destination}));if(C[_]=Hn({base:x.base,side:x[_],retained:I,transfers:P,budget:i}),C[_].status!=="ready")return null}return a(x.base.text.length)?{owners:c,blocks:v,transfers:d,byOrigin:p,budget:i,prepared:{base:x.base,local:x.local,remote:x.remote,lines:!1,baseTokens:hn(x.base.text,u),localEdits:{hunks:f.local,respell:new Map},remoteEdits:{hunks:f.remote,respell:new Map},localMap:C.local,remoteMap:C.remote,full:null}}:null}var ui=/\S/;function Yl({certificates:e,scopes:t,views:n,eligible:r,baseId:o,limit:s=2e4*32}){let l=Xt(s),i=Symbol(),a=[],c=u=>{if(u>l.remaining)throw i;l.remaining-=u},h=(u,f=null)=>{if(c(1),!u||u.nodeType!==1||u.parentNode?.nodeType!==1||!r(u))return null;for(let y=u.parentNode;y;y=y.parentNode)if(c(1),y.nodeType===11)return null;let d="",p=0;for(let y of u.childNodes){if(c(1),y.nodeType!==3)return null;if(c(y.data.length*4+1),f){let m=f.flat.nodes[p++];if(!m||m.node!==y||m.s!==d.length||m.e!==d.length+y.data.length)return null}d+=y.data}return c(d.length*3+1),f&&(f.flat.atoms.length||f.flat.pins?.length||p!==f.flat.nodes.length||f.flat.text!==d)?null:ui.test(d)?d:null};try{c(t[0].length+t[1].length+t[2].length+e.length);let u=t.map(d=>new Set(d)),f=new Map;for(let d of e){c(1);let p=f.get(d.source);p||f.set(d.source,p=[]),p.push(d)}for(let d of f.values()){let p=[null,null],y=[];for(let m of d){c(1);let{source:g,target:k,side:S,models:v,runs:x}=m;if(S!==0&&S!==1||!u[0].has(g)||!u[S+1].has(k))continue;let{V:O,A:C,idOf:_}=n[S],M=n[1-S],j=O.twin(g),I=M.V.twin(g),P=O.baseOf(k);if(!j||!I||!P||P===g||!u[0].has(P)||!u[S+1].has(j)||!u[2-S].has(I)||C.map.get(g)!==j||C.reverse.get(j)!==g||M.A.map.get(g)!==I||M.A.reverse.get(I)!==g||C.map.get(P)!==k||C.reverse.get(k)!==P||k.parentNode!==j.parentNode||P.parentNode!==g.parentNode||g.tagName!==j.tagName||g.tagName!==I.tagName||o(g)!==_(j)||o(g)!==M.idOf(I)||o(P)!==_(k))continue;let R=v.get(g),T=v.get(k);if(!R||!T)continue;let A=h(g,R),W=h(k,T),F=h(j),$=h(I);if(c((A?.length||0)+($?.length||0)),A===null||W===null||F===null||$===null||$===A)continue;let Ne=x.length>0,Ce=!1;for(let re of x){if(c(1),re.source!==g||re.target!==k||!Number.isInteger(re.from)||!Number.isInteger(re.to)||!Number.isInteger(re.targetFrom)||re.from<0||re.to<=re.from||re.to>A.length||re.targetFrom<0||re.targetFrom+re.to-re.from>W.length){Ne=!1;break}c((re.to-re.from)*3);for(let Ee=re.from;Ee<re.to;Ee++){if(A[Ee]!==W[re.targetFrom+Ee-re.from]){Ne=!1;break}ui.test(A[Ee])&&(Ce=!0)}if(!Ne)break}if(!Ne||!Ce)continue;let Be=p[S];Be||(c(A.length),Be=p[S]={source:g,side:S,flat:R.flat,before:A,covered:new Uint8Array(A.length)});for(let re of x)c(re.to-re.from),Be.covered.fill(1,re.from,re.to)}for(let m of p){if(!m)continue;let{source:g,side:k,flat:S,before:v,covered:x}=m;c(v.length*3+1);let O=-1,C=-1;for(let _=0;_<=v.length;_++)_<v.length&&x[_]?(O<0&&(O=_),C=_+1):(_===v.length||ui.test(v[_]))&&O>=0&&(y.push({source:g,side:k,flat:S,from:O,to:C}),O=C=-1)}c(y.length),a.push(...y)}}catch(u){if(u!==i)throw u}return{records:a,budget:l}}var qu="http://www.w3.org/1999/xhtml";function Uu(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t^e.charCodeAt(n);return(t>>>0).toString(36)}function yn(e){return!!e&&e.nodeType===1&&e.tagName==="SCRIPT"&&e.namespaceURI===qu}function $u(e){let t=(e.getAttribute("type")||"").split(";")[0].trim().toLowerCase();return t==="application/json"||t.endsWith("+json")}function Xo(e,t){let n=e.getAttribute("src"),r=(e.getAttribute("type")||"text/javascript").split(";")[0].trim().toLowerCase();if(n){let o=n;try{let s=new URL(n,t);o=s.origin+s.pathname+s.search}catch{}return"script|src|"+r+"|"+o}return"script|inline|"+r+"|"+Uu(e.textContent.trim())}var Hu={match:e=>e.hasAttribute("merge"),identity:e=>e.getAttribute("merge")};function jr(e,t=[],n=!1){if(!yn(e)||e.hasAttribute("src"))return null;let r=[Hu,...t];for(let o=0;o<r.length;o++){let s=r[o];if(!s.match(e))continue;if(!$u(e))return n&&console.warn("[hyper-morph] merge ignored: script type is not JSON",e),null;let l=s.identity(e);return l==null||l===""?null:{key:o+":"+l,raw:l,recognizer:s}}return null}function Xl(e,t,n){let r=new Set,o=s=>{yn(s)&&!t(s)&&r.add(Xo(s,n))};o(e);for(let s of e.querySelectorAll("script"))o(s);return r}function mo(e,t){let n=t.createElement("div");n.innerHTML="<script><\/script>";let r=n.firstChild;for(let o of e.attributes)r.setAttribute(o.name,o.value);return r.textContent=e.textContent,r}function Jl(e,t,n){let r=[],o=[],s=new Map,l=n.trackRecovery?new Set:null,i=Array.from(e.querySelectorAll("script"));yn(e)&&i.unshift(e);for(let a of i){if(!yn(a)||n.ignored(a)||n.skip.has(a)||t.has(Xo(a,n.baseURI)))continue;let c=a.ownerDocument.createElement("script");for(let h of a.attributes)c.setAttribute(h.name,h.value);if(c.textContent=a.textContent,n.beforeNodeAdded(c)===!1){l?.add(a);continue}c.hasAttribute("src")&&o.push(new Promise(h=>{c.addEventListener("load",()=>h()),c.addEventListener("error",()=>h())})),a.replaceWith(c),s.set(a,c),n.afterNodeAdded(c),r.push(c)}return{executed:r,loads:o,swapped:s,vetoed:l}}function zu(e){let t=5381;for(let n=0;n<e.length;n++)t=(t<<5)+t^e.charCodeAt(n);return(t>>>0).toString(36)}function Vu(e,t){try{let n=new URL(e,t);return n.origin+n.pathname+n.search}catch{return e}}function Zl(e,t){let n=e.tagName;if(n==="TITLE"||n==="BASE")return n;if(n==="SCRIPT")return Xo(e,t);if(n==="LINK"){let r=e.getAttribute("href");return r?"link|"+(e.getAttribute("rel")||"")+"|"+Vu(r,t):e.outerHTML}if(n==="META"){for(let r of["charset","name","property","http-equiv","itemprop"])if(e.hasAttribute(r))return"meta|"+r+"="+e.getAttribute(r);return e.outerHTML}return n==="STYLE"?"style|"+zu(e.textContent):e.outerHTML}function di(e,t){for(;;){for(;t<e.length&&/\s/.test(e[t]);)t++;if(e[t]==="/"&&e[t+1]==="/"){for(;t<e.length&&e[t]!==`
4
+ `;)t++;continue}if(e[t]==="/"&&e[t+1]==="*"){let n=e.indexOf("*/",t+2);if(n===-1)return e.length;t=n+2;continue}return t}}function Wu(e){return e.replace(/\\'/g,"'").replace(/(\\*)"/g,(t,n)=>n.length%2===0?n+'\\"':t)}var Ku=/^-?(0|[1-9]\d*)(\.\d+)?([eE][+-]?\d+)?$/,Gu=/^[A-Za-z_$][A-Za-z0-9_$]*$/;function hi(e){try{return JSON.parse(e)}catch{return JSON.parse(Yu(e))}}function Yu(e){let t="",n=0,r=(o,s)=>{throw new Error(`Invalid relaxed JSON: ${o} at position ${s}`)};for(;n<e.length&&(n=di(e,n),!(n>=e.length));){let o=e[n];if("{}[]:".includes(o)){t+=o,n++;continue}if(o===","){let i=di(e,n+1);if(e[i]==="}"||e[i]==="]"){n++;continue}t+=o,n++;continue}if(o==='"'||o==="'"){let i=n+1;for(;i<e.length&&e[i]!==o;)e[i]==="\\"&&i++,i++;i>=e.length&&r("unterminated string",n);let a=e.slice(n+1,i);o==="'"&&(a=Wu(a)),t+='"'+a+'"',n=i+1;continue}let s=n;for(;s<e.length&&/[A-Za-z0-9_$.+\-]/.test(e[s]);)s++;s===n&&r("unexpected character "+JSON.stringify(o),n);let l=e.slice(n,s);if(l==="true"||l==="false"||l==="null"||Ku.test(l)){t+=l,n=s;continue}if(Gu.test(l)){if(e[di(e,s)]===":"){t+='"'+l+'"',n=s;continue}r("unquoted value "+JSON.stringify(l),n)}r("invalid token "+JSON.stringify(l),n)}return t}var Qt=Symbol("hyper-morph-json-merge:missing"),Ql=["id","_id","uuid","key","slug","code","name"];function Pr(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function po(e,t){return Object.prototype.hasOwnProperty.call(e,t)}function Xu(e,t,n){Object.defineProperty(e,t,{value:n,enumerable:!0,writable:!0,configurable:!0})}function or(e,t){if(e===t)return!0;if(Array.isArray(e)&&Array.isArray(t)){if(e.length!==t.length)return!1;for(let n=0;n<e.length;n++)if(!or(e[n],t[n]))return!1;return!0}if(Pr(e)&&Pr(t)){let n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(let r of n)if(!po(t,r)||!or(e[r],t[r]))return!1;return!0}return!1}function ea(e,t,n,r){return or(t,n)?t:or(t,e)?n:or(n,e)?t:Pr(t)&&Pr(n)?Ju(Pr(e)?e:{},t,n,r):Array.isArray(t)&&Array.isArray(n)?td(Array.isArray(e)?e:[],t,n,r):n}function ta(e,t,n,r){return t===Qt&&n===Qt?Qt:t===Qt?e===Qt?n:or(n,e)?Qt:n:n===Qt?e===Qt?t:Qt:ea(e,t,n,r)}function Ju(e,t,n,r){let o={},s=new Set([...Object.keys(e),...Object.keys(t),...Object.keys(n)]);for(let l of s){let i=ta(po(e,l)?e[l]:Qt,po(t,l)?t[l]:Qt,po(n,l)?n[l]:Qt,r);i!==Qt&&Xu(o,l,i)}return o}function Zu(e){return e===null||typeof e!="object"}function Jo(e){return typeof e+":"+String(e)}function Qu(e,t){for(let n of t){let r=new Set;for(let o of n){if(!po(o,e))return!1;let s=o[e];if(typeof s!="string"&&typeof s!="number")return!1;let l=Jo(s);if(r.has(l))return!1;r.add(l)}}return!0}function ed(e,t,n,r){let o=[e,t,n],s=!0;for(let l of o)for(let i of l)Pr(i)||(s=!1);if(s){for(let l of r.keyCandidates)if(Qu(l,o))return{kind:"keyed",field:l};return null}for(let l of o){let i=new Set;for(let a of l){if(!Zu(a))return null;let c=Jo(a);if(i.has(c))return null;i.add(c)}}return{kind:"self"}}function td(e,t,n,r){let o=ed(e,t,n,r);if(!o)return n;let s=o.kind==="self"?Jo:d=>Jo(d[o.field]),l=d=>{let p=new Map;for(let y of d)p.set(s(y),y);return p},i=l(e),a=l(t),c=l(n),h=new Map,u=new Set([...i.keys(),...a.keys(),...c.keys()]);for(let d of u){let p=ta(i.has(d)?i.get(d):Qt,a.has(d)?a.get(d):Qt,c.has(d)?c.get(d):Qt,r);p!==Qt&&h.set(d,p)}let f=[];for(let d of n){let p=s(d);h.has(p)&&f.push(p)}for(let d=0;d<t.length;d++){let p=s(t[d]);if(!h.has(p)||f.includes(p))continue;let y=0;for(let m=d-1;m>=0;m--){let g=f.indexOf(s(t[m]));if(g!==-1){y=g+1;break}}f.splice(y,0,p)}return f.map(d=>h.get(d))}function na(e,t,n,r={}){let o=r.keyCandidates?[...r.keyCandidates,...Ql]:Ql;return ea(e===void 0?Qt:e,t,n,{keyCandidates:o})}function mi(e,t,n,r={}){let o=r.parse||hi,s=[],l=(u,f)=>{if(typeof u!="string")return Qt;try{return o(u)}catch(d){return s.push(`${f} side is not valid JSON (${d.message})`),Qt}},i=l(t,"local"),a=l(n,"remote");if(i===Qt)return{text:n,warnings:s};if(a===Qt)return{text:t,warnings:s};let c=l(e,"base"),h=na(c===Qt?void 0:c,i,a,r);return or(h,a)?{text:n,warnings:s}:or(h,i)?{text:t,warnings:s}:{text:JSON.stringify(h,null,2),warnings:s}}var ra=e=>e.nodeType===3||e.nodeType===8?e.nodeValue.length:e.childNodes.length;function yr(e){if(!e)return!1;let{startContainer:t,startOffset:n,endContainer:r,endOffset:o}=e;if(!t||!r||!Number.isInteger(n)||!Number.isInteger(o)||n<0||o<0||n>ra(t)||o>ra(r)||t.getRootNode()!==r.getRootNode())return!1;let s=t.ownerDocument.createRange();return s.setStart(t,n),s.setEnd(r,o),s.startContainer===t&&s.startOffset===n}function sr(e,t,n={}){if(!yr(e))return null;let{startContainer:r,startOffset:o,endContainer:s,endOffset:l}=e;if(r===s&&(r.nodeType===3||r.nodeType===8))return r.nodeValue.slice(o,l);if(r===s&&o===l)return"";let i=new Set;for(let m=r;m;m=m.parentNode)i.add(m);let a=s;for(;!i.has(a);)a=a.parentNode;let c=(m,g)=>{let k=a.ownerDocument.createRange(),S=a.ownerDocument.createRange();return k.setStart(m[0],m[1]),k.collapse(!0),S.setStart(g[0],g[1]),S.collapse(!0),k.compareBoundaryPoints(0,S)},h=(m,g=!1)=>[m.parentNode,Array.prototype.indexOf.call(m.parentNode.childNodes,m)+Number(g)],u=[],f;if(t==="plain"){f="";let m=g=>{if(g.nodeType===3||g.nodeType===8){let k=f.length;f+=g.nodeValue,u.push({s:k,e:f.length,a:[g,0],b:[g,g.nodeValue.length],node:g})}else for(let k of g.childNodes)m(k)};m(a)}else{let m=n.blocks;if(!m){m=new Set;let k=S=>{S!==a&&S.nodeType===1&&ci.has(S.tagName)&&m.add(S);for(let v of S.childNodes)k(v)};k(a)}let g=on(Array.from(a.childNodes),{blocks:m,atomize:k=>!!n.atoms?.has(k),ignored:n.ignored});f=g.text;for(let k of g.nodes)u.push({s:k.s,e:k.e,a:[k.node,0],b:[k.node,k.e-k.s],node:k.node});for(let k of g.atoms)u.push({s:k.i,e:k.i+1,a:h(k.el),b:h(k.el,!0)});for(let k=0;k<g.text.length;k++){if(g.text[k]!==Tt)continue;let S=g.marks.find(x=>x.block&&x.to===k+1),v=g.marks.find(x=>x.block&&x.from===k+1);if(S)u.push({s:k,e:k+1,a:[S.el,S.el.childNodes.length],b:h(S.el,!0)});else if(v)u.push({s:k,e:k+1,a:h(v.el),b:[v.el,0]});else return null}}u.sort((m,g)=>m.s-g.s);let d=m=>{if(m[0].nodeType===3||m[0].nodeType===8){let k=u.find(S=>S.node===m[0]);return k?k.s+m[1]:null}let g=0;for(let k of u){if(c(m,k.a)<=0)return k.s;if(c(m,k.b)<0)return null;g=k.e}return g},p=d([r,o]),y=d([s,l]);return p!==null&&y!==null&&p<=y?f.slice(p,y):null}function kr(e,t){let n=e;for(let r of t.path)if(n=r==="content"?n?.content:n?.childNodes[r],!n)return null;return[n,t.offset]}function oa(e,t){if(!e||!t)return null;let n=kr(e,t.start),r=kr(e,t.end);return n&&r?{startContainer:n[0],startOffset:n[1],endContainer:r[0],endOffset:r[1]}:null}var sa=e=>e.nodeType===1?e.outerHTML:e.nodeValue;function ia(e,t,n){if(!t)return;let r=new Map,o=new Map,s=i=>{if(!i)return null;if(o.has(i))return o.get(i);let c=i.local.map(h=>kr(t.localRoot,{path:h,offset:0})?.[0]).map(h=>h&&n(h)).filter(Boolean).map(h=>({node:h,parent:h.parentNode,previous:h.previousSibling,next:h.nextSibling,fragment:sa(h)}));return o.set(i,c),c},l=i=>{let a=oa(t.localRoot,i);if(!a)return null;let c=n(a.startContainer),h=n(a.endContainer);if(!c||!h)return null;let u={...a,startContainer:c,endContainer:h};return yr(u)?u:null};for(let i of e){let a=i.recovery;if(!a||r.has(a))continue;let c={subject:s(a.subject),span:null,scope:null,touched:new Set};if(a.text){c.span=l(a.text.local.span),c.scope=l(a.text.local.scope);let h=c.span;if(h){let u=h.startContainer.ownerDocument.createRange();u.setStart(h.startContainer,h.startOffset),u.setEnd(h.endContainer,h.endOffset);let f=d=>{if(u.intersectsNode(d)){c.touched.add(d);for(let p of d.childNodes)f(p)}};f(u.commonAncestorContainer)}}if(a.structure){for(let h of[a.structure.localPlacement])h&&(s(h.parent),h.before.forEach(s),h.after.forEach(s));for(let h of a.structure.localOrder||[])s(h)}r.set(a,c)}t.localState={states:r,refs:o}}function la(e,t,n,r){let o=n.localState?.states.get(e);if(!o)return!1;let s=i=>{let a=i.node;if(!r(a)||a.parentNode!==i.parent)return!1;let c=h=>Array.prototype.indexOf.call(a.parentNode.childNodes,h);return!(i.previous&&r(i.previous)&&i.previous.parentNode===a.parentNode&&c(i.previous)>=c(a)||i.next&&r(i.next)&&i.next.parentNode===a.parentNode&&c(i.next)<=c(a))};if(e.structure?.localAction==="deleted")return e.subject.live.length===0;if(!o.subject.length||!o.subject.every(s))return!1;if(e.text){let i=e.text.local,a=c=>c&&r(c.startContainer)&&r(c.endContainer);return a(o.span)&&a(o.scope)&&sr(o.scope,e.text.encoding)===i.text&&sr(o.span,e.text.encoding)===i.text.slice(i.start,i.end)}if(e.attribute){let i=e.attribute,a=o.subject[0].node;return(i.namespaceURI?a.getAttributeNS(i.namespaceURI,i.localName):a.getAttribute(i.qualifiedName))===t.local}let l=e.structure;if(l.localOrder){let i=-1,a=null;for(let c of l.localOrder){let h=n.localState.refs.get(c)?.[0]?.node;if(!h||!r(h)||a&&h.parentNode!==a)return!1;let u=Array.prototype.indexOf.call(h.parentNode.childNodes,h);if(u<=i)return!1;a=h.parentNode,i=u}return!0}return l.localAction==="moved"||o.subject.every(i=>sa(i.node)===i.fragment)}var nd=1,mn=e=>!!e&&e.nodeType===1,Zo=e=>mn(e)&&e.tagName==="TEMPLATE"&&!!e.content;function xr(e,t=null,n=null){let r=new Map,o=new Map,s=h=>{if(!t){t=new WeakMap;let u=[e];for(;u.length;){let f=u.pop();Zo(f)&&(t.set(f.content,f),u.push(f.content));for(let d=f.firstChild;d;d=d.nextSibling)d.nodeType===1&&u.push(d)}}return t.get(h)||null},l=(h,u)=>{let f=o.get(h);if(!f){f=new Map;let d=0;for(let p=h.firstChild;p;p=p.nextSibling)f.set(p,d++);o.set(h,f)}return f.get(u)},i=h=>{if(!h)return null;if(n&&n.has(h))return i(n.get(h));if(h===e)return[];let u=r.get(h);if(u!==void 0)return u;let f=h.parentNode,d=null;if(f&&f.nodeType===11){let p=s(f),y=p?i(p):null;y&&(d=y.concat(["content",l(f,h)]))}else if(f){let p=i(f);p&&(d=p.concat([l(f,h)]))}return r.set(h,d),d};return{root:e,pathOf:i,logicalParent:h=>{let u=h.parentNode;return u&&u.nodeType===11?s(u):u},indexIn:l,containerPath:h=>{if(h.nodeType===11){let f=s(h),d=i(f);return d?d.concat(["content"]):null}let u=i(h);return u&&Zo(h)?u.concat(["content"]):u},ownerOf:s}}var jn=e=>Zo(e)?e.content:e;function aa(e){let{L:t,R:n,unitsOf:r,provenance:o,policy:s}=e,l=[];return{note:(h,u)=>{l.push([h,u])},finish:h=>l.length?c(h):null};function c(h){let u={base:xr(e.roots.base),local:xr(e.roots.local),remote:xr(e.roots.remote)},f=N=>N==="local"?t:n,d=(N,D)=>{if(!D)return null;if(N.map.has(D))return N.map.get(D);let Y=[],J=mn(D)?u.base.logicalParent(D):D.parent;for(;J&&!N.map.has(J);J=u.base.logicalParent(J))Y.push(J);if(!J||!N.identical.has(J))return null;let se=N.map.get(J);for(let Fe=Y.length-1;Fe>=0&&se;Fe--)se=jn(se).childNodes[u.base.indexIn(Y[Fe].parentNode,Y[Fe])];return se?mn(D)?jn(se).childNodes[u.base.indexIn(D.parentNode,D)]||null:r(se)[r(D.parent).indexOf(D)]||null:null},p=new Map,y=new Map,m=new WeakMap,g=0,k=(N,D)=>{let Y=p.get(N);Y||p.set(N,Y=[]),Y.push(D)};(function N(D){y.set(D,g++);let Y=o.get(D);if(Y&&!Y.pinned){for(let J of[Y.base,Y.local,Y.remote])if(J)if(Array.isArray(J))for(let se of J)k(se,D);else k(J,D)}if(Zo(D)){m.set(D.content,D);for(let J=D.content.firstChild;J;J=J.nextSibling)N(J)}for(let J=D.firstChild;J;J=J.nextSibling)N(J)})(h);let S=new Map;u.out=xr(h,m,S);let v={refs:new Map,spans:new Map,anchors:new Map,via:S,outOwners:m,outRoot:h,localRoot:e.roots.local},x=N=>mn(N)?[N]:N.nodes,O=(N,D)=>{let Y=u[D].logicalParent(N);if(!Y)return null;for(let J of r(Y))if(!mn(J)&&J.nodes.includes(N))return J;return null},C=(N,D)=>N==null?null:Array.isArray(N)?N.length?O(N[0],D):null:N,_=N=>{let D=new Set,Y=[];for(let J of N)for(let se of p.get(J)||[])D.has(se)||(D.add(se),Y.push(se));return Y.sort((J,se)=>y.get(J)-y.get(se))},M=new Map,j=N=>{let D=N.b||N.l||N.r,Y=M.get(D);if(Y)return Y;let J=[];for(let se of[N.b,N.l,N.r])se&&J.push(...x(se));return Y=_(J),M.set(D,Y),Y},I=N=>({b:N,l:d(t,N),r:d(n,N)}),P=(N,D)=>{let Y=f(D).reverse.get(N);if(Y)return I(Y);for(let J of _(x(N))){let se=o.get(J);if(se&&!se.base&&se.local&&se.remote)return{b:null,l:C(se.local,"local"),r:C(se.remote,"remote")}}return D==="local"?{b:null,l:N,r:null}:{b:null,l:null,r:N}},R=new Map,T=N=>{let D=o.get(N);if(!D||D.pinned)return null;let Y=C(D.base,"base");if(Y)return I(Y);let J=C(D.local,"local"),se=C(D.remote,"remote");if(J){let Fe=t.reverse.get(J);if(Fe)return I(Fe)}if(se){let Fe=n.reverse.get(se);if(Fe)return I(Fe)}return J||se?{b:null,l:J,r:se}:null},A=N=>(R.has(N)||R.set(N,T(N)),R.get(N)),W=(N,D)=>mn(N)?u[D].logicalParent(N):N.parent,F=new Map,$=new Map,Ne=(N,D)=>(mn(N)?[u[D].pathOf(N)]:N.nodes.map(Y=>u[D].pathOf(Y))).filter(Boolean),Ce=N=>{let D=N.b||N.l||N.r,Y=N.b?"base":N.l?"local":"remote",J=$.get(D);if(J)return J;let se=!mn(D),Fe=Ne(D,Y)[0],ee=`${Y[0]}:${JSON.stringify(Fe===void 0?null:Fe)}${se?":run":""}`,Me=F.get(ee);if(Me)return $.set(D,Me),Me;let Ve=j(N);return Me={key:ee,nodeType:mn(D)?1:D.kind==="comment"?8:3,base:N.b?Ne(N.b,"base"):[],local:N.l?Ne(N.l,"local"):[],remote:N.r?Ne(N.r,"remote"):[],merged:Ve.map(Ie=>u.out.pathOf(Ie)).filter(Boolean),live:[]},F.set(ee,Me),$.set(D,Me),v.refs.set(Me,Ve),Me},Be={base:new Map,local:new Map,remote:new Map},re=new Map,Ee=(N,D)=>{let Y=W(N,D);if(!Y||Y.nodeType!==1)return null;let J=Be[D].get(Y);if(!J){let Fe=r(Y),ee=Me=>Ce(D==="base"?I(Me):P(Me,D));J={parent:ee(Y),refs:Fe.map(ee),index:new Map(Fe.map((Me,Ve)=>[Me,Ve]))},Be[D].set(Y,J)}let se=J.index.get(N)??-1;return{parent:J.parent,before:J.refs.slice(se+1),after:J.refs.slice(0,Math.max(0,se)).reverse()}},Ge=N=>{let D=N.parentNode;if(!D)return null;let Y=re.get(D);if(!Y){let se=D.nodeType===11?m.get(D):D,Fe=se&&se.nodeType===1?A(se):null;if(!Fe)return null;let ee=[],Me=[],Ve=new Map;for(let ke of D.childNodes){let B=A(ke),G=B&&Ce(B),he=ee.length,be=ee.length-1;G&&G!==ee[be]&&(ee.push(G),be++);let fe={ref:G,group:be,after:he};Me.push(fe),Ve.set(ke,fe)}let Ie=ee.length;for(let ke=Me.length-1;ke>=0;ke--){let B=Me[ke];B.before=Ie,B.ref&&(Ie=B.group)}Y={parent:Ce(Fe),refs:ee,index:Ve},re.set(D,Y)}let J=Y.index.get(N);return{parent:Y.parent,before:Y.refs.slice(J.before),after:Y.refs.slice(0,J.after).reverse()}},_e=N=>mn(N)?N.outerHTML:N.value,w=N=>mn(N)?"element":N.kind==="comment"?"comment":"text",V=(N,D)=>({path:N,offset:D}),ne=(N,D,Y)=>{if(!N)return null;let J=u[Y],se=0;if(D){let Fe=mn(D)?D:D.nodes[D.nodes.length-1];Fe.parentNode&&(se=J.indexIn(Fe.parentNode,Fe)+1)}return V(J.containerPath(N),se)},te=(N,D)=>{let Y=W(N,"base"),J=Y?d(f(D),Y):null;if(!mn(J))return null;let se=r(Y),Fe=null;for(let ee=se.indexOf(N)-1;ee>=0&&!Fe;ee--){let Me=d(f(D),se[ee]);Me&&W(Me,D)===J&&(Fe=Me)}return ne(J,Fe,D)},Pe=(N,D,Y,J)=>{let se=u[J],Fe=0;for(let ee=0;ee<N.nodes.length;ee++){let Me=N.nodes[ee],Ve=Me.nodeValue.length,Ie=ee===N.nodes.length-1;if((Y==="start"?D<Fe+Ve:D<=Fe+Ve)||Ie)return V(se.pathOf(Me),Math.max(0,Math.min(D-Fe,Ve)));Fe+=Ve}return null},ze=(N,D)=>{let Y=u[D],J=N.firstChild,se=N.lastChild;return J&&J.nodeType===3&&se.nodeType===3?{start:V(Y.pathOf(J),0),end:V(Y.pathOf(se),se.nodeValue.length)}:{start:V(Y.pathOf(N),0),end:V(Y.pathOf(N),N.childNodes.length)}},Se=(N,D,Y)=>{for(let ee of N.nodes)if(Y==="start"?ee.s<=D&&D<ee.e:ee.s<D&&D<=ee.e)return{kind:"text",node:ee.node,offset:D-ee.s};let J=Y==="start"?D:D-1,se=()=>{for(let ee of N.nodes)if(ee.s===D||ee.e===D)return{kind:"text",node:ee.node,offset:D-ee.s};return null},Fe=N.atomAt.get(J);if(Fe)return{kind:Y==="start"?"before":"after",node:Fe.el};if(N.text[J]===Tt){let ee=N.marks.find(Ve=>Ve.block&&Ve.to===J+1);if(ee)return Y==="start"?{kind:"end",node:ee.el}:{kind:"after",node:ee.el};let Me=N.marks.find(Ve=>Ve.block&&Ve.from===J+1);if(Me)return Y==="start"?{kind:"before",node:Me.el}:{kind:"startOf",node:Me.el}}return se()},it=(N,D)=>Se(N,D,"end")||Se(N,D,"start"),tt=(N,D)=>{switch(D.kind){case"text":return V(N.pathOf(D.node),D.offset);case"end":return V(N.containerPath(D.node),jn(D.node).childNodes.length);case"startOf":return V(N.containerPath(D.node),0);default:{let Y=D.node.parentNode;return V(N.containerPath(Y),N.indexIn(Y,D.node)+(D.kind==="after"?1:0))}}},Q=(N,D,Y,J,se)=>{let Fe=Se(N,D,Y);return Fe?tt(u[J],Fe):se()},ce=(N,D,Y,J)=>{let se=N.textNodes.map(Ie=>({s:Ie.ms,e:Ie.me,start:{kind:"text",node:Ie.node,offset:0},end:{kind:"text",node:Ie.node,offset:Ie.me-Ie.ms}}));for(let[Ie,ke]of N.atomOut)se.push({s:Ie,e:Ie+1,start:{kind:"before",node:ke},end:{kind:"after",node:ke}});for(let[Ie,ke]of N.breakOut)se.push({s:Ie,e:Ie+1,start:{kind:"end",node:ke},end:{kind:"after",node:ke}});for(let Ie of se)if(Ie.start.kind==="text"&&Ie.s<D&&D<Ie.e)return{kind:"text",node:Ie.start.node,offset:D-Ie.s};if(Y!=="empty"){let Ie=se.find(ke=>Y==="start"?ke.s===D:ke.e===D);if(Ie)return Y==="start"?Ie.start:Ie.end}let Fe=se.find(Ie=>Ie.e===D);if(Fe)return Fe.end;let ee=se.find(Ie=>Ie.s===D);if(ee)return ee.start;let Me=null,Ve=null;for(let Ie of se)Ie.e<=D&&(!Me||Ie.e>Me.e)&&(Me=Ie),Ie.s>=D&&(!Ve||Ie.s<Ve.s)&&(Ve=Ie);return Me?Me.end:Ve?Ve.start:J()},Re=(N,D)=>{if(!D)return null;if(D.kind==="text"){let se=N.nodes.find(Fe=>Fe.node===D.node);return se?se.s+Math.min(D.offset,se.e-se.s):null}let Y=N.atoms.find(se=>se.el===D.node);if(Y)return D.kind==="after"?Y.i+1:Y.i;let J=N.marks.find(se=>se.el===D.node);return J?D.kind==="before"&&J.block&&N.text[J.from-1]===Tt&&!N.marks.some(se=>se.block&&se.to===J.from)?J.from-1:D.kind==="startOf"||D.kind==="before"?J.from:D.kind==="end"&&J.block?J.to-1:J.to:null},Ue=(N,D,Y,J)=>{for(let Me of N.nodes)if(Y==="start"?Me.s<=D&&D<Me.e:Me.s<D&&D<=Me.e)return{kind:"text",node:Me.node,offset:D-Me.s};let se=Y==="start"?D:D-1;if(!N.atomAt.has(se)&&N.text[se]!==Tt){for(let Me of N.nodes)if(Me.s===D||Me.e===D)return{kind:"text",node:Me.node,offset:D-Me.s}}let Fe=N.atomAt.get(se);if(Fe)return{kind:Y==="start"?"before":"after",node:Fe.el};if(N.text[se]===Tt){let Me=N.marks.find(Ie=>Ie.block&&Ie.to===se+1);if(Me)return Y==="start"?{kind:"end",node:Me.el}:{kind:"after",node:Me.el};let Ve=N.marks.find(Ie=>Ie.block&&Ie.from===se+1);if(Ve)return Y==="start"?{kind:"before",node:Ve.el}:{kind:"startOf",node:Ve.el}}let ee=N.marks.find(Me=>Me.block&&Me.from===D);return ee?{kind:"startOf",node:ee.el}:J?{kind:Y==="start"?"startOf":"end",node:J}:null},qe=N=>{if(!N)return null;if(N.kind==="wholeStart"||N.kind==="wholeEnd"){let D=ot(N.node);return N.kind==="wholeStart"?D.start:D.end}return tt(u.out,N)},ot=N=>{let D=N.firstChild,Y=N.lastChild;return D&&D.nodeType===3&&Y.nodeType===3?{start:V(u.out.pathOf(D),0),end:V(u.out.pathOf(Y),Y.nodeValue.length)}:{start:V(u.out.pathOf(N),0),end:V(u.out.pathOf(N),N.childNodes.length)}},xt=N=>{let D=W(N,"base"),Y=D?j(I(D))[0]:null;if(!Y)return null;let J=jn(Y),se=r(D);for(let Fe=se.indexOf(N)-1;Fe>=0;Fe--){let ee=j(I(se[Fe])).filter(Me=>Me.parentNode===J);if(ee.length)return{kind:"after",node:ee[ee.length-1]}}return{kind:"startOf",node:Y}},kt=(N,D,Y,J,se,Fe)=>({text:N,start:D,end:Y,fragment:J,span:se,scope:Fe}),Ct=(N,D,Y,J,se)=>kt(N,D,Y,N.slice(D,Y),J,se),dt=(N,D,Y,J,se)=>(v.spans.set(N,{start:D,end:Y,scopeStart:J,scopeEnd:se}),N),St=new Map,ht=new Map,H=(N,D,Y)=>{let J=`text:${N.key}:${D}:${Y}`,se=ht.get(J)||0;return ht.set(J,se+1),`${J}:${se}`},ie=(N,D)=>{let Y,J,se,Fe="plain",ee,Me,Ve,Ie,ke,B=(be,fe,we,oe,K)=>{if(!be){let ue=te(K,oe);return Ct("",0,0,{start:ue,end:ue},{start:ue,end:ue})}return Ct(be.value,fe,we,{start:Pe(be,fe,fe===we?"end":"start",oe),end:Pe(be,we,"end",oe)},{start:Pe(be,0,"start",oe),end:Pe(be,be.value.length,"end",oe)})};if(D.site==="run"){let{bRun:be,lRun:fe,rRun:we,node:oe,c:K}=D;Y=I(be),J=K.bs,se=K.be,ee=B(be,K.bs,K.be,"base",be),Me=B(fe,K.ls,K.le,"local",be),Ve=B(we,K.rs,K.re,"remote",be);let ue=oe?oe.nodeValue:"",Le=De=>oe?{kind:"text",node:oe,offset:De}:xt(be);Ie=dt(Ct(ue,K.ms,K.me,{start:qe(Le(K.ms)),end:qe(Le(K.me))},{start:qe(Le(0)),end:qe(Le(ue.length))}),Le(K.ms),Le(K.me),Le(0),Le(ue.length)),ke=oe||(xt(be)||{}).node||null}else if(D.site==="whole"){let be=D.el,fe=o.get(be);Y=I(fe.base),J=0,se=N.base.length;let we=(K,ue,Le)=>{let De=ze(ue,Le);return Ct(K,0,K.length,De,De)};ee=we(N.base,fe.base,"base"),Me=we(N.local,fe.local,"local"),Ve=we(N.remote,fe.remote,"remote");let oe=ot(be);Ie=dt(Ct(N.resolved,0,N.resolved.length,oe,oe),{kind:"wholeStart",node:be},{kind:"wholeEnd",node:be},{kind:"wholeStart",node:be},{kind:"wholeEnd",node:be}),ke=be}else if(D.site==="comment"){let{bRun:be,lRun:fe,rRun:we,node:oe}=D;Y=I(be),J=0,se=N.base.length;let K=(We,Oe)=>{if(!We){let E=te(be,Oe);return Ct("",0,0,{start:E,end:E},{start:E,end:E})}let Ze=We.nodes[0],st={start:V(u[Oe].pathOf(Ze),0),end:V(u[Oe].pathOf(Ze),We.value.length)};return Ct(We.value,0,We.value.length,st,st)};ee=K(be,"base"),Me=K(fe,"local"),Ve=K(we,"remote");let ue=N.resolved,Le=We=>oe?{kind:"text",node:oe,offset:We}:xt(be),De={start:qe(Le(0)),end:qe(Le(ue.length))};Ie=dt(Ct(ue,0,ue.length,De,De),Le(0),Le(ue.length),Le(0),Le(ue.length)),ke=oe||(xt(be)||{}).node||null}else{let{fb:be,fl:fe,fr:we,scope:oe}=D,K=D.merged;Fe="html",Y=oe.base?I(oe.base):P(oe.local,"local"),J=N.bs,se=N.be;let ue=He=>{let Xe=oe[He];for(let Qe=oe.at-1;Qe>=0;Qe--){let rt=oe.units[Qe],jt=He==="base"?rt:d(f(He),rt);if(jt&&W(jt,He)===Xe)return jt}return null},Le=He=>()=>ne(oe[He],ue(He),He),De=(He,Xe,Qe,rt,jt)=>{let Et=Jt=>Jt?tt(u[jt],Jt):Le(jt)(),en=Xe===Qe?it(He,Xe):Se(He,Xe,"start"),Pt=Xe===Qe?it(He,Xe):Se(He,Qe,"end"),vt=Et(en),At={start:vt,end:Xe===Qe?vt:Et(Pt)},wt=D.full?D.full(jt):null;if(!wt)return kt(He.text,Xe,Qe,rt,At,{start:Et(Se(He,0,"start")),end:Et(Se(He,He.text.length,"end"))});let Ft=en?Re(wt,en):null,mt=Pt?Re(wt,Pt):null,Wt=Ft===null?0:Ft,Mt=Math.max(Wt,mt===null?wt.text.length:mt),gn=Et(Se(wt,0,"start"));return kt(wt.text,Wt,Mt,Rr(wt,Wt,Mt),At,{start:gn,end:wt.text.length?Et(Se(wt,wt.text.length,"end")):gn})};ee=D.synthetic?null:De(be,N.bs,N.be,N.base,"base"),Me=De(fe,N.lss,N.lse,N.local,"local"),Ve=De(we,N.rss,N.rse,N.remote,"remote");let[We,Oe]=N.range||[0,0],Ze=K.out,st=()=>{let He=jn(K.node);for(let Xe=oe.at-1;Xe>=0;Xe--){let Qe=j(I(oe.units[Xe])).filter(rt=>rt.parentNode===He);if(Qe.length)return{kind:"after",node:Qe[Qe.length-1]}}for(let Xe=oe.at;Xe<oe.units.length;Xe++){let Qe=j(I(oe.units[Xe])).filter(rt=>rt.parentNode===He);if(Qe.length)return{kind:"before",node:Qe[0]}}return{kind:"startOf",node:K.node}};if(Ze.via)for(let[He,Xe]of Ze.via)S.set(He,Xe);let E=ce(K,We,We===Oe?"empty":"start",st),z=We===Oe?E:ce(K,Oe,"end",st),Z=Ze.text.length?Ue(Ze,0,"start",K.node):st(),ye=Ze.text.length?Ue(Ze,Ze.text.length,"end",K.node):Z,de=Re(Ze,E),le=Re(Ze,z),ae=de===null?0:de,$e=Math.max(ae,le===null?Ze.text.length:le);Ie=dt(kt(Ze.text,ae,$e,Rr(Ze,ae,$e),{start:qe(E),end:qe(z)},{start:qe(Z),end:qe(ye)}),E,z,Z,ye);let Je=v.spans.get(Ie);if(Je.flat=Ze,!Ze.text.length){let He=qe(Z),Xe=kr(h,He),Qe=Xe[0],rt=Xe[1];Je.empty={parent:Qe.nodeType===11?m.get(Qe):Qe,previous:Qe.childNodes[rt-1]||null,next:Qe.childNodes[rt]||null}}ke=E?E.node:K.node}let G=Ce(Y),he=(D.site==="whole"||D.site==="comment"||(D.policy||s)!=="both")&&N.resolved!==N.local;return{key:D.site==="comment"&&St.get(Y.b||Y.l||Y.r)||H(G,J,se),subject:G,localLost:he,anchor:ke,text:{encoding:Fe,base:ee,local:Me,remote:Ve,merged:Ie,liveSpan:null,liveScope:null}}},pe=(N,D)=>{let Y=A(D.el),J=Ce(Y),se=D.sample;return{key:`attr:${J.key}:${se.namespaceURI||""}:${se.localName}`,subject:J,localLost:N.resolved!==N.local,anchor:D.el,attribute:{namespaceURI:se.namespaceURI||null,localName:se.localName,qualifiedName:se.name}}},ge=(N,D)=>{let Y=N.detail,J=D.unit||I(D.subject),se=Ce(J),Fe=v.refs.get(se),ee=J.l?Ee(J.l,"local"):null,Me=J.r?Ee(J.r,"remote"):null,Ve=Fe.length?Ge(Fe[0]):null,Ie,ke,B,G=null,he=null,be=D.deleted;switch(Y){case"both-reordered":{Ie=ke="reordered";let fe=new Set(D.rKept),we=D.lKept.filter(De=>fe.has(De)&&j(I(De)).length),oe=De=>y.get(j(I(De))[0]);G=we.map(De=>Ce(I(De))),he=we.slice().sort((De,We)=>oe(De)-oe(We)).map(De=>Ce(I(De)));let K=De=>!mn(De)&&De.kind!=="comment"&&De.nodes.every(We=>!/[^\t\n\f\r ]/.test(We.data)),ue=we.filter(De=>!K(De)),Le=ue.slice().sort((De,We)=>oe(De)-oe(We));B=ue.some((De,We)=>De!==Le[We]);break}case"both-moved":Ie=ke="moved",B=!ee||!Fe.some(fe=>{let we=fe===Fe[0]?Ve:Ge(fe);return we&&we.parent===ee.parent});break;case"edit-beats-delete":Ie=be==="local"?"deleted":"edited",ke=be==="remote"?"deleted":"edited",B=be==="local";break;case"move-beats-delete":Ie=be==="local"?"deleted":"moved",ke=be==="remote"?"deleted":"moved",B=be==="local";break;case"remote-wins":Ie="edited",ke="edited",B=!0;break;default:Ie=ke="inserted",B=D.localLost}return{key:`structure:${se.key}:${Y}`,subject:se,localLost:B,anchor:Fe[0]||null,structure:{localAction:Ie,remoteAction:ke,localPlacement:ee,remotePlacement:Me,mergedPlacement:Ve,localOrder:G,mergedOrder:he,localFragment:Y==="both-reordered"||!J.l?null:_e(J.l),fragmentKind:w(J.b||J.l||J.r)}}};for(let[N,D]of l){if(N.kind!=="structure")continue;let Y=D.unit||I(D.subject),J=Y.b||Y.l||Y.r;!mn(J)&&J.kind==="comment"&&St.set(J,`structure:${Ce(Y).key}:${N.detail}`)}let Ae=new Map;for(let[N,D]of l){if(N.kind==="structure"){let Fe=Ce(D.unit||I(D.subject)),ee=`structure:${Fe.key}:${N.detail}`,Me=Ae.get(ee);if(Me&&Me.structure){N.recovery=Me;let Ve=v.refs.get(Fe);N.el==null&&Ve.length&&(N.el=mn(Ve[0])?Ve[0]:u.out.logicalParent(Ve[0]));continue}}let Y=N.kind==="text"?ie(N,D):N.kind==="attr"?pe(N,D):ge(N,D),J=Ae.get(Y.key);J||(J={version:nd,key:Y.key,localLost:Y.localLost,subject:Y.subject,applied:!1,unavailable:null},Ae.set(Y.key,J),v.anchors.set(J,Y.anchor)),Y.text&&(J.text=Y.text),Y.attribute&&(J.attribute=Y.attribute),Y.structure&&(J.structure=Y.structure),Y.text&&(J.localLost=Y.localLost),N.recovery=J;let se=v.refs.get(Y.subject);N.kind==="structure"&&N.el==null&&se.length&&(N.el=mn(se[0])?se[0]:u.out.logicalParent(se[0])),N.kind==="text"&&N.node==null&&se.length&&Y.subject.nodeType===8&&(N.node=se[0])}return v}}function ca(e,t,n){if(!t)return;let{lookup:r,vetoed:o,vetoedAttrs:s,liveAttr:l}=n,i=n.ignored||(()=>!1),a=xr(n.liveRoot),c=T=>!!T&&a.containerPath(T)!==null,h=T=>{let A=T.parentNode;return A&&A.nodeType===11?t.outOwners.get(A)||null:A},u=T=>{for(let A=T;A;A=h(A))if(t.via.has(A)&&(A=t.via.get(A)),o.has(A)||n.vetoedLive?.has(g(A)))return!0;return!1},f=T=>Array.from(jn(T).children).filter(A=>!i(A)),d=(T,A)=>f(T)[f(A.parentNode).indexOf(A)],p=(T,A)=>{let W=null,F=null,$=0;for(let re=A.previousSibling;re;re=re.previousSibling){if(re.nodeType===1&&!i(re)){W=re;break}re.nodeType===3&&($+=re.nodeValue.length)}for(let re=A.nextSibling;re&&!F;re=re.nextSibling)re.nodeType===1&&!i(re)&&(F=re);let Ne=W?d(T,W):null,Ce=F?d(T,F):null;if(W&&!Ne||F&&!Ce)return null;let Be=[];for(let re=Ne?Ne.nextSibling:jn(T).firstChild;re&&re!==Ce;re=re.nextSibling)re.nodeType===3&&Be.push(re);return Be.length?{nodes:Be,lead:$}:null},y=T=>{let A=[],W=T;for(;W&&!t.via.has(W);W=W.parentNode)A.push(W);if(!W||!A.length)return null;let F=g(t.via.get(W));for(let Ce=A.length-1;Ce>0&&F;Ce--)F=d(F,A[Ce]);if(!F)return null;let $=A[0];if($.nodeType===3)return p(F,$);let Ne=$.nodeType===1?d(F,$):null;return Ne?{nodes:[Ne],lead:0}:null},m=T=>{let A=r(T),W=A?{nodes:Array.isArray(A)?A:[A],lead:0}:t.via.size?y(T):null;if(!W)return null;let F=W.nodes.filter(c);return F.length?{nodes:F,lead:W.lead}:null},g=T=>{let A=m(T);return A?A.nodes[0]:null},k=T=>{if(!T)return null;if(T.kind==="text"){let $=m(T.node);if(!$)return null;let Ne=$.nodes,Ce=T.offset+$.lead,Be=0;for(let re=0;re<Ne.length;re++){let Ee=Ne[re].nodeValue.length;if(Ce<=Be+Ee||re===Ne.length-1)return Ce>=Be&&Ce<=Be+Ee?[Ne[re],Ce-Be]:null;Be+=Ee}return null}let A=g(T.node);if(!A)return null;if(T.kind==="end")return[jn(A),jn(A).childNodes.length];if(T.kind==="startOf")return[jn(A),0];if(T.kind==="wholeStart")return A.firstChild?[A.firstChild,0]:[A,0];if(T.kind==="wholeEnd")return A.lastChild?[A.lastChild,A.lastChild.nodeValue.length]:[A,A.childNodes.length];let W=A.parentNode;if(!W)return null;let F=Array.prototype.indexOf.call(W.childNodes,A);return[W,T.kind==="after"?F+1:F]},S=T=>({blocks:new Set((T.flat?.marks||[]).filter(A=>A.block).map(A=>g(A.el)).filter(Boolean)),atoms:new Set((T.flat?.atoms||[]).map(A=>g(A.el)).filter(Boolean)),ignored:i}),v=(T,A,W,F)=>{if(!T||!A||!yr(T)||!yr(A))return!1;for(let Ce of[T,A])if(!c(Ce.startContainer)||!c(Ce.endContainer))return!1;let $=W.merged;if($.start===$.end&&(T.startContainer!==T.endContainer||T.startOffset!==T.endOffset))return!1;let Ne=S(F);return sr(A,W.encoding,Ne)===$.text&&sr(T,W.encoding,Ne)===$.text.slice($.start,$.end)},x=new Map,O=T=>{let A=T.parentNode;return A?(x.has(A)||x.set(A,new Map(Array.from(A.childNodes,(W,F)=>[W,F]))),x.get(A).get(T)):-1},C=(T,A)=>{if(!A)return!1;let W=a.logicalParent(T);if(!A.parent.live.includes(W))return!1;let F=O(T);for(let[$,Ne]of[["before",1],["after",-1]]){let Ce=F;for(let Be of A[$]){if(Be.live.includes(T))continue;let re=Be.live.filter(Ge=>Ge!==T&&Ge.parentNode===T.parentNode);if(!re.length)continue;let Ee=Ne===1?Math.min(...re.map(O)):Math.max(...re.map(O));if(Ne*(Ee-Ce)<=0)return!1;Ce=Ee}}return!0},_=T=>{let A=T.structure;if(A.mergedOrder){let W=new Set(T.subject.live.map(jn)),F=null,$=-1;for(let Ne of A.mergedOrder){let Ce=Ne.live.find(Be=>W.has(Be.parentNode));if(!Ce||F&&Ce.parentNode!==F||O(Ce)<=$)return!1;F=Ce.parentNode,$=O(Ce)}return T.subject.live.length>0}return T.subject.live.some(W=>C(W,A.mergedPlacement))},M=(T,A)=>{let W=k(T),F=k(A);return W&&F?{startContainer:W[0],startOffset:W[1],endContainer:F[0],endOffset:F[1]}:null},j=new Set,I=T=>{if(!T||j.has(T))return;j.add(T);let A=[];for(let W of t.refs.get(T)||[]){let F=m(W);if(F)for(let $ of F.nodes)A.includes($)||A.push($)}T.live=A},P=T=>{T&&(I(T.parent),T.before.forEach(I),T.after.forEach(I))},R=new Set;for(let T of e){let A=T.recovery;if(!A||R.has(A))continue;R.add(A),I(A.subject),A.structure&&(P(A.structure.localPlacement),P(A.structure.remotePlacement),P(A.structure.mergedPlacement),(A.structure.localOrder||[]).forEach(I),(A.structure.mergedOrder||[]).forEach(I));let W=t.anchors.get(A),F=W?g(W):null,$=!!F;if(A.text){let w=t.spans.get(A.text.merged),V=w?M(w.start,w.end):null,ne=w?M(w.scopeStart,w.scopeEnd):null;if(w?.empty){let te=w.empty,Pe=te.previous?{kind:"after",node:te.previous}:{kind:"startOf",node:te.parent},ze=te.next?{kind:"before",node:te.next}:{kind:"end",node:te.parent},Se=M(Pe,ze);!Se||Se.startContainer!==Se.endContainer||Se.startOffset!==Se.endOffset?V=null:V=ne=Se}v(V,ne,A.text,w)||(V=ne=null),A.text.liveSpan=V,A.text.liveScope=V?ne:null,V||($=!1)}A.structure&&$&&($=_(A)),A.attribute&&$&&($=l(F,A.attribute,T.resolved));let Ne=(!!A.attribute||!!A.text&&F?.tagName==="TEXTAREA")&&!!s&&[W,F].some(w=>s.get(w)?.has(A.attribute?A.attribute.qualifiedName:"value")),Ce=t.localState?.states.get(A),Be=!!A.text&&[...n.removedVetoes||[]].some(w=>Ce?.touched.has(w)),re=A.structure?.localAction==="inserted"&&[...o].some(w=>w===W||W?.contains(w)),Ee=W&&u(W)||Ne||Be||re,Ge=Ee&&la(A,T,t,c);Ge&&(Be||re&&A.localLost)&&($=!1);let _e=!$&&Ge&&Ee;A.applied=$,A.unavailable=$?null:_e?"hook-veto":"missing-output",_e&&(A.localLost=!1),!$&&A.text&&(A.text.liveSpan=A.text.liveScope=null)}}function Qo(e,t,n){let r=xr(t),o=xr(n),s=u=>!!u&&o.containerPath(u)!==null,l=u=>{if(u===t)return n;let f=r.pathOf(u);if(f&&t!==n){let d=kr(n,{path:f,offset:0});if(d&&d[0].nodeType===u.nodeType)return d[0]}return u},i=new Set,a=u=>{!u||i.has(u)||(i.add(u),u.live=u.live.map(l).filter(s))},c=u=>{u&&(u.startContainer=l(u.startContainer),u.endContainer=l(u.endContainer))},h=new Set;for(let u of e){u.node===t&&n.tagName==="SCRIPT"&&(u.node=n),u.el===t&&u.kind==="structure"&&(u.el=n);let f=u.recovery;if(!f||h.has(f))continue;if(h.add(f),a(f.subject),f.text){c(f.text.liveSpan),c(f.text.liveScope);let p=f.text.liveSpan,y=f.text.liveScope,m=f.text.merged,g=k=>!!k&&yr(k)&&s(k.startContainer)&&s(k.endContainer);(!g(p)||!g(y)||sr(y,f.text.encoding)!==m.text||sr(p,f.text.encoding)!==m.text.slice(m.start,m.end))&&(f.text.liveSpan=null,f.text.liveScope=null,f.applied=!1,f.unavailable="missing-output")}let d=f.structure;if(d){for(let p of[d.localPlacement,d.remotePlacement,d.mergedPlacement])p&&(a(p.parent),p.before.forEach(a),p.after.forEach(a));(d.localOrder||[]).forEach(a),(d.mergedOrder||[]).forEach(a),f.subject.live.length||(f.applied=!1,f.unavailable="missing-output")}}}var Dr=e=>e?.nodeType===1,go=e=>e?.tagName==="TEMPLATE"&&e.content?e.content:e;function rd({provenance:e,parentOf:t,twins:n,baseOf:r,build:o,ignored:s,remoteWins:l,discarded:i}){let a=new Map,c=new WeakMap;function h(d,p,y,m=!1){if(!Dr(d)||!Dr(y))return null;let g=a.get(d);if(g)(m||!g.selected&&p==="remote")&&(g.parent=t(y),g.port=y,g.sourceSide=p,g.selected=m);else{let k=c.get(d)||null;g={owner:d,parent:t(y),port:y,sourceSide:p,originalParent:t(d),originalPort:d,selected:m,state:k?"built":"planned",output:k,disposition:null},a.set(d,g)}return g}function u(d,p){if(!Dr(d)||!Dr(p))return;c.has(d)||c.set(d,p);let y=a.get(d);y&&y.state!=="attached"&&!y.output&&(y.output=p,y.state="built")}function f(d){if(!a.size)return;let p=new Map,y=new WeakMap,m=new WeakMap,g=new WeakSet,k=new Set,S=(P,R)=>{if(!P)return;if(Array.isArray(P)){for(let A of P)S(A,R);return}let T=p.get(P);T||p.set(P,T=[]),T.push(R)},v=(P,R)=>{if(!P)return;let T=[P];for(;T.length;){let A=T.pop();S(A,R);for(let W of go(A).childNodes)T.push(W)}};function x(P,R=null,T=!1){if(g.has(P))return;g.add(P),y.set(P,R);let A=e.get(P),W=T||!!(A&&l(A.remote||A.base));m.set(P,W);let F={node:P,kind:"node",authority:W};if(A?.pinned)v(A.local,{...F,kind:"ignored"});else if(A?.unchanged)for(let $ of[A.base,A.local,A.remote])v($,{...F,kind:"unchanged"});else if(A){for(let $ of[A.base,A.local,A.remote])S($,F);if(Dr(A.local))for(let $ of go(A.local).children)s($)&&v($,{...F,kind:"ignored"})}for(let $ of go(P).childNodes)x($,P,W)}let O=P=>{if(P.output&&g.has(P.output))return P.state="attached",P.disposition="node",!0;let{local:R,remote:T}=n(P.owner);for(let A of[P.owner,R,T]){let W=p.get(A);if(W?.length){let F=W.find($=>$.kind==="node")||W[0];return P.output=F.node,P.state="attached",P.disposition=F.kind,!0}}return!1},C=(P,R)=>(p.get(P)||[]).find(A=>A.kind==="node"&&Dr(A.node)&&(!A.authority||R.sourceSide==="remote"))?.node,_=(P,R,T)=>{let A=p.get(P)||[],W=T?[...A].reverse():A;for(let F of W){if(F.kind!=="node")continue;let $=F.node;for(;$&&y.get($)!==R;)$=y.get($);if($)return $}return null},M=(P,R,T)=>{let A=go(R);for(let W=T?.previousSibling;W;W=W.previousSibling){let F=_(W,R,!0);if(F){A.insertBefore(P,F.nextSibling);return}}for(let W=T?.nextSibling;W;W=W.nextSibling){let F=_(W,R,!1);if(F){A.insertBefore(P,F);return}}A.appendChild(P)};function j(P,R,T){let A=R==="base"?P:r(P,R),W=a.get(A);W&&W!==T&&I(W)}function I(P){if(P.state==="attached"||P.disposition==="remote-wins"||k.has(P)||O(P))return;k.add(P);let{local:R,remote:T}=n(P.owner);if(l(T||P.owner)){if(!T){P.disposition="remote-wins",i(P.owner,R),k.delete(P);return}P.parent=t(T),P.port=T,P.sourceSide="remote"}if(j(P.parent,P.sourceSide,P),O(P)){k.delete(P);return}let A=C(P.parent,P),W=P.port;if(!A){if(j(P.originalParent,"base",P),O(P)){k.delete(P);return}let $=P.originalParent;for(W=P.originalPort;$&&!A;)A=C($,P),A||(W=$,$=t($))}if(!A)throw new Error("A planned move has no allowed surviving parent");let F=P.output||o(P.owner);P.output=F,P.state="built",M(F,A,W),x(F,A,m.get(A)||!1),O(P),k.delete(P)}x(d);for(let P of a.values())I(P)}return{planned:a,has:d=>a.has(d),plan:h,produced:u,drain:f}}function Fr(e,t,n,r,o,s,l,i,a,c,h,u,f){let d=null;return rd({provenance:e,parentOf:m=>{if(!m)return null;let g=t(m);if(g||m.parentNode?.nodeType!==11)return g;if(!d){d=new WeakMap;let k=[u,f];for(;k.length;){let S=k.pop(),v=go(S);v!==S&&d.set(v,S);for(let x of v.children)k.push(x)}}return d.get(m.parentNode)||null},twins:m=>({local:o(n,m),remote:o(r,m)}),baseOf:(m,g)=>m&&(g==="local"?n:r).reverse.get(m)||null,build:m=>s(m,o(n,m),o(r,m),!1),ignored:l,remoteWins:i,discarded:(m,g)=>{g&&h(m,g,n)&&!a.some(k=>k.detail==="remote-wins"&&k.base===m)&&c({kind:"structure",el:null,detail:"remote-wins",base:m,local:g,remote:null},{subject:m})}})}function od({parent:e,base:t,views:n,eligible:r,ignored:o,remoteWins:s,budget:l=Xt(2e4*32),maxUnits:i=256,maxCharacters:a=2e4}){let c=(g,k=null)=>({status:g,reason:k,parent:e,records:[]});if(n.some(({V:g})=>g.asBase)||o(e)||s(e)||n.some(({V:g})=>!g.el||o(g.el)||s(g.el)))return c("none");let h=t.length+n[0].V.units.length+n[1].V.units.length;if(h>i)return c("fallback","unit-limit");let u=Symbol(),f=g=>{if(g>l.remaining)throw u;l.remaining-=g,l.crossParentSteps=(l.crossParentSteps||0)+g},d=new Map,p=0,y=g=>{if(f(1),d.has(g))return d.get(g);let k=g.nodeType===1?g.childNodes:g.nodes;f(k.length*4+1);let S=g.nodeType===1?Array.from(k):k,v=0;for(let C=0;C<S.length;C++){let _=S[C];if(_.nodeType!==3||C&&S[C-1].nextSibling!==_)return d.set(g,null),null;v+=_.data.length}if(v>a-p)throw u;f(v*8+1),p+=v;let x=on(S);if(x.text.includes(Tt))return d.set(g,null),null;let O={unit:g,nodes:S,flat:x};return d.set(g,O),O},m=[];try{f(h*8+1);for(let g=0;g<2;g++){let k=n[g].V,S=n[1-g].V,v=[],x=new Map;for(let O=0;O<t.length;O++){f(1);let C=t[O];if(C.kind!=="text"||k.twin(C))continue;let _=S.twin(C);if(!_||_.kind!=="text"||!S.here(_))continue;let M=y(C),j=y(_);if(!M||!j||!/\S/.test(M.flat.text))continue;f(M.flat.text.length*2+1);let I=M.flat.text;x.set(I,(x.get(I)||0)+1),v.push({source:C,opposite:_,sourceModel:M,oppositeModel:j,index:O})}for(let O of v){let{source:C,opposite:_,sourceModel:M,oppositeModel:j,index:I}=O,P=[];for(let V of[-1,1]){f(1);let ne=t[I+V];if(!ne||ne.nodeType!==1||!r(ne)||o(ne)||s(ne))continue;let te=M.nodes[0],Pe=M.nodes.at(-1);if(V===-1?te?.previousSibling!==ne:Pe?.nextSibling!==ne)continue;let ze=k.twin(ne),Se=S.twin(ne);if(!ze||!Se||!k.here(ze)||S.here(Se)||k.baseOf(ze)!==ne||S.baseOf(Se)!==ne||!r(ze)||!r(Se)||o(ze)||o(Se)||s(ze)||s(Se)||ze.tagName!==ne.tagName||Se.tagName!==ne.tagName||ze.namespaceURI!==ne.namespaceURI||Se.namespaceURI!==ne.namespaceURI)continue;let it=y(ne),tt=y(ze),Q=y(Se);if(!it||!tt||!Q||!/\S/.test(it.flat.text))continue;let ce=it.flat.text,Re=M.flat.text,Ue=tt.flat.text;if(f((ce.length+Re.length+Ue.length)*3+1),Ue.length!==ce.length+Re.length)continue;let qe=V===-1;(qe?!Ue.startsWith(ce)||!Ue.endsWith(Re):!Ue.startsWith(Re)||!Ue.endsWith(ce))||P.push({owner:ne,target:ze,moved:Se,ownerBase:it,joined:tt,ownerOther:Q,targetFrom:qe?ce.length:0,retainedFrom:qe?0:Re.length})}if(!P.length)continue;if(P.length!==1||x.get(M.flat.text)!==1)return c("fallback","ambiguous-origin");let R=P[0],{owner:T,target:A,moved:W,ownerBase:F,joined:$,ownerOther:Ne,targetFrom:Ce,retainedFrom:Be}=R;if(f(m.length+1),m.some(V=>V.owner===T))return c("fallback","ambiguous-owner");let re={source:C,target:A,from:0,to:M.flat.text.length,targetFrom:Ce},Ee=Hn({base:M.flat,side:$.flat,retained:[],transfers:[{from:re.from,to:re.to,target:Ce,destination:T}],budget:l});if(Ee.status!=="ready"||Ee.covers(re.from,re.to)!==!0)return c("fallback",Ee.reason||"work-limit");let Ge=[{unit:C,model:M,from:0,to:M.flat.text.length},null,null];Ge[g+1]={unit:A,model:$,from:Ce,to:Ce+M.flat.text.length},Ge[2-g]={unit:_,model:j,from:0,to:j.flat.text.length};let _e=[F,null,null];_e[g+1]=$,_e[2-g]=Ne;let w=[T,null,null];w[g+1]=A,w[2-g]=W,m.push({side:g,parent:e,source:C,target:A,owner:T,owners:w,ownerModels:_e,native:Ge,models:d,runs:[re],proof:Ee,retained:[{source:T,target:A,from:0,to:F.flat.text.length,targetFrom:Be}]})}}return m.length?{status:"ready",reason:null,parent:e,records:m}:c("none")}catch(g){if(g!==u)throw g;return c("fallback","work-limit")}}function fa({describe:e,parentOf:t,...n}){let r=new WeakMap,o=new WeakMap,s=n.budget||Xt(2e4*32),l=i=>{if(!i)return null;if(r.has(i))return r.get(i);r.set(i,{status:"planning",parent:i,records:[]});let a=e(i),c=a?od({...n,...a,parent:i,budget:s}):{status:"none",reason:null,parent:i,records:[]};if(r.set(i,c),c.status==="ready")for(let h of c.records)o.set(h.owner,[h]);return c};return{get:l,forOwner(i){return l(t(i))?.status==="ready"&&o.get(i)||null}}}function sd(e,t){if(e.side!==0)return null;let n=e.native[0].model,r=e.ownerModels[0],o=e.native[1].from!==0,s=(S,v)=>o?[...S.nodes,...v.nodes]:[...v.nodes,...S.nodes],l=e.ownerModels.reduce((S,v)=>S+v.flat.text.length,0)+n.flat.text.length+e.native[2].model.flat.text.length;if(l*8>t.remaining)return null;t.remaining-=l*8;let i={base:s(r,n),local:e.ownerModels[1].nodes,remote:s(e.ownerModels[2],e.native[2].model)},a=on(i.base),c=e.ownerModels[1].flat,h=on(i.remote),u=o?r.flat.text.length:0,f=o?0:n.flat.text.length,d=Hn({base:a,side:c,retained:e.retained.map(S=>({from:f+S.from,to:f+S.to,target:S.targetFrom})),transfers:e.runs.map(S=>({from:u+S.from,to:u+S.to,target:S.targetFrom,destination:e.owner})),budget:t});if(d.status!=="ready"||d.covers(0,a.text.length)!==!0)return null;let p=e.ownerModels[2].flat,y=e.native[2].model.flat,m=[];for(let[S,v,x,O]of[[r.flat,p,f,o?0:y.text.length],[n.flat,y,u,o?p.text.length:0]]){let C=fi(S,S,v).remoteMap.bTo,_=-1;for(let M=0;M<S.text.length;M++){if(C[M]<0){_=-1;continue}let j=m.at(-1);_>=0&&j.to===x+M&&j.target+j.to-j.from===O+C[M]?j.to++:(m.push({from:x+M,to:x+M+1,target:O+C[M]}),_=M)}}let g=Hn({base:a,side:h,retained:m,transfers:[],budget:t});if(g.status!=="ready")return null;let k=fi(a,c,h,{},{local:d,remote:g});return k.localEdits.hunks.length?null:(k.localMap=d,k.remoteMap=g,{nodes:i,prepared:k})}function ua({L:e,R:t,twinIn:n,unitsOf:r,view:o,parentOf:s,ignored:l,remoteWins:i,eligible:a,build:c,out:h,policy:u,provenance:f,textMappers:d,segments:p,conflicts:y,conflict:m,decisions:g}){let k=Xt(2e4*32),S=P=>{let R=0;for(let T=P;T;T=s(T))if(++R>64||T.nodeType===1&&(l(T)||i(T)))return!1;return!0},v=fa({parentOf:s,eligible:a,ignored:l,remoteWins:i,budget:k,describe(P){let R=n(e,P),T=n(t,P);return!R||!T||!S(P)||!S(R)||!S(T)?null:{base:r(P),views:[{A:e,V:o(e,R,P,!1)},{A:t,V:o(t,T,P,!1)}]}}}),x=new WeakSet,O=new WeakMap,C=new WeakSet,_=[];function M(P){if(!P||x.has(P))return;x.add(P);let R=v.get(P);if(R?.status==="ready")for(let T of R.records){if((P.tagName==="TEMPLATE"&&P.content?P.content:P).childNodes.length!==T.native[0].model.nodes.length+1||!T.owners.every(S))continue;let W=sd(T,k);if(!W)continue;let F={record:T,payload:W,state:"planned",output:null,result:null};O.set(T.owner,F),C.add(T.source),C.add(T.native[2].unit),_.push(F)}}function j(P,R){let T=O.get(P);if(!T)return!1;if(!T.result){if(T.result=br({...T.payload.nodes,prepared:T.payload.prepared,out:h,policy:u,provenance:f,textMappers:d,conflicts:y,conflict:m,decisions:g,node:R}),T.result.conflicts.length)throw new Error("Unsupported cross-parent payload conflict");p.push(...T.result.segments),T.decision={kind:"text",node:R,source:"local"},g.push(T.decision)}return T.decision.node=R,R.replaceChildren(...T.result.nodes),T.output=R,T.state="built",!0}function I(P){if(!_.length)return;let R=new WeakSet,T=new WeakMap,A=new WeakMap,W=new WeakMap,F=Ee=>Ee.tagName==="TEMPLATE"&&Ee.content?Ee.content:Ee,$=(Ee,Ge)=>{if(!Ee)return;if(Array.isArray(Ee)){for(let w of Ee)$(w,Ge);return}let _e=W.get(Ee);_e||W.set(Ee,_e=[]),_e.push(Ge)},Ne=(Ee,Ge=null,_e=!1)=>{R.add(Ee),T.set(Ee,Ge);let w=f.get(Ee),V=_e||!!(w&&i(w.remote||w.base));if(A.set(Ee,V),w)for(let ne of[w.base,w.local,w.remote])$(ne,Ee);if(!(w?.pinned||w?.unchanged))for(let ne of F(Ee).childNodes)Ne(ne,Ee,V)},Ce=Ee=>(W.get(Ee)||[]).find(Ge=>Ge.nodeType===1&&!A.get(Ge)&&!f.get(Ge)?.pinned&&!f.get(Ge)?.unchanged),Be=(Ee,Ge)=>{for(let _e of W.get(Ee)||[]){let w=_e;for(;w&&T.get(w)!==Ge;)w=T.get(w);if(w)return w}return null},re=(Ee,Ge,_e)=>{let w=F(Ge);for(let V=_e.nextSibling;V;V=V.nextSibling){let ne=Be(V,Ge);if(ne){w.insertBefore(Ee,ne);return}}for(let V=_e.previousSibling;V;V=V.previousSibling){let ne=Be(V,Ge);if(ne){w.insertBefore(Ee,ne.nextSibling);return}}w.appendChild(Ee)};Ne(P);for(let Ee of _){let{record:Ge}=Ee,_e=Ce(Ge.owner)||Ce(Ge.owners[1])||Ce(Ge.owners[2]);if(_e)(!Ee.result||Ee.output!==_e||Ee.result.nodes.some(w=>!R.has(w)||T.get(w)!==_e)||_e.textContent!==Ee.result.text)&&(j(Ge.owner,_e),Ne(_e,T.get(_e),A.get(_e)));else{let w=Ge.parent,V=Ge.owner,ne=null;for(;w&&!ne;)ne=Ce(w),ne||(V=w,w=s(w));if(!ne)throw new Error("A cross-parent payload has no allowed surviving parent");_e=Ee.output||c(Ge.owner,Ge.owners[1],Ge.owners[2],!1),Ee.result||j(Ge.owner,_e),re(_e,ne,V),Ne(_e,ne,A.get(ne))}Ee.state="attached"}}return{ensureParent:M,ensureOwner(P){M(s(P))},consumes(P){return C.has(P)},render:j,drain:I}}var Mn=/\S/,da=/[\p{L}\p{N}]/u;function vr(e,t,n,r){if(e?.nodeType!==1||!t(e))return!1;for(let o=e.firstChild;o;o=o.nextSibling)if(r(n,1),o.nodeType!==3)return!1;return!!e.firstChild}function pi(e,t,n){for(let r=e.parentNode;r;r=r.parentNode)if(n(t,1),r.nodeType===11)return!1;return!0}function ha(e,t,n,r,o){let s=n(e,r),l=n(t,r),i=null,a=null,c=null,h=null;o(r,s.length+l.length);for(let u of s)da.test(u.raw)&&(i||=u,a=u);for(let u of l)da.test(u.raw)&&(c||=u,h=u);return!!(i&&c&&(i.raw===c.raw||a.raw===h.raw))}function id({base:e,V:t,A:n,source:r,original:o,current:s,edited:l,destination:i,at:a,ownLength:c,eligible:h,model:u,tokensOf:f,budget:d,charge:p}){let y=o.flat.text,m=s.flat.text,g=l.flat.text,k=i.flat.text;if(p(d,y.length+m.length+k.length),y.startsWith(m)||y.endsWith(m))return!1;let S=Mn.test(k.slice(0,a)),v=Mn.test(k.slice(a+c));if(S===v)return!1;let x=S?0:a+c,O=S?a:k.length;for(;x<O&&!Mn.test(k[x]);)x++;for(;O>x&&!Mn.test(k[O-1]);)O--;let C=k.slice(x,O);if(Ln(C,k,f(i,d),d,p,!0)!==x)return!1;let _=Ln(C,y,f(o,d),d,p,!0);if(_<0)return!1;let M=_+C.length,j=!Mn.test(y.slice(0,_)),I=!Mn.test(y.slice(M));if(j===I||Ln(C,m,f(s,d),d,p,!1)>=0)return!1;let P=j?y.slice(M):y.slice(0,_),R=j?g.length-P.length:0;if(p(d,y.length+g.length),R<0||!Mn.test(P)||Ln(P,g,f(l,d),d,p,!0)!==R||!Mn.test(j?g.slice(0,R):g.slice(P.length)))return!1;for(let T of e){if(p(d,1),T===r||!vr(T,h,d,p))continue;let A=u(T,null,d);if(Ln(C,A.flat.text,f(A,d),d,p,!1)>=0)return!1}for(let T of t.units){if(p(d,1),T===s.unit||T===i.unit||!vr(T,h,d,p))continue;let A=u(T,n,d);if(Ln(C,A.flat.text,f(A,d),d,p,!1)>=0)return!1}return!0}function ma({base:e,views:t,side:n,attempt:r,eligible:o,blocked:s,baseId:l,model:i,tokensOf:a,charge:c,exhausted:h,limit:u}){if(u<=0)return null;let f=Xt(u),{V:d,A:p,idOf:y}=t[n],m=t[1-n],[g,k,S,v]=r,x=null;try{for(let O=g;O<=k;O++){c(f,1);let C=e[O];if(C.parentNode?.nodeType!==1||s.has(C)||p.identical.has(C)||m.A.identical.has(C)||!vr(C,o,f,c)||l(C))continue;let _=d.twin(C),M=m.V.twin(C);if(!_||!M||!d.here(_)||!m.V.here(M)||p.map.get(C)!==_||p.reverse.get(_)!==C||m.A.map.get(C)!==M||m.A.reverse.get(M)!==C||y(_)||m.idOf(M)||_.tagName!==C.tagName||M.tagName!==C.tagName||!vr(_,o,f,c)||!vr(M,o,f,c)||!pi(C,f,c)||!pi(_,f,c)||!pi(M,f,c))continue;let j=i(C,null,f),I=i(_,p,f),P=i(M,m.A,f),R=j.flat.text,T=I.flat.text,A=P.flat.text;if(c(f,R.length+T.length+A.length),!Mn.test(R)||!Mn.test(T)||!Mn.test(A)||R===T||R===A||T===A||!ha(j,I,a,f,c)||!ha(j,P,a,f,c))continue;let W=null,F=!1;for(let Ce=S;Ce<=v;Ce++){c(f,1);let Be=d.units[Ce],re=d.baseOf(Be);if(!re||re===C||s.has(re)||re.parentNode!==C.parentNode||Be.parentNode!==_.parentNode||re.tagName!==C.tagName||Be.tagName!==C.tagName||p.map.get(re)!==Be||p.reverse.get(Be)!==re||l(re)!==y(Be)||!vr(re,o,f,c)||!vr(Be,o,f,c))continue;let Ee=i(re,null,f),Ge=i(Be,p,f),_e=Ee.flat.text,w=Ge.flat.text;if(c(f,_e.length),!Mn.test(_e)||w.length<=_e.length)continue;let V=a(Ge,f),ne=Ln(_e,w,V,f,c,!0);if(!(ne<0||Ln(R,w,V,f,c,!0,ne,ne+_e.length)<0&&!id({base:e,V:d,A:p,source:C,original:j,current:I,edited:P,destination:Ge,at:ne,ownLength:_e.length,eligible:o,model:i,tokensOf:a,budget:f,charge:c}))){if(W){F=!0;break}W=Be}}if(!W||F)continue;let $=n===0?_:M,Ne=n===0?M:_;(x||=[]).push({source:C,local:$,remote:Ne,models:[j,n===0?I:P,n===0?P:I]})}}catch(O){if(O!==h)throw O}return x}var Wn=/\S/,xn=/\s/,ld=/[\s\u001e]/g,gi=/[^\s\p{P}\u001e\ufffc]/u;function ad(e,t,n,r,o,s,l){let i=0;for(let a of e)l(s,1),a.nodeType===1&&!r.baseOf(a)&&i++;if(i<2)return!1;for(let a of e){if(a.nodeType!==1||r.baseOf(a))continue;let c=o.get(a).flat;if(c.atoms.length||c.pins?.length)continue;l(s,c.text.length*2+t.length+n.length);let h=new Uint8Array(c.text.length);for(let u of n)u.target===a&&h.fill(1,u.targetFrom,u.targetFrom+u.to-u.from);for(let u of t)u.target===a&&h.fill(1,u.targetFrom,u.targetFrom+u.to-u.from);for(let u=0;u<c.text.length;u++)if(!h[u]&&Wn.test(c.text[u]))return!0}return!1}function cd(e,t,n){let{source:r,models:o,retained:s,runs:l}=e,i=o.get(r).flat.text;n(t,i.length*2+s.length+l.length);let a=new Uint8Array(i.length);for(let c of s)c.source===r&&(n(t,c.to-c.from),a.fill(1,c.from,c.to));for(let c of l)n(t,c.to-c.from),a.fill(1,c.from,c.to);for(let c=0;c<i.length;c++)if(!a[c]&&Wn.test(i[c]))return!1;return!0}function fd(e,t,n,r,o,s,l,i,a,c){let h=s.get(e),u=s.get(t),f=h.flat.text,d=l.get(e);a(c,f.length*2+n.length);let p=f.length,y=0;for(let k=0;k<f.length;k++)!xn.test(f[k])&&!d[k]&&(p=Math.min(p,k),y=k+1);if(p>=y)return null;for(let k=p;k<y;k++)if(!xn.test(f[k])&&d[k])return null;let m=-1;for(let k of n)if(k.target===t&&k.from<=p&&k.to>p){m=k.targetFrom+p-k.from;break}if(m<0)return null;let g=f.slice(p,y);if(a(c,g.length*(n.length+2)),u.flat.text.slice(m,m+g.length)!==g)return null;for(let k=p;k<y;k++){if(xn.test(f[k]))continue;let S=!1;for(let v of n)if(v.target===t&&v.from<=k&&v.to>k&&v.targetFrom+k-v.from===m+k-p){S=!0;break}if(!S)return null}if(h.flat.atoms.length||u.flat.atoms.length){a(c,h.flat.atoms.length+u.flat.atoms.length);let k=0,S=u.flat.atoms;for(;k<S.length&&S[k].i<m;)k++;for(let v of h.flat.atoms){if(v.i<p||v.i>=y)continue;let x=S[k++];if(!x||x.i!==m+v.i-p||u.alignment?.reverse.get(x.el)!==v.el)return null}if(k<S.length&&S[k].i<m+y-p)return null}for(let[k,S,v]of[[r,e,p],[o,t,m]]){let x=!1;for(let O of k){let C=s.get(O),_=l.get(O),M=i(C,c);for(let j=0;j<M.length;j++){let I=M[j].from,P=I+g.length;if(a(c,g.length*2+1),C.flat.text.slice(I,P)!==g)continue;let R=j;for(;R<M.length&&M[R].to<P;)a(c,1),R++;if(R===M.length||M[R].to!==P)continue;let T=!0;for(let A=I;A<P;A++)if(!xn.test(C.flat.text[A])&&_[A]){T=!1;break}if(T){if(x||O!==S||I!==v)return null;x=!0}}}if(!x)return null}return g}function ud(e,t,n,r,o,s,l,i){if(l(i,o.length+s.length+(r.length+1)*n.length*2),!n)return!1;let a=r.indexOf(n);return a<0||r.lastIndexOf(n)!==a||!s.some(c=>c.from===a)||!s.some(c=>c.to===a+n.length)?!1:o.some(c=>c.source===e&&c.target===t&&c.from===0&&c.to===n.length&&c.targetFrom===a)}function pa({base:e,views:t,eligible:n,baseId:r,ignored:o,remoteWins:s,atomKey:l,limit:i=2e4*8}){if(i<=0)return null;let a=Symbol(),c=(v,x)=>{if(x>v.remaining)throw a;v.remaining-=x},h=[new Map,new Map];for(let v=0;v<2;v++)for(let x=0;x<t[v].V.units.length;x++)h[v].set(t[v].V.units[x],x);let u=new Int32Array(e.length),f=new Int32Array(e.length),d=v=>t.every(({V:x},O)=>{let C=x.twin(v);return C&&h[O].has(C)}),p=-1;for(let v=0;v<e.length;v++)u[v]=p,d(e[v])&&(p=v);p=e.length;for(let v=e.length-1;v>=0;v--)f[v]=p,d(e[v])&&(p=v);let y=new Map,m=(v,x)=>{if(c(x,1),y.has(v))return y.get(v);let O=v.firstChild,C=1;for(;O;){if(c(x,C*8+8),O.nodeType===3&&c(x,O.data.length*8),O.nodeType===1&&En.has(O.tagName)&&!o(O)&&!s(O)&&O.firstChild){O=O.firstChild,C++;continue}for(;O&&O!==v&&!O.nextSibling;)O=O.parentNode,C--;O=!O||O===v?null:O.nextSibling}let _=on(Array.from(v.childNodes),{ignored:o,remoteWins:s});return y.set(v,_),_},g=(v,x,O,C,_,M)=>{for(let j of v.atoms){c(M,1);let I=x.atomAt.get(j.i+O);if(!I)return!1;let P=C?.reverse.get(j.el)||l(j.el),R=_?.reverse.get(I.el)||l(I.el);if(P!==R)return!1}return!0},k=(v,x,O,C,_)=>{let M=v.text.length<=x.text.length?v:x,j=M===v?x:v;if(c(_,M.text.length+j.text.length),!M.text||!Wn.test(M.text.replaceAll(zn,"")))return!1;let I;if(M.text===j.text)I=0;else{let P=j.text.length-M.text.length;if(c(_,(P+1)*M.text.length*2),j.text.startsWith(M.text))I=0;else if(j.text.endsWith(M.text))I=P;else return!1;if(j.text.indexOf(M.text)!==I||j.text.lastIndexOf(M.text)!==I)return!1;c(_,j.text.length*2);let R=0,T=I===0,A=!1;for(let W of hn(j.text,Tn(j.text)))R+=W.len,R===I&&(T=!0),R===I+M.text.length&&(A=!0);if(!T||!A)return!1}return M===v?g(M,j,I,O,C,_):g(M,j,I,C,O,_)},S=null;for(let v=0;v<2;v++){let{V:x,A:O,idOf:C}=t[v],_=t[1-v];if(!x.asBase)for(let M=0;M<e.length;M++){let j=e[M];if(x.twin(j)||!n(j))continue;let I=_.V.twin(j);if(!I||!h[1-v].has(I)||!n(I))continue;let P={remaining:i};try{let R=u[M],T=f[M],A=0;for(let Ne=R+1;Ne<T;Ne++)c(P,1),!x.twin(e[Ne])&&_.V.twin(e[Ne])&&n(e[Ne])&&A++;if(A!==1||m(j,P).text===m(I,P).text)continue;let W=R<0?-1:h[v].get(x.twin(e[R])),F=T===e.length?x.units.length:h[v].get(x.twin(e[T]));if(W===void 0||F===void 0||W>=F)continue;let $=null;for(let Ne=W+1;Ne<F;Ne++){c(P,1);let Ce=x.units[Ne];if(x.baseOf(Ce)||!n(Ce)||Ce.tagName!==j.tagName||Ce.namespaceURI!==j.namespaceURI)continue;let Be=r(j),re=_.idOf(I),Ee=C(Ce);if(!(Be&&re&&Be!==re||Be&&Ee&&Be!==Ee||re&&Ee&&re!==Ee)&&k(m(I,P),m(Ce,P),_.A,O,P)){if($){$=null;break}$=Ce}}if(!$)continue;S||(S=[new Map,new Map]),S[v].set(j,$)}catch(R){if(R!==a)throw R}}}return S?t.map(({V:v},x)=>{let O=S[x];if(!O.size)return v;let C=new Map;for(let[_,M]of O)C.set(M,_);return{...v,twin:_=>O.get(_)||v.twin(_),baseOf:_=>C.get(_)||v.baseOf(_)}}):null}function ga({onUncertainSource:e,onUncertainOwner:t,base:n,views:r,eligible:o,ignored:s,remoteWins:l,baseId:i,atomKey:a,limit:c=2e4*32}){if(c<=0)return null;let h=new Set(n),u=new Map(n.map((R,T)=>[R,T])),f=new Map,d=[],p=null,y=null,m=null,g=new Set;for(let R of n)for(let{V:T}of r){let A=T.twin(R);A&&!T.asBase&&!T.here(A)&&g.add(R)}let k=new Set,S=Symbol(),v=(R,T)=>{if(T>R.remaining)throw S;R.remaining-=T},x=(R,T,A)=>{v(A,1);let W=f.get(R);if(W)return W;if(R.nodeType===1){let Ne=R.firstChild,Ce=1;for(;Ne;){if(v(A,Ce*8+8),Ne.nodeType===3&&v(A,Ne.data.length*8),Ne.nodeType===1&&En.has(Ne.tagName)&&!s(Ne)&&!l(Ne)&&Ne.firstChild){Ne=Ne.firstChild,Ce++;continue}for(;Ne&&Ne!==R&&!Ne.nextSibling;)Ne=Ne.parentNode,Ce--;Ne=!Ne||Ne===R?null:Ne.nextSibling}}else v(A,R.value.length*8+R.nodes.length);let F=R.nodeType===1?Array.from(R.childNodes):R.nodes,$=F.length===1&&F[0].nodeType===3?{text:F[0].data,nodes:[{node:F[0],s:0,e:F[0].data.length}],atoms:[]}:on(F,{ignored:s,remoteWins:l});return W={unit:R,flat:$,alignment:T,tokens:null},f.set(R,W),W},O=(R,T)=>{if(R.tokens)return R.tokens;v(T,R.flat.text.length*8);let{unit:A,flat:W,alignment:F}=R,$=[],Ne=Tn(W.text),Ce=0,Be=re=>{for(let Ee of hn(W.text.slice(Ce,re),Ne))Ee.from=Ce,Ee.to=Ce+Ee.len,Ee.unit=A,$.push(Ee),Ce+=Ee.len};for(let re of W.atoms){Be(re.i);let Ee=l(re.el)&&re.el.nodeType===1?"w"+re.el.tagName+"#"+(re.el.id||""):a(F?.reverse.get(re.el)||re.el);$.push({k:Ee,raw:zn,len:1,from:Ce,to:Ce+1,unit:A,atom:!0}),Ce++}return Be(W.text.length),R.tokens=$,$},C=(R,T,A,W,F)=>{if(!R.flat.atoms.length&&!T.flat.atoms.length)return!0;let $=O(R,F),Ne=O(T,F);v(F,$.length+Ne.length);let Ce=0;for(let Be of Ne){if(!Be.atom||Be.from<A||Be.from>=A+W)continue;for(;Ce<$.length&&!$[Ce].atom;)Ce++;let re=$[Ce++];if(!re||re.from!==Be.from-A||re.k!==Be.k)return!1}for(;Ce<$.length;)if($[Ce++].atom)return!1;return!0},_=(R,T,A)=>{let W=R.length+T.length+4;if(W*8>A.remaining)return null;A.remaining-=W*8;let F=Math.floor(A.remaining/8),$=Math.min(R.length+T.length,4e3,Math.floor((Math.sqrt(W*W+F)-W)/2)),Ne=4*($+1)*(W+$+1);if($<1||Ne>A.remaining)return null;A.remaining-=Ne;let Ce=Yn(R,T,$),Be=[],re=0,Ee=0;for(let Ge of Ce.hunks){for(;re<Ge.bs;)R[re].raw===T[Ee].raw&&Be.push([R[re],T[Ee]]),re++,Ee++;re=Ge.be,Ee+=Ge.toks.length}for(;re<R.length&&Ee<T.length;)R[re].raw===T[Ee].raw&&Be.push([R[re],T[Ee]]),re++,Ee++;return Be},M=(R,T,A,W,F,$,Ne)=>{if(F<=W)return;let Ce=R[R.length-1];if(Ce&&Ce.source===T&&Ce.target===A&&Ce.to<=W&&Ce.targetFrom-Ce.from===$-W){v(Ne,(W-Ce.to)*3);let Be=f.get(T).flat.text,re=f.get(A).flat.text,Ee=!0;for(let Ge=Ce.to;Ge<W;Ge++)if(!xn.test(Be[Ge])||Be[Ge]!==re[$+Ge-W]){Ee=!1;break}if(Ee){Ce.to=F;return}}R.push({source:T,target:A,from:W,to:F,targetFrom:$})},j=R=>R.replace(ld,"");for(let R=0;R<r.length;R++){let{V:T,A,idOf:W}=r[R];if(T.asBase)continue;let F=new Map(T.units.map((w,V)=>[w,V])),$=w=>{let V=T.twin(w);return V&&F.has(V)?V:null},Ne=(w,V)=>{let ne=new Int32Array(w.length),te=new Int32Array(w.length),Pe=-1;for(let ze=0;ze<w.length;ze++)ne[ze]=Pe,V(w[ze])&&(Pe=ze);Pe=w.length;for(let ze=w.length-1;ze>=0;ze--)te[ze]=Pe,V(w[ze])&&(Pe=ze);return{prev:ne,next:te}},Ce=Ne(n,w=>(w.nodeType===1||w.kind==="text"&&Wn.test(w.value))&&$(w)),Be=Ne(T.units,w=>(w.nodeType===1||w.kind==="text"&&Wn.test(w.value))&&h.has(T.baseOf(w))),re=new Map,Ee=(w,V,ne,te)=>{if(w>V||ne>te)return;let Pe=`${w}:${V}:${ne}:${te}`;re.set(Pe,[w,V,ne,te])};for(let w=0;w<T.units.length;w++){let V=T.units[w];if(T.baseOf(V)||!o(V))continue;let ne=Be.prev[w],te=Be.next[w],Pe=ne<0?0:u.get(T.baseOf(T.units[ne])),ze=te===T.units.length?n.length-1:u.get(T.baseOf(T.units[te]));Ee(Pe,ze,Math.max(0,ne),Math.min(T.units.length-1,te))}for(let w=0;w<n.length;w++){let V=n[w];if(g.has(V)||!o(V))continue;if(!T.twin(V)){let it=Ce.prev[w],tt=Ce.next[w],Q=it<0?0:F.get($(n[it])),ce=tt===n.length?T.units.length-1:F.get($(n[tt]));Ee(Math.max(0,it),Math.min(n.length-1,tt),Q,ce)}let ne=$(V);if(!ne||A.identical.has(V)||!o(ne))continue;let te=w+1;for(;te<n.length&&n[te].kind==="text"&&!n[te].value.trim();)te++;if(te>=n.length||!o(n[te]))continue;let Pe=$(n[te]);if(!Pe||A.identical.has(n[te])||!o(Pe))continue;let ze=F.get(ne),Se=F.get(Pe);ze<Se&&Ee(w,te,ze,Se)}let Ge=Array.from(re.values()),_e=new Set;if(Ge.length>1){let w=Xt(c);try{v(w,Ge.length*4);let V=Ge.slice().sort((Pe,ze)=>(v(w,1),Pe[0]-ze[0]||Pe[2]-ze[2])),ne=[],te=null;for(let Pe of V)v(w,1),te&&Pe[0]<=te[1]&&Pe[2]<=te[3]&&Pe[3]>=te[2]?(te[1]=Math.max(te[1],Pe[1]),te[2]=Math.min(te[2],Pe[2]),te[3]=Math.max(te[3],Pe[3]),te[4].push(Pe)):(te?.[4].length>1&&ne.push(te),te=[Pe[0],Pe[1],Pe[2],Pe[3],[Pe]]);te?.[4].length>1&&ne.push(te),Ge=ne.concat(Ge)}catch(V){if(V!==S)throw V}}for(let w of Ge){if(_e.has(w))continue;let[V,ne,te,Pe,ze]=w,Se=Xt(c),it=[],tt=new Set,Q=!1;try{v(Se,(ne-V+Pe-te+2)*4);let ce=n.slice(V,ne+1).filter(ee=>!A.identical.has(ee)&&o(ee)&&!g.has(ee)),Re=T.units.slice(te,Pe+1).filter(ee=>o(ee)&&(!T.baseOf(ee)||h.has(T.baseOf(ee)))&&!A.identical.has(T.baseOf(ee))&&!g.has(T.baseOf(ee))),Ue=new Set(Re),qe=!1,ot="",xt="",kt=0;for(let ee of ce){let Me=x(ee,null,Se);ot+=Me.flat.text,kt+=Me.flat.text.length}for(let ee of Re){let Me=x(ee,A,Se);xt+=Me.flat.text,kt+=Me.flat.text.length}v(Se,kt);let Ct=j(ot),dt=j(xt),St=Ct===dt;if(Q=St,ze&&!St)continue;let ht=St?null:new Map;if(ht)for(let ee of ce.concat(Re)){let Me=f.get(ee).flat.text.length;v(Se,Me*16),ht.set(ee,new Uint8Array(Me))}let H=ee=>{let Me=[];for(let Ve of ee){let Ie=f.get(Ve);Ie.flat.atoms.length?Me.push(...O(Ie,Se)):Me.push({unit:Ve,raw:Ie.flat.text,from:0})}return Me},ie=[];for(let ee of St?[]:ce){let Me=$(ee);if(!Ue.has(Me))continue;let Ve=x(ee,null,Se),Ie=x(Me,A,Se);v(Se,Ve.flat.text.length+Ie.flat.text.length);let ke=Ve.flat.text&&Ie.flat.text.startsWith(Ve.flat.text)?0:Ve.flat.text&&Ie.flat.text.endsWith(Ve.flat.text)?Ie.flat.text.length-Ve.flat.text.length:-1;if(ke>=0&&C(Ve,Ie,ke,Ve.flat.text.length,Se)){ht.get(ee).fill(1),ht.get(Me).fill(1,ke,ke+Ve.flat.text.length),M(ie,ee,Me,0,Ve.flat.text.length,ke,Se);continue}let B=_(O(Ve,Se),O(Ie,Se),Se);if(!B){qe=!0;break}for(let[G,he]of B)ht.get(ee).fill(1,G.from,G.to),ht.get(Me).fill(1,he.from,he.to),M(ie,ee,Me,G.from,G.to,he.from,Se)}if(qe)continue;let pe=null,ge=null;if(!St)for(let ee of ce){let Me=$(ee),Ve=f.get(ee);if(!Me||Ve.flat.atoms.length||!Ue.has(Me))continue;let Ie=Ve.flat.text,ke=ht.get(ee);v(Se,Ie.length*3+Re.length);let B=-1,G=-1,he=!1;for(let We=0;We<Ie.length;We++)xn.test(Ie[We])||(ke[We]?he=!0:(B<0&&(B=We),G=We+1));if(!he||B<0)continue;let be=!0;for(let We=B;We<G;We++)if(ke[We]&&!xn.test(Ie[We])){be=!1;break}if(!be)continue;let fe=j(Ie.slice(B,G)),we=null,oe=!1;for(let We of Re){if(T.baseOf(We))continue;let Oe=f.get(We);if(!Oe.flat.atoms.length&&(v(Se,Oe.flat.text.length),j(Oe.flat.text)===fe)){if(we){oe=!0;break}we=We}}if(oe){(ge||=new Set).add(ee);continue}if(!we||ge?.has(ee))continue;let K=!1;for(let We of ce){if(We===ee||!Ue.has($(We)))continue;let Oe=f.get(We);if(Oe.flat.atoms.length)continue;let Ze=ht.get(We);v(Se,Oe.flat.text.length*3);let st="",E=!1;for(let z=0;z<Oe.flat.text.length;z++)xn.test(Oe.flat.text[z])||(Ze[z]?E=!0:st+=Oe.flat.text[z]);E&&st===fe&&(ge||=new Set,ge.add(ee),ge.add(We),K=!0)}if(K)continue;let ue=f.get(we).flat.text;v(Se,G-B+ue.length);let Le=B,De=0;for(;Le<G&&De<ue.length;){for(;Le<G&&xn.test(Ie[Le]);)Le++;for(;De<ue.length&&xn.test(ue[De]);)De++;if(Le>=G||De>=ue.length)break;M(pe||=[],ee,we,Le,Le+1,De,Se),Le++,De++}ke.fill(1,B,G),ht.get(we).fill(1)}let Ae=ee=>{let Me=[];for(let Ve of ee){let Ie=x(Ve,h.has(Ve)?null:A,Se),ke=ht.get(Ve);for(let B of O(Ie,Se)){let G=B.from;for(;G<B.to;){for(;G<B.to&&ke[G];)G++;let he=G;for(;G<B.to&&!ke[G];)G++;if(G>he){let be=Ie.flat.text.slice(he,G);Wn.test(be)&&Me.push({...B,raw:be,len:G-he,k:B.atom?B.k:be,from:he,to:G})}}}}return Me},N=St?H(ce):Ae(ce),D=St?H(Re):Ae(Re),Y=St?Ct:N.map(ee=>j(ee.raw)).join(""),J=St?dt:D.map(ee=>j(ee.raw)).join("");if((!Y||!J)&&!pe)continue;let se=pe||[];if(Y&&J&&Y===J){let ee=0,Me=0,Ve=0,Ie=0;for(;ee<N.length&&Me<D.length;){let ke=N[ee],B=D[Me];for(;Ve<ke.raw.length&&xn.test(ke.raw[Ve]);)Ve++;for(;Ie<B.raw.length&&xn.test(B.raw[Ie]);)Ie++;if(Ve===ke.raw.length){ee++,Ve=0;continue}if(Ie===B.raw.length){Me++,Ie=0;continue}if((ke.atom||B.atom)&&ke.k!==B.k){qe=!0;break}M(se,ke.unit,B.unit,ke.from+Ve,ke.from+Ve+1,B.from+Ie,Se),Ve++,Ie++}}else if(Y&&J){let ee=_(N,D,Se);if(!ee)continue;for(let[Me,Ve]of ee)M(se,Me.unit,Ve.unit,Me.from,Me.to,Ve.from,Se)}if(qe)continue;let Fe=new Map;for(let ee of se)if(!ge?.has(ee.source)){if($(ee.source)===ee.target){St&&ie.push(ee);continue}Fe.has(ee.source)||Fe.set(ee.source,[]),Fe.get(ee.source).push(ee)}for(let[ee,Me]of Fe){let Ve=x(ee,null,Se),Ie=$(ee),ke=Ve.flat.text,B=[],G=new Set,he=r[1-R],be=he.V.twin(ee),fe=be&&he.V.here(be)?x(be,he.A,Se):null,we=(Oe,Ze)=>{let st=O(Oe,Se),E=O(Ze,Se);return v(Se,Oe.flat.text.length+Ze.flat.text.length+st.length+E.length),Oe.flat.text===Ze.flat.text&&st.length===E.length&&st.every((z,Z)=>z.k===E[Z].k)},oe=Ie&&fe&&fe.flat.text!==ke&&we(x(Ie,A,Se),fe);for(let Oe of new Set(Me.map(Ze=>Ze.target))){if(ee.nodeType!==1&&Oe.nodeType!==1)continue;let Ze=x(Oe,A,Se),st=T.baseOf(Oe);if(ee.nodeType!==1&&st||(v(Se,ke.length*2+Ze.flat.text.length*3+ie.length*2),Ie&&j(ke)===j(Ze.flat.text)&&x(Ie,A,Se).flat.text.trim()))continue;if(!Ie&&!st&&ee.nodeType===1&&Oe.nodeType===1){let de=i(ee),le=W(Oe);if(de&&le&&de!==le)continue}let E=Ze.flat.text,z=ke&&(E.startsWith(ke)||E.endsWith(ke)),Z=!1;if(!Ie&&fe&&st&&fe.flat.text!==ke){let de=x(st,null,Se).flat.text,le=u.get(ee)<u.get(st)?fe.flat.text:de,ae=u.get(ee)<u.get(st)?de:fe.flat.text;v(Se,le.length+ae.length+E.length),Z=!!le&&!!ae&&le.length+ae.length<=E.length&&E.startsWith(le)&&E.endsWith(ae)&&!E.slice(le.length,E.length-ae.length).trim()}let ye=!Ve.flat.atoms.length&&!fe?.flat.atoms.length&&!Ze.flat.atoms.length&&(oe&&z||Z);if(Ie&&st){let de=x(Ie,A,Se).flat.text,le=ke.startsWith(de)||ke.endsWith(de),ae=x(st,null,Se).flat.text,$e=Ze.flat.text,Je=$e.startsWith(ae)||$e.endsWith(ae),He=!r[1-R].V.twin(st)&&!ie.some(Xe=>Xe.source===st&&Wn.test(ae.slice(Xe.from,Xe.to)));if(!St&&(!le&&!ye||!Je&&!He)){let Xe=fd(ee,Oe,Me,ce,Re,f,ht,O,v,Se);if(!Xe)continue;let Qe=A.weak?.has(ee)&&!A.identityPaired?.has(ee)&&ke.trim()===Xe;if(!le&&!ye&&!Qe)continue;let rt=A.weak?.has(st)&&!A.identityPaired?.has(st)&&E.trim()===Xe&&!f.get(st).flat.atoms.length&&!ie.some(jt=>jt.source===st&&Wn.test(ae.slice(jt.from,jt.to)));if(!Je&&!He&&!rt&&!ud(st,Oe,ae,E,ie,O(Ze,Se),v,Se))continue;Qe&&G.add(Oe)}}ye&&G.add(Oe),v(Se,Me.length),B.push(...Me.filter(de=>de.target===Oe))}if(!B.length)continue;let K=new Uint8Array(ke.length);v(Se,ke.length*4+ie.length);for(let Oe of B)K.fill(1,Oe.from,Oe.to);let ue=[];for(let Oe=0;Oe<ke.length;Oe++)xn.test(ke[Oe])||ue.push(Oe);if(!ue.length)continue;let Le=new Set(B.map(Oe=>Oe.target));if(!St&&Ie&&Le.size>1&&ad(Le,se,ie,T,f,Se,v)){if(m||=new Map,m.set(ee,(m.get(ee)||0)|1<<R),e){let Oe=ai({source:ee,side:R,views:r,eligible:o,blocked:g,baseId:i,model:x,tokensOf:O,budget:Se,charge:v});if(Oe){v(Se,Oe.to-Oe.from);let Ze=!0;for(let st=Oe.from;st<Oe.to;st++)if(Wn.test(ke[st])&&!K[st]){Ze=!1;break}Ze&&(p||=[]).push(Oe)}}continue}let De=ue.filter(Oe=>gi.test(ke[Oe]));if(!B.some(Oe=>gi.test(ke.slice(Oe.from,Oe.to)))&&!ue.every(Oe=>K[Oe]))continue;if(!Ie&&!Array.from(Le).some(Oe=>G.has(Oe))&&!ue.every(Oe=>K[Oe])&&!(De.length&&K[De[0]]&&K[De[De.length-1]]&&Le.size===1)){let Oe=null,Ze=0,st=0,E=null,z=null;if(!Ie&&fe&&ee.nodeType===1&&!Ve.flat.atoms.length){let Z=O(Ve,Se).filter(ye=>gi.test(ye.raw));v(Se,Re.length+ke.length);for(let ye of Re){let de=T.baseOf(ye);if(!de||de===ee||de.nodeType!==1||ye.nodeType!==1||de.tagName!==ee.tagName||ye.tagName!==de.tagName)continue;let le=u.get(ee),ae=u.get(de),$e=!0;for(let en=Math.min(le,ae)+1;en<Math.max(le,ae);en++){let Pt=n[en];if(v(Se,Pt.nodeType===1?1:Pt.value.length+1),Pt.nodeType===1||Pt.value.trim()){$e=!1;break}}if(!$e)continue;let Je=x(de,null,Se),He=x(ye,A,Se);if(Je.flat.atoms.length||He.flat.atoms.length)continue;let Xe=Je.flat.text,Qe=He.flat.text;if(v(Se,Xe.length+Qe.length+ke.length),!Xe||!Z.length)continue;let rt=0,jt=Qe.length;if(le<ae&&Qe.endsWith(Xe))jt-=Xe.length;else if(le>ae&&Qe.startsWith(Xe))rt=Xe.length;else continue;for(;rt<jt&&xn.test(Qe[rt]);)rt++;for(;jt>rt&&xn.test(Qe[jt-1]);)jt--;let Et=Qe.slice(rt,jt);if(!(!Et||!(Et.startsWith(Z[0].raw)||Et.endsWith(Z[Z.length-1].raw)))){if(Oe){Oe=null;break}Oe=ye,Ze=rt,st=jt,E=Z[0],z=Z[Z.length-1]}}}if(v(Se,B.length),!Oe||!Le.has(Oe)||!B.some(Z=>Z.target===Oe&&(Z.from<=E.from&&Z.to>=E.to&&Z.targetFrom+E.from-Z.from===Ze||Z.from<=z.from&&Z.to>=z.to&&Z.targetFrom+z.to-Z.from===st)))continue}if(Ie&&!(ue.every(Oe=>K[Oe])&&(St||Array.from(Le).some(Oe=>G.has(Oe))))&&!ie.some(Oe=>Oe.source===ee&&Wn.test(ke.slice(Oe.from,Oe.to))))continue;let We=!1;if(St){v(Se,ie.length+ue.length);for(let Oe of ie)Oe.source===ee&&(v(Se,Oe.to-Oe.from),K.fill(1,Oe.from,Oe.to));We=!0;for(let Oe of ue)if(!K[Oe]){We=!1;break}}for(let Oe of Le){v(Se,B.length);let Ze=B.filter(E=>E.target===Oe);it.push({side:R,source:ee,target:Oe,runs:Ze,models:f,retained:ie,conservedSource:We}),ee.nodeType===1&&tt.add(ee),Oe.nodeType===1&&tt.add(Oe);let st=T.baseOf(Oe);st?.nodeType===1&&tt.add(st)}}if(d.push(...it),ze&&it.length)for(let ee of ze)_e.add(ee);for(let ee of tt)k.add(ee)}catch(ce){if(ce!==S)throw ce}finally{if(t&&!ze&&!Q){let ce=ma({base:n,views:r,side:R,attempt:w,eligible:o,blocked:g,baseId:i,model:x,tokensOf:O,charge:v,exhausted:S,limit:c});ce&&(y||=[]).push(...ce)}if(e&&!ze&&!Q){let ce=jl({base:n,views:r,side:R,attempt:w,eligible:o,blocked:g,baseId:i,model:x,tokensOf:O,certificates:d,charge:v,exhausted:S,limit:c});ce&&(p||=[]).push(...ce)}}}}let I=d.length?new Map:null;for(let R of d){let T=I.get(R.source);T||I.set(R.source,T=[]),T.push(R)}let P=null;if(I){let R=null;for(let[T,A]of I){let W=m?.get(T)||0;if(A.length<2&&!W)continue;let F=0;for(let $ of A)$.conservedSource&&(F|=1<<$.side);for(let $ of A){if($.conservedSource)continue;let Ne=1<<$.side,Ce=!0;if(F&Ne)Ce=!1;else if(W&Ne){Ce=!1;try{Ce=cd($,R||=Xt(c),v)}catch(Be){if(Be!==S)throw Be}}Ce||(P||=new Set).add($)}}}if(P){let R=0;for(let T of d)P.has(T)||(d[R++]=T);d.length=R;for(let[T,A]of I){R=0;for(let W of A)P.has(W)||(A[R++]=W);A.length=R,R||I.delete(T)}k.clear();for(let T of d){let{source:A,target:W,side:F}=T;A.nodeType===1&&k.add(A),W.nodeType===1&&k.add(W);let $=r[F].V.baseOf(W);$?.nodeType===1&&k.add($)}}if(p){let R=Xt(c),T=!1;for(let A of p){let W=!1,F=I?.get(A.source);if(F&&!T)try{W=li(A,F,R,v)}catch($){if($!==S)throw $;T=!0}W||e(A)}}if(y){let R=new Set,T=Xt(c);try{for(let A of y){if(v(T,1),R.has(A.source))continue;R.add(A.source);let W=!1;for(let F of d)if(v(T,1),F.source===A.source||F.target===A.local||F.target===A.remote){W=!0;break}W||t(A)}}catch(A){if(A!==S)throw A}}for(let R of n)if(k.has(R))for(let{V:T}of r){let A=T.twin(R);A&&T.here(A)&&k.add(A)}return d.length?{blocks:k,certificates:d,certificatesBySource:I,models:f}:null}function ba({certificates:e,scopes:t,flats:n,keys:r,limit:o=2e4*32}){let s=Symbol(),l=Xt(o),i=m=>{if(m>l.remaining)throw s;l.remaining-=m},a=t.map(m=>new Set(m)),c=new Map,h=new Map,u=(m,g)=>{let k=c.get(m);if(k||c.set(m,k=new Map),k.has(g))return k.get(g);i(m.text.length);let S=h.get(g);if(!S){i(g.nodes.length+g.atoms.length),S={nodes:new Map,atoms:new Map};for(let C of g.nodes)S.nodes.set(C.node,C);for(let C of g.atoms)S.atoms.set(C.el,C.i);h.set(g,S)}let{nodes:v,atoms:x}=S,O=new Int32Array(m.text.length).fill(-1);for(let C of m.nodes){let _=v.get(C.node);if(!(!_||C.e-C.s!==_.e-_.s)){i(C.e-C.s);for(let M=C.s;M<C.e;M++)O[M]=_.s+M-C.s}}for(let C of m.atoms){let _=x.get(C.el);_!==void 0&&(O[C.i]=_)}return k.set(g,O),O},f=(m,g,k,S,v)=>{let x=m[m.length-1];x&&x.to===g&&x.target+x.to-x.from===S&&x.kind===v?x.to=k:m.push({from:g,to:k,target:S,kind:v})},d=(m,g,k,S)=>{i((S-k)*4);let v=[],x=k,O=M=>{let j=m.text.slice(x,M);for(let I of hn(j,Tn(j)))I.from=x,I.to=x+I.len,v.push(I),x+=I.len},C=0,_=m.atoms.length;for(;C<_;){i(1);let M=C+_>>>1;m.atoms[M].i<k?C=M+1:_=M}for(let M=C;M<m.atoms.length&&m.atoms[M].i<S;M++){i(1);let j=m.atoms[M];O(j.i),v.push({k:g(j),raw:zn,len:1,from:x,to:x+1}),x++}return O(S),v},p=(m,g,k,S,v,x)=>{if(k===S||v===x)return;if(S-k===x-v){i((S-k)*4);let T=!0;for(let A=k,W=v;A<S;A++,W++){if(n[0].text[A]!==n[g].text[W]){T=!1;break}let F=n[0].atomAt.get(A),$=n[g].atomAt.get(W);if(!!F!=!!$||F&&r[0](F)!==r[g]($)){T=!1;break}}if(T){f(m,k,S,v,"retained");return}}let O=d(n[0],r[0],k,S),C=d(n[g],r[g],v,x),_=O.length+C.length+4,M=Math.min(O.length+C.length,4e3,Math.floor((Math.sqrt(_*_+l.remaining/2)-_)/2));if(M<1)throw s;i(4*(M+1)*(_+M+1));let j=Yn(O,C,M),I=0,P=0,R=()=>{let T=O[I++],A=C[P++];i(T.len),T.raw===A.raw&&f(m,T.from,T.to,A.from,"retained")};for(let T of j.hunks){for(;I<T.bs;)R();I=T.be,P+=T.toks.length}for(;I<O.length&&P<C.length;)R()},y=m=>{let g=e.filter(j=>j.side===m-1&&a[0].has(j.source)&&a[m].has(j.target));if(!g.length)return null;let k=[],S=(j,I,P)=>{if(!a[0].has(j.source)||!a[m].has(j.target))return;let R=u(I.get(j.source).flat,n[0]),T=u(I.get(j.target).flat,n[m]);i(j.to-j.from);for(let A=0;A<j.to-j.from;A++){let W=R[j.from+A],F=T[j.targetFrom+A];if(W<0||F<0)throw s;f(k,W,W+1,F,P)}},v=new Set;for(let j of g){if(!v.has(j.retained)){v.add(j.retained);for(let I of j.retained)S(I,j.models,"retained")}for(let I of j.runs)S(I,j.models,"transfer")}k.sort((j,I)=>(i(1),j.from-I.from||j.target-I.target));let x=[];for(let j of k){i(1);let I=x[x.length-1];if(I&&j.from<I.to){if(j.target-j.from!==I.target-I.from)throw s;I.to=Math.max(I.to,j.to),j.kind==="transfer"&&(I.kind="transfer")}else x.push(j)}let O=[],C=0,_=0;for(let j of x){if(j.target<_)throw s;p(O,m,C,j.from,_,j.target),O.push(j),C=j.to,_=j.target+j.to-j.from}p(O,m,C,n[0].text.length,_,n[m].text.length);let M=Hn({base:n[0],side:n[m],retained:O.filter(j=>j.kind==="retained"),transfers:O.filter(j=>j.kind==="transfer"),baseAtomKey:r[0],sideAtomKey:r[m],budget:l});if(M.status!=="ready"||!M.monotone)throw s;return M};try{let m=y(1),g=y(2);return m||g?{local:m,remote:g}:{fallback:!0}}catch(m){if(m!==s)throw m;return{fallback:!0}}}function bi(e,t,n=!1){let r=-1,o=-1;for(let l=0;l<e.list.length;l++){let i=e.list[l];i.bLo<t.lo||i.bLo>t.hi||(r<0&&(r=l),o=l)}let s=[];for(let l=r;l>=0&&l<=o;l++){let i=e.list[l],a=!n&&l===r?i.inlineStart<0?i.to:i.inlineStart:i.from,c=!n&&l===o?i.inlineEnd<0?i.from:i.inlineEnd:i.to;for(let h=a;h<c;h++)s.push(e.units[h]);l<o&&s.push(e.units[i.next])}return s}var bt=e=>!!e&&e.nodeType===1,Pn=new Set("P H1 H2 H3 H4 H5 H6 DIV LI DD DT BLOCKQUOTE FIGCAPTION SUMMARY ADDRESS".split(" "));function ki(e){for(let t of e)if(Pn.has(t.tagName))return!0;return!1}function dd(e,t,n){let r=null;for(let o of t.childNodes)if(!(!bt(o)||!n(o)||!o.isEqualNode(e))){if(r)return null;r=o}if(!r)return null;for(let o of e.parentNode.childNodes)if(o!==e&&o.isEqualNode(e))return null;return r}var bo="[id],[data-id],script,head>*";function yi(e,t){return n=>{if(e!==null&&n.tagName==="SCRIPT"){let r=jr(n,e);if(r)return"merge:"+r.key}return n.parentElement&&n.parentElement.tagName==="HEAD"?Zl(n,t):null}}function es(e,t,n,r){let o=r.ignored,s=r.stats||nr(),l=Cl({ignored:o,ignoreAttribute:r.ignoreAttribute,stats:s}),{unitsOf:i,meta:a}=l,c=r.baseURI,h=r.mergeTags!==null,u=yi(r.mergeTags,c),f=E=>z=>{let Z=u(z);return Z!==null?Z:E(z)},d=f(r.identity.base),p=f(r.identity.local),y=f(r.identity.remote),m=r.authored||r.identity,g=E=>E&&E.nodeType===9?E.documentElement:E,k=g(e),S=g(t),v=g(n),x=globalThis.__hyperMorphProfile,O=x?performance.now():0,C=E=>E===Sn?bo:null,_=r.scope||null,M=_?_.baseDropped:new Set,j=new Set,I=_?_.remoteDropped:new Set,P=_?_.baseIndex:zo(k,d,o,C(r.identity.base),M),R=r.localIsBase||k===S?null:zo(S,p,o,C(r.identity.local),j),T=_?_.remoteIndex:zo(v,y,o,C(r.identity.remote),I),A=E=>{let z=bt(E)&&p(E);return z&&R?.get(z)===E&&!P.has(z)?z:null},W=E=>{let z=bt(E)&&y(E);return z&&T.get(z)===E&&!P.has(z)?z:null},F=R?Zs(k,S,{analyzer:l,baseIndex:P,sideIndex:R,baseId:m.base,sideId:m.local,baseKey:d,sideKey:p,baseDropped:M,sideDropped:j,stats:s}):ya(),$=Zs(k,v,{analyzer:l,baseIndex:P,sideIndex:T,baseId:m.base,sideId:m.remote,baseKey:d,sideKey:y,baseDropped:M,sideDropped:I,stats:s,scope:_,comparisons:r.comparisons});if(_){if(!_.held($))return null;for(let E of _.dropped)Xs(E)}let Ne=null;function Ce(E){if(!Ne){Ne=new WeakMap;let z=[k];for(;z.length;){let Z=z.pop();Z.tagName==="TEMPLATE"&&Z.content&&Ne.set(Z.content,Z);for(let ye of l.childrenOf(Z))ye.nodeType===1&&z.push(ye)}}return Ne.get(E)||null}let Be=E=>{let z=bt(E)||E.nodeType?E.parentNode:E.parent;return z&&z.nodeType===11?Ce(z):z};if($.moved.size){let E=!1;for(let z of Array.from($.moved))!bt(z)||$.identityPaired.has(z)||!m.base(z)||ge($,Be(z))||($.unpair(z),E=!0);E&&$.rematch()}ie(),pe(F,$),pe($,F);for(let E of[F,$])if(E.refused)for(let z of E.refused)E.moved.has(z)||s.ambiguousMoves++;x&&(x.alignTotal=(x.alignTotal||0)+(performance.now()-O),O=performance.now());let re=k.ownerDocument.implementation.createHTMLDocument(""),Ee=new WeakMap,Ge=new WeakMap,_e=[],w=[],V=new Set,ne=[],te=new Set,Pe=new Set,ze=new Set,Se=new WeakMap,it=null,tt=r.conflicts||"remote",Q=E=>_e.push(E),ce=E=>_e.push(E),Re=aa({roots:{base:k,local:S,remote:v},L:F,R:$,unitsOf:i,provenance:Ee,policy:tt}),Ue=(E,z)=>{w.push(E),z&&Re.note(E,z)},qe=null,ot=null,xt=ht(),kt=null,Ct=J(k,F.map.get(k),$.map.get(k),!!r.localIsBase,!!r.childrenOnly);Ct.tagName==="HTML"?re.replaceChild(Ct,re.documentElement):re.body.appendChild(Ct),qe?.drain(Ct),ot?.drain(Ct),x&&(x.build=(x.build||0)+(performance.now()-O));let dt=r.childrenOnly?!ue(oe(Ct),oe(v)):!be(Ct,v),St=Re.finish(Ct);return{doc:re,root:Ct,provenance:Ee,textMappers:Ge,decisions:_e,conflicts:w,recoveryLinks:St,localDiverged:dt,mergedScripts:V,segments:ne,remoteIdOf:r.identity.remote,customIdentity:r.identity.remote!==Sn,L:F,R:$,stats:s};function ht(){let E=new Map,z=new Set;if(r.localIsBase||!F.insertedByHash)return{partner:E,drop:z};let Z=F.insertedByHash(),ye=$.insertedByHash();if(!Z.size||!ye.size)return{partner:E,drop:z};let de={ignored:o,remoteWins:r.remoteWins,inlineCache:Se},le=vt=>{let At=0;for(let wt=vt.parentNode;wt;wt=wt.parentNode)At++;return At},ae=[],$e=vt=>{let At=vt.textContent.trim();return At.split(/\s+/).length>=3||At.replace(/\s/g,"").length>=12},Je=vt=>{let At=ge(F,vt),wt=ge($,vt);return At&&F.reverse.get(At.parentNode)!==vt.parentNode||wt&&$.reverse.get(wt.parentNode)!==vt.parentNode},He=(vt,At,wt)=>{for(let mt of wt.parentNode.children){let Wt=mt!==wt&&vt.reverse.get(mt);if(Wt&&Je(Wt))return!0}let Ft=vt.reverse.get(wt.parentNode);if(Ft){for(let mt of Ft.children)if(!ge(At,mt)&&!o(mt))return!0}return!1},Xe=new Map([[F,new Map],[$,new Map]]),Qe=(vt,At)=>{let wt=Xe.get(vt),Ft=wt.get(At);if(Ft===void 0){Ft=!1;for(let mt of At.children)if(vt.reverse.has(mt)||Qe(vt,mt)){Ft=!0;break}wt.set(At,Ft)}return Ft},rt=new Map;for(let vt of ye.values())for(let At of vt){let wt=W(At);wt&&rt.set(wt,At)}for(let vt of Z.values())for(let At of vt){let wt=A(At),Ft=wt?rt.get(wt):null;Ft&&Ft.tagName===At.tagName&&!Vn(At,de)&&!Vn(Ft,de)&&!r.remoteWins(At)&&!r.remoteWins(Ft)&&ae.push([At,[Ft],le(At),!0,!0])}for(let[vt,At]of Z){let wt=ye.get(vt);if(!wt)continue;let Ft=At.length===1&&wt.length===1;for(let mt of At)!Vn(mt,de)&&!A(mt)&&ae.push([mt,wt,le(mt),Ft&&($e(mt)||He(F,$,mt)||He($,F,wt[0]))])}if(!ae.length)return{partner:E,drop:z};ae.sort((vt,At)=>vt[2]-At[2]);let jt=new Set,Et=new Set,en=vt=>{for(let At of vt.querySelectorAll("*"))jt.add(At)},Pt=(vt,At)=>vt.reverse.get(At.parentNode)||null;for(let[vt,At,,wt,Ft]of ae){if(jt.has(vt)||Et.has(vt)||Ft&&(Qe(F,vt)||Qe($,At[0])))continue;let mt=Pt(F,vt),Wt=Jt=>!Et.has(Jt)&&!jt.has(Jt)&&(Ft||Jt.tagName===vt.tagName&&!W(Jt)&&l.equalUnits(vt,Jt)),Mt=At.find(Jt=>mt&&Pt($,Jt)===mt&&Wt(Jt))||(wt?At.find(Wt):null);if(!Mt)continue;Et.add(vt),Et.add(Mt);let gn=mt&&Pt($,Mt)===mt;(!Ft||!gn||l.equalUnits(vt,Mt))&&(en(vt),en(Mt)),!gn&&(E.set(vt,Mt),E.set(Mt,vt),z.add(tt==="local"?Mt:vt))}return{partner:E,drop:z}}function H(E,z,Z){if(te.add(E),xt.drop.has(E))return null;te.add(Z);let ye=z==="local"?E:Z,de=z==="local"?Z:E,le;return l.equalUnits(ye,de)?(le=G(ye,"local",!0),Ee.get(le).remote=de):le=B(ye,de),Ue({kind:"structure",el:le,detail:"both-moved",base:null,local:ye,remote:de},{unit:{b:null,l:ye,r:de}}),Q({kind:"insert",el:le,source:"both"}),le}function ie(){if(!F.weak||!$.weak||!F.weak.size||!$.weak.size||!F.unpair)return;let E=new Map;for(let Z of F.weak){let ye=ge(F,Z);bt(Z)&&bt(ye)&&E.set(l.unitHash(ye),Z)}let z=!1;for(let Z of Array.from($.weak)){let ye=ge($,Z);if(!bt(Z)||!bt(ye))continue;let de=E.get(l.unitHash(ye));if(!de||de===Z||!F.weak.has(de)||ge(F,Z)&&ge($,de))continue;let le=ge(F,de);le.tagName===ye.tagName&&l.equalUnits(le,ye)&&(F.unpair(de),$.unpair(Z),z=!0)}z&&(F.rematch(),$.rematch())}function pe(E,z){if(!E.weak||!E.weak.size||!z.insertedByHash)return;let Z=z.insertedByHash();if(!Z.size)return;let ye=!1;for(let de of Array.from(E.weak)){let le=ge(E,de);if(!le)continue;let ae=E===F?A(le):W(le);if(ae){let Je=(E===F?T:R)?.get(ae);Je&&Je.tagName===le.tagName&&!z.reverse.has(Je)&&(E.unpair(de),ye=!0);continue}let $e=Z.get(l.unitHash(le));$e&&$e.some(Je=>Je.tagName===le.tagName&&l.equalUnits(Je,le))&&(E.unpair(de),ye=!0)}ye&&E.rematch()}function ge(E,z){if(!z)return null;if(E.map.has(z))return E.map.get(z);let Z=[],ye=Be(z);for(;ye&&!E.map.has(ye);ye=Be(ye))Z.push(ye);let de=ye;if(!de||!E.identical.has(de))return null;E.pairIdenticalChildren(de);for(let ae=Z.length-1;ae>=0;ae--)E.pairIdenticalChildren(Z[ae]);let le=E.map.get(z)||null;return le&&s.lazyTwins++,le}function Ae(E,z,Z,ye){if(bt(E)&&Pn.has(E.tagName)&&!F.identical.has(E)&&(E.previousSibling?.nodeType===3||E.nextSibling?.nodeType===3)){let $e=Be(E),Je=ge(F,E),He=ge($,E);Je&&He&&Ze(Je,ge(F,$e),F)&&!Ze(He,ge($,$e),$)&&(ot||=ua({L:F,R:$,twinIn:ge,unitsOf:i,view:N,parentOf:Be,ignored:o,remoteWins:r.remoteWins,eligible:Xe=>bt(Xe)&&Pn.has(Xe.tagName),build:J,out:re,policy:tt,provenance:Ee,textMappers:Ge,segments:ne,conflicts:w,conflict:Ue,decisions:_e}),ot.ensureOwner(E))}if(z===null)return null;if(ye!==void 0)return qe||=Fr(Ee,Be,F,$,ge,J,o,r.remoteWins,w,Ue,D,S,v),qe.plan(E,z,Z,!!ye),ye&&(qe.produced(E,ye),Pe.add(E)),ye;if(Pe.has(E)||ze.has(E))return Ue({kind:"structure",el:null,detail:"both-moved",base:E},{subject:E}),Pe.has(E)?null:G(Z,z);qe||=Fr(Ee,Be,F,$,ge,J,o,r.remoteWins,w,Ue,D,S,v),qe.plan(E,z,Z,!0);let de=ge(F,E),le=ge($,E);(!de||!le)&&Ue({kind:"structure",el:null,detail:"move-beats-delete",base:E},{subject:E,deleted:de?"remote":"local"});let ae=J(E,de,le,!1);return(z==="local"?Q:ce)({kind:"move",el:ae,source:z}),ae}function N(E,z,Z,ye){return ye||!z||z===Z?{el:Z,asBase:!0,twin:de=>de,baseOf:de=>de,units:i(Z),here:()=>!0,parentOfTwin:()=>Z}:{el:z,asBase:!1,twin:de=>ge(E,de),baseOf:de=>E.reverse.get(de),units:i(z),here:de=>bt(de)?de.parentNode===z||z.tagName==="TEMPLATE"&&de.parentNode===z.content:de.parent===z||z.tagName==="TEMPLATE"&&de.parent===z.content}}function D(E,z,Z){return!z||Z&&Z.identical.has(E)?!1:bt(E)?!l.equalUnits(E,z)||!Y(E,z,Z):E.value!==z.value}function Y(E,z,Z){if(!Z||E===z)return!0;let ye=[[E,z]];for(;ye.length;){let[de,le]=ye.pop(),ae=i(de),$e=i(le);for(let Je=0;Je<ae.length&&Je<$e.length;Je++){let He=ae[Je],Xe=$e[Je];if(!bt(He)||!bt(Xe))continue;let Qe=Z.map.get(He);if(Qe!==void 0&&Qe!==Xe)return!1;let rt=Z.reverse.get(Xe);if(rt!==void 0&&rt!==He)return!1;ye.push([He,Xe])}}return!0}function J(E,z,Z,ye,de=!1){let le=ye||(Z?r.remoteWins(Z):r.remoteWins(E)),ae=E.namespaceURI&&E.namespaceURI!=="http://www.w3.org/1999/xhtml"?re.createElementNS(E.namespaceURI,E.tagName):re.createElement(E.tagName),$e={base:E,local:z||null,remote:Z||null};if(Ee.set(ae,$e),le&&!ye&&z&&D(E,z,F)&&(!Z||!l.equalUnits(z,Z))&&Ue({kind:"structure",el:ae,detail:"remote-wins",base:E,local:z,remote:Z||null},{subject:E}),te.add(E),Pe.add(E),z&&te.add(z),Z&&te.add(Z),r.skipUnchanged&&!de&&(r.localIsBase||F.identical.has(E))&&Z&&$.identical.has(E)&&!r.remoteWins(E)){$e.unchanged=!0;for(let He of E.attributes)He.namespaceURI?ae.setAttributeNS(He.namespaceURI,He.name,He.value):ae.setAttribute(He.name,He.value);return qe?.produced(E,ae),ae}ze.add(E),de||ee(E,le?E:z,Z,ae);let Je=E.tagName;if(yn(E))Fe(E,le?E:z,Z,ae);else if(Je==="TEXTAREA")ae.textContent=se(E.textContent,(le?E:z)?(le?E:z).textContent:E.textContent,Z?Z.textContent:E.textContent,ae,"text");else if(!ot?.render(E,ae)){let He=he(E,z,Z,le,ae),Xe=Je==="TEMPLATE"&&ae.content?ae.content:ae;for(let Qe of He)Xe.appendChild(Qe)}return ze.delete(E),qe?.produced(E,ae),ae}function se(E,z,Z,ye,de){if(z===Z)return z;if(z===E)return Z!==E&&ce({kind:de,node:ye,source:"remote"}),Z;if(Z===E)return Q({kind:de,node:ye,source:"local"}),z;let le=tt==="local"?z:Z;return Ue({kind:de,node:ye,base:E,local:z,remote:Z,resolved:le},{site:"whole",el:ye}),_e.push({kind:de,node:ye,source:"both"}),le}function Fe(E,z,Z,ye){let de=E.textContent,le=z?z.textContent:de,ae=Z?Z.textContent:de,$e=h?jr(E,r.mergeTags,!0):null;if($e&&le!==ae){let Je=Z&&Z.getAttribute("merge-key")||E.getAttribute("merge-key"),{text:He,warnings:Xe}=mi(r.localIsBase?void 0:de,le,ae,{parse:$e.recognizer.parse,keyCandidates:Je?Je.split(/[\s,]+/).filter(Boolean):void 0});for(let Qe of Xe)console.warn(`[hyper-morph] merge "${$e.raw}": ${Qe}`);ye.textContent=He,V.add(ye),He!==ae?Q({kind:"text",node:ye,source:He===le?"local":"both"}):He!==de&&ce({kind:"text",node:ye,source:"remote"});return}ye.textContent=se(de,le,ae,ye,"text")}function ee(E,z,Z,ye){let de=new Map;for(let le of[E,z,Z])if(le)for(let ae of le.attributes)r.ignoreAttribute(le,ae.name)||de.set(ae.name,ae);for(let[le,ae]of de){let $e=E?E.getAttribute(le):null,Je=z?z.getAttribute(le):$e,He=Z?Z.getAttribute(le):$e,Xe;Je===He?Xe=Je:Je===$e?(Xe=He,ce({kind:"attr",el:ye,name:le,source:"remote"})):He===$e?(Xe=Je,Q({kind:"attr",el:ye,name:le,source:"local"})):(Xe=Me(le,$e,Je,He),Xe===void 0&&(Xe=tt==="local"?Je:He,Ue({kind:"attr",el:ye,name:le,base:$e,local:Je,remote:He,resolved:Xe},{el:ye,sample:ae})),_e.push({kind:"attr",el:ye,name:le,source:"both"})),Xe!=null&&(ae.namespaceURI?ye.setAttributeNS(ae.namespaceURI,ae.name,Xe):ye.setAttribute(le,Xe))}}function Me(E,z,Z,ye){if(E==="class"){let de=He=>new Set((He||"").split(/\s+/).filter(Boolean)),le=de(z),ae=de(Z),$e=de(ye),Je=new Set;for(let He of new Set([...le,...ae,...$e])){let Xe=le.has(He),Qe=ae.has(He),rt=$e.has(He);(Qe===rt?Qe:Qe===Xe?rt:Qe)&&Je.add(He)}return[...Je].join(" ")}if(E==="style"){let de=Xe=>{let Qe=new Map;if(!Xe)return Qe;let rt=0,jt=null,Et="",en=()=>{let Pt=Et.indexOf(":");Pt>0&&Qe.set(Et.slice(0,Pt).trim(),Et.slice(Pt+1).trim()),Et=""};for(let Pt of Xe){if(jt){Et+=Pt,Pt===jt&&(jt=null);continue}if(Pt==='"'||Pt==="'"){jt=Pt,Et+=Pt;continue}if(Pt==="("?rt++:Pt===")"&&rt--,Pt===";"&&rt===0){en();continue}Et+=Pt}return Et.trim()&&en(),Qe},le=de(z),ae=de(Z),$e=de(ye),Je=new Map,He=!1;for(let Xe of new Set([...le.keys(),...ae.keys(),...$e.keys()])){let Qe=le.get(Xe)??null,rt=ae.get(Xe)??null,jt=$e.get(Xe)??null,Et;rt===jt?Et=rt:rt===Qe?Et=jt:jt===Qe?Et=rt:(Et=tt==="local"?rt:jt,He=!0),Et!=null&&Je.set(Xe,Et)}return He?void 0:[...Je].map(([Xe,Qe])=>`${Xe}: ${Qe}`).join("; ")}}function Ve(E,z,Z,ye){let de=E.value,le=ye?de:z?z.value:"",ae=Z?Z.value:"";te.add(E),z&&te.add(z),Z&&te.add(Z);let $e=uo(de,le,ae,tt),Je=$e.text===""?null:re.createTextNode($e.text);Je&&(Ee.set(Je,{base:E.nodes,local:z?z.nodes:null,remote:Z?Z.nodes:null}),Ge.set(Je,$e.mapLocalOffset)),le!==de&&ae!==de?_e.push({kind:"text",node:Je,source:"both"}):le!==de?Q({kind:"text",node:Je,source:"local"}):ae!==de&&ce({kind:"text",node:Je,source:"remote"});for(let He of $e.conflicts)Ue({kind:"text",node:Je,base:de.slice(He.bs,He.be),local:He.local,remote:He.remote,resolved:He.resolved},{site:"run",bRun:E,lRun:z,rRun:Z,node:Je,c:He});return Je}function Ie(E,z){return gr(E,z).every(Z=>Z.bs===Z.be)}function ke(E,z){let Z=E?E.value:"",ye=z?z.value:"",de;if(Z===ye||!ye?de=Z:Z?Ie(Z,ye)?de=ye:Ie(ye,Z)?de=Z:(de=tt==="local"?Z:tt==="both"?Z+ye:ye,Ue({kind:"structure",el:null,detail:"insert-collision",local:Z,remote:ye,resolved:de},{unit:{b:null,l:E,r:z},localLost:tt==="remote"})):de=ye,E&&te.add(E),z&&te.add(z),de==="")return null;let le=re.createTextNode(de);return Ee.set(le,{base:null,local:E?E.nodes:null,remote:z?z.nodes:null}),Z?Q({kind:"insert",el:le,source:ye&&Z===ye?"both":"local"}):ce({kind:"insert",el:le,source:"remote"}),le}function B(E,z){let Z={ignored:o,remoteWins:r.remoteWins,inlineCache:Se},ye=$e=>i($e).every(Je=>bt(Je)?Vn(Je,Z):Je.kind==="text"),de=null;if(ye(E)&&ye(z)){let $e=E.textContent,Je=z.textContent;$e===Je||Ie(Je,$e)?de=z:Ie($e,Je)&&(de=E)}if(!de){let $e=tt==="local",Je=G($e?E:z,$e?"local":"remote",!0),He=Ee.get(Je);return $e?He.remote=z:He.local=E,Ue({kind:"structure",el:Je,detail:"insert-collision",local:E,remote:z,resolved:$e?E:z},{unit:{b:null,l:E,r:z},localLost:!$e}),Je}let le=E.namespaceURI&&E.namespaceURI!=="http://www.w3.org/1999/xhtml"?re.createElementNS(E.namespaceURI,E.tagName):re.createElement(E.tagName);ee(null,E,z,le),Ee.set(le,{base:null,local:E,remote:z}),te.add(E),te.add(z);let ae=br({base:Array.from(de.childNodes),local:Array.from(E.childNodes),remote:Array.from(z.childNodes),out:re,policy:tt,idOf:{local:p,remote:y},ignored:o,ignoreAttribute:r.ignoreAttribute,remoteWins:r.remoteWins,provenance:Ee,textMappers:Ge,conflicts:w,conflict:Ue,scope:{base:null,local:E,remote:z,units:[],at:0},synthetic:!0,decisions:_e,node:le});ne.push(...ae.segments);for(let $e of ae.nodes)le.appendChild($e);return le}function G(E,z,Z=!1){if(!Z&&bt(E)){let ae=xt.partner.get(E);if(ae)return H(E,z,ae)}if(!bt(E)){if(E.value==="")return null;let ae=E.kind==="comment"?re.createComment(E.value):re.createTextNode(E.value);return Ee.set(ae,{base:null,local:z==="local"?E.nodes:null,remote:z==="remote"?E.nodes:null}),te.add(E),ae}let ye=E.namespaceURI&&E.namespaceURI!=="http://www.w3.org/1999/xhtml"?re.createElementNS(E.namespaceURI,E.tagName):re.createElement(E.tagName);for(let ae of E.attributes)ae.namespaceURI?ye.setAttributeNS(ae.namespaceURI,ae.name,ae.value):ye.setAttribute(ae.name,ae.value);Ee.set(ye,{base:null,local:z==="local"?E:null,remote:z==="remote"?E:null}),te.add(E);let de=E.tagName==="TEMPLATE"&&ye.content?ye.content:ye,le=z==="local"?F:$;for(let ae of i(E)){let $e=bt(ae)?le.reverse.get(ae):null;if($e&&Ae($e,null,null),$e&&Pe.has($e)){Ue({kind:"structure",el:null,detail:"both-moved",base:$e},{subject:$e});continue}if($e&&!ze.has($e)){let He=ge(F,$e)||null,Xe=ge($,$e)||null;if(He||Xe){qe||=Fr(Ee,Be,F,$,ge,J,o,r.remoteWins,w,Ue,D,S,v),qe.plan($e,z,ae,!0);let Qe=J($e,He,Xe,!1);z==="local"?Q({kind:"move",el:Qe,source:"local"}):ce({kind:"move",el:Qe,source:"remote"}),de.appendChild(Qe);continue}}let Je=G(ae,z);Je&&de.appendChild(Je)}if(!Z&&xt.drop.size&&E.tagName==="DIV"&&!de.firstChild&&!E.attributes.length&&!(z==="local"?p(E):y(E))&&!le.reverse.has(E)&&!o(E)&&!r.remoteWins(E)){let ae=E.firstChild;if(ae&&ae===E.lastChild&&bt(ae)&&(xt.drop.has(ae)||kt?.has(ae)))return(kt||=new WeakSet).add(E),null}return ye}function he(E,z,Z,ye,de){z&&F.identical.has(E)&&F.pairIdenticalChildren(E),Z&&$.identical.has(E)&&$.pairIdenticalChildren(E);let le=N(F,z,E,ye),ae=N($,Z,E,!1),$e=i(E),Je=new Set($e),He=new Map;for(let xe=0;xe<$e.length;xe++)He.set($e[xe],xe);let Xe=[],Qe=new Set,rt=new Map,jt=new Set,Et=new Set,en=[],Pt=null;if(!le.asBase&&!ae.asBase&&!F.identical.has(E)&&!$.identical.has(E))for(let xe of $e){if(!bt(xe)||!Pn.has(xe.tagName))continue;let nt=le.twin(xe),et=ae.twin(xe);nt&&et&&(!le.here(nt)||!ae.here(et))&&Ae(xe,null,null)}$s();let vt=xe=>{let nt=[];for(let et of xe.units){if(Et.has(et))continue;let _t=xe.baseOf(et);_t&&Je.has(_t)&&nt.push(_t)}return nt},At=xe=>vt(xe).map(nt=>He.get(nt)),wt=xe=>xe.every((nt,et)=>et===0||nt>=xe[et-1]),Ft=!le.asBase&&!wt(At(le)),mt=!ae.asBase&&!wt(At(ae));Ft&&mt&&Ue({kind:"structure",el:de,detail:"both-reordered",base:E},{subject:E,lKept:vt(le),rKept:vt(ae)});let Wt=mt||!Ft?{V:ae,A:$,side:"remote",other:le,otherA:F,otherSide:"local"}:{V:le,A:F,side:"local",other:ae,otherA:$,otherSide:"remote"};Ft?Q({kind:"move",el:null,source:mt?"both":"local",base:E}):mt&&ce({kind:"move",el:null,source:"remote",base:E});let Mt=le.asBase?[]:le.units.filter(xe=>!le.baseOf(xe)&&!Et.has(xe)&&!xt.partner.has(xe)),gn=ae.asBase?[]:ae.units.filter(xe=>!ae.baseOf(xe)&&!Et.has(xe)&&!xt.partner.has(xe)),Jt=new Map;if(Mt.length&&gn.length){let xe=new Map,nt=new Map;for(let at of gn){if(bt(at)){let Ut=y(at);Ut&&xe.set(Ut,at)}let Nt=l.unitHash(at);nt.has(Nt)||nt.set(Nt,[]),nt.get(Nt).push(at)}let et=(at,Nt)=>{let Ut=at.units.indexOf(Nt);for(let pt=Ut-1;pt>=0;pt--){let Rt=at.baseOf(at.units[pt]);if(Rt)return Rt}return"start"},_t=new Map,Ht=new Map;for(let at of gn){let Nt=et(ae,at);bt(at)?(Ht.has(Nt)||Ht.set(Nt,[]),Ht.get(Nt).push(at)):at.kind==="text"&&!_t.has(Nt)&&_t.set(Nt,at)}for(let at of Mt){let Nt=null;if(bt(at)){let pt=p(at);pt&&xe.has(pt)&&!Jt.has(xe.get(pt))&&(Nt=xe.get(pt))}else if(at.kind==="text"){let pt=_t.get(et(le,at));pt&&!Jt.has(pt)&&(Nt=pt)}let Ut=!!A(at);if(!Nt&&!Ut){let pt=nt.get(l.unitHash(at));pt&&(Nt=pt.find(Rt=>!Jt.has(Rt)&&bt(Rt)===bt(at)&&(bt(Rt)?Rt.tagName===at.tagName&&!W(Rt):Rt.kind===at.kind)&&l.equalUnits(at,Rt))||null)}if(!Nt&&bt(at)&&!Ut){let pt=m.local(at),Rt=(Ht.get(et(le,at))||[]).filter(dn=>{let bn=m.remote(dn);return!Jt.has(dn)&&dn.tagName===at.tagName&&!W(dn)&&!(pt&&bn&&pt!==bn)&&l.similar(at,dn)});Rt.length===1&&(Nt=Rt[0])}Nt&&(Jt.set(Nt,at),Jt.set(at,Nt))}}let Kn=xe=>{if(ot?.consumes(xe))return null;if(te.has(xe)||qe?.has(xe))return rt.get(xe)||null;let nt=le.twin(xe),et=ae.twin(xe),_t=nt&&!le.asBase&&!le.here(nt),Ht=et&&!ae.asBase&&!ae.here(et);if(_t||Ht){if((!nt||!et)&&Ue({kind:"structure",el:null,detail:"move-beats-delete",base:xe},{subject:xe,deleted:nt?"remote":"local"}),!Oe(xe))return bt(xe)?(qe||=Fr(Ee,Be,F,$,ge,J,o,r.remoteWins,w,Ue,D,S,v),_t&&qe.plan(xe,"local",nt),Ht&&qe.plan(xe,"remote",et)):te.add(xe),null;Ue({kind:"structure",el:null,detail:"both-moved",base:xe},{subject:xe})}if(nt&&!et&&!le.asBase&&!ae.asBase&&bt(xe)&&Pn.has(xe.tagName)&&!r.remoteWins(xe)&&!r.remoteWins(nt)&&D(xe,nt,F)&&dd(xe,oe(ae.el),o)){let Rt={ignored:o,remoteWins:r.remoteWins,inlineCache:Se},dn=bn=>bt(bn)?Vn(bn,Rt):bn.kind==="text";if(i(xe).every(dn)&&i(nt).every(dn)){let bn=br({base:[xe],local:[nt],remote:[],blocks:new Set([xe,nt]),out:re,policy:tt,L:F,R:$,idOf:{base:d,local:p,remote:y},ignored:o,ignoreAttribute:r.ignoreAttribute,remoteWins:r.remoteWins,mergeElement:(wn,Nn,qn)=>J(wn,Nn,qn,!1),cloneUnit:G,mergeAttrs:ee,atomKey:l.exactUnitKey,moveIn:Ae,moveBuilt:Ae,movePlanned:Ae,provenance:Ee,textMappers:Ge,conflicts:w,conflict:Ue,scope:{base:E,local:le.el,remote:ae.el,units:$e,at:He.get(xe)},decisions:_e,node:de});ne.push(...bn.segments),te.add(xe),te.add(nt);let On=re.createDocumentFragment();for(let wn of bn.nodes)On.appendChild(wn);return rt.set(xe,On),rt.set(nt,On),On}}if(!nt&&!et)return te.add(xe),ce({kind:"remove",source:"both",base:xe}),null;if(!nt&&!D(xe,et,$))return te.add(xe),Q({kind:"remove",source:"local",base:xe}),null;if(!et&&!D(xe,nt,F))return te.add(xe),ce({kind:"remove",source:"remote",base:xe}),null;let at=!nt||!et,Nt=le.asBase?ge(F,xe)||null:nt,Ut=ae.asBase&&bt(xe)&&($.identityPaired.has(xe)||!m.base(xe))&&ge($,xe)||et,pt;return bt(xe)?pt=J(xe,Nt,Ut,le.asBase):xe.kind==="comment"?pt=De(xe,Nt,et,le.asBase):pt=Ve(xe,Nt,et,le.asBase),te.add(xe),pt&&(rt.set(xe,pt),nt&&rt.set(nt,pt),et&&rt.set(et,pt),at&&(Ue({kind:"structure",el:pt,detail:"edit-beats-delete",base:xe},{subject:xe,deleted:nt?"remote":"local"}),nt?Q({kind:"insert",el:pt,source:"local"}):ce({kind:"insert",el:pt,source:"remote"}))),pt},Bn=(xe,nt,et,_t)=>{if(ot?.consumes(xe))return null;if(te.has(xe))return rt.get(xe)||null;let Ht=nt.baseOf(xe);if(Ht&&Je.has(Ht))return Et.has(Ht)&&!Et.has(xe)?qo(Ht,xe,_t):Kn(Ht);if(Ht)return Gn(Ht,xe,_t);let at=Jt.get(xe);if(at){let Ut=_t==="local"?xe:at,pt=_t==="local"?at:xe,Rt;return bt(Ut)?l.equalUnits(Ut,pt)?(Rt=G(Ut,"local"),Rt&&(Ee.get(Rt).remote=pt)):Rt=B(Ut,pt):Rt=ke(Ut,pt),te.add(Ut),te.add(pt),Rt&&(rt.set(Ut,Rt),rt.set(pt,Rt),bt(Ut)&&Q({kind:"insert",el:Rt,source:"both"})),Rt}let Nt=G(xe,_t);return Nt&&(rt.set(xe,Nt),_t==="local"?Q({kind:"insert",el:Nt,source:"local"}):ce({kind:"insert",el:Nt,source:"remote"})),Nt},qo=(xe,nt,et)=>{let _t;return bt(xe)?(_t=Ae(xe,et,nt),_t&&te.add(nt)):(_t=G(nt,et),te.add(nt),_t&&(et==="local"?Q:ce)({kind:"insert",el:_t,source:et})),_t&&rt.set(nt,_t),_t},Gn=(xe,nt,et)=>{Ae(xe,null,null);let Ht=ge(et==="local"?$:F,xe),at=nt,Nt=Ht?Ze(Ht,et==="local"?Z:z,et==="local"?$:F):!1,Ut=Ht&&!Nt&&!st(xe,Ht);if(Ut&&et===Wt.otherSide)return Ue({kind:"structure",el:null,detail:"both-moved",base:xe},{subject:xe}),null;if(Ut&&Ue({kind:"structure",el:null,detail:"both-moved",base:xe},{subject:xe}),Ht||Ue({kind:"structure",el:null,detail:"move-beats-delete",base:xe},{subject:xe,deleted:et==="local"?"remote":"local"}),ze.has(xe)){Ue({kind:"structure",el:null,detail:"both-moved",base:xe},{subject:xe});let Rt=G(at,et);return Rt&&rt.set(nt,Rt),Rt}bt(xe)&&(qe||=Fr(Ee,Be,F,$,ge,J,o,r.remoteWins,w,Ue,D,S,v),qe.plan(xe,et,at,!0));let pt=bt(xe)?J(xe,et==="local"?at:ge(F,xe)||null,et==="remote"?at:ge($,xe)||null,!1):null;return pt&&(rt.set(xe,pt),rt.set(nt,pt),Ht&&rt.set(Ht,pt),et==="local"?Q({kind:"move",el:pt,source:"local"}):ce({kind:"move",el:pt,source:"remote"})),pt};for(let xe of Wt.V.units){if(Et.has(xe)){if(Pt?.has(xe)){for(let _t of Pt.get(xe))Qe.has(_t)||(Xe.push(_t),Qe.add(_t));continue}let et=rt.get(xe);Qe.has(et)||(Xe.push(et),Qe.add(et));continue}if(te.has(xe)&&!(rt.get(xe)&&Qe.has(rt.get(xe)))){let et=Wt.V.baseOf(xe);et&&!Je.has(et)&&Ue({kind:"structure",el:null,detail:"both-moved",base:et},{subject:et});continue}let nt=Bn(xe,Wt.V,Wt.A,Wt.side);nt&&!Qe.has(nt)&&(Xe.push(nt),Qe.add(nt),!Wt.V.baseOf(xe)&&!Jt.has(xe)&&!Et.has(xe)&&jt.add(nt))}for(let xe of en)Qe.has(xe.frag)||(Xe.splice(xe.previous&&Qe.has(xe.previous)?Xe.indexOf(xe.previous)+1:ao(xe.at),0,xe.frag),Qe.add(xe.frag));if(!Wt.other.asBase){let xe=Wt.other,nt=Wt.otherSide,et=Wt.otherA,_t=null,Ht=0,at=null;for(let Nt of xe.units){let Ut=rt.get(Nt);if(Ut&&Qe.has(Ut)){_t=Ut,at=null;continue}if(te.has(Nt)){let dn=xe.baseOf(Nt);dn&&!Je.has(dn)&&Ue({kind:"structure",el:null,detail:"both-moved",base:dn},{subject:dn});continue}let pt=Bn(Nt,xe,et,nt);if(!pt)continue;let Rt;if(at)Rt=Xe.indexOf(at)+1;else if(_t){if(Rt=Xe.indexOf(_t)+1,nt==="remote")for(;Rt<Xe.length&&jt.has(Xe[Rt]);)Rt++}else Rt=Ht++;Xe.splice(Rt,0,pt),Qe.add(pt),at=pt}}for(let xe=0;xe<$e.length;xe++){let nt=$e[xe];if(te.has(nt))continue;let et=Kn(nt);et&&Xe.splice(ao(xe),0,et)}return Xe;function ao(xe){for(let nt=xe-1;nt>=0;nt--){let et=rt.get($e[nt]);if(et){let _t=Xe.indexOf(et);if(_t>=0)return _t+1}}return 0}function $s(){if((le.asBase||F.identical.has(E))&&(ae.asBase||$.identical.has(E)))return;let xe={ignored:o,remoteWins:r.remoteWins,inlineCache:Se},nt=ft=>bt(ft)?Vn(ft,xe):ft.kind==="text";if(!le.asBase&&!ae.asBase)for(let ft of $e){if(!bt(ft)||!Pn.has(ft.tagName))continue;let lt=le.twin(ft),qt=ae.twin(ft);if(!lt&&qt||lt&&!qt){let ct=pa({base:$e,views:[{V:le,A:F,idOf:m.local},{V:ae,A:$,idOf:m.remote}],eligible:Dt=>bt(Dt)&&Pn.has(Dt.tagName)&&!o(Dt)&&!r.remoteWins(Dt),baseId:m.base,ignored:o,remoteWins:r.remoteWins,atomKey:l.exactUnitKey});ct&&(le=ct[0],ae=ct[1]);break}}let et=!le.asBase&&!ae.asBase&&$e.length>=2&&Pn.has($e[0].tagName)&&le.units.length===$e.length&&ae.units.length===$e.length?Gl({base:$e,local:le.units,remote:ae.units,localTwin:le.twin,remoteTwin:ae.twin,eligible:ft=>bt(ft)&&Pn.has(ft.tagName)&&!o(ft)&&!r.remoteWins(ft),nodes:{base:Array.from(oe(E).childNodes),local:Array.from(oe(le.el).childNodes),remote:Array.from(oe(ae.el).childNodes)}}):null,_t=null,Ht=null;if(!et&&!le.asBase&&!ae.asBase&&(ki($e)||ki(le.units)||ki(ae.units))){let ft={ignored:o,remoteWins:()=>!1},lt=ct=>nt(ct)||bt(ct)&&r.remoteWins(ct)&&En.has(ct.tagName)&&Vn(ct,ft),qt=ct=>bt(ct)?Pn.has(ct.tagName)&&!o(ct)&&!r.remoteWins(ct)&&i(ct).every(lt):ct.kind==="text";_t=ga({onUncertainOwner:ct=>{let Dt=r.identity.local(ct.local);Dt&&Dt===r.identity.remote(ct.remote)||(Ht||=[]).push(ct)},onUncertainSource:ct=>{it||(it=new Map);let Dt=it.get(ct.source);Dt||it.set(ct.source,Dt=[]);for(let Zt of Dt)if(Zt.side===ct.side&&Zt.from===ct.from&&Zt.to===ct.to)return;Dt.push(ct)},base:$e,views:[{V:le,A:F,idOf:m.local},{V:ae,A:$,idOf:m.remote}],eligible:qt,ignored:o,remoteWins:r.remoteWins,baseId:m.base,atomKey:l.exactUnitKey})}if(Ht){Pt||=new Map;for(let ft of Ht){let{source:lt,local:qt,remote:ct}=ft,Dt={map:new Map,reverse:new Map,identical:new Set},Zt=br({base:[lt],local:[qt],remote:[ct],out:re,policy:"both",L:Dt,R:Dt,ignored:o,remoteWins:r.remoteWins,atomKey:l.exactUnitKey,cloneUnit:G,provenance:Ee,textMappers:Ge,conflicts:w,decisions:_e,conflict:(Bt,sn)=>Ue(Bt,{...sn,policy:"both"}),scope:{base:E,local:le.el,remote:ae.el,units:$e,at:He.get(lt)},node:de});ne.push(...Zt.segments);for(let Bt of[lt,qt,ct])te.add(Bt),Et.add(Bt),Pt.set(Bt,Zt.nodes),rt.set(Bt,Zt.nodes[Zt.nodes.length-1]);for(let Bt=0;Bt<Zt.nodes.length;Bt++)en.push({frag:Zt.nodes[Bt],at:He.get(lt),previous:Bt?Zt.nodes[Bt-1]:null})}}let at=et?et.blocks:null;if(_t){at=new Set;for(let ft of _t.blocks)at.add(ft)}let Nt=ft=>!ot?.consumes(ft)&&(at&&at.has(ft)||nt(ft)),Ut=$e.map(Nt);if(!Ut.includes(!0))return;let pt=ft=>{let lt=ft.units,qt=new Map;for(let Kt=0;Kt<lt.length;Kt++)qt.set(lt[Kt],Kt);let ct=[],Dt=-1;for(let Kt=0;Kt<$e.length;Kt++){if(Ut[Kt])continue;let It=ft.twin($e[Kt]),Ot=It?qt.get(It):void 0;Ot===void 0||Ot<=Dt||Nt(It)||(ct.push([Kt,Ot]),Dt=Ot)}let Zt=[],Bt=-1,sn=-1;for(let Kt=0;Kt<=ct.length;Kt++){let[It,Ot]=Kt<ct.length?ct[Kt]:[$e.length,lt.length],zt={bLo:-1,bHi:-1,from:sn+1,to:Ot,inlineStart:-1,inlineEnd:-1,next:Ot};for(let tn=Bt+1;tn<It;tn++)Ut[tn]&&(zt.bLo<0&&(zt.bLo=tn),zt.bHi=tn);for(let tn=sn+1;tn<Ot;tn++){let er=lt[tn];Nt(er)&&(zt.inlineStart<0&&(zt.inlineStart=tn),zt.inlineEnd=tn+1)}Zt.push(zt),Bt=It,sn=Ot}return{units:lt,list:Zt}},Rt=pt(le),dn=pt(ae),bn=[];for(let ft of[Rt,dn])for(let lt of ft.list)lt.bLo>=0&&bn.push([lt.bLo,lt.bHi]);bn.sort((ft,lt)=>ft[0]-lt[0]);let On=[];for(let[ft,lt]of bn){let qt=On[On.length-1];qt&&ft<=qt.hi?qt.hi=Math.max(qt.hi,lt):On.push({lo:ft,hi:lt})}let wn=(ft,lt)=>ft.length===lt.length&&ft.every((qt,ct)=>l.equalUnits(qt,lt[ct])),Nn=ft=>!bt(ft)&&ft.kind==="comment",qn=ft=>{if(!ft.length)return[];let lt=(Bt,sn)=>bt(Bt)?Bt:Bt.nodes[sn?Bt.nodes.length-1:0],qt=lt(ft[0]),ct=lt(ft[ft.length-1],!0),Dt=Bt=>Bt&&bt(Bt)&&o(Bt);for(;Dt(qt.previousSibling);)qt=qt.previousSibling;for(;Dt(ct.nextSibling);)ct=ct.nextSibling;let Zt=[];for(let Bt=qt;Bt&&(Zt.push(Bt),Bt!==ct);Bt=Bt.nextSibling);return Zt},Uo=ft=>ft.some(lt=>bt(lt)&&o(lt));for(let ft of On){let lt=$e.slice(ft.lo,ft.hi+1),qt=null;if(_t)for(let It of lt){let Ot=_t.certificatesBySource.get(It);Ot&&(qt||=[]).push(...Ot)}let ct=le.asBase?null:bi(Rt,ft),Dt=ae.asBase?null:bi(dn,ft);if(qt){let It=[new Set(ct||lt),new Set(Dt||lt)],Ot=qt.some(zt=>!It[zt.side].has(zt.target));for(let zt of lt)if(at.has(zt))for(let[tn,er]of[[0,le],[1,ae]]){let tr=er.twin(zt);tr&&er.here(tr)&&!It[tn].has(tr)&&(Ot=!0)}if(Ot)continue}if(lt.some(Nn)||ct&&ct.some(Nn)||Dt&&Dt.some(Nn))continue;let Zt=qn(ct||lt),Bt=qn(Dt||lt);if((!ct||wn(lt,ct))&&(!Dt||wn(lt,Dt))&&!(ct&&Uo(Zt)))continue;let sn=br({base:qn(lt),sourceRetentions:it?.get(E),local:Zt,remote:Bt,out:re,policy:tt,blocks:at,scopeUnits:qt?[lt,ct||lt,Dt||lt]:null,certifiedOrigins:qt?(It,Ot,zt,tn,er,tr)=>ba({certificates:qt,scopes:[lt,ct||lt,Dt||lt],flats:[It,Ot,zt],keys:[tn,er,tr]}):null,prepared:et?et.prepared:null,nativeTransfers:et,L:ct?F:ka(F,E),R:Dt?$:ka($,E),idOf:{base:d,local:p,remote:y},ignored:o,ignoreAttribute:r.ignoreAttribute,remoteWins:r.remoteWins,mergeElement:(It,Ot,zt)=>J(It,Ot,zt,!1),cloneUnit:G,mergeAttrs:ee,atomKey:l.exactUnitKey,moveIn:Ae,moveBuilt:Ae,movePlanned:Ae,provenance:Ee,textMappers:Ge,conflicts:w,conflict:Ue,scope:{base:E,local:le.asBase?null:le.el,remote:ae.asBase?null:ae.el,units:$e,at:ft.lo},decisions:_e,node:de});if(!sn){if(qt){let It=Yl({certificates:qt,scopes:[lt,ct||lt,Dt||lt],views:[{V:le,A:F,idOf:m.local},{V:ae,A:$,idOf:m.remote}],eligible:Ot=>bt(Ot)&&Pn.has(Ot.tagName)&&!o(Ot)&&!r.remoteWins(Ot),baseId:m.base});for(let Ot of It.records){it||=new Map;let zt=it.get(Ot.source);zt||it.set(Ot.source,zt=[]),zt.push(Ot)}}continue}if(ne.push(...sn.segments),et){let It=new Map;for(let Ot of sn.nodes){let zt=Ee.get(Ot)?.base;if(!zt||It.has(zt))throw new Error("Invalid native transfer owner output");It.set(zt,Ot)}if(It.size!==et.owners.length)throw new Error("Incomplete native transfer owner output");for(let Ot of et.owners){let zt=It.get(Ot.base);if(!zt)throw new Error("Missing native transfer owner output");for(let tn of[Ot.base,Ot.local,Ot.remote])te.add(tn),Et.add(tn),rt.set(tn,zt);en.push({frag:zt,at:He.get(Ot.base)})}continue}if(sn.unitOutputs){Pt||=new Map;for(let It of[...lt,...ct||[],...Dt||[]]){let Ot=sn.unitOutputs.get(It)||[];te.add(It),Et.add(It),Pt.set(It,Ot),Ot.length&&rt.set(It,Ot[Ot.length-1])}for(let It=0;It<sn.nodes.length;It++)en.push({frag:sn.nodes[It],at:ft.lo,previous:It>0?sn.nodes[It-1]:null});continue}let Kt=re.createDocumentFragment();for(let It of sn.nodes)Kt.appendChild(It);for(let It of[...lt,...ct||[],...Dt||[]])te.add(It),Et.add(It),rt.set(It,Kt);en.push({frag:Kt,at:ft.lo})}}}function be(E,z){let Z=Ee.get(E);return Z&&Z.unchanged?!Z.remote||Z.remote===z?!0:fe(Z.remote,z):E.tagName!==z.tagName||!K(E,z)?!1:ue(oe(E),oe(z))}function fe(E,z){return E===z?!0:E.tagName!==z.tagName||E.namespaceURI!==z.namespaceURI||!K(E,z)?!1:we(oe(E),oe(z))}function we(E,z){let Z=Le(E,o),ye=Le(z,o);if(Z.length!==ye.length)return!1;for(let de=0;de<Z.length;de++){let le=Z[de],ae=ye[de];if(typeof le=="string"||typeof ae=="string"){if(le!==ae)return!1}else{if(le.nodeType!==ae.nodeType)return!1;if(le.nodeType===1){if(!fe(le,ae))return!1}else if(le.nodeValue!==ae.nodeValue)return!1}}return!0}function oe(E){return E.tagName==="TEMPLATE"&&E.content?E.content:E}function K(E,z){let Z=0;for(let ye of E.attributes)if(!r.ignoreAttribute(E,ye.name)&&(Z++,z.getAttribute(ye.name)!==ye.value))return!1;for(let ye of z.attributes)r.ignoreAttribute(z,ye.name)||Z--;return Z===0}function ue(E,z){let Z=Le(E,de=>{let le=Ee.get(de);return!!(le&&le.pinned)}),ye=Le(z,o);if(Z.length!==ye.length)return!1;for(let de=0;de<Z.length;de++){let le=Z[de],ae=ye[de];if(typeof le=="string"||typeof ae=="string"){if(le!==ae)return!1}else{if(le.nodeType!==ae.nodeType)return!1;if(le.nodeType===1){if(!be(le,ae))return!1}else if(le.nodeValue!==ae.nodeValue)return!1}}return!0}function Le(E,z){let Z=[],ye=null;for(let de=E.firstChild;de;de=de.nextSibling){if(de.nodeType===3){ye=ye===null?de.nodeValue:ye+de.nodeValue;continue}de.nodeType===1&&z(de)||(ye!==null&&(ye!==""&&Z.push(ye),ye=null),Z.push(de))}return ye!==null&&ye!==""&&Z.push(ye),Z}function De(E,z,Z,ye){let de=E.value,le=ye?de:z?z.value:"",ae=Z?Z.value:"";te.add(E),z&&te.add(z),Z&&te.add(Z);let $e=le===ae?le:le===de?ae:ae===de||tt==="local"?le:ae,Je={site:"comment",bRun:E,lRun:z,rRun:Z,node:null};if(le!==de&&ae!==de&&le!==ae&&Ue({kind:"text",node:null,base:de,local:le,remote:ae,resolved:$e},Je),!z&&!Z)return null;let He=re.createComment($e);return Je.node=He,Ee.set(He,{base:E.nodes,local:z?z.nodes:null,remote:Z?Z.nodes:null}),He}function We(E,z){let Z=ge(z,E);if(!Z)return null;let ye=bt(Z)?Z.parentNode:Z.parent,de=bt(E)?E.parentNode:E.parent;return ge(z,de)===ye?null:z.reverse.get(ye)||null}function Oe(E){let z=new Set([E]),Z=E;for(let ye=0;ye<64;ye++){let de=We(Z,F)||We(Z,$);if(!de)return!1;if(de===E||bt(E)&&bt(de)&&E.contains(de)||z.has(de))return!0;z.add(de),Z=de}return!0}function Ze(E,z,Z){if(!z)return!1;let ye=bt(E)?E.parentNode:E.parent;return ye===z||z.tagName==="TEMPLATE"&&ye===z.content}function st(E,z){let Z=Be(E),ye=ge(F,Z);if(ye&&Ze(z,ye,F))return!0;let de=ge($,Z);return!!(de&&Ze(z,de,$))}}function ka(e,t){return e.map.get(t)?ya():{map:{get:r=>r&&r.nodeType===1&&e.map.get(r)||r,has:()=>!0},reverse:{get:r=>e.reverse.get(r)||r,has:()=>!0},moved:new Set,identical:{has:()=>!0},pairIdenticalChildren:()=>{}}}function ya(){let e={get:t=>t,has:()=>!0};return{map:e,reverse:e,moved:new Set,identical:{has:()=>!0},pairIdenticalChildren:()=>{}}}var xa=new Set(["INPUT","OPTION","TEXTAREA"]),xi=/[\t\n\f\r ]+/;function va(e,t,n,r){let o=e.ownerDocument,{provenance:s,textMappers:l}=n,i=r.hooks,a=[],c=[],h=[],u=new Set,f=[],d=[],p=new Map,y=new Set,m=new Map,g=n.conflicts.length>0,k=new Map,S=new Set,v=new Map,x=(H,ie)=>{let pe=v.get(H);pe||v.set(H,pe=new Set),pe.add(ie)},O=g?new Set:null,C=(H,ie,pe)=>{let ge=i.beforeAttributeUpdated(H,ie,pe);return g&&ge===!1&&x(ie,H),ge},_=H=>!!H&&(H===e||e.contains(H)||e.nodeType===1&&e.tagName==="TEMPLATE"&&e.content.contains(H)),M=new Map,j=new Map,I=new Map,P=new Set,R=new Map;(function H(ie){let pe=s.get(ie);if(pe){if(ie.nodeType===1){let Ae=pe.local?r.toLive(pe.local):null;Ae&&_(Ae)&&Ae.nodeType===1&&(M.set(ie,Ae),j.set(Ae,ie))}else if(Array.isArray(pe.local)){let Ae=$(pe.local,pe.local.map(N=>r.toLive(N)).filter(N=>N&&_(N)&&N.nodeType===ie.nodeType));if(Ae.length&&(M.set(ie,Ae[0]),j.set(Ae[0],ie),I.set(ie,Ae)),Array.isArray(pe.caret))for(let N of pe.caret){let D=r.toLive(N.node);if(!D||!_(D)||D.nodeType!==3)continue;let Y=R.get(D);Array.isArray(Y)||R.set(D,Y=[]),Y.push({merged:ie,from:N.from,to:N.to,flatStart:N.flatStart})}else{let N=0;for(let D of Ae)R.set(D,{merged:ie,shift:N}),N+=D.nodeValue.length}}}let ge=ie.nodeType===1&&ie.tagName==="TEMPLATE"&&ie.content?ie.content.childNodes:ie.childNodes;for(let Ae of ge)H(Ae)})(t);let T=new Set;for(let H of M.values())T.add(H);for(let H of I.values())for(let ie of H)T.add(ie);let A=r.localRoot&&r.localRoot!==e?new Set:null;if(A){for(let H=r.localRoot.firstElementChild;H;H=H.nextElementSibling)if(H.tagName==="HEAD")for(let ie=H.firstElementChild;ie;ie=ie.nextElementSibling){let pe=r.toLive(ie);pe&&A.add(pe)}}for(let H of n.segments||[])Ne(H);let W=r.restoreFocus===!1?null:hd(o,R);r.childrenOnly?Ee(Ce(e),Ce(t)):Be(e,t);for(let{node:H,parent:ie}of f)u.has(H)||!H.parentNode||H.nodeType===1&&(r.ignored(H)||Ge(H))||it(H,ie);return md(o,W,R,l,I,m,P),{applied:a,moved:c,replaced:h,identities:d,mergedScriptsLive:y,liveOf:M,heldBy:m,runOf:I,keptRuns:P,insertedLive:k,vetoed:S,vetoedAttrs:v,removedVetoes:O};function F(H,ie){let pe=H.slice(ie.bs,ie.be),ge=0;for(;ge<pe.length&&ge<ie.text.length&&pe[ge]===ie.text[ge];)ge++;let Ae=0;for(;Ae<pe.length-ge&&Ae<ie.text.length-ge&&pe[pe.length-1-Ae]===ie.text[ie.text.length-1-Ae];)Ae++;return{bs:ie.bs+ge,be:ie.be-Ae,text:ie.text.slice(ge,ie.text.length-Ae)}}function $(H,ie){if(!ie.length)return ie;let pe=[];for(let N of H){let D=N.parentNode;if(!D)continue;let Y=p.get(D);if(!Y){Y=new Set;for(let J=D.firstChild;J;J=J.nextSibling)J.nodeType===3&&Y.add(r.toLive(J));p.set(D,Y)}pe.includes(Y)||pe.push(Y)}let ge={has:N=>pe.some(D=>D.has(N))},Ae=[];for(let N of ie){Ae.push(N);for(let D=N.nextSibling;D&&D.nodeType===3&&!ge.has(D)&&!Ae.includes(D);D=D.nextSibling)Ae.push(D)}return Ae}function Ne(H){let ie=[];for(let ke of H.localNodes){let B=r.toLive(ke.node);if(!B||!_(B)||B.nodeType!==3)return;ie.push(B)}let pe=$(H.localNodes.map(ke=>ke.node),ie);if(!pe.length)return;let ge=pe.map(ke=>ke.nodeValue).join(""),{flatLocal:Ae,lToM:N,mapLocal:D}=H;if(ge===Ae)return;let Y=H.textNodes.map(ke=>({node:ke.node,ms:ke.ms,me:ke.me})),J=[],se=0;for(let ke of pe)J.push(se),se+=ke.nodeValue.length;let Fe=(ke,B)=>pe.find((G,he)=>J[he]<=ke&&ke+B<=J[he]+G.nodeValue.length)||null,ee=[],Me=0;for(let ke of gr(Ae,ge).map(B=>F(Ae,B))){let B=ke.bs+Me;Me+=ke.text.length-(ke.be-ke.bs);let G,he;if(ke.be>ke.bs){G=N[ke.bs];let be=G>=0;for(let fe=ke.bs;be&&fe<ke.be;fe++)N[fe]!==G+(fe-ke.bs)&&(be=!1);if(!be)continue;he=G+(ke.be-ke.bs)}else{let be=ke.bs>0?N[ke.bs-1]:0,fe=ke.bs<Ae.length?N[ke.bs]:0;if(be<0||fe<0)continue;G=he=D(ke.bs)}ee.push({ms:G,me:he,text:ke.text,live:he===G?Fe(B,ke.text.length):null})}ee.sort((ke,B)=>B.ms-ke.ms);let Ve=(ke,B)=>(I.get(ke.node)||[M.get(ke.node)]).includes(B),Ie=ke=>!!ke&&ke.nodeType===1&&En.has(ke.tagName);for(let ke of ee){let B=Y.find(he=>he.ms<=ke.ms&&ke.me<=he.me&&ke.ms<he.me);if(B&&ke.live&&B.ms===ke.ms&&!Ve(B,ke.live)){let he=Y.find(be=>be.me===ke.ms&&Ve(be,ke.live));he&&(B=he)}if(!B&&ke.me===ke.ms){let he=Y.find(oe=>oe.me===ke.ms),be=Y.find(oe=>oe.ms===ke.ms),fe=he||be;if(!fe)continue;let we=fe.node;for(;Ie(we.parentNode)&&(he?we.parentNode.lastChild:we.parentNode.firstChild)===we;)we=we.parentNode;if(we===fe.node)B=fe;else{let oe=we.ownerDocument.createTextNode(ke.text);we.parentNode.insertBefore(oe,he?we.nextSibling:we);continue}}if(!B)continue;let G=B.node.nodeValue;B.node.nodeValue=G.slice(0,ke.ms-B.ms)+ke.text+G.slice(ke.me-B.ms),B.me+=ke.text.length-(ke.me-ke.ms)}}function Ce(H){return H.nodeType===1&&H.tagName==="TEMPLATE"&&H.content?H.content:H}function Be(H,ie){u.add(H);let pe=s.get(ie);if(pe&&pe.remote&&n.remoteIdOf){let Ae=n.remoteIdOf(pe.remote);Ae&&d.push([H,Ae])}if(pe&&pe.unchanged){n.customIdentity&&pe.remote&&ne(H,pe.remote),pe.remote&&V(H,pe.remote);return}if(i.beforeNodeMorphed(H,ie)===!1){S.add(ie);return}qe(H,ie,r.keepLiveOnly&&pe&&pe.local&&pe.local.nodeType===1&&pe.local!==H?pe.local:null);let ge=H.tagName;if(yn(H))H.textContent!==ie.textContent&&(a.push({kind:"text",node:H,before:H.textContent,after:ie.textContent}),H.textContent=ie.textContent),n.mergedScripts.has(ie)&&y.add(H);else if(ge==="TEXTAREA")ht(H,ie,pe);else{dt(H,ie,pe);let Ae=ge==="TEMPLATE"&&H.content?H.content:H,N=ge==="TEMPLATE"&&ie.content?ie.content:ie;r.protectFocusedValue==="subtree"&&xt(H)&&H!==o.body?re(Ae):Ee(Ae,N)}i.afterNodeMorphed(H,ie)}function re(H){for(let ie=H.firstChild;ie;ie=ie.nextSibling){let pe=j.get(ie);pe&&M.get(pe.parentNode)!==H||(u.add(ie),ie.nodeType===1&&re(ie))}}function Ee(H,ie){let pe=ze(H.firstChild),ge=new Set;for(let Ae of Array.from(ie.childNodes)){let N=M.get(Ae);N&&u.has(N)&&!ge.has(N)&&(N=null);let D=s.get(Ae);if(D&&D.pinned){N&&N.nodeType===1&&((N.parentNode!==H||ze(N.nextSibling)!==pe)&&Se(H,N,pe),u.add(N),ge.add(N));continue}if(N&&N.nodeType===1){if(N!==pe){let se=N.parentNode;if(se===H&&pe&&kt(N)){let Fe=N.nextSibling;for(let ee=pe;ee&&ee!==N;){let Me=ee.nextSibling;Se(H,ee,Fe),ee=Me}}else Se(H,N,pe),se!==H&&(c.push(N),a.push({kind:"move",el:N,from:se,to:H}))}ge.add(N),Be(N,Ae),pe=ze(N.nextSibling);continue}if(N&&N.nodeType!==1){let se=I.get(Ae)||[N],Fe=se.map(Me=>Me.nodeValue).join(""),ee=Ae.nodeValue;if(Ae.nodeType===3){let Me=_e(Ae);Me!=null&&Fe!==Me&&(ee=uo(Me,Fe,Ae.nodeValue).text)}if(se.length>1&&Fe===ee&&!se.includes(pe,1)&&se.every((Me,Ve)=>Me.parentNode===H&&(Ve===0||se[Ve-1].nextSibling===Me))){if(N!==pe)for(let Me of se)Se(H,Me,pe);i.beforeNodeMorphed(N,Ae)!==!1?i.afterNodeMorphed(N,Ae):g&&S.add(Ae);for(let Me of se)u.add(Me),ge.add(Me);m.set(Ae,N),P.add(Ae),pe=ze(se[se.length-1].nextSibling);continue}N!==pe&&Se(H,N,pe),i.beforeNodeMorphed(N,Ae)!==!1?(N.nodeValue!==ee&&(a.push({kind:"text",node:N,before:N.nodeValue,after:ee}),N.nodeValue=ee),i.afterNodeMorphed(N,Ae)):S.add(Ae),u.add(N),ge.add(N),m.set(Ae,N),pe=ze(N.nextSibling);continue}if(Ae.nodeType===3&&pe&&pe.nodeType===3&&!u.has(pe)&&!R.has(pe)){pe.nodeValue!==Ae.nodeValue&&(a.push({kind:"text",node:pe,before:pe.nodeValue,after:Ae.nodeValue}),pe.nodeValue=Ae.nodeValue),u.add(pe),m.set(Ae,pe),pe=ze(pe.nextSibling);continue}let Y=s.get(Ae),J=tt(Y&&Y.unchanged&&Y.remote?Y.remote:Ae);if(i.beforeNodeAdded(J)===!1){S.add(Ae);continue}H.insertBefore(J,pe),u.add(J),g&&k.set(Ae,J),J.nodeType===3&&m.set(Ae,J),J.nodeType===1&&(h.push(J),Pe(J,Ae),n.customIdentity&&Y&&Y.unchanged&&Y.remote&&ne(J,Y.remote),yn(J)||Q(J,Ae),r.formState==="property"&&Ct(Y)&&V(J,Y.remote)),pe=ze(J.nextSibling),a.push({kind:"insert",node:J,parent:H}),i.afterNodeAdded(J)}for(let Ae of Array.from(H.childNodes))u.has(Ae)||ge.has(Ae)||Ae.nodeType===1&&(r.ignored(Ae)||Ge(Ae))||(T.has(Ae)?f.push({node:Ae,parent:H}):it(Ae,H))}function Ge(H){return H.parentNode&&H.parentNode.nodeType===1&&H.parentNode.tagName==="HEAD"&&(A&&!A.has(H)||r.preserve&&r.preserve(H)===!0)}function _e(H){let ie=s.get(H);return!ie||!Array.isArray(ie.local)?null:ie.local.map(pe=>pe.nodeValue).join("")}function w(H){return s.get(H)}function V(H,ie){if(!xa.has(H.tagName)&&!H.querySelector("input,option,textarea"))return;let pe=(ge,Ae)=>{if(ge.tagName!==Ae.tagName)return;ge.tagName==="TEXTAREA"?ht(ge,Ae,{remote:Ae}):xa.has(ge.tagName)&&dt(ge,Ae,{remote:Ae});let N=te(ge),D=te(Ae);if(N.length===D.length)for(let Y=0;Y<N.length;Y++)pe(N[Y],D[Y])};pe(H,ie)}function ne(H,ie){let pe=te(H),ge=te(ie);if(pe.length===ge.length)for(let Ae=0;Ae<pe.length;Ae++){let N=n.remoteIdOf(ge[Ae]);N&&d.push([pe[Ae],N]),ne(pe[Ae],ge[Ae])}}function te(H){let ie=H.tagName==="TEMPLATE"&&H.content?H.content:H;return Array.from(ie.children).filter(pe=>!r.ignored(pe))}function Pe(H,ie){if(!n.remoteIdOf)return;let pe=(ge,Ae)=>{let N=s.get(Ae);if(N&&N.remote&&Ae.nodeType===1){let J=n.remoteIdOf(N.remote);J&&d.push([ge,J])}let D=ge.childNodes,Y=Ae.childNodes;for(let J=0;J<D.length&&J<Y.length;J++)pe(D[J],Y[J])};pe(H,ie)}function ze(H){for(;H&&H.nodeType===1&&r.ignored(H);)H=H.nextSibling;return H}function Se(H,ie,pe){if(typeof H.moveBefore=="function"&&ie.ownerDocument===H.ownerDocument)try{H.moveBefore(ie,pe);return}catch{}H.insertBefore(ie,pe)}function it(H,ie){if(i.beforeNodeRemoved(H)===!1){g&&O.add(H);return}H.parentNode.removeChild(H),a.push({kind:"remove",node:H,parent:ie}),i.afterNodeRemoved(H)}function tt(H){if(yn(H))return mo(H,o);let ie=o.importNode(H,!0);if(ie.nodeType===1)for(let pe of Array.from(ie.querySelectorAll("script")))yn(pe)&&pe.replaceWith(mo(pe,o));return ie}function Q(H,ie){let pe=H.tagName==="TEMPLATE"&&H.content?H.content:H,ge=ie.tagName==="TEMPLATE"&&ie.content?ie.content:ie,Ae=Array.from(pe.childNodes),N=Array.from(ge.childNodes);for(let D=0;D<N.length&&D<Ae.length;D++){let Y=N[D],J=Ae[D],se=M.get(Y);se&&u.has(se)&&(se=null);let Fe=s.get(Y);if(Fe&&Fe.pinned){if(se&&se.nodeType===1){let ee=se.parentNode;Se(pe,se,J),ee!==pe&&(c.push(se),a.push({kind:"move",el:se,from:ee,to:pe})),u.add(se)}J.remove();continue}if(se){let ee=se.parentNode;Se(pe,se,J),J.remove(),se.nodeType===1?(ee!==pe&&(c.push(se),a.push({kind:"move",el:se,from:ee,to:pe})),Be(se,Y)):(u.add(se),m.set(Y,se),se.nodeValue!==Y.nodeValue&&(a.push({kind:"text",node:se,before:se.nodeValue,after:Y.nodeValue}),se.nodeValue=Y.nodeValue));continue}u.add(J),g&&k.set(Y,J),J.nodeType===3&&m.set(Y,J),Fe&&Fe.unchanged&&Fe.remote?(ce(J,Fe.remote),n.customIdentity&&ne(J,Fe.remote)):Y.nodeType===1&&!yn(Y)&&Q(J,Y)}}function ce(H,ie){let pe=H.tagName==="TEMPLATE"&&H.content?H.content:H,ge=ie.tagName==="TEMPLATE"&&ie.content?ie.content:ie;for(let Ae of Array.from(ge.childNodes))pe.appendChild(tt(Ae))}function Re(H,ie){return ie.namespaceURI?H.getAttributeNS(ie.namespaceURI,ie.localName):H.getAttribute(ie.name)}function Ue(H,ie){let pe=new Set((ie||"").split(xi).filter(Boolean));return(H||"").split(xi).filter(ge=>ge&&!pe.has(ge))}function qe(H,ie,pe){for(let ge of Array.from(ie.attributes)){if(ot(H,ge.name)||r.ignoreAttribute(H,ge.name))continue;let Ae=Re(H,ge);if(Ae===ge.value||pe&&Re(pe,ge)===ge.value)continue;let N=ge.value;if(pe&&ge.name==="class"&&!ge.namespaceURI){let D=ge.value.split(xi).filter(Boolean),Y=Ue(Ae,pe.getAttribute("class")).filter(J=>!D.includes(J));Y.length&&(N=[...D,...Y].join(" "))}if(Ae!==N){if(i.beforeAttributeUpdated(ge.name,H,"update")===!1){g&&x(ie,ge.name);continue}ge.namespaceURI?H.setAttributeNS(ge.namespaceURI,ge.name,N):H.setAttribute(ge.name,N),a.push({kind:"attr",el:H,name:ge.name,before:Ae,after:N})}}for(let ge of Array.from(H.attributes)){if(ot(H,ge.name)||r.ignoreAttribute(H,ge.name)||(ge.namespaceURI?ie.hasAttributeNS(ge.namespaceURI,ge.localName):ie.hasAttribute(ge.name)))continue;if(pe&&ge.name==="class"&&!ge.namespaceURI){let D=Ue(ge.value,pe.getAttribute("class"));if(D.length){let Y=D.join(" ");if(Y===ge.value)continue;if(i.beforeAttributeUpdated("class",H,"update")===!1){g&&x(ie,"class");continue}H.setAttribute("class",Y),a.push({kind:"attr",el:H,name:"class",before:ge.value,after:Y});continue}}if(pe&&Re(pe,ge)===null)continue;if(i.beforeAttributeUpdated(ge.name,H,"remove")===!1){g&&x(ie,ge.name);continue}let N=ge.value;ge.namespaceURI?H.removeAttributeNS(ge.namespaceURI,ge.localName):H.removeAttribute(ge.name),a.push({kind:"attr",el:H,name:ge.name,before:N,after:null})}}function ot(H,ie){let pe=H.tagName;return pe==="INPUT"?ie==="value"||ie==="checked"||ie==="disabled":pe==="OPTION"?ie==="selected":!1}function xt(H){return H===o.activeElement}function kt(H){let ie=o.activeElement;return!!ie&&ie!==o.body&&H.contains(ie)}function Ct(H){let ie=H&&H.remote;return ie&&ie.nodeType===1?ie:null}function dt(H,ie,pe){let ge=H.tagName,Ae=Ct(pe),N=r.formState==="property"&&Ae?Ae:ie;if(ge==="INPUT"){let D=r.protectFocusedValue&&xt(H),Y=(H.getAttribute("type")||"").toLowerCase(),J=Y!=="file"&&Y!=="checkbox"&&Y!=="radio",se=Ae&&Ae.hasAttribute("value")&&Ae.value!==Ae.getAttribute("value")?Ae.value:null;if(J&&!D)if(r.formState==="property"){let Fe=ie.getAttribute("value"),ee=H.getAttribute("value");(ee!==Fe||H.value!==N.value)&&C("value",H,Fe==null?"remove":"update")!==!1&&(ee!==Fe&&(Fe==null?H.removeAttribute("value"):H.setAttribute("value",Fe),a.push({kind:"attr",el:H,name:"value",before:ee,after:Fe})),H.value!==N.value&&(H.value=N.value))}else if(ie.hasAttribute("value")||se!=null){let Fe=se??ie.getAttribute("value");H.getAttribute("value")!==Fe&&C("value",H,"update")!==!1?(H.setAttribute("value",Fe),H.value!==Fe&&(H.value=Fe),a.push({kind:"attr",el:H,name:"value",before:null,after:Fe})):H.value!==Fe&&H.getAttribute("value")===Fe&&(H.value=Fe)}else(H.hasAttribute("value")||H.value!=="")&&C("value",H,"remove")!==!1&&(H.removeAttribute("value"),H.value="",a.push({kind:"attr",el:H,name:"value",before:"",after:null}));if(!J&&Y!=="file"){let Fe=ie.getAttribute("value");Fe==null?H.hasAttribute("value")&&C("value",H,"remove")!==!1&&H.removeAttribute("value"):H.getAttribute("value")!==Fe&&C("value",H,"update")!==!1&&H.setAttribute("value",Fe)}D||(St(H,N,"checked"),r.formState==="property"&&H.indeterminate!==N.indeterminate&&(H.indeterminate=N.indeterminate)),St(H,N,"disabled")}else if(ge==="OPTION"){let D=H.parentNode&&H.closest("select");r.protectFocusedValue&&D&&xt(D)||St(H,N,"selected")}}function St(H,ie,pe){let ge=r.formState==="property"?!!ie[pe]:ie.hasAttribute(pe);if(r.formState!=="property"){let Ae=H.hasAttribute(pe);if(Ae!==ge){if(C(pe,H,ge?"update":"remove")===!1)return;ge?H.setAttribute(pe,""):H.removeAttribute(pe),a.push({kind:"attr",el:H,name:pe,before:Ae?"":null,after:ge?"":null})}}H[pe]!==ge&&(H[pe]=ge)}function ht(H,ie,pe){if(r.protectFocusedValue&&xt(H)||C("value",H,"update")===!1)return;let ge=Ct(pe),Ae=ie.textContent,N=ge&&ge.value!==ge.defaultValue?ge.value:Ae;r.formState!=="property"&&H.textContent!==Ae&&(a.push({kind:"text",node:H,before:H.textContent,after:Ae}),H.textContent=Ae),H.value!==N&&(H.value=N)}}function hd(e,t){let n=e.activeElement;if(!n||n===e.body||n===e.documentElement)return null;let r={el:n,id:n.getAttribute&&n.getAttribute("id"),scrollTop:n.scrollTop,scrollLeft:n.scrollLeft};if(n.tagName==="INPUT"||n.tagName==="TEXTAREA"){try{r.selection=[n.selectionStart,n.selectionEnd,n.selectionDirection]}catch{}return r}let o=e.getSelection&&e.getSelection();if(o&&o.rangeCount){let s=o.getRangeAt(0);r.range={sc:s.startContainer,so:s.startOffset,ec:s.endContainer,eo:s.endOffset}}return r}function md(e,t,n,r,o,s,l){if(!t)return;let i=t.el;if(!i.isConnected&&t.id&&(i=e.getElementById(t.id)),!i||!i.isConnected)return;if(e.activeElement!==i)try{i.focus({preventScroll:!0})}catch{}try{i.scrollTop=t.scrollTop,i.scrollLeft=t.scrollLeft}catch{}if(t.selection){try{i.setSelectionRange&&!i.selectionEnd&&t.selection[1]!=null&&i.setSelectionRange(t.selection[0],t.selection[1],t.selection[2]||"none")}catch{}return}if(!t.range)return;let a=(u,f)=>{let d=n.get(u);if(Array.isArray(d)){let p=d.find(k=>f>=k.from&&f<k.to)||d.find(k=>f===k.to)||d[d.length-1],y=s.get(p.merged);if(!y||!y.isConnected)return null;let m=r.get(p.merged),g=m&&m.flat?m.flat(p.flatStart+f):f;return[y,Math.max(0,Math.min(g,y.nodeValue.length))]}if(d&&!l.has(d.merged)){let p=(o.get(d.merged)||[u])[0];if(!p.isConnected)return null;let y=r.get(d.merged),m=d.shift+f,g=y?y(m):m;return[p,Math.max(0,Math.min(g,p.nodeValue.length))]}return u.isConnected?[u,Math.min(f,u.nodeType===3?u.nodeValue.length:u.childNodes.length)]:null},c=a(t.range.sc,t.range.so),h=a(t.range.ec,t.range.eo);if(!(!c||!h))try{let u=e.createRange();u.setStart(c[0],c[1]),u.setEnd(h[0],h[1]);let f=e.getSelection();f.removeAllRanges(),f.addRange(u)}catch{}}var pd={compared:0},gd=new Set(["INPUT","SELECT","OPTION","TEXTAREA"]);function bd(e,t,n){let r=0;for(let o of e.attributes)if(!n(e,o.name)&&(r++,t.getAttribute(o.name)!==o.value))return!1;for(let o of t.attributes)n(t,o.name)||r--;return r===0}function vi(e,t){if(e.namespaceURI!==t.namespaceURI||e.prefix!==t.prefix||e.localName!==t.localName)return!1;let n=e.attributes;if(n.length!==t.attributes.length)return!1;for(let r of n)if(t.getAttributeNS(r.namespaceURI,r.localName)!==r.value)return!1;return!0}function wa(e,t,n,r,o,s,l,i){let a=new Map,c=new Set,h=u=>{if(r(u))return;let f=n(u);f&&(s.add(f),o.has(f)||a.has(f)?c.add(f):a.set(f,u))};for(let u of e)h(u);h(t);for(let u of l||t.querySelectorAll("*"))h(u);for(let u of c)a.delete(u),i.add(u);return a}function Aa(e,t,n,r,o,s){let l=!1;for(let h of o)h.startsWith("merge:")&&(l=!0);if(!l)return[...r];let i=new Map,a=[],c=s===Sn?bo:"*";for(let h of[e,...e.querySelectorAll(c)]){if(n(h))continue;let u=t(h);if(!u||!(r.has(u)||o.has(u)))continue;let f=(i.get(u)||0)+1;i.set(u,f),f===2&&a.push(u)}return a}function Sa({baseRoot:e,remoteRoot:t,liveRoot:n,toLive:r,o,identity:s,baseURI:l}){if(e.tagName!==t.tagName)return{bail:"root-tag"};if(e.getElementsByTagName("template").length||t.getElementsByTagName("template").length)return{bail:"script-or-template"};if(!bd(e,t,o.ignoreAttribute))return{bail:"root-attrs"};let{ignored:i,remoteWins:a}=o,c=yi(o.scripts.merge===!1?null:o.scripts.mergeTags,l),h=_e=>{let w=c(_e);return w!==null?w:s.base(_e)||null},u=_e=>{let w=c(_e);return w!==null?w:s.remote(_e)||null},f=[],d=[],p=new Map,y=new Map,m={same:p,differ:y},g=_e=>({bail:_e,comparisons:m}),k=(_e,w,V=!0)=>{if(p.get(_e)===w)return!0;if(y.get(_e)===w)return!1;if(pd.compared++,V&&_e.isEqualNode(w))return p.set(_e,w),!0;let ne=_e.nodeType===w.nodeType;if(ne&&_e.nodeType===1){if(ne=vi(_e,w),ne){let te=_e.firstChild,Pe=w.firstChild;for(;te&&Pe;te=te.nextSibling,Pe=Pe.nextSibling)if(!k(te,Pe,!1)){ne=!1;break}(te||Pe)&&(ne=!1)}}else ne&&(ne=_e.isEqualNode(w));return(ne?p:y).set(_e,w),ne},S=e,v=t,x=!1,O=()=>{p.set(S,v);for(let _e=0;_e<f.length;_e++)p.set(f[_e],d[_e]);return g("equal")};for(;;){let _e=S.childNodes,w=v.childNodes;if(_e.length!==w.length)break;let V=tt=>k(_e[tt],w[tt])?(p.set(_e[tt],w[tt]),!1):!0,ne=-1,te=-1;for(let tt=0;tt<_e.length;tt++){if(_e[tt].nodeType!==1)continue;let Q=0;for(let ce=_e[tt].firstElementChild;ce;ce=ce.nextElementSibling)Q++;Q>=te&&(te=Q,ne=tt)}let Pe=[],ze=!1;for(let tt=0;tt<_e.length&&Pe.length<2;tt++)tt!==ne&&V(tt)&&Pe.push(tt);if(ne>=0&&Pe.length<2&&(Pe.length===0&&vi(S,v)?(Pe.push(ne),ze=!0):V(ne)&&Pe.push(ne)),Pe.length!==1){if(!x&&Pe.length===0&&vi(S,v))return O();break}let Se=_e[Pe[0]],it=w[Pe[0]];if(x=x||!ze,x&&y.set(Se,it),Se.nodeType!==1||it.nodeType!==1||Se.tagName!==it.tagName)break;if(h(Se)!==u(it)){if(!x&&k(Se,it))return O();break}f.push(S),d.push(v),S=Se,v=it}y.set(S,v);for(let _e=0;_e<f.length;_e++)y.set(f[_e],d[_e]);if(S===e||S.tagName==="HEAD"||S.tagName==="BODY")return g("root-level");if(f.length<2||f[1].tagName!=="BODY")return g("not-in-body");if(i(S)||i(v))return g("ignored-ancestor");if(a(S)||a(v))return g("remote-wins-ancestor");for(let _e of f)if(gd.has(_e.tagName))return g("form-ancestor");if(S.tagName==="SCRIPT"||S.getElementsByTagName("script").length||v.getElementsByTagName("script").length)return g("script-or-template");let C=r(S);if(!C||C.nodeType!==1||C.tagName!==S.tagName)return g("no-live-twin");if(!n.contains(C))return g("live-detached");for(let _e of f){let w=r(_e);if(!w||w.nodeType!==1)return g("ancestor-live")}let _=s.base===Sn&&s.remote===Sn&&i===Ks,M=new Set,j=new Set,I=[],P=null,R=_e=>{_e&&(M.has(_e)?j.add(_e):M.add(_e))},T=(_e,w)=>{let V=c(_e),ne=V!==null?V:s.base(_e)||null;return ne!==(V!==null?V:s.remote(w)||null)?!1:(R(ne),!0)},A=(_e,w)=>{for(let V=_e.firstElementChild,ne=w.firstElementChild;V;V=V.nextElementSibling,ne=ne.nextElementSibling){let te=i(V);if(te!==i(ne))return!1;if(!te&&(!T(V,ne)||!A(V,ne)))return!1}return!0},W=_e=>{let w=_e+1<f.length?f[_e+1]:S;for(let V=f[_e].firstElementChild,ne=d[_e].firstElementChild;V;V=V.nextElementSibling,ne=ne.nextElementSibling){if(V===w){let ze=_e+1<f.length?W(_e+1):null;if(ze)return ze;continue}let te=i(V);if(te!==i(ne))return"outside-id-changed";if(te)continue;let Pe=r(V);if(!Pe||Pe.nodeType!==1)return"sibling-live";if(I.push([V,ne]),!_&&(!T(V,ne)||!A(V,ne)))return"outside-id-changed";_e===0&&V.tagName==="HEAD"&&h(V)&&(P=[V,ne])}return null},F=W(0);if(F)return g(F);let $=new Set(f),Ne=null;if(s.base===Sn){Ne=[];for(let _e of e.querySelectorAll(bo))_e===S||$.has(_e)||(S.contains(_e)?Ne.push(_e):_&&R(h(_e)))}let Ce=new Set,Be=new Set,re=new Set,Ee=wa(f,S,h,i,M,Ce,Ne,Be),Ge=wa(d,v,u,i,M,Ce,s.remote===Sn&&v.querySelectorAll(bo),re);return P&&(j.has(h(P[0]))||Ce.has(h(P[0])))&&(P=null),{scope:{chain:f,root:S,onChain:$,baseIndex:Ee,remoteIndex:Ge,baseDropped:Be,remoteDropped:re,head:P,same:p,differ:y,dropped:[...Aa(e,h,i,j,Be,s.base),...Aa(t,u,i,j,re,s.remote)],held:_e=>{for(let w=1;w<f.length;w++)if(_e.map.get(f[w])!==d[w])return!1;for(let[w,V]of I)if(_e.map.get(w)!==V)return!1;return!0}}}}var Nb=Symbol("hyper-morph-duplicate-key");var kd='[editor-ui],[clay~="editor-ui"],[save-ignore],[snapshot-remove],[no-snapshot],[no-save],[save-remove],[freeze],[save-freeze],[clay~="no-save"],[clay~="no-snapshot"],[clay~="freeze"]',yd='[editor-ui],[clay~="editor-ui"],[no-undo],[clay~="no-undo"]',xd='[no-undo]:not([editor-ui]):not([clay~="editor-ui"]),[clay~="no-undo"]:not([editor-ui]):not([clay~="editor-ui"])';function vd(e){if(e.tagName!=="LINK"&&e.tagName!=="SCRIPT")return!1;let t=e.getAttribute("src")||e.getAttribute("href")||"";return/^(chrome|moz|safari-web)-extension:/.test(t)}function wd(e,t,n,r){if(t==null)return;if(typeof t=="string")return t;let o=t;if(o.nodeType===9){let s=e.getAttribute("id");o=s&&o.getElementById(s)||(e.tagName==="BODY"?o.body:e.tagName==="HTML"?o.documentElement:o.body&&o.body.firstElementChild)}if((!o||o.nodeType!==1||o.tagName!==e.tagName)&&(o=Ad(e,t,r)),!!o)return n?Array.from(o.childNodes):o}function Ad(e,t,n){let r=t.nodeType===9?t.documentElement:t;if(!r||r.nodeType!==1)return null;let o=new Map,s=[r,...r.querySelectorAll("script")];for(let a of s){let c=jr(a,n);c&&!o.has(c.key)&&o.set(c.key,a.textContent)}if(!o.size)return null;let l=e.cloneNode(!0),i=!1;for(let a of[l,...l.querySelectorAll("script")]){let c=jr(a,n);c&&o.has(c.key)&&(a.textContent=o.get(c.key),i=!0)}return i?l:null}function Ta(e,t){if(typeof e=="string"||e.nodeType===9)return e;if(e.nodeType===1&&e===e.ownerDocument.documentElement)return e.ownerDocument;let n=t.implementation.createHTMLDocument(""),r=e.nodeType===1&&e.tagName==="HTML"?e:null;if(r)return n.replaceChild(n.adoptNode(r),n.documentElement),n;let o=e.nodeType===11?Array.from(e.childNodes):e.nodeType?[e]:Array.from(e);for(let s of o)n.body.appendChild(n.adoptNode(s));return n}function ir(e,t,n={}){let r=n||{};if(!r.head?.block)return Ea(e,t,r);try{return Ea(e,t,r)}catch(o){return Promise.reject(o)}}function Ea(e,t,n){let r=n.policy||"sync",o=r==="raw"?void 0:(a,c)=>vd(a)||(r==="history"?!(c&&a.matches(xd))&&a.matches(yd):a.matches(kd)),s=n.callbacks||{},l={ignore:o,hooks:s,protectFocusedValue:n.ignoreActiveValue===!0?"subtree":!1,restoreFocus:n.restoreFocus!==!1,formState:n.formStateSync||"attribute",scripts:{execute:n.scripts?.handle!==!1,merge:n.scripts?.merge!==!1,mergeTags:n.scripts?.mergeTags||[]},head:{awaitLoads:!!n.head?.block,preserve:n.head?.shouldPreserve||(()=>!1)}};if(typeof n.key=="function"&&(l.identity={base:n.key,local:n.key,remote:n.key}),e&&e.nodeType===9)return ko(Object.assign({},l,{live:e,base:n.scripts?.mergeBase||null,remote:Ta(t,e)}));if(e.tagName==="HTML"&&e.parentNode&&e.parentNode.nodeType===9){let a=Object.assign({},l,{live:e.ownerDocument,base:n.scripts?.mergeBase||null,remote:Ta(t,e.ownerDocument)});return ko(a)}n.morphStyle==="innerHTML"&&(l.children=!0);let i=wd(e,n.scripts?.mergeBase,!!l.children,l.scripts.mergeTags);return i!==void 0&&(l.base=i),wi(e,t,l)}var Sd=new Set(["live","base","remote","local","identity","ignore","remoteWins","ignoreAttribute","conflicts","protectFocusedValue","restoreFocus","head","scripts","formState","children","hooks","beforeApply","fastPath","keepLiveOnly"]),Rn=()=>{};function yo(e,t=[]){if(!e||typeof e!="object")throw new TypeError("options object required");for(let l of Object.keys(e))if(!Sd.has(l))throw new TypeError(`unknown option "${l}"`);let n=Object.assign({beforeNodeAdded:Rn,afterNodeAdded:Rn,beforeNodeRemoved:Rn,afterNodeRemoved:Rn,beforeNodeMorphed:Rn,afterNodeMorphed:Rn,beforeAttributeUpdated:Rn},e.hooks||{}),r=e.conflicts||"remote";if(!["remote","local","both"].includes(r))throw new TypeError("conflicts must be remote, local or both");let o=e.formState||"attribute";if(!["attribute","property"].includes(o))throw new TypeError("formState must be attribute or property");let s=e.protectFocusedValue;if(s!==void 0&&typeof s!="boolean"&&s!=="subtree")throw new TypeError('protectFocusedValue must be a boolean or "subtree"');if(e.fastPath!==void 0&&typeof e.fastPath!="boolean")throw new TypeError("fastPath must be a boolean");if(e.keepLiveOnly!==void 0&&typeof e.keepLiveOnly!="boolean")throw new TypeError("keepLiveOnly must be a boolean");return{ignored:Gs(e.ignore,t),remoteWins:Gs(e.remoteWins,t),ignoreAttribute:typeof e.ignoreAttribute=="function"?e.ignoreAttribute:()=>!1,conflicts:r,protectFocusedValue:s===void 0?!0:s,restoreFocus:e.restoreFocus!==!1,head:Object.assign({awaitLoads:!1,preserve:()=>!1},e.head||{}),scripts:Object.assign({execute:!0,merge:!0,mergeTags:[]},e.scripts||{}),formState:o,hooks:n,children:!!e.children,beforeApply:typeof e.beforeApply=="function"?e.beforeApply:null,fastPath:e.fastPath===!0,keepLiveOnly:e.keepLiveOnly===!0}}function Br(e){if(typeof e=="function")return e;if(e&&typeof e=="object"&&e.map){if(typeof e.first=="function")return e.first;if(typeof e.then=="function")return e.then}return Sn}function qr(e,t){if(typeof e=="function")return e;if(e&&typeof e=="object"&&e.map){let n=Ys(t,e.map),r=typeof e.then=="function"?e.then:Sn;if(typeof e.first=="function"){let o=e.first;return s=>o(s)||n.get(s)||r(s)}return o=>n.get(o)||r(o)}return Sn}function Td(e,t,n,r={}){let o=d=>d&&d.nodeType===9?d.documentElement:d,s=o(t),l=o(n),i=o(e)||s,a=Object.assign({},r);delete a.live,delete a.base,delete a.remote;let c=yo(a,[i,s,l].filter(Boolean)),h=r.identity||{},u=nr(),f=es(i,s,l,{identity:{base:qr(h.base,i),local:qr(h.local,s),remote:qr(h.remote,l)},authored:{base:Br(h.base),local:Br(h.local),remote:Br(h.remote)},skipUnchanged:c.hooks.beforeNodeMorphed===Rn&&c.hooks.afterNodeMorphed===Rn,ignored:c.ignored,remoteWins:c.remoteWins,ignoreAttribute:c.ignoreAttribute,conflicts:c.conflicts,mergeTags:c.scripts.merge===!1?null:c.scripts.mergeTags,baseURI:s.ownerDocument&&s.ownerDocument.baseURI||"about:blank",localIsBase:!e||e===t,childrenOnly:c.children,stats:u});return delete f.recoveryLinks,f}function Ai({liveRoot:e,baseRoot:t,localRoot:n,remoteRoot:r,toLive:o,options:s,identity:l,childrenOnly:i,isDocument:a}){let c=yo(s,[e,t,n,r].filter(Boolean));if(c.ignored(e))return{report:Si(),loads:[]};let h=e.ownerDocument,u=c.scripts.execute?Xl(e,c.ignored,h.baseURI):null,f=nr(),d=c.hooks.beforeNodeMorphed===Rn&&c.hooks.afterNodeMorphed===Rn,p={identity:{base:qr(l.base,t||n),local:qr(l.local,n),remote:qr(l.remote,r)},authored:{base:Br(l.base),local:Br(l.local),remote:Br(l.remote)},ignored:c.ignored,remoteWins:c.remoteWins,ignoreAttribute:c.ignoreAttribute,conflicts:c.conflicts,mergeTags:c.scripts.merge===!1?null:c.scripts.mergeTags,baseURI:h.baseURI,localIsBase:!t,childrenOnly:i,skipUnchanged:d},y=c.fastPath&&a&&!i&&d&&t===n,m=null,g=null;if(y){let R=Sa({baseRoot:t,remoteRoot:r,liveRoot:e,toLive:o,o:c,identity:p.identity,baseURI:h.baseURI});p.comparisons=R.comparisons||R.scope,R.bail?g=R.bail:(m=es(t,n,r,Object.assign({},p,{stats:f,scope:R.scope})),m||(g="chain-unpaired",f=nr()))}m||(m=es(t||n,n,r,Object.assign({},p,{stats:f}))),y&&(f.fastPathAttempted=1,f.fastPathTaken=g?0:1,f.fastPathFallback=g),m.recoveryLinks&&["beforeNodeMorphed","beforeNodeAdded","beforeNodeRemoved","beforeAttributeUpdated"].some(R=>c.hooks[R]!==Rn)&&ia(m.conflicts,m.recoveryLinks,o),c.beforeApply&&c.beforeApply(m.doc);let k=globalThis.__hyperMorphProfile,S=k?performance.now():0,v=va(e,m.root,m,{toLive:o,localRoot:n,ignored:c.ignored,ignoreAttribute:c.ignoreAttribute,formState:c.formState,protectFocusedValue:c.protectFocusedValue,restoreFocus:c.restoreFocus,preserve:c.head.preserve,hooks:c.hooks,childrenOnly:i,keepLiveOnly:c.keepLiveOnly});k&&(k.apply=(k.apply||0)+(performance.now()-S));let x=[];if(c.head.awaitLoads)for(let R of v.applied){if(R.kind!=="insert"||R.node.nodeType!==1)continue;let T=R.node;T.tagName==="LINK"&&/\bstylesheet\b/i.test(T.getAttribute("rel")||"")&&T.getAttribute("href")&&T.closest("head")&&x.push(new Promise(W=>{T.addEventListener("load",()=>W()),T.addEventListener("error",()=>W())}))}let O=null,C=null;if(u){let R=Jl(e,u,{ignored:c.ignored,skip:v.mergedScriptsLive,baseURI:h.baseURI,beforeNodeAdded:c.hooks.beforeNodeAdded,afterNodeAdded:c.hooks.afterNodeAdded,trackRecovery:!!m.recoveryLinks});x.push(...R.loads),O=R.swapped,C=R.vetoed}let _=R=>O&&O.get(R)||R,M=R=>{if(v.keptRuns.has(R))return v.runOf.get(R);let T=v.liveOf.get(R)||v.heldBy.get(R)||v.insertedLive.get(R);return T?_(T):null},j=R=>{let T=R&&v.liveOf.get(R);return T?_(T):null},I=R=>{let T=R&&M(R);return Array.isArray(T)?T[0]:T};if(m.recoveryLinks){let R=(T,A,W)=>(A.namespaceURI?T.getAttributeNS(A.namespaceURI,A.localName):T.getAttribute(A.qualifiedName))===W;ca(m.conflicts,m.recoveryLinks,{lookup:M,vetoed:v.vetoed,vetoedAttrs:v.vetoedAttrs,removedVetoes:v.removedVetoes,vetoedLive:C,liveAttr:R,ignored:c.ignored,liveRoot:e})}return{report:{applied:v.applied,decisions:m.decisions.map(R=>Object.assign({},R,{node:R.node?j(R.node):null,el:R.el?j(R.el):null,applied:!!(R.node?j(R.node):R.el&&j(R.el))})),conflicts:m.conflicts.map(R=>Object.assign({},R,{node:R.node?R.kind==="text"&&R.recovery.subject.nodeType===8?I(R.node):j(R.node):R.node,el:R.el?R.kind==="structure"?I(R.el):j(R.el):R.el})),localDiverged:m.localDiverged,identities:v.identities,moved:v.moved,replaced:v.replaced,stats:f},loads:x}}var _a=new WeakMap;function Si(){return{applied:[],decisions:[],conflicts:[],localDiverged:!1,identities:[],moved:[],replaced:[],stats:nr()}}function ko(e){let t=e||{},n=t.live;if(!n||n.nodeType!==9)throw new TypeError("live must be a Document");let r=_a.get(n);r||(r=Ws(n),_a.set(n,r));let o=r("remote",t.remote),s=typeof t.base=="string"&&t.base===""?null:t.base,l=s?r("base",s):null,i=t.local?t.local.root:n.documentElement,a=t.local?t.local.toLive:u=>u;El(n,o);let{report:c,loads:h}=Ai({liveRoot:n.documentElement,baseRoot:l?l.documentElement:null,localRoot:i,remoteRoot:o.documentElement,toLive:a,options:t,identity:t.identity||{},childrenOnly:!1,isDocument:!0});return Promise.all(h).then(()=>c)}function Ed(e,t,n={}){return ko(Object.assign({},n,{live:e,base:null,remote:t}))}function Oa(e,t){if(e==null)return{root:t.createElement("template"),first:null};if(typeof e=="string"){let r=/^\s*(?:<!--[\s\S]*?-->\s*)*(?:<!doctype[^>]*>\s*)?<(html|body)[\s>]/i.exec(e);if(r){let s=Ho(e,t),l=r[1].toLowerCase()==="html"?s.documentElement:s.body;return{root:l,first:l}}let o=t.createElement("template");return o.innerHTML=e,{root:o,first:o.content.firstElementChild}}if(e.nodeType===9)return{root:e.documentElement,first:e.documentElement};if(e.nodeType===1){let r=t.createElement("template"),o=e.isConnected;return r.content.appendChild(o?t.importNode(e,!0):e),{root:r,first:e}}if(e.nodeType===11){let r=t.createElement("template");return r.content.appendChild(e),{root:r,first:r.content.firstElementChild}}let n=t.createElement("template");for(let r of Array.from(e))n.content.appendChild(r.parentNode?t.importNode(r,!0):r);return{root:n,first:n.content.firstElementChild}}function wi(e,t,n={}){if(!e||e.nodeType!==1)throw new TypeError("oldEl must be an Element");let r=e.ownerDocument,{base:o,...s}=n,l=!!s.children;if(yo(s,[e]).ignored(e))return Promise.resolve(Si());let i=Oa(t,r),a=o!=null?Oa(o,r):null,c,h=null;if(l)c=i.root,h=a?a.root:null;else{if(c=i.first,h=a?a.first:null,!c){let d=yo(s);return d.hooks.beforeNodeRemoved(e)!==!1&&(e.remove(),d.hooks.afterNodeRemoved(e)),Promise.resolve({applied:[{kind:"remove",node:e,parent:null}],decisions:[],conflicts:[],localDiverged:!1,identities:[],moved:[],replaced:[e],stats:nr()})}if(c.tagName!==e.tagName){let d=yo(s,[e,c]);if(d.hooks.beforeNodeMorphed(e,c)===!1)return Promise.resolve(Si());let p=Ai({liveRoot:e,baseRoot:h&&h.tagName===e.tagName?h:null,localRoot:e,remoteRoot:c,toLive:m=>m,options:s,identity:s.identity||{},childrenOnly:!0,isDocument:!1}),y=yn(c)?mo(c,r):r.importNode(c,!1);if(!yn(y))for(;e.firstChild;)y.appendChild(e.firstChild);return d.hooks.beforeNodeAdded(y)===!1?(Qo(p.report.conflicts,e,e),Promise.resolve(p.report)):d.hooks.beforeNodeRemoved(e)===!1?(Qo(p.report.conflicts,e,e),Promise.resolve(p.report)):(e.replaceWith(y),Qo(p.report.conflicts,e,y),d.hooks.afterNodeRemoved(e),d.hooks.afterNodeAdded(y),d.hooks.afterNodeMorphed(e,c),p.report.replaced.push(y),p.report.applied.push({kind:"insert",node:y,parent:y.parentNode},{kind:"remove",node:e,parent:y.parentNode}),Promise.all(p.loads).then(()=>p.report))}}let{report:u,loads:f}=Ai({liveRoot:e,baseRoot:h,localRoot:e,remoteRoot:c,toLive:d=>d,options:s,identity:s.identity||{},childrenOnly:l,isDocument:!1});return Promise.all(f).then(()=>u)}var Ti={mergeDocument:ko,morphDocument:Ed,morphElement:wi,merge3:Td,morph:ir};var ts=["textContent","innerText","innerHTML","outerHTML","value","checked","selected","disabled","readOnly","type","tagName","nodeName","nodeType","nodeValue","childElementCount","id","className","classList","baseURI","offsetWidth","offsetHeight","clientWidth","clientHeight","scrollWidth","scrollHeight","dataset","currentSrc","duration","paused","title","documentURI","contentType"],Ei=new Set(ts),Na=new Set(["textContent","innerText","innerHTML","value","checked","selected","disabled","readOnly","type","id","className","title"]),Ur=new Set(["tagName","nodeName","nodeType","nodeValue","childElementCount","classList","baseURI","documentURI","contentType","offsetWidth","offsetHeight","clientWidth","clientHeight","scrollWidth","scrollHeight","currentSrc","duration","paused","dataset"]);var rs={};Vs(rs,{EmptyListInsert:()=>vo,MAX_RULE_DEPTH:()=>zr,MaxRuleDepthExceeded:()=>wr,NoRulesTag:()=>_i,RuleTargetReadOnly:()=>wo,RulesParseError:()=>$r,ShapeMismatch:()=>xo,UnknownRulesVersion:()=>Hr,WriteRefused:()=>ns,WriteRejected:()=>Oi});var $r=class extends Error{constructor(t,n){super(t),this.name="RulesParseError",this.cause=n}},Hr=class extends Error{constructor(t){super(`unknown rules version: ${t}. Library supports "1".`),this.name="UnknownRulesVersion",this.version=t}},zr=20,wr=class extends Error{constructor(t){super(`rule depth exceeded ${zr} at path: ${t.join(".")}`),this.name="MaxRuleDepthExceeded",this.path=t}},xo=class extends Error{constructor(t){super(`shape mismatch: ${t.length} field(s) failed validation`),this.name="ShapeMismatch",this.mismatches=t}},vo=class extends Error{constructor(t){super(`cannot add items to empty list at "${t.join(".")}" \u2014 no sibling to clone as template. Seed the list with a hidden item first.`),this.name="EmptyListInsert",this.path=t}},wo=class extends Error{constructor(t){super(`cannot write to read-only DOM property "${t}"`),this.name="RuleTargetReadOnly",this.target=t}},ns=class extends Error{constructor(t){super(`write refused: ${t.length} write(s) broke the content-only policy`),this.name="WriteRefused",this.refusals=t}},_i=class extends Error{constructor(t){super(`no <script data-rules-name~="${t}"> rules tag in this document`),this.name="NoRulesTag",this.token=t}},Oi=class extends Error{constructor(t,n){super(`write rejected: ${t.length} unknown key(s), ${n.length} rule(s) with no matching element`),this.name="WriteRejected",this.unknownKeys=t,this.unmatched=n}};function lr(e,t,n,r={}){if(Object.prototype.hasOwnProperty.call(r,"exclude")&&e.semanticExclude===!1)throw new Error("This adapter does not support semantic exclude queries; omit exclude or use the DOM adapter.");return Ni(e,t,n,{depth:0,path:[]},r)}function Ni(e,t,n,r,o){if(r.depth>zr)throw new wr(r.path);if(typeof n=="string")return Md(e,t,n,r,o);if(Array.isArray(n)){let[s,l]=n,i=e.find(t,s,o);return Ma(o,r,i),i.map((a,c)=>Ni(e,a,l,{depth:r.depth+1,path:[...r.path,c]},o))}if(typeof n=="object"&&n!==null){let s={};for(let[l,i]of Object.entries(n))s[l]=Ni(e,t,i,{depth:r.depth+1,path:[...r.path,l]},o);return s}return null}function Md(e,t,n,r,o){if(n.endsWith("[]")){let i=n.slice(0,-2),a=e.find(t,i,o);return Ma(o,r,a),a.map(c=>e.text(c))}if(n.startsWith("@"))return Ca(e,t,n.slice(1));let s=rn(n);if(s!==-1){let i=n.slice(0,s),a=n.slice(s+1),c=i?e.find(t,i,o):[t];return c.length===0?null:Ca(e,c[0],a)}if(n===".")return e.text(t);let l=e.find(t,n,o);return l.length===0?null:e.text(l[0])}function Ma(e,t,n){if(typeof e.onRowsRead=="function")try{e.onRowsRead(t.path.slice(),n)}catch(r){console.warn(`[hyper-html-api] onRowsRead threw at "${t.path.join(".")||"(root)"}"`,r)}}function Ca(e,t,n){if(Ei.has(n)){let o=e.prop(t,n);return o==null?null:String(o)}let r=e.attr(t,n);return r||null}var Ra=Object.freeze({data:Object.freeze({tokens:["no-data"],bundles:["editor-ui"]}),save:Object.freeze({tokens:["no-save"],bundles:["editor-ui"]}),snapshot:Object.freeze({tokens:["no-snapshot"],bundles:["editor-ui"]}),watch:Object.freeze({tokens:["no-watch"],bundles:["editor-ui"]}),undo:Object.freeze({tokens:["no-undo"],bundles:["editor-ui"]}),history:Object.freeze({tokens:[],bundles:["editor-ui"]})}),Rd=Object.freeze({"editor-ui":Object.freeze(["no-data","no-save","no-snapshot","no-watch","no-undo"])}),Ia=Object.freeze(["no-save","no-snapshot","no-trigger-autosave","no-dirty","no-watch","no-undo","no-data","freeze","editor-ui"]);function Ci(e,t){if(!e||e.nodeType!==1)return!1;let n=e.getAttribute?.("clay");return!!(n&&n.split(/\s+/).includes(t)||e.hasAttribute?.(t))}function Id(e,t){if(Ci(e,t))return!0;for(let[n,r]of Object.entries(Rd))if(r.includes(t)&&Ci(e,n))return!0;return!1}function Ao(e){let t=Ra[e];if(!t)throw new Error(`Unknown region capability: ${e}`);return[...t.tokens,...t.bundles].flatMap(n=>[`[clay~="${n}"]`,`[${n}]`]).join(", ")}function Ld(e,t){let n=e&&e.nodeType===1?e:e?.parentElement;for(;n&&n.nodeType===1;){let r=Ra[t];if(!r)throw new Error(`Unknown region capability: ${t}`);if(r.tokens.some(o=>Id(n,o))||r.bundles.some(o=>Ci(n,o)))return n;n=n.parentElement}return null}function La(e,t){return!!Ld(e,t)}var jd=/:(?:focus(?:-within|-visible)?|hover|active|visited|defined)\b/i;function ja(e,t){if(!/^(INPUT|TEXTAREA|SELECT|OPTION)$/.test(e.tagName||""))return;let n=(e.getAttribute?.("type")||"").toLowerCase();if("value"in e&&"value"in t&&e.tagName!=="OPTION"&&n!=="checkbox"&&n!=="radio"&&n!=="file"&&(t.value=e.value),e.tagName==="INPUT"&&(n==="checkbox"||n==="radio")&&(t.checked=e.checked),e.tagName==="OPTION"&&(t.selected=e.selected),e.tagName==="SELECT")for(let r=0;r<e.options.length;r++)t.options[r].selected=e.options[r].selected;"indeterminate"in e&&"indeterminate"in t&&(t.indeterminate=e.indeterminate)}function Pa(e,t,n,r){if(r)return!!e.closest?.(t);let o=e;for(;o?.nodeType===1;){if(o.matches(t))return!0;if(o===n)break;o=o.parentElement}return!1}function Da(e,t,n,r,o,s,l,i){if(e.nodeType===1&&((l?La(e,n):Pa(e,r,s,!1))||o&&(l&&e!==s?e.matches(o):Pa(e,o,s,l))))return null;let a=t.importNode(e,!1);i.cloneToLive.set(a,e),i.liveToClone.set(e,a);let c=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,h=a.nodeType===1&&a.tagName==="TEMPLATE"?a.content:a;c!==e&&(i.cloneToLive.set(h,c),i.liveToClone.set(c,h));for(let u of c.childNodes||[]){let f=Da(u,t,n,r,o,s,l,i);f&&(h.appendChild(f),u.nodeType===1&&ja(u,f))}return e.nodeType===1&&ja(e,a),a}function So(e,{capability:t="data",exclude:n=null,inherit:r=!0}={}){if(!e)throw new TypeError("createContentView requires a DOM context");let o=e.nodeType===9?e:e.ownerDocument;if(!o?.implementation?.createHTMLDocument)throw new TypeError("createContentView requires an HTML DOM implementation");let s=o.implementation.createHTMLDocument(""),l=new WeakMap,i=new WeakMap,a=e.nodeType===9?e.documentElement:e;n&&s.documentElement.matches(n);let c=Ao(t),h=Da(a,s,t,c,n,a,r,{cloneToLive:l,liveToClone:i});e.nodeType===9&&h&&(s.replaceChild(h,s.documentElement),i.set(e,s),l.set(s,e));let u=f=>{if(jd.test(f))throw new Error(`Filtered content queries do not support stateful selector: ${f}`)};return{root:h,document:s,capability:t,selector:Ao(t),cloneToLive:l,liveToClone:i,original(f){return l.get(f)||null},cloneOf(f){return i.get(f)||null},query(f,d=h){return u(f),Array.from(d.querySelectorAll(f),p=>l.get(p)||p)},text(f=h){return(f===h?h:i.get(f))?.textContent||""},html(f=h){return(f===h?h:i.get(f))?.innerHTML??""},clone(f=h){let d=f===h?h:i.get(f);return d?s.importNode(d,!0):null}}}function Fa(e){return e&&e.nodeType===1&&e.tagName==="SCRIPT"&&e.hasAttribute&&e.hasAttribute("data-rules-name")}function Pd(e){return e?(e.nodeType===9||e.nodeType===11,e):null}var an={semanticExclude:!0,find(e,t,n={}){let r=Pd(e);if(!r||!r.querySelectorAll)return[];let o=Array.from(r.querySelectorAll(t));n.includeRulesTag||(o=o.filter(i=>!Fa(i)));let s=[];n.skip&&s.push(n.skip);let l=n.templateAttr===null?null:n.templateAttr||"cms-template";if(l&&s.push("["+l+"]"),s.length){let i=s.join(", ");o=o.filter(a=>!a.closest||!a.closest(i))}return o},parent(e){return e?e.parentElement:null},children(e){return e?Array.from(e.children):[]},text(e,t){if(t===void 0)return(e.textContent||"").trim();e.textContent=t},attr(e,t,n){if(n===void 0)return e.hasAttribute&&e.hasAttribute(t)?e.getAttribute(t):null;e.setAttribute(t,n)},removeAttr(e,t){e&&e.removeAttribute&&e.removeAttribute(t)},prop(e,t,n){if(n===void 0){let r=e?e[t]:void 0;return r!==void 0?r:null}e[t]=n},clone(e){return e.cloneNode(!0)},insertAt(e,t,n){let r=e.children[n]||null;e.insertBefore(t,r)},remove(e){e&&e.parentNode&&e.parentNode.removeChild(e)},replaceWith(e,t){if(!e||!e.parentNode)throw new Error("dom.replaceWith: node has no parent");let r=e.ownerDocument.createElement("template");r.innerHTML=t;let o=r.content.firstElementChild;if(!o)throw new Error("dom.replaceWith: html did not parse to an element");return e.parentNode.replaceChild(o,e),o},stripIds(e){let t=0;return e.id&&(e.removeAttribute("id"),t++),(e.querySelectorAll?e.querySelectorAll("[id]"):[]).forEach(r=>{r.removeAttribute("id"),t++}),t},sameNode(e,t){return e===t}};function Xn(e,t={}){if(t.exclude===null)return an;let n=[Ao("data"),t.exclude].filter(Boolean).join(", "),r=e.nodeType===9?e:e.ownerDocument||e,o=e.nodeType===9?e.documentElement:e;if(!t._write&&!o?.matches?.(n)&&!o?.querySelector?.(n)&&!r?.querySelector?.(n))return an;let s=e.nodeType===9||!e.isConnected?e:e.ownerDocument,l=e.nodeType===9?e:e.ownerDocument,i=null,a=()=>i||(i=So(s,{capability:"data",exclude:t.exclude||null})),c=p=>{let y=a();return p===e?y.cloneOf(e):y.cloneOf(p)||p},h=p=>i?.original(p)||p,u=(p,y)=>{a().liveToClone.set(p,y),a().cloneToLive.set(y,p);let m=p.childNodes||[],g=y.childNodes||[];for(let k=0;k<Math.min(m.length,g.length);k++)u(m[k],g[k])},f=(p,y,m,g)=>{let k=Array.from(p.childNodes).filter(C=>i.cloneOf(C)),v=k[0];for(;v&&k.includes(v);)v=v.nextSibling;for(let C of k)C.remove();if(m==="innerHTML"){let C=l.createElement("template");C.innerHTML=g;for(let _ of Array.from(C.content.childNodes))p.insertBefore(_,v||null)}else p.insertBefore(l.createTextNode(g),v||null);let x=So(p,{capability:"data",exclude:t.exclude||null});y.replaceChildren(...Array.from(x.root?.childNodes||[]));let O=C=>{let _=x.original(C);_&&(i.liveToClone.set(_,C),i.cloneToLive.set(C,_));for(let M of Array.from(C.childNodes||[]))O(M)};for(let C of Array.from(y.childNodes))O(C)},d={...an,find(p,y,m={}){let g=c(p);if(!g?.querySelectorAll)return[];let k=a().query(y,g);m.includeRulesTag||(k=k.filter(x=>!Fa(x)));let S=[];m.skip&&S.push(m.skip);let v=m.templateAttr===null?null:m.templateAttr||"cms-template";if(v&&S.push(`[${v}]`),S.length){let x=S.join(", ");k=k.filter(O=>!O.closest?.(x))}return k},parent(p){let y=c(p)?.parentElement;return y?h(y):null},children(p){return Array.from(c(p)?.children||[],h)},text(p,y){if(y===void 0){let k=h(p);return!k?.matches?.(n)&&!k?.querySelector?.(n)?an.text(k):(c(p)?.textContent||"").trim()}let m=h(p);if(!m?.matches?.(n)&&!m?.querySelector?.(n)&&!i){an.text(m,y);return}let g=a().cloneOf(m);g?f(m,g,"textContent",y):an.text(m,y)},attr(p,y,m){let g=h(p);if(m===void 0)return an.attr(g,y);an.attr(g,y,m);let k=i?.cloneOf(g);k&&(an.attr(k,y,m),So(g,{capability:"data",exclude:t.exclude||null}).root===null&&(k.remove(),i.liveToClone.delete(g),i.cloneToLive.delete(k)))},removeAttr(p,y){let m=h(p);an.removeAttr(m,y);let g=i?.cloneOf(m);g&&an.removeAttr(g,y)},prop(p,y,m){let g=h(p);if(m===void 0)return y==="innerHTML"||y==="outerHTML"||y==="textContent"||y==="innerText"?an.prop(c(g),y):an.prop(g,y);let k=y==="innerHTML"||y==="textContent"||y==="innerText",S=k?a().cloneOf(g):i?.cloneOf(g);S&&k?f(g,S,y,m):(an.prop(g,y,m),S&&an.prop(S,y,m))},clone(p){let y=c(p);return y===p?an.clone(p):l.importNode(y,!0)},insertAt(p,y,m){let g=h(p),S=d.children(g)[m]||(()=>{for(let O=g.children.length-1;O>=0;O--){let C=g.children[O];if(a().cloneOf(C))return C.nextElementSibling}return g.firstElementChild})(),v=h(y);g.insertBefore(v,S||null);let x=a().cloneOf(g);if(x){let O=a().cloneOf(v);O||(O=l.importNode(v,!0),u(v,O));let C=Array.from(x.children);x.insertBefore(O,C[m]||null)}},remove(p){let y=h(p),m=a().cloneOf(y);an.remove(y),m&&an.remove(m)},replaceWith(p,y){let m=h(p),g=a().cloneOf(m),k=an.replaceWith(m,y);if(g){let S=So(k,{capability:"data",exclude:t.exclude||null});if(!S.root)g.remove();else{g.replaceWith(S.root);let v=x=>{let O=S.original(x);O&&(i.liveToClone.set(O,x),i.cloneToLive.set(x,O));for(let C of Array.from(x.childNodes||[]))v(C)};v(S.root)}}return k}};return d}var Vr=an;function Mi(e){try{return JSON.parse(e)}catch(t){throw new $r(`Invalid strict JSON: ${t.message}`,t)}}function Wr(e){try{return JSON.parse(e)}catch{}let t={BRACE_OPEN:"{",BRACE_CLOSE:"}",BRACKET_OPEN:"[",BRACKET_CLOSE:"]",COLON:":",COMMA:",",STRING:"STRING",SELECTOR:"SELECTOR",IDENTIFIER:"IDENTIFIER",NUMBER:"NUMBER",BOOLEAN:"BOOLEAN"};function n(o){let s=[],l=0;for(;l<o.length;){let i=o[l];if(/\s/.test(i)){l++;continue}if("{}".includes(i)){s.push({type:i,value:i}),l++;continue}if(i==="["){let u=!1,f=l+1;for(;f<o.length&&/\s/.test(o[f]);)f++;if(f<o.length&&/[a-zA-Z_]/.test(o[f])&&(u=!0),!u){s.push({type:i,value:i}),l++;continue}}if(i==="]"){s.push({type:i,value:i}),l++;continue}if(i===":"){s.push({type:t.COLON,value:i}),l++;continue}if(i===","){s.push({type:t.COMMA,value:i}),l++;continue}if(i==='"'||i==="'"){let u=i,f=l+1;for(;f<o.length&&o[f]!==u;)o[f]==="\\"&&f++,f++;s.push({type:t.STRING,value:o.substring(l+1,f),quoted:!0,sourceQuote:u}),l=f+1;continue}let a=l,c;for(;a<o.length&&!/[{},]/.test(o[a]);)if(o[a]===":"){let u=[":first",":last",":nth-child",":nth-of-type",":first-child",":last-child",":first-of-type",":last-of-type",":only-child",":only-of-type",":hover",":focus",":active",":visited",":disabled",":enabled",":checked",":empty",":root",":target",":not",":before",":after",":nth-last-child",":nth-last-of-type"],f=!1;for(let d of u){let p=d.substring(1);if(o.substring(a+1,a+1+p.length)===p){f=!0,a+=p.length;break}}if(!f)break}else if(o[a]==="["){for(a++;a<o.length&&o[a]!=="]";){if(o[a]==='"'||o[a]==="'"){let u=o[a];for(a++;a<o.length&&o[a]!==u;)o[a]==="\\"&&a++,a++}a++}a<o.length&&o[a]==="]"&&a++}else a++;c=o.substring(l,a);let h=t.IDENTIFIER;/^-?\d+(\.\d+)?$/.test(c)?h=t.NUMBER:c==="true"||c==="false"||c==="null"?h=t.BOOLEAN:/^[.#@\[]|[.#@\[]| /.test(c)&&(h=t.SELECTOR),s.push({type:h,value:c,quoted:!1}),l=a}return s}function r(o){let s="";for(let l=0;l<o.length;l++){let i=o[l];if("{}".includes(i.type)||"[]".includes(i.type)){s+=i.value;continue}if(i.type===t.COLON){s+=i.value;continue}if(i.type===t.COMMA){let a=o[l+1];if(a&&(a.type==="}"||a.type==="]"))continue;s+=i.value;continue}if(i.type===t.STRING&&i.quoted){let a=i.value;i.sourceQuote==="'"&&(a=a.replace(/\\'/g,"'"),a=a.replace(/(\\*)"/g,(c,h)=>h.length%2===0?h+'\\"':c)),s+=`"${a}"`;continue}if(i.type===t.NUMBER||i.type===t.BOOLEAN){s+=i.value;continue}if(i.type===t.SELECTOR||i.type===t.IDENTIFIER){s+=`"${i.value}"`;continue}s+=`"${i.value}"`}return s}try{let o=n(e),s=r(o);return JSON.parse(s)}catch(o){throw new $r("Invalid extraction rules syntax: "+o.message,o)}}var qa="1",Ba=/^[a-zA-Z0-9_-]+$/;function To(e,t,n){let r;if(n===void 0)r="script[data-rules-name]";else{if(typeof n!="string"||!Ba.test(n))throw new Error(`hyper-html-api: invalid rules token ${JSON.stringify(n)} (must match ${Ba})`);r=`script[data-rules-name~="${n}"]`}let o=e.find(t,r,{includeRulesTag:!0});if(o.length===0)return null;n!==void 0&&o.length>1&&console.warn(`hyper-html-api: ${o.length} rules tags match data-rules-name~="${n}"; using the first.`);let s=o[0],l=e.attr(s,"data-rules-version");if(l!==qa)throw new Hr(l);return{rules:Wr(e.text(s)),tagNode:s}}var Fk=new Function("url","return import(url)");function Wa(e,t,n,r){let o=e.length,s=t.length,l=new Array(o).fill(-1);if(r){let m=new Set;for(let g=0;g<o;g++){let k=r[g];!(k>=0&&k<s)||m.has(k)||(l[g]=k,m.add(k))}}if(o===0||s===0)return l;let i=e.map(m=>za(m,n)),a=t.map(m=>za(m,n)),c=new Array(s).fill(!1);for(let m of l)m>=0&&(c[m]=!0);let h=new Map;a.forEach((m,g)=>{c[g]||h.set(m,h.has(m)?-1:g)});let u=new Map;i.forEach((m,g)=>{l[g]>=0||u.set(m,(u.get(m)||0)+1)}),i.forEach((m,g)=>{if(l[g]>=0||u.get(m)!==1)return;let k=h.get(m);k===void 0||k===-1||c[k]||(l[g]=k,c[k]=!0)});let f=[];for(let m=0;m<o;m++)l[m]<0&&f.push(m);let d=[];for(let m=0;m<s;m++)c[m]||d.push(m);if(f.length===0||d.length===0)return l;let p=o*s+1,y=(m,g)=>Fd(e[m],t[g],n)*p+Math.abs(m-g);for(let[m,g]of Bd(f,d,y))l[m]=g;return l}var Ka=e=>typeof e=="object"&&e!==null;function za(e,t){if(!Ka(t))return e==null?" null":String(e);let n=Object.keys(t);return JSON.stringify(n.map(r=>{let o=JSON.stringify(e?.[r]);return o===void 0?" undef":o}))}function Fd(e,t,n){if(!Ka(n))return e===t?0:1;let r=Object.keys(n);if(r.length===0)return 0;let o=0;for(let s of r){let l=JSON.stringify(e?.[s]),i=JSON.stringify(t?.[s]);l!==i&&o++}return o}function Bd(e,t,n){return e.length<=t.length?Va(e,t,n,!1):Va(t,e,(r,o)=>n(o,r),!0)}function Va(e,t,n,r){let o=e.length,s=t.length,l=[];for(let u=0;u<=o;u++)l.push(new Float64Array(s+1).fill(1/0));let i=[];for(let u=0;u<=o;u++)i.push(new Uint8Array(s+1));for(let u=0;u<=s;u++)l[o][u]=0;for(let u=o-1;u>=0;u--)for(let f=s-1;f>=0;f--){let d=n(e[u],t[f])+l[u+1][f+1],p=l[u][f+1];d<=p?(l[u][f]=d,i[u][f]=1):l[u][f]=p}let a=[],c=0,h=0;for(;c<o&&h<s;)i[c][h]&&(a.push(r?[t[h],e[c]]:[e[c],t[h]]),c++),h++;return a}function Ii(e,t,n,r,o,s,l,i={}){let a=e.find(t,n,i);if(o.length===0){a.forEach(x=>e.remove(x)),Ri(i,"onRowsApplied",s.path,[]);return}let c=o.length>a.length,h=a[0]||null;if(c&&!h&&(h=Hd(e,t,n,i),!h))throw new vo(s.path);let u=a.map(x=>$d(e,x,r,i)),f=null;if(c&&h){f=e.clone(h),i.templateAttr&&e.removeAttr(f,i.templateAttr);let x=e.stripIds(f);x>0&&console.warn(`[hyper-html-api] stripped ${x} id attribute(s) from cloned template at "${s.path.join(".")||"(root)"}"`)}let d=Wa(o,u,r,qd(e,a,o,s,i)),p=a[0]||h,y=e.parent(p),m=a.length>0?Ga(e,y,p):0,g=zd(e,a),k=new Set,S=[],v=o.map((x,O)=>{let C=d[O];if(C>=0)return k.add(C),S.push(!1),a[C];S.push(!0);let _=e.clone(f);return e.stripIds(_),_});a.forEach((x,O)=>{k.has(O)||e.remove(x)}),g?v.forEach((x,O)=>{let C=m+O;e.children(y).findIndex(j=>e.sameNode(j,x))!==C&&e.insertAt(y,x,C)}):Vd(e,v,S,y,m),Ud(e,v,r,o,s,l,i),Ri(i,"onRowsApplied",s.path,v)}function Ri(e,t,n,r){if(typeof e[t]=="function")try{return e[t](n.slice(),r)}catch(o){console.warn(`[hyper-html-api] ${t} threw at "${n.join(".")||"(root)"}"`,o);return}}function qd(e,t,n,r,o){let s=Ri(o,"identifyRows",r.path,n);if(!Array.isArray(s))return null;let l=new Array(n.length).fill(-1),i=new Set;for(let a=0;a<n.length;a++)if(s[a]){for(let c=0;c<t.length;c++)if(!(i.has(c)||!e.sameNode(t[c],s[a]))){l[a]=c,i.add(c);break}}return l}function Ud(e,t,n,r,o,s,l){t.forEach((i,a)=>{if(n===null){let c=r[a],h=c==null?"":String(c);e.text(i)!==h&&e.text(i,h)}else{let c=s(e,i,n,r[a],{depth:o.depth+1,path:[...o.path,a]},l);c&&c!==i&&(t[a]=c)}})}function $d(e,t,n,r){return n===null?e.text(t):lr(e,t,n,r.onRowsRead?{...r,onRowsRead:void 0}:r)}function Ga(e,t,n){let r=e.children(t);for(let o=0;o<r.length;o++)if(e.sameNode(r[o],n))return o;return-1}function Hd(e,t,n,r){if(!r.templateAttr)return null;let o=t;for(;o;){let s=e.find(o,n,{includeRulesTag:!1,templateAttr:null});for(let l of s)if(e.attr(l,r.templateAttr)!=null)return l;o=e.parent(o)}return null}function zd(e,t){if(t.length<=1)return!0;let n=e.parent(t[0]);if(!n)return!1;let r=e.children(n),o=[];for(let s of t){let l=r.findIndex(i=>e.sameNode(i,s));if(l===-1)return!1;o.push(l)}return o.sort((s,l)=>s-l),o[o.length-1]-o[0]===o.length-1}function Vd(e,t,n,r,o){let s=null,l=o;for(let i=0;i<t.length;i++){if(!n[i]){s=t[i];continue}let a=s?e.parent(s):r;if(!a)continue;let c=s?Ga(e,a,s)+1:l++;e.insertAt(a,t[i],c),s=t[i]}}var Ya=new Set(["checked","selected","disabled","readOnly","paused"]);function Kr(e,t,n,r,o={}){if(Object.prototype.hasOwnProperty.call(o,"exclude")&&e.semanticExclude===!1)throw new Error("This adapter does not support semantic exclude queries; omit exclude or use the DOM adapter.");let s=[];if(Li(n,r,[],s),s.length)throw new xo(s);os(e,t,n,r,{depth:0,path:[]},o)}function os(e,t,n,r,o,s={}){if(o.depth>zr)throw new wr(o.path);if(r===void 0)return t;if(typeof n=="string")return Wd(e,t,n,r,o,s);if(Array.isArray(n)){let[l,i]=n;return Ii(e,t,l,i,r,o,os,s),t}if(typeof n=="object"&&n!==null){for(let[l,i]of Object.entries(n)){let a=os(e,t,i,r==null?r:r[l],{depth:o.depth+1,path:[...o.path,l]},s);a&&a!==t&&(t=a)}return t}return t}function Wd(e,t,n,r,o,s){if(n.endsWith("[]")){let a=n.slice(0,-2);return Ii(e,t,a,null,r,o,os,s),t}if(n.startsWith("@"))return Ja(e,t,n.slice(1),r);let l=rn(n);if(l!==-1){let a=n.slice(0,l),c=n.slice(l+1),h=a?e.find(t,a,s):[t];return h.length===0||Ja(e,h[0],c,r),t}if(n===".")return Xa(e,t,r),t;let i=e.find(t,n,s);return i.length===0||Xa(e,i[0],r),t}function Xa(e,t,n){let r=n==null?"":String(n);e.text(t)!==r&&e.text(t,r)}function Ja(e,t,n,r){if(Ur.has(n)){let s=e.prop(t,n);if(s===r||s!=null&&r!=null&&String(s)===String(r))return t;throw new wo(n)}if(n==="outerHTML"){let s=r==null?"":String(r);return e.replaceWith(t,s)}if(Na.has(n)){let s=Kd(n,r);return e.prop(t,n)!==s&&e.prop(t,n,s),t}let o=r==null?"":String(r);return e.attr(t,n)!==o&&e.attr(t,n,o),t}function Kd(e,t){return t==null?Ya.has(e)?!1:"":Ya.has(e)?t==="false"?!1:!!t:t}function Li(e,t,n,r){if(t!==void 0){if(typeof e=="string"){if(e.endsWith("[]")){Array.isArray(t)?t.forEach((o,s)=>{typeof o=="object"&&o!==null&&r.push({path:_o([...n,s]),expected:"scalar",got:Eo(o)})}):r.push({path:_o(n),expected:"array",got:Eo(t)});return}t!==null&&typeof t=="object"&&r.push({path:_o(n),expected:"scalar",got:Eo(t)});return}if(Array.isArray(e)){if(!Array.isArray(t)){r.push({path:_o(n),expected:"array",got:Eo(t)});return}let o=e[1];t.forEach((s,l)=>Li(o,s,[...n,l],r));return}if(typeof e=="object"&&e!==null){if(t===null||Array.isArray(t)||typeof t!="object"){r.push({path:_o(n),expected:"object",got:Eo(t)});return}for(let[o,s]of Object.entries(e))Li(s,t[o],[...n,o],r)}}}function Eo(e){return e===null?"null":Array.isArray(e)?"array":typeof e}function _o(e){return e.join(".")}var sh=Object.freeze({refusedRuleForms:["innerHTML","outerHTML"],refusedTargets:["script","style","template","noscript","iframe","object","embed","xmp","plaintext","noembed","noframes","meta","link","base","animate","set","animatemotion","animatetransform"],refusedAttributes:["style","srcdoc","is","http-equiv","sandbox","allow","nonce","integrity","charset","htmlclaytoken","htmlclayid","data-rules-name","data-rules-version","clay","contenteditable",...Ia],refusedAttributePrefixes:["on"],urlAttributes:["href","src","srcset","action","formaction","poster","cite","data","ping","background","longdesc","usemap","xlink:href","manifest","codebase","icon"],refusedSchemes:["javascript","vbscript","data"]});function ji(e,t,n){if(n&&typeof n=="object")return{rules:n,tagNode:null};if(typeof n=="string"){let r=t&&t.ownerDocument?t.ownerDocument:t;return To(e,r,n)}return null}var pn={extract:(e,t,n={})=>lr(Xn(e,n),e,t,n),apply:(e,t,n,r={})=>Kr(Xn(e,{...r,_write:!0}),e,t,n,r),findRulesIn:(e,t)=>To(Vr,e,t),findRules:(e,t)=>ji(Vr,e,t),bind:(e,t,n={})=>{let r=ji(Vr,e,t);if(!r){let o=typeof t=="string"?`data-rules-name~="${t}"`:"the provided rules object";throw new Error(`hyper-html-api: could not resolve rules for ${o}`)}return{...r,get:()=>lr(Xn(e,n),e,r.rules,n),set:o=>Kr(Xn(e,{...n,_write:!0}),e,r.rules,o,n)}},parseStrict:Mi,parseRelaxed:Wr,ruleAttrIndex:rn,splitRule:$o,errors:rs,DOM_PROPERTIES:ts};var Di={};Vs(Di,{fromString:()=>Jn,getRuleAtPath:()=>Ar,getValueAtPath:()=>fh,setAtPath:()=>Pi,toString:()=>ch});function ch(e){return e.map(String).join(".")}function Jn(e){return e===""?[]:e.split(".").map(t=>/^\d+$/.test(t)?Number(t):t)}function Ar(e,t){let n=e;for(let r of t){if(n==null)return;if(typeof n=="string"){if(n.endsWith("[]")&&(typeof r=="number"||r==="*")){n=n.slice(0,-2);continue}return}if(Array.isArray(n)){if(typeof r!="number"&&r!=="*")return;n=n[1];continue}if(typeof n=="object"){if(typeof r=="number"||!(r in n))return;n=n[r];continue}return}return n}function fh(e,t){let n=e;for(let r of t){if(n==null)return;n=n[r]}return n}function Pi(e,t,n){if(t.length===0)return n;let[r,...o]=t;if(typeof r=="number"){let s=Array.isArray(e)?[...e]:[];return s[r]=Pi(s[r],o,n),s}return{...e&&typeof e=="object"?e:{},[r]:Pi((e||{})[r],o,n)}}function Oo(e){if(typeof e=="string")return e.endsWith("[]")?[]:"";if(Array.isArray(e))return[];if(typeof e=="object"&&e!==null){let t={};for(let[n,r]of Object.entries(e))t[n]=Oo(r);return t}return""}function ss(e,t,{ignoreActiveValue:n=!0}={}){Ti.morph(e,t,{morphStyle:"innerHTML",ignoreActiveValue:n,restoreFocus:!0,formStateSync:"property",policy:"raw"})}var Qa=new WeakMap,Fi=e=>e.map(String).join(".");function uh(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}function ec(e,t){if(!e||!e.querySelector)return null;let n=e.querySelector(`[data-hcms-path="${uh(t)}"]`),r=n&&n.querySelector(".hcms-array-items");return r?Array.from(r.children).filter(o=>o.matches&&o.matches("[data-hcms-card], [data-hcms-array-item]")):null}function tc(e,t,n){let r=ec(e,t);!r||r.length!==n.length||r.forEach((o,s)=>{n[s]&&Qa.set(o,n[s])})}function is(){let e=new Map;return{hooks:{onRowsRead(t,n){e.set(Fi(t),n)}},seed(t){for(let[n,r]of e)tc(t,n,r);e.clear()}}}function nc(e){return{identifyRows(t,n){let r=ec(e,Fi(t));return!r||r.length!==n.length?null:r.map(o=>Qa.get(o)||null)},onRowsApplied(t,n){tc(e,Fi(t),n)}}}var rc={skip:"[data-hcms-shell]",templateAttr:"cms-template"},Bi="data-hcms-rollback-ui",dh=0;function oc(e,t,n,r={}){return hh(e,t,n,r)}function hh(e,t,n,r){let{shellRoot:o,structural:s,structuralPath:l,formRoot:i}=r,a=i?{...rc,...nc(i)}:rc;if(!s)try{return pn.apply(e,t,n,a),{ok:!0}}catch(f){return{ok:!1,error:f}}let c=mh(e,t,l),h=c?gh(c):null,u=c?null:kh(e,o);try{return pn.apply(e,t,n,a),{ok:!0}}catch(f){return h?bh(c,h):u&&yh(e,o,u),{ok:!1,error:f}}}function mh(e,t,n){if(!n||!e)return null;let r=Jn(n),o=[],s=t;for(let l of r){if(typeof s=="string"||s==null||Array.isArray(s))break;if(typeof s=="object"&&l in s){if(o.push(l),s=s[l],Array.isArray(s)||typeof s=="string"&&s.endsWith("[]"))break}else return null}return!Array.isArray(s)&&!(typeof s=="string"&&s.endsWith("[]"))?null:ph(e,t,o)}function ph(e,t,n){if(n.length===0)return null;let r=e,o=t;for(let s=0;s<n.length;s++){let l=n[s];if(!o||typeof o!="object"||Array.isArray(o))return null;let i=o[l];if(i==null)return null;if(s===n.length-1){if(Array.isArray(i)){let[a]=i;return r.querySelector?.(a)?.parentElement||null}if(typeof i=="string"&&i.endsWith("[]")){let a=i.slice(0,-2);return r.querySelector?.(a)?.parentElement||null}return null}o=i}return null}function gh(e){let t=[],n=[];for(let r of Array.from(e.childNodes))t.push(qi(r,n));return{nodes:t,retained:n}}function bh(e,t){let n=e.cloneNode(!1);for(let r of t.nodes)n.appendChild(r);ir(e,Array.from(n.childNodes),ic()),sc(e,t.retained)}function kh(e,t){let n=[],r=[];for(let o of Array.from(e.childNodes))o===t||t&&o.contains?.(t)||n.push(qi(o,r));return{nodes:n,retained:r}}function yh(e,t,n){let r=e.cloneNode(!1);for(let o of n.nodes)r.appendChild(o);ir(e,Array.from(r.childNodes),ic()),sc(e,n.retained)}function qi(e,t){let n=e.cloneNode(!1);if(e.nodeType===1&&e.matches('[editor-ui],[clay~="editor-ui"]')){let s=String(++dh);n.setAttribute(Bi,s),t.push({id:s,node:e})}let r=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,o=n.nodeType===1&&n.tagName==="TEMPLATE"?n.content:n;for(let s of Array.from(r.childNodes||[]))o.appendChild(qi(s,t));return n}function sc(e,t){for(let{id:n,node:r}of t){let o=e.querySelector(`[${Bi}="${n}"]`);o===r?r.removeAttribute(Bi):r.isConnected?o?.remove():o?.replaceWith(r)}}function ic(){return{morphStyle:"innerHTML",policy:"raw",restoreFocus:!1,scripts:{handle:!1,merge:!1}}}function as(e){return e.replace(/([a-z])([A-Z])/g,"$1 $2").replace(/([A-Z]+)([A-Z][a-z])/g,"$1 $2").replace(/[-_]/g," ").replace(/\s+/g," ").trim().replace(/^./,t=>t.toUpperCase())}var xh='<div class="hcms-drag-handle mirk-sortable__grip" aria-hidden="true"><div class="mirk-sortable__dots"><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span><span class="mirk-sortable__dot"></span></div></div>',Ui='<svg class="hcms-x" viewBox="0 0 16 16" shape-rendering="crispEdges" aria-hidden="true"><path d="M4 4 L12 12 M12 4 L4 12" fill="none" stroke="currentColor" stroke-width="2" stroke-linecap="square"></path></svg>',cc={"@scalar":`
4
5
  <label class="hcms-field" data-hcms-shape="scalar">
5
6
  <span class="hcms-label" data-hcms-label></span>
6
7
  <textarea class="mirk-textarea" rows="1" data-hcms-field></textarea>
@@ -40,13 +41,13 @@ var hypercms=(()=>{var Qo=Object.defineProperty;var _c=Object.getOwnPropertyDesc
40
41
  </section>
41
42
  `,"@object-array-item":`
42
43
  <article class="hcms-card mirk-sortable__item" draggable="true">
43
- ${_f}
44
+ ${xh}
44
45
  <div class="hcms-card-body mirk-sortable__body">
45
46
  <div class="hcms-card-fields"></div>
46
47
  <div class="hcms-card-controls">
47
48
  <button type="button" class="hcms-move hcms-move-up hcms-sr-only" data-hcms-action="move-up" aria-label="Move up">\u2191</button>
48
49
  <button type="button" class="hcms-move hcms-move-down hcms-sr-only" data-hcms-action="move-down" aria-label="Move down">\u2193</button>
49
- <button type="button" class="hcms-remove hcms-remove--card" data-hcms-action="remove" aria-label="Remove">${qi}</button>
50
+ <button type="button" class="hcms-remove hcms-remove--card" data-hcms-action="remove" aria-label="Remove">${Ui}</button>
50
51
  </div>
51
52
  </div>
52
53
  <div class="hcms-error" hidden></div>
@@ -60,7 +61,7 @@ var hypercms=(()=>{var Qo=Object.defineProperty;var _c=Object.getOwnPropertyDesc
60
61
  <span class="mirk-button__label">Choose</span>
61
62
  </label>
62
63
  <a class="mirk-file__name" data-hcms-field></a>
63
- <button type="button" class="hcms-upload-clear" data-hcms-action="clear-upload" aria-label="Remove file">${qi}</button>
64
+ <button type="button" class="hcms-upload-clear" data-hcms-action="clear-upload" aria-label="Remove file">${Ui}</button>
64
65
  </div>
65
66
  <div class="hcms-error" hidden></div>
66
67
  </div>
@@ -74,7 +75,7 @@ var hypercms=(()=>{var Qo=Object.defineProperty;var _c=Object.getOwnPropertyDesc
74
75
  </label>
75
76
  <figure class="mirk-image__thumb">
76
77
  <span class="mirk-image__frame"><img class="mirk-image__preview" data-hcms-field alt="" /></span>
77
- <button type="button" class="hcms-upload-clear hcms-upload-clear--badge" data-hcms-action="clear-upload" aria-label="Remove image">${qi}</button>
78
+ <button type="button" class="hcms-upload-clear hcms-upload-clear--badge" data-hcms-action="clear-upload" aria-label="Remove image">${Ui}</button>
78
79
  </figure>
79
80
  </div>
80
81
  <div class="hcms-error" hidden></div>
@@ -148,11 +149,11 @@ var hypercms=(()=>{var Qo=Object.defineProperty;var _c=Object.getOwnPropertyDesc
148
149
  <input class="hcms-chip-field" data-hcms-field aria-label="Item" placeholder="\u2026" />
149
150
  <button type="button" class="hcms-remove" data-hcms-action="remove" aria-label="Remove">\xD7</button>
150
151
  </span>
151
- `},Cf=["@scalar","@object","@scalar-array","@scalar-array-item","@object-array","@object-array-item"];function xo(e){let t=e.head||e.documentElement;if(t)for(let n of Cf)ql(e,t,n)}function Bi(e,t){if(!jl[t])return null;let n=e&&(e.head||e.documentElement);return n?ql(e,n,t):null}var Ll={src:"@image",checked:"@checkbox",innerHTML:"@richtext"},ko={image:"@image",file:"@file",checkbox:"@checkbox",toggle:"@toggle",select:"@select",radio:"@radio",textarea:"@textarea",number:"@number",richtext:"@richtext"},Of=new Set([...Object.values(ko),"@chips","@chips-item"]);function $r(e,t,n,r){if(typeof e!="string")return"@scalar";let o=St(e),i=Ao(e,o,n,r),s=So(i,t,"data-hcms-component");if(s&&ko[s]){let l=ko[s],a=Array.isArray(n)&&n.some(h=>h==="*"||typeof h=="number");return l==="@number"&&!Il(e,o,t,a,i).every(Rf)||(l==="@checkbox"||l==="@toggle")&&(o<0||e.slice(o+1)!=="checked")&&!Il(e,o,t,a,i).every(Mf)?"@scalar":l}if(o>=0){let l=e.slice(o+1);if(Ll[l])return Ll[l]}return"@scalar"}function Dl(e,t,n,r){if(typeof e!="string")return null;let o=St(e),i=So(Ao(e,o,n,r),t,"data-hcms-component");return i&&ko[i]||null}var Nf=/^-?\d+(\.\d+)?([eE][+-]?\d+)?$/;function Rf(e){return e==null||e===""?!0:Nf.test(String(e))}function Mf(e){return e==null||e===""||e==="true"||e==="false"}function Il(e,t,n,r,o){if(!n||!n.querySelectorAll)return[];if(!o||o===".")return[];let i=null;try{i=n.querySelectorAll(o)}catch{return[]}let s=t>=0?e.slice(t+1):null,l=[];for(let a of i)if(!(a.closest&&a.closest("[cms-template], [data-hcms-shell]"))&&(s?s==="value"&&"value"in a?l.push(a.value):l.push(a.getAttribute?a.getAttribute(s):null):l.push((a.textContent||"").trim()),!r))break;return l}function vo(e,t){if(typeof e!="string"||!e.endsWith("[]")||!t||!t.querySelector)return null;let n=e.slice(0,-2).trim();if(!n)return null;let r=null;try{r=t.querySelector(n)}catch{return null}let o=r&&r.closest?r.closest("[data-hcms-component]"):null;return(o&&o.getAttribute?o.getAttribute("data-hcms-component"):null)==="chips"?{array:"@chips",item:"@chips-item"}:null}function sr(e,t,n){let r=e.join("."),o=e.map(i=>typeof i=="number"?"*":i).join(".");return r&&fn(n,r)||o&&o!==r&&fn(n,o)||fn(n,t)}function wo(e,t,n){let r=vo(e,n);if(!r)return null;let o=sr(t,r.array,n);return o&&o.getAttribute("data-hcms-tpl")===r.array?r:null}function Pl(e,t,n,r){if(typeof e!="string")return null;let o=St(e),i=So(Ao(e,o,n,r),t,"data-hcms-options");if(i==null)return null;let s=i.trim().split(/\s+/).filter(Boolean);return s.length?s:null}function Fl(e,t,n,r){if(typeof e!="string")return null;let o=St(e);return So(Ao(e,o,n,r),t,"data-hcms-crop")}function Lf(e,t){return t>=0?e.slice(0,t):e}function Ao(e,t,n,r){let o=Lf(e,t);return o&&o!=="."?o:If(r,n)}function If(e,t){if(e==null||!Array.isArray(t))return"";let n=[],r=e;for(let o of t){if(r==null||typeof r=="string")break;if(Array.isArray(r)){if(typeof r[0]!="string"||o!=="*"&&typeof o!="number")return"";n.push(r[0]),r=r[1];continue}if(typeof r!="object"||!Object.prototype.hasOwnProperty.call(r,o))return"";r=r[o]}return n.join(" ")}function So(e,t,n){if(!t||!t.querySelector||!e||e===".")return null;let r=null;try{r=t.querySelector(e)}catch{return null}return r&&r.getAttribute?r.getAttribute(n):null}function To(e,t){if(!e||t==null)return;n(t,[]);function n(r,o){let i=qn(r);if(i==="scalar"){let s=$r(r,e,o,t);Of.has(s)&&Bi(e,s);return}if(i==="scalar-array"){let s=vo(r,e);s&&(Bi(e,s.array),Bi(e,s.item));return}if(i==="object"){for(let[s,l]of Object.entries(r))n(l,[...o,s]);return}if(i==="object-array"){let s=r[1],l=[...o,"*"];if(s&&typeof s=="object"&&!Array.isArray(s))for(let[a,h]of Object.entries(s))n(h,[...l,a]);else n(s,l)}}}function ql(e,t,n){let r=fn(e,n);if(r)return r;let o=e.createElement("template");return o.setAttribute("data-hcms-tpl",n),o.setAttribute("save-remove",""),o.innerHTML=jl[n].trim(),t.appendChild(o),o}function fn(e,t){return!e||!e.querySelector?null:e.querySelector(`template[data-hcms-tpl="${jf(t)}"]`)}function jf(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}function qn(e){return typeof e=="string"?e.endsWith("[]")?"scalar-array":"scalar":Array.isArray(e)?"object-array":typeof e=="object"&&e!==null?"object":"scalar"}function Ur(e){return e?!!(e.content||e).querySelector("[data-hcms-field]"):!1}var Bl={IMG:"src",A:"href"};function Eo(e){if(!e)return"value";let t=(e.tagName||"").toUpperCase();return t==="INPUT"?(e.getAttribute("type")||"text").toLowerCase()==="checkbox"?"checked":"value":t==="TEXTAREA"||t==="SELECT"?"value":Bl[t]?Bl[t]:e.hasAttribute&&e.hasAttribute("contenteditable")?"innerHTML":null}function Hl(e,t){let n=(e.tagName||"").toUpperCase(),r=(e.getAttribute&&e.getAttribute("type")||"").toLowerCase(),o=Eo(e),s=`${Ul(n,r)}[data-hcms-field="${lr(t)}"]`;return n==="INPUT"&&r==="radio"?`${s}:checked@value`:o?`${s}@${o}`:s}function Df(e){let t=(e.tagName||"").toUpperCase(),n=(e.getAttribute&&e.getAttribute("type")||"").toLowerCase(),r=Eo(e),i=`${Ul(t,n)}[data-hcms-field]`;return t==="INPUT"&&n==="radio"?`${i}:checked@value`:r?`${i}@${r}`:i}function Ul(e,t){return e==="INPUT"?t?`input[type="${t}"]`:"input":e==="TEXTAREA"?"textarea":e==="SELECT"?"select":e==="IMG"?"img":e==="A"?"a":':not([data-hcms-shape="scalar"]):not([data-hcms-shape="object"]):not([data-hcms-shape="object-array"]):not([data-hcms-shape="scalar-array"])'}function lr(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}var $l=new Set(["__proto__","constructor","prototype"]);function _o(e,t){return n(e,[]);function n(h,d){let b=qn(h);if(b==="scalar")return r(h,d);if(b==="scalar-array")return o(h,d);if(b==="object-array")return i(h,d);if(b==="object"){let f=Object.create(null);for(let[u,m]of Object.entries(h)){if($l.has(u))throw new Error(`hypercms: rule key "${u}" is forbidden at "${d.join(".")||"<root>"}"`);f[u]=n(m,[...d,u])}return f}return null}function r(h,d){let b=d.length?d[d.length-1]:null,f=typeof b=="string"?b:"__value",u=a(d,f);if(u)return Hl(u,f);let m=l($r(h,t,d,e),f);return m?Hl(m,f):`input[data-hcms-field="${lr(f)}"]@value`}function o(h,d){let b=wo(h,d,t),f=b&&l(b.item,null)||l("@scalar-array-item",null),u=f?Df(f):"input[data-hcms-field]@value";return[s(d,"[data-hcms-array-item]"),u]}function i(h,d){let[,b]=h,f=[...d,"*"],u=s(d,"[data-hcms-card]");if(b&&typeof b=="object"&&!Array.isArray(b)){let m=Object.create(null);for(let[p,v]of Object.entries(b)){if($l.has(p))throw new Error(`hypercms: rule key "${p}" is forbidden at "${f.join(".")}"`);m[p]=n(v,[...f,p])}return[u,m]}return[u,n(b,[...f,0])]}function s(h,d){let b=h.length?h[h.length-1]:"",f=h.some(p=>p==="*"),u=h.join(".");return`${f?`[data-hcms-field="${lr(b)}"]`:`[data-hcms-path="${lr(u)}"]`} > .hcms-array-items > ${d}`}function l(h,d){if(!t)return null;let b=fn(t,h);if(!b)return null;let f=b.content||b;if(d){let u=f.querySelector(`[data-hcms-field="${lr(d)}"]`);if(u)return u}return f.querySelector("[data-hcms-field]")}function a(h,d){if(!t)return null;let b=h.map(m=>typeof m=="number"?"*":m).join("."),u=[h.join("."),b];for(let m=h.length-1;m>=0;m--){let p=h.slice(0,m).map(v=>typeof v=="number"?"*":v);p.push("*"),u.push(p.join("."))}for(let m of u){if(!m)continue;let p=fn(t,m);if(!p||!Ur(p))continue;let v=p.content||p,A=v.querySelector(`[data-hcms-field="${lr(d)}"]`)||v.querySelector("[data-hcms-field]");if(A)return A}return null}}function Hi(e){if(!e)return"";let t=String(e).split(/[?#]/)[0],n=t.split("/").pop()||t;try{return decodeURIComponent(n)}catch{return n}}function ar({pageRules:e,formRules:t,data:n,doc:r}){let o=r.createDocumentFragment(),i=$i(e,[],n,r,e);return i&&o.appendChild(i),o}function Vl({shape:e,itemShape:t,pathArr:n,data:r,doc:o,itemKey:i,pageRules:s}){if(e==="object-array-item")return Kl(t,n,r,o,s);if(e==="scalar-array-item")return Gl(n,r,o,i||null);throw new Error(`hypercms: buildItem called with unknown shape "${e}"`)}function $i(e,t,n,r,o){let i=qn(e);return i==="scalar"?Pf(e,t,n,r,o):i==="object"?Hf(e,t,n,r,o):i==="object-array"?$f(e,t,n,r,o):i==="scalar-array"?Uf(e,t,n,r):null}function Pf(e,t,n,r,o){let i=$r(e,r,t,o),s=sr(t,i,r);if(!s)throw new Error(`hypercms: missing template for scalar at "${t.join(".")}"`);let l=Dl(e,r,t,o);l==="@number"&&i==="@scalar"&&console.info(`[hypercms] field "${t.join(".")}" declares component "@number" but its value isn't a plain number; rendering a text input so the value is preserved`),(l==="@checkbox"||l==="@toggle")&&i==="@scalar"&&console.info(`[hypercms] field "${t.join(".")}" declares component "${l}" but its value isn't true/false; rendering a text input so the value is preserved`),Wl(s,l===i?l:null,t);let a=cr(s,r);ur(a,t);let h=s.getAttribute?.("data-hcms-tpl");if((i==="@select"||i==="@radio")&&h===i&&Ff(a,e,t,n,r,i,o),i==="@image"&&h==="@image"){let d=Fl(e,r,t,o);d!=null&&!a.hasAttribute("data-hcms-crop")&&a.setAttribute("data-hcms-crop",d)}return zf(a,xn(t)),Co(a,xn(t)),Oo(a,xn(t)),Ql(a,n),i==="@file"&&Bf(a),a}function Wl(e,t,n){if(!t)return;let r=e.getAttribute?.("data-hcms-tpl");r&&r!==t&&console.info(`[hypercms] field "${n.join(".")}" declares component "${t}" but custom template "${r}" wins`)}function Ff(e,t,n,r,o,i,s){let l=Pl(t,o,n,s),a=l?[...l]:[],h=r==null?"":String(r);if(h!==""&&!a.includes(h)&&a.unshift(h),!l&&(qf(e,"data-hcms-options required (space-separated values)"),a.length===0)){e.querySelector(".mirk-radio")?.remove();return}if(i==="@select"){let f=e.querySelector("select[data-hcms-field]");if(!f)return;for(let u of a){let m=o.createElement("option");m.value=u,m.textContent=yo(u),f.appendChild(m)}return}let d=e.querySelector(".mirk-radio");if(!d||!d.parentNode)return;let b=Ui(n.join("."));for(let f of a){let u=d.cloneNode(!0),m=u.querySelector('input[type="radio"]');m&&(m.value=f,m.name=b);let p=u.querySelector(".mirk-radio__label");p&&(p.textContent=yo(f)),d.parentNode.insertBefore(u,d)}d.remove()}function Ui(e){return"hcms-"+String(e).replace(/[^A-Za-z0-9_-]/g,"-")}function qf(e,t){let n=e.querySelector?e.querySelector(".hcms-error"):null;n&&(n.textContent=t,n.hidden=!1)}function Bf(e){let t=e.querySelector?e.querySelector("a.mirk-file__name[data-hcms-field]"):null;t&&(t.textContent=Hi(t.getAttribute("href")))}function Hf(e,t,n,r,o){let i=sr(t,"@object",r);if(!i)throw new Error(`hypercms: missing template for object at "${t.join(".")}"`);let s=cr(i,r);if(ur(s,t),Co(s,xn(t)),Oo(s,xn(t)),Ur(i))return ta(s,e,t),ea(s,e,n),s;let l=No(s,".hcms-object-fields",i,t);for(let[a,h]of Object.entries(e)){let d=n==null?null:n[a],b=$i(h,[...t,a],d,r,o);b&&l.appendChild(b)}return s}function $f(e,t,n,r,o){let i=sr(t,"@object-array",r);if(!i)throw new Error(`hypercms: missing template for object-array at "${t.join(".")}"`);let s=cr(i,r);ur(s,t),Co(s,xn(t)),Oo(s,xn(t)),Xl(s,i),Zl(s,i,t);let l=No(s,".hcms-array-items",i,t),[,a]=e;return(Array.isArray(n)?n:[]).forEach((d,b)=>{let f=Kl(a,[...t,b],d,r,o);f&&l.appendChild(f)}),Jl(s),s}function Kl(e,t,n,r,o){let i=Yl(t,"object-array-item",r);if(!i)throw new Error(`hypercms: missing item template for "${t.join(".")}"`);let s=cr(i,r);if(s.setAttribute("data-hcms-card",""),s.classList.contains("hcms-card")||s.classList.add("hcms-card"),ur(s,t),Ur(i))return e&&typeof e=="object"&&!Array.isArray(e)&&(ta(s,e,t),ea(s,e,n)),s;let l=No(s,".hcms-card-fields",i,t);if(e&&typeof e=="object"&&!Array.isArray(e))for(let[a,h]of Object.entries(e)){let d=n==null?null:n[a],b=$i(h,[...t,a],d,r,o);b&&l.appendChild(b)}return s}function Uf(e,t,n,r){let o=vo(e,r),i=wo(e,t,r),s=o?o.array:"@scalar-array",l=sr(t,s,r);if(!l)throw new Error(`hypercms: missing template for scalar-array at "${t.join(".")}"`);Wl(l,o?o.array:null,t);let a=cr(l,r);ur(a,t),Co(a,xn(t)),Oo(a,xn(t)),Xl(a,l),Zl(a,l,t),i&&a.setAttribute("data-hcms-item-tpl",i.item);let h=No(a,".hcms-array-items",l,t);return(Array.isArray(n)?n:[]).forEach((b,f)=>{let u=Gl([...t,f],b,r,i?i.item:null);u&&h.appendChild(u)}),Jl(a),a}function Gl(e,t,n,r){let o=Yl(e,"scalar-array-item",n,r);if(!o)throw new Error(`hypercms: missing item template for "${e.join(".")}"`);let i=cr(o,n);return i.setAttribute("data-hcms-array-item",""),i.classList.contains("hcms-array-item")||i.classList.add("hcms-array-item"),ur(i,e),Ql(i,t),i}function Yl(e,t,n,r){let o=e.map(i=>typeof i=="number"?"*":i).join(".");return fn(n,o)||r&&fn(n,r)||fn(n,"@"+t)}function cr(e,t){let n=e.content||e,r=t.createElement("div");return r.appendChild(n.cloneNode(!0)),r.firstElementChild||r}function ur(e,t){e.setAttribute("data-hcms-path",t.join("."))}function zf(e,t){let n=t==null?"":String(t);if(e.matches&&e.matches("[data-hcms-field]")){e.getAttribute("data-hcms-field")||e.setAttribute("data-hcms-field",n);return}(e.querySelectorAll?e.querySelectorAll("[data-hcms-field]"):[]).forEach(o=>{o.getAttribute("data-hcms-field")||o.setAttribute("data-hcms-field",n)})}function Co(e,t){t==null||t===""||!e.setAttribute||e.hasAttribute?.("data-hcms-field")||e.setAttribute("data-hcms-field",String(t))}function Oo(e,t){if(t==null||t==="")return;(e.querySelectorAll?e.querySelectorAll("[data-hcms-label]"):[]).forEach(r=>{(r.textContent||"").trim()===""&&(r.textContent=yo(String(t)))})}function Xl(e,t){["data-hcms-no-add","data-hcms-no-remove","data-hcms-no-reorder"].forEach(n=>{t.hasAttribute(n)&&e.setAttribute(n,"")}),["data-hcms-min-items","data-hcms-max-items"].forEach(n=>{t.hasAttribute(n)&&e.setAttribute(n,t.getAttribute(n))})}function Jl(e){let t=e.querySelector?e.querySelector(".hcms-array-items"):null;if(!t)return;let n=Array.from(t.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")),r=n.length,o=zl(e,"data-hcms-max-items"),i=zl(e,"data-hcms-min-items"),s=e.hasAttribute("data-hcms-no-add"),l=e.hasAttribute("data-hcms-no-remove"),a=e.hasAttribute("data-hcms-no-reorder"),h=e.querySelector('[data-hcms-action="add"]');h&&(h.hidden=s||o!=null&&r>=o),n.forEach((d,b)=>{let f=d.querySelector('[data-hcms-action="remove"]');f&&(f.hidden=l||i!=null&&r<=i);let u=d.querySelector('[data-hcms-action="move-up"]');u&&(u.hidden=a||b===0);let m=d.querySelector('[data-hcms-action="move-down"]');m&&(m.hidden=a||b===r-1)})}function zl(e,t){if(!e||!e.hasAttribute(t))return null;let n=parseInt(e.getAttribute(t),10);return Number.isFinite(n)?n:null}function Zl(e,t,n){if(e.hasAttribute("data-hcms-no-reorder")||t.hasAttribute("data-hcms-no-reorder"))return;let r=e.querySelector(".hcms-array-items");if(!r)return;let o="hcms-"+n.join(".");r.setAttribute("sortable",o),r.setAttribute("onsorted","hypercmsCommit && hypercmsCommit()")}function xn(e){return e.length?e[e.length-1]:null}function Ql(e,t){let n=Vf(e);if(n.length!==0)for(let r of n)na(r,t)}function Vf(e){if(!e)return[];let t=[];return e.matches?.("[data-hcms-field]")&&Wf(e)&&t.push(e),(e.querySelectorAll?e.querySelectorAll("input[data-hcms-field], textarea[data-hcms-field], select[data-hcms-field], img[data-hcms-field], a[data-hcms-field], [contenteditable][data-hcms-field]"):[]).forEach(r=>t.push(r)),t}function Wf(e){let t=(e.tagName||"").toUpperCase();return!!(t==="INPUT"||t==="TEXTAREA"||t==="SELECT"||t==="IMG"||t==="A"||e.hasAttribute?.("contenteditable"))}function ea(e,t,n){(e.querySelectorAll?e.querySelectorAll("[data-hcms-field]"):[]).forEach(o=>{let i=o.getAttribute("data-hcms-field");if(!i)return;if(!t||typeof t!="object"||!(i in t)){console.warn(`[hypercms] inline template field "${i}" is not in the rule shape; ignoring`);return}let s=n==null?null:n[i];na(o,s)})}function ta(e,t,n){if(!e.querySelectorAll)return;e.querySelectorAll("[data-hcms-field]").forEach(o=>{let i=o.getAttribute("data-hcms-field");if(!i||t&&typeof t=="object"&&!(i in t))return;let s=[...n,i].join(".");o.setAttribute("data-hcms-path",s)})}function No(e,t,n,r){if(!e.querySelector)return e;let o=e.querySelector(t);if(o)return o;let i=n?.getAttribute?.("data-hcms-tpl")||r.join(".");throw new Error(`hypercms: template "${i}" is in slotted mode but has no ${t} element`)}function na(e,t){let n=Eo(e),r=(e.tagName||"").toUpperCase(),o=(e.getAttribute("type")||"").toLowerCase();if(r==="INPUT"&&o==="radio"){e.checked=e.value!=null&&String(e.value)===String(t??"");return}if(n==="checked"){e.checked=t===!0||t==="true";return}if(n){e[n]=t==null?"":String(t);return}e.textContent=t==null?"":String(t)}var Kf={Mutation:(e,t)=>e?.Mutation??t?.Mutation,undo:(e,t)=>e?.undo??t?.undo,onPrepareForSave:(e,t)=>e?.addDocumentTransform??t?.onPrepareForSave,onSnapshot:(e,t)=>e?.onSnapshot??t?.onSnapshot,consent:(e,t)=>e?.confirm??t?.consent,RichClay:(e,t)=>e?.RichClay??t?.RichClay,quickcrop:(e,t)=>e?.quickcrop??t?.quickcrop,upload:(e,t)=>e?.upload??(t?.uploadFileBasic?Yf(t.uploadFileBasic):null)},Gf={402:"payment-required",413:"too-large",415:"unsupported-type",401:"unauthorized",403:"forbidden",404:"not-found"},zi=()=>({ok:!1,msg:"Upload cancelled",msgType:"skipped",code:"aborted",uploads:[]});function Yf(e){return async function(n,{onProgress:r,signal:o}={}){if(o?.aborted)return zi();try{let i=await e(n,{onProgress:l=>{r?.({loaded:null,total:null,percent:l})}});if(o?.aborted)return zi();let s=i&&i.uploads||[];return typeof s[0]?.url!="string"?{ok:!1,msg:"The host accepted the file but did not say where it put it",msgType:"error",code:"bad-response",uploads:[]}:{ok:!0,msg:i.msg||"Uploaded",msgType:i.msgType||"success",code:i.code||null,uploads:s}}catch(i){if(o?.aborted)return zi();let s={};try{s=JSON.parse(i?.response||"{}")}catch{s={}}let l=s.code||Gf[i?.status]||"error";return{ok:!1,msg:i&&i.message||"Upload failed",msgType:"error",code:l,uploads:[]}}}}function It(e,t){let n=Kf[e];if(!n)throw new Error(`hypercms: unknown platform capability "${e}"`);let r=t||(typeof window<"u"?window:null);return r&&n(r.clay,r.hyperclay)||null}var ra=["clay:mutation-ready","hyperclay:mutation-ready"],oa=["clay:sync-applied","hyperclay:livesync-applied"],ia=["clay:ready","hyperclay:ready"];function fr(e,t,n){let r=null,o=i=>{r!==null&&r!==i.type||(r=i.type,queueMicrotask(()=>{r=null}),n(i))};for(let i of t)e.addEventListener(i,o);return()=>{for(let i of t)e.removeEventListener(i,o)}}var dn="data-hcms-bound",_n="data-hcms-bound-id",Vi=new Map;function sa(e,t){Vi.set(e,t)}function la(e){Vi.delete(e)}function aa(e){let t=e.getAttribute(_n);if(!t)return null;let n=Vi.get(t);return!n||!n.restorable()?null:n.originalHTML}var Bn="data-hcms-owns-richclay";function dr(e){return e&&e.richclay&&e.richclay.RichClay||It("RichClay",e)||(e&&typeof e.RichClay=="function"?e.RichClay:null)}function ca(e,t,n){!e||typeof e.setAttribute!="function"||(e.setAttribute(dn,t?"rich":"plain"),n&&e.setAttribute(Bn,"true"))}function ua(e,t){if(!e||typeof e.querySelectorAll!="function")return;let n=e.querySelectorAll(`[${dn}]`);if(!n.length)return;let r=dr(t);if(r&&typeof r.stripFromClone=="function")try{r.stripFromClone(e)}catch(o){console.warn("[hypercms] richclay strip failed; editor state may reach the save",o)}for(let o of n)o.getAttribute(Bn)==="true"&&o.removeAttribute("data-richclay"),o.removeAttribute(Bn),o.removeAttribute(dn)}function fa(e,t){if(!e||typeof e.removeAttribute!="function")return;let n=dr(t);if(n&&typeof n.stripElement=="function")try{n.stripElement(e)}catch(r){console.warn("[hypercms] richclay element strip failed; the clone stays editable",r)}else e.removeAttribute("contenteditable"),e.removeAttribute("no-undo");e.getAttribute(Bn)==="true"&&e.removeAttribute("data-richclay"),e.removeAttribute(Bn),e.removeAttribute(dn),e.removeAttribute(_n)}function da(e,t){if(!t||e==null)return e;return n(e);function n(r){if(typeof r=="string"){if(r.endsWith("[]")||St(r)!==-1)return r;let o=null;try{o=t.querySelector(r)}catch{return r}return o&&o.children.length>0?r+"@innerHTML":r}if(Array.isArray(r))return r;if(r&&typeof r=="object"){let o=Object.create(null);for(let[i,s]of Object.entries(r))o[i]=n(s);return o}return r}}function ha(e,t){if(!t||e==null)return e;return n(e,[t]);function n(r,o){if(typeof r=="string")return r.endsWith("[]")||St(r)!==-1?r:o.some(i=>Xf(i,r))?r+"@innerHTML":r;if(Array.isArray(r)){let[i,s]=r;if(typeof i!="string"||!i)return r;let l=Jf(t,i);return l.length?[i,n(s,l)]:r}if(r&&typeof r=="object"){let i=Object.create(null);for(let[s,l]of Object.entries(r))i[s]=n(l,o);return i}return r}}function Xf(e,t){let n=null;try{n=e.querySelector(t)}catch{return!1}return n?n.hasAttribute(dn)?n.getAttribute(dn)==="rich":n.children.length>0:!1}function Jf(e,t){try{return[...e.querySelectorAll(t)]}catch{return[]}}function hr(e){if(!e||e.tagName!=="TEXTAREA")return;let t=e.ownerDocument.defaultView||(typeof window<"u"?window:null);t&&t.CSS&&t.CSS.supports&&t.CSS.supports("field-sizing: content")||(e.style.height="auto",e.style.height=e.scrollHeight+"px")}function Cn(e,t,n=!0){if(!e||!e.querySelectorAll||(e.querySelectorAll("textarea[data-hcms-field]").forEach(hr),n===!1))return;let r=t&&t.defaultView||(typeof window<"u"?window:null),o=dr(r);o&&e.querySelectorAll("[contenteditable][data-hcms-field]").forEach(i=>{if(i.__hcmsRichclay)return;let s;try{s=new o(i,{inline:!0,hyperclay:!1,toolbar:["bold","italic","link","undo","redo"]})}catch(a){console.warn("[hypercms] richclay activation failed; field stays plain contenteditable",a);return}i.__hcmsRichclay=s;let l=s&&s.squire;l&&typeof l.addEventListener=="function"&&l.addEventListener("input",()=>{let a=r&&r.Event||Event;i.dispatchEvent(new a("input",{bubbles:!0}))})})}var Wi=new WeakSet;function Hn(e,t){let n=It("undo");if(!n)return t();n.pause();try{let r=t();return r&&r.ok?n.commitCaptured(e):n.discardCaptured(),r}finally{n.resume()}}function vn(e){let t=It("undo");if(!t)return e();t.pause();try{return e()}finally{t.discardCaptured(),t.resume()}}function Lo(e){let{formRoot:t}=e;if(!t||Wi.has(t))return;Wi.add(t);let n=s=>{let l=s.target;!l||!l.closest||l.closest("[data-hcms-form-root]")&&l.matches("input, textarea, select, [contenteditable][data-hcms-field]")&&(l.tagName==="TEXTAREA"&&hr(l),!l.matches('input[type="file"]')&&(!l.closest("[data-hcms-field]")&&!l.hasAttribute?.("data-hcms-field")||ma(l,e)))},r=s=>{let l=s.target;if(!(!l||!l.closest)&&l.closest("[data-hcms-form-root]")){if(l.matches('input[type="file"][data-hcms-upload]')){id(l,e);return}l.matches('input[type="checkbox"], input[type="radio"], select')&&ma(l,e)}},o=s=>{let l=s.target;if(!l||!l.closest)return;let a=l.closest("[data-hcms-action]");if(!a)return;let h=a.getAttribute("data-hcms-action");if(h==="add"||h==="remove"||h==="move-up"||h==="move-down"||h==="clear-upload"){if(!a.closest("[data-hcms-form-root]"))return}else if(h==="close"&&!a.closest("[data-hcms-shell]"))return;if(h==="add"){let d=a.closest("[data-hcms-path]");if(!d)return;let b=d.getAttribute("data-hcms-path");zr(b,e)}else if(h==="remove"){let d=a.closest("[data-hcms-card], [data-hcms-array-item]");if(!d)return;Yi(d,e)}else if(h==="move-up"||h==="move-down"){let d=a.closest("[data-hcms-card], [data-hcms-array-item]");if(!d)return;Gi(d,h==="move-up"?-1:1,e)}else h==="clear-upload"?cd(a,e):h==="close"&&e.onCloseRequested?.()},i=t.ownerDocument;i.addEventListener("input",n,!0),i.addEventListener("change",r,!0),i.addEventListener("click",o,!0),e.detachEvents=()=>{i.removeEventListener("input",n,!0),i.removeEventListener("change",r,!0),i.removeEventListener("click",o,!0),Wi.delete(t)}}var Zf=new Set(["value","checked"]);function Qf(e,t){if(!t)return null;let n=yn(t);if(n.some(a=>typeof a=="number"||a==="*"))return null;let r=Fn(e.pageRules,n);if(typeof r!="string")return null;let o=Vt.ruleAttrIndex(r);if(o===-1)return null;let i=r.slice(o+1);if(!Zf.has(i))return null;let s=r.slice(0,o),l=s?e.pageRoot.querySelector(s):e.pageRoot;return l?{el:l,prop:i,oldValue:l[i]}:null}function ma(e,t){let r=(e.closest("[data-hcms-field]")||e).closest("[data-hcms-path]")?.getAttribute("data-hcms-path")||"",o=Qf(t,r);if(tn(Gt(t),{path:r,structural:!1},t),o){let i=It("undo");i&&typeof i.recordValue=="function"&&i.recordValue(o.el,{prop:o.prop,oldValue:o.oldValue,newValue:o.el[o.prop]})}}var ed={type:"image/webp",quality:.85,maxWidth:2048,maxHeight:2048};async function td(e,t){let n=t&&t.getAttribute?t.getAttribute("data-hcms-crop"):null;if(n==null)return{file:e};let r=It("quickcrop");if(typeof r!="function")return{file:e};try{let o=typeof window<"u"&&(window.clay?.modal??window.themodal)||"auto",i=await r(e,{aspect:nd(n),modal:o,...ed});return i===null?null:{file:rd(i.blob,e.name),dataURL:i.dataURL}}catch(o){return pr(t,o&&o.message||"Crop failed"),null}}function nd(e){let t=String(e??"").trim().toLowerCase();if(t===""||t==="free")return null;let n=t.match(/^(\d+(?:\.\d+)?)\s*[:/]\s*(\d+(?:\.\d+)?)$/);if(!n)return null;let r=parseFloat(n[1]),o=parseFloat(n[2]);return!r||!o?null:r/o}function rd(e,t){let n=e.type==="image/webp"?".webp":e.type==="image/jpeg"?".jpg":".png",r=String(t||"image").replace(/\.[^.]+$/,"");try{return new File([e],r+n,{type:e.type})}catch{return e}}var od=new Set(["unsupported","payment-required"]);async function id(e,t){let n=e.files&&e.files[0];if(!n)return;let r=e.closest("[data-hcms-path]");if(!r)return;let o=r.getAttribute("data-hcms-path")||"";pr(r,null);let i=await td(n,r);if(!i||t.closed){On(e);return}let s=i.file,l=i.dataURL||null,a=It("upload");if(typeof a!="function")return Ki(e,r,t,o,await pa(s,l,r),s);ya(r,l),ga(r,0);let h=ld(t),d;try{d=await a(s,{signal:h?.signal,onProgress:({percent:f})=>ga(r,f)})}finally{ad(t,h),fd(r)}if(t.closed){On(e);return}if(d.code==="aborted"){On(e);return}if(d.ok)return Ki(e,r,t,o,d.uploads[0].url,s);if(!od.has(d.code)){pr(r,d.msg||"Upload failed"),t.dispatch?.("hcms:error",{error:new Error(d.msg||"Upload failed"),code:d.code,path:o}),On(e);return}let b=d.code==="payment-required"?"This file is stored in the page. Add a paid plan to upload files.":null;return Ki(e,r,t,o,await pa(s,l,r),s,b)}function Ki(e,t,n,r,o,i,s=null){if(n.closed){On(e);return}if(ya(t,null),pr(t,null),!o){On(e);return}ka(t,o,i.name),tn(Gt(n),{path:r,structural:!1},n),s&&pr(t,s,"info"),On(e)}async function pa(e,t,n){return t||await sd(e,n)}function sd(e,t){let n=t?.ownerDocument?.defaultView?.FileReader||globalThis.FileReader;return n?new Promise(r=>{let o=new n;o.onload=()=>r(typeof o.result=="string"?o.result:""),o.onerror=()=>r("");try{o.readAsDataURL(e)}catch{r("")}}):Promise.resolve("")}function ld(e){if(typeof AbortController!="function")return null;let t=new AbortController;return(e.uploads||(e.uploads=new Set)).add(t),t}function ad(e,t){t&&e.uploads?.delete(t)}function cd(e,t){let n=e.closest("[data-hcms-path]");if(!n)return;let r=n.getAttribute("data-hcms-path")||"";ka(n,"","");let o=n.querySelector('input[type="file"][data-hcms-upload]');o&&On(o),pr(n,null),tn(Gt(t),{path:r,structural:!1},t)}function ud(e){return e.querySelector?e.querySelector("img[data-hcms-field], a[data-hcms-field]"):null}function ka(e,t,n){let r=ud(e);if(!r)return;let o=(r.tagName||"").toUpperCase();o==="IMG"?r.src=t||"":o==="A"&&(r.href=t||"",r.textContent=t?n||Hi(t):"")}function On(e){try{e.value=""}catch{}}function ya(e,t){let n=e.querySelector?e.querySelector(".mirk-image__frame"):null;n&&(t?n.style.backgroundImage=`url("${t.replace(/"/g,"%22")}")`:n.style.removeProperty("background-image"))}function ga(e,t){let n=Math.max(0,Math.min(100,Number(t)||0));e.setAttribute("data-hcms-uploading",""),e.style?.setProperty?.("--hcms-upload-progress",`${n}%`)}function fd(e){e.removeAttribute("data-hcms-uploading"),e.style?.removeProperty?.("--hcms-upload-progress")}function pr(e,t,n="error"){let r=e.querySelector?e.querySelector(":scope > .hcms-error"):null;r&&(r.classList.toggle("hcms-error--info",!!t&&n==="info"),t?(r.textContent=t,r.hidden=!1):(r.textContent="",r.hidden=!0))}function zr(e,t){let{formRoot:n,pageRules:r}=t,o=n.querySelector(`[data-hcms-path="${gr(e)}"]`);if(!o)throw new Error(`hypercms: no element at path "${e}"`);let i=o.querySelector(".hcms-array-items");if(!i)throw new Error(`hypercms: array container missing .hcms-array-items at "${e}"`);let s=yn(e),l=gd(r,s),a=Array.isArray(l),h=typeof l=="string"&&l.endsWith("[]");if(!a&&!h)throw new Error(`hypercms: path "${e}" is not an array`);let d=Mo(o,"data-hcms-max-items"),b=i.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]");if(o.hasAttribute("data-hcms-no-add")||d!=null&&b.length>=d)return;let f=b.length,u=a?l[1]:l.replace(/\[\]$/,""),m=Hr(a?u:"string"),p=Vl({shape:a?"object-array-item":"scalar-array-item",itemShape:u,pathArr:[...s,f],data:m,doc:t.doc,itemKey:o.getAttribute("data-hcms-item-tpl")||null,pageRules:r});return i.appendChild(p),Cn(p,t.doc,t.view?.enhanceFormRichText!==!1),Ji(o),Hn(`Add ${e}`,()=>tn(Gt(t),{path:e,structural:!0},t))}function Gi(e,t,n){let r=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]');if(!r||r.hasAttribute("data-hcms-no-reorder"))return;let o=r.querySelector(".hcms-array-items");if(!o)return;let i=Array.from(o.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")),s=i.indexOf(e);if(s<0)return;let l=s+t;if(l<0||l>=i.length)return;let a=e.querySelector(`[data-hcms-action="${t<0?"move-up":"move-down"}"]`);return t<0?o.insertBefore(e,i[l]):o.insertBefore(e,i[l].nextSibling),Zi(o),Ji(r),a&&typeof a.focus=="function"&&e.querySelector(`[data-hcms-action="${t<0?"move-up":"move-down"}"]`)?.focus?.(),Hn(`Reorder ${r.getAttribute("data-hcms-path")||""}`,()=>tn(Gt(n),{path:r.getAttribute("data-hcms-path")||"",structural:!0},n))}var Ro="Delete this item?";function dd(e,t){let n=e&&e.getAttribute("data-hcms-confirm-remove");if(n!=null)return/^(off|false|no|0)$/i.test(n.trim())?null:n||Ro;let r=t&&t.confirmRemove;return r===!1?null:typeof r=="string"?r||Ro:r===!0||e&&e.getAttribute("data-hcms-shape")==="object-array"?Ro:null}function Yi(e,t){let n=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]'),r=dd(n,t);if(r==null)return mr(e,t);let o=It("consent")||typeof window<"u"&&window.consent;typeof o=="function"?Promise.resolve(o(r)).then(()=>{t.closed||mr(e,t)},()=>{}):typeof window<"u"&&typeof window.confirm=="function"?window.confirm(r)&&mr(e,t):mr(e,t)}function mr(e,t){let n=e.getAttribute("data-hcms-path")||"",r=e.parentElement,o=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]');if(!o?.hasAttribute("data-hcms-no-remove")){if(o){let i=Mo(o,"data-hcms-min-items"),s=o.querySelector(".hcms-array-items"),l=s?s.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]").length:0;if(i!=null&&l<=i)return}return e.remove(),r&&Zi(r),o&&Ji(o),Hn(`Remove ${n}`,()=>tn(Gt(t),{path:n,structural:!0},t))}}function tn(e,t,n){if(n.closed)return{ok:!1,skipped:!0,closed:!0};let r=Vr(e);if(!t.structural&&r===n.lastFingerprint)return{ok:!0,skipped:!0};let o=Object.hasOwn(n,"writeRules")?n.writeRules:n.pageRules,i=Nl(n.pageRoot,o,e,{shellRoot:n.shellRoot,structural:!!t.structural,structuralPath:t.path||null,formRoot:n.formRoot});return i.ok?(n.lastFingerprint=r,n.lastData=e,ba(n,null),n.dispatch?.("hcms:change",{data:e,path:t.path,structural:!!t.structural}),n.onChange?.(e,t)):(ba(n,pd(i.error,t.path)),n.dispatch?.("hcms:error",{error:i.error,attemptedData:e}),n.onError?.(i.error)),i}function Io(e,t){let n=gr(t),r=`[data-hcms-path="${n}"] input[data-hcms-field], [data-hcms-path="${n}"] textarea[data-hcms-field], [data-hcms-path="${n}"] select[data-hcms-field], [data-hcms-path="${n}"] img[data-hcms-field], [data-hcms-path="${n}"] a[data-hcms-field], [data-hcms-path="${n}"] [contenteditable][data-hcms-field], input[data-hcms-path="${n}"][data-hcms-field], textarea[data-hcms-path="${n}"][data-hcms-field], select[data-hcms-path="${n}"][data-hcms-field], img[data-hcms-path="${n}"][data-hcms-field], a[data-hcms-path="${n}"][data-hcms-field], [contenteditable][data-hcms-path="${n}"][data-hcms-field]`;return e.querySelector(r)}function jo(e,t,n,r){let o=(e.tagName||"").toUpperCase(),i=(e.getAttribute("type")||"").toLowerCase();if(o==="INPUT"&&i==="checkbox"){e.checked=t===!0||t==="true";return}if(o==="INPUT"&&i==="radio"){let s=gr(r),l=n.querySelectorAll(`[data-hcms-path="${s}"][data-hcms-field][type="radio"], [data-hcms-path="${s}"] [data-hcms-field][type="radio"]`);l.length?l.forEach(a=>{a.checked=String(a.value)===String(t??"")}):e.checked=String(e.value)===String(t??"");return}if(o==="IMG"){e.src=t==null?"":String(t);return}if(o==="A"){e.href=t==null?"":String(t);return}if(e.hasAttribute&&e.hasAttribute("contenteditable")){e.innerHTML=t==null?"":String(t);return}if("value"in e){e.value=t==null?"":String(t);return}e.textContent=t==null?"":String(t)}function Gt(e){let t=Vt.extract(e.formRoot,e.formRules,{exclude:null});return Nn(t,e.formRules)}function Nn(e,t){if(t==null||e==null)return e;if(typeof t=="string")return t.endsWith("@checked")?e===!0||e==="true":e;if(Array.isArray(t)){if(!Array.isArray(e))return e;let[,n]=t;return e.map(r=>Nn(r,n))}if(typeof t=="object"){if(typeof e!="object"||Array.isArray(e))return e;let n={};for(let[r,o]of Object.entries(t))n[r]=Nn(e[r],o);return n}return e}function ba(e,t){e.lastErrors=t&&t.length?t:null,Xi(e)}function Xi(e){if(hd(e),e.errorEl&&(e.errorEl.textContent="",e.errorEl.hidden=!0),!e.lastErrors)return;let t=[];for(let{message:n,path:r}of e.lastErrors){if(r!=null&&r!==""){let o=md(e.formRoot,r);if(o){o.textContent=o.textContent?`${o.textContent}
152
+ `},vh=["@scalar","@object","@scalar-array","@scalar-array-item","@object-array","@object-array-item"];function cs(e){let t=e.head||e.documentElement;if(t)for(let n of vh)hc(e,t,n)}function $i(e,t){if(!cc[t])return null;let n=e&&(e.head||e.documentElement);return n?hc(e,n,t):null}var lc={src:"@image",checked:"@checkbox",innerHTML:"@richtext"},ls={image:"@image",file:"@file",checkbox:"@checkbox",toggle:"@toggle",select:"@select",radio:"@radio",textarea:"@textarea",number:"@number",richtext:"@richtext"},wh=new Set([...Object.values(ls),"@chips","@chips-item"]);function No(e,t,n,r){if(typeof e!="string")return"@scalar";let o=rn(e),s=ds(e,o,n,r),l=hs(s,t,"data-hcms-component");if(l&&ls[l]){let i=ls[l],a=Array.isArray(n)&&n.some(c=>c==="*"||typeof c=="number");return i==="@number"&&!ac(e,o,t,a,s).every(Sh)||(i==="@checkbox"||i==="@toggle")&&(o<0||e.slice(o+1)!=="checked")&&!ac(e,o,t,a,s).every(Th)?"@scalar":i}if(o>=0){let i=e.slice(o+1);if(lc[i])return lc[i]}return"@scalar"}function fc(e,t,n,r){if(typeof e!="string")return null;let o=rn(e),s=hs(ds(e,o,n,r),t,"data-hcms-component");return s&&ls[s]||null}var Ah=/^-?\d+(\.\d+)?([eE][+-]?\d+)?$/;function Sh(e){return e==null||e===""?!0:Ah.test(String(e))}function Th(e){return e==null||e===""||e==="true"||e==="false"}function ac(e,t,n,r,o){if(!n||!n.querySelectorAll)return[];if(!o||o===".")return[];let s=null;try{s=n.querySelectorAll(o)}catch{return[]}let l=t>=0?e.slice(t+1):null,i=[];for(let a of s)if(!(a.closest&&a.closest("[cms-template], [data-hcms-shell]"))&&(l?l==="value"&&"value"in a?i.push(a.value):i.push(a.getAttribute?a.getAttribute(l):null):i.push((a.textContent||"").trim()),!r))break;return i}function fs(e,t){if(typeof e!="string"||!e.endsWith("[]")||!t||!t.querySelector)return null;let n=e.slice(0,-2).trim();if(!n)return null;let r=null;try{r=t.querySelector(n)}catch{return null}let o=r&&r.closest?r.closest("[data-hcms-component]"):null;return(o&&o.getAttribute?o.getAttribute("data-hcms-component"):null)==="chips"?{array:"@chips",item:"@chips-item"}:null}function Gr(e,t,n){let r=e.join("."),o=e.map(s=>typeof s=="number"?"*":s).join(".");return r&&Dn(n,r)||o&&o!==r&&Dn(n,o)||Dn(n,t)}function us(e,t,n){let r=fs(e,n);if(!r)return null;let o=Gr(t,r.array,n);return o&&o.getAttribute("data-hcms-tpl")===r.array?r:null}function uc(e,t,n,r){if(typeof e!="string")return null;let o=rn(e),s=hs(ds(e,o,n,r),t,"data-hcms-options");if(s==null)return null;let l=s.trim().split(/\s+/).filter(Boolean);return l.length?l:null}function dc(e,t,n,r){if(typeof e!="string")return null;let o=rn(e);return hs(ds(e,o,n,r),t,"data-hcms-crop")}function Eh(e,t){return t>=0?e.slice(0,t):e}function ds(e,t,n,r){let o=Eh(e,t);return o&&o!=="."?o:_h(r,n)}function _h(e,t){if(e==null||!Array.isArray(t))return"";let n=[],r=e;for(let o of t){if(r==null||typeof r=="string")break;if(Array.isArray(r)){if(typeof r[0]!="string"||o!=="*"&&typeof o!="number")return"";n.push(r[0]),r=r[1];continue}if(typeof r!="object"||!Object.prototype.hasOwnProperty.call(r,o))return"";r=r[o]}return n.join(" ")}function hs(e,t,n){if(!t||!t.querySelector||!e||e===".")return null;let r=null;try{r=t.querySelector(e)}catch{return null}return r&&r.getAttribute?r.getAttribute(n):null}function ms(e,t){if(!e||t==null)return;n(t,[]);function n(r,o){let s=Sr(r);if(s==="scalar"){let l=No(r,e,o,t);wh.has(l)&&$i(e,l);return}if(s==="scalar-array"){let l=fs(r,e);l&&($i(e,l.array),$i(e,l.item));return}if(s==="object"){for(let[l,i]of Object.entries(r))n(i,[...o,l]);return}if(s==="object-array"){let l=r[1],i=[...o,"*"];if(l&&typeof l=="object"&&!Array.isArray(l))for(let[a,c]of Object.entries(l))n(c,[...i,a]);else n(l,i)}}}function hc(e,t,n){let r=Dn(e,n);if(r)return r;let o=e.createElement("template");return o.setAttribute("data-hcms-tpl",n),o.setAttribute("save-remove",""),o.innerHTML=cc[n].trim(),t.appendChild(o),o}function Dn(e,t){return!e||!e.querySelector?null:e.querySelector(`template[data-hcms-tpl="${Oh(t)}"]`)}function Oh(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}function Sr(e){return typeof e=="string"?e.endsWith("[]")?"scalar-array":"scalar":Array.isArray(e)?"object-array":typeof e=="object"&&e!==null?"object":"scalar"}function Co(e){return e?!!(e.content||e).querySelector("[data-hcms-field]"):!1}var mc={IMG:"src",A:"href"};function ps(e){if(!e)return"value";let t=(e.tagName||"").toUpperCase();return t==="INPUT"?(e.getAttribute("type")||"text").toLowerCase()==="checkbox"?"checked":"value":t==="TEXTAREA"||t==="SELECT"?"value":mc[t]?mc[t]:e.hasAttribute&&e.hasAttribute("contenteditable")?"innerHTML":null}function pc(e,t){let n=(e.tagName||"").toUpperCase(),r=(e.getAttribute&&e.getAttribute("type")||"").toLowerCase(),o=ps(e),l=`${bc(n,r)}[data-hcms-field="${Yr(t)}"]`;return n==="INPUT"&&r==="radio"?`${l}:checked@value`:o?`${l}@${o}`:l}function Nh(e){let t=(e.tagName||"").toUpperCase(),n=(e.getAttribute&&e.getAttribute("type")||"").toLowerCase(),r=ps(e),s=`${bc(t,n)}[data-hcms-field]`;return t==="INPUT"&&n==="radio"?`${s}:checked@value`:r?`${s}@${r}`:s}function bc(e,t){return e==="INPUT"?t?`input[type="${t}"]`:"input":e==="TEXTAREA"?"textarea":e==="SELECT"?"select":e==="IMG"?"img":e==="A"?"a":':not([data-hcms-shape="scalar"]):not([data-hcms-shape="object"]):not([data-hcms-shape="object-array"]):not([data-hcms-shape="scalar-array"])'}function Yr(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}var gc=new Set(["__proto__","constructor","prototype"]);function gs(e,t){return n(e,[]);function n(c,h){let u=Sr(c);if(u==="scalar")return r(c,h);if(u==="scalar-array")return o(c,h);if(u==="object-array")return s(c,h);if(u==="object"){let f=Object.create(null);for(let[d,p]of Object.entries(c)){if(gc.has(d))throw new Error(`hypercms: rule key "${d}" is forbidden at "${h.join(".")||"<root>"}"`);f[d]=n(p,[...h,d])}return f}return null}function r(c,h){let u=h.length?h[h.length-1]:null,f=typeof u=="string"?u:"__value",d=a(h,f);if(d)return pc(d,f);let p=i(No(c,t,h,e),f);return p?pc(p,f):`input[data-hcms-field="${Yr(f)}"]@value`}function o(c,h){let u=us(c,h,t),f=u&&i(u.item,null)||i("@scalar-array-item",null),d=f?Nh(f):"input[data-hcms-field]@value";return[l(h,"[data-hcms-array-item]"),d]}function s(c,h){let[,u]=c,f=[...h,"*"],d=l(h,"[data-hcms-card]");if(u&&typeof u=="object"&&!Array.isArray(u)){let p=Object.create(null);for(let[y,m]of Object.entries(u)){if(gc.has(y))throw new Error(`hypercms: rule key "${y}" is forbidden at "${f.join(".")}"`);p[y]=n(m,[...f,y])}return[d,p]}return[d,n(u,[...f,0])]}function l(c,h){let u=c.length?c[c.length-1]:"",f=c.some(y=>y==="*"),d=c.join(".");return`${f?`[data-hcms-field="${Yr(u)}"]`:`[data-hcms-path="${Yr(d)}"]`} > .hcms-array-items > ${h}`}function i(c,h){if(!t)return null;let u=Dn(t,c);if(!u)return null;let f=u.content||u;if(h){let d=f.querySelector(`[data-hcms-field="${Yr(h)}"]`);if(d)return d}return f.querySelector("[data-hcms-field]")}function a(c,h){if(!t)return null;let u=c.map(p=>typeof p=="number"?"*":p).join("."),d=[c.join("."),u];for(let p=c.length-1;p>=0;p--){let y=c.slice(0,p).map(m=>typeof m=="number"?"*":m);y.push("*"),d.push(y.join("."))}for(let p of d){if(!p)continue;let y=Dn(t,p);if(!y||!Co(y))continue;let m=y.content||y,g=m.querySelector(`[data-hcms-field="${Yr(h)}"]`)||m.querySelector("[data-hcms-field]");if(g)return g}return null}}function Hi(e){if(!e)return"";let t=String(e).split(/[?#]/)[0],n=t.split("/").pop()||t;try{return decodeURIComponent(n)}catch{return n}}function Xr({pageRules:e,formRules:t,data:n,doc:r}){let o=r.createDocumentFragment(),s=zi(e,[],n,r,e);return s&&o.appendChild(s),o}function yc({shape:e,itemShape:t,pathArr:n,data:r,doc:o,itemKey:s,pageRules:l}){if(e==="object-array-item")return vc(t,n,r,o,l);if(e==="scalar-array-item")return wc(n,r,o,s||null);throw new Error(`hypercms: buildItem called with unknown shape "${e}"`)}function zi(e,t,n,r,o){let s=Sr(e);return s==="scalar"?Ch(e,t,n,r,o):s==="object"?Lh(e,t,n,r,o):s==="object-array"?jh(e,t,n,r,o):s==="scalar-array"?Ph(e,t,n,r):null}function Ch(e,t,n,r,o){let s=No(e,r,t,o),l=Gr(t,s,r);if(!l)throw new Error(`hypercms: missing template for scalar at "${t.join(".")}"`);let i=fc(e,r,t,o);i==="@number"&&s==="@scalar"&&console.info(`[hypercms] field "${t.join(".")}" declares component "@number" but its value isn't a plain number; rendering a text input so the value is preserved`),(i==="@checkbox"||i==="@toggle")&&s==="@scalar"&&console.info(`[hypercms] field "${t.join(".")}" declares component "${i}" but its value isn't true/false; rendering a text input so the value is preserved`),xc(l,i===s?i:null,t);let a=Jr(l,r);Zr(a,t);let c=l.getAttribute?.("data-hcms-tpl");if((s==="@select"||s==="@radio")&&c===s&&Mh(a,e,t,n,r,s,o),s==="@image"&&c==="@image"){let h=dc(e,r,t,o);h!=null&&!a.hasAttribute("data-hcms-crop")&&a.setAttribute("data-hcms-crop",h)}return Dh(a,Zn(t)),bs(a,Zn(t)),ks(a,Zn(t)),_c(a,n),s==="@file"&&Ih(a),a}function xc(e,t,n){if(!t)return;let r=e.getAttribute?.("data-hcms-tpl");r&&r!==t&&console.info(`[hypercms] field "${n.join(".")}" declares component "${t}" but custom template "${r}" wins`)}function Mh(e,t,n,r,o,s,l){let i=uc(t,o,n,l),a=i?[...i]:[],c=r==null?"":String(r);if(c!==""&&!a.includes(c)&&a.unshift(c),!i&&(Rh(e,"data-hcms-options required (space-separated values)"),a.length===0)){e.querySelector(".mirk-radio")?.remove();return}if(s==="@select"){let f=e.querySelector("select[data-hcms-field]");if(!f)return;for(let d of a){let p=o.createElement("option");p.value=d,p.textContent=as(d),f.appendChild(p)}return}let h=e.querySelector(".mirk-radio");if(!h||!h.parentNode)return;let u=Vi(n.join("."));for(let f of a){let d=h.cloneNode(!0),p=d.querySelector('input[type="radio"]');p&&(p.value=f,p.name=u);let y=d.querySelector(".mirk-radio__label");y&&(y.textContent=as(f)),h.parentNode.insertBefore(d,h)}h.remove()}function Vi(e){return"hcms-"+String(e).replace(/[^A-Za-z0-9_-]/g,"-")}function Rh(e,t){let n=e.querySelector?e.querySelector(".hcms-error"):null;n&&(n.textContent=t,n.hidden=!1)}function Ih(e){let t=e.querySelector?e.querySelector("a.mirk-file__name[data-hcms-field]"):null;t&&(t.textContent=Hi(t.getAttribute("href")))}function Lh(e,t,n,r,o){let s=Gr(t,"@object",r);if(!s)throw new Error(`hypercms: missing template for object at "${t.join(".")}"`);let l=Jr(s,r);if(Zr(l,t),bs(l,Zn(t)),ks(l,Zn(t)),Co(s))return Nc(l,e,t),Oc(l,e,n),l;let i=ys(l,".hcms-object-fields",s,t);for(let[a,c]of Object.entries(e)){let h=n==null?null:n[a],u=zi(c,[...t,a],h,r,o);u&&i.appendChild(u)}return l}function jh(e,t,n,r,o){let s=Gr(t,"@object-array",r);if(!s)throw new Error(`hypercms: missing template for object-array at "${t.join(".")}"`);let l=Jr(s,r);Zr(l,t),bs(l,Zn(t)),ks(l,Zn(t)),Sc(l,s),Ec(l,s,t);let i=ys(l,".hcms-array-items",s,t),[,a]=e;return(Array.isArray(n)?n:[]).forEach((h,u)=>{let f=vc(a,[...t,u],h,r,o);f&&i.appendChild(f)}),Tc(l),l}function vc(e,t,n,r,o){let s=Ac(t,"object-array-item",r);if(!s)throw new Error(`hypercms: missing item template for "${t.join(".")}"`);let l=Jr(s,r);if(l.setAttribute("data-hcms-card",""),l.classList.contains("hcms-card")||l.classList.add("hcms-card"),Zr(l,t),Co(s))return e&&typeof e=="object"&&!Array.isArray(e)&&(Nc(l,e,t),Oc(l,e,n)),l;let i=ys(l,".hcms-card-fields",s,t);if(e&&typeof e=="object"&&!Array.isArray(e))for(let[a,c]of Object.entries(e)){let h=n==null?null:n[a],u=zi(c,[...t,a],h,r,o);u&&i.appendChild(u)}return l}function Ph(e,t,n,r){let o=fs(e,r),s=us(e,t,r),l=o?o.array:"@scalar-array",i=Gr(t,l,r);if(!i)throw new Error(`hypercms: missing template for scalar-array at "${t.join(".")}"`);xc(i,o?o.array:null,t);let a=Jr(i,r);Zr(a,t),bs(a,Zn(t)),ks(a,Zn(t)),Sc(a,i),Ec(a,i,t),s&&a.setAttribute("data-hcms-item-tpl",s.item);let c=ys(a,".hcms-array-items",i,t);return(Array.isArray(n)?n:[]).forEach((u,f)=>{let d=wc([...t,f],u,r,s?s.item:null);d&&c.appendChild(d)}),Tc(a),a}function wc(e,t,n,r){let o=Ac(e,"scalar-array-item",n,r);if(!o)throw new Error(`hypercms: missing item template for "${e.join(".")}"`);let s=Jr(o,n);return s.setAttribute("data-hcms-array-item",""),s.classList.contains("hcms-array-item")||s.classList.add("hcms-array-item"),Zr(s,e),_c(s,t),s}function Ac(e,t,n,r){let o=e.map(s=>typeof s=="number"?"*":s).join(".");return Dn(n,o)||r&&Dn(n,r)||Dn(n,"@"+t)}function Jr(e,t){let n=e.content||e,r=t.createElement("div");return r.appendChild(n.cloneNode(!0)),r.firstElementChild||r}function Zr(e,t){e.setAttribute("data-hcms-path",t.join("."))}function Dh(e,t){let n=t==null?"":String(t);if(e.matches&&e.matches("[data-hcms-field]")){e.getAttribute("data-hcms-field")||e.setAttribute("data-hcms-field",n);return}(e.querySelectorAll?e.querySelectorAll("[data-hcms-field]"):[]).forEach(o=>{o.getAttribute("data-hcms-field")||o.setAttribute("data-hcms-field",n)})}function bs(e,t){t==null||t===""||!e.setAttribute||e.hasAttribute?.("data-hcms-field")||e.setAttribute("data-hcms-field",String(t))}function ks(e,t){if(t==null||t==="")return;(e.querySelectorAll?e.querySelectorAll("[data-hcms-label]"):[]).forEach(r=>{(r.textContent||"").trim()===""&&(r.textContent=as(String(t)))})}function Sc(e,t){["data-hcms-no-add","data-hcms-no-remove","data-hcms-no-reorder"].forEach(n=>{t.hasAttribute(n)&&e.setAttribute(n,"")}),["data-hcms-min-items","data-hcms-max-items"].forEach(n=>{t.hasAttribute(n)&&e.setAttribute(n,t.getAttribute(n))})}function Tc(e){let t=e.querySelector?e.querySelector(".hcms-array-items"):null;if(!t)return;let n=Array.from(t.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")),r=n.length,o=kc(e,"data-hcms-max-items"),s=kc(e,"data-hcms-min-items"),l=e.hasAttribute("data-hcms-no-add"),i=e.hasAttribute("data-hcms-no-remove"),a=e.hasAttribute("data-hcms-no-reorder"),c=e.querySelector('[data-hcms-action="add"]');c&&(c.hidden=l||o!=null&&r>=o),n.forEach((h,u)=>{let f=h.querySelector('[data-hcms-action="remove"]');f&&(f.hidden=i||s!=null&&r<=s);let d=h.querySelector('[data-hcms-action="move-up"]');d&&(d.hidden=a||u===0);let p=h.querySelector('[data-hcms-action="move-down"]');p&&(p.hidden=a||u===r-1)})}function kc(e,t){if(!e||!e.hasAttribute(t))return null;let n=parseInt(e.getAttribute(t),10);return Number.isFinite(n)?n:null}function Ec(e,t,n){if(e.hasAttribute("data-hcms-no-reorder")||t.hasAttribute("data-hcms-no-reorder"))return;let r=e.querySelector(".hcms-array-items");if(!r)return;let o="hcms-"+n.join(".");r.setAttribute("sortable",o),r.setAttribute("onsorted","hypercmsCommit && hypercmsCommit()")}function Zn(e){return e.length?e[e.length-1]:null}function _c(e,t){let n=Fh(e);if(n.length!==0)for(let r of n)Cc(r,t)}function Fh(e){if(!e)return[];let t=[];return e.matches?.("[data-hcms-field]")&&Bh(e)&&t.push(e),(e.querySelectorAll?e.querySelectorAll("input[data-hcms-field], textarea[data-hcms-field], select[data-hcms-field], img[data-hcms-field], a[data-hcms-field], [contenteditable][data-hcms-field]"):[]).forEach(r=>t.push(r)),t}function Bh(e){let t=(e.tagName||"").toUpperCase();return!!(t==="INPUT"||t==="TEXTAREA"||t==="SELECT"||t==="IMG"||t==="A"||e.hasAttribute?.("contenteditable"))}function Oc(e,t,n){(e.querySelectorAll?e.querySelectorAll("[data-hcms-field]"):[]).forEach(o=>{let s=o.getAttribute("data-hcms-field");if(!s)return;if(!t||typeof t!="object"||!(s in t)){console.warn(`[hypercms] inline template field "${s}" is not in the rule shape; ignoring`);return}let l=n==null?null:n[s];Cc(o,l)})}function Nc(e,t,n){if(!e.querySelectorAll)return;e.querySelectorAll("[data-hcms-field]").forEach(o=>{let s=o.getAttribute("data-hcms-field");if(!s||t&&typeof t=="object"&&!(s in t))return;let l=[...n,s].join(".");o.setAttribute("data-hcms-path",l)})}function ys(e,t,n,r){if(!e.querySelector)return e;let o=e.querySelector(t);if(o)return o;let s=n?.getAttribute?.("data-hcms-tpl")||r.join(".");throw new Error(`hypercms: template "${s}" is in slotted mode but has no ${t} element`)}function Cc(e,t){let n=ps(e),r=(e.tagName||"").toUpperCase(),o=(e.getAttribute("type")||"").toLowerCase();if(r==="INPUT"&&o==="radio"){e.checked=e.value!=null&&String(e.value)===String(t??"");return}if(n==="checked"){e.checked=t===!0||t==="true";return}if(n){e[n]=t==null?"":String(t);return}e.textContent=t==null?"":String(t)}var qh={Mutation:(e,t)=>e?.Mutation??t?.Mutation,undo:(e,t)=>e?.undo??t?.undo,onPrepareForSave:(e,t)=>e?.addDocumentTransform??t?.onPrepareForSave,onSnapshot:(e,t)=>e?.onSnapshot??t?.onSnapshot,consent:(e,t)=>e?.confirm??t?.consent,RichClay:(e,t)=>e?.RichClay??t?.RichClay,quickcrop:(e,t)=>e?.quickcrop??t?.quickcrop,upload:(e,t)=>e?.upload??(t?.uploadFileBasic?$h(t.uploadFileBasic):null)},Uh={402:"payment-required",413:"too-large",415:"unsupported-type",401:"unauthorized",403:"forbidden",404:"not-found"},Wi=()=>({ok:!1,msg:"Upload cancelled",msgType:"skipped",code:"aborted",uploads:[]});function $h(e){return async function(n,{onProgress:r,signal:o}={}){if(o?.aborted)return Wi();try{let s=await e(n,{onProgress:i=>{r?.({loaded:null,total:null,percent:i})}});if(o?.aborted)return Wi();let l=s&&s.uploads||[];return typeof l[0]?.url!="string"?{ok:!1,msg:"The host accepted the file but did not say where it put it",msgType:"error",code:"bad-response",uploads:[]}:{ok:!0,msg:s.msg||"Uploaded",msgType:s.msgType||"success",code:s.code||null,uploads:l}}catch(s){if(o?.aborted)return Wi();let l={};try{l=JSON.parse(s?.response||"{}")}catch{l={}}let i=l.code||Uh[s?.status]||"error";return{ok:!1,msg:s&&s.message||"Upload failed",msgType:"error",code:i,uploads:[]}}}}function cn(e,t){let n=qh[e];if(!n)throw new Error(`hypercms: unknown platform capability "${e}"`);let r=t||(typeof window<"u"?window:null);return r&&n(r.clay,r.hyperclay)||null}var Mc=["clay:mutation-ready","hyperclay:mutation-ready"],Rc=["clay:sync-applied","hyperclay:livesync-applied"],Ic=["clay:ready","hyperclay:ready"];function Qr(e,t,n){let r=null,o=s=>{r!==null&&r!==s.type||(r=s.type,queueMicrotask(()=>{r=null}),n(s))};for(let s of t)e.addEventListener(s,o);return()=>{for(let s of t)e.removeEventListener(s,o)}}var Fn="data-hcms-bound",ar="data-hcms-bound-id",Ki=new Map;function Lc(e,t){Ki.set(e,t)}function jc(e){Ki.delete(e)}function Pc(e){let t=e.getAttribute(ar);if(!t)return null;let n=Ki.get(t);return!n||!n.restorable()?null:n.originalHTML}var Tr="data-hcms-owns-richclay";function eo(e){return e&&e.richclay&&e.richclay.RichClay||cn("RichClay",e)||(e&&typeof e.RichClay=="function"?e.RichClay:null)}function Dc(e,t,n){!e||typeof e.setAttribute!="function"||(e.setAttribute(Fn,t?"rich":"plain"),n&&e.setAttribute(Tr,"true"))}function Fc(e,t){if(!e||typeof e.querySelectorAll!="function")return;let n=e.querySelectorAll(`[${Fn}]`);if(!n.length)return;let r=eo(t);if(r&&typeof r.stripFromClone=="function")try{r.stripFromClone(e)}catch(o){console.warn("[hypercms] richclay strip failed; editor state may reach the save",o)}for(let o of n)o.getAttribute(Tr)==="true"&&o.removeAttribute("data-richclay"),o.removeAttribute(Tr),o.removeAttribute(Fn)}function Bc(e,t){if(!e||typeof e.removeAttribute!="function")return;let n=eo(t);if(n&&typeof n.stripElement=="function")try{n.stripElement(e)}catch(r){console.warn("[hypercms] richclay element strip failed; the clone stays editable",r)}else e.removeAttribute("contenteditable"),e.removeAttribute("no-undo");e.getAttribute(Tr)==="true"&&e.removeAttribute("data-richclay"),e.removeAttribute(Tr),e.removeAttribute(Fn),e.removeAttribute(ar)}function qc(e,t){if(!t||e==null)return e;return n(e);function n(r){if(typeof r=="string"){if(r.endsWith("[]")||rn(r)!==-1)return r;let o=null;try{o=t.querySelector(r)}catch{return r}return o&&o.children.length>0?r+"@innerHTML":r}if(Array.isArray(r))return r;if(r&&typeof r=="object"){let o=Object.create(null);for(let[s,l]of Object.entries(r))o[s]=n(l);return o}return r}}function Uc(e,t){if(!t||e==null)return e;return n(e,[t]);function n(r,o){if(typeof r=="string")return r.endsWith("[]")||rn(r)!==-1?r:o.some(s=>Hh(s,r))?r+"@innerHTML":r;if(Array.isArray(r)){let[s,l]=r;if(typeof s!="string"||!s)return r;let i=zh(t,s);return i.length?[s,n(l,i)]:r}if(r&&typeof r=="object"){let s=Object.create(null);for(let[l,i]of Object.entries(r))s[l]=n(i,o);return s}return r}}function Hh(e,t){let n=null;try{n=e.querySelector(t)}catch{return!1}return n?n.hasAttribute(Fn)?n.getAttribute(Fn)==="rich":n.children.length>0:!1}function zh(e,t){try{return[...e.querySelectorAll(t)]}catch{return[]}}function to(e){if(!e||e.tagName!=="TEXTAREA")return;let t=e.ownerDocument.defaultView||(typeof window<"u"?window:null);t&&t.CSS&&t.CSS.supports&&t.CSS.supports("field-sizing: content")||(e.style.height="auto",e.style.height=e.scrollHeight+"px")}function cr(e,t,n=!0){if(!e||!e.querySelectorAll||(e.querySelectorAll("textarea[data-hcms-field]").forEach(to),n===!1))return;let r=t&&t.defaultView||(typeof window<"u"?window:null),o=eo(r);o&&e.querySelectorAll("[contenteditable][data-hcms-field]").forEach(s=>{if(s.__hcmsRichclay)return;let l;try{l=new o(s,{inline:!0,hyperclay:!1,toolbar:["bold","italic","link","undo","redo"]})}catch(a){console.warn("[hypercms] richclay activation failed; field stays plain contenteditable",a);return}s.__hcmsRichclay=l;let i=l&&l.squire;i&&typeof i.addEventListener=="function"&&i.addEventListener("input",()=>{let a=r&&r.Event||Event;s.dispatchEvent(new a("input",{bubbles:!0}))})})}var Gi=new WeakSet;function Er(e,t){let n=cn("undo");if(!n)return t();n.pause();try{let r=t();return r&&r.ok?n.commitCaptured(e):n.discardCaptured(),r}finally{n.resume()}}function Qn(e){let t=cn("undo");if(!t)return e();t.pause();try{return e()}finally{t.discardCaptured(),t.resume()}}function ws(e){let{formRoot:t}=e;if(!t||Gi.has(t))return;Gi.add(t);let n=l=>{let i=l.target;!i||!i.closest||i.closest("[data-hcms-form-root]")&&i.matches("input, textarea, select, [contenteditable][data-hcms-field]")&&(i.tagName==="TEXTAREA"&&to(i),!i.matches('input[type="file"]')&&(!i.closest("[data-hcms-field]")&&!i.hasAttribute?.("data-hcms-field")||$c(i,e)))},r=l=>{let i=l.target;if(!(!i||!i.closest)&&i.closest("[data-hcms-form-root]")){if(i.matches('input[type="file"][data-hcms-upload]')){Zh(i,e);return}i.matches('input[type="checkbox"], input[type="radio"], select')&&$c(i,e)}},o=l=>{let i=l.target;if(!i||!i.closest)return;let a=i.closest("[data-hcms-action]");if(!a)return;let c=a.getAttribute("data-hcms-action");if(c==="add"||c==="remove"||c==="move-up"||c==="move-down"||c==="clear-upload"){if(!a.closest("[data-hcms-form-root]"))return}else if(c==="close"&&!a.closest("[data-hcms-shell]"))return;if(c==="add"){let h=a.closest("[data-hcms-path]");if(!h)return;let u=h.getAttribute("data-hcms-path");Mo(u,e)}else if(c==="remove"){let h=a.closest("[data-hcms-card], [data-hcms-array-item]");if(!h)return;Ji(h,e)}else if(c==="move-up"||c==="move-down"){let h=a.closest("[data-hcms-card], [data-hcms-array-item]");if(!h)return;Xi(h,c==="move-up"?-1:1,e)}else c==="clear-upload"?nm(a,e):c==="close"&&e.onCloseRequested?.()},s=t.ownerDocument;s.addEventListener("input",n,!0),s.addEventListener("change",r,!0),s.addEventListener("click",o,!0),e.detachEvents=()=>{s.removeEventListener("input",n,!0),s.removeEventListener("change",r,!0),s.removeEventListener("click",o,!0),Gi.delete(t)}}var Vh=new Set(["value","checked"]);function Wh(e,t){if(!t)return null;let n=Jn(t);if(n.some(a=>typeof a=="number"||a==="*"))return null;let r=Ar(e.pageRules,n);if(typeof r!="string")return null;let o=pn.ruleAttrIndex(r);if(o===-1)return null;let s=r.slice(o+1);if(!Vh.has(s))return null;let l=r.slice(0,o),i=l?e.pageRoot.querySelector(l):e.pageRoot;return i?{el:i,prop:s,oldValue:i[s]}:null}function $c(e,t){let r=(e.closest("[data-hcms-field]")||e).closest("[data-hcms-path]")?.getAttribute("data-hcms-path")||"",o=Wh(t,r);if(_n(vn(t),{path:r,structural:!1},t),o){let s=cn("undo");s&&typeof s.recordValue=="function"&&s.recordValue(o.el,{prop:o.prop,oldValue:o.oldValue,newValue:o.el[o.prop]})}}var Kh={type:"image/webp",quality:.85,maxWidth:2048,maxHeight:2048};async function Gh(e,t){let n=t&&t.getAttribute?t.getAttribute("data-hcms-crop"):null;if(n==null)return{file:e};let r=cn("quickcrop");if(typeof r!="function")return{file:e};try{let o=typeof window<"u"&&(window.clay?.modal??window.themodal)||"auto",s=await r(e,{aspect:Yh(n),modal:o,...Kh});return s===null?null:{file:Xh(s.blob,e.name),dataURL:s.dataURL}}catch(o){return ro(t,o&&o.message||"Crop failed"),null}}function Yh(e){let t=String(e??"").trim().toLowerCase();if(t===""||t==="free")return null;let n=t.match(/^(\d+(?:\.\d+)?)\s*[:/]\s*(\d+(?:\.\d+)?)$/);if(!n)return null;let r=parseFloat(n[1]),o=parseFloat(n[2]);return!r||!o?null:r/o}function Xh(e,t){let n=e.type==="image/webp"?".webp":e.type==="image/jpeg"?".jpg":".png",r=String(t||"image").replace(/\.[^.]+$/,"");try{return new File([e],r+n,{type:e.type})}catch{return e}}var Jh=new Set(["unsupported","payment-required"]);async function Zh(e,t){let n=e.files&&e.files[0];if(!n)return;let r=e.closest("[data-hcms-path]");if(!r)return;let o=r.getAttribute("data-hcms-path")||"";ro(r,null);let s=await Gh(n,r);if(!s||t.closed){fr(e);return}let l=s.file,i=s.dataURL||null,a=cn("upload");if(typeof a!="function")return Yi(e,r,t,o,await Hc(l,i,r),l);Kc(r,i),zc(r,0);let c=em(t),h;try{h=await a(l,{signal:c?.signal,onProgress:({percent:f})=>zc(r,f)})}finally{tm(t,c),om(r)}if(t.closed){fr(e);return}if(h.code==="aborted"){fr(e);return}if(h.ok)return Yi(e,r,t,o,h.uploads[0].url,l);if(!Jh.has(h.code)){ro(r,h.msg||"Upload failed"),t.dispatch?.("hcms:error",{error:new Error(h.msg||"Upload failed"),code:h.code,path:o}),fr(e);return}let u=h.code==="payment-required"?"This file is stored in the page. Add a paid plan to upload files.":null;return Yi(e,r,t,o,await Hc(l,i,r),l,u)}function Yi(e,t,n,r,o,s,l=null){if(n.closed){fr(e);return}if(Kc(t,null),ro(t,null),!o){fr(e);return}Wc(t,o,s.name),_n(vn(n),{path:r,structural:!1},n),l&&ro(t,l,"info"),fr(e)}async function Hc(e,t,n){return t||await Qh(e,n)}function Qh(e,t){let n=t?.ownerDocument?.defaultView?.FileReader||globalThis.FileReader;return n?new Promise(r=>{let o=new n;o.onload=()=>r(typeof o.result=="string"?o.result:""),o.onerror=()=>r("");try{o.readAsDataURL(e)}catch{r("")}}):Promise.resolve("")}function em(e){if(typeof AbortController!="function")return null;let t=new AbortController;return(e.uploads||(e.uploads=new Set)).add(t),t}function tm(e,t){t&&e.uploads?.delete(t)}function nm(e,t){let n=e.closest("[data-hcms-path]");if(!n)return;let r=n.getAttribute("data-hcms-path")||"";Wc(n,"","");let o=n.querySelector('input[type="file"][data-hcms-upload]');o&&fr(o),ro(n,null),_n(vn(t),{path:r,structural:!1},t)}function rm(e){return e.querySelector?e.querySelector("img[data-hcms-field], a[data-hcms-field]"):null}function Wc(e,t,n){let r=rm(e);if(!r)return;let o=(r.tagName||"").toUpperCase();o==="IMG"?r.src=t||"":o==="A"&&(r.href=t||"",r.textContent=t?n||Hi(t):"")}function fr(e){try{e.value=""}catch{}}function Kc(e,t){let n=e.querySelector?e.querySelector(".mirk-image__frame"):null;n&&(t?n.style.backgroundImage=`url("${t.replace(/"/g,"%22")}")`:n.style.removeProperty("background-image"))}function zc(e,t){let n=Math.max(0,Math.min(100,Number(t)||0));e.setAttribute("data-hcms-uploading",""),e.style?.setProperty?.("--hcms-upload-progress",`${n}%`)}function om(e){e.removeAttribute("data-hcms-uploading"),e.style?.removeProperty?.("--hcms-upload-progress")}function ro(e,t,n="error"){let r=e.querySelector?e.querySelector(":scope > .hcms-error"):null;r&&(r.classList.toggle("hcms-error--info",!!t&&n==="info"),t?(r.textContent=t,r.hidden=!1):(r.textContent="",r.hidden=!0))}function Mo(e,t){let{formRoot:n,pageRules:r}=t,o=n.querySelector(`[data-hcms-path="${oo(e)}"]`);if(!o)throw new Error(`hypercms: no element at path "${e}"`);let s=o.querySelector(".hcms-array-items");if(!s)throw new Error(`hypercms: array container missing .hcms-array-items at "${e}"`);let l=Jn(e),i=cm(r,l),a=Array.isArray(i),c=typeof i=="string"&&i.endsWith("[]");if(!a&&!c)throw new Error(`hypercms: path "${e}" is not an array`);let h=vs(o,"data-hcms-max-items"),u=s.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]");if(o.hasAttribute("data-hcms-no-add")||h!=null&&u.length>=h)return;let f=u.length,d=a?i[1]:i.replace(/\[\]$/,""),p=Oo(a?d:"string"),y=yc({shape:a?"object-array-item":"scalar-array-item",itemShape:d,pathArr:[...l,f],data:p,doc:t.doc,itemKey:o.getAttribute("data-hcms-item-tpl")||null,pageRules:r});return s.appendChild(y),cr(y,t.doc,t.view?.enhanceFormRichText!==!1),Qi(o),Er(`Add ${e}`,()=>_n(vn(t),{path:e,structural:!0},t))}function Xi(e,t,n){let r=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]');if(!r||r.hasAttribute("data-hcms-no-reorder"))return;let o=r.querySelector(".hcms-array-items");if(!o)return;let s=Array.from(o.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")),l=s.indexOf(e);if(l<0)return;let i=l+t;if(i<0||i>=s.length)return;let a=e.querySelector(`[data-hcms-action="${t<0?"move-up":"move-down"}"]`);return t<0?o.insertBefore(e,s[i]):o.insertBefore(e,s[i].nextSibling),el(o),Qi(r),a&&typeof a.focus=="function"&&e.querySelector(`[data-hcms-action="${t<0?"move-up":"move-down"}"]`)?.focus?.(),Er(`Reorder ${r.getAttribute("data-hcms-path")||""}`,()=>_n(vn(n),{path:r.getAttribute("data-hcms-path")||"",structural:!0},n))}var xs="Delete this item?";function sm(e,t){let n=e&&e.getAttribute("data-hcms-confirm-remove");if(n!=null)return/^(off|false|no|0)$/i.test(n.trim())?null:n||xs;let r=t&&t.confirmRemove;return r===!1?null:typeof r=="string"?r||xs:r===!0||e&&e.getAttribute("data-hcms-shape")==="object-array"?xs:null}function Ji(e,t){let n=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]'),r=sm(n,t);if(r==null)return no(e,t);let o=cn("consent")||typeof window<"u"&&window.consent;typeof o=="function"?Promise.resolve(o(r)).then(()=>{t.closed||no(e,t)},()=>{}):typeof window<"u"&&typeof window.confirm=="function"?window.confirm(r)&&no(e,t):no(e,t)}function no(e,t){let n=e.getAttribute("data-hcms-path")||"",r=e.parentElement,o=e.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]');if(!o?.hasAttribute("data-hcms-no-remove")){if(o){let s=vs(o,"data-hcms-min-items"),l=o.querySelector(".hcms-array-items"),i=l?l.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]").length:0;if(s!=null&&i<=s)return}return e.remove(),r&&el(r),o&&Qi(o),Er(`Remove ${n}`,()=>_n(vn(t),{path:n,structural:!0},t))}}function _n(e,t,n){if(n.closed)return{ok:!1,skipped:!0,closed:!0};let r=Ro(e);if(!t.structural&&r===n.lastFingerprint)return{ok:!0,skipped:!0};let o=Object.hasOwn(n,"writeRules")?n.writeRules:n.pageRules,s=oc(n.pageRoot,o,e,{shellRoot:n.shellRoot,structural:!!t.structural,structuralPath:t.path||null,formRoot:n.formRoot});return s.ok?(n.lastFingerprint=r,n.lastData=e,Vc(n,null),n.dispatch?.("hcms:change",{data:e,path:t.path,structural:!!t.structural}),n.onChange?.(e,t)):(Vc(n,am(s.error,t.path)),n.dispatch?.("hcms:error",{error:s.error,attemptedData:e}),n.onError?.(s.error)),s}function As(e,t){let n=oo(t),r=`[data-hcms-path="${n}"] input[data-hcms-field], [data-hcms-path="${n}"] textarea[data-hcms-field], [data-hcms-path="${n}"] select[data-hcms-field], [data-hcms-path="${n}"] img[data-hcms-field], [data-hcms-path="${n}"] a[data-hcms-field], [data-hcms-path="${n}"] [contenteditable][data-hcms-field], input[data-hcms-path="${n}"][data-hcms-field], textarea[data-hcms-path="${n}"][data-hcms-field], select[data-hcms-path="${n}"][data-hcms-field], img[data-hcms-path="${n}"][data-hcms-field], a[data-hcms-path="${n}"][data-hcms-field], [contenteditable][data-hcms-path="${n}"][data-hcms-field]`;return e.querySelector(r)}function Ss(e,t,n,r){let o=(e.tagName||"").toUpperCase(),s=(e.getAttribute("type")||"").toLowerCase();if(o==="INPUT"&&s==="checkbox"){e.checked=t===!0||t==="true";return}if(o==="INPUT"&&s==="radio"){let l=oo(r),i=n.querySelectorAll(`[data-hcms-path="${l}"][data-hcms-field][type="radio"], [data-hcms-path="${l}"] [data-hcms-field][type="radio"]`);i.length?i.forEach(a=>{a.checked=String(a.value)===String(t??"")}):e.checked=String(e.value)===String(t??"");return}if(o==="IMG"){e.src=t==null?"":String(t);return}if(o==="A"){e.href=t==null?"":String(t);return}if(e.hasAttribute&&e.hasAttribute("contenteditable")){e.innerHTML=t==null?"":String(t);return}if("value"in e){e.value=t==null?"":String(t);return}e.textContent=t==null?"":String(t)}function vn(e){let t=pn.extract(e.formRoot,e.formRules,{exclude:null});return ur(t,e.formRules)}function ur(e,t){if(t==null||e==null)return e;if(typeof t=="string")return t.endsWith("@checked")?e===!0||e==="true":e;if(Array.isArray(t)){if(!Array.isArray(e))return e;let[,n]=t;return e.map(r=>ur(r,n))}if(typeof t=="object"){if(typeof e!="object"||Array.isArray(e))return e;let n={};for(let[r,o]of Object.entries(t))n[r]=ur(e[r],o);return n}return e}function Vc(e,t){e.lastErrors=t&&t.length?t:null,Zi(e)}function Zi(e){if(im(e),e.errorEl&&(e.errorEl.textContent="",e.errorEl.hidden=!0),!e.lastErrors)return;let t=[];for(let{message:n,path:r}of e.lastErrors){if(r!=null&&r!==""){let o=lm(e.formRoot,r);if(o){o.textContent=o.textContent?`${o.textContent}
152
153
  ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textContent=t.join(`
153
- `),e.errorEl.hidden=!1)}function hd(e){if(e.formRoot)for(let t of e.formRoot.querySelectorAll(".hcms-error"))t.textContent="",t.hidden=!0}function md(e,t){if(!e)return null;let n=t.split(".");for(;n.length>0;){let r=n.join("."),o=typeof CSS<"u"&&CSS.escape?CSS.escape(r):r.replace(/[^a-zA-Z0-9_\-.*]/g,s=>"\\"+s),i=e.querySelector(`[data-hcms-path="${o}"]`);if(i){for(let s of i.children)if(s.classList&&s.classList.contains("hcms-error"))return s}n.pop()}return null}function pd(e,t){return e?e.name==="EmptyListInsert"?[{message:"Add a seed item in HTML first.",path:t}]:e.name==="ShapeMismatch"&&Array.isArray(e.mismatches)&&e.mismatches.length?e.mismatches.map(n=>({message:`Shape mismatch: expected ${n.expected}, got ${n.got}`,path:n.path})):[{message:e.message||String(e),path:t}]:[{message:"unknown error",path:t}]}function gd(e,t){let n=e;for(let r of t){if(n==null||typeof n=="string")return;if(Array.isArray(n)){if(typeof r!="number"&&r!=="*")return;n=n[1];continue}if(typeof n=="object"){if(typeof r=="number"||!(r in n))return;n=n[r];continue}return}return n}function Mo(e,t){if(!e||!e.hasAttribute(t))return null;let n=parseInt(e.getAttribute(t),10);return Number.isFinite(n)?n:null}function Ji(e){if(!e)return;let t=e.querySelector(".hcms-array-items");if(!t)return;let n=Array.from(t.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")),r=n.length,o=Mo(e,"data-hcms-max-items"),i=Mo(e,"data-hcms-min-items"),s=e.hasAttribute("data-hcms-no-add"),l=e.hasAttribute("data-hcms-no-remove"),a=e.hasAttribute("data-hcms-no-reorder"),h=e.querySelector(':scope > .hcms-add, :scope > * > .hcms-add, :scope > [data-hcms-action="add"]');h&&(h.hidden=s||o!=null&&r>=o),n.forEach((d,b)=>{let f=d.querySelector('[data-hcms-action="remove"]');f&&(f.hidden=l||i!=null&&r<=i);let u=d.querySelector('[data-hcms-action="move-up"]');u&&(u.hidden=a||b===0);let m=d.querySelector('[data-hcms-action="move-down"]');m&&(m.hidden=a||b===r-1)})}function Do(e){!e||!e.querySelectorAll||e.querySelectorAll(".hcms-array-items").forEach(t=>Zi(t))}function Zi(e){let t=e.querySelectorAll?Array.from(e.querySelectorAll('input[type="radio"][data-hcms-field]'),r=>[r,r.checked]):[],n=0;for(let r of e.children){if(!r.matches?.("[data-hcms-card], [data-hcms-array-item]"))continue;let o=r.getAttribute("data-hcms-path");if(!o)continue;let i=o.split(".");i[i.length-1]=String(n);let s=i.join(".");s!==o&&bd(r,o,s),n++}for(let[r,o]of t)r.checked!==o&&(r.checked=o)}function bd(e,t,n){let r=e.querySelectorAll("[data-hcms-path]");e.setAttribute("data-hcms-path",n);for(let o of r){let i=o.getAttribute("data-hcms-path");i===t?o.setAttribute("data-hcms-path",n):i&&i.startsWith(t+".")&&o.setAttribute("data-hcms-path",n+i.slice(t.length))}kd(e)}function kd(e){for(let t of e.querySelectorAll('input[type="radio"][data-hcms-field]')){if(!t.name||!t.name.startsWith("hcms-"))continue;let n=t.closest("[data-hcms-path]");n&&(t.name=Ui(n.getAttribute("data-hcms-path")))}}function Vr(e){return JSON.stringify(e,(t,n)=>{if(n&&typeof n=="object"&&!Array.isArray(n)){let r=Object.create(null);for(let o of Object.keys(n).sort())r[o]=n[o];return r}return n})}function gr(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}var Sd={},Po="hcms-shell-styles",yd="hcms-bundled-styles-installed",Fo="hcms-session-open",xd='a[href], area[href], button:not([disabled]), input:not([disabled]):not([type="hidden"]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',br=new WeakSet,Qi="";function va(e){Qi=e}function Wr(e){e?.body?.classList.add(Fo)}function es(e){e?.body?.classList.remove(Fo)}var vd=0;function xa(e){return String(e).replace(/[&<>"]/g,t=>({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;"})[t])}function wa({mountTo:e,side:t="right",overlay:n=!1,showSaveButton:r=!1,title:o="Page content",eyebrow:i="Edit",theme:s=null,doc:l}){Aa(l);let a=`hcms-shell-title-${++vd}`,h=l.createElement("div");h.setAttribute("data-hcms-shell",""),h.setAttribute("editor-ui",""),h.setAttribute("save-remove",""),h.setAttribute("save-ignore",""),h.setAttribute("tabindex","-1"),h.setAttribute("role","dialog"),h.setAttribute("aria-modal","true"),h.setAttribute("aria-labelledby",a);let d=s==="dark"?" dark":s==="light"?" light":"";h.className="hcms-shell pixel-quiet hcms-panel hcms-side-"+t+(n?" hcms-overlay":"")+d;let b=xa(o),f=xa(i);h.innerHTML=`
154
+ `),e.errorEl.hidden=!1)}function im(e){if(e.formRoot)for(let t of e.formRoot.querySelectorAll(".hcms-error"))t.textContent="",t.hidden=!0}function lm(e,t){if(!e)return null;let n=t.split(".");for(;n.length>0;){let r=n.join("."),o=typeof CSS<"u"&&CSS.escape?CSS.escape(r):r.replace(/[^a-zA-Z0-9_\-.*]/g,l=>"\\"+l),s=e.querySelector(`[data-hcms-path="${o}"]`);if(s){for(let l of s.children)if(l.classList&&l.classList.contains("hcms-error"))return l}n.pop()}return null}function am(e,t){return e?e.name==="EmptyListInsert"?[{message:"Add a seed item in HTML first.",path:t}]:e.name==="ShapeMismatch"&&Array.isArray(e.mismatches)&&e.mismatches.length?e.mismatches.map(n=>({message:`Shape mismatch: expected ${n.expected}, got ${n.got}`,path:n.path})):[{message:e.message||String(e),path:t}]:[{message:"unknown error",path:t}]}function cm(e,t){let n=e;for(let r of t){if(n==null||typeof n=="string")return;if(Array.isArray(n)){if(typeof r!="number"&&r!=="*")return;n=n[1];continue}if(typeof n=="object"){if(typeof r=="number"||!(r in n))return;n=n[r];continue}return}return n}function vs(e,t){if(!e||!e.hasAttribute(t))return null;let n=parseInt(e.getAttribute(t),10);return Number.isFinite(n)?n:null}function Qi(e){if(!e)return;let t=e.querySelector(".hcms-array-items");if(!t)return;let n=Array.from(t.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")),r=n.length,o=vs(e,"data-hcms-max-items"),s=vs(e,"data-hcms-min-items"),l=e.hasAttribute("data-hcms-no-add"),i=e.hasAttribute("data-hcms-no-remove"),a=e.hasAttribute("data-hcms-no-reorder"),c=e.querySelector(':scope > .hcms-add, :scope > * > .hcms-add, :scope > [data-hcms-action="add"]');c&&(c.hidden=l||o!=null&&r>=o),n.forEach((h,u)=>{let f=h.querySelector('[data-hcms-action="remove"]');f&&(f.hidden=i||s!=null&&r<=s);let d=h.querySelector('[data-hcms-action="move-up"]');d&&(d.hidden=a||u===0);let p=h.querySelector('[data-hcms-action="move-down"]');p&&(p.hidden=a||u===r-1)})}function Ts(e){!e||!e.querySelectorAll||e.querySelectorAll(".hcms-array-items").forEach(t=>el(t))}function el(e){let t=e.querySelectorAll?Array.from(e.querySelectorAll('input[type="radio"][data-hcms-field]'),r=>[r,r.checked]):[],n=0;for(let r of e.children){if(!r.matches?.("[data-hcms-card], [data-hcms-array-item]"))continue;let o=r.getAttribute("data-hcms-path");if(!o)continue;let s=o.split(".");s[s.length-1]=String(n);let l=s.join(".");l!==o&&fm(r,o,l),n++}for(let[r,o]of t)r.checked!==o&&(r.checked=o)}function fm(e,t,n){let r=e.querySelectorAll("[data-hcms-path]");e.setAttribute("data-hcms-path",n);for(let o of r){let s=o.getAttribute("data-hcms-path");s===t?o.setAttribute("data-hcms-path",n):s&&s.startsWith(t+".")&&o.setAttribute("data-hcms-path",n+s.slice(t.length))}um(e)}function um(e){for(let t of e.querySelectorAll('input[type="radio"][data-hcms-field]')){if(!t.name||!t.name.startsWith("hcms-"))continue;let n=t.closest("[data-hcms-path]");n&&(t.name=Vi(n.getAttribute("data-hcms-path")))}}function Ro(e){return JSON.stringify(e,(t,n)=>{if(n&&typeof n=="object"&&!Array.isArray(n)){let r=Object.create(null);for(let o of Object.keys(n).sort())r[o]=n[o];return r}return n})}function oo(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}var bm={},Es="hcms-shell-styles",dm="hcms-bundled-styles-installed",_s="hcms-session-open",hm='a[href], area[href], button:not([disabled]), input:not([disabled]):not([type="hidden"]), select:not([disabled]), textarea:not([disabled]), [tabindex]:not([tabindex="-1"])',so=new WeakSet,tl="";function Yc(e){tl=e}function Io(e){e?.body?.classList.add(_s)}function nl(e){e?.body?.classList.remove(_s)}var mm=0;function Gc(e){return String(e).replace(/[&<>"]/g,t=>({"&":"&amp;","<":"&lt;",">":"&gt;",'"':"&quot;"})[t])}function Xc({mountTo:e,side:t="right",overlay:n=!1,showSaveButton:r=!1,title:o="Page content",eyebrow:s="Edit",theme:l=null,doc:i}){Jc(i);let a=`hcms-shell-title-${++mm}`,c=i.createElement("div");c.setAttribute("data-hcms-shell",""),c.setAttribute("editor-ui",""),c.setAttribute("save-remove",""),c.setAttribute("save-ignore",""),c.setAttribute("tabindex","-1"),c.setAttribute("role","dialog"),c.setAttribute("aria-modal","true"),c.setAttribute("aria-labelledby",a);let h=l==="dark"?" dark":l==="light"?" light":"";c.className="hcms-shell pixel-quiet hcms-panel hcms-side-"+t+(n?" hcms-overlay":"")+h;let u=Gc(o),f=Gc(s);c.innerHTML=`
154
155
  <div class="hcms-shell-minibar" aria-hidden="true">
155
- <span class="hcms-shell-minibar-title">${b}</span>
156
+ <span class="hcms-shell-minibar-title">${u}</span>
156
157
  <button type="button" class="hcms-shell-close mirk-button mirk-button--small" data-hcms-action="close" aria-label="Close">
157
158
  <span class="mirk-button__label">\xD7</span>
158
159
  </button>
@@ -161,7 +162,7 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
161
162
  <header class="hcms-shell-header">
162
163
  <div class="hcms-shell-heading">
163
164
  <div class="hcms-shell-eyebrow">${f}</div>
164
- <h2 class="hcms-shell-title" id="${a}">${b}</h2>
165
+ <h2 class="hcms-shell-title" id="${a}">${u}</h2>
165
166
  </div>
166
167
  <button type="button" class="hcms-shell-close mirk-button mirk-button--small" data-hcms-action="close" aria-label="Close">
167
168
  <span class="mirk-button__label">\xD7</span>
@@ -176,8 +177,8 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
176
177
  </button>
177
178
  </footer>
178
179
  </div>
179
- `,(e||l.body).appendChild(h);let m=l.body;m.classList.add("hcms-open"),Wr(l),n&&m.classList.add("hcms-overlay"),t==="left"&&m.classList.add("hcms-side-left");let p=Ad(h,l),v=wd(h);return{root:h,formRoot:h.querySelector("[data-hcms-form-root]"),noticeEl:h.querySelector(".hcms-shell-notice"),errorEl:h.querySelector(".hcms-shell-error"),saveButton:h.querySelector(".hcms-shell-save"),destroy(){p.detach(),v.detach(),h.remove(),m.classList.remove("hcms-open","hcms-overlay","hcms-side-left"),es(l)},restoreChrome(){Rn(l),m.classList.add("hcms-open"),Wr(l),n&&m.classList.add("hcms-overlay"),t==="left"&&m.classList.add("hcms-side-left")}}}function Rn(e){e&&(e.getElementById(Po)||e.querySelector("style[data-hcms-bundled-styles]")||(br.delete(e),Aa(e)))}function Aa(e){if(e&&!br.has(e)){if(e[yd]){br.add(e);return}if(e.getElementById(Po)||e.querySelector("style[data-hcms-bundled-styles]")){br.add(e);return}if(Qi){let t=e.createElement("style");t.id=Po,t.setAttribute("save-remove",""),t.setAttribute("save-ignore",""),t.textContent=Qi,(e.head||e.documentElement).appendChild(t),br.add(e);return}try{let t=new URL("./theme.generated.css",Sd.url).href,n=e.createElement("link");n.rel="stylesheet",n.id=Po,n.setAttribute("save-remove",""),n.setAttribute("save-ignore",""),n.href=t,(e.head||e.documentElement).appendChild(n),br.add(e)}catch{let n=()=>{link.isConnected&&console.warn("hypercms: shell stylesheet not applied \u2014 cssText is empty and the co-located theme fallback is unavailable. Call installStyles(themeText) before opening the CMS.")};e.defaultView?.queueMicrotask?e.defaultView.queueMicrotask(n):n()}}}function wd(e){let t=e.querySelector(".hcms-shell-body"),n=e.querySelector(".hcms-shell-header");if(!t||!n||typeof t.addEventListener!="function")return{detach(){}};let r=()=>{let o=(n.offsetHeight||0)-12;e.classList.toggle("is-condensed",t.scrollTop>o)};return t.addEventListener("scroll",r,{passive:!0}),r(),{detach(){t.removeEventListener("scroll",r)}}}function Ad(e,t){function n(r){if(r.key!=="Tab"||!e.contains(t.activeElement))return;let o=Array.from(e.querySelectorAll(xd));if(o.length===0)return;let i=o[0],s=o[o.length-1];r.shiftKey&&t.activeElement===i?(r.preventDefault(),s.focus()):!r.shiftKey&&t.activeElement===s&&(r.preventDefault(),i.focus())}return t.addEventListener("keydown",n),{detach:()=>t.removeEventListener("keydown",n)}}var Td="[hypercms]",Sa={skip:"[data-hcms-shell]",templateAttr:"cms-template"},Ta={skip:"[data-hcms-shell]",templateAttr:null},ts=class extends Error{constructor(t,n,r){super(`hypercms: rule at "${t}" has an invalid CSS selector: "${n}"`),this.name="InvalidRuleSelector",this.path=t,this.selector=n,this.cause=r}};function Bo(e,t){let n=[],r=[],o=[];return rs(kn(e),e,t,[],n,r,o),{missing:Ea(n),twins:Nd(r),readOnly:Ea(o)}}function Ho(e){return ns(e)}function ns(e){if(typeof e=="string")return _a(e)?void 0:e;if(Array.isArray(e)){let[t,n]=e;return[t,ns(n)]}if(e&&typeof e=="object"){let t={};for(let[n,r]of Object.entries(e)){let o=ns(r);o!==void 0&&(t[n]=o)}return t}return e}function rs(e,t,n,r,o,i,s){if(typeof n=="string"){let l=Ed(n),a=l?qo(e,t,l,Sa,r):[];if(_a(n)){s.push(kr(r));return}if(!l)return;if(n.endsWith("[]")){a.length===0&&qo(e,t,l,Ta,r).length===0&&o.push(kr(r));return}a.length===0?o.push(kr(r)):a.length>1&&i.push({path:kr(r),count:a.length});return}if(Array.isArray(n)){let[l,a]=n;if(typeof l!="string"||!l)return;let h=qo(e,t,l,Sa,r);if(h.length===0){qo(e,t,l,Ta,r).length===0&&o.push(kr(r));return}for(let d of h)rs(e,d,a,[...r,"*"],o,i,s);return}if(n&&typeof n=="object")for(let[l,a]of Object.entries(n))rs(e,t,a,[...r,l],o,i,s)}function qo(e,t,n,r,o){try{return e.find(t,n,r)}catch(i){throw new ts(kr(o),n,i)}}function Ed(e){if(e==="."||e.startsWith("@"))return null;if(e.endsWith("[]"))return e.slice(0,-2)||null;let t=St(e);return(t===-1?e:e.slice(0,t))||null}function _d(e){if(e.endsWith("[]"))return null;let t=St(e);return t===-1?null:e.slice(t+1)||null}function _a(e){let t=_d(e);return t!=null&&Mr.has(t)}function yr(e){Cd(e),Od(e)}function Cd(e){let t=e.noticeEl;if(!t)return;let n=e.unresolved&&e.unresolved.missing||[],r=e.unresolved&&e.unresolved.readOnly||[];if(n.length===0&&r.length===0){t.textContent="",t.hidden=!0;return}let o=[];if(n.length){let i=n.length===1?"1 field no longer matches this page":`${n.length} fields no longer match this page`;o.push(`${i}: ${n.join(", ")}`)}if(r.length){let i=r.length===1?"1 field reads a property the browser will not let anything write":`${r.length} fields read properties the browser will not let anything write`;o.push(`${i}: ${r.join(", ")}`)}t.textContent=o.join(`
180
- `),t.hidden=!1}function Od(e){let t=e.unresolved&&e.unresolved.twins||[],n=t.map(r=>`${r.path}:${r.count}`).join("|");if(n!==e.lastTwinSignature){e.lastTwinSignature=n;for(let{path:r,count:o}of t)console.warn(`${Td} "${r}" matches ${o} elements; edits go to the first one.`)}}function Ea(e){return[...new Set(e)]}function Nd(e){let t=new Map;for(let n of e){let r=t.get(n.path);(!r||n.count>r.count)&&t.set(n.path,n)}return[...t.values()]}function kr(e){return e.length?e.join("."):"(whole page)"}var Rd={skip:"[data-hcms-shell]",templateAttr:"cms-template"};function Mn(e,{ignoreActiveValue:t}={}){return Md(e,{ignoreActiveValue:t})}function Md(e,{ignoreActiveValue:t}){let n=Vt.findRules(e.doc,e.rulesSource||"cms");n&&(e.pageRules=e.view.prepareRules(n.rules),e.rulesTagNode=n.tagNode),xo(e.doc),To(e.doc,e.pageRules),e.formRules=_o(e.pageRules,e.doc),e.writeRules=Ho(e.pageRules),e.unresolved=Bo(e.pageRoot,e.pageRules);let r=bo(),o=Nn(Vt.extract(e.pageRoot,e.pageRules,{...Rd,...r.hooks}),e.pageRules),i=ar({pageRules:e.pageRules,formRules:e.formRules,data:o,doc:e.doc});go(e.formRoot,i,{ignoreActiveValue:t}),r.seed(e.formRoot),Cn(e.formRoot,e.doc,e.view?.enhanceFormRichText!==!1),Xi(e),yr(e),e.updateFingerprint&&e.updateFingerprint()}function Ca({debounce:e=100,onRefresh:t}){let n=It("Mutation");if(!n||typeof n.onAnyChange!="function")throw new Error("hypercms: a mutation hub is required (clay.Mutation or hyperclay.Mutation). Load clayjs or hyperclayjs, or just the mutation utility, before initializing hypercms.");let r=n.onAnyChange({debounce:e},o=>{t(o)});return{unsubscribe:typeof r=="function"?r:()=>{}}}var Ld='input:not([disabled]):not([type="hidden"]), textarea:not([disabled]), select:not([disabled]), button:not([disabled]), [tabindex]:not([tabindex="-1"])';function Oa({doc:e,pageRoot:t,opts:n={}}){let r=n.richText!==!1,o=null;return{name:"sidebar",richText:r,enhanceFormRichText:!0,ctx:null,root:null,formRoot:null,errorEl:null,noticeEl:null,prepareRules(i){return r?da(i,t):i},mount(i){let s=this.ctx;o=vn(()=>wa({mountTo:n.mountTo||e.body,side:n.side||"right",overlay:!!n.overlay,showSaveButton:!!n.showSaveButton,title:n.title,eyebrow:n.eyebrow,theme:n.theme,doc:e})),this.root=o.root,this.formRoot=o.formRoot,this.errorEl=o.errorEl,this.noticeEl=o.noticeEl;let l=ar({pageRules:s.pageRules,formRules:s.formRules,data:i,doc:e});o.formRoot.appendChild(l),s.seeder.seed(o.formRoot),Cn(o.formRoot,e),yr(s),Lo(s)},refresh(i){if(i==="livesync"){o?.restoreChrome?.(),Mn(this.ctx,{ignoreActiveValue:!0});return}if(i==="undo"){Mn(this.ctx,{ignoreActiveValue:!1});return}Mn(this.ctx)},focusOnOpen(){let i=this.root&&this.root.querySelector(Ld);i&&typeof i.focus=="function"&&i.focus()},destroy(){o?.destroy(),o=null}}}var Id="[cms-template], [data-hcms-shell]";function Kr(e){if(!e||typeof e.getBoundingClientRect!="function"||typeof e.closest=="function"&&e.closest(Id))return!1;let t=e.getBoundingClientRect();return t.width>=8&&t.height>=8}var jd={skip:"[data-hcms-shell]",templateAttr:"cms-template"},Dd={skip:"[data-hcms-shell]",templateAttr:null},Pd="text",Fd="native",Na="handle",qd=new Set(["INPUT","TEXTAREA","SELECT"]),La=new Set(["IMG","INPUT","TEXTAREA","SELECT","OPTION","BR","HR","VIDEO","AUDIO","IFRAME","EMBED","OBJECT","CANVAS","SOURCE","TRACK","AREA","COL","PARAM","BUTTON"]);function is(e,t){return Bd(e,t)}function Bd(e,t){let n=[],r=[],o=kn(e);return os(o,e,t,[],n,r),{targets:n,lists:r}}function os(e,t,n,r,o,i){if(typeof n=="string"){if(n.endsWith("[]")){let d=n.slice(0,-2);if(!d)return;let b=$o(e,t,d);b.forEach((f,u)=>{o.push(Ma([...r,u],f,n,null))}),i.push(Ra(e,t,r,d,b,!0));return}let s=St(n),l=s===-1?null:n.slice(s+1),a=s===-1?n:n.slice(0,s),h=!a||a==="."?t:$o(e,t,a)[0];h&&o.push(Ma(r,h,n,l));return}if(Array.isArray(n)){let[s,l]=n;if(typeof s!="string"||!s)return;let a=$o(e,t,s);a.forEach((h,d)=>os(e,h,l,[...r,d],o,i)),i.push(Ra(e,t,r,s,a,typeof l=="string"));return}if(n&&typeof n=="object")for(let[s,l]of Object.entries(n))os(e,t,l,[...r,s],o,i)}function Ra(e,t,n,r,o,i){let s=o[0]?o[0].parentElement:null;if(!s){let l=$o(e,t,r,Dd)[0];s=l?l.parentElement:null}return{path:n,items:o,container:s,scalar:i}}function Ma(e,t,n,r){return{path:e,el:t,rule:n,attr:r,kind:Hd(t,r),icon:Ud(t,r)}}function Hd(e,t){let n=(e.tagName||"").toUpperCase();return!t||t==="innerHTML"?La.has(n)?Na:Pd:t==="value"&&qd.has(n)&&!e.readOnly&&!$d(e)?Fd:Na}function $d(e){return e.disabled?!0:typeof e.matches=="function"&&e.matches(":disabled")}function Ud(e,t){let n=(e.tagName||"").toUpperCase();return(!t||t==="innerHTML")&&!La.has(n)?null:n==="IMG"||t==="srcset"?"camera":n==="A"&&t==="href"?"paperclip":"pencil"}function $o(e,t,n,r=jd){try{return e.find(t,n,r)}catch{return[]}}var Ia=Object.freeze({data:Object.freeze({tokens:["no-data"],bundles:["editor-ui"]}),save:Object.freeze({tokens:["no-save"],bundles:["editor-ui"]}),snapshot:Object.freeze({tokens:["no-snapshot"],bundles:["editor-ui"]}),watch:Object.freeze({tokens:["no-watch"],bundles:["editor-ui"]}),undo:Object.freeze({tokens:["no-undo"],bundles:["editor-ui"]}),history:Object.freeze({tokens:[],bundles:["editor-ui"]})}),zd=Object.freeze({"editor-ui":Object.freeze(["no-data","no-save","no-snapshot","no-watch","no-undo"])}),nk=Object.freeze(["no-save","no-snapshot","no-trigger-autosave","no-dirty","no-watch","no-undo","no-data","freeze","editor-ui"]);function ss(e,t){if(!e||e.nodeType!==1)return!1;let n=e.getAttribute?.("clay");return!!(n&&n.split(/\s+/).includes(t)||e.hasAttribute?.(t))}function Vd(e,t){if(ss(e,t))return!0;for(let[n,r]of Object.entries(zd))if(r.includes(t)&&ss(e,n))return!0;return!1}function Gr(e){let t=Ia[e];if(!t)throw new Error(`Unknown region capability: ${e}`);return[...t.tokens,...t.bundles].flatMap(n=>[`[clay~="${n}"]`,`[${n}]`]).join(", ")}function Wd(e,t){let n=e&&e.nodeType===1?e:e?.parentElement;for(;n&&n.nodeType===1;){let r=Ia[t];if(!r)throw new Error(`Unknown region capability: ${t}`);if(r.tokens.some(o=>Vd(n,o))||r.bundles.some(o=>ss(n,o)))return n;n=n.parentElement}return null}function ja(e,t){return!!Wd(e,t)}var Kd=/:(?:focus(?:-within|-visible)?|hover|active|visited|defined)\b/i;function Da(e,t){if(!/^(INPUT|TEXTAREA|SELECT|OPTION)$/.test(e.tagName||""))return;let n=(e.getAttribute?.("type")||"").toLowerCase();if("value"in e&&"value"in t&&e.tagName!=="OPTION"&&n!=="checkbox"&&n!=="radio"&&(t.value=e.value),"checked"in e&&"checked"in t&&(t.checked=e.checked),"selected"in e&&"selected"in t&&(t.selected=e.selected),e.tagName==="SELECT")for(let r=0;r<e.options.length;r++)t.options[r].selected=e.options[r].selected;"indeterminate"in e&&"indeterminate"in t&&(t.indeterminate=e.indeterminate)}function Pa(e,t,n,r){if(r)return!!e.closest?.(t);let o=e;for(;o?.nodeType===1;){if(o.matches(t))return!0;if(o===n)break;o=o.parentElement}return!1}function Fa(e,t,n,r,o,i,s,l){if(e.nodeType===1&&((s?ja(e,n):Pa(e,r,i,!1))||o&&Pa(e,o,i,s)))return null;let a=t.importNode(e,!1);l.cloneToLive.set(a,e),l.liveToClone.set(e,a);let h=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,d=a.nodeType===1&&a.tagName==="TEMPLATE"?a.content:a;h!==e&&(l.cloneToLive.set(d,h),l.liveToClone.set(h,d));for(let b of h.childNodes||[]){let f=Fa(b,t,n,r,o,i,s,l);f&&(d.appendChild(f),b.nodeType===1&&Da(b,f))}return e.nodeType===1&&Da(e,a),a}function ls(e,{capability:t="data",exclude:n=null,inherit:r=!0}={}){if(!e)throw new TypeError("createContentView requires a DOM context");let o=e.nodeType===9?e:e.ownerDocument;if(!o?.implementation?.createHTMLDocument)throw new TypeError("createContentView requires an HTML DOM implementation");let i=o.implementation.createHTMLDocument(""),s=new WeakMap,l=new WeakMap,a=e.nodeType===9?e.documentElement:e;n&&i.documentElement.matches(n);let h=Gr(t),d=Fa(a,i,t,h,n,a,r,{cloneToLive:s,liveToClone:l});e.nodeType===9&&d&&(i.replaceChild(d,i.documentElement),l.set(e,i),s.set(i,e));let b=f=>{if(Kd.test(f))throw new Error(`Filtered content queries do not support stateful selector: ${f}`)};return{root:d,document:i,capability:t,selector:Gr(t),cloneToLive:s,liveToClone:l,original(f){return s.get(f)||null},cloneOf(f){return l.get(f)||null},query(f,u=d){return b(f),Array.from(u.querySelectorAll(f),m=>s.get(m)||m)},text(f=d){return(f===d?d:l.get(f))?.textContent||""},html(f=d){return(f===d?d:l.get(f))?.innerHTML??""},clone(f=d){let u=f===d?d:l.get(f);return u?i.importNode(u,!0):null}}}var Gd=[16,8,0],jt=8,Yd=4;function qa({anchor:e,bar:t,rail:n=t,viewport:r,current:o=null}){let i=f=>o===f?Yd:0;if(e.bottom<=0||e.top>=r.height||e.right<=0||e.left>=r.width)return{mode:"hidden",x:0,y:0};let s=f=>Math.max(jt,Math.min(e.left,r.width-f-jt)),l=e.top-16-t.height;if(l>=jt-i("above"))return{mode:"above",x:s(t.width),y:l};let a=e.bottom+16;if(a+t.height<=r.height-jt+i("below"))return{mode:"below",x:s(t.width),y:a};let h=r.width-e.right-jt,d=e.left-jt,b=h>=d?[["rail-right",h],["rail-left",d]]:[["rail-left",d],["rail-right",h]];for(let[f,u]of b)for(let m of Gd){if(n.width+m>u+i(f))continue;let p=f==="rail-right"?Math.min(e.right+m,r.width-n.width-jt):Math.max(e.left-m-n.width,jt),v=Math.min(e.bottom,r.height-jt)-n.height,A=Math.max(jt,Math.min(Math.max(e.top,jt),v));return{mode:f,x:p,y:A,gap:m}}return{mode:"pinned",x:s(t.width),y:jt}}function as({anchor:e,handle:t,viewport:n,inset:r=6,prefer:o="auto"}){let i=e.height>=t.height*1.5&&e.width>=t.width*2;if(o==="corner"||i){let f=Math.max(jt,Math.min(e.right-t.width+r,n.width-t.width-jt)),u=Math.max(jt,Math.min(e.top-r,n.height-t.height-jt));return{x:f,y:u,mode:"over"}}let s=4,l=e.right+s+t.width<=n.width-jt,a=l?e.right+s:e.left-s-t.width,h=Math.max(jt,a),d=e.top+e.height/2-t.height/2,b=Math.max(jt,Math.min(d,n.height-t.height-jt));return{x:h,y:b,mode:l?"beside-right":"beside-left"}}var zo=!1;function Ba(){if(zo)return;let e=It("onPrepareForSave");typeof e=="function"&&(e(t=>{$a(t),Ha(t)}),zo=!0)}function Ha(e){let t=e&&e.querySelector&&e.querySelector("body");t&&t.classList.remove("hcms-open","hcms-overlay","hcms-side-left",Fo)}function $a(e){if(!(!e||typeof e.querySelectorAll!="function"))for(let t of e.querySelectorAll(`[${_n}]`)){let n=aa(t);n!==null&&(t.innerHTML=n),t.removeAttribute(_n)}}var Vo=!1;function Wo(){if(Vo)return;let e=It("onSnapshot");typeof e=="function"&&(e(t=>{$a(t),ua(t,typeof window<"u"?window:null),Ha(t)}),Vo=!0)}function Ua(){Ba(),Wo(),(!zo||!Vo)&&Xd()}var Uo=null;function Xd(){if(Uo||typeof document>"u")return;Uo=fr(document,ia,()=>{Ba(),Wo(),zo&&Vo&&(Uo?.(),Uo=null)})}var Jd={edit:"M8 10h2v6H8zm2 4h4v2h-4zm0-6h2v2h-2zm2-2h2v2h-2zm2-2h2v2h-2zm2-2h2v2h-2zm2 2h2v2h-2zm2 2h2v2h-2zm-2 2h2v2h-2zm-2 2h2v2h-2zm-2 2h2v2h-2zm-4 0h2v2h-2z","move-up":"M11 4h2v2h2v2h2v2h2v2h-4v-2h-2v10h-2V10H9v2H5v-2h2V8h2V6h2z","move-down":"M11 4h2v10h2v-2h4v2h-2v2h-2v2h-2v2h-2v-2H9v-2H7v-2H5v-2h4v2h2z",remove:"M5 5h3v3h3v3h2V8h3V5h3v3h-3v3h-3v2h3v3h3v3h-3v-3h-3v-3h-2v3H8v3H5v-3h3v-3h3v-2H8V8H5z",add:"M10 4h4v6h6v4h-6v6h-4v-6H4v-4h6z"};function $n(e){let t=e==="edit"?"6 0 18 18":"0 0 24 24",n=e==="settings"?'<circle cx="6" cy="12" r="1.5"/><circle cx="12" cy="12" r="1.5"/><circle cx="18" cy="12" r="1.5"/>':`<path d="${Jd[e]}"/>`;return`<svg class="hcms-inline-icon" xmlns="http://www.w3.org/2000/svg" viewBox="${t}" width="24" height="24" fill="currentColor" aria-hidden="true" focusable="false">${n}</svg>`}var za="data-hcms-ghost",Zd=Gr("history");function Qd(e){let t=e.container,n=null;for(;t&&(t.namespaceURI!=="http://www.w3.org/1999/xhtml"||["SELECT","OPTGROUP","DATALIST"].includes(t.tagName));)n=t,t=t.parentElement;return{parent:t,anchor:n}}function Va({doc:e,themeRoot:t,onAdd:n,onResize:r}){let o=e.defaultView,i=[],s=!1,l=null,a=new Map;function h(u,m,p){u.style[m]!==p&&(u.style[m]=p)}function d(){let u=new Set(i.map(m=>m.node.parentElement));for(let[m,p]of a)u.has(m)&&o?.Sortable?.get(m)===p.instance||(p.instance.option("draggable")===p.selector&&p.instance.option("draggable",p.original),a.delete(m));for(let m of u){let p=o?.Sortable?.get(m);if(!p)continue;let v=p.option("draggable");if(a.get(m)?.selector===v)continue;let A=v,L=`${A.trim().startsWith(">")?"> ":""}:is(${A.trim().replace(/^>\s*/,"")}):not(${Zd})`;p.option("draggable",L),a.set(m,{instance:p,original:A,selector:L})}}function b(){for(let u of i){let{node:m,slot:p,list:v}=u,A=v.items.filter(M=>M.isConnected).map(M=>M.getBoundingClientRect()).filter(M=>M.width>0&&M.height>0);A.length&&(u.width=A.reduce((M,L)=>M+L.width,0)/A.length,u.height=A.reduce((M,L)=>M+L.height,0)/A.length),h(m,"width",u.width?`${Math.round(u.width)}px`:"100%"),h(p,"height",`${Math.max(48,Math.round(u.height||64))}px`),p!==m&&(p.colSpan=Math.max(1,...v.items.map(M=>[...M.children].reduce((L,H)=>L+(H.colSpan||1),0)))),m.hidden!==s&&(m.hidden=s)}d()}function f(u,m){let p=m.tagName,v=["TBODY","THEAD","TFOOT","TABLE"].includes(p),A=e.createElement(v?"tr":["UL","OL","MENU"].includes(p)?"li":"div");for(let B of[za,"data-hcms-shell","editor-ui","no-watch","no-save","save-remove","snapshot-remove"])A.setAttribute(B,"");A.setAttribute("draggable","false"),A.setAttribute("contenteditable","false"),A.className="hcms-shell pixel-quiet hcms-inline-ghost";for(let B of["light","dark"])A.classList.toggle(B,!!t?.classList.contains(B));let M=v?e.createElement("td"):A;M!==A&&(M.className="hcms-inline-ghost-cell",A.appendChild(M));let L=e.createElement("button");L.type="button",L.className="hcms-inline-list-button hcms-inline-list-add mirk-button mirk-button--small",L.setAttribute("data-hcms-list-action","add"),L.innerHTML=`<span class="mirk-button__label">${$n("add")}<span>Add</span></span>`,M.appendChild(L);let H={node:A,slot:M,button:L,list:u,width:0,height:0};L.addEventListener("click",B=>{B.preventDefault(),B.stopPropagation(),n(H.list)});for(let B of["pointerdown","mousedown","touchstart","click"])A.addEventListener(B,te=>te.stopPropagation());return A.addEventListener("dragstart",B=>{B.preventDefault(),B.stopPropagation()}),H}return{setLists(u){let m=new Set(i),p=[],v=new Set(i.map(M=>M.node)),A=new Set;for(let M of u||[]){if(!M.container||!M.container.isConnected)continue;let{parent:L,anchor:H}=Qd(M);if(!L)continue;if(!A.has(L)){for(let re of L.querySelectorAll(`:scope > [${za}]`))v.has(re)||re.remove();A.add(L)}let B=i.find(re=>m.has(re)&&re.list.container===M.container&&re.list.path.join(".")===M.path.join("."))||f(M,L);m.delete(B),B.list=M,B.button.setAttribute("data-hcms-list",M.path.join(".")),B.button.setAttribute("aria-label",`Add to ${M.path.join(".")||"the list"}`);let te=H||M.items.filter(re=>re.parentElement===L).at(-1);te?te.nextSibling!==B.node&&te.after(B.node):B.node.parentElement!==L&&L.appendChild(B.node),p.push(B)}for(let M of m)M.node.remove();i=p,l?.disconnect(),!l&&typeof o?.ResizeObserver=="function"&&(l=new o.ResizeObserver(()=>{b(),r?.()}));for(let M of i)for(let L of M.list.items)l?.observe(L);b()},update:b,setHidden(u){s=!!u,b()},destroy(){l?.disconnect();for(let u of i)u.node.remove();i=[],d()}}}var Wa=[["move-up","Move up"],["move-down","Move down"]],eh={prefer:"corner",inset:0};function th(e,t){return t.width<=e.width&&t.height<=e.height}function Ka({doc:e,layerEl:t,onActivate:n,onListAction:r}){let o=e.defaultView,i=[],s=new Map,l=0,a=new Map,h=null,d=new Set,b=0,f=!1,u=null,m=null,p=null,v=null,A=new Map,M=!1,L=null,H=Va({doc:e,themeRoot:t.closest("[data-hcms-shell]"),onResize:te,onAdd:g=>r?.({action:"add",list:g,index:g.items.length})}),B=e.createElement("div");B.className="hcms-inline-highlight",B.hidden=!0,B.setAttribute("aria-hidden","true"),t.appendChild(B);function te(){if(!(b||!o)){if(typeof o.requestAnimationFrame!="function")return K();b=o.requestAnimationFrame(()=>{b=0,K()})}}let re=()=>p||v;function K(){if(!o)return;H.update();let g={width:o.innerWidth,height:o.innerHeight},y=re();for(let O of i){if(!O.visible){O.node.hidden=!0;continue}for(let ge of O.members)ge.node.hidden=M&&ge.kind!=="handle";O.node.hidden=!1;let _=O.el.getBoundingClientRect(),E=O.node.getBoundingClientRect(),I=E.width,N=O.kind==="row"&&!th(_,E);if(N&&O.el!==y){for(let ge of O.members)ge.kind==="row"&&(ge.node.hidden=!0);E=O.node.getBoundingClientRect()}if(O.members.every(ge=>ge.node.hidden)){O.node.hidden=!0;continue}let j=O.kind==="handle"?null:eh,{x:J,y:$}=as({anchor:_,handle:E,viewport:g,...j}),ce=O.members.find(ge=>ge.kind==="handle");if(N&&ce){let ge=ce.node.getBoundingClientRect(),ht=as({anchor:_,handle:ge,viewport:g}),ft=O.members.slice(O.members.indexOf(ce)+1).filter(ue=>!ue.node.hidden).reduce((ue,Ge)=>ue+Ge.node.getBoundingClientRect().width+2,0);J=Math.max(8+I,Math.min(g.width-8,ht.x+ge.width+ft))-E.width,$=ht.y}O.node.style.transform=`translate(${Math.round(J)}px, ${Math.round($)}px)`}if(L)if(!L.node.isConnected||L.node.closest("[hidden]"))C();else{let O=L.button.getBoundingClientRect(),_=L.menu.getBoundingClientRect();L.menu.style.left=`${Math.max(8,O.right-_.width)-O.left}px`,L.menu.style.right="auto",L.menu.style.top=O.bottom+6+_.height>g.height-8?"auto":"calc(100% + 6px)",L.menu.style.bottom=O.bottom+6+_.height>g.height-8?"calc(100% + 6px)":"auto"}xe(),u?.()}function W(g){if(g?.closest?.("[data-hcms-ghost]"))return null;for(let y=g;y&&y.nodeType===1;y=y.parentElement){let O=A.get(y);if(O)return O}return null}function he(g){L&&!L.node.contains(g.target)&&C();let y=re();v=W(g.target),v&&t.contains(g.target)&&(p=null),re()!==y&&te()}function V(g){if(g.relatedTarget||!v)return;let y=re();v=null,re()!==y&&te()}function xe(){if(!m||B.hidden)return;let g=m.getBoundingClientRect();B.style.width=`${Math.round(g.width)}px`,B.style.height=`${Math.round(g.height)}px`,B.style.transform=`translate(${Math.round(g.left)}px, ${Math.round(g.top)}px)`}function We(){if(!o||typeof o.IntersectionObserver!="function"){for(let y of i)y.visible=!0;return}h||(h=new o.IntersectionObserver(y=>{let O=!1;for(let _ of y)for(let E of s.get(_.target)||[])E.visible!==_.isIntersecting&&(E.visible=_.isIntersecting,O=!0);O&&te()},{threshold:0}));let g=new Set(s.keys());for(let y of d)g.has(y)||h.unobserve(y);for(let y of g)d.has(y)||h.observe(y);d=g}function at(){f||!o||(o.addEventListener("scroll",te,{passive:!0,capture:!0}),o.addEventListener("resize",te,{passive:!0}),e.addEventListener("focusin",he),e.addEventListener("focusout",V),e.addEventListener("pointerdown",G,!0),e.addEventListener("keydown",ye,!0),f=!0)}function Nt(){!f||!o||(o.removeEventListener("scroll",te,{capture:!0}),o.removeEventListener("resize",te),e.removeEventListener("focusin",he),e.removeEventListener("focusout",V),e.removeEventListener("pointerdown",G,!0),e.removeEventListener("keydown",ye,!0),f=!1)}function xt(g){return`${g.kind}\0${g.attr||""}`}function _e(g,y){return g.container===y.container&&g.scalar===y.scalar}function dt(g,y){return g.kind!==y.kind?!1:g.kind==="handle"?xt(g.target)===xt(y.target):g.kind==="row"?g.row===y.row&&_e(g.list,y.list):_e(g.list,y.list)}function Ze(g,y){g.target=y;let O=y.path.join(".");g.node.setAttribute("data-hcms-target",O),y.icon?g.node.setAttribute("data-hcms-icon",y.icon):g.node.removeAttribute("data-hcms-icon"),g.node.setAttribute("aria-label",`Edit ${O}`)}function Rt(g){let y=e.createElement("button");y.type="button",y.className="hcms-inline-handle mirk-button mirk-button--small",y.innerHTML=`<span class="mirk-button__label">${$n("edit")}</span>`;let O={node:y,kind:"handle",target:g};return Ze(O,g),y.addEventListener("click",_=>{_.preventDefault(),_.stopPropagation(),n?.(O.target,y)}),O}function nt(g,y){let O=e.createElement("button");return O.type="button",O.className="hcms-inline-list-button mirk-button mirk-button--small",O.setAttribute("data-hcms-list-action",g),O.setAttribute("aria-label",y),O.innerHTML=`<span class="mirk-button__label">${$n(g)}${g==="add"?"<span>Add</span>":""}</span>`,O}function Qe(g,{list:y,row:O,rowIndex:_,count:E}){let I=y.path.join(".");g.list=y,g.row=O,g.index=_,g.count=E,g.node.setAttribute("data-hcms-list",I),g.node.setAttribute("data-hcms-row",String(_));for(let N of g.node.querySelectorAll("[data-hcms-list-action]")){let j=N.getAttribute("data-hcms-list-action"),J=Wa.find(([$])=>$===j)?.[1]||j;N.setAttribute("aria-label",`${J} ${I}.${_}`),N.disabled=j==="move-up"&&_===0||j==="move-down"&&_===E-1}}function ct(g,y,O,_){let E=e.createElement("div");E.className="hcms-inline-row-controls";let I={node:E,kind:"row",list:g,row:y,index:O,count:_};for(let[N,j]of Wa){let J=nt(N,j);J.addEventListener("click",$=>{$.preventDefault(),$.stopPropagation(),!J.disabled&&r?.({action:N,list:I.list,index:I.index,row:I.row})}),E.appendChild(J)}return Qe(I,{list:g,row:y,rowIndex:O,count:_}),I}function C(g=!1){if(!L)return;let y=L;L=null,y.menu.hidden=!0,y.button.setAttribute("aria-expanded","false"),y.node.parentElement?.classList.remove("has-open-settings"),g&&y.button.isConnected&&y.button.focus({preventScroll:!0})}function G(g){L&&!L.node.contains(g.target)&&C()}function ye(g){L&&(g.key==="Escape"?(g.preventDefault(),g.stopPropagation(),C(!0)):g.key==="Tab"?C(!0):["ArrowDown","ArrowUp","Home","End"].includes(g.key)&&L.menu.contains(g.target)&&(g.preventDefault(),L.menu.querySelector('[role="menuitem"]').focus({preventScroll:!0})))}function se(g,{list:y,row:O,rowIndex:_}){Object.assign(g,{list:y,row:O,index:_}),g.node.setAttribute("data-hcms-list",y.path.join(".")),g.node.setAttribute("data-hcms-row",String(_)),g.button.setAttribute("aria-label",`Settings ${y.path.join(".")}.${_}`)}function Ce(g){let y=e.createElement("div");y.className="hcms-inline-settings";let O=nt("settings","Settings");O.setAttribute("aria-haspopup","menu"),O.setAttribute("aria-expanded","false");let _=e.createElement("div");_.className="hcms-inline-settings-menu",_.setAttribute("role","menu"),_.setAttribute("aria-label","Item settings"),_.hidden=!0;let E=e.createElement("button");E.type="button",E.setAttribute("role","menuitem"),E.setAttribute("data-hcms-list-action","remove"),E.textContent="Delete",_.appendChild(E),y.append(O,_);let I={node:y,button:O,menu:_,kind:"settings"};se(I,g);let N=()=>{C(),L=I,_.hidden=!1,O.setAttribute("aria-expanded","true"),y.parentElement.classList.add("has-open-settings"),E.focus({preventScroll:!0}),te()};return O.addEventListener("click",j=>{j.preventDefault(),j.stopPropagation(),L===I?C(!0):N()}),O.addEventListener("keydown",j=>{(j.key==="ArrowDown"||j.key==="ArrowUp")&&(j.preventDefault(),N())}),E.addEventListener("click",j=>{j.preventDefault(),j.stopPropagation(),C(!0),r?.({action:"remove",list:I.list,index:I.index,row:I.row})}),I}function rt(g,y){g.kind==="handle"?Ze(g,y.target):g.kind==="row"?Qe(g,y):g.kind==="settings"&&se(g,y)}function Ve(g,y,O,_,E){let I=y.get(O)?.find(N=>N.category===E);if(!I){I={el:O,category:E,members:[]},g.push(I);let N=y.get(O);N?N.push(I):y.set(O,[I])}I.members.push(_)}function Ke(g,y,O){let _=O.items||[];_.forEach((E,I)=>{Kr(E)&&(Ve(g,y,E,{kind:"row",list:O,row:E,rowIndex:I,count:_.length},"item"),Ve(g,y,E,{kind:"settings",list:O,row:E,rowIndex:I},"item"))})}function et(g,y){let O=new Set(g.members),_=[];for(let E of y){let I=g.members.find(N=>O.has(N)&&dt(N,E))||(E.kind==="handle"?Rt(E.target):E.kind==="row"?ct(E.list,E.row,E.rowIndex,E.count):Ce(E));O.delete(I),rt(I,E),M&&I.kind!=="handle"&&(I.node.hidden=!0),_.push(I)}for(let E of O)E===L&&C(),E.node.remove();_.sort((E,I)=>["row","handle","settings"].indexOf(E.kind)-["row","handle","settings"].indexOf(I.kind)),_.forEach((E,I)=>{g.node.children[I]!==E.node&&g.node.insertBefore(E.node,g.node.children[I]||null)}),g.members=_}function ut(g,y){let O=[],_=new Map,E=new Map,I=0;for(let $ of g||[])E.has($.el)||E.set($.el,$),!($.kind!=="handle"||!Kr($.el))&&(Ve(O,_,$.el,{kind:"handle",target:$},"item"),I++);for(let $ of y||[])Ke(O,_,$);let N=new Set(i),j=new Map;for(let $ of i)j.has($.el)||j.set($.el,$.visible);let J=[];for(let $ of O){let ce=i.find(ge=>N.has(ge)&&ge.el===$.el&&ge.category===$.category);if(!ce){let ge=e.createElement("div");ge.className="hcms-inline-item-controls",ge.setAttribute("role","group"),ce={el:$.el,node:ge,category:$.category,kind:$.category==="add"?"add":"handle",members:[],visible:j.get($.el)??!1},t.appendChild(ge)}N.delete(ce),ce.el=$.el,ce.category=$.category,et(ce,$.members),ce.kind=ce.members.some(ge=>ge.kind==="row")?"row":ce.members.some(ge=>ge.kind==="handle")?"handle":"add",ce.node.setAttribute("aria-label",ce.category==="add"?"List controls":"Item controls"),J.push(ce)}for(let $ of N)$.node.remove();i=J,s=new Map,A=new Map;for(let $ of i){let ce=s.get($.el);ce?ce.push($):s.set($.el,[$]);for(let ge of $.members)ge.kind!=="row"&&ge.kind!=="settings"||(A.set(ge.row,ge.row),A.set(ge.node,ge.row),A.set($.node,ge.row))}p&&!A.has(p)&&(p=null),v&&!A.has(v)&&(v=null),a=E,l=I}function k(){C(),h?.disconnect(),h=null,d=new Set;for(let g of i)g.node.remove();i=[],s=new Map,a=new Map,A=new Map,l=0}return{setTargets(g,y){ut(g,y),H.setLists(y),We(),at(),te()},refresh:te,get count(){return l},get controlsHidden(){return M},setControlsHidden(g){if(M=!!g,H.setHidden(M),M){C();for(let y of i){for(let O of y.members)O.kind!=="handle"&&(O.node.hidden=!0);y.members.every(O=>O.node.hidden)&&(y.node.hidden=!0)}}te()},elementToTarget(g){if(g?.closest?.("[data-hcms-ghost]"))return null;for(let y=g;y&&y.nodeType===1;y=y.parentElement){let O=a.get(y);if(O)return O}return null},setHoveredRow(g){let y=re();p=g?W(g):null,re()!==y&&te()},showHighlight(g){g&&(m=g,B.hidden=!1,xe())},hideHighlight(){m=null,B.hidden=!0},setFollower(g){u=typeof g=="function"?g:null},destroy(){H.destroy(),b&&o&&o.cancelAnimationFrame(b),b=0,u=null,m=null,p=null,v=null,B.remove(),Nt(),k()}}}var nh="hypercms-inline",Jr="is-hcms-inline-active",cs="is-hcms-inline-onpath",Ga='input:not([disabled]):not([type="hidden"]), textarea:not([disabled]), select:not([disabled]), button:not([disabled]), [tabindex]:not([tabindex="-1"])',rh=["bold","italic","link","undo","redo"],oh=/^H[1-6]$/,ih=0;function Ja({doc:e,pageRoot:t,opts:n={}}){let r=n.richText!==!1,o=null,i=null,s=null,l=new Map,a=null,h=null,d=null;function b(f,u,m,p,v){let A=dr(e.defaultView);if(typeof A!="function")return null;let M=v||{},L=M.originalHTML??ls(u,{capability:"history"}).html(),H=M.richClayIsOurs??!u.hasAttribute("data-richclay"),B=M.adopted??u.getAttribute("data-richclay-active")==="true",te=Yr(u,p,"history"),re=sh(f,A,u,p,H);if(!re)return null;ca(u,p==="innerHTML",H);let K=String(++ih);u.setAttribute(_n,K),Wo();let W={el:u,editor:re,path:m,prop:p,boundId:K,originalHTML:L,oldValue:te,richClayIsOurs:H,adopted:B,dirty:!1,written:!1,restorable(){return!this.adopted&&!this.dirty&&!this.written},lastEdited:void 0};l.set(u,W),sa(K,W);let he=re.squire;if(he&&typeof he.addEventListener=="function"){let xe=()=>{W.dirty=!0,W.lastEdited=Yr(u,W.prop,"history"),lh(f,W)};he.addEventListener("input",xe),W.detachInput=()=>he.removeEventListener?.("input",xe)}let V=()=>Za(W);return u.addEventListener("blur",V),W.detachBlur=()=>u.removeEventListener("blur",V),W}return{name:"inline",richText:r,ctx:null,root:null,formRoot:null,errorEl:null,noticeEl:null,handoffEl:null,handoffCountEl:null,popEl:null,enhanceFormRichText:!1,prepareRules(f){return r?ha(f,t):f},bindText(f,u,m,p){return b(this.ctx,f,u,m,p)},mount(f){let u=this.ctx;o=dh(e,n.theme),this.root=o.root,this.formRoot=o.formRoot,this.errorEl=o.errorEl,this.noticeEl=o.noticeEl,this.handoffEl=o.handoffEl,this.handoffCountEl=o.handoffCountEl,this.popEl=o.popEl,vn(()=>Wr(e));let m=ar({pageRules:u.pageRules,formRules:u.formRules,data:f,doc:e});o.formRoot.appendChild(m),u.seeder.seed(o.formRoot),Cn(o.formRoot,e,this.enhanceFormRichText),yr(u),Lo(u),i=Ka({doc:e,layerEl:o.layerEl,onActivate:(p,v)=>this.activate(p,v),onListAction:p=>this.listAction(p)}),i.setFollower(()=>this.placePopover()),o.closeEl.addEventListener("click",()=>this.deactivate()),o.toggleEl.addEventListener("click",p=>{p.preventDefault(),p.stopPropagation(),this.toggleControls()}),o.handoffEl.querySelector("[data-hcms-open-view]").addEventListener("click",p=>{p.preventDefault(),p.stopPropagation(),u.onViewRequested?.("sidebar")}),this.bindPage(),this.syncTargets()},listAction({action:f,list:u,index:m,row:p}){let v=this.ctx,A=u.path.join("."),M=v.formRoot.querySelector(`[data-hcms-path="${gr(A)}"]`);if(!M)return;if(f==="add"){zr(A,v);return}let L=p?mh(v,A,p):m;if(L===-1)return;let H=hh(M,L);if(H){if(f==="remove"){Yi(H,v),this.syncTargets();return}Gi(H,f==="move-up"?-1:1,v),this.syncTargets()}},toggleControls(){if(!i||!o)return;let f=!i.controlsHidden;i.setControlsHidden(f),o.toggleEl.setAttribute("aria-pressed",String(f));let u=o.toggleEl.querySelector(".mirk-button__label");u&&(u.textContent=f?"Show controls":"Hide controls")},bindPage(){let f=this.ctx.pageRoot,u=o.root,m=H=>{let B=i&&i.elementToTarget(H.target);B?i.showHighlight(B.el):i?.hideHighlight(),i?.setHoveredRow(H.target)},p=()=>{i?.hideHighlight(),i?.setHoveredRow(null)},v=H=>{if(u.contains(H.target))return;let B=i&&i.elementToTarget(H.target);!B||B.kind!=="text"||l.has(B.el)||b(this.ctx,B.el,B.path.join("."),Go(B))},A=H=>{if(u.contains(H.target))return;let B=i&&i.elementToTarget(H.target);if(!B){this.deactivate();return}(typeof H.target.closest=="function"&&H.target.closest("a[href]")||B.kind!=="text")&&H.preventDefault(),this.activate(B)},M=H=>{H.key==="Escape"&&this.deactivate()},L=H=>{let B=H.detail;if(!(!B||B.pageRoot!==this.ctx.pageRoot||!B.path))for(let te of l.values())te.path===B.path&&(te.written=!0)};f.addEventListener("pointerover",m),f.addEventListener("pointerleave",p),f.addEventListener("pointerdown",v),f.addEventListener("click",A),u.addEventListener("keydown",M),e.addEventListener("hcms:change",L),s=()=>{f.removeEventListener("pointerover",m),f.removeEventListener("pointerleave",p),f.removeEventListener("pointerdown",v),f.removeEventListener("click",A),u.removeEventListener("keydown",M),e.removeEventListener("hcms:change",L)}},activate(f,u){if(!f||!o||f.kind==="text"&&this.activateText(f))return;let m=Ya(this,o,f.path.join("."));if(!m){this.deactivate();return}a=f,h=u||null,d=null,o.popEl.hidden=!1,o.formRoot.querySelectorAll(`.${Jr}`).forEach(Xa),this.placePopover(),fh(m)},activateText(f){let u=f.el,m=l.get(u);if(m)return Ko(m),!0;let p=b(this.ctx,u,f.path.join("."),Go(f));return p?(Ko(p),!0):!1},placePopover(){if(!o||!a||o.popEl.hidden)return;let f=e.defaultView;if(!f)return;let u={width:f.innerWidth,height:f.innerHeight},m=a.el.getBoundingClientRect(),p=o.popEl.getBoundingClientRect(),{mode:v,x:A,y:M}=qa({anchor:m,bar:p,viewport:u,current:d});d=v,o.popEl.style.transform=`translate(${Math.round(A)}px, ${Math.round(M)}px)`},deactivate(){if(!o||!a&&o.popEl.hidden)return;o.popEl.hidden=!0,ec(o.root);let f=h;if(a=null,h=null,d=null,f&&e.contains(f)&&typeof f.focus=="function")try{f.focus({preventScroll:!0})}catch{f.focus()}},syncTargets(){if(!i)return;let f=this.ctx,{targets:u,lists:m}=is(f.pageRoot,f.pageRules);i.setTargets(u,m);let p=ah(this,l,u,e);if(a){let A=p.get(a.el)||[],M=A.find(L=>ch(L,a))||A.find(L=>L.path.join(".")===a.path.join("."))||(A.length===1?A[0]:null);M?a=M:this.deactivate()}uh(this.ctx,l,e);let v=u.reduce((A,M)=>A+(Kr(M.el)?0:1),0);this.handoffEl&&(this.handoffCountEl.textContent=v===0?"":`${v} ${v===1?"field isn't":"fields aren't"} visible right now.`,this.handoffEl.hidden=v===0)},refresh(f,u){f==="livesync"?(Rn(e),Wr(e),Mn(this.ctx,{ignoreActiveValue:!0})):f==="undo"?Mn(this.ctx,{ignoreActiveValue:!1}):Mn(this.ctx),this.syncTargets(),(f==="livesync"||f==="undo")&&this.rebindText(f),this.restoreActive()},rebindText(f){let u=f!=="undo";for(let[m,p]of[...l]){if(!e.contains(m)){Xr(this.ctx,p,{restore:!1,record:u}),l.delete(m);continue}if(m.hasAttribute(dn)){let M=Yr(m,p.prop);M!==p.lastEdited&&(p.oldValue=M,p.lastEdited=void 0);continue}let v=e.activeElement===m;Xr(this.ctx,p,{restore:!1,record:u}),l.delete(m);let A=b(this.ctx,m,p.path,p.prop,{richClayIsOurs:p.richClayIsOurs,adopted:p.adopted});A&&v&&Ko(A)}},restoreActive(){if(!o||!a||o.popEl.hidden)return;if(!e.contains(a.el)){this.deactivate();return}if(!Ya(this,o,a.path.join("."))){this.deactivate();return}o.formRoot.querySelectorAll(`.${Jr}`).forEach(Xa),this.placePopover()},focusOnOpen(){if(this.root&&typeof this.root.focus=="function")try{this.root.focus({preventScroll:!0})}catch{this.root.focus()}},destroy(){h=null,this.deactivate();for(let f of l.values())Xr(this.ctx,f);l.clear(),s?.(),s=null,i?.destroy(),i=null,o?.destroy(),o=null,es(e),this.popEl=null,this.handoffEl=null,this.handoffCountEl=null}}}function sh(e,t,n,r,o){return vn(()=>{let i=null;try{i=new t(n,{inline:!0,hyperclay:!1,toolbar:r==="innerHTML"?rh:!1,...oh.test(n.tagName)?{singleLine:!0}:null})}catch(s){return console.warn("[hypercms] richclay activation failed; the field falls back to the popover",s),null}if(i.unsupported||!i.active){if(o)try{i.destroy()}catch{}return null}return typeof i.reattach=="function"&&i.reattach(),i})}function lh(e,{path:t,el:n,prop:r}){let o=Io(e.formRoot,t);o&&(jo(o,Yr(n,r),e.formRoot,t),tn(Gt(e),{path:t,structural:!1},e))}function Yr(e,t,n="data"){let r=ls(e,{capability:n});return t==="innerHTML"?r.html():r.text().trim()}function Za(e){let{el:t,prop:n,oldValue:r,lastEdited:o}=e,i=o;if(i===void 0||i===r)return;e.oldValue=i;let s=It("undo");if(!s||typeof s.recordValue!="function")return;let l={prop:n,oldValue:r,newValue:i,read:a=>Yr(a,n,"history"),write:(a,h)=>Qa(a,n,h)};s.isPaused?queueMicrotask(()=>{t.isConnected&&s.recordValue(t,l)}):s.recordValue(t,l)}function Qa(e,t,n){let r=e.cloneNode(!1);t==="innerHTML"?r.innerHTML=n:r.textContent=n,Tn(e,Array.from(r.childNodes),{morphStyle:"innerHTML",policy:"history",restoreFocus:!1,scripts:{handle:!1,merge:!1}})}function Xr(e,t,{restore:n=!0,record:r=!0}={}){r&&Za(t),t.detachInput?.(),t.detachBlur?.(),vn(()=>{if(!t.adopted){try{t.editor.destroy()}catch(o){console.warn("[hypercms] richclay teardown failed; editor state may reach the save",o)}t.richClayIsOurs&&t.el.removeAttribute("data-richclay")}t.el.removeAttribute(dn),t.el.removeAttribute(Bn),t.el.removeAttribute(_n),la(t.boundId),n&&t.restorable()&&Qa(t.el,"innerHTML",t.originalHTML)})}function Ko(e){let{editor:t,el:n}=e;if(n.ownerDocument.activeElement!==n)try{typeof t.focus=="function"?t.focus():n.focus()}catch{}}function ah(e,t,n,r){let o=new Map;for(let i of n){let s=o.get(i.el);s?s.push(i):o.set(i.el,[i])}for(let[i,s]of[...t]){let l=o.get(i)||[],a=l.find(f=>Go(f)===s.prop)||l[0];if(!a){Xr(e.ctx,s,{restore:!0}),t.delete(i);continue}s.path=a.path.join(".");let h=Go(a);if(h===s.prop)continue;let d=r.activeElement===i;Xr(e.ctx,s,{restore:!1}),t.delete(i);let b=e.bindText(i,s.path,h,{richClayIsOurs:s.richClayIsOurs,adopted:s.adopted,originalHTML:s.originalHTML});b&&d&&Ko(b)}return o}function ch(e,t){return e.el===t.el&&e.kind===t.kind&&e.attr===t.attr}function Go(e){return e.attr==="innerHTML"?"innerHTML":"textContent"}function uh(e,t,n){for(let r of e.pageRoot.querySelectorAll(`[${dn}]`))t.has(r)||vn(()=>fa(r,n.defaultView))}function Ya(e,t,n){let r=e.formRoot&&e.formRoot.querySelector(`[data-hcms-path="${gr(n)}"]`);if(ec(t.root),!r)return null;let o=r.closest("[data-hcms-card]"),i=o?[...o.querySelectorAll('[data-hcms-shape="scalar"][data-hcms-path]')].filter(s=>s.closest("[data-hcms-card]")===o&&s.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]')===o.parentElement.closest('[data-hcms-shape="object-array"]')):[r];i.includes(r)||i.push(r);for(let s of i){s.classList.add(Jr),s.removeAttribute("draggable");for(let l=s.parentElement;l&&(l.classList.add(cs),l.removeAttribute("draggable"),l!==e.formRoot);l=l.parentElement);}return r}function ec(e){if(e)for(let t of e.querySelectorAll(`.${Jr}, .${cs}`))t.classList.remove(Jr,cs)}function Xa(e){e.tagName==="TEXTAREA"&&hr(e),e.querySelectorAll?.("textarea").forEach(hr)}function fh(e){let t=e.matches?.(Ga)?e:e.querySelector?.(Ga);if(!(!t||typeof t.focus!="function"))try{t.focus({preventScroll:!0})}catch{t.focus()}}function dh(e,t){Rn(e);let n=e.createElement(nh),r=t==="dark"?" dark":t==="light"?" light":"";return n.className="hcms-shell pixel-quiet hcms-inline"+r,n.setAttribute("data-hcms-shell",""),n.setAttribute("editor-ui",""),n.setAttribute("no-save",""),n.setAttribute("save-remove",""),n.setAttribute("snapshot-remove",""),n.setAttribute("no-watch",""),n.setAttribute("tabindex","-1"),n.innerHTML=`
180
+ `,(e||i.body).appendChild(c);let p=i.body;p.classList.add("hcms-open"),Io(i),n&&p.classList.add("hcms-overlay"),t==="left"&&p.classList.add("hcms-side-left");let y=gm(c,i),m=pm(c);return{root:c,formRoot:c.querySelector("[data-hcms-form-root]"),noticeEl:c.querySelector(".hcms-shell-notice"),errorEl:c.querySelector(".hcms-shell-error"),saveButton:c.querySelector(".hcms-shell-save"),destroy(){y.detach(),m.detach(),c.remove(),p.classList.remove("hcms-open","hcms-overlay","hcms-side-left"),nl(i)},restoreChrome(){dr(i),p.classList.add("hcms-open"),Io(i),n&&p.classList.add("hcms-overlay"),t==="left"&&p.classList.add("hcms-side-left")}}}function dr(e){e&&(e.getElementById(Es)||e.querySelector("style[data-hcms-bundled-styles]")||(so.delete(e),Jc(e)))}function Jc(e){if(e&&!so.has(e)){if(e[dm]){so.add(e);return}if(e.getElementById(Es)||e.querySelector("style[data-hcms-bundled-styles]")){so.add(e);return}if(tl){let t=e.createElement("style");t.id=Es,t.setAttribute("save-remove",""),t.setAttribute("save-ignore",""),t.textContent=tl,(e.head||e.documentElement).appendChild(t),so.add(e);return}try{let t=new URL("./theme.generated.css",bm.url).href,n=e.createElement("link");n.rel="stylesheet",n.id=Es,n.setAttribute("save-remove",""),n.setAttribute("save-ignore",""),n.href=t,(e.head||e.documentElement).appendChild(n),so.add(e)}catch{let n=()=>{link.isConnected&&console.warn("hypercms: shell stylesheet not applied \u2014 cssText is empty and the co-located theme fallback is unavailable. Call installStyles(themeText) before opening the CMS.")};e.defaultView?.queueMicrotask?e.defaultView.queueMicrotask(n):n()}}}function pm(e){let t=e.querySelector(".hcms-shell-body"),n=e.querySelector(".hcms-shell-header");if(!t||!n||typeof t.addEventListener!="function")return{detach(){}};let r=()=>{let o=(n.offsetHeight||0)-12;e.classList.toggle("is-condensed",t.scrollTop>o)};return t.addEventListener("scroll",r,{passive:!0}),r(),{detach(){t.removeEventListener("scroll",r)}}}function gm(e,t){function n(r){if(r.key!=="Tab"||!e.contains(t.activeElement))return;let o=Array.from(e.querySelectorAll(hm));if(o.length===0)return;let s=o[0],l=o[o.length-1];r.shiftKey&&t.activeElement===s?(r.preventDefault(),l.focus()):!r.shiftKey&&t.activeElement===l&&(r.preventDefault(),s.focus())}return t.addEventListener("keydown",n),{detach:()=>t.removeEventListener("keydown",n)}}var km="[hypercms]",Zc={skip:"[data-hcms-shell]",templateAttr:"cms-template"},Qc={skip:"[data-hcms-shell]",templateAttr:null},rl=class extends Error{constructor(t,n,r){super(`hypercms: rule at "${t}" has an invalid CSS selector: "${n}"`),this.name="InvalidRuleSelector",this.path=t,this.selector=n,this.cause=r}};function Ns(e,t){let n=[],r=[],o=[];return sl(Xn(e),e,t,[],n,r,o),{missing:ef(n),twins:Am(r),readOnly:ef(o)}}function Cs(e){return ol(e)}function ol(e){if(typeof e=="string")return tf(e)?void 0:e;if(Array.isArray(e)){let[t,n]=e;return[t,ol(n)]}if(e&&typeof e=="object"){let t={};for(let[n,r]of Object.entries(e)){let o=ol(r);o!==void 0&&(t[n]=o)}return t}return e}function sl(e,t,n,r,o,s,l){if(typeof n=="string"){let i=ym(n),a=i?Os(e,t,i,Zc,r):[];if(tf(n)){l.push(io(r));return}if(!i)return;if(n.endsWith("[]")){a.length===0&&Os(e,t,i,Qc,r).length===0&&o.push(io(r));return}a.length===0?o.push(io(r)):a.length>1&&s.push({path:io(r),count:a.length});return}if(Array.isArray(n)){let[i,a]=n;if(typeof i!="string"||!i)return;let c=Os(e,t,i,Zc,r);if(c.length===0){Os(e,t,i,Qc,r).length===0&&o.push(io(r));return}for(let h of c)sl(e,h,a,[...r,"*"],o,s,l);return}if(n&&typeof n=="object")for(let[i,a]of Object.entries(n))sl(e,t,a,[...r,i],o,s,l)}function Os(e,t,n,r,o){try{return e.find(t,n,r)}catch(s){throw new rl(io(o),n,s)}}function ym(e){if(e==="."||e.startsWith("@"))return null;if(e.endsWith("[]"))return e.slice(0,-2)||null;let t=rn(e);return(t===-1?e:e.slice(0,t))||null}function xm(e){if(e.endsWith("[]"))return null;let t=rn(e);return t===-1?null:e.slice(t+1)||null}function tf(e){let t=xm(e);return t!=null&&Ur.has(t)}function lo(e){vm(e),wm(e)}function vm(e){let t=e.noticeEl;if(!t)return;let n=e.unresolved&&e.unresolved.missing||[],r=e.unresolved&&e.unresolved.readOnly||[];if(n.length===0&&r.length===0){t.textContent="",t.hidden=!0;return}let o=[];if(n.length){let s=n.length===1?"1 field no longer matches this page":`${n.length} fields no longer match this page`;o.push(`${s}: ${n.join(", ")}`)}if(r.length){let s=r.length===1?"1 field reads a property the browser will not let anything write":`${r.length} fields read properties the browser will not let anything write`;o.push(`${s}: ${r.join(", ")}`)}t.textContent=o.join(`
181
+ `),t.hidden=!1}function wm(e){let t=e.unresolved&&e.unresolved.twins||[],n=t.map(r=>`${r.path}:${r.count}`).join("|");if(n!==e.lastTwinSignature){e.lastTwinSignature=n;for(let{path:r,count:o}of t)console.warn(`${km} "${r}" matches ${o} elements; edits go to the first one.`)}}function ef(e){return[...new Set(e)]}function Am(e){let t=new Map;for(let n of e){let r=t.get(n.path);(!r||n.count>r.count)&&t.set(n.path,n)}return[...t.values()]}function io(e){return e.length?e.join("."):"(whole page)"}var Sm={skip:"[data-hcms-shell]",templateAttr:"cms-template"};function hr(e,{ignoreActiveValue:t}={}){return Tm(e,{ignoreActiveValue:t})}function Tm(e,{ignoreActiveValue:t}){let n=pn.findRules(e.doc,e.rulesSource||"cms");n&&(e.pageRules=e.view.prepareRules(n.rules),e.rulesTagNode=n.tagNode),cs(e.doc),ms(e.doc,e.pageRules),e.formRules=gs(e.pageRules,e.doc),e.writeRules=Cs(e.pageRules),e.unresolved=Ns(e.pageRoot,e.pageRules);let r=is(),o=ur(pn.extract(e.pageRoot,e.pageRules,{...Sm,...r.hooks}),e.pageRules),s=Xr({pageRules:e.pageRules,formRules:e.formRules,data:o,doc:e.doc});ss(e.formRoot,s,{ignoreActiveValue:t}),r.seed(e.formRoot),cr(e.formRoot,e.doc,e.view?.enhanceFormRichText!==!1),Zi(e),lo(e),e.updateFingerprint&&e.updateFingerprint()}function nf({debounce:e=100,onRefresh:t}){let n=cn("Mutation");if(!n||typeof n.onAnyChange!="function")throw new Error("hypercms: a mutation hub is required (clay.Mutation or hyperclay.Mutation). Load clayjs or hyperclayjs, or just the mutation utility, before initializing hypercms.");let r=n.onAnyChange({debounce:e},o=>{t(o)});return{unsubscribe:typeof r=="function"?r:()=>{}}}var Em='input:not([disabled]):not([type="hidden"]), textarea:not([disabled]), select:not([disabled]), button:not([disabled]), [tabindex]:not([tabindex="-1"])';function rf({doc:e,pageRoot:t,opts:n={}}){let r=n.richText!==!1,o=null;return{name:"sidebar",richText:r,enhanceFormRichText:!0,ctx:null,root:null,formRoot:null,errorEl:null,noticeEl:null,prepareRules(s){return r?qc(s,t):s},mount(s){let l=this.ctx;o=Qn(()=>Xc({mountTo:n.mountTo||e.body,side:n.side||"right",overlay:!!n.overlay,showSaveButton:!!n.showSaveButton,title:n.title,eyebrow:n.eyebrow,theme:n.theme,doc:e})),this.root=o.root,this.formRoot=o.formRoot,this.errorEl=o.errorEl,this.noticeEl=o.noticeEl;let i=Xr({pageRules:l.pageRules,formRules:l.formRules,data:s,doc:e});o.formRoot.appendChild(i),l.seeder.seed(o.formRoot),cr(o.formRoot,e),lo(l),ws(l)},refresh(s){if(s==="livesync"){o?.restoreChrome?.(),hr(this.ctx,{ignoreActiveValue:!0});return}if(s==="undo"){hr(this.ctx,{ignoreActiveValue:!1});return}hr(this.ctx)},focusOnOpen(){let s=this.root&&this.root.querySelector(Em);s&&typeof s.focus=="function"&&s.focus()},destroy(){o?.destroy(),o=null}}}var _m="[cms-template], [data-hcms-shell]";function Lo(e){if(!e||typeof e.getBoundingClientRect!="function"||typeof e.closest=="function"&&e.closest(_m))return!1;let t=e.getBoundingClientRect();return t.width>=8&&t.height>=8}var Om={skip:"[data-hcms-shell]",templateAttr:"cms-template"},Nm={skip:"[data-hcms-shell]",templateAttr:null},Cm="text",Mm="native",of="handle",Rm=new Set(["INPUT","TEXTAREA","SELECT"]),af=new Set(["IMG","INPUT","TEXTAREA","SELECT","OPTION","BR","HR","VIDEO","AUDIO","IFRAME","EMBED","OBJECT","CANVAS","SOURCE","TRACK","AREA","COL","PARAM","BUTTON"]);function ll(e,t){return Im(e,t)}function Im(e,t){let n=[],r=[],o=Xn(e);return il(o,e,t,[],n,r),{targets:n,lists:r}}function il(e,t,n,r,o,s){if(typeof n=="string"){if(n.endsWith("[]")){let h=n.slice(0,-2);if(!h)return;let u=Ms(e,t,h);u.forEach((f,d)=>{o.push(lf([...r,d],f,n,null))}),s.push(sf(e,t,r,h,u,!0));return}let l=rn(n),i=l===-1?null:n.slice(l+1),a=l===-1?n:n.slice(0,l),c=!a||a==="."?t:Ms(e,t,a)[0];c&&o.push(lf(r,c,n,i));return}if(Array.isArray(n)){let[l,i]=n;if(typeof l!="string"||!l)return;let a=Ms(e,t,l);a.forEach((c,h)=>il(e,c,i,[...r,h],o,s)),s.push(sf(e,t,r,l,a,typeof i=="string"));return}if(n&&typeof n=="object")for(let[l,i]of Object.entries(n))il(e,t,i,[...r,l],o,s)}function sf(e,t,n,r,o,s){let l=o[0]?o[0].parentElement:null;if(!l){let i=Ms(e,t,r,Nm)[0];l=i?i.parentElement:null}return{path:n,items:o,container:l,scalar:s}}function lf(e,t,n,r){return{path:e,el:t,rule:n,attr:r,kind:Lm(t,r),icon:Pm(t,r)}}function Lm(e,t){let n=(e.tagName||"").toUpperCase();return!t||t==="innerHTML"?af.has(n)?of:Cm:t==="value"&&Rm.has(n)&&!e.readOnly&&!jm(e)?Mm:of}function jm(e){return e.disabled?!0:typeof e.matches=="function"&&e.matches(":disabled")}function Pm(e,t){let n=(e.tagName||"").toUpperCase();return(!t||t==="innerHTML")&&!af.has(n)?null:n==="IMG"||t==="srcset"?"camera":n==="A"&&t==="href"?"paperclip":"pencil"}function Ms(e,t,n,r=Om){try{return e.find(t,n,r)}catch{return[]}}var cf=Object.freeze({data:Object.freeze({tokens:["no-data"],bundles:["editor-ui"]}),save:Object.freeze({tokens:["no-save"],bundles:["editor-ui"]}),snapshot:Object.freeze({tokens:["no-snapshot"],bundles:["editor-ui"]}),watch:Object.freeze({tokens:["no-watch"],bundles:["editor-ui"]}),undo:Object.freeze({tokens:["no-undo"],bundles:["editor-ui"]}),history:Object.freeze({tokens:[],bundles:["editor-ui"]})}),Dm=Object.freeze({"editor-ui":Object.freeze(["no-data","no-save","no-snapshot","no-watch","no-undo"])}),Zx=Object.freeze(["no-save","no-snapshot","no-trigger-autosave","no-dirty","no-watch","no-undo","no-data","freeze","editor-ui"]);function al(e,t){if(!e||e.nodeType!==1)return!1;let n=e.getAttribute?.("clay");return!!(n&&n.split(/\s+/).includes(t)||e.hasAttribute?.(t))}function Fm(e,t){if(al(e,t))return!0;for(let[n,r]of Object.entries(Dm))if(r.includes(t)&&al(e,n))return!0;return!1}function jo(e){let t=cf[e];if(!t)throw new Error(`Unknown region capability: ${e}`);return[...t.tokens,...t.bundles].flatMap(n=>[`[clay~="${n}"]`,`[${n}]`]).join(", ")}function Bm(e,t){let n=e&&e.nodeType===1?e:e?.parentElement;for(;n&&n.nodeType===1;){let r=cf[t];if(!r)throw new Error(`Unknown region capability: ${t}`);if(r.tokens.some(o=>Fm(n,o))||r.bundles.some(o=>al(n,o)))return n;n=n.parentElement}return null}function ff(e,t){return!!Bm(e,t)}var qm=/:(?:focus(?:-within|-visible)?|hover|active|visited|defined)\b/i;function uf(e,t){if(!/^(INPUT|TEXTAREA|SELECT|OPTION)$/.test(e.tagName||""))return;let n=(e.getAttribute?.("type")||"").toLowerCase();if("value"in e&&"value"in t&&e.tagName!=="OPTION"&&n!=="checkbox"&&n!=="radio"&&n!=="file"&&(t.value=e.value),e.tagName==="INPUT"&&(n==="checkbox"||n==="radio")&&(t.checked=e.checked),e.tagName==="OPTION"&&(t.selected=e.selected),e.tagName==="SELECT")for(let r=0;r<e.options.length;r++)t.options[r].selected=e.options[r].selected;"indeterminate"in e&&"indeterminate"in t&&(t.indeterminate=e.indeterminate)}function df(e,t,n,r){if(r)return!!e.closest?.(t);let o=e;for(;o?.nodeType===1;){if(o.matches(t))return!0;if(o===n)break;o=o.parentElement}return!1}function hf(e,t,n,r,o,s,l,i){if(e.nodeType===1&&((l?ff(e,n):df(e,r,s,!1))||o&&(l&&e!==s?e.matches(o):df(e,o,s,l))))return null;let a=t.importNode(e,!1);i.cloneToLive.set(a,e),i.liveToClone.set(e,a);let c=e.nodeType===1&&e.tagName==="TEMPLATE"?e.content:e,h=a.nodeType===1&&a.tagName==="TEMPLATE"?a.content:a;c!==e&&(i.cloneToLive.set(h,c),i.liveToClone.set(c,h));for(let u of c.childNodes||[]){let f=hf(u,t,n,r,o,s,l,i);f&&(h.appendChild(f),u.nodeType===1&&uf(u,f))}return e.nodeType===1&&uf(e,a),a}function cl(e,{capability:t="data",exclude:n=null,inherit:r=!0}={}){if(!e)throw new TypeError("createContentView requires a DOM context");let o=e.nodeType===9?e:e.ownerDocument;if(!o?.implementation?.createHTMLDocument)throw new TypeError("createContentView requires an HTML DOM implementation");let s=o.implementation.createHTMLDocument(""),l=new WeakMap,i=new WeakMap,a=e.nodeType===9?e.documentElement:e;n&&s.documentElement.matches(n);let c=jo(t),h=hf(a,s,t,c,n,a,r,{cloneToLive:l,liveToClone:i});e.nodeType===9&&h&&(s.replaceChild(h,s.documentElement),i.set(e,s),l.set(s,e));let u=f=>{if(qm.test(f))throw new Error(`Filtered content queries do not support stateful selector: ${f}`)};return{root:h,document:s,capability:t,selector:jo(t),cloneToLive:l,liveToClone:i,original(f){return l.get(f)||null},cloneOf(f){return i.get(f)||null},query(f,d=h){return u(f),Array.from(d.querySelectorAll(f),p=>l.get(p)||p)},text(f=h){return(f===h?h:i.get(f))?.textContent||""},html(f=h){return(f===h?h:i.get(f))?.innerHTML??""},clone(f=h){let d=f===h?h:i.get(f);return d?s.importNode(d,!0):null}}}var Um=[16,8,0],fn=8,$m=4;function mf({anchor:e,bar:t,rail:n=t,viewport:r,current:o=null}){let s=f=>o===f?$m:0;if(e.bottom<=0||e.top>=r.height||e.right<=0||e.left>=r.width)return{mode:"hidden",x:0,y:0};let l=f=>Math.max(fn,Math.min(e.left,r.width-f-fn)),i=e.top-16-t.height;if(i>=fn-s("above"))return{mode:"above",x:l(t.width),y:i};let a=e.bottom+16;if(a+t.height<=r.height-fn+s("below"))return{mode:"below",x:l(t.width),y:a};let c=r.width-e.right-fn,h=e.left-fn,u=c>=h?[["rail-right",c],["rail-left",h]]:[["rail-left",h],["rail-right",c]];for(let[f,d]of u)for(let p of Um){if(n.width+p>d+s(f))continue;let y=f==="rail-right"?Math.min(e.right+p,r.width-n.width-fn):Math.max(e.left-p-n.width,fn),m=Math.min(e.bottom,r.height-fn)-n.height,g=Math.max(fn,Math.min(Math.max(e.top,fn),m));return{mode:f,x:y,y:g,gap:p}}return{mode:"pinned",x:l(t.width),y:fn}}function fl({anchor:e,handle:t,viewport:n,inset:r=6,prefer:o="auto"}){let s=e.height>=t.height*1.5&&e.width>=t.width*2;if(o==="corner"||s){let f=Math.max(fn,Math.min(e.right-t.width+r,n.width-t.width-fn)),d=Math.max(fn,Math.min(e.top-r,n.height-t.height-fn));return{x:f,y:d,mode:"over"}}let l=4,i=e.right+l+t.width<=n.width-fn,a=i?e.right+l:e.left-l-t.width,c=Math.max(fn,a),h=e.top+e.height/2-t.height/2,u=Math.max(fn,Math.min(h,n.height-t.height-fn));return{x:c,y:u,mode:i?"beside-right":"beside-left"}}var Is=!1;function pf(){if(Is)return;let e=cn("onPrepareForSave");typeof e=="function"&&(e(t=>{bf(t),gf(t)}),Is=!0)}function gf(e){let t=e&&e.querySelector&&e.querySelector("body");t&&t.classList.remove("hcms-open","hcms-overlay","hcms-side-left",_s)}function bf(e){if(!(!e||typeof e.querySelectorAll!="function"))for(let t of e.querySelectorAll(`[${ar}]`)){let n=Pc(t);n!==null&&(t.innerHTML=n),t.removeAttribute(ar)}}var Ls=!1;function js(){if(Ls)return;let e=cn("onSnapshot");typeof e=="function"&&(e(t=>{bf(t),Fc(t,typeof window<"u"?window:null),gf(t)}),Ls=!0)}function kf(){pf(),js(),(!Is||!Ls)&&Hm()}var Rs=null;function Hm(){if(Rs||typeof document>"u")return;Rs=Qr(document,Ic,()=>{pf(),js(),Is&&Ls&&(Rs?.(),Rs=null)})}var zm={edit:"M8 10h2v6H8zm2 4h4v2h-4zm0-6h2v2h-2zm2-2h2v2h-2zm2-2h2v2h-2zm2-2h2v2h-2zm2 2h2v2h-2zm2 2h2v2h-2zm-2 2h2v2h-2zm-2 2h2v2h-2zm-2 2h2v2h-2zm-4 0h2v2h-2z","move-up":"M11 4h2v2h2v2h2v2h2v2h-4v-2h-2v10h-2V10H9v2H5v-2h2V8h2V6h2z","move-down":"M11 4h2v10h2v-2h4v2h-2v2h-2v2h-2v2h-2v-2H9v-2H7v-2H5v-2h4v2h2z",remove:"M5 5h3v3h3v3h2V8h3V5h3v3h-3v3h-3v2h3v3h3v3h-3v-3h-3v-3h-2v3H8v3H5v-3h3v-3h3v-2H8V8H5z",add:"M10 4h4v6h6v4h-6v6h-4v-6H4v-4h6z"};function _r(e){let t=e==="edit"?"6 0 18 18":"0 0 24 24",n=e==="settings"?'<circle cx="6" cy="12" r="1.5"/><circle cx="12" cy="12" r="1.5"/><circle cx="18" cy="12" r="1.5"/>':`<path d="${zm[e]}"/>`;return`<svg class="hcms-inline-icon" xmlns="http://www.w3.org/2000/svg" viewBox="${t}" width="24" height="24" fill="currentColor" aria-hidden="true" focusable="false">${n}</svg>`}var yf="data-hcms-ghost",Vm=jo("history");function Wm(e){let t=e.container,n=null;for(;t&&(t.namespaceURI!=="http://www.w3.org/1999/xhtml"||["SELECT","OPTGROUP","DATALIST"].includes(t.tagName));)n=t,t=t.parentElement;return{parent:t,anchor:n}}function xf({doc:e,themeRoot:t,onAdd:n,onResize:r}){let o=e.defaultView,s=[],l=!1,i=null,a=new Map;function c(d,p,y){d.style[p]!==y&&(d.style[p]=y)}function h(){let d=new Set(s.map(p=>p.node.parentElement));for(let[p,y]of a)d.has(p)&&o?.Sortable?.get(p)===y.instance||(y.instance.option("draggable")===y.selector&&y.instance.option("draggable",y.original),a.delete(p));for(let p of d){let y=o?.Sortable?.get(p);if(!y)continue;let m=y.option("draggable");if(a.get(p)?.selector===m)continue;let g=m,S=`${g.trim().startsWith(">")?"> ":""}:is(${g.trim().replace(/^>\s*/,"")}):not(${Vm})`;y.option("draggable",S),a.set(p,{instance:y,original:g,selector:S})}}function u(){for(let d of s){let{node:p,slot:y,list:m}=d,g=m.items.filter(k=>k.isConnected).map(k=>k.getBoundingClientRect()).filter(k=>k.width>0&&k.height>0);g.length&&(d.width=g.reduce((k,S)=>k+S.width,0)/g.length,d.height=g.reduce((k,S)=>k+S.height,0)/g.length),c(p,"width",d.width?`${Math.round(d.width)}px`:"100%"),c(y,"height",`${Math.max(48,Math.round(d.height||64))}px`),y!==p&&(y.colSpan=Math.max(1,...m.items.map(k=>[...k.children].reduce((S,v)=>S+(v.colSpan||1),0)))),p.hidden!==l&&(p.hidden=l)}h()}function f(d,p){let y=p.tagName,m=["TBODY","THEAD","TFOOT","TABLE"].includes(y),g=e.createElement(m?"tr":["UL","OL","MENU"].includes(y)?"li":"div");for(let x of[yf,"data-hcms-shell","editor-ui","no-watch","no-save","save-remove","snapshot-remove"])g.setAttribute(x,"");g.setAttribute("draggable","false"),g.setAttribute("contenteditable","false"),g.className="hcms-shell pixel-quiet hcms-inline-ghost";for(let x of["light","dark"])g.classList.toggle(x,!!t?.classList.contains(x));let k=m?e.createElement("td"):g;k!==g&&(k.className="hcms-inline-ghost-cell",g.appendChild(k));let S=e.createElement("button");S.type="button",S.className="hcms-inline-list-button hcms-inline-list-add mirk-button mirk-button--small",S.setAttribute("data-hcms-list-action","add"),S.innerHTML=`<span class="mirk-button__label">${_r("add")}<span>Add</span></span>`,k.appendChild(S);let v={node:g,slot:k,button:S,list:d,width:0,height:0};S.addEventListener("click",x=>{x.preventDefault(),x.stopPropagation(),n(v.list)});for(let x of["pointerdown","mousedown","touchstart","click"])g.addEventListener(x,O=>O.stopPropagation());return g.addEventListener("dragstart",x=>{x.preventDefault(),x.stopPropagation()}),v}return{setLists(d){let p=new Set(s),y=[],m=new Set(s.map(k=>k.node)),g=new Set;for(let k of d||[]){if(!k.container||!k.container.isConnected)continue;let{parent:S,anchor:v}=Wm(k);if(!S)continue;if(!g.has(S)){for(let C of S.querySelectorAll(`:scope > [${yf}]`))m.has(C)||C.remove();g.add(S)}let x=s.find(C=>p.has(C)&&C.list.container===k.container&&C.list.path.join(".")===k.path.join("."))||f(k,S);p.delete(x),x.list=k,x.button.setAttribute("data-hcms-list",k.path.join(".")),x.button.setAttribute("aria-label",`Add to ${k.path.join(".")||"the list"}`);let O=v||k.items.filter(C=>C.parentElement===S).at(-1);O?O.nextSibling!==x.node&&O.after(x.node):x.node.parentElement!==S&&S.appendChild(x.node),y.push(x)}for(let k of p)k.node.remove();s=y,i?.disconnect(),!i&&typeof o?.ResizeObserver=="function"&&(i=new o.ResizeObserver(()=>{u(),r?.()}));for(let k of s)for(let S of k.list.items)i?.observe(S);u()},update:u,setHidden(d){l=!!d,u()},destroy(){i?.disconnect();for(let d of s)d.node.remove();s=[],h()}}}var vf=[["move-up","Move up"],["move-down","Move down"]],Km={prefer:"corner",inset:0};function Gm(e,t){return t.width<=e.width&&t.height<=e.height}function wf({doc:e,layerEl:t,onActivate:n,onListAction:r}){let o=e.defaultView,s=[],l=new Map,i=0,a=new Map,c=null,h=new Set,u=0,f=!1,d=null,p=null,y=null,m=null,g=new Map,k=!1,S=null,v=xf({doc:e,themeRoot:t.closest("[data-hcms-shell]"),onResize:O,onAdd:Q=>r?.({action:"add",list:Q,index:Q.items.length})}),x=e.createElement("div");x.className="hcms-inline-highlight",x.hidden=!0,x.setAttribute("aria-hidden","true"),t.appendChild(x);function O(){if(!(u||!o)){if(typeof o.requestAnimationFrame!="function")return _();u=o.requestAnimationFrame(()=>{u=0,_()})}}let C=()=>y||m;function _(){if(!o)return;v.update();let Q={width:o.innerWidth,height:o.innerHeight},ce=C();for(let Re of s){if(!Re.visible){Re.node.hidden=!0;continue}for(let ht of Re.members)ht.node.hidden=k&&ht.kind!=="handle";Re.node.hidden=!1;let Ue=Re.el.getBoundingClientRect(),qe=Re.node.getBoundingClientRect(),ot=qe.width,xt=Re.kind==="row"&&!Gm(Ue,qe);if(xt&&Re.el!==ce){for(let ht of Re.members)ht.kind==="row"&&(ht.node.hidden=!0);qe=Re.node.getBoundingClientRect()}if(Re.members.every(ht=>ht.node.hidden)){Re.node.hidden=!0;continue}let kt=Re.kind==="handle"?null:Km,{x:Ct,y:dt}=fl({anchor:Ue,handle:qe,viewport:Q,...kt}),St=Re.members.find(ht=>ht.kind==="handle");if(xt&&St){let ht=St.node.getBoundingClientRect(),H=fl({anchor:Ue,handle:ht,viewport:Q}),ie=Re.members.slice(Re.members.indexOf(St)+1).filter(pe=>!pe.node.hidden).reduce((pe,ge)=>pe+ge.node.getBoundingClientRect().width+2,0);Ct=Math.max(8+ot,Math.min(Q.width-8,H.x+ht.width+ie))-qe.width,dt=H.y}Re.node.style.transform=`translate(${Math.round(Ct)}px, ${Math.round(dt)}px)`}if(S)if(!S.node.isConnected||S.node.closest("[hidden]"))Ge();else{let Re=S.button.getBoundingClientRect(),Ue=S.menu.getBoundingClientRect();S.menu.style.left=`${Math.max(8,Re.right-Ue.width)-Re.left}px`,S.menu.style.right="auto",S.menu.style.top=Re.bottom+6+Ue.height>Q.height-8?"auto":"calc(100% + 6px)",S.menu.style.bottom=Re.bottom+6+Ue.height>Q.height-8?"calc(100% + 6px)":"auto"}P(),d?.()}function M(Q){if(Q?.closest?.("[data-hcms-ghost]"))return null;for(let ce=Q;ce&&ce.nodeType===1;ce=ce.parentElement){let Re=g.get(ce);if(Re)return Re}return null}function j(Q){S&&!S.node.contains(Q.target)&&Ge();let ce=C();m=M(Q.target),m&&t.contains(Q.target)&&(y=null),C()!==ce&&O()}function I(Q){if(Q.relatedTarget||!m)return;let ce=C();m=null,C()!==ce&&O()}function P(){if(!p||x.hidden)return;let Q=p.getBoundingClientRect();x.style.width=`${Math.round(Q.width)}px`,x.style.height=`${Math.round(Q.height)}px`,x.style.transform=`translate(${Math.round(Q.left)}px, ${Math.round(Q.top)}px)`}function R(){if(!o||typeof o.IntersectionObserver!="function"){for(let ce of s)ce.visible=!0;return}c||(c=new o.IntersectionObserver(ce=>{let Re=!1;for(let Ue of ce)for(let qe of l.get(Ue.target)||[])qe.visible!==Ue.isIntersecting&&(qe.visible=Ue.isIntersecting,Re=!0);Re&&O()},{threshold:0}));let Q=new Set(l.keys());for(let ce of h)Q.has(ce)||c.unobserve(ce);for(let ce of Q)h.has(ce)||c.observe(ce);h=Q}function T(){f||!o||(o.addEventListener("scroll",O,{passive:!0,capture:!0}),o.addEventListener("resize",O,{passive:!0}),e.addEventListener("focusin",j),e.addEventListener("focusout",I),e.addEventListener("pointerdown",_e,!0),e.addEventListener("keydown",w,!0),f=!0)}function A(){!f||!o||(o.removeEventListener("scroll",O,{capture:!0}),o.removeEventListener("resize",O),e.removeEventListener("focusin",j),e.removeEventListener("focusout",I),e.removeEventListener("pointerdown",_e,!0),e.removeEventListener("keydown",w,!0),f=!1)}function W(Q){return`${Q.kind}\0${Q.attr||""}`}function F(Q,ce){return Q.container===ce.container&&Q.scalar===ce.scalar}function $(Q,ce){return Q.kind!==ce.kind?!1:Q.kind==="handle"?W(Q.target)===W(ce.target):Q.kind==="row"?Q.row===ce.row&&F(Q.list,ce.list):F(Q.list,ce.list)}function Ne(Q,ce){Q.target=ce;let Re=ce.path.join(".");Q.node.setAttribute("data-hcms-target",Re),ce.icon?Q.node.setAttribute("data-hcms-icon",ce.icon):Q.node.removeAttribute("data-hcms-icon"),Q.node.setAttribute("aria-label",`Edit ${Re}`)}function Ce(Q){let ce=e.createElement("button");ce.type="button",ce.className="hcms-inline-handle mirk-button mirk-button--small",ce.innerHTML=`<span class="mirk-button__label">${_r("edit")}</span>`;let Re={node:ce,kind:"handle",target:Q};return Ne(Re,Q),ce.addEventListener("click",Ue=>{Ue.preventDefault(),Ue.stopPropagation(),n?.(Re.target,ce)}),Re}function Be(Q,ce){let Re=e.createElement("button");return Re.type="button",Re.className="hcms-inline-list-button mirk-button mirk-button--small",Re.setAttribute("data-hcms-list-action",Q),Re.setAttribute("aria-label",ce),Re.innerHTML=`<span class="mirk-button__label">${_r(Q)}${Q==="add"?"<span>Add</span>":""}</span>`,Re}function re(Q,{list:ce,row:Re,rowIndex:Ue,count:qe}){let ot=ce.path.join(".");Q.list=ce,Q.row=Re,Q.index=Ue,Q.count=qe,Q.node.setAttribute("data-hcms-list",ot),Q.node.setAttribute("data-hcms-row",String(Ue));for(let xt of Q.node.querySelectorAll("[data-hcms-list-action]")){let kt=xt.getAttribute("data-hcms-list-action"),Ct=vf.find(([dt])=>dt===kt)?.[1]||kt;xt.setAttribute("aria-label",`${Ct} ${ot}.${Ue}`),xt.disabled=kt==="move-up"&&Ue===0||kt==="move-down"&&Ue===qe-1}}function Ee(Q,ce,Re,Ue){let qe=e.createElement("div");qe.className="hcms-inline-row-controls";let ot={node:qe,kind:"row",list:Q,row:ce,index:Re,count:Ue};for(let[xt,kt]of vf){let Ct=Be(xt,kt);Ct.addEventListener("click",dt=>{dt.preventDefault(),dt.stopPropagation(),!Ct.disabled&&r?.({action:xt,list:ot.list,index:ot.index,row:ot.row})}),qe.appendChild(Ct)}return re(ot,{list:Q,row:ce,rowIndex:Re,count:Ue}),ot}function Ge(Q=!1){if(!S)return;let ce=S;S=null,ce.menu.hidden=!0,ce.button.setAttribute("aria-expanded","false"),ce.node.parentElement?.classList.remove("has-open-settings"),Q&&ce.button.isConnected&&ce.button.focus({preventScroll:!0})}function _e(Q){S&&!S.node.contains(Q.target)&&Ge()}function w(Q){S&&(Q.key==="Escape"?(Q.preventDefault(),Q.stopPropagation(),Ge(!0)):Q.key==="Tab"?Ge(!0):["ArrowDown","ArrowUp","Home","End"].includes(Q.key)&&S.menu.contains(Q.target)&&(Q.preventDefault(),S.menu.querySelector('[role="menuitem"]').focus({preventScroll:!0})))}function V(Q,{list:ce,row:Re,rowIndex:Ue}){Object.assign(Q,{list:ce,row:Re,index:Ue}),Q.node.setAttribute("data-hcms-list",ce.path.join(".")),Q.node.setAttribute("data-hcms-row",String(Ue)),Q.button.setAttribute("aria-label",`Settings ${ce.path.join(".")}.${Ue}`)}function ne(Q){let ce=e.createElement("div");ce.className="hcms-inline-settings";let Re=Be("settings","Settings");Re.setAttribute("aria-haspopup","menu"),Re.setAttribute("aria-expanded","false");let Ue=e.createElement("div");Ue.className="hcms-inline-settings-menu",Ue.setAttribute("role","menu"),Ue.setAttribute("aria-label","Item settings"),Ue.hidden=!0;let qe=e.createElement("button");qe.type="button",qe.setAttribute("role","menuitem"),qe.setAttribute("data-hcms-list-action","remove"),qe.textContent="Delete",Ue.appendChild(qe),ce.append(Re,Ue);let ot={node:ce,button:Re,menu:Ue,kind:"settings"};V(ot,Q);let xt=()=>{Ge(),S=ot,Ue.hidden=!1,Re.setAttribute("aria-expanded","true"),ce.parentElement.classList.add("has-open-settings"),qe.focus({preventScroll:!0}),O()};return Re.addEventListener("click",kt=>{kt.preventDefault(),kt.stopPropagation(),S===ot?Ge(!0):xt()}),Re.addEventListener("keydown",kt=>{(kt.key==="ArrowDown"||kt.key==="ArrowUp")&&(kt.preventDefault(),xt())}),qe.addEventListener("click",kt=>{kt.preventDefault(),kt.stopPropagation(),Ge(!0),r?.({action:"remove",list:ot.list,index:ot.index,row:ot.row})}),ot}function te(Q,ce){Q.kind==="handle"?Ne(Q,ce.target):Q.kind==="row"?re(Q,ce):Q.kind==="settings"&&V(Q,ce)}function Pe(Q,ce,Re,Ue,qe){let ot=ce.get(Re)?.find(xt=>xt.category===qe);if(!ot){ot={el:Re,category:qe,members:[]},Q.push(ot);let xt=ce.get(Re);xt?xt.push(ot):ce.set(Re,[ot])}ot.members.push(Ue)}function ze(Q,ce,Re){let Ue=Re.items||[];Ue.forEach((qe,ot)=>{Lo(qe)&&(Pe(Q,ce,qe,{kind:"row",list:Re,row:qe,rowIndex:ot,count:Ue.length},"item"),Pe(Q,ce,qe,{kind:"settings",list:Re,row:qe,rowIndex:ot},"item"))})}function Se(Q,ce){let Re=new Set(Q.members),Ue=[];for(let qe of ce){let ot=Q.members.find(xt=>Re.has(xt)&&$(xt,qe))||(qe.kind==="handle"?Ce(qe.target):qe.kind==="row"?Ee(qe.list,qe.row,qe.rowIndex,qe.count):ne(qe));Re.delete(ot),te(ot,qe),k&&ot.kind!=="handle"&&(ot.node.hidden=!0),Ue.push(ot)}for(let qe of Re)qe===S&&Ge(),qe.node.remove();Ue.sort((qe,ot)=>["row","handle","settings"].indexOf(qe.kind)-["row","handle","settings"].indexOf(ot.kind)),Ue.forEach((qe,ot)=>{Q.node.children[ot]!==qe.node&&Q.node.insertBefore(qe.node,Q.node.children[ot]||null)}),Q.members=Ue}function it(Q,ce){let Re=[],Ue=new Map,qe=new Map,ot=0;for(let dt of Q||[])qe.has(dt.el)||qe.set(dt.el,dt),!(dt.kind!=="handle"||!Lo(dt.el))&&(Pe(Re,Ue,dt.el,{kind:"handle",target:dt},"item"),ot++);for(let dt of ce||[])ze(Re,Ue,dt);let xt=new Set(s),kt=new Map;for(let dt of s)kt.has(dt.el)||kt.set(dt.el,dt.visible);let Ct=[];for(let dt of Re){let St=s.find(ht=>xt.has(ht)&&ht.el===dt.el&&ht.category===dt.category);if(!St){let ht=e.createElement("div");ht.className="hcms-inline-item-controls",ht.setAttribute("role","group"),St={el:dt.el,node:ht,category:dt.category,kind:dt.category==="add"?"add":"handle",members:[],visible:kt.get(dt.el)??!1},t.appendChild(ht)}xt.delete(St),St.el=dt.el,St.category=dt.category,Se(St,dt.members),St.kind=St.members.some(ht=>ht.kind==="row")?"row":St.members.some(ht=>ht.kind==="handle")?"handle":"add",St.node.setAttribute("aria-label",St.category==="add"?"List controls":"Item controls"),Ct.push(St)}for(let dt of xt)dt.node.remove();s=Ct,l=new Map,g=new Map;for(let dt of s){let St=l.get(dt.el);St?St.push(dt):l.set(dt.el,[dt]);for(let ht of dt.members)ht.kind!=="row"&&ht.kind!=="settings"||(g.set(ht.row,ht.row),g.set(ht.node,ht.row),g.set(dt.node,ht.row))}y&&!g.has(y)&&(y=null),m&&!g.has(m)&&(m=null),a=qe,i=ot}function tt(){Ge(),c?.disconnect(),c=null,h=new Set;for(let Q of s)Q.node.remove();s=[],l=new Map,a=new Map,g=new Map,i=0}return{setTargets(Q,ce){it(Q,ce),v.setLists(ce),R(),T(),O()},refresh:O,get count(){return i},get controlsHidden(){return k},setControlsHidden(Q){if(k=!!Q,v.setHidden(k),k){Ge();for(let ce of s){for(let Re of ce.members)Re.kind!=="handle"&&(Re.node.hidden=!0);ce.members.every(Re=>Re.node.hidden)&&(ce.node.hidden=!0)}}O()},elementToTarget(Q){if(Q?.closest?.("[data-hcms-ghost]"))return null;for(let ce=Q;ce&&ce.nodeType===1;ce=ce.parentElement){let Re=a.get(ce);if(Re)return Re}return null},setHoveredRow(Q){let ce=C();y=Q?M(Q):null,C()!==ce&&O()},showHighlight(Q){Q&&(p=Q,x.hidden=!1,P())},hideHighlight(){p=null,x.hidden=!0},setFollower(Q){d=typeof Q=="function"?Q:null},destroy(){v.destroy(),u&&o&&o.cancelAnimationFrame(u),u=0,d=null,p=null,y=null,m=null,x.remove(),A(),tt()}}}var Ym="hypercms-inline",Fo="is-hcms-inline-active",ul="is-hcms-inline-onpath",Af='input:not([disabled]):not([type="hidden"]), textarea:not([disabled]), select:not([disabled]), button:not([disabled]), [tabindex]:not([tabindex="-1"])',Xm=["bold","italic","link","undo","redo"],Jm=/^H[1-6]$/,Zm=0;function Ef({doc:e,pageRoot:t,opts:n={}}){let r=n.richText!==!1,o=null,s=null,l=null,i=new Map,a=null,c=null,h=null;function u(f,d,p,y,m){let g=eo(e.defaultView);if(typeof g!="function")return null;let k=m||{},S=k.originalHTML??cl(d,{capability:"history"}).html(),v=k.richClayIsOurs??!d.hasAttribute("data-richclay"),x=k.adopted??d.getAttribute("data-richclay-active")==="true",O=Po(d,y,"history"),C=Qm(f,g,d,y,v);if(!C)return null;Dc(d,y==="innerHTML",v);let _=String(++Zm);d.setAttribute(ar,_),js();let M={el:d,editor:C,path:p,prop:y,boundId:_,originalHTML:S,oldValue:O,richClayIsOurs:v,adopted:x,dirty:!1,written:!1,restorable(){return!this.adopted&&!this.dirty&&!this.written},lastEdited:void 0};i.set(d,M),Lc(_,M);let j=C.squire;if(j&&typeof j.addEventListener=="function"){let P=()=>{M.dirty=!0,M.lastEdited=Po(d,M.prop,"history"),ep(f,M)};j.addEventListener("input",P),M.detachInput=()=>j.removeEventListener?.("input",P)}let I=()=>_f(M);return d.addEventListener("blur",I),M.detachBlur=()=>d.removeEventListener("blur",I),M}return{name:"inline",richText:r,ctx:null,root:null,formRoot:null,errorEl:null,noticeEl:null,handoffEl:null,handoffCountEl:null,popEl:null,enhanceFormRichText:!1,prepareRules(f){return r?Uc(f,t):f},bindText(f,d,p,y){return u(this.ctx,f,d,p,y)},mount(f){let d=this.ctx;o=sp(e,n.theme),this.root=o.root,this.formRoot=o.formRoot,this.errorEl=o.errorEl,this.noticeEl=o.noticeEl,this.handoffEl=o.handoffEl,this.handoffCountEl=o.handoffCountEl,this.popEl=o.popEl,Qn(()=>Io(e));let p=Xr({pageRules:d.pageRules,formRules:d.formRules,data:f,doc:e});o.formRoot.appendChild(p),d.seeder.seed(o.formRoot),cr(o.formRoot,e,this.enhanceFormRichText),lo(d),ws(d),s=wf({doc:e,layerEl:o.layerEl,onActivate:(y,m)=>this.activate(y,m),onListAction:y=>this.listAction(y)}),s.setFollower(()=>this.placePopover()),o.closeEl.addEventListener("click",()=>this.deactivate()),o.toggleEl.addEventListener("click",y=>{y.preventDefault(),y.stopPropagation(),this.toggleControls()}),o.handoffEl.querySelector("[data-hcms-open-view]").addEventListener("click",y=>{y.preventDefault(),y.stopPropagation(),d.onViewRequested?.("sidebar")}),this.bindPage(),this.syncTargets()},listAction({action:f,list:d,index:p,row:y}){let m=this.ctx,g=d.path.join("."),k=m.formRoot.querySelector(`[data-hcms-path="${oo(g)}"]`);if(!k)return;if(f==="add"){Mo(g,m);return}let S=y?lp(m,g,y):p;if(S===-1)return;let v=ip(k,S);if(v){if(f==="remove"){Ji(v,m),this.syncTargets();return}Xi(v,f==="move-up"?-1:1,m),this.syncTargets()}},toggleControls(){if(!s||!o)return;let f=!s.controlsHidden;s.setControlsHidden(f),o.toggleEl.setAttribute("aria-pressed",String(f));let d=o.toggleEl.querySelector(".mirk-button__label");d&&(d.textContent=f?"Show controls":"Hide controls")},bindPage(){let f=this.ctx.pageRoot,d=o.root,p=v=>{let x=s&&s.elementToTarget(v.target);x?s.showHighlight(x.el):s?.hideHighlight(),s?.setHoveredRow(v.target)},y=()=>{s?.hideHighlight(),s?.setHoveredRow(null)},m=v=>{if(d.contains(v.target))return;let x=s&&s.elementToTarget(v.target);!x||x.kind!=="text"||i.has(x.el)||u(this.ctx,x.el,x.path.join("."),Ds(x))},g=v=>{if(d.contains(v.target))return;let x=s&&s.elementToTarget(v.target);if(!x){this.deactivate();return}(typeof v.target.closest=="function"&&v.target.closest("a[href]")||x.kind!=="text")&&v.preventDefault(),this.activate(x)},k=v=>{v.key==="Escape"&&this.deactivate()},S=v=>{let x=v.detail;if(!(!x||x.pageRoot!==this.ctx.pageRoot||!x.path))for(let O of i.values())O.path===x.path&&(O.written=!0)};f.addEventListener("pointerover",p),f.addEventListener("pointerleave",y),f.addEventListener("pointerdown",m),f.addEventListener("click",g),d.addEventListener("keydown",k),e.addEventListener("hcms:change",S),l=()=>{f.removeEventListener("pointerover",p),f.removeEventListener("pointerleave",y),f.removeEventListener("pointerdown",m),f.removeEventListener("click",g),d.removeEventListener("keydown",k),e.removeEventListener("hcms:change",S)}},activate(f,d){if(!f||!o||f.kind==="text"&&this.activateText(f))return;let p=Sf(this,o,f.path.join("."));if(!p){this.deactivate();return}a=f,c=d||null,h=null,o.popEl.hidden=!1,o.formRoot.querySelectorAll(`.${Fo}`).forEach(Tf),this.placePopover(),op(p)},activateText(f){let d=f.el,p=i.get(d);if(p)return Ps(p),!0;let y=u(this.ctx,d,f.path.join("."),Ds(f));return y?(Ps(y),!0):!1},placePopover(){if(!o||!a||o.popEl.hidden)return;let f=e.defaultView;if(!f)return;let d={width:f.innerWidth,height:f.innerHeight},p=a.el.getBoundingClientRect(),y=o.popEl.getBoundingClientRect(),{mode:m,x:g,y:k}=mf({anchor:p,bar:y,viewport:d,current:h});h=m,o.popEl.style.transform=`translate(${Math.round(g)}px, ${Math.round(k)}px)`},deactivate(){if(!o||!a&&o.popEl.hidden)return;o.popEl.hidden=!0,Nf(o.root);let f=c;if(a=null,c=null,h=null,f&&e.contains(f)&&typeof f.focus=="function")try{f.focus({preventScroll:!0})}catch{f.focus()}},syncTargets(){if(!s)return;let f=this.ctx,{targets:d,lists:p}=ll(f.pageRoot,f.pageRules);s.setTargets(d,p);let y=tp(this,i,d,e);if(a){let g=y.get(a.el)||[],k=g.find(S=>np(S,a))||g.find(S=>S.path.join(".")===a.path.join("."))||(g.length===1?g[0]:null);k?a=k:this.deactivate()}rp(this.ctx,i,e);let m=d.reduce((g,k)=>g+(Lo(k.el)?0:1),0);this.handoffEl&&(this.handoffCountEl.textContent=m===0?"":`${m} ${m===1?"field isn't":"fields aren't"} visible right now.`,this.handoffEl.hidden=m===0)},refresh(f,d){f==="livesync"?(dr(e),Io(e),hr(this.ctx,{ignoreActiveValue:!0})):f==="undo"?hr(this.ctx,{ignoreActiveValue:!1}):hr(this.ctx),this.syncTargets(),(f==="livesync"||f==="undo")&&this.rebindText(f),this.restoreActive()},rebindText(f){let d=f!=="undo";for(let[p,y]of[...i]){if(!e.contains(p)){Do(this.ctx,y,{restore:!1,record:d}),i.delete(p);continue}if(p.hasAttribute(Fn)){let k=Po(p,y.prop);k!==y.lastEdited&&(y.oldValue=k,y.lastEdited=void 0);continue}let m=e.activeElement===p;Do(this.ctx,y,{restore:!1,record:d}),i.delete(p);let g=u(this.ctx,p,y.path,y.prop,{richClayIsOurs:y.richClayIsOurs,adopted:y.adopted});g&&m&&Ps(g)}},restoreActive(){if(!o||!a||o.popEl.hidden)return;if(!e.contains(a.el)){this.deactivate();return}if(!Sf(this,o,a.path.join("."))){this.deactivate();return}o.formRoot.querySelectorAll(`.${Fo}`).forEach(Tf),this.placePopover()},focusOnOpen(){if(this.root&&typeof this.root.focus=="function")try{this.root.focus({preventScroll:!0})}catch{this.root.focus()}},destroy(){c=null,this.deactivate();for(let f of i.values())Do(this.ctx,f);i.clear(),l?.(),l=null,s?.destroy(),s=null,o?.destroy(),o=null,nl(e),this.popEl=null,this.handoffEl=null,this.handoffCountEl=null}}}function Qm(e,t,n,r,o){return Qn(()=>{let s=null;try{s=new t(n,{inline:!0,hyperclay:!1,toolbar:r==="innerHTML"?Xm:!1,...Jm.test(n.tagName)?{singleLine:!0}:null})}catch(l){return console.warn("[hypercms] richclay activation failed; the field falls back to the popover",l),null}if(s.unsupported||!s.active){if(o)try{s.destroy()}catch{}return null}return typeof s.reattach=="function"&&s.reattach(),s})}function ep(e,{path:t,el:n,prop:r}){let o=As(e.formRoot,t);o&&(Ss(o,Po(n,r),e.formRoot,t),_n(vn(e),{path:t,structural:!1},e))}function Po(e,t,n="data"){let r=cl(e,{capability:n});return t==="innerHTML"?r.html():r.text().trim()}function _f(e){let{el:t,prop:n,oldValue:r,lastEdited:o}=e,s=o;if(s===void 0||s===r)return;e.oldValue=s;let l=cn("undo");if(!l||typeof l.recordValue!="function")return;let i={prop:n,oldValue:r,newValue:s,read:a=>Po(a,n,"history"),write:(a,c)=>Of(a,n,c)};l.isPaused?queueMicrotask(()=>{t.isConnected&&l.recordValue(t,i)}):l.recordValue(t,i)}function Of(e,t,n){let r=e.cloneNode(!1);t==="innerHTML"?r.innerHTML=n:r.textContent=n,ir(e,Array.from(r.childNodes),{morphStyle:"innerHTML",policy:"history",restoreFocus:!1,scripts:{handle:!1,merge:!1}})}function Do(e,t,{restore:n=!0,record:r=!0}={}){r&&_f(t),t.detachInput?.(),t.detachBlur?.(),Qn(()=>{if(!t.adopted){try{t.editor.destroy()}catch(o){console.warn("[hypercms] richclay teardown failed; editor state may reach the save",o)}t.richClayIsOurs&&t.el.removeAttribute("data-richclay")}t.el.removeAttribute(Fn),t.el.removeAttribute(Tr),t.el.removeAttribute(ar),jc(t.boundId),n&&t.restorable()&&Of(t.el,"innerHTML",t.originalHTML)})}function Ps(e){let{editor:t,el:n}=e;if(n.ownerDocument.activeElement!==n)try{typeof t.focus=="function"?t.focus():n.focus()}catch{}}function tp(e,t,n,r){let o=new Map;for(let s of n){let l=o.get(s.el);l?l.push(s):o.set(s.el,[s])}for(let[s,l]of[...t]){let i=o.get(s)||[],a=i.find(f=>Ds(f)===l.prop)||i[0];if(!a){Do(e.ctx,l,{restore:!0}),t.delete(s);continue}l.path=a.path.join(".");let c=Ds(a);if(c===l.prop)continue;let h=r.activeElement===s;Do(e.ctx,l,{restore:!1}),t.delete(s);let u=e.bindText(s,l.path,c,{richClayIsOurs:l.richClayIsOurs,adopted:l.adopted,originalHTML:l.originalHTML});u&&h&&Ps(u)}return o}function np(e,t){return e.el===t.el&&e.kind===t.kind&&e.attr===t.attr}function Ds(e){return e.attr==="innerHTML"?"innerHTML":"textContent"}function rp(e,t,n){for(let r of e.pageRoot.querySelectorAll(`[${Fn}]`))t.has(r)||Qn(()=>Bc(r,n.defaultView))}function Sf(e,t,n){let r=e.formRoot&&e.formRoot.querySelector(`[data-hcms-path="${oo(n)}"]`);if(Nf(t.root),!r)return null;let o=r.closest("[data-hcms-card]"),s=o?[...o.querySelectorAll('[data-hcms-shape="scalar"][data-hcms-path]')].filter(l=>l.closest("[data-hcms-card]")===o&&l.closest('[data-hcms-shape="object-array"], [data-hcms-shape="scalar-array"]')===o.parentElement.closest('[data-hcms-shape="object-array"]')):[r];s.includes(r)||s.push(r);for(let l of s){l.classList.add(Fo),l.removeAttribute("draggable");for(let i=l.parentElement;i&&(i.classList.add(ul),i.removeAttribute("draggable"),i!==e.formRoot);i=i.parentElement);}return r}function Nf(e){if(e)for(let t of e.querySelectorAll(`.${Fo}, .${ul}`))t.classList.remove(Fo,ul)}function Tf(e){e.tagName==="TEXTAREA"&&to(e),e.querySelectorAll?.("textarea").forEach(to)}function op(e){let t=e.matches?.(Af)?e:e.querySelector?.(Af);if(!(!t||typeof t.focus!="function"))try{t.focus({preventScroll:!0})}catch{t.focus()}}function sp(e,t){dr(e);let n=e.createElement(Ym),r=t==="dark"?" dark":t==="light"?" light":"";return n.className="hcms-shell pixel-quiet hcms-inline"+r,n.setAttribute("data-hcms-shell",""),n.setAttribute("editor-ui",""),n.setAttribute("no-save",""),n.setAttribute("save-remove",""),n.setAttribute("snapshot-remove",""),n.setAttribute("no-watch",""),n.setAttribute("tabindex","-1"),n.innerHTML=`
181
182
  <div class="hcms-inline-bar">
182
183
  <div class="hcms-inline-handoff" hidden>
183
184
  <span class="hcms-inline-handoff-count"></span>
@@ -196,24 +197,24 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
196
197
  <div class="hcms-inline-pop-header">
197
198
  <span>Edit content</span>
198
199
  <button type="button" class="hcms-inline-pop-close mirk-button mirk-button--small" aria-label="Close field editor">
199
- <span class="mirk-button__label">${$n("remove")}</span>
200
+ <span class="mirk-button__label">${_r("remove")}</span>
200
201
  </button>
201
202
  </div>
202
203
  <div data-hcms-form-root class="hcms-form"></div>
203
204
  </div>
204
- `,e.body.appendChild(n),{root:n,formRoot:n.querySelector("[data-hcms-form-root]"),noticeEl:n.querySelector(".hcms-inline-notice"),errorEl:n.querySelector(".hcms-inline-error"),handoffEl:n.querySelector(".hcms-inline-handoff"),handoffCountEl:n.querySelector(".hcms-inline-handoff-count"),layerEl:n.querySelector(".hcms-inline-layer"),popEl:n.querySelector(".hcms-inline-pop"),closeEl:n.querySelector(".hcms-inline-pop-close"),toggleEl:n.querySelector("[data-hcms-controls-toggle]"),destroy(){n.remove()}}}function hh(e,t){let n=e.querySelector(".hcms-array-items");return n&&n.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")[t]||null}function mh(e,t,n){let{lists:r}=is(e.pageRoot,e.pageRules),o=r.find(i=>i.path.join(".")===t);return o?o.items.indexOf(n):-1}var ph="[hypercms]";function tc(e,t){if(!e||!e.querySelectorAll||!t)return;let n=gh(t);e.querySelectorAll("template[data-hcms-tpl]").forEach(o=>{let i=o.getAttribute("data-hcms-tpl");i&&(i.startsWith("@")||n.has(i)||console.warn(`${ph} template "${i}" doesn't match any rule path; ignored`))})}function gh(e){let t=new Set;return n([],e),t;function n(r,o){let i=r.join("."),s=r.map(a=>typeof a=="number"?"*":a).join(".");i&&t.add(i),s&&t.add(s);let l=qn(o);if(l==="object")for(let[a,h]of Object.entries(o))n([...r,a],h);else if(l==="object-array"||l==="scalar-array"){let a=[...r,"*"],h=a.map(d=>typeof d=="number"?"*":d).join(".");if(t.add(h),l==="object-array"){let d=o[1];if(d&&typeof d=="object"&&!Array.isArray(d))for(let[b,f]of Object.entries(d))n([...a,b],f)}}}}var rc={skip:"[data-hcms-shell]",templateAttr:"cms-template"},He={isOpen:!1,ctx:null,opts:null};function oc({view:e,doc:t,pageRoot:n,opts:r={},onCloseRequested:o,onViewRequested:i}){let s=r.rules!==void 0?r.rules:"cms",l=Vt.findRules(t,s);if(!l){let v=typeof s=="string"?`data-rules-name~="${s}"`:"the provided rules object";throw new Error(`hypercms: no rules found for ${v}`)}let a=e.prepareRules(l.rules),h=l.tagNode;xo(t),To(t,a),tc(t,a);let d=_o(a,t),b=Ho(a),f=Bo(n,a),u=bo(),m=Nn(Vt.extract(n,a,{...rc,...u.hooks}),a),p={doc:t,pageRoot:n,pageRules:a,writeRules:b,formRules:d,rulesTagNode:h,rulesSource:s,richText:e.richText,view:e,seeder:u,initialData:m,get formRoot(){return e.formRoot},get shellRoot(){return e.root},get errorEl(){return e.errorEl},get noticeEl(){return e.noticeEl},unresolved:f,lastTwinSignature:null,lastFingerprint:null,lastData:null,observerHandle:null,undoUnsub:null,livesyncUnsub:null,onChange:r.onChange,onError:r.onError,confirmRemove:r.confirmRemove,previouslyFocused:t.activeElement,dispatch(v,A){let M=t.defaultView&&t.defaultView.CustomEvent||(typeof CustomEvent<"u"?CustomEvent:null);if(!M)return;let L={...A||{},pageRoot:n,view:e.name},H=new M(v,{bubbles:!0,cancelable:v==="hcms:change",detail:L});(e.root&&e.root.isConnected!==!1?e.root:n).dispatchEvent(H)},onCloseRequested:o,onViewRequested:i};return p.updateFingerprint=()=>{p.lastFingerprint=Vr(Gt(p))},e.ctx=p,p}function ic(e){e.updateFingerprint(),e.observerHandle=Ca({onRefresh:r=>e.view.refresh("observer",r)});let t=It("undo");if(t&&typeof t.on=="function"){let r=()=>{if(He.ctx!==e)return;nc(e,"undo");let o=Nn(Vt.extract(e.pageRoot,e.pageRules,rc),e.pageRules);Vr(o)!==Vr(e.lastData)&&(e.lastData=o,e.onChange?.(o,{path:"",structural:!1}))};t.on("undo",r),t.on("redo",r),e.undoUnsub=()=>{t.off("undo",r),t.off("redo",r)}}let n=()=>nc(e,"livesync");e.livesyncUnsub=fr(e.doc,oa,n),fs.ctx=e,kh(e.doc)}function nc(e,t){He.ctx===e&&e.view.refresh(t)}function Yo(e,{dispatch:t=!0,restoreFocus:n=!0,updateUrl:r=!0,reason:o="close"}={}){if(!e||e.closed)return;e.closed=!0;for(let s of e.uploads||[])try{s.abort()}catch{}e.uploads?.clear();let i=e.previouslyFocused;if(t&&e.dispatch("hcms:close",{reason:o}),r&&yh(),e.observerHandle?.unsubscribe?.(),e.undoUnsub?.(),e.livesyncUnsub?.(),e.detachEvents?.(),vn(()=>e.view.destroy()),bh(),n&&typeof i?.focus=="function")try{i.focus()}catch{}}function bh(){He.isOpen=!1,He.ctx=null,He.opts=null,fs.ctx=null}var fs={ctx:null};function kh(e){let t=e.defaultView||(typeof globalThis<"u"?globalThis:null);if(!t)return;let n=function(){let o=fs.ctx;if(o)return Do(o.formRoot),Hn("Reorder",()=>tn(Gt(o),{path:"",structural:!0},o))};typeof t.hypercmsCommit!="function"&&(t.hypercmsCommit=n),typeof globalThis<"u"&&typeof globalThis.hypercmsCommit!="function"&&(globalThis.hypercmsCommit=n)}var us="cms";function sc(e){let t=typeof e=="string"?e:"",n=t.indexOf("?"),r=n===-1?t:t.slice(n+1);if(!r)return t;let o=new URLSearchParams(r);return o.get(us)!=="true"?t:(o.set(us,"false"),"?"+o.toString())}function lc(e){let t=typeof e=="string"?e:"",n=t.indexOf("?"),r=n===-1?t:t.slice(n+1);return r?new URLSearchParams(r).get(us)==="true":!1}function yh(){if(typeof window>"u"||!window.location||!window.history||typeof window.history.replaceState!="function")return;let e=window.location.search,t=sc(e);t!==e&&window.history.replaceState(window.history.state,"",t+window.location.hash)}var ac="hcms-toggle",pt="data-hcms-toggle-host",cc="hcms-toggle-style",uc="data-hcms-toggle-style",Xo="data-hcms-session",bc="data-hcms-split",kc="hcms.view",Jo=["sidebar","inline"],xh={sidebar:"In the sidebar",inline:"On the page"},ms="var(--hcms-toggle-bg, var(--hcms-toggle-_surface))";function fc(e){try{let t=e&&e.localStorage?e.localStorage.getItem(kc):null;return Jo.includes(t)?t:null}catch{return null}}function vh(e,t){if(Jo.includes(t))try{e?.localStorage?.setItem(kc,t)}catch{}}var wh="#fafafa",Ah="#0a0a0a",Sh=`
205
- [${pt}] {
205
+ `,e.body.appendChild(n),{root:n,formRoot:n.querySelector("[data-hcms-form-root]"),noticeEl:n.querySelector(".hcms-inline-notice"),errorEl:n.querySelector(".hcms-inline-error"),handoffEl:n.querySelector(".hcms-inline-handoff"),handoffCountEl:n.querySelector(".hcms-inline-handoff-count"),layerEl:n.querySelector(".hcms-inline-layer"),popEl:n.querySelector(".hcms-inline-pop"),closeEl:n.querySelector(".hcms-inline-pop-close"),toggleEl:n.querySelector("[data-hcms-controls-toggle]"),destroy(){n.remove()}}}function ip(e,t){let n=e.querySelector(".hcms-array-items");return n&&n.querySelectorAll(":scope > [data-hcms-card], :scope > [data-hcms-array-item]")[t]||null}function lp(e,t,n){let{lists:r}=ll(e.pageRoot,e.pageRules),o=r.find(s=>s.path.join(".")===t);return o?o.items.indexOf(n):-1}var ap="[hypercms]";function Cf(e,t){if(!e||!e.querySelectorAll||!t)return;let n=cp(t);e.querySelectorAll("template[data-hcms-tpl]").forEach(o=>{let s=o.getAttribute("data-hcms-tpl");s&&(s.startsWith("@")||n.has(s)||console.warn(`${ap} template "${s}" doesn't match any rule path; ignored`))})}function cp(e){let t=new Set;return n([],e),t;function n(r,o){let s=r.join("."),l=r.map(a=>typeof a=="number"?"*":a).join(".");s&&t.add(s),l&&t.add(l);let i=Sr(o);if(i==="object")for(let[a,c]of Object.entries(o))n([...r,a],c);else if(i==="object-array"||i==="scalar-array"){let a=[...r,"*"],c=a.map(h=>typeof h=="number"?"*":h).join(".");if(t.add(c),i==="object-array"){let h=o[1];if(h&&typeof h=="object"&&!Array.isArray(h))for(let[u,f]of Object.entries(h))n([...a,u],f)}}}}var Rf={skip:"[data-hcms-shell]",templateAttr:"cms-template"},Lt={isOpen:!1,ctx:null,opts:null};function If({view:e,doc:t,pageRoot:n,opts:r={},onCloseRequested:o,onViewRequested:s}){let l=r.rules!==void 0?r.rules:"cms",i=pn.findRules(t,l);if(!i){let m=typeof l=="string"?`data-rules-name~="${l}"`:"the provided rules object";throw new Error(`hypercms: no rules found for ${m}`)}let a=e.prepareRules(i.rules),c=i.tagNode;cs(t),ms(t,a),Cf(t,a);let h=gs(a,t),u=Cs(a),f=Ns(n,a),d=is(),p=ur(pn.extract(n,a,{...Rf,...d.hooks}),a),y={doc:t,pageRoot:n,pageRules:a,writeRules:u,formRules:h,rulesTagNode:c,rulesSource:l,richText:e.richText,view:e,seeder:d,initialData:p,get formRoot(){return e.formRoot},get shellRoot(){return e.root},get errorEl(){return e.errorEl},get noticeEl(){return e.noticeEl},unresolved:f,lastTwinSignature:null,lastFingerprint:null,lastData:null,observerHandle:null,undoUnsub:null,livesyncUnsub:null,onChange:r.onChange,onError:r.onError,confirmRemove:r.confirmRemove,previouslyFocused:t.activeElement,dispatch(m,g){let k=t.defaultView&&t.defaultView.CustomEvent||(typeof CustomEvent<"u"?CustomEvent:null);if(!k)return;let S={...g||{},pageRoot:n,view:e.name},v=new k(m,{bubbles:!0,cancelable:m==="hcms:change",detail:S});(e.root&&e.root.isConnected!==!1?e.root:n).dispatchEvent(v)},onCloseRequested:o,onViewRequested:s};return y.updateFingerprint=()=>{y.lastFingerprint=Ro(vn(y))},e.ctx=y,y}function Lf(e){e.updateFingerprint(),e.observerHandle=nf({onRefresh:r=>e.view.refresh("observer",r)});let t=cn("undo");if(t&&typeof t.on=="function"){let r=()=>{if(Lt.ctx!==e)return;Mf(e,"undo");let o=ur(pn.extract(e.pageRoot,e.pageRules,Rf),e.pageRules);Ro(o)!==Ro(e.lastData)&&(e.lastData=o,e.onChange?.(o,{path:"",structural:!1}))};t.on("undo",r),t.on("redo",r),e.undoUnsub=()=>{t.off("undo",r),t.off("redo",r)}}let n=()=>Mf(e,"livesync");e.livesyncUnsub=Qr(e.doc,Rc,n),hl.ctx=e,up(e.doc)}function Mf(e,t){Lt.ctx===e&&e.view.refresh(t)}function Fs(e,{dispatch:t=!0,restoreFocus:n=!0,updateUrl:r=!0,reason:o="close"}={}){if(!e||e.closed)return;e.closed=!0;for(let l of e.uploads||[])try{l.abort()}catch{}e.uploads?.clear();let s=e.previouslyFocused;if(t&&e.dispatch("hcms:close",{reason:o}),r&&dp(),e.observerHandle?.unsubscribe?.(),e.undoUnsub?.(),e.livesyncUnsub?.(),e.detachEvents?.(),Qn(()=>e.view.destroy()),fp(),n&&typeof s?.focus=="function")try{s.focus()}catch{}}function fp(){Lt.isOpen=!1,Lt.ctx=null,Lt.opts=null,hl.ctx=null}var hl={ctx:null};function up(e){let t=e.defaultView||(typeof globalThis<"u"?globalThis:null);if(!t)return;let n=function(){let o=hl.ctx;if(o)return Ts(o.formRoot),Er("Reorder",()=>_n(vn(o),{path:"",structural:!0},o))};typeof t.hypercmsCommit!="function"&&(t.hypercmsCommit=n),typeof globalThis<"u"&&typeof globalThis.hypercmsCommit!="function"&&(globalThis.hypercmsCommit=n)}var dl="cms";function jf(e){let t=typeof e=="string"?e:"",n=t.indexOf("?"),r=n===-1?t:t.slice(n+1);if(!r)return t;let o=new URLSearchParams(r);return o.get(dl)!=="true"?t:(o.set(dl,"false"),"?"+o.toString())}function Pf(e){let t=typeof e=="string"?e:"",n=t.indexOf("?"),r=n===-1?t:t.slice(n+1);return r?new URLSearchParams(r).get(dl)==="true":!1}function dp(){if(typeof window>"u"||!window.location||!window.history||typeof window.history.replaceState!="function")return;let e=window.location.search,t=jf(e);t!==e&&window.history.replaceState(window.history.state,"",t+window.location.hash)}var Df="hcms-toggle",Yt="data-hcms-toggle-host",Ff="hcms-toggle-style",Bf="data-hcms-toggle-style",Bs="data-hcms-session",Wf="data-hcms-split",Kf="hcms.view",qs=["sidebar","inline"],hp={sidebar:"In the sidebar",inline:"On the page"},gl="var(--hcms-toggle-bg, var(--hcms-toggle-_surface))";function qf(e){try{let t=e&&e.localStorage?e.localStorage.getItem(Kf):null;return qs.includes(t)?t:null}catch{return null}}function mp(e,t){if(qs.includes(t))try{e?.localStorage?.setItem(Kf,t)}catch{}}var pp="#fafafa",gp="#0a0a0a",bp=`
206
+ [${Yt}] {
206
207
  all: unset;
207
208
  box-sizing: border-box;
208
209
  display: var(--hcms-toggle-display, inline-flex);
209
210
  font-family: 'Departure Mono', ui-monospace, Menlo, monospace;
210
- --hcms-toggle-_surface: ${wh};
211
+ --hcms-toggle-_surface: ${pp};
211
212
  }
212
- [${pt}][data-hcms-surface="dark"] {
213
- --hcms-toggle-_surface: ${Ah};
213
+ [${Yt}][data-hcms-surface="dark"] {
214
+ --hcms-toggle-_surface: ${gp};
214
215
  }
215
- [${pt}] .hcms-toggle__main,
216
- [${pt}] .hcms-toggle__arrow {
216
+ [${Yt}] .hcms-toggle__main,
217
+ [${Yt}] .hcms-toggle__arrow {
217
218
  all: unset;
218
219
  box-sizing: border-box;
219
220
  display: inline-flex;
@@ -232,34 +233,34 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
232
233
  cursor: pointer;
233
234
  box-shadow: none;
234
235
  }
235
- [${pt}] .hcms-toggle__main:hover,
236
- [${pt}] .hcms-toggle__arrow:hover {
236
+ [${Yt}] .hcms-toggle__main:hover,
237
+ [${Yt}] .hcms-toggle__arrow:hover {
237
238
  border-color: var(--mirk-focus-color, #C7AE93);
238
239
  box-shadow: none;
239
240
  }
240
- [${pt}] .hcms-toggle__main:active,
241
- [${pt}] .hcms-toggle__arrow:active {
241
+ [${Yt}] .hcms-toggle__main:active,
242
+ [${Yt}] .hcms-toggle__arrow:active {
242
243
  border-color: var(--mirk-bevel-br, #E2D4BF) var(--mirk-bevel-tl, #F0E7D8) var(--mirk-bevel-tl, #F0E7D8) var(--mirk-bevel-br, #E2D4BF);
243
244
  }
244
- [${pt}] .hcms-toggle__main:focus-visible,
245
- [${pt}] .hcms-toggle__arrow:focus-visible {
245
+ [${Yt}] .hcms-toggle__main:focus-visible,
246
+ [${Yt}] .hcms-toggle__arrow:focus-visible {
246
247
  outline: 2px solid currentColor;
247
248
  outline-offset: -5px;
248
249
  }
249
- [${pt}] .hcms-toggle__close { display: none; }
250
- [${pt}][${Xo}="open"] .hcms-toggle__open { display: none; }
251
- [${pt}][${Xo}="open"] .hcms-toggle__close { display: inline; }
252
- [${pt}][${bc}] .hcms-toggle__main {
250
+ [${Yt}] .hcms-toggle__close { display: none; }
251
+ [${Yt}][${Bs}="open"] .hcms-toggle__open { display: none; }
252
+ [${Yt}][${Bs}="open"] .hcms-toggle__close { display: inline; }
253
+ [${Yt}][${Wf}] .hcms-toggle__main {
253
254
  border-radius: 0;
254
255
  padding-right: 12px;
255
256
  }
256
- [${pt}] .hcms-toggle__arrow {
257
+ [${Yt}] .hcms-toggle__arrow {
257
258
  gap: 0;
258
259
  padding: 0 10px;
259
260
  border-radius: 0;
260
261
  border-left-width: 0;
261
262
  }
262
- [${pt}] .hcms-toggle__menu {
263
+ [${Yt}] .hcms-toggle__menu {
263
264
  all: unset;
264
265
  box-sizing: border-box;
265
266
  min-width: 180px;
@@ -268,12 +269,12 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
268
269
  font-size: 14px;
269
270
  line-height: 1.5;
270
271
  color: var(--hcms-toggle-color, currentColor);
271
- background: ${ms};
272
+ background: ${gl};
272
273
  border: 1px solid var(--mirk-input-border, #D8C8AF);
273
274
  border-radius: var(--mirk-radius, 5px);
274
275
  box-shadow: 0 14px 34px -14px rgba(0, 0, 0, .45);
275
276
  }
276
- [${pt}] .hcms-toggle__item {
277
+ [${Yt}] .hcms-toggle__item {
277
278
  all: unset;
278
279
  box-sizing: border-box;
279
280
  display: block;
@@ -282,27 +283,27 @@ ${n}`:n,o.hidden=!1;continue}}t.push(n)}t.length&&e.errorEl&&(e.errorEl.textCont
282
283
  border-radius: 0;
283
284
  cursor: pointer;
284
285
  }
285
- [${pt}] .hcms-toggle__item::before {
286
+ [${Yt}] .hcms-toggle__item::before {
286
287
  content: "\u25CB";
287
288
  margin-right: 8px;
288
289
  opacity: .55;
289
290
  }
290
- [${pt}] .hcms-toggle__item[aria-checked="true"]::before {
291
+ [${Yt}] .hcms-toggle__item[aria-checked="true"]::before {
291
292
  content: "\u25CF";
292
293
  opacity: 1;
293
294
  }
294
- [${pt}] .hcms-toggle__item:hover {
295
+ [${Yt}] .hcms-toggle__item:hover {
295
296
  background: color-mix(in srgb, currentColor 12%, transparent);
296
297
  }
297
- [${pt}] .hcms-toggle__item:focus-visible {
298
+ [${Yt}] .hcms-toggle__item:focus-visible {
298
299
  outline: 2px solid currentColor;
299
300
  outline-offset: -3px;
300
301
  }
301
302
  @media (pointer: coarse) {
302
- [${pt}] .hcms-toggle__main,
303
- [${pt}] .hcms-toggle__arrow { min-height: 44px; }
303
+ [${Yt}] .hcms-toggle__main,
304
+ [${Yt}] .hcms-toggle__arrow { min-height: 44px; }
304
305
  }
305
- `;function Th({search:e="",cookie:t="",forced:n=null}={}){let r=typeof e=="string"?e:"",o=r.indexOf("?"),i=o===-1?r:r.slice(o+1),s=new URLSearchParams(i).get("editmode");return s?s==="true":n!=null?!!n:/(?:^|;\s*)isAdminOfCurrentResource=[^;]/.test(t)}var ds=new WeakMap;function yc(e,t){try{e.globalCompositeOperation="copy",e.fillStyle=t,e.fillRect(0,0,1,1);let n=e.getImageData(0,0,1,1).data;return{r:n[0],g:n[1],b:n[2],a:n[3]/255}}catch{return null}}function Eh(e){if(ds.has(e))return ds.get(e);let t=null;try{let n=e.createElement("canvas");if(n.width=n.height=1,t=n.getContext?n.getContext("2d",{willReadFrequently:!0}):null,t){let r=yc(t,"rgb(1, 2, 3)");(!r||r.r!==1||r.g!==2||r.b!==3||r.a!==1)&&(t=null)}}catch{t=null}return ds.set(e,t),t}function _h(e,t){let n=String(e??"").trim();if(!n)return null;let r=Ch(n);if(r)return r;let o=t&&t.defaultView;if(!o||!o.CSS||typeof o.CSS.supports!="function"||!o.CSS.supports("color",n))return null;let i=Eh(t);return i?yc(i,n):null}function Ch(e){let t=/rgba?\(([^)]+)\)/.exec(String(e??""));if(!t)return null;let n=t[1].split(/[\s,/]+/).filter(Boolean);if(n.length<3)return null;let r=n.slice(0,3).map(Number);if(r.some(Number.isNaN))return null;let o=n[3],i=o===void 0?1:o.endsWith("%")?Number(o.slice(0,-1))/100:Number(o);return{r:r[0],g:r[1],b:r[2],a:Number.isNaN(i)?1:i}}function dc({r:e,g:t,b:n}){let r=o=>{let i=o/255;return i<=.03928?i/12.92:((i+.055)/1.055)**2.4};return .2126*r(e)+.7152*r(t)+.0722*r(n)}function hc(e,t){let n=dc(e),r=dc(t);return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}var mc={r:10,g:10,b:10},pc={r:250,g:250,b:250};function gc(e,t){let n=e.a==null?1:e.a;return{r:e.r*n+t.r*(1-n),g:e.g*n+t.g*(1-n),b:e.b*n+t.b*(1-n)}}function Oh(e){if(!e)return"light";let t=hc(gc(e,mc),mc),n=hc(gc(e,pc),pc);return t>n?"dark":"light"}function Zr(e,t){for(let[n,r]of Object.entries(t))e.style.setProperty(n,r,"important")}function hs(e){let t=e.ownerDocument&&e.ownerDocument.defaultView,n=e.querySelector(".hcms-toggle__main");if(!t||!n||typeof t.getComputedStyle!="function")return;let r=_h(t.getComputedStyle(n).color,e.ownerDocument);e.setAttribute("data-hcms-surface",Oh(r))}function Nh(e){hs(e);let t=e.ownerDocument,n=t&&t.defaultView;if(!n)return;let r=0,o=()=>{if(!r){if(typeof n.requestAnimationFrame!="function")return e.isConnected?hs(e):l();r=n.requestAnimationFrame(()=>{if(r=0,!e.isConnected)return l();hs(e)})}};typeof n.requestAnimationFrame=="function"&&o(),t.readyState!=="complete"&&n.addEventListener("load",o,{once:!0});let i=typeof n.MutationObserver=="function"?new n.MutationObserver(o):null;i&&(i.observe(t.documentElement,{attributes:!0}),t.body&&i.observe(t.body,{attributes:!0}));let s=typeof n.matchMedia=="function"?n.matchMedia("(prefers-color-scheme: dark)"):null;s&&typeof s.addEventListener=="function"&&s.addEventListener("change",o);function l(){i&&i.disconnect(),s&&typeof s.removeEventListener=="function"&&s.removeEventListener("change",o)}}function Rh({open:e,close:t,isOpen:n,getTheme:r=()=>null,views:o=Jo},i=document){let s=i.querySelector(`[${pt}]`);if(s)return s;if(!i.querySelector(`[${uc}]`)){let V=i.createElement("style");V.setAttribute(uc,""),V.setAttribute("editor-ui",""),i.getElementById(cc)||(V.id=cc),V.setAttribute("no-save",""),V.setAttribute("snapshot-remove",""),V.setAttribute("save-ignore",""),V.textContent=Sh,i.head.insertBefore(V,i.head.firstChild)}let l=i.createElement("hypercms-toggle");l.className="hcms-shell pixel-quiet",i.getElementById(ac)||(l.id=ac),l.setAttribute(pt,""),l.setAttribute("editor-ui",""),l.setAttribute("no-save",""),l.setAttribute("snapshot-remove",""),l.setAttribute("save-ignore",""),l.innerHTML='<button type="button" class="hcms-toggle__main mirk-button"><span class="hcms-toggle__open">Edit content</span><span class="hcms-toggle__close">Close editor</span></button>';let a=i.defaultView,h=l.querySelector(".hcms-toggle__main"),d=Jo.filter(V=>o.includes(V)),b=d.length>1,f=b?Mh(i):null,u=b?Lh(i,d):null;b&&(l.setAttribute(bc,""),l.appendChild(f),l.appendChild(u)),Zr(l,{position:"fixed",right:"calc(var(--hcms-toggle-offset, 16px) + var(--hcms-toggle-shift, 0px))",bottom:"calc(var(--hcms-toggle-offset, 16px) + env(safe-area-inset-bottom, 0px))","z-index":"var(--hcms-toggle-z, 2147482900)"}),Zr(h,{background:ms}),f&&Zr(f,{background:ms}),u&&Zr(u,{position:"absolute",right:"0",bottom:"calc(100% + 8px)","z-index":"var(--hcms-toggle-z, 2147482900)",display:"none"});let m=()=>u?[...u.querySelectorAll('[role="menuitemradio"]')]:[];function p(V){if(!(!V||typeof V.focus!="function"))try{V.focus({preventScroll:!0})}catch{V.focus()}}function v(V){let xe=m();xe.length&&p(xe[(V+xe.length)%xe.length])}function A(){let V=fc(a);for(let xe of m())xe.setAttribute("aria-checked",String(xe.getAttribute("data-hcms-view")===V))}function M(V){l.contains(V.target)||B()}function L(V){u&&(u.hidden=!V,Zr(u,{display:V?"block":"none"}),f.setAttribute("aria-expanded",String(V)),V?(A(),i.addEventListener("pointerdown",M,!0)):i.removeEventListener("pointerdown",M,!0))}function H(V=0){L(!0),v(V)}function B({focusArrow:V=!1}={}){!u||u.hidden||(L(!1),V&&p(f))}function te(){let V=fc(a);return V&&d.includes(V)?V:null}async function re(V){await e({view:V}),vh(a,V)}async function K(){if(n()){t();return}let V=te();return V?e({view:V}):b?H():e(d[0]?{view:d[0]}:{})}async function W(V){try{await V()}catch(xe){console.warn("hypercms: toggle failed to open the CMS",xe)}}l.addEventListener("click",async V=>{f&&f.contains(V.target)||u&&u.contains(V.target)||await W(K)}),f&&(f.addEventListener("click",V=>{V.preventDefault(),u.hidden?H():B({focusArrow:!0})}),f.addEventListener("keydown",V=>{if(V.key==="ArrowUp"){V.preventDefault(),H(-1);return}(V.key==="ArrowDown"||V.key==="Enter"||V.key===" ")&&(V.preventDefault(),H(0))}),u.addEventListener("click",V=>{let xe=V.target.closest?.('[role="menuitemradio"]');xe&&(V.preventDefault(),B(),W(()=>re(xe.getAttribute("data-hcms-view"))))}),u.addEventListener("keydown",V=>{let xe=m(),We=xe.indexOf(i.activeElement);switch(V.key){case"ArrowDown":V.preventDefault(),v(We+1);break;case"ArrowUp":V.preventDefault(),v(We-1);break;case"Home":V.preventDefault(),v(0);break;case"End":V.preventDefault(),v(xe.length-1);break;case"Enter":case" ":if(V.preventDefault(),We===-1)break;B(),W(()=>re(xe[We].getAttribute("data-hcms-view")));break;case"Escape":V.preventDefault(),B({focusArrow:!0});break;case"Tab":B();break}}));let he=V=>{let xe=r();l.classList.toggle("light",xe==="light"),l.classList.toggle("dark",xe==="dark"),V?l.setAttribute(Xo,"open"):l.removeAttribute(Xo)};return he(n()),i.addEventListener("hcms:open",()=>he(!0)),i.addEventListener("hcms:close",()=>he(!1)),i.body.appendChild(l),Rn(i),Nh(l),l}function Mh(e){let t=e.createElement("button");return t.type="button",t.className="hcms-toggle__arrow mirk-button",t.setAttribute("aria-haspopup","menu"),t.setAttribute("aria-expanded","false"),t.setAttribute("aria-label","Choose where to edit"),t.textContent="\u25BE",t}function Lh(e,t){let n=e.createElement("div");n.className="hcms-toggle__menu",n.setAttribute("role","menu"),n.setAttribute("aria-label","Where to edit"),n.hidden=!0;for(let r of t){let o=e.createElement("button");o.type="button",o.className="hcms-toggle__item",o.setAttribute("role","menuitemradio"),o.setAttribute("aria-checked","false"),o.setAttribute("data-hcms-view",r),o.tabIndex=-1,o.textContent=xh[r],n.appendChild(o)}return n}function xc(e){if(typeof window>"u"||typeof document>"u")return;let t=window.__hyperclayEditMode!=null?window.__hyperclayEditMode:null;if(!Th({search:window.location.search,cookie:document.cookie,forced:t}))return;let n=()=>{document.body&&e.hasRules(document)&&Rh(e)};document.readyState==="loading"?document.addEventListener("DOMContentLoaded",n,{once:!0}):n()}function vc(e){if(va(e),typeof document<"u"){let t=document.getElementById("hcms-shell-styles");t?.tagName==="LINK"&&t.remove(),Rn(document)}}var gs={sidebar:Oa,inline:Ja};function Zo(e={}){let t=e.view||(He.isOpen?He.ctx.view.name:"sidebar"),n=gs[t];if(!n)throw new Error(`hypercms: unknown view "${t}" (expected ${Object.keys(gs).join(" or ")})`);let r=He.isOpen?{...He.opts,...e,view:t}:e,o=r.pageRoot||(typeof document<"u"?document.body:null);if(!o)throw new Error("hypercms: no pageRoot available");let i=o.ownerDocument||(typeof document<"u"?document:null);if(!i)throw new Error("hypercms: no document available");let s=null,l=null;if(He.isOpen){if(He.ctx.view.name===t)return;s=He.ctx.previouslyFocused,l=He.ctx.view.name,Yo(He.ctx,{restoreFocus:!1,updateUrl:!1,reason:"switch"})}Ua();let a=n({doc:i,pageRoot:o,opts:r}),h=oc({view:a,doc:i,pageRoot:o,opts:r,onCloseRequested:()=>bs(),onViewRequested:d=>Zo({view:d})});s&&(h.previouslyFocused=s);try{a.mount(h.initialData),ic(h),a.focusOnOpen(),He.isOpen=!0,He.ctx=h,He.opts=r,h.dispatch("hcms:open",{pageRoot:o,previous:l})}catch(d){throw Yo(h,{dispatch:!1,restoreFocus:!!s,updateUrl:!1}),d}}function bs(){He.isOpen&&Yo(He.ctx)}function wc(){He.isOpen&&He.ctx.view.refresh("api")}function Ih(){return He.isOpen}function jh(){return He.isOpen&&He.ctx?He.ctx.view.name:null}var Dh={getData(){return He.isOpen?Gt(He.ctx):null},setValue(e,t){if(!He.isOpen)throw new Error("hypercms: cms is not open");let n=He.ctx,r=yn(e),o=Fn(n.pageRules,r);if(o===void 0)throw new Error(`hypercms: no rule at path "${e}"`);if(typeof o!="string"||o.endsWith("[]"))throw new Error(`hypercms: setValue requires a leaf scalar path; "${e}" is not a leaf`);let i=Io(n.formRoot,e);if(!i)throw new Error(`hypercms: no field element at path "${e}"`);jo(i,t,n.formRoot,e),tn(Gt(n),{path:e,structural:!1},n)},addItem(e){if(!He.isOpen)throw new Error("hypercms: cms is not open");zr(e,He.ctx)},removeItem(e){if(!He.isOpen)throw new Error("hypercms: cms is not open");let t=He.ctx,n=yn(e);if(typeof n[n.length-1]!="number")throw new Error(`hypercms: removeItem requires an item path; "${e}" is not an array index`);let o=Fn(t.pageRules,n.slice(0,-1));if(!(Array.isArray(o)||typeof o=="string"&&o.endsWith("[]")))throw new Error(`hypercms: removeItem requires an item path; parent of "${e}" is not an array`);let s=t.formRoot.querySelector(`[data-hcms-path="${Hh(e)}"]`);if(!s)throw new Error(`hypercms: no element at path "${e}"`);mr(s,t)},refresh:wc,_commit(){if(!He.isOpen)return;let e=He.ctx;return Do(e.formRoot),Hn("Update",()=>tn(Gt(e),{path:"",structural:!0},e))}},Ph=250,Fh=1e4;function qh(){typeof window>"u"||typeof document>"u"||lc(window.location?window.location.search:"")&&(He.isOpen||Bh(()=>{if(!He.isOpen)try{Zo()}catch(e){console.warn("hypercms: auto-open failed",e)}}))}function ps(){return!!document.body&&!!It("Mutation")}function Bh(e){if(ps()){queueMicrotask(e);return}let t=Date.now()+Fh,n=!1,r=null,o=null,i=()=>{n||(n=!0,r!==null&&clearInterval(r),o&&o())};function s(){if(He.isOpen){i();return}ps()&&(i(),e())}o=fr(document,ra,s),r=setInterval(()=>{if(He.isOpen){i();return}if(ps()){i(),e();return}Date.now()>=t&&(i(),console.warn("hypercms: ?cms=true auto-open gave up \u2014 no mutation hub appeared. Load clayjs or hyperclayjs (or just the mutation utility) so the CMS can initialize."))},Ph)}qh();xc({open:Zo,close:bs,isOpen:Ih,getTheme:()=>He.opts?.theme,views:Object.keys(gs),hasRules:e=>!!Vt.findRules(e,"cms")});var ks={open:Zo,close:bs,refresh:wc,api:Dh,get isOpen(){return He.isOpen},currentView:jh,path:ji,scaffold:Hr,morphForm:go};function Hh(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}var Ac=`/* GENERATED by scripts/build-theme.js from mirk-interface/mirk.css \u2014 DO NOT EDIT.
306
+ `;function kp({search:e="",cookie:t="",forced:n=null}={}){let r=typeof e=="string"?e:"",o=r.indexOf("?"),s=o===-1?r:r.slice(o+1),l=new URLSearchParams(s).get("editmode");return l?l==="true":n!=null?!!n:/(?:^|;\s*)isAdminOfCurrentResource=[^;]/.test(t)}var ml=new WeakMap;function Gf(e,t){try{e.globalCompositeOperation="copy",e.fillStyle=t,e.fillRect(0,0,1,1);let n=e.getImageData(0,0,1,1).data;return{r:n[0],g:n[1],b:n[2],a:n[3]/255}}catch{return null}}function yp(e){if(ml.has(e))return ml.get(e);let t=null;try{let n=e.createElement("canvas");if(n.width=n.height=1,t=n.getContext?n.getContext("2d",{willReadFrequently:!0}):null,t){let r=Gf(t,"rgb(1, 2, 3)");(!r||r.r!==1||r.g!==2||r.b!==3||r.a!==1)&&(t=null)}}catch{t=null}return ml.set(e,t),t}function xp(e,t){let n=String(e??"").trim();if(!n)return null;let r=vp(n);if(r)return r;let o=t&&t.defaultView;if(!o||!o.CSS||typeof o.CSS.supports!="function"||!o.CSS.supports("color",n))return null;let s=yp(t);return s?Gf(s,n):null}function vp(e){let t=/rgba?\(([^)]+)\)/.exec(String(e??""));if(!t)return null;let n=t[1].split(/[\s,/]+/).filter(Boolean);if(n.length<3)return null;let r=n.slice(0,3).map(Number);if(r.some(Number.isNaN))return null;let o=n[3],s=o===void 0?1:o.endsWith("%")?Number(o.slice(0,-1))/100:Number(o);return{r:r[0],g:r[1],b:r[2],a:Number.isNaN(s)?1:s}}function Uf({r:e,g:t,b:n}){let r=o=>{let s=o/255;return s<=.03928?s/12.92:((s+.055)/1.055)**2.4};return .2126*r(e)+.7152*r(t)+.0722*r(n)}function $f(e,t){let n=Uf(e),r=Uf(t);return(Math.max(n,r)+.05)/(Math.min(n,r)+.05)}var Hf={r:10,g:10,b:10},zf={r:250,g:250,b:250};function Vf(e,t){let n=e.a==null?1:e.a;return{r:e.r*n+t.r*(1-n),g:e.g*n+t.g*(1-n),b:e.b*n+t.b*(1-n)}}function wp(e){if(!e)return"light";let t=$f(Vf(e,Hf),Hf),n=$f(Vf(e,zf),zf);return t>n?"dark":"light"}function Bo(e,t){for(let[n,r]of Object.entries(t))e.style.setProperty(n,r,"important")}function pl(e){let t=e.ownerDocument&&e.ownerDocument.defaultView,n=e.querySelector(".hcms-toggle__main");if(!t||!n||typeof t.getComputedStyle!="function")return;let r=xp(t.getComputedStyle(n).color,e.ownerDocument);e.setAttribute("data-hcms-surface",wp(r))}function Ap(e){pl(e);let t=e.ownerDocument,n=t&&t.defaultView;if(!n)return;let r=0,o=()=>{if(!r){if(typeof n.requestAnimationFrame!="function")return e.isConnected?pl(e):i();r=n.requestAnimationFrame(()=>{if(r=0,!e.isConnected)return i();pl(e)})}};typeof n.requestAnimationFrame=="function"&&o(),t.readyState!=="complete"&&n.addEventListener("load",o,{once:!0});let s=typeof n.MutationObserver=="function"?new n.MutationObserver(o):null;s&&(s.observe(t.documentElement,{attributes:!0}),t.body&&s.observe(t.body,{attributes:!0}));let l=typeof n.matchMedia=="function"?n.matchMedia("(prefers-color-scheme: dark)"):null;l&&typeof l.addEventListener=="function"&&l.addEventListener("change",o);function i(){s&&s.disconnect(),l&&typeof l.removeEventListener=="function"&&l.removeEventListener("change",o)}}function Sp({open:e,close:t,isOpen:n,getTheme:r=()=>null,views:o=qs},s=document){let l=s.querySelector(`[${Yt}]`);if(l)return l;if(!s.querySelector(`[${Bf}]`)){let I=s.createElement("style");I.setAttribute(Bf,""),I.setAttribute("editor-ui",""),s.getElementById(Ff)||(I.id=Ff),I.setAttribute("no-save",""),I.setAttribute("snapshot-remove",""),I.setAttribute("save-ignore",""),I.textContent=bp,s.head.insertBefore(I,s.head.firstChild)}let i=s.createElement("hypercms-toggle");i.className="hcms-shell pixel-quiet",s.getElementById(Df)||(i.id=Df),i.setAttribute(Yt,""),i.setAttribute("editor-ui",""),i.setAttribute("no-save",""),i.setAttribute("snapshot-remove",""),i.setAttribute("save-ignore",""),i.innerHTML='<button type="button" class="hcms-toggle__main mirk-button"><span class="hcms-toggle__open">Edit content</span><span class="hcms-toggle__close">Close editor</span></button>';let a=s.defaultView,c=i.querySelector(".hcms-toggle__main"),h=qs.filter(I=>o.includes(I)),u=h.length>1,f=u?Tp(s):null,d=u?Ep(s,h):null;u&&(i.setAttribute(Wf,""),i.appendChild(f),i.appendChild(d)),Bo(i,{position:"fixed",right:"calc(var(--hcms-toggle-offset, 16px) + var(--hcms-toggle-shift, 0px))",bottom:"calc(var(--hcms-toggle-offset, 16px) + env(safe-area-inset-bottom, 0px))","z-index":"var(--hcms-toggle-z, 2147482900)"}),Bo(c,{background:gl}),f&&Bo(f,{background:gl}),d&&Bo(d,{position:"absolute",right:"0",bottom:"calc(100% + 8px)","z-index":"var(--hcms-toggle-z, 2147482900)",display:"none"});let p=()=>d?[...d.querySelectorAll('[role="menuitemradio"]')]:[];function y(I){if(!(!I||typeof I.focus!="function"))try{I.focus({preventScroll:!0})}catch{I.focus()}}function m(I){let P=p();P.length&&y(P[(I+P.length)%P.length])}function g(){let I=qf(a);for(let P of p())P.setAttribute("aria-checked",String(P.getAttribute("data-hcms-view")===I))}function k(I){i.contains(I.target)||x()}function S(I){d&&(d.hidden=!I,Bo(d,{display:I?"block":"none"}),f.setAttribute("aria-expanded",String(I)),I?(g(),s.addEventListener("pointerdown",k,!0)):s.removeEventListener("pointerdown",k,!0))}function v(I=0){S(!0),m(I)}function x({focusArrow:I=!1}={}){!d||d.hidden||(S(!1),I&&y(f))}function O(){let I=qf(a);return I&&h.includes(I)?I:null}async function C(I){await e({view:I}),mp(a,I)}async function _(){if(n()){t();return}let I=O();return I?e({view:I}):u?v():e(h[0]?{view:h[0]}:{})}async function M(I){try{await I()}catch(P){console.warn("hypercms: toggle failed to open the CMS",P)}}i.addEventListener("click",async I=>{f&&f.contains(I.target)||d&&d.contains(I.target)||await M(_)}),f&&(f.addEventListener("click",I=>{I.preventDefault(),d.hidden?v():x({focusArrow:!0})}),f.addEventListener("keydown",I=>{if(I.key==="ArrowUp"){I.preventDefault(),v(-1);return}(I.key==="ArrowDown"||I.key==="Enter"||I.key===" ")&&(I.preventDefault(),v(0))}),d.addEventListener("click",I=>{let P=I.target.closest?.('[role="menuitemradio"]');P&&(I.preventDefault(),x(),M(()=>C(P.getAttribute("data-hcms-view"))))}),d.addEventListener("keydown",I=>{let P=p(),R=P.indexOf(s.activeElement);switch(I.key){case"ArrowDown":I.preventDefault(),m(R+1);break;case"ArrowUp":I.preventDefault(),m(R-1);break;case"Home":I.preventDefault(),m(0);break;case"End":I.preventDefault(),m(P.length-1);break;case"Enter":case" ":if(I.preventDefault(),R===-1)break;x(),M(()=>C(P[R].getAttribute("data-hcms-view")));break;case"Escape":I.preventDefault(),x({focusArrow:!0});break;case"Tab":x();break}}));let j=I=>{let P=r();i.classList.toggle("light",P==="light"),i.classList.toggle("dark",P==="dark"),I?i.setAttribute(Bs,"open"):i.removeAttribute(Bs)};return j(n()),s.addEventListener("hcms:open",()=>j(!0)),s.addEventListener("hcms:close",()=>j(!1)),s.body.appendChild(i),dr(s),Ap(i),i}function Tp(e){let t=e.createElement("button");return t.type="button",t.className="hcms-toggle__arrow mirk-button",t.setAttribute("aria-haspopup","menu"),t.setAttribute("aria-expanded","false"),t.setAttribute("aria-label","Choose where to edit"),t.textContent="\u25BE",t}function Ep(e,t){let n=e.createElement("div");n.className="hcms-toggle__menu",n.setAttribute("role","menu"),n.setAttribute("aria-label","Where to edit"),n.hidden=!0;for(let r of t){let o=e.createElement("button");o.type="button",o.className="hcms-toggle__item",o.setAttribute("role","menuitemradio"),o.setAttribute("aria-checked","false"),o.setAttribute("data-hcms-view",r),o.tabIndex=-1,o.textContent=hp[r],n.appendChild(o)}return n}function Yf(e){if(typeof window>"u"||typeof document>"u")return;let t=window.__hyperclayEditMode!=null?window.__hyperclayEditMode:null;if(!kp({search:window.location.search,cookie:document.cookie,forced:t}))return;let n=()=>{document.body&&e.hasRules(document)&&Sp(e)};document.readyState==="loading"?document.addEventListener("DOMContentLoaded",n,{once:!0}):n()}function Xf(e){if(Yc(e),typeof document<"u"){let t=document.getElementById("hcms-shell-styles");t?.tagName==="LINK"&&t.remove(),dr(document)}}var kl={sidebar:rf,inline:Ef};function Us(e={}){let t=e.view||(Lt.isOpen?Lt.ctx.view.name:"sidebar"),n=kl[t];if(!n)throw new Error(`hypercms: unknown view "${t}" (expected ${Object.keys(kl).join(" or ")})`);let r=Lt.isOpen?{...Lt.opts,...e,view:t}:e,o=r.pageRoot||(typeof document<"u"?document.body:null);if(!o)throw new Error("hypercms: no pageRoot available");let s=o.ownerDocument||(typeof document<"u"?document:null);if(!s)throw new Error("hypercms: no document available");let l=null,i=null;if(Lt.isOpen){if(Lt.ctx.view.name===t)return;l=Lt.ctx.previouslyFocused,i=Lt.ctx.view.name,Fs(Lt.ctx,{restoreFocus:!1,updateUrl:!1,reason:"switch"})}kf();let a=n({doc:s,pageRoot:o,opts:r}),c=If({view:a,doc:s,pageRoot:o,opts:r,onCloseRequested:()=>yl(),onViewRequested:h=>Us({view:h})});l&&(c.previouslyFocused=l);try{a.mount(c.initialData),Lf(c),a.focusOnOpen(),Lt.isOpen=!0,Lt.ctx=c,Lt.opts=r,c.dispatch("hcms:open",{pageRoot:o,previous:i})}catch(h){throw Fs(c,{dispatch:!1,restoreFocus:!!l,updateUrl:!1}),h}}function yl(){Lt.isOpen&&Fs(Lt.ctx)}function Jf(){Lt.isOpen&&Lt.ctx.view.refresh("api")}function _p(){return Lt.isOpen}function Op(){return Lt.isOpen&&Lt.ctx?Lt.ctx.view.name:null}var Np={getData(){return Lt.isOpen?vn(Lt.ctx):null},setValue(e,t){if(!Lt.isOpen)throw new Error("hypercms: cms is not open");let n=Lt.ctx,r=Jn(e),o=Ar(n.pageRules,r);if(o===void 0)throw new Error(`hypercms: no rule at path "${e}"`);if(typeof o!="string"||o.endsWith("[]"))throw new Error(`hypercms: setValue requires a leaf scalar path; "${e}" is not a leaf`);let s=As(n.formRoot,e);if(!s)throw new Error(`hypercms: no field element at path "${e}"`);Ss(s,t,n.formRoot,e),_n(vn(n),{path:e,structural:!1},n)},addItem(e){if(!Lt.isOpen)throw new Error("hypercms: cms is not open");Mo(e,Lt.ctx)},removeItem(e){if(!Lt.isOpen)throw new Error("hypercms: cms is not open");let t=Lt.ctx,n=Jn(e);if(typeof n[n.length-1]!="number")throw new Error(`hypercms: removeItem requires an item path; "${e}" is not an array index`);let o=Ar(t.pageRules,n.slice(0,-1));if(!(Array.isArray(o)||typeof o=="string"&&o.endsWith("[]")))throw new Error(`hypercms: removeItem requires an item path; parent of "${e}" is not an array`);let l=t.formRoot.querySelector(`[data-hcms-path="${Lp(e)}"]`);if(!l)throw new Error(`hypercms: no element at path "${e}"`);no(l,t)},refresh:Jf,_commit(){if(!Lt.isOpen)return;let e=Lt.ctx;return Ts(e.formRoot),Er("Update",()=>_n(vn(e),{path:"",structural:!0},e))}},Cp=250,Mp=1e4;function Rp(){typeof window>"u"||typeof document>"u"||Pf(window.location?window.location.search:"")&&(Lt.isOpen||Ip(()=>{if(!Lt.isOpen)try{Us()}catch(e){console.warn("hypercms: auto-open failed",e)}}))}function bl(){return!!document.body&&!!cn("Mutation")}function Ip(e){if(bl()){queueMicrotask(e);return}let t=Date.now()+Mp,n=!1,r=null,o=null,s=()=>{n||(n=!0,r!==null&&clearInterval(r),o&&o())};function l(){if(Lt.isOpen){s();return}bl()&&(s(),e())}o=Qr(document,Mc,l),r=setInterval(()=>{if(Lt.isOpen){s();return}if(bl()){s(),e();return}Date.now()>=t&&(s(),console.warn("hypercms: ?cms=true auto-open gave up \u2014 no mutation hub appeared. Load clayjs or hyperclayjs (or just the mutation utility) so the CMS can initialize."))},Cp)}Rp();Yf({open:Us,close:yl,isOpen:_p,getTheme:()=>Lt.opts?.theme,views:Object.keys(kl),hasRules:e=>!!pn.findRules(e,"cms")});var xl={open:Us,close:yl,refresh:Jf,api:Np,get isOpen(){return Lt.isOpen},currentView:Op,path:Di,scaffold:Oo,morphForm:ss};function Lp(e){return typeof CSS<"u"&&CSS.escape?CSS.escape(e):String(e).replace(/[^a-zA-Z0-9_\-.*]/g,t=>"\\"+t)}var Zf=`/* GENERATED by scripts/build-theme.js from mirk-interface/mirk.css \u2014 DO NOT EDIT.
306
307
  Source of truth: mirk-interface/mirk.css + src/theme/pixel-quiet.overrides.css.
307
308
  Regenerate with: npm run build:theme */
308
309
 
@@ -2198,4 +2199,4 @@ tr.hcms-shell.hcms-inline-ghost { display: table-row; }
2198
2199
  will-change: transform;
2199
2200
  }
2200
2201
  .hcms-inline-highlight[hidden] { display: none; }
2201
- `;typeof window<"u"&&typeof document<"u"&&(function(){if(window.__mirk)return;window.__mirk=!0;let e='<svg viewBox="0 0 16 16" aria-hidden="true"><path d="M4 4 12 12M12 4 4 12" stroke="currentColor" stroke-width="2" stroke-linecap="square" fill="none"/></svg>';document.addEventListener("click",n=>{let r=n.target.closest(".mirk-number__step");if(!r)return;let o=r.closest(".mirk-number").querySelector("input[type=number]");o&&(r.dataset.step==="up"?o.stepUp():o.stepDown(),o.dispatchEvent(new Event("change",{bubbles:!0})))}),document.addEventListener("input",n=>{let r=n.target.closest(".mirk-slider__input");r&&r.closest(".mirk-slider").style.setProperty("--mirk-value",`${r.value}%`)}),document.addEventListener("change",n=>{let r=n.target.closest(".mirk-file__input");if(!r||!r.files.length)return;let o=r.closest(".mirk-file"),i=o.querySelector(".mirk-file__name");if(!i)return;let s=r.files[0],l=document.createElement("a");if(l.className="mirk-file__name",l.dataset.filled="",l.href=URL.createObjectURL(s),l.target="_blank",l.rel="noopener",l.textContent=s.name,i.replaceWith(l),!o.querySelector(".mirk-file__remove")){let a=document.createElement("button");a.type="button",a.className="mirk-file__remove",a.setAttribute("aria-label","Remove file"),a.innerHTML=e,l.after(a)}}),document.addEventListener("change",n=>{let r=n.target.closest(".mirk-image__input");if(!r||!r.files.length)return;let o=r.closest(".mirk-image"),i=o.querySelector(".mirk-image__preview");if(!i)return;let s=o.querySelector(".mirk-image__placeholder"),l=new FileReader;l.onload=a=>{i.src=a.target.result,i.removeAttribute("hidden"),s&&s.setAttribute("hidden",""),o.querySelector(".mirk-image__thumb")?.removeAttribute("hidden"),o.querySelector(".mirk-image__upload")?.setAttribute("hidden","")},l.readAsDataURL(r.files[0])}),document.addEventListener("click",n=>{let r=n.target.closest(".mirk-file__remove");if(r){let i=r.closest(".mirk-file"),s=i?.querySelector(".mirk-file__input"),l=i?.querySelector(".mirk-file__name");if(s&&(s.value=""),l){let a=document.createElement("span");a.className="mirk-file__name",a.textContent="No file chosen",l.replaceWith(a)}r.remove();return}let o=n.target.closest(".mirk-image__remove");if(o){let i=o.closest(".mirk-image"),s=i?.querySelector(".mirk-image__input"),l=i?.querySelector(".mirk-image__preview");s&&(s.value=""),l&&(l.removeAttribute("src"),l.setAttribute("hidden","")),i?.querySelector(".mirk-image__thumb")?.setAttribute("hidden",""),i?.querySelector(".mirk-image__upload")?.removeAttribute("hidden")}});function t(n,r){let o=document.createElement("span");o.textContent=n;let i=document.createElement("input");i.type="hidden",i.name="tags[]",i.value=n;let s=document.createElement("button");s.type="button",s.className="mirk-tags__remove",s.textContent="\xD7";let l=document.createElement("span");if(l.className="mirk-tags__chip",r){let a=document.createElement("span");a.className="mirk-tags__chip-inner",a.append(o,i,s),l.append(a)}else l.append(o,i,s);return l}document.addEventListener("keydown",n=>{let r=n.target.closest(".mirk-tags__input");if(!r)return;let o=r.closest(".mirk-tags");if(n.key==="Enter"||n.key===","){let i=r.value.trim();if(!i)return;n.preventDefault(),r.before(t(i,o.classList.contains("mirk-tags--round"))),r.value=""}else if(n.key==="Backspace"&&!r.value){let i=o.querySelectorAll(".mirk-tags__chip");i[i.length-1]?.remove()}}),document.addEventListener("click",n=>{let r=n.target.closest(".mirk-tags__remove");if(r){r.closest(".mirk-tags__chip").remove();return}let o=n.target.closest(".mirk-tags");o&&n.target===o&&o.querySelector(".mirk-tags__input")?.focus()}),document.addEventListener("click",n=>{let r=n.target.closest("[data-mirk-chip]");if(!r)return;let o=r.getAttribute("data-mirk-chip");if(o==="open")r.closest(".mirk-chip")?.classList.add("mirk-chip--open");else if(o==="collapse")r.closest(".mirk-chip")?.classList.remove("mirk-chip--open");else if(o==="changes"){let i=r.closest(".mirk-chip__panel")?.classList.toggle("is-changes");r.textContent=i?"(hide changes)":"(view changes)"}}),document.addEventListener("click",n=>{let r=n.target.closest("[data-copy-btn]");if(!r)return;let o=r.closest("[data-copy]");if(!o)return;let i=o.cloneNode(!0);i.querySelectorAll("[data-copy-btn]").forEach(a=>a.remove());let l=o.getAttribute("data-copy")==="text"?i.textContent.replace(/^\s+|\s+$/g,""):i.innerHTML.replace(/\s+data-copy(="[^"]*")?/g,"").replace(/^\s*\n/gm,"").trim();navigator.clipboard.writeText(l).then(()=>{let a=r.textContent;r.textContent="copied",r.dataset.copied="",setTimeout(()=>{r.textContent=a,delete r.dataset.copied},1200)}).catch(()=>{r.textContent="error",setTimeout(()=>{r.textContent="copy"},1200)})})})();vc(Ac);var zh=ks,Vh={cms:ks};return Rc(Wh);})();
2202
+ `;typeof window<"u"&&typeof document<"u"&&(function(){if(window.__mirk)return;window.__mirk=!0;let e='<svg viewBox="0 0 16 16" aria-hidden="true"><path d="M4 4 12 12M12 4 4 12" stroke="currentColor" stroke-width="2" stroke-linecap="square" fill="none"/></svg>';document.addEventListener("click",n=>{let r=n.target.closest(".mirk-number__step");if(!r)return;let o=r.closest(".mirk-number").querySelector("input[type=number]");o&&(r.dataset.step==="up"?o.stepUp():o.stepDown(),o.dispatchEvent(new Event("change",{bubbles:!0})))}),document.addEventListener("input",n=>{let r=n.target.closest(".mirk-slider__input");r&&r.closest(".mirk-slider").style.setProperty("--mirk-value",`${r.value}%`)}),document.addEventListener("change",n=>{let r=n.target.closest(".mirk-file__input");if(!r||!r.files.length)return;let o=r.closest(".mirk-file"),s=o.querySelector(".mirk-file__name");if(!s)return;let l=r.files[0],i=document.createElement("a");if(i.className="mirk-file__name",i.dataset.filled="",i.href=URL.createObjectURL(l),i.target="_blank",i.rel="noopener",i.textContent=l.name,s.replaceWith(i),!o.querySelector(".mirk-file__remove")){let a=document.createElement("button");a.type="button",a.className="mirk-file__remove",a.setAttribute("aria-label","Remove file"),a.innerHTML=e,i.after(a)}}),document.addEventListener("change",n=>{let r=n.target.closest(".mirk-image__input");if(!r||!r.files.length)return;let o=r.closest(".mirk-image"),s=o.querySelector(".mirk-image__preview");if(!s)return;let l=o.querySelector(".mirk-image__placeholder"),i=new FileReader;i.onload=a=>{s.src=a.target.result,s.removeAttribute("hidden"),l&&l.setAttribute("hidden",""),o.querySelector(".mirk-image__thumb")?.removeAttribute("hidden"),o.querySelector(".mirk-image__upload")?.setAttribute("hidden","")},i.readAsDataURL(r.files[0])}),document.addEventListener("click",n=>{let r=n.target.closest(".mirk-file__remove");if(r){let s=r.closest(".mirk-file"),l=s?.querySelector(".mirk-file__input"),i=s?.querySelector(".mirk-file__name");if(l&&(l.value=""),i){let a=document.createElement("span");a.className="mirk-file__name",a.textContent="No file chosen",i.replaceWith(a)}r.remove();return}let o=n.target.closest(".mirk-image__remove");if(o){let s=o.closest(".mirk-image"),l=s?.querySelector(".mirk-image__input"),i=s?.querySelector(".mirk-image__preview");l&&(l.value=""),i&&(i.removeAttribute("src"),i.setAttribute("hidden","")),s?.querySelector(".mirk-image__thumb")?.setAttribute("hidden",""),s?.querySelector(".mirk-image__upload")?.removeAttribute("hidden")}});function t(n,r){let o=document.createElement("span");o.textContent=n;let s=document.createElement("input");s.type="hidden",s.name="tags[]",s.value=n;let l=document.createElement("button");l.type="button",l.className="mirk-tags__remove",l.textContent="\xD7";let i=document.createElement("span");if(i.className="mirk-tags__chip",r){let a=document.createElement("span");a.className="mirk-tags__chip-inner",a.append(o,s,l),i.append(a)}else i.append(o,s,l);return i}document.addEventListener("keydown",n=>{let r=n.target.closest(".mirk-tags__input");if(!r)return;let o=r.closest(".mirk-tags");if(n.key==="Enter"||n.key===","){let s=r.value.trim();if(!s)return;n.preventDefault(),r.before(t(s,o.classList.contains("mirk-tags--round"))),r.value=""}else if(n.key==="Backspace"&&!r.value){let s=o.querySelectorAll(".mirk-tags__chip");s[s.length-1]?.remove()}}),document.addEventListener("click",n=>{let r=n.target.closest(".mirk-tags__remove");if(r){r.closest(".mirk-tags__chip").remove();return}let o=n.target.closest(".mirk-tags");o&&n.target===o&&o.querySelector(".mirk-tags__input")?.focus()}),document.addEventListener("click",n=>{let r=n.target.closest("[data-mirk-chip]");if(!r)return;let o=r.getAttribute("data-mirk-chip");if(o==="open")r.closest(".mirk-chip")?.classList.add("mirk-chip--open");else if(o==="collapse")r.closest(".mirk-chip")?.classList.remove("mirk-chip--open");else if(o==="changes"){let s=r.closest(".mirk-chip__panel")?.classList.toggle("is-changes");r.textContent=s?"(hide changes)":"(view changes)"}}),document.addEventListener("click",n=>{let r=n.target.closest("[data-copy-btn]");if(!r)return;let o=r.closest("[data-copy]");if(!o)return;let s=o.cloneNode(!0);s.querySelectorAll("[data-copy-btn]").forEach(a=>a.remove());let i=o.getAttribute("data-copy")==="text"?s.textContent.replace(/^\s+|\s+$/g,""):s.innerHTML.replace(/\s+data-copy(="[^"]*")?/g,"").replace(/^\s*\n/gm,"").trim();navigator.clipboard.writeText(i).then(()=>{let a=r.textContent;r.textContent="copied",r.dataset.copied="",setTimeout(()=>{r.textContent=a,delete r.dataset.copied},1200)}).catch(()=>{r.textContent="error",setTimeout(()=>{r.textContent="copy"},1200)})})})();Xf(Zf);var Dp=xl,Fp={cms:xl};return au(Bp);})();