agentic-mermaid 0.5.3 → 0.5.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +34 -0
- package/dist/agent-core.d.ts +7 -7
- package/dist/agent-core.js +1 -1
- package/dist/agent.d.ts +7 -7
- package/dist/agent.js +1 -1
- package/dist/agentic-mermaid-mcp.js +1 -1
- package/dist/am.js +1 -1
- package/dist/browser-lazy/chunks/{agentic-producer-core-CC6OOLDW.js → agentic-producer-core-ECZ3CMZM.js} +1 -1
- package/dist/browser-lazy/chunks/{architecture-QUFVKYJR.js → architecture-H5LTMKQW.js} +6 -6
- package/dist/browser-lazy/chunks/{block-6J3Q63BO.js → block-566X6FNV.js} +5 -5
- package/dist/browser-lazy/chunks/{builtin-backends-7SOZZHPF.js → builtin-backends-VAFEZXKY.js} +6 -6
- package/dist/browser-lazy/chunks/{c4-SQVBZAKJ.js → c4-ZXFDLBFK.js} +5 -5
- package/dist/browser-lazy/chunks/{chunk-5X6MJX3H.js → chunk-2JQXRKBC.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-E2WMJZNM.js → chunk-37FZNMPR.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-TYZOZXUJ.js → chunk-3JTYTXA6.js} +6 -6
- package/dist/browser-lazy/chunks/{chunk-PQGPS2YV.js → chunk-4NILRBC7.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-AMJLVPUB.js → chunk-5LKPDHPC.js} +2 -2
- package/dist/browser-lazy/chunks/{chunk-BY2CPG6B.js → chunk-62MR3LWJ.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-J7FFAFQF.js → chunk-64JFHCJC.js} +1 -1
- package/dist/browser-lazy/chunks/chunk-6GPDLZFQ.js +1 -0
- package/dist/browser-lazy/chunks/{chunk-VWVZGQE2.js → chunk-6UOOATQR.js} +1 -1
- package/dist/browser-lazy/chunks/chunk-7TTFBJYA.js +1 -0
- package/dist/browser-lazy/chunks/chunk-7UFOFWBA.js +20 -0
- package/dist/browser-lazy/chunks/{chunk-5B2Z7575.js → chunk-A7V5VDKN.js} +1 -1
- package/dist/browser-lazy/chunks/chunk-CPO5P4L2.js +1 -0
- package/dist/browser-lazy/chunks/chunk-EIYLJ4FI.js +20 -0
- package/dist/browser-lazy/chunks/{chunk-X2UYKWKM.js → chunk-G4JBA7HU.js} +3 -3
- package/dist/browser-lazy/chunks/{chunk-2UIA2IME.js → chunk-IUI4DYC3.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-QA6GJQ4X.js → chunk-J57YRC2M.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-BU5LHXNJ.js → chunk-LBXXKLIR.js} +3 -3
- package/dist/browser-lazy/chunks/chunk-NKW2ZNCD.js +1 -0
- package/dist/browser-lazy/chunks/{chunk-ICC7HBJX.js → chunk-O34YYEQV.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-UL6NDWLL.js → chunk-OBI5U5XU.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-YCEICNM6.js → chunk-OFOS57WQ.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-OZ443IVJ.js → chunk-PSZEE64O.js} +7 -7
- package/dist/browser-lazy/chunks/{chunk-SZELX2EJ.js → chunk-PXTLV57R.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-HLWUNUCM.js → chunk-QVSZOF5M.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-2GPK4VFF.js → chunk-TT5GR5EJ.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-DF6765YX.js → chunk-V6I2VGNQ.js} +5 -5
- package/dist/browser-lazy/chunks/{chunk-CN7WTBWB.js → chunk-VRZKI33U.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-2SH76OTH.js → chunk-XHU3A432.js} +1 -1
- package/dist/browser-lazy/chunks/{chunk-NO7ZIVRU.js → chunk-YVNJDVQO.js} +1 -1
- package/dist/browser-lazy/chunks/chunk-Z7UHFVKN.js +6 -0
- package/dist/browser-lazy/chunks/{class-5QA4SCTS.js → class-XIFNVBFE.js} +8 -8
- package/dist/{zenuml/chunks/decode-BWERFDGK.js → browser-lazy/chunks/decode-5MFOG3AZ.js} +1 -1
- package/dist/browser-lazy/chunks/{elk.bundled-L4CADV5W.js → elk.bundled-RYWHIS5N.js} +8 -8
- package/dist/browser-lazy/chunks/er-VEUYJBGG.js +11 -0
- package/dist/browser-lazy/chunks/{eventmodeling-2BPLHWRN.js → eventmodeling-G7DITZX7.js} +10 -10
- package/dist/browser-lazy/chunks/{flowchart-NEIMZTB5.js → flowchart-SSFIU4EU.js} +1 -1
- package/dist/browser-lazy/chunks/{forest-implementation-AEP24AIP.js → forest-implementation-RWFF7XDV.js} +1 -1
- package/dist/browser-lazy/chunks/{gantt-RDPIFYAF.js → gantt-HQNVDX2B.js} +6 -6
- package/dist/browser-lazy/chunks/{gitgraph-N4Y5RYB7.js → gitgraph-Z5MN6M6L.js} +4 -4
- package/dist/browser-lazy/chunks/{ishikawa-LD3YBDJN.js → ishikawa-UEERNFQV.js} +2 -2
- package/dist/browser-lazy/chunks/{journey-6YQR5DJX.js → journey-3BEWWGB5.js} +6 -6
- package/dist/browser-lazy/chunks/{kanban-PLMJ7NBW.js → kanban-2WFNCWLB.js} +10 -10
- package/dist/browser-lazy/chunks/{mermaid-yaml-runtime-QVYX4EWK.js → mermaid-yaml-runtime-IK4ET4BT.js} +8 -8
- package/dist/browser-lazy/chunks/{mindmap-K2UBFO3Y.js → mindmap-R2C6SNYR.js} +4 -4
- package/dist/browser-lazy/chunks/{packet-CUW4QY6Y.js → packet-GMVCI5YZ.js} +3 -3
- package/dist/browser-lazy/chunks/{pie-7F7UUCG3.js → pie-WER45DKC.js} +7 -7
- package/dist/browser-lazy/chunks/{quadrant-TOONO2WC.js → quadrant-NCUPSFKN.js} +4 -4
- package/dist/browser-lazy/chunks/{radar-J6JVWVAX.js → radar-WLYS4YC5.js} +8 -8
- package/dist/browser-lazy/chunks/render-core-42UVWIPF.js +3 -0
- package/dist/browser-lazy/chunks/{requirement-CMAKDJPO.js → requirement-AK3NWMJ6.js} +7 -7
- package/dist/browser-lazy/chunks/{sankey-AWXQEP3F.js → sankey-C2DY6WVU.js} +4 -4
- package/dist/browser-lazy/chunks/{sequence-Q2RJRB4L.js → sequence-D4WJB44W.js} +1 -1
- package/dist/browser-lazy/chunks/{state-WRBFQEDX.js → state-YUQVESE7.js} +2 -2
- package/dist/browser-lazy/chunks/{timeline-D2KILFXM.js → timeline-BMBJJXWR.js} +4 -4
- package/dist/browser-lazy/chunks/{treemap-N3VYX5D4.js → treemap-B66XBZZ6.js} +3 -3
- package/dist/browser-lazy/chunks/{xychart-G73OGK66.js → xychart-HAVFROGT.js} +6 -6
- package/dist/browser-lazy/chunks/{zenuml-H4BXNYXR.js → zenuml-62RLYFWP.js} +7 -7
- package/dist/browser-lazy/index.js +1 -1
- package/dist/browser.global.js +507 -507
- package/dist/{chunk-DQDKA5ND.js → chunk-2DNGDTJD.js} +2 -2
- package/dist/{chunk-GVCHLSHH.js → chunk-4F2UGYTM.js} +2 -2
- package/dist/{chunk-H3NCS2XZ.js → chunk-7XYB2LNC.js} +2 -2
- package/dist/chunk-DOFB572I.js +58 -0
- package/dist/chunk-EHJI3QYE.js +52 -0
- package/dist/{chunk-UA234O4M.js → chunk-HINRNKPO.js} +2 -2
- package/dist/{chunk-JZOJ4YGS.js → chunk-KXMANAST.js} +33 -33
- package/dist/{chunk-7CRDX2QR.js → chunk-U4MT3RRE.js} +2 -2
- package/dist/{chunk-NKNFOREZ.js → chunk-WYIB6BUR.js} +2 -2
- package/dist/{cli-YGGTJZH7.js → cli-ZYIDBYNS.js} +2 -2
- package/dist/{index-EeXqJXr5.d.ts → index-Bvhprdxz.d.ts} +3 -3
- package/dist/index.d.ts +4 -4
- package/dist/index.js +1 -1
- package/dist/{mcp-cli-63DYXTVD.js → mcp-cli-YVDCORWA.js} +2 -2
- package/dist/{paint-certification-6rwQjIv_.d.ts → paint-certification-BoLyr006.d.ts} +2 -2
- package/dist/{server-5NEOHOFS.js → server-4JGAVXR3.js} +2 -2
- package/dist/{svg-styles-BdnoM7AT.d.ts → svg-styles-BnCoXyYe.d.ts} +1 -1
- package/dist/svg-styles.d.ts +1 -1
- package/dist/svg-styles.js +1 -1
- package/dist/svg.d.ts +4 -4
- package/dist/svg.js +1 -1
- package/dist/{types-BcS52Mjt.d.ts → types-CLVJCaH2.d.ts} +1 -1
- package/dist/zenuml/chunks/{appearance-UOQ5KA6O.js → appearance-5RM5MVM2.js} +1 -1
- package/dist/zenuml/chunks/{builtin-backends-KDKE7YHO.js → builtin-backends-UTNWL4N3.js} +11 -11
- package/dist/zenuml/chunks/{chunk-QWX77U7G.js → chunk-3A6S6GNB.js} +2 -2
- package/dist/zenuml/chunks/{chunk-OXQWRSBM.js → chunk-55WS466K.js} +11 -11
- package/dist/zenuml/chunks/chunk-6J4BGPB2.js +29 -0
- package/dist/zenuml/chunks/chunk-CNLL4BGF.js +1 -0
- package/dist/zenuml/chunks/{chunk-RZ6XK5CD.js → chunk-IARQ24W3.js} +13 -13
- package/dist/zenuml/chunks/{chunk-42DXZ5C6.js → chunk-ZNZRIISS.js} +2 -2
- package/dist/{browser-lazy/chunks/decode-63UIZGD2.js → zenuml/chunks/decode-LDNNXEAO.js} +1 -1
- package/dist/zenuml/chunks/{mermaid-yaml-runtime-KZVU74WU.js → mermaid-yaml-runtime-A5CNJ3IE.js} +8 -8
- package/dist/zenuml/chunks/render-core-ECIWU5ZS.js +3 -0
- package/dist/zenuml/chunks/{zenuml-EA2ZFRUX.js → zenuml-N3LZMB2G.js} +8 -8
- package/dist/zenuml.d.ts +2 -2
- package/dist/zenuml.js +1 -1
- package/docs/MCP-DIRECTORY-LISTINGS.md +81 -12
- package/docs/api.md +1 -1
- package/package.json +1 -1
- package/server.json +2 -2
- package/dist/browser-lazy/chunks/chunk-4LHYF3BS.js +0 -1
- package/dist/browser-lazy/chunks/chunk-FAIMVOX5.js +0 -6
- package/dist/browser-lazy/chunks/chunk-GVOEAY52.js +0 -1
- package/dist/browser-lazy/chunks/chunk-J35HAQQF.js +0 -20
- package/dist/browser-lazy/chunks/chunk-RIVTHZAQ.js +0 -1
- package/dist/browser-lazy/chunks/chunk-Z3FDIVLN.js +0 -20
- package/dist/browser-lazy/chunks/er-7ZSKGN7Y.js +0 -11
- package/dist/browser-lazy/chunks/render-core-BZOM3K7D.js +0 -3
- package/dist/chunk-EHCMJUMD.js +0 -52
- package/dist/chunk-OMY6NRQD.js +0 -58
- package/dist/zenuml/chunks/chunk-7TVYPTDW.js +0 -1
- package/dist/zenuml/chunks/chunk-RLJEI7YN.js +0 -29
- package/dist/zenuml/chunks/render-core-V5RQ737O.js +0 -3
- /package/dist/browser-lazy/chunks/{chunk-5FQ534HP.js → chunk-BMZ24VPS.js} +0 -0
- /package/dist/browser-lazy/chunks/{chunk-2I4UPL7Q.js → chunk-D6MQ7QSU.js} +0 -0
- /package/dist/browser-lazy/chunks/{chunk-CQE4HQEW.js → chunk-HJVO5VC3.js} +0 -0
- /package/dist/browser-lazy/chunks/{chunk-LH7HUDKW.js → chunk-L4UC3KGS.js} +0 -0
- /package/dist/browser-lazy/chunks/{chunk-NMQQMRIR.js → chunk-MFTQWHUB.js} +0 -0
- /package/dist/browser-lazy/chunks/{chunk-N5ELX7LR.js → chunk-PJJSDGLB.js} +0 -0
- /package/dist/browser-lazy/chunks/{chunk-CSFUKSU6.js → chunk-QCU5G5PZ.js} +0 -0
- /package/dist/browser-lazy/chunks/{chunk-VQYYGAXP.js → chunk-TLFX3U6S.js} +0 -0
- /package/dist/browser-lazy/chunks/{chunk-5UVGUSD6.js → chunk-YHMTSXIR.js} +0 -0
- /package/dist/zenuml/chunks/{chunk-EVPSMEKN.js → chunk-GC7IPQ5P.js} +0 -0
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import{A as e,B as t,C as i,F as a,G as r,b as n,c as o,d as s,e as l,f as c,h as d,i as u,j as f,k as p,m as m,n as g,p as h,q as y,s as v,u as b,v as S,z as $}from"./chunk-OXQWRSBM.js";import{a as w,b as x,c as C,e as O,g as j,i as k,l as E,m as F,n as A,o as I,p as T}from"./chunk-QWX77U7G.js";import{$ as z,a as D,c as L,m as M,ta as R}from"./chunk-RLJEI7YN.js";import{a as q,b as N,d as P,e as B,ga as W,ha as _,ia as V,ja as J,ka as G,la as H,v as U,w as Y}from"./chunk-RZ6XK5CD.js";function K(e){return q(e)?e:void 0}function X(e,t){let i=e.$ref;if("string"!=typeof i||!i.startsWith("#/"))return;let a=t;for(let e of i.slice(2).split("/")){if(!q(a))return;a=a[e.replaceAll("~1","/").replaceAll("~0","~")]}return K(a)}function Q(e,t,i=t,a=[],r={}){let n="field"===r.diagnostics,o=(e,t,i,a,s)=>{let l=K(t.$defs)?t:i,c=(e,t=!0)=>[{path:a,message:e,generic:t}];if(void 0!==t.$ref){let i=X(t,l);return i?o(e,i,l,a,s):c(n?"uses an unresolved schema reference":`uses unresolved schema reference ${String(t.$ref)}`,!1)}let d=Array.isArray(t.anyOf)?t.anyOf.map(K).filter(e=>void 0!==e):[];if(d.length>0){let i=n?d.filter(t=>(function e(t,i,a){let r=X(i,a);if(r)return e(t,r,a);let n=Array.isArray(i.anyOf)?i.anyOf.map(K).filter(e=>void 0!==e):[];if(n.length>0)return n.some(i=>e(t,i,a));switch(i.type){case"null":return null===t;case"string":return"string"==typeof t;case"number":case"integer":return"number"==typeof t;case"boolean":return"boolean"==typeof t;case"array":return Array.isArray(t);case"object":return q(t);default:return!0}})(e,t,l)):[],r=(i.length>0?i:d).map(t=>o(e,t,l,a,new Set(s)));if(!r.some(e=>0===e.length)){let e=t["x-agentic-mermaid-validation-expectation"];return n&&0!==i.length||"string"!=typeof e?r.sort((e,t)=>e.length-t.length)[0]??c("must match an allowed shape"):c(`must be ${e}`)}}let u=Array.isArray(t.oneOf)?t.oneOf.map(K).filter(e=>void 0!==e):[];if(u.length>0&&!n){let t=u.filter(t=>0===o(e,t,l,a,new Set(s)).length);if(1!==t.length)return c(`must match exactly one allowed shape (matched ${t.length})`)}let f=n?(e,t)=>e===t:Object.is;if(Object.prototype.hasOwnProperty.call(t,"const")&&!f(e,t.const))return c(`must equal ${String(t.const)}`);if(Array.isArray(t.enum)&&!(n?t.enum.includes(e):t.enum.some(t=>Object.is(t,e))))return c(`must be one of ${t.enum.map(String).join(" | ")}`);let p=t.type;if(!(void 0===p||"null"===p&&null===e||"string"===p&&"string"==typeof e||"number"===p&&"number"==typeof e&&Number.isFinite(e)||"integer"===p&&"number"==typeof e&&Number.isFinite(e)&&Number.isInteger(e)||"boolean"===p&&"boolean"==typeof e||"array"===p&&Array.isArray(e)||"object"===p&&q(e))){let e="number"===p?"a finite number":"integer"===p?"a finite integer":"object"===p?"a plain JSON object":"array"===p?"an array":"null"===p?"null":`a ${String(p)}`;return c(`must be ${e}`)}if("number"==typeof e){if("number"==typeof t.minimum&&e<t.minimum)return c(`must be at least ${t.minimum}`);if("number"==typeof t.exclusiveMinimum&&e<=t.exclusiveMinimum)return c(`must be greater than ${t.exclusiveMinimum}`);if("number"==typeof t.maximum&&e>t.maximum)return c(`must be at most ${t.maximum}`)}if("string"==typeof e){if("number"==typeof t.minLength&&e.length<t.minLength)return c(`must contain at least ${t.minLength} character${1===t.minLength?"":"s"}`);if("string"==typeof t.pattern){let i;try{i=new RegExp(t.pattern,n?void 0:"u").test(e)}catch{return c("uses an invalid schema pattern",!1)}if(!i)return c(r.patternMismatch?.(t)??`must match ${t.pattern}`)}if("number"==typeof t.maxLength&&e.length>t.maxLength)return c(`must contain at most ${t.maxLength} characters`)}if(Array.isArray(e)&&"array"===p){if("number"==typeof t.minItems&&e.length<t.minItems)return c(`must contain at least ${t.minItems} item${1===t.minItems?"":"s"}`);if("number"==typeof t.maxItems&&e.length>t.maxItems)return c(`must contain at most ${t.maxItems} items`);if(s.has(e))return c("must be acyclic",!1);let i=K(t.items);if(i){s.add(e);try{let t=e.flatMap((e,t)=>o(e,i,l,[...a,t],s));if(t.length>0)return t}finally{s.delete(e)}}}if(q(e)&&("object"===p||void 0!==t.properties||void 0!==t.required||void 0!==t.additionalProperties)){if(s.has(e))return c("must be acyclic",!1);s.add(e);try{let i=K(t.properties)??{},r=Array.isArray(t.required)?t.required.filter(e=>"string"==typeof e):[],n=[];for(let t of r)Object.prototype.hasOwnProperty.call(e,t)||n.push({path:[...a,t],message:"is required",generic:!1});for(let[r,c]of Object.entries(e)){if(x(r)){n.push({path:[...a,r],message:"uses a forbidden prototype key",generic:!1});continue}let e=K(i[r]);if(e){n.push(...o(c,e,l,[...a,r],s));continue}if(!1===t.additionalProperties){n.push({path:[...a,r],message:"is not allowed",generic:!1});continue}let d=K(t.additionalProperties);d&&n.push(...o(c,d,l,[...a,r],s))}if(n.length>0)return n}finally{s.delete(e)}}return r.validateRuntime?.(e,t,a)??[]};return o(e,t,i,a,new Set)}var Z,ee=new Set(Object.values(e).flat()),et=new Set(["primaryTextColor","textColor","nodeTextColor","secondaryTextColor","tertiaryTextColor"]),ei=new Set([...Array.from({length:12},(e,t)=>`pie${t+1}`),"pieStrokeColor","pieOuterStrokeColor","pieSectionTextColor","pieTitleTextColor","pieLegendTextColor"]),ea=new Set(["pieSectionTextColor","pieTitleTextColor","pieLegendTextColor"]),er=new Set([...Array.from({length:8},(e,t)=>[`git${t}`,`gitBranchLabel${t}`,`gitInv${t}`]).flat(),"commitLabelColor","commitLabelBackground"]),en=new Set([...Array.from({length:8},(e,t)=>`gitBranchLabel${t}`),"commitLabelColor"]),eo=new Set(Array.from({length:12},(e,t)=>[`cScale${t}`,`cScaleLabel${t}`,`cScaleInv${t}`]).flat()),es=new Set([...Array.from({length:12},(e,t)=>`cScale${t}`),"titleColor"]),el=new Set(["clusterBkg","clusterBorder"]),ec=["backgroundColor","titleColor","xAxisLabelColor","xAxisTickColor","xAxisLineColor","xAxisTitleColor","yAxisLabelColor","yAxisTickColor","yAxisLineColor","yAxisTitleColor","legendTextColor","dataLabelColor"],ed=new Set(["xAxisTickColor","xAxisLineColor","yAxisTickColor","yAxisLineColor"]),eu=[["bg",e.bg],["surface",e.surface],["line",e.line],["accent",e.accent]];function ef(e,t=!1){let i="string"==typeof e?e:JSON.stringify(e)??String(e);return t&&i.length>256?`${i.slice(0,256)}\u2026`:i}var ep=class extends Error{code="INVALID_THEME_COLOR";key;value;constructor(e,t,i){let a=ef(t,!0);super(m({what:`themeVariables.${e}: ${JSON.stringify(a)} is not a CSS color`,expectedForm:G(i),example:`themeVariables.${e}:#f96`}).message),this.name="ThemeVariableColorError",this.key=e,this.value=a}},em=class extends Error{code="INVALID_RENDER_COLOR";field;value;constructor(e,t){let i=ef(t,!0);super(m({what:`render option "${e}": ${JSON.stringify(i)} is not a CSS color for Architecture derived paint`,expectedForm:"a drawable CSS color or var(--name)",example:`${e}:#f96`}).message),this.name="RenderOptionColorError",this.field=e,this.value=i}},eg=class extends Error{code="INVALID_CONFIG_COLOR";path;value;constructor(e,t,i,a){let r=ef(t,!0),n=ef(e,!0);super(m({what:`${n}: ${JSON.stringify(r)} is not ${"array"===a?"an array of CSS colors":"map"===a?"a map of CSS colors":"a CSS color"}`,expectedForm:a?"array"===a?"an array of drawable CSS colors":"an object mapping node labels to drawable CSS colors":G(i),example:`${n}${"array"===a?': ["#f96"]':"map"===a?': {"A":"#f96"}':": #f96"}`}).message),this.name="FamilyConfigColorError",this.path=n,this.value=r}};function eh(e){return null===e||"object"!=typeof e||Array.isArray(e)?void 0:e}function ey(e,t,i,a){let r=e[i];if(void 0!==r&&void 0===J(r,a))throw new eg(`${t}.${i}`,r,a)}function ev(e,t,i,a){let r=e[i];if(void 0!==r){if(!Array.isArray(r))throw new eg(`${t}.${i}`,r,a,"array");for(let e=0;e<r.length;e++){let n=r[e];if(void 0===J(n,a))throw new eg(`${t}.${i}[${e}]`,n,a)}}}function eb(e,t,i,a){if(!e)return;let r="pie"===t?ei:"gitgraph"===t?er:"timeline"===t?eo:"radar"===t?es:"architecture"===t?el:void 0,n=r?new Set([...ee,...r]):ee,o="architecture"===t?new Set(eu.flatMap(([t,r])=>i?.[t]!==void 0||"surface"===t&&a&&(a?.groupHeaderSurface||a?.groupSurface?.trim().toLowerCase()!=="none")||("line"===t||"accent"===t)&&a?.edgeStroke?[]:r.find(t=>{let i=e[t];return"string"==typeof i&&i.length>0})??[])):void 0;for(let i of n){if(!Object.hasOwn(e,i))continue;let r=e[i];if(void 0===r)continue;let n=ef(r),s=et.has(i)||ea.has(i)||en.has(i)||"timeline"===t&&eo.has(i)||"radar"===t&&es.has(i)||"architecture"===t&&("clusterBkg"===i&&(!a||!a.groupHeaderSurface&&a.groupSurface?.trim().toLowerCase()==="none")||o?.has(i));if(void 0===J(r,!s))throw new ep(i,n,!s)}if("radar"===t){let t=eh(e.radar);if(!t)return;for(let e of["axisColor","graticuleColor"]){let i=t[e];if(void 0===i)continue;let a="graticuleColor"===e,r=ef(i);if(void 0===J(i,a))throw new ep(`radar.${e}`,r,a)}}if("xychart"===t){let t=eh(e.xyChart);if(!t)return;for(let e of ec){if("backgroundColor"===e&&i?.bg!==void 0)continue;let a=t[e];if(void 0===a)continue;let r=ed.has(e),n=ef(a);if(void 0===J(a,r))throw new ep(`xyChart.${e}`,n,r)}let a=t.plotColorPalette;if(void 0!==a&&("string"!=typeof a||0!==a.trim().length)){let e="string"==typeof a?_(a):a;if(!Array.isArray(e))throw new ep("xyChart.plotColorPalette",JSON.stringify(a)??String(a),!1);for(let[t,i]of e.entries()){let e="string"==typeof i?i.trim():JSON.stringify(i)??String(i);if(void 0===J(i))throw new ep(`xyChart.plotColorPalette[${t}]`,e,!1)}}}if("architecture"===t&&("string"!=typeof e.mainBkg||0===e.mainBkg.length)){let t=e.secondaryColor;if(void 0!==t){let e=ef(t);if(void 0===J(t,!0))throw new ep("secondaryColor",e,!0)}}}var eS={schemaVersion:2,provenance:{version:"12.2.0"},families:[{id:"flowchart",headers:[{value:"flowchart",agenticStatus:"native"},{value:"graph",agenticStatus:"native"},{value:"flowchart-elk",agenticStatus:"unsupported"}]},{id:"swimlane",headers:[{value:"swimlane-beta",agenticStatus:"unsupported"}]},{id:"sequence",headers:[{value:"sequenceDiagram",agenticStatus:"native"}]},{id:"class",headers:[{value:"classDiagram",agenticStatus:"native"},{value:"classDiagram-v2",agenticStatus:"native"}]},{id:"state",headers:[{value:"stateDiagram",agenticStatus:"native"},{value:"stateDiagram-v2",agenticStatus:"native"}]},{id:"er",headers:[{value:"erDiagram",agenticStatus:"native"}]},{id:"journey",headers:[{value:"journey",agenticStatus:"native"}]},{id:"gantt",headers:[{value:"gantt",agenticStatus:"native"}]},{id:"pie",headers:[{value:"pie",agenticStatus:"native"}]},{id:"quadrant",headers:[{value:"quadrantChart",agenticStatus:"native"}]},{id:"requirement",headers:[{value:"requirementDiagram",agenticStatus:"native"},{value:"requirement",agenticStatus:"native"}]},{id:"gitgraph",headers:[{value:"gitGraph",agenticStatus:"native"}]},{id:"c4",headers:[{value:"C4Context",agenticStatus:"native"},{value:"C4Container",agenticStatus:"native"},{value:"C4Component",agenticStatus:"native"},{value:"C4Dynamic",agenticStatus:"native"},{value:"C4Deployment",agenticStatus:"native"}]},{id:"mindmap",headers:[{value:"mindmap",agenticStatus:"native"}]},{id:"timeline",headers:[{value:"timeline",agenticStatus:"native"}]},{id:"zenuml",headers:[{value:"zenuml",agenticStatus:"native"}]},{id:"sankey",headers:[{value:"sankey",agenticStatus:"native"},{value:"sankey-beta",agenticStatus:"native"}]},{id:"xychart",headers:[{value:"xychart",agenticStatus:"native"},{value:"xychart-beta",agenticStatus:"native"}]},{id:"block",headers:[{value:"block",agenticStatus:"native"},{value:"block-beta",agenticStatus:"native"}]},{id:"packet",headers:[{value:"packet",agenticStatus:"native"},{value:"packet-beta",agenticStatus:"native"}]},{id:"kanban",headers:[{value:"kanban",agenticStatus:"native"}]},{id:"architecture",headers:[{value:"architecture",agenticStatus:"native"},{value:"architecture-beta",agenticStatus:"native"}]},{id:"radar",headers:[{value:"radar-beta",agenticStatus:"native"}]},{id:"eventmodeling",headers:[{value:"eventmodeling",agenticStatus:"native"}]},{id:"treemap",headers:[{value:"treemap",agenticStatus:"native"},{value:"treemap-beta",agenticStatus:"native"}]},{id:"venn",headers:[{value:"venn-beta",agenticStatus:"unsupported"}]},{id:"ishikawa",headers:[{value:"ishikawa",agenticStatus:"native"},{value:"ishikawa-beta",agenticStatus:"native"}]},{id:"wardley",headers:[{value:"wardley-beta",agenticStatus:"unsupported"}]},{id:"cynefin",headers:[{value:"cynefin-beta",agenticStatus:"unsupported"}]},{id:"treeview",headers:[{value:"treeView-beta",agenticStatus:"unsupported"}]},{id:"railroad",headers:[{value:"railroad-beta",agenticStatus:"unsupported"},{value:"railroad-ebnf-beta",agenticStatus:"unsupported"},{value:"railroad-abnf-beta",agenticStatus:"unsupported"},{value:"railroad-peg-beta",agenticStatus:"unsupported"}]},{id:"agentflow",headers:[{value:"agentflow-beta",agenticStatus:"unsupported"}]},{id:"usecase",headers:[{value:"usecase-beta",agenticStatus:"unsupported"}]}]};function e$(e,t,i,a){let r=g(e),l=-1,d=-1,u=e.length,m=Math.max(0,Math.min(e.length,i??0)),$=m;for(;$<=e.length;){let i=/\r\n?|\n/g;i.lastIndex=$;let a=i.exec(e),r=a?.index??-1,n=r<0?e.length:r,o=e.slice($,n).replace(/\r$/,""),c=o.trim(),f=c.startsWith(t)?c.slice(t.length):"",p=/^\s*;/.test(f);if(c===t||p||/^\s/.test(f)&&s(c)!==c){if(d=(l=$+o.indexOf(t))+t.length,c===t)u=a?a.index+a[0].length:e.length;else for(u=p?e.indexOf(";",d)+1:d;u<n&&/[ \t]/.test(e[u]);)u++;break}if(r<0)break;$=a.index+a[0].length}if(l<0){let i=e.indexOf(t,m);l=i<0?m:i,d=Math.min(e.length,l+t.length);let a=e.indexOf(`
|
|
1
|
+
import{A as e,B as t,C as i,F as a,G as r,b as n,c as o,d as s,e as l,f as c,h as d,i as u,j as f,k as p,m as m,n as g,p as h,q as y,s as v,u as b,v as S,z as $}from"./chunk-55WS466K.js";import{a as w,b as x,c as C,e as O,g as j,i as k,l as E,m as F,n as A,o as I,p as T}from"./chunk-3A6S6GNB.js";import{a as z,ba as D,c as L,m as M,va as R}from"./chunk-6J4BGPB2.js";import{a as q,b as N,d as P,e as B,ia as W,ja as _,ka as V,la as J,ma as G,na as H,v as U,w as K}from"./chunk-IARQ24W3.js";function Y(e){return q(e)?e:void 0}function X(e,t){let i=e.$ref;if("string"!=typeof i||!i.startsWith("#/"))return;let a=t;for(let e of i.slice(2).split("/")){if(!q(a))return;a=a[e.replaceAll("~1","/").replaceAll("~0","~")]}return Y(a)}function Q(e,t,i=t,a=[],r={}){let n="field"===r.diagnostics,o=(e,t,i,a,s)=>{let l=Y(t.$defs)?t:i,c=(e,t=!0)=>[{path:a,message:e,generic:t}];if(void 0!==t.$ref){let i=X(t,l);return i?o(e,i,l,a,s):c(n?"uses an unresolved schema reference":`uses unresolved schema reference ${String(t.$ref)}`,!1)}let d=Array.isArray(t.anyOf)?t.anyOf.map(Y).filter(e=>void 0!==e):[];if(d.length>0){let i=n?d.filter(t=>(function e(t,i,a){let r=X(i,a);if(r)return e(t,r,a);let n=Array.isArray(i.anyOf)?i.anyOf.map(Y).filter(e=>void 0!==e):[];if(n.length>0)return n.some(i=>e(t,i,a));switch(i.type){case"null":return null===t;case"string":return"string"==typeof t;case"number":case"integer":return"number"==typeof t;case"boolean":return"boolean"==typeof t;case"array":return Array.isArray(t);case"object":return q(t);default:return!0}})(e,t,l)):[],r=(i.length>0?i:d).map(t=>o(e,t,l,a,new Set(s)));if(!r.some(e=>0===e.length)){let e=t["x-agentic-mermaid-validation-expectation"];return n&&0!==i.length||"string"!=typeof e?r.sort((e,t)=>e.length-t.length)[0]??c("must match an allowed shape"):c(`must be ${e}`)}}let u=Array.isArray(t.oneOf)?t.oneOf.map(Y).filter(e=>void 0!==e):[];if(u.length>0&&!n){let t=u.filter(t=>0===o(e,t,l,a,new Set(s)).length);if(1!==t.length)return c(`must match exactly one allowed shape (matched ${t.length})`)}let f=n?(e,t)=>e===t:Object.is;if(Object.prototype.hasOwnProperty.call(t,"const")&&!f(e,t.const))return c(`must equal ${String(t.const)}`);if(Array.isArray(t.enum)&&!(n?t.enum.includes(e):t.enum.some(t=>Object.is(t,e))))return c(`must be one of ${t.enum.map(String).join(" | ")}`);let p=t.type;if(!(void 0===p||"null"===p&&null===e||"string"===p&&"string"==typeof e||"number"===p&&"number"==typeof e&&Number.isFinite(e)||"integer"===p&&"number"==typeof e&&Number.isFinite(e)&&Number.isInteger(e)||"boolean"===p&&"boolean"==typeof e||"array"===p&&Array.isArray(e)||"object"===p&&q(e))){let e="number"===p?"a finite number":"integer"===p?"a finite integer":"object"===p?"a plain JSON object":"array"===p?"an array":"null"===p?"null":`a ${String(p)}`;return c(`must be ${e}`)}if("number"==typeof e){if("number"==typeof t.minimum&&e<t.minimum)return c(`must be at least ${t.minimum}`);if("number"==typeof t.exclusiveMinimum&&e<=t.exclusiveMinimum)return c(`must be greater than ${t.exclusiveMinimum}`);if("number"==typeof t.maximum&&e>t.maximum)return c(`must be at most ${t.maximum}`)}if("string"==typeof e){if("number"==typeof t.minLength&&e.length<t.minLength)return c(`must contain at least ${t.minLength} character${1===t.minLength?"":"s"}`);if("string"==typeof t.pattern){let i;try{i=new RegExp(t.pattern,n?void 0:"u").test(e)}catch{return c("uses an invalid schema pattern",!1)}if(!i)return c(r.patternMismatch?.(t)??`must match ${t.pattern}`)}if("number"==typeof t.maxLength&&e.length>t.maxLength)return c(`must contain at most ${t.maxLength} characters`)}if(Array.isArray(e)&&"array"===p){if("number"==typeof t.minItems&&e.length<t.minItems)return c(`must contain at least ${t.minItems} item${1===t.minItems?"":"s"}`);if("number"==typeof t.maxItems&&e.length>t.maxItems)return c(`must contain at most ${t.maxItems} items`);if(s.has(e))return c("must be acyclic",!1);let i=Y(t.items);if(i){s.add(e);try{let t=e.flatMap((e,t)=>o(e,i,l,[...a,t],s));if(t.length>0)return t}finally{s.delete(e)}}}if(q(e)&&("object"===p||void 0!==t.properties||void 0!==t.required||void 0!==t.additionalProperties)){if(s.has(e))return c("must be acyclic",!1);s.add(e);try{let i=Y(t.properties)??{},r=Array.isArray(t.required)?t.required.filter(e=>"string"==typeof e):[],n=[];for(let t of r)Object.prototype.hasOwnProperty.call(e,t)||n.push({path:[...a,t],message:"is required",generic:!1});for(let[r,c]of Object.entries(e)){if(x(r)){n.push({path:[...a,r],message:"uses a forbidden prototype key",generic:!1});continue}let e=Y(i[r]);if(e){n.push(...o(c,e,l,[...a,r],s));continue}if(!1===t.additionalProperties){n.push({path:[...a,r],message:"is not allowed",generic:!1});continue}let d=Y(t.additionalProperties);d&&n.push(...o(c,d,l,[...a,r],s))}if(n.length>0)return n}finally{s.delete(e)}}return r.validateRuntime?.(e,t,a)??[]};return o(e,t,i,a,new Set)}var Z,ee=new Set(Object.values(e).flat()),et=new Set(["primaryTextColor","textColor","nodeTextColor","secondaryTextColor","tertiaryTextColor"]),ei=new Set([...Array.from({length:12},(e,t)=>`pie${t+1}`),"pieStrokeColor","pieOuterStrokeColor","pieSectionTextColor","pieTitleTextColor","pieLegendTextColor"]),ea=new Set(["pieSectionTextColor","pieTitleTextColor","pieLegendTextColor"]),er=new Set([...Array.from({length:8},(e,t)=>[`git${t}`,`gitBranchLabel${t}`,`gitInv${t}`]).flat(),"commitLabelColor","commitLabelBackground"]),en=new Set([...Array.from({length:8},(e,t)=>`gitBranchLabel${t}`),"commitLabelColor"]),eo=new Set(Array.from({length:12},(e,t)=>[`cScale${t}`,`cScaleLabel${t}`,`cScaleInv${t}`]).flat()),es=new Set([...Array.from({length:12},(e,t)=>`cScale${t}`),"titleColor"]),el=new Set(["clusterBkg","clusterBorder"]),ec=["backgroundColor","titleColor","xAxisLabelColor","xAxisTickColor","xAxisLineColor","xAxisTitleColor","yAxisLabelColor","yAxisTickColor","yAxisLineColor","yAxisTitleColor","legendTextColor","dataLabelColor"],ed=new Set(["xAxisTickColor","xAxisLineColor","yAxisTickColor","yAxisLineColor"]),eu=[["bg",e.bg],["surface",e.surface],["line",e.line],["accent",e.accent]];function ef(e,t=!1){let i="string"==typeof e?e:JSON.stringify(e)??String(e);return t&&i.length>256?`${i.slice(0,256)}\u2026`:i}var ep=class extends Error{code="INVALID_THEME_COLOR";key;value;constructor(e,t,i){let a=ef(t,!0);super(m({what:`themeVariables.${e}: ${JSON.stringify(a)} is not a CSS color`,expectedForm:G(i),example:`themeVariables.${e}:#f96`}).message),this.name="ThemeVariableColorError",this.key=e,this.value=a}},em=class extends Error{code="INVALID_RENDER_COLOR";field;value;constructor(e,t){let i=ef(t,!0);super(m({what:`render option "${e}": ${JSON.stringify(i)} is not a CSS color for Architecture derived paint`,expectedForm:"a drawable CSS color or var(--name)",example:`${e}:#f96`}).message),this.name="RenderOptionColorError",this.field=e,this.value=i}},eg=class extends Error{code="INVALID_CONFIG_COLOR";path;value;constructor(e,t,i,a){let r=ef(t,!0),n=ef(e,!0);super(m({what:`${n}: ${JSON.stringify(r)} is not ${"array"===a?"an array of CSS colors":"map"===a?"a map of CSS colors":"a CSS color"}`,expectedForm:a?"array"===a?"an array of drawable CSS colors":"an object mapping node labels to drawable CSS colors":G(i),example:`${n}${"array"===a?': ["#f96"]':"map"===a?': {"A":"#f96"}':": #f96"}`}).message),this.name="FamilyConfigColorError",this.path=n,this.value=r}};function eh(e){return null===e||"object"!=typeof e||Array.isArray(e)?void 0:e}function ey(e,t,i,a){let r=e[i];if(void 0!==r&&void 0===J(r,a))throw new eg(`${t}.${i}`,r,a)}function ev(e,t,i,a){let r=e[i];if(void 0!==r){if(!Array.isArray(r))throw new eg(`${t}.${i}`,r,a,"array");for(let e=0;e<r.length;e++){let n=r[e];if(void 0===J(n,a))throw new eg(`${t}.${i}[${e}]`,n,a)}}}function eb(e,t,i,a){if(!e)return;let r="pie"===t?ei:"gitgraph"===t?er:"timeline"===t?eo:"radar"===t?es:"architecture"===t?el:void 0,n=r?new Set([...ee,...r]):ee,o="architecture"===t?new Set(eu.flatMap(([t,r])=>i?.[t]!==void 0||"surface"===t&&a&&(a?.groupHeaderSurface||a?.groupSurface?.trim().toLowerCase()!=="none")||("line"===t||"accent"===t)&&a?.edgeStroke?[]:r.find(t=>{let i=e[t];return"string"==typeof i&&i.length>0})??[])):void 0;for(let i of n){if(!Object.hasOwn(e,i))continue;let r=e[i];if(void 0===r)continue;let n=ef(r),s=et.has(i)||ea.has(i)||en.has(i)||"timeline"===t&&eo.has(i)||"radar"===t&&es.has(i)||"architecture"===t&&("clusterBkg"===i&&(!a||!a.groupHeaderSurface&&a.groupSurface?.trim().toLowerCase()==="none")||o?.has(i));if(void 0===J(r,!s))throw new ep(i,n,!s)}if("radar"===t){let t=eh(e.radar);if(!t)return;for(let e of["axisColor","graticuleColor"]){let i=t[e];if(void 0===i)continue;let a="graticuleColor"===e,r=ef(i);if(void 0===J(i,a))throw new ep(`radar.${e}`,r,a)}}if("xychart"===t){let t=eh(e.xyChart);if(!t)return;for(let e of ec){if("backgroundColor"===e&&i?.bg!==void 0)continue;let a=t[e];if(void 0===a)continue;let r=ed.has(e),n=ef(a);if(void 0===J(a,r))throw new ep(`xyChart.${e}`,n,r)}let a=t.plotColorPalette;if(void 0!==a&&("string"!=typeof a||0!==a.trim().length)){let e="string"==typeof a?_(a):a;if(!Array.isArray(e))throw new ep("xyChart.plotColorPalette",JSON.stringify(a)??String(a),!1);for(let[t,i]of e.entries()){let e="string"==typeof i?i.trim():JSON.stringify(i)??String(i);if(void 0===J(i))throw new ep(`xyChart.plotColorPalette[${t}]`,e,!1)}}}if("architecture"===t&&("string"!=typeof e.mainBkg||0===e.mainBkg.length)){let t=e.secondaryColor;if(void 0!==t){let e=ef(t);if(void 0===J(t,!0))throw new ep("secondaryColor",e,!0)}}}var eS={schemaVersion:2,provenance:{version:"12.2.0"},families:[{id:"flowchart",headers:[{value:"flowchart",agenticStatus:"native"},{value:"graph",agenticStatus:"native"},{value:"flowchart-elk",agenticStatus:"unsupported"}]},{id:"swimlane",headers:[{value:"swimlane-beta",agenticStatus:"unsupported"}]},{id:"sequence",headers:[{value:"sequenceDiagram",agenticStatus:"native"}]},{id:"class",headers:[{value:"classDiagram",agenticStatus:"native"},{value:"classDiagram-v2",agenticStatus:"native"}]},{id:"state",headers:[{value:"stateDiagram",agenticStatus:"native"},{value:"stateDiagram-v2",agenticStatus:"native"}]},{id:"er",headers:[{value:"erDiagram",agenticStatus:"native"}]},{id:"journey",headers:[{value:"journey",agenticStatus:"native"}]},{id:"gantt",headers:[{value:"gantt",agenticStatus:"native"}]},{id:"pie",headers:[{value:"pie",agenticStatus:"native"}]},{id:"quadrant",headers:[{value:"quadrantChart",agenticStatus:"native"}]},{id:"requirement",headers:[{value:"requirementDiagram",agenticStatus:"native"},{value:"requirement",agenticStatus:"native"}]},{id:"gitgraph",headers:[{value:"gitGraph",agenticStatus:"native"}]},{id:"c4",headers:[{value:"C4Context",agenticStatus:"native"},{value:"C4Container",agenticStatus:"native"},{value:"C4Component",agenticStatus:"native"},{value:"C4Dynamic",agenticStatus:"native"},{value:"C4Deployment",agenticStatus:"native"}]},{id:"mindmap",headers:[{value:"mindmap",agenticStatus:"native"}]},{id:"timeline",headers:[{value:"timeline",agenticStatus:"native"}]},{id:"zenuml",headers:[{value:"zenuml",agenticStatus:"native"}]},{id:"sankey",headers:[{value:"sankey",agenticStatus:"native"},{value:"sankey-beta",agenticStatus:"native"}]},{id:"xychart",headers:[{value:"xychart",agenticStatus:"native"},{value:"xychart-beta",agenticStatus:"native"}]},{id:"block",headers:[{value:"block",agenticStatus:"native"},{value:"block-beta",agenticStatus:"native"}]},{id:"packet",headers:[{value:"packet",agenticStatus:"native"},{value:"packet-beta",agenticStatus:"native"}]},{id:"kanban",headers:[{value:"kanban",agenticStatus:"native"}]},{id:"architecture",headers:[{value:"architecture",agenticStatus:"native"},{value:"architecture-beta",agenticStatus:"native"}]},{id:"radar",headers:[{value:"radar-beta",agenticStatus:"native"}]},{id:"eventmodeling",headers:[{value:"eventmodeling",agenticStatus:"native"}]},{id:"treemap",headers:[{value:"treemap",agenticStatus:"native"},{value:"treemap-beta",agenticStatus:"native"}]},{id:"venn",headers:[{value:"venn-beta",agenticStatus:"unsupported"}]},{id:"ishikawa",headers:[{value:"ishikawa",agenticStatus:"native"},{value:"ishikawa-beta",agenticStatus:"native"}]},{id:"wardley",headers:[{value:"wardley-beta",agenticStatus:"unsupported"}]},{id:"cynefin",headers:[{value:"cynefin-beta",agenticStatus:"unsupported"}]},{id:"treeview",headers:[{value:"treeView-beta",agenticStatus:"unsupported"}]},{id:"railroad",headers:[{value:"railroad-beta",agenticStatus:"unsupported"},{value:"railroad-ebnf-beta",agenticStatus:"unsupported"},{value:"railroad-abnf-beta",agenticStatus:"unsupported"},{value:"railroad-peg-beta",agenticStatus:"unsupported"}]},{id:"agentflow",headers:[{value:"agentflow-beta",agenticStatus:"unsupported"}]},{id:"usecase",headers:[{value:"usecase-beta",agenticStatus:"unsupported"}]}]};function e$(e,t,i,a){let r=g(e),l=-1,d=-1,u=e.length,m=Math.max(0,Math.min(e.length,i??0)),$=m;for(;$<=e.length;){let i=/\r\n?|\n/g;i.lastIndex=$;let a=i.exec(e),r=a?.index??-1,n=r<0?e.length:r,o=e.slice($,n).replace(/\r$/,""),c=o.trim(),f=c.startsWith(t)?c.slice(t.length):"",p=/^\s*;/.test(f);if(c===t||p||/^\s/.test(f)&&s(c)!==c){if(d=(l=$+o.indexOf(t))+t.length,c===t)u=a?a.index+a[0].length:e.length;else for(u=p?e.indexOf(";",d)+1:d;u<n&&/[ \t]/.test(e[u]);)u++;break}if(r<0)break;$=a.index+a[0].length}if(l<0){let i=e.indexOf(t,m);l=i<0?m:i,d=Math.min(e.length,l+t.length);let a=e.indexOf(`
|
|
2
2
|
`,d);for(u=a<0?e.length:a+1,$=l;$>0&&10!==e.charCodeAt($-1);)$--}return Object.freeze({source:h(r,0,e.length),...(i??$)>0?{wrapper:h(r,0,i??$)}:{},...function(e,t,i,a=g(e),r){let s=n(e),l=s?.source.length??0,d=function(e,t,i=g(e),a=c(e),r){let n=[...e.slice(t).matchAll(/[^\r\n]*(?:\r\n?|\n|$)/g)],o=n.map(e=>e[0]),s=e.slice(t),l=f(P(a),S(s).split(/\r\n?|\n/),r),d=b(s,l),u=s.split("");for(let e of d.directives)for(let t=e.start;t<e.end;t++)"\r"!==u[t]&&u[t]!==`
|
|
3
3
|
`&&(u[t]=" ");let p=u.join("").split(/\r\n?|\n/),m=n.map(e=>t+e.index),$=[],w=f(P(a),p,r);for(let e=0;e<p.length;e++){let t=y(p,e);if(void 0===t)break;if(null===t){e=v(w,e,p.length);continue}let a=m[e],r;r="block"===t.form?m[t.endIndex]+p[t.endIndex].indexOf("}")+1:a+o[e].length,$.push(h(i,a,r)),e=t.endIndex}return Object.freeze($)}(e,l,a,i,r),u=e.split("");for(let t of d)if(/^\s*%% agentic-mermaid (?:accTitle|accDescr):/.test(e.slice(t.start.offset,t.end.offset)))for(let e=t.start.offset;e<t.end.offset;e++)"\r"!==u[e]&&u[e]!==`
|
|
4
|
-
`&&(u[e]=" ");let m=(function(e,t,i=0,a=g(e)){let r=[],n=new RegExp(t.source,t.flags.includes("g")?t.flags:`${t.flags}g`),o;for(;null!==(o=n.exec(e));)r.push(h(a,i+o.index,i+o.index+o[0].length)),0===o[0].length&&n.lastIndex++;return Object.freeze(r)})(u.join("").slice(l),RegExp(o.source,"gm"),l,a).filter(t=>p(e.slice(t.start.offset,t.end.offset)));return{...s?{frontmatter:h(a,0,l)}:{},...m.length>0?{initDirectives:m}:{},...d.length>0?{accessibilityDirectives:Object.freeze(d)}:{}}}(e,0,t,r,a),header:h(r,l,d),body:h(r,u,e.length)})}var ew=class extends Error{name="MermaidFamilyDetectionError";code;line;preservation;help;constructor(e){super(e.message),this.code=e.code,this.line=e.line,this.preservation=e.preservation,this.help=e.help}toJSON(){return{code:this.code,message:this.message,line:this.line,preservation:this.preservation,help:this.help}}};function ex(e,t){if(!e||"object"!=typeof e||Array.isArray(e))return;let i=e[t];return i&&"object"==typeof i&&!Array.isArray(i)?i:void 0}Object.freeze(["library","cli","codeMode","localMcp","hostedMcp","editor","website"]);var eC=["onConfigDiagnostic"],eO=(e,t)=>({type:"string",...void 0===t?{}:{default:t}}),ej=(e,t,i={})=>({type:"number",...void 0===t?{}:{default:t},...i}),ek=(e,t)=>ej(void 0,t,{minimum:0}),eE=(e,t)=>ej(void 0,t,{exclusiveMinimum:0}),eF=e=>ej(void 0,void 0,{minimum:1,maximum:1e3}),eA=(e,t)=>({type:"boolean",...void 0===t?{}:{default:t}}),eI=(e,t)=>({...eO(void 0,t),"x-agentic-mermaid-runtime-validator":"safeCssPaint"}),eT=(e,t)=>({...eO(void 0,t),"x-agentic-mermaid-runtime-validator":"safeCssFontFamily"}),ez=(e,t,i=[])=>({type:"object",additionalProperties:!1,properties:e,...0===i.length?{}:{required:i}}),eD={type:"string",enum:["uppercase","lowercase","capitalize"]},eL={...ez({groupHeaderHeight:eE(void 0),groupFontSize:eE(void 0),groupFontWeight:eF(void 0),groupLetterSpacing:ej(void 0),groupFont:eT(void 0),groupTextTransform:{...eD},groupPaddingX:ek(void 0),groupPaddingY:ek(void 0),groupLabelPaddingX:ek(void 0),groupCornerRadius:ek(void 0),groupLineWidth:ek(void 0),groupText:eI(void 0),serviceFontSize:eE(void 0),serviceFontWeight:eF(void 0),serviceLetterSpacing:ej(void 0),serviceTextTransform:{...eD},servicePaddingX:ek(void 0),servicePaddingY:ek(void 0),serviceCornerRadius:ek(void 0),serviceLineWidth:ek(void 0),serviceText:eI(void 0),edgeFontSize:eE(void 0),edgeFontWeight:eF(void 0),edgeLetterSpacing:ej(void 0),edgeTextTransform:{...eD},edgeLineWidth:ek(void 0),edgeBendRadius:ek(void 0),edgeStroke:eI(void 0),edgeText:eI(void 0),iconSize:eE(void 0),serviceIconSize:eE(void 0),junctionOuterRadius:eE(void 0),junctionInnerRadius:ek(void 0),groupSurface:eI(void 0),groupHeaderSurface:eI(void 0),groupBorder:eI(void 0),serviceSurface:eI(void 0),serviceBorder:eI(void 0)},void 0),"x-agentic-mermaid-runtime-validator":"architectureVisual"},eM={anyOf:[{type:"string"},(()=>{let e=k(),t=e.$defs,i=e=>{if(Array.isArray(e))return e.map(i);if(null===e||"object"!=typeof e)return e;let a=e.$ref;if("string"==typeof a&&a.startsWith("#/$defs/")){let e=t?.[a.slice(8)];if(!e)throw Error(`StyleSpec schema has unresolved local reference ${a}`);return i(e)}return Object.fromEntries(Object.entries(e).filter(([e])=>"$defs"!==e).map(([e,t])=>[e,i(t)]))},{$schema:a,$id:r,title:n,...o}=e;return i(o)})()],"x-agentic-mermaid-validation-expectation":"a registered Style name or StyleSpec"},eR={anyOf:[{type:"null"},{type:"string"},{type:"number"},{type:"boolean"},{type:"array",items:{$ref:"#/$defs/jsonValue"}},{type:"object",additionalProperties:{$ref:"#/$defs/jsonValue"}}],"x-agentic-mermaid-validation-expectation":"a finite, acyclic JSON value without prototype keys"},eq=["flowchart","state","class","er","architecture","c4"],eN=N({layoutHints:{validationExpectation:"contain integer ranks, node groups and edge IDs",schema:{type:"object",additionalProperties:!1,properties:{ranks:{type:"object",additionalProperties:{type:"integer",minimum:0,maximum:1e4}},adjacent:{type:"array",items:{type:"array",minItems:2,items:{type:"string"}}},shortEdges:{type:"array",items:{type:"string"}}}},applicableBuiltinFamilies:["flowchart","state"]},graphLayout:{validationExpectation:"be a graph layout selection object",schema:{anyOf:[ez({backend:{type:"string",const:"elk"},fallback:{type:"string",enum:["none"]}},void 0,["backend"]),ez({backend:{type:"string",const:"agentic"},fallback:{type:"string",enum:["none","elk"]}},void 0,["backend"])]},applicableBuiltinFamilies:["flowchart","state","architecture","class","er","requirement"]},layoutSafety:{validationExpectation:"be report or strict",schema:{type:"string",enum:["report","strict"],default:"report"}},bg:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0,"#FFFFFF")},fg:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0,"#27272A")},line:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0)},accent:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0)},muted:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0)},surface:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0)},border:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0)},font:{validationExpectation:"be a safe non-fetching CSS font family or stack",schema:eT(void 0,"Inter")},style:{validationExpectation:"be a registered Style name or StyleSpec, or an array of them",schema:{anyOf:[eM,{type:"array",items:eM}],"x-agentic-mermaid-runtime-validator":"styleInput"}},padding:{validationExpectation:"be a non-negative finite number",schema:ek(void 0,40),applicableBuiltinFamilies:["flowchart","state","architecture","c4"]},nodeSpacing:{validationExpectation:"be a non-negative finite number",schema:ek(void 0,24),applicableBuiltinFamilies:eq},layerSpacing:{validationExpectation:"be a non-negative finite number",schema:ek(void 0,40),applicableBuiltinFamilies:eq},wrappingWidth:{validationExpectation:"be a positive finite number",schema:eE(void 0),applicableBuiltinFamilies:["flowchart"]},componentSpacing:{validationExpectation:"be a non-negative finite number",schema:ek(void 0),applicableBuiltinFamilies:[]},transparent:{validationExpectation:"be a boolean",schema:eA(void 0,!1)},interactive:{validationExpectation:"be a boolean",schema:eA(void 0,!1),applicableBuiltinFamilies:["xychart","pie","quadrant"]},shadow:{validationExpectation:"be a boolean",schema:eA(void 0,!1),applicableBuiltinFamilies:["flowchart","state","sequence","timeline","class","er","journey","xychart","pie","quadrant","gantt","mindmap","gitgraph","sankey"]},class:{validationExpectation:"be a class options object",schema:ez({hierarchicalNamespaces:eA(void 0,!0)},void 0),applicableBuiltinFamilies:["class"]},kanban:{validationExpectation:"be a kanban options object",schema:ez({maxWidth:eE(void 0)},void 0),applicableBuiltinFamilies:["kanban"]},pie:{validationExpectation:"be a pie options object",schema:ez({maxWidth:eE(void 0)},void 0),applicableBuiltinFamilies:["pie"]},radar:{validationExpectation:"be a radar options object",schema:ez({maxWidth:eE(void 0)},void 0),applicableBuiltinFamilies:["radar"]},architecture:{validationExpectation:"be an architecture options object",schema:ez({visual:eL},void 0),applicableBuiltinFamilies:["architecture"]},timeline:{validationExpectation:"be a timeline options object",schema:ez({maxWidth:eE(void 0)},void 0),applicableBuiltinFamilies:["timeline"]},journey:{validationExpectation:"be a journey options object",schema:ez({experienceCurve:eA(void 0,!0)},void 0),applicableBuiltinFamilies:["journey"]},gantt:{validationExpectation:"be a Gantt options object",schema:ez({dependencyArrows:eA(void 0,!1),criticalPath:eA(void 0,!1)},void 0),applicableBuiltinFamilies:["gantt"]},mermaidConfig:{validationExpectation:"be a plain JSON object",schema:{type:"object",additionalProperties:{$ref:"#/$defs/jsonValue"}}},embedFontImport:{validationExpectation:"be a boolean",schema:eA(void 0,!1)},compact:{validationExpectation:"be a boolean",schema:eA(void 0,!1)},idPrefix:{validationExpectation:"be non-empty and contain only ASCII letters, digits, underscore, hyphen, dot, and colon",schema:{...eO(void 0),pattern:"^[A-Za-z0-9_.:-]+$"}},security:{validationExpectation:"be default or strict",schema:{type:"string",enum:["default","strict"],default:"default"}},ganttToday:{validationExpectation:"be a string",schema:eO(void 0),applicableBuiltinFamilies:["gantt"]},seed:{validationExpectation:"be a finite number",schema:ej(void 0,0)}}),eP=Object.freeze(Object.keys(eN)),eB=Object.freeze(eP.filter(e=>"applicableBuiltinFamilies"in eN[e]));function eW(e){let t=e=>Array.isArray(e)?e.map(t):q(e)?Object.fromEntries(Object.entries(e).map(([e,i])=>[e,t(i)])):e;return t(e)}function e_(e){let t=String(e[0]??"");for(let i of e.slice(1))t+="number"==typeof i?`[${i}]`:`.${i}`;return`render option "${t}"`}function eV(e){return j(C(e).map(e=>e.path.length>0?`${e_(e.path)} ${e.message}`:`render options ${e.message}`),"render options")}function eJ(e,t,i){let a=t["x-agentic-mermaid-runtime-validator"];if("safeCssColor"===a&&void 0===V(e))return[{path:i,message:"must be a safe, non-fetching CSS color",generic:!1}];if("safeCssPaint"===a&&void 0===H(e))return[{path:i,message:"must be a safe, non-fetching CSS paint",generic:!1}];if("safeCssFontFamily"===a&&void 0===W(e))return[{path:i,message:"must be a safe, non-fetching CSS font family or stack",generic:!1}];if("styleInput"===a)try{A(e)}catch(e){return[{path:i,message:`is invalid: ${e instanceof Error?e.message:String(e)}`,generic:!1}]}if("architectureVisual"===a&&q(e)){let t=e.junctionOuterRadius,a=e.junctionInnerRadius;if("number"==typeof t&&"number"==typeof a&&a>t)return[{path:[...i,"junctionInnerRadius"],message:"must not exceed junctionOuterRadius",generic:!1}]}return[]}function eG(e){if(!q(e))return["render options must be a plain JSON object"];let t=eV(e);if(t.length>0)return t;let i=[],a=Z??=N(function(){let e={};for(let t of eP){let i=eN[t],a="terminalNote"in i?i.terminalNote:void 0,r="applicableBuiltinFamilies"in i?i.applicableBuiltinFamilies:void 0;e[t]={...eW(i.schema),"x-agentic-mermaid-terminal":i.terminal,...void 0===a?{}:{"x-agentic-mermaid-terminal-note":a},...void 0===r?{}:{"x-agentic-mermaid-applicable-builtin-families":[...r]}}}return{type:"object",additionalProperties:!1,properties:e,$defs:{jsonValue:eW(eR)}}}());for(let[t,r]of Object.entries(e)){if(!Object.hasOwn(eN,t)){i.push(`unknown render option "${t}"`);continue}if(null===r){i.push(`render option "${t}" must be omitted instead of null`);continue}let e=eN[t],n=Q(r,e.schema,a,[t],{diagnostics:"field",validateRuntime:eJ});n.length>0&&n.every(e=>e.generic&&1===e.path.length)?i.push(`render option "${t}" must ${e.validationExpectation}`):i.push(...n.map(e=>`${e_(e.path)} ${e.message}`))}return j(i,"render options")}var eH=class extends Error{constructor(e,t){super(`Parsed Mermaid family "${e}" serialized as family "${t}"`),this.expectedFamilyId=e,this.detectedFamilyId=t}expectedFamilyId;detectedFamilyId;name="ParsedDiagramFamilyMismatchError";code="PARSED_DIAGRAM_FAMILY_MISMATCH"},eU=class extends Error{name="RenderCapabilityError";code="UNSATISFIED_RENDER_CAPABILITIES";output;family;decision;constructor(e,t,i,a){super(e),this.output=t,this.family=Object.freeze({id:i.identity.id,version:i.identity.version}),this.decision=a}toJSON(){return{name:this.name,code:this.code,message:this.message,output:this.output,family:this.family,decision:this.decision}}},eY=class extends TypeError{constructor(e){super(e),this.name="RenderConfigError"}},eK=new WeakMap;function eX(e){let t=eK.get(e);if(!t)throw Error("Resolved render request has no internal execution plan");return t}function eQ(e,t=[]){let i,a=eK.get(e),r=a?.executionDecision,n=a&&Object.hasOwn(a,"textMeasurement")?a.textMeasurement:void 0;return Object.freeze({version:e.version,output:e.output,sharedRequestDigest:e.sharedRequestDigest,requestDigest:e.requestDigest,appearanceDigest:e.appearance.digest,capabilityDecision:e.capabilityDecision,diagnostics:(i=new Set,Object.freeze([...Object.hasOwn(e,"resolutionDiagnostics")?e.resolutionDiagnostics:[],...t,...L(e).flatMap(e=>"agentic"===e.requested&&"elk"===e.selected?[{code:"GRAPH_LAYOUT_FALLBACK",feature:"graph-layout",message:`Agentic graph layout used the requested ELK fallback: ${e.reason??"candidate rejected"}`}]:[])].flatMap(e=>{let t=e5(e);return i.has(t)?[]:(i.add(t),[Object.freeze({...e})])}))),...r?{executionDecision:r}:{},...n?{textMeasurement:n.identity}:{},...L(e).length?{layoutDecisions:L(e)}:{}})}function eZ(e){let t=e0.get(e);if(t)return t;let i=eK.get(e)?.backend?.identity.id??("layout"===e.output?`backend:${e.appearance.inferredBackend}`:void 0),a=Object.freeze({renderOptions:e.renderOptions,...e.appearance.face?{styleFace:e.appearance.face}:{},...i?{paintBackendId:i}:{},...e.familyConfig?{familyConfig:e.familyConfig}:{},...e.appearance.family?{familyAppearance:e.appearance.family}:{}});return eK.has(e)&&e0.set(e,a),a}var e0=new WeakMap;function e1(e){let t={};for(let i of eP){let a=e[i];void 0!==a&&(t[i]=a)}return t}var e2=new Set(["padding","nodeSpacing","layerSpacing","wrappingWidth","class"]);function e6(e,t="$",i=0,a=new Set,r={nodes:0,chars:0,opaque:!1,admission:void 0}){let n=r.admission;if(n?.valid)switch((++n.nodes>w.maxNodes||i>w.maxDepth)&&(n.valid=!1),typeof e){case"number":e-e!=0&&(n.valid=!1);break;case"undefined":case"bigint":case"symbol":case"function":n.valid=!1}if("string"==typeof e){if(r.chars+=e.length,r.chars>2e6)throw TypeError(`data exceeds the 2000000-character aggregate limit at ${t}`);return e}if(null===e||"object"!=typeof e)return e;if(i>64)throw TypeError(`data exceeds maximum depth 64 at ${t}`);if(++r.nodes>1e5)throw TypeError(`data exceeds the 100000-node aggregate limit at ${t}`);if(a.has(e))throw TypeError(`data must be acyclic at ${t}`);if(Array.isArray(e)){if(e.length>1e5)throw TypeError(`data array exceeds the 100000-entry limit at ${t}`);a.add(e);try{let o=[],s=Object.create(null);s.enumerable=s.configurable=s.writable=!0;for(let n=0;n<e.length;n++){if(n>=1e5)throw TypeError(`data array exceeds the 100000-entry limit at ${t}`);if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError(`data must not contain a sparse array at ${t}[${n}]`);s.value=e6(e[n],`${t}[${n}]`,i+1,a,r),Object.defineProperty(o,n,s)}return n&&o.length>w.maxItemsPerContainer&&(n.valid=!1),te(o,!r.opaque)}finally{a.delete(e)}}if(!q(e))return r.opaque=!0,n&&(n.valid=!1),e;a.add(e);try{let o={},s=0;for(let[l,c]of Object.entries(e)){if(r.chars+=l.length,r.chars>2e6)throw TypeError(`data exceeds the 2000000-character aggregate limit at ${t}.${l}`);if(void 0!==c){n&&(++s>w.maxItemsPerContainer||x(l))&&(n.valid=!1);let e=e6(c,`${t}.${l}`,i+1,a,r);l in o?Object.defineProperty(o,l,{value:e,enumerable:!0}):o[l]=e}}return te(o,!r.opaque)}finally{a.delete(e)}}function e4(e,t,i,a=!1){let r;if(void 0===t)return;if(!q(t))throw TypeError(`Family "${e.id}" returned ${i} data that is not a plain object`);if(a)return t;try{r=e6(t)}catch(t){throw TypeError(`Family "${e.id}" returned invalid ${i} data: ${t instanceof Error?t.message:String(t)}`)}let n={...eR,$defs:{jsonValue:eR}},o=Q(r,n,n,[`family${"config"===i?"Config":"Appearance"}`],{diagnostics:"field",validateRuntime:eJ});if(o.length>0){let t=o.map(e=>`${e.path.join(".")} ${e.message}`).join("; ");throw TypeError(`Family "${e.id}" returned invalid ${i} data: ${t}`)}return tt(r)}function e5(e){if(null===e||"object"!=typeof e)return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(e5).join(",")}]`;let t="{",i="";for(let a of Object.keys(e).sort()){let r=e[a];void 0!==r&&(t+=`${i}${JSON.stringify(a)}:${e5(r)}`,i=",")}return`${t}}`}function e3(e,t){try{let t,i;return t=e8(e),()=>(void 0===i&&(i=e7(e5(t)),t=void 0),i)}catch(e){throw e instanceof TypeError&&/aggregate limit/.test(e.message)?new a("sourceCharacters",t.originalText.length+t.text.length,!0):e}}function e8(e){let t,i={nodes:0,valid:2e6<=w.maxAggregateTextCharacters&&6e6<=w.maxAggregateTextBytes};try{t=ti(e,"render contract digest input",i)}catch(e){throw TypeError((e instanceof Error?e.message:String(e)).replace("data exceeds maximum depth","data exceeds maximum nesting depth"))}return i.valid||O(t,"render contract digest input",{allowUndefinedObjectProperties:!0}),t}function e7(e){let t=-0x340d631c,i=-0x7bdddcdb;for(let a=0;a<e.length;a++){let r=i^e.charCodeAt(a),n=(r>>>16)*435+((65535&r)*435>>>16)>>>16;i=Math.imul(r,435),t=Math.imul(t,435)+n+(r<<8)|0}return`fnv1a64:${(t>>>0).toString(16).padStart(8,"0")}${(i>>>0).toString(16).padStart(8,"0")}`}var e9=new WeakSet;function te(e,t=!0){return Object.freeze(e),t&&e9.add(e),e}function tt(e,t="$",i,a){let r;if(null===e||"object"!=typeof e||e9.has(e))return e;if(i??=new Set,a??=new WeakMap,i.has(e))throw TypeError(`render request contains a cycle at ${t}`);let n=a.get(e);if(n)return n;let o=Object.getPrototypeOf(e);if(!Array.isArray(e)&&o!==Object.prototype&&null!==o)throw TypeError(`render request contains a non-JSON object at ${t}`);if(i.add(e),Array.isArray(e)){let n=e.length,o=Array(n);for(let r=0;r<n;r++)r in e&&(o[r]=tt(e[r],`${t}[${r}]`,i,a));r=o}else{let n={};for(let[r,o]of Object.entries(e)){let e=tt(o,`${t}.${r}`,i,a);r in n?Object.defineProperty(n,r,{value:e,enumerable:!0}):n[r]=e}r=n}return i.delete(e),a.set(e,r),te(r)}function ti(e,t,i){try{return tt(i?e6(e,"$",0,new Set,{nodes:0,chars:0,opaque:!1,admission:i}):e6(e))}catch(e){throw TypeError(`${t} could not be snapshotted: ${e instanceof Error?e.message:String(e)}`)}}var ta=Object.freeze({serializable:tt({})}),tr=new WeakMap,tn=new WeakMap;function to(e){if(tr.has(e))return e;let t=tl(e),i=tt(I(t.serializable.style)),a=eG(t.serializable);if(a.length)throw new eY(`Invalid RenderOptions: ${a.join("; ")}`);let r=tc(t.serializable.style),n=Object.freeze({...t.serializable,...t.onConfigDiagnostic?{onConfigDiagnostic:t.onConfigDiagnostic}:{}});return tr.set(n,Object.freeze({...t,capturedStyle:i})),tn.set(t.serializable,r),n}function ts(e){let t=tr.get(e)?.capturedStyle;if(!t)throw TypeError("Render options have not been captured");return t.style?F(t.style):"default"}function tl(e){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new eY("Invalid RenderOptions: render options must be an object");let t=tr.get(e);if(t)return t;let i=[],a;for(let[t,r]of Object.entries(e))"onConfigDiagnostic"===t?a=r:void 0!==r&&i.push([t,r]);if(void 0!==a&&"function"!=typeof a)throw new eY("Invalid RenderOptions: onConfigDiagnostic must be a function");if(0===i.length&&void 0===a)return ta;let r=Object.fromEntries(i),n;try{n=ti(r,"RenderOptions")}catch(t){let e=(t instanceof Error?t.message:String(t)).replace("data exceeds maximum depth","render option tree exceeds maximum nesting depth");throw new eY(`Invalid RenderOptions: ${e}`)}return Object.freeze({serializable:n,...void 0===a?{}:{onConfigDiagnostic:a}})}function tc(e){return tt((void 0===e?[]:Array.isArray(e)?e:[e]).flatMap(e=>{if("string"!=typeof e||"crisp"===e)return[];let t=E(e);return t?[{input:e,canonicalId:t.canonicalId}]:[]}))}var td="1.0.0";function tu(e,t,i=td){return t?[{id:e,version:i}]:[]}function tf(e,t=`^${td}`){return{id:e,range:t,level:"required"}}function tp(e){return`scene-primitive:${e.primitive}/${e.feature}/${e.operation}`}var tm=new WeakMap;function tg(e,t){let i=tm.get(e.backend);return i||(i=new Set(z.filter(t=>e.backend.capabilities.some(e=>e.primitive===t.primitive&&e.feature===t.feature&&e.operation===t.operation&&"unsupported"!==e.realization))),tm.set(e.backend,i)),i.has(t)}var th=new Map;function ty(e){return!e.id.startsWith("output:")&&!e.id.startsWith("operation:")&&!e.id.startsWith("backend:")&&!e.id.startsWith("scene-primitive:")&&"core:scene"!==e.id}function tv(a,n={},o="svg",s,c={}){let f=tl(n),p=f.serializable,m=eV(p);if(m.length>0)throw new eY(`Invalid RenderOptions: ${m.join("; ")}`);let g=f.capturedStyle??I(p.style),h=g.style,y=tt(g.face),v=f.capturedStyle?[]:eG(p);if(v.length>0)throw new eY(`Invalid RenderOptions: ${v.join("; ")}`);let b,S=tt($(a,p.mermaidConfig??{},e=>c.familyDescriptor?c.familyDescriptor:"registered"===(b=function(e,t="strict"){let i=l(e),a=u(i,t);if(a)return{kind:"registered",family:a};let r=function(e,t=eS){let i=(e.split(";")[0]??"").trim().toLowerCase();return t.families.flatMap(e=>e.headers.map(t=>({family:e,header:t}))).sort((e,t)=>t.header.value.length-e.header.value.length||D(e.family.id,t.family.id)).find(e=>(function(e,t){let i=t.trim().toLowerCase();if(e===i)return!0;if(!e.startsWith(i))return!1;let a=e[i.length];return void 0!==a&&/[\s:]/.test(a)})(i,e.header.value))??null}(i);return r?{kind:"upstream",match:r}:{kind:"unknown",header:e}}(e)).kind?b.family:null)),w=c.familyDescriptor??function(e,t){if("registered"===t.kind)return t.family;throw new ew(function(e,t,i,a,r){let n=eS.provenance.version;if("unknown"===e.kind)return{code:"UNKNOWN_HEADER",message:`Unrecognized Mermaid header: "${e.header}"`,line:1,preservation:{version:1,classification:"unknown",source:t,header:e.header,mermaidVersion:n,spans:e$(t,a??e.header,i,null)},help:"Check for a Mermaid upgrade or register a namespaced family descriptor; the source was preserved unchanged."};let{family:o,header:s}=e.match,l="inventory-only"===s.agenticStatus?"inventory-only":"unsupported",c="native"===s.agenticStatus;return{code:c?"FAMILY_DESCRIPTOR_MISMATCH":"UNSUPPORTED_FAMILY",message:c?`Mermaid ${n} header "${s.value}" is marked native but no installed family descriptor claimed it`:`Mermaid ${n} family "${o.id}" is ${l} in Agentic Mermaid`,line:1,preservation:{version:1,classification:l,source:t,header:s.value,upstreamFamilyId:o.id,mermaidVersion:n,spans:e$(t,a??s.value,i,null)},help:c?"Report a descriptor/manifest mismatch; the source was preserved unchanged.":`Install a family descriptor for "${s.value}" or use a currently native family; the source was preserved unchanged.`}}("unknown"===t.kind?{...t,header:e.lines[0]??e.firstLine}:t,e.originalText,e.authoredWrapperLength??e.wrapperSource?.length??0,e.authoredHeader??e.lines[0]??e.firstLine,0))}(S,b);if(void 0!==c.expectedFamilyId&&w.id!==c.expectedFamilyId)throw new eH(c.expectedFamilyId,w.id);r("sourceCharacters",S.originalText.length+S.text.length);let x=M(S.config.themeCSS,p.security??"default");if(x)throw new eY(x);"architecture"!==w.id&&eb(S.config.themeVariables,w.id,p),function(e,t){let i=eh(e[t]);if(i){if("timeline"===t)ev(i,"timeline","sectionFills",!1),ev(i,"timeline","sectionColours",!1),(void 0===i.sectionColours||Array.isArray(i.sectionColours)&&0===i.sectionColours.length)&&ev(i,"timeline","sectionColors",!1);else if("journey"===t)ev(i,"journey","actorColours",!0),ev(i,"journey","sectionFills",!1),ev(i,"journey","sectionColours",!1),ey(i,"journey","titleColor",!1);else if("requirement"===t)ey(i,"requirement","rect_fill",!0),ey(i,"requirement","rect_border_color",!0),ey(i,"requirement","text_color",!1);else if("sankey"===t){let e=i.linkColor;if("source"!==e&&"target"!==e&&"gradient"!==e&&ey(i,"sankey","linkColor",!0),void 0===i.nodeColors)return;let t=eh(i.nodeColors);if(!t)throw new eg("sankey.nodeColors",i.nodeColors,!1,"map");let a=void 0!==e&&"gradient"!==e;for(let[e,i]of Object.entries(t))if(void 0===J(i,a))throw new eg(/^[\w-]+$/.test(e)?`sankey.nodeColors.${e}`:`sankey.nodeColors[${JSON.stringify(e)}]`,i,a)}}}(S.frontmatter,w.id);let C=Object.freeze(eP.filter(e=>void 0!==p[e])),O=function(e,t){if(e.id.startsWith("family:")){let i=new Set(e.applicableRenderOptions??[]);return Object.freeze(t.flatMap(t=>!eB.includes(t)||i.has(t)?[]:[Object.freeze({code:"RENDER_OPTION_NOT_APPLICABLE",feature:`render-option:${t}`,message:`Render option "${t}" does not apply to extension family "${e.id}". Its FamilyDescriptor does not list the field in applicableRenderOptions.`})]))}let i=e.id;return Object.freeze(t.flatMap(e=>{let t=eN[e];if(!("applicableBuiltinFamilies"in t))return[];let a=t.applicableBuiltinFamilies;if(a.includes(i))return[];let r=0===a.length?"No built-in family currently consumes this option.":`Applicable built-in families: ${a.join(", ")}.`;return[Object.freeze({code:"RENDER_OPTION_NOT_APPLICABLE",feature:`render-option:${e}`,message:`Render option "${e}" does not apply to built-in Mermaid family "${i}". ${r}`})]}))}(w,C),{appearance:j,renderOptions:k,familyConfig:E}=function(a){let{family:r,source:n,options:o,style:s,styleFace:l}=a,c="strict"===o.security?{...o,embedFontImport:!1}:{...o};o.graphLayout&&(c.graphLayout={...o.graphLayout,fallback:o.graphLayout.fallback??"none"});let d=void 0!==s&&T(s);d&&(c=function(t,i,a){let r={...t},n=t=>e[t].some(e=>a?.[e]!==void 0);for(let e of["bg","fg","line","accent","muted","surface","border"])void 0!==r[e]||n(e)||i.colors?.[e]===void 0||(r[e]=i.colors[e]);return void 0===r.font&&void 0!==i.font&&(r.font=i.font),r}(c,s,n.config.themeVariables));let u=o.font??n.config.fontFamily??i(n.config.themeVariables,"fontFamily")??c.font??"Inter",f=W(u)??u,{style:p,...m}=c,g={...m,...s?{style:s}:{},font:f,mermaidConfig:n.config},h={...t(g,n.config,f)},y=function(e,t,i,a,r,n){if(!e.normalizeRequest)return{renderOptions:i,colors:a};let o=Object.freeze({source:tt(t),renderOptions:tt(i),colors:tt(a),...r?{style:tt(r)}:{},...n?{styleFace:tt(n)}:{}}),s=e.normalizeRequest(o);if(void 0===s)return{renderOptions:i,colors:a};let l,c={nodes:0,valid:!0};try{l=ti(s,`Family "${e.id}" request normalizer result`,c)}catch(t){throw TypeError(`Family "${e.id}" request normalizer returned invalid data: ${t instanceof Error?t.message:String(t)}`)}if(!q(l))throw TypeError(`Family "${e.id}" request normalizer must return a plain object`);let d=Object.keys(l).find(e=>!["renderOptions","familyConfig","appearance"].includes(e));if(d)throw TypeError(`Family "${e.id}" request normalizer returned unknown field "${d}"`);let u=l,f=u.appearance;if(void 0!==f){if(!q(f))throw TypeError(`Family "${e.id}" request normalizer returned a non-object appearance`);let t=Object.keys(f).find(e=>!["colors","family"].includes(e));if(t)throw TypeError(`Family "${e.id}" request normalizer returned unknown appearance field "${t}"`)}let p=u.renderOptions??i;if(void 0!==p.onConfigDiagnostic)throw TypeError(`Family "${e.id}" request normalizer may not return executable option "onConfigDiagnostic"`);let m=eG(Object.fromEntries(Object.entries(p).filter(([e,t])=>void 0!==t&&!eC.includes(e))));if(m.length>0)throw new eY(`Family "${e.id}" returned invalid normalized RenderOptions: ${m.join("; ")}`);let g=e1(i),h=e1(p);for(let t of eP)if(!e2.has(t)&&e5(g[t])!==e5(h[t]))throw TypeError(`Family "${e.id}" request normalizer may not rewrite non-geometry option "${t}"`);let y=f?.colors?function(e,t,i){let a=new Set(["bg","fg","line","accent","muted","surface","border","shadow","font","embedFontImport"]),r=Object.keys(t).find(e=>!a.has(e));if(r)throw TypeError(`Family "${e.id}" returned unknown appearance color field "${r}"`);let n={...i};for(let i of["bg","fg","line","accent","muted","surface","border"]){let a=t[i];if(void 0===a)continue;let r=H(a);if(void 0===r)throw new eY(`Family "${e.id}" returned an unsafe ${i} paint`);n[i]=r}if(void 0!==t.font){let a=W(t.font);if(void 0===a)throw new eY(`Family "${e.id}" returned an unsafe font family`);if(a!==i.font)throw TypeError(`Family "${e.id}" request normalizer may not rewrite appearance field "font"`)}if(void 0!==t.shadow){if("boolean"!=typeof t.shadow)throw TypeError(`Family "${e.id}" returned a non-boolean shadow value`);if(t.shadow!==i.shadow)throw TypeError(`Family "${e.id}" request normalizer may not rewrite appearance field "shadow"`)}if(void 0!==t.embedFontImport){if("boolean"!=typeof t.embedFontImport)throw TypeError(`Family "${e.id}" returned a non-boolean embedFontImport value`);if(t.embedFontImport!==i.embedFontImport)throw TypeError(`Family "${e.id}" request normalizer may not rewrite appearance field "embedFontImport"`)}return n}(e,f.colors,a):a,v=e4(e,u.familyConfig,"config",c.valid),b=e4(e,f?.family,"appearance",c.valid);return{renderOptions:p,colors:y,...v?{familyConfig:v}:{},...b?{familyAppearance:b}:{}}}(r,n,g,h,s,l),v=tt(y.colors),b=tn.get(o)??tc(o.style),S=function(t){let i=new Set;for(let a of Object.values(e))for(let e of a){let a=t.config.themeVariables?.[e];"string"==typeof a&&a.length>0&&void 0===V(a)&&i.add(e)}return Object.freeze([...i].sort())}(n),$={version:2,colors:v,font:f,style:tt(s),face:tt(l),styled:d,inferredBackend:s?F(s):"default",styleReferences:b,...S.length>0?{unsafeThemeColorKeys:S}:{},...y.familyAppearance?{family:y.familyAppearance}:{}},w=tt({...$,digest:e7(e5(e8($)))});return tt({renderOptions:tt(y.renderOptions),appearance:w,...y.familyConfig?{familyConfig:y.familyConfig}:{}})}({family:w,source:S,options:p,...h?{style:h}:{},...y?{styleFace:y}:{}}),A=j.family?.visual;"architecture"===w.id&&eb(S.config.themeVariables,w.id,p,A),function(e,t,i){if("architecture"!==t||!e)return;let a=i?.edgeStroke;if("string"==typeof a&&"none"===a.trim().toLowerCase())throw new em("architecture.visual.edgeStroke",a);for(let t of["bg","surface","line","accent"]){let r=e[t];if("string"==typeof r&&"none"===r.trim().toLowerCase()&&("surface"!==t||i?.groupSurface?.trim().toLowerCase()==="none")&&!("surface"===t&&i?.groupHeaderSurface)&&!(("line"===t||"accent"===t)&&a))throw new em(t,r)}let r=i?.groupSurface;if(!i?.groupHeaderSurface&&"string"==typeof r&&"none"===r.trim().toLowerCase())throw new em("architecture.visual.groupSurface",r)}(p,w.id,A);let L=function(e,t,i,a,r,n){var o,s,l,c,u;let f,p,m,g,h;"svg"===i||"png"===i?"scene"==(f=t.styled||e.lowerScene?"scene":"family-svg")&&(p=R(m=t.styled?t.inferredBackend:"default",a.backendPolicy)):f="layout"===i?"layout":"terminal";let y="scene"===f?(g=new Set(e.scenePrimitiveEvidence.filter(e=>"applicable"===e.applicability).map(e=>e.primitive)),z.filter(e=>g.has(e.primitive))):[],v=p?y.flatMap(e=>tu(tp(e),tg(p,e))):[],b=[{id:e.identity.id,version:e.identity.version},...tu("operation:layout",void 0!==e.layout),...tu("operation:project-positioned",void 0!==e.projectPositioned),...tu("operation:lower-scene",void 0!==e.lowerScene),...tu("operation:render-svg",void 0!==e.renderSvg),...tu("operation:render-terminal",void 0!==e.renderAscii),...tu("core:scene","scene"===f),...tu("backend:scene-renderer",void 0!==p,p?.identity.version),...v],S=[tf("core:family-descriptor"),tf(e.identity.id,e.identity.version)],$;switch(f){case"scene":S.push(tf("core:scene"),tf("operation:layout"),tf("operation:lower-scene"),tf("backend:scene-renderer",p?.identity.version??td),...y.map(e=>tf(tp(e)))),$=!!(e.layout&&e.lowerScene&&p&&y.every(e=>tg(p,e)));break;case"family-svg":S.push(tf("operation:layout"),tf("operation:render-svg")),$=!!(e.layout&&e.renderSvg);break;case"terminal":S.push(tf("operation:render-terminal")),$=void 0!==e.renderAscii;break;case"layout":S.push(tf("operation:layout"),tf("operation:project-positioned")),$=!!(e.layout&&e.projectPositioned)}let w=function(e,t,i,a){let r=function(e,t,i,a){let r=t.length+i.length;if("string"!=typeof e||r>256)return;let n=e.length+16*r;if(n>16384)return;let o=`${e.length}:${e};${a};${t.length};${i.length};`;for(let e of t){if("string"!=typeof e.id||"string"!=typeof e.version||(n+=e.id.length+e.version.length)>16384)return;o+=`${e.id.length}:${e.id}${e.version.length}:${e.version}`}for(let e of i){if("string"!=typeof e.id||"string"!=typeof e.range||"string"!=typeof e.level||(n+=e.id.length+e.range.length+e.level.length)>16384)return;o+=`${e.id.length}:${e.id}${e.range.length}:${e.range}${e.level.length}:${e.level}`}return o.length<=8192?o:void 0}(e,t,i,a),n=void 0===r?void 0:th.get(r);if(B("capability-decision",void 0===r?"bypass":n?"hit":"miss",void 0===r?"tuple-budget":void 0),n)return n;let o=U(e,{offers:t,requirements:i,outputAvailable:a});return void 0!==r&&(th.size<32?th.set(r,o):B("capability-decision","store-skipped","capacity")),o}(i,b,S,$);if(!w.accepted){let a,r;throw c=f,u=p,r=(a=w.resolutions.filter(e=>"required"===e.level&&"selected"!==e.status).map(e=>e.id).join(", "))?` (unsatisfied capabilities: ${a})`:"","layout"===i?new eU(`No public layout projection registered for Mermaid family "${e.id}"${r}`,i,e,w):"ascii"===i||"unicode"===i||"html"===i?new eU(`No ASCII renderer registered for Mermaid family ${e.id}${r}`,i,e,w):t.styled&&!e.lowerScene?new eU(`Family "${e.id}" does not support styled rendering (no SceneGraph lowering registered). Render without the style option, or register a lowerScene hook for the family.${r}`,i,e,w):"scene"===c&&e.layout&&e.lowerScene&&!u?new eU(t.styled?`Style "${t.style?.name??"(inline)"}" requires an unavailable SceneGraph backend${r}`:`Default SceneGraph backend is not registered${r}`,i,e,w):new eU(`No SVG renderer registered for Mermaid family ${e.id}${r}`,i,e,w)}let x="terminal"===f?void 0:Y(a.textMeasurement,t.font),C;if("scene"===f||"family-svg"===f){let t=Object.freeze("scene"===f?{mode:"scene",requestedId:m,selectedId:p.identity.id,version:p.identity.version,hostPolicy:void 0!==a.backendPolicy}:{mode:"family-svg"}),i={family:Object.freeze({id:e.identity.id,version:e.identity.version}),backend:t,...x?{textMeasurement:x.identity}:{}};C=Object.freeze({...i,digest:e7(e5(e8(i)))})}let O=void 0===r?void 0:Object.freeze((o=e.id,s=e.config,l=e.configDiagnostics,h=d(o),function(e,t,i,a){var r;let n;if(!i)return[];let o=a??d(e)?.configDiagnostics;return r=t.flatMap(t=>o?[...o({root:t,config:i})]:function(e,{root:t,config:i},a={}){let r=function(e,t,i){if(!i)return[];let a=t&&"object"==typeof t&&!Array.isArray(t)?t:void 0,r=ex(t,i.section);if(!r)return a&&i.section in a?[{code:"INEFFECTIVE_CONFIG",field:i.section,message:`${e} config section "${i.section}" must be an object; the invalid value has no effect.`}]:[];let n=new Set(i.keys);return Object.keys(r).filter(e=>!n.has(e)).sort().map(t=>({code:"INEFFECTIVE_CONFIG",field:`${i.section}.${t}`,message:`${e} config field "${t}" is unknown and has no effect; check the spelling or remove it.`}))}(e,t,i),n=ex(t,i.section);if(n){for(let[e,t]of Object.entries(a))if(e in n&&!t.valid(n[e])){let a=`${i.section}.${e}`;r.push({code:"INEFFECTIVE_CONFIG",field:a,message:`${a} must be ${t.expected}; the invalid value has no effect.`})}}return[...r,...function(e,t,i,a={}){if(!i)return[];let r=ex(t,i.section);if(!r)return[];let n=new Set(i.noopKeys??[]);return Object.keys(r).filter(e=>{if(!n.has(e))return!1;let t=a[e];return!t||t.valid(r[e])}).sort().map(t=>({code:"INEFFECTIVE_CONFIG",field:`${i.section}.${t}`,message:`${e} config field "${t}" is accepted for ${e.includes(":")?"compatibility":"Mermaid compatibility"} but has no effect on this renderer.`}))}(e,t,i,a)]}(e,{root:t,config:i})),n=new Set,r.sort((e,t)=>D(e.field,t.field)||D(e.message,t.message)).filter(e=>{let t=`${e.code}\0${e.field}\0${e.message}`;return!n.has(t)&&(n.add(t),!0)})}(o,[r],s??h?.config,l??h?.configDiagnostics)).map(e=>Object.freeze({...e})));return Object.freeze({output:i,mode:f,family:e,...p?{backend:p}:{},...m?{requestedBackendId:m}:{},...void 0===O?{}:{configDiagnostics:O},...n?{onConfigDiagnostic:n}:{},capabilityDecision:w,...C?{executionDecision:C}:{},...x?{textMeasurement:x}:{}})}(w,j,o,c,p.mermaidConfig,f.onConfigDiagnostic),N=L.capabilityDecision,P=Object.freeze(N.resolutions.filter(ty)),_=Object.freeze({version:N.version,accepted:P.every(e=>"required"!==e.level||"selected"===e.status),resolutions:P}),G={version:2,authoredSource:S.originalText,source:S.text,options:e1(k),appearance:j.digest,...E?{familyConfig:E}:{},...L.textMeasurement?{textMeasurement:L.textMeasurement.identity}:{},capabilities:_},K=e3(G,S),X=e3({...G,output:o,outputOptions:s,capabilities:N},S),Q=Object.freeze({version:2,output:o,source:tt(S),renderOptions:k,appearance:j,...E?{familyConfig:E}:{},capabilityDecision:N,explicitOptionFields:C,...0===O.length?{}:{resolutionDiagnostics:O},get sharedRequestDigest(){return K()},get requestDigest(){return X()}});return eK.set(Q,L),Q}export{eY as a,eX as b,eQ as c,eZ as d,e7 as e,to as f,ts as g,tv as h};
|
|
4
|
+
`&&(u[e]=" ");let m=(function(e,t,i=0,a=g(e)){let r=[],n=new RegExp(t.source,t.flags.includes("g")?t.flags:`${t.flags}g`),o;for(;null!==(o=n.exec(e));)r.push(h(a,i+o.index,i+o.index+o[0].length)),0===o[0].length&&n.lastIndex++;return Object.freeze(r)})(u.join("").slice(l),RegExp(o.source,"gm"),l,a).filter(t=>p(e.slice(t.start.offset,t.end.offset)));return{...s?{frontmatter:h(a,0,l)}:{},...m.length>0?{initDirectives:m}:{},...d.length>0?{accessibilityDirectives:Object.freeze(d)}:{}}}(e,0,t,r,a),header:h(r,l,d),body:h(r,u,e.length)})}var ew=class extends Error{name="MermaidFamilyDetectionError";code;line;preservation;help;constructor(e){super(e.message),this.code=e.code,this.line=e.line,this.preservation=e.preservation,this.help=e.help}toJSON(){return{code:this.code,message:this.message,line:this.line,preservation:this.preservation,help:this.help}}};function ex(e,t){if(!e||"object"!=typeof e||Array.isArray(e))return;let i=e[t];return i&&"object"==typeof i&&!Array.isArray(i)?i:void 0}Object.freeze(["library","cli","codeMode","localMcp","hostedMcp","editor","website"]);var eC=["onConfigDiagnostic"],eO=(e,t)=>({type:"string",...void 0===t?{}:{default:t}}),ej=(e,t,i={})=>({type:"number",...void 0===t?{}:{default:t},...i}),ek=(e,t)=>ej(void 0,t,{minimum:0}),eE=(e,t)=>ej(void 0,t,{exclusiveMinimum:0}),eF=e=>ej(void 0,void 0,{minimum:1,maximum:1e3}),eA=(e,t)=>({type:"boolean",...void 0===t?{}:{default:t}}),eI=(e,t)=>({...eO(void 0,t),"x-agentic-mermaid-runtime-validator":"safeCssPaint"}),eT=(e,t)=>({...eO(void 0,t),"x-agentic-mermaid-runtime-validator":"safeCssFontFamily"}),ez=(e,t,i=[])=>({type:"object",additionalProperties:!1,properties:e,...0===i.length?{}:{required:i}}),eD={type:"string",enum:["uppercase","lowercase","capitalize"]},eL={...ez({groupHeaderHeight:eE(void 0),groupFontSize:eE(void 0),groupFontWeight:eF(void 0),groupLetterSpacing:ej(void 0),groupFont:eT(void 0),groupTextTransform:{...eD},groupPaddingX:ek(void 0),groupPaddingY:ek(void 0),groupLabelPaddingX:ek(void 0),groupCornerRadius:ek(void 0),groupLineWidth:ek(void 0),groupText:eI(void 0),serviceFontSize:eE(void 0),serviceFontWeight:eF(void 0),serviceLetterSpacing:ej(void 0),serviceTextTransform:{...eD},servicePaddingX:ek(void 0),servicePaddingY:ek(void 0),serviceCornerRadius:ek(void 0),serviceLineWidth:ek(void 0),serviceText:eI(void 0),edgeFontSize:eE(void 0),edgeFontWeight:eF(void 0),edgeLetterSpacing:ej(void 0),edgeTextTransform:{...eD},edgeLineWidth:ek(void 0),edgeBendRadius:ek(void 0),edgeStroke:eI(void 0),edgeText:eI(void 0),iconSize:eE(void 0),serviceIconSize:eE(void 0),junctionOuterRadius:eE(void 0),junctionInnerRadius:ek(void 0),groupSurface:eI(void 0),groupHeaderSurface:eI(void 0),groupBorder:eI(void 0),serviceSurface:eI(void 0),serviceBorder:eI(void 0)},void 0),"x-agentic-mermaid-runtime-validator":"architectureVisual"},eM={anyOf:[{type:"string"},(()=>{let e=k(),t=e.$defs,i=e=>{if(Array.isArray(e))return e.map(i);if(null===e||"object"!=typeof e)return e;let a=e.$ref;if("string"==typeof a&&a.startsWith("#/$defs/")){let e=t?.[a.slice(8)];if(!e)throw Error(`StyleSpec schema has unresolved local reference ${a}`);return i(e)}return Object.fromEntries(Object.entries(e).filter(([e])=>"$defs"!==e).map(([e,t])=>[e,i(t)]))},{$schema:a,$id:r,title:n,...o}=e;return i(o)})()],"x-agentic-mermaid-validation-expectation":"a registered Style name or StyleSpec"},eR={anyOf:[{type:"null"},{type:"string"},{type:"number"},{type:"boolean"},{type:"array",items:{$ref:"#/$defs/jsonValue"}},{type:"object",additionalProperties:{$ref:"#/$defs/jsonValue"}}],"x-agentic-mermaid-validation-expectation":"a finite, acyclic JSON value without prototype keys"},eq=["flowchart","state","class","er","architecture","c4"],eN=N({layoutHints:{validationExpectation:"contain integer ranks, node groups and edge IDs",schema:{type:"object",additionalProperties:!1,properties:{ranks:{type:"object",additionalProperties:{type:"integer",minimum:0,maximum:1e4}},adjacent:{type:"array",items:{type:"array",minItems:2,items:{type:"string"}}},shortEdges:{type:"array",items:{type:"string"}}}},applicableBuiltinFamilies:["flowchart","state"]},graphLayout:{validationExpectation:"be a graph layout selection object",schema:{anyOf:[ez({backend:{type:"string",const:"elk"},fallback:{type:"string",enum:["none"]}},void 0,["backend"]),ez({backend:{type:"string",const:"agentic"},fallback:{type:"string",enum:["none","elk"]}},void 0,["backend"])]},applicableBuiltinFamilies:["flowchart","state","architecture","class","er","requirement"]},layoutSafety:{validationExpectation:"be report or strict",schema:{type:"string",enum:["report","strict"],default:"report"}},bg:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0,"#FFFFFF")},fg:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0,"#27272A")},line:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0)},accent:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0)},muted:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0)},surface:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0)},border:{validationExpectation:"be a safe non-fetching CSS paint",schema:eI(void 0)},font:{validationExpectation:"be a safe non-fetching CSS font family or stack",schema:eT(void 0,"Inter")},style:{validationExpectation:"be a registered Style name or StyleSpec, or an array of them",schema:{anyOf:[eM,{type:"array",items:eM}],"x-agentic-mermaid-runtime-validator":"styleInput"}},padding:{validationExpectation:"be a non-negative finite number",schema:ek(void 0,40),applicableBuiltinFamilies:["flowchart","state","architecture","c4"]},nodeSpacing:{validationExpectation:"be a non-negative finite number",schema:ek(void 0,24),applicableBuiltinFamilies:eq},layerSpacing:{validationExpectation:"be a non-negative finite number",schema:ek(void 0,40),applicableBuiltinFamilies:eq},wrappingWidth:{validationExpectation:"be a positive finite number",schema:eE(void 0),applicableBuiltinFamilies:["flowchart"]},componentSpacing:{validationExpectation:"be a non-negative finite number",schema:ek(void 0),applicableBuiltinFamilies:[]},transparent:{validationExpectation:"be a boolean",schema:eA(void 0,!1)},interactive:{validationExpectation:"be a boolean",schema:eA(void 0,!1),applicableBuiltinFamilies:["xychart","pie","quadrant"]},shadow:{validationExpectation:"be a boolean",schema:eA(void 0,!1),applicableBuiltinFamilies:["flowchart","state","sequence","timeline","class","er","journey","xychart","pie","quadrant","gantt","mindmap","gitgraph","sankey"]},class:{validationExpectation:"be a class options object",schema:ez({hierarchicalNamespaces:eA(void 0,!0)},void 0),applicableBuiltinFamilies:["class"]},kanban:{validationExpectation:"be a kanban options object",schema:ez({maxWidth:eE(void 0)},void 0),applicableBuiltinFamilies:["kanban"]},pie:{validationExpectation:"be a pie options object",schema:ez({maxWidth:eE(void 0)},void 0),applicableBuiltinFamilies:["pie"]},radar:{validationExpectation:"be a radar options object",schema:ez({maxWidth:eE(void 0)},void 0),applicableBuiltinFamilies:["radar"]},architecture:{validationExpectation:"be an architecture options object",schema:ez({visual:eL},void 0),applicableBuiltinFamilies:["architecture"]},timeline:{validationExpectation:"be a timeline options object",schema:ez({maxWidth:eE(void 0)},void 0),applicableBuiltinFamilies:["timeline"]},journey:{validationExpectation:"be a journey options object",schema:ez({experienceCurve:eA(void 0,!0)},void 0),applicableBuiltinFamilies:["journey"]},gantt:{validationExpectation:"be a Gantt options object",schema:ez({dependencyArrows:eA(void 0,!1),criticalPath:eA(void 0,!1)},void 0),applicableBuiltinFamilies:["gantt"]},mermaidConfig:{validationExpectation:"be a plain JSON object",schema:{type:"object",additionalProperties:{$ref:"#/$defs/jsonValue"}}},embedFontImport:{validationExpectation:"be a boolean",schema:eA(void 0,!1)},compact:{validationExpectation:"be a boolean",schema:eA(void 0,!1)},idPrefix:{validationExpectation:"be non-empty and contain only ASCII letters, digits, underscore, hyphen, dot, and colon",schema:{...eO(void 0),pattern:"^[A-Za-z0-9_.:-]+$"}},security:{validationExpectation:"be default or strict",schema:{type:"string",enum:["default","strict"],default:"default"}},ganttToday:{validationExpectation:"be a string",schema:eO(void 0),applicableBuiltinFamilies:["gantt"]},seed:{validationExpectation:"be a finite number",schema:ej(void 0,0)}}),eP=Object.freeze(Object.keys(eN)),eB=Object.freeze(eP.filter(e=>"applicableBuiltinFamilies"in eN[e]));function eW(e){let t=e=>Array.isArray(e)?e.map(t):q(e)?Object.fromEntries(Object.entries(e).map(([e,i])=>[e,t(i)])):e;return t(e)}function e_(e){let t=String(e[0]??"");for(let i of e.slice(1))t+="number"==typeof i?`[${i}]`:`.${i}`;return`render option "${t}"`}function eV(e){return j(C(e).map(e=>e.path.length>0?`${e_(e.path)} ${e.message}`:`render options ${e.message}`),"render options")}function eJ(e,t,i){let a=t["x-agentic-mermaid-runtime-validator"];if("safeCssColor"===a&&void 0===V(e))return[{path:i,message:"must be a safe, non-fetching CSS color",generic:!1}];if("safeCssPaint"===a&&void 0===H(e))return[{path:i,message:"must be a safe, non-fetching CSS paint",generic:!1}];if("safeCssFontFamily"===a&&void 0===W(e))return[{path:i,message:"must be a safe, non-fetching CSS font family or stack",generic:!1}];if("styleInput"===a)try{A(e)}catch(e){return[{path:i,message:`is invalid: ${e instanceof Error?e.message:String(e)}`,generic:!1}]}if("architectureVisual"===a&&q(e)){let t=e.junctionOuterRadius,a=e.junctionInnerRadius;if("number"==typeof t&&"number"==typeof a&&a>t)return[{path:[...i,"junctionInnerRadius"],message:"must not exceed junctionOuterRadius",generic:!1}]}return[]}function eG(e){if(!q(e))return["render options must be a plain JSON object"];let t=eV(e);if(t.length>0)return t;let i=[],a=Z??=N(function(){let e={};for(let t of eP){let i=eN[t],a="terminalNote"in i?i.terminalNote:void 0,r="applicableBuiltinFamilies"in i?i.applicableBuiltinFamilies:void 0;e[t]={...eW(i.schema),"x-agentic-mermaid-terminal":i.terminal,...void 0===a?{}:{"x-agentic-mermaid-terminal-note":a},...void 0===r?{}:{"x-agentic-mermaid-applicable-builtin-families":[...r]}}}return{type:"object",additionalProperties:!1,properties:e,$defs:{jsonValue:eW(eR)}}}());for(let[t,r]of Object.entries(e)){if(!Object.hasOwn(eN,t)){i.push(`unknown render option "${t}"`);continue}if(null===r){i.push(`render option "${t}" must be omitted instead of null`);continue}let e=eN[t],n=Q(r,e.schema,a,[t],{diagnostics:"field",validateRuntime:eJ});n.length>0&&n.every(e=>e.generic&&1===e.path.length)?i.push(`render option "${t}" must ${e.validationExpectation}`):i.push(...n.map(e=>`${e_(e.path)} ${e.message}`))}return j(i,"render options")}var eH=class extends Error{constructor(e,t){super(`Parsed Mermaid family "${e}" serialized as family "${t}"`),this.expectedFamilyId=e,this.detectedFamilyId=t}expectedFamilyId;detectedFamilyId;name="ParsedDiagramFamilyMismatchError";code="PARSED_DIAGRAM_FAMILY_MISMATCH"},eU=class extends Error{name="RenderCapabilityError";code="UNSATISFIED_RENDER_CAPABILITIES";output;family;decision;constructor(e,t,i,a){super(e),this.output=t,this.family=Object.freeze({id:i.identity.id,version:i.identity.version}),this.decision=a}toJSON(){return{name:this.name,code:this.code,message:this.message,output:this.output,family:this.family,decision:this.decision}}},eK=class extends TypeError{constructor(e){super(e),this.name="RenderConfigError"}},eY=new WeakMap;function eX(e){let t=eY.get(e);if(!t)throw Error("Resolved render request has no internal execution plan");return t}function eQ(e,t=[]){let i,a=eY.get(e),r=a?.executionDecision,n=a&&Object.hasOwn(a,"textMeasurement")?a.textMeasurement:void 0;return Object.freeze({version:e.version,output:e.output,sharedRequestDigest:e.sharedRequestDigest,requestDigest:e.requestDigest,appearanceDigest:e.appearance.digest,capabilityDecision:e.capabilityDecision,diagnostics:(i=new Set,Object.freeze([...Object.hasOwn(e,"resolutionDiagnostics")?e.resolutionDiagnostics:[],...t,...L(e).flatMap(e=>"agentic"===e.requested&&"elk"===e.selected?[{code:"GRAPH_LAYOUT_FALLBACK",feature:"graph-layout",message:`Agentic graph layout used the requested ELK fallback: ${e.reason??"candidate rejected"}`}]:[])].flatMap(e=>{let t=e5(e);return i.has(t)?[]:(i.add(t),[Object.freeze({...e})])}))),...r?{executionDecision:r}:{},...n?{textMeasurement:n.identity}:{},...L(e).length?{layoutDecisions:L(e)}:{}})}function eZ(e){let t=e0.get(e);if(t)return t;let i=eY.get(e)?.backend?.identity.id??("layout"===e.output?`backend:${e.appearance.inferredBackend}`:void 0),a=Object.freeze({renderOptions:e.renderOptions,...e.appearance.face?{styleFace:e.appearance.face}:{},...i?{paintBackendId:i}:{},...e.familyConfig?{familyConfig:e.familyConfig}:{},...e.appearance.family?{familyAppearance:e.appearance.family}:{}});return eY.has(e)&&e0.set(e,a),a}var e0=new WeakMap;function e1(e){let t={};for(let i of eP){let a=e[i];void 0!==a&&(t[i]=a)}return t}var e6=new Set(["padding","nodeSpacing","layerSpacing","wrappingWidth","class"]);function e2(e,t="$",i=0,a=new Set,r={nodes:0,chars:0,opaque:!1,admission:void 0}){let n=r.admission;if(n?.valid)switch((++n.nodes>w.maxNodes||i>w.maxDepth)&&(n.valid=!1),typeof e){case"number":e-e!=0&&(n.valid=!1);break;case"undefined":case"bigint":case"symbol":case"function":n.valid=!1}if("string"==typeof e){if(r.chars+=e.length,r.chars>2e6)throw TypeError(`data exceeds the 2000000-character aggregate limit at ${t}`);return e}if(null===e||"object"!=typeof e)return e;if(i>64)throw TypeError(`data exceeds maximum depth 64 at ${t}`);if(++r.nodes>1e5)throw TypeError(`data exceeds the 100000-node aggregate limit at ${t}`);if(a.has(e))throw TypeError(`data must be acyclic at ${t}`);if(Array.isArray(e)){if(e.length>1e5)throw TypeError(`data array exceeds the 100000-entry limit at ${t}`);a.add(e);try{let o=[],s=Object.create(null);s.enumerable=s.configurable=s.writable=!0;for(let n=0;n<e.length;n++){if(n>=1e5)throw TypeError(`data array exceeds the 100000-entry limit at ${t}`);if(!Object.prototype.hasOwnProperty.call(e,n))throw TypeError(`data must not contain a sparse array at ${t}[${n}]`);s.value=e2(e[n],`${t}[${n}]`,i+1,a,r),Object.defineProperty(o,n,s)}return n&&o.length>w.maxItemsPerContainer&&(n.valid=!1),te(o,!r.opaque)}finally{a.delete(e)}}if(!q(e))return r.opaque=!0,n&&(n.valid=!1),e;a.add(e);try{let o={},s=0;for(let[l,c]of Object.entries(e)){if(r.chars+=l.length,r.chars>2e6)throw TypeError(`data exceeds the 2000000-character aggregate limit at ${t}.${l}`);if(void 0!==c){n&&(++s>w.maxItemsPerContainer||x(l))&&(n.valid=!1);let e=e2(c,`${t}.${l}`,i+1,a,r);l in o?Object.defineProperty(o,l,{value:e,enumerable:!0}):o[l]=e}}return te(o,!r.opaque)}finally{a.delete(e)}}function e4(e,t,i,a=!1){let r;if(void 0===t)return;if(!q(t))throw TypeError(`Family "${e.id}" returned ${i} data that is not a plain object`);if(a)return t;try{r=e2(t)}catch(t){throw TypeError(`Family "${e.id}" returned invalid ${i} data: ${t instanceof Error?t.message:String(t)}`)}let n={...eR,$defs:{jsonValue:eR}},o=Q(r,n,n,[`family${"config"===i?"Config":"Appearance"}`],{diagnostics:"field",validateRuntime:eJ});if(o.length>0){let t=o.map(e=>`${e.path.join(".")} ${e.message}`).join("; ");throw TypeError(`Family "${e.id}" returned invalid ${i} data: ${t}`)}return tt(r)}function e5(e){if(null===e||"object"!=typeof e)return JSON.stringify(e);if(Array.isArray(e))return`[${e.map(e5).join(",")}]`;let t="{",i="";for(let a of Object.keys(e).sort()){let r=e[a];void 0!==r&&(t+=`${i}${JSON.stringify(a)}:${e5(r)}`,i=",")}return`${t}}`}function e3(e,t){try{let t,i;return t=e8(e),()=>(void 0===i&&(i=e9(e5(t)),t=void 0),i)}catch(e){throw e instanceof TypeError&&/aggregate limit/.test(e.message)?new a("sourceCharacters",t.originalText.length+t.text.length,!0):e}}function e8(e){let t,i={nodes:0,valid:2e6<=w.maxAggregateTextCharacters&&6e6<=w.maxAggregateTextBytes};try{t=ti(e,"render contract digest input",i)}catch(e){throw TypeError((e instanceof Error?e.message:String(e)).replace("data exceeds maximum depth","data exceeds maximum nesting depth"))}return i.valid||O(t,"render contract digest input",{allowUndefinedObjectProperties:!0}),t}function e9(e){let t=-0x340d631c,i=-0x7bdddcdb;for(let a=0;a<e.length;a++){let r=i^e.charCodeAt(a),n=(r>>>16)*435+((65535&r)*435>>>16)>>>16;i=Math.imul(r,435),t=Math.imul(t,435)+n+(r<<8)|0}return`fnv1a64:${(t>>>0).toString(16).padStart(8,"0")}${(i>>>0).toString(16).padStart(8,"0")}`}var e7=new WeakSet;function te(e,t=!0){return Object.freeze(e),t&&e7.add(e),e}function tt(e,t="$",i,a){let r;if(null===e||"object"!=typeof e||e7.has(e))return e;if(i??=new Set,a??=new WeakMap,i.has(e))throw TypeError(`render request contains a cycle at ${t}`);let n=a.get(e);if(n)return n;let o=Object.getPrototypeOf(e);if(!Array.isArray(e)&&o!==Object.prototype&&null!==o)throw TypeError(`render request contains a non-JSON object at ${t}`);if(i.add(e),Array.isArray(e)){let n=e.length,o=Array(n);for(let r=0;r<n;r++)r in e&&(o[r]=tt(e[r],`${t}[${r}]`,i,a));r=o}else{let n={};for(let[r,o]of Object.entries(e)){let e=tt(o,`${t}.${r}`,i,a);r in n?Object.defineProperty(n,r,{value:e,enumerable:!0}):n[r]=e}r=n}return i.delete(e),a.set(e,r),te(r)}function ti(e,t,i){try{return tt(i?e2(e,"$",0,new Set,{nodes:0,chars:0,opaque:!1,admission:i}):e2(e))}catch(e){throw TypeError(`${t} could not be snapshotted: ${e instanceof Error?e.message:String(e)}`)}}var ta=Object.freeze({serializable:tt({})}),tr=new WeakMap,tn=new WeakMap;function to(e){if(tr.has(e))return e;let t=tl(e),i=tt(I(t.serializable.style)),a=eG(t.serializable);if(a.length)throw new eK(`Invalid RenderOptions: ${a.join("; ")}`);let r=tc(t.serializable.style),n=Object.freeze({...t.serializable,...t.onConfigDiagnostic?{onConfigDiagnostic:t.onConfigDiagnostic}:{}});return tr.set(n,Object.freeze({...t,capturedStyle:i})),tn.set(t.serializable,r),n}function ts(e){let t=tr.get(e)?.capturedStyle;if(!t)throw TypeError("Render options have not been captured");return t.style?F(t.style):"default"}function tl(e){if("object"!=typeof e&&"function"!=typeof e||null===e)throw new eK("Invalid RenderOptions: render options must be an object");let t=tr.get(e);if(t)return t;let i=[],a;for(let[t,r]of Object.entries(e))"onConfigDiagnostic"===t?a=r:void 0!==r&&i.push([t,r]);if(void 0!==a&&"function"!=typeof a)throw new eK("Invalid RenderOptions: onConfigDiagnostic must be a function");if(0===i.length&&void 0===a)return ta;let r=Object.fromEntries(i),n;try{n=ti(r,"RenderOptions")}catch(t){let e=(t instanceof Error?t.message:String(t)).replace("data exceeds maximum depth","render option tree exceeds maximum nesting depth");throw new eK(`Invalid RenderOptions: ${e}`)}return Object.freeze({serializable:n,...void 0===a?{}:{onConfigDiagnostic:a}})}function tc(e){return tt((void 0===e?[]:Array.isArray(e)?e:[e]).flatMap(e=>{if("string"!=typeof e||"crisp"===e)return[];let t=E(e);return t?[{input:e,canonicalId:t.canonicalId}]:[]}))}var td="1.0.0";function tu(e,t,i=td){return t?[{id:e,version:i}]:[]}function tf(e,t=`^${td}`){return{id:e,range:t,level:"required"}}function tp(e){return`scene-primitive:${e.primitive}/${e.feature}/${e.operation}`}var tm=new WeakMap;function tg(e,t){let i=tm.get(e.backend);return i||(i=new Set(D.filter(t=>e.backend.capabilities.some(e=>e.primitive===t.primitive&&e.feature===t.feature&&e.operation===t.operation&&"unsupported"!==e.realization))),tm.set(e.backend,i)),i.has(t)}var th=new Map;function ty(e){return!e.id.startsWith("output:")&&!e.id.startsWith("operation:")&&!e.id.startsWith("backend:")&&!e.id.startsWith("scene-primitive:")&&"core:scene"!==e.id}function tv(a,n={},o="svg",s,c={}){let f=tl(n),p=f.serializable,m=eV(p);if(m.length>0)throw new eK(`Invalid RenderOptions: ${m.join("; ")}`);let g=f.capturedStyle??I(p.style),h=g.style,y=tt(g.face),v=f.capturedStyle?[]:eG(p);if(v.length>0)throw new eK(`Invalid RenderOptions: ${v.join("; ")}`);let b,S=tt($(a,p.mermaidConfig??{},e=>c.familyDescriptor?c.familyDescriptor:"registered"===(b=function(e,t="strict"){let i=l(e),a=u(i,t);if(a)return{kind:"registered",family:a};let r=function(e,t=eS){let i=(e.split(";")[0]??"").trim().toLowerCase();return t.families.flatMap(e=>e.headers.map(t=>({family:e,header:t}))).sort((e,t)=>t.header.value.length-e.header.value.length||z(e.family.id,t.family.id)).find(e=>(function(e,t){let i=t.trim().toLowerCase();if(e===i)return!0;if(!e.startsWith(i))return!1;let a=e[i.length];return void 0!==a&&/[\s:]/.test(a)})(i,e.header.value))??null}(i);return r?{kind:"upstream",match:r}:{kind:"unknown",header:e}}(e)).kind?b.family:null)),w=c.familyDescriptor??function(e,t){if("registered"===t.kind)return t.family;throw new ew(function(e,t,i,a,r){let n=eS.provenance.version;if("unknown"===e.kind)return{code:"UNKNOWN_HEADER",message:`Unrecognized Mermaid header: "${e.header}"`,line:1,preservation:{version:1,classification:"unknown",source:t,header:e.header,mermaidVersion:n,spans:e$(t,a??e.header,i,null)},help:"Check for a Mermaid upgrade or register a namespaced family descriptor; the source was preserved unchanged."};let{family:o,header:s}=e.match,l="inventory-only"===s.agenticStatus?"inventory-only":"unsupported",c="native"===s.agenticStatus;return{code:c?"FAMILY_DESCRIPTOR_MISMATCH":"UNSUPPORTED_FAMILY",message:c?`Mermaid ${n} header "${s.value}" is marked native but no installed family descriptor claimed it`:`Mermaid ${n} family "${o.id}" is ${l} in Agentic Mermaid`,line:1,preservation:{version:1,classification:l,source:t,header:s.value,upstreamFamilyId:o.id,mermaidVersion:n,spans:e$(t,a??s.value,i,null)},help:c?"Report a descriptor/manifest mismatch; the source was preserved unchanged.":`Install a family descriptor for "${s.value}" or use a currently native family; the source was preserved unchanged.`}}("unknown"===t.kind?{...t,header:e.lines[0]??e.firstLine}:t,e.originalText,e.authoredWrapperLength??e.wrapperSource?.length??0,e.authoredHeader??e.lines[0]??e.firstLine,0))}(S,b);if(void 0!==c.expectedFamilyId&&w.id!==c.expectedFamilyId)throw new eH(c.expectedFamilyId,w.id);r("sourceCharacters",S.originalText.length+S.text.length);let x=M(S.config.themeCSS,p.security??"default");if(x)throw new eK(x);"architecture"!==w.id&&eb(S.config.themeVariables,w.id,p),function(e,t){let i=eh(e[t]);if(i){if("timeline"===t)ev(i,"timeline","sectionFills",!1),ev(i,"timeline","sectionColours",!1),(void 0===i.sectionColours||Array.isArray(i.sectionColours)&&0===i.sectionColours.length)&&ev(i,"timeline","sectionColors",!1);else if("journey"===t)ev(i,"journey","actorColours",!0),ev(i,"journey","sectionFills",!1),ev(i,"journey","sectionColours",!1),ey(i,"journey","titleColor",!1);else if("requirement"===t)ey(i,"requirement","rect_fill",!0),ey(i,"requirement","rect_border_color",!0),ey(i,"requirement","text_color",!1);else if("sankey"===t){let e=i.linkColor;if("source"!==e&&"target"!==e&&"gradient"!==e&&ey(i,"sankey","linkColor",!0),void 0===i.nodeColors)return;let t=eh(i.nodeColors);if(!t)throw new eg("sankey.nodeColors",i.nodeColors,!1,"map");let a=void 0!==e&&"gradient"!==e;for(let[e,i]of Object.entries(t))if(void 0===J(i,a))throw new eg(/^[\w-]+$/.test(e)?`sankey.nodeColors.${e}`:`sankey.nodeColors[${JSON.stringify(e)}]`,i,a)}}}(S.frontmatter,w.id);let C=Object.freeze(eP.filter(e=>void 0!==p[e])),O=function(e,t){if(e.id.startsWith("family:")){let i=new Set(e.applicableRenderOptions??[]);return Object.freeze(t.flatMap(t=>!eB.includes(t)||i.has(t)?[]:[Object.freeze({code:"RENDER_OPTION_NOT_APPLICABLE",feature:`render-option:${t}`,message:`Render option "${t}" does not apply to extension family "${e.id}". Its FamilyDescriptor does not list the field in applicableRenderOptions.`})]))}let i=e.id;return Object.freeze(t.flatMap(e=>{let t=eN[e];if(!("applicableBuiltinFamilies"in t))return[];let a=t.applicableBuiltinFamilies;if(a.includes(i))return[];let r=0===a.length?"No built-in family currently consumes this option.":`Applicable built-in families: ${a.join(", ")}.`;return[Object.freeze({code:"RENDER_OPTION_NOT_APPLICABLE",feature:`render-option:${e}`,message:`Render option "${e}" does not apply to built-in Mermaid family "${i}". ${r}`})]}))}(w,C),{appearance:j,renderOptions:k,familyConfig:E}=function(a){let{family:r,source:n,options:o,style:s,styleFace:l}=a,c="strict"===o.security?{...o,embedFontImport:!1}:{...o};o.graphLayout&&(c.graphLayout={...o.graphLayout,fallback:o.graphLayout.fallback??"none"});let d=void 0!==s&&T(s);d&&(c=function(t,i,a){let r={...t},n=t=>e[t].some(e=>a?.[e]!==void 0);for(let e of["bg","fg","line","accent","muted","surface","border"])void 0!==r[e]||n(e)||i.colors?.[e]===void 0||(r[e]=i.colors[e]);return void 0===r.font&&void 0!==i.font&&(r.font=i.font),r}(c,s,n.config.themeVariables));let u=o.font??n.config.fontFamily??i(n.config.themeVariables,"fontFamily")??c.font??"Inter",f=W(u)??u,{style:p,...m}=c,g={...m,...s?{style:s}:{},font:f,mermaidConfig:n.config},h={...t(g,n.config,f)},y=function(e,t,i,a,r,n){if(!e.normalizeRequest)return{renderOptions:i,colors:a};let o=Object.freeze({source:tt(t),renderOptions:tt(i),colors:tt(a),...r?{style:tt(r)}:{},...n?{styleFace:tt(n)}:{}}),s=e.normalizeRequest(o);if(void 0===s)return{renderOptions:i,colors:a};let l,c={nodes:0,valid:!0};try{l=ti(s,`Family "${e.id}" request normalizer result`,c)}catch(t){throw TypeError(`Family "${e.id}" request normalizer returned invalid data: ${t instanceof Error?t.message:String(t)}`)}if(!q(l))throw TypeError(`Family "${e.id}" request normalizer must return a plain object`);let d=Object.keys(l).find(e=>!["renderOptions","familyConfig","appearance"].includes(e));if(d)throw TypeError(`Family "${e.id}" request normalizer returned unknown field "${d}"`);let u=l,f=u.appearance;if(void 0!==f){if(!q(f))throw TypeError(`Family "${e.id}" request normalizer returned a non-object appearance`);let t=Object.keys(f).find(e=>!["colors","family"].includes(e));if(t)throw TypeError(`Family "${e.id}" request normalizer returned unknown appearance field "${t}"`)}let p=u.renderOptions??i;if(void 0!==p.onConfigDiagnostic)throw TypeError(`Family "${e.id}" request normalizer may not return executable option "onConfigDiagnostic"`);let m=eG(Object.fromEntries(Object.entries(p).filter(([e,t])=>void 0!==t&&!eC.includes(e))));if(m.length>0)throw new eK(`Family "${e.id}" returned invalid normalized RenderOptions: ${m.join("; ")}`);let g=e1(i),h=e1(p);for(let t of eP)if(!e6.has(t)&&e5(g[t])!==e5(h[t]))throw TypeError(`Family "${e.id}" request normalizer may not rewrite non-geometry option "${t}"`);let y=f?.colors?function(e,t,i){let a=new Set(["bg","fg","line","accent","muted","surface","border","shadow","font","embedFontImport"]),r=Object.keys(t).find(e=>!a.has(e));if(r)throw TypeError(`Family "${e.id}" returned unknown appearance color field "${r}"`);let n={...i};for(let i of["bg","fg","line","accent","muted","surface","border"]){let a=t[i];if(void 0===a)continue;let r=H(a);if(void 0===r)throw new eK(`Family "${e.id}" returned an unsafe ${i} paint`);n[i]=r}if(void 0!==t.font){let a=W(t.font);if(void 0===a)throw new eK(`Family "${e.id}" returned an unsafe font family`);if(a!==i.font)throw TypeError(`Family "${e.id}" request normalizer may not rewrite appearance field "font"`)}if(void 0!==t.shadow){if("boolean"!=typeof t.shadow)throw TypeError(`Family "${e.id}" returned a non-boolean shadow value`);if(t.shadow!==i.shadow)throw TypeError(`Family "${e.id}" request normalizer may not rewrite appearance field "shadow"`)}if(void 0!==t.embedFontImport){if("boolean"!=typeof t.embedFontImport)throw TypeError(`Family "${e.id}" returned a non-boolean embedFontImport value`);if(t.embedFontImport!==i.embedFontImport)throw TypeError(`Family "${e.id}" request normalizer may not rewrite appearance field "embedFontImport"`)}return n}(e,f.colors,a):a,v=e4(e,u.familyConfig,"config",c.valid),b=e4(e,f?.family,"appearance",c.valid);return{renderOptions:p,colors:y,...v?{familyConfig:v}:{},...b?{familyAppearance:b}:{}}}(r,n,g,h,s,l),v=tt(y.colors),b=tn.get(o)??tc(o.style),S=function(t){let i=new Set;for(let a of Object.values(e))for(let e of a){let a=t.config.themeVariables?.[e];"string"==typeof a&&a.length>0&&void 0===V(a)&&i.add(e)}return Object.freeze([...i].sort())}(n),$={version:2,colors:v,font:f,style:tt(s),face:tt(l),styled:d,inferredBackend:s?F(s):"default",styleReferences:b,...S.length>0?{unsafeThemeColorKeys:S}:{},...y.familyAppearance?{family:y.familyAppearance}:{}},w=tt({...$,digest:e9(e5(e8($)))});return tt({renderOptions:tt(y.renderOptions),appearance:w,...y.familyConfig?{familyConfig:y.familyConfig}:{}})}({family:w,source:S,options:p,...h?{style:h}:{},...y?{styleFace:y}:{}}),A=j.family?.visual;"architecture"===w.id&&eb(S.config.themeVariables,w.id,p,A),function(e,t,i){if("architecture"!==t||!e)return;let a=i?.edgeStroke;if("string"==typeof a&&"none"===a.trim().toLowerCase())throw new em("architecture.visual.edgeStroke",a);for(let t of["bg","surface","line","accent"]){let r=e[t];if("string"==typeof r&&"none"===r.trim().toLowerCase()&&("surface"!==t||i?.groupSurface?.trim().toLowerCase()==="none")&&!("surface"===t&&i?.groupHeaderSurface)&&!(("line"===t||"accent"===t)&&a))throw new em(t,r)}let r=i?.groupSurface;if(!i?.groupHeaderSurface&&"string"==typeof r&&"none"===r.trim().toLowerCase())throw new em("architecture.visual.groupSurface",r)}(p,w.id,A);let L=function(e,t,i,a,r,n){var o,s,l,c,u;let f,p,m,g,h;"svg"===i||"png"===i?"scene"==(f=t.styled||e.lowerScene?"scene":"family-svg")&&(p=R(m=t.styled?t.inferredBackend:"default",a.backendPolicy)):f="layout"===i?"layout":"terminal";let y="scene"===f?(g=new Set(e.scenePrimitiveEvidence.filter(e=>"applicable"===e.applicability).map(e=>e.primitive)),D.filter(e=>g.has(e.primitive))):[],v=p?y.flatMap(e=>tu(tp(e),tg(p,e))):[],b=[{id:e.identity.id,version:e.identity.version},...tu("operation:layout",void 0!==e.layout),...tu("operation:project-positioned",void 0!==e.projectPositioned),...tu("operation:lower-scene",void 0!==e.lowerScene),...tu("operation:render-svg",void 0!==e.renderSvg),...tu("operation:render-terminal",void 0!==e.renderAscii),...tu("core:scene","scene"===f),...tu("backend:scene-renderer",void 0!==p,p?.identity.version),...v],S=[tf("core:family-descriptor"),tf(e.identity.id,e.identity.version)],$;switch(f){case"scene":S.push(tf("core:scene"),tf("operation:layout"),tf("operation:lower-scene"),tf("backend:scene-renderer",p?.identity.version??td),...y.map(e=>tf(tp(e)))),$=!!(e.layout&&e.lowerScene&&p&&y.every(e=>tg(p,e)));break;case"family-svg":S.push(tf("operation:layout"),tf("operation:render-svg")),$=!!(e.layout&&e.renderSvg);break;case"terminal":S.push(tf("operation:render-terminal")),$=void 0!==e.renderAscii;break;case"layout":S.push(tf("operation:layout"),tf("operation:project-positioned")),$=!!(e.layout&&e.projectPositioned)}let w=function(e,t,i,a){let r=function(e,t,i,a){let r=t.length+i.length;if("string"!=typeof e||r>256)return;let n=e.length+16*r;if(n>16384)return;let o=`${e.length}:${e};${a};${t.length};${i.length};`;for(let e of t){if("string"!=typeof e.id||"string"!=typeof e.version||(n+=e.id.length+e.version.length)>16384)return;o+=`${e.id.length}:${e.id}${e.version.length}:${e.version}`}for(let e of i){if("string"!=typeof e.id||"string"!=typeof e.range||"string"!=typeof e.level||(n+=e.id.length+e.range.length+e.level.length)>16384)return;o+=`${e.id.length}:${e.id}${e.range.length}:${e.range}${e.level.length}:${e.level}`}return o.length<=8192?o:void 0}(e,t,i,a),n=void 0===r?void 0:th.get(r);if(B("capability-decision",void 0===r?"bypass":n?"hit":"miss",void 0===r?"tuple-budget":void 0),n)return n;let o=U(e,{offers:t,requirements:i,outputAvailable:a});return void 0!==r&&(th.size<32?th.set(r,o):B("capability-decision","store-skipped","capacity")),o}(i,b,S,$);if(!w.accepted){let a,r;throw c=f,u=p,r=(a=w.resolutions.filter(e=>"required"===e.level&&"selected"!==e.status).map(e=>e.id).join(", "))?` (unsatisfied capabilities: ${a})`:"","layout"===i?new eU(`No public layout projection registered for Mermaid family "${e.id}"${r}`,i,e,w):"ascii"===i||"unicode"===i||"html"===i?new eU(`No ASCII renderer registered for Mermaid family ${e.id}${r}`,i,e,w):t.styled&&!e.lowerScene?new eU(`Family "${e.id}" does not support styled rendering (no SceneGraph lowering registered). Render without the style option, or register a lowerScene hook for the family.${r}`,i,e,w):"scene"===c&&e.layout&&e.lowerScene&&!u?new eU(t.styled?`Style "${t.style?.name??"(inline)"}" requires an unavailable SceneGraph backend${r}`:`Default SceneGraph backend is not registered${r}`,i,e,w):new eU(`No SVG renderer registered for Mermaid family ${e.id}${r}`,i,e,w)}let x="terminal"===f?void 0:K(a.textMeasurement,t.font),C;if("scene"===f||"family-svg"===f){let t=Object.freeze("scene"===f?{mode:"scene",requestedId:m,selectedId:p.identity.id,version:p.identity.version,hostPolicy:void 0!==a.backendPolicy}:{mode:"family-svg"}),i={family:Object.freeze({id:e.identity.id,version:e.identity.version}),backend:t,...x?{textMeasurement:x.identity}:{}};C=Object.freeze({...i,digest:e9(e5(e8(i)))})}let O=void 0===r?void 0:Object.freeze((o=e.id,s=e.config,l=e.configDiagnostics,h=d(o),function(e,t,i,a){var r;let n;if(!i)return[];let o=a??d(e)?.configDiagnostics;return r=t.flatMap(t=>o?[...o({root:t,config:i})]:function(e,{root:t,config:i},a={}){let r=function(e,t,i){if(!i)return[];let a=t&&"object"==typeof t&&!Array.isArray(t)?t:void 0,r=ex(t,i.section);if(!r)return a&&i.section in a?[{code:"INEFFECTIVE_CONFIG",field:i.section,message:`${e} config section "${i.section}" must be an object; the invalid value has no effect.`}]:[];let n=new Set(i.keys);return Object.keys(r).filter(e=>!n.has(e)).sort().map(t=>({code:"INEFFECTIVE_CONFIG",field:`${i.section}.${t}`,message:`${e} config field "${t}" is unknown and has no effect; check the spelling or remove it.`}))}(e,t,i),n=ex(t,i.section);if(n){for(let[e,t]of Object.entries(a))if(e in n&&!t.valid(n[e])){let a=`${i.section}.${e}`;r.push({code:"INEFFECTIVE_CONFIG",field:a,message:`${a} must be ${t.expected}; the invalid value has no effect.`})}}return[...r,...function(e,t,i,a={}){if(!i)return[];let r=ex(t,i.section);if(!r)return[];let n=new Set(i.noopKeys??[]);return Object.keys(r).filter(e=>{if(!n.has(e))return!1;let t=a[e];return!t||t.valid(r[e])}).sort().map(t=>({code:"INEFFECTIVE_CONFIG",field:`${i.section}.${t}`,message:`${e} config field "${t}" is accepted for ${e.includes(":")?"compatibility":"Mermaid compatibility"} but has no effect on this renderer.`}))}(e,t,i,a)]}(e,{root:t,config:i})),n=new Set,r.sort((e,t)=>z(e.field,t.field)||z(e.message,t.message)).filter(e=>{let t=`${e.code}\0${e.field}\0${e.message}`;return!n.has(t)&&(n.add(t),!0)})}(o,[r],s??h?.config,l??h?.configDiagnostics)).map(e=>Object.freeze({...e})));return Object.freeze({output:i,mode:f,family:e,...p?{backend:p}:{},...m?{requestedBackendId:m}:{},...void 0===O?{}:{configDiagnostics:O},...n?{onConfigDiagnostic:n}:{},capabilityDecision:w,...C?{executionDecision:C}:{},...x?{textMeasurement:x}:{}})}(w,j,o,c,p.mermaidConfig,f.onConfigDiagnostic),N=L.capabilityDecision,P=Object.freeze(N.resolutions.filter(ty)),_=Object.freeze({version:N.version,accepted:P.every(e=>"required"!==e.level||"selected"===e.status),resolutions:P}),G={version:2,authoredSource:S.originalText,source:S.text,options:e1(k),appearance:j.digest,...E?{familyConfig:E}:{},...L.textMeasurement?{textMeasurement:L.textMeasurement.identity}:{},capabilities:_},Y=e3(G,S),X=e3({...G,output:o,outputOptions:s,capabilities:N},S),Q=Object.freeze({version:2,output:o,source:tt(S),renderOptions:k,appearance:j,...E?{familyConfig:E}:{},capabilityDecision:N,explicitOptionFields:C,...0===O.length?{}:{resolutionDiagnostics:O},get sharedRequestDigest(){return Y()},get requestDigest(){return X()}});return eY.set(Q,L),Q}export{eK as a,eX as b,eQ as c,eZ as d,e9 as e,to as f,ts as g,tv as h};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{b as A}from"./chunk-CSFUKSU6.js";var g=A(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.fromCodePoint=void 0,A.replaceCodePoint=B,A.decodeCodePoint=function(g){return(0,A.fromCodePoint)(B(g))};var g,I=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]);function B(A){var g;return A>=55296&&A<=57343||A>1114111?65533:null!=(g=I.get(A))?g:A}A.fromCodePoint=null!=(g=String.fromCodePoint)?g:A=>{let g="";return A>65535&&(A-=65536,g+=String.fromCharCode(A>>>10&1023|55296),A=56320|1023&A),g+=String.fromCharCode(A)}}),I=A(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.decodeBase64=function(A){let g="function"==typeof atob?atob(A):"function"==typeof Buffer.from?Buffer.from(A,"base64").toString("binary"):new Buffer(A,"base64").toString("binary"),I=-2&g.length,B=new Uint16Array(I/2);for(let A=0,C=0;A<I;A+=2){let I=g.charCodeAt(A),c=g.charCodeAt(A+1);B[C++]=I|c<<8}return B}}),B=A(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.htmlDecodeTree=void 0,A.htmlDecodeTree=(0,I().decodeBase64)("QR08ALkAAgH6AYsDNQR2BO0EPgXZBQEGLAbdBxMISQrvCmQLfQurDKQNLw4fD4YPpA+6D/IPAAAAAAAAAAAAAAAAKhBMEY8TmxUWF2EYLBkxGuAa3RsJHDscWR8YIC8jSCSIJcMl6ie3Ku8rEC0CLjoupS7kLgAIRU1hYmNmZ2xtbm9wcnN0dVQAWgBeAGUAaQBzAHcAfgCBAIQAhwCSAJoAoACsALMAbABpAGcAO4DGAMZAUAA7gCYAJkBjAHUAdABlADuAwQDBQHIiZXZlAAJhAAFpeW0AcgByAGMAO4DCAMJAEGRyAADgNdgE3XIAYQB2AGUAO4DAAMBA8CFoYZFj4SFjcgBhZAAAoFMqAAFncIsAjgBvAG4ABGFmAADgNdg43fAlbHlGdW5jdGlvbgCgYSBpAG4AZwA7gMUAxUAAAWNzpACoAHIAAOA12Jzc6SFnbgCgVCJpAGwAZABlADuAwwDDQG0AbAA7gMQAxEAABGFjZWZvcnN1xQDYANoA7QDxAPYA+QD8AAABY3LJAM8AayNzbGFzaAAAoBYidgHTANUAAKDnKmUAZAAAoAYjeQARZIABY3J0AOAA5QDrAGEidXNlAACgNSLuI291bGxpcwCgLCFhAJJjcgAA4DXYBd1wAGYAAOA12Dnd5SF2ZdhiYwDyAOoAbSJwZXEAAKBOIgAHSE9hY2RlZmhpbG9yc3UXARoBHwE6AVIBVQFiAWQBZgGCAakB6QHtAfIBYwB5ACdkUABZADuAqQCpQIABY3B5ACUBKAE1AfUhdGUGYWmg0iJ0KGFsRGlmZmVyZW50aWFsRAAAoEUhbCJleXMAAKAtIQACYWVpb0EBRAFKAU0B8iFvbgxhZABpAGwAO4DHAMdAcgBjAAhhbiJpbnQAAKAwIm8AdAAKYQABZG5ZAV0BaSJsbGEAuGB0I2VyRG90ALdg8gA5AWkAp2NyImNsZQAAAkRNUFRwAXQBeQF9AW8AdAAAoJkiaSJudXMAAKCWIuwhdXMAoJUiaSJtZXMAAKCXIm8AAAFjc4cBlAFrKndpc2VDb250b3VySW50ZWdyYWwAAKAyImUjQ3VybHkAAAFEUZwBpAFvJXVibGVRdW90ZQAAoB0gdSJvdGUAAKAZIAACbG5wdbABtgHNAdgBbwBuAGWgNyIAoHQqgAFnaXQAvAHBAcUB8iJ1ZW50AKBhIm4AdAAAoC8i7yV1ckludGVncmFsAKAuIgABZnLRAdMBAKACIe8iZHVjdACgECJuLnRlckNsb2Nrd2lzZUNvbnRvdXJJbnRlZ3JhbAAAoDMi7yFzcwCgLypjAHIAAOA12J7ccABDoNMiYQBwAACgTSKABURKU1phY2VmaW9zAAsCEgIVAhgCGwIsAjQCOQI9AnMCfwNvoEUh9CJyYWhkAKARKWMAeQACZGMAeQAFZGMAeQAPZIABZ3JzACECJQIoAuchZXIAoCEgcgAAoKEhaAB2AACg5CoAAWF5MAIzAvIhb24OYRRkbAB0oAciYQCUY3IAAOA12AfdAAFhZkECawIAAWNtRQJnAvIjaXRpY2FsAAJBREdUUAJUAl8CYwJjInV0ZQC0YG8AdAFZAloC2WJiJGxlQWN1dGUA3WJyImF2ZQBgYGkibGRlANxi7yFuZACgxCJmJWVyZW50aWFsRAAAoEYhcAR9AgAAAAAAAIECjgIAABoDZgAA4DXYO91EoagAhQKJAm8AdAAAoNwgcSJ1YWwAAKBQIuIhbGUAA0NETFJVVpkCqAK1Au8C/wIRA28AbgB0AG8AdQByAEkAbgB0AGUAZwByAGEA7ADEAW8AdAKvAgAAAACwAqhgbiNBcnJvdwAAoNMhAAFlb7kC0AJmAHQAgAFBUlQAwQLGAs0CciJyb3cAAKDQIekkZ2h0QXJyb3cAoNQhZQDlACsCbgBnAAABTFLWAugC5SFmdAABQVLcAuECciJyb3cAAKD4J+kkZ2h0QXJyb3cAoPon6SRnaHRBcnJvdwCg+SdpImdodAAAAUFU9gL7AnIicm93AACg0iFlAGUAAKCoInAAQQIGAwAAAAALA3Iicm93AACg0SFvJHduQXJyb3cAAKDVIWUlcnRpY2FsQmFyAACgJSJuAAADQUJMUlRhJAM2AzoDWgNxA3oDciJyb3cAAKGTIUJVLAMwA2EAcgAAoBMpcCNBcnJvdwAAoPUhciJldmUAEWPlIWZ00gJDAwAASwMAAFIDaSVnaHRWZWN0b3IAAKBQKWUkZVZlY3RvcgAAoF4p5SJjdG9yQqC9IWEAcgAAoFYpaSJnaHQA1AFiAwAAaQNlJGVWZWN0b3IAAKBfKeUiY3RvckKgwSFhAHIAAKBXKWUAZQBBoKQiciJyb3cAAKCnIXIAcgBvAPcAtAIAAWN0gwOHA3IA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YwAAoN8i4SFycnCgtiEAoD0pgKIqImJjZG9zACsVMBU6FT4VQRVyImNhcAAAoEgqAAFhdTQVNxVwAACgRipwAACgSipvAHQAAKCNInIAAKBFKgDgKiIA/gACYWxydksVURVuFXMVcgByAG2gtyEAoDwpeQCAAWV2dwBYFWUVaRVxAHACXxUAAAAAYxVyAGUA4wAXFXUA4wAZFWUAZQAAoM4iZSJkZ2UAAKDPImUAbgA7gKQApEBlI2Fycm93AAABbHJ7FX8V5SFmdACgtiFpImdodAAAoLchZQDkAG0VAAFjaYsVkRVvAG4AaQBuAPQAkwFuAHQAAKAxImwiY3R5AACgLSOACUFIYWJjZGVmaGlqbG9yc3R1d3oAuBW7Fb8V1RXgFegV+RUKFhUWHxZUFlcWZRbFFtsW7xb7FgUXChdyAPIAtAJhAHIAAKBlKQACZ2xyc8YVyhXOFdAV5yFlcgCgICDlIXRoAKA4IfIA9QxoAHagECAAoKMiawHZFd4VYSJyb3cAAKAPKWEA4wBfAgABYXnkFecV8iFvbg9hNGQAoUYhYW/tFfQVAAFnciEC8RVyAACgyiF0InNlcQAAoHcqgAFnbG0A/xUCFgUWO4CwALBAdABhALRjcCJ0eXYAAKCxKQABaXIOFhIW8yFodACgfykA4DXYId1hAHIAAAFschsWHRYAoMMhAKDCIYACYWVnc3YAKBauAjYWOhY+Fm0AAKHEIm9zLhY0Fm4AZABzoMQi9SFpdACgZiZhIm1tYQDdY2kAbgAAoPIiAKH3AGlvQxZRFmQAZQAAgfcAO29KFksW90BuI3RpbWVzAACgxyJuAPgAUBZjAHkAUmRjAG8CXhYAAAAAYhZyAG4AAKAeI28AcAAAoA0jgAJscHR1dwBuFnEWdRaSFp4W7CFhciRgZgAA4DXYVd0AotkCZW1wc30WhBaJFo0WcQBkoFAibwB0AACgUSJpIm51cwAAoDgi7CF1cwCgFCLxInVhcmUAoKEiYgBsAGUAYgBhAHIAdwBlAGQAZwDlANcAbgCAAWFkaAClFqoWtBZyAHIAbwD3APUMbwB3AG4AYQByAHIAbwB3APMA8xVhI3Jwb29uAAABbHK8FsAWZQBmAPQAHBZpAGcAaAD0AB4WYgHJFs8WawBhAHIAbwD3AJILbwLUFgAAAADYFnIAbgAAoB8jbwBwAACgDCOAAWNvdADhFukW7BYAAXJ55RboFgDgNdi53FVkbAAAoPYp8iFvaxFhAAFkcvMW9xZvAHQAAKDxImkA5qC/JVsSAAFhaP8WAhdyAPIANQNhAPIA1wvhIm5nbGUAoKYpAAFjaQ4XEBd5AF9k5yJyYXJyAKD/JwAJRGFjZGVmZ2xtbm9wcXJzdHV4MRc4F0YXWxcyBF4XaRd5F40XrBe0F78X2RcVGCEYLRg1GEAYAAFEbzUXgRZvAPQA+BUAAWNzPBdCF3UAdABlADuA6QDpQPQhZXIAoG4qAAJhaW95TRdQF1YXWhfyIW9uG2FyAGOgViI7gOoA6kDsIW9uAKBVIk1kbwB0ABdhAAFEcmIXZhdvAHQAAKBSIgDgNdgi3XKhmipuF3QXYQB2AGUAO4DoAOhAZKCWKm8AdAAAoJgqgKGZKmlscwCAF4UXhxfuInRlcnMAoOcjAKATIWSglSpvAHQAAKCXKoABYXBzAJMXlheiF2MAcgATYXQAeQBzogUinxcAAAAAoRdlAHQAAKAFInAAMaADIDMBqRerFwCgBCAAoAUgAAFnc7AXsRdLYXAAAKACIAABZ3C4F7sXbwBuABlhZgAA4DXYVt2AAWFscwDFF8sXzxdyAHOg1SJsAACg4yl1AHMAAKBxKmkAAKG1A2x21RfYF28AbgC1Y/VjAAJjc3V24BfoF/0XEBgAAWlv5BdWF3IAYwAAoFYiaQLuFwAAAADwF+0ADQThIW50AAFnbPUX+Rd0AHIAAKCWKuUhc3MAoJUqgAFhZWkAAxgGGAoYbABzAD1gcwB0AACgXyJ2AESgYSJEAACgeCrwImFyc2wAoOUpAAFEYRkYHRhvAHQAAKBTInIAcgAAoHEpgAFjZGkAJxgqGO0XcgAAoC8hbwD0AIwCAAFhaDEYMhi3YzuA8ADwQAABbXI5GD0YbAA7gOsA60BvAACgrCCAAWNpcABGGEgYSxhsACFgcwD0ACwEAAFlb08YVxhjAHQAYQB0AGkAbwDuABoEbgBlAG4AdABpAGEAbADlADME4Ql1GAAAgRgAAIMYiBgAAAAAoRilGAAAqhgAALsYvhjRGAAA1xgnGWwAbABpAG4AZwBkAG8AdABzAGUA8QBlF3kARGRtImFsZQAAoEAmgAFpbHIAjRiRGJ0Y7CFpZwCgA/tpApcYAAAAAJoYZwAAoAD7aQBnAACgBPsA4DXYI93sIWlnAKAB++whaWcA4GYAagCAAWFsdACvGLIYthh0AACgbSZpAGcAAKAC+24AcwAAoLElbwBmAJJh8AHCGAAAxhhmAADgNdhX3QABYWvJGMwYbADsAGsEdqDUIgCg2SphI3J0aW50AACgDSoAAWFv2hgiGQABY3PeGB8ZsQPnGP0YBRkSGRUZAAAdGbID7xjyGPQY9xj5GAAA+xg7gL0AvUAAoFMhO4C8ALxAAKBVIQCgWSEAoFshswEBGQAAAxkAoFQhAKBWIbQCCxkOGQAAAAAQGTuAvgC+QACgVyEAoFwhNQAAoFghtgEZGQAAGxkAoFohAKBdITgAAKBeIWwAAKBEIHcAbgAAoCIjYwByAADgNdi73IAIRWFiY2RlZmdpamxub3JzdHYARhlKGVoZXhlmGWkZkhmWGZkZnRmgGa0ZxhnLGc8Z4BkjGmygZyIAoIwqgAFjbXAAUBlTGVgZ9SF0ZfVhbQBhAOSgswM6FgCghipyImV2ZQAfYQABaXliGWUZcgBjAB1hM2RvAHQAIWGAoWUibHFzAMYEcBl6GfGhZSLOBAAAdhlsAGEAbgD0AN8EgKF+KmNkbACBGYQZjBljAACgqSpvAHQAb6CAKmyggioAoIQqZeDbIgD+cwAAoJQqcgAA4DXYJN3noGsirATtIWVsAKA3IWMAeQBTZIChdyJFYWoApxmpGasZAKCSKgCgpSoAoKQqAAJFYWVztBm2Gb0ZwhkAoGkicABwoIoq8iFveACgiipxoIgq8aCIKrUZaQBtAACg5yJwAGYAAOA12FjdYQB2AOUAYwIAAWNp0xnWGXIAAKAKIW0AAKFzImVs3BneGQCgjioAoJAqAIM+ADtjZGxxco0E6xn0GfgZ/BkBGgABY2nvGfEZAKCnKnIAAKB6Km8AdAAAoNci0CFhcgCglSl1ImVzdAAAoHwqgAJhZGVscwAKGvQZFhrVBCAa8AEPGgAAFBpwAHIAbwD4AFkZcgAAoHgpcQAAAWxxxAQbGmwAZQBzAPMASRlpAO0A5AQAAWVuJxouGnIjdG5lcXEAAOBpIgD+xQAsGgAFQWFiY2Vma29zeUAaQxpmGmoabRqDGocalhrCGtMacgDyAMwCAAJpbG1yShpOGlAaVBpyAHMA8ABxD2YAvWBpAGwA9AASBQABZHJYGlsaYwB5AEpkAKGUIWN3YBpkGmkAcgAAoEgpAKCtIWEAcgAAoA8h6SFyYyVhgAFhbHIAcxp7Gn8a8iF0c3WgZSZpAHQAAKBlJuwhaXAAoCYg4yFvbgCguSJyAADgNdgl3XMAAAFld4wakRphInJvdwAAoCUpYSJyb3cAAKAmKYACYW1vcHIAnxqjGqcauhq+GnIAcgAAoP8h9CFodACgOyJrAAABbHKsGrMaZSRmdGFycm93AACgqSHpJGdodGFycm93AKCqIWYAAOA12Fnd4iFhcgCgFSCAAWNsdADIGswa0BpyAADgNdi93GEAcwDoAGka8iFvaydhAAFicNca2xr1IWxsAKBDIOghZW4AoBAg4Qr2GgAA/RoAAAgbExsaGwAAIRs7GwAAAAA+G2IbmRuVG6sbAACyG80b0htjAHUAdABlADuA7QDtQAChYyBpeQEbBhtyAGMAO4DuAO5AOGQAAWN4CxsNG3kANWRjAGwAO4ChAKFAAAFmcssCFhsA4DXYJt1yAGEAdgBlADuA7ADsQIChSCFpbm8AJxsyGzYbAAFpbisbLxtuAHQAAKAMKnQAAKAtIuYhaW4AoNwpdABhAACgKSHsIWlnM2GAAWFvcABDG1sbXhuAAWNndABJG0sbWRtyACthgAFlbHAAcQVRG1UbaQBuAOUAyAVhAHIA9AByBWgAMWFmAACgtyJlAGQAtWEAoggiY2ZvdGkbbRt1G3kb4SFyZQCgBSFpAG4AdKAeImkAZQAAoN0pZABvAPQAWxsAoisiY2VscIEbhRuPG5QbYQBsAACguiIAAWdyiRuNG2UAcgDzACMQ4wCCG2EicmhrAACgFyryIW9kAKA8KgACY2dwdJ8boRukG6gbeQBRZG8AbgAvYWYAAOA12FrdYQC5Y3UAZQBzAHQAO4C/AL9AAAFjabUbuRtyAADgNdi+3G4AAKIIIkVkc3bCG8QbyBvQAwCg+SJvAHQAAKD1Inag9CIAoPMiaaBiIOwhZGUpYesB1hsAANkbYwB5AFZkbAA7gO8A70AAA2NmbW9zdeYb7hvyG/Ub+hsFHAABaXnqG+0bcgBjADVhOWRyAADgNdgn3eEhdGg3YnAAZgAA4DXYW93jAf8bAAADHHIAAOA12L/c8iFjeVhk6yFjeVRkAARhY2ZnaGpvcxUcGhwiHCYcKhwtHDAcNRzwIXBhdqC6A/BjAAFleR4cIRzkIWls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ZmdobG1vcHJzdHV3CiwNLBEsHSwnLDEsQCxLLFIsYix6LIQsjyzLLOgs7Sz/LAotcgDyAAkDYQByAACgYykAAWNyFSwbLHUAdABlADuA+gD6QPIACQ1yAOMBIywAACUseQBeZHYAZQBtYQABaXkrLDAscgBjADuA+wD7QENkgAFhYmgANyw6LD0scgDyANEO7CFhY3FhYQDyAOAOAAFpckQsSCzzIWh0AKB+KQDgNdgy3XIAYQB2AGUAO4D5APlAYQFWLF8scgAAAWxyWixcLACgvyEAoL4hbABrAACggCUAAWN0Zix2LG8CbCwAAAAAcyxyAG4AZaAcI3IAAKAcI28AcAAAoA8jcgBpAACg+CUAAWFsfiyBLGMAcgBrYTuAqACoQAABZ3CILIssbwBuAHNhZgAA4DXYZt0AA2FkaGxzdZksniynLLgsuyzFLHIAcgBvAPcACQ1vAHcAbgBhAHIAcgBvAPcA2A5hI3Jwb29uAAABbHKvLLMsZQBmAPQAWyxpAGcAaAD0AF0sdQDzAKYOaQAAocUDaGzBLMIs0mNvAG4AxWPwI2Fycm93cwCgyCGAAWNpdADRLOEs5CxvAtcsAAAAAN4scgBuAGWgHSNyAACgHSNvAHAAAKAOI24AZwBvYXIAaQAAoPklYwByAADgNdjK3IABZGlyAPMs9yz6LG8AdAAAoPAi7CFkZWlhaQBmoLUlAKC0JQABYW0DLQYtcgDyAMosbAA7gPwA/EDhIm5nbGUAoKcpgAdBQkRhY2RlZmxub3Byc3oAJy0qLTAtNC2bLZ0toS2/LcMtxy3TLdgt3C3gLfwtcgDyABADYQByAHag6CoAoOkqYQBzAOgA/gIAAW5yOC08LechcnQAoJwpgANla25wcnN0AJkpSC1NLVQtXi1iLYItYQBwAHAA4QAaHG8AdABoAGkAbgDnAKEXgAFoaXIAoSmzJFotbwBwAPQAdCVooJUh7wD4JgABaXVmLWotZwBtAOEAuygAAWJwbi14LXMjZXRuZXEAceCKIgD+AODLKgD+cyNldG5lcQBx4IsiAP4A4MwqAP4AAWhyhi2KLWUAdADhABIraSNhbmdsZQAAAWxyki2WLeUhZnQAoLIiaSJnaHQAAKCzInkAMmThIXNoAKCiIoABZWxyAKcttC24LWKiKCKuLQAAAACyLWEAcgAAoLsicQAAoFoi7CFpcACg7iIAAWJ0vC1eD2EA8gBfD3IAAOA12DPddAByAOkAlS1zAHUAAAFicM0t0C0A4IIi0iAA4IMi0iBwAGYAAOA12GfdcgBvAPAAWQt0AHIA6QCaLQABY3XkLegtcgAA4DXYy9wAAWJw7C30LW4AAAFFZXUt8S0A4IoiAP5uAAABRWV/LfktAOCLIgD+6SJnemFnAKCaKYADY2Vmb3BycwANLhAuJS4pLiMuLi40LukhcmN1YQABZGkULiEuAAFiZxguHC5hAHIAAKBfKmUAcaAnIgCgWSLlIXJwAKAYIXIAAOA12DTdcABmAADgNdho3WWgQCJhAHQA6ABqD2MAcgAA4DXYzNzjCuQRUC4AAFQuAABYLmIuAAAAAGMubS5wLnQuAAAAAIguki4AAJouJxIqEnQAcgDpAB0ScgAA4DXYNd0AAUFhWy5eLnIA8gDnAnIA8gCTB75jAAFBYWYuaS5yAPIA4AJyAPIAjAdhAPAAeh5pAHMAAKD7IoABZHB0APgReS6DLgABZmx9LoAuAOA12GnddQDzAP8RaQBtAOUABBIAAUFhiy6OLnIA8gDuAnIA8gCaBwABY3GVLgoScgAA4DXYzdwAAXB0nS6hLmwAdQDzACUScgDpACASAARhY2VmaW9zdbEuvC7ELsguzC7PLtQu2S5jAAABdXm2LrsudABlADuA/QD9QE9kAAFpecAuwy5yAGMAd2FLZG4AO4ClAKVAcgAA4DXYNt1jAHkAV2RwAGYAAOA12GrdYwByAADgNdjO3AABY23dLt8ueQBOZGwAO4D/AP9AAAVhY2RlZmhpb3N38y73Lv8uAi8MLxAvEy8YLx0vIi9jInV0ZQB6YQABYXn7Lv4u8iFvbn5hN2RvAHQAfGEAAWV0Bi8KL3QAcgDmAB8QYQC2Y3IAAOA12DfdYwB5ADZk5yJyYXJyAKDdIXAAZgAA4DXYa91jAHIAAOA12M/cAAFqbiYvKC8AoA0gagAAoAwg")}),C=A(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.xmlDecodeTree=void 0,A.xmlDecodeTree=(0,I().decodeBase64)("AAJhZ2xxBwARABMAFQBtAg0AAAAAAA8AcAAmYG8AcwAnYHQAPmB0ADxg9SFvdCJg")}),c=A(A=>{"use strict";var g,I;Object.defineProperty(A,"__esModule",{value:!0}),A.BinTrieFlags=void 0,(I=g||(A.BinTrieFlags=g={}))[I.VALUE_LENGTH=49152]="VALUE_LENGTH",I[I.FLAG13=8192]="FLAG13",I[I.BRANCH_LENGTH=8064]="BRANCH_LENGTH",I[I.JUMP_TABLE=127]="JUMP_TABLE"}),i=A(A=>{Object.defineProperty(A,"__esModule",{value:!0}),A.xmlDecodeTree=A.htmlDecodeTree=A.replaceCodePoint=A.fromCodePoint=A.decodeCodePoint=A.EntityDecoder=A.DecodingMode=void 0,A.determineBranch=Y,A.decodeHTML=function(A,g=Q.Legacy){return W(A,g)},A.decodeHTMLAttribute=function(A){return W(A,Q.Attribute)},A.decodeHTMLStrict=function(A){return W(A,Q.Strict)},A.decodeXML=function(A){return n(A,Q.Strict)};var I,i,o,e,Q,h,t=g(),d=B(),F=C(),K=c();function D(A){return A>=h.ZERO&&A<=h.NINE}(I=h||(h={}))[I.NUM=35]="NUM",I[I.SEMI=59]="SEMI",I[I.EQUALS=61]="EQUALS",I[I.ZERO=48]="ZERO",I[I.NINE=57]="NINE",I[I.LOWER_A=97]="LOWER_A",I[I.LOWER_F=102]="LOWER_F",I[I.LOWER_X=120]="LOWER_X",I[I.LOWER_Z=122]="LOWER_Z",I[I.UPPER_A=65]="UPPER_A",I[I.UPPER_F=70]="UPPER_F",I[I.UPPER_Z=90]="UPPER_Z",(i=e||(e={}))[i.EntityStart=0]="EntityStart",i[i.NumericStart=1]="NumericStart",i[i.NumericDecimal=2]="NumericDecimal",i[i.NumericHex=3]="NumericHex",i[i.NamedEntity=4]="NamedEntity",(o=Q||(A.DecodingMode=Q={}))[o.Legacy=0]="Legacy",o[o.Strict=1]="Strict",o[o.Attribute=2]="Attribute";var w=class{constructor(A,g,I){this.decodeTree=A,this.emitCodePoint=g,this.errors=I,this.state=e.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Q.Strict,this.runConsumed=0}startEntity(A){this.decodeMode=A,this.state=e.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1,this.runConsumed=0}write(A,g){switch(this.state){case e.EntityStart:return A.charCodeAt(g)===h.NUM?(this.state=e.NumericStart,this.consumed+=1,this.stateNumericStart(A,g+1)):(this.state=e.NamedEntity,this.stateNamedEntity(A,g));case e.NumericStart:return this.stateNumericStart(A,g);case e.NumericDecimal:return this.stateNumericDecimal(A,g);case e.NumericHex:return this.stateNumericHex(A,g);case e.NamedEntity:return this.stateNamedEntity(A,g)}}stateNumericStart(A,g){return g>=A.length?-1:(32|A.charCodeAt(g))===h.LOWER_X?(this.state=e.NumericHex,this.consumed+=1,this.stateNumericHex(A,g+1)):(this.state=e.NumericDecimal,this.stateNumericDecimal(A,g))}stateNumericHex(A,g){for(;g<A.length;){var I;let B=A.charCodeAt(g);if(!D(B)&&(!((I=B)>=h.UPPER_A)||!(I<=h.UPPER_F))&&(!(I>=h.LOWER_A)||!(I<=h.LOWER_F)))return this.emitNumericEntity(B,3);{let A=B<=h.NINE?B-h.ZERO:(32|B)-h.LOWER_A+10;this.result=16*this.result+A,this.consumed++,g++}}return -1}stateNumericDecimal(A,g){for(;g<A.length;){let I=A.charCodeAt(g);if(!D(I))return this.emitNumericEntity(I,2);this.result=10*this.result+(I-h.ZERO),this.consumed++,g++}return -1}emitNumericEntity(A,g){var I;if(this.consumed<=g)return null==(I=this.errors)||I.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(A===h.SEMI)this.consumed+=1;else if(this.decodeMode===Q.Strict)return 0;return this.emitCodePoint((0,t.replaceCodePoint)(this.result),this.consumed),this.errors&&(A!==h.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(A,g){let{decodeTree:I}=this,B=I[this.treeIndex],C=(B&K.BinTrieFlags.VALUE_LENGTH)>>14;for(;g<A.length;){if(0===C&&(B&K.BinTrieFlags.FLAG13)!=0){let c=(B&K.BinTrieFlags.BRANCH_LENGTH)>>7;if(0===this.runConsumed){let I=B&K.BinTrieFlags.JUMP_TABLE;if(A.charCodeAt(g)!==I)return 0===this.result?0:this.emitNotTerminatedNamedEntity();g++,this.excess++,this.runConsumed++}for(;this.runConsumed<c;){if(g>=A.length)return -1;let B=this.runConsumed-1,C=I[this.treeIndex+1+(B>>1)],c=B%2==0?255&C:C>>8&255;if(A.charCodeAt(g)!==c)return this.runConsumed=0,0===this.result?0:this.emitNotTerminatedNamedEntity();g++,this.excess++,this.runConsumed++}this.runConsumed=0,this.treeIndex+=1+(c>>1),C=((B=I[this.treeIndex])&K.BinTrieFlags.VALUE_LENGTH)>>14}if(g>=A.length)break;let c=A.charCodeAt(g);if(c===h.SEMI&&0!==C&&(B&K.BinTrieFlags.FLAG13)!=0)return this.emitNamedEntityData(this.treeIndex,C,this.consumed+this.excess);if(this.treeIndex=Y(I,B,this.treeIndex+Math.max(1,C),c),this.treeIndex<0)return 0===this.result||this.decodeMode===Q.Attribute&&(0===C||function(A){var g;return A===h.EQUALS||(g=A)>=h.UPPER_A&&g<=h.UPPER_Z||g>=h.LOWER_A&&g<=h.LOWER_Z||D(g)}(c))?0:this.emitNotTerminatedNamedEntity();if(0!=(C=((B=I[this.treeIndex])&K.BinTrieFlags.VALUE_LENGTH)>>14)){if(c===h.SEMI)return this.emitNamedEntityData(this.treeIndex,C,this.consumed+this.excess);this.decodeMode!==Q.Strict&&(B&K.BinTrieFlags.FLAG13)==0&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}g++,this.excess++}return -1}emitNotTerminatedNamedEntity(){var A;let{result:g,decodeTree:I}=this,B=(I[g]&K.BinTrieFlags.VALUE_LENGTH)>>14;return this.emitNamedEntityData(g,B,this.consumed),null==(A=this.errors)||A.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(A,g,I){let{decodeTree:B}=this;return this.emitCodePoint(1===g?B[A]&~(K.BinTrieFlags.VALUE_LENGTH|K.BinTrieFlags.FLAG13):B[A+1],I),3===g&&this.emitCodePoint(B[A+2],I),I}end(){var A;switch(this.state){case e.NamedEntity:return 0!==this.result&&(this.decodeMode!==Q.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case e.NumericDecimal:return this.emitNumericEntity(0,2);case e.NumericHex:return this.emitNumericEntity(0,3);case e.NumericStart:return null==(A=this.errors)||A.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case e.EntityStart:return 0}}};function G(A){let g="",I=new w(A,A=>g+=(0,t.fromCodePoint)(A));return function(A,B){let C=0,c=0;for(;(c=A.indexOf("&",c))>=0;){g+=A.slice(C,c),I.startEntity(B);let i=I.write(A,c+1);if(i<0){C=c+I.end();break}C=c+i,c=0===i?C+1:C}let i=g+A.slice(C);return g="",i}}function Y(A,g,I,B){let C=(g&K.BinTrieFlags.BRANCH_LENGTH)>>7,c=g&K.BinTrieFlags.JUMP_TABLE;if(0===C)return 0!==c&&B===c?I:-1;if(c){let g=B-c;return g<0||g>=C?-1:A[I+g]-1}let i=C+1>>1,o=0,e=C-1;for(;o<=e;){let g=o+e>>>1,C=A[I+(g>>1)]>>(1&g)*8&255;if(C<B)o=g+1;else{if(!(C>B))return A[I+i+g];e=g-1}}return -1}A.EntityDecoder=w;var W=G(d.htmlDecodeTree),n=G(F.xmlDecodeTree),J=g();Object.defineProperty(A,"decodeCodePoint",{enumerable:!0,get:function(){return J.decodeCodePoint}}),Object.defineProperty(A,"fromCodePoint",{enumerable:!0,get:function(){return J.fromCodePoint}}),Object.defineProperty(A,"replaceCodePoint",{enumerable:!0,get:function(){return J.replaceCodePoint}});var y=B();Object.defineProperty(A,"htmlDecodeTree",{enumerable:!0,get:function(){return y.htmlDecodeTree}});var E=C();Object.defineProperty(A,"xmlDecodeTree",{enumerable:!0,get:function(){return E.xmlDecodeTree}})});export default i();
|
|
1
|
+
import{a as A}from"./chunk-GC7IPQ5P.js";var g=A(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.fromCodePoint=void 0,A.replaceCodePoint=B,A.decodeCodePoint=function(g){return(0,A.fromCodePoint)(B(g))};var g,I=new Map([[0,65533],[128,8364],[130,8218],[131,402],[132,8222],[133,8230],[134,8224],[135,8225],[136,710],[137,8240],[138,352],[139,8249],[140,338],[142,381],[145,8216],[146,8217],[147,8220],[148,8221],[149,8226],[150,8211],[151,8212],[152,732],[153,8482],[154,353],[155,8250],[156,339],[158,382],[159,376]]);function B(A){var g;return A>=55296&&A<=57343||A>1114111?65533:null!=(g=I.get(A))?g:A}A.fromCodePoint=null!=(g=String.fromCodePoint)?g:A=>{let g="";return A>65535&&(A-=65536,g+=String.fromCharCode(A>>>10&1023|55296),A=56320|1023&A),g+=String.fromCharCode(A)}}),I=A(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.decodeBase64=function(A){let g="function"==typeof atob?atob(A):"function"==typeof Buffer.from?Buffer.from(A,"base64").toString("binary"):new Buffer(A,"base64").toString("binary"),I=-2&g.length,B=new Uint16Array(I/2);for(let A=0,C=0;A<I;A+=2){let I=g.charCodeAt(A),c=g.charCodeAt(A+1);B[C++]=I|c<<8}return B}}),B=A(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.htmlDecodeTree=void 0,A.htmlDecodeTree=(0,I().decodeBase64)("QR08ALkAAgH6AYsDNQR2BO0EPgXZBQEGLAbdBxMISQrvCmQLfQurDKQNLw4fD4YPpA+6D/IPAAAAAAAAAAAAAAAAKhBMEY8TmxUWF2EYLBkxGuAa3RsJHDscWR8YIC8jSCSIJcMl6ie3Ku8rEC0CLjoupS7kLgAIRU1hYmNmZ2xtbm9wcnN0dVQAWgBeAGUAaQBzAHcAfgCBAIQAhwCSAJoAoACsALMAbABpAGcAO4DGAMZAUAA7gCYAJkBjAHUAdABlADuAwQDBQHIiZXZlAAJhAAFpeW0AcgByAGMAO4DCAMJAEGRyAADgNdgE3XIAYQB2AGUAO4DAAMBA8CFoYZFj4SFjcgBhZAAAoFMqAAFncIsAjgBvAG4ABGFmAADgNdg43fAlbHlGdW5jdGlvbgCgYSBpAG4AZwA7gMUAxUAAAWNzpACoAHIAAOA12Jzc6SFnbgCgVCJpAGwAZABlADuAwwDDQG0AbAA7gMQAxEAABGFjZWZvcnN1xQDYANoA7QDxAPYA+QD8AAABY3LJAM8AayNzbGFzaAAAoBYidgHTANUAAKDnKmUAZAAAoAYjeQARZIABY3J0AOAA5QDrAGEidXNlAACgNSLuI291bGxpcwCgLCFhAJJjcgAA4DXYBd1wAGYAAOA12Dnd5SF2ZdhiYwDyAOoAbSJwZXEAAKBOIgAHSE9hY2RlZmhpbG9yc3UXARoBHwE6AVIBVQFiAWQBZgGCAakB6QHtAfIBYwB5ACdkUABZADuAqQCpQIABY3B5ACUBKAE1AfUhdGUGYWmg0iJ0KGFsRGlmZmVyZW50aWFsRAAAoEUhbCJleXMAAKAtIQACYWVpb0EBRAFKAU0B8iFvbgxhZABpAGwAO4DHAMdAcgBjAAhhbiJpbnQAAKAwIm8AdAAKYQABZG5ZAV0BaSJsbGEAuGB0I2VyRG90ALdg8gA5AWkAp2NyImNsZQAAAkRNUFRwAXQBeQF9AW8AdAAAoJkiaSJudXMAAKCWIuwhdXMAoJUiaSJtZXMAAKCXIm8AAAFjc4cBlAFrKndpc2VDb250b3VySW50ZWdyYWwAAKAyImUjQ3VybHkAAAFEUZwBpAFvJXVibGVRdW90ZQAAoB0gdSJvdGUAAKAZIAACbG5wdbABtgHNAdgBbwBuAGWgNyIAoHQqgAFnaXQAvAHBAcUB8iJ1ZW50AKBhIm4AdAAAoC8i7yV1ckludGVncmFsAKAuIgABZnLRAdMBAKACIe8iZHVjdACgECJuLnRlckNsb2Nrd2lzZUNvbnRvdXJJbnRlZ3JhbAAAoDMi7yFzcwCgLypjAHIAAOA12J7ccABDoNMiYQBwAACgTSKABURKU1phY2VmaW9zAAsCEgIVAhgCGwIsAjQCOQI9AnMCfwNvoEUh9CJyYWhkAKARKWMAeQACZGMAeQAFZGMAeQAPZIABZ3JzACECJQIoAuchZXIAoCEgcgAAoKEhaAB2AACg5CoAAWF5MAIzAvIhb24OYRRkbAB0oAciYQCUY3IAAOA12AfdAAFhZkECawIAAWNtRQJnAvIjaXRpY2FsAAJBREdUUAJUAl8CYwJjInV0ZQC0YG8AdAFZAloC2WJiJGxlQWN1dGUA3WJyImF2ZQBgYGkibGRlANxi7yFuZACgxCJmJWVyZW50aWFsRAAAoEYhcAR9AgAAAAAAAIECjgIAABoDZgAA4DXYO91EoagAhQKJAm8AdAAAoNwgcSJ1YWwAAKBQIuIhbGUAA0NETFJVVpkCqAK1Au8C/wIRA28AbgB0AG8AdQByAEkAbgB0AGUAZwByAGEA7ADEAW8AdAKvAgAAAACwAqhgbiNBcnJvdwAAoNMhAAFlb7kC0AJmAHQAgAFBUlQAwQLGAs0CciJyb3cAAKDQIekkZ2h0QXJyb3cAoNQhZQDlACsCbgBnAAABTFLWAugC5SFmdAABQVLcAuECciJyb3cAAKD4J+kkZ2h0QXJyb3cAoPon6SRnaHRBcnJvdwCg+SdpImdodAAAAUFU9gL7AnIicm93AACg0iFlAGUAAKCoInAAQQIGAwAAAAALA3Iicm93AACg0SFvJHduQXJyb3cAAKDVIWUlcnRpY2FsQmFyAACgJSJuAAADQUJMUlRhJAM2AzoDWgNxA3oDciJyb3cAAKGTIUJVLAMwA2EAcgAAoBMpcCNBcnJvdwAAoPUhciJldmUAEWPlIWZ00gJDAwAASwMAAFIDaSVnaHRWZWN0b3IAAKBQKWUkZVZlY3RvcgAAoF4p5SJjdG9yQqC9IWEAcgAAoFYpaSJnaHQA1AFiAwAAaQNlJGVWZWN0b3IAAKBfKeUiY3RvckKgwSFhAHIAAKBXKWUAZQBBoKQiciJyb3cAAKCnIXIAcgBvAPcAtAIAAWN0gwOHA3IAAOA12J/c8iFvaxBhAAhOVGFjZGZnbG1vcHFzdHV4owOlA6kDsAO/A8IDxgPNA9ID8gP9AwEEFAQeBCAEJQRHAEphSAA7gNAA0EBjAHUAdABlADuAyQDJQIABYWl5ALYDuQO+A/Ihb24aYXIAYwA7gMoAykAtZG8AdAAWYXIAAOA12AjdcgBhAHYAZQA7gMgAyEDlIm1lbnQAoAgiAAFhcNYD2QNjAHIAEmF0AHkAUwLhAwAAAADpA20lYWxsU3F1YXJlAACg+yVlJ3J5U21hbGxTcXVhcmUAAKCrJQABZ3D2A/kDbwBuABhhZgAA4DXYPN3zImlsb26VY3UAAAFhaQYEDgRsAFSgdSppImxkZQAAoEIi7CNpYnJpdW0AoMwhAAFjaRgEGwRyAACgMCFtAACgcyphAJdjbQBsADuAywDLQAABaXApBC0E8yF0cwCgAyLvJG5lbnRpYWxFAKBHIYACY2Zpb3MAPQQ/BEMEXQRyBHkAJGRyAADgNdgJ3WwibGVkAFMCTAQAAAAAVARtJWFsbFNxdWFyZQAAoPwlZSdyeVNtYWxsU3F1YXJlAACgqiVwA2UEAABpBAAAAABtBGYAAOA12D3dwSFsbACgACLyI2llcnRyZgCgMSFjAPIAcQQABkpUYWJjZGZnb3JzdIgEiwSOBJMElwSkBKcEqwStBLIE5QTqBGMAeQADZDuAPgA+QO0hbWFkoJMD3GNyImV2ZQAeYYABZWl5AJ0EoASjBOQhaWwiYXIAYwAcYRNkbwB0ACBhcgAA4DXYCt0AoNkicABmAADgNdg+3eUiYXRlcgADRUZHTFNUvwTIBM8E1QTZBOAEcSJ1YWwATKBlIuUhc3MAoNsidSRsbEVxdWFsAACgZyJyI2VhdGVyAACgoirlIXNzAKB3IuwkYW50RXF1YWwAoH4qaSJsZGUAAKBzImMAcgAA4DXYotwAoGsiAARBYWNmaW9zdfkE/QQFBQgFCwUTBSIFKwVSIkRjeQAqZAABY3QBBQQFZQBrAMdiXmDpIXJjJGFyAACgDCFsJWJlcnRTcGFjZQAAoAsh8AEYBQAAGwVmAACgDSHpJXpvbnRhbExpbmUAoAAlAAFjdCYFKAXyABIF8iFvayZhbQBwAEQBMQU5BW8AdwBuAEgAdQBtAPAAAAFxInVhbAAAoE8iAAdFSk9hY2RmZ21ub3N0dVMFVgVZBVwFYwVtBXAFcwV6BZAFtgXFBckFzQVjAHkAFWTsIWlnMmFjAHkAAWRjAHUAdABlADuAzQDNQAABaXlnBWwFcgBjADuAzgDOQBhkbwB0ADBhcgAAoBEhcgBhAHYAZQA7gMwAzEAAoREhYXB/BYsFAAFjZ4MFhQVyACphaSNuYXJ5SQAAoEghbABpAGUA8wD6AvQBlQUAAKUFZaAsIgABZ3KaBZ4F8iFhbACgKyLzI2VjdGlvbgCgwiJpI3NpYmxlAAABQ1SsBbEFbyJtbWEAAKBjIGkibWVzAACgYiCAAWdwdAC8Bb8FwwVvAG4ALmFmAADgNdhA3WEAmWNjAHIAAKAQIWkibGRlAChh6wHSBQAA1QVjAHkABmRsADuAzwDPQIACY2Zvc3UA4QXpBe0F8gX9BQABaXnlBegFcgBjADRhGWRyAADgNdgN3XAAZgAA4DXYQd3jAfcFAAD7BXIAAOA12KXc8iFjeQhk6yFjeQRkgANISmFjZm9zAAwGDwYSBhUGHQYhBiYGYwB5ACVkYwB5AAxk8CFwYZpjAAFleRkGHAbkIWlsNmEaZHIAAOA12A7dcABmAADgNdhC3WMAcgAA4DXYptyABUpUYWNlZmxtb3N0AD0GQAZDBl4GawZkB2gHcAd0B80H2gdjAHkACWQ7gDwAPECAAmNtbnByAEwGTwZSBlUGWwb1IXRlOWHiIWRhm2NnAACg6ifsI2FjZXRyZgCgEiFyAACgniGAAWFleQBkBmcGagbyIW9uPWHkIWlsO2EbZAABZnNvBjQHdAAABUFDREZSVFVWYXKABp4GpAbGBssG3AYDByEHwQIqBwABbnKEBowGZyVsZUJyYWNrZXQAAKDoJ/Ihb3cAoZAhQlKTBpcGYQByAACg5CHpJGdodEFycm93AKDGIWUjaWxpbmcAAKAII28A9QGqBgAAsgZiJWxlQnJhY2tldAAAoOYnbgDUAbcGAAC+BmUkZVZlY3RvcgAAoGEp5SJjdG9yQqDDIWEAcgAAoFkpbCJvb3IAAKAKI2kiZ2h0AAABQVbSBtcGciJyb3cAAKCUIeUiY3RvcgCgTikAAWVy4AbwBmUAAKGjIkFW5gbrBnIicm93AACgpCHlImN0b3IAoFopaSNhbmdsZQBCorIi+wYAAAAA/wZhAHIAAKDPKXEidWFsAACgtCJwAIABRFRWAAoHEQcYB+8kd25WZWN0b3IAoFEpZSRlVmVjdG9yAACgYCnlImN0b3JCoL8hYQByAACgWCnlImN0b3JCoLwhYQByAACgUilpAGcAaAB0AGEAcgByAG8A9wDMAnMAAANFRkdMU1Q/B0cHTgdUB1gHXwfxJXVhbEdyZWF0ZXIAoNoidSRsbEVxdWFsAACgZiJyI2VhdGVyAACgdiLlIXNzAKChKuwkYW50RXF1YWwAoH0qaSJsZGUAAKByInIAAOA12A/dZaDYIuYjdGFycm93AKDaIWkiZG90AD9hgAFucHcAege1B7kHZwAAAkxSbHKCB5QHmwerB+UhZnQAAUFSiAeNB3Iicm93AACg9SfpJGdodEFycm93AKD3J+kkZ2h0QXJyb3cAoPYn5SFmdAABYXLcAqEHaQBnAGgAdABhAHIAcgBvAPcA5wJpAGcAaAB0AGEAcgByAG8A9wDuAmYAAOA12EPdZQByAAABTFK/B8YHZSRmdEFycm93AACgmSHpJGdodEFycm93AKCYIYABY2h0ANMH1QfXB/IAWgYAoLAh8iFva0FhAKBqIgAEYWNlZmlvc3XpB+wH7gf/BwMICQgOCBEIcAAAoAUpeQAcZAABZGzyB/kHaSR1bVNwYWNlAACgXyBsI2ludHJmAACgMyFyAADgNdgQ3e4jdXNQbHVzAKATInAAZgAA4DXYRN1jAPIA/gecY4AESmFjZWZvc3R1ACEIJAgoCDUIgQiFCDsKQApHCmMAeQAKZGMidXRlAENhgAFhZXkALggxCDQI8iFvbkdh5CFpbEVhHWSAAWdzdwA7CGEIfQjhInRpdmWAAU1UVgBECEwIWQhlJWRpdW1TcGFjZQAAoAsgaABpAAABY25SCFMIawBTAHAAYQBjAOUASwhlAHIAeQBUAGgAaQDuAFQI9CFlZAABR0xnCHUIcgBlAGEAdABlAHIARwByAGUAYQB0AGUA8gDrBGUAcwBzAEwAZQBzAPMA2wdMImluZQAKYHIAAOA12BHdAAJCbnB0jAiRCJkInAhyImVhawAAoGAgwiZyZWFraW5nU3BhY2WgYGYAAKAVIUOq7CqzCMIIzQgAAOcIGwkAAAAAAAAtCQAAbwkAAIcJAACdCcAJGQoAADQKAAFvdbYIvAjuI2dydWVudACgYiJwIkNhcAAAoG0ibyh1YmxlVmVydGljYWxCYXIAAKAmIoABbHF4ANII1wjhCOUibWVudACgCSL1IWFsVKBgImkibGRlAADgQiI4A2kic3RzAACgBCJyI2VhdGVyAACjbyJFRkdMU1T1CPoIAgkJCQ0JFQlxInVhbAAAoHEidSRsbEVxdWFsAADgZyI4A3IjZWF0ZXIAAOBrIjgD5SFzcwCgeSLsJGFudEVxdWFsAOB+KjgDaSJsZGUAAKB1IvUhbXBEASAJJwnvI3duSHVtcADgTiI4A3EidWFsAADgTyI4A2UAAAFmczEJRgn0JFRyaWFuZ2xlQqLqIj0JAAAAAEIJYQByAADgzyk4A3EidWFsAACg7CJzAICibiJFR0xTVABRCVYJXAlhCWkJcSJ1YWwAAKBwInIjZWF0ZXIAAKB4IuUhc3MA4GoiOAPsJGFudEVxdWFsAOB9KjgDaSJsZGUAAKB0IuUic3RlZAABR0x1CX8J8iZlYXRlckdyZWF0ZXIA4KIqOAPlI3NzTGVzcwDgoSo4A/IjZWNlZGVzAKGAIkVTjwmVCXEidWFsAADgryo4A+wkYW50RXF1YWwAoOAiAAFlaaAJqQl2JmVyc2VFbGVtZW50AACgDCLnJWh0VHJpYW5nbGVCousitgkAAAAAuwlhAHIAAODQKTgDcSJ1YWwAAKDtIgABcXXDCeAJdSNhcmVTdQAAAWJwywnVCfMhZXRF4I8iOANxInVhbAAAoOIi5SJyc2V0ReCQIjgDcSJ1YWwAAKDjIoABYmNwAOYJ8AkNCvMhZXRF4IIi0iBxInVhbAAAoIgi4yJlZWRzgKGBIkVTVAD6CQAKBwpxInVhbAAA4LAqOAPsJGFudEVxdWFsAKDhImkibGRlAADgfyI4A+UicnNldEXggyLSIHEidWFsAACgiSJpImxkZQCAoUEiRUZUACIKJwouCnEidWFsAACgRCJ1JGxsRXF1YWwAAKBHImkibGRlAACgSSJlJXJ0aWNhbEJhcgAAoCQiYwByAADgNdip3GkAbABkAGUAO4DRANFAnWMAB0VhY2RmZ21vcHJzdHV2XgphCmgKcgp2CnoKgQqRCpYKqwqtCrsKyArNCuwhaWdSYWMAdQB0AGUAO4DTANNAAAFpeWwKcQpyAGMAO4DUANRAHmRiImxhYwBQYXIAAOA12BLdcgBhAHYAZQA7gNIA0kCAAWFlaQCHCooKjQpjAHIATGFnAGEAqWNjInJvbgCfY3AAZgAA4DXYRt3lI25DdXJseQABRFGeCqYKbyV1YmxlUXVvdGUAAKAcIHUib3RlAACgGCAAoFQqAAFjbLEKtQpyAADgNdiq3GEAcwBoADuA2ADYQGkAbAHACsUKZABlADuA1QDVQGUAcwAAoDcqbQBsADuA1gDWQGUAcgAAAUJQ0wrmCgABYXLXCtoKcgAAoD4gYQBjAAABZWvgCuIKAKDeI2UAdAAAoLQjYSVyZW50aGVzaXMAAKDcI4AEYWNmaGlsb3JzAP0KAwsFCwkLCwsMCxELIwtaC3IjdGlhbEQAAKACInkAH2RyAADgNdgT3WkApmOgY/Ujc01pbnVzsWAAAWlwFQsgC24AYwBhAHIAZQBwAGwAYQBuAOUACgVmAACgGSGAobsqZWlvACoLRQtJC+MiZWRlc4CheiJFU1QANAs5C0ALcSJ1YWwAAKCvKuwkYW50RXF1YWwAoHwiaSJsZGUAAKB+Im0AZQAAoDMgAAFkcE0LUQv1IWN0AKAPIm8jcnRpb24AYaA3ImwAAKAdIgABY2leC2ILcgAA4DXYq9yoYwACVWZvc2oLbwtzC3cLTwBUADuAIgAiQHIAAOA12BTdcABmAACgGiFjAHIAAOA12KzcAAZCRWFjZWZoaW9yc3WPC5MLlwupC7YL2AvbC90LhQyTDJoMowzhIXJyAKAQKUcAO4CuAK5AgAFjbnIAnQugC6ML9SF0ZVRhZwAAoOsncgB0oKAhbAAAoBYpgAFhZXkArwuyC7UL8iFvblhh5CFpbFZhIGR2oBwhZSJyc2UAAAFFVb8LzwsAAWxxwwvIC+UibWVudACgCyL1JGlsaWJyaXVtAKDLIXAmRXF1aWxpYnJpdW0AAKBvKXIAAKAcIW8AoWPnIWh0AARBQ0RGVFVWYewLCgwQDDIMNwxeDHwM9gIAAW5y8Av4C2clbGVCcmFja2V0AACg6SfyIW93AKGSIUJM/wsDDGEAcgAAoOUhZSRmdEFycm93AACgxCFlI2lsaW5nAACgCSNvAPUBFgwAAB4MYiVsZUJyYWNrZXQAAKDnJ24A1AEjDAAAKgxlJGVWZWN0b3IAAKBdKeUiY3RvckKgwiFhAHIAAKBVKWwib29yAACgCyMAAWVyOwxLDGUAAKGiIkFWQQxGDHIicm93AACgpiHlImN0b3IAoFspaSNhbmdsZQBCorMiVgwAAAAAWgxhAHIAAKDQKXEidWFsAACgtSJwAIABRFRWAGUMbAxzDO8kd25WZWN0b3IAoE8pZSRlVmVjdG9yAACgXCnlImN0b3JCoL4hYQByAACgVCnlImN0b3JCoMAhYQByAACgUykAAXB1iQyMDGYAAKAdIe4kZEltcGxpZXMAoHAp6SRnaHRhcnJvdwCg2yEAAWNongyhDHIAAKAbIQCgsSHsJGVEZWxheWVkAKD0KYAGSE9hY2ZoaW1vcXN0dQC/DMgMzAzQDOIM5gwKDQ0NFA0ZDU8NVA1YDQABQ2PDDMYMyCFjeSlkeQAoZEYiVGN5ACxkYyJ1dGUAWmEAorwqYWVpedgM2wzeDOEM8iFvbmBh5CFpbF5hcgBjAFxhIWRyAADgNdgW3e8hcnQAAkRMUlXvDPYM/QwEDW8kd25BcnJvdwAAoJMhZSRmdEFycm93AACgkCHpJGdodEFycm93AKCSIXAjQXJyb3cAAKCRIechbWGjY+EkbGxDaXJjbGUAoBgicABmAADgNdhK3XICHw0AAAAAIg10AACgGiLhIXJlgKGhJUlTVQAqDTINSg3uJXRlcnNlY3Rpb24AoJMidQAAAWJwNw1ADfMhZXRFoI8icSJ1YWwAAKCRIuUicnNldEWgkCJxInVhbAAAoJIibiJpb24AAKCUImMAcgAA4DXYrtxhAHIAAKDGIgACYmNtcF8Nag2ODZANc6DQImUAdABFoNAicSJ1YWwAAKCGIgABY2huDYkNZSJlZHMAgKF7IkVTVAB4DX0NhA1xInVhbAAAoLAq7CRhbnRFcXVhbACgfSJpImxkZQAAoH8iVABoAGEA9ADHCwCgESIAodEiZXOVDZ8NciJzZXQARaCDInEidWFsAACghyJlAHQAAKDRIoAFSFJTYWNmaGlvcnMAtQ27Db8NyA3ODdsN3w3+DRgOHQ4jDk8AUgBOADuA3gDeQMEhREUAoCIhAAFIY8MNxg1jAHkAC2R5ACZkAAFidcwNzQ0JYKRjgAFhZXkA1A3XDdoN8iFvbmRh5CFpbGJhImRyAADgNdgX3QABZWnjDe4N8gHoDQAA7Q3lImZvcmUAoDQiYQCYYwABY27yDfkNayNTcGFjZQAA4F8gCiDTInBhY2UAoAkg7CFkZYChPCJFRlQABw4MDhMOcSJ1YWwAAKBDInUkbGxFcXVhbAAAoEUiaSJsZGUAAKBIInAAZgAA4DXYS93pI3BsZURvdACg2yAAAWN0Jw4rDnIAAOA12K/c8iFva2Zh4QpFDlYOYA5qDgAAbg5yDgAAAAAAAAAAAAB5DnwOqA6zDgAADg8RDxYPGg8AAWNySA5ODnUAdABlADuA2gDaQHIAb6CfIeMhaXIAoEkpcgDjAVsOAABdDnkADmR2AGUAbGEAAWl5Yw5oDnIAYwA7gNsA20AjZGIibGFjAHBhcgAA4DXYGN1yAGEAdgBlADuA2QDZQOEhY3JqYQABZGl/Dp8OZQByAAABQlCFDpcOAAFhcokOiw5yAF9gYQBjAAABZWuRDpMOAKDfI2UAdAAAoLUjYSVyZW50aGVzaXMAAKDdI28AbgBQoMMi7CF1cwCgjiIAAWdwqw6uDm8AbgByYWYAAOA12EzdAARBREVUYWRwc78O0g7ZDuEOBQPqDvMOBw9yInJvdwDCoZEhyA4AAMwOYQByAACgEilvJHduQXJyb3cAAKDFIW8kd25BcnJvdwAAoJUhcSV1aWxpYnJpdW0AAKBuKWUAZQBBoKUiciJyb3cAAKClIW8AdwBuAGEAcgByAG8A9wAQA2UAcgAAAUxS+Q4AD2UkZnRBcnJvdwAAoJYh6SRnaHRBcnJvdwCglyFpAGyg0gNvAG4ApWPpIW5nbmFjAHIAAOA12LDcaSJsZGUAaGFtAGwAO4DcANxAgAREYmNkZWZvc3YALQ8xDzUPNw89D3IPdg97D4AP4SFzaACgqyJhAHIAAKDrKnkAEmThIXNobKCpIgCg5ioAAWVyQQ9DDwCgwSKAAWJ0eQBJD00Paw9hAHIAAKAWIGmgFiDjIWFsAAJCTFNUWA9cD18PZg9hAHIAAKAjIukhbmV8YGUkcGFyYXRvcgAAoFgnaSJsZGUAAKBAItQkaGluU3BhY2UAoAogcgAA4DXYGd1wAGYAAOA12E3dYwByAADgNdix3GQiYXNoAACgqiKAAmNlZm9zAI4PkQ+VD5kPng/pIXJjdGHkIWdlAKDAInIAAOA12BrdcABmAADgNdhO3WMAcgAA4DXYstwAAmZpb3OqD64Prw+0D3IAAOA12BvdnmNwAGYAAOA12E/dYwByAADgNdiz3IAEQUlVYWNmb3N1AMgPyw/OD9EP2A/gD+QP6Q/uD2MAeQAvZGMAeQAHZGMAeQAuZGMAdQB0AGUAO4DdAN1AAAFpedwP3w9yAGMAdmErZHIAAOA12BzdcABmAADgNdhQ3WMAcgAA4DXYtNxtAGwAeGEABEhhY2RlZm9z/g8BEAUQDRAQEB0QIBAkEGMAeQAWZGMidXRlAHlhAAFheQkQDBDyIW9ufWEXZG8AdAB7YfIBFRAAABwQbwBXAGkAZAB0AOgAVAhhAJZjcgAAoCghcABmAACgJCFjAHIAAOA12LXc4QtCEEkQTRAAAGcQbRByEAAAAAAAAAAAeRCKEJcQ8hD9EAAAGxEhETIROREAAD4RYwB1AHQAZQA7gOEA4UByImV2ZQADYYCiPiJFZGl1eQBWEFkQWxBgEGUQAOA+IjMDAKA/InIAYwA7gOIA4kB0AGUAO4C0ALRAMGRsAGkAZwA7gOYA5kByoGEgAOA12B7dcgBhAHYAZQA7gOAA4EAAAWVwfBCGEAABZnCAEIQQ8yF5bQCgNSHoAIMQaABhALFjAAFhcI0QWwAAAWNskRCTEHIAAWFnAACgPypkApwQAAAAALEQAKInImFkc3ajEKcQqRCuEG4AZAAAoFUqAKBcKmwib3BlAACgWCoAoFoqAKMgImVsbXJzersQvRDAEN0Q5RDtEACgpCllAACgICJzAGQAYaAhImEEzhDQENIQ1BDWENgQ2hDcEACgqCkAoKkpAKCqKQCgqykAoKwpAKCtKQCgrikAoK8pdAB2oB8iYgBkoL4iAKCdKQABcHTpEOwQaAAAoCIixWDhIXJyAKB8IwABZ3D1EPgQbwBuAAVhZgAA4DXYUt0Ao0giRWFlaW9wBxEJEQ0RDxESERQRAKBwKuMhaXIAoG8qAKBKImQAAKBLInMAJ2DyIW94ZaBIIvEADhFpAG4AZwA7gOUA5UCAAWN0eQAmESoRKxFyAADgNdi23CpgbQBwAGWgSCLxAPgBaQBsAGQAZQA7gOMA40BtAGwAO4DkAORAAAFjaUERRxFvAG4AaQBuAPQA6AFuAHQAAKARKgAITmFiY2RlZmlrbG5vcHJzdWQRaBGXEZ8RpxGrEdIR1hErEjASexKKEn0RThNbE3oTbwB0AACg7SoAAWNybBGJEWsAAAJjZXBzdBF4EX0RghHvIW5nAKBMInAjc2lsb24A9mNyImltZQAAoDUgaQBtAGWgPSJxAACgzSJ2AY0RkRFlAGUAAKC9ImUAZABnoAUjZQAAoAUjcgBrAHSgtSPiIXJrAKC2IwABb3mjEaYRbgDnAHcRMWTxIXVvAKAeIIACY21wcnQAtBG5Eb4RwRHFEeEhdXPloDUi5ABwInR5dgAAoLApcwDpAH0RbgBvAPUA6gCAAWFodwDLEcwRzhGyYwCgNiHlIWVuAKBsInIAAOA12B/dZwCAA2Nvc3R1dncA4xHyEQUSEhIhEiYSKRKAAWFpdQDpEesR7xHwAKMFcgBjAACg7yVwAACgwyKAAWRwdAD4EfwRABJvAHQAAKAAKuwhdXMAoAEqaSJtZXMAAKACKnECCxIAAAAADxLjIXVwAKAGKmEAcgAAoAUm8iNpYW5nbGUAAWR1GhIeEu8hd24AoL0lcAAAoLMlcCJsdXMAAKAEKmUA5QBCD+UAkg9hInJvdwAAoA0pgAFha28ANhJoEncSAAFjbjoSZRJrAIABbHN0AEESRxJNEm8jemVuZ2UAAKDrKXEAdQBhAHIA5QBcBPIjaWFuZ2xlgKG0JWRscgBYElwSYBLvIXduAKC+JeUhZnQAoMIlaSJnaHQAAKC4JWsAAKAjJLEBbRIAAHUSsgFxEgAAcxIAoJIlAKCRJTQAAKCTJWMAawAAoIglAAFlb38ShxJx4D0A5SD1IWl2AOBhIuUgdAAAoBAjAAJwdHd4kRKVEpsSnxJmAADgNdhT3XSgpSJvAG0AAKClIvQhaWUAoMgiAAZESFVWYmRobXB0dXayEsES0RLgEvcS+xIKExoTHxMjEygTNxMAAkxSbHK5ErsSvRK/EgCgVyUAoFQlAKBWJQCgUyUAolAlRFVkdckSyxLNEs8SAKBmJQCgaSUAoGQlAKBnJQACTFJsctgS2hLcEt4SAKBdJQCgWiUAoFwlAKBZJQCjUSVITFJobHLrEu0S7xLxEvMS9RIAoGwlAKBjJQCgYCUAoGslAKBiJQCgXyVvAHgAAKDJKQACTFJscgITBBMGEwgTAKBVJQCgUiUAoBAlAKAMJQCiACVEVWR1EhMUExYTGBMAoGUlAKBoJQCgLCUAoDQlaSJudXMAAKCfIuwhdXMAoJ4iaSJtZXMAAKCgIgACTFJsci8TMRMzEzUTAKBbJQCgWCUAoBglAKAUJQCjAiVITFJobHJCE0QTRhNIE0oTTBMAoGolAKBhJQCgXiUAoDwlAKAkJQCgHCUAAWV2UhNVE3YA5QD5AGIAYQByADuApgCmQAACY2Vpb2ITZhNqE24TcgAA4DXYt9xtAGkAAKBPIG0A5aA9IogRbAAAoVwAYmh0E3YTAKDFKfMhdWIAoMgnbAF+E4QTbABloCIgdAAAoCIgcAAAoU4iRWWJE4sTAKCuKvGgTyI8BeEMqRMAAN8TABQDFB8UAAAjFDQUAAAAAIUUAAAAAI0UAAAAANcU4xT3FPsUAACIFQAAlhWAAWNwcgCuE7ET1RP1IXRlB2GAoikiYWJjZHMAuxO/E8QTzhPSE24AZAAAoEQqciJjdXAAAKBJKgABYXXIE8sTcAAAoEsqcAAAoEcqbwB0AACgQCoA4CkiAP4AAWVv2RPcE3QAAKBBIO4ABAUAAmFlaXXlE+8T9RP4E/AB6hMAAO0TcwAAoE0qbwBuAA1hZABpAGwAO4DnAOdAcgBjAAlhcABzAHOgTCptAACgUCpvAHQAC2GAAWRtbgAIFA0UEhRpAGwAO4C4ALhAcCJ0eXYAAKCyKXQAAIGiADtlGBQZFKJAcgBkAG8A9ABiAXIAAOA12CDdgAFjZWkAKBQqFDIUeQBHZGMAawBtoBMn4SFyawCgEyfHY3IAAKPLJUVjZWZtcz8UQRRHFHcUfBSAFACgwykAocYCZWxGFEkUcQAAoFciZQBhAlAUAAAAAGAUciJyb3cAAAFsclYUWhTlIWZ0AKC6IWkiZ2h0AACguyGAAlJTYWNkAGgUaRRrFG8UcxSuYACgyCRzAHQAAKCbIukhcmMAoJoi4SFzaACgnSJuImludAAAoBAqaQBkAACg7yrjIWlyAKDCKfUhYnN1oGMmaQB0AACgYybsApMUmhS2FAAAwxRvAG4AZaA6APGgVCKrAG0CnxQAAAAAoxRhAHSgLABAYAChASJmbKcUqRTuABMNZQAAAW14rhSyFOUhbnQAoAEiZQDzANIB5wG6FAAAwBRkoEUibwB0AACgbSpuAPQAzAGAAWZyeQDIFMsUzhQA4DXYVN1vAOQA1wEAgakAO3MeAdMUcgAAoBchAAFhb9oU3hRyAHIAAKC1IXMAcwAAoBcnAAFjdeYU6hRyAADgNdi43AABYnDuFPIUZaDPKgCg0SploNAqAKDSKuQhb3QAoO8igANkZWxwcnZ3AAYVEBUbFSEVRBVlFYQV4SFycgABbHIMFQ4VAKA4KQCgNSlwAhYVAAAAABkVcgAAoN4iYwAAoN8i4SFycnCgtiEAoD0pgKIqImJjZG9zACsVMBU6FT4VQRVyImNhcAAAoEgqAAFhdTQVNxVwAACgRipwAACgSipvAHQAAKCNInIAAKBFKgDgKiIA/gACYWxydksVURVuFXMVcgByAG2gtyEAoDwpeQCAAWV2dwBYFWUVaRVxAHACXxUAAAAAYxVyAGUA4wAXFXUA4wAZFWUAZQAAoM4iZSJkZ2UAAKDPImUAbgA7gKQApEBlI2Fycm93AAABbHJ7FX8V5SFmdACgtiFpImdodAAAoLchZQDkAG0VAAFjaYsVkRVvAG4AaQBuAPQAkwFuAHQAAKAxImwiY3R5AACgLSOACUFIYWJjZGVmaGlqbG9yc3R1d3oAuBW7Fb8V1RXgFegV+RUKFhUWHxZUFlcWZRbFFtsW7xb7FgUXChdyAPIAtAJhAHIAAKBlKQACZ2xyc8YVyhXOFdAV5yFlcgCgICDlIXRoAKA4IfIA9QxoAHagECAAoKMiawHZFd4VYSJyb3cAAKAPKWEA4wBfAgABYXnkFecV8iFvbg9hNGQAoUYhYW/tFfQVAAFnciEC8RVyAACgyiF0InNlcQAAoHcqgAFnbG0A/xUCFgUWO4CwALBAdABhALRjcCJ0eXYAAKCxKQABaXIOFhIW8yFodACgfykA4DXYId1hAHIAAAFschsWHRYAoMMhAKDCIYACYWVnc3YAKBauAjYWOhY+Fm0AAKHEIm9zLhY0Fm4AZABzoMQi9SFpdACgZiZhIm1tYQDdY2kAbgAAoPIiAKH3AGlvQxZRFmQAZQAAgfcAO29KFksW90BuI3RpbWVzAACgxyJuAPgAUBZjAHkAUmRjAG8CXhYAAAAAYhZyAG4AAKAeI28AcAAAoA0jgAJscHR1dwBuFnEWdRaSFp4W7CFhciRgZgAA4DXYVd0AotkCZW1wc30WhBaJFo0WcQBkoFAibwB0AACgUSJpIm51cwAAoDgi7CF1cwCgFCLxInVhcmUAoKEiYgBsAGUAYgBhAHIAdwBlAGQAZwDlANcAbgCAAWFkaAClFqoWtBZyAHIAbwD3APUMbwB3AG4AYQByAHIAbwB3APMA8xVhI3Jwb29uAAABbHK8FsAWZQBmAPQAHBZpAGcAaAD0AB4WYgHJFs8WawBhAHIAbwD3AJILbwLUFgAAAADYFnIAbgAAoB8jbwBwAACgDCOAAWNvdADhFukW7BYAAXJ55RboFgDgNdi53FVkbAAAoPYp8iFvaxFhAAFkcvMW9xZvAHQAAKDxImkA5qC/JVsSAAFhaP8WAhdyAPIANQNhAPIA1wvhIm5nbGUAoKYpAAFjaQ4XEBd5AF9k5yJyYXJyAKD/JwAJRGFjZGVmZ2xtbm9wcXJzdHV4MRc4F0YXWxcyBF4XaRd5F40XrBe0F78X2RcVGCEYLRg1GEAYAAFEbzUXgRZvAPQA+BUAAWNzPBdCF3UAdABlADuA6QDpQPQhZXIAoG4qAAJhaW95TRdQF1YXWhfyIW9uG2FyAGOgViI7gOoA6kDsIW9uAKBVIk1kbwB0ABdhAAFEcmIXZhdvAHQAAKBSIgDgNdgi3XKhmipuF3QXYQB2AGUAO4DoAOhAZKCWKm8AdAAAoJgqgKGZKmlscwCAF4UXhxfuInRlcnMAoOcjAKATIWSglSpvAHQAAKCXKoABYXBzAJMXlheiF2MAcgATYXQAeQBzogUinxcAAAAAoRdlAHQAAKAFInAAMaADIDMBqRerFwCgBCAAoAUgAAFnc7AXsRdLYXAAAKACIAABZ3C4F7sXbwBuABlhZgAA4DXYVt2AAWFscwDFF8sXzxdyAHOg1SJsAACg4yl1AHMAAKBxKmkAAKG1A2x21RfYF28AbgC1Y/VjAAJjc3V24BfoF/0XEBgAAWlv5BdWF3IAYwAAoFYiaQLuFwAAAADwF+0ADQThIW50AAFnbPUX+Rd0AHIAAKCWKuUhc3MAoJUqgAFhZWkAAxgGGAoYbABzAD1gcwB0AACgXyJ2AESgYSJEAACgeCrwImFyc2wAoOUpAAFEYRkYHRhvAHQAAKBTInIAcgAAoHEpgAFjZGkAJxgqGO0XcgAAoC8hbwD0AIwCAAFhaDEYMhi3YzuA8ADwQAABbXI5GD0YbAA7gOsA60BvAACgrCCAAWNpcABGGEgYSxhsACFgcwD0ACwEAAFlb08YVxhjAHQAYQB0AGkAbwDuABoEbgBlAG4AdABpAGEAbADlADME4Ql1GAAAgRgAAIMYiBgAAAAAoRilGAAAqhgAALsYvhjRGAAA1xgnGWwAbABpAG4AZwBkAG8AdABzAGUA8QBlF3kARGRtImFsZQAAoEAmgAFpbHIAjRiRGJ0Y7CFpZwCgA/tpApcYAAAAAJoYZwAAoAD7aQBnAACgBPsA4DXYI93sIWlnAKAB++whaWcA4GYAagCAAWFsdACvGLIYthh0AACgbSZpAGcAAKAC+24AcwAAoLElbwBmAJJh8AHCGAAAxhhmAADgNdhX3QABYWvJGMwYbADsAGsEdqDUIgCg2SphI3J0aW50AACgDSoAAWFv2hgiGQABY3PeGB8ZsQPnGP0YBRkSGRUZAAAdGbID7xjyGPQY9xj5GAAA+xg7gL0AvUAAoFMhO4C8ALxAAKBVIQCgWSEAoFshswEBGQAAAxkAoFQhAKBWIbQCCxkOGQAAAAAQGTuAvgC+QACgVyEAoFwhNQAAoFghtgEZGQAAGxkAoFohAKBdITgAAKBeIWwAAKBEIHcAbgAAoCIjYwByAADgNdi73IAIRWFiY2RlZmdpamxub3JzdHYARhlKGVoZXhlmGWkZkhmWGZkZnRmgGa0ZxhnLGc8Z4BkjGmygZyIAoIwqgAFjbXAAUBlTGVgZ9SF0ZfVhbQBhAOSgswM6FgCghipyImV2ZQAfYQABaXliGWUZcgBjAB1hM2RvAHQAIWGAoWUibHFzAMYEcBl6GfGhZSLOBAAAdhlsAGEAbgD0AN8EgKF+KmNkbACBGYQZjBljAACgqSpvAHQAb6CAKmyggioAoIQqZeDbIgD+cwAAoJQqcgAA4DXYJN3noGsirATtIWVsAKA3IWMAeQBTZIChdyJFYWoApxmpGasZAKCSKgCgpSoAoKQqAAJFYWVztBm2Gb0ZwhkAoGkicABwoIoq8iFveACgiipxoIgq8aCIKrUZaQBtAACg5yJwAGYAAOA12FjdYQB2AOUAYwIAAWNp0xnWGXIAAKAKIW0AAKFzImVs3BneGQCgjioAoJAqAIM+ADtjZGxxco0E6xn0GfgZ/BkBGgABY2nvGfEZAKCnKnIAAKB6Km8AdAAAoNci0CFhcgCglSl1ImVzdAAAoHwqgAJhZGVscwAKGvQZFhrVBCAa8AEPGgAAFBpwAHIAbwD4AFkZcgAAoHgpcQAAAWxxxAQbGmwAZQBzAPMASRlpAO0A5AQAAWVuJxouGnIjdG5lcXEAAOBpIgD+xQAsGgAFQWFiY2Vma29zeUAaQxpmGmoabRqDGocalhrCGtMacgDyAMwCAAJpbG1yShpOGlAaVBpyAHMA8ABxD2YAvWBpAGwA9AASBQABZHJYGlsaYwB5AEpkAKGUIWN3YBpkGmkAcgAAoEgpAKCtIWEAcgAAoA8h6SFyYyVhgAFhbHIAcxp7Gn8a8iF0c3WgZSZpAHQAAKBlJuwhaXAAoCYg4yFvbgCguSJyAADgNdgl3XMAAAFld4wakRphInJvdwAAoCUpYSJyb3cAAKAmKYACYW1vcHIAnxqjGqcauhq+GnIAcgAAoP8h9CFodACgOyJrAAABbHKsGrMaZSRmdGFycm93AACgqSHpJGdodGFycm93AKCqIWYAAOA12Fnd4iFhcgCgFSCAAWNsdADIGswa0BpyAADgNdi93GEAcwDoAGka8iFvaydhAAFicNca2xr1IWxsAKBDIOghZW4AoBAg4Qr2GgAA/RoAAAgbExsaGwAAIRs7GwAAAAA+G2IbmRuVG6sbAACyG80b0htjAHUAdABlADuA7QDtQAChYyBpeQEbBhtyAGMAO4DuAO5AOGQAAWN4CxsNG3kANWRjAGwAO4ChAKFAAAFmcssCFhsA4DXYJt1yAGEAdgBlADuA7ADsQIChSCFpbm8AJxsyGzYbAAFpbisbLxtuAHQAAKAMKnQAAKAtIuYhaW4AoNwpdABhAACgKSHsIWlnM2GAAWFvcABDG1sbXhuAAWNndABJG0sbWRtyACthgAFlbHAAcQVRG1UbaQBuAOUAyAVhAHIA9AByBWgAMWFmAACgtyJlAGQAtWEAoggiY2ZvdGkbbRt1G3kb4SFyZQCgBSFpAG4AdKAeImkAZQAAoN0pZABvAPQAWxsAoisiY2VscIEbhRuPG5QbYQBsAACguiIAAWdyiRuNG2UAcgDzACMQ4wCCG2EicmhrAACgFyryIW9kAKA8KgACY2dwdJ8boRukG6gbeQBRZG8AbgAvYWYAAOA12FrdYQC5Y3UAZQBzAHQAO4C/AL9AAAFjabUbuRtyAADgNdi+3G4AAKIIIkVkc3bCG8QbyBvQAwCg+SJvAHQAAKD1Inag9CIAoPMiaaBiIOwhZGUpYesB1hsAANkbYwB5AFZkbAA7gO8A70AAA2NmbW9zdeYb7hvyG/Ub+hsFHAABaXnqG+0bcgBjADVhOWRyAADgNdgn3eEhdGg3YnAAZgAA4DXYW93jAf8bAAADHHIAAOA12L/c8iFjeVhk6yFjeVRkAARhY2ZnaGpvcxUcGhwiHCYcKhwtHDAcNRzwIXBhdqC6A/BjAAFleR4cIRzkIWls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ZmdobG1vcHJzdHV3CiwNLBEsHSwnLDEsQCxLLFIsYix6LIQsjyzLLOgs7Sz/LAotcgDyAAkDYQByAACgYykAAWNyFSwbLHUAdABlADuA+gD6QPIACQ1yAOMBIywAACUseQBeZHYAZQBtYQABaXkrLDAscgBjADuA+wD7QENkgAFhYmgANyw6LD0scgDyANEO7CFhY3FhYQDyAOAOAAFpckQsSCzzIWh0AKB+KQDgNdgy3XIAYQB2AGUAO4D5APlAYQFWLF8scgAAAWxyWixcLACgvyEAoL4hbABrAACggCUAAWN0Zix2LG8CbCwAAAAAcyxyAG4AZaAcI3IAAKAcI28AcAAAoA8jcgBpAACg+CUAAWFsfiyBLGMAcgBrYTuAqACoQAABZ3CILIssbwBuAHNhZgAA4DXYZt0AA2FkaGxzdZksniynLLgsuyzFLHIAcgBvAPcACQ1vAHcAbgBhAHIAcgBvAPcA2A5hI3Jwb29uAAABbHKvLLMsZQBmAPQAWyxpAGcAaAD0AF0sdQDzAKYOaQAAocUDaGzBLMIs0mNvAG4AxWPwI2Fycm93cwCgyCGAAWNpdADRLOEs5CxvAtcsAAAAAN4scgBuAGWgHSNyAACgHSNvAHAAAKAOI24AZwBvYXIAaQAAoPklYwByAADgNdjK3IABZGlyAPMs9yz6LG8AdAAAoPAi7CFkZWlhaQBmoLUlAKC0JQABYW0DLQYtcgDyAMosbAA7gPwA/EDhIm5nbGUAoKcpgAdBQkRhY2RlZmxub3Byc3oAJy0qLTAtNC2bLZ0toS2/LcMtxy3TLdgt3C3gLfwtcgDyABADYQByAHag6CoAoOkqYQBzAOgA/gIAAW5yOC08LechcnQAoJwpgANla25wcnN0AJkpSC1NLVQtXi1iLYItYQBwAHAA4QAaHG8AdABoAGkAbgDnAKEXgAFoaXIAoSmzJFotbwBwAPQAdCVooJUh7wD4JgABaXVmLWotZwBtAOEAuygAAWJwbi14LXMjZXRuZXEAceCKIgD+AODLKgD+cyNldG5lcQBx4IsiAP4A4MwqAP4AAWhyhi2KLWUAdADhABIraSNhbmdsZQAAAWxyki2WLeUhZnQAoLIiaSJnaHQAAKCzInkAMmThIXNoAKCiIoABZWxyAKcttC24LWKiKCKuLQAAAACyLWEAcgAAoLsicQAAoFoi7CFpcACg7iIAAWJ0vC1eD2EA8gBfD3IAAOA12DPddAByAOkAlS1zAHUAAAFicM0t0C0A4IIi0iAA4IMi0iBwAGYAAOA12GfdcgBvAPAAWQt0AHIA6QCaLQABY3XkLegtcgAA4DXYy9wAAWJw7C30LW4AAAFFZXUt8S0A4IoiAP5uAAABRWV/LfktAOCLIgD+6SJnemFnAKCaKYADY2Vmb3BycwANLhAuJS4pLiMuLi40LukhcmN1YQABZGkULiEuAAFiZxguHC5hAHIAAKBfKmUAcaAnIgCgWSLlIXJwAKAYIXIAAOA12DTdcABmAADgNdho3WWgQCJhAHQA6ABqD2MAcgAA4DXYzNzjCuQRUC4AAFQuAABYLmIuAAAAAGMubS5wLnQuAAAAAIguki4AAJouJxIqEnQAcgDpAB0ScgAA4DXYNd0AAUFhWy5eLnIA8gDnAnIA8gCTB75jAAFBYWYuaS5yAPIA4AJyAPIAjAdhAPAAeh5pAHMAAKD7IoABZHB0APgReS6DLgABZmx9LoAuAOA12GnddQDzAP8RaQBtAOUABBIAAUFhiy6OLnIA8gDuAnIA8gCaBwABY3GVLgoScgAA4DXYzdwAAXB0nS6hLmwAdQDzACUScgDpACASAARhY2VmaW9zdbEuvC7ELsguzC7PLtQu2S5jAAABdXm2LrsudABlADuA/QD9QE9kAAFpecAuwy5yAGMAd2FLZG4AO4ClAKVAcgAA4DXYNt1jAHkAV2RwAGYAAOA12GrdYwByAADgNdjO3AABY23dLt8ueQBOZGwAO4D/AP9AAAVhY2RlZmhpb3N38y73Lv8uAi8MLxAvEy8YLx0vIi9jInV0ZQB6YQABYXn7Lv4u8iFvbn5hN2RvAHQAfGEAAWV0Bi8KL3QAcgDmAB8QYQC2Y3IAAOA12DfdYwB5ADZk5yJyYXJyAKDdIXAAZgAA4DXYa91jAHIAAOA12M/cAAFqbiYvKC8AoA0gagAAoAwg")}),C=A(A=>{"use strict";Object.defineProperty(A,"__esModule",{value:!0}),A.xmlDecodeTree=void 0,A.xmlDecodeTree=(0,I().decodeBase64)("AAJhZ2xxBwARABMAFQBtAg0AAAAAAA8AcAAmYG8AcwAnYHQAPmB0ADxg9SFvdCJg")}),c=A(A=>{"use strict";var g,I;Object.defineProperty(A,"__esModule",{value:!0}),A.BinTrieFlags=void 0,(I=g||(A.BinTrieFlags=g={}))[I.VALUE_LENGTH=49152]="VALUE_LENGTH",I[I.FLAG13=8192]="FLAG13",I[I.BRANCH_LENGTH=8064]="BRANCH_LENGTH",I[I.JUMP_TABLE=127]="JUMP_TABLE"}),i=A(A=>{Object.defineProperty(A,"__esModule",{value:!0}),A.xmlDecodeTree=A.htmlDecodeTree=A.replaceCodePoint=A.fromCodePoint=A.decodeCodePoint=A.EntityDecoder=A.DecodingMode=void 0,A.determineBranch=Y,A.decodeHTML=function(A,g=Q.Legacy){return W(A,g)},A.decodeHTMLAttribute=function(A){return W(A,Q.Attribute)},A.decodeHTMLStrict=function(A){return W(A,Q.Strict)},A.decodeXML=function(A){return n(A,Q.Strict)};var I,i,o,e,Q,h,t=g(),d=B(),F=C(),K=c();function D(A){return A>=h.ZERO&&A<=h.NINE}(I=h||(h={}))[I.NUM=35]="NUM",I[I.SEMI=59]="SEMI",I[I.EQUALS=61]="EQUALS",I[I.ZERO=48]="ZERO",I[I.NINE=57]="NINE",I[I.LOWER_A=97]="LOWER_A",I[I.LOWER_F=102]="LOWER_F",I[I.LOWER_X=120]="LOWER_X",I[I.LOWER_Z=122]="LOWER_Z",I[I.UPPER_A=65]="UPPER_A",I[I.UPPER_F=70]="UPPER_F",I[I.UPPER_Z=90]="UPPER_Z",(i=e||(e={}))[i.EntityStart=0]="EntityStart",i[i.NumericStart=1]="NumericStart",i[i.NumericDecimal=2]="NumericDecimal",i[i.NumericHex=3]="NumericHex",i[i.NamedEntity=4]="NamedEntity",(o=Q||(A.DecodingMode=Q={}))[o.Legacy=0]="Legacy",o[o.Strict=1]="Strict",o[o.Attribute=2]="Attribute";var w=class{constructor(A,g,I){this.decodeTree=A,this.emitCodePoint=g,this.errors=I,this.state=e.EntityStart,this.consumed=1,this.result=0,this.treeIndex=0,this.excess=1,this.decodeMode=Q.Strict,this.runConsumed=0}startEntity(A){this.decodeMode=A,this.state=e.EntityStart,this.result=0,this.treeIndex=0,this.excess=1,this.consumed=1,this.runConsumed=0}write(A,g){switch(this.state){case e.EntityStart:return A.charCodeAt(g)===h.NUM?(this.state=e.NumericStart,this.consumed+=1,this.stateNumericStart(A,g+1)):(this.state=e.NamedEntity,this.stateNamedEntity(A,g));case e.NumericStart:return this.stateNumericStart(A,g);case e.NumericDecimal:return this.stateNumericDecimal(A,g);case e.NumericHex:return this.stateNumericHex(A,g);case e.NamedEntity:return this.stateNamedEntity(A,g)}}stateNumericStart(A,g){return g>=A.length?-1:(32|A.charCodeAt(g))===h.LOWER_X?(this.state=e.NumericHex,this.consumed+=1,this.stateNumericHex(A,g+1)):(this.state=e.NumericDecimal,this.stateNumericDecimal(A,g))}stateNumericHex(A,g){for(;g<A.length;){var I;let B=A.charCodeAt(g);if(!D(B)&&(!((I=B)>=h.UPPER_A)||!(I<=h.UPPER_F))&&(!(I>=h.LOWER_A)||!(I<=h.LOWER_F)))return this.emitNumericEntity(B,3);{let A=B<=h.NINE?B-h.ZERO:(32|B)-h.LOWER_A+10;this.result=16*this.result+A,this.consumed++,g++}}return -1}stateNumericDecimal(A,g){for(;g<A.length;){let I=A.charCodeAt(g);if(!D(I))return this.emitNumericEntity(I,2);this.result=10*this.result+(I-h.ZERO),this.consumed++,g++}return -1}emitNumericEntity(A,g){var I;if(this.consumed<=g)return null==(I=this.errors)||I.absenceOfDigitsInNumericCharacterReference(this.consumed),0;if(A===h.SEMI)this.consumed+=1;else if(this.decodeMode===Q.Strict)return 0;return this.emitCodePoint((0,t.replaceCodePoint)(this.result),this.consumed),this.errors&&(A!==h.SEMI&&this.errors.missingSemicolonAfterCharacterReference(),this.errors.validateNumericCharacterReference(this.result)),this.consumed}stateNamedEntity(A,g){let{decodeTree:I}=this,B=I[this.treeIndex],C=(B&K.BinTrieFlags.VALUE_LENGTH)>>14;for(;g<A.length;){if(0===C&&(B&K.BinTrieFlags.FLAG13)!=0){let c=(B&K.BinTrieFlags.BRANCH_LENGTH)>>7;if(0===this.runConsumed){let I=B&K.BinTrieFlags.JUMP_TABLE;if(A.charCodeAt(g)!==I)return 0===this.result?0:this.emitNotTerminatedNamedEntity();g++,this.excess++,this.runConsumed++}for(;this.runConsumed<c;){if(g>=A.length)return -1;let B=this.runConsumed-1,C=I[this.treeIndex+1+(B>>1)],c=B%2==0?255&C:C>>8&255;if(A.charCodeAt(g)!==c)return this.runConsumed=0,0===this.result?0:this.emitNotTerminatedNamedEntity();g++,this.excess++,this.runConsumed++}this.runConsumed=0,this.treeIndex+=1+(c>>1),C=((B=I[this.treeIndex])&K.BinTrieFlags.VALUE_LENGTH)>>14}if(g>=A.length)break;let c=A.charCodeAt(g);if(c===h.SEMI&&0!==C&&(B&K.BinTrieFlags.FLAG13)!=0)return this.emitNamedEntityData(this.treeIndex,C,this.consumed+this.excess);if(this.treeIndex=Y(I,B,this.treeIndex+Math.max(1,C),c),this.treeIndex<0)return 0===this.result||this.decodeMode===Q.Attribute&&(0===C||function(A){var g;return A===h.EQUALS||(g=A)>=h.UPPER_A&&g<=h.UPPER_Z||g>=h.LOWER_A&&g<=h.LOWER_Z||D(g)}(c))?0:this.emitNotTerminatedNamedEntity();if(0!=(C=((B=I[this.treeIndex])&K.BinTrieFlags.VALUE_LENGTH)>>14)){if(c===h.SEMI)return this.emitNamedEntityData(this.treeIndex,C,this.consumed+this.excess);this.decodeMode!==Q.Strict&&(B&K.BinTrieFlags.FLAG13)==0&&(this.result=this.treeIndex,this.consumed+=this.excess,this.excess=0)}g++,this.excess++}return -1}emitNotTerminatedNamedEntity(){var A;let{result:g,decodeTree:I}=this,B=(I[g]&K.BinTrieFlags.VALUE_LENGTH)>>14;return this.emitNamedEntityData(g,B,this.consumed),null==(A=this.errors)||A.missingSemicolonAfterCharacterReference(),this.consumed}emitNamedEntityData(A,g,I){let{decodeTree:B}=this;return this.emitCodePoint(1===g?B[A]&~(K.BinTrieFlags.VALUE_LENGTH|K.BinTrieFlags.FLAG13):B[A+1],I),3===g&&this.emitCodePoint(B[A+2],I),I}end(){var A;switch(this.state){case e.NamedEntity:return 0!==this.result&&(this.decodeMode!==Q.Attribute||this.result===this.treeIndex)?this.emitNotTerminatedNamedEntity():0;case e.NumericDecimal:return this.emitNumericEntity(0,2);case e.NumericHex:return this.emitNumericEntity(0,3);case e.NumericStart:return null==(A=this.errors)||A.absenceOfDigitsInNumericCharacterReference(this.consumed),0;case e.EntityStart:return 0}}};function G(A){let g="",I=new w(A,A=>g+=(0,t.fromCodePoint)(A));return function(A,B){let C=0,c=0;for(;(c=A.indexOf("&",c))>=0;){g+=A.slice(C,c),I.startEntity(B);let i=I.write(A,c+1);if(i<0){C=c+I.end();break}C=c+i,c=0===i?C+1:C}let i=g+A.slice(C);return g="",i}}function Y(A,g,I,B){let C=(g&K.BinTrieFlags.BRANCH_LENGTH)>>7,c=g&K.BinTrieFlags.JUMP_TABLE;if(0===C)return 0!==c&&B===c?I:-1;if(c){let g=B-c;return g<0||g>=C?-1:A[I+g]-1}let i=C+1>>1,o=0,e=C-1;for(;o<=e;){let g=o+e>>>1,C=A[I+(g>>1)]>>(1&g)*8&255;if(C<B)o=g+1;else{if(!(C>B))return A[I+i+g];e=g-1}}return -1}A.EntityDecoder=w;var W=G(d.htmlDecodeTree),n=G(F.xmlDecodeTree),J=g();Object.defineProperty(A,"decodeCodePoint",{enumerable:!0,get:function(){return J.decodeCodePoint}}),Object.defineProperty(A,"fromCodePoint",{enumerable:!0,get:function(){return J.fromCodePoint}}),Object.defineProperty(A,"replaceCodePoint",{enumerable:!0,get:function(){return J.replaceCodePoint}});var y=B();Object.defineProperty(A,"htmlDecodeTree",{enumerable:!0,get:function(){return y.htmlDecodeTree}});var E=C();Object.defineProperty(A,"xmlDecodeTree",{enumerable:!0,get:function(){return E.xmlDecodeTree}})});export default i();
|