sootsim 0.1.291 → 0.1.293

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.
Files changed (159) hide show
  1. package/detox/expectations.ts +32 -12
  2. package/dist-cli/bin.js +5 -5
  3. package/dist-cli/chunks/{agent-EDS4HRKB.js → agent-YWI2NWL7.js} +2 -2
  4. package/dist-cli/chunks/{agent-wrapper-ZCSAPGFF.js → agent-wrapper-IYJ7UZOA.js} +2 -2
  5. package/dist-cli/chunks/{app-fonts-4WW4EQEW.js → app-fonts-FQFUC4LR.js} +2 -2
  6. package/dist-cli/chunks/{assert-XEWAR4HT.js → assert-XUCELWAC.js} +2 -2
  7. package/dist-cli/chunks/{auth-SAYME64O.js → auth-4DQTV3OW.js} +2 -2
  8. package/dist-cli/chunks/beta-CFDAW6UN.js +2 -0
  9. package/dist-cli/chunks/{camera-2AHKTJ5I.js → camera-RYOHBVZA.js} +2 -2
  10. package/dist-cli/chunks/{chunk-7CU7FXRN.js → chunk-2M57EAWS.js} +1 -1
  11. package/dist-cli/chunks/{chunk-LJU4JU3N.js → chunk-2VKTOZQ5.js} +2 -2
  12. package/dist-cli/chunks/{chunk-NGPK2CLP.js → chunk-2XYCSFGN.js} +3 -3
  13. package/dist-cli/chunks/{chunk-UQLIMTO6.js → chunk-3UX6AY2B.js} +1 -1
  14. package/dist-cli/chunks/{chunk-R36NUSCM.js → chunk-4B4VFT73.js} +2 -2
  15. package/dist-cli/chunks/{chunk-KQKLLUX5.js → chunk-547W23BB.js} +2 -2
  16. package/dist-cli/chunks/{chunk-KSN2WTV6.js → chunk-67CIS55C.js} +1 -1
  17. package/dist-cli/chunks/{chunk-VK3IISND.js → chunk-6IFJLHDA.js} +1 -1
  18. package/dist-cli/chunks/{chunk-NRXMKMIJ.js → chunk-6VVLDYPV.js} +2 -2
  19. package/dist-cli/chunks/{chunk-LD5ZN4ZU.js → chunk-7B6RGFTM.js} +2 -2
  20. package/dist-cli/chunks/{chunk-HFJEB4UJ.js → chunk-7H34H74K.js} +2 -2
  21. package/dist-cli/chunks/{chunk-HQRKN435.js → chunk-7H5G4HUK.js} +2 -2
  22. package/dist-cli/chunks/{chunk-OC6PU44E.js → chunk-ACSTEPSD.js} +1 -1
  23. package/dist-cli/chunks/chunk-AFRXWKTA.js +118 -0
  24. package/dist-cli/chunks/{chunk-7GKJ3U2Z.js → chunk-B7TX4WFB.js} +2 -2
  25. package/dist-cli/chunks/{chunk-EFTPP4W3.js → chunk-BQT5YDTV.js} +3 -3
  26. package/dist-cli/chunks/{chunk-NPP6ZJLD.js → chunk-DE4ZA3NL.js} +2 -2
  27. package/dist-cli/chunks/{chunk-462J7KLI.js → chunk-E5WYXRGV.js} +3 -3
  28. package/dist-cli/chunks/chunk-HKMWUN7F.js +2 -0
  29. package/dist-cli/chunks/{chunk-5CJQNMXY.js → chunk-J6P2UPXH.js} +2 -2
  30. package/dist-cli/chunks/{chunk-GJDCBMAP.js → chunk-JOPKZVOW.js} +1 -1
  31. package/dist-cli/chunks/{chunk-EPJO7YNS.js → chunk-K5JEUI5G.js} +1 -1
  32. package/dist-cli/chunks/{chunk-5D5XSE5V.js → chunk-KC5SCOGS.js} +2 -2
  33. package/dist-cli/chunks/{chunk-FWC4J42U.js → chunk-LA5DIO33.js} +1 -1
  34. package/dist-cli/chunks/{chunk-653O3F3M.js → chunk-LOQLZFRK.js} +2 -2
  35. package/dist-cli/chunks/{chunk-QOIOK64H.js → chunk-MOU2WLO4.js} +1 -1
  36. package/dist-cli/chunks/{chunk-LHBU5QMM.js → chunk-NCCMRFXU.js} +1 -1
  37. package/dist-cli/chunks/{chunk-5IBT7JOS.js → chunk-PCAPHXN3.js} +2 -2
  38. package/dist-cli/chunks/chunk-QXDXUDJD.js +1 -0
  39. package/dist-cli/chunks/{chunk-NN4CZ2QW.js → chunk-RKXHQ2Q3.js} +1 -1
  40. package/dist-cli/chunks/{chunk-Z6I5M7VJ.js → chunk-RMLJXP7T.js} +2 -2
  41. package/dist-cli/chunks/chunk-RV67J726.js +2 -0
  42. package/dist-cli/chunks/{chunk-UZA3Q67P.js → chunk-TJS5IMOH.js} +1 -1
  43. package/dist-cli/chunks/{chunk-KTTLGU7Y.js → chunk-U3564F2Y.js} +2 -2
  44. package/dist-cli/chunks/{chunk-3FBFOGQJ.js → chunk-UOHGYYSO.js} +1 -1
  45. package/dist-cli/chunks/{chunk-DLMAMKWL.js → chunk-UPKYK52K.js} +2 -2
  46. package/dist-cli/chunks/{chunk-GZON2OYB.js → chunk-USJTVC7T.js} +1 -1
  47. package/dist-cli/chunks/{chunk-U6GFEFUD.js → chunk-VO74GDXL.js} +3 -3
  48. package/dist-cli/chunks/{chunk-76O3ZWTI.js → chunk-VZ44FQDG.js} +1 -1
  49. package/dist-cli/chunks/chunk-WI36YJ23.js +2 -0
  50. package/dist-cli/chunks/{chunk-5NGZRMTN.js → chunk-WOWLO4LL.js} +1 -1
  51. package/dist-cli/chunks/chunk-WP3TFHFL.js +10 -0
  52. package/dist-cli/chunks/{chunk-KBG6WN24.js → chunk-WPPMUUML.js} +2 -2
  53. package/dist-cli/chunks/{chunk-ZYS5SEB2.js → chunk-WVMYRKSS.js} +2 -2
  54. package/dist-cli/chunks/chunk-YNG4C3ZS.js +2 -0
  55. package/dist-cli/chunks/{chunk-JTZNB4PB.js → chunk-YRFWATLA.js} +2 -2
  56. package/dist-cli/chunks/{cleanup-KXX5W42A.js → cleanup-BLFDJSFS.js} +2 -2
  57. package/dist-cli/chunks/cli-version-TQHZOK4L.js +2 -0
  58. package/dist-cli/chunks/{compat-VDVJ2I74.js → compat-Q3WCSTB7.js} +3 -3
  59. package/dist-cli/chunks/{config-FIQQP5FR.js → config-NHNMRRNB.js} +2 -2
  60. package/dist-cli/chunks/control-I7YBDRJT.js +2 -0
  61. package/dist-cli/chunks/daemon-4R3SZLZY.js +2 -0
  62. package/dist-cli/chunks/{debug-LPLH46JF.js → debug-PGRMZFXA.js} +3 -3
  63. package/dist-cli/chunks/{desktop-4HDRWKMN.js → desktop-NVTQ37LH.js} +3 -3
  64. package/dist-cli/chunks/{detox-U23WKW23.js → detox-W3JDXS76.js} +2 -2
  65. package/dist-cli/chunks/{device-HZKTA7ZV.js → device-KQYN3EVK.js} +2 -2
  66. package/dist-cli/chunks/{diagnose-M64QUWBW.js → diagnose-CPUKSGNO.js} +2 -2
  67. package/dist-cli/chunks/disk-cleanup-2COWZWBC.js +2 -0
  68. package/dist-cli/chunks/drivers-RRZM6E72.js +2 -0
  69. package/dist-cli/chunks/{film-4IB44CT3.js → film-VZGAZ2YY.js} +3 -3
  70. package/dist-cli/chunks/flow-VH6DFDQ4.js +2 -0
  71. package/dist-cli/chunks/help-3HQ2RINO.js +2 -0
  72. package/dist-cli/chunks/{hidden-runtime-alias-UEU5POA4.js → hidden-runtime-alias-KWHABCNZ.js} +2 -2
  73. package/dist-cli/chunks/{home-paths-2C4YKPPX.js → home-paths-O4CGYVHF.js} +2 -2
  74. package/dist-cli/chunks/inspect-PKMJGXDH.js +2 -0
  75. package/dist-cli/chunks/install-desktop-K5TP3ZHJ.js +2 -0
  76. package/dist-cli/chunks/{login-MY54AOXW.js → login-KPN4Z26Q.js} +4 -4
  77. package/dist-cli/chunks/{logout-LYR2RDJY.js → logout-E3UCJAMC.js} +2 -2
  78. package/dist-cli/chunks/{maestro-4RAMCNZQ.js → maestro-PYA4AHTS.js} +3 -3
  79. package/dist-cli/chunks/{maestro-generate-CBSUR73A.js → maestro-generate-KCMYWPWL.js} +3 -3
  80. package/dist-cli/chunks/{mode-2KATMMXB.js → mode-AEB7G2SJ.js} +2 -2
  81. package/dist-cli/chunks/optional-demo-registry-AIWOBAAA.js +2 -0
  82. package/dist-cli/chunks/{perf-FVL2ZRQW.js → perf-YLXGZI3E.js} +2 -2
  83. package/dist-cli/chunks/permissions-7VMVZOUV.js +11 -0
  84. package/dist-cli/chunks/{record-TCD4VLNH.js → record-AVQO45PE.js} +3 -3
  85. package/dist-cli/chunks/runtime-HOGETVVD.js +2 -0
  86. package/dist-cli/chunks/{screenshot-command-ENCJ4W2W.js → screenshot-command-LACQLA4N.js} +3 -3
  87. package/dist-cli/chunks/{screenshots-capture-FVVMZPFO.js → screenshots-capture-PROOBSGB.js} +2 -2
  88. package/dist-cli/chunks/{serve-HNHS3QBP.js → serve-FJN2FRGW.js} +2 -2
  89. package/dist-cli/chunks/{setup-MRLIGVU4.js → setup-IVV4NRYQ.js} +3 -3
  90. package/dist-cli/chunks/{skills-2LW5BE7P.js → skills-WYR3PJOH.js} +2 -2
  91. package/dist-cli/chunks/{storage-KH5HQF3V.js → storage-GM7K4MGM.js} +2 -2
  92. package/dist-cli/chunks/store-YLVHPKG7.js +2 -0
  93. package/dist-cli/chunks/telemetry-MQKB6PFX.js +2 -0
  94. package/dist-cli/chunks/{timeline-BWFBU4VM.js → timeline-R5UL3N4T.js} +2 -2
  95. package/dist-cli/chunks/{upgrade-GZFX4JEO.js → upgrade-RWHSFZRX.js} +2 -2
  96. package/dist-cli/chunks/upload-RBH4XGJ2.js +2 -0
  97. package/dist-cli/chunks/{version-OKMVZCP5.js → version-7K6TVQOW.js} +2 -2
  98. package/dist-cli/chunks/web-46ZPQCAL.js +2 -0
  99. package/dist-cli/chunks/{what-happened-MC7JDW6C.js → what-happened-K24TSJZX.js} +2 -2
  100. package/dist-lib/agent-daemon-client.cjs +1 -1
  101. package/dist-lib/agent-events.cjs +1 -1
  102. package/dist-lib/agent-identity.cjs +1 -1
  103. package/dist-lib/agent-sessions.cjs +1 -1
  104. package/dist-lib/attached-projects.cjs +1 -1
  105. package/dist-lib/auth/shared-session.cjs +1 -1
  106. package/dist-lib/backend-origin.cjs +1 -1
  107. package/dist-lib/beta.cjs +1 -1
  108. package/dist-lib/beta.mjs +1 -1
  109. package/dist-lib/bridge-constants.cjs +1 -1
  110. package/dist-lib/cli-constants.cjs +1 -1
  111. package/dist-lib/config.cjs +1 -1
  112. package/dist-lib/detox/index.cjs +24 -6
  113. package/dist-lib/dev-bundle-resolution.cjs +1 -1
  114. package/dist-lib/home-paths.cjs +1 -1
  115. package/dist-lib/host/bridge-host.cjs +411 -66
  116. package/dist-lib/host/fetch-proxy-handler.cjs +1 -1
  117. package/dist-lib/host/fetch-proxy-overrides.cjs +1 -1
  118. package/dist-lib/host/fetch-proxy-overrides.mjs +1 -1
  119. package/dist-lib/host/websocket-proxy.cjs +1 -1
  120. package/dist-lib/index.cjs +1 -1
  121. package/dist-lib/jump-to-source-babel.cjs +1 -1
  122. package/dist-lib/menu.cjs +38 -2
  123. package/dist-lib/menu.mjs +38 -2
  124. package/dist-lib/metro.cjs +1 -1
  125. package/dist-lib/profiles.cjs +1 -1
  126. package/dist-lib/render-mode.cjs +1 -1
  127. package/dist-lib/scripts/dev-server-scanner.cjs +354 -2
  128. package/dist-lib/sdk.cjs +1 -1
  129. package/dist-lib/sdk.mjs +1 -1
  130. package/dist-lib/skills.cjs +443 -91
  131. package/dist-lib/vite.cjs +1 -1
  132. package/package.json +2 -1
  133. package/scripts/dev-server-scanner.ts +27 -1
  134. package/skills/contrast/SKILL.md +1 -0
  135. package/src/menu.ts +38 -1
  136. package/src/settings-bundle.ts +439 -0
  137. package/dist-cli/chunks/beta-HKVUNMLY.js +0 -2
  138. package/dist-cli/chunks/chunk-5ZBUNUUE.js +0 -2
  139. package/dist-cli/chunks/chunk-7NW75BHD.js +0 -5
  140. package/dist-cli/chunks/chunk-H7F2BILD.js +0 -118
  141. package/dist-cli/chunks/chunk-IDZP6WN5.js +0 -2
  142. package/dist-cli/chunks/chunk-IGPDVTHJ.js +0 -2
  143. package/dist-cli/chunks/chunk-KU3T3N2W.js +0 -1
  144. package/dist-cli/chunks/chunk-ZEYCE3XJ.js +0 -2
  145. package/dist-cli/chunks/cli-version-IQXVYN67.js +0 -2
  146. package/dist-cli/chunks/control-GDBZBVQC.js +0 -2
  147. package/dist-cli/chunks/daemon-Y76JSFGV.js +0 -2
  148. package/dist-cli/chunks/disk-cleanup-P662TT6J.js +0 -2
  149. package/dist-cli/chunks/drivers-CKWEDYVG.js +0 -2
  150. package/dist-cli/chunks/flow-WDFYSQKC.js +0 -2
  151. package/dist-cli/chunks/help-2S3OHQLT.js +0 -2
  152. package/dist-cli/chunks/inspect-SKU24VE3.js +0 -2
  153. package/dist-cli/chunks/install-desktop-RKURHJ34.js +0 -2
  154. package/dist-cli/chunks/optional-demo-registry-26Q7AW7X.js +0 -2
  155. package/dist-cli/chunks/runtime-Z3D53UGW.js +0 -2
  156. package/dist-cli/chunks/store-IBEI6PK4.js +0 -2
  157. package/dist-cli/chunks/telemetry-3T56HLDZ.js +0 -2
  158. package/dist-cli/chunks/upload-PCXRS5D7.js +0 -2
  159. package/dist-cli/chunks/web-ZHCP6WFY.js +0 -2
