xslt-processor 4.6.1 → 4.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -31
- package/index.d.mts +467 -206
- package/index.d.ts +467 -206
- package/index.js +13425 -6920
- package/index.js.map +1 -1
- package/index.mjs +13413 -6908
- package/index.mjs.map +1 -1
- package/package.json +12 -3
- package/umd/xslt-processor.global.js +6 -3
- package/umd/xslt-processor.global.js.map +1 -1
|
@@ -1,5 +1,8 @@
|
|
|
1
1
|
/** @type {any} */
|
|
2
|
-
var XsltProcessor=(()=>{var Wt=Object.defineProperty,Js=Object.defineProperties,eo=Object.getOwnPropertyDescriptor,to=Object.getOwnPropertyDescriptors,no=Object.getOwnPropertyNames,ar=Object.getOwnPropertySymbols;var ur=Object.prototype.hasOwnProperty,ro=Object.prototype.propertyIsEnumerable;var cr=(i,e,t)=>e in i?Wt(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,O=(i,e)=>{for(var t in e||(e={}))ur.call(e,t)&&cr(i,t,e[t]);if(ar)for(var t of ar(e))ro.call(e,t)&&cr(i,t,e[t]);return i},$=(i,e)=>Js(i,to(e));var m=(i,e)=>()=>(i&&(e=i(i=0)),e);var An=(i,e)=>{for(var t in e)Wt(i,t,{get:e[t],enumerable:!0})},io=(i,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of no(e))!ur.call(i,r)&&r!==t&&Wt(i,r,{get:()=>e[r],enumerable:!(n=eo(e,r))||n.enumerable});return i};var Cn=i=>io(Wt({},"__esModule",{value:!0}),i);var w=(i,e,t)=>new Promise((n,r)=>{var s=c=>{try{a(t.next(c))}catch(u){r(u)}},o=c=>{try{a(t.throw(c))}catch(u){r(u)}},a=c=>c.done?n(c.value):Promise.resolve(c.value).then(s,o);a((t=t.apply(i,e)).next())});function Se(i,e){return i.getAttributeValue(e)}function ne(i,e,t){return i.setAttribute(e,t)}function v(i,e){return i.appendChild(e)}function ee(i,e){return i.createTextNode(e)}function le(i,e){return i.createElement(e)}function Je(i,e){return i.createCDATASection(e)}function Ae(i,e){return i.createComment(e)}function pe(i){return i.createDocumentFragment()}function qt(i,e){return i.createDTDSection(e)}function wn(i,e,t){return i.createProcessingInstruction(e,t)}var Bt=m(()=>{});var lr={};An(lr,{DOM_ATTRIBUTE_NODE:()=>P,DOM_CDATA_SECTION_NODE:()=>Y,DOM_COMMENT_NODE:()=>Q,DOM_DOCUMENT_FRAGMENT_NODE:()=>G,DOM_DOCUMENT_NODE:()=>L,DOM_DOCUMENT_TYPE_NODE:()=>et,DOM_ELEMENT_NODE:()=>N,DOM_ENTITY_NODE:()=>oo,DOM_ENTITY_REFERENCE_NODE:()=>so,DOM_NOTATION_NODE:()=>ao,DOM_PROCESSING_INSTRUCTION_NODE:()=>se,DOM_TEXT_NODE:()=>_});var N,P,_,Y,so,oo,se,Q,L,et,G,ao,H=m(()=>{N=1,P=2,_=3,Y=4,so=5,oo=6,se=7,Q=8,L=9,et=10,G=11,ao=12});var he,M,jt=m(()=>{H();he=class he{constructor(e,t,n,r,s){this.id=Math.random()*(Number.MAX_SAFE_INTEGER-1)+1,this.childNodes=[],this.visited=!1,this.escape=!0,this.fromXslText=!1,this.siblingPosition=-1,this.init(e,t,n,r,s)}init(e,t,n,r,s){this.nodeType=e-0,this.nodeName=`${t}`,this.nodeValue=`${n}`,this.ownerDocument=r,this.namespaceUri=s||null,[this.prefix,this.localName]=this.qualifiedNameToParts(`${t}`),this.firstChild=null,this.lastChild=null,this.nextSibling=null,this.previousSibling=null,this.parentNode=null}qualifiedNameToParts(e){return e.includes(":")?e.split(":"):[null,e]}domTraverseElements(e,t,n){let r;if(t&&(r=t.call(null,e),typeof r=="boolean"&&!r))return!1;for(let s=e.firstChild;s;s=s.nextSibling)if(s.nodeType==1&&(r=this.domTraverseElements.call(this,s,t,n),typeof r=="boolean"&&!r))return!1;if(n&&(r=n.call(null,e),typeof r=="boolean"&&!r))return!1}static recycle(e){if(e){if(e.constructor.name==="XDocument"){this.recycle(e.documentElement);return}if(e.constructor==this){this._unusedXNodes.push(e);for(let t=0;t<e.childNodes.length;++t)this.recycle(e.childNodes[t]);e.childNodes.length=0,e.init.call(0,"","",null)}}}static create(e,t,n,r,s){if(this._unusedXNodes.length>0){let o=this._unusedXNodes.pop();return o.init(e,t,n,r,s),o}return new he(e,t,n,r,s)}static clone(e,t){let n=new he(e.nodeType,e.nodeName,e.nodeValue,t,e.namespaceUri);n.id=e.id;for(let r of e.childNodes)n.appendChild(he.clone(r,n));return n}appendChild(e){this.childNodes.length===0&&(this.firstChild=e),e.previousSibling=this.lastChild,e.nextSibling=null,this.lastChild&&(this.lastChild.nextSibling=e),e.parentNode=this,this.lastChild=e,this.childNodes.push(e)}replaceChild(e,t){if(t!=e){for(let n=0;n<this.childNodes.length;++n)if(this.childNodes[n]==t){this.childNodes[n]=e;let r=t.parentNode;t.parentNode=null,e.parentNode=r,r=t.previousSibling,t.previousSibling=null,e.previousSibling=r,e.previousSibling&&(e.previousSibling.nextSibling=e),r=t.nextSibling,t.nextSibling=null,e.nextSibling=r,e.nextSibling&&(e.nextSibling.previousSibling=e),this.firstChild==t&&(this.firstChild=e),this.lastChild==t&&(this.lastChild=e);break}}}insertBefore(e,t){if(t==e||t.parentNode!=this)return;e.parentNode&&e.parentNode.removeChild(e);let n=[];for(let r of this.childNodes)r==t&&(n.push(e),e.parentNode=this,e.previousSibling=t.previousSibling,t.previousSibling=e,e.previousSibling&&(e.previousSibling.nextSibling=e),e.nextSibling=t,this.firstChild==t&&(this.firstChild=e)),n.push(r);this.childNodes=n}removeChild(e){let t=[];for(let n of this.childNodes)n!=e?t.push(n):(n.previousSibling&&(n.previousSibling.nextSibling=n.nextSibling),n.nextSibling&&(n.nextSibling.previousSibling=n.previousSibling),this.firstChild==n&&(this.firstChild=n.nextSibling),this.lastChild==n&&(this.lastChild=n.previousSibling));this.childNodes=t}hasAttributes(){return this.childNodes.filter(t=>t.nodeType===2).length>0}setAttribute(e,t){let n=this.childNodes.filter(s=>s.nodeType===2);for(let s=0;s<n.length;++s)if(n[s].nodeName==e){n[s].nodeValue=`${t}`;return}let r=he.create(2,e,t,this);r.parentNode=this,this.appendChild(r)}setAttributeNS(e,t,n){let r=this.childNodes.filter(o=>o.nodeType===2);for(let o=0;o<r.length;++o){let a=r[o];if(a.namespaceUri==e&&a.localName==this.qualifiedNameToParts(`${t}`)[1]){a.nodeValue=`${n}`,a.nodeName=`${t}`,a.prefix=this.qualifiedNameToParts(`${t}`)[0];return}}let s=he.create(2,t,n,this,e);s.parentNode=this,this.appendChild(s)}getAttributeValue(e){let t=this.childNodes.filter(n=>n.nodeType===2);for(let n=0;n<t.length;++n)if(t[n].nodeName===e)return t[n].nodeValue;return null}getAttributeNS(e,t){let n=this.childNodes.filter(r=>r.nodeType===2);for(let r=0;r<n.length;++r){let s=n[r];if(s.namespaceUri===e&&s.localName===t)return s.nodeValue}return null}hasAttribute(e){let t=this.childNodes.filter(n=>n.nodeType===2);for(let n=0;n<t.length;++n)if(t[n].nodeName===e)return!0;return!1}hasAttributeNS(e,t){let n=this.childNodes.filter(r=>r.nodeType===2);for(let r=0;r<n.length;++r){let s=n[r];if(s.namespaceUri===e&&s.localName===t)return!0}return!1}removeAttribute(e){let t=[];for(let n=0;n<this.childNodes.length;++n){let r=this.childNodes[n];if(r.nodeType!==2){t.push(r);continue}r.nodeName!==e&&t.push(r)}this.childNodes=t}removeAttributeNS(e,t){let n=[];for(let r=0;r<this.childNodes.length;++r){let s=this.childNodes[r];if(s.nodeType!==2){n.push(s);continue}(s.localName!==t||s.namespaceUri!==e)&&n.push(s)}this.childNodes=n}getElementsByTagName(e){let t=[],n=this;return e=="*"?this.domTraverseElements(this,r=>{n!=r&&t.push(r)},null):this.domTraverseElements(this,r=>{n!=r&&r.nodeName==e&&t.push(r)},null),t}getElementsByTagNameNS(e,t){let n=[],r=this;return e=="*"&&t=="*"?this.domTraverseElements(this,s=>{r!=s&&n.push(s)},null):e=="*"?this.domTraverseElements(this,s=>{r!=s&&s.localName==t&&n.push(s)},null):t=="*"?this.domTraverseElements(this,s=>{r!=s&&s.namespaceUri==e&&n.push(s)},null):this.domTraverseElements(this,s=>{r!=s&&s.localName==t&&s.namespaceUri==e&&n.push(s)},null),n}getElementById(e){let t=null;return this.domTraverseElements(this,n=>{if(n.getAttributeValue("id")==e)return t=n,!1},null),t}getAncestorByLocalName(e){if(!(this.parentNode===null||this.parentNode===void 0))return this.parentNode.localName===e?this.parentNode:this.parentNode.getAncestorByLocalName(e)}getAncestorById(e){if(!(this.parentNode===null||this.parentNode===void 0))return this.parentNode.id===e?this.parentNode:this.parentNode.getAncestorById(e)}toString(){return`${this.nodeType}, ${this.nodeName}, ${this.nodeValue}`}};he._unusedXNodes=[];M=he});var me,On=m(()=>{H();jt();me=class extends M{constructor(){super(9,"#document",null,null),this.documentElement=null}appendChild(e){super.appendChild(e),this.documentElement=this.childNodes[0]}createElement(e){return M.create(1,e,null,this)}createElementNS(e,t){return M.create(1,t,null,this,e)}createDocumentFragment(){return M.create(11,"#document-fragment",null,this)}createTextNode(e){return M.create(3,"#text",e,this)}createAttribute(e){return M.create(2,e,null,this)}createAttributeNS(e,t){return M.create(2,t,null,this,e)}createComment(e){return M.create(8,"#comment",e,this)}createCDATASection(e){return M.create(4,"#cdata-section",e,this)}createDTDSection(e){return M.create(10,"#dtd-section",e,this)}createProcessingInstruction(e,t){return M.create(7,e,t,this)}}});function ke(i){if(!i)return i;let e=i.replace(/&([a-zA-Z]+);/g,(t,n)=>{let r=n.toLowerCase();return co[r]||t});return e=e.replace(/&#(\d+);/g,(t,n)=>{try{let r=parseInt(n,10);return String.fromCharCode(r)}catch(r){return t}}),e=e.replace(/&#[xX]([0-9a-fA-F]+);/g,(t,n)=>{try{let r=parseInt(n,16);return String.fromCharCode(r)}catch(r){return t}}),e}var co,Rn=m(()=>{co={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:"\xA0",copy:"\xA9",reg:"\xAE",times:"\xD7",divide:"\xF7",euro:"\u20AC",pound:"\xA3",yen:"\xA5",cent:"\xA2",sect:"\xA7",para:"\xB6",hellip:"\u2026",middot:"\xB7",deg:"\xB0"}});function Z(i,e=!1){if(!i)return"";let t="";switch(i.nodeType){case 10:return`<!DOCTYPE ${i.nodeValue}>`;case 3:case 4:case 2:return i.nodeValue;case 1:case 9:case 11:if(!e){let r=i,s=r.innerText;if(s!==void 0)return s;let o=r.textContent;if(o!==void 0)return o}let n=i.childNodes.filter(r=>r.nodeType!==2);for(let r=0;r<n.length;++r)t+=Z(n[r]);return t}}function zt(i,e=!1){if(!i)return"";let t="";switch(i.nodeType){case 2:case 3:t+=i.nodeValue;break;case 4:t+=i.nodeValue;break;case 9:case 11:case 1:if(!e){let r=i,s=r.innerText;if(s!==void 0)return s;let o=r.textContent;if(o!==void 0)return o}let n=i.childNodes.length;for(let r=0;r<n;++r)t+=Z(i.childNodes[r]);break}return t}function uo(i,e={cData:!0,escape:!0,selfClosingTags:!0,outputMethod:"xml"}){let t=[];return In(i,t,e),t.join("")}function In(i,e,t){if(i.nodeType==3)e.push(Ce(i.nodeValue));else if(i.nodeType==4)t.cData?e.push(i.nodeValue):e.push(`<![CDATA[${i.nodeValue}]]>`);else if(i.nodeType==8)e.push(`<!--${i.nodeValue}-->`);else if(i.nodeType==1){e.push(`<${fe(i)}`);for(let n=0;n<i.childNodes.length;++n){let r=i.childNodes[n];!r||r.nodeType!==2||r.nodeName&&r.nodeValue&&e.push(` ${fe(r)}="${hr(r.nodeValue)}"`)}if(i.childNodes.length===0)t.selfClosingTags||t.outputMethod==="html"&&["hr","link"].includes(i.nodeName)?e.push("/>"):e.push(`></${fe(i)}>`);else{e.push(">");for(let n=0;n<i.childNodes.length;++n)In(i.childNodes[n],e,t);e.push(`</${fe(i)}>`)}}else if(i.nodeType==9||i.nodeType==11)for(let n=0;n<i.childNodes.length;++n)In(i.childNodes[n],e,t)}function _n(i,e={cData:!0,escape:!0,selfClosingTags:!0,outputMethod:"xml"}){let t=[];return tt(i,t,e),t.join("")}function tt(i,e,t){if(i.visited)return;let n=i.nodeType,r=i.nodeValue;if(n===3){let s=i.fromXslText===!0;if(i.nodeValue&&(s||i.nodeValue.trim()!=="")){let o=i.escape&&t.escape?Ce(i.nodeValue):pr(i.nodeValue);e.push(o)}}else if(n===4)t.outputMethod==="text"?e.push(r):t.cData?e.push(Ce(r)):e.push(`<![CDATA[${r}]]>`);else if(n==8)t.outputMethod!=="text"&&e.push(`<!-- ${r} -->`);else if(n===7)t.outputMethod!=="text"&&(r&&r.trim()?e.push(`<?${i.nodeName} ${r}?>`):e.push(`<?${i.nodeName}?>`));else if(n==1)t.outputMethod==="text"?ho(i,e,t):i.nodeName!==null&&i.nodeName!==void 0?lo(i,e,t):po(i,e,t);else if(n===9||n===11){let s=i.firstChild?[]:i.childNodes;if(i.firstChild){let o=i.firstChild;for(;o;)s.push(o),o=o.nextSibling}s.sort((o,a)=>o.siblingPosition-a.siblingPosition);for(let o=0;o<s.length;++o)tt(s[o],e,t)}i.visited=!0}function lo(i,e,t){e.push(`<${fe(i)}`);let n=[];if(i.firstChild){let s=i.firstChild;for(;s;)s.nodeType===2&&n.push(s),s=s.nextSibling}n.length===0&&(n=i.childNodes.filter(s=>s.nodeType===2));for(let s=0;s<n.length;++s){let o=n[s];o&&o.nodeName&&o.nodeValue!==null&&o.nodeValue!==void 0&&e.push(` ${fe(o)}="${hr(o.nodeValue)}"`)}let r=[];if(i.firstChild){let s=i.firstChild;for(;s;)s.nodeType!==2&&r.push(s),s=s.nextSibling}if(r.length===0&&(r=i.childNodes.filter(s=>s.nodeType!==2)),r=r.sort((s,o)=>s.siblingPosition-o.siblingPosition),r.length===0)t.outputMethod==="html"&&["hr","link","meta"].includes(i.nodeName)?e.push(">"):t.selfClosingTags?e.push("/>"):e.push(`></${fe(i)}>`);else{e.push(">");for(let s=0;s<r.length;++s)tt(r[s],e,t);e.push(`</${fe(i)}>`)}}function po(i,e,t){let n=[];if(i.firstChild){let r=i.firstChild;for(;r;)n.push(r),r=r.nextSibling}else n=i.childNodes;n=n.sort((r,s)=>r.siblingPosition-s.siblingPosition);for(let r=0;r<n.length;++r)tt(n[r],e,t)}function ho(i,e,t){let n=[];if(i.firstChild){let r=i.firstChild;for(;r;)n.push(r),r=r.nextSibling}else n=i.childNodes;n=n.sort((r,s)=>r.siblingPosition-s.siblingPosition);for(let r=0;r<n.length;++r)tt(n[r],e,t)}function fe(i){let e=i.nodeName;return i.prefix&&e.indexOf(`${i.prefix}:`)!=0?`${i.prefix}:${e}`:e}function pr(i){return`${i}`.replace(/</g,"<").replace(/>/g,">")}function Ce(i){return`${i}`.replace(/&/g,"&").replace(/&amp;/g,"&").replace(/</g,"<").replace(/>/g,">")}function hr(i){return Ce(i).replace(/"/g,""")}function y(i,e){let t=Se(i,e);return t&&ke(t)}function mr(i){if(i==null)throw new Error("Node has no valid owner document.");return i.nodeType===9?i:mr(i.ownerDocument)}function vn(i){if(!i)return null;let e=i.nodeType;if(e===3||e===4){let t=i.nodeValue?i.nodeValue.trim():"";return t.length>0?t:null}if(e===8)return null;if(e===9||e===11){let t=i.childNodes||[],n=[];for(let r=0;r<t.length;r++){let s=t[r],o=vn(s);o!==null&&n.push(o)}return n.length===0?null:n.length===1?n[0]:n}if(e===1){let t={},n=i,r=n.attributes&&n.attributes.length>0;if(r)for(let u=0;u<n.attributes.length;u++){let l=n.attributes[u];t["@"+l.nodeName]=l.nodeValue}let s=n.childNodes||[],o="",a=!1,c={};for(let u=0;u<s.length;u++){let l=s[u],h=l.nodeType;if(h===3||h===4){let p=l.nodeValue?l.nodeValue.trim():"";p.length>0&&(o+=p)}else if(h===1){a=!0;let p=l,d=p.localName||p.nodeName,g=vn(l);g!==null&&(c[d]?(Array.isArray(c[d])||(c[d]=[c[d]]),c[d].push(g)):c[d]=g)}}if(Object.assign(t,c),!a&&o.length>0){if(!r&&Object.keys(c).length===0)return o;t["#text"]=o}return Object.keys(t).length===0?null:t}return null}function Mn(i){if(!i)return"xml";let e=i.nodeType;if(e===9||e===11){let t=i.childNodes||[],n=0,r=0,s=!1;for(let o=0;o<t.length;o++){let a=t[o];a.nodeType===1?n++:a.nodeType===3&&(a.nodeValue?a.nodeValue.trim():"").length>0&&(r++,s=!0)}return n===0&&s?"text":"xml"}return(e===3||e===4)&&(i.nodeValue?i.nodeValue.trim():"").length>0?"text":"xml"}function Dn(i){if(!i)return"{}";let e=i;if(i.nodeType===9||i.nodeType===11){let o=i.childNodes||[];for(let a=0;a<o.length;a++)if(o[a].nodeType===1){e=o[a];break}}let t=e,n=t.localName||t.nodeName,r={},s=vn(e);s===null?r[n]={}:(typeof s=="object"&&Array.isArray(s),r[n]=s);try{let o=JSON.parse(JSON.stringify(r));return JSON.stringify(o)}catch(o){return JSON.stringify(r)}}var fr=m(()=>{Rn();H();Bt()});var dr=m(()=>{});var Yt,Gt,xr,Er,mo,fo,Nr,Tr,br,Ht,yo,Kt,go,yr,xo,Pr,Xr,Sr,Eo,Qt,No,gr,To,Ar,bo,Da,Cr=m(()=>{Yt=`[ \r
|
|
3
|
-
]+`,Gt=`(${Yt})?=(${Yt})?`,xr="&#[0-9]+;|&#x[0-9a-fA-F]+;",Er=`${Yt}version${Gt}("1\\.0"|'1\\.0')`,mo="A-Za-z\xC0-\xD6\xD8-\xF6\xF8-\xFF\u0100-\u0131\u0134-\u013E\u0141-\u0148\u014A-\u017E\u0180-\u01C3\u01CD-\u01F0\u01F4-\u01F5\u01FA-\u0217\u0250-\u02A8\u02BB-\u02C1\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03CE\u03D0-\u03D6\u03DA\u03DC\u03DE\u03E0\u03E2-\u03F3\u0401-\u040C\u040E-\u044F\u0451-\u045C\u045E-\u0481\u0490-\u04C4\u04C7-\u04C8\u04CB-\u04CC\u04D0-\u04EB\u04EE-\u04F5\u04F8-\u04F9\u0531-\u0556\u0559\u0561-\u0586\u05D0-\u05EA\u05F0-\u05F2\u0621-\u063A\u0641-\u064A\u0671-\u06B7\u06BA-\u06BE\u06C0-\u06CE\u06D0-\u06D3\u06D5\u06E5-\u06E6\u0905-\u0939\u093D\u0958-\u0961\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8B\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AE0\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B36-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB5\u0BB7-\u0BB9\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C60-\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CDE\u0CE0-\u0CE1\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D28\u0D2A-\u0D39\u0D60-\u0D61\u0E01-\u0E2E\u0E30\u0E32-\u0E33\u0E40-\u0E45\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EAE\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0F40-\u0F47\u0F49-\u0F69\u10A0-\u10C5\u10D0-\u10F6\u1100\u1102-\u1103\u1105-\u1107\u1109\u110B-\u110C\u110E-\u1112\u113C\u113E\u1140\u114C\u114E\u1150\u1154-\u1155\u1159\u115F-\u1161\u1163\u1165\u1167\u1169\u116D-\u116E\u1172-\u1173\u1175\u119E\u11A8\u11AB\u11AE-\u11AF\u11B7-\u11B8\u11BA\u11BC-\u11C2\u11EB\u11F0\u11F9\u1E00-\u1E9B\u1EA0-\u1EF9\u1F00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2126\u212A-\u212B\u212E\u2180-\u2182\u3041-\u3094\u30A1-\u30FA\u3105-\u312C\uAC00-\uD7A3",fo="\u4E00-\u9FA5\u3007\u3021-\u3029",Nr="\u0300-\u0345\u0360-\u0361\u0483-\u0486\u0591-\u05A1\u05A3-\u05B9\u05BB-\u05BD\u05BF\u05C1-\u05C2\u05C4\u064B-\u0652\u0670\u06D6-\u06DC\u06DD-\u06DF\u06E0-\u06E4\u06E7-\u06E8\u06EA-\u06ED\u0901-\u0903\u093C\u093E-\u094C\u094D\u0951-\u0954\u0962-\u0963\u0981-\u0983\u09BC\u09BE\u09BF\u09C0-\u09C4\u09C7-\u09C8\u09CB-\u09CD\u09D7\u09E2-\u09E3\u0A02\u0A3C\u0A3E\u0A3F\u0A40-\u0A42\u0A47-\u0A48\u0A4B-\u0A4D\u0A70-\u0A71\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0B01-\u0B03\u0B3C\u0B3E-\u0B43\u0B47-\u0B48\u0B4B-\u0B4D\u0B56-\u0B57\u0B82-\u0B83\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C01-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55-\u0C56\u0C82-\u0C83\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5-\u0CD6\u0D02-\u0D03\u0D3E-\u0D43\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB-\u0EBC\u0EC8-\u0ECD\u0F18-\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86-\u0F8B\u0F90-\u0F95\u0F97\u0F99-\u0FAD\u0FB1-\u0FB7\u0FB9\u20D0-\u20DC\u20E1\u302A-\u302F\u3099\u309A",Tr="0-9\u0660-\u0669\u06F0-\u06F9\u0966-\u096F\u09E6-\u09EF\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0BE7-\u0BEF\u0C66-\u0C6F\u0CE6-\u0CEF\u0D66-\u0D6F\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F29",br="\xB7\u02D0\u02D1\u0387\u0640\u0E46\u0EC6\u3005\u3031-\u3035\u309D-\u309E\u30FC-\u30FE",Ht=mo+fo,yo=`${Ht+Tr}\\._:${Nr}${br}-`,Kt=`[${Ht}_:][${yo}]*`,go=`&${Kt};`,yr=`${go}|${xr}`,xo=`"(([^<&"]|${yr})*)"|'(([^<&']|${yr})*)'`,Pr=`(${Kt})${Gt}(${xo})`,Xr=`${Yt}version${Gt}("1\\.1"|'1\\.1')`,Sr=":A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD",Eo=Sr+"\\.0-9\xB7\u0300-\u036F\u203F-\u2040-",Qt=`[${Sr}][${Eo}]*`,No=`&${Qt};`,gr=`${No}|${xr}`,To=`"(([^<&"]|${gr})*)"|'(([^<&']|${gr})*)'`,Ar=`(${Qt})${Gt}(${To})`,bo=`${Ht+Tr}\\._${Nr}${br}-`,Da=`[${Ht}_][${bo}]*`});var we,wr=m(()=>{Rn();Bt();On();Cr();H();we=class{constructor(){this.regexEmpty=/\/$/;this.XML10_TAGNAME_REGEXP=new RegExp(`^(${Kt})`);this.XML10_ATTRIBUTE_REGEXP=new RegExp(Pr,"g");this.XML11_TAGNAME_REGEXP=new RegExp(`^(${Qt})`);this.XML11_ATTRIBUTE_REGEXP=new RegExp(Ar,"g");this.lenientHtmlTags=["hr","link","meta"]}xmlParse(e){return e.toUpperCase().startsWith("<!DOCTYPE HTML")?this.htmlParse(e):this.xmlStrictParse(e)}namespaceMapAt(e){let t={xmlns:"http://www.w3.org/2000/xmlns/",xml:"http://www.w3.org/XML/1998/namespace"},n=e;for(;n!==null;){for(let r=0;r<n.childNodes.length;r++){let s=n.childNodes[r];if(s.nodeType===2)if(s.nodeName.startsWith("xmlns:")){let o=s.nodeName.split(":")[1];o in t||(t[o]=s.nodeValue)}else s.nodeName=="xmlns"&&(""in t||(t[""]=s.nodeValue||null))}n=n.parentNode}return t}htmlParse(e){let t=new me,n=t,r=[],s=n;r.push(s);let o=!1,a=!1,c=!1,u=0;for(let l=0;l<e.length;++l){let h=e.charAt(l);if(o){if(!c&&h==="'")a=!a;else if(!a&&h==='"')c=!c;else if(!a&&!c&&h===">"){let p=e.slice(u,l);if(p.charAt(0)==="/")r.pop(),s=r[r.length-1];else if(p.charAt(0)!=="!"){let d=p.match(this.regexEmpty),g=this.XML10_TAGNAME_REGEXP.exec(p)[1],f=le(t,g),x;for(;x=this.XML10_ATTRIBUTE_REGEXP.exec(p);){let b=ke(x[5]||x[7]||"");ne(f,x[1],b)}f.siblingPosition=s.childNodes.length,v(s,f),!d&&!this.lenientHtmlTags.includes(g)&&(s=f,r.push(f))}u=l+1,o=!1,a=!1,c=!1}}else if(h==="<"){let p=e.slice(u,l);if(p&&s!==n&&v(s,ee(t,p)),e.slice(l+1,l+4)==="!--"){let d=e.slice(l+4).indexOf("-->");if(d){let g=Ae(t,e.slice(l+4,l+d+4));v(s,g),l+=d+6}}else if(e.slice(l+1,l+9)==="!DOCTYPE"){let d=e.slice(l+9).indexOf(">");if(d){let g=e.slice(l+9,l+d+9).trimStart(),f=qt(t,g);v(s,f),l+=d+g.length+5}}else o=!0;u=l+1}}return t}xmlStrictParse(e){let t,n;if(e.match(/^<\?xml/))if(e.search(new RegExp(Er))===5)t=this.XML10_TAGNAME_REGEXP,n=this.XML10_ATTRIBUTE_REGEXP;else if(e.search(new RegExp(Xr))===5)t=this.XML11_TAGNAME_REGEXP,n=this.XML11_ATTRIBUTE_REGEXP;else throw new Error("XML VersionInfo has an unknown version number.");else t=this.XML10_TAGNAME_REGEXP,n=this.XML10_ATTRIBUTE_REGEXP;let r=new me,s=r,o=[],a=s;o.push(a);let c=!1,u=!1,l=!1,h=0;for(let p=0;p<e.length;++p){let d=e.charAt(p);if(c&&!l&&d==="'")u=!u;else if(c&&!u&&d==='"')l=!l;else if(c&&d===">"&&!u&&!l){let g=e.slice(h,p);if(g.charAt(0)==="/")o.pop(),a=o[o.length-1];else if(g.charAt(0)!=="?"){if(g.charAt(0)!=="!"){let f=g.match(this.regexEmpty),x=t.exec(g)[1],b=le(r,x),I;for(;I=n.exec(g);){let z=ke(I[5]||I[7]||"");ne(b,I[1],z)}b.siblingPosition=a.childNodes.length,v(a,b),f||(a=b,o.push(b));let k=this.namespaceMapAt(b);b.prefix!==null?b.prefix in k&&(b.namespaceUri=k[b.prefix]):""in k&&(b.namespaceUri=k[""]);for(let z=0;z<b.childNodes.length;++z){let R=b.childNodes[z];R.nodeType===2&&R.prefix!==null&&R.prefix in k&&(R.namespaceUri=k[R.prefix])}}}h=p+1,c=!1,u=!1,l=!1}else if(!c&&d==="<"){let g=e.slice(h,p);if(g&&a!==s&&v(a,ee(r,ke(g))),e.slice(p+1,p+4)==="!--"){let f=e.slice(p+4).indexOf("-->");if(f){let x=Ae(r,e.slice(p+4,p+f+4));v(a,x),p+=f+6}}else if(e.slice(p+1,p+9)==="![CDATA["){let f=e.slice(p+9).indexOf("]]>");if(f){let x=Je(r,e.slice(p+9,p+f+9));v(a,x),p+=f+11}}else if(e.slice(p+1,p+9)==="!DOCTYPE"){let f=e.slice(p+9).indexOf(">");if(f){let x=e.slice(p+9,p+f+9).trimStart(),b=qt(r,x);v(a,b),p+=f+x.length+5}}else c=!0;h=p+1}}return s}}});var Fn,Or=m(()=>{jt();Fn=class extends M{}});var Rr={};An(Rr,{XBrowserNode:()=>Fn,XDocument:()=>me,XNode:()=>M,XmlParser:()=>we,detectAdaptiveOutputFormat:()=>Mn,domAppendChild:()=>v,domCreateCDATASection:()=>Je,domCreateComment:()=>Ae,domCreateDTDSection:()=>qt,domCreateDocumentFragment:()=>pe,domCreateElement:()=>le,domCreateProcessingInstruction:()=>wn,domCreateTextNode:()=>ee,domGetAttributeValue:()=>Se,domSetAttribute:()=>ne,xmlEscapeText:()=>Ce,xmlGetAttribute:()=>y,xmlOwnerDocument:()=>mr,xmlText:()=>uo,xmlToJson:()=>Dn,xmlTransformedText:()=>_n,xmlUnescapeText:()=>pr,xmlValue:()=>Z,xmlValueLegacyBehavior:()=>zt});var $e=m(()=>{Bt();On();fr();dr();wr();Or();jt()});var E,S=m(()=>{E=class{}});var Zt,Jt,vr=m(()=>{S();Zt=class extends E{constructor(e){super(),this.value=e}evaluate(e){return this.value}toString(){return`"${this.value}"`}},Jt=class extends E{constructor(e){super(),this.value=e}evaluate(e){return this.value}toString(){return this.value.toString()}}});var Oe,X,_r,Mr,kn,Dr,Ve=m(()=>{Oe={ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_FRAGMENT_NODE:11,NAMESPACE_NODE:13},X="http://www.w3.org/2001/XMLSchema",_r="http://www.w3.org/2005/xqt-errors",Mr="http://www.w3.org/2005/xpath-functions",kn="http://www.w3.org/2005/xpath-functions/collation/codepoint",Dr=["last","position","count","id","local-name","namespace-uri","name","string","concat","starts-with","contains","substring-before","substring-after","substring","string-length","normalize-space","translate","boolean","not","true","false","lang","number","sum","floor","ceiling","round"]});function de(i){return new Ue("XPST0003",`Grammar violation: ${i}`)}function nt(i,e="name"){return new Ue("XPST0008",`Unresolved ${e} reference: ${i}`)}function Fr(i){return new Ue("XPST0010",`Unsupported axis: ${i}`)}function kr(i,e,t){return new Ue("XPST0017",`Function ${i} expects ${e}, got ${t} arguments`)}function We(i,e,t){let n=t?`Type mismatch in ${t}: expected ${i}, got ${e}`:`Type mismatch: expected ${i}, got ${e}`;return new $n("XPTY0004",n)}function $r(i,e){return new en("FORG0001",`Cannot cast ${JSON.stringify(i)} to ${e}`)}var q,Ue,en,$n,ye=m(()=>{Ve();q=class i extends Error{constructor(e,t,n=!1,r=!1){super(`${e}: ${t}`),Object.setPrototypeOf(this,i.prototype),this.code=e,this.isStatic=n,this.isDynamic=r,this.name="XPathError",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}getQName(){return`err:${this.code}`}getErrorURI(){return`${_r}#${this.code}`}},Ue=class i extends q{constructor(e,t){super(e,t,!0,!1),Object.setPrototypeOf(this,i.prototype),this.name="XPathStaticError"}},en=class i extends q{constructor(e,t){super(e,t,!1,!0),Object.setPrototypeOf(this,i.prototype),this.name="XPathDynamicError"}},$n=class i extends en{constructor(e,t){super(e,t),Object.setPrototypeOf(this,i.prototype),this.name="XPathTypeError"}}});var rt,Lr=m(()=>{S();ye();rt=class extends E{constructor(e){super(),this.name=e}evaluate(e){if(!e.variables)throw nt(`$${this.name}`,"variable");if(!(this.name in e.variables))throw nt(`$${this.name}`,"variable");return e.variables[this.name]}toString(){return`$${this.name}`}}});var oe,Vr=m(()=>{S();oe=class extends E{constructor(e,t,n=[]){super(),this.axis=e,this.nodeTest=t,this.predicates=n}evaluate(e){let t=e==null?void 0:e.node;if(!t&&this.axis==="self"&&(e==null?void 0:e.contextItem)!==void 0){let r=e.contextItem;return this.predicates.length===0?[r]:this.applyPredicatesToAtomicItem(r,e)}if(!t)return[];let n=this.getNodesByAxis(t,e);return n=n.filter(r=>this.matchesNodeTest(r,e)),n=this.applyPredicates(n,e),n}applyPredicatesToAtomicItem(e,t){let n=$(O({},t),{contextItem:e,position:1,size:1});for(let r of this.predicates){let s=r.evaluate(n);if(typeof s=="number"){if(s!==1)return[]}else if(!this.toBoolean(s))return[]}return[e]}getNodesByAxis(e,t){switch(this.axis){case"child":return this.getChildNodes(e);case"parent":return e.parentNode?[e.parentNode]:[];case"self":return[e];case"attribute":return e.attributes?Array.from(e.attributes):Array.from(e.childNodes||[]).filter(n=>n.nodeType===2);case"descendant":return this.getDescendants(e,!1);case"descendant-or-self":return this.getDescendants(e,!0);case"ancestor":return this.getAncestors(e,!1);case"ancestor-or-self":return this.getAncestors(e,!0);case"following-sibling":return this.getFollowingSiblings(e);case"preceding-sibling":return this.getPrecedingSiblings(e);case"following":return this.getFollowing(e);case"preceding":return this.getPreceding(e);case"namespace":return this.getNamespaceNodes(e);case"self-and-siblings":return t!=null&&t.nodeList?t.nodeList.filter(n=>n.nodeType!==2):[e];default:return[]}}getChildNodes(e){return Array.from(e.childNodes||[]).filter(n=>n.nodeType!==2)}getDescendants(e,t){let n=[];t&&n.push(e);let r=s=>{for(let o of this.getChildNodes(s))n.push(o),r(o)};return r(e),n}getAncestors(e,t){let n=[];t&&n.push(e);let r=e.parentNode;for(;r;)n.push(r),r=r.parentNode;return n}getFollowingSiblings(e){let t=[],n=e.nextSibling;for(;n;)t.push(n),n=n.nextSibling;return t}getPrecedingSiblings(e){let t=[],n=e.previousSibling;for(;n;)t.unshift(n),n=n.previousSibling;return t}getFollowing(e){let t=[],n=e.nextSibling;for(;n;)t.push(n),t.push(...this.getDescendants(n,!1)),n=n.nextSibling;let r=e.parentNode;for(;r;){for(n=r.nextSibling;n;)t.push(n),t.push(...this.getDescendants(n,!1)),n=n.nextSibling;r=r.parentNode}return t}getPreceding(e){let t=[],n=e.previousSibling;for(;n;){t.unshift(n);let s=this.getDescendants(n,!1);t.unshift(...s),n=n.previousSibling}let r=e.parentNode;for(;r;){for(n=r.previousSibling;n;){t.unshift(n);let s=this.getDescendants(n,!1);t.unshift(...s),n=n.previousSibling}r=r.parentNode}return t}getNamespaceNodes(e){var r,s;if(!e||e.nodeType!==1)return[];let t={},n=e;for(;n;){let o=Array.from(n.attributes||[]);for(let a of o){let c=a.nodeName||a.localName||"",u=(s=(r=a.nodeValue)!=null?r:a.textContent)!=null?s:"";if(c==="xmlns")""in t||(t[""]=u);else if(c.startsWith("xmlns:")){let l=c.substring(6);l in t||(t[l]=u)}}n=n.parentNode}return"xml"in t||(t.xml="http://www.w3.org/XML/1998/namespace"),Object.entries(t).map(([o,a])=>({nodeType:13,nodeName:o,localName:o,prefix:o,namespaceURI:a,namespaceUri:a,nodeValue:a,textContent:a,parentNode:e,ownerDocument:e.ownerDocument}))}matchesNodeTest(e,t,n=this.nodeTest){var o,a;let r=e.nodeType,s=(c,u)=>{var p,d;if(!u.includes(r))return!1;if(c.endsWith(":*")){let g=c.slice(0,-2),f=(p=t==null?void 0:t.namespaces)==null?void 0:p[g];return f?(e.namespaceURI||e.namespaceUri||"")===f:!1}let l=c.indexOf(":");if(l>0){let g=c.substring(0,l),f=c.substring(l+1),x=(d=t==null?void 0:t.namespaces)==null?void 0:d[g];if(!x)return!1;let b=e.localName||e.nodeName&&this.extractLocalName(e.nodeName),I=e.namespaceURI||e.namespaceUri||"";return b===f&&I===x}return(e.localName||this.extractLocalName(e.nodeName))===c};switch(n.type){case"wildcard":if(n.name&&n.name.endsWith(":*")){let u=n.name.slice(0,-2),l=(o=t==null?void 0:t.namespaces)==null?void 0:o[u];if(!l)return!1;let h=e.namespaceURI||e.namespaceUri||"";return(r===1||r===2||r===13)&&h===l}return r===1||r===2||r===13;case"name":return s(n.name,[1,2,13]);case"element":return r!==1?!1:!n.name||n.isWildcardName?!0:s(n.name,[1]);case"attribute":return r!==2?!1:!n.name||n.isWildcardName?!0:s(n.name,[2]);case"schema-element":return s(n.name,[1]);case"schema-attribute":return s(n.name,[2]);case"document-node":if(r!==9)return!1;if(!n.elementTest)return!0;let c=e.documentElement||Array.from(e.childNodes||[]).find(u=>u.nodeType===1);return c?this.matchesNodeTest(c,t,n.elementTest):!1;case"node-type":switch(n.nodeType){case"node":return!0;case"text":return r===3;case"comment":return r===8;case"processing-instruction":return r===7;default:return!1}case"processing-instruction":return r!==7?!1:n.target?((a=e.target)!=null?a:e.nodeName)===n.target:!0;default:return!1}}applyPredicates(e,t){let n=e;for(let r of this.predicates){let s=[],o=n.length;for(let a=0;a<n.length;a++){let c=$(O({},t),{node:n[a],position:a+1,size:o}),u=r.evaluate(c);typeof u=="number"?u===a+1&&s.push(n[a]):this.toBoolean(u)&&s.push(n[a])}n=s}return n}toBoolean(e){return typeof e=="boolean"?e:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"||Array.isArray(e)?e.length>0:!!e}extractLocalName(e){if(!e)return"";let t=e.indexOf(":");return t>0?e.substring(t+1):e}}});var ge,Ur=m(()=>{S();ge=class extends E{constructor(e,t=!1){super(),this.steps=e,this.absolute=t}evaluate(e){let t;if(this.absolute){let n=this.getDocumentRoot(e==null?void 0:e.node);t=n?[n]:[]}else e!=null&&e.node?t=[e.node]:(e==null?void 0:e.contextItem)!==void 0?t=[{__atomicContextItem:e.contextItem}]:t=[];for(let n of this.steps){let r=[];for(let s of t)if(s&&s.__atomicContextItem!==void 0){let o=$(O({},e),{contextItem:s.__atomicContextItem}),a=n.evaluate(o);r.push(...a)}else{let o=$(O({},e),{node:s}),a=n.evaluate(o);r.push(...a)}t=this.uniqueNodes(r)}return t}getDocumentRoot(e){if(!e)return null;let t=e;for(;t.parentNode;)t=t.parentNode;return t}uniqueNodes(e){let t=new Set,n=[];for(let r of e)t.has(r)||(t.add(r),n.push(r));return n}}});var tn,nn,Wr=m(()=>{S();tn=class extends E{constructor(e,t){super(),this.expression=e,this.predicates=t||[]}evaluate(e){let t=this.expression.evaluate(e);Array.isArray(t)||(t=t==null?[]:[t]);for(let n of this.predicates)t=this.applyPredicate(t,n,e);return t}applyPredicate(e,t,n){let r=[];for(let s=0;s<e.length;s++){let o=e[s],a=$(O({},n),{node:(o==null?void 0:o.nodeType)!==void 0?o:n.node,position:s+1,size:e.length});this.testPredicate(t,a)&&r.push(o)}return r}testPredicate(e,t){let n=e.evaluate(t);return typeof n=="number"?n===t.position:this.toBoolean(n)}toBoolean(e){return typeof e=="boolean"?e:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"||Array.isArray(e)?e.length>0:e!=null}},nn=class extends E{constructor(e,t){super(),this.filterExpr=e,this.pathExpr=t}evaluate(e){let t=this.filterExpr.evaluate(e);if(!Array.isArray(t))return[];let n=[];for(let r of t){let s=$(O({},e),{node:(r==null?void 0:r.nodeType)!==void 0?r:e.node}),o=this.pathExpr.evaluate(s);Array.isArray(o)?n.push(...o):o!=null&&n.push(o)}return n}}});var rn,qr=m(()=>{S();rn=class extends E{constructor(e,t){super(),this.operator=e,this.operand=t}evaluate(e){let t=this.operand.evaluate(e),n=this.atomize(t);if(n===null)return null;let r=this.toNumber(n);return this.operator==="+"?r:-r}atomize(e){return e==null?null:Array.isArray(e)?e.length===0?null:e[0]:e}toNumber(e){if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;if(typeof e=="string"){let t=e.trim();return t===""?NaN:Number(t)}return Number(e)}toString(){return`${this.operator}${this.operand.toString()}`}}});var it,Br=m(()=>{S();it=class extends E{constructor(e,t,n){super(),this.left=e,this.right=t,this.operator=n}evaluate(e){let t=this.left.evaluate(e),n=this.right.evaluate(e);return this.compare(t,n,this.operator)}compare(e,t,n){let r=Array.isArray(e),s=Array.isArray(t);return r&&s?this.compareNodeSets(e,t,n):r?this.compareNodeSetToValue(e,t,n):s?this.compareValueToNodeSet(e,t,n):this.comparePrimitives(e,t,n)}compareNodeSets(e,t,n){for(let r of e){let s=this.getStringValue(r);for(let o of t){let a=this.getStringValue(o);if(this.comparePrimitives(s,a,n))return!0}}return!1}compareNodeSetToValue(e,t,n){for(let r of e){let s=typeof t=="number"?Number(this.getStringValue(r)):this.getStringValue(r);if(this.comparePrimitives(s,t,n))return!0}return!1}compareValueToNodeSet(e,t,n){for(let r of t){let s=typeof e=="number"?Number(this.getStringValue(r)):this.getStringValue(r);if(this.comparePrimitives(e,s,n))return!0}return!1}comparePrimitives(e,t,n){switch(n){case"=":return e==t;case"!=":return e!=t;case"<":return Number(e)<Number(t);case">":return Number(e)>Number(t);case"<=":return Number(e)<=Number(t);case">=":return Number(e)>=Number(t);default:throw new Error(`Unknown operator: ${n}`)}}getStringValue(e){if(!e)return"";if(e.nodeType===3||e.nodeType===2)return e.nodeValue||e.textContent||"";if(e.textContent!==void 0)return e.textContent;if(e.childNodes){let t="";for(let n of Array.from(e.childNodes))n.nodeType===3?t+=n.nodeValue||"":n.nodeType===1&&(t+=this.getStringValue(n));return t}return String(e)}}});var qe,jr=m(()=>{S();qe=class extends E{constructor(e,t,n){super(),this.left=e,this.right=t,this.operator=n}evaluate(e){let t=this.left.evaluate(e),n=this.right.evaluate(e),r=this.atomize(t),s=this.atomize(n);if(r===null||s===null)return null;let o=this.toNumber(r),a=this.toNumber(s);switch(this.operator){case"+":return o+a;case"-":return o-a;case"*":return o*a;case"div":return o/a;case"idiv":if(a===0)throw new Error("XPDY0002: Integer division by zero");return Math.trunc(o/a);case"mod":if(a===0)throw new Error("XPDY0002: Modulo by zero");return o-Math.trunc(o/a)*a;default:throw new Error(`Unknown arithmetic operator: ${this.operator}`)}}atomize(e){return e==null?null:Array.isArray(e)?e.length===0?null:e[0]:e}toNumber(e){if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;if(typeof e=="string"){let t=e.trim();return t===""?NaN:Number(t)}return Number(e)}toString(){return`${this.left.toString()} ${this.operator} ${this.right.toString()}`}}});var st,zr=m(()=>{S();st=class extends E{constructor(e,t,n){super(),this.left=e,this.right=t,this.operator=n}toBoolean(e){return e==null?!1:typeof e=="boolean"?e:Array.isArray(e)?e.length===0?!1:e.length===1?this.toBoolean(e[0]):!0:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"?e.length>0:!!e}evaluate(e){let t=this.toBoolean(this.left.evaluate(e));if(this.operator==="and")return t?this.toBoolean(this.right.evaluate(e)):!1;if(this.operator==="or")return t?!0:this.toBoolean(this.right.evaluate(e));throw new Error(`Unknown logical operator: ${this.operator}`)}}});var Yr=m(()=>{S()});var Gr=m(()=>{S()});var Hr=m(()=>{S()});var A,re=m(()=>{Ve();A=class{constructor(e,t=X,n,r){this.name=e;this.namespace=t;this.baseType=n;this.primitive=r}get qualifiedName(){return`{${this.namespace}}${this.name}`}}});var ot=m(()=>{});var ae,sn,on,an,cn,un,ln,pn,wo,Kr=m(()=>{ae=class{constructor(e,t,n,r,s){this.name=e,this.nodeKind=t,this.nodeName=n,this.nodeType=r,this.isWildcardName=s}matches(e){return!(!e||typeof e!="object"||e.nodeType!==this.nodeKind||this.nodeName&&!this.isWildcardName&&e.localName!==this.nodeName&&e.nodeName!==this.nodeName||this.nodeType&&e.type!==this.nodeType)}},sn=class extends ae{constructor(){super("node()","node")}matches(){return!0}},on=class extends ae{constructor(e,t){let n=e?t?`element(${e}, ${t})`:`element(${e})`:"element()";super(n,"element",e,t,!e)}},an=class extends ae{constructor(e,t){let n=e?t?`attribute(${e}, ${t})`:`attribute(${e})`:"attribute()";super(n,"attribute",e,t,!e)}},cn=class extends ae{constructor(e){let t=e?`document-node(${e.name})`:"document-node()";super(t,"document",void 0,void 0,!0),this.elementTest=e}matches(e){return super.matches(e)?this.elementTest&&e.documentElement?this.elementTest.matches(e.documentElement):!0:!1}},un=class extends ae{constructor(){super("text()","text")}},ln=class extends ae{constructor(){super("comment()","comment")}},pn=class extends ae{constructor(e){let t=e?`processing-instruction(${e})`:"processing-instruction()";super(t,"processing-instruction",e,void 0,!e)}},wo={node:new sn,element:new on,attribute:new an,documentNode:new cn,text:new un,comment:new ln,processingInstruction:new pn}});var hn=m(()=>{ot()});var Ln=m(()=>{xe()});function te(i){return i&&typeof i=="object"&&i.__isMap===!0}var Ee=m(()=>{Ln();ye()});function ce(i){return i&&typeof i=="object"&&i.__isArray===!0}function B(i){return{__isArray:!0,members:i}}var Ne=m(()=>{});var Qr=m(()=>{Ee();Ne();hn()});var Zr=m(()=>{});var Jr=m(()=>{xe()});var ct,ut,lt,pt,je=m(()=>{re();ct=class extends A{constructor(){super("anyAtomicType",X)}validate(e){return e!=null&&typeof e!="object"}cast(e){return e}},ut=class extends A{constructor(e){super("untypedAtomic",X,e,e)}validate(e){return typeof e=="string"}cast(e){return String(e)}},lt=class extends A{constructor(e){super("string",X,e,void 0)}validate(e){return typeof e=="string"}cast(e){if(e==null)throw new Error("Cannot cast null or undefined to xs:string");return String(e)}},pt=class extends A{constructor(e){super("boolean",X,e,void 0)}validate(e){return typeof e=="boolean"}cast(e){if(typeof e=="boolean")return e;if(typeof e=="string"){let t=e.trim().toLowerCase();if(t==="true"||t==="1")return!0;if(t==="false"||t==="0")return!1;throw new Error(`Cannot cast "${e}" to xs:boolean`)}if(typeof e=="number"){if(e===0)return!1;if(e===1)return!0;throw new Error(`Cannot cast ${e} to xs:boolean`)}throw new Error(`Cannot cast ${typeof e} to xs:boolean`)}}});var ht,mt,ft,dt,ze=m(()=>{re();ht=class extends A{constructor(e){super("decimal",X,e,void 0)}validate(e){return typeof e=="number"?isFinite(e):!1}cast(e){if(typeof e=="number"&&isFinite(e))return e;if(typeof e=="string"){let t=parseFloat(e);if(!isFinite(t))throw new Error(`Cannot cast "${e}" to xs:decimal`);return t}if(typeof e=="boolean")return e?1:0;throw new Error(`Cannot cast ${typeof e} to xs:decimal`)}},mt=class extends A{constructor(e){super("float",X,e,void 0)}validate(e){return typeof e=="number"}cast(e){if(typeof e=="number")return e;if(typeof e=="string"){if(e==="INF")return 1/0;if(e==="-INF")return-1/0;if(e==="NaN")return NaN;let t=parseFloat(e);if(isNaN(t))throw new Error(`Cannot cast "${e}" to xs:float`);return t}if(typeof e=="boolean")return e?1:0;throw new Error(`Cannot cast ${typeof e} to xs:float`)}},ft=class extends A{constructor(e){super("double",X,e,void 0)}validate(e){return typeof e=="number"}cast(e){if(typeof e=="number")return e;if(typeof e=="string"){if(e==="INF")return 1/0;if(e==="-INF")return-1/0;if(e==="NaN")return NaN;let t=parseFloat(e);if(isNaN(t))throw new Error(`Cannot cast "${e}" to xs:double`);return t}if(typeof e=="boolean")return e?1:0;throw new Error(`Cannot cast ${typeof e} to xs:double`)}},dt=class extends A{constructor(e,t){super("integer",X,e,t)}validate(e){return typeof e=="number"&&Number.isInteger(e)&&isFinite(e)}cast(e){let t=this.baseType.cast(e),n=Math.trunc(t);if(!isFinite(n))throw new Error(`Cannot cast ${e} to xs:integer`);return n}}});function ei(i){let e=i.match(/^(-)?P(?:(\d+)Y)?(?:(\d+)M)?(?:(\d+)D)?(?:T(?:(\d+)H)?(?:(\d+)M)?(?:(\d+(?:\.\d+)?)S)?)?$/);if(!e)throw new Error(`Invalid duration format: "${i}"`);if(!e.slice(2).some(s=>s!==void 0))throw new Error(`Invalid duration format: "${i}"`);let n=!!e[1],r=n?-1:1;return{negative:n,years:r*(parseInt(e[2])||0),months:r*(parseInt(e[3])||0),days:r*(parseInt(e[4])||0),hours:r*(parseInt(e[5])||0),minutes:r*(parseInt(e[6])||0),seconds:r*(parseFloat(e[7])||0)}}function ti(i){let e=i.match(/^(\d{2}):(\d{2}):(\d{2}(?:\.\d+)?)(?:Z|([+-])(\d{2}):(\d{2}))?$/);if(!e)throw new Error(`Invalid time format: "${i}"`);let t=parseInt(e[1],10),n=parseInt(e[2],10),r=parseFloat(e[3]);if(t<0||t>23)throw new Error(`Invalid hours value: ${t}`);if(n<0||n>59)throw new Error(`Invalid minutes value: ${n}`);if(r<0||r>=60)throw new Error(`Invalid seconds value: ${r}`);let s;return e[4]&&(s={sign:e[4],hours:parseInt(e[5],10),minutes:parseInt(e[6],10)}),{hours:t,minutes:n,seconds:r,timezone:s}}var yt,gt,xt,Et,Re=m(()=>{re();yt=class extends A{constructor(e){super("duration",X,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"years"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string")return ei(e);throw new Error(`Cannot cast ${typeof e} to xs:duration`)}},gt=class extends A{constructor(e){super("dateTime",X,e,void 0)}validate(e){return e instanceof Date}cast(e){if(e instanceof Date)return e;if(typeof e=="string"){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`Invalid dateTime value: "${e}"`);return t}throw new Error(`Cannot cast ${typeof e} to xs:dateTime`)}},xt=class extends A{constructor(e,t){super("date",X,e,t)}validate(e){return e instanceof Date}cast(e){let t=this.baseType.cast(e),n=new Date(t);return n.setHours(0,0,0,0),n}},Et=class extends A{constructor(e,t){super("time",X,e,t)}validate(e){return typeof e=="object"&&e!==null&&"hours"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string")return ti(e);throw new Error(`Cannot cast ${typeof e} to xs:time`)}}});var Nt,Tt,bt,Pt,Xt,Ie=m(()=>{re();Nt=class extends A{constructor(e){super("gYearMonth",X,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"year"in e&&"month"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.match(/^(-?\d{4})-(\d{2})$/);if(!t)throw new Error(`Invalid gYearMonth format: "${e}"`);let n=parseInt(t[1],10),r=parseInt(t[2],10);if(r<1||r>12)throw new Error(`Invalid month value: ${r}`);return{year:n,month:r}}throw new Error(`Cannot cast ${typeof e} to xs:gYearMonth`)}},Tt=class extends A{constructor(e){super("gYear",X,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"year"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.match(/^(-?\d{4})$/);if(!t)throw new Error(`Invalid gYear format: "${e}"`);return{year:parseInt(t[1],10)}}throw new Error(`Cannot cast ${typeof e} to xs:gYear`)}},bt=class extends A{constructor(e){super("gMonthDay",X,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"month"in e&&"day"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.match(/^--(\d{2})-(\d{2})$/);if(!t)throw new Error(`Invalid gMonthDay format: "${e}"`);let n=parseInt(t[1],10),r=parseInt(t[2],10);if(n<1||n>12)throw new Error(`Invalid month value: ${n}`);if(r<1||r>31)throw new Error(`Invalid day value: ${r}`);return{month:n,day:r}}throw new Error(`Cannot cast ${typeof e} to xs:gMonthDay`)}},Pt=class extends A{constructor(e){super("gDay",X,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"day"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.match(/^---(\d{2})$/);if(!t)throw new Error(`Invalid gDay format: "${e}"`);let n=parseInt(t[1],10);if(n<1||n>31)throw new Error(`Invalid day value: ${n}`);return{day:n}}throw new Error(`Cannot cast ${typeof e} to xs:gDay`)}},Xt=class extends A{constructor(e){super("gMonth",X,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"month"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.match(/^--(\d{2})$/);if(!t)throw new Error(`Invalid gMonth format: "${e}"`);let n=parseInt(t[1],10);if(n<1||n>12)throw new Error(`Invalid month value: ${n}`);return{month:n}}throw new Error(`Cannot cast ${typeof e} to xs:gMonth`)}}});var St,At,mn=m(()=>{re();St=class extends A{constructor(e){super("hexBinary",X,e,void 0)}validate(e){return typeof e=="string"?/^[0-9A-Fa-f]*$/.test(e)&&e.length%2===0:e instanceof Uint8Array}cast(e){if(typeof e=="string"){if(!this.validate(e))throw new Error(`Invalid hexBinary format: "${e}"`);return e.toUpperCase()}if(e instanceof Uint8Array)return Array.from(e).map(t=>t.toString(16).padStart(2,"0")).join("").toUpperCase();throw new Error(`Cannot cast ${typeof e} to xs:hexBinary`)}},At=class extends A{constructor(e){super("base64Binary",X,e,void 0)}validate(e){return typeof e=="string"?/^[A-Za-z0-9+/]*={0,2}$/.test(e)&&e.length%4===0:e instanceof Uint8Array}cast(e){if(typeof e=="string"){if(!this.validate(e))throw new Error(`Invalid base64Binary format: "${e}"`);return e}if(e instanceof Uint8Array){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n="",r=0,s=e.length;for(;r<s;){let o=e[r++],a=r<s,c=a?e[r++]:0,u=r<s,l=u?e[r++]:0,h=o<<16|c<<8|l;n+=t[h>>18&63],n+=t[h>>12&63],n+=a?t[h>>6&63]:"=",n+=u?t[h&63]:"="}return n}throw new Error(`Cannot cast ${typeof e} to xs:base64Binary`)}}});var Ct,wt,fn=m(()=>{re();Ct=class extends A{constructor(e){super("anyURI",X,e,void 0)}validate(e){return typeof e=="string"}cast(e){if(typeof e=="string")return e;throw new Error(`Cannot cast ${typeof e} to xs:anyURI`)}},wt=class extends A{constructor(e){super("QName",X,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"localName"in e&&"namespaceURI"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.split(":");if(t.length===1)return{localName:t[0],namespaceURI:"",prefix:void 0};if(t.length===2)return{localName:t[1],namespaceURI:"",prefix:t[0]}}throw new Error(`Cannot cast ${typeof e} to xs:QName`)}}});var V,Un=m(()=>{re();V=class extends A{constructor(t,n,r,s,o){super(t,X,n,r);this.min=s;this.max=o}validate(t){return!(typeof t!="number"||!Number.isInteger(t)||!isFinite(t)||!Number.isSafeInteger(t)||this.min!==void 0&&t<this.min||this.max!==void 0&&t>this.max)}cast(t){let n=this.baseType.cast(t);if(!Number.isSafeInteger(n))throw new Error(`Value ${n} is not a safe integer for ${this.name}`);if(this.min!==void 0&&n<this.min)throw new Error(`Value ${n} is below minimum ${this.min} for ${this.name}`);if(this.max!==void 0&&n>this.max)throw new Error(`Value ${n} is above maximum ${this.max} for ${this.name}`);return n}}});function ie(i){return i&&typeof i=="object"&&i.__isFunctionItem===!0}var dn=m(()=>{});function Be(i){return Jo[i]}var F,vo,_o,Mo,j,Do,Fo,ko,Ot,$o,Lo,Vo,Uo,Wo,qo,Bo,jo,zo,Yo,Go,yn,oi,ai,ci,Ho,ui,Ko,Wn,Qo,li,pi,hi,Zo,Jo,xe=m(()=>{re();re();ot();Kr();hn();Qr();Zr();Jr();Ln();je();ze();Re();Re();Ie();mn();fn();Un();dn();je();je();je();je();ze();ze();ze();ze();Re();Re();Re();Re();Ie();Ie();Ie();Ie();Ie();mn();mn();fn();fn();Un();F=new ct,vo=new ut(F),_o=new lt(F),Mo=new pt(F),j=new ht(F),Do=new mt(F),Fo=new ft(F),ko=new yt(F),Ot=new gt(F),$o=new xt(Ot,Ot),Lo=new Et(Ot,Ot),Vo=new Ct(F),Uo=new wt(F),Wo=new Nt(F),qo=new Tt(F),Bo=new bt(F),jo=new Pt(F),zo=new Xt(F),Yo=new St(F),Go=new At(F),yn=new dt(j,j),oi=new V("long",yn,j,-9223372036854776e3,9223372036854776e3),ai=new V("int",oi,j,-2147483648,2147483647),ci=new V("short",ai,j,-32768,32767),Ho=new V("byte",ci,j,-128,127),ui=new V("nonPositiveInteger",yn,j,void 0,0),Ko=new V("negativeInteger",ui,j,void 0,-1),Wn=new V("nonNegativeInteger",yn,j,0,void 0),Qo=new V("positiveInteger",Wn,j,1,void 0),li=new V("unsignedLong",Wn,j,0,18446744073709552e3),pi=new V("unsignedInt",li,j,0,4294967295),hi=new V("unsignedShort",pi,j,0,65535),Zo=new V("unsignedByte",hi,j,0,255),Jo={anyAtomicType:F,untypedAtomic:vo,string:_o,boolean:Mo,decimal:j,float:Do,double:Fo,integer:yn,duration:ko,dateTime:Ot,date:$o,time:Lo,anyURI:Vo,QName:Uo,gYearMonth:Wo,gYear:qo,gMonthDay:Bo,gDay:jo,gMonth:zo,hexBinary:Yo,base64Binary:Go,long:oi,int:ai,short:ci,byte:Ho,nonPositiveInteger:ui,negativeInteger:Ko,nonNegativeInteger:Wn,positiveInteger:Qo,unsignedLong:li,unsignedInt:pi,unsignedShort:hi,unsignedByte:Zo}});var mi=m(()=>{xe();S()});var fi=m(()=>{xe();ot();S()});var di=m(()=>{S();hn()});var ve,yi=m(()=>{S();ve=class extends E{constructor(e,t){super(),this.left=e,this.right=t}evaluate(e){let t=this.left.evaluate(e),n=this.right.evaluate(e),r=Array.isArray(t)?t:[],s=Array.isArray(n)?n:[];return this.unionNodes(r,s)}unionNodes(e,t){let n=new Set,r=[];for(let s of e)n.has(s)||(n.add(s),r.push(s));for(let s of t)n.has(s)||(n.add(s),r.push(s));return this.sortByDocumentOrder(r)}sortByDocumentOrder(e){return e.sort((t,n)=>{if(t===n)return 0;if(typeof t.compareDocumentPosition=="function"){let r=t.compareDocumentPosition(n);if(r&4)return-1;if(r&2)return 1}return 0})}}});var gn,gi=m(()=>{S();gn=class extends E{evaluate(e){return[]}toString(){return"empty-sequence()"}}});var xn,xi=m(()=>{S();xn=class extends E{constructor(e){super(),this.expression=e}evaluate(e){return this.expression.evaluate(e)}test(e){let t=this.evaluate(e);return typeof t=="number"?t===(e==null?void 0:e.position):this.toBoolean(t)}toBoolean(e){return typeof e=="boolean"?e:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"||Array.isArray(e)?e.length>0:!!e}}});var Ei=m(()=>{S()});var Ni=m(()=>{S()});var Ti=m(()=>{S()});var Te,Rt=m(()=>{Ve();Te=class{constructor(){this.elementId=0}convert(e,t){if(e==null)return null;typeof e!="string"&&(e=String(e));let n=e.trim();if(n==="")return null;try{let r=JSON.parse(n);return this.createDocumentNode(r,t)}catch(r){if(t!=null&&t.fallback&&typeof t.fallback=="function")try{let s=t.fallback(n);return this.createDocumentNode(s,t)}catch(s){return null}return t!=null&&t.liberal?this.liberalParse(n,t):null}}createDocumentNode(e,t){this.elementId=0;let n=this.valueToElement(e,"root",t),r={nodeType:Oe.DOCUMENT_NODE,nodeName:"#document",localName:"#document",childNodes:[n],documentElement:n};return n.ownerDocument=r,r}valueToElement(e,t,n,r){let s={nodeType:Oe.ELEMENT_NODE,nodeName:t,localName:t,childNodes:[],attributes:[]};if(e==null)return s;if(typeof e=="object"&&!Array.isArray(e)){let o=[],a=new Set;for(let c in e)if(Object.prototype.hasOwnProperty.call(e,c)){if(a.has(c)){if((n==null?void 0:n.duplicates)==="reject")throw new Error(`Duplicate key: ${c}`);if((n==null?void 0:n.duplicates)==="use-first")continue}a.add(c);let u=this.sanitizeElementName(c),l=this.valueToElement(e[c],u,n,s);o.push(l)}s.childNodes=o}else if(Array.isArray(e)){let o=e.map((a,c)=>this.valueToElement(a,"item",n,s));s.childNodes=o}else if(typeof e=="string"){let o={nodeType:Oe.TEXT_NODE,nodeName:"#text",localName:"#text",textContent:e};s.childNodes=[o],s.textContent=e}else if(typeof e=="number"){let o=String(e),a={nodeType:Oe.TEXT_NODE,nodeName:"#text",localName:"#text",textContent:o};s.childNodes=[a],s.textContent=o}else if(typeof e=="boolean"){let o=e?"true":"false",a={nodeType:Oe.TEXT_NODE,nodeName:"#text",localName:"#text",textContent:o};s.childNodes=[a],s.textContent=o}return s}sanitizeElementName(e){if(/^[a-zA-Z_][\w.-]*$/.test(e))return e;let t=e.replace(/[^a-zA-Z0-9_.-]/g,"_");return/^[a-zA-Z_]/.test(t)||(t="_"+t),(!t||t==="_")&&(t="item"),t}liberalParse(e,t){try{let n=e.replace(/,(\s*[}\]])/g,"$1");n=n.replace(/'/g,'"');let r=JSON.parse(n);return this.createDocumentNode(r,t)}catch(n){return null}}}});function bi(i,e,t){if(!ie(t))throw new Error("fn:for-each: second argument must be a function");let n=t;if(e==null)return[];let r=Array.isArray(e)?e:[e],s=[];for(let o of r){let a=n.implementation(o);Array.isArray(a)?s.push(...a):a!=null&&s.push(a)}return s.length===0?[]:s}function Pi(i,e,t){if(!ie(t))throw new Error("fn:filter: second argument must be a function");let n=t;if(e==null)return[];let s=(Array.isArray(e)?e:[e]).filter(o=>!!n.implementation(o));return s.length===0?[]:s}function Xi(i,e,t,n){if(!ie(n))throw new Error("fn:fold-left: third argument must be a function");let r=n;if(e==null)return t;let s=Array.isArray(e)?e:[e],o=t;for(let a of s)o=r.implementation(o,a);return o}function Si(i,e,t,n){if(!ie(n))throw new Error("fn:fold-right: third argument must be a function");let r=n;if(e==null)return t;let s=Array.isArray(e)?e:[e],o=t;for(let a=s.length-1;a>=0;a--)o=r.implementation(s[a],o);return o}function Ai(i,e,t,n){if(!ie(n))throw new Error("fn:for-each-pair: third argument must be a function");let r=n;if(e==null||t===null||t===void 0)return[];let s=Array.isArray(e)?e:[e],o=Array.isArray(t)?t:[t],a=[],c=Math.min(s.length,o.length);for(let u=0;u<c;u++){let l=r.implementation(s[u],o[u]);Array.isArray(l)?a.push(...l):l!=null&&a.push(l)}return a.length===0?[]:a}function Ci(i,e,t){if(!ie(e))throw new Error("fn:apply: first argument must be a function");let n=e;if(t==null)return n.implementation();let r=Array.isArray(t)?t:[t];return n.implementation(...r)}function wi(i,e){if(!ie(e))throw new Error("fn:function-name: argument must be a function");let t=e;return t.name?t.namespace?`Q{${t.namespace}}${t.name}`:t.name:null}function Oi(i,e){if(!ie(e))throw new Error("fn:function-arity: argument must be a function");return e.arity}var Ri=m(()=>{dn()});function Ii(i){return Math.PI}function vi(i,e){let t=U(e);return Math.exp(t)}function _i(i,e){let t=U(e);return Math.pow(10,t)}function Mi(i,e){let t=U(e);return Math.log(t)}function Di(i,e){let t=U(e);return Math.log10(t)}function Fi(i,e,t){let n=U(e),r=U(t);return Math.pow(n,r)}function ki(i,e){let t=U(e);return Math.sqrt(t)}function $i(i,e){let t=U(e);return Math.sin(t)}function Li(i,e){let t=U(e);return Math.cos(t)}function Vi(i,e){let t=U(e);return Math.tan(t)}function Ui(i,e){let t=U(e);return Math.asin(t)}function Wi(i,e){let t=U(e);return Math.acos(t)}function qi(i,e){let t=U(e);return Math.atan(t)}function Bi(i,e,t){let n=U(e),r=U(t);return Math.atan2(n,r)}function U(i){return i==null?NaN:Array.isArray(i)?i.length===0?NaN:U(i[0]):Number(i)}var ji=m(()=>{});function qn(i){return i==null?null:Array.isArray(i)?i.length>0?i[0]:null:i}function Bn(i){return i==null?[]:Array.isArray(i)?i.length>1?i.slice(1):[]:[]}var jn=m(()=>{ye()});function Yi(i,e){let t=Array.isArray(e)?e:e?[e]:[];return t.length===0?[]:t.filter(n=>Ye(n)?!t.some(r=>!Ye(r)||n===r?!1:Ki(r,n)):!1)}function Gi(i,e){let t=Array.isArray(e)?e:e?[e]:[];return t.length===0?[]:t.filter(n=>Ye(n)?!t.some(r=>!Ye(r)||n===r?!1:Ki(n,r)):!1)}function Hi(i,e,t,n){let r=Array.isArray(e)?e:e?[e]:[];if(r.length<=1)return e;let s=r.map((o,a)=>({item:o,index:a}));return n&&typeof n=="object"&&n.__isFunctionItem?s.sort((o,a)=>{let c=n.implementation(o.item),u=n.implementation(a.item);return zi(c,u)}):s.sort((o,a)=>zi(o.item,a.item)),s.map(o=>o.item)}function Ye(i){return i!=null&&typeof i=="object"&&("nodeType"in i||"localName"in i)}function Ki(i,e){if(!Ye(i)||!Ye(e))return!1;let t=e.parent||e.parentNode;for(;t;){if(t===i)return!0;t=t.parent||t.parentNode}return!1}function zi(i,e){if(Array.isArray(i)&&i.length>0&&(i=i[0]),Array.isArray(e)&&e.length>0&&(e=e[0]),i==null&&e==null)return 0;if(i==null)return-1;if(e==null)return 1;if(typeof i=="number"&&typeof e=="number")return i-e;let t=String(i),n=String(e);return t.localeCompare(n)}var Qi=m(()=>{jn()});function Zi(i,e){let t=String(e);if(typeof process!="undefined"&&process.env){let n=process.env[t];return n!==void 0?n:null}return null}function Ji(i){return typeof process!="undefined"&&process.env?Object.keys(process.env):[]}var es=m(()=>{});function rs(i,e,t,n){let r=e==null?"":String(e),s=String(t),o=n?String(n):"";try{let a="";o.includes("i")&&(a+="i"),o.includes("m")&&(a+="m"),o.includes("s")&&(a+="s"),o.includes("x")&&(a+="x");let c=new RegExp(s,a+"g"),u=[],l=0,h;for(;(h=c.exec(r))!==null;)h.index>l&&u.push({type:"non-match",value:r.substring(l,h.index)}),u.push({type:"match",value:h[0],groups:h.slice(1).map(p=>p||"")}),l=c.lastIndex;return l<r.length&&u.push({type:"non-match",value:r.substring(l)}),u.length===0&&u.push({type:"non-match",value:r}),u}catch(a){throw new Error(`Invalid regular expression: ${s}`)}}function is(i,e,t,n){if(e==null)return"";let r=Array.isArray(e)?e.length>0?Number(e[0]):0:Number(e),s=String(t),o=Math.floor(r),a=o<0,c=Math.abs(o);if(s==="1")return String(o);if(s==="01")return String(Math.abs(o)).padStart(2,"0");if(s==="a")return ts(c,"a");if(s==="A")return ts(c,"A");if(s==="i")return ns(c).toLowerCase();if(s==="I")return ns(c);if(s==="w")return zn(c);if(s==="W")return zn(c).replace(/^\w/,l=>l.toUpperCase());let u=s.match(/^(0+)$/);if(u){let l=u[1].length;return String(c).padStart(l,"0")}return String(o)}function ss(i,e,t,n){if(e==null)return"NaN";let r=Array.isArray(e)?e.length>0?Number(e[0]):NaN:Number(e);if(isNaN(r))return"NaN";if(!isFinite(r))return r>0?"Infinity":"-Infinity";let o=String(t).split("."),a=o[0]||"0",c=o[1]||"",u=(a.match(/0/g)||[]).length,l=(c.match(/0/g)||[]).length,h=c.length,p;if(l>0||h>0){let x=Math.max(l,Math.min(h,6));p=r.toFixed(x)}else p=String(Math.round(r));let[d,g]=p.split("."),f=d.padStart(u,"0");return g!==void 0?`${f}.${g}`:f}function ts(i,e){if(i<=0)return"";let t=e.charCodeAt(0),n="",r=i;for(;r>0;)r--,n=String.fromCharCode(t+r%26)+n,r=Math.floor(r/26);return n}function ns(i){if(i<=0||i>=4e3)return String(i);let e=[{value:1e3,numeral:"M"},{value:900,numeral:"CM"},{value:500,numeral:"D"},{value:400,numeral:"CD"},{value:100,numeral:"C"},{value:90,numeral:"XC"},{value:50,numeral:"L"},{value:40,numeral:"XL"},{value:10,numeral:"X"},{value:9,numeral:"IX"},{value:5,numeral:"V"},{value:4,numeral:"IV"},{value:1,numeral:"I"}],t="",n=i;for(let{value:r,numeral:s}of e)for(;n>=r;)t+=s,n-=r;return t}function zn(i){if(i===0)return"zero";if(i<0)return"negative "+zn(-i);let e=["","one","two","three","four","five","six","seven","eight","nine"],t=["ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"],n=["","","twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"],r=["","thousand","million","billion","trillion"],s="",o=0;for(;i>0;){let a=i%1e3;a!==0&&(s=sa(a,e,t,n)+(r[o]?" "+r[o]:"")+(s?" ":"")+s),i=Math.floor(i/1e3),o++}return s.trim()}function sa(i,e,t,n){let r="",s=Math.floor(i/100);s>0&&(r+=e[s]+" hundred");let o=i%100;if(o>=20){r&&(r+=" ");let a=Math.floor(o/10),c=o%10;r+=n[a],c>0&&(r+=" "+e[c])}else o>=10?(r&&(r+=" "),r+=t[o-10]):o>0&&(r&&(r+=" "),r+=e[o]);return r}var os=m(()=>{});function W(i,e){if(Array.isArray(i)&&!ce(i))if(i.length===1)i=i[0];else throw i.length===0?new Error(`XPTY0004: ${e} requires an array, got empty sequence`):new Error(`XPTY0004: ${e} requires a single array, got sequence of ${i.length} items`);if(!ce(i))throw new Error(`XPTY0004: ${e} requires an array, got ${typeof i}`);return i}function as(i,e,t){if(!Number.isInteger(e))throw new Error(`XPTY0004: ${t} position must be an integer, got ${e}`);if(e<1||e>i.members.length)throw new Error(`FOAY0001: ${t} position ${e} is out of bounds (array size: ${i.members.length})`)}function cs(i,e){return W(e,"array:size").members.length}function us(i,e,t){let n=W(e,"array:get");return as(n,t,"array:get"),n.members[t-1]}function ls(i,e,t,n){let r=W(e,"array:put");as(r,t,"array:put");let s=[...r.members];return s[t-1]=n,B(s)}function ps(i,e,t){let n=W(e,"array:append");return B([...n.members,t])}function hs(i,e,t,n){let r=W(e,"array:subarray");if(!Number.isInteger(t))throw new Error(`XPTY0004: array:subarray start must be an integer, got ${t}`);if(t<1)throw new Error(`FOAY0001: array:subarray start ${t} must be >= 1`);if(t>r.members.length+1)throw new Error(`FOAY0001: array:subarray start ${t} is out of bounds (array size: ${r.members.length})`);let s=t-1;if(n===void 0)return B(r.members.slice(s));if(!Number.isInteger(n))throw new Error(`XPTY0004: array:subarray length must be an integer, got ${n}`);if(n<0)throw new Error(`FOAY0002: array:subarray length ${n} must be >= 0`);if(s+n>r.members.length)throw new Error(`FOAY0001: array:subarray range [${t}, ${t+n-1}] exceeds array bounds`);return B(r.members.slice(s,s+n))}function ms(i,e,t){let n=W(e,"array:remove"),r=Array.isArray(t)?t:[t];for(let a of r){if(!Number.isInteger(a))throw new Error(`XPTY0004: array:remove position must be an integer, got ${a}`);if(a<1||a>n.members.length)throw new Error(`FOAY0001: array:remove position ${a} is out of bounds (array size: ${n.members.length})`)}let s=new Set(r.map(a=>a-1)),o=n.members.filter((a,c)=>!s.has(c));return B(o)}function fs(i,e,t,n){let r=W(e,"array:insert-before");if(!Number.isInteger(t))throw new Error(`XPTY0004: array:insert-before position must be an integer, got ${t}`);if(t<1||t>r.members.length+1)throw new Error(`FOAY0001: array:insert-before position ${t} is out of bounds (valid range: 1 to ${r.members.length+1})`);let s=[...r.members];return s.splice(t-1,0,n),B(s)}function ds(i,e){let t=W(e,"array:head");if(t.members.length===0)throw new Error("FOAY0001: array:head called on empty array");return t.members[0]}function ys(i,e){let t=W(e,"array:tail");if(t.members.length===0)throw new Error("FOAY0001: array:tail called on empty array");return B(t.members.slice(1))}function gs(i,e){let t=W(e,"array:reverse");return B([...t.members].reverse())}function xs(i,e){let t=Array.isArray(e)?e:[e],n=[];for(let r of t){if(r==null)continue;let s=W(r,"array:join");n.push(...s.members)}return B(n)}function Es(i,e){let t=[],n=r=>{if(ce(r))for(let s of r.members)n(s);else if(Array.isArray(r))for(let s of r)n(s);else t.push(r)};return n(e),t}function Ns(i,e,t){let n=W(e,"array:for-each");if(!t||typeof t!="function"&&!t.__isFunctionItem)throw new Error("XPTY0004: array:for-each requires a function as second argument");let r=t.__isFunctionItem?t.implementation:t,s=n.members.map((o,a)=>r(o));return B(s)}function Ts(i,e,t){let n=W(e,"array:filter");if(!t||typeof t!="function"&&!t.__isFunctionItem)throw new Error("XPTY0004: array:filter requires a function as second argument");let r=t.__isFunctionItem?t.implementation:t,s=n.members.filter(o=>{let a=r(o);return typeof a=="boolean"?a:typeof a=="number"?a!==0&&!isNaN(a):typeof a=="string"||Array.isArray(a)?a.length>0:!!a});return B(s)}function bs(i,e,t,n){let r=W(e,"array:fold-left");if(!n||typeof n!="function"&&!n.__isFunctionItem)throw new Error("XPTY0004: array:fold-left requires a function as third argument");let s=n.__isFunctionItem?n.implementation:n,o=t;for(let a of r.members)o=s(o,a);return o}function Ps(i,e,t,n){let r=W(e,"array:fold-right");if(!n||typeof n!="function"&&!n.__isFunctionItem)throw new Error("XPTY0004: array:fold-right requires a function as third argument");let s=n.__isFunctionItem?n.implementation:n,o=t;for(let a=r.members.length-1;a>=0;a--)o=s(r.members[a],o);return o}function Xs(i,e,t,n){let r=W(e,"array:sort"),s=n&&(n.__isFunctionItem?n.implementation:n),o=r.members.map((a,c)=>({member:a,idx:c}));return o.sort((a,c)=>{let u=s?s(a.member):a.member,l=s?s(c.member):c.member;if(Array.isArray(u)&&(u=u[0]),Array.isArray(l)&&(l=l[0]),typeof u=="number"&&typeof l=="number")return u-l;let h=String(u!=null?u:""),p=String(l!=null?l:""),d=h.localeCompare(p);return d!==0?d:a.idx-c.idx}),B(o.map(a=>a.member))}var Ss=m(()=>{Ne()});function be(i,e){if(Array.isArray(i)&&!te(i))if(i.length===1)i=i[0];else throw i.length===0?new Error(`XPTY0004: ${e} requires a map, got empty sequence`):new Error(`XPTY0004: ${e} requires a single map, got sequence of ${i.length} items`);if(!te(i))throw new Error(`XPTY0004: ${e} requires a map, got ${typeof i}`);return i}function As(i){let e=Object.create(null);return e.__isMap=!0,Object.assign(e,i),e}function Cs(i,e){let t=be(e,"map:size");return Object.keys(t).filter(n=>!n.startsWith("__")).length}function ws(i,e){let t=be(e,"map:keys");return Object.keys(t).filter(n=>!n.startsWith("__"))}function Os(i,e,t){let n=be(e,"map:contains"),r=String(t);return Object.prototype.hasOwnProperty.call(n,r)}function Rs(i,e,t){let n=be(e,"map:get"),r=String(t);if(Object.prototype.hasOwnProperty.call(n,r))return n[r]}function Is(i,e,t,n){let r=be(e,"map:put"),s=String(t),o=As(r);return o[s]=n,o}function vs(i,e,t){let n=String(e),r=Object.create(null);return r.__isMap=!0,r[n]=t,r}function _s(i,e,t){let n=Array.isArray(e)?e:[e],r=Object.create(null);r.__isMap=!0;for(let s of n){let o=be(s,"map:merge");for(let a of Object.keys(o))a.startsWith("__")||(r[a]=o[a])}return r}function Ms(i,e,t){let n=be(e,"map:for-each");if(!t||typeof t!="function"&&!t.__isFunctionItem)throw new Error("XPTY0004: map:for-each requires a function as second argument");let r=t.__isFunctionItem?t.implementation:t,s=Object.create(null);s.__isMap=!0;for(let o of Object.keys(n)){if(o.startsWith("__"))continue;let a=n[o];s[o]=r(o,a)}return s}function Ds(i,e,t){let n=be(e,"map:remove"),r=Array.isArray(t)?t:[t],s=new Set(r.map(a=>String(a))),o=As(n);for(let a of Array.from(s))Object.prototype.hasOwnProperty.call(o,a)&&delete o[a];return o}var Fs=m(()=>{Ee()});function Gn(i){if(i===null)return null;if(Array.isArray(i))return B(i.map(Gn));if(typeof i=="object"){let e=Object.create(null);e.__isMap=!0;for(let[t,n]of Object.entries(i))e[t]=Gn(n);return e}if(typeof i=="string"||typeof i=="number"||typeof i=="boolean")return i;throw new q("FOJS0001","Unsupported JSON value type")}function ks(i,e){if(typeof i!="string")throw new q("XPTY0004","parse-json: first argument must be a string");let t={liberal:!1,duplicates:"use-last"};if(e&&te(e)){e.liberal===!0&&(t.liberal=!0);let r=e.duplicates;typeof r=="string"&&(t.duplicates=r)}try{if(t.duplicates!=="use-last")throw new q("FOJS0001",'Only duplicates="use-last" is supported');let n=JSON.parse(i);return Gn(n)}catch(n){throw new q("FOJS0001","parse-json: "+(n&&n.message?n.message:String(n)))}}function Ls(i,e,t){return typeof i=="string"?ks(i,e):ks(e,t)}function En(i){if(i==null)return null;if(ce(i))return i.members.map(En);if(te(i)){let e={};for(let[t,n]of Object.entries(i))t.startsWith("__")||(e[t]=En(n));return e}if(typeof i=="string"||typeof i=="number"||typeof i=="boolean")return i;if(Array.isArray(i))return i.map(En);throw new q("FOJS0002",`Cannot serialize value of type ${typeof i}`)}function Yn(i,e){let t={indent:void 0,method:"json"};if(e&&te(e)){let n=e.indent;typeof n=="number"&&(t.indent=n);let r=e.method;typeof r=="string"&&(t.method=r)}try{let n;Array.isArray(i)?i.length===0?n=null:i.length===1?n=i[0]:n=i:n=i;let r=En(n),s=t.indent!==void 0?t.indent:void 0;return JSON.stringify(r,null,s)}catch(n){throw n instanceof q?n:new q("FOJS0002","serialize: "+(n&&n.message?n.message:String(n)))}}function Vs(i,e,t){return t!==void 0||i&&typeof i=="object"&&!("__isMap"in i)&&!("__isArray"in i)&&e!==void 0?Yn(e,t):Yn(i,e)}function $s(i,e){if(i==null||i==="")return null;if(typeof i!="string")throw new q("XPTY0004","json-to-xml: first argument must be a string or null");let t={liberal:!1,duplicates:"reject"};if(e&&te(e)){e.liberal===!0&&(t.liberal=!0);let r=e.duplicates;typeof r=="string"&&(t.duplicates=r)}try{return new Te().convert(i,t)}catch(n){throw new q("FOJS0001","json-to-xml: "+(n&&n.message?n.message:String(n)))}}function Us(i,e,t){if(typeof i=="string"||i===null||i===void 0)return $s(i,e);if(typeof i!="object")throw new q("XPTY0004","json-to-xml: first argument must be a string or null");return $s(e,t)}var Ws=m(()=>{Ee();Ne();ye();Rt();Ve()});var Nn,Ge,Tn=m(()=>{S();Rt();xe();ye();Ri();ji();Qi();jn();es();os();Ss();Fs();Ws();Nn={"upper-case":(i,e)=>String(e).toUpperCase(),"lower-case":(i,e)=>String(e).toLowerCase(),concat:(i,...e)=>e.map(t=>String(t)).join(""),"string-join":(i,e,t="")=>Array.isArray(e)?e.map(n=>String(n)).join(String(t)):String(e),substring:(i,e,t,n)=>{let r=String(e),s=Math.round(Number(t))-1;if(n===void 0)return r.substring(Math.max(0,s));let o=Math.round(Number(n)),a=Math.max(0,s);return r.substring(a,a+o)},"string-length":(i,e)=>String(e).length,"normalize-space":(i,e)=>String(e).trim().replace(/\s+/g," "),contains:(i,e,t)=>String(e).includes(String(t)),"starts-with":(i,e,t)=>String(e).startsWith(String(t)),"ends-with":(i,e,t)=>String(e).endsWith(String(t)),translate:(i,e,t,n)=>{let r=String(e),s=String(t),o=String(n),a="";for(let c of r){let u=s.indexOf(c);u===-1?a+=c:u<o.length&&(a+=o[u])}return a},replace:(i,e,t,n)=>{let r=new RegExp(String(t),"g");return String(e).replace(r,String(n))},matches:(i,e,t)=>new RegExp(String(t)).test(String(e)),tokenize:(i,e,t="\\s+")=>{let n=new RegExp(String(t));return String(e).split(n).filter(r=>r.length>0)},abs:(i,e)=>Math.abs(Number(e)),ceiling:(i,e)=>Math.ceil(Number(e)),floor:(i,e)=>Math.floor(Number(e)),round:(i,e)=>Math.round(Number(e)),"round-half-to-even":(i,e,t=0)=>{let n=Math.pow(10,Number(t)),r=Number(e)*n,s=Math.floor(r);return r-s===.5?(s%2===0?s:s+1)/n:Math.round(r)/n},number:(i,e)=>Number(e),true:()=>!0,false:()=>!1,not:(i,e)=>!e,boolean:(i,e)=>typeof e=="boolean"?e:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"||Array.isArray(e)?e.length>0:!!e,count:(i,e)=>Array.isArray(e)?e.length:e==null?0:1,sum:(i,e)=>Array.isArray(e)?e.reduce((t,n)=>t+(Number(n)||0),0):Number(e)||0,avg:(i,e)=>Array.isArray(e)?e.length===0?null:e.reduce((n,r)=>n+(Number(r)||0),0)/e.length:Number(e),min:(i,e)=>Array.isArray(e)?e.length===0?null:Math.min(...e.map(t=>Number(t))):Number(e),max:(i,e)=>Array.isArray(e)?e.length===0?null:Math.max(...e.map(t=>Number(t))):Number(e),empty:(i,e)=>e==null?!0:Array.isArray(e)?e.length===0:!1,exists:(i,e)=>e==null?!1:Array.isArray(e)?e.length>0:!0,reverse:(i,e)=>Array.isArray(e)?[...e].reverse():[e],"distinct-values":(i,e)=>Array.isArray(e)?Array.from(new Set(e)):[e],subsequence:(i,e,t,n)=>{Array.isArray(e)||(e=[e]);let r=Math.round(Number(t))-1;if(n===void 0)return e.slice(Math.max(0,r));let s=Math.round(Number(n));return e.slice(Math.max(0,r),Math.max(0,r)+s)},"insert-before":(i,e,t,n)=>{Array.isArray(e)||(e=e===null?[]:[e]),Array.isArray(n)||(n=[n]);let r=Math.max(0,Math.round(Number(t))-1);return[...e.slice(0,r),...n,...e.slice(r)]},remove:(i,e,t)=>{Array.isArray(e)||(e=[e]);let n=Math.round(Number(t))-1;return n<0||n>=e.length?e:[...e.slice(0,n),...e.slice(n+1)]},position:i=>{var e;return(e=i.position)!=null?e:0},last:i=>{var e;return(e=i.size)!=null?e:0},string:(i,e)=>{var t,n,r,s;return e===void 0?(n=(t=i.node)==null?void 0:t.textContent)!=null?n:"":Array.isArray(e)&&e.length>0?(s=(r=e[0])==null?void 0:r.textContent)!=null?s:String(e[0]):String(e)},"local-name":(i,e)=>{var n;let t=e?Array.isArray(e)?e[0]:e:i.node;return(n=t==null?void 0:t.localName)!=null?n:""},"namespace-uri":(i,e)=>{var n;let t=e?Array.isArray(e)?e[0]:e:i.node;return(n=t==null?void 0:t.namespaceUri)!=null?n:""},name:(i,e)=>{var n;let t=e?Array.isArray(e)?e[0]:e:i.node;return(n=t==null?void 0:t.nodeName)!=null?n:""},"for-each":bi,filter:Pi,"fold-left":Xi,"fold-right":Si,"for-each-pair":Ai,sort:Hi,apply:Ci,"function-name":wi,"function-arity":Oi,"math:pi":Ii,"math:exp":vi,"math:exp10":_i,"math:log":Mi,"math:log10":Di,"math:pow":Fi,"math:sqrt":ki,"math:sin":$i,"math:cos":Li,"math:tan":Vi,"math:asin":Ui,"math:acos":Wi,"math:atan":qi,"math:atan2":Bi,head:(i,e)=>qn(e),tail:(i,e)=>Bn(e),innermost:Yi,outermost:Gi,"environment-variable":Zi,"available-environment-variables":Ji,"array:size":cs,"array:get":us,"array:put":ls,"array:append":ps,"array:subarray":hs,"array:remove":ms,"array:insert-before":fs,"array:head":ds,"array:tail":ys,"array:reverse":gs,"array:join":xs,"array:flatten":Es,"array:for-each":Ns,"array:filter":Ts,"array:fold-left":bs,"array:fold-right":Ps,"array:sort":Xs,"map:size":Cs,"map:keys":ws,"map:contains":Os,"map:get":Rs,"map:put":Is,"map:entry":vs,"map:merge":_s,"map:for-each":Ms,"map:remove":Ds,"parse-json":Ls,serialize:Vs,"json-to-xml":Us,"analyze-string":rs,"format-integer":is,"format-number":ss},Ge=class extends E{constructor(t,n){super();this.jsonConverter=new Te;this.name=t,this.args=n}evaluate(t){var s,o;let n=this.args.map(a=>a.evaluate(t)),r=this.getConstructorType();if(r){if(n.length!==1)throw kr(this.name,"1",n.length);let a=n[0];if(Array.isArray(a)){if(a.length===0)throw We("single item","empty sequence",`constructor function ${this.name}`);if(a.length!==1)throw We("single item",`sequence of ${a.length} items`,`constructor function ${this.name}`);return this.castConstructorValue(r,a[0])}if(a==null)throw We("single item","empty sequence",`constructor function ${this.name}`);return this.castConstructorValue(r,a)}switch(this.name){case"last":return(s=t.size)!=null?s:0;case"position":return(o=t.position)!=null?o:0;case"count":return Array.isArray(n[0])?n[0].length:0;case"local-name":return this.localName(n,t);case"namespace-uri":return this.namespaceUri(n,t);case"name":return this.nodeName(n,t);case"string":return this.stringValue(n,t);case"concat":return n.map(c=>this.convertToString(c)).join("");case"starts-with":return String(n[0]).startsWith(String(n[1]));case"contains":return String(n[0]).includes(String(n[1]));case"substring-before":return this.substringBefore(n);case"substring-after":return this.substringAfter(n);case"substring":return this.substring(n);case"string-length":return this.stringLength(n,t);case"normalize-space":return this.normalizeSpace(n,t);case"translate":return this.translate(n);case"boolean":return this.toBoolean(n[0]);case"not":return!this.toBoolean(n[0]);case"true":return!0;case"false":return!1;case"lang":return this.lang(n,t);case"number":return this.toNumber(n,t);case"sum":return this.sum(n);case"floor":return Math.floor(Number(n[0]));case"ceiling":return Math.ceil(Number(n[0]));case"round":return Math.round(Number(n[0]));case"json-to-xml":return this.jsonToXml(n,t);default:let a=Nn[this.name];if(!a&&this.name.startsWith("Q{")){let{namespace:c,localName:u}=this.parseEQName(this.name);a=Nn[u],!a&&c==="http://www.w3.org/2005/xpath-functions/math"&&(a=Nn["math:"+u]),!a&&c==="http://www.w3.org/2005/xpath-functions/array"&&(a=Nn["array:"+u])}if(a)return a(t,...n);if(t.functions&&typeof t.functions[this.name]=="function")return t.functions[this.name](t,...n);throw nt(this.name,"function")}}parseEQName(t){let n=t.match(/^Q\{([^}]*)\}(.+)$/);return n?{namespace:n[1],localName:n[2]}:{namespace:"",localName:t}}getConstructorType(){if(!this.name.includes(":"))return;let[,t]=this.name.split(":");if(t)return Be(t)}castConstructorValue(t,n){try{return t.cast(n)}catch(r){throw $r(n,this.name)}}toBoolean(t){return typeof t=="boolean"?t:typeof t=="number"?t!==0&&!isNaN(t):typeof t=="string"||Array.isArray(t)?t.length>0:!!t}toNumber(t,n){return t.length===0?Number(this.stringValue([],n)):Number(t[0])}stringValue(t,n){var s,o,a,c;if(t.length===0)return(o=(s=n.node)==null?void 0:s.textContent)!=null?o:"";let r=t[0];return Array.isArray(r)&&r.length>0?(c=(a=r[0])==null?void 0:a.textContent)!=null?c:String(r[0]):String(r)}convertToString(t){if(Array.isArray(t)){if(t.length===0)return"";let n=t[0];return this.getNodeStringValue(n)}return String(t)}getNodeStringValue(t){var n;return t?typeof t.textContent=="string"?t.textContent:t.nodeType===3||t.nodeType===2?(n=t.nodeValue)!=null?n:"":t.nodeType===1||t.nodeType===9||t.nodeType===11?this.getDescendantTextContent(t):t.nodeValue!==void 0&&t.nodeValue!==null?String(t.nodeValue):"":""}getDescendantTextContent(t){var r;if(!t.childNodes||t.childNodes.length===0)return"";let n="";for(let s=0;s<t.childNodes.length;s++){let o=t.childNodes[s];o.nodeType===3?n+=(r=o.nodeValue)!=null?r:"":o.nodeType===1&&(n+=this.getDescendantTextContent(o))}return n}stringLength(t,n){return t.length===0?this.stringValue([],n).length:String(t[0]).length}normalizeSpace(t,n){return(t.length===0?this.stringValue([],n):String(t[0])).trim().replace(/\s+/g," ")}substringBefore(t){let n=String(t[0]),r=String(t[1]),s=n.indexOf(r);return s===-1?"":n.substring(0,s)}substringAfter(t){let n=String(t[0]),r=String(t[1]),s=n.indexOf(r);return s===-1?"":n.substring(s+r.length)}substring(t){let n=String(t[0]),r=Math.round(Number(t[1]))-1;if(t.length===2)return n.substring(Math.max(0,r));let s=Math.round(Number(t[2])),o=Math.max(0,r),a=Math.min(s-(o-r),n.length-o);return n.substring(o,o+a)}translate(t){let n=String(t[0]),r=String(t[1]),s=String(t[2]),o="";for(let a of n){let c=r.indexOf(a);c===-1?o+=a:c<s.length&&(o+=s[c])}return o}localName(t,n){var s;let r=this.getNodeArg(t,n);return(s=r==null?void 0:r.localName)!=null?s:""}namespaceUri(t,n){var s;let r=this.getNodeArg(t,n);return(s=r==null?void 0:r.namespaceUri)!=null?s:""}nodeName(t,n){var s;let r=this.getNodeArg(t,n);return(s=r==null?void 0:r.nodeName)!=null?s:""}getNodeArg(t,n){return t.length>0&&Array.isArray(t[0])&&t[0].length>0?t[0][0]:n.node}sum(t){let n=t[0];return Array.isArray(n)?n.reduce((r,s)=>{var a;let o=Number((a=s==null?void 0:s.textContent)!=null?a:s);return r+(isNaN(o)?0:o)},0):0}lang(t,n){var o,a;let r=String(t[0]).toLowerCase(),s=n.node;for(;s;){let c=((o=s.getAttribute)==null?void 0:o.call(s,"xml:lang"))||((a=s.getAttribute)==null?void 0:a.call(s,"lang"));if(c){let u=c.toLowerCase();return u===r||u.startsWith(r+"-")}s=s.parentNode}return!1}jsonToXml(t,n){if(n.xsltVersion&&n.xsltVersion!=="3.0")throw new Error('json-to-xml() is only supported in XSLT 3.0. Use version="3.0" in your stylesheet.');let r=t.length>0?String(t[0]):null,s;t.length>1&&typeof t[1]=="object"&&t[1]!==null&&(s=this.mapToOptions(t[1]));let o=this.jsonConverter.convert(r,s);return o?[o]:[]}mapToOptions(t){let n={};if(t.liberal!==void 0&&(n.liberal=!!t.liberal),t.duplicates!==void 0){let r=String(t.duplicates).toLowerCase();(r==="reject"||r==="use-first"||r==="retain")&&(n.duplicates=r)}return t.validate!==void 0&&(n.validate=!!t.validate),t.escape!==void 0&&(n.escape=!!t.escape),t.fallback!==void 0&&typeof t.fallback=="function"&&(n.fallback=t.fallback),n}}});var Hn=m(()=>{S()});var Kn=m(()=>{S()});var Qn=m(()=>{S()});var Zn=m(()=>{S();Tn()});var Jn=m(()=>{dn();S();Tn()});var er=m(()=>{S()});var tr=m(()=>{S();Ee();Ne()});var qs=m(()=>{S()});var nr=m(()=>{Ne();Ee()});var It=m(()=>{S();vr();Lr();Vr();Ur();Wr();qr();Br();jr();zr();Yr();Gr();Hr();mi();fi();di();yi();gi();xi();Ei();Ni();Ti();Tn();Rt();Hn();Kn();Qn();Zn();Jn();er();tr();qs();Ee();Ne();nr()});var ba={};An(ba,{ExprContext:()=>De,XPath:()=>Me,XmlParser:()=>we,Xslt:()=>Xn,xmlEscapeText:()=>Ce});$e();var T=class{constructor(e,t){this.type=e,this.lexeme=t}};var Ir="1.0",Po={ancestor:{type:"LOCATION",value:"ancestor"},"ancestor-or-self":{type:"LOCATION",value:"ancestor-or-self"},attribute:{type:"LOCATION",value:"attribute"},child:{type:"LOCATION",value:"child"},descendant:{type:"LOCATION",value:"descendant"},"descendant-or-self":{type:"LOCATION",value:"descendant-or-self"},following:{type:"LOCATION",value:"following"},"following-sibling":{type:"LOCATION",value:"following-sibling"},namespace:{type:"LOCATION",value:"namespace"},parent:{type:"LOCATION",value:"parent"},preceding:{type:"LOCATION",value:"preceding"},"preceding-sibling":{type:"LOCATION",value:"preceding-sibling"},self:{type:"LOCATION",value:"self"},node:{type:"NODE_TYPE",value:"node"},text:{type:"NODE_TYPE",value:"text"},comment:{type:"NODE_TYPE",value:"comment"},"processing-instruction":{type:"NODE_TYPE",value:"processing-instruction"},and:{type:"OPERATOR",value:"and"},or:{type:"OPERATOR",value:"or"},div:{type:"OPERATOR",value:"div"},mod:{type:"OPERATOR",value:"mod"},last:{type:"FUNCTION",value:"last"},position:{type:"FUNCTION",value:"position"},count:{type:"FUNCTION",value:"count"},id:{type:"FUNCTION",value:"id"},"local-name":{type:"FUNCTION",value:"local-name"},"namespace-uri":{type:"FUNCTION",value:"namespace-uri"},name:{type:"FUNCTION",value:"name"},string:{type:"FUNCTION",value:"string"},concat:{type:"FUNCTION",value:"concat"},"starts-with":{type:"FUNCTION",value:"starts-with"},contains:{type:"FUNCTION",value:"contains"},"substring-before":{type:"FUNCTION",value:"substring-before"},"substring-after":{type:"FUNCTION",value:"substring-after"},substring:{type:"FUNCTION",value:"substring"},"string-length":{type:"FUNCTION",value:"string-length"},"normalize-space":{type:"FUNCTION",value:"normalize-space"},translate:{type:"FUNCTION",value:"translate"},boolean:{type:"FUNCTION",value:"boolean"},not:{type:"FUNCTION",value:"not"},true:{type:"FUNCTION",value:"true"},false:{type:"FUNCTION",value:"false"},lang:{type:"FUNCTION",value:"lang"},number:{type:"FUNCTION",value:"number"},sum:{type:"FUNCTION",value:"sum"},floor:{type:"FUNCTION",value:"floor"},ceiling:{type:"FUNCTION",value:"ceiling"},round:{type:"FUNCTION",value:"round"}},Xo={if:{type:"RESERVED_WORD",value:"if"},then:{type:"RESERVED_WORD",value:"then"},else:{type:"RESERVED_WORD",value:"else"},for:{type:"RESERVED_WORD",value:"for"},in:{type:"RESERVED_WORD",value:"in"},return:{type:"RESERVED_WORD",value:"return"},some:{type:"RESERVED_WORD",value:"some"},every:{type:"RESERVED_WORD",value:"every"},satisfies:{type:"RESERVED_WORD",value:"satisfies"},instance:{type:"RESERVED_WORD",value:"instance"},of:{type:"RESERVED_WORD",value:"of"},cast:{type:"RESERVED_WORD",value:"cast"},as:{type:"RESERVED_WORD",value:"as"},castable:{type:"RESERVED_WORD",value:"castable"},treat:{type:"RESERVED_WORD",value:"treat"}},So={let:{type:"RESERVED_WORD",value:"let"},function:{type:"RESERVED_WORD",value:"function"}},Ao={map:{type:"RESERVED_WORD",value:"map"},array:{type:"RESERVED_WORD",value:"array"}};function Co(i){let e=O({},Po);return i!=="1.0"&&Object.assign(e,Xo),(i==="3.0"||i==="3.1")&&Object.assign(e,So),i==="3.1"&&Object.assign(e,Ao),e}var Le=class{constructor(e){var t;typeof e=="object"?this.version=(t=e.version)!=null?t:Ir:this.version=e!=null?e:Ir,this.reservedWords=Co(this.version)}getVersion(){return this.version}registerFunctions(e){this.additionalFunctions||(this.additionalFunctions=new Set);for(let t of e)this.additionalFunctions.add(t)}isAlpha(e){return/^[a-zA-Z_\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]$/.test(e)}isAlphaNumeric(e){return/^[a-zA-Z0-9_\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0300-\u036F\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]$/.test(e)}isNumber(e){return/^[0-9]$/.test(e)}isWhitespace(e){return/^[\s\t\n\r]$/.test(e)}peek(){return this.expression[this.current]}peekNext(){return this.expression[this.current+1]}next(){return this.expression[this.current++]}match(e){return this.current>=this.expression.length||this.expression[this.current]!==e?!1:(this.current++,!0)}parseIdentifier(e){let t=e;for(;this.current<this.expression.length;){let r=this.expression[this.current];if(this.isAlphaNumeric(r))t+=this.next();else if(r==="-"){let s=this.expression[this.current+1];if(s&&this.isAlphaNumeric(s))for(this.current++,t+="-";this.current<this.expression.length&&this.isAlphaNumeric(this.expression[this.current]);)t+=this.next();else break}else break}let n=this.reservedWords[t.toLowerCase()];if(n)return new T(n.type,t);if(this.additionalFunctions&&this.additionalFunctions.has(t))return new T("FUNCTION",t);if(t.length>0)return new T("IDENTIFIER",t);throw new Error(`Invalid identifier: ${t}`)}parseString(e){let t="";for(;this.current<this.expression.length&&this.expression[this.current]!==e;)t+=this.next();if(this.current>=this.expression.length)throw new Error("Unterminated string literal");return this.next(),new T("STRING",t)}parseNumber(e){let t=e;for(;this.current<this.expression.length&&this.isNumber(this.expression[this.current])&&this.expression[this.current]!==".";)t+=this.next();if(this.current<this.expression.length&&this.expression[this.current]===".")for(t+=this.next();this.current<this.expression.length&&this.isNumber(this.expression[this.current]);)t+=this.next();if(t.length>0)return new T("NUMBER",t);throw new Error(`Invalid number: ${t}`)}parseEQName(){this.next();let e="";for(;this.current<this.expression.length&&this.expression[this.current]!=="}";)e+=this.next();if(this.current>=this.expression.length)throw new Error("Unterminated EQName: missing '}' after URI");this.next();let t="";if(this.current<this.expression.length&&this.isAlpha(this.expression[this.current]))for(;this.current<this.expression.length;){let r=this.expression[this.current];if(this.isAlphaNumeric(r)||r==="-"||r==="_")t+=this.next();else break}if(t.length===0)throw new Error(`EQName missing local name after '}': Q{${e}}`);let n=`Q{${e}}${t}`;return new T("EQNAME",n)}scanToken(){let e=this.next();if(this.isWhitespace(e))return null;switch(e){case"@":return new T("AT",e);case"$":return new T("DOLLAR",e);case"|":return this.match("|")?new T("CONCAT","||"):new T("PIPE",e);case"#":return new T("HASH",e);case"{":return new T("OPEN_CURLY_BRACKET",e);case"}":return new T("CLOSE_CURLY_BRACKET",e);case"[":return new T("OPEN_SQUARE_BRACKET",e);case"]":return new T("CLOSE_SQUARE_BRACKET",e);case"(":return new T("OPEN_PAREN",e);case")":return new T("CLOSE_PAREN",e);case"+":return new T("PLUS",e);case"-":return new T("MINUS",e);case"*":return new T("ASTERISK",e);case",":return new T("COMMA",e);case"?":return new T("QUESTION",e);case"Q":return this.peek()==="{"?this.parseEQName():this.parseIdentifier(e);case".":return this.match(".")?new T("DOT_DOT",".."):this.peek()&&this.isNumber(this.peek())?this.parseNumber(e):new T("DOT",e);case"/":return this.match("/")?new T("DOUBLE_SLASH","//"):new T("SLASH",e);case":":return this.match(":")?new T("COLON_COLON","::"):this.match("=")?new T("ASSIGNMENT",":="):new T("COLON",e);case"=":return this.match(">")?new T("FAT_ARROW","=>"):new T("EQUALS",e);case"!":return this.match("=")?new T("NOT_EQUALS","!="):new T("SIMPLE_MAP",e);case"<":return this.match("=")?new T("LESS_THAN_OR_EQUAL","<="):new T("LESS_THAN",e);case">":return this.match("=")?new T("GREATER_THAN_OR_EQUAL",">="):new T("GREATER_THAN",e);case"'":return this.parseString("'");case'"':return this.parseString('"');default:if(this.isNumber(e))return this.parseNumber(e);if(this.isAlpha(e))return this.parseIdentifier(e);throw new Error(`Unexpected character: ${e}`)}}scan(e){for(this.expression=e,this.tokens=[],this.current=0;this.current<this.expression.length;){let t=this.scanToken();t!==null&&this.tokens.push(t)}return this.tokens}};It();ot();Ve();var la=(i,e)=>(new Set(i).has(e)||i.push(e),Array.from(new Set(i)));function Bs(i){var r,s,o,a,c,u,l,h,p,d;let e=i!=null&&i.reservedFunctionNames?new Set(i.reservedFunctionNames):new Set(Dr),t=(r=i==null?void 0:i.defaultCollation)!=null?r:kn,n=la((s=i==null?void 0:i.collations)!=null?s:[kn],t);return{schemaTypes:(o=i==null?void 0:i.schemaTypes)!=null?o:{},elementDeclarations:(a=i==null?void 0:i.elementDeclarations)!=null?a:{},attributeDeclarations:(c=i==null?void 0:i.attributeDeclarations)!=null?c:{},defaultElementNamespace:(u=i==null?void 0:i.defaultElementNamespace)!=null?u:"",defaultTypeNamespace:(l=i==null?void 0:i.defaultTypeNamespace)!=null?l:X,functionSignatures:(h=i==null?void 0:i.functionSignatures)!=null?h:{},defaultFunctionNamespace:(p=i==null?void 0:i.defaultFunctionNamespace)!=null?p:Mr,reservedFunctionNames:e,collations:n,defaultCollation:t,variableTypes:(d=i==null?void 0:i.variableTypes)!=null?d:{},contextItemType:i==null?void 0:i.contextItemType}}function js(i){let e=[],t=new Set;for(let n of i.functions)t.has(n.name)&&e.push(`Duplicate function name: ${n.name}`),t.add(n.name),n.minArgs<0&&e.push(`Function ${n.name}: minArgs cannot be negative`),n.maxArgs!==void 0&&n.maxArgs<n.minArgs&&e.push(`Function ${n.name}: maxArgs cannot be less than minArgs`),typeof n.implementation!="function"&&e.push(`Function ${n.name}: implementation must be a function`);return e}ye();var zs={XPWD0001:{code:"XPWD0001",severity:"deprecation",category:"deprecation",title:"Namespace axis deprecated",description:"The namespace axis (namespace::) is deprecated in XPath 2.0 and may not be supported in all implementations. Consider using fn:namespace-uri-for-prefix() or fn:in-scope-prefixes() instead.",migration:"Replace namespace::* with fn:in-scope-prefixes(.) to get namespace prefixes, or use fn:namespace-uri-for-prefix($prefix, .) to get namespace URIs.",specReference:"XPath 2.0 Section 3.2.1.1"},XPWD0002:{code:"XPWD0002",severity:"deprecation",category:"deprecation",title:"Implicit string conversion",description:"Implicit conversion of node-sets to strings using the first node is deprecated. In XPath 2.0, this requires explicit conversion using fn:string() or data().",migration:"Use fn:string($nodeset) or fn:data($nodeset) for explicit conversion.",specReference:"XPath 2.0 Appendix I.2"},XPWC0001:{code:"XPWC0001",severity:"warning",category:"compatibility",title:"XPath 1.0 compatibility mode active",description:"XPath 1.0 compatibility mode is enabled. Some XPath 2.0 type safety features are relaxed to maintain backward compatibility.",migration:"Consider migrating to XPath 2.0 semantics for improved type safety.",specReference:"XPath 2.0 Section 3.6"},XPWC0002:{code:"XPWC0002",severity:"warning",category:"compatibility",title:"String comparison in XPath 2.0",description:"String comparisons in XPath 2.0 are performed using Unicode codepoint collation by default, which may produce different results than XPath 1.0.",migration:"Use explicit collation specification if locale-specific comparison is needed.",specReference:"XPath 2.0 Appendix I.4"},XPWC0003:{code:"XPWC0003",severity:"warning",category:"compatibility",title:"Empty sequence handling differs",description:"In XPath 2.0, operations on empty sequences may return empty sequences instead of NaN or false as in XPath 1.0.",migration:"Use explicit empty sequence handling with fn:empty() or default values.",specReference:"XPath 2.0 Appendix I.3"},XPWT0001:{code:"XPWT0001",severity:"warning",category:"type-coercion",title:"Implicit numeric conversion",description:"Value is being implicitly converted to a number. In XPath 2.0, this requires explicit conversion in strict mode.",migration:"Use xs:decimal(), xs:double(), or number() for explicit conversion.",specReference:"XPath 2.0 Appendix I.2"},XPWT0002:{code:"XPWT0002",severity:"warning",category:"type-coercion",title:"Implicit boolean conversion",description:"Value is being implicitly converted to boolean using XPath 1.0 rules. In XPath 2.0, this is called Effective Boolean Value (EBV).",migration:"Use fn:boolean() for explicit conversion.",specReference:"XPath 2.0 Section 2.4.3"},XPWT0003:{code:"XPWT0003",severity:"info",category:"type-coercion",title:"Numeric type promotion",description:"Numeric value is being promoted in the type hierarchy (integer \u2192 decimal \u2192 float \u2192 double). This may result in precision loss.",migration:"Consider using explicit casting if precision is important.",specReference:"XPath 2.0 Appendix B.1"},XPWB0001:{code:"XPWB0001",severity:"warning",category:"behavior-change",title:"Arithmetic with empty sequence",description:"In XPath 2.0, arithmetic operations with empty sequences return empty sequences, not NaN as in XPath 1.0.",migration:"Handle empty sequences explicitly before arithmetic operations.",specReference:"XPath 2.0 Appendix I.3"},XPWB0002:{code:"XPWB0002",severity:"warning",category:"behavior-change",title:"Comparison with empty sequence",description:"In XPath 2.0, value comparisons (eq, ne, etc.) with empty sequences return empty sequences, not false.",migration:"Use fn:empty() or fn:exists() to check for empty sequences before comparison.",specReference:"XPath 2.0 Appendix I.3"},XPWB0003:{code:"XPWB0003",severity:"warning",category:"behavior-change",title:"Multiple values in singleton context",description:"A sequence with multiple items is being used where a single item is expected. In XPath 2.0, this may raise a type error.",migration:"Use predicates or fn:head() to select a single item.",specReference:"XPath 2.0 Section 2.4.4"},XPWB0004:{code:"XPWB0004",severity:"warning",category:"behavior-change",title:"String value of nodes",description:"The string value of typed nodes in XPath 2.0 may differ from XPath 1.0 when schema type information is present.",migration:"Use fn:string() for consistent string conversion.",specReference:"XPath 2.0 Appendix I.1"},XPWP0001:{code:"XPWP0001",severity:"info",category:"performance",title:"Descendant axis on large document",description:"Using descendant or descendant-or-self axis on large documents may impact performance. Consider using more specific path expressions.",migration:"Use more specific paths or indexes if available."},XPWP0002:{code:"XPWP0002",severity:"info",category:"performance",title:"General comparison on sequences",description:"General comparisons (=, !=, etc.) on sequences perform existential quantification, which may be slower than value comparisons on single items.",migration:"Use value comparisons (eq, ne, etc.) when comparing single values.",specReference:"XPath 2.0 Section 3.5.2"}},pa={enabled:!0,minSeverity:"info",suppressCategories:[],suppressCodes:[],handler:()=>{},logToConsole:!1,maxWarnings:100,emitOnce:!0},Ys={info:0,warning:1,deprecation:2},rr=class{constructor(e){this.warnings=[];this.emittedCodes=new Set;this.config=O(O({},pa),e)}emit(e,t,n){if(!this.config.enabled)return;let r=zs[e];if(!r){this.addWarning({code:e,message:`Unknown warning: ${e}`,severity:"warning",category:"compatibility",context:t,expression:n});return}if(this.config.suppressCodes.includes(e)||this.config.suppressCategories.includes(r.category)||Ys[r.severity]<Ys[this.config.minSeverity]||this.config.emitOnce&&this.emittedCodes.has(e)||this.warnings.length>=this.config.maxWarnings)return;let s={code:r.code,message:r.description,severity:r.severity,category:r.category,context:t,expression:n};this.addWarning(s),this.emittedCodes.add(e)}emitCustom(e){this.config.enabled&&(this.warnings.length>=this.config.maxWarnings||this.config.emitOnce&&this.emittedCodes.has(e.code)||(this.addWarning(e),this.emittedCodes.add(e.code)))}addWarning(e){if(this.warnings.push(e),this.config.handler&&this.config.handler(e),this.config.logToConsole){let t=e.severity==="deprecation"?"[DEPRECATED]":e.severity==="warning"?"[WARNING]":"[INFO]";console.warn(`${t} ${e.code}: ${e.message}`)}}getWarnings(){return this.warnings}getWarningsBySeverity(e){return this.warnings.filter(t=>t.severity===e)}getWarningsByCategory(e){return this.warnings.filter(t=>t.category===e)}hasWarnings(){return this.warnings.length>0}count(){return this.warnings.length}clear(){this.warnings=[],this.emittedCodes.clear()}formatReport(){if(this.warnings.length===0)return"No warnings.";let e=[];e.push(`XPath Warnings Report (${this.warnings.length} warning${this.warnings.length===1?"":"s"}):`),e.push("");let t={};for(let n of this.warnings){let r=n.category;t[r]||(t[r]=[]),t[r].push(n)}for(let n of Object.keys(t)){let r=t[n];e.push(`## ${ha(n)}`);for(let s of r){let o=zs[s.code];e.push(` ${s.code}: ${(o==null?void 0:o.title)||s.message}`),s.context&&e.push(` Context: ${s.context}`),o!=null&&o.migration&&e.push(` Migration: ${o.migration}`)}e.push("")}return e.join(`
|
|
4
|
-
`)}};function ha(i){switch(i){case"deprecation":return"Deprecated Features";case"compatibility":return"Compatibility Issues";case"performance":return"Performance Considerations";case"type-coercion":return"Type Coercion";case"behavior-change":return"Behavior Changes";default:return i}}function ir(i){return new rr(i)}var vt=class{constructor(e){this.tokens=[];this.current=0;var t,n,r,s;if(this.options={strict:(t=e==null?void 0:e.strict)!=null?t:!0,version:e==null?void 0:e.version,cache:e==null?void 0:e.cache,extensions:e==null?void 0:e.extensions,enableNamespaceAxis:(n=e==null?void 0:e.enableNamespaceAxis)!=null?n:!1,staticContext:(r=e==null?void 0:e.staticContext)!=null?r:Bs(),xpath10CompatibilityMode:(s=e==null?void 0:e.xpath10CompatibilityMode)!=null?s:!1,warningConfig:e==null?void 0:e.warningConfig,warningCollector:e==null?void 0:e.warningCollector},this.staticContext=this.options.staticContext,this.options.warningCollector?this.warningCollector=this.options.warningCollector:this.options.warningConfig?this.warningCollector=ir(this.options.warningConfig):this.warningCollector=ir({logToConsole:!1}),this.options.extensions){let o=js(this.options.extensions);if(o.length>0)throw new Error(`Invalid XSLT extensions: ${o.join(", ")}`);this.extensions=this.options.extensions}}getWarningCollector(){return this.warningCollector}ensureVersionSupport(e,t){var r;let n=(r=this.options.version)!=null?r:t;if(this.options.version=n,this.options.strict!==!1&&!e.includes(n))throw new Error(`XPath version ${n} is not supported by ${this.constructor.name}. Supported versions: ${e.join(", ")}`)}getOptions(){return this.options}parse(e){if(this.tokens=e,this.current=0,this.options.xpath10CompatibilityMode&&this.options.version&&this.options.version!=="1.0"&&this.warningCollector.emit("XPWC0001",`XPath ${this.options.version} with compatibility mode`,e.map(n=>n.lexeme).join("")),e.length===0)throw de("Empty expression");let t=this.parseExpr();if(!this.isAtEnd())throw de(`Unexpected token: ${this.peek().lexeme}`);return t}peek(){return this.tokens[this.current]}peekNext(){return this.tokens[this.current+1]}previous(){return this.tokens[this.current-1]}isAtEnd(){return this.current>=this.tokens.length}advance(){return this.isAtEnd()||this.current++,this.previous()}check(e){return this.isAtEnd()?!1:this.peek().type===e}checkLexeme(e){return this.isAtEnd()?!1:this.peek().lexeme===e}match(...e){for(let t of e)if(this.check(t))return this.advance(),!0;return!1}consume(e,t){var n,r;if(this.check(e))return this.advance();throw de(`${t}. Got: ${(r=(n=this.peek())==null?void 0:n.lexeme)!=null?r:"EOF"}`)}parseExpr(){return this.parseOrExpr()}parseOrExpr(){let e=this.parseAndExpr();for(;this.check("OPERATOR")&&this.peek().lexeme==="or";){this.advance();let t=this.parseAndExpr();e=new st(e,t,"or")}return e}parseAndExpr(){let e=this.parseEqualityExpr();for(;this.check("OPERATOR")&&this.peek().lexeme==="and";){this.advance();let t=this.parseEqualityExpr();e=new st(e,t,"and")}return e}parseEqualityExpr(){let e=this.parseRelationalExpr();for(;this.match("EQUALS","NOT_EQUALS");){let t=this.previous().lexeme,n=this.parseRelationalExpr();e=new it(e,n,t)}return e}parseRelationalExpr(){let e=this.parseAdditiveExpr();for(;this.match("LESS_THAN","GREATER_THAN","LESS_THAN_OR_EQUAL","GREATER_THAN_OR_EQUAL");){let t=this.previous().lexeme,n=this.parseAdditiveExpr();e=new it(e,n,t)}return e}parseAdditiveExpr(){let e=this.parseMultiplicativeExpr();for(;this.match("PLUS","MINUS");){let t=this.previous().lexeme,n=this.parseMultiplicativeExpr();e=new qe(e,n,t)}return e}parseMultiplicativeExpr(){let e=this.parseUnaryExpr();for(;;)if(this.match("ASTERISK")){let t=this.parseUnaryExpr();e=new qe(e,t,"*")}else if(this.check("OPERATOR")&&(this.peek().lexeme==="div"||this.peek().lexeme==="mod")){let t=this.advance().lexeme,n=this.parseUnaryExpr();e=new qe(e,n,t)}else break;return e}parseUnaryExpr(){if(this.match("MINUS")){let e=this.parseUnaryExpr();return new rn("-",e)}return this.parseUnionExpr()}parseUnionExpr(){let e=this.parsePathExpr();for(;this.match("PIPE");){let t=this.parsePathExpr();e=new ve(e,t)}return e}parsePathExpr(){if(this.check("SLASH")||this.check("DOUBLE_SLASH"))return this.parseLocationPath();if(this.isStepStart())return this.parseLocationPath();let e=this.parseFilterExpr();if(this.match("SLASH","DOUBLE_SLASH")){let t=this.previous().type==="DOUBLE_SLASH",n=this.parseRelativeLocationPath();t&&n.unshift(new oe("descendant-or-self",{type:"node-type",nodeType:"node"}));let r=new ge(n,!1);return new nn(e,r)}return e}isStepStart(){if(this.isAtEnd())return!1;let e=this.peek(),t=this.peekNext(),n=["element","attribute","schema-element","schema-attribute","document-node","node","text","comment","processing-instruction"];if((e.type==="IDENTIFIER"||e.type==="NODE_TYPE")&&(t==null?void 0:t.type)==="OPEN_PAREN"&&n.includes(e.lexeme.toLowerCase()))return!0;if(this.isFunctionCallStart())return!1;if(e.type==="DOT"||e.type==="DOT_DOT"||e.type==="AT"||e.type==="LOCATION"||e.type==="NODE_TYPE"||e.type==="ASTERISK")return!0;if(e.type==="IDENTIFIER"||e.type==="OPERATOR"||e.type==="FUNCTION"){let r=this.peekNext();return!r||r.type!=="OPEN_PAREN"}return!1}parseLocationPath(){let e=!1,t=[];return this.match("SLASH")?(e=!0,!this.isAtEnd()&&this.isStepStart()&&t.push(...this.parseRelativeLocationPath())):this.match("DOUBLE_SLASH")?(e=!0,t.push(new oe("descendant-or-self",{type:"node-type",nodeType:"node"})),t.push(...this.parseRelativeLocationPath())):t.push(...this.parseRelativeLocationPath()),new ge(t,e)}parseRelativeLocationPath(){let e=[];for(e.push(this.parseStep());this.match("SLASH","DOUBLE_SLASH");)this.previous().type==="DOUBLE_SLASH"&&e.push(new oe("descendant-or-self",{type:"node-type",nodeType:"node"})),e.push(this.parseStep());return e}parseStep(){if(this.match("DOT"))return new oe("self",{type:"node-type",nodeType:"node"});if(this.match("DOT_DOT"))return new oe("parent",{type:"node-type",nodeType:"node"});let e="child";if(this.match("AT"))e="attribute";else if(this.check("LOCATION")){let r=this.peekNext();r&&r.type==="COLON_COLON"&&(e=this.advance().lexeme,this.advance())}if(e==="namespace"){if(!this.options.enableNamespaceAxis)throw Fr("namespace");this.warnNamespaceAxis()}let t=this.parseNodeTest(),n=this.parsePredicates();return new oe(e,t,n)}parseNodeTest(){var e,t;if(this.match("ASTERISK"))return{type:"wildcard"};if(this.check("NODE_TYPE")||this.check("IDENTIFIER")||this.check("LOCATION")||this.check("FUNCTION")||this.check("OPERATOR")){let n=this.peekNext();if(n&&n.type==="OPEN_PAREN"){let r=this.advance().lexeme.toLowerCase();if(this.advance(),r==="element")return this.parseElementTest();if(r==="attribute")return this.parseAttributeTest();if(r==="document-node")return this.parseDocumentNodeTest();if(r==="schema-element"){let s=this.parseNameOrWildcard();return this.consume("CLOSE_PAREN","Expected ')' after schema-element name"),{type:"schema-element",name:s}}if(r==="schema-attribute"){let s=this.parseNameOrWildcard();return this.consume("CLOSE_PAREN","Expected ')' after schema-attribute name"),{type:"schema-attribute",name:s}}if(r==="node"||r==="text"||r==="comment"||r==="processing-instruction"){if(r==="processing-instruction"&&this.check("STRING")){let s=this.advance().lexeme;return this.consume("CLOSE_PAREN","Expected ')' after processing-instruction target"),{type:"processing-instruction",target:s}}return this.consume("CLOSE_PAREN","Expected ')' after node type"),{type:"node-type",nodeType:r}}}}if(this.check("IDENTIFIER")||this.check("LOCATION")||this.check("FUNCTION")||this.check("NODE_TYPE")||this.check("OPERATOR")){let n=this.advance().lexeme;if(this.match("COLON")){if(this.match("ASTERISK"))return{type:"wildcard",name:`${n}:*`};if(this.check("IDENTIFIER")||this.check("LOCATION")||this.check("FUNCTION")||this.check("NODE_TYPE")||this.check("OPERATOR")){let r=this.advance().lexeme;return{type:"name",name:`${n}:${r}`}}throw new Error("Expected local name after namespace prefix")}return{type:"name",name:n}}throw de(`Expected node test, got: ${(t=(e=this.peek())==null?void 0:e.lexeme)!=null?t:"EOF"}`)}parsePredicates(){let e=[];for(;this.match("OPEN_SQUARE_BRACKET");){let t=this.parseExpr();this.consume("CLOSE_SQUARE_BRACKET","Expected ']' after predicate"),e.push(new xn(t))}return e}parseFilterExpr(){let e=this.parsePrimaryExpr(),t=[];for(;this.check("OPEN_SQUARE_BRACKET");)t.push(...this.parsePredicates());return t.length>0?new tn(e,t):e}parsePrimaryExpr(){var e,t;if(this.match("DOLLAR")){let n=this.consume("IDENTIFIER","Expected variable name after $").lexeme;return new rt(n)}if(this.match("OPEN_PAREN")){if(this.check("CLOSE_PAREN"))return this.advance(),new gn;let n=this.parseExpr();return this.consume("CLOSE_PAREN","Expected ')' after expression"),n}if(this.check("STRING")){let n=this.advance().lexeme;return new Zt(n)}if(this.check("NUMBER")){let n=parseFloat(this.advance().lexeme);return new Jt(n)}if(this.isFunctionCallStart())return this.parseFunctionCall();throw de(`Unexpected token in primary expression: ${(t=(e=this.peek())==null?void 0:e.lexeme)!=null?t:"EOF"}`)}parseFunctionCall(){let e=this.advance().lexeme;if(e.startsWith("Q{"))this.consume("OPEN_PAREN","Expected '(' after function name");else if(this.match("COLON")){let n=this.advance();if(!this.isNcNameToken(n.type))throw de("Expected local name after namespace prefix");e=`${e}:${n.lexeme}`}e.startsWith("Q{")||this.consume("OPEN_PAREN","Expected '(' after function name");let t=[];if(!this.check("CLOSE_PAREN"))do t.push(this.parseExpr());while(this.match("COMMA"));return this.consume("CLOSE_PAREN","Expected ')' after function arguments"),new Ge(e,t)}isFunctionCallStart(){var s,o,a;if(this.isAtEnd())return!1;let e=this.peek(),t=this.peekNext(),r=["element","attribute","schema-element","schema-attribute","document-node","node","text","comment","processing-instruction"].includes((a=(o=(s=e.lexeme)==null?void 0:s.toLowerCase)==null?void 0:o.call(s))!=null?a:"");if(e.type==="EQNAME"&&(t==null?void 0:t.type)==="OPEN_PAREN")return!0;if(this.isFunctionNameToken(e.type)&&(t==null?void 0:t.type)==="OPEN_PAREN")return!r;if(this.isFunctionNameToken(e.type)&&(t==null?void 0:t.type)==="COLON"){let c=this.tokens[this.current+2],u=this.tokens[this.current+3];if(c&&this.isFunctionNameToken(c.type)&&(u==null?void 0:u.type)==="OPEN_PAREN")return!0}return!1}warnNamespaceAxis(){this.warningCollector.emit("XPWD0001","namespace:: axis",this.tokens.map(e=>e.lexeme).join(""))}isFunctionNameToken(e){return e==="IDENTIFIER"||e==="FUNCTION"||e==="OPERATOR"||e==="LOCATION"||e==="EQNAME"}isNcNameToken(e){return e==="IDENTIFIER"||e==="FUNCTION"||e==="OPERATOR"||e==="LOCATION"||e==="NODE_TYPE"}parseNameOrWildcard(){let e="";if(this.match("ASTERISK"))return"*";if(this.check("EQNAME"))return this.advance().lexeme;if((this.check("IDENTIFIER")||this.check("NODE_TYPE")||this.check("FUNCTION")||this.check("LOCATION")||this.check("OPERATOR"))&&(e=this.advance().lexeme,this.match("COLON"))){if(this.match("ASTERISK"))return`${e}:*`;(this.check("IDENTIFIER")||this.check("NODE_TYPE")||this.check("FUNCTION")||this.check("LOCATION")||this.check("OPERATOR"))&&(e+=":"+this.advance().lexeme)}return e}parseElementTest(){if(this.check("CLOSE_PAREN"))return this.advance(),{type:"element"};let e=this.parseNameOrWildcard(),t;return this.match("COMMA")&&(this.check("IDENTIFIER")||this.check("NODE_TYPE")||this.check("FUNCTION")||this.check("LOCATION"))&&(t=this.parseNameOrWildcard()),this.consume("CLOSE_PAREN","Expected ')' after element test"),{type:"element",name:e==="*"?void 0:e,elementType:t,isWildcardName:e==="*"}}parseAttributeTest(){if(this.check("CLOSE_PAREN"))return this.advance(),{type:"attribute"};let e=this.parseNameOrWildcard(),t;return this.match("COMMA")&&(this.check("IDENTIFIER")||this.check("NODE_TYPE")||this.check("FUNCTION")||this.check("LOCATION"))&&(t=this.parseNameOrWildcard()),this.consume("CLOSE_PAREN","Expected ')' after attribute test"),{type:"attribute",name:e==="*"?void 0:e,elementType:t,isWildcardName:e==="*"}}parseDocumentNodeTest(){if(this.check("CLOSE_PAREN"))return this.advance(),{type:"document-node"};let e=this.parseNodeTest();return this.consume("CLOSE_PAREN","Expected ')' after document-node test"),{type:"document-node",elementTest:e}}};var He=class extends vt{constructor(e){super(e),this.ensureVersionSupport(["1.0"],"1.0")}};It();xe();It();Hn();Kn();Qn();Zn();Jn();er();tr();xe();ye();Ee();Ne();nr();It();function bn(i,e){return O({node:i,position:1,size:1},e)}Rt();var J=class{constructor(e){this.value=e,this.type="string"}stringValue(){return String(this.value)}booleanValue(){return this.value.length>0}numberValue(){return this.value-0}nodeSetValue(){throw this}};var ue=class{constructor(e){this.value=e,this.type="number"}stringValue(){return`${this.value}`}booleanValue(){return!!this.value}numberValue(){return this.value-0}nodeSetValue(){throw this}};var C=class{constructor(e){this.value=e,this.type="boolean"}stringValue(){return`${this.value}`}booleanValue(){return this.value}numberValue(){return this.value?1:0}nodeSetValue(){throw this}};$e();var K=class{constructor(e){this.value=e,this.type="node-set"}stringValue(){return this.value.length===0?"":Z(this.value[0])}booleanValue(){return this.value.length>0}numberValue(){return parseInt(this.stringValue())-0}nodeSetValue(){return this.value}};var Ke=class{constructor(e,t){this.xpathExpression=e,this.nodeConverter=t,e instanceof ge&&(this.absolute=e.absolute,this.steps=e.steps.map((n,r)=>({axis:n.axis,nodeTest:n.nodeTest,predicates:n.predicates,hasPositionalPredicate:!1,predicate:n.predicates||[],evaluate:s=>{let o=this.nodeConverter.exprContextToXPathContext(s),a=n.evaluate(o);return this.nodeConverter.wrapResult(a,s)}})))}evaluate(e){let t=this.nodeConverter.exprContextToXPathContext(e),n=this.xpathExpression.evaluate(t);return this.nodeConverter.wrapResult(n,e)}},Pe=class extends Ke{constructor(e,t){super(e,t),this.absolute=e.absolute,this.steps=e.steps.map(n=>({axis:n.axis,nodeTest:n.nodeTest,predicates:n.predicates||[],predicate:n.predicates||[],hasPositionalPredicate:this.hasPositionalPredicate(n.predicates||[])}))}hasPositionalPredicate(e){return!1}appendStep(e){this.steps.push(e)}prependStep(e){this.steps.unshift(e)}},_e=class extends Ke{constructor(e,t,n,r){super(e,t),this.expr1=n,this.expr2=r}},sr=class{exprContextToXPathContext(e){let t=e.nodeList[e.position],n=this.adaptXNode(t),r=e.nodeList.map(s=>this.adaptXNode(s));return bn(n,{position:e.position+1,size:e.nodeList.length,nodeList:r,variables:this.convertVariables(e),functions:this.createCustomFunctions(e),namespaces:e.knownNamespaces,xsltVersion:e.xsltVersion})}adaptXNode(e){if(!e)return null;let t=e;return"textContent"in t||Object.defineProperty(t,"textContent",{get(){return this._getTextContent()},enumerable:!0,configurable:!0}),"_getTextContent"in t||(t._getTextContent=function(){if(this.nodeType===3||this.nodeType===2)return this.nodeValue||"";if(!this.childNodes)return"";let n="";for(let r of this.childNodes)r.nodeType===3?n+=r.nodeValue||"":r.nodeType===1&&(n+=this._getTextContent.call(r));return n}),"attributes"in t||Object.defineProperty(t,"attributes",{get(){return this.childNodes?this.childNodes.filter(n=>n.nodeType===2):[]},enumerable:!0,configurable:!0}),"getAttribute"in t||(t.getAttribute=function(n){return this.getAttributeValue?this.getAttributeValue(n):null}),t}xPathNodeToXNode(e){return e?e instanceof M?e:this.convertXPathNodeToXNode(e):null}getTextContent(e){if(e.nodeType===3||e.nodeType===2)return e.nodeValue||"";if(!e.childNodes)return"";let t="";for(let n of e.childNodes)n.nodeType===3?t+=n.nodeValue||"":n.nodeType===1&&(t+=this.getTextContent(n));return t}convertVariables(e){let t={};for(let[n,r]of Object.entries(e.variables||{}))if(r&&typeof r=="object"&&"stringValue"in r){let s=r;s.type==="node-set"?t[n]=r.nodeSetValue().map(o=>this.adaptXNode(o)):s.type==="string"?t[n]=r.stringValue():s.type==="number"?t[n]=r.numberValue():s.type==="boolean"?t[n]=r.booleanValue():t[n]=r.stringValue()}else t[n]=r;return t}createCustomFunctions(e){let t={};return t.key=(n,r,s)=>{var a;let o=(a=e.keys)==null?void 0:a[r];return o&&o[s]?o[s].nodeSetValue().map(u=>this.adaptXNode(u)):[]},t.current=n=>{let r=e.nodeList[e.position];return[this.adaptXNode(r)]},t["format-number"]=(n,r,s,o)=>{let a=e.decimalFormatSettings;return r.toLocaleString()},t["xml-to-json"]=(n,r)=>{if(e.xsltVersion!=="3.0")throw new Error('xml-to-json() is only supported in XSLT 3.0. Use version="3.0" in your stylesheet.');let s=Array.isArray(r)?r[0]:r;return s?this.xmlToJson(s):'""'},t["json-to-xml"]=(n,r)=>{if(e.xsltVersion!=="3.0")throw new Error('json-to-xml() is only supported in XSLT 3.0. Use version="3.0" in your stylesheet.');let s=Array.isArray(r)?r[0]:r;if(!s)return[];let a=new Te().convert(String(s));if(!a)return null;let c=e.nodeList&&e.nodeList.length>0?e.nodeList[0].ownerDocument:null,u=this.convertXPathNodeToXNode(a,c);return u?[u]:[]},t["system-property"]=(n,r)=>{let s=String(r),o={"xsl:version":e.xsltVersion||"1.0","xsl:vendor":"Design Liquido","xsl:vendor-url":"https://github.com/DesignLiquido/xslt-processor"};return e.systemProperties&&e.systemProperties[s]?e.systemProperties[s]:o[s]||""},t["element-available"]=(n,r)=>{let s=String(r),o=["xsl:apply-imports","xsl:apply-templates","xsl:attribute","xsl:attribute-set","xsl:call-template","xsl:choose","xsl:comment","xsl:copy","xsl:copy-of","xsl:decimal-format","xsl:element","xsl:fallback","xsl:for-each","xsl:if","xsl:import","xsl:include","xsl:key","xsl:message","xsl:namespace-alias","xsl:number","xsl:otherwise","xsl:output","xsl:param","xsl:preserve-space","xsl:processing-instruction","xsl:sort","xsl:strip-space","xsl:stylesheet","xsl:template","xsl:text","xsl:transform","xsl:value-of","xsl:variable","xsl:when","xsl:with-param"],a=s.startsWith("xsl:")?s:`xsl:${s}`;return o.includes(a)||o.includes(s)},t["function-available"]=(n,r)=>{let s=String(r),o=["boolean","ceiling","concat","contains","count","false","floor","id","lang","last","local-name","name","namespace-uri","normalize-space","not","number","position","round","starts-with","string","string-length","substring","substring-after","substring-before","sum","translate","true"],a=["current","document","element-available","format-number","function-available","generate-id","key","system-property","unparsed-entity-uri"],c=["matches","ends-with","xml-to-json","json-to-xml"];return[...o,...a,...c].includes(s)},t.document=(n,r,s)=>{var o;if(e.documentLoader){let a=Array.isArray(r)?((o=r[0])==null?void 0:o.textContent)||String(r[0]||""):String(r||"");if(!a)return e.root?[this.adaptXNode(e.root)]:[];try{let c=e.documentLoader(a);if(c)return[this.adaptXNode(c)]}catch(c){console.warn(`document() failed to load: ${a}`,c)}}return[]},t["unparsed-entity-uri"]=(n,r)=>{let s=String(r);return e.unparsedEntities&&e.unparsedEntities[s]?e.unparsedEntities[s]:""},t}convertXPathNodeToXNode(e,t){if(!e)return null;let{XNode:n}=($e(),Cn(Rr)),{DOM_DOCUMENT_NODE:r,DOM_TEXT_NODE:s,DOM_ELEMENT_NODE:o}=(H(),Cn(lr)),a;if(e.nodeType===r){if(e.childNodes&&e.childNodes.length>0){let c=e.childNodes[0];return a=this.convertXPathNodeToXNode(c,t),a}return null}else if(e.nodeType===s){let c=e.textContent||"";a=new n(s,"#text",c,t)}else if(a=new n(o,e.nodeName||"element","",t),e.namespaceUri&&(a.namespaceUri=e.namespaceUri),e.childNodes&&e.childNodes.length>0){for(let c=0;c<e.childNodes.length;c++){let u=e.childNodes[c],l=this.convertXPathNodeToXNode(u,t);l&&(l.parentNode=a,a.childNodes.push(l))}a.childNodes.length>0&&(a.firstChild=a.childNodes[0],a.lastChild=a.childNodes[a.childNodes.length-1])}return a}xmlToJson(e){if(!e)return'""';let t=Z(e,!0);return JSON.stringify(t)}wrapResult(e,t){if(Array.isArray(e)){let n=e.map(r=>this.xPathNodeToXNode(r)).filter(r=>r!==null);return new K(n)}return typeof e=="string"?new J(e):typeof e=="number"?new ue(e):typeof e=="boolean"?new C(e):new K([])}clearCache(){}},Me=class{constructor(){this.parseCache=new Map;this.lexer=new Le("1.0"),this.parser=new He,this.nodeConverter=new sr}xPathParse(e,t){let n=`${e}:${t||""}`;if(this.parseCache.has(n))return this.parseCache.get(n);let r=this.lexer.scan(e),s=this.parser.parse(r),o=this.wrapExpression(s,t);return this.parseCache.set(n,o),o}xPathEval(e,t){return this.xPathParse(e).evaluate(t)}xPathSort(e,t){if(t.length===0)return;let n=[];for(let s=0;s<e.contextSize();++s){let o=e.nodeList[s],a={node:o,key:[]},c=e.clone([o],0);for(let u of t){let l=u.expr.evaluate(c),h;u.type==="text"?h=l.stringValue():u.type==="number"&&(h=l.numberValue()),a.key.push({value:h,order:u.order})}a.key.push({value:s,order:"ascending"}),n.push(a)}n.sort(this.xPathSortByKey);let r=[];for(let s=0;s<n.length;++s){let o=n[s].node;o.siblingPosition=s,r.push(o)}e.nodeList=r,e.setNode(0)}xPathSortByKey(e,t){for(let n=0;n<e.key.length;++n){let r=e.key[n].order==="descending"?-1:1;if(e.key[n].value>t.key[n].value)return 1*r;if(e.key[n].value<t.key[n].value)return-1*r}return 0}wrapExpression(e,t){if(e instanceof ge)return t&&e.steps.length>0&&!e.absolute&&(e.steps[0].axis=t),new Pe(e,this.nodeConverter);if(e instanceof ve){let n=this.wrapExpression(e.left,t),r=this.wrapExpression(e.right,t);return new _e(e,this.nodeConverter,n,r)}return new Ke(e,this.nodeConverter)}clearCache(){this.parseCache.clear(),this.nodeConverter.clearCache()}};H();var Gs={label:"[number]",prec:35,re:new RegExp("^\\d+(\\.\\d*)?"),key:void 0};var De=class i{constructor(e,t="1.0",n,r,s,o,a,c,u,l,h){this.nodeList=e,this.xsltVersion=t,this.position=n||0,this.variables=s||{},this.keys=(a==null?void 0:a.keys)||{},this.knownNamespaces=o||{},this.parent=a||null,this.caseInsensitive=c||!1,this.ignoreAttributesWithoutValue=u||!1,this.returnOnFirstMatch=l||!1,this.ignoreNonElementNodesForNTA=h||!1,this.inApplyTemplates=!1,this.baseTemplateMatched=!1,this.decimalFormatSettings=r||{decimalSeparator:".",groupingSeparator:",",infinity:"Infinity",minusSign:"-",naN:"NaN",percent:"%",perMille:"\u2030",zeroDigit:"0",digit:"#",patternSeparator:";"},a?this.root=a.root:this.nodeList[this.position].nodeType==9?this.root=this.nodeList[this.position]:this.root=this.nodeList[this.position].ownerDocument}clone(e,t){return new i(e||this.nodeList,this.xsltVersion,typeof t!="undefined"?t:this.position,this.decimalFormatSettings,this.variables,this.knownNamespaces,this,this.caseInsensitive,this.ignoreAttributesWithoutValue,this.returnOnFirstMatch,this.ignoreNonElementNodesForNTA)}setVariable(e,t){if(t instanceof J||t instanceof C||t instanceof ue||t instanceof K){this.variables[e]=t;return}t==="true"?this.variables[e]=new C(!0):t==="false"?this.variables[e]=new C(!1):Gs.re.test(String(t))?this.variables[e]=new ue(t):this.variables[e]=new J(t)}getVariable(e){return typeof this.variables[e]!="undefined"?this.variables[e]:this.parent?this.parent.getVariable(e):null}setNode(e){this.position=e}contextSize(){return this.nodeList.length}isCaseInsensitive(){return this.caseInsensitive}setCaseInsensitive(e){return this.caseInsensitive=e}isIgnoreAttributesWithoutValue(){return this.ignoreAttributesWithoutValue}setIgnoreAttributesWithoutValue(e){return this.ignoreAttributesWithoutValue=e}isReturnOnFirstMatch(){return this.returnOnFirstMatch}setReturnOnFirstMatch(e){return this.returnOnFirstMatch=e}isIgnoreNonElementNodesForNTA(){return this.ignoreNonElementNodesForNTA}setIgnoreNonElementNodesForNTA(e){return this.ignoreNonElementNodesForNTA=e}};var _t=class{expressionMatch(e,t){if(e instanceof Pe)return this.locationExpressionMatch(e,t);if(e instanceof _e)return this.unionExpressionMatch(e,t);try{return e.evaluate(t).nodeSetValue()}catch(n){return[]}}locationExpressionMatch(e,t){if(!e.steps||e.steps.length<=0){if(e.absolute){let n=t.nodeList[t.position];return n.nodeName==="#document"?[n]:[]}return[t.nodeList[t.position]]}return e.absolute?e.steps[0].axis==="self"?this.absoluteXsltMatchByDocumentNode(e,t):this.absoluteXsltMatch(e,t):this.relativeXsltMatch(e,t)}unionExpressionMatch(e,t){return this.expressionMatch(e.expr1,t).concat(this.expressionMatch(e.expr2,t))}absoluteXsltMatchByDocumentNode(e,t){let n=t.clone([t.root],0),r=e.evaluate(n).nodeSetValue(),s=[];for(let o of r)o.id===t.nodeList[t.position].id&&s.push(o);return s}absoluteXsltMatch(e,t){var c;let n=t.root.childNodes.find(u=>u.nodeName!=="#dtd-section");if(!n)return[];let r=t.clone([n],0),s=e.evaluate(r).nodeSetValue(),o=[],a;t.nodeList.length===1&&t.nodeList[0].nodeName==="#document"?a=[t.nodeList[0].childNodes.find(u=>u.nodeName!=="#dtd-section")]:a=t.nodeList;for(let u of s)u.id===((c=a[t.position])==null?void 0:c.id)&&o.push(u);return o}relativeXsltMatch(e,t){let n=t.clone(),r=e.evaluate(n).nodeSetValue();return r.length===1&&r[0].nodeName==="#document"?[r[0].childNodes[0]]:r}};var Mt=class{constructor(){this.value=new C(!0)}evaluate(){return this.value}};H();var Dt=class{evaluate(e){return new C(e.nodeList[e.position].nodeType==8)}};H();var Ft=class{evaluate(e){let t=e.nodeList[e.position];return new C(t.nodeType==1||t.nodeType==2)}};var kt=class{constructor(e){if(this.name=e,e.indexOf(":")>0){let t=e.split(":");this.namespacePrefix=t[0],this.name=t[1]}this.re=new RegExp(`^${e}$`,"i")}evaluate(e){let t=e.nodeList[e.position];return this.namespacePrefix!==void 0?e.knownNamespaces[this.namespacePrefix]!==t.namespaceUri?new C(!1):e.caseInsensitive?t.localName.length!==this.name.length?new C(!1):new C(this.re.test(t.localName)):new C(t.localName===this.name):e.caseInsensitive?t.nodeName.length!==this.name.length?new C(!1):new C(this.re.test(t.nodeName)):new C(t.nodeName===this.name)}};var $t=class{constructor(e){this.regex=new RegExp(`^${e}:`),this.nsprefix=e}evaluate(e){let t=e.nodeList[e.position];return new C(t.nodeName.match(this.regex))}};H();var Lt=class{constructor(e){this.target=e}evaluate(e){let t=e.nodeList[e.position];return new C(t.nodeType==7&&(!this.target||t.nodeName==this.target))}};H();var Vt=class{evaluate(e){return new C(e.nodeList[e.position].nodeType==3)}};$e();H();H();function da(i){let e=i.nodeTest;if(i.predicate&&i.predicate.length>0||i.predicates&&i.predicates.length>0)return .5;if(e&&typeof e=="object"&&"type"in e)switch(e.type){case"wildcard":return e.name&&e.name.endsWith(":*")?-.25:-.5;case"node-type":return e.nodeType==="processing-instruction"&&e.name?0:-.5;case"processing-instruction":return e.target||e.name?0:-.5;case"name":return 0;default:return 0}return e instanceof Mt||e instanceof Ft||e instanceof Vt||e instanceof Dt?-.5:e instanceof Lt?e.target?0:-.5:e instanceof $t?-.25:(e instanceof kt,0)}function ya(i){if(!i.steps||i.steps.length===0)return i.absolute?-.5:0;if(i.steps.length>1)return .5;let e=i.steps[0],t=e.axis;return t&&t!=="child"&&t!=="attribute"&&t!=="self-and-siblings"?.5:da(e)}function ga(i,e){let t=i.getAttributeValue("mode");return e?e==="#all"||t==="#all"?!0:t===e:!t||t==="#default"}function xa(i){return i.nodeType!==1?!1:(i.namespaceUri==="http://www.w3.org/1999/XSL/Transform"||i.prefix==="xsl")&&i.localName==="template"}function Ea(i,e){try{let t=e.xPathParse(i);return t instanceof Pe?ya(t):.5}catch(t){return 0}}function Pn(i,e,t,n){var o;let r=[],s=0;for(let a of i.childNodes){if(!xa(a)||!ga(a,e))continue;let c=a.getAttributeValue("match");if(!c)continue;let u=a.getAttributeValue("priority"),l=u?parseFloat(u):null,h=n==null?void 0:n.get(a),p=0;if(h){let g=Number.MAX_SAFE_INTEGER/2,f=-h.importDepth*g,x=(o=h.order)!=null?o:0;p=f+x}let d=Hs(c);for(let g of d){let f=Ea(g,t),x=l!==null&&!isNaN(l)?l:f;r.push({template:a,explicitPriority:l!==null&&!isNaN(l)?l:null,defaultPriority:f,effectivePriority:x,importPrecedence:p,documentOrder:s++,matchPattern:g})}}return r}function Hs(i){let e=[],t="",n=0,r=!1,s=!1;for(let o=0;o<i.length;o++){let a=i[o];a==="'"&&!s?(r=!r,t+=a):a==='"'&&!r?(s=!s,t+=a):!r&&!s?a==="["||a==="("?(n++,t+=a):a==="]"||a===")"?(n--,t+=a):a==="|"&&n===0?(e.push(t.trim()),t=""):t+=a:t+=a}return t.trim()&&e.push(t.trim()),e}function Na(i,e,t,n,r){if(e==="/")return i.nodeName==="#document";if(e.startsWith("@")){if(i.nodeType!==2)return!1;let s=e.substring(1);if(s==="*")return!0;let o=i.localName||i.nodeName,a=s.includes(":")?s.substring(s.indexOf(":")+1):s;return o===a||i.nodeName===s}if(e==="*"&&i.nodeType===1||!e.includes("/")&&!e.includes("[")&&!e.startsWith("@")&&(e===i.nodeName||e===i.localName))return!0;if(e.includes("/")||e.includes("["))try{let s=e.startsWith("/")?e:"//"+e,o=t.clone([t.root],0);if(r.xPathEval(s,o).nodeSetValue().some(u=>u.id===i.id))return!0}catch(s){}if(!e.includes("/")&&!e.includes("[")&&!e.startsWith("@"))try{let s=t.clone([i],0),o=r.xPathParse(e,"self-and-siblings");if(n.expressionMatch(o,s).some(c=>c.id===i.id))return!0}catch(s){}return!1}function Ta(i,e,t,n,r){let s=Hs(e);for(let o of s)if(Na(i,o,t,n,r))return!0;return!1}function Qe(i,e,t,n){let r=[],s=e.nodeList[e.position];for(let c of i)try{Ta(s,c.matchPattern,e,t,n)&&r.push(c)}catch(u){console.warn(`Failed to match pattern "${c.matchPattern}":`,u)}if(r.length===0)return{selectedTemplate:null,hasConflict:!1,conflictingTemplates:[]};r.sort((c,u)=>c.importPrecedence!==u.importPrecedence?u.importPrecedence-c.importPrecedence:c.effectivePriority!==u.effectivePriority?u.effectivePriority-c.effectivePriority:u.documentOrder-c.documentOrder);let o=r[0],a=r.filter(c=>c.importPrecedence===o.importPrecedence&&c.effectivePriority===o.effectivePriority);return{selectedTemplate:o.template,hasConflict:a.length>1,conflictingTemplates:a.length>1?a:[]}}function Ks(i,e){if(!i.hasConflict||i.conflictingTemplates.length<2)return;let t=i.conflictingTemplates.map(n=>`"${n.matchPattern}" (priority: ${n.effectivePriority})`).join(", ");console.warn(`XSLT Warning: Ambiguous template match for node <${e.nodeName}>. Multiple templates match with equal priority: ${t}. Using the last one in document order.`)}var Xn=class{constructor(e={cData:!0,escape:!0,selfClosingTags:!0,parameters:[]}){this.styleSheetStack=[];this.importedStylesheets=new Map;this.templateSourceMap=new Map;this.currentTemplateStack=[];this.xPath=new Me,this.xmlParser=new we,this.matchResolver=new _t,this.options={cData:e.cData===!0,escape:e.escape===!0,selfClosingTags:e.selfClosingTags===!0,outputMethod:e.outputMethod,parameters:e.parameters||[]},this.outputMethod=e.outputMethod||"xml",this.outputOmitXmlDeclaration="no",this.stripSpacePatterns=[],this.preserveSpacePatterns=[],this.namespaceAliases=new Map,this.supportedExtensions=new Set(["http://www.w3.org/1999/XSL/Transform"]),this.attributeSets=new Map,this.decimalFormatSettings={decimalSeparator:".",groupingSeparator:",",infinity:"Infinity",minusSign:"-",naN:"NaN",percent:"%",perMille:"\u2030",zeroDigit:"0",digit:"#",patternSeparator:";"},this.firstTemplateRan=!1,this.forwardsCompatible=!1}xsltProcess(e,t){return w(this,null,function*(){let n=new me;this.outputDocument=n;let r=new De([e]);if(this.options.parameters.length>0)for(let a of this.options.parameters)r.setVariable(a.name,new J(a.value));if(yield this.xsltProcessContext(r,t,this.outputDocument),this.outputMethod==="json")return Dn(n);let s=this.outputMethod;return this.outputMethod==="adaptive"&&(s=Mn(n)),_n(n,{cData:this.options.cData,escape:this.options.escape,selfClosingTags:this.options.selfClosingTags,outputMethod:s})})}xsltProcessContext(e,t,n){return w(this,null,function*(){if(!this.isXsltElement(t))t.nodeType===1&&!this.isExtensionElementSupported(t)?yield this.xsltExtensionElement(e,t,n):yield this.xsltPassThrough(e,t,n);else{let r,s,o,a;switch(t.localName){case"apply-imports":yield this.xsltApplyImports(e,t,n);break;case"apply-templates":yield this.xsltApplyTemplates(e,t,n);break;case"attribute":yield this.xsltAttribute(e,t,n);break;case"attribute-set":break;case"call-template":yield this.xsltCallTemplate(e,t,n);break;case"choose":yield this.xsltChoose(e,t,n);break;case"comment":yield this.xsltComment(e,t,n);break;case"copy":r=this.xsltCopy(n||this.outputDocument,e.nodeList[e.position]),r&&(yield this.xsltChildNodes(e,t,r));break;case"copy-of":s=y(t,"select"),o=this.xPath.xPathEval(s,e);let c=n||this.outputDocument;if(o.type==="node-set"){a=o.nodeSetValue();for(let h=0;h<a.length;++h)this.xsltCopyOf(c,a[h])}else{let h=ee(this.outputDocument,o.stringValue());h.siblingPosition=c.childNodes.length,v(c,h)}break;case"decimal-format":this.xsltDecimalFormat(e,t);break;case"element":yield this.xsltElement(e,t,n);break;case"fallback":let u=t.parentNode;if(!(u&&u.nodeType===1&&!this.isExtensionElementSupported(u)))throw new Error("<xsl:fallback> must be a direct child of an extension element");yield this.xsltChildNodes(e,t,n);break;case"for-each":yield this.xsltForEach(e,t,n);break;case"if":yield this.xsltIf(e,t,n);break;case"import":yield this.xsltImport(e,t,n);break;case"include":yield this.xsltInclude(e,t,n);break;case"key":this.xsltKey(e,t);break;case"message":yield this.xsltMessage(e,t);break;case"namespace-alias":this.xsltNamespaceAlias(t);break;case"number":this.xsltNumber(e,t,n);break;case"otherwise":throw new Error("<xsl:otherwise> must be a child of <xsl:choose>.");case"output":this.outputMethod=y(t,"method"),this.outputOmitXmlDeclaration=y(t,"omit-xml-declaration");break;case"param":yield this.xsltVariable(e,t,!1);break;case"preserve-space":this.xsltPreserveSpace(t);break;case"processing-instruction":yield this.xsltProcessingInstruction(e,t,n);break;case"sort":this.xsltSort(e,t);break;case"strip-space":this.xsltStripSpace(t);break;case"stylesheet":case"transform":yield this.xsltTransformOrStylesheet(e,t,n);break;case"template":yield this.xsltTemplate(e,t,n);break;case"text":this.xsltText(e,t,n);break;case"value-of":this.xsltValueOf(e,t,n);break;case"variable":yield this.xsltVariable(e,t,!0);break;case"when":throw new Error("<xsl:when> must be a child of <xsl:choose>.");case"with-param":throw new Error("<xsl:with-param> must be a child of <xsl:call-template> or <xsl:apply-templates>.");default:yield this.xsltUnknownInstruction(e,t,n)}}})}xsltUnknownInstruction(e,t,n){return w(this,null,function*(){let r=`xsl:${t.localName}`;if(this.forwardsCompatible){let s=this.getFallbackElement(t);s&&(yield this.xsltChildNodes(e,s,n));return}throw new Error(`Unknown XSLT instruction: <${r}>. This element is not supported in XSLT 1.0. If this is a future XSLT version feature, use version="2.0" or higher to enable forwards-compatible processing mode.`)})}xsltApplyTemplates(e,t,n){return w(this,null,function*(){var h,p;let r=y(t,"select"),s=[];r?s=this.xPath.xPathEval(r,e).nodeSetValue():s=e.nodeList[e.position].childNodes;let o=y(t,"mode"),a=t.ownerDocument.documentElement,c=Pn(a,o,this.xPath,this.templateSourceMap),u=e.clone();yield this.xsltWithParam(u,t);let l=u.clone(s);for(let d=0;d<l.contextSize();++d){let g=l.nodeList[d];if(g.nodeType===3){if(!this.xsltPassText(g))continue;let f=u.clone([g],0);f.inApplyTemplates=!0;let x=Qe(c,f,this.matchResolver,this.xPath);if(x.selectedTemplate){let b=this.templateSourceMap.get(x.selectedTemplate),I=y(x.selectedTemplate,"match"),k=y(x.selectedTemplate,"mode");this.currentTemplateStack.push({template:x.selectedTemplate,stylesheetDepth:(h=b==null?void 0:b.importDepth)!=null?h:0,mode:k||o,match:I});try{yield this.xsltChildNodes(f,x.selectedTemplate,n)}finally{this.currentTemplateStack.pop()}}else{let b=e.clone([g],0);this.commonLogicTextNode(b,g,n)}}else{let f=l.clone([g],0);f.inApplyTemplates=!0;let x=Qe(c,f,this.matchResolver,this.xPath);if(x.hasConflict&&Ks(x,g),x.selectedTemplate){let b=this.templateSourceMap.get(x.selectedTemplate),I=y(x.selectedTemplate,"match"),k=y(x.selectedTemplate,"mode");this.currentTemplateStack.push({template:x.selectedTemplate,stylesheetDepth:(p=b==null?void 0:b.importDepth)!=null?p:0,mode:k||o,match:I});try{yield this.xsltChildNodes(f,x.selectedTemplate,n)}finally{this.currentTemplateStack.pop()}}}}})}xsltApplyImports(e,t,n){return w(this,null,function*(){if(this.currentTemplateStack.length===0)throw new Error("<xsl:apply-imports> can only be used within a template");let r=this.currentTemplateStack[this.currentTemplateStack.length-1],{stylesheetDepth:s,mode:o}=r,a=e.nodeList[e.position],c=t.ownerDocument.documentElement,l=Pn(c,o,this.xPath,this.templateSourceMap).filter(f=>{let x=this.templateSourceMap.get(f.template);return x&&x.importDepth>s});if(l.length===0)return;let h=e.clone([a],0),p=Qe(l,h,this.matchResolver,this.xPath);if(!p.selectedTemplate)return;let d=e.clone();yield this.xsltWithParam(d,t);let g=this.templateSourceMap.get(p.selectedTemplate);if(g){let f=y(p.selectedTemplate,"match");this.currentTemplateStack.push({template:p.selectedTemplate,stylesheetDepth:g.importDepth,mode:o,match:f}),yield this.xsltChildNodes(d,p.selectedTemplate,n),this.currentTemplateStack.pop()}})}xsltAttribute(e,t,n){return w(this,null,function*(){let r=y(t,"name"),s=this.xsltAttributeValue(r,e),o=pe(this.outputDocument);yield this.xsltChildNodes(e,t,o);let a=zt(o);n&&ne(n,s,a)})}xsltCallTemplate(e,t,n){return w(this,null,function*(){let r=y(t,"name"),s=t.ownerDocument.documentElement,o=e.clone();yield this.xsltWithParam(o,t);for(let a=0;a<s.childNodes.length;++a){let c=s.childNodes[a];if(c.nodeType===1&&this.isXsltElement(c,"template")&&Se(c,"name")===r){yield this.xsltChildNodes(o,c,n);break}}})}xsltChoose(e,t,n){return w(this,null,function*(){for(let r of t.childNodes)if(r.nodeType===1){if(this.isXsltElement(r,"when")){let s=y(r,"test");if(this.xPath.xPathEval(s,e).booleanValue()){yield this.xsltChildNodes(e,r,n);break}}else if(this.isXsltElement(r,"otherwise")){yield this.xsltChildNodes(e,r,n);break}}})}xsltCopy(e,t){if(t.nodeType==1){let n=le(this.outputDocument,t.nodeName);return t.namespaceUri!==null&&t.namespaceUri!==void 0&&ne(n,"xmlns",t.namespaceUri),n.siblingPosition=e.childNodes.length,v(e,n),n}if(t.nodeType==3){if(this.shouldStripWhitespaceNode(t))return null;let n=ee(this.outputDocument,t.nodeValue);n.siblingPosition=e.childNodes.length,v(e,n)}else if(t.nodeType==4){let n=Je(this.outputDocument,t.nodeValue);n.siblingPosition=e.childNodes.length,v(e,n)}else if(t.nodeType==8){let n=Ae(this.outputDocument,t.nodeValue);n.siblingPosition=e.childNodes.length,v(e,n)}else t.nodeType==2&&ne(e,t.nodeName,t.nodeValue);return null}xsltComment(e,t,n){return w(this,null,function*(){let r=pe(this.outputDocument);yield this.xsltChildNodes(e,t,r);let s=Z(r),o=Ae(this.outputDocument,s);(n||this.outputDocument).appendChild(o)})}xsltProcessingInstruction(e,t,n){return w(this,null,function*(){let r=y(t,"name");if(!r)throw new Error('<xsl:processing-instruction> requires a "name" attribute');let s=this.xsltAttributeValue(r,e);if(!s)throw new Error("<xsl:processing-instruction> target name cannot be empty");if(s.toLowerCase()==="xml")throw new Error('Processing instruction target cannot be "xml"');if(!/^[a-zA-Z_][a-zA-Z0-9_:.-]*$/.test(s))throw new Error(`Invalid processing instruction target: "${s}"`);let o=pe(this.outputDocument);yield this.xsltChildNodes(e,t,o);let a=Z(o),c=wn(this.outputDocument,s,a),u=n||this.outputDocument;v(u,c)})}xsltCopyOf(e,t){if(t.nodeType==11||t.nodeType==9)for(let n=0;n<t.childNodes.length;++n)this.xsltCopyOf(e,t.childNodes[n]);else{let n=this.xsltCopy(e,t);if(n)for(let r=0;r<t.childNodes.length;++r)this.xsltCopyOf(n,t.childNodes[r])}}xsltDecimalFormat(e,t){let n=y(t,"name"),r=y(t,"decimal-separator"),s=y(t,"grouping-separator"),o=y(t,"infinity"),a=y(t,"minus-sign"),c=y(t,"NaN"),u=y(t,"percent"),l=y(t,"per-mille"),h=y(t,"zero-digit"),p=y(t,"digit"),d=y(t,"pattern-separator");this.decimalFormatSettings={name:n||this.decimalFormatSettings.name,decimalSeparator:r||this.decimalFormatSettings.decimalSeparator,groupingSeparator:s||this.decimalFormatSettings.groupingSeparator,infinity:o||this.decimalFormatSettings.infinity,minusSign:a||this.decimalFormatSettings.minusSign,naN:c||this.decimalFormatSettings.naN,percent:u||this.decimalFormatSettings.percent,perMille:l||this.decimalFormatSettings.perMille,zeroDigit:h||this.decimalFormatSettings.zeroDigit,digit:p||this.decimalFormatSettings.digit,patternSeparator:d||this.decimalFormatSettings.patternSeparator},e.decimalFormatSettings=this.decimalFormatSettings}xsltElement(e,t,n){return w(this,null,function*(){let r=y(t,"name"),s=this.xsltAttributeValue(r,e),o=le(this.outputDocument,s),a=y(t,"use-attribute-sets");a&&(yield this.applyAttributeSets(e,o,a)),v(n||this.outputDocument,o);let c=e.clone(void 0,0);yield this.xsltChildNodes(c,t,o)})}xsltForEach(e,t,n){return w(this,null,function*(){let r=y(t,"select"),s=this.xPath.xPathEval(r,e).nodeSetValue();if(s.length===0)return;let o=e.clone(s);if(this.xsltSort(o,t),o.nodeList.filter(c=>c.parentNode!==null&&c.parentNode!==void 0).length<=0)throw new Error("Nodes with no parents defined.");for(let c=0;c<o.contextSize();++c)yield this.xsltChildNodes(o.clone(o.nodeList,c),t,n)})}xsltIf(e,t,n){return w(this,null,function*(){let r=y(t,"test");this.xPath.xPathEval(r,e).booleanValue()&&(yield this.xsltChildNodes(e,t,n))})}xsltImportOrInclude(e,t,n,r){return w(this,null,function*(){let s=r?"xsl:import":"xsl:include",[o,a]=process.versions.node.split(".").map(Number);if(o<=17&&a<5)throw new Error(`Your Node.js version does not support \`<${s}>\`. If possible, please update your Node.js version to at least version 17.5.0.`);global.globalThis.fetch||(global.globalThis.fetch=fetch,global.globalThis.Headers=Headers,global.globalThis.Request=Request,global.globalThis.Response=Response);let c=t.childNodes.filter(b=>b.nodeName==="href");if(c.length<=0)throw new Error(`<${s}> with no href attribute defined.`);let l=c[0].nodeValue;if(this.importedStylesheets.has(l))return;let p=yield(yield global.globalThis.fetch(l)).text(),d=this.xmlParser.xmlParse(p),g=this.styleSheetStack.length>0?this.styleSheetStack[this.styleSheetStack.length-1].importDepth:0,f={importDepth:r?g+1:g,href:l,order:this.importedStylesheets.size};this.styleSheetStack.push(f),this.importedStylesheets.set(l,d);let x=d.childNodes[0];x&&this.mapTemplatesFromStylesheet(x,f),yield this.xsltChildNodes(e,x,n),this.styleSheetStack.pop()})}xsltImport(e,t,n){return w(this,null,function*(){yield this.xsltImportOrInclude(e,t,n,!0)})}xsltInclude(e,t,n){return w(this,null,function*(){yield this.xsltImportOrInclude(e,t,n,!1)})}xsltKey(e,t){let n=y(t,"name"),r=y(t,"match"),s=y(t,"use");if(!n||!r||!s){let c="<xsl:key> missing required parameters: ";throw n||(c+="name, "),r||(c+="match, "),s||(c+="use, "),c=c.slice(0,-2),new Error(c)}let o;e.nodeList[e.position].nodeName==="#document"?o=e.clone(e.nodeList[e.position].childNodes):o=e;let a=this.xsltMatch(r,o);n in e.keys||(e.keys[n]={});for(let c of a){let u=e.clone([c]),h=this.xPath.xPathEval(s,u).stringValue();e.keys[n][h]=new K([c])}}xsltMessage(e,t){return w(this,null,function*(){let n=pe(this.outputDocument);yield this.xsltChildNodes(e,t,n);let r=Z(n),s=y(t,"terminate")||"no";if(console.log(`[xsl:message] ${r}`),s==="yes")throw new Error(`xsl:message terminated: ${r}`)})}xsltNamespaceAlias(e){let t=y(e,"stylesheet-prefix"),n=y(e,"result-prefix");if(!t||!n)throw new Error("<xsl:namespace-alias> requires both stylesheet-prefix and result-prefix attributes.");this.namespaceAliases.set(t,n)}xsltNumber(e,t,n){let r=y(t,"value"),s=y(t,"level")||"single",o=y(t,"count"),a=y(t,"from"),c=y(t,"format")||"1",u=y(t,"lang"),l=y(t,"letter-value"),h=y(t,"grouping-separator"),p=y(t,"grouping-size"),d;if(r){let b=this.xPath.xPathEval(r,e);d=[Math.round(b.numberValue())]}else d=this.xsltNumberCount(e,s,o,a);let g=this.xsltFormatNumbers(d,c,h,p),f=ee(this.outputDocument,g),x=n||this.outputDocument;f.siblingPosition=x.childNodes.length,v(x,f)}xsltNumberCount(e,t,n,r){let s=e.nodeList[e.position],o=n||s.nodeName;switch(t){case"single":{let a=s;for(;a;){if(this.nodeMatchesPattern(a,o)){let c=1,u=a.previousSibling;for(;u;)this.nodeMatchesPattern(u,o)&&c++,u=u.previousSibling;return[c]}if(r&&this.nodeMatchesPattern(a,r))break;a=a.parentNode}return[0]}case"multiple":{let a=[],c=s,u=[];for(;c&&(this.nodeMatchesPattern(c,o)&&u.push(c),!(r&&this.nodeMatchesPattern(c,r)));)c=c.parentNode;for(let l=u.length-1;l>=0;l--){let h=u[l],p=1,d=h.previousSibling;for(;d;)this.nodeMatchesPattern(d,o)&&p++,d=d.previousSibling;a.push(p)}return a.length>0?a:[0]}case"any":{let a=0,c=this.getAllPrecedingNodes(s,r);this.nodeMatchesPattern(s,o)&&(a=1);for(let u of c)this.nodeMatchesPattern(u,o)&&a++;return[a]}default:return[1]}}nodeMatchesPattern(e,t){return t.includes("|")?t.split("|").map(r=>r.trim()).some(r=>this.nodeMatchesSinglePattern(e,r)):this.nodeMatchesSinglePattern(e,t)}nodeMatchesSinglePattern(e,t){return t==="*"?e.nodeType===1:t==="node()"?!0:t==="text()"?e.nodeType===3:t==="comment()"?e.nodeType===8:t.startsWith("processing-instruction")?e.nodeType===7:e.nodeName===t||e.localName===t}getAllPrecedingNodes(e,t=null){let n=[],r=e.previousSibling;for(;r;){if(t&&this.nodeMatchesPattern(r,t))return this.collectDescendants(r,n),n;n.push(r),this.collectDescendants(r,n),r=r.previousSibling}let s=e.parentNode;for(;s;){if(t&&this.nodeMatchesPattern(s,t))return n;let o=s.previousSibling;for(;o;){if(t&&this.nodeMatchesPattern(o,t))return this.collectDescendants(o,n),n;n.push(o),this.collectDescendants(o,n),o=o.previousSibling}s=s.parentNode}return n}collectDescendants(e,t){for(let n of e.childNodes)n.nodeType===1&&(t.push(n),this.collectDescendants(n,t))}xsltFormatNumbers(e,t,n,r){if(e.length===0)return"0";let{tokens:s,separators:o}=this.parseFormatString(t),a=[];for(let u=0;u<e.length;u++){let l=Math.min(u,s.length-1),h=s[l]||"1",p=this.xsltFormatNumber(e[u],h,n,r);a.push(p)}if(a.length===1)return a[0];let c=a[0];for(let u=1;u<a.length;u++){let l=Math.min(u-1,o.length-1),h=o.length>0?o[l]:".";c+=h+a[u]}return c}parseFormatString(e){let t=[],n=[],r=/^(0*1|[aAiI])/,s=e,o=!1;for(;s.length>0;){let a=s.match(r);if(a)t.push(a[1]),s=s.substring(a[1].length),o=!0;else{if(o&&t.length>0){let c=1;for(;c<s.length&&!s.substring(c).match(r);)c++;n.push(s.substring(0,c)),s=s.substring(c)}else s=s.substring(1);o=!1}}if(t.length===0&&t.push("1"),n.length===0&&t.length>1)for(let a=1;a<t.length;a++)n.push(".");return{tokens:t,separators:n}}xsltFormatNumber(e,t,n,r){let s=t.charAt(0),o;switch(s){case"1":if(o=e.toString(),t.length>1&&t.match(/^0+1$/)){let a=t.length;o=e.toString().padStart(a,"0")}break;case"a":o=this.numberToAlpha(e,!1);break;case"A":o=this.numberToAlpha(e,!0);break;case"i":o=this.numberToRoman(e).toLowerCase();break;case"I":o=this.numberToRoman(e);break;default:o=e.toString()}if(n&&r){let a=parseInt(r,10);a>0&&!isNaN(a)&&(o=this.applyGrouping(o,n,a))}return o}numberToAlpha(e,t){if(e<=0)return"";let n="";for(;e>0;)e--,n=String.fromCharCode(e%26+(t?65:97))+n,e=Math.floor(e/26);return n}numberToRoman(e){if(e<=0||e>3999)return e.toString();let t=[[1e3,"M"],[900,"CM"],[500,"D"],[400,"CD"],[100,"C"],[90,"XC"],[50,"L"],[40,"XL"],[10,"X"],[9,"IX"],[5,"V"],[4,"IV"],[1,"I"]],n="";for(let[r,s]of t)for(;e>=r;)n+=s,e-=r;return n}applyGrouping(e,t,n){let r=e.split("."),s=r[0],o=r[1],a="",c=0;for(let u=s.length-1;u>=0;u--)c>0&&c%n===0&&(a=t+a),a=s[u]+a,c++;return o?a+"."+o:a}xsltSort(e,t){let n=[];for(let r of t.childNodes)if(r.nodeType==1&&this.isXsltElement(r,"sort")){let s=y(r,"select"),o=this.xPath.xPathParse(s),a=y(r,"data-type")||"text",c=y(r,"order")||"ascending";n.push({expr:o,type:a,order:c})}this.xPath.xPathSort(e,n)}xsltStripSpace(e){let t=y(e,"elements");if(t){let n=t.trim().split(/\s+/);this.stripSpacePatterns.push(...n)}}xsltPreserveSpace(e){let t=y(e,"elements");if(t){let n=t.trim().split(/\s+/);this.preserveSpacePatterns.push(...n)}}shouldStripWhitespaceNode(e){if(!e.nodeValue||!e.nodeValue.match(/^\s*$/)||this.stripSpacePatterns.length===0)return!1;let t=e.parentNode;if(!t||t.nodeType!==1)return!1;let n=t;for(;n&&n.nodeType===1;){let s=Se(n,"xml:space");if(s==="preserve")return!1;if(s==="default")break;n=n.parentNode}let r=t.localName||t.nodeName;for(let s of this.preserveSpacePatterns)if(this.matchesNamePattern(r,s,t))return!1;for(let s of this.stripSpacePatterns)if(this.matchesNamePattern(r,s,t))return!0;return!1}matchesNamePattern(e,t,n){if(t==="*")return!0;if(t.includes(":")){let[r,s]=t.split(":"),o=n.prefix||"";return s==="*"?o===r:o===r&&e===s}return e===t}xsltTemplate(e,t,n){return w(this,null,function*(){if(!e.inApplyTemplates&&e.baseTemplateMatched)return;let r=y(t,"match");if(!r)return;let s=this.xsltMatch(r,e,"self-and-siblings");if(s.length>0){this.firstTemplateRan=!0,e.inApplyTemplates||(e.baseTemplateMatched=!0);let o=e.clone(s,0);yield this.xsltChildNodes(o,t,n)}})}xsltText(e,t,n){let r=Z(t),s=ee(this.outputDocument,r);s.fromXslText=!0;let o=t.childNodes.filter(c=>c.nodeType===2&&c.nodeName==="disable-output-escaping");o.length>0&&o[0].nodeValue==="yes"&&(s.escape=!1);let a=n||this.outputDocument;s.siblingPosition=a.childNodes.length,a.appendChild(s)}validateStylesheetAttributes(e,t){let n=e.childNodes.filter(a=>a.nodeType===2),r=["version","id","extension-element-prefixes","exclude-result-prefixes","default-collation"],s=["xmlns"],o=!1;for(let a of n){let c=a.nodeName,u=a.nodeValue;if(a.prefix==="xmlns"){t.knownNamespaces[a.localName]=u;continue}if(c==="xmlns"){t.knownNamespaces[""]=u;continue}if(c==="version"){o=!0;let l=parseFloat(u);if(isNaN(l)||l<=0)throw new Error(`XSLT version not defined or invalid. Actual resolved version: ${u||"(none)"}.`);l>1&&!["2.0","3.0"].includes(u)?(this.forwardsCompatible=!0,this.version=u,t.xsltVersion="1.0",console.warn(`XSLT Warning: Stylesheet version "${u}" is not directly supported. Entering forwards-compatible processing mode (XSLT 1.0 Section 2.5).`)):(this.version=u,t.xsltVersion=u);continue}if(c==="extension-element-prefixes"){let l=u.split(/\s+/);for(let h of l)if(h&&!/^[a-zA-Z_:][\w:.-]*$/.test(h))throw new Error(`Invalid prefix in extension-element-prefixes: "${h}". Prefixes must be valid QNames.`);continue}if(c==="exclude-result-prefixes"){if(u!=="#all"){let l=u.split(/\s+/);for(let h of l)if(h&&!/^[a-zA-Z_:][\w:.-]*$/.test(h))throw new Error(`Invalid prefix in exclude-result-prefixes: "${h}". Prefixes must be valid QNames or "#all".`)}continue}if(c==="default-collation"){if(!u||u.trim().length===0)throw new Error("The default-collation attribute must contain a URI.");continue}if(c==="id"){if(!/^[a-zA-Z_:][\w:.-]*$/.test(u))throw new Error(`Invalid id attribute value: "${u}". IDs must be valid NCNames.`);continue}}}xsltTransformOrStylesheet(e,t,n){return w(this,null,function*(){var u,l,h;let r={importDepth:0,href:"(main stylesheet)",order:0};this.mapTemplatesFromStylesheet(t,r),this.collectAttributeSets(t),this.validateStylesheetAttributes(t,e);let s=!1;for(let p of t.childNodes)if(p.nodeType===1)if(this.isXsltElement(p,"import")){if(s)throw new Error("<xsl:import> should be the first child node of <xsl:stylesheet> or <xsl:transform>.")}else s=!0;let o=[],a=[];for(let p of t.childNodes)p.nodeType===1&&this.isXsltElement(p,"template")?a.push(p):o.push(p);let c=e.clone();for(let p of o)yield this.xsltProcessContext(c,p,n);if(a.length>0){let p=Pn(t,null,this.xPath,this.templateSourceMap),d=[];for(let g of p)try{let f=this.xsltMatch(g.matchPattern,c);f.length>0&&d.push({priority:g,matchedNodes:f})}catch(f){console.warn(`Failed to match pattern "${g.matchPattern}":`,f)}if(d.length>0){let g=d.find(R=>R.priority.matchPattern==="/"),f;g?f=g:(d.sort((R,D)=>R.priority.importPrecedence!==D.priority.importPrecedence?D.priority.importPrecedence-R.priority.importPrecedence:R.priority.effectivePriority!==D.priority.effectivePriority?D.priority.effectivePriority-R.priority.effectivePriority:D.priority.documentOrder-R.priority.documentOrder),f=d[0]);let x=d.filter(R=>R.priority.importPrecedence===f.priority.importPrecedence&&R.priority.effectivePriority===f.priority.effectivePriority);if(x.length>1){let R=x.map(D=>`"${D.priority.matchPattern}" (priority: ${D.priority.effectivePriority})`).join(", ");console.warn(`XSLT Warning: Ambiguous template match. Multiple templates match with equal priority: ${R}. Using the last one in document order.`)}this.firstTemplateRan=!0,c.baseTemplateMatched=!0;let b=c.clone(f.matchedNodes,0),I=this.templateSourceMap.get(f.priority.template),k=y(f.priority.template,"match"),z=y(f.priority.template,"mode");this.currentTemplateStack.push({template:f.priority.template,stylesheetDepth:(u=I==null?void 0:I.importDepth)!=null?u:0,mode:z||null,match:k}),yield this.xsltChildNodes(b,f.priority.template,n),this.currentTemplateStack.pop()}else{let g=e.nodeList[e.position];if(g&&g.childNodes&&g.childNodes.length>0){let f=g.childNodes.filter(x=>x.nodeName!=="#dtd-section");if(f.length>0){let x=e.clone(f);for(let b=0;b<x.contextSize();++b){let I=x.nodeList[b];if(I.nodeType===3){let k=e.clone([I],0);this.commonLogicTextNode(k,I,n)}else{let k=x.clone([I],0),z=Qe(p,k,this.matchResolver,this.xPath);if(z.selectedTemplate){let R=k.clone([I],0);R.inApplyTemplates=!0;let D=this.templateSourceMap.get(z.selectedTemplate),Ze=y(z.selectedTemplate,"match"),Xe=y(z.selectedTemplate,"mode");this.currentTemplateStack.push({template:z.selectedTemplate,stylesheetDepth:(l=D==null?void 0:D.importDepth)!=null?l:0,mode:Xe||null,match:Ze}),yield this.xsltChildNodes(R,z.selectedTemplate,n),this.currentTemplateStack.pop()}else if(I.childNodes&&I.childNodes.length>0){let R=I.childNodes.filter(D=>D.nodeName!=="#dtd-section");if(R.length>0){let D=e.clone(R);for(let Ze=0;Ze<D.contextSize();++Ze){let Xe=D.nodeList[Ze];if(Xe.nodeType===3){let Ut=e.clone([Xe],0);this.commonLogicTextNode(Ut,Xe,n)}else{let Ut=D.clone([Xe],0),Fe=Qe(p,Ut,this.matchResolver,this.xPath);if(Fe.selectedTemplate){let or=Ut.clone([Xe],0);or.inApplyTemplates=!0;let Sn=this.templateSourceMap.get(Fe.selectedTemplate),Qs=y(Fe.selectedTemplate,"match"),Zs=y(Fe.selectedTemplate,"mode");this.currentTemplateStack.push({template:Fe.selectedTemplate,stylesheetDepth:(h=Sn==null?void 0:Sn.importDepth)!=null?h:0,mode:Zs||null,match:Qs}),yield this.xsltChildNodes(or,Fe.selectedTemplate,n),this.currentTemplateStack.pop()}}}}}}}}}}}})}xsltValueOf(e,t,n){let r=y(t,"select"),s=e.nodeList[e.position],o=this.xPath.xPathEval(r,e);if(s&&s.nodeName==="#document"&&(o.stringValue()===""||o instanceof K&&o.nodeSetValue().length===0)){let l=s.childNodes.find(h=>h.nodeName!=="#dtd-section");if(l){let h=e.clone([l],0);o=this.xPath.xPathEval(r,h)}}let a=o.stringValue(),c=ee(this.outputDocument,a),u=n||this.outputDocument;c.siblingPosition=u.childNodes.length,u.appendChild(c)}xsltVariable(e,t,n){return w(this,null,function*(){let r=y(t,"name"),s=y(t,"select"),o;if(t.childNodes.filter(c=>c.nodeType!==2).length>0){let c=pe(t.ownerDocument);yield this.xsltChildNodes(e,t,c),o=new K([c])}else if(s)o=this.xPath.xPathEval(s,e);else{let c="",u=this.options.parameters.filter(l=>l.name===r);u.length>0&&(c=u[0].value),o=new J(c)}(n||!e.getVariable(r))&&e.setVariable(r,o)})}xsltChildNodes(e,t,n){return w(this,null,function*(){let r=e.clone();for(let s=0;s<t.childNodes.length;++s){let o=t.childNodes[s];o.nodeType!==2&&(yield this.xsltProcessContext(r,o,n))}})}commonLogicTextNode(e,t,n){if(n){if(this.shouldStripWhitespaceNode(t))return;let r=ee(this.outputDocument,t.nodeValue);r.siblingPosition=n.childNodes.length,v(n,r)}}xsltPassThrough(e,t,n){return w(this,null,function*(){switch(t.nodeType){case 3:this.xsltPassText(t)&&this.commonLogicTextNode(e,t,n);break;case 1:let r,s=e;r=e.nodeList[e.position];let o;o=le(this.outputDocument,t.nodeName),o.siblingPosition=r.siblingPosition,v(n||this.outputDocument,o);let a=t.childNodes.find(u=>(u==null?void 0:u.nodeType)===2&&u.nodeName==="use-attribute-sets");a&&(yield this.applyAttributeSets(s,o,a.nodeValue)),yield this.xsltChildNodes(s,t,o);let c=t.childNodes.filter(u=>(u==null?void 0:u.nodeType)===2&&u.nodeName!=="use-attribute-sets");for(let u of c){let l=u.nodeName,h=this.xsltAttributeValue(u.nodeValue,s);ne(o,l,h)}break;default:yield this.xsltChildNodes(e,t,n)}})}xsltPassText(e){if(!e.nodeValue.match(/^\s*$/))return!0;let t=e.parentNode;if(this.isXsltElement(t,"text"))return!0;for(;t&&t.nodeType==1;){let n=Se(t,"xml:space");if(n){if(n=="default")return!1;if(n=="preserve")return!0}t=t.parentNode}return!1}findAttributeInContext(e,t){return t.nodeList[t.position].childNodes.find(n=>n.nodeType===2&&n.nodeName===e)}xsltAttributeValue(e,t){let n=e.split("{");if(n.length===1)return e;let r="";for(let s=0;s<n.length;++s){let o=n[s].split("}");if(o.length!=2){r+=n[s];continue}let a=this.xPath.xPathEval(o[0],t).stringValue();r+=a+o[1]}return r}xsltMatch(e,t,n){let r=this.xPath.xPathParse(e,n);return this.matchResolver.expressionMatch(r,t)}xsltWithParam(e,t){return w(this,null,function*(){for(let n of t.childNodes)n.nodeType===1&&this.isXsltElement(n,"with-param")&&(yield this.xsltVariable(e,n,!0))})}mapTemplatesFromStylesheet(e,t){for(let n of e.childNodes)n.nodeType===1&&(this.isXsltElement(n,"template")?this.templateSourceMap.set(n,t):(this.isXsltElement(n,"stylesheet")||this.isXsltElement(n,"transform"))&&this.mapTemplatesFromStylesheet(n,t))}collectAttributeSets(e){for(let t of e.childNodes)if(t.nodeType===1&&this.isXsltElement(t,"attribute-set")){let n=y(t,"name"),r=t.childNodes.filter(s=>s.nodeType===1&&this.isXsltElement(s,"attribute"));if(n){let s=this.attributeSets.get(n);s&&s.length?this.attributeSets.set(n,[...s,...r]):this.attributeSets.set(n,r)}}}applyAttributeSets(e,t,n){return w(this,null,function*(){if(!n||!n.trim())return;let r=n.trim().split(/\s+/),s=new Set;for(let o of r)yield this.applyAttributeSet(e,t,o,s)})}applyAttributeSet(e,t,n,r){return w(this,null,function*(){if(r.has(n))return;r.add(n);let s=this.attributeSets.get(n);if(s)for(let o of s){let a=null,c=o.parentNode;if(c&&(a=y(c,"use-attribute-sets")),a)for(let d of a.trim().split(/\s+/))d&&(yield this.applyAttributeSet(e,t,d,r));let u=y(o,"name"),l=this.xsltAttributeValue(u,e),h=pe(this.outputDocument);yield this.xsltChildNodes(e,o,h);let p=zt(h);ne(t,l,p)}})}isExtensionElementSupported(e){if(e.nodeType!==1)return!0;let t=e.namespaceUri;return!t||this.isXsltElement(e)?!0:!!this.supportedExtensions.has(t)}getFallbackElement(e){for(let t of e.childNodes)if(t.nodeType===1&&this.isXsltElement(t,"fallback"))return t;return null}xsltExtensionElement(e,t,n){return w(this,null,function*(){let r=this.getFallbackElement(t);r?yield this.xsltChildNodes(e,r,n):yield this.xsltPassThrough(e,t,n)})}isXsltElement(e,t){return t&&e.localName!=t?!1:e.namespaceUri?e.namespaceUri==="http://www.w3.org/1999/XSL/Transform":e.prefix==="xsl"}};$e();return Cn(ba);})();
|
|
2
|
+
var XsltProcessor=(()=>{var Wn=Object.defineProperty,Ya=Object.defineProperties,Ga=Object.getOwnPropertyDescriptor,Qa=Object.getOwnPropertyDescriptors,Ha=Object.getOwnPropertyNames,mi=Object.getOwnPropertySymbols;var di=Object.prototype.hasOwnProperty,Ka=Object.prototype.propertyIsEnumerable;var fi=(i,e,t)=>e in i?Wn(i,e,{enumerable:!0,configurable:!0,writable:!0,value:t}):i[e]=t,P=(i,e)=>{for(var t in e||(e={}))di.call(e,t)&&fi(i,t,e[t]);if(mi)for(var t of mi(e))Ka.call(e,t)&&fi(i,t,e[t]);return i},_=(i,e)=>Ya(i,Qa(e));var g=(i,e)=>()=>(i&&(e=i(i=0)),e);var We=(i,e)=>{for(var t in e)Wn(i,t,{get:e[t],enumerable:!0})},Ja=(i,e,t,n)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Ha(e))!di.call(i,r)&&r!==t&&Wn(i,r,{get:()=>e[r],enumerable:!(n=Ga(e,r))||n.enumerable});return i};var L=i=>Ja(Wn({},"__esModule",{value:!0}),i);var T=(i,e,t)=>new Promise((n,r)=>{var s=c=>{try{a(t.next(c))}catch(u){r(u)}},o=c=>{try{a(t.throw(c))}catch(u){r(u)}},a=c=>c.done?n(c.value):Promise.resolve(c.value).then(s,o);a((t=t.apply(i,e)).next())});var x,O=g(()=>{x=class{}});var At,Ct,gi=g(()=>{O();At=class extends x{constructor(e){super(),this.value=e}evaluate(e){return this.value}toString(){return`"${this.value}"`}},Ct=class extends x{constructor(e){super(),this.value=e}evaluate(e){return this.value}toString(){return this.value.toString()}}});var ge,w,xi,Ni,Or,Ei,qe=g(()=>{ge={ELEMENT_NODE:1,ATTRIBUTE_NODE:2,TEXT_NODE:3,CDATA_SECTION_NODE:4,PROCESSING_INSTRUCTION_NODE:7,COMMENT_NODE:8,DOCUMENT_NODE:9,DOCUMENT_FRAGMENT_NODE:11,NAMESPACE_NODE:13},w="http://www.w3.org/2001/XMLSchema",xi="http://www.w3.org/2005/xqt-errors",Ni="http://www.w3.org/2005/xpath-functions",Or="http://www.w3.org/2005/xpath-functions/collation/codepoint",Ei=["last","position","count","id","local-name","namespace-uri","name","string","concat","starts-with","contains","substring-before","substring-after","substring","string-length","normalize-space","translate","boolean","not","true","false","lang","number","sum","floor","ceiling","round"]});function ne(i){return new tt("XPST0003",`Grammar violation: ${i}`)}function wt(i,e="name"){return new tt("XPST0008",`Unresolved ${e} reference: ${i}`)}function bi(i){return new tt("XPST0010",`Unsupported axis: ${i}`)}function Ti(i,e,t){return new tt("XPST0017",`Function ${i} expects ${e}, got ${t} arguments`)}function ie(i,e,t){let n=t?`Type mismatch in ${t}: expected ${i}, got ${e}`:`Type mismatch: expected ${i}, got ${e}`;return new Rr("XPTY0004",n)}function Pi(i,e){return new qn("FORG0001",`Cannot cast ${JSON.stringify(i)} to ${e}`)}var Q,tt,qn,Rr,Ie=g(()=>{qe();Q=class i extends Error{constructor(e,t,n=!1,r=!1){super(`${e}: ${t}`),Object.setPrototypeOf(this,i.prototype),this.code=e,this.isStatic=n,this.isDynamic=r,this.name="XPathError",Error.captureStackTrace&&Error.captureStackTrace(this,this.constructor)}getQName(){return`err:${this.code}`}getErrorURI(){return`${xi}#${this.code}`}},tt=class i extends Q{constructor(e,t){super(e,t,!0,!1),Object.setPrototypeOf(this,i.prototype),this.name="XPathStaticError"}},qn=class i extends Q{constructor(e,t){super(e,t,!1,!0),Object.setPrototypeOf(this,i.prototype),this.name="XPathDynamicError"}},Rr=class i extends qn{constructor(e,t){super(e,t),Object.setPrototypeOf(this,i.prototype),this.name="XPathTypeError"}}});var ve,Xi=g(()=>{O();Ie();ve=class extends x{constructor(e){super(),this.name=e}evaluate(e){if(!e.variables)throw wt(`$${this.name}`,"variable");if(!(this.name in e.variables))throw wt(`$${this.name}`,"variable");return e.variables[this.name]}toString(){return`$${this.name}`}}});var pe,Si=g(()=>{O();pe=class extends x{constructor(e,t,n=[]){super(),this.axis=e,this.nodeTest=t,this.predicates=n}evaluate(e){let t=e==null?void 0:e.node;if(!t&&this.axis==="self"&&(e==null?void 0:e.contextItem)!==void 0){let r=e.contextItem;return this.predicates.length===0?[r]:this.applyPredicatesToAtomicItem(r,e)}if(!t)return[];let n=this.getNodesByAxis(t,e);return n=n.filter(r=>this.matchesNodeTest(r,e)),n=this.applyPredicates(n,e),n}applyPredicatesToAtomicItem(e,t){let n=_(P({},t),{contextItem:e,position:1,size:1});for(let r of this.predicates){let s=r.evaluate(n);if(typeof s=="number"){if(s!==1)return[]}else if(!this.toBoolean(s))return[]}return[e]}getNodesByAxis(e,t){switch(this.axis){case"child":return this.getChildNodes(e);case"parent":return e.parentNode?[e.parentNode]:[];case"self":return[e];case"attribute":return e.attributes?Array.from(e.attributes):Array.from(e.childNodes||[]).filter(n=>n.nodeType===2);case"descendant":return this.getDescendants(e,!1);case"descendant-or-self":return this.getDescendants(e,!0);case"ancestor":return this.getAncestors(e,!1);case"ancestor-or-self":return this.getAncestors(e,!0);case"following-sibling":return this.getFollowingSiblings(e);case"preceding-sibling":return this.getPrecedingSiblings(e);case"following":return this.getFollowing(e);case"preceding":return this.getPreceding(e);case"namespace":return this.getNamespaceNodes(e);case"self-and-siblings":return t!=null&&t.nodeList?t.nodeList.filter(n=>n.nodeType!==2):[e];default:return[]}}getChildNodes(e){return Array.from(e.childNodes||[]).filter(n=>n.nodeType!==2)}getDescendants(e,t){let n=[];t&&n.push(e);let r=s=>{for(let o of this.getChildNodes(s))n.push(o),r(o)};return r(e),n}getAncestors(e,t){let n=[];t&&n.push(e);let r=e.parentNode;for(;r;)n.push(r),r=r.parentNode;return n}getFollowingSiblings(e){let t=[],n=e.nextSibling;for(;n;)t.push(n),n=n.nextSibling;return t}getPrecedingSiblings(e){let t=[],n=e.previousSibling;for(;n;)t.unshift(n),n=n.previousSibling;return t}getFollowing(e){let t=[],n=e.nextSibling;for(;n;)t.push(n),t.push(...this.getDescendants(n,!1)),n=n.nextSibling;let r=e.parentNode;for(;r;){for(n=r.nextSibling;n;)t.push(n),t.push(...this.getDescendants(n,!1)),n=n.nextSibling;r=r.parentNode}return t}getPreceding(e){let t=[],n=e.previousSibling;for(;n;){t.unshift(n);let s=this.getDescendants(n,!1);t.unshift(...s),n=n.previousSibling}let r=e.parentNode;for(;r;){for(n=r.previousSibling;n;){t.unshift(n);let s=this.getDescendants(n,!1);t.unshift(...s),n=n.previousSibling}r=r.parentNode}return t}getNamespaceNodes(e){var r,s;if(!e||e.nodeType!==1)return[];let t={},n=e;for(;n;){let o=Array.from(n.attributes||[]);for(let a of o){let c=a.nodeName||a.localName||"",u=(s=(r=a.nodeValue)!=null?r:a.textContent)!=null?s:"";if(c==="xmlns")""in t||(t[""]=u);else if(c.startsWith("xmlns:")){let l=c.substring(6);l in t||(t[l]=u)}}n=n.parentNode}return"xml"in t||(t.xml="http://www.w3.org/XML/1998/namespace"),Object.entries(t).map(([o,a])=>({nodeType:13,nodeName:o,localName:o,prefix:o,namespaceURI:a,namespaceUri:a,nodeValue:a,textContent:a,parentNode:e,ownerDocument:e.ownerDocument}))}matchesNodeTest(e,t,n=this.nodeTest){var o,a;let r=e.nodeType,s=(c,u)=>{var h,f;if(!u.includes(r))return!1;if(c.endsWith(":*")){let y=c.slice(0,-2),d=(h=t==null?void 0:t.namespaces)==null?void 0:h[y];return d?(e.namespaceURI||e.namespaceUri||"")===d:!1}let l=c.indexOf(":");if(l>0){let y=c.substring(0,l),d=c.substring(l+1),N=(f=t==null?void 0:t.namespaces)==null?void 0:f[y];if(!N)return!1;let b=e.localName||e.nodeName&&this.extractLocalName(e.nodeName),I=e.namespaceURI||e.namespaceUri||"";return b===d&&I===N}return(e.localName||this.extractLocalName(e.nodeName))===c};switch(n.type){case"wildcard":if(n.name&&n.name.endsWith(":*")){let u=n.name.slice(0,-2),l=(o=t==null?void 0:t.namespaces)==null?void 0:o[u];if(!l)return!1;let p=e.namespaceURI||e.namespaceUri||"";return(r===1||r===2||r===13)&&p===l}return r===1||r===2||r===13;case"name":return s(n.name,[1,2,13]);case"element":return r!==1?!1:!n.name||n.isWildcardName?!0:s(n.name,[1]);case"attribute":return r!==2?!1:!n.name||n.isWildcardName?!0:s(n.name,[2]);case"schema-element":return s(n.name,[1]);case"schema-attribute":return s(n.name,[2]);case"document-node":if(r!==9)return!1;if(!n.elementTest)return!0;let c=e.documentElement||Array.from(e.childNodes||[]).find(u=>u.nodeType===1);return c?this.matchesNodeTest(c,t,n.elementTest):!1;case"node-type":switch(n.nodeType){case"node":return!0;case"text":return r===3;case"comment":return r===8;case"processing-instruction":return r===7;default:return!1}case"processing-instruction":return r!==7?!1:n.target?((a=e.target)!=null?a:e.nodeName)===n.target:!0;default:return!1}}applyPredicates(e,t){let n=e;for(let r of this.predicates){let s=[],o=n.length;for(let a=0;a<n.length;a++){let c=_(P({},t),{node:n[a],position:a+1,size:o}),u=r.evaluate(c);typeof u=="number"?u===a+1&&s.push(n[a]):this.toBoolean(u)&&s.push(n[a])}n=s}return n}toBoolean(e){return typeof e=="boolean"?e:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"||Array.isArray(e)?e.length>0:!!e}extractLocalName(e){if(!e)return"";let t=e.indexOf(":");return t>0?e.substring(t+1):e}}});var he,Ai=g(()=>{O();he=class extends x{constructor(e,t=!1){super(),this.steps=e,this.absolute=t}evaluate(e){let t;if(this.absolute){let n=this.getDocumentRoot(e==null?void 0:e.node);t=n?[n]:[]}else e!=null&&e.node?t=[e.node]:(e==null?void 0:e.contextItem)!==void 0?t=[{__atomicContextItem:e.contextItem}]:t=[];for(let n of this.steps){let r=[];for(let s of t)if(s&&s.__atomicContextItem!==void 0){let o=_(P({},e),{contextItem:s.__atomicContextItem}),a=n.evaluate(o);r.push(...a)}else{let o=_(P({},e),{node:s}),a=n.evaluate(o);r.push(...a)}t=this.uniqueNodes(r)}return t}getDocumentRoot(e){if(!e)return null;let t=e;for(;t.parentNode;)t=t.parentNode;return t}uniqueNodes(e){let t=new Set,n=[];for(let r of e)t.has(r)||(t.add(r),n.push(r));return n}}});var Ot,Rt,Ci=g(()=>{O();Ot=class extends x{constructor(e,t){super(),this.expression=e,this.predicates=t||[]}evaluate(e){let t=this.expression.evaluate(e);Array.isArray(t)||(t=t==null?[]:[t]);for(let n of this.predicates)t=this.applyPredicate(t,n,e);return t}applyPredicate(e,t,n){let r=[];for(let s=0;s<e.length;s++){let o=e[s],a=_(P({},n),{node:(o==null?void 0:o.nodeType)!==void 0?o:n.node,position:s+1,size:e.length});this.testPredicate(t,a)&&r.push(o)}return r}testPredicate(e,t){let n=e.evaluate(t);return typeof n=="number"?n===t.position:this.toBoolean(n)}toBoolean(e){return typeof e=="boolean"?e:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"||Array.isArray(e)?e.length>0:e!=null}},Rt=class extends x{constructor(e,t){super(),this.filterExpr=e,this.pathExpr=t}evaluate(e){let t=this.filterExpr.evaluate(e);if(!Array.isArray(t))return[];let n=[];for(let r of t){let s=_(P({},e),{node:(r==null?void 0:r.nodeType)!==void 0?r:e.node}),o=this.pathExpr.evaluate(s);Array.isArray(o)?n.push(...o):o!=null&&n.push(o)}return n}}});var It,wi=g(()=>{O();It=class extends x{constructor(e,t){super(),this.operator=e,this.operand=t}evaluate(e){let t=this.operand.evaluate(e),n=this.atomize(t);if(n===null)return null;let r=this.toNumber(n);return this.operator==="+"?r:-r}atomize(e){return e==null?null:Array.isArray(e)?e.length===0?null:e[0]:e}toNumber(e){if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;if(typeof e=="string"){let t=e.trim();return t===""?NaN:Number(t)}return Number(e)}toString(){return`${this.operator}${this.operand.toString()}`}}});var nt,Oi=g(()=>{O();nt=class extends x{constructor(e,t,n){super(),this.left=e,this.right=t,this.operator=n}evaluate(e){let t=this.left.evaluate(e),n=this.right.evaluate(e);return this.compare(t,n,this.operator)}compare(e,t,n){let r=Array.isArray(e),s=Array.isArray(t);return r&&s?this.compareNodeSets(e,t,n):r?this.compareNodeSetToValue(e,t,n):s?this.compareValueToNodeSet(e,t,n):this.comparePrimitives(e,t,n)}compareNodeSets(e,t,n){for(let r of e){let s=this.getStringValue(r);for(let o of t){let a=this.getStringValue(o);if(this.comparePrimitives(s,a,n))return!0}}return!1}compareNodeSetToValue(e,t,n){for(let r of e){let s=typeof t=="number"?Number(this.getStringValue(r)):this.getStringValue(r);if(this.comparePrimitives(s,t,n))return!0}return!1}compareValueToNodeSet(e,t,n){for(let r of t){let s=typeof e=="number"?Number(this.getStringValue(r)):this.getStringValue(r);if(this.comparePrimitives(e,s,n))return!0}return!1}comparePrimitives(e,t,n){switch(n){case"=":return e==t;case"!=":return e!=t;case"<":return Number(e)<Number(t);case">":return Number(e)>Number(t);case"<=":return Number(e)<=Number(t);case">=":return Number(e)>=Number(t);default:throw new Error(`Unknown operator: ${n}`)}}getStringValue(e){if(!e)return"";if(e.nodeType===3||e.nodeType===2)return e.nodeValue||e.textContent||"";if(e.textContent!==void 0)return e.textContent;if(e.childNodes){let t="";for(let n of Array.from(e.childNodes))n.nodeType===3?t+=n.nodeValue||"":n.nodeType===1&&(t+=this.getStringValue(n));return t}return String(e)}}});var Be,Ri=g(()=>{O();Be=class extends x{constructor(e,t,n){super(),this.left=e,this.right=t,this.operator=n}evaluate(e){let t=this.left.evaluate(e),n=this.right.evaluate(e),r=this.atomize(t),s=this.atomize(n);if(r===null||s===null)return null;let o=this.toNumber(r),a=this.toNumber(s);switch(this.operator){case"+":return o+a;case"-":return o-a;case"*":return o*a;case"div":return o/a;case"idiv":if(a===0)throw new Error("XPDY0002: Integer division by zero");return Math.trunc(o/a);case"mod":if(a===0)throw new Error("XPDY0002: Modulo by zero");return o-Math.trunc(o/a)*a;default:throw new Error(`Unknown arithmetic operator: ${this.operator}`)}}atomize(e){return e==null?null:typeof e=="object"&&"numberValue"in e&&typeof e.numberValue=="function"?e.numberValue():Array.isArray(e)?e.length===0?null:this.atomize(e[0]):e}toNumber(e){if(typeof e=="number")return e;if(typeof e=="boolean")return e?1:0;if(typeof e=="string"){let t=e.trim();return t===""?NaN:Number(t)}return Number(e)}toString(){return`${this.left.toString()} ${this.operator} ${this.right.toString()}`}}});var rt,Ii=g(()=>{O();rt=class extends x{constructor(e,t,n){super(),this.left=e,this.right=t,this.operator=n}toBoolean(e){return e==null?!1:typeof e=="boolean"?e:Array.isArray(e)?e.length===0?!1:e.length===1?this.toBoolean(e[0]):!0:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"?e.length>0:!!e}evaluate(e){let t=this.toBoolean(this.left.evaluate(e));if(this.operator==="and")return t?this.toBoolean(this.right.evaluate(e)):!1;if(this.operator==="or")return t?!0:this.toBoolean(this.right.evaluate(e));throw new Error(`Unknown logical operator: ${this.operator}`)}}});var vt,vi=g(()=>{O();vt=class extends x{constructor(e,t,n){super(),this.test=e,this.thenExpr=t,this.elseExpr=n}toBoolean(e){return e==null?!1:typeof e=="boolean"?e:Array.isArray(e)?e.length===0?!1:e.length===1?this.toBoolean(e[0]):!0:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"?e.length>0:!!e}evaluate(e){return this.toBoolean(this.test.evaluate(e))?this.thenExpr.evaluate(e):this.elseExpr.evaluate(e)}}});var _t,_i=g(()=>{O();_t=class extends x{constructor(e,t){super(),this.bindings=e,this.returnExpr=t}evaluate(e){let t=e.variables?P({},e.variables):{},n=_(P({},e),{variables:t}),r=[];return this.evaluateBinding(0,n,r),r}evaluateBinding(e,t,n){var a;if(e>=this.bindings.length){let c=this.returnExpr.evaluate(t);this.appendResult(n,c);return}let r=this.bindings[e],s=this.normalizeSequence(r.expression.evaluate(t)),o=s.length;for(let c=0;c<o;c++){let u=s[c],l=_(P({},(a=t.variables)!=null?a:{}),{[r.variable]:u}),p=_(P({},t),{variables:l,node:this.resolveNode(u,t),position:c+1,size:o});this.evaluateBinding(e+1,p,n)}}normalizeSequence(e){return e==null?[]:Array.isArray(e)?e:[e]}appendResult(e,t){if(t!=null){if(Array.isArray(t)){e.push(...t);return}e.push(t)}}resolveNode(e,t){return e&&typeof e=="object"&&"nodeType"in e?e:t.node}}});var Mt,Mi=g(()=>{O();Mt=class extends x{constructor(e,t,n){super(),this.quantifier=e,this.bindings=t,this.satisfiesExpr=n}evaluate(e){let t=e.variables?P({},e.variables):{},n=_(P({},e),{variables:t});return this.quantifier==="some"?this.evaluateSome(0,n):this.evaluateEvery(0,n)}evaluateSome(e,t){var s;if(e>=this.bindings.length)return this.toBoolean(this.satisfiesExpr.evaluate(t));let n=this.bindings[e],r=this.normalizeSequence(n.expression.evaluate(t));for(let o=0;o<r.length;o++){let a=r[o],c=_(P({},(s=t.variables)!=null?s:{}),{[n.variable]:a}),u=_(P({},t),{variables:c,node:this.resolveNode(a,t),position:o+1,size:r.length});if(this.evaluateSome(e+1,u))return!0}return!1}evaluateEvery(e,t){var s;if(e>=this.bindings.length)return this.toBoolean(this.satisfiesExpr.evaluate(t));let n=this.bindings[e],r=this.normalizeSequence(n.expression.evaluate(t));if(r.length===0)return!0;for(let o=0;o<r.length;o++){let a=r[o],c=_(P({},(s=t.variables)!=null?s:{}),{[n.variable]:a}),u=_(P({},t),{variables:c,node:this.resolveNode(a,t),position:o+1,size:r.length});if(!this.evaluateEvery(e+1,u))return!1}return!0}normalizeSequence(e){return e==null?[]:Array.isArray(e)?e:[e]}resolveNode(e,t){return e&&typeof e=="object"&&"nodeType"in e?e:t.node}toBoolean(e){return e==null?!1:typeof e=="boolean"?e:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"||Array.isArray(e)?e.length>0:!!e}}});var R,me=g(()=>{qe();R=class{constructor(e,t=w,n,r){this.name=e;this.namespace=t;this.baseType=n;this.primitive=r}get qualifiedName(){return`{${this.namespace}}${this.name}`}}});var Ir={};We(Ir,{ITEM_TYPE:()=>it,OccurrenceIndicator:()=>_e,SequenceType:()=>ze,createAtomicSequenceType:()=>ot,createEmptySequenceType:()=>st,createItemSequenceType:()=>oe});function st(){return new ze("empty","ONE")}function oe(i,e="ONE"){return new ze(i,e)}function ot(i,e="ONE"){let t={name:i.name,namespace:i.namespace,atomicType:i,matches:n=>{if(n==null)return!1;try{return i.validate(n)}catch(r){return!1}}};return new ze(t,e)}var _e,ze,it,je=g(()=>{_e=(r=>(r.EXACTLY_ONE="ONE",r.ZERO_OR_ONE="?",r.ZERO_OR_MORE="*",r.ONE_OR_MORE="+",r))(_e||{}),ze=class{constructor(e,t="ONE"){if(e==="empty"&&t!=="ONE")throw new Error("empty-sequence() must have exactly one occurrence");this.itemType=e,this.occurrence=t}getItemType(){return this.itemType}getOccurrence(){return this.occurrence}isEmptySequence(){return this.itemType==="empty"}allowsZeroItems(){return this.isEmptySequence()||this.occurrence==="?"||this.occurrence==="*"}allowsMultipleItems(){return this.occurrence==="*"||this.occurrence==="+"}requiresItems(){return!this.allowsZeroItems()}toString(){if(this.isEmptySequence())return"empty-sequence()";let e=this.itemType.name,t=this.occurrence==="ONE"?"":this.occurrence;return e+t}getMinCardinality(){return this.isEmptySequence()||this.allowsZeroItems()?0:1}getMaxCardinality(){return this.allowsMultipleItems()?1/0:1}isCompatibleWith(e){if(e.isEmptySequence())return this.allowsZeroItems();let t=e.getMinCardinality(),n=e.getMaxCardinality(),r=this.getMinCardinality(),s=this.getMaxCardinality();if(t<r||n>s&&s!==1/0)return!1;if(this.itemType!=="empty"&&e.itemType!=="empty"){let o=this.itemType,a=e.itemType;return o.isWildcard?!0:o.name===a.name}return this.itemType==="empty"?e.isEmptySequence():!0}},it={name:"item()",isWildcard:!0,matches:()=>!0}});var xe,Bn,zn,jn,Yn,Gn,Qn,Hn,ic,ki=g(()=>{xe=class{constructor(e,t,n,r,s){this.name=e,this.nodeKind=t,this.nodeName=n,this.nodeType=r,this.isWildcardName=s}matches(e){return!(!e||typeof e!="object"||e.nodeType!==this.nodeKind||this.nodeName&&!this.isWildcardName&&e.localName!==this.nodeName&&e.nodeName!==this.nodeName||this.nodeType&&e.type!==this.nodeType)}},Bn=class extends xe{constructor(){super("node()","node")}matches(){return!0}},zn=class extends xe{constructor(e,t){let n=e?t?`element(${e}, ${t})`:`element(${e})`:"element()";super(n,"element",e,t,!e)}},jn=class extends xe{constructor(e,t){let n=e?t?`attribute(${e}, ${t})`:`attribute(${e})`:"attribute()";super(n,"attribute",e,t,!e)}},Yn=class extends xe{constructor(e){let t=e?`document-node(${e.name})`:"document-node()";super(t,"document",void 0,void 0,!0),this.elementTest=e}matches(e){return super.matches(e)?this.elementTest&&e.documentElement?this.elementTest.matches(e.documentElement):!0:!1}},Gn=class extends xe{constructor(){super("text()","text")}},Qn=class extends xe{constructor(){super("comment()","comment")}},Hn=class extends xe{constructor(e){let t=e?`processing-instruction(${e})`:"processing-instruction()";super(t,"processing-instruction",e,void 0,!e)}},ic={node:new Bn,element:new zn,attribute:new jn,documentNode:new Yn,text:new Gn,comment:new Qn,processingInstruction:new Hn}});var Kn={};We(Kn,{UnionItemType:()=>at,createUnionType:()=>Di,isUnionType:()=>Fi});function Di(...i){return new at(i)}function Fi(i){return i instanceof at}var at,kt=g(()=>{at=class i{constructor(e){this.isWildcard=!1;if(e.length===0)throw new Error("Union type must have at least one member type");if(e.length===1)throw new Error("Union type must have at least two member types (use the single type directly)");if(e.some(t=>t==="empty"))throw new Error("empty-sequence() cannot be used in union types");this.memberTypes=e,this.name=e.map(t=>t.name).join(" | ")}matches(e){return this.memberTypes.some(t=>t.matches(e))}getMemberTypes(){return[...this.memberTypes]}containsType(e){return this.memberTypes.some(t=>t.name===e)}flatten(){let e=[];for(let n of this.memberTypes)if(n instanceof i){let r=n.flatten();e.push(...r.memberTypes)}else e.push(n);let t=e.filter((n,r,s)=>s.findIndex(o=>o.name===n.name)===r);return new i(t)}getMostGeneralAtomicType(){let e=this.memberTypes.filter(s=>s.atomicType!==void 0).map(s=>s.atomicType);return e.length===0?void 0:e.some(s=>s.name==="string")?e.find(s=>s.name==="string"):e.some(s=>s.name==="double")?e.find(s=>s.name==="double"):e.some(s=>s.name==="decimal")?e.find(s=>s.name==="decimal"):e[0]}toString(){return this.name}}});function Vi(i,e){let{isUnionType:t}=(kt(),L(Kn));if(t(e))return e.matches(i);let n=e.isMapTest,r=e.isArrayTest,s=e.isFunctionTest;return n||r||s?e.matches(i):e.isWildcard?i!=null:e.matches(i)}function Ne(i,e){let t=Array.isArray(i)?i:[i].filter(c=>c!==void 0);if(t.length===0)return e.isEmptySequence()?{matches:!0,itemCount:0}:e.allowsZeroItems()?{matches:!0,itemCount:0}:{matches:!1,itemCount:0,reason:`Empty sequence not allowed by ${e.toString()}`};if(e.isEmptySequence())return{matches:!1,itemCount:t.length,reason:`Expected empty sequence but got ${t.length} item(s)`};let n=e.getItemType();if(n==="empty")return{matches:!1,itemCount:t.length,reason:"Expected empty sequence"};let r=n,s=t.findIndex(c=>!Vi(c,r));if(s!==-1){let c=t[s],u;try{typeof c=="object"&&c!==null?u=JSON.stringify(c):u=String(c)}catch(l){u="[complex value]"}return{matches:!1,itemCount:t.length,reason:`Item ${s} (${u}) does not match ${r.name}`}}let o=e.getOccurrence(),a=t.length;switch(o){case"ONE":return a===1?{matches:!0,itemCount:a}:{matches:!1,itemCount:a,reason:`Expected exactly one item but got ${a}`};case"?":return a<=1?{matches:!0,itemCount:a}:{matches:!1,itemCount:a,reason:`Expected zero or one item but got ${a}`};case"*":return{matches:!0,itemCount:a};case"+":return a>=1?{matches:!0,itemCount:a}:{matches:!1,itemCount:0,reason:"Expected one or more items but got none"};default:return{matches:!1,itemCount:a,reason:`Unknown occurrence indicator: ${o}`}}}var Jn=g(()=>{je()});function Li(i){return!i||typeof i!="object"?!1:typeof i.nodeType=="string"||typeof i.nodeName=="string"||typeof i.textContent=="string"}function $i(i){return!i.childNodes||i.childNodes.length===0?!1:i.childNodes.every(e=>e.nodeType==="element")}function Ui(i){if(i.typedValue!==void 0){if(i.type){let e=ae(i.type);return{value:i.typedValue,type:e}}return{value:i.typedValue,type:void 0}}if(i.type){let e=ae(i.type),t=Zn(i);if(e)try{return{value:e.cast(t),type:e}}catch(n){return{value:t,type:void 0}}}return{value:Zn(i),type:void 0}}function Zn(i){if(i.nodeType==="text"||i.nodeType==="attribute"||i.nodeType==="comment")return i.value||i.textContent||"";if(i.nodeType==="processing-instruction")return i.value||"";if(i.nodeType==="element"||i.nodeType==="document"){if(i.textContent)return i.textContent;if(!i.childNodes)return"";let e="";for(let t of i.childNodes)t.nodeType==="text"?e+=t.value||t.textContent||"":t.nodeType==="element"&&(e+=Zn(t));return e}return""}function er(i,e=!1){if(i==null)return{values:[],type:void 0,isEmpty:!0};if(Array.isArray(i)){let t=[],n,r=!1,s="";for(let o of i){let a=er(o,e);if(a.error){r=!0,s=a.error;break}t.push(...a.values),a.type&&!n&&(n=a.type)}return{values:t,type:n,isEmpty:t.length===0,error:r?s:void 0}}if(Li(i)){if(e&&$i(i))return{values:[],type:void 0,isEmpty:!1,error:"FOTY0012"};let{value:t,type:n}=Ui(i);return{values:t!==void 0?[t]:[],type:n,isEmpty:t===void 0}}return{values:[i],type:void 0,isEmpty:!1}}var vr=g(()=>{Me()});function B(i){return i&&typeof i=="object"&&i.__isMap===!0}var ct,ke=g(()=>{vr();Ie();ct=class{constructor(e){this.entries=e}evaluate(e){let t={};for(let n of this.entries){let r=n.key.evaluate(e),s=er(r);if(s.error)throw ie("atomic value","value with error","map key");if(s.isEmpty||s.values.length===0)throw ie("atomic value","empty sequence","map key");if(s.values.length>1)throw ie("single atomic value","sequence","map key");let o=s.values[0],a=String(o),c=n.value.evaluate(e);t[a]=c}return this.createMap(t)}createMap(e){let t=Object.create(null);return t.__isMap=!0,Object.assign(t,e),t}}});function H(i){return i&&typeof i=="object"&&i.__isArray===!0}function U(i){return{__isArray:!0,members:i}}function sc(i){return i.members.length}function _r(i,e){if(e<1||e>i.members.length)throw new Error(`FOAY0001: Array index ${e} out of bounds (array size: ${i.members.length})`);return i.members[e-1]}var ut,lt,De=g(()=>{ut=class{constructor(e){this.items=e}evaluate(e){let t=[];for(let n of this.items){let r=n.evaluate(e);t.push(r)}return U(t)}toString(){return`[${this.items.map(t=>t.toString()).join(", ")}]`}},lt=class{constructor(e){this.expr=e}evaluate(e){let t=this.expr.evaluate(e),n=this.toSequence(t);return U(n)}toSequence(e){return e==null?[]:Array.isArray(e)?e:H(e)?[e]:[e]}toString(){return`array { ${this.expr.toString()} }`}}});var Dt={};We(Dt,{createTypedArrayTest:()=>qi,createTypedMapTest:()=>Wi,isTypedArrayTest:()=>zi,isTypedMapTest:()=>Bi});function Wi(i,e){let t=i===null&&e===null;return{name:oc(i,e),isMapTest:!0,keyType:i,valueType:e,isWildcard:t,namespace:void 0,matches(r){if(!B(r))return!1;if(t)return!0;let s=Object.entries(r).filter(([o])=>!o.startsWith("_")&&!o.startsWith("__"));for(let[o,a]of s)if(i!==null&&!Ne(o,i).matches||e!==null&&!Ne(a,e).matches)return!1;return!0}}}function qi(i){let e=i===null;return{name:ac(i),isArrayTest:!0,memberType:i,isWildcard:e,namespace:void 0,matches(n){if(!H(n))return!1;if(e)return!0;let r=n.members||[];for(let s of r)if(!Ne(s,i).matches)return!1;return!0}}}function oc(i,e){if(i===null&&e===null)return"map(*)";let t=i?i.toString():"*",n=e?e.toString():"*";return`map(${t}, ${n})`}function ac(i){return i===null?"array(*)":`array(${i.toString()})`}function Bi(i){return i.isMapTest===!0}function zi(i){return i.isArrayTest===!0}var pt=g(()=>{ke();De();Jn()});var ji=g(()=>{Me()});var Ft,Vt,Lt,$t,ht=g(()=>{me();Ft=class extends R{constructor(){super("anyAtomicType",w)}validate(e){return e!=null&&typeof e!="object"}cast(e){return e}},Vt=class extends R{constructor(e){super("untypedAtomic",w,e,e)}validate(e){return typeof e=="string"}cast(e){return String(e)}},Lt=class extends R{constructor(e){super("string",w,e,void 0)}validate(e){return typeof e=="string"}cast(e){if(e==null)throw new Error("Cannot cast null or undefined to xs:string");return String(e)}},$t=class extends R{constructor(e){super("boolean",w,e,void 0)}validate(e){return typeof e=="boolean"}cast(e){if(typeof e=="boolean")return e;if(typeof e=="string"){let t=e.trim().toLowerCase();if(t==="true"||t==="1")return!0;if(t==="false"||t==="0")return!1;throw new Error(`Cannot cast "${e}" to xs:boolean`)}if(typeof e=="number"){if(e===0)return!1;if(e===1)return!0;throw new Error(`Cannot cast ${e} to xs:boolean`)}throw new Error(`Cannot cast ${typeof e} to xs:boolean`)}}});var Ut,Wt,qt,Bt,mt=g(()=>{me();Ut=class extends R{constructor(e){super("decimal",w,e,void 0)}validate(e){return typeof e=="number"?isFinite(e):!1}cast(e){if(typeof e=="number"&&isFinite(e))return e;if(typeof e=="string"){let t=parseFloat(e);if(!isFinite(t))throw new Error(`Cannot cast "${e}" to xs:decimal`);return t}if(typeof e=="boolean")return e?1:0;throw new Error(`Cannot cast ${typeof e} to xs:decimal`)}},Wt=class extends R{constructor(e){super("float",w,e,void 0)}validate(e){return typeof e=="number"}cast(e){if(typeof e=="number")return e;if(typeof e=="string"){if(e==="INF")return 1/0;if(e==="-INF")return-1/0;if(e==="NaN")return NaN;let t=parseFloat(e);if(isNaN(t))throw new Error(`Cannot cast "${e}" to xs:float`);return t}if(typeof e=="boolean")return e?1:0;throw new Error(`Cannot cast ${typeof e} to xs:float`)}},qt=class extends R{constructor(e){super("double",w,e,void 0)}validate(e){return typeof e=="number"}cast(e){if(typeof e=="number")return e;if(typeof e=="string"){if(e==="INF")return 1/0;if(e==="-INF")return-1/0;if(e==="NaN")return NaN;let t=parseFloat(e);if(isNaN(t))throw new Error(`Cannot cast "${e}" to xs:double`);return t}if(typeof e=="boolean")return e?1:0;throw new Error(`Cannot cast ${typeof e} to xs:double`)}},Bt=class extends R{constructor(e,t){super("integer",w,e,t)}validate(e){return typeof e=="number"&&Number.isInteger(e)&&isFinite(e)}cast(e){let t=this.baseType.cast(e),n=Math.trunc(t);if(!isFinite(n))throw new Error(`Cannot cast ${e} to xs:integer`);return n}}});function Yi(i){let e=i.match(/^(-)?P(?:(\d+)Y)?(?:(\d+)M)?(?:(\d+)D)?(?:T(?:(\d+)H)?(?:(\d+)M)?(?:(\d+(?:\.\d+)?)S)?)?$/);if(!e)throw new Error(`Invalid duration format: "${i}"`);if(!e.slice(2).some(s=>s!==void 0))throw new Error(`Invalid duration format: "${i}"`);let n=!!e[1],r=n?-1:1;return{negative:n,years:r*(parseInt(e[2])||0),months:r*(parseInt(e[3])||0),days:r*(parseInt(e[4])||0),hours:r*(parseInt(e[5])||0),minutes:r*(parseInt(e[6])||0),seconds:r*(parseFloat(e[7])||0)}}function Gi(i){let e=i.match(/^(\d{2}):(\d{2}):(\d{2}(?:\.\d+)?)(?:Z|([+-])(\d{2}):(\d{2}))?$/);if(!e)throw new Error(`Invalid time format: "${i}"`);let t=parseInt(e[1],10),n=parseInt(e[2],10),r=parseFloat(e[3]);if(t<0||t>23)throw new Error(`Invalid hours value: ${t}`);if(n<0||n>59)throw new Error(`Invalid minutes value: ${n}`);if(r<0||r>=60)throw new Error(`Invalid seconds value: ${r}`);let s;return e[4]&&(s={sign:e[4],hours:parseInt(e[5],10),minutes:parseInt(e[6],10)}),{hours:t,minutes:n,seconds:r,timezone:s}}var zt,jt,Yt,Gt,Ye=g(()=>{me();zt=class extends R{constructor(e){super("duration",w,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"years"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string")return Yi(e);throw new Error(`Cannot cast ${typeof e} to xs:duration`)}},jt=class extends R{constructor(e){super("dateTime",w,e,void 0)}validate(e){return e instanceof Date}cast(e){if(e instanceof Date)return e;if(typeof e=="string"){let t=new Date(e);if(isNaN(t.getTime()))throw new Error(`Invalid dateTime value: "${e}"`);return t}throw new Error(`Cannot cast ${typeof e} to xs:dateTime`)}},Yt=class extends R{constructor(e,t){super("date",w,e,t)}validate(e){return e instanceof Date}cast(e){let t=this.baseType.cast(e),n=new Date(t);return n.setHours(0,0,0,0),n}},Gt=class extends R{constructor(e,t){super("time",w,e,t)}validate(e){return typeof e=="object"&&e!==null&&"hours"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string")return Gi(e);throw new Error(`Cannot cast ${typeof e} to xs:time`)}}});var Qt,Ht,Kt,Jt,Zt,Ge=g(()=>{me();Qt=class extends R{constructor(e){super("gYearMonth",w,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"year"in e&&"month"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.match(/^(-?\d{4})-(\d{2})$/);if(!t)throw new Error(`Invalid gYearMonth format: "${e}"`);let n=parseInt(t[1],10),r=parseInt(t[2],10);if(r<1||r>12)throw new Error(`Invalid month value: ${r}`);return{year:n,month:r}}throw new Error(`Cannot cast ${typeof e} to xs:gYearMonth`)}},Ht=class extends R{constructor(e){super("gYear",w,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"year"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.match(/^(-?\d{4})$/);if(!t)throw new Error(`Invalid gYear format: "${e}"`);return{year:parseInt(t[1],10)}}throw new Error(`Cannot cast ${typeof e} to xs:gYear`)}},Kt=class extends R{constructor(e){super("gMonthDay",w,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"month"in e&&"day"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.match(/^--(\d{2})-(\d{2})$/);if(!t)throw new Error(`Invalid gMonthDay format: "${e}"`);let n=parseInt(t[1],10),r=parseInt(t[2],10);if(n<1||n>12)throw new Error(`Invalid month value: ${n}`);if(r<1||r>31)throw new Error(`Invalid day value: ${r}`);return{month:n,day:r}}throw new Error(`Cannot cast ${typeof e} to xs:gMonthDay`)}},Jt=class extends R{constructor(e){super("gDay",w,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"day"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.match(/^---(\d{2})$/);if(!t)throw new Error(`Invalid gDay format: "${e}"`);let n=parseInt(t[1],10);if(n<1||n>31)throw new Error(`Invalid day value: ${n}`);return{day:n}}throw new Error(`Cannot cast ${typeof e} to xs:gDay`)}},Zt=class extends R{constructor(e){super("gMonth",w,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"month"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.match(/^--(\d{2})$/);if(!t)throw new Error(`Invalid gMonth format: "${e}"`);let n=parseInt(t[1],10);if(n<1||n>12)throw new Error(`Invalid month value: ${n}`);return{month:n}}throw new Error(`Cannot cast ${typeof e} to xs:gMonth`)}}});var en,tn,tr=g(()=>{me();en=class extends R{constructor(e){super("hexBinary",w,e,void 0)}validate(e){return typeof e=="string"?/^[0-9A-Fa-f]*$/.test(e)&&e.length%2===0:e instanceof Uint8Array}cast(e){if(typeof e=="string"){if(!this.validate(e))throw new Error(`Invalid hexBinary format: "${e}"`);return e.toUpperCase()}if(e instanceof Uint8Array)return Array.from(e).map(t=>t.toString(16).padStart(2,"0")).join("").toUpperCase();throw new Error(`Cannot cast ${typeof e} to xs:hexBinary`)}},tn=class extends R{constructor(e){super("base64Binary",w,e,void 0)}validate(e){return typeof e=="string"?/^[A-Za-z0-9+/]*={0,2}$/.test(e)&&e.length%4===0:e instanceof Uint8Array}cast(e){if(typeof e=="string"){if(!this.validate(e))throw new Error(`Invalid base64Binary format: "${e}"`);return e}if(e instanceof Uint8Array){let t="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/",n="",r=0,s=e.length;for(;r<s;){let o=e[r++],a=r<s,c=a?e[r++]:0,u=r<s,l=u?e[r++]:0,p=o<<16|c<<8|l;n+=t[p>>18&63],n+=t[p>>12&63],n+=a?t[p>>6&63]:"=",n+=u?t[p&63]:"="}return n}throw new Error(`Cannot cast ${typeof e} to xs:base64Binary`)}}});var nn,rn,nr=g(()=>{me();nn=class extends R{constructor(e){super("anyURI",w,e,void 0)}validate(e){return typeof e=="string"}cast(e){if(typeof e=="string")return e;throw new Error(`Cannot cast ${typeof e} to xs:anyURI`)}},rn=class extends R{constructor(e){super("QName",w,e,void 0)}validate(e){return typeof e=="object"&&e!==null&&"localName"in e&&"namespaceURI"in e}cast(e){if(this.validate(e))return e;if(typeof e=="string"){let t=e.split(":");if(t.length===1)return{localName:t[0],namespaceURI:"",prefix:void 0};if(t.length===2)return{localName:t[1],namespaceURI:"",prefix:t[0]}}throw new Error(`Cannot cast ${typeof e} to xs:QName`)}}});var z,Mr=g(()=>{me();z=class extends R{constructor(t,n,r,s,o){super(t,w,n,r);this.min=s;this.max=o}validate(t){return!(typeof t!="number"||!Number.isInteger(t)||!isFinite(t)||!Number.isSafeInteger(t)||this.min!==void 0&&t<this.min||this.max!==void 0&&t>this.max)}cast(t){let n=this.baseType.cast(t);if(!Number.isSafeInteger(n))throw new Error(`Value ${n} is not a safe integer for ${this.name}`);if(this.min!==void 0&&n<this.min)throw new Error(`Value ${n} is below minimum ${this.min} for ${this.name}`);if(this.max!==void 0&&n>this.max)throw new Error(`Value ${n} is above maximum ${this.max} for ${this.name}`);return n}}});var ts={};We(ts,{ARRAY_NAMESPACE:()=>es,FN_NAMESPACE:()=>sn,MAP_NAMESPACE:()=>Zi,MATH_NAMESPACE:()=>on,createFunctionItem:()=>Qi,createFunctionTest:()=>Hi,createFunctionType:()=>Ki,describeFunctionType:()=>Ji,isFunctionItem:()=>ce});function Qi(i,e,t,n,r){return{__isFunctionItem:!0,implementation:i,arity:e,name:t,namespace:n,type:r}}function Hi(i=null,e=null,t){var o,a;let n=(o=t==null?void 0:t.isWildcard)!=null?o:i===null&&e===null,r=Array.isArray(i)?i.length:void 0;return{name:n?"function(*)":`function(${(a=i==null?void 0:i.map(c=>c.toString()).join(", "))!=null?a:""})`+(e?` as ${e.toString()}`:""),isFunctionTest:!0,isWildcard:n,parameterTypes:i!=null?i:void 0,returnType:e!=null?e:void 0,matches(c){if(c==null)return!1;let u=typeof c=="object"&&c.__isFunctionItem===!0||typeof c=="function",l=typeof c=="object"&&(c==null?void 0:c.__isMap)===!0,p=typeof c=="object"&&(c==null?void 0:c.__isArray)===!0;if(!u&&!l&&!p)return!1;if(n)return!0;if(r!==void 0){let h=l||p?1:typeof c=="function"?c.length:typeof(c==null?void 0:c.arity)=="number"?c.arity:void 0;if(h!==void 0&&h!==r)return!1}return!0}}}function ce(i){return i&&typeof i=="object"&&i.__isFunctionItem===!0}function Ki(i,e){return{kind:"function",parameterTypes:i,returnType:e,arity:i.length}}function Ji(i){return`function(${i.parameterTypes.map(t=>String(t)).join(", ")}) as ${i.returnType}`}var sn,on,Zi,es,an=g(()=>{sn="http://www.w3.org/2005/xpath-functions",on="http://www.w3.org/2005/xpath-functions/math",Zi="http://www.w3.org/2005/xpath-functions/map",es="http://www.w3.org/2005/xpath-functions/array"});var ns=g(()=>{});var rs=g(()=>{ns()});function ae(i){return Oc[i]}function A(i,e){let t=ae(e);if(!t)throw new Error(`Unknown atomic type: ${e}`);return t.cast(i)}var W,cc,uc,lc,K,pc,hc,mc,cn,fc,dc,yc,gc,xc,Nc,Ec,bc,Tc,Pc,Xc,rr,is,ss,os,Sc,as,Ac,kr,Cc,cs,us,ls,wc,Oc,Me=g(()=>{me();me();je();ki();Jn();pt();kt();ji();vr();ht();mt();Ye();Ye();Ge();tr();nr();Mr();an();rs();ht();ht();ht();ht();mt();mt();mt();mt();Ye();Ye();Ye();Ye();Ge();Ge();Ge();Ge();Ge();tr();tr();nr();nr();Mr();W=new Ft,cc=new Vt(W),uc=new Lt(W),lc=new $t(W),K=new Ut(W),pc=new Wt(W),hc=new qt(W),mc=new zt(W),cn=new jt(W),fc=new Yt(cn,cn),dc=new Gt(cn,cn),yc=new nn(W),gc=new rn(W),xc=new Qt(W),Nc=new Ht(W),Ec=new Kt(W),bc=new Jt(W),Tc=new Zt(W),Pc=new en(W),Xc=new tn(W),rr=new Bt(K,K),is=new z("long",rr,K,-9223372036854776e3,9223372036854776e3),ss=new z("int",is,K,-2147483648,2147483647),os=new z("short",ss,K,-32768,32767),Sc=new z("byte",os,K,-128,127),as=new z("nonPositiveInteger",rr,K,void 0,0),Ac=new z("negativeInteger",as,K,void 0,-1),kr=new z("nonNegativeInteger",rr,K,0,void 0),Cc=new z("positiveInteger",kr,K,1,void 0),cs=new z("unsignedLong",kr,K,0,18446744073709552e3),us=new z("unsignedInt",cs,K,0,4294967295),ls=new z("unsignedShort",us,K,0,65535),wc=new z("unsignedByte",ls,K,0,255),Oc={anyAtomicType:W,untypedAtomic:cc,string:uc,boolean:lc,decimal:K,float:pc,double:hc,integer:rr,duration:mc,dateTime:cn,date:fc,time:dc,anyURI:yc,QName:gc,gYearMonth:xc,gYear:Nc,gMonthDay:Ec,gDay:bc,gMonth:Tc,hexBinary:Pc,base64Binary:Xc,long:is,int:ss,short:os,byte:Sc,nonPositiveInteger:as,negativeInteger:Ac,nonNegativeInteger:kr,positiveInteger:Cc,unsignedLong:cs,unsignedInt:us,unsignedShort:ls,unsignedByte:wc}});var un,ps=g(()=>{Me();O();un=class extends x{constructor(t,n){super();this.expression=t;this.sequenceType=n}evaluate(t){let n=this.expression.evaluate(t);return Ne(n,this.sequenceType).matches}}});var ln,hs=g(()=>{Me();je();O();ln=class extends x{constructor(t,n){super();this.expression=t;this.sequenceType=n}evaluate(t){let n=this.expression.evaluate(t),r=Array.isArray(n)?n:n==null?[]:[n];if(r.length>1)return!1;if(r.length===0)return this.sequenceType.getOccurrence()==="?";let s=r[0],o=this.sequenceType.getItemType();if(o==="empty"||!o.atomicType)return!1;try{return A(s,o.atomicType.name),!0}catch(a){return!1}}}});var pn,ms=g(()=>{O();Jn();pn=class extends x{constructor(t,n){super();this.expression=t;this.sequenceType=n}evaluate(t){var s;let n=this.expression.evaluate(t),r=Ne(n,this.sequenceType);if(!r.matches){let o=(s=r.reason)!=null?s:`Value does not match ${this.sequenceType.toString()}`;throw new Error(`Treat expression type mismatch: ${o}`)}return n}}});var Ee,fs=g(()=>{O();Ee=class extends x{constructor(e,t){super(),this.left=e,this.right=t}evaluate(e){let t=this.left.evaluate(e),n=this.right.evaluate(e),r=Array.isArray(t)?t:[],s=Array.isArray(n)?n:[];return this.unionNodes(r,s)}unionNodes(e,t){let n=new Set,r=[];for(let s of e)n.has(s)||(n.add(s),r.push(s));for(let s of t)n.has(s)||(n.add(s),r.push(s));return this.sortByDocumentOrder(r)}sortByDocumentOrder(e){return e.sort((t,n)=>{if(t===n)return 0;if(typeof t.compareDocumentPosition=="function"){let r=t.compareDocumentPosition(n);if(r&4)return-1;if(r&2)return 1}return 0})}}});function Rc(i){let e;return i==null?e=[]:Array.isArray(i)?e=i:e=[i],{items:e,isEmpty:()=>e.length===0,first:()=>e[0],last:()=>e[e.length-1],length:()=>e.length}}function Ic(i){return i==null?[]:Array.isArray(i)?i:[i]}function vc(...i){let e=[];for(let t of i)Array.isArray(t)?e.push(...t):t!=null&&e.push(t);return e}function ds(i){return!i||typeof i!="object"?!1:typeof i.nodeType=="string"||typeof i.nodeName=="string"||typeof i.textContent=="string"}function _c(i){return ds(i)?`${i.nodeType}:${i.nodeName||i.localName||""}:${i.__id||""}`:String(i)}var hn,mn,fn,Dr,ys=g(()=>{O();hn=class extends x{constructor(t){super();this.operands=t;if(t.length<2)throw new Error("CommaExpression requires at least 2 operands")}evaluate(t){let n=[];for(let r of this.operands){let s=r.evaluate(t);Array.isArray(s)?n.push(...s):s!=null&&n.push(s)}return n.length>0?n:[]}getOperands(){return this.operands}toString(){return this.operands.map(t=>t.toString()).join(", ")}},mn=class extends x{constructor(t,n){super();this.startExpr=t;this.endExpr=n}evaluate(t){let n=this.startExpr.evaluate(t),r=this.endExpr.evaluate(t),s,o;try{let c=Array.isArray(n)?n[0]:n,u=Array.isArray(r)?r[0]:r;s=this.toInteger(c),o=this.toInteger(u)}catch(c){throw new Error(`Range expression operands must be integers: ${String(c)}`)}if(s>o)return[];let a=[];for(let c=s;c<=o;c++)a.push(c);return a}toInteger(t){if(typeof t=="number")return Math.trunc(t);if(typeof t=="string"){let n=parseInt(t,10);if(isNaN(n))throw new Error(`Cannot convert "${t}" to integer`);return n}if(typeof t=="boolean")return t?1:0;throw new Error(`Cannot convert ${typeof t} to integer`)}toString(){return`${this.startExpr.toString()} to ${this.endExpr.toString()}`}},fn=class extends x{evaluate(e){return[]}toString(){return"empty-sequence()"}},Dr=class extends x{constructor(t){super();this.operand=t}evaluate(t){return this.operand.evaluate(t)}getOperand(){return this.operand}toString(){return`(${this.operand.toString()})`}}});var dn,gs=g(()=>{O();dn=class extends x{constructor(e){super(),this.expression=e}evaluate(e){return this.expression.evaluate(e)}test(e){let t=this.evaluate(e);return typeof t=="number"?t===(e==null?void 0:e.position):this.toBoolean(t)}toBoolean(e){return typeof e=="boolean"?e:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"||Array.isArray(e)?e.length>0:!!e}}});var Fr,xs=g(()=>{O();Fr=class extends x{constructor(t,n,r){super();this.left=t;this.operator=n;this.right=r}evaluate(t){let n=this.left.evaluate(t),r=this.right.evaluate(t),s=this.atomize(n),o=this.atomize(r);if(s===void 0||o===void 0)throw new Error("Value comparison requires non-empty sequences");return this.compare(s,o,this.operator)}atomize(t){if(t!=null){if(Array.isArray(t)){if(t.length===0)return;if(t.length===1)return t[0];throw new Error("Value comparison requires single atomic values")}return this.isNode(t)?this.getNodeStringValue(t):t}}compare(t,n,r){let[s,o]=this.promoteTypes(t,n);switch(r){case"eq":return this.equal(s,o);case"ne":return!this.equal(s,o);case"lt":return this.lessThan(s,o);case"le":return this.lessThan(s,o)||this.equal(s,o);case"gt":return this.greaterThan(s,o);case"ge":return this.greaterThan(s,o)||this.equal(s,o);default:throw new Error(`Unknown comparison operator: ${r}`)}}promoteTypes(t,n){return typeof t=="number"&&typeof n=="number"?[t,n]:typeof t=="number"?[t,this.toNumber(n)]:typeof n=="number"?[this.toNumber(t),n]:typeof t=="string"&&typeof n=="string"?[t,n]:typeof t=="string"?[t,this.valueToString(n)]:typeof n=="string"?[this.valueToString(t),n]:typeof t=="boolean"||typeof n=="boolean"?[this.toBoolean(t),this.toBoolean(n)]:[t,n]}equal(t,n){return typeof t!=typeof n||typeof t=="number"&&isNaN(t)&&isNaN(n)?!1:t===n}lessThan(t,n){if(typeof t=="number"&&typeof n=="number"||typeof t=="string"&&typeof n=="string")return t<n;throw new Error(`Cannot compare ${typeof t} with ${typeof n}`)}greaterThan(t,n){if(typeof t=="number"&&typeof n=="number"||typeof t=="string"&&typeof n=="string")return t>n;throw new Error(`Cannot compare ${typeof t} with ${typeof n}`)}toNumber(t){if(typeof t=="number")return t;if(typeof t=="boolean")return t?1:0;if(typeof t=="string"){let n=parseFloat(t);return isNaN(n)?NaN:n}return NaN}valueToString(t){return typeof t=="string"?t:typeof t=="number"?String(t):typeof t=="boolean"?t?"true":"false":this.isNode(t)?this.getNodeStringValue(t):String(t)}toBoolean(t){return typeof t=="boolean"?t:typeof t=="number"?t!==0&&!isNaN(t):typeof t=="string"||Array.isArray(t)?t.length>0:!!t}isNode(t){return t&&typeof t=="object"&&("nodeType"in t||"nodeName"in t)}getNodeStringValue(t){return t.textContent!==void 0?String(t.textContent):t.nodeValue!==void 0?String(t.nodeValue):t.value!==void 0?String(t.value):""}toString(){return`${this.left.toString()} ${this.operator} ${this.right.toString()}`}}});var Vr,Ns=g(()=>{O();Vr=class extends x{constructor(t,n,r){super();this.left=t;this.operator=n;this.right=r}evaluate(t){let n=this.left.evaluate(t),r=this.right.evaluate(t),s=this.flatten(n),o=this.flatten(r);if(s.length===0||o.length===0)return!1;for(let a of s)for(let c of o)if(this.compareValues(a,c,this.operator))return!0;return!1}flatten(t){if(t==null)return[];if(Array.isArray(t)){let n=[];for(let r of t)r!=null&&n.push(r);return n}return[t]}compareValues(t,n,r){let s=this.getComparableValue(t),o=this.getComparableValue(n),[a,c]=this.promoteTypes(s,o);switch(r){case"=":return this.equal(a,c);case"!=":return!this.equal(a,c);case"<":return this.lessThan(a,c);case"<=":return this.lessThan(a,c)||this.equal(a,c);case">":return this.greaterThan(a,c);case">=":return this.greaterThan(a,c)||this.equal(a,c);default:throw new Error(`Unknown comparison operator: ${r}`)}}getComparableValue(t){if(t!=null)return this.isNode(t)?this.getNodeStringValue(t):t}promoteTypes(t,n){return typeof t=="number"&&typeof n=="number"?[t,n]:typeof t=="number"?[t,this.toNumber(n)]:typeof n=="number"?[this.toNumber(t),n]:typeof t=="string"&&typeof n=="string"?[t,n]:typeof t=="string"?[t,this.valueToString(n)]:typeof n=="string"?[this.valueToString(t),n]:typeof t=="boolean"||typeof n=="boolean"?[this.toBoolean(t),this.toBoolean(n)]:[t,n]}equal(t,n){return typeof t!=typeof n||typeof t=="number"&&isNaN(t)&&isNaN(n)?!1:t===n}lessThan(t,n){if(typeof t=="number"&&typeof n=="number"||typeof t=="string"&&typeof n=="string")return t<n;throw new Error(`Cannot compare ${typeof t} with ${typeof n}`)}greaterThan(t,n){if(typeof t=="number"&&typeof n=="number"||typeof t=="string"&&typeof n=="string")return t>n;throw new Error(`Cannot compare ${typeof t} with ${typeof n}`)}toNumber(t){if(typeof t=="number")return t;if(typeof t=="boolean")return t?1:0;if(typeof t=="string"){let n=parseFloat(t);return isNaN(n)?NaN:n}return NaN}valueToString(t){return typeof t=="string"?t:typeof t=="number"?String(t):typeof t=="boolean"?t?"true":"false":this.isNode(t)?this.getNodeStringValue(t):String(t)}toBoolean(t){return typeof t=="boolean"?t:typeof t=="number"?t!==0&&!isNaN(t):typeof t=="string"||Array.isArray(t)?t.length>0:!!t}isNode(t){return t&&typeof t=="object"&&("nodeType"in t||"nodeName"in t)}getNodeStringValue(t){return t.textContent!==void 0?String(t.textContent):t.nodeValue!==void 0?String(t.nodeValue):t.value!==void 0?String(t.value):""}toString(){return`${this.left.toString()} ${this.operator} ${this.right.toString()}`}}});var Lr,Es=g(()=>{O();Lr=class extends x{constructor(t,n,r){super();this.left=t;this.operator=n;this.right=r}evaluate(t){let n=this.left.evaluate(t),r=this.right.evaluate(t),s=this.extractNode(n),o=this.extractNode(r);if(!this.isNode(s)||!this.isNode(o))throw new Error("Node comparison requires node operands");switch(this.operator){case"is":return this.isIdentical(s,o);case"<<":return this.isDocumentOrderBefore(s,o);case">>":return this.isDocumentOrderAfter(s,o);default:throw new Error(`Unknown node comparison operator: ${this.operator}`)}}extractNode(t){if(t!=null){if(this.isNode(t))return t;if(Array.isArray(t))return t.length===0?void 0:(t.length===1,t[0])}}isIdentical(t,n){return t.__id!==void 0&&n.__id!==void 0?t.__id===n.__id:t===n}isDocumentOrderBefore(t,n){let r=this.getDocumentPosition(t),s=this.getDocumentPosition(n);return r!==-1&&s!==-1?r<s:this.compareDocumentOrder(t,n)<0}isDocumentOrderAfter(t,n){let r=this.getDocumentPosition(t),s=this.getDocumentPosition(n);return r!==-1&&s!==-1?r>s:this.compareDocumentOrder(t,n)>0}getDocumentPosition(t){return t.__documentPosition!==void 0?t.__documentPosition:-1}compareDocumentOrder(t,n){if(t===n)return 0;let r=this.getAncestors(t),s=this.getAncestors(n),o=0;for(;o<r.length&&o<s.length&&r[o]===s[o];)o++;if(o===r.length)return-1;if(o===s.length)return 1;let a=r[o],c=s[o],u=this.getChildPosition(a),l=this.getChildPosition(c);return u<l?-1:u>l?1:0}getAncestors(t){let n=[t],r=t;for(;r&&r.parentNode;)r=r.parentNode,n.unshift(r);return n}getChildPosition(t){if(!t.parentNode)return 0;let r=t.parentNode.childNodes||[];for(let s=0;s<r.length;s++)if(r[s]===t)return s;return-1}isNode(t){return t&&typeof t=="object"&&("nodeType"in t||"nodeName"in t)}toString(){return`${this.left.toString()} ${this.operator} ${this.right.toString()}`}}});var be,yn=g(()=>{qe();be=class{constructor(){this.elementId=0}convert(e,t){if(e==null)return null;typeof e!="string"&&(e=String(e));let n=e.trim();if(n==="")return null;try{let r=JSON.parse(n);return this.createDocumentNode(r,t)}catch(r){if(t!=null&&t.fallback&&typeof t.fallback=="function")try{let s=t.fallback(n);return this.createDocumentNode(s,t)}catch(s){return null}return t!=null&&t.liberal?this.liberalParse(n,t):null}}createDocumentNode(e,t){this.elementId=0;let n=this.valueToElement(e,"root",t),r={nodeType:ge.DOCUMENT_NODE,nodeName:"#document",localName:"#document",childNodes:[n],documentElement:n};return n.ownerDocument=r,r}valueToElement(e,t,n,r){let s={nodeType:ge.ELEMENT_NODE,nodeName:t,localName:t,childNodes:[],attributes:[]};if(e==null)return s;if(typeof e=="object"&&!Array.isArray(e)){let o=[],a=new Set;for(let c in e)if(Object.prototype.hasOwnProperty.call(e,c)){if(a.has(c)){if((n==null?void 0:n.duplicates)==="reject")throw new Error(`Duplicate key: ${c}`);if((n==null?void 0:n.duplicates)==="use-first")continue}a.add(c);let u=this.sanitizeElementName(c),l=this.valueToElement(e[c],u,n,s);o.push(l)}s.childNodes=o}else if(Array.isArray(e)){let o=e.map((a,c)=>this.valueToElement(a,"item",n,s));s.childNodes=o}else if(typeof e=="string"){let o={nodeType:ge.TEXT_NODE,nodeName:"#text",localName:"#text",textContent:e};s.childNodes=[o],s.textContent=e}else if(typeof e=="number"){let o=String(e),a={nodeType:ge.TEXT_NODE,nodeName:"#text",localName:"#text",textContent:o};s.childNodes=[a],s.textContent=o}else if(typeof e=="boolean"){let o=e?"true":"false",a={nodeType:ge.TEXT_NODE,nodeName:"#text",localName:"#text",textContent:o};s.childNodes=[a],s.textContent=o}return s}sanitizeElementName(e){if(/^[a-zA-Z_][\w.-]*$/.test(e))return e;let t=e.replace(/[^a-zA-Z0-9_.-]/g,"_");return/^[a-zA-Z_]/.test(t)||(t="_"+t),(!t||t==="_")&&(t="item"),t}liberalParse(e,t){try{let n=e.replace(/,(\s*[}\]])/g,"$1");n=n.replace(/'/g,'"');let r=JSON.parse(n);return this.createDocumentNode(r,t)}catch(n){return null}}}});function bs(i,e,t){if(!ce(t))throw new Error("fn:for-each: second argument must be a function");let n=t;if(e==null)return[];let r=Array.isArray(e)?e:[e],s=[];for(let o of r){let a=n.implementation(o);Array.isArray(a)?s.push(...a):a!=null&&s.push(a)}return s.length===0?[]:s}function Ts(i,e,t){if(!ce(t))throw new Error("fn:filter: second argument must be a function");let n=t;if(e==null)return[];let s=(Array.isArray(e)?e:[e]).filter(o=>!!n.implementation(o));return s.length===0?[]:s}function Ps(i,e,t,n){if(!ce(n))throw new Error("fn:fold-left: third argument must be a function");let r=n;if(e==null)return t;let s=Array.isArray(e)?e:[e],o=t;for(let a of s)o=r.implementation(o,a);return o}function Xs(i,e,t,n){if(!ce(n))throw new Error("fn:fold-right: third argument must be a function");let r=n;if(e==null)return t;let s=Array.isArray(e)?e:[e],o=t;for(let a=s.length-1;a>=0;a--)o=r.implementation(s[a],o);return o}function Ss(i,e,t,n){if(!ce(n))throw new Error("fn:for-each-pair: third argument must be a function");let r=n;if(e==null||t===null||t===void 0)return[];let s=Array.isArray(e)?e:[e],o=Array.isArray(t)?t:[t],a=[],c=Math.min(s.length,o.length);for(let u=0;u<c;u++){let l=r.implementation(s[u],o[u]);Array.isArray(l)?a.push(...l):l!=null&&a.push(l)}return a.length===0?[]:a}function As(i,e,t){if(!ce(e))throw new Error("fn:apply: first argument must be a function");let n=e;if(t==null)return n.implementation();let r=Array.isArray(t)?t:[t];return n.implementation(...r)}function Cs(i,e){if(!ce(e))throw new Error("fn:function-name: argument must be a function");let t=e;return t.name?t.namespace?`Q{${t.namespace}}${t.name}`:t.name:null}function ws(i,e){if(!ce(e))throw new Error("fn:function-arity: argument must be a function");return e.arity}var Os=g(()=>{an()});function Rs(i){return Math.PI}function Is(i,e){let t=j(e);return Math.exp(t)}function vs(i,e){let t=j(e);return Math.pow(10,t)}function _s(i,e){let t=j(e);return Math.log(t)}function Ms(i,e){let t=j(e);return Math.log10(t)}function ks(i,e,t){let n=j(e),r=j(t);return Math.pow(n,r)}function Ds(i,e){let t=j(e);return Math.sqrt(t)}function Fs(i,e){let t=j(e);return Math.sin(t)}function Vs(i,e){let t=j(e);return Math.cos(t)}function Ls(i,e){let t=j(e);return Math.tan(t)}function $s(i,e){let t=j(e);return Math.asin(t)}function Us(i,e){let t=j(e);return Math.acos(t)}function Ws(i,e){let t=j(e);return Math.atan(t)}function qs(i,e,t){let n=j(e),r=j(t);return Math.atan2(n,r)}function j(i){return i==null?NaN:Array.isArray(i)?i.length===0?NaN:j(i[0]):Number(i)}var Bs=g(()=>{});function $r(i){return i==null?null:Array.isArray(i)?i.length>0?i[0]:null:i}function Ur(i){return i==null?[]:Array.isArray(i)?i.length>1?i.slice(1):[]:[]}function zs(i){return ir(i)}function js(i){let e=ir(i);if(e.length>1)throw ie("zero or one item",`sequence of ${e.length} items`,"fn:zero-or-one");return e.length===0?null:e[0]}function Ys(i){let e=ir(i);if(e.length===0)throw ie("one or more items","empty sequence","fn:one-or-more");return e}function Gs(i){let e=ir(i);if(e.length!==1)throw ie("exactly one item",e.length===0?"empty sequence":`sequence of ${e.length} items`,"fn:exactly-one");return e[0]}function ir(i){return i==null?[]:Array.isArray(i)?i:[i]}var Wr=g(()=>{Ie()});function Hs(i,e){let t=Array.isArray(e)?e:e?[e]:[];return t.length===0?[]:t.filter(n=>ft(n)?!t.some(r=>!ft(r)||n===r?!1:Zs(n,r)):!1)}function Ks(i,e){let t=Array.isArray(e)?e:e?[e]:[];return t.length===0?[]:t.filter(n=>ft(n)?!t.some(r=>!ft(r)||n===r?!1:Zs(r,n)):!1)}function Js(i,e,t,n){let r=Array.isArray(e)?e:e?[e]:[];if(r.length<=1)return e;let s=r.map((o,a)=>({item:o,index:a}));return n&&typeof n=="object"&&n.__isFunctionItem?s.sort((o,a)=>{let c=n.implementation(o.item),u=n.implementation(a.item);return Qs(c,u)}):s.sort((o,a)=>Qs(o.item,a.item)),s.map(o=>o.item)}function ft(i){return i!=null&&typeof i=="object"&&("nodeType"in i||"localName"in i)}function Zs(i,e){if(!ft(i)||!ft(e))return!1;let t=e.parent||e.parentNode,n=0,r=1e4,s=new Set;for(;t&&n<r&&!s.has(t);){if(s.add(t),t===i)return!0;t=t.parent||t.parentNode,n++}return!1}function Qs(i,e){if(Array.isArray(i)&&i.length>0&&(i=i[0]),Array.isArray(e)&&e.length>0&&(e=e[0]),i==null&&e==null)return 0;if(i==null)return-1;if(e==null)return 1;if(typeof i=="number"&&typeof e=="number")return i-e;let t=String(i),n=String(e);return t.localeCompare(n)}var eo=g(()=>{Wr()});function to(i,e){let t=String(e);if(typeof process!="undefined"&&process.env){let n=process.env[t];return n!==void 0?n:null}return null}function no(i){return typeof process!="undefined"&&process.env?Object.keys(process.env):[]}var ro=g(()=>{});function oo(i,e,t,n){let r=e==null?"":String(e),s=String(t),o=n?String(n):"";try{let a="";o.includes("i")&&(a+="i"),o.includes("m")&&(a+="m"),o.includes("s")&&(a+="s"),o.includes("x")&&(a+="x");let c=new RegExp(s,a+"g"),u=[],l=0,p;for(;(p=c.exec(r))!==null;)p.index>l&&u.push({type:"non-match",value:r.substring(l,p.index)}),u.push({type:"match",value:p[0],groups:p.slice(1).map(h=>h||"")}),l=c.lastIndex;return l<r.length&&u.push({type:"non-match",value:r.substring(l)}),u.length===0&&u.push({type:"non-match",value:r}),u}catch(a){throw new Error(`Invalid regular expression: ${s}`)}}function ao(i,e,t,n){if(e==null)return"";let r=Array.isArray(e)?e.length>0?Number(e[0]):0:Number(e),s=String(t),o=Math.floor(r),a=o<0,c=Math.abs(o);if(s==="1")return String(o);if(s==="01")return String(Math.abs(o)).padStart(2,"0");if(s==="a")return io(c,"a");if(s==="A")return io(c,"A");if(s==="i")return so(c).toLowerCase();if(s==="I")return so(c);if(s==="w")return qr(c);if(s==="W")return qr(c).replace(/^\w/,l=>l.toUpperCase());let u=s.match(/^(0+)$/);if(u){let l=u[1].length;return String(c).padStart(l,"0")}return String(o)}function co(i,e,t,n){if(e==null)return"NaN";let r=Array.isArray(e)?e.length>0?Number(e[0]):NaN:Number(e);if(isNaN(r))return"NaN";if(!isFinite(r))return r>0?"Infinity":"-Infinity";let o=String(t).split("."),a=o[0]||"0",c=o[1]||"",u=(a.match(/0/g)||[]).length,l=(c.match(/0/g)||[]).length,p=c.length,h;if(l>0||p>0){let N=Math.max(l,Math.min(p,6));h=r.toFixed(N)}else h=String(Math.round(r));let[f,y]=h.split("."),d=f.padStart(u,"0");return y!==void 0?`${d}.${y}`:d}function io(i,e){if(i<=0)return"";let t=e.charCodeAt(0),n="",r=i;for(;r>0;)r--,n=String.fromCharCode(t+r%26)+n,r=Math.floor(r/26);return n}function so(i){if(i<=0||i>=4e3)return String(i);let e=[{value:1e3,numeral:"M"},{value:900,numeral:"CM"},{value:500,numeral:"D"},{value:400,numeral:"CD"},{value:100,numeral:"C"},{value:90,numeral:"XC"},{value:50,numeral:"L"},{value:40,numeral:"XL"},{value:10,numeral:"X"},{value:9,numeral:"IX"},{value:5,numeral:"V"},{value:4,numeral:"IV"},{value:1,numeral:"I"}],t="",n=i;for(let{value:r,numeral:s}of e)for(;n>=r;)t+=s,n-=r;return t}function qr(i){if(i===0)return"zero";if(i<0)return"negative "+qr(-i);let e=["","one","two","three","four","five","six","seven","eight","nine"],t=["ten","eleven","twelve","thirteen","fourteen","fifteen","sixteen","seventeen","eighteen","nineteen"],n=["","","twenty","thirty","forty","fifty","sixty","seventy","eighty","ninety"],r=["","thousand","million","billion","trillion"],s="",o=0;for(;i>0;){let a=i%1e3;a!==0&&(s=Lc(a,e,t,n)+(r[o]?" "+r[o]:"")+(s?" ":"")+s),i=Math.floor(i/1e3),o++}return s.trim()}function Lc(i,e,t,n){let r="",s=Math.floor(i/100);s>0&&(r+=e[s]+" hundred");let o=i%100;if(o>=20){r&&(r+=" ");let a=Math.floor(o/10),c=o%10;r+=n[a],c>0&&(r+=" "+e[c])}else o>=10?(r&&(r+=" "),r+=t[o-10]):o>0&&(r&&(r+=" "),r+=e[o]);return r}var uo=g(()=>{});function Y(i,e){if(Array.isArray(i)&&!H(i))if(i.length===1)i=i[0];else throw i.length===0?new Error(`XPTY0004: ${e} requires an array, got empty sequence`):new Error(`XPTY0004: ${e} requires a single array, got sequence of ${i.length} items`);if(!H(i))throw new Error(`XPTY0004: ${e} requires an array, got ${typeof i}`);return i}function lo(i,e,t){if(!Number.isInteger(e))throw new Error(`XPTY0004: ${t} position must be an integer, got ${e}`);if(e<1||e>i.members.length)throw new Error(`FOAY0001: ${t} position ${e} is out of bounds (array size: ${i.members.length})`)}function po(i,e){return Y(e,"array:size").members.length}function ho(i,e,t){let n=Y(e,"array:get");return lo(n,t,"array:get"),n.members[t-1]}function mo(i,e,t,n){let r=Y(e,"array:put");lo(r,t,"array:put");let s=[...r.members];return s[t-1]=n,U(s)}function fo(i,e,t){let n=Y(e,"array:append");return U([...n.members,t])}function yo(i,e,t,n){let r=Y(e,"array:subarray");if(!Number.isInteger(t))throw new Error(`XPTY0004: array:subarray start must be an integer, got ${t}`);if(t<1)throw new Error(`FOAY0001: array:subarray start ${t} must be >= 1`);if(t>r.members.length+1)throw new Error(`FOAY0001: array:subarray start ${t} is out of bounds (array size: ${r.members.length})`);let s=t-1;if(n===void 0)return U(r.members.slice(s));if(!Number.isInteger(n))throw new Error(`XPTY0004: array:subarray length must be an integer, got ${n}`);if(n<0)throw new Error(`FOAY0002: array:subarray length ${n} must be >= 0`);if(s+n>r.members.length)throw new Error(`FOAY0001: array:subarray range [${t}, ${t+n-1}] exceeds array bounds`);return U(r.members.slice(s,s+n))}function go(i,e,t){let n=Y(e,"array:remove"),r=Array.isArray(t)?t:[t];for(let a of r){if(!Number.isInteger(a))throw new Error(`XPTY0004: array:remove position must be an integer, got ${a}`);if(a<1||a>n.members.length)throw new Error(`FOAY0001: array:remove position ${a} is out of bounds (array size: ${n.members.length})`)}let s=new Set(r.map(a=>a-1)),o=n.members.filter((a,c)=>!s.has(c));return U(o)}function xo(i,e,t,n){let r=Y(e,"array:insert-before");if(!Number.isInteger(t))throw new Error(`XPTY0004: array:insert-before position must be an integer, got ${t}`);if(t<1||t>r.members.length+1)throw new Error(`FOAY0001: array:insert-before position ${t} is out of bounds (valid range: 1 to ${r.members.length+1})`);let s=[...r.members];return s.splice(t-1,0,n),U(s)}function No(i,e){let t=Y(e,"array:head");if(t.members.length===0)throw new Error("FOAY0001: array:head called on empty array");return t.members[0]}function Eo(i,e){let t=Y(e,"array:tail");if(t.members.length===0)throw new Error("FOAY0001: array:tail called on empty array");return U(t.members.slice(1))}function bo(i,e){let t=Y(e,"array:reverse");return U([...t.members].reverse())}function To(i,e){let t=Array.isArray(e)?e:[e],n=[];for(let r of t){if(r==null)continue;let s=Y(r,"array:join");n.push(...s.members)}return U(n)}function Po(i,e){let t=[],n=r=>{if(H(r))for(let s of r.members)n(s);else if(Array.isArray(r))for(let s of r)n(s);else t.push(r)};return n(e),t}function Xo(i,e,t){let n=Y(e,"array:for-each");if(!t||typeof t!="function"&&!t.__isFunctionItem)throw new Error("XPTY0004: array:for-each requires a function as second argument");let r=t.__isFunctionItem?t.implementation:t,s=n.members.map((o,a)=>r(o));return U(s)}function So(i,e,t){let n=Y(e,"array:filter");if(!t||typeof t!="function"&&!t.__isFunctionItem)throw new Error("XPTY0004: array:filter requires a function as second argument");let r=t.__isFunctionItem?t.implementation:t,s=n.members.filter(o=>{let a=r(o);return typeof a=="boolean"?a:typeof a=="number"?a!==0&&!isNaN(a):typeof a=="string"||Array.isArray(a)?a.length>0:!!a});return U(s)}function Ao(i,e,t,n){let r=Y(e,"array:fold-left");if(!n||typeof n!="function"&&!n.__isFunctionItem)throw new Error("XPTY0004: array:fold-left requires a function as third argument");let s=n.__isFunctionItem?n.implementation:n,o=t;for(let a of r.members)o=s(o,a);return o}function Co(i,e,t,n){let r=Y(e,"array:fold-right");if(!n||typeof n!="function"&&!n.__isFunctionItem)throw new Error("XPTY0004: array:fold-right requires a function as third argument");let s=n.__isFunctionItem?n.implementation:n,o=t;for(let a=r.members.length-1;a>=0;a--)o=s(r.members[a],o);return o}function wo(i,e,t,n){let r=Y(e,"array:sort"),s=n&&(n.__isFunctionItem?n.implementation:n),o=r.members.map((a,c)=>({member:a,idx:c}));return o.sort((a,c)=>{let u=s?s(a.member):a.member,l=s?s(c.member):c.member;if(Array.isArray(u)&&(u=u[0]),Array.isArray(l)&&(l=l[0]),typeof u=="number"&&typeof l=="number")return u-l;let p=String(u!=null?u:""),h=String(l!=null?l:""),f=p.localeCompare(h);return f!==0?f:a.idx-c.idx}),U(o.map(a=>a.member))}var Oo=g(()=>{De()});function Fe(i,e){if(Array.isArray(i)&&!B(i))if(i.length===1)i=i[0];else throw i.length===0?new Error(`XPTY0004: ${e} requires a map, got empty sequence`):new Error(`XPTY0004: ${e} requires a single map, got sequence of ${i.length} items`);if(!B(i))throw new Error(`XPTY0004: ${e} requires a map, got ${typeof i}`);return i}function Ro(i){let e=Object.create(null);return e.__isMap=!0,Object.assign(e,i),e}function Io(i,e){let t=Fe(e,"map:size");return Object.keys(t).filter(n=>!n.startsWith("__")).length}function vo(i,e){let t=Fe(e,"map:keys");return Object.keys(t).filter(n=>!n.startsWith("__"))}function _o(i,e,t){let n=Fe(e,"map:contains"),r=String(t);return Object.prototype.hasOwnProperty.call(n,r)}function Mo(i,e,t){let n=Fe(e,"map:get"),r=String(t);if(Object.prototype.hasOwnProperty.call(n,r))return n[r]}function ko(i,e,t,n){let r=Fe(e,"map:put"),s=String(t),o=Ro(r);return o[s]=n,o}function Do(i,e,t){let n=String(e),r=Object.create(null);return r.__isMap=!0,r[n]=t,r}function Fo(i,e,t){let n=Array.isArray(e)?e:[e],r="use-last";t&&B(t)&&t.duplicates!==void 0&&(r=String(t.duplicates));let s=["use-first","use-last","combine","reject"];if(!s.includes(r))throw new Error(`XPST0003: Invalid duplicates option '${r}'. Must be one of: ${s.join(", ")}`);let o=Object.create(null);o.__isMap=!0;let a={};for(let c of n){let u=Fe(c,"map:merge");for(let l of Object.keys(u))l.startsWith("__")||(a[l]||(a[l]=0),a[l]++,r==="use-first"?l in o||(o[l]=u[l]):r==="use-last"?o[l]=u[l]:r==="combine"?l in o?Array.isArray(o[l])?o[l].push(u[l]):o[l]=[o[l],u[l]]:o[l]=u[l]:r==="reject"&&(o[l]=u[l]))}if(r==="reject"){for(let c in a)if(a[c]>1)throw new Error(`XUST0003: Duplicate key '${c}' found in map:merge with duplicates='reject'`)}return o}function Vo(i,e,t){let n=Fe(e,"map:for-each");if(!t||typeof t!="function"&&!t.__isFunctionItem)throw new Error("XPTY0004: map:for-each requires a function as second argument");let r=t.__isFunctionItem?t.implementation:t,s=Object.create(null);s.__isMap=!0;for(let o of Object.keys(n)){if(o.startsWith("__"))continue;let a=n[o];s[o]=r(o,a)}return s}function Lo(i,e,t){let n=Fe(e,"map:remove"),r=Array.isArray(t)?t:[t],s=new Set(r.map(a=>String(a))),o=Ro(n);for(let a of Array.from(s))Object.prototype.hasOwnProperty.call(o,a)&&delete o[a];return o}var $o=g(()=>{ke()});function zr(i){if(i===null)return null;if(Array.isArray(i))return U(i.map(zr));if(typeof i=="object"){let e=Object.create(null);e.__isMap=!0;for(let[t,n]of Object.entries(i))e[t]=zr(n);return e}if(typeof i=="string"||typeof i=="number"||typeof i=="boolean")return i;throw new Q("FOJS0001","Unsupported JSON value type")}function qc(i){let e="",t=0,n=!1,r="",s=!1;for(;t<i.length;){let o=i[t],a=t+1<i.length?i[t+1]:"";if(n){if(s){e+=o,s=!1,t++;continue}if(o==="\\"){e+=o,s=!0,t++;continue}if(o===r){e+='"',n=!1,t++;continue}r==="'"&&o==='"'?e+='\\"':e+=o,t++;continue}if(o==='"'||o==="'"){n=!0,r=o,e+='"',t++;continue}if(o==="/"&&a==="/"){for(t+=2;t<i.length&&i[t]!==`
|
|
3
|
+
`&&i[t]!=="\r";)t++;continue}if(o==="/"&&a==="*"){for(t+=2;t<i.length-1;){if(i[t]==="*"&&i[t+1]==="/"){t+=2;break}t++}continue}if(o===","){let c=t+1;for(;c<i.length&&/[\s\n\r\t]/.test(i[c]);)c++;for(;c<i.length;)if(i[c]==="/"&&c+1<i.length&&i[c+1]==="/"){for(c+=2;c<i.length&&i[c]!==`
|
|
4
|
+
`&&i[c]!=="\r";)c++;for(;c<i.length&&/[\s\n\r\t]/.test(i[c]);)c++}else if(i[c]==="/"&&c+1<i.length&&i[c+1]==="*"){for(c+=2;c<i.length-1;){if(i[c]==="*"&&i[c+1]==="/"){c+=2;break}c++}for(;c<i.length&&/[\s\n\r\t]/.test(i[c]);)c++}else break;if(c<i.length&&(i[c]==="}"||i[c]==="]")){for(t++;t<c;)/[\s\n\r\t]/.test(i[t])&&(e+=i[t]),t++;continue}}e+=o,t++}return e}function Uo(i,e){if(typeof i!="string")throw new Q("XPTY0004","parse-json: first argument must be a string");let t={liberal:!1,duplicates:"use-last"};if(e&&B(e)){e.liberal===!0&&(t.liberal=!0);let r=e.duplicates;typeof r=="string"&&(t.duplicates=r)}try{if(t.duplicates!=="use-last")throw new Q("FOJS0001",'Only duplicates="use-last" is supported');let n=t.liberal?qc(i):i,r=JSON.parse(n);return zr(r)}catch(n){throw new Q("FOJS0001","parse-json: "+(n&&n.message?n.message:String(n)))}}function qo(i,e,t){return typeof i=="string"?Uo(i,e):Uo(e,t)}function sr(i){if(i==null)return null;if(H(i))return i.members.map(sr);if(B(i)){let e={};for(let[t,n]of Object.entries(i))t.startsWith("__")||(e[t]=sr(n));return e}if(typeof i=="string"||typeof i=="number"||typeof i=="boolean")return i;if(Array.isArray(i))return i.map(sr);throw new Q("FOJS0002",`Cannot serialize value of type ${typeof i}`)}function Br(i,e){let t={indent:void 0,method:"json"};if(e&&B(e)){let n=e.indent;typeof n=="number"&&(t.indent=n);let r=e.method;typeof r=="string"&&(t.method=r)}try{let n;Array.isArray(i)?i.length===0?n=null:i.length===1?n=i[0]:n=i:n=i;let r=sr(n),s=t.indent!==void 0?t.indent:void 0;return JSON.stringify(r,null,s)}catch(n){throw n instanceof Q?n:new Q("FOJS0002","serialize: "+(n&&n.message?n.message:String(n)))}}function Bo(i,e,t){return t!==void 0||i&&typeof i=="object"&&!("__isMap"in i)&&!("__isArray"in i)&&e!==void 0?Br(e,t):Br(i,e)}function Wo(i,e){if(i==null||i==="")return null;if(typeof i!="string")throw new Q("XPTY0004","json-to-xml: first argument must be a string or null");let t={liberal:!1,duplicates:"reject"};if(e&&B(e)){e.liberal===!0&&(t.liberal=!0);let r=e.duplicates;typeof r=="string"&&(t.duplicates=r)}try{return new be().convert(i,t)}catch(n){throw new Q("FOJS0001","json-to-xml: "+(n&&n.message?n.message:String(n)))}}function zo(i,e,t){if(typeof i=="string"||i===null||i===void 0)return Wo(i,e);if(typeof i!="object")throw new Q("XPTY0004","json-to-xml: first argument must be a string or null");return Wo(e,t)}var jo=g(()=>{ke();De();Ie();yn();qe()});function Yo(i,e){let t=Qe(i),n=Qe(e);if(!n)throw new Error("FOCA0002: Invalid QName: empty string");let r=n.indexOf(":");if(r!==-1){let s=n.substring(0,r),o=n.substring(r+1);if(!jr(s)||!jr(o))throw new Error(`FOCA0002: Invalid QName: ${n}`);if(!t)throw new Error(`FONS0004: No namespace for prefix: ${s}`)}else if(!jr(n))throw new Error(`FOCA0002: Invalid QName: ${n}`);return t?`{${t}}${n}`:n}function Go(i,e){var c,u;let t=Qe(i);if(!t)return null;let n=Yr(e);if(!n)throw new Error("FORG0001: Second argument to resolve-QName must be an element");let r=t.indexOf(":");if(r===-1){let l=(u=(c=n.getAttribute)==null?void 0:c.call(n,"xmlns"))!=null?u:"";return l?`{${l}}${t}`:t}let s=t.substring(0,r),o=t.substring(r+1),a=ea(n,s);if(!a)throw new Error(`FONS0004: No namespace for prefix: ${s}`);return`{${a}}${t}`}function Qo(i){let e=Qe(i);if(!e)return null;let t=e;if(e.startsWith("{")){let r=e.indexOf("}");r!==-1&&(t=e.substring(r+1))}let n=t.indexOf(":");return n===-1?null:t.substring(0,n)}function Ho(i){let e=Qe(i);if(!e)return null;let t=e;if(e.startsWith("{")){let r=e.indexOf("}");r!==-1&&(t=e.substring(r+1))}let n=t.indexOf(":");return n===-1?t:t.substring(n+1)}function Ko(i){let e=Qe(i);if(!e)return null;if(e.startsWith("{")){let t=e.indexOf("}");if(t!==-1)return e.substring(1,t)}return null}function Jo(i){let e=Yr(i);if(!e)throw new Error("FORG0001: Argument to in-scope-prefixes must be an element");let t=new Set;t.add("xml");let n=e;for(;n;){if("attributes"in n&&n.attributes){let r=n.attributes;if(typeof r.getNamedItem=="function")for(let s=0;s<r.length;s++){let o=r.item(s);if(o){let a=o.name||o.nodeName;a==="xmlns"?t.add(""):a.startsWith("xmlns:")&&t.add(a.substring(6))}}else if(Array.isArray(r)){for(let s of r)if(s&&typeof s=="object"){let o=s.name||s.nodeName;o==="xmlns"?t.add(""):o&&typeof o=="string"&&o.startsWith("xmlns:")&&t.add(o.substring(6))}}else for(let s of Object.keys(r))s==="xmlns"?t.add(""):s.startsWith("xmlns:")&&t.add(s.substring(6))}n=n.parentNode}return Array.from(t)}function Zo(i,e){let t=Qe(i),n=Yr(e);if(!n)throw new Error("FORG0001: Second argument to namespace-uri-for-prefix must be an element");return t==="xml"?"http://www.w3.org/XML/1998/namespace":ea(n,t)}function Qe(i){var e;if(i==null)return"";if(Array.isArray(i)){if(i.length===0)return"";i=i[0]}return typeof i=="object"&&i!==null&&"textContent"in i?(e=i.textContent)!=null?e:"":String(i)}function Yr(i){if(i==null)return null;if(Array.isArray(i)){if(i.length===0)return null;i=i[0]}if(typeof i=="object"&&i!==null&&"nodeType"in i){let e=i;if(e.nodeType===ge.ELEMENT_NODE)return e}return null}function jr(i){if(!i)return!1;let e=i.charAt(0);return/[0-9\-.]/.test(e)||i.includes(":")?!1:/^[a-zA-Z_][\w.\-]*$/.test(i)}function ea(i,e){var n;let t=i;for(;t;){let r=e?`xmlns:${e}`:"xmlns",s=(n=t.getAttribute)==null?void 0:n.call(t,r);if(s!=null)return s;t=t.parentNode}return null}var ta=g(()=>{qe()});function na(i,e,t){var s;let n=gn(i);if(n==="")return null;let r=e!==void 0?gn(e):(s=t==null?void 0:t.baseUri)!=null?s:"";try{return r?new URL(n,r).toString():new URL(n).toString()}catch(o){return null}}function ra(i){let e=gn(i);return encodeURIComponent(e).replace(/[!'()*]/g,t=>"%"+t.charCodeAt(0).toString(16).toUpperCase())}function ia(i){let e=gn(i);return encodeURI(e)}function sa(i){let e=gn(i);return encodeURI(e).replace(/\+/g,"%2B").replace(/'/g,"%27").replace(/"/g,"%22").replace(/</g,"%3C").replace(/>/g,"%3E")}function gn(i){if(i==null)return"";if(Array.isArray(i)){if(i.length===0)return"";i=i[0]}return String(i)}var oa=g(()=>{});function aa(i,e){var r;let t=Te(i,e);if(!t)return null;let n=t.nodeType;return n!==1&&n!==2&&n!==7?null:(r=t.nodeName)!=null?r:null}function ca(i,e){var r;let t=Te(i,e);if(!t||t.nodeType!==1)return null;let n=(r=t.getAttribute)==null?void 0:r.call(t,"xsi:nil");return n==="true"||n==="1"}function ua(i){if(i==null)return[];let e=Array.isArray(i)?i:[i],t=[];for(let n of e)t.push(Yc(n));return t}function Gr(i,e){var r,s;let t=Te(i,e);if(!t)return null;if("baseURI"in t&&t.baseURI)return t.baseURI;let n=(r=t.getAttribute)==null?void 0:r.call(t,"xml:base");return n||(t.parentNode&&or(t.parentNode)?Gr([t.parentNode],e):(s=e.baseUri)!=null?s:null)}function la(i,e){let t=Te(i,e);return!t||t.nodeType!==9?null:"documentURI"in t&&t.documentURI?t.documentURI:null}function pa(i,e){let t=Te(i,e);if(!t)return null;let n=t,r=0,s=new Set;for(;n.parentNode&&r<1e4;){if(s.has(n))return n;s.add(n),n=n.parentNode,r++}return n}function ha(i,e,t){var o,a;let n=Gc(i).toLowerCase();if(!n)return!1;let r=e!==void 0?Te(e,t):t.node;if(!r)return!1;let s=r;for(;s;){let c=((o=s.getAttribute)==null?void 0:o.call(s,"xml:lang"))||((a=s.getAttribute)==null?void 0:a.call(s,"lang"));if(c){let u=c.toLowerCase();return u===n||u.startsWith(n+"-")}s=s.parentNode}return!1}function ma(i,e){let t=Te(i,e);if(!t)return"";let n=Symbol.for("__xpath_node_id__");if(!t[n]){let r=Date.now().toString(36),s=Math.random().toString(36).substring(2,8),o=Math.floor(Math.random()*1e4).toString(36);t[n]=`n${r}${s}${o}`}return t[n]}function fa(i,e){let t=Te(i,e);if(!t)return"";let n=[],r=t,s=0,o=new Set;for(;r&&s<1e4&&!o.has(r);){o.add(r);let a=Qc(r);a&&n.unshift(a),r=r.parentNode,s++}return"/"+n.join("/")}function da(i,e){let t=Te(i,e);return t&&"childNodes"in t&&Array.isArray(t.childNodes)?t.childNodes.length>0:!1}function Te(i,e){var t;if(i==null)return(t=e.node)!=null?t:null;if(Array.isArray(i)){if(i.length===0)return null;i=i[0]}return or(i)?i:null}function or(i){return typeof i=="object"&&i!==null&&"nodeType"in i}function ya(i){return i.textContent!==void 0?i.textContent:i.nodeType===1||i.nodeType===9?ga(i):String(i)}function ga(i){var t;let e=[];if("childNodes"in i&&Array.isArray(i.childNodes))for(let n of i.childNodes)n.nodeType===3?e.push((t=n.textContent)!=null?t:""):n.nodeType===1&&e.push(ga(n));return e.join("")}function Yc(i){return i==null?"":typeof i=="string"||typeof i=="number"||typeof i=="boolean"?i:or(i)?ya(i):String(i)}function Gc(i){if(i==null)return"";if(Array.isArray(i)){if(i.length===0)return"";i=i[0]}return or(i)?ya(i):String(i)}function Qc(i){let e=i.nodeName||"node()";switch(i.nodeType){case 1:let n=i.parentNode;if(n&&"childNodes"in n&&Array.isArray(n.childNodes)){let r=n.childNodes.filter(s=>s.nodeType===1&&s.nodeName===e);if(r.length>1){let s=r.indexOf(i)+1;return`${e}[${s}]`}}return e;case 2:return`@${e}`;case 3:return"text()";case 7:return`processing-instruction(${e})`;case 8:return"comment()";case 9:return"";default:return"node()"}}var xa=g(()=>{});var Na={};We(Na,{XPathFunctionCall:()=>fe,getBuiltInFunction:()=>Nn,getBuiltInFunctionArity:()=>ar});function Nn(i){return xn[i]}function ar(i){return Kc[i]}var xn,Kc,fe,En=g(()=>{O();yn();Me();Ie();Os();Bs();eo();Wr();ro();uo();Oo();$o();jo();ta();oa();xa();xn={"upper-case":(i,e)=>String(e).toUpperCase(),"lower-case":(i,e)=>String(e).toLowerCase(),concat:(i,...e)=>e.map(t=>String(t)).join(""),"string-join":(i,e,t="")=>Array.isArray(e)?e.map(n=>String(n)).join(String(t)):String(e),substring:(i,e,t,n)=>{let r=String(e),s=Math.round(Number(t))-1;if(n===void 0)return r.substring(Math.max(0,s));let o=Math.round(Number(n)),a=Math.max(0,s);return r.substring(a,a+o)},"string-length":(i,e)=>String(e).length,"normalize-space":(i,e)=>String(e).trim().replace(/\s+/g," "),contains:(i,e,t)=>String(e).includes(String(t)),"starts-with":(i,e,t)=>String(e).startsWith(String(t)),"ends-with":(i,e,t)=>String(e).endsWith(String(t)),translate:(i,e,t,n)=>{let r=String(e),s=String(t),o=String(n),a="";for(let c of r){let u=s.indexOf(c);u===-1?a+=c:u<o.length&&(a+=o[u])}return a},replace:(i,e,t,n)=>{let r=new RegExp(String(t),"g");return String(e).replace(r,String(n))},matches:(i,e,t)=>new RegExp(String(t)).test(String(e)),tokenize:(i,e,t="\\s+")=>{let n=new RegExp(String(t));return String(e).split(n).filter(r=>r.length>0)},abs:(i,e)=>Math.abs(Number(e)),ceiling:(i,e)=>Math.ceil(Number(e)),floor:(i,e)=>Math.floor(Number(e)),round:(i,e)=>Math.round(Number(e)),"round-half-to-even":(i,e,t=0)=>{let n=Math.pow(10,Number(t)),r=Number(e)*n,s=Math.floor(r);return r-s===.5?(s%2===0?s:s+1)/n:Math.round(r)/n},number:(i,e)=>Number(e),true:()=>!0,false:()=>!1,not:(i,e)=>!e,boolean:(i,e)=>typeof e=="boolean"?e:typeof e=="number"?e!==0&&!isNaN(e):typeof e=="string"||Array.isArray(e)?e.length>0:!!e,count:(i,e)=>Array.isArray(e)?e.length:e==null?0:1,sum:(i,e)=>Array.isArray(e)?e.reduce((t,n)=>t+(Number(n)||0),0):Number(e)||0,avg:(i,e)=>Array.isArray(e)?e.length===0?null:e.reduce((n,r)=>n+(Number(r)||0),0)/e.length:Number(e),min:(i,e)=>Array.isArray(e)?e.length===0?null:Math.min(...e.map(t=>Number(t))):Number(e),max:(i,e)=>Array.isArray(e)?e.length===0?null:Math.max(...e.map(t=>Number(t))):Number(e),empty:(i,e)=>e==null?!0:Array.isArray(e)?e.length===0:!1,exists:(i,e)=>e==null?!1:Array.isArray(e)?e.length>0:!0,reverse:(i,e)=>Array.isArray(e)?[...e].reverse():[e],"distinct-values":(i,e)=>Array.isArray(e)?Array.from(new Set(e)):[e],subsequence:(i,e,t,n)=>{Array.isArray(e)||(e=[e]);let r=Math.round(Number(t))-1;if(n===void 0)return e.slice(Math.max(0,r));let s=Math.round(Number(n));return e.slice(Math.max(0,r),Math.max(0,r)+s)},"insert-before":(i,e,t,n)=>{Array.isArray(e)||(e=e===null?[]:[e]),Array.isArray(n)||(n=[n]);let r=Math.max(0,Math.round(Number(t))-1);return[...e.slice(0,r),...n,...e.slice(r)]},remove:(i,e,t)=>{Array.isArray(e)||(e=[e]);let n=Math.round(Number(t))-1;return n<0||n>=e.length?e:[...e.slice(0,n),...e.slice(n+1)]},position:i=>{var e;return(e=i.position)!=null?e:0},last:i=>{var e;return(e=i.size)!=null?e:0},string:(i,e)=>{var t,n,r,s;return e===void 0?(n=(t=i.node)==null?void 0:t.textContent)!=null?n:"":Array.isArray(e)&&e.length>0?(s=(r=e[0])==null?void 0:r.textContent)!=null?s:String(e[0]):String(e)},"local-name":(i,e)=>{var n;let t=e?Array.isArray(e)?e[0]:e:i.node;return(n=t==null?void 0:t.localName)!=null?n:""},"namespace-uri":(i,e)=>{var n;let t=e?Array.isArray(e)?e[0]:e:i.node;return(n=t==null?void 0:t.namespaceUri)!=null?n:""},name:(i,e)=>{var n;let t=e?Array.isArray(e)?e[0]:e:i.node;return(n=t==null?void 0:t.nodeName)!=null?n:""},"generate-id":(i,e)=>ma(e,i),path:(i,e)=>fa(e,i),"has-children":(i,e)=>da(e,i),"for-each":bs,filter:Ts,"fold-left":Ps,"fold-right":Xs,"for-each-pair":Ss,sort:Js,apply:As,"function-name":Cs,"function-arity":ws,"math:pi":Rs,"math:exp":Is,"math:exp10":vs,"math:log":_s,"math:log10":Ms,"math:pow":ks,"math:sqrt":Ds,"math:sin":Fs,"math:cos":Vs,"math:tan":Ls,"math:asin":$s,"math:acos":Us,"math:atan":Ws,"math:atan2":qs,head:(i,e)=>$r(e),tail:(i,e)=>Ur(e),innermost:Hs,outermost:Ks,"environment-variable":to,"available-environment-variables":no,"array:size":po,"array:get":ho,"array:put":mo,"array:append":fo,"array:subarray":yo,"array:remove":go,"array:insert-before":xo,"array:head":No,"array:tail":Eo,"array:reverse":bo,"array:join":To,"array:flatten":Po,"array:for-each":Xo,"array:filter":So,"array:fold-left":Ao,"array:fold-right":Co,"array:sort":wo,"map:size":Io,"map:keys":vo,"map:contains":_o,"map:get":Mo,"map:put":ko,"map:entry":Do,"map:merge":Fo,"map:for-each":Vo,"map:remove":Lo,"parse-json":qo,serialize:Bo,"json-to-xml":zo,"analyze-string":oo,"format-integer":ao,"format-number":co,"xs:string":(i,e)=>A(e,"string"),"xs:boolean":(i,e)=>A(e,"boolean"),"xs:decimal":(i,e)=>A(e,"decimal"),"xs:float":(i,e)=>A(e,"float"),"xs:double":(i,e)=>A(e,"double"),"xs:integer":(i,e)=>A(e,"integer"),"xs:duration":(i,e)=>A(e,"duration"),"xs:dateTime":(i,e)=>A(e,"dateTime"),"xs:date":(i,e)=>A(e,"date"),"xs:time":(i,e)=>A(e,"time"),"xs:anyURI":(i,e)=>A(e,"anyURI"),"xs:QName":(i,e)=>A(e,"QName"),"xs:untypedAtomic":(i,e)=>A(e,"untypedAtomic"),"xs:gYearMonth":(i,e)=>A(e,"gYearMonth"),"xs:gYear":(i,e)=>A(e,"gYear"),"xs:gMonthDay":(i,e)=>A(e,"gMonthDay"),"xs:gDay":(i,e)=>A(e,"gDay"),"xs:gMonth":(i,e)=>A(e,"gMonth"),"xs:hexBinary":(i,e)=>A(e,"hexBinary"),"xs:base64Binary":(i,e)=>A(e,"base64Binary"),"xs:long":(i,e)=>A(e,"long"),"xs:int":(i,e)=>A(e,"int"),"xs:short":(i,e)=>A(e,"short"),"xs:byte":(i,e)=>A(e,"byte"),"xs:nonPositiveInteger":(i,e)=>A(e,"nonPositiveInteger"),"xs:negativeInteger":(i,e)=>A(e,"negativeInteger"),"xs:nonNegativeInteger":(i,e)=>A(e,"nonNegativeInteger"),"xs:positiveInteger":(i,e)=>A(e,"positiveInteger"),"xs:unsignedLong":(i,e)=>A(e,"unsignedLong"),"xs:unsignedInt":(i,e)=>A(e,"unsignedInt"),"xs:unsignedShort":(i,e)=>A(e,"unsignedShort"),"xs:unsignedByte":(i,e)=>A(e,"unsignedByte"),QName:(i,e,t)=>Yo(e,t),"resolve-QName":(i,e,t)=>Go(e,t),"prefix-from-QName":(i,e)=>Qo(e),"local-name-from-QName":(i,e)=>Ho(e),"namespace-uri-from-QName":(i,e)=>Ko(e),"in-scope-prefixes":(i,e)=>Jo(e),"namespace-uri-for-prefix":(i,e,t)=>Zo(e,t),"resolve-uri":(i,e,t)=>na(e,t,i),"encode-for-uri":(i,e)=>ra(e),"iri-to-uri":(i,e)=>ia(e),"escape-html-uri":(i,e)=>sa(e),root:(i,e)=>pa(e,i),"base-uri":(i,e)=>Gr(e,i),"document-uri":(i,e)=>la(e,i),nilled:(i,e)=>ca(e,i),"node-name":(i,e)=>aa(e,i),data:(i,e)=>ua(e),lang:(i,e,t)=>ha(e,t,i),"zero-or-one":(i,e)=>js(e),"one-or-more":(i,e)=>Ys(e),"exactly-one":(i,e)=>Gs(e),unordered:(i,e)=>zs(e)},Kc={concat:[2,1/0],substring:[2,3],"string-join":[1,2],"normalize-space":[0,1],"string-length":[0,1],"local-name":[0,1],"namespace-uri":[0,1],name:[0,1],"generate-id":[0,1],path:[0,1],"has-children":[0,1],round:[1,2],"round-half-to-even":[1,2],string:[0,1],number:[0,1],replace:[3,4],matches:[2,3],tokenize:[1,3],"regex-group":[1,1],"current-group":[0,0],"current-grouping-key":[0,0],subsequence:[2,3],"insert-before":[3,3],remove:[2,2],"for-each":[2,2],filter:[2,2],"fold-left":[3,3],"fold-right":[3,3],"for-each-pair":[3,3],sort:[1,3],apply:[2,2],"function-name":[1,1],"function-arity":[1,1],"math:pi":[0,0],"math:exp":[1,1],"math:exp10":[1,1],"math:log":[1,1],"math:log10":[1,1],"math:pow":[2,2],"math:sqrt":[1,1],"math:sin":[1,1],"math:cos":[1,1],"math:tan":[1,1],"math:asin":[1,1],"math:acos":[1,1],"math:atan":[1,1],"math:atan2":[2,2],head:[1,1],tail:[1,1],innermost:[1,1],outermost:[1,1],"environment-variable":[1,1],"available-environment-variables":[0,0],"array:size":[1,1],"array:get":[2,2],"array:put":[3,3],"array:append":[2,2],"array:subarray":[2,3],"array:remove":[2,2],"array:insert-before":[3,3],"array:head":[1,1],"array:tail":[1,1],"array:reverse":[1,1],"array:join":[1,1],"array:flatten":[1,1],"array:for-each":[2,2],"array:filter":[2,2],"array:fold-left":[3,3],"array:fold-right":[3,3],"array:sort":[1,3],"map:size":[1,1],"map:keys":[1,1],"map:contains":[2,2],"map:get":[2,2],"map:put":[3,3],"map:entry":[2,2],"map:merge":[1,2],"map:for-each":[2,2],"map:remove":[2,2],"parse-json":[1,2],serialize:[1,2],"json-to-xml":[1,2],"analyze-string":[2,3],"format-integer":[2,3],"format-number":[2,3],"xs:string":[1,1],"xs:boolean":[1,1],"xs:decimal":[1,1],"xs:float":[1,1],"xs:double":[1,1],"xs:integer":[1,1],"xs:duration":[1,1],"xs:dateTime":[1,1],"xs:date":[1,1],"xs:time":[1,1],"xs:anyURI":[1,1],"xs:QName":[1,1],"xs:untypedAtomic":[1,1],"xs:gYearMonth":[1,1],"xs:gYear":[1,1],"xs:gMonthDay":[1,1],"xs:gDay":[1,1],"xs:gMonth":[1,1],"xs:hexBinary":[1,1],"xs:base64Binary":[1,1],"xs:long":[1,1],"xs:int":[1,1],"xs:short":[1,1],"xs:byte":[1,1],"xs:nonPositiveInteger":[1,1],"xs:negativeInteger":[1,1],"xs:nonNegativeInteger":[1,1],"xs:positiveInteger":[1,1],"xs:unsignedLong":[1,1],"xs:unsignedInt":[1,1],"xs:unsignedShort":[1,1],"xs:unsignedByte":[1,1],QName:[2,2],"resolve-QName":[2,2],"prefix-from-QName":[1,1],"local-name-from-QName":[1,1],"namespace-uri-from-QName":[1,1],"in-scope-prefixes":[1,1],"namespace-uri-for-prefix":[2,2],"resolve-uri":[1,2],"encode-for-uri":[1,1],"iri-to-uri":[1,1],"escape-html-uri":[1,1],root:[0,1],"base-uri":[0,1],"document-uri":[1,1],nilled:[1,1],"node-name":[1,1],data:[1,1],lang:[1,2],"zero-or-one":[1,1],"one-or-more":[1,1],"exactly-one":[1,1],unordered:[1,1]};fe=class extends x{constructor(t,n){super();this.jsonConverter=new be;this.name=t,this.args=n}evaluate(t){var s,o,a,c,u,l;let n=this.args.map(p=>p.evaluate(t)),r=this.getConstructorType();if(r){if(n.length!==1)throw Ti(this.name,"1",n.length);let p=n[0];if(Array.isArray(p)){if(p.length===0)throw ie("single item","empty sequence",`constructor function ${this.name}`);if(p.length!==1)throw ie("single item",`sequence of ${p.length} items`,`constructor function ${this.name}`);return this.castConstructorValue(r,p[0])}if(p==null)throw ie("single item","empty sequence",`constructor function ${this.name}`);return this.castConstructorValue(r,p)}switch(this.name){case"last":return(s=t.size)!=null?s:0;case"position":return(o=t.position)!=null?o:0;case"count":return Array.isArray(n[0])?n[0].length:0;case"local-name":return this.localName(n,t);case"namespace-uri":return this.namespaceUri(n,t);case"name":return this.nodeName(n,t);case"string":return this.stringValue(n,t);case"concat":return n.map(h=>this.convertToString(h)).join("");case"starts-with":return String(n[0]).startsWith(String(n[1]));case"contains":return String(n[0]).includes(String(n[1]));case"substring-before":return this.substringBefore(n);case"substring-after":return this.substringAfter(n);case"substring":return this.substring(n);case"string-length":return this.stringLength(n,t);case"normalize-space":return this.normalizeSpace(n,t);case"translate":return this.translate(n);case"boolean":return this.toBoolean(n[0]);case"not":return!this.toBoolean(n[0]);case"true":return!0;case"false":return!1;case"lang":return this.lang(n,t);case"number":return this.toNumber(n,t);case"sum":return this.sum(n);case"floor":return Math.floor(Number(n[0]));case"ceiling":return Math.ceil(Number(n[0]));case"round":return Math.round(Number(n[0]));case"json-to-xml":return this.jsonToXml(n,t);case"regex-group":{let h=Math.floor(Number(n[0])),f=(a=t.extensions)==null?void 0:a.regexGroups;return f&&h>=0&&h<f.length&&(c=f[h])!=null?c:""}case"current-group":{let h=(u=t.extensions)==null?void 0:u.currentGroup;return h!=null?h:[]}case"current-grouping-key":{let h=(l=t.extensions)==null?void 0:l.currentGroupingKey;return h!=null?h:""}default:if(t.functions&&typeof t.functions[this.name]=="function")return t.functions[this.name](t,...n);let p=xn[this.name];if(!p&&this.name.startsWith("Q{")){let{namespace:h,localName:f}=this.parseEQName(this.name);p=xn[f],!p&&h==="http://www.w3.org/2005/xpath-functions/math"&&(p=xn["math:"+f]),!p&&h==="http://www.w3.org/2005/xpath-functions/array"&&(p=xn["array:"+f])}if(p)return p(t,...n);throw wt(this.name,"function")}}parseEQName(t){let n=t.match(/^Q\{([^}]*)\}(.+)$/);return n?{namespace:n[1],localName:n[2]}:{namespace:"",localName:t}}getConstructorType(){if(!this.name.includes(":"))return;let[,t]=this.name.split(":");if(t)return ae(t)}castConstructorValue(t,n){try{return t.cast(n)}catch(r){throw Pi(n,this.name)}}toBoolean(t){return typeof t=="boolean"?t:typeof t=="number"?t!==0&&!isNaN(t):typeof t=="string"||Array.isArray(t)?t.length>0:!!t}toNumber(t,n){if(t.length===0)return Number(this.stringValue([],n));let r=t[0];if(typeof r=="object"&&r!==null&&"numberValue"in r&&typeof r.numberValue=="function")return r.numberValue();if(Array.isArray(r)){if(r.length===0)return NaN;let s=r[0],o=this.getNodeStringValue(s);return Number(o)}return Number(r)}stringValue(t,n){var s,o,a,c;if(t.length===0)return(o=(s=n.node)==null?void 0:s.textContent)!=null?o:"";let r=t[0];return Array.isArray(r)&&r.length>0?(c=(a=r[0])==null?void 0:a.textContent)!=null?c:String(r[0]):String(r)}convertToString(t){if(Array.isArray(t)){if(t.length===0)return"";let n=t[0];return this.getNodeStringValue(n)}return String(t)}getNodeStringValue(t){var n;return t?typeof t.textContent=="string"?t.textContent:t.nodeType===3||t.nodeType===2?(n=t.nodeValue)!=null?n:"":t.nodeType===1||t.nodeType===9||t.nodeType===11?this.getDescendantTextContent(t):t.nodeValue!==void 0&&t.nodeValue!==null?String(t.nodeValue):"":""}getDescendantTextContent(t){var r;if(!t.childNodes||t.childNodes.length===0)return"";let n="";for(let s=0;s<t.childNodes.length;s++){let o=t.childNodes[s];o.nodeType===3?n+=(r=o.nodeValue)!=null?r:"":o.nodeType===1&&(n+=this.getDescendantTextContent(o))}return n}stringLength(t,n){return t.length===0?this.stringValue([],n).length:String(t[0]).length}normalizeSpace(t,n){return(t.length===0?this.stringValue([],n):String(t[0])).trim().replace(/\s+/g," ")}substringBefore(t){let n=String(t[0]),r=String(t[1]),s=n.indexOf(r);return s===-1?"":n.substring(0,s)}substringAfter(t){let n=String(t[0]),r=String(t[1]),s=n.indexOf(r);return s===-1?"":n.substring(s+r.length)}substring(t){let n=String(t[0]),r=Math.round(Number(t[1]))-1;if(t.length===2)return n.substring(Math.max(0,r));let s=Math.round(Number(t[2])),o=Math.max(0,r),a=Math.min(s-(o-r),n.length-o);return n.substring(o,o+a)}translate(t){let n=String(t[0]),r=String(t[1]),s=String(t[2]),o="";for(let a of n){let c=r.indexOf(a);c===-1?o+=a:c<s.length&&(o+=s[c])}return o}localName(t,n){var s;let r=this.getNodeArg(t,n);return(s=r==null?void 0:r.localName)!=null?s:""}namespaceUri(t,n){var s;let r=this.getNodeArg(t,n);return(s=r==null?void 0:r.namespaceUri)!=null?s:""}nodeName(t,n){var s;let r=this.getNodeArg(t,n);return(s=r==null?void 0:r.nodeName)!=null?s:""}getNodeArg(t,n){return t.length>0&&Array.isArray(t[0])&&t[0].length>0?t[0][0]:n.node}sum(t){let n=t[0];return Array.isArray(n)?n.reduce((r,s)=>{var a;let o=Number((a=s==null?void 0:s.textContent)!=null?a:s);return r+(isNaN(o)?0:o)},0):0}lang(t,n){var o,a;let r=String(t[0]).toLowerCase(),s=n.node;for(;s;){let c=((o=s.getAttribute)==null?void 0:o.call(s,"xml:lang"))||((a=s.getAttribute)==null?void 0:a.call(s,"lang"));if(c){let u=c.toLowerCase();return u===r||u.startsWith(r+"-")}s=s.parentNode}return!1}jsonToXml(t,n){if(n.xsltVersion&&n.xsltVersion!=="3.0")throw new Error('json-to-xml() is only supported in XSLT 3.0. Use version="3.0" in your stylesheet.');let r=t.length>0?String(t[0]):null,s;t.length>1&&typeof t[1]=="object"&&t[1]!==null&&(s=this.mapToOptions(t[1]));let o=this.jsonConverter.convert(r,s);return o?[o]:[]}mapToOptions(t){let n={};if(t.liberal!==void 0&&(n.liberal=!!t.liberal),t.duplicates!==void 0){let r=String(t.duplicates).toLowerCase();(r==="reject"||r==="use-first"||r==="retain")&&(n.duplicates=r)}return t.validate!==void 0&&(n.validate=!!t.validate),t.escape!==void 0&&(n.escape=!!t.escape),t.fallback!==void 0&&typeof t.fallback=="function"&&(n.fallback=t.fallback),n}}});var bn,Qr=g(()=>{O();bn=class extends x{constructor(e,t){super(),this.bindings=e,this.returnExpr=t}evaluate(e){var r;let t=P({},(r=e.variables)!=null?r:{}),n=_(P({},e),{variables:t});for(let s of this.bindings){let o=s.expression.evaluate(n);t[s.variable]=o,n=_(P({},n),{variables:P({},t)})}return this.returnExpr.evaluate(n)}toString(){return`let ${this.bindings.map(t=>`$${t.variable} := ${t.expression}`).join(", ")} return ${this.returnExpr}`}}});var Tn,Hr=g(()=>{O();Tn=class extends x{constructor(e,t){super(),this.left=e,this.right=t}evaluate(e){let t=this.left.evaluate(e),n=this.normalizeToSequence(t);if(n.length===0)return[];let r=[],s=n.length;for(let o=0;o<s;o++){let a=n[o],c=_(P({},e),{position:o+1,size:s});this.isNode(a)&&(c.node=a),c.contextItem=a;let u=this.right.evaluate(c);this.appendResults(r,u)}return r}normalizeToSequence(e){return e==null?[]:Array.isArray(e)?e:[e]}isNode(e){return e&&typeof e=="object"&&"nodeType"in e}appendResults(e,t){t!=null&&(Array.isArray(t)?e.push(...t):e.push(t))}toString(){return`${this.left} ! ${this.right}`}}});var Pn,Kr=g(()=>{O();Pn=class extends x{constructor(e,t){super(),this.left=e,this.right=t}evaluate(e){let t=this.left.evaluate(e),n=this.right.evaluate(e),r=this.atomizeToString(t),s=this.atomizeToString(n);return r+s}atomizeToString(e){return e==null?"":typeof e=="object"&&"stringValue"in e&&typeof e.stringValue=="function"?e.stringValue():Array.isArray(e)?e.length===0?"":this.valueToString(e[0]):this.valueToString(e)}valueToString(e){return e==null?"":typeof e=="object"&&"stringValue"in e&&typeof e.stringValue=="function"?e.stringValue():typeof e=="string"?e:typeof e=="number"?Number.isNaN(e)?"NaN":e===1/0?"INF":e===-1/0?"-INF":String(e):typeof e=="boolean"?e?"true":"false":this.isNode(e)?this.getNodeStringValue(e):String(e)}isNode(e){return e&&typeof e=="object"&&"nodeType"in e}getNodeStringValue(e){return e?e.nodeType===3||e.nodeType===4?e.nodeValue||"":e.nodeType===2?e.value||e.nodeValue||"":e.nodeType===1||e.nodeType===9?e.textContent||"":(e.nodeType===7||e.nodeType===8)&&e.nodeValue||"":""}toString(){return`${this.left} || ${this.right}`}}});function Jr(i){let e=[],t="",n=0;for(;n<i.length;){let r=i[n];if(r==="\\"&&n+1<i.length)switch(i[n+1]){case"`":t+="`",n+=2;break;case"{":t+="{",n+=2;break;case"}":t+="}",n+=2;break;case"n":t+=`
|
|
5
|
+
`,n+=2;break;case"r":t+="\r",n+=2;break;case"t":t+=" ",n+=2;break;case"\\":t+="\\",n+=2;break;default:t+=r,n++}else if(r==="{"&&n+1<i.length&&i[n+1]!=="{"){t.length>0&&(e.push(t),t="");let s=1,o=n+1;for(;o<i.length&&s>0;)i[o]==="{"&&i[o-1]!=="\\"?s++:i[o]==="}"&&i[o-1]!=="\\"&&s--,o++;if(s!==0)throw new Error("Unclosed expression in string template");let a=i.substring(n+1,o-1);e.push({expressionString:a}),n=o}else t+=r,n++}return t.length>0&&e.push(t),e}var Xn,Zr=g(()=>{Xn=class{constructor(e){this.parts=e}evaluate(e){let t=[];for(let n of this.parts)if(typeof n=="string")t.push(n);else{let r=n.evaluate(e);t.push(this.valueToString(r))}return t.join("")}valueToString(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number")return Number.isNaN(e)?"NaN":e===1/0?"INF":e===-1/0?"-INF":String(e);if(typeof e=="boolean")return e?"true":"false";if(Array.isArray(e))return e.length===0?"":this.valueToString(e[0]);if(typeof e=="object"&&e!==null){if("nodeType"in e&&e.nodeType)return this.getNodeStringValue(e);if(typeof e.toString=="function"){let t=e.toString();if(t!=="[object Object]")return t}}return String(e)}getNodeStringValue(e){return e.textContent!==void 0?String(e.textContent):e.nodeType===3?e.data||e.textContent||"":e.nodeType===1||e.nodeType===9?this.getDescendantTextContent(e):""}getDescendantTextContent(e){var n,r;let t=[];if("childNodes"in e&&Array.isArray(e.childNodes))for(let s of e.childNodes)s.nodeType===3?t.push((r=(n=s.textContent)!=null?n:s.data)!=null?r:""):s.nodeType===1&&t.push(this.getDescendantTextContent(s));return t.join("")}}});var Sn,ei=g(()=>{O();En();Sn=class extends x{constructor(e,t,n){super(),this.input=e,this.functionName=t,this.args=n}evaluate(e){let t=[this.input,...this.args];return new fe(this.functionName,t).evaluate(e)}toString(){let e=this.args.length>0?this.args.map(t=>t.toString()).join(", "):"";return`${this.input} => ${this.functionName}(${e})`}}});var An,ti=g(()=>{an();O();En();An=class extends x{constructor(e,t){super(),this.name=e,this.arity=t}evaluate(e){let t=this.resolveFunction(e);if(!t)throw new Error(`Unknown function: ${this.name}#${this.arity}`);return t}resolveFunction(e){let{namespace:t,localName:n}=this.parseNameWithNamespace(this.name,e),r=t,s=Nn(n),o=n;if(!s&&r===on&&(s=Nn("math:"+n),o="math:"+n),s){if(ar(o)!==void 0&&!this.arityMatches(o,this.arity))throw new Error(`Function ${this.name} does not accept ${this.arity} arguments`);return{__isFunctionItem:!0,implementation:(...u)=>s(e,...u),arity:this.arity,name:n,namespace:r}}if(e.functionRegistry){let a=e.functionRegistry[n]||e.functionRegistry[this.name];if(a)return{__isFunctionItem:!0,implementation:a,arity:this.arity,name:n,namespace:r}}if(e.functions){let a=e.functions[this.name]||e.functions[n];if(a)return{__isFunctionItem:!0,implementation:a,arity:this.arity,name:n,namespace:r}}return null}arityMatches(e,t){let r={concat:[2,1/0],substring:[2,3],"string-join":[1,2],"normalize-space":[0,1],"string-length":[0,1],"local-name":[0,1],"namespace-uri":[0,1],name:[0,1],round:[1,2],"format-number":[2,3]}[e];return r?t>=r[0]&&t<=r[1]:t>=0&&t<=10}parseNameWithNamespace(e,t){if(e.startsWith("Q{")){let r=e.match(/^Q\{([^}]*)\}(.+)$/);if(r){let[,s,o]=r;return{namespace:s||void 0,localName:o}}}let n=e.indexOf(":");if(n>0){let r=e.substring(0,n),s=e.substring(n+1),o;return r==="fn"?o=sn:r==="math"?o=on:t.namespaces&&t.namespaces[r]&&(o=t.namespaces[r]),{namespace:o,localName:s}}return{namespace:sn,localName:e}}toString(){return`${this.name}#${this.arity}`}}});var Cn,ni=g(()=>{O();Cn=class extends x{constructor(e,t,n){super(),this.params=e,this.body=t,this.returnType=n}evaluate(e){var s;let t=P({},(s=e.variables)!=null?s:{}),n=this;return{__isFunctionItem:!0,implementation:function(...o){let a=P({},t);for(let u=0;u<n.params.length;u++){let l=n.params[u],p=u<o.length?o[u]:null;a[l.name]=p}let c=_(P({},e),{variables:a});return n.body.evaluate(c)},arity:this.params.length,name:void 0,namespace:void 0}}toString(){let t=`function(${this.params.map(n=>{let r=`$${n.name}`;return n.type&&(r+=` as ${n.type}`),r}).join(", ")})`;return this.returnType&&(t+=` as ${this.returnType}`),t+=` { ${this.body} }`,t}}});function Jc(i){return i&&typeof i=="object"&&i.__isFunctionItem===!0}var dt,ri=g(()=>{O();ke();De();dt=class extends x{constructor(e,t){super(),this.functionExpr=e,this.args=t}evaluate(e){let t=this.functionExpr.evaluate(e);if(B(t)){if(this.args.length!==1)throw new Error(`Map lookup expects 1 argument but got ${this.args.length}`);let n=String(this.args[0].evaluate(e)),r=t[n];if(r===void 0)throw new Error(`XPDY0002: Key "${n}" not found in map`);return r}if(H(t)){if(this.args.length!==1)throw new Error(`Array lookup expects 1 argument but got ${this.args.length}`);let n=Number(this.args[0].evaluate(e));return _r(t,n)}if(Jc(t)){let n=t;if(n.arity!==this.args.length)throw new Error(`Function expects ${n.arity} arguments but got ${this.args.length}`);let r=this.args.map(s=>s.evaluate(e));return n.implementation(...r)}if(typeof t=="function"){let n=this.args.map(r=>r.evaluate(e));return t(...n)}throw new Error("Dynamic function call: expression does not evaluate to a function item")}toString(){let e=this.args.map(t=>t.toString()).join(", ");return`${this.functionExpr}(${e})`}}});function Zc(i,e,t,n){return new yt(i,e,t,n)}function Ea(i){return new yt(i,null)}function eu(i,e){let t=new class extends x{evaluate(){return e}toString(){return JSON.stringify(e)}};return new yt(i,t)}function nu(i,e){return Ea(i).evaluate(e)}var yt,tu,ba=g(()=>{O();yt=class extends x{constructor(e,t,n,r){super(),this.tryExpr=e,this.catchExpr=t||null,this.errorPattern=n||null,this.errorVariableName=r||null}evaluate(e){try{let t=this.tryExpr.evaluate(e);return t&&typeof t=="object"&&typeof t.catch=="function"?t.catch(n=>this.handleError(n,e)):t}catch(t){return this.catchExpr?this.handleError(t,e):void 0}}handleError(e,t){let n=this.createCaughtError(e);if(this.errorPattern&&!this.matchesErrorPattern(n,this.errorPattern))throw e;let r={node:t.node,position:t.position,size:t.size,variables:t.variables?new Map(t.variables):new Map,functions:t.functions||{}};return this.errorVariableName&&r.variables.set(this.errorVariableName,n),r.variables.set("err:code",n.code),r.variables.set("err:description",n.description),r.variables.set("err:value",n.value),this.catchExpr.evaluate(r)}createCaughtError(e){let t="UNKNOWN",n="Unknown error",r="dynamic";return typeof e=="string"?n=e:e&&typeof e=="object"&&(e.message&&(n=e.message),e.code&&(t=e.code),e.type&&(r=e.type)),{code:t,description:n,value:e,stack:e==null?void 0:e.stack,type:r}}matchesErrorPattern(e,t){return t==="*"?!0:e.code===t||e.code.includes(t)}toString(){let e=`try { ${this.tryExpr.toString()} }`;return this.catchExpr&&(e+=" catch",this.errorPattern&&(e+=` (${this.errorPattern})`),e+=` { ${this.catchExpr.toString()} }`),e}};tu={XPTY0004:"XPTY0004",FOAR0001:"FOAR0001",FORG0001:"FORG0001",FONS0004:"FONS0004",FORG0004:"FORG0004",FORG0005:"FORG0005",XPST0008:"XPST0008",XPTY0019:"XPTY0019",FODF1310:"FODF1310",XPST0051:"XPST0051"}});var ii,wn,si=g(()=>{De();ke();ii=(r=>(r.NCNAME="NCNAME",r.INTEGER_LITERAL="INTEGER_LITERAL",r.PARENTHESIZED_EXPR="PARENTHESIZED_EXPR",r.WILDCARD="WILDCARD",r))(ii||{}),wn=class{constructor(e,t){this.baseExpr=e;this.keySpecifier=t}evaluate(e){let t;if(this.baseExpr)t=this.baseExpr.evaluate(e);else if(t=e.contextItem,t===void 0)throw new Error("XPDY0002: Context item is undefined for unary lookup");if(B(t))return this.lookupInMap(t,this.keySpecifier,e);if(H(t))return this.lookupInArray(t,this.keySpecifier,e);throw new Error("XPTY0004: Lookup operator can only be applied to maps and arrays")}lookupInMap(e,t,n){switch(t.type){case"NCNAME":let r=t.value;return e[r];case"INTEGER_LITERAL":let s=t.value.toString();return e[s];case"PARENTHESIZED_EXPR":let a=t.value.evaluate(n),c=this.atomizeToString(a);return e[c];case"WILDCARD":return Object.keys(e).filter(u=>!u.startsWith("__")).map(u=>e[u]);default:throw new Error("FOAY0001: Invalid key specifier for map lookup")}}lookupInArray(e,t,n){switch(t.type){case"INTEGER_LITERAL":let r=t.value;if(r<1)throw new Error("FOAY0001: Array index must be positive");if(r>e.members.length)throw new Error("FOAY0001: Array index out of bounds");return e.members[r-1];case"PARENTHESIZED_EXPR":let o=t.value.evaluate(n),a=this.atomizeToNumber(o);if(a<1)throw new Error("FOAY0001: Array index must be positive");if(a>e.members.length)throw new Error("FOAY0001: Array index out of bounds");return e.members[a-1];case"WILDCARD":return this.flattenArrayMembers(e.members);case"NCNAME":throw new Error("XPTY0004: NCName key not valid for array lookup");default:throw new Error("FOAY0001: Invalid key specifier for array lookup")}}flattenArrayMembers(e){let t=[];for(let n of e)H(n)?t.push(...this.flattenArrayMembers(n.members)):t.push(n);return t}atomizeToString(e){if(e==null)return"";if(typeof e=="string")return e;if(typeof e=="number"||typeof e=="boolean")return e.toString();if(Array.isArray(e))return e.length===0?"":e.length===1?this.atomizeToString(e[0]):this.atomizeToString(e[0]);if(typeof e=="object"&&e.$isXPathMap)throw new Error("XPTY0004: Cannot atomize a map to string");if(typeof e=="object"&&(e.nodeType||e.nodeName||e.textContent))return(e.textContent||e.value||"").toString();if(typeof e=="function")throw new Error("XPTY0004: Cannot atomize a function item");try{return String(e)}catch(t){throw new Error("XPTY0004: Cannot atomize value")}}atomizeToNumber(e){if(e==null)throw new Error("XPTY0004: Cannot convert empty sequence to number");if(typeof e=="number")return e;if(typeof e=="string"){let t=parseFloat(e);if(isNaN(t))throw new Error("FORG0001: Invalid number");return t}if(typeof e=="boolean")throw new Error("XPTY0004: Cannot convert boolean to number for array index");if(Array.isArray(e)){if(e.length===0)throw new Error("XPTY0004: Cannot convert empty sequence to number");if(e.length===1)return this.atomizeToNumber(e[0]);throw new Error("XPTY0004: Cannot convert sequence to single number")}if(typeof e=="object"&&e.$isXPathMap)throw new Error("XPTY0004: Cannot atomize a map to number");if(typeof e=="object"&&(e.nodeType||e.nodeName||e.textContent)){let t=(e.textContent||e.value||"").toString(),n=parseFloat(t);if(isNaN(n))throw new Error("FORG0001: Invalid number from node");return n}throw typeof e=="function"?new Error("XPTY0004: Cannot atomize a function item"):new Error("FORG0001: Cannot convert to number")}toString(){let e=this.baseExpr?this.baseExpr.toString():"",t;switch(this.keySpecifier.type){case"NCNAME":t=this.keySpecifier.value;break;case"INTEGER_LITERAL":t=this.keySpecifier.value.toString();break;case"PARENTHESIZED_EXPR":t=`(${this.keySpecifier.value})`;break;case"WILDCARD":t="*";break;default:t="?"}return e+"?"+t}}});var Ve={};We(Ve,{CommaExpression:()=>hn,EmptySequenceExpression:()=>fn,FilteredPathExpression:()=>Rt,GeneralComparisonExpression:()=>Vr,JsonToXmlConverter:()=>be,KeySpecifierType:()=>ii,NodeComparisonExpression:()=>Lr,ParenthesizedExpression:()=>Dr,RangeExpression:()=>mn,StringTemplateExpression:()=>Xn,TryExpression:()=>yt,ValueComparisonExpression:()=>Fr,XPathArithmeticExpression:()=>Be,XPathArrowExpression:()=>Sn,XPathBinaryExpression:()=>nt,XPathCastableExpression:()=>ln,XPathConditionalExpression:()=>vt,XPathCurlyBraceArrayConstructor:()=>lt,XPathDynamicFunctionCall:()=>dt,XPathExpression:()=>x,XPathFilterExpression:()=>Ot,XPathForExpression:()=>_t,XPathFunctionCall:()=>fe,XPathInlineFunctionExpression:()=>Cn,XPathInstanceOfExpression:()=>un,XPathLetExpression:()=>bn,XPathLocationPath:()=>he,XPathLogicalExpression:()=>rt,XPathLookupExpression:()=>wn,XPathMapConstructorExpression:()=>ct,XPathNamedFunctionRef:()=>An,XPathNumberLiteral:()=>Ct,XPathPredicate:()=>dn,XPathQuantifiedExpression:()=>Mt,XPathSimpleMapExpression:()=>Tn,XPathSquareBracketArrayConstructor:()=>ut,XPathStep:()=>pe,XPathStringConcatExpression:()=>Pn,XPathStringLiteral:()=>At,XPathTreatExpression:()=>pn,XPathUnaryExpression:()=>It,XPathUnionExpression:()=>Ee,XPathVariableReference:()=>ve,XSLT3ErrorCodes:()=>tu,concatenateSequences:()=>vc,createSequence:()=>Rc,createTryExpression:()=>Zc,createTryOnly:()=>Ea,createTryWithFallback:()=>eu,createXPathArray:()=>U,flattenSequence:()=>Ic,getArrayMember:()=>_r,getArraySize:()=>sc,getBuiltInFunction:()=>Nn,getBuiltInFunctionArity:()=>ar,getNodeId:()=>_c,isXPathArray:()=>H,isXPathMap:()=>B,isXPathNode:()=>ds,parseStringTemplate:()=>Jr,safeEvaluate:()=>nu});var re=g(()=>{O();gi();Xi();Si();Ai();Ci();wi();Oi();Ri();Ii();vi();_i();Mi();ps();hs();ms();fs();ys();gs();xs();Ns();Es();En();yn();Qr();Hr();Kr();Zr();ei();ti();ni();ri();ba();ke();De();si()});var Ou={};We(Ou,{ExprContext:()=>et,XPath:()=>Ze,XmlParser:()=>$e,Xslt:()=>Cr,xmlEscapeText:()=>Rn});var S=class{constructor(e,t){this.type=e,this.lexeme=t}};var yi="1.0",Za={ancestor:{type:"LOCATION",value:"ancestor"},"ancestor-or-self":{type:"LOCATION",value:"ancestor-or-self"},attribute:{type:"LOCATION",value:"attribute"},child:{type:"LOCATION",value:"child"},descendant:{type:"LOCATION",value:"descendant"},"descendant-or-self":{type:"LOCATION",value:"descendant-or-self"},following:{type:"LOCATION",value:"following"},"following-sibling":{type:"LOCATION",value:"following-sibling"},namespace:{type:"LOCATION",value:"namespace"},parent:{type:"LOCATION",value:"parent"},preceding:{type:"LOCATION",value:"preceding"},"preceding-sibling":{type:"LOCATION",value:"preceding-sibling"},self:{type:"LOCATION",value:"self"},node:{type:"NODE_TYPE",value:"node"},text:{type:"NODE_TYPE",value:"text"},comment:{type:"NODE_TYPE",value:"comment"},"processing-instruction":{type:"NODE_TYPE",value:"processing-instruction"},and:{type:"OPERATOR",value:"and"},or:{type:"OPERATOR",value:"or"},div:{type:"OPERATOR",value:"div"},mod:{type:"OPERATOR",value:"mod"},last:{type:"FUNCTION",value:"last"},position:{type:"FUNCTION",value:"position"},count:{type:"FUNCTION",value:"count"},id:{type:"FUNCTION",value:"id"},"local-name":{type:"FUNCTION",value:"local-name"},"namespace-uri":{type:"FUNCTION",value:"namespace-uri"},name:{type:"FUNCTION",value:"name"},string:{type:"FUNCTION",value:"string"},concat:{type:"FUNCTION",value:"concat"},"starts-with":{type:"FUNCTION",value:"starts-with"},contains:{type:"FUNCTION",value:"contains"},"substring-before":{type:"FUNCTION",value:"substring-before"},"substring-after":{type:"FUNCTION",value:"substring-after"},substring:{type:"FUNCTION",value:"substring"},"string-length":{type:"FUNCTION",value:"string-length"},"normalize-space":{type:"FUNCTION",value:"normalize-space"},translate:{type:"FUNCTION",value:"translate"},boolean:{type:"FUNCTION",value:"boolean"},not:{type:"FUNCTION",value:"not"},true:{type:"FUNCTION",value:"true"},false:{type:"FUNCTION",value:"false"},lang:{type:"FUNCTION",value:"lang"},number:{type:"FUNCTION",value:"number"},sum:{type:"FUNCTION",value:"sum"},floor:{type:"FUNCTION",value:"floor"},ceiling:{type:"FUNCTION",value:"ceiling"},round:{type:"FUNCTION",value:"round"}},ec={if:{type:"RESERVED_WORD",value:"if"},then:{type:"RESERVED_WORD",value:"then"},else:{type:"RESERVED_WORD",value:"else"},for:{type:"RESERVED_WORD",value:"for"},in:{type:"RESERVED_WORD",value:"in"},return:{type:"RESERVED_WORD",value:"return"},some:{type:"RESERVED_WORD",value:"some"},every:{type:"RESERVED_WORD",value:"every"},satisfies:{type:"RESERVED_WORD",value:"satisfies"},instance:{type:"RESERVED_WORD",value:"instance"},of:{type:"RESERVED_WORD",value:"of"},cast:{type:"RESERVED_WORD",value:"cast"},as:{type:"RESERVED_WORD",value:"as"},castable:{type:"RESERVED_WORD",value:"castable"},treat:{type:"RESERVED_WORD",value:"treat"},to:{type:"RESERVED_WORD",value:"to"}},tc={let:{type:"RESERVED_WORD",value:"let"},function:{type:"RESERVED_WORD",value:"function"}},nc={map:{type:"RESERVED_WORD",value:"map"},array:{type:"RESERVED_WORD",value:"array"}};function rc(i){let e=P({},Za);return i!=="1.0"&&Object.assign(e,ec),(i==="3.0"||i==="3.1")&&Object.assign(e,tc),i==="3.1"&&Object.assign(e,nc),e}var Re=class{constructor(e){var t;typeof e=="object"?this.version=(t=e.version)!=null?t:yi:this.version=e!=null?e:yi,this.reservedWords=rc(this.version)}getVersion(){return this.version}registerFunctions(e){this.additionalFunctions||(this.additionalFunctions=new Set);for(let t of e)this.additionalFunctions.add(t)}isAlpha(e){return/^[a-zA-Z_\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]$/.test(e)}isAlphaNumeric(e){return/^[a-zA-Z0-9_\u00B7\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0300-\u036F\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u203F-\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]$/.test(e)}isNumber(e){return/^[0-9]$/.test(e)}isWhitespace(e){return/^[\s\t\n\r]$/.test(e)}peek(){return this.expression[this.current]}peekNext(){return this.expression[this.current+1]}next(){return this.expression[this.current++]}match(e){return this.current>=this.expression.length||this.expression[this.current]!==e?!1:(this.current++,!0)}parseIdentifier(e){let t=e;for(;this.current<this.expression.length;){let r=this.expression[this.current];if(this.isAlphaNumeric(r))t+=this.next();else if(r==="-"){let s=this.expression[this.current+1];if(s&&this.isAlphaNumeric(s))for(this.current++,t+="-";this.current<this.expression.length&&this.isAlphaNumeric(this.expression[this.current]);)t+=this.next();else break}else break}let n=this.reservedWords[t.toLowerCase()];if(n)return new S(n.type,t);if(this.additionalFunctions&&this.additionalFunctions.has(t))return new S("FUNCTION",t);if(t.length>0)return new S("IDENTIFIER",t);throw new Error(`Invalid identifier: ${t}`)}parseString(e){let t="";for(;this.current<this.expression.length&&this.expression[this.current]!==e;)t+=this.next();if(this.current>=this.expression.length)throw new Error("Unterminated string literal");return this.next(),new S("STRING",t)}parseStringTemplate(){let e="",t=0;for(;this.current<this.expression.length;){let n=this.expression[this.current];if(n==="\\"&&this.current+1<this.expression.length){let r=this.expression[this.current+1];if(r==="`"||r==="{"||r==="}"||r==="n"||r==="r"||r==="t"||r==="\\"){e+=n,this.next(),e+=this.next();continue}}if(n==="`"&&t===0)return this.next(),new S("STRING_TEMPLATE",e);n==="{"?t++:n==="}"&&t--,e+=this.next()}throw new Error("Unterminated string template")}parseNumber(e){let t=e;for(;this.current<this.expression.length&&this.isNumber(this.expression[this.current])&&this.expression[this.current]!==".";)t+=this.next();if(this.current<this.expression.length&&this.expression[this.current]===".")for(t+=this.next();this.current<this.expression.length&&this.isNumber(this.expression[this.current]);)t+=this.next();if(t.length>0)return new S("NUMBER",t);throw new Error(`Invalid number: ${t}`)}parseEQName(){this.next();let e="";for(;this.current<this.expression.length&&this.expression[this.current]!=="}";)e+=this.next();if(this.current>=this.expression.length)throw new Error("Unterminated EQName: missing '}' after URI");this.next();let t="";if(this.current<this.expression.length&&this.isAlpha(this.expression[this.current]))for(;this.current<this.expression.length;){let r=this.expression[this.current];if(this.isAlphaNumeric(r)||r==="-"||r==="_")t+=this.next();else break}if(t.length===0)throw new Error(`EQName missing local name after '}': Q{${e}}`);let n=`Q{${e}}${t}`;return new S("EQNAME",n)}scanToken(){let e=this.next();if(this.isWhitespace(e))return null;switch(e){case"@":return new S("AT",e);case"$":return new S("DOLLAR",e);case"|":return this.match("|")?new S("CONCAT","||"):new S("PIPE",e);case"#":return new S("HASH",e);case"{":return new S("OPEN_CURLY_BRACKET",e);case"}":return new S("CLOSE_CURLY_BRACKET",e);case"[":return new S("OPEN_SQUARE_BRACKET",e);case"]":return new S("CLOSE_SQUARE_BRACKET",e);case"(":return new S("OPEN_PAREN",e);case")":return new S("CLOSE_PAREN",e);case"+":return new S("PLUS",e);case"-":return new S("MINUS",e);case"*":return new S("ASTERISK",e);case",":return new S("COMMA",e);case"?":return new S("QUESTION",e);case"Q":return this.peek()==="{"?this.parseEQName():this.parseIdentifier(e);case".":return this.match(".")?new S("DOT_DOT",".."):this.peek()&&this.isNumber(this.peek())?this.parseNumber(e):new S("DOT",e);case"/":return this.match("/")?new S("DOUBLE_SLASH","//"):new S("SLASH",e);case":":return this.match(":")?new S("COLON_COLON","::"):this.match("=")?new S("ASSIGNMENT",":="):new S("COLON",e);case"=":return this.match(">")?new S("FAT_ARROW","=>"):new S("EQUALS",e);case"!":return this.match("=")?new S("NOT_EQUALS","!="):new S("SIMPLE_MAP",e);case"<":return this.match("=")?new S("LESS_THAN_OR_EQUAL","<="):new S("LESS_THAN",e);case">":return this.match("=")?new S("GREATER_THAN_OR_EQUAL",">="):new S("GREATER_THAN",e);case"'":return this.parseString("'");case'"':return this.parseString('"');case"`":return this.parseStringTemplate();default:if(this.isNumber(e))return this.parseNumber(e);if(this.isAlpha(e))return this.parseIdentifier(e);throw new Error(`Unexpected character: ${e}`)}}scan(e){for(this.expression=e,this.tokens=[],this.current=0;this.current<this.expression.length;){let t=this.scanToken();t!==null&&this.tokens.push(t)}return this.tokens}};re();je();qe();var ru=(i,e)=>(new Set(i).has(e)||i.push(e),Array.from(new Set(i)));function Ta(i){var r,s,o,a,c,u,l,p,h,f;let e=i!=null&&i.reservedFunctionNames?new Set(i.reservedFunctionNames):new Set(Ei),t=(r=i==null?void 0:i.defaultCollation)!=null?r:Or,n=ru((s=i==null?void 0:i.collations)!=null?s:[Or],t);return{schemaTypes:(o=i==null?void 0:i.schemaTypes)!=null?o:{},elementDeclarations:(a=i==null?void 0:i.elementDeclarations)!=null?a:{},attributeDeclarations:(c=i==null?void 0:i.attributeDeclarations)!=null?c:{},defaultElementNamespace:(u=i==null?void 0:i.defaultElementNamespace)!=null?u:"",defaultTypeNamespace:(l=i==null?void 0:i.defaultTypeNamespace)!=null?l:w,functionSignatures:(p=i==null?void 0:i.functionSignatures)!=null?p:{},defaultFunctionNamespace:(h=i==null?void 0:i.defaultFunctionNamespace)!=null?h:Ni,reservedFunctionNames:e,collations:n,defaultCollation:t,variableTypes:(f=i==null?void 0:i.variableTypes)!=null?f:{},contextItemType:i==null?void 0:i.contextItemType}}function Pa(i){let e=[],t=new Set;for(let n of i.functions)t.has(n.name)&&e.push(`Duplicate function name: ${n.name}`),t.add(n.name),n.minArgs<0&&e.push(`Function ${n.name}: minArgs cannot be negative`),n.maxArgs!==void 0&&n.maxArgs<n.minArgs&&e.push(`Function ${n.name}: maxArgs cannot be less than minArgs`),typeof n.implementation!="function"&&e.push(`Function ${n.name}: implementation must be a function`);return e}Ie();var Xa={XPWD0001:{code:"XPWD0001",severity:"deprecation",category:"deprecation",title:"Namespace axis deprecated",description:"The namespace axis (namespace::) is deprecated in XPath 2.0 and may not be supported in all implementations. Consider using fn:namespace-uri-for-prefix() or fn:in-scope-prefixes() instead.",migration:"Replace namespace::* with fn:in-scope-prefixes(.) to get namespace prefixes, or use fn:namespace-uri-for-prefix($prefix, .) to get namespace URIs.",specReference:"XPath 2.0 Section 3.2.1.1"},XPWD0002:{code:"XPWD0002",severity:"deprecation",category:"deprecation",title:"Implicit string conversion",description:"Implicit conversion of node-sets to strings using the first node is deprecated. In XPath 2.0, this requires explicit conversion using fn:string() or data().",migration:"Use fn:string($nodeset) or fn:data($nodeset) for explicit conversion.",specReference:"XPath 2.0 Appendix I.2"},XPWC0001:{code:"XPWC0001",severity:"warning",category:"compatibility",title:"XPath 1.0 compatibility mode active",description:"XPath 1.0 compatibility mode is enabled. Some XPath 2.0 type safety features are relaxed to maintain backward compatibility.",migration:"Consider migrating to XPath 2.0 semantics for improved type safety.",specReference:"XPath 2.0 Section 3.6"},XPWC0002:{code:"XPWC0002",severity:"warning",category:"compatibility",title:"String comparison in XPath 2.0",description:"String comparisons in XPath 2.0 are performed using Unicode codepoint collation by default, which may produce different results than XPath 1.0.",migration:"Use explicit collation specification if locale-specific comparison is needed.",specReference:"XPath 2.0 Appendix I.4"},XPWC0003:{code:"XPWC0003",severity:"warning",category:"compatibility",title:"Empty sequence handling differs",description:"In XPath 2.0, operations on empty sequences may return empty sequences instead of NaN or false as in XPath 1.0.",migration:"Use explicit empty sequence handling with fn:empty() or default values.",specReference:"XPath 2.0 Appendix I.3"},XPWT0001:{code:"XPWT0001",severity:"warning",category:"type-coercion",title:"Implicit numeric conversion",description:"Value is being implicitly converted to a number. In XPath 2.0, this requires explicit conversion in strict mode.",migration:"Use xs:decimal(), xs:double(), or number() for explicit conversion.",specReference:"XPath 2.0 Appendix I.2"},XPWT0002:{code:"XPWT0002",severity:"warning",category:"type-coercion",title:"Implicit boolean conversion",description:"Value is being implicitly converted to boolean using XPath 1.0 rules. In XPath 2.0, this is called Effective Boolean Value (EBV).",migration:"Use fn:boolean() for explicit conversion.",specReference:"XPath 2.0 Section 2.4.3"},XPWT0003:{code:"XPWT0003",severity:"info",category:"type-coercion",title:"Numeric type promotion",description:"Numeric value is being promoted in the type hierarchy (integer \u2192 decimal \u2192 float \u2192 double). This may result in precision loss.",migration:"Consider using explicit casting if precision is important.",specReference:"XPath 2.0 Appendix B.1"},XPWB0001:{code:"XPWB0001",severity:"warning",category:"behavior-change",title:"Arithmetic with empty sequence",description:"In XPath 2.0, arithmetic operations with empty sequences return empty sequences, not NaN as in XPath 1.0.",migration:"Handle empty sequences explicitly before arithmetic operations.",specReference:"XPath 2.0 Appendix I.3"},XPWB0002:{code:"XPWB0002",severity:"warning",category:"behavior-change",title:"Comparison with empty sequence",description:"In XPath 2.0, value comparisons (eq, ne, etc.) with empty sequences return empty sequences, not false.",migration:"Use fn:empty() or fn:exists() to check for empty sequences before comparison.",specReference:"XPath 2.0 Appendix I.3"},XPWB0003:{code:"XPWB0003",severity:"warning",category:"behavior-change",title:"Multiple values in singleton context",description:"A sequence with multiple items is being used where a single item is expected. In XPath 2.0, this may raise a type error.",migration:"Use predicates or fn:head() to select a single item.",specReference:"XPath 2.0 Section 2.4.4"},XPWB0004:{code:"XPWB0004",severity:"warning",category:"behavior-change",title:"String value of nodes",description:"The string value of typed nodes in XPath 2.0 may differ from XPath 1.0 when schema type information is present.",migration:"Use fn:string() for consistent string conversion.",specReference:"XPath 2.0 Appendix I.1"},XPWP0001:{code:"XPWP0001",severity:"info",category:"performance",title:"Descendant axis on large document",description:"Using descendant or descendant-or-self axis on large documents may impact performance. Consider using more specific path expressions.",migration:"Use more specific paths or indexes if available."},XPWP0002:{code:"XPWP0002",severity:"info",category:"performance",title:"General comparison on sequences",description:"General comparisons (=, !=, etc.) on sequences perform existential quantification, which may be slower than value comparisons on single items.",migration:"Use value comparisons (eq, ne, etc.) when comparing single values.",specReference:"XPath 2.0 Section 3.5.2"}},iu={enabled:!0,minSeverity:"info",suppressCategories:[],suppressCodes:[],handler:()=>{},logToConsole:!1,maxWarnings:100,emitOnce:!0},Sa={info:0,warning:1,deprecation:2},oi=class{constructor(e){this.warnings=[];this.emittedCodes=new Set;this.config=P(P({},iu),e)}emit(e,t,n){if(!this.config.enabled)return;let r=Xa[e];if(!r){this.addWarning({code:e,message:`Unknown warning: ${e}`,severity:"warning",category:"compatibility",context:t,expression:n});return}if(this.config.suppressCodes.includes(e)||this.config.suppressCategories.includes(r.category)||Sa[r.severity]<Sa[this.config.minSeverity]||this.config.emitOnce&&this.emittedCodes.has(e)||this.warnings.length>=this.config.maxWarnings)return;let s={code:r.code,message:r.description,severity:r.severity,category:r.category,context:t,expression:n};this.addWarning(s),this.emittedCodes.add(e)}emitCustom(e){this.config.enabled&&(this.warnings.length>=this.config.maxWarnings||this.config.emitOnce&&this.emittedCodes.has(e.code)||(this.addWarning(e),this.emittedCodes.add(e.code)))}addWarning(e){if(this.warnings.push(e),this.config.handler&&this.config.handler(e),this.config.logToConsole){let t=e.severity==="deprecation"?"[DEPRECATED]":e.severity==="warning"?"[WARNING]":"[INFO]";console.warn(`${t} ${e.code}: ${e.message}`)}}getWarnings(){return this.warnings}getWarningsBySeverity(e){return this.warnings.filter(t=>t.severity===e)}getWarningsByCategory(e){return this.warnings.filter(t=>t.category===e)}hasWarnings(){return this.warnings.length>0}count(){return this.warnings.length}clear(){this.warnings=[],this.emittedCodes.clear()}formatReport(){if(this.warnings.length===0)return"No warnings.";let e=[];e.push(`XPath Warnings Report (${this.warnings.length} warning${this.warnings.length===1?"":"s"}):`),e.push("");let t={};for(let n of this.warnings){let r=n.category;t[r]||(t[r]=[]),t[r].push(n)}for(let n of Object.keys(t)){let r=t[n];e.push(`## ${su(n)}`);for(let s of r){let o=Xa[s.code];e.push(` ${s.code}: ${(o==null?void 0:o.title)||s.message}`),s.context&&e.push(` Context: ${s.context}`),o!=null&&o.migration&&e.push(` Migration: ${o.migration}`)}e.push("")}return e.join(`
|
|
6
|
+
`)}};function su(i){switch(i){case"deprecation":return"Deprecated Features";case"compatibility":return"Compatibility Issues";case"performance":return"Performance Considerations";case"type-coercion":return"Type Coercion";case"behavior-change":return"Behavior Changes";default:return i}}function ai(i){return new oi(i)}var gt=class{constructor(e){this.tokens=[];this.current=0;var t,n,r,s;if(this.options={strict:(t=e==null?void 0:e.strict)!=null?t:!0,version:e==null?void 0:e.version,cache:e==null?void 0:e.cache,extensions:e==null?void 0:e.extensions,enableNamespaceAxis:(n=e==null?void 0:e.enableNamespaceAxis)!=null?n:!1,staticContext:(r=e==null?void 0:e.staticContext)!=null?r:Ta(),xpath10CompatibilityMode:(s=e==null?void 0:e.xpath10CompatibilityMode)!=null?s:!1,warningConfig:e==null?void 0:e.warningConfig,warningCollector:e==null?void 0:e.warningCollector},this.staticContext=this.options.staticContext,this.options.warningCollector?this.warningCollector=this.options.warningCollector:this.options.warningConfig?this.warningCollector=ai(this.options.warningConfig):this.warningCollector=ai({logToConsole:!1}),this.options.extensions){let o=Pa(this.options.extensions);if(o.length>0)throw new Error(`Invalid XSLT extensions: ${o.join(", ")}`);this.extensions=this.options.extensions}}getWarningCollector(){return this.warningCollector}ensureVersionSupport(e,t){var r;let n=(r=this.options.version)!=null?r:t;if(this.options.version=n,this.options.strict!==!1&&!e.includes(n))throw new Error(`XPath version ${n} is not supported by ${this.constructor.name}. Supported versions: ${e.join(", ")}`)}getOptions(){return this.options}parse(e){if(this.tokens=e,this.current=0,this.options.xpath10CompatibilityMode&&this.options.version&&this.options.version!=="1.0"&&this.warningCollector.emit("XPWC0001",`XPath ${this.options.version} with compatibility mode`,e.map(n=>n.lexeme).join("")),e.length===0)throw ne("Empty expression");let t=this.parseExpr();if(!this.isAtEnd())throw ne(`Unexpected token: ${this.peek().lexeme}`);return t}peek(){return this.tokens[this.current]}peekNext(){return this.tokens[this.current+1]}previous(){return this.tokens[this.current-1]}isAtEnd(){return this.current>=this.tokens.length}advance(){return this.isAtEnd()||this.current++,this.previous()}check(e){return this.isAtEnd()?!1:this.peek().type===e}checkLexeme(e){return this.isAtEnd()?!1:this.peek().lexeme===e}match(...e){for(let t of e)if(this.check(t))return this.advance(),!0;return!1}consume(e,t){var n,r;if(this.check(e))return this.advance();throw ne(`${t}. Got: ${(r=(n=this.peek())==null?void 0:n.lexeme)!=null?r:"EOF"}`)}parseExpr(){return this.parseOrExpr()}parseOrExpr(){let e=this.parseAndExpr();for(;this.check("OPERATOR")&&this.peek().lexeme==="or";){this.advance();let t=this.parseAndExpr();e=new rt(e,t,"or")}return e}parseAndExpr(){let e=this.parseEqualityExpr();for(;this.check("OPERATOR")&&this.peek().lexeme==="and";){this.advance();let t=this.parseEqualityExpr();e=new rt(e,t,"and")}return e}parseEqualityExpr(){let e=this.parseRelationalExpr();for(;this.match("EQUALS","NOT_EQUALS");){let t=this.previous().lexeme,n=this.parseRelationalExpr();e=new nt(e,n,t)}return e}parseRelationalExpr(){let e=this.parseAdditiveExpr();for(;this.match("LESS_THAN","GREATER_THAN","LESS_THAN_OR_EQUAL","GREATER_THAN_OR_EQUAL");){let t=this.previous().lexeme,n=this.parseAdditiveExpr();e=new nt(e,n,t)}return e}parseAdditiveExpr(){let e=this.parseMultiplicativeExpr();for(;this.match("PLUS","MINUS");){let t=this.previous().lexeme,n=this.parseMultiplicativeExpr();e=new Be(e,n,t)}return e}parseMultiplicativeExpr(){let e=this.parseUnaryExpr();for(;;)if(this.match("ASTERISK")){let t=this.parseUnaryExpr();e=new Be(e,t,"*")}else if(this.check("OPERATOR")&&(this.peek().lexeme==="div"||this.peek().lexeme==="mod")){let t=this.advance().lexeme,n=this.parseUnaryExpr();e=new Be(e,n,t)}else break;return e}parseUnaryExpr(){if(this.match("MINUS")){let e=this.parseUnaryExpr();return new It("-",e)}return this.parseUnionExpr()}parseUnionExpr(){let e=this.parsePathExpr();for(;this.match("PIPE");){let t=this.parsePathExpr();e=new Ee(e,t)}return e}parsePathExpr(){if(this.check("SLASH")||this.check("DOUBLE_SLASH"))return this.parseLocationPath();if(this.isStepStart())return this.parseLocationPath();let e=this.parseFilterExpr();if(this.match("SLASH","DOUBLE_SLASH")){let t=this.previous().type==="DOUBLE_SLASH",n=this.parseRelativeLocationPath();t&&n.unshift(new pe("descendant-or-self",{type:"node-type",nodeType:"node"}));let r=new he(n,!1);return new Rt(e,r)}return e}isStepStart(){if(this.isAtEnd())return!1;let e=this.peek(),t=this.peekNext(),n=["element","attribute","schema-element","schema-attribute","document-node","node","text","comment","processing-instruction"];if((e.type==="IDENTIFIER"||e.type==="NODE_TYPE")&&(t==null?void 0:t.type)==="OPEN_PAREN"&&n.includes(e.lexeme.toLowerCase()))return!0;if(this.isFunctionCallStart())return!1;if(e.type==="DOT"||e.type==="DOT_DOT"||e.type==="AT"||e.type==="LOCATION"||e.type==="NODE_TYPE"||e.type==="ASTERISK")return!0;if(e.type==="IDENTIFIER"||e.type==="OPERATOR"||e.type==="FUNCTION"){let r=this.peekNext();return!r||r.type!=="OPEN_PAREN"}return!1}parseLocationPath(){let e=!1,t=[];return this.match("SLASH")?(e=!0,!this.isAtEnd()&&this.isStepStart()&&t.push(...this.parseRelativeLocationPath())):this.match("DOUBLE_SLASH")?(e=!0,t.push(new pe("descendant-or-self",{type:"node-type",nodeType:"node"})),t.push(...this.parseRelativeLocationPath())):t.push(...this.parseRelativeLocationPath()),new he(t,e)}parseRelativeLocationPath(){let e=[];for(e.push(this.parseStep());this.match("SLASH","DOUBLE_SLASH");)this.previous().type==="DOUBLE_SLASH"&&e.push(new pe("descendant-or-self",{type:"node-type",nodeType:"node"})),e.push(this.parseStep());return e}parseStep(){if(this.match("DOT"))return new pe("self",{type:"node-type",nodeType:"node"});if(this.match("DOT_DOT"))return new pe("parent",{type:"node-type",nodeType:"node"});let e="child";if(this.match("AT"))e="attribute";else if(this.check("LOCATION")){let r=this.peekNext();r&&r.type==="COLON_COLON"&&(e=this.advance().lexeme,this.advance())}if(e==="namespace"){if(!this.options.enableNamespaceAxis)throw bi("namespace");this.warnNamespaceAxis()}let t=this.parseNodeTest(),n=this.parsePredicates();return new pe(e,t,n)}parseNodeTest(){var e,t;if(this.match("ASTERISK"))return{type:"wildcard"};if(this.check("NODE_TYPE")||this.check("IDENTIFIER")||this.check("LOCATION")||this.check("FUNCTION")||this.check("OPERATOR")){let n=this.peekNext();if(n&&n.type==="OPEN_PAREN"){let r=this.advance().lexeme.toLowerCase();if(this.advance(),r==="element")return this.parseElementTest();if(r==="attribute")return this.parseAttributeTest();if(r==="document-node")return this.parseDocumentNodeTest();if(r==="schema-element"){let s=this.parseNameOrWildcard();return this.consume("CLOSE_PAREN","Expected ')' after schema-element name"),{type:"schema-element",name:s}}if(r==="schema-attribute"){let s=this.parseNameOrWildcard();return this.consume("CLOSE_PAREN","Expected ')' after schema-attribute name"),{type:"schema-attribute",name:s}}if(r==="node"||r==="text"||r==="comment"||r==="processing-instruction"){if(r==="processing-instruction"&&this.check("STRING")){let s=this.advance().lexeme;return this.consume("CLOSE_PAREN","Expected ')' after processing-instruction target"),{type:"processing-instruction",target:s}}return this.consume("CLOSE_PAREN","Expected ')' after node type"),{type:"node-type",nodeType:r}}}}if(this.check("IDENTIFIER")||this.check("LOCATION")||this.check("FUNCTION")||this.check("NODE_TYPE")||this.check("OPERATOR")){let n=this.advance().lexeme;if(this.match("COLON")){if(this.match("ASTERISK"))return{type:"wildcard",name:`${n}:*`};if(this.check("IDENTIFIER")||this.check("LOCATION")||this.check("FUNCTION")||this.check("NODE_TYPE")||this.check("OPERATOR")){let r=this.advance().lexeme;return{type:"name",name:`${n}:${r}`}}throw new Error("Expected local name after namespace prefix")}return{type:"name",name:n}}throw ne(`Expected node test, got: ${(t=(e=this.peek())==null?void 0:e.lexeme)!=null?t:"EOF"}`)}parsePredicates(){let e=[];for(;this.match("OPEN_SQUARE_BRACKET");){let t=this.parseExpr();this.consume("CLOSE_SQUARE_BRACKET","Expected ']' after predicate"),e.push(new dn(t))}return e}parseFilterExpr(){let e=this.parsePrimaryExpr(),t=[];for(;this.check("OPEN_SQUARE_BRACKET");)t.push(...this.parsePredicates());return t.length>0?new Ot(e,t):e}parsePrimaryExpr(){var e,t;if(this.match("DOLLAR")){let n=this.consume("IDENTIFIER","Expected variable name after $").lexeme;return new ve(n)}if(this.match("OPEN_PAREN")){if(this.check("CLOSE_PAREN"))return this.advance(),new fn;let n=this.parseExpr();return this.consume("CLOSE_PAREN","Expected ')' after expression"),n}if(this.check("STRING")){let n=this.advance().lexeme;return new At(n)}if(this.check("NUMBER")){let n=parseFloat(this.advance().lexeme);return new Ct(n)}if(this.isFunctionCallStart())return this.parseFunctionCall();throw ne(`Unexpected token in primary expression: ${(t=(e=this.peek())==null?void 0:e.lexeme)!=null?t:"EOF"}`)}parseFunctionCall(){let e=this.advance().lexeme;if(e.startsWith("Q{"))this.consume("OPEN_PAREN","Expected '(' after function name");else if(this.match("COLON")){let n=this.advance();if(!this.isNcNameToken(n.type))throw ne("Expected local name after namespace prefix");e=`${e}:${n.lexeme}`}e.startsWith("Q{")||this.consume("OPEN_PAREN","Expected '(' after function name");let t=[];if(!this.check("CLOSE_PAREN"))do t.push(this.parseExpr());while(this.match("COMMA"));return this.consume("CLOSE_PAREN","Expected ')' after function arguments"),new fe(e,t)}isFunctionCallStart(){var s,o,a;if(this.isAtEnd())return!1;let e=this.peek(),t=this.peekNext(),r=["element","attribute","schema-element","schema-attribute","document-node","node","text","comment","processing-instruction"].includes((a=(o=(s=e.lexeme)==null?void 0:s.toLowerCase)==null?void 0:o.call(s))!=null?a:"");if(e.type==="EQNAME"&&(t==null?void 0:t.type)==="OPEN_PAREN")return!0;if(this.isFunctionNameToken(e.type)&&(t==null?void 0:t.type)==="OPEN_PAREN")return!r;if(this.isFunctionNameToken(e.type)&&(t==null?void 0:t.type)==="COLON"){let c=this.tokens[this.current+2],u=this.tokens[this.current+3];if(c&&this.isFunctionNameToken(c.type)&&(u==null?void 0:u.type)==="OPEN_PAREN")return!0}return!1}warnNamespaceAxis(){this.warningCollector.emit("XPWD0001","namespace:: axis",this.tokens.map(e=>e.lexeme).join(""))}isFunctionNameToken(e){return e==="IDENTIFIER"||e==="FUNCTION"||e==="OPERATOR"||e==="LOCATION"||e==="EQNAME"}isNcNameToken(e){return e==="IDENTIFIER"||e==="FUNCTION"||e==="OPERATOR"||e==="LOCATION"||e==="NODE_TYPE"}parseNameOrWildcard(){let e="";if(this.match("ASTERISK"))return"*";if(this.check("EQNAME"))return this.advance().lexeme;if((this.check("IDENTIFIER")||this.check("NODE_TYPE")||this.check("FUNCTION")||this.check("LOCATION")||this.check("OPERATOR"))&&(e=this.advance().lexeme,this.match("COLON"))){if(this.match("ASTERISK"))return`${e}:*`;(this.check("IDENTIFIER")||this.check("NODE_TYPE")||this.check("FUNCTION")||this.check("LOCATION")||this.check("OPERATOR"))&&(e+=":"+this.advance().lexeme)}return e}parseElementTest(){if(this.check("CLOSE_PAREN"))return this.advance(),{type:"element"};let e=this.parseNameOrWildcard(),t;return this.match("COMMA")&&(this.check("IDENTIFIER")||this.check("NODE_TYPE")||this.check("FUNCTION")||this.check("LOCATION"))&&(t=this.parseNameOrWildcard()),this.consume("CLOSE_PAREN","Expected ')' after element test"),{type:"element",name:e==="*"?void 0:e,elementType:t,isWildcardName:e==="*"}}parseAttributeTest(){if(this.check("CLOSE_PAREN"))return this.advance(),{type:"attribute"};let e=this.parseNameOrWildcard(),t;return this.match("COMMA")&&(this.check("IDENTIFIER")||this.check("NODE_TYPE")||this.check("FUNCTION")||this.check("LOCATION"))&&(t=this.parseNameOrWildcard()),this.consume("CLOSE_PAREN","Expected ')' after attribute test"),{type:"attribute",name:e==="*"?void 0:e,elementType:t,isWildcardName:e==="*"}}parseDocumentNodeTest(){if(this.check("CLOSE_PAREN"))return this.advance(),{type:"document-node"};let e=this.parseNodeTest();return this.consume("CLOSE_PAREN","Expected ')' after document-node test"),{type:"document-node",elementTest:e}}};var On=class extends gt{constructor(e){super(e),this.ensureVersionSupport(["1.0"],"1.0")}};re();Me();var xt=class extends gt{constructor(e){super(e),this.ensureVersionSupport(["2.0","3.0","3.1"],"2.0")}parseExpr(){return this.checkReservedWord("for")?this.parseForExpr():this.checkReservedWord("some")||this.checkReservedWord("every")?this.parseQuantifiedExpr():super.parseExpr()}parseUnionExpr(){let e=this.parseInstanceOfExpr();for(;this.match("PIPE");){let t=this.parseInstanceOfExpr();e=new Ee(e,t)}return e}parsePrimaryExpr(){return this.check("RESERVED_WORD")&&this.peek().lexeme==="if"?this.parseIfExpr():super.parsePrimaryExpr()}parseInstanceOfExpr(){let e=this.parseTreatExpr();if(this.checkReservedWord("instance")){this.advance(),this.consumeReservedWord("of","Expected 'of' after 'instance'");let t=this.parseSequenceType();e=new un(e,t)}return e}parseTreatExpr(){let e=this.parseCastableExpr();if(this.checkReservedWord("treat")){this.advance(),this.consumeReservedWord("as","Expected 'as' after 'treat'");let t=this.parseSequenceType();e=new pn(e,t)}return e}parseCastableExpr(){let e=this.parsePathExpr();if(this.checkReservedWord("castable")){this.advance(),this.consumeReservedWord("as","Expected 'as' after 'castable'");let t=this.parseSequenceType();e=new ln(e,t)}return e}parseIfExpr(){this.advance(),this.consume("OPEN_PAREN","Expected '(' after 'if'");let e=this.parseExpr();if(this.consume("CLOSE_PAREN","Expected ')' after if test expression"),!(this.check("RESERVED_WORD")&&this.peek().lexeme==="then"))throw new Error("Expected 'then' in conditional expression");this.advance();let t=this.parseExpr();if(!(this.check("RESERVED_WORD")&&this.peek().lexeme==="else"))throw new Error("Expected 'else' in conditional expression");this.advance();let n=this.parseExpr();return new vt(e,t,n)}parseQuantifiedExpr(){let e=this.consumeReservedWordOneOf(["some","every"],"Expected 'some' or 'every' at start of quantified expression"),t=[];do t.push(this.parseForBinding());while(this.match("COMMA"));this.consumeReservedWord("satisfies","Expected 'satisfies' after quantified expression bindings");let n=this.parseExpr();return new Mt(e,t,n)}parseForExpr(){this.consumeReservedWord("for","Expected 'for' at start of for expression");let e=[];do e.push(this.parseForBinding());while(this.match("COMMA"));this.consumeReservedWord("return","Expected 'return' in for expression");let t=this.parseExpr();return new _t(e,t)}parseForBinding(){this.consume("DOLLAR","Expected '$' after 'for'");let e=this.consume("IDENTIFIER","Expected variable name in for binding").lexeme;this.consumeReservedWord("in","Expected 'in' after variable name in for clause");let t=this.parseExpr();return{variable:e,expression:t}}parseSequenceType(){if(this.checkName("empty-sequence"))return this.advance(),this.consume("OPEN_PAREN","Expected '(' after empty-sequence"),this.consume("CLOSE_PAREN","Expected ')' after empty-sequence"),st();if(this.checkName("item")){this.advance(),this.consume("OPEN_PAREN","Expected '(' after item"),this.consume("CLOSE_PAREN","Expected ')' after item()");let s=this.parseOccurrenceIndicator();return oe(it,s)}if(this.checkName("map")){this.advance(),this.consume("OPEN_PAREN","Expected '(' after map");let s=null,o=null;this.match("ASTERISK")?this.consume("CLOSE_PAREN","Expected ')' after map(*)"):(s=this.parseSequenceType(),this.consume("COMMA","Expected ',' after key type in map()"),o=this.parseSequenceType(),this.consume("CLOSE_PAREN","Expected ')' after map type"));let a=this.parseOccurrenceIndicator(),{createTypedMapTest:c}=(pt(),L(Dt)),u=c(s,o);return oe(u,a)}if(this.checkName("array")){this.advance(),this.consume("OPEN_PAREN","Expected '(' after array");let s=null;this.match("ASTERISK")?this.consume("CLOSE_PAREN","Expected ')' after array(*)"):(s=this.parseSequenceType(),this.consume("CLOSE_PAREN","Expected ')' after array type"));let o=this.parseOccurrenceIndicator(),{createTypedArrayTest:a}=(pt(),L(Dt)),c=a(s);return oe(c,o)}let e=this.parseQName(),t=this.parseOccurrenceIndicator(),n=this.stripPrefix(e),r=ae(n);if(!r)throw new Error(`Unknown atomic type: ${e}`);return ot(r,t)}parseAdditiveExpr(){let e=this.parseRangeExpr();for(;this.match("PLUS","MINUS");){let t=this.previous().lexeme,n=this.parseRangeExpr();e=new(re(),L(Ve)).XPathArithmeticExpression(e,n,t)}return e}parseRangeExpr(){let e=this.parseMultiplicativeExpr();if(this.checkReservedWord("to")){this.advance();let t=this.parseMultiplicativeExpr();e=new mn(e,t)}return e}parseOccurrenceIndicator(){return this.match("QUESTION")?"?":this.match("ASTERISK")?"*":this.match("PLUS")?"+":"ONE"}parseQName(){let e=this.consumeNameToken("Expected type name in SequenceType");if(this.match("COLON")){let t=this.consumeNameToken("Expected local name after : in SequenceType").lexeme;return`${e.lexeme}:${t}`}return e.lexeme}stripPrefix(e){let t=e.split(":");return t.length===2?t[1]:t[0]}consumeNameToken(e){var t,n;if(this.isNameToken())return this.advance();throw new Error(`${e}. Got: ${(n=(t=this.peek())==null?void 0:t.lexeme)!=null?n:"EOF"}`)}isNameToken(){if(this.isAtEnd())return!1;let e=this.peek().type;return e==="IDENTIFIER"||e==="FUNCTION"||e==="NODE_TYPE"||e==="OPERATOR"||e==="LOCATION"||e==="RESERVED_WORD"}checkName(e){return this.isNameToken()&&this.peek().lexeme===e}checkReservedWord(e){return this.check("RESERVED_WORD")&&this.peek().lexeme===e}consumeReservedWord(e,t){var n,r;if(this.checkReservedWord(e)){this.advance();return}throw new Error(`${t}. Got: ${(r=(n=this.peek())==null?void 0:n.lexeme)!=null?r:"EOF"}`)}consumeReservedWordOneOf(e,t){var n,r;for(let s of e)if(this.checkReservedWord(s))return this.advance(),s;throw new Error(`${t}. Got: ${(r=(n=this.peek())==null?void 0:n.lexeme)!=null?r:"EOF"}`)}};re();Qr();Hr();Kr();Zr();ei();ti();ni();ri();Me();Ie();var Nt=class extends xt{constructor(e){let t=e?P({},e):{};t.version||(t.version="3.0"),super(t),this.ensureVersionSupport(["3.0","3.1"],"3.0")}parseExpr(){if(this.checkReservedWordInternal("let"))return this.parseLetExpr();let e=this.parseExprSingle();if(this.check("COMMA")){let t=[e];for(;this.match("COMMA");)t.push(this.parseExprSingle());return new hn(t)}return e}parseExprSingle(){return this.checkReservedWordInternal("let")?this.parseLetExpr():super.parseExpr()}parseAdditiveExpr(){let e=this.parseStringConcatExpr();for(;this.match("PLUS","MINUS");){let t=this.previous().lexeme,n=this.parseStringConcatExpr();e=new(re(),L(Ve)).XPathArithmeticExpression(e,n,t)}return e}parseStringConcatExpr(){let e=this.parseRangeExpr();for(;this.match("CONCAT");){let t=this.parseRangeExpr();e=new Pn(e,t)}return e}parseUnionExpr(){let e=this.parseSimpleMapExpr();for(;this.match("PIPE");){let t=this.parseSimpleMapExpr();e=new(re(),L(Ve)).XPathUnionExpression(e,t)}return e}parseSimpleMapExpr(){let e=this.parseInstanceOfExprInternal();for(;this.match("SIMPLE_MAP");){let t=this.parseInstanceOfExprInternal();e=new Tn(e,t)}return e}parseInstanceOfExprInternal(){let e=this.parseTreatExprInternal();if(this.checkReservedWordInternal("instance")){this.advance(),this.consumeReservedWordInternal("of","Expected 'of' after 'instance'");let t=this.parseSequenceTypeInternal();e=new(re(),L(Ve)).XPathInstanceOfExpression(e,t)}return e}parseTreatExprInternal(){let e=this.parseCastableExprInternal();if(this.checkReservedWordInternal("treat")){this.advance(),this.consumeReservedWordInternal("as","Expected 'as' after 'treat'");let t=this.parseSequenceTypeInternal();e=new(re(),L(Ve)).XPathTreatExpression(e,t)}return e}parseCastableExprInternal(){let e=this.parseArrowExpr();if(this.checkReservedWordInternal("castable")){this.advance(),this.consumeReservedWordInternal("as","Expected 'as' after 'castable'");let t=this.parseSequenceTypeInternal();e=new(re(),L(Ve)).XPathCastableExpression(e,t)}return e}parseArrowExpr(){let e=this.parsePathExpr();for(;this.match("FAT_ARROW");){let t,n=[];if(this.check("DOLLAR")){this.advance();let r=this.consume("IDENTIFIER","Expected variable name after $").lexeme;if(t=new ve(r),this.consume("OPEN_PAREN","Expected '(' after function variable in arrow expression"),!this.check("CLOSE_PAREN"))do n.push(this.parseExprSingle());while(this.match("COMMA"));this.consume("CLOSE_PAREN","Expected ')' after arrow expression arguments"),e=new dt(t,[e,...n])}else{let r=this.advance().lexeme;if(this.match("COLON")){let s=this.advance();r=`${r}:${s.lexeme}`}if(this.consume("OPEN_PAREN","Expected '(' after function name in arrow expression"),!this.check("CLOSE_PAREN"))do n.push(this.parseExprSingle());while(this.match("COMMA"));this.consume("CLOSE_PAREN","Expected ')' after arrow expression arguments"),e=new Sn(e,r,n)}}return e}parseFunctionCall(){let e=this.advance().lexeme;if(this.match("COLON")){let n=this.advance();e=`${e}:${n.lexeme}`}this.consume("OPEN_PAREN","Expected '(' after function name");let t=[];if(!this.check("CLOSE_PAREN"))do t.push(this.parseExprSingle());while(this.match("COMMA"));return this.consume("CLOSE_PAREN","Expected ')' after function arguments"),new fe(e,t)}parsePrimaryExpr(){if(this.check("STRING_TEMPLATE")){let e=this.advance().lexeme;return this.parseStringTemplateFromLexeme(e)}if(this.match("DOLLAR")){let e=this.consumeNameTokenInternal("Expected variable name after $");return new ve(e.lexeme)}return this.checkReservedWordInternal("function")?this.parseInlineFunction():this.isFunctionRefStart()?this.parseNamedFunctionRef():super.parsePrimaryExpr()}isStepStart(){return this.isFunctionRefStart()?!1:super.isStepStart()}parseFilterExpr(){let e=this.parsePrimaryExpr();if(this.check("OPEN_PAREN")){this.advance();let n=[];if(!this.check("CLOSE_PAREN"))do n.push(this.parseExprSingle());while(this.match("COMMA"));this.consume("CLOSE_PAREN","Expected ')' after function arguments"),e=new dt(e,n)}let t=[];for(;this.check("OPEN_SQUARE_BRACKET");)t.push(...this.parsePredicates());if(t.length>0){let n=(re(),L(Ve)).XPathFilterExpression;return new n(e,t)}return e}isFunctionRefStart(){if(this.isAtEnd())return!1;let e=this.peek();if(e.type==="EQNAME"){let t=this.peekNext();return(t==null?void 0:t.type)==="HASH"}if(e.type==="IDENTIFIER"||e.type==="FUNCTION"||e.type==="OPERATOR"||e.type==="LOCATION"){let t=1,n=!1;for(;t<this.tokens.length-this.current;){let r=this.tokens[this.current+t];if(!r)break;if(r.type==="HASH"){n=!0;break}if(r.type==="MINUS"||r.type==="COLON"||r.type==="IDENTIFIER"||r.type==="FUNCTION"||r.type==="OPERATOR"||r.type==="LOCATION"||r.type==="NODE_TYPE")t++;else break}return n}return!1}parseNamedFunctionRef(){let e=this.advance().lexeme;for(;!this.isAtEnd()&&!this.check("HASH")&&(this.match("MINUS")||this.match("COLON"));){let r=this.previous().lexeme,s=this.peek();if(s&&(s.type==="IDENTIFIER"||s.type==="FUNCTION"||s.type==="OPERATOR"||s.type==="LOCATION"||s.type==="NODE_TYPE"))this.advance(),e=`${e}${r}${s.lexeme}`;else throw ne(`Expected name after '${r}' in function reference`)}this.consume("HASH","Expected '#' in function reference");let t=this.consume("NUMBER","Expected arity number after '#'"),n=parseInt(t.lexeme,10);if(isNaN(n)||n<0)throw ne(`Invalid function arity: ${t.lexeme}`);return new An(e,n)}parseInlineFunction(){this.advance(),this.consume("OPEN_PAREN","Expected '(' after 'function'");let e=[];if(!this.check("CLOSE_PAREN"))do{this.consume("DOLLAR","Expected '$' before parameter name");let r=this.consume("IDENTIFIER","Expected parameter name").lexeme,s;this.checkReservedWordInternal("as")&&(this.advance(),s=this.parseSequenceTypeInternal()),e.push({name:r,type:s})}while(this.match("COMMA"));this.consume("CLOSE_PAREN","Expected ')' after function parameters");let t;this.checkReservedWordInternal("as")&&(this.advance(),t=this.parseSequenceTypeInternal()),this.consume("OPEN_CURLY_BRACKET","Expected '{' before function body");let n=this.parseExpr();return this.consume("CLOSE_CURLY_BRACKET","Expected '}' after function body"),new Cn(e,n,t)}parseLetExpr(){this.consumeReservedWordInternal("let","Expected 'let'");let e=[];do e.push(this.parseLetBinding());while(this.match("COMMA"));this.consumeReservedWordInternal("return","Expected 'return' in let expression");let t=this.parseExpr();return new bn(e,t)}parseLetBinding(){this.consume("DOLLAR","Expected '$' before variable name in let binding");let t=this.consumeNameTokenInternal("Expected variable name in let binding").lexeme,n;this.checkReservedWordInternal("as")&&(this.advance(),n=this.parseSequenceTypeInternal()),this.consume("ASSIGNMENT","Expected ':=' after variable name in let binding");let r=this.parseExprSingle();return{variable:t,expression:r,type:n}}checkReservedWordInternal(e){return this.check("RESERVED_WORD")&&this.peek().lexeme===e}consumeReservedWordInternal(e,t){var n,r;if(this.checkReservedWordInternal(e)){this.advance();return}throw ne(`${t}. Got: ${(r=(n=this.peek())==null?void 0:n.lexeme)!=null?r:"EOF"}`)}parseSequenceTypeInternal(){if(this.checkNameInternal("empty-sequence"))return this.advance(),this.consume("OPEN_PAREN","Expected '(' after empty-sequence"),this.consume("CLOSE_PAREN","Expected ')' after empty-sequence"),st();if(this.checkNameInternal("item")){this.advance(),this.consume("OPEN_PAREN","Expected '(' after item"),this.consume("CLOSE_PAREN","Expected ')' after item()");let s=this.parseOccurrenceIndicatorInternal();return oe(it,s)}if(this.checkNameInternal("map")){this.advance(),this.consume("OPEN_PAREN","Expected '(' after map");let s=null,o=null;this.match("ASTERISK")?this.consume("CLOSE_PAREN","Expected ')' after map(*)"):(s=this.parseSequenceTypeInternal(),this.consume("COMMA","Expected ',' after key type in map()"),o=this.parseSequenceTypeInternal(),this.consume("CLOSE_PAREN","Expected ')' after map type"));let a=this.parseOccurrenceIndicatorInternal(),{createTypedMapTest:c}=(pt(),L(Dt)),u=c(s,o);return oe(u,a)}if(this.checkNameInternal("array")){this.advance(),this.consume("OPEN_PAREN","Expected '(' after array");let s=null;this.match("ASTERISK")?this.consume("CLOSE_PAREN","Expected ')' after array(*)"):(s=this.parseSequenceTypeInternal(),this.consume("CLOSE_PAREN","Expected ')' after array type"));let o=this.parseOccurrenceIndicatorInternal(),{createTypedArrayTest:a}=(pt(),L(Dt)),c=a(s);return oe(c,o)}if(this.checkReservedWordInternal("function")){this.advance(),this.consume("OPEN_PAREN","Expected '(' after function");let s=null;if(this.match("ASTERISK"))this.consume("CLOSE_PAREN","Expected ')' after function(*)");else if(this.check("CLOSE_PAREN"))s=[],this.advance();else{s=[];do s.push(this.parseSequenceTypeInternal());while(this.match("COMMA"));this.consume("CLOSE_PAREN","Expected ')' after function parameter types")}let o=null;this.checkReservedWordInternal("as")&&(this.advance(),o=this.parseSequenceTypeInternal());let a=this.parseOccurrenceIndicatorInternal(),{createFunctionTest:c}=(an(),L(ts)),u=c(s,o,{isWildcard:s===null&&o===null});return oe(u,a)}let e=this.parseQNameInternal(),t=this.parseOccurrenceIndicatorInternal(),n=this.stripPrefixInternal(e),r=ae(n);if(!r)throw ne(`Unknown atomic type: ${e}`);return ot(r,t)}parseOccurrenceIndicatorInternal(){return this.match("QUESTION")?"?":this.match("ASTERISK")?"*":this.match("PLUS")?"+":"ONE"}parseQNameInternal(){let e=this.consumeNameTokenInternal("Expected type name");if(this.match("COLON")){let t=this.consumeNameTokenInternal("Expected local name after :").lexeme;return`${e.lexeme}:${t}`}return e.lexeme}stripPrefixInternal(e){let t=e.split(":");return t.length===2?t[1]:t[0]}consumeNameTokenInternal(e){var t,n;if(this.isNameTokenInternal())return this.advance();throw ne(`${e}. Got: ${(n=(t=this.peek())==null?void 0:t.lexeme)!=null?n:"EOF"}`)}isNameTokenInternal(){if(this.isAtEnd())return!1;let e=this.peek().type;return e==="IDENTIFIER"||e==="FUNCTION"||e==="NODE_TYPE"||e==="OPERATOR"||e==="LOCATION"||e==="RESERVED_WORD"}checkNameInternal(e){return this.isNameTokenInternal()&&this.peek().lexeme===e}parseStringTemplateFromLexeme(e){let t=Jr(e),n=[];for(let r of t)if(typeof r=="string")n.push(r);else if(r.expressionString.trim().length===0)n.push("");else{let a=new Re({version:"3.1"}).scan(r.expressionString),c=this.constructor,l=new c().parse(a);n.push(l)}return new Xn(n)}};ke();De();si();var cr=class extends Nt{constructor(e){let t=e?P({},e):{};t.version||(t.version="3.1"),super(t),this.ensureVersionSupport(["3.1"],"3.1")}parsePrimaryExpr(){var e,t,n;return this.check("RESERVED_WORD")&&this.peek().lexeme==="map"&&((e=this.peekNext())==null?void 0:e.type)==="OPEN_CURLY_BRACKET"?this.parseMapConstructor():this.check("RESERVED_WORD")&&this.peek().lexeme==="array"&&((t=this.peekNext())==null?void 0:t.type)==="OPEN_CURLY_BRACKET"?this.parseCurlyArrayConstructor():this.check("RESERVED_WORD")&&(this.peek().lexeme==="map"||this.peek().lexeme==="array")&&((n=this.peekNext())==null?void 0:n.type)==="COLON"?this.parseNamespacedFunctionCall():this.check("OPEN_SQUARE_BRACKET")?this.parseSquareBracketArrayConstructor():this.check("QUESTION")?this.parseLookupExpr(null):super.parsePrimaryExpr()}parseNamespacedFunctionCall(){let e=this.advance().lexeme;if(this.consume("COLON",`Expected ':' after '${e}'`),!this.check("IDENTIFIER")&&!this.check("FUNCTION"))throw new Error(`Expected function name after '${e}:'`);let t=this.advance().lexeme,n=`${e}:${t}`;this.consume("OPEN_PAREN",`Expected '(' after '${n}'`);let r=[];if(!this.check("CLOSE_PAREN"))do r.push(this.parseExprSingle());while(this.match("COMMA"));this.consume("CLOSE_PAREN","Expected ')' after function arguments");let{XPathFunctionCall:s}=(En(),L(Na));return new s(n,r)}parseMapConstructor(){this.advance(),this.consume("OPEN_CURLY_BRACKET","Expected '{' after 'map'");let e=[];if(this.check("CLOSE_CURLY_BRACKET"))return this.advance(),new ct(e);do{let t=this.parseExprSingle();this.consume("COLON","Expected ':' after map key");let n=this.parseExprSingle();e.push({key:t,value:n})}while(this.match("COMMA"));return this.consume("CLOSE_CURLY_BRACKET","Expected '}' after map entries"),new ct(e)}parseSquareBracketArrayConstructor(){this.advance();let e=[];if(this.check("CLOSE_SQUARE_BRACKET"))return this.advance(),new ut(e);do{let t=this.parseExprSingle();e.push(t)}while(this.match("COMMA"));return this.consume("CLOSE_SQUARE_BRACKET","Expected ']' after array items"),new ut(e)}parseCurlyArrayConstructor(){if(this.advance(),this.consume("OPEN_CURLY_BRACKET","Expected '{' after 'array'"),this.check("CLOSE_CURLY_BRACKET"))return this.advance(),new lt({evaluate:()=>[],toString:()=>"()"});let e=this.parseExpr();return this.consume("CLOSE_CURLY_BRACKET","Expected '}' after array expression"),new lt(e)}parseFilterExpr(){let e=super.parseFilterExpr();for(;this.check("QUESTION");)e=this.parseLookupExpr(e);return e}parseLookupExpr(e){var n,r,s,o,a;this.consume("QUESTION","Expected ? for lookup operator");let t;if(this.match("ASTERISK"))t={type:"WILDCARD"};else if(this.check("OPEN_PAREN")){this.advance();let c=this.parseExpr();this.consume("CLOSE_PAREN","Expected ')' after lookup expression"),t={type:"PARENTHESIZED_EXPR",value:c}}else if(this.check("NUMBER")){let c=this.advance(),u=parseInt(c.lexeme,10);t={type:"INTEGER_LITERAL",value:u}}else if(((n=this.peek())==null?void 0:n.type)==="IDENTIFIER"||((r=this.peek())==null?void 0:r.type)==="FUNCTION"||((s=this.peek())==null?void 0:s.type)==="OPERATOR"||((o=this.peek())==null?void 0:o.type)==="LOCATION"||((a=this.peek())==null?void 0:a.type)==="NODE_TYPE"){let c=this.advance().lexeme;t={type:"NCNAME",value:c}}else throw new Error("Expected key specifier after ?");return new wn(e,t)}parseSequenceType(){let e=super.parseSequenceType();if(this.check("PIPE")){let t=[e];for(;this.match("PIPE");){let c=super.parseSequenceType();t.push(c)}let{createUnionType:n}=(kt(),L(Kn)),{createItemSequenceType:r}=(je(),L(Ir)),s=t.map(c=>{if(c.getItemType&&typeof c.getItemType=="function"){let u=c.getItemType();if(u==="empty")throw new Error("empty-sequence() cannot be used in union types");return u}return c}),o=e.getOccurrence?e.getOccurrence():"ONE",a=n(...s);return r(a,o)}return e}parseSequenceTypeInternal(){let e=super.parseSequenceTypeInternal();if(this.check("PIPE")){let t=[e];for(;this.match("PIPE");){let c=super.parseSequenceTypeInternal();t.push(c)}let{createUnionType:n}=(kt(),L(Kn)),{createItemSequenceType:r}=(je(),L(Ir)),s=t.map(c=>{if(c.getItemType&&typeof c.getItemType=="function"){let u=c.getItemType();if(u==="empty")throw new Error("empty-sequence() cannot be used in union types");return u}return c}),o=e.getOccurrence?e.getOccurrence():"ONE",a=n(...s);return r(a,o)}return e}};function Aa(i="1.0",e){let t=_(P({},e),{version:i});switch(i){case"1.0":return new On(t);case"2.0":return new xt(t);case"3.0":return new Nt(t);case"3.1":return new cr(t);default:throw new Error(`Unsupported XPath version: ${i}`)}}re();function Et(i,e){return i.getAttributeValue(e)}function Pe(i,e,t){return i.setAttribute(e,t)}function V(i,e){return i.appendChild(e)}function ee(i,e){return i.createTextNode(e)}function He(i,e){return i.createElement(e)}function ur(i,e){return i.createCDATASection(e)}function bt(i,e){return i.createComment(e)}function Ke(i){return i.createDocumentFragment()}function ci(i,e){return i.createDTDSection(e)}function Ca(i,e,t){return i.createProcessingInstruction(e,t)}var Le=class Le{constructor(e,t,n,r,s){this.id=Math.random()*(Number.MAX_SAFE_INTEGER-1)+1,this.childNodes=[],this.visited=!1,this.escape=!0,this.fromXslText=!1,this.siblingPosition=-1,this.init(e,t,n,r,s)}init(e,t,n,r,s){this.nodeType=e-0,this.nodeName=`${t}`,this.nodeValue=`${n}`,this.ownerDocument=r,this.namespaceUri=s||null,[this.prefix,this.localName]=this.qualifiedNameToParts(`${t}`),this.firstChild=null,this.lastChild=null,this.nextSibling=null,this.previousSibling=null,this.parentNode=null}qualifiedNameToParts(e){return e.includes(":")?e.split(":"):[null,e]}domTraverseElements(e,t,n){let r;if(t&&(r=t.call(null,e),typeof r=="boolean"&&!r))return!1;for(let s=e.firstChild;s;s=s.nextSibling)if(s.nodeType==1&&(r=this.domTraverseElements.call(this,s,t,n),typeof r=="boolean"&&!r))return!1;if(n&&(r=n.call(null,e),typeof r=="boolean"&&!r))return!1}static recycle(e){if(e){if(e.constructor.name==="XDocument"){this.recycle(e.documentElement);return}if(e.constructor==this){this._unusedXNodes.push(e);for(let t=0;t<e.childNodes.length;++t)this.recycle(e.childNodes[t]);e.childNodes.length=0,e.init.call(0,"","",null)}}}static create(e,t,n,r,s){if(this._unusedXNodes.length>0){let o=this._unusedXNodes.pop();return o.init(e,t,n,r,s),o}return new Le(e,t,n,r,s)}static clone(e,t){let n=new Le(e.nodeType,e.nodeName,e.nodeValue,t,e.namespaceUri);n.id=e.id;for(let r of e.childNodes)n.appendChild(Le.clone(r,n));return n}appendChild(e){this.childNodes.length===0&&(this.firstChild=e),e.previousSibling=this.lastChild,e.nextSibling=null,this.lastChild&&(this.lastChild.nextSibling=e),e.parentNode=this,this.lastChild=e,this.childNodes.push(e)}replaceChild(e,t){if(t!=e){for(let n=0;n<this.childNodes.length;++n)if(this.childNodes[n]==t){this.childNodes[n]=e;let r=t.parentNode;t.parentNode=null,e.parentNode=r,r=t.previousSibling,t.previousSibling=null,e.previousSibling=r,e.previousSibling&&(e.previousSibling.nextSibling=e),r=t.nextSibling,t.nextSibling=null,e.nextSibling=r,e.nextSibling&&(e.nextSibling.previousSibling=e),this.firstChild==t&&(this.firstChild=e),this.lastChild==t&&(this.lastChild=e);break}}}insertBefore(e,t){if(t==e||t.parentNode!=this)return;e.parentNode&&e.parentNode.removeChild(e);let n=[];for(let r of this.childNodes)r==t&&(n.push(e),e.parentNode=this,e.previousSibling=t.previousSibling,t.previousSibling=e,e.previousSibling&&(e.previousSibling.nextSibling=e),e.nextSibling=t,this.firstChild==t&&(this.firstChild=e)),n.push(r);this.childNodes=n}removeChild(e){let t=[];for(let n of this.childNodes)n!=e?t.push(n):(n.previousSibling&&(n.previousSibling.nextSibling=n.nextSibling),n.nextSibling&&(n.nextSibling.previousSibling=n.previousSibling),this.firstChild==n&&(this.firstChild=n.nextSibling),this.lastChild==n&&(this.lastChild=n.previousSibling));this.childNodes=t}hasAttributes(){return this.childNodes.filter(t=>t.nodeType===2).length>0}setAttribute(e,t){let n=this.childNodes.filter(s=>s.nodeType===2);for(let s=0;s<n.length;++s)if(n[s].nodeName==e){n[s].nodeValue=`${t}`;return}let r=Le.create(2,e,t,this);r.parentNode=this,this.appendChild(r)}setAttributeNS(e,t,n){let r=this.childNodes.filter(o=>o.nodeType===2);for(let o=0;o<r.length;++o){let a=r[o];if(a.namespaceUri==e&&a.localName==this.qualifiedNameToParts(`${t}`)[1]){a.nodeValue=`${n}`,a.nodeName=`${t}`,a.prefix=this.qualifiedNameToParts(`${t}`)[0];return}}let s=Le.create(2,t,n,this,e);s.parentNode=this,this.appendChild(s)}getAttributeValue(e){let t=this.childNodes.filter(n=>n.nodeType===2);for(let n=0;n<t.length;++n)if(t[n].nodeName===e)return t[n].nodeValue;return null}getAttributeNS(e,t){let n=this.childNodes.filter(r=>r.nodeType===2);for(let r=0;r<n.length;++r){let s=n[r];if(s.namespaceUri===e&&s.localName===t)return s.nodeValue}return null}hasAttribute(e){let t=this.childNodes.filter(n=>n.nodeType===2);for(let n=0;n<t.length;++n)if(t[n].nodeName===e)return!0;return!1}hasAttributeNS(e,t){let n=this.childNodes.filter(r=>r.nodeType===2);for(let r=0;r<n.length;++r){let s=n[r];if(s.namespaceUri===e&&s.localName===t)return!0}return!1}removeAttribute(e){let t=[];for(let n=0;n<this.childNodes.length;++n){let r=this.childNodes[n];if(r.nodeType!==2){t.push(r);continue}r.nodeName!==e&&t.push(r)}this.childNodes=t}removeAttributeNS(e,t){let n=[];for(let r=0;r<this.childNodes.length;++r){let s=this.childNodes[r];if(s.nodeType!==2){n.push(s);continue}(s.localName!==t||s.namespaceUri!==e)&&n.push(s)}this.childNodes=n}getElementsByTagName(e){let t=[],n=this;return e=="*"?this.domTraverseElements(this,r=>{n!=r&&t.push(r)},null):this.domTraverseElements(this,r=>{n!=r&&r.nodeName==e&&t.push(r)},null),t}getElementsByTagNameNS(e,t){let n=[],r=this;return e=="*"&&t=="*"?this.domTraverseElements(this,s=>{r!=s&&n.push(s)},null):e=="*"?this.domTraverseElements(this,s=>{r!=s&&s.localName==t&&n.push(s)},null):t=="*"?this.domTraverseElements(this,s=>{r!=s&&s.namespaceUri==e&&n.push(s)},null):this.domTraverseElements(this,s=>{r!=s&&s.localName==t&&s.namespaceUri==e&&n.push(s)},null),n}getElementById(e){let t=null;return this.domTraverseElements(this,n=>{if(n.getAttributeValue("id")==e)return t=n,!1},null),t}getAncestorByLocalName(e){if(!(this.parentNode===null||this.parentNode===void 0))return this.parentNode.localName===e?this.parentNode:this.parentNode.getAncestorByLocalName(e)}getAncestorById(e){if(!(this.parentNode===null||this.parentNode===void 0))return this.parentNode.id===e?this.parentNode:this.parentNode.getAncestorById(e)}toString(){return`${this.nodeType}, ${this.nodeName}, ${this.nodeValue}`}};Le._unusedXNodes=[];var $=Le;var Je=class extends ${constructor(){super(9,"#document",null,null),this.documentElement=null}appendChild(e){super.appendChild(e),this.documentElement=this.childNodes[0]}createElement(e){return $.create(1,e,null,this)}createElementNS(e,t){return $.create(1,t,null,this,e)}createDocumentFragment(){return $.create(11,"#document-fragment",null,this)}createTextNode(e){return $.create(3,"#text",e,this)}createAttribute(e){return $.create(2,e,null,this)}createAttributeNS(e,t){return $.create(2,t,null,this,e)}createComment(e){return $.create(8,"#comment",e,this)}createCDATASection(e){return $.create(4,"#cdata-section",e,this)}createDTDSection(e){return $.create(10,"#dtd-section",e,this)}createProcessingInstruction(e,t){return $.create(7,e,t,this)}};var au={amp:"&",lt:"<",gt:">",quot:'"',apos:"'",nbsp:"\xA0",copy:"\xA9",reg:"\xAE",times:"\xD7",divide:"\xF7",euro:"\u20AC",pound:"\xA3",yen:"\xA5",cent:"\xA2",sect:"\xA7",para:"\xB6",hellip:"\u2026",middot:"\xB7",deg:"\xB0"};function Tt(i){if(!i)return i;let e=i.replace(/&([a-zA-Z]+);/g,(t,n)=>{let r=n.toLowerCase();return au[r]||t});return e=e.replace(/&#(\d+);/g,(t,n)=>{try{let r=parseInt(n,10);return String.fromCharCode(r)}catch(r){return t}}),e=e.replace(/&#[xX]([0-9a-fA-F]+);/g,(t,n)=>{try{let r=parseInt(n,16);return String.fromCharCode(r)}catch(r){return t}}),e}function le(i,e=!1){if(!i)return"";let t="";switch(i.nodeType){case 10:return`<!DOCTYPE ${i.nodeValue}>`;case 3:case 4:case 2:return i.nodeValue;case 1:case 9:case 11:if(!e){let r=i,s=r.innerText;if(s!==void 0)return s;let o=r.textContent;if(o!==void 0)return o}let n=i.childNodes.filter(r=>r.nodeType!==2);for(let r=0;r<n.length;++r)t+=le(n[r]);return t}}function pi(i,e=!1){if(!i)return"";let t="";switch(i.nodeType){case 2:case 3:t+=i.nodeValue;break;case 4:t+=i.nodeValue;break;case 9:case 11:case 1:if(!e){let r=i,s=r.innerText;if(s!==void 0)return s;let o=r.textContent;if(o!==void 0)return o}let n=i.childNodes.length;for(let r=0;r<n;++r)t+=le(i.childNodes[r]);break}return t}function wa(i,e={cData:!0,escape:!0,selfClosingTags:!0,outputMethod:"xml"}){let t=[];return In(i,t,e),t.join("")}function In(i,e,t){if(i.visited)return;let n=i.nodeType,r=i.nodeValue;if(n===3){let s=i.fromXslText===!0;if(i.nodeValue&&(s||i.nodeValue.trim()!=="")){let o=i.escape&&t.escape?Rn(i.nodeValue):pu(i.nodeValue);e.push(o)}}else if(n===4)t.outputMethod==="text"?e.push(r):t.cData?e.push(Rn(r)):e.push(`<![CDATA[${r}]]>`);else if(n==8)t.outputMethod!=="text"&&e.push(`<!-- ${r} -->`);else if(n===7)t.outputMethod!=="text"&&(r&&r.trim()?e.push(`<?${i.nodeName} ${r}?>`):e.push(`<?${i.nodeName}?>`));else if(n==1)t.outputMethod==="text"?lu(i,e,t):i.nodeName!==null&&i.nodeName!==void 0?cu(i,e,t):uu(i,e,t);else if(n===9||n===11){let s=i.firstChild?[]:i.childNodes;if(i.firstChild){let o=i.firstChild;for(;o;)s.push(o),o=o.nextSibling}s.sort((o,a)=>o.siblingPosition-a.siblingPosition);for(let o=0;o<s.length;++o)In(s[o],e,t)}i.visited=!0}function cu(i,e,t){e.push(`<${lr(i)}`);let n=[];if(i.firstChild){let s=i.firstChild;for(;s;)s.nodeType===2&&n.push(s),s=s.nextSibling}n.length===0&&(n=i.childNodes.filter(s=>s.nodeType===2));for(let s=0;s<n.length;++s){let o=n[s];o&&o.nodeName&&o.nodeValue!==null&&o.nodeValue!==void 0&&e.push(` ${lr(o)}="${hu(o.nodeValue)}"`)}let r=[];if(i.firstChild){let s=i.firstChild;for(;s;)s.nodeType!==2&&r.push(s),s=s.nextSibling}if(r.length===0&&(r=i.childNodes.filter(s=>s.nodeType!==2)),r=r.sort((s,o)=>s.siblingPosition-o.siblingPosition),r.length===0)t.outputMethod==="html"&&["hr","link","meta"].includes(i.nodeName)?e.push(">"):t.selfClosingTags?e.push("/>"):e.push(`></${lr(i)}>`);else{e.push(">");for(let s=0;s<r.length;++s)In(r[s],e,t);e.push(`</${lr(i)}>`)}}function uu(i,e,t){let n=[];if(i.firstChild){let r=i.firstChild;for(;r;)n.push(r),r=r.nextSibling}else n=i.childNodes;n=n.sort((r,s)=>r.siblingPosition-s.siblingPosition);for(let r=0;r<n.length;++r)In(n[r],e,t)}function lu(i,e,t){let n=[];if(i.firstChild){let r=i.firstChild;for(;r;)n.push(r),r=r.nextSibling}else n=i.childNodes;n=n.sort((r,s)=>r.siblingPosition-s.siblingPosition);for(let r=0;r<n.length;++r)In(n[r],e,t)}function lr(i){let e=i.nodeName;return i.prefix&&e.indexOf(`${i.prefix}:`)!=0?`${i.prefix}:${e}`:e}function pu(i){return`${i}`.replace(/</g,"<").replace(/>/g,">")}function Rn(i){return`${i}`.replace(/&/g,"&").replace(/&amp;/g,"&").replace(/</g,"<").replace(/>/g,">")}function hu(i){return Rn(i).replace(/"/g,""")}function m(i,e){let t=Et(i,e);return t&&Tt(t)}function li(i){if(!i)return null;let e=i.nodeType;if(e===3||e===4){let t=i.nodeValue?i.nodeValue.trim():"";return t.length>0?t:null}if(e===8)return null;if(e===9||e===11){let t=i.childNodes||[],n=[];for(let r=0;r<t.length;r++){let s=t[r],o=li(s);o!==null&&n.push(o)}return n.length===0?null:n.length===1?n[0]:n}if(e===1){let t={},n=i,r=n.attributes&&n.attributes.length>0;if(r)for(let u=0;u<n.attributes.length;u++){let l=n.attributes[u];t["@"+l.nodeName]=l.nodeValue}let s=n.childNodes||[],o="",a=!1,c={};for(let u=0;u<s.length;u++){let l=s[u],p=l.nodeType;if(p===3||p===4){let h=l.nodeValue?l.nodeValue.trim():"";h.length>0&&(o+=h)}else if(p===1){a=!0;let h=l,f=h.localName||h.nodeName,y=li(l);y!==null&&(c[f]?(Array.isArray(c[f])||(c[f]=[c[f]]),c[f].push(y)):c[f]=y)}}if(Object.assign(t,c),!a&&o.length>0){if(!r&&Object.keys(c).length===0)return o;t["#text"]=o}return Object.keys(t).length===0?null:t}return null}function Oa(i){if(!i)return"xml";let e=i.nodeType;if(e===9||e===11){let t=i.childNodes||[],n=0,r=0,s=!1;for(let o=0;o<t.length;o++){let a=t[o];a.nodeType===1?n++:a.nodeType===3&&(a.nodeValue?a.nodeValue.trim():"").length>0&&(r++,s=!0)}return n===0&&s?"text":"xml"}return(e===3||e===4)&&(i.nodeValue?i.nodeValue.trim():"").length>0?"text":"xml"}function Ra(i){if(!i)return"{}";let e=i;if(i.nodeType===9||i.nodeType===11){let o=i.childNodes||[];for(let a=0;a<o.length;a++)if(o[a].nodeType===1){e=o[a];break}}let t=e,n=t.localName||t.nodeName,r={},s=li(e);s===null?r[n]={}:(typeof s=="object"&&Array.isArray(s),r[n]=s);try{let o=JSON.parse(JSON.stringify(r));return JSON.stringify(o)}catch(o){return JSON.stringify(r)}}var pr=`[ \r
|
|
7
|
+
]+`,hr=`(${pr})?=(${pr})?`,_a="&#[0-9]+;|&#x[0-9a-fA-F]+;",Ma=`${pr}version${hr}("1\\.0"|'1\\.0')`,mu="A-Za-z\xC0-\xD6\xD8-\xF6\xF8-\xFF\u0100-\u0131\u0134-\u013E\u0141-\u0148\u014A-\u017E\u0180-\u01C3\u01CD-\u01F0\u01F4-\u01F5\u01FA-\u0217\u0250-\u02A8\u02BB-\u02C1\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03CE\u03D0-\u03D6\u03DA\u03DC\u03DE\u03E0\u03E2-\u03F3\u0401-\u040C\u040E-\u044F\u0451-\u045C\u045E-\u0481\u0490-\u04C4\u04C7-\u04C8\u04CB-\u04CC\u04D0-\u04EB\u04EE-\u04F5\u04F8-\u04F9\u0531-\u0556\u0559\u0561-\u0586\u05D0-\u05EA\u05F0-\u05F2\u0621-\u063A\u0641-\u064A\u0671-\u06B7\u06BA-\u06BE\u06C0-\u06CE\u06D0-\u06D3\u06D5\u06E5-\u06E6\u0905-\u0939\u093D\u0958-\u0961\u0985-\u098C\u098F-\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09DC-\u09DD\u09DF-\u09E1\u09F0-\u09F1\u0A05-\u0A0A\u0A0F-\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32-\u0A33\u0A35-\u0A36\u0A38-\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8B\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2-\u0AB3\u0AB5-\u0AB9\u0ABD\u0AE0\u0B05-\u0B0C\u0B0F-\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32-\u0B33\u0B36-\u0B39\u0B3D\u0B5C-\u0B5D\u0B5F-\u0B61\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99-\u0B9A\u0B9C\u0B9E-\u0B9F\u0BA3-\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB5\u0BB7-\u0BB9\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C33\u0C35-\u0C39\u0C60-\u0C61\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CDE\u0CE0-\u0CE1\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D28\u0D2A-\u0D39\u0D60-\u0D61\u0E01-\u0E2E\u0E30\u0E32-\u0E33\u0E40-\u0E45\u0E81-\u0E82\u0E84\u0E87-\u0E88\u0E8A\u0E8D\u0E94-\u0E97\u0E99-\u0E9F\u0EA1-\u0EA3\u0EA5\u0EA7\u0EAA-\u0EAB\u0EAD-\u0EAE\u0EB0\u0EB2-\u0EB3\u0EBD\u0EC0-\u0EC4\u0F40-\u0F47\u0F49-\u0F69\u10A0-\u10C5\u10D0-\u10F6\u1100\u1102-\u1103\u1105-\u1107\u1109\u110B-\u110C\u110E-\u1112\u113C\u113E\u1140\u114C\u114E\u1150\u1154-\u1155\u1159\u115F-\u1161\u1163\u1165\u1167\u1169\u116D-\u116E\u1172-\u1173\u1175\u119E\u11A8\u11AB\u11AE-\u11AF\u11B7-\u11B8\u11BA\u11BC-\u11C2\u11EB\u11F0\u11F9\u1E00-\u1E9B\u1EA0-\u1EF9\u1F00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2126\u212A-\u212B\u212E\u2180-\u2182\u3041-\u3094\u30A1-\u30FA\u3105-\u312C\uAC00-\uD7A3",fu="\u4E00-\u9FA5\u3007\u3021-\u3029",ka="\u0300-\u0345\u0360-\u0361\u0483-\u0486\u0591-\u05A1\u05A3-\u05B9\u05BB-\u05BD\u05BF\u05C1-\u05C2\u05C4\u064B-\u0652\u0670\u06D6-\u06DC\u06DD-\u06DF\u06E0-\u06E4\u06E7-\u06E8\u06EA-\u06ED\u0901-\u0903\u093C\u093E-\u094C\u094D\u0951-\u0954\u0962-\u0963\u0981-\u0983\u09BC\u09BE\u09BF\u09C0-\u09C4\u09C7-\u09C8\u09CB-\u09CD\u09D7\u09E2-\u09E3\u0A02\u0A3C\u0A3E\u0A3F\u0A40-\u0A42\u0A47-\u0A48\u0A4B-\u0A4D\u0A70-\u0A71\u0A81-\u0A83\u0ABC\u0ABE-\u0AC5\u0AC7-\u0AC9\u0ACB-\u0ACD\u0B01-\u0B03\u0B3C\u0B3E-\u0B43\u0B47-\u0B48\u0B4B-\u0B4D\u0B56-\u0B57\u0B82-\u0B83\u0BBE-\u0BC2\u0BC6-\u0BC8\u0BCA-\u0BCD\u0BD7\u0C01-\u0C03\u0C3E-\u0C44\u0C46-\u0C48\u0C4A-\u0C4D\u0C55-\u0C56\u0C82-\u0C83\u0CBE-\u0CC4\u0CC6-\u0CC8\u0CCA-\u0CCD\u0CD5-\u0CD6\u0D02-\u0D03\u0D3E-\u0D43\u0D46-\u0D48\u0D4A-\u0D4D\u0D57\u0E31\u0E34-\u0E3A\u0E47-\u0E4E\u0EB1\u0EB4-\u0EB9\u0EBB-\u0EBC\u0EC8-\u0ECD\u0F18-\u0F19\u0F35\u0F37\u0F39\u0F3E\u0F3F\u0F71-\u0F84\u0F86-\u0F8B\u0F90-\u0F95\u0F97\u0F99-\u0FAD\u0FB1-\u0FB7\u0FB9\u20D0-\u20DC\u20E1\u302A-\u302F\u3099\u309A",Da="0-9\u0660-\u0669\u06F0-\u06F9\u0966-\u096F\u09E6-\u09EF\u0A66-\u0A6F\u0AE6-\u0AEF\u0B66-\u0B6F\u0BE7-\u0BEF\u0C66-\u0C6F\u0CE6-\u0CEF\u0D66-\u0D6F\u0E50-\u0E59\u0ED0-\u0ED9\u0F20-\u0F29",Fa="\xB7\u02D0\u02D1\u0387\u0640\u0E46\u0EC6\u3005\u3031-\u3035\u309D-\u309E\u30FC-\u30FE",mr=mu+fu,du=`${mr+Da}\\._:${ka}${Fa}-`,fr=`[${mr}_:][${du}]*`,yu=`&${fr};`,Ia=`${yu}|${_a}`,gu=`"(([^<&"]|${Ia})*)"|'(([^<&']|${Ia})*)'`,Va=`(${fr})${hr}(${gu})`,La=`${pr}version${hr}("1\\.1"|'1\\.1')`,$a=":A-Z_a-z\xC0-\xD6\xD8-\xF6\xF8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD",xu=$a+"\\.0-9\xB7\u0300-\u036F\u203F-\u2040-",dr=`[${$a}][${xu}]*`,Nu=`&${dr};`,va=`${Nu}|${_a}`,Eu=`"(([^<&"]|${va})*)"|'(([^<&']|${va})*)'`,Ua=`(${dr})${hr}(${Eu})`,bu=`${mr+Da}\\._${ka}${Fa}-`,zy=`[${mr}_][${bu}]*`;var $e=class{constructor(){this.regexEmpty=/\/$/;this.XML10_TAGNAME_REGEXP=new RegExp(`^(${fr})`);this.XML10_ATTRIBUTE_REGEXP=new RegExp(Va,"g");this.XML11_TAGNAME_REGEXP=new RegExp(`^(${dr})`);this.XML11_ATTRIBUTE_REGEXP=new RegExp(Ua,"g");this.lenientHtmlTags=["hr","link","meta"]}xmlParse(e){return e.toUpperCase().startsWith("<!DOCTYPE HTML")?this.htmlParse(e):this.xmlStrictParse(e)}namespaceMapAt(e){let t={xmlns:"http://www.w3.org/2000/xmlns/",xml:"http://www.w3.org/XML/1998/namespace"},n=e;for(;n!==null;){for(let r=0;r<n.childNodes.length;r++){let s=n.childNodes[r];if(s.nodeType===2)if(s.nodeName.startsWith("xmlns:")){let o=s.nodeName.split(":")[1];o in t||(t[o]=s.nodeValue)}else s.nodeName=="xmlns"&&(""in t||(t[""]=s.nodeValue||null))}n=n.parentNode}return t}htmlParse(e){let t=new Je,n=t,r=[],s=n;r.push(s);let o=!1,a=!1,c=!1,u=0;for(let l=0;l<e.length;++l){let p=e.charAt(l);if(o){if(!c&&p==="'")a=!a;else if(!a&&p==='"')c=!c;else if(!a&&!c&&p===">"){let h=e.slice(u,l);if(h.charAt(0)==="/")r.pop(),s=r[r.length-1];else if(h.charAt(0)!=="!"){let f=h.match(this.regexEmpty),y=this.XML10_TAGNAME_REGEXP.exec(h)[1],d=He(t,y),N;for(;N=this.XML10_ATTRIBUTE_REGEXP.exec(h);){let b=Tt(N[5]||N[7]||"");Pe(d,N[1],b)}d.siblingPosition=s.childNodes.length,V(s,d),!f&&!this.lenientHtmlTags.includes(y)&&(s=d,r.push(d))}u=l+1,o=!1,a=!1,c=!1}}else if(p==="<"){let h=e.slice(u,l);if(h&&s!==n&&V(s,ee(t,h)),e.slice(l+1,l+4)==="!--"){let f=e.slice(l+4).indexOf("-->");if(f){let y=bt(t,e.slice(l+4,l+f+4));V(s,y),l+=f+6}}else if(e.slice(l+1,l+9)==="!DOCTYPE"){let f=e.slice(l+9).indexOf(">");if(f){let y=e.slice(l+9,l+f+9).trimStart(),d=ci(t,y);V(s,d),l+=f+y.length+5}}else o=!0;u=l+1}}return t}xmlStrictParse(e){let t,n;if(e.match(/^<\?xml/))if(e.search(new RegExp(Ma))===5)t=this.XML10_TAGNAME_REGEXP,n=this.XML10_ATTRIBUTE_REGEXP;else if(e.search(new RegExp(La))===5)t=this.XML11_TAGNAME_REGEXP,n=this.XML11_ATTRIBUTE_REGEXP;else throw new Error("XML VersionInfo has an unknown version number.");else t=this.XML10_TAGNAME_REGEXP,n=this.XML10_ATTRIBUTE_REGEXP;let r=new Je,s=r,o=[],a=s;o.push(a);let c=!1,u=!1,l=!1,p=0;for(let h=0;h<e.length;++h){let f=e.charAt(h);if(c&&!l&&f==="'")u=!u;else if(c&&!u&&f==='"')l=!l;else if(c&&f===">"&&!u&&!l){let y=e.slice(p,h);if(y.charAt(0)==="/")o.pop(),a=o[o.length-1];else if(y.charAt(0)!=="?"){if(y.charAt(0)!=="!"){let d=y.match(this.regexEmpty),N=t.exec(y)[1],b=He(r,N),I;for(;I=n.exec(y);){let D=Tt(I[5]||I[7]||"");Pe(b,I[1],D)}b.siblingPosition=a.childNodes.length,V(a,b),d||(a=b,o.push(b));let v=this.namespaceMapAt(b);b.prefix!==null?b.prefix in v&&(b.namespaceUri=v[b.prefix]):""in v&&(b.namespaceUri=v[""]);for(let D=0;D<b.childNodes.length;++D){let C=b.childNodes[D];C.nodeType===2&&C.prefix!==null&&C.prefix in v&&(C.namespaceUri=v[C.prefix])}}}p=h+1,c=!1,u=!1,l=!1}else if(!c&&f==="<"){let y=e.slice(p,h);if(y&&a!==s&&V(a,ee(r,Tt(y))),e.slice(h+1,h+4)==="!--"){let d=e.slice(h+4).indexOf("-->");if(d){let N=bt(r,e.slice(h+4,h+d+4));V(a,N),h+=d+6}}else if(e.slice(h+1,h+9)==="![CDATA["){let d=e.slice(h+9).indexOf("]]>");if(d){let N=ur(r,e.slice(h+9,h+d+9));V(a,N),h+=d+11}}else if(e.slice(h+1,h+9)==="!DOCTYPE"){let d=e.slice(h+9).indexOf(">");if(d){let N=e.slice(h+9,h+d+9).trimStart(),b=ci(r,N);V(a,b),h+=d+N.length+5}}else c=!0;p=h+1}}return s}};function yr(i,e){return P({node:i,position:1,size:1},e)}var te=class{constructor(e){this.value=e,this.type="node-set"}stringValue(){return this.value.length===0?"":le(this.value[0])}booleanValue(){return this.value.length>0}numberValue(){return parseInt(this.stringValue())-0}nodeSetValue(){return this.value}};var J=class{constructor(e){this.value=e,this.type="string"}stringValue(){return String(this.value)}booleanValue(){return this.value.length>0}numberValue(){return this.value-0}nodeSetValue(){throw this}};var Se=class{constructor(e){this.value=e,this.type="number"}stringValue(){return`${this.value}`}booleanValue(){return!!this.value}numberValue(){return this.value-0}nodeSetValue(){throw this}};var M=class{constructor(e){this.value=e,this.type="boolean"}stringValue(){return`${this.value}`}booleanValue(){return this.value}numberValue(){return this.value?1:0}nodeSetValue(){throw this}};var Pt=class{constructor(e){this.value=e,this.type="map"}stringValue(){let e={};for(let t in this.value)t!=="__isMap"&&(e[t]=this.value[t]);return JSON.stringify(e)}booleanValue(){return!0}numberValue(){return NaN}nodeSetValue(){return[]}};var Xt=class{constructor(e){this.value=e,this.type="array"}stringValue(){return JSON.stringify(this.value.members||[])}booleanValue(){return!0}numberValue(){return NaN}nodeSetValue(){return[]}};var St=class{constructor(e){this.value=e,this.type="function"}stringValue(){return`function ${this.value.name?`${this.value.name}#${this.value.arity}`:`(anonymous)#${this.value.arity}`}`}booleanValue(){return!0}numberValue(){return NaN}nodeSetValue(){return[]}};yn();var gr=class{exprContextToXPathContext(e){let t=e.nodeList[e.position],n=this.adaptXNode(t),r=e.nodeList.map(a=>this.adaptXNode(a)),s={},o=e;for(;o;)!s.regexGroups&&o.regexGroups&&(s.regexGroups=o.regexGroups),!s.currentGroup&&o.currentGroup&&(s.currentGroup=o.currentGroup),!s.currentGroupingKey&&o.currentGroupingKey!==void 0&&(s.currentGroupingKey=o.currentGroupingKey),o=o.parent;return yr(n,{position:e.position+1,size:e.nodeList.length,nodeList:r,variables:this.convertVariables(e),functions:this.createCustomFunctions(e),namespaces:e.knownNamespaces,xsltVersion:e.xsltVersion,extensions:Object.keys(s).length>0?s:void 0})}adaptXNode(e){if(!e)return null;let t=e;return"textContent"in t||Object.defineProperty(t,"textContent",{get(){return this._getTextContent()},enumerable:!0,configurable:!0}),"_getTextContent"in t||(t._getTextContent=function(){if(this.nodeType===3||this.nodeType===2)return this.nodeValue||"";if(!this.childNodes)return"";let n="";for(let r of this.childNodes)r.nodeType===3?n+=r.nodeValue||"":r.nodeType===1&&(n+=this._getTextContent.call(r));return n}),"attributes"in t||Object.defineProperty(t,"attributes",{get(){return this.childNodes?this.childNodes.filter(n=>n.nodeType===2):[]},enumerable:!0,configurable:!0}),"getAttribute"in t||(t.getAttribute=function(n){return this.getAttributeValue?this.getAttributeValue(n):null}),t}xPathNodeToXNode(e){return e?e instanceof $?e:this.convertXPathNodeToXNode(e):null}getTextContent(e){if(e.nodeType===3||e.nodeType===2)return e.nodeValue||"";if(!e.childNodes)return"";let t="";for(let n of e.childNodes)n.nodeType===3?t+=n.nodeValue||"":n.nodeType===1&&(t+=this.getTextContent(n));return t}convertVariables(e){let t={};for(let[n,r]of Object.entries(e.variables||{}))if(r&&typeof r=="object"&&"stringValue"in r){let s=r;s.type==="node-set"?t[n]=r.nodeSetValue().map(o=>this.adaptXNode(o)):s.type==="string"?t[n]=r.stringValue():s.type==="number"?t[n]=r.numberValue():s.type==="boolean"?t[n]=r.booleanValue():s.type==="map"||s.type==="array"||s.type==="function"?t[n]=s.value:t[n]=r.stringValue()}else t[n]=r;return t}createCustomFunctions(e){let t={};return t.key=(n,r,s)=>{var a;let o=(a=e.keys)==null?void 0:a[r];return o&&o[s]?o[s].nodeSetValue().map(u=>this.adaptXNode(u)):[]},t.current=n=>{let r=e.nodeList[e.position];return[this.adaptXNode(r)]},t["format-number"]=(n,r,s,o)=>{let a=e.decimalFormatSettings;return r.toLocaleString()},t["xml-to-json"]=(n,r)=>{if(e.xsltVersion!=="3.0")throw new Error('xml-to-json() is only supported in XSLT 3.0. Use version="3.0" in your stylesheet.');let s=Array.isArray(r)?r[0]:r;return s?this.xmlToJson(s):'""'},t["json-to-xml"]=(n,r)=>{if(e.xsltVersion!=="3.0")throw new Error('json-to-xml() is only supported in XSLT 3.0. Use version="3.0" in your stylesheet.');let s=Array.isArray(r)?r[0]:r;if(!s)return[];let a=new be().convert(String(s));if(!a)return null;let c=e.nodeList&&e.nodeList.length>0?e.nodeList[0].ownerDocument:null,u=this.convertXPathNodeToXNode(a,c);return u?[u]:[]},t["system-property"]=(n,r)=>{let s=String(r),o={"xsl:version":e.xsltVersion||"1.0","xsl:vendor":"Design Liquido","xsl:vendor-url":"https://github.com/DesignLiquido/xslt-processor"};return e.systemProperties&&e.systemProperties[s]?e.systemProperties[s]:o[s]||""},t["element-available"]=(n,r)=>{let s=String(r),o=["xsl:apply-imports","xsl:apply-templates","xsl:attribute","xsl:attribute-set","xsl:call-template","xsl:choose","xsl:comment","xsl:copy","xsl:copy-of","xsl:decimal-format","xsl:element","xsl:fallback","xsl:for-each","xsl:if","xsl:import","xsl:include","xsl:key","xsl:message","xsl:namespace-alias","xsl:number","xsl:otherwise","xsl:output","xsl:param","xsl:preserve-space","xsl:processing-instruction","xsl:sort","xsl:strip-space","xsl:stylesheet","xsl:template","xsl:text","xsl:transform","xsl:value-of","xsl:variable","xsl:when","xsl:with-param"],a=s.startsWith("xsl:")?s:`xsl:${s}`;return o.includes(a)||o.includes(s)},t["function-available"]=(n,r)=>{let s=String(r),o=["boolean","ceiling","concat","contains","count","false","floor","id","lang","last","local-name","name","namespace-uri","normalize-space","not","number","position","round","starts-with","string","string-length","substring","substring-after","substring-before","sum","translate","true"],a=["current","document","element-available","format-number","function-available","generate-id","key","system-property","unparsed-entity-uri"],c=["matches","ends-with","xml-to-json","json-to-xml"];return[...o,...a,...c].includes(s)},t.document=(n,r,s)=>{var o,a;if(e.documentLoader){let c=Array.isArray(r)?((o=r[0])==null?void 0:o.textContent)||String(r[0]||""):String(r||"");if(!c)return e.root?[this.adaptXNode(e.root)]:[];try{let u=e.documentLoader(c);if(u)return[this.adaptXNode(u)]}catch(u){((a=e.warningsCallback)!=null?a:console.warn)(`document() failed to load: ${c}`,u)}}return[]},t["unparsed-entity-uri"]=(n,r)=>{let s=String(r);return e.unparsedEntities&&e.unparsedEntities[s]?e.unparsedEntities[s]:""},t}convertXPathNodeToXNode(e,t){if(!e)return null;let n;if(e.nodeType===9){if(e.childNodes&&e.childNodes.length>0){let r=e.childNodes[0];return n=this.convertXPathNodeToXNode(r,t),n}return null}else if(e.nodeType===3){let r=e.textContent||"";n=new $(3,"#text",r,t)}else if(n=new $(1,e.nodeName||"element","",t),e.namespaceUri&&(n.namespaceUri=e.namespaceUri),e.childNodes&&e.childNodes.length>0){for(let r=0;r<e.childNodes.length;r++){let s=e.childNodes[r],o=this.convertXPathNodeToXNode(s,t);o&&(o.parentNode=n,n.childNodes.push(o))}n.childNodes.length>0&&(n.firstChild=n.childNodes[0],n.lastChild=n.childNodes[n.childNodes.length-1])}return n}xmlToJson(e){if(!e)return'""';let t=le(e,!0);return JSON.stringify(t)}wrapResult(e,t){if(e==null)return new te([]);if(Array.isArray(e)){let n=e.map(r=>this.xPathNodeToXNode(r)).filter(r=>r!==null);return n.length>0||e.length===0?new te(n):new J(e.map(r=>String(r)).join(" "))}if(typeof e=="string")return new J(e);if(typeof e=="number")return new Se(e);if(typeof e=="boolean")return new M(e);if(typeof e=="object"){if(e.__isMap)return new Pt(e);if(e.__isArray)return new Xt(e);if(e.__isFunctionItem)return new St(e)}return new te([])}clearCache(){}};re();var Ae=class{constructor(e,t){this.xpathExpression=e,this.nodeConverter=t,e instanceof he&&(this.absolute=e.absolute,this.steps=e.steps.map((n,r)=>({axis:n.axis,nodeTest:n.nodeTest,predicates:n.predicates,hasPositionalPredicate:!1,predicate:n.predicates||[],evaluate:s=>{let o=this.nodeConverter.exprContextToXPathContext(s),a=n.evaluate(o);return this.nodeConverter.wrapResult(a,s)}})))}evaluate(e){let t=this.nodeConverter.exprContextToXPathContext(e),n=this.xpathExpression.evaluate(t);return this.nodeConverter.wrapResult(n,e)}};var Ce=class extends Ae{constructor(e,t){super(e,t),this.absolute=e.absolute,this.steps=e.steps.map(n=>({axis:n.axis,nodeTest:n.nodeTest,predicates:n.predicates||[],predicate:n.predicates||[],hasPositionalPredicate:this.hasPositionalPredicate(n.predicates||[])}))}hasPositionalPredicate(e){return!1}appendStep(e){this.steps.push(e)}prependStep(e){this.steps.unshift(e)}};var Ue=class extends Ae{constructor(e,t,n,r){super(e,t),this.expr1=n,this.expr2=r}};var Ze=class{constructor(){this.lexers=new Map;this.parsers=new Map;this.parseCache=new Map;this.nodeConverter=new gr}getLexer(e){let t=e||"1.0";return this.lexers.has(t)||this.lexers.set(t,new Re({version:t})),this.lexers.get(t)}getParser(e){let t=e||"1.0";return this.parsers.has(t)||this.parsers.set(t,Aa(t)),this.parsers.get(t)}xPathParse(e,t,n="1.0"){let r=`${e}:${t||""}:${n}`;if(this.parseCache.has(r))return this.parseCache.get(r);let s=this.getLexer(n),o=this.getParser(n),a=s.scan(e),c=o.parse(a),u=this.wrapExpression(c,t);return this.parseCache.set(r,u),u}xPathEval(e,t){let n=t.xsltVersion||"1.0",r=n==="3.0"?"3.1":n;return this.xPathParse(e,void 0,r).evaluate(t)}xPathSort(e,t){if(t.length===0)return;let n=[];for(let s=0;s<e.contextSize();++s){let o=e.nodeList[s],a={node:o,key:[]},c=e.clone([o],0);for(let u of t){let l=u.expr.evaluate(c),p;u.type==="text"?p=l.stringValue():u.type==="number"&&(p=l.numberValue()),a.key.push({value:p,order:u.order})}a.key.push({value:s,order:"ascending"}),n.push(a)}n.sort(this.xPathSortByKey);let r=[];for(let s=0;s<n.length;++s){let o=n[s].node;o.siblingPosition=s,r.push(o)}e.nodeList=r,e.setNode(0)}xPathSortByKey(e,t){for(let n=0;n<e.key.length;++n){let r=e.key[n].order==="descending"?-1:1;if(e.key[n].value>t.key[n].value)return 1*r;if(e.key[n].value<t.key[n].value)return-1*r}return 0}wrapExpression(e,t){if(e instanceof he)return t&&e.steps.length>0&&!e.absolute&&(e.steps[0].axis=t),new Ce(e,this.nodeConverter);if(e instanceof Ee){let n=this.wrapExpression(e.left,t),r=this.wrapExpression(e.right,t);return new Ue(e,this.nodeConverter,n,r)}return new Ae(e,this.nodeConverter)}clearCache(){this.parseCache.clear(),this.nodeConverter.clearCache()}};var Wa={label:"[number]",prec:35,re:new RegExp("^\\d+(\\.\\d*)?"),key:void 0};var et=class i{constructor(e,t="1.0",n,r,s,o,a,c,u,l,p,h){this.nodeList=e,this.xsltVersion=t,this.position=n||0,this.variables=s||{},this.keys=(a==null?void 0:a.keys)||{},this.knownNamespaces=o||{},this.parent=a||null,this.caseInsensitive=c||!1,this.ignoreAttributesWithoutValue=u||!1,this.returnOnFirstMatch=l||!1,this.ignoreNonElementNodesForNTA=p||!1,this.inApplyTemplates=!1,this.baseTemplateMatched=!1,this.warningsCallback=h!=null?h:a==null?void 0:a.warningsCallback,this.decimalFormatSettings=r||{decimalSeparator:".",groupingSeparator:",",infinity:"Infinity",minusSign:"-",naN:"NaN",percent:"%",perMille:"\u2030",zeroDigit:"0",digit:"#",patternSeparator:";"},a?this.root=a.root:this.nodeList[this.position].nodeType==9?this.root=this.nodeList[this.position]:this.root=this.nodeList[this.position].ownerDocument}clone(e,t){return new i(e||this.nodeList,this.xsltVersion,typeof t!="undefined"?t:this.position,this.decimalFormatSettings,this.variables,this.knownNamespaces,this,this.caseInsensitive,this.ignoreAttributesWithoutValue,this.returnOnFirstMatch,this.ignoreNonElementNodesForNTA,this.warningsCallback)}setVariable(e,t){if(t instanceof J||t instanceof M||t instanceof Se||t instanceof te||t instanceof Pt||t instanceof Xt||t instanceof St){this.variables[e]=t;return}t==="true"?this.variables[e]=new M(!0):t==="false"?this.variables[e]=new M(!1):Wa.re.test(String(t))?this.variables[e]=new Se(t):this.variables[e]=new J(t)}getVariable(e){return typeof this.variables[e]!="undefined"?this.variables[e]:this.parent?this.parent.getVariable(e):null}getRegexGroup(e){var t;return this.regexGroups&&e>=0&&e<this.regexGroups.length?(t=this.regexGroups[e])!=null?t:"":this.parent?this.parent.getRegexGroup(e):""}setNode(e){this.position=e}contextSize(){return this.nodeList.length}isCaseInsensitive(){return this.caseInsensitive}setCaseInsensitive(e){return this.caseInsensitive=e}isIgnoreAttributesWithoutValue(){return this.ignoreAttributesWithoutValue}setIgnoreAttributesWithoutValue(e){return this.ignoreAttributesWithoutValue=e}isReturnOnFirstMatch(){return this.returnOnFirstMatch}setReturnOnFirstMatch(e){return this.returnOnFirstMatch=e}isIgnoreNonElementNodesForNTA(){return this.ignoreNonElementNodesForNTA}setIgnoreNonElementNodesForNTA(e){return this.ignoreNonElementNodesForNTA=e}};var vn=class{expressionMatch(e,t){if(e instanceof Ce)return this.locationExpressionMatch(e,t);if(e instanceof Ue)return this.unionExpressionMatch(e,t);try{return e.evaluate(t).nodeSetValue()}catch(n){return[]}}locationExpressionMatch(e,t){if(!e.steps||e.steps.length<=0){if(e.absolute){let n=t.nodeList[t.position];return n.nodeName==="#document"?[n]:[]}return[t.nodeList[t.position]]}return e.absolute?e.steps[0].axis==="self"?this.absoluteXsltMatchByDocumentNode(e,t):this.absoluteXsltMatch(e,t):this.relativeXsltMatch(e,t)}unionExpressionMatch(e,t){return this.expressionMatch(e.expr1,t).concat(this.expressionMatch(e.expr2,t))}absoluteXsltMatchByDocumentNode(e,t){let n=t.clone([t.root],0),r=e.evaluate(n).nodeSetValue(),s=[];for(let o of r)o.id===t.nodeList[t.position].id&&s.push(o);return s}absoluteXsltMatch(e,t){var c;let n=t.root.childNodes.find(u=>u.nodeName!=="#dtd-section");if(!n)return[];let r=t.clone([n],0),s=e.evaluate(r).nodeSetValue(),o=[],a;t.nodeList.length===1&&t.nodeList[0].nodeName==="#document"?a=[t.nodeList[0].childNodes.find(u=>u.nodeName!=="#dtd-section")]:a=t.nodeList;for(let u of s)u.id===((c=a[t.position])==null?void 0:c.id)&&o.push(u);return o}relativeXsltMatch(e,t){let n=t.clone(),r=e.evaluate(n).nodeSetValue();return r.length===1&&r[0].nodeName==="#document"?[r[0].childNodes[0]]:r}};var _n=class{constructor(){this.value=new M(!0)}evaluate(){return this.value}};var Mn=class{evaluate(e){return new M(e.nodeList[e.position].nodeType==8)}};var kn=class{evaluate(e){let t=e.nodeList[e.position];return new M(t.nodeType==1||t.nodeType==2)}};var Dn=class{constructor(e){if(this.name=e,e.indexOf(":")>0){let t=e.split(":");this.namespacePrefix=t[0],this.name=t[1]}this.re=new RegExp(`^${e}$`,"i")}evaluate(e){let t=e.nodeList[e.position];return this.namespacePrefix!==void 0?e.knownNamespaces[this.namespacePrefix]!==t.namespaceUri?new M(!1):e.caseInsensitive?t.localName.length!==this.name.length?new M(!1):new M(this.re.test(t.localName)):new M(t.localName===this.name):e.caseInsensitive?t.nodeName.length!==this.name.length?new M(!1):new M(this.re.test(t.nodeName)):new M(t.nodeName===this.name)}};var Fn=class{constructor(e){this.regex=new RegExp(`^${e}:`),this.nsprefix=e}evaluate(e){let t=e.nodeList[e.position];return new M(t.nodeName.match(this.regex))}};var Vn=class{constructor(e){this.target=e}evaluate(e){let t=e.nodeList[e.position];return new M(t.nodeType==7&&(!this.target||t.nodeName==this.target))}};var Ln=class{evaluate(e){return new M(e.nodeList[e.position].nodeType==3)}};function hi(i){switch(i.type){case"function":case"variable":case"attribute-set":return`${i.type}:${i.name||""}`;case"template":return i.name?`template:name:${i.name}`:i.match?`template:match:${i.mode||"#default"}:${i.match}`:"template:unknown";case"mode":return`mode:${i.name||"#default"}`;default:return`unknown:${i.type}`}}var xr=class{constructor(){this.packages=new Map}register(e){let t=this.makePackageKey(e.name,e.version);this.packages.set(t,e)}get(e,t){let n=this.makePackageKey(e,t);return this.packages.get(n)}has(e,t){let n=this.makePackageKey(e,t);return this.packages.has(n)}makePackageKey(e,t){return t?`${e}@${t}`:e}clear(){this.packages.clear()}};var Nr=class{static validatePattern(e){let t=[];(e.includes("ancestor::")||e.includes("ancestor-or-self::"))&&t.push("Ancestor axes are not permitted in streamable patterns"),e.includes("parent::")&&t.push("Parent axis is not permitted in streamable patterns"),(e.includes("preceding::")||e.includes("preceding-sibling::"))&&t.push("Preceding axes are not permitted in streamable patterns");let n=e.match(/\[.*\]/g);if(n)for(let r of n)r.includes("[")&&r.includes("]")&&r.includes("[[")&&t.push("Nested predicates are not permitted in streamable patterns");return{isStreamable:t.length===0,issues:t}}static toStreamablePath(e){let t=e.split("/").filter(n=>n.length>0);return t.length===0?null:{path:t.map(n=>n.split("[")[0]),fromRoot:e.startsWith("/"),hasPredicates:e.includes("["),hasForwardAxis:e.includes("::"),isDeterministic:!0}}};var Er=class{constructor(){this.elementStack=[];this.depth=0;this.activeCopies=new Map;this.mergeSources=[];this.isStreaming=!1;this.lookaheadBuffer=[]}startStreaming(){this.elementStack=[],this.depth=0,this.activeCopies.clear(),this.isStreaming=!0}endStreaming(){this.isStreaming=!1,this.activeCopies.clear(),this.lookaheadBuffer=[]}registerCopy(e){this.activeCopies.set(e.id,e)}unregisterCopy(e){this.activeCopies.delete(e)}getActiveCopies(){return Array.from(this.activeCopies.values()).filter(e=>e.isActive)}enterElement(e){this.elementStack.push(e),this.depth++}exitElement(){return this.depth--,this.elementStack.pop()}getCurrentPath(){return[...this.elementStack]}getDepth(){return this.depth}isStreamingActive(){return this.isStreaming}bufferEvent(e){this.lookaheadBuffer.push(e)}getBufferedEvents(){return this.lookaheadBuffer}clearBuffer(){this.lookaheadBuffer=[]}};var br=class{constructor(){this.copies=new Map;this.copyIdCounter=0}createCopy(e){let t=`copy-${++this.copyIdCounter}`,n={id:t,handler:e,isActive:!0,eventQueue:[],currentDepth:0};return this.copies.set(t,n),n}distributeEvent(e){return T(this,null,function*(){for(let t of Array.from(this.copies.values()))t.isActive&&t.eventQueue.push(e)})}closeCopy(e){let t=this.copies.get(e);t&&(t.isActive=!1)}getCopy(e){return this.copies.get(e)}clear(){this.copies.clear(),this.copyIdCounter=0}};var Tr=class{constructor(){this.sources=[]}addSource(e){this.sources.push(e)}getNextMergeGroup(){if(this.sources.every(r=>r.isExhausted))return[];let e=null,t=null;for(let r of this.sources)!r.isExhausted&&r.buffer.length>0&&e===null&&(e=r,t=r.buffer[0]);if(e===null)return[];let n=[];for(;e.buffer.length>0&&n.length<1;)n.push(e.buffer.shift());return n}isComplete(){return this.sources.every(e=>e.isExhausted&&e.buffer.length===0)}clear(){this.sources=[]}};var Pr=class{static detectMode(e){var n;let t=(n=e.getAttributeValue)==null?void 0:n.call(e,"streamable");return t==="yes"?"streamed":"non-consuming"}static isTemplateBodyStreamable(e){let t=["xsl:variable","xsl:result-document","xsl:for-each"];return!0}};var Xr=class{parse(e,t){return T(this,null,function*(){let r=new $e().xmlParse(e);yield t({type:"document-start",depth:0});for(let s of r.childNodes)yield this.emitNode(s,t,0);yield t({type:"document-end",depth:0})})}canStream(e){return T(this,null,function*(){return!0})}emitNode(e,t,n){return T(this,null,function*(){var r,s,o,a,c;switch(e.nodeType){case 9:{for(let u of e.childNodes)yield this.emitNode(u,t,n);return}case 1:{let u=e.childNodes.filter(h=>h.nodeType===2),l=u.length>0?new Map:void 0;if(l)for(let h of u)l.set(h.nodeName,`${(r=h.nodeValue)!=null?r:""}`),yield t({type:"attribute",name:h.nodeName,namespaceUri:h.namespaceUri||void 0,content:`${(s=h.nodeValue)!=null?s:""}`,depth:n+1});let p=e.childNodes.filter(h=>h.nodeType!==2);yield t({type:"start-element",name:e.nodeName,namespaceUri:e.namespaceUri||void 0,attributes:l,selfClosing:p.length===0,depth:n+1});for(let h of p)yield this.emitNode(h,t,n+1);yield t({type:"end-element",name:e.nodeName,namespaceUri:e.namespaceUri||void 0,depth:n+1});return}case 3:case 4:{let u=`${(o=e.nodeValue)!=null?o:""}`;u.length>0&&(yield t({type:"text",content:u,depth:n+1}));return}case 8:{yield t({type:"comment",content:`${(a=e.nodeValue)!=null?a:""}`,depth:n+1});return}case 7:{yield t({type:"processing-instruction",name:e.nodeName,content:`${(c=e.nodeValue)!=null?c:""}`,depth:n+1});return}default:return}})}};var Sr=class{constructor(e){this.context=new Er;this.copyManager=new br;this.mergeCoordinator=new Tr;this.enabled=!1;this.parser=new Xr;this.xPath=e.xPath,this.version=e.version}setVersion(e){this.version=e}isEnabled(){return this.enabled}getContext(){return this.context}getCopyManager(){return this.copyManager}getMergeCoordinator(){return this.mergeCoordinator}setParser(e){this.parser=e}validatePattern(e){return Nr.validatePattern(e)}detectMode(e){return Pr.detectMode(e)}processStream(e,t,n,r){return T(this,null,function*(){if(!this.version||parseFloat(this.version)<3)throw new Error("<xsl:stream> is only supported in XSLT 3.0 or later.");let s=m(t,"select");if(!s)throw new Error('<xsl:stream> requires a "select" attribute specifying the input document.');let o=this.enabled;this.enabled=!0,this.context.startStreaming();try{let a=e.clone(),c=this.xPath.xPathEval(s,a),u=[];c.type==="node-set"?u=c.nodeSetValue():c.type==="node"&&(u=[c]);for(let l of u)yield r.processChildren(e,t,n)}finally{this.enabled=o,this.context.endStreaming(),this.copyManager.clear()}})}processFork(e,t,n,r){return T(this,null,function*(){if(!this.enabled)throw new Error("<xsl:fork> can only be used within <xsl:stream>.");for(let s of t.childNodes)if(r.isXsltElement(s,"fork-sequence")){let o=this.copyManager.createCopy(a=>T(this,null,function*(){yield r.processChildren(e,s,n)}));this.context.registerCopy(o)}})}processMerge(e,t,n,r){return T(this,null,function*(){if(!this.version||parseFloat(this.version)<3)throw new Error("<xsl:merge> is only supported in XSLT 3.0 or later.");let s=[];for(let o of t.childNodes)if(r.isXsltElement(o,"merge-source")){let a=m(o,"select");if(!a)throw new Error('<xsl:merge-source> requires a "select" attribute.');let c={select:a,mergeKeys:[],position:0,isExhausted:!1,buffer:[]};for(let p of o.childNodes)if(r.isXsltElement(p,"merge-key")){let h=m(p,"select"),f=m(p,"order")||"ascending";c.mergeKeys.push({select:h||".",order:f})}let u=this.xPath.xPathEval(a,e),l=u.nodeSetValue?u.nodeSetValue():[];c.buffer=Array.isArray(l)?l.slice():l?[l]:[],c.isExhausted=c.buffer.length===0,s.push(c)}if(s.length===0)throw new Error("<xsl:merge> requires at least one <xsl:merge-source> child element.");for(let o of s)this.mergeCoordinator.addSource(o);try{if(s.some(a=>a.buffer.length>0))for(let a of s){for(;a.buffer.length>0;){let c=a.buffer.shift(),u=e.clone([c],0);for(let l of t.childNodes)r.isXsltElement(l,"merge-action")&&(yield r.processChildren(u,l,n))}a.isExhausted=!0}}finally{this.mergeCoordinator.clear()}})}reset(){this.enabled=!1,this.context.endStreaming(),this.copyManager.clear(),this.mergeCoordinator.clear()}};function Tu(i){let e=i.nodeTest;if(i.predicate&&i.predicate.length>0||i.predicates&&i.predicates.length>0)return .5;if(e&&typeof e=="object"&&"type"in e)switch(e.type){case"wildcard":return e.name&&e.name.endsWith(":*")?-.25:-.5;case"node-type":return e.nodeType==="processing-instruction"&&e.name?0:-.5;case"processing-instruction":return e.target||e.name?0:-.5;case"name":return 0;default:return 0}return e instanceof _n||e instanceof kn||e instanceof Ln||e instanceof Mn?-.5:e instanceof Vn?e.target?0:-.5:e instanceof Fn?-.25:(e instanceof Dn,0)}function Pu(i){if(!i.steps||i.steps.length===0)return i.absolute?-.5:0;if(i.steps.length>1)return .5;let e=i.steps[0],t=e.axis;return t&&t!=="child"&&t!=="attribute"&&t!=="self-and-siblings"?.5:Tu(e)}function Xu(i,e){let t=i.getAttributeValue("mode");return e?e==="#all"||t==="#all"?!0:t===e:!t||t==="#default"}function Su(i){return i.nodeType!==1?!1:(i.namespaceUri==="http://www.w3.org/1999/XSL/Transform"||i.prefix==="xsl")&&i.localName==="template"}function Au(i,e){try{let t=e.xPathParse(i);return t instanceof Ce?Pu(t):.5}catch(t){return 0}}function $n(i,e,t,n){var o;let r=[],s=0;for(let a of i.childNodes){if(!Su(a)||!Xu(a,e))continue;let c=a.getAttributeValue("match");if(!c)continue;let u=a.getAttributeValue("priority"),l=u?parseFloat(u):null,p=n==null?void 0:n.get(a),h=0;if(p){let y=Number.MAX_SAFE_INTEGER/2,d=-p.importDepth*y,N=(o=p.order)!=null?o:0;h=d+N}let f=qa(c);for(let y of f){let d=Au(y,t),N=l!==null&&!isNaN(l)?l:d;r.push({template:a,explicitPriority:l!==null&&!isNaN(l)?l:null,defaultPriority:d,effectivePriority:N,importPrecedence:h,documentOrder:s++,matchPattern:y})}}return r}function qa(i){let e=[],t="",n=0,r=!1,s=!1;for(let o=0;o<i.length;o++){let a=i[o];a==="'"&&!s?(r=!r,t+=a):a==='"'&&!r?(s=!s,t+=a):!r&&!s?a==="["||a==="("?(n++,t+=a):a==="]"||a===")"?(n--,t+=a):a==="|"&&n===0?(e.push(t.trim()),t=""):t+=a:t+=a}return t.trim()&&e.push(t.trim()),e}function Cu(i,e,t,n,r){if(e==="/")return i.nodeName==="#document";if(e.startsWith("@")){if(i.nodeType!==2)return!1;let s=e.substring(1);if(s==="*")return!0;let o=i.localName||i.nodeName,a=s.includes(":")?s.substring(s.indexOf(":")+1):s;return o===a||i.nodeName===s}if(e==="*"&&i.nodeType===1||!e.includes("/")&&!e.includes("[")&&!e.startsWith("@")&&(e===i.nodeName||e===i.localName))return!0;if(e.includes("/")||e.includes("["))try{let s=e.startsWith("/")?e:"//"+e,o=t.clone([t.root],0);if(r.xPathEval(s,o).nodeSetValue().some(u=>u.id===i.id))return!0}catch(s){}if(!e.includes("/")&&!e.includes("[")&&!e.startsWith("@"))try{let s=t.clone([i],0),o=r.xPathParse(e,"self-and-siblings");if(n.expressionMatch(o,s).some(c=>c.id===i.id))return!0}catch(s){}return!1}function wu(i,e,t,n,r){let s=qa(e);for(let o of s)if(Cu(i,o,t,n,r))return!0;return!1}function ye(i,e,t,n,r){let s=r!=null?r:console.warn,o=[],a=e.nodeList[e.position];for(let l of i)try{wu(a,l.matchPattern,e,t,n)&&o.push(l)}catch(p){s(`Failed to match pattern "${l.matchPattern}":`,p)}if(o.length===0)return{selectedTemplate:null,hasConflict:!1,conflictingTemplates:[]};o.sort((l,p)=>l.importPrecedence!==p.importPrecedence?p.importPrecedence-l.importPrecedence:l.effectivePriority!==p.effectivePriority?p.effectivePriority-l.effectivePriority:p.documentOrder-l.documentOrder);let c=o[0],u=o.filter(l=>l.importPrecedence===c.importPrecedence&&l.effectivePriority===c.effectivePriority);return{selectedTemplate:c.template,hasConflict:u.length>1,conflictingTemplates:u.length>1?u:[]}}function Ba(i,e,t){if(!i.hasConflict||i.conflictingTemplates.length<2)return;let n=i.conflictingTemplates.map(s=>`"${s.matchPattern}" (priority: ${s.effectivePriority})`).join(", ");(t!=null?t:console.warn)(`XSLT Warning: Ambiguous template match for node <${e.nodeName}>. Multiple templates match with equal priority: ${n}. Using the last one in document order.`)}var Ar=class{constructor(){this.accumulators=new Map;this.accumulatorStates=new Map}registerAccumulator(e){this.accumulators.set(e.name,e),this.accumulatorStates.set(e.name,{currentValue:null,valueStack:[]})}getAccumulator(e){return this.accumulators.get(e)}getAllAccumulators(){return Array.from(this.accumulators.values())}getAccumulatorState(e){return this.accumulatorStates.get(e)}setAccumulatorState(e,t){this.accumulatorStates.set(e,t)}clear(){this.accumulators.clear(),this.accumulatorStates.clear()}};var Cr=class{constructor(e={cData:!0,escape:!0,selfClosingTags:!0,parameters:[]}){this.styleSheetStack=[];this.importedStylesheets=new Map;this.templateSourceMap=new Map;this.currentTemplateStack=[];this.packageRegistry=new xr;this.currentPackage=null;this.accumulatorRegistry=new Ar;this.xPath=new Ze,this.xmlParser=new $e,this.matchResolver=new vn,this.options={cData:e.cData===!0,escape:e.escape===!0,selfClosingTags:e.selfClosingTags===!0,outputMethod:e.outputMethod,parameters:e.parameters||[]},this.outputMethod=e.outputMethod||"xml",this.outputOmitXmlDeclaration="no",this.outputVersion="",this.itemSeparator="",this.stripSpacePatterns=[],this.preserveSpacePatterns=[],this.namespaceAliases=new Map,this.supportedExtensions=new Set(["http://www.w3.org/1999/XSL/Transform"]),this.attributeSets=new Map,this.decimalFormatSettings={decimalSeparator:".",groupingSeparator:",",infinity:"Infinity",minusSign:"-",naN:"NaN",percent:"%",perMille:"\u2030",zeroDigit:"0",digit:"#",patternSeparator:";"},this.firstTemplateRan=!1,this.forwardsCompatible=!1,this.warningsCallback=console.warn.bind(console),this.streamingProcessor=new Sr({xPath:this.xPath,version:""})}xsltProcess(e,t){return T(this,null,function*(){let n=new Je;this.outputDocument=n;let r=new et([e]);if(r.warningsCallback=this.warningsCallback,this.options.parameters.length>0)for(let c of this.options.parameters)r.setVariable(c.name,new J(c.value));if(yield this.xsltProcessContext(r,t,this.outputDocument),this.outputMethod==="json")return Ra(n);let s=this.outputMethod;this.outputMethod==="adaptive"&&(s=Oa(n));let o=s;return s==="html"&&this.outputVersion==="5.0"&&(o="html"),wa(n,{cData:this.options.cData,escape:this.options.escape,selfClosingTags:this.options.selfClosingTags,outputMethod:o,outputVersion:this.outputVersion,itemSeparator:this.itemSeparator})})}xsltProcessContext(e,t,n){return T(this,null,function*(){if(e.warningsCallback||(e.warningsCallback=this.warningsCallback),!this.isXsltElement(t))t.nodeType===1&&!this.isExtensionElementSupported(t)?yield this.xsltExtensionElement(e,t,n):yield this.xsltPassThrough(e,t,n);else{let r,s,o,a;switch(t.localName){case"apply-imports":yield this.xsltApplyImports(e,t,n);break;case"apply-templates":yield this.xsltApplyTemplates(e,t,n);break;case"analyze-string":yield this.xsltAnalyzeString(e,t,n);break;case"attribute":yield this.xsltAttribute(e,t,n);break;case"attribute-set":break;case"call-template":yield this.xsltCallTemplate(e,t,n);break;case"choose":yield this.xsltChoose(e,t,n);break;case"comment":yield this.xsltComment(e,t,n);break;case"copy":r=this.xsltCopy(n||this.outputDocument,e.nodeList[e.position]),r&&(yield this.xsltChildNodes(e,t,r));break;case"copy-of":s=m(t,"select"),o=this.xPath.xPathEval(s,e);let c=n||this.outputDocument;if(o.type==="node-set"){a=o.nodeSetValue();for(let p=0;p<a.length;++p)this.xsltCopyOf(c,a[p])}else{let p=ee(this.outputDocument,o.stringValue());p.siblingPosition=c.childNodes.length,V(c,p)}break;case"accumulator":this.xsltAccumulator(e,t);break;case"accumulator-rule":throw new Error("<xsl:accumulator-rule> must be a child of <xsl:accumulator>.");case"decimal-format":this.xsltDecimalFormat(e,t);break;case"evaluate":yield this.xsltEvaluate(e,t,n);break;case"element":yield this.xsltElement(e,t,n);break;case"fallback":let u=t.parentNode;if(!(u&&u.nodeType===1&&!this.isExtensionElementSupported(u)))throw new Error("<xsl:fallback> must be a direct child of an extension element");yield this.xsltChildNodes(e,t,n);break;case"for-each":yield this.xsltForEach(e,t,n);break;case"for-each-group":yield this.xsltForEachGroup(e,t,n);break;case"iterate":yield this.xsltIterate(e,t,n);break;case"try":yield this.xsltTry(e,t,n);break;case"if":yield this.xsltIf(e,t,n);break;case"import":yield this.xsltImport(e,t,n);break;case"include":yield this.xsltInclude(e,t,n);break;case"key":this.xsltKey(e,t);break;case"matching-substring":throw new Error("<xsl:matching-substring> must be a child of <xsl:analyze-string>.");case"message":yield this.xsltMessage(e,t);break;case"namespace-alias":this.xsltNamespaceAlias(t);break;case"non-matching-substring":throw new Error("<xsl:non-matching-substring> must be a child of <xsl:analyze-string>.");case"on-empty":throw new Error("<xsl:on-empty> must be a child of a sequence-generating instruction like <xsl:for-each>, <xsl:for-each-group>, or <xsl:apply-templates>.");case"on-non-empty":throw new Error("<xsl:on-non-empty> must be a child of a sequence-generating instruction like <xsl:for-each>, <xsl:for-each-group>, or <xsl:apply-templates>.");case"number":this.xsltNumber(e,t,n);break;case"otherwise":throw new Error("<xsl:otherwise> must be a child of <xsl:choose>.");case"output":this.outputMethod=m(t,"method"),this.outputOmitXmlDeclaration=m(t,"omit-xml-declaration"),this.outputVersion=m(t,"version")||"",this.itemSeparator=m(t,"item-separator")||"";break;case"package":yield this.xsltPackage(e,t,n);break;case"use-package":yield this.xsltUsePackage(e,t,n);break;case"expose":this.xsltExpose(e,t);break;case"accept":this.xsltAccept(e,t);break;case"param":yield this.xsltVariable(e,t,!1);break;case"preserve-space":this.xsltPreserveSpace(t);break;case"processing-instruction":yield this.xsltProcessingInstruction(e,t,n);break;case"sequence":yield this.xsltSequence(e,t,n);break;case"sort":this.xsltSort(e,t);break;case"strip-space":this.xsltStripSpace(t);break;case"stylesheet":case"transform":yield this.xsltTransformOrStylesheet(e,t,n);break;case"stream":yield this.xsltStream(e,t,n);break;case"fork":yield this.xsltFork(e,t,n);break;case"merge":yield this.xsltMerge(e,t,n);break;case"template":yield this.xsltTemplate(e,t,n);break;case"text":this.xsltText(e,t,n);break;case"value-of":this.xsltValueOf(e,t,n);break;case"variable":yield this.xsltVariable(e,t,!0);break;case"when":throw new Error("<xsl:when> must be a child of <xsl:choose>.");case"with-param":throw new Error("<xsl:with-param> must be a child of <xsl:call-template> or <xsl:apply-templates>.");default:yield this.xsltUnknownInstruction(e,t,n)}}})}xsltUnknownInstruction(e,t,n){return T(this,null,function*(){let r=`xsl:${t.localName}`;if(this.forwardsCompatible){let s=this.getFallbackElement(t);s&&(yield this.xsltChildNodes(e,s,n));return}throw new Error(`Unknown XSLT instruction: <${r}>. This element is not supported in XSLT 1.0. If this is a future XSLT version feature, use version="2.0" or higher to enable forwards-compatible processing mode.`)})}xsltApplyTemplates(e,t,n){return T(this,null,function*(){var f,y,d;let r=m(t,"select"),s=[];r?s=this.xPath.xPathEval(r,e).nodeSetValue():s=e.nodeList[e.position].childNodes;let o=this.findConditionalChild(t,"on-empty"),a=this.findConditionalChild(t,"on-non-empty");if(s.length===0){o&&(yield this.xsltChildNodes(e.clone(),o,n));return}if(a){yield this.xsltChildNodes(e.clone(),a,n);return}let c=m(t,"mode"),u=t.ownerDocument.documentElement,l=$n(u,c,this.xPath,this.templateSourceMap),p=e.clone();yield this.xsltWithParam(p,t);let h=p.clone(s);for(let N=0;N<h.contextSize();++N){let b=h.nodeList[N];if(b.nodeType===3){if(!this.xsltPassText(b))continue;let I=p.clone([b],0);I.inApplyTemplates=!0;let v=ye(l,I,this.matchResolver,this.xPath,this.warningsCallback);if(v.selectedTemplate){let D=this.templateSourceMap.get(v.selectedTemplate),C=m(v.selectedTemplate,"match"),k=m(v.selectedTemplate,"mode");this.currentTemplateStack.push({template:v.selectedTemplate,stylesheetDepth:(f=D==null?void 0:D.importDepth)!=null?f:0,mode:k||c,match:C});try{yield this.xsltChildNodes(I,v.selectedTemplate,n)}finally{this.currentTemplateStack.pop()}}else{let D=e.clone([b],0);this.commonLogicTextNode(D,b,n)}}else{let I=h.clone([b],0);I.inApplyTemplates=!0;let v=ye(l,I,this.matchResolver,this.xPath,this.warningsCallback);if(v.hasConflict&&Ba(v,b,this.warningsCallback),v.selectedTemplate){let D=this.templateSourceMap.get(v.selectedTemplate),C=m(v.selectedTemplate,"match"),k=m(v.selectedTemplate,"mode");this.currentTemplateStack.push({template:v.selectedTemplate,stylesheetDepth:(y=D==null?void 0:D.importDepth)!=null?y:0,mode:k||c,match:C});try{yield this.xsltChildNodes(I,v.selectedTemplate,n)}finally{this.currentTemplateStack.pop()}}else if(b.nodeType===1&&b.childNodes&&b.childNodes.length>0){let D=b.childNodes.filter(C=>C.nodeType!==2);for(let C=0;C<D.length;++C){let k=D[C];if(k.nodeType===3){let Z=p.clone([k],0);Z.inApplyTemplates=!0;let q=ye(l,Z,this.matchResolver,this.xPath,this.warningsCallback);q.selectedTemplate?yield this.xsltChildNodes(Z,q.selectedTemplate,n):this.commonLogicTextNode(Z,k,n)}else{let Z=p.clone([k],0);Z.inApplyTemplates=!0;let q=ye(l,Z,this.matchResolver,this.xPath,this.warningsCallback);if(q.selectedTemplate){let we=this.templateSourceMap.get(q.selectedTemplate),Oe=m(q.selectedTemplate,"match"),Un=m(q.selectedTemplate,"mode");this.currentTemplateStack.push({template:q.selectedTemplate,stylesheetDepth:(d=we==null?void 0:we.importDepth)!=null?d:0,mode:Un||c,match:Oe});try{yield this.xsltChildNodes(Z,q.selectedTemplate,n)}finally{this.currentTemplateStack.pop()}}else k.nodeType===1&&(yield this.applyBuiltInTemplate(k,l,c,p,n))}}}else b.nodeType===3&&this.commonLogicTextNode(I,b,n)}}})}applyBuiltInTemplate(e,t,n,r,s){return T(this,null,function*(){var a;if(!e.childNodes||e.childNodes.length===0)return;let o=e.childNodes.filter(c=>c.nodeType!==2);for(let c of o)if(c.nodeType===3){let u=r.clone([c],0);u.inApplyTemplates=!0;let l=ye(t,u,this.matchResolver,this.xPath,this.warningsCallback);l.selectedTemplate?yield this.xsltChildNodes(u,l.selectedTemplate,s):this.commonLogicTextNode(u,c,s)}else{let u=r.clone([c],0);u.inApplyTemplates=!0;let l=ye(t,u,this.matchResolver,this.xPath,this.warningsCallback);if(l.selectedTemplate){let p=this.templateSourceMap.get(l.selectedTemplate),h=m(l.selectedTemplate,"match"),f=m(l.selectedTemplate,"mode");this.currentTemplateStack.push({template:l.selectedTemplate,stylesheetDepth:(a=p==null?void 0:p.importDepth)!=null?a:0,mode:f||n,match:h});try{yield this.xsltChildNodes(u,l.selectedTemplate,s)}finally{this.currentTemplateStack.pop()}}else c.nodeType===1&&(yield this.applyBuiltInTemplate(c,t,n,r,s))}})}xsltApplyImports(e,t,n){return T(this,null,function*(){if(this.currentTemplateStack.length===0)throw new Error("<xsl:apply-imports> can only be used within a template");let r=this.currentTemplateStack[this.currentTemplateStack.length-1],{stylesheetDepth:s,mode:o}=r,a=e.nodeList[e.position],c=t.ownerDocument.documentElement,l=$n(c,o,this.xPath,this.templateSourceMap).filter(N=>{let b=this.templateSourceMap.get(N.template);return b&&b.importDepth>s});if(l.length===0)return;let p=e.clone([a],0),h=ye(l,p,this.matchResolver,this.xPath,this.warningsCallback);if(!h.selectedTemplate)return;let f=e.clone(),y=$n(c,o,this.xPath,this.templateSourceMap),d=this.templateSourceMap.get(h.selectedTemplate);if(d){let N=m(h.selectedTemplate,"match");this.currentTemplateStack.push({template:h.selectedTemplate,stylesheetDepth:d.importDepth,mode:o,match:N}),yield this.xsltChildNodes(f,h.selectedTemplate,n),this.currentTemplateStack.pop()}})}xsltAttribute(e,t,n){return T(this,null,function*(){let r=m(t,"name"),s=this.xsltAttributeValue(r,e),o=Ke(this.outputDocument);yield this.xsltChildNodes(e,t,o);let a=pi(o);n&&Pe(n,s,a)})}xsltCallTemplate(e,t,n){return T(this,null,function*(){let r=m(t,"name"),s=t.ownerDocument.documentElement,o=e.clone();yield this.xsltWithParam(o,t);for(let a=0;a<s.childNodes.length;++a){let c=s.childNodes[a];if(c.nodeType===1&&this.isXsltElement(c,"template")&&Et(c,"name")===r){yield this.xsltChildNodes(o,c,n);break}}})}xsltChoose(e,t,n){return T(this,null,function*(){for(let r of t.childNodes)if(r.nodeType===1){if(this.isXsltElement(r,"when")){let s=m(r,"test");if(this.xPath.xPathEval(s,e).booleanValue()){yield this.xsltChildNodes(e,r,n);break}}else if(this.isXsltElement(r,"otherwise")){yield this.xsltChildNodes(e,r,n);break}}})}xsltCopy(e,t){if(t.nodeType==1){let n=He(this.outputDocument,t.nodeName);return t.namespaceUri!==null&&t.namespaceUri!==void 0&&Pe(n,"xmlns",t.namespaceUri),n.siblingPosition=e.childNodes.length,V(e,n),n}if(t.nodeType==3){if(this.shouldStripWhitespaceNode(t))return null;let n=ee(this.outputDocument,t.nodeValue);n.siblingPosition=e.childNodes.length,V(e,n)}else if(t.nodeType==4){let n=ur(this.outputDocument,t.nodeValue);n.siblingPosition=e.childNodes.length,V(e,n)}else if(t.nodeType==8){let n=bt(this.outputDocument,t.nodeValue);n.siblingPosition=e.childNodes.length,V(e,n)}else t.nodeType==2&&Pe(e,t.nodeName,t.nodeValue);return null}xsltComment(e,t,n){return T(this,null,function*(){let r=Ke(this.outputDocument);yield this.xsltChildNodes(e,t,r);let s=le(r),o=bt(this.outputDocument,s);(n||this.outputDocument).appendChild(o)})}xsltProcessingInstruction(e,t,n){return T(this,null,function*(){let r=m(t,"name");if(!r)throw new Error('<xsl:processing-instruction> requires a "name" attribute');let s=this.xsltAttributeValue(r,e);if(!s)throw new Error("<xsl:processing-instruction> target name cannot be empty");if(s.toLowerCase()==="xml")throw new Error('Processing instruction target cannot be "xml"');if(!/^[a-zA-Z_][a-zA-Z0-9_:.-]*$/.test(s))throw new Error(`Invalid processing instruction target: "${s}"`);let o=Ke(this.outputDocument);yield this.xsltChildNodes(e,t,o);let a=le(o),c=Ca(this.outputDocument,s,a),u=n||this.outputDocument;V(u,c)})}xsltCopyOf(e,t){if(t.nodeType==11||t.nodeType==9)for(let n=0;n<t.childNodes.length;++n)this.xsltCopyOf(e,t.childNodes[n]);else{let n=this.xsltCopy(e,t);if(n)for(let r=0;r<t.childNodes.length;++r)this.xsltCopyOf(n,t.childNodes[r])}}xsltDecimalFormat(e,t){let n=m(t,"name"),r=m(t,"decimal-separator"),s=m(t,"grouping-separator"),o=m(t,"infinity"),a=m(t,"minus-sign"),c=m(t,"NaN"),u=m(t,"percent"),l=m(t,"per-mille"),p=m(t,"zero-digit"),h=m(t,"digit"),f=m(t,"pattern-separator");this.decimalFormatSettings={name:n||this.decimalFormatSettings.name,decimalSeparator:r||this.decimalFormatSettings.decimalSeparator,groupingSeparator:s||this.decimalFormatSettings.groupingSeparator,infinity:o||this.decimalFormatSettings.infinity,minusSign:a||this.decimalFormatSettings.minusSign,naN:c||this.decimalFormatSettings.naN,percent:u||this.decimalFormatSettings.percent,perMille:l||this.decimalFormatSettings.perMille,zeroDigit:p||this.decimalFormatSettings.zeroDigit,digit:h||this.decimalFormatSettings.digit,patternSeparator:f||this.decimalFormatSettings.patternSeparator},e.decimalFormatSettings=this.decimalFormatSettings}xsltElement(e,t,n){return T(this,null,function*(){let r=m(t,"name"),s=this.xsltAttributeValue(r,e),o=He(this.outputDocument,s),a=m(t,"use-attribute-sets");a&&(yield this.applyAttributeSets(e,o,a)),V(n||this.outputDocument,o);let c=e.clone(void 0,0);yield this.xsltChildNodes(c,t,o)})}xsltAccumulator(e,t){let n=m(t,"name");if(!n)throw new Error('<xsl:accumulator> requires a "name" attribute');let r=m(t,"initial-value")||"()",s=m(t,"as")||"xs:anyAtomicType*",o=m(t,"streamable")||"no",a=o==="yes"||o==="true"||o==="1",c=[];for(let l=0;l<t.childNodes.length;l++){let p=t.childNodes[l];if(p.nodeType===1&&p.nodeName==="accumulator-rule"){let h=m(p,"match");if(!h)throw new Error('<xsl:accumulator-rule> requires a "match" attribute');let f=m(p,"select");if(!f)throw new Error('<xsl:accumulator-rule> requires a "select" attribute');let y=m(p,"phase");c.push({match:h,select:f,phase:y==="start"||y==="end"?y:void 0})}}let u={name:n,initialValue:r,as:s,rules:c,streamable:a};this.accumulatorRegistry.registerAccumulator(u);try{let l=this.xPath.xPathEval(r,e),p={currentValue:l,valueStack:[l]};this.accumulatorRegistry.setAccumulatorState(n,p)}catch(l){let p={currentValue:null,valueStack:[null]};this.accumulatorRegistry.setAccumulatorState(n,p)}}evaluateAccumulatorRules(e,t){let n=this.accumulatorRegistry.getAllAccumulators();for(let r of n){let s=this.accumulatorRegistry.getAccumulatorState(r.name);if(s)for(let o of r.rules)try{let a=e.clone([t],0),c=this.xsltMatch(o.match,a);if(c&&c.length>0){let l=e.clone([t],0);l.setVariable("value",new J(s.currentValue?String(s.currentValue):""));let p=this.xPath.xPathEval(o.select,l);s.currentValue=p}}catch(a){this.warningsCallback&&this.warningsCallback(`Error evaluating accumulator rule for ${r.name}: ${a}`)}}}getAccumulatorValue(e){let t=this.accumulatorRegistry.getAccumulatorState(e);return t?t.currentValue:null}xsltForEach(e,t,n){return T(this,null,function*(){let r=m(t,"select"),s=this.xPath.xPathEval(r,e).nodeSetValue(),o=this.findConditionalChild(t,"on-empty"),a=this.findConditionalChild(t,"on-non-empty");if(s.length===0){o&&(yield this.xsltChildNodes(e.clone(),o,n));return}if(a){yield this.xsltChildNodes(e.clone(),a,n);return}let c=e.clone(s);if(this.xsltSort(c,t),c.nodeList.filter(l=>l.parentNode!==null&&l.parentNode!==void 0).length<=0)throw new Error("Nodes with no parents defined.");for(let l=0;l<c.contextSize();++l)yield this.xsltChildNodesExcludingConditional(c.clone(c.nodeList,l),t,n)})}xsltForEachGroup(e,t,n){return T(this,null,function*(){let r=m(t,"select"),s=m(t,"group-by"),o=m(t,"group-adjacent"),a=m(t,"group-starting-with"),c=m(t,"group-ending-with"),u=this.findConditionalChild(t,"on-empty"),l=this.findConditionalChild(t,"on-non-empty");if(!r)throw new Error("<xsl:for-each-group> requires a select attribute.");let p=[s,o,a,c].filter(y=>y);if(p.length===0)throw new Error("<xsl:for-each-group> requires one of: group-by, group-adjacent, group-starting-with, or group-ending-with.");if(p.length>1)throw new Error("<xsl:for-each-group> can only have one grouping method.");let h=this.xPath.xPathEval(r,e).nodeSetValue();if(h.length===0){u&&(yield this.xsltChildNodes(e.clone(),u,n));return}let f;if(s)f=this.groupByKey(h,s,e);else if(o)f=this.groupAdjacent(h,o,e);else if(a)f=this.groupStartingWith(h,a,e);else if(c)f=this.groupEndingWith(h,c,e);else return;if(l){yield this.xsltChildNodes(e.clone(),l,n);return}for(let y=0;y<f.length;y++){let d=f[y],N=e.clone(d.items,0);N.currentGroup=d.items,N.currentGroupingKey=d.key,yield this.xsltChildNodesExcludingConditional(N,t,n)}})}groupByKey(e,t,n){let r=new Map,s=[];for(let o of e){let a=n.clone([o],0),u=this.xPath.xPathEval(t,a).stringValue();r.has(u)||(r.set(u,{key:u,items:[]}),s.push(u)),r.get(u).items.push(o)}return s.map(o=>r.get(o))}groupAdjacent(e,t,n){let r=[],s=null,o=[];for(let a of e){let c=n.clone([a],0),l=this.xPath.xPathEval(t,c).stringValue();s===null||l!==s?(o.length>0&&r.push({key:s,items:o}),s=l,o=[a]):o.push(a)}return o.length>0&&r.push({key:s,items:o}),r}patternToSelfExpression(e){return e.includes("::")||e.startsWith("/")||e.startsWith("(")?e:`self::${e}`}groupStartingWith(e,t,n){let r=[],s=[],o=0,a=this.patternToSelfExpression(t);for(let c of e){let u=n.clone([c],0),l=this.xPath.xPathEval(a,u).booleanValue();l&&s.length>0?(r.push({key:o++,items:s}),s=[c]):l&&s.length===0?s=[c]:s.push(c)}return s.length>0&&r.push({key:o,items:s}),r}groupEndingWith(e,t,n){let r=[],s=[],o=0,a=this.patternToSelfExpression(t);for(let c of e){s.push(c);let u=n.clone([c],0);this.xPath.xPathEval(a,u).booleanValue()&&(r.push({key:o++,items:s}),s=[])}return s.length>0&&r.push({key:o,items:s}),r}xsltIterate(e,t,n){return T(this,null,function*(){let r=m(t,"select");if(!r)throw new Error("<xsl:iterate> requires a select attribute.");let s=this.xPath.xPathEval(r,e).nodeSetValue();if(s.length===0){let u=Array.from(t.childNodes||[]).filter(l=>l.nodeType===1&&this.isXsltElement(l,"on-completion"));if(u.length>0){let l=u[0],p=e.clone([],0);yield this.xsltChildNodes(p,l,n)}return}let o={},a=Array.from(t.childNodes||[]).filter(u=>u.nodeType===1&&u.localName==="param"&&this.isXsltElement(u));for(let u of a){let l=m(u,"name");if(!l)throw new Error("<xsl:param> in <xsl:iterate> requires a name attribute.");let p=m(u,"select"),h=new J("");p&&(h=this.xPath.xPathEval(p,e)),o[l]=h}for(let u=0;u<s.length;u++){let l=s[u],p=e.clone([l],0);for(let y in o)p.variables[y]=o[y];let h=Array.from(t.childNodes||[]);for(let y of h){if(y.nodeType===1){let d=y;if(this.isXsltElement(d)&&(d.localName==="param"||d.localName==="on-completion"||d.localName==="next-iteration"))continue}yield this.xsltProcessContext(p,y,n)}let f=Array.from(t.childNodes||[]).filter(y=>y.nodeType===1&&this.isXsltElement(y,"next-iteration"));if(f.length>0){let y=f[0],d=Array.from(y.childNodes||[]).filter(N=>N.nodeType===1&&this.isXsltElement(N,"with-param"));for(let N of d){let b=m(N,"name");if(!b)throw new Error("<xsl:with-param> requires a name attribute.");let I=m(N,"select");if(I){let v=this.xPath.xPathEval(I,p);o[b]=v}}}}let c=Array.from(t.childNodes||[]).filter(u=>u.nodeType===1&&this.isXsltElement(u,"on-completion"));if(c.length>0){let u=c[0],l=e.clone([],0);for(let p in o)l.variables[p]=o[p];yield this.xsltChildNodes(l,u,n)}})}xsltTry(e,t,n){return T(this,null,function*(){let r=Array.from(t.childNodes||[]).filter(o=>o.nodeType===1&&!this.isXsltElement(o,"catch")),s=Array.from(t.childNodes||[]).filter(o=>o.nodeType===1&&this.isXsltElement(o,"catch"));try{for(let o of r)yield this.xsltProcessContext(e,o,n)}catch(o){let a="err:UNKNOWN";o&&typeof o=="object"&&(o.code?a=o.code:o.message&&(o.message.includes("division by zero")||o.message.includes("div 0")?a="err:FOAR0001":o.message.includes("undefined")&&(a="err:XPDY0002")));let c=!1;for(let u of s){let l=m(u,"errors");if(!l)c=!0;else{let p=l.split("|").map(h=>h.trim());for(let h of p){if(h==="*"||h===a){c=!0;break}if(h.endsWith("*")){let f=h.slice(0,-1);if(a.startsWith(f)){c=!0;break}}}}if(c){yield this.xsltChildNodes(e,u,n);return}}if(!c&&s.length>0)throw o}})}xsltEvaluate(e,t,n){return T(this,null,function*(){let r=m(t,"xpath");if(!r)throw new Error("<xsl:evaluate> requires an xpath attribute.");let s=this.xPath.xPathEval(r,e).stringValue(),o=null,a=m(t,"context-item");if(a){let l=this.xPath.xPathEval(a,e).nodeSetValue();l.length>0&&(o=l[0])}let c;o?c=e.clone([o],0):c=e.clone();try{let u=this.xPath.xPathEval(s,c),l=n||this.outputDocument;if(u.type==="node-set"){let p=u.nodeSetValue();for(let h of p)this.xsltCopyOf(l,h)}else if(u.type==="array"&&u.arrayValue){let p=u.arrayValue();for(let h of p){let f=ee(this.outputDocument,h.stringValue());f.siblingPosition=l.childNodes.length,V(l,f)}}else{let p=ee(this.outputDocument,u.stringValue());p.siblingPosition=l.childNodes.length,V(l,p)}}catch(u){throw new Error(`Dynamic XPath evaluation error in xsl:evaluate: ${u.message}`)}})}xsltIf(e,t,n){return T(this,null,function*(){let r=m(t,"test");this.xPath.xPathEval(r,e).booleanValue()&&(yield this.xsltChildNodes(e,t,n))})}xsltImportOrInclude(e,t,n,r){return T(this,null,function*(){let s=r?"xsl:import":"xsl:include",[o,a]=process.versions.node.split(".").map(Number);if(o<=17&&a<5)throw new Error(`Your Node.js version does not support \`<${s}>\`. If possible, please update your Node.js version to at least version 17.5.0.`);global.globalThis.fetch||(global.globalThis.fetch=fetch,global.globalThis.Headers=Headers,global.globalThis.Request=Request,global.globalThis.Response=Response);let c=t.childNodes.filter(b=>b.nodeName==="href");if(c.length<=0)throw new Error(`<${s}> with no href attribute defined.`);let l=c[0].nodeValue;if(this.importedStylesheets.has(l))return;let h=yield(yield global.globalThis.fetch(l)).text(),f=this.xmlParser.xmlParse(h),y=this.styleSheetStack.length>0?this.styleSheetStack[this.styleSheetStack.length-1].importDepth:0,d={importDepth:r?y+1:y,href:l,order:this.importedStylesheets.size};this.styleSheetStack.push(d),this.importedStylesheets.set(l,f);let N=f.childNodes[0];N&&this.mapTemplatesFromStylesheet(N,d),yield this.xsltChildNodes(e,N,n),this.styleSheetStack.pop()})}xsltImport(e,t,n){return T(this,null,function*(){yield this.xsltImportOrInclude(e,t,n,!0)})}xsltInclude(e,t,n){return T(this,null,function*(){yield this.xsltImportOrInclude(e,t,n,!1)})}xsltPackage(e,t,n){return T(this,null,function*(){let r=m(t,"version")||this.version;if(!r||parseFloat(r)<3)throw new Error("<xsl:package> is only supported in XSLT 3.0 or later.");let s=m(t,"name"),o=m(t,"package-version");if(!s)throw new Error('<xsl:package> requires a "name" attribute.');let a={name:s,version:o,root:t,components:new Map,usedPackages:new Map,isTopLevel:this.currentPackage===null},c=this.currentPackage;this.currentPackage=a;try{this.packageRegistry.register(a),yield this.xsltTransformOrStylesheet(e,t,n)}finally{this.currentPackage=c}})}xsltUsePackage(e,t,n){return T(this,null,function*(){if(!this.currentPackage)throw new Error("<xsl:use-package> can only appear as a child of <xsl:package>.");let r=m(t,"name"),s=m(t,"package-version");if(!r)throw new Error('<xsl:use-package> requires a "name" attribute.');let o=this.packageRegistry.get(r,s);if(!o)throw new Error(`Package "${r}"${s?`@${s}`:""} not found. Packages must be loaded before they can be used.`);let a={package:o,acceptedComponents:new Map},c=s?`${r}@${s}`:r;this.currentPackage.usedPackages.set(c,a);for(let u of t.childNodes)this.isXsltElement(u,"accept")&&this.xsltAccept(e,u)})}xsltExpose(e,t){if(!this.currentPackage)throw new Error("<xsl:expose> can only appear as a child of <xsl:package>.");let n=m(t,"component"),r=m(t,"names"),s=m(t,"visibility")||"public";if(!n)throw new Error('<xsl:expose> requires a "component" attribute (template, function, variable, attribute-set, mode).');let o=r==="*"?["*"]:r?r.split(/\s+/):[];if(o.length===0)throw new Error('<xsl:expose> requires a "names" attribute.');for(let a of o){let c={type:n,name:a==="*"?void 0:a,visibility:s,overridable:s!=="final",node:t},u=hi(c);this.currentPackage.components.set(u,c)}}xsltAccept(e,t){if(!this.currentPackage)throw new Error("<xsl:accept> can only appear as a child of <xsl:use-package>.");let n=m(t,"component"),r=m(t,"names");if(!n)throw new Error('<xsl:accept> requires a "component" attribute.');if(!r)throw new Error('<xsl:accept> requires a "names" attribute.');let s=r==="*"?["*"]:r.split(/\s+/),o=t.parentNode;if(!o||!this.isXsltElement(o,"use-package"))throw new Error("<xsl:accept> must be a child of <xsl:use-package>.");let a=m(o,"name"),c=m(o,"package-version"),u=c?`${a}@${c}`:a,l=this.currentPackage.usedPackages.get(u);if(!l)throw new Error(`Internal error: used package "${u}" not found.`);for(let p of s){let h={type:n,name:p==="*"?void 0:p,visibility:"public",overridable:!0,node:t},f=hi(h);l.acceptedComponents.set(f,h)}}xsltStream(e,t,n){return T(this,null,function*(){this.streamingProcessor.setVersion(this.version);let r={processChildren:(s,o,a)=>this.xsltChildNodes(s,o,a),isXsltElement:(s,o)=>this.isXsltElement(s,o)};yield this.streamingProcessor.processStream(e,t,n,r)})}xsltFork(e,t,n){return T(this,null,function*(){let r={processChildren:(s,o,a)=>this.xsltChildNodes(s,o,a),isXsltElement:(s,o)=>this.isXsltElement(s,o)};yield this.streamingProcessor.processFork(e,t,n,r)})}xsltMerge(e,t,n){return T(this,null,function*(){this.streamingProcessor.setVersion(this.version);let r={processChildren:(s,o,a)=>this.xsltChildNodes(s,o,a),isXsltElement:(s,o)=>this.isXsltElement(s,o)};yield this.streamingProcessor.processMerge(e,t,n,r)})}xsltKey(e,t){let n=m(t,"name"),r=m(t,"match"),s=m(t,"use");if(!n||!r||!s){let c="<xsl:key> missing required parameters: ";throw n||(c+="name, "),r||(c+="match, "),s||(c+="use, "),c=c.slice(0,-2),new Error(c)}let o;e.nodeList[e.position].nodeName==="#document"?o=e.clone(e.nodeList[e.position].childNodes):o=e;let a=this.xsltMatch(r,o);n in e.keys||(e.keys[n]={});for(let c of a){let u=e.clone([c]),p=this.xPath.xPathEval(s,u).stringValue();e.keys[n][p]=new te([c])}}xsltMessage(e,t){return T(this,null,function*(){let n=Ke(this.outputDocument);yield this.xsltChildNodes(e,t,n);let r=le(n),s=m(t,"terminate")||"no";if(console.log(`[xsl:message] ${r}`),s==="yes")throw new Error(`xsl:message terminated: ${r}`)})}xsltNamespaceAlias(e){let t=m(e,"stylesheet-prefix"),n=m(e,"result-prefix");if(!t||!n)throw new Error("<xsl:namespace-alias> requires both stylesheet-prefix and result-prefix attributes.");this.namespaceAliases.set(t,n)}xsltNumber(e,t,n){let r=m(t,"value"),s=m(t,"level")||"single",o=m(t,"count"),a=m(t,"from"),c=m(t,"format")||"1",u=m(t,"lang"),l=m(t,"letter-value"),p=m(t,"grouping-separator"),h=m(t,"grouping-size"),f;if(r){let b=this.xPath.xPathEval(r,e);f=[Math.round(b.numberValue())]}else f=this.xsltNumberCount(e,s,o,a);let y=this.xsltFormatNumbers(f,c,p,h),d=ee(this.outputDocument,y),N=n||this.outputDocument;d.siblingPosition=N.childNodes.length,V(N,d)}xsltNumberCount(e,t,n,r){let s=e.nodeList[e.position],o=n||s.nodeName;switch(t){case"single":{let a=s;for(;a;){if(this.nodeMatchesPattern(a,o)){let c=1,u=a.previousSibling;for(;u;)this.nodeMatchesPattern(u,o)&&c++,u=u.previousSibling;return[c]}if(r&&this.nodeMatchesPattern(a,r))break;a=a.parentNode}return[0]}case"multiple":{let a=[],c=s,u=[];for(;c&&(this.nodeMatchesPattern(c,o)&&u.push(c),!(r&&this.nodeMatchesPattern(c,r)));)c=c.parentNode;for(let l=u.length-1;l>=0;l--){let p=u[l],h=1,f=p.previousSibling;for(;f;)this.nodeMatchesPattern(f,o)&&h++,f=f.previousSibling;a.push(h)}return a.length>0?a:[0]}case"any":{let a=0,c=this.getAllPrecedingNodes(s,r);this.nodeMatchesPattern(s,o)&&(a=1);for(let u of c)this.nodeMatchesPattern(u,o)&&a++;return[a]}default:return[1]}}nodeMatchesPattern(e,t){return t.includes("|")?t.split("|").map(r=>r.trim()).some(r=>this.nodeMatchesSinglePattern(e,r)):this.nodeMatchesSinglePattern(e,t)}nodeMatchesSinglePattern(e,t){return t==="*"?e.nodeType===1:t==="node()"?!0:t==="text()"?e.nodeType===3:t==="comment()"?e.nodeType===8:t.startsWith("processing-instruction")?e.nodeType===7:e.nodeName===t||e.localName===t}getAllPrecedingNodes(e,t=null){let n=[],r=e.previousSibling;for(;r;){if(t&&this.nodeMatchesPattern(r,t))return this.collectDescendants(r,n),n;n.push(r),this.collectDescendants(r,n),r=r.previousSibling}let s=e.parentNode;for(;s;){if(t&&this.nodeMatchesPattern(s,t))return n;let o=s.previousSibling;for(;o;){if(t&&this.nodeMatchesPattern(o,t))return this.collectDescendants(o,n),n;n.push(o),this.collectDescendants(o,n),o=o.previousSibling}s=s.parentNode}return n}collectDescendants(e,t){for(let n of e.childNodes)n.nodeType===1&&(t.push(n),this.collectDescendants(n,t))}xsltFormatNumbers(e,t,n,r){if(e.length===0)return"0";let{tokens:s,separators:o}=this.parseFormatString(t),a=[];for(let u=0;u<e.length;u++){let l=Math.min(u,s.length-1),p=s[l]||"1",h=this.xsltFormatNumber(e[u],p,n,r);a.push(h)}if(a.length===1)return a[0];let c=a[0];for(let u=1;u<a.length;u++){let l=Math.min(u-1,o.length-1),p=o.length>0?o[l]:".";c+=p+a[u]}return c}parseFormatString(e){let t=[],n=[],r=/^(0*1|[aAiI])/,s=e,o=!1;for(;s.length>0;){let a=s.match(r);if(a)t.push(a[1]),s=s.substring(a[1].length),o=!0;else{if(o&&t.length>0){let c=1;for(;c<s.length&&!s.substring(c).match(r);)c++;n.push(s.substring(0,c)),s=s.substring(c)}else s=s.substring(1);o=!1}}if(t.length===0&&t.push("1"),n.length===0&&t.length>1)for(let a=1;a<t.length;a++)n.push(".");return{tokens:t,separators:n}}xsltFormatNumber(e,t,n,r){let s=t.charAt(0),o;switch(s){case"1":if(o=e.toString(),t.length>1&&t.match(/^0+1$/)){let a=t.length;o=e.toString().padStart(a,"0")}break;case"a":o=this.numberToAlpha(e,!1);break;case"A":o=this.numberToAlpha(e,!0);break;case"i":o=this.numberToRoman(e).toLowerCase();break;case"I":o=this.numberToRoman(e);break;default:o=e.toString()}if(n&&r){let a=parseInt(r,10);a>0&&!isNaN(a)&&(o=this.applyGrouping(o,n,a))}return o}numberToAlpha(e,t){if(e<=0)return"";let n="";for(;e>0;)e--,n=String.fromCharCode(e%26+(t?65:97))+n,e=Math.floor(e/26);return n}numberToRoman(e){if(e<=0||e>3999)return e.toString();let t=[[1e3,"M"],[900,"CM"],[500,"D"],[400,"CD"],[100,"C"],[90,"XC"],[50,"L"],[40,"XL"],[10,"X"],[9,"IX"],[5,"V"],[4,"IV"],[1,"I"]],n="";for(let[r,s]of t)for(;e>=r;)n+=s,e-=r;return n}applyGrouping(e,t,n){let r=e.split("."),s=r[0],o=r[1],a="",c=0;for(let u=s.length-1;u>=0;u--)c>0&&c%n===0&&(a=t+a),a=s[u]+a,c++;return o?a+"."+o:a}xsltSort(e,t){let n=[];for(let r of t.childNodes)if(r.nodeType==1&&this.isXsltElement(r,"sort")){let s=m(r,"select"),o=this.xPath.xPathParse(s),a=m(r,"data-type")||"text",c=m(r,"order")||"ascending";n.push({expr:o,type:a,order:c})}this.xPath.xPathSort(e,n)}xsltStripSpace(e){let t=m(e,"elements");if(t){let n=t.trim().split(/\s+/);this.stripSpacePatterns.push(...n)}}xsltPreserveSpace(e){let t=m(e,"elements");if(t){let n=t.trim().split(/\s+/);this.preserveSpacePatterns.push(...n)}}shouldStripWhitespaceNode(e){if(!e.nodeValue||!e.nodeValue.match(/^\s*$/)||this.stripSpacePatterns.length===0)return!1;let t=e.parentNode;if(!t||t.nodeType!==1)return!1;let n=t;for(;n&&n.nodeType===1;){let s=Et(n,"xml:space");if(s==="preserve")return!1;if(s==="default")break;n=n.parentNode}let r=t.localName||t.nodeName;for(let s of this.preserveSpacePatterns)if(this.matchesNamePattern(r,s,t))return!1;for(let s of this.stripSpacePatterns)if(this.matchesNamePattern(r,s,t))return!0;return!1}matchesNamePattern(e,t,n){if(t==="*")return!0;if(t.includes(":")){let[r,s]=t.split(":"),o=n.prefix||"";return s==="*"?o===r:o===r&&e===s}return e===t}xsltTemplate(e,t,n){return T(this,null,function*(){if(!e.inApplyTemplates&&e.baseTemplateMatched)return;let r=m(t,"match");if(!r)return;let s=this.xsltMatch(r,e,"self-and-siblings");if(s.length>0){this.firstTemplateRan=!0,e.inApplyTemplates||(e.baseTemplateMatched=!0);let o=e.clone(s,0);yield this.xsltChildNodes(o,t,n)}})}xsltText(e,t,n){let r=le(t),s=ee(this.outputDocument,r);s.fromXslText=!0;let o=t.childNodes.filter(c=>c.nodeType===2&&c.nodeName==="disable-output-escaping");o.length>0&&o[0].nodeValue==="yes"&&(s.escape=!1);let a=n||this.outputDocument;s.siblingPosition=a.childNodes.length,a.appendChild(s)}validateStylesheetAttributes(e,t){let n=e.childNodes.filter(a=>a.nodeType===2),r=["version","id","extension-element-prefixes","exclude-result-prefixes","default-collation"],s=["xmlns"],o=!1;for(let a of n){let c=a.nodeName,u=a.nodeValue;if(a.prefix==="xmlns"){t.knownNamespaces[a.localName]=u;continue}if(c==="xmlns"){t.knownNamespaces[""]=u;continue}if(c==="version"){o=!0;let l=parseFloat(u);if(isNaN(l)||l<=0)throw new Error(`XSLT version not defined or invalid. Actual resolved version: ${u||"(none)"}.`);l>1&&!["2.0","3.0"].includes(u)?(this.forwardsCompatible=!0,this.version=u,t.xsltVersion="1.0",this.warningsCallback(`XSLT Warning: Stylesheet version "${u}" is not directly supported. Entering forwards-compatible processing mode (XSLT 1.0 Section 2.5).`)):(this.version=u,t.xsltVersion=u);continue}if(c==="extension-element-prefixes"){let l=u.split(/\s+/);for(let p of l)if(p&&!/^[a-zA-Z_:][\w:.-]*$/.test(p))throw new Error(`Invalid prefix in extension-element-prefixes: "${p}". Prefixes must be valid QNames.`);continue}if(c==="exclude-result-prefixes"){if(u!=="#all"){let l=u.split(/\s+/);for(let p of l)if(p&&!/^[a-zA-Z_:][\w:.-]*$/.test(p))throw new Error(`Invalid prefix in exclude-result-prefixes: "${p}". Prefixes must be valid QNames or "#all".`)}continue}if(c==="default-collation"){if(!u||u.trim().length===0)throw new Error("The default-collation attribute must contain a URI.");continue}if(c==="id"){if(!/^[a-zA-Z_:][\w:.-]*$/.test(u))throw new Error(`Invalid id attribute value: "${u}". IDs must be valid NCNames.`);continue}}}xsltTransformOrStylesheet(e,t,n){return T(this,null,function*(){var u,l,p;let r={importDepth:0,href:"(main stylesheet)",order:0};this.mapTemplatesFromStylesheet(t,r),this.collectAttributeSets(t),this.validateStylesheetAttributes(t,e);let s=!1;for(let h of t.childNodes)if(h.nodeType===1)if(this.isXsltElement(h,"import")){if(s)throw new Error("<xsl:import> should be the first child node of <xsl:stylesheet> or <xsl:transform>.")}else s=!0;let o=[],a=[];for(let h of t.childNodes)h.nodeType===1&&this.isXsltElement(h,"template")?a.push(h):o.push(h);let c=e.clone();for(let h of o)yield this.xsltProcessContext(c,h,n);if(a.length>0){let h=$n(t,null,this.xPath,this.templateSourceMap),f=[];for(let y of h)try{let d=this.xsltMatch(y.matchPattern,c);d.length>0&&f.push({priority:y,matchedNodes:d})}catch(d){this.warningsCallback(`Failed to match pattern "${y.matchPattern}":`,d)}if(f.length>0){let y=f.find(C=>C.priority.matchPattern==="/"),d;y?d=y:(f.sort((C,k)=>C.priority.importPrecedence!==k.priority.importPrecedence?k.priority.importPrecedence-C.priority.importPrecedence:C.priority.effectivePriority!==k.priority.effectivePriority?k.priority.effectivePriority-C.priority.effectivePriority:k.priority.documentOrder-C.priority.documentOrder),d=f[0]);let N=f.filter(C=>C.priority.importPrecedence===d.priority.importPrecedence&&C.priority.effectivePriority===d.priority.effectivePriority);if(N.length>1){let C=N.map(k=>`"${k.priority.matchPattern}" (priority: ${k.priority.effectivePriority})`).join(", ");this.warningsCallback(`XSLT Warning: Ambiguous template match. Multiple templates match with equal priority: ${C}. Using the last one in document order.`)}this.firstTemplateRan=!0,c.baseTemplateMatched=!0;let b=c.clone(d.matchedNodes,0),I=this.templateSourceMap.get(d.priority.template),v=m(d.priority.template,"match"),D=m(d.priority.template,"mode");this.currentTemplateStack.push({template:d.priority.template,stylesheetDepth:(u=I==null?void 0:I.importDepth)!=null?u:0,mode:D||null,match:v}),yield this.xsltChildNodes(b,d.priority.template,n),this.currentTemplateStack.pop()}else{let y=e.nodeList[e.position];if(y&&y.childNodes&&y.childNodes.length>0){let d=y.childNodes.filter(N=>N.nodeName!=="#dtd-section");if(d.length>0){let N=e.clone(d);for(let b=0;b<N.contextSize();++b){let I=N.nodeList[b];if(I.nodeType===3){let v=e.clone([I],0);this.commonLogicTextNode(v,I,n)}else{let v=N.clone([I],0),D=ye(h,v,this.matchResolver,this.xPath,this.warningsCallback);if(D.selectedTemplate){let C=v.clone([I],0);C.inApplyTemplates=!0;let k=this.templateSourceMap.get(D.selectedTemplate),Z=m(D.selectedTemplate,"match"),q=m(D.selectedTemplate,"mode");this.currentTemplateStack.push({template:D.selectedTemplate,stylesheetDepth:(l=k==null?void 0:k.importDepth)!=null?l:0,mode:q||null,match:Z}),yield this.xsltChildNodes(C,D.selectedTemplate,n),this.currentTemplateStack.pop()}else if(I.childNodes&&I.childNodes.length>0){let C=I.childNodes.filter(k=>k.nodeName!=="#dtd-section");if(C.length>0){let k=e.clone(C);for(let Z=0;Z<k.contextSize();++Z){let q=k.nodeList[Z];if(q.nodeType===3){let we=e.clone([q],0);this.commonLogicTextNode(we,q,n)}else{let we=k.clone([q],0),Oe=ye(h,we,this.matchResolver,this.xPath,this.warningsCallback);if(Oe.selectedTemplate){let Un=we.clone([q],0);Un.inApplyTemplates=!0;let wr=this.templateSourceMap.get(Oe.selectedTemplate),za=m(Oe.selectedTemplate,"match"),ja=m(Oe.selectedTemplate,"mode");this.currentTemplateStack.push({template:Oe.selectedTemplate,stylesheetDepth:(p=wr==null?void 0:wr.importDepth)!=null?p:0,mode:ja||null,match:za}),yield this.xsltChildNodes(Un,Oe.selectedTemplate,n),this.currentTemplateStack.pop()}}}}}}}}}}}})}xsltValueOf(e,t,n){let r=m(t,"select"),s=e.nodeList[e.position],o=this.xPath.xPathEval(r,e);if(s&&s.nodeName==="#document"&&(o.stringValue()===""||o instanceof te&&o.nodeSetValue().length===0)){let l=s.childNodes.find(p=>p.nodeName!=="#dtd-section");if(l){let p=e.clone([l],0);o=this.xPath.xPathEval(r,p)}}let a=o.stringValue(),c=ee(this.outputDocument,a),u=n||this.outputDocument;c.siblingPosition=u.childNodes.length,u.appendChild(c)}xsltSequence(e,t,n){return T(this,null,function*(){let r=m(t,"select"),s=n||this.outputDocument;if(r){let o=this.xPath.xPathEval(r,e);if(o.type==="node-set"){let a=o.nodeSetValue();for(let c of a)this.xsltCopyOf(s,c)}else{let a=ee(this.outputDocument,o.stringValue());a.siblingPosition=s.childNodes.length,V(s,a)}}else yield this.xsltChildNodes(e,t,n)})}xsltAnalyzeString(e,t,n){return T(this,null,function*(){let r=m(t,"select"),s=m(t,"regex"),o=m(t,"flags")||"";if(!r)throw new Error("<xsl:analyze-string> requires a select attribute.");if(!s)throw new Error("<xsl:analyze-string> requires a regex attribute.");let c=this.xPath.xPathEval(r,e).stringValue(),u=null,l=null;for(let d of t.childNodes)if(d.nodeType===1&&this.isXsltElement(d)){if(d.localName==="matching-substring")u=d;else if(d.localName==="non-matching-substring")l=d;else if(d.localName==="fallback")continue}let p="g";for(let d of o)switch(d){case"i":p+="i";break;case"m":p+="m";break;case"s":p+="s";break}let h;try{h=new RegExp(s,p)}catch(d){throw new Error(`Invalid regular expression in xsl:analyze-string: ${s}`)}let f=0,y;for(;(y=h.exec(c))!==null;){let d=y.index,N=d+y[0].length;if(d>f&&l){let b=c.substring(f,d);yield this.processAnalyzeStringContent(e,l,n,b,null)}if(u){let b=y.slice(0);yield this.processAnalyzeStringContent(e,u,n,y[0],b)}f=N,y[0].length===0&&h.lastIndex++}if(f<c.length&&l){let d=c.substring(f);yield this.processAnalyzeStringContent(e,l,n,d,null)}})}processAnalyzeStringContent(e,t,n,r,s){return T(this,null,function*(){let o=ee(this.outputDocument,r),a=e.clone([o],0);s&&(a.regexGroups=s),yield this.xsltChildNodes(a,t,n)})}xsltVariable(e,t,n){return T(this,null,function*(){let r=m(t,"name"),s=m(t,"select"),o;if(t.childNodes.filter(c=>c.nodeType!==2).length>0){let c=Ke(t.ownerDocument);yield this.xsltChildNodes(e,t,c),o=new te([c])}else if(s)o=this.xPath.xPathEval(s,e);else{let c="",u=this.options.parameters.filter(l=>l.name===r);u.length>0&&(c=u[0].value),o=new J(c)}(n||!e.getVariable(r))&&e.setVariable(r,o)})}xsltChildNodes(e,t,n){return T(this,null,function*(){let r=e.clone();for(let s=0;s<t.childNodes.length;++s){let o=t.childNodes[s];o.nodeType!==2&&(yield this.xsltProcessContext(r,o,n))}})}xsltChildNodesExcludingConditional(e,t,n){return T(this,null,function*(){let r=e.clone();for(let s=0;s<t.childNodes.length;++s){let o=t.childNodes[s];o.nodeType!==2&&(o.nodeType===1&&this.isXsltElement(o)&&(o.localName==="on-empty"||o.localName==="on-non-empty")||(yield this.xsltProcessContext(r,o,n)))}})}findConditionalChild(e,t){for(let n of e.childNodes)if(n.nodeType===1&&this.isXsltElement(n,t))return n;return null}commonLogicTextNode(e,t,n){if(n){if(this.shouldStripWhitespaceNode(t))return;let r=t.nodeValue;this.version&&parseFloat(this.version)>=3&&(r=this.xsltTextValueTemplate(r,e));let s=ee(this.outputDocument,r);s.siblingPosition=n.childNodes.length,V(n,s)}}xsltPassThrough(e,t,n){return T(this,null,function*(){switch(t.nodeType){case 3:this.xsltPassText(t)&&this.commonLogicTextNode(e,t,n);break;case 1:let r,s=e;r=e.nodeList[e.position];let o;o=He(this.outputDocument,t.nodeName),r&&r.siblingPosition!==void 0?o.siblingPosition=r.siblingPosition:r===void 0&&e.nodeList.length===0?o.siblingPosition=(n||this.outputDocument).childNodes.length:o.siblingPosition=0,V(n||this.outputDocument,o);let a=t.childNodes.find(u=>(u==null?void 0:u.nodeType)===2&&u.nodeName==="use-attribute-sets");a&&(yield this.applyAttributeSets(s,o,a.nodeValue)),yield this.xsltChildNodes(s,t,o);let c=t.childNodes.filter(u=>(u==null?void 0:u.nodeType)===2&&u.nodeName!=="use-attribute-sets");for(let u of c){let l=u.nodeName,p=this.xsltAttributeValue(u.nodeValue,s);Pe(o,l,p)}break;default:yield this.xsltChildNodes(e,t,n)}})}xsltPassText(e){if(!e.nodeValue.match(/^\s*$/))return!0;let t=e.parentNode;if(this.isXsltElement(t,"text"))return!0;for(;t&&t.nodeType==1;){let n=Et(t,"xml:space");if(n){if(n=="default")return!1;if(n=="preserve")return!0}t=t.parentNode}return!1}findAttributeInContext(e,t){return t.nodeList[t.position].childNodes.find(n=>n.nodeType===2&&n.nodeName===e)}xsltAttributeValue(e,t){let n=e.split("{");if(n.length===1)return e;let r="";for(let s=0;s<n.length;++s){let o=n[s].split("}");if(o.length!=2){r+=n[s];continue}let a=this.xPath.xPathEval(o[0],t).stringValue();r+=a+o[1]}return r}xsltTextValueTemplate(e,t){if(!e)return e;let n="",r=0;for(;r<e.length;){let s=e[r];if(s==="{"){if(r+1<e.length&&e[r+1]==="{"){n+="{",r+=2;continue}let o=1,a=r+1,c="";for(;a<e.length&&o>0;){if(e[a]==="{")o++;else if(e[a]==="}"&&(o--,o===0))break;c+=e[a],a++}if(o===0){try{let u=this.xPath.xPathEval(c,t).stringValue();n+=u}catch(u){throw new Error(`Error evaluating text value template expression "${c}": ${u.message}`)}r=a+1}else n+=s,r++}else if(s==="}"){if(r+1<e.length&&e[r+1]==="}"){n+="}",r+=2;continue}n+=s,r++}else n+=s,r++}return n}xsltMatch(e,t,n){let r=this.xPath.xPathParse(e,n);return this.matchResolver.expressionMatch(r,t)}xsltWithParam(e,t){return T(this,null,function*(){for(let n of t.childNodes)n.nodeType===1&&this.isXsltElement(n,"with-param")&&(yield this.xsltVariable(e,n,!0))})}mapTemplatesFromStylesheet(e,t){for(let n of e.childNodes)n.nodeType===1&&(this.isXsltElement(n,"template")?this.templateSourceMap.set(n,t):(this.isXsltElement(n,"stylesheet")||this.isXsltElement(n,"transform")||this.isXsltElement(n,"package"))&&this.mapTemplatesFromStylesheet(n,t))}collectAttributeSets(e){for(let t of e.childNodes)if(t.nodeType===1&&this.isXsltElement(t,"attribute-set")){let n=m(t,"name"),r=t.childNodes.filter(s=>s.nodeType===1&&this.isXsltElement(s,"attribute"));if(n){let s=this.attributeSets.get(n);s&&s.length?this.attributeSets.set(n,[...s,...r]):this.attributeSets.set(n,r)}}}applyAttributeSets(e,t,n){return T(this,null,function*(){if(!n||!n.trim())return;let r=n.trim().split(/\s+/),s=new Set;for(let o of r)yield this.applyAttributeSet(e,t,o,s)})}applyAttributeSet(e,t,n,r){return T(this,null,function*(){if(r.has(n))return;r.add(n);let s=this.attributeSets.get(n);if(s)for(let o of s){let a=null,c=o.parentNode;if(c&&(a=m(c,"use-attribute-sets")),a)for(let f of a.trim().split(/\s+/))f&&(yield this.applyAttributeSet(e,t,f,r));let u=m(o,"name"),l=this.xsltAttributeValue(u,e),p=Ke(this.outputDocument);yield this.xsltChildNodes(e,o,p);let h=pi(p);Pe(t,l,h)}})}isExtensionElementSupported(e){if(e.nodeType!==1)return!0;let t=e.namespaceUri;return!t||this.isXsltElement(e)?!0:!!this.supportedExtensions.has(t)}getFallbackElement(e){for(let t of e.childNodes)if(t.nodeType===1&&this.isXsltElement(t,"fallback"))return t;return null}xsltExtensionElement(e,t,n){return T(this,null,function*(){let r=this.getFallbackElement(t);r?yield this.xsltChildNodes(e,r,n):yield this.xsltPassThrough(e,t,n)})}isXsltElement(e,t){return t&&e.localName!=t?!1:e.namespaceUri?e.namespaceUri==="http://www.w3.org/1999/XSL/Transform":e.prefix==="xsl"}};return L(Ou);})();
|
|
5
8
|
//# sourceMappingURL=xslt-processor.global.js.map
|