UNPKG

damon-utils

Version:
19 lines 60.6 kB
(()=>{var bt=(R,n)=>()=>(n||R((n={exports:{}}).exports,n),n.exports);var Ft=bt((Ar,Ut)=>{"use strict";var{entries:kt,setPrototypeOf:Ct,isFrozen:Kt,getPrototypeOf:Xt,getOwnPropertyDescriptor:Zt}=Object,{freeze:X,seal:ee,create:It}=Object,{apply:Ze,construct:Qe}=typeof Reflect<"u"&&Reflect;X||(X=function(n){return n});ee||(ee=function(n){return n});Ze||(Ze=function(n,h,i){return n.apply(h,i)});Qe||(Qe=function(n,h){return new n(...h)});var ke=Z(Array.prototype.forEach),Qt=Z(Array.prototype.lastIndexOf),Lt=Z(Array.prototype.pop),Ee=Z(Array.prototype.push),jt=Z(Array.prototype.splice),He=Z(String.prototype.toLowerCase),Ve=Z(String.prototype.toString),xt=Z(String.prototype.match),Ne=Z(String.prototype.replace),er=Z(String.prototype.indexOf),tr=Z(String.prototype.trim),te=Z(Object.prototype.hasOwnProperty),K=Z(RegExp.prototype.test),be=rr(TypeError);function Z(R){return function(n){n instanceof RegExp&&(n.lastIndex=0);for(var h=arguments.length,i=new Array(h>1?h-1:0),l=1;l<h;l++)i[l-1]=arguments[l];return Ze(R,n,i)}}function rr(R){return function(){for(var n=arguments.length,h=new Array(n),i=0;i<n;i++)h[i]=arguments[i];return Qe(R,h)}}function k(R,n){let h=arguments.length>2&&arguments[2]!==void 0?arguments[2]:He;Ct&&Ct(R,null);let i=n.length;for(;i--;){let l=n[i];if(typeof l=="string"){let f=h(l);f!==l&&(Kt(n)||(n[i]=f),l=f)}R[l]=!0}return R}function nr(R){for(let n=0;n<R.length;n++)te(R,n)||(R[n]=null);return R}function se(R){let n=It(null);for(let[h,i]of kt(R))te(R,h)&&(Array.isArray(i)?n[h]=nr(i):i&&typeof i=="object"&&i.constructor===Object?n[h]=se(i):n[h]=i);return n}function Ce(R,n){for(;R!==null;){let i=Zt(R,n);if(i){if(i.get)return Z(i.get);if(typeof i.value=="function")return Z(i.value)}R=Xt(R)}function h(){return null}return h}var wt=X(["a","abbr","acronym","address","area","article","aside","audio","b","bdi","bdo","big","blink","blockquote","body","br","button","canvas","caption","center","cite","code","col","colgroup","content","data","datalist","dd","decorator","del","details","dfn","dialog","dir","div","dl","dt","element","em","fieldset","figcaption","figure","font","footer","form","h1","h2","h3","h4","h5","h6","head","header","hgroup","hr","html","i","img","input","ins","kbd","label","legend","li","main","map","mark","marquee","menu","menuitem","meter","nav","nobr","ol","optgroup","option","output","p","picture","pre","progress","q","rp","rt","ruby","s","samp","section","select","shadow","small","source","spacer","span","strike","strong","style","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","time","tr","track","tt","u","ul","var","video","wbr"]),Ye=X(["svg","a","altglyph","altglyphdef","altglyphitem","animatecolor","animatemotion","animatetransform","circle","clippath","defs","desc","ellipse","filter","font","g","glyph","glyphref","hkern","image","line","lineargradient","marker","mask","metadata","mpath","path","pattern","polygon","polyline","radialgradient","rect","stop","style","switch","symbol","text","textpath","title","tref","tspan","view","vkern"]),qe=X(["feBlend","feColorMatrix","feComponentTransfer","feComposite","feConvolveMatrix","feDiffuseLighting","feDisplacementMap","feDistantLight","feDropShadow","feFlood","feFuncA","feFuncB","feFuncG","feFuncR","feGaussianBlur","feImage","feMerge","feMergeNode","feMorphology","feOffset","fePointLight","feSpecularLighting","feSpotLight","feTile","feTurbulence"]),ir=X(["animate","color-profile","cursor","discard","font-face","font-face-format","font-face-name","font-face-src","font-face-uri","foreignobject","hatch","hatchpath","mesh","meshgradient","meshpatch","meshrow","missing-glyph","script","set","solidcolor","unknown","use"]),Ke=X(["math","menclose","merror","mfenced","mfrac","mglyph","mi","mlabeledtr","mmultiscripts","mn","mo","mover","mpadded","mphantom","mroot","mrow","ms","mspace","msqrt","mstyle","msub","msup","msubsup","mtable","mtd","mtext","mtr","munder","munderover","mprescripts"]),lr=X(["maction","maligngroup","malignmark","mlongdiv","mscarries","mscarry","msgroup","mstack","msline","msrow","semantics","annotation","annotation-xml","mprescripts","none"]),_t=X(["#text"]),St=X(["accept","action","align","alt","autocapitalize","autocomplete","autopictureinpicture","autoplay","background","bgcolor","border","capture","cellpadding","cellspacing","checked","cite","class","clear","color","cols","colspan","controls","controlslist","coords","crossorigin","datetime","decoding","default","dir","disabled","disablepictureinpicture","disableremoteplayback","download","draggable","enctype","enterkeyhint","face","for","headers","height","hidden","high","href","hreflang","id","inputmode","integrity","ismap","kind","label","lang","list","loading","loop","low","max","maxlength","media","method","min","minlength","multiple","muted","name","nonce","noshade","novalidate","nowrap","open","optimum","pattern","placeholder","playsinline","popover","popovertarget","popovertargetaction","poster","preload","pubdate","radiogroup","readonly","rel","required","rev","reversed","role","rows","rowspan","spellcheck","scope","selected","shape","size","sizes","span","srclang","start","src","srcset","step","style","summary","tabindex","title","translate","type","usemap","valign","value","width","wrap","xmlns","slot"]),Xe=X(["accent-height","accumulate","additive","alignment-baseline","amplitude","ascent","attributename","attributetype","azimuth","basefrequency","baseline-shift","begin","bias","by","class","clip","clippathunits","clip-path","clip-rule","color","color-interpolation","color-interpolation-filters","color-profile","color-rendering","cx","cy","d","dx","dy","diffuseconstant","direction","display","divisor","dur","edgemode","elevation","end","exponent","fill","fill-opacity","fill-rule","filter","filterunits","flood-color","flood-opacity","font-family","font-size","font-size-adjust","font-stretch","font-style","font-variant","font-weight","fx","fy","g1","g2","glyph-name","glyphref","gradientunits","gradienttransform","height","href","id","image-rendering","in","in2","intercept","k","k1","k2","k3","k4","kerning","keypoints","keysplines","keytimes","lang","lengthadjust","letter-spacing","kernelmatrix","kernelunitlength","lighting-color","local","marker-end","marker-mid","marker-start","markerheight","markerunits","markerwidth","maskcontentunits","maskunits","max","mask","media","method","mode","min","name","numoctaves","offset","operator","opacity","order","orient","orientation","origin","overflow","paint-order","path","pathlength","patterncontentunits","patterntransform","patternunits","points","preservealpha","preserveaspectratio","primitiveunits","r","rx","ry","radius","refx","refy","repeatcount","repeatdur","restart","result","rotate","scale","seed","shape-rendering","slope","specularconstant","specularexponent","spreadmethod","startoffset","stddeviation","stitchtiles","stop-color","stop-opacity","stroke-dasharray","stroke-dashoffset","stroke-linecap","stroke-linejoin","stroke-miterlimit","stroke-opacity","stroke","stroke-width","style","surfacescale","systemlanguage","tabindex","tablevalues","targetx","targety","transform","transform-origin","text-anchor","text-decoration","text-rendering","textlength","type","u1","u2","unicode","values","viewbox","visibility","version","vert-adv-y","vert-origin-x","vert-origin-y","width","word-spacing","wrap","writing-mode","xchannelselector","ychannelselector","x","x1","x2","xmlns","y","y1","y2","z","zoomandpan"]),Ot=X(["accent","accentunder","align","bevelled","close","columnsalign","columnlines","columnspan","denomalign","depth","dir","display","displaystyle","encoding","fence","frame","height","href","id","largeop","length","linethickness","lspace","lquote","mathbackground","mathcolor","mathsize","mathvariant","maxsize","minsize","movablelimits","notation","numalign","open","rowalign","rowlines","rowspacing","rowspan","rspace","rquote","scriptlevel","scriptminsize","scriptsizemultiplier","selection","separator","separators","stretchy","subscriptshift","supscriptshift","symmetric","voffset","width","xmlns"]),Ie=X(["xlink:href","xml:id","xlink:title","xml:space","xmlns:xlink"]),ar=ee(/\{\{[\w\W]*|[\w\W]*\}\}/gm),sr=ee(/<%[\w\W]*|[\w\W]*%>/gm),or=ee(/\$\{[\w\W]*/gm),fr=ee(/^data-[\-\w.\u00B7-\uFFFF]+$/),cr=ee(/^aria-[\-\w]+$/),Ht=ee(/^(?:(?:(?:f|ht)tps?|mailto|tel|callto|sms|cid|xmpp|matrix):|[^a-z]|[a-z+.\-]+(?:[^a-z+.\-:]|$))/i),ur=ee(/^(?:\w+script|data):/i),pr=ee(/[\u0000-\u0020\u00A0\u1680\u180E\u2000-\u2029\u205F\u3000]/g),Mt=ee(/^html$/i),dr=ee(/^[a-z][.\w]*(-[.\w]+)+$/i),Rt=Object.freeze({__proto__:null,ARIA_ATTR:cr,ATTR_WHITESPACE:pr,CUSTOM_ELEMENT:dr,DATA_ATTR:fr,DOCTYPE_NAME:Mt,ERB_EXPR:sr,IS_ALLOWED_URI:Ht,IS_SCRIPT_OR_DATA:ur,MUSTACHE_EXPR:ar,TMPLIT_EXPR:or}),Le={element:1,attribute:2,text:3,cdataSection:4,entityReference:5,entityNode:6,progressingInstruction:7,comment:8,document:9,documentType:10,documentFragment:11,notation:12},mr=function(){return typeof window>"u"?null:window},hr=function(n,h){if(typeof n!="object"||typeof n.createPolicy!="function")return null;let i=null,l="data-tt-policy-suffix";h&&h.hasAttribute(l)&&(i=h.getAttribute(l));let f="dompurify"+(i?"#"+i:"");try{return n.createPolicy(f,{createHTML(r){return r},createScriptURL(r){return r}})}catch{return console.warn("TrustedTypes policy "+f+" could not be created."),null}},Dt=function(){return{afterSanitizeAttributes:[],afterSanitizeElements:[],afterSanitizeShadowDOM:[],beforeSanitizeAttributes:[],beforeSanitizeElements:[],beforeSanitizeShadowDOM:[],uponSanitizeAttribute:[],uponSanitizeElement:[],uponSanitizeShadowNode:[]}};function $t(){let R=arguments.length>0&&arguments[0]!==void 0?arguments[0]:mr(),n=w=>$t(w);if(n.version="3.2.6",n.removed=[],!R||!R.document||R.document.nodeType!==Le.document||!R.Element)return n.isSupported=!1,n;let{document:h}=R,i=h,l=i.currentScript,{DocumentFragment:f,HTMLTemplateElement:r,Node:o,Element:c,NodeFilter:s,NamedNodeMap:u=R.NamedNodeMap||R.MozNamedAttrMap,HTMLFormElement:e,DOMParser:a,trustedTypes:d}=R,C=c.prototype,y=Ce(C,"cloneNode"),D=Ce(C,"remove"),g=Ce(C,"nextSibling"),E=Ce(C,"childNodes"),A=Ce(C,"parentNode");if(typeof r=="function"){let w=h.createElement("template");w.content&&w.content.ownerDocument&&(h=w.content.ownerDocument)}let p,T="",{implementation:m,createNodeIterator:L,createDocumentFragment:b,getElementsByTagName:S}=h,{importNode:O}=i,_=Dt();n.isSupported=typeof kt=="function"&&typeof A=="function"&&m&&m.createHTMLDocument!==void 0;let{MUSTACHE_EXPR:M,ERB_EXPR:z,TMPLIT_EXPR:j,DATA_ATTR:H,ARIA_ATTR:$,IS_SCRIPT_OR_DATA:v,ATTR_WHITESPACE:U,CUSTOM_ELEMENT:J}=Rt,{IS_ALLOWED_URI:re}=Rt,G=null,je=k({},[...wt,...Ye,...qe,...Ke,..._t]),V=null,et=k({},[...St,...Xe,...Ot,...Ie]),P=Object.seal(It(null,{tagNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},attributeNameCheck:{writable:!0,configurable:!1,enumerable:!0,value:null},allowCustomizedBuiltInElements:{writable:!0,configurable:!1,enumerable:!0,value:!1}})),ye=null,Me=null,tt=!0,$e=!0,rt=!1,nt=!0,fe=!1,xe=!0,oe=!1,Ue=!1,Fe=!1,ce=!1,we=!1,_e=!1,it=!0,lt=!1,zt="user-content-",ve=!0,ge=!1,ue={},pe=null,at=k({},["annotation-xml","audio","colgroup","desc","foreignobject","head","iframe","math","mi","mn","mo","ms","mtext","noembed","noframes","noscript","plaintext","script","style","svg","template","thead","title","video","xmp"]),st=null,ot=k({},["audio","video","img","source","image","track"]),Pe=null,ft=k({},["alt","class","for","id","label","name","pattern","placeholder","role","summary","title","value","style","xmlns"]),Se="http://www.w3.org/1998/Math/MathML",Oe="http://www.w3.org/2000/svg",ie="http://www.w3.org/1999/xhtml",de=ie,ze=!1,Be=null,Bt=k({},[Se,Oe,ie],Ve),Re=k({},["mi","mo","mn","ms","mtext"]),De=k({},["annotation-xml"]),Jt=k({},["title","style","font","a","script"]),Ae=null,Gt=["application/xhtml+xml","text/html"],Wt="text/html",W=null,me=null,Vt=h.createElement("form"),ct=function(t){return t instanceof RegExp||t instanceof Function},Je=function(){let t=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};if(!(me&&me===t)){if((!t||typeof t!="object")&&(t={}),t=se(t),Ae=Gt.indexOf(t.PARSER_MEDIA_TYPE)===-1?Wt:t.PARSER_MEDIA_TYPE,W=Ae==="application/xhtml+xml"?Ve:He,G=te(t,"ALLOWED_TAGS")?k({},t.ALLOWED_TAGS,W):je,V=te(t,"ALLOWED_ATTR")?k({},t.ALLOWED_ATTR,W):et,Be=te(t,"ALLOWED_NAMESPACES")?k({},t.ALLOWED_NAMESPACES,Ve):Bt,Pe=te(t,"ADD_URI_SAFE_ATTR")?k(se(ft),t.ADD_URI_SAFE_ATTR,W):ft,st=te(t,"ADD_DATA_URI_TAGS")?k(se(ot),t.ADD_DATA_URI_TAGS,W):ot,pe=te(t,"FORBID_CONTENTS")?k({},t.FORBID_CONTENTS,W):at,ye=te(t,"FORBID_TAGS")?k({},t.FORBID_TAGS,W):se({}),Me=te(t,"FORBID_ATTR")?k({},t.FORBID_ATTR,W):se({}),ue=te(t,"USE_PROFILES")?t.USE_PROFILES:!1,tt=t.ALLOW_ARIA_ATTR!==!1,$e=t.ALLOW_DATA_ATTR!==!1,rt=t.ALLOW_UNKNOWN_PROTOCOLS||!1,nt=t.ALLOW_SELF_CLOSE_IN_ATTR!==!1,fe=t.SAFE_FOR_TEMPLATES||!1,xe=t.SAFE_FOR_XML!==!1,oe=t.WHOLE_DOCUMENT||!1,ce=t.RETURN_DOM||!1,we=t.RETURN_DOM_FRAGMENT||!1,_e=t.RETURN_TRUSTED_TYPE||!1,Fe=t.FORCE_BODY||!1,it=t.SANITIZE_DOM!==!1,lt=t.SANITIZE_NAMED_PROPS||!1,ve=t.KEEP_CONTENT!==!1,ge=t.IN_PLACE||!1,re=t.ALLOWED_URI_REGEXP||Ht,de=t.NAMESPACE||ie,Re=t.MATHML_TEXT_INTEGRATION_POINTS||Re,De=t.HTML_INTEGRATION_POINTS||De,P=t.CUSTOM_ELEMENT_HANDLING||{},t.CUSTOM_ELEMENT_HANDLING&&ct(t.CUSTOM_ELEMENT_HANDLING.tagNameCheck)&&(P.tagNameCheck=t.CUSTOM_ELEMENT_HANDLING.tagNameCheck),t.CUSTOM_ELEMENT_HANDLING&&ct(t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck)&&(P.attributeNameCheck=t.CUSTOM_ELEMENT_HANDLING.attributeNameCheck),t.CUSTOM_ELEMENT_HANDLING&&typeof t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements=="boolean"&&(P.allowCustomizedBuiltInElements=t.CUSTOM_ELEMENT_HANDLING.allowCustomizedBuiltInElements),fe&&($e=!1),we&&(ce=!0),ue&&(G=k({},_t),V=[],ue.html===!0&&(k(G,wt),k(V,St)),ue.svg===!0&&(k(G,Ye),k(V,Xe),k(V,Ie)),ue.svgFilters===!0&&(k(G,qe),k(V,Xe),k(V,Ie)),ue.mathMl===!0&&(k(G,Ke),k(V,Ot),k(V,Ie))),t.ADD_TAGS&&(G===je&&(G=se(G)),k(G,t.ADD_TAGS,W)),t.ADD_ATTR&&(V===et&&(V=se(V)),k(V,t.ADD_ATTR,W)),t.ADD_URI_SAFE_ATTR&&k(Pe,t.ADD_URI_SAFE_ATTR,W),t.FORBID_CONTENTS&&(pe===at&&(pe=se(pe)),k(pe,t.FORBID_CONTENTS,W)),ve&&(G["#text"]=!0),oe&&k(G,["html","head","body"]),G.table&&(k(G,["tbody"]),delete ye.tbody),t.TRUSTED_TYPES_POLICY){if(typeof t.TRUSTED_TYPES_POLICY.createHTML!="function")throw be('TRUSTED_TYPES_POLICY configuration option must provide a "createHTML" hook.');if(typeof t.TRUSTED_TYPES_POLICY.createScriptURL!="function")throw be('TRUSTED_TYPES_POLICY configuration option must provide a "createScriptURL" hook.');p=t.TRUSTED_TYPES_POLICY,T=p.createHTML("")}else p===void 0&&(p=hr(d,l)),p!==null&&typeof T=="string"&&(T=p.createHTML(""));X&&X(t),me=t}},ut=k({},[...Ye,...qe,...ir]),pt=k({},[...Ke,...lr]),Yt=function(t){let N=A(t);(!N||!N.tagName)&&(N={namespaceURI:de,tagName:"template"});let x=He(t.tagName),F=He(N.tagName);return Be[t.namespaceURI]?t.namespaceURI===Oe?N.namespaceURI===ie?x==="svg":N.namespaceURI===Se?x==="svg"&&(F==="annotation-xml"||Re[F]):!!ut[x]:t.namespaceURI===Se?N.namespaceURI===ie?x==="math":N.namespaceURI===Oe?x==="math"&&De[F]:!!pt[x]:t.namespaceURI===ie?N.namespaceURI===Oe&&!De[F]||N.namespaceURI===Se&&!Re[F]?!1:!pt[x]&&(Jt[x]||!ut[x]):!!(Ae==="application/xhtml+xml"&&Be[t.namespaceURI]):!1},ne=function(t){Ee(n.removed,{element:t});try{A(t).removeChild(t)}catch{D(t)}},he=function(t,N){try{Ee(n.removed,{attribute:N.getAttributeNode(t),from:N})}catch{Ee(n.removed,{attribute:null,from:N})}if(N.removeAttribute(t),t==="is")if(ce||we)try{ne(N)}catch{}else try{N.setAttribute(t,"")}catch{}},dt=function(t){let N=null,x=null;if(Fe)t="<remove></remove>"+t;else{let B=xt(t,/^[\r\n\t ]+/);x=B&&B[0]}Ae==="application/xhtml+xml"&&de===ie&&(t='<html xmlns="http://www.w3.org/1999/xhtml"><head></head><body>'+t+"</body></html>");let F=p?p.createHTML(t):t;if(de===ie)try{N=new a().parseFromString(F,Ae)}catch{}if(!N||!N.documentElement){N=m.createDocument(de,"template",null);try{N.documentElement.innerHTML=ze?T:F}catch{}}let Y=N.body||N.documentElement;return t&&x&&Y.insertBefore(h.createTextNode(x),Y.childNodes[0]||null),de===ie?S.call(N,oe?"html":"body")[0]:oe?N.documentElement:Y},mt=function(t){return L.call(t.ownerDocument||t,t,s.SHOW_ELEMENT|s.SHOW_COMMENT|s.SHOW_TEXT|s.SHOW_PROCESSING_INSTRUCTION|s.SHOW_CDATA_SECTION,null)},Ge=function(t){return t instanceof e&&(typeof t.nodeName!="string"||typeof t.textContent!="string"||typeof t.removeChild!="function"||!(t.attributes instanceof u)||typeof t.removeAttribute!="function"||typeof t.setAttribute!="function"||typeof t.namespaceURI!="string"||typeof t.insertBefore!="function"||typeof t.hasChildNodes!="function")},ht=function(t){return typeof o=="function"&&t instanceof o};function le(w,t,N){ke(w,x=>{x.call(n,t,N,me)})}let yt=function(t){let N=null;if(le(_.beforeSanitizeElements,t,null),Ge(t))return ne(t),!0;let x=W(t.nodeName);if(le(_.uponSanitizeElement,t,{tagName:x,allowedTags:G}),xe&&t.hasChildNodes()&&!ht(t.firstElementChild)&&K(/<[/\w!]/g,t.innerHTML)&&K(/<[/\w!]/g,t.textContent)||t.nodeType===Le.progressingInstruction||xe&&t.nodeType===Le.comment&&K(/<[/\w]/g,t.data))return ne(t),!0;if(!G[x]||ye[x]){if(!ye[x]&&At(x)&&(P.tagNameCheck instanceof RegExp&&K(P.tagNameCheck,x)||P.tagNameCheck instanceof Function&&P.tagNameCheck(x)))return!1;if(ve&&!pe[x]){let F=A(t)||t.parentNode,Y=E(t)||t.childNodes;if(Y&&F){let B=Y.length;for(let Q=B-1;Q>=0;--Q){let ae=y(Y[Q],!0);ae.__removalCount=(t.__removalCount||0)+1,F.insertBefore(ae,g(t))}}}return ne(t),!0}return t instanceof c&&!Yt(t)||(x==="noscript"||x==="noembed"||x==="noframes")&&K(/<\/no(script|embed|frames)/i,t.innerHTML)?(ne(t),!0):(fe&&t.nodeType===Le.text&&(N=t.textContent,ke([M,z,j],F=>{N=Ne(N,F," ")}),t.textContent!==N&&(Ee(n.removed,{element:t.cloneNode()}),t.textContent=N)),le(_.afterSanitizeElements,t,null),!1)},gt=function(t,N,x){if(it&&(N==="id"||N==="name")&&(x in h||x in Vt))return!1;if(!($e&&!Me[N]&&K(H,N))){if(!(tt&&K($,N))){if(!V[N]||Me[N]){if(!(At(t)&&(P.tagNameCheck instanceof RegExp&&K(P.tagNameCheck,t)||P.tagNameCheck instanceof Function&&P.tagNameCheck(t))&&(P.attributeNameCheck instanceof RegExp&&K(P.attributeNameCheck,N)||P.attributeNameCheck instanceof Function&&P.attributeNameCheck(N))||N==="is"&&P.allowCustomizedBuiltInElements&&(P.tagNameCheck instanceof RegExp&&K(P.tagNameCheck,x)||P.tagNameCheck instanceof Function&&P.tagNameCheck(x))))return!1}else if(!Pe[N]){if(!K(re,Ne(x,U,""))){if(!((N==="src"||N==="xlink:href"||N==="href")&&t!=="script"&&er(x,"data:")===0&&st[t])){if(!(rt&&!K(v,Ne(x,U,"")))){if(x)return!1}}}}}}return!0},At=function(t){return t!=="annotation-xml"&&xt(t,J)},Tt=function(t){le(_.beforeSanitizeAttributes,t,null);let{attributes:N}=t;if(!N||Ge(t))return;let x={attrName:"",attrValue:"",keepAttr:!0,allowedAttributes:V,forceKeepAttr:void 0},F=N.length;for(;F--;){let Y=N[F],{name:B,namespaceURI:Q,value:ae}=Y,Te=W(B),We=ae,q=B==="value"?We:tr(We);if(x.attrName=Te,x.attrValue=q,x.keepAttr=!0,x.forceKeepAttr=void 0,le(_.uponSanitizeAttribute,t,x),q=x.attrValue,lt&&(Te==="id"||Te==="name")&&(he(B,t),q=zt+q),xe&&K(/((--!?|])>)|<\/(style|title)/i,q)){he(B,t);continue}if(x.forceKeepAttr)continue;if(!x.keepAttr){he(B,t);continue}if(!nt&&K(/\/>/i,q)){he(B,t);continue}fe&&ke([M,z,j],Nt=>{q=Ne(q,Nt," ")});let Et=W(t.nodeName);if(!gt(Et,Te,q)){he(B,t);continue}if(p&&typeof d=="object"&&typeof d.getAttributeType=="function"&&!Q)switch(d.getAttributeType(Et,Te)){case"TrustedHTML":{q=p.createHTML(q);break}case"TrustedScriptURL":{q=p.createScriptURL(q);break}}if(q!==We)try{Q?t.setAttributeNS(Q,B,q):t.setAttribute(B,q),Ge(t)?ne(t):Lt(n.removed)}catch{he(B,t)}}le(_.afterSanitizeAttributes,t,null)},qt=function w(t){let N=null,x=mt(t);for(le(_.beforeSanitizeShadowDOM,t,null);N=x.nextNode();)le(_.uponSanitizeShadowNode,N,null),yt(N),Tt(N),N.content instanceof f&&w(N.content);le(_.afterSanitizeShadowDOM,t,null)};return n.sanitize=function(w){let t=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{},N=null,x=null,F=null,Y=null;if(ze=!w,ze&&(w="<!-->"),typeof w!="string"&&!ht(w))if(typeof w.toString=="function"){if(w=w.toString(),typeof w!="string")throw be("dirty is not a string, aborting")}else throw be("toString is not a function");if(!n.isSupported)return w;if(Ue||Je(t),n.removed=[],typeof w=="string"&&(ge=!1),ge){if(w.nodeName){let ae=W(w.nodeName);if(!G[ae]||ye[ae])throw be("root node is forbidden and cannot be sanitized in-place")}}else if(w instanceof o)N=dt("<!---->"),x=N.ownerDocument.importNode(w,!0),x.nodeType===Le.element&&x.nodeName==="BODY"||x.nodeName==="HTML"?N=x:N.appendChild(x);else{if(!ce&&!fe&&!oe&&w.indexOf("<")===-1)return p&&_e?p.createHTML(w):w;if(N=dt(w),!N)return ce?null:_e?T:""}N&&Fe&&ne(N.firstChild);let B=mt(ge?w:N);for(;F=B.nextNode();)yt(F),Tt(F),F.content instanceof f&&qt(F.content);if(ge)return w;if(ce){if(we)for(Y=b.call(N.ownerDocument);N.firstChild;)Y.appendChild(N.firstChild);else Y=N;return(V.shadowroot||V.shadowrootmode)&&(Y=O.call(i,Y,!0)),Y}let Q=oe?N.outerHTML:N.innerHTML;return oe&&G["!doctype"]&&N.ownerDocument&&N.ownerDocument.doctype&&N.ownerDocument.doctype.name&&K(Mt,N.ownerDocument.doctype.name)&&(Q="<!DOCTYPE "+N.ownerDocument.doctype.name+`> `+Q),fe&&ke([M,z,j],ae=>{Q=Ne(Q,ae," ")}),p&&_e?p.createHTML(Q):Q},n.setConfig=function(){let w=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{};Je(w),Ue=!0},n.clearConfig=function(){me=null,Ue=!1},n.isValidAttribute=function(w,t,N){me||Je({});let x=W(w),F=W(t);return gt(x,F,N)},n.addHook=function(w,t){typeof t=="function"&&Ee(_[w],t)},n.removeHook=function(w,t){if(t!==void 0){let N=Qt(_[w],t);return N===-1?void 0:jt(_[w],N,1)[0]}return Lt(_[w])},n.removeHooks=function(w){_[w]=[]},n.removeAllHooks=function(){_=Dt()},n}var yr=$t();Ut.exports=yr});var Pt=bt((Er,vt)=>{var I=Ft();vt.exports=class{constructor(n){let h=this;h.damon=n,h.domPurify=I,h.websiteRegex=/^(https?:\/\/)?[-a-zA-Z0-9]*[a-zA-Z0-9]+(\.[-a-zA-Z0-9]*[a-zA-Z0-9]+)+/,h.httpRegex=/^https?:\/\//}damonToSExpression(n){let h=this;return h.implicitMapToSExpression(h.damon.damonToMap(n))}escape(n){return n.replace(/&/g,"&amp;").replace(/</g,"&lt;").replace(/>/g,"&gt;").replace(/"/g,"&quot;").replace(/'/g,"&#039;")}mapToHtmlList(n,h=!1,i=void 0){let l=this;try{l.damon.mapToJSON(n)}catch(s){throw console.log(s),new Error("Provided map value doesn't passes JSON.parse()")}var f=0,r=document.createElement("ul"),o;return i!==void 0&&(o=JSON.parse(i)),r.className="DAMON-List",c(n,r),r;function c(s,u,e=[]){if(typeof u!="object"||u==null||Array.isArray(u))throw new Error("Error List Item number "+f+": @param { {} } list");if(typeof s=="object"&&s!==null&&!Array.isArray(s)&&s instanceof Map&&s.constructor===Map){if(u.tagName=="UL")for(let[C,y]of s){let D=document.createElement("ul"),g=document.createElement("code"),E=document.createElement("span"),A=document.createElement("li");if(A.dataset.graphArbo=Array.from(s.keys()).indexOf(C),e.length>0&&(A.dataset.graphArbo=e.join("-")+"-"+Array.from(s.keys()).indexOf(C)),E.className="type-key",l.websiteRegex.test(C)){let p=C;l.httpRegex.test(C)||(p="https://"+C);let T=I.sanitize(`<a href="${p}"><span>${p}</span></a>`);E.innerHTML=T}else i!==void 0&&C in o["@context"]?E.innerHTML=I.sanitize(`<a href="${o["@context"][C]["@id"]}"><span>${C}</span></a>`):E.textContent=C;if(typeof y=="object"&&y!==null)if(Array.isArray(y))if(s.damonInlineArrays!==void 0&&s.damonInlineArrays.indexOf(C)>-1){g.innerHTML=E.outerHTML+'<span class="operator">: </span>[';for(let p=0,T=y.length;p<T;p++){let m=document.createElement("span"),L=y[p];if(L===!0)m.textContent="true",m.className="type-boolean";else if(L===!1)m.textContent="false",m.className="type-boolean";else if(L===null)m.textContent="null",m.className="type-null";else if(Number.isFinite(L)&&!Number.isNaN(L))m.textContent=L+"",m.className="type-number";else{if(h)if(l.websiteRegex.test(L)){let b=L;l.httpRegex.test(L)||(b="https://"+L),m.innerHTML=I.sanitize(`<a href="${b}">"${b}"</a>`)}else m.innerHTML=`"${L}"`;else if(l.websiteRegex.test(L)){let b=L;l.httpRegex.test(L)||(b="https://"+L),m.innerHTML=I.sanitize(`<a href="${b}">"${b}"</a>`)}else m.textContent=`"${L}"`;m.className="type-string"}p!==0&&(g.innerHTML+=", "),g.appendChild(m)}g.innerHTML+="]",A.appendChild(g),A.appendChild(D),u.appendChild(A)}else g.innerHTML=E.outerHTML+'<span class="operator">: </span>[]',A.appendChild(g),A.appendChild(D),u.appendChild(A),c(y,D,e.concat([Array.from(s.keys()).indexOf(C)]));else s.implicitMaps!==void 0&&s.implicitMaps.indexOf(C)>-1?g.innerHTML=E.outerHTML:g.innerHTML=E.outerHTML+'<span class="operator">: </span>{}',A.appendChild(g),A.appendChild(D),u.appendChild(A),c(y,D,e.concat([Array.from(s.keys()).indexOf(C)]));else{f++,g.innerHTML=E.outerHTML+'<span class="operator">: </span>';let p=document.createElement("span"),T=y;if(T===!0)p.textContent="true",p.className="type-boolean";else if(T===!1)p.textContent="false",p.className="type-boolean";else if(T===null)p.textContent="null",p.className="type-null";else if(Number.isFinite(T)&&!Number.isNaN(T))p.textContent=T+"",p.className="type-number";else{if(h)if(l.websiteRegex.test(T)){let m=T;l.httpRegex.test(T)||(m="https://"+T),p.innerHTML=I.sanitize(`<a href="${m}">"${m}"</a>`)}else p.innerHTML=`"${T}"`;else if(l.websiteRegex.test(T)){let m=T;l.httpRegex.test(T)||(m="https://"+T),p.innerHTML=I.sanitize(`<a href="${m}">"${m}"</a>`)}else p.textContent=`"${T}"`;p.className="type-string"}s.implicitNulls===void 0||s.implicitNulls.indexOf(C)==-1?g.appendChild(p):g.innerHTML=g.innerHTML.slice(0,-2),A.appendChild(g),u.appendChild(A)}}}else if(Array.isArray(s))for(var a=0,d=s.length;a<d;a++){let C=document.createElement("ul"),y=document.createElement("code"),D=document.createElement("li");if(D.dataset.graphArbo=a,e.length>0&&(D.dataset.graphArbo=e.join("-")+"-"+a),typeof s[a]=="object"&&s[a]!==null)if(Array.isArray(s[a]))if(s.damonInlineArrays!==void 0&&s.damonInlineArrays.indexOf(a)>-1){y.innerHTML+="[";for(let g=0,E=s[a].length;g<E;g++){let A=document.createElement("span"),p=s[a][g];if(p===!0)A.textContent="true",A.className="type-boolean";else if(p===!1)A.textContent="false",A.className="type-boolean";else if(p===null)A.textContent="null",A.className="type-null";else if(Number.isFinite(p)&&!Number.isNaN(p))A.textContent=p+"",A.className="type-number";else{if(h)if(l.websiteRegex.test(p)){let T=p;l.httpRegex.test(p)||(T="https://"+p),A.innerHTML=I.sanitize(`<a href="${T}">"${T}"</a>`)}else A.innerHTML=`"${p}"`;else if(l.websiteRegex.test(p)){let T=p;l.httpRegex.test(p)||(T="https://"+p),A.innerHTML=I.sanitize(`<a href="${T}">"${T}"</a>`)}else A.textContent=`"${p}"`;A.className="type-string"}g!==0&&(y.innerHTML+=", "),y.appendChild(A)}y.innerHTML+="]",D.appendChild(y),D.appendChild(C),u.appendChild(D)}else y.textContent="[]",D.appendChild(y),D.appendChild(C),u.appendChild(D),c(s[a],C,e.concat(a));else y.textContent="{}",D.appendChild(y),D.appendChild(C),u.appendChild(D),c(s[a],C,e.concat(a));else{f++;let g=s[a];if(g===!0)y.textContent="true",y.className="type-boolean";else if(g===!1)y.textContent="false",y.className="type-boolean";else if(g===null)y.textContent="null",y.className="type-null";else if(Number.isFinite(g)&&!Number.isNaN(g))y.textContent=g+"",y.className="type-number";else{if(h)if(l.websiteRegex.test(g)){let E=g;l.httpRegex.test(g)||(E="https://"+g),y.innerHTML=I.sanitize(`<a href="${E}">"${E}"</a>`)}else y.innerHTML=`"${g}"`;else if(l.websiteRegex.test(g)){let E=g;l.httpRegex.test(g)||(E="https://"+g),y.innerHTML=I.sanitize(`<a href="${E}">"${E}"</a>`)}else y.textContent=`"${g}"`;y.className="type-string"}D.appendChild(y),D.appendChild(C),u.appendChild(D)}}}}mapToHtmlTable(n,h=!1){let i=this;try{i.damon.mapToJSON(n)}catch{throw new Error("Provided value doesn't passes JSON.parse().")}var l=0,f=document.createElement("table"),r=document.createElement("thead"),o=document.createElement("tbody"),c=!1,s=0;if(f.className="DAMON-Table",typeof n!="object"||n==null||Array.isArray(n)||!(n instanceof Map)||n.constructor!==Map)throw new Error("Error: expected an Object value, saw otherwise.");for(let[u,e]of n){if(typeof e=="object"&&e!==null&&!Array.isArray(e)&&e instanceof Map&&e.constructor===Map)if(l==0){let a=document.createElement("tr");s=e.length;for(let[d,C]of e)if(C===null){let y=document.createElement("th");y.dataset.graphArbo=l+"-"+a.children.length,h?i.websiteRegex.test(d)?y.innerHTML=I.sanitize(`<a href="${d}">${d}</a>`):y.innerHTML=`${d}`:i.websiteRegex.test(d)?y.innerHTML=I.sanitize(`<a href="${d}">${d}</a>`):y.textContent=`${d}`,a.appendChild(y)}else throw new Error("Error row "+l+": expected implicit null property, saw otherwise.");r.appendChild(a),c=!0}else{if(e.length!=s)throw new Error("Error row "+l+": cells total doesn't match the header's.");let a=document.createElement("tr");for(let[d,C]of e)if(C===null){let y=document.createElement("td");y.dataset.graphArbo=l+"-"+a.children.length,h?i.websiteRegex.test(d)?y.innerHTML=I.sanitize(`<a href="${d}">${d}</a>`):y.innerHTML=`${d}`:i.websiteRegex.test(d)?y.innerHTML=I.sanitize(`<a href="${d}">${d}</a>`):y.textContent=`${d}`,a.appendChild(y)}else throw new Error("Error row "+l+": expected implicit null property, saw otherwise.");o.appendChild(a)}else throw new Error("Error row "+l+": expected an Object value, saw otherwise.");l++}return c&&f.appendChild(r),f.appendChild(o),f}mapTreeLeavesToHtmlTable(n,h=!1){let i=this;try{i.damon.mapToJSON(n)}catch{throw new Error("Provided map value doesn't passes JSON.parse()")}var l=0,f=0,r=document.createElement("table"),o=document.createElement("thead"),c=document.createElement("tbody"),s=!1;if(r.className="DAMON-LeavesToTable",typeof n!="object"||n==null||Array.isArray(n)||!(n instanceof Map)||n.constructor!==Map)throw new Error("Error List Item number "+l+": @param { {} } list");for(let[e,a]of n){if(typeof a=="object"&&!Array.isArray(a)){if(e=="head"&&!s){try{u(a,o)}catch{return}s=!0}else if(e=="body")try{u(a,c)}catch{return}}else if(typeof a!="object"&&e=="caption"){let d=document.createElement("caption");h?d.innerHTML=a:d.textContent=a,r.appendChild(d)}else throw new Error("Error List Item number "+l+": @param { {} } list");l++}return s&&r.appendChild(o),r.appendChild(c),r;function u(e,a,d=0,C=[]){if(typeof a!="object"||a==null)throw new Error("Error List Item number "+l+": @param { {} } list");if(typeof e=="object"&&e!==null&&!Array.isArray(e)&&e instanceof Map&&e.constructor===Map){if(a.tagName=="THEAD")if(Array.from(e.keys()).length==1)if(typeof e.get(Array.from(e.keys())[0])=="object"&&e.get(Array.from(e.keys())[0])!==null)l++,u(e.get(Array.from(e.keys())[0]),a,d+1,C.concat([Array.from(e.keys())[0]]));else throw new Error("Error List Item number "+l+": @param { {} } list");else throw new Error("Error List Item number "+l+": @param { {} } list");else if(a.tagName=="TBODY"){if(Array.from(e.keys()).length==0)throw new Error("Error List Item number "+l+": @param { {} } list");for(let[y,D]of e)if(typeof D=="object"&&D!==null)l++,u(D,a,d+1,C.concat([y]));else throw new Error("Error List Item number "+l+": @param { {} } list")}}else if(Array.isArray(e)){if(a.tagName=="THEAD")if(e.length==1){l++,f=d;let y=document.createElement("tr");C.push(e[0]);for(let D=0,g=C.length;D<g;D++){let E=document.createElement("th");h?E.innerHTML=C[D]:E.textContent=C[D],y.appendChild(E)}a.appendChild(y)}else throw new Error("Error List Item number "+l+": @param { {} } list");else if(a.tagName=="TBODY")if(d==f){if(e.length==0)throw new Error("Error List Item number "+l+": @param { {} } list");for(let y=0,D=e.length;y<D;y++){l++;let g=document.createElement("tr");for(let A=0,p=C.length;A<p;A++){let T=document.createElement("td");h?T.innerHTML=C[A]:T.textContent=C[A],g.appendChild(T)}let E=document.createElement("td");h?E.innerHTML=e[y]:E.textContent=e[y],E.textContent=e[y],g.appendChild(E),a.appendChild(g)}}else throw new Error("Error List Item number "+l+": @param { {} } list")}}}htmlToJSON(n){let h=this;var i=0;if(n.firstElementChild.textContent=="{}")return h._mapToJSON(l(n,new Map));if(n.firstElementChild.textContent=="[]")return h._mapToJSON(l(n,[]));function l(f,r){if(typeof f!="object"||f==null||Array.isArray(f))throw new Error("Error List Item number "+i+": @param { {} } list");if(typeof r=="object"&&r!==null&&!Array.isArray(r)&&r instanceof Map&&r.constructor===Map){for(let o=0,c=f.children.length;o<c;o++)if(i++,f.children[o].tagName=="LI")if(f.children[o].firstElementChild.tagName=="CODE")if(f.children[o].firstElementChild.innerHTML.length){let s=f.children[o].firstElementChild.innerHTML.trim();if(s[s.length-1]==":"&&s.length>1){let u=f.children[o].children[1];if(u.tagName=="UL"&&u.firstElementChild.tagName=="LI"&&u.children.length==1&&u.firstElementChild.firstElementChild.tagName=="CODE"){i++;let e=u.firstElementChild.firstElementChild.textContent.trim();e=="true"?r.set(s.slice(0,-1),!0):e=="false"?r.set(s.slice(0,-1),!1):e=="null"?r.set(s.slice(0,-1),null):isFinite(e)&&!isNaN(parseFloat(e))?r.set(s.slice(0,-1),e*1):r.set(s.slice(0,-1),e)}else throw new Error("Error List Item number "+i+": not DAMON-compliant.")}else if(s[s.length-4]==":"&&s.length>4){if(s.slice(-3)==" []")if(r.set(s.slice(0,-4),[]),f.children[o].children[1].tagName=="UL")l(f.children[o].children[1],r.get(s.slice(0,-4)));else throw new Error("Error List Item number "+i+": not DAMON-compliant.");else if(s.slice(-3)==" {}")if(r.set(s.slice(0,-4),new Map),f.children[o].children[1].tagName=="UL")l(f.children[o].children[1],r.get(s.slice(0,-4)));else throw new Error("Error List Item number "+i+": not DAMON-compliant.")}else throw new Error("Error List Item number "+i+": map items need a key")}else throw new Error("Error List Item number "+i+": empty node.");else throw new Error("Error List Item number "+i+": not DAMON-compliant.")}else if(Array.isArray(r)){for(let o=0,c=f.children.length;o<c;o++)if(i++,f.children[o].tagName=="LI")if(f.children[o].firstElementChild.tagName=="CODE")if(f.children[o].firstElementChild.innerHTML.length){let s=f.children[o].firstElementChild.innerHTML.trim();if(s[s.length-1]==":"&&s.length>1)throw new Error("Error List Item number "+i+": lists can't have keys.");if(s[s.length-4]==":"&&s.length>4)throw new Error("Error List Item number "+i+": not DAMON-compliant.");if(s=="[]")if(r.push([]),f.children[o].children[1]&&f.children[o].children[1].tagName=="UL")l(f.children[o].children[1],r[r.length-1]);else throw new Error("Error List Item number "+i+": not DAMON-compliant.");else if(s=="{}")if(r.push({}),f.children[o].children[1]&&f.children[o].children[1].tagName=="UL")l(f.children[o].children[1],r[r.length-1]);else throw new Error("Error List Item number "+i+": not DAMON-compliant.");else s=="true"?r.push(!0):s=="false"?r.push(!1):s=="null"?r.push(null):isFinite(s)&&!isNaN(parseFloat(s))?r.push(s*1):r.push(s)}else throw new Error("Error List Item number "+i+": empty node.");else throw new Error("Error List Item number "+i+": not DAMON-compliant.")}else throw new Error("Error List Item number "+i+": @param { {} | [] } jsonMap");return r}}implicitMapToSExpression(n){let h=this;var i="";if(typeof n=="object"&&n!==null&&n instanceof Map&&n.constructor===Map)return i+=`[\r `,l(n),i+="]",JSON.parse(i),i;return typeof n=="string"&&(n='"'+n+'"'),JSON.parse(n),n;function l(f,r=1){if(typeof f=="object"&&f!==null&&!Array.isArray(f)&&f instanceof Map&&f.constructor===Map){let s=-1;for(let[u,e]of f){s++;let a=u.slice(u.match(/^[0-9]+-/)[0].length);if(typeof e=="object"&&e!==null)if(Array.isArray(e))e.length>0?(i+=" ".repeat(r)+`${JSON.stringify(a)}, [\r `,l(e,r+1),i+=" ".repeat(r)+"]"):i+=" ".repeat(r)+`${JSON.stringify(a)}, []`;else if(Array.from(e.keys()).length>0){if(r==1)if(s==0)i="";else throw new Error("Multiple S-Expression roots");i+=" ".repeat(r)+`[${JSON.stringify(a)}, \r `,l(e,r+1),r!=1&&(i+=" ".repeat(r)+"]")}else i+=" ".repeat(r)+`${JSON.stringify(a)}, []`;else{if(e===!0)throw new Error("Booleans require quotes");if(e===!1)throw new Error("Booleans require quotes");e===null?i+=" ".repeat(r)+`${JSON.stringify(a)}`:Number.isFinite(e)&&!Number.isNaN(e)?i+=" ".repeat(r)+`${JSON.stringify(a)}, `+e:i+=" ".repeat(r)+`${JSON.stringify(a)}, `+JSON.stringify(e)}u!=Array.from(f.keys())[Array.from(f.keys()).length-1]?i+=`,\r `:i+=`\r `}}else if(Array.isArray(f))for(var o=0,c=f.length;o<c;o++){if(typeof f[o]=="object"&&f[o]!==null)Array.isArray(f[o])?f[o].length>0?(i+=" ".repeat(r)+`[\r `,l(f[o],r+1),i+=" ".repeat(r)+"]"):i+=" ".repeat(r)+"[]":Array.from(f[o].keys()).length>0?(i+=" ".repeat(r)+`[\r `,l(f[o],r+1),i+=" ".repeat(r)+"]"):i+=" ".repeat(r)+"[]";else{if(f[o]===!0)throw new Error("Booleans require quotes");if(f[o]===!1)throw new Error("Booleans require quotes");if(f[o]===null)throw new Error("Array-nulls require quotes");Number.isFinite(f[o])&&!Number.isNaN(f[o])?i+=" ".repeat(r)+f[o]:i+=" ".repeat(r)+JSON.stringify(f[o])}o!=c-1?i+=`,\r `:i+=`\r `}}}damonMapToMathJs(n){let h=this,i="";if(Array.isArray(n))return f(n),i.slice(0,-1);return typeof n=="object"&&n!==null&&n instanceof Map&&n.constructor===Map?(f(n),i.slice(0,-1)):(typeof n=="string"&&(n=JSON.stringify(n)),JSON.parse(n),n);function l(r){return r[0].toLowerCase()+r.slice(1)}function f(r,o=0){if(typeof r=="object"&&r!==null&&!Array.isArray(r)&&r instanceof Map&&r.constructor===Map)for(let[u,e]of r){let a=u.slice(u.match(/^[0-9]+-/)[0].length);a=="Power"&&(a="Pow"),a=="e"&&(a="2.718281828459045"),a=="i"&&(a="sqrt(-1)"),a=="LN2"&&(a="0.6931471805599453"),a=="LN10"&&(a="2.302585092994046"),a=="LOG2E"&&(a="1.4426950408889634"),a=="LOG10E"&&(a="0.4342944819032518"),a=="phi"&&(a="1.618033988749895"),a=="pi"&&(a="3.141592653589793"),a=="SQRT1_2"&&(a="0.7071067811865476"),a=="SQRT2"&&(a="1.4142135623730951"),a=="tau"&&(a="6.283185307179586"),typeof e=="object"&&e!==null?Array.isArray(e)?e.length>0?(i+=" ".repeat(o)+`${JSON.stringify(l(a)).slice(1,-1)}( `,f(e,o+1),i+=" ".repeat(o)+")"):i+=" ".repeat(o)+`${JSON.stringify(l(a)).slice(1,-1)}()`:Array.from(e.keys()).length>0?(i+=" ".repeat(o)+`${JSON.stringify(l(a)).slice(1,-1)}( `,f(e,o+1),i+=" ".repeat(o)+")"):i+=" ".repeat(o)+`${JSON.stringify(l(a)).slice(1,-1)}()`:e===!0?i+=" ".repeat(o)+`${JSON.stringify(l(a)).slice(1,-1)}(true)`:e===!1?i+=" ".repeat(o)+`${JSON.stringify(l(a)).slice(1,-1)}(false)`:e===null?i+=" ".repeat(o)+`${JSON.stringify(l(a)).slice(1,-1)}`:Number.isFinite(e)&&!Number.isNaN(e)?i+=" ".repeat(o)+`${JSON.stringify(l(a)).slice(1,-1)}(`+e+")":i+=" ".repeat(o)+`${JSON.stringify(l(a)).slice(1,-1)}(`+JSON.stringify(e)+")",u!=Array.from(r.keys())[Array.from(r.keys()).length-1]?i+=`, `:i+=` `}else if(Array.isArray(r))for(var c=0,s=r.length;c<s;c++)typeof r[c]=="object"&&r[c]!==null?Array.isArray(r[c])?r[c].length>0?r.damonInlineArrays!==void 0&&r.damonInlineArrays.indexOf(c)>-1?r[c]===!0?i+=" ".repeat(o)+"true":r[c]===!1?i+=" ".repeat(o)+"false":r[c]===null?i+=" ".repeat(o)+"null":Number.isFinite(r[c])&&!Number.isNaN(r[c])?i+=" ".repeat(o)+r[c]:i+=" ".repeat(o)+JSON.stringify(r[c]).slice(1,-1):(i+=" ".repeat(o)+`( `,f(r[c],o+1),i+=" ".repeat(o)+")"):i+=" ".repeat(o)+"()":Array.from(r[c].keys()).length>0?(i+=" ".repeat(o)+`( `,f(r[c],o+1),i+=" ".repeat(o)+")"):i+=" ".repeat(o)+"()":r[c]===!0?i+=" ".repeat(o)+"true":r[c]===!1?i+=" ".repeat(o)+"false":r[c]===null?i+=" ".repeat(o)+"null":Number.isFinite(r[c])&&!Number.isNaN(r[c])?i+=" ".repeat(o)+r[c]:i+=" ".repeat(o)+JSON.stringify(r[c]).slice(1,-1),c!=s-1?i+=`, `:i+=` `}}_mapsDiff(n,h){let i=this;try{i.damon.mapToJSON(n),i.damon.mapToJSON(h)}catch{throw new Error("Provided map value doesn't passes JSON.parse()")}if(typeof n!=typeof h||typeof n=="object"&&n!==null&&!Array.isArray(n)&&n instanceof Map&&n.constructor===Map&&(h==null||Array.isArray(h)||!(h instanceof Map)||h.constructor!==Map))throw new Error("Different root types.");var l;if(typeof n=="object"&&n!==null&&!Array.isArray(n)&&n instanceof Map&&n.constructor===Map)return l=new Map,f(n),l;if(Array.isArray(n))return l=[],f(n),l;function f(r,o=[]){if(typeof r=="object"&&r!==null&&!Array.isArray(r)&&r instanceof Map&&r.constructor===Map){let c="",s=null,u=h;for(let d=0,C=o.length;d<C;d++)typeof u=="object"&&u!==null&&!Array.isArray(u)&&u instanceof Map&&u.constructor===Map?u=u.get(Array.from(u.keys())[o[d]]):u=u[o[d]];let e=l;for(let d=0,C=o.length;d<C;d++)typeof e=="object"&&e!==null&&!Array.isArray(e)&&e instanceof Map&&e.constructor===Map&&Array.from(e.keys()).length?e=e.get(Array.from(e.keys())[o[d]]):e=e[o[d]];let a=0;for(let[d,C]of r)a>Array.from(u.keys()).length-1?typeof C=="object"&&C!==null&&!Array.isArray(C)&&C instanceof Map&&C.constructor===Map?Array.from(u.keys()).indexOf(d)!==-1&&typeof u.get(d)=="object"&&u.get(d)!==null&&!Array.isArray(u.get(d))&&u.get(d)instanceof Map&&u.get(d).constructor===Map?e.set(a+"-yellow",null):e.set(a+"-red",null):Array.isArray(C)?Array.from(u.keys()).indexOf(d)!==-1&&Array.isArray(u.get(d))?e.set(a+"-yellow",null):e.set(a+"-red",null):Array.from(u.keys()).indexOf(d)!==-1&&C===u.get(d)?e.set(a+"-yellow",null):e.set(a+"-red",null):(c=Array.from(u.keys())[a],s=u.get(c),typeof C=="object"&&C!==null&&!Array.isArray(C)&&C instanceof Map&&C.constructor===Map?typeof s=="object"&&s!==null&&!Array.isArray(s)&&s instanceof Map&&s.constructor===Map&&d===c?(e.set(a+"-green",new Map),Array.from(C.keys()).length>0&&f(C,o.concat([a]))):e.set(a+"-red",null):Array.isArray(C)?Array.isArray(s)&&d===c?(e.set(a+"-green",[]),C.length>0&&f(C,o.concat([a]))):e.set(a+"-red",null):C===s&&d===c?e.set(a+"-green","green"):e.set(a+"-red",null)),a++;if(Array.from(r.keys()).length<Array.from(u.keys()).length){let d=0;for(let[C,y]of u){if(d<=a-1){d++;continue}typeof y=="object"&&y!==null&&!Array.isArray(y)&&y instanceof Map&&y.constructor===Map?Array.from(r.keys()).indexOf(C)!==-1&&typeof r.get(C)=="object"&&r.get(C)!==null&&!Array.isArray(r.get(C))&&r.get(C)instanceof Map&&r.get(C).constructor===Map?e.set(a+"-yellow",null):e.set(a+"-red",null):Array.isArray(y)?Array.from(r.keys()).indexOf(C)!==-1&&Array.isArray(r.get(C))?e.set(a+"-yellow",null):e.set(a+"-red",null):Array.from(r.keys()).indexOf(C)!==-1&&y===r.get(C)?e.set(a+"-yellow",null):e.set(a+"-red",null),d++}}}else{let c=null,s=h;for(let e=0,a=o.length;e<a;e++)typeof s=="object"&&s!==null&&!Array.isArray(s)&&s instanceof Map&&s.constructor===Map&&Array.from(s.keys()).length?s=s.get(Array.from(s.keys())[o[e]]):s=s[o[e]];let u=l;for(let e=0,a=o.length;e<a;e++)typeof u=="object"&&u!==null&&!Array.isArray(u)&&u instanceof Map&&u.constructor===Map&&Array.from(u.keys()).length?u=u.get(Array.from(u.keys())[o[e]]):u=u[o[e]];for(let e=0,a=r.length;e<a;e++)e>s.length-1?u[e]="red":(c=s[e],typeof r[e]=="object"&&r[e]!==null&&!Array.isArray(r[e])&&r[e]instanceof Map&&r[e].constructor===Map?typeof c=="object"&&c!==null&&!Array.isArray(c)&&c instanceof Map&&c.constructor===Map?(u[e]=new Map,Array.from(r[e].keys()).length>0&&f(r[e],o.concat([e]))):u[e]="red":Array.isArray(r[e])?Array.isArray(c)?(u[e]=[],r[e].length>0&&f(r[e],o.concat([e]))):u[e]="red":r[e]===c?u[e]="green":u[e]="red");if(r.length<s.length)for(let e=0,a=s.length;e<a;e++)e<=r.length-1||(u[e]="red")}}}sortMap(n,h){let i=this,l=Array.from(n.keys()),f=Array.from(h.keys()),r=new Map;for(let o=0,c=l.length;o<c;o++)h.get(l[o])!==void 0&&r.set(l[o],h.get(l[o]));for(let o=0,c=f.length;o<c;o++)l.indexOf(f[o])==-1&&r.set(f[o],h.get(f[o]));return r}renderDiff(n,h,i=!1){let l=this,f=document.createElement("div"),r=document.createElement("div"),o=document.createElement("ul"),c=l._mapsDiff(n,h);return f.className="DAMON-Diff",r.className="DAMON-Diff-legend",o.className="DAMON-List",r.innerHTML='<span id="damonDiffRed"><span>Red</span>: Difference</span>; <span id="damonDiffBlue"><span>Blue</span>: Addition</span>; <span id="damonDiffGreen"><span>Green</span>: Displacement</span>',s(c,o),f.appendChild(r),f.appendChild(o),f;function s(e,a,d=[],C="green"){if(C==="green"){if(typeof a!="object"||a==null||Array.isArray(a))throw new Error("Error List Item "+d.concat("-")+": @param { {} } list");if(typeof e=="object"&&e!==null&&!Array.isArray(e)&&e instanceof Map&&e.constructor===Map){if(a.tagName=="UL"){let g="",E=null,A=n;for(let b=0,S=d.length;b<S;b++)typeof A=="object"&&A!==null&&!Array.isArray(A)&&A instanceof Map&&A.constructor===Map?A=A.get(Array.from(A.keys())[d[b]]):A=A[d[b]];let p="",T=null,m=h;for(let b=0,S=d.length;b<S;b++)typeof m=="object"&&m!==null&&!Array.isArray(m)&&m instanceof Map&&m.constructor===Map?m=m.get(Array.from(m.keys())[d[b]]):m=m[d[b]];let L=0;for(let[b,S]of e){let O=Array.from(e.keys())[L].split("-")[1],_=e.get(Array.from(e.keys())[L]),M=document.createElement("ul"),z=document.createElement("code"),j=document.createElement("span"),H=document.createElement("li");if(j.className="type-key",H.className=O+"-diff",H.className==="red-diff"&&L<=Array.from(A.keys()).length-1?L>Array.from(m.keys()).length-1?(b="",S=""):(L>Array.from(A.keys()).length-1&&(H.className="blue-diff",H.setAttribute("aria-describedby","damonDiffBlue")),p=Array.from(m.keys())[L],T=m.get(p),b=p,S=T):H.className==="green-diff"?(H.dataset.graphArbo=L,d.length>0&&(H.dataset.graphArbo=d.join("-")+"-"+L),H.className="",g=Array.from(m.keys())[L],E=m.get(g),b=g,S=E):H.className==="yellow-diff"?L>Array.from(A.keys()).length-1?(H.className="green-diff",H.setAttribute("aria-describedby","damonDiffGreen"),g=Array.from(m.keys())[L],E=m.get(g),b=g,S=E):(b="",S="",H.className="red-diff",H.setAttribute("aria-describedby","damonDiffRed")):(H.className="blue-diff",H.setAttribute("aria-describedby","damonDiffBlue"),g=Array.from(m.keys())[L],E=m.get(g),b=g,S=E),H.className==="red-diff"&&H.setAttribute("aria-describedby","damonDiffRed"),l.websiteRegex.test(b)){let $=b;l.httpRegex.test(b)||($="https://"+b);let v=I.sanitize(`<a href="${$}"><span>${$}</span></a>`);j.innerHTML=v}else j.textContent=b;if(typeof S=="object"&&S!==null)if(Array.isArray(S))if(n.damonInlineArrays!==void 0&&n.damonInlineArrays.indexOf(b)>-1){z.innerHTML=j.outerHTML+'<span class="operator">: </span>[';for(let $=0,v=S.length;$<v;$++){let U=document.createElement("span"),J=S[$];if(J===!0)U.textContent="true",U.className="type-boolean";else if(J===!1)U.textContent="false",U.className="type-boolean";else if(J===null)U.textContent="null",U.className="type-null";else if(Number.isFinite(J)&&!Number.isNaN(J))U.textContent=J+"",U.className="type-number";else{if(i)if(l.websiteRegex.test(J)){let re=J;l.httpRegex.test(J)||(re="https://"+J),U.innerHTML=I.sanitize(`<a href="${re}">"${re}"</a>`)}else U.innerHTML=`"${J}"`;else if(l.websiteRegex.test(J)){let re=J;l.httpRegex.test(J)||(re="https://"+J),U.innerHTML=I.sanitize(`<a href="${re}">"${re}"</a>`)}else U.textContent=`"${J}"`;U.className="type-string"}$!==0&&(z.innerHTML+=", "),z.appendChild(U)}z.innerHTML+="]",H.appendChild(z),H.appendChild(M),a.appendChild(H)}else z.innerHTML=j.outerHTML+'<span class="operator">: </span>[]',H.appendChild(z),H.appendChild(M),a.appendChild(H),O=="green"?s(_,M,d.concat([L]),O):s(_,M,d.concat([L]),O);else n.implicitMaps!==void 0&&n.implicitMaps.indexOf(b)>-1?z.innerHTML=j.outerHTML:z.innerHTML=j.outerHTML+'<span class="operator">: </span>{}',H.appendChild(z),H.appendChild(M),a.appendChild(H),O=="green"?s(_,M,d.concat([L]),O):s(_,M,d.concat([L]),O);else{z.innerHTML=j.outerHTML+'<span class="operator">: </span>';let $=document.createElement("span"),v=S;if(v===!0)$.textContent="true",$.className="type-boolean";else if(v===!1)$.textContent="false",$.className="type-boolean";else if(v===null)$.textContent="null",$.className="type-null";else if(Number.isFinite(v)&&!Number.isNaN(v))$.textContent=v+"",$.className="type-number";else{if(i)if(l.websiteRegex.test(v)){let U=v;l.httpRegex.test(v)||(U="https://"+v),$.innerHTML=I.sanitize(`<a href="${U}">"${U}"</a>`)}else $.innerHTML=`"${v}"`;else if(l.websiteRegex.test(v)){let U=v;l.httpRegex.test(v)||(U="https://"+v),$.innerHTML=I.sanitize(`<a href="${U}">"${U}"</a>`)}else $.textContent=`"${v}"`;$.className="type-string"}n.implicitNulls===void 0||n.implicitNulls.indexOf(b)==-1?z.appendChild($):z.innerHTML=z.innerHTML.slice(0,-2),H.appendChild(z),a.appendChild(H)}L++}}}else if(Array.isArray(e)){let g=n;for(let A=0,p=d.length;A<p;A++)typeof g=="object"&&g!==null&&!Array.isArray(g)&&g instanceof Map&&g.constructor===Map&&Array.from(g.keys()).length?g=g.get(Array.from(g.keys())[d[A]]):g=g[d[A]];let E=h;for(let A=0,p=d.length;A<p;A++)typeof E=="object"&&E!==null&&!Array.isArray(E)&&E instanceof Map&&E.constructor===Map&&Array.from(E.keys()).length?E=E.get(Array.from(E.keys())[d[A]]):E=E[d[A]];for(var y=0,D=e.length;y<D;y++){let A=e[y].split("-")[1],p=document.createElement("ul"),T=document.createElement("code"),m=document.createElement("li"),L;if(m.className=e[y].split("-")[1]+"-diff",m.className==="red-diff"&&y<=g.length-1?y>E.length-1?L="":(y>g.length-1&&(m.className=="red-diff"?(m.className="blue-diff",m.setAttribute("aria-describedby","damonDiffBlue")):(m.className="green-diff",m.setAttribute("aria-describedby","damonDiffGreen"))),L=E[y]):(m.className==="green-diff"?(m.dataset.graphArbo=y,d.length>0&&(m.dataset.graphArbo=d.join("-")+"-"+y),m.className=""):(m.className="blue-diff",m.setAttribute("aria-describedby","damonDiffBlue")),L=g[y]),m.className==="red-diff"&&m.setAttribute("aria-describedby","damonDiffRed"),typeof L=="object"&&L!==null)if(Array.isArray(L))if(n.damonInlineArrays!==void 0&&n.damonInlineArrays.indexOf(y)>-1){T.innerHTML+="[";for(let b=0,S=L.length;b<S;b++){let O=document.createElement("span"),_=L[b];if(_===!0)O.textContent="true",O.className="type-boolean";else if(_===!1)O.textContent="false",O.className="type-boolean";else if(_===null)O.textContent="null",O.className="type-null";else if(Number.isFinite(_)&&!Number.isNaN(_))O.textContent=_+"",O.className="type-number";else{if(i)if(l.websiteRegex.test(_)){let M=_;l.httpRegex.test(_)||(M="https://"+_),O.innerHTML=I.sanitize(`<a href="${M}">"${M}"</a>`)}else O.innerHTM