@@ -0,0 +1,10 @@
1
+ /*! sootsim v0.1.293 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
+ import{a as xt,b as gr}from"./chunk-6IFJLHDA.js";import{H as mr}from"./chunk-WOWLO4LL.js";import{a as Zi,b as M,d as Ji}from"./chunk-RV67J726.js";var vr=M(et=>{"use strict";et.byteLength=ru;et.toByteArray=iu;et.fromByteArray=ou;var W=[],G=[],tu=typeof Uint8Array<"u"?Uint8Array:Array,Pt="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";for(ce=0,br=Pt.length;ce<br;++ce)W[ce]=Pt[ce],G[Pt.charCodeAt(ce)]=ce;var ce,br;G[45]=62;G[95]=63;function Cr(e){var t=e.length;if(t%4>0)throw new Error("Invalid string. Length must be a multiple of 4");var r=e.indexOf("=");r===-1&&(r=t);var i=r===t?0:4-r%4;return[r,i]}function ru(e){var t=Cr(e),r=t[0],i=t[1];return(r+i)*3/4-i}function nu(e,t,r){return(t+r)*3/4-r}function iu(e){var t,r=Cr(e),i=r[0],n=r[1],s=new tu(nu(e,i,n)),u=0,l=n>0?i-4:i,c;for(c=0;c<l;c+=4)t=G[e.charCodeAt(c)]<<18|G[e.charCodeAt(c+1)]<<12|G[e.charCodeAt(c+2)]<<6|G[e.charCodeAt(c+3)],s[u++]=t>>16&255,s[u++]=t>>8&255,s[u++]=t&255;return n===2&&(t=G[e.charCodeAt(c)]<<2|G[e.charCodeAt(c+1)]>>4,s[u++]=t&255),n===1&&(t=G[e.charCodeAt(c)]<<10|G[e.charCodeAt(c+1)]<<4|G[e.charCodeAt(c+2)]>>2,s[u++]=t>>8&255,s[u++]=t&255),s}function uu(e){return W[e>>18&63]+W[e>>12&63]+W[e>>6&63]+W[e&63]}function su(e,t,r){for(var i,n=[],s=t;s<r;s+=3)i=(e[s]<<16&16711680)+(e[s+1]<<8&65280)+(e[s+2]&255),n.push(uu(i));return n.join("")}function ou(e){for(var t,r=e.length,i=r%3,n=[],s=16383,u=0,l=r-i;u<l;u+=s)n.push(su(e,u,u+s>l?l:u+s));return i===1?(t=e[r-1],n.push(W[t>>2]+W[t<<4&63]+"==")):i===2&&(t=(e[r-2]<<8)+e[r-1],n.push(W[t>>10]+W[t>>4&63]+W[t<<2&63]+"=")),n.join("")}});var Y=M((Tr,ue)=>{(function(){var e,t,r,i,n,s,u,l={}.hasOwnProperty;e=function(c,...p){var m,d,y,b;if(n(Object.assign))Object.assign.apply(null,arguments);else for(m=0,y=p.length;m<y;m++)if(b=p[m],b!=null)for(d in b)l.call(b,d)&&(c[d]=b[d]);return c},n=function(c){return!!c&&Object.prototype.toString.call(c)==="[object Function]"},s=function(c){var p;return!!c&&((p=typeof c)=="function"||p==="object")},r=function(c){return n(Array.isArray)?Array.isArray(c):Object.prototype.toString.call(c)==="[object Array]"},i=function(c){var p;if(r(c))return!c.length;for(p in c)if(l.call(c,p))return!1;return!0},u=function(c){var p,m;return s(c)&&(m=Object.getPrototypeOf(c))&&(p=m.constructor)&&typeof p=="function"&&p instanceof p&&Function.prototype.toString.call(p)===Function.prototype.toString.call(Object)},t=function(c){return n(c.valueOf)?c.valueOf():c},ue.exports.assign=e,ue.exports.isFunction=n,ue.exports.isObject=s,ue.exports.isArray=r,ue.exports.isEmpty=i,ue.exports.isPlainObject=u,ue.exports.getValue=t}).call(Tr)});var Rt=M((Nr,Sr)=>{(function(){var e;Sr.exports=e=class{hasFeature(r,i){return!0}createDocumentType(r,i,n){throw new Error("This DOM method is not implemented.")}createDocument(r,i,n){throw new Error("This DOM method is not implemented.")}createHTMLDocument(r){throw new Error("This DOM method is not implemented.")}getFeature(r,i){throw new Error("This DOM method is not implemented.")}}}).call(Nr)});var Lr=M((Or,Ir)=>{(function(){var e;Ir.exports=e=class{constructor(){}handleError(r){throw new Error(r)}}}).call(Or)});var Fr=M((Mr,Br)=>{(function(){var e;Br.exports=e=(function(){class t{constructor(i){this.arr=i||[]}item(i){return this.arr[i]||null}contains(i){return this.arr.indexOf(i)!==-1}}return Object.defineProperty(t.prototype,"length",{get:function(){return this.arr.length}}),t}).call(this)}).call(Mr)});var Rr=M((xr,Pr)=>{(function(){var e,t,r;t=Lr(),r=Fr(),Pr.exports=e=(function(){class i{constructor(){var s;this.defaultParams={"canonical-form":!1,"cdata-sections":!1,comments:!1,"datatype-normalization":!1,"element-content-whitespace":!0,entities:!0,"error-handler":new t,infoset:!0,"validate-if-schema":!1,namespaces:!0,"namespace-declarations":!0,"normalize-characters":!1,"schema-location":"","schema-type":"","split-cdata-sections":!0,validate:!1,"well-formed":!0},this.params=s=Object.create(this.defaultParams)}getParameter(s){return this.params.hasOwnProperty(s)?this.params[s]:null}canSetParameter(s,u){return!0}setParameter(s,u){return u!=null?this.params[s]=u:delete this.params[s]}}return Object.defineProperty(i.prototype,"parameterNames",{get:function(){return new r(Object.keys(this.defaultParams))}}),i}).call(this)}).call(xr)});var R=M((qr,_r)=>{(function(){_r.exports={Element:1,Attribute:2,Text:3,CData:4,EntityReference:5,EntityDeclaration:6,ProcessingInstruction:7,Comment:8,Document:9,DocType:10,DocumentFragment:11,NotationDeclaration:12,Declaration:201,Raw:202,AttributeDeclaration:203,ElementDeclaration:204,Dummy:205}}).call(qr)});var qt=M((kr,Ur)=>{(function(){var e,t,r;e=R(),r=z(),Ur.exports=t=(function(){class i{constructor(s,u,l){if(this.parent=s,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),u==null)throw new Error("Missing attribute name. "+this.debugInfo(u));this.name=this.stringify.name(u),this.value=this.stringify.attValue(l),this.type=e.Attribute,this.isId=!1,this.schemaTypeInfo=null}clone(){return Object.create(this)}toString(s){return this.options.writer.attribute(this,this.options.writer.filterOptions(s))}debugInfo(s){return s=s||this.name,s==null?"parent: <"+this.parent.name+">":"attribute: {"+s+"}, parent: <"+this.parent.name+">"}isEqualNode(s){return!(s.namespaceURI!==this.namespaceURI||s.prefix!==this.prefix||s.localName!==this.localName||s.value!==this.value)}}return Object.defineProperty(i.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(i.prototype,"ownerElement",{get:function(){return this.parent}}),Object.defineProperty(i.prototype,"textContent",{get:function(){return this.value},set:function(n){return this.value=n||""}}),Object.defineProperty(i.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(i.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(i.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(i.prototype,"specified",{get:function(){return!0}}),i}).call(this)}).call(kr)});var tt=M((jr,Xr)=>{(function(){var e;Xr.exports=e=(function(){class t{constructor(i){this.nodes=i}clone(){return this.nodes=null}getNamedItem(i){return this.nodes[i]}setNamedItem(i){var n;return n=this.nodes[i.nodeName],this.nodes[i.nodeName]=i,n||null}removeNamedItem(i){var n;return n=this.nodes[i],delete this.nodes[i],n||null}item(i){return this.nodes[Object.keys(this.nodes)[i]]||null}getNamedItemNS(i,n){throw new Error("This DOM method is not implemented.")}setNamedItemNS(i){throw new Error("This DOM method is not implemented.")}removeNamedItemNS(i,n){throw new Error("This DOM method is not implemented.")}}return Object.defineProperty(t.prototype,"length",{get:function(){return Object.keys(this.nodes).length||0}}),t}).call(this)}).call(jr)});var rt=M((Vr,Hr)=>{(function(){var e,t,r,i,n,s,u,l,c={}.hasOwnProperty;({isObject:l,isFunction:u,getValue:s}=Y()),n=z(),e=R(),t=qt(),i=tt(),Hr.exports=r=(function(){class p extends n{constructor(d,y,b){var C,N,T,B;if(super(d),y==null)throw new Error("Missing element name. "+this.debugInfo());if(this.name=this.stringify.name(y),this.type=e.Element,this.attribs={},this.schemaTypeInfo=null,b!=null&&this.attribute(b),d.type===e.Document&&(this.isRoot=!0,this.documentObject=d,d.rootObject=this,d.children)){for(B=d.children,N=0,T=B.length;N<T;N++)if(C=B[N],C.type===e.DocType){C.name=this.name;break}}}clone(){var d,y,b,C;b=Object.create(this),b.isRoot&&(b.documentObject=null),b.attribs={},C=this.attribs;for(y in C)c.call(C,y)&&(d=C[y],b.attribs[y]=d.clone());return b.children=[],this.children.forEach(function(N){var T;return T=N.clone(),T.parent=b,b.children.push(T)}),b}attribute(d,y){var b,C;if(d!=null&&(d=s(d)),l(d))for(b in d)c.call(d,b)&&(C=d[b],this.attribute(b,C));else u(y)&&(y=y.apply()),this.options.keepNullAttributes&&y==null?this.attribs[d]=new t(this,d,""):y!=null&&(this.attribs[d]=new t(this,d,y));return this}removeAttribute(d){var y,b,C;if(d==null)throw new Error("Missing attribute name. "+this.debugInfo());if(d=s(d),Array.isArray(d))for(b=0,C=d.length;b<C;b++)y=d[b],delete this.attribs[y];else delete this.attribs[d];return this}toString(d){return this.options.writer.element(this,this.options.writer.filterOptions(d))}att(d,y){return this.attribute(d,y)}a(d,y){return this.attribute(d,y)}getAttribute(d){return this.attribs.hasOwnProperty(d)?this.attribs[d].value:null}setAttribute(d,y){throw new Error("This DOM method is not implemented."+this.debugInfo())}getAttributeNode(d){return this.attribs.hasOwnProperty(d)?this.attribs[d]:null}setAttributeNode(d){throw new Error("This DOM method is not implemented."+this.debugInfo())}removeAttributeNode(d){throw new Error("This DOM method is not implemented."+this.debugInfo())}getElementsByTagName(d){throw new Error("This DOM method is not implemented."+this.debugInfo())}getAttributeNS(d,y){throw new Error("This DOM method is not implemented."+this.debugInfo())}setAttributeNS(d,y,b){throw new Error("This DOM method is not implemented."+this.debugInfo())}removeAttributeNS(d,y){throw new Error("This DOM method is not implemented."+this.debugInfo())}getAttributeNodeNS(d,y){throw new Error("This DOM method is not implemented."+this.debugInfo())}setAttributeNodeNS(d){throw new Error("This DOM method is not implemented."+this.debugInfo())}getElementsByTagNameNS(d,y){throw new Error("This DOM method is not implemented."+this.debugInfo())}hasAttribute(d){return this.attribs.hasOwnProperty(d)}hasAttributeNS(d,y){throw new Error("This DOM method is not implemented."+this.debugInfo())}setIdAttribute(d,y){return this.attribs.hasOwnProperty(d)?this.attribs[d].isId:y}setIdAttributeNS(d,y,b){throw new Error("This DOM method is not implemented."+this.debugInfo())}setIdAttributeNode(d,y){throw new Error("This DOM method is not implemented."+this.debugInfo())}getElementsByTagName(d){throw new Error("This DOM method is not implemented."+this.debugInfo())}getElementsByTagNameNS(d,y){throw new Error("This DOM method is not implemented."+this.debugInfo())}getElementsByClassName(d){throw new Error("This DOM method is not implemented."+this.debugInfo())}isEqualNode(d){var y,b,C;if(!super.isEqualNode(d)||d.namespaceURI!==this.namespaceURI||d.prefix!==this.prefix||d.localName!==this.localName||d.attribs.length!==this.attribs.length)return!1;for(y=b=0,C=this.attribs.length-1;0<=C?b<=C:b>=C;y=0<=C?++b:--b)if(!this.attribs[y].isEqualNode(d.attribs[y]))return!1;return!0}}return Object.defineProperty(p.prototype,"tagName",{get:function(){return this.name}}),Object.defineProperty(p.prototype,"namespaceURI",{get:function(){return""}}),Object.defineProperty(p.prototype,"prefix",{get:function(){return""}}),Object.defineProperty(p.prototype,"localName",{get:function(){return this.name}}),Object.defineProperty(p.prototype,"id",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(p.prototype,"className",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(p.prototype,"classList",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(p.prototype,"attributes",{get:function(){return(!this.attributeMap||!this.attributeMap.nodes)&&(this.attributeMap=new i(this.attribs)),this.attributeMap}}),p}).call(this)}).call(Vr)});var Se=M((zr,Gr)=>{(function(){var e,t;t=z(),Gr.exports=e=(function(){class r extends t{constructor(n){super(n),this.value=""}clone(){return Object.create(this)}substringData(n,s){throw new Error("This DOM method is not implemented."+this.debugInfo())}appendData(n){throw new Error("This DOM method is not implemented."+this.debugInfo())}insertData(n,s){throw new Error("This DOM method is not implemented."+this.debugInfo())}deleteData(n,s){throw new Error("This DOM method is not implemented."+this.debugInfo())}replaceData(n,s,u){throw new Error("This DOM method is not implemented."+this.debugInfo())}isEqualNode(n){return!(!super.isEqualNode(n)||n.data!==this.data)}}return Object.defineProperty(r.prototype,"data",{get:function(){return this.value},set:function(i){return this.value=i||""}}),Object.defineProperty(r.prototype,"length",{get:function(){return this.value.length}}),Object.defineProperty(r.prototype,"textContent",{get:function(){return this.value},set:function(i){return this.value=i||""}}),r}).call(this)}).call(zr)});var nt=M(($r,Wr)=>{(function(){var e,t,r;e=R(),r=Se(),Wr.exports=t=class extends r{constructor(n,s){if(super(n),s==null)throw new Error("Missing CDATA text. "+this.debugInfo());this.name="#cdata-section",this.type=e.CData,this.value=this.stringify.cdata(s)}clone(){return Object.create(this)}toString(n){return this.options.writer.cdata(this,this.options.writer.filterOptions(n))}}}).call($r)});var it=M((Yr,Kr)=>{(function(){var e,t,r;e=R(),t=Se(),Kr.exports=r=class extends t{constructor(n,s){if(super(n),s==null)throw new Error("Missing comment text. "+this.debugInfo());this.name="#comment",this.type=e.Comment,this.value=this.stringify.comment(s)}clone(){return Object.create(this)}toString(n){return this.options.writer.comment(this,this.options.writer.filterOptions(n))}}}).call(Yr)});var ut=M((Zr,Jr)=>{(function(){var e,t,r,i;({isObject:i}=Y()),r=z(),e=R(),Jr.exports=t=class extends r{constructor(s,u,l,c){super(s),i(u)&&({version:u,encoding:l,standalone:c}=u),u||(u="1.0"),this.type=e.Declaration,this.version=this.stringify.xmlVersion(u),l!=null&&(this.encoding=this.stringify.xmlEncoding(l)),c!=null&&(this.standalone=this.stringify.xmlStandalone(c))}toString(s){return this.options.writer.declaration(this,this.options.writer.filterOptions(s))}}}).call(Zr)});var st=M((Qr,en)=>{(function(){var e,t,r;r=z(),e=R(),en.exports=t=class extends r{constructor(n,s,u,l,c,p){if(super(n),s==null)throw new Error("Missing DTD element name. "+this.debugInfo());if(u==null)throw new Error("Missing DTD attribute name. "+this.debugInfo(s));if(!l)throw new Error("Missing DTD attribute type. "+this.debugInfo(s));if(!c)throw new Error("Missing DTD attribute default. "+this.debugInfo(s));if(c.indexOf("#")!==0&&(c="#"+c),!c.match(/^(#REQUIRED|#IMPLIED|#FIXED|#DEFAULT)$/))throw new Error("Invalid default value type; expected: #REQUIRED, #IMPLIED, #FIXED or #DEFAULT. "+this.debugInfo(s));if(p&&!c.match(/^(#FIXED|#DEFAULT)$/))throw new Error("Default value only applies to #FIXED or #DEFAULT. "+this.debugInfo(s));this.elementName=this.stringify.name(s),this.type=e.AttributeDeclaration,this.attributeName=this.stringify.name(u),this.attributeType=this.stringify.dtdAttType(l),p&&(this.defaultValue=this.stringify.dtdAttDefault(p)),this.defaultValueType=c}toString(n){return this.options.writer.dtdAttList(this,this.options.writer.filterOptions(n))}}}).call(Qr)});var ot=M((tn,rn)=>{(function(){var e,t,r,i;({isObject:i}=Y()),r=z(),e=R(),rn.exports=t=(function(){class n extends r{constructor(u,l,c,p){if(super(u),c==null)throw new Error("Missing DTD entity name. "+this.debugInfo(c));if(p==null)throw new Error("Missing DTD entity value. "+this.debugInfo(c));if(this.pe=!!l,this.name=this.stringify.name(c),this.type=e.EntityDeclaration,!i(p))this.value=this.stringify.dtdEntityValue(p),this.internal=!0;else{if(!p.pubID&&!p.sysID)throw new Error("Public and/or system identifiers are required for an external entity. "+this.debugInfo(c));if(p.pubID&&!p.sysID)throw new Error("System identifier is required for a public external entity. "+this.debugInfo(c));if(this.internal=!1,p.pubID!=null&&(this.pubID=this.stringify.dtdPubID(p.pubID)),p.sysID!=null&&(this.sysID=this.stringify.dtdSysID(p.sysID)),p.nData!=null&&(this.nData=this.stringify.dtdNData(p.nData)),this.pe&&this.nData)throw new Error("Notation declaration is not allowed in a parameter entity. "+this.debugInfo(c))}}toString(u){return this.options.writer.dtdEntity(this,this.options.writer.filterOptions(u))}}return Object.defineProperty(n.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(n.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(n.prototype,"notationName",{get:function(){return this.nData||null}}),Object.defineProperty(n.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(n.prototype,"xmlEncoding",{get:function(){return null}}),Object.defineProperty(n.prototype,"xmlVersion",{get:function(){return null}}),n}).call(this)}).call(tn)});var at=M((nn,un)=>{(function(){var e,t,r;r=z(),e=R(),un.exports=t=class extends r{constructor(n,s,u){if(super(n),s==null)throw new Error("Missing DTD element name. "+this.debugInfo());u||(u="(#PCDATA)"),Array.isArray(u)&&(u="("+u.join(",")+")"),this.name=this.stringify.name(s),this.type=e.ElementDeclaration,this.value=this.stringify.dtdElementValue(u)}toString(n){return this.options.writer.dtdElement(this,this.options.writer.filterOptions(n))}}}).call(nn)});var lt=M((sn,on)=>{(function(){var e,t,r;r=z(),e=R(),on.exports=t=(function(){class i extends r{constructor(s,u,l){if(super(s),u==null)throw new Error("Missing DTD notation name. "+this.debugInfo(u));if(!l.pubID&&!l.sysID)throw new Error("Public or system identifiers are required for an external entity. "+this.debugInfo(u));this.name=this.stringify.name(u),this.type=e.NotationDeclaration,l.pubID!=null&&(this.pubID=this.stringify.dtdPubID(l.pubID)),l.sysID!=null&&(this.sysID=this.stringify.dtdSysID(l.sysID))}toString(s){return this.options.writer.dtdNotation(this,this.options.writer.filterOptions(s))}}return Object.defineProperty(i.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(i.prototype,"systemId",{get:function(){return this.sysID}}),i}).call(this)}).call(sn)});var ct=M((an,ln)=>{(function(){var e,t,r,i,n,s,u,l,c;({isObject:c}=Y()),l=z(),e=R(),t=st(),i=ot(),r=at(),n=lt(),u=tt(),ln.exports=s=(function(){class p extends l{constructor(d,y,b){var C,N,T,B;if(super(d),this.type=e.DocType,d.children){for(B=d.children,N=0,T=B.length;N<T;N++)if(C=B[N],C.type===e.Element){this.name=C.name;break}}this.documentObject=d,c(y)&&({pubID:y,sysID:b}=y),b==null&&([b,y]=[y,b]),y!=null&&(this.pubID=this.stringify.dtdPubID(y)),b!=null&&(this.sysID=this.stringify.dtdSysID(b))}element(d,y){var b;return b=new r(this,d,y),this.children.push(b),this}attList(d,y,b,C,N){var T;return T=new t(this,d,y,b,C,N),this.children.push(T),this}entity(d,y){var b;return b=new i(this,!1,d,y),this.children.push(b),this}pEntity(d,y){var b;return b=new i(this,!0,d,y),this.children.push(b),this}notation(d,y){var b;return b=new n(this,d,y),this.children.push(b),this}toString(d){return this.options.writer.docType(this,this.options.writer.filterOptions(d))}ele(d,y){return this.element(d,y)}att(d,y,b,C,N){return this.attList(d,y,b,C,N)}ent(d,y){return this.entity(d,y)}pent(d,y){return this.pEntity(d,y)}not(d,y){return this.notation(d,y)}up(){return this.root()||this.documentObject}isEqualNode(d){return!(!super.isEqualNode(d)||d.name!==this.name||d.publicId!==this.publicId||d.systemId!==this.systemId)}}return Object.defineProperty(p.prototype,"entities",{get:function(){var m,d,y,b,C;for(b={},C=this.children,d=0,y=C.length;d<y;d++)m=C[d],m.type===e.EntityDeclaration&&!m.pe&&(b[m.name]=m);return new u(b)}}),Object.defineProperty(p.prototype,"notations",{get:function(){var m,d,y,b,C;for(b={},C=this.children,d=0,y=C.length;d<y;d++)m=C[d],m.type===e.NotationDeclaration&&(b[m.name]=m);return new u(b)}}),Object.defineProperty(p.prototype,"publicId",{get:function(){return this.pubID}}),Object.defineProperty(p.prototype,"systemId",{get:function(){return this.sysID}}),Object.defineProperty(p.prototype,"internalSubset",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),p}).call(this)}).call(an)});var ht=M((cn,hn)=>{(function(){var e,t,r;e=R(),t=z(),hn.exports=r=class extends t{constructor(n,s){if(super(n),s==null)throw new Error("Missing raw text. "+this.debugInfo());this.type=e.Raw,this.value=this.stringify.raw(s)}clone(){return Object.create(this)}toString(n){return this.options.writer.raw(this,this.options.writer.filterOptions(n))}}}).call(cn)});var ft=M((fn,dn)=>{(function(){var e,t,r;e=R(),t=Se(),dn.exports=r=(function(){class i extends t{constructor(s,u){if(super(s),u==null)throw new Error("Missing element text. "+this.debugInfo());this.name="#text",this.type=e.Text,this.value=this.stringify.text(u)}clone(){return Object.create(this)}toString(s){return this.options.writer.text(this,this.options.writer.filterOptions(s))}splitText(s){throw new Error("This DOM method is not implemented."+this.debugInfo())}replaceWholeText(s){throw new Error("This DOM method is not implemented."+this.debugInfo())}}return Object.defineProperty(i.prototype,"isElementContentWhitespace",{get:function(){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),Object.defineProperty(i.prototype,"wholeText",{get:function(){var n,s,u;for(u="",s=this.previousSibling;s;)u=s.data+u,s=s.previousSibling;for(u+=this.data,n=this.nextSibling;n;)u=u+n.data,n=n.nextSibling;return u}}),i}).call(this)}).call(fn)});var dt=M((pn,mn)=>{(function(){var e,t,r;e=R(),t=Se(),mn.exports=r=class extends t{constructor(n,s,u){if(super(n),s==null)throw new Error("Missing instruction target. "+this.debugInfo());this.type=e.ProcessingInstruction,this.target=this.stringify.insTarget(s),this.name=this.target,u&&(this.value=this.stringify.insValue(u))}clone(){return Object.create(this)}toString(n){return this.options.writer.processingInstruction(this,this.options.writer.filterOptions(n))}isEqualNode(n){return!(!super.isEqualNode(n)||n.target!==this.target)}}}).call(pn)});var _t=M((gn,Dn)=>{(function(){var e,t,r;r=z(),e=R(),Dn.exports=t=class extends r{constructor(n){super(n),this.type=e.Dummy}clone(){return Object.create(this)}toString(n){return""}}}).call(gn)});var En=M((yn,wn)=>{(function(){var e;wn.exports=e=(function(){class t{constructor(i){this.nodes=i}clone(){return this.nodes=null}item(i){return this.nodes[i]||null}}return Object.defineProperty(t.prototype,"length",{get:function(){return this.nodes.length||0}}),t}).call(this)}).call(yn)});var Cn=M((An,bn)=>{(function(){bn.exports={Disconnected:1,Preceding:2,Following:4,Contains:8,ContainedBy:16,ImplementationSpecific:32}}).call(An)});var z=M((vn,Tn)=>{(function(){var e,t,r,i,n,s,u,l,c,p,m,d,y,b,C,N,T,B,P={}.hasOwnProperty,f=[].splice;({isObject:B,isFunction:T,isEmpty:N,getValue:C}=Y()),l=null,r=null,i=null,n=null,s=null,y=null,b=null,d=null,u=null,t=null,m=null,c=null,e=null,Tn.exports=p=(function(){class h{constructor(o){this.parent=o,this.parent&&(this.options=this.parent.options,this.stringify=this.parent.stringify),this.value=null,this.children=[],this.baseURI=null,l||(l=rt(),r=nt(),i=it(),n=ut(),s=ct(),y=ht(),b=ft(),d=dt(),u=_t(),t=R(),m=En(),c=tt(),e=Cn())}setParent(o){var D,A,a,g,E;for(this.parent=o,o&&(this.options=o.options,this.stringify=o.stringify),g=this.children,E=[],A=0,a=g.length;A<a;A++)D=g[A],E.push(D.setParent(this));return E}element(o,D,A){var a,g,E,v,O,I,q,L,S;if(I=null,D===null&&A==null&&([D,A]=[{},null]),D==null&&(D={}),D=C(D),B(D)||([A,D]=[D,A]),o!=null&&(o=C(o)),Array.isArray(o))for(E=0,q=o.length;E<q;E++)g=o[E],I=this.element(g);else if(T(o))I=this.element(o.apply());else if(B(o)){for(O in o)if(P.call(o,O))if(S=o[O],T(S)&&(S=S.apply()),!this.options.ignoreDecorators&&this.stringify.convertAttKey&&O.indexOf(this.stringify.convertAttKey)===0)I=this.attribute(O.substr(this.stringify.convertAttKey.length),S);else if(!this.options.separateArrayItems&&Array.isArray(S)&&N(S))I=this.dummy();else if(B(S)&&N(S))I=this.element(O);else if(!this.options.keepNullNodes&&S==null)I=this.dummy();else if(!this.options.separateArrayItems&&Array.isArray(S))for(v=0,L=S.length;v<L;v++)g=S[v],a={},a[O]=g,I=this.element(a);else B(S)?!this.options.ignoreDecorators&&this.stringify.convertTextKey&&O.indexOf(this.stringify.convertTextKey)===0?I=this.element(S):(I=this.element(O),I.element(S)):I=this.element(O,S)}else!this.options.keepNullNodes&&A===null?I=this.dummy():!this.options.ignoreDecorators&&this.stringify.convertTextKey&&o.indexOf(this.stringify.convertTextKey)===0?I=this.text(A):!this.options.ignoreDecorators&&this.stringify.convertCDataKey&&o.indexOf(this.stringify.convertCDataKey)===0?I=this.cdata(A):!this.options.ignoreDecorators&&this.stringify.convertCommentKey&&o.indexOf(this.stringify.convertCommentKey)===0?I=this.comment(A):!this.options.ignoreDecorators&&this.stringify.convertRawKey&&o.indexOf(this.stringify.convertRawKey)===0?I=this.raw(A):!this.options.ignoreDecorators&&this.stringify.convertPIKey&&o.indexOf(this.stringify.convertPIKey)===0?I=this.instruction(o.substr(this.stringify.convertPIKey.length),A):I=this.node(o,D,A);if(I==null)throw new Error("Could not create any elements with: "+o+". "+this.debugInfo());return I}insertBefore(o,D,A){var a,g,E,v,O;if(o?.type)return E=o,v=D,E.setParent(this),v?(g=children.indexOf(v),O=children.splice(g),children.push(E),Array.prototype.push.apply(children,O)):children.push(E),E;if(this.isRoot)throw new Error("Cannot insert elements at root level. "+this.debugInfo(o));return g=this.parent.children.indexOf(this),O=this.parent.children.splice(g),a=this.parent.element(o,D,A),Array.prototype.push.apply(this.parent.children,O),a}insertAfter(o,D,A){var a,g,E;if(this.isRoot)throw new Error("Cannot insert elements at root level. "+this.debugInfo(o));return g=this.parent.children.indexOf(this),E=this.parent.children.splice(g+1),a=this.parent.element(o,D,A),Array.prototype.push.apply(this.parent.children,E),a}remove(){var o,D;if(this.isRoot)throw new Error("Cannot remove the root element. "+this.debugInfo());return o=this.parent.children.indexOf(this),f.apply(this.parent.children,[o,o-o+1].concat(D=[])),this.parent}node(o,D,A){var a;return o!=null&&(o=C(o)),D||(D={}),D=C(D),B(D)||([A,D]=[D,A]),a=new l(this,o,D),A!=null&&a.text(A),this.children.push(a),a}text(o){var D;return B(o)&&this.element(o),D=new b(this,o),this.children.push(D),this}cdata(o){var D;return D=new r(this,o),this.children.push(D),this}comment(o){var D;return D=new i(this,o),this.children.push(D),this}commentBefore(o){var D,A,a;return A=this.parent.children.indexOf(this),a=this.parent.children.splice(A),D=this.parent.comment(o),Array.prototype.push.apply(this.parent.children,a),this}commentAfter(o){var D,A,a;return A=this.parent.children.indexOf(this),a=this.parent.children.splice(A+1),D=this.parent.comment(o),Array.prototype.push.apply(this.parent.children,a),this}raw(o){var D;return D=new y(this,o),this.children.push(D),this}dummy(){var o;return o=new u(this),o}instruction(o,D){var A,a,g,E,v;if(o!=null&&(o=C(o)),D!=null&&(D=C(D)),Array.isArray(o))for(E=0,v=o.length;E<v;E++)A=o[E],this.instruction(A);else if(B(o))for(A in o)P.call(o,A)&&(a=o[A],this.instruction(A,a));else T(D)&&(D=D.apply()),g=new d(this,o,D),this.children.push(g);return this}instructionBefore(o,D){var A,a,g;return a=this.parent.children.indexOf(this),g=this.parent.children.splice(a),A=this.parent.instruction(o,D),Array.prototype.push.apply(this.parent.children,g),this}instructionAfter(o,D){var A,a,g;return a=this.parent.children.indexOf(this),g=this.parent.children.splice(a+1),A=this.parent.instruction(o,D),Array.prototype.push.apply(this.parent.children,g),this}declaration(o,D,A){var a,g;return a=this.document(),g=new n(a,o,D,A),a.children.length===0?a.children.unshift(g):a.children[0].type===t.Declaration?a.children[0]=g:a.children.unshift(g),a.root()||a}dtd(o,D){var A,a,g,E,v,O,I,q,L,S;for(a=this.document(),g=new s(a,o,D),L=a.children,E=v=0,I=L.length;v<I;E=++v)if(A=L[E],A.type===t.DocType)return a.children[E]=g,g;for(S=a.children,E=O=0,q=S.length;O<q;E=++O)if(A=S[E],A.isRoot)return a.children.splice(E,0,g),g;return a.children.push(g),g}up(){if(this.isRoot)throw new Error("The root node has no parent. Use doc() if you need to get the document object.");return this.parent}root(){var o;for(o=this;o;){if(o.type===t.Document)return o.rootObject;if(o.isRoot)return o;o=o.parent}}document(){var o;for(o=this;o;){if(o.type===t.Document)return o;o=o.parent}}end(o){return this.document().end(o)}prev(){var o;if(o=this.parent.children.indexOf(this),o<1)throw new Error("Already at the first node. "+this.debugInfo());return this.parent.children[o-1]}next(){var o;if(o=this.parent.children.indexOf(this),o===-1||o===this.parent.children.length-1)throw new Error("Already at the last node. "+this.debugInfo());return this.parent.children[o+1]}importDocument(o){var D,A,a,g,E;if(A=o.root().clone(),A.parent=this,A.isRoot=!1,this.children.push(A),this.type===t.Document&&(A.isRoot=!0,A.documentObject=this,this.rootObject=A,this.children)){for(E=this.children,a=0,g=E.length;a<g;a++)if(D=E[a],D.type===t.DocType){D.name=A.name;break}}return this}debugInfo(o){var D,A;return o=o||this.name,o==null&&!((D=this.parent)!=null&&D.name)?"":o==null?"parent: <"+this.parent.name+">":(A=this.parent)!=null&&A.name?"node: <"+o+">, parent: <"+this.parent.name+">":"node: <"+o+">"}ele(o,D,A){return this.element(o,D,A)}nod(o,D,A){return this.node(o,D,A)}txt(o){return this.text(o)}dat(o){return this.cdata(o)}com(o){return this.comment(o)}ins(o,D){return this.instruction(o,D)}doc(){return this.document()}dec(o,D,A){return this.declaration(o,D,A)}e(o,D,A){return this.element(o,D,A)}n(o,D,A){return this.node(o,D,A)}t(o){return this.text(o)}d(o){return this.cdata(o)}c(o){return this.comment(o)}r(o){return this.raw(o)}i(o,D){return this.instruction(o,D)}u(){return this.up()}importXMLBuilder(o){return this.importDocument(o)}attribute(o,D){throw new Error("attribute() applies to element nodes only.")}att(o,D){return this.attribute(o,D)}a(o,D){return this.attribute(o,D)}removeAttribute(o){throw new Error("attribute() applies to element nodes only.")}replaceChild(o,D){throw new Error("This DOM method is not implemented."+this.debugInfo())}removeChild(o){throw new Error("This DOM method is not implemented."+this.debugInfo())}appendChild(o){throw new Error("This DOM method is not implemented."+this.debugInfo())}hasChildNodes(){return this.children.length!==0}cloneNode(o){throw new Error("This DOM method is not implemented."+this.debugInfo())}normalize(){throw new Error("This DOM method is not implemented."+this.debugInfo())}isSupported(o,D){return!0}hasAttributes(){return this.attribs.length!==0}compareDocumentPosition(o){var D,A;return D=this,D===o?0:this.document()!==o.document()?(A=e.Disconnected|e.ImplementationSpecific,Math.random()<.5?A|=e.Preceding:A|=e.Following,A):D.isAncestor(o)?e.Contains|e.Preceding:D.isDescendant(o)?e.Contains|e.Following:D.isPreceding(o)?e.Preceding:e.Following}isSameNode(o){throw new Error("This DOM method is not implemented."+this.debugInfo())}lookupPrefix(o){throw new Error("This DOM method is not implemented."+this.debugInfo())}isDefaultNamespace(o){throw new Error("This DOM method is not implemented."+this.debugInfo())}lookupNamespaceURI(o){throw new Error("This DOM method is not implemented."+this.debugInfo())}isEqualNode(o){var D,A,a;if(o.nodeType!==this.nodeType||o.children.length!==this.children.length)return!1;for(D=A=0,a=this.children.length-1;0<=a?A<=a:A>=a;D=0<=a?++A:--A)if(!this.children[D].isEqualNode(o.children[D]))return!1;return!0}getFeature(o,D){throw new Error("This DOM method is not implemented."+this.debugInfo())}setUserData(o,D,A){throw new Error("This DOM method is not implemented."+this.debugInfo())}getUserData(o){throw new Error("This DOM method is not implemented."+this.debugInfo())}contains(o){return o?o===this||this.isDescendant(o):!1}isDescendant(o){var D,A,a,g,E;for(E=this.children,a=0,g=E.length;a<g;a++)if(D=E[a],o===D||(A=D.isDescendant(o),A))return!0;return!1}isAncestor(o){return o.isDescendant(this)}isPreceding(o){var D,A;return D=this.treePosition(o),A=this.treePosition(this),D===-1||A===-1?!1:D<A}isFollowing(o){var D,A;return D=this.treePosition(o),A=this.treePosition(this),D===-1||A===-1?!1:D>A}treePosition(o){var D,A;return A=0,D=!1,this.foreachTreeNode(this.document(),function(a){if(A++,!D&&a===o)return D=!0}),D?A:-1}foreachTreeNode(o,D){var A,a,g,E,v;for(o||(o=this.document()),E=o.children,a=0,g=E.length;a<g;a++){if(A=E[a],v=D(A))return v;if(v=this.foreachTreeNode(A,D),v)return v}}}return Object.defineProperty(h.prototype,"nodeName",{get:function(){return this.name}}),Object.defineProperty(h.prototype,"nodeType",{get:function(){return this.type}}),Object.defineProperty(h.prototype,"nodeValue",{get:function(){return this.value}}),Object.defineProperty(h.prototype,"parentNode",{get:function(){return this.parent}}),Object.defineProperty(h.prototype,"childNodes",{get:function(){return(!this.childNodeList||!this.childNodeList.nodes)&&(this.childNodeList=new m(this.children)),this.childNodeList}}),Object.defineProperty(h.prototype,"firstChild",{get:function(){return this.children[0]||null}}),Object.defineProperty(h.prototype,"lastChild",{get:function(){return this.children[this.children.length-1]||null}}),Object.defineProperty(h.prototype,"previousSibling",{get:function(){var w;return w=this.parent.children.indexOf(this),this.parent.children[w-1]||null}}),Object.defineProperty(h.prototype,"nextSibling",{get:function(){var w;return w=this.parent.children.indexOf(this),this.parent.children[w+1]||null}}),Object.defineProperty(h.prototype,"ownerDocument",{get:function(){return this.document()||null}}),Object.defineProperty(h.prototype,"textContent",{get:function(){var w,o,D,A,a;if(this.nodeType===t.Element||this.nodeType===t.DocumentFragment){for(a="",A=this.children,o=0,D=A.length;o<D;o++)w=A[o],w.textContent&&(a+=w.textContent);return a}else return null},set:function(w){throw new Error("This DOM method is not implemented."+this.debugInfo())}}),h}).call(this)}).call(vn)});var kt=M((Nn,Sn)=>{(function(){var e,t={}.hasOwnProperty;Sn.exports=e=(function(){class r{constructor(n){var s,u,l;this.assertLegalChar=this.assertLegalChar.bind(this),this.assertLegalName=this.assertLegalName.bind(this),n||(n={}),this.options=n,this.options.version||(this.options.version="1.0"),u=n.stringify||{};for(s in u)t.call(u,s)&&(l=u[s],this[s]=l)}name(n){return this.options.noValidation?n:this.assertLegalName(""+n||"")}text(n){return this.options.noValidation?n:this.assertLegalChar(this.textEscape(""+n||""))}cdata(n){return this.options.noValidation?n:(n=""+n||"",n=n.replace("]]>","]]]]><![CDATA[>"),this.assertLegalChar(n))}comment(n){if(this.options.noValidation)return n;if(n=""+n||"",n.match(/--/))throw new Error("Comment text cannot contain double-hypen: "+n);return this.assertLegalChar(n)}raw(n){return this.options.noValidation?n:""+n||""}attValue(n){return this.options.noValidation?n:this.assertLegalChar(this.attEscape(n=""+n||""))}insTarget(n){return this.options.noValidation?n:this.assertLegalChar(""+n||"")}insValue(n){if(this.options.noValidation)return n;if(n=""+n||"",n.match(/\?>/))throw new Error("Invalid processing instruction value: "+n);return this.assertLegalChar(n)}xmlVersion(n){if(this.options.noValidation)return n;if(n=""+n||"",!n.match(/1\.[0-9]+/))throw new Error("Invalid version number: "+n);return n}xmlEncoding(n){if(this.options.noValidation)return n;if(n=""+n||"",!n.match(/^[A-Za-z](?:[A-Za-z0-9._-])*$/))throw new Error("Invalid encoding: "+n);return this.assertLegalChar(n)}xmlStandalone(n){return this.options.noValidation?n:n?"yes":"no"}dtdPubID(n){return this.options.noValidation?n:this.assertLegalChar(""+n||"")}dtdSysID(n){return this.options.noValidation?n:this.assertLegalChar(""+n||"")}dtdElementValue(n){return this.options.noValidation?n:this.assertLegalChar(""+n||"")}dtdAttType(n){return this.options.noValidation?n:this.assertLegalChar(""+n||"")}dtdAttDefault(n){return this.options.noValidation?n:this.assertLegalChar(""+n||"")}dtdEntityValue(n){return this.options.noValidation?n:this.assertLegalChar(""+n||"")}dtdNData(n){return this.options.noValidation?n:this.assertLegalChar(""+n||"")}assertLegalChar(n){var s,u;if(this.options.noValidation)return n;if(this.options.version==="1.0"){if(s=/[\0-\x08\x0B\f\x0E-\x1F\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g,this.options.invalidCharReplacement!==void 0)n=n.replace(s,this.options.invalidCharReplacement);else if(u=n.match(s))throw new Error(`Invalid character in string: ${n} at index ${u.index}`)}else if(this.options.version==="1.1"){if(s=/[\0\uFFFE\uFFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/g,this.options.invalidCharReplacement!==void 0)n=n.replace(s,this.options.invalidCharReplacement);else if(u=n.match(s))throw new Error(`Invalid character in string: ${n} at index ${u.index}`)}return n}assertLegalName(n){var s;if(this.options.noValidation)return n;if(n=this.assertLegalChar(n),s=/^([: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]|[\uD800-\uDB7F][\uDC00-\uDFFF])([\x2D\.0-:A-Z_a-z\xB7\xC0-\xD6\xD8-\xF6\xF8-\u037D\u037F-\u1FFF\u200C\u200D\u203F\u2040\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]|[\uD800-\uDB7F][\uDC00-\uDFFF])*$/,!n.match(s))throw new Error(`Invalid character in name: ${n}`);return n}textEscape(n){var s;return this.options.noValidation?n:(s=this.options.noDoubleEncoding?/(?!&(lt|gt|amp|apos|quot);)&/g:/&/g,n.replace(s,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/\r/g,"&#xD;"))}attEscape(n){var s;return this.options.noValidation?n:(s=this.options.noDoubleEncoding?/(?!&(lt|gt|amp|apos|quot);)&/g:/&/g,n.replace(s,"&amp;").replace(/</g,"&lt;").replace(/"/g,"&quot;").replace(/\t/g,"&#x9;").replace(/\n/g,"&#xA;").replace(/\r/g,"&#xD;"))}}return r.prototype.convertAttKey="@",r.prototype.convertPIKey="?",r.prototype.convertTextKey="#text",r.prototype.convertCDataKey="#cdata",r.prototype.convertCommentKey="#comment",r.prototype.convertRawKey="#raw",r}).call(this)}).call(Nn)});var Oe=M((On,In)=>{(function(){In.exports={None:0,OpenTag:1,InsideTag:2,CloseTag:3}}).call(On)});var Ut=M((Ln,Mn)=>{(function(){var e,t,r,i,n,s,u,l,c,p,m,d,y,b,C,N,T,B={}.hasOwnProperty;({assign:T}=Y()),e=R(),c=ut(),p=ct(),r=nt(),i=it(),d=rt(),b=ht(),C=ft(),y=dt(),m=_t(),n=st(),s=at(),u=ot(),l=lt(),t=Oe(),Mn.exports=N=class{constructor(f){var h,w,o;f||(f={}),this.options=f,w=f.writer||{};for(h in w)B.call(w,h)&&(o=w[h],this["_"+h]=this[h],this[h]=o)}filterOptions(f){var h,w,o,D,A,a,g,E,v;return f||(f={}),f=T({},this.options,f),h={writer:this},h.pretty=f.pretty||!1,h.allowEmpty=f.allowEmpty||!1,h.indent=(w=f.indent)!=null?w:" ",h.newline=(o=f.newline)!=null?o:`
3
+ `,h.offset=(D=f.offset)!=null?D:0,h.width=(A=f.width)!=null?A:0,h.dontPrettyTextNodes=(a=(g=f.dontPrettyTextNodes)!=null?g:f.dontprettytextnodes)!=null?a:0,h.spaceBeforeSlash=(E=(v=f.spaceBeforeSlash)!=null?v:f.spacebeforeslash)!=null?E:"",h.spaceBeforeSlash===!0&&(h.spaceBeforeSlash=" "),h.suppressPrettyCount=0,h.user={},h.state=t.None,h}indent(f,h,w){var o;return!h.pretty||h.suppressPrettyCount?"":h.pretty&&(o=(w||0)+h.offset+1,o>0)?new Array(o).join(h.indent):""}endline(f,h,w){return!h.pretty||h.suppressPrettyCount?"":h.newline}attribute(f,h,w){var o;return this.openAttribute(f,h,w),h.pretty&&h.width>0?o=f.name+'="'+f.value+'"':o=" "+f.name+'="'+f.value+'"',this.closeAttribute(f,h,w),o}cdata(f,h,w){var o;return this.openNode(f,h,w),h.state=t.OpenTag,o=this.indent(f,h,w)+"<![CDATA[",h.state=t.InsideTag,o+=f.value,h.state=t.CloseTag,o+="]]>"+this.endline(f,h,w),h.state=t.None,this.closeNode(f,h,w),o}comment(f,h,w){var o;return this.openNode(f,h,w),h.state=t.OpenTag,o=this.indent(f,h,w)+"<!-- ",h.state=t.InsideTag,o+=f.value,h.state=t.CloseTag,o+=" -->"+this.endline(f,h,w),h.state=t.None,this.closeNode(f,h,w),o}declaration(f,h,w){var o;return this.openNode(f,h,w),h.state=t.OpenTag,o=this.indent(f,h,w)+"<?xml",h.state=t.InsideTag,o+=' version="'+f.version+'"',f.encoding!=null&&(o+=' encoding="'+f.encoding+'"'),f.standalone!=null&&(o+=' standalone="'+f.standalone+'"'),h.state=t.CloseTag,o+=h.spaceBeforeSlash+"?>",o+=this.endline(f,h,w),h.state=t.None,this.closeNode(f,h,w),o}docType(f,h,w){var o,D,A,a,g;if(w||(w=0),this.openNode(f,h,w),h.state=t.OpenTag,a=this.indent(f,h,w),a+="<!DOCTYPE "+f.root().name,f.pubID&&f.sysID?a+=' PUBLIC "'+f.pubID+'" "'+f.sysID+'"':f.sysID&&(a+=' SYSTEM "'+f.sysID+'"'),f.children.length>0){for(a+=" [",a+=this.endline(f,h,w),h.state=t.InsideTag,g=f.children,D=0,A=g.length;D<A;D++)o=g[D],a+=this.writeChildNode(o,h,w+1);h.state=t.CloseTag,a+="]"}return h.state=t.CloseTag,a+=h.spaceBeforeSlash+">",a+=this.endline(f,h,w),h.state=t.None,this.closeNode(f,h,w),a}element(f,h,w){var o,D,A,a,g,E,v,O,I,q,L,S,_,Ke,Ze,Je,Bt,Ft,pe;if(w||(w=0),S=!1,this.openNode(f,h,w),h.state=t.OpenTag,_=this.indent(f,h,w)+"<"+f.name,h.pretty&&h.width>0){O=_.length,Ze=f.attribs;for(L in Ze)B.call(Ze,L)&&(o=Ze[L],Ke=this.attribute(o,h,w),D=Ke.length,O+D>h.width?(pe=this.indent(f,h,w+1)+Ke,_+=this.endline(f,h,w)+pe,O=pe.length):(pe=" "+Ke,_+=pe,O+=pe.length))}else{Je=f.attribs;for(L in Je)B.call(Je,L)&&(o=Je[L],_+=this.attribute(o,h,w))}if(a=f.children.length,g=a===0?null:f.children[0],a===0||f.children.every(function(Qe){return(Qe.type===e.Text||Qe.type===e.Raw||Qe.type===e.CData)&&Qe.value===""}))h.allowEmpty?(_+=">",h.state=t.CloseTag,_+="</"+f.name+">"+this.endline(f,h,w)):(h.state=t.CloseTag,_+=h.spaceBeforeSlash+"/>"+this.endline(f,h,w));else if(h.pretty&&a===1&&(g.type===e.Text||g.type===e.Raw||g.type===e.CData)&&g.value!=null)_+=">",h.state=t.InsideTag,h.suppressPrettyCount++,S=!0,_+=this.writeChildNode(g,h,w+1),h.suppressPrettyCount--,S=!1,h.state=t.CloseTag,_+="</"+f.name+">"+this.endline(f,h,w);else{if(h.dontPrettyTextNodes){for(Bt=f.children,E=0,I=Bt.length;E<I;E++)if(A=Bt[E],(A.type===e.Text||A.type===e.Raw||A.type===e.CData)&&A.value!=null){h.suppressPrettyCount++,S=!0;break}}for(_+=">"+this.endline(f,h,w),h.state=t.InsideTag,Ft=f.children,v=0,q=Ft.length;v<q;v++)A=Ft[v],_+=this.writeChildNode(A,h,w+1);h.state=t.CloseTag,_+=this.indent(f,h,w)+"</"+f.name+">",S&&h.suppressPrettyCount--,_+=this.endline(f,h,w),h.state=t.None}return this.closeNode(f,h,w),_}writeChildNode(f,h,w){switch(f.type){case e.CData:return this.cdata(f,h,w);case e.Comment:return this.comment(f,h,w);case e.Element:return this.element(f,h,w);case e.Raw:return this.raw(f,h,w);case e.Text:return this.text(f,h,w);case e.ProcessingInstruction:return this.processingInstruction(f,h,w);case e.Dummy:return"";case e.Declaration:return this.declaration(f,h,w);case e.DocType:return this.docType(f,h,w);case e.AttributeDeclaration:return this.dtdAttList(f,h,w);case e.ElementDeclaration:return this.dtdElement(f,h,w);case e.EntityDeclaration:return this.dtdEntity(f,h,w);case e.NotationDeclaration:return this.dtdNotation(f,h,w);default:throw new Error("Unknown XML node type: "+f.constructor.name)}}processingInstruction(f,h,w){var o;return this.openNode(f,h,w),h.state=t.OpenTag,o=this.indent(f,h,w)+"<?",h.state=t.InsideTag,o+=f.target,f.value&&(o+=" "+f.value),h.state=t.CloseTag,o+=h.spaceBeforeSlash+"?>",o+=this.endline(f,h,w),h.state=t.None,this.closeNode(f,h,w),o}raw(f,h,w){var o;return this.openNode(f,h,w),h.state=t.OpenTag,o=this.indent(f,h,w),h.state=t.InsideTag,o+=f.value,h.state=t.CloseTag,o+=this.endline(f,h,w),h.state=t.None,this.closeNode(f,h,w),o}text(f,h,w){var o;return this.openNode(f,h,w),h.state=t.OpenTag,o=this.indent(f,h,w),h.state=t.InsideTag,o+=f.value,h.state=t.CloseTag,o+=this.endline(f,h,w),h.state=t.None,this.closeNode(f,h,w),o}dtdAttList(f,h,w){var o;return this.openNode(f,h,w),h.state=t.OpenTag,o=this.indent(f,h,w)+"<!ATTLIST",h.state=t.InsideTag,o+=" "+f.elementName+" "+f.attributeName+" "+f.attributeType,f.defaultValueType!=="#DEFAULT"&&(o+=" "+f.defaultValueType),f.defaultValue&&(o+=' "'+f.defaultValue+'"'),h.state=t.CloseTag,o+=h.spaceBeforeSlash+">"+this.endline(f,h,w),h.state=t.None,this.closeNode(f,h,w),o}dtdElement(f,h,w){var o;return this.openNode(f,h,w),h.state=t.OpenTag,o=this.indent(f,h,w)+"<!ELEMENT",h.state=t.InsideTag,o+=" "+f.name+" "+f.value,h.state=t.CloseTag,o+=h.spaceBeforeSlash+">"+this.endline(f,h,w),h.state=t.None,this.closeNode(f,h,w),o}dtdEntity(f,h,w){var o;return this.openNode(f,h,w),h.state=t.OpenTag,o=this.indent(f,h,w)+"<!ENTITY",h.state=t.InsideTag,f.pe&&(o+=" %"),o+=" "+f.name,f.value?o+=' "'+f.value+'"':(f.pubID&&f.sysID?o+=' PUBLIC "'+f.pubID+'" "'+f.sysID+'"':f.sysID&&(o+=' SYSTEM "'+f.sysID+'"'),f.nData&&(o+=" NDATA "+f.nData)),h.state=t.CloseTag,o+=h.spaceBeforeSlash+">"+this.endline(f,h,w),h.state=t.None,this.closeNode(f,h,w),o}dtdNotation(f,h,w){var o;return this.openNode(f,h,w),h.state=t.OpenTag,o=this.indent(f,h,w)+"<!NOTATION",h.state=t.InsideTag,o+=" "+f.name,f.pubID&&f.sysID?o+=' PUBLIC "'+f.pubID+'" "'+f.sysID+'"':f.pubID?o+=' PUBLIC "'+f.pubID+'"':f.sysID&&(o+=' SYSTEM "'+f.sysID+'"'),h.state=t.CloseTag,o+=h.spaceBeforeSlash+">"+this.endline(f,h,w),h.state=t.None,this.closeNode(f,h,w),o}openNode(f,h,w){}closeNode(f,h,w){}openAttribute(f,h,w){}closeAttribute(f,h,w){}}}).call(Ln)});var pt=M((Bn,Fn)=>{(function(){var e,t;t=Ut(),Fn.exports=e=class extends t{constructor(i){super(i)}document(i,n){var s,u,l,c,p;for(n=this.filterOptions(n),c="",p=i.children,u=0,l=p.length;u<l;u++)s=p[u],c+=this.writeChildNode(s,n,0);return n.pretty&&c.slice(-n.newline.length)===n.newline&&(c=c.slice(0,-n.newline.length)),c}}}).call(Bn)});var jt=M((xn,Pn)=>{(function(){var e,t,r,i,n,s,u,l;({isPlainObject:l}=Y()),r=Rt(),t=Rr(),n=z(),e=R(),u=kt(),s=pt(),Pn.exports=i=(function(){class c extends n{constructor(m){super(null),this.name="#document",this.type=e.Document,this.documentURI=null,this.domConfig=new t,m||(m={}),m.writer||(m.writer=new s),this.options=m,this.stringify=new u(m)}end(m){var d;return d={},m?l(m)&&(d=m,m=this.options.writer):m=this.options.writer,m.document(this,m.filterOptions(d))}toString(m){return this.options.writer.document(this,this.options.writer.filterOptions(m))}createElement(m){throw new Error("This DOM method is not implemented."+this.debugInfo())}createDocumentFragment(){throw new Error("This DOM method is not implemented."+this.debugInfo())}createTextNode(m){throw new Error("This DOM method is not implemented."+this.debugInfo())}createComment(m){throw new Error("This DOM method is not implemented."+this.debugInfo())}createCDATASection(m){throw new Error("This DOM method is not implemented."+this.debugInfo())}createProcessingInstruction(m,d){throw new Error("This DOM method is not implemented."+this.debugInfo())}createAttribute(m){throw new Error("This DOM method is not implemented."+this.debugInfo())}createEntityReference(m){throw new Error("This DOM method is not implemented."+this.debugInfo())}getElementsByTagName(m){throw new Error("This DOM method is not implemented."+this.debugInfo())}importNode(m,d){throw new Error("This DOM method is not implemented."+this.debugInfo())}createElementNS(m,d){throw new Error("This DOM method is not implemented."+this.debugInfo())}createAttributeNS(m,d){throw new Error("This DOM method is not implemented."+this.debugInfo())}getElementsByTagNameNS(m,d){throw new Error("This DOM method is not implemented."+this.debugInfo())}getElementById(m){throw new Error("This DOM method is not implemented."+this.debugInfo())}adoptNode(m){throw new Error("This DOM method is not implemented."+this.debugInfo())}normalizeDocument(){throw new Error("This DOM method is not implemented."+this.debugInfo())}renameNode(m,d,y){throw new Error("This DOM method is not implemented."+this.debugInfo())}getElementsByClassName(m){throw new Error("This DOM method is not implemented."+this.debugInfo())}createEvent(m){throw new Error("This DOM method is not implemented."+this.debugInfo())}createRange(){throw new Error("This DOM method is not implemented."+this.debugInfo())}createNodeIterator(m,d,y){throw new Error("This DOM method is not implemented."+this.debugInfo())}createTreeWalker(m,d,y){throw new Error("This DOM method is not implemented."+this.debugInfo())}}return Object.defineProperty(c.prototype,"implementation",{value:new r}),Object.defineProperty(c.prototype,"doctype",{get:function(){var p,m,d,y;for(y=this.children,m=0,d=y.length;m<d;m++)if(p=y[m],p.type===e.DocType)return p;return null}}),Object.defineProperty(c.prototype,"documentElement",{get:function(){return this.rootObject||null}}),Object.defineProperty(c.prototype,"inputEncoding",{get:function(){return null}}),Object.defineProperty(c.prototype,"strictErrorChecking",{get:function(){return!1}}),Object.defineProperty(c.prototype,"xmlEncoding",{get:function(){return this.children.length!==0&&this.children[0].type===e.Declaration?this.children[0].encoding:null}}),Object.defineProperty(c.prototype,"xmlStandalone",{get:function(){return this.children.length!==0&&this.children[0].type===e.Declaration?this.children[0].standalone==="yes":!1}}),Object.defineProperty(c.prototype,"xmlVersion",{get:function(){return this.children.length!==0&&this.children[0].type===e.Declaration?this.children[0].version:"1.0"}}),Object.defineProperty(c.prototype,"URL",{get:function(){return this.documentURI}}),Object.defineProperty(c.prototype,"origin",{get:function(){return null}}),Object.defineProperty(c.prototype,"compatMode",{get:function(){return null}}),Object.defineProperty(c.prototype,"characterSet",{get:function(){return null}}),Object.defineProperty(c.prototype,"contentType",{get:function(){return null}}),c}).call(this)}).call(xn)});var _n=M((Rn,qn)=>{(function(){var e,t,r,i,n,s,u,l,c,p,m,d,y,b,C,N,T,B,P,f,h,w,o,D={}.hasOwnProperty;({isObject:w,isFunction:h,isPlainObject:o,getValue:f}=Y()),e=R(),d=jt(),b=rt(),i=nt(),n=it(),N=ht(),P=ft(),C=dt(),p=ut(),m=ct(),s=st(),l=ot(),u=at(),c=lt(),r=qt(),B=kt(),T=pt(),t=Oe(),qn.exports=y=class{constructor(a,g,E){var v;this.name="?xml",this.type=e.Document,a||(a={}),v={},a.writer?o(a.writer)&&(v=a.writer,a.writer=new T):a.writer=new T,this.options=a,this.writer=a.writer,this.writerOptions=this.writer.filterOptions(v),this.stringify=new B(a),this.onDataCallback=g||function(){},this.onEndCallback=E||function(){},this.currentNode=null,this.currentLevel=-1,this.openTags={},this.documentStarted=!1,this.documentCompleted=!1,this.root=null}createChildNode(a){var g,E,v,O,I,q,L,S;switch(a.type){case e.CData:this.cdata(a.value);break;case e.Comment:this.comment(a.value);break;case e.Element:v={},L=a.attribs;for(E in L)D.call(L,E)&&(g=L[E],v[E]=g.value);this.node(a.name,v);break;case e.Dummy:this.dummy();break;case e.Raw:this.raw(a.value);break;case e.Text:this.text(a.value);break;case e.ProcessingInstruction:this.instruction(a.target,a.value);break;default:throw new Error("This XML node type is not supported in a JS object: "+a.constructor.name)}for(S=a.children,I=0,q=S.length;I<q;I++)O=S[I],this.createChildNode(O),O.type===e.Element&&this.up();return this}dummy(){return this}node(a,g,E){if(a==null)throw new Error("Missing node name.");if(this.root&&this.currentLevel===-1)throw new Error("Document can only have one root node. "+this.debugInfo(a));return this.openCurrent(),a=f(a),g==null&&(g={}),g=f(g),w(g)||([E,g]=[g,E]),this.currentNode=new b(this,a,g),this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,E!=null&&this.text(E),this}element(a,g,E){var v,O,I,q,L,S;if(this.currentNode&&this.currentNode.type===e.DocType)this.dtdElement(...arguments);else if(Array.isArray(a)||w(a)||h(a))for(q=this.options.noValidation,this.options.noValidation=!0,S=new d(this.options).element("TEMP_ROOT"),S.element(a),this.options.noValidation=q,L=S.children,O=0,I=L.length;O<I;O++)v=L[O],this.createChildNode(v),v.type===e.Element&&this.up();else this.node(a,g,E);return this}attribute(a,g){var E,v;if(!this.currentNode||this.currentNode.children)throw new Error("att() can only be used immediately after an ele() call in callback mode. "+this.debugInfo(a));if(a!=null&&(a=f(a)),w(a))for(E in a)D.call(a,E)&&(v=a[E],this.attribute(E,v));else h(g)&&(g=g.apply()),this.options.keepNullAttributes&&g==null?this.currentNode.attribs[a]=new r(this,a,""):g!=null&&(this.currentNode.attribs[a]=new r(this,a,g));return this}text(a){var g;return this.openCurrent(),g=new P(this,a),this.onData(this.writer.text(g,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this}cdata(a){var g;return this.openCurrent(),g=new i(this,a),this.onData(this.writer.cdata(g,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this}comment(a){var g;return this.openCurrent(),g=new n(this,a),this.onData(this.writer.comment(g,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this}raw(a){var g;return this.openCurrent(),g=new N(this,a),this.onData(this.writer.raw(g,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this}instruction(a,g){var E,v,O,I,q;if(this.openCurrent(),a!=null&&(a=f(a)),g!=null&&(g=f(g)),Array.isArray(a))for(E=0,I=a.length;E<I;E++)v=a[E],this.instruction(v);else if(w(a))for(v in a)D.call(a,v)&&(O=a[v],this.instruction(v,O));else h(g)&&(g=g.apply()),q=new C(this,a,g),this.onData(this.writer.processingInstruction(q,this.writerOptions,this.currentLevel+1),this.currentLevel+1);return this}declaration(a,g,E){var v;if(this.openCurrent(),this.documentStarted)throw new Error("declaration() must be the first node.");return v=new p(this,a,g,E),this.onData(this.writer.declaration(v,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this}doctype(a,g,E){if(this.openCurrent(),a==null)throw new Error("Missing root node name.");if(this.root)throw new Error("dtd() must come before the root node.");return this.currentNode=new m(this,g,E),this.currentNode.rootNodeName=a,this.currentNode.children=!1,this.currentLevel++,this.openTags[this.currentLevel]=this.currentNode,this}dtdElement(a,g){var E;return this.openCurrent(),E=new u(this,a,g),this.onData(this.writer.dtdElement(E,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this}attList(a,g,E,v,O){var I;return this.openCurrent(),I=new s(this,a,g,E,v,O),this.onData(this.writer.dtdAttList(I,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this}entity(a,g){var E;return this.openCurrent(),E=new l(this,!1,a,g),this.onData(this.writer.dtdEntity(E,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this}pEntity(a,g){var E;return this.openCurrent(),E=new l(this,!0,a,g),this.onData(this.writer.dtdEntity(E,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this}notation(a,g){var E;return this.openCurrent(),E=new c(this,a,g),this.onData(this.writer.dtdNotation(E,this.writerOptions,this.currentLevel+1),this.currentLevel+1),this}up(){if(this.currentLevel<0)throw new Error("The document node has no parent.");return this.currentNode?(this.currentNode.children?this.closeNode(this.currentNode):this.openNode(this.currentNode),this.currentNode=null):this.closeNode(this.openTags[this.currentLevel]),delete this.openTags[this.currentLevel],this.currentLevel--,this}end(){for(;this.currentLevel>=0;)this.up();return this.onEnd()}openCurrent(){if(this.currentNode)return this.currentNode.children=!0,this.openNode(this.currentNode)}openNode(a){var g,E,v,O;if(!a.isOpen){if(!this.root&&this.currentLevel===0&&a.type===e.Element&&(this.root=a),E="",a.type===e.Element){this.writerOptions.state=t.OpenTag,E=this.writer.indent(a,this.writerOptions,this.currentLevel)+"<"+a.name,O=a.attribs;for(v in O)D.call(O,v)&&(g=O[v],E+=this.writer.attribute(g,this.writerOptions,this.currentLevel));E+=(a.children?">":"/>")+this.writer.endline(a,this.writerOptions,this.currentLevel),this.writerOptions.state=t.InsideTag}else this.writerOptions.state=t.OpenTag,E=this.writer.indent(a,this.writerOptions,this.currentLevel)+"<!DOCTYPE "+a.rootNodeName,a.pubID&&a.sysID?E+=' PUBLIC "'+a.pubID+'" "'+a.sysID+'"':a.sysID&&(E+=' SYSTEM "'+a.sysID+'"'),a.children?(E+=" [",this.writerOptions.state=t.InsideTag):(this.writerOptions.state=t.CloseTag,E+=">"),E+=this.writer.endline(a,this.writerOptions,this.currentLevel);return this.onData(E,this.currentLevel),a.isOpen=!0}}closeNode(a){var g;if(!a.isClosed)return g="",this.writerOptions.state=t.CloseTag,a.type===e.Element?g=this.writer.indent(a,this.writerOptions,this.currentLevel)+"</"+a.name+">"+this.writer.endline(a,this.writerOptions,this.currentLevel):g=this.writer.indent(a,this.writerOptions,this.currentLevel)+"]>"+this.writer.endline(a,this.writerOptions,this.currentLevel),this.writerOptions.state=t.None,this.onData(g,this.currentLevel),a.isClosed=!0}onData(a,g){return this.documentStarted=!0,this.onDataCallback(a,g+1)}onEnd(){return this.documentCompleted=!0,this.onEndCallback()}debugInfo(a){return a==null?"":"node: <"+a+">"}ele(){return this.element(...arguments)}nod(a,g,E){return this.node(a,g,E)}txt(a){return this.text(a)}dat(a){return this.cdata(a)}com(a){return this.comment(a)}ins(a,g){return this.instruction(a,g)}dec(a,g,E){return this.declaration(a,g,E)}dtd(a,g,E){return this.doctype(a,g,E)}e(a,g,E){return this.element(a,g,E)}n(a,g,E){return this.node(a,g,E)}t(a){return this.text(a)}d(a){return this.cdata(a)}c(a){return this.comment(a)}r(a){return this.raw(a)}i(a,g){return this.instruction(a,g)}att(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList(...arguments):this.attribute(...arguments)}a(){return this.currentNode&&this.currentNode.type===e.DocType?this.attList(...arguments):this.attribute(...arguments)}ent(a,g){return this.entity(a,g)}pent(a,g){return this.pEntity(a,g)}not(a,g){return this.notation(a,g)}}}).call(Rn)});var jn=M((kn,Un)=>{(function(){var e,t,r,i,n={}.hasOwnProperty;e=R(),i=Ut(),t=Oe(),Un.exports=r=class extends i{constructor(u,l){super(l),this.stream=u}endline(u,l,c){return u.isLastRootNode&&l.state===t.CloseTag?"":super.endline(u,l,c)}document(u,l){var c,p,m,d,y,b,C,N,T;for(C=u.children,p=m=0,y=C.length;m<y;p=++m)c=C[p],c.isLastRootNode=p===u.children.length-1;for(l=this.filterOptions(l),N=u.children,T=[],d=0,b=N.length;d<b;d++)c=N[d],T.push(this.writeChildNode(c,l,0));return T}cdata(u,l,c){return this.stream.write(super.cdata(u,l,c))}comment(u,l,c){return this.stream.write(super.comment(u,l,c))}declaration(u,l,c){return this.stream.write(super.declaration(u,l,c))}docType(u,l,c){var p,m,d,y;if(c||(c=0),this.openNode(u,l,c),l.state=t.OpenTag,this.stream.write(this.indent(u,l,c)),this.stream.write("<!DOCTYPE "+u.root().name),u.pubID&&u.sysID?this.stream.write(' PUBLIC "'+u.pubID+'" "'+u.sysID+'"'):u.sysID&&this.stream.write(' SYSTEM "'+u.sysID+'"'),u.children.length>0){for(this.stream.write(" ["),this.stream.write(this.endline(u,l,c)),l.state=t.InsideTag,y=u.children,m=0,d=y.length;m<d;m++)p=y[m],this.writeChildNode(p,l,c+1);l.state=t.CloseTag,this.stream.write("]")}return l.state=t.CloseTag,this.stream.write(l.spaceBeforeSlash+">"),this.stream.write(this.endline(u,l,c)),l.state=t.None,this.closeNode(u,l,c)}element(u,l,c){var p,m,d,y,b,C,N,T,B,P,f,h,w,o,D,A;if(c||(c=0),this.openNode(u,l,c),l.state=t.OpenTag,f=this.indent(u,l,c)+"<"+u.name,l.pretty&&l.width>0){N=f.length,w=u.attribs;for(B in w)n.call(w,B)&&(p=w[B],h=this.attribute(p,l,c),m=h.length,N+m>l.width?(A=this.indent(u,l,c+1)+h,f+=this.endline(u,l,c)+A,N=A.length):(A=" "+h,f+=A,N+=A.length))}else{o=u.attribs;for(B in o)n.call(o,B)&&(p=o[B],f+=this.attribute(p,l,c))}if(this.stream.write(f),y=u.children.length,b=y===0?null:u.children[0],y===0||u.children.every(function(a){return(a.type===e.Text||a.type===e.Raw||a.type===e.CData)&&a.value===""}))l.allowEmpty?(this.stream.write(">"),l.state=t.CloseTag,this.stream.write("</"+u.name+">")):(l.state=t.CloseTag,this.stream.write(l.spaceBeforeSlash+"/>"));else if(l.pretty&&y===1&&(b.type===e.Text||b.type===e.Raw||b.type===e.CData)&&b.value!=null)this.stream.write(">"),l.state=t.InsideTag,l.suppressPrettyCount++,P=!0,this.writeChildNode(b,l,c+1),l.suppressPrettyCount--,P=!1,l.state=t.CloseTag,this.stream.write("</"+u.name+">");else{for(this.stream.write(">"+this.endline(u,l,c)),l.state=t.InsideTag,D=u.children,C=0,T=D.length;C<T;C++)d=D[C],this.writeChildNode(d,l,c+1);l.state=t.CloseTag,this.stream.write(this.indent(u,l,c)+"</"+u.name+">")}return this.stream.write(this.endline(u,l,c)),l.state=t.None,this.closeNode(u,l,c)}processingInstruction(u,l,c){return this.stream.write(super.processingInstruction(u,l,c))}raw(u,l,c){return this.stream.write(super.raw(u,l,c))}text(u,l,c){return this.stream.write(super.text(u,l,c))}dtdAttList(u,l,c){return this.stream.write(super.dtdAttList(u,l,c))}dtdElement(u,l,c){return this.stream.write(super.dtdElement(u,l,c))}dtdEntity(u,l,c){return this.stream.write(super.dtdEntity(u,l,c))}dtdNotation(u,l,c){return this.stream.write(super.dtdNotation(u,l,c))}}}).call(kn)});var Vn=M((Xn,se)=>{(function(){var e,t,r,i,n,s,u,l,c;({assign:l,isFunction:c}=Y()),r=Rt(),i=jt(),n=_n(),u=pt(),s=jn(),e=R(),t=Oe(),se.exports.create=function(p,m,d,y){var b,C;if(p==null)throw new Error("Root element needs a name.");return y=l({},m,d,y),b=new i(y),C=b.element(p),y.headless||(b.declaration(y),(y.pubID!=null||y.sysID!=null)&&b.dtd(y)),C},se.exports.begin=function(p,m,d){return c(p)&&([m,d]=[p,m],p={}),m?new n(p,m,d):new i(p)},se.exports.stringWriter=function(p){return new u(p)},se.exports.streamWriter=function(p,m){return new s(p,m)},se.exports.implementation=new r,se.exports.nodeType=e,se.exports.writerState=t}).call(Xn)});var $n=M(Ie=>{"use strict";var Gn=Ie&&Ie.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ie,"__esModule",{value:!0});Ie.build=hu;var Hn=Gn(vr()),au=Gn(Vn());function lu(e){function t(r){return r<10?"0"+r:r}return e.getUTCFullYear()+"-"+t(e.getUTCMonth()+1)+"-"+t(e.getUTCDate())+"T"+t(e.getUTCHours())+":"+t(e.getUTCMinutes())+":"+t(e.getUTCSeconds())+"Z"}var cu=Object.prototype.toString;function zn(e){let t=cu.call(e).match(/\[object (.*)\]/);return t&&t[1]}function hu(e,t){let r={version:"1.0",encoding:"UTF-8"},i={pubid:"-//Apple//DTD PLIST 1.0//EN",sysid:"http://www.apple.com/DTDs/PropertyList-1.0.dtd"},n=au.default.create("plist");return n.dec(r.version,r.encoding,r.standalone),n.dtd(i.pubid,i.sysid),n.att("version","1.0"),Xt(e,n),t||(t={}),t.pretty=t.pretty!==!1,n.end(t)}function Xt(e,t){let r,i,n,s=zn(e);if(s!=="Undefined")if(Array.isArray(e))for(t=t.ele("array"),i=0;i<e.length;i++)Xt(e[i],t);else if(Buffer.isBuffer(e))t.ele("data").raw(e.toString("base64"));else if(s==="Object"){t=t.ele("dict");for(n in e)Object.prototype.hasOwnProperty.call(e,n)&&e[n]!==void 0&&(t.ele("key").txt(n),Xt(e[n],t))}else s==="Number"?(r=e%1===0?"integer":"real",t.ele(r).txt(e.toString())):s==="Date"?t.ele("date").txt(lu(new Date(e))):s==="Boolean"?t.ele(e?"true":"false"):s==="String"?t.ele("string").txt(e):s==="ArrayBuffer"?t.ele("data").raw(Hn.default.fromByteArray(e)):e&&e.buffer&&zn(e.buffer)==="ArrayBuffer"&&t.ele("data").raw(Hn.default.fromByteArray(new Uint8Array(e.buffer)))}});var Le=M(me=>{"use strict";function fu(e,t,r){if(r===void 0&&(r=Array.prototype),e&&typeof r.find=="function")return r.find.call(e,t);for(var i=0;i<e.length;i++)if(Object.prototype.hasOwnProperty.call(e,i)){var n=e[i];if(t.call(void 0,n,i,e))return n}}function Vt(e,t){return t===void 0&&(t=Object),t&&typeof t.freeze=="function"?t.freeze(e):e}function du(e,t){if(e===null||typeof e!="object")throw new TypeError("target is not an object");for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r]);return e}var Wn=Vt({HTML:"text/html",isHTML:function(e){return e===Wn.HTML},XML_APPLICATION:"application/xml",XML_TEXT:"text/xml",XML_XHTML_APPLICATION:"application/xhtml+xml",XML_SVG_IMAGE:"image/svg+xml"}),Yn=Vt({HTML:"http://www.w3.org/1999/xhtml",isHTML:function(e){return e===Yn.HTML},SVG:"http://www.w3.org/2000/svg",XML:"http://www.w3.org/XML/1998/namespace",XMLNS:"http://www.w3.org/2000/xmlns/"});me.assign=du;me.find=fu;me.freeze=Vt;me.MIME_TYPE=Wn;me.NAMESPACE=Yn});var tr=M(te=>{var ni=Le(),K=ni.find,Me=ni.NAMESPACE;function pu(e){return e!==""}function mu(e){return e?e.split(/[\t\n\f\r ]+/).filter(pu):[]}function gu(e,t){return e.hasOwnProperty(t)||(e[t]=!0),e}function Kn(e){if(!e)return[];var t=mu(e);return Object.keys(t.reduce(gu,{}))}function Du(e){return function(t){return e&&e.indexOf(t)!==-1}}function Fe(e,t){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])}function V(e,t){var r=e.prototype;if(!(r instanceof t)){let n=function(){};var i=n;n.prototype=t.prototype,n=new n,Fe(r,n),e.prototype=r=n}r.constructor!=e&&(typeof e!="function"&&console.error("unknown Class:"+e),r.constructor=e)}var H={},$=H.ELEMENT_NODE=1,De=H.ATTRIBUTE_NODE=2,gt=H.TEXT_NODE=3,ii=H.CDATA_SECTION_NODE=4,ui=H.ENTITY_REFERENCE_NODE=5,yu=H.ENTITY_NODE=6,Ht=H.PROCESSING_INSTRUCTION_NODE=7,zt=H.COMMENT_NODE=8,si=H.DOCUMENT_NODE=9,oi=H.DOCUMENT_TYPE_NODE=10,J=H.DOCUMENT_FRAGMENT_NODE=11,wu=H.NOTATION_NODE=12,j={},U={},Qs=j.INDEX_SIZE_ERR=(U[1]="Index size error",1),eo=j.DOMSTRING_SIZE_ERR=(U[2]="DOMString size error",2),X=j.HIERARCHY_REQUEST_ERR=(U[3]="Hierarchy request error",3),to=j.WRONG_DOCUMENT_ERR=(U[4]="Wrong document",4),Eu=j.INVALID_CHARACTER_ERR=(U[5]="Invalid character",5),ro=j.NO_DATA_ALLOWED_ERR=(U[6]="No data allowed",6),no=j.NO_MODIFICATION_ALLOWED_ERR=(U[7]="No modification allowed",7),ai=j.NOT_FOUND_ERR=(U[8]="Not found",8),io=j.NOT_SUPPORTED_ERR=(U[9]="Not supported",9),Zn=j.INUSE_ATTRIBUTE_ERR=(U[10]="Attribute in use",10),ge=j.INVALID_STATE_ERR=(U[11]="Invalid state",11),uo=j.SYNTAX_ERR=(U[12]="Syntax error",12),so=j.INVALID_MODIFICATION_ERR=(U[13]="Invalid modification",13),oo=j.NAMESPACE_ERR=(U[14]="Invalid namespace",14),ao=j.INVALID_ACCESS_ERR=(U[15]="Invalid access",15);function x(e,t){if(t instanceof Error)var r=t;else r=this,Error.call(this,U[e]),this.message=U[e],Error.captureStackTrace&&Error.captureStackTrace(this,x);return r.code=e,t&&(this.message=this.message+": "+t),r}x.prototype=Error.prototype;Fe(j,x);function Q(){}Q.prototype={length:0,item:function(e){return e>=0&&e<this.length?this[e]:null},toString:function(e,t,r){for(var i=!!r&&!!r.requireWellFormed,n=[],s=0;s<this.length;s++)er(this[s],n,e,t,null,i);return n.join("")},filter:function(e){return Array.prototype.filter.call(this,e)},indexOf:function(e){return Array.prototype.indexOf.call(this,e)}};function ye(e,t){this._node=e,this._refresh=t,Gt(this)}function Gt(e){var t=e._node._inc||e._node.ownerDocument._inc;if(e._inc!==t){var r=e._refresh(e._node);if(Ei(e,"length",r.length),!e.$$length||r.length<e.$$length)for(var i=r.length;i in e;i++)Object.prototype.hasOwnProperty.call(e,i)&&delete e[i];Fe(r,e),e._inc=t}}ye.prototype.item=function(e){return Gt(this),this[e]||null};V(ye,Q);function Dt(){}function li(e,t){for(var r=e.length;r--;)if(e[r]===t)return r}function Jn(e,t,r,i){if(i?t[li(t,i)]=r:t[t.length++]=r,e){r.ownerElement=e;var n=e.ownerDocument;n&&(i&&fi(n,e,i),Au(n,e,r))}}function Qn(e,t,r){var i=li(t,r);if(i>=0){for(var n=t.length-1;i<n;)t[i]=t[++i];if(t.length=n,e){var s=e.ownerDocument;s&&(fi(s,e,r),r.ownerElement=null)}}else throw new x(ai,new Error(e.tagName+"@"+r))}Dt.prototype={length:0,item:Q.prototype.item,getNamedItem:function(e){for(var t=this.length;t--;){var r=this[t];if(r.nodeName==e)return r}},setNamedItem:function(e){var t=e.ownerElement;if(t&&t!=this._ownerElement)throw new x(Zn);var r=this.getNamedItem(e.nodeName);return Jn(this._ownerElement,this,e,r),r},setNamedItemNS:function(e){var t=e.ownerElement,r;if(t&&t!=this._ownerElement)throw new x(Zn);return r=this.getNamedItemNS(e.namespaceURI,e.localName),Jn(this._ownerElement,this,e,r),r},removeNamedItem:function(e){var t=this.getNamedItem(e);return Qn(this._ownerElement,this,t),t},removeNamedItemNS:function(e,t){var r=this.getNamedItemNS(e,t);return Qn(this._ownerElement,this,r),r},getNamedItemNS:function(e,t){for(var r=this.length;r--;){var i=this[r];if(i.localName==t&&i.namespaceURI==e)return i}return null}};function ci(){}ci.prototype={hasFeature:function(e,t){return!0},createDocument:function(e,t,r){var i=new xe;if(i.implementation=this,i.childNodes=new Q,i.doctype=r||null,r&&i.appendChild(r),t){var n=i.createElementNS(e,t);i.appendChild(n)}return i},createDocumentType:function(e,t,r){var i=new At;return i.name=e,i.nodeName=e,i.publicId=t||"",i.systemId=r||"",i}};function F(){}F.prototype={firstChild:null,lastChild:null,previousSibling:null,nextSibling:null,attributes:null,parentNode:null,childNodes:null,ownerDocument:null,nodeValue:null,namespaceURI:null,prefix:null,localName:null,insertBefore:function(e,t){return wt(this,e,t)},replaceChild:function(e,t){wt(this,e,t,pi),t&&this.removeChild(t)},removeChild:function(e){return di(this,e)},appendChild:function(e){return this.insertBefore(e,null)},hasChildNodes:function(){return this.firstChild!=null},cloneNode:function(e){return wi(this.ownerDocument||this,this,e)},normalize:function(){k(this,null,{enter:function(e){for(var t=e.firstChild;t;){var r=t.nextSibling;r!==null&&r.nodeType===gt&&t.nodeType===gt?(e.removeChild(r),t.appendData(r.data)):t=r}return!0}})},isSupported:function(e,t){return this.ownerDocument.implementation.hasFeature(e,t)},hasAttributes:function(){return this.attributes.length>0},lookupPrefix:function(e){for(var t=this;t;){var r=t._nsMap;if(r){for(var i in r)if(Object.prototype.hasOwnProperty.call(r,i)&&r[i]===e)return i}t=t.nodeType==De?t.ownerDocument:t.parentNode}return null},lookupNamespaceURI:function(e){for(var t=this;t;){var r=t._nsMap;if(r&&Object.prototype.hasOwnProperty.call(r,e))return r[e];t=t.nodeType==De?t.ownerDocument:t.parentNode}return null},isDefaultNamespace:function(e){var t=this.lookupPrefix(e);return t==null}};function hi(e){return e=="<"&&"&lt;"||e==">"&&"&gt;"||e=="&"&&"&amp;"||e=='"'&&"&quot;"||"&#"+e.charCodeAt()+";"}Fe(H,F);Fe(H,F.prototype);function yt(e,t){return k(e,null,{enter:function(r){return t(r)?k.STOP:!0}})===k.STOP}function k(e,t,r){for(var i=[{node:e,context:t,phase:k.ENTER}];i.length>0;){var n=i.pop();if(n.phase===k.ENTER){var s=r.enter(n.node,n.context);if(s===k.STOP)return k.STOP;if(i.push({node:n.node,context:s,phase:k.EXIT}),s==null)continue;for(var u=n.node.lastChild;u;)i.push({node:u,context:s,phase:k.ENTER}),u=u.previousSibling}else r.exit&&r.exit(n.node,n.context)}}k.STOP=Symbol("walkDOM.STOP");k.ENTER=0;k.EXIT=1;function xe(){this.ownerDocument=this}function Au(e,t,r){e&&e._inc++;var i=r.namespaceURI;i===Me.XMLNS&&(t._nsMap[r.prefix?r.localName:""]=r.value)}function fi(e,t,r,i){e&&e._inc++;var n=r.namespaceURI;n===Me.XMLNS&&delete t._nsMap[r.prefix?r.localName:""]}function $t(e,t,r){if(e&&e._inc){e._inc++;var i=t.childNodes;if(r)i[i.length++]=r;else{for(var n=t.firstChild,s=0;n;)i[s++]=n,n=n.nextSibling;i.length=s,delete i[i.length]}}}function di(e,t){var r=t.previousSibling,i=t.nextSibling;return r?r.nextSibling=i:e.firstChild=i,i?i.previousSibling=r:e.lastChild=r,t.parentNode=null,t.previousSibling=null,t.nextSibling=null,$t(e.ownerDocument,e),t}function bu(e){return e&&(e.nodeType===F.DOCUMENT_NODE||e.nodeType===F.DOCUMENT_FRAGMENT_NODE||e.nodeType===F.ELEMENT_NODE)}function Cu(e){return e&&(Z(e)||Wt(e)||ee(e)||e.nodeType===F.DOCUMENT_FRAGMENT_NODE||e.nodeType===F.COMMENT_NODE||e.nodeType===F.PROCESSING_INSTRUCTION_NODE)}function ee(e){return e&&e.nodeType===F.DOCUMENT_TYPE_NODE}function Z(e){return e&&e.nodeType===F.ELEMENT_NODE}function Wt(e){return e&&e.nodeType===F.TEXT_NODE}function ei(e,t){var r=e.childNodes||[];if(K(r,Z)||ee(t))return!1;var i=K(r,ee);return!(t&&i&&r.indexOf(i)>r.indexOf(t))}function ti(e,t){var r=e.childNodes||[];function i(s){return Z(s)&&s!==t}if(K(r,i))return!1;var n=K(r,ee);return!(t&&n&&r.indexOf(n)>r.indexOf(t))}function vu(e,t,r){if(!bu(e))throw new x(X,"Unexpected parent node type "+e.nodeType);if(r&&r.parentNode!==e)throw new x(ai,"child not in parent");if(!Cu(t)||ee(t)&&e.nodeType!==F.DOCUMENT_NODE)throw new x(X,"Unexpected node type "+t.nodeType+" for parent node type "+e.nodeType)}function Tu(e,t,r){var i=e.childNodes||[],n=t.childNodes||[];if(t.nodeType===F.DOCUMENT_FRAGMENT_NODE){var s=n.filter(Z);if(s.length>1||K(n,Wt))throw new x(X,"More than one element or text in fragment");if(s.length===1&&!ei(e,r))throw new x(X,"Element in fragment can not be inserted before doctype")}if(Z(t)&&!ei(e,r))throw new x(X,"Only one element can be added and only after doctype");if(ee(t)){if(K(i,ee))throw new x(X,"Only one doctype is allowed");var u=K(i,Z);if(r&&i.indexOf(u)<i.indexOf(r))throw new x(X,"Doctype can only be inserted before an element");if(!r&&u)throw new x(X,"Doctype can not be appended since element is present")}}function pi(e,t,r){var i=e.childNodes||[],n=t.childNodes||[];if(t.nodeType===F.DOCUMENT_FRAGMENT_NODE){var s=n.filter(Z);if(s.length>1||K(n,Wt))throw new x(X,"More than one element or text in fragment");if(s.length===1&&!ti(e,r))throw new x(X,"Element in fragment can not be inserted before doctype")}if(Z(t)&&!ti(e,r))throw new x(X,"Only one element can be added and only after doctype");if(ee(t)){let c=function(p){return ee(p)&&p!==r};var l=c;if(K(i,c))throw new x(X,"Only one doctype is allowed");var u=K(i,Z);if(r&&i.indexOf(u)<i.indexOf(r))throw new x(X,"Doctype can only be inserted before an element")}}function wt(e,t,r,i){vu(e,t,r),e.nodeType===F.DOCUMENT_NODE&&(i||Tu)(e,t,r);var n=t.parentNode;if(n&&n.removeChild(t),t.nodeType===J){var s=t.firstChild;if(s==null)return t;var u=t.lastChild}else s=u=t;var l=r?r.previousSibling:e.lastChild;s.previousSibling=l,u.nextSibling=r,l?l.nextSibling=s:e.firstChild=s,r==null?e.lastChild=u:r.previousSibling=u;do{s.parentNode=e;var c=e.ownerDocument||e;Be(s,c)}while(s!==u&&(s=s.nextSibling));return $t(e.ownerDocument||e,e),t.nodeType==J&&(t.firstChild=t.lastChild=null),t}function Be(e,t){if(e.ownerDocument!==t){if(e.ownerDocument=t,e.nodeType===$&&e.attributes)for(var r=0;r<e.attributes.length;r++){var i=e.attributes.item(r);i&&(i.ownerDocument=t)}for(var n=e.firstChild;n;)Be(n,t),n=n.nextSibling}}function Nu(e,t){t.parentNode&&t.parentNode.removeChild(t),t.parentNode=e,t.previousSibling=e.lastChild,t.nextSibling=null,t.previousSibling?t.previousSibling.nextSibling=t:e.firstChild=t,e.lastChild=t,$t(e.ownerDocument,e,t);var r=e.ownerDocument||e;return Be(t,r),t}xe.prototype={nodeName:"#document",nodeType:si,doctype:null,documentElement:null,_inc:1,insertBefore:function(e,t){if(e.nodeType==J){for(var r=e.firstChild;r;){var i=r.nextSibling;this.insertBefore(r,t),r=i}return e}return wt(this,e,t),Be(e,this),this.documentElement===null&&e.nodeType===$&&(this.documentElement=e),e},removeChild:function(e){return this.documentElement==e&&(this.documentElement=null),di(this,e)},replaceChild:function(e,t){wt(this,e,t,pi),Be(e,this),t&&this.removeChild(t),Z(e)&&(this.documentElement=e)},importNode:function(e,t){return Su(this,e,t)},getElementById:function(e){var t=null;return yt(this.documentElement,function(r){if(r.nodeType==$&&r.getAttribute("id")==e)return t=r,!0}),t},getElementsByClassName:function(e){var t=Kn(e);return new ye(this,function(r){var i=[];return t.length>0&&yt(r.documentElement,function(n){if(n!==r&&n.nodeType===$){var s=n.getAttribute("class");if(s){var u=e===s;if(!u){var l=Kn(s);u=t.every(Du(l))}u&&i.push(n)}}}),i})},createElement:function(e){var t=new he;t.ownerDocument=this,t.nodeName=e,t.tagName=e,t.localName=e,t.childNodes=new Q;var r=t.attributes=new Dt;return r._ownerElement=t,t},createDocumentFragment:function(){var e=new bt;return e.ownerDocument=this,e.childNodes=new Q,e},createTextNode:function(e){var t=new Yt;return t.ownerDocument=this,t.appendData(e),t},createComment:function(e){var t=new Kt;return t.ownerDocument=this,t.appendData(e),t},createCDATASection:function(e){if(e.indexOf("]]>")!==-1)throw new x(Eu,'data contains "]]>"');var t=new Zt;return t.ownerDocument=this,t.appendData(e),t},createProcessingInstruction:function(e,t){var r=new Qt;return r.ownerDocument=this,r.tagName=r.nodeName=r.target=e,r.nodeValue=r.data=t,r},createAttribute:function(e){var t=new Et;return t.ownerDocument=this,t.name=e,t.nodeName=e,t.localName=e,t.specified=!0,t},createEntityReference:function(e){var t=new Jt;return t.ownerDocument=this,t.nodeName=e,t},createElementNS:function(e,t){var r=new he,i=t.split(":"),n=r.attributes=new Dt;return r.childNodes=new Q,r.ownerDocument=this,r.nodeName=t,r.tagName=t,r.namespaceURI=e,i.length==2?(r.prefix=i[0],r.localName=i[1]):r.localName=t,n._ownerElement=r,r},createAttributeNS:function(e,t){var r=new Et,i=t.split(":");return r.ownerDocument=this,r.nodeName=t,r.name=t,r.namespaceURI=e,r.specified=!0,i.length==2?(r.prefix=i[0],r.localName=i[1]):r.localName=t,r}};V(xe,F);function he(){this._nsMap={}}he.prototype={nodeType:$,hasAttribute:function(e){return this.getAttributeNode(e)!=null},getAttribute:function(e){var t=this.getAttributeNode(e);return t&&t.value||""},getAttributeNode:function(e){return this.attributes.getNamedItem(e)},setAttribute:function(e,t){var r=this.ownerDocument.createAttribute(e);r.value=r.nodeValue=""+t,this.setAttributeNode(r)},removeAttribute:function(e){var t=this.getAttributeNode(e);t&&this.removeAttributeNode(t)},appendChild:function(e){return e.nodeType===J?this.insertBefore(e,null):Nu(this,e)},setAttributeNode:function(e){return this.attributes.setNamedItem(e)},setAttributeNodeNS:function(e){return this.attributes.setNamedItemNS(e)},removeAttributeNode:function(e){return this.attributes.removeNamedItem(e.nodeName)},removeAttributeNS:function(e,t){var r=this.getAttributeNodeNS(e,t);r&&this.removeAttributeNode(r)},hasAttributeNS:function(e,t){return this.getAttributeNodeNS(e,t)!=null},getAttributeNS:function(e,t){var r=this.getAttributeNodeNS(e,t);return r&&r.value||""},setAttributeNS:function(e,t,r){var i=this.ownerDocument.createAttributeNS(e,t);i.value=i.nodeValue=""+r,this.setAttributeNode(i)},getAttributeNodeNS:function(e,t){return this.attributes.getNamedItemNS(e,t)},getElementsByTagName:function(e){return new ye(this,function(t){var r=[];return yt(t,function(i){i!==t&&i.nodeType==$&&(e==="*"||i.tagName==e)&&r.push(i)}),r})},getElementsByTagNameNS:function(e,t){return new ye(this,function(r){var i=[];return yt(r,function(n){n!==r&&n.nodeType===$&&(e==="*"||n.namespaceURI===e)&&(t==="*"||n.localName==t)&&i.push(n)}),i})}};xe.prototype.getElementsByTagName=he.prototype.getElementsByTagName;xe.prototype.getElementsByTagNameNS=he.prototype.getElementsByTagNameNS;V(he,F);function Et(){}Et.prototype.nodeType=De;V(Et,F);function Pe(){}Pe.prototype={data:"",substringData:function(e,t){return this.data.substring(e,e+t)},appendData:function(e){e=this.data+e,this.nodeValue=this.data=e,this.length=e.length},insertData:function(e,t){this.replaceData(e,0,t)},appendChild:function(e){throw new Error(U[X])},deleteData:function(e,t){this.replaceData(e,t,"")},replaceData:function(e,t,r){var i=this.data.substring(0,e),n=this.data.substring(e+t);r=i+r+n,this.nodeValue=this.data=r,this.length=r.length}};V(Pe,F);function Yt(){}Yt.prototype={nodeName:"#text",nodeType:gt,splitText:function(e){var t=this.data,r=t.substring(e);t=t.substring(0,e),this.data=this.nodeValue=t,this.length=t.length;var i=this.ownerDocument.createTextNode(r);return this.parentNode&&this.parentNode.insertBefore(i,this.nextSibling),i}};V(Yt,Pe);function Kt(){}Kt.prototype={nodeName:"#comment",nodeType:zt};V(Kt,Pe);function Zt(){}Zt.prototype={nodeName:"#cdata-section",nodeType:ii};V(Zt,Pe);function At(){}At.prototype.nodeType=oi;V(At,F);function mi(){}mi.prototype.nodeType=wu;V(mi,F);function gi(){}gi.prototype.nodeType=yu;V(gi,F);function Jt(){}Jt.prototype.nodeType=ui;V(Jt,F);function bt(){}bt.prototype.nodeName="#document-fragment";bt.prototype.nodeType=J;V(bt,F);function Qt(){}Qt.prototype.nodeType=Ht;V(Qt,F);function Di(){}Di.prototype.serializeToString=function(e,t,r,i){return yi.call(e,t,r,i)};F.prototype.toString=yi;function yi(e,t,r){var i=!!r&&!!r.requireWellFormed,n=[],s=this.nodeType==9&&this.documentElement||this,u=s.prefix,l=s.namespaceURI;if(l&&u==null){var u=s.lookupPrefix(l);if(u==null)var c=[{namespace:l,prefix:null}]}return er(this,n,e,t,c,i),n.join("")}function ri(e,t,r){var i=e.prefix||"",n=e.namespaceURI;if(!n||i==="xml"&&n===Me.XML||n===Me.XMLNS)return!1;for(var s=r.length;s--;){var u=r[s];if(u.prefix===i)return u.namespace!==n}return!0}function mt(e,t,r){e.push(" ",t,'="',r.replace(/[<>&"\t\n\r]/g,hi),'"')}function er(e,t,r,i,n,s){n||(n=[]),k(e,{ns:n,isHTML:r},{enter:function(u,l){var c=l.ns,p=l.isHTML;if(i)if(u=i(u),u){if(typeof u=="string")return t.push(u),null}else return null;switch(u.nodeType){case $:var m=u.attributes,d=m.length,y=u.tagName;p=Me.isHTML(u.namespaceURI)||p;var b=y;if(!p&&!u.prefix&&u.namespaceURI){for(var C,N=0;N<m.length;N++)if(m.item(N).name==="xmlns"){C=m.item(N).value;break}if(!C)for(var T=c.length-1;T>=0;T--){var B=c[T];if(B.prefix===""&&B.namespace===u.namespaceURI){C=B.namespace;break}}if(C!==u.namespaceURI)for(var T=c.length-1;T>=0;T--){var B=c[T];if(B.namespace===u.namespaceURI){B.prefix&&(b=B.prefix+":"+y);break}}}t.push("<",b);for(var P=c.slice(),f=0;f<d;f++){var h=m.item(f);h.prefix=="xmlns"?P.push({prefix:h.localName,namespace:h.value}):h.nodeName=="xmlns"&&P.push({prefix:"",namespace:h.value})}for(var f=0;f<d;f++){var h=m.item(f);if(ri(h,p,P)){var w=h.prefix||"",o=h.namespaceURI;mt(t,w?"xmlns:"+w:"xmlns",o),P.push({prefix:w,namespace:o})}var D=i?i(h):h;D&&(typeof D=="string"?t.push(D):mt(t,D.name,D.value))}if(y===b&&ri(u,p,P)){var A=u.prefix||"",o=u.namespaceURI;mt(t,A?"xmlns:"+A:"xmlns",o),P.push({prefix:A,namespace:o})}var a=u.firstChild;if(a||p&&!/^(?:meta|link|img|br|hr|input)$/i.test(y)){if(t.push(">"),p&&/^script$/i.test(y)){for(;a;)a.data?t.push(a.data):er(a,t,p,i,P.slice(),s),a=a.nextSibling;return t.push("</",y,">"),null}return{ns:P,isHTML:p,tag:b}}else return t.push("/>"),null;case si:case J:return{ns:c.slice(),isHTML:p,tag:null};case De:return mt(t,u.name,u.value),null;case gt:return t.push(u.data.replace(/[<&>]/g,hi)),null;case ii:if(s&&u.data.indexOf("]]>")!==-1)throw new x(ge,'The CDATASection data contains "]]>"');return t.push("<![CDATA[",u.data.replace(/]]>/g,"]]]]><![CDATA[>"),"]]>"),null;case zt:if(s&&u.data.indexOf("-->")!==-1)throw new x(ge,'The comment node data contains "-->"');return t.push("<!--",u.data,"-->"),null;case oi:if(s){if(u.publicId&&!/^("[\x20\r\na-zA-Z0-9\-()+,.\/:=?;!*#@$_%']*"|'[\x20\r\na-zA-Z0-9\-()+,.\/:=?;!*#@$_%'"]*')$/.test(u.publicId))throw new x(ge,"DocumentType publicId is not a valid PubidLiteral");if(u.systemId&&!/^("[^"]*"|'[^']*')$/.test(u.systemId))throw new x(ge,"DocumentType systemId is not a valid SystemLiteral");if(u.internalSubset&&u.internalSubset.indexOf("]>")!==-1)throw new x(ge,'DocumentType internalSubset contains "]>"')}var g=u.publicId,E=u.systemId;if(t.push("<!DOCTYPE ",u.name),g)t.push(" PUBLIC ",g),E&&E!="."&&t.push(" ",E),t.push(">");else if(E&&E!=".")t.push(" SYSTEM ",E,">");else{var v=u.internalSubset;v&&t.push(" [",v,"]"),t.push(">")}return null;case Ht:if(s&&u.data.indexOf("?>")!==-1)throw new x(ge,'The ProcessingInstruction data contains "?>"');return t.push("<?",u.target," ",u.data,"?>"),null;case ui:return t.push("&",u.nodeName,";"),null;default:return t.push("??",u.nodeName),null}},exit:function(u,l){l&&l.tag&&t.push("</",l.tag,">")}})}function Su(e,t,r){var i;return k(t,null,{enter:function(n,s){var u=n.cloneNode(!1);u.ownerDocument=e,u.parentNode=null,s===null?i=u:s.appendChild(u);var l=n.nodeType===De||r;return l?u:null}}),i}function wi(e,t,r){var i;return k(t,null,{enter:function(n,s){var u=new n.constructor;for(var l in n)if(Object.prototype.hasOwnProperty.call(n,l)){var c=n[l];typeof c!="object"&&c!=u[l]&&(u[l]=c)}n.childNodes&&(u.childNodes=new Q),u.ownerDocument=e;var p=r;switch(u.nodeType){case $:var m=n.attributes,d=u.attributes=new Dt,y=m.length;d._ownerElement=u;for(var b=0;b<y;b++)u.setAttributeNode(wi(e,m.item(b),!0));break;case De:p=!0}return s!==null?s.appendChild(u):i=u,p?u:null}}),i}function Ei(e,t,r){e[t]=r}try{Object.defineProperty&&(Object.defineProperty(ye.prototype,"length",{get:function(){return Gt(this),this.$$length}}),Object.defineProperty(F.prototype,"textContent",{get:function(){if(this.nodeType===$||this.nodeType===J){var e=[];return k(this,null,{enter:function(t){if(t.nodeType===$||t.nodeType===J)return!0;if(t.nodeType===Ht||t.nodeType===zt)return null;e.push(t.nodeValue)}}),e.join("")}return this.nodeValue},set:function(e){switch(this.nodeType){case $:case J:for(;this.firstChild;)this.removeChild(this.firstChild);(e||String(e))&&this.appendChild(this.ownerDocument.createTextNode(e));break;default:this.data=e,this.value=e,this.nodeValue=e}}}),Ei=function(e,t,r){e["$$"+t]=r})}catch{}te.DocumentType=At;te.DOMException=x;te.DOMImplementation=ci;te.Element=he;te.Node=F;te.NodeList=Q;te.walkDOM=k;te.XMLSerializer=Di});var bi=M(Re=>{"use strict";var Ai=Le().freeze;Re.XML_ENTITIES=Ai({amp:"&",apos:"'",gt:">",lt:"<",quot:'"'});Re.HTML_ENTITIES=Ai({Aacute:"\xC1",aacute:"\xE1",Abreve:"\u0102",abreve:"\u0103",ac:"\u223E",acd:"\u223F",acE:"\u223E\u0333",Acirc:"\xC2",acirc:"\xE2",acute:"\xB4",Acy:"\u0410",acy:"\u0430",AElig:"\xC6",aelig:"\xE6",af:"\u2061",Afr:"\u{1D504}",afr:"\u{1D51E}",Agrave:"\xC0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",Alpha:"\u0391",alpha:"\u03B1",Amacr:"\u0100",amacr:"\u0101",amalg:"\u2A3F",AMP:"&",amp:"&",And:"\u2A53",and:"\u2227",andand:"\u2A55",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsd:"\u2221",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",Aogon:"\u0104",aogon:"\u0105",Aopf:"\u{1D538}",aopf:"\u{1D552}",ap:"\u2248",apacir:"\u2A6F",apE:"\u2A70",ape:"\u224A",apid:"\u224B",apos:"'",ApplyFunction:"\u2061",approx:"\u2248",approxeq:"\u224A",Aring:"\xC5",aring:"\xE5",Ascr:"\u{1D49C}",ascr:"\u{1D4B6}",Assign:"\u2254",ast:"*",asymp:"\u2248",asympeq:"\u224D",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",Backslash:"\u2216",Barv:"\u2AE7",barvee:"\u22BD",Barwed:"\u2306",barwed:"\u2305",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",Bcy:"\u0411",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",Because:"\u2235",because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",Bernoullis:"\u212C",Beta:"\u0392",beta:"\u03B2",beth:"\u2136",between:"\u226C",Bfr:"\u{1D505}",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bNot:"\u2AED",bnot:"\u2310",Bopf:"\u{1D539}",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxbox:"\u29C9",boxDL:"\u2557",boxDl:"\u2556",boxdL:"\u2555",boxdl:"\u2510",boxDR:"\u2554",boxDr:"\u2553",boxdR:"\u2552",boxdr:"\u250C",boxH:"\u2550",boxh:"\u2500",boxHD:"\u2566",boxHd:"\u2564",boxhD:"\u2565",boxhd:"\u252C",boxHU:"\u2569",boxHu:"\u2567",boxhU:"\u2568",boxhu:"\u2534",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxUL:"\u255D",boxUl:"\u255C",boxuL:"\u255B",boxul:"\u2518",boxUR:"\u255A",boxUr:"\u2559",boxuR:"\u2558",boxur:"\u2514",boxV:"\u2551",boxv:"\u2502",boxVH:"\u256C",boxVh:"\u256B",boxvH:"\u256A",boxvh:"\u253C",boxVL:"\u2563",boxVl:"\u2562",boxvL:"\u2561",boxvl:"\u2524",boxVR:"\u2560",boxVr:"\u255F",boxvR:"\u255E",boxvr:"\u251C",bprime:"\u2035",Breve:"\u02D8",breve:"\u02D8",brvbar:"\xA6",Bscr:"\u212C",bscr:"\u{1D4B7}",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsol:"\\",bsolb:"\u29C5",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",Bumpeq:"\u224E",bumpeq:"\u224F",Cacute:"\u0106",cacute:"\u0107",Cap:"\u22D2",cap:"\u2229",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",capcup:"\u2A47",capdot:"\u2A40",CapitalDifferentialD:"\u2145",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",Cayleys:"\u212D",ccaps:"\u2A4D",Ccaron:"\u010C",ccaron:"\u010D",Ccedil:"\xC7",ccedil:"\xE7",Ccirc:"\u0108",ccirc:"\u0109",Cconint:"\u2230",ccups:"\u2A4C",ccupssm:"\u2A50",Cdot:"\u010A",cdot:"\u010B",cedil:"\xB8",Cedilla:"\xB8",cemptyv:"\u29B2",cent:"\xA2",CenterDot:"\xB7",centerdot:"\xB7",Cfr:"\u212D",cfr:"\u{1D520}",CHcy:"\u0427",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",Chi:"\u03A7",chi:"\u03C7",cir:"\u25CB",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",CircleDot:"\u2299",circledR:"\xAE",circledS:"\u24C8",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",cirE:"\u29C3",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",clubs:"\u2663",clubsuit:"\u2663",Colon:"\u2237",colon:":",Colone:"\u2A74",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",Congruent:"\u2261",Conint:"\u222F",conint:"\u222E",ContourIntegral:"\u222E",Copf:"\u2102",copf:"\u{1D554}",coprod:"\u2210",Coproduct:"\u2210",COPY:"\xA9",copy:"\xA9",copysr:"\u2117",CounterClockwiseContourIntegral:"\u2233",crarr:"\u21B5",Cross:"\u2A2F",cross:"\u2717",Cscr:"\u{1D49E}",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",Cup:"\u22D3",cup:"\u222A",cupbrcap:"\u2A48",CupCap:"\u224D",cupcap:"\u2A46",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",Dagger:"\u2021",dagger:"\u2020",daleth:"\u2138",Darr:"\u21A1",dArr:"\u21D3",darr:"\u2193",dash:"\u2010",Dashv:"\u2AE4",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",Dcaron:"\u010E",dcaron:"\u010F",Dcy:"\u0414",dcy:"\u0434",DD:"\u2145",dd:"\u2146",ddagger:"\u2021",ddarr:"\u21CA",DDotrahd:"\u2911",ddotseq:"\u2A77",deg:"\xB0",Del:"\u2207",Delta:"\u0394",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",Dfr:"\u{1D507}",dfr:"\u{1D521}",dHar:"\u2965",dharl:"\u21C3",dharr:"\u21C2",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",diam:"\u22C4",Diamond:"\u22C4",diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",DifferentialD:"\u2146",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",DJcy:"\u0402",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",Dopf:"\u{1D53B}",dopf:"\u{1D555}",Dot:"\xA8",dot:"\u02D9",DotDot:"\u20DC",doteq:"\u2250",doteqdot:"\u2251",DotEqual:"\u2250",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrow:"\u2193",Downarrow:"\u21D3",downarrow:"\u2193",DownArrowBar:"\u2913",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVector:"\u21BD",DownLeftVectorBar:"\u2956",DownRightTeeVector:"\u295F",DownRightVector:"\u21C1",DownRightVectorBar:"\u2957",DownTee:"\u22A4",DownTeeArrow:"\u21A7",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",Dscr:"\u{1D49F}",dscr:"\u{1D4B9}",DScy:"\u0405",dscy:"\u0455",dsol:"\u29F6",Dstrok:"\u0110",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",DZcy:"\u040F",dzcy:"\u045F",dzigrarr:"\u27FF",Eacute:"\xC9",eacute:"\xE9",easter:"\u2A6E",Ecaron:"\u011A",ecaron:"\u011B",ecir:"\u2256",Ecirc:"\xCA",ecirc:"\xEA",ecolon:"\u2255",Ecy:"\u042D",ecy:"\u044D",eDDot:"\u2A77",Edot:"\u0116",eDot:"\u2251",edot:"\u0117",ee:"\u2147",efDot:"\u2252",Efr:"\u{1D508}",efr:"\u{1D522}",eg:"\u2A9A",Egrave:"\xC8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",Element:"\u2208",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",Emacr:"\u0112",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",EmptySmallSquare:"\u25FB",emptyv:"\u2205",EmptyVerySmallSquare:"\u25AB",emsp:"\u2003",emsp13:"\u2004",emsp14:"\u2005",ENG:"\u014A",eng:"\u014B",ensp:"\u2002",Eogon:"\u0118",eogon:"\u0119",Eopf:"\u{1D53C}",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",Epsilon:"\u0395",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",Equal:"\u2A75",equals:"=",EqualTilde:"\u2242",equest:"\u225F",Equilibrium:"\u21CC",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erarr:"\u2971",erDot:"\u2253",Escr:"\u2130",escr:"\u212F",esdot:"\u2250",Esim:"\u2A73",esim:"\u2242",Eta:"\u0397",eta:"\u03B7",ETH:"\xD0",eth:"\xF0",Euml:"\xCB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",Exists:"\u2203",expectation:"\u2130",ExponentialE:"\u2147",exponentiale:"\u2147",fallingdotseq:"\u2252",Fcy:"\u0424",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",Ffr:"\u{1D509}",ffr:"\u{1D523}",filig:"\uFB01",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",Fopf:"\u{1D53D}",fopf:"\u{1D557}",ForAll:"\u2200",forall:"\u2200",fork:"\u22D4",forkv:"\u2AD9",Fouriertrf:"\u2131",fpartint:"\u2A0D",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",Fscr:"\u2131",fscr:"\u{1D4BB}",gacute:"\u01F5",Gamma:"\u0393",gamma:"\u03B3",Gammad:"\u03DC",gammad:"\u03DD",gap:"\u2A86",Gbreve:"\u011E",gbreve:"\u011F",Gcedil:"\u0122",Gcirc:"\u011C",gcirc:"\u011D",Gcy:"\u0413",gcy:"\u0433",Gdot:"\u0120",gdot:"\u0121",gE:"\u2267",ge:"\u2265",gEl:"\u2A8C",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",ges:"\u2A7E",gescc:"\u2AA9",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",Gfr:"\u{1D50A}",gfr:"\u{1D524}",Gg:"\u22D9",gg:"\u226B",ggg:"\u22D9",gimel:"\u2137",GJcy:"\u0403",gjcy:"\u0453",gl:"\u2277",gla:"\u2AA5",glE:"\u2A92",glj:"\u2AA4",gnap:"\u2A8A",gnapprox:"\u2A8A",gnE:"\u2269",gne:"\u2A88",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",Gopf:"\u{1D53E}",gopf:"\u{1D558}",grave:"`",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",Gt:"\u226B",GT:">",gt:">",gtcc:"\u2AA7",gtcir:"\u2A7A",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",Hacek:"\u02C7",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",HARDcy:"\u042A",hardcy:"\u044A",hArr:"\u21D4",harr:"\u2194",harrcir:"\u2948",harrw:"\u21AD",Hat:"^",hbar:"\u210F",Hcirc:"\u0124",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",Hfr:"\u210C",hfr:"\u{1D525}",HilbertSpace:"\u210B",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",Hopf:"\u210D",hopf:"\u{1D559}",horbar:"\u2015",HorizontalLine:"\u2500",Hscr:"\u210B",hscr:"\u{1D4BD}",hslash:"\u210F",Hstrok:"\u0126",hstrok:"\u0127",HumpDownHump:"\u224E",HumpEqual:"\u224F",hybull:"\u2043",hyphen:"\u2010",Iacute:"\xCD",iacute:"\xED",ic:"\u2063",Icirc:"\xCE",icirc:"\xEE",Icy:"\u0418",icy:"\u0438",Idot:"\u0130",IEcy:"\u0415",iecy:"\u0435",iexcl:"\xA1",iff:"\u21D4",Ifr:"\u2111",ifr:"\u{1D526}",Igrave:"\xCC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",IJlig:"\u0132",ijlig:"\u0133",Im:"\u2111",Imacr:"\u012A",imacr:"\u012B",image:"\u2111",ImaginaryI:"\u2148",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",imof:"\u22B7",imped:"\u01B5",Implies:"\u21D2",in:"\u2208",incare:"\u2105",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",Int:"\u222C",int:"\u222B",intcal:"\u22BA",integers:"\u2124",Integral:"\u222B",intercal:"\u22BA",Intersection:"\u22C2",intlarhk:"\u2A17",intprod:"\u2A3C",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",IOcy:"\u0401",iocy:"\u0451",Iogon:"\u012E",iogon:"\u012F",Iopf:"\u{1D540}",iopf:"\u{1D55A}",Iota:"\u0399",iota:"\u03B9",iprod:"\u2A3C",iquest:"\xBF",Iscr:"\u2110",iscr:"\u{1D4BE}",isin:"\u2208",isindot:"\u22F5",isinE:"\u22F9",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",Itilde:"\u0128",itilde:"\u0129",Iukcy:"\u0406",iukcy:"\u0456",Iuml:"\xCF",iuml:"\xEF",Jcirc:"\u0134",jcirc:"\u0135",Jcy:"\u0419",jcy:"\u0439",Jfr:"\u{1D50D}",jfr:"\u{1D527}",jmath:"\u0237",Jopf:"\u{1D541}",jopf:"\u{1D55B}",Jscr:"\u{1D4A5}",jscr:"\u{1D4BF}",Jsercy:"\u0408",jsercy:"\u0458",Jukcy:"\u0404",jukcy:"\u0454",Kappa:"\u039A",kappa:"\u03BA",kappav:"\u03F0",Kcedil:"\u0136",kcedil:"\u0137",Kcy:"\u041A",kcy:"\u043A",Kfr:"\u{1D50E}",kfr:"\u{1D528}",kgreen:"\u0138",KHcy:"\u0425",khcy:"\u0445",KJcy:"\u040C",kjcy:"\u045C",Kopf:"\u{1D542}",kopf:"\u{1D55C}",Kscr:"\u{1D4A6}",kscr:"\u{1D4C0}",lAarr:"\u21DA",Lacute:"\u0139",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",Lambda:"\u039B",lambda:"\u03BB",Lang:"\u27EA",lang:"\u27E8",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",Laplacetrf:"\u2112",laquo:"\xAB",Larr:"\u219E",lArr:"\u21D0",larr:"\u2190",larrb:"\u21E4",larrbfs:"\u291F",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",lat:"\u2AAB",lAtail:"\u291B",latail:"\u2919",late:"\u2AAD",lates:"\u2AAD\uFE00",lBarr:"\u290E",lbarr:"\u290C",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",Lcaron:"\u013D",lcaron:"\u013E",Lcedil:"\u013B",lcedil:"\u013C",lceil:"\u2308",lcub:"{",Lcy:"\u041B",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",lE:"\u2266",le:"\u2264",LeftAngleBracket:"\u27E8",LeftArrow:"\u2190",Leftarrow:"\u21D0",leftarrow:"\u2190",LeftArrowBar:"\u21E4",LeftArrowRightArrow:"\u21C6",leftarrowtail:"\u21A2",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVector:"\u21C3",LeftDownVectorBar:"\u2959",LeftFloor:"\u230A",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",LeftRightArrow:"\u2194",Leftrightarrow:"\u21D4",leftrightarrow:"\u2194",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",LeftRightVector:"\u294E",LeftTee:"\u22A3",LeftTeeArrow:"\u21A4",LeftTeeVector:"\u295A",leftthreetimes:"\u22CB",LeftTriangle:"\u22B2",LeftTriangleBar:"\u29CF",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVector:"\u21BF",LeftUpVectorBar:"\u2958",LeftVector:"\u21BC",LeftVectorBar:"\u2952",lEg:"\u2A8B",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",les:"\u2A7D",lescc:"\u2AA8",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",lessgtr:"\u2276",LessLess:"\u2AA1",lesssim:"\u2272",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",lfisht:"\u297C",lfloor:"\u230A",Lfr:"\u{1D50F}",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lHar:"\u2962",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",LJcy:"\u0409",ljcy:"\u0459",Ll:"\u22D8",ll:"\u226A",llarr:"\u21C7",llcorner:"\u231E",Lleftarrow:"\u21DA",llhard:"\u296B",lltri:"\u25FA",Lmidot:"\u013F",lmidot:"\u0140",lmoust:"\u23B0",lmoustache:"\u23B0",lnap:"\u2A89",lnapprox:"\u2A89",lnE:"\u2268",lne:"\u2A87",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",LongLeftArrow:"\u27F5",Longleftarrow:"\u27F8",longleftarrow:"\u27F5",LongLeftRightArrow:"\u27F7",Longleftrightarrow:"\u27FA",longleftrightarrow:"\u27F7",longmapsto:"\u27FC",LongRightArrow:"\u27F6",Longrightarrow:"\u27F9",longrightarrow:"\u27F6",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",Lopf:"\u{1D543}",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",Lscr:"\u2112",lscr:"\u{1D4C1}",Lsh:"\u21B0",lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",Lstrok:"\u0141",lstrok:"\u0142",Lt:"\u226A",LT:"<",lt:"<",ltcc:"\u2AA6",ltcir:"\u2A79",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",ltrPar:"\u2996",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",Map:"\u2905",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",Mcy:"\u041C",mcy:"\u043C",mdash:"\u2014",mDDot:"\u223A",measuredangle:"\u2221",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",mfr:"\u{1D52A}",mho:"\u2127",micro:"\xB5",mid:"\u2223",midast:"*",midcir:"\u2AF0",middot:"\xB7",minus:"\u2212",minusb:"\u229F",minusd:"\u2238",minusdu:"\u2A2A",MinusPlus:"\u2213",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",Mopf:"\u{1D544}",mopf:"\u{1D55E}",mp:"\u2213",Mscr:"\u2133",mscr:"\u{1D4C2}",mstpos:"\u223E",Mu:"\u039C",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nabla:"\u2207",Nacute:"\u0143",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natur:"\u266E",natural:"\u266E",naturals:"\u2115",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",Ncy:"\u041D",ncy:"\u043D",ndash:"\u2013",ne:"\u2260",nearhk:"\u2924",neArr:"\u21D7",nearr:"\u2197",nearrow:"\u2197",nedot:"\u2250\u0338",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:`
4
+ `,nexist:"\u2204",nexists:"\u2204",Nfr:"\u{1D511}",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",nGg:"\u22D9\u0338",ngsim:"\u2275",nGt:"\u226B\u20D2",ngt:"\u226F",ngtr:"\u226F",nGtv:"\u226B\u0338",nhArr:"\u21CE",nharr:"\u21AE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",NJcy:"\u040A",njcy:"\u045A",nlArr:"\u21CD",nlarr:"\u219A",nldr:"\u2025",nlE:"\u2266\u0338",nle:"\u2270",nLeftarrow:"\u21CD",nleftarrow:"\u219A",nLeftrightarrow:"\u21CE",nleftrightarrow:"\u21AE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nLl:"\u22D8\u0338",nlsim:"\u2274",nLt:"\u226A\u20D2",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nLtv:"\u226A\u0338",nmid:"\u2224",NoBreak:"\u2060",NonBreakingSpace:"\xA0",Nopf:"\u2115",nopf:"\u{1D55F}",Not:"\u2AEC",not:"\xAC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",notin:"\u2209",notindot:"\u22F5\u0338",notinE:"\u22F9\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",NotLeftTriangle:"\u22EA",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangle:"\u22EB",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",npar:"\u2226",nparallel:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",npre:"\u2AAF\u0338",nprec:"\u2280",npreceq:"\u2AAF\u0338",nrArr:"\u21CF",nrarr:"\u219B",nrarrc:"\u2933\u0338",nrarrw:"\u219D\u0338",nRightarrow:"\u21CF",nrightarrow:"\u219B",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",Nscr:"\u{1D4A9}",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",Ntilde:"\xD1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",Nu:"\u039D",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvap:"\u224D\u20D2",nVDash:"\u22AF",nVdash:"\u22AE",nvDash:"\u22AD",nvdash:"\u22AC",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvHarr:"\u2904",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwarhk:"\u2923",nwArr:"\u21D6",nwarr:"\u2196",nwarrow:"\u2196",nwnear:"\u2927",Oacute:"\xD3",oacute:"\xF3",oast:"\u229B",ocir:"\u229A",Ocirc:"\xD4",ocirc:"\xF4",Ocy:"\u041E",ocy:"\u043E",odash:"\u229D",Odblac:"\u0150",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",OElig:"\u0152",oelig:"\u0153",ofcir:"\u29BF",Ofr:"\u{1D512}",ofr:"\u{1D52C}",ogon:"\u02DB",Ograve:"\xD2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",Omacr:"\u014C",omacr:"\u014D",Omega:"\u03A9",omega:"\u03C9",Omicron:"\u039F",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",Oopf:"\u{1D546}",oopf:"\u{1D560}",opar:"\u29B7",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",operp:"\u29B9",oplus:"\u2295",Or:"\u2A54",or:"\u2228",orarr:"\u21BB",ord:"\u2A5D",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oS:"\u24C8",Oscr:"\u{1D4AA}",oscr:"\u2134",Oslash:"\xD8",oslash:"\xF8",osol:"\u2298",Otilde:"\xD5",otilde:"\xF5",Otimes:"\u2A37",otimes:"\u2297",otimesas:"\u2A36",Ouml:"\xD6",ouml:"\xF6",ovbar:"\u233D",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",par:"\u2225",para:"\xB6",parallel:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",PartialD:"\u2202",Pcy:"\u041F",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",Pfr:"\u{1D513}",pfr:"\u{1D52D}",Phi:"\u03A6",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",Pi:"\u03A0",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plus:"+",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",PlusMinus:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",Poincareplane:"\u210C",pointint:"\u2A15",Popf:"\u2119",popf:"\u{1D561}",pound:"\xA3",Pr:"\u2ABB",pr:"\u227A",prap:"\u2AB7",prcue:"\u227C",prE:"\u2AB3",pre:"\u2AAF",prec:"\u227A",precapprox:"\u2AB7",preccurlyeq:"\u227C",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",precsim:"\u227E",Prime:"\u2033",prime:"\u2032",primes:"\u2119",prnap:"\u2AB9",prnE:"\u2AB5",prnsim:"\u22E8",prod:"\u220F",Product:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",Proportion:"\u2237",Proportional:"\u221D",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",Pscr:"\u{1D4AB}",pscr:"\u{1D4C5}",Psi:"\u03A8",psi:"\u03C8",puncsp:"\u2008",Qfr:"\u{1D514}",qfr:"\u{1D52E}",qint:"\u2A0C",Qopf:"\u211A",qopf:"\u{1D562}",qprime:"\u2057",Qscr:"\u{1D4AC}",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",QUOT:'"',quot:'"',rAarr:"\u21DB",race:"\u223D\u0331",Racute:"\u0154",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",Rang:"\u27EB",rang:"\u27E9",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raquo:"\xBB",Rarr:"\u21A0",rArr:"\u21D2",rarr:"\u2192",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",Rarrtl:"\u2916",rarrtl:"\u21A3",rarrw:"\u219D",rAtail:"\u291C",ratail:"\u291A",ratio:"\u2236",rationals:"\u211A",RBarr:"\u2910",rBarr:"\u290F",rbarr:"\u290D",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",rceil:"\u2309",rcub:"}",Rcy:"\u0420",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",Re:"\u211C",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",rect:"\u25AD",REG:"\xAE",reg:"\xAE",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",rfisht:"\u297D",rfloor:"\u230B",Rfr:"\u211C",rfr:"\u{1D52F}",rHar:"\u2964",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",Rho:"\u03A1",rho:"\u03C1",rhov:"\u03F1",RightAngleBracket:"\u27E9",RightArrow:"\u2192",Rightarrow:"\u21D2",rightarrow:"\u2192",RightArrowBar:"\u21E5",RightArrowLeftArrow:"\u21C4",rightarrowtail:"\u21A3",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVector:"\u21C2",RightDownVectorBar:"\u2955",RightFloor:"\u230B",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",RightTee:"\u22A2",RightTeeArrow:"\u21A6",RightTeeVector:"\u295B",rightthreetimes:"\u22CC",RightTriangle:"\u22B3",RightTriangleBar:"\u29D0",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVector:"\u21BE",RightUpVectorBar:"\u2954",RightVector:"\u21C0",RightVectorBar:"\u2953",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoust:"\u23B1",rmoustache:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",Ropf:"\u211D",ropf:"\u{1D563}",roplus:"\u2A2E",rotimes:"\u2A35",RoundImplies:"\u2970",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",Rrightarrow:"\u21DB",rsaquo:"\u203A",Rscr:"\u211B",rscr:"\u{1D4C7}",Rsh:"\u21B1",rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",RuleDelayed:"\u29F4",ruluhar:"\u2968",rx:"\u211E",Sacute:"\u015A",sacute:"\u015B",sbquo:"\u201A",Sc:"\u2ABC",sc:"\u227B",scap:"\u2AB8",Scaron:"\u0160",scaron:"\u0161",sccue:"\u227D",scE:"\u2AB4",sce:"\u2AB0",Scedil:"\u015E",scedil:"\u015F",Scirc:"\u015C",scirc:"\u015D",scnap:"\u2ABA",scnE:"\u2AB6",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",Scy:"\u0421",scy:"\u0441",sdot:"\u22C5",sdotb:"\u22A1",sdote:"\u2A66",searhk:"\u2925",seArr:"\u21D8",searr:"\u2198",searrow:"\u2198",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",Sfr:"\u{1D516}",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",SHCHcy:"\u0429",shchcy:"\u0449",SHcy:"\u0428",shcy:"\u0448",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",shortmid:"\u2223",shortparallel:"\u2225",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",shy:"\xAD",Sigma:"\u03A3",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",SmallCircle:"\u2218",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",SOFTcy:"\u042C",softcy:"\u044C",sol:"/",solb:"\u29C4",solbar:"\u233F",Sopf:"\u{1D54A}",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",Sqrt:"\u221A",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",squ:"\u25A1",Square:"\u25A1",square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",squarf:"\u25AA",squf:"\u25AA",srarr:"\u2192",Sscr:"\u{1D4AE}",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",Star:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",Sub:"\u22D0",sub:"\u2282",subdot:"\u2ABD",subE:"\u2AC5",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",Subset:"\u22D0",subset:"\u2282",subseteq:"\u2286",subseteqq:"\u2AC5",SubsetEqual:"\u2286",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succ:"\u227B",succapprox:"\u2AB8",succcurlyeq:"\u227D",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",SuchThat:"\u220B",Sum:"\u2211",sum:"\u2211",sung:"\u266A",Sup:"\u22D1",sup:"\u2283",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",supdot:"\u2ABE",supdsub:"\u2AD8",supE:"\u2AC6",supe:"\u2287",supedot:"\u2AC4",Superset:"\u2283",SupersetEqual:"\u2287",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",Supset:"\u22D1",supset:"\u2283",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swarhk:"\u2926",swArr:"\u21D9",swarr:"\u2199",swarrow:"\u2199",swnwar:"\u292A",szlig:"\xDF",Tab:" ",target:"\u2316",Tau:"\u03A4",tau:"\u03C4",tbrk:"\u23B4",Tcaron:"\u0164",tcaron:"\u0165",Tcedil:"\u0162",tcedil:"\u0163",Tcy:"\u0422",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",Tfr:"\u{1D517}",tfr:"\u{1D531}",there4:"\u2234",Therefore:"\u2234",therefore:"\u2234",Theta:"\u0398",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",ThickSpace:"\u205F\u200A",thinsp:"\u2009",ThinSpace:"\u2009",thkap:"\u2248",thksim:"\u223C",THORN:"\xDE",thorn:"\xFE",Tilde:"\u223C",tilde:"\u02DC",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",times:"\xD7",timesb:"\u22A0",timesbar:"\u2A31",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",top:"\u22A4",topbot:"\u2336",topcir:"\u2AF1",Topf:"\u{1D54B}",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",TRADE:"\u2122",trade:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",TripleDot:"\u20DB",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",Tscr:"\u{1D4AF}",tscr:"\u{1D4C9}",TScy:"\u0426",tscy:"\u0446",TSHcy:"\u040B",tshcy:"\u045B",Tstrok:"\u0166",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",Uacute:"\xDA",uacute:"\xFA",Uarr:"\u219F",uArr:"\u21D1",uarr:"\u2191",Uarrocir:"\u2949",Ubrcy:"\u040E",ubrcy:"\u045E",Ubreve:"\u016C",ubreve:"\u016D",Ucirc:"\xDB",ucirc:"\xFB",Ucy:"\u0423",ucy:"\u0443",udarr:"\u21C5",Udblac:"\u0170",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",Ufr:"\u{1D518}",ufr:"\u{1D532}",Ugrave:"\xD9",ugrave:"\xF9",uHar:"\u2963",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",Umacr:"\u016A",umacr:"\u016B",uml:"\xA8",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",uogon:"\u0173",Uopf:"\u{1D54C}",uopf:"\u{1D566}",UpArrow:"\u2191",Uparrow:"\u21D1",uparrow:"\u2191",UpArrowBar:"\u2912",UpArrowDownArrow:"\u21C5",UpDownArrow:"\u2195",Updownarrow:"\u21D5",updownarrow:"\u2195",UpEquilibrium:"\u296E",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",Upsi:"\u03D2",upsi:"\u03C5",upsih:"\u03D2",Upsilon:"\u03A5",upsilon:"\u03C5",UpTee:"\u22A5",UpTeeArrow:"\u21A5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",Uring:"\u016E",uring:"\u016F",urtri:"\u25F9",Uscr:"\u{1D4B0}",uscr:"\u{1D4CA}",utdot:"\u22F0",Utilde:"\u0168",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",Uuml:"\xDC",uuml:"\xFC",uwangle:"\u29A7",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",vArr:"\u21D5",varr:"\u2195",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",Vbar:"\u2AEB",vBar:"\u2AE8",vBarv:"\u2AE9",Vcy:"\u0412",vcy:"\u0432",VDash:"\u22AB",Vdash:"\u22A9",vDash:"\u22A8",vdash:"\u22A2",Vdashl:"\u2AE6",Vee:"\u22C1",vee:"\u2228",veebar:"\u22BB",veeeq:"\u225A",vellip:"\u22EE",Verbar:"\u2016",verbar:"|",Vert:"\u2016",vert:"|",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",Vopf:"\u{1D54D}",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",Vscr:"\u{1D4B1}",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",Vvdash:"\u22AA",vzigzag:"\u299A",Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2A5F",Wedge:"\u22C0",wedge:"\u2227",wedgeq:"\u2259",weierp:"\u2118",Wfr:"\u{1D51A}",wfr:"\u{1D534}",Wopf:"\u{1D54E}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",Wscr:"\u{1D4B2}",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",Xfr:"\u{1D51B}",xfr:"\u{1D535}",xhArr:"\u27FA",xharr:"\u27F7",Xi:"\u039E",xi:"\u03BE",xlArr:"\u27F8",xlarr:"\u27F5",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",Xopf:"\u{1D54F}",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrArr:"\u27F9",xrarr:"\u27F6",Xscr:"\u{1D4B3}",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",Yacute:"\xDD",yacute:"\xFD",YAcy:"\u042F",yacy:"\u044F",Ycirc:"\u0176",ycirc:"\u0177",Ycy:"\u042B",ycy:"\u044B",yen:"\xA5",Yfr:"\u{1D51C}",yfr:"\u{1D536}",YIcy:"\u0407",yicy:"\u0457",Yopf:"\u{1D550}",yopf:"\u{1D56A}",Yscr:"\u{1D4B4}",yscr:"\u{1D4CE}",YUcy:"\u042E",yucy:"\u044E",Yuml:"\u0178",yuml:"\xFF",Zacute:"\u0179",zacute:"\u017A",Zcaron:"\u017D",zcaron:"\u017E",Zcy:"\u0417",zcy:"\u0437",Zdot:"\u017B",zdot:"\u017C",zeetrf:"\u2128",ZeroWidthSpace:"\u200B",Zeta:"\u0396",zeta:"\u03B6",Zfr:"\u2128",zfr:"\u{1D537}",ZHcy:"\u0416",zhcy:"\u0436",zigrarr:"\u21DD",Zopf:"\u2124",zopf:"\u{1D56B}",Zscr:"\u{1D4B5}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"});Re.entityMap=Re.HTML_ENTITIES});var Li=M(nr=>{var Ue=Le().NAMESPACE,rr=/[A-Z_a-z\xC0-\xD6\xD8-\xF6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD]/,Ci=new RegExp("[\\-\\.0-9"+rr.source.slice(1,-1)+"\\u00B7\\u0300-\\u036F\\u203F-\\u2040]"),vi=new RegExp("^"+rr.source+Ci.source+"*(?::"+rr.source+Ci.source+"*)?$"),qe=0,oe=1,we=2,_e=3,Ee=4,Ae=5,ke=6,Ct=7;function be(e,t){this.message=e,this.locator=t,Error.captureStackTrace&&Error.captureStackTrace(this,be)}be.prototype=new Error;be.prototype.name=be.name;function Si(){}Si.prototype={parse:function(e,t,r){var i=this.domBuilder;i.startDocument(),Oi(t,t={}),Ou(e,t,r,i,this.errorHandler),i.endDocument()}};function Ou(e,t,r,i,n){function s(L){if(L>65535){L-=65536;var S=55296+(L>>10),_=56320+(L&1023);return String.fromCharCode(S,_)}else return String.fromCharCode(L)}function u(L){var S=L.slice(1,-1);return Object.hasOwnProperty.call(r,S)?r[S]:S.charAt(0)==="#"?s(parseInt(S.substr(1).replace("x","0x"))):(n.error("entity not found:"+L),L)}function l(L){if(L>N){var S=e.substring(N,L).replace(/&#?\w+;/g,u);y&&c(N),i.characters(S,0,L-N),N=L}}function c(L,S){for(;L>=m&&(S=d.exec(e));)p=S.index,m=p+S[0].length,y.lineNumber++;y.columnNumber=L-p+1}for(var p=0,m=0,d=/.*(?:\r\n?|\n)|.*$/g,y=i.locator,b=[{currentNSMap:t}],C={},N=0;;){try{var T=e.indexOf("<",N);if(T<0){if(!e.substr(N).match(/^\s*$/)){var B=i.doc,P=B.createTextNode(e.substr(N));B.appendChild(P),i.currentElement=P}return}switch(T>N&&l(T),e.charAt(T+1)){case"/":var E=e.indexOf(">",T+3),f=e.substring(T+2,E).replace(/[ \t\n\r]+$/g,""),h=b.pop();E<0?(f=e.substring(T+2).replace(/[\s<].*/,""),n.error("end tag name: "+f+" is not complete:"+h.tagName),E=T+1+f.length):f.match(/\s</)&&(f=f.replace(/[\s<].*/,""),n.error("end tag name: "+f+" maybe not complete"),E=T+1+f.length);var w=h.localNSMap,o=h.tagName==f,D=o||h.tagName&&h.tagName.toLowerCase()==f.toLowerCase();if(D){if(i.endElement(h.uri,h.localName,f),w)for(var A in w)Object.prototype.hasOwnProperty.call(w,A)&&i.endPrefixMapping(A);o||n.fatalError("end tag name: "+f+" is not match the current start tagName:"+h.tagName)}else b.push(h);E++;break;case"?":y&&c(T),E=Fu(e,T,i);break;case"!":y&&c(T),E=Bu(e,T,i,n);break;default:y&&c(T);var a=new Ii,g=b[b.length-1].currentNSMap,E=Iu(e,T,a,g,u,n),v=a.length;if(!a.closed&&Mu(e,E,a.tagName,C)&&(a.closed=!0,r.nbsp||n.warning("unclosed xml attribute")),y&&v){for(var O=Ti(y,{}),I=0;I<v;I++){var q=a[I];c(q.offset),q.locator=Ti(y,{})}i.locator=O,Ni(a,i,g)&&b.push(a),i.locator=y}else Ni(a,i,g)&&b.push(a);Ue.isHTML(a.uri)&&!a.closed?E=Lu(e,E,a.tagName,u,i):E++}}catch(L){if(L instanceof be)throw L;n.error("element parse error: "+L),E=-1}E>N?N=E:l(Math.max(T,N)+1)}}function Ti(e,t){return t.lineNumber=e.lineNumber,t.columnNumber=e.columnNumber,t}function Iu(e,t,r,i,n,s){function u(b,C,N){r.attributeNames.hasOwnProperty(b)&&s.fatalError("Attribute "+b+" redefined"),r.addValue(b,C.replace(/[\t\n\r]/g," ").replace(/&#?\w+;/g,n),N)}for(var l,c,p=++t,m=qe;;){var d=e.charAt(p);switch(d){case"=":if(m===oe)l=e.slice(t,p),m=_e;else if(m===we)m=_e;else throw new Error("attribute equal must after attrName");break;case"'":case'"':if(m===_e||m===oe)if(m===oe&&(s.warning('attribute value must after "="'),l=e.slice(t,p)),t=p+1,p=e.indexOf(d,t),p>0)c=e.slice(t,p),u(l,c,t-1),m=Ae;else throw new Error("attribute value no end '"+d+"' match");else if(m==Ee)c=e.slice(t,p),u(l,c,t),s.warning('attribute "'+l+'" missed start quot('+d+")!!"),t=p+1,m=Ae;else throw new Error('attribute value must after "="');break;case"/":switch(m){case qe:r.setTagName(e.slice(t,p));case Ae:case ke:case Ct:m=Ct,r.closed=!0;case Ee:case oe:break;case we:r.closed=!0;break;default:throw new Error("attribute invalid close char('/')")}break;case"":return s.error("unexpected end of input"),m==qe&&r.setTagName(e.slice(t,p)),p;case">":switch(m){case qe:r.setTagName(e.slice(t,p));case Ae:case ke:case Ct:break;case Ee:case oe:c=e.slice(t,p),c.slice(-1)==="/"&&(r.closed=!0,c=c.slice(0,-1));case we:m===we&&(c=l),m==Ee?(s.warning('attribute "'+c+'" missed quot(")!'),u(l,c,t)):((!Ue.isHTML(i[""])||!c.match(/^(?:disabled|checked|selected)$/i))&&s.warning('attribute "'+c+'" missed value!! "'+c+'" instead!!'),u(c,c,t));break;case _e:throw new Error("attribute value missed!!")}return p;case"\x80":d=" ";default:if(d<=" ")switch(m){case qe:r.setTagName(e.slice(t,p)),m=ke;break;case oe:l=e.slice(t,p),m=we;break;case Ee:var c=e.slice(t,p);s.warning('attribute "'+c+'" missed quot(")!!'),u(l,c,t);case Ae:m=ke;break}else switch(m){case we:var y=r.tagName;(!Ue.isHTML(i[""])||!l.match(/^(?:disabled|checked|selected)$/i))&&s.warning('attribute "'+l+'" missed value!! "'+l+'" instead2!!'),u(l,l,t),t=p,m=oe;break;case Ae:s.warning('attribute space is required"'+l+'"!!');case ke:m=oe,t=p;break;case _e:m=Ee,t=p;break;case Ct:throw new Error("elements closed character '/' and '>' must be connected to")}}p++}}function Ni(e,t,r){for(var i=e.tagName,n=null,d=e.length;d--;){var s=e[d],u=s.qName,l=s.value,y=u.indexOf(":");if(y>0)var c=s.prefix=u.slice(0,y),p=u.slice(y+1),m=c==="xmlns"&&p;else p=u,c=null,m=u==="xmlns"&&"";s.localName=p,m!==!1&&(n==null&&(n={},Oi(r,r={})),r[m]=n[m]=l,s.uri=Ue.XMLNS,t.startPrefixMapping(m,l))}for(var d=e.length;d--;){s=e[d];var c=s.prefix;c&&(c==="xml"&&(s.uri=Ue.XML),c!=="xmlns"&&(s.uri=r[c||""]))}var y=i.indexOf(":");y>0?(c=e.prefix=i.slice(0,y),p=e.localName=i.slice(y+1)):(c=null,p=e.localName=i);var b=e.uri=r[c||""];if(t.startElement(b,p,i,e),e.closed){if(t.endElement(b,p,i),n)for(c in n)Object.prototype.hasOwnProperty.call(n,c)&&t.endPrefixMapping(c)}else return e.currentNSMap=r,e.localNSMap=n,!0}function Lu(e,t,r,i,n){if(/^(?:script|textarea)$/i.test(r)){var s=e.indexOf("</"+r+">",t),u=e.substring(t+1,s);if(/[&<]/.test(u))return/^script$/i.test(r)?(n.characters(u,0,u.length),s):(u=u.replace(/&#?\w+;/g,i),n.characters(u,0,u.length),s)}return t+1}function Mu(e,t,r,i){var n=i[r];return n==null&&(n=e.lastIndexOf("</"+r+">"),n<t&&(n=e.lastIndexOf("</"+r)),i[r]=n),n<t}function Oi(e,t){for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r])}function Bu(e,t,r,i){var n=e.charAt(t+2);switch(n){case"-":if(e.charAt(t+3)==="-"){var s=e.indexOf("-->",t+4);return s>t?(r.comment(e,t+4,s-t-4),s+3):(i.error("Unclosed comment"),-1)}else return-1;default:if(e.substr(t+3,6)=="CDATA["){var s=e.indexOf("]]>",t+9);return r.startCDATA(),r.characters(e,t+9,s-t-9),r.endCDATA(),s+3}var u=xu(e,t),l=u.length;if(l>1&&/!doctype/i.test(u[0][0])){var c=u[1][0],p=!1,m=!1;l>3&&(/^public$/i.test(u[2][0])?(p=u[3][0],m=l>4&&u[4][0]):/^system$/i.test(u[2][0])&&(m=u[3][0]));var d=u[l-1];return r.startDTD(c,p,m),r.endDTD(),d.index+d[0].length}}return-1}function Fu(e,t,r){var i=e.indexOf("?>",t);if(i){var n=e.substring(t,i).match(/^<\?(\S*)\s*([\s\S]*?)$/);if(n){var s=n[0].length;return r.processingInstruction(n[1],n[2]),i+2}else return-1}return-1}function Ii(){this.attributeNames={}}Ii.prototype={setTagName:function(e){if(!vi.test(e))throw new Error("invalid tagName:"+e);this.tagName=e},addValue:function(e,t,r){if(!vi.test(e))throw new Error("invalid attribute:"+e);this.attributeNames[e]=this.length,this[this.length++]={qName:e,value:t,offset:r}},length:0,getLocalName:function(e){return this[e].localName},getLocator:function(e){return this[e].locator},getQName:function(e){return this[e].qName},getURI:function(e){return this[e].uri},getValue:function(e){return this[e].value}};function xu(e,t){var r,i=[],n=/'[^']+'|"[^"]+"|[^\s<>\/=]+=?|(\/?\s*>|<)/g;for(n.lastIndex=t,n.exec(e);r=n.exec(e);)if(i.push(r),r[1])return i}nr.XMLReader=Si;nr.ParseError=be});var qi=M(Tt=>{var Pu=Le(),Ru=tr(),Mi=bi(),xi=Li(),qu=Ru.DOMImplementation,Bi=Pu.NAMESPACE,_u=xi.ParseError,ku=xi.XMLReader;function Pi(e){return e.replace(/\r[\n\u0085]/g,`
5
+ `).replace(/[\r\u0085\u2028]/g,`
6
+ `)}function Ri(e){this.options=e||{locator:{}}}Ri.prototype.parseFromString=function(e,t){var r=this.options,i=new ku,n=r.domBuilder||new je,s=r.errorHandler,u=r.locator,l=r.xmlns||{},c=/\/x?html?$/.test(t),p=c?Mi.HTML_ENTITIES:Mi.XML_ENTITIES;u&&n.setDocumentLocator(u),i.errorHandler=Uu(s,n,u),i.domBuilder=r.domBuilder||n,c&&(l[""]=Bi.HTML),l.xml=l.xml||Bi.XML;var m=r.normalizeLineEndings||Pi;return e&&typeof e=="string"?i.parse(m(e),l,p):i.errorHandler.error("invalid doc source"),n.doc};function Uu(e,t,r){if(!e){if(t instanceof je)return t;e=t}var i={},n=e instanceof Function;r=r||{};function s(u){var l=e[u];!l&&n&&(l=e.length==2?function(c){e(u,c)}:e),i[u]=l&&function(c){l("[xmldom "+u+"] "+c+ir(r))}||function(){}}return s("warning"),s("error"),s("fatalError"),i}function je(){this.cdata=!1}function Ce(e,t){t.lineNumber=e.lineNumber,t.columnNumber=e.columnNumber}je.prototype={startDocument:function(){this.doc=new qu().createDocument(null,null,null),this.locator&&(this.doc.documentURI=this.locator.systemId)},startElement:function(e,t,r,i){var n=this.doc,s=n.createElementNS(e,r||t),u=i.length;vt(this,s),this.currentElement=s,this.locator&&Ce(this.locator,s);for(var l=0;l<u;l++){var e=i.getURI(l),c=i.getValue(l),r=i.getQName(l),p=n.createAttributeNS(e,r);this.locator&&Ce(i.getLocator(l),p),p.value=p.nodeValue=c,s.setAttributeNode(p)}},endElement:function(e,t,r){var i=this.currentElement,n=i.tagName;this.currentElement=i.parentNode},startPrefixMapping:function(e,t){},endPrefixMapping:function(e){},processingInstruction:function(e,t){var r=this.doc.createProcessingInstruction(e,t);this.locator&&Ce(this.locator,r),vt(this,r)},ignorableWhitespace:function(e,t,r){},characters:function(e,t,r){if(e=Fi.apply(this,arguments),e){if(this.cdata)var i=this.doc.createCDATASection(e);else var i=this.doc.createTextNode(e);this.currentElement?this.currentElement.appendChild(i):/^\s*$/.test(e)&&this.doc.appendChild(i),this.locator&&Ce(this.locator,i)}},skippedEntity:function(e){},endDocument:function(){this.doc.normalize()},setDocumentLocator:function(e){(this.locator=e)&&(e.lineNumber=0)},comment:function(e,t,r){e=Fi.apply(this,arguments);var i=this.doc.createComment(e);this.locator&&Ce(this.locator,i),vt(this,i)},startCDATA:function(){this.cdata=!0},endCDATA:function(){this.cdata=!1},startDTD:function(e,t,r){var i=this.doc.implementation;if(i&&i.createDocumentType){var n=i.createDocumentType(e,t,r);this.locator&&Ce(this.locator,n),vt(this,n),this.doc.doctype=n}},warning:function(e){console.warn("[xmldom warning] "+e,ir(this.locator))},error:function(e){console.error("[xmldom error] "+e,ir(this.locator))},fatalError:function(e){throw new _u(e,this.locator)}};function ir(e){if(e)return`
7
+ @`+(e.systemId||"")+"#[line:"+e.lineNumber+",col:"+e.columnNumber+"]"}function Fi(e,t,r){return typeof e=="string"?e.substr(t,r):e.length>=t+r||t?new java.lang.String(e,t,r)+"":e}"endDTD,startEntity,endEntity,attributeDecl,elementDecl,externalEntityDecl,internalEntityDecl,resolveEntity,getExternalSubset,notationDecl,unparsedEntityDecl".replace(/\w+/g,function(e){je.prototype[e]=function(){return null}});function vt(e,t){e.currentElement?e.currentElement.appendChild(t):e.doc.appendChild(t)}Tt.__DOMHandler=je;Tt.normalizeLineEndings=Pi;Tt.DOMParser=Ri});var ki=M(Nt=>{var _i=tr();Nt.DOMImplementation=_i.DOMImplementation;Nt.XMLSerializer=_i.XMLSerializer;Nt.DOMParser=qi().DOMParser});var ji=M(Ve=>{"use strict";var ju=Ve&&Ve.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(Ve,"__esModule",{value:!0});Ve.parse=Hu;var Xu=ki(),Xe=ju(Zi("assert")),St=3,Ui=4,Vu=8;function ur(e){return e.nodeType===St||e.nodeType===Vu||e.nodeType===Ui}function re(e){return!e.childNodes||e.childNodes.length===0}function Hu(e){let t=new Xu.DOMParser({errorHandler(){}}).parseFromString(e);(0,Xe.default)(t.documentElement.nodeName==="plist","malformed document. First element should be <plist>");let r=ve(t.documentElement);return r.length===1&&(r=r[0]),r}function ve(e){let t,r,i,n,s,u;if(!e)return null;if(e.nodeName==="plist"){if(n=[],re(e))return n;for(t=0;t<e.childNodes.length;t++)ur(e.childNodes[t])||n.push(ve(e.childNodes[t]));return n}else if(e.nodeName==="dict"){if(r=Object.create(null),i=null,u=0,re(e))return r;for(t=0;t<e.childNodes.length;t++)if(!ur(e.childNodes[t])){if(u%2===0)(0,Xe.default)(e.childNodes[t].nodeName==="key","Missing key while parsing <dict/>."),i=ve(e.childNodes[t]);else{if(e.childNodes[t].nodeName==="key")throw new Error('Unexpected key "'+ve(e.childNodes[t])+'" while parsing <dict/>.');r[i]=ve(e.childNodes[t])}u+=1}if(u%2===1)throw new Error('Missing value for "'+i+'" while parsing <dict/>');return r}else if(e.nodeName==="array"){if(n=[],re(e))return n;for(t=0;t<e.childNodes.length;t++)ur(e.childNodes[t])||(s=ve(e.childNodes[t]),s!=null&&n.push(s));return n}else if(e.nodeName!=="#text"){if(e.nodeName==="key")return re(e)?"":e.childNodes[0].nodeValue;if(e.nodeName==="string"){if(s="",re(e))return s;for(t=0;t<e.childNodes.length;t++){let l=e.childNodes[t].nodeType;(l===St||l===Ui)&&(s+=e.childNodes[t].nodeValue)}return s}else{if(e.nodeName==="integer")return(0,Xe.default)(!re(e),'Cannot parse "" as integer.'),parseInt(e.childNodes[0].nodeValue,10);if(e.nodeName==="real"){for((0,Xe.default)(!re(e),'Cannot parse "" as real.'),s="",t=0;t<e.childNodes.length;t++)e.childNodes[t].nodeType===St&&(s+=e.childNodes[t].nodeValue);return parseFloat(s)}else if(e.nodeName==="data"){if(s="",re(e))return Buffer.from(s,"base64");for(t=0;t<e.childNodes.length;t++)e.childNodes[t].nodeType===St&&(s+=e.childNodes[t].nodeValue.replace(/\s+/g,""));return Buffer.from(s,"base64")}else{if(e.nodeName==="date")return(0,Xe.default)(!re(e),'Cannot parse "" as Date.'),new Date(e.childNodes[0].nodeValue);if(e.nodeName==="true")return!0;if(e.nodeName==="false")return!1}}}}});var Xi=M(sr=>{"use strict";Object.defineProperty(sr,"__esModule",{value:!0});var zu=$n(),Gu=ji();sr.default={parse:Gu.parse,build:zu.build}});var Dr="sootsimConfig";function le(e){return!!e&&Object.keys(e).length>0}function Qi(e){return e?le(e.modules)||le(e.turboModules)||le(e.nativeModules)||le(e.env)||le(e.network?.remap)||le(e.settings)||le(e.initialState):!1}function yr(e,t){let r=new URL(e);return Qi(t)?r.searchParams.set(Dr,JSON.stringify(t)):r.searchParams.delete(Dr),r.toString()}var Fs="/index.bundle?platform=ios&dev=true&hot=true&minify=false";function wr(e){return/^https?:\/\//i.test(e)}function Er(e){return e.endsWith(".bundle")}function eu(e){process.env.SOOTSIM_PREVIEW_PROD_BUNDLE&&(e.searchParams.set("dev","false"),e.searchParams.set("minify","true"),e.searchParams.has("hot")&&e.searchParams.set("hot","false"))}function Ar(e){try{let t=wr(e),r=new URL(e,"http://sootsim.local");return r.pathname=r.pathname.replace(/\.\.bundle$/,".bundle"),Er(r.pathname)?(r.searchParams.delete("transform.bytecode"),r.searchParams.get("lazy")==="true"&&r.searchParams.set("lazy","false"),eu(r),t?r.toString():`${r.pathname}${r.search}${r.hash}`):e}catch{return e}}function xs(e,t){try{let r=wr(e),i=new URL(e,"http://sootsim.local");return Er(i.pathname)?(i.searchParams.set("hot",t?"true":"false"),r?i.toString():`${i.pathname}${i.search}${i.hash}`):e}catch{return e}}import{exec as us}from"child_process";import ss from"http";import os from"net";import{promisify as as}from"util";var $i=Ji(Xi(),1);import{readFile as $u,readdir as Gi,stat as lr}from"node:fs/promises";import{join as fe}from"node:path";var cr=1048576,Wu=8,or=32,Wi=512,Vi=new Map;function It(e){return typeof e=="object"&&e!==null&&!Array.isArray(e)}function Yu(e){if(!It(e))return null;let t=e.parse;if(typeof t=="function")return n=>Reflect.apply(t,e,[n]);let r=e.default;if(!It(r))return null;let i=r.parse;return typeof i=="function"?n=>Reflect.apply(i,r,[n]):null}var Hi=Yu($i.default);function ae(e){return typeof e=="string"?e:void 0}function He(e){if(typeof e!="string")return null;let t=e.trim();return t||null}function Ot(e){return typeof e=="number"&&Number.isFinite(e)?e:null}function ar(e){return typeof e=="string"||typeof e=="boolean"?e:Ot(e)}function Ku(e){if(typeof e=="string")switch(e.replaceAll(/[-_\s]/g,"").toLowerCase()){case"alphabet":return"alphabet";case"numbersandpunctuation":return"numbers-and-punctuation";case"numberpad":return"number-pad";case"url":return"url";case"emailaddress":return"email-address";case"namephonepad":return"name-phone-pad";case"asciicapable":return"ascii-capable";default:return}}function Zu(e){if(typeof e=="string")switch(e.replaceAll(/[-_\s]/g,"").toLowerCase()){case"none":return"none";case"sentences":return"sentences";case"words":return"words";case"allcharacters":return"all-characters";default:return}}function Ju(e){if(typeof e=="boolean")return e;if(typeof e=="string")switch(e.trim().toLowerCase()){case"yes":return!0;case"no":return!1;default:return}}function Qu(e){let t=He(e);return!t||t.includes("/")||t.includes("\\")||t.includes("..")?null:{file:t,name:t.toLowerCase().endsWith(".plist")?t:`${t}.plist`}}async function zi(e){try{let t=await lr(fe(e,"Root.plist"));return t.isFile()&&t.size<=cr}catch{return!1}}async function es(e){let t=[fe(e,"Settings.bundle"),fe(e,"ios","Settings.bundle")];for(let r of t)if(await zi(r))return r;try{let r=fe(e,"ios"),n=(await Gi(r,{withFileTypes:!0})).filter(s=>s.isDirectory()&&s.name!=="Pods"&&s.name!=="build"&&!s.name.startsWith(".")).map(s=>fe(r,s.name,"Settings.bundle")).sort();for(let s of n)if(await zi(s))return s}catch{}return null}async function ts(e){try{let r=(await Gi(e,{withFileTypes:!0})).filter(n=>n.isFile()&&n.name.toLowerCase().endsWith(".plist")).map(n=>n.name).sort().slice(0,or+1);if(r.length===0||r.length>or)return null;let i=await Promise.all(r.map(async n=>{let s=await lr(fe(e,n));return!s.isFile()||s.size>cr?null:`${n}:${s.size}:${s.mtimeMs}:${s.ctimeMs}`}));return i.some(n=>n===null)?null:i.join("|")}catch{return null}}async function rs(e){try{if(!Hi)return null;let t=await lr(e);if(!t.isFile()||t.size>cr)return null;let r=await $u(e,"utf8"),i=Hi(r);return It(i)?i:null}catch{return null}}function ns(e,t,r){if(!Array.isArray(e.Values)||!Array.isArray(e.Titles))return null;let i=[],n=[],s,u=Math.min(e.Values.length,e.Titles.length);for(let m=0;m<u;m++){let d=ar(e.Values[m]),y=ae(e.Titles[m]);if(d===null||y===void 0)continue;let b=typeof d=="string"?"string":typeof d=="number"?"number":"boolean";s!==void 0&&b!==s||(s=b,i.push(d),n.push(y))}let l=i[0];if(l===void 0)return null;let c=ar(e.DefaultValue),p=c!==null&&i.includes(c)?c:l;return{type:"multi-value",key:t,title:r,defaultValue:p,currentValue:p,values:i,titles:n}}async function is(e,t){if(!It(e)||t.budget.specifiers>=Wi)return null;let r=He(e.Type);if(!r)return null;if(t.budget.specifiers+=1,r==="PSGroupSpecifier"){let s=ae(e.Title),u=ae(e.FooterText);return{type:"group",...s!==void 0?{title:s}:null,...u!==void 0?{footer:u}:null}}let i=He(e.Key);if(r==="PSSliderSpecifier"){if(!i)return null;let s=Ot(e.MinimumValue),u=Ot(e.MaximumValue);if(s===null||u===null||u<=s)return null;let l=Ot(e.DefaultValue),c=Math.min(u,Math.max(s,l??s)),p=ae(e.Title),m=ae(e.MinimumValueImage),d=ae(e.MaximumValueImage);return{type:"slider",key:i,defaultValue:c,currentValue:c,minimumValue:s,maximumValue:u,...p!==void 0?{title:p}:null,...m!==void 0?{minimumValueImage:m}:null,...d!==void 0?{maximumValueImage:d}:null}}if(r==="PSChildPaneSpecifier"){let s=He(e.Title),u=Qu(e.File);if(!s||!u||t.depth>=Wu)return null;let l=await Yi(u.name,{...t,depth:t.depth+1});return!l||l.length===0?null:{type:"child-pane",title:s,file:u.file,specifiers:l}}if(!i)return null;let n=He(e.Title)??i;if(r==="PSToggleSwitchSpecifier"){let s=typeof e.DefaultValue=="boolean"?e.DefaultValue:!1;return{type:"toggle",key:i,title:n,defaultValue:s,currentValue:s}}if(r==="PSTextFieldSpecifier"){let s=ae(e.DefaultValue)??"",u=ae(e.Placeholder),l=Ku(e.KeyboardType),c=Zu(e.AutocapitalizationType),p=Ju(e.AutocorrectionType);return{type:"text",key:i,title:n,defaultValue:s,currentValue:s,...u!==void 0?{placeholder:u}:null,...typeof e.IsSecure=="boolean"?{secure:e.IsSecure}:null,...l?{keyboardType:l}:null,...c?{autocapitalization:c}:null,...p!==void 0?{autocorrection:p}:null}}if(r==="PSMultiValueSpecifier"||r==="PSRadioGroupSpecifier")return ns(e,i,n);if(r==="PSTitleValueSpecifier"){let s=ar(e.DefaultValue)??"";return{type:"title-value",key:i,title:n,defaultValue:s,currentValue:s}}return null}async function Yi(e,t){let r=t.fileCache.get(e);if(r!==void 0)return r;if(t.stack.has(e)||t.budget.files>=or)return null;t.budget.files+=1;let i=await rs(fe(t.bundlePath,e));if(!i||!Array.isArray(i.PreferenceSpecifiers))return t.fileCache.set(e,null),null;let n=new Set(t.stack);n.add(e);let s=[];for(let u of i.PreferenceSpecifiers){if(t.budget.specifiers>=Wi)break;let l=await is(u,{...t,stack:n});l&&s.push(l)}return t.fileCache.set(e,s),s}async function Ki(e){let t=await es(e);if(!t)return null;let r=await ts(t);if(!r)return null;let i=Vi.get(t);if(i?.fingerprint===r)return i.specifiers;let n=await Yi("Root.plist",{bundlePath:t,depth:0,budget:{files:0,specifiers:0},stack:new Set,fileCache:new Map}),s=n&&n.length>0?n:null;return Vi.set(t,{fingerprint:r,specifiers:s}),s}var pr=as(us);xt();var ls=250,cs=1500,hs=120;function fs(e,t=hs){return new Promise(r=>{let i=new os.Socket,n=!1,s=u=>{n||(n=!0,i.destroy(),r(u))};i.setTimeout(t),i.once("connect",()=>s(!0)),i.once("timeout",()=>s(!1)),i.once("error",()=>s(!1)),i.connect(e,"localhost")})}function Te(e,t,r="GET",i=ls,n={}){return new Promise(s=>{let u=ss.request({hostname:"localhost",port:e,path:t,method:r,timeout:i,headers:n},l=>{let c="";l.on("data",m=>c+=m.toString());let p=(()=>{let m=l.headers["content-type"];if(typeof m=="string")return m;if(Array.isArray(m))return m[0]})();l.on("end",()=>s({statusCode:l.statusCode||0,body:c,contentType:p}))});u.on("error",()=>s(null)),u.setTimeout(i,()=>{u.destroy(),s(null)}),u.end()})}var ds=[8081,8082,8083,8084,8085,8086,3e3,3001,19e3].map(e=>({port:e,pid:0}));function hr(e,t){return!(e<=0||e>=2e4||t.has(e)||e>=5170&&e<=5200)}async function ps(e=[]){let t=new Set(e);try{let{stdout:r}=await pr("lsof -iTCP -sTCP:LISTEN -P -n 2>/dev/null | grep -E '^(node|bun)'",{encoding:"utf8",timeout:2e3});if(r.trim()){let i=new Map;for(let n of r.trim().split(`
8
+ `)){let s=n.trim().split(/\s+/);if(s.length<9)continue;let u=Number(s[1]),c=s[8].match(/:(\d+)$/);if(!c)continue;let p=Number(c[1]);hr(p,t)&&(i.has(p)||i.set(p,u))}if(i.size>0)return[...i.entries()].map(([n,s])=>({port:n,pid:s}))}}catch{}try{let{stdout:r}=await pr(`ss -tlnp 2>/dev/null | grep -E '"(node|bun)"'`,{encoding:"utf8",timeout:2e3});if(r.trim()){let i=new Map;for(let n of r.trim().split(`
9
+ `)){let s=n.match(/:(\d+)\s/),u=n.match(/pid=(\d+)/);if(!s)continue;let l=Number(s[1]),c=u?Number(u[1]):0;hr(l,t)&&(i.has(l)||i.set(l,c))}if(i.size>0)return[...i.entries()].map(([n,s])=>({port:n,pid:s}))}}catch{}return ds.filter(r=>hr(r.port,t))}var Lt=new Map;async function ms(e){if(e<=0)return null;let t=Lt.get(e);if(t)return t;try{let{stdout:r}=await pr(`lsof -p ${e} -a -d cwd -Fn 2>/dev/null`,{encoding:"utf8",timeout:1500});for(let i of r.split(`
10
+ `))if(i.startsWith("n")&&i.length>1){let n=i.slice(1).trim();if(n)return Lt.set(e,n),n}}catch{}return null}function gs(e,t){return{port:e,framework:t,bundleUrl:Ne(e,`http://localhost:${e}/index.bundle?platform=ios&dev=true&hot=true&minify=false`),hmrUrl:`ws://localhost:${e}/hot`,lastSeen:Date.now()}}function Ne(e,t){let r=gr().find(n=>n.preferredPort===e),i=r?.runtimeConfig?yr(t,r.runtimeConfig):t;return Ar(i)}function Ds(e){return e.includes("/node_modules/one/metro-entry.bundle")}function ys(e){try{let t=JSON.parse(e);return t&&typeof t=="object"?t:null}catch{return null}}function ze(e,t,r){if(!t)return e;try{let i=JSON.parse(t.body),n=i?.extra?.expoClient||i?.extra||{};n.name&&(e.projectName=n.name),n.ios?.bundleIdentifier&&(e.bundleId=n.ios.bundleIdentifier),e.framework==="metro"&&n.sdkVersion&&(e.framework="expo");let s=i?.launchAsset?.url;s&&!e.patched&&!Ds(e.bundleUrl)&&(e.bundleUrl=Ne(e.port,s));let u=n.iconUrl||n.ios?.iconUrl||n.icon||n.ios?.icon;if(u)if(e.iconPath=u,r)if(u.startsWith("http"))e.iconUrl=r(u);else{let l=u.replace(/^\.\//,"");e.iconUrl=r(`http://localhost:${e.port}/assets/${l}`)}else e.iconUrl=u.startsWith("http")?u:`http://localhost:${e.port}/assets/${u.replace(/^\.\//,"")}`}catch{}return e}var ws=2e4,$e=new Map,fr=new Set;function dr(e,t){if(e.projectName)return e;let r=$e.get(e.port);if(r)return r.projectName&&(e.projectName=r.projectName),r.iconUrl&&!e.iconUrl&&(e.iconUrl=r.iconUrl,e.iconPath=r.iconPath),r.bundleId&&!e.bundleId&&(e.bundleId=r.bundleId),e;if(!fr.has(e.port)){fr.add(e.port);let i=e.port;Es(i,t).finally(()=>fr.delete(i))}return e}async function Es(e,t){let r=await Te(e,"/","GET",ws,{"expo-platform":"ios"});if(!r||r.statusCode!==200)return;let i=ze({port:e,framework:"one",bundleUrl:"",lastSeen:0},r,t);!i.projectName&&!i.iconUrl||($e.set(e,{projectName:i.projectName,iconUrl:i.iconUrl,iconPath:i.iconPath,bundleId:i.bundleId}),Ge.delete(e))}var ne=new Set,de=new Set,We=new Set;async function As(e,t){if(!await fs(e))return null;let r="/node_modules/one/metro-entry.bundle?platform=ios&dev=true",[i,n,s,u]=await Promise.all([ne.has(e)?Promise.resolve(null):Te(e,"/__soot/"),Te(e,"/status"),We.has(e)?Promise.resolve(null):Te(e,"/","GET",cs,{"expo-platform":"ios"}),de.has(e)?Promise.resolve(null):Te(e,"/_expo/status")]);u&&u.statusCode===200?de.delete(e):de.has(e)||de.add(e);let l=s?ys(s.body):null,c=typeof l?.launchAsset?.url=="string"?l.launchAsset.url:null,p=l?.extra?.expoClient||l?.extra||{};if(l&&(c||typeof p.name=="string")){ne.add(e);let y=c||`http://localhost:${e}/index.bundle?platform=ios&dev=true&hot=true&minify=false`,b=y.includes("/one/metro-entry.bundle")?"one":"expo";return ze({port:e,framework:b,bundleUrl:Ne(e,y),hmrUrl:`ws://localhost:${e}/hot`,lastSeen:Date.now()},s,t)}if(n&&n.body.includes("packager-status:running"))return ne.add(e),dr(ze(gs(e,u&&u.statusCode===200?"expo":"metro"),s,t),t);if(i&&i.statusCode===200&&i.body.includes("sootsim-patched"))return ne.delete(e),dr(ze({port:e,framework:"one",bundleUrl:Ne(e,`http://localhost:${e}/__soot/bundle.js`),hmrUrl:`ws://localhost:${e}/hot`,lastSeen:Date.now(),patched:!0},s,t),t);if(n&&n.statusCode===200||u&&u.statusCode===200||s&&s.statusCode===200&&l!=null)return null;let d=await Te(e,r,"HEAD");return d&&d.statusCode>0&&d.statusCode<400&&/application\/javascript/i.test(d.contentType||"")?(ne.add(e),We.add(e),dr(ze({port:e,framework:"one",bundleUrl:Ne(e,`http://localhost:${e}${r}&minify=false`),hmrUrl:`ws://localhost:${e}/hot`,lastSeen:Date.now()},s,t),t)):(ne.add(e),null)}function bs(e){return!!e.bundleId?.trim().toLowerCase()?.startsWith("dev.sootsim.")}var Ge=new Map,Cs=3e4,vs=1500;function Ts(e){return!e||e.framework==="metro"||e.framework==="unknown"}function Ns(e){return e?Ne(e.port,e.bundleUrl)===e.bundleUrl:!0}function Ss(e,t,r=Date.now()){if(t===0||e.pid!==t||!Ns(e.result))return!1;let i=r-e.cachedAt;return!(e.result===null&&i>=Cs||Ts(e.result)&&i>=vs)}async function Os(e,t){let r=await Ki(t);r?(e.settingsBundle=r,e.settingsStorageScopeUrl=e.bundleUrl):(delete e.settingsBundle,delete e.settingsStorageScopeUrl)}async function Io(e={}){await xt();let t=await ps(e.excludePorts),r=new Set(t.map(l=>l.port));for(let l of[...Ge.keys()])r.has(l)||Ge.delete(l);for(let l of[...ne])r.has(l)||ne.delete(l);for(let l of[...de])r.has(l)||de.delete(l);for(let l of[...We])r.has(l)||We.delete(l);for(let l of[...$e.keys()])r.has(l)||$e.delete(l);let i=[],n=[];for(let{port:l,pid:c}of t){let p=Ge.get(l);if(p&&Ss(p,c)){p.result&&i.push(p.result);continue}p&&p.pid!==c&&(ne.delete(l),de.delete(l),We.delete(l),$e.delete(l)),n.push({port:l,pid:c})}n.length>0&&(await Promise.all(n.map(c=>As(c.port,e.buildIconProxyUrl)))).forEach((c,p)=>{let{port:m,pid:d}=n[p];d!==0&&Ge.set(m,{pid:d,result:c,cachedAt:Date.now()}),c&&i.push(c)});let s=new Map;for(let{port:l,pid:c}of t)c>0&&s.set(l,c);await Promise.all(i.map(async l=>{let c=s.get(l.port);if(!c)return;l.pid=c;let p=await ms(c);p&&(l.cwd=p,await Os(l,p))}));let u=new Set(s.values());for(let l of[...Lt.keys()])u.has(l)||Lt.delete(l);return i.filter(l=>!bs(l))}function Is(e){return e.replace(/^\[|\]$/g,"").toLowerCase()}function Mo(e){let t=Is(e);return t==="localhost"||t.endsWith(".localhost")||t==="0.0.0.0"||t==="::1"||/^127(?:\.\d{1,3}){3}$/.test(t)}import Ye from"fs";import ie from"path";import{fileURLToPath as Ls}from"url";var Mt;function Ms(){if(Mt!==void 0)return Mt;let e=ie.dirname(Ls(import.meta.url));for(let t=0;t<12&&e!==ie.dirname(e);t++){if(Ye.existsSync(ie.join(e,"packages/sootsim-engine/package.json"))&&Ye.existsSync(ie.join(e,"public/sootsim")))return Mt=e,e;e=ie.dirname(e)}return Mt=null,null}function _o(){if(process.env.SOOTSIM_HOME&&mr())return null;let e=Ms();if(!e)return null;let t=ie.join(e,"public/sootsim");return Ye.existsSync(ie.join(t,"index.html"))&&Ye.existsSync(ie.join(t,"engine/index.html"))&&Ye.existsSync(ie.join(t,"engine-tenant/worker.js"))?t:null}export{yr as a,Fs as b,Ar as c,xs as d,As as e,Io as f,Mo as g,_o as h};
@@ -1,5 +1,5 @@
1
- /*! sootsim v0.1.291 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a as K,b as V,c as Ne}from"./chunk-NPP6ZJLD.js";import{c as Pe}from"./chunk-OC6PU44E.js";import{d as _e}from"./chunk-QOIOK64H.js";import{d as Oe}from"./chunk-GJDCBMAP.js";import{g as $e,i as Fe,k as B}from"./chunk-5CJQNMXY.js";import{c as Ue,d as E}from"./chunk-HQRKN435.js";import{a as Ae}from"./chunk-KQKLLUX5.js";import{createHash as St}from"crypto";import{readFileSync as M}from"fs";import je from"path";import{gzipSync as ge,gunzipSync as vt}from"zlib";function Ce(e){let t=(e||"").toLowerCase().split(";")[0].trim();return t?!(t.startsWith("image/")||t.startsWith("video/")||t.startsWith("audio/")||t==="font/woff2"||t==="application/font-woff2"||t==="application/zip"||t==="application/gzip"):!0}import{brotliCompressSync as ut,constants as ct}from"node:zlib";var dt=9;function Le(e){return ut(e,{params:{[ct.BROTLI_PARAM_QUALITY]:dt}})}function ce(e,t){let r=new AbortController,s=setTimeout(()=>r.abort(new Error(`${t} timed out after ${e/1e3}s`)),e);return{signal:r.signal,cancel:()=>clearTimeout(s)}}async function pt(e){let t=ce(12e4,`PUT ${e.url}`),r;try{r=await fetch(e.url,{method:"PUT",headers:{"content-type":e.contentType},body:e.bytes,signal:t.signal})}finally{t.cancel()}if(!r.ok){let s=await r.text().catch(()=>"");throw new Error(`PUT ${e.url} failed ${r.status}: ${s.slice(0,200)}`)}}async function mt(e,t=8,r){let s=0,o=0,i=e.length;await Promise.all(Array.from({length:Math.min(t,i)},async()=>{for(;s<i;){let l=e[s++];await pt(l),o++,r?.(o,i)}}))}function ft(e,t,r,s){let o=[];o.push({url:e.bundle.putUrl,contentType:e.bundle.contentType,bytes:t});for(let i of e.files){let l=r.get(i.urlhash);l&&o.push({url:i.putUrl,contentType:i.contentType,bytes:l})}e.events&&s?.eventsBytes&&o.push({url:e.events.putUrl,contentType:e.events.contentType,bytes:s.eventsBytes}),e.timeline&&s?.timelineBytes&&o.push({url:e.timeline.putUrl,contentType:e.timeline.contentType,bytes:s.timelineBytes}),e.flowVideo&&s?.videoBytes&&o.push({url:e.flowVideo.putUrl,contentType:e.flowVideo.contentType,bytes:s.videoBytes}),e.storage&&s?.storageBytes&&o.push({url:e.storage.putUrl,contentType:e.storage.contentType,bytes:s.storageBytes}),e.failureBundle&&s?.failureBundleBytes&&o.push({url:e.failureBundle.putUrl,contentType:e.failureBundle.contentType,bytes:s.failureBundleBytes});for(let i of e.snapshots??[]){let l=s?.snapshotBytes?.get(i.id);l&&o.push({url:i.putUrl,contentType:i.contentType,bytes:l})}return o}function gt(e){return e.replace(/\/+$/,"")}var W=class extends Error{constructor(r,s,o,i=""){super(r);this.status=s;this.phase=o;this.responseText=i;this.name="PresignedUploadError"}};async function ze(e){let t=gt(e.originBase),r={"content-type":"application/json"};e.authHeader&&(r.authorization=e.authHeader),e.adminBypassToken&&(r["x-contrast-admin-upload-bypass"]=e.adminBypassToken);let s=ce(3e4,"init"),o;try{o=await fetch(`${t}/api/preview/upload/init`,{method:"POST",headers:r,body:JSON.stringify(e.initBody),signal:s.signal})}finally{s.cancel()}if(!o.ok){let T=await o.text().catch(()=>"");throw new W(`init failed: ${o.status} ${T.slice(0,200)}`,o.status,"init",T)}let i=await o.json(),l=ft(i,e.bundleBytes,e.filesByHash,e.extras);await mt(l,e.concurrency??8,e.onPutProgress);let m=ce(3e4,"finalize"),c;try{c=await fetch(`${t}/api/preview/upload/finalize`,{method:"POST",headers:r,body:JSON.stringify({token:i.token}),signal:m.signal})}finally{m.cancel()}if(!c.ok){let T=await c.text().catch(()=>"");throw new W(`finalize failed: ${c.status} ${T.slice(0,200)}`,c.status,"finalize",T)}let h=await c.json();return{init:i,finalize:h}}function ht(e){return e!==null&&typeof e=="object"?e:null}function De(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}function de(e){let t=ht(e);return t?t.schemaVersion===1&&De(t.t)!==void 0&&De(t.seq)!==void 0&&typeof t.context=="string"&&typeof t.kind=="string"&&"data"in t:!1}function yt(e,t){let r=[];for(let s of e.split(`
1
+ /*! sootsim v0.1.293 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
+ import{a as K,b as V,c as Ne}from"./chunk-DE4ZA3NL.js";import{c as Pe}from"./chunk-ACSTEPSD.js";import{d as _e}from"./chunk-MOU2WLO4.js";import{d as Oe}from"./chunk-JOPKZVOW.js";import{g as $e,i as Fe,k as B}from"./chunk-J6P2UPXH.js";import{c as Ue,d as E}from"./chunk-7H5G4HUK.js";import{a as Ae}from"./chunk-547W23BB.js";import{createHash as St}from"crypto";import{readFileSync as M}from"fs";import je from"path";import{gzipSync as ge,gunzipSync as vt}from"zlib";function Ce(e){let t=(e||"").toLowerCase().split(";")[0].trim();return t?!(t.startsWith("image/")||t.startsWith("video/")||t.startsWith("audio/")||t==="font/woff2"||t==="application/font-woff2"||t==="application/zip"||t==="application/gzip"):!0}import{brotliCompressSync as ut,constants as ct}from"node:zlib";var dt=9;function Le(e){return ut(e,{params:{[ct.BROTLI_PARAM_QUALITY]:dt}})}function ce(e,t){let r=new AbortController,s=setTimeout(()=>r.abort(new Error(`${t} timed out after ${e/1e3}s`)),e);return{signal:r.signal,cancel:()=>clearTimeout(s)}}async function pt(e){let t=ce(12e4,`PUT ${e.url}`),r;try{r=await fetch(e.url,{method:"PUT",headers:{"content-type":e.contentType},body:e.bytes,signal:t.signal})}finally{t.cancel()}if(!r.ok){let s=await r.text().catch(()=>"");throw new Error(`PUT ${e.url} failed ${r.status}: ${s.slice(0,200)}`)}}async function mt(e,t=8,r){let s=0,o=0,i=e.length;await Promise.all(Array.from({length:Math.min(t,i)},async()=>{for(;s<i;){let l=e[s++];await pt(l),o++,r?.(o,i)}}))}function ft(e,t,r,s){let o=[];o.push({url:e.bundle.putUrl,contentType:e.bundle.contentType,bytes:t});for(let i of e.files){let l=r.get(i.urlhash);l&&o.push({url:i.putUrl,contentType:i.contentType,bytes:l})}e.events&&s?.eventsBytes&&o.push({url:e.events.putUrl,contentType:e.events.contentType,bytes:s.eventsBytes}),e.timeline&&s?.timelineBytes&&o.push({url:e.timeline.putUrl,contentType:e.timeline.contentType,bytes:s.timelineBytes}),e.flowVideo&&s?.videoBytes&&o.push({url:e.flowVideo.putUrl,contentType:e.flowVideo.contentType,bytes:s.videoBytes}),e.storage&&s?.storageBytes&&o.push({url:e.storage.putUrl,contentType:e.storage.contentType,bytes:s.storageBytes}),e.failureBundle&&s?.failureBundleBytes&&o.push({url:e.failureBundle.putUrl,contentType:e.failureBundle.contentType,bytes:s.failureBundleBytes});for(let i of e.snapshots??[]){let l=s?.snapshotBytes?.get(i.id);l&&o.push({url:i.putUrl,contentType:i.contentType,bytes:l})}return o}function gt(e){return e.replace(/\/+$/,"")}var W=class extends Error{constructor(r,s,o,i=""){super(r);this.status=s;this.phase=o;this.responseText=i;this.name="PresignedUploadError"}};async function ze(e){let t=gt(e.originBase),r={"content-type":"application/json"};e.authHeader&&(r.authorization=e.authHeader),e.adminBypassToken&&(r["x-contrast-admin-upload-bypass"]=e.adminBypassToken);let s=ce(3e4,"init"),o;try{o=await fetch(`${t}/api/preview/upload/init`,{method:"POST",headers:r,body:JSON.stringify(e.initBody),signal:s.signal})}finally{s.cancel()}if(!o.ok){let T=await o.text().catch(()=>"");throw new W(`init failed: ${o.status} ${T.slice(0,200)}`,o.status,"init",T)}let i=await o.json(),l=ft(i,e.bundleBytes,e.filesByHash,e.extras);await mt(l,e.concurrency??8,e.onPutProgress);let m=ce(3e4,"finalize"),c;try{c=await fetch(`${t}/api/preview/upload/finalize`,{method:"POST",headers:r,body:JSON.stringify({token:i.token}),signal:m.signal})}finally{m.cancel()}if(!c.ok){let T=await c.text().catch(()=>"");throw new W(`finalize failed: ${c.status} ${T.slice(0,200)}`,c.status,"finalize",T)}let h=await c.json();return{init:i,finalize:h}}function ht(e){return e!==null&&typeof e=="object"?e:null}function De(e){return typeof e=="number"&&Number.isFinite(e)?e:void 0}function de(e){let t=ht(e);return t?t.schemaVersion===1&&De(t.t)!==void 0&&De(t.seq)!==void 0&&typeof t.context=="string"&&typeof t.kind=="string"&&"data"in t:!1}function yt(e,t){let r=[];for(let s of e.split(`
3
3
  `)){let o=s.trim();if(o)try{let i=JSON.parse(o);t(i)&&r.push(i)}catch{}}return r}function He(e){return yt(e,de)}import{execSync as bt}from"child_process";function me(e){try{return bt(e,{stdio:["ignore","pipe","ignore"],timeout:3e3,encoding:"utf8"}).trim()||null}catch{return null}}function pe(e){let t=e?.trim();return!t||!/^\d+$/.test(t)?null:Number(t)}function wt(){let e=me("git remote get-url origin");if(!e)return null;let t=e.match(/github\.com[/:]([^/\s]+)\/([^/\s]+?)(?:\.git)?\/?$/i);return t?{owner:t[1],repo:t[2]}:null}function fe(){let e=process.env.GITHUB_ACTIONS==="true",t=process.env.CONTRAST_BRANCH?.trim()||null,r=process.env.CONTRAST_SHA?.trim()||null,s=process.env.CONTRAST_PR_TITLE?.trim()||null,o=(process.env.CONTRAST_REPO||process.env.GITHUB_REPOSITORY||"").trim(),[i,l]=o.includes("/")?o.split("/",2):[null,null];if(e){let h=process.env.GITHUB_REF?.match(/^refs\/pull\/(\d+)\//)?.[1];return{owner:i,repo:l,branch:t||process.env.GITHUB_HEAD_REF?.trim()||process.env.GITHUB_REF_NAME?.trim()||null,commitSha:r||process.env.GITHUB_SHA?.trim()||null,githubUsername:process.env.GITHUB_ACTOR?.trim()||null,pullRequestNumber:pe(process.env.CONTRAST_PR_NUMBER)??pe(h),pullRequestTitle:s,githubRunId:process.env.GITHUB_RUN_ID?.trim()||null,source:"ci"}}let m=t??me("git rev-parse --abbrev-ref HEAD"),c=i?null:wt();return{owner:i??c?.owner??null,repo:l??c?.repo??null,branch:m==="HEAD"?null:m,commitSha:r??me("git rev-parse HEAD"),githubUsername:null,pullRequestNumber:pe(process.env.CONTRAST_PR_NUMBER),pullRequestTitle:s,githubRunId:null,source:"cli"}}function Yt(e){if(e.length===0)return{stepCount:null,failedStepIndex:null};let t=e.find(r=>r.status==="failure");return{stepCount:e.length,failedStepIndex:t?t.stepIndex:null}}function Qt(e){return e.auth?e.uploadedShare?!0:e.auth.kind==="github"||process.env.GITHUB_ACTIONS==="true":!1}async function Xt(e){let t=e.auth??K();if(!t)return null;let r=fe(),s=e.owner??(t.kind==="github"?t.owner:null)??r.owner,o=e.repo??(t.kind==="github"?t.repo:null)??r.repo;try{let i=await fetch(`${e.origin.replace(/\/$/,"")}/api/sootsim/test-runs`,{method:"POST",headers:{"content-type":"application/json",authorization:V(t)},body:JSON.stringify({kind:e.kind,source:r.source,name:e.name??void 0,prompt:e.prompt??void 0,summary:e.summary??void 0,status:e.status,failureMessage:e.failureMessage??void 0,previewShareId:e.previewShareId??void 0,owner:s??void 0,repo:o??void 0,branch:r.branch??void 0,commitSha:r.commitSha??void 0,githubUsername:r.githubUsername??void 0,pullRequestNumber:r.pullRequestNumber??void 0,githubRunId:r.githubRunId??void 0,stepCount:e.stepCount??void 0,failedStepIndex:e.failedStepIndex??void 0,durationMs:e.durationMs??void 0,flowYamlSizeBytes:e.flowYamlSizeBytes??void 0})});if(!i.ok){let m=await i.text().catch(()=>"");return console.warn(` warn: run registration failed: /api/sootsim/test-runs ${i.status}${m?`: ${m.slice(0,200)}`:""}`),null}let l=await i.json();return l.run?.id?{id:l.run.id,previewUrl:l.run.previewUrl??null,traceUrl:l.run.traceUrl??null}:(console.warn(" warn: run registration returned no id"),null)}catch(i){return console.warn(` warn: run registration failed: ${i instanceof Error?i.message:String(i)}`),null}}function Rt(e){if(!e)return null;try{let t=JSON.parse(e);return typeof t.message=="string"&&t.message?t.message:null}catch{return null}}function xt(e){let t=JSON.parse(M(e,"utf8"));if(!Array.isArray(t))throw new Error("snapshot manifest must be an array");let r=new Set;return t.map((s,o)=>{if(s===null||typeof s!="object")throw new Error(`snapshot manifest entry ${o} must be an object`);let i=Reflect.get(s,"id"),l=Reflect.get(s,"label"),m=Reflect.get(s,"path"),c=Reflect.get(s,"t");if(typeof i!="string"||!i||r.has(i))throw new Error(`snapshot manifest entry ${o} has an invalid or duplicate id`);if(typeof m!="string"||!m)throw new Error(`snapshot manifest entry ${o} has no PNG path`);if(typeof c!="number"||!Number.isFinite(c)||c<0)throw new Error(`snapshot manifest entry ${o} has an invalid capture time`);r.add(i);let h=M(m);return{meta:{id:i,label:typeof l=="string"&&l?l:i,kind:"interaction",t:Math.round(c),contentType:"image/png",sizeBytes:h.byteLength},bytes:h}})}var Ve=process.env.SOOTSIM_UPLOAD_ORIGIN||"https://contrast.dev",We=process.env.SOOTSIM_PREVIEW_ORIGIN||"https://sootsim.com",ye="https://contrast.localhost:3000",kt=2e3;async function Et(e){if(e)return e;if(process.env.SOOTSIM_UPLOAD_ORIGIN)return process.env.SOOTSIM_UPLOAD_ORIGIN;try{let t=await fetch(`${ye}/api/preview/upload/init`,{method:"OPTIONS",signal:AbortSignal.timeout(kt)});if(t.ok||t.status===204||t.status===405)return ye}catch{}return Ve}function N(e){return e.replace(/\/$/,"")}function Bt(e){try{let r=new URL(e).hostname.replace(/^\[|\]$/g,"").toLowerCase();return r==="localhost"||r.endsWith(".localhost")||r==="0.0.0.0"||r==="::1"||/^127(?:\.\d{1,3}){3}$/.test(r)}catch{return!1}}function It(e){try{let t=new URL(e).hostname.toLowerCase();return t==="contrast.dev"||t.endsWith(".contrast.dev")}catch{return!1}}function At(e,t){return t?N(t):process.env.SOOTSIM_PREVIEW_ORIGIN?N(process.env.SOOTSIM_PREVIEW_ORIGIN):Bt(e)?N(e):It(e)?N(We):N(e)}function Ut(){console.log(`
4
4
  sootsim record upload \u2014 publish the current recorded bundle as a /preview/<id> link
5
5
 
@@ -1,5 +1,5 @@
1
- /*! sootsim v0.1.291 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
- import{a as R}from"./chunk-76O3ZWTI.js";import{o as T}from"./chunk-5NGZRMTN.js";import{a as D}from"./chunk-ZEYCE3XJ.js";function Y(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.type=="string"&&typeof t.ts=="number"}function I(e){let t=e.trim();if(!t)return null;try{let r=JSON.parse(t);return Y(r)?r:null}catch{return null}}import{randomBytes as G,createHash as q}from"node:crypto";import f from"node:fs";import h from"node:path";var N=null;function _(){if(N)return N;let e=process.env.SOOTSIM_USER_DATA_DIR;return e||T()}function y(){return _()}function B(){return h.join(_(),"attached-projects.json")}function $(){return{version:1,attachedProjects:[],previewAttachments:[],agentSessions:[]}}function S(){let e=B(),t;try{t=f.readFileSync(e,"utf8")}catch(r){if(r.code==="ENOENT")return $();throw r}try{let r=JSON.parse(t);if(!r||typeof r!="object")throw new Error("not an object");return{version:1,attachedProjects:Array.isArray(r.attachedProjects)?r.attachedProjects:[],previewAttachments:Array.isArray(r.previewAttachments)?r.previewAttachments:[],agentSessions:Array.isArray(r.agentSessions)?r.agentSessions:[]}}catch(r){let n=`${e}.corrupt-${Date.now()}`;try{f.renameSync(e,n),console.warn(`[sootsim] attached-projects.json was unparseable; quarantined to ${n}. original error: ${r.message}`)}catch{}return $()}}function X(e){let t=B();f.mkdirSync(h.dirname(t),{recursive:!0});let r=`${t}.tmp-${process.pid}-${Date.now()}`,n=f.openSync(r,"w",384);try{f.writeFileSync(n,JSON.stringify(e,null,2)),f.fsyncSync(n)}finally{f.closeSync(n)}f.renameSync(r,t)}function w(e){let t=S();return e(t),X(t),t}function U(e){return q("sha256").update(h.resolve(e)).digest("hex").slice(0,16)}function K(){return`s_${G(10).toString("hex")}`}function ye(e){let t=h.resolve(e.cwd),r=U(t),n;return w(o=>{let s=o.attachedProjects.find(a=>a.id===r);if(s){let a={...s,...e,id:r,cwd:t,sourceRoots:e.sourceRoots??s.sourceRoots,knownBundleUrls:e.knownBundleUrls??s.knownBundleUrls,pinnedSourceResolutions:e.pinnedSourceResolutions??s.pinnedSourceResolutions,telemetry:e.telemetry??s.telemetry,updatedAt:Date.now(),createdAt:s.createdAt},g=o.attachedProjects.indexOf(s);o.attachedProjects[g]=a,n=a;return}let c=Date.now(),d={id:r,name:e.name??h.basename(t),cwd:t,repoRoot:e.repoRoot,sourceRoots:e.sourceRoots??[t],framework:e.framework??"unknown",bundleId:e.bundleId,knownBundleUrls:e.knownBundleUrls??[],preferredProvider:e.preferredProvider??"codex",preferredTransport:e.preferredTransport??"tmux",editorOpenCommand:e.editorOpenCommand,moshiWebhookToken:e.moshiWebhookToken,pinnedSourceResolutions:e.pinnedSourceResolutions??{},isolateDiscovery:e.isolateDiscovery,git:e.git,telemetry:e.telemetry??{lastOpened:0,runsCompleted:0},createdAt:c,updatedAt:c};o.attachedProjects.push(d),n=d}),n}function F(e){return S().attachedProjects.find(t=>t.id===e)??null}function Se(){return S().attachedProjects}var Q=336*60*60*1e3;function we(e,t={}){w(r=>{let n=r.attachedProjects.find(s=>s.id===e);if(!n)return;let o=t.ts??Date.now();if(n.telemetry.runsCompleted=(n.telemetry.runsCompleted??0)+1,typeof t.usd=="number"&&Number.isFinite(t.usd)&&t.usd>=0){let s=n.telemetry.costHistory??[],c=o-Q,d=s.filter(a=>a.ts>=c);d.push({ts:o,usd:t.usd}),n.telemetry.costHistory=d}n.updatedAt=o})}function ve(e,t=Date.now()){let r=t-6048e5,n=e.telemetry.costHistory??[],o=0;for(let s of n)s.ts>=r&&(o+=s.usd);return o}function Ae(e){w(t=>{t.attachedProjects=t.attachedProjects.filter(r=>r.id!==e),t.agentSessions=t.agentSessions.filter(r=>r.projectId!==e),t.previewAttachments=t.previewAttachments.filter(r=>r.projectId!==e)})}function M(e){let t;return w(r=>{if(e.id){let c=r.agentSessions.find(d=>d.id===e.id);if(c){let d={...c,...e,lastSeenAt:Date.now()},a=r.agentSessions.indexOf(c);r.agentSessions[a]=d,t=d;return}}let n=r.attachedProjects.find(c=>c.id===e.projectId);if(!n)throw new Error(`upsertSession: no AttachedProject with id=${e.projectId}`);let o=Date.now(),s={id:e.id??K(),projectId:e.projectId,provider:e.provider,transport:e.transport??n.preferredTransport,cwd:e.cwd??n.cwd,claudeSessionUuid:e.claudeSessionUuid,tmuxSessionName:e.tmuxSessionName,wrapperPid:e.wrapperPid,status:e.status??"idle",needsAttention:e.needsAttention??!1,lastPrompt:e.lastPrompt,lastSummary:e.lastSummary,lastTurnFiles:e.lastTurnFiles,currentlyEditing:e.currentlyEditing,lastSeenAt:o,createdAt:o};r.agentSessions.push(s),t=s}),t}function k(e){return S().agentSessions.find(t=>t.id===e)??null}function C(e){let t=S().agentSessions;return e?t.filter(r=>r.projectId===e):t}function V(e,t,r=Date.now()){return{...e,...t,id:e.id,projectId:e.projectId,createdAt:e.createdAt,lastSeenAt:r}}function z(e){e.length!==0&&w(t=>{let r=Date.now(),n=new Map(t.agentSessions.map((o,s)=>[o.id,s]));for(let{id:o,patch:s}of e){let c=n.get(o);c!==void 0&&(t.agentSessions[c]=V(t.agentSessions[c],s,r))}})}function v(e,t){z([{id:e,patch:t}])}async function Pe(){if(S().attachedProjects.length>0)return;let{loadOptionalDemoApps:t}=await import("./optional-demo-registry-26Q7AW7X.js"),r=await t();r.length!==0&&w(n=>{for(let o of r){if(!f.existsSync(o.dir))continue;let s=h.resolve(o.dir),c=U(s);if(n.attachedProjects.some(a=>a.id===c))continue;let d=Date.now();n.attachedProjects.push({id:c,name:o.label,cwd:s,sourceRoots:[s],framework:o.framework,knownBundleUrls:[`http://localhost:${o.preferredPort}/index.bundle`],preferredProvider:"codex",preferredTransport:"tmux",pinnedSourceResolutions:{},telemetry:{lastOpened:0,runsCompleted:0},createdAt:d,updatedAt:d})}})}import{spawn as Z,spawnSync as ee}from"node:child_process";import{randomUUID as te}from"node:crypto";import i,{constants as m}from"node:fs";import u from"node:path";import re from"node:readline";function b(e){return u.join(y(),"sessions",e)}function W(e){return u.join(b(e),"prompt.in")}function J(e){return u.join(b(e),"events.out")}function ne(e){return u.join(y(),"transcripts",`${e}.log`)}function O(e,t){if(!e)return!1;try{process.kill(e,0)}catch{return!1}return!(t&&!i.existsSync(b(t)))}function se(){if(process.env.SOOTSIM_BIN)return{cmd:process.env.SOOTSIM_BIN,prefixArgs:[]};if(process.versions.electron){let n=process.resourcesPath;if(n){let o=[u.join(n,"bin","sootsim"),u.join(n,"bin",`sootsim-${process.platform}-${process.arch}`)];for(let s of o)if(i.existsSync(s))return{cmd:s,prefixArgs:[]}}}let e=oe();if(e)return e;let t=process.argv[0],r=process.argv[1];if(r&&/\.(ts|tsx|mjs|cjs|js)$/.test(r))return{cmd:t,prefixArgs:[r]};if(!r||r.includes("/.bin/"))throw new Error("sootsim CLI not found. set SOOTSIM_BIN to the path of the sootsim binary, or build the workspace CLI via `bun run --cwd packages/sootsim build:cli`.");return{cmd:t,prefixArgs:[]}}function oe(){try{let e=ie();if(!e)return null;let t=`sootsim-${process.platform}-${process.arch}`,r=u.join(e,"dist-bin",t);if(i.existsSync(r))return{cmd:r,prefixArgs:[]};let n=u.join(e,"dist-cli","bin.js");if(i.existsSync(n)){try{let o=u.join(e,"cli","commands","agent-wrapper.ts");if(i.existsSync(o)){let s=i.statSync(o).mtimeMs;i.statSync(n).mtimeMs<s&&console.warn("[sootsim] dist-cli/bin.js is older than agent-wrapper.ts \u2014 rebuild with `bun run --cwd packages/sootsim build:cli`.")}}catch{}return{cmd:process.execPath,prefixArgs:[n]}}return null}catch{return null}}function ie(){try{let r=D.resolve("sootsim/package.json");return u.dirname(r)}catch{}let e=ce();if(!e)return null;let t=u.dirname(e);for(let r=0;r<8;r++){let n=u.join(t,"package.json");try{if(i.existsSync(n)&&JSON.parse(i.readFileSync(n,"utf8")).name==="sootsim")return t}catch{}let o=u.dirname(t);if(o===t)break;t=o}return null}function ce(){try{let e=import.meta.url;return!e||!e.startsWith("file://")?null:decodeURIComponent(e.slice(7))}catch{return null}}async function ae(e,t,r){let n=u.join(y(),"locks");i.mkdirSync(n,{recursive:!0});try{i.chmodSync(n,448)}catch{}let o=u.join(n,`start-${e}-${t}.lock`),s=Date.now()+4e3,c=null;for(;c===null;)try{c=i.openSync(o,m.O_WRONLY|m.O_CREAT|m.O_EXCL,384)}catch(d){if(d.code!=="EEXIST")throw d;try{let a=Number(i.readFileSync(o,"utf8").trim());if(a&&!de(a)){i.unlinkSync(o);continue}}catch{}if(Date.now()>s)throw new Error(`another start is in progress for project=${e} provider=${t} (lock: ${o})`);await new Promise(a=>setTimeout(a,50))}try{return i.writeFileSync(c,String(process.pid)),await r()}finally{try{i.closeSync(c)}catch{}try{i.unlinkSync(o)}catch{}}}function de(e){try{return process.kill(e,0),!0}catch{return!1}}function L(e){let t=u.dirname(e);i.mkdirSync(t,{recursive:!0});try{i.chmodSync(t,448)}catch{}if(i.existsSync(e))try{if(i.statSync(e).isFIFO()){try{i.chmodSync(e,384)}catch{}return}i.unlinkSync(e)}catch{i.unlinkSync(e)}let r=ee("mkfifo",["-m","600",e]);if(r.status!==0)throw new Error(`mkfifo(${e}) failed: ${r.stderr?.toString().trim()||"unknown error"}`)}var l=class extends Error{code;constructor(t,r){super(r),this.code=t}};async function Re(e){let t=F(e.projectId);if(!t)throw new l("NO_PROJECT",`no project with id=${e.projectId}`);let r=e.provider||t.preferredProvider||"codex";return ae(t.id,r,async()=>{let n=C(t.id).find(p=>p.provider===r&&p.status!=="ended"&&O(p.wrapperPid,p.id));if(n)throw new l("ALREADY_RUNNING",`session already running for project=${t.id} provider=${r} (session ${n.id}, pid ${n.wrapperPid}). end it first with \`sootsim agent end <sessionId>\`.`);let o=r==="claude"?te():void 0,s=M({projectId:t.id,provider:r,transport:"pty",cwd:t.cwd,status:"idle",claudeSessionUuid:o}),c=W(s.id),d=J(s.id),a=ne(s.id);L(c),L(d);let g=u.dirname(a);i.mkdirSync(g,{recursive:!0});try{i.chmodSync(g,448)}catch{}let{cmd:A,prefixArgs:H}=se(),P=[...H,"agent-wrapper","--session-id",s.id,"--project-id",t.id,"--provider",r,"--cwd",t.cwd,"--prompt-in",c,"--events-out",d,"--transcript",a];e.codexBin&&P.push("--codex-bin",e.codexBin),e.claudeBin&&P.push("--claude-bin",e.claudeBin),e.freshThread&&P.push("--fresh-thread"),o&&P.push("--claude-session-uuid",o);let x=Z(A,P,{detached:!0,stdio:"ignore",env:{...process.env,SOOTSIM_USER_DATA_DIR:y()}});x.unref();let E=e.readyTimeoutMs??6e3,j=await ue(d,p=>p.type==="ready"||p.type==="error",E);if(!j||j.type==="error"){if(x.pid)try{process.kill(x.pid,"SIGTERM")}catch{}try{i.rmSync(b(s.id),{recursive:!0,force:!0})}catch{}v(s.id,{status:"ended"});let p=j&&j.type==="error"?j.message:`no ready event within ${E}ms`;throw new l("WRAPPER_FAILED",p)}return v(s.id,{wrapperPid:x.pid,status:"idle"}),{session:k(s.id),wrapperPid:x.pid}})}async function Ne(e,t){let r=k(e);if(!r)throw new l("NO_SESSION",`no session with id=${e}`);if(!O(r.wrapperPid,e))throw v(e,{status:"ended"}),new l("NOT_ALIVE",`session wrapper is not alive (pid=${r.wrapperPid}). start a new session.`);let n=W(e);if(!i.existsSync(n))throw new l("NO_FIFO",`prompt FIFO missing: ${n}`);let o=i.openSync(n,m.O_WRONLY);try{let s=R(t);if(!s)throw new l("EMPTY_PROMPT","prompt text is empty");i.writeSync(o,s+`
1
+ /*! sootsim v0.1.293 | (c) 2026 Tamagui LLC | Proprietary — see LICENSE */
2
+ import{a as R}from"./chunk-VZ44FQDG.js";import{o as T}from"./chunk-WOWLO4LL.js";import{a as D}from"./chunk-RV67J726.js";function Y(e){if(!e||typeof e!="object")return!1;let t=e;return typeof t.type=="string"&&typeof t.ts=="number"}function I(e){let t=e.trim();if(!t)return null;try{let r=JSON.parse(t);return Y(r)?r:null}catch{return null}}import{randomBytes as G,createHash as q}from"node:crypto";import f from"node:fs";import h from"node:path";var N=null;function _(){if(N)return N;let e=process.env.SOOTSIM_USER_DATA_DIR;return e||T()}function y(){return _()}function B(){return h.join(_(),"attached-projects.json")}function $(){return{version:1,attachedProjects:[],previewAttachments:[],agentSessions:[]}}function S(){let e=B(),t;try{t=f.readFileSync(e,"utf8")}catch(r){if(r.code==="ENOENT")return $();throw r}try{let r=JSON.parse(t);if(!r||typeof r!="object")throw new Error("not an object");return{version:1,attachedProjects:Array.isArray(r.attachedProjects)?r.attachedProjects:[],previewAttachments:Array.isArray(r.previewAttachments)?r.previewAttachments:[],agentSessions:Array.isArray(r.agentSessions)?r.agentSessions:[]}}catch(r){let n=`${e}.corrupt-${Date.now()}`;try{f.renameSync(e,n),console.warn(`[sootsim] attached-projects.json was unparseable; quarantined to ${n}. original error: ${r.message}`)}catch{}return $()}}function X(e){let t=B();f.mkdirSync(h.dirname(t),{recursive:!0});let r=`${t}.tmp-${process.pid}-${Date.now()}`,n=f.openSync(r,"w",384);try{f.writeFileSync(n,JSON.stringify(e,null,2)),f.fsyncSync(n)}finally{f.closeSync(n)}f.renameSync(r,t)}function w(e){let t=S();return e(t),X(t),t}function U(e){return q("sha256").update(h.resolve(e)).digest("hex").slice(0,16)}function K(){return`s_${G(10).toString("hex")}`}function ye(e){let t=h.resolve(e.cwd),r=U(t),n;return w(o=>{let s=o.attachedProjects.find(a=>a.id===r);if(s){let a={...s,...e,id:r,cwd:t,sourceRoots:e.sourceRoots??s.sourceRoots,knownBundleUrls:e.knownBundleUrls??s.knownBundleUrls,pinnedSourceResolutions:e.pinnedSourceResolutions??s.pinnedSourceResolutions,telemetry:e.telemetry??s.telemetry,updatedAt:Date.now(),createdAt:s.createdAt},g=o.attachedProjects.indexOf(s);o.attachedProjects[g]=a,n=a;return}let c=Date.now(),d={id:r,name:e.name??h.basename(t),cwd:t,repoRoot:e.repoRoot,sourceRoots:e.sourceRoots??[t],framework:e.framework??"unknown",bundleId:e.bundleId,knownBundleUrls:e.knownBundleUrls??[],preferredProvider:e.preferredProvider??"codex",preferredTransport:e.preferredTransport??"tmux",editorOpenCommand:e.editorOpenCommand,moshiWebhookToken:e.moshiWebhookToken,pinnedSourceResolutions:e.pinnedSourceResolutions??{},isolateDiscovery:e.isolateDiscovery,git:e.git,telemetry:e.telemetry??{lastOpened:0,runsCompleted:0},createdAt:c,updatedAt:c};o.attachedProjects.push(d),n=d}),n}function F(e){return S().attachedProjects.find(t=>t.id===e)??null}function Se(){return S().attachedProjects}var Q=336*60*60*1e3;function we(e,t={}){w(r=>{let n=r.attachedProjects.find(s=>s.id===e);if(!n)return;let o=t.ts??Date.now();if(n.telemetry.runsCompleted=(n.telemetry.runsCompleted??0)+1,typeof t.usd=="number"&&Number.isFinite(t.usd)&&t.usd>=0){let s=n.telemetry.costHistory??[],c=o-Q,d=s.filter(a=>a.ts>=c);d.push({ts:o,usd:t.usd}),n.telemetry.costHistory=d}n.updatedAt=o})}function ve(e,t=Date.now()){let r=t-6048e5,n=e.telemetry.costHistory??[],o=0;for(let s of n)s.ts>=r&&(o+=s.usd);return o}function Ae(e){w(t=>{t.attachedProjects=t.attachedProjects.filter(r=>r.id!==e),t.agentSessions=t.agentSessions.filter(r=>r.projectId!==e),t.previewAttachments=t.previewAttachments.filter(r=>r.projectId!==e)})}function M(e){let t;return w(r=>{if(e.id){let c=r.agentSessions.find(d=>d.id===e.id);if(c){let d={...c,...e,lastSeenAt:Date.now()},a=r.agentSessions.indexOf(c);r.agentSessions[a]=d,t=d;return}}let n=r.attachedProjects.find(c=>c.id===e.projectId);if(!n)throw new Error(`upsertSession: no AttachedProject with id=${e.projectId}`);let o=Date.now(),s={id:e.id??K(),projectId:e.projectId,provider:e.provider,transport:e.transport??n.preferredTransport,cwd:e.cwd??n.cwd,claudeSessionUuid:e.claudeSessionUuid,tmuxSessionName:e.tmuxSessionName,wrapperPid:e.wrapperPid,status:e.status??"idle",needsAttention:e.needsAttention??!1,lastPrompt:e.lastPrompt,lastSummary:e.lastSummary,lastTurnFiles:e.lastTurnFiles,currentlyEditing:e.currentlyEditing,lastSeenAt:o,createdAt:o};r.agentSessions.push(s),t=s}),t}function k(e){return S().agentSessions.find(t=>t.id===e)??null}function C(e){let t=S().agentSessions;return e?t.filter(r=>r.projectId===e):t}function V(e,t,r=Date.now()){return{...e,...t,id:e.id,projectId:e.projectId,createdAt:e.createdAt,lastSeenAt:r}}function z(e){e.length!==0&&w(t=>{let r=Date.now(),n=new Map(t.agentSessions.map((o,s)=>[o.id,s]));for(let{id:o,patch:s}of e){let c=n.get(o);c!==void 0&&(t.agentSessions[c]=V(t.agentSessions[c],s,r))}})}function v(e,t){z([{id:e,patch:t}])}async function Pe(){if(S().attachedProjects.length>0)return;let{loadOptionalDemoApps:t}=await import("./optional-demo-registry-AIWOBAAA.js"),r=await t();r.length!==0&&w(n=>{for(let o of r){if(!f.existsSync(o.dir))continue;let s=h.resolve(o.dir),c=U(s);if(n.attachedProjects.some(a=>a.id===c))continue;let d=Date.now();n.attachedProjects.push({id:c,name:o.label,cwd:s,sourceRoots:[s],framework:o.framework,knownBundleUrls:[`http://localhost:${o.preferredPort}/index.bundle`],preferredProvider:"codex",preferredTransport:"tmux",pinnedSourceResolutions:{},telemetry:{lastOpened:0,runsCompleted:0},createdAt:d,updatedAt:d})}})}import{spawn as Z,spawnSync as ee}from"node:child_process";import{randomUUID as te}from"node:crypto";import i,{constants as m}from"node:fs";import u from"node:path";import re from"node:readline";function b(e){return u.join(y(),"sessions",e)}function W(e){return u.join(b(e),"prompt.in")}function J(e){return u.join(b(e),"events.out")}function ne(e){return u.join(y(),"transcripts",`${e}.log`)}function O(e,t){if(!e)return!1;try{process.kill(e,0)}catch{return!1}return!(t&&!i.existsSync(b(t)))}function se(){if(process.env.SOOTSIM_BIN)return{cmd:process.env.SOOTSIM_BIN,prefixArgs:[]};if(process.versions.electron){let n=process.resourcesPath;if(n){let o=[u.join(n,"bin","sootsim"),u.join(n,"bin",`sootsim-${process.platform}-${process.arch}`)];for(let s of o)if(i.existsSync(s))return{cmd:s,prefixArgs:[]}}}let e=oe();if(e)return e;let t=process.argv[0],r=process.argv[1];if(r&&/\.(ts|tsx|mjs|cjs|js)$/.test(r))return{cmd:t,prefixArgs:[r]};if(!r||r.includes("/.bin/"))throw new Error("sootsim CLI not found. set SOOTSIM_BIN to the path of the sootsim binary, or build the workspace CLI via `bun run --cwd packages/sootsim build:cli`.");return{cmd:t,prefixArgs:[]}}function oe(){try{let e=ie();if(!e)return null;let t=`sootsim-${process.platform}-${process.arch}`,r=u.join(e,"dist-bin",t);if(i.existsSync(r))return{cmd:r,prefixArgs:[]};let n=u.join(e,"dist-cli","bin.js");if(i.existsSync(n)){try{let o=u.join(e,"cli","commands","agent-wrapper.ts");if(i.existsSync(o)){let s=i.statSync(o).mtimeMs;i.statSync(n).mtimeMs<s&&console.warn("[sootsim] dist-cli/bin.js is older than agent-wrapper.ts \u2014 rebuild with `bun run --cwd packages/sootsim build:cli`.")}}catch{}return{cmd:process.execPath,prefixArgs:[n]}}return null}catch{return null}}function ie(){try{let r=D.resolve("sootsim/package.json");return u.dirname(r)}catch{}let e=ce();if(!e)return null;let t=u.dirname(e);for(let r=0;r<8;r++){let n=u.join(t,"package.json");try{if(i.existsSync(n)&&JSON.parse(i.readFileSync(n,"utf8")).name==="sootsim")return t}catch{}let o=u.dirname(t);if(o===t)break;t=o}return null}function ce(){try{let e=import.meta.url;return!e||!e.startsWith("file://")?null:decodeURIComponent(e.slice(7))}catch{return null}}async function ae(e,t,r){let n=u.join(y(),"locks");i.mkdirSync(n,{recursive:!0});try{i.chmodSync(n,448)}catch{}let o=u.join(n,`start-${e}-${t}.lock`),s=Date.now()+4e3,c=null;for(;c===null;)try{c=i.openSync(o,m.O_WRONLY|m.O_CREAT|m.O_EXCL,384)}catch(d){if(d.code!=="EEXIST")throw d;try{let a=Number(i.readFileSync(o,"utf8").trim());if(a&&!de(a)){i.unlinkSync(o);continue}}catch{}if(Date.now()>s)throw new Error(`another start is in progress for project=${e} provider=${t} (lock: ${o})`);await new Promise(a=>setTimeout(a,50))}try{return i.writeFileSync(c,String(process.pid)),await r()}finally{try{i.closeSync(c)}catch{}try{i.unlinkSync(o)}catch{}}}function de(e){try{return process.kill(e,0),!0}catch{return!1}}function L(e){let t=u.dirname(e);i.mkdirSync(t,{recursive:!0});try{i.chmodSync(t,448)}catch{}if(i.existsSync(e))try{if(i.statSync(e).isFIFO()){try{i.chmodSync(e,384)}catch{}return}i.unlinkSync(e)}catch{i.unlinkSync(e)}let r=ee("mkfifo",["-m","600",e]);if(r.status!==0)throw new Error(`mkfifo(${e}) failed: ${r.stderr?.toString().trim()||"unknown error"}`)}var l=class extends Error{code;constructor(t,r){super(r),this.code=t}};async function Re(e){let t=F(e.projectId);if(!t)throw new l("NO_PROJECT",`no project with id=${e.projectId}`);let r=e.provider||t.preferredProvider||"codex";return ae(t.id,r,async()=>{let n=C(t.id).find(p=>p.provider===r&&p.status!=="ended"&&O(p.wrapperPid,p.id));if(n)throw new l("ALREADY_RUNNING",`session already running for project=${t.id} provider=${r} (session ${n.id}, pid ${n.wrapperPid}). end it first with \`sootsim agent end <sessionId>\`.`);let o=r==="claude"?te():void 0,s=M({projectId:t.id,provider:r,transport:"pty",cwd:t.cwd,status:"idle",claudeSessionUuid:o}),c=W(s.id),d=J(s.id),a=ne(s.id);L(c),L(d);let g=u.dirname(a);i.mkdirSync(g,{recursive:!0});try{i.chmodSync(g,448)}catch{}let{cmd:A,prefixArgs:H}=se(),P=[...H,"agent-wrapper","--session-id",s.id,"--project-id",t.id,"--provider",r,"--cwd",t.cwd,"--prompt-in",c,"--events-out",d,"--transcript",a];e.codexBin&&P.push("--codex-bin",e.codexBin),e.claudeBin&&P.push("--claude-bin",e.claudeBin),e.freshThread&&P.push("--fresh-thread"),o&&P.push("--claude-session-uuid",o);let x=Z(A,P,{detached:!0,stdio:"ignore",env:{...process.env,SOOTSIM_USER_DATA_DIR:y()}});x.unref();let E=e.readyTimeoutMs??6e3,j=await ue(d,p=>p.type==="ready"||p.type==="error",E);if(!j||j.type==="error"){if(x.pid)try{process.kill(x.pid,"SIGTERM")}catch{}try{i.rmSync(b(s.id),{recursive:!0,force:!0})}catch{}v(s.id,{status:"ended"});let p=j&&j.type==="error"?j.message:`no ready event within ${E}ms`;throw new l("WRAPPER_FAILED",p)}return v(s.id,{wrapperPid:x.pid,status:"idle"}),{session:k(s.id),wrapperPid:x.pid}})}async function Ne(e,t){let r=k(e);if(!r)throw new l("NO_SESSION",`no session with id=${e}`);if(!O(r.wrapperPid,e))throw v(e,{status:"ended"}),new l("NOT_ALIVE",`session wrapper is not alive (pid=${r.wrapperPid}). start a new session.`);let n=W(e);if(!i.existsSync(n))throw new l("NO_FIFO",`prompt FIFO missing: ${n}`);let o=i.openSync(n,m.O_WRONLY);try{let s=R(t);if(!s)throw new l("EMPTY_PROMPT","prompt text is empty");i.writeSync(o,s+`
3
3
  `)}finally{i.closeSync(o)}v(e,{lastPrompt:t.displayText??t.text,status:"working"})}async function $e(e){let t=k(e);if(!t)throw new l("NO_SESSION",`no session with id=${e}`);if(O(t.wrapperPid,e))try{process.kill(t.wrapperPid,"SIGTERM")}catch{}let r=b(e),n=y();if(r.startsWith(n))try{i.rmSync(r,{recursive:!0,force:!0})}catch{}v(e,{status:"ended",wrapperPid:void 0})}function _e(e,t){let r=J(e);if(!i.existsSync(r))throw new l("NO_FIFO",`events FIFO missing: ${r}`);let n=i.openSync(r,m.O_RDWR),o=i.createReadStream("",{fd:n,autoClose:!0}),s=re.createInterface({input:o,crlfDelay:1/0});s.on("line",d=>{let a=I(d);a&&t(a)});let c=!1;return()=>{if(!c){c=!0;try{i.writeSync(n,`
4
4
  `)}catch{}try{s.close()}catch{}try{o.destroy()}catch{}}}}async function ue(e,t,r){let n=i.openSync(e,m.O_RDWR|m.O_NONBLOCK),o=Buffer.alloc(8192),s="",c=Date.now()+r;try{for(;Date.now()<c;){let d=0;try{d=i.readSync(n,o,0,o.length,null)}catch(a){if(a.code!=="EAGAIN")throw a;d=0}if(d>0){s+=o.subarray(0,d).toString("utf8");let a;for(;(a=s.indexOf(`
5
5
  `))>=0;){let g=s.slice(0,a);s=s.slice(a+1);let A=I(g);if(A&&t(A))return A}}else await new Promise(a=>setTimeout(a,30))}return null}finally{i.closeSync(n)}}export{I as a,y as b,ye as c,F as d,Se as e,we as f,ve as g,Ae as h,k as i,C as j,V as k,z as l,Pe as m,b as n,W as o,J as p,ne as q,O as r,se as s,l as t,Re as u,Ne as v,$e as w,_e as x};