archyne 0.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (92) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +249 -0
  3. package/THIRD-PARTY-NOTICES.md +302 -0
  4. package/bin/archyne.mjs +179 -0
  5. package/desktop/main.cjs +141 -0
  6. package/dist/assets/_commonjs-dynamic-modules-TDtrdbi3.js +1 -0
  7. package/dist/assets/abnfDiagram-VRR7QNED-DxJn5x30.js +1 -0
  8. package/dist/assets/ar-DHpnjuQB.js +1 -0
  9. package/dist/assets/arc-Bi9nYi75.js +1 -0
  10. package/dist/assets/architectureDiagram-ZJ3FMSHR-CVVsX69f.js +36 -0
  11. package/dist/assets/blockDiagram-677ZJIJ3-CvyOVrtD.js +132 -0
  12. package/dist/assets/c4Diagram-LMCZKHZV-CeTXI2L5.js +10 -0
  13. package/dist/assets/channel-CgQghNFn.js +1 -0
  14. package/dist/assets/chunk-2Q5K7J3B-QWLx0LNh.js +1 -0
  15. package/dist/assets/chunk-32BRIVSS-Cx7PNJc5.js +1 -0
  16. package/dist/assets/chunk-5VM5RSS4-B-JlXrm9.js +15 -0
  17. package/dist/assets/chunk-EX3LRPZG-BZir2lEZ.js +231 -0
  18. package/dist/assets/chunk-JWPE2WC7-Bs6js5ed.js +1 -0
  19. package/dist/assets/chunk-MOJQB5TN-M9vORODQ.js +88 -0
  20. package/dist/assets/chunk-RYQCIY6F-C23BZB1s.js +1 -0
  21. package/dist/assets/chunk-V7JOEXUC-DP9DCEHY.js +206 -0
  22. package/dist/assets/chunk-VR4S4FIN-CXMOwHEw.js +1 -0
  23. package/dist/assets/chunk-XXDRQBXY-C-XBHYFW.js +1 -0
  24. package/dist/assets/classDiagram-OUVF2IWQ-C9iVyfdZ.js +1 -0
  25. package/dist/assets/classDiagram-v2-EOCWNBFH-C9iVyfdZ.js +1 -0
  26. package/dist/assets/cose-bilkent-JH36ORCC-DcImuxgn.js +1 -0
  27. package/dist/assets/cynefin-VYW2F7L2-CKc9sK58.js +178 -0
  28. package/dist/assets/cynefinDiagram-TSTJHNR4-_O9mLQTK.js +62 -0
  29. package/dist/assets/cytoscape.esm-DTSO7Bv0.js +331 -0
  30. package/dist/assets/dagre-VKFMJZFB-CMh1gN_B.js +4 -0
  31. package/dist/assets/de-BbF3ozkg.js +1 -0
  32. package/dist/assets/defaultLocale-DX6XiGOO.js +1 -0
  33. package/dist/assets/diagram-FQU43EPY-Cay_5WYD.js +3 -0
  34. package/dist/assets/diagram-G47NLZAW-DT1H2wTP.js +24 -0
  35. package/dist/assets/diagram-NH7WQ7WH-xuvv_D9N.js +24 -0
  36. package/dist/assets/diagram-OA4YK3LP-Bio-u38F.js +30 -0
  37. package/dist/assets/diagram-WEI45ONY-CD_QL4nf.js +41 -0
  38. package/dist/assets/ebnfDiagram-CCIWWBDH-CkGukNGk.js +1 -0
  39. package/dist/assets/elk-api-CF2Hej0P.js +1 -0
  40. package/dist/assets/elk-worker.min-BENGc9gn.js +22 -0
  41. package/dist/assets/elk-worker.min-D32ngsh5.js +1 -0
  42. package/dist/assets/elk.bundled-ajwJAWsK.js +24 -0
  43. package/dist/assets/erDiagram-Q63AITRT-CQGtCq5E.js +85 -0
  44. package/dist/assets/es-BB-VRPmB.js +1 -0
  45. package/dist/assets/flowDiagram-23GEKE2U-E3_Lcv6A.js +156 -0
  46. package/dist/assets/ganttDiagram-NO4QXBWP-AwojtMZ1.js +292 -0
  47. package/dist/assets/gitGraphDiagram-IHSO6WYX-D0klOOBk.js +106 -0
  48. package/dist/assets/graph-C9eacEi8.js +1 -0
  49. package/dist/assets/icon-names.generated-Ch4zjdI9.js +1 -0
  50. package/dist/assets/index--A4RGzRu.js +277 -0
  51. package/dist/assets/index-B29u660W.js +1 -0
  52. package/dist/assets/index-BDuFgzVF.js +1 -0
  53. package/dist/assets/index-C-tHkbn_.js +1 -0
  54. package/dist/assets/index-C1mNJrF6.js +1 -0
  55. package/dist/assets/index-CbxBfG1v.css +1 -0
  56. package/dist/assets/index-XppXLvIK.js +1 -0
  57. package/dist/assets/infoDiagram-FWYZ7A6U-2op9tD2c.js +2 -0
  58. package/dist/assets/init-Gi6I4Gst.js +1 -0
  59. package/dist/assets/ishikawaDiagram-FXEZZL3T-B1UsYLso.js +70 -0
  60. package/dist/assets/it-z1Rr2vYL.js +1 -0
  61. package/dist/assets/ja-DMZcFTAH.js +1 -0
  62. package/dist/assets/journeyDiagram-5HDEW3XC-CZ1oYiAr.js +139 -0
  63. package/dist/assets/kanban-definition-HUTT4EX6-B-XWcB9M.js +89 -0
  64. package/dist/assets/katex-C5jXJg4s.js +257 -0
  65. package/dist/assets/layout-DEXfKzaS.js +1 -0
  66. package/dist/assets/linear-GMYYDbJv.js +1 -0
  67. package/dist/assets/map-Czzmt4hB.js +1 -0
  68. package/dist/assets/mermaid.core-pPiwjbNO.js +314 -0
  69. package/dist/assets/mindmap-definition-LN4V7U3C-BB4SGbrE.js +96 -0
  70. package/dist/assets/ordinal-Cboi1Yqb.js +1 -0
  71. package/dist/assets/pegDiagram-2B236MQR-3keJbrGj.js +1 -0
  72. package/dist/assets/pieDiagram-ENE6RG2P-CVi3ig0y.js +39 -0
  73. package/dist/assets/quadrantDiagram-ABIIQ3AL-CPp6gXbB.js +7 -0
  74. package/dist/assets/railroadDiagram-RFXS5EU6-BCILT-8k.js +1 -0
  75. package/dist/assets/requirementDiagram-TGXJPOKE-DgmaKLiT.js +84 -0
  76. package/dist/assets/sankeyDiagram-HTMAVEWB-DHGaI0hQ.js +40 -0
  77. package/dist/assets/sequenceDiagram-DBY2YBRQ-3AycEqxZ.js +162 -0
  78. package/dist/assets/sizeCapture-X5ZJPWSS-uS50b7bJ.js +1 -0
  79. package/dist/assets/stateDiagram-2N3HPSRC-DaBzZNwx.js +1 -0
  80. package/dist/assets/stateDiagram-v2-6OUMAXLB-xJOnXuvC.js +1 -0
  81. package/dist/assets/swimlanes-5IMT3BWC-BR44KNOm.js +2 -0
  82. package/dist/assets/swimlanesDiagram-G3AALYLV-B3xqzED0.js +8 -0
  83. package/dist/assets/timeline-definition-FHXFAJF6-Msxd070e.js +120 -0
  84. package/dist/assets/vennDiagram-L72KCM5P-W9VDq1l8.js +34 -0
  85. package/dist/assets/wardleyDiagram-EHGQE667-DfDvmnIe.js +78 -0
  86. package/dist/assets/xychartDiagram-FW5EYKEG-HwKD44hb.js +7 -0
  87. package/dist/assets/zh-B2oIvhee.js +1 -0
  88. package/dist/embed-demo.html +114 -0
  89. package/dist/index.html +102 -0
  90. package/dist/logo.png +0 -0
  91. package/dist/logo.svg +55 -0
  92. package/package.json +123 -0
@@ -0,0 +1,277 @@
1
+ const __vite__mapDeps=(i,m=__vite__mapDeps,d=(m.f||(m.f=["./elk-api-CF2Hej0P.js","./_commonjs-dynamic-modules-TDtrdbi3.js","./elk.bundled-ajwJAWsK.js"])))=>i.map(i=>d[i]);
2
+ var e9=Object.defineProperty;var n9=(e,t,n)=>t in e?e9(e,t,{enumerable:!0,configurable:!0,writable:!0,value:n}):e[t]=n;var Qx=(e,t,n)=>n9(e,typeof t!="symbol"?t+"":t,n);(function(){const t=document.createElement("link").relList;if(t&&t.supports&&t.supports("modulepreload"))return;for(const s of document.querySelectorAll('link[rel="modulepreload"]'))i(s);new MutationObserver(s=>{for(const r of s)if(r.type==="childList")for(const l of r.addedNodes)l.tagName==="LINK"&&l.rel==="modulepreload"&&i(l)}).observe(document,{childList:!0,subtree:!0});function n(s){const r={};return s.integrity&&(r.integrity=s.integrity),s.referrerPolicy&&(r.referrerPolicy=s.referrerPolicy),s.crossOrigin==="use-credentials"?r.credentials="include":s.crossOrigin==="anonymous"?r.credentials="omit":r.credentials="same-origin",r}function i(s){if(s.ep)return;s.ep=!0;const r=n(s);fetch(s.href,r)}})();var xU=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function nO(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var Tg={exports:{}},fc={};/**
3
+ * @license React
4
+ * react-jsx-runtime.production.js
5
+ *
6
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
7
+ *
8
+ * This source code is licensed under the MIT license found in the
9
+ * LICENSE file in the root directory of this source tree.
10
+ */var Px;function i9(){if(Px)return fc;Px=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.fragment");function n(i,s,r){var l=null;if(r!==void 0&&(l=""+r),s.key!==void 0&&(l=""+s.key),"key"in s){r={};for(var c in s)c!=="key"&&(r[c]=s[c])}else r=s;return s=r.ref,{$$typeof:e,type:i,key:l,ref:s!==void 0?s:null,props:r}}return fc.Fragment=t,fc.jsx=n,fc.jsxs=n,fc}var qx;function s9(){return qx||(qx=1,Tg.exports=i9()),Tg.exports}var v=s9(),Ng={exports:{}},jt={};/**
11
+ * @license React
12
+ * react.production.js
13
+ *
14
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
15
+ *
16
+ * This source code is licensed under the MIT license found in the
17
+ * LICENSE file in the root directory of this source tree.
18
+ */var Wx;function r9(){if(Wx)return jt;Wx=1;var e=Symbol.for("react.transitional.element"),t=Symbol.for("react.portal"),n=Symbol.for("react.fragment"),i=Symbol.for("react.strict_mode"),s=Symbol.for("react.profiler"),r=Symbol.for("react.consumer"),l=Symbol.for("react.context"),c=Symbol.for("react.forward_ref"),u=Symbol.for("react.suspense"),f=Symbol.for("react.memo"),p=Symbol.for("react.lazy"),m=Symbol.for("react.activity"),g=Symbol.iterator;function y(j){return j===null||typeof j!="object"?null:(j=g&&j[g]||j["@@iterator"],typeof j=="function"?j:null)}var $={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},b=Object.assign,S={};function O(j,R,J){this.props=j,this.context=R,this.refs=S,this.updater=J||$}O.prototype.isReactComponent={},O.prototype.setState=function(j,R){if(typeof j!="object"&&typeof j!="function"&&j!=null)throw Error("takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,j,R,"setState")},O.prototype.forceUpdate=function(j){this.updater.enqueueForceUpdate(this,j,"forceUpdate")};function E(){}E.prototype=O.prototype;function k(j,R,J){this.props=j,this.context=R,this.refs=S,this.updater=J||$}var D=k.prototype=new E;D.constructor=k,b(D,O.prototype),D.isPureReactComponent=!0;var _=Array.isArray;function A(){}var H={H:null,A:null,T:null,S:null},Y=Object.prototype.hasOwnProperty;function W(j,R,J){var st=J.ref;return{$$typeof:e,type:j,key:R,ref:st!==void 0?st:null,props:J}}function nt(j,R){return W(j.type,R,j.props)}function U(j){return typeof j=="object"&&j!==null&&j.$$typeof===e}function P(j){var R={"=":"=0",":":"=2"};return"$"+j.replace(/[=:]/g,function(J){return R[J]})}var F=/\/+/g;function M(j,R){return typeof j=="object"&&j!==null&&j.key!=null?P(""+j.key):R.toString(36)}function G(j){switch(j.status){case"fulfilled":return j.value;case"rejected":throw j.reason;default:switch(typeof j.status=="string"?j.then(A,A):(j.status="pending",j.then(function(R){j.status==="pending"&&(j.status="fulfilled",j.value=R)},function(R){j.status==="pending"&&(j.status="rejected",j.reason=R)})),j.status){case"fulfilled":return j.value;case"rejected":throw j.reason}}throw j}function T(j,R,J,st,ut){var ft=typeof j;(ft==="undefined"||ft==="boolean")&&(j=null);var dt=!1;if(j===null)dt=!0;else switch(ft){case"bigint":case"string":case"number":dt=!0;break;case"object":switch(j.$$typeof){case e:case t:dt=!0;break;case p:return dt=j._init,T(dt(j._payload),R,J,st,ut)}}if(dt)return ut=ut(j),dt=st===""?"."+M(j,0):st,_(ut)?(J="",dt!=null&&(J=dt.replace(F,"$&/")+"/"),T(ut,R,J,"",function(Ct){return Ct})):ut!=null&&(U(ut)&&(ut=nt(ut,J+(ut.key==null||j&&j.key===ut.key?"":(""+ut.key).replace(F,"$&/")+"/")+dt)),R.push(ut)),1;dt=0;var rt=st===""?".":st+":";if(_(j))for(var ht=0;ht<j.length;ht++)st=j[ht],ft=rt+M(st,ht),dt+=T(st,R,J,ft,ut);else if(ht=y(j),typeof ht=="function")for(j=ht.call(j),ht=0;!(st=j.next()).done;)st=st.value,ft=rt+M(st,ht++),dt+=T(st,R,J,ft,ut);else if(ft==="object"){if(typeof j.then=="function")return T(G(j),R,J,st,ut);throw R=String(j),Error("Objects are not valid as a React child (found: "+(R==="[object Object]"?"object with keys {"+Object.keys(j).join(", ")+"}":R)+"). If you meant to render a collection of children, use an array instead.")}return dt}function z(j,R,J){if(j==null)return j;var st=[],ut=0;return T(j,st,"","",function(ft){return R.call(J,ft,ut++)}),st}function Z(j){if(j._status===-1){var R=j._result;R=R(),R.then(function(J){(j._status===0||j._status===-1)&&(j._status=1,j._result=J)},function(J){(j._status===0||j._status===-1)&&(j._status=2,j._result=J)}),j._status===-1&&(j._status=0,j._result=R)}if(j._status===1)return j._result.default;throw j._result}var Q=typeof reportError=="function"?reportError:function(j){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var R=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof j=="object"&&j!==null&&typeof j.message=="string"?String(j.message):String(j),error:j});if(!window.dispatchEvent(R))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",j);return}console.error(j)},et={map:z,forEach:function(j,R,J){z(j,function(){R.apply(this,arguments)},J)},count:function(j){var R=0;return z(j,function(){R++}),R},toArray:function(j){return z(j,function(R){return R})||[]},only:function(j){if(!U(j))throw Error("React.Children.only expected to receive a single React element child.");return j}};return jt.Activity=m,jt.Children=et,jt.Component=O,jt.Fragment=n,jt.Profiler=s,jt.PureComponent=k,jt.StrictMode=i,jt.Suspense=u,jt.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=H,jt.__COMPILER_RUNTIME={__proto__:null,c:function(j){return H.H.useMemoCache(j)}},jt.cache=function(j){return function(){return j.apply(null,arguments)}},jt.cacheSignal=function(){return null},jt.cloneElement=function(j,R,J){if(j==null)throw Error("The argument must be a React element, but you passed "+j+".");var st=b({},j.props),ut=j.key;if(R!=null)for(ft in R.key!==void 0&&(ut=""+R.key),R)!Y.call(R,ft)||ft==="key"||ft==="__self"||ft==="__source"||ft==="ref"&&R.ref===void 0||(st[ft]=R[ft]);var ft=arguments.length-2;if(ft===1)st.children=J;else if(1<ft){for(var dt=Array(ft),rt=0;rt<ft;rt++)dt[rt]=arguments[rt+2];st.children=dt}return W(j.type,ut,st)},jt.createContext=function(j){return j={$$typeof:l,_currentValue:j,_currentValue2:j,_threadCount:0,Provider:null,Consumer:null},j.Provider=j,j.Consumer={$$typeof:r,_context:j},j},jt.createElement=function(j,R,J){var st,ut={},ft=null;if(R!=null)for(st in R.key!==void 0&&(ft=""+R.key),R)Y.call(R,st)&&st!=="key"&&st!=="__self"&&st!=="__source"&&(ut[st]=R[st]);var dt=arguments.length-2;if(dt===1)ut.children=J;else if(1<dt){for(var rt=Array(dt),ht=0;ht<dt;ht++)rt[ht]=arguments[ht+2];ut.children=rt}if(j&&j.defaultProps)for(st in dt=j.defaultProps,dt)ut[st]===void 0&&(ut[st]=dt[st]);return W(j,ft,ut)},jt.createRef=function(){return{current:null}},jt.forwardRef=function(j){return{$$typeof:c,render:j}},jt.isValidElement=U,jt.lazy=function(j){return{$$typeof:p,_payload:{_status:-1,_result:j},_init:Z}},jt.memo=function(j,R){return{$$typeof:f,type:j,compare:R===void 0?null:R}},jt.startTransition=function(j){var R=H.T,J={};H.T=J;try{var st=j(),ut=H.S;ut!==null&&ut(J,st),typeof st=="object"&&st!==null&&typeof st.then=="function"&&st.then(A,Q)}catch(ft){Q(ft)}finally{R!==null&&J.types!==null&&(R.types=J.types),H.T=R}},jt.unstable_useCacheRefresh=function(){return H.H.useCacheRefresh()},jt.use=function(j){return H.H.use(j)},jt.useActionState=function(j,R,J){return H.H.useActionState(j,R,J)},jt.useCallback=function(j,R){return H.H.useCallback(j,R)},jt.useContext=function(j){return H.H.useContext(j)},jt.useDebugValue=function(){},jt.useDeferredValue=function(j,R){return H.H.useDeferredValue(j,R)},jt.useEffect=function(j,R){return H.H.useEffect(j,R)},jt.useEffectEvent=function(j){return H.H.useEffectEvent(j)},jt.useId=function(){return H.H.useId()},jt.useImperativeHandle=function(j,R,J){return H.H.useImperativeHandle(j,R,J)},jt.useInsertionEffect=function(j,R){return H.H.useInsertionEffect(j,R)},jt.useLayoutEffect=function(j,R){return H.H.useLayoutEffect(j,R)},jt.useMemo=function(j,R){return H.H.useMemo(j,R)},jt.useOptimistic=function(j,R){return H.H.useOptimistic(j,R)},jt.useReducer=function(j,R,J){return H.H.useReducer(j,R,J)},jt.useRef=function(j){return H.H.useRef(j)},jt.useState=function(j){return H.H.useState(j)},jt.useSyncExternalStore=function(j,R,J){return H.H.useSyncExternalStore(j,R,J)},jt.useTransition=function(){return H.H.useTransition()},jt.version="19.2.8",jt}var Zx;function cu(){return Zx||(Zx=1,Ng.exports=r9()),Ng.exports}var L=cu();const vc=nO(L);var jg={exports:{}},dc={},Rg={exports:{}},_g={};/**
19
+ * @license React
20
+ * scheduler.production.js
21
+ *
22
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
23
+ *
24
+ * This source code is licensed under the MIT license found in the
25
+ * LICENSE file in the root directory of this source tree.
26
+ */var Ux;function o9(){return Ux||(Ux=1,(function(e){function t(T,z){var Z=T.length;T.push(z);t:for(;0<Z;){var Q=Z-1>>>1,et=T[Q];if(0<s(et,z))T[Q]=z,T[Z]=et,Z=Q;else break t}}function n(T){return T.length===0?null:T[0]}function i(T){if(T.length===0)return null;var z=T[0],Z=T.pop();if(Z!==z){T[0]=Z;t:for(var Q=0,et=T.length,j=et>>>1;Q<j;){var R=2*(Q+1)-1,J=T[R],st=R+1,ut=T[st];if(0>s(J,Z))st<et&&0>s(ut,J)?(T[Q]=ut,T[st]=Z,Q=st):(T[Q]=J,T[R]=Z,Q=R);else if(st<et&&0>s(ut,Z))T[Q]=ut,T[st]=Z,Q=st;else break t}}return z}function s(T,z){var Z=T.sortIndex-z.sortIndex;return Z!==0?Z:T.id-z.id}if(e.unstable_now=void 0,typeof performance=="object"&&typeof performance.now=="function"){var r=performance;e.unstable_now=function(){return r.now()}}else{var l=Date,c=l.now();e.unstable_now=function(){return l.now()-c}}var u=[],f=[],p=1,m=null,g=3,y=!1,$=!1,b=!1,S=!1,O=typeof setTimeout=="function"?setTimeout:null,E=typeof clearTimeout=="function"?clearTimeout:null,k=typeof setImmediate<"u"?setImmediate:null;function D(T){for(var z=n(f);z!==null;){if(z.callback===null)i(f);else if(z.startTime<=T)i(f),z.sortIndex=z.expirationTime,t(u,z);else break;z=n(f)}}function _(T){if(b=!1,D(T),!$)if(n(u)!==null)$=!0,A||(A=!0,P());else{var z=n(f);z!==null&&G(_,z.startTime-T)}}var A=!1,H=-1,Y=5,W=-1;function nt(){return S?!0:!(e.unstable_now()-W<Y)}function U(){if(S=!1,A){var T=e.unstable_now();W=T;var z=!0;try{t:{$=!1,b&&(b=!1,E(H),H=-1),y=!0;var Z=g;try{e:{for(D(T),m=n(u);m!==null&&!(m.expirationTime>T&&nt());){var Q=m.callback;if(typeof Q=="function"){m.callback=null,g=m.priorityLevel;var et=Q(m.expirationTime<=T);if(T=e.unstable_now(),typeof et=="function"){m.callback=et,D(T),z=!0;break e}m===n(u)&&i(u),D(T)}else i(u);m=n(u)}if(m!==null)z=!0;else{var j=n(f);j!==null&&G(_,j.startTime-T),z=!1}}break t}finally{m=null,g=Z,y=!1}z=void 0}}finally{z?P():A=!1}}}var P;if(typeof k=="function")P=function(){k(U)};else if(typeof MessageChannel<"u"){var F=new MessageChannel,M=F.port2;F.port1.onmessage=U,P=function(){M.postMessage(null)}}else P=function(){O(U,0)};function G(T,z){H=O(function(){T(e.unstable_now())},z)}e.unstable_IdlePriority=5,e.unstable_ImmediatePriority=1,e.unstable_LowPriority=4,e.unstable_NormalPriority=3,e.unstable_Profiling=null,e.unstable_UserBlockingPriority=2,e.unstable_cancelCallback=function(T){T.callback=null},e.unstable_forceFrameRate=function(T){0>T||125<T?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):Y=0<T?Math.floor(1e3/T):5},e.unstable_getCurrentPriorityLevel=function(){return g},e.unstable_next=function(T){switch(g){case 1:case 2:case 3:var z=3;break;default:z=g}var Z=g;g=z;try{return T()}finally{g=Z}},e.unstable_requestPaint=function(){S=!0},e.unstable_runWithPriority=function(T,z){switch(T){case 1:case 2:case 3:case 4:case 5:break;default:T=3}var Z=g;g=T;try{return z()}finally{g=Z}},e.unstable_scheduleCallback=function(T,z,Z){var Q=e.unstable_now();switch(typeof Z=="object"&&Z!==null?(Z=Z.delay,Z=typeof Z=="number"&&0<Z?Q+Z:Q):Z=Q,T){case 1:var et=-1;break;case 2:et=250;break;case 5:et=1073741823;break;case 4:et=1e4;break;default:et=5e3}return et=Z+et,T={id:p++,callback:z,priorityLevel:T,startTime:Z,expirationTime:et,sortIndex:-1},Z>Q?(T.sortIndex=Z,t(f,T),n(u)===null&&T===n(f)&&(b?(E(H),H=-1):b=!0,G(_,Z-Q))):(T.sortIndex=et,t(u,T),$||y||($=!0,A||(A=!0,P()))),T},e.unstable_shouldYield=nt,e.unstable_wrapCallback=function(T){var z=g;return function(){var Z=g;g=z;try{return T.apply(this,arguments)}finally{g=Z}}}})(_g)),_g}var Ix;function l9(){return Ix||(Ix=1,Rg.exports=o9()),Rg.exports}var Mg={exports:{}},Fe={};/**
27
+ * @license React
28
+ * react-dom.production.js
29
+ *
30
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
31
+ *
32
+ * This source code is licensed under the MIT license found in the
33
+ * LICENSE file in the root directory of this source tree.
34
+ */var Fx;function a9(){if(Fx)return Fe;Fx=1;var e=cu();function t(u){var f="https://react.dev/errors/"+u;if(1<arguments.length){f+="?args[]="+encodeURIComponent(arguments[1]);for(var p=2;p<arguments.length;p++)f+="&args[]="+encodeURIComponent(arguments[p])}return"Minified React error #"+u+"; visit "+f+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function n(){}var i={d:{f:n,r:function(){throw Error(t(522))},D:n,C:n,L:n,m:n,X:n,S:n,M:n},p:0,findDOMNode:null},s=Symbol.for("react.portal");function r(u,f,p){var m=3<arguments.length&&arguments[3]!==void 0?arguments[3]:null;return{$$typeof:s,key:m==null?null:""+m,children:u,containerInfo:f,implementation:p}}var l=e.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE;function c(u,f){if(u==="font")return"";if(typeof f=="string")return f==="use-credentials"?f:""}return Fe.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE=i,Fe.createPortal=function(u,f){var p=2<arguments.length&&arguments[2]!==void 0?arguments[2]:null;if(!f||f.nodeType!==1&&f.nodeType!==9&&f.nodeType!==11)throw Error(t(299));return r(u,f,null,p)},Fe.flushSync=function(u){var f=l.T,p=i.p;try{if(l.T=null,i.p=2,u)return u()}finally{l.T=f,i.p=p,i.d.f()}},Fe.preconnect=function(u,f){typeof u=="string"&&(f?(f=f.crossOrigin,f=typeof f=="string"?f==="use-credentials"?f:"":void 0):f=null,i.d.C(u,f))},Fe.prefetchDNS=function(u){typeof u=="string"&&i.d.D(u)},Fe.preinit=function(u,f){if(typeof u=="string"&&f&&typeof f.as=="string"){var p=f.as,m=c(p,f.crossOrigin),g=typeof f.integrity=="string"?f.integrity:void 0,y=typeof f.fetchPriority=="string"?f.fetchPriority:void 0;p==="style"?i.d.S(u,typeof f.precedence=="string"?f.precedence:void 0,{crossOrigin:m,integrity:g,fetchPriority:y}):p==="script"&&i.d.X(u,{crossOrigin:m,integrity:g,fetchPriority:y,nonce:typeof f.nonce=="string"?f.nonce:void 0})}},Fe.preinitModule=function(u,f){if(typeof u=="string")if(typeof f=="object"&&f!==null){if(f.as==null||f.as==="script"){var p=c(f.as,f.crossOrigin);i.d.M(u,{crossOrigin:p,integrity:typeof f.integrity=="string"?f.integrity:void 0,nonce:typeof f.nonce=="string"?f.nonce:void 0})}}else f==null&&i.d.M(u)},Fe.preload=function(u,f){if(typeof u=="string"&&typeof f=="object"&&f!==null&&typeof f.as=="string"){var p=f.as,m=c(p,f.crossOrigin);i.d.L(u,p,{crossOrigin:m,integrity:typeof f.integrity=="string"?f.integrity:void 0,nonce:typeof f.nonce=="string"?f.nonce:void 0,type:typeof f.type=="string"?f.type:void 0,fetchPriority:typeof f.fetchPriority=="string"?f.fetchPriority:void 0,referrerPolicy:typeof f.referrerPolicy=="string"?f.referrerPolicy:void 0,imageSrcSet:typeof f.imageSrcSet=="string"?f.imageSrcSet:void 0,imageSizes:typeof f.imageSizes=="string"?f.imageSizes:void 0,media:typeof f.media=="string"?f.media:void 0})}},Fe.preloadModule=function(u,f){if(typeof u=="string")if(f){var p=c(f.as,f.crossOrigin);i.d.m(u,{as:typeof f.as=="string"&&f.as!=="script"?f.as:void 0,crossOrigin:p,integrity:typeof f.integrity=="string"?f.integrity:void 0})}else i.d.m(u)},Fe.requestFormReset=function(u){i.d.r(u)},Fe.unstable_batchedUpdates=function(u,f){return u(f)},Fe.useFormState=function(u,f,p){return l.H.useFormState(u,f,p)},Fe.useFormStatus=function(){return l.H.useHostTransitionStatus()},Fe.version="19.2.8",Fe}var Vx;function iO(){if(Vx)return Mg.exports;Vx=1;function e(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),Mg.exports=a9(),Mg.exports}/**
35
+ * @license React
36
+ * react-dom-client.production.js
37
+ *
38
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
39
+ *
40
+ * This source code is licensed under the MIT license found in the
41
+ * LICENSE file in the root directory of this source tree.
42
+ */var Xx;function c9(){if(Xx)return dc;Xx=1;var e=l9(),t=cu(),n=iO();function i(o){var a="https://react.dev/errors/"+o;if(1<arguments.length){a+="?args[]="+encodeURIComponent(arguments[1]);for(var h=2;h<arguments.length;h++)a+="&args[]="+encodeURIComponent(arguments[h])}return"Minified React error #"+o+"; visit "+a+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}function s(o){return!(!o||o.nodeType!==1&&o.nodeType!==9&&o.nodeType!==11)}function r(o){var a=o,h=o;if(o.alternate)for(;a.return;)a=a.return;else{o=a;do a=o,(a.flags&4098)!==0&&(h=a.return),o=a.return;while(o)}return a.tag===3?h:null}function l(o){if(o.tag===13){var a=o.memoizedState;if(a===null&&(o=o.alternate,o!==null&&(a=o.memoizedState)),a!==null)return a.dehydrated}return null}function c(o){if(o.tag===31){var a=o.memoizedState;if(a===null&&(o=o.alternate,o!==null&&(a=o.memoizedState)),a!==null)return a.dehydrated}return null}function u(o){if(r(o)!==o)throw Error(i(188))}function f(o){var a=o.alternate;if(!a){if(a=r(o),a===null)throw Error(i(188));return a!==o?null:o}for(var h=o,d=a;;){var w=h.return;if(w===null)break;var x=w.alternate;if(x===null){if(d=w.return,d!==null){h=d;continue}break}if(w.child===x.child){for(x=w.child;x;){if(x===h)return u(w),o;if(x===d)return u(w),a;x=x.sibling}throw Error(i(188))}if(h.return!==d.return)h=w,d=x;else{for(var C=!1,N=w.child;N;){if(N===h){C=!0,h=w,d=x;break}if(N===d){C=!0,d=w,h=x;break}N=N.sibling}if(!C){for(N=x.child;N;){if(N===h){C=!0,h=x,d=w;break}if(N===d){C=!0,d=x,h=w;break}N=N.sibling}if(!C)throw Error(i(189))}}if(h.alternate!==d)throw Error(i(190))}if(h.tag!==3)throw Error(i(188));return h.stateNode.current===h?o:a}function p(o){var a=o.tag;if(a===5||a===26||a===27||a===6)return o;for(o=o.child;o!==null;){if(a=p(o),a!==null)return a;o=o.sibling}return null}var m=Object.assign,g=Symbol.for("react.element"),y=Symbol.for("react.transitional.element"),$=Symbol.for("react.portal"),b=Symbol.for("react.fragment"),S=Symbol.for("react.strict_mode"),O=Symbol.for("react.profiler"),E=Symbol.for("react.consumer"),k=Symbol.for("react.context"),D=Symbol.for("react.forward_ref"),_=Symbol.for("react.suspense"),A=Symbol.for("react.suspense_list"),H=Symbol.for("react.memo"),Y=Symbol.for("react.lazy"),W=Symbol.for("react.activity"),nt=Symbol.for("react.memo_cache_sentinel"),U=Symbol.iterator;function P(o){return o===null||typeof o!="object"?null:(o=U&&o[U]||o["@@iterator"],typeof o=="function"?o:null)}var F=Symbol.for("react.client.reference");function M(o){if(o==null)return null;if(typeof o=="function")return o.$$typeof===F?null:o.displayName||o.name||null;if(typeof o=="string")return o;switch(o){case b:return"Fragment";case O:return"Profiler";case S:return"StrictMode";case _:return"Suspense";case A:return"SuspenseList";case W:return"Activity"}if(typeof o=="object")switch(o.$$typeof){case $:return"Portal";case k:return o.displayName||"Context";case E:return(o._context.displayName||"Context")+".Consumer";case D:var a=o.render;return o=o.displayName,o||(o=a.displayName||a.name||"",o=o!==""?"ForwardRef("+o+")":"ForwardRef"),o;case H:return a=o.displayName||null,a!==null?a:M(o.type)||"Memo";case Y:a=o._payload,o=o._init;try{return M(o(a))}catch{}}return null}var G=Array.isArray,T=t.__CLIENT_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,z=n.__DOM_INTERNALS_DO_NOT_USE_OR_WARN_USERS_THEY_CANNOT_UPGRADE,Z={pending:!1,data:null,method:null,action:null},Q=[],et=-1;function j(o){return{current:o}}function R(o){0>et||(o.current=Q[et],Q[et]=null,et--)}function J(o,a){et++,Q[et]=o.current,o.current=a}var st=j(null),ut=j(null),ft=j(null),dt=j(null);function rt(o,a){switch(J(ft,a),J(ut,o),J(st,null),a.nodeType){case 9:case 11:o=(o=a.documentElement)&&(o=o.namespaceURI)?hx(o):0;break;default:if(o=a.tagName,a=a.namespaceURI)a=hx(a),o=fx(a,o);else switch(o){case"svg":o=1;break;case"math":o=2;break;default:o=0}}R(st),J(st,o)}function ht(){R(st),R(ut),R(ft)}function Ct(o){o.memoizedState!==null&&J(dt,o);var a=st.current,h=fx(a,o.type);a!==h&&(J(ut,o),J(st,h))}function Et(o){ut.current===o&&(R(st),R(ut)),dt.current===o&&(R(dt),ac._currentValue=Z)}var St,Ot;function Nt(o){if(St===void 0)try{throw Error()}catch(h){var a=h.stack.trim().match(/\n( *(at )?)/);St=a&&a[1]||"",Ot=-1<h.stack.indexOf(`
43
+ at`)?" (<anonymous>)":-1<h.stack.indexOf("@")?"@unknown:0:0":""}return`
44
+ `+St+o+Ot}var Yt=!1;function Qt(o,a){if(!o||Yt)return"";Yt=!0;var h=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{var d={DetermineComponentFrameRoot:function(){try{if(a){var ct=function(){throw Error()};if(Object.defineProperty(ct.prototype,"props",{set:function(){throw Error()}}),typeof Reflect=="object"&&Reflect.construct){try{Reflect.construct(ct,[])}catch(it){var tt=it}Reflect.construct(o,[],ct)}else{try{ct.call()}catch(it){tt=it}o.call(ct.prototype)}}else{try{throw Error()}catch(it){tt=it}(ct=o())&&typeof ct.catch=="function"&&ct.catch(function(){})}}catch(it){if(it&&tt&&typeof it.stack=="string")return[it.stack,tt.stack]}return[null,null]}};d.DetermineComponentFrameRoot.displayName="DetermineComponentFrameRoot";var w=Object.getOwnPropertyDescriptor(d.DetermineComponentFrameRoot,"name");w&&w.configurable&&Object.defineProperty(d.DetermineComponentFrameRoot,"name",{value:"DetermineComponentFrameRoot"});var x=d.DetermineComponentFrameRoot(),C=x[0],N=x[1];if(C&&N){var B=C.split(`
45
+ `),K=N.split(`
46
+ `);for(w=d=0;d<B.length&&!B[d].includes("DetermineComponentFrameRoot");)d++;for(;w<K.length&&!K[w].includes("DetermineComponentFrameRoot");)w++;if(d===B.length||w===K.length)for(d=B.length-1,w=K.length-1;1<=d&&0<=w&&B[d]!==K[w];)w--;for(;1<=d&&0<=w;d--,w--)if(B[d]!==K[w]){if(d!==1||w!==1)do if(d--,w--,0>w||B[d]!==K[w]){var ot=`
47
+ `+B[d].replace(" at new "," at ");return o.displayName&&ot.includes("<anonymous>")&&(ot=ot.replace("<anonymous>",o.displayName)),ot}while(1<=d&&0<=w);break}}}finally{Yt=!1,Error.prepareStackTrace=h}return(h=o?o.displayName||o.name:"")?Nt(h):""}function fe(o,a){switch(o.tag){case 26:case 27:case 5:return Nt(o.type);case 16:return Nt("Lazy");case 13:return o.child!==a&&a!==null?Nt("Suspense Fallback"):Nt("Suspense");case 19:return Nt("SuspenseList");case 0:case 15:return Qt(o.type,!1);case 11:return Qt(o.type.render,!1);case 1:return Qt(o.type,!0);case 31:return Nt("Activity");default:return""}}function nn(o){try{var a="",h=null;do a+=fe(o,h),h=o,o=o.return;while(o);return a}catch(d){return`
48
+ Error generating stack: `+d.message+`
49
+ `+d.stack}}var hn=Object.prototype.hasOwnProperty,fn=e.unstable_scheduleCallback,Tn=e.unstable_cancelCallback,Mr=e.unstable_shouldYield,Ji=e.unstable_requestPaint,xe=e.unstable_now,Nn=e.unstable_getCurrentPriorityLevel,Zn=e.unstable_ImmediatePriority,Un=e.unstable_UserBlockingPriority,In=e.unstable_NormalPriority,ma=e.unstable_LowPriority,Ao=e.unstable_IdlePriority,pp=e.log,mp=e.unstable_setDisableYieldValue,Ar=null,sn=null;function Ei(o){if(typeof pp=="function"&&mp(o),sn&&typeof sn.setStrictMode=="function")try{sn.setStrictMode(Ar,o)}catch{}}var rn=Math.clz32?Math.clz32:wp,gp=Math.log,yp=Math.LN2;function wp(o){return o>>>=0,o===0?32:31-(gp(o)/yp|0)|0}var Ho=256,zo=262144,Bo=4194304;function ts(o){var a=o&42;if(a!==0)return a;switch(o&-o){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:return 64;case 128:return 128;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:return o&261888;case 262144:case 524288:case 1048576:case 2097152:return o&3932160;case 4194304:case 8388608:case 16777216:case 33554432:return o&62914560;case 67108864:return 67108864;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 0;default:return o}}function Yo(o,a,h){var d=o.pendingLanes;if(d===0)return 0;var w=0,x=o.suspendedLanes,C=o.pingedLanes;o=o.warmLanes;var N=d&134217727;return N!==0?(d=N&~x,d!==0?w=ts(d):(C&=N,C!==0?w=ts(C):h||(h=N&~o,h!==0&&(w=ts(h))))):(N=d&~x,N!==0?w=ts(N):C!==0?w=ts(C):h||(h=d&~o,h!==0&&(w=ts(h)))),w===0?0:a!==0&&a!==w&&(a&x)===0&&(x=w&-w,h=a&-a,x>=h||x===32&&(h&4194048)!==0)?a:w}function Hr(o,a){return(o.pendingLanes&~(o.suspendedLanes&~o.pingedLanes)&a)===0}function $p(o,a){switch(o){case 1:case 2:case 4:case 8:case 64:return a+250;case 16:case 32:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return a+5e3;case 4194304:case 8388608:case 16777216:case 33554432:return-1;case 67108864:case 134217728:case 268435456:case 536870912:case 1073741824:return-1;default:return-1}}function Su(){var o=Bo;return Bo<<=1,(Bo&62914560)===0&&(Bo=4194304),o}function ga(o){for(var a=[],h=0;31>h;h++)a.push(o);return a}function zr(o,a){o.pendingLanes|=a,a!==268435456&&(o.suspendedLanes=0,o.pingedLanes=0,o.warmLanes=0)}function xp(o,a,h,d,w,x){var C=o.pendingLanes;o.pendingLanes=h,o.suspendedLanes=0,o.pingedLanes=0,o.warmLanes=0,o.expiredLanes&=h,o.entangledLanes&=h,o.errorRecoveryDisabledLanes&=h,o.shellSuspendCounter=0;var N=o.entanglements,B=o.expirationTimes,K=o.hiddenUpdates;for(h=C&~h;0<h;){var ot=31-rn(h),ct=1<<ot;N[ot]=0,B[ot]=-1;var tt=K[ot];if(tt!==null)for(K[ot]=null,ot=0;ot<tt.length;ot++){var it=tt[ot];it!==null&&(it.lane&=-536870913)}h&=~ct}d!==0&&Ou(o,d,0),x!==0&&w===0&&o.tag!==0&&(o.suspendedLanes|=x&~(C&~a))}function Ou(o,a,h){o.pendingLanes|=a,o.suspendedLanes&=~a;var d=31-rn(a);o.entangledLanes|=a,o.entanglements[d]=o.entanglements[d]|1073741824|h&261930}function ku(o,a){var h=o.entangledLanes|=a;for(o=o.entanglements;h;){var d=31-rn(h),w=1<<d;w&a|o[d]&a&&(o[d]|=a),h&=~w}}function Cu(o,a){var h=a&-a;return h=(h&42)!==0?1:ya(h),(h&(o.suspendedLanes|a))!==0?0:h}function ya(o){switch(o){case 2:o=1;break;case 8:o=4;break;case 32:o=16;break;case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:case 4194304:case 8388608:case 16777216:case 33554432:o=128;break;case 268435456:o=134217728;break;default:o=0}return o}function wa(o){return o&=-o,2<o?8<o?(o&134217727)!==0?32:268435456:8:2}function Eu(){var o=z.p;return o!==0?o:(o=window.event,o===void 0?32:Ax(o.type))}function Du(o,a){var h=z.p;try{return z.p=o,a()}finally{z.p=h}}var Di=Math.random().toString(36).slice(2),Me="__reactFiber$"+Di,Ie="__reactProps$"+Di,es="__reactContainer$"+Di,Go="__reactEvents$"+Di,Tu="__reactListeners$"+Di,bp="__reactHandles$"+Di,Nu="__reactResources$"+Di,Br="__reactMarker$"+Di;function $a(o){delete o[Me],delete o[Ie],delete o[Go],delete o[Tu],delete o[bp]}function Ms(o){var a=o[Me];if(a)return a;for(var h=o.parentNode;h;){if(a=h[es]||h[Me]){if(h=a.alternate,a.child!==null||h!==null&&h.child!==null)for(o=$x(o);o!==null;){if(h=o[Me])return h;o=$x(o)}return a}o=h,h=o.parentNode}return null}function As(o){if(o=o[Me]||o[es]){var a=o.tag;if(a===5||a===6||a===13||a===31||a===26||a===27||a===3)return o}return null}function Hs(o){var a=o.tag;if(a===5||a===26||a===27||a===6)return o.stateNode;throw Error(i(33))}function zs(o){var a=o[Nu];return a||(a=o[Nu]={hoistableStyles:new Map,hoistableScripts:new Map}),a}function Ce(o){o[Br]=!0}var ju=new Set,Ru={};function ns(o,a){Bs(o,a),Bs(o+"Capture",a)}function Bs(o,a){for(Ru[o]=a,o=0;o<a.length;o++)ju.add(a[o])}var vp=RegExp("^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$"),_u={},xa={};function Sp(o){return hn.call(xa,o)?!0:hn.call(_u,o)?!1:vp.test(o)?xa[o]=!0:(_u[o]=!0,!1)}function Lo(o,a,h){if(Sp(a))if(h===null)o.removeAttribute(a);else{switch(typeof h){case"undefined":case"function":case"symbol":o.removeAttribute(a);return;case"boolean":var d=a.toLowerCase().slice(0,5);if(d!=="data-"&&d!=="aria-"){o.removeAttribute(a);return}}o.setAttribute(a,""+h)}}function Qo(o,a,h){if(h===null)o.removeAttribute(a);else{switch(typeof h){case"undefined":case"function":case"symbol":case"boolean":o.removeAttribute(a);return}o.setAttribute(a,""+h)}}function ui(o,a,h,d){if(d===null)o.removeAttribute(h);else{switch(typeof d){case"undefined":case"function":case"symbol":case"boolean":o.removeAttribute(h);return}o.setAttributeNS(a,h,""+d)}}function dn(o){switch(typeof o){case"bigint":case"boolean":case"number":case"string":case"undefined":return o;case"object":return o;default:return""}}function Mu(o){var a=o.type;return(o=o.nodeName)&&o.toLowerCase()==="input"&&(a==="checkbox"||a==="radio")}function Op(o,a,h){var d=Object.getOwnPropertyDescriptor(o.constructor.prototype,a);if(!o.hasOwnProperty(a)&&typeof d<"u"&&typeof d.get=="function"&&typeof d.set=="function"){var w=d.get,x=d.set;return Object.defineProperty(o,a,{configurable:!0,get:function(){return w.call(this)},set:function(C){h=""+C,x.call(this,C)}}),Object.defineProperty(o,a,{enumerable:d.enumerable}),{getValue:function(){return h},setValue:function(C){h=""+C},stopTracking:function(){o._valueTracker=null,delete o[a]}}}}function ba(o){if(!o._valueTracker){var a=Mu(o)?"checked":"value";o._valueTracker=Op(o,a,""+o[a])}}function Yr(o){if(!o)return!1;var a=o._valueTracker;if(!a)return!0;var h=a.getValue(),d="";return o&&(d=Mu(o)?o.checked?"true":"false":o.value),o=d,o!==h?(a.setValue(o),!0):!1}function Po(o){if(o=o||(typeof document<"u"?document:void 0),typeof o>"u")return null;try{return o.activeElement||o.body}catch{return o.body}}var Au=/[\n"\\]/g;function pn(o){return o.replace(Au,function(a){return"\\"+a.charCodeAt(0).toString(16)+" "})}function va(o,a,h,d,w,x,C,N){o.name="",C!=null&&typeof C!="function"&&typeof C!="symbol"&&typeof C!="boolean"?o.type=C:o.removeAttribute("type"),a!=null?C==="number"?(a===0&&o.value===""||o.value!=a)&&(o.value=""+dn(a)):o.value!==""+dn(a)&&(o.value=""+dn(a)):C!=="submit"&&C!=="reset"||o.removeAttribute("value"),a!=null?Sa(o,C,dn(a)):h!=null?Sa(o,C,dn(h)):d!=null&&o.removeAttribute("value"),w==null&&x!=null&&(o.defaultChecked=!!x),w!=null&&(o.checked=w&&typeof w!="function"&&typeof w!="symbol"),N!=null&&typeof N!="function"&&typeof N!="symbol"&&typeof N!="boolean"?o.name=""+dn(N):o.removeAttribute("name")}function qo(o,a,h,d,w,x,C,N){if(x!=null&&typeof x!="function"&&typeof x!="symbol"&&typeof x!="boolean"&&(o.type=x),a!=null||h!=null){if(!(x!=="submit"&&x!=="reset"||a!=null)){ba(o);return}h=h!=null?""+dn(h):"",a=a!=null?""+dn(a):h,N||a===o.value||(o.value=a),o.defaultValue=a}d=d??w,d=typeof d!="function"&&typeof d!="symbol"&&!!d,o.checked=N?o.checked:!!d,o.defaultChecked=!!d,C!=null&&typeof C!="function"&&typeof C!="symbol"&&typeof C!="boolean"&&(o.name=C),ba(o)}function Sa(o,a,h){a==="number"&&Po(o.ownerDocument)===o||o.defaultValue===""+h||(o.defaultValue=""+h)}function Ys(o,a,h,d){if(o=o.options,a){a={};for(var w=0;w<h.length;w++)a["$"+h[w]]=!0;for(h=0;h<o.length;h++)w=a.hasOwnProperty("$"+o[h].value),o[h].selected!==w&&(o[h].selected=w),w&&d&&(o[h].defaultSelected=!0)}else{for(h=""+dn(h),a=null,w=0;w<o.length;w++){if(o[w].value===h){o[w].selected=!0,d&&(o[w].defaultSelected=!0);return}a!==null||o[w].disabled||(a=o[w])}a!==null&&(a.selected=!0)}}function Oa(o,a,h){if(a!=null&&(a=""+dn(a),a!==o.value&&(o.value=a),h==null)){o.defaultValue!==a&&(o.defaultValue=a);return}o.defaultValue=h!=null?""+dn(h):""}function l5(o,a,h,d){if(a==null){if(d!=null){if(h!=null)throw Error(i(92));if(G(d)){if(1<d.length)throw Error(i(93));d=d[0]}h=d}h==null&&(h=""),a=h}h=dn(a),o.defaultValue=h,d=o.textContent,d===h&&d!==""&&d!==null&&(o.value=d),ba(o)}function Wo(o,a){if(a){var h=o.firstChild;if(h&&h===o.lastChild&&h.nodeType===3){h.nodeValue=a;return}}o.textContent=a}var V3=new Set("animationIterationCount aspectRatio borderImageOutset borderImageSlice borderImageWidth boxFlex boxFlexGroup boxOrdinalGroup columnCount columns flex flexGrow flexPositive flexShrink flexNegative flexOrder gridArea gridRow gridRowEnd gridRowSpan gridRowStart gridColumn gridColumnEnd gridColumnSpan gridColumnStart fontWeight lineClamp lineHeight opacity order orphans scale tabSize widows zIndex zoom fillOpacity floodOpacity stopOpacity strokeDasharray strokeDashoffset strokeMiterlimit strokeOpacity strokeWidth MozAnimationIterationCount MozBoxFlex MozBoxFlexGroup MozLineClamp msAnimationIterationCount msFlex msZoom msFlexGrow msFlexNegative msFlexOrder msFlexPositive msFlexShrink msGridColumn msGridColumnSpan msGridRow msGridRowSpan WebkitAnimationIterationCount WebkitBoxFlex WebKitBoxFlexGroup WebkitBoxOrdinalGroup WebkitColumnCount WebkitColumns WebkitFlex WebkitFlexGrow WebkitFlexPositive WebkitFlexShrink WebkitLineClamp".split(" "));function a5(o,a,h){var d=a.indexOf("--")===0;h==null||typeof h=="boolean"||h===""?d?o.setProperty(a,""):a==="float"?o.cssFloat="":o[a]="":d?o.setProperty(a,h):typeof h!="number"||h===0||V3.has(a)?a==="float"?o.cssFloat=h:o[a]=(""+h).trim():o[a]=h+"px"}function c5(o,a,h){if(a!=null&&typeof a!="object")throw Error(i(62));if(o=o.style,h!=null){for(var d in h)!h.hasOwnProperty(d)||a!=null&&a.hasOwnProperty(d)||(d.indexOf("--")===0?o.setProperty(d,""):d==="float"?o.cssFloat="":o[d]="");for(var w in a)d=a[w],a.hasOwnProperty(w)&&h[w]!==d&&a5(o,w,d)}else for(var x in a)a.hasOwnProperty(x)&&a5(o,x,a[x])}function kp(o){if(o.indexOf("-")===-1)return!1;switch(o){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var X3=new Map([["acceptCharset","accept-charset"],["htmlFor","for"],["httpEquiv","http-equiv"],["crossOrigin","crossorigin"],["accentHeight","accent-height"],["alignmentBaseline","alignment-baseline"],["arabicForm","arabic-form"],["baselineShift","baseline-shift"],["capHeight","cap-height"],["clipPath","clip-path"],["clipRule","clip-rule"],["colorInterpolation","color-interpolation"],["colorInterpolationFilters","color-interpolation-filters"],["colorProfile","color-profile"],["colorRendering","color-rendering"],["dominantBaseline","dominant-baseline"],["enableBackground","enable-background"],["fillOpacity","fill-opacity"],["fillRule","fill-rule"],["floodColor","flood-color"],["floodOpacity","flood-opacity"],["fontFamily","font-family"],["fontSize","font-size"],["fontSizeAdjust","font-size-adjust"],["fontStretch","font-stretch"],["fontStyle","font-style"],["fontVariant","font-variant"],["fontWeight","font-weight"],["glyphName","glyph-name"],["glyphOrientationHorizontal","glyph-orientation-horizontal"],["glyphOrientationVertical","glyph-orientation-vertical"],["horizAdvX","horiz-adv-x"],["horizOriginX","horiz-origin-x"],["imageRendering","image-rendering"],["letterSpacing","letter-spacing"],["lightingColor","lighting-color"],["markerEnd","marker-end"],["markerMid","marker-mid"],["markerStart","marker-start"],["overlinePosition","overline-position"],["overlineThickness","overline-thickness"],["paintOrder","paint-order"],["panose-1","panose-1"],["pointerEvents","pointer-events"],["renderingIntent","rendering-intent"],["shapeRendering","shape-rendering"],["stopColor","stop-color"],["stopOpacity","stop-opacity"],["strikethroughPosition","strikethrough-position"],["strikethroughThickness","strikethrough-thickness"],["strokeDasharray","stroke-dasharray"],["strokeDashoffset","stroke-dashoffset"],["strokeLinecap","stroke-linecap"],["strokeLinejoin","stroke-linejoin"],["strokeMiterlimit","stroke-miterlimit"],["strokeOpacity","stroke-opacity"],["strokeWidth","stroke-width"],["textAnchor","text-anchor"],["textDecoration","text-decoration"],["textRendering","text-rendering"],["transformOrigin","transform-origin"],["underlinePosition","underline-position"],["underlineThickness","underline-thickness"],["unicodeBidi","unicode-bidi"],["unicodeRange","unicode-range"],["unitsPerEm","units-per-em"],["vAlphabetic","v-alphabetic"],["vHanging","v-hanging"],["vIdeographic","v-ideographic"],["vMathematical","v-mathematical"],["vectorEffect","vector-effect"],["vertAdvY","vert-adv-y"],["vertOriginX","vert-origin-x"],["vertOriginY","vert-origin-y"],["wordSpacing","word-spacing"],["writingMode","writing-mode"],["xmlnsXlink","xmlns:xlink"],["xHeight","x-height"]]),K3=/^[\u0000-\u001F ]*j[\r\n\t]*a[\r\n\t]*v[\r\n\t]*a[\r\n\t]*s[\r\n\t]*c[\r\n\t]*r[\r\n\t]*i[\r\n\t]*p[\r\n\t]*t[\r\n\t]*:/i;function Hu(o){return K3.test(""+o)?"javascript:throw new Error('React has blocked a javascript: URL as a security precaution.')":o}function is(){}var Cp=null;function Ep(o){return o=o.target||o.srcElement||window,o.correspondingUseElement&&(o=o.correspondingUseElement),o.nodeType===3?o.parentNode:o}var Zo=null,Uo=null;function u5(o){var a=As(o);if(a&&(o=a.stateNode)){var h=o[Ie]||null;t:switch(o=a.stateNode,a.type){case"input":if(va(o,h.value,h.defaultValue,h.defaultValue,h.checked,h.defaultChecked,h.type,h.name),a=h.name,h.type==="radio"&&a!=null){for(h=o;h.parentNode;)h=h.parentNode;for(h=h.querySelectorAll('input[name="'+pn(""+a)+'"][type="radio"]'),a=0;a<h.length;a++){var d=h[a];if(d!==o&&d.form===o.form){var w=d[Ie]||null;if(!w)throw Error(i(90));va(d,w.value,w.defaultValue,w.defaultValue,w.checked,w.defaultChecked,w.type,w.name)}}for(a=0;a<h.length;a++)d=h[a],d.form===o.form&&Yr(d)}break t;case"textarea":Oa(o,h.value,h.defaultValue);break t;case"select":a=h.value,a!=null&&Ys(o,!!h.multiple,a,!1)}}}var Dp=!1;function h5(o,a,h){if(Dp)return o(a,h);Dp=!0;try{var d=o(a);return d}finally{if(Dp=!1,(Zo!==null||Uo!==null)&&(Sh(),Zo&&(a=Zo,o=Uo,Uo=Zo=null,u5(a),o)))for(a=0;a<o.length;a++)u5(o[a])}}function ka(o,a){var h=o.stateNode;if(h===null)return null;var d=h[Ie]||null;if(d===null)return null;h=d[a];t:switch(a){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(d=!d.disabled)||(o=o.type,d=!(o==="button"||o==="input"||o==="select"||o==="textarea")),o=!d;break t;default:o=!1}if(o)return null;if(h&&typeof h!="function")throw Error(i(231,a,typeof h));return h}var ss=!(typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Tp=!1;if(ss)try{var Ca={};Object.defineProperty(Ca,"passive",{get:function(){Tp=!0}}),window.addEventListener("test",Ca,Ca),window.removeEventListener("test",Ca,Ca)}catch{Tp=!1}var Gs=null,Np=null,zu=null;function f5(){if(zu)return zu;var o,a=Np,h=a.length,d,w="value"in Gs?Gs.value:Gs.textContent,x=w.length;for(o=0;o<h&&a[o]===w[o];o++);var C=h-o;for(d=1;d<=C&&a[h-d]===w[x-d];d++);return zu=w.slice(o,1<d?1-d:void 0)}function Bu(o){var a=o.keyCode;return"charCode"in o?(o=o.charCode,o===0&&a===13&&(o=13)):o=a,o===10&&(o=13),32<=o||o===13?o:0}function Yu(){return!0}function d5(){return!1}function mn(o){function a(h,d,w,x,C){this._reactName=h,this._targetInst=w,this.type=d,this.nativeEvent=x,this.target=C,this.currentTarget=null;for(var N in o)o.hasOwnProperty(N)&&(h=o[N],this[N]=h?h(x):x[N]);return this.isDefaultPrevented=(x.defaultPrevented!=null?x.defaultPrevented:x.returnValue===!1)?Yu:d5,this.isPropagationStopped=d5,this}return m(a.prototype,{preventDefault:function(){this.defaultPrevented=!0;var h=this.nativeEvent;h&&(h.preventDefault?h.preventDefault():typeof h.returnValue!="unknown"&&(h.returnValue=!1),this.isDefaultPrevented=Yu)},stopPropagation:function(){var h=this.nativeEvent;h&&(h.stopPropagation?h.stopPropagation():typeof h.cancelBubble!="unknown"&&(h.cancelBubble=!0),this.isPropagationStopped=Yu)},persist:function(){},isPersistent:Yu}),a}var Gr={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(o){return o.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},Gu=mn(Gr),Ea=m({},Gr,{view:0,detail:0}),J3=mn(Ea),jp,Rp,Da,Lu=m({},Ea,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Mp,button:0,buttons:0,relatedTarget:function(o){return o.relatedTarget===void 0?o.fromElement===o.srcElement?o.toElement:o.fromElement:o.relatedTarget},movementX:function(o){return"movementX"in o?o.movementX:(o!==Da&&(Da&&o.type==="mousemove"?(jp=o.screenX-Da.screenX,Rp=o.screenY-Da.screenY):Rp=jp=0,Da=o),jp)},movementY:function(o){return"movementY"in o?o.movementY:Rp}}),p5=mn(Lu),tD=m({},Lu,{dataTransfer:0}),eD=mn(tD),nD=m({},Ea,{relatedTarget:0}),_p=mn(nD),iD=m({},Gr,{animationName:0,elapsedTime:0,pseudoElement:0}),sD=mn(iD),rD=m({},Gr,{clipboardData:function(o){return"clipboardData"in o?o.clipboardData:window.clipboardData}}),oD=mn(rD),lD=m({},Gr,{data:0}),m5=mn(lD),aD={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},cD={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},uD={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function hD(o){var a=this.nativeEvent;return a.getModifierState?a.getModifierState(o):(o=uD[o])?!!a[o]:!1}function Mp(){return hD}var fD=m({},Ea,{key:function(o){if(o.key){var a=aD[o.key]||o.key;if(a!=="Unidentified")return a}return o.type==="keypress"?(o=Bu(o),o===13?"Enter":String.fromCharCode(o)):o.type==="keydown"||o.type==="keyup"?cD[o.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Mp,charCode:function(o){return o.type==="keypress"?Bu(o):0},keyCode:function(o){return o.type==="keydown"||o.type==="keyup"?o.keyCode:0},which:function(o){return o.type==="keypress"?Bu(o):o.type==="keydown"||o.type==="keyup"?o.keyCode:0}}),dD=mn(fD),pD=m({},Lu,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),g5=mn(pD),mD=m({},Ea,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Mp}),gD=mn(mD),yD=m({},Gr,{propertyName:0,elapsedTime:0,pseudoElement:0}),wD=mn(yD),$D=m({},Lu,{deltaX:function(o){return"deltaX"in o?o.deltaX:"wheelDeltaX"in o?-o.wheelDeltaX:0},deltaY:function(o){return"deltaY"in o?o.deltaY:"wheelDeltaY"in o?-o.wheelDeltaY:"wheelDelta"in o?-o.wheelDelta:0},deltaZ:0,deltaMode:0}),xD=mn($D),bD=m({},Gr,{newState:0,oldState:0}),vD=mn(bD),SD=[9,13,27,32],Ap=ss&&"CompositionEvent"in window,Ta=null;ss&&"documentMode"in document&&(Ta=document.documentMode);var OD=ss&&"TextEvent"in window&&!Ta,y5=ss&&(!Ap||Ta&&8<Ta&&11>=Ta),w5=" ",$5=!1;function x5(o,a){switch(o){case"keyup":return SD.indexOf(a.keyCode)!==-1;case"keydown":return a.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function b5(o){return o=o.detail,typeof o=="object"&&"data"in o?o.data:null}var Io=!1;function kD(o,a){switch(o){case"compositionend":return b5(a);case"keypress":return a.which!==32?null:($5=!0,w5);case"textInput":return o=a.data,o===w5&&$5?null:o;default:return null}}function CD(o,a){if(Io)return o==="compositionend"||!Ap&&x5(o,a)?(o=f5(),zu=Np=Gs=null,Io=!1,o):null;switch(o){case"paste":return null;case"keypress":if(!(a.ctrlKey||a.altKey||a.metaKey)||a.ctrlKey&&a.altKey){if(a.char&&1<a.char.length)return a.char;if(a.which)return String.fromCharCode(a.which)}return null;case"compositionend":return y5&&a.locale!=="ko"?null:a.data;default:return null}}var ED={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function v5(o){var a=o&&o.nodeName&&o.nodeName.toLowerCase();return a==="input"?!!ED[o.type]:a==="textarea"}function S5(o,a,h,d){Zo?Uo?Uo.push(d):Uo=[d]:Zo=d,a=Nh(a,"onChange"),0<a.length&&(h=new Gu("onChange","change",null,h,d),o.push({event:h,listeners:a}))}var Na=null,ja=null;function DD(o){rx(o,0)}function Qu(o){var a=Hs(o);if(Yr(a))return o}function O5(o,a){if(o==="change")return a}var k5=!1;if(ss){var Hp;if(ss){var zp="oninput"in document;if(!zp){var C5=document.createElement("div");C5.setAttribute("oninput","return;"),zp=typeof C5.oninput=="function"}Hp=zp}else Hp=!1;k5=Hp&&(!document.documentMode||9<document.documentMode)}function E5(){Na&&(Na.detachEvent("onpropertychange",D5),ja=Na=null)}function D5(o){if(o.propertyName==="value"&&Qu(ja)){var a=[];S5(a,ja,o,Ep(o)),h5(DD,a)}}function TD(o,a,h){o==="focusin"?(E5(),Na=a,ja=h,Na.attachEvent("onpropertychange",D5)):o==="focusout"&&E5()}function ND(o){if(o==="selectionchange"||o==="keyup"||o==="keydown")return Qu(ja)}function jD(o,a){if(o==="click")return Qu(a)}function RD(o,a){if(o==="input"||o==="change")return Qu(a)}function _D(o,a){return o===a&&(o!==0||1/o===1/a)||o!==o&&a!==a}var jn=typeof Object.is=="function"?Object.is:_D;function Ra(o,a){if(jn(o,a))return!0;if(typeof o!="object"||o===null||typeof a!="object"||a===null)return!1;var h=Object.keys(o),d=Object.keys(a);if(h.length!==d.length)return!1;for(d=0;d<h.length;d++){var w=h[d];if(!hn.call(a,w)||!jn(o[w],a[w]))return!1}return!0}function T5(o){for(;o&&o.firstChild;)o=o.firstChild;return o}function N5(o,a){var h=T5(o);o=0;for(var d;h;){if(h.nodeType===3){if(d=o+h.textContent.length,o<=a&&d>=a)return{node:h,offset:a-o};o=d}t:{for(;h;){if(h.nextSibling){h=h.nextSibling;break t}h=h.parentNode}h=void 0}h=T5(h)}}function j5(o,a){return o&&a?o===a?!0:o&&o.nodeType===3?!1:a&&a.nodeType===3?j5(o,a.parentNode):"contains"in o?o.contains(a):o.compareDocumentPosition?!!(o.compareDocumentPosition(a)&16):!1:!1}function R5(o){o=o!=null&&o.ownerDocument!=null&&o.ownerDocument.defaultView!=null?o.ownerDocument.defaultView:window;for(var a=Po(o.document);a instanceof o.HTMLIFrameElement;){try{var h=typeof a.contentWindow.location.href=="string"}catch{h=!1}if(h)o=a.contentWindow;else break;a=Po(o.document)}return a}function Bp(o){var a=o&&o.nodeName&&o.nodeName.toLowerCase();return a&&(a==="input"&&(o.type==="text"||o.type==="search"||o.type==="tel"||o.type==="url"||o.type==="password")||a==="textarea"||o.contentEditable==="true")}var MD=ss&&"documentMode"in document&&11>=document.documentMode,Fo=null,Yp=null,_a=null,Gp=!1;function _5(o,a,h){var d=h.window===h?h.document:h.nodeType===9?h:h.ownerDocument;Gp||Fo==null||Fo!==Po(d)||(d=Fo,"selectionStart"in d&&Bp(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),_a&&Ra(_a,d)||(_a=d,d=Nh(Yp,"onSelect"),0<d.length&&(a=new Gu("onSelect","select",null,a,h),o.push({event:a,listeners:d}),a.target=Fo)))}function Lr(o,a){var h={};return h[o.toLowerCase()]=a.toLowerCase(),h["Webkit"+o]="webkit"+a,h["Moz"+o]="moz"+a,h}var Vo={animationend:Lr("Animation","AnimationEnd"),animationiteration:Lr("Animation","AnimationIteration"),animationstart:Lr("Animation","AnimationStart"),transitionrun:Lr("Transition","TransitionRun"),transitionstart:Lr("Transition","TransitionStart"),transitioncancel:Lr("Transition","TransitionCancel"),transitionend:Lr("Transition","TransitionEnd")},Lp={},M5={};ss&&(M5=document.createElement("div").style,"AnimationEvent"in window||(delete Vo.animationend.animation,delete Vo.animationiteration.animation,delete Vo.animationstart.animation),"TransitionEvent"in window||delete Vo.transitionend.transition);function Qr(o){if(Lp[o])return Lp[o];if(!Vo[o])return o;var a=Vo[o],h;for(h in a)if(a.hasOwnProperty(h)&&h in M5)return Lp[o]=a[h];return o}var A5=Qr("animationend"),H5=Qr("animationiteration"),z5=Qr("animationstart"),AD=Qr("transitionrun"),HD=Qr("transitionstart"),zD=Qr("transitioncancel"),B5=Qr("transitionend"),Y5=new Map,Qp="abort auxClick beforeToggle cancel canPlay canPlayThrough click close contextMenu copy cut drag dragEnd dragEnter dragExit dragLeave dragOver dragStart drop durationChange emptied encrypted ended error gotPointerCapture input invalid keyDown keyPress keyUp load loadedData loadedMetadata loadStart lostPointerCapture mouseDown mouseMove mouseOut mouseOver mouseUp paste pause play playing pointerCancel pointerDown pointerMove pointerOut pointerOver pointerUp progress rateChange reset resize seeked seeking stalled submit suspend timeUpdate touchCancel touchEnd touchStart volumeChange scroll toggle touchMove waiting wheel".split(" ");Qp.push("scrollEnd");function hi(o,a){Y5.set(o,a),ns(a,[o])}var Pu=typeof reportError=="function"?reportError:function(o){if(typeof window=="object"&&typeof window.ErrorEvent=="function"){var a=new window.ErrorEvent("error",{bubbles:!0,cancelable:!0,message:typeof o=="object"&&o!==null&&typeof o.message=="string"?String(o.message):String(o),error:o});if(!window.dispatchEvent(a))return}else if(typeof process=="object"&&typeof process.emit=="function"){process.emit("uncaughtException",o);return}console.error(o)},Fn=[],Xo=0,Pp=0;function qu(){for(var o=Xo,a=Pp=Xo=0;a<o;){var h=Fn[a];Fn[a++]=null;var d=Fn[a];Fn[a++]=null;var w=Fn[a];Fn[a++]=null;var x=Fn[a];if(Fn[a++]=null,d!==null&&w!==null){var C=d.pending;C===null?w.next=w:(w.next=C.next,C.next=w),d.pending=w}x!==0&&G5(h,w,x)}}function Wu(o,a,h,d){Fn[Xo++]=o,Fn[Xo++]=a,Fn[Xo++]=h,Fn[Xo++]=d,Pp|=d,o.lanes|=d,o=o.alternate,o!==null&&(o.lanes|=d)}function qp(o,a,h,d){return Wu(o,a,h,d),Zu(o)}function Pr(o,a){return Wu(o,null,null,a),Zu(o)}function G5(o,a,h){o.lanes|=h;var d=o.alternate;d!==null&&(d.lanes|=h);for(var w=!1,x=o.return;x!==null;)x.childLanes|=h,d=x.alternate,d!==null&&(d.childLanes|=h),x.tag===22&&(o=x.stateNode,o===null||o._visibility&1||(w=!0)),o=x,x=x.return;return o.tag===3?(x=o.stateNode,w&&a!==null&&(w=31-rn(h),o=x.hiddenUpdates,d=o[w],d===null?o[w]=[a]:d.push(a),a.lane=h|536870912),x):null}function Zu(o){if(50<ec)throw ec=0,Jm=null,Error(i(185));for(var a=o.return;a!==null;)o=a,a=o.return;return o.tag===3?o.stateNode:null}var Ko={};function BD(o,a,h,d){this.tag=o,this.key=h,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.refCleanup=this.ref=null,this.pendingProps=a,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=d,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Rn(o,a,h,d){return new BD(o,a,h,d)}function Wp(o){return o=o.prototype,!(!o||!o.isReactComponent)}function rs(o,a){var h=o.alternate;return h===null?(h=Rn(o.tag,a,o.key,o.mode),h.elementType=o.elementType,h.type=o.type,h.stateNode=o.stateNode,h.alternate=o,o.alternate=h):(h.pendingProps=a,h.type=o.type,h.flags=0,h.subtreeFlags=0,h.deletions=null),h.flags=o.flags&65011712,h.childLanes=o.childLanes,h.lanes=o.lanes,h.child=o.child,h.memoizedProps=o.memoizedProps,h.memoizedState=o.memoizedState,h.updateQueue=o.updateQueue,a=o.dependencies,h.dependencies=a===null?null:{lanes:a.lanes,firstContext:a.firstContext},h.sibling=o.sibling,h.index=o.index,h.ref=o.ref,h.refCleanup=o.refCleanup,h}function L5(o,a){o.flags&=65011714;var h=o.alternate;return h===null?(o.childLanes=0,o.lanes=a,o.child=null,o.subtreeFlags=0,o.memoizedProps=null,o.memoizedState=null,o.updateQueue=null,o.dependencies=null,o.stateNode=null):(o.childLanes=h.childLanes,o.lanes=h.lanes,o.child=h.child,o.subtreeFlags=0,o.deletions=null,o.memoizedProps=h.memoizedProps,o.memoizedState=h.memoizedState,o.updateQueue=h.updateQueue,o.type=h.type,a=h.dependencies,o.dependencies=a===null?null:{lanes:a.lanes,firstContext:a.firstContext}),o}function Uu(o,a,h,d,w,x){var C=0;if(d=o,typeof o=="function")Wp(o)&&(C=1);else if(typeof o=="string")C=PT(o,h,st.current)?26:o==="html"||o==="head"||o==="body"?27:5;else t:switch(o){case W:return o=Rn(31,h,a,w),o.elementType=W,o.lanes=x,o;case b:return qr(h.children,w,x,a);case S:C=8,w|=24;break;case O:return o=Rn(12,h,a,w|2),o.elementType=O,o.lanes=x,o;case _:return o=Rn(13,h,a,w),o.elementType=_,o.lanes=x,o;case A:return o=Rn(19,h,a,w),o.elementType=A,o.lanes=x,o;default:if(typeof o=="object"&&o!==null)switch(o.$$typeof){case k:C=10;break t;case E:C=9;break t;case D:C=11;break t;case H:C=14;break t;case Y:C=16,d=null;break t}C=29,h=Error(i(130,o===null?"null":typeof o,"")),d=null}return a=Rn(C,h,a,w),a.elementType=o,a.type=d,a.lanes=x,a}function qr(o,a,h,d){return o=Rn(7,o,d,a),o.lanes=h,o}function Zp(o,a,h){return o=Rn(6,o,null,a),o.lanes=h,o}function Q5(o){var a=Rn(18,null,null,0);return a.stateNode=o,a}function Up(o,a,h){return a=Rn(4,o.children!==null?o.children:[],o.key,a),a.lanes=h,a.stateNode={containerInfo:o.containerInfo,pendingChildren:null,implementation:o.implementation},a}var P5=new WeakMap;function Vn(o,a){if(typeof o=="object"&&o!==null){var h=P5.get(o);return h!==void 0?h:(a={value:o,source:a,stack:nn(a)},P5.set(o,a),a)}return{value:o,source:a,stack:nn(a)}}var Jo=[],tl=0,Iu=null,Ma=0,Xn=[],Kn=0,Ls=null,Ti=1,Ni="";function os(o,a){Jo[tl++]=Ma,Jo[tl++]=Iu,Iu=o,Ma=a}function q5(o,a,h){Xn[Kn++]=Ti,Xn[Kn++]=Ni,Xn[Kn++]=Ls,Ls=o;var d=Ti;o=Ni;var w=32-rn(d)-1;d&=~(1<<w),h+=1;var x=32-rn(a)+w;if(30<x){var C=w-w%5;x=(d&(1<<C)-1).toString(32),d>>=C,w-=C,Ti=1<<32-rn(a)+w|h<<w|d,Ni=x+o}else Ti=1<<x|h<<w|d,Ni=o}function Ip(o){o.return!==null&&(os(o,1),q5(o,1,0))}function Fp(o){for(;o===Iu;)Iu=Jo[--tl],Jo[tl]=null,Ma=Jo[--tl],Jo[tl]=null;for(;o===Ls;)Ls=Xn[--Kn],Xn[Kn]=null,Ni=Xn[--Kn],Xn[Kn]=null,Ti=Xn[--Kn],Xn[Kn]=null}function W5(o,a){Xn[Kn++]=Ti,Xn[Kn++]=Ni,Xn[Kn++]=Ls,Ti=a.id,Ni=a.overflow,Ls=o}var Le=null,ce=null,Pt=!1,Qs=null,Jn=!1,Vp=Error(i(519));function Ps(o){var a=Error(i(418,1<arguments.length&&arguments[1]!==void 0&&arguments[1]?"text":"HTML",""));throw Aa(Vn(a,o)),Vp}function Z5(o){var a=o.stateNode,h=o.type,d=o.memoizedProps;switch(a[Me]=o,a[Ie]=d,h){case"dialog":zt("cancel",a),zt("close",a);break;case"iframe":case"object":case"embed":zt("load",a);break;case"video":case"audio":for(h=0;h<ic.length;h++)zt(ic[h],a);break;case"source":zt("error",a);break;case"img":case"image":case"link":zt("error",a),zt("load",a);break;case"details":zt("toggle",a);break;case"input":zt("invalid",a),qo(a,d.value,d.defaultValue,d.checked,d.defaultChecked,d.type,d.name,!0);break;case"select":zt("invalid",a);break;case"textarea":zt("invalid",a),l5(a,d.value,d.defaultValue,d.children)}h=d.children,typeof h!="string"&&typeof h!="number"&&typeof h!="bigint"||a.textContent===""+h||d.suppressHydrationWarning===!0||cx(a.textContent,h)?(d.popover!=null&&(zt("beforetoggle",a),zt("toggle",a)),d.onScroll!=null&&zt("scroll",a),d.onScrollEnd!=null&&zt("scrollend",a),d.onClick!=null&&(a.onclick=is),a=!0):a=!1,a||Ps(o,!0)}function U5(o){for(Le=o.return;Le;)switch(Le.tag){case 5:case 31:case 13:Jn=!1;return;case 27:case 3:Jn=!0;return;default:Le=Le.return}}function el(o){if(o!==Le)return!1;if(!Pt)return U5(o),Pt=!0,!1;var a=o.tag,h;if((h=a!==3&&a!==27)&&((h=a===5)&&(h=o.type,h=!(h!=="form"&&h!=="button")||pg(o.type,o.memoizedProps)),h=!h),h&&ce&&Ps(o),U5(o),a===13){if(o=o.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(i(317));ce=wx(o)}else if(a===31){if(o=o.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(i(317));ce=wx(o)}else a===27?(a=ce,ir(o.type)?(o=$g,$g=null,ce=o):ce=a):ce=Le?ei(o.stateNode.nextSibling):null;return!0}function Wr(){ce=Le=null,Pt=!1}function Xp(){var o=Qs;return o!==null&&($n===null?$n=o:$n.push.apply($n,o),Qs=null),o}function Aa(o){Qs===null?Qs=[o]:Qs.push(o)}var Kp=j(null),Zr=null,ls=null;function qs(o,a,h){J(Kp,a._currentValue),a._currentValue=h}function as(o){o._currentValue=Kp.current,R(Kp)}function Jp(o,a,h){for(;o!==null;){var d=o.alternate;if((o.childLanes&a)!==a?(o.childLanes|=a,d!==null&&(d.childLanes|=a)):d!==null&&(d.childLanes&a)!==a&&(d.childLanes|=a),o===h)break;o=o.return}}function tm(o,a,h,d){var w=o.child;for(w!==null&&(w.return=o);w!==null;){var x=w.dependencies;if(x!==null){var C=w.child;x=x.firstContext;t:for(;x!==null;){var N=x;x=w;for(var B=0;B<a.length;B++)if(N.context===a[B]){x.lanes|=h,N=x.alternate,N!==null&&(N.lanes|=h),Jp(x.return,h,o),d||(C=null);break t}x=N.next}}else if(w.tag===18){if(C=w.return,C===null)throw Error(i(341));C.lanes|=h,x=C.alternate,x!==null&&(x.lanes|=h),Jp(C,h,o),C=null}else C=w.child;if(C!==null)C.return=w;else for(C=w;C!==null;){if(C===o){C=null;break}if(w=C.sibling,w!==null){w.return=C.return,C=w;break}C=C.return}w=C}}function nl(o,a,h,d){o=null;for(var w=a,x=!1;w!==null;){if(!x){if((w.flags&524288)!==0)x=!0;else if((w.flags&262144)!==0)break}if(w.tag===10){var C=w.alternate;if(C===null)throw Error(i(387));if(C=C.memoizedProps,C!==null){var N=w.type;jn(w.pendingProps.value,C.value)||(o!==null?o.push(N):o=[N])}}else if(w===dt.current){if(C=w.alternate,C===null)throw Error(i(387));C.memoizedState.memoizedState!==w.memoizedState.memoizedState&&(o!==null?o.push(ac):o=[ac])}w=w.return}o!==null&&tm(a,o,h,d),a.flags|=262144}function Fu(o){for(o=o.firstContext;o!==null;){if(!jn(o.context._currentValue,o.memoizedValue))return!0;o=o.next}return!1}function Ur(o){Zr=o,ls=null,o=o.dependencies,o!==null&&(o.firstContext=null)}function Qe(o){return I5(Zr,o)}function Vu(o,a){return Zr===null&&Ur(o),I5(o,a)}function I5(o,a){var h=a._currentValue;if(a={context:a,memoizedValue:h,next:null},ls===null){if(o===null)throw Error(i(308));ls=a,o.dependencies={lanes:0,firstContext:a},o.flags|=524288}else ls=ls.next=a;return h}var YD=typeof AbortController<"u"?AbortController:function(){var o=[],a=this.signal={aborted:!1,addEventListener:function(h,d){o.push(d)}};this.abort=function(){a.aborted=!0,o.forEach(function(h){return h()})}},GD=e.unstable_scheduleCallback,LD=e.unstable_NormalPriority,Ee={$$typeof:k,Consumer:null,Provider:null,_currentValue:null,_currentValue2:null,_threadCount:0};function em(){return{controller:new YD,data:new Map,refCount:0}}function Ha(o){o.refCount--,o.refCount===0&&GD(LD,function(){o.controller.abort()})}var za=null,nm=0,il=0,sl=null;function QD(o,a){if(za===null){var h=za=[];nm=0,il=rg(),sl={status:"pending",value:void 0,then:function(d){h.push(d)}}}return nm++,a.then(F5,F5),a}function F5(){if(--nm===0&&za!==null){sl!==null&&(sl.status="fulfilled");var o=za;za=null,il=0,sl=null;for(var a=0;a<o.length;a++)(0,o[a])()}}function PD(o,a){var h=[],d={status:"pending",value:null,reason:null,then:function(w){h.push(w)}};return o.then(function(){d.status="fulfilled",d.value=a;for(var w=0;w<h.length;w++)(0,h[w])(a)},function(w){for(d.status="rejected",d.reason=w,w=0;w<h.length;w++)(0,h[w])(void 0)}),d}var V5=T.S;T.S=function(o,a){_2=xe(),typeof a=="object"&&a!==null&&typeof a.then=="function"&&QD(o,a),V5!==null&&V5(o,a)};var Ir=j(null);function im(){var o=Ir.current;return o!==null?o:se.pooledCache}function Xu(o,a){a===null?J(Ir,Ir.current):J(Ir,a.pool)}function X5(){var o=im();return o===null?null:{parent:Ee._currentValue,pool:o}}var rl=Error(i(460)),sm=Error(i(474)),Ku=Error(i(542)),Ju={then:function(){}};function K5(o){return o=o.status,o==="fulfilled"||o==="rejected"}function J5(o,a,h){switch(h=o[h],h===void 0?o.push(a):h!==a&&(a.then(is,is),a=h),a.status){case"fulfilled":return a.value;case"rejected":throw o=a.reason,e$(o),o;default:if(typeof a.status=="string")a.then(is,is);else{if(o=se,o!==null&&100<o.shellSuspendCounter)throw Error(i(482));o=a,o.status="pending",o.then(function(d){if(a.status==="pending"){var w=a;w.status="fulfilled",w.value=d}},function(d){if(a.status==="pending"){var w=a;w.status="rejected",w.reason=d}})}switch(a.status){case"fulfilled":return a.value;case"rejected":throw o=a.reason,e$(o),o}throw Vr=a,rl}}function Fr(o){try{var a=o._init;return a(o._payload)}catch(h){throw h!==null&&typeof h=="object"&&typeof h.then=="function"?(Vr=h,rl):h}}var Vr=null;function t$(){if(Vr===null)throw Error(i(459));var o=Vr;return Vr=null,o}function e$(o){if(o===rl||o===Ku)throw Error(i(483))}var ol=null,Ba=0;function th(o){var a=Ba;return Ba+=1,ol===null&&(ol=[]),J5(ol,o,a)}function Ya(o,a){a=a.props.ref,o.ref=a!==void 0?a:null}function eh(o,a){throw a.$$typeof===g?Error(i(525)):(o=Object.prototype.toString.call(a),Error(i(31,o==="[object Object]"?"object with keys {"+Object.keys(a).join(", ")+"}":o)))}function n$(o){function a(I,q){if(o){var X=I.deletions;X===null?(I.deletions=[q],I.flags|=16):X.push(q)}}function h(I,q){if(!o)return null;for(;q!==null;)a(I,q),q=q.sibling;return null}function d(I){for(var q=new Map;I!==null;)I.key!==null?q.set(I.key,I):q.set(I.index,I),I=I.sibling;return q}function w(I,q){return I=rs(I,q),I.index=0,I.sibling=null,I}function x(I,q,X){return I.index=X,o?(X=I.alternate,X!==null?(X=X.index,X<q?(I.flags|=67108866,q):X):(I.flags|=67108866,q)):(I.flags|=1048576,q)}function C(I){return o&&I.alternate===null&&(I.flags|=67108866),I}function N(I,q,X,at){return q===null||q.tag!==6?(q=Zp(X,I.mode,at),q.return=I,q):(q=w(q,X),q.return=I,q)}function B(I,q,X,at){var kt=X.type;return kt===b?ot(I,q,X.props.children,at,X.key):q!==null&&(q.elementType===kt||typeof kt=="object"&&kt!==null&&kt.$$typeof===Y&&Fr(kt)===q.type)?(q=w(q,X.props),Ya(q,X),q.return=I,q):(q=Uu(X.type,X.key,X.props,null,I.mode,at),Ya(q,X),q.return=I,q)}function K(I,q,X,at){return q===null||q.tag!==4||q.stateNode.containerInfo!==X.containerInfo||q.stateNode.implementation!==X.implementation?(q=Up(X,I.mode,at),q.return=I,q):(q=w(q,X.children||[]),q.return=I,q)}function ot(I,q,X,at,kt){return q===null||q.tag!==7?(q=qr(X,I.mode,at,kt),q.return=I,q):(q=w(q,X),q.return=I,q)}function ct(I,q,X){if(typeof q=="string"&&q!==""||typeof q=="number"||typeof q=="bigint")return q=Zp(""+q,I.mode,X),q.return=I,q;if(typeof q=="object"&&q!==null){switch(q.$$typeof){case y:return X=Uu(q.type,q.key,q.props,null,I.mode,X),Ya(X,q),X.return=I,X;case $:return q=Up(q,I.mode,X),q.return=I,q;case Y:return q=Fr(q),ct(I,q,X)}if(G(q)||P(q))return q=qr(q,I.mode,X,null),q.return=I,q;if(typeof q.then=="function")return ct(I,th(q),X);if(q.$$typeof===k)return ct(I,Vu(I,q),X);eh(I,q)}return null}function tt(I,q,X,at){var kt=q!==null?q.key:null;if(typeof X=="string"&&X!==""||typeof X=="number"||typeof X=="bigint")return kt!==null?null:N(I,q,""+X,at);if(typeof X=="object"&&X!==null){switch(X.$$typeof){case y:return X.key===kt?B(I,q,X,at):null;case $:return X.key===kt?K(I,q,X,at):null;case Y:return X=Fr(X),tt(I,q,X,at)}if(G(X)||P(X))return kt!==null?null:ot(I,q,X,at,null);if(typeof X.then=="function")return tt(I,q,th(X),at);if(X.$$typeof===k)return tt(I,q,Vu(I,X),at);eh(I,X)}return null}function it(I,q,X,at,kt){if(typeof at=="string"&&at!==""||typeof at=="number"||typeof at=="bigint")return I=I.get(X)||null,N(q,I,""+at,kt);if(typeof at=="object"&&at!==null){switch(at.$$typeof){case y:return I=I.get(at.key===null?X:at.key)||null,B(q,I,at,kt);case $:return I=I.get(at.key===null?X:at.key)||null,K(q,I,at,kt);case Y:return at=Fr(at),it(I,q,X,at,kt)}if(G(at)||P(at))return I=I.get(X)||null,ot(q,I,at,kt,null);if(typeof at.then=="function")return it(I,q,X,th(at),kt);if(at.$$typeof===k)return it(I,q,X,Vu(q,at),kt);eh(q,at)}return null}function xt(I,q,X,at){for(var kt=null,Ut=null,vt=q,Mt=q=0,Lt=null;vt!==null&&Mt<X.length;Mt++){vt.index>Mt?(Lt=vt,vt=null):Lt=vt.sibling;var It=tt(I,vt,X[Mt],at);if(It===null){vt===null&&(vt=Lt);break}o&&vt&&It.alternate===null&&a(I,vt),q=x(It,q,Mt),Ut===null?kt=It:Ut.sibling=It,Ut=It,vt=Lt}if(Mt===X.length)return h(I,vt),Pt&&os(I,Mt),kt;if(vt===null){for(;Mt<X.length;Mt++)vt=ct(I,X[Mt],at),vt!==null&&(q=x(vt,q,Mt),Ut===null?kt=vt:Ut.sibling=vt,Ut=vt);return Pt&&os(I,Mt),kt}for(vt=d(vt);Mt<X.length;Mt++)Lt=it(vt,I,Mt,X[Mt],at),Lt!==null&&(o&&Lt.alternate!==null&&vt.delete(Lt.key===null?Mt:Lt.key),q=x(Lt,q,Mt),Ut===null?kt=Lt:Ut.sibling=Lt,Ut=Lt);return o&&vt.forEach(function(ar){return a(I,ar)}),Pt&&os(I,Mt),kt}function Dt(I,q,X,at){if(X==null)throw Error(i(151));for(var kt=null,Ut=null,vt=q,Mt=q=0,Lt=null,It=X.next();vt!==null&&!It.done;Mt++,It=X.next()){vt.index>Mt?(Lt=vt,vt=null):Lt=vt.sibling;var ar=tt(I,vt,It.value,at);if(ar===null){vt===null&&(vt=Lt);break}o&&vt&&ar.alternate===null&&a(I,vt),q=x(ar,q,Mt),Ut===null?kt=ar:Ut.sibling=ar,Ut=ar,vt=Lt}if(It.done)return h(I,vt),Pt&&os(I,Mt),kt;if(vt===null){for(;!It.done;Mt++,It=X.next())It=ct(I,It.value,at),It!==null&&(q=x(It,q,Mt),Ut===null?kt=It:Ut.sibling=It,Ut=It);return Pt&&os(I,Mt),kt}for(vt=d(vt);!It.done;Mt++,It=X.next())It=it(vt,I,Mt,It.value,at),It!==null&&(o&&It.alternate!==null&&vt.delete(It.key===null?Mt:It.key),q=x(It,q,Mt),Ut===null?kt=It:Ut.sibling=It,Ut=It);return o&&vt.forEach(function(t9){return a(I,t9)}),Pt&&os(I,Mt),kt}function ee(I,q,X,at){if(typeof X=="object"&&X!==null&&X.type===b&&X.key===null&&(X=X.props.children),typeof X=="object"&&X!==null){switch(X.$$typeof){case y:t:{for(var kt=X.key;q!==null;){if(q.key===kt){if(kt=X.type,kt===b){if(q.tag===7){h(I,q.sibling),at=w(q,X.props.children),at.return=I,I=at;break t}}else if(q.elementType===kt||typeof kt=="object"&&kt!==null&&kt.$$typeof===Y&&Fr(kt)===q.type){h(I,q.sibling),at=w(q,X.props),Ya(at,X),at.return=I,I=at;break t}h(I,q);break}else a(I,q);q=q.sibling}X.type===b?(at=qr(X.props.children,I.mode,at,X.key),at.return=I,I=at):(at=Uu(X.type,X.key,X.props,null,I.mode,at),Ya(at,X),at.return=I,I=at)}return C(I);case $:t:{for(kt=X.key;q!==null;){if(q.key===kt)if(q.tag===4&&q.stateNode.containerInfo===X.containerInfo&&q.stateNode.implementation===X.implementation){h(I,q.sibling),at=w(q,X.children||[]),at.return=I,I=at;break t}else{h(I,q);break}else a(I,q);q=q.sibling}at=Up(X,I.mode,at),at.return=I,I=at}return C(I);case Y:return X=Fr(X),ee(I,q,X,at)}if(G(X))return xt(I,q,X,at);if(P(X)){if(kt=P(X),typeof kt!="function")throw Error(i(150));return X=kt.call(X),Dt(I,q,X,at)}if(typeof X.then=="function")return ee(I,q,th(X),at);if(X.$$typeof===k)return ee(I,q,Vu(I,X),at);eh(I,X)}return typeof X=="string"&&X!==""||typeof X=="number"||typeof X=="bigint"?(X=""+X,q!==null&&q.tag===6?(h(I,q.sibling),at=w(q,X),at.return=I,I=at):(h(I,q),at=Zp(X,I.mode,at),at.return=I,I=at),C(I)):h(I,q)}return function(I,q,X,at){try{Ba=0;var kt=ee(I,q,X,at);return ol=null,kt}catch(vt){if(vt===rl||vt===Ku)throw vt;var Ut=Rn(29,vt,null,I.mode);return Ut.lanes=at,Ut.return=I,Ut}finally{}}}var Xr=n$(!0),i$=n$(!1),Ws=!1;function rm(o){o.updateQueue={baseState:o.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,lanes:0,hiddenCallbacks:null},callbacks:null}}function om(o,a){o=o.updateQueue,a.updateQueue===o&&(a.updateQueue={baseState:o.baseState,firstBaseUpdate:o.firstBaseUpdate,lastBaseUpdate:o.lastBaseUpdate,shared:o.shared,callbacks:null})}function Zs(o){return{lane:o,tag:0,payload:null,callback:null,next:null}}function Us(o,a,h){var d=o.updateQueue;if(d===null)return null;if(d=d.shared,(Ft&2)!==0){var w=d.pending;return w===null?a.next=a:(a.next=w.next,w.next=a),d.pending=a,a=Zu(o),G5(o,null,h),a}return Wu(o,d,a,h),Zu(o)}function Ga(o,a,h){if(a=a.updateQueue,a!==null&&(a=a.shared,(h&4194048)!==0)){var d=a.lanes;d&=o.pendingLanes,h|=d,a.lanes=h,ku(o,h)}}function lm(o,a){var h=o.updateQueue,d=o.alternate;if(d!==null&&(d=d.updateQueue,h===d)){var w=null,x=null;if(h=h.firstBaseUpdate,h!==null){do{var C={lane:h.lane,tag:h.tag,payload:h.payload,callback:null,next:null};x===null?w=x=C:x=x.next=C,h=h.next}while(h!==null);x===null?w=x=a:x=x.next=a}else w=x=a;h={baseState:d.baseState,firstBaseUpdate:w,lastBaseUpdate:x,shared:d.shared,callbacks:d.callbacks},o.updateQueue=h;return}o=h.lastBaseUpdate,o===null?h.firstBaseUpdate=a:o.next=a,h.lastBaseUpdate=a}var am=!1;function La(){if(am){var o=sl;if(o!==null)throw o}}function Qa(o,a,h,d){am=!1;var w=o.updateQueue;Ws=!1;var x=w.firstBaseUpdate,C=w.lastBaseUpdate,N=w.shared.pending;if(N!==null){w.shared.pending=null;var B=N,K=B.next;B.next=null,C===null?x=K:C.next=K,C=B;var ot=o.alternate;ot!==null&&(ot=ot.updateQueue,N=ot.lastBaseUpdate,N!==C&&(N===null?ot.firstBaseUpdate=K:N.next=K,ot.lastBaseUpdate=B))}if(x!==null){var ct=w.baseState;C=0,ot=K=B=null,N=x;do{var tt=N.lane&-536870913,it=tt!==N.lane;if(it?(Gt&tt)===tt:(d&tt)===tt){tt!==0&&tt===il&&(am=!0),ot!==null&&(ot=ot.next={lane:0,tag:N.tag,payload:N.payload,callback:null,next:null});t:{var xt=o,Dt=N;tt=a;var ee=h;switch(Dt.tag){case 1:if(xt=Dt.payload,typeof xt=="function"){ct=xt.call(ee,ct,tt);break t}ct=xt;break t;case 3:xt.flags=xt.flags&-65537|128;case 0:if(xt=Dt.payload,tt=typeof xt=="function"?xt.call(ee,ct,tt):xt,tt==null)break t;ct=m({},ct,tt);break t;case 2:Ws=!0}}tt=N.callback,tt!==null&&(o.flags|=64,it&&(o.flags|=8192),it=w.callbacks,it===null?w.callbacks=[tt]:it.push(tt))}else it={lane:tt,tag:N.tag,payload:N.payload,callback:N.callback,next:null},ot===null?(K=ot=it,B=ct):ot=ot.next=it,C|=tt;if(N=N.next,N===null){if(N=w.shared.pending,N===null)break;it=N,N=it.next,it.next=null,w.lastBaseUpdate=it,w.shared.pending=null}}while(!0);ot===null&&(B=ct),w.baseState=B,w.firstBaseUpdate=K,w.lastBaseUpdate=ot,x===null&&(w.shared.lanes=0),Ks|=C,o.lanes=C,o.memoizedState=ct}}function s$(o,a){if(typeof o!="function")throw Error(i(191,o));o.call(a)}function r$(o,a){var h=o.callbacks;if(h!==null)for(o.callbacks=null,o=0;o<h.length;o++)s$(h[o],a)}var ll=j(null),nh=j(0);function o$(o,a){o=ys,J(nh,o),J(ll,a),ys=o|a.baseLanes}function cm(){J(nh,ys),J(ll,ll.current)}function um(){ys=nh.current,R(ll),R(nh)}var _n=j(null),ti=null;function Is(o){var a=o.alternate;J(be,be.current&1),J(_n,o),ti===null&&(a===null||ll.current!==null||a.memoizedState!==null)&&(ti=o)}function hm(o){J(be,be.current),J(_n,o),ti===null&&(ti=o)}function l$(o){o.tag===22?(J(be,be.current),J(_n,o),ti===null&&(ti=o)):Fs()}function Fs(){J(be,be.current),J(_n,_n.current)}function Mn(o){R(_n),ti===o&&(ti=null),R(be)}var be=j(0);function ih(o){for(var a=o;a!==null;){if(a.tag===13){var h=a.memoizedState;if(h!==null&&(h=h.dehydrated,h===null||yg(h)||wg(h)))return a}else if(a.tag===19&&(a.memoizedProps.revealOrder==="forwards"||a.memoizedProps.revealOrder==="backwards"||a.memoizedProps.revealOrder==="unstable_legacy-backwards"||a.memoizedProps.revealOrder==="together")){if((a.flags&128)!==0)return a}else if(a.child!==null){a.child.return=a,a=a.child;continue}if(a===o)break;for(;a.sibling===null;){if(a.return===null||a.return===o)return null;a=a.return}a.sibling.return=a.return,a=a.sibling}return null}var cs=0,Rt=null,Jt=null,De=null,sh=!1,al=!1,Kr=!1,rh=0,Pa=0,cl=null,qD=0;function ye(){throw Error(i(321))}function fm(o,a){if(a===null)return!1;for(var h=0;h<a.length&&h<o.length;h++)if(!jn(o[h],a[h]))return!1;return!0}function dm(o,a,h,d,w,x){return cs=x,Rt=a,a.memoizedState=null,a.updateQueue=null,a.lanes=0,T.H=o===null||o.memoizedState===null?q$:Dm,Kr=!1,x=h(d,w),Kr=!1,al&&(x=c$(a,h,d,w)),a$(o),x}function a$(o){T.H=Za;var a=Jt!==null&&Jt.next!==null;if(cs=0,De=Jt=Rt=null,sh=!1,Pa=0,cl=null,a)throw Error(i(300));o===null||Te||(o=o.dependencies,o!==null&&Fu(o)&&(Te=!0))}function c$(o,a,h,d){Rt=o;var w=0;do{if(al&&(cl=null),Pa=0,al=!1,25<=w)throw Error(i(301));if(w+=1,De=Jt=null,o.updateQueue!=null){var x=o.updateQueue;x.lastEffect=null,x.events=null,x.stores=null,x.memoCache!=null&&(x.memoCache.index=0)}T.H=W$,x=a(h,d)}while(al);return x}function WD(){var o=T.H,a=o.useState()[0];return a=typeof a.then=="function"?qa(a):a,o=o.useState()[0],(Jt!==null?Jt.memoizedState:null)!==o&&(Rt.flags|=1024),a}function pm(){var o=rh!==0;return rh=0,o}function mm(o,a,h){a.updateQueue=o.updateQueue,a.flags&=-2053,o.lanes&=~h}function gm(o){if(sh){for(o=o.memoizedState;o!==null;){var a=o.queue;a!==null&&(a.pending=null),o=o.next}sh=!1}cs=0,De=Jt=Rt=null,al=!1,Pa=rh=0,cl=null}function on(){var o={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return De===null?Rt.memoizedState=De=o:De=De.next=o,De}function ve(){if(Jt===null){var o=Rt.alternate;o=o!==null?o.memoizedState:null}else o=Jt.next;var a=De===null?Rt.memoizedState:De.next;if(a!==null)De=a,Jt=o;else{if(o===null)throw Rt.alternate===null?Error(i(467)):Error(i(310));Jt=o,o={memoizedState:Jt.memoizedState,baseState:Jt.baseState,baseQueue:Jt.baseQueue,queue:Jt.queue,next:null},De===null?Rt.memoizedState=De=o:De=De.next=o}return De}function oh(){return{lastEffect:null,events:null,stores:null,memoCache:null}}function qa(o){var a=Pa;return Pa+=1,cl===null&&(cl=[]),o=J5(cl,o,a),a=Rt,(De===null?a.memoizedState:De.next)===null&&(a=a.alternate,T.H=a===null||a.memoizedState===null?q$:Dm),o}function lh(o){if(o!==null&&typeof o=="object"){if(typeof o.then=="function")return qa(o);if(o.$$typeof===k)return Qe(o)}throw Error(i(438,String(o)))}function ym(o){var a=null,h=Rt.updateQueue;if(h!==null&&(a=h.memoCache),a==null){var d=Rt.alternate;d!==null&&(d=d.updateQueue,d!==null&&(d=d.memoCache,d!=null&&(a={data:d.data.map(function(w){return w.slice()}),index:0})))}if(a==null&&(a={data:[],index:0}),h===null&&(h=oh(),Rt.updateQueue=h),h.memoCache=a,h=a.data[a.index],h===void 0)for(h=a.data[a.index]=Array(o),d=0;d<o;d++)h[d]=nt;return a.index++,h}function us(o,a){return typeof a=="function"?a(o):a}function ah(o){var a=ve();return wm(a,Jt,o)}function wm(o,a,h){var d=o.queue;if(d===null)throw Error(i(311));d.lastRenderedReducer=h;var w=o.baseQueue,x=d.pending;if(x!==null){if(w!==null){var C=w.next;w.next=x.next,x.next=C}a.baseQueue=w=x,d.pending=null}if(x=o.baseState,w===null)o.memoizedState=x;else{a=w.next;var N=C=null,B=null,K=a,ot=!1;do{var ct=K.lane&-536870913;if(ct!==K.lane?(Gt&ct)===ct:(cs&ct)===ct){var tt=K.revertLane;if(tt===0)B!==null&&(B=B.next={lane:0,revertLane:0,gesture:null,action:K.action,hasEagerState:K.hasEagerState,eagerState:K.eagerState,next:null}),ct===il&&(ot=!0);else if((cs&tt)===tt){K=K.next,tt===il&&(ot=!0);continue}else ct={lane:0,revertLane:K.revertLane,gesture:null,action:K.action,hasEagerState:K.hasEagerState,eagerState:K.eagerState,next:null},B===null?(N=B=ct,C=x):B=B.next=ct,Rt.lanes|=tt,Ks|=tt;ct=K.action,Kr&&h(x,ct),x=K.hasEagerState?K.eagerState:h(x,ct)}else tt={lane:ct,revertLane:K.revertLane,gesture:K.gesture,action:K.action,hasEagerState:K.hasEagerState,eagerState:K.eagerState,next:null},B===null?(N=B=tt,C=x):B=B.next=tt,Rt.lanes|=ct,Ks|=ct;K=K.next}while(K!==null&&K!==a);if(B===null?C=x:B.next=N,!jn(x,o.memoizedState)&&(Te=!0,ot&&(h=sl,h!==null)))throw h;o.memoizedState=x,o.baseState=C,o.baseQueue=B,d.lastRenderedState=x}return w===null&&(d.lanes=0),[o.memoizedState,d.dispatch]}function $m(o){var a=ve(),h=a.queue;if(h===null)throw Error(i(311));h.lastRenderedReducer=o;var d=h.dispatch,w=h.pending,x=a.memoizedState;if(w!==null){h.pending=null;var C=w=w.next;do x=o(x,C.action),C=C.next;while(C!==w);jn(x,a.memoizedState)||(Te=!0),a.memoizedState=x,a.baseQueue===null&&(a.baseState=x),h.lastRenderedState=x}return[x,d]}function u$(o,a,h){var d=Rt,w=ve(),x=Pt;if(x){if(h===void 0)throw Error(i(407));h=h()}else h=a();var C=!jn((Jt||w).memoizedState,h);if(C&&(w.memoizedState=h,Te=!0),w=w.queue,vm(d$.bind(null,d,w,o),[o]),w.getSnapshot!==a||C||De!==null&&De.memoizedState.tag&1){if(d.flags|=2048,ul(9,{destroy:void 0},f$.bind(null,d,w,h,a),null),se===null)throw Error(i(349));x||(cs&127)!==0||h$(d,a,h)}return h}function h$(o,a,h){o.flags|=16384,o={getSnapshot:a,value:h},a=Rt.updateQueue,a===null?(a=oh(),Rt.updateQueue=a,a.stores=[o]):(h=a.stores,h===null?a.stores=[o]:h.push(o))}function f$(o,a,h,d){a.value=h,a.getSnapshot=d,p$(a)&&m$(o)}function d$(o,a,h){return h(function(){p$(a)&&m$(o)})}function p$(o){var a=o.getSnapshot;o=o.value;try{var h=a();return!jn(o,h)}catch{return!0}}function m$(o){var a=Pr(o,2);a!==null&&xn(a,o,2)}function xm(o){var a=on();if(typeof o=="function"){var h=o;if(o=h(),Kr){Ei(!0);try{h()}finally{Ei(!1)}}}return a.memoizedState=a.baseState=o,a.queue={pending:null,lanes:0,dispatch:null,lastRenderedReducer:us,lastRenderedState:o},a}function g$(o,a,h,d){return o.baseState=h,wm(o,Jt,typeof d=="function"?d:us)}function ZD(o,a,h,d,w){if(hh(o))throw Error(i(485));if(o=a.action,o!==null){var x={payload:w,action:o,next:null,isTransition:!0,status:"pending",value:null,reason:null,listeners:[],then:function(C){x.listeners.push(C)}};T.T!==null?h(!0):x.isTransition=!1,d(x),h=a.pending,h===null?(x.next=a.pending=x,y$(a,x)):(x.next=h.next,a.pending=h.next=x)}}function y$(o,a){var h=a.action,d=a.payload,w=o.state;if(a.isTransition){var x=T.T,C={};T.T=C;try{var N=h(w,d),B=T.S;B!==null&&B(C,N),w$(o,a,N)}catch(K){bm(o,a,K)}finally{x!==null&&C.types!==null&&(x.types=C.types),T.T=x}}else try{x=h(w,d),w$(o,a,x)}catch(K){bm(o,a,K)}}function w$(o,a,h){h!==null&&typeof h=="object"&&typeof h.then=="function"?h.then(function(d){$$(o,a,d)},function(d){return bm(o,a,d)}):$$(o,a,h)}function $$(o,a,h){a.status="fulfilled",a.value=h,x$(a),o.state=h,a=o.pending,a!==null&&(h=a.next,h===a?o.pending=null:(h=h.next,a.next=h,y$(o,h)))}function bm(o,a,h){var d=o.pending;if(o.pending=null,d!==null){d=d.next;do a.status="rejected",a.reason=h,x$(a),a=a.next;while(a!==d)}o.action=null}function x$(o){o=o.listeners;for(var a=0;a<o.length;a++)(0,o[a])()}function b$(o,a){return a}function v$(o,a){if(Pt){var h=se.formState;if(h!==null){t:{var d=Rt;if(Pt){if(ce){e:{for(var w=ce,x=Jn;w.nodeType!==8;){if(!x){w=null;break e}if(w=ei(w.nextSibling),w===null){w=null;break e}}x=w.data,w=x==="F!"||x==="F"?w:null}if(w){ce=ei(w.nextSibling),d=w.data==="F!";break t}}Ps(d)}d=!1}d&&(a=h[0])}}return h=on(),h.memoizedState=h.baseState=a,d={pending:null,lanes:0,dispatch:null,lastRenderedReducer:b$,lastRenderedState:a},h.queue=d,h=L$.bind(null,Rt,d),d.dispatch=h,d=xm(!1),x=Em.bind(null,Rt,!1,d.queue),d=on(),w={state:a,dispatch:null,action:o,pending:null},d.queue=w,h=ZD.bind(null,Rt,w,x,h),w.dispatch=h,d.memoizedState=o,[a,h,!1]}function S$(o){var a=ve();return O$(a,Jt,o)}function O$(o,a,h){if(a=wm(o,a,b$)[0],o=ah(us)[0],typeof a=="object"&&a!==null&&typeof a.then=="function")try{var d=qa(a)}catch(C){throw C===rl?Ku:C}else d=a;a=ve();var w=a.queue,x=w.dispatch;return h!==a.memoizedState&&(Rt.flags|=2048,ul(9,{destroy:void 0},UD.bind(null,w,h),null)),[d,x,o]}function UD(o,a){o.action=a}function k$(o){var a=ve(),h=Jt;if(h!==null)return O$(a,h,o);ve(),a=a.memoizedState,h=ve();var d=h.queue.dispatch;return h.memoizedState=o,[a,d,!1]}function ul(o,a,h,d){return o={tag:o,create:h,deps:d,inst:a,next:null},a=Rt.updateQueue,a===null&&(a=oh(),Rt.updateQueue=a),h=a.lastEffect,h===null?a.lastEffect=o.next=o:(d=h.next,h.next=o,o.next=d,a.lastEffect=o),o}function C$(){return ve().memoizedState}function ch(o,a,h,d){var w=on();Rt.flags|=o,w.memoizedState=ul(1|a,{destroy:void 0},h,d===void 0?null:d)}function uh(o,a,h,d){var w=ve();d=d===void 0?null:d;var x=w.memoizedState.inst;Jt!==null&&d!==null&&fm(d,Jt.memoizedState.deps)?w.memoizedState=ul(a,x,h,d):(Rt.flags|=o,w.memoizedState=ul(1|a,x,h,d))}function E$(o,a){ch(8390656,8,o,a)}function vm(o,a){uh(2048,8,o,a)}function ID(o){Rt.flags|=4;var a=Rt.updateQueue;if(a===null)a=oh(),Rt.updateQueue=a,a.events=[o];else{var h=a.events;h===null?a.events=[o]:h.push(o)}}function D$(o){var a=ve().memoizedState;return ID({ref:a,nextImpl:o}),function(){if((Ft&2)!==0)throw Error(i(440));return a.impl.apply(void 0,arguments)}}function T$(o,a){return uh(4,2,o,a)}function N$(o,a){return uh(4,4,o,a)}function j$(o,a){if(typeof a=="function"){o=o();var h=a(o);return function(){typeof h=="function"?h():a(null)}}if(a!=null)return o=o(),a.current=o,function(){a.current=null}}function R$(o,a,h){h=h!=null?h.concat([o]):null,uh(4,4,j$.bind(null,a,o),h)}function Sm(){}function _$(o,a){var h=ve();a=a===void 0?null:a;var d=h.memoizedState;return a!==null&&fm(a,d[1])?d[0]:(h.memoizedState=[o,a],o)}function M$(o,a){var h=ve();a=a===void 0?null:a;var d=h.memoizedState;if(a!==null&&fm(a,d[1]))return d[0];if(d=o(),Kr){Ei(!0);try{o()}finally{Ei(!1)}}return h.memoizedState=[d,a],d}function Om(o,a,h){return h===void 0||(cs&1073741824)!==0&&(Gt&261930)===0?o.memoizedState=a:(o.memoizedState=h,o=A2(),Rt.lanes|=o,Ks|=o,h)}function A$(o,a,h,d){return jn(h,a)?h:ll.current!==null?(o=Om(o,h,d),jn(o,a)||(Te=!0),o):(cs&42)===0||(cs&1073741824)!==0&&(Gt&261930)===0?(Te=!0,o.memoizedState=h):(o=A2(),Rt.lanes|=o,Ks|=o,a)}function H$(o,a,h,d,w){var x=z.p;z.p=x!==0&&8>x?x:8;var C=T.T,N={};T.T=N,Em(o,!1,a,h);try{var B=w(),K=T.S;if(K!==null&&K(N,B),B!==null&&typeof B=="object"&&typeof B.then=="function"){var ot=PD(B,d);Wa(o,a,ot,zn(o))}else Wa(o,a,d,zn(o))}catch(ct){Wa(o,a,{then:function(){},status:"rejected",reason:ct},zn())}finally{z.p=x,C!==null&&N.types!==null&&(C.types=N.types),T.T=C}}function FD(){}function km(o,a,h,d){if(o.tag!==5)throw Error(i(476));var w=z$(o).queue;H$(o,w,a,Z,h===null?FD:function(){return B$(o),h(d)})}function z$(o){var a=o.memoizedState;if(a!==null)return a;a={memoizedState:Z,baseState:Z,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:us,lastRenderedState:Z},next:null};var h={};return a.next={memoizedState:h,baseState:h,baseQueue:null,queue:{pending:null,lanes:0,dispatch:null,lastRenderedReducer:us,lastRenderedState:h},next:null},o.memoizedState=a,o=o.alternate,o!==null&&(o.memoizedState=a),a}function B$(o){var a=z$(o);a.next===null&&(a=o.alternate.memoizedState),Wa(o,a.next.queue,{},zn())}function Cm(){return Qe(ac)}function Y$(){return ve().memoizedState}function G$(){return ve().memoizedState}function VD(o){for(var a=o.return;a!==null;){switch(a.tag){case 24:case 3:var h=zn();o=Zs(h);var d=Us(a,o,h);d!==null&&(xn(d,a,h),Ga(d,a,h)),a={cache:em()},o.payload=a;return}a=a.return}}function XD(o,a,h){var d=zn();h={lane:d,revertLane:0,gesture:null,action:h,hasEagerState:!1,eagerState:null,next:null},hh(o)?Q$(a,h):(h=qp(o,a,h,d),h!==null&&(xn(h,o,d),P$(h,a,d)))}function L$(o,a,h){var d=zn();Wa(o,a,h,d)}function Wa(o,a,h,d){var w={lane:d,revertLane:0,gesture:null,action:h,hasEagerState:!1,eagerState:null,next:null};if(hh(o))Q$(a,w);else{var x=o.alternate;if(o.lanes===0&&(x===null||x.lanes===0)&&(x=a.lastRenderedReducer,x!==null))try{var C=a.lastRenderedState,N=x(C,h);if(w.hasEagerState=!0,w.eagerState=N,jn(N,C))return Wu(o,a,w,0),se===null&&qu(),!1}catch{}finally{}if(h=qp(o,a,w,d),h!==null)return xn(h,o,d),P$(h,a,d),!0}return!1}function Em(o,a,h,d){if(d={lane:2,revertLane:rg(),gesture:null,action:d,hasEagerState:!1,eagerState:null,next:null},hh(o)){if(a)throw Error(i(479))}else a=qp(o,h,d,2),a!==null&&xn(a,o,2)}function hh(o){var a=o.alternate;return o===Rt||a!==null&&a===Rt}function Q$(o,a){al=sh=!0;var h=o.pending;h===null?a.next=a:(a.next=h.next,h.next=a),o.pending=a}function P$(o,a,h){if((h&4194048)!==0){var d=a.lanes;d&=o.pendingLanes,h|=d,a.lanes=h,ku(o,h)}}var Za={readContext:Qe,use:lh,useCallback:ye,useContext:ye,useEffect:ye,useImperativeHandle:ye,useLayoutEffect:ye,useInsertionEffect:ye,useMemo:ye,useReducer:ye,useRef:ye,useState:ye,useDebugValue:ye,useDeferredValue:ye,useTransition:ye,useSyncExternalStore:ye,useId:ye,useHostTransitionStatus:ye,useFormState:ye,useActionState:ye,useOptimistic:ye,useMemoCache:ye,useCacheRefresh:ye};Za.useEffectEvent=ye;var q$={readContext:Qe,use:lh,useCallback:function(o,a){return on().memoizedState=[o,a===void 0?null:a],o},useContext:Qe,useEffect:E$,useImperativeHandle:function(o,a,h){h=h!=null?h.concat([o]):null,ch(4194308,4,j$.bind(null,a,o),h)},useLayoutEffect:function(o,a){return ch(4194308,4,o,a)},useInsertionEffect:function(o,a){ch(4,2,o,a)},useMemo:function(o,a){var h=on();a=a===void 0?null:a;var d=o();if(Kr){Ei(!0);try{o()}finally{Ei(!1)}}return h.memoizedState=[d,a],d},useReducer:function(o,a,h){var d=on();if(h!==void 0){var w=h(a);if(Kr){Ei(!0);try{h(a)}finally{Ei(!1)}}}else w=a;return d.memoizedState=d.baseState=w,o={pending:null,lanes:0,dispatch:null,lastRenderedReducer:o,lastRenderedState:w},d.queue=o,o=o.dispatch=XD.bind(null,Rt,o),[d.memoizedState,o]},useRef:function(o){var a=on();return o={current:o},a.memoizedState=o},useState:function(o){o=xm(o);var a=o.queue,h=L$.bind(null,Rt,a);return a.dispatch=h,[o.memoizedState,h]},useDebugValue:Sm,useDeferredValue:function(o,a){var h=on();return Om(h,o,a)},useTransition:function(){var o=xm(!1);return o=H$.bind(null,Rt,o.queue,!0,!1),on().memoizedState=o,[!1,o]},useSyncExternalStore:function(o,a,h){var d=Rt,w=on();if(Pt){if(h===void 0)throw Error(i(407));h=h()}else{if(h=a(),se===null)throw Error(i(349));(Gt&127)!==0||h$(d,a,h)}w.memoizedState=h;var x={value:h,getSnapshot:a};return w.queue=x,E$(d$.bind(null,d,x,o),[o]),d.flags|=2048,ul(9,{destroy:void 0},f$.bind(null,d,x,h,a),null),h},useId:function(){var o=on(),a=se.identifierPrefix;if(Pt){var h=Ni,d=Ti;h=(d&~(1<<32-rn(d)-1)).toString(32)+h,a="_"+a+"R_"+h,h=rh++,0<h&&(a+="H"+h.toString(32)),a+="_"}else h=qD++,a="_"+a+"r_"+h.toString(32)+"_";return o.memoizedState=a},useHostTransitionStatus:Cm,useFormState:v$,useActionState:v$,useOptimistic:function(o){var a=on();a.memoizedState=a.baseState=o;var h={pending:null,lanes:0,dispatch:null,lastRenderedReducer:null,lastRenderedState:null};return a.queue=h,a=Em.bind(null,Rt,!0,h),h.dispatch=a,[o,a]},useMemoCache:ym,useCacheRefresh:function(){return on().memoizedState=VD.bind(null,Rt)},useEffectEvent:function(o){var a=on(),h={impl:o};return a.memoizedState=h,function(){if((Ft&2)!==0)throw Error(i(440));return h.impl.apply(void 0,arguments)}}},Dm={readContext:Qe,use:lh,useCallback:_$,useContext:Qe,useEffect:vm,useImperativeHandle:R$,useInsertionEffect:T$,useLayoutEffect:N$,useMemo:M$,useReducer:ah,useRef:C$,useState:function(){return ah(us)},useDebugValue:Sm,useDeferredValue:function(o,a){var h=ve();return A$(h,Jt.memoizedState,o,a)},useTransition:function(){var o=ah(us)[0],a=ve().memoizedState;return[typeof o=="boolean"?o:qa(o),a]},useSyncExternalStore:u$,useId:Y$,useHostTransitionStatus:Cm,useFormState:S$,useActionState:S$,useOptimistic:function(o,a){var h=ve();return g$(h,Jt,o,a)},useMemoCache:ym,useCacheRefresh:G$};Dm.useEffectEvent=D$;var W$={readContext:Qe,use:lh,useCallback:_$,useContext:Qe,useEffect:vm,useImperativeHandle:R$,useInsertionEffect:T$,useLayoutEffect:N$,useMemo:M$,useReducer:$m,useRef:C$,useState:function(){return $m(us)},useDebugValue:Sm,useDeferredValue:function(o,a){var h=ve();return Jt===null?Om(h,o,a):A$(h,Jt.memoizedState,o,a)},useTransition:function(){var o=$m(us)[0],a=ve().memoizedState;return[typeof o=="boolean"?o:qa(o),a]},useSyncExternalStore:u$,useId:Y$,useHostTransitionStatus:Cm,useFormState:k$,useActionState:k$,useOptimistic:function(o,a){var h=ve();return Jt!==null?g$(h,Jt,o,a):(h.baseState=o,[o,h.queue.dispatch])},useMemoCache:ym,useCacheRefresh:G$};W$.useEffectEvent=D$;function Tm(o,a,h,d){a=o.memoizedState,h=h(d,a),h=h==null?a:m({},a,h),o.memoizedState=h,o.lanes===0&&(o.updateQueue.baseState=h)}var Nm={enqueueSetState:function(o,a,h){o=o._reactInternals;var d=zn(),w=Zs(d);w.payload=a,h!=null&&(w.callback=h),a=Us(o,w,d),a!==null&&(xn(a,o,d),Ga(a,o,d))},enqueueReplaceState:function(o,a,h){o=o._reactInternals;var d=zn(),w=Zs(d);w.tag=1,w.payload=a,h!=null&&(w.callback=h),a=Us(o,w,d),a!==null&&(xn(a,o,d),Ga(a,o,d))},enqueueForceUpdate:function(o,a){o=o._reactInternals;var h=zn(),d=Zs(h);d.tag=2,a!=null&&(d.callback=a),a=Us(o,d,h),a!==null&&(xn(a,o,h),Ga(a,o,h))}};function Z$(o,a,h,d,w,x,C){return o=o.stateNode,typeof o.shouldComponentUpdate=="function"?o.shouldComponentUpdate(d,x,C):a.prototype&&a.prototype.isPureReactComponent?!Ra(h,d)||!Ra(w,x):!0}function U$(o,a,h,d){o=a.state,typeof a.componentWillReceiveProps=="function"&&a.componentWillReceiveProps(h,d),typeof a.UNSAFE_componentWillReceiveProps=="function"&&a.UNSAFE_componentWillReceiveProps(h,d),a.state!==o&&Nm.enqueueReplaceState(a,a.state,null)}function Jr(o,a){var h=a;if("ref"in a){h={};for(var d in a)d!=="ref"&&(h[d]=a[d])}if(o=o.defaultProps){h===a&&(h=m({},h));for(var w in o)h[w]===void 0&&(h[w]=o[w])}return h}function I$(o){Pu(o)}function F$(o){console.error(o)}function V$(o){Pu(o)}function fh(o,a){try{var h=o.onUncaughtError;h(a.value,{componentStack:a.stack})}catch(d){setTimeout(function(){throw d})}}function X$(o,a,h){try{var d=o.onCaughtError;d(h.value,{componentStack:h.stack,errorBoundary:a.tag===1?a.stateNode:null})}catch(w){setTimeout(function(){throw w})}}function jm(o,a,h){return h=Zs(h),h.tag=3,h.payload={element:null},h.callback=function(){fh(o,a)},h}function K$(o){return o=Zs(o),o.tag=3,o}function J$(o,a,h,d){var w=h.type.getDerivedStateFromError;if(typeof w=="function"){var x=d.value;o.payload=function(){return w(x)},o.callback=function(){X$(a,h,d)}}var C=h.stateNode;C!==null&&typeof C.componentDidCatch=="function"&&(o.callback=function(){X$(a,h,d),typeof w!="function"&&(Js===null?Js=new Set([this]):Js.add(this));var N=d.stack;this.componentDidCatch(d.value,{componentStack:N!==null?N:""})})}function KD(o,a,h,d,w){if(h.flags|=32768,d!==null&&typeof d=="object"&&typeof d.then=="function"){if(a=h.alternate,a!==null&&nl(a,h,w,!0),h=_n.current,h!==null){switch(h.tag){case 31:case 13:return ti===null?Oh():h.alternate===null&&we===0&&(we=3),h.flags&=-257,h.flags|=65536,h.lanes=w,d===Ju?h.flags|=16384:(a=h.updateQueue,a===null?h.updateQueue=new Set([d]):a.add(d),ng(o,d,w)),!1;case 22:return h.flags|=65536,d===Ju?h.flags|=16384:(a=h.updateQueue,a===null?(a={transitions:null,markerInstances:null,retryQueue:new Set([d])},h.updateQueue=a):(h=a.retryQueue,h===null?a.retryQueue=new Set([d]):h.add(d)),ng(o,d,w)),!1}throw Error(i(435,h.tag))}return ng(o,d,w),Oh(),!1}if(Pt)return a=_n.current,a!==null?((a.flags&65536)===0&&(a.flags|=256),a.flags|=65536,a.lanes=w,d!==Vp&&(o=Error(i(422),{cause:d}),Aa(Vn(o,h)))):(d!==Vp&&(a=Error(i(423),{cause:d}),Aa(Vn(a,h))),o=o.current.alternate,o.flags|=65536,w&=-w,o.lanes|=w,d=Vn(d,h),w=jm(o.stateNode,d,w),lm(o,w),we!==4&&(we=2)),!1;var x=Error(i(520),{cause:d});if(x=Vn(x,h),tc===null?tc=[x]:tc.push(x),we!==4&&(we=2),a===null)return!0;d=Vn(d,h),h=a;do{switch(h.tag){case 3:return h.flags|=65536,o=w&-w,h.lanes|=o,o=jm(h.stateNode,d,o),lm(h,o),!1;case 1:if(a=h.type,x=h.stateNode,(h.flags&128)===0&&(typeof a.getDerivedStateFromError=="function"||x!==null&&typeof x.componentDidCatch=="function"&&(Js===null||!Js.has(x))))return h.flags|=65536,w&=-w,h.lanes|=w,w=K$(w),J$(w,o,h,d),lm(h,w),!1}h=h.return}while(h!==null);return!1}var Rm=Error(i(461)),Te=!1;function Pe(o,a,h,d){a.child=o===null?i$(a,null,h,d):Xr(a,o.child,h,d)}function t2(o,a,h,d,w){h=h.render;var x=a.ref;if("ref"in d){var C={};for(var N in d)N!=="ref"&&(C[N]=d[N])}else C=d;return Ur(a),d=dm(o,a,h,C,x,w),N=pm(),o!==null&&!Te?(mm(o,a,w),hs(o,a,w)):(Pt&&N&&Ip(a),a.flags|=1,Pe(o,a,d,w),a.child)}function e2(o,a,h,d,w){if(o===null){var x=h.type;return typeof x=="function"&&!Wp(x)&&x.defaultProps===void 0&&h.compare===null?(a.tag=15,a.type=x,n2(o,a,x,d,w)):(o=Uu(h.type,null,d,a,a.mode,w),o.ref=a.ref,o.return=a,a.child=o)}if(x=o.child,!Gm(o,w)){var C=x.memoizedProps;if(h=h.compare,h=h!==null?h:Ra,h(C,d)&&o.ref===a.ref)return hs(o,a,w)}return a.flags|=1,o=rs(x,d),o.ref=a.ref,o.return=a,a.child=o}function n2(o,a,h,d,w){if(o!==null){var x=o.memoizedProps;if(Ra(x,d)&&o.ref===a.ref)if(Te=!1,a.pendingProps=d=x,Gm(o,w))(o.flags&131072)!==0&&(Te=!0);else return a.lanes=o.lanes,hs(o,a,w)}return _m(o,a,h,d,w)}function i2(o,a,h,d){var w=d.children,x=o!==null?o.memoizedState:null;if(o===null&&a.stateNode===null&&(a.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),d.mode==="hidden"){if((a.flags&128)!==0){if(x=x!==null?x.baseLanes|h:h,o!==null){for(d=a.child=o.child,w=0;d!==null;)w=w|d.lanes|d.childLanes,d=d.sibling;d=w&~x}else d=0,a.child=null;return s2(o,a,x,h,d)}if((h&536870912)!==0)a.memoizedState={baseLanes:0,cachePool:null},o!==null&&Xu(a,x!==null?x.cachePool:null),x!==null?o$(a,x):cm(),l$(a);else return d=a.lanes=536870912,s2(o,a,x!==null?x.baseLanes|h:h,h,d)}else x!==null?(Xu(a,x.cachePool),o$(a,x),Fs(),a.memoizedState=null):(o!==null&&Xu(a,null),cm(),Fs());return Pe(o,a,w,h),a.child}function Ua(o,a){return o!==null&&o.tag===22||a.stateNode!==null||(a.stateNode={_visibility:1,_pendingMarkers:null,_retryCache:null,_transitions:null}),a.sibling}function s2(o,a,h,d,w){var x=im();return x=x===null?null:{parent:Ee._currentValue,pool:x},a.memoizedState={baseLanes:h,cachePool:x},o!==null&&Xu(a,null),cm(),l$(a),o!==null&&nl(o,a,d,!0),a.childLanes=w,null}function dh(o,a){return a=mh({mode:a.mode,children:a.children},o.mode),a.ref=o.ref,o.child=a,a.return=o,a}function r2(o,a,h){return Xr(a,o.child,null,h),o=dh(a,a.pendingProps),o.flags|=2,Mn(a),a.memoizedState=null,o}function JD(o,a,h){var d=a.pendingProps,w=(a.flags&128)!==0;if(a.flags&=-129,o===null){if(Pt){if(d.mode==="hidden")return o=dh(a,d),a.lanes=536870912,Ua(null,o);if(hm(a),(o=ce)?(o=yx(o,Jn),o=o!==null&&o.data==="&"?o:null,o!==null&&(a.memoizedState={dehydrated:o,treeContext:Ls!==null?{id:Ti,overflow:Ni}:null,retryLane:536870912,hydrationErrors:null},h=Q5(o),h.return=a,a.child=h,Le=a,ce=null)):o=null,o===null)throw Ps(a);return a.lanes=536870912,null}return dh(a,d)}var x=o.memoizedState;if(x!==null){var C=x.dehydrated;if(hm(a),w)if(a.flags&256)a.flags&=-257,a=r2(o,a,h);else if(a.memoizedState!==null)a.child=o.child,a.flags|=128,a=null;else throw Error(i(558));else if(Te||nl(o,a,h,!1),w=(h&o.childLanes)!==0,Te||w){if(d=se,d!==null&&(C=Cu(d,h),C!==0&&C!==x.retryLane))throw x.retryLane=C,Pr(o,C),xn(d,o,C),Rm;Oh(),a=r2(o,a,h)}else o=x.treeContext,ce=ei(C.nextSibling),Le=a,Pt=!0,Qs=null,Jn=!1,o!==null&&W5(a,o),a=dh(a,d),a.flags|=4096;return a}return o=rs(o.child,{mode:d.mode,children:d.children}),o.ref=a.ref,a.child=o,o.return=a,o}function ph(o,a){var h=a.ref;if(h===null)o!==null&&o.ref!==null&&(a.flags|=4194816);else{if(typeof h!="function"&&typeof h!="object")throw Error(i(284));(o===null||o.ref!==h)&&(a.flags|=4194816)}}function _m(o,a,h,d,w){return Ur(a),h=dm(o,a,h,d,void 0,w),d=pm(),o!==null&&!Te?(mm(o,a,w),hs(o,a,w)):(Pt&&d&&Ip(a),a.flags|=1,Pe(o,a,h,w),a.child)}function o2(o,a,h,d,w,x){return Ur(a),a.updateQueue=null,h=c$(a,d,h,w),a$(o),d=pm(),o!==null&&!Te?(mm(o,a,x),hs(o,a,x)):(Pt&&d&&Ip(a),a.flags|=1,Pe(o,a,h,x),a.child)}function l2(o,a,h,d,w){if(Ur(a),a.stateNode===null){var x=Ko,C=h.contextType;typeof C=="object"&&C!==null&&(x=Qe(C)),x=new h(d,x),a.memoizedState=x.state!==null&&x.state!==void 0?x.state:null,x.updater=Nm,a.stateNode=x,x._reactInternals=a,x=a.stateNode,x.props=d,x.state=a.memoizedState,x.refs={},rm(a),C=h.contextType,x.context=typeof C=="object"&&C!==null?Qe(C):Ko,x.state=a.memoizedState,C=h.getDerivedStateFromProps,typeof C=="function"&&(Tm(a,h,C,d),x.state=a.memoizedState),typeof h.getDerivedStateFromProps=="function"||typeof x.getSnapshotBeforeUpdate=="function"||typeof x.UNSAFE_componentWillMount!="function"&&typeof x.componentWillMount!="function"||(C=x.state,typeof x.componentWillMount=="function"&&x.componentWillMount(),typeof x.UNSAFE_componentWillMount=="function"&&x.UNSAFE_componentWillMount(),C!==x.state&&Nm.enqueueReplaceState(x,x.state,null),Qa(a,d,x,w),La(),x.state=a.memoizedState),typeof x.componentDidMount=="function"&&(a.flags|=4194308),d=!0}else if(o===null){x=a.stateNode;var N=a.memoizedProps,B=Jr(h,N);x.props=B;var K=x.context,ot=h.contextType;C=Ko,typeof ot=="object"&&ot!==null&&(C=Qe(ot));var ct=h.getDerivedStateFromProps;ot=typeof ct=="function"||typeof x.getSnapshotBeforeUpdate=="function",N=a.pendingProps!==N,ot||typeof x.UNSAFE_componentWillReceiveProps!="function"&&typeof x.componentWillReceiveProps!="function"||(N||K!==C)&&U$(a,x,d,C),Ws=!1;var tt=a.memoizedState;x.state=tt,Qa(a,d,x,w),La(),K=a.memoizedState,N||tt!==K||Ws?(typeof ct=="function"&&(Tm(a,h,ct,d),K=a.memoizedState),(B=Ws||Z$(a,h,B,d,tt,K,C))?(ot||typeof x.UNSAFE_componentWillMount!="function"&&typeof x.componentWillMount!="function"||(typeof x.componentWillMount=="function"&&x.componentWillMount(),typeof x.UNSAFE_componentWillMount=="function"&&x.UNSAFE_componentWillMount()),typeof x.componentDidMount=="function"&&(a.flags|=4194308)):(typeof x.componentDidMount=="function"&&(a.flags|=4194308),a.memoizedProps=d,a.memoizedState=K),x.props=d,x.state=K,x.context=C,d=B):(typeof x.componentDidMount=="function"&&(a.flags|=4194308),d=!1)}else{x=a.stateNode,om(o,a),C=a.memoizedProps,ot=Jr(h,C),x.props=ot,ct=a.pendingProps,tt=x.context,K=h.contextType,B=Ko,typeof K=="object"&&K!==null&&(B=Qe(K)),N=h.getDerivedStateFromProps,(K=typeof N=="function"||typeof x.getSnapshotBeforeUpdate=="function")||typeof x.UNSAFE_componentWillReceiveProps!="function"&&typeof x.componentWillReceiveProps!="function"||(C!==ct||tt!==B)&&U$(a,x,d,B),Ws=!1,tt=a.memoizedState,x.state=tt,Qa(a,d,x,w),La();var it=a.memoizedState;C!==ct||tt!==it||Ws||o!==null&&o.dependencies!==null&&Fu(o.dependencies)?(typeof N=="function"&&(Tm(a,h,N,d),it=a.memoizedState),(ot=Ws||Z$(a,h,ot,d,tt,it,B)||o!==null&&o.dependencies!==null&&Fu(o.dependencies))?(K||typeof x.UNSAFE_componentWillUpdate!="function"&&typeof x.componentWillUpdate!="function"||(typeof x.componentWillUpdate=="function"&&x.componentWillUpdate(d,it,B),typeof x.UNSAFE_componentWillUpdate=="function"&&x.UNSAFE_componentWillUpdate(d,it,B)),typeof x.componentDidUpdate=="function"&&(a.flags|=4),typeof x.getSnapshotBeforeUpdate=="function"&&(a.flags|=1024)):(typeof x.componentDidUpdate!="function"||C===o.memoizedProps&&tt===o.memoizedState||(a.flags|=4),typeof x.getSnapshotBeforeUpdate!="function"||C===o.memoizedProps&&tt===o.memoizedState||(a.flags|=1024),a.memoizedProps=d,a.memoizedState=it),x.props=d,x.state=it,x.context=B,d=ot):(typeof x.componentDidUpdate!="function"||C===o.memoizedProps&&tt===o.memoizedState||(a.flags|=4),typeof x.getSnapshotBeforeUpdate!="function"||C===o.memoizedProps&&tt===o.memoizedState||(a.flags|=1024),d=!1)}return x=d,ph(o,a),d=(a.flags&128)!==0,x||d?(x=a.stateNode,h=d&&typeof h.getDerivedStateFromError!="function"?null:x.render(),a.flags|=1,o!==null&&d?(a.child=Xr(a,o.child,null,w),a.child=Xr(a,null,h,w)):Pe(o,a,h,w),a.memoizedState=x.state,o=a.child):o=hs(o,a,w),o}function a2(o,a,h,d){return Wr(),a.flags|=256,Pe(o,a,h,d),a.child}var Mm={dehydrated:null,treeContext:null,retryLane:0,hydrationErrors:null};function Am(o){return{baseLanes:o,cachePool:X5()}}function Hm(o,a,h){return o=o!==null?o.childLanes&~h:0,a&&(o|=Hn),o}function c2(o,a,h){var d=a.pendingProps,w=!1,x=(a.flags&128)!==0,C;if((C=x)||(C=o!==null&&o.memoizedState===null?!1:(be.current&2)!==0),C&&(w=!0,a.flags&=-129),C=(a.flags&32)!==0,a.flags&=-33,o===null){if(Pt){if(w?Is(a):Fs(),(o=ce)?(o=yx(o,Jn),o=o!==null&&o.data!=="&"?o:null,o!==null&&(a.memoizedState={dehydrated:o,treeContext:Ls!==null?{id:Ti,overflow:Ni}:null,retryLane:536870912,hydrationErrors:null},h=Q5(o),h.return=a,a.child=h,Le=a,ce=null)):o=null,o===null)throw Ps(a);return wg(o)?a.lanes=32:a.lanes=536870912,null}var N=d.children;return d=d.fallback,w?(Fs(),w=a.mode,N=mh({mode:"hidden",children:N},w),d=qr(d,w,h,null),N.return=a,d.return=a,N.sibling=d,a.child=N,d=a.child,d.memoizedState=Am(h),d.childLanes=Hm(o,C,h),a.memoizedState=Mm,Ua(null,d)):(Is(a),zm(a,N))}var B=o.memoizedState;if(B!==null&&(N=B.dehydrated,N!==null)){if(x)a.flags&256?(Is(a),a.flags&=-257,a=Bm(o,a,h)):a.memoizedState!==null?(Fs(),a.child=o.child,a.flags|=128,a=null):(Fs(),N=d.fallback,w=a.mode,d=mh({mode:"visible",children:d.children},w),N=qr(N,w,h,null),N.flags|=2,d.return=a,N.return=a,d.sibling=N,a.child=d,Xr(a,o.child,null,h),d=a.child,d.memoizedState=Am(h),d.childLanes=Hm(o,C,h),a.memoizedState=Mm,a=Ua(null,d));else if(Is(a),wg(N)){if(C=N.nextSibling&&N.nextSibling.dataset,C)var K=C.dgst;C=K,d=Error(i(419)),d.stack="",d.digest=C,Aa({value:d,source:null,stack:null}),a=Bm(o,a,h)}else if(Te||nl(o,a,h,!1),C=(h&o.childLanes)!==0,Te||C){if(C=se,C!==null&&(d=Cu(C,h),d!==0&&d!==B.retryLane))throw B.retryLane=d,Pr(o,d),xn(C,o,d),Rm;yg(N)||Oh(),a=Bm(o,a,h)}else yg(N)?(a.flags|=192,a.child=o.child,a=null):(o=B.treeContext,ce=ei(N.nextSibling),Le=a,Pt=!0,Qs=null,Jn=!1,o!==null&&W5(a,o),a=zm(a,d.children),a.flags|=4096);return a}return w?(Fs(),N=d.fallback,w=a.mode,B=o.child,K=B.sibling,d=rs(B,{mode:"hidden",children:d.children}),d.subtreeFlags=B.subtreeFlags&65011712,K!==null?N=rs(K,N):(N=qr(N,w,h,null),N.flags|=2),N.return=a,d.return=a,d.sibling=N,a.child=d,Ua(null,d),d=a.child,N=o.child.memoizedState,N===null?N=Am(h):(w=N.cachePool,w!==null?(B=Ee._currentValue,w=w.parent!==B?{parent:B,pool:B}:w):w=X5(),N={baseLanes:N.baseLanes|h,cachePool:w}),d.memoizedState=N,d.childLanes=Hm(o,C,h),a.memoizedState=Mm,Ua(o.child,d)):(Is(a),h=o.child,o=h.sibling,h=rs(h,{mode:"visible",children:d.children}),h.return=a,h.sibling=null,o!==null&&(C=a.deletions,C===null?(a.deletions=[o],a.flags|=16):C.push(o)),a.child=h,a.memoizedState=null,h)}function zm(o,a){return a=mh({mode:"visible",children:a},o.mode),a.return=o,o.child=a}function mh(o,a){return o=Rn(22,o,null,a),o.lanes=0,o}function Bm(o,a,h){return Xr(a,o.child,null,h),o=zm(a,a.pendingProps.children),o.flags|=2,a.memoizedState=null,o}function u2(o,a,h){o.lanes|=a;var d=o.alternate;d!==null&&(d.lanes|=a),Jp(o.return,a,h)}function Ym(o,a,h,d,w,x){var C=o.memoizedState;C===null?o.memoizedState={isBackwards:a,rendering:null,renderingStartTime:0,last:d,tail:h,tailMode:w,treeForkCount:x}:(C.isBackwards=a,C.rendering=null,C.renderingStartTime=0,C.last=d,C.tail=h,C.tailMode=w,C.treeForkCount=x)}function h2(o,a,h){var d=a.pendingProps,w=d.revealOrder,x=d.tail;d=d.children;var C=be.current,N=(C&2)!==0;if(N?(C=C&1|2,a.flags|=128):C&=1,J(be,C),Pe(o,a,d,h),d=Pt?Ma:0,!N&&o!==null&&(o.flags&128)!==0)t:for(o=a.child;o!==null;){if(o.tag===13)o.memoizedState!==null&&u2(o,h,a);else if(o.tag===19)u2(o,h,a);else if(o.child!==null){o.child.return=o,o=o.child;continue}if(o===a)break t;for(;o.sibling===null;){if(o.return===null||o.return===a)break t;o=o.return}o.sibling.return=o.return,o=o.sibling}switch(w){case"forwards":for(h=a.child,w=null;h!==null;)o=h.alternate,o!==null&&ih(o)===null&&(w=h),h=h.sibling;h=w,h===null?(w=a.child,a.child=null):(w=h.sibling,h.sibling=null),Ym(a,!1,w,h,x,d);break;case"backwards":case"unstable_legacy-backwards":for(h=null,w=a.child,a.child=null;w!==null;){if(o=w.alternate,o!==null&&ih(o)===null){a.child=w;break}o=w.sibling,w.sibling=h,h=w,w=o}Ym(a,!0,h,null,x,d);break;case"together":Ym(a,!1,null,null,void 0,d);break;default:a.memoizedState=null}return a.child}function hs(o,a,h){if(o!==null&&(a.dependencies=o.dependencies),Ks|=a.lanes,(h&a.childLanes)===0)if(o!==null){if(nl(o,a,h,!1),(h&a.childLanes)===0)return null}else return null;if(o!==null&&a.child!==o.child)throw Error(i(153));if(a.child!==null){for(o=a.child,h=rs(o,o.pendingProps),a.child=h,h.return=a;o.sibling!==null;)o=o.sibling,h=h.sibling=rs(o,o.pendingProps),h.return=a;h.sibling=null}return a.child}function Gm(o,a){return(o.lanes&a)!==0?!0:(o=o.dependencies,!!(o!==null&&Fu(o)))}function tT(o,a,h){switch(a.tag){case 3:rt(a,a.stateNode.containerInfo),qs(a,Ee,o.memoizedState.cache),Wr();break;case 27:case 5:Ct(a);break;case 4:rt(a,a.stateNode.containerInfo);break;case 10:qs(a,a.type,a.memoizedProps.value);break;case 31:if(a.memoizedState!==null)return a.flags|=128,hm(a),null;break;case 13:var d=a.memoizedState;if(d!==null)return d.dehydrated!==null?(Is(a),a.flags|=128,null):(h&a.child.childLanes)!==0?c2(o,a,h):(Is(a),o=hs(o,a,h),o!==null?o.sibling:null);Is(a);break;case 19:var w=(o.flags&128)!==0;if(d=(h&a.childLanes)!==0,d||(nl(o,a,h,!1),d=(h&a.childLanes)!==0),w){if(d)return h2(o,a,h);a.flags|=128}if(w=a.memoizedState,w!==null&&(w.rendering=null,w.tail=null,w.lastEffect=null),J(be,be.current),d)break;return null;case 22:return a.lanes=0,i2(o,a,h,a.pendingProps);case 24:qs(a,Ee,o.memoizedState.cache)}return hs(o,a,h)}function f2(o,a,h){if(o!==null)if(o.memoizedProps!==a.pendingProps)Te=!0;else{if(!Gm(o,h)&&(a.flags&128)===0)return Te=!1,tT(o,a,h);Te=(o.flags&131072)!==0}else Te=!1,Pt&&(a.flags&1048576)!==0&&q5(a,Ma,a.index);switch(a.lanes=0,a.tag){case 16:t:{var d=a.pendingProps;if(o=Fr(a.elementType),a.type=o,typeof o=="function")Wp(o)?(d=Jr(o,d),a.tag=1,a=l2(null,a,o,d,h)):(a.tag=0,a=_m(null,a,o,d,h));else{if(o!=null){var w=o.$$typeof;if(w===D){a.tag=11,a=t2(null,a,o,d,h);break t}else if(w===H){a.tag=14,a=e2(null,a,o,d,h);break t}}throw a=M(o)||o,Error(i(306,a,""))}}return a;case 0:return _m(o,a,a.type,a.pendingProps,h);case 1:return d=a.type,w=Jr(d,a.pendingProps),l2(o,a,d,w,h);case 3:t:{if(rt(a,a.stateNode.containerInfo),o===null)throw Error(i(387));d=a.pendingProps;var x=a.memoizedState;w=x.element,om(o,a),Qa(a,d,null,h);var C=a.memoizedState;if(d=C.cache,qs(a,Ee,d),d!==x.cache&&tm(a,[Ee],h,!0),La(),d=C.element,x.isDehydrated)if(x={element:d,isDehydrated:!1,cache:C.cache},a.updateQueue.baseState=x,a.memoizedState=x,a.flags&256){a=a2(o,a,d,h);break t}else if(d!==w){w=Vn(Error(i(424)),a),Aa(w),a=a2(o,a,d,h);break t}else{switch(o=a.stateNode.containerInfo,o.nodeType){case 9:o=o.body;break;default:o=o.nodeName==="HTML"?o.ownerDocument.body:o}for(ce=ei(o.firstChild),Le=a,Pt=!0,Qs=null,Jn=!0,h=i$(a,null,d,h),a.child=h;h;)h.flags=h.flags&-3|4096,h=h.sibling}else{if(Wr(),d===w){a=hs(o,a,h);break t}Pe(o,a,d,h)}a=a.child}return a;case 26:return ph(o,a),o===null?(h=Sx(a.type,null,a.pendingProps,null))?a.memoizedState=h:Pt||(h=a.type,o=a.pendingProps,d=jh(ft.current).createElement(h),d[Me]=a,d[Ie]=o,qe(d,h,o),Ce(d),a.stateNode=d):a.memoizedState=Sx(a.type,o.memoizedProps,a.pendingProps,o.memoizedState),null;case 27:return Ct(a),o===null&&Pt&&(d=a.stateNode=xx(a.type,a.pendingProps,ft.current),Le=a,Jn=!0,w=ce,ir(a.type)?($g=w,ce=ei(d.firstChild)):ce=w),Pe(o,a,a.pendingProps.children,h),ph(o,a),o===null&&(a.flags|=4194304),a.child;case 5:return o===null&&Pt&&((w=d=ce)&&(d=NT(d,a.type,a.pendingProps,Jn),d!==null?(a.stateNode=d,Le=a,ce=ei(d.firstChild),Jn=!1,w=!0):w=!1),w||Ps(a)),Ct(a),w=a.type,x=a.pendingProps,C=o!==null?o.memoizedProps:null,d=x.children,pg(w,x)?d=null:C!==null&&pg(w,C)&&(a.flags|=32),a.memoizedState!==null&&(w=dm(o,a,WD,null,null,h),ac._currentValue=w),ph(o,a),Pe(o,a,d,h),a.child;case 6:return o===null&&Pt&&((o=h=ce)&&(h=jT(h,a.pendingProps,Jn),h!==null?(a.stateNode=h,Le=a,ce=null,o=!0):o=!1),o||Ps(a)),null;case 13:return c2(o,a,h);case 4:return rt(a,a.stateNode.containerInfo),d=a.pendingProps,o===null?a.child=Xr(a,null,d,h):Pe(o,a,d,h),a.child;case 11:return t2(o,a,a.type,a.pendingProps,h);case 7:return Pe(o,a,a.pendingProps,h),a.child;case 8:return Pe(o,a,a.pendingProps.children,h),a.child;case 12:return Pe(o,a,a.pendingProps.children,h),a.child;case 10:return d=a.pendingProps,qs(a,a.type,d.value),Pe(o,a,d.children,h),a.child;case 9:return w=a.type._context,d=a.pendingProps.children,Ur(a),w=Qe(w),d=d(w),a.flags|=1,Pe(o,a,d,h),a.child;case 14:return e2(o,a,a.type,a.pendingProps,h);case 15:return n2(o,a,a.type,a.pendingProps,h);case 19:return h2(o,a,h);case 31:return JD(o,a,h);case 22:return i2(o,a,h,a.pendingProps);case 24:return Ur(a),d=Qe(Ee),o===null?(w=im(),w===null&&(w=se,x=em(),w.pooledCache=x,x.refCount++,x!==null&&(w.pooledCacheLanes|=h),w=x),a.memoizedState={parent:d,cache:w},rm(a),qs(a,Ee,w)):((o.lanes&h)!==0&&(om(o,a),Qa(a,null,null,h),La()),w=o.memoizedState,x=a.memoizedState,w.parent!==d?(w={parent:d,cache:d},a.memoizedState=w,a.lanes===0&&(a.memoizedState=a.updateQueue.baseState=w),qs(a,Ee,d)):(d=x.cache,qs(a,Ee,d),d!==w.cache&&tm(a,[Ee],h,!0))),Pe(o,a,a.pendingProps.children,h),a.child;case 29:throw a.pendingProps}throw Error(i(156,a.tag))}function fs(o){o.flags|=4}function Lm(o,a,h,d,w){if((a=(o.mode&32)!==0)&&(a=!1),a){if(o.flags|=16777216,(w&335544128)===w)if(o.stateNode.complete)o.flags|=8192;else if(Y2())o.flags|=8192;else throw Vr=Ju,sm}else o.flags&=-16777217}function d2(o,a){if(a.type!=="stylesheet"||(a.state.loading&4)!==0)o.flags&=-16777217;else if(o.flags|=16777216,!Dx(a))if(Y2())o.flags|=8192;else throw Vr=Ju,sm}function gh(o,a){a!==null&&(o.flags|=4),o.flags&16384&&(a=o.tag!==22?Su():536870912,o.lanes|=a,pl|=a)}function Ia(o,a){if(!Pt)switch(o.tailMode){case"hidden":a=o.tail;for(var h=null;a!==null;)a.alternate!==null&&(h=a),a=a.sibling;h===null?o.tail=null:h.sibling=null;break;case"collapsed":h=o.tail;for(var d=null;h!==null;)h.alternate!==null&&(d=h),h=h.sibling;d===null?a||o.tail===null?o.tail=null:o.tail.sibling=null:d.sibling=null}}function ue(o){var a=o.alternate!==null&&o.alternate.child===o.child,h=0,d=0;if(a)for(var w=o.child;w!==null;)h|=w.lanes|w.childLanes,d|=w.subtreeFlags&65011712,d|=w.flags&65011712,w.return=o,w=w.sibling;else for(w=o.child;w!==null;)h|=w.lanes|w.childLanes,d|=w.subtreeFlags,d|=w.flags,w.return=o,w=w.sibling;return o.subtreeFlags|=d,o.childLanes=h,a}function eT(o,a,h){var d=a.pendingProps;switch(Fp(a),a.tag){case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return ue(a),null;case 1:return ue(a),null;case 3:return h=a.stateNode,d=null,o!==null&&(d=o.memoizedState.cache),a.memoizedState.cache!==d&&(a.flags|=2048),as(Ee),ht(),h.pendingContext&&(h.context=h.pendingContext,h.pendingContext=null),(o===null||o.child===null)&&(el(a)?fs(a):o===null||o.memoizedState.isDehydrated&&(a.flags&256)===0||(a.flags|=1024,Xp())),ue(a),null;case 26:var w=a.type,x=a.memoizedState;return o===null?(fs(a),x!==null?(ue(a),d2(a,x)):(ue(a),Lm(a,w,null,d,h))):x?x!==o.memoizedState?(fs(a),ue(a),d2(a,x)):(ue(a),a.flags&=-16777217):(o=o.memoizedProps,o!==d&&fs(a),ue(a),Lm(a,w,o,d,h)),null;case 27:if(Et(a),h=ft.current,w=a.type,o!==null&&a.stateNode!=null)o.memoizedProps!==d&&fs(a);else{if(!d){if(a.stateNode===null)throw Error(i(166));return ue(a),null}o=st.current,el(a)?Z5(a):(o=xx(w,d,h),a.stateNode=o,fs(a))}return ue(a),null;case 5:if(Et(a),w=a.type,o!==null&&a.stateNode!=null)o.memoizedProps!==d&&fs(a);else{if(!d){if(a.stateNode===null)throw Error(i(166));return ue(a),null}if(x=st.current,el(a))Z5(a);else{var C=jh(ft.current);switch(x){case 1:x=C.createElementNS("http://www.w3.org/2000/svg",w);break;case 2:x=C.createElementNS("http://www.w3.org/1998/Math/MathML",w);break;default:switch(w){case"svg":x=C.createElementNS("http://www.w3.org/2000/svg",w);break;case"math":x=C.createElementNS("http://www.w3.org/1998/Math/MathML",w);break;case"script":x=C.createElement("div"),x.innerHTML="<script><\/script>",x=x.removeChild(x.firstChild);break;case"select":x=typeof d.is=="string"?C.createElement("select",{is:d.is}):C.createElement("select"),d.multiple?x.multiple=!0:d.size&&(x.size=d.size);break;default:x=typeof d.is=="string"?C.createElement(w,{is:d.is}):C.createElement(w)}}x[Me]=a,x[Ie]=d;t:for(C=a.child;C!==null;){if(C.tag===5||C.tag===6)x.appendChild(C.stateNode);else if(C.tag!==4&&C.tag!==27&&C.child!==null){C.child.return=C,C=C.child;continue}if(C===a)break t;for(;C.sibling===null;){if(C.return===null||C.return===a)break t;C=C.return}C.sibling.return=C.return,C=C.sibling}a.stateNode=x;t:switch(qe(x,w,d),w){case"button":case"input":case"select":case"textarea":d=!!d.autoFocus;break t;case"img":d=!0;break t;default:d=!1}d&&fs(a)}}return ue(a),Lm(a,a.type,o===null?null:o.memoizedProps,a.pendingProps,h),null;case 6:if(o&&a.stateNode!=null)o.memoizedProps!==d&&fs(a);else{if(typeof d!="string"&&a.stateNode===null)throw Error(i(166));if(o=ft.current,el(a)){if(o=a.stateNode,h=a.memoizedProps,d=null,w=Le,w!==null)switch(w.tag){case 27:case 5:d=w.memoizedProps}o[Me]=a,o=!!(o.nodeValue===h||d!==null&&d.suppressHydrationWarning===!0||cx(o.nodeValue,h)),o||Ps(a,!0)}else o=jh(o).createTextNode(d),o[Me]=a,a.stateNode=o}return ue(a),null;case 31:if(h=a.memoizedState,o===null||o.memoizedState!==null){if(d=el(a),h!==null){if(o===null){if(!d)throw Error(i(318));if(o=a.memoizedState,o=o!==null?o.dehydrated:null,!o)throw Error(i(557));o[Me]=a}else Wr(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;ue(a),o=!1}else h=Xp(),o!==null&&o.memoizedState!==null&&(o.memoizedState.hydrationErrors=h),o=!0;if(!o)return a.flags&256?(Mn(a),a):(Mn(a),null);if((a.flags&128)!==0)throw Error(i(558))}return ue(a),null;case 13:if(d=a.memoizedState,o===null||o.memoizedState!==null&&o.memoizedState.dehydrated!==null){if(w=el(a),d!==null&&d.dehydrated!==null){if(o===null){if(!w)throw Error(i(318));if(w=a.memoizedState,w=w!==null?w.dehydrated:null,!w)throw Error(i(317));w[Me]=a}else Wr(),(a.flags&128)===0&&(a.memoizedState=null),a.flags|=4;ue(a),w=!1}else w=Xp(),o!==null&&o.memoizedState!==null&&(o.memoizedState.hydrationErrors=w),w=!0;if(!w)return a.flags&256?(Mn(a),a):(Mn(a),null)}return Mn(a),(a.flags&128)!==0?(a.lanes=h,a):(h=d!==null,o=o!==null&&o.memoizedState!==null,h&&(d=a.child,w=null,d.alternate!==null&&d.alternate.memoizedState!==null&&d.alternate.memoizedState.cachePool!==null&&(w=d.alternate.memoizedState.cachePool.pool),x=null,d.memoizedState!==null&&d.memoizedState.cachePool!==null&&(x=d.memoizedState.cachePool.pool),x!==w&&(d.flags|=2048)),h!==o&&h&&(a.child.flags|=8192),gh(a,a.updateQueue),ue(a),null);case 4:return ht(),o===null&&cg(a.stateNode.containerInfo),ue(a),null;case 10:return as(a.type),ue(a),null;case 19:if(R(be),d=a.memoizedState,d===null)return ue(a),null;if(w=(a.flags&128)!==0,x=d.rendering,x===null)if(w)Ia(d,!1);else{if(we!==0||o!==null&&(o.flags&128)!==0)for(o=a.child;o!==null;){if(x=ih(o),x!==null){for(a.flags|=128,Ia(d,!1),o=x.updateQueue,a.updateQueue=o,gh(a,o),a.subtreeFlags=0,o=h,h=a.child;h!==null;)L5(h,o),h=h.sibling;return J(be,be.current&1|2),Pt&&os(a,d.treeForkCount),a.child}o=o.sibling}d.tail!==null&&xe()>bh&&(a.flags|=128,w=!0,Ia(d,!1),a.lanes=4194304)}else{if(!w)if(o=ih(x),o!==null){if(a.flags|=128,w=!0,o=o.updateQueue,a.updateQueue=o,gh(a,o),Ia(d,!0),d.tail===null&&d.tailMode==="hidden"&&!x.alternate&&!Pt)return ue(a),null}else 2*xe()-d.renderingStartTime>bh&&h!==536870912&&(a.flags|=128,w=!0,Ia(d,!1),a.lanes=4194304);d.isBackwards?(x.sibling=a.child,a.child=x):(o=d.last,o!==null?o.sibling=x:a.child=x,d.last=x)}return d.tail!==null?(o=d.tail,d.rendering=o,d.tail=o.sibling,d.renderingStartTime=xe(),o.sibling=null,h=be.current,J(be,w?h&1|2:h&1),Pt&&os(a,d.treeForkCount),o):(ue(a),null);case 22:case 23:return Mn(a),um(),d=a.memoizedState!==null,o!==null?o.memoizedState!==null!==d&&(a.flags|=8192):d&&(a.flags|=8192),d?(h&536870912)!==0&&(a.flags&128)===0&&(ue(a),a.subtreeFlags&6&&(a.flags|=8192)):ue(a),h=a.updateQueue,h!==null&&gh(a,h.retryQueue),h=null,o!==null&&o.memoizedState!==null&&o.memoizedState.cachePool!==null&&(h=o.memoizedState.cachePool.pool),d=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(d=a.memoizedState.cachePool.pool),d!==h&&(a.flags|=2048),o!==null&&R(Ir),null;case 24:return h=null,o!==null&&(h=o.memoizedState.cache),a.memoizedState.cache!==h&&(a.flags|=2048),as(Ee),ue(a),null;case 25:return null;case 30:return null}throw Error(i(156,a.tag))}function nT(o,a){switch(Fp(a),a.tag){case 1:return o=a.flags,o&65536?(a.flags=o&-65537|128,a):null;case 3:return as(Ee),ht(),o=a.flags,(o&65536)!==0&&(o&128)===0?(a.flags=o&-65537|128,a):null;case 26:case 27:case 5:return Et(a),null;case 31:if(a.memoizedState!==null){if(Mn(a),a.alternate===null)throw Error(i(340));Wr()}return o=a.flags,o&65536?(a.flags=o&-65537|128,a):null;case 13:if(Mn(a),o=a.memoizedState,o!==null&&o.dehydrated!==null){if(a.alternate===null)throw Error(i(340));Wr()}return o=a.flags,o&65536?(a.flags=o&-65537|128,a):null;case 19:return R(be),null;case 4:return ht(),null;case 10:return as(a.type),null;case 22:case 23:return Mn(a),um(),o!==null&&R(Ir),o=a.flags,o&65536?(a.flags=o&-65537|128,a):null;case 24:return as(Ee),null;case 25:return null;default:return null}}function p2(o,a){switch(Fp(a),a.tag){case 3:as(Ee),ht();break;case 26:case 27:case 5:Et(a);break;case 4:ht();break;case 31:a.memoizedState!==null&&Mn(a);break;case 13:Mn(a);break;case 19:R(be);break;case 10:as(a.type);break;case 22:case 23:Mn(a),um(),o!==null&&R(Ir);break;case 24:as(Ee)}}function Fa(o,a){try{var h=a.updateQueue,d=h!==null?h.lastEffect:null;if(d!==null){var w=d.next;h=w;do{if((h.tag&o)===o){d=void 0;var x=h.create,C=h.inst;d=x(),C.destroy=d}h=h.next}while(h!==w)}}catch(N){Kt(a,a.return,N)}}function Vs(o,a,h){try{var d=a.updateQueue,w=d!==null?d.lastEffect:null;if(w!==null){var x=w.next;d=x;do{if((d.tag&o)===o){var C=d.inst,N=C.destroy;if(N!==void 0){C.destroy=void 0,w=a;var B=h,K=N;try{K()}catch(ot){Kt(w,B,ot)}}}d=d.next}while(d!==x)}}catch(ot){Kt(a,a.return,ot)}}function m2(o){var a=o.updateQueue;if(a!==null){var h=o.stateNode;try{r$(a,h)}catch(d){Kt(o,o.return,d)}}}function g2(o,a,h){h.props=Jr(o.type,o.memoizedProps),h.state=o.memoizedState;try{h.componentWillUnmount()}catch(d){Kt(o,a,d)}}function Va(o,a){try{var h=o.ref;if(h!==null){switch(o.tag){case 26:case 27:case 5:var d=o.stateNode;break;case 30:d=o.stateNode;break;default:d=o.stateNode}typeof h=="function"?o.refCleanup=h(d):h.current=d}}catch(w){Kt(o,a,w)}}function ji(o,a){var h=o.ref,d=o.refCleanup;if(h!==null)if(typeof d=="function")try{d()}catch(w){Kt(o,a,w)}finally{o.refCleanup=null,o=o.alternate,o!=null&&(o.refCleanup=null)}else if(typeof h=="function")try{h(null)}catch(w){Kt(o,a,w)}else h.current=null}function y2(o){var a=o.type,h=o.memoizedProps,d=o.stateNode;try{t:switch(a){case"button":case"input":case"select":case"textarea":h.autoFocus&&d.focus();break t;case"img":h.src?d.src=h.src:h.srcSet&&(d.srcset=h.srcSet)}}catch(w){Kt(o,o.return,w)}}function Qm(o,a,h){try{var d=o.stateNode;OT(d,o.type,h,a),d[Ie]=a}catch(w){Kt(o,o.return,w)}}function w2(o){return o.tag===5||o.tag===3||o.tag===26||o.tag===27&&ir(o.type)||o.tag===4}function Pm(o){t:for(;;){for(;o.sibling===null;){if(o.return===null||w2(o.return))return null;o=o.return}for(o.sibling.return=o.return,o=o.sibling;o.tag!==5&&o.tag!==6&&o.tag!==18;){if(o.tag===27&&ir(o.type)||o.flags&2||o.child===null||o.tag===4)continue t;o.child.return=o,o=o.child}if(!(o.flags&2))return o.stateNode}}function qm(o,a,h){var d=o.tag;if(d===5||d===6)o=o.stateNode,a?(h.nodeType===9?h.body:h.nodeName==="HTML"?h.ownerDocument.body:h).insertBefore(o,a):(a=h.nodeType===9?h.body:h.nodeName==="HTML"?h.ownerDocument.body:h,a.appendChild(o),h=h._reactRootContainer,h!=null||a.onclick!==null||(a.onclick=is));else if(d!==4&&(d===27&&ir(o.type)&&(h=o.stateNode,a=null),o=o.child,o!==null))for(qm(o,a,h),o=o.sibling;o!==null;)qm(o,a,h),o=o.sibling}function yh(o,a,h){var d=o.tag;if(d===5||d===6)o=o.stateNode,a?h.insertBefore(o,a):h.appendChild(o);else if(d!==4&&(d===27&&ir(o.type)&&(h=o.stateNode),o=o.child,o!==null))for(yh(o,a,h),o=o.sibling;o!==null;)yh(o,a,h),o=o.sibling}function $2(o){var a=o.stateNode,h=o.memoizedProps;try{for(var d=o.type,w=a.attributes;w.length;)a.removeAttributeNode(w[0]);qe(a,d,h),a[Me]=o,a[Ie]=h}catch(x){Kt(o,o.return,x)}}var ds=!1,Ne=!1,Wm=!1,x2=typeof WeakSet=="function"?WeakSet:Set,Be=null;function iT(o,a){if(o=o.containerInfo,fg=Bh,o=R5(o),Bp(o)){if("selectionStart"in o)var h={start:o.selectionStart,end:o.selectionEnd};else t:{h=(h=o.ownerDocument)&&h.defaultView||window;var d=h.getSelection&&h.getSelection();if(d&&d.rangeCount!==0){h=d.anchorNode;var w=d.anchorOffset,x=d.focusNode;d=d.focusOffset;try{h.nodeType,x.nodeType}catch{h=null;break t}var C=0,N=-1,B=-1,K=0,ot=0,ct=o,tt=null;e:for(;;){for(var it;ct!==h||w!==0&&ct.nodeType!==3||(N=C+w),ct!==x||d!==0&&ct.nodeType!==3||(B=C+d),ct.nodeType===3&&(C+=ct.nodeValue.length),(it=ct.firstChild)!==null;)tt=ct,ct=it;for(;;){if(ct===o)break e;if(tt===h&&++K===w&&(N=C),tt===x&&++ot===d&&(B=C),(it=ct.nextSibling)!==null)break;ct=tt,tt=ct.parentNode}ct=it}h=N===-1||B===-1?null:{start:N,end:B}}else h=null}h=h||{start:0,end:0}}else h=null;for(dg={focusedElem:o,selectionRange:h},Bh=!1,Be=a;Be!==null;)if(a=Be,o=a.child,(a.subtreeFlags&1028)!==0&&o!==null)o.return=a,Be=o;else for(;Be!==null;){switch(a=Be,x=a.alternate,o=a.flags,a.tag){case 0:if((o&4)!==0&&(o=a.updateQueue,o=o!==null?o.events:null,o!==null))for(h=0;h<o.length;h++)w=o[h],w.ref.impl=w.nextImpl;break;case 11:case 15:break;case 1:if((o&1024)!==0&&x!==null){o=void 0,h=a,w=x.memoizedProps,x=x.memoizedState,d=h.stateNode;try{var xt=Jr(h.type,w);o=d.getSnapshotBeforeUpdate(xt,x),d.__reactInternalSnapshotBeforeUpdate=o}catch(Dt){Kt(h,h.return,Dt)}}break;case 3:if((o&1024)!==0){if(o=a.stateNode.containerInfo,h=o.nodeType,h===9)gg(o);else if(h===1)switch(o.nodeName){case"HEAD":case"HTML":case"BODY":gg(o);break;default:o.textContent=""}}break;case 5:case 26:case 27:case 6:case 4:case 17:break;default:if((o&1024)!==0)throw Error(i(163))}if(o=a.sibling,o!==null){o.return=a.return,Be=o;break}Be=a.return}}function b2(o,a,h){var d=h.flags;switch(h.tag){case 0:case 11:case 15:ms(o,h),d&4&&Fa(5,h);break;case 1:if(ms(o,h),d&4)if(o=h.stateNode,a===null)try{o.componentDidMount()}catch(C){Kt(h,h.return,C)}else{var w=Jr(h.type,a.memoizedProps);a=a.memoizedState;try{o.componentDidUpdate(w,a,o.__reactInternalSnapshotBeforeUpdate)}catch(C){Kt(h,h.return,C)}}d&64&&m2(h),d&512&&Va(h,h.return);break;case 3:if(ms(o,h),d&64&&(o=h.updateQueue,o!==null)){if(a=null,h.child!==null)switch(h.child.tag){case 27:case 5:a=h.child.stateNode;break;case 1:a=h.child.stateNode}try{r$(o,a)}catch(C){Kt(h,h.return,C)}}break;case 27:a===null&&d&4&&$2(h);case 26:case 5:ms(o,h),a===null&&d&4&&y2(h),d&512&&Va(h,h.return);break;case 12:ms(o,h);break;case 31:ms(o,h),d&4&&O2(o,h);break;case 13:ms(o,h),d&4&&k2(o,h),d&64&&(o=h.memoizedState,o!==null&&(o=o.dehydrated,o!==null&&(h=fT.bind(null,h),RT(o,h))));break;case 22:if(d=h.memoizedState!==null||ds,!d){a=a!==null&&a.memoizedState!==null||Ne,w=ds;var x=Ne;ds=d,(Ne=a)&&!x?gs(o,h,(h.subtreeFlags&8772)!==0):ms(o,h),ds=w,Ne=x}break;case 30:break;default:ms(o,h)}}function v2(o){var a=o.alternate;a!==null&&(o.alternate=null,v2(a)),o.child=null,o.deletions=null,o.sibling=null,o.tag===5&&(a=o.stateNode,a!==null&&$a(a)),o.stateNode=null,o.return=null,o.dependencies=null,o.memoizedProps=null,o.memoizedState=null,o.pendingProps=null,o.stateNode=null,o.updateQueue=null}var de=null,gn=!1;function ps(o,a,h){for(h=h.child;h!==null;)S2(o,a,h),h=h.sibling}function S2(o,a,h){if(sn&&typeof sn.onCommitFiberUnmount=="function")try{sn.onCommitFiberUnmount(Ar,h)}catch{}switch(h.tag){case 26:Ne||ji(h,a),ps(o,a,h),h.memoizedState?h.memoizedState.count--:h.stateNode&&(h=h.stateNode,h.parentNode.removeChild(h));break;case 27:Ne||ji(h,a);var d=de,w=gn;ir(h.type)&&(de=h.stateNode,gn=!1),ps(o,a,h),rc(h.stateNode),de=d,gn=w;break;case 5:Ne||ji(h,a);case 6:if(d=de,w=gn,de=null,ps(o,a,h),de=d,gn=w,de!==null)if(gn)try{(de.nodeType===9?de.body:de.nodeName==="HTML"?de.ownerDocument.body:de).removeChild(h.stateNode)}catch(x){Kt(h,a,x)}else try{de.removeChild(h.stateNode)}catch(x){Kt(h,a,x)}break;case 18:de!==null&&(gn?(o=de,mx(o.nodeType===9?o.body:o.nodeName==="HTML"?o.ownerDocument.body:o,h.stateNode),vl(o)):mx(de,h.stateNode));break;case 4:d=de,w=gn,de=h.stateNode.containerInfo,gn=!0,ps(o,a,h),de=d,gn=w;break;case 0:case 11:case 14:case 15:Vs(2,h,a),Ne||Vs(4,h,a),ps(o,a,h);break;case 1:Ne||(ji(h,a),d=h.stateNode,typeof d.componentWillUnmount=="function"&&g2(h,a,d)),ps(o,a,h);break;case 21:ps(o,a,h);break;case 22:Ne=(d=Ne)||h.memoizedState!==null,ps(o,a,h),Ne=d;break;default:ps(o,a,h)}}function O2(o,a){if(a.memoizedState===null&&(o=a.alternate,o!==null&&(o=o.memoizedState,o!==null))){o=o.dehydrated;try{vl(o)}catch(h){Kt(a,a.return,h)}}}function k2(o,a){if(a.memoizedState===null&&(o=a.alternate,o!==null&&(o=o.memoizedState,o!==null&&(o=o.dehydrated,o!==null))))try{vl(o)}catch(h){Kt(a,a.return,h)}}function sT(o){switch(o.tag){case 31:case 13:case 19:var a=o.stateNode;return a===null&&(a=o.stateNode=new x2),a;case 22:return o=o.stateNode,a=o._retryCache,a===null&&(a=o._retryCache=new x2),a;default:throw Error(i(435,o.tag))}}function wh(o,a){var h=sT(o);a.forEach(function(d){if(!h.has(d)){h.add(d);var w=dT.bind(null,o,d);d.then(w,w)}})}function yn(o,a){var h=a.deletions;if(h!==null)for(var d=0;d<h.length;d++){var w=h[d],x=o,C=a,N=C;t:for(;N!==null;){switch(N.tag){case 27:if(ir(N.type)){de=N.stateNode,gn=!1;break t}break;case 5:de=N.stateNode,gn=!1;break t;case 3:case 4:de=N.stateNode.containerInfo,gn=!0;break t}N=N.return}if(de===null)throw Error(i(160));S2(x,C,w),de=null,gn=!1,x=w.alternate,x!==null&&(x.return=null),w.return=null}if(a.subtreeFlags&13886)for(a=a.child;a!==null;)C2(a,o),a=a.sibling}var fi=null;function C2(o,a){var h=o.alternate,d=o.flags;switch(o.tag){case 0:case 11:case 14:case 15:yn(a,o),wn(o),d&4&&(Vs(3,o,o.return),Fa(3,o),Vs(5,o,o.return));break;case 1:yn(a,o),wn(o),d&512&&(Ne||h===null||ji(h,h.return)),d&64&&ds&&(o=o.updateQueue,o!==null&&(d=o.callbacks,d!==null&&(h=o.shared.hiddenCallbacks,o.shared.hiddenCallbacks=h===null?d:h.concat(d))));break;case 26:var w=fi;if(yn(a,o),wn(o),d&512&&(Ne||h===null||ji(h,h.return)),d&4){var x=h!==null?h.memoizedState:null;if(d=o.memoizedState,h===null)if(d===null)if(o.stateNode===null){t:{d=o.type,h=o.memoizedProps,w=w.ownerDocument||w;e:switch(d){case"title":x=w.getElementsByTagName("title")[0],(!x||x[Br]||x[Me]||x.namespaceURI==="http://www.w3.org/2000/svg"||x.hasAttribute("itemprop"))&&(x=w.createElement(d),w.head.insertBefore(x,w.querySelector("head > title"))),qe(x,d,h),x[Me]=o,Ce(x),d=x;break t;case"link":var C=Cx("link","href",w).get(d+(h.href||""));if(C){for(var N=0;N<C.length;N++)if(x=C[N],x.getAttribute("href")===(h.href==null||h.href===""?null:h.href)&&x.getAttribute("rel")===(h.rel==null?null:h.rel)&&x.getAttribute("title")===(h.title==null?null:h.title)&&x.getAttribute("crossorigin")===(h.crossOrigin==null?null:h.crossOrigin)){C.splice(N,1);break e}}x=w.createElement(d),qe(x,d,h),w.head.appendChild(x);break;case"meta":if(C=Cx("meta","content",w).get(d+(h.content||""))){for(N=0;N<C.length;N++)if(x=C[N],x.getAttribute("content")===(h.content==null?null:""+h.content)&&x.getAttribute("name")===(h.name==null?null:h.name)&&x.getAttribute("property")===(h.property==null?null:h.property)&&x.getAttribute("http-equiv")===(h.httpEquiv==null?null:h.httpEquiv)&&x.getAttribute("charset")===(h.charSet==null?null:h.charSet)){C.splice(N,1);break e}}x=w.createElement(d),qe(x,d,h),w.head.appendChild(x);break;default:throw Error(i(468,d))}x[Me]=o,Ce(x),d=x}o.stateNode=d}else Ex(w,o.type,o.stateNode);else o.stateNode=kx(w,d,o.memoizedProps);else x!==d?(x===null?h.stateNode!==null&&(h=h.stateNode,h.parentNode.removeChild(h)):x.count--,d===null?Ex(w,o.type,o.stateNode):kx(w,d,o.memoizedProps)):d===null&&o.stateNode!==null&&Qm(o,o.memoizedProps,h.memoizedProps)}break;case 27:yn(a,o),wn(o),d&512&&(Ne||h===null||ji(h,h.return)),h!==null&&d&4&&Qm(o,o.memoizedProps,h.memoizedProps);break;case 5:if(yn(a,o),wn(o),d&512&&(Ne||h===null||ji(h,h.return)),o.flags&32){w=o.stateNode;try{Wo(w,"")}catch(xt){Kt(o,o.return,xt)}}d&4&&o.stateNode!=null&&(w=o.memoizedProps,Qm(o,w,h!==null?h.memoizedProps:w)),d&1024&&(Wm=!0);break;case 6:if(yn(a,o),wn(o),d&4){if(o.stateNode===null)throw Error(i(162));d=o.memoizedProps,h=o.stateNode;try{h.nodeValue=d}catch(xt){Kt(o,o.return,xt)}}break;case 3:if(Mh=null,w=fi,fi=Rh(a.containerInfo),yn(a,o),fi=w,wn(o),d&4&&h!==null&&h.memoizedState.isDehydrated)try{vl(a.containerInfo)}catch(xt){Kt(o,o.return,xt)}Wm&&(Wm=!1,E2(o));break;case 4:d=fi,fi=Rh(o.stateNode.containerInfo),yn(a,o),wn(o),fi=d;break;case 12:yn(a,o),wn(o);break;case 31:yn(a,o),wn(o),d&4&&(d=o.updateQueue,d!==null&&(o.updateQueue=null,wh(o,d)));break;case 13:yn(a,o),wn(o),o.child.flags&8192&&o.memoizedState!==null!=(h!==null&&h.memoizedState!==null)&&(xh=xe()),d&4&&(d=o.updateQueue,d!==null&&(o.updateQueue=null,wh(o,d)));break;case 22:w=o.memoizedState!==null;var B=h!==null&&h.memoizedState!==null,K=ds,ot=Ne;if(ds=K||w,Ne=ot||B,yn(a,o),Ne=ot,ds=K,wn(o),d&8192)t:for(a=o.stateNode,a._visibility=w?a._visibility&-2:a._visibility|1,w&&(h===null||B||ds||Ne||to(o)),h=null,a=o;;){if(a.tag===5||a.tag===26){if(h===null){B=h=a;try{if(x=B.stateNode,w)C=x.style,typeof C.setProperty=="function"?C.setProperty("display","none","important"):C.display="none";else{N=B.stateNode;var ct=B.memoizedProps.style,tt=ct!=null&&ct.hasOwnProperty("display")?ct.display:null;N.style.display=tt==null||typeof tt=="boolean"?"":(""+tt).trim()}}catch(xt){Kt(B,B.return,xt)}}}else if(a.tag===6){if(h===null){B=a;try{B.stateNode.nodeValue=w?"":B.memoizedProps}catch(xt){Kt(B,B.return,xt)}}}else if(a.tag===18){if(h===null){B=a;try{var it=B.stateNode;w?gx(it,!0):gx(B.stateNode,!1)}catch(xt){Kt(B,B.return,xt)}}}else if((a.tag!==22&&a.tag!==23||a.memoizedState===null||a===o)&&a.child!==null){a.child.return=a,a=a.child;continue}if(a===o)break t;for(;a.sibling===null;){if(a.return===null||a.return===o)break t;h===a&&(h=null),a=a.return}h===a&&(h=null),a.sibling.return=a.return,a=a.sibling}d&4&&(d=o.updateQueue,d!==null&&(h=d.retryQueue,h!==null&&(d.retryQueue=null,wh(o,h))));break;case 19:yn(a,o),wn(o),d&4&&(d=o.updateQueue,d!==null&&(o.updateQueue=null,wh(o,d)));break;case 30:break;case 21:break;default:yn(a,o),wn(o)}}function wn(o){var a=o.flags;if(a&2){try{for(var h,d=o.return;d!==null;){if(w2(d)){h=d;break}d=d.return}if(h==null)throw Error(i(160));switch(h.tag){case 27:var w=h.stateNode,x=Pm(o);yh(o,x,w);break;case 5:var C=h.stateNode;h.flags&32&&(Wo(C,""),h.flags&=-33);var N=Pm(o);yh(o,N,C);break;case 3:case 4:var B=h.stateNode.containerInfo,K=Pm(o);qm(o,K,B);break;default:throw Error(i(161))}}catch(ot){Kt(o,o.return,ot)}o.flags&=-3}a&4096&&(o.flags&=-4097)}function E2(o){if(o.subtreeFlags&1024)for(o=o.child;o!==null;){var a=o;E2(a),a.tag===5&&a.flags&1024&&a.stateNode.reset(),o=o.sibling}}function ms(o,a){if(a.subtreeFlags&8772)for(a=a.child;a!==null;)b2(o,a.alternate,a),a=a.sibling}function to(o){for(o=o.child;o!==null;){var a=o;switch(a.tag){case 0:case 11:case 14:case 15:Vs(4,a,a.return),to(a);break;case 1:ji(a,a.return);var h=a.stateNode;typeof h.componentWillUnmount=="function"&&g2(a,a.return,h),to(a);break;case 27:rc(a.stateNode);case 26:case 5:ji(a,a.return),to(a);break;case 22:a.memoizedState===null&&to(a);break;case 30:to(a);break;default:to(a)}o=o.sibling}}function gs(o,a,h){for(h=h&&(a.subtreeFlags&8772)!==0,a=a.child;a!==null;){var d=a.alternate,w=o,x=a,C=x.flags;switch(x.tag){case 0:case 11:case 15:gs(w,x,h),Fa(4,x);break;case 1:if(gs(w,x,h),d=x,w=d.stateNode,typeof w.componentDidMount=="function")try{w.componentDidMount()}catch(K){Kt(d,d.return,K)}if(d=x,w=d.updateQueue,w!==null){var N=d.stateNode;try{var B=w.shared.hiddenCallbacks;if(B!==null)for(w.shared.hiddenCallbacks=null,w=0;w<B.length;w++)s$(B[w],N)}catch(K){Kt(d,d.return,K)}}h&&C&64&&m2(x),Va(x,x.return);break;case 27:$2(x);case 26:case 5:gs(w,x,h),h&&d===null&&C&4&&y2(x),Va(x,x.return);break;case 12:gs(w,x,h);break;case 31:gs(w,x,h),h&&C&4&&O2(w,x);break;case 13:gs(w,x,h),h&&C&4&&k2(w,x);break;case 22:x.memoizedState===null&&gs(w,x,h),Va(x,x.return);break;case 30:break;default:gs(w,x,h)}a=a.sibling}}function Zm(o,a){var h=null;o!==null&&o.memoizedState!==null&&o.memoizedState.cachePool!==null&&(h=o.memoizedState.cachePool.pool),o=null,a.memoizedState!==null&&a.memoizedState.cachePool!==null&&(o=a.memoizedState.cachePool.pool),o!==h&&(o!=null&&o.refCount++,h!=null&&Ha(h))}function Um(o,a){o=null,a.alternate!==null&&(o=a.alternate.memoizedState.cache),a=a.memoizedState.cache,a!==o&&(a.refCount++,o!=null&&Ha(o))}function di(o,a,h,d){if(a.subtreeFlags&10256)for(a=a.child;a!==null;)D2(o,a,h,d),a=a.sibling}function D2(o,a,h,d){var w=a.flags;switch(a.tag){case 0:case 11:case 15:di(o,a,h,d),w&2048&&Fa(9,a);break;case 1:di(o,a,h,d);break;case 3:di(o,a,h,d),w&2048&&(o=null,a.alternate!==null&&(o=a.alternate.memoizedState.cache),a=a.memoizedState.cache,a!==o&&(a.refCount++,o!=null&&Ha(o)));break;case 12:if(w&2048){di(o,a,h,d),o=a.stateNode;try{var x=a.memoizedProps,C=x.id,N=x.onPostCommit;typeof N=="function"&&N(C,a.alternate===null?"mount":"update",o.passiveEffectDuration,-0)}catch(B){Kt(a,a.return,B)}}else di(o,a,h,d);break;case 31:di(o,a,h,d);break;case 13:di(o,a,h,d);break;case 23:break;case 22:x=a.stateNode,C=a.alternate,a.memoizedState!==null?x._visibility&2?di(o,a,h,d):Xa(o,a):x._visibility&2?di(o,a,h,d):(x._visibility|=2,hl(o,a,h,d,(a.subtreeFlags&10256)!==0||!1)),w&2048&&Zm(C,a);break;case 24:di(o,a,h,d),w&2048&&Um(a.alternate,a);break;default:di(o,a,h,d)}}function hl(o,a,h,d,w){for(w=w&&((a.subtreeFlags&10256)!==0||!1),a=a.child;a!==null;){var x=o,C=a,N=h,B=d,K=C.flags;switch(C.tag){case 0:case 11:case 15:hl(x,C,N,B,w),Fa(8,C);break;case 23:break;case 22:var ot=C.stateNode;C.memoizedState!==null?ot._visibility&2?hl(x,C,N,B,w):Xa(x,C):(ot._visibility|=2,hl(x,C,N,B,w)),w&&K&2048&&Zm(C.alternate,C);break;case 24:hl(x,C,N,B,w),w&&K&2048&&Um(C.alternate,C);break;default:hl(x,C,N,B,w)}a=a.sibling}}function Xa(o,a){if(a.subtreeFlags&10256)for(a=a.child;a!==null;){var h=o,d=a,w=d.flags;switch(d.tag){case 22:Xa(h,d),w&2048&&Zm(d.alternate,d);break;case 24:Xa(h,d),w&2048&&Um(d.alternate,d);break;default:Xa(h,d)}a=a.sibling}}var Ka=8192;function fl(o,a,h){if(o.subtreeFlags&Ka)for(o=o.child;o!==null;)T2(o,a,h),o=o.sibling}function T2(o,a,h){switch(o.tag){case 26:fl(o,a,h),o.flags&Ka&&o.memoizedState!==null&&qT(h,fi,o.memoizedState,o.memoizedProps);break;case 5:fl(o,a,h);break;case 3:case 4:var d=fi;fi=Rh(o.stateNode.containerInfo),fl(o,a,h),fi=d;break;case 22:o.memoizedState===null&&(d=o.alternate,d!==null&&d.memoizedState!==null?(d=Ka,Ka=16777216,fl(o,a,h),Ka=d):fl(o,a,h));break;default:fl(o,a,h)}}function N2(o){var a=o.alternate;if(a!==null&&(o=a.child,o!==null)){a.child=null;do a=o.sibling,o.sibling=null,o=a;while(o!==null)}}function Ja(o){var a=o.deletions;if((o.flags&16)!==0){if(a!==null)for(var h=0;h<a.length;h++){var d=a[h];Be=d,R2(d,o)}N2(o)}if(o.subtreeFlags&10256)for(o=o.child;o!==null;)j2(o),o=o.sibling}function j2(o){switch(o.tag){case 0:case 11:case 15:Ja(o),o.flags&2048&&Vs(9,o,o.return);break;case 3:Ja(o);break;case 12:Ja(o);break;case 22:var a=o.stateNode;o.memoizedState!==null&&a._visibility&2&&(o.return===null||o.return.tag!==13)?(a._visibility&=-3,$h(o)):Ja(o);break;default:Ja(o)}}function $h(o){var a=o.deletions;if((o.flags&16)!==0){if(a!==null)for(var h=0;h<a.length;h++){var d=a[h];Be=d,R2(d,o)}N2(o)}for(o=o.child;o!==null;){switch(a=o,a.tag){case 0:case 11:case 15:Vs(8,a,a.return),$h(a);break;case 22:h=a.stateNode,h._visibility&2&&(h._visibility&=-3,$h(a));break;default:$h(a)}o=o.sibling}}function R2(o,a){for(;Be!==null;){var h=Be;switch(h.tag){case 0:case 11:case 15:Vs(8,h,a);break;case 23:case 22:if(h.memoizedState!==null&&h.memoizedState.cachePool!==null){var d=h.memoizedState.cachePool.pool;d!=null&&d.refCount++}break;case 24:Ha(h.memoizedState.cache)}if(d=h.child,d!==null)d.return=h,Be=d;else t:for(h=o;Be!==null;){d=Be;var w=d.sibling,x=d.return;if(v2(d),d===h){Be=null;break t}if(w!==null){w.return=x,Be=w;break t}Be=x}}}var rT={getCacheForType:function(o){var a=Qe(Ee),h=a.data.get(o);return h===void 0&&(h=o(),a.data.set(o,h)),h},cacheSignal:function(){return Qe(Ee).controller.signal}},oT=typeof WeakMap=="function"?WeakMap:Map,Ft=0,se=null,Ht=null,Gt=0,Xt=0,An=null,Xs=!1,dl=!1,Im=!1,ys=0,we=0,Ks=0,eo=0,Fm=0,Hn=0,pl=0,tc=null,$n=null,Vm=!1,xh=0,_2=0,bh=1/0,vh=null,Js=null,Ae=0,tr=null,ml=null,ws=0,Xm=0,Km=null,M2=null,ec=0,Jm=null;function zn(){return(Ft&2)!==0&&Gt!==0?Gt&-Gt:T.T!==null?rg():Eu()}function A2(){if(Hn===0)if((Gt&536870912)===0||Pt){var o=zo;zo<<=1,(zo&3932160)===0&&(zo=262144),Hn=o}else Hn=536870912;return o=_n.current,o!==null&&(o.flags|=32),Hn}function xn(o,a,h){(o===se&&(Xt===2||Xt===9)||o.cancelPendingCommit!==null)&&(gl(o,0),er(o,Gt,Hn,!1)),zr(o,h),((Ft&2)===0||o!==se)&&(o===se&&((Ft&2)===0&&(eo|=h),we===4&&er(o,Gt,Hn,!1)),Ri(o))}function H2(o,a,h){if((Ft&6)!==0)throw Error(i(327));var d=!h&&(a&127)===0&&(a&o.expiredLanes)===0||Hr(o,a),w=d?cT(o,a):eg(o,a,!0),x=d;do{if(w===0){dl&&!d&&er(o,a,0,!1);break}else{if(h=o.current.alternate,x&&!lT(h)){w=eg(o,a,!1),x=!1;continue}if(w===2){if(x=a,o.errorRecoveryDisabledLanes&x)var C=0;else C=o.pendingLanes&-536870913,C=C!==0?C:C&536870912?536870912:0;if(C!==0){a=C;t:{var N=o;w=tc;var B=N.current.memoizedState.isDehydrated;if(B&&(gl(N,C).flags|=256),C=eg(N,C,!1),C!==2){if(Im&&!B){N.errorRecoveryDisabledLanes|=x,eo|=x,w=4;break t}x=$n,$n=w,x!==null&&($n===null?$n=x:$n.push.apply($n,x))}w=C}if(x=!1,w!==2)continue}}if(w===1){gl(o,0),er(o,a,0,!0);break}t:{switch(d=o,x=w,x){case 0:case 1:throw Error(i(345));case 4:if((a&4194048)!==a)break;case 6:er(d,a,Hn,!Xs);break t;case 2:$n=null;break;case 3:case 5:break;default:throw Error(i(329))}if((a&62914560)===a&&(w=xh+300-xe(),10<w)){if(er(d,a,Hn,!Xs),Yo(d,0,!0)!==0)break t;ws=a,d.timeoutHandle=dx(z2.bind(null,d,h,$n,vh,Vm,a,Hn,eo,pl,Xs,x,"Throttled",-0,0),w);break t}z2(d,h,$n,vh,Vm,a,Hn,eo,pl,Xs,x,null,-0,0)}}break}while(!0);Ri(o)}function z2(o,a,h,d,w,x,C,N,B,K,ot,ct,tt,it){if(o.timeoutHandle=-1,ct=a.subtreeFlags,ct&8192||(ct&16785408)===16785408){ct={stylesheets:null,count:0,imgCount:0,imgBytes:0,suspenseyImages:[],waitingForImages:!0,waitingForViewTransition:!1,unsuspend:is},T2(a,x,ct);var xt=(x&62914560)===x?xh-xe():(x&4194048)===x?_2-xe():0;if(xt=WT(ct,xt),xt!==null){ws=x,o.cancelPendingCommit=xt(W2.bind(null,o,a,x,h,d,w,C,N,B,ot,ct,null,tt,it)),er(o,x,C,!K);return}}W2(o,a,x,h,d,w,C,N,B)}function lT(o){for(var a=o;;){var h=a.tag;if((h===0||h===11||h===15)&&a.flags&16384&&(h=a.updateQueue,h!==null&&(h=h.stores,h!==null)))for(var d=0;d<h.length;d++){var w=h[d],x=w.getSnapshot;w=w.value;try{if(!jn(x(),w))return!1}catch{return!1}}if(h=a.child,a.subtreeFlags&16384&&h!==null)h.return=a,a=h;else{if(a===o)break;for(;a.sibling===null;){if(a.return===null||a.return===o)return!0;a=a.return}a.sibling.return=a.return,a=a.sibling}}return!0}function er(o,a,h,d){a&=~Fm,a&=~eo,o.suspendedLanes|=a,o.pingedLanes&=~a,d&&(o.warmLanes|=a),d=o.expirationTimes;for(var w=a;0<w;){var x=31-rn(w),C=1<<x;d[x]=-1,w&=~C}h!==0&&Ou(o,h,a)}function Sh(){return(Ft&6)===0?(nc(0),!1):!0}function tg(){if(Ht!==null){if(Xt===0)var o=Ht.return;else o=Ht,ls=Zr=null,gm(o),ol=null,Ba=0,o=Ht;for(;o!==null;)p2(o.alternate,o),o=o.return;Ht=null}}function gl(o,a){var h=o.timeoutHandle;h!==-1&&(o.timeoutHandle=-1,ET(h)),h=o.cancelPendingCommit,h!==null&&(o.cancelPendingCommit=null,h()),ws=0,tg(),se=o,Ht=h=rs(o.current,null),Gt=a,Xt=0,An=null,Xs=!1,dl=Hr(o,a),Im=!1,pl=Hn=Fm=eo=Ks=we=0,$n=tc=null,Vm=!1,(a&8)!==0&&(a|=a&32);var d=o.entangledLanes;if(d!==0)for(o=o.entanglements,d&=a;0<d;){var w=31-rn(d),x=1<<w;a|=o[w],d&=~x}return ys=a,qu(),h}function B2(o,a){Rt=null,T.H=Za,a===rl||a===Ku?(a=t$(),Xt=3):a===sm?(a=t$(),Xt=4):Xt=a===Rm?8:a!==null&&typeof a=="object"&&typeof a.then=="function"?6:1,An=a,Ht===null&&(we=1,fh(o,Vn(a,o.current)))}function Y2(){var o=_n.current;return o===null?!0:(Gt&4194048)===Gt?ti===null:(Gt&62914560)===Gt||(Gt&536870912)!==0?o===ti:!1}function G2(){var o=T.H;return T.H=Za,o===null?Za:o}function L2(){var o=T.A;return T.A=rT,o}function Oh(){we=4,Xs||(Gt&4194048)!==Gt&&_n.current!==null||(dl=!0),(Ks&134217727)===0&&(eo&134217727)===0||se===null||er(se,Gt,Hn,!1)}function eg(o,a,h){var d=Ft;Ft|=2;var w=G2(),x=L2();(se!==o||Gt!==a)&&(vh=null,gl(o,a)),a=!1;var C=we;t:do try{if(Xt!==0&&Ht!==null){var N=Ht,B=An;switch(Xt){case 8:tg(),C=6;break t;case 3:case 2:case 9:case 6:_n.current===null&&(a=!0);var K=Xt;if(Xt=0,An=null,yl(o,N,B,K),h&&dl){C=0;break t}break;default:K=Xt,Xt=0,An=null,yl(o,N,B,K)}}aT(),C=we;break}catch(ot){B2(o,ot)}while(!0);return a&&o.shellSuspendCounter++,ls=Zr=null,Ft=d,T.H=w,T.A=x,Ht===null&&(se=null,Gt=0,qu()),C}function aT(){for(;Ht!==null;)Q2(Ht)}function cT(o,a){var h=Ft;Ft|=2;var d=G2(),w=L2();se!==o||Gt!==a?(vh=null,bh=xe()+500,gl(o,a)):dl=Hr(o,a);t:do try{if(Xt!==0&&Ht!==null){a=Ht;var x=An;e:switch(Xt){case 1:Xt=0,An=null,yl(o,a,x,1);break;case 2:case 9:if(K5(x)){Xt=0,An=null,P2(a);break}a=function(){Xt!==2&&Xt!==9||se!==o||(Xt=7),Ri(o)},x.then(a,a);break t;case 3:Xt=7;break t;case 4:Xt=5;break t;case 7:K5(x)?(Xt=0,An=null,P2(a)):(Xt=0,An=null,yl(o,a,x,7));break;case 5:var C=null;switch(Ht.tag){case 26:C=Ht.memoizedState;case 5:case 27:var N=Ht;if(C?Dx(C):N.stateNode.complete){Xt=0,An=null;var B=N.sibling;if(B!==null)Ht=B;else{var K=N.return;K!==null?(Ht=K,kh(K)):Ht=null}break e}}Xt=0,An=null,yl(o,a,x,5);break;case 6:Xt=0,An=null,yl(o,a,x,6);break;case 8:tg(),we=6;break t;default:throw Error(i(462))}}uT();break}catch(ot){B2(o,ot)}while(!0);return ls=Zr=null,T.H=d,T.A=w,Ft=h,Ht!==null?0:(se=null,Gt=0,qu(),we)}function uT(){for(;Ht!==null&&!Mr();)Q2(Ht)}function Q2(o){var a=f2(o.alternate,o,ys);o.memoizedProps=o.pendingProps,a===null?kh(o):Ht=a}function P2(o){var a=o,h=a.alternate;switch(a.tag){case 15:case 0:a=o2(h,a,a.pendingProps,a.type,void 0,Gt);break;case 11:a=o2(h,a,a.pendingProps,a.type.render,a.ref,Gt);break;case 5:gm(a);default:p2(h,a),a=Ht=L5(a,ys),a=f2(h,a,ys)}o.memoizedProps=o.pendingProps,a===null?kh(o):Ht=a}function yl(o,a,h,d){ls=Zr=null,gm(a),ol=null,Ba=0;var w=a.return;try{if(KD(o,w,a,h,Gt)){we=1,fh(o,Vn(h,o.current)),Ht=null;return}}catch(x){if(w!==null)throw Ht=w,x;we=1,fh(o,Vn(h,o.current)),Ht=null;return}a.flags&32768?(Pt||d===1?o=!0:dl||(Gt&536870912)!==0?o=!1:(Xs=o=!0,(d===2||d===9||d===3||d===6)&&(d=_n.current,d!==null&&d.tag===13&&(d.flags|=16384))),q2(a,o)):kh(a)}function kh(o){var a=o;do{if((a.flags&32768)!==0){q2(a,Xs);return}o=a.return;var h=eT(a.alternate,a,ys);if(h!==null){Ht=h;return}if(a=a.sibling,a!==null){Ht=a;return}Ht=a=o}while(a!==null);we===0&&(we=5)}function q2(o,a){do{var h=nT(o.alternate,o);if(h!==null){h.flags&=32767,Ht=h;return}if(h=o.return,h!==null&&(h.flags|=32768,h.subtreeFlags=0,h.deletions=null),!a&&(o=o.sibling,o!==null)){Ht=o;return}Ht=o=h}while(o!==null);we=6,Ht=null}function W2(o,a,h,d,w,x,C,N,B){o.cancelPendingCommit=null;do Ch();while(Ae!==0);if((Ft&6)!==0)throw Error(i(327));if(a!==null){if(a===o.current)throw Error(i(177));if(x=a.lanes|a.childLanes,x|=Pp,xp(o,h,x,C,N,B),o===se&&(Ht=se=null,Gt=0),ml=a,tr=o,ws=h,Xm=x,Km=w,M2=d,(a.subtreeFlags&10256)!==0||(a.flags&10256)!==0?(o.callbackNode=null,o.callbackPriority=0,pT(In,function(){return V2(),null})):(o.callbackNode=null,o.callbackPriority=0),d=(a.flags&13878)!==0,(a.subtreeFlags&13878)!==0||d){d=T.T,T.T=null,w=z.p,z.p=2,C=Ft,Ft|=4;try{iT(o,a,h)}finally{Ft=C,z.p=w,T.T=d}}Ae=1,Z2(),U2(),I2()}}function Z2(){if(Ae===1){Ae=0;var o=tr,a=ml,h=(a.flags&13878)!==0;if((a.subtreeFlags&13878)!==0||h){h=T.T,T.T=null;var d=z.p;z.p=2;var w=Ft;Ft|=4;try{C2(a,o);var x=dg,C=R5(o.containerInfo),N=x.focusedElem,B=x.selectionRange;if(C!==N&&N&&N.ownerDocument&&j5(N.ownerDocument.documentElement,N)){if(B!==null&&Bp(N)){var K=B.start,ot=B.end;if(ot===void 0&&(ot=K),"selectionStart"in N)N.selectionStart=K,N.selectionEnd=Math.min(ot,N.value.length);else{var ct=N.ownerDocument||document,tt=ct&&ct.defaultView||window;if(tt.getSelection){var it=tt.getSelection(),xt=N.textContent.length,Dt=Math.min(B.start,xt),ee=B.end===void 0?Dt:Math.min(B.end,xt);!it.extend&&Dt>ee&&(C=ee,ee=Dt,Dt=C);var I=N5(N,Dt),q=N5(N,ee);if(I&&q&&(it.rangeCount!==1||it.anchorNode!==I.node||it.anchorOffset!==I.offset||it.focusNode!==q.node||it.focusOffset!==q.offset)){var X=ct.createRange();X.setStart(I.node,I.offset),it.removeAllRanges(),Dt>ee?(it.addRange(X),it.extend(q.node,q.offset)):(X.setEnd(q.node,q.offset),it.addRange(X))}}}}for(ct=[],it=N;it=it.parentNode;)it.nodeType===1&&ct.push({element:it,left:it.scrollLeft,top:it.scrollTop});for(typeof N.focus=="function"&&N.focus(),N=0;N<ct.length;N++){var at=ct[N];at.element.scrollLeft=at.left,at.element.scrollTop=at.top}}Bh=!!fg,dg=fg=null}finally{Ft=w,z.p=d,T.T=h}}o.current=a,Ae=2}}function U2(){if(Ae===2){Ae=0;var o=tr,a=ml,h=(a.flags&8772)!==0;if((a.subtreeFlags&8772)!==0||h){h=T.T,T.T=null;var d=z.p;z.p=2;var w=Ft;Ft|=4;try{b2(o,a.alternate,a)}finally{Ft=w,z.p=d,T.T=h}}Ae=3}}function I2(){if(Ae===4||Ae===3){Ae=0,Ji();var o=tr,a=ml,h=ws,d=M2;(a.subtreeFlags&10256)!==0||(a.flags&10256)!==0?Ae=5:(Ae=0,ml=tr=null,F2(o,o.pendingLanes));var w=o.pendingLanes;if(w===0&&(Js=null),wa(h),a=a.stateNode,sn&&typeof sn.onCommitFiberRoot=="function")try{sn.onCommitFiberRoot(Ar,a,void 0,(a.current.flags&128)===128)}catch{}if(d!==null){a=T.T,w=z.p,z.p=2,T.T=null;try{for(var x=o.onRecoverableError,C=0;C<d.length;C++){var N=d[C];x(N.value,{componentStack:N.stack})}}finally{T.T=a,z.p=w}}(ws&3)!==0&&Ch(),Ri(o),w=o.pendingLanes,(h&261930)!==0&&(w&42)!==0?o===Jm?ec++:(ec=0,Jm=o):ec=0,nc(0)}}function F2(o,a){(o.pooledCacheLanes&=a)===0&&(a=o.pooledCache,a!=null&&(o.pooledCache=null,Ha(a)))}function Ch(){return Z2(),U2(),I2(),V2()}function V2(){if(Ae!==5)return!1;var o=tr,a=Xm;Xm=0;var h=wa(ws),d=T.T,w=z.p;try{z.p=32>h?32:h,T.T=null,h=Km,Km=null;var x=tr,C=ws;if(Ae=0,ml=tr=null,ws=0,(Ft&6)!==0)throw Error(i(331));var N=Ft;if(Ft|=4,j2(x.current),D2(x,x.current,C,h),Ft=N,nc(0,!1),sn&&typeof sn.onPostCommitFiberRoot=="function")try{sn.onPostCommitFiberRoot(Ar,x)}catch{}return!0}finally{z.p=w,T.T=d,F2(o,a)}}function X2(o,a,h){a=Vn(h,a),a=jm(o.stateNode,a,2),o=Us(o,a,2),o!==null&&(zr(o,2),Ri(o))}function Kt(o,a,h){if(o.tag===3)X2(o,o,h);else for(;a!==null;){if(a.tag===3){X2(a,o,h);break}else if(a.tag===1){var d=a.stateNode;if(typeof a.type.getDerivedStateFromError=="function"||typeof d.componentDidCatch=="function"&&(Js===null||!Js.has(d))){o=Vn(h,o),h=K$(2),d=Us(a,h,2),d!==null&&(J$(h,d,a,o),zr(d,2),Ri(d));break}}a=a.return}}function ng(o,a,h){var d=o.pingCache;if(d===null){d=o.pingCache=new oT;var w=new Set;d.set(a,w)}else w=d.get(a),w===void 0&&(w=new Set,d.set(a,w));w.has(h)||(Im=!0,w.add(h),o=hT.bind(null,o,a,h),a.then(o,o))}function hT(o,a,h){var d=o.pingCache;d!==null&&d.delete(a),o.pingedLanes|=o.suspendedLanes&h,o.warmLanes&=~h,se===o&&(Gt&h)===h&&(we===4||we===3&&(Gt&62914560)===Gt&&300>xe()-xh?(Ft&2)===0&&gl(o,0):Fm|=h,pl===Gt&&(pl=0)),Ri(o)}function K2(o,a){a===0&&(a=Su()),o=Pr(o,a),o!==null&&(zr(o,a),Ri(o))}function fT(o){var a=o.memoizedState,h=0;a!==null&&(h=a.retryLane),K2(o,h)}function dT(o,a){var h=0;switch(o.tag){case 31:case 13:var d=o.stateNode,w=o.memoizedState;w!==null&&(h=w.retryLane);break;case 19:d=o.stateNode;break;case 22:d=o.stateNode._retryCache;break;default:throw Error(i(314))}d!==null&&d.delete(a),K2(o,h)}function pT(o,a){return fn(o,a)}var Eh=null,wl=null,ig=!1,Dh=!1,sg=!1,nr=0;function Ri(o){o!==wl&&o.next===null&&(wl===null?Eh=wl=o:wl=wl.next=o),Dh=!0,ig||(ig=!0,gT())}function nc(o,a){if(!sg&&Dh){sg=!0;do for(var h=!1,d=Eh;d!==null;){if(o!==0){var w=d.pendingLanes;if(w===0)var x=0;else{var C=d.suspendedLanes,N=d.pingedLanes;x=(1<<31-rn(42|o)+1)-1,x&=w&~(C&~N),x=x&201326741?x&201326741|1:x?x|2:0}x!==0&&(h=!0,nx(d,x))}else x=Gt,x=Yo(d,d===se?x:0,d.cancelPendingCommit!==null||d.timeoutHandle!==-1),(x&3)===0||Hr(d,x)||(h=!0,nx(d,x));d=d.next}while(h);sg=!1}}function mT(){J2()}function J2(){Dh=ig=!1;var o=0;nr!==0&&CT()&&(o=nr);for(var a=xe(),h=null,d=Eh;d!==null;){var w=d.next,x=tx(d,a);x===0?(d.next=null,h===null?Eh=w:h.next=w,w===null&&(wl=h)):(h=d,(o!==0||(x&3)!==0)&&(Dh=!0)),d=w}Ae!==0&&Ae!==5||nc(o),nr!==0&&(nr=0)}function tx(o,a){for(var h=o.suspendedLanes,d=o.pingedLanes,w=o.expirationTimes,x=o.pendingLanes&-62914561;0<x;){var C=31-rn(x),N=1<<C,B=w[C];B===-1?((N&h)===0||(N&d)!==0)&&(w[C]=$p(N,a)):B<=a&&(o.expiredLanes|=N),x&=~N}if(a=se,h=Gt,h=Yo(o,o===a?h:0,o.cancelPendingCommit!==null||o.timeoutHandle!==-1),d=o.callbackNode,h===0||o===a&&(Xt===2||Xt===9)||o.cancelPendingCommit!==null)return d!==null&&d!==null&&Tn(d),o.callbackNode=null,o.callbackPriority=0;if((h&3)===0||Hr(o,h)){if(a=h&-h,a===o.callbackPriority)return a;switch(d!==null&&Tn(d),wa(h)){case 2:case 8:h=Un;break;case 32:h=In;break;case 268435456:h=Ao;break;default:h=In}return d=ex.bind(null,o),h=fn(h,d),o.callbackPriority=a,o.callbackNode=h,a}return d!==null&&d!==null&&Tn(d),o.callbackPriority=2,o.callbackNode=null,2}function ex(o,a){if(Ae!==0&&Ae!==5)return o.callbackNode=null,o.callbackPriority=0,null;var h=o.callbackNode;if(Ch()&&o.callbackNode!==h)return null;var d=Gt;return d=Yo(o,o===se?d:0,o.cancelPendingCommit!==null||o.timeoutHandle!==-1),d===0?null:(H2(o,d,a),tx(o,xe()),o.callbackNode!=null&&o.callbackNode===h?ex.bind(null,o):null)}function nx(o,a){if(Ch())return null;H2(o,a,!0)}function gT(){DT(function(){(Ft&6)!==0?fn(Zn,mT):J2()})}function rg(){if(nr===0){var o=il;o===0&&(o=Ho,Ho<<=1,(Ho&261888)===0&&(Ho=256)),nr=o}return nr}function ix(o){return o==null||typeof o=="symbol"||typeof o=="boolean"?null:typeof o=="function"?o:Hu(""+o)}function sx(o,a){var h=a.ownerDocument.createElement("input");return h.name=a.name,h.value=a.value,o.id&&h.setAttribute("form",o.id),a.parentNode.insertBefore(h,a),o=new FormData(o),h.parentNode.removeChild(h),o}function yT(o,a,h,d,w){if(a==="submit"&&h&&h.stateNode===w){var x=ix((w[Ie]||null).action),C=d.submitter;C&&(a=(a=C[Ie]||null)?ix(a.formAction):C.getAttribute("formAction"),a!==null&&(x=a,C=null));var N=new Gu("action","action",null,d,w);o.push({event:N,listeners:[{instance:null,listener:function(){if(d.defaultPrevented){if(nr!==0){var B=C?sx(w,C):new FormData(w);km(h,{pending:!0,data:B,method:w.method,action:x},null,B)}}else typeof x=="function"&&(N.preventDefault(),B=C?sx(w,C):new FormData(w),km(h,{pending:!0,data:B,method:w.method,action:x},x,B))},currentTarget:w}]})}}for(var og=0;og<Qp.length;og++){var lg=Qp[og],wT=lg.toLowerCase(),$T=lg[0].toUpperCase()+lg.slice(1);hi(wT,"on"+$T)}hi(A5,"onAnimationEnd"),hi(H5,"onAnimationIteration"),hi(z5,"onAnimationStart"),hi("dblclick","onDoubleClick"),hi("focusin","onFocus"),hi("focusout","onBlur"),hi(AD,"onTransitionRun"),hi(HD,"onTransitionStart"),hi(zD,"onTransitionCancel"),hi(B5,"onTransitionEnd"),Bs("onMouseEnter",["mouseout","mouseover"]),Bs("onMouseLeave",["mouseout","mouseover"]),Bs("onPointerEnter",["pointerout","pointerover"]),Bs("onPointerLeave",["pointerout","pointerover"]),ns("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),ns("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),ns("onBeforeInput",["compositionend","keypress","textInput","paste"]),ns("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),ns("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),ns("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var ic="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange resize seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),xT=new Set("beforetoggle cancel close invalid load scroll scrollend toggle".split(" ").concat(ic));function rx(o,a){a=(a&4)!==0;for(var h=0;h<o.length;h++){var d=o[h],w=d.event;d=d.listeners;t:{var x=void 0;if(a)for(var C=d.length-1;0<=C;C--){var N=d[C],B=N.instance,K=N.currentTarget;if(N=N.listener,B!==x&&w.isPropagationStopped())break t;x=N,w.currentTarget=K;try{x(w)}catch(ot){Pu(ot)}w.currentTarget=null,x=B}else for(C=0;C<d.length;C++){if(N=d[C],B=N.instance,K=N.currentTarget,N=N.listener,B!==x&&w.isPropagationStopped())break t;x=N,w.currentTarget=K;try{x(w)}catch(ot){Pu(ot)}w.currentTarget=null,x=B}}}}function zt(o,a){var h=a[Go];h===void 0&&(h=a[Go]=new Set);var d=o+"__bubble";h.has(d)||(ox(a,o,2,!1),h.add(d))}function ag(o,a,h){var d=0;a&&(d|=4),ox(h,o,d,a)}var Th="_reactListening"+Math.random().toString(36).slice(2);function cg(o){if(!o[Th]){o[Th]=!0,ju.forEach(function(h){h!=="selectionchange"&&(xT.has(h)||ag(h,!1,o),ag(h,!0,o))});var a=o.nodeType===9?o:o.ownerDocument;a===null||a[Th]||(a[Th]=!0,ag("selectionchange",!1,a))}}function ox(o,a,h,d){switch(Ax(a)){case 2:var w=IT;break;case 8:w=FT;break;default:w=Og}h=w.bind(null,a,h,o),w=void 0,!Tp||a!=="touchstart"&&a!=="touchmove"&&a!=="wheel"||(w=!0),d?w!==void 0?o.addEventListener(a,h,{capture:!0,passive:w}):o.addEventListener(a,h,!0):w!==void 0?o.addEventListener(a,h,{passive:w}):o.addEventListener(a,h,!1)}function ug(o,a,h,d,w){var x=d;if((a&1)===0&&(a&2)===0&&d!==null)t:for(;;){if(d===null)return;var C=d.tag;if(C===3||C===4){var N=d.stateNode.containerInfo;if(N===w)break;if(C===4)for(C=d.return;C!==null;){var B=C.tag;if((B===3||B===4)&&C.stateNode.containerInfo===w)return;C=C.return}for(;N!==null;){if(C=Ms(N),C===null)return;if(B=C.tag,B===5||B===6||B===26||B===27){d=x=C;continue t}N=N.parentNode}}d=d.return}h5(function(){var K=x,ot=Ep(h),ct=[];t:{var tt=Y5.get(o);if(tt!==void 0){var it=Gu,xt=o;switch(o){case"keypress":if(Bu(h)===0)break t;case"keydown":case"keyup":it=dD;break;case"focusin":xt="focus",it=_p;break;case"focusout":xt="blur",it=_p;break;case"beforeblur":case"afterblur":it=_p;break;case"click":if(h.button===2)break t;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":it=p5;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":it=eD;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":it=gD;break;case A5:case H5:case z5:it=sD;break;case B5:it=wD;break;case"scroll":case"scrollend":it=J3;break;case"wheel":it=xD;break;case"copy":case"cut":case"paste":it=oD;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":it=g5;break;case"toggle":case"beforetoggle":it=vD}var Dt=(a&4)!==0,ee=!Dt&&(o==="scroll"||o==="scrollend"),I=Dt?tt!==null?tt+"Capture":null:tt;Dt=[];for(var q=K,X;q!==null;){var at=q;if(X=at.stateNode,at=at.tag,at!==5&&at!==26&&at!==27||X===null||I===null||(at=ka(q,I),at!=null&&Dt.push(sc(q,at,X))),ee)break;q=q.return}0<Dt.length&&(tt=new it(tt,xt,null,h,ot),ct.push({event:tt,listeners:Dt}))}}if((a&7)===0){t:{if(tt=o==="mouseover"||o==="pointerover",it=o==="mouseout"||o==="pointerout",tt&&h!==Cp&&(xt=h.relatedTarget||h.fromElement)&&(Ms(xt)||xt[es]))break t;if((it||tt)&&(tt=ot.window===ot?ot:(tt=ot.ownerDocument)?tt.defaultView||tt.parentWindow:window,it?(xt=h.relatedTarget||h.toElement,it=K,xt=xt?Ms(xt):null,xt!==null&&(ee=r(xt),Dt=xt.tag,xt!==ee||Dt!==5&&Dt!==27&&Dt!==6)&&(xt=null)):(it=null,xt=K),it!==xt)){if(Dt=p5,at="onMouseLeave",I="onMouseEnter",q="mouse",(o==="pointerout"||o==="pointerover")&&(Dt=g5,at="onPointerLeave",I="onPointerEnter",q="pointer"),ee=it==null?tt:Hs(it),X=xt==null?tt:Hs(xt),tt=new Dt(at,q+"leave",it,h,ot),tt.target=ee,tt.relatedTarget=X,at=null,Ms(ot)===K&&(Dt=new Dt(I,q+"enter",xt,h,ot),Dt.target=X,Dt.relatedTarget=ee,at=Dt),ee=at,it&&xt)e:{for(Dt=bT,I=it,q=xt,X=0,at=I;at;at=Dt(at))X++;at=0;for(var kt=q;kt;kt=Dt(kt))at++;for(;0<X-at;)I=Dt(I),X--;for(;0<at-X;)q=Dt(q),at--;for(;X--;){if(I===q||q!==null&&I===q.alternate){Dt=I;break e}I=Dt(I),q=Dt(q)}Dt=null}else Dt=null;it!==null&&lx(ct,tt,it,Dt,!1),xt!==null&&ee!==null&&lx(ct,ee,xt,Dt,!0)}}t:{if(tt=K?Hs(K):window,it=tt.nodeName&&tt.nodeName.toLowerCase(),it==="select"||it==="input"&&tt.type==="file")var Ut=O5;else if(v5(tt))if(k5)Ut=RD;else{Ut=ND;var vt=TD}else it=tt.nodeName,!it||it.toLowerCase()!=="input"||tt.type!=="checkbox"&&tt.type!=="radio"?K&&kp(K.elementType)&&(Ut=O5):Ut=jD;if(Ut&&(Ut=Ut(o,K))){S5(ct,Ut,h,ot);break t}vt&&vt(o,tt,K),o==="focusout"&&K&&tt.type==="number"&&K.memoizedProps.value!=null&&Sa(tt,"number",tt.value)}switch(vt=K?Hs(K):window,o){case"focusin":(v5(vt)||vt.contentEditable==="true")&&(Fo=vt,Yp=K,_a=null);break;case"focusout":_a=Yp=Fo=null;break;case"mousedown":Gp=!0;break;case"contextmenu":case"mouseup":case"dragend":Gp=!1,_5(ct,h,ot);break;case"selectionchange":if(MD)break;case"keydown":case"keyup":_5(ct,h,ot)}var Mt;if(Ap)t:{switch(o){case"compositionstart":var Lt="onCompositionStart";break t;case"compositionend":Lt="onCompositionEnd";break t;case"compositionupdate":Lt="onCompositionUpdate";break t}Lt=void 0}else Io?x5(o,h)&&(Lt="onCompositionEnd"):o==="keydown"&&h.keyCode===229&&(Lt="onCompositionStart");Lt&&(y5&&h.locale!=="ko"&&(Io||Lt!=="onCompositionStart"?Lt==="onCompositionEnd"&&Io&&(Mt=f5()):(Gs=ot,Np="value"in Gs?Gs.value:Gs.textContent,Io=!0)),vt=Nh(K,Lt),0<vt.length&&(Lt=new m5(Lt,o,null,h,ot),ct.push({event:Lt,listeners:vt}),Mt?Lt.data=Mt:(Mt=b5(h),Mt!==null&&(Lt.data=Mt)))),(Mt=OD?kD(o,h):CD(o,h))&&(Lt=Nh(K,"onBeforeInput"),0<Lt.length&&(vt=new m5("onBeforeInput","beforeinput",null,h,ot),ct.push({event:vt,listeners:Lt}),vt.data=Mt)),yT(ct,o,K,h,ot)}rx(ct,a)})}function sc(o,a,h){return{instance:o,listener:a,currentTarget:h}}function Nh(o,a){for(var h=a+"Capture",d=[];o!==null;){var w=o,x=w.stateNode;if(w=w.tag,w!==5&&w!==26&&w!==27||x===null||(w=ka(o,h),w!=null&&d.unshift(sc(o,w,x)),w=ka(o,a),w!=null&&d.push(sc(o,w,x))),o.tag===3)return d;o=o.return}return[]}function bT(o){if(o===null)return null;do o=o.return;while(o&&o.tag!==5&&o.tag!==27);return o||null}function lx(o,a,h,d,w){for(var x=a._reactName,C=[];h!==null&&h!==d;){var N=h,B=N.alternate,K=N.stateNode;if(N=N.tag,B!==null&&B===d)break;N!==5&&N!==26&&N!==27||K===null||(B=K,w?(K=ka(h,x),K!=null&&C.unshift(sc(h,K,B))):w||(K=ka(h,x),K!=null&&C.push(sc(h,K,B)))),h=h.return}C.length!==0&&o.push({event:a,listeners:C})}var vT=/\r\n?/g,ST=/\u0000|\uFFFD/g;function ax(o){return(typeof o=="string"?o:""+o).replace(vT,`
50
+ `).replace(ST,"")}function cx(o,a){return a=ax(a),ax(o)===a}function te(o,a,h,d,w,x){switch(h){case"children":typeof d=="string"?a==="body"||a==="textarea"&&d===""||Wo(o,d):(typeof d=="number"||typeof d=="bigint")&&a!=="body"&&Wo(o,""+d);break;case"className":Qo(o,"class",d);break;case"tabIndex":Qo(o,"tabindex",d);break;case"dir":case"role":case"viewBox":case"width":case"height":Qo(o,h,d);break;case"style":c5(o,d,x);break;case"data":if(a!=="object"){Qo(o,"data",d);break}case"src":case"href":if(d===""&&(a!=="a"||h!=="href")){o.removeAttribute(h);break}if(d==null||typeof d=="function"||typeof d=="symbol"||typeof d=="boolean"){o.removeAttribute(h);break}d=Hu(""+d),o.setAttribute(h,d);break;case"action":case"formAction":if(typeof d=="function"){o.setAttribute(h,"javascript:throw new Error('A React form was unexpectedly submitted. If you called form.submit() manually, consider using form.requestSubmit() instead. If you\\'re trying to use event.stopPropagation() in a submit event handler, consider also calling event.preventDefault().')");break}else typeof x=="function"&&(h==="formAction"?(a!=="input"&&te(o,a,"name",w.name,w,null),te(o,a,"formEncType",w.formEncType,w,null),te(o,a,"formMethod",w.formMethod,w,null),te(o,a,"formTarget",w.formTarget,w,null)):(te(o,a,"encType",w.encType,w,null),te(o,a,"method",w.method,w,null),te(o,a,"target",w.target,w,null)));if(d==null||typeof d=="symbol"||typeof d=="boolean"){o.removeAttribute(h);break}d=Hu(""+d),o.setAttribute(h,d);break;case"onClick":d!=null&&(o.onclick=is);break;case"onScroll":d!=null&&zt("scroll",o);break;case"onScrollEnd":d!=null&&zt("scrollend",o);break;case"dangerouslySetInnerHTML":if(d!=null){if(typeof d!="object"||!("__html"in d))throw Error(i(61));if(h=d.__html,h!=null){if(w.children!=null)throw Error(i(60));o.innerHTML=h}}break;case"multiple":o.multiple=d&&typeof d!="function"&&typeof d!="symbol";break;case"muted":o.muted=d&&typeof d!="function"&&typeof d!="symbol";break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"defaultValue":case"defaultChecked":case"innerHTML":case"ref":break;case"autoFocus":break;case"xlinkHref":if(d==null||typeof d=="function"||typeof d=="boolean"||typeof d=="symbol"){o.removeAttribute("xlink:href");break}h=Hu(""+d),o.setAttributeNS("http://www.w3.org/1999/xlink","xlink:href",h);break;case"contentEditable":case"spellCheck":case"draggable":case"value":case"autoReverse":case"externalResourcesRequired":case"focusable":case"preserveAlpha":d!=null&&typeof d!="function"&&typeof d!="symbol"?o.setAttribute(h,""+d):o.removeAttribute(h);break;case"inert":case"allowFullScreen":case"async":case"autoPlay":case"controls":case"default":case"defer":case"disabled":case"disablePictureInPicture":case"disableRemotePlayback":case"formNoValidate":case"hidden":case"loop":case"noModule":case"noValidate":case"open":case"playsInline":case"readOnly":case"required":case"reversed":case"scoped":case"seamless":case"itemScope":d&&typeof d!="function"&&typeof d!="symbol"?o.setAttribute(h,""):o.removeAttribute(h);break;case"capture":case"download":d===!0?o.setAttribute(h,""):d!==!1&&d!=null&&typeof d!="function"&&typeof d!="symbol"?o.setAttribute(h,d):o.removeAttribute(h);break;case"cols":case"rows":case"size":case"span":d!=null&&typeof d!="function"&&typeof d!="symbol"&&!isNaN(d)&&1<=d?o.setAttribute(h,d):o.removeAttribute(h);break;case"rowSpan":case"start":d==null||typeof d=="function"||typeof d=="symbol"||isNaN(d)?o.removeAttribute(h):o.setAttribute(h,d);break;case"popover":zt("beforetoggle",o),zt("toggle",o),Lo(o,"popover",d);break;case"xlinkActuate":ui(o,"http://www.w3.org/1999/xlink","xlink:actuate",d);break;case"xlinkArcrole":ui(o,"http://www.w3.org/1999/xlink","xlink:arcrole",d);break;case"xlinkRole":ui(o,"http://www.w3.org/1999/xlink","xlink:role",d);break;case"xlinkShow":ui(o,"http://www.w3.org/1999/xlink","xlink:show",d);break;case"xlinkTitle":ui(o,"http://www.w3.org/1999/xlink","xlink:title",d);break;case"xlinkType":ui(o,"http://www.w3.org/1999/xlink","xlink:type",d);break;case"xmlBase":ui(o,"http://www.w3.org/XML/1998/namespace","xml:base",d);break;case"xmlLang":ui(o,"http://www.w3.org/XML/1998/namespace","xml:lang",d);break;case"xmlSpace":ui(o,"http://www.w3.org/XML/1998/namespace","xml:space",d);break;case"is":Lo(o,"is",d);break;case"innerText":case"textContent":break;default:(!(2<h.length)||h[0]!=="o"&&h[0]!=="O"||h[1]!=="n"&&h[1]!=="N")&&(h=X3.get(h)||h,Lo(o,h,d))}}function hg(o,a,h,d,w,x){switch(h){case"style":c5(o,d,x);break;case"dangerouslySetInnerHTML":if(d!=null){if(typeof d!="object"||!("__html"in d))throw Error(i(61));if(h=d.__html,h!=null){if(w.children!=null)throw Error(i(60));o.innerHTML=h}}break;case"children":typeof d=="string"?Wo(o,d):(typeof d=="number"||typeof d=="bigint")&&Wo(o,""+d);break;case"onScroll":d!=null&&zt("scroll",o);break;case"onScrollEnd":d!=null&&zt("scrollend",o);break;case"onClick":d!=null&&(o.onclick=is);break;case"suppressContentEditableWarning":case"suppressHydrationWarning":case"innerHTML":case"ref":break;case"innerText":case"textContent":break;default:if(!Ru.hasOwnProperty(h))t:{if(h[0]==="o"&&h[1]==="n"&&(w=h.endsWith("Capture"),a=h.slice(2,w?h.length-7:void 0),x=o[Ie]||null,x=x!=null?x[h]:null,typeof x=="function"&&o.removeEventListener(a,x,w),typeof d=="function")){typeof x!="function"&&x!==null&&(h in o?o[h]=null:o.hasAttribute(h)&&o.removeAttribute(h)),o.addEventListener(a,d,w);break t}h in o?o[h]=d:d===!0?o.setAttribute(h,""):Lo(o,h,d)}}}function qe(o,a,h){switch(a){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"img":zt("error",o),zt("load",o);var d=!1,w=!1,x;for(x in h)if(h.hasOwnProperty(x)){var C=h[x];if(C!=null)switch(x){case"src":d=!0;break;case"srcSet":w=!0;break;case"children":case"dangerouslySetInnerHTML":throw Error(i(137,a));default:te(o,a,x,C,h,null)}}w&&te(o,a,"srcSet",h.srcSet,h,null),d&&te(o,a,"src",h.src,h,null);return;case"input":zt("invalid",o);var N=x=C=w=null,B=null,K=null;for(d in h)if(h.hasOwnProperty(d)){var ot=h[d];if(ot!=null)switch(d){case"name":w=ot;break;case"type":C=ot;break;case"checked":B=ot;break;case"defaultChecked":K=ot;break;case"value":x=ot;break;case"defaultValue":N=ot;break;case"children":case"dangerouslySetInnerHTML":if(ot!=null)throw Error(i(137,a));break;default:te(o,a,d,ot,h,null)}}qo(o,x,N,B,K,C,w,!1);return;case"select":zt("invalid",o),d=C=x=null;for(w in h)if(h.hasOwnProperty(w)&&(N=h[w],N!=null))switch(w){case"value":x=N;break;case"defaultValue":C=N;break;case"multiple":d=N;default:te(o,a,w,N,h,null)}a=x,h=C,o.multiple=!!d,a!=null?Ys(o,!!d,a,!1):h!=null&&Ys(o,!!d,h,!0);return;case"textarea":zt("invalid",o),x=w=d=null;for(C in h)if(h.hasOwnProperty(C)&&(N=h[C],N!=null))switch(C){case"value":d=N;break;case"defaultValue":w=N;break;case"children":x=N;break;case"dangerouslySetInnerHTML":if(N!=null)throw Error(i(91));break;default:te(o,a,C,N,h,null)}l5(o,d,w,x);return;case"option":for(B in h)if(h.hasOwnProperty(B)&&(d=h[B],d!=null))switch(B){case"selected":o.selected=d&&typeof d!="function"&&typeof d!="symbol";break;default:te(o,a,B,d,h,null)}return;case"dialog":zt("beforetoggle",o),zt("toggle",o),zt("cancel",o),zt("close",o);break;case"iframe":case"object":zt("load",o);break;case"video":case"audio":for(d=0;d<ic.length;d++)zt(ic[d],o);break;case"image":zt("error",o),zt("load",o);break;case"details":zt("toggle",o);break;case"embed":case"source":case"link":zt("error",o),zt("load",o);case"area":case"base":case"br":case"col":case"hr":case"keygen":case"meta":case"param":case"track":case"wbr":case"menuitem":for(K in h)if(h.hasOwnProperty(K)&&(d=h[K],d!=null))switch(K){case"children":case"dangerouslySetInnerHTML":throw Error(i(137,a));default:te(o,a,K,d,h,null)}return;default:if(kp(a)){for(ot in h)h.hasOwnProperty(ot)&&(d=h[ot],d!==void 0&&hg(o,a,ot,d,h,void 0));return}}for(N in h)h.hasOwnProperty(N)&&(d=h[N],d!=null&&te(o,a,N,d,h,null))}function OT(o,a,h,d){switch(a){case"div":case"span":case"svg":case"path":case"a":case"g":case"p":case"li":break;case"input":var w=null,x=null,C=null,N=null,B=null,K=null,ot=null;for(it in h){var ct=h[it];if(h.hasOwnProperty(it)&&ct!=null)switch(it){case"checked":break;case"value":break;case"defaultValue":B=ct;default:d.hasOwnProperty(it)||te(o,a,it,null,d,ct)}}for(var tt in d){var it=d[tt];if(ct=h[tt],d.hasOwnProperty(tt)&&(it!=null||ct!=null))switch(tt){case"type":x=it;break;case"name":w=it;break;case"checked":K=it;break;case"defaultChecked":ot=it;break;case"value":C=it;break;case"defaultValue":N=it;break;case"children":case"dangerouslySetInnerHTML":if(it!=null)throw Error(i(137,a));break;default:it!==ct&&te(o,a,tt,it,d,ct)}}va(o,C,N,B,K,ot,x,w);return;case"select":it=C=N=tt=null;for(x in h)if(B=h[x],h.hasOwnProperty(x)&&B!=null)switch(x){case"value":break;case"multiple":it=B;default:d.hasOwnProperty(x)||te(o,a,x,null,d,B)}for(w in d)if(x=d[w],B=h[w],d.hasOwnProperty(w)&&(x!=null||B!=null))switch(w){case"value":tt=x;break;case"defaultValue":N=x;break;case"multiple":C=x;default:x!==B&&te(o,a,w,x,d,B)}a=N,h=C,d=it,tt!=null?Ys(o,!!h,tt,!1):!!d!=!!h&&(a!=null?Ys(o,!!h,a,!0):Ys(o,!!h,h?[]:"",!1));return;case"textarea":it=tt=null;for(N in h)if(w=h[N],h.hasOwnProperty(N)&&w!=null&&!d.hasOwnProperty(N))switch(N){case"value":break;case"children":break;default:te(o,a,N,null,d,w)}for(C in d)if(w=d[C],x=h[C],d.hasOwnProperty(C)&&(w!=null||x!=null))switch(C){case"value":tt=w;break;case"defaultValue":it=w;break;case"children":break;case"dangerouslySetInnerHTML":if(w!=null)throw Error(i(91));break;default:w!==x&&te(o,a,C,w,d,x)}Oa(o,tt,it);return;case"option":for(var xt in h)if(tt=h[xt],h.hasOwnProperty(xt)&&tt!=null&&!d.hasOwnProperty(xt))switch(xt){case"selected":o.selected=!1;break;default:te(o,a,xt,null,d,tt)}for(B in d)if(tt=d[B],it=h[B],d.hasOwnProperty(B)&&tt!==it&&(tt!=null||it!=null))switch(B){case"selected":o.selected=tt&&typeof tt!="function"&&typeof tt!="symbol";break;default:te(o,a,B,tt,d,it)}return;case"img":case"link":case"area":case"base":case"br":case"col":case"embed":case"hr":case"keygen":case"meta":case"param":case"source":case"track":case"wbr":case"menuitem":for(var Dt in h)tt=h[Dt],h.hasOwnProperty(Dt)&&tt!=null&&!d.hasOwnProperty(Dt)&&te(o,a,Dt,null,d,tt);for(K in d)if(tt=d[K],it=h[K],d.hasOwnProperty(K)&&tt!==it&&(tt!=null||it!=null))switch(K){case"children":case"dangerouslySetInnerHTML":if(tt!=null)throw Error(i(137,a));break;default:te(o,a,K,tt,d,it)}return;default:if(kp(a)){for(var ee in h)tt=h[ee],h.hasOwnProperty(ee)&&tt!==void 0&&!d.hasOwnProperty(ee)&&hg(o,a,ee,void 0,d,tt);for(ot in d)tt=d[ot],it=h[ot],!d.hasOwnProperty(ot)||tt===it||tt===void 0&&it===void 0||hg(o,a,ot,tt,d,it);return}}for(var I in h)tt=h[I],h.hasOwnProperty(I)&&tt!=null&&!d.hasOwnProperty(I)&&te(o,a,I,null,d,tt);for(ct in d)tt=d[ct],it=h[ct],!d.hasOwnProperty(ct)||tt===it||tt==null&&it==null||te(o,a,ct,tt,d,it)}function ux(o){switch(o){case"css":case"script":case"font":case"img":case"image":case"input":case"link":return!0;default:return!1}}function kT(){if(typeof performance.getEntriesByType=="function"){for(var o=0,a=0,h=performance.getEntriesByType("resource"),d=0;d<h.length;d++){var w=h[d],x=w.transferSize,C=w.initiatorType,N=w.duration;if(x&&N&&ux(C)){for(C=0,N=w.responseEnd,d+=1;d<h.length;d++){var B=h[d],K=B.startTime;if(K>N)break;var ot=B.transferSize,ct=B.initiatorType;ot&&ux(ct)&&(B=B.responseEnd,C+=ot*(B<N?1:(N-K)/(B-K)))}if(--d,a+=8*(x+C)/(w.duration/1e3),o++,10<o)break}}if(0<o)return a/o/1e6}return navigator.connection&&(o=navigator.connection.downlink,typeof o=="number")?o:5}var fg=null,dg=null;function jh(o){return o.nodeType===9?o:o.ownerDocument}function hx(o){switch(o){case"http://www.w3.org/2000/svg":return 1;case"http://www.w3.org/1998/Math/MathML":return 2;default:return 0}}function fx(o,a){if(o===0)switch(a){case"svg":return 1;case"math":return 2;default:return 0}return o===1&&a==="foreignObject"?0:o}function pg(o,a){return o==="textarea"||o==="noscript"||typeof a.children=="string"||typeof a.children=="number"||typeof a.children=="bigint"||typeof a.dangerouslySetInnerHTML=="object"&&a.dangerouslySetInnerHTML!==null&&a.dangerouslySetInnerHTML.__html!=null}var mg=null;function CT(){var o=window.event;return o&&o.type==="popstate"?o===mg?!1:(mg=o,!0):(mg=null,!1)}var dx=typeof setTimeout=="function"?setTimeout:void 0,ET=typeof clearTimeout=="function"?clearTimeout:void 0,px=typeof Promise=="function"?Promise:void 0,DT=typeof queueMicrotask=="function"?queueMicrotask:typeof px<"u"?function(o){return px.resolve(null).then(o).catch(TT)}:dx;function TT(o){setTimeout(function(){throw o})}function ir(o){return o==="head"}function mx(o,a){var h=a,d=0;do{var w=h.nextSibling;if(o.removeChild(h),w&&w.nodeType===8)if(h=w.data,h==="/$"||h==="/&"){if(d===0){o.removeChild(w),vl(a);return}d--}else if(h==="$"||h==="$?"||h==="$~"||h==="$!"||h==="&")d++;else if(h==="html")rc(o.ownerDocument.documentElement);else if(h==="head"){h=o.ownerDocument.head,rc(h);for(var x=h.firstChild;x;){var C=x.nextSibling,N=x.nodeName;x[Br]||N==="SCRIPT"||N==="STYLE"||N==="LINK"&&x.rel.toLowerCase()==="stylesheet"||h.removeChild(x),x=C}}else h==="body"&&rc(o.ownerDocument.body);h=w}while(h);vl(a)}function gx(o,a){var h=o;o=0;do{var d=h.nextSibling;if(h.nodeType===1?a?(h._stashedDisplay=h.style.display,h.style.display="none"):(h.style.display=h._stashedDisplay||"",h.getAttribute("style")===""&&h.removeAttribute("style")):h.nodeType===3&&(a?(h._stashedText=h.nodeValue,h.nodeValue=""):h.nodeValue=h._stashedText||""),d&&d.nodeType===8)if(h=d.data,h==="/$"){if(o===0)break;o--}else h!=="$"&&h!=="$?"&&h!=="$~"&&h!=="$!"||o++;h=d}while(h)}function gg(o){var a=o.firstChild;for(a&&a.nodeType===10&&(a=a.nextSibling);a;){var h=a;switch(a=a.nextSibling,h.nodeName){case"HTML":case"HEAD":case"BODY":gg(h),$a(h);continue;case"SCRIPT":case"STYLE":continue;case"LINK":if(h.rel.toLowerCase()==="stylesheet")continue}o.removeChild(h)}}function NT(o,a,h,d){for(;o.nodeType===1;){var w=h;if(o.nodeName.toLowerCase()!==a.toLowerCase()){if(!d&&(o.nodeName!=="INPUT"||o.type!=="hidden"))break}else if(d){if(!o[Br])switch(a){case"meta":if(!o.hasAttribute("itemprop"))break;return o;case"link":if(x=o.getAttribute("rel"),x==="stylesheet"&&o.hasAttribute("data-precedence"))break;if(x!==w.rel||o.getAttribute("href")!==(w.href==null||w.href===""?null:w.href)||o.getAttribute("crossorigin")!==(w.crossOrigin==null?null:w.crossOrigin)||o.getAttribute("title")!==(w.title==null?null:w.title))break;return o;case"style":if(o.hasAttribute("data-precedence"))break;return o;case"script":if(x=o.getAttribute("src"),(x!==(w.src==null?null:w.src)||o.getAttribute("type")!==(w.type==null?null:w.type)||o.getAttribute("crossorigin")!==(w.crossOrigin==null?null:w.crossOrigin))&&x&&o.hasAttribute("async")&&!o.hasAttribute("itemprop"))break;return o;default:return o}}else if(a==="input"&&o.type==="hidden"){var x=w.name==null?null:""+w.name;if(w.type==="hidden"&&o.getAttribute("name")===x)return o}else return o;if(o=ei(o.nextSibling),o===null)break}return null}function jT(o,a,h){if(a==="")return null;for(;o.nodeType!==3;)if((o.nodeType!==1||o.nodeName!=="INPUT"||o.type!=="hidden")&&!h||(o=ei(o.nextSibling),o===null))return null;return o}function yx(o,a){for(;o.nodeType!==8;)if((o.nodeType!==1||o.nodeName!=="INPUT"||o.type!=="hidden")&&!a||(o=ei(o.nextSibling),o===null))return null;return o}function yg(o){return o.data==="$?"||o.data==="$~"}function wg(o){return o.data==="$!"||o.data==="$?"&&o.ownerDocument.readyState!=="loading"}function RT(o,a){var h=o.ownerDocument;if(o.data==="$~")o._reactRetry=a;else if(o.data!=="$?"||h.readyState!=="loading")a();else{var d=function(){a(),h.removeEventListener("DOMContentLoaded",d)};h.addEventListener("DOMContentLoaded",d),o._reactRetry=d}}function ei(o){for(;o!=null;o=o.nextSibling){var a=o.nodeType;if(a===1||a===3)break;if(a===8){if(a=o.data,a==="$"||a==="$!"||a==="$?"||a==="$~"||a==="&"||a==="F!"||a==="F")break;if(a==="/$"||a==="/&")return null}}return o}var $g=null;function wx(o){o=o.nextSibling;for(var a=0;o;){if(o.nodeType===8){var h=o.data;if(h==="/$"||h==="/&"){if(a===0)return ei(o.nextSibling);a--}else h!=="$"&&h!=="$!"&&h!=="$?"&&h!=="$~"&&h!=="&"||a++}o=o.nextSibling}return null}function $x(o){o=o.previousSibling;for(var a=0;o;){if(o.nodeType===8){var h=o.data;if(h==="$"||h==="$!"||h==="$?"||h==="$~"||h==="&"){if(a===0)return o;a--}else h!=="/$"&&h!=="/&"||a++}o=o.previousSibling}return null}function xx(o,a,h){switch(a=jh(h),o){case"html":if(o=a.documentElement,!o)throw Error(i(452));return o;case"head":if(o=a.head,!o)throw Error(i(453));return o;case"body":if(o=a.body,!o)throw Error(i(454));return o;default:throw Error(i(451))}}function rc(o){for(var a=o.attributes;a.length;)o.removeAttributeNode(a[0]);$a(o)}var ni=new Map,bx=new Set;function Rh(o){return typeof o.getRootNode=="function"?o.getRootNode():o.nodeType===9?o:o.ownerDocument}var $s=z.d;z.d={f:_T,r:MT,D:AT,C:HT,L:zT,m:BT,X:GT,S:YT,M:LT};function _T(){var o=$s.f(),a=Sh();return o||a}function MT(o){var a=As(o);a!==null&&a.tag===5&&a.type==="form"?B$(a):$s.r(o)}var $l=typeof document>"u"?null:document;function vx(o,a,h){var d=$l;if(d&&typeof a=="string"&&a){var w=pn(a);w='link[rel="'+o+'"][href="'+w+'"]',typeof h=="string"&&(w+='[crossorigin="'+h+'"]'),bx.has(w)||(bx.add(w),o={rel:o,crossOrigin:h,href:a},d.querySelector(w)===null&&(a=d.createElement("link"),qe(a,"link",o),Ce(a),d.head.appendChild(a)))}}function AT(o){$s.D(o),vx("dns-prefetch",o,null)}function HT(o,a){$s.C(o,a),vx("preconnect",o,a)}function zT(o,a,h){$s.L(o,a,h);var d=$l;if(d&&o&&a){var w='link[rel="preload"][as="'+pn(a)+'"]';a==="image"&&h&&h.imageSrcSet?(w+='[imagesrcset="'+pn(h.imageSrcSet)+'"]',typeof h.imageSizes=="string"&&(w+='[imagesizes="'+pn(h.imageSizes)+'"]')):w+='[href="'+pn(o)+'"]';var x=w;switch(a){case"style":x=xl(o);break;case"script":x=bl(o)}ni.has(x)||(o=m({rel:"preload",href:a==="image"&&h&&h.imageSrcSet?void 0:o,as:a},h),ni.set(x,o),d.querySelector(w)!==null||a==="style"&&d.querySelector(oc(x))||a==="script"&&d.querySelector(lc(x))||(a=d.createElement("link"),qe(a,"link",o),Ce(a),d.head.appendChild(a)))}}function BT(o,a){$s.m(o,a);var h=$l;if(h&&o){var d=a&&typeof a.as=="string"?a.as:"script",w='link[rel="modulepreload"][as="'+pn(d)+'"][href="'+pn(o)+'"]',x=w;switch(d){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":x=bl(o)}if(!ni.has(x)&&(o=m({rel:"modulepreload",href:o},a),ni.set(x,o),h.querySelector(w)===null)){switch(d){case"audioworklet":case"paintworklet":case"serviceworker":case"sharedworker":case"worker":case"script":if(h.querySelector(lc(x)))return}d=h.createElement("link"),qe(d,"link",o),Ce(d),h.head.appendChild(d)}}}function YT(o,a,h){$s.S(o,a,h);var d=$l;if(d&&o){var w=zs(d).hoistableStyles,x=xl(o);a=a||"default";var C=w.get(x);if(!C){var N={loading:0,preload:null};if(C=d.querySelector(oc(x)))N.loading=5;else{o=m({rel:"stylesheet",href:o,"data-precedence":a},h),(h=ni.get(x))&&xg(o,h);var B=C=d.createElement("link");Ce(B),qe(B,"link",o),B._p=new Promise(function(K,ot){B.onload=K,B.onerror=ot}),B.addEventListener("load",function(){N.loading|=1}),B.addEventListener("error",function(){N.loading|=2}),N.loading|=4,_h(C,a,d)}C={type:"stylesheet",instance:C,count:1,state:N},w.set(x,C)}}}function GT(o,a){$s.X(o,a);var h=$l;if(h&&o){var d=zs(h).hoistableScripts,w=bl(o),x=d.get(w);x||(x=h.querySelector(lc(w)),x||(o=m({src:o,async:!0},a),(a=ni.get(w))&&bg(o,a),x=h.createElement("script"),Ce(x),qe(x,"link",o),h.head.appendChild(x)),x={type:"script",instance:x,count:1,state:null},d.set(w,x))}}function LT(o,a){$s.M(o,a);var h=$l;if(h&&o){var d=zs(h).hoistableScripts,w=bl(o),x=d.get(w);x||(x=h.querySelector(lc(w)),x||(o=m({src:o,async:!0,type:"module"},a),(a=ni.get(w))&&bg(o,a),x=h.createElement("script"),Ce(x),qe(x,"link",o),h.head.appendChild(x)),x={type:"script",instance:x,count:1,state:null},d.set(w,x))}}function Sx(o,a,h,d){var w=(w=ft.current)?Rh(w):null;if(!w)throw Error(i(446));switch(o){case"meta":case"title":return null;case"style":return typeof h.precedence=="string"&&typeof h.href=="string"?(a=xl(h.href),h=zs(w).hoistableStyles,d=h.get(a),d||(d={type:"style",instance:null,count:0,state:null},h.set(a,d)),d):{type:"void",instance:null,count:0,state:null};case"link":if(h.rel==="stylesheet"&&typeof h.href=="string"&&typeof h.precedence=="string"){o=xl(h.href);var x=zs(w).hoistableStyles,C=x.get(o);if(C||(w=w.ownerDocument||w,C={type:"stylesheet",instance:null,count:0,state:{loading:0,preload:null}},x.set(o,C),(x=w.querySelector(oc(o)))&&!x._p&&(C.instance=x,C.state.loading=5),ni.has(o)||(h={rel:"preload",as:"style",href:h.href,crossOrigin:h.crossOrigin,integrity:h.integrity,media:h.media,hrefLang:h.hrefLang,referrerPolicy:h.referrerPolicy},ni.set(o,h),x||QT(w,o,h,C.state))),a&&d===null)throw Error(i(528,""));return C}if(a&&d!==null)throw Error(i(529,""));return null;case"script":return a=h.async,h=h.src,typeof h=="string"&&a&&typeof a!="function"&&typeof a!="symbol"?(a=bl(h),h=zs(w).hoistableScripts,d=h.get(a),d||(d={type:"script",instance:null,count:0,state:null},h.set(a,d)),d):{type:"void",instance:null,count:0,state:null};default:throw Error(i(444,o))}}function xl(o){return'href="'+pn(o)+'"'}function oc(o){return'link[rel="stylesheet"]['+o+"]"}function Ox(o){return m({},o,{"data-precedence":o.precedence,precedence:null})}function QT(o,a,h,d){o.querySelector('link[rel="preload"][as="style"]['+a+"]")?d.loading=1:(a=o.createElement("link"),d.preload=a,a.addEventListener("load",function(){return d.loading|=1}),a.addEventListener("error",function(){return d.loading|=2}),qe(a,"link",h),Ce(a),o.head.appendChild(a))}function bl(o){return'[src="'+pn(o)+'"]'}function lc(o){return"script[async]"+o}function kx(o,a,h){if(a.count++,a.instance===null)switch(a.type){case"style":var d=o.querySelector('style[data-href~="'+pn(h.href)+'"]');if(d)return a.instance=d,Ce(d),d;var w=m({},h,{"data-href":h.href,"data-precedence":h.precedence,href:null,precedence:null});return d=(o.ownerDocument||o).createElement("style"),Ce(d),qe(d,"style",w),_h(d,h.precedence,o),a.instance=d;case"stylesheet":w=xl(h.href);var x=o.querySelector(oc(w));if(x)return a.state.loading|=4,a.instance=x,Ce(x),x;d=Ox(h),(w=ni.get(w))&&xg(d,w),x=(o.ownerDocument||o).createElement("link"),Ce(x);var C=x;return C._p=new Promise(function(N,B){C.onload=N,C.onerror=B}),qe(x,"link",d),a.state.loading|=4,_h(x,h.precedence,o),a.instance=x;case"script":return x=bl(h.src),(w=o.querySelector(lc(x)))?(a.instance=w,Ce(w),w):(d=h,(w=ni.get(x))&&(d=m({},h),bg(d,w)),o=o.ownerDocument||o,w=o.createElement("script"),Ce(w),qe(w,"link",d),o.head.appendChild(w),a.instance=w);case"void":return null;default:throw Error(i(443,a.type))}else a.type==="stylesheet"&&(a.state.loading&4)===0&&(d=a.instance,a.state.loading|=4,_h(d,h.precedence,o));return a.instance}function _h(o,a,h){for(var d=h.querySelectorAll('link[rel="stylesheet"][data-precedence],style[data-precedence]'),w=d.length?d[d.length-1]:null,x=w,C=0;C<d.length;C++){var N=d[C];if(N.dataset.precedence===a)x=N;else if(x!==w)break}x?x.parentNode.insertBefore(o,x.nextSibling):(a=h.nodeType===9?h.head:h,a.insertBefore(o,a.firstChild))}function xg(o,a){o.crossOrigin==null&&(o.crossOrigin=a.crossOrigin),o.referrerPolicy==null&&(o.referrerPolicy=a.referrerPolicy),o.title==null&&(o.title=a.title)}function bg(o,a){o.crossOrigin==null&&(o.crossOrigin=a.crossOrigin),o.referrerPolicy==null&&(o.referrerPolicy=a.referrerPolicy),o.integrity==null&&(o.integrity=a.integrity)}var Mh=null;function Cx(o,a,h){if(Mh===null){var d=new Map,w=Mh=new Map;w.set(h,d)}else w=Mh,d=w.get(h),d||(d=new Map,w.set(h,d));if(d.has(o))return d;for(d.set(o,null),h=h.getElementsByTagName(o),w=0;w<h.length;w++){var x=h[w];if(!(x[Br]||x[Me]||o==="link"&&x.getAttribute("rel")==="stylesheet")&&x.namespaceURI!=="http://www.w3.org/2000/svg"){var C=x.getAttribute(a)||"";C=o+C;var N=d.get(C);N?N.push(x):d.set(C,[x])}}return d}function Ex(o,a,h){o=o.ownerDocument||o,o.head.insertBefore(h,a==="title"?o.querySelector("head > title"):null)}function PT(o,a,h){if(h===1||a.itemProp!=null)return!1;switch(o){case"meta":case"title":return!0;case"style":if(typeof a.precedence!="string"||typeof a.href!="string"||a.href==="")break;return!0;case"link":if(typeof a.rel!="string"||typeof a.href!="string"||a.href===""||a.onLoad||a.onError)break;switch(a.rel){case"stylesheet":return o=a.disabled,typeof a.precedence=="string"&&o==null;default:return!0}case"script":if(a.async&&typeof a.async!="function"&&typeof a.async!="symbol"&&!a.onLoad&&!a.onError&&a.src&&typeof a.src=="string")return!0}return!1}function Dx(o){return!(o.type==="stylesheet"&&(o.state.loading&3)===0)}function qT(o,a,h,d){if(h.type==="stylesheet"&&(typeof d.media!="string"||matchMedia(d.media).matches!==!1)&&(h.state.loading&4)===0){if(h.instance===null){var w=xl(d.href),x=a.querySelector(oc(w));if(x){a=x._p,a!==null&&typeof a=="object"&&typeof a.then=="function"&&(o.count++,o=Ah.bind(o),a.then(o,o)),h.state.loading|=4,h.instance=x,Ce(x);return}x=a.ownerDocument||a,d=Ox(d),(w=ni.get(w))&&xg(d,w),x=x.createElement("link"),Ce(x);var C=x;C._p=new Promise(function(N,B){C.onload=N,C.onerror=B}),qe(x,"link",d),h.instance=x}o.stylesheets===null&&(o.stylesheets=new Map),o.stylesheets.set(h,a),(a=h.state.preload)&&(h.state.loading&3)===0&&(o.count++,h=Ah.bind(o),a.addEventListener("load",h),a.addEventListener("error",h))}}var vg=0;function WT(o,a){return o.stylesheets&&o.count===0&&zh(o,o.stylesheets),0<o.count||0<o.imgCount?function(h){var d=setTimeout(function(){if(o.stylesheets&&zh(o,o.stylesheets),o.unsuspend){var x=o.unsuspend;o.unsuspend=null,x()}},6e4+a);0<o.imgBytes&&vg===0&&(vg=62500*kT());var w=setTimeout(function(){if(o.waitingForImages=!1,o.count===0&&(o.stylesheets&&zh(o,o.stylesheets),o.unsuspend)){var x=o.unsuspend;o.unsuspend=null,x()}},(o.imgBytes>vg?50:800)+a);return o.unsuspend=h,function(){o.unsuspend=null,clearTimeout(d),clearTimeout(w)}}:null}function Ah(){if(this.count--,this.count===0&&(this.imgCount===0||!this.waitingForImages)){if(this.stylesheets)zh(this,this.stylesheets);else if(this.unsuspend){var o=this.unsuspend;this.unsuspend=null,o()}}}var Hh=null;function zh(o,a){o.stylesheets=null,o.unsuspend!==null&&(o.count++,Hh=new Map,a.forEach(ZT,o),Hh=null,Ah.call(o))}function ZT(o,a){if(!(a.state.loading&4)){var h=Hh.get(o);if(h)var d=h.get(null);else{h=new Map,Hh.set(o,h);for(var w=o.querySelectorAll("link[data-precedence],style[data-precedence]"),x=0;x<w.length;x++){var C=w[x];(C.nodeName==="LINK"||C.getAttribute("media")!=="not all")&&(h.set(C.dataset.precedence,C),d=C)}d&&h.set(null,d)}w=a.instance,C=w.getAttribute("data-precedence"),x=h.get(C)||d,x===d&&h.set(null,w),h.set(C,w),this.count++,d=Ah.bind(this),w.addEventListener("load",d),w.addEventListener("error",d),x?x.parentNode.insertBefore(w,x.nextSibling):(o=o.nodeType===9?o.head:o,o.insertBefore(w,o.firstChild)),a.state.loading|=4}}var ac={$$typeof:k,Provider:null,Consumer:null,_currentValue:Z,_currentValue2:Z,_threadCount:0};function UT(o,a,h,d,w,x,C,N,B){this.tag=1,this.containerInfo=o,this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.next=this.pendingContext=this.context=this.cancelPendingCommit=null,this.callbackPriority=0,this.expirationTimes=ga(-1),this.entangledLanes=this.shellSuspendCounter=this.errorRecoveryDisabledLanes=this.expiredLanes=this.warmLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=ga(0),this.hiddenUpdates=ga(null),this.identifierPrefix=d,this.onUncaughtError=w,this.onCaughtError=x,this.onRecoverableError=C,this.pooledCache=null,this.pooledCacheLanes=0,this.formState=B,this.incompleteTransitions=new Map}function Tx(o,a,h,d,w,x,C,N,B,K,ot,ct){return o=new UT(o,a,h,C,B,K,ot,ct,N),a=1,x===!0&&(a|=24),x=Rn(3,null,null,a),o.current=x,x.stateNode=o,a=em(),a.refCount++,o.pooledCache=a,a.refCount++,x.memoizedState={element:d,isDehydrated:h,cache:a},rm(x),o}function Nx(o){return o?(o=Ko,o):Ko}function jx(o,a,h,d,w,x){w=Nx(w),d.context===null?d.context=w:d.pendingContext=w,d=Zs(a),d.payload={element:h},x=x===void 0?null:x,x!==null&&(d.callback=x),h=Us(o,d,a),h!==null&&(xn(h,o,a),Ga(h,o,a))}function Rx(o,a){if(o=o.memoizedState,o!==null&&o.dehydrated!==null){var h=o.retryLane;o.retryLane=h!==0&&h<a?h:a}}function Sg(o,a){Rx(o,a),(o=o.alternate)&&Rx(o,a)}function _x(o){if(o.tag===13||o.tag===31){var a=Pr(o,67108864);a!==null&&xn(a,o,67108864),Sg(o,67108864)}}function Mx(o){if(o.tag===13||o.tag===31){var a=zn();a=ya(a);var h=Pr(o,a);h!==null&&xn(h,o,a),Sg(o,a)}}var Bh=!0;function IT(o,a,h,d){var w=T.T;T.T=null;var x=z.p;try{z.p=2,Og(o,a,h,d)}finally{z.p=x,T.T=w}}function FT(o,a,h,d){var w=T.T;T.T=null;var x=z.p;try{z.p=8,Og(o,a,h,d)}finally{z.p=x,T.T=w}}function Og(o,a,h,d){if(Bh){var w=kg(d);if(w===null)ug(o,a,d,Yh,h),Hx(o,d);else if(XT(w,o,a,h,d))d.stopPropagation();else if(Hx(o,d),a&4&&-1<VT.indexOf(o)){for(;w!==null;){var x=As(w);if(x!==null)switch(x.tag){case 3:if(x=x.stateNode,x.current.memoizedState.isDehydrated){var C=ts(x.pendingLanes);if(C!==0){var N=x;for(N.pendingLanes|=2,N.entangledLanes|=2;C;){var B=1<<31-rn(C);N.entanglements[1]|=B,C&=~B}Ri(x),(Ft&6)===0&&(bh=xe()+500,nc(0))}}break;case 31:case 13:N=Pr(x,2),N!==null&&xn(N,x,2),Sh(),Sg(x,2)}if(x=kg(d),x===null&&ug(o,a,d,Yh,h),x===w)break;w=x}w!==null&&d.stopPropagation()}else ug(o,a,d,null,h)}}function kg(o){return o=Ep(o),Cg(o)}var Yh=null;function Cg(o){if(Yh=null,o=Ms(o),o!==null){var a=r(o);if(a===null)o=null;else{var h=a.tag;if(h===13){if(o=l(a),o!==null)return o;o=null}else if(h===31){if(o=c(a),o!==null)return o;o=null}else if(h===3){if(a.stateNode.current.memoizedState.isDehydrated)return a.tag===3?a.stateNode.containerInfo:null;o=null}else a!==o&&(o=null)}}return Yh=o,null}function Ax(o){switch(o){case"beforetoggle":case"cancel":case"click":case"close":case"contextmenu":case"copy":case"cut":case"auxclick":case"dblclick":case"dragend":case"dragstart":case"drop":case"focusin":case"focusout":case"input":case"invalid":case"keydown":case"keypress":case"keyup":case"mousedown":case"mouseup":case"paste":case"pause":case"play":case"pointercancel":case"pointerdown":case"pointerup":case"ratechange":case"reset":case"resize":case"seeked":case"submit":case"toggle":case"touchcancel":case"touchend":case"touchstart":case"volumechange":case"change":case"selectionchange":case"textInput":case"compositionstart":case"compositionend":case"compositionupdate":case"beforeblur":case"afterblur":case"beforeinput":case"blur":case"fullscreenchange":case"focus":case"hashchange":case"popstate":case"select":case"selectstart":return 2;case"drag":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"mousemove":case"mouseout":case"mouseover":case"pointermove":case"pointerout":case"pointerover":case"scroll":case"touchmove":case"wheel":case"mouseenter":case"mouseleave":case"pointerenter":case"pointerleave":return 8;case"message":switch(Nn()){case Zn:return 2;case Un:return 8;case In:case ma:return 32;case Ao:return 268435456;default:return 32}default:return 32}}var Eg=!1,sr=null,rr=null,or=null,cc=new Map,uc=new Map,lr=[],VT="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset".split(" ");function Hx(o,a){switch(o){case"focusin":case"focusout":sr=null;break;case"dragenter":case"dragleave":rr=null;break;case"mouseover":case"mouseout":or=null;break;case"pointerover":case"pointerout":cc.delete(a.pointerId);break;case"gotpointercapture":case"lostpointercapture":uc.delete(a.pointerId)}}function hc(o,a,h,d,w,x){return o===null||o.nativeEvent!==x?(o={blockedOn:a,domEventName:h,eventSystemFlags:d,nativeEvent:x,targetContainers:[w]},a!==null&&(a=As(a),a!==null&&_x(a)),o):(o.eventSystemFlags|=d,a=o.targetContainers,w!==null&&a.indexOf(w)===-1&&a.push(w),o)}function XT(o,a,h,d,w){switch(a){case"focusin":return sr=hc(sr,o,a,h,d,w),!0;case"dragenter":return rr=hc(rr,o,a,h,d,w),!0;case"mouseover":return or=hc(or,o,a,h,d,w),!0;case"pointerover":var x=w.pointerId;return cc.set(x,hc(cc.get(x)||null,o,a,h,d,w)),!0;case"gotpointercapture":return x=w.pointerId,uc.set(x,hc(uc.get(x)||null,o,a,h,d,w)),!0}return!1}function zx(o){var a=Ms(o.target);if(a!==null){var h=r(a);if(h!==null){if(a=h.tag,a===13){if(a=l(h),a!==null){o.blockedOn=a,Du(o.priority,function(){Mx(h)});return}}else if(a===31){if(a=c(h),a!==null){o.blockedOn=a,Du(o.priority,function(){Mx(h)});return}}else if(a===3&&h.stateNode.current.memoizedState.isDehydrated){o.blockedOn=h.tag===3?h.stateNode.containerInfo:null;return}}}o.blockedOn=null}function Gh(o){if(o.blockedOn!==null)return!1;for(var a=o.targetContainers;0<a.length;){var h=kg(o.nativeEvent);if(h===null){h=o.nativeEvent;var d=new h.constructor(h.type,h);Cp=d,h.target.dispatchEvent(d),Cp=null}else return a=As(h),a!==null&&_x(a),o.blockedOn=h,!1;a.shift()}return!0}function Bx(o,a,h){Gh(o)&&h.delete(a)}function KT(){Eg=!1,sr!==null&&Gh(sr)&&(sr=null),rr!==null&&Gh(rr)&&(rr=null),or!==null&&Gh(or)&&(or=null),cc.forEach(Bx),uc.forEach(Bx)}function Lh(o,a){o.blockedOn===a&&(o.blockedOn=null,Eg||(Eg=!0,e.unstable_scheduleCallback(e.unstable_NormalPriority,KT)))}var Qh=null;function Yx(o){Qh!==o&&(Qh=o,e.unstable_scheduleCallback(e.unstable_NormalPriority,function(){Qh===o&&(Qh=null);for(var a=0;a<o.length;a+=3){var h=o[a],d=o[a+1],w=o[a+2];if(typeof d!="function"){if(Cg(d||h)===null)continue;break}var x=As(h);x!==null&&(o.splice(a,3),a-=3,km(x,{pending:!0,data:w,method:h.method,action:d},d,w))}}))}function vl(o){function a(B){return Lh(B,o)}sr!==null&&Lh(sr,o),rr!==null&&Lh(rr,o),or!==null&&Lh(or,o),cc.forEach(a),uc.forEach(a);for(var h=0;h<lr.length;h++){var d=lr[h];d.blockedOn===o&&(d.blockedOn=null)}for(;0<lr.length&&(h=lr[0],h.blockedOn===null);)zx(h),h.blockedOn===null&&lr.shift();if(h=(o.ownerDocument||o).$$reactFormReplay,h!=null)for(d=0;d<h.length;d+=3){var w=h[d],x=h[d+1],C=w[Ie]||null;if(typeof x=="function")C||Yx(h);else if(C){var N=null;if(x&&x.hasAttribute("formAction")){if(w=x,C=x[Ie]||null)N=C.formAction;else if(Cg(w)!==null)continue}else N=C.action;typeof N=="function"?h[d+1]=N:(h.splice(d,3),d-=3),Yx(h)}}}function Gx(){function o(x){x.canIntercept&&x.info==="react-transition"&&x.intercept({handler:function(){return new Promise(function(C){return w=C})},focusReset:"manual",scroll:"manual"})}function a(){w!==null&&(w(),w=null),d||setTimeout(h,20)}function h(){if(!d&&!navigation.transition){var x=navigation.currentEntry;x&&x.url!=null&&navigation.navigate(x.url,{state:x.getState(),info:"react-transition",history:"replace"})}}if(typeof navigation=="object"){var d=!1,w=null;return navigation.addEventListener("navigate",o),navigation.addEventListener("navigatesuccess",a),navigation.addEventListener("navigateerror",a),setTimeout(h,100),function(){d=!0,navigation.removeEventListener("navigate",o),navigation.removeEventListener("navigatesuccess",a),navigation.removeEventListener("navigateerror",a),w!==null&&(w(),w=null)}}}function Dg(o){this._internalRoot=o}Ph.prototype.render=Dg.prototype.render=function(o){var a=this._internalRoot;if(a===null)throw Error(i(409));var h=a.current,d=zn();jx(h,d,o,a,null,null)},Ph.prototype.unmount=Dg.prototype.unmount=function(){var o=this._internalRoot;if(o!==null){this._internalRoot=null;var a=o.containerInfo;jx(o.current,2,null,o,null,null),Sh(),a[es]=null}};function Ph(o){this._internalRoot=o}Ph.prototype.unstable_scheduleHydration=function(o){if(o){var a=Eu();o={blockedOn:null,target:o,priority:a};for(var h=0;h<lr.length&&a!==0&&a<lr[h].priority;h++);lr.splice(h,0,o),h===0&&zx(o)}};var Lx=t.version;if(Lx!=="19.2.8")throw Error(i(527,Lx,"19.2.8"));z.findDOMNode=function(o){var a=o._reactInternals;if(a===void 0)throw typeof o.render=="function"?Error(i(188)):(o=Object.keys(o).join(","),Error(i(268,o)));return o=f(a),o=o!==null?p(o):null,o=o===null?null:o.stateNode,o};var JT={bundleType:0,version:"19.2.8",rendererPackageName:"react-dom",currentDispatcherRef:T,reconcilerVersion:"19.2.8"};if(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__<"u"){var qh=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!qh.isDisabled&&qh.supportsFiber)try{Ar=qh.inject(JT),sn=qh}catch{}}return dc.createRoot=function(o,a){if(!s(o))throw Error(i(299));var h=!1,d="",w=I$,x=F$,C=V$;return a!=null&&(a.unstable_strictMode===!0&&(h=!0),a.identifierPrefix!==void 0&&(d=a.identifierPrefix),a.onUncaughtError!==void 0&&(w=a.onUncaughtError),a.onCaughtError!==void 0&&(x=a.onCaughtError),a.onRecoverableError!==void 0&&(C=a.onRecoverableError)),a=Tx(o,1,!1,null,null,h,d,null,w,x,C,Gx),o[es]=a.current,cg(o),new Dg(a)},dc.hydrateRoot=function(o,a,h){if(!s(o))throw Error(i(299));var d=!1,w="",x=I$,C=F$,N=V$,B=null;return h!=null&&(h.unstable_strictMode===!0&&(d=!0),h.identifierPrefix!==void 0&&(w=h.identifierPrefix),h.onUncaughtError!==void 0&&(x=h.onUncaughtError),h.onCaughtError!==void 0&&(C=h.onCaughtError),h.onRecoverableError!==void 0&&(N=h.onRecoverableError),h.formState!==void 0&&(B=h.formState)),a=Tx(o,1,!0,a,h??null,d,w,B,x,C,N,Gx),a.context=Nx(null),h=a.current,d=zn(),d=ya(d),w=Zs(d),w.callback=null,Us(h,w,d),h=d,a.current.lanes=h,zr(a,h),Ri(a),o[es]=a.current,cg(o),new Ph(a)},dc.version="19.2.8",dc}var Kx;function u9(){if(Kx)return jg.exports;Kx=1;function e(){if(!(typeof __REACT_DEVTOOLS_GLOBAL_HOOK__>"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}return e(),jg.exports=c9(),jg.exports}var h9=u9();function Re(e){if(typeof e=="string"||typeof e=="number")return""+e;let t="";if(Array.isArray(e))for(let n=0,i;n<e.length;n++)(i=Re(e[n]))!==""&&(t+=(t&&" ")+i);else for(let n in e)e[n]&&(t+=(t&&" ")+n);return t}var f9={value:()=>{}};function Ad(){for(var e=0,t=arguments.length,n={},i;e<t;++e){if(!(i=arguments[e]+"")||i in n||/[\s.]/.test(i))throw new Error("illegal type: "+i);n[i]=[]}return new Ef(n)}function Ef(e){this._=e}function d9(e,t){return e.trim().split(/^|\s+/).map(function(n){var i="",s=n.indexOf(".");if(s>=0&&(i=n.slice(s+1),n=n.slice(0,s)),n&&!t.hasOwnProperty(n))throw new Error("unknown type: "+n);return{type:n,name:i}})}Ef.prototype=Ad.prototype={constructor:Ef,on:function(e,t){var n=this._,i=d9(e+"",n),s,r=-1,l=i.length;if(arguments.length<2){for(;++r<l;)if((s=(e=i[r]).type)&&(s=p9(n[s],e.name)))return s;return}if(t!=null&&typeof t!="function")throw new Error("invalid callback: "+t);for(;++r<l;)if(s=(e=i[r]).type)n[s]=Jx(n[s],e.name,t);else if(t==null)for(s in n)n[s]=Jx(n[s],e.name,null);return this},copy:function(){var e={},t=this._;for(var n in t)e[n]=t[n].slice();return new Ef(e)},call:function(e,t){if((s=arguments.length-2)>0)for(var n=new Array(s),i=0,s,r;i<s;++i)n[i]=arguments[i+2];if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(r=this._[e],i=0,s=r.length;i<s;++i)r[i].value.apply(t,n)},apply:function(e,t,n){if(!this._.hasOwnProperty(e))throw new Error("unknown type: "+e);for(var i=this._[e],s=0,r=i.length;s<r;++s)i[s].value.apply(t,n)}};function p9(e,t){for(var n=0,i=e.length,s;n<i;++n)if((s=e[n]).name===t)return s.value}function Jx(e,t,n){for(var i=0,s=e.length;i<s;++i)if(e[i].name===t){e[i]=f9,e=e.slice(0,i).concat(e.slice(i+1));break}return n!=null&&e.push({name:t,value:n}),e}var z0="http://www.w3.org/1999/xhtml";const tb={svg:"http://www.w3.org/2000/svg",xhtml:z0,xlink:"http://www.w3.org/1999/xlink",xml:"http://www.w3.org/XML/1998/namespace",xmlns:"http://www.w3.org/2000/xmlns/"};function Hd(e){var t=e+="",n=t.indexOf(":");return n>=0&&(t=e.slice(0,n))!=="xmlns"&&(e=e.slice(n+1)),tb.hasOwnProperty(t)?{space:tb[t],local:e}:e}function m9(e){return function(){var t=this.ownerDocument,n=this.namespaceURI;return n===z0&&t.documentElement.namespaceURI===z0?t.createElement(e):t.createElementNS(n,e)}}function g9(e){return function(){return this.ownerDocument.createElementNS(e.space,e.local)}}function sO(e){var t=Hd(e);return(t.local?g9:m9)(t)}function y9(){}function Fy(e){return e==null?y9:function(){return this.querySelector(e)}}function w9(e){typeof e!="function"&&(e=Fy(e));for(var t=this._groups,n=t.length,i=new Array(n),s=0;s<n;++s)for(var r=t[s],l=r.length,c=i[s]=new Array(l),u,f,p=0;p<l;++p)(u=r[p])&&(f=e.call(u,u.__data__,p,r))&&("__data__"in u&&(f.__data__=u.__data__),c[p]=f);return new Wn(i,this._parents)}function $9(e){return e==null?[]:Array.isArray(e)?e:Array.from(e)}function x9(){return[]}function rO(e){return e==null?x9:function(){return this.querySelectorAll(e)}}function b9(e){return function(){return $9(e.apply(this,arguments))}}function v9(e){typeof e=="function"?e=b9(e):e=rO(e);for(var t=this._groups,n=t.length,i=[],s=[],r=0;r<n;++r)for(var l=t[r],c=l.length,u,f=0;f<c;++f)(u=l[f])&&(i.push(e.call(u,u.__data__,f,l)),s.push(u));return new Wn(i,s)}function oO(e){return function(){return this.matches(e)}}function lO(e){return function(t){return t.matches(e)}}var S9=Array.prototype.find;function O9(e){return function(){return S9.call(this.children,e)}}function k9(){return this.firstElementChild}function C9(e){return this.select(e==null?k9:O9(typeof e=="function"?e:lO(e)))}var E9=Array.prototype.filter;function D9(){return Array.from(this.children)}function T9(e){return function(){return E9.call(this.children,e)}}function N9(e){return this.selectAll(e==null?D9:T9(typeof e=="function"?e:lO(e)))}function j9(e){typeof e!="function"&&(e=oO(e));for(var t=this._groups,n=t.length,i=new Array(n),s=0;s<n;++s)for(var r=t[s],l=r.length,c=i[s]=[],u,f=0;f<l;++f)(u=r[f])&&e.call(u,u.__data__,f,r)&&c.push(u);return new Wn(i,this._parents)}function aO(e){return new Array(e.length)}function R9(){return new Wn(this._enter||this._groups.map(aO),this._parents)}function Pf(e,t){this.ownerDocument=e.ownerDocument,this.namespaceURI=e.namespaceURI,this._next=null,this._parent=e,this.__data__=t}Pf.prototype={constructor:Pf,appendChild:function(e){return this._parent.insertBefore(e,this._next)},insertBefore:function(e,t){return this._parent.insertBefore(e,t)},querySelector:function(e){return this._parent.querySelector(e)},querySelectorAll:function(e){return this._parent.querySelectorAll(e)}};function _9(e){return function(){return e}}function M9(e,t,n,i,s,r){for(var l=0,c,u=t.length,f=r.length;l<f;++l)(c=t[l])?(c.__data__=r[l],i[l]=c):n[l]=new Pf(e,r[l]);for(;l<u;++l)(c=t[l])&&(s[l]=c)}function A9(e,t,n,i,s,r,l){var c,u,f=new Map,p=t.length,m=r.length,g=new Array(p),y;for(c=0;c<p;++c)(u=t[c])&&(g[c]=y=l.call(u,u.__data__,c,t)+"",f.has(y)?s[c]=u:f.set(y,u));for(c=0;c<m;++c)y=l.call(e,r[c],c,r)+"",(u=f.get(y))?(i[c]=u,u.__data__=r[c],f.delete(y)):n[c]=new Pf(e,r[c]);for(c=0;c<p;++c)(u=t[c])&&f.get(g[c])===u&&(s[c]=u)}function H9(e){return e.__data__}function z9(e,t){if(!arguments.length)return Array.from(this,H9);var n=t?A9:M9,i=this._parents,s=this._groups;typeof e!="function"&&(e=_9(e));for(var r=s.length,l=new Array(r),c=new Array(r),u=new Array(r),f=0;f<r;++f){var p=i[f],m=s[f],g=m.length,y=B9(e.call(p,p&&p.__data__,f,i)),$=y.length,b=c[f]=new Array($),S=l[f]=new Array($),O=u[f]=new Array(g);n(p,m,b,S,O,y,t);for(var E=0,k=0,D,_;E<$;++E)if(D=b[E]){for(E>=k&&(k=E+1);!(_=S[k])&&++k<$;);D._next=_||null}}return l=new Wn(l,i),l._enter=c,l._exit=u,l}function B9(e){return typeof e=="object"&&"length"in e?e:Array.from(e)}function Y9(){return new Wn(this._exit||this._groups.map(aO),this._parents)}function G9(e,t,n){var i=this.enter(),s=this,r=this.exit();return typeof e=="function"?(i=e(i),i&&(i=i.selection())):i=i.append(e+""),t!=null&&(s=t(s),s&&(s=s.selection())),n==null?r.remove():n(r),i&&s?i.merge(s).order():s}function L9(e){for(var t=e.selection?e.selection():e,n=this._groups,i=t._groups,s=n.length,r=i.length,l=Math.min(s,r),c=new Array(s),u=0;u<l;++u)for(var f=n[u],p=i[u],m=f.length,g=c[u]=new Array(m),y,$=0;$<m;++$)(y=f[$]||p[$])&&(g[$]=y);for(;u<s;++u)c[u]=n[u];return new Wn(c,this._parents)}function Q9(){for(var e=this._groups,t=-1,n=e.length;++t<n;)for(var i=e[t],s=i.length-1,r=i[s],l;--s>=0;)(l=i[s])&&(r&&l.compareDocumentPosition(r)^4&&r.parentNode.insertBefore(l,r),r=l);return this}function P9(e){e||(e=q9);function t(m,g){return m&&g?e(m.__data__,g.__data__):!m-!g}for(var n=this._groups,i=n.length,s=new Array(i),r=0;r<i;++r){for(var l=n[r],c=l.length,u=s[r]=new Array(c),f,p=0;p<c;++p)(f=l[p])&&(u[p]=f);u.sort(t)}return new Wn(s,this._parents).order()}function q9(e,t){return e<t?-1:e>t?1:e>=t?0:NaN}function W9(){var e=arguments[0];return arguments[0]=this,e.apply(null,arguments),this}function Z9(){return Array.from(this)}function U9(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var i=e[t],s=0,r=i.length;s<r;++s){var l=i[s];if(l)return l}return null}function I9(){let e=0;for(const t of this)++e;return e}function F9(){return!this.node()}function V9(e){for(var t=this._groups,n=0,i=t.length;n<i;++n)for(var s=t[n],r=0,l=s.length,c;r<l;++r)(c=s[r])&&e.call(c,c.__data__,r,s);return this}function X9(e){return function(){this.removeAttribute(e)}}function K9(e){return function(){this.removeAttributeNS(e.space,e.local)}}function J9(e,t){return function(){this.setAttribute(e,t)}}function tN(e,t){return function(){this.setAttributeNS(e.space,e.local,t)}}function eN(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttribute(e):this.setAttribute(e,n)}}function nN(e,t){return function(){var n=t.apply(this,arguments);n==null?this.removeAttributeNS(e.space,e.local):this.setAttributeNS(e.space,e.local,n)}}function iN(e,t){var n=Hd(e);if(arguments.length<2){var i=this.node();return n.local?i.getAttributeNS(n.space,n.local):i.getAttribute(n)}return this.each((t==null?n.local?K9:X9:typeof t=="function"?n.local?nN:eN:n.local?tN:J9)(n,t))}function cO(e){return e.ownerDocument&&e.ownerDocument.defaultView||e.document&&e||e.defaultView}function sN(e){return function(){this.style.removeProperty(e)}}function rN(e,t,n){return function(){this.style.setProperty(e,t,n)}}function oN(e,t,n){return function(){var i=t.apply(this,arguments);i==null?this.style.removeProperty(e):this.style.setProperty(e,i,n)}}function lN(e,t,n){return arguments.length>1?this.each((t==null?sN:typeof t=="function"?oN:rN)(e,t,n??"")):Il(this.node(),e)}function Il(e,t){return e.style.getPropertyValue(t)||cO(e).getComputedStyle(e,null).getPropertyValue(t)}function aN(e){return function(){delete this[e]}}function cN(e,t){return function(){this[e]=t}}function uN(e,t){return function(){var n=t.apply(this,arguments);n==null?delete this[e]:this[e]=n}}function hN(e,t){return arguments.length>1?this.each((t==null?aN:typeof t=="function"?uN:cN)(e,t)):this.node()[e]}function uO(e){return e.trim().split(/^|\s+/)}function Vy(e){return e.classList||new hO(e)}function hO(e){this._node=e,this._names=uO(e.getAttribute("class")||"")}hO.prototype={add:function(e){var t=this._names.indexOf(e);t<0&&(this._names.push(e),this._node.setAttribute("class",this._names.join(" ")))},remove:function(e){var t=this._names.indexOf(e);t>=0&&(this._names.splice(t,1),this._node.setAttribute("class",this._names.join(" ")))},contains:function(e){return this._names.indexOf(e)>=0}};function fO(e,t){for(var n=Vy(e),i=-1,s=t.length;++i<s;)n.add(t[i])}function dO(e,t){for(var n=Vy(e),i=-1,s=t.length;++i<s;)n.remove(t[i])}function fN(e){return function(){fO(this,e)}}function dN(e){return function(){dO(this,e)}}function pN(e,t){return function(){(t.apply(this,arguments)?fO:dO)(this,e)}}function mN(e,t){var n=uO(e+"");if(arguments.length<2){for(var i=Vy(this.node()),s=-1,r=n.length;++s<r;)if(!i.contains(n[s]))return!1;return!0}return this.each((typeof t=="function"?pN:t?fN:dN)(n,t))}function gN(){this.textContent=""}function yN(e){return function(){this.textContent=e}}function wN(e){return function(){var t=e.apply(this,arguments);this.textContent=t??""}}function $N(e){return arguments.length?this.each(e==null?gN:(typeof e=="function"?wN:yN)(e)):this.node().textContent}function xN(){this.innerHTML=""}function bN(e){return function(){this.innerHTML=e}}function vN(e){return function(){var t=e.apply(this,arguments);this.innerHTML=t??""}}function SN(e){return arguments.length?this.each(e==null?xN:(typeof e=="function"?vN:bN)(e)):this.node().innerHTML}function ON(){this.nextSibling&&this.parentNode.appendChild(this)}function kN(){return this.each(ON)}function CN(){this.previousSibling&&this.parentNode.insertBefore(this,this.parentNode.firstChild)}function EN(){return this.each(CN)}function DN(e){var t=typeof e=="function"?e:sO(e);return this.select(function(){return this.appendChild(t.apply(this,arguments))})}function TN(){return null}function NN(e,t){var n=typeof e=="function"?e:sO(e),i=t==null?TN:typeof t=="function"?t:Fy(t);return this.select(function(){return this.insertBefore(n.apply(this,arguments),i.apply(this,arguments)||null)})}function jN(){var e=this.parentNode;e&&e.removeChild(this)}function RN(){return this.each(jN)}function _N(){var e=this.cloneNode(!1),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function MN(){var e=this.cloneNode(!0),t=this.parentNode;return t?t.insertBefore(e,this.nextSibling):e}function AN(e){return this.select(e?MN:_N)}function HN(e){return arguments.length?this.property("__data__",e):this.node().__data__}function zN(e){return function(t){e.call(this,t,this.__data__)}}function BN(e){return e.trim().split(/^|\s+/).map(function(t){var n="",i=t.indexOf(".");return i>=0&&(n=t.slice(i+1),t=t.slice(0,i)),{type:t,name:n}})}function YN(e){return function(){var t=this.__on;if(t){for(var n=0,i=-1,s=t.length,r;n<s;++n)r=t[n],(!e.type||r.type===e.type)&&r.name===e.name?this.removeEventListener(r.type,r.listener,r.options):t[++i]=r;++i?t.length=i:delete this.__on}}}function GN(e,t,n){return function(){var i=this.__on,s,r=zN(t);if(i){for(var l=0,c=i.length;l<c;++l)if((s=i[l]).type===e.type&&s.name===e.name){this.removeEventListener(s.type,s.listener,s.options),this.addEventListener(s.type,s.listener=r,s.options=n),s.value=t;return}}this.addEventListener(e.type,r,n),s={type:e.type,name:e.name,value:t,listener:r,options:n},i?i.push(s):this.__on=[s]}}function LN(e,t,n){var i=BN(e+""),s,r=i.length,l;if(arguments.length<2){var c=this.node().__on;if(c){for(var u=0,f=c.length,p;u<f;++u)for(s=0,p=c[u];s<r;++s)if((l=i[s]).type===p.type&&l.name===p.name)return p.value}return}for(c=t?GN:YN,s=0;s<r;++s)this.each(c(i[s],t,n));return this}function pO(e,t,n){var i=cO(e),s=i.CustomEvent;typeof s=="function"?s=new s(t,n):(s=i.document.createEvent("Event"),n?(s.initEvent(t,n.bubbles,n.cancelable),s.detail=n.detail):s.initEvent(t,!1,!1)),e.dispatchEvent(s)}function QN(e,t){return function(){return pO(this,e,t)}}function PN(e,t){return function(){return pO(this,e,t.apply(this,arguments))}}function qN(e,t){return this.each((typeof t=="function"?PN:QN)(e,t))}function*WN(){for(var e=this._groups,t=0,n=e.length;t<n;++t)for(var i=e[t],s=0,r=i.length,l;s<r;++s)(l=i[s])&&(yield l)}var mO=[null];function Wn(e,t){this._groups=e,this._parents=t}function uu(){return new Wn([[document.documentElement]],mO)}function ZN(){return this}Wn.prototype=uu.prototype={constructor:Wn,select:w9,selectAll:v9,selectChild:C9,selectChildren:N9,filter:j9,data:z9,enter:R9,exit:Y9,join:G9,merge:L9,selection:ZN,order:Q9,sort:P9,call:W9,nodes:Z9,node:U9,size:I9,empty:F9,each:V9,attr:iN,style:lN,property:hN,classed:mN,text:$N,html:SN,raise:kN,lower:EN,append:DN,insert:NN,remove:RN,clone:AN,datum:HN,on:LN,dispatch:qN,[Symbol.iterator]:WN};function Pn(e){return typeof e=="string"?new Wn([[document.querySelector(e)]],[document.documentElement]):new Wn([[e]],mO)}function UN(e){let t;for(;t=e.sourceEvent;)e=t;return e}function pi(e,t){if(e=UN(e),t===void 0&&(t=e.currentTarget),t){var n=t.ownerSVGElement||t;if(n.createSVGPoint){var i=n.createSVGPoint();return i.x=e.clientX,i.y=e.clientY,i=i.matrixTransform(t.getScreenCTM().inverse()),[i.x,i.y]}if(t.getBoundingClientRect){var s=t.getBoundingClientRect();return[e.clientX-s.left-t.clientLeft,e.clientY-s.top-t.clientTop]}}return[e.pageX,e.pageY]}const IN={passive:!1},zc={capture:!0,passive:!1};function Ag(e){e.stopImmediatePropagation()}function zl(e){e.preventDefault(),e.stopImmediatePropagation()}function gO(e){var t=e.document.documentElement,n=Pn(e).on("dragstart.drag",zl,zc);"onselectstart"in t?n.on("selectstart.drag",zl,zc):(t.__noselect=t.style.MozUserSelect,t.style.MozUserSelect="none")}function yO(e,t){var n=e.document.documentElement,i=Pn(e).on("dragstart.drag",null);t&&(i.on("click.drag",zl,zc),setTimeout(function(){i.on("click.drag",null)},0)),"onselectstart"in n?i.on("selectstart.drag",null):(n.style.MozUserSelect=n.__noselect,delete n.__noselect)}const Wh=e=>()=>e;function B0(e,{sourceEvent:t,subject:n,target:i,identifier:s,active:r,x:l,y:c,dx:u,dy:f,dispatch:p}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},subject:{value:n,enumerable:!0,configurable:!0},target:{value:i,enumerable:!0,configurable:!0},identifier:{value:s,enumerable:!0,configurable:!0},active:{value:r,enumerable:!0,configurable:!0},x:{value:l,enumerable:!0,configurable:!0},y:{value:c,enumerable:!0,configurable:!0},dx:{value:u,enumerable:!0,configurable:!0},dy:{value:f,enumerable:!0,configurable:!0},_:{value:p}})}B0.prototype.on=function(){var e=this._.on.apply(this._,arguments);return e===this._?this:e};function FN(e){return!e.ctrlKey&&!e.button}function VN(){return this.parentNode}function XN(e,t){return t??{x:e.x,y:e.y}}function KN(){return navigator.maxTouchPoints||"ontouchstart"in this}function wO(){var e=FN,t=VN,n=XN,i=KN,s={},r=Ad("start","drag","end"),l=0,c,u,f,p,m=0;function g(D){D.on("mousedown.drag",y).filter(i).on("touchstart.drag",S).on("touchmove.drag",O,IN).on("touchend.drag touchcancel.drag",E).style("touch-action","none").style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}function y(D,_){if(!(p||!e.call(this,D,_))){var A=k(this,t.call(this,D,_),D,_,"mouse");A&&(Pn(D.view).on("mousemove.drag",$,zc).on("mouseup.drag",b,zc),gO(D.view),Ag(D),f=!1,c=D.clientX,u=D.clientY,A("start",D))}}function $(D){if(zl(D),!f){var _=D.clientX-c,A=D.clientY-u;f=_*_+A*A>m}s.mouse("drag",D)}function b(D){Pn(D.view).on("mousemove.drag mouseup.drag",null),yO(D.view,f),zl(D),s.mouse("end",D)}function S(D,_){if(e.call(this,D,_)){var A=D.changedTouches,H=t.call(this,D,_),Y=A.length,W,nt;for(W=0;W<Y;++W)(nt=k(this,H,D,_,A[W].identifier,A[W]))&&(Ag(D),nt("start",D,A[W]))}}function O(D){var _=D.changedTouches,A=_.length,H,Y;for(H=0;H<A;++H)(Y=s[_[H].identifier])&&(zl(D),Y("drag",D,_[H]))}function E(D){var _=D.changedTouches,A=_.length,H,Y;for(p&&clearTimeout(p),p=setTimeout(function(){p=null},500),H=0;H<A;++H)(Y=s[_[H].identifier])&&(Ag(D),Y("end",D,_[H]))}function k(D,_,A,H,Y,W){var nt=r.copy(),U=pi(W||A,_),P,F,M;if((M=n.call(D,new B0("beforestart",{sourceEvent:A,target:g,identifier:Y,active:l,x:U[0],y:U[1],dx:0,dy:0,dispatch:nt}),H))!=null)return P=M.x-U[0]||0,F=M.y-U[1]||0,function G(T,z,Z){var Q=U,et;switch(T){case"start":s[Y]=G,et=l++;break;case"end":delete s[Y],--l;case"drag":U=pi(Z||z,_),et=l;break}nt.call(T,D,new B0(T,{sourceEvent:z,subject:M,target:g,identifier:Y,active:et,x:U[0]+P,y:U[1]+F,dx:U[0]-Q[0],dy:U[1]-Q[1],dispatch:nt}),H)}}return g.filter=function(D){return arguments.length?(e=typeof D=="function"?D:Wh(!!D),g):e},g.container=function(D){return arguments.length?(t=typeof D=="function"?D:Wh(D),g):t},g.subject=function(D){return arguments.length?(n=typeof D=="function"?D:Wh(D),g):n},g.touchable=function(D){return arguments.length?(i=typeof D=="function"?D:Wh(!!D),g):i},g.on=function(){var D=r.on.apply(r,arguments);return D===r?g:D},g.clickDistance=function(D){return arguments.length?(m=(D=+D)*D,g):Math.sqrt(m)},g}function Xy(e,t,n){e.prototype=t.prototype=n,n.constructor=e}function $O(e,t){var n=Object.create(e.prototype);for(var i in t)n[i]=t[i];return n}function hu(){}var Bc=.7,qf=1/Bc,Bl="\\s*([+-]?\\d+)\\s*",Yc="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)\\s*",qi="\\s*([+-]?(?:\\d*\\.)?\\d+(?:[eE][+-]?\\d+)?)%\\s*",JN=/^#([0-9a-f]{3,8})$/,tj=new RegExp(`^rgb\\(${Bl},${Bl},${Bl}\\)$`),ej=new RegExp(`^rgb\\(${qi},${qi},${qi}\\)$`),nj=new RegExp(`^rgba\\(${Bl},${Bl},${Bl},${Yc}\\)$`),ij=new RegExp(`^rgba\\(${qi},${qi},${qi},${Yc}\\)$`),sj=new RegExp(`^hsl\\(${Yc},${qi},${qi}\\)$`),rj=new RegExp(`^hsla\\(${Yc},${qi},${qi},${Yc}\\)$`),eb={aliceblue:15792383,antiquewhite:16444375,aqua:65535,aquamarine:8388564,azure:15794175,beige:16119260,bisque:16770244,black:0,blanchedalmond:16772045,blue:255,blueviolet:9055202,brown:10824234,burlywood:14596231,cadetblue:6266528,chartreuse:8388352,chocolate:13789470,coral:16744272,cornflowerblue:6591981,cornsilk:16775388,crimson:14423100,cyan:65535,darkblue:139,darkcyan:35723,darkgoldenrod:12092939,darkgray:11119017,darkgreen:25600,darkgrey:11119017,darkkhaki:12433259,darkmagenta:9109643,darkolivegreen:5597999,darkorange:16747520,darkorchid:10040012,darkred:9109504,darksalmon:15308410,darkseagreen:9419919,darkslateblue:4734347,darkslategray:3100495,darkslategrey:3100495,darkturquoise:52945,darkviolet:9699539,deeppink:16716947,deepskyblue:49151,dimgray:6908265,dimgrey:6908265,dodgerblue:2003199,firebrick:11674146,floralwhite:16775920,forestgreen:2263842,fuchsia:16711935,gainsboro:14474460,ghostwhite:16316671,gold:16766720,goldenrod:14329120,gray:8421504,green:32768,greenyellow:11403055,grey:8421504,honeydew:15794160,hotpink:16738740,indianred:13458524,indigo:4915330,ivory:16777200,khaki:15787660,lavender:15132410,lavenderblush:16773365,lawngreen:8190976,lemonchiffon:16775885,lightblue:11393254,lightcoral:15761536,lightcyan:14745599,lightgoldenrodyellow:16448210,lightgray:13882323,lightgreen:9498256,lightgrey:13882323,lightpink:16758465,lightsalmon:16752762,lightseagreen:2142890,lightskyblue:8900346,lightslategray:7833753,lightslategrey:7833753,lightsteelblue:11584734,lightyellow:16777184,lime:65280,limegreen:3329330,linen:16445670,magenta:16711935,maroon:8388608,mediumaquamarine:6737322,mediumblue:205,mediumorchid:12211667,mediumpurple:9662683,mediumseagreen:3978097,mediumslateblue:8087790,mediumspringgreen:64154,mediumturquoise:4772300,mediumvioletred:13047173,midnightblue:1644912,mintcream:16121850,mistyrose:16770273,moccasin:16770229,navajowhite:16768685,navy:128,oldlace:16643558,olive:8421376,olivedrab:7048739,orange:16753920,orangered:16729344,orchid:14315734,palegoldenrod:15657130,palegreen:10025880,paleturquoise:11529966,palevioletred:14381203,papayawhip:16773077,peachpuff:16767673,peru:13468991,pink:16761035,plum:14524637,powderblue:11591910,purple:8388736,rebeccapurple:6697881,red:16711680,rosybrown:12357519,royalblue:4286945,saddlebrown:9127187,salmon:16416882,sandybrown:16032864,seagreen:3050327,seashell:16774638,sienna:10506797,silver:12632256,skyblue:8900331,slateblue:6970061,slategray:7372944,slategrey:7372944,snow:16775930,springgreen:65407,steelblue:4620980,tan:13808780,teal:32896,thistle:14204888,tomato:16737095,turquoise:4251856,violet:15631086,wheat:16113331,white:16777215,whitesmoke:16119285,yellow:16776960,yellowgreen:10145074};Xy(hu,bo,{copy(e){return Object.assign(new this.constructor,this,e)},displayable(){return this.rgb().displayable()},hex:nb,formatHex:nb,formatHex8:oj,formatHsl:lj,formatRgb:ib,toString:ib});function nb(){return this.rgb().formatHex()}function oj(){return this.rgb().formatHex8()}function lj(){return xO(this).formatHsl()}function ib(){return this.rgb().formatRgb()}function bo(e){var t,n;return e=(e+"").trim().toLowerCase(),(t=JN.exec(e))?(n=t[1].length,t=parseInt(t[1],16),n===6?sb(t):n===3?new On(t>>8&15|t>>4&240,t>>4&15|t&240,(t&15)<<4|t&15,1):n===8?Zh(t>>24&255,t>>16&255,t>>8&255,(t&255)/255):n===4?Zh(t>>12&15|t>>8&240,t>>8&15|t>>4&240,t>>4&15|t&240,((t&15)<<4|t&15)/255):null):(t=tj.exec(e))?new On(t[1],t[2],t[3],1):(t=ej.exec(e))?new On(t[1]*255/100,t[2]*255/100,t[3]*255/100,1):(t=nj.exec(e))?Zh(t[1],t[2],t[3],t[4]):(t=ij.exec(e))?Zh(t[1]*255/100,t[2]*255/100,t[3]*255/100,t[4]):(t=sj.exec(e))?lb(t[1],t[2]/100,t[3]/100,1):(t=rj.exec(e))?lb(t[1],t[2]/100,t[3]/100,t[4]):eb.hasOwnProperty(e)?sb(eb[e]):e==="transparent"?new On(NaN,NaN,NaN,0):null}function sb(e){return new On(e>>16&255,e>>8&255,e&255,1)}function Zh(e,t,n,i){return i<=0&&(e=t=n=NaN),new On(e,t,n,i)}function aj(e){return e instanceof hu||(e=bo(e)),e?(e=e.rgb(),new On(e.r,e.g,e.b,e.opacity)):new On}function Y0(e,t,n,i){return arguments.length===1?aj(e):new On(e,t,n,i??1)}function On(e,t,n,i){this.r=+e,this.g=+t,this.b=+n,this.opacity=+i}Xy(On,Y0,$O(hu,{brighter(e){return e=e==null?qf:Math.pow(qf,e),new On(this.r*e,this.g*e,this.b*e,this.opacity)},darker(e){return e=e==null?Bc:Math.pow(Bc,e),new On(this.r*e,this.g*e,this.b*e,this.opacity)},rgb(){return this},clamp(){return new On(go(this.r),go(this.g),go(this.b),Wf(this.opacity))},displayable(){return-.5<=this.r&&this.r<255.5&&-.5<=this.g&&this.g<255.5&&-.5<=this.b&&this.b<255.5&&0<=this.opacity&&this.opacity<=1},hex:rb,formatHex:rb,formatHex8:cj,formatRgb:ob,toString:ob}));function rb(){return`#${uo(this.r)}${uo(this.g)}${uo(this.b)}`}function cj(){return`#${uo(this.r)}${uo(this.g)}${uo(this.b)}${uo((isNaN(this.opacity)?1:this.opacity)*255)}`}function ob(){const e=Wf(this.opacity);return`${e===1?"rgb(":"rgba("}${go(this.r)}, ${go(this.g)}, ${go(this.b)}${e===1?")":`, ${e})`}`}function Wf(e){return isNaN(e)?1:Math.max(0,Math.min(1,e))}function go(e){return Math.max(0,Math.min(255,Math.round(e)||0))}function uo(e){return e=go(e),(e<16?"0":"")+e.toString(16)}function lb(e,t,n,i){return i<=0?e=t=n=NaN:n<=0||n>=1?e=t=NaN:t<=0&&(e=NaN),new mi(e,t,n,i)}function xO(e){if(e instanceof mi)return new mi(e.h,e.s,e.l,e.opacity);if(e instanceof hu||(e=bo(e)),!e)return new mi;if(e instanceof mi)return e;e=e.rgb();var t=e.r/255,n=e.g/255,i=e.b/255,s=Math.min(t,n,i),r=Math.max(t,n,i),l=NaN,c=r-s,u=(r+s)/2;return c?(t===r?l=(n-i)/c+(n<i)*6:n===r?l=(i-t)/c+2:l=(t-n)/c+4,c/=u<.5?r+s:2-r-s,l*=60):c=u>0&&u<1?0:l,new mi(l,c,u,e.opacity)}function uj(e,t,n,i){return arguments.length===1?xO(e):new mi(e,t,n,i??1)}function mi(e,t,n,i){this.h=+e,this.s=+t,this.l=+n,this.opacity=+i}Xy(mi,uj,$O(hu,{brighter(e){return e=e==null?qf:Math.pow(qf,e),new mi(this.h,this.s,this.l*e,this.opacity)},darker(e){return e=e==null?Bc:Math.pow(Bc,e),new mi(this.h,this.s,this.l*e,this.opacity)},rgb(){var e=this.h%360+(this.h<0)*360,t=isNaN(e)||isNaN(this.s)?0:this.s,n=this.l,i=n+(n<.5?n:1-n)*t,s=2*n-i;return new On(Hg(e>=240?e-240:e+120,s,i),Hg(e,s,i),Hg(e<120?e+240:e-120,s,i),this.opacity)},clamp(){return new mi(ab(this.h),Uh(this.s),Uh(this.l),Wf(this.opacity))},displayable(){return(0<=this.s&&this.s<=1||isNaN(this.s))&&0<=this.l&&this.l<=1&&0<=this.opacity&&this.opacity<=1},formatHsl(){const e=Wf(this.opacity);return`${e===1?"hsl(":"hsla("}${ab(this.h)}, ${Uh(this.s)*100}%, ${Uh(this.l)*100}%${e===1?")":`, ${e})`}`}}));function ab(e){return e=(e||0)%360,e<0?e+360:e}function Uh(e){return Math.max(0,Math.min(1,e||0))}function Hg(e,t,n){return(e<60?t+(n-t)*e/60:e<180?n:e<240?t+(n-t)*(240-e)/60:t)*255}const zd=e=>()=>e;function bO(e,t){return function(n){return e+n*t}}function hj(e,t,n){return e=Math.pow(e,n),t=Math.pow(t,n)-e,n=1/n,function(i){return Math.pow(e+i*t,n)}}function bU(e,t){var n=t-e;return n?bO(e,n>180||n<-180?n-360*Math.round(n/360):n):zd(isNaN(e)?t:e)}function fj(e){return(e=+e)==1?vO:function(t,n){return n-t?hj(t,n,e):zd(isNaN(t)?n:t)}}function vO(e,t){var n=t-e;return n?bO(e,n):zd(isNaN(e)?t:e)}const Zf=(function e(t){var n=fj(t);function i(s,r){var l=n((s=Y0(s)).r,(r=Y0(r)).r),c=n(s.g,r.g),u=n(s.b,r.b),f=vO(s.opacity,r.opacity);return function(p){return s.r=l(p),s.g=c(p),s.b=u(p),s.opacity=f(p),s+""}}return i.gamma=e,i})(1);function dj(e,t){t||(t=[]);var n=e?Math.min(t.length,e.length):0,i=t.slice(),s;return function(r){for(s=0;s<n;++s)i[s]=e[s]*(1-r)+t[s]*r;return i}}function pj(e){return ArrayBuffer.isView(e)&&!(e instanceof DataView)}function mj(e,t){var n=t?t.length:0,i=e?Math.min(n,e.length):0,s=new Array(i),r=new Array(n),l;for(l=0;l<i;++l)s[l]=Tc(e[l],t[l]);for(;l<n;++l)r[l]=t[l];return function(c){for(l=0;l<i;++l)r[l]=s[l](c);return r}}function gj(e,t){var n=new Date;return e=+e,t=+t,function(i){return n.setTime(e*(1-i)+t*i),n}}function zi(e,t){return e=+e,t=+t,function(n){return e*(1-n)+t*n}}function yj(e,t){var n={},i={},s;(e===null||typeof e!="object")&&(e={}),(t===null||typeof t!="object")&&(t={});for(s in t)s in e?n[s]=Tc(e[s],t[s]):i[s]=t[s];return function(r){for(s in n)i[s]=n[s](r);return i}}var G0=/[-+]?(?:\d+\.?\d*|\.?\d+)(?:[eE][-+]?\d+)?/g,zg=new RegExp(G0.source,"g");function wj(e){return function(){return e}}function $j(e){return function(t){return e(t)+""}}function SO(e,t){var n=G0.lastIndex=zg.lastIndex=0,i,s,r,l=-1,c=[],u=[];for(e=e+"",t=t+"";(i=G0.exec(e))&&(s=zg.exec(t));)(r=s.index)>n&&(r=t.slice(n,r),c[l]?c[l]+=r:c[++l]=r),(i=i[0])===(s=s[0])?c[l]?c[l]+=s:c[++l]=s:(c[++l]=null,u.push({i:l,x:zi(i,s)})),n=zg.lastIndex;return n<t.length&&(r=t.slice(n),c[l]?c[l]+=r:c[++l]=r),c.length<2?u[0]?$j(u[0].x):wj(t):(t=u.length,function(f){for(var p=0,m;p<t;++p)c[(m=u[p]).i]=m.x(f);return c.join("")})}function Tc(e,t){var n=typeof t,i;return t==null||n==="boolean"?zd(t):(n==="number"?zi:n==="string"?(i=bo(t))?(t=i,Zf):SO:t instanceof bo?Zf:t instanceof Date?gj:pj(t)?dj:Array.isArray(t)?mj:typeof t.valueOf!="function"&&typeof t.toString!="function"||isNaN(t)?yj:zi)(e,t)}var cb=180/Math.PI,L0={translateX:0,translateY:0,rotate:0,skewX:0,scaleX:1,scaleY:1};function OO(e,t,n,i,s,r){var l,c,u;return(l=Math.sqrt(e*e+t*t))&&(e/=l,t/=l),(u=e*n+t*i)&&(n-=e*u,i-=t*u),(c=Math.sqrt(n*n+i*i))&&(n/=c,i/=c,u/=c),e*i<t*n&&(e=-e,t=-t,u=-u,l=-l),{translateX:s,translateY:r,rotate:Math.atan2(t,e)*cb,skewX:Math.atan(u)*cb,scaleX:l,scaleY:c}}var Ih;function xj(e){const t=new(typeof DOMMatrix=="function"?DOMMatrix:WebKitCSSMatrix)(e+"");return t.isIdentity?L0:OO(t.a,t.b,t.c,t.d,t.e,t.f)}function bj(e){return e==null||(Ih||(Ih=document.createElementNS("http://www.w3.org/2000/svg","g")),Ih.setAttribute("transform",e),!(e=Ih.transform.baseVal.consolidate()))?L0:(e=e.matrix,OO(e.a,e.b,e.c,e.d,e.e,e.f))}function kO(e,t,n,i){function s(f){return f.length?f.pop()+" ":""}function r(f,p,m,g,y,$){if(f!==m||p!==g){var b=y.push("translate(",null,t,null,n);$.push({i:b-4,x:zi(f,m)},{i:b-2,x:zi(p,g)})}else(m||g)&&y.push("translate("+m+t+g+n)}function l(f,p,m,g){f!==p?(f-p>180?p+=360:p-f>180&&(f+=360),g.push({i:m.push(s(m)+"rotate(",null,i)-2,x:zi(f,p)})):p&&m.push(s(m)+"rotate("+p+i)}function c(f,p,m,g){f!==p?g.push({i:m.push(s(m)+"skewX(",null,i)-2,x:zi(f,p)}):p&&m.push(s(m)+"skewX("+p+i)}function u(f,p,m,g,y,$){if(f!==m||p!==g){var b=y.push(s(y)+"scale(",null,",",null,")");$.push({i:b-4,x:zi(f,m)},{i:b-2,x:zi(p,g)})}else(m!==1||g!==1)&&y.push(s(y)+"scale("+m+","+g+")")}return function(f,p){var m=[],g=[];return f=e(f),p=e(p),r(f.translateX,f.translateY,p.translateX,p.translateY,m,g),l(f.rotate,p.rotate,m,g),c(f.skewX,p.skewX,m,g),u(f.scaleX,f.scaleY,p.scaleX,p.scaleY,m,g),f=p=null,function(y){for(var $=-1,b=g.length,S;++$<b;)m[(S=g[$]).i]=S.x(y);return m.join("")}}}var vj=kO(xj,"px, ","px)","deg)"),Sj=kO(bj,", ",")",")"),Oj=1e-12;function ub(e){return((e=Math.exp(e))+1/e)/2}function kj(e){return((e=Math.exp(e))-1/e)/2}function Cj(e){return((e=Math.exp(2*e))-1)/(e+1)}const Df=(function e(t,n,i){function s(r,l){var c=r[0],u=r[1],f=r[2],p=l[0],m=l[1],g=l[2],y=p-c,$=m-u,b=y*y+$*$,S,O;if(b<Oj)O=Math.log(g/f)/t,S=function(H){return[c+H*y,u+H*$,f*Math.exp(t*H*O)]};else{var E=Math.sqrt(b),k=(g*g-f*f+i*b)/(2*f*n*E),D=(g*g-f*f-i*b)/(2*g*n*E),_=Math.log(Math.sqrt(k*k+1)-k),A=Math.log(Math.sqrt(D*D+1)-D);O=(A-_)/t,S=function(H){var Y=H*O,W=ub(_),nt=f/(n*E)*(W*Cj(t*Y+_)-kj(_));return[c+nt*y,u+nt*$,f*W/ub(t*Y+_)]}}return S.duration=O*1e3*t/Math.SQRT2,S}return s.rho=function(r){var l=Math.max(.001,+r),c=l*l,u=c*c;return e(l,c,u)},s})(Math.SQRT2,2,4);var Fl=0,Sc=0,pc=0,CO=1e3,Uf,Oc,If=0,vo=0,Bd=0,Gc=typeof performance=="object"&&performance.now?performance:Date,EO=typeof window=="object"&&window.requestAnimationFrame?window.requestAnimationFrame.bind(window):function(e){setTimeout(e,17)};function Ky(){return vo||(EO(Ej),vo=Gc.now()+Bd)}function Ej(){vo=0}function Ff(){this._call=this._time=this._next=null}Ff.prototype=DO.prototype={constructor:Ff,restart:function(e,t,n){if(typeof e!="function")throw new TypeError("callback is not a function");n=(n==null?Ky():+n)+(t==null?0:+t),!this._next&&Oc!==this&&(Oc?Oc._next=this:Uf=this,Oc=this),this._call=e,this._time=n,Q0()},stop:function(){this._call&&(this._call=null,this._time=1/0,Q0())}};function DO(e,t,n){var i=new Ff;return i.restart(e,t,n),i}function Dj(){Ky(),++Fl;for(var e=Uf,t;e;)(t=vo-e._time)>=0&&e._call.call(void 0,t),e=e._next;--Fl}function hb(){vo=(If=Gc.now())+Bd,Fl=Sc=0;try{Dj()}finally{Fl=0,Nj(),vo=0}}function Tj(){var e=Gc.now(),t=e-If;t>CO&&(Bd-=t,If=e)}function Nj(){for(var e,t=Uf,n,i=1/0;t;)t._call?(i>t._time&&(i=t._time),e=t,t=t._next):(n=t._next,t._next=null,t=e?e._next=n:Uf=n);Oc=e,Q0(i)}function Q0(e){if(!Fl){Sc&&(Sc=clearTimeout(Sc));var t=e-vo;t>24?(e<1/0&&(Sc=setTimeout(hb,e-Gc.now()-Bd)),pc&&(pc=clearInterval(pc))):(pc||(If=Gc.now(),pc=setInterval(Tj,CO)),Fl=1,EO(hb))}}function fb(e,t,n){var i=new Ff;return t=t==null?0:+t,i.restart(s=>{i.stop(),e(s+t)},t,n),i}var jj=Ad("start","end","cancel","interrupt"),Rj=[],TO=0,db=1,P0=2,Tf=3,pb=4,q0=5,Nf=6;function Yd(e,t,n,i,s,r){var l=e.__transition;if(!l)e.__transition={};else if(n in l)return;_j(e,n,{name:t,index:i,group:s,on:jj,tween:Rj,time:r.time,delay:r.delay,duration:r.duration,ease:r.ease,timer:null,state:TO})}function Jy(e,t){var n=Oi(e,t);if(n.state>TO)throw new Error("too late; already scheduled");return n}function Fi(e,t){var n=Oi(e,t);if(n.state>Tf)throw new Error("too late; already running");return n}function Oi(e,t){var n=e.__transition;if(!n||!(n=n[t]))throw new Error("transition not found");return n}function _j(e,t,n){var i=e.__transition,s;i[t]=n,n.timer=DO(r,0,n.time);function r(f){n.state=db,n.timer.restart(l,n.delay,n.time),n.delay<=f&&l(f-n.delay)}function l(f){var p,m,g,y;if(n.state!==db)return u();for(p in i)if(y=i[p],y.name===n.name){if(y.state===Tf)return fb(l);y.state===pb?(y.state=Nf,y.timer.stop(),y.on.call("interrupt",e,e.__data__,y.index,y.group),delete i[p]):+p<t&&(y.state=Nf,y.timer.stop(),y.on.call("cancel",e,e.__data__,y.index,y.group),delete i[p])}if(fb(function(){n.state===Tf&&(n.state=pb,n.timer.restart(c,n.delay,n.time),c(f))}),n.state=P0,n.on.call("start",e,e.__data__,n.index,n.group),n.state===P0){for(n.state=Tf,s=new Array(g=n.tween.length),p=0,m=-1;p<g;++p)(y=n.tween[p].value.call(e,e.__data__,n.index,n.group))&&(s[++m]=y);s.length=m+1}}function c(f){for(var p=f<n.duration?n.ease.call(null,f/n.duration):(n.timer.restart(u),n.state=q0,1),m=-1,g=s.length;++m<g;)s[m].call(e,p);n.state===q0&&(n.on.call("end",e,e.__data__,n.index,n.group),u())}function u(){n.state=Nf,n.timer.stop(),delete i[t];for(var f in i)return;delete e.__transition}}function jf(e,t){var n=e.__transition,i,s,r=!0,l;if(n){t=t==null?null:t+"";for(l in n){if((i=n[l]).name!==t){r=!1;continue}s=i.state>P0&&i.state<q0,i.state=Nf,i.timer.stop(),i.on.call(s?"interrupt":"cancel",e,e.__data__,i.index,i.group),delete n[l]}r&&delete e.__transition}}function Mj(e){return this.each(function(){jf(this,e)})}function Aj(e,t){var n,i;return function(){var s=Fi(this,e),r=s.tween;if(r!==n){i=n=r;for(var l=0,c=i.length;l<c;++l)if(i[l].name===t){i=i.slice(),i.splice(l,1);break}}s.tween=i}}function Hj(e,t,n){var i,s;if(typeof n!="function")throw new Error;return function(){var r=Fi(this,e),l=r.tween;if(l!==i){s=(i=l).slice();for(var c={name:t,value:n},u=0,f=s.length;u<f;++u)if(s[u].name===t){s[u]=c;break}u===f&&s.push(c)}r.tween=s}}function zj(e,t){var n=this._id;if(e+="",arguments.length<2){for(var i=Oi(this.node(),n).tween,s=0,r=i.length,l;s<r;++s)if((l=i[s]).name===e)return l.value;return null}return this.each((t==null?Aj:Hj)(n,e,t))}function tw(e,t,n){var i=e._id;return e.each(function(){var s=Fi(this,i);(s.value||(s.value={}))[t]=n.apply(this,arguments)}),function(s){return Oi(s,i).value[t]}}function NO(e,t){var n;return(typeof t=="number"?zi:t instanceof bo?Zf:(n=bo(t))?(t=n,Zf):SO)(e,t)}function Bj(e){return function(){this.removeAttribute(e)}}function Yj(e){return function(){this.removeAttributeNS(e.space,e.local)}}function Gj(e,t,n){var i,s=n+"",r;return function(){var l=this.getAttribute(e);return l===s?null:l===i?r:r=t(i=l,n)}}function Lj(e,t,n){var i,s=n+"",r;return function(){var l=this.getAttributeNS(e.space,e.local);return l===s?null:l===i?r:r=t(i=l,n)}}function Qj(e,t,n){var i,s,r;return function(){var l,c=n(this),u;return c==null?void this.removeAttribute(e):(l=this.getAttribute(e),u=c+"",l===u?null:l===i&&u===s?r:(s=u,r=t(i=l,c)))}}function Pj(e,t,n){var i,s,r;return function(){var l,c=n(this),u;return c==null?void this.removeAttributeNS(e.space,e.local):(l=this.getAttributeNS(e.space,e.local),u=c+"",l===u?null:l===i&&u===s?r:(s=u,r=t(i=l,c)))}}function qj(e,t){var n=Hd(e),i=n==="transform"?Sj:NO;return this.attrTween(e,typeof t=="function"?(n.local?Pj:Qj)(n,i,tw(this,"attr."+e,t)):t==null?(n.local?Yj:Bj)(n):(n.local?Lj:Gj)(n,i,t))}function Wj(e,t){return function(n){this.setAttribute(e,t.call(this,n))}}function Zj(e,t){return function(n){this.setAttributeNS(e.space,e.local,t.call(this,n))}}function Uj(e,t){var n,i;function s(){var r=t.apply(this,arguments);return r!==i&&(n=(i=r)&&Zj(e,r)),n}return s._value=t,s}function Ij(e,t){var n,i;function s(){var r=t.apply(this,arguments);return r!==i&&(n=(i=r)&&Wj(e,r)),n}return s._value=t,s}function Fj(e,t){var n="attr."+e;if(arguments.length<2)return(n=this.tween(n))&&n._value;if(t==null)return this.tween(n,null);if(typeof t!="function")throw new Error;var i=Hd(e);return this.tween(n,(i.local?Uj:Ij)(i,t))}function Vj(e,t){return function(){Jy(this,e).delay=+t.apply(this,arguments)}}function Xj(e,t){return t=+t,function(){Jy(this,e).delay=t}}function Kj(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?Vj:Xj)(t,e)):Oi(this.node(),t).delay}function Jj(e,t){return function(){Fi(this,e).duration=+t.apply(this,arguments)}}function tR(e,t){return t=+t,function(){Fi(this,e).duration=t}}function eR(e){var t=this._id;return arguments.length?this.each((typeof e=="function"?Jj:tR)(t,e)):Oi(this.node(),t).duration}function nR(e,t){if(typeof t!="function")throw new Error;return function(){Fi(this,e).ease=t}}function iR(e){var t=this._id;return arguments.length?this.each(nR(t,e)):Oi(this.node(),t).ease}function sR(e,t){return function(){var n=t.apply(this,arguments);if(typeof n!="function")throw new Error;Fi(this,e).ease=n}}function rR(e){if(typeof e!="function")throw new Error;return this.each(sR(this._id,e))}function oR(e){typeof e!="function"&&(e=oO(e));for(var t=this._groups,n=t.length,i=new Array(n),s=0;s<n;++s)for(var r=t[s],l=r.length,c=i[s]=[],u,f=0;f<l;++f)(u=r[f])&&e.call(u,u.__data__,f,r)&&c.push(u);return new Ds(i,this._parents,this._name,this._id)}function lR(e){if(e._id!==this._id)throw new Error;for(var t=this._groups,n=e._groups,i=t.length,s=n.length,r=Math.min(i,s),l=new Array(i),c=0;c<r;++c)for(var u=t[c],f=n[c],p=u.length,m=l[c]=new Array(p),g,y=0;y<p;++y)(g=u[y]||f[y])&&(m[y]=g);for(;c<i;++c)l[c]=t[c];return new Ds(l,this._parents,this._name,this._id)}function aR(e){return(e+"").trim().split(/^|\s+/).every(function(t){var n=t.indexOf(".");return n>=0&&(t=t.slice(0,n)),!t||t==="start"})}function cR(e,t,n){var i,s,r=aR(t)?Jy:Fi;return function(){var l=r(this,e),c=l.on;c!==i&&(s=(i=c).copy()).on(t,n),l.on=s}}function uR(e,t){var n=this._id;return arguments.length<2?Oi(this.node(),n).on.on(e):this.each(cR(n,e,t))}function hR(e){return function(){var t=this.parentNode;for(var n in this.__transition)if(+n!==e)return;t&&t.removeChild(this)}}function fR(){return this.on("end.remove",hR(this._id))}function dR(e){var t=this._name,n=this._id;typeof e!="function"&&(e=Fy(e));for(var i=this._groups,s=i.length,r=new Array(s),l=0;l<s;++l)for(var c=i[l],u=c.length,f=r[l]=new Array(u),p,m,g=0;g<u;++g)(p=c[g])&&(m=e.call(p,p.__data__,g,c))&&("__data__"in p&&(m.__data__=p.__data__),f[g]=m,Yd(f[g],t,n,g,f,Oi(p,n)));return new Ds(r,this._parents,t,n)}function pR(e){var t=this._name,n=this._id;typeof e!="function"&&(e=rO(e));for(var i=this._groups,s=i.length,r=[],l=[],c=0;c<s;++c)for(var u=i[c],f=u.length,p,m=0;m<f;++m)if(p=u[m]){for(var g=e.call(p,p.__data__,m,u),y,$=Oi(p,n),b=0,S=g.length;b<S;++b)(y=g[b])&&Yd(y,t,n,b,g,$);r.push(g),l.push(p)}return new Ds(r,l,t,n)}var mR=uu.prototype.constructor;function gR(){return new mR(this._groups,this._parents)}function yR(e,t){var n,i,s;return function(){var r=Il(this,e),l=(this.style.removeProperty(e),Il(this,e));return r===l?null:r===n&&l===i?s:s=t(n=r,i=l)}}function jO(e){return function(){this.style.removeProperty(e)}}function wR(e,t,n){var i,s=n+"",r;return function(){var l=Il(this,e);return l===s?null:l===i?r:r=t(i=l,n)}}function $R(e,t,n){var i,s,r;return function(){var l=Il(this,e),c=n(this),u=c+"";return c==null&&(u=c=(this.style.removeProperty(e),Il(this,e))),l===u?null:l===i&&u===s?r:(s=u,r=t(i=l,c))}}function xR(e,t){var n,i,s,r="style."+t,l="end."+r,c;return function(){var u=Fi(this,e),f=u.on,p=u.value[r]==null?c||(c=jO(t)):void 0;(f!==n||s!==p)&&(i=(n=f).copy()).on(l,s=p),u.on=i}}function bR(e,t,n){var i=(e+="")=="transform"?vj:NO;return t==null?this.styleTween(e,yR(e,i)).on("end.style."+e,jO(e)):typeof t=="function"?this.styleTween(e,$R(e,i,tw(this,"style."+e,t))).each(xR(this._id,e)):this.styleTween(e,wR(e,i,t),n).on("end.style."+e,null)}function vR(e,t,n){return function(i){this.style.setProperty(e,t.call(this,i),n)}}function SR(e,t,n){var i,s;function r(){var l=t.apply(this,arguments);return l!==s&&(i=(s=l)&&vR(e,l,n)),i}return r._value=t,r}function OR(e,t,n){var i="style."+(e+="");if(arguments.length<2)return(i=this.tween(i))&&i._value;if(t==null)return this.tween(i,null);if(typeof t!="function")throw new Error;return this.tween(i,SR(e,t,n??""))}function kR(e){return function(){this.textContent=e}}function CR(e){return function(){var t=e(this);this.textContent=t??""}}function ER(e){return this.tween("text",typeof e=="function"?CR(tw(this,"text",e)):kR(e==null?"":e+""))}function DR(e){return function(t){this.textContent=e.call(this,t)}}function TR(e){var t,n;function i(){var s=e.apply(this,arguments);return s!==n&&(t=(n=s)&&DR(s)),t}return i._value=e,i}function NR(e){var t="text";if(arguments.length<1)return(t=this.tween(t))&&t._value;if(e==null)return this.tween(t,null);if(typeof e!="function")throw new Error;return this.tween(t,TR(e))}function jR(){for(var e=this._name,t=this._id,n=RO(),i=this._groups,s=i.length,r=0;r<s;++r)for(var l=i[r],c=l.length,u,f=0;f<c;++f)if(u=l[f]){var p=Oi(u,t);Yd(u,e,n,f,l,{time:p.time+p.delay+p.duration,delay:0,duration:p.duration,ease:p.ease})}return new Ds(i,this._parents,e,n)}function RR(){var e,t,n=this,i=n._id,s=n.size();return new Promise(function(r,l){var c={value:l},u={value:function(){--s===0&&r()}};n.each(function(){var f=Fi(this,i),p=f.on;p!==e&&(t=(e=p).copy(),t._.cancel.push(c),t._.interrupt.push(c),t._.end.push(u)),f.on=t}),s===0&&r()})}var _R=0;function Ds(e,t,n,i){this._groups=e,this._parents=t,this._name=n,this._id=i}function RO(){return++_R}var xs=uu.prototype;Ds.prototype={constructor:Ds,select:dR,selectAll:pR,selectChild:xs.selectChild,selectChildren:xs.selectChildren,filter:oR,merge:lR,selection:gR,transition:jR,call:xs.call,nodes:xs.nodes,node:xs.node,size:xs.size,empty:xs.empty,each:xs.each,on:uR,attr:qj,attrTween:Fj,style:bR,styleTween:OR,text:ER,textTween:NR,remove:fR,tween:zj,delay:Kj,duration:eR,ease:iR,easeVarying:rR,end:RR,[Symbol.iterator]:xs[Symbol.iterator]};function MR(e){return((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2}var AR={time:null,delay:0,duration:250,ease:MR};function HR(e,t){for(var n;!(n=e.__transition)||!(n=n[t]);)if(!(e=e.parentNode))throw new Error(`transition ${t} not found`);return n}function zR(e){var t,n;e instanceof Ds?(t=e._id,e=e._name):(t=RO(),(n=AR).time=Ky(),e=e==null?null:e+"");for(var i=this._groups,s=i.length,r=0;r<s;++r)for(var l=i[r],c=l.length,u,f=0;f<c;++f)(u=l[f])&&Yd(u,e,t,f,l,n||HR(u,t));return new Ds(i,this._parents,e,t)}uu.prototype.interrupt=Mj;uu.prototype.transition=zR;const Fh=e=>()=>e;function BR(e,{sourceEvent:t,target:n,transform:i,dispatch:s}){Object.defineProperties(this,{type:{value:e,enumerable:!0,configurable:!0},sourceEvent:{value:t,enumerable:!0,configurable:!0},target:{value:n,enumerable:!0,configurable:!0},transform:{value:i,enumerable:!0,configurable:!0},_:{value:s}})}function ks(e,t,n){this.k=e,this.x=t,this.y=n}ks.prototype={constructor:ks,scale:function(e){return e===1?this:new ks(this.k*e,this.x,this.y)},translate:function(e,t){return e===0&t===0?this:new ks(this.k,this.x+this.k*e,this.y+this.k*t)},apply:function(e){return[e[0]*this.k+this.x,e[1]*this.k+this.y]},applyX:function(e){return e*this.k+this.x},applyY:function(e){return e*this.k+this.y},invert:function(e){return[(e[0]-this.x)/this.k,(e[1]-this.y)/this.k]},invertX:function(e){return(e-this.x)/this.k},invertY:function(e){return(e-this.y)/this.k},rescaleX:function(e){return e.copy().domain(e.range().map(this.invertX,this).map(e.invert,e))},rescaleY:function(e){return e.copy().domain(e.range().map(this.invertY,this).map(e.invert,e))},toString:function(){return"translate("+this.x+","+this.y+") scale("+this.k+")"}};var Gd=new ks(1,0,0);_O.prototype=ks.prototype;function _O(e){for(;!e.__zoom;)if(!(e=e.parentNode))return Gd;return e.__zoom}function Bg(e){e.stopImmediatePropagation()}function mc(e){e.preventDefault(),e.stopImmediatePropagation()}function YR(e){return(!e.ctrlKey||e.type==="wheel")&&!e.button}function GR(){var e=this;return e instanceof SVGElement?(e=e.ownerSVGElement||e,e.hasAttribute("viewBox")?(e=e.viewBox.baseVal,[[e.x,e.y],[e.x+e.width,e.y+e.height]]):[[0,0],[e.width.baseVal.value,e.height.baseVal.value]]):[[0,0],[e.clientWidth,e.clientHeight]]}function mb(){return this.__zoom||Gd}function LR(e){return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*(e.ctrlKey?10:1)}function QR(){return navigator.maxTouchPoints||"ontouchstart"in this}function PR(e,t,n){var i=e.invertX(t[0][0])-n[0][0],s=e.invertX(t[1][0])-n[1][0],r=e.invertY(t[0][1])-n[0][1],l=e.invertY(t[1][1])-n[1][1];return e.translate(s>i?(i+s)/2:Math.min(0,i)||Math.max(0,s),l>r?(r+l)/2:Math.min(0,r)||Math.max(0,l))}function MO(){var e=YR,t=GR,n=PR,i=LR,s=QR,r=[0,1/0],l=[[-1/0,-1/0],[1/0,1/0]],c=250,u=Df,f=Ad("start","zoom","end"),p,m,g,y=500,$=150,b=0,S=10;function O(M){M.property("__zoom",mb).on("wheel.zoom",Y,{passive:!1}).on("mousedown.zoom",W).on("dblclick.zoom",nt).filter(s).on("touchstart.zoom",U).on("touchmove.zoom",P).on("touchend.zoom touchcancel.zoom",F).style("-webkit-tap-highlight-color","rgba(0,0,0,0)")}O.transform=function(M,G,T,z){var Z=M.selection?M.selection():M;Z.property("__zoom",mb),M!==Z?_(M,G,T,z):Z.interrupt().each(function(){A(this,arguments).event(z).start().zoom(null,typeof G=="function"?G.apply(this,arguments):G).end()})},O.scaleBy=function(M,G,T,z){O.scaleTo(M,function(){var Z=this.__zoom.k,Q=typeof G=="function"?G.apply(this,arguments):G;return Z*Q},T,z)},O.scaleTo=function(M,G,T,z){O.transform(M,function(){var Z=t.apply(this,arguments),Q=this.__zoom,et=T==null?D(Z):typeof T=="function"?T.apply(this,arguments):T,j=Q.invert(et),R=typeof G=="function"?G.apply(this,arguments):G;return n(k(E(Q,R),et,j),Z,l)},T,z)},O.translateBy=function(M,G,T,z){O.transform(M,function(){return n(this.__zoom.translate(typeof G=="function"?G.apply(this,arguments):G,typeof T=="function"?T.apply(this,arguments):T),t.apply(this,arguments),l)},null,z)},O.translateTo=function(M,G,T,z,Z){O.transform(M,function(){var Q=t.apply(this,arguments),et=this.__zoom,j=z==null?D(Q):typeof z=="function"?z.apply(this,arguments):z;return n(Gd.translate(j[0],j[1]).scale(et.k).translate(typeof G=="function"?-G.apply(this,arguments):-G,typeof T=="function"?-T.apply(this,arguments):-T),Q,l)},z,Z)};function E(M,G){return G=Math.max(r[0],Math.min(r[1],G)),G===M.k?M:new ks(G,M.x,M.y)}function k(M,G,T){var z=G[0]-T[0]*M.k,Z=G[1]-T[1]*M.k;return z===M.x&&Z===M.y?M:new ks(M.k,z,Z)}function D(M){return[(+M[0][0]+ +M[1][0])/2,(+M[0][1]+ +M[1][1])/2]}function _(M,G,T,z){M.on("start.zoom",function(){A(this,arguments).event(z).start()}).on("interrupt.zoom end.zoom",function(){A(this,arguments).event(z).end()}).tween("zoom",function(){var Z=this,Q=arguments,et=A(Z,Q).event(z),j=t.apply(Z,Q),R=T==null?D(j):typeof T=="function"?T.apply(Z,Q):T,J=Math.max(j[1][0]-j[0][0],j[1][1]-j[0][1]),st=Z.__zoom,ut=typeof G=="function"?G.apply(Z,Q):G,ft=u(st.invert(R).concat(J/st.k),ut.invert(R).concat(J/ut.k));return function(dt){if(dt===1)dt=ut;else{var rt=ft(dt),ht=J/rt[2];dt=new ks(ht,R[0]-rt[0]*ht,R[1]-rt[1]*ht)}et.zoom(null,dt)}})}function A(M,G,T){return!T&&M.__zooming||new H(M,G)}function H(M,G){this.that=M,this.args=G,this.active=0,this.sourceEvent=null,this.extent=t.apply(M,G),this.taps=0}H.prototype={event:function(M){return M&&(this.sourceEvent=M),this},start:function(){return++this.active===1&&(this.that.__zooming=this,this.emit("start")),this},zoom:function(M,G){return this.mouse&&M!=="mouse"&&(this.mouse[1]=G.invert(this.mouse[0])),this.touch0&&M!=="touch"&&(this.touch0[1]=G.invert(this.touch0[0])),this.touch1&&M!=="touch"&&(this.touch1[1]=G.invert(this.touch1[0])),this.that.__zoom=G,this.emit("zoom"),this},end:function(){return--this.active===0&&(delete this.that.__zooming,this.emit("end")),this},emit:function(M){var G=Pn(this.that).datum();f.call(M,this.that,new BR(M,{sourceEvent:this.sourceEvent,target:O,transform:this.that.__zoom,dispatch:f}),G)}};function Y(M,...G){if(!e.apply(this,arguments))return;var T=A(this,G).event(M),z=this.__zoom,Z=Math.max(r[0],Math.min(r[1],z.k*Math.pow(2,i.apply(this,arguments)))),Q=pi(M);if(T.wheel)(T.mouse[0][0]!==Q[0]||T.mouse[0][1]!==Q[1])&&(T.mouse[1]=z.invert(T.mouse[0]=Q)),clearTimeout(T.wheel);else{if(z.k===Z)return;T.mouse=[Q,z.invert(Q)],jf(this),T.start()}mc(M),T.wheel=setTimeout(et,$),T.zoom("mouse",n(k(E(z,Z),T.mouse[0],T.mouse[1]),T.extent,l));function et(){T.wheel=null,T.end()}}function W(M,...G){if(g||!e.apply(this,arguments))return;var T=M.currentTarget,z=A(this,G,!0).event(M),Z=Pn(M.view).on("mousemove.zoom",R,!0).on("mouseup.zoom",J,!0),Q=pi(M,T),et=M.clientX,j=M.clientY;gO(M.view),Bg(M),z.mouse=[Q,this.__zoom.invert(Q)],jf(this),z.start();function R(st){if(mc(st),!z.moved){var ut=st.clientX-et,ft=st.clientY-j;z.moved=ut*ut+ft*ft>b}z.event(st).zoom("mouse",n(k(z.that.__zoom,z.mouse[0]=pi(st,T),z.mouse[1]),z.extent,l))}function J(st){Z.on("mousemove.zoom mouseup.zoom",null),yO(st.view,z.moved),mc(st),z.event(st).end()}}function nt(M,...G){if(e.apply(this,arguments)){var T=this.__zoom,z=pi(M.changedTouches?M.changedTouches[0]:M,this),Z=T.invert(z),Q=T.k*(M.shiftKey?.5:2),et=n(k(E(T,Q),z,Z),t.apply(this,G),l);mc(M),c>0?Pn(this).transition().duration(c).call(_,et,z,M):Pn(this).call(O.transform,et,z,M)}}function U(M,...G){if(e.apply(this,arguments)){var T=M.touches,z=T.length,Z=A(this,G,M.changedTouches.length===z).event(M),Q,et,j,R;for(Bg(M),et=0;et<z;++et)j=T[et],R=pi(j,this),R=[R,this.__zoom.invert(R),j.identifier],Z.touch0?!Z.touch1&&Z.touch0[2]!==R[2]&&(Z.touch1=R,Z.taps=0):(Z.touch0=R,Q=!0,Z.taps=1+!!p);p&&(p=clearTimeout(p)),Q&&(Z.taps<2&&(m=R[0],p=setTimeout(function(){p=null},y)),jf(this),Z.start())}}function P(M,...G){if(this.__zooming){var T=A(this,G).event(M),z=M.changedTouches,Z=z.length,Q,et,j,R;for(mc(M),Q=0;Q<Z;++Q)et=z[Q],j=pi(et,this),T.touch0&&T.touch0[2]===et.identifier?T.touch0[0]=j:T.touch1&&T.touch1[2]===et.identifier&&(T.touch1[0]=j);if(et=T.that.__zoom,T.touch1){var J=T.touch0[0],st=T.touch0[1],ut=T.touch1[0],ft=T.touch1[1],dt=(dt=ut[0]-J[0])*dt+(dt=ut[1]-J[1])*dt,rt=(rt=ft[0]-st[0])*rt+(rt=ft[1]-st[1])*rt;et=E(et,Math.sqrt(dt/rt)),j=[(J[0]+ut[0])/2,(J[1]+ut[1])/2],R=[(st[0]+ft[0])/2,(st[1]+ft[1])/2]}else if(T.touch0)j=T.touch0[0],R=T.touch0[1];else return;T.zoom("touch",n(k(et,j,R),T.extent,l))}}function F(M,...G){if(this.__zooming){var T=A(this,G).event(M),z=M.changedTouches,Z=z.length,Q,et;for(Bg(M),g&&clearTimeout(g),g=setTimeout(function(){g=null},y),Q=0;Q<Z;++Q)et=z[Q],T.touch0&&T.touch0[2]===et.identifier?delete T.touch0:T.touch1&&T.touch1[2]===et.identifier&&delete T.touch1;if(T.touch1&&!T.touch0&&(T.touch0=T.touch1,delete T.touch1),T.touch0)T.touch0[1]=this.__zoom.invert(T.touch0[0]);else if(T.end(),T.taps===2&&(et=pi(et,this),Math.hypot(m[0]-et[0],m[1]-et[1])<S)){var j=Pn(this).on("dblclick.zoom");j&&j.apply(this,arguments)}}}return O.wheelDelta=function(M){return arguments.length?(i=typeof M=="function"?M:Fh(+M),O):i},O.filter=function(M){return arguments.length?(e=typeof M=="function"?M:Fh(!!M),O):e},O.touchable=function(M){return arguments.length?(s=typeof M=="function"?M:Fh(!!M),O):s},O.extent=function(M){return arguments.length?(t=typeof M=="function"?M:Fh([[+M[0][0],+M[0][1]],[+M[1][0],+M[1][1]]]),O):t},O.scaleExtent=function(M){return arguments.length?(r[0]=+M[0],r[1]=+M[1],O):[r[0],r[1]]},O.translateExtent=function(M){return arguments.length?(l[0][0]=+M[0][0],l[1][0]=+M[1][0],l[0][1]=+M[0][1],l[1][1]=+M[1][1],O):[[l[0][0],l[0][1]],[l[1][0],l[1][1]]]},O.constrain=function(M){return arguments.length?(n=M,O):n},O.duration=function(M){return arguments.length?(c=+M,O):c},O.interpolate=function(M){return arguments.length?(u=M,O):u},O.on=function(){var M=f.on.apply(f,arguments);return M===f?O:M},O.clickDistance=function(M){return arguments.length?(b=(M=+M)*M,O):Math.sqrt(b)},O.tapDistance=function(M){return arguments.length?(S=+M,O):S},O}const xi={error001:(e="react")=>`Seems like you have not used ${e==="svelte"?"SvelteFlowProvider":"ReactFlowProvider"} as an ancestor. Help: https://${e}flow.dev/error#001`,error002:()=>"It looks like you've created a new nodeTypes or edgeTypes object. If this wasn't on purpose please define the nodeTypes/edgeTypes outside of the component or memoize them.",error003:e=>`Node type "${e}" not found. Using fallback type "default".`,error004:()=>"The parent container needs a width and a height to render the graph.",error005:()=>"Only child nodes can use a parent extent.",error006:()=>"Can't create edge. An edge needs a source and a target.",error007:e=>`The old edge with id=${e} does not exist.`,error009:e=>`Marker type "${e}" doesn't exist.`,error008:(e,{id:t,sourceHandle:n,targetHandle:i})=>`Couldn't create edge for ${e} handle id: "${e==="source"?n:i}", edge id: ${t}.`,error010:()=>"Handle: No node id found. Make sure to only use a Handle inside a custom Node.",error011:e=>`Edge type "${e}" not found. Using fallback type "default".`,error012:e=>`Node with id "${e}" does not exist, it may have been removed. This can happen when a node is deleted before the "onNodeClick" handler is called.`,error013:(e="react")=>`It seems that you haven't loaded the styles. Please import '@xyflow/${e}/dist/style.css' or base.css to make sure everything is working properly.`,error014:()=>"useNodeConnections: No node ID found. Call useNodeConnections inside a custom Node or provide a node ID.",error015:()=>"It seems that you are trying to drag a node that is not initialized. Please use onNodesChange as explained in the docs.",error016:e=>`Edge with id "${e}" does not exist, it may have been removed. This can happen when an edge is deleted before the "onEdgeClick" handler is called.`},Lc=[[Number.NEGATIVE_INFINITY,Number.NEGATIVE_INFINITY],[Number.POSITIVE_INFINITY,Number.POSITIVE_INFINITY]],AO=["Enter"," ","Escape"],HO={"node.a11yDescription.default":"Press enter or space to select a node. Press delete to remove it and escape to cancel.","node.a11yDescription.keyboardDisabled":"Press enter or space to select a node. You can then use the arrow keys to move the node around. Press delete to remove it and escape to cancel.","node.a11yDescription.ariaLiveMessage":({direction:e,x:t,y:n})=>`Moved selected node ${e}. New position, x: ${t}, y: ${n}`,"edge.a11yDescription.default":"Press enter or space to select an edge. You can then press delete to remove it or escape to cancel.","controls.ariaLabel":"Control Panel","controls.zoomIn.ariaLabel":"Zoom In","controls.zoomOut.ariaLabel":"Zoom Out","controls.fitView.ariaLabel":"Fit View","controls.interactive.ariaLabel":"Toggle Interactivity","minimap.ariaLabel":"Mini Map","handle.ariaLabel":"Handle"};var So;(function(e){e.Strict="strict",e.Loose="loose"})(So||(So={}));var yo;(function(e){e.Free="free",e.Vertical="vertical",e.Horizontal="horizontal"})(yo||(yo={}));var Vl;(function(e){e.Partial="partial",e.Full="full"})(Vl||(Vl={}));const zO={inProgress:!1,isValid:null,from:null,fromHandle:null,fromPosition:null,fromNode:null,to:null,toHandle:null,toPosition:null,toNode:null,pointer:null};var pr;(function(e){e.Bezier="default",e.Straight="straight",e.Step="step",e.SmoothStep="smoothstep",e.SimpleBezier="simplebezier"})(pr||(pr={}));var yr;(function(e){e.Arrow="arrow",e.ArrowClosed="arrowclosed"})(yr||(yr={}));var $t;(function(e){e.Left="left",e.Top="top",e.Right="right",e.Bottom="bottom"})($t||($t={}));const gb={[$t.Left]:$t.Right,[$t.Right]:$t.Left,[$t.Top]:$t.Bottom,[$t.Bottom]:$t.Top};function BO(e){return e===null?null:e?"valid":"invalid"}const YO=e=>!!e&&typeof e=="object"&&"id"in e&&"source"in e&&"target"in e,qR=e=>!!e&&typeof e=="object"&&"id"in e&&"position"in e&&!("source"in e)&&!("target"in e),ew=e=>!!e&&typeof e=="object"&&"id"in e&&"internals"in e&&!("source"in e)&&!("target"in e),fu=(e,t=[0,0])=>{const{width:n,height:i}=Vi(e),s=e.origin??t,r=n*s[0],l=i*s[1];return{x:e.position.x-r,y:e.position.y-l}},WR=(e,t={nodeOrigin:[0,0]})=>{if(e.length===0)return{x:0,y:0,width:0,height:0};const n=e.reduce((i,s)=>{const r=typeof s=="string";let l=!t.nodeLookup&&!r?s:void 0;t.nodeLookup&&(l=r?t.nodeLookup.get(s):ew(s)?s:t.nodeLookup.get(s.id));const c=l?Vf(l,t.nodeOrigin):{x:0,y:0,x2:0,y2:0};return Ld(i,c)},{x:1/0,y:1/0,x2:-1/0,y2:-1/0});return Qd(n)},du=(e,t={})=>{let n={x:1/0,y:1/0,x2:-1/0,y2:-1/0},i=!1;return e.forEach(s=>{(t.filter===void 0||t.filter(s))&&(n=Ld(n,Vf(s)),i=!0)}),i?Qd(n):{x:0,y:0,width:0,height:0}},nw=(e,t,[n,i,s]=[0,0,1],r=!1,l=!1)=>{const c=(t.x-n)/s,u=(t.y-i)/s,f=t.width/s,p=t.height/s,m=[];for(const g of e.values()){const{measured:y,selectable:$=!0,hidden:b=!1}=g;if(l&&!$||b)continue;const S=y.width??g.width??g.initialWidth??0,O=y.height??g.height??g.initialHeight??0,{x:E,y:k}=g.internals.positionAbsolute,D=PO(c,u,f,p,E,k,S,O),_=S*O,A=r&&D>0;(!g.internals.handleBounds||A||D>=_||g.dragging)&&m.push(g)}return m},ZR=(e,t)=>{const n=new Set;return e.forEach(i=>{n.add(i.id)}),t.filter(i=>n.has(i.source)||n.has(i.target))};function UR(e,t){const n=new Map,i=t!=null&&t.nodes?new Set(t.nodes.map(s=>s.id)):null;return e.forEach(s=>{let r;if(t!=null&&t.includeHiddenNodes){const{width:l,height:c}=Vi(s);r=l>0&&c>0}else r=!!(s.measured.width&&s.measured.height&&!s.hidden);r&&(!i||i.has(s.id))&&n.set(s.id,s)}),n}async function IR({nodes:e,width:t,height:n,panZoom:i,minZoom:s,maxZoom:r},l){if(e.size===0)return!0;const c=UR(e,l),u=du(c),f=sw(u,t,n,(l==null?void 0:l.minZoom)??s,(l==null?void 0:l.maxZoom)??r,(l==null?void 0:l.padding)??.1);return await i.setViewport(f,{duration:l==null?void 0:l.duration,ease:l==null?void 0:l.ease,interpolate:l==null?void 0:l.interpolate}),!0}function GO({nodeId:e,nextPosition:t,nodeLookup:n,nodeOrigin:i=[0,0],nodeExtent:s,onError:r}){const l=n.get(e),c=l.parentId?n.get(l.parentId):void 0,{x:u,y:f}=c?c.internals.positionAbsolute:{x:0,y:0},p=l.origin??i;let m=l.extent||s;if(l.extent==="parent"&&!l.expandParent)if(!c)r==null||r("005",xi.error005());else{const y=c.measured.width,$=c.measured.height;y&&$&&(m=[[u,f],[u+y,f+$]])}else c&&ko(l.extent)&&(m=[[l.extent[0][0]+u,l.extent[0][1]+f],[l.extent[1][0]+u,l.extent[1][1]+f]]);const g=ko(m)?Oo(t,m,l.measured):t;return(l.measured.width===void 0||l.measured.height===void 0)&&(r==null||r("015",xi.error015())),{position:{x:g.x-u+(l.measured.width??0)*p[0],y:g.y-f+(l.measured.height??0)*p[1]},positionAbsolute:g}}async function FR({nodesToRemove:e=[],edgesToRemove:t=[],nodes:n,edges:i,onBeforeDelete:s}){const r=new Set(e.map(g=>g.id)),l=[];for(const g of n){if(g.deletable===!1)continue;const y=r.has(g.id),$=!y&&g.parentId&&l.find(b=>b.id===g.parentId);(y||$)&&l.push(g)}const c=new Set(t.map(g=>g.id)),u=i.filter(g=>g.deletable!==!1),p=ZR(l,u);for(const g of u)c.has(g.id)&&!p.find($=>$.id===g.id)&&p.push(g);if(!s)return{edges:p,nodes:l};const m=await s({nodes:l,edges:p});return typeof m=="boolean"?m?{edges:p,nodes:l}:{edges:[],nodes:[]}:m}const Xl=(e,t=0,n=1)=>Math.min(Math.max(e,t),n),Oo=(e={x:0,y:0},t,n)=>({x:Xl(e.x,t[0][0],t[1][0]-((n==null?void 0:n.width)??0)),y:Xl(e.y,t[0][1],t[1][1]-((n==null?void 0:n.height)??0))});function LO(e,t,n){const{width:i,height:s}=Vi(n),{x:r,y:l}=n.internals.positionAbsolute;return Oo(e,[[r,l],[r+i,l+s]],t)}const yb=(e,t,n)=>e<t?Xl(Math.abs(e-t),1,t)/t:e>n?-Xl(Math.abs(e-n),1,t)/t:0,iw=(e,t,n=15,i=40)=>{const s=yb(e.x,i,t.width-i)*n,r=yb(e.y,i,t.height-i)*n;return[s,r]},Ld=(e,t)=>({x:Math.min(e.x,t.x),y:Math.min(e.y,t.y),x2:Math.max(e.x2,t.x2),y2:Math.max(e.y2,t.y2)}),W0=({x:e,y:t,width:n,height:i})=>({x:e,y:t,x2:e+n,y2:t+i}),Qd=({x:e,y:t,x2:n,y2:i})=>({x:e,y:t,width:n-e,height:i-t}),Qc=(e,t=[0,0])=>{var s,r;const{x:n,y:i}=ew(e)?e.internals.positionAbsolute:fu(e,t);return{x:n,y:i,width:((s=e.measured)==null?void 0:s.width)??e.width??e.initialWidth??0,height:((r=e.measured)==null?void 0:r.height)??e.height??e.initialHeight??0}},Vf=(e,t=[0,0])=>{var s,r;const{x:n,y:i}=ew(e)?e.internals.positionAbsolute:fu(e,t);return{x:n,y:i,x2:n+(((s=e.measured)==null?void 0:s.width)??e.width??e.initialWidth??0),y2:i+(((r=e.measured)==null?void 0:r.height)??e.height??e.initialHeight??0)}},QO=(e,t)=>Qd(Ld(W0(e),W0(t))),PO=(e,t,n,i,s,r,l,c)=>{const u=Math.max(0,Math.min(e+n,s+l)-Math.max(e,s)),f=Math.max(0,Math.min(t+i,r+c)-Math.max(t,r));return Math.ceil(u*f)},Xf=(e,t)=>PO(e.x,e.y,e.width,e.height,t.x,t.y,t.width,t.height),wb=e=>yi(e.width)&&yi(e.height)&&yi(e.x)&&yi(e.y),yi=e=>!isNaN(e)&&isFinite(e),qO=(e,t)=>(n,i)=>{},pu=(e,t=[1,1])=>({x:t[0]*Math.round(e.x/t[0]),y:t[1]*Math.round(e.y/t[1])}),mu=({x:e,y:t},[n,i,s],r=!1,l=[1,1])=>{const c={x:(e-n)/s,y:(t-i)/s};return r?pu(c,l):c},Kl=({x:e,y:t},[n,i,s])=>({x:e*s+n,y:t*s+i});function Sl(e,t){if(typeof e=="number")return Math.floor((t-t/(1+e))*.5);if(typeof e=="string"&&e.endsWith("px")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(n)}if(typeof e=="string"&&e.endsWith("%")){const n=parseFloat(e);if(!Number.isNaN(n))return Math.floor(t*n*.01)}return console.error(`The padding value "${e}" is invalid. Please provide a number or a string with a valid unit (px or %).`),0}function VR(e,t,n){if(typeof e=="string"||typeof e=="number"){const i=Sl(e,n),s=Sl(e,t);return{top:i,right:s,bottom:i,left:s,x:s*2,y:i*2}}if(typeof e=="object"){const i=Sl(e.top??e.y??0,n),s=Sl(e.bottom??e.y??0,n),r=Sl(e.left??e.x??0,t),l=Sl(e.right??e.x??0,t);return{top:i,right:l,bottom:s,left:r,x:r+l,y:i+s}}return{top:0,right:0,bottom:0,left:0,x:0,y:0}}function XR(e,t,n,i,s,r){const{x:l,y:c}=Kl(e,[t,n,i]),{x:u,y:f}=Kl({x:e.x+e.width,y:e.y+e.height},[t,n,i]),p=s-u,m=r-f;return{left:Math.floor(l),top:Math.floor(c),right:Math.floor(p),bottom:Math.floor(m)}}const sw=(e,t,n,i,s,r)=>{const l=VR(r,t,n),c=(t-l.x)/e.width,u=(n-l.y)/e.height,f=Math.min(c,u),p=Xl(f,i,s),m=e.x+e.width/2,g=e.y+e.height/2,y=t/2-m*p,$=n/2-g*p,b=XR(e,y,$,p,t,n),S={left:Math.min(b.left-l.left,0),top:Math.min(b.top-l.top,0),right:Math.min(b.right-l.right,0),bottom:Math.min(b.bottom-l.bottom,0)};return{x:y-S.left+S.right,y:$-S.top+S.bottom,zoom:p}},Pc=()=>{var e;return typeof navigator<"u"&&((e=navigator==null?void 0:navigator.userAgent)==null?void 0:e.indexOf("Mac"))>=0};function ko(e){return e!=null&&e!=="parent"}function Vi(e){var t,n;return{width:((t=e.measured)==null?void 0:t.width)??e.width??e.initialWidth??0,height:((n=e.measured)==null?void 0:n.height)??e.height??e.initialHeight??0}}function WO(e){var t,n;return(((t=e.measured)==null?void 0:t.width)??e.width??e.initialWidth)!==void 0&&(((n=e.measured)==null?void 0:n.height)??e.height??e.initialHeight)!==void 0}function ZO(e,t={width:0,height:0},n,i,s){const r={...e},l=i.get(n);if(l){const c=l.origin||s;r.x+=l.internals.positionAbsolute.x-(t.width??0)*c[0],r.y+=l.internals.positionAbsolute.y-(t.height??0)*c[1]}return r}function $b(e,t){if(e.size!==t.size)return!1;for(const n of e)if(!t.has(n))return!1;return!0}function KR(){let e,t;return{promise:new Promise((i,s)=>{e=i,t=s}),resolve:e,reject:t}}function JR(e){return{...HO,...e||{}}}function Nc(e,{snapGrid:t=[0,0],snapToGrid:n=!1,transform:i,containerBounds:s}){const{x:r,y:l}=wi(e),c=mu({x:r-((s==null?void 0:s.left)??0),y:l-((s==null?void 0:s.top)??0)},i),{x:u,y:f}=n?pu(c,t):c;return{xSnapped:u,ySnapped:f,...c}}const rw=e=>({width:e.offsetWidth,height:e.offsetHeight}),UO=e=>{var t;return((t=e==null?void 0:e.getRootNode)==null?void 0:t.call(e))||(window==null?void 0:window.document)},t_=["INPUT","SELECT","TEXTAREA"];function IO(e){var i,s;const t=((s=(i=e.composedPath)==null?void 0:i.call(e))==null?void 0:s[0])||e.target;return(t==null?void 0:t.nodeType)!==1?!1:t_.includes(t.nodeName)||t.hasAttribute("contenteditable")||!!t.closest(".nokey")}const FO=e=>"clientX"in e,wi=(e,t)=>{var r,l;const n=FO(e),i=n?e.clientX:(r=e.touches)==null?void 0:r[0].clientX,s=n?e.clientY:(l=e.touches)==null?void 0:l[0].clientY;return{x:i-((t==null?void 0:t.left)??0),y:s-((t==null?void 0:t.top)??0)}},xb=(e,t,n,i,s)=>{const r=t.querySelectorAll(`.${e}`);return!r||!r.length?null:Array.from(r).map(l=>{const c=l.getBoundingClientRect();return{id:l.getAttribute("data-handleid"),type:e,nodeId:s,position:l.getAttribute("data-handlepos"),x:(c.left-n.left)/i,y:(c.top-n.top)/i,...rw(l)}})};function VO({sourceX:e,sourceY:t,targetX:n,targetY:i,sourceControlX:s,sourceControlY:r,targetControlX:l,targetControlY:c}){const u=e*.125+s*.375+l*.375+n*.125,f=t*.125+r*.375+c*.375+i*.125,p=Math.abs(u-e),m=Math.abs(f-t);return[u,f,p,m]}function Vh(e,t){return e>=0?.5*e:t*25*Math.sqrt(-e)}function bb({pos:e,x1:t,y1:n,x2:i,y2:s,c:r}){switch(e){case $t.Left:return[t-Vh(t-i,r),n];case $t.Right:return[t+Vh(i-t,r),n];case $t.Top:return[t,n-Vh(n-s,r)];case $t.Bottom:return[t,n+Vh(s-n,r)]}}function XO({sourceX:e,sourceY:t,sourcePosition:n=$t.Bottom,targetX:i,targetY:s,targetPosition:r=$t.Top,curvature:l=.25}){const[c,u]=bb({pos:n,x1:e,y1:t,x2:i,y2:s,c:l}),[f,p]=bb({pos:r,x1:i,y1:s,x2:e,y2:t,c:l}),[m,g,y,$]=VO({sourceX:e,sourceY:t,targetX:i,targetY:s,sourceControlX:c,sourceControlY:u,targetControlX:f,targetControlY:p});return[`M${e},${t} C${c},${u} ${f},${p} ${i},${s}`,m,g,y,$]}function KO({sourceX:e,sourceY:t,targetX:n,targetY:i}){const s=Math.abs(n-e)/2,r=n<e?n+s:n-s,l=Math.abs(i-t)/2,c=i<t?i+l:i-l;return[r,c,s,l]}function e_({sourceNode:e,targetNode:t,selected:n=!1,zIndex:i=0,elevateOnSelect:s=!1,zIndexMode:r="basic"}){if(r==="manual")return i;const l=s&&n?i+1e3:i,c=Math.max(e.parentId||s&&e.selected?e.internals.z:0,t.parentId||s&&t.selected?t.internals.z:0);return l+c}function n_({sourceNode:e,targetNode:t,width:n,height:i,transform:s}){const r=Ld(Vf(e),Vf(t));r.x===r.x2&&(r.x2+=1),r.y===r.y2&&(r.y2+=1);const l={x:-s[0]/s[2],y:-s[1]/s[2],width:n/s[2],height:i/s[2]};return Xf(l,Qd(r))>0}const i_=({source:e,sourceHandle:t,target:n,targetHandle:i})=>`xy-edge__${e}${t||""}-${n}${i||""}`,s_=(e,t)=>t.some(n=>n.source===e.source&&n.target===e.target&&(n.sourceHandle===e.sourceHandle||!n.sourceHandle&&!e.sourceHandle)&&(n.targetHandle===e.targetHandle||!n.targetHandle&&!e.targetHandle)),r_=(e,t,n={})=>{var r;if(!e.source||!e.target)return(r=n.onError)==null||r.call(n,"006",xi.error006()),t;const i=n.getEdgeId||i_;let s;return YO(e)?s={...e}:s={...e,id:i(e)},s_(s,t)?t:(s.sourceHandle===null&&delete s.sourceHandle,s.targetHandle===null&&delete s.targetHandle,t.concat(s))};function JO({sourceX:e,sourceY:t,targetX:n,targetY:i}){const[s,r,l,c]=KO({sourceX:e,sourceY:t,targetX:n,targetY:i});return[`M ${e},${t}L ${n},${i}`,s,r,l,c]}const vb={[$t.Left]:{x:-1,y:0},[$t.Right]:{x:1,y:0},[$t.Top]:{x:0,y:-1},[$t.Bottom]:{x:0,y:1}},o_=({source:e,sourcePosition:t=$t.Bottom,target:n})=>t===$t.Left||t===$t.Right?e.x<n.x?{x:1,y:0}:{x:-1,y:0}:e.y<n.y?{x:0,y:1}:{x:0,y:-1},Sb=(e,t)=>Math.sqrt(Math.pow(t.x-e.x,2)+Math.pow(t.y-e.y,2));function l_({source:e,sourcePosition:t=$t.Bottom,target:n,targetPosition:i=$t.Top,center:s,offset:r,stepPosition:l}){const c=vb[t],u=vb[i],f={x:e.x+c.x*r,y:e.y+c.y*r},p={x:n.x+u.x*r,y:n.y+u.y*r},m=o_({source:f,sourcePosition:t,target:p}),g=m.x!==0?"x":"y",y=m[g];let $=[],b,S;const O={x:0,y:0},E={x:0,y:0},[,,k,D]=KO({sourceX:e.x,sourceY:e.y,targetX:n.x,targetY:n.y});if(c[g]*u[g]===-1){g==="x"?(b=s.x??f.x+(p.x-f.x)*l,S=s.y??(f.y+p.y)/2):(b=s.x??(f.x+p.x)/2,S=s.y??f.y+(p.y-f.y)*l);const Y=[{x:b,y:f.y},{x:b,y:p.y}],W=[{x:f.x,y:S},{x:p.x,y:S}];c[g]===y?$=g==="x"?Y:W:$=g==="x"?W:Y}else{const Y=[{x:f.x,y:p.y}],W=[{x:p.x,y:f.y}];if(g==="x"?$=c.x===y?W:Y:$=c.y===y?Y:W,t===i){const M=Math.abs(e[g]-n[g]);if(M<=r){const G=Math.min(r-1,r-M);c[g]===y?O[g]=(f[g]>e[g]?-1:1)*G:E[g]=(p[g]>n[g]?-1:1)*G}}if(t!==i){const M=g==="x"?"y":"x",G=c[g]===u[M],T=f[M]>p[M],z=f[M]<p[M];(c[g]===1&&(!G&&T||G&&z)||c[g]!==1&&(!G&&z||G&&T))&&($=g==="x"?Y:W)}const nt={x:f.x+O.x,y:f.y+O.y},U={x:p.x+E.x,y:p.y+E.y},P=Math.max(Math.abs(nt.x-$[0].x),Math.abs(U.x-$[0].x)),F=Math.max(Math.abs(nt.y-$[0].y),Math.abs(U.y-$[0].y));P>=F?(b=(nt.x+U.x)/2,S=$[0].y):(b=$[0].x,S=(nt.y+U.y)/2)}const _={x:f.x+O.x,y:f.y+O.y},A={x:p.x+E.x,y:p.y+E.y};return[[e,..._.x!==$[0].x||_.y!==$[0].y?[_]:[],...$,...A.x!==$[$.length-1].x||A.y!==$[$.length-1].y?[A]:[],n],b,S,k,D]}function a_(e,t,n,i){const s=Math.min(Sb(e,t)/2,Sb(t,n)/2,i),{x:r,y:l}=t;if(e.x===r&&r===n.x||e.y===l&&l===n.y)return`L${r} ${l}`;if(e.y===l){const f=e.x<n.x?-1:1,p=e.y<n.y?1:-1;return`L ${r+s*f},${l}Q ${r},${l} ${r},${l+s*p}`}const c=e.x<n.x?1:-1,u=e.y<n.y?-1:1;return`L ${r},${l+s*u}Q ${r},${l} ${r+s*c},${l}`}function Z0({sourceX:e,sourceY:t,sourcePosition:n=$t.Bottom,targetX:i,targetY:s,targetPosition:r=$t.Top,borderRadius:l=5,centerX:c,centerY:u,offset:f=20,stepPosition:p=.5}){const[m,g,y,$,b]=l_({source:{x:e,y:t},sourcePosition:n,target:{x:i,y:s},targetPosition:r,center:{x:c,y:u},offset:f,stepPosition:p});let S=`M${m[0].x} ${m[0].y}`;for(let O=1;O<m.length-1;O++)S+=a_(m[O-1],m[O],m[O+1],l);return S+=`L${m[m.length-1].x} ${m[m.length-1].y}`,[S,g,y,$,b]}function Ob(e){var t;return e&&!!(e.internals.handleBounds||(t=e.handles)!=null&&t.length)&&!!(e.measured.width||e.width||e.initialWidth)}function c_(e){var m;const{sourceNode:t,targetNode:n}=e;if(!Ob(t)||!Ob(n))return null;const i=t.internals.handleBounds||kb(t.handles),s=n.internals.handleBounds||kb(n.handles),r=Cb((i==null?void 0:i.source)??[],e.sourceHandle),l=Cb(e.connectionMode===So.Strict?(s==null?void 0:s.target)??[]:((s==null?void 0:s.target)??[]).concat((s==null?void 0:s.source)??[]),e.targetHandle);if(!r||!l)return(m=e.onError)==null||m.call(e,"008",xi.error008(r?"target":"source",{id:e.id,sourceHandle:e.sourceHandle,targetHandle:e.targetHandle})),null;const c=(r==null?void 0:r.position)||$t.Bottom,u=(l==null?void 0:l.position)||$t.Top,f=Co(t,r,c),p=Co(n,l,u);return{sourceX:f.x,sourceY:f.y,targetX:p.x,targetY:p.y,sourcePosition:c,targetPosition:u}}function kb(e){if(!e)return null;const t=[],n=[];for(const i of e)i.width=i.width??1,i.height=i.height??1,i.type==="source"?t.push(i):i.type==="target"&&n.push(i);return{source:t,target:n}}function Co(e,t,n=$t.Left,i=!1){const s=((t==null?void 0:t.x)??0)+e.internals.positionAbsolute.x,r=((t==null?void 0:t.y)??0)+e.internals.positionAbsolute.y,{width:l,height:c}=t??Vi(e);if(i)return{x:s+l/2,y:r+c/2};switch((t==null?void 0:t.position)??n){case $t.Top:return{x:s+l/2,y:r};case $t.Right:return{x:s+l,y:r+c/2};case $t.Bottom:return{x:s+l/2,y:r+c};case $t.Left:return{x:s,y:r+c/2}}}function Cb(e,t){return e&&(t?e.find(n=>n.id===t):e[0])||null}function U0(e,t){return e?typeof e=="string"?e:`${t?`${t}__`:""}${Object.keys(e).sort().map(i=>`${i}=${e[i]}`).join("&")}`:""}function u_(e,{id:t,defaultColor:n,defaultMarkerStart:i,defaultMarkerEnd:s}){const r=new Set;return e.reduce((l,c)=>([c.markerStart||i,c.markerEnd||s].forEach(u=>{if(u&&typeof u=="object"){const f=U0(u,t);r.has(f)||(l.push({id:f,color:u.color||n,...u}),r.add(f))}}),l),[]).sort((l,c)=>l.id.localeCompare(c.id))}const tk=1e3,h_=10,ow={nodeOrigin:[0,0],nodeExtent:Lc,elevateNodesOnSelect:!0,zIndexMode:"basic",defaults:{}},f_={...ow,checkEquality:!0};function lw(e,t){const n={...e};for(const i in t)t[i]!==void 0&&(n[i]=t[i]);return n}function d_(e,t,n){const i=lw(ow,n);for(const s of e.values())if(s.parentId)cw(s,e,t,i);else{const r=fu(s,i.nodeOrigin),l=ko(s.extent)?s.extent:i.nodeExtent,c=Oo(r,l,Vi(s));s.internals.positionAbsolute=c}}function p_(e,t){if(!e.handles)return e.measured?t==null?void 0:t.internals.handleBounds:void 0;const n=[],i=[];for(const s of e.handles){const r={id:s.id,width:s.width??1,height:s.height??1,nodeId:e.id,x:s.x,y:s.y,position:s.position,type:s.type};s.type==="source"?n.push(r):s.type==="target"&&i.push(r)}return{source:n,target:i}}function aw(e){return e==="manual"}function I0(e,t,n,i={}){var p,m;const s=lw(f_,i),r={i:0},l=new Map(t),c=s!=null&&s.elevateNodesOnSelect&&!aw(s.zIndexMode)?tk:0;let u=e.length>0,f=!1;t.clear(),n.clear();for(const g of e){let y=l.get(g.id);if(s.checkEquality&&g===(y==null?void 0:y.internals.userNode))t.set(g.id,y);else{const $=fu(g,s.nodeOrigin),b=ko(g.extent)?g.extent:s.nodeExtent,S=Oo($,b,Vi(g));y={...s.defaults,...g,measured:{width:(p=g.measured)==null?void 0:p.width,height:(m=g.measured)==null?void 0:m.height},internals:{positionAbsolute:S,handleBounds:p_(g,y),z:ek(g,c,s.zIndexMode),userNode:g}},t.set(g.id,y)}(y.measured===void 0||y.measured.width===void 0||y.measured.height===void 0)&&!y.hidden&&(u=!1),g.parentId&&cw(y,t,n,i,r),f||(f=g.selected??!1)}return{nodesInitialized:u,hasSelectedNodes:f}}function m_(e,t){if(!e.parentId)return;const n=t.get(e.parentId);n?n.set(e.id,e):t.set(e.parentId,new Map([[e.id,e]]))}function cw(e,t,n,i,s){const{elevateNodesOnSelect:r,nodeOrigin:l,nodeExtent:c,zIndexMode:u}=lw(ow,i),f=e.parentId,p=t.get(f);if(!p){console.warn(`Parent node ${f} not found. Please make sure that parent nodes are in front of their child nodes in the nodes array.`);return}m_(e,n),s&&!p.parentId&&p.internals.rootParentIndex===void 0&&u==="auto"&&(p.internals.rootParentIndex=++s.i,p.internals.z=p.internals.z+s.i*h_),s&&p.internals.rootParentIndex!==void 0&&(s.i=p.internals.rootParentIndex);const m=r&&!aw(u)?tk:0,{x:g,y,z:$}=g_(e,p,l,c,m,u),{positionAbsolute:b}=e.internals,S=g!==b.x||y!==b.y;(S||$!==e.internals.z)&&t.set(e.id,{...e,internals:{...e.internals,positionAbsolute:S?{x:g,y}:b,z:$}})}function ek(e,t,n){const i=yi(e.zIndex)?e.zIndex:0;return aw(n)?i:i+(e.selected?t:0)}function g_(e,t,n,i,s,r){const{x:l,y:c}=t.internals.positionAbsolute,u=Vi(e),f=fu(e,n),p=ko(e.extent)?Oo(f,e.extent,u):f;let m=Oo({x:l+p.x,y:c+p.y},i,u);e.extent==="parent"&&(m=LO(m,u,t));const g=ek(e,s,r),y=t.internals.z??0;return{x:m.x,y:m.y,z:y>=g?y+1:g}}function uw(e,t,n,i=[0,0]){var l;const s=[],r=new Map;for(const c of e){const u=t.get(c.parentId);if(!u)continue;const f=((l=r.get(c.parentId))==null?void 0:l.expandedRect)??Qc(u),p=QO(f,c.rect);r.set(c.parentId,{expandedRect:p,parent:u})}return r.size>0&&r.forEach(({expandedRect:c,parent:u},f)=>{var k;const p=u.internals.positionAbsolute,m=Vi(u),g=u.origin??i,y=c.x<p.x?Math.round(Math.abs(p.x-c.x)):0,$=c.y<p.y?Math.round(Math.abs(p.y-c.y)):0,b=Math.max(m.width,Math.round(c.width)),S=Math.max(m.height,Math.round(c.height)),O=(b-m.width)*g[0],E=(S-m.height)*g[1];(y>0||$>0||O||E)&&(s.push({id:f,type:"position",position:{x:u.position.x-y+O,y:u.position.y-$+E}}),(k=n.get(f))==null||k.forEach(D=>{e.some(_=>_.id===D.id)||s.push({id:D.id,type:"position",position:{x:D.position.x+y,y:D.position.y+$}})})),(m.width<c.width||m.height<c.height||y||$)&&s.push({id:f,type:"dimensions",setAttributes:!0,dimensions:{width:b+(y?g[0]*y-O:0),height:S+($?g[1]*$-E:0)}})}),s}function y_(e,t,n,i,s,r,l){const c=i==null?void 0:i.querySelector(".xyflow__viewport");let u=!1;if(!c)return{changes:[],updatedInternals:u};const f=[],p=window.getComputedStyle(c),{m22:m}=new window.DOMMatrixReadOnly(p.transform),g=[];for(const y of e.values()){const $=t.get(y.id);if(!$)continue;if($.hidden){t.set($.id,{...$,internals:{...$.internals,handleBounds:void 0}}),u=!0;continue}const b=rw(y.nodeElement),S=$.measured.width!==b.width||$.measured.height!==b.height;if(!!(b.width&&b.height&&(S||!$.internals.handleBounds||y.force))){const E=y.nodeElement.getBoundingClientRect(),k=ko($.extent)?$.extent:r;let{positionAbsolute:D}=$.internals;if($.parentId&&$.extent==="parent"){const A=t.get($.parentId);A&&(D=LO(D,b,A))}else k&&(D=Oo(D,k,b));const _={...$,measured:b,internals:{...$.internals,positionAbsolute:D,handleBounds:{source:xb("source",y.nodeElement,E,m,$.id),target:xb("target",y.nodeElement,E,m,$.id)}}};t.set($.id,_),$.parentId&&cw(_,t,n,{nodeOrigin:s,zIndexMode:l}),u=!0,S&&(f.push({id:$.id,type:"dimensions",dimensions:b}),$.expandParent&&$.parentId&&g.push({id:$.id,parentId:$.parentId,rect:Qc(_,s)}))}}if(g.length>0){const y=uw(g,t,n,s);f.push(...y)}return{changes:f,updatedInternals:u}}async function w_({delta:e,panZoom:t,transform:n,translateExtent:i,width:s,height:r}){if(!t||!e.x&&!e.y)return!1;const l=await t.setViewportConstrained({x:n[0]+e.x,y:n[1]+e.y,zoom:n[2]},[[0,0],[s,r]],i);return!!l&&(l.x!==n[0]||l.y!==n[1]||l.k!==n[2])}function Eb(e,t,n,i,s,r){let l=s;const c=i.get(l)||new Map;i.set(l,c.set(n,t)),l=`${s}-${e}`;const u=i.get(l)||new Map;if(i.set(l,u.set(n,t)),r){l=`${s}-${e}-${r}`;const f=i.get(l)||new Map;i.set(l,f.set(n,t))}}function nk(e,t,n){e.clear(),t.clear();for(const i of n){const{source:s,target:r,sourceHandle:l=null,targetHandle:c=null}=i,u={edgeId:i.id,source:s,target:r,sourceHandle:l,targetHandle:c},f=`${s}-${l}--${r}-${c}`,p=`${r}-${c}--${s}-${l}`;Eb("source",u,p,e,s,l),Eb("target",u,f,e,r,c),t.set(i.id,i)}}function ik(e,t){if(!e.parentId)return!1;const n=t.get(e.parentId);return n?n.selected?!0:ik(n,t):!1}function Db(e,t,n){var s;let i=e;do{if((s=i==null?void 0:i.matches)!=null&&s.call(i,t))return!0;if(i===n)return!1;i=i==null?void 0:i.parentElement}while(i);return!1}function $_(e,t,n,i){const s=new Map;for(const[r,l]of e)if((l.selected||l.id===i)&&(!l.parentId||!ik(l,e))&&(l.draggable||t&&typeof l.draggable>"u")){const c=e.get(r);c&&s.set(r,{id:r,position:c.position||{x:0,y:0},distance:{x:n.x-c.internals.positionAbsolute.x,y:n.y-c.internals.positionAbsolute.y},extent:c.extent,parentId:c.parentId,origin:c.origin,expandParent:c.expandParent,internals:{positionAbsolute:c.internals.positionAbsolute||{x:0,y:0}},measured:{width:c.measured.width??0,height:c.measured.height??0}})}return s}function Yg({nodeId:e,dragItems:t,nodeLookup:n,dragging:i=!0}){var l,c,u;const s=[];for(const[f,p]of t){const m=(l=n.get(f))==null?void 0:l.internals.userNode;m&&s.push({...m,position:p.position,dragging:i})}if(!e)return[s[0],s];const r=(c=n.get(e))==null?void 0:c.internals.userNode;return[r?{...r,position:((u=t.get(e))==null?void 0:u.position)||r.position,dragging:i}:s[0],s]}function x_({dragItems:e,snapGrid:t,x:n,y:i}){const s=e.values().next().value;if(!s)return null;const r={x:n-s.distance.x,y:i-s.distance.y},l=pu(r,t);return{x:l.x-r.x,y:l.y-r.y}}function b_({onNodeMouseDown:e,getStoreItems:t,onDragStart:n,onDrag:i,onDragStop:s}){let r={x:null,y:null},l=0,c=new Map,u=!1,f={x:0,y:0},p=null,m=!1,g=null,y=!1,$=!1,b=null;function S({noDragClassName:E,handleSelector:k,domNode:D,isSelectable:_,nodeId:A,nodeClickDistance:H=0}){g=Pn(D);function Y({x:P,y:F}){const{nodeLookup:M,nodeExtent:G,snapGrid:T,snapToGrid:z,nodeOrigin:Z,onNodeDrag:Q,onSelectionDrag:et,onError:j,updateNodePositions:R}=t();r={x:P,y:F};let J=!1;const st=c.size>1,ut=st&&G?W0(du(c)):null,ft=st&&z?x_({dragItems:c,snapGrid:T,x:P,y:F}):null;for(const[dt,rt]of c){if(!M.has(dt))continue;let ht={x:P-rt.distance.x,y:F-rt.distance.y};z&&(ht=ft?{x:Math.round(ht.x+ft.x),y:Math.round(ht.y+ft.y)}:pu(ht,T));let Ct=null;if(st&&G&&!rt.extent&&ut){const{positionAbsolute:Ot}=rt.internals,Nt=Ot.x-ut.x+G[0][0],Yt=Ot.x+rt.measured.width-ut.x2+G[1][0],Qt=Ot.y-ut.y+G[0][1],fe=Ot.y+rt.measured.height-ut.y2+G[1][1];Ct=[[Nt,Qt],[Yt,fe]]}const{position:Et,positionAbsolute:St}=GO({nodeId:dt,nextPosition:ht,nodeLookup:M,nodeExtent:Ct||G,nodeOrigin:Z,onError:j});J=J||rt.position.x!==Et.x||rt.position.y!==Et.y,rt.position=Et,rt.internals.positionAbsolute=St}if($=$||J,!!J&&(R(c,!0),b&&(i||Q||!A&&et))){const[dt,rt]=Yg({nodeId:A,dragItems:c,nodeLookup:M});i==null||i(b,c,dt,rt),Q==null||Q(b,dt,rt),A||et==null||et(b,rt)}}async function W(){if(!p)return;const{transform:P,panBy:F,autoPanSpeed:M,autoPanOnNodeDrag:G}=t();if(!G){u=!1,cancelAnimationFrame(l);return}const[T,z]=iw(f,p,M);(T!==0||z!==0)&&(r.x=(r.x??0)-T/P[2],r.y=(r.y??0)-z/P[2],await F({x:T,y:z})&&Y(r)),l=requestAnimationFrame(W)}function nt(P){var st;const{nodeLookup:F,multiSelectionActive:M,nodesDraggable:G,transform:T,snapGrid:z,snapToGrid:Z,selectNodesOnDrag:Q,onNodeDragStart:et,onSelectionDragStart:j,unselectNodesAndEdges:R}=t();m=!0,(!Q||!_)&&!M&&A&&((st=F.get(A))!=null&&st.selected||R()),_&&Q&&A&&(e==null||e(A));const J=Nc(P.sourceEvent,{transform:T,snapGrid:z,snapToGrid:Z,containerBounds:p});if(r=J,c=$_(F,G,J,A),c.size>0&&(n||et||!A&&j)){const[ut,ft]=Yg({nodeId:A,dragItems:c,nodeLookup:F});n==null||n(P.sourceEvent,c,ut,ft),et==null||et(P.sourceEvent,ut,ft),A||j==null||j(P.sourceEvent,ft)}}const U=wO().clickDistance(H).on("start",P=>{const{domNode:F,nodeDragThreshold:M,transform:G,snapGrid:T,snapToGrid:z}=t();p=(F==null?void 0:F.getBoundingClientRect())||null,y=!1,$=!1,b=P.sourceEvent,M===0&&nt(P),r=Nc(P.sourceEvent,{transform:G,snapGrid:T,snapToGrid:z,containerBounds:p}),f=wi(P.sourceEvent,p)}).on("drag",P=>{const{autoPanOnNodeDrag:F,transform:M,snapGrid:G,snapToGrid:T,nodeDragThreshold:z,nodeLookup:Z}=t(),Q=Nc(P.sourceEvent,{transform:M,snapGrid:G,snapToGrid:T,containerBounds:p});if(b=P.sourceEvent,(P.sourceEvent.type==="touchmove"&&P.sourceEvent.touches.length>1||A&&!Z.has(A))&&(y=!0),!y){if(!u&&F&&m&&(u=!0,W()),!m){const et=wi(P.sourceEvent,p),j=et.x-f.x,R=et.y-f.y;Math.sqrt(j*j+R*R)>z&&nt(P)}(r.x!==Q.xSnapped||r.y!==Q.ySnapped)&&c&&m&&(f=wi(P.sourceEvent,p),Y(Q))}}).on("end",P=>{if(!m||y){y&&c.size>0&&t().updateNodePositions(c,!1);return}if(u=!1,m=!1,cancelAnimationFrame(l),c.size>0){const{nodeLookup:F,updateNodePositions:M,onNodeDragStop:G,onSelectionDragStop:T}=t();if($&&(M(c,!1),$=!1),s||G||!A&&T){const[z,Z]=Yg({nodeId:A,dragItems:c,nodeLookup:F,dragging:!1});s==null||s(P.sourceEvent,c,z,Z),G==null||G(P.sourceEvent,z,Z),A||T==null||T(P.sourceEvent,Z)}}}).filter(P=>{const F=P.target;return!P.button&&(!E||!Db(F,`.${E}`,D))&&(!k||Db(F,k,D))});g.call(U)}function O(){g==null||g.on(".drag",null)}return{update:S,destroy:O}}function v_(e,t,n){const i=[],s={x:e.x-n,y:e.y-n,width:n*2,height:n*2};for(const r of t.values())Xf(s,Qc(r))>0&&i.push(r);return i}const S_=250;function O_(e,t,n,i){var c,u;let s=[],r=1/0;const l=v_(e,n,t+S_);for(const f of l){const p=[...((c=f.internals.handleBounds)==null?void 0:c.source)??[],...((u=f.internals.handleBounds)==null?void 0:u.target)??[]];for(const m of p){if(i.nodeId===m.nodeId&&i.type===m.type&&i.id===m.id)continue;const{x:g,y}=Co(f,m,m.position,!0),$=Math.sqrt(Math.pow(g-e.x,2)+Math.pow(y-e.y,2));$>t||($<r?(s=[{...m,x:g,y}],r=$):$===r&&s.push({...m,x:g,y}))}}if(!s.length)return null;if(s.length>1){const f=i.type==="source"?"target":"source";return s.find(p=>p.type===f)??s[0]}return s[0]}function sk(e,t,n,i,s,r=!1){var f,p,m;const l=i.get(e);if(!l)return null;const c=s==="strict"?(f=l.internals.handleBounds)==null?void 0:f[t]:[...((p=l.internals.handleBounds)==null?void 0:p.source)??[],...((m=l.internals.handleBounds)==null?void 0:m.target)??[]],u=(n?c==null?void 0:c.find(g=>g.id===n):c==null?void 0:c[0])??null;return u&&r?{...u,...Co(l,u,u.position,!0)}:u}function rk(e,t){return e||(t!=null&&t.classList.contains("target")?"target":t!=null&&t.classList.contains("source")?"source":null)}function k_(e,t){let n=null;return t?n=!0:e&&!t&&(n=!1),n}const ok=()=>!0;function C_(e,{connectionMode:t,connectionRadius:n,handleId:i,nodeId:s,edgeUpdaterType:r,isTarget:l,domNode:c,nodeLookup:u,lib:f,autoPanOnConnect:p,flowId:m,panBy:g,cancelConnection:y,onConnectStart:$,onConnect:b,onConnectEnd:S,isValidConnection:O=ok,onReconnectEnd:E,updateConnection:k,getTransform:D,getFromHandle:_,autoPanSpeed:A,dragThreshold:H=1,handleDomNode:Y}){const W=UO(e.target);let nt=0,U;const{x:P,y:F}=wi(e),M=rk(r,Y),G=c==null?void 0:c.getBoundingClientRect();let T=!1;if(!G||!M)return;const z=sk(s,M,i,u,t);if(!z)return;let Z=wi(e,G),Q=!1,et=null,j=!1,R=null;function J(){if(!p||!G)return;const[Et,St]=iw(Z,G,A);g({x:Et,y:St}),nt=requestAnimationFrame(J)}const st={...z,nodeId:s,type:M,position:z.position},ut=u.get(s);let dt={inProgress:!0,isValid:null,from:Co(ut,st,$t.Left,!0),fromHandle:st,fromPosition:st.position,fromNode:ut,to:Z,toHandle:null,toPosition:gb[st.position],toNode:null,pointer:Z};function rt(){T=!0,k(dt),$==null||$(e,{nodeId:s,handleId:i,handleType:M})}H===0&&rt();function ht(Et){if(!T){const{x:fe,y:nn}=wi(Et),hn=fe-P,fn=nn-F;if(!(hn*hn+fn*fn>H*H))return;rt()}if(!_()||!st){Ct(Et);return}const St=D();Z=wi(Et,G),U=O_(mu(Z,St,!1,[1,1]),n,u,st),Q||(J(),Q=!0);const Ot=lk(Et,{handle:U,connectionMode:t,fromNodeId:s,fromHandleId:i,fromType:l?"target":"source",isValidConnection:O,doc:W,lib:f,flowId:m,nodeLookup:u});R=Ot.handleDomNode,et=Ot.connection,j=k_(!!U,Ot.isValid);const Nt=u.get(s),Yt=Nt?Co(Nt,st,$t.Left,!0):dt.from,Qt={...dt,from:Yt,isValid:j,to:Ot.toHandle&&j?Kl({x:Ot.toHandle.x,y:Ot.toHandle.y},St):Z,toHandle:Ot.toHandle,toPosition:j&&Ot.toHandle?Ot.toHandle.position:gb[st.position],toNode:Ot.toHandle?u.get(Ot.toHandle.nodeId):null,pointer:Z};k(Qt),dt=Qt}function Ct(Et){if(!("touches"in Et&&Et.touches.length>0)){if(T){(U||R)&&et&&j&&(b==null||b(et));const{inProgress:St,...Ot}=dt,Nt={...Ot,toPosition:dt.toHandle?dt.toPosition:null};S==null||S(Et,Nt),r&&(E==null||E(Et,Nt))}y(),cancelAnimationFrame(nt),Q=!1,j=!1,et=null,R=null,W.removeEventListener("mousemove",ht),W.removeEventListener("mouseup",Ct),W.removeEventListener("touchmove",ht),W.removeEventListener("touchend",Ct)}}W.addEventListener("mousemove",ht),W.addEventListener("mouseup",Ct),W.addEventListener("touchmove",ht),W.addEventListener("touchend",Ct)}function lk(e,{handle:t,connectionMode:n,fromNodeId:i,fromHandleId:s,fromType:r,doc:l,lib:c,flowId:u,isValidConnection:f=ok,nodeLookup:p}){const m=r==="target",g=t?l.querySelector(`.${c}-flow__handle[data-id="${u}-${t==null?void 0:t.nodeId}-${t==null?void 0:t.id}-${t==null?void 0:t.type}"]`):null,{x:y,y:$}=wi(e),b=l.elementFromPoint(y,$),S=b!=null&&b.classList.contains(`${c}-flow__handle`)?b:g,O={handleDomNode:S,isValid:!1,connection:null,toHandle:null};if(S){const E=rk(void 0,S),k=S.getAttribute("data-nodeid"),D=S.getAttribute("data-handleid"),_=S.classList.contains("connectable"),A=S.classList.contains("connectableend");if(!k||!E)return O;const H={source:m?k:i,sourceHandle:m?D:s,target:m?i:k,targetHandle:m?s:D};O.connection=H;const W=_&&A&&(n===So.Strict?m&&E==="source"||!m&&E==="target":k!==i||D!==s);O.isValid=W&&f(H),O.toHandle=sk(k,E,D,p,n,!0)}return O}const F0={onPointerDown:C_,isValid:lk};function E_({domNode:e,panZoom:t,getTransform:n,getViewScale:i}){const s=Pn(e);function r({translateExtent:c,width:u,height:f,zoomStep:p=1,pannable:m=!0,zoomable:g=!0,inversePan:y=!1}){const $=k=>{if(k.sourceEvent.type!=="wheel"||!t)return;const D=n(),_=k.sourceEvent.ctrlKey&&Pc()?10:1,A=-k.sourceEvent.deltaY*(k.sourceEvent.deltaMode===1?.05:k.sourceEvent.deltaMode?1:.002)*p,H=D[2]*Math.pow(2,A*_);t.scaleTo(H)};let b=[0,0];const S=k=>{(k.sourceEvent.type==="mousedown"||k.sourceEvent.type==="touchstart")&&(b=[k.sourceEvent.clientX??k.sourceEvent.touches[0].clientX,k.sourceEvent.clientY??k.sourceEvent.touches[0].clientY])},O=k=>{const D=n();if(k.sourceEvent.type!=="mousemove"&&k.sourceEvent.type!=="touchmove"||!t)return;const _=[k.sourceEvent.clientX??k.sourceEvent.touches[0].clientX,k.sourceEvent.clientY??k.sourceEvent.touches[0].clientY],A=[_[0]-b[0],_[1]-b[1]];b=_;const H=i()*Math.max(D[2],Math.log(D[2]))*(y?-1:1),Y={x:D[0]-A[0]*H,y:D[1]-A[1]*H},W=[[0,0],[u,f]];t.setViewportConstrained({x:Y.x,y:Y.y,zoom:D[2]},W,c)},E=MO().on("start",S).on("zoom",m?O:null).on("zoom.wheel",g?$:null);s.call(E,{})}function l(){s.on("zoom",null)}return{update:r,destroy:l,pointer:pi}}const Pd=e=>({x:e.x,y:e.y,zoom:e.k}),Gg=({x:e,y:t,zoom:n})=>Gd.translate(e,t).scale(n),Rl=(e,t)=>e.target.closest(`.${t}`),ak=(e,t)=>t===2&&Array.isArray(e)&&e.includes(2),D_=e=>((e*=2)<=1?e*e*e:(e-=2)*e*e+2)/2,Lg=(e,t=0,n=D_,i=()=>{})=>{const s=typeof t=="number"&&t>0;return s||i(),s?e.transition().duration(t).ease(n).on("end",i):e},ck=e=>{const t=e.ctrlKey&&Pc()?10:1;return-e.deltaY*(e.deltaMode===1?.05:e.deltaMode?1:.002)*t};function T_({zoomPanValues:e,noWheelClassName:t,d3Selection:n,d3Zoom:i,panOnScrollMode:s,panOnScrollSpeed:r,zoomOnPinch:l,onPanZoomStart:c,onPanZoom:u,onPanZoomEnd:f}){return p=>{if(Rl(p,t))return p.ctrlKey&&p.preventDefault(),!1;p.preventDefault(),p.stopImmediatePropagation();const m=n.property("__zoom").k||1;if(p.ctrlKey&&l){const S=pi(p),O=ck(p),E=m*Math.pow(2,O);i.scaleTo(n,E,S,p);return}const g=p.deltaMode===1?20:1;let y=s===yo.Vertical?0:p.deltaX*g,$=s===yo.Horizontal?0:p.deltaY*g;!Pc()&&p.shiftKey&&s!==yo.Vertical&&(y=p.deltaY*g,$=0),i.translateBy(n,-(y/m)*r,-($/m)*r,{internal:!0});const b=Pd(n.property("__zoom"));clearTimeout(e.panScrollTimeout),e.isPanScrolling?u==null||u(p,b):(e.isPanScrolling=!0,c==null||c(p,b)),e.panScrollTimeout=setTimeout(()=>{f==null||f(p,b),e.isPanScrolling=!1},150)}}function N_({noWheelClassName:e,preventScrolling:t,d3ZoomHandler:n}){return function(i,s){const r=i.type==="wheel",l=!t&&r&&!i.ctrlKey,c=Rl(i,e);if(i.ctrlKey&&r&&c&&i.preventDefault(),l||c)return null;i.preventDefault(),n.call(this,i,s)}}function j_({zoomPanValues:e,onDraggingChange:t,onPanZoomStart:n}){return i=>{var r,l,c;if((r=i.sourceEvent)!=null&&r.internal)return;const s=Pd(i.transform);e.mouseButton=((l=i.sourceEvent)==null?void 0:l.button)||0,e.isZoomingOrPanning=!0,e.prevViewport=s,((c=i.sourceEvent)==null?void 0:c.type)==="mousedown"&&t(!0),n&&(n==null||n(i.sourceEvent,s))}}function R_({zoomPanValues:e,panOnDrag:t,onPaneContextMenu:n,onTransformChange:i,onPanZoom:s}){return r=>{var l,c;e.usedRightMouseButton=!!(n&&ak(t,e.mouseButton??0)),(l=r.sourceEvent)!=null&&l.sync||i([r.transform.x,r.transform.y,r.transform.k]),s&&!((c=r.sourceEvent)!=null&&c.internal)&&(s==null||s(r.sourceEvent,Pd(r.transform)))}}function __({zoomPanValues:e,panOnDrag:t,panOnScroll:n,onDraggingChange:i,onPanZoomEnd:s,onPaneContextMenu:r}){return l=>{var c;if(!((c=l.sourceEvent)!=null&&c.internal)&&(e.isZoomingOrPanning=!1,r&&ak(t,e.mouseButton??0)&&!e.usedRightMouseButton&&l.sourceEvent&&r(l.sourceEvent),e.usedRightMouseButton=!1,i(!1),s)){const u=Pd(l.transform);e.prevViewport=u,clearTimeout(e.timerId),e.timerId=setTimeout(()=>{s==null||s(l.sourceEvent,u)},n?150:0)}}}function M_({zoomActivationKeyPressed:e,zoomOnScroll:t,zoomOnPinch:n,panOnDrag:i,panOnScroll:s,zoomOnDoubleClick:r,userSelectionActive:l,noWheelClassName:c,noPanClassName:u,lib:f,connectionInProgress:p}){return m=>{var S;const g=e||t,y=n&&m.ctrlKey,$=m.type==="wheel";if(m.button===1&&m.type==="mousedown"&&(Rl(m,`${f}-flow__node`)||Rl(m,`${f}-flow__edge`)))return!0;if(!i&&!g&&!s&&!r&&!n||l||p&&!$||Rl(m,c)&&$||Rl(m,u)&&(!$||s&&$&&!e)||!n&&m.ctrlKey&&$)return!1;if(!n&&m.type==="touchstart"&&((S=m.touches)==null?void 0:S.length)>1)return m.preventDefault(),!1;if(!g&&!s&&!y&&$||!i&&(m.type==="mousedown"||m.type==="touchstart")||Array.isArray(i)&&!i.includes(m.button)&&m.type==="mousedown")return!1;const b=Array.isArray(i)&&i.includes(m.button)||!m.button||m.button<=1;return(!m.ctrlKey||$)&&b}}function A_({domNode:e,minZoom:t,maxZoom:n,translateExtent:i,viewport:s,onPanZoom:r,onPanZoomStart:l,onPanZoomEnd:c,onDraggingChange:u}){const f={isZoomingOrPanning:!1,usedRightMouseButton:!1,prevViewport:{},mouseButton:0,timerId:void 0,panScrollTimeout:void 0,isPanScrolling:!1},p=e.getBoundingClientRect();let m=[[0,0],[p.width,p.height]];const g=typeof ResizeObserver<"u"?new ResizeObserver(F=>{const M=F[0];M&&(m=[[0,0],[M.contentRect.width,M.contentRect.height]])}):null;g==null||g.observe(e);const y=MO().extent(()=>m).scaleExtent([t,n]).translateExtent(i),$=Pn(e).call(y);D({x:s.x,y:s.y,zoom:Xl(s.zoom,t,n)},[[0,0],[p.width,p.height]],i);const b=$.on("wheel.zoom"),S=$.on("dblclick.zoom");y.wheelDelta(ck);async function O(F,M){return $?new Promise(G=>{y==null||y.interpolate((M==null?void 0:M.interpolate)==="linear"?Tc:Df).transform(Lg($,M==null?void 0:M.duration,M==null?void 0:M.ease,()=>G(!0)),F)}):!1}function E({noWheelClassName:F,noPanClassName:M,onPaneContextMenu:G,userSelectionActive:T,panOnScroll:z,panOnDrag:Z,panOnScrollMode:Q,panOnScrollSpeed:et,preventScrolling:j,zoomOnPinch:R,zoomOnScroll:J,zoomOnDoubleClick:st,zoomActivationKeyPressed:ut,lib:ft,onTransformChange:dt,connectionInProgress:rt,paneClickDistance:ht,selectionOnDrag:Ct}){T&&!f.isZoomingOrPanning&&k();const Et=z&&!ut&&!T;y.clickDistance(Ct?1/0:!yi(ht)||ht<0?0:ht);const St=Et?T_({zoomPanValues:f,noWheelClassName:F,d3Selection:$,d3Zoom:y,panOnScrollMode:Q,panOnScrollSpeed:et,zoomOnPinch:R,onPanZoomStart:l,onPanZoom:r,onPanZoomEnd:c}):N_({noWheelClassName:F,preventScrolling:j,d3ZoomHandler:b});$.on("wheel.zoom",St,{passive:!1});const Ot=j_({zoomPanValues:f,onDraggingChange:u,onPanZoomStart:l});y.on("start",Ot);const Nt=R_({zoomPanValues:f,panOnDrag:Z,onPaneContextMenu:!!G,onPanZoom:r,onTransformChange:dt});y.on("zoom",Nt);const Yt=__({zoomPanValues:f,panOnDrag:Z,panOnScroll:z,onPaneContextMenu:G,onPanZoomEnd:c,onDraggingChange:u});y.on("end",Yt);const Qt=M_({zoomActivationKeyPressed:ut,panOnDrag:Z,zoomOnScroll:J,panOnScroll:z,zoomOnDoubleClick:st,zoomOnPinch:R,userSelectionActive:T,noPanClassName:M,noWheelClassName:F,lib:ft,connectionInProgress:rt});y.filter(Qt),st?$.on("dblclick.zoom",S):$.on("dblclick.zoom",null)}function k(){y.on("zoom",null)}async function D(F,M,G){const T=Gg(F),z=y==null?void 0:y.constrain()(T,M,G);return z&&await O(z),z}async function _(F,M){const G=Gg(F);return await O(G,M),G}function A(F){if($){const M=Gg(F),G=$.property("__zoom");(G.k!==F.zoom||G.x!==F.x||G.y!==F.y)&&(y==null||y.transform($,M,null,{sync:!0}))}}function H(){const F=$?_O($.node()):{x:0,y:0,k:1};return{x:F.x,y:F.y,zoom:F.k}}async function Y(F,M){return $?new Promise(G=>{y==null||y.interpolate((M==null?void 0:M.interpolate)==="linear"?Tc:Df).scaleTo(Lg($,M==null?void 0:M.duration,M==null?void 0:M.ease,()=>G(!0)),F)}):!1}async function W(F,M){return $?new Promise(G=>{y==null||y.interpolate((M==null?void 0:M.interpolate)==="linear"?Tc:Df).scaleBy(Lg($,M==null?void 0:M.duration,M==null?void 0:M.ease,()=>G(!0)),F)}):!1}function nt(F){y==null||y.scaleExtent(F)}function U(F){y==null||y.translateExtent(F)}function P(F){const M=!yi(F)||F<0?0:F;y==null||y.clickDistance(M)}return{update:E,destroy:k,setViewport:_,setViewportConstrained:D,getViewport:H,scaleTo:Y,scaleBy:W,setScaleExtent:nt,setTranslateExtent:U,syncViewport:A,setClickDistance:P}}var Eo;(function(e){e.Line="line",e.Handle="handle"})(Eo||(Eo={}));const H_=["top-left","top-right","bottom-left","bottom-right"],z_=["top","right","bottom","left"];function B_({width:e,prevWidth:t,height:n,prevHeight:i,affectsX:s,affectsY:r}){const l=e-t,c=n-i,u=[l>0?1:l<0?-1:0,c>0?1:c<0?-1:0];return l&&s&&(u[0]=u[0]*-1),c&&r&&(u[1]=u[1]*-1),u}function Tb(e){const t=e.includes("right")||e.includes("left"),n=e.includes("bottom")||e.includes("top"),i=e.includes("left"),s=e.includes("top");return{isHorizontal:t,isVertical:n,affectsX:i,affectsY:s}}function cr(e,t){return Math.max(0,t-e)}function ur(e,t){return Math.max(0,e-t)}function Xh(e,t,n){return Math.max(0,t-e,e-n)}function Nb(e,t){return e?!t:t}function Y_(e,t,n,i,s,r,l,c){let{affectsX:u,affectsY:f}=t;const{isHorizontal:p,isVertical:m}=t,g=p&&m,{xSnapped:y,ySnapped:$}=n,{minWidth:b,maxWidth:S,minHeight:O,maxHeight:E}=i,{x:k,y:D,width:_,height:A,aspectRatio:H}=e;let Y=Math.floor(p?y-e.pointerX:0),W=Math.floor(m?$-e.pointerY:0);const nt=_+(u?-Y:Y),U=A+(f?-W:W),P=-r[0]*_,F=-r[1]*A;let M=Xh(nt,b,S),G=Xh(U,O,E);if(l){let Z=0,Q=0;u&&Y<0?Z=cr(k+Y+P,l[0][0]):!u&&Y>0&&(Z=ur(k+nt+P,l[1][0])),f&&W<0?Q=cr(D+W+F,l[0][1]):!f&&W>0&&(Q=ur(D+U+F,l[1][1])),M=Math.max(M,Z),G=Math.max(G,Q)}if(c){let Z=0,Q=0;u&&Y>0?Z=ur(k+Y,c[0][0]):!u&&Y<0&&(Z=cr(k+nt,c[1][0])),f&&W>0?Q=ur(D+W,c[0][1]):!f&&W<0&&(Q=cr(D+U,c[1][1])),M=Math.max(M,Z),G=Math.max(G,Q)}if(s){if(p){const Z=Xh(nt/H,O,E)*H;if(M=Math.max(M,Z),l){let Q=0;!u&&!f||u&&!f&&g?Q=ur(D+F+nt/H,l[1][1])*H:Q=cr(D+F+(u?Y:-Y)/H,l[0][1])*H,M=Math.max(M,Q)}if(c){let Q=0;!u&&!f||u&&!f&&g?Q=cr(D+nt/H,c[1][1])*H:Q=ur(D+(u?Y:-Y)/H,c[0][1])*H,M=Math.max(M,Q)}}if(m){const Z=Xh(U*H,b,S)/H;if(G=Math.max(G,Z),l){let Q=0;!u&&!f||f&&!u&&g?Q=ur(k+U*H+P,l[1][0])/H:Q=cr(k+(f?W:-W)*H+P,l[0][0])/H,G=Math.max(G,Q)}if(c){let Q=0;!u&&!f||f&&!u&&g?Q=cr(k+U*H,c[1][0])/H:Q=ur(k+(f?W:-W)*H,c[0][0])/H,G=Math.max(G,Q)}}}W=W+(W<0?G:-G),Y=Y+(Y<0?M:-M),s&&(g?nt>U*H?W=(Nb(u,f)?-Y:Y)/H:Y=(Nb(u,f)?-W:W)*H:p?(W=Y/H,f=u):(Y=W*H,u=f));const T=u?k+Y:k,z=f?D+W:D;return{width:_+(u?-Y:Y),height:A+(f?-W:W),x:r[0]*Y*(u?-1:1)+T,y:r[1]*W*(f?-1:1)+z}}const uk={width:0,height:0,x:0,y:0},G_={...uk,pointerX:0,pointerY:0,aspectRatio:1};function L_(e,t,n){const i=t.position.x+e.position.x,s=t.position.y+e.position.y,r=e.measured.width??0,l=e.measured.height??0,c=n[0]*r,u=n[1]*l;return[[i-c,s-u],[i+r-c,s+l-u]]}function Q_({domNode:e,nodeId:t,getStoreItems:n,onChange:i,onEnd:s}){const r=Pn(e);let l={controlDirection:Tb("bottom-right"),boundaries:{minWidth:0,minHeight:0,maxWidth:Number.MAX_VALUE,maxHeight:Number.MAX_VALUE},resizeDirection:void 0,keepAspectRatio:!1};function c({controlPosition:f,boundaries:p,keepAspectRatio:m,resizeDirection:g,onResizeStart:y,onResize:$,onResizeEnd:b,shouldResize:S}){let O={...uk},E={...G_};l={boundaries:p,resizeDirection:g,keepAspectRatio:m,controlDirection:Tb(f)};let k,D=null,_=[],A,H,Y,W=!1;const nt=wO().on("start",U=>{const{nodeLookup:P,transform:F,snapGrid:M,snapToGrid:G,nodeOrigin:T,paneDomNode:z}=n();if(k=P.get(t),!k)return;D=(z==null?void 0:z.getBoundingClientRect())??null;const{xSnapped:Z,ySnapped:Q}=Nc(U.sourceEvent,{transform:F,snapGrid:M,snapToGrid:G,containerBounds:D});O={width:k.measured.width??0,height:k.measured.height??0,x:k.position.x??0,y:k.position.y??0},E={...O,pointerX:Z,pointerY:Q,aspectRatio:O.width/O.height},A=void 0,H=ko(k.extent)?k.extent:void 0,k.parentId&&(k.extent==="parent"||k.expandParent)&&(A=P.get(k.parentId)),A&&k.extent==="parent"&&(H=[[0,0],[A.measured.width,A.measured.height]]),_=[],Y=void 0;for(const[et,j]of P)if(j.parentId===t&&(_.push({id:et,position:{...j.position},extent:j.extent}),j.extent==="parent"||j.expandParent)){const R=L_(j,k,j.origin??T);Y?Y=[[Math.min(R[0][0],Y[0][0]),Math.min(R[0][1],Y[0][1])],[Math.max(R[1][0],Y[1][0]),Math.max(R[1][1],Y[1][1])]]:Y=R}y==null||y(U,{...O})}).on("drag",U=>{const{transform:P,snapGrid:F,snapToGrid:M,nodeOrigin:G}=n(),T=Nc(U.sourceEvent,{transform:P,snapGrid:F,snapToGrid:M,containerBounds:D}),z=[];if(!k)return;const{x:Z,y:Q,width:et,height:j}=O,R={},J=k.origin??G,{width:st,height:ut,x:ft,y:dt}=Y_(E,l.controlDirection,T,l.boundaries,l.keepAspectRatio,J,H,Y),rt=st!==et,ht=ut!==j,Ct=ft!==Z&&rt,Et=dt!==Q&&ht;if(!Ct&&!Et&&!rt&&!ht)return;if((Ct||Et||J[0]===1||J[1]===1)&&(R.x=Ct?ft:O.x,R.y=Et?dt:O.y,O.x=R.x,O.y=R.y,_.length>0)){const Yt=ft-Z,Qt=dt-Q;for(const fe of _)fe.position={x:fe.position.x-Yt+J[0]*(st-et),y:fe.position.y-Qt+J[1]*(ut-j)},z.push(fe)}if((rt||ht)&&(R.width=rt&&(!l.resizeDirection||l.resizeDirection==="horizontal")?st:O.width,R.height=ht&&(!l.resizeDirection||l.resizeDirection==="vertical")?ut:O.height,O.width=R.width,O.height=R.height),A&&k.expandParent){const Yt=J[0]*(R.width??0);R.x&&R.x<Yt&&(O.x=Yt,E.x=E.x-(R.x-Yt));const Qt=J[1]*(R.height??0);R.y&&R.y<Qt&&(O.y=Qt,E.y=E.y-(R.y-Qt))}const St=B_({width:O.width,prevWidth:et,height:O.height,prevHeight:j,affectsX:l.controlDirection.affectsX,affectsY:l.controlDirection.affectsY}),Ot={...O,direction:St};(S==null?void 0:S(U,Ot))!==!1&&(W=!0,$==null||$(U,Ot),i(R,z))}).on("end",U=>{W&&(b==null||b(U,{...O}),s==null||s({...O}),W=!1)});r.call(nt)}function u(){r.on(".drag",null)}return{update:c,destroy:u}}var Qg={exports:{}},Pg={},qg={exports:{}},Wg={};/**
51
+ * @license React
52
+ * use-sync-external-store-shim.production.js
53
+ *
54
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
55
+ *
56
+ * This source code is licensed under the MIT license found in the
57
+ * LICENSE file in the root directory of this source tree.
58
+ */var jb;function P_(){if(jb)return Wg;jb=1;var e=cu();function t(m,g){return m===g&&(m!==0||1/m===1/g)||m!==m&&g!==g}var n=typeof Object.is=="function"?Object.is:t,i=e.useState,s=e.useEffect,r=e.useLayoutEffect,l=e.useDebugValue;function c(m,g){var y=g(),$=i({inst:{value:y,getSnapshot:g}}),b=$[0].inst,S=$[1];return r(function(){b.value=y,b.getSnapshot=g,u(b)&&S({inst:b})},[m,y,g]),s(function(){return u(b)&&S({inst:b}),m(function(){u(b)&&S({inst:b})})},[m]),l(y),y}function u(m){var g=m.getSnapshot;m=m.value;try{var y=g();return!n(m,y)}catch{return!0}}function f(m,g){return g()}var p=typeof window>"u"||typeof window.document>"u"||typeof window.document.createElement>"u"?f:c;return Wg.useSyncExternalStore=e.useSyncExternalStore!==void 0?e.useSyncExternalStore:p,Wg}var Rb;function q_(){return Rb||(Rb=1,qg.exports=P_()),qg.exports}/**
59
+ * @license React
60
+ * use-sync-external-store-shim/with-selector.production.js
61
+ *
62
+ * Copyright (c) Meta Platforms, Inc. and affiliates.
63
+ *
64
+ * This source code is licensed under the MIT license found in the
65
+ * LICENSE file in the root directory of this source tree.
66
+ */var _b;function W_(){if(_b)return Pg;_b=1;var e=cu(),t=q_();function n(f,p){return f===p&&(f!==0||1/f===1/p)||f!==f&&p!==p}var i=typeof Object.is=="function"?Object.is:n,s=t.useSyncExternalStore,r=e.useRef,l=e.useEffect,c=e.useMemo,u=e.useDebugValue;return Pg.useSyncExternalStoreWithSelector=function(f,p,m,g,y){var $=r(null);if($.current===null){var b={hasValue:!1,value:null};$.current=b}else b=$.current;$=c(function(){function O(A){if(!E){if(E=!0,k=A,A=g(A),y!==void 0&&b.hasValue){var H=b.value;if(y(H,A))return D=H}return D=A}if(H=D,i(k,A))return H;var Y=g(A);return y!==void 0&&y(H,Y)?(k=A,H):(k=A,D=Y)}var E=!1,k,D,_=m===void 0?null:m;return[function(){return O(p())},_===null?void 0:function(){return O(_())}]},[p,m,g,y]);var S=s(f,$[0],$[1]);return l(function(){b.hasValue=!0,b.value=S},[S]),u(S),S},Pg}var Mb;function Z_(){return Mb||(Mb=1,Qg.exports=W_()),Qg.exports}var U_=Z_();const I_=nO(U_),F_={},Ab=e=>{let t;const n=new Set,i=(p,m)=>{const g=typeof p=="function"?p(t):p;if(!Object.is(g,t)){const y=t;t=m??(typeof g!="object"||g===null)?g:Object.assign({},t,g),n.forEach($=>$(t,y))}},s=()=>t,u={setState:i,getState:s,getInitialState:()=>f,subscribe:p=>(n.add(p),()=>n.delete(p)),destroy:()=>{(F_?"production":void 0)!=="production"&&console.warn("[DEPRECATED] The `destroy` method will be unsupported in a future version. Instead use unsubscribe function returned by subscribe. Everything will be garbage-collected if store is garbage-collected."),n.clear()}},f=t=e(i,s,u);return u},V_=e=>e?Ab(e):Ab,{useDebugValue:X_}=vc,{useSyncExternalStoreWithSelector:K_}=I_,J_=e=>e;function hk(e,t=J_,n){const i=K_(e.subscribe,e.getState,e.getServerState||e.getInitialState,t,n);return X_(i),i}const Hb=(e,t)=>{const n=V_(e),i=(s,r=t)=>hk(n,s,r);return Object.assign(i,n),i},tM=(e,t)=>e?Hb(e,t):Hb;function ge(e,t){if(Object.is(e,t))return!0;if(typeof e!="object"||e===null||typeof t!="object"||t===null)return!1;if(e instanceof Map&&t instanceof Map){if(e.size!==t.size)return!1;for(const[i,s]of e)if(!Object.is(s,t.get(i)))return!1;return!0}if(e instanceof Set&&t instanceof Set){if(e.size!==t.size)return!1;for(const i of e)if(!t.has(i))return!1;return!0}const n=Object.keys(e);if(n.length!==Object.keys(t).length)return!1;for(const i of n)if(!Object.prototype.hasOwnProperty.call(t,i)||!Object.is(e[i],t[i]))return!1;return!0}var fk=iO();const qd=L.createContext(null),eM=qd.Provider,dk=xi.error001("react");function qt(e,t){const n=L.useContext(qd);if(n===null)throw new Error(dk);return hk(n,e,t)}function he(){const e=L.useContext(qd);if(e===null)throw new Error(dk);return L.useMemo(()=>({getState:e.getState,setState:e.setState,subscribe:e.subscribe}),[e])}const zb={display:"none"},nM={position:"absolute",width:1,height:1,margin:-1,border:0,padding:0,overflow:"hidden",clip:"rect(0px, 0px, 0px, 0px)",clipPath:"inset(100%)"},pk="react-flow__node-desc",mk="react-flow__edge-desc",iM="react-flow__aria-live",sM=e=>e.ariaLiveMessage,rM=e=>e.ariaLabelConfig;function oM({rfId:e}){const t=qt(sM);return v.jsx("div",{id:`${iM}-${e}`,"aria-live":"assertive","aria-atomic":"true",style:nM,children:t})}function lM({rfId:e,disableKeyboardA11y:t}){const n=qt(rM);return v.jsxs(v.Fragment,{children:[v.jsx("div",{id:`${pk}-${e}`,style:zb,children:t?n["node.a11yDescription.default"]:n["node.a11yDescription.keyboardDisabled"]}),v.jsx("div",{id:`${mk}-${e}`,style:zb,children:n["edge.a11yDescription.default"]}),!t&&v.jsx(oM,{rfId:e})]})}const Wd=L.forwardRef(({position:e="top-left",children:t,className:n,style:i,...s},r)=>{const l=`${e}`.split("-");return v.jsx("div",{className:Re(["react-flow__panel",n,...l]),style:i,ref:r,...s,children:t})});Wd.displayName="Panel";const Bb="https://reactflow.dev?utm_source=attribution";function aM({proOptions:e,position:t="bottom-right"}){return e!=null&&e.hideAttribution?null:v.jsx(Wd,{position:t,className:"react-flow__attribution","data-message":`Please only hide this attribution when you are subscribed to React Flow Pro: ${Bb}`,children:v.jsx("a",{href:Bb,target:"_blank",rel:"noopener noreferrer","aria-label":"React Flow attribution",children:"React Flow"})})}const cM=e=>{const t=[],n=[];for(const[,i]of e.nodeLookup)i.selected&&t.push(i.internals.userNode);for(const[,i]of e.edgeLookup)i.selected&&n.push(i);return{selectedNodes:t,selectedEdges:n}},Kh=e=>e.id;function uM(e,t){return ge(e.selectedNodes.map(Kh),t.selectedNodes.map(Kh))&&ge(e.selectedEdges.map(Kh),t.selectedEdges.map(Kh))}function hM({onSelectionChange:e}){const t=he(),{selectedNodes:n,selectedEdges:i}=qt(cM,uM);return L.useEffect(()=>{const s={nodes:n,edges:i};e==null||e(s),t.getState().onSelectionChangeHandlers.forEach(r=>r(s))},[n,i,e]),null}const fM=e=>!!e.onSelectionChangeHandlers;function dM({onSelectionChange:e}){const t=qt(fM);return e||t?v.jsx(hM,{onSelectionChange:e}):null}const gk=[0,0],pM={x:0,y:0,zoom:1},mM=["nodes","edges","defaultNodes","defaultEdges","onConnect","onConnectStart","onConnectEnd","onClickConnectStart","onClickConnectEnd","nodesDraggable","autoPanOnNodeFocus","nodesConnectable","nodesFocusable","edgesFocusable","edgesReconnectable","elevateNodesOnSelect","elevateEdgesOnSelect","minZoom","maxZoom","nodeExtent","onNodesChange","onEdgesChange","elementsSelectable","connectionMode","snapGrid","snapToGrid","translateExtent","connectOnClick","defaultEdgeOptions","fitView","fitViewOptions","onNodesDelete","onEdgesDelete","onDelete","onNodeDrag","onNodeDragStart","onNodeDragStop","onSelectionDrag","onSelectionDragStart","onSelectionDragStop","onMoveStart","onMove","onMoveEnd","noPanClassName","nodeOrigin","autoPanOnConnect","autoPanOnNodeDrag","onError","connectionRadius","isValidConnection","selectNodesOnDrag","nodeDragThreshold","connectionDragThreshold","onBeforeDelete","debug","autoPanSpeed","ariaLabelConfig","zIndexMode"],Yb=[...mM,"rfId"],gM=e=>({setNodes:e.setNodes,setEdges:e.setEdges,setMinZoom:e.setMinZoom,setMaxZoom:e.setMaxZoom,setTranslateExtent:e.setTranslateExtent,setNodeExtent:e.setNodeExtent,reset:e.reset,setDefaultNodesAndEdges:e.setDefaultNodesAndEdges}),Gb={translateExtent:Lc,nodeOrigin:gk,minZoom:.5,maxZoom:2,elementsSelectable:!0,noPanClassName:"nopan",rfId:"1"};function yM(e){const{setNodes:t,setEdges:n,setMinZoom:i,setMaxZoom:s,setTranslateExtent:r,setNodeExtent:l,reset:c,setDefaultNodesAndEdges:u}=qt(gM,ge),f=he();L.useEffect(()=>(u(e.defaultNodes,e.defaultEdges),()=>{p.current=Gb,c()}),[]);const p=L.useRef(Gb);return L.useEffect(()=>{for(const m of Yb){const g=e[m],y=p.current[m];g!==y&&(typeof e[m]>"u"||(m==="nodes"?t(g):m==="edges"?n(g):m==="minZoom"?i(g):m==="maxZoom"?s(g):m==="translateExtent"?r(g):m==="nodeExtent"?l(g):m==="ariaLabelConfig"?f.setState({ariaLabelConfig:JR(g)}):m==="fitView"?f.setState({fitViewQueued:g}):m==="fitViewOptions"?f.setState({fitViewOptions:g}):f.setState({[m]:g})))}p.current=e},Yb.map(m=>e[m])),null}function Lb(){return typeof window>"u"||!window.matchMedia?null:window.matchMedia("(prefers-color-scheme: dark)")}function wM(e){var i;const[t,n]=L.useState(e==="system"?null:e);return L.useEffect(()=>{if(e!=="system"){n(e);return}const s=Lb(),r=()=>n(s!=null&&s.matches?"dark":"light");return r(),s==null||s.addEventListener("change",r),()=>{s==null||s.removeEventListener("change",r)}},[e]),t!==null?t:(i=Lb())!=null&&i.matches?"dark":"light"}const Qb=typeof document<"u"?document:null;function qc(e=null,t={target:Qb,actInsideInputWithModifier:!0}){const[n,i]=L.useState(!1),s=L.useRef(!1),r=L.useRef(new Set([])),[l,c]=L.useMemo(()=>{if(e!==null){const f=(Array.isArray(e)?e:[e]).filter(m=>typeof m=="string").map(m=>m.replace("+",`
67
+ `).replace(`
68
+
69
+ `,`
70
+ +`).split(`
71
+ `)),p=f.reduce((m,g)=>m.concat(...g),[]);return[f,p]}return[[],[]]},[e]);return L.useEffect(()=>{const u=(t==null?void 0:t.target)??Qb,f=(t==null?void 0:t.actInsideInputWithModifier)??!0;if(e!==null){const p=y=>{var S,O;if(s.current=y.ctrlKey||y.metaKey||y.shiftKey||y.altKey,(!s.current||s.current&&!f)&&IO(y))return!1;const b=qb(y.code,c);if(r.current.add(y[b]),Pb(l,r.current,!1)){const E=((O=(S=y.composedPath)==null?void 0:S.call(y))==null?void 0:O[0])||y.target,k=(E==null?void 0:E.nodeName)==="BUTTON"||(E==null?void 0:E.nodeName)==="A";t.preventDefault!==!1&&(s.current||!k)&&y.preventDefault(),i(!0)}},m=y=>{const $=qb(y.code,c);Pb(l,r.current,!0)?(i(!1),r.current.clear()):r.current.delete(y[$]),y.key==="Meta"&&r.current.clear(),s.current=!1},g=()=>{r.current.clear(),i(!1)};return u==null||u.addEventListener("keydown",p),u==null||u.addEventListener("keyup",m),window.addEventListener("blur",g),window.addEventListener("contextmenu",g),()=>{u==null||u.removeEventListener("keydown",p),u==null||u.removeEventListener("keyup",m),window.removeEventListener("blur",g),window.removeEventListener("contextmenu",g)}}},[e,i]),n}function Pb(e,t,n){return e.filter(i=>n||i.length===t.size).some(i=>i.every(s=>t.has(s)))}function qb(e,t){return t.includes(e)?"code":"key"}const $M=()=>{const e=he();return L.useMemo(()=>({zoomIn:async t=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1.2,t):!1},zoomOut:async t=>{const{panZoom:n}=e.getState();return n?n.scaleBy(1/1.2,t):!1},zoomTo:async(t,n)=>{const{panZoom:i}=e.getState();return i?i.scaleTo(t,n):!1},getZoom:()=>e.getState().transform[2],setViewport:async(t,n)=>{const{transform:[i,s,r],panZoom:l}=e.getState();return l?(await l.setViewport({x:t.x??i,y:t.y??s,zoom:t.zoom??r},n),!0):!1},getViewport:()=>{const[t,n,i]=e.getState().transform;return{x:t,y:n,zoom:i}},setCenter:async(t,n,i)=>e.getState().setCenter(t,n,i),fitBounds:async(t,n)=>{const{width:i,height:s,minZoom:r,maxZoom:l,panZoom:c}=e.getState(),u=sw(t,i,s,r,l,(n==null?void 0:n.padding)??.1);return c?(await c.setViewport(u,{duration:n==null?void 0:n.duration,ease:n==null?void 0:n.ease,interpolate:n==null?void 0:n.interpolate}),!0):!1},screenToFlowPosition:(t,n={})=>{const{transform:i,snapGrid:s,snapToGrid:r,domNode:l}=e.getState();if(!l)return t;const{x:c,y:u}=l.getBoundingClientRect(),f={x:t.x-c,y:t.y-u},p=n.snapGrid??s,m=n.snapToGrid??r;return mu(f,i,m,p)},flowToScreenPosition:t=>{const{transform:n,domNode:i}=e.getState();if(!i)return t;const{x:s,y:r}=i.getBoundingClientRect(),l=Kl(t,n);return{x:l.x+s,y:l.y+r}}}),[])};function yk(e,t){const n=[],i=new Map,s=[];for(const r of e)if(r.type==="add"){s.push(r);continue}else if(r.type==="remove"||r.type==="replace")i.set(r.id,[r]);else{const l=i.get(r.id);l?l.push(r):i.set(r.id,[r])}for(const r of t){const l=i.get(r.id);if(!l){n.push(r);continue}if(l[0].type==="remove")continue;if(l[0].type==="replace"){n.push({...l[0].item});continue}const c={...r};for(const u of l)xM(u,c);n.push(c)}return s.length&&s.forEach(r=>{r.index!==void 0?n.splice(r.index,0,{...r.item}):n.push({...r.item})}),n}function xM(e,t){switch(e.type){case"select":{t.selected=e.selected;break}case"position":{typeof e.position<"u"&&(t.position=e.position),typeof e.dragging<"u"&&(t.dragging=e.dragging);break}case"dimensions":{typeof e.dimensions<"u"&&(t.measured={...e.dimensions},e.setAttributes&&((e.setAttributes===!0||e.setAttributes==="width")&&(t.width=e.dimensions.width),(e.setAttributes===!0||e.setAttributes==="height")&&(t.height=e.dimensions.height))),typeof e.resizing=="boolean"&&(t.resizing=e.resizing);break}}}function wk(e,t){return yk(e,t)}function $k(e,t){return yk(e,t)}function oo(e,t){return{id:e,type:"select",selected:t}}function _l(e,t=new Set,n=!1){const i=[];for(const[s,r]of e){const l=t.has(s);!(r.selected===void 0&&!l)&&r.selected!==l&&(n&&(r.selected=l),i.push(oo(r.id,l)))}return i}function Wb({items:e=[],lookup:t}){var s;const n=[],i=new Map(e.map(r=>[r.id,r]));for(const[r,l]of e.entries()){const c=t.get(l.id),u=((s=c==null?void 0:c.internals)==null?void 0:s.userNode)??c;u!==void 0&&u!==l&&n.push({id:l.id,item:l,type:"replace"}),u===void 0&&n.push({item:l,type:"add",index:r})}for(const[r]of t)i.get(r)===void 0&&n.push({id:r,type:"remove"});return n}function Zb(e){return{id:e.id,type:"remove"}}const bM=qO();function vM(e,t,n={}){return r_(e,t,{...n,onError:n.onError??bM})}const Ub=e=>qR(e),SM=e=>YO(e);function xk(e){return L.forwardRef(e)}const bk=typeof window<"u"?L.useLayoutEffect:L.useEffect;function Ib(e){const[t,n]=L.useState(BigInt(0)),[i]=L.useState(()=>OM(()=>n(s=>s+BigInt(1))));return bk(()=>{const s=i.get();s.length&&(e(s),i.reset())},[t]),i}function OM(e){let t=[];return{get:()=>t,reset:()=>{t=[]},push:n=>{t.push(n),e()}}}const vk=L.createContext(null);function kM({children:e}){const t=he(),n=L.useCallback(c=>{const{nodes:u=[],setNodes:f,hasDefaultNodes:p,onNodesChange:m,nodeLookup:g,fitViewQueued:y,onNodesChangeMiddlewareMap:$}=t.getState();let b=u;for(const O of c)b=typeof O=="function"?O(b):O;let S=Wb({items:b,lookup:g});for(const O of $.values())S=O(S);p&&f(b),S.length>0?m==null||m(S):y&&window.requestAnimationFrame(()=>{const{fitViewQueued:O,nodes:E,setNodes:k}=t.getState();O&&k(E)})},[]),i=Ib(n),s=L.useCallback(c=>{const{edges:u=[],setEdges:f,hasDefaultEdges:p,onEdgesChange:m,edgeLookup:g}=t.getState();let y=u;for(const $ of c)y=typeof $=="function"?$(y):$;p?f(y):m&&m(Wb({items:y,lookup:g}))},[]),r=Ib(s),l=L.useMemo(()=>({nodeQueue:i,edgeQueue:r}),[]);return v.jsx(vk.Provider,{value:l,children:e})}function CM(){const e=L.useContext(vk);if(!e)throw new Error("useBatchContext must be used within a BatchProvider");return e}const EM=e=>!!e.panZoom;function ua(){const e=$M(),t=he(),n=CM(),i=qt(EM),s=L.useMemo(()=>{const r=m=>t.getState().nodeLookup.get(m),l=m=>{n.nodeQueue.push(m)},c=m=>{n.edgeQueue.push(m)},u=m=>{var O,E;const{nodeLookup:g,nodeOrigin:y}=t.getState(),$=Ub(m)?m:g.get(m.id),b=$.parentId?ZO($.position,$.measured,$.parentId,g,y):$.position,S={...$,position:b,width:((O=$.measured)==null?void 0:O.width)??$.width,height:((E=$.measured)==null?void 0:E.height)??$.height};return Qc(S)},f=(m,g,y={replace:!1})=>{l($=>$.map(b=>{if(b.id===m){const S=typeof g=="function"?g(b):g;return y.replace&&Ub(S)?S:{...b,...S}}return b}))},p=(m,g,y={replace:!1})=>{c($=>$.map(b=>{if(b.id===m){const S=typeof g=="function"?g(b):g;return y.replace&&SM(S)?S:{...b,...S}}return b}))};return{getNodes:()=>t.getState().nodes.map(m=>({...m})),getNode:m=>{var g;return(g=r(m))==null?void 0:g.internals.userNode},getInternalNode:r,getEdges:()=>{const{edges:m=[]}=t.getState();return m.map(g=>({...g}))},getEdge:m=>t.getState().edgeLookup.get(m),setNodes:l,setEdges:c,addNodes:m=>{const g=Array.isArray(m)?m:[m];n.nodeQueue.push(y=>[...y,...g])},addEdges:m=>{const g=Array.isArray(m)?m:[m];n.edgeQueue.push(y=>[...y,...g])},toObject:()=>{const{nodes:m=[],edges:g=[],transform:y}=t.getState(),[$,b,S]=y;return{nodes:m.map(O=>({...O})),edges:g.map(O=>({...O})),viewport:{x:$,y:b,zoom:S}}},deleteElements:async({nodes:m=[],edges:g=[]})=>{const{nodes:y,edges:$,onNodesDelete:b,onEdgesDelete:S,triggerNodeChanges:O,triggerEdgeChanges:E,onDelete:k,onBeforeDelete:D}=t.getState(),{nodes:_,edges:A}=await FR({nodesToRemove:m,edgesToRemove:g,nodes:y,edges:$,onBeforeDelete:D}),H=A.length>0,Y=_.length>0;if(H){const W=A.map(Zb);S==null||S(A),E(W)}if(Y){const W=_.map(Zb);b==null||b(_),O(W)}return(Y||H)&&(k==null||k({nodes:_,edges:A})),{deletedNodes:_,deletedEdges:A}},getIntersectingNodes:(m,g=!0,y)=>{const $=wb(m),b=$?m:u(m),S=y!==void 0;return b?(y||t.getState().nodes).filter(O=>{const E=t.getState().nodeLookup.get(O.id);if(E&&!$&&(O.id===m.id||!E.internals.positionAbsolute))return!1;const k=Qc(S?O:E),D=Xf(k,b);return g&&D>0||D>=k.width*k.height||D>=b.width*b.height}):[]},isNodeIntersecting:(m,g,y=!0)=>{const b=wb(m)?m:u(m);if(!b)return!1;const S=Xf(b,g);return y&&S>0||S>=g.width*g.height||S>=b.width*b.height},updateNode:f,updateNodeData:(m,g,y={replace:!1})=>{f(m,$=>{const b=typeof g=="function"?g($):g;return y.replace?{...$,data:b}:{...$,data:{...$.data,...b}}},y)},updateEdge:p,updateEdgeData:(m,g,y={replace:!1})=>{p(m,$=>{const b=typeof g=="function"?g($):g;return y.replace?{...$,data:b}:{...$,data:{...$.data,...b}}},y)},getNodesBounds:m=>{const{nodeLookup:g,nodeOrigin:y}=t.getState();return WR(m,{nodeLookup:g,nodeOrigin:y})},getHandleConnections:({type:m,id:g,nodeId:y})=>{var $;return Array.from((($=t.getState().connectionLookup.get(`${y}-${m}${g?`-${g}`:""}`))==null?void 0:$.values())??[])},getNodeConnections:({type:m,handleId:g,nodeId:y})=>{var $;return Array.from((($=t.getState().connectionLookup.get(`${y}${m?g?`-${m}-${g}`:`-${m}`:""}`))==null?void 0:$.values())??[])},fitView:async m=>{const g=t.getState().fitViewResolver??KR();return t.setState({fitViewQueued:!0,fitViewOptions:m,fitViewResolver:g}),n.nodeQueue.push(y=>[...y]),g.promise}}},[]);return L.useMemo(()=>({...s,...e,viewportInitialized:i}),[i])}const Fb=e=>e.selected,DM=typeof window<"u"?window:void 0;function TM({deleteKeyCode:e,multiSelectionKeyCode:t}){const n=he(),{deleteElements:i}=ua(),s=qc(e,{actInsideInputWithModifier:!1}),r=qc(t,{target:DM});L.useEffect(()=>{if(s){const{edges:l,nodes:c}=n.getState();i({nodes:c.filter(Fb),edges:l.filter(Fb)}),n.setState({nodesSelectionActive:!1})}},[s]),L.useEffect(()=>{n.setState({multiSelectionActive:r})},[r])}function NM(e){const t=he();L.useEffect(()=>{const n=()=>{var s,r,l,c;if(!e.current||!(((r=(s=e.current).checkVisibility)==null?void 0:r.call(s))??!0))return!1;const i=rw(e.current);(i.height===0||i.width===0)&&((c=(l=t.getState()).onError)==null||c.call(l,"004",xi.error004())),t.setState({width:i.width||500,height:i.height||500})};if(e.current){n(),window.addEventListener("resize",n);const i=new ResizeObserver(()=>n());return i.observe(e.current),()=>{window.removeEventListener("resize",n),i&&e.current&&i.unobserve(e.current)}}},[])}const Zd={position:"absolute",width:"100%",height:"100%",top:0,left:0},jM=e=>({userSelectionActive:e.userSelectionActive,lib:e.lib,connectionInProgress:e.connection.inProgress});function RM({onPaneContextMenu:e,zoomOnScroll:t=!0,zoomOnPinch:n=!0,panOnScroll:i=!1,panOnScrollSpeed:s=.5,panOnScrollMode:r=yo.Free,zoomOnDoubleClick:l=!0,panOnDrag:c=!0,defaultViewport:u,translateExtent:f,minZoom:p,maxZoom:m,zoomActivationKeyCode:g,preventScrolling:y=!0,children:$,noWheelClassName:b,noPanClassName:S,onViewportChange:O,isControlledViewport:E,paneClickDistance:k,selectionOnDrag:D}){const _=he(),A=L.useRef(null),{userSelectionActive:H,lib:Y,connectionInProgress:W}=qt(jM,ge),nt=qc(g),U=L.useRef();NM(A);const P=L.useCallback(F=>{O==null||O({x:F[0],y:F[1],zoom:F[2]}),E||_.setState({transform:F})},[O,E]);return L.useEffect(()=>{if(A.current){U.current=A_({domNode:A.current,minZoom:p,maxZoom:m,translateExtent:f,viewport:u,onDraggingChange:T=>_.setState(z=>z.paneDragging===T?z:{paneDragging:T}),onPanZoomStart:(T,z)=>{const{onViewportChangeStart:Z,onMoveStart:Q}=_.getState();Q==null||Q(T,z),Z==null||Z(z)},onPanZoom:(T,z)=>{const{onViewportChange:Z,onMove:Q}=_.getState();Q==null||Q(T,z),Z==null||Z(z)},onPanZoomEnd:(T,z)=>{const{onViewportChangeEnd:Z,onMoveEnd:Q}=_.getState();Q==null||Q(T,z),Z==null||Z(z)}});const{x:F,y:M,zoom:G}=U.current.getViewport();return _.setState({panZoom:U.current,transform:[F,M,G],domNode:A.current.closest(".react-flow")}),()=>{var T;(T=U.current)==null||T.destroy()}}},[]),L.useEffect(()=>{var F;(F=U.current)==null||F.update({onPaneContextMenu:e,zoomOnScroll:t,zoomOnPinch:n,panOnScroll:i,panOnScrollSpeed:s,panOnScrollMode:r,zoomOnDoubleClick:l,panOnDrag:c,zoomActivationKeyPressed:nt,preventScrolling:y,noPanClassName:S,userSelectionActive:H,noWheelClassName:b,lib:Y,onTransformChange:P,connectionInProgress:W,selectionOnDrag:D,paneClickDistance:k})},[e,t,n,i,s,r,l,c,nt,y,S,H,b,Y,P,W,D,k]),v.jsx("div",{className:"react-flow__renderer",ref:A,style:Zd,children:$})}const _M=e=>({userSelectionActive:e.userSelectionActive,userSelectionRect:e.userSelectionRect});function MM(){const{userSelectionActive:e,userSelectionRect:t}=qt(_M,ge);return e&&t?v.jsx("div",{className:"react-flow__selection react-flow__container",style:{width:t.width,height:t.height,transform:`translate(${t.x}px, ${t.y}px)`}}):null}const Zg=(e,t)=>n=>{n.target===t.current&&(e==null||e(n))},AM=e=>({userSelectionActive:e.userSelectionActive,elementsSelectable:e.elementsSelectable,dragging:e.paneDragging,panBy:e.panBy,autoPanSpeed:e.autoPanSpeed});function HM({isSelecting:e,selectionKeyPressed:t,selectionMode:n=Vl.Full,panOnDrag:i,autoPanOnSelection:s,paneClickDistance:r,selectionOnDrag:l,onSelectionStart:c,onSelectionEnd:u,onPaneClick:f,onPaneContextMenu:p,onPaneScroll:m,onPaneMouseEnter:g,onPaneMouseMove:y,onPaneMouseLeave:$,children:b}){const S=L.useRef(0),O=he(),{userSelectionActive:E,elementsSelectable:k,dragging:D,panBy:_,autoPanSpeed:A}=qt(AM,ge),H=k&&(e||E),Y=L.useRef(null),W=L.useRef(),nt=L.useRef(new Set),U=L.useRef(new Set),P=L.useRef(!1),F=L.useRef(!1),M=L.useRef({x:0,y:0}),G=L.useRef(!1),T=rt=>{if(F.current||P.current||O.getState().connection.inProgress){F.current=!1,P.current=!1;return}f==null||f(rt),O.getState().resetSelectedElements(),O.setState({nodesSelectionActive:!1})},z=rt=>{if(Array.isArray(i)&&(i!=null&&i.includes(2))){rt.preventDefault();return}p==null||p(rt)},Z=m?rt=>m(rt):void 0,Q=rt=>{F.current&&(rt.stopPropagation(),F.current=!1)},et=rt=>{var fe,nn;const{domNode:ht,transform:Ct}=O.getState();if(W.current=ht==null?void 0:ht.getBoundingClientRect(),!W.current)return;const Et=rt.target===Y.current;if(!Et&&!!rt.target.closest(".nokey")||!e||!(l&&Et||t)||rt.button!==0||!rt.isPrimary)return;(nn=(fe=rt.target)==null?void 0:fe.setPointerCapture)==null||nn.call(fe,rt.pointerId),F.current=!1;const{x:Nt,y:Yt}=wi(rt.nativeEvent,W.current),Qt=mu({x:Nt,y:Yt},Ct);O.setState({userSelectionRect:{width:0,height:0,startX:Qt.x,startY:Qt.y,x:Nt,y:Yt}}),Et||(rt.stopPropagation(),rt.preventDefault())};function j(rt,ht){const{userSelectionRect:Ct}=O.getState();if(!Ct)return;const{transform:Et,nodeLookup:St,edgeLookup:Ot,connectionLookup:Nt,triggerNodeChanges:Yt,triggerEdgeChanges:Qt,defaultEdgeOptions:fe}=O.getState(),nn={x:Ct.startX,y:Ct.startY},{x:hn,y:fn}=Kl(nn,Et),Tn={startX:nn.x,startY:nn.y,x:rt<hn?rt:hn,y:ht<fn?ht:fn,width:Math.abs(rt-hn),height:Math.abs(ht-fn)},Mr=nt.current,Ji=U.current;nt.current=new Set(nw(St,Tn,Et,n===Vl.Partial,!0).map(Nn=>Nn.id)),U.current=new Set;const xe=(fe==null?void 0:fe.selectable)??!0;for(const Nn of nt.current){const Zn=Nt.get(Nn);if(Zn)for(const{edgeId:Un}of Zn.values()){const In=Ot.get(Un);In&&(In.selectable??xe)&&U.current.add(Un)}}if(!$b(Mr,nt.current)){const Nn=_l(St,nt.current,!0);Yt(Nn)}if(!$b(Ji,U.current)){const Nn=_l(Ot,U.current);Qt(Nn)}O.setState({userSelectionRect:Tn,userSelectionActive:!0,nodesSelectionActive:!1})}function R(){if(!s||!W.current)return;const[rt,ht]=iw(M.current,W.current,A);_({x:rt,y:ht}).then(Ct=>{if(!F.current||!Ct){S.current=requestAnimationFrame(R);return}const{x:Et,y:St}=M.current;j(Et,St),S.current=requestAnimationFrame(R)})}const J=()=>{cancelAnimationFrame(S.current),S.current=0,G.current=!1};L.useEffect(()=>()=>J(),[]);const st=rt=>{const{userSelectionRect:ht,transform:Ct,resetSelectedElements:Et}=O.getState();if(!W.current||!ht)return;const{x:St,y:Ot}=wi(rt.nativeEvent,W.current);M.current={x:St,y:Ot};const Nt=Kl({x:ht.startX,y:ht.startY},Ct);if(!F.current){const Yt=t?0:r;if(Math.hypot(St-Nt.x,Ot-Nt.y)<=Yt)return;Et(),c==null||c(rt)}F.current=!0,G.current||(R(),G.current=!0),j(St,Ot)},ut=rt=>{var ht,Ct;if(!H){rt.target===Y.current&&O.getState().connection.inProgress&&(P.current=!0);return}rt.button===0&&((Ct=(ht=rt.target)==null?void 0:ht.releasePointerCapture)==null||Ct.call(ht,rt.pointerId),!E&&rt.target===Y.current&&O.getState().userSelectionRect&&(T==null||T(rt)),O.setState({userSelectionActive:!1,userSelectionRect:null}),F.current&&(u==null||u(rt),O.setState({nodesSelectionActive:nt.current.size>0})),J())},ft=rt=>{var ht,Ct;(Ct=(ht=rt.target)==null?void 0:ht.releasePointerCapture)==null||Ct.call(ht,rt.pointerId),J()},dt=i===!0||Array.isArray(i)&&i.includes(0);return v.jsxs("div",{className:Re(["react-flow__pane",{draggable:dt,dragging:D,selection:e}]),onClick:H?void 0:Zg(T,Y),onContextMenu:Zg(z,Y),onWheel:Zg(Z,Y),onPointerEnter:H?void 0:g,onPointerMove:H?st:y,onPointerUp:ut,onPointerCancel:H?ft:void 0,onPointerDownCapture:H?et:void 0,onClickCapture:H?Q:void 0,onPointerLeave:$,ref:Y,style:Zd,children:[b,v.jsx(MM,{})]})}function V0({id:e,store:t,unselect:n=!1,nodeRef:i}){const{addSelectedNodes:s,unselectNodesAndEdges:r,multiSelectionActive:l,nodeLookup:c,onError:u}=t.getState(),f=c.get(e);if(!f){u==null||u("012",xi.error012(e));return}t.setState({nodesSelectionActive:!1}),f.selected?(n||f.selected&&l)&&(r({nodes:[f],edges:[]}),requestAnimationFrame(()=>{var p;return(p=i==null?void 0:i.current)==null?void 0:p.blur()})):s([e])}function Sk({nodeRef:e,disabled:t=!1,noDragClassName:n,handleSelector:i,nodeId:s,isSelectable:r,nodeClickDistance:l}){const c=he(),[u,f]=L.useState(!1),p=L.useRef();return L.useEffect(()=>{if(!t)return p.current=b_({getStoreItems:()=>c.getState(),onNodeMouseDown:m=>{V0({id:m,store:c,nodeRef:e})},onDragStart:()=>{f(!0)},onDragStop:()=>{f(!1)}}),()=>{var m;(m=p.current)==null||m.destroy(),p.current=void 0}},[t,c,e]),L.useEffect(()=>{t||!e.current||!p.current||p.current.update({noDragClassName:n,handleSelector:i,domNode:e.current,isSelectable:r,nodeId:s,nodeClickDistance:l})},[n,i,t,r,e,s,l]),u}const zM=e=>t=>t.selected&&(t.draggable||e&&typeof t.draggable>"u");function Ok(){const e=he();return L.useCallback(n=>{const{nodeExtent:i,snapToGrid:s,snapGrid:r,nodesDraggable:l,onError:c,updateNodePositions:u,nodeLookup:f,nodeOrigin:p}=e.getState(),m=new Map,g=zM(l),y=s?r[0]:5,$=s?r[1]:5,b=n.direction.x*y*n.factor,S=n.direction.y*$*n.factor;for(const[,O]of f){if(!g(O))continue;let E={x:O.internals.positionAbsolute.x+b,y:O.internals.positionAbsolute.y+S};s&&(E=pu(E,r));const{position:k,positionAbsolute:D}=GO({nodeId:O.id,nextPosition:E,nodeLookup:f,nodeExtent:i,nodeOrigin:p,onError:c});O.position=k,O.internals.positionAbsolute=D,m.set(O.id,O)}u(m)},[])}const hw=L.createContext(null),BM=hw.Provider;hw.Consumer;const kk=()=>L.useContext(hw),YM=e=>({connectOnClick:e.connectOnClick,noPanClassName:e.noPanClassName,rfId:e.rfId}),Ck=L.createContext(null);function GM({children:e}){const t=qt(YM,ge);return v.jsx(Ck.Provider,{value:t,children:e})}function LM(){const e=L.useContext(Ck);if(!e)throw new Error("useHandleConfig must be used within a HandleConfigProvider");return e}const QM={connectingFrom:!1,connectingTo:!1,clickConnecting:!1,isPossibleEndHandle:!0,connectionInProcess:!1,clickConnectionInProcess:!1,valid:!1},PM=(e,t,n)=>i=>{const{connectionClickStartHandle:s,connectionMode:r,connection:l}=i,{fromHandle:c,toHandle:u,isValid:f}=l;if(!c&&!s)return QM;const p=(u==null?void 0:u.nodeId)===e&&(u==null?void 0:u.id)===t&&(u==null?void 0:u.type)===n;return{connectingFrom:(c==null?void 0:c.nodeId)===e&&(c==null?void 0:c.id)===t&&(c==null?void 0:c.type)===n,connectingTo:p,clickConnecting:(s==null?void 0:s.nodeId)===e&&(s==null?void 0:s.id)===t&&(s==null?void 0:s.type)===n,isPossibleEndHandle:r===So.Strict?(c==null?void 0:c.type)!==n:e!==(c==null?void 0:c.nodeId)||t!==(c==null?void 0:c.id),connectionInProcess:!!c,clickConnectionInProcess:!!s,valid:p&&f}};function qM({type:e="source",position:t=$t.Top,isValidConnection:n,isConnectable:i=!0,isConnectableStart:s=!0,isConnectableEnd:r=!0,id:l,onConnect:c,children:u,className:f,onMouseDown:p,onTouchStart:m,...g},y){var G,T;const $=l||null,b=e==="target",S=he(),O=kk(),{connectOnClick:E,noPanClassName:k,rfId:D}=LM(),{connectingFrom:_,connectingTo:A,clickConnecting:H,isPossibleEndHandle:Y,connectionInProcess:W,clickConnectionInProcess:nt,valid:U}=qt(PM(O,$,e),ge);O||(T=(G=S.getState()).onError)==null||T.call(G,"010",xi.error010());const P=z=>{const{defaultEdgeOptions:Z,onConnect:Q,hasDefaultEdges:et}=S.getState(),j={...Z,...z};if(et){const{edges:R,setEdges:J,onError:st}=S.getState();J(vM(j,R,{onError:st}))}Q==null||Q(j),c==null||c(j)},F=z=>{if(!O)return;const Z=FO(z.nativeEvent);if(s&&(Z&&z.button===0||!Z)){const Q=S.getState();F0.onPointerDown(z.nativeEvent,{handleDomNode:z.currentTarget,autoPanOnConnect:Q.autoPanOnConnect,connectionMode:Q.connectionMode,connectionRadius:Q.connectionRadius,domNode:Q.domNode,nodeLookup:Q.nodeLookup,lib:Q.lib,isTarget:b,handleId:$,nodeId:O,flowId:Q.rfId,panBy:Q.panBy,cancelConnection:Q.cancelConnection,onConnectStart:Q.onConnectStart,onConnectEnd:(...et)=>{var j,R;return(R=(j=S.getState()).onConnectEnd)==null?void 0:R.call(j,...et)},updateConnection:Q.updateConnection,onConnect:P,isValidConnection:n||((...et)=>{var j,R;return((R=(j=S.getState()).isValidConnection)==null?void 0:R.call(j,...et))??!0}),getTransform:()=>S.getState().transform,getFromHandle:()=>S.getState().connection.fromHandle,autoPanSpeed:Q.autoPanSpeed,dragThreshold:Q.connectionDragThreshold})}Z?p==null||p(z):m==null||m(z)},M=z=>{const{onClickConnectStart:Z,onClickConnectEnd:Q,connectionClickStartHandle:et,connectionMode:j,isValidConnection:R,lib:J,rfId:st,nodeLookup:ut,connection:ft}=S.getState();if(!O||!et&&!s)return;if(!et){Z==null||Z(z.nativeEvent,{nodeId:O,handleId:$,handleType:e}),S.setState({connectionClickStartHandle:{nodeId:O,type:e,id:$}});return}const dt=UO(z.target),rt=n||R,{connection:ht,isValid:Ct}=F0.isValid(z.nativeEvent,{handle:{nodeId:O,id:$,type:e},connectionMode:j,fromNodeId:et.nodeId,fromHandleId:et.id||null,fromType:et.type,isValidConnection:rt,flowId:st,doc:dt,lib:J,nodeLookup:ut});Ct&&ht&&P(ht);const Et=structuredClone(ft);delete Et.inProgress,Et.toPosition=Et.toHandle?Et.toHandle.position:null,Q==null||Q(z,Et),S.setState({connectionClickStartHandle:null})};return v.jsx("div",{"data-handleid":$,"data-nodeid":O,"data-handlepos":t,"data-id":`${D}-${O}-${$}-${e}`,className:Re(["react-flow__handle",`react-flow__handle-${t}`,"nodrag",k,f,{source:!b,target:b,connectable:i,connectablestart:s,connectableend:r,clickconnecting:H,connectingfrom:_,connectingto:A,valid:U,connectionindicator:i&&(!W||Y)&&(W||nt?r:s)}]),onMouseDown:F,onTouchStart:F,onClick:E?M:void 0,ref:y,...g,children:u})}const ae=L.memo(xk(qM));function WM({data:e,isConnectable:t,sourcePosition:n=$t.Bottom}){return v.jsxs(v.Fragment,{children:[e==null?void 0:e.label,v.jsx(ae,{type:"source",position:n,isConnectable:t})]})}function ZM({data:e,isConnectable:t,targetPosition:n=$t.Top,sourcePosition:i=$t.Bottom}){return v.jsxs(v.Fragment,{children:[v.jsx(ae,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label,v.jsx(ae,{type:"source",position:i,isConnectable:t})]})}function UM(){return null}function IM({data:e,isConnectable:t,targetPosition:n=$t.Top}){return v.jsxs(v.Fragment,{children:[v.jsx(ae,{type:"target",position:n,isConnectable:t}),e==null?void 0:e.label]})}const Kf={ArrowUp:{x:0,y:-1},ArrowDown:{x:0,y:1},ArrowLeft:{x:-1,y:0},ArrowRight:{x:1,y:0}},Vb={input:WM,default:ZM,output:IM,group:UM};function FM(e){var t,n,i,s;return e.internals.handleBounds===void 0?{width:e.width??e.initialWidth??((t=e.style)==null?void 0:t.width),height:e.height??e.initialHeight??((n=e.style)==null?void 0:n.height)}:{width:e.width??((i=e.style)==null?void 0:i.width),height:e.height??((s=e.style)==null?void 0:s.height)}}const VM=e=>{const{width:t,height:n,x:i,y:s}=du(e.nodeLookup,{filter:r=>!!r.selected});return{width:yi(t)?t:null,height:yi(n)?n:null,userSelectionActive:e.userSelectionActive,transformString:`translate(${e.transform[0]}px,${e.transform[1]}px) scale(${e.transform[2]}) translate(${i}px,${s}px)`}};function XM({onSelectionContextMenu:e,noPanClassName:t,disableKeyboardA11y:n}){const i=he(),{width:s,height:r,transformString:l,userSelectionActive:c}=qt(VM,ge),u=Ok(),f=L.useRef(null);L.useEffect(()=>{var y;n||(y=f.current)==null||y.focus({preventScroll:!0})},[n]);const p=!c&&s!==null&&r!==null;if(Sk({nodeRef:f,disabled:!p}),!p)return null;const m=e?y=>{const $=i.getState().nodes.filter(b=>b.selected);e(y,$)}:void 0,g=y=>{Object.prototype.hasOwnProperty.call(Kf,y.key)&&(y.preventDefault(),u({direction:Kf[y.key],factor:y.shiftKey?4:1}))};return v.jsx("div",{className:Re(["react-flow__nodesselection","react-flow__container",t]),style:{transform:l},children:v.jsx("div",{ref:f,className:"react-flow__nodesselection-rect",onContextMenu:m,tabIndex:n?void 0:-1,onKeyDown:n?void 0:g,style:{width:s,height:r}})})}const Xb=typeof window<"u"?window:void 0,KM=e=>({nodesSelectionActive:e.nodesSelectionActive,userSelectionActive:e.userSelectionActive});function Ek({children:e,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:i,onPaneMouseLeave:s,onPaneContextMenu:r,onPaneScroll:l,paneClickDistance:c,deleteKeyCode:u,selectionKeyCode:f,selectionOnDrag:p,selectionMode:m,onSelectionStart:g,onSelectionEnd:y,multiSelectionKeyCode:$,panActivationKeyCode:b,zoomActivationKeyCode:S,elementsSelectable:O,zoomOnScroll:E,zoomOnPinch:k,panOnScroll:D,panOnScrollSpeed:_,panOnScrollMode:A,zoomOnDoubleClick:H,panOnDrag:Y,autoPanOnSelection:W,defaultViewport:nt,translateExtent:U,minZoom:P,maxZoom:F,preventScrolling:M,onSelectionContextMenu:G,noWheelClassName:T,noPanClassName:z,disableKeyboardA11y:Z,onViewportChange:Q,isControlledViewport:et}){const{nodesSelectionActive:j,userSelectionActive:R}=qt(KM,ge),J=qc(f,{target:Xb}),st=qc(b,{target:Xb}),ut=st||Y,ft=st||D,dt=p&&ut!==!0,rt=J||R||dt;return TM({deleteKeyCode:u,multiSelectionKeyCode:$}),v.jsx(RM,{onPaneContextMenu:r,elementsSelectable:O,zoomOnScroll:E,zoomOnPinch:k,panOnScroll:ft,panOnScrollSpeed:_,panOnScrollMode:A,zoomOnDoubleClick:H,panOnDrag:!J&&ut,defaultViewport:nt,translateExtent:U,minZoom:P,maxZoom:F,zoomActivationKeyCode:S,preventScrolling:M,noWheelClassName:T,noPanClassName:z,onViewportChange:Q,isControlledViewport:et,paneClickDistance:c,selectionOnDrag:dt,children:v.jsxs(HM,{onSelectionStart:g,onSelectionEnd:y,onPaneClick:t,onPaneMouseEnter:n,onPaneMouseMove:i,onPaneMouseLeave:s,onPaneContextMenu:r,onPaneScroll:l,panOnDrag:ut,autoPanOnSelection:W,isSelecting:!!rt,selectionMode:m,selectionKeyPressed:J,paneClickDistance:c,selectionOnDrag:dt,children:[e,j&&v.jsx(XM,{onSelectionContextMenu:G,noPanClassName:z,disableKeyboardA11y:Z})]})})}Ek.displayName="FlowRenderer";const JM=L.memo(Ek),tA=e=>t=>e?nw(t.nodeLookup,{x:0,y:0,width:t.width,height:t.height},t.transform,!0).map(n=>n.id):Array.from(t.nodeLookup.keys());function eA(e){return qt(L.useCallback(tA(e),[e]),ge)}const nA=e=>e.updateNodeInternals;function iA(){const e=qt(nA),[t]=L.useState(()=>typeof ResizeObserver>"u"?null:new ResizeObserver(n=>{const i=new Map;n.forEach(s=>{const r=s.target.getAttribute("data-id");i.set(r,{id:r,nodeElement:s.target,force:!0})}),e(i)}));return L.useEffect(()=>()=>{t==null||t.disconnect()},[t]),t}function sA({node:e,nodeType:t,hasDimensions:n,resizeObserver:i}){const s=he(),r=L.useRef(null),l=L.useRef(null),c=L.useRef(e.sourcePosition),u=L.useRef(e.targetPosition),f=L.useRef(t),p=n&&!!e.internals.handleBounds;return L.useEffect(()=>{r.current&&!e.hidden&&(!p||l.current!==r.current)&&(l.current&&(i==null||i.unobserve(l.current)),i==null||i.observe(r.current),l.current=r.current)},[p,e.hidden]),L.useEffect(()=>()=>{l.current&&(i==null||i.unobserve(l.current),l.current=null)},[]),L.useEffect(()=>{if(r.current){const m=f.current!==t,g=c.current!==e.sourcePosition,y=u.current!==e.targetPosition;(m||g||y)&&(f.current=t,c.current=e.sourcePosition,u.current=e.targetPosition,s.getState().updateNodeInternals(new Map([[e.id,{id:e.id,nodeElement:r.current,force:!0}]])))}},[e.id,t,e.sourcePosition,e.targetPosition]),r}function rA({id:e,onClick:t,onMouseEnter:n,onMouseMove:i,onMouseLeave:s,onContextMenu:r,onDoubleClick:l,nodesDraggable:c,elementsSelectable:u,nodesConnectable:f,nodesFocusable:p,resizeObserver:m,noDragClassName:g,noPanClassName:y,disableKeyboardA11y:$,rfId:b,nodeTypes:S,nodeClickDistance:O,onError:E}){const{node:k,internals:D,isParent:_}=qt(rt=>{const ht=rt.nodeLookup.get(e),Ct=rt.parentLookup.has(e);return{node:ht,internals:ht.internals,isParent:Ct}},ge);let A=k.type||"default",H=(S==null?void 0:S[A])||Vb[A];H===void 0&&(E==null||E("003",xi.error003(A)),A="default",H=(S==null?void 0:S.default)||Vb.default);const Y=!!(k.draggable||c&&typeof k.draggable>"u"),W=!!(k.selectable||u&&typeof k.selectable>"u"),nt=!!(k.connectable||f&&typeof k.connectable>"u"),U=!!(k.focusable||p&&typeof k.focusable>"u"),P=he(),F=WO(k),M=sA({node:k,nodeType:A,hasDimensions:F,resizeObserver:m}),G=Sk({nodeRef:M,disabled:k.hidden||!Y,noDragClassName:g,handleSelector:k.dragHandle,nodeId:e,isSelectable:W,nodeClickDistance:O}),T=Ok();if(k.hidden)return null;const z=Vi(k),Z=FM(k),Q=W||Y||t||n||i||s,et=n?rt=>n(rt,{...D.userNode}):void 0,j=i?rt=>i(rt,{...D.userNode}):void 0,R=s?rt=>s(rt,{...D.userNode}):void 0,J=r?rt=>r(rt,{...D.userNode}):void 0,st=l?rt=>l(rt,{...D.userNode}):void 0,ut=rt=>{const{selectNodesOnDrag:ht,nodeDragThreshold:Ct}=P.getState();W&&(!ht||!Y||Ct>0)&&V0({id:e,store:P,nodeRef:M}),t&&t(rt,{...D.userNode})},ft=rt=>{if(!(IO(rt.nativeEvent)||$)){if(AO.includes(rt.key)&&W){const ht=rt.key==="Escape";V0({id:e,store:P,unselect:ht,nodeRef:M})}else if(Y&&k.selected&&Object.prototype.hasOwnProperty.call(Kf,rt.key)){rt.preventDefault();const{ariaLabelConfig:ht}=P.getState();P.setState({ariaLiveMessage:ht["node.a11yDescription.ariaLiveMessage"]({direction:rt.key.replace("Arrow","").toLowerCase(),x:~~D.positionAbsolute.x,y:~~D.positionAbsolute.y})}),T({direction:Kf[rt.key],factor:rt.shiftKey?4:1})}}},dt=()=>{var Nt;if($||!((Nt=M.current)!=null&&Nt.matches(":focus-visible")))return;const{transform:rt,width:ht,height:Ct,autoPanOnNodeFocus:Et,setCenter:St}=P.getState();if(!Et)return;nw(new Map([[e,k]]),{x:0,y:0,width:ht,height:Ct},rt,!0).length>0||St(k.position.x+z.width/2,k.position.y+z.height/2,{zoom:rt[2]})};return v.jsx("div",{className:Re(["react-flow__node",`react-flow__node-${A}`,{[y]:Y},k.className,{selected:k.selected,selectable:W,parent:_,draggable:Y,dragging:G}]),ref:M,style:{zIndex:D.z,transform:`translate(${D.positionAbsolute.x}px,${D.positionAbsolute.y}px)`,pointerEvents:Q?"all":"none",visibility:F?"visible":"hidden",...k.style,...Z},"data-id":e,"data-testid":`rf__node-${e}`,onMouseEnter:et,onMouseMove:j,onMouseLeave:R,onContextMenu:J,onClick:ut,onDoubleClick:st,onKeyDown:U?ft:void 0,tabIndex:U?0:void 0,onFocus:U?dt:void 0,role:k.ariaRole??(U?"group":void 0),"aria-roledescription":"node","aria-describedby":$?void 0:`${pk}-${b}`,"aria-label":k.ariaLabel,...k.domAttributes,children:v.jsx(BM,{value:e,children:v.jsx(H,{id:e,data:k.data,type:A,positionAbsoluteX:D.positionAbsolute.x,positionAbsoluteY:D.positionAbsolute.y,selected:k.selected??!1,selectable:W,draggable:Y,deletable:k.deletable??!0,isConnectable:nt,sourcePosition:k.sourcePosition,targetPosition:k.targetPosition,dragging:G,dragHandle:k.dragHandle,zIndex:D.z,parentId:k.parentId,...z})})})}var oA=L.memo(rA);const lA=e=>({nodesConnectable:e.nodesConnectable,nodesFocusable:e.nodesFocusable,elementsSelectable:e.elementsSelectable,onError:e.onError});function Dk(e){const{nodesConnectable:t,nodesFocusable:n,elementsSelectable:i,onError:s}=qt(lA,ge),r=eA(e.onlyRenderVisibleElements),l=iA();return v.jsx("div",{className:"react-flow__nodes",style:Zd,children:r.map(c=>v.jsx(oA,{id:c,nodeTypes:e.nodeTypes,nodeExtent:e.nodeExtent,onClick:e.onNodeClick,onMouseEnter:e.onNodeMouseEnter,onMouseMove:e.onNodeMouseMove,onMouseLeave:e.onNodeMouseLeave,onContextMenu:e.onNodeContextMenu,onDoubleClick:e.onNodeDoubleClick,noDragClassName:e.noDragClassName,noPanClassName:e.noPanClassName,rfId:e.rfId,disableKeyboardA11y:e.disableKeyboardA11y,resizeObserver:l,nodesDraggable:e.nodesDraggable??!0,nodesConnectable:t,nodesFocusable:n,elementsSelectable:i,nodeClickDistance:e.nodeClickDistance,onError:s},c))})}Dk.displayName="NodeRenderer";const aA=L.memo(Dk);function cA(e){return qt(L.useCallback(n=>{if(!e)return n.edges.map(s=>s.id);const i=[];if(n.width&&n.height)for(const s of n.edges){const r=n.nodeLookup.get(s.source),l=n.nodeLookup.get(s.target);r&&l&&n_({sourceNode:r,targetNode:l,width:n.width,height:n.height,transform:n.transform})&&i.push(s.id)}return i},[e]),ge)}const uA=({color:e="none",strokeWidth:t=1})=>{const n={strokeWidth:t,...e&&{stroke:e}};return v.jsx("polyline",{className:"arrow",style:n,strokeLinecap:"round",fill:"none",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4"})},hA=({color:e="none",strokeWidth:t=1})=>{const n={strokeWidth:t,...e&&{stroke:e,fill:e}};return v.jsx("polyline",{className:"arrowclosed",style:n,strokeLinecap:"round",strokeLinejoin:"round",points:"-5,-4 0,0 -5,4 -5,-4"})},Kb={[yr.Arrow]:uA,[yr.ArrowClosed]:hA};function fA(e){const t=he();return L.useMemo(()=>{var s,r;return Object.prototype.hasOwnProperty.call(Kb,e)?Kb[e]:((r=(s=t.getState()).onError)==null||r.call(s,"009",xi.error009(e)),null)},[e])}const dA=({id:e,type:t,color:n,width:i=12.5,height:s=12.5,markerUnits:r="strokeWidth",strokeWidth:l,orient:c="auto-start-reverse"})=>{const u=fA(t);return u?v.jsx("marker",{className:"react-flow__arrowhead",id:e,markerWidth:`${i}`,markerHeight:`${s}`,viewBox:"-10 -10 20 20",markerUnits:r,orient:c,refX:"0",refY:"0",children:v.jsx(u,{color:n,strokeWidth:l})}):null},Tk=({defaultColor:e,rfId:t})=>{const n=qt(r=>r.edges),i=qt(r=>r.defaultEdgeOptions),s=L.useMemo(()=>u_(n,{id:t,defaultColor:e,defaultMarkerStart:i==null?void 0:i.markerStart,defaultMarkerEnd:i==null?void 0:i.markerEnd}),[n,i,t,e]);return s.length?v.jsx("svg",{className:"react-flow__marker","aria-hidden":"true",children:v.jsx("defs",{children:s.map(r=>v.jsx(dA,{id:r.id,type:r.type,color:r.color,width:r.width,height:r.height,markerUnits:r.markerUnits,strokeWidth:r.strokeWidth,orient:r.orient},r.id))})}):null};Tk.displayName="MarkerDefinitions";var pA=L.memo(Tk);function Nk({x:e,y:t,label:n,labelStyle:i,labelShowBg:s=!0,labelBgStyle:r,labelBgPadding:l=[2,4],labelBgBorderRadius:c=2,children:u,className:f,...p}){const[m,g]=L.useState({x:1,y:0,width:0,height:0}),y=Re(["react-flow__edge-textwrapper",f]),$=L.useRef(null);return L.useEffect(()=>{if($.current){const b=$.current.getBBox();g({x:b.x,y:b.y,width:b.width,height:b.height})}},[n]),n?v.jsxs("g",{transform:`translate(${e-m.width/2} ${t-m.height/2})`,className:y,visibility:m.width?"visible":"hidden",...p,children:[s&&v.jsx("rect",{width:m.width+2*l[0],x:-l[0],y:-l[1],height:m.height+2*l[1],className:"react-flow__edge-textbg",style:r,rx:c,ry:c}),v.jsx("text",{className:"react-flow__edge-text",y:m.height/2,dy:"0.3em",ref:$,style:i,children:n}),u]}):null}Nk.displayName="EdgeText";const mA=L.memo(Nk);function ha({path:e,labelX:t,labelY:n,label:i,labelStyle:s,labelShowBg:r,labelBgStyle:l,labelBgPadding:c,labelBgBorderRadius:u,interactionWidth:f=20,...p}){return v.jsxs(v.Fragment,{children:[v.jsx("path",{...p,d:e,fill:"none",className:Re(["react-flow__edge-path",p.className])}),f?v.jsx("path",{d:e,fill:"none",strokeOpacity:0,strokeWidth:f,className:"react-flow__edge-interaction"}):null,i&&yi(t)&&yi(n)?v.jsx(mA,{x:t,y:n,label:i,labelStyle:s,labelShowBg:r,labelBgStyle:l,labelBgPadding:c,labelBgBorderRadius:u}):null]})}function Jb({pos:e,x1:t,y1:n,x2:i,y2:s}){return e===$t.Left||e===$t.Right?[.5*(t+i),n]:[t,.5*(n+s)]}function jk({sourceX:e,sourceY:t,sourcePosition:n=$t.Bottom,targetX:i,targetY:s,targetPosition:r=$t.Top}){const[l,c]=Jb({pos:n,x1:e,y1:t,x2:i,y2:s}),[u,f]=Jb({pos:r,x1:i,y1:s,x2:e,y2:t}),[p,m,g,y]=VO({sourceX:e,sourceY:t,targetX:i,targetY:s,sourceControlX:l,sourceControlY:c,targetControlX:u,targetControlY:f});return[`M${e},${t} C${l},${c} ${u},${f} ${i},${s}`,p,m,g,y]}function Rk(e){return L.memo(({id:t,sourceX:n,sourceY:i,targetX:s,targetY:r,sourcePosition:l,targetPosition:c,label:u,labelStyle:f,labelShowBg:p,labelBgStyle:m,labelBgPadding:g,labelBgBorderRadius:y,style:$,markerEnd:b,markerStart:S,interactionWidth:O})=>{const[E,k,D]=jk({sourceX:n,sourceY:i,sourcePosition:l,targetX:s,targetY:r,targetPosition:c}),_=e.isInternal?void 0:t;return v.jsx(ha,{id:_,path:E,labelX:k,labelY:D,label:u,labelStyle:f,labelShowBg:p,labelBgStyle:m,labelBgPadding:g,labelBgBorderRadius:y,style:$,markerEnd:b,markerStart:S,interactionWidth:O})})}const gA=Rk({isInternal:!1}),_k=Rk({isInternal:!0});gA.displayName="SimpleBezierEdge";_k.displayName="SimpleBezierEdgeInternal";function Mk(e){return L.memo(({id:t,sourceX:n,sourceY:i,targetX:s,targetY:r,label:l,labelStyle:c,labelShowBg:u,labelBgStyle:f,labelBgPadding:p,labelBgBorderRadius:m,style:g,sourcePosition:y=$t.Bottom,targetPosition:$=$t.Top,markerEnd:b,markerStart:S,pathOptions:O,interactionWidth:E})=>{const[k,D,_]=Z0({sourceX:n,sourceY:i,sourcePosition:y,targetX:s,targetY:r,targetPosition:$,borderRadius:O==null?void 0:O.borderRadius,offset:O==null?void 0:O.offset,stepPosition:O==null?void 0:O.stepPosition}),A=e.isInternal?void 0:t;return v.jsx(ha,{id:A,path:k,labelX:D,labelY:_,label:l,labelStyle:c,labelShowBg:u,labelBgStyle:f,labelBgPadding:p,labelBgBorderRadius:m,style:g,markerEnd:b,markerStart:S,interactionWidth:E})})}const Ak=Mk({isInternal:!1}),Hk=Mk({isInternal:!0});Ak.displayName="SmoothStepEdge";Hk.displayName="SmoothStepEdgeInternal";function zk(e){return L.memo(({id:t,...n})=>{var s;const i=e.isInternal?void 0:t;return v.jsx(Ak,{...n,id:i,pathOptions:L.useMemo(()=>{var r;return{borderRadius:0,offset:(r=n.pathOptions)==null?void 0:r.offset}},[(s=n.pathOptions)==null?void 0:s.offset])})})}const yA=zk({isInternal:!1}),Bk=zk({isInternal:!0});yA.displayName="StepEdge";Bk.displayName="StepEdgeInternal";function Yk(e){return L.memo(({id:t,sourceX:n,sourceY:i,targetX:s,targetY:r,label:l,labelStyle:c,labelShowBg:u,labelBgStyle:f,labelBgPadding:p,labelBgBorderRadius:m,style:g,markerEnd:y,markerStart:$,interactionWidth:b})=>{const[S,O,E]=JO({sourceX:n,sourceY:i,targetX:s,targetY:r}),k=e.isInternal?void 0:t;return v.jsx(ha,{id:k,path:S,labelX:O,labelY:E,label:l,labelStyle:c,labelShowBg:u,labelBgStyle:f,labelBgPadding:p,labelBgBorderRadius:m,style:g,markerEnd:y,markerStart:$,interactionWidth:b})})}const wA=Yk({isInternal:!1}),Gk=Yk({isInternal:!0});wA.displayName="StraightEdge";Gk.displayName="StraightEdgeInternal";function Lk(e){return L.memo(({id:t,sourceX:n,sourceY:i,targetX:s,targetY:r,sourcePosition:l=$t.Bottom,targetPosition:c=$t.Top,label:u,labelStyle:f,labelShowBg:p,labelBgStyle:m,labelBgPadding:g,labelBgBorderRadius:y,style:$,markerEnd:b,markerStart:S,pathOptions:O,interactionWidth:E})=>{const[k,D,_]=XO({sourceX:n,sourceY:i,sourcePosition:l,targetX:s,targetY:r,targetPosition:c,curvature:O==null?void 0:O.curvature}),A=e.isInternal?void 0:t;return v.jsx(ha,{id:A,path:k,labelX:D,labelY:_,label:u,labelStyle:f,labelShowBg:p,labelBgStyle:m,labelBgPadding:g,labelBgBorderRadius:y,style:$,markerEnd:b,markerStart:S,interactionWidth:E})})}const $A=Lk({isInternal:!1}),Qk=Lk({isInternal:!0});$A.displayName="BezierEdge";Qk.displayName="BezierEdgeInternal";const t1={default:Qk,straight:Gk,step:Bk,smoothstep:Hk,simplebezier:_k},e1={sourceX:null,sourceY:null,targetX:null,targetY:null,sourcePosition:null,targetPosition:null,zIndex:void 0},xA=(e,t,n)=>n===$t.Left?e-t:n===$t.Right?e+t:e,bA=(e,t,n)=>n===$t.Top?e-t:n===$t.Bottom?e+t:e,n1="react-flow__edgeupdater";function i1({position:e,centerX:t,centerY:n,radius:i=10,onMouseDown:s,onMouseEnter:r,onMouseOut:l,type:c}){return v.jsx("circle",{onMouseDown:s,onMouseEnter:r,onMouseOut:l,className:Re([n1,`${n1}-${c}`]),cx:xA(t,i,e),cy:bA(n,i,e),r:i,stroke:"transparent",fill:"transparent"})}function vA({isReconnectable:e,reconnectRadius:t,edge:n,sourceX:i,sourceY:s,targetX:r,targetY:l,sourcePosition:c,targetPosition:u,onReconnect:f,onReconnectStart:p,onReconnectEnd:m,setReconnecting:g,setUpdateHover:y}){const $=he(),b=(D,_)=>{if(D.button!==0)return;const{autoPanOnConnect:A,domNode:H,connectionMode:Y,connectionRadius:W,lib:nt,onConnectStart:U,cancelConnection:P,nodeLookup:F,rfId:M,panBy:G,updateConnection:T}=$.getState(),z=_.type==="target",Z=(j,R)=>{g(!1),m==null||m(j,n,_.type,R)},Q=j=>f==null?void 0:f(n,j),et=(j,R)=>{g(!0),p==null||p(D,n,_.type),U==null||U(j,R)};F0.onPointerDown(D.nativeEvent,{autoPanOnConnect:A,connectionMode:Y,connectionRadius:W,domNode:H,handleId:_.id,nodeId:_.nodeId,nodeLookup:F,isTarget:z,edgeUpdaterType:_.type,lib:nt,flowId:M,cancelConnection:P,panBy:G,isValidConnection:(...j)=>{var R,J;return((J=(R=$.getState()).isValidConnection)==null?void 0:J.call(R,...j))??!0},onConnect:Q,onConnectStart:et,onConnectEnd:(...j)=>{var R,J;return(J=(R=$.getState()).onConnectEnd)==null?void 0:J.call(R,...j)},onReconnectEnd:Z,updateConnection:T,getTransform:()=>$.getState().transform,getFromHandle:()=>$.getState().connection.fromHandle,dragThreshold:$.getState().connectionDragThreshold,handleDomNode:D.currentTarget})},S=D=>b(D,{nodeId:n.target,id:n.targetHandle??null,type:"target"}),O=D=>b(D,{nodeId:n.source,id:n.sourceHandle??null,type:"source"}),E=()=>y(!0),k=()=>y(!1);return v.jsxs(v.Fragment,{children:[(e===!0||e==="source")&&v.jsx(i1,{position:c,centerX:i,centerY:s,radius:t,onMouseDown:S,onMouseEnter:E,onMouseOut:k,type:"source"}),(e===!0||e==="target")&&v.jsx(i1,{position:u,centerX:r,centerY:l,radius:t,onMouseDown:O,onMouseEnter:E,onMouseOut:k,type:"target"})]})}function SA({id:e,edgesFocusable:t,edgesReconnectable:n,elementsSelectable:i,onClick:s,onDoubleClick:r,onContextMenu:l,onMouseEnter:c,onMouseMove:u,onMouseLeave:f,reconnectRadius:p,onReconnect:m,onReconnectStart:g,onReconnectEnd:y,rfId:$,edgeTypes:b,noPanClassName:S,onError:O,disableKeyboardA11y:E}){let k=qt(St=>St.edgeLookup.get(e));const D=qt(St=>St.defaultEdgeOptions);k=D?{...D,...k}:k;let _=k.type||"default",A=(b==null?void 0:b[_])||t1[_];A===void 0&&(O==null||O("011",xi.error011(_)),_="default",A=(b==null?void 0:b.default)||t1.default);const H=!!(k.focusable||t&&typeof k.focusable>"u"),Y=typeof m<"u"&&(k.reconnectable||n&&typeof k.reconnectable>"u"),W=!!(k.selectable||i&&typeof k.selectable>"u"),nt=L.useRef(null),[U,P]=L.useState(!1),[F,M]=L.useState(!1),G=he(),{zIndex:T=k.zIndex,sourceX:z,sourceY:Z,targetX:Q,targetY:et,sourcePosition:j,targetPosition:R}=qt(L.useCallback(St=>{const Ot=St.nodeLookup.get(k.source),Nt=St.nodeLookup.get(k.target);if(!Ot||!Nt)return e1;const Yt=c_({id:e,sourceNode:Ot,targetNode:Nt,sourceHandle:k.sourceHandle||null,targetHandle:k.targetHandle||null,connectionMode:St.connectionMode,onError:O}),Qt=e_({selected:k.selected,zIndex:k.zIndex,sourceNode:Ot,targetNode:Nt,elevateOnSelect:St.elevateEdgesOnSelect,zIndexMode:St.zIndexMode});return{...Yt||e1,zIndex:Qt}},[k.source,k.target,k.sourceHandle,k.targetHandle,k.selected,k.zIndex]),ge),J=L.useMemo(()=>k.markerStart?`url('#${U0(k.markerStart,$)}')`:void 0,[k.markerStart,$]),st=L.useMemo(()=>k.markerEnd?`url('#${U0(k.markerEnd,$)}')`:void 0,[k.markerEnd,$]);if(k.hidden||z===null||Z===null||Q===null||et===null)return null;const ut=St=>{var Qt;const{addSelectedEdges:Ot,unselectNodesAndEdges:Nt,multiSelectionActive:Yt}=G.getState();W&&(G.setState({nodesSelectionActive:!1}),k.selected&&Yt?(Nt({nodes:[],edges:[k]}),(Qt=nt.current)==null||Qt.blur()):Ot([e])),s&&s(St,k)},ft=r?St=>{r(St,{...k})}:void 0,dt=l?St=>{l(St,{...k})}:void 0,rt=c?St=>{c(St,{...k})}:void 0,ht=u?St=>{u(St,{...k})}:void 0,Ct=f?St=>{f(St,{...k})}:void 0,Et=St=>{var Ot;if(!E&&AO.includes(St.key)&&W){const{unselectNodesAndEdges:Nt,addSelectedEdges:Yt}=G.getState();St.key==="Escape"?((Ot=nt.current)==null||Ot.blur(),Nt({edges:[k]})):Yt([e])}};return v.jsx("svg",{style:{zIndex:T},children:v.jsxs("g",{className:Re(["react-flow__edge",`react-flow__edge-${_}`,k.className,S,{selected:k.selected,animated:k.animated,inactive:!W&&!s,updating:U,selectable:W}]),onClick:ut,onDoubleClick:ft,onContextMenu:dt,onMouseEnter:rt,onMouseMove:ht,onMouseLeave:Ct,onKeyDown:H?Et:void 0,tabIndex:H?0:void 0,role:k.ariaRole??(H?"group":"img"),"aria-roledescription":"edge","data-id":e,"data-testid":`rf__edge-${e}`,"aria-label":k.ariaLabel===null?void 0:k.ariaLabel||`Edge from ${k.source} to ${k.target}`,"aria-describedby":H?`${mk}-${$}`:void 0,ref:nt,...k.domAttributes,children:[!F&&v.jsx(A,{id:e,source:k.source,target:k.target,type:k.type,selected:k.selected,animated:k.animated,selectable:W,deletable:k.deletable??!0,label:k.label,labelStyle:k.labelStyle,labelShowBg:k.labelShowBg,labelBgStyle:k.labelBgStyle,labelBgPadding:k.labelBgPadding,labelBgBorderRadius:k.labelBgBorderRadius,sourceX:z,sourceY:Z,targetX:Q,targetY:et,sourcePosition:j,targetPosition:R,data:k.data,style:k.style,sourceHandleId:k.sourceHandle,targetHandleId:k.targetHandle,markerStart:J,markerEnd:st,pathOptions:"pathOptions"in k?k.pathOptions:void 0,interactionWidth:k.interactionWidth}),Y&&v.jsx(vA,{edge:k,isReconnectable:Y,reconnectRadius:p,onReconnect:m,onReconnectStart:g,onReconnectEnd:y,sourceX:z,sourceY:Z,targetX:Q,targetY:et,sourcePosition:j,targetPosition:R,setUpdateHover:P,setReconnecting:M})]})})}var OA=L.memo(SA);const kA=e=>({edgesFocusable:e.edgesFocusable,edgesReconnectable:e.edgesReconnectable,elementsSelectable:e.elementsSelectable,connectionMode:e.connectionMode,onError:e.onError});function Pk({defaultMarkerColor:e,onlyRenderVisibleElements:t,rfId:n,edgeTypes:i,noPanClassName:s,onReconnect:r,onEdgeContextMenu:l,onEdgeMouseEnter:c,onEdgeMouseMove:u,onEdgeMouseLeave:f,onEdgeClick:p,reconnectRadius:m,onEdgeDoubleClick:g,onReconnectStart:y,onReconnectEnd:$,disableKeyboardA11y:b}){const{edgesFocusable:S,edgesReconnectable:O,elementsSelectable:E,onError:k}=qt(kA,ge),D=cA(t);return v.jsxs("div",{className:"react-flow__edges",children:[v.jsx(pA,{defaultColor:e,rfId:n}),D.map(_=>v.jsx(OA,{id:_,edgesFocusable:S,edgesReconnectable:O,elementsSelectable:E,noPanClassName:s,onReconnect:r,onContextMenu:l,onMouseEnter:c,onMouseMove:u,onMouseLeave:f,onClick:p,reconnectRadius:m,onDoubleClick:g,onReconnectStart:y,onReconnectEnd:$,rfId:n,onError:k,edgeTypes:i,disableKeyboardA11y:b},_))]})}Pk.displayName="EdgeRenderer";const CA=L.memo(Pk),s1=e=>`translate(${e[0]}px,${e[1]}px) scale(${e[2]})`;function EA({children:e}){const t=he(),n=L.useRef(null),[i]=L.useState(()=>t.getState().transform);return bk(()=>{let s=null;const r=()=>{const l=t.getState().transform;s&&l[0]===s[0]&&l[1]===s[1]&&l[2]===s[2]||(s=l,n.current&&(n.current.style.transform=s1(l)))};return r(),t.subscribe(r)},[t]),v.jsx("div",{ref:n,className:"react-flow__viewport xyflow__viewport react-flow__container",style:{transform:s1(i)},children:e})}function DA(e){const t=ua(),n=L.useRef(!1);L.useEffect(()=>{!n.current&&t.viewportInitialized&&e&&(setTimeout(()=>e(t),1),n.current=!0)},[e,t.viewportInitialized])}const TA=e=>{var t;return(t=e.panZoom)==null?void 0:t.syncViewport};function NA(e){const t=qt(TA),n=he();return L.useEffect(()=>{e&&(t==null||t(e),n.setState({transform:[e.x,e.y,e.zoom]}))},[e,t]),null}function jA(e){return e.connection.inProgress?{...e.connection,to:mu(e.connection.to,e.transform)}:{...e.connection}}function RA(e){return jA}function _A(e){const t=RA();return qt(t,ge)}const MA=e=>({nodesConnectable:e.nodesConnectable,isValid:e.connection.isValid,inProgress:e.connection.inProgress,width:e.width,height:e.height});function AA({containerStyle:e,style:t,type:n,component:i}){const{nodesConnectable:s,width:r,height:l,isValid:c,inProgress:u}=qt(MA,ge);return!(r&&s&&u)?null:v.jsx("svg",{style:e,width:r,height:l,className:"react-flow__connectionline react-flow__container",children:v.jsx("g",{className:Re(["react-flow__connection",BO(c)]),children:v.jsx(qk,{style:t,type:n,CustomComponent:i,isValid:c})})})}const qk=({style:e,type:t=pr.Bezier,CustomComponent:n,isValid:i})=>{const{inProgress:s,from:r,fromNode:l,fromHandle:c,fromPosition:u,to:f,toNode:p,toHandle:m,toPosition:g,pointer:y}=_A();if(!s)return;if(n)return v.jsx(n,{connectionLineType:t,connectionLineStyle:e,fromNode:l,fromHandle:c,fromX:r.x,fromY:r.y,toX:f.x,toY:f.y,fromPosition:u,toPosition:g,connectionStatus:BO(i),toNode:p,toHandle:m,pointer:y});let $="";const b={sourceX:r.x,sourceY:r.y,sourcePosition:u,targetX:f.x,targetY:f.y,targetPosition:g};switch(t){case pr.Bezier:[$]=XO(b);break;case pr.SimpleBezier:[$]=jk(b);break;case pr.Step:[$]=Z0({...b,borderRadius:0});break;case pr.SmoothStep:[$]=Z0(b);break;default:[$]=JO(b)}return v.jsx("path",{d:$,fill:"none",className:"react-flow__connection-path",style:e})};qk.displayName="ConnectionLine";const HA={};function r1(e=HA){L.useRef(e),he(),L.useEffect(()=>{},[e])}function zA(){he(),L.useRef(!1),L.useEffect(()=>{},[])}function Wk({nodeTypes:e,edgeTypes:t,onInit:n,onNodeClick:i,onEdgeClick:s,onNodeDoubleClick:r,onEdgeDoubleClick:l,onNodeMouseEnter:c,onNodeMouseMove:u,onNodeMouseLeave:f,onNodeContextMenu:p,onSelectionContextMenu:m,onSelectionStart:g,onSelectionEnd:y,connectionLineType:$,connectionLineStyle:b,connectionLineComponent:S,connectionLineContainerStyle:O,selectionKeyCode:E,selectionOnDrag:k,selectionMode:D,multiSelectionKeyCode:_,panActivationKeyCode:A,zoomActivationKeyCode:H,deleteKeyCode:Y,onlyRenderVisibleElements:W,elementsSelectable:nt,defaultViewport:U,translateExtent:P,minZoom:F,maxZoom:M,preventScrolling:G,defaultMarkerColor:T,zoomOnScroll:z,zoomOnPinch:Z,panOnScroll:Q,panOnScrollSpeed:et,panOnScrollMode:j,zoomOnDoubleClick:R,panOnDrag:J,autoPanOnSelection:st,onPaneClick:ut,onPaneMouseEnter:ft,onPaneMouseMove:dt,onPaneMouseLeave:rt,onPaneScroll:ht,onPaneContextMenu:Ct,paneClickDistance:Et,nodeClickDistance:St,onEdgeContextMenu:Ot,onEdgeMouseEnter:Nt,onEdgeMouseMove:Yt,onEdgeMouseLeave:Qt,reconnectRadius:fe,onReconnect:nn,onReconnectStart:hn,onReconnectEnd:fn,noDragClassName:Tn,noWheelClassName:Mr,noPanClassName:Ji,disableKeyboardA11y:xe,nodeExtent:Nn,rfId:Zn,viewport:Un,onViewportChange:In,nodesDraggable:ma}){return r1(e),r1(t),zA(),DA(n),NA(Un),v.jsx(JM,{onPaneClick:ut,onPaneMouseEnter:ft,onPaneMouseMove:dt,onPaneMouseLeave:rt,onPaneContextMenu:Ct,onPaneScroll:ht,paneClickDistance:Et,deleteKeyCode:Y,selectionKeyCode:E,selectionOnDrag:k,selectionMode:D,onSelectionStart:g,onSelectionEnd:y,multiSelectionKeyCode:_,panActivationKeyCode:A,zoomActivationKeyCode:H,elementsSelectable:nt,zoomOnScroll:z,zoomOnPinch:Z,zoomOnDoubleClick:R,panOnScroll:Q,panOnScrollSpeed:et,panOnScrollMode:j,panOnDrag:J,autoPanOnSelection:st,defaultViewport:U,translateExtent:P,minZoom:F,maxZoom:M,onSelectionContextMenu:m,preventScrolling:G,noDragClassName:Tn,noWheelClassName:Mr,noPanClassName:Ji,disableKeyboardA11y:xe,onViewportChange:In,isControlledViewport:!!Un,children:v.jsxs(EA,{children:[v.jsx(CA,{edgeTypes:t,onEdgeClick:s,onEdgeDoubleClick:l,onReconnect:nn,onReconnectStart:hn,onReconnectEnd:fn,onlyRenderVisibleElements:W,onEdgeContextMenu:Ot,onEdgeMouseEnter:Nt,onEdgeMouseMove:Yt,onEdgeMouseLeave:Qt,reconnectRadius:fe,defaultMarkerColor:T,noPanClassName:Ji,disableKeyboardA11y:xe,rfId:Zn}),v.jsx(AA,{style:b,type:$,component:S,containerStyle:O}),v.jsx("div",{className:"react-flow__edgelabel-renderer"}),v.jsx(aA,{nodeTypes:e,onNodeClick:i,onNodeDoubleClick:r,onNodeMouseEnter:c,onNodeMouseMove:u,onNodeMouseLeave:f,onNodeContextMenu:p,nodeClickDistance:St,onlyRenderVisibleElements:W,noPanClassName:Ji,noDragClassName:Tn,disableKeyboardA11y:xe,nodeExtent:Nn,rfId:Zn,nodesDraggable:ma}),v.jsx("div",{className:"react-flow__viewport-portal"})]})})}Wk.displayName="GraphView";const BA=L.memo(Wk),YA=qO(),o1=({nodes:e,edges:t,defaultNodes:n,defaultEdges:i,width:s,height:r,fitView:l,fitViewOptions:c,minZoom:u=.5,maxZoom:f=2,nodeOrigin:p,nodeExtent:m,zIndexMode:g="basic"}={})=>{const y=new Map,$=new Map,b=new Map,S=new Map,O=i??t??[],E=n??e??[],k=p??[0,0],D=m??Lc;nk(b,S,O);const{nodesInitialized:_}=I0(E,y,$,{nodeOrigin:k,nodeExtent:D,zIndexMode:g});let A=[0,0,1];if(l&&s&&r){const H=du(y,{filter:U=>!!((U.width||U.initialWidth)&&(U.height||U.initialHeight))}),{x:Y,y:W,zoom:nt}=sw(H,s,r,u,f,(c==null?void 0:c.padding)??.1);A=[Y,W,nt]}return{rfId:"1",width:s??0,height:r??0,transform:A,nodes:E,nodesInitialized:_,nodeLookup:y,parentLookup:$,edges:O,edgeLookup:S,connectionLookup:b,onNodesChange:null,onEdgesChange:null,hasDefaultNodes:n!==void 0,hasDefaultEdges:i!==void 0,panZoom:null,minZoom:u,maxZoom:f,translateExtent:Lc,nodeExtent:D,nodesSelectionActive:!1,userSelectionActive:!1,userSelectionRect:null,connectionMode:So.Strict,domNode:null,paneDragging:!1,noPanClassName:"nopan",nodeOrigin:k,nodeDragThreshold:1,connectionDragThreshold:1,snapGrid:[15,15],snapToGrid:!1,nodesDraggable:!0,nodesConnectable:!0,nodesFocusable:!0,edgesFocusable:!0,edgesReconnectable:!0,elementsSelectable:!0,elevateNodesOnSelect:!0,elevateEdgesOnSelect:!0,selectNodesOnDrag:!0,multiSelectionActive:!1,fitViewQueued:l??!1,fitViewOptions:c,fitViewResolver:null,connection:{...zO},connectionClickStartHandle:null,connectOnClick:!0,ariaLiveMessage:"",autoPanOnConnect:!0,autoPanOnNodeDrag:!0,autoPanOnNodeFocus:!0,autoPanSpeed:15,connectionRadius:20,onError:YA,isValidConnection:void 0,onSelectionChangeHandlers:[],lib:"react",debug:!1,ariaLabelConfig:HO,zIndexMode:g,onNodesChangeMiddlewareMap:new Map,onEdgesChangeMiddlewareMap:new Map}},GA=({nodes:e,edges:t,defaultNodes:n,defaultEdges:i,width:s,height:r,fitView:l,fitViewOptions:c,minZoom:u,maxZoom:f,nodeOrigin:p,nodeExtent:m,zIndexMode:g})=>tM((y,$)=>{async function b(){const{nodeLookup:S,panZoom:O,fitViewOptions:E,fitViewResolver:k,width:D,height:_,minZoom:A,maxZoom:H}=$();O&&(await IR({nodes:S,width:D,height:_,panZoom:O,minZoom:A,maxZoom:H},E),k==null||k.resolve(!0),y({fitViewResolver:null}))}return{...o1({nodes:e,edges:t,width:s,height:r,fitView:l,fitViewOptions:c,minZoom:u,maxZoom:f,nodeOrigin:p,nodeExtent:m,defaultNodes:n,defaultEdges:i,zIndexMode:g}),setNodes:S=>{const{nodeLookup:O,parentLookup:E,nodeOrigin:k,elevateNodesOnSelect:D,fitViewQueued:_,zIndexMode:A,nodesSelectionActive:H}=$(),{nodesInitialized:Y,hasSelectedNodes:W}=I0(S,O,E,{nodeOrigin:k,nodeExtent:m,elevateNodesOnSelect:D,checkEquality:!0,zIndexMode:A}),nt=H&&W;_&&Y?(b(),y({nodes:S,nodesInitialized:Y,fitViewQueued:!1,fitViewOptions:void 0,nodesSelectionActive:nt})):y({nodes:S,nodesInitialized:Y,nodesSelectionActive:nt})},setEdges:S=>{const{connectionLookup:O,edgeLookup:E}=$();nk(O,E,S),y({edges:S})},setDefaultNodesAndEdges:(S,O)=>{if(S){const{setNodes:E}=$();E(S),y({hasDefaultNodes:!0})}if(O){const{setEdges:E}=$();E(O),y({hasDefaultEdges:!0})}},updateNodeInternals:S=>{const{triggerNodeChanges:O,nodeLookup:E,parentLookup:k,domNode:D,nodeOrigin:_,nodeExtent:A,debug:H,fitViewQueued:Y,zIndexMode:W}=$(),{changes:nt,updatedInternals:U}=y_(S,E,k,D,_,A,W);U&&(d_(E,k,{nodeOrigin:_,nodeExtent:A,zIndexMode:W}),Y?(b(),y({fitViewQueued:!1,fitViewOptions:void 0})):y({}),(nt==null?void 0:nt.length)>0&&(H&&console.log("React Flow: trigger node changes",nt),O==null||O(nt)))},updateNodePositions:(S,O=!1)=>{const E=[];let k=[];const{nodeLookup:D,triggerNodeChanges:_,connection:A,updateConnection:H,onNodesChangeMiddlewareMap:Y}=$();for(const[W,nt]of S){const U=D.get(W),P=!!(U!=null&&U.expandParent&&(U!=null&&U.parentId)&&(nt!=null&&nt.position)),F={id:W,type:"position",position:P?{x:Math.max(0,nt.position.x),y:Math.max(0,nt.position.y)}:nt.position,dragging:O};if(U&&A.inProgress&&A.fromNode.id===U.id){const M=Co(U,A.fromHandle,$t.Left,!0);H({...A,from:M})}P&&U.parentId&&E.push({id:W,parentId:U.parentId,rect:{...nt.internals.positionAbsolute,width:nt.measured.width??0,height:nt.measured.height??0}}),k.push(F)}if(E.length>0){const{parentLookup:W,nodeOrigin:nt}=$(),U=uw(E,D,W,nt);k.push(...U)}for(const W of Y.values())k=W(k);_(k)},triggerNodeChanges:S=>{const{onNodesChange:O,setNodes:E,nodes:k,hasDefaultNodes:D,debug:_}=$();if(S!=null&&S.length){if(D){const A=wk(S,k);E(A)}_&&console.log("React Flow: trigger node changes",S),O==null||O(S)}},triggerEdgeChanges:S=>{const{onEdgesChange:O,setEdges:E,edges:k,hasDefaultEdges:D,debug:_}=$();if(S!=null&&S.length){if(D){const A=$k(S,k);E(A)}_&&console.log("React Flow: trigger edge changes",S),O==null||O(S)}},addSelectedNodes:S=>{const{multiSelectionActive:O,edgeLookup:E,nodeLookup:k,triggerNodeChanges:D,triggerEdgeChanges:_}=$();if(O){const A=S.map(H=>oo(H,!0));D(A);return}D(_l(k,new Set([...S]),!0)),_(_l(E))},addSelectedEdges:S=>{const{multiSelectionActive:O,edgeLookup:E,nodeLookup:k,triggerNodeChanges:D,triggerEdgeChanges:_}=$();if(O){const A=S.map(H=>oo(H,!0));_(A);return}_(_l(E,new Set([...S]))),D(_l(k,new Set,!0))},unselectNodesAndEdges:({nodes:S,edges:O}={})=>{const{edges:E,nodes:k,nodeLookup:D,triggerNodeChanges:_,triggerEdgeChanges:A}=$(),H=S||k,Y=O||E,W=[];for(const U of H){if(!U.selected)continue;const P=D.get(U.id);P&&(P.selected=!1),W.push(oo(U.id,!1))}const nt=[];for(const U of Y)U.selected&&nt.push(oo(U.id,!1));_(W),A(nt)},setMinZoom:S=>{const{panZoom:O,maxZoom:E}=$();O==null||O.setScaleExtent([S,E]),y({minZoom:S})},setMaxZoom:S=>{const{panZoom:O,minZoom:E}=$();O==null||O.setScaleExtent([E,S]),y({maxZoom:S})},setTranslateExtent:S=>{var O;(O=$().panZoom)==null||O.setTranslateExtent(S),y({translateExtent:S})},resetSelectedElements:()=>{const{edges:S,nodes:O,triggerNodeChanges:E,triggerEdgeChanges:k,elementsSelectable:D}=$();if(!D)return;const _=O.reduce((H,Y)=>Y.selected?[...H,oo(Y.id,!1)]:H,[]),A=S.reduce((H,Y)=>Y.selected?[...H,oo(Y.id,!1)]:H,[]);E(_),k(A)},setNodeExtent:S=>{const{nodes:O,nodeLookup:E,parentLookup:k,nodeOrigin:D,elevateNodesOnSelect:_,nodeExtent:A,zIndexMode:H}=$();S[0][0]===A[0][0]&&S[0][1]===A[0][1]&&S[1][0]===A[1][0]&&S[1][1]===A[1][1]||(I0(O,E,k,{nodeOrigin:D,nodeExtent:S,elevateNodesOnSelect:_,checkEquality:!1,zIndexMode:H}),y({nodeExtent:S}))},panBy:S=>{const{transform:O,width:E,height:k,panZoom:D,translateExtent:_}=$();return w_({delta:S,panZoom:D,transform:O,translateExtent:_,width:E,height:k})},setCenter:async(S,O,E)=>{const{width:k,height:D,maxZoom:_,panZoom:A}=$();if(!A)return!1;const H=typeof(E==null?void 0:E.zoom)<"u"?E.zoom:_;return await A.setViewport({x:k/2-S*H,y:D/2-O*H,zoom:H},{duration:E==null?void 0:E.duration,ease:E==null?void 0:E.ease,interpolate:E==null?void 0:E.interpolate}),!0},cancelConnection:()=>{y({connection:{...zO}})},updateConnection:S=>{y({connection:S})},reset:()=>y({...o1()})}},Object.is);function Zk({initialNodes:e,initialEdges:t,defaultNodes:n,defaultEdges:i,initialWidth:s,initialHeight:r,initialMinZoom:l,initialMaxZoom:c,initialFitViewOptions:u,fitView:f,nodeOrigin:p,nodeExtent:m,zIndexMode:g,children:y}){const[$]=L.useState(()=>GA({nodes:e,edges:t,defaultNodes:n,defaultEdges:i,width:s,height:r,fitView:f,minZoom:l,maxZoom:c,fitViewOptions:u,nodeOrigin:p,nodeExtent:m,zIndexMode:g}));return v.jsx(eM,{value:$,children:v.jsx(kM,{children:v.jsx(GM,{children:y})})})}function LA({children:e,nodes:t,edges:n,defaultNodes:i,defaultEdges:s,width:r,height:l,fitView:c,fitViewOptions:u,minZoom:f,maxZoom:p,nodeOrigin:m,nodeExtent:g,zIndexMode:y}){return L.useContext(qd)?v.jsx(v.Fragment,{children:e}):v.jsx(Zk,{initialNodes:t,initialEdges:n,defaultNodes:i,defaultEdges:s,initialWidth:r,initialHeight:l,fitView:c,initialFitViewOptions:u,initialMinZoom:f,initialMaxZoom:p,nodeOrigin:m,nodeExtent:g,zIndexMode:y,children:e})}const QA={width:"100%",height:"100%",overflow:"hidden",position:"relative",zIndex:0};function PA({nodes:e,edges:t,defaultNodes:n,defaultEdges:i,className:s,nodeTypes:r,edgeTypes:l,onNodeClick:c,onEdgeClick:u,onInit:f,onMove:p,onMoveStart:m,onMoveEnd:g,onConnect:y,onConnectStart:$,onConnectEnd:b,onClickConnectStart:S,onClickConnectEnd:O,onNodeMouseEnter:E,onNodeMouseMove:k,onNodeMouseLeave:D,onNodeContextMenu:_,onNodeDoubleClick:A,onNodeDragStart:H,onNodeDrag:Y,onNodeDragStop:W,onNodesDelete:nt,onEdgesDelete:U,onDelete:P,onSelectionChange:F,onSelectionDragStart:M,onSelectionDrag:G,onSelectionDragStop:T,onSelectionContextMenu:z,onSelectionStart:Z,onSelectionEnd:Q,onBeforeDelete:et,connectionMode:j,connectionLineType:R=pr.Bezier,connectionLineStyle:J,connectionLineComponent:st,connectionLineContainerStyle:ut,deleteKeyCode:ft="Backspace",selectionKeyCode:dt="Shift",selectionOnDrag:rt=!1,selectionMode:ht=Vl.Full,panActivationKeyCode:Ct="Space",multiSelectionKeyCode:Et=Pc()?"Meta":"Control",zoomActivationKeyCode:St=Pc()?"Meta":"Control",snapToGrid:Ot,snapGrid:Nt,onlyRenderVisibleElements:Yt=!1,selectNodesOnDrag:Qt,nodesDraggable:fe,autoPanOnNodeFocus:nn,nodesConnectable:hn,nodesFocusable:fn,nodeOrigin:Tn=gk,edgesFocusable:Mr,edgesReconnectable:Ji,elementsSelectable:xe=!0,defaultViewport:Nn=pM,minZoom:Zn=.5,maxZoom:Un=2,translateExtent:In=Lc,preventScrolling:ma=!0,nodeExtent:Ao,defaultMarkerColor:pp="#b1b1b7",zoomOnScroll:mp=!0,zoomOnPinch:Ar=!0,panOnScroll:sn=!1,panOnScrollSpeed:Ei=.5,panOnScrollMode:rn=yo.Free,zoomOnDoubleClick:gp=!0,panOnDrag:yp=!0,onPaneClick:wp,onPaneMouseEnter:Ho,onPaneMouseMove:zo,onPaneMouseLeave:Bo,onPaneScroll:ts,onPaneContextMenu:Yo,paneClickDistance:Hr=1,nodeClickDistance:$p=0,children:Su,onReconnect:ga,onReconnectStart:zr,onReconnectEnd:xp,onEdgeContextMenu:Ou,onEdgeDoubleClick:ku,onEdgeMouseEnter:Cu,onEdgeMouseMove:ya,onEdgeMouseLeave:wa,reconnectRadius:Eu=10,onNodesChange:Du,onEdgesChange:Di,noDragClassName:Me="nodrag",noWheelClassName:Ie="nowheel",noPanClassName:es="nopan",fitView:Go,fitViewOptions:Tu,connectOnClick:bp,attributionPosition:Nu,proOptions:Br,defaultEdgeOptions:$a,elevateNodesOnSelect:Ms=!0,elevateEdgesOnSelect:As=!1,disableKeyboardA11y:Hs=!1,autoPanOnConnect:zs,autoPanOnNodeDrag:Ce,autoPanOnSelection:ju=!0,autoPanSpeed:Ru,connectionRadius:ns,isValidConnection:Bs,onError:vp,style:_u,id:xa,nodeDragThreshold:Sp,connectionDragThreshold:Lo,viewport:Qo,onViewportChange:ui,width:dn,height:Mu,colorMode:Op="light",debug:ba,onScroll:Yr,ariaLabelConfig:Po,zIndexMode:Au="basic",...pn},va){const qo=xa||"1",Sa=wM(Op),Ys=L.useCallback(Oa=>{Oa.currentTarget.scrollTo({top:0,left:0,behavior:"instant"}),Yr==null||Yr(Oa)},[Yr]);return v.jsx("div",{"data-testid":"rf__wrapper",...pn,onScroll:Ys,style:{..._u,...QA},ref:va,className:Re(["react-flow",s,Sa]),id:xa,role:"application",children:v.jsxs(LA,{nodes:e,edges:t,width:dn,height:Mu,fitView:Go,fitViewOptions:Tu,minZoom:Zn,maxZoom:Un,nodeOrigin:Tn,nodeExtent:Ao,zIndexMode:Au,children:[v.jsx(yM,{nodes:e,edges:t,defaultNodes:n,defaultEdges:i,onConnect:y,onConnectStart:$,onConnectEnd:b,onClickConnectStart:S,onClickConnectEnd:O,nodesDraggable:fe,autoPanOnNodeFocus:nn,nodesConnectable:hn,nodesFocusable:fn,edgesFocusable:Mr,edgesReconnectable:Ji,elementsSelectable:xe,elevateNodesOnSelect:Ms,elevateEdgesOnSelect:As,minZoom:Zn,maxZoom:Un,nodeExtent:Ao,onNodesChange:Du,onEdgesChange:Di,snapToGrid:Ot,snapGrid:Nt,connectionMode:j,translateExtent:In,connectOnClick:bp,defaultEdgeOptions:$a,fitView:Go,fitViewOptions:Tu,onNodesDelete:nt,onEdgesDelete:U,onDelete:P,onNodeDragStart:H,onNodeDrag:Y,onNodeDragStop:W,onSelectionDrag:G,onSelectionDragStart:M,onSelectionDragStop:T,onMove:p,onMoveStart:m,onMoveEnd:g,noPanClassName:es,nodeOrigin:Tn,rfId:qo,autoPanOnConnect:zs,autoPanOnNodeDrag:Ce,autoPanSpeed:Ru,onError:vp,connectionRadius:ns,isValidConnection:Bs,selectNodesOnDrag:Qt,nodeDragThreshold:Sp,connectionDragThreshold:Lo,onBeforeDelete:et,debug:ba,ariaLabelConfig:Po,zIndexMode:Au}),v.jsx(BA,{onInit:f,onNodeClick:c,onEdgeClick:u,onNodeMouseEnter:E,onNodeMouseMove:k,onNodeMouseLeave:D,onNodeContextMenu:_,onNodeDoubleClick:A,nodeTypes:r,edgeTypes:l,connectionLineType:R,connectionLineStyle:J,connectionLineComponent:st,connectionLineContainerStyle:ut,selectionKeyCode:dt,selectionOnDrag:rt,selectionMode:ht,deleteKeyCode:ft,multiSelectionKeyCode:Et,panActivationKeyCode:Ct,zoomActivationKeyCode:St,onlyRenderVisibleElements:Yt,defaultViewport:Nn,translateExtent:In,minZoom:Zn,maxZoom:Un,preventScrolling:ma,zoomOnScroll:mp,zoomOnPinch:Ar,zoomOnDoubleClick:gp,panOnScroll:sn,panOnScrollSpeed:Ei,panOnScrollMode:rn,panOnDrag:yp,autoPanOnSelection:ju,onPaneClick:wp,onPaneMouseEnter:Ho,onPaneMouseMove:zo,onPaneMouseLeave:Bo,onPaneScroll:ts,onPaneContextMenu:Yo,paneClickDistance:Hr,nodeClickDistance:$p,onSelectionContextMenu:z,onSelectionStart:Z,onSelectionEnd:Q,onReconnect:ga,onReconnectStart:zr,onReconnectEnd:xp,onEdgeContextMenu:Ou,onEdgeDoubleClick:ku,onEdgeMouseEnter:Cu,onEdgeMouseMove:ya,onEdgeMouseLeave:wa,reconnectRadius:Eu,defaultMarkerColor:pp,noDragClassName:Me,noWheelClassName:Ie,noPanClassName:es,rfId:qo,disableKeyboardA11y:Hs,nodeExtent:Ao,viewport:Qo,onViewportChange:ui,nodesDraggable:fe}),v.jsx(dM,{onSelectionChange:F}),Su,v.jsx(aM,{proOptions:Br,position:Nu}),v.jsx(lM,{rfId:qo,disableKeyboardA11y:Hs})]})})}var qA=xk(PA);const WA=e=>{var t;return(t=e.domNode)==null?void 0:t.querySelector(".react-flow__edgelabel-renderer")};function Uk({children:e}){const t=qt(WA);return t?fk.createPortal(e,t):null}const ZA=e=>{var t;return(t=e.domNode)==null?void 0:t.querySelector(".react-flow__viewport-portal")};function UA({children:e}){const t=qt(ZA);return t?fk.createPortal(e,t):null}function IA({dimensions:e,lineWidth:t,variant:n,className:i}){return v.jsx("path",{strokeWidth:t,d:`M${e[0]/2} 0 V${e[1]} M0 ${e[1]/2} H${e[0]}`,className:Re(["react-flow__background-pattern",n,i])})}function FA({radius:e,className:t}){return v.jsx("circle",{cx:e,cy:e,r:e,className:Re(["react-flow__background-pattern","dots",t])})}var xr;(function(e){e.Lines="lines",e.Dots="dots",e.Cross="cross"})(xr||(xr={}));const VA={[xr.Dots]:1,[xr.Lines]:1,[xr.Cross]:6},XA=e=>({transform:e.transform,patternId:`pattern-${e.rfId}`});function Ik({id:e,variant:t=xr.Dots,gap:n=20,size:i,lineWidth:s=1,offset:r=0,color:l,bgColor:c,style:u,className:f,patternClassName:p}){const m=L.useRef(null),{transform:g,patternId:y}=qt(XA,ge),$=i||VA[t],b=t===xr.Dots,S=t===xr.Cross,O=Array.isArray(n)?n:[n,n],E=[O[0]*g[2]||1,O[1]*g[2]||1],k=$*g[2],D=Array.isArray(r)?r:[r,r],_=S?[k,k]:E,A=[D[0]*g[2]||1+_[0]/2,D[1]*g[2]||1+_[1]/2],H=`${y}${e||""}`;return v.jsxs("svg",{className:Re(["react-flow__background",f]),style:{...u,...Zd,"--xy-background-color-props":c,"--xy-background-pattern-color-props":l},ref:m,"data-testid":"rf__background",children:[v.jsx("pattern",{id:H,x:g[0]%E[0],y:g[1]%E[1],width:E[0],height:E[1],patternUnits:"userSpaceOnUse",patternTransform:`translate(-${A[0]},-${A[1]})`,children:b?v.jsx(FA,{radius:k/2,className:p}):v.jsx(IA,{dimensions:_,lineWidth:s,variant:t,className:p})}),v.jsx("rect",{x:"0",y:"0",width:"100%",height:"100%",fill:`url(#${H})`})]})}Ik.displayName="Background";const KA=L.memo(Ik);function JA(){return v.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 32",children:v.jsx("path",{d:"M32 18.133H18.133V32h-4.266V18.133H0v-4.266h13.867V0h4.266v13.867H32z"})})}function t8(){return v.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 5",children:v.jsx("path",{d:"M0 0h32v4.2H0z"})})}function e8(){return v.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 32 30",children:v.jsx("path",{d:"M3.692 4.63c0-.53.4-.938.939-.938h5.215V0H4.708C2.13 0 0 2.054 0 4.63v5.216h3.692V4.631zM27.354 0h-5.2v3.692h5.17c.53 0 .984.4.984.939v5.215H32V4.631A4.624 4.624 0 0027.354 0zm.954 24.83c0 .532-.4.94-.939.94h-5.215v3.768h5.215c2.577 0 4.631-2.13 4.631-4.707v-5.139h-3.692v5.139zm-23.677.94c-.531 0-.939-.4-.939-.94v-5.138H0v5.139c0 2.577 2.13 4.707 4.708 4.707h5.138V25.77H4.631z"})})}function n8(){return v.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:v.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0 8 0 4.571 3.429 4.571 7.619v3.048H3.048A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047zm4.724-13.866H7.467V7.619c0-2.59 2.133-4.724 4.723-4.724 2.591 0 4.724 2.133 4.724 4.724v3.048z"})})}function i8(){return v.jsx("svg",{xmlns:"http://www.w3.org/2000/svg",viewBox:"0 0 25 32",children:v.jsx("path",{d:"M21.333 10.667H19.81V7.619C19.81 3.429 16.38 0 12.19 0c-4.114 1.828-1.37 2.133.305 2.438 1.676.305 4.42 2.59 4.42 5.181v3.048H3.047A3.056 3.056 0 000 13.714v15.238A3.056 3.056 0 003.048 32h18.285a3.056 3.056 0 003.048-3.048V13.714a3.056 3.056 0 00-3.048-3.047zM12.19 24.533a3.056 3.056 0 01-3.047-3.047 3.056 3.056 0 013.047-3.048 3.056 3.056 0 013.048 3.048 3.056 3.056 0 01-3.048 3.047z"})})}function Jh({children:e,className:t,...n}){return v.jsx("button",{type:"button",className:Re(["react-flow__controls-button",t]),...n,children:e})}const s8=e=>({isInteractive:e.nodesDraggable||e.nodesConnectable||e.elementsSelectable,minZoomReached:e.transform[2]<=e.minZoom,maxZoomReached:e.transform[2]>=e.maxZoom,ariaLabelConfig:e.ariaLabelConfig});function Fk({style:e,showZoom:t=!0,showFitView:n=!0,showInteractive:i=!0,fitViewOptions:s,onZoomIn:r,onZoomOut:l,onFitView:c,onInteractiveChange:u,className:f,children:p,position:m="bottom-left",orientation:g="vertical","aria-label":y}){const $=he(),{isInteractive:b,minZoomReached:S,maxZoomReached:O,ariaLabelConfig:E}=qt(s8,ge),{zoomIn:k,zoomOut:D,fitView:_}=ua(),A=()=>{k(),r==null||r()},H=()=>{D(),l==null||l()},Y=()=>{_(s),c==null||c()},W=()=>{$.setState({nodesDraggable:!b,nodesConnectable:!b,elementsSelectable:!b}),u==null||u(!b)},nt=g==="horizontal"?"horizontal":"vertical";return v.jsxs(Wd,{className:Re(["react-flow__controls",nt,f]),position:m,style:e,"data-testid":"rf__controls","aria-label":y??E["controls.ariaLabel"],children:[t&&v.jsxs(v.Fragment,{children:[v.jsx(Jh,{onClick:A,className:"react-flow__controls-zoomin",title:E["controls.zoomIn.ariaLabel"],"aria-label":E["controls.zoomIn.ariaLabel"],disabled:O,children:v.jsx(JA,{})}),v.jsx(Jh,{onClick:H,className:"react-flow__controls-zoomout",title:E["controls.zoomOut.ariaLabel"],"aria-label":E["controls.zoomOut.ariaLabel"],disabled:S,children:v.jsx(t8,{})})]}),n&&v.jsx(Jh,{className:"react-flow__controls-fitview",onClick:Y,title:E["controls.fitView.ariaLabel"],"aria-label":E["controls.fitView.ariaLabel"],children:v.jsx(e8,{})}),i&&v.jsx(Jh,{className:"react-flow__controls-interactive",onClick:W,title:E["controls.interactive.ariaLabel"],"aria-label":E["controls.interactive.ariaLabel"],children:b?v.jsx(i8,{}):v.jsx(n8,{})}),p]})}Fk.displayName="Controls";const r8=L.memo(Fk);function o8({id:e,x:t,y:n,width:i,height:s,style:r,color:l,strokeColor:c,strokeWidth:u,className:f,borderRadius:p,shapeRendering:m,selected:g,onClick:y}){const{background:$,backgroundColor:b}=r||{},S=l||$||b;return v.jsx("rect",{className:Re(["react-flow__minimap-node",{selected:g},f]),x:t,y:n,rx:p,ry:p,width:i,height:s,style:{fill:S,stroke:c,strokeWidth:u},shapeRendering:m,onClick:y?O=>y(O,e):void 0})}const l8=L.memo(o8),a8=e=>e.nodes.map(t=>t.id),Ug=e=>e instanceof Function?e:()=>e;function c8({nodeStrokeColor:e,nodeColor:t,nodeClassName:n="",nodeBorderRadius:i=5,nodeStrokeWidth:s,nodeComponent:r=l8,onClick:l}){const c=qt(a8,ge),u=Ug(t),f=Ug(e),p=Ug(n),m=typeof window>"u"||window.chrome?"crispEdges":"geometricPrecision";return v.jsx(v.Fragment,{children:c.map(g=>v.jsx(h8,{id:g,nodeColorFunc:u,nodeStrokeColorFunc:f,nodeClassNameFunc:p,nodeBorderRadius:i,nodeStrokeWidth:s,NodeComponent:r,onClick:l,shapeRendering:m},g))})}function u8({id:e,nodeColorFunc:t,nodeStrokeColorFunc:n,nodeClassNameFunc:i,nodeBorderRadius:s,nodeStrokeWidth:r,shapeRendering:l,NodeComponent:c,onClick:u}){const{node:f,x:p,y:m,width:g,height:y}=qt($=>{const b=$.nodeLookup.get(e);if(!b)return{node:void 0,x:0,y:0,width:0,height:0};const S=b.internals.userNode,{x:O,y:E}=b.internals.positionAbsolute,{width:k,height:D}=Vi(S);return{node:S,x:O,y:E,width:k,height:D}},ge);return!f||f.hidden||!WO(f)?null:v.jsx(c,{x:p,y:m,width:g,height:y,style:f.style,selected:!!f.selected,className:i(f),color:t(f),borderRadius:s,strokeColor:n(f),strokeWidth:r,shapeRendering:l,onClick:u,id:f.id})}const h8=L.memo(u8);var f8=L.memo(c8);const d8=200,p8=150,m8=e=>!e.hidden,g8=e=>{const t={x:-e.transform[0]/e.transform[2],y:-e.transform[1]/e.transform[2],width:e.width/e.transform[2],height:e.height/e.transform[2]};return{viewBB:t,boundingRect:e.nodeLookup.size>0?QO(du(e.nodeLookup,{filter:m8}),t):t,rfId:e.rfId,panZoom:e.panZoom,translateExtent:e.translateExtent,flowWidth:e.width,flowHeight:e.height,ariaLabelConfig:e.ariaLabelConfig}},l1=(e,t)=>e.x===t.x&&e.y===t.y&&e.width===t.width&&e.height===t.height,y8=(e,t)=>l1(e.viewBB,t.viewBB)&&l1(e.boundingRect,t.boundingRect)&&e.rfId===t.rfId&&e.panZoom===t.panZoom&&e.translateExtent===t.translateExtent&&e.flowWidth===t.flowWidth&&e.flowHeight===t.flowHeight&&e.ariaLabelConfig===t.ariaLabelConfig,w8="react-flow__minimap-desc";function Vk({style:e,className:t,nodeStrokeColor:n,nodeColor:i,nodeClassName:s="",nodeBorderRadius:r=5,nodeStrokeWidth:l,nodeComponent:c,bgColor:u,maskColor:f,maskStrokeColor:p,maskStrokeWidth:m,position:g="bottom-right",onClick:y,onNodeClick:$,pannable:b=!1,zoomable:S=!1,ariaLabel:O,inversePan:E,zoomStep:k=1,offsetScale:D=5}){const _=he(),A=L.useRef(null),{boundingRect:H,viewBB:Y,rfId:W,panZoom:nt,translateExtent:U,flowWidth:P,flowHeight:F,ariaLabelConfig:M}=qt(g8,y8),G=(e==null?void 0:e.width)??d8,T=(e==null?void 0:e.height)??p8,z=H.width/G,Z=H.height/T,Q=Math.max(z,Z),et=Q*G,j=Q*T,R=D*Q,J=H.x-(et-H.width)/2-R,st=H.y-(j-H.height)/2-R,ut=et+R*2,ft=j+R*2,dt=`${w8}-${W}`,rt=L.useRef(0),ht=L.useRef();rt.current=Q,L.useEffect(()=>{if(A.current&&nt)return ht.current=E_({domNode:A.current,panZoom:nt,getTransform:()=>_.getState().transform,getViewScale:()=>rt.current}),()=>{var Ot;(Ot=ht.current)==null||Ot.destroy()}},[nt]),L.useEffect(()=>{var Ot;(Ot=ht.current)==null||Ot.update({translateExtent:U,width:P,height:F,inversePan:E,pannable:b,zoomStep:k,zoomable:S})},[b,S,E,k,U,P,F]);const Ct=y?Ot=>{var Qt;const[Nt,Yt]=((Qt=ht.current)==null?void 0:Qt.pointer(Ot))||[0,0];y(Ot,{x:Nt,y:Yt})}:void 0,Et=$?L.useCallback((Ot,Nt)=>{const Yt=_.getState().nodeLookup.get(Nt).internals.userNode;$(Ot,Yt)},[]):void 0,St=O??M["minimap.ariaLabel"];return v.jsx(Wd,{position:g,style:{...e,"--xy-minimap-background-color-props":typeof u=="string"?u:void 0,"--xy-minimap-mask-background-color-props":typeof f=="string"?f:void 0,"--xy-minimap-mask-stroke-color-props":typeof p=="string"?p:void 0,"--xy-minimap-mask-stroke-width-props":typeof m=="number"?m*Q:void 0,"--xy-minimap-node-background-color-props":typeof i=="string"?i:void 0,"--xy-minimap-node-stroke-color-props":typeof n=="string"?n:void 0,"--xy-minimap-node-stroke-width-props":typeof l=="number"?l:void 0},className:Re(["react-flow__minimap",t]),"data-testid":"rf__minimap",children:v.jsxs("svg",{width:G,height:T,viewBox:`${J} ${st} ${ut} ${ft}`,className:"react-flow__minimap-svg",role:"img","aria-labelledby":dt,ref:A,onClick:Ct,children:[St&&v.jsx("title",{id:dt,children:St}),v.jsx(f8,{onClick:Et,nodeColor:i,nodeStrokeColor:n,nodeBorderRadius:r,nodeClassName:s,nodeStrokeWidth:l,nodeComponent:c}),v.jsx("path",{className:"react-flow__minimap-mask",d:`M${J-R},${st-R}h${ut+R*2}v${ft+R*2}h${-ut-R*2}z
72
+ M${Y.x},${Y.y}h${Y.width}v${Y.height}h${-Y.width}z`,fillRule:"evenodd",pointerEvents:"none"})]})})}Vk.displayName="MiniMap";const $8=L.memo(Vk),x8=e=>t=>e?`${Math.max(1/t.transform[2],1)}`:void 0,b8={[Eo.Line]:"right",[Eo.Handle]:"bottom-right"};function v8({nodeId:e,position:t,variant:n=Eo.Handle,className:i,style:s=void 0,children:r,color:l,minWidth:c=10,minHeight:u=10,maxWidth:f=Number.MAX_VALUE,maxHeight:p=Number.MAX_VALUE,keepAspectRatio:m=!1,resizeDirection:g,autoScale:y=!0,shouldResize:$,onResizeStart:b,onResize:S,onResizeEnd:O}){const E=kk(),k=typeof e=="string"?e:E,D=he(),_=L.useRef(null),A=n===Eo.Handle,H=qt(L.useCallback(x8(A&&y),[A,y]),ge),Y=L.useRef(null),W=t??b8[n];L.useEffect(()=>{if(!(!_.current||!k))return Y.current||(Y.current=Q_({domNode:_.current,nodeId:k,getStoreItems:()=>{const{nodeLookup:U,transform:P,snapGrid:F,snapToGrid:M,nodeOrigin:G,domNode:T}=D.getState();return{nodeLookup:U,transform:P,snapGrid:F,snapToGrid:M,nodeOrigin:G,paneDomNode:T}},onChange:(U,P)=>{const{triggerNodeChanges:F,nodeLookup:M,parentLookup:G,nodeOrigin:T}=D.getState(),z=[],Z={x:U.x,y:U.y},Q=M.get(k);if(Q&&Q.expandParent&&Q.parentId){const et=Q.origin??T,j=U.width??Q.measured.width??0,R=U.height??Q.measured.height??0,J={id:Q.id,parentId:Q.parentId,rect:{width:j,height:R,...ZO({x:U.x??Q.position.x,y:U.y??Q.position.y},{width:j,height:R},Q.parentId,M,et)}},st=uw([J],M,G,T);z.push(...st),Z.x=U.x?Math.max(et[0]*j,U.x):void 0,Z.y=U.y?Math.max(et[1]*R,U.y):void 0}if(Z.x!==void 0&&Z.y!==void 0){const et={id:k,type:"position",position:{...Z}};z.push(et)}if(U.width!==void 0&&U.height!==void 0){const j={id:k,type:"dimensions",resizing:!0,setAttributes:g?g==="horizontal"?"width":"height":!0,dimensions:{width:U.width,height:U.height}};z.push(j)}for(const et of P){const j={...et,type:"position"};z.push(j)}F(z)},onEnd:({width:U,height:P})=>{const F={id:k,type:"dimensions",resizing:!1,dimensions:{width:U,height:P}};D.getState().triggerNodeChanges([F])}})),Y.current.update({controlPosition:W,boundaries:{minWidth:c,minHeight:u,maxWidth:f,maxHeight:p},keepAspectRatio:m,resizeDirection:g,onResizeStart:b,onResize:S,onResizeEnd:O,shouldResize:$}),()=>{var U;(U=Y.current)==null||U.destroy()}},[W,c,u,f,p,m,b,S,O,$]);const nt=W.split("-");return v.jsx("div",{className:Re(["react-flow__resize-control","nodrag",...nt,n,i]),ref:_,style:{...s,scale:H,...l&&{[A?"backgroundColor":"borderColor"]:l}},children:r})}const a1=L.memo(v8);function S8({nodeId:e,isVisible:t=!0,handleClassName:n,handleStyle:i,lineClassName:s,lineStyle:r,color:l,minWidth:c=10,minHeight:u=10,maxWidth:f=Number.MAX_VALUE,maxHeight:p=Number.MAX_VALUE,keepAspectRatio:m=!1,autoScale:g=!0,shouldResize:y,onResizeStart:$,onResize:b,onResizeEnd:S}){return t?v.jsxs(v.Fragment,{children:[z_.map(O=>v.jsx(a1,{className:s,style:r,nodeId:e,position:O,variant:Eo.Line,color:l,minWidth:c,minHeight:u,maxWidth:f,maxHeight:p,onResizeStart:$,keepAspectRatio:m,autoScale:g,shouldResize:y,onResize:b,onResizeEnd:S},O)),H_.map(O=>v.jsx(a1,{className:n,style:i,nodeId:e,position:O,color:l,minWidth:c,minHeight:u,maxWidth:f,maxHeight:p,onResizeStart:$,keepAspectRatio:m,autoScale:g,shouldResize:y,onResize:b,onResizeEnd:S},O))]}):null}const c1=e=>{let t;const n=new Set,i=(f,p)=>{const m=typeof f=="function"?f(t):f;if(!Object.is(m,t)){const g=t;t=p??(typeof m!="object"||m===null)?m:Object.assign({},t,m),n.forEach(y=>y(t,g))}},s=()=>t,c={setState:i,getState:s,getInitialState:()=>u,subscribe:f=>(n.add(f),()=>n.delete(f))},u=t=e(i,s,c);return c},O8=(e=>e?c1(e):c1),k8=e=>e;function C8(e,t=k8){const n=vc.useSyncExternalStore(e.subscribe,vc.useCallback(()=>t(e.getState()),[e,t]),vc.useCallback(()=>t(e.getInitialState()),[e,t]));return vc.useDebugValue(n),n}const u1=e=>{const t=O8(e),n=i=>C8(t,i);return Object.assign(n,t),n},_o=(e=>e?u1(e):u1),fw=["square","round","stadium","subroutine","cylinder","circle","doublecircle","diamond","hexagon","odd","trapezoid","inv_trapezoid","lean_right","lean_left"],E8={square:"Process",round:"Rounded",stadium:"Terminator",subroutine:"Subroutine",cylinder:"Database",circle:"Circle",doublecircle:"Double circle",diamond:"Decision",hexagon:"Hexagon",odd:"Flag",trapezoid:"Trapezoid",inv_trapezoid:"Trapezoid alt",lean_right:"Input/Output",lean_left:"Output/Input"},X0=["ONLY_ONE","ZERO_OR_ONE","ZERO_OR_MORE","ONE_OR_MORE"],h1={ONLY_ONE:"exactly 1",ZERO_OR_ONE:"0 or 1",ZERO_OR_MORE:"0..N",ONE_OR_MORE:"1..N"},f1=["none","extension","composition","aggregation","dependency"],D8=["->>","-->>","->","-->","-x","--x","-)","--)"],T8={"->>":"Solid arrow","-->>":"Dotted arrow","->":"Solid open","-->":"Dotted open","-x":"Solid cross","--x":"Dotted cross","-)":"Async","--)":"Dotted async"},Xk=["person","external_person","system","external_system","system_db","system_queue","container","external_container","container_db","container_queue","component","external_component","component_db","component_queue","external_system_db","external_system_queue","external_container_db","external_container_queue","external_component_db","external_component_queue"];function je(e){return e.type==="group"}function Kk(e){switch(e){case"circle":case"doublecircle":return{width:96,height:96};case"diamond":return{width:150,height:86};default:return{width:160,height:54}}}function Yl(e){switch(e.type){case"shape":return Kk(e.data.shape);case"state":{const t=e.data.stateType;return t==="normal"?{width:150,height:46}:t==="choice"?{width:40,height:40}:t==="fork"||t==="join"?{width:70,height:12}:{width:28,height:28}}case"entity":return{width:210,height:36+Math.max(1,e.data.attributes.length)*22};case"class":return{width:210,height:38+(e.data.members.length+e.data.methods.length)*20+12};case"participant":return{width:150,height:48};case"note":return{width:150,height:64};case"service":return{width:110,height:96};case"junction":return{width:16,height:16};case"c4":return{width:200,height:110};default:return{width:320,height:220}}}const N8="modulepreload",j8=function(e,t){return new URL(e,t).href},d1={},Oe=function(t,n,i){let s=Promise.resolve();if(n&&n.length>0){let l=function(p){return Promise.all(p.map(m=>Promise.resolve(m).then(g=>({status:"fulfilled",value:g}),g=>({status:"rejected",reason:g}))))};const c=document.getElementsByTagName("link"),u=document.querySelector("meta[property=csp-nonce]"),f=(u==null?void 0:u.nonce)||(u==null?void 0:u.getAttribute("nonce"));s=l(n.map(p=>{if(p=j8(p,i),p in d1)return;d1[p]=!0;const m=p.endsWith(".css"),g=m?'[rel="stylesheet"]':"";if(!!i)for(let b=c.length-1;b>=0;b--){const S=c[b];if(S.href===p&&(!m||S.rel==="stylesheet"))return}else if(document.querySelector(`link[href="${p}"]${g}`))return;const $=document.createElement("link");if($.rel=m?"stylesheet":N8,m||($.as="script"),$.crossOrigin="",$.href=p,f&&$.setAttribute("nonce",f),document.head.appendChild($),m)return new Promise((b,S)=>{$.addEventListener("load",b),$.addEventListener("error",()=>S(new Error(`Unable to preload CSS for ${p}`)))})}))}function r(l){const c=new Event("vite:preloadError",{cancelable:!0});if(c.payload=l,window.dispatchEvent(c),!c.defaultPrevented)throw l}return s.then(l=>{for(const c of l||[])c.status==="rejected"&&r(c.reason);return t().catch(r)})};let Ig=null,p1=Promise.resolve();function dw(e){const t=p1.then(async()=>e(await R8()));return p1=t.catch(()=>{}),t}function R8(){return Ig||(Ig=Oe(()=>import("./mermaid.core-pPiwjbNO.js").then(e=>e.bc),[],import.meta.url).then(e=>(e.default.initialize({startOnLoad:!1,securityLevel:"strict",suppressErrorRendering:!0}),e.default.registerIconPacks([{name:"logos",loader:()=>Oe(()=>import("./index-BDuFgzVF.js"),[],import.meta.url).then(t=>t.icons)},{name:"simple-icons",loader:()=>Oe(()=>import("./index-XppXLvIK.js"),[],import.meta.url).then(t=>t.icons)},{name:"devicon",loader:()=>Oe(()=>import("./index-C-tHkbn_.js"),[],import.meta.url).then(t=>t.icons)},{name:"carbon",loader:()=>Oe(()=>import("./index-C1mNJrF6.js"),[],import.meta.url).then(t=>t.icons)},{name:"tabler",loader:()=>Oe(()=>import("./index-B29u660W.js"),[],import.meta.url).then(t=>t.icons)}]),e.default))),Ig}function K0(e){return`"${e.replace(/"/g,"#quot;")}"`}function Jk(e){const t=typeof e=="string"?e.toUpperCase():"TB";return t==="TB"||t==="TD"||t==="LR"||t==="RL"||t==="BT"?t:"TB"}function wo(e){return e instanceof Map?[...e.entries()]:e&&typeof e=="object"?Object.entries(e):[]}function _8(e){return typeof e=="string"&&fw.includes(e)?e:"square"}function M8(e){var m,g,y,$,b;const t=wo((m=e.getVertices)==null?void 0:m.call(e)),n=((g=e.getEdges)==null?void 0:g.call(e))??[],i=((y=e.getSubGraphs)==null?void 0:y.call(e))??[],s=Jk(($=e.getDirection)==null?void 0:$.call(e)),r=new Set(i.map(S=>String(S.id))),l=new Map;for(const S of i)for(const O of S.nodes??[])l.set(String(O),String(S.id));const c=[],u=S=>{if(c.some(D=>D.id===S))return;const O=i.find(D=>String(D.id)===S);if(!O)return;const E=l.get(S);E&&u(E);const k={id:S,type:"group",position:{x:0,y:0},data:{label:String(O.title??S),subgraphId:S},style:{width:320,height:220},...E?{parentId:E}:{}};c.push(k)};for(const S of i)u(String(S.id));const f={};for(const[S,O]of wo((b=e.getClasses)==null?void 0:b.call(e)))S!=="default"&&(f[S]=(O.styles??[]).map(String));for(const[S,O]of t){if(r.has(S))continue;const E=l.get(S),k=(O.classes??[]).map(String).filter(A=>A!=="default"),D=(O.styles??[]).map(String),_={id:S,type:"shape",position:{x:0,y:0},data:{label:String(O.text??S),shape:_8(O.type),direction:s,...k.length?{classes:k}:{},...D.length?{styles:D}:{}},...E?{parentId:E}:{}};c.push(_)}const p=n.map((S,O)=>{const E=String(S.type??"arrow_point"),k=E.startsWith("double_"),D=E.replace(/^double_/,""),_=D==="arrow_open"||D==="arrow_circle"||D==="arrow_cross"?D:"arrow_point",A=String(S.stroke??"normal"),H=A==="dotted"||A==="thick"?A:"normal";return{id:`e${O}_${S.start}_${S.end}`,source:String(S.start),target:String(S.end),data:{label:String(S.text??""),stroke:H,arrow:_,...k?{both:!0}:{}}}});return{direction:s,nodes:c,edges:p,classDefs:f}}function A8(e,t){const n=K0(t);switch(e){case"square":return`[${n}]`;case"round":return`(${n})`;case"stadium":return`([${n}])`;case"subroutine":return`[[${n}]]`;case"cylinder":return`[(${n})]`;case"circle":return`((${n}))`;case"doublecircle":return`(((${n})))`;case"diamond":return`{${n}}`;case"hexagon":return`{{${n}}}`;case"odd":return`>${n}]`;case"trapezoid":return`[/${n}\\]`;case"inv_trapezoid":return`[\\${n}/]`;case"lean_right":return`[/${n}/]`;case"lean_left":return`[\\${n}\\]`}}function H8(e,t,n){const i=t==="arrow_point"?">":t==="arrow_circle"?"o":t==="arrow_cross"?"x":"",s=!n||!i?"":t==="arrow_point"?"<":i;switch(e){case"dotted":return i?`${s}-.-${i}`:"-.-";case"thick":return i?`${s}==${i}`:"===";default:return i?`${s}--${i}`:"---"}}function z8(e,t,n,i={}){var m;const s=[`flowchart ${e}`],r=t.filter(je),l=new Map;for(const g of t){if(je(g))continue;const y=l.get(g.parentId)??[];y.push(g),l.set(g.parentId,y)}const c=(g,y)=>{g.type==="shape"&&s.push(`${y}${g.id}${A8(g.data.shape,g.data.label)}`)};for(const g of l.get(void 0)??[])c(g," ");const u=(g,y)=>{s.push(`${y}subgraph ${g.id} [${K0(g.data.label)}]`);for(const $ of l.get(g.id)??[])c($,y+" ");for(const $ of r.filter(b=>b.parentId===g.id))u($,y+" ");s.push(`${y}end`)};for(const g of r.filter(y=>!y.parentId))u(g," ");n.length>0&&s.push("");for(const g of n){const y=g.data,$=H8((y==null?void 0:y.stroke)??"normal",(y==null?void 0:y.arrow)??"arrow_point",y==null?void 0:y.both),b=y!=null&&y.label?`|${K0(y.label)}|`:"";s.push(` ${g.source} ${$}${b} ${g.target}`)}const f=[];for(const[g,y]of Object.entries(i))y.length&&f.push(` classDef ${g} ${y.join(",")}`);const p=new Map;for(const g of t)if(g.type==="shape"){for(const y of g.data.classes??[])p.set(y,[...p.get(y)??[],g.id]);(m=g.data.styles)!=null&&m.length&&f.push(` style ${g.id} ${g.data.styles.join(",")}`)}for(const[g,y]of p)f.push(` class ${y.join(",")} ${g}`);return f.length&&s.push("",...f),s.join(`
73
+ `)+`
74
+ `}function B8(e){var u;const t=(u=e.getRootDocV2)==null?void 0:u.call(e),n=[],i=[],s=new Map,r=f=>f.start===!0?"start":f.start===!1?"end":f.type==="choice"||f.type==="fork"||f.type==="join"?f.type:"normal",l=(f,p,m)=>{const g=s.get(f.id);if(g){if(m&&g.type==="state"){const $={id:f.id,type:"group",position:{x:0,y:0},data:{label:g.data.label!==f.id?g.data.label:f.description||f.id,subgraphId:f.id},style:{width:320,height:220},...g.parentId?{parentId:g.parentId}:{}};s.set(f.id,$),n[n.indexOf(g)]=$;return}p&&!g.parentId&&(g.parentId=p),f.description&&!je(g)&&g.data.label===f.id&&(g.data.label=f.description);return}const y=m?{id:f.id,type:"group",position:{x:0,y:0},data:{label:f.description||f.id,subgraphId:f.id},style:{width:320,height:220},...p?{parentId:p}:{}}:{id:f.id,type:"state",position:{x:0,y:0},data:{label:f.description||f.id,stateType:r(f),direction:"TB"},...p?{parentId:p}:{}};s.set(f.id,y),n.push(y)},c=(f,p)=>{var m,g;for(const y of f)if(y.stmt==="state"){const $=y;l($,p,!!((m=$.doc)!=null&&m.length)),(g=$.doc)!=null&&g.length&&c($.doc,$.id)}else if(y.stmt==="relation"){const $=y;l($.state1,p,!1),l($.state2,p,!1),i.push({id:`e${i.length}_${$.state1.id}_${$.state2.id}`,source:$.state1.id,target:$.state2.id,data:{label:$.description??""}})}};return c((t==null?void 0:t.doc)??[],void 0),n.sort((f,p)=>Number(je(p))-Number(je(f))),{nodes:n,edges:i}}function Y8(e,t,n){const i=["stateDiagram-v2"];e!=="TB"&&e!=="TD"&&i.push(` direction ${e}`);const s=new Map(t.map(p=>[p.id,p])),r=p=>{const m=s.get(p);return m&&m.type==="state"?m.data.stateType:"normal"},l=p=>{const m=r(p);return m==="start"||m==="end"?"[*]":p},c=(p,m)=>{if(p.type!=="state")return;const g=p.data.stateType;if(!(g==="start"||g==="end")){if(g==="choice"||g==="fork"||g==="join"){i.push(`${m}state ${p.id} <<${g}>>`);return}i.push(p.data.label!==p.id?`${m}${p.id} : ${p.data.label}`:`${m}${p.id}`)}},u=p=>{const m=s.get(p.source),g=s.get(p.target);return m!=null&&m.parentId&&m.parentId===(g==null?void 0:g.parentId)?m.parentId:void 0},f=(p,m)=>{var g;for(const y of t)y.parentId===p&&(je(y)?(i.push(`${m}state ${y.id} {`),f(y.id,m+" "),i.push(`${m}}`)):c(y,m));for(const y of n){if(u(y)!==p)continue;const $=(g=y.data)!=null&&g.label?` : ${y.data.label}`:"";i.push(`${m}${l(y.source)} --> ${l(y.target)}${$}`)}};return f(void 0," "),i.join(`
75
+ `)+`
76
+ `}const G8={ONLY_ONE:"||",ZERO_OR_ONE:"|o",ZERO_OR_MORE:"}o",ONE_OR_MORE:"}|"},L8={ONLY_ONE:"||",ZERO_OR_ONE:"o|",ZERO_OR_MORE:"o{",ONE_OR_MORE:"|{"};function m1(e){return X0.includes(String(e))?e:"ONLY_ONE"}function Q8(e){var l,c;const t=wo((l=e.getEntities)==null?void 0:l.call(e)),n=((c=e.getRelationships)==null?void 0:c.call(e))??[],i=new Map,s=t.map(([u,f])=>{i.set(String(f.id??u),u);const p=(f.attributes??[]).map(y=>({type:String(y.type??""),name:String(y.name??""),keys:(y.keys??[]).map(String),comment:String(y.comment??"")})),m=String(f.alias??"");return{id:u,type:"entity",position:{x:0,y:0},data:{label:m||String(f.label??u),attributes:p,direction:"TB"}}}),r=n.map((u,f)=>{const p=u.relSpec??{},m=i.get(String(u.entityA))??String(u.entityA),g=i.get(String(u.entityB))??String(u.entityB);return{id:`e${f}_${m}_${g}`,source:m,target:g,data:{label:String(u.roleA??""),er:{cardA:m1(p.cardA),cardB:m1(p.cardB),identifying:String(p.relType)!=="NON_IDENTIFYING"}}}});return{nodes:s,edges:r}}function P8(e,t,n){var s,r;const i=["erDiagram"];e!=="TB"&&e!=="TD"&&i.push(` direction ${e}`);for(const l of t){if(l.type!=="entity")continue;const c=l.data.label!==l.id?`${l.id}["${l.data.label}"]`:l.id;if(l.data.attributes.length===0){i.push(` ${c}`);continue}i.push(` ${c} {`);for(const u of l.data.attributes){const f=u.keys.length?` ${u.keys.join(", ")}`:"",p=u.comment?` "${u.comment}"`:"";i.push(` ${u.type} ${u.name}${f}${p}`)}i.push(" }")}n.length>0&&i.push("");for(const l of n){const c=(s=l.data)==null?void 0:s.er;if(!c)continue;const u=`${G8[c.cardB]}${c.identifying?"--":".."}${L8[c.cardA]}`;i.push(` ${l.source} ${u} ${l.target} : "${((r=l.data)==null?void 0:r.label)??""}"`)}return i.join(`
77
+ `)+`
78
+ `}const q8={0:"aggregation",1:"extension",2:"composition",3:"dependency"},W8={none:"",extension:"<|",composition:"*",aggregation:"o",dependency:"<"},Z8={none:"",extension:"|>",composition:"*",aggregation:"o",dependency:">"};function g1(e){return typeof e=="number"?q8[e]??"none":"none"}function U8(e){var p,m,g,y;const t=wo((p=e.getClasses)==null?void 0:p.call(e)),n=((m=e.getRelations)==null?void 0:m.call(e))??[],i=wo((g=e.getNamespaces)==null?void 0:g.call(e)),s=wo((y=e.getNotes)==null?void 0:y.call(e)),r=i.map(([$])=>({id:$,type:"group",position:{x:0,y:0},data:{label:$,subgraphId:$},style:{width:340,height:240}})),l=t.map(([$,b])=>{const S=(b.members??[]).map(_=>`${_.visibility??""}${_.id??""}${_.classifier??""}`),O=(b.methods??[]).map(_=>{const A=String(_.returnType??"");return`${_.visibility??""}${_.id??""}(${_.parameters??""})${_.classifier??""}${A?` ${A}`:""}`}),E=String(b.type??""),k=b.parent?String(b.parent):void 0;return{id:$,type:"class",position:{x:0,y:0},...k?{parentId:k}:{},data:{label:String(b.label??$),members:S,methods:O,annotations:(b.annotations??[]).map(String),...E?{generic:E}:{},direction:"TB"}}}),c=s.map(([$,b],S)=>({id:String(b.id??$??`note${S}`),type:"note",position:{x:0,y:0},data:{text:String(b.text??""),...b.class?{target:String(b.class)}:{},direction:"TB"}})),u=[...r,...l,...c],f=n.map(($,b)=>{const S=$.relation??{},O=E=>typeof E=="string"&&E!=="none"&&E!==""?E:void 0;return{id:`e${b}_${$.id1}_${$.id2}`,source:String($.id1),target:String($.id2),data:{label:String($.title??""),cls:{left:g1(S.type1),right:g1(S.type2),dotted:S.lineType===1,card1:O($.relationTitle1),card2:O($.relationTitle2)}}}});return{nodes:u,edges:f}}function I8(e,t,n){var r,l;const i=["classDiagram"];e!=="TB"&&e!=="TD"&&i.push(` direction ${e}`);const s=(c,u)=>{const f=c.data.generic?`~${c.data.generic}~`:"",p=c.data.label!==c.id?`class ${c.id}${f}["${c.data.label}"]`:`class ${c.id}${f}`,m=c.data.annotations??[];if(m.length===0&&c.data.members.length===0&&c.data.methods.length===0){i.push(`${u}${p}`);return}i.push(`${u}${p} {`);for(const g of m)i.push(`${u} <<${g}>>`);for(const g of c.data.members)i.push(`${u} ${g}`);for(const g of c.data.methods)i.push(`${u} ${g}`);i.push(`${u}}`)};for(const c of t)if(c.type==="group"){i.push(` namespace ${c.id} {`);for(const u of t)u.type==="class"&&u.parentId===c.id&&s(u," ");i.push(" }")}for(const c of t)c.type==="class"&&!c.parentId&&s(c," ");for(const c of t){if(c.type!=="note")continue;const u=c.data.text.replace(/"/g,"'").replace(/\n/g," ");i.push(c.data.target?` note for ${c.data.target} "${u}"`:` note "${u}"`)}n.length>0&&i.push("");for(const c of n){const u=(r=c.data)==null?void 0:r.cls;if(!u)continue;const f=u.dotted?"..":"--",p=`${W8[u.left]}${f}${Z8[u.right]}`,m=u.card1?`"${u.card1}" `:"",g=u.card2?`"${u.card2}" `:"",y=(l=c.data)!=null&&l.label?` : ${c.data.label}`:"";i.push(` ${c.source} ${m}${p} ${g}${c.target}${y}`)}return i.join(`
79
+ `)+`
80
+ `}const F8={0:"->>",1:"-->>",3:"-x",4:"--x",5:"->",6:"-->",24:"-)",25:"--)"},y1={10:"loop",12:"alt",15:"opt",19:"par",22:"rect",27:"critical",30:"break"},w1={13:"else",20:"and",28:"option"},V8=new Set([11,14,16,21,23,29,31]),X8={0:"left",1:"right",2:"over"};function tf(e){return e&&typeof e=="object"&&"text"in e?String(e.text??""):typeof e=="string"?e:""}function K8(e){var c,u;const t=wo((c=e.getActors)==null?void 0:c.call(e)),n=((u=e.getMessages)==null?void 0:u.call(e))??[],i=t.map(([f,p])=>({id:f,type:"participant",position:{x:0,y:0},data:{label:String(p.description??f),ptype:p.type==="actor"?"actor":"participant",direction:"TB"}})),s=[],r=[];let l=0;for(const f of n){const p=typeof f.type=="number"?f.type:-1,m=F8[p],g=typeof f.from=="string"?f.from:void 0,y=typeof f.to=="string"?f.to:void 0;if(m&&g&&y){const $={id:`m${s.length}_${g}_${y}`,source:g,target:y,data:{label:tf(f.message),seq:{op:m}}};s.push($),r.push({kind:"message",edgeId:$.id});continue}if(p===2&&g){r.push({kind:"note",placement:X8[Number(f.placement)]??"over",a:g,...y&&y!==g?{b:y}:{},text:tf(f.message)});continue}if(y1[p]){r.push({kind:"block",op:y1[p],label:tf(f.message)});continue}if(w1[p]){r.push({kind:"divider",op:w1[p],label:tf(f.message)});continue}if(V8.has(p)){r.push({kind:"end"});continue}if((p===17||p===18)&&g){r.push({kind:"active",on:p===17,actor:g});continue}if(p===26){r.push({kind:"autonumber"});continue}l++}return{nodes:i,edges:s,items:r,...l>0?{warning:`${l} sequence statement(s) of an unsupported kind will be dropped by canvas edits.`}:{}}}function J8(e,t){const n=e[t];if(!n)return e;if(n.kind!=="block")return e.filter((r,l)=>l!==t);const i=new Set([t]);let s=0;for(let r=t+1;r<e.length;r++){const l=e[r];if(l.kind==="block")s++;else if(l.kind==="divider"&&s===0)i.add(r);else if(l.kind==="end"){if(s===0){i.add(r);break}s--}}return e.filter((r,l)=>!i.has(l))}function tH(e,t,n=[]){const i=["sequenceDiagram"],s=e.filter(p=>p.type==="participant").sort((p,m)=>p.position.x-m.position.x);for(const p of s){const m=p.data.label!==p.id?` as ${p.data.label}`:"";i.push(` ${p.data.ptype} ${p.id}${m}`)}const r=new Map(t.map(p=>[p.id,p])),l=new Set;let c=1;const u=()=>" ".repeat(c),f=p=>{var g,y,$;const m=((y=(g=p.data)==null?void 0:g.seq)==null?void 0:y.op)??"->>";i.push(`${u()}${p.source}${m}${p.target}: ${(($=p.data)==null?void 0:$.label)||"msg"}`),l.add(p.id)};for(const p of n)switch(p.kind){case"message":{const m=r.get(p.edgeId);m&&f(m);break}case"note":{const m=p.placement==="over"?`over ${p.a}${p.b?`,${p.b}`:""}`:`${p.placement} of ${p.a}`;i.push(`${u()}Note ${m}: ${p.text}`);break}case"block":i.push(`${u()}${p.op}${p.label?` ${p.label}`:""}`),c++;break;case"divider":c=Math.max(1,c-1),i.push(`${u()}${p.op}${p.label?` ${p.label}`:""}`),c++;break;case"end":c=Math.max(1,c-1),i.push(`${u()}end`);break;case"active":i.push(`${u()}${p.on?"activate":"deactivate"} ${p.actor}`);break;case"autonumber":i.push(`${u()}autonumber`);break}for(const p of t)l.has(p.id)||f(p);return i.join(`
81
+ `)+`
82
+ `}const eH=new Set(["L","R","T","B"]);function $1(e,t){return typeof e=="string"&&eH.has(e)?e:t}function nH(e){var p,m,g,y;const t=((p=e.getGroups)==null?void 0:p.call(e))??[],n=((m=e.getServices)==null?void 0:m.call(e))??[],i=((g=e.getJunctions)==null?void 0:g.call(e))??[],s=((y=e.getEdges)==null?void 0:y.call(e))??[],r=[],l=$=>{if(r.some(E=>E.id===$))return;const b=t.find(E=>String(E.id)===$);if(!b)return;const S=b.in?String(b.in):void 0;S&&l(S);const O={id:$,type:"group",position:{x:0,y:0},data:{label:String(b.title??$),subgraphId:$,...b.icon?{icon:String(b.icon)}:{}},style:{width:340,height:240},...S?{parentId:S}:{}};r.push(O)};for(const $ of t)l(String($.id));for(const $ of n){const b=$.in?String($.in):void 0,S={id:String($.id),type:"service",position:{x:0,y:0},data:{label:$.title!=null?String($.title):"",icon:$.icon!=null?String($.icon):"",direction:"TB"},...b?{parentId:b}:{}};r.push(S)}for(const $ of i){const b=$.in?String($.in):void 0,S={id:String($.id),type:"junction",position:{x:0,y:0},data:{},...b?{parentId:b}:{}};r.push(S)}const c=new Set,u=new Set;for(const $ of s){const b=`${$.lhsId}-${$.rhsId}`;c.has(b)&&u.add(b),c.add(b)}const f=s.map(($,b)=>{const S={lhsDir:$1($.lhsDir,"R"),rhsDir:$1($.rhsDir,"L"),lhsInto:!!$.lhsInto,rhsInto:!!$.rhsInto,lhsGroup:!!$.lhsGroup,rhsGroup:!!$.rhsGroup};return{id:`e${b}_${$.lhsId}_${$.rhsId}`,source:String($.lhsId),target:String($.rhsId),sourceHandle:S.lhsDir,targetHandle:S.rhsDir,data:{label:String($.title??""),arch:S}}});return{nodes:r,edges:f,...u.size>0?{warning:`mermaid can render only ONE connection per ordered pair of services — duplicated: ${[...u].join(", ")}. The canvas shows them, but preview/render will fail until the extra edges are removed.`}:{}}}function iH(e,t){var l,c;const n=["architecture-beta"],i=u=>u.parentId?` in ${u.parentId}`:"",s=u=>u?`(${u})`:"",r=u=>u?`[${u}]`:"";for(const u of e)u.type==="group"&&n.push(` group ${u.id}${s(u.data.icon)}${r(u.data.label)}${i(u)}`);for(const u of e)u.type==="service"?n.push(` service ${u.id}${s(u.data.icon)}${r(u.data.label)}${i(u)}`):u.type==="junction"&&n.push(` junction ${u.id}${i(u)}`);t.length>0&&n.push("");for(const u of t){const f=(l=u.data)==null?void 0:l.arch;if(!f)continue;const p=`${u.source}${f.lhsGroup?"{group}":""}:${f.lhsDir}`,m=`${f.rhsDir}:${u.target}${f.rhsGroup?"{group}":""}`,g=(c=u.data)!=null&&c.label?`[${u.data.label}]`:"",y=`${f.lhsInto?"<":""}-${g}-${f.rhsInto?">":""}`;n.push(` ${p} ${y} ${m}`)}return n.join(`
83
+ `)+`
84
+ `}const sH={person:"Person",external_person:"Person_Ext",system:"System",external_system:"System_Ext",system_db:"SystemDb",system_queue:"SystemQueue",container:"Container",external_container:"Container_Ext",container_db:"ContainerDb",container_queue:"ContainerQueue",component:"Component",external_component:"Component_Ext",component_db:"ComponentDb",component_queue:"ComponentQueue",external_system_db:"SystemDb_Ext",external_system_queue:"SystemQueue_Ext",external_container_db:"ContainerDb_Ext",external_container_queue:"ContainerQueue_Ext",external_component_db:"ComponentDb_Ext",external_component_queue:"ComponentQueue_Ext"},rH={ENTERPRISE:"Enterprise_Boundary",SYSTEM:"System_Boundary",CONTAINER:"Container_Boundary",node:"Node",node_l:"Node_L",node_r:"Node_R"},oH={rel:"Rel",birel:"BiRel",rel_u:"Rel_U",rel_d:"Rel_D",rel_l:"Rel_L",rel_r:"Rel_R",rel_b:"Rel_Back"};function no(e){return String((e==null?void 0:e.text)??"")}function lH(e){return Xk.includes(e)?e:"system"}function aH(e){var p,m,g,y,$;const t=((p=e.getC4ShapeArray)==null?void 0:p.call(e))??[],n=((m=e.getBoundaries)==null?void 0:m.call(e))??[],i=((g=e.getRels)==null?void 0:g.call(e))??[],s=String(((y=e.getC4Type)==null?void 0:y.call(e))??"C4Context"),r=String((($=e.getTitle)==null?void 0:$.call(e))??""),l=b=>{const S=String(b??"");return S&&S!=="global"?S:void 0},c=[],u=b=>{if(b==="global"||c.some(k=>k.id===b))return;const S=n.find(k=>String(k.alias)===b);if(!S)return;const O=l(S.parentBoundary);O&&u(O);const E={id:b,type:"group",position:{x:0,y:0},data:{label:no(S.label),subgraphId:b,boundaryType:no(S.type)||"SYSTEM"},style:{width:340,height:240},...O?{parentId:O}:{}};c.push(E)};for(const b of n)u(String(b.alias));for(const b of t){const S=l(b.parentBoundary),O={id:String(b.alias),type:"c4",position:{x:0,y:0},data:{label:no(b.label),c4Shape:lH(no(b.typeC4Shape)),descr:no(b.descr),direction:"TB"},...S?{parentId:S}:{}};c.push(O)}const f=i.map((b,S)=>({id:`e${S}_${b.from}_${b.to}`,source:String(b.from),target:String(b.to),data:{label:no(b.label),c4:{relType:String(b.type??"rel"),techn:no(b.techn)}}}));return{nodes:c,edges:f,c4Flavor:s,title:r}}function cH(e,t,n="C4Context",i=""){var c,u;const s=[n];i&&s.push(` title ${i}`);const r=(f,p)=>{if(f.type!=="c4")return;const m=sH[f.data.c4Shape],g=f.data.descr?`, "${f.data.descr}"`:"";s.push(`${p}${m}(${f.id}, "${f.data.label}"${g})`)},l=(f,p)=>{for(const m of e)if(m.parentId===f)if(m.type==="group"){const g=rH[m.data.boundaryType??""]??"System_Boundary";s.push(`${p}${g}(${m.id}, "${m.data.label}") {`),l(m.id,p+" "),s.push(`${p}}`)}else r(m,p)};l(void 0," "),t.length>0&&s.push("");for(const f of t){const p=(c=f.data)==null?void 0:c.c4,m=oH[(p==null?void 0:p.relType)??"rel"]??"Rel",g=p!=null&&p.techn?`, "${p.techn}"`:"";s.push(` ${m}(${f.source}, ${f.target}, "${((u=f.data)==null?void 0:u.label)??""}"${g})`)}return s.join(`
85
+ `)+`
86
+ `}const Jf=/^\s*%%\s*graph:positions\s+(\{.*\})\s*$/m;function uH(e){const t=e.match(Jf);if(!t)return null;try{const n=JSON.parse(t[1]),i={};for(const[s,r]of Object.entries(n))r!==null&&typeof r=="object"&&typeof r.x=="number"&&typeof r.y=="number"&&(i[s]=r);return i}catch{return null}}function hH(e){return e.replace(Jf,"").replace(/\n+$/,`
87
+ `)}function t4(e){const t={};for(const[n,i]of Object.entries(e))t[n]={x:Math.round(i.x),y:Math.round(i.y),...i.w!==void 0?{w:Math.round(i.w)}:{},...i.h!==void 0?{h:Math.round(i.h)}:{}};return`%% graph:positions ${JSON.stringify(t)}`}function fH(e,t){const n=t4(t);return Jf.test(e)?e.replace(Jf,n):`${e.replace(/\n+$/,"")}
88
+
89
+ ${n}
90
+ `}const e4="graph:theme";function dH(){try{return window.matchMedia("(prefers-color-scheme: light)").matches?"light":"dark"}catch{return"dark"}}function Fg(e){return e==="system"?dH():e}function x1(){try{const e=localStorage.getItem(e4);return e==="light"||e==="system"?e:"dark"}catch{return"dark"}}const Wi=_o((e,t)=>({choice:x1(),resolved:Fg(x1()),setTheme:n=>{try{localStorage.setItem(e4,n)}catch{}e({choice:n,resolved:Fg(n)})},sync:()=>e({resolved:Fg(t().choice)})}));Wi.subscribe(e=>{document.documentElement.dataset.theme=e.resolved});function n4(){return Wi.getState().resolved==="light"?{stroke:"#5f6673",labelFill:"#1c2230",labelBg:"#ffffff",hollowFill:"#ffffff"}:{stroke:"#8b91a3",labelFill:"#e6e9f0",labelBg:"#20242f",hollowFill:"#12141a"}}class i4 extends Error{constructor(t){super(`Unsupported diagram type "${t}". Visual editing supports: flowchart, stateDiagram-v2, erDiagram, classDiagram, sequenceDiagram, architecture-beta, C4.`),this.diagramType=t,this.name="UnsupportedDiagramError"}}function pH(e){return dw(t=>mH(t,e))}async function mH(e,t){var g,y,$;const n=await e.mermaidAPI.getDiagramFromText(t),i=n.type??"",s=n.db,r=Jk((g=s.getDirection)==null?void 0:g.call(s)),l=String(((y=s.getAccTitle)==null?void 0:y.call(s))??""),c=String((($=s.getAccDescription)==null?void 0:$.call(s))??"");let u,f;if(/^(flowchart|graph)/.test(i))u="flowchart",f=M8(s);else if(i.startsWith("stateDiagram"))u="state",f=B8(s);else if(i==="er"||i==="erDiagram")u="er",f=Q8(s);else if(i==="class"||i.startsWith("classDiagram"))u="class",f=U8(s);else if(i==="sequence"||i.startsWith("sequenceDiagram"))u="sequence",f=K8(s);else if(i==="architecture")u="architecture",f=nH(s);else if(i==="c4")u="c4",f=aH(s);else throw new i4(i);const p=f.nodes.map(b=>b.type==="group"?b:{...b,data:{...b.data,direction:r}}),m=f.edges.map(b=>kc(u,b));return{kind:u,direction:r,nodes:p,edges:m,classDefs:f.classDefs??{},...f.warning?{warning:f.warning}:{},...f.items?{items:f.items}:{},...f.c4Flavor?{c4Flavor:f.c4Flavor}:{},...f.title?{title:f.title}:{},...l?{accTitle:l}:{},...c?{accDescr:c}:{}}}function gH({kind:e,direction:t,nodes:n,edges:i,positions:s,classDefs:r,c4Flavor:l,title:c,accTitle:u,accDescr:f,items:p}){let m;switch(e){case"flowchart":m=z8(t,n,i,r);break;case"state":m=Y8(t,n,i);break;case"er":m=P8(t,n,i);break;case"class":m=I8(t,n,i);break;case"sequence":m=tH(n,i,p);break;case"architecture":m=iH(n,i);break;case"c4":m=cH(n,i,l,c);break}const g=[...u?[` accTitle: ${u.replace(/\n/g," ")}`]:[],...f?[` accDescr: ${f.replace(/\n/g," ")}`]:[]];if(g.length>0){const y=m.split(`
91
+ `);y.splice(1,0,...g),m=y.join(`
92
+ `)}return s&&Object.keys(s).length>0&&(m+=`
93
+ ${t4(s)}
94
+ `),m}const b1={ONLY_ONE:"er-one",ZERO_OR_ONE:"er-zero-one",ZERO_OR_MORE:"er-zero-more",ONE_OR_MORE:"er-one-more"},v1={none:void 0,extension:"cls-extension",composition:"cls-composition",aggregation:"cls-aggregation",dependency:"cls-dependency"},yH={">>":"seq-arrow",">":"seq-open",x:"seq-cross",")":"seq-open"};function kc(e,t){const n=t.data??{label:""},i=n4(),s={...t,type:"smoothstep",label:n.label||void 0,labelStyle:{fill:i.labelFill},labelBgStyle:{fill:i.labelBg},labelBgPadding:[6,3],labelBgBorderRadius:4};if(e==="architecture"&&n.arch)return{...s,style:{stroke:i.stroke,strokeWidth:1.5},markerStart:n.arch.lhsInto?"seq-arrow":void 0,markerEnd:n.arch.rhsInto?"seq-arrow":void 0};if(e==="c4"&&n.c4)return{...s,label:n.c4.techn?`${n.label} [${n.c4.techn}]`:n.label||void 0,style:{stroke:i.stroke,strokeWidth:1.5,strokeDasharray:"6 4"},markerEnd:{type:yr.ArrowClosed,width:18,height:18,color:i.stroke},...n.c4.relType==="birel"?{markerStart:{type:yr.ArrowClosed,width:18,height:18,color:i.stroke}}:{}};if(e==="sequence"&&n.seq){const l=n.seq.op,c=l.endsWith(">>")?">>":l.endsWith(")")?")":l.endsWith("x")?"x":">";return{...s,type:"message",label:void 0,style:{stroke:i.stroke,strokeWidth:1.5,...l.startsWith("--")?{strokeDasharray:"6 4"}:{}},markerEnd:yH[c]}}if(e==="er"&&n.er)return{...s,style:{stroke:i.stroke,strokeWidth:1.5,...n.er.identifying?{}:{strokeDasharray:"6 4"}},markerStart:b1[n.er.cardB],markerEnd:b1[n.er.cardA]};if(e==="class"&&n.cls)return{...s,style:{stroke:i.stroke,strokeWidth:1.5,...n.cls.dotted?{strokeDasharray:"6 4"}:{}},markerStart:v1[n.cls.left],markerEnd:v1[n.cls.right]};if(e==="state")return{...s,style:{stroke:i.stroke,strokeWidth:1.5},markerEnd:{type:yr.ArrowClosed,width:18,height:18,color:i.stroke}};const r=n.arrow==="arrow_open"?void 0:{type:yr.ArrowClosed,width:18,height:18,color:i.stroke};return{...s,style:{stroke:i.stroke,strokeWidth:n.stroke==="thick"?3:1.5,...n.stroke==="dotted"?{strokeDasharray:"6 4"}:{}},markerEnd:r,...n.both?{markerStart:r}:{}}}function wH(e){switch(e){case"flowchart":return{label:"",stroke:"normal",arrow:"arrow_point"};case"state":return{label:""};case"er":return{label:"",er:{cardA:"ZERO_OR_MORE",cardB:"ONLY_ONE",identifying:!0}};case"class":return{label:"",cls:{left:"none",right:"dependency",dotted:!1}};case"sequence":return{label:"message",seq:{op:"->>"}};case"architecture":return{label:"",arch:{lhsDir:"R",rhsDir:"L",lhsInto:!1,rhsInto:!0,lhsGroup:!1,rhsGroup:!1}};case"c4":return{label:"Uses",c4:{relType:"rel",techn:""}}}}const $H=48,Ud=100,Wc=44;let Vg=null;const xH=5e3;async function bH(){if(typeof Worker<"u"){let t;try{const[{default:n},{default:i}]=await Promise.all([Oe(()=>import("./elk-api-CF2Hej0P.js").then(s=>s.e),__vite__mapDeps([0,1]),import.meta.url),Oe(()=>import("./elk-worker.min-D32ngsh5.js"),[],import.meta.url)]);return t=new n({workerFactory:()=>new i}),await Promise.race([t.layout({id:"probe",children:[{id:"n",width:1,height:1}]}),new Promise((s,r)=>setTimeout(()=>r(new Error("ELK worker did not respond")),xH))]),t}catch(n){t==null||t.terminateWorker(),console.warn("ELK worker unavailable; laying out on the main thread instead.",n)}}const{default:e}=await Oe(async()=>{const{default:t}=await import("./elk.bundled-ajwJAWsK.js").then(n=>n.e);return{default:t}},__vite__mapDeps([2,1]),import.meta.url);return new e}function vH(){return Vg||(Vg=bH()),Vg}const SH={TD:"DOWN",TB:"DOWN",BT:"UP",LR:"RIGHT",RL:"LEFT"};async function S1(e,t,n){const i=new Map;for(const p of e){const m=i.get(p.parentId)??[];m.push(p),i.set(p.parentId,m)}const s=p=>{var g,y;if(je(p))return{id:p.id,children:(i.get(p.id)??[]).map(s),layoutOptions:{"elk.padding":"[top=40,left=16,bottom=16,right=16]"}};const m=Yl(p);return{id:p.id,width:((g=p.measured)==null?void 0:g.width)??p.width??m.width,height:((y=p.measured)==null?void 0:y.height)??p.height??m.height}},r={id:"root",layoutOptions:{"elk.algorithm":"layered","elk.direction":SH[n],"elk.layered.spacing.nodeNodeBetweenLayers":"70","elk.spacing.nodeNode":"40","elk.hierarchyHandling":"INCLUDE_CHILDREN"},children:(i.get(void 0)??[]).map(s),edges:t.map((p,m)=>({id:p.id||`e${m}`,sources:[p.source],targets:[p.target]}))},c=await(await vH()).layout(r),u={},f=(p,m)=>{var g;m||(u[p.id]={x:p.x??0,y:p.y??0,...(g=p.children)!=null&&g.length?{w:p.width??0,h:p.height??0}:{}});for(const y of p.children??[])f(y,!1)};return f(c,!0),u}const O1="graph:recent-icons",k1="graph:fav-icons";function C1(e){try{const t=JSON.parse(localStorage.getItem(e)??"[]");return Array.isArray(t)?t.map(String):[]}catch{return[]}}function E1(e,t){try{localStorage.setItem(e,JSON.stringify(t))}catch{}}const Jl=_o((e,t)=>({recents:C1(O1),favorites:C1(k1),recordRecent:n=>{if(!n.includes(":"))return;const i=[n,...t().recents.filter(s=>s!==n)].slice(0,12);e({recents:i}),E1(O1,i)},toggleFavorite:n=>{const s=t().favorites.includes(n)?t().favorites.filter(r=>r!==n):[n,...t().favorites].slice(0,24);e({favorites:s}),E1(k1,s)}})),s4="graph:code",r4=(()=>{try{return new URLSearchParams(location.search).has("embed")}catch{return!1}})(),Xg=`flowchart TD
95
+ start(["Start"])
96
+ input[/"User request"/]
97
+ check{"Valid?"}
98
+ work["Process request"]
99
+ err["Show error"]
100
+ db[("Database")]
101
+ done(["Done"])
102
+
103
+ start --> input
104
+ input --> check
105
+ check -->|"yes"| work
106
+ check -->|"no"| err
107
+ work --> db
108
+ db --> done
109
+ err --> done
110
+ `,OH={flowchart:`flowchart TD
111
+ a["Start"] --> b["Next step"]
112
+ `,state:`stateDiagram-v2
113
+ [*] --> Idle
114
+ Idle --> Working : start
115
+ Working --> [*]
116
+ `,er:`erDiagram
117
+ CUSTOMER {
118
+ string name PK
119
+ }
120
+ CUSTOMER ||--o{ ORDER : "places"
121
+ `,class:`classDiagram
122
+ class Animal {
123
+ +int age
124
+ +makeSound() void
125
+ }
126
+ Animal <|-- Dog
127
+ `,sequence:`sequenceDiagram
128
+ actor U as User
129
+ participant S as Server
130
+ U->>S: request
131
+ S-->>U: response
132
+ `,architecture:`architecture-beta
133
+ group vpc(cloud)[VPC]
134
+ service web(internet)[Web] in vpc
135
+ service db(database)[Database] in vpc
136
+
137
+ web:R --> L:db
138
+ `,c4:`C4Context
139
+ title System Context
140
+ Person(user, "User")
141
+ System(app, "Application")
142
+
143
+ Rel(user, app, "Uses")
144
+ `};function io(e,t){if(e==="sequence")return t;const n=s=>`${[s.source,s.target].sort().join("~")}|${s.sourceHandle??""}|${s.targetHandle??""}`,i=new Map;for(const s of t){const r=n(s);i.set(r,[...i.get(r)??[],s.id])}return t.map(s=>{var l;const r=i.get(n(s));if(r.length<2){if(s.type!=="parallel"&&!((l=s.data)!=null&&l.par))return s;const c={...s.data??{label:""}};return delete c.par,{...s,type:"smoothstep",data:c}}return{...s,type:"parallel",data:{...s.data??{label:""},par:{i:r.indexOf(s.id),n:r.length,s:s.source<=s.target?1:-1}}}})}function D1(e,t,n){if(n==="sequence"){let l=0;return e.map(c=>{const u=t[c.id],f=(u==null?void 0:u.x)??l*220;return l++,{...c,position:{x:f,y:0}}})}const i=Object.values(t);let s=i.length>0?Math.max(...i.map(l=>l.x))+260:0,r=0;return e.map(l=>{const c=t[l.id];if(!c){const u={x:s,y:r};return r+=110,r>660&&(r=0,s+=260),{...l,position:u}}return{...l,position:{x:c.x,y:c.y},...je(l)&&c.w!==void 0?{style:{...l.style,width:c.w,height:c.h}}:{}}})}let T1;function gc(e){if(!r4)try{localStorage.setItem(s4,e)}catch{}}function kH(){try{const e=new URLSearchParams(location.search).get("code");if(e)return e}catch{}if(r4)return Xg;try{return localStorage.getItem(s4)??Xg}catch{return Xg}}const pt=_o((e,t)=>{const n=[],i=[];let s=0;const r=()=>e({canUndo:n.length>0,canRedo:i.length>0}),l=g=>{!g||n[n.length-1]===g||(n.push(g),n.length>100&&n.shift(),i.length=0,r())};let c=null;const u=()=>{var y,$,b,S;const g={};for(const O of t().nodes)g[O.id]={x:O.position.x,y:O.position.y,...je(O)?{w:Number(((y=O.style)==null?void 0:y.width)??(($=O.measured)==null?void 0:$.width)??320),h:Number(((b=O.style)==null?void 0:b.height)??((S=O.measured)==null?void 0:S.height)??220)}:{}};return g},f=()=>{if(t().unsupported)return;l(t().code);const{kind:g,nodes:y,edges:$,direction:b,classDefs:S,c4Flavor:O,title:E,accTitle:k,accDescr:D,seqItems:_}=t(),A=gH({kind:g,direction:b,nodes:y,edges:$,classDefs:S,c4Flavor:O,title:E,accTitle:k,accDescr:D,items:_,positions:u()});e({code:A,parseError:null}),gc(A)},p=()=>{l(t().code);const g=fH(t().code,u());e({code:g}),gc(g)},m=g=>{let y=0;const $=new RegExp(`^${g}(\\d+)$`);for(const b of t().nodes){const S=b.id.match($);S&&(y=Math.max(y,Number(S[1])))}return`${g}${y+1}`};return{code:"",kind:"flowchart",nodes:[],edges:[],direction:"TD",classDefs:{},parseError:null,warning:null,unsupported:null,canUndo:!1,canRedo:!1,booted:!1,c4Flavor:"C4Context",title:"",accTitle:"",accDescr:"",seqItems:[],setCodeFromEditor:g=>{const y=Date.now();y-s>900&&l(t().code),s=y,e({code:g}),gc(g),clearTimeout(T1),T1=setTimeout(()=>void t().applyCode(g),400)},applyCode:async(g,y)=>{y!=null&&y.record&&l(t().code);try{const $=await pH(g);let b=y!=null&&y.forceLayout?null:uH(g),S=D1($.nodes,b??{},$.kind);!b&&$.kind!=="sequence"&&(b=await S1(S,$.edges,$.direction),S=D1($.nodes,b,$.kind)),e({kind:$.kind,nodes:S,edges:io($.kind,$.edges),direction:$.direction,classDefs:$.classDefs,warning:$.warning??null,c4Flavor:$.c4Flavor??"C4Context",title:$.title??"",accTitle:$.accTitle??"",accDescr:$.accDescr??"",seqItems:$.items??[],parseError:null,unsupported:null,code:g}),gc(g)}catch($){$ instanceof i4?(e({unsupported:$.diagramType,nodes:[],edges:[],seqItems:[],parseError:null,warning:null,code:g}),gc(g)):e({parseError:$ instanceof Error?$.message:String($),code:g})}finally{t().booted||e({booted:!0})}},onNodesChange:g=>{if(t().kind==="sequence")for(const b of g)b.type==="position"&&b.position&&(b.position.y=0);const y=new Set(g.filter(b=>b.type==="remove").map(b=>b.id));let $=wk(g,t().nodes);if(y.size>0){$=$.map(O=>O.parentId&&y.has(O.parentId)?{...O,parentId:void 0,extent:void 0}:O);const b=new Set($.map(O=>O.id)),S=io(t().kind,t().edges.filter(O=>b.has(O.source)&&b.has(O.target)));e({nodes:$,edges:S}),f()}else e({nodes:$})},onEdgesChange:g=>{const y=g.some(S=>S.type==="remove");let $=$k(g,t().edges);y&&($=io(t().kind,$));const b=new Set($.map(S=>S.id));e({edges:$,...y?{seqItems:t().seqItems.filter(S=>S.kind!=="message"||b.has(S.edgeId))}:{}}),y&&f()},onConnect:g=>{if(!g.source||!g.target)return;const y=t().kind;if(y==="architecture"&&t().edges.some(S=>S.source===g.source&&S.target===g.target)){e({warning:`mermaid's architecture renderer allows only one connection from ${g.source} to ${g.target} — edit the existing edge instead.`});return}const $=wH(y);y==="architecture"&&$.arch&&($.arch.lhsDir=g.sourceHandle||"R",$.arch.rhsDir=g.targetHandle||"L");const b=kc(y,{id:`e${t().edges.length}_${g.source}_${g.target}_${Date.now()}`,source:g.source,target:g.target,...y==="architecture"?{sourceHandle:$.arch.lhsDir,targetHandle:$.arch.rhsDir}:{},data:$});e({edges:io(y,[...t().edges,b]),...y==="sequence"?{seqItems:[...t().seqItems,{kind:"message",edgeId:b.id}]}:{}}),f()},onNodeDragStop:g=>{var b,S,O,E,k,D,_;const{kind:y,nodes:$}=t();if(g&&y!=="sequence"){const A=new Map($.map(W=>[W.id,W])),H=W=>{let nt=W.position.x,U=W.position.y,P=W.parentId;for(;P;){const F=A.get(P);if(!F)break;nt+=F.position.x,U+=F.position.y,P=F.parentId}return{x:nt,y:U}},Y=A.get(g.id);if(Y&&!je(Y)){const W=Yl(Y),nt=((b=Y.measured)==null?void 0:b.width)??W.width,U=((S=Y.measured)==null?void 0:S.height)??W.height,P={...H(Y)},F=P.x+nt/2,M=P.y+U/2;let G,T=-1;for(const z of $){if(!je(z))continue;const Z=H(z),Q=Number(((O=z.style)==null?void 0:O.width)??((E=z.measured)==null?void 0:E.width)??320),et=Number(((k=z.style)==null?void 0:k.height)??((D=z.measured)==null?void 0:D.height)??220);if(F>=Z.x&&F<=Z.x+Q&&M>=Z.y&&M<=Z.y+et){let j=0,R=z.parentId;for(;R;)j++,R=(_=A.get(R))==null?void 0:_.parentId;j>T&&(T=j,G=z)}}if(((G==null?void 0:G.id)??void 0)!==Y.parentId){const z=G?H(G):{x:0,y:0},Z={...Y,parentId:G==null?void 0:G.id,extent:void 0,position:{x:P.x-z.x,y:P.y-z.y}};e({nodes:[...$.filter(Q=>Q.id!==Y.id),Z]}),f();return}}}p()},setNodeSize:(g,y,$,b,S)=>{e({nodes:t().nodes.map(O=>O.id===g?{...O,position:{x:b,y:S},style:{...O.style,width:y,height:$}}:O)})},addNode:(g,y)=>{var S,O;const{direction:$}=t();if(g.type==="seqnote"||g.type==="seqblock"){if(t().kind!=="sequence")return;const E=[...t().seqItems],k=Math.max(0,Math.min(E.length,Math.round((y.y-Ud)/Wc)));if(g.type==="seqnote"){let D="",_=1/0;for(const A of t().nodes){if(A.type!=="participant")continue;const H=((S=A.measured)==null?void 0:S.width)??Yl(A).width,Y=Math.abs(A.position.x+H/2-y.x);Y<_&&(_=Y,D=A.id)}if(!D)return;E.splice(k,0,{kind:"note",placement:"over",a:D,text:"Note"})}else{const D=((O=E[k])==null?void 0:O.kind)==="message"?k+1:k;E.splice(D,0,{kind:"end"}),g.op==="alt"&&E.splice(D,0,{kind:"divider",op:"else",label:""}),E.splice(k,0,{kind:"block",op:g.op,label:"condition"})}e({seqItems:E}),f();return}let b;switch(g.type){case"shape":b={id:m("n"),type:"shape",position:y,data:{label:"New node",shape:g.shape,direction:$}};break;case"state":{const E=g.stateType==="normal"?"s":g.stateType;b={id:m(E),type:"state",position:y,data:{label:g.stateType==="normal"?"NewState":"",stateType:g.stateType,direction:$}};break}case"entity":b={id:m("ENTITY"),type:"entity",position:y,data:{label:m("ENTITY"),attributes:[{type:"string",name:"id",keys:["PK"],comment:""}],direction:$}};break;case"class":b={id:m("Class"),type:"class",position:y,data:{label:m("Class"),members:[],methods:[],annotations:[],direction:$}};break;case"participant":{const E=m(g.ptype==="actor"?"actor":"p");b={id:E,type:"participant",position:{x:y.x,y:0},data:{label:E,ptype:g.ptype,direction:$}};break}case"service":{const E=m("svc");Jl.getState().recordRecent(g.icon),b={id:E,type:"service",position:y,data:{label:E,icon:g.icon,direction:$}};break}case"junction":b={id:m("j"),type:"junction",position:y,data:{}};break;case"c4":{const E=m("el");b={id:E,type:"c4",position:y,data:{label:E,c4Shape:g.c4Shape,descr:"",direction:$}};break}case"note":b={id:m("note"),type:"note",position:y,data:{text:"Note",direction:$}};break;case"group":{const E=t().kind,k=m("g");b={id:k,type:"group",position:y,data:{label:k,subgraphId:k,...E==="architecture"?{icon:"cloud"}:{},...E==="c4"?{boundaryType:"SYSTEM"}:{}},style:{width:340,height:240}};break}}(g.type==="entity"||g.type==="class")&&(b={...b,data:{...b.data,label:b.id}}),b.selected=!0,e({nodes:[...t().nodes.map(E=>({...E,selected:!1})),b]}),f()},updateNodeData:(g,y)=>{e({nodes:t().nodes.map($=>$.id===g?{...$,data:{...$.data,...y}}:$)}),f()},updateEdgeData:(g,y)=>{const $=t().kind,b=t().edges.map(S=>{if(S.id!==g||!S.data)return S;const O={...S.data,...y,...y.er?{er:{...S.data.er,...y.er}}:{},...y.cls?{cls:{...S.data.cls,...y.cls}}:{},...y.arch?{arch:{...S.data.arch,...y.arch}}:{}},E={...S,data:O};return O.arch&&(E.sourceHandle=O.arch.lhsDir,E.targetHandle=O.arch.rhsDir),kc($,E)});e({edges:io($,b)}),f()},setDiagramMeta:g=>{e(g),f()},setDirection:g=>{e({direction:g,nodes:t().nodes.map(y=>je(y)?y:{...y,data:{...y.data,direction:g}})}),f()},runAutoLayout:async()=>{const{nodes:g,edges:y,direction:$,kind:b}=t();if(b==="sequence"){e({nodes:g.map((O,E)=>({...O,position:{x:E*220,y:0}}))}),p();return}const S=await S1(g,y,$);e({nodes:g.map(O=>{const E=S[O.id];return E?{...O,position:{x:E.x,y:E.y},...je(O)&&E.w!==void 0?{style:{...O.style,width:E.w,height:E.h}}:{}}:O})}),p()},newDiagram:g=>{t().applyCode(OH[g],{forceLayout:!0,record:!0})},undo:async()=>{if(n.length===0)return;i.push(t().code);const g=n.pop();r(),await t().applyCode(g)},redo:async()=>{if(i.length===0)return;n.push(t().code);const g=i.pop();r(),await t().applyCode(g)},copySelection:()=>{const g=t().nodes.filter(b=>b.selected&&!je(b));if(g.length===0)return;const y=new Set(g.map(b=>b.id)),$=t().edges.filter(b=>y.has(b.source)&&y.has(b.target));c={nodes:structuredClone(g),edges:structuredClone($)}},pasteClipboard:()=>{if(!c||c.nodes.length===0)return;const{kind:g}=t(),y=new Set(t().nodes.map(E=>E.id)),$=new Map,b=E=>{let k=2,D=`${E}_${k}`;for(;y.has(D);)D=`${E}_${++k}`;return y.add(D),D},S=c.nodes.map(E=>{const k=b(E.id);return $.set(E.id,k),{...structuredClone(E),id:k,parentId:void 0,extent:void 0,selected:!0,position:{x:E.position.x+36,y:g==="sequence"?0:E.position.y+36}}}),O=c.edges.map((E,k)=>kc(g,{...structuredClone(E),id:`e${Date.now()}_${k}`,source:$.get(E.source),target:$.get(E.target)}));e({nodes:[...t().nodes.map(E=>({...E,selected:!1})),...S],edges:io(g,[...t().edges,...O])}),f()},groupSelection:()=>{const{kind:g,nodes:y}=t();if(g!=="flowchart"&&g!=="state"&&g!=="architecture"&&g!=="c4"&&g!=="class")return;const $=y.filter(P=>P.selected&&!je(P));if($.length===0)return;const b=$[0].parentId;if(!$.every(P=>P.parentId===b))return;const S=28,O=34,E=$.map(P=>{var M,G;const F=Yl(P);return{x1:P.position.x,y1:P.position.y,x2:P.position.x+(((M=P.measured)==null?void 0:M.width)??F.width),y2:P.position.y+(((G=P.measured)==null?void 0:G.height)??F.height)}}),k=Math.min(...E.map(P=>P.x1))-S,D=Math.min(...E.map(P=>P.y1))-S-O,_=Math.max(...E.map(P=>P.x2))+S,A=Math.max(...E.map(P=>P.y2))+S,H=m("g"),Y={id:H,type:"group",position:{x:k,y:D},data:{label:H,subgraphId:H,...g==="architecture"?{icon:"cloud"}:{},...g==="c4"?{boundaryType:"SYSTEM"}:{}},style:{width:_-k,height:A-D},...b?{parentId:b}:{}},W=new Set($.map(P=>P.id)),nt=y.map(P=>W.has(P.id)?{...P,parentId:H,position:{x:P.position.x-k,y:P.position.y-D},selected:!1}:P),U=nt.findIndex(P=>W.has(P.id));nt.splice(U,0,{...Y,selected:!0}),e({nodes:nt}),f()},updateSeqItem:(g,y)=>{const $=[...t().seqItems];$[g]&&($[g]=y,e({seqItems:$}),f())},removeSeqItem:g=>{e({seqItems:J8(t().seqItems,g)}),f()},selectOnly:(g,y)=>{e({nodes:t().nodes.map($=>({...$,selected:y==="node"&&$.id===g})),edges:t().edges.map($=>({...$,selected:y==="edge"&&$.id===g}))})},selectAll:()=>{e({nodes:t().nodes.map(g=>({...g,selected:!0})),edges:t().edges.map(g=>({...g,selected:!0}))})},nudgeSelection:(g,y)=>{const $=t().nodes;$.some(b=>b.selected)&&(e({nodes:$.map(b=>b.selected?{...b,position:{x:b.position.x+g,y:b.position.y+y}}:b)}),p())},refreshEdges:()=>{e({edges:io(t().kind,t().edges.map(g=>kc(t().kind,g)))})},deleteSelection:()=>{const g=t().nodes.filter($=>$.selected).map($=>({type:"remove",id:$.id})),y=t().edges.filter($=>$.selected).map($=>({type:"remove",id:$.id}));y.length&&t().onEdgesChange(y),g.length&&t().onNodesChange(g)},deleteElement:(g,y)=>{y==="node"?t().onNodesChange([{type:"remove",id:g}]):t().onEdgesChange([{type:"remove",id:g}])},duplicateNode:g=>{const{nodes:y,kind:$}=t(),b=y.find(D=>D.id===g);if(!b||je(b))return;const S=new Set(y.map(D=>D.id));let O=2,E=`${g}_${O}`;for(;S.has(E);)E=`${g}_${++O}`;const k={...structuredClone(b),id:E,selected:!0,position:{x:b.position.x+36,y:$==="sequence"?0:b.position.y+36}};e({nodes:[...y.map(D=>({...D,selected:!1})),k]}),f()},removeFromGroup:g=>{const{nodes:y}=t(),$=y.find(k=>k.id===g);if(!($!=null&&$.parentId))return;const b=new Map(y.map(k=>[k.id,k]));let S=$.position.x,O=$.position.y,E=$.parentId;for(;E;){const k=b.get(E);if(!k)break;S+=k.position.x,O+=k.position.y,E=k.parentId}e({nodes:y.map(k=>k.id===g?{...k,parentId:void 0,extent:void 0,position:{x:S,y:O}}:k)}),f()},moveMessage:(g,y)=>{const $=[...t().seqItems],b=$.findIndex(E=>E.kind==="message"&&E.edgeId===g);if(b<0)return;const S=Math.max(0,Math.min($.length-1,b+y));if(S===b)return;const[O]=$.splice(b,1);$.splice(S,0,O),e({seqItems:$}),f()},ungroupSelection:()=>{const{nodes:g,edges:y}=t(),$=g.find(S=>S.selected&&je(S));if(!$)return;const b=g.filter(S=>S.id!==$.id).map(S=>S.parentId===$.id?{...S,parentId:$.parentId,extent:$.parentId?"parent":void 0,position:{x:S.position.x+$.position.x,y:S.position.y+$.position.y}}:S);e({nodes:b,edges:y.filter(S=>S.source!==$.id&&S.target!==$.id)}),f()}}}),ho=_o(e=>({paletteOpen:!1,sideOpen:!1,togglePalette:()=>e(t=>({paletteOpen:!t.paletteOpen,sideOpen:!1})),toggleSide:()=>e(t=>({sideOpen:!t.sideOpen,paletteOpen:!1})),closeDrawers:()=>e({paletteOpen:!1,sideOpen:!1})}));function Rf(){return globalThis.archyne??null}function N1(){return typeof globalThis.showSaveFilePicker=="function"}const j1=[{description:"Mermaid diagram",accept:{"text/plain":[".mmd",".mermaid",".txt"]}}];function CH(){const{savedCode:e}=ii.getState();return e===null?!1:e!==pt.getState().code}function R1(e){return e.split(/[\\/]/).pop()||e}function EH(e,t){const n=new Blob([t],{type:"text/plain"}),i=document.createElement("a");i.href=URL.createObjectURL(n),i.download=e,i.click(),URL.revokeObjectURL(i.href)}async function _1(e,t){const n=await e.createWritable();await n.write(t),await n.close()}const ii=_o((e,t)=>({name:null,path:null,handle:null,savedCode:null,adopt:async n=>{await pt.getState().applyCode(n.content,{record:!0}),e({name:R1(n.path),path:n.path,handle:null,savedCode:n.content})},open:async()=>{const n=Rf();if(n){const i=await n.showOpen();i&&await t().adopt(i);return}if(N1()){let i;try{[i]=await globalThis.showOpenFilePicker({types:j1})}catch{return}const s=await(await i.getFile()).text();await pt.getState().applyCode(s,{record:!0}),e({name:i.name,path:null,handle:i,savedCode:s});return}throw new Error("no-picker")},save:async()=>{const{path:n,handle:i}=t(),s=pt.getState().code,r=Rf();if(r&&n){await r.writeFile(n,s),e({savedCode:s});return}if(i){await _1(i,s),e({savedCode:s});return}await t().saveAs()},saveAs:async()=>{const n=pt.getState().code,i=t().name??"diagram.mmd",s=Rf();if(s){const r=await s.showSave(i,n);r&&e({name:R1(r),path:r,handle:null,savedCode:n});return}if(N1()){let r;try{r=await globalThis.showSaveFilePicker({suggestedName:i,types:j1})}catch{return}await _1(r,n),e({name:r.name,path:null,handle:r,savedCode:n});return}EH(i,n),e({savedCode:n})}}));function DH(){const e=Rf();e&&(e.openedFile().then(t=>{t&&ii.getState().adopt(t)}),e.onOpenFile(t=>void ii.getState().adopt(t)))}const td={"app.name":"Archyne","app.tagline":"visual diagram editor","app.loading":"loading diagram engine…","kind.flowchart":"Flowchart","kind.state":"State diagram","kind.er":"ER diagram","kind.class":"Class diagram","kind.sequence":"Sequence diagram","kind.architecture":"Architecture","kind.c4":"C4 model","toolbar.about":"About Archyne and licenses","toolbar.aboutTitle":"About & licenses","toolbar.shapesDrawer":"Shapes","toolbar.codeDrawer":"Code","toolbar.direction":"Direction","toolbar.dirTB":"Top → Down","toolbar.dirLR":"Left → Right","toolbar.dirBT":"Bottom → Up","toolbar.dirRL":"Right → Left","toolbar.undo":"Undo","toolbar.undoHint":"Undo (Ctrl+Z)","toolbar.redo":"Redo","toolbar.redoHint":"Redo (Ctrl+Y)","toolbar.autoLayout":"Auto-layout","toolbar.new":"New…","toolbar.newDiagram":"New diagram","toolbar.open":"Open","toolbar.save":"Save .mmd","toolbar.export":"Export…","toolbar.copyCode":"Copy code","toolbar.copied":"Copied!","toolbar.theme":"Theme","toolbar.themeDark":"Dark","toolbar.themeLight":"Light","toolbar.themeSystem":"System","toolbar.language":"Language","panel.sourceAndInspector":"Source and inspector","panel.mermaidSource":"Mermaid source","panel.sourceView":"Source view","panel.tabCode":"Mermaid","panel.tabPreview":"Preview","panel.cannotRender":"Cannot render: {message}","palette.shapes":"Shape palette","palette.architecture":"Architecture palette","palette.hint":"Drag onto the canvas, or click to add","palette.close":"Close panel","palette.search":"Search icons","palette.noIcons":"No icons found","palette.favorites":"Favorites","palette.addFavorite":"Add to favorites","palette.removeFavorite":"Remove from favorites","palette.add":"Add {name}","shape.square":"Process","shape.round":"Rounded","shape.stadium":"Terminator","shape.subroutine":"Subroutine","shape.cylinder":"Database","shape.circle":"Circle","shape.doublecircle":"Double circle","shape.diamond":"Decision","shape.hexagon":"Hexagon","shape.odd":"Flag","shape.trapezoid":"Trapezoid","shape.inv_trapezoid":"Trapezoid alt","shape.lean_right":"Input/Output","shape.lean_left":"Output/Input","shape.group":"Group","item.state":"State","item.start":"Start","item.end":"End","item.choice":"Choice","item.forkJoin":"Fork / Join","item.entity":"Entity","item.class":"Class","item.note":"Note","item.person":"Person","item.system":"System","item.systemExt":"System (ext)","item.systemDb":"System DB","item.container":"Container","item.component":"Component","item.participant":"Participant","item.actor":"Actor","item.loop":"Loop","item.altElse":"Alt / Else","item.opt":"Opt","item.subgraph":"Subgraph","canvas.label":"Diagram canvas","canvas.keyboardHelp":"Press Tab to move between nodes. Press C on a node to start a connection, then Enter on another node to complete it, or Escape to cancel. Press Delete to remove the selected node.","canvas.connectStart":"Connecting from {name}. Move to another node and press Enter.","canvas.connectDone":"Connected {from} to {to}.","canvas.connectCancelled":"Connection cancelled.","canvas.connectSameNode":"Pick a different node to connect to.","menu.actions":"Diagram actions","menu.rename":"Rename","menu.ungroup":"Ungroup","menu.deleteGroup":"Delete group","menu.duplicate":"Duplicate","menu.copy":"Copy","menu.removeFromGroup":"Remove from group","menu.delete":"Delete","menu.groupNodes":"Group {count} nodes","menu.deleteSelection":"Delete selection","menu.editLabel":"Edit label","menu.addNodeHere":"Add node here","menu.paste":"Paste","menu.autoLayout":"Auto-layout","export.title":"Export diagram","export.source":"Source","export.sourceCanvas":"Canvas (as arranged here)","export.sourceMermaid":"Mermaid renderer (standard look)","export.format":"Format","export.formatPng":"PNG","export.formatSvg":"SVG (vector)","export.background":"Background","export.bgDark":"Dark","export.bgLight":"White","export.bgTransparent":"Transparent","export.mermaidTheme":"Mermaid theme","export.quality":"Quality","export.quality1":"1× (screen)","export.quality2":"2× (slides)","export.quality3":"3× (print)","export.margin":"Margin ({padding}px)","export.generating":"Generating preview…","export.previewAlt":"Preview of the exported diagram","export.cancel":"Cancel","export.confirm":"Export {format}","about.title":"About Archyne","about.trademark":"Archyne is an independent project. It is not affiliated with, endorsed by, or sponsored by Mermaid or Mermaid Chart. “Mermaid” is a trademark of its respective owner, used here only to describe the file format Archyne reads and writes.","about.close":"Close","about.version":"version {version}","inspector.diagram":"DIAGRAM","inspector.accTitle":"Accessible title (accTitle)","inspector.accDescr":"Accessible description (accDescr)","inspector.empty":"Select a node or edge to edit it. Double-click empty canvas to add a node, drag between handles to connect.","palette.sectionShapes":"Shapes","palette.sectionBase":"Base","palette.sectionPinned":"Recent & favorites","palette.sectionVendor":"Vendor icons","palette.searchIcons":"Search 13000+ icons…","item.compositeState":"Composite state","item.boundary":"Boundary","item.namespace":"Namespace","item.junction":"junction","insp.label":"Label","insp.shape":"Shape","insp.fill":"Fill","insp.border":"Border","insp.text":"Text","insp.reset":"Reset","insp.name":"Name","insp.attributes":"Attributes — one per line:","insp.junction":"Junction — a connector waypoint.","insp.pseudoState":"{type} pseudo-state","insp.elementType":"Element type","insp.description":"Description","insp.kind":"Kind","insp.participantBox":"Participant (box)","insp.actorPerson":"Actor (person)","insp.annotations":"Annotations — e.g.","insp.annotationsHint":"(space-separated)","insp.arrow":"Arrow","insp.line":"Line","insp.lineSolid":"Solid","insp.lineDotted":"Dotted","insp.lineThick":"Thick","insp.arrowPoint":"Arrow","insp.arrowNone":"None","insp.arrowCircle":"Circle","insp.arrowCross":"Cross","insp.bothEnds":"Arrowheads at both ends","insp.identifying":"Identifying (solid line)","insp.technology":"Technology","insp.techPlaceholder":"e.g. HTTPS/JSON","insp.bidirectional":"Bidirectional","insp.dottedLine":"Dotted line","insp.cardOnePlaceholder":"e.g. 1","insp.cardManyPlaceholder":"e.g. many","insp.diagramTitle":"Diagram","insp.title":"Title","error.crashTitle":"Something broke while rendering","error.crashIntro":"Your diagram is safe — this is its current code. Copy it somewhere if in doubt, then try to recover:","error.reset":"Reset to sample diagram and reload","insp.groupTitle":"Group {id}","insp.nodeTitle":"Node {id}","insp.edgeTitle":"Edge {source} → {target}","seq.notePlaceholder":"Note text","seq.dragReorder":"Drag vertically to reorder","seq.delete":"Delete","seq.done":"Done","seq.over":"over","seq.leftOf":"left of","seq.rightOf":"right of","unsupported.title":"Read-only: {type} diagrams","unsupported.body":"Archyne does not have a visual editor for this diagram family yet, so the canvas is read-only. The Mermaid code is fully editable, and saving leaves your file exactly as it is.","unsupported.badge":"{type} (read-only)","unsupported.paletteHint":"This diagram family is read-only. Edit it as Mermaid code in the panel on the right.","toolbar.saveAs":"Save as…","file.unsaved":"unsaved changes","file.untitled":"Untitled diagram","file.confirmDiscard":"This diagram has unsaved changes. Leave anyway?","toast.dismiss":"Dismiss","toast.saved":"Saved","toast.copied":"Mermaid code copied","toast.saveFailed":"Could not save","toast.openFailed":"Could not open the file","shortcuts.title":"Keyboard shortcuts","shortcuts.file":"File","shortcuts.edit":"Edit","shortcuts.canvas":"Canvas","shortcuts.view":"View","shortcuts.selectAll":"Select all","shortcuts.nextNode":"Move between nodes","shortcuts.connect":"Start a connection from the focused node","shortcuts.completeConnect":"Complete the connection","shortcuts.cancel":"Cancel","shortcuts.nudge":"Nudge the selection","shortcuts.nudgeFar":"Nudge further","shortcuts.commandPalette":"Command palette","panel.tabOutline":"Outline","outline.filter":"Filter nodes","outline.empty":"No nodes match","outline.noNodes":"This diagram has no nodes yet.","outline.connections":"{count} outgoing","outline.select":"Select {name}","outline.summary":"{nodes} nodes, {edges} connections","palette.commandTitle":"Command palette","palette.commandFilter":"Type a command or node name","palette.commandEmpty":"Nothing matches","palette.groupCommands":"Commands","palette.groupNodes":"Go to node","palette.groupNew":"New diagram","cmd.run":"Run","tpl.title":"Start from a template","tpl.blank":"Blank diagram","tpl.blankDesc":"An empty {kind} to build up yourself.","tpl.open":"Templates","tpl.approval":"Approval workflow","tpl.approvalDesc":"Branching decisions with two outcomes.","tpl.auth":"Sign-in flow","tpl.authDesc":"Messages between a user, an app and a service, with an alt block.","tpl.orders":"Orders schema","tpl.ordersDesc":"Customers, orders and products with crow's-foot cardinalities.","tpl.webapp":"Web application","tpl.webappDesc":"A cloud deployment with nested groups and vendor icons.","tpl.orderState":"Order lifecycle","tpl.orderStateDesc":"States and transitions from draft to delivered.","tpl.domain":"Domain model","tpl.domainDesc":"Classes with fields, methods and cardinalities.","tpl.context":"System context","tpl.contextDesc":"People and systems around one product, C4 style.","toolbar.more":"More","error.title":"Something went wrong","error.reload":"Reload"},ed={en:{label:"English",dir:"ltr"},es:{label:"Español",dir:"ltr"},it:{label:"Italiano",dir:"ltr"},de:{label:"Deutsch",dir:"ltr"},ar:{label:"العربية",dir:"rtl"},zh:{label:"简体中文",dir:"ltr"},ja:{label:"日本語",dir:"ltr"}},TH={es:()=>Oe(()=>import("./es-BB-VRPmB.js"),[],import.meta.url),it:()=>Oe(()=>import("./it-z1Rr2vYL.js"),[],import.meta.url),de:()=>Oe(()=>import("./de-BbF3ozkg.js"),[],import.meta.url),ar:()=>Oe(()=>import("./ar-DHpnjuQB.js"),[],import.meta.url),zh:()=>Oe(()=>import("./zh-B2oIvhee.js"),[],import.meta.url),ja:()=>Oe(()=>import("./ja-DMZcFTAH.js"),[],import.meta.url)},o4="graph:locale",l4=(()=>{try{return new URLSearchParams(location.search).has("embed")}catch{return!1}})();function NH(e){return e!==null&&e in ed}function jH(){if(l4)return"en";try{const e=localStorage.getItem(o4);if(NH(e))return e}catch{}return"en"}const ta=_o(e=>({locale:"en",messages:td,setLocale:async t=>{if(t==="en")e({locale:t,messages:td});else{const n=await TH[t]();e({locale:t,messages:n.messages})}a4(t);try{l4||localStorage.setItem(o4,t)}catch{}}}));function a4(e){const t=document.documentElement;t.lang=e,t.dir=ed[e].dir}function RH(){const e=jH();a4(e),e!=="en"&&ta.getState().setLocale(e)}function c4(e,t){return t?e.replace(/\{(\w+)\}/g,(n,i)=>i in t?String(t[i]):n):e}function me(e,t){const{messages:n}=ta.getState();return c4(n[e]??td[e],t)}function _e(){const e=ta(t=>t.messages);return(t,n)=>c4(e[t]??td[t],n)}const u4={info:2600,error:6e3};let h4=1;const ea=_o(e=>({toasts:[],dismiss:t=>e(n=>({toasts:n.toasts.filter(i=>i.id!==t)}))}));function nd(e,t="info",n){const i=h4++;return ea.setState(s=>({toasts:[...s.toasts,{id:i,text:me(e,n),tone:t}]})),setTimeout(()=>ea.getState().dismiss(i),u4[t]),i}function id(e,t){const n=t instanceof Error?t.message:String(t),i=h4++;return ea.setState(s=>({toasts:[...s.toasts,{id:i,text:`${me(e)}: ${n}`,tone:"error"}]})),setTimeout(()=>ea.getState().dismiss(i),u4.error),i}const M1=["a[href]","button:not([disabled])","input:not([disabled])","select:not([disabled])","textarea:not([disabled])",'[tabindex]:not([tabindex="-1"])'].join(",");function Id({title:e,onClose:t,className:n="",hideTitle:i=!1,children:s}){const r=L.useRef(null),l=L.useId();return L.useEffect(()=>{var f;const c=document.activeElement,u=r.current;return(f=(u==null?void 0:u.querySelector(M1))??u)==null||f.focus(),()=>{var p;return(p=c==null?void 0:c.focus)==null?void 0:p.call(c)}},[]),L.useEffect(()=>{const c=r.current;if(!c)return;const u=f=>{if(f.key==="Escape"){f.stopPropagation(),t();return}if(f.key!=="Tab")return;const p=[...c.querySelectorAll(M1)].filter(y=>{var $;return(($=y.checkVisibility)==null?void 0:$.call(y))??!0});if(p.length===0){f.preventDefault();return}const m=p[0],g=p[p.length-1];f.shiftKey&&document.activeElement===m?(f.preventDefault(),g.focus()):!f.shiftKey&&document.activeElement===g&&(f.preventDefault(),m.focus())};return c.addEventListener("keydown",u),()=>c.removeEventListener("keydown",u)},[t]),v.jsx("div",{className:"modal-overlay",role:"presentation",onMouseDown:c=>{c.target===c.currentTarget&&t()},children:v.jsxs("div",{ref:r,className:`modal ${n}`.trim(),role:"dialog","aria-modal":"true","aria-labelledby":l,tabIndex:-1,children:[v.jsx("h2",{className:i?"visually-hidden":"modal-title",id:l,children:e}),s]})})}function _H(e,t){if(e.match(/^[a-z]+:\/\//i))return e;if(e.match(/^\/\//))return window.location.protocol+e;if(e.match(/^[a-z]+:/i))return e;const n=document.implementation.createHTMLDocument(),i=n.createElement("base"),s=n.createElement("a");return n.head.appendChild(i),n.body.appendChild(s),t&&(i.href=t),s.href=e,s.href}const MH=(()=>{let e=0;const t=()=>`0000${(Math.random()*36**4<<0).toString(36)}`.slice(-4);return()=>(e+=1,`u${t()}${e}`)})();function br(e){const t=[];for(let n=0,i=e.length;n<i;n++)t.push(e[n]);return t}let Ol=null;function f4(e={}){return Ol||(e.includeStyleProperties?(Ol=e.includeStyleProperties,Ol):(Ol=br(window.getComputedStyle(document.documentElement)),Ol))}function sd(e,t){const i=(e.ownerDocument.defaultView||window).getComputedStyle(e).getPropertyValue(t);return i?parseFloat(i.replace("px","")):0}function AH(e){const t=sd(e,"border-left-width"),n=sd(e,"border-right-width");return e.clientWidth+t+n}function HH(e){const t=sd(e,"border-top-width"),n=sd(e,"border-bottom-width");return e.clientHeight+t+n}function d4(e,t={}){const n=t.width||AH(e),i=t.height||HH(e);return{width:n,height:i}}function zH(){let e,t;try{t=process}catch{}const n=t&&t.env?t.env.devicePixelRatio:null;return n&&(e=parseInt(n,10),Number.isNaN(e)&&(e=1)),e||window.devicePixelRatio||1}const Bn=16384;function BH(e){(e.width>Bn||e.height>Bn)&&(e.width>Bn&&e.height>Bn?e.width>e.height?(e.height*=Bn/e.width,e.width=Bn):(e.width*=Bn/e.height,e.height=Bn):e.width>Bn?(e.height*=Bn/e.width,e.width=Bn):(e.width*=Bn/e.height,e.height=Bn))}function rd(e){return new Promise((t,n)=>{const i=new Image;i.onload=()=>{i.decode().then(()=>{requestAnimationFrame(()=>t(i))})},i.onerror=n,i.crossOrigin="anonymous",i.decoding="async",i.src=e})}async function YH(e){return Promise.resolve().then(()=>new XMLSerializer().serializeToString(e)).then(encodeURIComponent).then(t=>`data:image/svg+xml;charset=utf-8,${t}`)}async function GH(e,t,n){const i="http://www.w3.org/2000/svg",s=document.createElementNS(i,"svg"),r=document.createElementNS(i,"foreignObject");return s.setAttribute("width",`${t}`),s.setAttribute("height",`${n}`),s.setAttribute("viewBox",`0 0 ${t} ${n}`),r.setAttribute("width","100%"),r.setAttribute("height","100%"),r.setAttribute("x","0"),r.setAttribute("y","0"),r.setAttribute("externalResourcesRequired","true"),s.appendChild(r),r.appendChild(e),YH(s)}const En=(e,t)=>{if(e instanceof t)return!0;const n=Object.getPrototypeOf(e);return n===null?!1:n.constructor.name===t.name||En(n,t)};function LH(e){const t=e.getPropertyValue("content");return`${e.cssText} content: '${t.replace(/'|"/g,"")}';`}function QH(e,t){return f4(t).map(n=>{const i=e.getPropertyValue(n),s=e.getPropertyPriority(n);return`${n}: ${i}${s?" !important":""};`}).join(" ")}function PH(e,t,n,i){const s=`.${e}:${t}`,r=n.cssText?LH(n):QH(n,i);return document.createTextNode(`${s}{${r}}`)}function A1(e,t,n,i){const s=window.getComputedStyle(e,n),r=s.getPropertyValue("content");if(r===""||r==="none")return;const l=MH();try{t.className=`${t.className} ${l}`}catch{return}const c=document.createElement("style");c.appendChild(PH(l,n,s,i)),t.appendChild(c)}function qH(e,t,n){A1(e,t,":before",n),A1(e,t,":after",n)}const H1="application/font-woff",z1="image/jpeg",WH={woff:H1,woff2:H1,ttf:"application/font-truetype",eot:"application/vnd.ms-fontobject",png:"image/png",jpg:z1,jpeg:z1,gif:"image/gif",tiff:"image/tiff",svg:"image/svg+xml",webp:"image/webp"};function ZH(e){const t=/\.([^./]*?)$/g.exec(e);return t?t[1]:""}function pw(e){const t=ZH(e).toLowerCase();return WH[t]||""}function UH(e){return e.split(/,/)[1]}function J0(e){return e.search(/^(data:)/)!==-1}function IH(e,t){return`data:${t};base64,${e}`}async function p4(e,t,n){const i=await fetch(e,t);if(i.status===404)throw new Error(`Resource "${i.url}" not found`);const s=await i.blob();return new Promise((r,l)=>{const c=new FileReader;c.onerror=l,c.onloadend=()=>{try{r(n({res:i,result:c.result}))}catch(u){l(u)}},c.readAsDataURL(s)})}const Kg={};function FH(e,t,n){let i=e.replace(/\?.*/,"");return n&&(i=e),/ttf|otf|eot|woff2?/i.test(i)&&(i=i.replace(/.*\//,"")),t?`[${t}]${i}`:i}async function mw(e,t,n){const i=FH(e,t,n.includeQueryParams);if(Kg[i]!=null)return Kg[i];n.cacheBust&&(e+=(/\?/.test(e)?"&":"?")+new Date().getTime());let s;try{const r=await p4(e,n.fetchRequestInit,({res:l,result:c})=>(t||(t=l.headers.get("Content-Type")||""),UH(c)));s=IH(r,t)}catch(r){s=n.imagePlaceholder||"";let l=`Failed to fetch resource: ${e}`;r&&(l=typeof r=="string"?r:r.message),l&&console.warn(l)}return Kg[i]=s,s}async function VH(e){const t=e.toDataURL();return t==="data:,"?e.cloneNode(!1):rd(t)}async function XH(e,t){if(e.currentSrc){const r=document.createElement("canvas"),l=r.getContext("2d");r.width=e.clientWidth,r.height=e.clientHeight,l==null||l.drawImage(e,0,0,r.width,r.height);const c=r.toDataURL();return rd(c)}const n=e.poster,i=pw(n),s=await mw(n,i,t);return rd(s)}async function KH(e,t){var n;try{if(!((n=e==null?void 0:e.contentDocument)===null||n===void 0)&&n.body)return await Fd(e.contentDocument.body,t,!0)}catch{}return e.cloneNode(!1)}async function JH(e,t){return En(e,HTMLCanvasElement)?VH(e):En(e,HTMLVideoElement)?XH(e,t):En(e,HTMLIFrameElement)?KH(e,t):e.cloneNode(m4(e))}const tz=e=>e.tagName!=null&&e.tagName.toUpperCase()==="SLOT",m4=e=>e.tagName!=null&&e.tagName.toUpperCase()==="SVG";async function ez(e,t,n){var i,s;if(m4(t))return t;let r=[];return tz(e)&&e.assignedNodes?r=br(e.assignedNodes()):En(e,HTMLIFrameElement)&&(!((i=e.contentDocument)===null||i===void 0)&&i.body)?r=br(e.contentDocument.body.childNodes):r=br(((s=e.shadowRoot)!==null&&s!==void 0?s:e).childNodes),r.length===0||En(e,HTMLVideoElement)||await r.reduce((l,c)=>l.then(()=>Fd(c,n)).then(u=>{u&&t.appendChild(u)}),Promise.resolve()),t}function nz(e,t,n){const i=t.style;if(!i)return;const s=window.getComputedStyle(e);s.cssText?(i.cssText=s.cssText,i.transformOrigin=s.transformOrigin):f4(n).forEach(r=>{let l=s.getPropertyValue(r);r==="font-size"&&l.endsWith("px")&&(l=`${Math.floor(parseFloat(l.substring(0,l.length-2)))-.1}px`),En(e,HTMLIFrameElement)&&r==="display"&&l==="inline"&&(l="block"),r==="d"&&t.getAttribute("d")&&(l=`path(${t.getAttribute("d")})`),i.setProperty(r,l,s.getPropertyPriority(r))})}function iz(e,t){En(e,HTMLTextAreaElement)&&(t.innerHTML=e.value),En(e,HTMLInputElement)&&t.setAttribute("value",e.value)}function sz(e,t){if(En(e,HTMLSelectElement)){const i=Array.from(t.children).find(s=>e.value===s.getAttribute("value"));i&&i.setAttribute("selected","")}}function rz(e,t,n){return En(t,Element)&&(nz(e,t,n),qH(e,t,n),iz(e,t),sz(e,t)),t}async function oz(e,t){const n=e.querySelectorAll?e.querySelectorAll("use"):[];if(n.length===0)return e;const i={};for(let r=0;r<n.length;r++){const c=n[r].getAttribute("xlink:href");if(c){const u=e.querySelector(c),f=document.querySelector(c);!u&&f&&!i[c]&&(i[c]=await Fd(f,t,!0))}}const s=Object.values(i);if(s.length){const r="http://www.w3.org/1999/xhtml",l=document.createElementNS(r,"svg");l.setAttribute("xmlns",r),l.style.position="absolute",l.style.width="0",l.style.height="0",l.style.overflow="hidden",l.style.display="none";const c=document.createElementNS(r,"defs");l.appendChild(c);for(let u=0;u<s.length;u++)c.appendChild(s[u]);e.appendChild(l)}return e}async function Fd(e,t,n){return!n&&t.filter&&!t.filter(e)?null:Promise.resolve(e).then(i=>JH(i,t)).then(i=>ez(e,i,t)).then(i=>rz(e,i,t)).then(i=>oz(i,t))}const g4=/url\((['"]?)([^'"]+?)\1\)/g,lz=/url\([^)]+\)\s*format\((["']?)([^"']+)\1\)/g,az=/src:\s*(?:url\([^)]+\)\s*format\([^)]+\)[,;]\s*)+/g;function cz(e){const t=e.replace(/([.*+?^${}()|\[\]\/\\])/g,"\\$1");return new RegExp(`(url\\(['"]?)(${t})(['"]?\\))`,"g")}function uz(e){const t=[];return e.replace(g4,(n,i,s)=>(t.push(s),n)),t.filter(n=>!J0(n))}async function hz(e,t,n,i,s){try{const r=n?_H(t,n):t,l=pw(t);let c;return s||(c=await mw(r,l,i)),e.replace(cz(t),`$1${c}$3`)}catch{}return e}function fz(e,{preferredFontFormat:t}){return t?e.replace(az,n=>{for(;;){const[i,,s]=lz.exec(n)||[];if(!s)return"";if(s===t)return`src: ${i};`}}):e}function y4(e){return e.search(g4)!==-1}async function w4(e,t,n){if(!y4(e))return e;const i=fz(e,n);return uz(i).reduce((r,l)=>r.then(c=>hz(c,l,t,n)),Promise.resolve(i))}async function kl(e,t,n){var i;const s=(i=t.style)===null||i===void 0?void 0:i.getPropertyValue(e);if(s){const r=await w4(s,null,n);return t.style.setProperty(e,r,t.style.getPropertyPriority(e)),!0}return!1}async function dz(e,t){await kl("background",e,t)||await kl("background-image",e,t),await kl("mask",e,t)||await kl("-webkit-mask",e,t)||await kl("mask-image",e,t)||await kl("-webkit-mask-image",e,t)}async function pz(e,t){const n=En(e,HTMLImageElement);if(!(n&&!J0(e.src))&&!(En(e,SVGImageElement)&&!J0(e.href.baseVal)))return;const i=n?e.src:e.href.baseVal,s=await mw(i,pw(i),t);await new Promise((r,l)=>{e.onload=r,e.onerror=t.onImageErrorHandler?(...u)=>{try{r(t.onImageErrorHandler(...u))}catch(f){l(f)}}:l;const c=e;c.decode&&(c.decode=r),c.loading==="lazy"&&(c.loading="eager"),n?(e.srcset="",e.src=s):e.href.baseVal=s})}async function mz(e,t){const i=br(e.childNodes).map(s=>$4(s,t));await Promise.all(i).then(()=>e)}async function $4(e,t){En(e,Element)&&(await dz(e,t),await pz(e,t),await mz(e,t))}function gz(e,t){const{style:n}=e;t.backgroundColor&&(n.backgroundColor=t.backgroundColor),t.width&&(n.width=`${t.width}px`),t.height&&(n.height=`${t.height}px`);const i=t.style;return i!=null&&Object.keys(i).forEach(s=>{n[s]=i[s]}),e}const B1={};async function Y1(e){let t=B1[e];if(t!=null)return t;const i=await(await fetch(e)).text();return t={url:e,cssText:i},B1[e]=t,t}async function G1(e,t){let n=e.cssText;const i=/url\(["']?([^"')]+)["']?\)/g,r=(n.match(/url\([^)]+\)/g)||[]).map(async l=>{let c=l.replace(i,"$1");return c.startsWith("https://")||(c=new URL(c,e.url).href),p4(c,t.fetchRequestInit,({result:u})=>(n=n.replace(l,`url(${u})`),[l,u]))});return Promise.all(r).then(()=>n)}function L1(e){if(e==null)return[];const t=[],n=/(\/\*[\s\S]*?\*\/)/gi;let i=e.replace(n,"");const s=new RegExp("((@.*?keyframes [\\s\\S]*?){([\\s\\S]*?}\\s*?)})","gi");for(;;){const u=s.exec(i);if(u===null)break;t.push(u[0])}i=i.replace(s,"");const r=/@import[\s\S]*?url\([^)]*\)[\s\S]*?;/gi,l="((\\s*?(?:\\/\\*[\\s\\S]*?\\*\\/)?\\s*?@media[\\s\\S]*?){([\\s\\S]*?)}\\s*?})|(([\\s\\S]*?){([\\s\\S]*?)})",c=new RegExp(l,"gi");for(;;){let u=r.exec(i);if(u===null){if(u=c.exec(i),u===null)break;r.lastIndex=c.lastIndex}else c.lastIndex=r.lastIndex;t.push(u[0])}return t}async function yz(e,t){const n=[],i=[];return e.forEach(s=>{if("cssRules"in s)try{br(s.cssRules||[]).forEach((r,l)=>{if(r.type===CSSRule.IMPORT_RULE){let c=l+1;const u=r.href,f=Y1(u).then(p=>G1(p,t)).then(p=>L1(p).forEach(m=>{try{s.insertRule(m,m.startsWith("@import")?c+=1:s.cssRules.length)}catch(g){console.error("Error inserting rule from remote css",{rule:m,error:g})}})).catch(p=>{console.error("Error loading remote css",p.toString())});i.push(f)}})}catch(r){const l=e.find(c=>c.href==null)||document.styleSheets[0];s.href!=null&&i.push(Y1(s.href).then(c=>G1(c,t)).then(c=>L1(c).forEach(u=>{l.insertRule(u,l.cssRules.length)})).catch(c=>{console.error("Error loading remote stylesheet",c)})),console.error("Error inlining remote css file",r)}}),Promise.all(i).then(()=>(e.forEach(s=>{if("cssRules"in s)try{br(s.cssRules||[]).forEach(r=>{n.push(r)})}catch(r){console.error(`Error while reading CSS rules from ${s.href}`,r)}}),n))}function wz(e){return e.filter(t=>t.type===CSSRule.FONT_FACE_RULE).filter(t=>y4(t.style.getPropertyValue("src")))}async function $z(e,t){if(e.ownerDocument==null)throw new Error("Provided element is not within a Document");const n=br(e.ownerDocument.styleSheets),i=await yz(n,t);return wz(i)}function x4(e){return e.trim().replace(/["']/g,"")}function xz(e){const t=new Set;function n(i){(i.style.fontFamily||getComputedStyle(i).fontFamily).split(",").forEach(r=>{t.add(x4(r))}),Array.from(i.children).forEach(r=>{r instanceof HTMLElement&&n(r)})}return n(e),t}async function bz(e,t){const n=await $z(e,t),i=xz(e);return(await Promise.all(n.filter(r=>i.has(x4(r.style.fontFamily))).map(r=>{const l=r.parentStyleSheet?r.parentStyleSheet.href:null;return w4(r.cssText,l,t)}))).join(`
145
+ `)}async function vz(e,t){const n=t.fontEmbedCSS!=null?t.fontEmbedCSS:t.skipFonts?null:await bz(e,t);if(n){const i=document.createElement("style"),s=document.createTextNode(n);i.appendChild(s),e.firstChild?e.insertBefore(i,e.firstChild):e.appendChild(i)}}async function b4(e,t={}){const{width:n,height:i}=d4(e,t),s=await Fd(e,t,!0);return await vz(s,t),await $4(s,t),gz(s,t),await GH(s,n,i)}async function Sz(e,t={}){const{width:n,height:i}=d4(e,t),s=await b4(e,t),r=await rd(s),l=document.createElement("canvas"),c=l.getContext("2d"),u=t.pixelRatio||zH(),f=t.canvasWidth||n,p=t.canvasHeight||i;return l.width=f*u,l.height=p*u,t.skipAutoScale||BH(l),l.style.width=`${f}`,l.style.height=`${p}`,t.backgroundColor&&(c.fillStyle=t.backgroundColor,c.fillRect(0,0,l.width,l.height)),c.drawImage(r,0,0,l.width,l.height),l}async function Oz(e,t={}){return(await Sz(e,t)).toDataURL()}const v4={source:"canvas",format:"png",background:"dark",scale:2,padding:48,theme:"dark"},ty={dark:"#12141a",light:"#ffffff",transparent:void 0};function kz(e){var l,c,u,f;const t=new Map(e.map(p=>[p.id,p]));let n=1/0,i=1/0,s=-1/0,r=-1/0;for(const p of e){let m=p.position.x,g=p.position.y,y=p.parentId;for(;y;){const O=t.get(y);if(!O)break;m+=O.position.x,g+=O.position.y,y=O.parentId}const $=Yl(p),b=((l=p.measured)==null?void 0:l.width)??(je(p)?Number(((c=p.style)==null?void 0:c.width)??320):$.width),S=((u=p.measured)==null?void 0:u.height)??(je(p)?Number(((f=p.style)==null?void 0:f.height)??220):$.height);n=Math.min(n,m),i=Math.min(i,g),s=Math.max(s,m+b),r=Math.max(r,g+S)}return{x:n,y:i,width:s-n,height:r-i}}function Cz(e,t){const n=kz(e),i=4e3,s=Math.min(1,(i-t*2)/n.width,(i-t*2)/n.height);return{width:Math.max(240,Math.ceil(n.width*s+t*2)),height:Math.max(160,Math.ceil(n.height*s+t*2)),viewport:{x:-n.x*s+t,y:-n.y*s+t,zoom:s}}}async function Ez(e,t,n,i,s,r){const l=document.querySelector(".react-flow__viewport");if(!l)return"";const c="http://www.w3.org/2000/svg",u=document.createElementNS(c,"svg");u.setAttribute("width","0"),u.setAttribute("height","0");const f=document.createElementNS(c,"defs");document.querySelectorAll("marker").forEach(p=>f.appendChild(p.cloneNode(!0))),u.appendChild(f),l.appendChild(u);try{const p={...s?{backgroundColor:s}:{},width:t,height:n,style:{width:`${t}px`,height:`${n}px`,transform:`translate(${i.x}px, ${i.y}px) scale(${i.zoom})`},filter:m=>{var g,y;return!((g=m.classList)!=null&&g.contains("react-flow__handle"))&&!((y=m.classList)!=null&&y.contains("react-flow__resize-control"))},...e==="png"?{pixelRatio:r}:{}};return e==="png"?await Oz(l,p):await b4(l,p)}finally{u.remove()}}function Dz(e,t){let n=800,i=600;const s=e.match(/viewBox="([\d.\s-]+)"/);if(s){const l=s[1].trim().split(/\s+/).map(Number);l.length===4&&l[2]>0&&l[3]>0&&(n=Math.ceil(l[2]),i=Math.ceil(l[3]))}return{svg:e.replace(/<svg([^>]*)>/,(l,c)=>{const u=c.replace(/\s(width|height)="[^"]*"/g,"").replace(/\sstyle="[^"]*"/g,""),f=t?` style="background:${t}"`:"";return`<svg${u} width="${n}" height="${i}"${f}>`}),width:n,height:i}}function Tz(e,t,n,i,s){return new Promise((r,l)=>{const c=new Image;c.onload=()=>{const u=document.createElement("canvas");u.width=Math.ceil(t*i),u.height=Math.ceil(n*i);const f=u.getContext("2d");s&&(f.fillStyle=s,f.fillRect(0,0,u.width,u.height)),f.drawImage(c,0,0,u.width,u.height),r(u.toDataURL("image/png"))},c.onerror=()=>l(new Error("could not rasterize the mermaid SVG")),c.src=`data:image/svg+xml;charset=utf-8,${encodeURIComponent(e)}`})}async function Nz(e,t){const n=`%%{init: {"theme": "${e.theme}"}}%%
146
+ ${hH(t)}`,i=await dw(async c=>(await c.render(`export-${Date.now()}`,n)).svg),{svg:s,width:r,height:l}=Dz(i,ty[e.background]);return e.format==="svg"?`data:image/svg+xml;charset=utf-8,${encodeURIComponent(s)}`:Tz(s,r,l,e.scale,ty[e.background])}async function S4(e,t,n){if(e.source==="mermaid")return Nz(e,n);if(t.length===0)return"";const{width:i,height:s,viewport:r}=Cz(t,e.padding);return Ez(e.format,i,s,r,ty[e.background],e.scale)}function jz(e,t){const n=document.createElement("a");n.href=e,n.download=t,n.click()}function Rz({onClose:e}){const t=_e(),n=pt($=>$.nodes),i=pt($=>$.code),[s,r]=L.useState(v4),[l,c]=L.useState(""),[u,f]=L.useState(!0),[p,m]=L.useState(null),g=$=>r(b=>({...b,...$}));L.useEffect(()=>{let $=!0;const b=setTimeout(()=>{$&&(f(!0),m(null),S4(s,n,i).then(S=>{$&&(c(S),f(!1))}).catch(S=>{$&&(m(S instanceof Error?S.message:String(S)),f(!1))}))},350);return()=>{$=!1,clearTimeout(b)}},[s,n,i]);const y=()=>{l&&jz(l,`diagram.${s.format}`),e()};return v.jsxs(Id,{title:t("export.title"),onClose:e,children:[v.jsxs("div",{className:"modal-body",children:[v.jsxs("div",{className:"export-opts",children:[v.jsxs("label",{children:[t("export.source"),v.jsxs("select",{value:s.source,onChange:$=>g({source:$.target.value}),children:[v.jsx("option",{value:"canvas",children:t("export.sourceCanvas")}),v.jsx("option",{value:"mermaid",children:t("export.sourceMermaid")})]})]}),v.jsxs("label",{children:[t("export.format"),v.jsxs("select",{value:s.format,onChange:$=>g({format:$.target.value}),children:[v.jsx("option",{value:"png",children:t("export.formatPng")}),v.jsx("option",{value:"svg",children:t("export.formatSvg")})]})]}),v.jsxs("label",{children:[t("export.background"),v.jsxs("select",{value:s.background,onChange:$=>g({background:$.target.value}),children:[v.jsx("option",{value:"dark",children:t("export.bgDark")}),v.jsx("option",{value:"light",children:t("export.bgLight")}),v.jsx("option",{value:"transparent",children:t("export.bgTransparent")})]})]}),s.source==="mermaid"&&v.jsxs("label",{children:[t("export.mermaidTheme"),v.jsxs("select",{value:s.theme,onChange:$=>g({theme:$.target.value}),children:[v.jsx("option",{value:"dark",children:"dark"}),v.jsx("option",{value:"default",children:"default"}),v.jsx("option",{value:"neutral",children:"neutral"}),v.jsx("option",{value:"forest",children:"forest"}),v.jsx("option",{value:"base",children:"base"})]})]}),s.format==="png"&&v.jsxs("label",{children:[t("export.quality"),v.jsxs("select",{value:s.scale,onChange:$=>g({scale:Number($.target.value)}),children:[v.jsx("option",{value:1,children:t("export.quality1")}),v.jsx("option",{value:2,children:t("export.quality2")}),v.jsx("option",{value:3,children:t("export.quality3")})]})]}),s.source==="canvas"&&v.jsxs("label",{children:[t("export.margin",{padding:s.padding}),v.jsx("input",{type:"range",min:0,max:160,step:8,value:s.padding,onChange:$=>g({padding:Number($.target.value)})})]})]}),v.jsx("div",{className:"export-preview","aria-live":"polite","aria-busy":u,children:p?v.jsx("div",{className:"preview-error",children:p}):l?v.jsx("img",{src:l,alt:t("export.previewAlt"),className:u?"stale":""}):v.jsx("div",{className:"palette-hint",children:t("export.generating")})})]}),v.jsxs("div",{className:"modal-actions",children:[v.jsx("button",{onClick:e,children:t("export.cancel")}),v.jsx("button",{className:"primary",onClick:y,disabled:u||!!p,children:t("export.confirm",{format:s.format.toUpperCase()})})]})]})}function _z({onClose:e}){const t=_e();return v.jsxs(Id,{title:t("about.title"),onClose:e,className:"about",hideTitle:!0,children:[v.jsxs("div",{className:"about-hero",children:[v.jsxs("div",{className:"about-lockup",children:[v.jsx("img",{className:"about-mark",src:"./logo.svg",alt:""}),v.jsx("span",{className:"about-name",children:t("app.name")})]}),v.jsx("p",{className:"about-tagline",children:t("app.tagline")})]}),v.jsxs("div",{className:"about-body about-prose",children:[v.jsxs("p",{children:["Every diagram you draw here is a standard"," ",v.jsx("a",{href:"https://github.com/mermaid-js/mermaid",target:"_blank",rel:"noreferrer",children:"Mermaid"})," ","file — portable, versionable, and readable by humans and AI agents alike. Everything runs locally: nothing ever leaves your machine."]}),v.jsxs("p",{children:["Archyne is free software, released under the ",v.jsx("strong",{children:"MIT License"})," — you may use, modify, and redistribute it, commercially too, as long as the license notice travels with it. It is built on the shoulders of open-source projects such as React, React Flow, Mermaid, the Eclipse Layout Kernel, and Iconify, each under a license compatible with this one. The complete inventory, with every notice, lives in"," ",v.jsx("em",{children:"THIRD-PARTY-NOTICES.md"})," alongside the source code. Icon collections are openly licensed (CC0, MIT, Apache-2.0), though the vendor logos they depict remain trademarks of their respective owners."]}),v.jsx("p",{className:"about-trademark",children:t("about.trademark")}),v.jsx("p",{className:"about-version",children:t("about.version",{version:"0.1.0"})})]}),v.jsx("div",{className:"modal-actions",children:v.jsx("button",{onClick:e,children:t("about.close")})})]})}const Mz=[{id:"approval",kind:"flowchart",nameKey:"tpl.approval",descriptionKey:"tpl.approvalDesc",code:`flowchart TD
147
+ submit[/"Submit request"/]
148
+ review{"Manager approves?"}
149
+ budget{"Over budget?"}
150
+ finance["Finance review"]
151
+ approved(["Approved"])
152
+ rejected(["Rejected"])
153
+
154
+ submit --> review
155
+ review -->|"yes"| budget
156
+ review -->|"no"| rejected
157
+ budget -->|"yes"| finance
158
+ budget -->|"no"| approved
159
+ finance -->|"signed off"| approved
160
+ finance -->|"declined"| rejected
161
+ `},{id:"auth",kind:"sequence",nameKey:"tpl.auth",descriptionKey:"tpl.authDesc",code:`sequenceDiagram
162
+ actor U as User
163
+ participant A as App
164
+ participant S as Auth service
165
+ participant D as Database
166
+
167
+ U->>A: Sign in
168
+ A->>S: POST /token
169
+ S->>D: Look up account
170
+ D-->>S: Account
171
+ alt credentials valid
172
+ S-->>A: Access token
173
+ A-->>U: Signed in
174
+ else invalid
175
+ S-->>A: 401
176
+ A-->>U: Show error
177
+ end
178
+ `},{id:"orders",kind:"er",nameKey:"tpl.orders",descriptionKey:"tpl.ordersDesc",code:`erDiagram
179
+ CUSTOMER {
180
+ string id PK
181
+ string email "unique"
182
+ string name
183
+ }
184
+ ORDER {
185
+ string id PK
186
+ string customer_id FK
187
+ date placed_at
188
+ string status
189
+ }
190
+ LINE_ITEM {
191
+ string id PK
192
+ string order_id FK
193
+ int quantity
194
+ }
195
+ PRODUCT {
196
+ string sku PK
197
+ string name
198
+ decimal price
199
+ }
200
+
201
+ CUSTOMER ||--o{ ORDER : "places"
202
+ ORDER ||--|{ LINE_ITEM : "contains"
203
+ PRODUCT ||--o{ LINE_ITEM : "appears in"
204
+ `},{id:"webapp",kind:"architecture",nameKey:"tpl.webapp",descriptionKey:"tpl.webappDesc",code:`architecture-beta
205
+ group cloud(cloud)[Cloud]
206
+ group data(database)[Data] in cloud
207
+
208
+ service users(internet)[Users]
209
+ service cdn(server)[CDN] in cloud
210
+ service api(server)[API] in cloud
211
+ service db(database)[Postgres] in data
212
+ service cache(disk)[Redis] in data
213
+
214
+ users:R --> L:cdn
215
+ cdn:R --> L:api
216
+ api:R --> L:db
217
+ api:B --> T:cache
218
+ `},{id:"order-state",kind:"state",nameKey:"tpl.orderState",descriptionKey:"tpl.orderStateDesc",code:`stateDiagram-v2
219
+ [*] --> Draft
220
+ Draft --> Submitted : submit
221
+ Submitted --> Paid : payment cleared
222
+ Submitted --> Cancelled : cancel
223
+ Paid --> Shipped : dispatch
224
+ Shipped --> Delivered : signed for
225
+ Delivered --> [*]
226
+ Cancelled --> [*]
227
+ `},{id:"domain",kind:"class",nameKey:"tpl.domain",descriptionKey:"tpl.domainDesc",code:`classDiagram
228
+ class Account {
229
+ +string id
230
+ +string email
231
+ +suspend() void
232
+ }
233
+ class Subscription {
234
+ +string plan
235
+ +date renewsAt
236
+ +cancel() void
237
+ }
238
+ class Invoice {
239
+ +decimal total
240
+ +bool paid
241
+ }
242
+
243
+ Account "1" --> "0..*" Subscription : has
244
+ Subscription "1" --> "0..*" Invoice : bills
245
+ `},{id:"context",kind:"c4",nameKey:"tpl.context",descriptionKey:"tpl.contextDesc",code:`C4Context
246
+ title System context
247
+
248
+ Person(customer, "Customer", "Places orders")
249
+ Person(staff, "Support agent", "Handles queries")
250
+ System(shop, "Shop", "Storefront and checkout")
251
+ System_Ext(payments, "Payment provider", "Card processing")
252
+ System_Ext(email, "Email service", "Transactional mail")
253
+
254
+ Rel(customer, shop, "Browses and buys")
255
+ Rel(staff, shop, "Looks up orders")
256
+ Rel(shop, payments, "Charges cards", "HTTPS")
257
+ Rel(shop, email, "Sends receipts", "SMTP")
258
+ `}];function Az({onClose:e}){const t=pt(s=>s.applyCode),n=_e(),i=s=>{t(s,{record:!0,forceLayout:!0}),e()};return v.jsxs(Id,{title:n("tpl.title"),onClose:e,className:"templates",children:[v.jsx("div",{className:"modal-body template-grid",children:Mz.map(s=>v.jsxs("button",{type:"button",className:"template-card",onClick:()=>i(s.code),children:[v.jsx("span",{className:"template-kind",children:n(`kind.${s.kind}`)}),v.jsx("span",{className:"template-name",children:n(s.nameKey)}),v.jsx("span",{className:"template-desc",children:n(s.descriptionKey)})]},s.id))}),v.jsx("div",{className:"modal-actions",children:v.jsx("button",{onClick:e,children:n("export.cancel")})})]})}const O4=L.createContext(null);function Jg({onSelect:e,children:t}){const n=L.useContext(O4);return v.jsx("button",{type:"button",onClick:()=>{e(),n==null||n()},children:t})}function Hz({label:e,children:t,className:n=""}){const[i,s]=L.useState(!1),r=L.useRef(null),l=L.useRef(null),c=L.useRef(null),u=L.useId();return L.useEffect(()=>{if(!i)return;const f=p=>{var m;(m=r.current)!=null&&m.contains(p.target)||s(!1)};return window.addEventListener("mousedown",f,!0),()=>window.removeEventListener("mousedown",f,!0)},[i]),L.useEffect(()=>{var m;if(!i)return;const f=c.current;(m=f==null?void 0:f.querySelector("button, select, a"))==null||m.focus();const p=g=>{var S;if(g.key==="Escape"){g.stopPropagation(),s(!1),(S=l.current)==null||S.focus();return}if(g.key!=="ArrowDown"&&g.key!=="ArrowUp")return;g.preventDefault();const y=[...(f==null?void 0:f.querySelectorAll("button, select, a"))??[]];if(y.length===0)return;const $=y.indexOf(document.activeElement),b=g.key==="ArrowDown"?($+1)%y.length:($-1+y.length)%y.length;y[b].focus()};return f==null||f.addEventListener("keydown",p),()=>f==null?void 0:f.removeEventListener("keydown",p)},[i]),v.jsxs("div",{className:`menu-button ${n}`.trim(),ref:r,children:[v.jsx("button",{ref:l,type:"button","aria-expanded":i,"aria-controls":i?u:void 0,"aria-label":e,title:e,onClick:()=>s(f=>!f),children:v.jsx("span",{"aria-hidden":"true",children:"⋯"})}),i&&v.jsx("div",{className:"menu-popover",id:u,role:"group","aria-label":e,ref:c,children:v.jsx(O4.Provider,{value:()=>{var f;s(!1),(f=l.current)==null||f.focus()},children:t})})]})}const zz=["flowchart","state","er","class","sequence","architecture","c4"];function Bz(){const e=pt(R=>R.direction),t=pt(R=>R.kind),n=pt(R=>R.unsupported),i=pt(R=>R.setDirection),s=pt(R=>R.runAutoLayout),r=pt(R=>R.newDiagram),l=pt(R=>R.applyCode),c=pt(R=>R.undo),u=pt(R=>R.redo),f=pt(R=>R.canUndo),p=pt(R=>R.canRedo),m=L.useRef(null),[g,y]=L.useState(!1),[$,b]=L.useState(!1),[S,O]=L.useState(!1),[E,k]=L.useState(!1),D=ho(R=>R.paletteOpen),_=ho(R=>R.sideOpen),A=ho(R=>R.togglePalette),H=ho(R=>R.toggleSide),Y=ii(R=>R.open),W=ii(R=>R.save),nt=ii(R=>R.saveAs),U=ii(R=>R.name),P=ii(R=>R.savedCode),F=pt(R=>R.code),M=Wi(R=>R.choice),G=Wi(R=>R.setTheme),T=_e(),z=ta(R=>R.locale),Z=ta(R=>R.setLocale),Q=async()=>{var R;try{await Y()}catch(J){if(J instanceof Error&&J.message==="no-picker"){(R=m.current)==null||R.click();return}id("toast.openFailed",J)}},et=R=>()=>void R().then(()=>nd("toast.saved")).catch(J=>id("toast.saveFailed",J)),j=async()=>{await navigator.clipboard.writeText(pt.getState().code),y(!0),nd("toast.copied"),setTimeout(()=>y(!1),1200)};return v.jsxs("header",{className:"toolbar",children:[v.jsxs("div",{className:"tb-group tb-identity",children:[v.jsxs("button",{className:"brand-button",title:T("toolbar.aboutTitle"),"aria-label":T("toolbar.about"),onClick:()=>O(!0),children:[v.jsx("img",{src:"./logo.svg",alt:"",className:"brand-logo"}),v.jsx("span",{className:"brand",children:T("app.name")})]}),v.jsxs("span",{className:"file-name",title:U??void 0,children:[U??T("file.untitled"),P!==null&&P!==F&&v.jsx("em",{className:"file-dirty",title:T("file.unsaved"),"aria-label":T("file.unsaved"),children:"•"})]}),v.jsx("span",{className:"kind-badge",role:"status",children:n?T("unsupported.badge",{type:n}):T(`kind.${t}`)})]}),v.jsx("button",{type:"button",className:"drawer-toggle","aria-expanded":D,onClick:A,children:T("toolbar.shapesDrawer")}),v.jsx("button",{type:"button",className:"drawer-toggle","aria-expanded":_,onClick:H,children:T("toolbar.codeDrawer")}),v.jsx("div",{className:"toolbar-spacer"}),v.jsxs("div",{className:"tb-group",children:[v.jsx("button",{className:"icon-button",onClick:()=>void c(),disabled:!f,title:T("toolbar.undoHint"),"aria-label":T("toolbar.undo"),children:v.jsx("span",{"aria-hidden":"true",children:"↶"})}),v.jsx("button",{className:"icon-button",onClick:()=>void u(),disabled:!p,title:T("toolbar.redoHint"),"aria-label":T("toolbar.redo"),children:v.jsx("span",{"aria-hidden":"true",children:"↷"})}),!n&&t!=="sequence"&&t!=="architecture"&&t!=="c4"&&v.jsxs("select",{className:"tb-compact",value:e==="TD"?"TB":e,title:T("toolbar.direction"),"aria-label":T("toolbar.direction"),onChange:R=>i(R.target.value),children:[v.jsx("option",{value:"TB",children:T("toolbar.dirTB")}),v.jsx("option",{value:"LR",children:T("toolbar.dirLR")}),v.jsx("option",{value:"BT",children:T("toolbar.dirBT")}),v.jsx("option",{value:"RL",children:T("toolbar.dirRL")})]}),!n&&v.jsx("button",{onClick:()=>void s(),children:T("toolbar.autoLayout")})]}),v.jsxs("div",{className:"tb-group",children:[v.jsxs("select",{className:"tb-compact",value:"","aria-label":T("toolbar.newDiagram"),onChange:R=>{R.target.value&&r(R.target.value),R.target.value=""},children:[v.jsx("option",{value:"",disabled:!0,children:T("toolbar.new")}),zz.map(R=>v.jsx("option",{value:R,children:T(`kind.${R}`)},R))]}),v.jsx("button",{onClick:()=>k(!0),children:T("tpl.open")}),v.jsx("button",{onClick:()=>void Q(),children:T("toolbar.open")}),v.jsx("button",{onClick:et(W),children:T("toolbar.save")}),v.jsx("button",{className:"primary",onClick:()=>b(!0),children:T("toolbar.export")})]}),v.jsx(Hz,{label:T("toolbar.more"),children:v.jsxs(v.Fragment,{children:[v.jsx(Jg,{onSelect:et(nt),children:T("toolbar.saveAs")}),v.jsx(Jg,{onSelect:()=>void j(),children:T(g?"toolbar.copied":"toolbar.copyCode")}),v.jsx("div",{className:"menu-separator"}),v.jsxs("label",{className:"menu-field",children:[T("toolbar.theme"),v.jsxs("select",{value:M,"aria-label":T("toolbar.theme"),onChange:R=>G(R.target.value),children:[v.jsx("option",{value:"dark",children:T("toolbar.themeDark")}),v.jsx("option",{value:"light",children:T("toolbar.themeLight")}),v.jsx("option",{value:"system",children:T("toolbar.themeSystem")})]})]}),v.jsxs("label",{className:"menu-field",children:[T("toolbar.language"),v.jsx("select",{value:z,"aria-label":T("toolbar.language"),onChange:R=>void Z(R.target.value),children:Object.keys(ed).map(R=>v.jsx("option",{value:R,children:ed[R].label},R))})]}),v.jsx("div",{className:"menu-separator"}),v.jsx(Jg,{onSelect:()=>O(!0),children:T("about.title")})]})}),$&&v.jsx(Rz,{onClose:()=>b(!1)}),S&&v.jsx(_z,{onClose:()=>O(!1)}),E&&v.jsx(Az,{onClose:()=>k(!1)}),v.jsx("input",{ref:m,type:"file",accept:".mmd,.txt,.md",hidden:!0,onChange:async R=>{var st;const J=(st=R.target.files)==null?void 0:st[0];J&&await l(await J.text(),{record:!0}),R.target.value=""}})]})}const Yz=Object.freeze({left:0,top:0,width:16,height:16}),od=Object.freeze({rotate:0,vFlip:!1,hFlip:!1}),k4=Object.freeze({...Yz,...od}),Gz=Object.freeze({...k4,body:"",hidden:!1}),Lz=Object.freeze({width:null,height:null}),Qz=Object.freeze({...Lz,...od});function Pz(e,t){const n={};!e.hFlip!=!t.hFlip&&(n.hFlip=!0),!e.vFlip!=!t.vFlip&&(n.vFlip=!0);const i=((e.rotate||0)+(t.rotate||0))%4;return i&&(n.rotate=i),n}function Q1(e,t){const n=Pz(e,t);for(const i in Gz)i in od?i in e&&!(i in n)&&(n[i]=od[i]):i in t?n[i]=t[i]:i in e&&(n[i]=e[i]);return n}function qz(e,t){const n=e.icons,i=e.aliases||Object.create(null),s=Object.create(null);function r(l){if(n[l])return s[l]=[];if(!(l in s)){s[l]=null;const c=i[l]&&i[l].parent,u=c&&r(c);u&&(s[l]=[c].concat(u))}return s[l]}return(t||Object.keys(n).concat(Object.keys(i))).forEach(r),s}function P1(e,t,n){const i=e.icons,s=e.aliases||Object.create(null);let r={};function l(c){r=Q1(i[c]||s[c],r)}return l(t),n.forEach(l),Q1(e,r)}function Wz(e,t){if(e.icons[t])return P1(e,t,[]);const n=qz(e,[t])[t];return n?P1(e,t,n):null}const Zz=/(-?[0-9.]*[0-9]+[0-9.]*)/g,Uz=/^-?[0-9.]*[0-9]+[0-9.]*$/g;function q1(e,t,n){if(t===1)return e;if(n=n||100,typeof e=="number")return Math.ceil(e*t*n)/n;if(typeof e!="string")return e;const i=e.split(Zz);if(i===null||!i.length)return e;const s=[];let r=i.shift(),l=Uz.test(r);for(;;){if(l){const c=parseFloat(r);isNaN(c)?s.push(r):s.push(Math.ceil(c*t*n)/n)}else s.push(r);if(r=i.shift(),r===void 0)return s.join("");l=!l}}function Iz(e,t="defs"){let n="";const i=e.indexOf("<"+t);for(;i>=0;){const s=e.indexOf(">",i),r=e.indexOf("</"+t);if(s===-1||r===-1)break;const l=e.indexOf(">",r);if(l===-1)break;n+=e.slice(s+1,r).trim(),e=e.slice(0,i).trim()+e.slice(l+1)}return{defs:n,content:e}}function Fz(e,t){return e?"<defs>"+e+"</defs>"+t:t}function Vz(e,t,n){const i=Iz(e);return Fz(i.defs,t+i.content+n)}const Xz=e=>e==="unset"||e==="undefined"||e==="none";function Kz(e,t){const n={...k4,...e},i={...Qz,...t},s={left:n.left,top:n.top,width:n.width,height:n.height};let r=n.body;[n,i].forEach(b=>{const S=[],O=b.hFlip,E=b.vFlip;let k=b.rotate;O?E?k+=2:(S.push("translate("+(s.width+s.left).toString()+" "+(0-s.top).toString()+")"),S.push("scale(-1 1)"),s.top=s.left=0):E&&(S.push("translate("+(0-s.left).toString()+" "+(s.height+s.top).toString()+")"),S.push("scale(1 -1)"),s.top=s.left=0);let D;switch(k<0&&(k-=Math.floor(k/4)*4),k=k%4,k){case 1:D=s.height/2+s.top,S.unshift("rotate(90 "+D.toString()+" "+D.toString()+")");break;case 2:S.unshift("rotate(180 "+(s.width/2+s.left).toString()+" "+(s.height/2+s.top).toString()+")");break;case 3:D=s.width/2+s.left,S.unshift("rotate(-90 "+D.toString()+" "+D.toString()+")");break}k%2===1&&(s.left!==s.top&&(D=s.left,s.left=s.top,s.top=D),s.width!==s.height&&(D=s.width,s.width=s.height,s.height=D)),S.length&&(r=Vz(r,'<g transform="'+S.join(" ")+'">',"</g>"))});const l=i.width,c=i.height,u=s.width,f=s.height;let p,m;l===null?(m=c===null?"1em":c==="auto"?f:c,p=q1(m,u/f)):(p=l==="auto"?u:l,m=c===null?q1(p,f/u):c==="auto"?f:c);const g={},y=(b,S)=>{Xz(S)||(g[b]=S.toString())};y("width",p),y("height",m);const $=[s.left,s.top,u,f];return g.viewBox=$.join(" "),{attributes:g,viewBox:$,body:r}}const Jz=/\sid="(\S+)"/g,W1=new Map;function t7(e){e=e.replace(/[0-9]+$/,"")||"a";const t=W1.get(e)||0;return W1.set(e,t+1),t?`${e}${t}`:e}function e7(e){const t=[];let n;for(;n=Jz.exec(e);)t.push(n[1]);if(!t.length)return e;const i="suffix"+(Math.random()*16777216|Date.now()).toString(16);return t.forEach(s=>{const r=t7(s),l=s.replace(/[.*+?^${}()|[\]\\]/g,"\\$&");e=e.replace(new RegExp('([#;"])('+l+')([")]|\\.[a-z])',"g"),"$1"+r+i+"$3")}),e=e.replace(new RegExp(i,"g"),""),e}function n7(e,t){let n=e.indexOf("xlink:")===-1?"":' xmlns:xlink="http://www.w3.org/1999/xlink"';for(const i in t)n+=" "+i+'="'+t[i]+'"';return'<svg xmlns="http://www.w3.org/2000/svg"'+n+">"+e+"</svg>"}const Dl={server:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.6"><rect x="3" y="4" width="18" height="7" rx="1.5"/><rect x="3" y="13" width="18" height="7" rx="1.5"/><circle cx="7" cy="7.5" r="0.9" fill="currentColor"/><circle cx="7" cy="16.5" r="0.9" fill="currentColor"/></svg>',database:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.6"><ellipse cx="12" cy="5.5" rx="8" ry="3"/><path d="M4 5.5v13c0 1.7 3.6 3 8 3s8-1.3 8-3v-13"/><path d="M4 12c0 1.7 3.6 3 8 3s8-1.3 8-3"/></svg>',disk:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.6"><circle cx="12" cy="12" r="9"/><circle cx="12" cy="12" r="2.6"/></svg>',cloud:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.6"><path d="M7 18a4.5 4.5 0 1 1 .8-8.9A6 6 0 0 1 19.5 11 3.5 3.5 0 0 1 18.5 18Z"/></svg>',internet:'<svg viewBox="0 0 24 24" fill="none" stroke="currentColor" stroke-width="1.6"><circle cx="12" cy="12" r="9"/><path d="M3 12h18M12 3c2.5 2.4 4 5.6 4 9s-1.5 6.6-4 9c-2.5-2.4-4-5.6-4-9s1.5-6.6 4-9Z"/></svg>'},Vd={logos:()=>Oe(()=>import("./index-BDuFgzVF.js"),[],import.meta.url).then(e=>e.icons),devicon:()=>Oe(()=>import("./index-C-tHkbn_.js"),[],import.meta.url).then(e=>e.icons),carbon:()=>Oe(()=>import("./index-C1mNJrF6.js"),[],import.meta.url).then(e=>e.icons),tabler:()=>Oe(()=>import("./index-B29u660W.js"),[],import.meta.url).then(e=>e.icons),"simple-icons":()=>Oe(()=>import("./index-XppXLvIK.js"),[],import.meta.url).then(e=>e.icons)},t0=new Map;function i7(e){const t=Vd[e];return t?(t0.has(e)||t0.set(e,t()),t0.get(e)):null}async function s7(e){const t=e.indexOf(":");if(t<0)return Dl[e]??Dl.server;const n=i7(e.slice(0,t));if(!n)return Dl.server;try{const i=await n,s=Wz(i,e.slice(t+1));if(!s)return Dl.server;const r=Kz(s,{height:"auto"});return n7(e7(r.body),r.attributes)}catch{return Dl.server}}let Z1=null;function r7(){return Z1??(Z1=Oe(()=>import("./icon-names.generated-Ch4zjdI9.js"),[],import.meta.url).then(e=>e.default)),Z1}async function C4(e){return Vd[e]?(await r7())[e]??[]:[]}async function o7(e,t=60){const n=e.trim().toLowerCase();if(!n)return[];const i=[];for(const s of Object.keys(Vd)){const r=await C4(s),l=r.filter(u=>u.startsWith(n)),c=r.filter(u=>!u.startsWith(n)&&u.includes(n));if(i.push(...[...l,...c].map(u=>`${s}:${u}`)),i.length>=t)break}return i.slice(0,t)}async function l7(e,t,n=120){const i=await C4(e),s=i.filter(l=>t.some(c=>l.startsWith(c))),r=i.filter(l=>!t.some(c=>l.startsWith(c))&&t.some(c=>l.includes(c)));return[...s,...r].slice(0,n).map(l=>`${e}:${l}`)}const a7=Object.keys(Vd),c7=Object.keys(Dl);function E4(){const{screenToFlowPosition:e}=ua(),t=pt(i=>i.addNode),n=L.useRef(0);return L.useCallback(i=>{var u;const s=(u=document.querySelector(".react-flow"))==null?void 0:u.getBoundingClientRect(),r=s?s.left+s.width/2:window.innerWidth/2,l=s?s.top+s.height/2:window.innerHeight/2,c=n.current++%6*34;t(i,e({x:r+c,y:l+c}))},[t,e])}function gw({name:e,size:t}){const[n,i]=L.useState("");return L.useEffect(()=>{let s=!0;return s7(e).then(r=>{s&&i(r)}),()=>{s=!1}},[e]),v.jsx("div",{className:"arch-icon",style:{width:t,height:t},dangerouslySetInnerHTML:{__html:n}})}function yw(){return v.jsxs(v.Fragment,{children:[v.jsx(ae,{type:"source",position:$t.Left,id:"L"}),v.jsx(ae,{type:"source",position:$t.Right,id:"R"}),v.jsx(ae,{type:"source",position:$t.Top,id:"T"}),v.jsx(ae,{type:"source",position:$t.Bottom,id:"B"})]})}function u7({id:e,data:t,selected:n}){return v.jsxs("div",{className:`service-node${n?" selected":""}`,children:[t.icon&&v.jsx(gw,{name:t.icon,size:44}),v.jsx("div",{className:"service-label",children:t.label||e}),v.jsx(yw,{})]})}function h7({selected:e}){return v.jsx("div",{className:`junction-node${e?" selected":""}`,children:v.jsx(yw,{})})}const f7={person:"Person",external_person:"Person (ext)",system:"System",external_system:"System (ext)",system_db:"System DB",system_queue:"System Queue",container:"Container",external_container:"Container (ext)",container_db:"Container DB",container_queue:"Container Queue",component:"Component",external_component:"Component (ext)",component_db:"Component DB",component_queue:"Component Queue"};function d7({data:e,selected:t}){const n=e.c4Shape.startsWith("external_"),i=e.c4Shape.includes("person");return v.jsxs("div",{className:`c4-node${n?" external":""}${i?" person":""}${t?" selected":""}`,children:[i&&v.jsx("div",{className:"c4-head"}),v.jsxs("div",{className:"c4-tag",children:["«",f7[e.c4Shape]??e.c4Shape,"»"]}),v.jsx("div",{className:"c4-label",children:e.label}),e.descr&&v.jsx("div",{className:"c4-descr",children:e.descr}),v.jsx(yw,{})]})}function U1({name:e}){const t=Jl(c=>c.favorites),n=Jl(c=>c.toggleFavorite),i=E4(),s=_e(),r=t.includes(e),l={type:"service",icon:e};return v.jsxs("div",{className:"icon-cell",draggable:!0,onDragStart:c=>{c.dataTransfer.setData("application/x-graph-node",JSON.stringify(l))},children:[v.jsx("button",{type:"button",className:"icon-add",title:s("palette.add",{name:e}),onClick:()=>i(l),children:v.jsx(gw,{name:e,size:26})}),v.jsx("button",{className:`star${r?" active":""}`,title:s(r?"palette.removeFavorite":"palette.addFavorite"),"aria-pressed":r,onClick:c=>{c.stopPropagation(),n(e)},children:v.jsx("span",{"aria-hidden":"true",children:r?"★":"☆"})})]})}const p7="M4,3 h40 v18 h-40 Z M4,3 v4 M8,3 h6",D4={labelKey:"shape.group",seed:{type:"group"},preview:p7},T4={square:"M2,2 h44 v20 h-44 Z",round:"M8,2 h32 a6,6 0 0 1 6,6 v8 a6,6 0 0 1 -6,6 h-32 a6,6 0 0 1 -6,-6 v-8 a6,6 0 0 1 6,-6",stadium:"M12,2 h24 a10,10 0 0 1 0,20 h-24 a10,10 0 0 1 0,-20",subroutine:"M2,2 h44 v20 h-44 Z M7,2 v20 M41,2 v20",cylinder:"M2,6 a22,4 0 0 1 44,0 v12 a22,4 0 0 1 -44,0 Z M2,6 a22,4 0 0 0 44,0",circle:"M24,2 a10,10 0 1 1 0,20 a10,10 0 1 1 0,-20",doublecircle:"M24,2 a10,10 0 1 1 0,20 a10,10 0 1 1 0,-20 M24,5 a7,7 0 1 1 0,14 a7,7 0 1 1 0,-14",diamond:"M24,1 L46,12 L24,23 L2,12 Z",hexagon:"M10,2 h28 l8,10 l-8,10 h-28 l-8,-10 Z",odd:"M2,12 L10,2 h36 v20 h-36 Z",trapezoid:"M10,2 h28 l8,20 h-44 Z",inv_trapezoid:"M2,2 h44 l-8,20 h-28 Z",lean_right:"M9,2 h37 l-7,20 h-37 Z",lean_left:"M2,2 h37 l7,20 h-37 Z"},m7=[{labelKey:"item.state",seed:{type:"state",stateType:"normal"},preview:T4.round},{labelKey:"item.start",seed:{type:"state",stateType:"start"},preview:"M24,4 a8,8 0 1 1 0,16 a8,8 0 1 1 0,-16 Z"},{labelKey:"item.end",seed:{type:"state",stateType:"end"},preview:"M24,2 a10,10 0 1 1 0,20 a10,10 0 1 1 0,-20 M24,7 a5,5 0 1 1 0,10 a5,5 0 1 1 0,-10 Z"},{labelKey:"item.choice",seed:{type:"state",stateType:"choice"},preview:"M24,1 L46,12 L24,23 L2,12 Z"},{labelKey:"item.forkJoin",seed:{type:"state",stateType:"fork"},preview:"M6,9 h36 v6 h-36 Z"}],g7=[{labelKey:"item.entity",seed:{type:"entity"},preview:"M2,2 h44 v20 h-44 Z M2,10 h44"}],y7=[{labelKey:"item.class",seed:{type:"class"},preview:"M2,2 h44 v20 h-44 Z M2,9 h44 M2,16 h44"},{labelKey:"item.note",seed:{type:"note"},preview:"M4,2 h32 l8,8 v12 h-40 Z M36,2 v8 h8"}],w7=[{labelKey:"item.person",seed:{type:"c4",c4Shape:"person"},preview:"M24,3 a4,4 0 1 1 0,8 a4,4 0 1 1 0,-8 M14,22 v-3 a10,7 0 0 1 20,0 v3"},{labelKey:"item.system",seed:{type:"c4",c4Shape:"system"},preview:"M4,4 h40 v16 h-40 Z"},{labelKey:"item.systemExt",seed:{type:"c4",c4Shape:"external_system"},preview:"M4,4 h40 v16 h-40 Z M8,8 h6"},{labelKey:"item.systemDb",seed:{type:"c4",c4Shape:"system_db"},preview:"M6,7 a18,4 0 0 1 36,0 v10 a18,4 0 0 1 -36,0 Z"},{labelKey:"item.container",seed:{type:"c4",c4Shape:"container"},preview:"M6,4 h36 a4,4 0 0 1 4,4 v8 a4,4 0 0 1 -4,4 h-36 a4,4 0 0 1 -4,-4 v-8 a4,4 0 0 1 4,-4"},{labelKey:"item.component",seed:{type:"c4",c4Shape:"component"},preview:"M8,4 h36 v16 h-36 Z M4,8 h8 M4,14 h8"}],$7=[{labelKey:"item.participant",seed:{type:"participant",ptype:"participant"},preview:"M6,2 h36 v12 h-36 Z M24,14 v8"},{labelKey:"item.actor",seed:{type:"participant",ptype:"actor"},preview:"M24,2 a4,4 0 1 1 0,8 a4,4 0 1 1 0,-8 M24,10 v6 M16,13 h16 M24,16 l-6,6 M24,16 l6,6"},{labelKey:"item.note",seed:{type:"seqnote"},preview:"M4,2 h32 l8,8 v12 h-40 Z M36,2 v8 h8"},{labelKey:"item.loop",seed:{type:"seqblock",op:"loop"},preview:"M2,2 h44 v20 h-44 Z M2,9 h16 M2,2 v7"},{labelKey:"item.altElse",seed:{type:"seqblock",op:"alt"},preview:"M2,2 h44 v20 h-44 Z M2,9 h14 M2,13 h44"},{labelKey:"item.opt",seed:{type:"seqblock",op:"opt"},preview:"M2,2 h44 v20 h-44 Z M2,9 h12"}];function N4({item:e}){const t=E4(),n=_e(),i=n(e.labelKey);return v.jsxs("button",{type:"button",className:"palette-item",title:n("palette.add",{name:i}),draggable:!0,onClick:()=>t(e.seed),onDragStart:s=>{s.dataTransfer.setData("application/x-graph-node",JSON.stringify(e.seed)),s.dataTransfer.effectAllowed="move"},children:[v.jsx("svg",{width:48,height:24,viewBox:"0 0 48 24","aria-hidden":"true",children:v.jsx("path",{d:e.preview,className:"palette-shape"})}),v.jsx("span",{children:i})]})}const I1=[{label:"AWS",prefixes:["aws"]},{label:"Google",prefixes:["google","gcp","firebase"]},{label:"Azure",prefixes:["azure","microsoft"],collections:["logos","devicon","simple-icons"]},{label:"Generic",collections:["carbon","tabler"],prefixes:["bare-metal-server","load-balancer","firewall","gateway","server","data-base","database","user-multiple","user","devices","mobile","browser","network","queue","api","cloud","shield","mail","lock","world","router"]},{label:"Data",prefixes:["postgresql","mysql","mariadb","mongodb","redis","elastic","kafka","rabbitmq","cassandra","snowflake","sqlite","clickhouse","influxdb","neo4j"]},{label:"DevOps",prefixes:["kubernetes","docker","terraform","ansible","jenkins","github","gitlab","argo","prometheus","grafana","nginx","helm","vault","consul","istio"]}],x7=["logos:aws","logos:aws-lambda","logos:aws-s3","logos:aws-rds","logos:aws-ec2","logos:aws-dynamodb","logos:aws-sqs","logos:aws-api-gateway","logos:microsoft-azure","logos:google-cloud","logos:kubernetes","logos:docker-icon","logos:postgresql","logos:mysql","logos:redis","logos:kafka-icon","logos:nginx","logos:rabbitmq-icon"];function b7(){const[e,t]=L.useState(""),[n,i]=L.useState(null),[s,r]=L.useState([]);L.useEffect(()=>{let m=!0;const g=e.trim(),y=setTimeout(()=>{if(!m)return;if(!g&&!n){r([]);return}(g?o7(g):(async()=>{const b=I1.find(O=>O.label===n),S=[];for(const O of b.collections??a7)if(S.push(...await l7(O,b.prefixes,48)),S.length>=144)break;return S.slice(0,144)})()).then(b=>{m&&r(b)})},200);return()=>{m=!1,clearTimeout(y)}},[e,n]);const l=_e(),c=e.trim()||n?s:x7,u=Jl(m=>m.favorites),f=Jl(m=>m.recents),p=[...u,...f.filter(m=>!u.includes(m))];return v.jsxs("aside",{className:"palette palette-arch","aria-label":l("palette.architecture"),children:[v.jsx("div",{className:"panel-title",children:l("palette.sectionBase")}),v.jsxs("div",{className:"palette-grid",children:[c7.map(m=>v.jsxs("div",{className:"palette-item",title:m,draggable:!0,onDragStart:g=>{g.dataTransfer.setData("application/x-graph-node",JSON.stringify({type:"service",icon:m}))},children:[v.jsx("span",{className:"palette-icon-slot",children:v.jsx(gw,{name:m,size:22})}),v.jsx("span",{children:m})]},m)),v.jsxs("div",{className:"palette-item",title:"junction",draggable:!0,onDragStart:m=>{m.dataTransfer.setData("application/x-graph-node",JSON.stringify({type:"junction"}))},children:[v.jsx("span",{className:"palette-icon-slot",children:v.jsx("span",{className:"junction-preview"})}),v.jsx("span",{children:l("item.junction")})]}),v.jsx(N4,{item:D4})]}),p.length>0&&v.jsxs(v.Fragment,{children:[v.jsx("div",{className:"panel-title",children:l("palette.sectionPinned")}),v.jsx("div",{className:"icon-grid pinned",children:p.map(m=>v.jsx(U1,{name:m},m))})]}),v.jsx("div",{className:"panel-title",children:l("palette.sectionVendor")}),v.jsx("input",{className:"icon-search",placeholder:l("palette.searchIcons"),"aria-label":l("palette.search"),value:e,onChange:m=>t(m.target.value)}),v.jsx("div",{className:"chip-row",children:I1.map(m=>v.jsx("button",{className:`chip${n===m.label&&!e.trim()?" active":""}`,onClick:()=>{t(""),i(n===m.label?null:m.label)},children:m.label},m.label))}),v.jsxs("div",{className:"icon-grid",children:[c.map(m=>v.jsx(U1,{name:m},m)),e.trim()&&c.length===0&&v.jsx("div",{className:"palette-hint",children:l("palette.noIcons")})]})]})}function v7(){const e=pt(l=>l.kind),t=pt(l=>l.unsupported),n=_e();if(t)return v.jsxs("aside",{className:"palette","aria-label":n("palette.shapes"),children:[v.jsx("div",{className:"panel-title",children:n("palette.sectionShapes")}),v.jsx("div",{className:"palette-hint",children:n("unsupported.paletteHint")})]});if(e==="architecture")return v.jsx(b7,{});const i=e==="flowchart"?fw.map(l=>({labelKey:`shape.${l}`,seed:{type:"shape",shape:l},preview:T4[l]})):e==="state"?m7:e==="er"?g7:e==="class"?y7:e==="c4"?w7:$7,s=e==="flowchart"?"item.subgraph":e==="state"?"item.compositeState":e==="c4"?"item.boundary":e==="class"?"item.namespace":null,r=s?[...i,{...D4,labelKey:s}]:i;return v.jsxs("aside",{className:"palette","aria-label":n("palette.shapes"),children:[v.jsx("div",{className:"panel-title",children:n("palette.sectionShapes")}),v.jsx("div",{className:"palette-hint",children:n("palette.hint")}),v.jsx("div",{className:"palette-grid",children:r.map(l=>v.jsx(N4,{item:l},l.labelKey))})]})}const S7={flowchart:{type:"shape",shape:"square"},state:{type:"state",stateType:"normal"},er:{type:"entity"},class:{type:"class"},sequence:{type:"participant",ptype:"participant"},architecture:{type:"service",icon:"server"},c4:{type:"c4",c4Shape:"system"}};function e0(){requestAnimationFrame(()=>{var e;return(e=document.getElementById("inspector-label"))==null?void 0:e.focus()})}function O7({menu:e,onClose:t}){const{screenToFlowPosition:n}=ua(),i=L.useRef(null),s=L.useRef(null),r=_e();L.useEffect(()=>{var g;const m=document.activeElement;return(g=s.current)==null||g.focus(),()=>{var y;return(y=m==null?void 0:m.focus)==null?void 0:y.call(m)}},[]),L.useEffect(()=>{const m=y=>{var $;($=i.current)!=null&&$.contains(y.target)||t()},g=y=>{y.key==="Escape"&&t()};return window.addEventListener("mousedown",m,!0),window.addEventListener("wheel",m,!0),window.addEventListener("keydown",g,!0),()=>{window.removeEventListener("mousedown",m,!0),window.removeEventListener("wheel",m,!0),window.removeEventListener("keydown",g,!0)}},[t]);const l=pt.getState(),c=e.target==="node"?l.nodes.find(m=>m.id===e.id):void 0,u=m=>()=>{m(),t()},f=[];if(e.target==="node"&&c)je(c)?f.push({label:r("menu.rename"),action:u(()=>e0())},{label:r("menu.ungroup"),action:u(()=>l.ungroupSelection())},{label:r("menu.deleteGroup"),danger:!0,action:u(()=>l.deleteElement(c.id,"node"))}):(f.push({label:r("menu.rename"),action:u(()=>e0())},{label:r("menu.duplicate"),action:u(()=>l.duplicateNode(c.id))},{label:r("menu.copy"),action:u(()=>l.copySelection())}),c.parentId&&f.push({label:r("menu.removeFromGroup"),action:u(()=>l.removeFromGroup(c.id))}),f.push({label:r("menu.delete"),danger:!0,action:u(()=>l.deleteElement(c.id,"node"))}));else if(e.target==="selection"){const m=l.nodes.filter(y=>y.selected).length;(l.kind==="flowchart"||l.kind==="state"||l.kind==="architecture"||l.kind==="c4")&&f.push({label:r("menu.groupNodes",{count:m}),action:u(()=>l.groupSelection())}),f.push({label:r("menu.copy"),action:u(()=>l.copySelection())},{label:r("menu.duplicate"),action:u(()=>{l.copySelection(),l.pasteClipboard()})},{label:r("menu.deleteSelection"),danger:!0,action:u(()=>l.deleteSelection())})}else if(e.target==="edge"&&e.id){const m=e.id;f.push({label:r("menu.editLabel"),action:u(()=>e0())},{label:r("menu.delete"),danger:!0,action:u(()=>l.deleteElement(m,"edge"))})}else f.push({label:r("menu.addNodeHere"),action:u(()=>l.addNode(S7[l.kind],n({x:e.x,y:e.y})))},{label:r("menu.paste"),action:u(()=>l.pasteClipboard())},{label:r("menu.autoLayout"),action:u(()=>void l.runAutoLayout())});const p=m=>{var S;if(!["ArrowDown","ArrowUp","Home","End"].includes(m.key))return;m.preventDefault();const y=[...((S=i.current)==null?void 0:S.querySelectorAll("button"))??[]];if(y.length===0)return;const $=y.indexOf(document.activeElement),b=m.key==="Home"?0:m.key==="End"?y.length-1:m.key==="ArrowDown"?($+1)%y.length:($-1+y.length)%y.length;y[b].focus()};return v.jsx("div",{ref:i,className:"context-menu",style:{left:e.x,top:e.y},role:"menu","aria-label":r("menu.actions"),tabIndex:-1,onKeyDown:p,children:f.map((m,g)=>v.jsx("button",{className:`context-item${m.danger?" danger":""}`,role:"menuitem",ref:g===0?s:void 0,onClick:m.action,children:m.label},m.label))})}function k7(e,t,n){const i={className:"shape-fill",vectorEffect:"non-scaling-stroke"};switch(e){case"round":return v.jsx("rect",{x:1,y:1,width:t-2,height:n-2,rx:8,...i});case"stadium":return v.jsx("rect",{x:1,y:1,width:t-2,height:n-2,rx:(n-2)/2,...i});case"subroutine":return v.jsxs("g",{children:[v.jsx("rect",{x:1,y:1,width:t-2,height:n-2,...i}),v.jsx("line",{x1:9,y1:1,x2:9,y2:n-1,className:"shape-line"}),v.jsx("line",{x1:t-9,y1:1,x2:t-9,y2:n-1,className:"shape-line"})]});case"cylinder":return v.jsxs("g",{children:[v.jsx("path",{d:`M1 8 A ${(t-2)/2} 8 0 0 1 ${t-1} 8 L ${t-1} ${n-8} A ${(t-2)/2} 8 0 0 1 1 ${n-8} Z`,...i}),v.jsx("path",{d:`M1 8 A ${(t-2)/2} 8 0 0 0 ${t-1} 8`,className:"shape-line",fill:"none"})]});case"circle":return v.jsx("ellipse",{cx:t/2,cy:n/2,rx:t/2-1,ry:n/2-1,...i});case"doublecircle":return v.jsxs("g",{children:[v.jsx("ellipse",{cx:t/2,cy:n/2,rx:t/2-1,ry:n/2-1,...i}),v.jsx("ellipse",{cx:t/2,cy:n/2,rx:t/2-6,ry:n/2-6,className:"shape-line",fill:"none"})]});case"diamond":return v.jsx("polygon",{points:`${t/2},1 ${t-1},${n/2} ${t/2},${n-1} 1,${n/2}`,...i});case"hexagon":{const s=Math.min(n/2,t*.18);return v.jsx("polygon",{points:`${s},1 ${t-s},1 ${t-1},${n/2} ${t-s},${n-1} ${s},${n-1} 1,${n/2}`,...i})}case"odd":return v.jsx("polygon",{points:`1,${n/2} 14,1 ${t-1},1 ${t-1},${n-1} 14,${n-1}`,...i});case"trapezoid":return v.jsx("polygon",{points:`${t*.18},1 ${t*.82},1 ${t-1},${n-1} 1,${n-1}`,...i});case"inv_trapezoid":return v.jsx("polygon",{points:`1,1 ${t-1},1 ${t*.82},${n-1} ${t*.18},${n-1}`,...i});case"lean_right":return v.jsx("polygon",{points:`${t*.15},1 ${t-1},1 ${t*.85},${n-1} 1,${n-1}`,...i});case"lean_left":return v.jsx("polygon",{points:`1,1 ${t*.85},1 ${t-1},${n-1} ${t*.15},${n-1}`,...i});case"square":return v.jsx("rect",{x:1,y:1,width:t-2,height:n-2,...i})}}function Xd(e){switch(e){case"LR":return{target:$t.Left,source:$t.Right};case"RL":return{target:$t.Right,source:$t.Left};case"BT":return{target:$t.Bottom,source:$t.Top};default:return{target:$t.Top,source:$t.Bottom}}}function C7(e){const t={};for(const n of e){const i=n.indexOf(":");if(i<0)continue;const s=n.slice(0,i).trim(),r=n.slice(i+1).trim();s==="fill"?t.fill=r:s==="stroke"?t.stroke=r:s==="color"?t.color=r:s==="stroke-width"?t.strokeWidth=r:s==="stroke-dasharray"&&(t.strokeDasharray=r)}return t}function E7({id:e,data:t,selected:n}){const i=pt(b=>b.updateNodeData),s=pt(b=>b.classDefs),[r,l]=L.useState(!1),[c,u]=L.useState(""),{width:f,height:p}=Kk(t.shape),{target:m,source:g}=Xd(t.direction),y=C7([...(t.classes??[]).flatMap(b=>s[b]??[]),...t.styles??[]]),$=()=>{l(!1);const b=c.trim();b&&b!==t.label&&i(e,{label:b})};return v.jsxs("div",{className:`shape-node${n?" selected":""}`,style:{width:f,height:p},onDoubleClick:b=>{b.stopPropagation(),u(t.label),l(!0)},children:[v.jsx("svg",{width:f,height:p,className:"shape-svg",style:{...y.fill?{"--custom-fill":y.fill}:{},...y.stroke?{"--custom-stroke":y.stroke}:{}},children:k7(t.shape,f,p)}),r?v.jsx("input",{className:"shape-label-input nodrag",value:c,autoFocus:!0,onChange:b=>u(b.target.value),onBlur:$,onKeyDown:b=>{b.key==="Enter"&&$(),b.key==="Escape"&&l(!1)}}):v.jsx("div",{className:"shape-label",style:y.color?{color:y.color}:void 0,children:t.label}),v.jsx(ae,{type:"target",position:m}),v.jsx(ae,{type:"source",position:g})]})}function D7({id:e,data:t,selected:n}){const i=pt(r=>r.onNodeDragStop),s=pt(r=>r.setNodeSize);return v.jsxs("div",{className:`group-node${n?" selected":""}`,children:[v.jsx(S8,{isVisible:n,minWidth:140,minHeight:100,onResize:(r,l)=>s(e,l.width,l.height,l.x,l.y),onResizeEnd:()=>i()}),v.jsx("div",{className:"group-title",children:t.label}),v.jsx(ae,{type:"target",position:$t.Top}),v.jsx(ae,{type:"source",position:$t.Bottom})]})}function T7({data:e,selected:t}){const{target:n,source:i}=Xd(e.direction);return e.stateType==="choice"?v.jsxs("div",{className:`choice-state${t?" selected":""}`,children:[v.jsx(ae,{type:"target",position:n}),v.jsx(ae,{type:"source",position:i})]}):e.stateType==="fork"||e.stateType==="join"?v.jsxs("div",{className:`forkjoin-state${t?" selected":""}`,children:[v.jsx(ae,{type:"target",position:n}),v.jsx(ae,{type:"source",position:i})]}):e.stateType!=="normal"?v.jsxs("div",{className:`pseudo-state ${e.stateType}${t?" selected":""}`,children:[e.stateType==="end"&&v.jsx("div",{className:"pseudo-inner"}),v.jsx(ae,{type:"target",position:n}),v.jsx(ae,{type:"source",position:i})]}):v.jsxs("div",{className:`state-node${t?" selected":""}`,children:[e.label,v.jsx(ae,{type:"target",position:n}),v.jsx(ae,{type:"source",position:i})]})}function N7({data:e,selected:t}){const{target:n,source:i}=Xd(e.direction);return v.jsxs("div",{className:`table-node${t?" selected":""}`,children:[v.jsx("div",{className:"table-title",children:e.label}),e.attributes.length>0&&v.jsx("div",{className:"table-rows",children:e.attributes.map((s,r)=>v.jsxs("div",{className:"table-row",children:[v.jsx("span",{className:"dim",children:s.type}),v.jsx("span",{children:s.name}),v.jsx("span",{className:"keys",children:s.keys.join(",")})]},r))}),v.jsx(ae,{type:"target",position:n}),v.jsx(ae,{type:"source",position:i})]})}function j7({data:e,selected:t}){const{target:n,source:i}=Xd(e.direction);return v.jsxs("div",{className:`table-node${t?" selected":""}`,children:[v.jsxs("div",{className:"table-title",children:[(e.annotations??[]).map(s=>v.jsxs("div",{className:"class-annotation",children:["«",s,"»"]},s)),e.label,e.generic?`<${e.generic}>`:""]}),e.members.length>0&&v.jsx("div",{className:"table-rows",children:e.members.map((s,r)=>v.jsx("div",{className:"table-row mono",children:s},r))}),e.methods.length>0&&v.jsx("div",{className:"table-rows",children:e.methods.map((s,r)=>v.jsx("div",{className:"table-row mono",children:s},r))}),v.jsx(ae,{type:"target",position:n}),v.jsx(ae,{type:"source",position:i})]})}function R7(){const e=Wi(i=>i.resolved),{stroke:t,hollowFill:n}=e==="light"?{stroke:"#5f6673",hollowFill:"#ffffff"}:{stroke:"#8b91a3",hollowFill:"#12141a"};return v.jsx("svg",{style:{position:"absolute",width:0,height:0},children:v.jsxs("defs",{children:[v.jsx("marker",{id:"cls-extension",viewBox:"0 0 14 14",refX:"12",refY:"7",markerWidth:"14",markerHeight:"14",orient:"auto-start-reverse",children:v.jsx("path",{d:"M1,1 L12,7 L1,13 Z",fill:n,stroke:t,strokeWidth:"1.2"})}),v.jsx("marker",{id:"cls-composition",viewBox:"0 0 16 12",refX:"14",refY:"6",markerWidth:"16",markerHeight:"12",orient:"auto-start-reverse",children:v.jsx("path",{d:"M1,6 L8,1 L15,6 L8,11 Z",fill:t,stroke:t,strokeWidth:"1"})}),v.jsx("marker",{id:"cls-aggregation",viewBox:"0 0 16 12",refX:"14",refY:"6",markerWidth:"16",markerHeight:"12",orient:"auto-start-reverse",children:v.jsx("path",{d:"M1,6 L8,1 L15,6 L8,11 Z",fill:n,stroke:t,strokeWidth:"1.2"})}),v.jsx("marker",{id:"cls-dependency",viewBox:"0 0 12 12",refX:"10",refY:"6",markerWidth:"12",markerHeight:"12",orient:"auto-start-reverse",children:v.jsx("path",{d:"M2,1 L10,6 L2,11",fill:"none",stroke:t,strokeWidth:"1.4"})}),v.jsx("marker",{id:"seq-arrow",viewBox:"0 0 12 12",refX:"10",refY:"6",markerWidth:"12",markerHeight:"12",orient:"auto-start-reverse",children:v.jsx("path",{d:"M1,1 L11,6 L1,11 Z",fill:t})}),v.jsx("marker",{id:"seq-open",viewBox:"0 0 12 12",refX:"10",refY:"6",markerWidth:"12",markerHeight:"12",orient:"auto-start-reverse",children:v.jsx("path",{d:"M2,1 L10,6 L2,11",fill:"none",stroke:t,strokeWidth:"1.4"})}),v.jsx("marker",{id:"seq-cross",viewBox:"0 0 12 12",refX:"9",refY:"6",markerWidth:"12",markerHeight:"12",orient:"auto-start-reverse",children:v.jsx("path",{d:"M3,2 L11,10 M11,2 L3,10",fill:"none",stroke:t,strokeWidth:"1.5"})}),v.jsx("marker",{id:"er-one",viewBox:"0 0 12 12",refX:"10",refY:"6",markerWidth:"12",markerHeight:"12",orient:"auto-start-reverse",children:v.jsx("path",{d:"M5,1 L5,11",fill:"none",stroke:t,strokeWidth:"1.5"})}),v.jsxs("marker",{id:"er-zero-one",viewBox:"0 0 16 12",refX:"14",refY:"6",markerWidth:"16",markerHeight:"12",orient:"auto-start-reverse",children:[v.jsx("circle",{cx:"4",cy:"6",r:"3",fill:"none",stroke:t,strokeWidth:"1.2"}),v.jsx("path",{d:"M10,1 L10,11",fill:"none",stroke:t,strokeWidth:"1.5"})]}),v.jsxs("marker",{id:"er-zero-more",viewBox:"0 0 18 12",refX:"16",refY:"6",markerWidth:"18",markerHeight:"12",orient:"auto-start-reverse",children:[v.jsx("circle",{cx:"4",cy:"6",r:"3",fill:"none",stroke:t,strokeWidth:"1.2"}),v.jsx("path",{d:"M9,6 L17,1 M9,6 L17,6 M9,6 L17,11",fill:"none",stroke:t,strokeWidth:"1.2"})]}),v.jsxs("marker",{id:"er-one-more",viewBox:"0 0 18 12",refX:"16",refY:"6",markerWidth:"18",markerHeight:"12",orient:"auto-start-reverse",children:[v.jsx("path",{d:"M4,1 L4,11",fill:"none",stroke:t,strokeWidth:"1.5"}),v.jsx("path",{d:"M8,6 L17,1 M8,6 L17,6 M8,6 L17,11",fill:"none",stroke:t,strokeWidth:"1.2"})]})]})})}function _7({data:e,selected:t}){const n=pt(s=>s.seqItems.length||s.edges.length),i=Ud-$H+n*Wc+30;return v.jsxs("div",{className:"participant-node",children:[v.jsxs("div",{className:`participant-head ${e.ptype}${t?" selected":""}`,children:[e.ptype==="actor"&&v.jsx("span",{className:"actor-icon",children:"☺"}),e.label]}),v.jsx("div",{className:"lifeline",style:{height:i}}),v.jsx(ae,{type:"source",position:$t.Bottom})]})}function M7({id:e,sourceX:t,targetX:n,style:i,markerEnd:s,selected:r}){const l=pt(E=>{const k=E.seqItems.findIndex(D=>D.kind==="message"&&D.edgeId===e);return k>=0?k:E.edges.findIndex(D=>D.id===e)}),c=pt(E=>{var k,D;return((D=(k=E.edges.find(_=>_.id===e))==null?void 0:k.data)==null?void 0:D.label)??""}),u=pt(E=>E.moveMessage),[f,p]=L.useState(null),m=L.useRef(0),g=L.useRef(1),y=Ud+l*Wc+(f??0),$=Math.abs(t-n)<1,b=$?`M ${t} ${y-8} h 46 v 20 h -46`:`M ${t} ${y} L ${n} ${y}`,S=$?t+54:(t+n)/2,O=$?y+2:y-12;return v.jsxs(v.Fragment,{children:[v.jsx(ha,{id:e,path:b,style:{...i,...r?{stroke:"var(--accent, #5b8def)"}:{}},markerEnd:s,interactionWidth:16}),v.jsx(Uk,{children:v.jsx("div",{className:`message-label draggable${r?" selected":""}${f!==null?" dragging":""}`,style:{transform:`translate(-50%, -50%) translate(${S}px, ${O}px)`},title:me("seq.dragReorder"),onPointerDown:E=>{E.stopPropagation(),E.preventDefault(),E.target.setPointerCapture(E.pointerId),m.current=E.clientY;const k=document.querySelector(".react-flow__viewport"),D=k==null?void 0:k.style.transform.match(/scale\(([\d.]+)\)/);g.current=D?Number(D[1]):1,p(0)},onPointerMove:E=>{f!==null&&p((E.clientY-m.current)/g.current)},onPointerUp:E=>{if(f===null)return;E.target.releasePointerCapture(E.pointerId);const k=Math.round(f/Wc);p(null),k!==0&&u(e,k)},children:c})})]})}function A7({id:e,sourceX:t,sourceY:n,targetX:i,targetY:s,style:r,markerEnd:l,markerStart:c,label:u,selected:f,data:p}){const m=p==null?void 0:p.par,g=i-t,y=s-n,$=Math.hypot(g,y)||1,b=-y/$,S=g/$,O=m&&m.n>1?(m.i-(m.n-1)/2)*(m.s??1):0,E=O*14,k=t+b*E,D=n+S*E,_=i+b*E,A=s+S*E,H=O*28,Y=(k+_)/2+b*(H-E)*2,W=(D+A)/2+S*(H-E)*2,nt=`M ${k} ${D} Q ${Y} ${W} ${_} ${A}`,U=(t+i)/2+b*H,P=(n+s)/2+S*H,F=n4();return v.jsxs(v.Fragment,{children:[v.jsx(ha,{id:e,path:nt,style:r,markerEnd:l,markerStart:c,interactionWidth:14}),u!=null&&u!==""&&v.jsx(Uk,{children:v.jsx("div",{className:"parallel-label",style:{transform:`translate(-50%, -50%) translate(${U}px, ${P}px)`,background:F.labelBg,color:f?void 0:F.labelFill},children:String(u)})})]})}function H7({data:e,selected:t}){return v.jsxs("div",{className:`note-node${t?" selected":""}`,children:[e.text,e.target&&v.jsxs("div",{className:"note-target",children:["→ ",e.target]}),v.jsx(ae,{type:"source",position:$t.Bottom})]})}function z7({editing:e,onClose:t,actors:n}){const i=pt(u=>u.seqItems[e.index]),s=pt(u=>u.updateSeqItem),r=pt(u=>u.removeSeqItem),l=L.useRef(null);if(L.useEffect(()=>{const u=p=>{var m;(m=l.current)!=null&&m.contains(p.target)||t()},f=p=>{p.key==="Escape"&&t()};return window.addEventListener("pointerdown",u,!0),window.addEventListener("keydown",f,!0),()=>{window.removeEventListener("pointerdown",u,!0),window.removeEventListener("keydown",f,!0)}},[t]),!i)return null;const c=i.kind==="note"||i.kind==="block"||i.kind==="divider";return v.jsxs("div",{ref:l,className:"seq-editor",style:{left:Math.min(e.x,window.innerWidth-240),top:e.y+10},children:[c&&v.jsx("input",{autoFocus:!0,defaultValue:i.kind==="note"?i.text:i.label,placeholder:i.kind==="note"?me("seq.notePlaceholder"):me("insp.label"),onBlur:u=>{const f=u.target.value;s(e.index,i.kind==="note"?{...i,text:f}:{...i,label:f})},onKeyDown:u=>{u.key==="Enter"&&u.target.blur()}},e.index),i.kind==="note"&&v.jsxs("div",{className:"seq-editor-row",children:[v.jsxs("select",{value:i.placement,onChange:u=>s(e.index,{...i,placement:u.target.value}),children:[v.jsx("option",{value:"over",children:me("seq.over")}),v.jsx("option",{value:"left",children:me("seq.leftOf")}),v.jsx("option",{value:"right",children:me("seq.rightOf")})]}),v.jsx("select",{value:i.a,onChange:u=>s(e.index,{...i,a:u.target.value}),children:n.map(u=>v.jsx("option",{value:u,children:u},u))})]}),v.jsxs("div",{className:"seq-editor-actions",children:[v.jsx("button",{className:"danger",onClick:()=>{t(),r(e.index)},children:me("seq.delete")}),v.jsx("button",{onClick:t,children:me("seq.done")})]})]})}function B7(){var g;const e=pt(y=>y.seqItems),t=pt(y=>y.nodes),[n,i]=L.useState(null),s=new Map,r=[];let l=1/0,c=-1/0;for(const y of t){if(y.type!=="participant")continue;const $=((g=y.measured)==null?void 0:g.width)??Yl(y).width,b=y.position.x+$/2;s.set(y.id,b),r.push(y.id),l=Math.min(l,b),c=Math.max(c,b)}if(!s.size)return null;const u=y=>Ud+y*Wc,f=y=>$=>{$.stopPropagation(),i({index:y,x:$.clientX,y:$.clientY})},p=[],m=[];return e.forEach((y,$)=>{if(y.kind==="note"){const b=s.get(y.a)??l,S=y.b?s.get(y.b)??b:b,O=y.placement==="over"?Math.max(150,Math.abs(S-b)+20):170,E=y.placement==="left"?b-O-20:y.placement==="right"?b+20:(b+S)/2-O/2;p.push(v.jsx("button",{type:"button",className:"seq-note clickable",style:{left:E,top:u($)-14,width:O},title:me("menu.editLabel"),onClick:f($),children:y.text},`note-${$}`))}else if(y.kind==="block")m.push({start:$,op:y.op,label:y.label});else if(y.kind==="divider")p.push(v.jsx("div",{className:"seq-divider",style:{left:l-50,top:u($),width:c-l+100},children:v.jsxs("button",{type:"button",className:"clickable",title:me("menu.editLabel"),onClick:f($),children:[y.op," ",y.label]})},`div-${$}`));else if(y.kind==="end"){const b=m.pop();b&&p.push(v.jsx("div",{className:"seq-block",style:{left:l-60,top:u(b.start)-6,width:c-l+120,height:u($)-u(b.start)+12},children:v.jsxs("button",{type:"button",className:"seq-block-tag clickable",title:me("menu.editLabel"),onClick:f(b.start),children:[b.op,b.label?` [${b.label}]`:""]})},`blk-${b.start}`))}else if(y.kind==="active"){const b=s.get(y.actor);b!==void 0&&p.push(v.jsxs("div",{className:"seq-active",style:{left:b+8,top:u($)-8},children:[y.on?"activate":"deactivate"," ",y.actor]},`act-${$}`))}}),v.jsxs(v.Fragment,{children:[v.jsx(UA,{children:p}),n&&v.jsx(z7,{editing:n,actors:r,onClose:()=>i(null)})]})}function Y7(){const e=document.activeElement;if(!(e instanceof HTMLElement))return;const t=e.closest(".react-flow__node");return t==null?void 0:t.dataset.id}function G7(e){const t=e;return t!=null&&t.tagName?t.tagName==="INPUT"||t.tagName==="TEXTAREA"||t.isContentEditable:!1}function L7(){const e=pt(r=>r.onConnect),[t,n]=L.useState(null),[i,s]=L.useState("");return L.useEffect(()=>{const r=c=>{var p;const u=pt.getState().nodes.find(m=>m.id===c),f=(p=u==null?void 0:u.data)==null?void 0:p.label;return typeof f=="string"&&f?f:c},l=c=>{if(G7(c.target))return;if(c.key==="Escape"&&t){n(null),s(me("canvas.connectCancelled"));return}const u=Y7();if(u){if(!t&&c.key.toLowerCase()==="c"&&!c.ctrlKey&&!c.metaKey&&!c.altKey){c.preventDefault(),n(u),s(me("canvas.connectStart",{name:r(u)}));return}if(t&&c.key==="Enter"){if(c.preventDefault(),u===t){s(me("canvas.connectSameNode"));return}e({source:t,target:u,sourceHandle:null,targetHandle:null}),s(me("canvas.connectDone",{from:r(t),to:r(u)})),n(null)}}};return window.addEventListener("keydown",l),()=>window.removeEventListener("keydown",l)},[t,e]),{source:t,message:i}}function j4({code:e,className:t=""}){const n=L.useRef(null),i=L.useRef(0);return L.useEffect(()=>{if(!n.current)return;const r=++i.current;dw(l=>l.render(`preview-${r}`,e)).then(({svg:l})=>{r===i.current&&n.current&&(n.current.innerHTML=l)}).catch(l=>{if(r!==i.current||!n.current)return;const c=l instanceof Error?l.message:String(l);n.current.textContent="";const u=document.createElement("div");u.className="preview-error",u.textContent=me("panel.cannotRender",{message:c}),n.current.appendChild(u)})},[e]),v.jsx("div",{className:t,ref:n})}const Q7={shape:E7,group:D7,state:T7,entity:N7,class:j7,participant:_7,service:u7,junction:h7,c4:d7,note:H7},P7={message:M7,parallel:A7},q7={flowchart:{type:"shape",shape:"square"},state:{type:"state",stateType:"normal"},er:{type:"entity"},class:{type:"class"},sequence:{type:"participant",ptype:"participant"},architecture:{type:"service",icon:"server"},c4:{type:"c4",c4Shape:"system"}};function W7(){const e=pt(k=>k.nodes),t=pt(k=>k.edges),n=pt(k=>k.kind),i=pt(k=>k.onNodesChange),s=pt(k=>k.onEdgesChange),r=pt(k=>k.onConnect),l=pt(k=>k.onNodeDragStop),c=pt(k=>k.addNode),u=pt(k=>k.selectOnly),{screenToFlowPosition:f}=ua(),[p,m]=L.useState(null),g=L7(),y=pt(k=>k.unsupported),$=pt(k=>k.code),b=_e(),S=L.useRef(!1),O=L.useCallback(k=>{const D=k.dataTransfer.getData("application/x-graph-node");D&&(k.preventDefault(),c(JSON.parse(D),f({x:k.clientX,y:k.clientY})))},[c,f]),E=L.useMemo(()=>g.source?e.map(k=>k.id===g.source?{...k,className:`${k.className??""} connect-source`.trim()}:k):e,[e,g.source]);return y?v.jsxs("main",{className:"canvas-wrap read-only","aria-label":b("canvas.label"),children:[v.jsxs("div",{className:"read-only-banner",role:"status",children:[v.jsx("strong",{children:b("unsupported.title",{type:y})}),v.jsx("span",{children:b("unsupported.body")})]}),v.jsx(j4,{code:$,className:"read-only-preview"})]}):v.jsxs("main",{className:"canvas-wrap","aria-label":b("canvas.label"),onMouseDownCapture:()=>S.current=!1,children:[v.jsx(R7,{}),v.jsxs(qA,{nodes:E,edges:t,nodeTypes:Q7,edgeTypes:P7,onNodesChange:i,onEdgesChange:s,onConnect:r,onNodeDragStop:(k,D)=>l(D),onDrop:O,onDragOver:k=>{k.preventDefault(),k.dataTransfer.dropEffect="move"},onDoubleClick:k=>{k.target.classList.contains("react-flow__pane")&&c(q7[n],f({x:k.clientX,y:k.clientY}))},onEdgeDoubleClick:(k,D)=>{requestAnimationFrame(()=>{var _;return(_=document.getElementById("inspector-label"))==null?void 0:_.focus()})},onNodeDoubleClick:(k,D)=>{D.type!=="shape"&&requestAnimationFrame(()=>{var _;return(_=document.getElementById("inspector-label"))==null?void 0:_.focus()})},onNodeContextMenu:(k,D)=>{k.preventDefault();const _=e.filter(A=>A.selected).length;if(D.selected&&_>1){m({x:k.clientX,y:k.clientY,target:"selection"});return}u(D.id,"node"),m({x:k.clientX,y:k.clientY,target:"node",id:D.id})},onSelectionContextMenu:k=>{k.preventDefault(),m({x:k.clientX,y:k.clientY,target:"selection"})},onEdgeContextMenu:(k,D)=>{k.preventDefault(),u(D.id,"edge"),m({x:k.clientX,y:k.clientY,target:"edge",id:D.id})},onPaneContextMenu:k=>{k.preventDefault(),!S.current&&m({x:k.clientX,y:k.clientY,target:"pane"})},selectionOnDrag:!0,selectionMode:Vl.Partial,panOnDrag:[1,2],onMove:()=>S.current=!0,connectionMode:So.Loose,connectionRadius:38,snapToGrid:!0,snapGrid:[12,12],fitView:!0,proOptions:{hideAttribution:!0},deleteKeyCode:["Delete","Backspace"],children:[v.jsx(KA,{gap:18}),n==="sequence"&&v.jsx(B7,{}),v.jsx(r8,{}),v.jsx($8,{pannable:!0,zoomable:!0})]}),p&&v.jsx(O7,{menu:p,onClose:()=>m(null)}),v.jsx("p",{className:"visually-hidden",children:b("canvas.keyboardHelp")}),v.jsx("p",{className:"visually-hidden",role:"status","aria-atomic":"true",children:g.message})]})}let ey=[],R4=[];(()=>{let e="lc,34,7n,7,7b,19,,,,2,,2,,,20,b,1c,l,g,,2t,7,2,6,2,2,,4,z,,u,r,2j,b,1m,9,9,,o,4,,9,,3,,5,17,3,3b,f,,w,1j,,,,4,8,4,,3,7,a,2,t,,1m,,,,2,4,8,,9,,a,2,q,,2,2,1l,,4,2,4,2,2,3,3,,u,2,3,,b,2,1l,,4,5,,2,4,,k,2,m,6,,,1m,,,2,,4,8,,7,3,a,2,u,,1n,,,,c,,9,,14,,3,,1l,3,5,3,,4,7,2,b,2,t,,1m,,2,,2,,3,,5,2,7,2,b,2,s,2,1l,2,,,2,4,8,,9,,a,2,t,,20,,4,,2,3,,,8,,29,,2,7,c,8,2q,,2,9,b,6,22,2,r,,,,,,1j,e,,5,,2,5,b,,10,9,,2u,4,,6,,2,2,2,p,2,4,3,g,4,d,,2,2,6,,f,,jj,3,qa,3,t,3,t,2,u,2,1s,2,,7,8,,2,b,9,,19,3,3b,2,y,,3a,3,4,2,9,,6,3,63,2,2,,1m,,,7,,,,,2,8,6,a,2,,1c,h,1r,4,1c,7,,,5,,14,9,c,2,w,4,2,2,,3,1k,,,2,3,,,3,1m,8,2,2,48,3,,d,,7,4,,6,,3,2,5i,1m,,5,ek,,5f,x,2da,3,3x,,2o,w,fe,6,2x,2,n9w,4,,a,w,2,28,2,7k,,3,,4,,p,2,5,,47,2,q,i,d,,12,8,p,b,1a,3,1c,,2,4,2,2,13,,1v,6,2,2,2,2,c,,8,,1b,,1f,,,3,2,2,5,2,,,16,2,8,,6m,,2,,4,,fn4,,kh,g,g,g,a6,2,gt,,6a,,45,5,1ae,3,,2,5,4,14,3,4,,4l,2,fx,4,ar,2,49,b,4w,,1i,f,1k,3,1d,4,2,2,1x,3,10,5,,8,1q,,c,2,1g,9,a,4,2,,2n,3,2,,,2,6,,4g,,3,8,l,2,1l,2,,,,,m,,e,7,3,5,5f,8,2,3,,,n,,29,,2,6,,,2,,,2,,2,6j,,2,4,6,2,,2,r,2,2d,8,2,,,2,2y,,,,2,6,,,2t,3,2,4,,5,77,9,,2,6t,,a,2,,,4,,40,4,2,2,4,,w,a,14,6,2,4,8,,9,6,2,3,1a,d,,2,ba,7,,6,,,2a,m,2,7,,2,,2,3e,6,3,,,2,,7,,,20,2,3,,,,9n,2,f0b,5,1n,7,t4,,1r,4,29,,f5k,2,43q,,,3,4,5,8,8,2,7,u,4,44,3,1iz,1j,4,1e,8,,e,,m,5,,f,11s,7,,h,2,7,,2,,5,79,7,c5,4,15s,7,31,7,240,5,gx7k,2o,3k,6o".split(",").map(t=>t?parseInt(t,36):1);for(let t=0,n=0;t<e.length;t++)(t%2?R4:ey).push(n=n+e[t])})();function Z7(e){if(e<768)return!1;for(let t=0,n=ey.length;;){let i=t+n>>1;if(e<ey[i])n=i;else if(e>=R4[i])t=i+1;else return!0;if(t==n)return!1}}function F1(e){return e>=127462&&e<=127487}const V1=8205;function U7(e,t,n=!0,i=!0){return(n?_4:I7)(e,t,i)}function _4(e,t,n){if(t==e.length)return t;t&&M4(e.charCodeAt(t))&&A4(e.charCodeAt(t-1))&&t--;let i=n0(e,t);for(t+=X1(i);t<e.length;){let s=n0(e,t);if(i==V1||s==V1||n&&Z7(s))t+=X1(s),i=s;else if(F1(s)){let r=0,l=t-2;for(;l>=0&&F1(n0(e,l));)r++,l-=2;if(r%2==0)break;t+=2}else break}return t}function I7(e,t,n){for(;t>1;){let i=_4(e,t-2,n);if(i<t)return i;t--}return 0}function n0(e,t){let n=e.charCodeAt(t);if(!A4(n)||t+1==e.length)return n;let i=e.charCodeAt(t+1);return M4(i)?(n-55296<<10)+(i-56320)+65536:n}function M4(e){return e>=56320&&e<57344}function A4(e){return e>=55296&&e<56320}function X1(e){return e<65536?1:2}class Zt{lineAt(t){if(t<0||t>this.length)throw new RangeError(`Invalid position ${t} in document of length ${this.length}`);return this.lineInner(t,!1,1,0)}line(t){if(t<1||t>this.lines)throw new RangeError(`Invalid line number ${t} in ${this.lines}-line document`);return this.lineInner(t,!0,1,0)}replace(t,n,i){[t,n]=na(this,t,n);let s=[];return this.decompose(0,t,s,2),i.length&&i.decompose(0,i.length,s,3),this.decompose(n,this.length,s,1),Bi.from(s,this.length-(n-t)+i.length)}append(t){return this.replace(this.length,this.length,t)}slice(t,n=this.length){[t,n]=na(this,t,n);let i=[];return this.decompose(t,n,i,0),Bi.from(i,n-t)}eq(t){if(t==this)return!0;if(t.length!=this.length||t.lines!=this.lines)return!1;let n=this.scanIdentical(t,1),i=this.length-this.scanIdentical(t,-1),s=new jc(this),r=new jc(t);for(let l=n,c=n;;){if(s.next(l),r.next(l),l=0,s.lineBreak!=r.lineBreak||s.done!=r.done||s.value!=r.value)return!1;if(c+=s.value.length,s.done||c>=i)return!0}}iter(t=1){return new jc(this,t)}iterRange(t,n=this.length){return new H4(this,t,n)}iterLines(t,n){let i;if(t==null)i=this.iter();else{n==null&&(n=this.lines+1);let s=this.line(t).from;i=this.iterRange(s,Math.max(s,n==this.lines+1?this.length:n<=1?0:this.line(n-1).to))}return new z4(i)}toString(){return this.sliceString(0)}toJSON(){let t=[];return this.flatten(t),t}constructor(){}static of(t){if(t.length==0)throw new RangeError("A document must have at least one line");return t.length==1&&!t[0]?Zt.empty:t.length<=32?new Se(t):Bi.from(Se.split(t,[]))}}class Se extends Zt{constructor(t,n=F7(t)){super(),this.text=t,this.length=n}get lines(){return this.text.length}get children(){return null}lineInner(t,n,i,s){for(let r=0;;r++){let l=this.text[r],c=s+l.length;if((n?i:c)>=t)return new V7(s,c,i,l);s=c+1,i++}}decompose(t,n,i,s){let r=t<=0&&n>=this.length?this:new Se(K1(this.text,t,n),Math.min(n,this.length)-Math.max(0,t));if(s&1){let l=i.pop(),c=_f(r.text,l.text.slice(),0,r.length);if(c.length<=32)i.push(new Se(c,l.length+r.length));else{let u=c.length>>1;i.push(new Se(c.slice(0,u)),new Se(c.slice(u)))}}else i.push(r)}replace(t,n,i){if(!(i instanceof Se))return super.replace(t,n,i);[t,n]=na(this,t,n);let s=_f(this.text,_f(i.text,K1(this.text,0,t)),n),r=this.length+i.length-(n-t);return s.length<=32?new Se(s,r):Bi.from(Se.split(s,[]),r)}sliceString(t,n=this.length,i=`
259
+ `){[t,n]=na(this,t,n);let s="";for(let r=0,l=0;r<=n&&l<this.text.length;l++){let c=this.text[l],u=r+c.length;r>t&&l&&(s+=i),t<u&&n>r&&(s+=c.slice(Math.max(0,t-r),n-r)),r=u+1}return s}flatten(t){for(let n of this.text)t.push(n)}scanIdentical(){return 0}static split(t,n){let i=[],s=-1;for(let r of t)i.push(r),s+=r.length+1,i.length==32&&(n.push(new Se(i,s)),i=[],s=-1);return s>-1&&n.push(new Se(i,s)),n}}class Bi extends Zt{constructor(t,n){super(),this.children=t,this.length=n,this.lines=0;for(let i of t)this.lines+=i.lines}lineInner(t,n,i,s){for(let r=0;;r++){let l=this.children[r],c=s+l.length,u=i+l.lines-1;if((n?u:c)>=t)return l.lineInner(t,n,i,s);s=c+1,i=u+1}}decompose(t,n,i,s){for(let r=0,l=0;l<=n&&r<this.children.length;r++){let c=this.children[r],u=l+c.length;if(t<=u&&n>=l){let f=s&((l<=t?1:0)|(u>=n?2:0));l>=t&&u<=n&&!f?i.push(c):c.decompose(t-l,n-l,i,f)}l=u+1}}replace(t,n,i){if([t,n]=na(this,t,n),i.lines<this.lines)for(let s=0,r=0;s<this.children.length;s++){let l=this.children[s],c=r+l.length;if(t>=r&&n<=c){let u=l.replace(t-r,n-r,i),f=this.lines-l.lines+u.lines;if(u.lines<f>>4&&u.lines>f>>6){let p=this.children.slice();return p[s]=u,new Bi(p,this.length-(n-t)+i.length)}return super.replace(r,c,u)}r=c+1}return super.replace(t,n,i)}sliceString(t,n=this.length,i=`
260
+ `){[t,n]=na(this,t,n);let s="";for(let r=0,l=0;r<this.children.length&&l<=n;r++){let c=this.children[r],u=l+c.length;l>t&&r&&(s+=i),t<u&&n>l&&(s+=c.sliceString(t-l,n-l,i)),l=u+1}return s}flatten(t){for(let n of this.children)n.flatten(t)}scanIdentical(t,n){if(!(t instanceof Bi))return 0;let i=0,[s,r,l,c]=n>0?[0,0,this.children.length,t.children.length]:[this.children.length-1,t.children.length-1,-1,-1];for(;;s+=n,r+=n){if(s==l||r==c)return i;let u=this.children[s],f=t.children[r];if(u!=f)return i+u.scanIdentical(f,n);i+=u.length+1}}static from(t,n=t.reduce((i,s)=>i+s.length+1,-1)){let i=0;for(let y of t)i+=y.lines;if(i<32){let y=[];for(let $ of t)$.flatten(y);return new Se(y,n)}let s=Math.max(32,i>>5),r=s<<1,l=s>>1,c=[],u=0,f=-1,p=[];function m(y){let $;if(y.lines>r&&y instanceof Bi)for(let b of y.children)m(b);else y.lines>l&&(u>l||!u)?(g(),c.push(y)):y instanceof Se&&u&&($=p[p.length-1])instanceof Se&&y.lines+$.lines<=32?(u+=y.lines,f+=y.length+1,p[p.length-1]=new Se($.text.concat(y.text),$.length+1+y.length)):(u+y.lines>s&&g(),u+=y.lines,f+=y.length+1,p.push(y))}function g(){u!=0&&(c.push(p.length==1?p[0]:Bi.from(p,f)),f=-1,u=p.length=0)}for(let y of t)m(y);return g(),c.length==1?c[0]:new Bi(c,n)}}Zt.empty=new Se([""],0);function F7(e){let t=-1;for(let n of e)t+=n.length+1;return t}function _f(e,t,n=0,i=1e9){for(let s=0,r=0,l=!0;r<e.length&&s<=i;r++){let c=e[r],u=s+c.length;u>=n&&(u>i&&(c=c.slice(0,i-s)),s<n&&(c=c.slice(n-s)),l?(t[t.length-1]+=c,l=!1):t.push(c)),s=u+1}return t}function K1(e,t,n){return _f(e,[""],t,n)}class jc{constructor(t,n=1){this.dir=n,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[t],this.offsets=[n>0?1:(t instanceof Se?t.text.length:t.children.length)<<1]}nextInner(t,n){for(this.done=this.lineBreak=!1;;){let i=this.nodes.length-1,s=this.nodes[i],r=this.offsets[i],l=r>>1,c=s instanceof Se?s.text.length:s.children.length;if(l==(n>0?c:0)){if(i==0)return this.done=!0,this.value="",this;n>0&&this.offsets[i-1]++,this.nodes.pop(),this.offsets.pop()}else if((r&1)==(n>0?0:1)){if(this.offsets[i]+=n,t==0)return this.lineBreak=!0,this.value=`
261
+ `,this;t--}else if(s instanceof Se){let u=s.text[l+(n<0?-1:0)];if(this.offsets[i]+=n,u.length>Math.max(0,t))return this.value=t==0?u:n>0?u.slice(t):u.slice(0,u.length-t),this;t-=u.length}else{let u=s.children[l+(n<0?-1:0)];t>u.length?(t-=u.length,this.offsets[i]+=n):(n<0&&this.offsets[i]--,this.nodes.push(u),this.offsets.push(n>0?1:(u instanceof Se?u.text.length:u.children.length)<<1))}}}next(t=0){return t<0&&(this.nextInner(-t,-this.dir),t=this.value.length),this.nextInner(t,this.dir)}}class H4{constructor(t,n,i){this.value="",this.done=!1,this.cursor=new jc(t,n>i?-1:1),this.pos=n>i?t.length:0,this.from=Math.min(n,i),this.to=Math.max(n,i)}nextInner(t,n){if(n<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;t+=Math.max(0,n<0?this.pos-this.to:this.from-this.pos);let i=n<0?this.pos-this.from:this.to-this.pos;t>i&&(t=i),i-=t;let{value:s}=this.cursor.next(t);return this.pos+=(s.length+t)*n,this.value=s.length<=i?s:n<0?s.slice(s.length-i):s.slice(0,i),this.done=!this.value,this}next(t=0){return t<0?t=Math.max(t,this.from-this.pos):t>0&&(t=Math.min(t,this.to-this.pos)),this.nextInner(t,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}}class z4{constructor(t){this.inner=t,this.afterBreak=!0,this.value="",this.done=!1}next(t=0){let{done:n,lineBreak:i,value:s}=this.inner.next(t);return n&&this.afterBreak?(this.value="",this.afterBreak=!1):n?(this.done=!0,this.value=""):i?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=s,this.afterBreak=!1),this}get lineBreak(){return!1}}typeof Symbol<"u"&&(Zt.prototype[Symbol.iterator]=function(){return this.iter()},jc.prototype[Symbol.iterator]=H4.prototype[Symbol.iterator]=z4.prototype[Symbol.iterator]=function(){return this});class V7{constructor(t,n,i,s){this.from=t,this.to=n,this.number=i,this.text=s}get length(){return this.to-this.from}}function na(e,t,n){return t=Math.max(0,Math.min(e.length,t)),[t,Math.max(t,Math.min(e.length,n))]}function Ge(e,t,n=!0,i=!0){return U7(e,t,n,i)}function X7(e){return e>=56320&&e<57344}function K7(e){return e>=55296&&e<56320}function bn(e,t){let n=e.charCodeAt(t);if(!K7(n)||t+1==e.length)return n;let i=e.charCodeAt(t+1);return X7(i)?(n-55296<<10)+(i-56320)+65536:n}function ww(e){return e<=65535?String.fromCharCode(e):(e-=65536,String.fromCharCode((e>>10)+55296,(e&1023)+56320))}function Yi(e){return e<65536?1:2}const ny=/\r\n?|\n/;var an=(function(e){return e[e.Simple=0]="Simple",e[e.TrackDel=1]="TrackDel",e[e.TrackBefore=2]="TrackBefore",e[e.TrackAfter=3]="TrackAfter",e})(an||(an={}));class Zi{constructor(t){this.sections=t}get length(){let t=0;for(let n=0;n<this.sections.length;n+=2)t+=this.sections[n];return t}get newLength(){let t=0;for(let n=0;n<this.sections.length;n+=2){let i=this.sections[n+1];t+=i<0?this.sections[n]:i}return t}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(t){for(let n=0,i=0,s=0;n<this.sections.length;){let r=this.sections[n++],l=this.sections[n++];l<0?(t(i,s,r),s+=r):s+=l,i+=r}}iterChangedRanges(t,n=!1){iy(this,t,n)}get invertedDesc(){let t=[];for(let n=0;n<this.sections.length;){let i=this.sections[n++],s=this.sections[n++];s<0?t.push(i,s):t.push(s,i)}return new Zi(t)}composeDesc(t){return this.empty?t:t.empty?this:B4(this,t)}mapDesc(t,n=!1){return t.empty?this:sy(this,t,n)}mapPos(t,n=-1,i=an.Simple){let s=0,r=0;for(let l=0;l<this.sections.length;){let c=this.sections[l++],u=this.sections[l++],f=s+c;if(u<0){if(f>t)return r+(t-s);r+=c}else{if(i!=an.Simple&&f>=t&&(i==an.TrackDel&&s<t&&f>t||i==an.TrackBefore&&s<t||i==an.TrackAfter&&f>t))return null;if(f>t||f==t&&n<0&&!c)return t==s||n<0?r:r+u;r+=u}s=f}if(t>s)throw new RangeError(`Position ${t} is out of range for changeset of length ${s}`);return r}touchesRange(t,n=t){for(let i=0,s=0;i<this.sections.length&&s<=n;){let r=this.sections[i++],l=this.sections[i++],c=s+r;if(l>=0&&s<=n&&c>=t)return s<t&&c>n?"cover":!0;s=c}return!1}toString(){let t="";for(let n=0;n<this.sections.length;){let i=this.sections[n++],s=this.sections[n++];t+=(t?" ":"")+i+(s>=0?":"+s:"")}return t}toJSON(){return this.sections}static fromJSON(t){if(!Array.isArray(t)||t.length%2||t.some(n=>typeof n!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new Zi(t)}static create(t){return new Zi(t)}}class He extends Zi{constructor(t,n){super(t),this.inserted=n}apply(t){if(this.length!=t.length)throw new RangeError("Applying change set to a document with the wrong length");return iy(this,(n,i,s,r,l)=>t=t.replace(s,s+(i-n),l),!1),t}mapDesc(t,n=!1){return sy(this,t,n,!0)}invert(t){let n=this.sections.slice(),i=[];for(let s=0,r=0;s<n.length;s+=2){let l=n[s],c=n[s+1];if(c>=0){n[s]=c,n[s+1]=l;let u=s>>1;for(;i.length<u;)i.push(Zt.empty);i.push(l?t.slice(r,r+l):Zt.empty)}r+=l}return new He(n,i)}compose(t){return this.empty?t:t.empty?this:B4(this,t,!0)}map(t,n=!1){return t.empty?this:sy(this,t,n,!0)}iterChanges(t,n=!1){iy(this,t,n)}get desc(){return Zi.create(this.sections)}filter(t){let n=[],i=[],s=[],r=new Zc(this);t:for(let l=0,c=0;;){let u=l==t.length?1e9:t[l++];for(;c<u||c==u&&r.len==0;){if(r.done)break t;let p=Math.min(r.len,u-c);Ve(s,p,-1);let m=r.ins==-1?-1:r.off==0?r.ins:0;Ve(n,p,m),m>0&&wr(i,n,r.text),r.forward(p),c+=p}let f=t[l++];for(;c<f;){if(r.done)break t;let p=Math.min(r.len,f-c);Ve(n,p,-1),Ve(s,p,r.ins==-1?-1:r.off==0?r.ins:0),r.forward(p),c+=p}}return{changes:new He(n,i),filtered:Zi.create(s)}}toJSON(){let t=[];for(let n=0;n<this.sections.length;n+=2){let i=this.sections[n],s=this.sections[n+1];s<0?t.push(i):s==0?t.push([i]):t.push([i].concat(this.inserted[n>>1].toJSON()))}return t}static of(t,n,i){let s=[],r=[],l=0,c=null;function u(p=!1){if(!p&&!s.length)return;l<n&&Ve(s,n-l,-1);let m=new He(s,r);c=c?c.compose(m.map(c)):m,s=[],r=[],l=0}function f(p){if(Array.isArray(p))for(let m of p)f(m);else if(p instanceof He){if(p.length!=n)throw new RangeError(`Mismatched change set length (got ${p.length}, expected ${n})`);u(),c=c?c.compose(p.map(c)):p}else{let{from:m,to:g=m,insert:y}=p;if(m>g||m<0||g>n)throw new RangeError(`Invalid change range ${m} to ${g} (in doc of length ${n})`);let $=y?typeof y=="string"?Zt.of(y.split(i||ny)):y:Zt.empty,b=$.length;if(m==g&&b==0)return;m<l&&u(),m>l&&Ve(s,m-l,-1),Ve(s,g-m,b),wr(r,s,$),l=g}}return f(t),u(!c),c}static empty(t){return new He(t?[t,-1]:[],[])}static fromJSON(t){if(!Array.isArray(t))throw new RangeError("Invalid JSON representation of ChangeSet");let n=[],i=[];for(let s=0;s<t.length;s++){let r=t[s];if(typeof r=="number")n.push(r,-1);else{if(!Array.isArray(r)||typeof r[0]!="number"||r.some((l,c)=>c&&typeof l!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(r.length==1)n.push(r[0],0);else{for(;i.length<s;)i.push(Zt.empty);i[s]=Zt.of(r.slice(1)),n.push(r[0],i[s].length)}}}return new He(n,i)}static createSet(t,n){return new He(t,n)}}function Ve(e,t,n,i=!1){if(t==0&&n<=0)return;let s=e.length-2;s>=0&&n<=0&&n==e[s+1]?e[s]+=t:s>=0&&t==0&&e[s]==0?e[s+1]+=n:i?(e[s]+=t,e[s+1]+=n):e.push(t,n)}function wr(e,t,n){if(n.length==0)return;let i=t.length-2>>1;if(i<e.length)e[e.length-1]=e[e.length-1].append(n);else{for(;e.length<i;)e.push(Zt.empty);e.push(n)}}function iy(e,t,n){let i=e.inserted;for(let s=0,r=0,l=0;l<e.sections.length;){let c=e.sections[l++],u=e.sections[l++];if(u<0)s+=c,r+=c;else{let f=s,p=r,m=Zt.empty;for(;f+=c,p+=u,u&&i&&(m=m.append(i[l-2>>1])),!(n||l==e.sections.length||e.sections[l+1]<0);)c=e.sections[l++],u=e.sections[l++];t(s,f,r,p,m),s=f,r=p}}}function sy(e,t,n,i=!1){let s=[],r=i?[]:null,l=new Zc(e),c=new Zc(t);for(let u=-1;;){if(l.done&&c.len||c.done&&l.len)throw new Error("Mismatched change set lengths");if(l.ins==-1&&c.ins==-1){let f=Math.min(l.len,c.len);Ve(s,f,-1),l.forward(f),c.forward(f)}else if(c.ins>=0&&(l.ins<0||u==l.i||l.off==0&&(c.len<l.len||c.len==l.len&&!n))){let f=c.len;for(Ve(s,c.ins,-1);f;){let p=Math.min(l.len,f);l.ins>=0&&u<l.i&&l.len<=p&&(Ve(s,0,l.ins),r&&wr(r,s,l.text),u=l.i),l.forward(p),f-=p}c.next()}else if(l.ins>=0){let f=0,p=l.len;for(;p;)if(c.ins==-1){let m=Math.min(p,c.len);f+=m,p-=m,c.forward(m)}else if(c.ins==0&&c.len<p)p-=c.len,c.next();else break;Ve(s,f,u<l.i?l.ins:0),r&&u<l.i&&wr(r,s,l.text),u=l.i,l.forward(l.len-p)}else{if(l.done&&c.done)return r?He.createSet(s,r):Zi.create(s);throw new Error("Mismatched change set lengths")}}}function B4(e,t,n=!1){let i=[],s=n?[]:null,r=new Zc(e),l=new Zc(t);for(let c=!1;;){if(r.done&&l.done)return s?He.createSet(i,s):Zi.create(i);if(r.ins==0)Ve(i,r.len,0,c),r.next();else if(l.len==0&&!l.done)Ve(i,0,l.ins,c),s&&wr(s,i,l.text),l.next();else{if(r.done||l.done)throw new Error("Mismatched change set lengths");{let u=Math.min(r.len2,l.len),f=i.length;if(r.ins==-1){let p=l.ins==-1?-1:l.off?0:l.ins;Ve(i,u,p,c),s&&p&&wr(s,i,l.text)}else l.ins==-1?(Ve(i,r.off?0:r.len,u,c),s&&wr(s,i,r.textBit(u))):(Ve(i,r.off?0:r.len,l.off?0:l.ins,c),s&&!l.off&&wr(s,i,l.text));c=(r.ins>u||l.ins>=0&&l.len>u)&&(c||i.length>f),r.forward2(u),l.forward(u)}}}}class Zc{constructor(t){this.set=t,this.i=0,this.next()}next(){let{sections:t}=this.set;this.i<t.length?(this.len=t[this.i++],this.ins=t[this.i++]):(this.len=0,this.ins=-2),this.off=0}get done(){return this.ins==-2}get len2(){return this.ins<0?this.len:this.ins}get text(){let{inserted:t}=this.set,n=this.i-2>>1;return n>=t.length?Zt.empty:t[n]}textBit(t){let{inserted:n}=this.set,i=this.i-2>>1;return i>=n.length&&!t?Zt.empty:n[i].slice(this.off,t==null?void 0:this.off+t)}forward(t){t==this.len?this.next():(this.len-=t,this.off+=t)}forward2(t){this.ins==-1?this.forward(t):t==this.ins?this.next():(this.ins-=t,this.off+=t)}}class mr{constructor(t,n,i,s){this.from=t,this.to=n,this.flags=i,this.goalColumn=s}get anchor(){return this.flags&32?this.to:this.from}get head(){return this.flags&32?this.from:this.to}get empty(){return this.from==this.to}get assoc(){return this.flags&8?-1:this.flags&16?1:0}get undirectional(){return(this.flags&64)>0}get bidiLevel(){let t=this.flags&7;return t==7?null:t}map(t,n=-1){let i,s;return this.empty?i=s=t.mapPos(this.from,n):(i=t.mapPos(this.from,1),s=t.mapPos(this.to,-1)),i==this.from&&s==this.to?this:new mr(i,s,this.flags,this.goalColumn)}extend(t,n=t,i=0){if(t<=this.anchor&&n>=this.anchor)return lt.range(t,n,void 0,void 0,i);let s=Math.abs(t-this.anchor)>Math.abs(n-this.anchor)?t:n;return lt.range(this.anchor,s,void 0,void 0,i)}eq(t,n=!1){return this.anchor==t.anchor&&this.head==t.head&&this.goalColumn==t.goalColumn&&(!n||!this.empty||this.assoc==t.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(t){if(!t||typeof t.anchor!="number"||typeof t.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return lt.range(t.anchor,t.head)}static create(t,n,i,s){return new mr(t,n,i,s)}}class lt{constructor(t,n){this.ranges=t,this.mainIndex=n}map(t,n=-1){return t.empty?this:lt.create(this.ranges.map(i=>i.map(t,n)),this.mainIndex)}eq(t,n=!1){if(this.ranges.length!=t.ranges.length||this.mainIndex!=t.mainIndex)return!1;for(let i=0;i<this.ranges.length;i++)if(!this.ranges[i].eq(t.ranges[i],n))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return this.ranges.length==1?this:new lt([this.main],0)}addRange(t,n=!0){return lt.create([t].concat(this.ranges),n?0:this.mainIndex+1)}replaceRange(t,n=this.mainIndex){let i=this.ranges.slice();return i[n]=t,lt.create(i,this.mainIndex)}toJSON(){return{ranges:this.ranges.map(t=>t.toJSON()),main:this.mainIndex}}static fromJSON(t){if(!t||!Array.isArray(t.ranges)||typeof t.main!="number"||t.main>=t.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new lt(t.ranges.map(n=>mr.fromJSON(n)),t.main)}static single(t,n=t){return new lt([lt.range(t,n)],0)}static create(t,n=0){if(t.length==0)throw new RangeError("A selection needs at least one range");for(let i=0,s=0;s<t.length;s++){let r=t[s];if(r.empty?r.from<=i:r.from<i)return lt.normalized(t.slice(),n);i=r.to}return new lt(t,n)}static cursor(t,n=0,i,s){return mr.create(t,t,(n==0?0:n<0?8:16)|(i==null?7:Math.min(6,i)),s)}static range(t,n,i,s,r){let l=s==null?7:Math.min(6,s);return!r&&t!=n&&(r=n<t?1:-1),r&&(l|=r<0?8:16),n<t?mr.create(n,t,l|32,i):mr.create(t,n,l,i)}static undirectionalRange(t,n){return mr.create(t,n,64,void 0)}static normalized(t,n=0){let i=t[n];t.sort((s,r)=>s.from-r.from),n=t.indexOf(i);for(let s=1;s<t.length;s++){let r=t[s],l=t[s-1];if(r.empty?r.from<=l.to:r.from<l.to){let c=l.from,u=Math.max(r.to,l.to);s<=n&&n--,t.splice(--s,2,r.anchor>r.head?lt.range(u,c):lt.range(c,u))}}return new lt(t,n)}}function Y4(e,t){for(let n of e.ranges)if(n.to>t)throw new RangeError("Selection points outside of document")}let $w=0;class wt{constructor(t,n,i,s,r){this.combine=t,this.compareInput=n,this.compare=i,this.isStatic=s,this.id=$w++,this.default=t([]),this.extensions=typeof r=="function"?r(this):r}get reader(){return this}static define(t={}){return new wt(t.combine||(n=>n),t.compareInput||((n,i)=>n===i),t.compare||(t.combine?(n,i)=>n===i:xw),!!t.static,t.enables)}of(t){return new Mf([],this,0,t)}compute(t,n){if(this.isStatic)throw new Error("Can't compute a static facet");return new Mf(t,this,1,n)}computeN(t,n){if(this.isStatic)throw new Error("Can't compute a static facet");return new Mf(t,this,2,n)}from(t,n){return n||(n=i=>i),this.compute([t],i=>n(i.field(t)))}}function xw(e,t){return e==t||e.length==t.length&&e.every((n,i)=>n===t[i])}class Mf{constructor(t,n,i,s){this.dependencies=t,this.facet=n,this.type=i,this.value=s,this.id=$w++}dynamicSlot(t){var n;let i=this.value,s=this.facet.compareInput,r=this.id,l=t[r]>>1,c=this.type==2,u=!1,f=!1,p=[];for(let m of this.dependencies)m=="doc"?u=!0:m=="selection"?f=!0:(((n=t[m.id])!==null&&n!==void 0?n:1)&1)==0&&p.push(t[m.id]);return{create(m){return m.values[l]=i(m),1},update(m,g){if(u&&g.docChanged||f&&(g.docChanged||g.selection)||ry(m,p)){let y=i(m);if(c?!J1(y,m.values[l],s):!s(y,m.values[l]))return m.values[l]=y,1}return 0},reconfigure:(m,g)=>{let y,$=g.config.address[r];if($!=null){let b=ad(g,$);if(this.dependencies.every(S=>S instanceof wt?g.facet(S)===m.facet(S):S instanceof Je?g.field(S,!1)==m.field(S,!1):!0)||(c?J1(y=i(m),b,s):s(y=i(m),b)))return m.values[l]=b,0}else y=i(m);return m.values[l]=y,1}}}get extension(){return this}}function J1(e,t,n){if(e.length!=t.length)return!1;for(let i=0;i<e.length;i++)if(!n(e[i],t[i]))return!1;return!0}function ry(e,t){let n=!1;for(let i of t)Rc(e,i)&1&&(n=!0);return n}function J7(e,t,n){let i=n.map(u=>e[u.id]),s=n.map(u=>u.type),r=i.filter(u=>!(u&1)),l=e[t.id]>>1;function c(u){let f=[];for(let p=0;p<i.length;p++){let m=ad(u,i[p]);if(s[p]==2)for(let g of m)f.push(g);else f.push(m)}return t.combine(f)}return{create(u){for(let f of i)Rc(u,f);return u.values[l]=c(u),1},update(u,f){if(!ry(u,r))return 0;let p=c(u);return t.compare(p,u.values[l])?0:(u.values[l]=p,1)},reconfigure(u,f){let p=ry(u,i),m=f.config.facets[t.id],g=f.facet(t);if(m&&!p&&xw(n,m))return u.values[l]=g,0;let y=c(u);return t.compare(y,g)?(u.values[l]=g,0):(u.values[l]=y,1)}}}const ef=wt.define({static:!0});class Je{constructor(t,n,i,s,r){this.id=t,this.createF=n,this.updateF=i,this.compareF=s,this.spec=r,this.provides=void 0}static define(t){let n=new Je($w++,t.create,t.update,t.compare||((i,s)=>i===s),t);return t.provide&&(n.provides=t.provide(n)),n}create(t){let n=t.facet(ef).find(i=>i.field==this);return((n==null?void 0:n.create)||this.createF)(t)}slot(t){let n=t[this.id]>>1;return{create:i=>(i.values[n]=this.create(i),1),update:(i,s)=>{let r=i.values[n],l=this.updateF(r,s);return this.compareF(r,l)?0:(i.values[n]=l,1)},reconfigure:(i,s)=>{let r=i.facet(ef),l=s.facet(ef),c;return(c=r.find(u=>u.field==this))&&c!=l.find(u=>u.field==this)?(i.values[n]=c.create(i),1):s.config.address[this.id]!=null?(i.values[n]=s.field(this),0):(i.values[n]=this.create(i),1)}}}init(t){return[this,ef.of({field:this,create:t})]}get extension(){return this}}const ao={lowest:4,low:3,default:2,high:1,highest:0};function yc(e){return t=>new G4(t,e)}const Nr={highest:yc(ao.highest),high:yc(ao.high),default:yc(ao.default),low:yc(ao.low),lowest:yc(ao.lowest)};class G4{constructor(t,n){this.inner=t,this.prec=n}get extension(){return this}}class Kd{of(t){return new oy(this,t)}reconfigure(t){return Kd.reconfigure.of({compartment:this,extension:t})}get(t){return t.config.compartments.get(this)}}class oy{constructor(t,n){this.compartment=t,this.inner=n}get extension(){return this}}class ld{constructor(t,n,i,s,r,l){for(this.base=t,this.compartments=n,this.dynamicSlots=i,this.address=s,this.staticValues=r,this.facets=l,this.statusTemplate=[];this.statusTemplate.length<i.length;)this.statusTemplate.push(0)}staticFacet(t){let n=this.address[t.id];return n==null?t.default:this.staticValues[n>>1]}static resolve(t,n,i){let s=[],r=Object.create(null),l=new Map;for(let g of t6(t,n,l))g instanceof Je?s.push(g):(r[g.facet.id]||(r[g.facet.id]=[])).push(g);let c=Object.create(null),u=[],f=[];for(let g of s)c[g.id]=f.length<<1,f.push(y=>g.slot(y));let p=i==null?void 0:i.config.facets;for(let g in r){let y=r[g],$=y[0].facet,b=p&&p[g]||[];if(y.every(S=>S.type==0))if(c[$.id]=u.length<<1|1,xw(b,y))u.push(i.facet($));else{let S=$.combine(y.map(O=>O.value));u.push(i&&$.compare(S,i.facet($))?i.facet($):S)}else{for(let S of y)S.type==0?(c[S.id]=u.length<<1|1,u.push(S.value)):(c[S.id]=f.length<<1,f.push(O=>S.dynamicSlot(O)));c[$.id]=f.length<<1,f.push(S=>J7(S,$,y))}}let m=f.map(g=>g(c));return new ld(t,l,m,c,u,r)}}function t6(e,t,n){let i=[[],[],[],[],[]],s=new Map;function r(l,c){let u=s.get(l);if(u!=null){if(u<=c)return;let f=i[u].indexOf(l);f>-1&&i[u].splice(f,1),l instanceof oy&&n.delete(l.compartment)}if(s.set(l,c),Array.isArray(l))for(let f of l)r(f,c);else if(l instanceof oy){if(n.has(l.compartment))throw new RangeError("Duplicate use of compartment in extensions");let f=t.get(l.compartment)||l.inner;n.set(l.compartment,f),r(f,c)}else if(l instanceof G4)r(l.inner,l.prec);else if(l instanceof Je)i[c].push(l),l.provides&&r(l.provides,c);else if(l instanceof Mf)i[c].push(l),l.facet.extensions&&r(l.facet.extensions,ao.default);else{let f=l.extension;if(!f)throw new Error(`Unrecognized extension value in extension set (${l}).`);if(f==l)throw new Error(`Unrecognized extension value in extension set (${l}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);r(f,c)}}return r(e,ao.default),i.reduce((l,c)=>l.concat(c))}function Rc(e,t){if(t&1)return 2;let n=t>>1,i=e.status[n];if(i==4)throw new Error("Cyclic dependency between fields and/or facets");if(i&2)return i;e.status[n]=4;let s=e.computeSlot(e,e.config.dynamicSlots[n]);return e.status[n]=2|s}function ad(e,t){return t&1?e.config.staticValues[t>>1]:e.values[t>>1]}const L4=wt.define(),ly=wt.define({combine:e=>e.some(t=>t),static:!0}),Q4=wt.define({combine:e=>e.length?e[0]:void 0,static:!0}),P4=wt.define(),q4=wt.define(),W4=wt.define(),Z4=wt.define({combine:e=>e.length?e[0]:!1});class Rs{constructor(t,n){this.type=t,this.value=n}static define(){return new e6}}class e6{of(t){return new Rs(this,t)}}class n6{constructor(t){this.map=t}of(t){return new _t(this,t)}}class _t{constructor(t,n){this.type=t,this.value=n}map(t){let n=this.type.map(this.value,t);return n===void 0?void 0:n==this.value?this:new _t(this.type,n)}is(t){return this.type==t}static define(t={}){return new n6(t.map||(n=>n))}static mapEffects(t,n){if(!t.length)return t;let i=[];for(let s of t){let r=s.map(n);r&&i.push(r)}return i}}_t.reconfigure=_t.define();_t.appendConfig=_t.define();class ze{constructor(t,n,i,s,r,l){this.startState=t,this.changes=n,this.selection=i,this.effects=s,this.annotations=r,this.scrollIntoView=l,this._doc=null,this._state=null,i&&Y4(i,n.newLength),r.some(c=>c.type==ze.time)||(this.annotations=r.concat(ze.time.of(Date.now())))}static create(t,n,i,s,r,l){return new ze(t,n,i,s,r,l)}get newDoc(){return this._doc||(this._doc=this.changes.apply(this.startState.doc))}get newSelection(){return this.selection||this.startState.selection.map(this.changes)}get state(){return this._state||this.startState.applyTransaction(this),this._state}annotation(t){for(let n of this.annotations)if(n.type==t)return n.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(t){let n=this.annotation(ze.userEvent);return!!(n&&(n==t||n.length>t.length&&n.slice(0,t.length)==t&&n[t.length]=="."))}}ze.time=Rs.define();ze.userEvent=Rs.define();ze.addToHistory=Rs.define();ze.remote=Rs.define();function i6(e,t){let n=[];for(let i=0,s=0;;){let r,l;if(i<e.length&&(s==t.length||t[s]>=e[i]))r=e[i++],l=e[i++];else if(s<t.length)r=t[s++],l=t[s++];else return n;!n.length||n[n.length-1]<r?n.push(r,l):n[n.length-1]<l&&(n[n.length-1]=l)}}function U4(e,t,n){var i;let s,r,l;return n?(s=t.changes,r=He.empty(t.changes.length),l=e.changes.compose(t.changes)):(s=t.changes.map(e.changes),r=e.changes.mapDesc(t.changes,!0),l=e.changes.compose(s)),{changes:l,selection:t.selection?t.selection.map(r):(i=e.selection)===null||i===void 0?void 0:i.map(s),effects:_t.mapEffects(e.effects,s).concat(_t.mapEffects(t.effects,r)),annotations:e.annotations.length?e.annotations.concat(t.annotations):t.annotations,scrollIntoView:e.scrollIntoView||t.scrollIntoView}}function ay(e,t,n){let i=t.selection,s=Gl(t.annotations);return t.userEvent&&(s=s.concat(ze.userEvent.of(t.userEvent))),{changes:t.changes instanceof He?t.changes:He.of(t.changes||[],n,e.facet(Q4)),selection:i&&(i instanceof lt?i:lt.single(i.anchor,i.head)),effects:Gl(t.effects),annotations:s,scrollIntoView:!!t.scrollIntoView}}function I4(e,t,n){let i=ay(e,t.length?t[0]:{},e.doc.length);t.length&&t[0].filter===!1&&(n=!1);for(let r=1;r<t.length;r++){t[r].filter===!1&&(n=!1);let l=!!t[r].sequential;i=U4(i,ay(e,t[r],l?i.changes.newLength:e.doc.length),l)}let s=ze.create(e,i.changes,i.selection,i.effects,i.annotations,i.scrollIntoView);return r6(n?s6(s):s)}function s6(e){let t=e.startState,n=!0;for(let s of t.facet(P4)){let r=s(e);if(r===!1){n=!1;break}Array.isArray(r)&&(n=n===!0?r:i6(n,r))}if(n!==!0){let s,r;if(n===!1)r=e.changes.invertedDesc,s=He.empty(t.doc.length);else{let l=e.changes.filter(n);s=l.changes,r=l.filtered.mapDesc(l.changes).invertedDesc}e=ze.create(t,s,e.selection&&e.selection.map(r),_t.mapEffects(e.effects,r),e.annotations,e.scrollIntoView)}let i=t.facet(q4);for(let s=i.length-1;s>=0;s--){let r=i[s](e);r instanceof ze?e=r:Array.isArray(r)&&r.length==1&&r[0]instanceof ze?e=r[0]:e=I4(t,Gl(r),!1)}return e}function r6(e){let t=e.startState,n=t.facet(W4),i=e;for(let s=n.length-1;s>=0;s--){let r=n[s](e);r&&Object.keys(r).length&&(i=U4(i,ay(t,r,e.changes.newLength),!0))}return i==e?e:ze.create(t,e.changes,e.selection,i.effects,i.annotations,i.scrollIntoView)}const o6=[];function Gl(e){return e==null?o6:Array.isArray(e)?e:[e]}var pe=(function(e){return e[e.Word=0]="Word",e[e.Space=1]="Space",e[e.Other=2]="Other",e})(pe||(pe={}));const l6=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let cy;try{cy=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function a6(e){if(cy)return cy.test(e);for(let t=0;t<e.length;t++){let n=e[t];if(/\w/.test(n)||n>"€"&&(n.toUpperCase()!=n.toLowerCase()||l6.test(n)))return!0}return!1}function c6(e){return t=>{if(!/\S/.test(t))return pe.Space;if(a6(t))return pe.Word;for(let n=0;n<e.length;n++)if(t.indexOf(e[n])>-1)return pe.Word;return pe.Other}}class Wt{constructor(t,n,i,s,r,l){this.config=t,this.doc=n,this.selection=i,this.values=s,this.status=t.statusTemplate.slice(),this.computeSlot=r,l&&(l._state=this);for(let c=0;c<this.config.dynamicSlots.length;c++)Rc(this,c<<1);this.computeSlot=null}field(t,n=!0){let i=this.config.address[t.id];if(i==null){if(n)throw new RangeError("Field is not present in this state");return}return Rc(this,i),ad(this,i)}update(...t){return I4(this,t,!0)}applyTransaction(t){let n=this.config,{base:i,compartments:s}=n;for(let c of t.effects)c.is(Kd.reconfigure)?(n&&(s=new Map,n.compartments.forEach((u,f)=>s.set(f,u)),n=null),s.set(c.value.compartment,c.value.extension)):c.is(_t.reconfigure)?(n=null,i=c.value):c.is(_t.appendConfig)&&(n=null,i=Gl(i).concat(c.value));let r;n?r=t.startState.values.slice():(n=ld.resolve(i,s,this),r=new Wt(n,this.doc,this.selection,n.dynamicSlots.map(()=>null),(u,f)=>f.reconfigure(u,this),null).values);let l=t.startState.facet(ly)?t.newSelection:t.newSelection.asSingle();new Wt(n,t.newDoc,l,r,(c,u)=>u.update(c,t),t)}replaceSelection(t){return typeof t=="string"&&(t=this.toText(t)),this.changeByRange(n=>({changes:{from:n.from,to:n.to,insert:t},range:lt.cursor(n.from+t.length)}))}changeByRange(t){let n=this.selection,i=t(n.ranges[0]),s=this.changes(i.changes),r=[i.range],l=Gl(i.effects);for(let c=1;c<n.ranges.length;c++){let u=t(n.ranges[c]),f=this.changes(u.changes),p=f.map(s);for(let g=0;g<c;g++)r[g]=r[g].map(p);let m=s.mapDesc(f,!0);r.push(u.range.map(m)),s=s.compose(p),l=_t.mapEffects(l,p).concat(_t.mapEffects(Gl(u.effects),m))}return{changes:s,selection:lt.create(r,n.mainIndex),effects:l}}changes(t=[]){return t instanceof He?t:He.of(t,this.doc.length,this.facet(Wt.lineSeparator))}toText(t){return Zt.of(t.split(this.facet(Wt.lineSeparator)||ny))}sliceDoc(t=0,n=this.doc.length){return this.doc.sliceString(t,n,this.lineBreak)}facet(t){let n=this.config.address[t.id];return n==null?t.default:(Rc(this,n),ad(this,n))}toJSON(t){let n={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(t)for(let i in t){let s=t[i];s instanceof Je&&this.config.address[s.id]!=null&&(n[i]=s.spec.toJSON(this.field(t[i]),this))}return n}static fromJSON(t,n={},i){if(!t||typeof t.doc!="string")throw new RangeError("Invalid JSON representation for EditorState");let s=[];if(i){for(let r in i)if(Object.prototype.hasOwnProperty.call(t,r)){let l=i[r],c=t[r];s.push(l.init(u=>l.spec.fromJSON(c,u)))}}return Wt.create({doc:t.doc,selection:lt.fromJSON(t.selection),extensions:n.extensions?s.concat([n.extensions]):s})}static create(t={}){let n=ld.resolve(t.extensions||[],new Map),i=t.doc instanceof Zt?t.doc:Zt.of((t.doc||"").split(n.staticFacet(Wt.lineSeparator)||ny)),s=t.selection?t.selection instanceof lt?t.selection:lt.single(t.selection.anchor,t.selection.head):lt.single(0);return Y4(s,i.length),n.staticFacet(ly)||(s=s.asSingle()),new Wt(n,i,s,n.dynamicSlots.map(()=>null),(r,l)=>l.create(r),null)}get tabSize(){return this.facet(Wt.tabSize)}get lineBreak(){return this.facet(Wt.lineSeparator)||`
262
+ `}get readOnly(){return this.facet(Z4)}phrase(t,...n){for(let i of this.facet(Wt.phrases))if(Object.prototype.hasOwnProperty.call(i,t)){t=i[t];break}return n.length&&(t=t.replace(/\$(\$|\d*)/g,(i,s)=>{if(s=="$")return"$";let r=+(s||1);return!r||r>n.length?i:n[r-1]})),t}languageDataAt(t,n,i=-1){let s=[];for(let r of this.facet(L4))for(let l of r(this,n,i))Object.prototype.hasOwnProperty.call(l,t)&&s.push(l[t]);return s}charCategorizer(t){let n=this.languageDataAt("wordChars",t);return c6(n.length?n[0]:"")}wordAt(t){let{text:n,from:i,length:s}=this.doc.lineAt(t),r=this.charCategorizer(t),l=t-i,c=t-i;for(;l>0;){let u=Ge(n,l,!1);if(r(n.slice(u,l))!=pe.Word)break;l=u}for(;c<s;){let u=Ge(n,c);if(r(n.slice(c,u))!=pe.Word)break;c=u}return l==c?null:lt.range(l+i,c+i)}}Wt.allowMultipleSelections=ly;Wt.tabSize=wt.define({combine:e=>e.length?e[0]:4});Wt.lineSeparator=Q4;Wt.readOnly=Z4;Wt.phrases=wt.define({compare(e,t){let n=Object.keys(e),i=Object.keys(t);return n.length==i.length&&n.every(s=>e[s]==t[s])}});Wt.languageData=L4;Wt.changeFilter=P4;Wt.transactionFilter=q4;Wt.transactionExtender=W4;Kd.reconfigure=_t.define();function Xi(e,t,n={}){let i={};for(let s of e)for(let r of Object.keys(s)){let l=s[r],c=i[r];if(c===void 0)i[r]=l;else if(!(c===l||l===void 0))if(Object.hasOwnProperty.call(n,r))i[r]=n[r](c,l);else throw new Error("Config merge conflict for field "+r)}for(let s in t)i[s]===void 0&&(i[s]=t[s]);return i}class Sr{eq(t){return this==t}range(t,n=t){return uy.create(t,n,this)}}Sr.prototype.startSide=Sr.prototype.endSide=0;Sr.prototype.point=!1;Sr.prototype.mapMode=an.TrackDel;function bw(e,t){return e==t||e.constructor==t.constructor&&e.eq(t)}let uy=class F4{constructor(t,n,i){this.from=t,this.to=n,this.value=i}static create(t,n,i){return new F4(t,n,i)}};function hy(e,t){return e.from-t.from||e.value.startSide-t.value.startSide}class vw{constructor(t,n,i,s){this.from=t,this.to=n,this.value=i,this.maxPoint=s}get length(){return this.to[this.to.length-1]}findIndex(t,n,i,s=0){let r=i?this.to:this.from;for(let l=s,c=r.length;;){if(l==c)return l;let u=l+c>>1,f=r[u]-t||(i?this.value[u].endSide:this.value[u].startSide)-n;if(u==l)return f>=0?l:c;f>=0?c=u:l=u+1}}between(t,n,i,s){for(let r=this.findIndex(n,-1e9,!0),l=this.findIndex(i,1e9,!1,r);r<l;r++)if(s(this.from[r]+t,this.to[r]+t,this.value[r])===!1)return!1}map(t,n){let i=[],s=[],r=[],l=-1,c=-1;for(let u=0;u<this.value.length;u++){let f=this.value[u],p=this.from[u]+t,m=this.to[u]+t,g,y;if(p==m){let $=n.mapPos(p,f.startSide,f.mapMode);if($==null||(g=y=$,f.startSide!=f.endSide&&(y=n.mapPos(p,f.endSide),y<g)))continue}else if(g=n.mapPos(p,f.startSide),y=n.mapPos(m,f.endSide),g>y||g==y&&f.startSide>0&&f.endSide<=0)continue;(y-g||f.endSide-f.startSide)<0||(l<0&&(l=g),f.point&&(c=Math.max(c,y-g)),i.push(f),s.push(g-l),r.push(y-l))}return{mapped:i.length?new vw(s,r,i,c):null,pos:l}}}class Bt{constructor(t,n,i,s){this.chunkPos=t,this.chunk=n,this.nextLayer=i,this.maxPoint=s}static create(t,n,i,s){return new Bt(t,n,i,s)}get length(){let t=this.chunk.length-1;return t<0?0:Math.max(this.chunkEnd(t),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let t=this.nextLayer.size;for(let n of this.chunk)t+=n.value.length;return t}chunkEnd(t){return this.chunkPos[t]+this.chunk[t].length}update(t){let{add:n=[],sort:i=!1,filterFrom:s=0,filterTo:r=this.length}=t,l=t.filter;if(n.length==0&&!l)return this;if(i&&(n=n.slice().sort(hy)),this.isEmpty)return n.length?Bt.of(n):this;let c=new V4(this,null,-1).goto(0),u=0,f=[],p=new Ts;for(;c.value||u<n.length;)if(u<n.length&&(c.from-n[u].from||c.startSide-n[u].value.startSide)>=0){let m=n[u++];p.addInner(m.from,m.to,m.value)||f.push(m)}else c.rangeIndex==1&&c.chunkIndex<this.chunk.length&&(u==n.length||this.chunkEnd(c.chunkIndex)<n[u].from)&&(!l||s>this.chunkEnd(c.chunkIndex)||r<this.chunkPos[c.chunkIndex])&&p.addChunk(this.chunkPos[c.chunkIndex],this.chunk[c.chunkIndex])?c.nextChunk():((!l||s>c.to||r<c.from||l(c.from,c.to,c.value))&&(p.addInner(c.from,c.to,c.value)||f.push(uy.create(c.from,c.to,c.value))),c.next());return p.finishInner(this.nextLayer.isEmpty&&!f.length?Bt.empty:this.nextLayer.update({add:f,filter:l,filterFrom:s,filterTo:r}))}map(t){if(t.empty||this.isEmpty)return this;let n=[],i=[],s=-1;for(let l=0;l<this.chunk.length;l++){let c=this.chunkPos[l],u=this.chunk[l],f=t.touchesRange(c,c+u.length);if(f===!1)s=Math.max(s,u.maxPoint),n.push(u),i.push(t.mapPos(c));else if(f===!0){let{mapped:p,pos:m}=u.map(c,t);p&&(s=Math.max(s,p.maxPoint),n.push(p),i.push(m))}}let r=this.nextLayer.map(t);return n.length==0?r:new Bt(i,n,r||Bt.empty,s)}between(t,n,i){if(!this.isEmpty){for(let s=0;s<this.chunk.length;s++){let r=this.chunkPos[s],l=this.chunk[s];if(n>=r&&t<=r+l.length&&l.between(r,t-r,n-r,i)===!1)return}this.nextLayer.between(t,n,i)}}iter(t=0){return Uc.from([this]).goto(t)}get isEmpty(){return this.nextLayer==this}static iter(t,n=0){return Uc.from(t).goto(n)}static compare(t,n,i,s,r=-1){let l=t.filter(m=>m.maxPoint>0||!m.isEmpty&&m.maxPoint>=r),c=n.filter(m=>m.maxPoint>0||!m.isEmpty&&m.maxPoint>=r),u=tv(l,c,i),f=new wc(l,u,r),p=new wc(c,u,r);i.iterGaps((m,g,y)=>ev(f,m,p,g,y,s)),i.empty&&i.length==0&&ev(f,0,p,0,0,s)}static eq(t,n,i=0,s){s==null&&(s=999999999);let r=t.filter(p=>!p.isEmpty&&n.indexOf(p)<0),l=n.filter(p=>!p.isEmpty&&t.indexOf(p)<0);if(r.length!=l.length)return!1;if(!r.length)return!0;let c=tv(r,l),u=new wc(r,c,0).goto(i),f=new wc(l,c,0).goto(i);for(;;){if(u.to!=f.to||!fy(u.active,f.active)||u.point&&(!f.point||!bw(u.point,f.point)))return!1;if(u.to>s)return!0;u.next(),f.next()}}static spans(t,n,i,s,r=-1){let l=new wc(t,null,r).goto(n),c=n,u=l.openStart;for(;;){let f=Math.min(l.to,i);if(l.point){let p=l.activeForPoint(l.to),m=l.pointFrom<n?p.length+1:l.point.startSide<0?p.length:Math.min(p.length,u);s.point(c,f,l.point,p,m,l.pointRank),u=Math.min(l.openEnd(f),p.length)}else f>c&&(s.span(c,f,l.active,u),u=l.openEnd(f));if(l.to>i)return u+(l.point&&l.to>i?1:0);c=l.to,l.next()}}static of(t,n=!1){let i=new Ts;for(let s of t instanceof uy?[t]:n?u6(t):t)i.add(s.from,s.to,s.value);return i.finish()}static join(t){if(!t.length)return Bt.empty;let n=t[t.length-1];for(let i=t.length-2;i>=0;i--)for(let s=t[i];s!=Bt.empty;s=s.nextLayer)n=new Bt(s.chunkPos,s.chunk,n,Math.max(s.maxPoint,n.maxPoint));return n}}Bt.empty=new Bt([],[],null,-1);function u6(e){if(e.length>1)for(let t=e[0],n=1;n<e.length;n++){let i=e[n];if(hy(t,i)>0)return e.slice().sort(hy);t=i}return e}Bt.empty.nextLayer=Bt.empty;class Ts{finishChunk(t){this.chunks.push(new vw(this.from,this.to,this.value,this.maxPoint)),this.chunkPos.push(this.chunkStart),this.chunkStart=-1,this.setMaxPoint=Math.max(this.setMaxPoint,this.maxPoint),this.maxPoint=-1,t&&(this.from=[],this.to=[],this.value=[])}constructor(){this.chunks=[],this.chunkPos=[],this.chunkStart=-1,this.last=null,this.lastFrom=-1e9,this.lastTo=-1e9,this.from=[],this.to=[],this.value=[],this.maxPoint=-1,this.setMaxPoint=-1,this.nextLayer=null}add(t,n,i){this.addInner(t,n,i)||(this.nextLayer||(this.nextLayer=new Ts)).add(t,n,i)}addInner(t,n,i){let s=t-this.lastTo||i.startSide-this.last.endSide;if(s<=0&&(t-this.lastFrom||i.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return s<0?!1:(this.from.length==250&&this.finishChunk(!0),this.chunkStart<0&&(this.chunkStart=t),this.from.push(t-this.chunkStart),this.to.push(n-this.chunkStart),this.last=i,this.lastFrom=t,this.lastTo=n,this.value.push(i),i.point&&(this.maxPoint=Math.max(this.maxPoint,n-t)),!0)}addChunk(t,n){if((t-this.lastTo||n.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,n.maxPoint),this.chunks.push(n),this.chunkPos.push(t);let i=n.value.length-1;return this.last=n.value[i],this.lastFrom=n.from[i]+t,this.lastTo=n.to[i]+t,!0}finish(){return this.finishInner(Bt.empty)}finishInner(t){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return t;let n=Bt.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(t):t,this.setMaxPoint);return this.from=null,n}}function tv(e,t,n){let i=new Map;for(let r of e)for(let l=0;l<r.chunk.length;l++)r.chunk[l].maxPoint<=0&&i.set(r.chunk[l],r.chunkPos[l]);let s=new Set;for(let r of t)for(let l=0;l<r.chunk.length;l++){let c=i.get(r.chunk[l]);c!=null&&(n?n.mapPos(c):c)==r.chunkPos[l]&&!(n!=null&&n.touchesRange(c,c+r.chunk[l].length))&&s.add(r.chunk[l])}return s}class V4{constructor(t,n,i,s=0){this.layer=t,this.skip=n,this.minPoint=i,this.rank=s}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(t,n=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(t,n,!1),this}gotoInner(t,n,i){for(;this.chunkIndex<this.layer.chunk.length;){let s=this.layer.chunk[this.chunkIndex];if(!(this.skip&&this.skip.has(s)||this.layer.chunkEnd(this.chunkIndex)<t||s.maxPoint<this.minPoint))break;this.chunkIndex++,i=!1}if(this.chunkIndex<this.layer.chunk.length){let s=this.layer.chunk[this.chunkIndex].findIndex(t-this.layer.chunkPos[this.chunkIndex],n,!0);(!i||this.rangeIndex<s)&&this.setRangeIndex(s)}this.next()}forward(t,n){(this.to-t||this.endSide-n)<0&&this.gotoInner(t,n,!0)}next(){for(;;)if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}else{let t=this.layer.chunkPos[this.chunkIndex],n=this.layer.chunk[this.chunkIndex],i=t+n.from[this.rangeIndex];if(this.from=i,this.to=t+n.to[this.rangeIndex],this.value=n.value[this.rangeIndex],this.setRangeIndex(this.rangeIndex+1),this.minPoint<0||this.value.point&&this.to-this.from>=this.minPoint)break}}setRangeIndex(t){if(t==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex<this.layer.chunk.length&&this.skip.has(this.layer.chunk[this.chunkIndex]);)this.chunkIndex++;this.rangeIndex=0}else this.rangeIndex=t}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(t){return this.from-t.from||this.startSide-t.startSide||this.rank-t.rank||this.to-t.to||this.endSide-t.endSide}}class Uc{constructor(t){this.heap=t}static from(t,n=null,i=-1){let s=[];for(let r=0;r<t.length;r++)for(let l=t[r];!l.isEmpty;l=l.nextLayer)l.maxPoint>=i&&s.push(new V4(l,n,i,r));return s.length==1?s[0]:new Uc(s)}get startSide(){return this.value?this.value.startSide:0}goto(t,n=-1e9){for(let i of this.heap)i.goto(t,n);for(let i=this.heap.length>>1;i>=0;i--)i0(this.heap,i);return this.next(),this}forward(t,n){for(let i of this.heap)i.forward(t,n);for(let i=this.heap.length>>1;i>=0;i--)i0(this.heap,i);(this.to-t||this.value.endSide-n)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let t=this.heap[0];this.from=t.from,this.to=t.to,this.value=t.value,this.rank=t.rank,t.value&&t.next(),i0(this.heap,0)}}}function i0(e,t){for(let n=e[t];;){let i=(t<<1)+1;if(i>=e.length)break;let s=e[i];if(i+1<e.length&&s.compare(e[i+1])>=0&&(s=e[i+1],i++),n.compare(s)<0)break;e[i]=n,e[t]=s,t=i}}class wc{constructor(t,n,i){this.minPoint=i,this.active=[],this.activeTo=[],this.activeRank=[],this.minActive=-1,this.point=null,this.pointFrom=0,this.pointRank=0,this.to=-1e9,this.endSide=0,this.openStart=-1,this.cursor=Uc.from(t,n,i)}goto(t,n=-1e9){return this.cursor.goto(t,n),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=t,this.endSide=n,this.openStart=-1,this.next(),this}forward(t,n){for(;this.minActive>-1&&(this.activeTo[this.minActive]-t||this.active[this.minActive].endSide-n)<0;)this.removeActive(this.minActive);this.cursor.forward(t,n)}removeActive(t){nf(this.active,t),nf(this.activeTo,t),nf(this.activeRank,t),this.minActive=nv(this.active,this.activeTo)}addActive(t){let n=0,{value:i,to:s,rank:r}=this.cursor;for(;n<this.activeRank.length&&(r-this.activeRank[n]||s-this.activeTo[n])>0;)n++;sf(this.active,n,i),sf(this.activeTo,n,s),sf(this.activeRank,n,r),t&&sf(t,n,this.cursor.from),this.minActive=nv(this.active,this.activeTo)}next(){let t=this.to,n=this.point;this.point=null;let i=this.openStart<0?[]:null;for(;;){let s=this.minActive;if(s>-1&&(this.activeTo[s]-this.cursor.from||this.active[s].endSide-this.cursor.startSide)<0){if(this.activeTo[s]>t){this.to=this.activeTo[s],this.endSide=this.active[s].endSide;break}this.removeActive(s),i&&nf(i,s)}else if(this.cursor.value)if(this.cursor.from>t){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let r=this.cursor.value;if(!r.point)this.addActive(i),this.cursor.next();else if(n&&this.cursor.to==this.to&&this.cursor.from<this.cursor.to)this.cursor.next();else{this.point=r,this.pointFrom=this.cursor.from,this.pointRank=this.cursor.rank,this.to=this.cursor.to,this.endSide=r.endSide,this.cursor.next(),this.forward(this.to,this.endSide);break}}else{this.to=this.endSide=1e9;break}}if(i){this.openStart=0;for(let s=i.length-1;s>=0&&i[s]<t;s--)this.openStart++}}activeForPoint(t){if(!this.active.length)return this.active;let n=[];for(let i=this.active.length-1;i>=0&&!(this.activeRank[i]<this.pointRank);i--)(this.activeTo[i]>t||this.activeTo[i]==t&&this.active[i].endSide>=this.point.endSide)&&n.push(this.active[i]);return n.reverse()}openEnd(t){let n=0;for(let i=this.activeTo.length-1;i>=0&&this.activeTo[i]>t;i--)n++;return n}}function ev(e,t,n,i,s,r){e.goto(t),n.goto(i);let l=i+s,c=i,u=i-t,f=!!r.boundChange;for(let p=!1;;){let m=e.to+u-n.to,g=m||e.endSide-n.endSide,y=g<0?e.to+u:n.to,$=Math.min(y,l);if(e.point||n.point?(e.point&&n.point&&bw(e.point,n.point)&&fy(e.activeForPoint(e.to),n.activeForPoint(n.to))||r.comparePoint(c,$,e.point,n.point),p=!1):(p&&r.boundChange(c),$>c&&!fy(e.active,n.active)&&r.compareRange(c,$,e.active,n.active),f&&$<l&&(m||e.openEnd(y)!=n.openEnd(y))&&(p=!0)),y>l)break;c=y,g<=0&&e.next(),g>=0&&n.next()}}function fy(e,t){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(e[n]!=t[n]&&!bw(e[n],t[n]))return!1;return!0}function nf(e,t){for(let n=t,i=e.length-1;n<i;n++)e[n]=e[n+1];e.pop()}function sf(e,t,n){for(let i=e.length-1;i>=t;i--)e[i+1]=e[i];e[t]=n}function nv(e,t){let n=-1,i=1e9;for(let s=0;s<t.length;s++)(t[s]-i||e[s].endSide-e[n].endSide)<0&&(n=s,i=t[s]);return n}function fa(e,t,n=e.length){let i=0;for(let s=0;s<n&&s<e.length;)e.charCodeAt(s)==9?(i+=t-i%t,s++):(i++,s=Ge(e,s));return i}function dy(e,t,n,i){for(let s=0,r=0;;){if(r>=t)return s;if(s==e.length)break;r+=e.charCodeAt(s)==9?n-r%n:1,s=Ge(e,s)}return i===!0?-1:e.length}const py="ͼ",iv=typeof Symbol>"u"?"__"+py:Symbol.for(py),my=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),sv=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{};class Or{constructor(t,n){this.rules=[];let{finish:i}=n||{};function s(l){return/^@/.test(l)?[l]:l.split(/,\s*/)}function r(l,c,u,f){let p=[],m=/^@(\w+)\b/.exec(l[0]),g=m&&m[1]=="keyframes";if(m&&c==null)return u.push(l[0]+";");for(let y in c){let $=c[y];if(/&/.test(y))r(y.split(/,\s*/).map(b=>l.map(S=>b.replace(/&/,S))).reduce((b,S)=>b.concat(S)),$,u);else if($&&typeof $=="object"){if(!m)throw new RangeError("The value of a property ("+y+") should be a primitive value.");r(s(y),$,p,g)}else $!=null&&p.push(y.replace(/_.*/,"").replace(/[A-Z]/g,b=>"-"+b.toLowerCase())+": "+$+";")}(p.length||g)&&u.push((i&&!m&&!f?l.map(i):l).join(", ")+" {"+p.join(" ")+"}")}for(let l in t)r(s(l),t[l],this.rules)}getRules(){return this.rules.join(`
263
+ `)}static newName(){let t=sv[iv]||1;return sv[iv]=t+1,py+t.toString(36)}static mount(t,n,i){let s=t[my],r=i&&i.nonce;s?r&&s.setNonce(r):s=new h6(t,r),s.mount(Array.isArray(n)?n:[n],t)}}let rv=new Map;class h6{constructor(t,n){let i=t.ownerDocument||t,s=i.defaultView;if(!t.head&&t.adoptedStyleSheets&&s.CSSStyleSheet){let r=rv.get(i);if(r)return t[my]=r;this.sheet=new s.CSSStyleSheet,rv.set(i,this)}else this.styleTag=i.createElement("style"),n&&this.styleTag.setAttribute("nonce",n);this.modules=[],t[my]=this}mount(t,n){let i=this.sheet,s=0,r=0;for(let l=0;l<t.length;l++){let c=t[l],u=this.modules.indexOf(c);if(u<r&&u>-1&&(this.modules.splice(u,1),r--,u=-1),u==-1){if(this.modules.splice(r++,0,c),i)for(let f=0;f<c.rules.length;f++)i.insertRule(c.rules[f],s++)}else{for(;r<u;)s+=this.modules[r++].rules.length;s+=c.rules.length,r++}}if(i)n.adoptedStyleSheets.indexOf(this.sheet)<0&&(n.adoptedStyleSheets=[this.sheet,...n.adoptedStyleSheets]);else{let l="";for(let u=0;u<this.modules.length;u++)l+=this.modules[u].getRules()+`
264
+ `;this.styleTag.textContent=l;let c=n.head||n;this.styleTag.parentNode!=c&&c.insertBefore(this.styleTag,c.firstChild)}}setNonce(t){this.styleTag&&this.styleTag.getAttribute("nonce")!=t&&this.styleTag.setAttribute("nonce",t)}}var kr={8:"Backspace",9:"Tab",10:"Enter",12:"NumLock",13:"Enter",16:"Shift",17:"Control",18:"Alt",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",44:"PrintScreen",45:"Insert",46:"Delete",59:";",61:"=",91:"Meta",92:"Meta",106:"*",107:"+",108:",",109:"-",110:".",111:"/",144:"NumLock",145:"ScrollLock",160:"Shift",161:"Shift",162:"Control",163:"Control",164:"Alt",165:"Alt",173:"-",186:";",187:"=",188:",",189:"-",190:".",191:"/",192:"`",219:"[",220:"\\",221:"]",222:"'"},Ic={48:")",49:"!",50:"@",51:"#",52:"$",53:"%",54:"^",55:"&",56:"*",57:"(",59:":",61:"+",173:"_",186:":",187:"+",188:"<",189:"_",190:">",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},f6=typeof navigator<"u"&&/Mac/.test(navigator.platform),d6=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(var Ze=0;Ze<10;Ze++)kr[48+Ze]=kr[96+Ze]=String(Ze);for(var Ze=1;Ze<=24;Ze++)kr[Ze+111]="F"+Ze;for(var Ze=65;Ze<=90;Ze++)kr[Ze]=String.fromCharCode(Ze+32),Ic[Ze]=String.fromCharCode(Ze);for(var s0 in kr)Ic.hasOwnProperty(s0)||(Ic[s0]=kr[s0]);function p6(e){var t=f6&&e.metaKey&&e.shiftKey&&!e.ctrlKey&&!e.altKey||d6&&e.shiftKey&&e.key&&e.key.length==1||e.key=="Unidentified",n=!t&&e.key||(e.shiftKey?Ic:kr)[e.keyCode]||e.key||"Unidentified";return n=="Esc"&&(n="Escape"),n=="Del"&&(n="Delete"),n=="Left"&&(n="ArrowLeft"),n=="Up"&&(n="ArrowUp"),n=="Right"&&(n="ArrowRight"),n=="Down"&&(n="ArrowDown"),n}function ne(){var e=arguments[0];typeof e=="string"&&(e=document.createElement(e));var t=1,n=arguments[1];if(n&&typeof n=="object"&&n.nodeType==null&&!Array.isArray(n)){for(var i in n)if(Object.prototype.hasOwnProperty.call(n,i)){var s=n[i];typeof s=="string"?e.setAttribute(i,s):s!=null&&(e[i]=s)}t++}for(;t<arguments.length;t++)X4(e,arguments[t]);return e}function X4(e,t){if(typeof t=="string")e.appendChild(document.createTextNode(t));else if(t!=null)if(t.nodeType!=null)e.appendChild(t);else if(Array.isArray(t))for(var n=0;n<t.length;n++)X4(e,t[n]);else throw new RangeError("Unsupported child node: "+t)}let ln=typeof navigator<"u"?navigator:{userAgent:"",vendor:"",platform:""},gy=typeof document<"u"?document:{documentElement:{style:{}}};const yy=/Edge\/(\d+)/.exec(ln.userAgent),K4=/MSIE \d/.test(ln.userAgent),wy=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(ln.userAgent),Jd=!!(K4||wy||yy),ov=!Jd&&/gecko\/(\d+)/i.test(ln.userAgent),r0=!Jd&&/Chrome\/(\d+)/.exec(ln.userAgent),lv="webkitFontSmoothing"in gy.documentElement.style,$y=!Jd&&/Apple Computer/.test(ln.vendor),av=$y&&(/Mobile\/\w+/.test(ln.userAgent)||ln.maxTouchPoints>2);var gt={mac:av||/Mac/.test(ln.platform),windows:/Win/.test(ln.platform),linux:/Linux|X11/.test(ln.platform),ie:Jd,ie_version:K4?gy.documentMode||6:wy?+wy[1]:yy?+yy[1]:0,gecko:ov,gecko_version:ov?+(/Firefox\/(\d+)/.exec(ln.userAgent)||[0,0])[1]:0,chrome:!!r0,chrome_version:r0?+r0[1]:0,ios:av,android:/Android\b/.test(ln.userAgent),webkit:lv,webkit_version:lv?+(/\bAppleWebKit\/(\d+)/.exec(ln.userAgent)||[0,0])[1]:0,safari:$y,safari_version:$y?+(/\bVersion\/(\d+(\.\d+)?)/.exec(ln.userAgent)||[0,0])[1]:0,tabSize:gy.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function Sw(e,t){for(let n in e)n=="class"&&t.class?t.class+=" "+e.class:n=="style"&&t.style?t.style+=";"+e.style:t[n]=e[n];return t}const cd=Object.create(null);function Ow(e,t,n){if(e==t)return!0;e||(e=cd),t||(t=cd);let i=Object.keys(e),s=Object.keys(t);if(i.length-0!=s.length-0)return!1;for(let r of i)if(r!=n&&(s.indexOf(r)==-1||e[r]!==t[r]))return!1;return!0}function m6(e,t){for(let n=e.attributes.length-1;n>=0;n--){let i=e.attributes[n].name;t[i]==null&&e.removeAttribute(i)}for(let n in t){let i=t[n];n=="style"?e.style.cssText=i:e.getAttribute(n)!=i&&e.setAttribute(n,i)}}function cv(e,t,n){let i=!1;if(t)for(let s in t)n&&s in n||(i=!0,s=="style"?e.style.cssText="":e.removeAttribute(s));if(n)for(let s in n)t&&t[s]==n[s]||(i=!0,s=="style"?e.style.cssText=n[s]:e.setAttribute(s,n[s]));return i}function g6(e){let t=Object.create(null);for(let n=0;n<e.attributes.length;n++){let i=e.attributes[n];t[i.name]=i.value}return t}class _s{eq(t){return!1}updateDOM(t,n,i){return!1}compare(t){return this==t||this.constructor==t.constructor&&this.eq(t)}get estimatedHeight(){return-1}get lineBreaks(){return 0}ignoreEvent(t){return!0}coordsAt(t,n,i){return null}get isHidden(){return!1}get editable(){return!1}destroy(t){}}var Ue=(function(e){return e[e.Text=0]="Text",e[e.WidgetBefore=1]="WidgetBefore",e[e.WidgetAfter=2]="WidgetAfter",e[e.WidgetRange=3]="WidgetRange",e})(Ue||(Ue={}));class Tt extends Sr{constructor(t,n,i,s){super(),this.startSide=t,this.endSide=n,this.widget=i,this.spec=s}get heightRelevant(){return!1}static mark(t){return new gu(t)}static widget(t){let n=Math.max(-1e4,Math.min(1e4,t.side||0)),i=!!t.block;return n+=i&&!t.inlineOrder?n>0?3e8:-4e8:n>0?1e8:-1e8,new Do(t,n,n,i,t.widget||null,!1)}static replace(t){let n=!!t.block,i,s;if(t.isBlockGap)i=-5e8,s=4e8;else{let{start:r,end:l}=J4(t,n);i=(r?n?-3e8:-1:5e8)-1,s=(l?n?2e8:1:-6e8)+1}return new Do(t,i,s,n,t.widget||null,!0)}static line(t){return new yu(t)}static set(t,n=!1){return Bt.of(t,n)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}}Tt.none=Bt.empty;class gu extends Tt{constructor(t){let{start:n,end:i}=J4(t);super(n?-1:5e8,i?1:-6e8,null,t),this.tagName=t.tagName||"span",this.attrs=t.class&&t.attributes?Sw(t.attributes,{class:t.class}):t.class?{class:t.class}:t.attributes||cd}eq(t){return this==t||t instanceof gu&&this.tagName==t.tagName&&Ow(this.attrs,t.attrs)}range(t,n=t){if(t>=n)throw new RangeError("Mark decorations may not be empty");return super.range(t,n)}}gu.prototype.point=!1;class yu extends Tt{constructor(t){super(-2e8,-2e8,null,t)}eq(t){return t instanceof yu&&this.spec.class==t.spec.class&&Ow(this.spec.attributes,t.spec.attributes)}range(t,n=t){if(n!=t)throw new RangeError("Line decoration ranges must be zero-length");return super.range(t,n)}}yu.prototype.mapMode=an.TrackBefore;yu.prototype.point=!0;class Do extends Tt{constructor(t,n,i,s,r,l){super(n,i,r,t),this.block=s,this.isReplace=l,this.mapMode=s?n<=0?an.TrackBefore:an.TrackAfter:an.TrackDel}get type(){return this.startSide!=this.endSide?Ue.WidgetRange:this.startSide<=0?Ue.WidgetBefore:Ue.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(t){return t instanceof Do&&y6(this.widget,t.widget)&&this.block==t.block&&this.startSide==t.startSide&&this.endSide==t.endSide}range(t,n=t){if(this.isReplace&&(t>n||t==n&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&n!=t)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(t,n)}}Do.prototype.point=!0;function J4(e,t=!1){let{inclusiveStart:n,inclusiveEnd:i}=e;return n==null&&(n=e.inclusive),i==null&&(i=e.inclusive),{start:n??t,end:i??t}}function y6(e,t){return e==t||!!(e&&t&&e.compare(t))}function Ll(e,t,n,i=0){let s=n.length-1;s>=0&&n[s]+i>=e?n[s]=Math.max(n[s],t):n.push(e,t)}class Fc extends Sr{constructor(t,n,i){super(),this.tagName=t,this.attributes=n,this.rank=i}eq(t){return t==this||t instanceof Fc&&this.tagName==t.tagName&&Ow(this.attributes,t.attributes)}static create(t){return new Fc(t.tagName,t.attributes||cd,t.rank==null?50:Math.max(0,Math.min(t.rank,100)))}static set(t,n=!1){return Bt.of(t,n)}}Fc.prototype.startSide=Fc.prototype.endSide=-1;function Vc(e){let t;return e.nodeType==11?t=e.getSelection?e:e.ownerDocument:t=e,t.getSelection()}function xy(e,t){return t?e==t||e.contains(t.nodeType!=1?t.parentNode:t):!1}function _c(e,t){if(!t.anchorNode)return!1;try{return xy(e,t.anchorNode)}catch{return!1}}function Af(e){return e.nodeType==3?Xc(e,0,e.nodeValue.length).getClientRects():e.nodeType==1?e.getClientRects():[]}function Mc(e,t,n,i){return n?uv(e,t,n,i,-1)||uv(e,t,n,i,1):!1}function Cr(e){for(var t=0;;t++)if(e=e.previousSibling,!e)return t}function ud(e){return e.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(e.nodeName)}function uv(e,t,n,i,s){for(;;){if(e==n&&t==i)return!0;if(t==(s<0?0:Ns(e))){if(e.nodeName=="DIV")return!1;let r=e.parentNode;if(!r||r.nodeType!=1)return!1;t=Cr(e)+(s<0?0:1),e=r}else if(e.nodeType==1){if(e=e.childNodes[t+(s<0?-1:0)],e.nodeType==1&&e.contentEditable=="false")return!1;t=s<0?Ns(e):0}else return!1}}function Ns(e){return e.nodeType==3?e.nodeValue.length:e.childNodes.length}function hd(e,t){let{left:n,right:i}=e;if(n==i)return e;let s=t?n:i;return{left:s,right:s,top:e.top,bottom:e.bottom}}function w6(e){let t=e.visualViewport;return t?{left:0,right:t.width,top:0,bottom:t.height}:{left:0,right:e.innerWidth,top:0,bottom:e.innerHeight}}function tC(e,t){let n=t.width/e.offsetWidth,i=t.height/e.offsetHeight;return(n>.995&&n<1.005||!isFinite(n)||Math.abs(t.width-e.offsetWidth)<1)&&(n=1),(i>.995&&i<1.005||!isFinite(i)||Math.abs(t.height-e.offsetHeight)<1)&&(i=1),{scaleX:n,scaleY:i}}function $6(e,t,n,i,s,r,l,c){let u=e.ownerDocument,f=u.defaultView||window;for(let p=e,m=!1;p&&!m;)if(p.nodeType==1){let g,y=p==u.body,$=1,b=1;if(y)g=w6(f);else{if(/^(fixed|sticky)$/.test(getComputedStyle(p).position)&&(m=!0),p.scrollHeight<=p.clientHeight&&p.scrollWidth<=p.clientWidth){p=p.assignedSlot||p.parentNode;continue}let E=p.getBoundingClientRect();({scaleX:$,scaleY:b}=tC(p,E)),g={left:E.left,right:E.left+p.clientWidth*$,top:E.top,bottom:E.top+p.clientHeight*b}}let S=0,O=0;if(s=="nearest")t.top<g.top+l?(O=t.top-(g.top+l),n>0&&t.bottom>g.bottom+O&&(O=t.bottom-g.bottom+l)):t.bottom>g.bottom-l&&(O=t.bottom-g.bottom+l,n<0&&t.top-O<g.top&&(O=t.top-(g.top+l)));else{let E=t.bottom-t.top,k=g.bottom-g.top;O=(s=="center"&&E<=k?t.top+E/2-k/2:s=="start"||s=="center"&&n<0?t.top-l:t.bottom-k+l)-g.top}if(i=="nearest"?t.left<g.left+r?(S=t.left-(g.left+r),n>0&&t.right>g.right+S&&(S=t.right-g.right+r)):t.right>g.right-r&&(S=t.right-g.right+r,n<0&&t.left<g.left+S&&(S=t.left-(g.left+r))):S=(i=="center"?t.left+(t.right-t.left)/2-(g.right-g.left)/2:i=="start"==c?t.left-r:t.right-(g.right-g.left)+r)-g.left,S||O)if(y)f.scrollBy(S,O);else{let E=0,k=0;if(O){let D=p.scrollTop;p.scrollTop+=O/b,k=(p.scrollTop-D)*b}if(S){let D=p.scrollLeft;p.scrollLeft+=S/$,E=(p.scrollLeft-D)*$}t={left:t.left-E,top:t.top-k,right:t.right-E,bottom:t.bottom-k},E&&Math.abs(E-S)<1&&(i="nearest"),k&&Math.abs(k-O)<1&&(s="nearest")}if(y)break;(t.top<g.top||t.bottom>g.bottom||t.left<g.left||t.right>g.right)&&(t={left:Math.max(t.left,g.left),right:Math.min(t.right,g.right),top:Math.max(t.top,g.top),bottom:Math.min(t.bottom,g.bottom)}),p=p.assignedSlot||p.parentNode}else if(p.nodeType==11)p=p.host;else break}function eC(e,t=!0){let n=e.ownerDocument,i=null,s=null;for(let r=e.parentNode;r&&!(r==n.body||(!t||i)&&s);)if(r.nodeType==1)!s&&r.scrollHeight>r.clientHeight&&(s=r),t&&!i&&r.scrollWidth>r.clientWidth&&(i=r),r=r.assignedSlot||r.parentNode;else if(r.nodeType==11)r=r.host;else break;return{x:i,y:s}}class x6{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(t){return this.anchorNode==t.anchorNode&&this.anchorOffset==t.anchorOffset&&this.focusNode==t.focusNode&&this.focusOffset==t.focusOffset}setRange(t){let{anchorNode:n,focusNode:i}=t;this.set(n,Math.min(t.anchorOffset,n?Ns(n):0),i,Math.min(t.focusOffset,i?Ns(i):0))}set(t,n,i,s){this.anchorNode=t,this.anchorOffset=n,this.focusNode=i,this.focusOffset=s}}let lo=null;gt.safari&&gt.safari_version>=26&&(lo=!1);function nC(e){if(e.setActive)return e.setActive();if(lo)return e.focus(lo);let t=[];for(let n=e;n&&(t.push(n,n.scrollTop,n.scrollLeft),n!=n.ownerDocument);n=n.parentNode);if(e.focus(lo==null?{get preventScroll(){return lo={preventScroll:!0},!0}}:void 0),!lo){lo=!1;for(let n=0;n<t.length;){let i=t[n++],s=t[n++],r=t[n++];i.scrollTop!=s&&(i.scrollTop=s),i.scrollLeft!=r&&(i.scrollLeft=r)}}}let hv;function Xc(e,t,n=t){let i=hv||(hv=document.createRange());return i.setEnd(e,n),i.setStart(e,t),i}function Ql(e,t,n,i){let s={key:t,code:t,keyCode:n,which:n,cancelable:!0};i&&({altKey:s.altKey,ctrlKey:s.ctrlKey,shiftKey:s.shiftKey,metaKey:s.metaKey}=i);let r=new KeyboardEvent("keydown",s);r.synthetic=!0,e.dispatchEvent(r);let l=new KeyboardEvent("keyup",s);return l.synthetic=!0,e.dispatchEvent(l),r.defaultPrevented||l.defaultPrevented}function b6(e){for(;e;){if(e&&(e.nodeType==9||e.nodeType==11&&e.host))return e;e=e.assignedSlot||e.parentNode}return null}function v6(e,t){let n=t.focusNode,i=t.focusOffset;if(!n||t.anchorNode!=n||t.anchorOffset!=i)return!1;for(i=Math.min(i,Ns(n));;)if(i){if(n.nodeType!=1)return!1;let s=n.childNodes[i-1];s.contentEditable=="false"?i--:(n=s,i=Ns(n))}else{if(n==e)return!0;i=Cr(n),n=n.parentNode}}function iC(e){return e instanceof Window?e.pageYOffset>Math.max(0,e.document.documentElement.scrollHeight-e.innerHeight-4):e.scrollTop>Math.max(1,e.scrollHeight-e.clientHeight-4)}function sC(e,t){for(let n=e,i=t;;){if(n.nodeType==3&&i>0)return{node:n,offset:i};if(n.nodeType==1&&i>0){if(n.contentEditable=="false")return null;n=n.childNodes[i-1],i=Ns(n)}else if(n.parentNode&&!ud(n))i=Cr(n),n=n.parentNode;else return null}}function rC(e,t){for(let n=e,i=t;;){if(n.nodeType==3&&i<n.nodeValue.length)return{node:n,offset:i};if(n.nodeType==1&&i<n.childNodes.length){if(n.contentEditable=="false")return null;n=n.childNodes[i],i=0}else if(n.parentNode&&!ud(n))i=Cr(n)+1,n=n.parentNode;else return null}}class $i{constructor(t,n,i=!0){this.node=t,this.offset=n,this.precise=i}static before(t,n){return new $i(t.parentNode,Cr(t),n)}static after(t,n){return new $i(t.parentNode,Cr(t)+1,n)}}var oe=(function(e){return e[e.LTR=0]="LTR",e[e.RTL=1]="RTL",e})(oe||(oe={}));const To=oe.LTR,kw=oe.RTL;function oC(e){let t=[];for(let n=0;n<e.length;n++)t.push(1<<+e[n]);return t}const S6=oC("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),O6=oC("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),by=Object.create(null),_i=[];for(let e of["()","[]","{}"]){let t=e.charCodeAt(0),n=e.charCodeAt(1);by[t]=n,by[n]=-t}function lC(e){return e<=247?S6[e]:1424<=e&&e<=1524?2:1536<=e&&e<=1785?O6[e-1536]:1774<=e&&e<=2220?4:8192<=e&&e<=8204?256:64336<=e&&e<=65023?4:1}const k6=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/;class Li{get dir(){return this.level%2?kw:To}constructor(t,n,i){this.from=t,this.to=n,this.level=i}side(t,n){return this.dir==n==t?this.to:this.from}forward(t,n){return t==(this.dir==n)}static find(t,n,i,s){let r=-1;for(let l=0;l<t.length;l++){let c=t[l];if(c.from<=n&&c.to>=n){if(c.level==i)return l;(r<0||(s!=0?s<0?c.from<n:c.to>n:t[r].level>c.level))&&(r=l)}}if(r<0)throw new RangeError("Index out of range");return r}}function aC(e,t){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++){let i=e[n],s=t[n];if(i.from!=s.from||i.to!=s.to||i.direction!=s.direction||!aC(i.inner,s.inner))return!1}return!0}const re=[];function C6(e,t,n,i,s){for(let r=0;r<=i.length;r++){let l=r?i[r-1].to:t,c=r<i.length?i[r].from:n,u=r?256:s;for(let f=l,p=u,m=u;f<c;f++){let g=lC(e.charCodeAt(f));g==512?g=p:g==8&&m==4&&(g=16),re[f]=g==4?2:g,g&7&&(m=g),p=g}for(let f=l,p=u,m=u;f<c;f++){let g=re[f];if(g==128)f<c-1&&p==re[f+1]&&p&24?g=re[f]=p:re[f]=256;else if(g==64){let y=f+1;for(;y<c&&re[y]==64;)y++;let $=f&&p==8||y<n&&re[y]==8?m==1?1:8:256;for(let b=f;b<y;b++)re[b]=$;f=y-1}else g==8&&m==1&&(re[f]=1);p=g,g&7&&(m=g)}}}function E6(e,t,n,i,s){let r=s==1?2:1;for(let l=0,c=0,u=0;l<=i.length;l++){let f=l?i[l-1].to:t,p=l<i.length?i[l].from:n;for(let m=f,g,y,$;m<p;m++)if(y=by[g=e.charCodeAt(m)])if(y<0){for(let b=c-3;b>=0;b-=3)if(_i[b+1]==-y){let S=_i[b+2],O=S&2?s:S&4?S&1?r:s:0;O&&(re[m]=re[_i[b]]=O),c=b;break}}else{if(_i.length==189)break;_i[c++]=m,_i[c++]=g,_i[c++]=u}else if(($=re[m])==2||$==1){let b=$==s;u=b?0:1;for(let S=c-3;S>=0;S-=3){let O=_i[S+2];if(O&2)break;if(b)_i[S+2]|=2;else{if(O&4)break;_i[S+2]|=4}}}}}function D6(e,t,n,i){for(let s=0,r=i;s<=n.length;s++){let l=s?n[s-1].to:e,c=s<n.length?n[s].from:t;for(let u=l;u<c;){let f=re[u];if(f==256){let p=u+1;for(;;)if(p==c){if(s==n.length)break;p=n[s++].to,c=s<n.length?n[s].from:t}else if(re[p]==256)p++;else break;let m=r==1,g=(p<t?re[p]:i)==1,y=m==g?m?1:2:i;for(let $=p,b=s,S=b?n[b-1].to:e;$>u;)$==S&&($=n[--b].from,S=b?n[b-1].to:e),re[--$]=y;u=p}else r=f,u++}}}function vy(e,t,n,i,s,r,l){let c=i%2?2:1;if(i%2==s%2)for(let u=t,f=0;u<n;){let p=!0,m=!1;if(f==r.length||u<r[f].from){let b=re[u];b!=c&&(p=!1,m=b==16)}let g=!p&&c==1?[]:null,y=p?i:i+1,$=u;t:for(;;)if(f<r.length&&$==r[f].from){if(m)break t;let b=r[f];if(!p)for(let S=b.to,O=f+1;;){if(S==n)break t;if(O<r.length&&r[O].from==S)S=r[O++].to;else{if(re[S]==c)break t;break}}if(f++,g)g.push(b);else{b.from>u&&l.push(new Li(u,b.from,y));let S=b.direction==To!=!(y%2);Sy(e,S?i+1:i,s,b.inner,b.from,b.to,l),u=b.to}$=b.to}else{if($==n||(p?re[$]!=c:re[$]==c))break;$++}g?vy(e,u,$,i+1,s,g,l):u<$&&l.push(new Li(u,$,y)),u=$}else for(let u=n,f=r.length;u>t;){let p=!0,m=!1;if(!f||u>r[f-1].to){let b=re[u-1];b!=c&&(p=!1,m=b==16)}let g=!p&&c==1?[]:null,y=p?i:i+1,$=u;t:for(;;)if(f&&$==r[f-1].to){if(m)break t;let b=r[--f];if(!p)for(let S=b.from,O=f;;){if(S==t)break t;if(O&&r[O-1].to==S)S=r[--O].from;else{if(re[S-1]==c)break t;break}}if(g)g.push(b);else{b.to<u&&l.push(new Li(b.to,u,y));let S=b.direction==To!=!(y%2);Sy(e,S?i+1:i,s,b.inner,b.from,b.to,l),u=b.from}$=b.from}else{if($==t||(p?re[$-1]!=c:re[$-1]==c))break;$--}g?vy(e,$,u,i+1,s,g,l):$<u&&l.push(new Li($,u,y)),u=$}}function Sy(e,t,n,i,s,r,l){let c=t%2?2:1;C6(e,s,r,i,c),E6(e,s,r,i,c),D6(s,r,i,c),vy(e,s,r,t,n,i,l)}function T6(e,t,n){if(!e)return[new Li(0,0,t==kw?1:0)];if(t==To&&!n.length&&!k6.test(e))return cC(e.length);if(n.length)for(;e.length>re.length;)re[re.length]=256;let i=[],s=t==To?0:1;return Sy(e,s,s,n,0,e.length,i),i}function cC(e){return[new Li(0,e,0)]}let uC="";function N6(e,t,n,i,s){var r;let l=i.head-e.from,c=Li.find(t,l,(r=i.bidiLevel)!==null&&r!==void 0?r:-1,i.assoc),u=t[c],f=u.side(s,n);if(l==f){let g=c+=s?1:-1;if(g<0||g>=t.length)return null;u=t[c=g],l=u.side(!s,n),f=u.side(s,n)}let p=Ge(e.text,l,u.forward(s,n));(p<u.from||p>u.to)&&(p=f),uC=e.text.slice(Math.min(l,p),Math.max(l,p));let m=c==(s?t.length-1:0)?null:t[c+(s?1:-1)];return m&&p==f&&m.level+(s?0:1)<u.level?lt.cursor(m.side(!s,n)+e.from,m.forward(s,n)?1:-1,m.level):lt.cursor(p+e.from,u.forward(s,n)?-1:1,u.level)}function j6(e,t,n){for(let i=t;i<n;i++){let s=lC(e.charCodeAt(i));if(s==1)return To;if(s==2||s==4)return kw}return To}const hC=wt.define(),fC=wt.define(),dC=wt.define(),pC=wt.define(),Oy=wt.define(),mC=wt.define(),gC=wt.define(),Cw=wt.define(),Ew=wt.define(),yC=wt.define({combine:e=>e.some(t=>t)}),wC=wt.define({combine:e=>e.some(t=>t)}),$C=wt.define();class Pl{constructor(t,n,i,s,r,l=!1){this.range=t,this.y=n,this.x=i,this.yMargin=s,this.xMargin=r,this.isSnapshot=l}map(t){return t.empty?this:new Pl(this.range.map(t),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(t){return this.range.to<=t.doc.length?this:new Pl(lt.cursor(t.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const rf=_t.define({map:(e,t)=>e.map(t)}),xC=_t.define();function kn(e,t,n){let i=e.facet(pC);i.length?i[0](t):window.onerror&&window.onerror(String(t),n,void 0,void 0,t)||(n?console.error(n+":",t):console.error(t))}const Os=wt.define({combine:e=>e.length?e[0]:!0});let R6=0;const Ml=wt.define({combine(e){return e.filter((t,n)=>{for(let i=0;i<n;i++)if(e[i].plugin==t.plugin)return!1;return!0})}});class ke{constructor(t,n,i,s,r){this.id=t,this.create=n,this.domEventHandlers=i,this.domEventObservers=s,this.baseExtensions=r(this),this.extension=this.baseExtensions.concat(Ml.of({plugin:this,arg:void 0}))}of(t){return this.baseExtensions.concat(Ml.of({plugin:this,arg:t}))}static define(t,n){const{eventHandlers:i,eventObservers:s,provide:r,decorations:l}=n||{};return new ke(R6++,t,i,s,c=>{let u=[];return l&&u.push(tp.of(f=>{let p=f.plugin(c);return p?l(p):Tt.none})),r&&u.push(r(c)),u})}static fromClass(t,n){return ke.define((i,s)=>new t(i,s),n)}}class o0{constructor(t){this.spec=t,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(t){if(this.value){if(this.mustUpdate){let n=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(n)}catch(i){if(kn(n.state,i,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch{}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(t,this.spec.arg)}catch(n){kn(t.state,n,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(t){var n;if(!((n=this.value)===null||n===void 0)&&n.destroy)try{this.value.destroy()}catch(i){kn(t.state,i,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const bC=wt.define(),Dw=wt.define(),tp=wt.define(),vC=wt.define(),Tw=wt.define(),wu=wt.define(),SC=wt.define();function fv(e,t){let n=e.state.facet(SC);if(!n.length)return n;let i=n.map(r=>r instanceof Function?r(e):r),s=[];return Bt.spans(i,t.from,t.to,{point(){},span(r,l,c,u){let f=r-t.from,p=l-t.from,m=s;for(let g=c.length-1;g>=0;g--,u--){let y=c[g].spec.bidiIsolate,$;if(y==null&&(y=j6(t.text,f,p)),u>0&&m.length&&($=m[m.length-1]).to==f&&$.direction==y)$.to=p,m=$.inner;else{let b={from:f,to:p,direction:y,inner:[]};m.push(b),m=b.inner}}}}),s}const OC=wt.define();function Nw(e){let t=0,n=0,i=0,s=0;for(let r of e.state.facet(OC)){let l=r(e);l&&(l.left!=null&&(t=Math.max(t,l.left)),l.right!=null&&(n=Math.max(n,l.right)),l.top!=null&&(i=Math.max(i,l.top)),l.bottom!=null&&(s=Math.max(s,l.bottom)))}return{left:t,right:n,top:i,bottom:s}}const Cc=wt.define();class si{constructor(t,n,i,s){this.fromA=t,this.toA=n,this.fromB=i,this.toB=s}join(t){return new si(Math.min(this.fromA,t.fromA),Math.max(this.toA,t.toA),Math.min(this.fromB,t.fromB),Math.max(this.toB,t.toB))}addToSet(t){let n=t.length,i=this;for(;n>0;n--){let s=t[n-1];if(!(s.fromA>i.toA)){if(s.toA<i.fromA)break;i=i.join(s),t.splice(n-1,1)}}return t.splice(n,0,i),t}static extendWithRanges(t,n){if(n.length==0)return t;let i=[];for(let s=0,r=0,l=0;;){let c=s<t.length?t[s].fromB:1e9,u=r<n.length?n[r]:1e9,f=Math.min(c,u);if(f==1e9)break;let p=f+l,m=f,g=p;for(;;)if(r<n.length&&n[r]<=m){let y=n[r+1];r+=2,m=Math.max(m,y);for(let $=s;$<t.length&&t[$].fromB<=m;$++)l=t[$].toA-t[$].toB;g=Math.max(g,y+l)}else if(s<t.length&&t[s].fromB<=m){let y=t[s++];m=Math.max(m,y.toB),g=Math.max(g,y.toA),l=y.toA-y.toB}else break;i.push(new si(p,g,f,m))}return i}}class fd{constructor(t,n,i){this.view=t,this.state=n,this.transactions=i,this.flags=0,this.startState=t.state,this.changes=He.empty(this.startState.doc.length);for(let r of i)this.changes=this.changes.compose(r.changes);let s=[];this.changes.iterChangedRanges((r,l,c,u)=>s.push(new si(r,l,c,u))),this.changedRanges=s}static create(t,n,i){return new fd(t,n,i)}get viewportChanged(){return(this.flags&4)>0}get viewportMoved(){return(this.flags&8)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&18)>0}get focusChanged(){return(this.flags&1)>0}get docChanged(){return!this.changes.empty}get selectionSet(){return this.transactions.some(t=>t.selection)}get empty(){return this.flags==0&&this.transactions.length==0}}const _6=[];class $e{constructor(t,n,i=0){this.dom=t,this.length=n,this.flags=i,this.parent=null,t.cmTile=this}get breakAfter(){return this.flags&1}get children(){return _6}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(t){if(this.flags|=2,this.flags&4){this.flags&=-5;let n=this.domAttrs;n&&m6(this.dom,n)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(t){this.dom=t,t.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(t,n=this.posAtStart){let i=n;for(let s of this.children){if(s==t)return i;i+=s.length+s.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(t){return this.posBefore(t)+t.length}covers(t){return!0}coordsIn(t,n,i){return null}domPosFor(t,n){let i=Cr(this.dom),s=this.length?t>0:n>0;return new $i(this.parent.dom,i+(s?1:0),t==0||t==this.length)}markDirty(t){this.flags&=-3,t&&(this.flags|=4),this.parent&&this.parent.flags&2&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let t=this;t;t=t.parent)if(t instanceof np)return t;return null}static get(t){return t.cmTile}}class ep extends $e{constructor(t){super(t,0),this._children=[]}isComposite(){return!0}get children(){return this._children}get lastChild(){return this.children.length?this.children[this.children.length-1]:null}append(t){this.children.push(t),t.parent=this}sync(t){if(this.flags&2)return;super.sync(t);let n=this.dom,i=null,s,r=(t==null?void 0:t.node)==n?t:null,l=0;for(let c of this.children){if(c.sync(t),l+=c.length+c.breakAfter,s=i?i.nextSibling:n.firstChild,r&&s!=c.dom&&(r.written=!0),c.dom.parentNode==n)for(;s&&s!=c.dom;)s=dv(s);else n.insertBefore(c.dom,s);i=c.dom}for(s=i?i.nextSibling:n.firstChild,r&&s&&(r.written=!0);s;)s=dv(s);this.length=l}}function dv(e){let t=e.nextSibling;return e.parentNode.removeChild(e),t}class np extends ep{constructor(t,n){super(n),this.view=t}owns(t){for(;t;t=t.parent)if(t==this)return!0;return!1}isBlock(){return!0}nearest(t){for(;;){if(!t)return null;let n=$e.get(t);if(n&&this.owns(n))return n;t=t.parentNode}}blockTiles(t){for(let n=[],i=this,s=0,r=0;;)if(s==i.children.length){if(!n.length)return;i=i.parent,i.breakAfter&&r++,s=n.pop()}else{let l=i.children[s++];if(l instanceof Cs)n.push(s),i=l,s=0;else{let c=r+l.length,u=t(l,r);if(u!==void 0)return u;r=c+l.breakAfter}}}resolveBlock(t,n){let i,s=-1,r,l=-1;if(this.blockTiles((c,u)=>{let f=u+c.length;if(t>=u&&t<=f){if(c.isWidget()&&n>=-1&&n<=1){if(c.flags&32)return!0;c.flags&16&&(i=void 0)}(u<t||t==f&&(n<-1?c.length:c.covers(1)))&&(!i||!c.isWidget()&&i.isWidget())&&(i=c,s=t-u),(f>t||t==u&&(n>1?c.length:c.covers(-1)))&&(!r||!c.isWidget()&&r.isWidget())&&(r=c,l=t-u)}}),!i&&!r)throw new Error("No tile at position "+t);return i&&n<0||!r?{tile:i,offset:s}:{tile:r,offset:l}}}class Cs extends ep{constructor(t,n){super(t),this.wrapper=n}isBlock(){return!0}covers(t){return this.children.length?t<0?this.children[0].covers(-1):this.lastChild.covers(1):!1}get domAttrs(){return this.wrapper.attributes}static of(t,n){let i=new Cs(n||document.createElement(t.tagName),t);return n||(i.flags|=4),i}}class ia extends ep{constructor(t,n){super(t),this.attrs=n}isLine(){return!0}static start(t,n,i){let s=new ia(n||document.createElement("div"),t);return(!n||!i)&&(s.flags|=4),s}get domAttrs(){return this.attrs}resolveInline(t,n,i){let s=null,r=-1,l=null,c=-1;function u(p,m){for(let g=0,y=0;g<p.children.length&&y<=m;g++){let $=p.children[g],b=y+$.length;b>=m&&($.isComposite()?u($,m-y):(!l||l.isHidden&&(n>0&&!(l.flags&32)||i&&A6(l,$)))&&(b>m||$.flags&32)?(l=$,c=m-y):(y<m||$.flags&16&&!$.isHidden)&&(s=$,r=m-y)),y=b}}u(this,t);let f=(n<0?s:l)||s||l;return f?{tile:f,offset:f==s?r:c}:null}coordsIn(t,n,i){let s=this.resolveInline(t,n,!0);return s?s.tile.coordsIn(Math.max(0,s.offset),n,i):M6(this)}domIn(t,n){let i=this.resolveInline(t,n);if(i){let{tile:s,offset:r}=i;if(this.dom.contains(s.dom))return s.isText()?new $i(s.dom,Math.min(s.dom.nodeValue.length,r)):s.domPosFor(r,s.flags&16?1:s.flags&32?-1:n);let l=i.tile.parent,c=!1;for(let u of l.children){if(c)return new $i(u.dom,0);u==i.tile&&(c=!0)}}return new $i(this.dom,0)}}function M6(e){let t=e.dom.lastChild;if(!t)return e.dom.getBoundingClientRect();let n=Af(t);return n[n.length-1]||null}function A6(e,t){let n=e.coordsIn(0,1),i=t.coordsIn(0,1);return n&&i&&i.top<n.bottom}class Sn extends ep{constructor(t,n){super(t),this.mark=n}get domAttrs(){return this.mark.attrs}static of(t,n){let i=new Sn(n||document.createElement(t.tagName),t);return n||(i.flags|=4),i}}class fo extends $e{constructor(t,n){super(t,n.length),this.text=n}sync(t){this.flags&2||(super.sync(t),this.dom.nodeValue!=this.text&&(t&&t.node==this.dom&&(t.written=!0),this.dom.nodeValue=this.text))}isText(){return!0}toString(){return JSON.stringify(this.text)}coordsIn(t,n,i){let s=this.dom.nodeValue.length;t>s&&(t=s);let r=t,l=t,c=0;t==0&&n<0||t==s&&n>=0?gt.chrome||gt.gecko||(t?(r--,c=1):l<s&&(l++,c=-1)):n<0?r--:l<s&&l++;let u=Xc(this.dom,r,l).getClientRects();if(!u.length)return null;let f=u[(c?c<0:n>=0)?0:u.length-1];return gt.safari&&!c&&f.width==0&&(f=Array.prototype.find.call(u,p=>p.width)||f),i==null?f:hd(f,(c?c>0:n<0)==i)}static of(t,n){let i=new fo(n||document.createTextNode(t),t);return n||(i.flags|=2),i}}class No extends $e{constructor(t,n,i,s){super(t,n,s),this.widget=i}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(t){return this.flags&48?!1:(this.flags&(t<0?64:128))>0}coordsIn(t,n){return this.coordsInWidget(t,n,!1)}coordsInWidget(t,n,i){let s=this.widget.coordsAt(this.dom,t,n);if(s)return s;if(i)return hd(this.dom.getBoundingClientRect(),this.length?t==0:n<=0);{let r=this.dom.getClientRects(),l=null;if(!r.length)return null;let c=this.flags&16?!0:this.flags&32?!1:t>0;for(let u=c?r.length-1:0;l=r[u],!(t>0?u==0:u==r.length-1||l.top<l.bottom);u+=c?-1:1);return hd(l,!c)}}get overrideDOMText(){if(!this.length)return Zt.empty;let{root:t}=this;if(!t)return Zt.empty;let n=this.posAtStart;return t.view.state.doc.slice(n,n+this.length)}destroy(){super.destroy(),this.widget.destroy(this.dom)}static of(t,n,i,s,r){return r||(r=t.toDOM(n),t.editable||(r.contentEditable="false")),new No(r,i,t,s)}}class dd extends $e{constructor(t){let n=document.createElement("img");n.className="cm-widgetBuffer",n.setAttribute("aria-hidden","true"),super(n,0,t)}get isHidden(){return!0}get overrideDOMText(){return Zt.empty}coordsIn(t,n,i){let s=this.dom.getBoundingClientRect();return i==null?s:hd(s,n>0==i)}}class H6{constructor(t){this.index=0,this.beforeBreak=!1,this.parents=[],this.tile=t}advance(t,n,i){let{tile:s,index:r,beforeBreak:l,parents:c}=this;for(;t||n>0;)if(s.isComposite())if(l){if(!t)break;i&&i.break(),t--,l=!1}else if(r==s.children.length){if(!t&&!c.length)break;i&&i.leave(s),l=!!s.breakAfter,{tile:s,index:r}=c.pop(),r++}else{let u=s.children[r],f=u.breakAfter;(n>0?u.length<=t:u.length<t)&&(!i||i.skip(u,0,u.length)!==!1||!u.isComposite)?(l=!!f,r++,t-=u.length):(c.push({tile:s,index:r}),s=u,r=0,i&&u.isComposite()&&i.enter(u))}else if(r==s.length)l=!!s.breakAfter,{tile:s,index:r}=c.pop(),r++;else if(t){let u=Math.min(t,s.length-r);i&&i.skip(s,r,r+u),t-=u,r+=u}else break;return this.tile=s,this.index=r,this.beforeBreak=l,this}get root(){return this.parents.length?this.parents[0].tile:this.tile}}class z6{constructor(t,n,i,s){this.from=t,this.to=n,this.wrapper=i,this.rank=s}}class B6{constructor(t,n,i){this.cache=t,this.root=n,this.blockWrappers=i,this.curLine=null,this.lastBlock=null,this.afterWidget=null,this.pos=0,this.wrappers=[],this.wrapperPos=0}addText(t,n,i,s){var r;this.flushBuffer();let l=this.ensureMarks(n,i),c=l.lastChild;if(c&&c.isText()&&!(c.flags&8)&&c.length+t.length<512){this.cache.reused.set(c,2);let u=l.children[l.children.length-1]=new fo(c.dom,c.text+t);u.parent=l}else l.append(s||fo.of(t,(r=this.cache.find(fo))===null||r===void 0?void 0:r.dom));this.pos+=t.length,this.afterWidget=null}addComposition(t,n){let i=this.curLine;i.dom!=n.line.dom&&(i.setDOM(this.cache.reused.has(n.line)?l0(n.line.dom):n.line.dom),this.cache.reused.set(n.line,2));let s=i;for(let c=n.marks.length-1;c>=0;c--){let u=n.marks[c],f=s.lastChild;if(f instanceof Sn&&f.mark.eq(u.mark))f.dom!=u.dom&&f.setDOM(l0(u.dom)),s=f;else{if(this.cache.reused.get(u)){let m=$e.get(u.dom);m&&m.setDOM(l0(u.dom))}let p=Sn.of(u.mark,u.dom);s.append(p),s=p}this.cache.reused.set(u,2)}let r=$e.get(t.text);r&&this.cache.reused.set(r,2);let l=new fo(t.text,t.text.nodeValue);l.flags|=8,this.pos=t.range.toB,s.append(l)}addInlineWidget(t,n,i){let s=this.afterWidget&&t.flags&48&&(this.afterWidget.flags&48)==(t.flags&48);s||this.flushBuffer();let r=this.ensureMarks(n,i);!s&&!(t.flags&16)&&r.append(this.getBuffer(1)),r.append(t),this.pos+=t.length,this.afterWidget=t}addMark(t,n,i){this.flushBuffer(),this.ensureMarks(n,i).append(t),this.pos+=t.length,this.afterWidget=null}addBlockWidget(t){this.getBlockPos().append(t),this.pos+=t.length,this.lastBlock=t,this.endLine()}continueWidget(t){let n=this.afterWidget||this.lastBlock;n.length+=t,this.pos+=t}addLineStart(t,n){var i;t||(t=kC);let s=ia.start(t,n||((i=this.cache.find(ia))===null||i===void 0?void 0:i.dom),!!n);this.getBlockPos().append(this.lastBlock=this.curLine=s)}addLine(t){this.getBlockPos().append(t),this.pos+=t.length,this.lastBlock=t,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(t){this.blockPosCovered()||this.addLineStart(t)}ensureLine(t){this.curLine||this.addLineStart(t)}ensureMarks(t,n){var i;let s=this.curLine;for(let r=t.length-1;r>=0;r--){let l=t[r],c;if(n>0&&(c=s.lastChild)&&c instanceof Sn&&c.mark.eq(l))s=c,n--;else{let u=Sn.of(l,(i=this.cache.find(Sn,f=>f.mark.eq(l)))===null||i===void 0?void 0:i.dom);s.append(u),s=u,n=0}}return s}endLine(){if(this.curLine){this.flushBuffer();let t=this.curLine.lastChild;(!t||!pv(this.curLine,!1)||t.dom.nodeName!="BR"&&t.isWidget()&&!(gt.ios&&pv(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(a0,0,32)||new No(a0.toDOM(),0,a0,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let t=this.wrappers.length-1;t>=0;t--)this.wrappers[t].to<this.pos&&this.wrappers.splice(t,1);for(let t=this.blockWrappers;t.value&&t.from<=this.pos;t.next())if(t.to>=this.pos){let n=t.rank*102+t.value.rank,i=new z6(t.from,t.to,t.value,n),s=this.wrappers.length;for(;s>0&&(this.wrappers[s-1].rank-i.rank||this.wrappers[s-1].to-i.to)<0;)s--;this.wrappers.splice(s,0,i)}this.wrapperPos=this.pos}getBlockPos(){var t;this.updateBlockWrappers();let n=this.root;for(let i of this.wrappers){let s=n.lastChild;if(i.from<this.pos&&s instanceof Cs&&s.wrapper.eq(i.wrapper))n=s;else{let r=Cs.of(i.wrapper,(t=this.cache.find(Cs,l=>l.wrapper.eq(i.wrapper)))===null||t===void 0?void 0:t.dom);n.append(r),n=r}}return n}blockPosCovered(){let t=this.lastBlock;return t!=null&&!t.breakAfter&&(!t.isWidget()||(t.flags&160)>0)}getBuffer(t){let n=2|(t<0?16:32),i=this.cache.find(dd,void 0,1);return i&&(i.flags=n),i||new dd(n)}flushBuffer(){this.afterWidget&&!(this.afterWidget.flags&32)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}}class Y6{constructor(t){this.skipCount=0,this.text="",this.textOff=0,this.cursor=t.iter()}skip(t){this.textOff+t<=this.text.length?this.textOff+=t:(this.skipCount+=t-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(t){if(this.textOff==this.text.length){let{value:s,lineBreak:r,done:l}=this.cursor.next(this.skipCount);if(this.skipCount=0,l)throw new Error("Ran out of text content when drawing inline views");this.text=s;let c=this.textOff=Math.min(t,s.length);return r?null:s.slice(0,c)}let n=Math.min(this.text.length,this.textOff+t),i=this.text.slice(this.textOff,n);return this.textOff=n,i}}const pd=[No,ia,fo,Sn,dd,Cs,np];for(let e=0;e<pd.length;e++)pd[e].bucket=e;class G6{constructor(t){this.view=t,this.buckets=pd.map(()=>[]),this.index=pd.map(()=>0),this.reused=new Map}add(t){let n=t.constructor.bucket,i=this.buckets[n];i.length<6?i.push(t):i[this.index[n]=(this.index[n]+1)%6]=t}find(t,n,i=2){let s=t.bucket,r=this.buckets[s],l=this.index[s];for(let c=0;c<r.length;c++){let u=(c+l)%r.length,f=r[u];if((!n||n(f))&&!this.reused.has(f))return r.splice(u,1),u<l&&this.index[s]--,this.reused.set(f,i),f}return null}findWidget(t,n,i){let s=this.buckets[0];if(s.length)for(let r=0,l=0;;r++){if(r==s.length){if(l)return null;l=1,r=0}let c=s[r];if(!this.reused.has(c)&&(l==0?c.widget.compare(t):c.widget.constructor==t.constructor&&t.updateDOM(c.dom,this.view,c.widget)))return s.splice(r,1),r<this.index[0]&&this.index[0]--,c.widget==t&&c.length==n&&(c.flags&497)==i?(this.reused.set(c,1),c):(this.reused.set(c,2),new No(c.dom,n,t,c.flags&-498|i))}}reuse(t){return this.reused.set(t,1),t}maybeReuse(t,n=2){if(!this.reused.has(t))return this.reused.set(t,n),t.dom}clear(){for(let t=0;t<this.buckets.length;t++)this.buckets[t].length=this.index[t]=0}}class L6{constructor(t,n,i,s,r){this.view=t,this.decorations=s,this.disallowBlockEffectsFor=r,this.openWidget=!1,this.openMarks=0,this.cache=new G6(t),this.text=new Y6(t.state.doc),this.builder=new B6(this.cache,new np(t,t.contentDOM),Bt.iter(i)),this.cache.reused.set(n,2),this.old=new H6(n),this.reuseWalker={skip:(l,c,u)=>{if(this.cache.add(l),l.isComposite())return!1},enter:l=>this.cache.add(l),leave:()=>{},break:()=>{}}}run(t,n){let i=n&&this.getCompositionContext(n.text);for(let s=0,r=0,l=0;;){let c=l<t.length?t[l++]:null,u=c?c.fromA:this.old.root.length;if(u>s){let f=u-s;this.preserve(f,!l,!c),s=u,r+=f}if(!c)break;n&&c.fromA<=n.range.fromA&&c.toA>=n.range.toA?(this.forward(c.fromA,n.range.fromA,n.range.fromA<n.range.toA?1:-1),this.emit(r,n.range.fromB),this.builder.flushBuffer(),this.cache.clear(),this.builder.addComposition(n,i),this.text.skip(n.range.toB-n.range.fromB),this.forward(n.range.fromA,c.toA),this.emit(n.range.toB,c.toB)):(this.forward(c.fromA,c.toA),this.emit(r,c.toB)),r=c.toB,s=c.toA}return this.builder.curLine&&this.builder.endLine(),this.builder.root}preserve(t,n,i){let s=q6(this.old),r=this.openMarks;this.old.advance(t,i?1:-1,{skip:(l,c,u)=>{if(l.isWidget())if(this.openWidget)this.builder.continueWidget(u-c);else{let f=u>0||c<l.length?No.of(l.widget,this.view,u-c,l.flags&496,this.cache.maybeReuse(l)):this.cache.reuse(l);f.flags&256?(f.flags&=-2,this.builder.addBlockWidget(f)):(this.builder.ensureLine(null),this.builder.addInlineWidget(f,s,r),r=s.length)}else if(l.isText())this.builder.ensureLine(null),!c&&u==l.length&&!this.cache.reused.has(l)?this.builder.addText(l.text,s,r,this.cache.reuse(l)):(this.cache.add(l),this.builder.addText(l.text.slice(c,u),s,r)),r=s.length;else if(l.isLine())l.flags&=-2,this.cache.reused.set(l,1),this.builder.addLine(l);else if(l instanceof dd)this.cache.add(l);else if(l instanceof Sn)this.builder.ensureLine(null),this.builder.addMark(l,s,r),this.cache.reused.set(l,1),r=s.length;else return!1;this.openWidget=!1},enter:l=>{l.isLine()?this.builder.addLineStart(l.attrs,this.cache.maybeReuse(l)):(this.cache.add(l),l instanceof Sn&&s.unshift(l.mark)),this.openWidget=!1},leave:l=>{l.isLine()?s.length&&(s.length=r=0):l instanceof Sn&&(s.shift(),r=Math.min(r,s.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(t)}emit(t,n){let i=null,s=this.builder,r=-1,l=Bt.spans(this.decorations,t,n,{point:(c,u,f,p,m,g)=>{if(f instanceof Do){if(this.disallowBlockEffectsFor[g]){if(f.block)throw new RangeError("Block decorations may not be specified via plugins");if(u>this.view.state.doc.lineAt(c).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}if(r=p.length,m>p.length)s.continueWidget(u-c);else{let y=f.widget||(f.block?sa.block:sa.inline),$=Q6(f),b=this.cache.findWidget(y,u-c,$)||No.of(y,this.view,u-c,$);f.block?(f.startSide>0&&s.addLineStartIfNotCovered(i),s.addBlockWidget(b)):(s.ensureLine(i),s.addInlineWidget(b,p,m))}i=null}else i=P6(i,f);u>c&&this.text.skip(u-c)},span:(c,u,f,p)=>{for(let m=c;m<u;){let g=this.text.next(Math.min(512,u-m));g==null?(s.addLineStartIfNotCovered(i),s.addBreak(),m++):(s.ensureLine(i),s.addText(g,f,m==c?p:f.length),m+=g.length),i=null}r=f.length}});r>-1&&(this.openWidget=l>r),this.openWidget||s.addLineStartIfNotCovered(i),this.openMarks=l}forward(t,n,i=1){n-t<=10?this.old.advance(n-t,i,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(n-t-10,-1),this.old.advance(5,i,this.reuseWalker))}getCompositionContext(t){let n=[],i=null;for(let s=t.parentNode;;s=s.parentNode){let r=$e.get(s);if(s==this.view.contentDOM)break;r instanceof Sn?n.push(r):r!=null&&r.isLine()?i=r:r instanceof Cs||(s.nodeName=="DIV"&&!i&&s!=this.view.contentDOM?i=new ia(s,kC):i||n.push(Sn.of(new gu({tagName:s.nodeName.toLowerCase(),attributes:g6(s)}),s)))}return{line:i,marks:n}}}function pv(e,t){let n=i=>{for(let s of i.children)if((t?s.isText():s.length)||n(s))return!0;return!1};return n(e)}function Q6(e){let t=e.isReplace?(e.startSide<0?64:0)|(e.endSide>0?128:0):e.startSide>0?32:16;return e.block&&(t|=256),t}const kC={class:"cm-line"};function P6(e,t){let n=t.spec.attributes,i=t.spec.class;return!n&&!i||(e||(e={class:"cm-line"}),n&&Sw(n,e),i&&(e.class+=" "+i)),e}function q6(e){let t=[];for(let n=e.parents.length;n>1;n--){let i=n==e.parents.length?e.tile:e.parents[n].tile;i instanceof Sn&&t.push(i.mark)}return t}function l0(e){let t=$e.get(e);return t&&t.setDOM(e.cloneNode()),e}class sa extends _s{constructor(t){super(),this.tag=t}eq(t){return t.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(t){return t.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}}sa.inline=new sa("span");sa.block=new sa("div");const a0=new class extends _s{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}};class mv{constructor(t){this.view=t,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=Tt.none,this.lastCompositionAfterCursor=!1,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.updateDeco(),this.tile=new np(t,t.contentDOM),this.updateInner([new si(0,0,0,t.state.doc.length)],null)}update(t){var n;let i=t.changedRanges;this.minWidth>0&&i.length&&(i.every(({fromA:p,toA:m})=>m<this.minWidthFrom||p>this.minWidthTo)?(this.minWidthFrom=t.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=t.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(t);let s=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((n=this.domChanged)===null||n===void 0)&&n.newSel?s=this.domChanged.newSel.head:!J6(t.changes,this.hasComposition)&&!t.selectionSet&&(s=t.state.selection.main.head));let r=s>-1?Z6(this.view,t.changes,s):null;if(this.domChanged=null,this.hasComposition){let{from:p,to:m}=this.hasComposition;i=new si(p,m,t.changes.mapPos(p,-1),t.changes.mapPos(m,1)).addToSet(i.slice())}this.hasComposition=r?{from:r.range.fromB,to:r.range.toB}:null,(gt.ie||gt.chrome)&&!r&&t&&t.state.doc.lines!=t.startState.doc.lines&&(this.forceSelection=!0);let l=this.decorations,c=this.blockWrappers;this.updateDeco();let u=F6(l,this.decorations,t.changes);u.length&&(i=si.extendWithRanges(i,u));let f=X6(c,this.blockWrappers,t.changes);return f.length&&(i=si.extendWithRanges(i,f)),r&&!i.some(p=>p.fromA<=r.range.fromA&&p.toA>=r.range.toA)&&(i=r.range.addToSet(i.slice())),this.tile.flags&2&&i.length==0?!1:(this.updateInner(i,r),t.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(t,n){this.view.viewState.mustMeasureContent=!0;let{observer:i}=this.view;i.ignore(()=>{if(n||t.length){let l=this.tile,c=new L6(this.view,l,this.blockWrappers,this.decorations,this.dynamicDecorationMap);n&&$e.get(n.text)&&c.cache.reused.set($e.get(n.text),2),this.tile=c.run(t,n),ky(l,c.cache.reused)}this.tile.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.tile.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let r=gt.chrome||gt.ios?{node:i.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(r),r&&(r.written||i.selectionRange.focusNode!=r.node||!this.tile.dom.contains(r.node))&&(this.forceSelection=!0),this.tile.dom.style.height=""});let s=[];if(this.view.viewport.from||this.view.viewport.to<this.view.state.doc.length)for(let r of this.tile.children)r.isWidget()&&r.widget instanceof c0&&s.push(r.dom);i.updateGaps(s)}updateEditContextFormatting(t){this.editContextFormatting=this.editContextFormatting.map(t.changes);for(let n of t.transactions)for(let i of n.effects)i.is(xC)&&(this.editContextFormatting=i.value)}updateSelection(t=!1,n=!1){(t||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let{dom:i}=this.tile,s=this.view.root.activeElement,r=s==i,l=!r&&!(this.view.state.facet(Os)||i.tabIndex>-1)&&_c(i,this.view.observer.selectionRange)&&!(s&&i.contains(s));if(!(r||n||l))return;let c=this.forceSelection;this.forceSelection=!1;let u=this.view.state.selection.main,f,p;if(u.empty?p=f=this.inlineDOMNearPos(u.anchor,u.assoc||1):(p=this.inlineDOMNearPos(u.head,u.head==u.from?1:-1),f=this.inlineDOMNearPos(u.anchor,u.anchor==u.from?1:-1)),gt.gecko&&u.empty&&!this.hasComposition&&W6(f)){let g=document.createTextNode("");this.view.observer.ignore(()=>f.node.insertBefore(g,f.node.childNodes[f.offset]||null)),f=p=new $i(g,0),c=!0}let m=this.view.observer.selectionRange;(c||!m.focusNode||(!Mc(f.node,f.offset,m.anchorNode,m.anchorOffset)||!Mc(p.node,p.offset,m.focusNode,m.focusOffset))&&!this.suppressWidgetCursorChange(m,u))&&(this.view.observer.ignore(()=>{gt.android&&gt.chrome&&i.contains(m.focusNode)&&K6(m.focusNode,i)&&(i.blur(),i.focus({preventScroll:!0}));let g=Vc(this.view.root);if(g)if(u.empty){if(gt.gecko){let y=U6(f.node,f.offset);if(y&&y!=3){let $=(y==1?sC:rC)(f.node,f.offset);$&&(f=new $i($.node,$.offset))}}g.collapse(f.node,f.offset),u.bidiLevel!=null&&g.caretBidiLevel!==void 0&&(g.caretBidiLevel=u.bidiLevel)}else if(g.extend){g.collapse(f.node,f.offset);try{g.extend(p.node,p.offset)}catch{}}else{let y=document.createRange();u.anchor>u.head&&([f,p]=[p,f]),y.setEnd(p.node,p.offset),y.setStart(f.node,f.offset),g.removeAllRanges(),g.addRange(y)}l&&this.view.root.activeElement==i&&(i.blur(),s&&s.focus())}),this.view.observer.setSelectionRange(f,p)),this.impreciseAnchor=f.precise?null:new $i(m.anchorNode,m.anchorOffset),this.impreciseHead=p.precise?null:new $i(m.focusNode,m.focusOffset)}suppressWidgetCursorChange(t,n){return this.hasComposition&&n.empty&&Mc(t.focusNode,t.focusOffset,t.anchorNode,t.anchorOffset)&&this.posFromDOM(t.focusNode,t.focusOffset)==n.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:t}=this,n=t.state.selection.main,i=Vc(t.root),{anchorNode:s,anchorOffset:r}=t.observer.selectionRange;if(!i||!n.empty||!n.assoc||!i.modify)return;let l=this.lineAt(n.head,n.assoc);if(!l)return;let c=l.posAtStart;if(n.head==c||n.head==c+l.length)return;let u=this.coordsAt(n.head,-1),f=this.coordsAt(n.head,1);if(!u||!f||u.bottom>f.top)return;let p=this.domAtPos(n.head+n.assoc,n.assoc);i.collapse(p.node,p.offset),i.modify("move",n.assoc<0?"forward":"backward","lineboundary"),t.observer.readSelectionRange();let m=t.observer.selectionRange;t.docView.posFromDOM(m.anchorNode,m.anchorOffset)!=n.from&&i.collapse(s,r)}posFromDOM(t,n){let i=this.tile.nearest(t);if(!i)return this.tile.dom.compareDocumentPosition(t)&2?0:this.view.state.doc.length;let s=i.posAtStart;if(i.isComposite()){let r;if(t==i.dom)r=i.dom.childNodes[n];else{let l=Ns(t)==0?0:n==0?-1:1;for(;;){let c=t.parentNode;if(c==i.dom)break;l==0&&c.firstChild!=c.lastChild&&(t==c.firstChild?l=-1:l=1),t=c}l<0?r=t:r=t.nextSibling}if(r==i.dom.firstChild)return s;for(;r&&!$e.get(r);)r=r.nextSibling;if(!r)return s+i.length;for(let l=0,c=s;;l++){let u=i.children[l];if(u.dom==r)return c;c+=u.length+u.breakAfter}}else return i.isText()?t==i.dom?s+n:s+(n?i.length:0):s}domAtPos(t,n){let{tile:i,offset:s}=this.tile.resolveBlock(t,n);return i.isWidget()?i.domPosFor(s,n):i.domIn(s,n)}inlineDOMNearPos(t,n){let i,s=-1,r=!1,l,c=-1,u=!1;return this.tile.blockTiles((f,p)=>{if(f.isWidget()){if(f.flags&32&&p>=t)return!0;f.flags&16&&(r=!0)}else{let m=p+f.length;if(p<=t&&(i=f,s=t-p,r=m<t),m>=t&&!l&&(l=f,c=t-p,u=p>t),p>t&&l)return!0}}),!i&&!l?this.domAtPos(t,n):(r&&l?i=null:u&&i&&(l=null),i&&n<0||!l?i.domIn(s,n):l.domIn(c,n))}coordsAt(t,n,i){let{tile:s,offset:r}=this.tile.resolveBlock(t,n);return s.isWidget()?s.widget instanceof c0?null:s.coordsInWidget(r,n,!0):s.coordsIn(r,n,i)}lineAt(t,n){let{tile:i}=this.tile.resolveBlock(t,n);return i.isLine()?i:null}coordsForChar(t){let{tile:n,offset:i}=this.tile.resolveBlock(t,1);if(!n.isLine())return null;function s(r,l){if(r.isComposite())for(let c of r.children){if(c.length>=l){let u=s(c,l);if(u)return u}if(l-=c.length,l<0)break}else if(r.isText()&&l<r.length){let c=Ge(r.text,l);if(c==l)return null;let u=Xc(r.dom,l,c).getClientRects();for(let f=0;f<u.length;f++){let p=u[f];if(f==u.length-1||p.top<p.bottom&&p.left<p.right)return p}}return null}return s(n,i)}measureVisibleLineHeights(t){let n=[],{from:i,to:s}=t,r=this.view.contentDOM.clientWidth,l=r>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,c=-1,u=this.view.textDirection==oe.LTR,f=0,p=(m,g,y)=>{for(let $=0;$<m.children.length&&!(g>s);$++){let b=m.children[$],S=g+b.length,O=b.dom.getBoundingClientRect(),{height:E}=O;if(y&&!$&&(f+=O.top-y.top),b instanceof Cs)S>i&&p(b,g,O);else if(g>=i&&(f>0&&n.push(-f),n.push(E+f),f=0,l)){let k=b.dom.lastChild,D=k?Af(k):[];if(D.length){let _=D[D.length-1],A=u?_.right-O.left:O.right-_.left;A>c&&(c=A,this.minWidth=r,this.minWidthFrom=g,this.minWidthTo=S)}}y&&$==m.children.length-1&&(f+=y.bottom-O.bottom),g=S+b.breakAfter}};return p(this.tile,0,null),n}textDirectionAt(t){let{tile:n}=this.tile.resolveBlock(t,1);return getComputedStyle(n.dom).direction=="rtl"?oe.RTL:oe.LTR}measureTextSize(){let t=this.tile.blockTiles(l=>{if(l.isLine()&&l.children.length&&l.length<=20){let c=0,u;for(let f of l.children){if(!f.isText()||/[^ -~]/.test(f.text))return;let p=Af(f.dom);if(p.length!=1)return;c+=p[0].width,u=p[0].height}if(c)return{lineHeight:l.dom.getBoundingClientRect().height,charWidth:c/l.length,textHeight:u}}});if(t)return t;let n=document.createElement("div"),i,s,r;return n.className="cm-line",n.style.width="99999px",n.style.position="absolute",n.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(n);let l=Af(n.firstChild)[0];i=n.getBoundingClientRect().height,s=l&&l.width?l.width/27:7,r=l&&l.height?l.height:i,n.remove()}),{lineHeight:i,charWidth:s,textHeight:r}}computeBlockGapDeco(){let t=[],n=this.view.viewState;for(let i=0,s=0;;s++){let r=s==n.viewports.length?null:n.viewports[s],l=r?r.from-1:this.view.state.doc.length;if(l>i){let c=(n.lineBlockAt(l).bottom-n.lineBlockAt(i).top)/this.view.scaleY;t.push(Tt.replace({widget:new c0(c),block:!0,inclusive:!0,isBlockGap:!0}).range(i,l))}if(!r)break;i=r.to+1}return Tt.set(t)}updateDeco(){let t=1,n=this.view.state.facet(tp).map(r=>(this.dynamicDecorationMap[t++]=typeof r=="function")?r(this.view):r),i=!1,s=this.view.state.facet(Tw).map((r,l)=>{let c=typeof r=="function";return c&&(i=!0),c?r(this.view):r});for(s.length&&(this.dynamicDecorationMap[t++]=i,n.push(Bt.join(s))),this.decorations=[this.editContextFormatting,...n,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];t<this.decorations.length;)this.dynamicDecorationMap[t++]=!1;this.blockWrappers=this.view.state.facet(vC).map(r=>typeof r=="function"?r(this.view):r)}scrollIntoView(t){if(t.isSnapshot){let f=this.view.viewState.lineBlockAt(t.range.head);this.view.scrollDOM.scrollTop=f.top-t.yMargin,this.view.scrollDOM.scrollLeft=t.xMargin;return}for(let f of this.view.state.facet($C))try{if(f(this.view,t.range,t))return!0}catch(p){kn(this.view.state,p,"scroll handler")}let{range:n}=t,i=this.coordsAt(n.head,n.assoc||(n.head>n.anchor?-1:1)),s;if(!i)return;!n.empty&&(s=this.coordsAt(n.anchor,n.anchor>n.head?-1:1))&&(i={left:Math.min(i.left,s.left),top:Math.min(i.top,s.top),right:Math.max(i.right,s.right),bottom:Math.max(i.bottom,s.bottom)});let r=Nw(this.view),l={left:i.left-r.left,top:i.top-r.top,right:i.right+r.right,bottom:i.bottom+r.bottom},{offsetWidth:c,offsetHeight:u}=this.view.scrollDOM;if($6(this.view.scrollDOM,l,n.head<n.anchor?-1:1,t.x,t.y,Math.max(Math.min(t.xMargin,c),-c),Math.max(Math.min(t.yMargin,u),-u),this.view.textDirection==oe.LTR),window.visualViewport&&window.innerHeight-window.visualViewport.height>1&&(i.top>window.pageYOffset+window.visualViewport.offsetTop+window.visualViewport.height||i.bottom<window.pageYOffset+window.visualViewport.offsetTop)){let f=this.view.docView.lineAt(n.head,1);f&&f.dom.scrollIntoView({block:"nearest"})}}lineHasWidget(t){let n=i=>i.isWidget()||i.children.some(n);return n(this.tile.resolveBlock(t,1).tile)}destroy(){ky(this.tile)}}function ky(e,t){let n=t==null?void 0:t.get(e);if(n!=1){n==null&&e.destroy();for(let i of e.children)ky(i,t)}}function W6(e){return e.node.nodeType==1&&e.node.firstChild&&(e.offset==0||e.node.childNodes[e.offset-1].contentEditable=="false")&&(e.offset==e.node.childNodes.length||e.node.childNodes[e.offset].contentEditable=="false")}function CC(e,t){let n=e.observer.selectionRange;if(!n.focusNode)return null;let i=sC(n.focusNode,n.focusOffset),s=rC(n.focusNode,n.focusOffset),r=i||s;if(s&&i&&s.node!=i.node){let c=$e.get(s.node);if(!c||c.isText()&&c.text!=s.node.nodeValue)r=s;else if(e.docView.lastCompositionAfterCursor){let u=$e.get(i.node);!u||u.isText()&&u.text!=i.node.nodeValue||(r=s)}}if(e.docView.lastCompositionAfterCursor=r!=i,!r)return null;let l=t-r.offset;return{from:l,to:l+r.node.nodeValue.length,node:r.node}}function Z6(e,t,n){let i=CC(e,n);if(!i)return null;let{node:s,from:r,to:l}=i,c=s.nodeValue;if(/[\n\r]/.test(c)||e.state.doc.sliceString(i.from,i.to)!=c)return null;let u=t.invertedDesc;return{range:new si(u.mapPos(r),u.mapPos(l),r,l),text:s}}function U6(e,t){return e.nodeType!=1?0:(t&&e.childNodes[t-1].contentEditable=="false"?1:0)|(t<e.childNodes.length&&e.childNodes[t].contentEditable=="false"?2:0)}let I6=class{constructor(){this.changes=[]}compareRange(t,n){Ll(t,n,this.changes)}comparePoint(t,n){Ll(t,n,this.changes)}boundChange(t){Ll(t,t,this.changes)}};function F6(e,t,n){let i=new I6;return Bt.compare(e,t,n,i),i.changes}class V6{constructor(){this.changes=[]}compareRange(t,n){Ll(t,n,this.changes)}comparePoint(){}boundChange(t){Ll(t,t,this.changes)}}function X6(e,t,n){let i=new V6;return Bt.compare(e,t,n,i),i.changes}function K6(e,t){for(let n=e;n&&n!=t;n=n.assignedSlot||n.parentNode)if(n.nodeType==1&&n.contentEditable=="false")return!0;return!1}function J6(e,t){let n=!1;return t&&e.iterChangedRanges((i,s)=>{i<t.to&&s>t.from&&(n=!0)}),n}class c0 extends _s{constructor(t){super(),this.height=t}toDOM(){let t=document.createElement("div");return t.className="cm-gap",this.updateDOM(t),t}eq(t){return t.height==this.height}updateDOM(t){return t.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}function tB(e,t,n=1){let i=e.charCategorizer(t),s=e.doc.lineAt(t),r=t-s.from;if(s.length==0)return lt.cursor(t);r==0?n=1:r==s.length&&(n=-1);let l=r,c=r;n<0?l=Ge(s.text,r,!1):c=Ge(s.text,r);let u=i(s.text.slice(l,c));for(;l>0;){let f=Ge(s.text,l,!1);if(i(s.text.slice(f,l))!=u)break;l=f}for(;c<s.length;){let f=Ge(s.text,c);if(i(s.text.slice(c,f))!=u)break;c=f}return lt.undirectionalRange(l+s.from,c+s.from)}function eB(e,t,n,i,s){let r=Math.round((i-t.left)*e.defaultCharacterWidth);if(e.lineWrapping&&n.height>e.defaultLineHeight*1.5){let c=e.viewState.heightOracle.textHeight,u=Math.floor((s-n.top-(e.defaultLineHeight-c)*.5)/c);r+=u*e.viewState.heightOracle.lineLength}let l=e.state.sliceDoc(n.from,n.to);return n.from+dy(l,r,e.state.tabSize)}function Cy(e,t,n){let i=e.lineBlockAt(t);if(Array.isArray(i.type)){let s;for(let r of i.type){if(r.from>t)break;if(!(r.to<t)){if(r.from<t&&r.to>t)return r;(!s||r.type==Ue.Text&&(s.type!=r.type||(n<0?r.from<t:r.to>t)))&&(s=r)}}return s||i}return i}function nB(e,t,n,i){let s=Cy(e,t.head,t.assoc||-1),r=!i||s.type!=Ue.Text||!(e.lineWrapping||s.widgetLineBreaks)?null:e.coordsAtPos(t.assoc<0&&t.head>s.from?t.head-1:t.head);if(r){let l=e.dom.getBoundingClientRect(),c=e.textDirectionAt(s.from),u=e.posAtCoords({x:n==(c==oe.LTR)?l.right-1:l.left+1,y:(r.top+r.bottom)/2});if(u!=null)return lt.cursor(u,n?-1:1)}return lt.cursor(n?s.to:s.from,n?-1:1)}function gv(e,t,n,i){let s=e.state.doc.lineAt(t.head),r=e.bidiSpans(s),l=e.textDirectionAt(s.from);for(let c=t,u=null;;){let f=N6(s,r,l,c,n),p=uC;if(!f){if(s.number==(n?e.state.doc.lines:1))return c;p=`
265
+ `,s=e.state.doc.line(s.number+(n?1:-1)),r=e.bidiSpans(s),f=e.visualLineSide(s,!n)}if(u){if(!u(p))return c}else{if(!i)return f;u=i(p)}c=f}}function iB(e,t,n){let i=e.state.charCategorizer(t),s=i(n);return r=>{let l=i(r);return s==pe.Space&&(s=l),s==l}}function sB(e,t,n,i){let s=t.head,r=n?1:-1;if(s==(n?e.state.doc.length:0))return lt.cursor(s,t.assoc);let l=t.goalColumn,c,u=e.contentDOM.getBoundingClientRect(),f=e.coordsAtPos(s,t.assoc||((t.empty?n:t.head==t.from)?1:-1)),p=e.documentTop;if(f)l==null&&(l=f.left-u.left),c=r<0?f.top:f.bottom;else{let $=e.viewState.lineBlockAt(s);l==null&&(l=Math.min(u.right-u.left,e.defaultCharacterWidth*(s-$.from))),c=(r<0?$.top:$.bottom)+p}let m=u.left+l,g=e.viewState.heightOracle.textHeight>>1,y=i??g;for(let $=0;;$+=g){let b=c+(y+$)*r,S=Ey(e,{x:m,y:b},!1,r);if(n?b>u.bottom:b<u.top)return lt.cursor(S.pos,S.assoc);let O=e.coordsAtPos(S.pos,S.assoc),E=O?(O.top+O.bottom)/2:0;if(!O||(n?E>c:E<c))return lt.cursor(S.pos,S.assoc,void 0,l)}}function Ac(e,t,n){for(;;){let i=0;for(let s of e)s.between(t-1,t+1,(r,l,c)=>{if(t>r&&t<l){let u=i||n||(t-r<l-t?-1:1);t=u<0?r:l,i=u}});if(!i)return t}}function EC(e,t){let n=null;for(let i=0;i<t.ranges.length;i++){let s=t.ranges[i],r=null;if(s.empty){let l=Ac(e,s.from,0);l!=s.from&&(r=lt.cursor(l,-1))}else{let l=Ac(e,s.from,-1),c=Ac(e,s.to,1);(l!=s.from||c!=s.to)&&(s.undirectional?r=lt.undirectionalRange(s.from,s.to):r=lt.range(s.from==s.anchor?l:c,s.from==s.head?l:c))}r&&(n||(n=t.ranges.slice()),n[i]=r)}return n?lt.create(n,t.mainIndex):t}function u0(e,t,n){let i=Ac(e.state.facet(wu).map(s=>s(e)),n.from,t.head>n.from?-1:1);return i==n.from?n:lt.cursor(i,i<n.from?1:-1)}class Gi{constructor(t,n){this.pos=t,this.assoc=n}}function Ey(e,t,n,i){let s=e.contentDOM.getBoundingClientRect(),r=s.top+e.viewState.paddingTop,{x:l,y:c}=t,u=c-r,f;for(;;){if(u<0)return new Gi(0,1);if(u>e.viewState.docHeight)return new Gi(e.state.doc.length,-1);if(f=e.elementAtHeight(u),i==null)break;if(f.type==Ue.Text){if(i<0?f.to<e.viewport.from:f.from>e.viewport.to)break;let g=e.docView.coordsAt(i<0?f.from:f.to,i>0?-1:1);if(g&&(i<0?g.top<=u+r:g.bottom>=u+r))break}let m=e.viewState.heightOracle.textHeight/2;u=i>0?f.bottom+m:f.top-m}if(e.viewport.from>=f.to||e.viewport.to<=f.from){if(n)return null;if(f.type==Ue.Text){let m=eB(e,s,f,l,c);return new Gi(m,m==f.from?1:-1)}}if(f.type!=Ue.Text)return u<(f.top+f.bottom)/2?new Gi(f.from,1):new Gi(f.to,-1);let p=e.docView.lineAt(f.from,2);return(!p||p.length!=f.length)&&(p=e.docView.lineAt(f.from,-2)),new rB(e,l,c,e.textDirectionAt(f.from)).scanTile(p,f.from)}class rB{constructor(t,n,i,s){this.view=t,this.x=n,this.y=i,this.baseDir=s,this.line=null,this.spans=null}bidiSpansAt(t){return(!this.line||this.line.from>t||this.line.to<t)&&(this.line=this.view.state.doc.lineAt(t),this.spans=this.view.bidiSpans(this.line)),this}baseDirAt(t,n){let{line:i,spans:s}=this.bidiSpansAt(t);return s[Li.find(s,t-i.from,-1,n)].level==this.baseDir}dirAt(t,n){let{line:i,spans:s}=this.bidiSpansAt(t);return s[Li.find(s,t-i.from,-1,n)].dir}bidiIn(t,n){let{spans:i,line:s}=this.bidiSpansAt(t);return i.length>1||i.length&&(i[0].level!=this.baseDir||i[0].to+s.from<n)}scan(t,n,i=!1){let s=0,r=t.length-1,l=new Set,c=this.bidiIn(t[0],t[r]),u,f,p=-1,m=1e9,g;t:for(;s<r;){let $=r-s,b=s+r>>1;e:if(l.has(b)){let O=s+Math.floor(Math.random()*$);for(let E=0;E<$;E++){if(!l.has(O)){b=O;break e}O++,O==r&&(O=s)}break t}l.add(b);let S=n(b);if(S)for(let O=0;O<S.length;O++){let E=S[O],k=0;if(!(E.width==0&&S.length>1)){if(E.bottom<this.y)(!u||u.bottom<E.bottom)&&(u=E),k=1;else if(E.top>this.y)(!f||f.top>E.top)&&(f=E),k=-1;else{let D=E.left>this.x?this.x-E.left:E.right<this.x?this.x-E.right:0,_=Math.abs(D);_<m&&(p=b,m=_,g=E),D&&(k=D<0==(this.baseDir==oe.LTR)?-1:1)}k==-1&&(!c||this.baseDirAt(t[b],1))?r=b:k==1&&(!c||this.baseDirAt(t[b+1],-1))&&(s=b+1)}}}if(!g){if(!f&&!u)return{i:t[0],after:!1};let $=u&&(!f||this.y-u.bottom<f.top-this.y)?u:f;return this.y=($.top+$.bottom)/2,this.scan(t,n,!0)}if(m&&!i){let{top:$,bottom:b}=g;if(u&&u.bottom>($+$+b)/3)return this.y=u.bottom-1,this.scan(t,n,!0);if(f&&f.top<($+b+b)/3)return this.y=f.top+1,this.scan(t,n,!0)}let y=(c?this.dirAt(t[p],1):this.baseDir)==oe.LTR;return{i:p,after:this.x>(g.left+g.right)/2==y}}scanText(t,n){let i=[];for(let r=0;r<t.length;r=Ge(t.text,r))i.push(n+r);i.push(n+t.length);let s=this.scan(i,r=>{let l=i[r]-n,c=i[r+1]-n;return Xc(t.dom,l,c).getClientRects()});return s.after?new Gi(i[s.i+1],-1):new Gi(i[s.i],1)}scanTile(t,n){if(!t.length)return new Gi(n,1);if(t.children.length==1){let c=t.children[0];if(c.isText())return this.scanText(c,n);if(c.isComposite())return this.scanTile(c,n)}let i=[n];for(let c=0,u=n;c<t.children.length;c++)i.push(u+=t.children[c].length);let s=this.scan(i,c=>{let u=t.children[c];return u.flags&48?null:(u.dom.nodeType==1?u.dom:Xc(u.dom,0,u.length)).getClientRects()}),r=t.children[s.i],l=i[s.i];return r.isText()?this.scanText(r,l):r.isComposite()?this.scanTile(r,l):s.after?new Gi(i[s.i+1],-1):new Gi(l,1)}}const Tl="￿";class oB{constructor(t,n){this.points=t,this.view=n,this.text="",this.lineSeparator=n.state.facet(Wt.lineSeparator)}append(t){this.text+=t}lineBreak(){this.text+=Tl}readRange(t,n){if(!t)return this;let i=t.parentNode;for(let s=t;;){this.findPointBefore(i,s);let r=this.text.length;this.readNode(s);let l=$e.get(s),c=s.nextSibling;if(c==n){l!=null&&l.breakAfter&&!c&&i!=this.view.contentDOM&&this.lineBreak();break}let u=$e.get(c);(l&&u?l.breakAfter:(l?l.breakAfter:ud(s))||ud(c)&&(s.nodeName!="BR"||l!=null&&l.isWidget())&&this.text.length>r)&&!aB(c,n)&&this.lineBreak(),s=c}return this.findPointBefore(i,n),this}readTextNode(t){let n=t.nodeValue;for(let i of this.points)i.node==t&&(i.pos=this.text.length+Math.min(i.offset,n.length));for(let i=0,s=this.lineSeparator?null:/\r\n?|\n/g;;){let r=-1,l=1,c;if(this.lineSeparator?(r=n.indexOf(this.lineSeparator,i),l=this.lineSeparator.length):(c=s.exec(n))&&(r=c.index,l=c[0].length),this.append(n.slice(i,r<0?n.length:r)),r<0)break;if(this.lineBreak(),l>1)for(let u of this.points)u.node==t&&u.pos>this.text.length&&(u.pos-=l-1);i=r+l}}readNode(t){let n=$e.get(t),i=n&&n.overrideDOMText;if(i!=null){this.findPointInside(t,i.length);for(let s=i.iter();!s.next().done;)s.lineBreak?this.lineBreak():this.append(s.value)}else t.nodeType==3?this.readTextNode(t):t.nodeName=="BR"?t.nextSibling&&this.lineBreak():t.nodeType==1&&this.readRange(t.firstChild,null)}findPointBefore(t,n){for(let i of this.points)i.node==t&&t.childNodes[i.offset]==n&&(i.pos=this.text.length)}findPointInside(t,n){for(let i of this.points)(t.nodeType==3?i.node==t:t.contains(i.node))&&(i.pos=this.text.length+(lB(t,i.node,i.offset)?n:0))}}function lB(e,t,n){for(;;){if(!t||n<Ns(t))return!1;if(t==e)return!0;n=Cr(t)+1,t=t.parentNode}}function aB(e,t){let n;for(;!(e==t||!e);e=e.nextSibling){let i=$e.get(e);if(!(i!=null&&i.isWidget()))return!1;i&&(n||(n=[])).push(i)}if(n)for(let i of n){let s=i.overrideDOMText;if(s!=null&&s.length)return!1}return!0}class yv{constructor(t,n){this.node=t,this.offset=n,this.pos=-1}}class cB{constructor(t,n,i,s){this.typeOver=s,this.bounds=null,this.text="",this.domChanged=n>-1;let{impreciseHead:r,impreciseAnchor:l}=t.docView,c=t.state.selection;if(t.state.readOnly&&n>-1)this.newSel=null;else if(n>-1&&(this.bounds=DC(t.docView.tile,n,i,0))){let u=r||l?[]:hB(t),f=new oB(u,t);f.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=f.text,this.newSel=fB(u,this.bounds.from)}else{let u=t.observer.selectionRange,f=r&&r.node==u.focusNode&&r.offset==u.focusOffset||!xy(t.contentDOM,u.focusNode)?c.main.head:t.docView.posFromDOM(u.focusNode,u.focusOffset),p=l&&l.node==u.anchorNode&&l.offset==u.anchorOffset||!xy(t.contentDOM,u.anchorNode)?c.main.anchor:t.docView.posFromDOM(u.anchorNode,u.anchorOffset),m=t.viewport;if((gt.ios||gt.chrome)&&f!=p&&Math.min(f,p)<=c.main.from&&Math.max(f,p)>=c.main.to&&(m.from>0||m.to<t.state.doc.length)){let g=Math.min(f,p),y=Math.max(f,p),$=m.from-g,b=m.to-y;($==0||$==1||g==0)&&(b==0||b==-1||y==t.state.doc.length)&&(f=0,p=t.state.doc.length)}if(t.inputState.composing>-1&&c.ranges.length>1)this.newSel=c.replaceRange(lt.range(p,f));else if(t.lineWrapping&&p==f&&!(c.main.empty&&c.main.head==f)&&t.inputState.lastTouchTime>Date.now()-100){let g=t.coordsAtPos(f,-1),y=0;g&&(y=t.inputState.lastTouchY<=g.bottom?-1:1),this.newSel=lt.create([lt.cursor(f,y)])}else this.newSel=lt.single(p,f)}}}function DC(e,t,n,i){if(e.isComposite()){let s=-1,r=-1,l=-1,c=-1;for(let u=0,f=i,p=i;u<e.children.length;u++){let m=e.children[u],g=f+m.length;if(f<t&&g>n)return DC(m,t,n,f);if(g>=t&&s==-1&&(s=u,r=f),f>n&&m.dom.parentNode==e.dom){l=u,c=p;break}p=g,f=g+m.breakAfter}return{from:r,to:c<0?i+e.length:c,startDOM:(s?e.children[s-1].dom.nextSibling:null)||e.dom.firstChild,endDOM:l<e.children.length&&l>=0?e.children[l].dom:null}}else return e.isText()?{from:i,to:i+e.length,startDOM:e.dom,endDOM:e.dom.nextSibling}:null}function TC(e,t){let n,{newSel:i}=t,{state:s}=e,r=s.selection.main,l=e.inputState.lastKeyTime>Date.now()-100?e.inputState.lastKeyCode:-1;if(t.bounds){let{from:c,to:u}=t.bounds,f=r.from,p=null;(l===8||gt.android&&t.text.length<u-c)&&(f=r.to,p="end");let m=s.doc.sliceString(c,u,Tl),g,y;!r.empty&&r.from>=c&&r.to<=u&&(t.typeOver||m!=t.text)&&m.slice(0,r.from-c)==t.text.slice(0,r.from-c)&&m.slice(r.to-c)==t.text.slice(g=t.text.length-(m.length-(r.to-c)))?n={from:r.from,to:r.to,insert:Zt.of(t.text.slice(r.from-c,g).split(Tl))}:(y=NC(m,t.text,f-c,p))&&(gt.chrome&&l==13&&y.toB==y.from+2&&t.text.slice(y.from,y.toB)==Tl+Tl&&y.toB--,n={from:c+y.from,to:c+y.toA,insert:Zt.of(t.text.slice(y.from,y.toB).split(Tl))})}else i&&(!e.hasFocus&&s.facet(Os)||md(i,r))&&(i=null);if(!n&&!i)return!1;if((gt.mac||gt.android)&&n&&n.from==n.to&&n.from==r.head-1&&/^\. ?$/.test(n.insert.toString())&&e.contentDOM.getAttribute("autocorrect")=="off"?(i&&n.insert.length==2&&(i=lt.single(i.main.anchor-1,i.main.head-1)),n={from:n.from,to:n.to,insert:Zt.of([n.insert.toString().replace("."," ")])}):s.doc.lineAt(r.from).to<r.to&&e.docView.lineHasWidget(r.to)&&e.inputState.insertingTextAt>Date.now()-50?n={from:r.from,to:r.to,insert:s.toText(e.inputState.insertingText)}:gt.chrome&&n&&n.from==n.to&&n.from==r.head&&n.insert.toString()==`
266
+ `&&e.lineWrapping&&(i&&(i=lt.single(i.main.anchor-1,i.main.head-1)),n={from:r.from,to:r.to,insert:Zt.of([" "])}),n)return jw(e,n,i,l);if(i&&!md(i,r)){let c=!1,u="select";return e.inputState.lastSelectionTime>Date.now()-50&&(e.inputState.lastSelectionOrigin=="select"&&(c=!0),u=e.inputState.lastSelectionOrigin,u=="select.pointer"&&(i=EC(s.facet(wu).map(f=>f(e)),i))),e.dispatch({selection:i,scrollIntoView:c,userEvent:u}),!0}else return!1}function jw(e,t,n,i=-1){if(gt.ios&&e.inputState.flushIOSKey(t))return!0;let s=e.state.selection.main;if(gt.android&&(t.to==s.to&&(t.from==s.from||t.from==s.from-1&&e.state.sliceDoc(t.from,s.from)==" ")&&t.insert.length==1&&t.insert.lines==2&&Ql(e.contentDOM,"Enter",13)||(t.from==s.from-1&&t.to==s.to&&t.insert.length==0||i==8&&t.insert.length<t.to-t.from&&t.to>s.head)&&Ql(e.contentDOM,"Backspace",8)||t.from==s.from&&t.to==s.to+1&&t.insert.length==0&&Ql(e.contentDOM,"Delete",46)))return!0;let r=t.insert.toString();e.inputState.composing>=0&&e.inputState.composing++;let l,c=()=>l||(l=uB(e,t,n));return e.state.facet(mC).some(u=>u(e,t.from,t.to,r,c))||e.dispatch(c()),!0}function uB(e,t,n){let i,s=e.state,r=s.selection.main,l=-1;if(t.from==t.to&&t.from<r.from||t.from>r.to){let u=t.from<r.from?-1:1,f=u<0?r.from:r.to,p=Ac(s.facet(wu).map(m=>m(e)),f,u);t.from==p&&(l=p)}if(l>-1)i={changes:t,selection:lt.cursor(t.from+t.insert.length,-1)};else if(t.from>=r.from&&t.to<=r.to&&t.to-t.from>=(r.to-r.from)/3&&(!n||n.main.empty&&n.main.from==t.from+t.insert.length)&&e.inputState.composing<0){let u=r.from<t.from?s.sliceDoc(r.from,t.from):"",f=r.to>t.to?s.sliceDoc(t.to,r.to):"";i=s.replaceSelection(e.state.toText(u+t.insert.sliceString(0,void 0,e.state.lineBreak)+f))}else{let u=s.changes(t),f=n&&n.main.to<=u.newLength?n.main:void 0;if(s.selection.ranges.length>1&&(e.inputState.composing>=0||e.inputState.compositionPendingChange)&&t.to<=r.to+10&&t.to>=r.to-10){let p=e.state.sliceDoc(t.from,t.to),m,g=n&&CC(e,n.main.head);if(g){let $=t.insert.length-(t.to-t.from);m={from:g.from,to:g.to-$}}else m=e.state.doc.lineAt(r.head);let y=r.to-t.to;i=s.changeByRange($=>{if($.from==r.from&&$.to==r.to)return{changes:u,range:f||$.map(u)};let b=$.to-y,S=b-p.length;if(e.state.sliceDoc(S,b)!=p||b>=m.from&&S<=m.to)return{range:$};let O=s.changes({from:S,to:b,insert:t.insert}),E=$.to-r.to;return{changes:O,range:f?lt.range(Math.max(0,f.anchor+E),Math.max(0,f.head+E)):$.map(O)}})}else i={changes:u,selection:f&&s.selection.replaceRange(f)}}let c="input.type";return(e.composing||e.inputState.compositionPendingChange&&e.inputState.compositionEndedAt>Date.now()-50)&&(e.inputState.compositionPendingChange=!1,c+=".compose",e.inputState.compositionFirstChange&&(c+=".start",e.inputState.compositionFirstChange=!1)),s.update(i,{userEvent:c,scrollIntoView:!0})}function NC(e,t,n,i){let s=Math.min(e.length,t.length),r=0;for(;r<s&&e.charCodeAt(r)==t.charCodeAt(r);)r++;if(r==s&&e.length==t.length)return null;let l=e.length,c=t.length;for(;l>0&&c>0&&e.charCodeAt(l-1)==t.charCodeAt(c-1);)l--,c--;if(i=="end"){let u=Math.max(0,r-Math.min(l,c));n-=l+u-r}if(l<r&&e.length<t.length){let u=n<=r&&n>=l?r-n:0;r-=u,c=r+(c-l),l=r}else if(c<r){let u=n<=r&&n>=c?r-n:0;r-=u,l=r+(l-c),c=r}return{from:r,toA:l,toB:c}}function hB(e){let t=[];if(e.root.activeElement!=e.contentDOM)return t;let{anchorNode:n,anchorOffset:i,focusNode:s,focusOffset:r}=e.observer.selectionRange;return n&&(t.push(new yv(n,i)),(s!=n||r!=i)&&t.push(new yv(s,r))),t}function fB(e,t){if(e.length==0)return null;let n=e[0].pos,i=e.length==2?e[1].pos:n;return n>-1&&i>-1?lt.single(n+t,i+t):null}function md(e,t){return t.head==e.main.head&&t.anchor==e.main.anchor}class dB{setSelectionOrigin(t){this.lastSelectionOrigin=t,this.lastSelectionTime=Date.now()}constructor(t){this.view=t,this.lastKeyCode=0,this.lastKeyTime=0,this.touchActive=!1,this.lastTouchTime=0,this.lastTouchX=0,this.lastTouchY=0,this.lastFocusTime=0,this.lastScrollTop=0,this.lastScrollLeft=0,this.lastWheelEvent=0,this.pendingIOSKey=void 0,this.lastIOSMomentumScroll=0,this.tabFocusMode=-1,this.lastSelectionOrigin=null,this.lastSelectionTime=0,this.lastContextMenu=0,this.scrollHandlers=[],this.handlers=Object.create(null),this.composing=-1,this.compositionFirstChange=null,this.compositionEndedAt=0,this.compositionPendingKey=!1,this.compositionPendingChange=!1,this.insertingText="",this.insertingTextAt=0,this.mouseSelection=null,this.draggedContent=null,this.handleEvent=this.handleEvent.bind(this),this.notifiedFocused=t.hasFocus,gt.safari&&t.contentDOM.addEventListener("input",()=>null),gt.gecko&&TB(t.contentDOM.ownerDocument)}handleEvent(t){!vB(this.view,t)||this.ignoreDuringComposition(t)||t.type=="keydown"&&this.keydown(t)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(t.type,t)):this.runHandlers(t.type,t))}runHandlers(t,n){let i=this.handlers[t];if(i){for(let s of i.observers)s(this.view,n);for(let s of i.handlers){if(n.defaultPrevented)break;if(s(this.view,n)){n.preventDefault();break}}}}ensureHandlers(t){let n=mB(t),i=this.handlers,s=this.view.contentDOM;for(let r in n)if(r!="scroll"){let l=!n[r].handlers.length,c=i[r];c&&l!=!c.handlers.length&&(s.removeEventListener(r,this.handleEvent),c=null),c||s.addEventListener(r,this.handleEvent,{passive:l})}for(let r in i)r!="scroll"&&!n[r]&&s.removeEventListener(r,this.handleEvent);this.handlers=n}keydown(t){if(this.lastKeyCode=t.keyCode,this.lastKeyTime=Date.now(),t.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&t.keyCode!=27&&RC.indexOf(t.keyCode)<0&&(this.tabFocusMode=-1),gt.android&&gt.chrome&&!t.synthetic&&(t.keyCode==13||t.keyCode==8))return this.view.observer.delayAndroidKey(t.key,t.keyCode),!0;if(gt.ios&&!t.synthetic&&!t.altKey&&!t.metaKey&&(jC.some(n=>n.keyCode==t.keyCode)&&!t.ctrlKey||gB.indexOf(t.key)>-1&&t.ctrlKey)){let n={ctrlKey:t.ctrlKey,altKey:t.altKey,metaKey:t.metaKey,shiftKey:t.shiftKey};return n.shiftKey&&gt.ios&&!/^(off|none)$/.test(this.view.contentDOM.autocapitalize)&&pB(this.view.win)&&(n.shiftKey=!1),this.pendingIOSKey={key:t.key,keyCode:t.keyCode,mods:n},setTimeout(()=>this.flushIOSKey(),250),!0}return t.keyCode!=229&&this.view.observer.forceFlush(),!1}flushIOSKey(t){let n=this.pendingIOSKey;return!n||n.key=="Enter"&&t&&t.from<t.to&&/^\S+$/.test(t.insert.toString())?!1:(this.pendingIOSKey=void 0,Ql(this.view.contentDOM,n.key,n.keyCode,n.mods))}ignoreDuringComposition(t){return!/^key/.test(t.type)||t.synthetic?!1:this.composing>0?!0:gt.safari&&!gt.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1}startMouseSelection(t){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=t}update(t){this.view.observer.update(t),this.mouseSelection&&this.mouseSelection.update(t),this.draggedContent&&t.docChanged&&(this.draggedContent=this.draggedContent.map(t.changes)),t.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}function pB(e){return e.visualViewport?e.visualViewport.height*e.visualViewport.scale/e.document.documentElement.clientHeight<.85:!1}function wv(e,t){return(n,i)=>{try{return t.call(e,i,n)}catch(s){kn(n.state,s)}}}function mB(e){let t=Object.create(null);function n(i){return t[i]||(t[i]={observers:[],handlers:[]})}for(let i of e){let s=i.spec,r=s&&s.plugin.domEventHandlers,l=s&&s.plugin.domEventObservers;if(r)for(let c in r){let u=r[c];u&&n(c).handlers.push(wv(i.value,u))}if(l)for(let c in l){let u=l[c];u&&n(c).observers.push(wv(i.value,u))}}for(let i in bi)n(i).handlers.push(bi[i]);for(let i in un)n(i).observers.push(un[i]);return t}const jC=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],gB="dthko",RC=[16,17,18,20,91,92,224,225],of=6;function lf(e){return Math.max(0,e)*.7+8}function yB(e,t){return Math.max(Math.abs(e.clientX-t.clientX),Math.abs(e.clientY-t.clientY))}class wB{constructor(t,n,i,s){this.view=t,this.startEvent=n,this.style=i,this.mustSelect=s,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=n,this.scrollParents=eC(t.contentDOM),this.atoms=t.state.facet(wu).map(l=>l(t));let r=t.contentDOM.ownerDocument;r.addEventListener("mousemove",this.move=this.move.bind(this)),r.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=n.shiftKey,this.multiple=t.state.facet(Wt.allowMultipleSelections)&&$B(t,n),this.dragging=bB(t,n)&&AC(n)==1?null:!1}start(t){this.dragging===!1&&this.select(t)}move(t){if(t.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&yB(this.startEvent,t)<10)return;this.select(this.lastEvent=t);let n=0,i=0,s=0,r=0,l=this.view.win.innerWidth,c=this.view.win.innerHeight;this.scrollParents.x&&({left:s,right:l}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:r,bottom:c}=this.scrollParents.y.getBoundingClientRect());let u=Nw(this.view);t.clientX-u.left<=s+of?n=-lf(s-t.clientX):t.clientX+u.right>=l-of&&(n=lf(t.clientX-l)),t.clientY-u.top<=r+of?i=-lf(r-t.clientY):t.clientY+u.bottom>=c-of&&(i=lf(t.clientY-c)),this.setScrollSpeed(n,i)}up(t){this.dragging==null&&this.select(this.lastEvent),this.dragging||t.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let t=this.view.contentDOM.ownerDocument;t.removeEventListener("mousemove",this.move),t.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(t,n){this.scrollSpeed={x:t,y:n},t||n?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:t,y:n}=this.scrollSpeed;t&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=t,t=0),n&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=n,n=0),(t||n)&&this.view.win.scrollBy(t,n),this.dragging===!1&&this.select(this.lastEvent)}select(t){let{view:n}=this,i=EC(this.atoms,this.style.get(t,this.extend,this.multiple));(this.mustSelect||!i.eq(n.state.selection,this.dragging===!1))&&this.view.dispatch({selection:i,userEvent:"select.pointer"}),this.mustSelect=!1}update(t){t.transactions.some(n=>n.isUserEvent("input.type"))?this.destroy():this.style.update(t)&&setTimeout(()=>this.select(this.lastEvent),20)}}function $B(e,t){let n=e.state.facet(hC);return n.length?n[0](t):gt.mac?t.metaKey:t.ctrlKey}function xB(e,t){let n=e.state.facet(fC);return n.length?n[0](t):gt.mac?!t.altKey:!t.ctrlKey}function bB(e,t){let{main:n}=e.state.selection;if(n.empty)return!1;let i=Vc(e.root);if(!i||i.rangeCount==0)return!0;let s=i.getRangeAt(0).getClientRects();for(let r=0;r<s.length;r++){let l=s[r];if(l.left<=t.clientX&&l.right>=t.clientX&&l.top<=t.clientY&&l.bottom>=t.clientY)return!0}return!1}function vB(e,t){if(!t.bubbles)return!0;if(t.defaultPrevented)return!1;for(let n=t.target,i;n!=e.contentDOM;n=n.parentNode)if(!n||n.nodeType==11||(i=$e.get(n))&&i.isWidget()&&!i.isHidden&&i.widget.ignoreEvent(t))return!1;return!0}const bi=Object.create(null),un=Object.create(null),_C=gt.ie&&gt.ie_version<15||gt.ios&&gt.webkit_version<604;function SB(e){let t=e.dom.parentNode;if(!t)return;let n=t.appendChild(document.createElement("textarea"));n.style.cssText="position: fixed; left: -10000px; top: 10px",n.focus(),setTimeout(()=>{e.focus(),n.remove(),MC(e,n.value)},50)}function ip(e,t,n){for(let i of e.facet(t))n=i(n,e);return n}function MC(e,t){t=ip(e.state,Cw,t);let{state:n}=e,i,s=1,r=n.toText(t),l=r.lines==n.selection.ranges.length;if(Dy!=null&&n.selection.ranges.every(u=>u.empty)&&Dy==r.toString()){let u=-1;i=n.changeByRange(f=>{let p=n.doc.lineAt(f.from);if(p.from==u)return{range:f};u=p.from;let m=n.toText((l?r.line(s++).text:t)+n.lineBreak);return{changes:{from:p.from,insert:m},range:lt.cursor(f.from+m.length)}})}else l?i=n.changeByRange(u=>{let f=r.line(s++);return{changes:{from:u.from,to:u.to,insert:f.text},range:lt.cursor(u.from+f.length)}}):i=n.replaceSelection(r);e.dispatch(i,{userEvent:"input.paste",scrollIntoView:!0})}un.scroll=e=>{let t=e.inputState;t.lastScrollTop=e.scrollDOM.scrollTop,t.lastScrollLeft=e.scrollDOM.scrollLeft,gt.ios&&!t.touchActive&&(t.lastIOSMomentumScroll=Date.now())};un.wheel=un.mousewheel=e=>{e.inputState.lastWheelEvent=Date.now()};bi.keydown=(e,t)=>(e.inputState.setSelectionOrigin("select"),t.keyCode==27&&e.inputState.tabFocusMode!=0&&(e.inputState.tabFocusMode=Date.now()+2e3),!1);un.touchstart=(e,t)=>{let n=e.inputState,i=t.targetTouches[0];n.touchActive=!0,n.lastTouchTime=Date.now(),i&&(n.lastTouchX=i.clientX,n.lastTouchY=i.clientY),n.setSelectionOrigin("select.pointer")};un.touchmove=e=>{e.inputState.setSelectionOrigin("select.pointer")};un.touchend=(e,t)=>{e.inputState.touchActive=!1};bi.mousedown=(e,t)=>{if(e.observer.flush(),e.inputState.lastTouchTime>Date.now()-2e3)return!1;let n=null;for(let i of e.state.facet(dC))if(n=i(e,t),n)break;if(!n&&t.button==0&&(n=kB(e,t)),n){let i=!e.hasFocus;e.inputState.startMouseSelection(new wB(e,t,n,i)),i&&e.observer.ignore(()=>{nC(e.contentDOM);let r=e.root.activeElement;r&&!r.contains(e.contentDOM)&&r.blur()});let s=e.inputState.mouseSelection;if(s)return s.start(t),s.dragging===!1}else e.inputState.setSelectionOrigin("select.pointer");return!1};function $v(e,t,n,i){if(i==1)return lt.cursor(t,n);if(i==2)return tB(e.state,t,n);{let s=e.docView.lineAt(t,n),r=e.state.doc.lineAt(s?s.posAtEnd:t),l=s?s.posAtStart:r.from,c=s?s.posAtEnd:r.to;return c<e.state.doc.length&&c==r.to&&c++,lt.undirectionalRange(l,c)}}const OB=gt.ie&&gt.ie_version<=11;let xv=null,bv=0,vv=0;function AC(e){if(!OB)return e.detail;let t=xv,n=vv;return xv=e,vv=Date.now(),bv=!t||n>Date.now()-400&&Math.abs(t.clientX-e.clientX)<2&&Math.abs(t.clientY-e.clientY)<2?(bv+1)%3:1}function kB(e,t){let n=e.posAndSideAtCoords({x:t.clientX,y:t.clientY},!1),i=AC(t),s=e.state.selection;return{update(r){r.docChanged&&(n.pos=r.changes.mapPos(n.pos),s=s.map(r.changes))},get(r,l,c){let u=e.posAndSideAtCoords({x:r.clientX,y:r.clientY},!1),f,p=$v(e,u.pos,u.assoc,i);if(n.pos!=u.pos&&!l){let m=$v(e,n.pos,n.assoc,i),g=Math.min(m.from,p.from),y=Math.max(m.to,p.to);p=g<p.from?lt.range(g,y,p.assoc):lt.range(y,g,p.assoc)}return l?s.replaceRange(s.main.extend(p.from,p.to,p.assoc)):c&&i==1&&s.ranges.length>1&&(f=CB(s,u.pos))?f:c?s.addRange(p):lt.create([p])}}}function CB(e,t){for(let n=0;n<e.ranges.length;n++){let{from:i,to:s}=e.ranges[n];if(i<=t&&s>=t)return lt.create(e.ranges.slice(0,n).concat(e.ranges.slice(n+1)),e.mainIndex==n?0:e.mainIndex-(e.mainIndex>n?1:0))}return null}bi.dragstart=(e,t)=>{let{selection:{main:n}}=e.state;if(t.target.draggable){let s=e.docView.tile.nearest(t.target);if(s&&s.isWidget()){let r=s.posAtStart,l=r+s.length;(r>=n.to||l<=n.from)&&(n=lt.undirectionalRange(r,l))}}let{inputState:i}=e;return i.mouseSelection&&(i.mouseSelection.dragging=!0),i.draggedContent=n,t.dataTransfer&&(t.dataTransfer.setData("Text",ip(e.state,Ew,e.state.sliceDoc(n.from,n.to))),t.dataTransfer.effectAllowed="copyMove"),!1};bi.dragend=e=>(e.inputState.draggedContent=null,!1);function Sv(e,t,n,i){if(n=ip(e.state,Cw,n),!n)return;let s=e.posAtCoords({x:t.clientX,y:t.clientY},!1),{draggedContent:r}=e.inputState,l=i&&r&&xB(e,t)?{from:r.from,to:r.to}:null,c={from:s,insert:n},u=e.state.changes(l?[l,c]:c);e.focus(),e.dispatch({changes:u,selection:{anchor:u.mapPos(s,-1),head:u.mapPos(s,1)},userEvent:l?"move.drop":"input.drop"}),e.inputState.draggedContent=null}bi.drop=(e,t)=>{if(!t.dataTransfer)return!1;if(e.state.readOnly)return!0;let n=t.dataTransfer.files;if(n&&n.length){let i=Array(n.length),s=0,r=()=>{++s==n.length&&Sv(e,t,i.filter(l=>l!=null).join(e.state.lineBreak),!1)};for(let l=0;l<n.length;l++){let c=new FileReader;c.onerror=r,c.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(c.result)||(i[l]=c.result),r()},c.readAsText(n[l])}return!0}else{let i=t.dataTransfer.getData("Text");if(i)return Sv(e,t,i,!0),!0}return!1};bi.paste=(e,t)=>{if(e.state.readOnly)return!0;e.observer.flush();let n=_C?null:t.clipboardData;return n?(MC(e,n.getData("text/plain")||n.getData("text/uri-list")),!0):(SB(e),!1)};function EB(e,t){let n=e.dom.parentNode;if(!n)return;let i=n.appendChild(document.createElement("textarea"));i.style.cssText="position: fixed; left: -10000px; top: 10px",i.value=t,i.focus(),i.selectionEnd=t.length,i.selectionStart=0,setTimeout(()=>{i.remove(),e.focus()},50)}function DB(e){let t=[],n=[],i=!1;for(let s of e.selection.ranges)s.empty||(t.push(e.sliceDoc(s.from,s.to)),n.push(s));if(!t.length){let s=-1;for(let{from:r}of e.selection.ranges){let l=e.doc.lineAt(r);l.number>s&&(t.push(l.text),n.push({from:l.from,to:Math.min(e.doc.length,l.to+1)})),s=l.number}i=!0}return{text:ip(e,Ew,t.join(e.lineBreak)),ranges:n,linewise:i}}let Dy=null;bi.copy=bi.cut=(e,t)=>{if(!_c(e.contentDOM,e.observer.selectionRange))return!1;let{text:n,ranges:i,linewise:s}=DB(e.state);if(!n&&!s)return!1;Dy=s?n:null,t.type=="cut"&&!e.state.readOnly&&e.dispatch({changes:i,scrollIntoView:!0,userEvent:"delete.cut"});let r=_C?null:t.clipboardData;return r?(r.clearData(),r.setData("text/plain",n),!0):(EB(e,n),!1)};const HC=Rs.define();function zC(e,t){let n=[];for(let i of e.facet(gC)){let s=i(e,t);s&&n.push(s)}return n.length?e.update({effects:n,annotations:HC.of(!0)}):null}function BC(e){setTimeout(()=>{let t=e.hasFocus;if(t!=e.inputState.notifiedFocused){let n=zC(e.state,t);n?e.dispatch(n):e.update([])}},10)}un.focus=e=>{e.inputState.lastFocusTime=Date.now(),!e.scrollDOM.scrollTop&&(e.inputState.lastScrollTop||e.inputState.lastScrollLeft)&&(e.scrollDOM.scrollTop=e.inputState.lastScrollTop,e.scrollDOM.scrollLeft=e.inputState.lastScrollLeft),BC(e)};un.blur=e=>{e.observer.clearSelectionRange(),BC(e)};un.compositionstart=un.compositionupdate=e=>{e.observer.editContext||(e.inputState.compositionFirstChange==null&&(e.inputState.compositionFirstChange=!0),e.inputState.composing<0&&(e.inputState.composing=0))};un.compositionend=e=>{e.observer.editContext||(e.inputState.composing=-1,e.inputState.compositionEndedAt=Date.now(),e.inputState.compositionPendingKey=!0,e.inputState.compositionPendingChange=e.observer.pendingRecords().length>0,e.inputState.compositionFirstChange=null,gt.chrome&&gt.android?e.observer.flushSoon():e.inputState.compositionPendingChange?Promise.resolve().then(()=>e.observer.flush()):setTimeout(()=>{e.inputState.composing<0&&e.docView.hasComposition&&e.update([])},50))};un.contextmenu=e=>{e.inputState.lastContextMenu=Date.now()};bi.beforeinput=(e,t)=>{var n,i;if((t.inputType=="insertText"||t.inputType=="insertCompositionText")&&(e.inputState.insertingText=t.data,e.inputState.insertingTextAt=Date.now()),t.inputType=="insertReplacementText"&&e.observer.editContext){let r=(n=t.dataTransfer)===null||n===void 0?void 0:n.getData("text/plain"),l=t.getTargetRanges();if(r&&l.length){let c=l[0],u=e.posAtDOM(c.startContainer,c.startOffset),f=e.posAtDOM(c.endContainer,c.endOffset);return jw(e,{from:u,to:f,insert:e.state.toText(r)},null),!0}}let s;if(gt.chrome&&gt.android&&(s=jC.find(r=>r.inputType==t.inputType))&&(e.observer.delayAndroidKey(s.key,s.keyCode),s.key=="Backspace"||s.key=="Delete")){let r=((i=window.visualViewport)===null||i===void 0?void 0:i.height)||0;setTimeout(()=>{var l;(((l=window.visualViewport)===null||l===void 0?void 0:l.height)||0)>r+10&&e.hasFocus&&(e.contentDOM.blur(),e.focus())},100)}return gt.ios&&t.inputType=="deleteContentForward"&&e.observer.flushSoon(),gt.safari&&t.inputType=="insertText"&&e.inputState.composing>=0&&setTimeout(()=>un.compositionend(e,t),20),!1};const Ov=new Set;function TB(e){Ov.has(e)||(Ov.add(e),e.addEventListener("copy",()=>{}),e.addEventListener("cut",()=>{}))}const kv=["pre-wrap","normal","pre-line","break-spaces"];let ra=!1;function Cv(){ra=!1}class NB{constructor(t){this.lineWrapping=t,this.doc=Zt.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(t,n){let i=this.doc.lineAt(n).number-this.doc.lineAt(t).number+1;return this.lineWrapping&&(i+=Math.max(0,Math.ceil((n-t-i*this.lineLength*.5)/this.lineLength))),this.lineHeight*i}heightForLine(t){return this.lineWrapping?(1+Math.max(0,Math.ceil((t-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(t){return this.doc=t,this}mustRefreshForWrapping(t){return kv.indexOf(t)>-1!=this.lineWrapping}mustRefreshForHeights(t){let n=!1;for(let i=0;i<t.length;i++){let s=t[i];s<0?i++:this.heightSamples[Math.floor(s*10)]||(n=!0,this.heightSamples[Math.floor(s*10)]=!0)}return n}refresh(t,n,i,s,r,l){let c=kv.indexOf(t)>-1,u=Math.abs(n-this.lineHeight)>.3||this.lineWrapping!=c;if(this.lineWrapping=c,this.lineHeight=n,this.charWidth=i,this.textHeight=s,this.lineLength=r,u){this.heightSamples={};for(let f=0;f<l.length;f++){let p=l[f];p<0?f++:this.heightSamples[Math.floor(p*10)]=!0}}return u}}class jB{constructor(t,n){this.from=t,this.heights=n,this.index=0}get more(){return this.index<this.heights.length}}class gi{constructor(t,n,i,s,r){this.from=t,this.length=n,this.top=i,this.height=s,this._content=r}get type(){return typeof this._content=="number"?Ue.Text:Array.isArray(this._content)?this._content:this._content.type}get to(){return this.from+this.length}get bottom(){return this.top+this.height}get widget(){return this._content instanceof Do?this._content.widget:null}get widgetLineBreaks(){return typeof this._content=="number"?this._content:0}join(t){let n=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(t._content)?t._content:[t]);return new gi(this.from,this.length+t.length,this.top,this.height+t.height,n)}}var le=(function(e){return e[e.ByPos=0]="ByPos",e[e.ByHeight=1]="ByHeight",e[e.ByPosNoHeight=2]="ByPosNoHeight",e})(le||(le={}));const Hf=.001;class cn{constructor(t,n,i=2){this.length=t,this.height=n,this.flags=i}get outdated(){return(this.flags&2)>0}set outdated(t){this.flags=(t?2:0)|this.flags&-3}setHeight(t){this.height!=t&&(Math.abs(this.height-t)>Hf&&(ra=!0),this.height=t)}replace(t,n,i){return cn.of(i)}decomposeLeft(t,n){n.push(this)}decomposeRight(t,n){n.push(this)}applyChanges(t,n,i,s){let r=this,l=i.doc;for(let c=s.length-1;c>=0;c--){let{fromA:u,toA:f,fromB:p,toB:m}=s[c],g=r.lineAt(u,le.ByPosNoHeight,i.setDoc(n),0,0),y=g.to>=f?g:r.lineAt(f,le.ByPosNoHeight,i,0,0);for(m+=y.to-f,f=y.to;c>0&&g.from<=s[c-1].toA;)u=s[c-1].fromA,p=s[c-1].fromB,c--,u<g.from&&(g=r.lineAt(u,le.ByPosNoHeight,i,0,0));p+=g.from-u,u=g.from;let $=Rw.build(i.setDoc(l),t,p,m);r=gd(r,r.replace(u,f,$))}return r.updateHeight(i,0)}static empty(){return new Qn(0,0,0)}static of(t){if(t.length==1)return t[0];let n=0,i=t.length,s=0,r=0;for(;;)if(n==i)if(s>r*2){let c=t[n-1];c.break?t.splice(--n,1,c.left,null,c.right):t.splice(--n,1,c.left,c.right),i+=1+c.break,s-=c.size}else if(r>s*2){let c=t[i];c.break?t.splice(i,1,c.left,null,c.right):t.splice(i,1,c.left,c.right),i+=2+c.break,r-=c.size}else break;else if(s<r){let c=t[n++];c&&(s+=c.size)}else{let c=t[--i];c&&(r+=c.size)}let l=0;return t[n-1]==null?(l=1,n--):t[n]==null&&(l=1,i++),new _B(cn.of(t.slice(0,n)),l,cn.of(t.slice(i)))}}function gd(e,t){return e==t?e:(e.constructor!=t.constructor&&(ra=!0),t)}cn.prototype.size=1;const RB=Tt.replace({});class YC extends cn{constructor(t,n,i){super(t,n),this.deco=i,this.spaceAbove=0}mainBlock(t,n){return new gi(n,this.length,t+this.spaceAbove,this.height-this.spaceAbove,this.deco||0)}blockAt(t,n,i,s){return this.spaceAbove&&t<i+this.spaceAbove?new gi(s,0,i,this.spaceAbove,RB):this.mainBlock(i,s)}lineAt(t,n,i,s,r){let l=this.mainBlock(s,r);return this.spaceAbove?this.blockAt(0,i,s,r).join(l):l}forEachLine(t,n,i,s,r,l){t<=r+this.length&&n>=r&&l(this.lineAt(0,le.ByPos,i,s,r))}setMeasuredHeight(t){let n=t.heights[t.index++];n<0?(this.spaceAbove=-n,n=t.heights[t.index++]):this.spaceAbove=0,this.setHeight(n)}updateHeight(t,n=0,i=!1,s){return s&&s.from<=n&&s.more&&this.setMeasuredHeight(s),this.outdated=!1,this}toString(){return`block(${this.length})`}}class Qn extends YC{constructor(t,n,i){super(t,n,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=i}mainBlock(t,n){return new gi(n,this.length,t+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(t,n,i){let s=i[0];return i.length==1&&(s instanceof Qn||s instanceof We&&s.flags&4)&&Math.abs(this.length-s.length)<10?(s instanceof We?s=new Qn(s.length,this.height,this.spaceAbove):s.height=this.height,this.outdated||(s.outdated=!1),s):cn.of(i)}updateHeight(t,n=0,i=!1,s){return s&&s.from<=n&&s.more?this.setMeasuredHeight(s):(i||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,t.heightForLine(this.length-this.collapsed))+this.breaks*t.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class We extends cn{constructor(t){super(t,0)}heightMetrics(t,n){let i=t.doc.lineAt(n).number,s=t.doc.lineAt(n+this.length).number,r=s-i+1,l,c=0;if(t.lineWrapping){let u=Math.min(this.height,t.lineHeight*r);l=u/r,this.length>r+1&&(c=(this.height-u)/(this.length-r-1))}else l=this.height/r;return{firstLine:i,lastLine:s,perLine:l,perChar:c}}blockAt(t,n,i,s){let{firstLine:r,lastLine:l,perLine:c,perChar:u}=this.heightMetrics(n,s);if(n.lineWrapping){let f=s+(t<n.lineHeight?0:Math.round(Math.max(0,Math.min(1,(t-i)/this.height))*this.length)),p=n.doc.lineAt(f),m=c+p.length*u,g=Math.max(i,t-m/2);return new gi(p.from,p.length,g,m,0)}else{let f=Math.max(0,Math.min(l-r,Math.floor((t-i)/c))),{from:p,length:m}=n.doc.line(r+f);return new gi(p,m,i+c*f,c,0)}}lineAt(t,n,i,s,r){if(n==le.ByHeight)return this.blockAt(t,i,s,r);if(n==le.ByPosNoHeight){let{from:y,to:$}=i.doc.lineAt(t);return new gi(y,$-y,0,0,0)}let{firstLine:l,perLine:c,perChar:u}=this.heightMetrics(i,r),f=i.doc.lineAt(t),p=c+f.length*u,m=f.number-l,g=s+c*m+u*(f.from-r-m);return new gi(f.from,f.length,Math.max(s,Math.min(g,s+this.height-p)),p,0)}forEachLine(t,n,i,s,r,l){t=Math.max(t,r),n=Math.min(n,r+this.length);let{firstLine:c,perLine:u,perChar:f}=this.heightMetrics(i,r);for(let p=t,m=s;p<=n;){let g=i.doc.lineAt(p);if(p==t){let $=g.number-c;m+=u*$+f*(t-r-$)}let y=u+f*g.length;l(new gi(g.from,g.length,m,y,0)),m+=y,p=g.to+1}}replace(t,n,i){let s=this.length-n;if(s>0){let r=i[i.length-1];r instanceof We?i[i.length-1]=new We(r.length+s):i.push(null,new We(s-1))}if(t>0){let r=i[0];r instanceof We?i[0]=new We(t+r.length):i.unshift(new We(t-1),null)}return cn.of(i)}decomposeLeft(t,n){n.push(new We(t-1),null)}decomposeRight(t,n){n.push(null,new We(this.length-t-1))}updateHeight(t,n=0,i=!1,s){let r=n+this.length;if(s&&s.from<=n+this.length&&s.more){let l=[],c=Math.max(n,s.from),u=-1;for(s.from>n&&l.push(new We(s.from-n-1).updateHeight(t,n));c<=r&&s.more;){let p=t.doc.lineAt(c).length;l.length&&l.push(null);let m=s.heights[s.index++],g=0;m<0&&(g=-m,m=s.heights[s.index++]),u==-1?u=m:Math.abs(m-u)>=Hf&&(u=-2);let y=new Qn(p,m,g);y.outdated=!1,l.push(y),c+=p+1}c<=r&&l.push(null,new We(r-c).updateHeight(t,c));let f=cn.of(l);return(u<0||Math.abs(f.height-this.height)>=Hf||Math.abs(u-this.heightMetrics(t,n).perLine)>=Hf)&&(ra=!0),gd(this,f)}else(i||this.outdated)&&(this.setHeight(t.heightForGap(n,n+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class _B extends cn{constructor(t,n,i){super(t.length+n+i.length,t.height+i.height,n|(t.outdated||i.outdated?2:0)),this.left=t,this.right=i,this.size=t.size+i.size}get break(){return this.flags&1}blockAt(t,n,i,s){let r=i+this.left.height;return t<r?this.left.blockAt(t,n,i,s):this.right.blockAt(t,n,r,s+this.left.length+this.break)}lineAt(t,n,i,s,r){let l=s+this.left.height,c=r+this.left.length+this.break,u=n==le.ByHeight?t<l:t<c,f=u?this.left.lineAt(t,n,i,s,r):this.right.lineAt(t,n,i,l,c);if(this.break||(u?f.to<c:f.from>c))return f;let p=n==le.ByPosNoHeight?le.ByPosNoHeight:le.ByPos;return u?f.join(this.right.lineAt(c,p,i,l,c)):this.left.lineAt(c,p,i,s,r).join(f)}forEachLine(t,n,i,s,r,l){let c=s+this.left.height,u=r+this.left.length+this.break;if(this.break)t<u&&this.left.forEachLine(t,n,i,s,r,l),n>=u&&this.right.forEachLine(t,n,i,c,u,l);else{let f=this.lineAt(u,le.ByPos,i,s,r);t<f.from&&this.left.forEachLine(t,f.from-1,i,s,r,l),f.to>=t&&f.from<=n&&l(f),n>f.to&&this.right.forEachLine(f.to+1,n,i,c,u,l)}}replace(t,n,i){let s=this.left.length+this.break;if(n<s)return this.balanced(this.left.replace(t,n,i),this.right);if(t>this.left.length)return this.balanced(this.left,this.right.replace(t-s,n-s,i));let r=[];t>0&&this.decomposeLeft(t,r);let l=r.length;for(let c of i)r.push(c);if(t>0&&Ev(r,l-1),n<this.length){let c=r.length;this.decomposeRight(n,r),Ev(r,c)}return cn.of(r)}decomposeLeft(t,n){let i=this.left.length;if(t<=i)return this.left.decomposeLeft(t,n);n.push(this.left),this.break&&(i++,t>=i&&n.push(null)),t>i&&this.right.decomposeLeft(t-i,n)}decomposeRight(t,n){let i=this.left.length,s=i+this.break;if(t>=s)return this.right.decomposeRight(t-s,n);t<i&&this.left.decomposeRight(t,n),this.break&&t<s&&n.push(null),n.push(this.right)}balanced(t,n){return t.size>2*n.size||n.size>2*t.size?cn.of(this.break?[t,null,n]:[t,n]):(this.left=gd(this.left,t),this.right=gd(this.right,n),this.setHeight(t.height+n.height),this.outdated=t.outdated||n.outdated,this.size=t.size+n.size,this.length=t.length+this.break+n.length,this)}updateHeight(t,n=0,i=!1,s){let{left:r,right:l}=this,c=n+r.length+this.break,u=null;return s&&s.from<=n+r.length&&s.more?u=r=r.updateHeight(t,n,i,s):r.updateHeight(t,n,i),s&&s.from<=c+l.length&&s.more?u=l=l.updateHeight(t,c,i,s):l.updateHeight(t,c,i),u?this.balanced(r,l):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function Ev(e,t){let n,i;e[t]==null&&(n=e[t-1])instanceof We&&(i=e[t+1])instanceof We&&e.splice(t-1,3,new We(n.length+1+i.length))}const MB=5;class Rw{constructor(t,n){this.pos=t,this.oracle=n,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=t}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(t,n){if(this.lineStart>-1){let i=Math.min(n,this.lineEnd),s=this.nodes[this.nodes.length-1];s instanceof Qn?s.length+=i-this.pos:(i>this.pos||!this.isCovered)&&this.nodes.push(new Qn(i-this.pos,-1,0)),this.writtenTo=i,n>i&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=n}point(t,n,i){if(t<n||i.heightRelevant){let s=i.widget?i.widget.estimatedHeight:0,r=i.widget?i.widget.lineBreaks:0;s<0&&(s=this.oracle.lineHeight);let l=n-t;i.block?this.addBlock(new YC(l,s,i)):(l||r||s>=MB)&&this.addLineDeco(s,r,l)}else n>t&&this.span(t,n);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:t,to:n}=this.oracle.doc.lineAt(this.pos);this.lineStart=t,this.lineEnd=n,this.writtenTo<t&&((this.writtenTo<t-1||this.nodes[this.nodes.length-1]==null)&&this.nodes.push(this.blankContent(this.writtenTo,t-1)),this.nodes.push(null)),this.pos>t&&this.nodes.push(new Qn(this.pos-t,-1,0)),this.writtenTo=this.pos}blankContent(t,n){let i=new We(n-t);return this.oracle.doc.lineAt(t).to==n&&(i.flags|=4),i}ensureLine(){this.enterLine();let t=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(t instanceof Qn)return t;let n=new Qn(0,-1,0);return this.nodes.push(n),n}addBlock(t){this.enterLine();let n=t.deco;n&&n.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(t),this.writtenTo=this.pos=this.pos+t.length,n&&n.endSide>0&&(this.covering=t)}addLineDeco(t,n,i){let s=this.ensureLine();s.length+=i,s.collapsed+=i,s.widgetHeight=Math.max(s.widgetHeight,t),s.breaks+=n,this.writtenTo=this.pos=this.pos+i}finish(t){let n=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(n instanceof Qn)&&!this.isCovered?this.nodes.push(new Qn(0,-1,0)):(this.writtenTo<this.pos||n==null)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos));let i=t;for(let s of this.nodes)s instanceof Qn&&s.updateHeight(this.oracle,i),i+=s?s.length:1;return this.nodes}static build(t,n,i,s){let r=new Rw(i,t);return Bt.spans(n,i,s,r,0),r.finish(i)}}function AB(e,t,n){let i=new HB;return Bt.compare(e,t,n,i,0),i.changes}class HB{constructor(){this.changes=[]}compareRange(){}comparePoint(t,n,i,s){(t<n||i&&i.heightRelevant||s&&s.heightRelevant)&&Ll(t,n,this.changes,5)}}function zB(e,t){let n=e.getBoundingClientRect(),i=e.ownerDocument,s=i.defaultView||window,r=Math.max(0,n.left),l=Math.min(s.innerWidth,n.right),c=Math.max(0,n.top),u=Math.min(s.innerHeight,n.bottom);for(let f=e.parentNode;f&&f!=i.body;)if(f.nodeType==1){let p=f,m=window.getComputedStyle(p);if((p.scrollHeight>p.clientHeight||p.scrollWidth>p.clientWidth)&&m.overflow!="visible"){let g=p.getBoundingClientRect();r=Math.max(r,g.left),l=Math.min(l,g.right),c=Math.max(c,g.top),u=Math.min(f==e.parentNode?s.innerHeight:u,g.bottom)}f=m.position=="absolute"||m.position=="fixed"?p.offsetParent:p.parentNode}else if(f.nodeType==11)f=f.host;else break;return{left:r-n.left,right:Math.max(r,l)-n.left,top:c-(n.top+t),bottom:Math.max(c,u)-(n.top+t)}}function BB(e){let t=e.getBoundingClientRect(),n=e.ownerDocument.defaultView||window;return t.left<n.innerWidth&&t.right>0&&t.top<n.innerHeight&&t.bottom>0}function YB(e,t){let n=e.getBoundingClientRect();return{left:0,right:n.right-n.left,top:t,bottom:n.bottom-(n.top+t)}}class h0{constructor(t,n,i,s){this.from=t,this.to=n,this.size=i,this.displaySize=s}static same(t,n){if(t.length!=n.length)return!1;for(let i=0;i<t.length;i++){let s=t[i],r=n[i];if(s.from!=r.from||s.to!=r.to||s.size!=r.size)return!1}return!0}draw(t,n){return Tt.replace({widget:new GB(this.displaySize*(n?t.scaleY:t.scaleX),n)}).range(this.from,this.to)}}class GB extends _s{constructor(t,n){super(),this.size=t,this.vertical=n}eq(t){return t.size==this.size&&t.vertical==this.vertical}toDOM(){let t=document.createElement("div");return this.vertical?t.style.height=this.size+"px":(t.style.width=this.size+"px",t.style.height="2px",t.style.display="inline-block"),t}get estimatedHeight(){return this.vertical?this.size:-1}}class Dv{constructor(t,n){this.view=t,this.state=n,this.pixelViewport={left:0,right:window.innerWidth,top:0,bottom:0},this.inView=!0,this.paddingTop=0,this.paddingBottom=0,this.contentDOMWidth=0,this.contentDOMHeight=0,this.editorHeight=0,this.editorWidth=0,this.scaleX=1,this.scaleY=1,this.scrollOffset=0,this.scrolledToBottom=!1,this.scrollAnchorPos=0,this.scrollAnchorHeight=-1,this.scaler=Tv,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=oe.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let i=n.facet(Dw).some(s=>typeof s!="function"&&s.class=="cm-lineWrapping");this.heightOracle=new NB(i),this.stateDeco=Nv(n),this.heightMap=cn.empty().applyChanges(this.stateDeco,Zt.empty,this.heightOracle.setDoc(n.doc),[new si(0,0,0,n.doc.length)]);for(let s=0;s<2&&(this.viewport=this.getViewport(0,null),!!this.updateForViewport());s++);this.updateViewportLines(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=Tt.set(this.lineGaps.map(s=>s.draw(this,!1))),this.scrollParent=t.scrollDOM,this.computeVisibleRanges()}updateForViewport(){let t=[this.viewport],{main:n}=this.state.selection;for(let i=0;i<=1;i++){let s=i?n.head:n.anchor;if(!t.some(({from:r,to:l})=>s>=r&&s<=l)){let{from:r,to:l}=this.lineBlockAt(s);t.push(new af(r,l))}}return this.viewports=t.sort((i,s)=>i.from-s.from),this.updateScaler()}updateScaler(){let t=this.scaler;return this.scaler=this.heightMap.height<=7e6?Tv:new _w(this.heightOracle,this.heightMap,this.viewports),t.eq(this.scaler)?0:2}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,t=>{this.viewportLines.push(Ec(t,this.scaler))})}update(t,n=null){this.state=t.state;let i=this.stateDeco;this.stateDeco=Nv(this.state);let s=t.changedRanges,r=si.extendWithRanges(s,AB(i,this.stateDeco,t?t.changes:He.empty(this.state.doc.length))),l=this.heightMap.height,c=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollOffset);Cv(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,t.startState.doc,this.heightOracle.setDoc(this.state.doc),r),(this.heightMap.height!=l||ra)&&(t.flags|=2),c?(this.scrollAnchorPos=t.changes.mapPos(c.from,-1),this.scrollAnchorHeight=c.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=l);let u=r.length?this.mapViewport(this.viewport,t.changes):this.viewport;(n&&(n.range.head<u.from||n.range.head>u.to)||!this.viewportIsAppropriate(u))&&(u=this.getViewport(0,n));let f=u.from!=this.viewport.from||u.to!=this.viewport.to;this.viewport=u,t.flags|=this.updateForViewport(),(f||!t.changes.empty||t.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,t.changes))),t.flags|=this.computeVisibleRanges(t.changes),n&&(this.scrollTarget=n),!this.mustEnforceCursorAssoc&&(t.selectionSet||t.focusChanged)&&t.view.lineWrapping&&t.state.selection.main.empty&&t.state.selection.main.assoc&&!t.state.facet(wC)&&(this.mustEnforceCursorAssoc=!0)}measure(){let{view:t}=this,n=t.contentDOM,i=window.getComputedStyle(n),s=this.heightOracle,r=i.whiteSpace;this.defaultTextDirection=i.direction=="rtl"?oe.RTL:oe.LTR;let l=this.heightOracle.mustRefreshForWrapping(r)||this.mustMeasureContent==="refresh",c=n.getBoundingClientRect(),u=l||this.mustMeasureContent||this.contentDOMHeight!=c.height;this.contentDOMHeight=c.height,this.mustMeasureContent=!1;let f=0,p=0;if(c.width&&c.height){let{scaleX:_,scaleY:A}=tC(n,c);(_>.005&&Math.abs(this.scaleX-_)>.005||A>.005&&Math.abs(this.scaleY-A)>.005)&&(this.scaleX=_,this.scaleY=A,f|=16,l=u=!0)}let m=(parseInt(i.paddingTop)||0)*this.scaleY,g=(parseInt(i.paddingBottom)||0)*this.scaleY;(this.paddingTop!=m||this.paddingBottom!=g)&&(this.paddingTop=m,this.paddingBottom=g,f|=18),this.editorWidth!=t.scrollDOM.clientWidth&&(s.lineWrapping&&(u=!0),this.editorWidth=t.scrollDOM.clientWidth,f|=16);let y=eC(this.view.contentDOM,!1).y;y!=this.scrollParent&&(this.scrollParent=y,this.scrollAnchorHeight=-1,this.scrollOffset=0);let $=this.getScrollOffset();this.scrollOffset!=$&&(this.scrollAnchorHeight=-1,this.scrollOffset=$),this.scrolledToBottom=iC(this.scrollParent||t.win);let b=(this.printing?YB:zB)(n,this.paddingTop),S=b.top-this.pixelViewport.top,O=b.bottom-this.pixelViewport.bottom;this.pixelViewport=b;let E=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(E!=this.inView&&(this.inView=E,E&&(u=!0)),!this.inView&&!this.scrollTarget&&!BB(t.dom))return 0;let k=c.width;if((this.contentDOMWidth!=k||this.editorHeight!=t.scrollDOM.clientHeight)&&(this.contentDOMWidth=c.width,this.editorHeight=t.scrollDOM.clientHeight,f|=16),u){let _=t.docView.measureVisibleLineHeights(this.viewport);if(s.mustRefreshForHeights(_)&&(l=!0),l||s.lineWrapping&&Math.abs(k-this.contentDOMWidth)>s.charWidth){let{lineHeight:A,charWidth:H,textHeight:Y}=t.docView.measureTextSize();l=A>0&&s.refresh(r,A,H,Y,Math.max(5,k/H),_),l&&(t.docView.minWidth=0,f|=16)}S>0&&O>0?p=Math.max(S,O):S<0&&O<0&&(p=Math.min(S,O)),Cv();for(let A of this.viewports){let H=A.from==this.viewport.from?_:t.docView.measureVisibleLineHeights(A);this.heightMap=(l?cn.empty().applyChanges(this.stateDeco,Zt.empty,this.heightOracle,[new si(0,0,0,t.state.doc.length)]):this.heightMap).updateHeight(s,0,l,new jB(A.from,H))}ra&&(f|=2)}let D=!this.viewportIsAppropriate(this.viewport,p)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return D&&(f&2&&(f|=this.updateScaler()),this.viewport=this.getViewport(p,this.scrollTarget),f|=this.updateForViewport()),(f&2||D)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(l?[]:this.lineGaps,t)),f|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,t.docView.enforceCursorAssoc()),f}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(t,n){let i=.5-Math.max(-.5,Math.min(.5,t/1e3/2)),s=this.heightMap,r=this.heightOracle,{visibleTop:l,visibleBottom:c}=this,u=new af(s.lineAt(l-i*1e3,le.ByHeight,r,0,0).from,s.lineAt(c+(1-i)*1e3,le.ByHeight,r,0,0).to);if(n){let{head:f}=n.range;if(f<u.from||f>u.to){let p=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),m=s.lineAt(f,le.ByPos,r,0,0),g;n.y=="center"?g=(m.top+m.bottom)/2-p/2:n.y=="start"||n.y=="nearest"&&f<u.from?g=m.top:g=m.bottom-p,u=new af(s.lineAt(g-1e3/2,le.ByHeight,r,0,0).from,s.lineAt(g+p+1e3/2,le.ByHeight,r,0,0).to)}}return u}mapViewport(t,n){let i=n.mapPos(t.from,-1),s=n.mapPos(t.to,1);return new af(this.heightMap.lineAt(i,le.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(s,le.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:t,to:n},i=0){if(!this.inView)return!0;let{top:s}=this.heightMap.lineAt(t,le.ByPos,this.heightOracle,0,0),{bottom:r}=this.heightMap.lineAt(n,le.ByPos,this.heightOracle,0,0),{visibleTop:l,visibleBottom:c}=this;return(t==0||s<=l-Math.max(10,Math.min(-i,250)))&&(n==this.state.doc.length||r>=c+Math.max(10,Math.min(i,250)))&&s>l-2*1e3&&r<c+2*1e3}mapLineGaps(t,n){if(!t.length||n.empty)return t;let i=[];for(let s of t)n.touchesRange(s.from,s.to)||i.push(new h0(n.mapPos(s.from),n.mapPos(s.to),s.size,s.displaySize));return i}ensureLineGaps(t,n){let i=this.heightOracle.lineWrapping,s=i?1e4:2e3,r=s>>1,l=s<<1;if(this.defaultTextDirection!=oe.LTR&&!i)return[];let c=[],u=(p,m,g,y)=>{if(m-p<r)return;let $=this.state.selection.main,b=[$.from];$.empty||b.push($.to);for(let O of b)if(O>p&&O<m){u(p,O-10,g,y),u(O+10,m,g,y);return}let S=QB(t,O=>O.from>=g.from&&O.to<=g.to&&Math.abs(O.from-p)<r&&Math.abs(O.to-m)<r&&!b.some(E=>O.from<E&&O.to>E));if(!S){if(m<g.to&&n&&i&&n.visibleRanges.some(k=>k.from<=m&&k.to>=m)){let k=n.moveToLineBoundary(lt.cursor(m),!1,!0).head;k>p&&(m=k)}let O=this.gapSize(g,p,m,y),E=i||O<2e6?O:2e6;S=new h0(p,m,O,E)}c.push(S)},f=p=>{if(p.length<l||p.type!=Ue.Text)return;let m=LB(p.from,p.to,this.stateDeco);if(m.total<l)return;let g=this.scrollTarget?this.scrollTarget.range.head:null,y,$;if(i){let b=s/this.heightOracle.lineLength*this.heightOracle.lineHeight,S,O;if(g!=null){let E=uf(m,g),k=((this.visibleBottom-this.visibleTop)/2+b)/p.height;S=E-k,O=E+k}else S=(this.visibleTop-p.top-b)/p.height,O=(this.visibleBottom-p.top+b)/p.height;y=cf(m,S),$=cf(m,O)}else{let b=m.total*this.heightOracle.charWidth,S=s*this.heightOracle.charWidth,O=0;if(b>2e6)for(let A of t)A.from>=p.from&&A.from<p.to&&A.size!=A.displaySize&&A.from*this.heightOracle.charWidth+O<this.pixelViewport.left&&(O=A.size-A.displaySize);let E=this.pixelViewport.left+O,k=this.pixelViewport.right+O,D,_;if(g!=null){let A=uf(m,g),H=((k-E)/2+S)/b;D=A-H,_=A+H}else D=(E-S)/b,_=(k+S)/b;y=cf(m,D),$=cf(m,_)}y>p.from&&u(p.from,y,p,m),$<p.to&&u($,p.to,p,m)};for(let p of this.viewportLines)Array.isArray(p.type)?p.type.forEach(f):f(p);return c}gapSize(t,n,i,s){let r=uf(s,i)-uf(s,n);return this.heightOracle.lineWrapping?t.height*r:s.total*this.heightOracle.charWidth*r}updateLineGaps(t){h0.same(t,this.lineGaps)||(this.lineGaps=t,this.lineGapDeco=Tt.set(t.map(n=>n.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(t){let n=this.stateDeco;this.lineGaps.length&&(n=n.concat(this.lineGapDeco));let i=[];Bt.spans(n,this.viewport.from,this.viewport.to,{span(r,l){i.push({from:r,to:l})},point(){}},20);let s=0;if(i.length!=this.visibleRanges.length)s=12;else for(let r=0;r<i.length&&!(s&8);r++){let l=this.visibleRanges[r],c=i[r];(l.from!=c.from||l.to!=c.to)&&(s|=4,t&&t.mapPos(l.from,-1)==c.from&&t.mapPos(l.to,1)==c.to||(s|=8))}return this.visibleRanges=i,s}lineBlockAt(t){return t>=this.viewport.from&&t<=this.viewport.to&&this.viewportLines.find(n=>n.from<=t&&n.to>=t)||Ec(this.heightMap.lineAt(t,le.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(t){return t>=this.viewportLines[0].top&&t<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(n=>n.top<=t&&n.bottom>=t)||Ec(this.heightMap.lineAt(this.scaler.fromDOM(t),le.ByHeight,this.heightOracle,0,0),this.scaler)}getScrollOffset(){return(this.scrollParent==this.view.scrollDOM?this.scrollParent.scrollTop:(this.scrollParent?this.scrollParent.getBoundingClientRect().top:0)-this.view.contentDOM.getBoundingClientRect().top)*this.scaleY}scrollAnchorAt(t){let n=this.lineBlockAtHeight(t+8);return n.from>=this.viewport.from||this.viewportLines[0].top-t>200?n:this.viewportLines[0]}elementAtHeight(t){return Ec(this.heightMap.blockAt(this.scaler.fromDOM(t),this.heightOracle,0,0),this.scaler)}get docHeight(){return this.scaler.toDOM(this.heightMap.height)}get contentHeight(){return this.docHeight+this.paddingTop+this.paddingBottom}}class af{constructor(t,n){this.from=t,this.to=n}}function LB(e,t,n){let i=[],s=e,r=0;return Bt.spans(n,e,t,{span(){},point(l,c){l>s&&(i.push({from:s,to:l}),r+=l-s),s=c}},20),s<t&&(i.push({from:s,to:t}),r+=t-s),{total:r,ranges:i}}function cf({total:e,ranges:t},n){if(n<=0)return t[0].from;if(n>=1)return t[t.length-1].to;let i=Math.floor(e*n);for(let s=0;;s++){let{from:r,to:l}=t[s],c=l-r;if(i<=c)return r+i;i-=c}}function uf(e,t){let n=0;for(let{from:i,to:s}of e.ranges){if(t<=s){n+=t-i;break}n+=s-i}return n/e.total}function QB(e,t){for(let n of e)if(t(n))return n}const Tv={toDOM(e){return e},fromDOM(e){return e},scale:1,eq(e){return e==this}};function Nv(e){let t=e.facet(tp).filter(i=>typeof i!="function"),n=e.facet(Tw).filter(i=>typeof i!="function");return n.length&&t.push(Bt.join(n)),t}class _w{constructor(t,n,i){let s=0,r=0,l=0;this.viewports=i.map(({from:c,to:u})=>{let f=n.lineAt(c,le.ByPos,t,0,0).top,p=n.lineAt(u,le.ByPos,t,0,0).bottom;return s+=p-f,{from:c,to:u,top:f,bottom:p,domTop:0,domBottom:0}}),this.scale=(7e6-s)/(n.height-s);for(let c of this.viewports)c.domTop=l+(c.top-r)*this.scale,l=c.domBottom=c.domTop+(c.bottom-c.top),r=c.bottom}toDOM(t){for(let n=0,i=0,s=0;;n++){let r=n<this.viewports.length?this.viewports[n]:null;if(!r||t<r.top)return s+(t-i)*this.scale;if(t<=r.bottom)return r.domTop+(t-r.top);i=r.bottom,s=r.domBottom}}fromDOM(t){for(let n=0,i=0,s=0;;n++){let r=n<this.viewports.length?this.viewports[n]:null;if(!r||t<r.domTop)return i+(t-s)/this.scale;if(t<=r.domBottom)return r.top+(t-r.domTop);i=r.bottom,s=r.domBottom}}eq(t){return t instanceof _w?this.scale==t.scale&&this.viewports.length==t.viewports.length&&this.viewports.every((n,i)=>n.from==t.viewports[i].from&&n.to==t.viewports[i].to):!1}}function Ec(e,t){if(t.scale==1)return e;let n=t.toDOM(e.top),i=t.toDOM(e.bottom);return new gi(e.from,e.length,n,i-n,Array.isArray(e._content)?e._content.map(s=>Ec(s,t)):e._content)}const hf=wt.define({combine:e=>e.join(" ")}),Ty=wt.define({combine:e=>e.indexOf(!0)>-1}),Ny=Or.newName(),GC=Or.newName(),LC=Or.newName(),QC={"&light":"."+GC,"&dark":"."+LC};function jy(e,t,n){return new Or(t,{finish(i){return/&/.test(i)?i.replace(/&\w*/,s=>{if(s=="&")return e;if(!n||!n[s])throw new RangeError(`Unsupported selector: ${s}`);return n[s]}):e+" "+i}})}const PB=jy("."+Ny,{"&":{position:"relative !important",boxSizing:"border-box","&.cm-focused":{outline:"1px dotted #212121"},display:"flex !important",flexDirection:"column"},".cm-scroller":{display:"flex !important",alignItems:"flex-start !important",fontFamily:"monospace",lineHeight:1.4,height:"100%",overflowX:"auto",position:"relative",zIndex:0,overflowAnchor:"none"},".cm-content":{margin:0,flexGrow:2,flexShrink:0,display:"block",whiteSpace:"pre",wordWrap:"normal",boxSizing:"border-box",minHeight:"100%",padding:"4px 0",outline:"none","&[contenteditable=true]":{WebkitUserModify:"read-write-plaintext-only"}},".cm-lineWrapping":{whiteSpace_fallback:"pre-wrap",whiteSpace:"break-spaces",wordBreak:"break-word",overflowWrap:"anywhere",flexShrink:1},"&light .cm-content":{caretColor:"black"},"&dark .cm-content":{caretColor:"white"},".cm-line":{display:"block",padding:"0 2px 0 6px"},".cm-layer":{userSelect:"none",position:"absolute",left:0,top:0,contain:"size style","& > *":{position:"absolute"}},"&light .cm-selectionBackground":{background:"#d9d9d9"},"&dark .cm-selectionBackground":{background:"#222"},"&light.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#d7d4f0"},"&dark.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground":{background:"#233"},".cm-cursorLayer":{pointerEvents:"none"},"&.cm-focused > .cm-scroller > .cm-cursorLayer":{animation:"steps(1) cm-blink 1.2s infinite"},"@keyframes cm-blink":{"0%":{},"50%":{opacity:0},"100%":{}},"@keyframes cm-blink2":{"0%":{},"50%":{opacity:0},"100%":{}},".cm-cursor, .cm-dropCursor":{borderLeft:"1.2px solid black",marginLeft:"-0.6px",pointerEvents:"none"},".cm-cursor":{display:"none"},"&dark .cm-cursor":{borderLeftColor:"#ddd"},".cm-selectionHandle":{backgroundColor:"currentColor",width:"1.5px"},".cm-selectionHandle-start::before, .cm-selectionHandle-end::before":{content:'""',backgroundColor:"inherit",borderRadius:"50%",width:"8px",height:"8px",position:"absolute",left:"-3.25px"},".cm-selectionHandle-start::before":{top:"-8px"},".cm-selectionHandle-end::before":{bottom:"-8px"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".cm-iso":{unicodeBidi:"isolate"},".cm-announced":{position:"fixed",top:"-10000px"},"@media print":{".cm-announced":{display:"none"}},"&light .cm-activeLine":{backgroundColor:"#cceeff44"},"&dark .cm-activeLine":{backgroundColor:"#99eeff33"},"&light .cm-specialChar":{color:"red"},"&dark .cm-specialChar":{color:"#f78"},".cm-gutters":{flexShrink:0,display:"flex",height:"100%",boxSizing:"border-box",zIndex:200},".cm-gutters-before":{insetInlineStart:0},".cm-gutters-after":{insetInlineEnd:0},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",border:"0px solid #ddd","&.cm-gutters-before":{borderRightWidth:"1px"},"&.cm-gutters-after":{borderLeftWidth:"1px"}},"&dark .cm-gutters":{backgroundColor:"#333338",color:"#ccc"},".cm-gutter":{display:"flex !important",flexDirection:"column",flexShrink:0,boxSizing:"border-box",minHeight:"100%",overflow:"hidden"},".cm-gutterElement":{boxSizing:"border-box"},".cm-lineNumbers .cm-gutterElement":{padding:"0 3px 0 5px",minWidth:"20px",textAlign:"right",whiteSpace:"nowrap"},"&light .cm-activeLineGutter":{backgroundColor:"#e2f2ff"},"&dark .cm-activeLineGutter":{backgroundColor:"#222227"},".cm-panels":{boxSizing:"border-box",position:"sticky",left:0,right:0,zIndex:300},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-dialog":{padding:"2px 19px 4px 6px",position:"relative","& label":{fontSize:"80%"}},".cm-dialog-close":{position:"absolute",top:"3px",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",fontSize:"14px",padding:"0"},".cm-tab":{display:"inline-block",overflow:"hidden",verticalAlign:"bottom"},".cm-widgetBuffer":{verticalAlign:"text-top",height:"1em",width:0,display:"inline"},".cm-placeholder":{color:"#888",display:"inline-block",verticalAlign:"top",userSelect:"none"},".cm-highlightSpace":{backgroundImage:"radial-gradient(circle at 50% 55%, #aaa 20%, transparent 5%)",backgroundPosition:"center"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="200" height="20"><path stroke="%23888" stroke-width="1" fill="none" d="M1 10H196L190 5M190 15L196 10M197 4L197 16"/></svg>')`,backgroundSize:"auto 100%",backgroundPosition:"right 90%",backgroundRepeat:"no-repeat"},".cm-trailingSpace":{backgroundColor:"#ff332255"},".cm-button":{verticalAlign:"middle",color:"inherit",fontSize:"70%",padding:".2em 1em",borderRadius:"1px"},"&light .cm-button":{backgroundImage:"linear-gradient(#eff1f5, #d9d9df)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#b4b4b4, #d0d3d6)"}},"&dark .cm-button":{backgroundImage:"linear-gradient(#393939, #111)",border:"1px solid #888","&:active":{backgroundImage:"linear-gradient(#111, #333)"}},".cm-textfield":{verticalAlign:"middle",color:"inherit",fontSize:"70%",border:"1px solid silver",padding:".2em .5em"},"&light .cm-textfield":{backgroundColor:"white"},"&dark .cm-textfield":{border:"1px solid #555",backgroundColor:"inherit"}},QC),qB={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},f0=gt.ie&&gt.ie_version<=11;class WB{constructor(t){this.view=t,this.active=!1,this.editContext=null,this.selectionRange=new x6,this.selectionChanged=!1,this.delayedFlush=-1,this.resizeTimeout=-1,this.queue=[],this.delayedAndroidKey=null,this.flushingAndroidKey=-1,this.lastChange=0,this.scrollTargets=[],this.intersection=null,this.resizeScroll=null,this.intersecting=!1,this.gapIntersection=null,this.gaps=[],this.printQuery=null,this.parentCheck=-1,this.dom=t.contentDOM,this.observer=new MutationObserver(n=>{for(let i of n)this.queue.push(i);(gt.ie&&gt.ie_version<=11||gt.ios&&t.composing)&&n.some(i=>i.type=="childList"&&i.removedNodes.length||i.type=="characterData"&&i.oldValue.length>i.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&gt.android&&t.constructor.EDIT_CONTEXT!==!1&&!(gt.chrome&&gt.chrome_version<126)&&(this.editContext=new UB(t),t.state.facet(Os)&&(t.contentDOM.editContext=this.editContext.editContext)),f0&&(this.onCharData=n=>{this.queue.push({target:n.target,type:"characterData",oldValue:n.prevValue}),this.flushSoon()}),this.onSelectionChange=this.onSelectionChange.bind(this),this.onResize=this.onResize.bind(this),this.onPrint=this.onPrint.bind(this),this.onScroll=this.onScroll.bind(this),window.matchMedia&&(this.printQuery=window.matchMedia("print")),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var n;((n=this.view.docView)===null||n===void 0?void 0:n.lastUpdate)<Date.now()-75&&this.onResize()}),this.resizeScroll.observe(t.scrollDOM)),this.addWindowListeners(this.win=t.win),this.start(),typeof IntersectionObserver=="function"&&(this.intersection=new IntersectionObserver(n=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),n.length>0&&n[n.length-1].intersectionRatio>0!=this.intersecting&&(this.intersecting=!this.intersecting,this.intersecting!=this.view.inView&&this.onScrollChanged(document.createEvent("Event")))},{threshold:[0,.001]}),this.intersection.observe(this.dom),this.gapIntersection=new IntersectionObserver(n=>{n.length>0&&n[n.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(t){this.view.inputState.runHandlers("scroll",t),this.intersecting&&this.view.measure()}onScroll(t){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(t)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(t){(t.type=="change"||!t.type)&&!t.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(t){if(this.gapIntersection&&(t.length!=this.gaps.length||this.gaps.some((n,i)=>n!=t[i]))){this.gapIntersection.disconnect();for(let n of t)this.gapIntersection.observe(n);this.gaps=t}}onSelectionChange(t){let n=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:i}=this,s=this.selectionRange;if(i.state.facet(Os)?i.root.activeElement!=this.dom:!_c(this.dom,s))return;let r=s.anchorNode&&i.docView.tile.nearest(s.anchorNode);if(r&&r.isWidget()&&r.widget.ignoreEvent(t)){n||(this.selectionChanged=!1);return}(gt.ie&&gt.ie_version<=11||gt.android&&gt.chrome)&&!i.state.selection.main.empty&&s.focusNode&&Mc(s.focusNode,s.focusOffset,s.anchorNode,s.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:t}=this,n=Vc(t.root);if(!n)return!1;let i=gt.safari&&t.root.nodeType==11&&t.root.activeElement==this.dom&&ZB(this.view,n)||n;if(!i||this.selectionRange.eq(i))return!1;let s=_c(this.dom,i);return s&&!this.selectionChanged&&t.inputState.lastFocusTime>Date.now()-200&&t.inputState.lastTouchTime<Date.now()-300&&v6(this.dom,i)?(this.view.inputState.lastFocusTime=0,t.docView.updateSelection(),!1):(this.selectionRange.setRange(i),s&&(this.selectionChanged=!0),!0)}setSelectionRange(t,n){this.selectionRange.set(t.node,t.offset,n.node,n.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let t=0,n=null;for(let i=this.dom;i;)if(i.nodeType==1)!n&&t<this.scrollTargets.length&&this.scrollTargets[t]==i?t++:n||(n=this.scrollTargets.slice(0,t)),n&&n.push(i),i=i.assignedSlot||i.parentNode;else if(i.nodeType==11)i=i.host;else break;if(t<this.scrollTargets.length&&!n&&(n=this.scrollTargets.slice(0,t)),n){for(let i of this.scrollTargets)i.removeEventListener("scroll",this.onScroll);for(let i of this.scrollTargets=n)i.addEventListener("scroll",this.onScroll)}}ignore(t){if(!this.active)return t();try{return this.stop(),t()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,qB),f0&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),f0&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(t,n){var i;if(!this.delayedAndroidKey){let s=()=>{let r=this.delayedAndroidKey;r&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=r.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&r.force&&Ql(this.dom,r.key,r.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(s)}(!this.delayedAndroidKey||t=="Enter")&&(this.delayedAndroidKey={key:t,keyCode:n,force:this.lastChange<Date.now()-50||!!(!((i=this.delayedAndroidKey)===null||i===void 0)&&i.force)})}clearDelayedAndroidKey(){this.win.cancelAnimationFrame(this.flushingAndroidKey),this.delayedAndroidKey=null,this.flushingAndroidKey=-1}flushSoon(){this.delayedFlush<0&&(this.delayedFlush=this.view.win.requestAnimationFrame(()=>{this.delayedFlush=-1,this.flush()}))}forceFlush(){this.delayedFlush>=0&&(this.view.win.cancelAnimationFrame(this.delayedFlush),this.delayedFlush=-1),this.flush()}pendingRecords(){for(let t of this.observer.takeRecords())this.queue.push(t);return this.queue}processRecords(){let t=this.pendingRecords();t.length&&(this.queue=[]);let n=-1,i=-1,s=!1;for(let r of t){let l=this.readMutation(r);l&&(l.typeOver&&(s=!0),n==-1?{from:n,to:i}=l:(n=Math.min(l.from,n),i=Math.max(l.to,i)))}return{from:n,to:i,typeOver:s}}readChange(){let{from:t,to:n,typeOver:i}=this.processRecords(),s=this.selectionChanged&&_c(this.dom,this.selectionRange);if(t<0&&!s)return null;t>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let r=new cB(this.view,t,n,i);return this.view.docView.domChanged={newSel:r.newSel?r.newSel.main:null},r}flush(t=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;t&&this.readSelectionRange();let n=this.readChange();if(!n)return this.view.requestMeasure(),!1;let i=this.view.state,s=TC(this.view,n);return this.view.state==i&&(n.domChanged||n.newSel&&!md(this.view.state.selection,n.newSel.main))&&this.view.update([]),s}readMutation(t){let n=this.view.docView.tile.nearest(t.target);if(!n||n.isWidget())return null;if(n.markDirty(t.type=="attributes"),t.type=="childList"){let i=jv(n,t.previousSibling||t.target.previousSibling,-1),s=jv(n,t.nextSibling||t.target.nextSibling,1);return{from:i?n.posAfter(i):n.posAtStart,to:s?n.posBefore(s):n.posAtEnd,typeOver:!1}}else return t.type=="characterData"?{from:n.posAtStart,to:n.posAtEnd,typeOver:t.target.nodeValue==t.oldValue}:null}setWindow(t){t!=this.win&&(this.removeWindowListeners(this.win),this.win=t,this.addWindowListeners(this.win))}addWindowListeners(t){t.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):t.addEventListener("beforeprint",this.onPrint),t.addEventListener("scroll",this.onScroll),t.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(t){t.removeEventListener("scroll",this.onScroll),t.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):t.removeEventListener("beforeprint",this.onPrint),t.document.removeEventListener("selectionchange",this.onSelectionChange)}update(t){this.editContext&&(this.editContext.update(t),t.startState.facet(Os)!=t.state.facet(Os)&&(t.view.contentDOM.editContext=t.state.facet(Os)?this.editContext.editContext:null))}destroy(){var t,n,i;this.stop(),(t=this.intersection)===null||t===void 0||t.disconnect(),(n=this.gapIntersection)===null||n===void 0||n.disconnect(),(i=this.resizeScroll)===null||i===void 0||i.disconnect();for(let s of this.scrollTargets)s.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey),this.editContext&&(this.view.contentDOM.editContext=null,this.editContext.destroy())}}function jv(e,t,n){for(;t;){let i=$e.get(t);if(i&&i.parent==e)return i;let s=t.parentNode;t=s!=e.dom?s:n>0?t.nextSibling:t.previousSibling}return null}function Rv(e,t){let n=t.startContainer,i=t.startOffset,s=t.endContainer,r=t.endOffset,l=e.docView.domAtPos(e.state.selection.main.anchor,1);return Mc(l.node,l.offset,s,r)&&([n,i,s,r]=[s,r,n,i]),{anchorNode:n,anchorOffset:i,focusNode:s,focusOffset:r}}function ZB(e,t){if(t.getComposedRanges){let s=t.getComposedRanges(e.root)[0];if(s)return Rv(e,s)}let n=null;function i(s){s.preventDefault(),s.stopImmediatePropagation(),n=s.getTargetRanges()[0]}return e.contentDOM.addEventListener("beforeinput",i,!0),e.dom.ownerDocument.execCommand("indent"),e.contentDOM.removeEventListener("beforeinput",i,!0),n?Rv(e,n):null}class UB{constructor(t){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(t.state);let n=this.editContext=new window.EditContext({text:t.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,t.state.selection.main.anchor))),selectionEnd:this.toContextPos(t.state.selection.main.head)});this.handlers.textupdate=i=>{let s=t.state.selection.main,{anchor:r,head:l}=s,c=this.toEditorPos(i.updateRangeStart),u=this.toEditorPos(i.updateRangeEnd);t.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:i.updateRangeStart,editorBase:c,drifted:!1});let f=u-c>i.text.length;c==this.from&&r<this.from?c=r:u==this.to&&r>this.to&&(u=r);let p=NC(t.state.sliceDoc(c,u),i.text,(f?s.from:s.to)-c,f?"end":null);if(!p){let g=lt.single(this.toEditorPos(i.selectionStart),this.toEditorPos(i.selectionEnd));md(g,s)||t.dispatch({selection:g,userEvent:"select"});return}let m={from:p.from+c,to:p.toA+c,insert:Zt.of(i.text.slice(p.from,p.toB).split(`
267
+ `))};if((gt.mac||gt.android)&&m.from==l-1&&/^\. ?$/.test(i.text)&&t.contentDOM.getAttribute("autocorrect")=="off"&&(m={from:c,to:u,insert:Zt.of([i.text.replace("."," ")])}),this.pendingContextChange=m,!t.state.readOnly){let g=this.to-this.from+(m.to-m.from+m.insert.length);jw(t,m,lt.single(this.toEditorPos(i.selectionStart,g),this.toEditorPos(i.selectionEnd,g)))}this.pendingContextChange&&(this.revertPending(t.state),this.setSelection(t.state)),m.from<m.to&&!m.insert.length&&t.inputState.composing>=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(n.text.slice(Math.max(0,i.updateRangeStart-1),Math.min(n.text.length,i.updateRangeStart+1)))&&this.handlers.compositionend(i)},this.handlers.characterboundsupdate=i=>{let s=[],r=null;for(let l=this.toEditorPos(i.rangeStart),c=this.toEditorPos(i.rangeEnd);l<c;l++){let u=t.coordsForChar(l);r=u&&new DOMRect(u.left,u.top,u.right-u.left,u.bottom-u.top)||r||new DOMRect,s.push(r)}n.updateCharacterBounds(i.rangeStart,s)},this.handlers.textformatupdate=i=>{let s=[];for(let r of i.getTextFormats()){let l=r.underlineStyle,c=r.underlineThickness;if(!/none/i.test(l)&&!/none/i.test(c)){let u=this.toEditorPos(r.rangeStart),f=this.toEditorPos(r.rangeEnd);if(u<f){let p=`text-decoration: underline ${/^[a-z]/.test(l)?l+" ":l=="Dashed"?"dashed ":l=="Squiggle"?"wavy ":""}${/thin/i.test(c)?1:2}px`;s.push(Tt.mark({attributes:{style:p}}).range(u,f))}}}t.dispatch({effects:xC.of(Tt.set(s))})},this.handlers.compositionstart=()=>{t.inputState.composing<0&&(t.inputState.composing=0,t.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(t.inputState.composing=-1,t.inputState.compositionFirstChange=null,this.composing){let{drifted:i}=this.composing;this.composing=null,i&&this.reset(t.state)}};for(let i in this.handlers)n.addEventListener(i,this.handlers[i]);this.measureReq={read:i=>{let s=Vc(i.root);s&&s.rangeCount&&this.editContext.updateSelectionBounds(s.getRangeAt(0).getBoundingClientRect())}}}applyEdits(t){let n=0,i=!1,s=this.pendingContextChange;return t.changes.iterChanges((r,l,c,u,f)=>{if(i)return;let p=f.length-(l-r);if(s&&l>=s.to)if(s.from==r&&s.to==l&&s.insert.eq(f)){s=this.pendingContextChange=null,n+=p,this.to+=p;return}else s=null,this.revertPending(t.state);if(r+=n,l+=n,l<=this.from)this.from+=p,this.to+=p;else if(r<this.to){if(r<this.from||l>this.to||this.to-this.from+f.length>3e4){i=!0;return}this.editContext.updateText(this.toContextPos(r),this.toContextPos(l),f.toString()),this.to+=p}n+=p}),s&&!i&&this.revertPending(t.state),!i}update(t){let n=this.pendingContextChange,i=t.startState.selection.main;this.composing&&(this.composing.drifted||!t.changes.touchesRange(i.from,i.to)&&t.transactions.some(s=>!s.isUserEvent("input.type")&&s.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=t.changes.mapPos(this.composing.editorBase)):!this.applyEdits(t)||!this.rangeIsValid(t.state)?(this.pendingContextChange=null,this.reset(t.state)):(t.docChanged||t.selectionSet||n)&&this.setSelection(t.state),(t.geometryChanged||t.docChanged||t.selectionSet)&&t.view.requestMeasure(this.measureReq)}resetRange(t){let{head:n}=t.selection.main;this.from=Math.max(0,n-1e4),this.to=Math.min(t.doc.length,n+1e4)}reset(t){this.resetRange(t),this.editContext.updateText(0,this.editContext.text.length,t.doc.sliceString(this.from,this.to)),this.setSelection(t)}revertPending(t){let n=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(n.from),this.toContextPos(n.from+n.insert.length),t.doc.sliceString(n.from,n.to))}setSelection(t){let{main:n}=t.selection,i=this.toContextPos(Math.max(this.from,Math.min(this.to,n.anchor))),s=this.toContextPos(n.head);(this.editContext.selectionStart!=i||this.editContext.selectionEnd!=s)&&this.editContext.updateSelection(i,s)}rangeIsValid(t){let{head:n}=t.selection.main;return!(this.from>0&&n-this.from<500||this.to<t.doc.length&&this.to-n<500||this.to-this.from>1e4*3)}toEditorPos(t,n=this.to-this.from){t=Math.min(t,n);let i=this.composing;return i&&i.drifted?i.editorBase+(t-i.contextBase):t+this.from}toContextPos(t){let n=this.composing;return n&&n.drifted?n.contextBase+(t-n.editorBase):t-this.from}destroy(){for(let t in this.handlers)this.editContext.removeEventListener(t,this.handlers[t])}}class yt{get state(){return this.viewState.state}get viewport(){return this.viewState.viewport}get visibleRanges(){return this.viewState.visibleRanges}get inView(){return this.viewState.inView}get composing(){return!!this.inputState&&this.inputState.composing>0}get compositionStarted(){return!!this.inputState&&this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(t={}){var n;this.plugins=[],this.pluginMap=new Map,this.editorAttrs={},this.contentAttrs={},this.bidiCache=[],this.destroyed=!1,this.updateState=2,this.measureScheduled=-1,this.measureRequests=[],this.contentDOM=document.createElement("div"),this.scrollDOM=document.createElement("div"),this.scrollDOM.tabIndex=-1,this.scrollDOM.className="cm-scroller",this.scrollDOM.appendChild(this.contentDOM),this.announceDOM=document.createElement("div"),this.announceDOM.className="cm-announced",this.announceDOM.setAttribute("aria-live","polite"),this.dom=document.createElement("div"),this.dom.appendChild(this.announceDOM),this.dom.appendChild(this.scrollDOM),t.parent&&t.parent.appendChild(this.dom);let{dispatch:i}=t;this.dispatchTransactions=t.dispatchTransactions||i&&(s=>s.forEach(r=>i(r,this)))||(s=>this.update(s)),this.dispatch=this.dispatch.bind(this),this._root=t.root||b6(t.parent)||document,this.viewState=new Dv(this,t.state||Wt.create(t)),t.scrollTo&&t.scrollTo.is(rf)&&(this.viewState.scrollTarget=t.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(Ml).map(s=>new o0(s));for(let s of this.plugins)s.update(this);this.observer=new WB(this),this.inputState=new dB(this),this.inputState.ensureHandlers(this.plugins),this.docView=new mv(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((n=document.fonts)===null||n===void 0)&&n.ready&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent="refresh",this.requestMeasure()})}dispatch(...t){let n=t.length==1&&t[0]instanceof ze?t:t.length==1&&Array.isArray(t[0])?t[0]:[this.state.update(...t)];this.dispatchTransactions(n,this)}update(t){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let n=!1,i=!1,s,r=this.state;for(let g of t){if(g.startState!=r)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");r=g.state}if(this.destroyed){this.viewState.state=r;return}let l=this.hasFocus,c=0,u=null;t.some(g=>g.annotation(HC))?(this.inputState.notifiedFocused=l,c=1):l!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=l,u=zC(r,l),u||(c=1));let f=this.observer.delayedAndroidKey,p=null;if(f?(this.observer.clearDelayedAndroidKey(),p=this.observer.readChange(),(p&&!this.state.doc.eq(r.doc)||!this.state.selection.eq(r.selection))&&(p=null)):this.observer.clear(),r.facet(Wt.phrases)!=this.state.facet(Wt.phrases))return this.setState(r);s=fd.create(this,r,t),s.flags|=c;let m=this.viewState.scrollTarget;try{this.updateState=2;for(let g of t){if(m&&(m=m.map(g.changes)),g.scrollIntoView){let{main:y}=g.state.selection,{x:$,y:b}=this.state.facet(yt.cursorScrollMargin);m=new Pl(y.empty?y:lt.cursor(y.head,y.head>y.anchor?-1:1),"nearest","nearest",b,$)}for(let y of g.effects)y.is(rf)&&(m=y.value.clip(this.state))}this.viewState.update(s,m),this.bidiCache=yd.update(this.bidiCache,s.changes),s.empty||(this.updatePlugins(s),this.inputState.update(s)),n=this.docView.update(s),this.state.facet(Cc)!=this.styleModules&&this.mountStyles(),i=this.updateAttrs(),this.showAnnouncements(t),this.docView.updateSelection(n,t.some(g=>g.isUserEvent("select.pointer")))}finally{this.updateState=0}if(s.startState.facet(hf)!=s.state.facet(hf)&&(this.viewState.mustMeasureContent=!0),(n||i||m||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),n&&this.docViewUpdate(),!s.empty)for(let g of this.state.facet(Oy))try{g(s)}catch(y){kn(this.state,y,"update listener")}(u||p)&&Promise.resolve().then(()=>{u&&this.state==u.startState&&this.dispatch(u),p&&!TC(this,p)&&f.force&&Ql(this.contentDOM,f.key,f.keyCode)})}setState(t){if(this.updateState!=0)throw new Error("Calls to EditorView.setState are not allowed while an update is in progress");if(this.destroyed){this.viewState.state=t;return}this.updateState=2;let n=this.hasFocus;try{for(let i of this.plugins)i.destroy(this);this.viewState=new Dv(this,t),this.plugins=t.facet(Ml).map(i=>new o0(i)),this.pluginMap.clear();for(let i of this.plugins)i.update(this);this.docView.destroy(),this.docView=new mv(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}n&&this.focus(),this.requestMeasure()}updatePlugins(t){let n=t.startState.facet(Ml),i=t.state.facet(Ml);if(n!=i){let s=[];for(let r of i){let l=n.indexOf(r);if(l<0)s.push(new o0(r));else{let c=this.plugins[l];c.mustUpdate=t,s.push(c)}}for(let r of this.plugins)r.mustUpdate!=t&&r.destroy(this);this.plugins=s,this.pluginMap.clear()}else for(let s of this.plugins)s.mustUpdate=t;for(let s=0;s<this.plugins.length;s++)this.plugins[s].update(this);n!=i&&this.inputState.ensureHandlers(this.plugins)}docViewUpdate(){for(let t of this.plugins){let n=t.value;if(n&&n.docViewUpdate)try{n.docViewUpdate(this)}catch(i){kn(this.state,i,"doc view update listener")}}}measure(t=!0){if(this.destroyed)return;if(this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.observer.delayedAndroidKey){this.measureScheduled=-1,this.requestMeasure();return}this.measureScheduled=0,t&&this.observer.forceFlush();let n=null,i=this.viewState.scrollParent,s=this.viewState.getScrollOffset(),{scrollAnchorPos:r,scrollAnchorHeight:l}=this.viewState;Math.abs(s-this.viewState.scrollOffset)>1&&(l=-1),this.viewState.scrollAnchorHeight=-1;try{for(let c=0;;c++){if(l<0)if(iC(i||this.win))r=-1,l=this.viewState.heightMap.height;else{let y=this.viewState.scrollAnchorAt(s);r=y.from,l=y.top}this.updateState=1;let u=this.viewState.measure();if(!u&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(c>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let f=[];u&4||([this.measureRequests,f]=[f,this.measureRequests]);let p=f.map(y=>{try{return y.read(this)}catch($){return kn(this.state,$),_v}}),m=fd.create(this,this.state,[]),g=!1;m.flags|=u,n?n.flags|=u:n=m,this.updateState=2,m.empty||(this.updatePlugins(m),this.inputState.update(m),this.updateAttrs(),g=this.docView.update(m),g&&this.docViewUpdate());for(let y=0;y<f.length;y++)if(p[y]!=_v)try{let $=f[y];$.write&&$.write(p[y],this)}catch($){kn(this.state,$)}if(g&&this.docView.updateSelection(!0),!m.viewportChanged&&this.measureRequests.length==0){if(this.viewState.editorHeight)if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null,l=-1;continue}else{let $=((r<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(r).top)-l)/this.scaleY;if(($>1||$<-1)&&!(gt.ios&&this.inputState.lastIOSMomentumScroll>Date.now()-100)&&(i==this.scrollDOM||this.hasFocus||Math.max(this.inputState.lastWheelEvent,this.inputState.lastTouchTime)>Date.now()-100)){s=s+$,i?i.scrollTop+=$:this.win.scrollBy(0,$),l=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(n&&!n.empty)for(let c of this.state.facet(Oy))c(n)}get themeClasses(){return Ny+" "+(this.state.facet(Ty)?LC:GC)+" "+this.state.facet(hf)}updateAttrs(){let t=Mv(this,bC,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),n={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(Os)?"true":"false",class:"cm-content",style:`${gt.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(n["aria-readonly"]="true"),Mv(this,Dw,n);let i=this.observer.ignore(()=>{let s=cv(this.contentDOM,this.contentAttrs,n),r=cv(this.dom,this.editorAttrs,t);return s||r});return this.editorAttrs=t,this.contentAttrs=n,i}showAnnouncements(t){let n=!0;for(let i of t)for(let s of i.effects)if(s.is(yt.announce)){n&&(this.announceDOM.textContent=""),n=!1;let r=this.announceDOM.appendChild(document.createElement("div"));r.textContent=s.value}}mountStyles(){this.styleModules=this.state.facet(Cc);let t=this.state.facet(yt.cspNonce);Or.mount(this.root,this.styleModules.concat(PB).reverse(),t?{nonce:t}:void 0)}readMeasured(){if(this.updateState==2)throw new Error("Reading the editor layout isn't allowed during an update");this.updateState==0&&this.measureScheduled>-1&&this.measure(!1)}requestMeasure(t){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),t){if(this.measureRequests.indexOf(t)>-1)return;if(t.key!=null){for(let n=0;n<this.measureRequests.length;n++)if(this.measureRequests[n].key===t.key){this.measureRequests[n]=t;return}}this.measureRequests.push(t)}}plugin(t){let n=this.pluginMap.get(t);return(n===void 0||n&&n.plugin!=t)&&this.pluginMap.set(t,n=this.plugins.find(i=>i.plugin==t)||null),n&&n.update(this).value}get documentTop(){return this.contentDOM.getBoundingClientRect().top+this.viewState.paddingTop}get documentPadding(){return{top:this.viewState.paddingTop,bottom:this.viewState.paddingBottom}}get scaleX(){return this.viewState.scaleX}get scaleY(){return this.viewState.scaleY}elementAtHeight(t){return this.readMeasured(),this.viewState.elementAtHeight(t)}lineBlockAtHeight(t){return this.readMeasured(),this.viewState.lineBlockAtHeight(t)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(t){return this.viewState.lineBlockAt(t)}get contentHeight(){return this.viewState.contentHeight}moveByChar(t,n,i){return u0(this,t,gv(this,t,n,i))}moveByGroup(t,n){return u0(this,t,gv(this,t,n,i=>iB(this,t.head,i)))}visualLineSide(t,n){let i=this.bidiSpans(t),s=this.textDirectionAt(t.from),r=i[n?i.length-1:0];return lt.cursor(r.side(n,s)+t.from,r.forward(!n,s)?1:-1)}moveToLineBoundary(t,n,i=!0){return nB(this,t,n,i)}moveVertically(t,n,i){return u0(this,t,sB(this,t,n,i))}domAtPos(t,n=1){return this.docView.domAtPos(t,n)}posAtDOM(t,n=0){return this.docView.posFromDOM(t,n)}posAtCoords(t,n=!0){this.readMeasured();let i=Ey(this,t,n);return i&&i.pos}posAndSideAtCoords(t,n=!0){return this.readMeasured(),Ey(this,t,n)}coordsAtPos(t,n=1){this.readMeasured();let i=this.state.doc.lineAt(t),s=this.bidiSpans(i),r=s[Li.find(s,t-i.from,-1,n)];return this.docView.coordsAt(t,n,r.dir==oe.RTL)}coordsForChar(t){return this.readMeasured(),this.docView.coordsForChar(t)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(t){return!this.state.facet(yC)||t<this.viewport.from||t>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(t))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(t){if(t.length>IB)return cC(t.length);let n=this.textDirectionAt(t.from),i;for(let r of this.bidiCache)if(r.from==t.from&&r.dir==n&&(r.fresh||aC(r.isolates,i=fv(this,t))))return r.order;i||(i=fv(this,t));let s=T6(t.text,n,i);return this.bidiCache.push(new yd(t.from,t.to,n,i,!0,s)),s}get hasFocus(){var t;return(this.dom.ownerDocument.hasFocus()||gt.safari&&((t=this.inputState)===null||t===void 0?void 0:t.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{nC(this.contentDOM),this.docView.updateSelection()})}setRoot(t){this._root!=t&&(this._root=t,this.observer.setWindow((t.nodeType==9?t:t.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let t of this.plugins)t.destroy(this);this.plugins=[],this.inputState.destroy(),this.docView.destroy(),this.dom.remove(),this.observer.destroy(),this.measureScheduled>-1&&this.win.cancelAnimationFrame(this.measureScheduled),this.destroyed=!0}static scrollIntoView(t,n={}){var i,s,r,l;return rf.of(new Pl(typeof t=="number"?lt.cursor(t):t,(i=n.y)!==null&&i!==void 0?i:"nearest",(s=n.x)!==null&&s!==void 0?s:"nearest",(r=n.yMargin)!==null&&r!==void 0?r:5,(l=n.xMargin)!==null&&l!==void 0?l:5))}scrollSnapshot(){let{scrollTop:t,scrollLeft:n}=this.scrollDOM,i=this.viewState.scrollAnchorAt(t);return rf.of(new Pl(lt.cursor(i.from),"start","start",i.top-t,n,!0))}setTabFocusMode(t){t==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof t=="boolean"?this.inputState.tabFocusMode=t?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+t)}static domEventHandlers(t){return ke.define(()=>({}),{eventHandlers:t})}static domEventObservers(t){return ke.define(()=>({}),{eventObservers:t})}static theme(t,n){let i=Or.newName(),s=[hf.of(i),Cc.of(jy(`.${i}`,t))];return n&&n.dark&&s.push(Ty.of(!0)),s}static baseTheme(t){return Nr.lowest(Cc.of(jy("."+Ny,t,QC)))}static findFromDOM(t){var n;let i=t.querySelector(".cm-content"),s=i&&$e.get(i)||$e.get(t);return((n=s==null?void 0:s.root)===null||n===void 0?void 0:n.view)||null}}yt.styleModule=Cc;yt.inputHandler=mC;yt.clipboardInputFilter=Cw;yt.clipboardOutputFilter=Ew;yt.scrollHandler=$C;yt.focusChangeEffect=gC;yt.perLineTextDirection=yC;yt.exceptionSink=pC;yt.updateListener=Oy;yt.editable=Os;yt.mouseSelectionStyle=dC;yt.dragMovesSelection=fC;yt.clickAddsSelectionRange=hC;yt.decorations=tp;yt.blockWrappers=vC;yt.outerDecorations=Tw;yt.atomicRanges=wu;yt.bidiIsolatedRanges=SC;yt.cursorScrollMargin=wt.define({combine:e=>{let t=5,n=5;for(let i of e)typeof i=="number"?t=n=i:{x:t,y:n}=i;return{x:t,y:n}}});yt.scrollMargins=OC;yt.darkTheme=Ty;yt.cspNonce=wt.define({combine:e=>e.length?e[0]:""});yt.contentAttributes=Dw;yt.editorAttributes=bC;yt.lineWrapping=yt.contentAttributes.of({class:"cm-lineWrapping"});yt.announce=_t.define();const IB=4096,_v={};class yd{constructor(t,n,i,s,r,l){this.from=t,this.to=n,this.dir=i,this.isolates=s,this.fresh=r,this.order=l}static update(t,n){if(n.empty&&!t.some(r=>r.fresh))return t;let i=[],s=t.length?t[t.length-1].dir:oe.LTR;for(let r=Math.max(0,t.length-10);r<t.length;r++){let l=t[r];l.dir==s&&!n.touchesRange(l.from,l.to)&&i.push(new yd(n.mapPos(l.from,1),n.mapPos(l.to,-1),l.dir,l.isolates,!1,l.order))}return i}}function Mv(e,t,n){for(let i=e.state.facet(t),s=i.length-1;s>=0;s--){let r=i[s],l=typeof r=="function"?r(e):r;l&&Sw(l,n)}return n}const FB=gt.mac?"mac":gt.windows?"win":gt.linux?"linux":"key";function VB(e,t){const n=e.split(/-(?!$)/);let i=n[n.length-1];i=="Space"&&(i=" ");let s,r,l,c;for(let u=0;u<n.length-1;++u){const f=n[u];if(/^(cmd|meta|m)$/i.test(f))c=!0;else if(/^a(lt)?$/i.test(f))s=!0;else if(/^(c|ctrl|control)$/i.test(f))r=!0;else if(/^s(hift)?$/i.test(f))l=!0;else if(/^mod$/i.test(f))t=="mac"?c=!0:r=!0;else throw new Error("Unrecognized modifier name: "+f)}return s&&(i="Alt-"+i),r&&(i="Ctrl-"+i),c&&(i="Meta-"+i),l&&(i="Shift-"+i),i}function ff(e,t,n){return t.altKey&&(e="Alt-"+e),t.ctrlKey&&(e="Ctrl-"+e),t.metaKey&&(e="Meta-"+e),n!==!1&&t.shiftKey&&(e="Shift-"+e),e}const XB=Nr.default(yt.domEventHandlers({keydown(e,t){return qC(PC(t.state),e,t,"editor")}})),Mw=wt.define({enables:XB}),Av=new WeakMap;function PC(e){let t=e.facet(Mw),n=Av.get(t);return n||Av.set(t,n=tY(t.reduce((i,s)=>i.concat(s),[]))),n}function KB(e,t,n){return qC(PC(e.state),t,e,n)}let gr=null;const JB=4e3;function tY(e,t=FB){let n=Object.create(null),i=Object.create(null),s=(l,c)=>{let u=i[l];if(u==null)i[l]=c;else if(u!=c)throw new Error("Key binding "+l+" is used both as a regular binding and as a multi-stroke prefix")},r=(l,c,u,f,p)=>{var m,g;let y=n[l]||(n[l]=Object.create(null)),$=c.split(/ (?!$)/).map(O=>VB(O,t));for(let O=1;O<$.length;O++){let E=$.slice(0,O).join(" ");s(E,!0),y[E]||(y[E]={preventDefault:!0,stopPropagation:!1,run:[k=>{let D=gr={view:k,prefix:E,scope:l};return setTimeout(()=>{gr==D&&(gr=null)},JB),!0}]})}let b=$.join(" ");s(b,!1);let S=y[b]||(y[b]={preventDefault:!1,stopPropagation:!1,run:((g=(m=y._any)===null||m===void 0?void 0:m.run)===null||g===void 0?void 0:g.slice())||[]});u&&S.run.push(u),f&&(S.preventDefault=!0),p&&(S.stopPropagation=!0)};for(let l of e){let c=l.scope?l.scope.split(" "):["editor"];if(l.any)for(let f of c){let p=n[f]||(n[f]=Object.create(null));p._any||(p._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:m}=l;for(let g in p)p[g].run.push(y=>m(y,Ry))}let u=l[t]||l.key;if(u)for(let f of c)r(f,u,l.run,l.preventDefault,l.stopPropagation),l.shift&&r(f,"Shift-"+u,l.shift,l.preventDefault,l.stopPropagation)}return n}let Ry=null;function qC(e,t,n,i){Ry=t;let s=p6(t),r=bn(s,0),l=Yi(r)==s.length&&s!=" ",c="",u=!1,f=!1,p=!1;gr&&gr.view==n&&gr.scope==i&&(c=gr.prefix+" ",RC.indexOf(t.keyCode)<0&&(f=!0,gr=null));let m=new Set,g=S=>{if(S){for(let O of S.run)if(!m.has(O)&&(m.add(O),O(n)))return S.stopPropagation&&(p=!0),!0;S.preventDefault&&(S.stopPropagation&&(p=!0),f=!0)}return!1},y=e[i],$,b;return y&&(g(y[c+ff(s,t,!l)])?u=!0:l&&(t.altKey||t.metaKey||t.ctrlKey)&&!(gt.windows&&t.ctrlKey&&t.altKey)&&!(gt.mac&&t.altKey&&!(t.ctrlKey||t.metaKey))&&($=kr[t.keyCode])&&$!=s?(g(y[c+ff($,t,!0)])||t.shiftKey&&(b=Ic[t.keyCode])!=s&&b!=$&&g(y[c+ff(b,t,!1)]))&&(u=!0):l&&t.shiftKey&&g(y[c+ff(s,t,!0)])&&(u=!0),!u&&g(y._any)&&(u=!0)),f&&(u=!0),u&&p&&t.stopPropagation(),Ry=null,u}class $o{constructor(t,n,i,s,r){this.className=t,this.left=n,this.top=i,this.width=s,this.height=r}draw(){let t=document.createElement("div");return t.className=this.className,this.adjust(t),t}update(t,n){return n.className!=this.className?!1:(this.adjust(t),!0)}adjust(t){t.style.left=this.left+"px",t.style.top=this.top+"px",this.width!=null&&(t.style.width=this.width+"px"),t.style.height=this.height+"px"}eq(t){return this.left==t.left&&this.top==t.top&&this.width==t.width&&this.height==t.height&&this.className==t.className}static forRange(t,n,i){if(i.empty){let s=t.coordsAtPos(i.head,i.assoc||1);if(!s)return[];let r=WC(t);return[new $o(n,s.left-r.left,s.top-r.top,null,s.bottom-s.top)]}else return eY(t,n,i)}}function WC(e){let t=e.scrollDOM.getBoundingClientRect();return{left:(e.textDirection==oe.LTR?t.left:t.right-e.scrollDOM.clientWidth*e.scaleX)-e.scrollDOM.scrollLeft*e.scaleX,top:t.top-e.scrollDOM.scrollTop*e.scaleY}}function Hv(e,t,n,i){let s=e.coordsAtPos(t,n*2);if(!s)return i;let r=e.dom.getBoundingClientRect(),l=(s.top+s.bottom)/2,c=e.posAtCoords({x:r.left+1,y:l}),u=e.posAtCoords({x:r.right-1,y:l});return c==null||u==null?i:{from:Math.max(i.from,Math.min(c,u)),to:Math.min(i.to,Math.max(c,u))}}function eY(e,t,n){if(n.to<=e.viewport.from||n.from>=e.viewport.to)return[];let i=Math.max(n.from,e.viewport.from),s=Math.min(n.to,e.viewport.to),r=e.textDirection==oe.LTR,l=e.contentDOM,c=l.getBoundingClientRect(),u=WC(e),f=l.querySelector(".cm-line"),p=f&&window.getComputedStyle(f),m=c.left+(p?parseInt(p.paddingLeft)+Math.min(0,parseInt(p.textIndent)):0),g=c.right-(p?parseInt(p.paddingRight):0),y=Cy(e,i,1),$=Cy(e,s,-1),b=y.type==Ue.Text?y:null,S=$.type==Ue.Text?$:null;if(b&&(e.lineWrapping||y.widgetLineBreaks)&&(b=Hv(e,i,1,b)),S&&(e.lineWrapping||$.widgetLineBreaks)&&(S=Hv(e,s,-1,S)),b&&S&&b.from==S.from&&b.to==S.to)return E(k(n.from,n.to,b));{let _=b?k(n.from,null,b):D(y,!1),A=S?k(null,n.to,S):D($,!0),H=[];return(b||y).to<(S||$).from-(b&&S?1:0)||y.widgetLineBreaks>1&&_.bottom+e.defaultLineHeight/2<A.top?H.push(O(m,_.bottom,g,A.top)):_.bottom<A.top&&e.elementAtHeight((_.bottom+A.top)/2).type==Ue.Text&&(_.bottom=A.top=(_.bottom+A.top)/2),E(_).concat(H).concat(E(A))}function O(_,A,H,Y){return new $o(t,_-u.left,A-u.top,Math.max(0,H-_),Y-A)}function E({top:_,bottom:A,horizontal:H}){let Y=[];for(let W=0;W<H.length;W+=2)Y.push(O(H[W],_,H[W+1],A));return Y}function k(_,A,H){let Y=1e9,W=-1e9,nt=[];function U(M,G,T,z,Z){let Q=e.coordsAtPos(M,M==H.to?-2:2),et=e.coordsAtPos(T,T==H.from?2:-2);!Q||!et||(Y=Math.min(Q.top,et.top,Y),W=Math.max(Q.bottom,et.bottom,W),Z==oe.LTR?nt.push(r&&G?m:Q.left,r&&z?g:et.right):nt.push(!r&&z?m:et.left,!r&&G?g:Q.right))}let P=_??H.from,F=A??H.to;for(let M of e.visibleRanges)if(M.to>P&&M.from<F)for(let G=Math.max(M.from,P),T=Math.min(M.to,F);;){let z=e.state.doc.lineAt(G);for(let Z of e.bidiSpans(z)){let Q=Z.from+z.from,et=Z.to+z.from;if(Q>=T)break;et>G&&U(Math.max(Q,G),_==null&&Q<=P,Math.min(et,T),A==null&&et>=F,Z.dir)}if(G=z.to+1,G>=T)break}return nt.length==0&&U(P,_==null,F,A==null,e.textDirection),{top:Y,bottom:W,horizontal:nt}}function D(_,A){let H=c.top+(A?_.top:_.bottom);return{top:H,bottom:H,horizontal:[]}}}function nY(e,t){return e.constructor==t.constructor&&e.eq(t)}class iY{constructor(t,n){this.view=t,this.layer=n,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=t.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),n.above&&this.dom.classList.add("cm-layer-above"),n.class&&this.dom.classList.add(n.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(t.state),t.requestMeasure(this.measureReq),n.mount&&n.mount(this.dom,t)}update(t){t.startState.facet(zf)!=t.state.facet(zf)&&this.setOrder(t.state),(this.layer.update(t,this.dom)||t.geometryChanged)&&(this.scale(),t.view.requestMeasure(this.measureReq))}docViewUpdate(t){this.layer.updateOnDocViewUpdate!==!1&&t.requestMeasure(this.measureReq)}setOrder(t){let n=0,i=t.facet(zf);for(;n<i.length&&i[n]!=this.layer;)n++;this.dom.style.zIndex=String((this.layer.above?150:-1)-n)}measure(){return this.layer.markers(this.view)}scale(){let{scaleX:t,scaleY:n}=this.view;(t!=this.scaleX||n!=this.scaleY)&&(this.scaleX=t,this.scaleY=n,this.dom.style.transform=`scale(${1/t}, ${1/n})`)}draw(t){if(t.length!=this.drawn.length||t.some((n,i)=>!nY(n,this.drawn[i]))){let n=this.dom.firstChild,i=0;for(let s of t)s.update&&n&&s.constructor&&this.drawn[i].constructor&&s.update(n,this.drawn[i])?(n=n.nextSibling,i++):this.dom.insertBefore(s.draw(),n);for(;n;){let s=n.nextSibling;n.remove(),n=s}this.drawn=t,gt.webkit&&(this.dom.style.display=this.dom.firstChild?"":"none")}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}}const zf=wt.define();function ZC(e){return[ke.define(t=>new iY(t,e)),zf.of(e)]}const oa=wt.define({combine(e){return Xi(e,{cursorBlinkRate:1200,drawRangeCursor:!0,iosSelectionHandles:!0},{cursorBlinkRate:(t,n)=>Math.min(t,n),drawRangeCursor:(t,n)=>t||n})}});function sY(e={}){return[oa.of(e),rY,oY,lY,wC.of(!0)]}function UC(e){return e.startState.facet(oa)!=e.state.facet(oa)}const rY=ZC({above:!0,markers(e){let{state:t}=e,n=t.facet(oa),i=[];for(let s of t.selection.ranges){let r=s==t.selection.main;if(s.empty||n.drawRangeCursor&&!(r&&gt.ios&&n.iosSelectionHandles)){let l=r?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",c=s.empty?s:lt.cursor(s.head,s.assoc);for(let u of $o.forRange(e,l,c))i.push(u)}}return i},update(e,t){e.transactions.some(i=>i.selection)&&(t.style.animationName=t.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let n=UC(e);return n&&zv(e.state,t),e.docChanged||e.selectionSet||n},mount(e,t){zv(t.state,e)},class:"cm-cursorLayer"});function zv(e,t){t.style.animationDuration=e.facet(oa).cursorBlinkRate+"ms"}const oY=ZC({above:!1,markers(e){let t=[],{main:n,ranges:i}=e.state.selection;for(let s of i)if(!s.empty)for(let r of $o.forRange(e,"cm-selectionBackground",s))t.push(r);if(gt.ios&&!n.empty&&e.state.facet(oa).iosSelectionHandles){for(let s of $o.forRange(e,"cm-selectionHandle cm-selectionHandle-start",lt.cursor(n.from,1)))t.push(s);for(let s of $o.forRange(e,"cm-selectionHandle cm-selectionHandle-end",lt.cursor(n.to,1)))t.push(s)}return t},update(e,t){return e.docChanged||e.selectionSet||e.viewportChanged||UC(e)},class:"cm-selectionLayer"}),lY=Nr.highest(yt.theme({".cm-line":{"& ::selection, &::selection":{backgroundColor:"transparent !important"},caretColor:"transparent !important"},".cm-content":{caretColor:"transparent !important","& :focus":{caretColor:"initial !important","&::selection, & ::selection":{backgroundColor:"Highlight !important"}}}})),IC=_t.define({map(e,t){return e==null?null:t.mapPos(e)}}),Dc=Je.define({create(){return null},update(e,t){return e!=null&&(e=t.changes.mapPos(e)),t.effects.reduce((n,i)=>i.is(IC)?i.value:n,e)}}),aY=ke.fromClass(class{constructor(e){this.view=e,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(e){var t;let n=e.state.field(Dc);n==null?this.cursor!=null&&((t=this.cursor)===null||t===void 0||t.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(e.startState.field(Dc)!=n||e.docChanged||e.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:e}=this,t=e.state.field(Dc),n=t!=null&&e.coordsAtPos(t);if(!n)return null;let i=e.scrollDOM.getBoundingClientRect();return{left:n.left-i.left+e.scrollDOM.scrollLeft*e.scaleX,top:n.top-i.top+e.scrollDOM.scrollTop*e.scaleY,height:n.bottom-n.top}}drawCursor(e){if(this.cursor){let{scaleX:t,scaleY:n}=this.view;e?(this.cursor.style.left=e.left/t+"px",this.cursor.style.top=e.top/n+"px",this.cursor.style.height=e.height/n+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(e){this.view.state.field(Dc)!=e&&this.view.dispatch({effects:IC.of(e)})}},{eventObservers:{dragover(e){this.setDropPos(this.view.posAtCoords({x:e.clientX,y:e.clientY}))},dragleave(e){(e.target==this.view.contentDOM||!this.view.contentDOM.contains(e.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function cY(){return[Dc,aY]}function Bv(e,t,n,i,s){t.lastIndex=0;for(let r=e.iterRange(n,i),l=n,c;!r.next().done;l+=r.value.length)if(!r.lineBreak)for(;c=t.exec(r.value);)s(l+c.index,c)}function uY(e,t){let n=e.visibleRanges;if(n.length==1&&n[0].from==e.viewport.from&&n[0].to==e.viewport.to)return n;let i=[];for(let{from:s,to:r}of n)s=Math.max(e.state.doc.lineAt(s).from,s-t),r=Math.min(e.state.doc.lineAt(r).to,r+t),i.length&&i[i.length-1].to>=s?i[i.length-1].to=r:i.push({from:s,to:r});return i}class hY{constructor(t){const{regexp:n,decoration:i,decorate:s,boundary:r,maxLength:l=1e3}=t;if(!n.global)throw new RangeError("The regular expression given to MatchDecorator should have its 'g' flag set");if(this.regexp=n,s)this.addMatch=(c,u,f,p)=>s(p,f,f+c[0].length,c,u);else if(typeof i=="function")this.addMatch=(c,u,f,p)=>{let m=i(c,u,f);m&&p(f,f+c[0].length,m)};else if(i)this.addMatch=(c,u,f,p)=>p(f,f+c[0].length,i);else throw new RangeError("Either 'decorate' or 'decoration' should be provided to MatchDecorator");this.boundary=r,this.maxLength=l}createDeco(t){let n=new Ts,i=n.add.bind(n);for(let{from:s,to:r}of uY(t,this.maxLength))Bv(t.state.doc,this.regexp,s,r,(l,c)=>this.addMatch(c,t,l,i));return n.finish()}updateDeco(t,n){let i=1e9,s=-1;return t.docChanged&&t.changes.iterChanges((r,l,c,u)=>{u>=t.view.viewport.from&&c<=t.view.viewport.to&&(i=Math.min(c,i),s=Math.max(u,s))}),t.viewportMoved||s-i>1e3?this.createDeco(t.view):s>-1?this.updateRange(t.view,n.map(t.changes),i,s):n}updateRange(t,n,i,s){for(let r of t.visibleRanges){let l=Math.max(r.from,i),c=Math.min(r.to,s);if(c>=l){let u=t.state.doc.lineAt(l),f=u.to<c?t.state.doc.lineAt(c):u,p=Math.max(r.from,u.from),m=Math.min(r.to,f.to);if(this.boundary){for(;l>u.from;l--)if(this.boundary.test(u.text[l-1-u.from])){p=l;break}for(;c<f.to;c++)if(this.boundary.test(f.text[c-f.from])){m=c;break}}let g=[],y,$=(b,S,O)=>g.push(O.range(b,S));if(u==f)for(this.regexp.lastIndex=p-u.from;(y=this.regexp.exec(u.text))&&y.index<m-u.from;)this.addMatch(y,t,y.index+u.from,$);else Bv(t.state.doc,this.regexp,p,m,(b,S)=>this.addMatch(S,t,b,$));n=n.update({filterFrom:p,filterTo:m,filter:(b,S)=>b<p||S>m,add:g})}}return n}}const _y=/x/.unicode!=null?"gu":"g",fY=new RegExp(`[\0-\b
268
+ --Ÿ­؜​‎‏\u2028\u2029‭‮⁦⁧⁩\uFEFF-]`,_y),dY={0:"null",7:"bell",8:"backspace",10:"newline",11:"vertical tab",13:"carriage return",27:"escape",8203:"zero width space",8204:"zero width non-joiner",8205:"zero width joiner",8206:"left-to-right mark",8207:"right-to-left mark",8232:"line separator",8237:"left-to-right override",8238:"right-to-left override",8294:"left-to-right isolate",8295:"right-to-left isolate",8297:"pop directional isolate",8233:"paragraph separator",65279:"zero width no-break space",65532:"object replacement"};let d0=null;function pY(){var e;if(d0==null&&typeof document<"u"&&document.body){let t=document.body.style;d0=((e=t.tabSize)!==null&&e!==void 0?e:t.MozTabSize)!=null}return d0||!1}const Bf=wt.define({combine(e){let t=Xi(e,{render:null,specialChars:fY,addSpecialChars:null});return(t.replaceTabs=!pY())&&(t.specialChars=new RegExp(" |"+t.specialChars.source,_y)),t.addSpecialChars&&(t.specialChars=new RegExp(t.specialChars.source+"|"+t.addSpecialChars.source,_y)),t}});function mY(e={}){return[Bf.of(e),gY()]}let Yv=null;function gY(){return Yv||(Yv=ke.fromClass(class{constructor(e){this.view=e,this.decorations=Tt.none,this.decorationCache=Object.create(null),this.decorator=this.makeDecorator(e.state.facet(Bf)),this.decorations=this.decorator.createDeco(e)}makeDecorator(e){return new hY({regexp:e.specialChars,decoration:(t,n,i)=>{let{doc:s}=n.state,r=bn(t[0],0);if(r==9){let l=s.lineAt(i),c=n.state.tabSize,u=fa(l.text,c,i-l.from);return Tt.replace({widget:new xY((c-u%c)*this.view.defaultCharacterWidth/this.view.scaleX)})}return this.decorationCache[r]||(this.decorationCache[r]=Tt.replace({widget:new $Y(e,r)}))},boundary:e.replaceTabs?void 0:/[^]/})}update(e){let t=e.state.facet(Bf);e.startState.facet(Bf)!=t?(this.decorator=this.makeDecorator(t),this.decorations=this.decorator.createDeco(e.view)):this.decorations=this.decorator.updateDeco(e,this.decorations)}},{decorations:e=>e.decorations}))}const yY="•";function wY(e){return e>=32?yY:e==10?"␤":String.fromCharCode(9216+e)}class $Y extends _s{constructor(t,n){super(),this.options=t,this.code=n}eq(t){return t.code==this.code}toDOM(t){let n=wY(this.code),i=t.state.phrase("Control character")+" "+(dY[this.code]||"0x"+this.code.toString(16)),s=this.options.render&&this.options.render(this.code,i,n);if(s)return s;let r=document.createElement("span");return r.textContent=n,r.title=i,r.setAttribute("aria-label",i),r.className="cm-specialChar",r}ignoreEvent(){return!1}}class xY extends _s{constructor(t){super(),this.width=t}eq(t){return t.width==this.width}toDOM(){let t=document.createElement("span");return t.textContent=" ",t.className="cm-tab",t.style.width=this.width+"px",t}ignoreEvent(){return!1}}function bY(){return SY}const vY=Tt.line({class:"cm-activeLine"}),SY=ke.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.docChanged||e.selectionSet)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=-1,n=[];for(let i of e.state.selection.ranges){let s=e.lineBlockAt(i.head);s.from>t&&(n.push(vY.range(s.from)),t=s.from)}return Tt.set(n)}},{decorations:e=>e.decorations}),My=2e3;function OY(e,t,n){let i=Math.min(t.line,n.line),s=Math.max(t.line,n.line),r=[];if(t.off>My||n.off>My||t.col<0||n.col<0){let l=Math.min(t.off,n.off),c=Math.max(t.off,n.off);for(let u=i;u<=s;u++){let f=e.doc.line(u);f.length<=c&&r.push(lt.range(f.from+l,f.to+c))}}else{let l=Math.min(t.col,n.col),c=Math.max(t.col,n.col);for(let u=i;u<=s;u++){let f=e.doc.line(u),p=dy(f.text,l,e.tabSize,!0);if(p<0)r.push(lt.cursor(f.to));else{let m=dy(f.text,c,e.tabSize);r.push(lt.range(f.from+p,f.from+m))}}}return r}function kY(e,t){let n=e.coordsAtPos(e.viewport.from);return n?Math.round(Math.abs((n.left-t)/e.defaultCharacterWidth)):-1}function Gv(e,t){let n=e.posAtCoords({x:t.clientX,y:t.clientY},!1),i=e.state.doc.lineAt(n),s=n-i.from,r=s>My?-1:s==i.length?kY(e,t.clientX):fa(i.text,e.state.tabSize,n-i.from);return{line:i.number,col:r,off:s}}function CY(e,t){let n=Gv(e,t),i=e.state.selection;return n?{update(s){if(s.docChanged){let r=s.changes.mapPos(s.startState.doc.line(n.line).from),l=s.state.doc.lineAt(r);n={line:l.number,col:n.col,off:Math.min(n.off,l.length)},i=i.map(s.changes)}},get(s,r,l){let c=Gv(e,s);if(!c)return i;let u=OY(e.state,n,c);return u.length?l?lt.create(u.concat(i.ranges)):lt.create(u):i}}:null}function EY(e){let t=(n=>n.altKey&&n.button==0);return yt.mouseSelectionStyle.of((n,i)=>t(i)?CY(n,i):null)}const DY={Alt:[18,e=>!!e.altKey],Control:[17,e=>!!e.ctrlKey],Shift:[16,e=>!!e.shiftKey],Meta:[91,e=>!!e.metaKey]},TY={style:"cursor: crosshair"};function NY(e={}){let[t,n]=DY[e.key||"Alt"],i=ke.fromClass(class{constructor(s){this.view=s,this.isDown=!1}set(s){this.isDown!=s&&(this.isDown=s,this.view.update([]))}},{eventObservers:{keydown(s){this.set(s.keyCode==t||n(s))},keyup(s){(s.keyCode==t||!n(s))&&this.set(!1)},mousemove(s){this.set(n(s))}}});return[i,yt.contentAttributes.of(s=>{var r;return!((r=s.plugin(i))===null||r===void 0)&&r.isDown?TY:null})]}const df="-10000px";class FC{constructor(t,n,i,s){this.facet=n,this.createTooltipView=i,this.removeTooltipView=s,this.input=t.state.facet(n),this.tooltips=this.input.filter(l=>l);let r=null;this.tooltipViews=this.tooltips.map(l=>r=i(l,r))}update(t,n){var i;let s=t.state.facet(this.facet),r=s.filter(u=>u);if(s===this.input){for(let u of this.tooltipViews)u.update&&u.update(t);return!1}let l=[],c=n?[]:null;for(let u=0;u<r.length;u++){let f=r[u],p=-1;if(f){for(let m=0;m<this.tooltips.length;m++){let g=this.tooltips[m];g&&g.create==f.create&&(p=m)}if(p<0)l[u]=this.createTooltipView(f,u?l[u-1]:null),c&&(c[u]=!!f.above);else{let m=l[u]=this.tooltipViews[p];c&&(c[u]=n[p]),m.update&&m.update(t)}}}for(let u of this.tooltipViews)l.indexOf(u)<0&&(this.removeTooltipView(u),(i=u.destroy)===null||i===void 0||i.call(u));return n&&(c.forEach((u,f)=>n[f]=u),n.length=c.length),this.input=s,this.tooltips=r,this.tooltipViews=l,!0}}function jY(e){let t=e.dom.ownerDocument.documentElement;return{top:0,left:0,bottom:t.clientHeight,right:t.clientWidth}}const p0=wt.define({combine:e=>{var t,n,i;return{position:gt.ios?"absolute":((t=e.find(s=>s.position))===null||t===void 0?void 0:t.position)||"fixed",parent:((n=e.find(s=>s.parent))===null||n===void 0?void 0:n.parent)||null,tooltipSpace:((i=e.find(s=>s.tooltipSpace))===null||i===void 0?void 0:i.tooltipSpace)||jY}}}),Lv=new WeakMap,Aw=ke.fromClass(class{constructor(e){this.view=e,this.above=[],this.inView=!0,this.madeAbsolute=!1,this.lastTransaction=0,this.measureTimeout=-1;let t=e.state.facet(p0);this.position=t.position,this.parent=t.parent,this.classes=e.themeClasses,this.createContainer(),this.measureReq={read:this.readMeasure.bind(this),write:this.writeMeasure.bind(this),key:this},this.resizeObserver=typeof ResizeObserver=="function"?new ResizeObserver(()=>this.measureSoon()):null,this.manager=new FC(e,Hw,(n,i)=>this.createTooltip(n,i),n=>{this.resizeObserver&&this.resizeObserver.unobserve(n.dom),n.dom.remove()}),this.above=this.manager.tooltips.map(n=>!!n.above),this.intersectionObserver=typeof IntersectionObserver=="function"?new IntersectionObserver(n=>{Date.now()>this.lastTransaction-50&&n.length>0&&n[n.length-1].intersectionRatio<1&&this.measureSoon()},{threshold:[1]}):null,this.observeIntersection(),e.win.addEventListener("resize",this.measureSoon=this.measureSoon.bind(this)),this.maybeMeasure()}createContainer(){this.parent?(this.container=document.createElement("div"),this.container.style.position="relative",this.container.className=this.view.themeClasses,this.parent.appendChild(this.container)):this.container=this.view.dom}observeIntersection(){if(this.intersectionObserver){this.intersectionObserver.disconnect();for(let e of this.manager.tooltipViews)this.intersectionObserver.observe(e.dom)}}measureSoon(){this.measureTimeout<0&&(this.measureTimeout=setTimeout(()=>{this.measureTimeout=-1,this.maybeMeasure()},50))}update(e){e.transactions.length&&(this.lastTransaction=Date.now());let t=this.manager.update(e,this.above);t&&this.observeIntersection();let n=t||e.geometryChanged,i=e.state.facet(p0);if(i.position!=this.position&&!this.madeAbsolute){this.position=i.position;for(let s of this.manager.tooltipViews)s.dom.style.position=this.position;n=!0}if(i.parent!=this.parent){this.parent&&this.container.remove(),this.parent=i.parent,this.createContainer();for(let s of this.manager.tooltipViews)this.container.appendChild(s.dom);n=!0}else this.parent&&this.view.themeClasses!=this.classes&&(this.classes=this.container.className=this.view.themeClasses);n&&this.maybeMeasure()}createTooltip(e,t){let n=e.create(this.view),i=t?t.dom:null;if(n.dom.classList.add("cm-tooltip"),e.arrow&&!n.dom.querySelector(".cm-tooltip > .cm-tooltip-arrow")){let s=document.createElement("div");s.className="cm-tooltip-arrow",n.dom.appendChild(s)}return n.dom.style.position=this.position,n.dom.style.top=df,n.dom.style.left="0px",this.container.insertBefore(n.dom,i),n.mount&&n.mount(this.view),this.resizeObserver&&this.resizeObserver.observe(n.dom),n}destroy(){var e,t,n;this.view.win.removeEventListener("resize",this.measureSoon);for(let i of this.manager.tooltipViews)i.dom.remove(),(e=i.destroy)===null||e===void 0||e.call(i);this.parent&&this.container.remove(),(t=this.resizeObserver)===null||t===void 0||t.disconnect(),(n=this.intersectionObserver)===null||n===void 0||n.disconnect(),clearTimeout(this.measureTimeout)}readMeasure(){let e=1,t=1,n=!1;if(this.position=="fixed"&&this.manager.tooltipViews.length){let{dom:r}=this.manager.tooltipViews[0];if(gt.safari){let l=r.getBoundingClientRect();n=Math.abs(l.top+1e4)>1||Math.abs(l.left)>1}else n=!!r.offsetParent&&r.offsetParent!=this.container.ownerDocument.body}if(n||this.position=="absolute")if(this.parent){let r=this.parent.getBoundingClientRect();r.width&&r.height&&(e=r.width/this.parent.offsetWidth,t=r.height/this.parent.offsetHeight)}else({scaleX:e,scaleY:t}=this.view.viewState);let i=this.view.scrollDOM.getBoundingClientRect(),s=Nw(this.view);return{visible:{left:i.left+s.left,top:i.top+s.top,right:i.right-s.right,bottom:i.bottom-s.bottom},parent:this.parent?this.container.getBoundingClientRect():this.view.dom.getBoundingClientRect(),pos:this.manager.tooltips.map((r,l)=>{let c=this.manager.tooltipViews[l];return c.getCoords?c.getCoords(r.pos):this.view.coordsAtPos(r.pos)}),size:this.manager.tooltipViews.map(({dom:r})=>r.getBoundingClientRect()),space:this.view.state.facet(p0).tooltipSpace(this.view),scaleX:e,scaleY:t,makeAbsolute:n}}writeMeasure(e){var t;if(e.makeAbsolute){this.madeAbsolute=!0,this.position="absolute";for(let c of this.manager.tooltipViews)c.dom.style.position="absolute"}let{visible:n,space:i,scaleX:s,scaleY:r}=e,l=[];for(let c=0;c<this.manager.tooltips.length;c++){let u=this.manager.tooltips[c],f=this.manager.tooltipViews[c],{dom:p}=f,m=e.pos[c],g=e.size[c];if(!m||u.clip!==!1&&(m.bottom<=Math.max(n.top,i.top)||m.top>=Math.min(n.bottom,i.bottom)||m.right<Math.max(n.left,i.left)-.1||m.left>Math.min(n.right,i.right)+.1)){p.style.top=df;continue}let y=u.arrow?f.dom.querySelector(".cm-tooltip-arrow"):null,$=y?7:0,b=g.right-g.left,S=(t=Lv.get(f))!==null&&t!==void 0?t:g.bottom-g.top,O=f.offset||_Y,E=this.view.textDirection==oe.LTR,k=g.width>i.right-i.left?E?i.left:i.right-g.width:E?Math.max(i.left,Math.min(m.left-(y?14:0)+O.x,i.right-b)):Math.min(Math.max(i.left,m.left-b+(y?14:0)-O.x),i.right-b),D=this.above[c];!u.strictSide&&(D?m.top-S-$-O.y<i.top:m.bottom+S+$+O.y>i.bottom)&&D==i.bottom-m.bottom>m.top-i.top&&(D=this.above[c]=!D);let _=(D?m.top-i.top:i.bottom-m.bottom)-$;if(_<S&&f.resize!==!1){if(_<this.view.defaultLineHeight){p.style.top=df;continue}Lv.set(f,S),p.style.height=(S=_)/r+"px"}else p.style.height&&(p.style.height="");let A=D?m.top-S-$-O.y:m.bottom+$+O.y,H=k+b;if(f.overlap!==!0)for(let Y of l)Y.left<H&&Y.right>k&&Y.top<A+S&&Y.bottom>A&&(A=D?Y.top-S-2-$:Y.bottom+$+2);if(this.position=="absolute"?(p.style.top=(A-e.parent.top)/r+"px",Qv(p,(k-e.parent.left)/s)):(p.style.top=A/r+"px",Qv(p,k/s)),y){let Y=m.left+(E?O.x:-O.x)-(k+14-7);y.style.left=Y/s+"px"}f.overlap!==!0&&l.push({left:k,top:A,right:H,bottom:A+S}),p.classList.toggle("cm-tooltip-above",D),p.classList.toggle("cm-tooltip-below",!D),f.positioned&&f.positioned(e.space)}}maybeMeasure(){if(this.manager.tooltips.length&&(this.view.inView&&this.view.requestMeasure(this.measureReq),this.inView!=this.view.inView&&(this.inView=this.view.inView,!this.inView)))for(let e of this.manager.tooltipViews)e.dom.style.top=df}},{eventObservers:{scroll(){this.maybeMeasure()}}});function Qv(e,t){let n=parseInt(e.style.left,10);(isNaN(n)||Math.abs(t-n)>1)&&(e.style.left=t+"px")}const RY=yt.baseTheme({".cm-tooltip":{zIndex:500,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:"14px",position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}}),_Y={x:0,y:0},Hw=wt.define({enables:[Aw,RY]}),wd=wt.define({combine:e=>e.reduce((t,n)=>t.concat(n),[])});class sp{static create(t){return new sp(t)}constructor(t){this.view=t,this.mounted=!1,this.dom=document.createElement("div"),this.dom.classList.add("cm-tooltip-hover"),this.manager=new FC(t,wd,(n,i)=>this.createHostedView(n,i),n=>n.dom.remove())}createHostedView(t,n){let i=t.create(this.view);return i.dom.classList.add("cm-tooltip-section"),this.dom.insertBefore(i.dom,n?n.dom.nextSibling:this.dom.firstChild),this.mounted&&i.mount&&i.mount(this.view),i}mount(t){for(let n of this.manager.tooltipViews)n.mount&&n.mount(t);this.mounted=!0}positioned(t){for(let n of this.manager.tooltipViews)n.positioned&&n.positioned(t)}update(t){this.manager.update(t)}destroy(){var t;for(let n of this.manager.tooltipViews)(t=n.destroy)===null||t===void 0||t.call(n)}passProp(t){let n;for(let i of this.manager.tooltipViews){let s=i[t];if(s!==void 0){if(n===void 0)n=s;else if(n!==s)return}}return n}get offset(){return this.passProp("offset")}get getCoords(){return this.passProp("getCoords")}get overlap(){return this.passProp("overlap")}get resize(){return this.passProp("resize")}}const MY=Hw.compute([wd],e=>{let t=e.facet(wd);return t.length===0?null:{pos:Math.min(...t.map(n=>n.pos)),end:Math.max(...t.map(n=>{var i;return(i=n.end)!==null&&i!==void 0?i:n.pos})),create:sp.create,above:t[0].above,arrow:t.some(n=>n.arrow)}}),VC=wt.define();class AY{constructor(t,n,i,s,r,l){this.view=t,this.source=n,this.field=i,this.locked=s,this.setHover=r,this.hoverTime=l,this.hoverTimeout=-1,this.restartTimeout=-1,this.pending=null,this.lastMove={x:0,y:0,target:t.dom,time:0},this.checkHover=this.checkHover.bind(this),t.dom.addEventListener("mouseleave",this.mouseleave=this.mouseleave.bind(this)),t.dom.addEventListener("mousemove",this.mousemove=this.mousemove.bind(this))}update(t){this.pending&&(this.pending=null,clearTimeout(this.restartTimeout),this.restartTimeout=setTimeout(()=>this.startHover(),20))}get active(){return this.view.state.field(this.field)}checkHover(){if(this.hoverTimeout=-1,this.active.length)return;let t=Date.now()-this.lastMove.time;t<this.hoverTime?this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime-t):this.startHover()}startHover(){clearTimeout(this.restartTimeout);let{view:t,lastMove:n}=this,i=t.docView.tile.nearest(n.target);if(!i)return;let s,r=1;if(i.isWidget())s=i.posAtStart;else{if(s=t.posAtCoords(n),s==null)return;let l=t.coordsAtPos(s);if(!l||n.y<l.top||n.y>l.bottom||n.x<l.left-t.defaultCharacterWidth||n.x>l.right+t.defaultCharacterWidth)return;let c=t.bidiSpans(t.state.doc.lineAt(s)).find(f=>f.from<=s&&f.to>=s),u=c&&c.dir==oe.RTL?-1:1;r=n.x<l.left?-u:u}this.activateHover(t,s,r)}activateHover(t,n,i,s){let r=this.source(t,n,i),l=c=>{if(c&&!(Array.isArray(c)&&!c.length)){let u=Array.isArray(c)?c:[c];s&&this.locked.set(u,s),t.dispatch({effects:this.setHover.of(u)})}};if(r&&"then"in r){let c=this.pending={pos:n};r.then(u=>{this.pending==c&&(this.pending=null,l(u))},u=>kn(t.state,u,"hover tooltip"))}else l(r)}get tooltip(){let t=this.view.plugin(Aw),n=t?t.manager.tooltips.findIndex(i=>i.create==sp.create):-1;return n>-1?t.manager.tooltipViews[n]:null}mousemove(t){var n,i;this.lastMove={x:t.clientX,y:t.clientY,target:t.target,time:Date.now()},this.hoverTimeout<0&&(this.hoverTimeout=setTimeout(this.checkHover,this.hoverTime));let{active:s,tooltip:r}=this;if(s.length&&!this.locked.has(s)&&r&&!HY(r.dom,t)||this.pending){let{pos:l}=s[0]||this.pending,c=(i=(n=s[0])===null||n===void 0?void 0:n.end)!==null&&i!==void 0?i:l;(l==c?this.view.posAtCoords(this.lastMove)!=l:!zY(this.view,l,c,t.clientX,t.clientY))&&(this.view.dispatch({effects:this.setHover.of([])}),this.pending=null)}}mouseleave(t){clearTimeout(this.hoverTimeout),this.hoverTimeout=-1;let{active:n}=this;if(n.length&&!this.locked.has(n)){let{tooltip:i}=this;i&&i.dom.contains(t.relatedTarget)?this.watchTooltipLeave(i.dom):this.view.dispatch({effects:this.setHover.of([])})}}watchTooltipLeave(t){let n=i=>{t.removeEventListener("mouseleave",n);let{active:s}=this;s.length&&!this.locked.has(s)&&!this.view.dom.contains(i.relatedTarget)&&this.view.dispatch({effects:this.setHover.of([])})};t.addEventListener("mouseleave",n)}destroy(){clearTimeout(this.hoverTimeout),clearTimeout(this.restartTimeout),this.view.dom.removeEventListener("mouseleave",this.mouseleave),this.view.dom.removeEventListener("mousemove",this.mousemove)}}const pf=4;function HY(e,t){let{left:n,right:i,top:s,bottom:r}=e.getBoundingClientRect(),l;if(l=e.querySelector(".cm-tooltip-arrow")){let c=l.getBoundingClientRect();s=Math.min(c.top,s),r=Math.max(c.bottom,r)}return t.clientX>=n-pf&&t.clientX<=i+pf&&t.clientY>=s-pf&&t.clientY<=r+pf}function zY(e,t,n,i,s,r){let l=e.scrollDOM.getBoundingClientRect(),c=e.documentTop+e.documentPadding.top+e.contentHeight;if(l.left>i||l.right<i||l.top>s||Math.min(l.bottom,c)<s)return!1;let u=e.posAtCoords({x:i,y:s},!1);return u>=t&&u<=n}function BY(e,t={}){let n=_t.define(),i=new WeakMap,s=Je.define({create(){return[]},update(l,c){let u=i.get(l);if(l.length&&(t.hideOnChange&&(c.docChanged||c.selection)?l=[]:u&&u(c)?l=[]:t.hideOn&&(l=l.filter(f=>!t.hideOn(c,f)))),c.docChanged&&l.length){let f=[];for(let p of l){let m=c.changes.mapPos(p.pos,-1,an.TrackDel);if(m!=null){let g=Object.assign(Object.create(null),p);g.pos=m,g.end!=null&&(g.end=c.changes.mapPos(g.end)),f.push(g)}}l=f}for(let f of c.effects)f.is(n)&&(l=f.value,u=void 0),(f.is(GY)&&!f.value||f.value==s)&&(l=[]);return l.length&&u&&i.set(l,u),l},provide:l=>wd.from(l)});const r=ke.define(l=>new AY(l,e,s,i,n,t.hoverTime||300));return{active:s,extension:[s,r,VC.of(r),MY]}}function YY(e,t,n,i={}){var s;let r=e.state.facet(VC).map(l=>e.plugin(l)).filter(l=>!!l);if(i.tooltip&&i.tooltip.active){let l=r.find(c=>c.field==i.tooltip.active);l&&(r=[l])}for(let l of r)l.activateHover(e,t,n,(s=i.until)!==null&&s!==void 0?s:(()=>!1))}function XC(e,t){let n=e.plugin(Aw);if(!n)return null;let i=n.manager.tooltips.indexOf(t);return i<0?null:n.manager.tooltipViews[i]}const GY=_t.define(),Pv=wt.define({combine(e){let t,n;for(let i of e)t=t||i.topContainer,n=n||i.bottomContainer;return{topContainer:t,bottomContainer:n}}});function zw(e,t){let n=e.plugin(KC),i=n?n.specs.indexOf(t):-1;return i>-1?n.panels[i]:null}const KC=ke.fromClass(class{constructor(e){this.input=e.state.facet(Kc),this.specs=this.input.filter(n=>n),this.panels=this.specs.map(n=>n(e));let t=e.state.facet(Pv);this.top=new mf(e,!0,t.topContainer),this.bottom=new mf(e,!1,t.bottomContainer),this.top.sync(this.panels.filter(n=>n.top)),this.bottom.sync(this.panels.filter(n=>!n.top));for(let n of this.panels)n.dom.classList.add("cm-panel"),n.mount&&n.mount()}update(e){let t=e.state.facet(Pv);this.top.container!=t.topContainer&&(this.top.sync([]),this.top=new mf(e.view,!0,t.topContainer)),this.bottom.container!=t.bottomContainer&&(this.bottom.sync([]),this.bottom=new mf(e.view,!1,t.bottomContainer)),this.top.syncClasses(),this.bottom.syncClasses();let n=e.state.facet(Kc);if(n!=this.input){let i=n.filter(u=>u),s=[],r=[],l=[],c=[];for(let u of i){let f=this.specs.indexOf(u),p;f<0?(p=u(e.view),c.push(p)):(p=this.panels[f],p.update&&p.update(e)),s.push(p),(p.top?r:l).push(p)}this.specs=i,this.panels=s,this.top.sync(r),this.bottom.sync(l);for(let u of c)u.dom.classList.add("cm-panel"),u.mount&&u.mount()}else for(let i of this.panels)i.update&&i.update(e)}destroy(){this.top.sync([]),this.bottom.sync([])}},{provide:e=>yt.scrollMargins.of(t=>{let n=t.plugin(e);return n&&{top:n.top.scrollMargin(),bottom:n.bottom.scrollMargin()}})});class mf{constructor(t,n,i){this.view=t,this.top=n,this.container=i,this.dom=void 0,this.classes="",this.panels=[],this.syncClasses()}sync(t){for(let n of this.panels)n.destroy&&t.indexOf(n)<0&&n.destroy();this.panels=t,this.syncDOM()}syncDOM(){if(this.panels.length==0){this.dom&&(this.dom.remove(),this.dom=void 0);return}if(!this.dom){this.dom=document.createElement("div"),this.dom.className=this.top?"cm-panels cm-panels-top":"cm-panels cm-panels-bottom",this.dom.style[this.top?"top":"bottom"]="0";let n=this.container||this.view.dom;n.insertBefore(this.dom,this.top?n.firstChild:null)}let t=this.dom.firstChild;for(let n of this.panels)if(n.dom.parentNode==this.dom){for(;t!=n.dom;)t=qv(t);t=t.nextSibling}else this.dom.insertBefore(n.dom,t);for(;t;)t=qv(t)}scrollMargin(){return!this.dom||this.container?0:Math.max(0,this.top?this.dom.getBoundingClientRect().bottom-Math.max(0,this.view.scrollDOM.getBoundingClientRect().top):Math.min(innerHeight,this.view.scrollDOM.getBoundingClientRect().bottom)-this.dom.getBoundingClientRect().top)}syncClasses(){if(!(!this.container||this.classes==this.view.themeClasses)){for(let t of this.classes.split(" "))t&&this.container.classList.remove(t);for(let t of(this.classes=this.view.themeClasses).split(" "))t&&this.container.classList.add(t)}}}function qv(e){let t=e.nextSibling;return e.remove(),t}const Kc=wt.define({enables:KC});function LY(e,t){let n,i=new Promise(l=>n=l),s=l=>QY(l,t,n);e.state.field(m0,!1)?e.dispatch({effects:JC.of(s)}):e.dispatch({effects:_t.appendConfig.of(m0.init(()=>[s]))});let r=tE.of(s);return{close:r,result:i.then(l=>((e.win.queueMicrotask||(u=>e.win.setTimeout(u,10)))(()=>{e.state.field(m0).indexOf(s)>-1&&e.dispatch({effects:r})}),l))}}const m0=Je.define({create(){return[]},update(e,t){for(let n of t.effects)n.is(JC)?e=[n.value].concat(e):n.is(tE)&&(e=e.filter(i=>i!=n.value));return e},provide:e=>Kc.computeN([e],t=>t.field(e))}),JC=_t.define(),tE=_t.define();function QY(e,t,n){let i=t.content?t.content(e,()=>l(null)):null;if(!i){if(i=ne("form"),t.input){let c=ne("input",t.input);/^(text|password|number|email|tel|url)$/.test(c.type)&&c.classList.add("cm-textfield"),c.name||(c.name="input"),i.appendChild(ne("label",(t.label||"")+": ",c))}else i.appendChild(document.createTextNode(t.label||""));i.appendChild(document.createTextNode(" ")),i.appendChild(ne("button",{class:"cm-button",type:"submit"},t.submitLabel||"OK"))}let s=i.nodeName=="FORM"?[i]:i.querySelectorAll("form");for(let c=0;c<s.length;c++){let u=s[c];u.addEventListener("keydown",f=>{f.keyCode==27?(f.preventDefault(),l(null)):f.keyCode==13&&(f.preventDefault(),l(u))}),u.addEventListener("submit",f=>{f.preventDefault(),l(u)})}let r=ne("div",i,ne("button",{onclick:()=>l(null),"aria-label":e.state.phrase("close"),class:"cm-dialog-close",type:"button"},["×"]));t.class&&(r.className=t.class),r.classList.add("cm-dialog");function l(c){r.contains(r.ownerDocument.activeElement)&&e.focus(),n(c)}return{dom:r,top:t.top,mount:()=>{if(t.focus){let c;typeof t.focus=="string"?c=i.querySelector(t.focus):c=i.querySelector("input")||i.querySelector("button"),c&&"select"in c?c.select():c&&"focus"in c&&c.focus()}}}}class js extends Sr{compare(t){return this==t||this.constructor==t.constructor&&this.eq(t)}eq(t){return!1}destroy(t){}}js.prototype.elementClass="";js.prototype.toDOM=void 0;js.prototype.mapMode=an.TrackBefore;js.prototype.startSide=js.prototype.endSide=-1;js.prototype.point=!0;const Yf=wt.define(),PY=wt.define(),qY={class:"",renderEmptyElements:!1,elementStyle:"",markers:()=>Bt.empty,lineMarker:()=>null,widgetMarker:()=>null,lineMarkerChange:null,initialSpacer:null,updateSpacer:null,domEventHandlers:{},side:"before"},Hc=wt.define();function WY(e){return[eE(),Hc.of({...qY,...e})]}const Wv=wt.define({combine:e=>e.some(t=>t)});function eE(e){return[ZY]}const ZY=ke.fromClass(class{constructor(e){this.view=e,this.domAfter=null,this.prevViewport=e.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters cm-gutters-before",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=e.state.facet(Hc).map(t=>new Uv(e,t)),this.fixed=!e.state.facet(Wv);for(let t of this.gutters)t.config.side=="after"?this.getDOMAfter().appendChild(t.dom):this.dom.appendChild(t.dom);this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),e.scrollDOM.insertBefore(this.dom,e.contentDOM)}getDOMAfter(){return this.domAfter||(this.domAfter=document.createElement("div"),this.domAfter.className="cm-gutters cm-gutters-after",this.domAfter.setAttribute("aria-hidden","true"),this.domAfter.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.domAfter.style.position=this.fixed?"sticky":"",this.view.scrollDOM.appendChild(this.domAfter)),this.domAfter}update(e){if(this.updateGutters(e)){let t=this.prevViewport,n=e.view.viewport,i=Math.min(t.to,n.to)-Math.max(t.from,n.from);this.syncGutters(i<(n.to-n.from)*.8)}if(e.geometryChanged){let t=this.view.contentHeight/this.view.scaleY+"px";this.dom.style.minHeight=t,this.domAfter&&(this.domAfter.style.minHeight=t)}this.view.state.facet(Wv)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"",this.domAfter&&(this.domAfter.style.position=this.fixed?"sticky":"")),this.prevViewport=e.view.viewport}syncGutters(e){let t=this.dom.nextSibling;e&&(this.dom.remove(),this.domAfter&&this.domAfter.remove());let n=Bt.iter(this.view.state.facet(Yf),this.view.viewport.from),i=[],s=this.gutters.map(r=>new UY(r,this.view.viewport,-this.view.documentPadding.top));for(let r of this.view.viewportLineBlocks)if(i.length&&(i=[]),Array.isArray(r.type)){let l=!0;for(let c of r.type)if(c.type==Ue.Text&&l){Ay(n,i,c.from);for(let u of s)u.line(this.view,c,i);l=!1}else if(c.widget)for(let u of s)u.widget(this.view,c)}else if(r.type==Ue.Text){Ay(n,i,r.from);for(let l of s)l.line(this.view,r,i)}else if(r.widget)for(let l of s)l.widget(this.view,r);for(let r of s)r.finish();e&&(this.view.scrollDOM.insertBefore(this.dom,t),this.domAfter&&this.view.scrollDOM.appendChild(this.domAfter))}updateGutters(e){let t=e.startState.facet(Hc),n=e.state.facet(Hc),i=e.docChanged||e.heightChanged||e.viewportChanged||!Bt.eq(e.startState.facet(Yf),e.state.facet(Yf),e.view.viewport.from,e.view.viewport.to);if(t==n)for(let s of this.gutters)s.update(e)&&(i=!0);else{i=!0;let s=[];for(let r of n){let l=t.indexOf(r);l<0?s.push(new Uv(this.view,r)):(this.gutters[l].update(e),s.push(this.gutters[l]))}for(let r of this.gutters)r.dom.remove(),s.indexOf(r)<0&&r.destroy();for(let r of s)r.config.side=="after"?this.getDOMAfter().appendChild(r.dom):this.dom.appendChild(r.dom);this.gutters=s}return i}destroy(){for(let e of this.gutters)e.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:e=>yt.scrollMargins.of(t=>{let n=t.plugin(e);if(!n||n.gutters.length==0||!n.fixed)return null;let i=n.dom.offsetWidth*t.scaleX,s=n.domAfter?n.domAfter.offsetWidth*t.scaleX:0;return t.textDirection==oe.LTR?{left:i,right:s}:{right:i,left:s}})});function Zv(e){return Array.isArray(e)?e:[e]}function Ay(e,t,n){for(;e.value&&e.from<=n;)e.from==n&&t.push(e.value),e.next()}class UY{constructor(t,n,i){this.gutter=t,this.height=i,this.i=0,this.cursor=Bt.iter(t.markers,n.from)}addElement(t,n,i){let{gutter:s}=this,r=(n.top-this.height)/t.scaleY,l=n.height/t.scaleY;if(this.i==s.elements.length){let c=new nE(t,l,r,i);s.elements.push(c),s.dom.appendChild(c.dom)}else s.elements[this.i].update(t,l,r,i);this.height=n.bottom,this.i++}line(t,n,i){let s=[];Ay(this.cursor,s,n.from),i.length&&(s=s.concat(i));let r=this.gutter.config.lineMarker(t,n,s);r&&s.unshift(r);let l=this.gutter;s.length==0&&!l.config.renderEmptyElements||this.addElement(t,n,s)}widget(t,n){let i=this.gutter.config.widgetMarker(t,n.widget,n),s=i?[i]:null;for(let r of t.state.facet(PY)){let l=r(t,n.widget,n);l&&(s||(s=[])).push(l)}s&&this.addElement(t,n,s)}finish(){let t=this.gutter;for(;t.elements.length>this.i;){let n=t.elements.pop();t.dom.removeChild(n.dom),n.destroy()}}}class Uv{constructor(t,n){this.view=t,this.config=n,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let i in n.domEventHandlers)this.dom.addEventListener(i,s=>{let r=s.target,l;if(r!=this.dom&&this.dom.contains(r)){for(;r.parentNode!=this.dom;)r=r.parentNode;let u=r.getBoundingClientRect();l=(u.top+u.bottom)/2}else l=s.clientY;let c=t.lineBlockAtHeight(l-t.documentTop);n.domEventHandlers[i](t,c,s)&&s.preventDefault()});this.markers=Zv(n.markers(t)),n.initialSpacer&&(this.spacer=new nE(t,0,0,[n.initialSpacer(t)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(t){let n=this.markers;if(this.markers=Zv(this.config.markers(t.view)),this.spacer&&this.config.updateSpacer){let s=this.config.updateSpacer(this.spacer.markers[0],t);s!=this.spacer.markers[0]&&this.spacer.update(t.view,0,0,[s])}let i=t.view.viewport;return!Bt.eq(this.markers,n,i.from,i.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(t):!1)}destroy(){for(let t of this.elements)t.destroy()}}class nE{constructor(t,n,i,s){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(t,n,i,s)}update(t,n,i,s){this.height!=n&&(this.height=n,this.dom.style.height=n+"px"),this.above!=i&&(this.dom.style.marginTop=(this.above=i)?i+"px":""),IY(this.markers,s)||this.setMarkers(t,s)}setMarkers(t,n){let i="cm-gutterElement",s=this.dom.firstChild;for(let r=0,l=0;;){let c=l,u=r<n.length?n[r++]:null,f=!1;if(u){let p=u.elementClass;p&&(i+=" "+p);for(let m=l;m<this.markers.length;m++)if(this.markers[m].compare(u)){c=m,f=!0;break}}else c=this.markers.length;for(;l<c;){let p=this.markers[l++];if(p.toDOM){p.destroy(s);let m=s.nextSibling;s.remove(),s=m}}if(!u)break;u.toDOM&&(f?s=s.nextSibling:this.dom.insertBefore(u.toDOM(t),s)),f&&l++}this.dom.className=i,this.markers=n}destroy(){this.setMarkers(null,[])}}function IY(e,t){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++)if(!e[n].compare(t[n]))return!1;return!0}const FY=wt.define(),VY=wt.define(),Al=wt.define({combine(e){return Xi(e,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(t,n){let i=Object.assign({},t);for(let s in n){let r=i[s],l=n[s];i[s]=r?(c,u,f)=>r(c,u,f)||l(c,u,f):l}return i}})}});class g0 extends js{constructor(t){super(),this.number=t}eq(t){return this.number==t.number}toDOM(){return document.createTextNode(this.number)}}function y0(e,t){return e.state.facet(Al).formatNumber(t,e.state)}const XY=Hc.compute([Al],e=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(t){return t.state.facet(FY)},lineMarker(t,n,i){return i.some(s=>s.toDOM)?null:new g0(y0(t,t.state.doc.lineAt(n.from).number))},widgetMarker:(t,n,i)=>{for(let s of t.state.facet(VY)){let r=s(t,n,i);if(r)return r}return null},lineMarkerChange:t=>t.startState.facet(Al)!=t.state.facet(Al),initialSpacer(t){return new g0(y0(t,Iv(t.state.doc.lines)))},updateSpacer(t,n){let i=y0(n.view,Iv(n.view.state.doc.lines));return i==t.number?t:new g0(i)},domEventHandlers:e.facet(Al).domEventHandlers,side:"before"}));function KY(e={}){return[Al.of(e),eE(),XY]}function Iv(e){let t=9;for(;t<e;)t=t*10+9;return t}const JY=new class extends js{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},tG=Yf.compute(["selection"],e=>{let t=[],n=-1;for(let i of e.selection.ranges){let s=e.doc.lineAt(i.head).from;s>n&&(n=s,t.push(JY.range(s)))}return Bt.of(t)});function eG(){return tG}const iE=1024;let nG=0;class ri{constructor(t,n){this.from=t,this.to=n}}class At{constructor(t={}){this.id=nG++,this.perNode=!!t.perNode,this.deserialize=t.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=t.combine||null}add(t){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof t!="function"&&(t=Xe.match(t)),n=>{let i=t(n);return i===void 0?null:[this,i]}}}At.closedBy=new At({deserialize:e=>e.split(" ")});At.openedBy=new At({deserialize:e=>e.split(" ")});At.group=new At({deserialize:e=>e.split(" ")});At.isolate=new At({deserialize:e=>{if(e&&e!="rtl"&&e!="ltr"&&e!="auto")throw new RangeError("Invalid value for isolate: "+e);return e||"auto"}});At.contextHash=new At({perNode:!0});At.lookAhead=new At({perNode:!0});At.mounted=new At({perNode:!0});class ql{constructor(t,n,i,s=!1){this.tree=t,this.overlay=n,this.parser=i,this.bracketed=s}static get(t){return t&&t.props&&t.props[At.mounted.id]}}const iG=Object.create(null);class Xe{constructor(t,n,i,s=0){this.name=t,this.props=n,this.id=i,this.flags=s}static define(t){let n=t.props&&t.props.length?Object.create(null):iG,i=(t.top?1:0)|(t.skipped?2:0)|(t.error?4:0)|(t.name==null?8:0),s=new Xe(t.name||"",n,t.id,i);if(t.props){for(let r of t.props)if(Array.isArray(r)||(r=r(s)),r){if(r[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");n[r[0].id]=r[1]}}return s}prop(t){return this.props[t.id]}get isTop(){return(this.flags&1)>0}get isSkipped(){return(this.flags&2)>0}get isError(){return(this.flags&4)>0}get isAnonymous(){return(this.flags&8)>0}is(t){if(typeof t=="string"){if(this.name==t)return!0;let n=this.prop(At.group);return n?n.indexOf(t)>-1:!1}return this.id==t}static match(t){let n=Object.create(null);for(let i in t)for(let s of i.split(" "))n[s]=t[i];return i=>{for(let s=i.prop(At.group),r=-1;r<(s?s.length:0);r++){let l=n[r<0?i.name:s[r]];if(l)return l}}}}Xe.none=new Xe("",Object.create(null),0,8);class rp{constructor(t){this.types=t;for(let n=0;n<t.length;n++)if(t[n].id!=n)throw new RangeError("Node type ids should correspond to array positions when creating a node set")}extend(...t){let n=[];for(let i of this.types){let s=null;for(let r of t){let l=r(i);if(l){s||(s=Object.assign({},i.props));let c=l[1],u=l[0];u.combine&&u.id in s&&(c=u.combine(s[u.id],c)),s[u.id]=c}}n.push(s?new Xe(i.name,s,i.id,i.flags):i)}return new rp(n)}}const gf=new WeakMap,Fv=new WeakMap;var ie;(function(e){e[e.ExcludeBuffers=1]="ExcludeBuffers",e[e.IncludeAnonymous=2]="IncludeAnonymous",e[e.IgnoreMounts=4]="IgnoreMounts",e[e.IgnoreOverlays=8]="IgnoreOverlays",e[e.EnterBracketed=16]="EnterBracketed"})(ie||(ie={}));class Vt{constructor(t,n,i,s,r){if(this.type=t,this.children=n,this.positions=i,this.length=s,this.props=null,r&&r.length){this.props=Object.create(null);for(let[l,c]of r)this.props[typeof l=="number"?l:l.id]=c}}toString(){let t=ql.get(this);if(t&&!t.overlay)return t.tree.toString();let n="";for(let i of this.children){let s=i.toString();s&&(n&&(n+=","),n+=s)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(n.length?"("+n+")":""):n}cursor(t=0){return new $d(this.topNode,t)}cursorAt(t,n=0,i=0){let s=gf.get(this)||this.topNode,r=new $d(s);return r.moveTo(t,n),gf.set(this,r._tree),r}get topNode(){return new Dn(this,0,0,null)}resolve(t,n=0){let i=Jc(gf.get(this)||this.topNode,t,n,!1);return gf.set(this,i),i}resolveInner(t,n=0){let i=Jc(Fv.get(this)||this.topNode,t,n,!0);return Fv.set(this,i),i}resolveStack(t,n=0){return oG(this,t,n)}iterate(t){let{enter:n,leave:i,from:s=0,to:r=this.length}=t,l=t.mode||0,c=(l&ie.IncludeAnonymous)>0;for(let u=this.cursor(l|ie.IncludeAnonymous);;){let f=!1;if(u.from<=r&&u.to>=s&&(!c&&u.type.isAnonymous||n(u)!==!1)){if(u.firstChild())continue;f=!0}for(;f&&i&&(c||!u.type.isAnonymous)&&i(u),!u.nextSibling();){if(!u.parent())return;f=!0}}}prop(t){return t.perNode?this.props?this.props[t.id]:void 0:this.type.prop(t)}get propValues(){let t=[];if(this.props)for(let n in this.props)t.push([+n,this.props[n]]);return t}balance(t={}){return this.children.length<=8?this:Gw(Xe.none,this.children,this.positions,0,this.children.length,0,this.length,(n,i,s)=>new Vt(this.type,n,i,s,this.propValues),t.makeTree||((n,i,s)=>new Vt(Xe.none,n,i,s)))}static build(t){return lG(t)}}Vt.empty=new Vt(Xe.none,[],[],0);class Bw{constructor(t,n){this.buffer=t,this.index=n}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}get pos(){return this.index}next(){this.index-=4}fork(){return new Bw(this.buffer,this.index)}}class Er{constructor(t,n,i){this.buffer=t,this.length=n,this.set=i}get type(){return Xe.none}toString(){let t=[];for(let n=0;n<this.buffer.length;)t.push(this.childString(n)),n=this.buffer[n+3];return t.join(",")}childString(t){let n=this.buffer[t],i=this.buffer[t+3],s=this.set.types[n],r=s.name;if(/\W/.test(r)&&!s.isError&&(r=JSON.stringify(r)),t+=4,i==t)return r;let l=[];for(;t<i;)l.push(this.childString(t)),t=this.buffer[t+3];return r+"("+l.join(",")+")"}findChild(t,n,i,s,r){let{buffer:l}=this,c=-1;for(let u=t;u!=n&&!(sE(r,s,l[u+1],l[u+2])&&(c=u,i>0));u=l[u+3]);return c}slice(t,n,i){let s=this.buffer,r=new Uint16Array(n-t),l=0;for(let c=t,u=0;c<n;){r[u++]=s[c++],r[u++]=s[c++]-i;let f=r[u++]=s[c++]-i;r[u++]=s[c++]-t,l=Math.max(l,f)}return new Er(r,l,this.set)}}function sE(e,t,n,i){switch(e){case-2:return n<t;case-1:return i>=t&&n<t;case 0:return n<t&&i>t;case 1:return n<=t&&i>t;case 2:return i>t;case 4:return!0}}function Jc(e,t,n,i){for(var s;e.from==e.to||(n<1?e.from>=t:e.from>t)||(n>-1?e.to<=t:e.to<t);){let l=!i&&e instanceof Dn&&e.index<0?null:e.parent;if(!l)return e;e=l}let r=i?0:ie.IgnoreOverlays;if(i)for(let l=e,c=l.parent;c;l=c,c=l.parent)l instanceof Dn&&l.index<0&&((s=c.enter(t,n,r))===null||s===void 0?void 0:s.from)!=l.from&&(e=c);for(;;){let l=e.enter(t,n,r);if(!l)return e;e=l}}class rE{cursor(t=0){return new $d(this,t)}getChild(t,n=null,i=null){let s=Vv(this,t,n,i);return s.length?s[0]:null}getChildren(t,n=null,i=null){return Vv(this,t,n,i)}resolve(t,n=0){return Jc(this,t,n,!1)}resolveInner(t,n=0){return Jc(this,t,n,!0)}matchContext(t){return Hy(this.parent,t)}enterUnfinishedNodesBefore(t){let n=this.childBefore(t),i=this;for(;n;){let s=n.lastChild;if(!s||s.to!=n.to)break;s.type.isError&&s.from==s.to?(i=n,n=s.prevSibling):n=s}return i}get node(){return this}get next(){return this.parent}}class Dn extends rE{constructor(t,n,i,s){super(),this._tree=t,this.from=n,this.index=i,this._parent=s}get type(){return this._tree.type}get name(){return this._tree.type.name}get to(){return this.from+this._tree.length}nextChild(t,n,i,s,r=0){for(let l=this;;){for(let{children:c,positions:u}=l._tree,f=n>0?c.length:-1;t!=f;t+=n){let p=c[t],m=u[t]+l.from,g;if(!(!(r&ie.EnterBracketed&&p instanceof Vt&&(g=ql.get(p))&&!g.overlay&&g.bracketed&&i>=m&&i<=m+p.length)&&!sE(s,i,m,m+p.length))){if(p instanceof Er){if(r&ie.ExcludeBuffers)continue;let y=p.findChild(0,p.buffer.length,n,i-m,s);if(y>-1)return new $r(new sG(l,p,t,m),null,y)}else if(r&ie.IncludeAnonymous||!p.type.isAnonymous||Yw(p)){let y;if(!(r&ie.IgnoreMounts)&&(y=ql.get(p))&&!y.overlay)return new Dn(y.tree,m,t,l);let $=new Dn(p,m,t,l);return r&ie.IncludeAnonymous||!$.type.isAnonymous?$:$.nextChild(n<0?p.children.length-1:0,n,i,s,r)}}}if(r&ie.IncludeAnonymous||!l.type.isAnonymous||(l.index>=0?t=l.index+n:t=n<0?-1:l._parent._tree.children.length,l=l._parent,!l))return null}}get firstChild(){return this.nextChild(0,1,0,4)}get lastChild(){return this.nextChild(this._tree.children.length-1,-1,0,4)}childAfter(t){return this.nextChild(0,1,t,2)}childBefore(t){return this.nextChild(this._tree.children.length-1,-1,t,-2)}prop(t){return this._tree.prop(t)}enter(t,n,i=0){let s;if(!(i&ie.IgnoreOverlays)&&(s=ql.get(this._tree))&&s.overlay){let r=t-this.from,l=i&ie.EnterBracketed&&s.bracketed;for(let{from:c,to:u}of s.overlay)if((n>0||l?c<=r:c<r)&&(n<0||l?u>=r:u>r))return new Dn(s.tree,s.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,t,n,i)}nextSignificantParent(){let t=this;for(;t.type.isAnonymous&&t._parent;)t=t._parent;return t}get parent(){return this._parent?this._parent.nextSignificantParent():null}get nextSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index+1,1,0,4):null}get prevSibling(){return this._parent&&this.index>=0?this._parent.nextChild(this.index-1,-1,0,4):null}get tree(){return this._tree}toTree(){return this._tree}toString(){return this._tree.toString()}}function Vv(e,t,n,i){let s=e.cursor(),r=[];if(!s.firstChild())return r;if(n!=null){for(let l=!1;!l;)if(l=s.type.is(n),!s.nextSibling())return r}for(;;){if(i!=null&&s.type.is(i))return r;if(s.type.is(t)&&r.push(s.node),!s.nextSibling())return i==null?r:[]}}function Hy(e,t,n=t.length-1){for(let i=e;n>=0;i=i.parent){if(!i)return!1;if(!i.type.isAnonymous){if(t[n]&&t[n]!=i.name)return!1;n--}}return!0}class sG{constructor(t,n,i,s){this.parent=t,this.buffer=n,this.index=i,this.start=s}}class $r extends rE{get name(){return this.type.name}get from(){return this.context.start+this.context.buffer.buffer[this.index+1]}get to(){return this.context.start+this.context.buffer.buffer[this.index+2]}constructor(t,n,i){super(),this.context=t,this._parent=n,this.index=i,this.type=t.buffer.set.types[t.buffer.buffer[i]]}child(t,n,i){let{buffer:s}=this.context,r=s.findChild(this.index+4,s.buffer[this.index+3],t,n-this.context.start,i);return r<0?null:new $r(this.context,this,r)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(t){return this.child(1,t,2)}childBefore(t){return this.child(-1,t,-2)}prop(t){return this.type.prop(t)}enter(t,n,i=0){if(i&ie.ExcludeBuffers)return null;let{buffer:s}=this.context,r=s.findChild(this.index+4,s.buffer[this.index+3],n>0?1:-1,t-this.context.start,n);return r<0?null:new $r(this.context,this,r)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(t){return this._parent?null:this.context.parent.nextChild(this.context.index+t,t,0,4)}get nextSibling(){let{buffer:t}=this.context,n=t.buffer[this.index+3];return n<(this._parent?t.buffer[this._parent.index+3]:t.buffer.length)?new $r(this.context,this._parent,n):this.externalSibling(1)}get prevSibling(){let{buffer:t}=this.context,n=this._parent?this._parent.index+4:0;return this.index==n?this.externalSibling(-1):new $r(this.context,this._parent,t.findChild(n,this.index,-1,0,4))}get tree(){return null}toTree(){let t=[],n=[],{buffer:i}=this.context,s=this.index+4,r=i.buffer[this.index+3];if(r>s){let l=i.buffer[this.index+1];t.push(i.slice(s,r,l)),n.push(0)}return new Vt(this.type,t,n,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function oE(e){if(!e.length)return null;let t=0,n=e[0];for(let r=1;r<e.length;r++){let l=e[r];(l.from>n.from||l.to<n.to)&&(n=l,t=r)}let i=n instanceof Dn&&n.index<0?null:n.parent,s=e.slice();return i?s[t]=i:s.splice(t,1),new rG(s,n)}class rG{constructor(t,n){this.heads=t,this.node=n}get next(){return oE(this.heads)}}function oG(e,t,n){let i=e.resolveInner(t,n),s=null;for(let r=i instanceof Dn?i:i.context.parent;r;r=r.parent)if(r.index<0){let l=r.parent;(s||(s=[i])).push(l.resolve(t,n)),r=l}else{let l=ql.get(r.tree);if(l&&l.overlay&&l.overlay[0].from<=t&&l.overlay[l.overlay.length-1].to>=t){let c=new Dn(l.tree,l.overlay[0].from+r.from,-1,r);(s||(s=[i])).push(Jc(c,t,n,!1))}}return s?oE(s):i}class $d{get name(){return this.type.name}constructor(t,n=0){if(this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,this.mode=n&~ie.EnterBracketed,t instanceof Dn)this.yieldNode(t);else{this._tree=t.context.parent,this.buffer=t.context;for(let i=t._parent;i;i=i._parent)this.stack.unshift(i.index);this.bufferNode=t,this.yieldBuf(t.index)}}yieldNode(t){return t?(this._tree=t,this.type=t.type,this.from=t.from,this.to=t.to,!0):!1}yieldBuf(t,n){this.index=t;let{start:i,buffer:s}=this.buffer;return this.type=n||s.set.types[s.buffer[t]],this.from=i+s.buffer[t+1],this.to=i+s.buffer[t+2],!0}yield(t){return t?t instanceof Dn?(this.buffer=null,this.yieldNode(t)):(this.buffer=t.context,this.yieldBuf(t.index,t.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(t,n,i){if(!this.buffer)return this.yield(this._tree.nextChild(t<0?this._tree._tree.children.length-1:0,t,n,i,this.mode));let{buffer:s}=this.buffer,r=s.findChild(this.index+4,s.buffer[this.index+3],t,n-this.buffer.start,i);return r<0?!1:(this.stack.push(this.index),this.yieldBuf(r))}firstChild(){return this.enterChild(1,0,4)}lastChild(){return this.enterChild(-1,0,4)}childAfter(t){return this.enterChild(1,t,2)}childBefore(t){return this.enterChild(-1,t,-2)}enter(t,n,i=this.mode){return this.buffer?i&ie.ExcludeBuffers?!1:this.enterChild(1,t,n):this.yield(this._tree.enter(t,n,i))}parent(){if(!this.buffer)return this.yieldNode(this.mode&ie.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let t=this.mode&ie.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(t)}sibling(t){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+t,t,0,4,this.mode)):!1;let{buffer:n}=this.buffer,i=this.stack.length-1;if(t<0){let s=i<0?0:this.stack[i]+4;if(this.index!=s)return this.yieldBuf(n.findChild(s,this.index,-1,0,4))}else{let s=n.buffer[this.index+3];if(s<(i<0?n.buffer.length:n.buffer[this.stack[i]+3]))return this.yieldBuf(s)}return i<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+t,t,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(t){let n,i,{buffer:s}=this;if(s){if(t>0){if(this.index<s.buffer.buffer.length)return!1}else for(let r=0;r<this.index;r++)if(s.buffer.buffer[r+3]<this.index)return!1;({index:n,parent:i}=s)}else({index:n,_parent:i}=this._tree);for(;i;{index:n,_parent:i}=i)if(n>-1)for(let r=n+t,l=t<0?-1:i._tree.children.length;r!=l;r+=t){let c=i._tree.children[r];if(this.mode&ie.IncludeAnonymous||c instanceof Er||!c.type.isAnonymous||Yw(c))return!1}return!0}move(t,n){if(n&&this.enterChild(t,0,4))return!0;for(;;){if(this.sibling(t))return!0;if(this.atLastNode(t)||!this.parent())return!1}}next(t=!0){return this.move(1,t)}prev(t=!0){return this.move(-1,t)}moveTo(t,n=0){for(;(this.from==this.to||(n<1?this.from>=t:this.from>t)||(n>-1?this.to<=t:this.to<t))&&this.parent(););for(;this.enterChild(1,t,n););return this}get node(){if(!this.buffer)return this._tree;let t=this.bufferNode,n=null,i=0;if(t&&t.context==this.buffer)t:for(let s=this.index,r=this.stack.length;r>=0;){for(let l=t;l;l=l._parent)if(l.index==s){if(s==this.index)return l;n=l,i=r+1;break t}s=this.stack[--r]}for(let s=i;s<this.stack.length;s++)n=new $r(this.buffer,n,this.stack[s]);return this.bufferNode=new $r(this.buffer,n,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(t,n){for(let i=0;;){let s=!1;if(this.type.isAnonymous||t(this)!==!1){if(this.firstChild()){i++;continue}this.type.isAnonymous||(s=!0)}for(;;){if(s&&n&&n(this),s=this.type.isAnonymous,!i)return;if(this.nextSibling())break;this.parent(),i--,s=!0}}}matchContext(t){if(!this.buffer)return Hy(this.node.parent,t);let{buffer:n}=this.buffer,{types:i}=n.set;for(let s=t.length-1,r=this.stack.length-1;s>=0;r--){if(r<0)return Hy(this._tree,t,s);let l=i[n.buffer[this.stack[r]]];if(!l.isAnonymous){if(t[s]&&t[s]!=l.name)return!1;s--}}return!0}}function Yw(e){return e.children.some(t=>t instanceof Er||!t.type.isAnonymous||Yw(t))}function lG(e){var t;let{buffer:n,nodeSet:i,maxBufferLength:s=iE,reused:r=[],minRepeatType:l=i.types.length}=e,c=Array.isArray(n)?new Bw(n,n.length):n,u=i.types,f=0,p=0;function m(_,A,H,Y,W,nt){let{id:U,start:P,end:F,size:M}=c,G=p,T=f;if(M<0)if(c.next(),M==-1){let j=r[U];H.push(j),Y.push(P-_);return}else if(M==-3){f=U;return}else if(M==-4){p=U;return}else throw new RangeError(`Unrecognized record size: ${M}`);let z=u[U],Z,Q,et=P-_;if(F-P<=s&&(Q=S(c.pos-A,W))){let j=new Uint16Array(Q.size-Q.skip),R=c.pos-Q.size,J=j.length;for(;c.pos>R;)J=O(Q.start,j,J);Z=new Er(j,F-Q.start,i),et=Q.start-_}else{let j=c.pos-M;c.next();let R=[],J=[],st=U>=l?U:-1,ut=0,ft=F;for(;c.pos>j;)st>=0&&c.id==st&&c.size>=0?(c.end<=ft-s&&($(R,J,P,ut,c.end,ft,st,G,T),ut=R.length,ft=c.end),c.next()):nt>2500?g(P,j,R,J):m(P,j,R,J,st,nt+1);if(st>=0&&ut>0&&ut<R.length&&$(R,J,P,ut,P,ft,st,G,T),R.reverse(),J.reverse(),st>-1&&ut>0){let dt=y(z,T);Z=Gw(z,R,J,0,R.length,0,F-P,dt,dt)}else Z=b(z,R,J,F-P,G-F,T)}H.push(Z),Y.push(et)}function g(_,A,H,Y){let W=[],nt=0,U=-1;for(;c.pos>A;){let{id:P,start:F,end:M,size:G}=c;if(G>4)c.next();else{if(U>-1&&F<U)break;U<0&&(U=M-s),W.push(P,F,M),nt++,c.next()}}if(nt){let P=new Uint16Array(nt*4),F=W[W.length-2];for(let M=W.length-3,G=0;M>=0;M-=3)P[G++]=W[M],P[G++]=W[M+1]-F,P[G++]=W[M+2]-F,P[G++]=G;H.push(new Er(P,W[2]-F,i)),Y.push(F-_)}}function y(_,A){return(H,Y,W)=>{let nt=0,U=H.length-1,P,F;if(U>=0&&(P=H[U])instanceof Vt){if(!U&&P.type==_&&P.length==W)return P;(F=P.prop(At.lookAhead))&&(nt=Y[U]+P.length+F)}return b(_,H,Y,W,nt,A)}}function $(_,A,H,Y,W,nt,U,P,F){let M=[],G=[];for(;_.length>Y;)M.push(_.pop()),G.push(A.pop()+H-W);_.push(b(i.types[U],M,G,nt-W,P-nt,F)),A.push(W-H)}function b(_,A,H,Y,W,nt,U){if(nt){let P=[At.contextHash,nt];U=U?[P].concat(U):[P]}if(W>25){let P=[At.lookAhead,W];U=U?[P].concat(U):[P]}return new Vt(_,A,H,Y,U)}function S(_,A){let H=c.fork(),Y=0,W=0,nt=0,U=H.end-s,P={size:0,start:0,skip:0};t:for(let F=H.pos-_;H.pos>F;){let M=H.size;if(H.id==A&&M>=0){P.size=Y,P.start=W,P.skip=nt,nt+=4,Y+=4,H.next();continue}let G=H.pos-M;if(M<0||G<F||H.start<U)break;let T=H.id>=l?4:0,z=H.start;for(H.next();H.pos>G;){if(H.size<0)if(H.size==-3||H.size==-4)T+=4;else break t;else H.id>=l&&(T+=4);H.next()}W=z,Y+=M,nt+=T}return(A<0||Y==_)&&(P.size=Y,P.start=W,P.skip=nt),P.size>4?P:void 0}function O(_,A,H){let{id:Y,start:W,end:nt,size:U}=c;if(c.next(),U>=0&&Y<l){let P=H;if(U>4){let F=c.pos-(U-4);for(;c.pos>F;)H=O(_,A,H)}A[--H]=P,A[--H]=nt-_,A[--H]=W-_,A[--H]=Y}else U==-3?f=Y:U==-4&&(p=Y);return H}let E=[],k=[];for(;c.pos>0;)m(e.start||0,e.bufferStart||0,E,k,-1,0);let D=(t=e.length)!==null&&t!==void 0?t:E.length?k[0]+E[0].length:0;return new Vt(u[e.topID],E.reverse(),k.reverse(),D)}const Xv=new WeakMap;function Gf(e,t){if(!e.isAnonymous||t instanceof Er||t.type!=e)return 1;let n=Xv.get(t);if(n==null){n=1;for(let i of t.children){if(i.type!=e||!(i instanceof Vt)){n=1;break}n+=Gf(e,i)}Xv.set(t,n)}return n}function Gw(e,t,n,i,s,r,l,c,u){let f=0;for(let $=i;$<s;$++)f+=Gf(e,t[$]);let p=Math.ceil(f*1.5/8),m=[],g=[];function y($,b,S,O,E){for(let k=S;k<O;){let D=k,_=b[k],A=Gf(e,$[k]);for(k++;k<O;k++){let H=Gf(e,$[k]);if(A+H>=p)break;A+=H}if(k==D+1){if(A>p){let H=$[D];y(H.children,H.positions,0,H.children.length,b[D]+E);continue}m.push($[D])}else{let H=b[k-1]+$[k-1].length-_;m.push(Gw(e,$,b,D,k,_,H,null,u))}g.push(_+E-r)}}return y(t,n,i,s,0),(c||u)(m,g,l)}class Es{constructor(t,n,i,s,r=!1,l=!1){this.from=t,this.to=n,this.tree=i,this.offset=s,this.open=(r?1:0)|(l?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(t,n=[],i=!1){let s=[new Es(0,t.length,t,0,!1,i)];for(let r of n)r.to>t.length&&s.push(r);return s}static applyChanges(t,n,i=128){if(!n.length)return t;let s=[],r=1,l=t.length?t[0]:null;for(let c=0,u=0,f=0;;c++){let p=c<n.length?n[c]:null,m=p?p.fromA:1e9;if(m-u>=i)for(;l&&l.from<m;){let g=l;if(u>=g.from||m<=g.to||f){let y=Math.max(g.from,u)-f,$=Math.min(g.to,m)-f;g=y>=$?null:new Es(y,$,g.tree,g.offset+f,c>0,!!p)}if(g&&s.push(g),l.to>m)break;l=r<t.length?t[r++]:null}if(!p)break;u=p.toA,f=p.toA-p.toB}return s}}class Lw{startParse(t,n,i){return typeof t=="string"&&(t=new aG(t)),i=i?i.length?i.map(s=>new ri(s.from,s.to)):[new ri(0,0)]:[new ri(0,t.length)],this.createParse(t,n||[],i)}parse(t,n,i){let s=this.startParse(t,n,i);for(;;){let r=s.advance();if(r)return r}}}class aG{constructor(t){this.string=t}get length(){return this.string.length}chunk(t){return this.string.slice(t)}get lineChunks(){return!1}read(t,n){return this.string.slice(t,n)}}function cG(e){return(t,n,i,s)=>new hG(t,e,n,i,s)}class Kv{constructor(t,n,i,s,r,l){this.parser=t,this.parse=n,this.overlay=i,this.bracketed=s,this.target=r,this.from=l}}function Jv(e){if(!e.length||e.some(t=>t.from>=t.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(e))}class uG{constructor(t,n,i,s,r,l,c,u){this.parser=t,this.predicate=n,this.mounts=i,this.index=s,this.start=r,this.bracketed=l,this.target=c,this.prev=u,this.depth=0,this.ranges=[]}}const zy=new At({perNode:!0});class hG{constructor(t,n,i,s,r){this.nest=n,this.input=i,this.fragments=s,this.ranges=r,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=t}advance(){if(this.baseParse){let i=this.baseParse.advance();if(!i)return null;if(this.baseParse=null,this.baseTree=i,this.startInner(),this.stoppedAt!=null)for(let s of this.inner)s.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let i=this.baseTree;return this.stoppedAt!=null&&(i=new Vt(i.type,i.children,i.positions,i.length,i.propValues.concat([[zy,this.stoppedAt]]))),i}let t=this.inner[this.innerDone],n=t.parse.advance();if(n){this.innerDone++;let i=Object.assign(Object.create(null),t.target.props);i[At.mounted.id]=new ql(n,t.overlay,t.parser,t.bracketed),t.target.props=i}return null}get parsedPos(){if(this.baseParse)return 0;let t=this.input.length;for(let n=this.innerDone;n<this.inner.length;n++)this.inner[n].from<t&&(t=Math.min(t,this.inner[n].parse.parsedPos));return t}stopAt(t){if(this.stoppedAt=t,this.baseParse)this.baseParse.stopAt(t);else for(let n=this.innerDone;n<this.inner.length;n++)this.inner[n].parse.stopAt(t)}startInner(){let t=new pG(this.fragments),n=null,i=null,s=new $d(new Dn(this.baseTree,this.ranges[0].from,0,null),ie.IncludeAnonymous|ie.IgnoreMounts);t:for(let r,l;;){let c=!0,u;if(this.stoppedAt!=null&&s.from>=this.stoppedAt)c=!1;else if(t.hasNode(s)){if(n){let f=n.mounts.find(p=>p.frag.from<=s.from&&p.frag.to>=s.to&&p.mount.overlay);if(f)for(let p of f.mount.overlay){let m=p.from+f.pos,g=p.to+f.pos;m>=s.from&&g<=s.to&&!n.ranges.some(y=>y.from<g&&y.to>m)&&n.ranges.push({from:m,to:g})}}c=!1}else if(i&&(l=fG(i.ranges,s.from,s.to)))c=l!=2;else if(!s.type.isAnonymous&&(r=this.nest(s,this.input))&&(s.from<s.to||!r.overlay)){s.tree||(dG(s),n&&n.depth++,i&&i.depth++);let f=t.findMounts(s.from,r.parser);if(typeof r.overlay=="function")n=new uG(r.parser,r.overlay,f,this.inner.length,s.from,!!r.bracketed,s.tree,n);else{let p=nS(this.ranges,r.overlay||(s.from<s.to?[new ri(s.from,s.to)]:[]));p.length&&Jv(p),(p.length||!r.overlay)&&this.inner.push(new Kv(r.parser,p.length?r.parser.startParse(this.input,iS(f,p),p):r.parser.startParse(""),r.overlay?r.overlay.map(m=>new ri(m.from-s.from,m.to-s.from)):null,!!r.bracketed,s.tree,p.length?p[0].from:s.from)),r.overlay?p.length&&(i={ranges:p,depth:0,prev:i}):c=!1}}else if(n&&(u=n.predicate(s))&&(u===!0&&(u=new ri(s.from,s.to)),u.from<u.to)){let f=n.ranges.length-1;f>=0&&n.ranges[f].to==u.from?n.ranges[f]={from:n.ranges[f].from,to:u.to}:n.ranges.push(u)}if(c&&s.firstChild())n&&n.depth++,i&&i.depth++;else for(;!s.nextSibling();){if(!s.parent())break t;if(n&&!--n.depth){let f=nS(this.ranges,n.ranges);f.length&&(Jv(f),this.inner.splice(n.index,0,new Kv(n.parser,n.parser.startParse(this.input,iS(n.mounts,f),f),n.ranges.map(p=>new ri(p.from-n.start,p.to-n.start)),n.bracketed,n.target,f[0].from))),n=n.prev}i&&!--i.depth&&(i=i.prev)}}}}function fG(e,t,n){for(let i of e){if(i.from>=n)break;if(i.to>t)return i.from<=t&&i.to>=n?2:1}return 0}function tS(e,t,n,i,s,r){if(t<n){let l=e.buffer[t+1];i.push(e.slice(t,n,l)),s.push(l-r)}}function dG(e){let{node:t}=e,n=[],i=t.context.buffer;do n.push(e.index),e.parent();while(!e.tree);let s=e.tree,r=s.children.indexOf(i),l=s.children[r],c=l.buffer,u=[r];function f(p,m,g,y,$,b){let S=n[b],O=[],E=[];tS(l,p,S,O,E,y);let k=c[S+1],D=c[S+2];u.push(O.length);let _=b?f(S+4,c[S+3],l.set.types[c[S]],k,D-k,b-1):t.toTree();return O.push(_),E.push(k-y),tS(l,c[S+3],m,O,E,y),new Vt(g,O,E,$)}s.children[r]=f(0,c.length,Xe.none,0,l.length,n.length-1);for(let p of u){let m=e.tree.children[p],g=e.tree.positions[p];e.yield(new Dn(m,g+e.from,p,e._tree))}}class eS{constructor(t,n){this.offset=n,this.done=!1,this.cursor=t.cursor(ie.IncludeAnonymous|ie.IgnoreMounts)}moveTo(t){let{cursor:n}=this,i=t-this.offset;for(;!this.done&&n.from<i;)if(!(n.to>=t&&n.enter(i,1,ie.IgnoreOverlays|ie.ExcludeBuffers)))if(n.to<=t)n.next(!1)||(this.done=!0);else break}hasNode(t){if(this.moveTo(t.from),!this.done&&this.cursor.from+this.offset==t.from&&this.cursor.tree)for(let n=this.cursor.tree;;){if(n==t.tree)return!0;if(n.children.length&&n.positions[0]==0&&n.children[0]instanceof Vt)n=n.children[0];else break}return!1}}let pG=class{constructor(t){var n;if(this.fragments=t,this.curTo=0,this.fragI=0,t.length){let i=this.curFrag=t[0];this.curTo=(n=i.tree.prop(zy))!==null&&n!==void 0?n:i.to,this.inner=new eS(i.tree,-i.offset)}else this.curFrag=this.inner=null}hasNode(t){for(;this.curFrag&&t.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=t.from&&this.curTo>=t.to&&this.inner.hasNode(t)}nextFrag(){var t;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let n=this.curFrag=this.fragments[this.fragI];this.curTo=(t=n.tree.prop(zy))!==null&&t!==void 0?t:n.to,this.inner=new eS(n.tree,-n.offset)}}findMounts(t,n){var i;let s=[];if(this.inner){this.inner.cursor.moveTo(t,1);for(let r=this.inner.cursor.node;r;r=r.parent){let l=(i=r.tree)===null||i===void 0?void 0:i.prop(At.mounted);if(l&&l.parser==n)for(let c=this.fragI;c<this.fragments.length;c++){let u=this.fragments[c];if(u.from>=r.to)break;u.tree==this.curFrag.tree&&s.push({frag:u,pos:r.from-u.offset,mount:l})}}}return s}};function nS(e,t){let n=null,i=t;for(let s=1,r=0;s<e.length;s++){let l=e[s-1].to,c=e[s].from;for(;r<i.length;r++){let u=i[r];if(u.from>=c)break;u.to<=l||(n||(i=n=t.slice()),u.from<l?(n[r]=new ri(u.from,l),u.to>c&&n.splice(r+1,0,new ri(c,u.to))):u.to>c?n[r--]=new ri(c,u.to):n.splice(r--,1))}}return i}function mG(e,t,n,i){let s=0,r=0,l=!1,c=!1,u=-1e9,f=[];for(;;){let p=s==e.length?1e9:l?e[s].to:e[s].from,m=r==t.length?1e9:c?t[r].to:t[r].from;if(l!=c){let g=Math.max(u,n),y=Math.min(p,m,i);g<y&&f.push(new ri(g,y))}if(u=Math.min(p,m),u==1e9)break;p==u&&(l?(l=!1,s++):l=!0),m==u&&(c?(c=!1,r++):c=!0)}return f}function iS(e,t){let n=[];for(let{pos:i,mount:s,frag:r}of e){let l=i+(s.overlay?s.overlay[0].from:0),c=l+s.tree.length,u=Math.max(r.from,l),f=Math.min(r.to,c);if(s.overlay){let p=s.overlay.map(g=>new ri(g.from+i,g.to+i)),m=mG(t,p,u,f);for(let g=0,y=u;;g++){let $=g==m.length,b=$?f:m[g].from;if(b>y&&n.push(new Es(y,b,s.tree,-l,r.from>=y||r.openStart,r.to<=b||r.openEnd)),$)break;y=m[g].to}}else n.push(new Es(u,f,s.tree,-l,r.from>=l||r.openStart,r.to<=c||r.openEnd))}return n}let gG=0;class bt{constructor(t,n,i,s){this.name=t,this.set=n,this.base=i,this.modified=s,this.id=gG++}toString(){let{name:t}=this;for(let n of this.modified)n.name&&(t=`${n.name}(${t})`);return t}static define(t,n){let i=typeof t=="string"?t:"?";if(t instanceof bt&&(n=t),n!=null&&n.base)throw new Error("Can not derive from a modified tag");let s=new bt(i,[],null,[]);if(s.set.push(s),n)for(let r of n.set)s.set.push(r);return s}static defineModifier(t){let n=new xd(t);return i=>i.modified.indexOf(n)>-1?i:xd.get(i.base||i,i.modified.concat(n).sort((s,r)=>s.id-r.id))}}let yG=0;class xd{constructor(t){this.name=t,this.instances=[],this.id=yG++}static get(t,n){if(!n.length)return t;let i=n[0].instances.find(c=>c.base==t&&wG(n,c.modified));if(i)return i;let s=[],r=new bt(t.name,s,t,n);for(let c of n)c.instances.push(r);let l=$G(n);for(let c of t.set)if(!c.modified.length)for(let u of l)s.push(xd.get(c,u));return r}}function wG(e,t){return e.length==t.length&&e.every((n,i)=>n==t[i])}function $G(e){let t=[[]];for(let n=0;n<e.length;n++)for(let i=0,s=t.length;i<s;i++)t.push(t[i].concat(e[n]));return t.sort((n,i)=>i.length-n.length)}function jr(e){let t=Object.create(null);for(let n in e){let i=e[n];Array.isArray(i)||(i=[i]);for(let s of n.split(" "))if(s){let r=[],l=2,c=s;for(let m=0;;){if(c=="..."&&m>0&&m+3==s.length){l=1;break}let g=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(c);if(!g)throw new RangeError("Invalid path: "+s);if(r.push(g[0]=="*"?"":g[0][0]=='"'?JSON.parse(g[0]):g[0]),m+=g[0].length,m==s.length)break;let y=s[m++];if(m==s.length&&y=="!"){l=0;break}if(y!="/")throw new RangeError("Invalid path: "+s);c=s.slice(m)}let u=r.length-1,f=r[u];if(!f)throw new RangeError("Invalid path: "+s);let p=new tu(i,l,u>0?r.slice(0,u):null);t[f]=p.sort(t[f])}}return lE.add(t)}const lE=new At({combine(e,t){let n,i,s;for(;e||t;){if(!e||t&&e.depth>=t.depth?(s=t,t=t.next):(s=e,e=e.next),n&&n.mode==s.mode&&!s.context&&!n.context)continue;let r=new tu(s.tags,s.mode,s.context);n?n.next=r:i=r,n=r}return i}});class tu{constructor(t,n,i,s){this.tags=t,this.mode=n,this.context=i,this.next=s}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(t){return!t||t.depth<this.depth?(this.next=t,this):(t.next=this.sort(t.next),t)}get depth(){return this.context?this.context.length:0}}tu.empty=new tu([],2,null);function aE(e,t){let n=Object.create(null);for(let r of e)if(!Array.isArray(r.tag))n[r.tag.id]=r.class;else for(let l of r.tag)n[l.id]=r.class;let{scope:i,all:s=null}=t||{};return{style:r=>{let l=s;for(let c of r)for(let u of c.set){let f=n[u.id];if(f){l=l?l+" "+f:f;break}}return l},scope:i}}function xG(e,t){let n=null;for(let i of e){let s=i.style(t);s&&(n=n?n+" "+s:s)}return n}function bG(e,t,n,i=0,s=e.length){let r=new vG(i,Array.isArray(t)?t:[t],n);r.highlightRange(e.cursor(),i,s,"",r.highlighters),r.flush(s)}class vG{constructor(t,n,i){this.at=t,this.highlighters=n,this.span=i,this.class=""}startSpan(t,n){n!=this.class&&(this.flush(t),t>this.at&&(this.at=t),this.class=n)}flush(t){t>this.at&&this.class&&this.span(this.at,t,this.class)}highlightRange(t,n,i,s,r){let{type:l,from:c,to:u}=t;if(c>=i||u<=n)return;l.isTop&&(r=this.highlighters.filter(y=>!y.scope||y.scope(l)));let f=s,p=SG(t)||tu.empty,m=xG(r,p.tags);if(m&&(f&&(f+=" "),f+=m,p.mode==1&&(s+=(s?" ":"")+m)),this.startSpan(Math.max(n,c),f),p.opaque)return;let g=t.tree&&t.tree.prop(At.mounted);if(g&&g.overlay){let y=t.node.enter(g.overlay[0].from+c,1),$=this.highlighters.filter(S=>!S.scope||S.scope(g.tree.type)),b=t.firstChild();for(let S=0,O=c;;S++){let E=S<g.overlay.length?g.overlay[S]:null,k=E?E.from+c:u,D=Math.max(n,O),_=Math.min(i,k);if(D<_&&b)for(;t.from<_&&(this.highlightRange(t,D,_,s,r),this.startSpan(Math.min(_,t.to),f),!(t.to>=k||!t.nextSibling())););if(!E||k>i)break;O=E.to+c,O>n&&(this.highlightRange(y.cursor(),Math.max(n,E.from+c),Math.min(i,O),"",$),this.startSpan(Math.min(i,O),f))}b&&t.parent()}else if(t.firstChild()){g&&(s="");do if(!(t.to<=n)){if(t.from>=i)break;this.highlightRange(t,n,i,s,r),this.startSpan(Math.min(i,t.to),f)}while(t.nextSibling());t.parent()}}}function SG(e){let t=e.type.prop(lE);for(;t&&t.context&&!e.matchContext(t.context);)t=t.next;return t||null}const mt=bt.define,yf=mt(),fr=mt(),sS=mt(fr),rS=mt(fr),dr=mt(),wf=mt(dr),w0=mt(dr),Hi=mt(),so=mt(Hi),Mi=mt(),Ai=mt(),By=mt(),$c=mt(By),$f=mt(),V={comment:yf,lineComment:mt(yf),blockComment:mt(yf),docComment:mt(yf),name:fr,variableName:mt(fr),typeName:sS,tagName:mt(sS),propertyName:rS,attributeName:mt(rS),className:mt(fr),labelName:mt(fr),namespace:mt(fr),macroName:mt(fr),literal:dr,string:wf,docString:mt(wf),character:mt(wf),attributeValue:mt(wf),number:w0,integer:mt(w0),float:mt(w0),bool:mt(dr),regexp:mt(dr),escape:mt(dr),color:mt(dr),url:mt(dr),keyword:Mi,self:mt(Mi),null:mt(Mi),atom:mt(Mi),unit:mt(Mi),modifier:mt(Mi),operatorKeyword:mt(Mi),controlKeyword:mt(Mi),definitionKeyword:mt(Mi),moduleKeyword:mt(Mi),operator:Ai,derefOperator:mt(Ai),arithmeticOperator:mt(Ai),logicOperator:mt(Ai),bitwiseOperator:mt(Ai),compareOperator:mt(Ai),updateOperator:mt(Ai),definitionOperator:mt(Ai),typeOperator:mt(Ai),controlOperator:mt(Ai),punctuation:By,separator:mt(By),bracket:$c,angleBracket:mt($c),squareBracket:mt($c),paren:mt($c),brace:mt($c),content:Hi,heading:so,heading1:mt(so),heading2:mt(so),heading3:mt(so),heading4:mt(so),heading5:mt(so),heading6:mt(so),contentSeparator:mt(Hi),list:mt(Hi),quote:mt(Hi),emphasis:mt(Hi),strong:mt(Hi),link:mt(Hi),monospace:mt(Hi),strikethrough:mt(Hi),inserted:mt(),deleted:mt(),changed:mt(),invalid:mt(),meta:$f,documentMeta:mt($f),annotation:mt($f),processingInstruction:mt($f),definition:bt.defineModifier("definition"),constant:bt.defineModifier("constant"),function:bt.defineModifier("function"),standard:bt.defineModifier("standard"),local:bt.defineModifier("local"),special:bt.defineModifier("special")};for(let e in V){let t=V[e];t instanceof bt&&(t.name=e)}aE([{tag:V.link,class:"tok-link"},{tag:V.heading,class:"tok-heading"},{tag:V.emphasis,class:"tok-emphasis"},{tag:V.strong,class:"tok-strong"},{tag:V.keyword,class:"tok-keyword"},{tag:V.atom,class:"tok-atom"},{tag:V.bool,class:"tok-bool"},{tag:V.url,class:"tok-url"},{tag:V.labelName,class:"tok-labelName"},{tag:V.inserted,class:"tok-inserted"},{tag:V.deleted,class:"tok-deleted"},{tag:V.literal,class:"tok-literal"},{tag:V.string,class:"tok-string"},{tag:V.number,class:"tok-number"},{tag:[V.regexp,V.escape,V.special(V.string)],class:"tok-string2"},{tag:V.variableName,class:"tok-variableName"},{tag:V.local(V.variableName),class:"tok-variableName tok-local"},{tag:V.definition(V.variableName),class:"tok-variableName tok-definition"},{tag:V.special(V.variableName),class:"tok-variableName2"},{tag:V.definition(V.propertyName),class:"tok-propertyName tok-definition"},{tag:V.typeName,class:"tok-typeName"},{tag:V.namespace,class:"tok-namespace"},{tag:V.className,class:"tok-className"},{tag:V.macroName,class:"tok-macroName"},{tag:V.propertyName,class:"tok-propertyName"},{tag:V.operator,class:"tok-operator"},{tag:V.comment,class:"tok-comment"},{tag:V.meta,class:"tok-meta"},{tag:V.invalid,class:"tok-invalid"},{tag:V.punctuation,class:"tok-punctuation"}]);var $0;const po=new At;function cE(e){return wt.define({combine:e?t=>t.concat(e):void 0})}const OG=new At;class oi{constructor(t,n,i=[],s=""){this.data=t,this.name=s,Wt.prototype.hasOwnProperty("tree")||Object.defineProperty(Wt.prototype,"tree",{get(){return Ke(this)}}),this.parser=n,this.extension=[Dr.of(this),Wt.languageData.of((r,l,c)=>{let u=oS(r,l,c),f=u.type.prop(po);if(!f)return[];let p=r.facet(f),m=u.type.prop(OG);if(m){let g=u.resolve(l-u.from,c);for(let y of m)if(y.test(g,r)){let $=r.facet(y.facet);return y.type=="replace"?$:$.concat(p)}}return p})].concat(i)}isActiveAt(t,n,i=-1){return oS(t,n,i).type.prop(po)==this.data}findRegions(t){let n=t.facet(Dr);if((n==null?void 0:n.data)==this.data)return[{from:0,to:t.doc.length}];if(!n||!n.allowsNesting)return[];let i=[],s=(r,l)=>{if(r.prop(po)==this.data){i.push({from:l,to:l+r.length});return}let c=r.prop(At.mounted);if(c){if(c.tree.prop(po)==this.data){if(c.overlay)for(let u of c.overlay)i.push({from:u.from+l,to:u.to+l});else i.push({from:l,to:l+r.length});return}else if(c.overlay){let u=i.length;if(s(c.tree,c.overlay[0].from+l),i.length>u)return}}for(let u=0;u<r.children.length;u++){let f=r.children[u];f instanceof Vt&&s(f,r.positions[u]+l)}};return s(Ke(t),0),i}get allowsNesting(){return!0}}oi.setState=_t.define();function oS(e,t,n){let i=e.facet(Dr),s=Ke(e).topNode;if(!i||i.allowsNesting)for(let r=s;r;r=r.enter(t,n,ie.ExcludeBuffers|ie.EnterBracketed))r.type.isTop&&(s=r);return s}class vi extends oi{constructor(t,n,i){super(t,n,[],i),this.parser=n}static define(t){let n=cE(t.languageData);return new vi(n,t.parser.configure({props:[po.add(i=>i.isTop?n:void 0)]}),t.name)}configure(t,n){return new vi(this.data,this.parser.configure(t),n||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function Ke(e){let t=e.field(oi.state,!1);return t?t.tree:Vt.empty}class kG{constructor(t){this.doc=t,this.cursorPos=0,this.string="",this.cursor=t.iter()}get length(){return this.doc.length}syncTo(t){return this.string=this.cursor.next(t-this.cursorPos).value,this.cursorPos=t+this.string.length,this.cursorPos-this.string.length}chunk(t){return this.syncTo(t),this.string}get lineChunks(){return!0}read(t,n){let i=this.cursorPos-this.string.length;return t<i||n>=this.cursorPos?this.doc.sliceString(t,n):this.string.slice(t-i,n-i)}}let xc=null;class la{constructor(t,n,i=[],s,r,l,c,u){this.parser=t,this.state=n,this.fragments=i,this.tree=s,this.treeLen=r,this.viewport=l,this.skipped=c,this.scheduleOn=u,this.parse=null,this.tempSkipped=[]}static create(t,n,i){return new la(t,n,[],Vt.empty,0,i,[],null)}startParse(){return this.parser.startParse(new kG(this.state.doc),this.fragments)}work(t,n){return n!=null&&n>=this.state.doc.length&&(n=void 0),this.tree!=Vt.empty&&this.isDone(n??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var i;if(typeof t=="number"){let s=Date.now()+t;t=()=>Date.now()>s}for(this.parse||(this.parse=this.startParse()),n!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>n)&&n<this.state.doc.length&&this.parse.stopAt(n);;){let s=this.parse.advance();if(s)if(this.fragments=this.withoutTempSkipped(Es.addTree(s,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(i=this.parse.stoppedAt)!==null&&i!==void 0?i:this.state.doc.length,this.tree=s,this.parse=null,this.treeLen<(n??this.state.doc.length))this.parse=this.startParse();else return!0;if(t())return!1}})}takeTree(){let t,n;this.parse&&(t=this.parse.parsedPos)>=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&this.parse.stopAt(t),this.withContext(()=>{for(;!(n=this.parse.advance()););}),this.treeLen=t,this.tree=n,this.fragments=this.withoutTempSkipped(Es.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(t){let n=xc;xc=this;try{return t()}finally{xc=n}}withoutTempSkipped(t){for(let n;n=this.tempSkipped.pop();)t=lS(t,n.from,n.to);return t}changes(t,n){let{fragments:i,tree:s,treeLen:r,viewport:l,skipped:c}=this;if(this.takeTree(),!t.empty){let u=[];if(t.iterChangedRanges((f,p,m,g)=>u.push({fromA:f,toA:p,fromB:m,toB:g})),i=Es.applyChanges(i,u),s=Vt.empty,r=0,l={from:t.mapPos(l.from,-1),to:t.mapPos(l.to,1)},this.skipped.length){c=[];for(let f of this.skipped){let p=t.mapPos(f.from,1),m=t.mapPos(f.to,-1);p<m&&c.push({from:p,to:m})}}}return new la(this.parser,n,i,s,r,l,c,this.scheduleOn)}updateViewport(t){if(this.viewport.from==t.from&&this.viewport.to==t.to)return!1;this.viewport=t;let n=this.skipped.length;for(let i=0;i<this.skipped.length;i++){let{from:s,to:r}=this.skipped[i];s<t.to&&r>t.from&&(this.fragments=lS(this.fragments,s,r),this.skipped.splice(i--,1))}return this.skipped.length>=n?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(t,n){this.skipped.push({from:t,to:n})}static getSkippingParser(t){return new class extends Lw{createParse(n,i,s){let r=s[0].from,l=s[s.length-1].to;return{parsedPos:r,advance(){let u=xc;if(u){for(let f of s)u.tempSkipped.push(f);t&&(u.scheduleOn=u.scheduleOn?Promise.all([u.scheduleOn,t]):t)}return this.parsedPos=l,new Vt(Xe.none,[],[],l-r)},stoppedAt:null,stopAt(){}}}}}isDone(t){t=Math.min(t,this.state.doc.length);let n=this.fragments;return this.treeLen>=t&&n.length&&n[0].from==0&&n[0].to>=t}static get(){return xc}}function lS(e,t,n){return Es.applyChanges(e,[{fromA:t,toA:n,fromB:t,toB:n}])}class aa{constructor(t){this.context=t,this.tree=t.tree}apply(t){if(!t.docChanged&&this.tree==this.context.tree)return this;let n=this.context.changes(t.changes,t.state),i=this.context.treeLen==t.startState.doc.length?void 0:Math.max(t.changes.mapPos(this.context.treeLen),n.viewport.to);return n.work(20,i)||n.takeTree(),new aa(n)}static init(t){let n=Math.min(3e3,t.doc.length),i=la.create(t.facet(Dr).parser,t,{from:0,to:n});return i.work(20,n)||i.takeTree(),new aa(i)}}oi.state=Je.define({create:aa.init,update(e,t){for(let n of t.effects)if(n.is(oi.setState))return n.value;return t.startState.facet(Dr)!=t.state.facet(Dr)?aa.init(t.state):e.apply(t)}});let uE=e=>{let t=setTimeout(()=>e(),500);return()=>clearTimeout(t)};typeof requestIdleCallback<"u"&&(uE=e=>{let t=-1,n=setTimeout(()=>{t=requestIdleCallback(e,{timeout:400})},100);return()=>t<0?clearTimeout(n):cancelIdleCallback(t)});const x0=typeof navigator<"u"&&(!(($0=navigator.scheduling)===null||$0===void 0)&&$0.isInputPending)?()=>navigator.scheduling.isInputPending():null,CG=ke.fromClass(class{constructor(t){this.view=t,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(t){let n=this.view.state.field(oi.state).context;(n.updateViewport(t.view.viewport)||this.view.viewport.to>n.treeLen)&&this.scheduleWork(),(t.docChanged||t.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(n)}scheduleWork(){if(this.working)return;let{state:t}=this.view,n=t.field(oi.state);(n.tree!=n.context.tree||!n.context.isDone(t.doc.length))&&(this.working=uE(this.work))}work(t){this.working=null;let n=Date.now();if(this.chunkEnd<n&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=n+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:i,viewport:{to:s}}=this.view,r=i.field(oi.state);if(r.tree==r.context.tree&&r.context.isDone(s+1e5))return;let l=Date.now()+Math.min(this.chunkBudget,100,t&&!x0?Math.max(25,t.timeRemaining()-5):1e9),c=r.context.treeLen<s&&i.doc.length>s+1e3,u=r.context.work(()=>x0&&x0()||Date.now()>l,s+(c?0:1e5));this.chunkBudget-=Date.now()-n,(u||this.chunkBudget<=0)&&(r.context.takeTree(),this.view.dispatch({effects:oi.setState.of(new aa(r.context))})),this.chunkBudget>0&&!(u&&!c)&&this.scheduleWork(),this.checkAsyncSchedule(r.context)}checkAsyncSchedule(t){t.scheduleOn&&(this.workScheduled++,t.scheduleOn.then(()=>this.scheduleWork()).catch(n=>kn(this.view.state,n)).then(()=>this.workScheduled--),t.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),Dr=wt.define({combine(e){return e.length?e[0]:null},enables:e=>[oi.state,CG,yt.contentAttributes.compute([e],t=>{let n=t.facet(e);return n&&n.name?{"data-language":n.name}:{}})]});class Rr{constructor(t,n=[]){this.language=t,this.support=n,this.extension=[t,n]}}class Ki{constructor(t,n,i,s,r,l=void 0){this.name=t,this.alias=n,this.extensions=i,this.filename=s,this.loadFunc=r,this.support=l,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then(t=>this.support=t,t=>{throw this.loading=null,t}))}static of(t){let{load:n,support:i}=t;if(!n){if(!i)throw new RangeError("Must pass either 'load' or 'support' to LanguageDescription.of");n=()=>Promise.resolve(i)}return new Ki(t.name,(t.alias||[]).concat(t.name).map(s=>s.toLowerCase()),t.extensions||[],t.filename,n,i)}static matchFilename(t,n){for(let s of t)if(s.filename&&s.filename.test(n))return s;let i=/\.([^.]+)$/.exec(n);if(i){for(let s of t)if(s.extensions.indexOf(i[1])>-1)return s}return null}static matchLanguageName(t,n,i=!0){n=n.toLowerCase();for(let s of t)if(s.alias.some(r=>r==n))return s;if(i)for(let s of t)for(let r of s.alias){let l=n.indexOf(r);if(l>-1&&(r.length>2||!/\w/.test(n[l-1])&&!/\w/.test(n[l+r.length])))return s}return null}}const EG=wt.define(),Qw=wt.define({combine:e=>{if(!e.length)return" ";let t=e[0];if(!t||/\S/.test(t)||Array.from(t).some(n=>n!=t[0]))throw new Error("Invalid indent unit: "+JSON.stringify(e[0]));return t}});function jo(e){let t=e.facet(Qw);return t.charCodeAt(0)==9?e.tabSize*t.length:t.length}function eu(e,t){let n="",i=e.tabSize,s=e.facet(Qw)[0];if(s==" "){for(;t>=i;)n+=" ",t-=i;s=" "}for(let r=0;r<t;r++)n+=s;return n}function Pw(e,t){e instanceof Wt&&(e=new op(e));for(let i of e.state.facet(EG)){let s=i(e,t);if(s!==void 0)return s}let n=Ke(e.state);return n.length>=t?DG(e,n,t):null}class op{constructor(t,n={}){this.state=t,this.options=n,this.unit=jo(t)}lineAt(t,n=1){let i=this.state.doc.lineAt(t),{simulateBreak:s,simulateDoubleBreak:r}=this.options;return s!=null&&s>=i.from&&s<=i.to?r&&s==t?{text:"",from:t}:(n<0?s<t:s<=t)?{text:i.text.slice(s-i.from),from:s}:{text:i.text.slice(0,s-i.from),from:i.from}:i}textAfterPos(t,n=1){if(this.options.simulateDoubleBreak&&t==this.options.simulateBreak)return"";let{text:i,from:s}=this.lineAt(t,n);return i.slice(t-s,Math.min(i.length,t+100-s))}column(t,n=1){let{text:i,from:s}=this.lineAt(t,n),r=this.countColumn(i,t-s),l=this.options.overrideIndentation?this.options.overrideIndentation(s):-1;return l>-1&&(r+=l-this.countColumn(i,i.search(/\S|$/))),r}countColumn(t,n=t.length){return fa(t,this.state.tabSize,n)}lineIndent(t,n=1){let{text:i,from:s}=this.lineAt(t,n),r=this.options.overrideIndentation;if(r){let l=r(s);if(l>-1)return l}return this.countColumn(i,i.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const hE=new At;function DG(e,t,n){let i=t.resolveStack(n),s=t.resolveInner(n,-1).resolve(n,0).enterUnfinishedNodesBefore(n);if(s!=i.node){let r=[];for(let l=s;l&&!(l.from<i.node.from||l.to>i.node.to||l.from==i.node.from&&l.type==i.node.type);l=l.parent)r.push(l);for(let l=r.length-1;l>=0;l--)i={node:r[l],next:i}}return fE(i,e,n)}function fE(e,t,n){for(let i=e;i;i=i.next){let s=NG(i.node);if(s)return s(qw.create(t,n,i))}return 0}function TG(e){return e.pos==e.options.simulateBreak&&e.options.simulateDoubleBreak}function NG(e){let t=e.type.prop(hE);if(t)return t;let n=e.firstChild,i;if(n&&(i=n.type.prop(At.closedBy))){let s=e.lastChild,r=s&&i.indexOf(s.name)>-1;return l=>MG(l,!0,1,void 0,r&&!TG(l)?s.from:void 0)}return e.parent==null?jG:null}function jG(){return 0}class qw extends op{constructor(t,n,i){super(t.state,t.options),this.base=t,this.pos=n,this.context=i}get node(){return this.context.node}static create(t,n,i){return new qw(t,n,i)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(t){let n=this.state.doc.lineAt(t.from);for(;;){let i=t.resolve(n.from);for(;i.parent&&i.parent.from==i.from;)i=i.parent;if(RG(i,t))break;n=this.state.doc.lineAt(i.from)}return this.lineIndent(n.from)}continue(){return fE(this.context.next,this.base,this.pos)}}function RG(e,t){for(let n=t;n;n=n.parent)if(e==n)return!0;return!1}function _G(e){let t=e.node,n=t.childAfter(t.from),i=t.lastChild;if(!n)return null;let s=e.options.simulateBreak,r=e.state.doc.lineAt(n.from),l=s==null||s<=r.from?r.to:Math.min(r.to,s);for(let c=n.to;;){let u=t.childAfter(c);if(!u||u==i)return null;if(!u.type.isSkipped){if(u.from>=l)return null;let f=/^ */.exec(r.text.slice(n.to-r.from))[0].length;return{from:n.from,to:n.to+f}}c=u.to}}function MG(e,t,n,i,s){let r=e.textAfter,l=r.match(/^\s*/)[0].length,c=i&&r.slice(l,l+i.length)==i||s==e.pos+l,u=_G(e);return u?c?e.column(u.from):e.column(u.to):e.baseIndent+(c?0:e.unit*n)}const AG=200;function HG(){return Wt.transactionFilter.of(e=>{if(!e.docChanged||!e.isUserEvent("input.type")&&!e.isUserEvent("input.complete"))return e;let t=e.startState.languageDataAt("indentOnInput",e.startState.selection.main.head);if(!t.length)return e;let n=e.newDoc,{head:i}=e.newSelection.main,s=n.lineAt(i);if(i>s.from+AG)return e;let r=n.sliceString(s.from,i);if(!t.some(f=>f.test(r)))return e;let{state:l}=e,c=-1,u=[];for(let{head:f}of l.selection.ranges){let p=l.doc.lineAt(f);if(p.from==c)continue;c=p.from;let m=Pw(l,p.from);if(m==null)continue;let g=/^\s*/.exec(p.text)[0],y=eu(l,m);g!=y&&u.push({from:p.from,to:p.from+g.length,insert:y})}return u.length?[e,{changes:u,sequential:!0}]:e})}const zG=wt.define(),BG=new At;function YG(e,t,n){let i=Ke(e);if(i.length<n)return null;let s=i.resolveStack(n,1),r=null;for(let l=s;l;l=l.next){let c=l.node;if(c.to<=n||c.from>n)continue;if(r&&c.from<t)break;let u=c.type.prop(BG);if(u&&(c.to<i.length-50||i.length==e.doc.length||!GG(c))){let f=u(c,e);f&&f.from<=n&&f.from>=t&&f.to>n&&(r=f)}}return r}function GG(e){let t=e.lastChild;return t&&t.to==e.to&&t.type.isError}function bd(e,t,n){for(let i of e.facet(zG)){let s=i(e,t,n);if(s)return s}return YG(e,t,n)}function dE(e,t){let n=t.mapPos(e.from,1),i=t.mapPos(e.to,-1);return n>=i?void 0:{from:n,to:i}}const lp=_t.define({map:dE}),$u=_t.define({map:dE});function pE(e){let t=[];for(let{head:n}of e.state.selection.ranges)t.some(i=>i.from<=n&&i.to>=n)||t.push(e.lineBlockAt(n));return t}const Ro=Je.define({create(){return Tt.none},update(e,t){t.isUserEvent("delete")&&t.changes.iterChangedRanges((i,s)=>e=aS(e,i,s)),e=e.map(t.changes);let n=[];for(let i of t.effects)i.is(lp)&&!LG(e,i.value.from,i.value.to)?n.push(i.value):i.is($u)&&(e=e.update({filter:(s,r)=>i.value.from!=s||i.value.to!=r,filterFrom:i.value.from,filterTo:i.value.to}));if(n.length){let{preparePlaceholder:i}=t.state.facet(yE),s=n.map(r=>(i?Tt.replace({widget:new IG(i(t.state,r))}):cS).range(r.from,r.to));e=e.update({add:s})}return t.selection&&(e=aS(e,t.selection.main.head)),e},provide:e=>yt.decorations.from(e),toJSON(e,t){let n=[];return e.between(0,t.doc.length,(i,s)=>{n.push(i,s)}),n},fromJSON(e){if(!Array.isArray(e)||e.length%2)throw new RangeError("Invalid JSON for fold state");let t=[];for(let n=0;n<e.length;){let i=e[n++],s=e[n++];if(typeof i!="number"||typeof s!="number")throw new RangeError("Invalid JSON for fold state");t.push(cS.range(i,s))}return Tt.set(t,!0)}});function aS(e,t,n=t){let i=!1;return e.between(t,n,(s,r)=>{s<n&&r>t&&(i=!0)}),i?e.update({filterFrom:t,filterTo:n,filter:(s,r)=>s>=n||r<=t}):e}function vd(e,t,n){var i;let s=null;return(i=e.field(Ro,!1))===null||i===void 0||i.between(t,n,(r,l)=>{(!s||s.from>r)&&(s={from:r,to:l})}),s}function LG(e,t,n){let i=!1;return e.between(t,t,(s,r)=>{s==t&&r==n&&(i=!0)}),i}function mE(e,t){return e.field(Ro,!1)?t:t.concat(_t.appendConfig.of(wE()))}const QG=e=>{for(let t of pE(e)){let n=bd(e.state,t.from,t.to);if(n)return e.dispatch({effects:mE(e.state,[lp.of(n),gE(e,n)])}),!0}return!1},PG=e=>{if(!e.state.field(Ro,!1))return!1;let t=[];for(let n of pE(e)){let i=vd(e.state,n.from,n.to);i&&t.push($u.of(i),gE(e,i,!1))}return t.length&&e.dispatch({effects:t}),t.length>0};function gE(e,t,n=!0){let i=e.state.doc.lineAt(t.from).number,s=e.state.doc.lineAt(t.to).number;return yt.announce.of(`${e.state.phrase(n?"Folded lines":"Unfolded lines")} ${i} ${e.state.phrase("to")} ${s}.`)}const qG=e=>{let{state:t}=e,n=[];for(let i=0;i<t.doc.length;){let s=e.lineBlockAt(i),r=bd(t,s.from,s.to);r&&n.push(lp.of(r)),i=(r?e.lineBlockAt(r.to):s).to+1}return n.length&&e.dispatch({effects:mE(e.state,n)}),!!n.length},WG=e=>{let t=e.state.field(Ro,!1);if(!t||!t.size)return!1;let n=[];return t.between(0,e.state.doc.length,(i,s)=>{n.push($u.of({from:i,to:s}))}),e.dispatch({effects:n}),!0},ZG=[{key:"Ctrl-Shift-[",mac:"Cmd-Alt-[",run:QG},{key:"Ctrl-Shift-]",mac:"Cmd-Alt-]",run:PG},{key:"Ctrl-Alt-[",run:qG},{key:"Ctrl-Alt-]",run:WG}],UG={placeholderDOM:null,preparePlaceholder:null,placeholderText:"…"},yE=wt.define({combine(e){return Xi(e,UG)}});function wE(e){return[Ro,XG]}function $E(e,t){let{state:n}=e,i=n.facet(yE),s=l=>{let c=e.lineBlockAt(e.posAtDOM(l.target)),u=vd(e.state,c.from,c.to);u&&e.dispatch({effects:$u.of(u)}),l.preventDefault()};if(i.placeholderDOM)return i.placeholderDOM(e,s,t);let r=document.createElement("span");return r.textContent=i.placeholderText,r.setAttribute("aria-label",n.phrase("folded code")),r.title=n.phrase("unfold"),r.className="cm-foldPlaceholder",r.onclick=s,r}const cS=Tt.replace({widget:new class extends _s{toDOM(e){return $E(e,null)}}});class IG extends _s{constructor(t){super(),this.value=t}eq(t){return this.value==t.value}toDOM(t){return $E(t,this.value)}}const FG={openText:"⌄",closedText:"›",markerDOM:null,domEventHandlers:{},foldingChanged:()=>!1};class b0 extends js{constructor(t,n){super(),this.config=t,this.open=n}eq(t){return this.config==t.config&&this.open==t.open}toDOM(t){if(this.config.markerDOM)return this.config.markerDOM(this.open);let n=document.createElement("span");return n.textContent=this.open?this.config.openText:this.config.closedText,n.title=t.state.phrase(this.open?"Fold line":"Unfold line"),n}}function VG(e={}){let t={...FG,...e},n=new b0(t,!0),i=new b0(t,!1),s=ke.fromClass(class{constructor(l){this.from=l.viewport.from,this.markers=this.buildMarkers(l)}update(l){(l.docChanged||l.viewportChanged||l.startState.facet(Dr)!=l.state.facet(Dr)||l.startState.field(Ro,!1)!=l.state.field(Ro,!1)||Ke(l.startState)!=Ke(l.state)||t.foldingChanged(l))&&(this.markers=this.buildMarkers(l.view))}buildMarkers(l){let c=new Ts;for(let u of l.viewportLineBlocks){let f=vd(l.state,u.from,u.to)?i:bd(l.state,u.from,u.to)?n:null;f&&c.add(u.from,u.from,f)}return c.finish()}}),{domEventHandlers:r}=t;return[s,WY({class:"cm-foldGutter",markers(l){var c;return((c=l.plugin(s))===null||c===void 0?void 0:c.markers)||Bt.empty},initialSpacer(){return new b0(t,!1)},domEventHandlers:{...r,click:(l,c,u)=>{if(r.click&&r.click(l,c,u))return!0;let f=vd(l.state,c.from,c.to);if(f)return l.dispatch({effects:$u.of(f)}),!0;let p=bd(l.state,c.from,c.to);return p?(l.dispatch({effects:lp.of(p)}),!0):!1}}}),wE()]}const XG=yt.baseTheme({".cm-foldPlaceholder":{backgroundColor:"#eee",border:"1px solid #ddd",color:"#888",borderRadius:".2em",margin:"0 1px",padding:"0 1px",cursor:"pointer"},".cm-foldGutter span":{padding:"0 1px",cursor:"pointer"}});class xu{constructor(t,n){this.specs=t;let i;function s(c){let u=Or.newName();return(i||(i=Object.create(null)))["."+u]=c,u}const r=typeof n.all=="string"?n.all:n.all?s(n.all):void 0,l=n.scope;this.scope=l instanceof oi?c=>c.prop(po)==l.data:l?c=>c==l:void 0,this.style=aE(t.map(c=>({tag:c.tag,class:c.class||s(Object.assign({},c,{tag:null}))})),{all:r}).style,this.module=i?new Or(i):null,this.themeType=n.themeType}static define(t,n){return new xu(t,n||{})}}const Yy=wt.define(),xE=wt.define({combine(e){return e.length?[e[0]]:null}});function v0(e){let t=e.facet(Yy);return t.length?t:e.facet(xE)}function bE(e,t){let n=[JG],i;return e instanceof xu&&(e.module&&n.push(yt.styleModule.of(e.module)),i=e.themeType),t!=null&&t.fallback?n.push(xE.of(e)):i?n.push(Yy.computeN([yt.darkTheme],s=>s.facet(yt.darkTheme)==(i=="dark")?[e]:[])):n.push(Yy.of(e)),n}class KG{constructor(t){this.markCache=Object.create(null),this.tree=Ke(t.state),this.decorations=this.buildDeco(t,v0(t.state)),this.decoratedTo=t.viewport.to}update(t){let n=Ke(t.state),i=v0(t.state),s=i!=v0(t.startState),{viewport:r}=t.view,l=t.changes.mapPos(this.decoratedTo,1);n.length<r.to&&!s&&n.type==this.tree.type&&l>=r.to?(this.decorations=this.decorations.map(t.changes),this.decoratedTo=l):(n!=this.tree||t.viewportChanged||s)&&(this.tree=n,this.decorations=this.buildDeco(t.view,i),this.decoratedTo=r.to)}buildDeco(t,n){if(!n||!this.tree.length)return Tt.none;let i=new Ts;for(let{from:s,to:r}of t.visibleRanges)bG(this.tree,n,(l,c,u)=>{i.add(l,c,this.markCache[u]||(this.markCache[u]=Tt.mark({class:u})))},s,r);return i.finish()}}const JG=Nr.high(ke.fromClass(KG,{decorations:e=>e.decorations})),tL=xu.define([{tag:V.meta,color:"#404740"},{tag:V.link,textDecoration:"underline"},{tag:V.heading,textDecoration:"underline",fontWeight:"bold"},{tag:V.emphasis,fontStyle:"italic"},{tag:V.strong,fontWeight:"bold"},{tag:V.strikethrough,textDecoration:"line-through"},{tag:V.keyword,color:"#708"},{tag:[V.atom,V.bool,V.url,V.contentSeparator,V.labelName],color:"#219"},{tag:[V.literal,V.inserted],color:"#164"},{tag:[V.string,V.deleted],color:"#a11"},{tag:[V.regexp,V.escape,V.special(V.string)],color:"#e40"},{tag:V.definition(V.variableName),color:"#00f"},{tag:V.local(V.variableName),color:"#30a"},{tag:[V.typeName,V.namespace],color:"#085"},{tag:V.className,color:"#167"},{tag:[V.special(V.variableName),V.macroName],color:"#256"},{tag:V.definition(V.propertyName),color:"#00c"},{tag:V.comment,color:"#940"},{tag:V.invalid,color:"#f00"}]),eL=yt.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),vE=1e4,SE="()[]{}",OE=wt.define({combine(e){return Xi(e,{afterCursor:!0,brackets:SE,maxScanDistance:vE,renderMatch:sL})}}),nL=Tt.mark({class:"cm-matchingBracket"}),iL=Tt.mark({class:"cm-nonmatchingBracket"});function sL(e){let t=[],n=e.matched?nL:iL;return t.push(n.range(e.start.from,e.start.to)),e.end&&t.push(n.range(e.end.from,e.end.to)),t}function uS(e){let t=[],n=e.facet(OE);for(let i of e.selection.ranges){if(!i.empty)continue;let s=Qi(e,i.head,-1,n)||i.head>0&&Qi(e,i.head-1,1,n)||n.afterCursor&&(Qi(e,i.head,1,n)||i.head<e.doc.length&&Qi(e,i.head+1,-1,n));s&&(t=t.concat(n.renderMatch(s,e)))}return Tt.set(t,!0)}const rL=ke.fromClass(class{constructor(e){this.paused=!1,this.decorations=uS(e.state)}update(e){(e.docChanged||e.selectionSet||this.paused)&&(e.view.composing?(this.decorations=this.decorations.map(e.changes),this.paused=!0):(this.decorations=uS(e.state),this.paused=!1))}},{decorations:e=>e.decorations}),oL=[rL,eL];function lL(e={}){return[OE.of(e),oL]}const aL=new At;function Gy(e,t,n){let i=e.prop(t<0?At.openedBy:At.closedBy);if(i)return i;if(e.name.length==1){let s=n.indexOf(e.name);if(s>-1&&s%2==(t<0?1:0))return[n[s+t]]}return null}function Ly(e){let t=e.type.prop(aL);return t?t(e.node):e}function Qi(e,t,n,i={}){let s=i.maxScanDistance||vE,r=i.brackets||SE,l=Ke(e),c=l.resolveInner(t,n);for(let u=c;u;u=u.parent){let f=Gy(u.type,n,r);if(f&&u.from<u.to){let p=Ly(u);if(p&&(n>0?t>=p.from&&t<p.to:t>p.from&&t<=p.to))return cL(e,t,n,u,p,f,r)}}return uL(e,t,n,l,c.type,s,r)}function cL(e,t,n,i,s,r,l){let c=i.parent,u={from:s.from,to:s.to},f=0,p=c==null?void 0:c.cursor();if(p&&(n<0?p.childBefore(i.from):p.childAfter(i.to)))do if(n<0?p.to<=i.from:p.from>=i.to){if(f==0&&r.indexOf(p.type.name)>-1&&p.from<p.to){let m=Ly(p);return{start:u,end:m?{from:m.from,to:m.to}:void 0,matched:!0}}else if(Gy(p.type,n,l))f++;else if(Gy(p.type,-n,l)){if(f==0){let m=Ly(p);return{start:u,end:m&&m.from<m.to?{from:m.from,to:m.to}:void 0,matched:!1}}f--}}while(n<0?p.prevSibling():p.nextSibling());return{start:u,matched:!1}}function uL(e,t,n,i,s,r,l){if(n<0?!t:t==e.doc.length)return null;let c=n<0?e.sliceDoc(t-1,t):e.sliceDoc(t,t+1),u=l.indexOf(c);if(u<0||u%2==0!=n>0)return null;let f={from:n<0?t-1:t,to:n>0?t+1:t},p=e.doc.iterRange(t,n>0?e.doc.length:0),m=0;for(let g=0;!p.next().done&&g<=r;){let y=p.value;n<0&&(g+=y.length);let $=t+g*n;for(let b=n>0?0:y.length-1,S=n>0?y.length:-1;b!=S;b+=n){let O=l.indexOf(y[b]);if(!(O<0||i.resolveInner($+b,1).type!=s))if(O%2==0==n>0)m++;else{if(m==1)return{start:f,end:{from:$+b,to:$+b+1},matched:O>>1==u>>1};m--}}n>0&&(g+=y.length)}return p.done?{start:f,matched:!1}:null}function hS(e,t,n,i=0,s=0){t==null&&(t=e.search(/[^\s\u00a0]/),t==-1&&(t=e.length));let r=s;for(let l=i;l<t;l++)e.charCodeAt(l)==9?r+=n-r%n:r++;return r}class kE{constructor(t,n,i,s){this.string=t,this.tabSize=n,this.indentUnit=i,this.overrideIndent=s,this.pos=0,this.start=0,this.lastColumnPos=0,this.lastColumnValue=0}eol(){return this.pos>=this.string.length}sol(){return this.pos==0}peek(){return this.string.charAt(this.pos)||void 0}next(){if(this.pos<this.string.length)return this.string.charAt(this.pos++)}eat(t){let n=this.string.charAt(this.pos),i;if(typeof t=="string"?i=n==t:i=n&&(t instanceof RegExp?t.test(n):t(n)),i)return++this.pos,n}eatWhile(t){let n=this.pos;for(;this.eat(t););return this.pos>n}eatSpace(){let t=this.pos;for(;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>t}skipToEnd(){this.pos=this.string.length}skipTo(t){let n=this.string.indexOf(t,this.pos);if(n>-1)return this.pos=n,!0}backUp(t){this.pos-=t}column(){return this.lastColumnPos<this.start&&(this.lastColumnValue=hS(this.string,this.start,this.tabSize,this.lastColumnPos,this.lastColumnValue),this.lastColumnPos=this.start),this.lastColumnValue}indentation(){var t;return(t=this.overrideIndent)!==null&&t!==void 0?t:hS(this.string,null,this.tabSize)}match(t,n,i){if(typeof t=="string"){let s=l=>i?l.toLowerCase():l,r=this.string.substr(this.pos,t.length);return s(r)==s(t)?(n!==!1&&(this.pos+=t.length),!0):null}else{let s=this.string.slice(this.pos).match(t);return s&&s.index>0?null:(s&&n!==!1&&(this.pos+=s[0].length),s)}}current(){return this.string.slice(this.start,this.pos)}}function hL(e){return{name:e.name||"",token:e.token,blankLine:e.blankLine||(()=>{}),startState:e.startState||(()=>!0),copyState:e.copyState||fL,indent:e.indent||(()=>null),languageData:e.languageData||{},tokenTable:e.tokenTable||Uw,mergeTokens:e.mergeTokens!==!1}}function fL(e){if(typeof e!="object")return e;let t={};for(let n in e){let i=e[n];t[n]=i instanceof Array?i.slice():i}return t}const fS=new WeakMap;class Ww extends oi{constructor(t){let n=cE(t.languageData),i=hL(t),s,r=new class extends Lw{createParse(l,c,u){return new pL(s,l,c,u)}};super(n,r,[],t.name),this.topNode=yL(n,this),s=this,this.streamParser=i,this.stateAfter=new At({perNode:!0}),this.tokenTable=t.tokenTable?new TE(i.tokenTable):gL}static define(t){return new Ww(t)}getIndent(t){let n,{overrideIndentation:i}=t.options;i&&(n=fS.get(t.state),n!=null&&n<t.pos-1e4&&(n=void 0));let s=Zw(this,t.node.tree,t.node.from,t.node.from,n??t.pos),r,l;if(s?(l=s.state,r=s.pos+1):(l=this.streamParser.startState(t.unit),r=t.node.from),t.pos-r>1e4)return null;for(;r<t.pos;){let u=t.state.doc.lineAt(r),f=Math.min(t.pos,u.to);if(u.length){let p=i?i(u.from):-1,m=new kE(u.text,t.state.tabSize,t.unit,p<0?void 0:p);for(;m.pos<f-u.from;)EE(this.streamParser.token,m,l)}else this.streamParser.blankLine(l,t.unit);if(f==t.pos)break;r=u.to+1}let c=t.lineAt(t.pos);return i&&n==null&&fS.set(t.state,c.from),this.streamParser.indent(l,/^\s*(.*)/.exec(c.text)[1],t)}get allowsNesting(){return!1}}function Zw(e,t,n,i,s){let r=n>=i&&n+t.length<=s&&t.prop(e.stateAfter);if(r)return{state:e.streamParser.copyState(r),pos:n+t.length};for(let l=t.children.length-1;l>=0;l--){let c=t.children[l],u=n+t.positions[l],f=c instanceof Vt&&u<s&&Zw(e,c,u,i,s);if(f)return f}return null}function CE(e,t,n,i,s){if(s&&n<=0&&i>=t.length)return t;!s&&n==0&&t.type==e.topNode&&(s=!0);for(let r=t.children.length-1;r>=0;r--){let l=t.positions[r],c=t.children[r],u;if(l<i&&c instanceof Vt){if(!(u=CE(e,c,n-l,i-l,s)))break;return s?new Vt(t.type,t.children.slice(0,r).concat(u),t.positions.slice(0,r+1),l+u.length):u}}return null}function dL(e,t,n,i,s){for(let r of t){let l=r.from+(r.openStart?25:0),c=r.to-(r.openEnd?25:0),u=l<=n&&c>n&&Zw(e,r.tree,0-r.offset,n,c),f;if(u&&u.pos<=i&&(f=CE(e,r.tree,n+r.offset,u.pos+r.offset,!1)))return{state:u.state,tree:f}}return{state:e.streamParser.startState(s?jo(s):4),tree:Vt.empty}}let pL=class{constructor(t,n,i,s){this.lang=t,this.input=n,this.fragments=i,this.ranges=s,this.stoppedAt=null,this.chunks=[],this.chunkPos=[],this.chunk=[],this.chunkReused=void 0,this.rangeIndex=0,this.to=s[s.length-1].to;let r=la.get(),l=s[0].from,{state:c,tree:u}=dL(t,i,l,this.to,r==null?void 0:r.state);this.state=c,this.parsedPos=this.chunkStart=l+u.length;for(let f=0;f<u.children.length;f++)this.chunks.push(u.children[f]),this.chunkPos.push(u.positions[f]);r&&this.parsedPos<r.viewport.from-1e5&&s.some(f=>f.from<=r.viewport.from&&f.to>=r.viewport.from)&&(this.state=this.lang.streamParser.startState(jo(r.state)),r.skipUntilInView(this.parsedPos,r.viewport.from),this.parsedPos=r.viewport.from),this.moveRangeIndex()}advance(){let t=la.get(),n=this.stoppedAt==null?this.to:Math.min(this.to,this.stoppedAt),i=Math.min(n,this.chunkStart+512);for(t&&(i=Math.min(i,t.viewport.to));this.parsedPos<i;)this.parseLine(t);return this.chunkStart<this.parsedPos&&this.finishChunk(),this.parsedPos>=n?this.finish():t&&this.parsedPos>=t.viewport.to?(t.skipUntilInView(this.parsedPos,n),this.finish()):null}stopAt(t){this.stoppedAt=t}lineAfter(t){let n=this.input.chunk(t);if(this.input.lineChunks)n==`
269
+ `&&(n="");else{let i=n.indexOf(`
270
+ `);i>-1&&(n=n.slice(0,i))}return t+n.length<=this.to?n:n.slice(0,this.to-t)}nextLine(){let t=this.parsedPos,n=this.lineAfter(t),i=t+n.length;for(let s=this.rangeIndex;;){let r=this.ranges[s].to;if(r>=i||(n=n.slice(0,r-(i-n.length)),s++,s==this.ranges.length))break;let l=this.ranges[s].from,c=this.lineAfter(l);n+=c,i=l+c.length}return{line:n,end:i}}skipGapsTo(t,n,i){for(;;){let s=this.ranges[this.rangeIndex].to,r=t+n;if(i>0?s>r:s>=r)break;let l=this.ranges[++this.rangeIndex].from;n+=l-s}return n}moveRangeIndex(){for(;this.ranges[this.rangeIndex].to<this.parsedPos;)this.rangeIndex++}emitToken(t,n,i,s){let r=4;if(this.ranges.length>1){s=this.skipGapsTo(n,s,1),n+=s;let c=this.chunk.length;s=this.skipGapsTo(i,s,-1),i+=s,r+=this.chunk.length-c}let l=this.chunk.length-4;return this.lang.streamParser.mergeTokens&&r==4&&l>=0&&this.chunk[l]==t&&this.chunk[l+2]==n?this.chunk[l+2]=i:this.chunk.push(t,n,i,r),s}parseLine(t){let{line:n,end:i}=this.nextLine(),s=0,{streamParser:r}=this.lang,l=new kE(n,t?t.state.tabSize:4,t?jo(t.state):2);if(l.eol())r.blankLine(this.state,l.indentUnit);else for(;!l.eol();){let c=EE(r.token,l,this.state);if(c&&(s=this.emitToken(this.lang.tokenTable.resolve(c),this.parsedPos+l.start,this.parsedPos+l.pos,s)),l.start>1e4)break}this.parsedPos=i,this.moveRangeIndex(),this.parsedPos<this.to&&this.parsedPos++}finishChunk(){let t=Vt.build({buffer:this.chunk,start:this.chunkStart,length:this.parsedPos-this.chunkStart,nodeSet:mL,topID:0,maxBufferLength:512,reused:this.chunkReused});t=new Vt(t.type,t.children,t.positions,t.length,[[this.lang.stateAfter,this.lang.streamParser.copyState(this.state)]]),this.chunks.push(t),this.chunkPos.push(this.chunkStart-this.ranges[0].from),this.chunk=[],this.chunkReused=void 0,this.chunkStart=this.parsedPos}finish(){return new Vt(this.lang.topNode,this.chunks,this.chunkPos,this.parsedPos-this.ranges[0].from).balance()}};function EE(e,t,n){t.start=t.pos;for(let i=0;i<10;i++){let s=e(t,n);if(t.pos>t.start)return s}throw new Error("Stream parser failed to advance stream.")}const Uw=Object.create(null),nu=[Xe.none],mL=new rp(nu),dS=[],pS=Object.create(null),DE=Object.create(null);for(let[e,t]of[["variable","variableName"],["variable-2","variableName.special"],["string-2","string.special"],["def","variableName.definition"],["tag","tagName"],["attribute","attributeName"],["type","typeName"],["builtin","variableName.standard"],["qualifier","modifier"],["error","invalid"],["header","heading"],["property","propertyName"]])DE[e]=NE(Uw,t);class TE{constructor(t){this.extra=t,this.table=Object.assign(Object.create(null),DE)}resolve(t){return t?this.table[t]||(this.table[t]=NE(this.extra,t)):0}}const gL=new TE(Uw);function S0(e,t){dS.indexOf(e)>-1||(dS.push(e),console.warn(t))}function NE(e,t){let n=[];for(let c of t.split(" ")){let u=[];for(let f of c.split(".")){let p=e[f]||V[f];p?typeof p=="function"?u.length?u=u.map(p):S0(f,`Modifier ${f} used at start of tag`):u.length?S0(f,`Tag ${f} used as modifier`):u=Array.isArray(p)?p:[p]:S0(f,`Unknown highlighting tag ${f}`)}for(let f of u)n.push(f)}if(!n.length)return 0;let i=t.replace(/ /g,"_"),s=i+" "+n.map(c=>c.id),r=pS[s];if(r)return r.id;let l=pS[s]=Xe.define({id:nu.length,name:i,props:[jr({[i]:n})]});return nu.push(l),l.id}function yL(e,t){let n=Xe.define({id:nu.length,name:"Document",props:[po.add(()=>e),hE.add(()=>i=>t.getIndent(i))],top:!0});return nu.push(n),n}oe.RTL,oe.LTR;const wL=e=>{let{state:t}=e,n=t.doc.lineAt(t.selection.main.from),i=Fw(e.state,n.from);return i.line?$L(e):i.block?bL(e):!1};function Iw(e,t){return({state:n,dispatch:i})=>{if(n.readOnly)return!1;let s=e(t,n);return s?(i(n.update(s)),!0):!1}}const $L=Iw(OL,0),xL=Iw(jE,0),bL=Iw((e,t)=>jE(e,t,SL(t)),0);function Fw(e,t){let n=e.languageDataAt("commentTokens",t,1);return n.length?n[0]:{}}const bc=50;function vL(e,{open:t,close:n},i,s){let r=e.sliceDoc(i-bc,i),l=e.sliceDoc(s,s+bc),c=/\s*$/.exec(r)[0].length,u=/^\s*/.exec(l)[0].length,f=r.length-c;if(r.slice(f-t.length,f)==t&&l.slice(u,u+n.length)==n)return{open:{pos:i-c,margin:c&&1},close:{pos:s+u,margin:u&&1}};let p,m;s-i<=2*bc?p=m=e.sliceDoc(i,s):(p=e.sliceDoc(i,i+bc),m=e.sliceDoc(s-bc,s));let g=/^\s*/.exec(p)[0].length,y=/\s*$/.exec(m)[0].length,$=m.length-y-n.length;return p.slice(g,g+t.length)==t&&m.slice($,$+n.length)==n?{open:{pos:i+g+t.length,margin:/\s/.test(p.charAt(g+t.length))?1:0},close:{pos:s-y-n.length,margin:/\s/.test(m.charAt($-1))?1:0}}:null}function SL(e){let t=[];for(let n of e.selection.ranges){let i=e.doc.lineAt(n.from),s=n.to<=i.to?i:e.doc.lineAt(n.to);s.from>i.from&&s.from==n.to&&(s=n.to==i.to+1?i:e.doc.lineAt(n.to-1));let r=t.length-1;r>=0&&t[r].to>i.from?t[r].to=s.to:t.push({from:i.from+/^\s*/.exec(i.text)[0].length,to:s.to})}return t}function jE(e,t,n=t.selection.ranges){let i=n.map(r=>Fw(t,r.from).block);if(!i.every(r=>r))return null;let s=n.map((r,l)=>vL(t,i[l],r.from,r.to));if(e!=2&&!s.every(r=>r))return{changes:t.changes(n.map((r,l)=>s[l]?[]:[{from:r.from,insert:i[l].open+" "},{from:r.to,insert:" "+i[l].close}]))};if(e!=1&&s.some(r=>r)){let r=[];for(let l=0,c;l<s.length;l++)if(c=s[l]){let u=i[l],{open:f,close:p}=c;r.push({from:f.pos-u.open.length,to:f.pos+f.margin},{from:p.pos-p.margin,to:p.pos+u.close.length})}return{changes:r}}return null}function OL(e,t,n=t.selection.ranges){let i=[],s=-1;t:for(let{from:r,to:l}of n){let c=i.length,u=1e9,f;for(let p=r;p<=l;){let m=t.doc.lineAt(p);if(f==null&&(f=Fw(t,m.from).line,!f))continue t;if(m.from>s&&(r==l||l>m.from)){s=m.from;let g=/^\s*/.exec(m.text)[0].length,y=g==m.length,$=m.text.slice(g,g+f.length)==f?g:-1;g<m.text.length&&g<u&&(u=g),i.push({line:m,comment:$,token:f,indent:g,empty:y,single:!1})}p=m.to+1}if(u<1e9)for(let p=c;p<i.length;p++)i[p].indent<i[p].line.text.length&&(i[p].indent=u);i.length==c+1&&(i[c].single=!0)}if(e!=2&&i.some(r=>r.comment<0&&(!r.empty||r.single))){let r=[];for(let{line:c,token:u,indent:f,empty:p,single:m}of i)(m||!p)&&r.push({from:c.from+f,insert:u+" "});let l=t.changes(r);return{changes:l,selection:t.selection.map(l,1)}}else if(e!=1&&i.some(r=>r.comment>=0)){let r=[];for(let{line:l,comment:c,token:u}of i)if(c>=0){let f=l.from+c,p=f+u.length;l.text[p-l.from]==" "&&p++,r.push({from:f,to:p})}return{changes:r}}return null}const Qy=Rs.define(),kL=Rs.define(),CL=wt.define(),RE=wt.define({combine(e){return Xi(e,{minDepth:100,newGroupDelay:500,joinToEvent:(t,n)=>n},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(t,n)=>(i,s)=>t(i,s)||n(i,s)})}}),_E=Je.define({create(){return Pi.empty},update(e,t){let n=t.state.facet(RE),i=t.annotation(Qy);if(i){let u=Cn.fromTransaction(t,i.selection),f=i.side,p=f==0?e.undone:e.done;return u?p=Sd(p,p.length,n.minDepth,u):p=HE(p,t.startState.selection),new Pi(f==0?i.rest:p,f==0?p:i.rest)}let s=t.annotation(kL);if((s=="full"||s=="before")&&(e=e.isolate()),t.annotation(ze.addToHistory)===!1)return t.changes.empty?e:e.addMapping(t.changes.desc);let r=Cn.fromTransaction(t),l=t.annotation(ze.time),c=t.annotation(ze.userEvent);return r?e=e.addChanges(r,l,c,n,t):t.selection&&(e=e.addSelection(t.startState.selection,l,c,n.newGroupDelay)),(s=="full"||s=="after")&&(e=e.isolate()),e},toJSON(e){return{done:e.done.map(t=>t.toJSON()),undone:e.undone.map(t=>t.toJSON())}},fromJSON(e){return new Pi(e.done.map(Cn.fromJSON),e.undone.map(Cn.fromJSON))}});function EL(e={}){return[_E,RE.of(e),yt.domEventHandlers({beforeinput(t,n){let i=t.inputType=="historyUndo"?ME:t.inputType=="historyRedo"?Py:null;return i?(t.preventDefault(),i(n)):!1}})]}function ap(e,t){return function({state:n,dispatch:i}){if(!t&&n.readOnly)return!1;let s=n.field(_E,!1);if(!s)return!1;let r=s.pop(e,n,t);return r?(i(r),!0):!1}}const ME=ap(0,!1),Py=ap(1,!1),DL=ap(0,!0),TL=ap(1,!0);class Cn{constructor(t,n,i,s,r){this.changes=t,this.effects=n,this.mapped=i,this.startSelection=s,this.selectionsAfter=r}setSelAfter(t){return new Cn(this.changes,this.effects,this.mapped,this.startSelection,t)}toJSON(){var t,n,i;return{changes:(t=this.changes)===null||t===void 0?void 0:t.toJSON(),mapped:(n=this.mapped)===null||n===void 0?void 0:n.toJSON(),startSelection:(i=this.startSelection)===null||i===void 0?void 0:i.toJSON(),selectionsAfter:this.selectionsAfter.map(s=>s.toJSON())}}static fromJSON(t){return new Cn(t.changes&&He.fromJSON(t.changes),[],t.mapped&&Zi.fromJSON(t.mapped),t.startSelection&&lt.fromJSON(t.startSelection),t.selectionsAfter.map(lt.fromJSON))}static fromTransaction(t,n){let i=li;for(let s of t.startState.facet(CL)){let r=s(t);r.length&&(i=i.concat(r))}return!i.length&&t.changes.empty?null:new Cn(t.changes.invert(t.startState.doc),i,void 0,n||t.startState.selection,li)}static selection(t){return new Cn(void 0,li,void 0,void 0,t)}}function Sd(e,t,n,i){let s=t+1>n+20?t-n-1:0,r=e.slice(s,t);return r.push(i),r}function NL(e,t){let n=[],i=!1;return e.iterChangedRanges((s,r)=>n.push(s,r)),t.iterChangedRanges((s,r,l,c)=>{for(let u=0;u<n.length;){let f=n[u++],p=n[u++];c>=f&&l<=p&&(i=!0)}}),i}function jL(e,t){return e.ranges.length==t.ranges.length&&e.ranges.filter((n,i)=>n.empty!=t.ranges[i].empty).length===0}function AE(e,t){return e.length?t.length?e.concat(t):e:t}const li=[],RL=200;function HE(e,t){if(e.length){let n=e[e.length-1],i=n.selectionsAfter.slice(Math.max(0,n.selectionsAfter.length-RL));return i.length&&i[i.length-1].eq(t)?e:(i.push(t),Sd(e,e.length-1,1e9,n.setSelAfter(i)))}else return[Cn.selection([t])]}function _L(e){let t=e[e.length-1],n=e.slice();return n[e.length-1]=t.setSelAfter(t.selectionsAfter.slice(0,t.selectionsAfter.length-1)),n}function O0(e,t){if(!e.length)return e;let n=e.length,i=li;for(;n;){let s=ML(e[n-1],t,i);if(s.changes&&!s.changes.empty||s.effects.length){let r=e.slice(0,n);return r[n-1]=s,r}else t=s.mapped,n--,i=s.selectionsAfter}return i.length?[Cn.selection(i)]:li}function ML(e,t,n){let i=AE(e.selectionsAfter.length?e.selectionsAfter.map(c=>c.map(t)):li,n);if(!e.changes)return Cn.selection(i);let s=e.changes.map(t),r=t.mapDesc(e.changes,!0),l=e.mapped?e.mapped.composeDesc(r):r;return new Cn(s,_t.mapEffects(e.effects,t),l,e.startSelection.map(r),i)}const AL=/^(input\.type|delete)($|\.)/;class Pi{constructor(t,n,i=0,s=void 0){this.done=t,this.undone=n,this.prevTime=i,this.prevUserEvent=s}isolate(){return this.prevTime?new Pi(this.done,this.undone):this}addChanges(t,n,i,s,r){let l=this.done,c=l[l.length-1];return c&&c.changes&&!c.changes.empty&&t.changes&&(!i||AL.test(i))&&(!c.selectionsAfter.length&&n-this.prevTime<s.newGroupDelay&&s.joinToEvent(r,NL(c.changes,t.changes))||i=="input.type.compose")?l=Sd(l,l.length-1,s.minDepth,new Cn(t.changes.compose(c.changes),AE(_t.mapEffects(t.effects,c.changes),c.effects),c.mapped,c.startSelection,li)):l=Sd(l,l.length,s.minDepth,t),new Pi(l,li,n,i)}addSelection(t,n,i,s){let r=this.done.length?this.done[this.done.length-1].selectionsAfter:li;return r.length>0&&n-this.prevTime<s&&i==this.prevUserEvent&&i&&/^select($|\.)/.test(i)&&jL(r[r.length-1],t)?this:new Pi(HE(this.done,t),this.undone,n,i)}addMapping(t){return new Pi(O0(this.done,t),O0(this.undone,t),this.prevTime,this.prevUserEvent)}pop(t,n,i){let s=t==0?this.done:this.undone;if(s.length==0)return null;let r=s[s.length-1],l=r.selectionsAfter[0]||(r.startSelection?r.startSelection.map(r.changes.invertedDesc,1):n.selection);if(i&&r.selectionsAfter.length)return n.update({selection:r.selectionsAfter[r.selectionsAfter.length-1],annotations:Qy.of({side:t,rest:_L(s),selection:l}),userEvent:t==0?"select.undo":"select.redo",scrollIntoView:!0});if(r.changes){let c=s.length==1?li:s.slice(0,s.length-1);return r.mapped&&(c=O0(c,r.mapped)),n.update({changes:r.changes,selection:r.startSelection,effects:r.effects,annotations:Qy.of({side:t,rest:c,selection:l}),filter:!1,userEvent:t==0?"undo":"redo",scrollIntoView:!0})}else return null}}Pi.empty=new Pi(li,li);const HL=[{key:"Mod-z",run:ME,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:Py,preventDefault:!0},{linux:"Ctrl-Shift-z",run:Py,preventDefault:!0},{key:"Mod-u",run:DL,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:TL,preventDefault:!0}];function da(e,t){return lt.create(e.ranges.map(t),e.mainIndex)}function ki(e,t){return e.update({selection:t,scrollIntoView:!0,userEvent:"select"})}function Ci({state:e,dispatch:t},n){let i=da(e.selection,n);return i.eq(e.selection,!0)?!1:(t(ki(e,i)),!0)}function cp(e,t){return lt.cursor(t?e.to:e.from)}function zE(e,t){return Ci(e,n=>n.empty?e.moveByChar(n,t):cp(n,t))}function tn(e){return e.textDirectionAt(e.state.selection.main.head)==oe.LTR}const BE=e=>zE(e,!tn(e)),YE=e=>zE(e,tn(e));function GE(e,t){return Ci(e,n=>n.empty?e.moveByGroup(n,t):cp(n,t))}const zL=e=>GE(e,!tn(e)),BL=e=>GE(e,tn(e));function YL(e,t,n){if(t.type.prop(n))return!0;let i=t.to-t.from;return i&&(i>2||/[^\s,.;:]/.test(e.sliceDoc(t.from,t.to)))||t.firstChild}function up(e,t,n){let i=Ke(e).resolveInner(t.head),s=n?At.closedBy:At.openedBy;for(let u=t.head;;){let f=n?i.childAfter(u):i.childBefore(u);if(!f)break;YL(e,f,s)?i=f:u=n?f.to:f.from}let r=i.type.prop(s),l,c;return r&&(l=n?Qi(e,i.from,1):Qi(e,i.to,-1))&&l.matched?c=n?l.end.to:l.end.from:c=n?i.to:i.from,lt.cursor(c,n?-1:1)}const GL=e=>Ci(e,t=>up(e.state,t,!tn(e))),LL=e=>Ci(e,t=>up(e.state,t,tn(e)));function LE(e,t){return Ci(e,n=>{if(!n.empty)return cp(n,t);let i=e.moveVertically(n,t);return i.head!=n.head?i:e.moveToLineBoundary(n,t)})}const QE=e=>LE(e,!1),PE=e=>LE(e,!0);function qE(e){let t=e.scrollDOM.clientHeight<e.scrollDOM.scrollHeight-2,n=0,i=0,s;if(t){for(let r of e.state.facet(yt.scrollMargins)){let l=r(e);l!=null&&l.top&&(n=Math.max(l==null?void 0:l.top,n)),l!=null&&l.bottom&&(i=Math.max(l==null?void 0:l.bottom,i))}s=e.scrollDOM.clientHeight-n-i}else s=(e.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:n,marginBottom:i,selfScroll:t,height:Math.max(e.defaultLineHeight,s-5)}}function WE(e,t){let n=qE(e),{state:i}=e,s=da(i.selection,l=>l.empty?e.moveVertically(l,t,n.height):cp(l,t));if(s.eq(i.selection))return!1;let r;if(n.selfScroll){let l=e.coordsAtPos(i.selection.main.head),c=e.scrollDOM.getBoundingClientRect(),u=c.top+n.marginTop,f=c.bottom-n.marginBottom;l&&l.top>u&&l.bottom<f&&(r=yt.scrollIntoView(s.main.head,{y:"start",yMargin:l.top-u}))}return e.dispatch(ki(i,s),{effects:r}),!0}const mS=e=>WE(e,!1),qy=e=>WE(e,!0);function _r(e,t,n){let i=e.lineBlockAt(t.head),s=e.moveToLineBoundary(t,n);if(s.head==t.head&&s.head!=(n?i.to:i.from)&&(s=e.moveToLineBoundary(t,n,!1)),!n&&s.head==i.from&&i.length){let r=/^\s*/.exec(e.state.sliceDoc(i.from,Math.min(i.from+100,i.to)))[0].length;r&&t.head!=i.from+r&&(s=lt.cursor(i.from+r))}return s}const QL=e=>Ci(e,t=>_r(e,t,!0)),PL=e=>Ci(e,t=>_r(e,t,!1)),qL=e=>Ci(e,t=>_r(e,t,!tn(e))),WL=e=>Ci(e,t=>_r(e,t,tn(e))),ZL=e=>Ci(e,t=>lt.cursor(e.lineBlockAt(t.head).from,1)),UL=e=>Ci(e,t=>lt.cursor(e.lineBlockAt(t.head).to,-1));function IL(e,t,n){let i=!1,s=da(e.selection,r=>{let l=Qi(e,r.head,-1)||Qi(e,r.head,1)||r.head>0&&Qi(e,r.head-1,1)||r.head<e.doc.length&&Qi(e,r.head+1,-1);if(!l||!l.end)return r;i=!0;let c=l.start.from==r.head?l.end.to:l.end.from;return lt.cursor(c)});return i?(t(ki(e,s)),!0):!1}const FL=({state:e,dispatch:t})=>IL(e,t);function ci(e,t,n){let i=da(e.state.selection,s=>{s.undirectional&&s.head>=s.anchor!=t&&(s=lt.range(s.head,s.anchor));let r=n(s);return lt.range(s.anchor,r.head,r.goalColumn,r.bidiLevel||void 0,r.assoc)});return i.eq(e.state.selection)?!1:(e.dispatch(ki(e.state,i)),!0)}function ZE(e,t){return ci(e,t,n=>e.moveByChar(n,t))}const UE=e=>ZE(e,!tn(e)),IE=e=>ZE(e,tn(e));function FE(e,t){return ci(e,t,n=>e.moveByGroup(n,t))}const VL=e=>FE(e,!tn(e)),XL=e=>FE(e,tn(e)),KL=e=>{let t=!tn(e);return ci(e,t,n=>up(e.state,n,t))},JL=e=>{let t=tn(e);return ci(e,t,n=>up(e.state,n,t))};function VE(e,t){return ci(e,t,n=>e.moveVertically(n,t))}const XE=e=>VE(e,!1),KE=e=>VE(e,!0);function JE(e,t){return ci(e,t,n=>e.moveVertically(n,t,qE(e).height))}const gS=e=>JE(e,!1),yS=e=>JE(e,!0),tQ=e=>ci(e,!0,t=>_r(e,t,!0)),eQ=e=>ci(e,!1,t=>_r(e,t,!1)),nQ=e=>{let t=!tn(e);return ci(e,t,n=>_r(e,n,t))},iQ=e=>{let t=tn(e);return ci(e,t,n=>_r(e,n,t))},sQ=e=>ci(e,!1,t=>lt.cursor(e.lineBlockAt(t.head).from)),rQ=e=>ci(e,!0,t=>lt.cursor(e.lineBlockAt(t.head).to)),wS=({state:e,dispatch:t})=>(t(ki(e,{anchor:0})),!0),$S=({state:e,dispatch:t})=>(t(ki(e,{anchor:e.doc.length})),!0),xS=({state:e,dispatch:t})=>(t(ki(e,{anchor:e.selection.main.anchor,head:0})),!0),bS=({state:e,dispatch:t})=>(t(ki(e,{anchor:e.selection.main.anchor,head:e.doc.length})),!0),oQ=({state:e,dispatch:t})=>(t(e.update({selection:{anchor:0,head:e.doc.length},userEvent:"select"})),!0),lQ=({state:e,dispatch:t})=>{let n=hp(e).map(({from:i,to:s})=>lt.range(i,Math.min(s+1,e.doc.length)));return t(e.update({selection:lt.create(n),userEvent:"select"})),!0},aQ=({state:e,dispatch:t})=>{let n=da(e.selection,i=>{let s=Ke(e),r=s.resolveStack(i.from,1);if(i.empty){let l=s.resolveStack(i.from,-1);l.node.from>=r.node.from&&l.node.to<=r.node.to&&(r=l)}for(let l=r;l;l=l.next){let{node:c}=l;if((c.from<i.from&&c.to>=i.to||c.to>i.to&&c.from<=i.from)&&l.next)return lt.range(c.to,c.from)}return i});return n.eq(e.selection)?!1:(t(ki(e,n)),!0)};function t3(e,t){let{state:n}=e,i=n.selection,s=n.selection.ranges.slice();for(let r of n.selection.ranges){let l=n.doc.lineAt(r.head);if(t?l.to<e.state.doc.length:l.from>0)for(let c=r;;){let u=e.moveVertically(c,t);if(u.head<l.from||u.head>l.to){s.some(f=>f.head==u.head)||s.push(u);break}else{if(u.head==c.head)break;c=u}}}return s.length==i.ranges.length?!1:(e.dispatch(ki(n,lt.create(s,s.length-1))),!0)}const cQ=e=>t3(e,!1),uQ=e=>t3(e,!0),hQ=({state:e,dispatch:t})=>{let n=e.selection,i=null;return n.ranges.length>1?i=lt.create([n.main]):n.main.empty||(i=lt.create([lt.cursor(n.main.head)])),i?(t(ki(e,i)),!0):!1};function bu(e,t){if(e.state.readOnly)return!1;let n="delete.selection",{state:i}=e,s=i.changeByRange(r=>{let{from:l,to:c}=r;if(l==c){let u=t(r);u<l?(n="delete.backward",u=xf(e,u,!1)):u>l&&(n="delete.forward",u=xf(e,u,!0)),l=Math.min(l,u),c=Math.max(c,u)}else l=xf(e,l,!1),c=xf(e,c,!0);return l==c?{range:r}:{changes:{from:l,to:c},range:lt.cursor(l,l<r.head?-1:1)}});return s.changes.empty?!1:(e.dispatch(i.update(s,{scrollIntoView:!0,userEvent:n,effects:n=="delete.selection"?yt.announce.of(i.phrase("Selection deleted")):void 0})),!0)}function xf(e,t,n){if(e instanceof yt)for(let i of e.state.facet(yt.atomicRanges).map(s=>s(e)))i.between(t,t,(s,r)=>{s<t&&r>t&&(t=n?r:s)});return t}const e3=(e,t,n)=>bu(e,i=>{let s=i.from,{state:r}=e,l=r.doc.lineAt(s),c,u;if(n&&!t&&s>l.from&&s<l.from+200&&!/[^ \t]/.test(c=l.text.slice(0,s-l.from))){if(c[c.length-1]==" ")return s-1;let f=fa(c,r.tabSize),p=f%jo(r)||jo(r);for(let m=0;m<p&&c[c.length-1-m]==" ";m++)s--;u=s}else u=Ge(l.text,s-l.from,t,t)+l.from,u==s&&l.number!=(t?r.doc.lines:1)?u+=t?1:-1:!t&&/[\ufe00-\ufe0f]/.test(l.text.slice(u-l.from,s-l.from))&&(u=Ge(l.text,u-l.from,!1,!1)+l.from);return u}),Wy=e=>e3(e,!1,!0),n3=e=>e3(e,!0,!1),i3=(e,t)=>bu(e,n=>{let i=n.head,{state:s}=e,r=s.doc.lineAt(i),l=s.charCategorizer(i);for(let c=null;;){if(i==(t?r.to:r.from)){i==n.head&&r.number!=(t?s.doc.lines:1)&&(i+=t?1:-1);break}let u=Ge(r.text,i-r.from,t)+r.from,f=r.text.slice(Math.min(i,u)-r.from,Math.max(i,u)-r.from),p=l(f);if(c!=null&&p!=c)break;(f!=" "||i!=n.head)&&(c=p),i=u}return i}),s3=e=>i3(e,!1),fQ=e=>i3(e,!0),dQ=e=>bu(e,t=>{let n=e.lineBlockAt(t.head).to;return t.head<n?n:Math.min(e.state.doc.length,t.head+1)}),pQ=e=>bu(e,t=>{let n=e.moveToLineBoundary(t,!1).head;return t.head>n?n:Math.max(0,t.head-1)}),mQ=e=>bu(e,t=>{let n=e.moveToLineBoundary(t,!0).head;return t.head<n?n:Math.min(e.state.doc.length,t.head+1)}),gQ=({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange(i=>({changes:{from:i.from,to:i.to,insert:Zt.of(["",""])},range:lt.cursor(i.from)}));return t(e.update(n,{scrollIntoView:!0,userEvent:"input"})),!0},yQ=({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange(i=>{if(!i.empty||i.from==0||i.from==e.doc.length)return{range:i};let s=i.from,r=e.doc.lineAt(s),l=s==r.from?s-1:Ge(r.text,s-r.from,!1)+r.from,c=s==r.to?s+1:Ge(r.text,s-r.from,!0)+r.from;return{changes:{from:l,to:c,insert:e.doc.slice(s,c).append(e.doc.slice(l,s))},range:lt.cursor(c)}});return n.changes.empty?!1:(t(e.update(n,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function hp(e){let t=[],n=-1;for(let i of e.selection.ranges){let s=e.doc.lineAt(i.from),r=e.doc.lineAt(i.to);if(!i.empty&&i.to==r.from&&(r=e.doc.lineAt(i.to-1)),n>=s.number){let l=t[t.length-1];l.to=r.to,l.ranges.push(i)}else t.push({from:s.from,to:r.to,ranges:[i]});n=r.number+1}return t}function r3(e,t,n){if(e.readOnly)return!1;let i=[],s=[];for(let r of hp(e)){if(n?r.to==e.doc.length:r.from==0)continue;let l=e.doc.lineAt(n?r.to+1:r.from-1),c=l.length+1;if(n){i.push({from:r.to,to:l.to},{from:r.from,insert:l.text+e.lineBreak});for(let u of r.ranges)s.push(lt.range(Math.min(e.doc.length,u.anchor+c),Math.min(e.doc.length,u.head+c)))}else{i.push({from:l.from,to:r.from},{from:r.to,insert:e.lineBreak+l.text});for(let u of r.ranges)s.push(lt.range(u.anchor-c,u.head-c))}}return i.length?(t(e.update({changes:i,scrollIntoView:!0,selection:lt.create(s,e.selection.mainIndex),userEvent:"move.line"})),!0):!1}const wQ=({state:e,dispatch:t})=>r3(e,t,!1),$Q=({state:e,dispatch:t})=>r3(e,t,!0);function o3(e,t,n){if(e.readOnly)return!1;let i=[];for(let r of hp(e))n?i.push({from:r.from,insert:e.doc.slice(r.from,r.to)+e.lineBreak}):i.push({from:r.to,insert:e.lineBreak+e.doc.slice(r.from,r.to)});let s=e.changes(i);return t(e.update({changes:s,selection:e.selection.map(s,n?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}const xQ=({state:e,dispatch:t})=>o3(e,t,!1),bQ=({state:e,dispatch:t})=>o3(e,t,!0),vQ=e=>{if(e.state.readOnly)return!1;let{state:t}=e,n=t.changes(hp(t).map(({from:s,to:r})=>(s>0?s--:r<t.doc.length&&r++,{from:s,to:r}))),i=da(t.selection,s=>{let r;if(e.lineWrapping){let l=e.lineBlockAt(s.head),c=e.coordsAtPos(s.head,s.assoc||1);c&&(r=l.bottom+e.documentTop-c.bottom+e.defaultLineHeight/2)}return e.moveVertically(s,!0,r)}).map(n);return e.dispatch({changes:n,selection:i,scrollIntoView:!0,userEvent:"delete.line"}),!0};function SQ(e,t){if(/\(\)|\[\]|\{\}/.test(e.sliceDoc(t-1,t+1)))return{from:t,to:t};let n=Ke(e).resolveInner(t),i=n.childBefore(t),s=n.childAfter(t),r;return i&&s&&i.to<=t&&s.from>=t&&(r=i.type.prop(At.closedBy))&&r.indexOf(s.name)>-1&&e.doc.lineAt(i.to).from==e.doc.lineAt(s.from).from&&!/\S/.test(e.sliceDoc(i.to,s.from))?{from:i.to,to:s.from}:null}const vS=l3(!1),OQ=l3(!0);function l3(e){return({state:t,dispatch:n})=>{if(t.readOnly)return!1;let i=t.changeByRange(s=>{let{from:r,to:l}=s,c=t.doc.lineAt(r),u=!e&&r==l&&SQ(t,r);e&&(r=l=(l<=c.to?c:t.doc.lineAt(l)).to);let f=new op(t,{simulateBreak:r,simulateDoubleBreak:!!u}),p=Pw(f,r);for(p==null&&(p=fa(/^\s*/.exec(t.doc.lineAt(r).text)[0],t.tabSize));l<c.to&&/\s/.test(c.text[l-c.from]);)l++;u?{from:r,to:l}=u:r>c.from&&r<c.from+100&&!/\S/.test(c.text.slice(0,r))&&(r=c.from);let m=["",eu(t,p)];return u&&m.push(eu(t,f.lineIndent(c.from,-1))),{changes:{from:r,to:l,insert:Zt.of(m)},range:lt.cursor(r+1+m[1].length)}});return n(t.update(i,{scrollIntoView:!0,userEvent:"input"})),!0}}function Vw(e,t){let n=-1;return e.changeByRange(i=>{let s=[];for(let l=i.from;l<=i.to;){let c=e.doc.lineAt(l);c.number>n&&(i.empty||i.to>c.from)&&(t(c,s,i),n=c.number),l=c.to+1}let r=e.changes(s);return{changes:s,range:lt.range(r.mapPos(i.anchor,1),r.mapPos(i.head,1))}})}const kQ=({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=Object.create(null),i=new op(e,{overrideIndentation:r=>{let l=n[r];return l??-1}}),s=Vw(e,(r,l,c)=>{let u=Pw(i,r.from);if(u==null)return;/\S/.test(r.text)||(u=0);let f=/^\s*/.exec(r.text)[0],p=eu(e,u);(f!=p||c.from<r.from+f.length)&&(n[r.from]=u,l.push({from:r.from,to:r.from+f.length,insert:p}))});return s.changes.empty||t(e.update(s,{userEvent:"indent"})),!0},CQ=({state:e,dispatch:t})=>e.readOnly?!1:(t(e.update(Vw(e,(n,i)=>{i.push({from:n.from,insert:e.facet(Qw)})}),{userEvent:"input.indent"})),!0),EQ=({state:e,dispatch:t})=>e.readOnly?!1:(t(e.update(Vw(e,(n,i)=>{let s=/^\s*/.exec(n.text)[0];if(!s)return;let r=fa(s,e.tabSize),l=0,c=eu(e,Math.max(0,r-jo(e)));for(;l<s.length&&l<c.length&&s.charCodeAt(l)==c.charCodeAt(l);)l++;i.push({from:n.from+l,to:n.from+s.length,insert:c.slice(l)})}),{userEvent:"delete.dedent"})),!0),DQ=e=>(e.setTabFocusMode(),!0),TQ=[{key:"Ctrl-b",run:BE,shift:UE,preventDefault:!0},{key:"Ctrl-f",run:YE,shift:IE},{key:"Ctrl-p",run:QE,shift:XE},{key:"Ctrl-n",run:PE,shift:KE},{key:"Ctrl-a",run:ZL,shift:sQ},{key:"Ctrl-e",run:UL,shift:rQ},{key:"Ctrl-d",run:n3},{key:"Ctrl-h",run:Wy},{key:"Ctrl-k",run:dQ},{key:"Ctrl-Alt-h",run:s3},{key:"Ctrl-o",run:gQ},{key:"Ctrl-t",run:yQ},{key:"Ctrl-v",run:qy}],NQ=[{key:"ArrowLeft",run:BE,shift:UE,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:zL,shift:VL,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:qL,shift:nQ,preventDefault:!0},{key:"ArrowRight",run:YE,shift:IE,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:BL,shift:XL,preventDefault:!0},{mac:"Cmd-ArrowRight",run:WL,shift:iQ,preventDefault:!0},{key:"ArrowUp",run:QE,shift:XE,preventDefault:!0},{mac:"Cmd-ArrowUp",run:wS,shift:xS},{mac:"Ctrl-ArrowUp",run:mS,shift:gS},{key:"ArrowDown",run:PE,shift:KE,preventDefault:!0},{mac:"Cmd-ArrowDown",run:$S,shift:bS},{mac:"Ctrl-ArrowDown",run:qy,shift:yS},{key:"PageUp",run:mS,shift:gS},{key:"PageDown",run:qy,shift:yS},{key:"Home",run:PL,shift:eQ,preventDefault:!0},{key:"Mod-Home",run:wS,shift:xS},{key:"End",run:QL,shift:tQ,preventDefault:!0},{key:"Mod-End",run:$S,shift:bS},{key:"Enter",run:vS,shift:vS},{key:"Mod-a",run:oQ},{key:"Backspace",run:Wy,shift:Wy,preventDefault:!0},{key:"Delete",run:n3,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:s3,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:fQ,preventDefault:!0},{mac:"Mod-Backspace",run:pQ,preventDefault:!0},{mac:"Mod-Delete",run:mQ,preventDefault:!0}].concat(TQ.map(e=>({mac:e.key,run:e.run,shift:e.shift}))),jQ=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:GL,shift:KL},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:LL,shift:JL},{key:"Alt-ArrowUp",run:wQ},{key:"Shift-Alt-ArrowUp",run:xQ},{key:"Alt-ArrowDown",run:$Q},{key:"Shift-Alt-ArrowDown",run:bQ},{key:"Mod-Alt-ArrowUp",run:cQ},{key:"Mod-Alt-ArrowDown",run:uQ},{key:"Escape",run:hQ},{key:"Mod-Enter",run:OQ},{key:"Alt-l",mac:"Ctrl-l",run:lQ},{key:"Mod-i",run:aQ,preventDefault:!0},{key:"Mod-[",run:EQ},{key:"Mod-]",run:CQ},{key:"Mod-Alt-\\",run:kQ},{key:"Shift-Mod-k",run:vQ},{key:"Shift-Mod-\\",run:FL},{key:"Mod-/",run:wL},{key:"Alt-A",run:xL},{key:"Ctrl-m",mac:"Shift-Alt-m",run:DQ}].concat(NQ),SS=typeof String.prototype.normalize=="function"?e=>e.normalize("NFKD"):e=>e;class ca{constructor(t,n,i=0,s=t.length,r,l){this.test=l,this.value={from:0,to:0,precise:!1},this.done=!1,this.matches=[],this.buffer="",this.bufferPos=0,this.iter=t.iterRange(i,s),this.bufferStart=i,this.normalize=r?c=>r(SS(c)):SS,this.query=this.normalize(n)}peek(){if(this.bufferPos==this.buffer.length){if(this.bufferStart+=this.buffer.length,this.iter.next(),this.iter.done)return-1;this.bufferPos=0,this.buffer=this.iter.value}return bn(this.buffer,this.bufferPos)}next(){for(;this.matches.length;)this.matches.pop();return this.nextOverlapping()}nextOverlapping(){for(;;){let t=this.peek();if(t<0)return this.done=!0,this;let n=ww(t),i=this.bufferStart+this.bufferPos;this.bufferPos+=Yi(t);let s=this.normalize(n);if(s.length)for(let r=0,l=i,c=!0;;r++){let u=s.charCodeAt(r),f=this.match(u,l,c,this.bufferPos+this.bufferStart,r==s.length-1);if(f)return this.value=f,this;if(r==s.length-1)break;c&&r<n.length&&n.charCodeAt(r)==u?l++:c=!1}}}match(t,n,i,s,r){let l=null;for(let c=0;c<this.matches.length;){let u=this.matches[c],f=!1;this.query.charCodeAt(u.index)==t&&(u.index==this.query.length-1?l={from:u.from,to:s,precise:r&&u.precise}:(u.index++,f=!0)),f?c++:this.matches.splice(c,1)}return this.query.charCodeAt(0)==t&&(this.query.length==1?l={from:n,to:s,precise:i&&r}:this.matches.push({from:n,index:1,precise:i})),l&&this.test&&!this.test(l.from,l.to,this.buffer,this.bufferStart)&&(l=null),l}}typeof Symbol<"u"&&(ca.prototype[Symbol.iterator]=function(){return this});const a3={from:-1,to:-1,match:/.*/.exec(""),precise:!0},Xw="gm"+(/x/.unicode==null?"":"u");class c3{constructor(t,n,i,s=0,r=t.length){if(this.text=t,this.to=r,this.curLine="",this.done=!1,this.value=a3,/\\[sWDnr]|\n|\r|\[\^/.test(n))return new u3(t,n,i,s,r);this.re=new RegExp(n,Xw+(i!=null&&i.ignoreCase?"i":"")),this.test=i==null?void 0:i.test,this.iter=t.iter();let l=t.lineAt(s);this.curLineStart=l.from,this.matchPos=Od(t,s),this.getLine(this.curLineStart)}getLine(t){this.iter.next(t),this.iter.lineBreak?this.curLine="":(this.curLine=this.iter.value,this.curLineStart+this.curLine.length>this.to&&(this.curLine=this.curLine.slice(0,this.to-this.curLineStart)),this.iter.next())}nextLine(){this.curLineStart=this.curLineStart+this.curLine.length+1,this.curLineStart>this.to?this.curLine="":this.getLine(0)}next(){for(let t=this.matchPos-this.curLineStart;;){this.re.lastIndex=t;let n=this.matchPos<=this.to&&this.re.exec(this.curLine);if(n){let i=this.curLineStart+n.index,s=i+n[0].length;if(this.matchPos=Od(this.text,s+(i==s?1:0)),i==this.curLineStart+this.curLine.length&&this.nextLine(),(i<s||i>this.value.to)&&(!this.test||this.test(i,s,n)))return this.value={from:i,to:s,precise:!0,match:n},this;t=this.matchPos-this.curLineStart}else if(this.curLineStart+this.curLine.length<this.to)this.nextLine(),t=0;else return this.done=!0,this}}}const k0=new WeakMap;class Wl{constructor(t,n){this.from=t,this.text=n}get to(){return this.from+this.text.length}static get(t,n,i){let s=k0.get(t);if(!s||s.from>=i||s.to<=n){let c=new Wl(n,t.sliceString(n,i));return k0.set(t,c),c}if(s.from==n&&s.to==i)return s;let{text:r,from:l}=s;return l>n&&(r=t.sliceString(n,l)+r,l=n),s.to<i&&(r+=t.sliceString(s.to,i)),k0.set(t,new Wl(l,r)),new Wl(n,r.slice(n-l,i-l))}}class u3{constructor(t,n,i,s,r){this.text=t,this.to=r,this.done=!1,this.value=a3,this.matchPos=Od(t,s),this.re=new RegExp(n,Xw+(i!=null&&i.ignoreCase?"i":"")),this.test=i==null?void 0:i.test,this.flat=Wl.get(t,s,this.chunkEnd(s+5e3))}chunkEnd(t){return t>=this.to?this.to:this.text.lineAt(t).to}next(){for(;;){let t=this.re.lastIndex=this.matchPos-this.flat.from,n=this.re.exec(this.flat.text);if(n&&!n[0]&&n.index==t&&(this.re.lastIndex=t+1,n=this.re.exec(this.flat.text)),n){let i=this.flat.from+n.index,s=i+n[0].length;if((this.flat.to>=this.to||n.index+n[0].length<=this.flat.text.length-10)&&(!this.test||this.test(i,s,n)))return this.value={from:i,to:s,precise:!0,match:n},this.matchPos=Od(this.text,s+(i==s?1:0)),this}if(this.flat.to==this.to)return this.done=!0,this;this.flat=Wl.get(this.text,this.flat.from,this.chunkEnd(this.flat.from+this.flat.text.length*2))}}}typeof Symbol<"u"&&(c3.prototype[Symbol.iterator]=u3.prototype[Symbol.iterator]=function(){return this});function RQ(e){try{return new RegExp(e,Xw),!0}catch{return!1}}function Od(e,t){if(t>=e.length)return t;let n=e.lineAt(t),i;for(;t<n.to&&(i=n.text.charCodeAt(t-n.from))>=56320&&i<57344;)t++;return t}const _Q=e=>{let{state:t}=e,n=String(t.doc.lineAt(e.state.selection.main.head).number),{close:i,result:s}=LY(e,{label:t.phrase("Go to line"),input:{type:"text",name:"line",value:n},focus:!0,submitLabel:t.phrase("go")});return s.then(r=>{let l=r&&/^([+-])?(\d+)?(:\d+)?(%)?$/.exec(r.elements.line.value);if(!l){e.dispatch({effects:i});return}let c=t.doc.lineAt(t.selection.main.head),[,u,f,p,m]=l,g=p?+p.slice(1):0,y=f?+f:c.number;if(f&&m){let S=y/100;u&&(S=S*(u=="-"?-1:1)+c.number/t.doc.lines),y=Math.round(t.doc.lines*S)}else f&&u&&(y=y*(u=="-"?-1:1)+c.number);let $=t.doc.line(Math.max(1,Math.min(t.doc.lines,y))),b=lt.cursor($.from+Math.max(0,Math.min(g,$.length)));e.dispatch({effects:[i,yt.scrollIntoView(b.from,{y:"center"})],selection:b})}),!0},MQ={highlightWordAroundCursor:!1,minSelectionLength:1,maxMatches:100,wholeWords:!1},AQ=wt.define({combine(e){return Xi(e,MQ,{highlightWordAroundCursor:(t,n)=>t||n,minSelectionLength:Math.min,maxMatches:Math.min})}});function HQ(e){return[LQ,GQ]}const zQ=Tt.mark({class:"cm-selectionMatch"}),BQ=Tt.mark({class:"cm-selectionMatch cm-selectionMatch-main"});function OS(e,t,n,i){return(n==0||e(t.sliceDoc(n-1,n))!=pe.Word)&&(i==t.doc.length||e(t.sliceDoc(i,i+1))!=pe.Word)}function YQ(e,t,n,i){return e(t.sliceDoc(n,n+1))==pe.Word&&e(t.sliceDoc(i-1,i))==pe.Word}const GQ=ke.fromClass(class{constructor(e){this.decorations=this.getDeco(e)}update(e){(e.selectionSet||e.docChanged||e.viewportChanged)&&(this.decorations=this.getDeco(e.view))}getDeco(e){let t=e.state.facet(AQ),{state:n}=e,i=n.selection;if(i.ranges.length>1)return Tt.none;let s=i.main,r,l=null;if(s.empty){if(!t.highlightWordAroundCursor)return Tt.none;let u=n.wordAt(s.head);if(!u)return Tt.none;l=n.charCategorizer(s.head),r=n.sliceDoc(u.from,u.to)}else{let u=s.to-s.from;if(u<t.minSelectionLength||u>200)return Tt.none;if(t.wholeWords){if(r=n.sliceDoc(s.from,s.to),l=n.charCategorizer(s.head),!(OS(l,n,s.from,s.to)&&YQ(l,n,s.from,s.to)))return Tt.none}else if(r=n.sliceDoc(s.from,s.to),!r)return Tt.none}let c=[];for(let u of e.visibleRanges){let f=new ca(n.doc,r,u.from,u.to);for(;!f.next().done;){let{from:p,to:m}=f.value;if((!l||OS(l,n,p,m))&&(s.empty&&p<=s.from&&m>=s.to?c.push(BQ.range(p,m)):(p>=s.to||m<=s.from)&&c.push(zQ.range(p,m)),c.length>t.maxMatches))return Tt.none}}return Tt.set(c)}},{decorations:e=>e.decorations}),LQ=yt.baseTheme({".cm-selectionMatch":{backgroundColor:"#99ff7780"},".cm-searchMatch .cm-selectionMatch":{backgroundColor:"transparent"}}),QQ=({state:e,dispatch:t})=>{let{selection:n}=e,i=lt.create(n.ranges.map(s=>e.wordAt(s.head)||lt.cursor(s.head)),n.mainIndex);return i.eq(n)?!1:(t(e.update({selection:i})),!0)};function PQ(e,t){let{main:n,ranges:i}=e.selection,s=e.wordAt(n.head),r=s&&s.from==n.from&&s.to==n.to;for(let l=!1,c=new ca(e.doc,t,i[i.length-1].to);;)if(c.next(),c.done){if(l)return null;c=new ca(e.doc,t,0,Math.max(0,i[i.length-1].from-1)),l=!0}else{if(l&&i.some(u=>u.from==c.value.from))continue;if(r){let u=e.wordAt(c.value.from);if(!u||u.from!=c.value.from||u.to!=c.value.to)continue}return c.value}}const qQ=({state:e,dispatch:t})=>{let{ranges:n}=e.selection;if(n.some(r=>r.from===r.to))return QQ({state:e,dispatch:t});let i=e.sliceDoc(n[0].from,n[0].to);if(e.selection.ranges.some(r=>e.sliceDoc(r.from,r.to)!=i))return!1;let s=PQ(e,i);return s?(t(e.update({selection:e.selection.addRange(lt.range(s.from,s.to),!1),effects:yt.scrollIntoView(s.to)})),!0):!1},pa=wt.define({combine(e){return Xi(e,{top:!1,caseSensitive:!1,literal:!1,regexp:!1,wholeWord:!1,createPanel:t=>new sP(t),scrollToMatch:t=>yt.scrollIntoView(t)})}});class h3{constructor(t){this.search=t.search,this.caseSensitive=!!t.caseSensitive,this.literal=!!t.literal,this.regexp=!!t.regexp,this.replace=t.replace||"",this.valid=!!this.search&&(!this.regexp||RQ(this.search)),this.unquoted=this.unquote(this.search),this.wholeWord=!!t.wholeWord,this.test=t.test}unquote(t){return this.literal?t:t.replace(/\\([nrt\\])/g,(n,i)=>i=="n"?`
271
+ `:i=="r"?"\r":i=="t"?" ":"\\")}eq(t){return this.search==t.search&&this.replace==t.replace&&this.caseSensitive==t.caseSensitive&&this.regexp==t.regexp&&this.wholeWord==t.wholeWord&&this.test==t.test}create(){return this.regexp?new VQ(this):new UQ(this)}getCursor(t,n=0,i){let s=t.doc?t:Wt.create({doc:t});return i==null&&(i=s.doc.length),this.regexp?jl(this,s,n,i):Nl(this,s,n,i)}}class f3{constructor(t){this.spec=t}}function WQ(e,t,n){return(i,s,r,l)=>{if(n&&!n(i,s,r,l))return!1;let c=i>=l&&s<=l+r.length?r.slice(i-l,s-l):t.doc.sliceString(i,s);return e(c,t,i,s)}}function Nl(e,t,n,i){let s;return e.wholeWord&&(s=ZQ(t.doc,t.charCategorizer(t.selection.main.head))),e.test&&(s=WQ(e.test,t,s)),new ca(t.doc,e.unquoted,n,i,e.caseSensitive?void 0:r=>r.toLowerCase(),s)}function ZQ(e,t){return(n,i,s,r)=>((r>n||r+s.length<i)&&(r=Math.max(0,n-2),s=e.sliceString(r,Math.min(e.length,i+2))),(t(kd(s,n-r))!=pe.Word||t(Cd(s,n-r))!=pe.Word)&&(t(Cd(s,i-r))!=pe.Word||t(kd(s,i-r))!=pe.Word))}class UQ extends f3{constructor(t){super(t)}nextMatch(t,n,i){let s=Nl(this.spec,t,i,t.doc.length).nextOverlapping();if(s.done){let r=Math.min(t.doc.length,n+this.spec.unquoted.length);s=Nl(this.spec,t,0,r).nextOverlapping()}return s.done||s.value.from==n&&s.value.to==i?null:s.value}prevMatchInRange(t,n,i){for(let s=i;;){let r=Math.max(n,s-1e4-this.spec.unquoted.length),l=Nl(this.spec,t,r,s),c=null;for(;!l.nextOverlapping().done;)c=l.value;if(c)return c;if(r==n)return null;s-=1e4}}prevMatch(t,n,i){let s=this.prevMatchInRange(t,0,n);return s||(s=this.prevMatchInRange(t,Math.max(0,i-this.spec.unquoted.length),t.doc.length)),s&&(s.from!=n||s.to!=i)?s:null}getReplacement(t){return this.spec.unquote(this.spec.replace)}matchAll(t,n){let i=Nl(this.spec,t,0,t.doc.length),s=[];for(;!i.next().done;){if(s.length>=n)return null;s.push(i.value)}return s}highlight(t,n,i,s){let r=Nl(this.spec,t,Math.max(0,n-this.spec.unquoted.length),Math.min(i+this.spec.unquoted.length,t.doc.length));for(;!r.next().done;)s(r.value.from,r.value.to)}}function IQ(e,t,n){return(i,s,r)=>(!n||n(i,s,r))&&e(r[0],t,i,s)}function jl(e,t,n,i){let s;return e.wholeWord&&(s=FQ(t.charCategorizer(t.selection.main.head))),e.test&&(s=IQ(e.test,t,s)),new c3(t.doc,e.search,{ignoreCase:!e.caseSensitive,test:s},n,i)}function kd(e,t){return e.slice(Ge(e,t,!1),t)}function Cd(e,t){return e.slice(t,Ge(e,t))}function FQ(e){return(t,n,i)=>!i[0].length||(e(kd(i.input,i.index))!=pe.Word||e(Cd(i.input,i.index))!=pe.Word)&&(e(Cd(i.input,i.index+i[0].length))!=pe.Word||e(kd(i.input,i.index+i[0].length))!=pe.Word)}class VQ extends f3{nextMatch(t,n,i){let s=jl(this.spec,t,i,t.doc.length).next();return s.done&&(s=jl(this.spec,t,0,n).next()),s.done?null:s.value}prevMatchInRange(t,n,i){for(let s=1;;s++){let r=Math.max(n,i-s*1e4),l=jl(this.spec,t,r,i),c=null;for(;!l.next().done;)c=l.value;if(c&&(r==n||c.from>r+10))return c;if(r==n)return null}}prevMatch(t,n,i){return this.prevMatchInRange(t,0,n)||this.prevMatchInRange(t,i,t.doc.length)}getReplacement(t){return this.spec.unquote(this.spec.replace).replace(/\$([$&]|\d+)/g,(n,i)=>{if(i=="&")return t.match[0];if(i=="$")return"$";for(let s=i.length;s>0;s--){let r=+i.slice(0,s);if(r>0&&r<t.match.length)return t.match[r]+i.slice(s)}return n})}matchAll(t,n){let i=jl(this.spec,t,0,t.doc.length),s=[];for(;!i.next().done;){if(s.length>=n)return null;s.push(i.value)}return s}highlight(t,n,i,s){let r=jl(this.spec,t,Math.max(0,n-250),Math.min(i+250,t.doc.length));for(;!r.next().done;)s(r.value.from,r.value.to)}}const iu=_t.define(),Kw=_t.define(),vr=Je.define({create(e){return new C0(Zy(e).create(),null)},update(e,t){for(let n of t.effects)n.is(iu)?e=new C0(n.value.create(),e.panel):n.is(Kw)&&(e=new C0(e.query,n.value?Jw:null));return e},provide:e=>Kc.from(e,t=>t.panel)});class C0{constructor(t,n){this.query=t,this.panel=n}}const XQ=Tt.mark({class:"cm-searchMatch"}),KQ=Tt.mark({class:"cm-searchMatch cm-searchMatch-selected"}),JQ=ke.fromClass(class{constructor(e){this.view=e,this.decorations=this.highlight(e.state.field(vr))}update(e){let t=e.state.field(vr);(t!=e.startState.field(vr)||e.docChanged||e.selectionSet||e.viewportChanged)&&(this.decorations=this.highlight(t))}highlight({query:e,panel:t}){if(!t||!e.spec.valid)return Tt.none;let{view:n}=this,i=new Ts;for(let s=0,r=n.visibleRanges,l=r.length;s<l;s++){let{from:c,to:u}=r[s];for(;s<l-1&&u>r[s+1].from-500;)u=r[++s].to;e.highlight(n.state,c,u,(f,p)=>{let m=n.state.selection.ranges.some(g=>g.from==f&&g.to==p);i.add(f,p,m?KQ:XQ)})}return i.finish()}},{decorations:e=>e.decorations});function vu(e){return t=>{let n=t.state.field(vr,!1);return n&&n.query.spec.valid?e(t,n):m3(t)}}const Ed=vu((e,{query:t})=>{let{to:n}=e.state.selection.main,i=t.nextMatch(e.state,n,n);if(!i)return!1;let s=lt.single(i.from,i.to),r=e.state.facet(pa);return e.dispatch({selection:s,effects:[t5(e,i),r.scrollToMatch(s.main,e)],userEvent:"select.search"}),p3(e),!0}),Dd=vu((e,{query:t})=>{let{state:n}=e,{from:i}=n.selection.main,s=t.prevMatch(n,i,i);if(!s)return!1;let r=lt.single(s.from,s.to),l=e.state.facet(pa);return e.dispatch({selection:r,effects:[t5(e,s),l.scrollToMatch(r.main,e)],userEvent:"select.search"}),p3(e),!0}),tP=vu((e,{query:t})=>{let n=t.matchAll(e.state,1e3);return!n||!n.length?!1:(e.dispatch({selection:lt.create(n.map(i=>lt.range(i.from,i.to))),userEvent:"select.search.matches"}),!0)}),eP=({state:e,dispatch:t})=>{let n=e.selection;if(n.ranges.length>1||n.main.empty)return!1;let{from:i,to:s}=n.main,r=[],l=0;for(let c=new ca(e.doc,e.sliceDoc(i,s));!c.next().done;){if(r.length>1e3)return!1;c.value.from==i&&(l=r.length),r.push(lt.range(c.value.from,c.value.to))}return t(e.update({selection:lt.create(r,l),userEvent:"select.search.matches"})),!0},kS=vu((e,{query:t})=>{let{state:n}=e,{from:i,to:s}=n.selection.main;if(n.readOnly)return!1;let r=t.nextMatch(n,i,i);if(!r)return!1;let l=r,c=[],u,f,p=[];l.precise?l.from==i&&l.to==s&&(f=n.toText(t.getReplacement(l)),c.push({from:l.from,to:l.to,insert:f}),l=t.nextMatch(n,l.from,l.to),p.push(yt.announce.of(n.phrase("replaced match on line $",n.doc.lineAt(i).number)+"."))):l=t.nextMatch(n,l.from,l.to);let m=e.state.changes(c);return l&&(u=lt.single(l.from,l.to).map(m),p.push(t5(e,l)),p.push(n.facet(pa).scrollToMatch(u.main,e))),e.dispatch({changes:m,selection:u,effects:p,userEvent:"input.replace"}),!0}),nP=vu((e,{query:t})=>{if(e.state.readOnly)return!1;let n=[];for(let s of t.matchAll(e.state,1e9)){let{from:r,to:l,precise:c}=s;c&&n.push({from:r,to:l,insert:t.getReplacement(s)})}if(!n.length)return!1;let i=e.state.phrase("replaced $ matches",n.length)+".";return e.dispatch({changes:n,effects:yt.announce.of(i),userEvent:"input.replace.all"}),!0});function Jw(e){return e.state.facet(pa).createPanel(e)}function Zy(e,t){var n,i,s,r,l;let c=e.selection.main,u=c.empty||c.to>c.from+100?"":e.sliceDoc(c.from,c.to);if(t&&!u)return t;let f=e.facet(pa);return new h3({search:((n=t==null?void 0:t.literal)!==null&&n!==void 0?n:f.literal)?u:u.replace(/\n/g,"\\n"),caseSensitive:(i=t==null?void 0:t.caseSensitive)!==null&&i!==void 0?i:f.caseSensitive,literal:(s=t==null?void 0:t.literal)!==null&&s!==void 0?s:f.literal,regexp:(r=t==null?void 0:t.regexp)!==null&&r!==void 0?r:f.regexp,wholeWord:(l=t==null?void 0:t.wholeWord)!==null&&l!==void 0?l:f.wholeWord})}function d3(e){let t=zw(e,Jw);return t&&t.dom.querySelector("[main-field]")}function p3(e){let t=d3(e);t&&t==e.root.activeElement&&t.select()}const m3=e=>{let t=e.state.field(vr,!1);if(t&&t.panel){let n=d3(e);if(n&&n!=e.root.activeElement){let i=Zy(e.state,t.query.spec);i.valid&&e.dispatch({effects:iu.of(i)}),n.focus(),n.select()}}else e.dispatch({effects:[Kw.of(!0),t?iu.of(Zy(e.state,t.query.spec)):_t.appendConfig.of(oP)]});return!0},g3=e=>{let t=e.state.field(vr,!1);if(!t||!t.panel)return!1;let n=zw(e,Jw);return n&&n.dom.contains(e.root.activeElement)&&e.focus(),e.dispatch({effects:Kw.of(!1)}),!0},iP=[{key:"Mod-f",run:m3,scope:"editor search-panel"},{key:"F3",run:Ed,shift:Dd,scope:"editor search-panel",preventDefault:!0},{key:"Mod-g",run:Ed,shift:Dd,scope:"editor search-panel",preventDefault:!0},{key:"Escape",run:g3,scope:"editor search-panel"},{key:"Mod-Shift-l",run:eP},{key:"Mod-Alt-g",run:_Q},{key:"Mod-d",run:qQ,preventDefault:!0}];class sP{constructor(t){this.view=t;let n=this.query=t.state.field(vr).query.spec;this.commit=this.commit.bind(this),this.searchField=ne("input",{value:n.search,placeholder:Yn(t,"Find"),"aria-label":Yn(t,"Find"),class:"cm-textfield",name:"search",form:"","main-field":"true",onchange:this.commit,onkeyup:this.commit}),this.replaceField=ne("input",{value:n.replace,placeholder:Yn(t,"Replace"),"aria-label":Yn(t,"Replace"),class:"cm-textfield",name:"replace",form:"",onchange:this.commit,onkeyup:this.commit}),this.caseField=ne("input",{type:"checkbox",name:"case",form:"",checked:n.caseSensitive,onchange:this.commit}),this.reField=ne("input",{type:"checkbox",name:"re",form:"",checked:n.regexp,onchange:this.commit}),this.wordField=ne("input",{type:"checkbox",name:"word",form:"",checked:n.wholeWord,onchange:this.commit});function i(s,r,l){return ne("button",{class:"cm-button",name:s,onclick:r,type:"button"},l)}this.dom=ne("div",{onkeydown:s=>this.keydown(s),class:"cm-search"},[this.searchField,i("next",()=>Ed(t),[Yn(t,"next")]),i("prev",()=>Dd(t),[Yn(t,"previous")]),i("select",()=>tP(t),[Yn(t,"all")]),ne("label",null,[this.caseField,Yn(t,"match case")]),ne("label",null,[this.reField,Yn(t,"regexp")]),ne("label",null,[this.wordField,Yn(t,"by word")]),...t.state.readOnly?[]:[ne("br"),this.replaceField,i("replace",()=>kS(t),[Yn(t,"replace")]),i("replaceAll",()=>nP(t),[Yn(t,"replace all")])],ne("button",{name:"close",onclick:()=>g3(t),"aria-label":Yn(t,"close"),type:"button"},["×"])])}commit(){let t=new h3({search:this.searchField.value,caseSensitive:this.caseField.checked,regexp:this.reField.checked,wholeWord:this.wordField.checked,replace:this.replaceField.value});t.eq(this.query)||(this.query=t,this.view.dispatch({effects:iu.of(t)}))}keydown(t){KB(this.view,t,"search-panel")?t.preventDefault():t.keyCode==13&&t.target==this.searchField?(t.preventDefault(),(t.shiftKey?Dd:Ed)(this.view)):t.keyCode==13&&t.target==this.replaceField&&(t.preventDefault(),kS(this.view))}update(t){for(let n of t.transactions)for(let i of n.effects)i.is(iu)&&!i.value.eq(this.query)&&this.setQuery(i.value)}setQuery(t){this.query=t,this.searchField.value=t.search,this.replaceField.value=t.replace,this.caseField.checked=t.caseSensitive,this.reField.checked=t.regexp,this.wordField.checked=t.wholeWord}mount(){this.searchField.select()}get pos(){return 80}get top(){return this.view.state.facet(pa).top}}function Yn(e,t){return e.state.phrase(t)}const bf=30,vf=/[\s\.,:;?!]/;function t5(e,{from:t,to:n}){let i=e.state.doc.lineAt(t),s=e.state.doc.lineAt(n).to,r=Math.max(i.from,t-bf),l=Math.min(s,n+bf),c=e.state.sliceDoc(r,l);if(r!=i.from){for(let u=0;u<bf;u++)if(!vf.test(c[u+1])&&vf.test(c[u])){c=c.slice(u);break}}if(l!=s){for(let u=c.length-1;u>c.length-bf;u--)if(!vf.test(c[u-1])&&vf.test(c[u])){c=c.slice(0,u);break}}return yt.announce.of(`${e.state.phrase("current match")}. ${c} ${e.state.phrase("on line")} ${i.number}.`)}const rP=yt.baseTheme({".cm-panel.cm-search":{padding:"2px 6px 4px",position:"relative","& [name=close]":{position:"absolute",top:"0",right:"4px",backgroundColor:"inherit",border:"none",font:"inherit",padding:0,margin:0},"& input, & button, & label":{margin:".2em .6em .2em 0"},"& input[type=checkbox]":{marginRight:".2em"},"& label":{fontSize:"80%",whiteSpace:"pre"}},"&light .cm-searchMatch":{backgroundColor:"#ffff0054"},"&dark .cm-searchMatch":{backgroundColor:"#00ffff8a"},"&light .cm-searchMatch-selected":{backgroundColor:"#ff6a0054"},"&dark .cm-searchMatch-selected":{backgroundColor:"#ff00ff8a"}}),oP=[vr,Nr.low(JQ),rP];class y3{constructor(t,n,i,s){this.state=t,this.pos=n,this.explicit=i,this.view=s,this.abortListeners=[],this.abortOnDocChange=!1}tokenBefore(t){let n=Ke(this.state).resolveInner(this.pos,-1);for(;n&&t.indexOf(n.name)<0;)n=n.parent;return n?{from:n.from,to:this.pos,text:this.state.sliceDoc(n.from,this.pos),type:n.type}:null}matchBefore(t){let n=this.state.doc.lineAt(this.pos),i=Math.max(n.from,this.pos-250),s=n.text.slice(i-n.from,this.pos-n.from),r=s.search(w3(t,!1));return r<0?null:{from:i+r,to:this.pos,text:s.slice(r)}}get aborted(){return this.abortListeners==null}addEventListener(t,n,i){t=="abort"&&this.abortListeners&&(this.abortListeners.push(n),i&&i.onDocChange&&(this.abortOnDocChange=!0))}}function CS(e){let t=Object.keys(e).join(""),n=/\w/.test(t);return n&&(t=t.replace(/\w/g,"")),`[${n?"\\w":""}${t.replace(/[^\w\s]/g,"\\$&")}]`}function lP(e){let t=Object.create(null),n=Object.create(null);for(let{label:s}of e){t[s[0]]=!0;for(let r=1;r<s.length;r++)n[s[r]]=!0}let i=CS(t)+CS(n)+"*$";return[new RegExp("^"+i),new RegExp(i)]}function aP(e){let t=e.map(s=>typeof s=="string"?{label:s}:s),[n,i]=t.every(s=>/^\w+$/.test(s.label))?[/\w*$/,/\w+$/]:lP(t);return s=>{let r=s.matchBefore(i);return r||s.explicit?{from:r?r.from:s.pos,options:t,validFor:n}:null}}class ES{constructor(t,n,i,s){this.completion=t,this.source=n,this.match=i,this.score=s}}function xo(e){return e.selection.main.from}function w3(e,t){var n;let{source:i}=e,s=t&&i[0]!="^",r=i[i.length-1]!="$";return!s&&!r?e:new RegExp(`${s?"^":""}(?:${i})${r?"$":""}`,(n=e.flags)!==null&&n!==void 0?n:e.ignoreCase?"i":"")}const $3=Rs.define();function cP(e,t,n,i){let{main:s}=e.selection,r=n-s.from,l=i-s.from;return{...e.changeByRange(c=>{if(c!=s&&n!=i&&e.sliceDoc(c.from+r,c.from+l)!=e.sliceDoc(n,i))return{range:c};let u=e.toText(t);return{changes:{from:c.from+r,to:i==s.from?c.to:c.from+l,insert:u},range:lt.cursor(c.from+r+u.length)}}),scrollIntoView:!0,userEvent:"input.complete"}}const DS=new WeakMap;function uP(e){if(!Array.isArray(e))return e;let t=DS.get(e);return t||DS.set(e,t=aP(e)),t}const Td=_t.define(),su=_t.define();class hP{constructor(t){this.pattern=t,this.chars=[],this.folded=[],this.any=[],this.precise=[],this.byWord=[],this.score=0,this.matched=[];for(let n=0;n<t.length;){let i=bn(t,n),s=Yi(i);this.chars.push(i);let r=t.slice(n,n+s),l=r.toUpperCase();this.folded.push(bn(l==r?r.toLowerCase():l,0)),n+=s}this.astral=t.length!=this.chars.length}ret(t,n){return this.score=t,this.matched=n,this}match(t){if(this.pattern.length==0)return this.ret(-100,[]);if(t.length<this.pattern.length)return null;let{chars:n,folded:i,any:s,precise:r,byWord:l}=this;if(n.length==1){let E=bn(t,0),k=Yi(E),D=k==t.length?0:-100;if(E!=n[0])if(E==i[0])D+=-200;else return null;return this.ret(D,[0,k])}let c=t.indexOf(this.pattern);if(c==0)return this.ret(t.length==this.pattern.length?0:-100,[0,this.pattern.length]);let u=n.length,f=0;if(c<0){for(let E=0,k=Math.min(t.length,200);E<k&&f<u;){let D=bn(t,E);(D==n[f]||D==i[f])&&(s[f++]=E),E+=Yi(D)}if(f<u)return null}let p=0,m=0,g=!1,y=0,$=-1,b=-1,S=/[a-z]/.test(t),O=!0;for(let E=0,k=Math.min(t.length,200),D=0;E<k&&m<u;){let _=bn(t,E);c<0&&(p<u&&_==n[p]&&(r[p++]=E),y<u&&(_==n[y]||_==i[y]?(y==0&&($=E),b=E+1,y++):y=0));let A,H=_<255?_>=48&&_<=57||_>=97&&_<=122?2:_>=65&&_<=90?1:0:(A=ww(_))!=A.toLowerCase()?1:A!=A.toUpperCase()?2:0;(!E||H==1&&S||D==0&&H!=0)&&(n[m]==_||i[m]==_&&(g=!0)?l[m++]=E:l.length&&(O=!1)),D=H,E+=Yi(_)}return m==u&&l[0]==0&&O?this.result(-100+(g?-200:0),l,t):y==u&&$==0?this.ret(-200-t.length+(b==t.length?0:-100),[0,b]):c>-1?this.ret(-700-t.length,[c,c+this.pattern.length]):y==u?this.ret(-900-t.length,[$,b]):m==u?this.result(-100+(g?-200:0)+-700+(O?0:-1100),l,t):n.length==2?null:this.result((s[0]?-700:0)+-200+-1100,s,t)}result(t,n,i){let s=[],r=0;for(let l of n){let c=l+(this.astral?Yi(bn(i,l)):1);r&&s[r-1]==l?s[r-1]=c:(s[r++]=l,s[r++]=c)}return this.ret(t-i.length,s)}}class fP{constructor(t){this.pattern=t,this.matched=[],this.score=0,this.folded=t.toLowerCase()}match(t){if(t.length<this.pattern.length)return null;let n=t.slice(0,this.pattern.length),i=n==this.pattern?0:n.toLowerCase()==this.folded?-200:null;return i==null?null:(this.matched=[0,n.length],this.score=i+(t.length==this.pattern.length?0:-100),this)}}const Ye=wt.define({combine(e){return Xi(e,{activateOnTyping:!0,activateOnCompletion:()=>!1,activateOnTypingDelay:100,selectOnOpen:!0,override:null,closeOnBlur:!0,maxRenderedOptions:100,defaultKeymap:!0,tooltipClass:()=>"",optionClass:()=>"",aboveCursor:!1,icons:!0,addToOptions:[],positionInfo:dP,filterStrict:!1,compareCompletions:(t,n)=>(t.sortText||t.label).localeCompare(n.sortText||n.label),interactionDelay:75,updateSyncTime:100},{defaultKeymap:(t,n)=>t&&n,closeOnBlur:(t,n)=>t&&n,icons:(t,n)=>t&&n,tooltipClass:(t,n)=>i=>TS(t(i),n(i)),optionClass:(t,n)=>i=>TS(t(i),n(i)),addToOptions:(t,n)=>t.concat(n),filterStrict:(t,n)=>t||n})}});function TS(e,t){return e?t?e+" "+t:e:t}function dP(e,t,n,i,s,r){let l=e.textDirection==oe.RTL,c=l,u=!1,f="top",p,m,g=t.left-s.left,y=s.right-t.right,$=i.right-i.left,b=i.bottom-i.top;if(c&&g<Math.min($,y)?c=!1:!c&&y<Math.min($,g)&&(c=!0),$<=(c?g:y))p=Math.max(s.top,Math.min(n.top,s.bottom-b))-t.top,m=Math.min(400,c?g:y);else{u=!0,m=Math.min(400,(l?t.right:s.right-t.left)-30);let E=s.bottom-t.bottom;E>=b||E>t.top?p=n.bottom-t.top:(f="bottom",p=t.bottom-n.top)}let S=(t.bottom-t.top)/r.offsetHeight,O=(t.right-t.left)/r.offsetWidth;return{style:`${f}: ${p/S}px; max-width: ${m/O}px`,class:"cm-completionInfo-"+(u?l?"left-narrow":"right-narrow":c?"left":"right")}}const e5=_t.define();function pP(e){let t=e.addToOptions.slice();return e.icons&&t.push({render(n){let i=document.createElement("div");return i.classList.add("cm-completionIcon"),n.type&&i.classList.add(...n.type.split(/\s+/g).map(s=>"cm-completionIcon-"+s)),i.setAttribute("aria-hidden","true"),i},position:20}),t.push({render(n,i,s,r){let l=document.createElement("span");l.className="cm-completionLabel";let c=n.displayLabel||n.label,u=0;for(let f=0;f<r.length;){let p=r[f++],m=r[f++];p>u&&l.appendChild(document.createTextNode(c.slice(u,p)));let g=l.appendChild(document.createElement("span"));g.appendChild(document.createTextNode(c.slice(p,m))),g.className="cm-completionMatchedText",u=m}return u<c.length&&l.appendChild(document.createTextNode(c.slice(u))),l},position:50},{render(n){if(!n.detail)return null;let i=document.createElement("span");return i.className="cm-completionDetail",i.textContent=n.detail,i},position:80}),t.sort((n,i)=>n.position-i.position).map(n=>n.render)}function E0(e,t,n){if(e<=n)return{from:0,to:e};if(t<0&&(t=0),t<=e>>1){let s=Math.floor(t/n);return{from:s*n,to:(s+1)*n}}let i=Math.ceil((e-t)/n);return{from:e-i*n,to:e-(i-1)*n}}class mP{constructor(t,n,i){this.view=t,this.stateField=n,this.applyCompletion=i,this.info=null,this.infoDestroy=null,this.placeInfoReq={read:()=>this.measureInfo(),write:u=>this.placeInfo(u),key:this},this.space=null,this.currentClass="";let s=t.state.field(n),{options:r,selected:l}=s.open,c=t.state.facet(Ye);this.optionContent=pP(c),this.optionClass=c.optionClass,this.tooltipClass=c.tooltipClass,this.range=E0(r.length,l,c.maxRenderedOptions),this.dom=document.createElement("div"),this.dom.className="cm-tooltip-autocomplete",this.updateTooltipClass(t.state),this.dom.addEventListener("mousedown",u=>{let{options:f}=t.state.field(n).open;for(let p=u.target,m;p&&p!=this.dom;p=p.parentNode)if(p.nodeName=="LI"&&(m=/-(\d+)$/.exec(p.id))&&+m[1]<f.length){this.applyCompletion(t,f[+m[1]]),u.preventDefault();return}if(u.target==this.list){let p=this.list.classList.contains("cm-completionListIncompleteTop")&&u.clientY<this.list.firstChild.getBoundingClientRect().top?this.range.from-1:this.list.classList.contains("cm-completionListIncompleteBottom")&&u.clientY>this.list.lastChild.getBoundingClientRect().bottom?this.range.to:null;p!=null&&(t.dispatch({effects:e5.of(p)}),u.preventDefault())}}),this.dom.addEventListener("focusout",u=>{let f=t.state.field(this.stateField,!1);f&&f.tooltip&&t.state.facet(Ye).closeOnBlur&&u.relatedTarget!=t.contentDOM&&t.dispatch({effects:su.of(null)})}),this.showOptions(r,s.id)}mount(){this.updateSel()}showOptions(t,n){this.list&&this.list.remove(),this.list=this.dom.appendChild(this.createListBox(t,n,this.range)),this.list.addEventListener("scroll",()=>{this.info&&this.view.requestMeasure(this.placeInfoReq)})}update(t){var n;let i=t.state.field(this.stateField),s=t.startState.field(this.stateField);if(this.updateTooltipClass(t.state),i!=s){let{options:r,selected:l,disabled:c}=i.open;(!s.open||s.open.options!=r)&&(this.range=E0(r.length,l,t.state.facet(Ye).maxRenderedOptions),this.showOptions(r,i.id)),this.updateSel(),c!=((n=s.open)===null||n===void 0?void 0:n.disabled)&&this.dom.classList.toggle("cm-tooltip-autocomplete-disabled",!!c)}}updateTooltipClass(t){let n=this.tooltipClass(t);if(n!=this.currentClass){for(let i of this.currentClass.split(" "))i&&this.dom.classList.remove(i);for(let i of n.split(" "))i&&this.dom.classList.add(i);this.currentClass=n}}positioned(t){this.space=t,this.info&&this.view.requestMeasure(this.placeInfoReq)}updateSel(){let t=this.view.state.field(this.stateField),n=t.open;(n.selected>-1&&n.selected<this.range.from||n.selected>=this.range.to)&&(this.range=E0(n.options.length,n.selected,this.view.state.facet(Ye).maxRenderedOptions),this.showOptions(n.options,t.id));let i=this.updateSelectedOption(n.selected);if(i){this.destroyInfo();let{completion:s}=n.options[n.selected],{info:r}=s;if(!r)return;let l=typeof r=="string"?document.createTextNode(r):r(s);if(!l)return;"then"in l?l.then(c=>{c&&this.view.state.field(this.stateField,!1)==t&&this.addInfoPane(c,s)}).catch(c=>kn(this.view.state,c,"completion info")):(this.addInfoPane(l,s),i.setAttribute("aria-describedby",this.info.id))}}addInfoPane(t,n){this.destroyInfo();let i=this.info=document.createElement("div");if(i.className="cm-tooltip cm-completionInfo",i.id="cm-completionInfo-"+Math.floor(Math.random()*65535).toString(16),t.nodeType!=null)i.appendChild(t),this.infoDestroy=null;else{let{dom:s,destroy:r}=t;i.appendChild(s),this.infoDestroy=r||null}this.dom.appendChild(i),this.view.requestMeasure(this.placeInfoReq)}updateSelectedOption(t){let n=null;for(let i=this.list.firstChild,s=this.range.from;i;i=i.nextSibling,s++)i.nodeName!="LI"||!i.id?s--:s==t?i.hasAttribute("aria-selected")||(i.setAttribute("aria-selected","true"),n=i):i.hasAttribute("aria-selected")&&(i.removeAttribute("aria-selected"),i.removeAttribute("aria-describedby"));return n&&yP(this.list,n),n}measureInfo(){let t=this.dom.querySelector("[aria-selected]");if(!t||!this.info)return null;let n=this.dom.getBoundingClientRect(),i=this.info.getBoundingClientRect(),s=t.getBoundingClientRect(),r=this.space;if(!r){let l=this.dom.ownerDocument.documentElement;r={left:0,top:0,right:l.clientWidth,bottom:l.clientHeight}}return s.top>Math.min(r.bottom,n.bottom)-10||s.bottom<Math.max(r.top,n.top)+10?null:this.view.state.facet(Ye).positionInfo(this.view,n,s,i,r,this.dom)}placeInfo(t){this.info&&(t?(t.style&&(this.info.style.cssText=t.style),this.info.className="cm-tooltip cm-completionInfo "+(t.class||"")):this.info.style.cssText="top: -1e6px")}createListBox(t,n,i){const s=document.createElement("ul");s.id=n,s.setAttribute("role","listbox"),s.setAttribute("aria-expanded","true"),s.setAttribute("aria-label",this.view.state.phrase("Completions")),s.addEventListener("mousedown",l=>{l.target==s&&l.preventDefault()});let r=null;for(let l=i.from;l<i.to;l++){let{completion:c,match:u}=t[l],{section:f}=c;if(f){let g=typeof f=="string"?f:f.name;if(g!=r&&(l>i.from||i.from==0))if(r=g,typeof f!="string"&&f.header)s.appendChild(f.header(f));else{let y=s.appendChild(document.createElement("completion-section"));y.textContent=g}}const p=s.appendChild(document.createElement("li"));p.id=n+"-"+l,p.setAttribute("role","option");let m=this.optionClass(c);m&&(p.className=m);for(let g of this.optionContent){let y=g(c,this.view.state,this.view,u);y&&p.appendChild(y)}}return i.from&&s.classList.add("cm-completionListIncompleteTop"),i.to<t.length&&s.classList.add("cm-completionListIncompleteBottom"),s}destroyInfo(){this.info&&(this.infoDestroy&&this.infoDestroy(),this.info.remove(),this.info=null)}destroy(){this.destroyInfo()}}function gP(e,t){return n=>new mP(n,e,t)}function yP(e,t){let n=e.getBoundingClientRect(),i=t.getBoundingClientRect(),s=n.height/e.offsetHeight;i.top<n.top?e.scrollTop-=(n.top-i.top)/s:i.bottom>n.bottom&&(e.scrollTop+=(i.bottom-n.bottom)/s)}function NS(e){return(e.boost||0)*100+(e.apply?10:0)+(e.info?5:0)+(e.type?1:0)}function wP(e,t){let n=[],i=null,s=null,r=p=>{n.push(p);let{section:m}=p.completion;if(m){i||(i=[]);let g=typeof m=="string"?m:m.name;i.some(y=>y.name==g)||i.push(typeof m=="string"?{name:g}:m)}},l=t.facet(Ye);for(let p of e)if(p.hasResult()){let m=p.result.getMatch;if(p.result.filter===!1)for(let g of p.result.options)r(new ES(g,p.source,m?m(g):[],1e9-n.length));else{let g=t.sliceDoc(p.from,p.to),y,$=l.filterStrict?new fP(g):new hP(g);for(let b of p.result.options)if(y=$.match(b.label)){let S=b.displayLabel?m?m(b,y.matched):[]:y.matched,O=y.score+(b.boost||0);if(r(new ES(b,p.source,S,O)),typeof b.section=="object"&&b.section.rank==="dynamic"){let{name:E}=b.section;s||(s=Object.create(null)),s[E]=Math.max(O,s[E]||-1e9)}}}}if(i){let p=Object.create(null),m=0,g=(y,$)=>(y.rank==="dynamic"&&$.rank==="dynamic"?s[$.name]-s[y.name]:0)||(typeof y.rank=="number"?y.rank:1e9)-(typeof $.rank=="number"?$.rank:1e9)||(y.name<$.name?-1:1);for(let y of i.sort(g))m-=1e5,p[y.name]=m;for(let y of n){let{section:$}=y.completion;$&&(y.score+=p[typeof $=="string"?$:$.name])}}let c=[],u=null,f=l.compareCompletions;for(let p of n.sort((m,g)=>g.score-m.score||f(m.completion,g.completion))){let m=p.completion;!u||u.label!=m.label||u.detail!=m.detail||u.type!=null&&m.type!=null&&u.type!=m.type||u.apply!=m.apply||u.boost!=m.boost?c.push(p):NS(p.completion)>NS(u)&&(c[c.length-1]=p),u=p.completion}return c}class Hl{constructor(t,n,i,s,r,l){this.options=t,this.attrs=n,this.tooltip=i,this.timestamp=s,this.selected=r,this.disabled=l}setSelected(t,n){return t==this.selected||t>=this.options.length?this:new Hl(this.options,jS(n,t),this.tooltip,this.timestamp,t,this.disabled)}static build(t,n,i,s,r,l){if(s&&!l&&t.some(f=>f.isPending))return s.setDisabled();let c=wP(t,n);if(!c.length)return s&&t.some(f=>f.isPending)?s.setDisabled():null;let u=n.facet(Ye).selectOnOpen?0:-1;if(s&&s.selected!=u&&s.selected!=-1){let f=s.options[s.selected].completion;for(let p=0;p<c.length;p++)if(c[p].completion==f){u=p;break}}return new Hl(c,jS(i,u),{pos:t.reduce((f,p)=>p.hasResult()?Math.min(f,p.from):f,1e8),create:OP,above:r.aboveCursor},s?s.timestamp:Date.now(),u,!1)}map(t){return new Hl(this.options,this.attrs,{...this.tooltip,pos:t.mapPos(this.tooltip.pos)},this.timestamp,this.selected,this.disabled)}setDisabled(){return new Hl(this.options,this.attrs,this.tooltip,this.timestamp,this.selected,!0)}}class Nd{constructor(t,n,i){this.active=t,this.id=n,this.open=i}static start(){return new Nd(vP,"cm-ac-"+Math.floor(Math.random()*2e6).toString(36),null)}update(t){let{state:n}=t,i=n.facet(Ye),r=(i.override||n.languageDataAt("autocomplete",xo(n)).map(uP)).map(u=>(this.active.find(p=>p.source==u)||new ai(u,this.active.some(p=>p.state!=0)?1:0)).update(t,i));r.length==this.active.length&&r.every((u,f)=>u==this.active[f])&&(r=this.active);let l=this.open,c=t.effects.some(u=>u.is(n5));l&&t.docChanged&&(l=l.map(t.changes)),t.selection||r.some(u=>u.hasResult()&&t.changes.touchesRange(u.from,u.to))||!$P(r,this.active)||c?l=Hl.build(r,n,this.id,l,i,c):l&&l.disabled&&!r.some(u=>u.isPending)&&(l=null),!l&&r.every(u=>!u.isPending)&&r.some(u=>u.hasResult())&&(r=r.map(u=>u.hasResult()?new ai(u.source,0):u));for(let u of t.effects)u.is(e5)&&(l=l&&l.setSelected(u.value,this.id));return r==this.active&&l==this.open?this:new Nd(r,this.id,l)}get tooltip(){return this.open?this.open.tooltip:null}get attrs(){return this.open?this.open.attrs:this.active.length?xP:bP}}function $P(e,t){if(e==t)return!0;for(let n=0,i=0;;){for(;n<e.length&&!e[n].hasResult();)n++;for(;i<t.length&&!t[i].hasResult();)i++;let s=n==e.length,r=i==t.length;if(s||r)return s==r;if(e[n++].result!=t[i++].result)return!1}}const xP={"aria-autocomplete":"list"},bP={};function jS(e,t){let n={"aria-autocomplete":"list","aria-haspopup":"listbox","aria-controls":e};return t>-1&&(n["aria-activedescendant"]=e+"-"+t),n}const vP=[];function x3(e,t){if(e.isUserEvent("input.complete")){let i=e.annotation($3);if(i&&t.activateOnCompletion(i))return 12}let n=e.isUserEvent("input.type");return n&&t.activateOnTyping?5:n?1:e.isUserEvent("delete.backward")?2:e.selection?8:e.docChanged?16:0}class ai{constructor(t,n,i=!1){this.source=t,this.state=n,this.explicit=i}hasResult(){return!1}get isPending(){return this.state==1}update(t,n){let i=x3(t,n),s=this;(i&8||i&16&&this.touches(t))&&(s=new ai(s.source,0)),i&4&&s.state==0&&(s=new ai(this.source,1)),s=s.updateFor(t,i);for(let r of t.effects)if(r.is(Td))s=new ai(s.source,1,r.value);else if(r.is(su))s=new ai(s.source,0);else if(r.is(n5))for(let l of r.value)l.source==s.source&&(s=l);return s}updateFor(t,n){return this.map(t.changes)}map(t){return this}touches(t){return t.changes.touchesRange(xo(t.state))}}class Zl extends ai{constructor(t,n,i,s,r,l){super(t,3,n),this.limit=i,this.result=s,this.from=r,this.to=l}hasResult(){return!0}updateFor(t,n){var i;if(!(n&3))return this.map(t.changes);let s=this.result;s.map&&!t.changes.empty&&(s=s.map(s,t.changes));let r=t.changes.mapPos(this.from),l=t.changes.mapPos(this.to,1),c=xo(t.state);if(c>l||!s||n&2&&(xo(t.startState)==this.from||c<this.limit))return new ai(this.source,n&4?1:0);let u=t.changes.mapPos(this.limit);return SP(s.validFor,t.state,r,l)?new Zl(this.source,this.explicit,u,s,r,l):s.update&&(s=s.update(s,r,l,new y3(t.state,c,!1)))?new Zl(this.source,this.explicit,u,s,s.from,(i=s.to)!==null&&i!==void 0?i:xo(t.state)):new ai(this.source,1,this.explicit)}map(t){if(t.empty)return this;let n=this.result.map?this.result.map(this.result,t):this.result;return n?new Zl(this.source,this.explicit,t.mapPos(this.limit),n,t.mapPos(this.from),t.mapPos(this.to,1)):new ai(this.source,0)}touches(t){return t.changes.touchesRange(this.from,this.to)}}function SP(e,t,n,i){if(!e)return!1;let s=t.sliceDoc(n,i);return typeof e=="function"?e(s,n,i,t):w3(e,!0).test(s)}const n5=_t.define({map(e,t){return e.map(n=>n.map(t))}}),vn=Je.define({create(){return Nd.start()},update(e,t){return e.update(t)},provide:e=>[Hw.from(e,t=>t.tooltip),yt.contentAttributes.from(e,t=>t.attrs)]});function i5(e,t){const n=t.completion.apply||t.completion.label;let i=e.state.field(vn).active.find(s=>s.source==t.source);return i instanceof Zl?(typeof n=="string"?e.dispatch({...cP(e.state,n,i.from,i.to),annotations:$3.of(t.completion)}):n(e,t.completion,i.from,i.to),!0):!1}const OP=gP(vn,i5);function Sf(e,t="option"){return n=>{let i=n.state.field(vn,!1);if(!i||!i.open||i.open.disabled||Date.now()-i.open.timestamp<n.state.facet(Ye).interactionDelay)return!1;let s=1,r;t=="page"&&(r=XC(n,i.open.tooltip))&&(s=Math.max(2,Math.floor(r.dom.offsetHeight/r.dom.querySelector("li").offsetHeight)-1));let{length:l}=i.open.options,c=i.open.selected>-1?i.open.selected+s*(e?1:-1):e?0:l-1;return c<0?c=t=="page"?0:l-1:c>=l&&(c=t=="page"?l-1:0),n.dispatch({effects:e5.of(c)}),!0}}const kP=e=>{let t=e.state.field(vn,!1);return e.state.readOnly||!t||!t.open||t.open.selected<0||t.open.disabled||Date.now()-t.open.timestamp<e.state.facet(Ye).interactionDelay?!1:i5(e,t.open.options[t.open.selected])},D0=e=>e.state.field(vn,!1)?(e.dispatch({effects:Td.of(!0)}),!0):!1,CP=e=>{let t=e.state.field(vn,!1);return!t||!t.active.some(n=>n.state!=0)?!1:(e.dispatch({effects:su.of(null)}),!0)};class EP{constructor(t,n){this.active=t,this.context=n,this.time=Date.now(),this.updates=[],this.done=void 0}}const DP=50,TP=1e3,NP=ke.fromClass(class{constructor(e){this.view=e,this.debounceUpdate=-1,this.running=[],this.debounceAccept=-1,this.pendingStart=!1,this.composing=0;for(let t of e.state.field(vn).active)t.isPending&&this.startQuery(t)}update(e){let t=e.state.field(vn),n=e.state.facet(Ye);if(!e.selectionSet&&!e.docChanged&&e.startState.field(vn)==t)return;let i=e.transactions.some(r=>{let l=x3(r,n);return l&8||(r.selection||r.docChanged)&&!(l&3)});for(let r=0;r<this.running.length;r++){let l=this.running[r];if(i||l.context.abortOnDocChange&&e.docChanged||l.updates.length+e.transactions.length>DP&&Date.now()-l.time>TP){for(let c of l.context.abortListeners)try{c()}catch(u){kn(this.view.state,u)}l.context.abortListeners=null,this.running.splice(r--,1)}else l.updates.push(...e.transactions)}this.debounceUpdate>-1&&clearTimeout(this.debounceUpdate),e.transactions.some(r=>r.effects.some(l=>l.is(Td)))&&(this.pendingStart=!0);let s=this.pendingStart?50:n.activateOnTypingDelay;if(this.debounceUpdate=t.active.some(r=>r.isPending&&!this.running.some(l=>l.active.source==r.source))?setTimeout(()=>this.startUpdate(),s):-1,this.composing!=0)for(let r of e.transactions)r.isUserEvent("input.type")?this.composing=2:this.composing==2&&r.selection&&(this.composing=3)}startUpdate(){this.debounceUpdate=-1,this.pendingStart=!1;let{state:e}=this.view,t=e.field(vn);for(let n of t.active)n.isPending&&!this.running.some(i=>i.active.source==n.source)&&this.startQuery(n);this.running.length&&t.open&&t.open.disabled&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(Ye).updateSyncTime))}startQuery(e){let{state:t}=this.view,n=xo(t),i=new y3(t,n,e.explicit,this.view),s=new EP(e,i);this.running.push(s),Promise.resolve(e.source(i)).then(r=>{s.context.aborted||(s.done=r||null,this.scheduleAccept())},r=>{this.view.dispatch({effects:su.of(null)}),kn(this.view.state,r)})}scheduleAccept(){this.running.every(e=>e.done!==void 0)?this.accept():this.debounceAccept<0&&(this.debounceAccept=setTimeout(()=>this.accept(),this.view.state.facet(Ye).updateSyncTime))}accept(){var e;this.debounceAccept>-1&&clearTimeout(this.debounceAccept),this.debounceAccept=-1;let t=[],n=this.view.state.facet(Ye),i=this.view.state.field(vn);for(let s=0;s<this.running.length;s++){let r=this.running[s];if(r.done===void 0)continue;if(this.running.splice(s--,1),r.done){let c=xo(r.updates.length?r.updates[0].startState:this.view.state),u=Math.min(c,r.done.from+(r.active.explicit?0:1)),f=new Zl(r.active.source,r.active.explicit,u,r.done,r.done.from,(e=r.done.to)!==null&&e!==void 0?e:c);for(let p of r.updates)f=f.update(p,n);if(f.hasResult()){t.push(f);continue}}let l=i.active.find(c=>c.source==r.active.source);if(l&&l.isPending)if(r.done==null){let c=new ai(r.active.source,0);for(let u of r.updates)c=c.update(u,n);c.isPending||t.push(c)}else this.startQuery(l)}(t.length||i.open&&i.open.disabled)&&this.view.dispatch({effects:n5.of(t)})}},{eventHandlers:{blur(e){let t=this.view.state.field(vn,!1);if(t&&t.tooltip&&this.view.state.facet(Ye).closeOnBlur){let n=t.open&&XC(this.view,t.open.tooltip);(!n||!n.dom.contains(e.relatedTarget))&&setTimeout(()=>this.view.dispatch({effects:su.of(null)}),10)}},compositionstart(){this.composing=1},compositionend(){this.composing==3&&setTimeout(()=>this.view.dispatch({effects:Td.of(!1)}),20),this.composing=0}}}),jP=typeof navigator=="object"&&/Win/.test(navigator.platform),RP=Nr.highest(yt.domEventHandlers({keydown(e,t){let n=t.state.field(vn,!1);if(!n||!n.open||n.open.disabled||n.open.selected<0||e.key.length>1||e.ctrlKey&&!(jP&&e.altKey)||e.metaKey)return!1;let i=n.open.options[n.open.selected],s=n.active.find(l=>l.source==i.source),r=i.completion.commitCharacters||s.result.commitCharacters;return r&&r.indexOf(e.key)>-1&&i5(t,i),!1}})),_P=yt.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"···"',opacity:.5,display:"block",textAlign:"center",cursor:"pointer"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box",whiteSpace:"pre-line"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'ƒ'"}},".cm-completionIcon-class":{"&:after":{content:"'○'"}},".cm-completionIcon-interface":{"&:after":{content:"'◌'"}},".cm-completionIcon-variable":{"&:after":{content:"'𝑥'"}},".cm-completionIcon-constant":{"&:after":{content:"'𝐶'"}},".cm-completionIcon-type":{"&:after":{content:"'𝑡'"}},".cm-completionIcon-enum":{"&:after":{content:"'∪'"}},".cm-completionIcon-property":{"&:after":{content:"'□'"}},".cm-completionIcon-keyword":{"&:after":{content:"'🔑︎'"}},".cm-completionIcon-namespace":{"&:after":{content:"'▢'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}}),ru={brackets:["(","[","{","'",'"'],before:")]}:;>",stringPrefixes:[]},mo=_t.define({map(e,t){let n=t.mapPos(e,-1,an.TrackAfter);return n??void 0}}),s5=new class extends Sr{};s5.startSide=1;s5.endSide=-1;const b3=Je.define({create(){return Bt.empty},update(e,t){if(e=e.map(t.changes),t.selection){let n=t.state.doc.lineAt(t.selection.main.head);e=e.update({filter:i=>i>=n.from&&i<=n.to})}for(let n of t.effects)n.is(mo)&&(e=e.update({add:[s5.range(n.value,n.value+1)]}));return e}});function MP(){return[HP,b3]}const T0="()[]{}<>«»»«[]{}";function v3(e){for(let t=0;t<T0.length;t+=2)if(T0.charCodeAt(t)==e)return T0.charAt(t+1);return ww(e<128?e:e+1)}function S3(e,t){return e.languageDataAt("closeBrackets",t)[0]||ru}const AP=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),HP=yt.inputHandler.of((e,t,n,i)=>{if((AP?e.composing:e.compositionStarted)||e.state.readOnly)return!1;let s=e.state.selection.main;if(i.length>2||i.length==2&&Yi(bn(i,0))==1||t!=s.from||n!=s.to)return!1;let r=YP(e.state,i);return r?(e.dispatch(r),!0):!1}),zP=({state:e,dispatch:t})=>{if(e.readOnly)return!1;let i=S3(e,e.selection.main.head).brackets||ru.brackets,s=null,r=e.changeByRange(l=>{if(l.empty){let c=GP(e.doc,l.head);for(let u of i)if(u==c&&fp(e.doc,l.head)==v3(bn(u,0)))return{changes:{from:l.head-u.length,to:l.head+u.length},range:lt.cursor(l.head-u.length)}}return{range:s=l}});return s||t(e.update(r,{scrollIntoView:!0,userEvent:"delete.backward"})),!s},BP=[{key:"Backspace",run:zP}];function YP(e,t){let n=S3(e,e.selection.main.head),i=n.brackets||ru.brackets;for(let s of i){let r=v3(bn(s,0));if(t==s)return r==s?PP(e,s,i.indexOf(s+s+s)>-1,n):LP(e,s,r,n.before||ru.before);if(t==r&&O3(e,e.selection.main.from))return QP(e,s,r)}return null}function O3(e,t){let n=!1;return e.field(b3).between(0,e.doc.length,i=>{i==t&&(n=!0)}),n}function fp(e,t){let n=e.sliceString(t,t+2);return n.slice(0,Yi(bn(n,0)))}function GP(e,t){let n=e.sliceString(t-2,t);return Yi(bn(n,0))==n.length?n:n.slice(1)}function LP(e,t,n,i){let s=null,r=e.changeByRange(l=>{if(!l.empty)return{changes:[{insert:t,from:l.from},{insert:n,from:l.to}],effects:mo.of(l.to+t.length),range:lt.range(l.anchor+t.length,l.head+t.length)};let c=fp(e.doc,l.head);return!c||/\s/.test(c)||i.indexOf(c)>-1?{changes:{insert:t+n,from:l.head},effects:mo.of(l.head+t.length),range:lt.cursor(l.head+t.length)}:{range:s=l}});return s?null:e.update(r,{scrollIntoView:!0,userEvent:"input.type"})}function QP(e,t,n){let i=null,s=e.changeByRange(r=>r.empty&&fp(e.doc,r.head)==n?{changes:{from:r.head,to:r.head+n.length,insert:n},range:lt.cursor(r.head+n.length)}:i={range:r});return i?null:e.update(s,{scrollIntoView:!0,userEvent:"input.type"})}function PP(e,t,n,i){let s=i.stringPrefixes||ru.stringPrefixes,r=null,l=e.changeByRange(c=>{if(!c.empty)return{changes:[{insert:t,from:c.from},{insert:t,from:c.to}],effects:mo.of(c.to+t.length),range:lt.range(c.anchor+t.length,c.head+t.length)};let u=c.head,f=fp(e.doc,u),p;if(f==t){if(RS(e,u))return{changes:{insert:t+t,from:u},effects:mo.of(u+t.length),range:lt.cursor(u+t.length)};if(O3(e,u)){let g=n&&e.sliceDoc(u,u+t.length*3)==t+t+t?t+t+t:t;return{changes:{from:u,to:u+g.length,insert:g},range:lt.cursor(u+g.length)}}}else{if(n&&e.sliceDoc(u-2*t.length,u)==t+t&&(p=_S(e,u-2*t.length,s))>-1&&RS(e,p))return{changes:{insert:t+t+t+t,from:u},effects:mo.of(u+t.length),range:lt.cursor(u+t.length)};if(e.charCategorizer(u)(f)!=pe.Word&&_S(e,u,s)>-1&&!qP(e,u,t,s))return{changes:{insert:t+t,from:u},effects:mo.of(u+t.length),range:lt.cursor(u+t.length)}}return{range:r=c}});return r?null:e.update(l,{scrollIntoView:!0,userEvent:"input.type"})}function RS(e,t){let n=Ke(e).resolveInner(t+1);return n.parent&&n.from==t}function qP(e,t,n,i){let s=Ke(e).resolveInner(t,-1),r=i.reduce((l,c)=>Math.max(l,c.length),0);for(let l=0;l<5;l++){let c=e.sliceDoc(s.from,Math.min(s.to,s.from+n.length+r)),u=c.indexOf(n);if(!u||u>-1&&i.indexOf(c.slice(0,u))>-1){let p=s.firstChild;for(;p&&p.from==s.from&&p.to-p.from>n.length+u;){if(e.sliceDoc(p.to-n.length,p.to)==n)return!1;p=p.firstChild}return!0}let f=s.to==t&&s.parent;if(!f)break;s=f}return!1}function _S(e,t,n){let i=e.charCategorizer(t);if(i(e.sliceDoc(t-1,t))!=pe.Word)return t;for(let s of n){let r=t-s.length;if(e.sliceDoc(r,t)==s&&i(e.sliceDoc(r-1,r))!=pe.Word)return r}return-1}function WP(e={}){return[RP,vn,Ye.of(e),NP,ZP,_P]}const k3=[{key:"Ctrl-Space",run:D0},{mac:"Alt-`",run:D0},{mac:"Alt-i",run:D0},{key:"Escape",run:CP},{key:"ArrowDown",run:Sf(!0)},{key:"ArrowUp",run:Sf(!1)},{key:"PageDown",run:Sf(!0,"page")},{key:"PageUp",run:Sf(!1,"page")},{key:"Enter",run:kP}],ZP=Nr.highest(Mw.computeN([Ye],e=>e.facet(Ye).defaultKeymap?[k3]:[]));class MS{constructor(t,n,i){this.from=t,this.to=n,this.diagnostic=i}}class co{constructor(t,n,i){this.diagnostics=t,this.panel=n,this.selected=i}static init(t,n,i){let s=i.facet(ou).markerFilter;s&&(t=s(t,i));let r=t.slice().sort((y,$)=>y.from-$.from||y.to-$.to),l=new Ts,c=[],u=0,f=i.doc.iter(),p=0,m=i.doc.length;for(let y=0;;){let $=y==r.length?null:r[y];if(!$&&!c.length)break;let b,S;if(c.length)b=u,S=c.reduce((k,D)=>Math.min(k,D.to),$&&$.from>b?$.from:1e8);else{if(b=$.from,b>m)break;S=$.to,c.push($),y++}for(;y<r.length;){let k=r[y];if(k.from==b&&(k.to>k.from||k.to==b))c.push(k),y++,S=Math.min(k.to,S);else{S=Math.min(k.from,S);break}}S=Math.min(S,m);let O=!1;if(c.some(k=>k.from==b&&(k.to==S||S==m))&&(O=b==S,!O&&S-b<10)){let k=b-(p+f.value.length);k>0&&(f.next(k),p=b);for(let D=b;;){if(D>=S){O=!0;break}if(!f.lineBreak&&p+f.value.length>D)break;D=p+f.value.length,p+=f.value.length,f.next()}}let E=rq(c);if(O)l.add(b,b,Tt.widget({widget:new eq(E),diagnostics:c.slice()}));else{let k=c.reduce((D,_)=>_.markClass?D+" "+_.markClass:D,"");l.add(b,S,Tt.mark({class:"cm-lintRange cm-lintRange-"+E+k,diagnostics:c.slice(),inclusiveEnd:c.some(D=>D.to>S)}))}if(u=S,u==m)break;for(let k=0;k<c.length;k++)c[k].to<=u&&c.splice(k--,1)}let g=l.finish();return new co(g,n,Tr(g))}}function Tr(e,t=null,n=0){let i=null;return e.between(n,1e9,(s,r,{spec:l})=>{if(!(t&&l.diagnostics.indexOf(t)<0))if(!i)i=new MS(s,r,t||l.diagnostics[0]);else{if(l.diagnostics.indexOf(i.diagnostic)<0)return!1;i=new MS(i.from,r,i.diagnostic)}}),i}function UP(e,t){let n=t.pos,i=t.end||n,s=e.state.facet(ou).hideOn(e,n,i);if(s!=null)return s;let r=e.startState.doc.lineAt(t.pos);return!!(e.effects.some(l=>l.is(C3))||e.changes.touchesRange(r.from,Math.max(r.to,i)))}function IP(e,t){return e.field(qn,!1)?t:t.concat(_t.appendConfig.of(oq))}const C3=_t.define(),r5=_t.define(),E3=_t.define(),qn=Je.define({create(){return new co(Tt.none,null,null)},update(e,t){if(t.docChanged&&e.diagnostics.size){let n=e.diagnostics.map(t.changes),i=null,s=e.panel;if(e.selected){let r=t.changes.mapPos(e.selected.from,1);i=Tr(n,e.selected.diagnostic,r)||Tr(n,null,r)}!n.size&&s&&t.state.facet(ou).autoPanel&&(s=null),e=new co(n,s,i)}for(let n of t.effects)if(n.is(C3)){let i=t.state.facet(ou).autoPanel?n.value.length?lu.open:null:e.panel;e=co.init(n.value,i,t.state)}else n.is(r5)?e=new co(e.diagnostics,n.value?lu.open:null,e.selected):n.is(E3)&&(e=new co(e.diagnostics,e.panel,n.value));return e},provide:e=>[Kc.from(e,t=>t.panel),yt.decorations.from(e,t=>t.diagnostics)]}),FP=Tt.mark({class:"cm-lintRange cm-lintRange-active"});function VP(e,t,n){let{diagnostics:i}=e.state.field(qn),s,r=-1,l=-1;i.between(t-(n<0?1:0),t+(n>0?1:0),(u,f,{spec:p})=>{if(t>=u&&t<=f&&(u==f||(t>u||n>0)&&(t<f||n<0)))return s=p.diagnostics,r=u,l=f,!1});let c=e.state.facet(ou).tooltipFilter;return s&&c&&(s=c(s,e.state)),s?{pos:r,end:l,above:!0,create(){return{dom:XP(e,s)}}}:null}function XP(e,t){return ne("ul",{class:"cm-tooltip-lint"},t.map(n=>T3(e,n,!1)))}const KP=e=>{let t=e.state.field(qn,!1);(!t||!t.panel)&&e.dispatch({effects:IP(e.state,[r5.of(!0)])});let n=zw(e,lu.open);return n&&n.dom.querySelector(".cm-panel-lint ul").focus(),!0},AS=e=>{let t=e.state.field(qn,!1);return!t||!t.panel?!1:(e.dispatch({effects:r5.of(!1)}),!0)},JP=e=>{let t=e.state.field(qn,!1);if(!t)return!1;let n=e.state.selection.main,i=Tr(t.diagnostics,null,n.to+1);return!i&&(i=Tr(t.diagnostics,null,0),!i||i.from==n.from&&i.to==n.to)?!1:(e.dispatch({selection:{anchor:i.from,head:i.to},scrollIntoView:!0}),YY(e,i.from,1,{tooltip:N3,until:s=>s.docChanged||s.newSelection.main.head<i.from||s.newSelection.main.head>i.to}),!0)},tq=[{key:"Mod-Shift-m",run:KP,preventDefault:!0},{key:"F8",run:JP}],ou=wt.define({combine(e){return{sources:e.map(t=>t.source).filter(t=>t!=null),...Xi(e.map(t=>t.config),{delay:750,markerFilter:null,tooltipFilter:null,needsRefresh:null,hideOn:()=>null},{delay:Math.max,markerFilter:HS,tooltipFilter:HS,needsRefresh:(t,n)=>t?n?i=>t(i)||n(i):t:n,hideOn:(t,n)=>t?n?(i,s,r)=>t(i,s,r)||n(i,s,r):t:n,autoPanel:(t,n)=>t||n})}}});function HS(e,t){return e?t?(n,i)=>t(e(n,i),i):e:t}function D3(e){let t=[];if(e)t:for(let{name:n}of e){for(let i=0;i<n.length;i++){let s=n[i];if(/[a-zA-Z]/.test(s)&&!t.some(r=>r.toLowerCase()==s.toLowerCase())){t.push(s);continue t}}t.push("")}return t}function T3(e,t,n){var i;let s=n?D3(t.actions):[];return ne("li",{class:"cm-diagnostic cm-diagnostic-"+t.severity},ne("span",{class:"cm-diagnosticText"},t.renderMessage?t.renderMessage(e):t.message),(i=t.actions)===null||i===void 0?void 0:i.map((r,l)=>{let c=!1,u=y=>{if(y.preventDefault(),c)return;c=!0;let $=Tr(e.state.field(qn).diagnostics,t);$&&r.apply(e,$.from,$.to)},{name:f}=r,p=s[l]?f.indexOf(s[l]):-1,m=p<0?f:[f.slice(0,p),ne("u",f.slice(p,p+1)),f.slice(p+1)],g=r.markClass?" "+r.markClass:"";return ne("button",{type:"button",class:"cm-diagnosticAction"+g,onclick:u,onmousedown:u,"aria-label":` Action: ${f}${p<0?"":` (access key "${s[l]})"`}.`},m)}),t.source&&ne("div",{class:"cm-diagnosticSource"},t.source))}class eq extends _s{constructor(t){super(),this.sev=t}eq(t){return t.sev==this.sev}toDOM(){return ne("span",{class:"cm-lintPoint cm-lintPoint-"+this.sev})}}class zS{constructor(t,n){this.diagnostic=n,this.id="item_"+Math.floor(Math.random()*4294967295).toString(16),this.dom=T3(t,n,!0),this.dom.id=this.id,this.dom.setAttribute("role","option")}}class lu{constructor(t){this.view=t,this.items=[];let n=s=>{if(!(s.ctrlKey||s.altKey||s.metaKey)){if(s.keyCode==27)AS(this.view),this.view.focus();else if(s.keyCode==38||s.keyCode==33)this.moveSelection((this.selectedIndex-1+this.items.length)%this.items.length);else if(s.keyCode==40||s.keyCode==34)this.moveSelection((this.selectedIndex+1)%this.items.length);else if(s.keyCode==36)this.moveSelection(0);else if(s.keyCode==35)this.moveSelection(this.items.length-1);else if(s.keyCode==13)this.view.focus();else if(s.keyCode>=65&&s.keyCode<=90&&this.selectedIndex>=0){let{diagnostic:r}=this.items[this.selectedIndex],l=D3(r.actions);for(let c=0;c<l.length;c++)if(l[c].toUpperCase().charCodeAt(0)==s.keyCode){let u=Tr(this.view.state.field(qn).diagnostics,r);u&&r.actions[c].apply(t,u.from,u.to)}}else return;s.preventDefault()}},i=s=>{for(let r=0;r<this.items.length;r++)this.items[r].dom.contains(s.target)&&this.moveSelection(r)};this.list=ne("ul",{tabIndex:0,role:"listbox","aria-label":this.view.state.phrase("Diagnostics"),onkeydown:n,onclick:i}),this.dom=ne("div",{class:"cm-panel-lint"},this.list,ne("button",{type:"button",name:"close","aria-label":this.view.state.phrase("close"),onclick:()=>AS(this.view)},"×")),this.update()}get selectedIndex(){let t=this.view.state.field(qn).selected;if(!t)return-1;for(let n=0;n<this.items.length;n++)if(this.items[n].diagnostic==t.diagnostic)return n;return-1}update(){let{diagnostics:t,selected:n}=this.view.state.field(qn),i=0,s=!1,r=null,l=new Set;for(t.between(0,this.view.state.doc.length,(c,u,{spec:f})=>{for(let p of f.diagnostics){if(l.has(p))continue;l.add(p);let m=-1,g;for(let y=i;y<this.items.length;y++)if(this.items[y].diagnostic==p){m=y;break}m<0?(g=new zS(this.view,p),this.items.splice(i,0,g),s=!0):(g=this.items[m],m>i&&(this.items.splice(i,m-i),s=!0)),n&&g.diagnostic==n.diagnostic?g.dom.hasAttribute("aria-selected")||(g.dom.setAttribute("aria-selected","true"),r=g):g.dom.hasAttribute("aria-selected")&&g.dom.removeAttribute("aria-selected"),i++}});i<this.items.length&&!(this.items.length==1&&this.items[0].diagnostic.from<0);)s=!0,this.items.pop();this.items.length==0&&(this.items.push(new zS(this.view,{from:-1,to:-1,severity:"info",message:this.view.state.phrase("No diagnostics")})),s=!0),r?(this.list.setAttribute("aria-activedescendant",r.id),this.view.requestMeasure({key:this,read:()=>({sel:r.dom.getBoundingClientRect(),panel:this.list.getBoundingClientRect()}),write:({sel:c,panel:u})=>{let f=u.height/this.list.offsetHeight;c.top<u.top?this.list.scrollTop-=(u.top-c.top)/f:c.bottom>u.bottom&&(this.list.scrollTop+=(c.bottom-u.bottom)/f)}})):this.selectedIndex<0&&this.list.removeAttribute("aria-activedescendant"),s&&this.sync()}sync(){let t=this.list.firstChild;function n(){let i=t;t=i.nextSibling,i.remove()}for(let i of this.items)if(i.dom.parentNode==this.list){for(;t!=i.dom;)n();t=i.dom.nextSibling}else this.list.insertBefore(i.dom,t);for(;t;)n()}moveSelection(t){if(this.selectedIndex<0)return;let n=this.view.state.field(qn),i=Tr(n.diagnostics,this.items[t].diagnostic);i&&this.view.dispatch({selection:{anchor:i.from,head:i.to},scrollIntoView:!0,effects:E3.of(i)})}static open(t){return new lu(t)}}function nq(e,t='viewBox="0 0 40 40"'){return`url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" ${t}>${encodeURIComponent(e)}</svg>')`}function Of(e){return nq(`<path d="m0 2.5 l2 -1.5 l1 0 l2 1.5 l1 0" stroke="${e}" fill="none" stroke-width=".7"/>`,'width="6" height="3"')}const iq=yt.baseTheme({".cm-diagnostic":{padding:"3px 6px 3px 8px",marginLeft:"-1px",display:"block",whiteSpace:"pre-wrap"},".cm-diagnostic-error":{borderLeft:"5px solid #d11"},".cm-diagnostic-warning":{borderLeft:"5px solid orange"},".cm-diagnostic-info":{borderLeft:"5px solid #999"},".cm-diagnostic-hint":{borderLeft:"5px solid #66d"},".cm-diagnosticAction":{font:"inherit",border:"none",padding:"2px 4px",backgroundColor:"#444",color:"white",borderRadius:"3px",marginLeft:"8px",cursor:"pointer"},".cm-diagnosticSource":{fontSize:"70%",opacity:.7},".cm-lintRange":{backgroundPosition:"left bottom",backgroundRepeat:"repeat-x",paddingBottom:"0.7px"},".cm-lintRange-error":{backgroundImage:Of("#f11")},".cm-lintRange-warning":{backgroundImage:Of("orange")},".cm-lintRange-info":{backgroundImage:Of("#999")},".cm-lintRange-hint":{backgroundImage:Of("#66d")},".cm-lintRange-active":{backgroundColor:"#ffdd9980"},".cm-tooltip-lint":{padding:0,margin:0},".cm-lintPoint":{position:"relative","&:after":{content:'""',position:"absolute",bottom:0,left:"-2px",borderLeft:"3px solid transparent",borderRight:"3px solid transparent",borderBottom:"4px solid #d11"}},".cm-lintPoint-warning":{"&:after":{borderBottomColor:"orange"}},".cm-lintPoint-info":{"&:after":{borderBottomColor:"#999"}},".cm-lintPoint-hint":{"&:after":{borderBottomColor:"#66d"}},".cm-panel.cm-panel-lint":{position:"relative","& ul":{maxHeight:"100px",overflowY:"auto","& [aria-selected]":{backgroundColor:"#ddd","& u":{textDecoration:"underline"}},"&:focus [aria-selected]":{background_fallback:"#bdf",backgroundColor:"Highlight",color_fallback:"white",color:"HighlightText"},"& u":{textDecoration:"none"},padding:0,margin:0},"& [name=close]":{position:"absolute",top:"0",right:"2px",background:"inherit",border:"none",font:"inherit",padding:0,margin:0}},"&dark .cm-lintRange-active":{backgroundColor:"#86714a80"},"&dark .cm-panel.cm-panel-lint ul":{"& [aria-selected]":{backgroundColor:"#2e343e"}}});function sq(e){return e=="error"?4:e=="warning"?3:e=="info"?2:1}function rq(e){let t="hint",n=1;for(let i of e){let s=sq(i.severity);s>n&&(n=s,t=i.severity)}return t}const N3=BY(VP,{hideOn:UP}),oq=[qn,yt.decorations.compute([qn],e=>{let{selected:t,panel:n}=e.field(qn);return!t||!n||t.from==t.to?Tt.none:Tt.set([FP.range(t.from,t.to)])}),N3,iq],lq=[KY(),eG(),mY(),EL(),VG(),sY(),cY(),Wt.allowMultipleSelections.of(!0),HG(),bE(tL,{fallback:!0}),lL(),MP(),WP(),EY(),NY(),bY(),HQ(),Mw.of([...BP,...jQ,...iP,...HL,...ZG,...k3,...tq])];var BS={};class jd{constructor(t,n,i,s,r,l,c,u,f,p=0,m){this.p=t,this.stack=n,this.state=i,this.reducePos=s,this.pos=r,this.score=l,this.buffer=c,this.bufferBase=u,this.curContext=f,this.lookAhead=p,this.parent=m}toString(){return`[${this.stack.filter((t,n)=>n%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(t,n,i=0){let s=t.parser.context;return new jd(t,[],n,i,i,0,[],0,s?new YS(s,s.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(t,n){this.stack.push(this.state,n,this.bufferBase+this.buffer.length),this.state=t}reduce(t){var n;let i=t>>19,s=t&65535,{parser:r}=this.p,l=this.reducePos<this.pos-25&&this.setLookAhead(this.pos),c=r.dynamicPrecedence(s);if(c&&(this.score+=c),i==0){s<r.minRepeatTerm&&this.reducePos<this.pos&&(this.reducePos=this.pos),this.pushState(r.getGoto(this.state,s,!0),this.reducePos),s<r.minRepeatTerm&&this.storeNode(s,this.reducePos,this.reducePos,l?8:4,!0),this.reduceContext(s,this.reducePos);return}let u=this.stack.length-(i-1)*3-(t&262144?6:0),f=u?this.stack[u-2]:this.p.ranges[0].from;s<r.minRepeatTerm&&f==this.reducePos&&this.reducePos<this.pos&&(this.reducePos=this.pos);let p=this.reducePos-f;p>=2e3&&!(!((n=this.p.parser.nodeSet.types[s])===null||n===void 0)&&n.isAnonymous)&&(f==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=p):this.p.lastBigReductionSize<p&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=f,this.p.lastBigReductionSize=p));let m=u?this.stack[u-1]:0,g=this.bufferBase+this.buffer.length-m;if(s<r.minRepeatTerm||t&131072){let y=r.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(s,f,y,g+4,!0)}if(t&262144)this.state=this.stack[u];else{let y=this.stack[u-3];this.state=r.getGoto(y,s,!0)}for(;this.stack.length>u;)this.stack.pop();this.reduceContext(s,f)}storeNode(t,n,i,s=4,r=!1){if(t==0&&(!this.stack.length||this.stack[this.stack.length-1]<this.buffer.length+this.bufferBase)){let l=this.buffer.length;if(l>0&&this.buffer[l-4]==0&&this.buffer[l-1]>-1){if(n==i)return;if(this.buffer[l-2]>=n){this.buffer[l-2]=i;return}}}if(!r||this.pos==i)this.buffer.push(t,n,i,s);else{let l=this.buffer.length;if(l>0&&(this.buffer[l-4]!=0||this.buffer[l-1]<0)){let c=!1;for(let u=l;u>0&&this.buffer[u-2]>i;u-=4)if(this.buffer[u-1]>=0){c=!0;break}if(c)for(;l>0&&this.buffer[l-2]>i;)this.buffer[l]=this.buffer[l-4],this.buffer[l+1]=this.buffer[l-3],this.buffer[l+2]=this.buffer[l-2],this.buffer[l+3]=this.buffer[l-1],l-=4,s>4&&(s-=4)}this.buffer[l]=t,this.buffer[l+1]=n,this.buffer[l+2]=i,this.buffer[l+3]=s}}shift(t,n,i,s){if(t&131072)this.pushState(t&65535,this.pos);else if((t&262144)==0){let r=t,{parser:l}=this.p;this.pos=s;let c=l.stateFlag(r,1);!c&&(s>i||n<=l.maxNode)&&(this.reducePos=s),this.pushState(r,c?i:Math.min(i,this.reducePos)),this.shiftContext(n,i),n<=l.maxNode&&this.buffer.push(n,i,s,4)}else this.pos=s,this.shiftContext(n,i),n<=this.p.parser.maxNode&&this.buffer.push(n,i,s,4)}apply(t,n,i,s){t&65536?this.reduce(t):this.shift(t,n,i,s)}useNode(t,n){let i=this.p.reused.length-1;(i<0||this.p.reused[i]!=t)&&(this.p.reused.push(t),i++);let s=this.pos;this.reducePos=this.pos=s+t.length,this.pushState(n,s),this.buffer.push(i,s,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,t,this,this.p.stream.reset(this.pos-t.length)))}split(){let t=this,n=t.buffer.length;for(n&&t.buffer[n-4]==0&&(n-=4);n>0&&t.buffer[n-2]>t.reducePos;)n-=4;let i=t.buffer.slice(n),s=t.bufferBase+n;for(;t&&s==t.bufferBase;)t=t.parent;return new jd(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,i,s,this.curContext,this.lookAhead,t)}recoverByDelete(t,n){let i=t<=this.p.parser.maxNode;i&&this.storeNode(t,this.pos,n,4),this.storeNode(0,this.pos,n,i?8:4),this.pos=this.reducePos=n,this.score-=190}canShift(t){for(let n=new aq(this);;){let i=this.p.parser.stateSlot(n.state,4)||this.p.parser.hasAction(n.state,t);if(i==0)return!1;if((i&65536)==0)return!0;n.reduce(i)}}recoverByInsert(t){if(this.stack.length>=300)return[];let n=this.p.parser.nextStates(this.state);if(n.length>8||this.stack.length>=120){let s=[];for(let r=0,l;r<n.length;r+=2)(l=n[r+1])!=this.state&&this.p.parser.hasAction(l,t)&&s.push(n[r],l);if(this.stack.length<120)for(let r=0;s.length<8&&r<n.length;r+=2){let l=n[r+1];s.some((c,u)=>u&1&&c==l)||s.push(n[r],l)}n=s}let i=[];for(let s=0;s<n.length&&i.length<4;s+=2){let r=n[s+1];if(r==this.state)continue;let l=this.split();l.pushState(r,this.pos),l.storeNode(0,l.pos,l.pos,4,!0),l.shiftContext(n[s],this.pos),l.reducePos=this.pos,l.score-=200,i.push(l)}return i}forceReduce(){let{parser:t}=this.p,n=t.stateSlot(this.state,5);if((n&65536)==0)return!1;if(!t.validAction(this.state,n)){let i=n>>19,s=n&65535,r=this.stack.length-i*3;if(r<0||t.getGoto(this.stack[r],s,!1)<0){let l=this.findForcedReduction();if(l==null)return!1;n=l}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(n),!0}findForcedReduction(){let{parser:t}=this.p,n=[],i=(s,r)=>{if(!n.includes(s))return n.push(s),t.allActions(s,l=>{if(!(l&393216))if(l&65536){let c=(l>>19)-r;if(c>1){let u=l&65535,f=this.stack.length-c*3;if(f>=0&&t.getGoto(this.stack[f],u,!1)>=0)return c<<19|65536|u}}else{let c=i(l,r+1);if(c!=null)return c}})};return i(this.state,0)}forceAll(){for(;!this.p.parser.stateFlag(this.state,2);)if(!this.forceReduce()){this.storeNode(0,this.pos,this.pos,4,!0);break}return this}get deadEnd(){if(this.stack.length!=3)return!1;let{parser:t}=this.p;return t.data[t.stateSlot(this.state,1)]==65535&&!t.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(t){if(this.state!=t.state||this.stack.length!=t.stack.length)return!1;for(let n=0;n<this.stack.length;n+=3)if(this.stack[n]!=t.stack[n])return!1;return!0}get parser(){return this.p.parser}dialectEnabled(t){return this.p.parser.dialect.flags[t]}shiftContext(t,n){this.curContext&&this.updateContext(this.curContext.tracker.shift(this.curContext.context,t,this,this.p.stream.reset(n)))}reduceContext(t,n){this.curContext&&this.updateContext(this.curContext.tracker.reduce(this.curContext.context,t,this,this.p.stream.reset(n)))}emitContext(){let t=this.buffer.length-1;(t<0||this.buffer[t]!=-3)&&this.buffer.push(this.curContext.hash,this.pos,this.pos,-3)}emitLookAhead(){let t=this.buffer.length-1;(t<0||this.buffer[t]!=-4)&&this.buffer.push(this.lookAhead,this.pos,this.pos,-4)}updateContext(t){if(t!=this.curContext.context){let n=new YS(this.curContext.tracker,t);n.hash!=this.curContext.hash&&this.emitContext(),this.curContext=n}}setLookAhead(t){return t<=this.lookAhead?!1:(this.emitLookAhead(),this.lookAhead=t,!0)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class YS{constructor(t,n){this.tracker=t,this.context=n,this.hash=t.strict?t.hash(n):0}}class aq{constructor(t){this.start=t,this.state=t.state,this.stack=t.stack,this.base=this.stack.length}reduce(t){let n=t&65535,i=t>>19;i==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(i-1)*3;let s=this.start.p.parser.getGoto(this.stack[this.base-3],n,!0);this.state=s}}class Rd{constructor(t,n,i){this.stack=t,this.pos=n,this.index=i,this.buffer=t.buffer,this.index==0&&this.maybeNext()}static create(t,n=t.bufferBase+t.buffer.length){return new Rd(t,n,n-t.bufferBase)}maybeNext(){let t=this.stack.parent;t!=null&&(this.index=this.stack.bufferBase-t.bufferBase,this.stack=t,this.buffer=t.buffer)}get id(){return this.buffer[this.index-4]}get start(){return this.buffer[this.index-3]}get end(){return this.buffer[this.index-2]}get size(){return this.buffer[this.index-1]}next(){this.index-=4,this.pos-=4,this.index==0&&this.maybeNext()}fork(){return new Rd(this.stack,this.pos,this.index)}}function kf(e,t=Uint16Array){if(typeof e!="string")return e;let n=null;for(let i=0,s=0;i<e.length;){let r=0;for(;;){let l=e.charCodeAt(i++),c=!1;if(l==126){r=65535;break}l>=92&&l--,l>=34&&l--;let u=l-32;if(u>=46&&(u-=46,c=!0),r+=u,c)break;r*=46}n?n[s++]=r:n=new t(r)}return n}class Lf{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const GS=new Lf;class cq{constructor(t,n){this.input=t,this.ranges=n,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=GS,this.rangeIndex=0,this.pos=this.chunkPos=n[0].from,this.range=n[0],this.end=n[n.length-1].to,this.readNext()}resolveOffset(t,n){let i=this.range,s=this.rangeIndex,r=this.pos+t;for(;r<i.from;){if(!s)return null;let l=this.ranges[--s];r-=i.from-l.to,i=l}for(;n<0?r>i.to:r>=i.to;){if(s==this.ranges.length-1)return null;let l=this.ranges[++s];r+=l.from-i.to,i=l}return r}clipPos(t){if(t>=this.range.from&&t<this.range.to)return t;for(let n of this.ranges)if(n.to>t)return Math.max(t,n.from);return this.end}peek(t){let n=this.chunkOff+t,i,s;if(n>=0&&n<this.chunk.length)i=this.pos+t,s=this.chunk.charCodeAt(n);else{let r=this.resolveOffset(t,1);if(r==null)return-1;if(i=r,i>=this.chunk2Pos&&i<this.chunk2Pos+this.chunk2.length)s=this.chunk2.charCodeAt(i-this.chunk2Pos);else{let l=this.rangeIndex,c=this.range;for(;c.to<=i;)c=this.ranges[++l];this.chunk2=this.input.chunk(this.chunk2Pos=i),i+this.chunk2.length>c.to&&(this.chunk2=this.chunk2.slice(0,c.to-i)),s=this.chunk2.charCodeAt(0)}}return i>=this.token.lookAhead&&(this.token.lookAhead=i+1),s}acceptToken(t,n=0){let i=n?this.resolveOffset(n,-1):this.pos;if(i==null||i<this.token.start)throw new RangeError("Token end out of bounds");this.token.value=t,this.token.end=i}acceptTokenTo(t,n){this.token.value=t,this.token.end=n}getChunk(){if(this.pos>=this.chunk2Pos&&this.pos<this.chunk2Pos+this.chunk2.length){let{chunk:t,chunkPos:n}=this;this.chunk=this.chunk2,this.chunkPos=this.chunk2Pos,this.chunk2=t,this.chunk2Pos=n,this.chunkOff=this.pos-this.chunkPos}else{this.chunk2=this.chunk,this.chunk2Pos=this.chunkPos;let t=this.input.chunk(this.pos),n=this.pos+t.length;this.chunk=n>this.range.to?t.slice(0,this.range.to-this.pos):t,this.chunkPos=this.pos,this.chunkOff=0}}readNext(){return this.chunkOff>=this.chunk.length&&(this.getChunk(),this.chunkOff==this.chunk.length)?this.next=-1:this.next=this.chunk.charCodeAt(this.chunkOff)}advance(t=1){for(this.chunkOff+=t;this.pos+t>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();t-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=t,this.pos>=this.token.lookAhead&&(this.token.lookAhead=this.pos+1),this.readNext()}setDone(){return this.pos=this.chunkPos=this.end,this.range=this.ranges[this.rangeIndex=this.ranges.length-1],this.chunk="",this.next=-1}reset(t,n){if(n?(this.token=n,n.start=t,n.lookAhead=t+1,n.value=n.extended=-1):this.token=GS,this.pos!=t){if(this.pos=t,t==this.end)return this.setDone(),this;for(;t<this.range.from;)this.range=this.ranges[--this.rangeIndex];for(;t>=this.range.to;)this.range=this.ranges[++this.rangeIndex];t>=this.chunkPos&&t<this.chunkPos+this.chunk.length?this.chunkOff=t-this.chunkPos:(this.chunk="",this.chunkOff=0),this.readNext()}return this}read(t,n){if(t>=this.chunkPos&&n<=this.chunkPos+this.chunk.length)return this.chunk.slice(t-this.chunkPos,n-this.chunkPos);if(t>=this.chunk2Pos&&n<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(t-this.chunk2Pos,n-this.chunk2Pos);if(t>=this.range.from&&n<=this.range.to)return this.input.read(t,n);let i="";for(let s of this.ranges){if(s.from>=n)break;s.to>t&&(i+=this.input.read(Math.max(s.from,t),Math.min(s.to,n)))}return i}}class Ul{constructor(t,n){this.data=t,this.id=n}token(t,n){let{parser:i}=n.p;uq(this.data,t,n,this.id,i.data,i.tokenPrecTable)}}Ul.prototype.contextual=Ul.prototype.fallback=Ul.prototype.extend=!1;Ul.prototype.fallback=Ul.prototype.extend=!1;class en{constructor(t,n={}){this.token=t,this.contextual=!!n.contextual,this.fallback=!!n.fallback,this.extend=!!n.extend}}function uq(e,t,n,i,s,r){let l=0,c=1<<i,{dialect:u}=n.p.parser;t:for(;(c&e[l])!=0;){let f=e[l+1];for(let y=l+3;y<f;y+=2)if((e[y+1]&c)>0){let $=e[y];if(u.allows($)&&(t.token.value==-1||t.token.value==$||hq($,t.token.value,s,r))){t.acceptToken($);break}}let p=t.next,m=0,g=e[l+2];if(t.next<0&&g>m&&e[f+g*3-3]==65535){l=e[f+g*3-1];continue t}for(;m<g;){let y=m+g>>1,$=f+y+(y<<1),b=e[$],S=e[$+1]||65536;if(p<b)g=y;else if(p>=S)m=y+1;else{l=e[$+2],t.advance();continue t}}break}}function LS(e,t,n){for(let i=t,s;(s=e[i])!=65535;i++)if(s==n)return i-t;return-1}function hq(e,t,n,i){let s=LS(n,i,t);return s<0||LS(n,i,e)<s}const Gn=typeof process<"u"&&BS&&/\bparse\b/.test(BS.LOG);let N0=null;function QS(e,t,n){let i=e.cursor(ie.IncludeAnonymous);for(i.moveTo(t);;)if(!(n<0?i.childBefore(t):i.childAfter(t)))for(;;){if((n<0?i.to<t:i.from>t)&&!i.type.isError)return n<0?Math.max(0,Math.min(i.to-1,t-25)):Math.min(e.length,Math.max(i.from+1,t+25));if(n<0?i.prevSibling():i.nextSibling())break;if(!i.parent())return n<0?0:e.length}}class fq{constructor(t,n){this.fragments=t,this.nodeSet=n,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let t=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(t){for(this.safeFrom=t.openStart?QS(t.tree,t.from+t.offset,1)-t.offset:t.from,this.safeTo=t.openEnd?QS(t.tree,t.to+t.offset,-1)-t.offset:t.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(t.tree),this.start.push(-t.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(t){if(t<this.nextStart)return null;for(;this.fragment&&this.safeTo<=t;)this.nextFragment();if(!this.fragment)return null;for(;;){let n=this.trees.length-1;if(n<0)return this.nextFragment(),null;let i=this.trees[n],s=this.index[n];if(s==i.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let r=i.children[s],l=this.start[n]+i.positions[s];if(l>t)return this.nextStart=l,null;if(r instanceof Vt){if(l==t){if(l<this.safeFrom)return null;let c=l+r.length;if(c<=this.safeTo){let u=r.prop(At.lookAhead);if(!u||c+u<this.fragment.to)return r}}this.index[n]++,l+r.length>=Math.max(this.safeFrom,t)&&(this.trees.push(r),this.start.push(l),this.index.push(0))}else this.index[n]++,this.nextStart=l+r.length}}}class dq{constructor(t,n){this.stream=n,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=t.tokenizers.map(i=>new Lf)}getActions(t){let n=0,i=null,{parser:s}=t.p,{tokenizers:r}=s,l=s.stateSlot(t.state,3),c=t.curContext?t.curContext.hash:0,u=0;for(let f=0;f<r.length;f++){if((1<<f&l)==0)continue;let p=r[f],m=this.tokens[f];if(!(i&&!p.fallback)&&((p.contextual||m.start!=t.pos||m.mask!=l||m.context!=c)&&(this.updateCachedToken(m,p,t),m.mask=l,m.context=c),m.lookAhead>m.end+25&&(u=Math.max(m.lookAhead,u)),m.value!=0)){let g=n;if(m.extended>-1&&(n=this.addActions(t,m.extended,m.end,n)),n=this.addActions(t,m.value,m.end,n),!p.extend&&(i=m,n>g))break}}for(;this.actions.length>n;)this.actions.pop();return u&&t.setLookAhead(u),!i&&t.pos==this.stream.end&&(i=new Lf,i.value=t.p.parser.eofTerm,i.start=i.end=t.pos,n=this.addActions(t,i.value,i.end,n)),this.mainToken=i,this.actions}getMainToken(t){if(this.mainToken)return this.mainToken;let n=new Lf,{pos:i,p:s}=t;return n.start=i,n.end=Math.min(i+1,s.stream.end),n.value=i==s.stream.end?s.parser.eofTerm:0,n}updateCachedToken(t,n,i){let s=this.stream.clipPos(i.pos);if(n.token(this.stream.reset(s,t),i),t.value>-1){let{parser:r}=i.p;for(let l=0;l<r.specialized.length;l++)if(r.specialized[l]==t.value){let c=r.specializers[l](this.stream.read(t.start,t.end),i);if(c>=0&&i.p.parser.dialect.allows(c>>1)){(c&1)==0?t.value=c>>1:t.extended=c>>1;break}}}else t.value=0,t.end=this.stream.clipPos(s+1)}putAction(t,n,i,s){for(let r=0;r<s;r+=3)if(this.actions[r]==t)return s;return this.actions[s++]=t,this.actions[s++]=n,this.actions[s++]=i,s}addActions(t,n,i,s){let{state:r}=t,{parser:l}=t.p,{data:c}=l;for(let u=0;u<2;u++)for(let f=l.stateSlot(r,u?2:1);;f+=3){if(c[f]==65535)if(c[f+1]==1)f=Ss(c,f+2);else{s==0&&c[f+1]==2&&(s=this.putAction(Ss(c,f+2),n,i,s));break}c[f]==n&&(s=this.putAction(Ss(c,f+1),n,i,s))}return s}}class pq{constructor(t,n,i,s){this.parser=t,this.input=n,this.ranges=s,this.recovering=0,this.nextStackID=9812,this.minStackPos=0,this.reused=[],this.stoppedAt=null,this.lastBigReductionStart=-1,this.lastBigReductionSize=0,this.bigReductionCount=0,this.stream=new cq(n,s),this.tokens=new dq(t,this.stream),this.topTerm=t.top[1];let{from:r}=s[0];this.stacks=[jd.start(this,t.top[0],r)],this.fragments=i.length&&this.stream.end-r>t.bufferLength*4?new fq(i,t.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let t=this.stacks,n=this.minStackPos,i=this.stacks=[],s,r;if(this.bigReductionCount>300&&t.length==1){let[l]=t;for(;l.forceReduce()&&l.stack.length&&l.stack[l.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let l=0;l<t.length;l++){let c=t[l];for(;;){if(this.tokens.mainToken=null,c.pos>n)i.push(c);else{if(this.advanceStack(c,i,t))continue;{s||(s=[],r=[]),s.push(c);let u=this.tokens.getMainToken(c);r.push(u.value,u.end)}}break}}if(!i.length){let l=s&&yq(s);if(l)return Gn&&console.log("Finish with "+this.stackID(l)),this.stackToTree(l);if(this.parser.strict)throw Gn&&s&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+n);this.recovering||(this.recovering=5)}if(this.recovering&&s){let l=this.stoppedAt!=null&&s[0].pos>this.stoppedAt?s[0]:this.runRecovery(s,r,i);if(l)return Gn&&console.log("Force-finish "+this.stackID(l)),this.stackToTree(l.forceAll())}if(this.recovering){let l=this.recovering==1?1:this.recovering*3;if(i.length>l)for(i.sort((c,u)=>u.score-c.score);i.length>l;)i.pop();i.some(c=>c.reducePos>n)&&this.recovering--}else if(i.length>1){t:for(let l=0;l<i.length-1;l++){let c=i[l];for(let u=l+1;u<i.length;u++){let f=i[u];if(c.sameState(f)||c.buffer.length>500&&f.buffer.length>500)if((c.score-f.score||c.buffer.length-f.buffer.length)>0)i.splice(u--,1);else{i.splice(l--,1);continue t}}}i.length>12&&(i.sort((l,c)=>c.score-l.score),i.splice(12,i.length-12))}this.minStackPos=i[0].pos;for(let l=1;l<i.length;l++)i[l].pos<this.minStackPos&&(this.minStackPos=i[l].pos);return null}stopAt(t){if(this.stoppedAt!=null&&this.stoppedAt<t)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=t}advanceStack(t,n,i){let s=t.pos,{parser:r}=this,l=Gn?this.stackID(t)+" -> ":"";if(this.stoppedAt!=null&&s>this.stoppedAt)return t.forceReduce()?t:null;if(this.fragments){let f=t.curContext&&t.curContext.tracker.strict,p=f?t.curContext.hash:0;for(let m=this.fragments.nodeAt(s);m;){let g=this.parser.nodeSet.types[m.type.id]==m.type?r.getGoto(t.state,m.type.id):-1;if(g>-1&&m.length&&(!f||(m.prop(At.contextHash)||0)==p))return t.useNode(m,g),Gn&&console.log(l+this.stackID(t)+` (via reuse of ${r.getName(m.type.id)})`),!0;if(!(m instanceof Vt)||m.children.length==0||m.positions[0]>0)break;let y=m.children[0];if(y instanceof Vt&&m.positions[0]==0)m=y;else break}}let c=r.stateSlot(t.state,4);if(c>0)return t.reduce(c),Gn&&console.log(l+this.stackID(t)+` (via always-reduce ${r.getName(c&65535)})`),!0;if(t.stack.length>=8400)for(;t.stack.length>6e3&&t.forceReduce(););let u=this.tokens.getActions(t);for(let f=0;f<u.length;){let p=u[f++],m=u[f++],g=u[f++],y=f==u.length||!i,$=y?t:t.split(),b=this.tokens.mainToken;if($.apply(p,m,b?b.start:$.pos,g),Gn&&console.log(l+this.stackID($)+` (via ${(p&65536)==0?"shift":`reduce of ${r.getName(p&65535)}`} for ${r.getName(m)} @ ${s}${$==t?"":", split"})`),y)return!0;$.pos>s?n.push($):i.push($)}return!1}advanceFully(t,n){let i=t.pos;for(;;){if(!this.advanceStack(t,null,null))return!1;if(t.pos>i)return PS(t,n),!0}}runRecovery(t,n,i){let s=null,r=!1;for(let l=0;l<t.length;l++){let c=t[l],u=n[l<<1],f=n[(l<<1)+1],p=Gn?this.stackID(c)+" -> ":"";if(c.deadEnd&&(r||(r=!0,c.restart(),Gn&&console.log(p+this.stackID(c)+" (restarted)"),this.advanceFully(c,i))))continue;let m=c.split(),g=p;for(let y=0;y<10&&m.forceReduce()&&(Gn&&console.log(g+this.stackID(m)+" (via force-reduce)"),!this.advanceFully(m,i));y++)Gn&&(g=this.stackID(m)+" -> ");for(let y of c.recoverByInsert(u))Gn&&console.log(p+this.stackID(y)+" (via recover-insert)"),this.advanceFully(y,i);this.stream.end>c.pos?(f==c.pos&&(f++,u=0),c.recoverByDelete(u,f),Gn&&console.log(p+this.stackID(c)+` (via recover-delete ${this.parser.getName(u)})`),PS(c,i)):(!s||s.score<m.score)&&(s=m)}return s}stackToTree(t){return t.close(),Vt.build({buffer:Rd.create(t),nodeSet:this.parser.nodeSet,topID:this.topTerm,maxBufferLength:this.parser.bufferLength,reused:this.reused,start:this.ranges[0].from,length:t.pos-this.ranges[0].from,minRepeatType:this.parser.minRepeatTerm})}stackID(t){let n=(N0||(N0=new WeakMap)).get(t);return n||N0.set(t,n=String.fromCodePoint(this.nextStackID++)),n+t}}function PS(e,t){for(let n=0;n<t.length;n++){let i=t[n];if(i.pos==e.pos&&i.sameState(e)){t[n].score<e.score&&(t[n]=e);return}}t.push(e)}class mq{constructor(t,n,i){this.source=t,this.flags=n,this.disabled=i}allows(t){return!this.disabled||this.disabled[t]==0}}const j0=e=>e;class gq{constructor(t){this.start=t.start,this.shift=t.shift||j0,this.reduce=t.reduce||j0,this.reuse=t.reuse||j0,this.hash=t.hash||(()=>0),this.strict=t.strict!==!1}}class Si extends Lw{constructor(t){if(super(),this.wrappers=[],t.version!=14)throw new RangeError(`Parser version (${t.version}) doesn't match runtime version (14)`);let n=t.nodeNames.split(" ");this.minRepeatTerm=n.length;for(let c=0;c<t.repeatNodeCount;c++)n.push("");let i=Object.keys(t.topRules).map(c=>t.topRules[c][1]),s=[];for(let c=0;c<n.length;c++)s.push([]);function r(c,u,f){s[c].push([u,u.deserialize(String(f))])}if(t.nodeProps)for(let c of t.nodeProps){let u=c[0];typeof u=="string"&&(u=At[u]);for(let f=1;f<c.length;){let p=c[f++];if(p>=0)r(p,u,c[f++]);else{let m=c[f+-p];for(let g=-p;g>0;g--)r(c[f++],u,m);f++}}}this.nodeSet=new rp(n.map((c,u)=>Xe.define({name:u>=this.minRepeatTerm?void 0:c,id:u,props:s[u],top:i.indexOf(u)>-1,error:u==0,skipped:t.skippedNodes&&t.skippedNodes.indexOf(u)>-1}))),t.propSources&&(this.nodeSet=this.nodeSet.extend(...t.propSources)),this.strict=!1,this.bufferLength=iE;let l=kf(t.tokenData);this.context=t.context,this.specializerSpecs=t.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let c=0;c<this.specializerSpecs.length;c++)this.specialized[c]=this.specializerSpecs[c].term;this.specializers=this.specializerSpecs.map(qS),this.states=kf(t.states,Uint32Array),this.data=kf(t.stateData),this.goto=kf(t.goto),this.maxTerm=t.maxTerm,this.tokenizers=t.tokenizers.map(c=>typeof c=="number"?new Ul(l,c):c),this.topRules=t.topRules,this.dialects=t.dialects||{},this.dynamicPrecedences=t.dynamicPrecedences||null,this.tokenPrecTable=t.tokenPrec,this.termNames=t.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(t,n,i){let s=new pq(this,t,n,i);for(let r of this.wrappers)s=r(s,t,n,i);return s}getGoto(t,n,i=!1){let s=this.goto;if(n>=s[0])return-1;for(let r=s[n+1];;){let l=s[r++],c=l&1,u=s[r++];if(c&&i)return u;for(let f=r+(l>>1);r<f;r++)if(s[r]==t)return u;if(c)return-1}}hasAction(t,n){let i=this.data;for(let s=0;s<2;s++)for(let r=this.stateSlot(t,s?2:1),l;;r+=3){if((l=i[r])==65535)if(i[r+1]==1)l=i[r=Ss(i,r+2)];else{if(i[r+1]==2)return Ss(i,r+2);break}if(l==n||l==0)return Ss(i,r+1)}return 0}stateSlot(t,n){return this.states[t*6+n]}stateFlag(t,n){return(this.stateSlot(t,0)&n)>0}validAction(t,n){return!!this.allActions(t,i=>i==n?!0:null)}allActions(t,n){let i=this.stateSlot(t,4),s=i?n(i):void 0;for(let r=this.stateSlot(t,1);s==null;r+=3){if(this.data[r]==65535)if(this.data[r+1]==1)r=Ss(this.data,r+2);else break;s=n(Ss(this.data,r+1))}return s}nextStates(t){let n=[];for(let i=this.stateSlot(t,1);;i+=3){if(this.data[i]==65535)if(this.data[i+1]==1)i=Ss(this.data,i+2);else break;if((this.data[i+2]&1)==0){let s=this.data[i+1];n.some((r,l)=>l&1&&r==s)||n.push(this.data[i],s)}}return n}configure(t){let n=Object.assign(Object.create(Si.prototype),this);if(t.props&&(n.nodeSet=this.nodeSet.extend(...t.props)),t.top){let i=this.topRules[t.top];if(!i)throw new RangeError(`Invalid top rule name ${t.top}`);n.top=i}return t.tokenizers&&(n.tokenizers=this.tokenizers.map(i=>{let s=t.tokenizers.find(r=>r.from==i);return s?s.to:i})),t.specializers&&(n.specializers=this.specializers.slice(),n.specializerSpecs=this.specializerSpecs.map((i,s)=>{let r=t.specializers.find(c=>c.from==i.external);if(!r)return i;let l=Object.assign(Object.assign({},i),{external:r.to});return n.specializers[s]=qS(l),l})),t.contextTracker&&(n.context=t.contextTracker),t.dialect&&(n.dialect=this.parseDialect(t.dialect)),t.strict!=null&&(n.strict=t.strict),t.wrap&&(n.wrappers=n.wrappers.concat(t.wrap)),t.bufferLength!=null&&(n.bufferLength=t.bufferLength),n}hasWrappers(){return this.wrappers.length>0}getName(t){return this.termNames?this.termNames[t]:String(t<=this.maxNode&&this.nodeSet.types[t].name||t)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(t){let n=this.dynamicPrecedences;return n==null?0:n[t]||0}parseDialect(t){let n=Object.keys(this.dialects),i=n.map(()=>!1);if(t)for(let r of t.split(" ")){let l=n.indexOf(r);l>=0&&(i[l]=!0)}let s=null;for(let r=0;r<n.length;r++)if(!i[r])for(let l=this.dialects[n[r]],c;(c=this.data[l++])!=65535;)(s||(s=new Uint8Array(this.maxTerm+1)))[c]=1;return new mq(t,i,s)}static deserialize(t){return new Si(t)}}function Ss(e,t){return e[t]|e[t+1]<<16}function yq(e){let t=null;for(let n of e){let i=n.p.stoppedAt;(n.pos==n.p.stream.end||i!=null&&n.pos>i)&&n.p.parser.stateFlag(n.state,2)&&(!t||t.score<n.score)&&(t=n)}return t}function qS(e){if(e.external){let t=e.extend?1:0;return(n,i)=>e.external(n,i)<<1|t}return e.get}const wq=11,$q=1,xq=2,WS=3,bq=4,vq=5,Sq=6,Oq=7,kq=[-1,9,13,32],j3={mindmap:xq,pie:$q,flowchart:WS,graph:WS,sequenceDiagram:bq,journey:vq,requirementDiagram:Sq,gantt:Oq},Cq=Object.keys(j3),Eq=new en(e=>{if(kq.includes(e.next))return;let t="";for(;e.next!=10&&e.next!==-1;)t+=String.fromCodePoint(e.next),e.advance();e.advance();const n=Cq.filter(i=>t.startsWith(i));if(n.length>0){for(;e.next!==-1;)e.advance();e.acceptToken(j3[n[0]])}else e.acceptToken(wq)}),Dq=Si.deserialize({version:14,states:"nOVQROOOOQQ'#Ce'#CeOVQROOQOQPOOOOQQ-E6c-E6c",stateData:"q~O]OS~OPROQRORROSROTROUROVROZPO~O",goto:"aYPPPPPPPPPZQQORSQ",nodeNames:"⚠ PieDiagram MindmapDiagram FlowchartDiagram SequenceDiagram JourneyDiagram RequirementDiagram GanttDiagram MermaidDiagram",maxTerm:13,skippedNodes:[0],repeatNodeCount:1,tokenData:"j~RRXY[]^[pq[~aR]~XY[]^[pq[",tokenizers:[0,Eq],topRules:{MermaidDiagram:[0,8]},tokenPrec:0}),R3=16,_3=1,Tq=2,Nq=3,jq=4,Rq=5,_q=17,Mq=18,Aq=[_3,Tq,Nq,jq,Rq],_d=10,Uy=13,M3=32,o5=9,A3=35,Hq=58,zq=40,Bq=41,Yq=91,Gq=93,Lq=123,Qq=125,Pq=new en((e,t)=>{if(!(e.next<0)){e.advance();let n=0;for(;e.next==M3||e.next==o5;)e.advance(),n++;let i=e.next==_d||e.next==Uy||e.next==A3;e.acceptToken(i?Mq:_q,-n)}},{contextual:!0,fallback:!0}),qq=new en((e,t)=>{let n=0;for(;e.next>-1&&e.next!==_d;){if(e.next===Hq)return;if(e.next===zq||e.next===Yq||e.next===Lq)if(n>0){e.acceptToken(t.context.lineType);return}else return;if((e.next===Bq||e.next===Gq||e.next===Qq)&&n>0){e.acceptToken(t.context.lineType);return}e.advance(),n++}e.acceptToken(t.context.lineType)}),Wq=e=>4-e%4,Zq=new en((e,t)=>{let n=e.peek(-1);if(n==_d||n==Uy){for(;;){if(e.next!=M3){if(e.next!=o5)break}e.advance()}e.next!=_d&&e.next!=Uy&&e.next!=A3&&e.acceptToken(R3)}}),Uq={lineType:_3},Iq=e=>{let t=0;for(let n=0;n<e.length;n++)t+=e.charCodeAt(n)==o5?Wq(t):1;return t},Fq=e=>Aq[e%5],Vq=new gq({start:Uq,shift(e,t,n,i){if(t===R3){const s=Iq(i.read(i.pos,n.pos));e.lineType=Fq(s)}return e}}),Mo={diagramName:bt.define(V.typeName)},Cl={diagramName:bt.define(Mo.diagramName),lineText1:bt.define(),lineText2:bt.define(),lineText3:bt.define(),lineText4:bt.define(),lineText5:bt.define()},ro={diagramName:bt.define(Mo.diagramName),lineComment:bt.define(V.lineComment),number:bt.define(V.number),showData:bt.define(V.keyword),string:bt.define(V.string),title:bt.define(V.keyword),titleText:bt.define(V.string)},Ln={diagramName:bt.define(Mo.diagramName),keyword:bt.define(V.keyword),lineComment:bt.define(V.lineComment),link:bt.define(V.contentSeparator),nodeEdge:bt.define(V.contentSeparator),nodeEdgeText:bt.define(V.string),nodeId:bt.define(V.variableName),nodeText:bt.define(V.string),number:bt.define(V.number),orientation:bt.define(V.modifier),string:bt.define(V.string)},bs={diagramName:bt.define(Mo.diagramName),arrow:bt.define(V.contentSeparator),keyword1:bt.define(V.keyword),keyword2:bt.define(V.controlKeyword),lineComment:bt.define(V.lineComment),messageText1:bt.define(V.string),messageText2:bt.define(V.content),nodeText:bt.define(V.variableName),position:bt.define(V.modifier)},El={diagramName:bt.define(Mo.diagramName),actor:bt.define(V.variableName),keyword:bt.define(V.keyword),lineComment:bt.define(V.lineComment),score:bt.define(V.number),text:bt.define(V.string)},hr={diagramName:bt.define(Mo.diagramName),arrow:bt.define(V.contentSeparator),keyword:bt.define(V.keyword),lineComment:bt.define(V.lineComment),number:bt.define(V.number),quotedString:bt.define(V.string),unquotedString:bt.define(V.content)},Cf={diagramName:bt.define(Mo.diagramName),keyword:bt.define(V.keyword),lineComment:bt.define(V.lineComment),string:bt.define(V.string)},Xq=jr({DiagramName:Cl.diagramName,LineText1:Cl.lineText1,LineText2:Cl.lineText2,LineText3:Cl.lineText3,LineText4:Cl.lineText4,LineText5:Cl.lineText5}),Kq={__proto__:null,mindmap:44,icon:50},H3=Si.deserialize({version:14,states:"&fOYQ[OOOOQW'#Ci'#CiQbQ[OOQgQ[OOOOQW'#Cc'#CcOOQW-E6g-E6gOlQ]O'#CdOOQW'#Cj'#CjQgQ[OOO!]Q^O,59OOOQW-E6h-E6hOOQW'#Cs'#CsO!vQ[O'#CeO!{Q^O'#CgO!{Q^O'#CyO!{Q^O'#C|O!{Q^O'#C}O!{Q^O'#DQO!{Q^O'#DRO!{Q^O'#DSOOQW'#Ch'#ChO#^Q[O1G.jOOQW1G.j1G.jO#hQ[O,59POOQW'#Cf'#CfOOQW,59R,59RO#mQ[O,59eO#rQ[O,59hO#wQ[O,59iO#|Q[O,59lO$RQ[O,59mO$WQ[O,59nOOQW7+$U7+$UO!{Q^O1G.kOOQW1G/P1G/POOQW1G/S1G/SOOQW1G/T1G/TOOQW1G/W1G/WOOQW1G/X1G/XOOQW1G/Y1G/YO$]Q[O7+$VOOQW<<Gq<<Gq",stateData:"$b~OdOSbOS~OaPOfSO~OaPO~OaUO~O`XO_WXaWX~Oj_OkbOn^Or`OsaOwcO~OPZOQZORZOSZOTZOh[Ol]O~PwOihO~OPZOQZORZOSZOTZO~O_WiaWi~PwOjqO~OorO~OksO~OstO~OruO~OjvO~OxwO~OkyO~O",goto:"#YwPPPPPPPx{!P!S!P!V!]!cPPPPPPPP!iPPPPP#UPP#U#UPP#U#U#URROTVRWRfXRg[QfXRpeQQORTQQWRRYWQeXQi]Qj^Qk_Ql`QmaQnbQocRxqTdXe",nodeNames:"⚠ LineText1 LineText2 LineText3 LineText4 LineText5 MindmapDiagram DiagramName Line IconLine Icon ClassLine ShapedText",maxTerm:40,context:Vq,propSources:[Xq],skippedNodes:[0],repeatNodeCount:2,tokenData:"$b~R]XYz[]zpqzxy!fyz!s![!]#Q!c!}#e!}#O#p#O#P!]#P#Q#u#T#o#e#o#p#z#q#r$V~!PSd~XYz[]zpqz#O#P!]~!`QYZz]^z~!kPj~xy!n~!sOr~~!xPk~yz!{~#QOs~~#TP![!]#W~#]Ph~![!]#`~#eOl~~#jQe~!c!}#e#T#o#e~#uOn~~#zOo~~#}P#o#p$Q~$VOw~~$YP#q#r$]~$bOx~",tokenizers:[Zq,qq,0,Pq],topRules:{MindmapDiagram:[0,6]},specialized:[{term:21,get:e=>Kq[e]||-1}],tokenPrec:0}),ZS=1,Jq=new en(e=>{if(e.next===10){e.acceptToken(ZS);return}if(e.next!==-1){for(;e.next!==10&&e.next!==-1;)e.advance();e.acceptToken(ZS)}}),tW=jr({DiagramName:ro.diagramName,LineComment:ro.lineComment,Number:ro.number,ShowData:ro.showData,String:ro.string,Title:ro.title,TitleText:ro.titleText}),eW={__proto__:null,pie:34,showData:36,title:38},z3=Si.deserialize({version:14,states:"$nOYQQOOO_QQO'#CkOOQO'#Ce'#CeQYQQOOOOQO'#C`'#C`OpOSO'#CcOxQQO'#CpOOQO'#Cf'#CfO}QQO,59VO!YQRO,59VO!hQQO,59VOOQO'#Ca'#CaOOQP'#Cb'#CbOOQO-E6c-E6cOOOO'#Cg'#CgO!vOSO,58}OOQO,58},58}O#OQQO,59[OOQO-E6d-E6dO#TQQO1G.qO#TQQO1G.qO#`QRO1G.qOOOO-E6e-E6eOOQO1G.i1G.iOOQO1G.v1G.vO#nQQO7+$]O#nQQO7+$]O#yQQO<<Gw",stateData:"$U~O^OSQOS~OaSO~ObZOc[OeTO[_Xa_X~Oe`Of^O~OgaO~OeTO[_aa_a~OPdOeTO[_aa_a~Oc[OeTO[_aa_a~OegOf^O~OWhO~OeTO[_ia_i~OPjOeTO[_ia_i~OeTO[_qa_q~OeTO[_ya_y~O",goto:"#RePPPPfjmsP!P!V!kPPP!qPPPP!uTPORRYPQXPReYeUPWXYcdeijkQROR]RQWPWbWcikScXYSideRkjQ_TRf_TQOReVPWXYcdeijk",nodeNames:"⚠ TitleText LineComment PieDiagram DiagramName ShowData Title String Number",maxTerm:23,propSources:[tW],skippedNodes:[0,2],repeatNodeCount:3,tokenData:"*V~RrOX#]X^#t^p#]pq#tqr#]rs%gsu#]uv%lv!Q#]!Q!['`![!])R!]!c#]!c!})f!}#T#]#T#o)f#o#y#]#y#z#t#z$f#]$f$g#t$g#BY#]#BY#BZ#t#BZ$IS#]$IS$I_#t$I_$I|#]$I|$JO#t$JO$JT#]$JT$JU#t$JU$KV#]$KV$KW#t$KW&FU#]&FU&FV#t&FV;'S#];'S;=`#n<%lO#]Q#bSfQOr#]s;'S#];'S;=`#n<%lO#]Q#qP;=`<%l#]R#{h^PfQOX#]X^#t^p#]pq#tqr#]s#y#]#y#z#t#z$f#]$f$g#t$g#BY#]#BY#BZ#t#BZ$IS#]$IS$I_#t$I_$I|#]$I|$JO#t$JO$JT#]$JT$JU#t$JU$KV#]$KV$KW#t$KW&FU#]&FU&FV#t&FV;'S#];'S;=`#n<%lO#]~%lOe~R%qUfQOr#]su#]uv&Tv;'S#];'S;=`#n<%lO#]R&[VQPfQOY&TYZ#]Zr&Trs&qs;'S&T;'S;=`'Y<%lO&TP&vSQPOY&qZ;'S&q;'S;=`'S<%lO&qP'VP;=`<%l&qR']P;=`<%l&TR'gWWPfQOr#]s!O#]!O!P(P!P!Q#]!Q!['`![;'S#];'S;=`#n<%lO#]R(UUfQOr#]s!Q#]!Q![(h![;'S#];'S;=`#n<%lO#]R(oUWPfQOr#]s!Q#]!Q![(h![;'S#];'S;=`#n<%lO#]R)YSgPfQOr#]s;'S#];'S;=`#n<%lO#]R)mW`PfQOr#]s!c#]!c!})f!}#T#]#T#o)f#o;'S#];'S;=`#n<%lO#]",tokenizers:[Jq,0,1],topRules:{PieDiagram:[0,3]},specialized:[{term:16,get:e=>eW[e]||-1}],tokenPrec:0}),nW=1,iW=2,sW=3,B3=[-1,9,13,32,34,39,96],Y3=[40,62,91,123,124],rW=[41,93,124,125],US=45,IS=61,FS=46,oW=new en(e=>{if(!(B3.includes(e.next)||Y3.includes(e.next))){for(;!rW.includes(e.next)&&e.next!==-1;)e.advance();e.acceptToken(iW)}}),lW=new en(e=>{if(!(B3.includes(e.next)||Y3.includes(e.next)||e.next===US||e.next===IS||e.next===FS)){for(;e.next!==US&&e.next!==IS&&e.next!==FS&&e.next!==-1;)e.advance();e.acceptToken(nW)}}),aW=new en(e=>{if(!(e.next===10||e.next===-1)){for(;e.next!==10&&e.next!==-1;)e.advance();e.acceptToken(sW)}}),cW=jr({"( )":V.paren,"[ ]":V.squareBracket,"{ }":V.brace,"<":V.angleBracket,DiagramName:Ln.diagramName,DoubleEqual:Ln.link,DoubleHyphen:Ln.link,Keyword:Ln.keyword,LineComment:Ln.lineComment,Link:Ln.link,NodeEdge:Ln.nodeEdge,NodeEdgeText:Ln.nodeEdgeText,NodeId:Ln.nodeId,NodeText:Ln.nodeText,Number:Ln.number,Orientation:Ln.orientation,String:Ln.string}),uW={__proto__:null,flowchart:60,graph:62,TB:64,TD:66,BT:68,RL:70,LR:72,subgraph:148,end:150,direction:152,click:154,call:156,href:158,_self:160,_blank:162,_parent:164,_to:166,style:170,linkStyle:172,class:174,classDef:176},G3=Si.deserialize({version:14,states:"*hOYQWOOOvQWO'#CxOOQO'#Co'#CoQYQWOOOOQO'#Cb'#CbOOQO'#Cp'#CpO!TQWO,59dO!cQWO,59dOOQS'#Cc'#CcOOQO-E6m-E6mOOQO-E6n-E6nO%aQWO1G/OOOQS'#Cd'#CdO(_O`O'#CfO(gOpO'#CfO(oO!bO'#CfO(wQYO'#CeO(wQYO'#CeO(wQYO'#CeO(wQYO'#CeO(wQYO'#CeO(wQYO'#CeO(wQYO'#CeO(wQYO'#CeO(wQYO'#CeO(wQYO'#CeOOQO'#Cg'#CgO)VQXO'#ChOOQO'#DS'#DSO)eQWO'#DSO%aQWO1G/OOOQO'#Ck'#CkOOQO'#Cn'#CnO)yQWO7+$jOOOO'#Cq'#CqO,wO`O,59QOOQO,59Q,59QOOOO'#Cr'#CrO-POpO,59QOOOO'#Cs'#CsO-XO!bO,59QOOQO'#DU'#DUO-aQWO,59PO-fQWO,59PO-kQWO,59PO-pQ#tO,59PO-uQ#tO,59PO-}Q#tO,59PO.SQ#tO,59PO.XQWO,59PO.^Q#tO,59PO.cQ&jO,59POOQO'#Dv'#DvO.hQWO,59SO.|Q[O,59nO)yQWO7+$jO/RQWO'#CtO)yQWO7+$jO2dQWO<<HUO2dQWO<<HUOOOO-E6o-E6oOOQO1G.l1G.lOOOO-E6p-E6pOOOO-E6q-E6qOOQO1G.k1G.kOOQO1G.n1G.nOOQO1G/Y1G/YO5bQWO,59`OOQO,59`,59`OOQO-E6r-E6rO8sQWOAN=pOOQO1G.z1G.zP;qQWO'#Cp",stateData:">{~OkOSSOS~OnSOoSO~OpWOqWOrWOsWOtWOuTO~OilXnlXolX~PbOuTOilanlaola~O]kO^kO`lOalOm[Ow`Oy]O{^O}_O!QaO!SbO!TcO!VdO!WeO!ZfO!]aO!^gO!`hO!biO!djO!ejO!fjO!gjO!hjO!ijO!klO!loO!moO!noO!ooO!poO!qoO!roO!soO!toO!uoO!vlO!wpO!xpO!ypO!zpOilanlaola~PbO]kO^kO`lOalOm[Ow`Oy]O{^O}_O!QaO!SbO!TcO!VdO!WeO!ZfO!]aO!^gO!`hO!biO!djO!ejO!fjO!gjO!hjO!ijO!klO!loO!moO!noO!ooO!poO!qoO!roO!soO!toO!uoO!vlO!wpO!xpO!ypO!zpOilinlioli~PbOytOzrO~O{tO|uO~O}tO!OwO~OQyOy]O{^O}_O~OP!UOy]O{^O}_O~Om[OpWOqWOrWOsWOtWO~O]kO^kO`lOalOm[Ow`Oy]O{^O}_O!QaO!SbO!TcO!VdO!WeO!ZfO!]aO!^gO!`hO!biO!djO!ejO!fjO!gjO!hjO!ijO!klO!loO!moO!noO!ooO!poO!qoO!roO!soO!toO!uoO!vlO!wpO!xpO!ypO!zpOilqnlqolq~PbOy!_OzrO~O{!_O|uO~O}!_O!OwO~O!P!bO~O!R!bO~O!S!bO~O!U!bO~O!U!bO!Y!bO~O!X!bO~O![!bO~O!_!bO~O!a!bO~O!c!bO~O!djO!ejO!fjO!gjO!hjO!ijO~OR!dO~O!{!fO]hX^hX`hXahXihXmhXnhXohXphXqhXrhXshXthXuhXwhXyhX{hX}hX!QhX!ShX!ThX!VhX!WhX!ZhX!]hX!^hX!`hX!bhX!dhX!ehX!fhX!ghX!hhX!ihX!khX!lhX!mhX!nhX!ohX!phX!qhX!rhX!shX!thX!uhX!vhX!whX!xhX!yhX!zhX~O]kO^kO`lOalOm[Ow`Oy]O{^O}_O!QaO!SbO!TcO!VdO!WeO!ZfO!]aO!^gO!`hO!biO!djO!ejO!fjO!gjO!hjO!ijO!klO!loO!moO!noO!ooO!poO!qoO!roO!soO!toO!uoO!vlO!wpO!xpO!ypO!zpOilynlyoly~PbO!{!iO]ha^ha`haahaihamhanhaohaphaqharhashathauhawhayha{ha}ha!Qha!Sha!Tha!Vha!Wha!Zha!]ha!^ha!`ha!bha!dha!eha!fha!gha!hha!iha!kha!lha!mha!nha!oha!pha!qha!rha!sha!tha!uha!vha!wha!xha!yha!zha~O]kO^kO`lOalOm[Ow`Oy]O{^O}_O!QaO!SbO!TcO!VdO!WeO!ZfO!]aO!^gO!`hO!biO!djO!ejO!fjO!gjO!hjO!ijO!klO!loO!moO!noO!ooO!poO!qoO!roO!soO!toO!uoO!vlO!wpO!xpO!ypO!zpOil!Rnl!Rol!R~PbO]kO^kO`lOalOm[Ow`Oy]O{^O}_O!QaO!SbO!TcO!VdO!WeO!ZfO!]aO!^gO!`hO!biO!djO!ejO!fjO!gjO!hjO!ijO!klO!loO!moO!noO!ooO!poO!qoO!roO!soO!toO!uoO!vlO!wpO!xpO!ypO!zpO~PbOukS!d!e!f!g!h!i]^!k!{y{}a`m]~",goto:"'[!kPPPPPP!l!p#Q#a#m$Y#aPP#aPP$i$u${%e%k%q%wPPP&RPPPPPPPPP&VP&iPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP'XTPORQVPg[VZmnq!X!Z![!]!h!jdlVZnq!X!Z![!]!h!jR!WmelVZnq!X!Z![!]!h!jdlVZnq!X!Z![!]!h!jdy`abcdefghiR!UkdlVZnq!X!Z![!]!h!jR!c!VemVZnq!X!Z![!]!h!jQRORXRQUP[YUZ!X![!h!jQZVQ!XnS![q!ZR!h!]Qs]R!^sQv^R!`vQx_R!axQ!ZnQ!]qT!g!Z!]TQORQnVQqZW!Ynq!Z!]X!e!X![!h!jQz`Q{aQ|bQ}cQ!OdQ!PeQ!QfQ!RgQ!ShR!TiR!Vk",nodeNames:"⚠ NodeEdgeText NodeText StyleText LineComment FlowchartDiagram DiagramName Orientation NodeId Node String Link NodeEdge DoubleHyphen DoubleEqual Keyword : ::: StyleKeyword",maxTerm:89,propSources:[cW],skippedNodes:[0,4],repeatNodeCount:6,tokenData:"=3^!aR3ZOX!)tXY!.cYZ!0iZ^!.c^p!)tpq!.cqr!2wrs+ kst!2wtu!2wuv,(_vw6>_wx7ETxy8Kwyz9!^z{!2w{|!2w|}!)t}!O9&O!O!P9/Q!P!Q!2w!Q![!2w![!]:5y!]!^:8k!^!_:9c!_!`:Br!`!a:F`!a!b!2w!b!c!)t!c!}!2w!}#O:GW#O#P!2w#P#Q:Iw#Q#R!)t#R#S!2w#S#T:Lk#T#c!2w#c#d<%_#d#l!2w#l#m<%_#m#o!2w#o#p=,[#p#q=.Q#q#r=.x#r#s=0n#s#y!)t#y#z!.c#z$f!)t$f$g!.c$g$p!)t$p$q!2w$q${!)t${$|!2w$|%Q!)t%Q%R!2w%R%W!)t%W%o!2w%o%p!)t%p&a!2w&a&b!)t&b0`!2w0`0d!)t0d0p!2w0p1O!)t1O1T!2w1T1[!)t1[1]!2w1]1^!)t1^1_!2w1_4U!)t4U4Z!2w4Z4[!)t4[4]!2w4]4^!2w4^4`!)t4`4d!2w4d4l!)t4l4m!2w4m4n!)t4n4q!2w4q4r!)t4r4s!2w4s4t!)t4t5Y!2w5Y5Z!)t5Z7Q!2w7Q7R!)t7R:S!2w:S:[!)t:[=p!2w=p=y!)t=y>q!2w>q>s!)t>s>t!2w>t>{!)t>{?t!2w?tA`!)tA`A{!2wA{BQ!)tBQBT!2wBTCS!)tCSDP!2wDPDt!)tDtDu!2wDuDv!2wDvDw!)tDwGO!2wGOGP!)tGPGQ!2wGQGa!)tGaGb!2wGbGc!2wGcGj!)tGjGk!2wGkGl!2wGlGv!)tGvGy!2wGyG{!)tG{G|!2wG|H^!)tH^H_!2wH_H`!)tH`IO!2wIOIm!)tImKj!2wKjKu!)tKuKv!2wKvL`!)tL`MR!2wMRM[!)tM[M]!2wM]M^!2wM^Mb!)tMbMc!2wMcMh!)tMhNO!2wNONS!)tNSNT!2wNTN^!)tN^N_!2wN_Nb!)tNbNc!2wNcNz!)tNz! e!2w! e!#O!)t!#O!#P!2w!#P!#Q!)t!#Q!#]!2w!#]!%W!)t!%W!&`!2w!&`!&c!)t!&c!&d!2w!&d!&v!)t!&v!&w!2w!&w!'O!)t!'O!'Y!2w!'Y!'i!)t!'i!'p!2w!'p!'q!)t!'q!'x!2w!'x!'}!)t!'}!(V!2w!(V!(X!)t!(X!(Y!2w!(Y!(Z!2w!(Z!(]!)t!(]!(s!2w!(s!(t!)t!(t!({!2w!({!(|!)t!(|!(}!2w!(}!)Q!)t!)Q!)U!2w!)U!)X!)t!)X!)Y!2w!)Y!)j!)t!)j!)k!2w!)k!)x!)t!)x!)y!2w!)y!)z!2w!)z!){!)t!){!*O!2w!*O!*^!)t!*^!*_!2w!*_!*`!2w!*`!*s!)t!*s!*y!2w!*y!*}!)t!*}!+O!2w!+O!+P!2w!+P!+R!)t!+R!+i!2w!+i!+j!)t!+j!+q!2w!+q!+r!)t!+r!+s!2w!+s!+t!2w!+t!+u!)t!+u!+v!2w!+v!+w!2w!+w!+x!)t!+x!+y!2w!+y!+z!2w!+z!,k!)t!,k!,o!2w!,o!,p!)t!,p!,q!2w!,q!-U!)t!-U!-X!2w!-X!-i!)t!-i!-r!2w!-r!-s!)t!-s!-v!2w!-v!-w!)t!-w!._!2w!._!.`!)t!.`!.g!2w!.g!.h!)t!.h!.i!2w!.i!.j!2w!.j!.k!)t!.k!.p!2w!.p!.s!)t!.s!.t!2w!.t!/W!)t!/W!/X!2w!/X!/h!)t!/h!/i!2w!/i!/j!2w!/j!0_!)t!0_!0g!2w!0g!0i!)t!0i!0j!2w!0j!0k!2w!0k!0m!)t!0m!1T!2w!1T!1U!)t!1U!1]!2w!1]!1^!)t!1^!1_!2w!1_!1`!2w!1`!1a!)t!1a!1f!2w!1f!1i!)t!1i!1j!2w!1j!2Y!)t!2Y!2Z!2w!2Z!2[!2w!2[!2]!)t!2]!2`!2w!2`!2o!)t!2o!2p!2w!2p!3R!)t!3R!3S!2w!3S!3T!)t!3T!3Z!2w!3Z!3^!)t!3^!3a!2w!3a!3b!)t!3b!3f!2w!3f!3i!)t!3i!3j!2w!3j!3k!2w!3k!3l!)t!3l!3m!2w!3m!3n!)t!3n!3o!2w!3o!3p!2w!3p!3s!)t!3s!3t!2w!3t!3u!2w!3u!3x!)t!3x!3{!2w!3{!4O!)t!4O!4[!2w!4[!4r!)t!4r!4s!2w!4s!5y!)t!5y!6R!2w!6R!6S!)t!6S!6V!2w!6V!6W!)t!6W!6o!2w!6o!6p!)t!6p!6z!2w!6z!6{!)t!6{!7Q!2w!7Q!7T!)t!7T!7U!2w!7U!7p!)t!7p!7q!2w!7q!7r!2w!7r!7x!)t!7x!7y!2w!7y!7z!2w!7z!8o!)t!8o!8w!2w!8w!8x!)t!8x!8{!2w!8{!8|!)t!8|!9e!2w!9e!9f!)t!9f!9p!2w!9p!9q!)t!9q!9v!2w!9v!9y!)t!9y!9z!2w!9z!:l!)t!:l!:m!2w!:m!:n!)t!:n!:o!2w!:o!:p!2w!:p!;P!)t!;P!;Q!2w!;Q!;R!2w!;R!;e!)t!;e!;m!2w!;m!;n!)t!;n!;q!2w!;q!;r!)t!;r!<m!2w!<m!<o!)t!<o!<p!2w!<p!=Q!)t!=Q!=R!2w!=R!=d!)t!=d!=e!2w!=e!=f!2w!=f!>O!)t!>O!>U!2w!>U!>Z!)t!>Z!>m!2w!>m!>p!)t!>p!?Y!2w!?Y!?Z!)t!?Z!?d!2w!?d!?e!)t!?e!?f!2w!?f!?h!)t!?h!?o!2w!?o!@{!)t!@{!A}!2w!A}!BO!)t!BO!BP!2w!BP!BQ!2w!BQ!B^!)t!B^!Be!2w!Be!Cq!)t!Cq!Cr!2w!Cr!Cs!2w!Cs!Ct!)t!Ct!Cu!2w!Cu!Cw!)t!Cw!Cx!2w!Cx!Cy!2w!Cy!Cz!)t!Cz!C{!2w!C{!C}!)t!C}!DO!2w!DO!DU!)t!DU!DY!2w!DY!DZ!)t!DZ!Db!2w!Db!Dc!)t!Dc!Df!2w!Df!Dg!)t!Dg!Dh!2w!Dh!Di!)t!Di!Dj!2w!Dj!Dl!)t!Dl!Dm!2w!Dm!Dn!2w!Dn!Do!)t!Do!Ds!2w!Ds!Dt!)t!Dt!Du!2w!Du!Dv!2w!Dv!EP!)t!EP!EQ!2w!EQ!ES!)t!ES!EX!2w!EX!EY!)t!EY!EZ!2w!EZ!Ep!)t!Ep!Et!2w!Et!Ff!)t!Ff!Fg!2w!Fg!Gx!)t!Gx!HQ!2w!HQ!HR!)t!HR!Hw!2w!Hw!Id!)t!Id!Ii!2w!Ii!LQ!)t!LQ!L}!2w!L}!Mc!)t!Mc!Md!2w!Md!Mt!)t!Mt!Mz!2w!Mz!NO!)t!NO!NS!2w!NS!NV!)t!NV!NW!2w!NW!NZ!)t!NZ!N[!2w!N[!N]!2w!N]!Nd!)t!Nd!Ng!2w!Ng!Nk!)t!Nk!Nx!2w!Nx# U!)t# U# V!2w# V# h!)t# h#!`!2w#!`#!a!)t#!a#!b!2w#!b#!g!)t#!g#!h!2w#!h#!j!)t#!j##g!2w##g##h!)t##h#*s!2w#*s#*t!)t#*t#*x!2w#*x#*z!)t#*z#+R!2w#+R#+S!)t#+S#+T!2w#+T#+U!)t#+U#+Y!2w#+Y#+[!)t#+[#,V!2w#,V#,W!)t#,W#,[!2w#,[#,^!)t#,^#-P!2w#-P#-Q!)t#-Q#-U!2w#-U#-W!)t#-W#-_!2w#-_#-`!)t#-`#-a!2w#-a#-b!)t#-b#-f!2w#-f#-h!)t#-h#-w!2w#-w#-x!)t#-x#/T!2w#/T#/U!)t#/U#/Y!2w#/Y#/[!)t#/[#0q!2w#0q#1h!)t#1h#1x!2w#1x#2Y!)t#2Y#4R!2w#4R#4_!)t#4_#Au!2w#Au#Aw!)t#Aw#BY!2w#BY#BZ!.c#BZ#Bu!2w#Bu#Bz!)t#Bz#Di!2w#Di#EO!)t#EO#E]!2w#E]#E^!)t#E^#Eb!2w#Eb#Ep!)t#Ep#FS!2w#FS#Fb!)t#Fb#Ft!2w#Ft#GS!)t#GS#Ga!2w#Ga#Gb!)t#Gb#Ge!2w#Ge#Gt!)t#Gt#Hz!2w#Hz#Io!)t#Io#Ip!2w#Ip#It!)t#It#Iu!2w#Iu#K[!)t#K[#MW!2w#MW#M`!)t#M`#NZ!2w#NZ#N[!)t#N[#N]!2w#N]#Nb!)t#Nb$ z!2w$ z$!U!)t$!U$!s!2w$!s$#x!)t$#x$$h!2w$$h$$j!)t$$j$$o!2w$$o$$z!)t$$z$%x!2w$%x$&_!)t$&_$&f!2w$&f$'p!)t$'p$(X!2w$(X$(b!)t$(b$)i!2w$)i$+_!)t$+_$+`!2w$+`$-a!)t$-a$.b!2w$.b$.s!)t$.s$.z!2w$.z$0T!)t$0T$0s!2w$0s$1Q!)t$1Q$1R!2w$1R$1S!2w$1S$1^!)t$1^$2[!2w$2[$2v!)t$2v$3l!2w$3l$4g!)t$4g$4j!2w$4j$4t!)t$4t$5j!2w$5j$7y!)t$7y$7}!2w$7}$8O!)t$8O$8S!2w$8S$8V!)t$8V$8W!2w$8W$8X!2w$8X$8b!)t$8b$<j!2w$<j$=|!)t$=|$DO!2w$DO$DQ!)t$DQ$DW!2w$DW$DY!)t$DY$EQ!2w$EQ$ES!)t$ES$EY!2w$EY$E[!)t$E[$Ed!2w$Ed$Ee!)t$Ee$Ef!2w$Ef$Eg!)t$Eg$Eh!2w$Eh$Ei!)t$Ei$Ej!2w$Ej$Ek!)t$Ek$F[!2w$F[$F^!)t$F^$Ge!2w$Ge$Gf!)t$Gf$Gm!2w$Gm$Gn!)t$Gn$Go!2w$Go$Gr!)t$Gr$Gu!2w$Gu$Gv!)t$Gv$G}!2w$G}$HQ!)t$HQ$HU!2w$HU$HW!)t$HW$H^!2w$H^$Hb!)t$Hb$Ho!2w$Ho$Ht!)t$Ht$Hw!2w$Hw$Hx!)t$Hx$IP!2w$IP$IS!)t$IS$I_!.c$I_$I|!)t$I|$JO!.c$JO$JT!)t$JT$JU!.c$JU$KV!)t$KV$KW!.c$KW$Ki!)t$Ki$Kj!2w$Kj$Kw!)t$Kw$Kx!2w$Kx$LY!)t$LY$Lg!2w$Lg$Np!)t$Np$Nq!2w$Nq$Nu!)t$Nu$Nv!2w$Nv$Nx!)t$Nx% S!2w% S% T!)t% T% U!2w% U% X!)t% X% ^!2w% ^% d!)t% d% e!2w% e% f!)t% f% g!2w% g% h!)t% h% i!2w% i% j!)t% j% n!2w% n% o!)t% o% z!2w% z% |!)t% |%!Q!2w%!Q%!V!)t%!V%![!2w%![%!`!)t%!`%!a!2w%!a%#g!)t%#g%#h!2w%#h%#i!2w%#i&/x!)t&/x&0y!2w&0y&0z!)t&0z&1{!2w&1{&1|!)t&1|&4w!2w&4w&4}!)t&4}&5R!2w&5R&5U!)t&5U&5V!2w&5V&5W!2w&5W&5d!)t&5d&6[!2w&6[&6]!)t&6]&6^!2w&6^&6c!)t&6c&6d!2w&6d&6f!)t&6f&7p!2w&7p&7w!)t&7w&7x!2w&7x&8Y!)t&8Y&8q!2w&8q&8z!)t&8z&9R!2w&9R&9S!)t&9S&9Z!2w&9Z&9[!)t&9[&9c!2w&9c&9d!)t&9d&9k!2w&9k&9l!)t&9l&9s!2w&9s&9t!)t&9t&9{!2w&9{&9|!)t&9|&:T!2w&:T&:U!)t&:U&:]!2w&:]&<P!)t&<P&<Q!2w&<Q&FU!)t&FU&FV!.c&FV&FZ!)t&FZ&F[!2w&F[&F]!2w&F]&GX!)t&GX&G^!2w&G^&Gc!)t&Gc&Gd!2w&Gd&Ge!2w&Ge&Gi!)t&Gi&Ic!2w&Ic&Ii!)t&Ii&Il!2w&Il&Im!)t&Im&Kk!2w&Kk&Kl!)t&Kl&Kp!2w&Kp&Ku!)t&Ku&Lp!2w&Lp&Ls!)t&Ls&Nu!2w&Nu' W!)t' W' s!2w' s'!z!)t'!z'#[!2w'#['.b!)t'.b*3f!2w*3f*5S!)t*5S40_!2w40_41d!)t41d4Js!2w4Js4LY!)t4LY4MY!2w4MY4M[!)t4M[5%T!2w5%T5%W!)t5%W5%h!2w5%h5%r!)t5%r5%s!2w5%s5%t!2w5%t5&Y!)t5&Y5'Z!2w5'Z5'k!)t5'k5(U!2w5(U5(^!)t5(^5)v!2w5)v5*y!)t5*y5+S!2w5+S5+U!)t5+U5-a!2w5-a5-c!)t5-c5-g!2w5-g5-h!)t5-h5-l!2w5-l5-x!)t5-x5.T!2w5.T5/t!)t5/t50O!2w50O50P!)t50P50S!2w50S50T!)t50T50X!2w50X50Y!)t50Y50q!2w50q51`!)t51`52f!2w52f52t!)t52t53x!2w53x55Y!)t55Y55`!2w55`55c!)t55c55d!2w55d55r!)t55r56`!2w56`56j!)t56j57R!2w57R57l!)t57l58Z!2w58Z58b!)t58b59c!2w59c5:P!)t5:P5:Q!2w5:Q5;S!)t5;S5;}!2w5;}5<f!)t5<f5<i!2w5<i5<j!)t5<j5<r!2w5<r5=W!)t5=W5=o!2w5=o5=r!)t5=r5=s!2w5=s5=x!)t5=x5>z!2w5>z5>{!)t5>{5>|!2w5>|5?P!)t5?P5?Q!2w5?Q5?R!2w5?R5?T!)t5?T5?Y!2w5?Y5?[!)t5?[5?]!2w5?]5?^!)t5?^5?_!2w5?_5?w!)t5?w5?z!2w5?z5?|!)t5?|5@X!2w5@X5@`!)t5@`5@c!2w5@c5@o!)t5@o5@u!2w5@u5@w!)t5@w5@}!2w5@}5AP!)t5AP5AV!2w5AV5A`!)t5A`5Ag!2w5Ag5Ah!)t5Ah5Ao!2w5Ao5Dv!)t5Dv5Ek!2w5Ek5FY!)t5FY;%S!2w;%S;%`!)t;%`;%w!2w;%w;%{!)t;%{;'O!2w;'O;'S!)t;'S;=`!.]<%l?&r!)t?&r?.p!2w?.p?.r!)t?.r?1Q!2w?1Q?1x!)t?1x?2P!2w?2P?2]!)t?2]?2b!2w?2b?2g!)t?2g?2h!2w?2h?2i!)t?2i?2s!2w?2s?2t!)t?2t?3R!2w?3R?3S!)t?3S?3X!2w?3X?3Y!)t?3Y?3Z!2w?3Z?3[!)t?3[?3]!2w?3]?3^!2w?3^?3_!)t?3_?3`!2w?3`?3a!2w?3a?3b!)t?3b?5r!2w?5r?6e!)t?6e?>`!2w?>`?>r!)t?>r?@U!2w?@U?@W!)t?@W?A`!2w?A`?BY!)t?BY?Bf!2w?Bf?EO!)t?EO?ET!2w?ET?EU!)t?EU?HR!2w?HR?Hw!)t?Hw?Ic!2w?Ic?Ii!)t?Ii?JT!2w?JT?J`!)t?J`?L]!2w?L]?L`!)t?L`?Lf!2w?Lf?Lh!)t?Lh?Ln!2w?Ln?Lp!)t?Lp?Lv!2w?Lv?Lx!)t?Lx?L{!2w?L{O!)t^!)}X!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)tY!*qV!OWzQOw!*jwx!+Wx#S!*j#S#T!+o#T;'S!*j;'S;=`!,W<%lO!*jW!+]S!OWO#S!+W#T;'S!+W;'S;=`!+i<%lO!+WW!+lP;=`<%l!+WQ!+tSzQOw!+ox;'S!+o;'S;=`!,Q<%lO!+oQ!,TP;=`<%l!+oY!,ZP;=`<%l!*j[!,eV!OW|SOr!,^rs!+Ws#S!,^#S#T!,z#T;'S!,^;'S;=`!-c<%lO!,^S!-PS|SOr!,zs;'S!,z;'S;=`!-]<%lO!,zS!-`P;=`<%l!,z[!-fP;=`<%l!,^U!-pV|SzQOr!-irs!+osw!-iwx!,zx;'S!-i;'S;=`!.V<%lO!-iU!.YP;=`<%l!-i^!.`P;=`<%l!)t!a!.nm!OW|SzQk!ROX!)tX^!.c^p!)tpq!.cqr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T#y!)t#y#z!.c#z$f!)t$f$g!.c$g#BY!)t#BY#BZ!.c#BZ$IS!)t$IS$I_!.c$I_$I|!)t$I|$JO!.c$JO$JT!)t$JT$JU!.c$JU$KV!)t$KV$KW!.c$KW&FU!)t&FU&FV!.c&FV;'S!)t;'S;=`!.]<%lO!)t!a!0vo!OW|SzQuPk!ROX!)tXY!.cYZ!0iZ^!.c^p!)tpq!.cqr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T#y!)t#y#z!.c#z$f!)t$f$g!.c$g#BY!)t#BY#BZ!.c#BZ$IS!)t$IS$I_!.c$I_$I|!)t$I|$JO!.c$JO$JT!)t$JT$JU!.c$JU$KV!)t$KV$KW!.c$KW&FU!)t&FU&FV!.c&FV;'S!)t;'S;=`!.]<%lO!)t_!3S2g!OW|SzQmPOq!)tqr!2wrs#9kst!2wtu!2wuv!2wvw!2wwx';ixz!)tz{!2w{|!2w|!O!)t!O!P!2w!P!Q!2w!Q![!2w![!a!)t!a!b!2w!b!c!)t!c!}!2w!}#O!)t#O#P!2w#P#R!)t#R#S!2w#S#T)Hy#T#o!2w#o$p!)t$p$q!2w$q${!)t${$|!2w$|%Q!)t%Q%R!2w%R%W!)t%W%o!2w%o%p!)t%p&a!2w&a&b!)t&b0`!2w0`0d!)t0d0p!2w0p1O!)t1O1T!2w1T1[!)t1[1]!2w1]1^!)t1^1_!2w1_4U!)t4U4Z!2w4Z4[!)t4[4]!2w4]4^!2w4^4`!)t4`4d!2w4d4l!)t4l4m!2w4m4n!)t4n4q!2w4q4r!)t4r4s!2w4s4t!)t4t5Y!2w5Y5Z!)t5Z7Q!2w7Q7R!)t7R:S!2w:S:[!)t:[=p!2w=p=y!)t=y>q!2w>q>s!)t>s>t!2w>t>{!)t>{?t!2w?tA`!)tA`A{!2wA{BQ!)tBQBT!2wBTCS!)tCSDP!2wDPDt!)tDtDu!2wDuDv!2wDvDw!)tDwGO!2wGOGP!)tGPGQ!2wGQGa!)tGaGb!2wGbGc!2wGcGj!)tGjGk!2wGkGl!2wGlGv!)tGvGy!2wGyG{!)tG{G|!2wG|H^!)tH^H_!2wH_H`!)tH`IO!2wIOIm!)tImKj!2wKjKu!)tKuKv!2wKvL`!)tL`MR!2wMRM[!)tM[M]!2wM]M^!2wM^Mb!)tMbMc!2wMcMh!)tMhNO!2wNONS!)tNSNT!2wNTN^!)tN^N_!2wN_Nb!)tNbNc!2wNcNz!)tNz! e!2w! e!#O!)t!#O!#P!2w!#P!#Q!)t!#Q!#]!2w!#]!%W!)t!%W!&`!2w!&`!&c!)t!&c!&d!2w!&d!&v!)t!&v!&w!2w!&w!'O!)t!'O!'Y!2w!'Y!'i!)t!'i!'p!2w!'p!'q!)t!'q!'x!2w!'x!'}!)t!'}!(V!2w!(V!(X!)t!(X!(Y!2w!(Y!(Z!2w!(Z!(]!)t!(]!(s!2w!(s!(t!)t!(t!({!2w!({!(|!)t!(|!(}!2w!(}!)Q!)t!)Q!)U!2w!)U!)X!)t!)X!)Y!2w!)Y!)j!)t!)j!)k!2w!)k!)x!)t!)x!)y!2w!)y!)z!2w!)z!){!)t!){!*O!2w!*O!*^!)t!*^!*_!2w!*_!*`!2w!*`!*s!)t!*s!*y!2w!*y!*}!)t!*}!+O!2w!+O!+P!2w!+P!+R!)t!+R!+i!2w!+i!+j!)t!+j!+q!2w!+q!+r!)t!+r!+s!2w!+s!+t!2w!+t!+u!)t!+u!+v!2w!+v!+w!2w!+w!+x!)t!+x!+y!2w!+y!+z!2w!+z!,k!)t!,k!,o!2w!,o!,p!)t!,p!,q!2w!,q!-U!)t!-U!-X!2w!-X!-i!)t!-i!-r!2w!-r!-s!)t!-s!-v!2w!-v!-w!)t!-w!._!2w!._!.`!)t!.`!.g!2w!.g!.h!)t!.h!.i!2w!.i!.j!2w!.j!.k!)t!.k!.p!2w!.p!.s!)t!.s!.t!2w!.t!/W!)t!/W!/X!2w!/X!/h!)t!/h!/i!2w!/i!/j!2w!/j!0_!)t!0_!0g!2w!0g!0i!)t!0i!0j!2w!0j!0k!2w!0k!0m!)t!0m!1T!2w!1T!1U!)t!1U!1]!2w!1]!1^!)t!1^!1_!2w!1_!1`!2w!1`!1a!)t!1a!1f!2w!1f!1i!)t!1i!1j!2w!1j!2Y!)t!2Y!2Z!2w!2Z!2[!2w!2[!2]!)t!2]!2`!2w!2`!2o!)t!2o!2p!2w!2p!3R!)t!3R!3S!2w!3S!3T!)t!3T!3Z!2w!3Z!3^!)t!3^!3a!2w!3a!3b!)t!3b!3f!2w!3f!3i!)t!3i!3j!2w!3j!3k!2w!3k!3l!)t!3l!3m!2w!3m!3n!)t!3n!3o!2w!3o!3p!2w!3p!3s!)t!3s!3t!2w!3t!3u!2w!3u!3x!)t!3x!3{!2w!3{!4O!)t!4O!4[!2w!4[!4r!)t!4r!4s!2w!4s!5y!)t!5y!6R!2w!6R!6S!)t!6S!6V!2w!6V!6W!)t!6W!6o!2w!6o!6p!)t!6p!6z!2w!6z!6{!)t!6{!7Q!2w!7Q!7T!)t!7T!7U!2w!7U!7p!)t!7p!7q!2w!7q!7r!2w!7r!7x!)t!7x!7y!2w!7y!7z!2w!7z!8o!)t!8o!8w!2w!8w!8x!)t!8x!8{!2w!8{!8|!)t!8|!9e!2w!9e!9f!)t!9f!9p!2w!9p!9q!)t!9q!9v!2w!9v!9y!)t!9y!9z!2w!9z!:l!)t!:l!:m!2w!:m!:n!)t!:n!:o!2w!:o!:p!2w!:p!;P!)t!;P!;Q!2w!;Q!;R!2w!;R!;e!)t!;e!;m!2w!;m!;n!)t!;n!;q!2w!;q!;r!)t!;r!<m!2w!<m!<o!)t!<o!<p!2w!<p!=Q!)t!=Q!=R!2w!=R!=d!)t!=d!=e!2w!=e!=f!2w!=f!>O!)t!>O!>U!2w!>U!>Z!)t!>Z!>m!2w!>m!>p!)t!>p!?Y!2w!?Y!?Z!)t!?Z!?d!2w!?d!?e!)t!?e!?f!2w!?f!?h!)t!?h!?o!2w!?o!@{!)t!@{!A}!2w!A}!BO!)t!BO!BP!2w!BP!BQ!2w!BQ!B^!)t!B^!Be!2w!Be!Cq!)t!Cq!Cr!2w!Cr!Cs!2w!Cs!Ct!)t!Ct!Cu!2w!Cu!Cw!)t!Cw!Cx!2w!Cx!Cy!2w!Cy!Cz!)t!Cz!C{!2w!C{!C}!)t!C}!DO!2w!DO!DU!)t!DU!DY!2w!DY!DZ!)t!DZ!Db!2w!Db!Dc!)t!Dc!Df!2w!Df!Dg!)t!Dg!Dh!2w!Dh!Di!)t!Di!Dj!2w!Dj!Dl!)t!Dl!Dm!2w!Dm!Dn!2w!Dn!Do!)t!Do!Ds!2w!Ds!Dt!)t!Dt!Du!2w!Du!Dv!2w!Dv!EP!)t!EP!EQ!2w!EQ!ES!)t!ES!EX!2w!EX!EY!)t!EY!EZ!2w!EZ!Ep!)t!Ep!Et!2w!Et!Ff!)t!Ff!Fg!2w!Fg!Gx!)t!Gx!HQ!2w!HQ!HR!)t!HR!Hw!2w!Hw!Id!)t!Id!Ii!2w!Ii!LQ!)t!LQ!L}!2w!L}!Mc!)t!Mc!Md!2w!Md!Mt!)t!Mt!Mz!2w!Mz!NO!)t!NO!NS!2w!NS!NV!)t!NV!NW!2w!NW!NZ!)t!NZ!N[!2w!N[!N]!2w!N]!Nd!)t!Nd!Ng!2w!Ng!Nk!)t!Nk!Nx!2w!Nx# U!)t# U# V!2w# V# h!)t# h#!`!2w#!`#!a!)t#!a#!b!2w#!b#!g!)t#!g#!h!2w#!h#!j!)t#!j##g!2w##g##h!)t##h#*s!2w#*s#*t!)t#*t#*x!2w#*x#*z!)t#*z#+R!2w#+R#+S!)t#+S#+T!2w#+T#+U!)t#+U#+Y!2w#+Y#+[!)t#+[#,V!2w#,V#,W!)t#,W#,[!2w#,[#,^!)t#,^#-P!2w#-P#-Q!)t#-Q#-U!2w#-U#-W!)t#-W#-_!2w#-_#-`!)t#-`#-a!2w#-a#-b!)t#-b#-f!2w#-f#-h!)t#-h#-w!2w#-w#-x!)t#-x#/T!2w#/T#/U!)t#/U#/Y!2w#/Y#/[!)t#/[#0q!2w#0q#1h!)t#1h#1x!2w#1x#2Y!)t#2Y#4R!2w#4R#4_!)t#4_#Au!2w#Au#Aw!)t#Aw#BY!2w#BY#BZ!)t#BZ#Bu!2w#Bu#Bz!)t#Bz#Di!2w#Di#EO!)t#EO#E]!2w#E]#E^!)t#E^#Eb!2w#Eb#Ep!)t#Ep#FS!2w#FS#Fb!)t#Fb#Ft!2w#Ft#GS!)t#GS#Ga!2w#Ga#Gb!)t#Gb#Ge!2w#Ge#Gt!)t#Gt#Hz!2w#Hz#Io!)t#Io#Ip!2w#Ip#It!)t#It#Iu!2w#Iu#K[!)t#K[#MW!2w#MW#M`!)t#M`#NZ!2w#NZ#N[!)t#N[#N]!2w#N]#Nb!)t#Nb$ z!2w$ z$!U!)t$!U$!s!2w$!s$#x!)t$#x$$h!2w$$h$$j!)t$$j$$o!2w$$o$$z!)t$$z$%x!2w$%x$&_!)t$&_$&f!2w$&f$'p!)t$'p$(X!2w$(X$(b!)t$(b$)i!2w$)i$+_!)t$+_$+`!2w$+`$-a!)t$-a$.b!2w$.b$.s!)t$.s$.z!2w$.z$0T!)t$0T$0s!2w$0s$1Q!)t$1Q$1R!2w$1R$1S!2w$1S$1^!)t$1^$2[!2w$2[$2v!)t$2v$3l!2w$3l$4g!)t$4g$4j!2w$4j$4t!)t$4t$5j!2w$5j$7y!)t$7y$7}!2w$7}$8O!)t$8O$8S!2w$8S$8V!)t$8V$8W!2w$8W$8X!2w$8X$8b!)t$8b$<j!2w$<j$=|!)t$=|$DO!2w$DO$DQ!)t$DQ$DW!2w$DW$DY!)t$DY$EQ!2w$EQ$ES!)t$ES$EY!2w$EY$E[!)t$E[$Ed!2w$Ed$Ee!)t$Ee$Ef!2w$Ef$Eg!)t$Eg$Eh!2w$Eh$Ei!)t$Ei$Ej!2w$Ej$Ek!)t$Ek$F[!2w$F[$F^!)t$F^$Ge!2w$Ge$Gf!)t$Gf$Gm!2w$Gm$Gn!)t$Gn$Go!2w$Go$Gr!)t$Gr$Gu!2w$Gu$Gv!)t$Gv$G}!2w$G}$HQ!)t$HQ$HU!2w$HU$HW!)t$HW$H^!2w$H^$Hb!)t$Hb$Ho!2w$Ho$Ht!)t$Ht$Hw!2w$Hw$Hx!)t$Hx$IP!2w$IP$Ki!)t$Ki$Kj!2w$Kj$Kw!)t$Kw$Kx!2w$Kx$LY!)t$LY$Lg!2w$Lg$Np!)t$Np$Nq!2w$Nq$Nu!)t$Nu$Nv!2w$Nv$Nx!)t$Nx% S!2w% S% T!)t% T% U!2w% U% X!)t% X% ^!2w% ^% d!)t% d% e!2w% e% f!)t% f% g!2w% g% h!)t% h% i!2w% i% j!)t% j% n!2w% n% o!)t% o% z!2w% z% |!)t% |%!Q!2w%!Q%!V!)t%!V%![!2w%![%!`!)t%!`%!a!2w%!a%#g!)t%#g%#h!2w%#h%#i!2w%#i&/x!)t&/x&0y!2w&0y&0z!)t&0z&1{!2w&1{&1|!)t&1|&4w!2w&4w&4}!)t&4}&5R!2w&5R&5U!)t&5U&5V!2w&5V&5W!2w&5W&5d!)t&5d&6[!2w&6[&6]!)t&6]&6^!2w&6^&6c!)t&6c&6d!2w&6d&6f!)t&6f&7p!2w&7p&7w!)t&7w&7x!2w&7x&8Y!)t&8Y&8q!2w&8q&8z!)t&8z&9R!2w&9R&9S!)t&9S&9Z!2w&9Z&9[!)t&9[&9c!2w&9c&9d!)t&9d&9k!2w&9k&9l!)t&9l&9s!2w&9s&9t!)t&9t&9{!2w&9{&9|!)t&9|&:T!2w&:T&:U!)t&:U&:]!2w&:]&<P!)t&<P&<Q!2w&<Q&FZ!)t&FZ&F[!2w&F[&F]!2w&F]&GX!)t&GX&G^!2w&G^&Gc!)t&Gc&Gd!2w&Gd&Ge!2w&Ge&Gi!)t&Gi&Ic!2w&Ic&Ii!)t&Ii&Il!2w&Il&Im!)t&Im&Kk!2w&Kk&Kl!)t&Kl&Kp!2w&Kp&Ku!)t&Ku&Lp!2w&Lp&Ls!)t&Ls&Nu!2w&Nu' W!)t' W' s!2w' s'!z!)t'!z'#[!2w'#['.b!)t'.b*3f!2w*3f*5S!)t*5S40_!2w40_41d!)t41d4Js!2w4Js4LY!)t4LY4MY!2w4MY4M[!)t4M[5%T!2w5%T5%W!)t5%W5%h!2w5%h5%r!)t5%r5%s!2w5%s5%t!2w5%t5&Y!)t5&Y5'Z!2w5'Z5'k!)t5'k5(U!2w5(U5(^!)t5(^5)v!2w5)v5*y!)t5*y5+S!2w5+S5+U!)t5+U5-a!2w5-a5-c!)t5-c5-g!2w5-g5-h!)t5-h5-l!2w5-l5-x!)t5-x5.T!2w5.T5/t!)t5/t50O!2w50O50P!)t50P50S!2w50S50T!)t50T50X!2w50X50Y!)t50Y50q!2w50q51`!)t51`52f!2w52f52t!)t52t53x!2w53x55Y!)t55Y55`!2w55`55c!)t55c55d!2w55d55r!)t55r56`!2w56`56j!)t56j57R!2w57R57l!)t57l58Z!2w58Z58b!)t58b59c!2w59c5:P!)t5:P5:Q!2w5:Q5;S!)t5;S5;}!2w5;}5<f!)t5<f5<i!2w5<i5<j!)t5<j5<r!2w5<r5=W!)t5=W5=o!2w5=o5=r!)t5=r5=s!2w5=s5=x!)t5=x5>z!2w5>z5>{!)t5>{5>|!2w5>|5?P!)t5?P5?Q!2w5?Q5?R!2w5?R5?T!)t5?T5?Y!2w5?Y5?[!)t5?[5?]!2w5?]5?^!)t5?^5?_!2w5?_5?w!)t5?w5?z!2w5?z5?|!)t5?|5@X!2w5@X5@`!)t5@`5@c!2w5@c5@o!)t5@o5@u!2w5@u5@w!)t5@w5@}!2w5@}5AP!)t5AP5AV!2w5AV5A`!)t5A`5Ag!2w5Ag5Ah!)t5Ah5Ao!2w5Ao5Dv!)t5Dv5Ek!2w5Ek5FY!)t5FY;%S!2w;%S;%`!)t;%`;%w!2w;%w;%{!)t;%{;'O!2w;'O;'S!)t;'S;=`!.]<%l?&r!)t?&r?.p!2w?.p?.r!)t?.r?1Q!2w?1Q?1x!)t?1x?2P!2w?2P?2]!)t?2]?2b!2w?2b?2g!)t?2g?2h!2w?2h?2i!)t?2i?2s!2w?2s?2t!)t?2t?3R!2w?3R?3S!)t?3S?3X!2w?3X?3Y!)t?3Y?3Z!2w?3Z?3[!)t?3[?3]!2w?3]?3^!2w?3^?3_!)t?3_?3`!2w?3`?3a!2w?3a?3b!)t?3b?5r!2w?5r?6e!)t?6e?>`!2w?>`?>r!)t?>r?@U!2w?@U?@W!)t?@W?A`!2w?A`?BY!)t?BY?Bf!2w?Bf?EO!)t?EO?ET!2w?ET?EU!)t?EU?HR!2w?HR?Hw!)t?Hw?Ic!2w?Ic?Ii!)t?Ii?JT!2w?JT?J`!)t?J`?L]!2w?L]?L`!)t?L`?Lf!2w?Lf?Lh!)t?Lh?Ln!2w?Ln?Lp!)t?Lp?Lv!2w?Lv?Lx!)t?Lx?L{!2w?L{O!)tZ#9t2g!OWzQmPOq!*jqr#9krs#9kst#9ktu#9kuv#9kvw#9kwx$@]xz!*jz{#9k{|#9k|!O!*j!O!P#9k!P!Q#9k!Q![#9k![!a!*j!a!b#9k!b!c!*j!c!}#9k!}#O!*j#O#P#9k#P#R!*j#R#S#9k#S#T&4y#T#o#9k#o$p!*j$p$q#9k$q${!*j${$|#9k$|%Q!*j%Q%R#9k%R%W!*j%W%o#9k%o%p!*j%p&a#9k&a&b!*j&b0`#9k0`0d!*j0d0p#9k0p1O!*j1O1T#9k1T1[!*j1[1]#9k1]1^!*j1^1_#9k1_4U!*j4U4Z#9k4Z4[!*j4[4]#9k4]4^#9k4^4`!*j4`4d#9k4d4l!*j4l4m#9k4m4n!*j4n4q#9k4q4r!*j4r4s#9k4s4t!*j4t5Y#9k5Y5Z!*j5Z7Q#9k7Q7R!*j7R:S#9k:S:[!*j:[=p#9k=p=y!*j=y>q#9k>q>s!*j>s>t#9k>t>{!*j>{?t#9k?tA`!*jA`A{#9kA{BQ!*jBQBT#9kBTCS!*jCSDP#9kDPDt!*jDtDu#9kDuDv#9kDvDw!*jDwGO#9kGOGP!*jGPGQ#9kGQGa!*jGaGb#9kGbGc#9kGcGj!*jGjGk#9kGkGl#9kGlGv!*jGvGy#9kGyG{!*jG{G|#9kG|H^!*jH^H_#9kH_H`!*jH`IO#9kIOIm!*jImKj#9kKjKu!*jKuKv#9kKvL`!*jL`MR#9kMRM[!*jM[M]#9kM]M^#9kM^Mb!*jMbMc#9kMcMh!*jMhNO#9kNONS!*jNSNT#9kNTN^!*jN^N_#9kN_Nb!*jNbNc#9kNcNz!*jNz! e#9k! e!#O!*j!#O!#P#9k!#P!#Q!*j!#Q!#]#9k!#]!%W!*j!%W!&`#9k!&`!&c!*j!&c!&d#9k!&d!&v!*j!&v!&w#9k!&w!'O!*j!'O!'Y#9k!'Y!'i!*j!'i!'p#9k!'p!'q!*j!'q!'x#9k!'x!'}!*j!'}!(V#9k!(V!(X!*j!(X!(Y#9k!(Y!(Z#9k!(Z!(]!*j!(]!(s#9k!(s!(t!*j!(t!({#9k!({!(|!*j!(|!(}#9k!(}!)Q!*j!)Q!)U#9k!)U!)X!*j!)X!)Y#9k!)Y!)j!*j!)j!)k#9k!)k!)x!*j!)x!)y#9k!)y!)z#9k!)z!){!*j!){!*O#9k!*O!*^!*j!*^!*_#9k!*_!*`#9k!*`!*s!*j!*s!*y#9k!*y!*}!*j!*}!+O#9k!+O!+P#9k!+P!+R!*j!+R!+i#9k!+i!+j!*j!+j!+q#9k!+q!+r!*j!+r!+s#9k!+s!+t#9k!+t!+u!*j!+u!+v#9k!+v!+w#9k!+w!+x!*j!+x!+y#9k!+y!+z#9k!+z!,k!*j!,k!,o#9k!,o!,p!*j!,p!,q#9k!,q!-U!*j!-U!-X#9k!-X!-i!*j!-i!-r#9k!-r!-s!*j!-s!-v#9k!-v!-w!*j!-w!._#9k!._!.`!*j!.`!.g#9k!.g!.h!*j!.h!.i#9k!.i!.j#9k!.j!.k!*j!.k!.p#9k!.p!.s!*j!.s!.t#9k!.t!/W!*j!/W!/X#9k!/X!/h!*j!/h!/i#9k!/i!/j#9k!/j!0_!*j!0_!0g#9k!0g!0i!*j!0i!0j#9k!0j!0k#9k!0k!0m!*j!0m!1T#9k!1T!1U!*j!1U!1]#9k!1]!1^!*j!1^!1_#9k!1_!1`#9k!1`!1a!*j!1a!1f#9k!1f!1i!*j!1i!1j#9k!1j!2Y!*j!2Y!2Z#9k!2Z!2[#9k!2[!2]!*j!2]!2`#9k!2`!2o!*j!2o!2p#9k!2p!3R!*j!3R!3S#9k!3S!3T!*j!3T!3Z#9k!3Z!3^!*j!3^!3a#9k!3a!3b!*j!3b!3f#9k!3f!3i!*j!3i!3j#9k!3j!3k#9k!3k!3l!*j!3l!3m#9k!3m!3n!*j!3n!3o#9k!3o!3p#9k!3p!3s!*j!3s!3t#9k!3t!3u#9k!3u!3x!*j!3x!3{#9k!3{!4O!*j!4O!4[#9k!4[!4r!*j!4r!4s#9k!4s!5y!*j!5y!6R#9k!6R!6S!*j!6S!6V#9k!6V!6W!*j!6W!6o#9k!6o!6p!*j!6p!6z#9k!6z!6{!*j!6{!7Q#9k!7Q!7T!*j!7T!7U#9k!7U!7p!*j!7p!7q#9k!7q!7r#9k!7r!7x!*j!7x!7y#9k!7y!7z#9k!7z!8o!*j!8o!8w#9k!8w!8x!*j!8x!8{#9k!8{!8|!*j!8|!9e#9k!9e!9f!*j!9f!9p#9k!9p!9q!*j!9q!9v#9k!9v!9y!*j!9y!9z#9k!9z!:l!*j!:l!:m#9k!:m!:n!*j!:n!:o#9k!:o!:p#9k!:p!;P!*j!;P!;Q#9k!;Q!;R#9k!;R!;e!*j!;e!;m#9k!;m!;n!*j!;n!;q#9k!;q!;r!*j!;r!<m#9k!<m!<o!*j!<o!<p#9k!<p!=Q!*j!=Q!=R#9k!=R!=d!*j!=d!=e#9k!=e!=f#9k!=f!>O!*j!>O!>U#9k!>U!>Z!*j!>Z!>m#9k!>m!>p!*j!>p!?Y#9k!?Y!?Z!*j!?Z!?d#9k!?d!?e!*j!?e!?f#9k!?f!?h!*j!?h!?o#9k!?o!@{!*j!@{!A}#9k!A}!BO!*j!BO!BP#9k!BP!BQ#9k!BQ!B^!*j!B^!Be#9k!Be!Cq!*j!Cq!Cr#9k!Cr!Cs#9k!Cs!Ct!*j!Ct!Cu#9k!Cu!Cw!*j!Cw!Cx#9k!Cx!Cy#9k!Cy!Cz!*j!Cz!C{#9k!C{!C}!*j!C}!DO#9k!DO!DU!*j!DU!DY#9k!DY!DZ!*j!DZ!Db#9k!Db!Dc!*j!Dc!Df#9k!Df!Dg!*j!Dg!Dh#9k!Dh!Di!*j!Di!Dj#9k!Dj!Dl!*j!Dl!Dm#9k!Dm!Dn#9k!Dn!Do!*j!Do!Ds#9k!Ds!Dt!*j!Dt!Du#9k!Du!Dv#9k!Dv!EP!*j!EP!EQ#9k!EQ!ES!*j!ES!EX#9k!EX!EY!*j!EY!EZ#9k!EZ!Ep!*j!Ep!Et#9k!Et!Ff!*j!Ff!Fg#9k!Fg!Gx!*j!Gx!HQ#9k!HQ!HR!*j!HR!Hw#9k!Hw!Id!*j!Id!Ii#9k!Ii!LQ!*j!LQ!L}#9k!L}!Mc!*j!Mc!Md#9k!Md!Mt!*j!Mt!Mz#9k!Mz!NO!*j!NO!NS#9k!NS!NV!*j!NV!NW#9k!NW!NZ!*j!NZ!N[#9k!N[!N]#9k!N]!Nd!*j!Nd!Ng#9k!Ng!Nk!*j!Nk!Nx#9k!Nx# U!*j# U# V#9k# V# h!*j# h#!`#9k#!`#!a!*j#!a#!b#9k#!b#!g!*j#!g#!h#9k#!h#!j!*j#!j##g#9k##g##h!*j##h#*s#9k#*s#*t!*j#*t#*x#9k#*x#*z!*j#*z#+R#9k#+R#+S!*j#+S#+T#9k#+T#+U!*j#+U#+Y#9k#+Y#+[!*j#+[#,V#9k#,V#,W!*j#,W#,[#9k#,[#,^!*j#,^#-P#9k#-P#-Q!*j#-Q#-U#9k#-U#-W!*j#-W#-_#9k#-_#-`!*j#-`#-a#9k#-a#-b!*j#-b#-f#9k#-f#-h!*j#-h#-w#9k#-w#-x!*j#-x#/T#9k#/T#/U!*j#/U#/Y#9k#/Y#/[!*j#/[#0q#9k#0q#1h!*j#1h#1x#9k#1x#2Y!*j#2Y#4R#9k#4R#4_!*j#4_#Au#9k#Au#Aw!*j#Aw#BY#9k#BY#BZ!*j#BZ#Bu#9k#Bu#Bz!*j#Bz#Di#9k#Di#EO!*j#EO#E]#9k#E]#E^!*j#E^#Eb#9k#Eb#Ep!*j#Ep#FS#9k#FS#Fb!*j#Fb#Ft#9k#Ft#GS!*j#GS#Ga#9k#Ga#Gb!*j#Gb#Ge#9k#Ge#Gt!*j#Gt#Hz#9k#Hz#Io!*j#Io#Ip#9k#Ip#It!*j#It#Iu#9k#Iu#K[!*j#K[#MW#9k#MW#M`!*j#M`#NZ#9k#NZ#N[!*j#N[#N]#9k#N]#Nb!*j#Nb$ z#9k$ z$!U!*j$!U$!s#9k$!s$#x!*j$#x$$h#9k$$h$$j!*j$$j$$o#9k$$o$$z!*j$$z$%x#9k$%x$&_!*j$&_$&f#9k$&f$'p!*j$'p$(X#9k$(X$(b!*j$(b$)i#9k$)i$+_!*j$+_$+`#9k$+`$-a!*j$-a$.b#9k$.b$.s!*j$.s$.z#9k$.z$0T!*j$0T$0s#9k$0s$1Q!*j$1Q$1R#9k$1R$1S#9k$1S$1^!*j$1^$2[#9k$2[$2v!*j$2v$3l#9k$3l$4g!*j$4g$4j#9k$4j$4t!*j$4t$5j#9k$5j$7y!*j$7y$7}#9k$7}$8O!*j$8O$8S#9k$8S$8V!*j$8V$8W#9k$8W$8X#9k$8X$8b!*j$8b$<j#9k$<j$=|!*j$=|$DO#9k$DO$DQ!*j$DQ$DW#9k$DW$DY!*j$DY$EQ#9k$EQ$ES!*j$ES$EY#9k$EY$E[!*j$E[$Ed#9k$Ed$Ee!*j$Ee$Ef#9k$Ef$Eg!*j$Eg$Eh#9k$Eh$Ei!*j$Ei$Ej#9k$Ej$Ek!*j$Ek$F[#9k$F[$F^!*j$F^$Ge#9k$Ge$Gf!*j$Gf$Gm#9k$Gm$Gn!*j$Gn$Go#9k$Go$Gr!*j$Gr$Gu#9k$Gu$Gv!*j$Gv$G}#9k$G}$HQ!*j$HQ$HU#9k$HU$HW!*j$HW$H^#9k$H^$Hb!*j$Hb$Ho#9k$Ho$Ht!*j$Ht$Hw#9k$Hw$Hx!*j$Hx$IP#9k$IP$Ki!*j$Ki$Kj#9k$Kj$Kw!*j$Kw$Kx#9k$Kx$LY!*j$LY$Lg#9k$Lg$Np!*j$Np$Nq#9k$Nq$Nu!*j$Nu$Nv#9k$Nv$Nx!*j$Nx% S#9k% S% T!*j% T% U#9k% U% X!*j% X% ^#9k% ^% d!*j% d% e#9k% e% f!*j% f% g#9k% g% h!*j% h% i#9k% i% j!*j% j% n#9k% n% o!*j% o% z#9k% z% |!*j% |%!Q#9k%!Q%!V!*j%!V%![#9k%![%!`!*j%!`%!a#9k%!a%#g!*j%#g%#h#9k%#h%#i#9k%#i&/x!*j&/x&0y#9k&0y&0z!*j&0z&1{#9k&1{&1|!*j&1|&4w#9k&4w&4}!*j&4}&5R#9k&5R&5U!*j&5U&5V#9k&5V&5W#9k&5W&5d!*j&5d&6[#9k&6[&6]!*j&6]&6^#9k&6^&6c!*j&6c&6d#9k&6d&6f!*j&6f&7p#9k&7p&7w!*j&7w&7x#9k&7x&8Y!*j&8Y&8q#9k&8q&8z!*j&8z&9R#9k&9R&9S!*j&9S&9Z#9k&9Z&9[!*j&9[&9c#9k&9c&9d!*j&9d&9k#9k&9k&9l!*j&9l&9s#9k&9s&9t!*j&9t&9{#9k&9{&9|!*j&9|&:T#9k&:T&:U!*j&:U&:]#9k&:]&<P!*j&<P&<Q#9k&<Q&FZ!*j&FZ&F[#9k&F[&F]#9k&F]&GX!*j&GX&G^#9k&G^&Gc!*j&Gc&Gd#9k&Gd&Ge#9k&Ge&Gi!*j&Gi&Ic#9k&Ic&Ii!*j&Ii&Il#9k&Il&Im!*j&Im&Kk#9k&Kk&Kl!*j&Kl&Kp#9k&Kp&Ku!*j&Ku&Lp#9k&Lp&Ls!*j&Ls&Nu#9k&Nu' W!*j' W' s#9k' s'!z!*j'!z'#[#9k'#['.b!*j'.b*3f#9k*3f*5S!*j*5S40_#9k40_41d!*j41d4Js#9k4Js4LY!*j4LY4MY#9k4MY4M[!*j4M[5%T#9k5%T5%W!*j5%W5%h#9k5%h5%r!*j5%r5%s#9k5%s5%t#9k5%t5&Y!*j5&Y5'Z#9k5'Z5'k!*j5'k5(U#9k5(U5(^!*j5(^5)v#9k5)v5*y!*j5*y5+S#9k5+S5+U!*j5+U5-a#9k5-a5-c!*j5-c5-g#9k5-g5-h!*j5-h5-l#9k5-l5-x!*j5-x5.T#9k5.T5/t!*j5/t50O#9k50O50P!*j50P50S#9k50S50T!*j50T50X#9k50X50Y!*j50Y50q#9k50q51`!*j51`52f#9k52f52t!*j52t53x#9k53x55Y!*j55Y55`#9k55`55c!*j55c55d#9k55d55r!*j55r56`#9k56`56j!*j56j57R#9k57R57l!*j57l58Z#9k58Z58b!*j58b59c#9k59c5:P!*j5:P5:Q#9k5:Q5;S!*j5;S5;}#9k5;}5<f!*j5<f5<i#9k5<i5<j!*j5<j5<r#9k5<r5=W!*j5=W5=o#9k5=o5=r!*j5=r5=s#9k5=s5=x!*j5=x5>z#9k5>z5>{!*j5>{5>|#9k5>|5?P!*j5?P5?Q#9k5?Q5?R#9k5?R5?T!*j5?T5?Y#9k5?Y5?[!*j5?[5?]#9k5?]5?^!*j5?^5?_#9k5?_5?w!*j5?w5?z#9k5?z5?|!*j5?|5@X#9k5@X5@`!*j5@`5@c#9k5@c5@o!*j5@o5@u#9k5@u5@w!*j5@w5@}#9k5@}5AP!*j5AP5AV#9k5AV5A`!*j5A`5Ag#9k5Ag5Ah!*j5Ah5Ao#9k5Ao5Dv!*j5Dv5Ek#9k5Ek5FY!*j5FY;%S#9k;%S;%`!*j;%`;%w#9k;%w;%{!*j;%{;'O#9k;'O;'S!*j;'S;=`!,W<%l?&r!*j?&r?.p#9k?.p?.r!*j?.r?1Q#9k?1Q?1x!*j?1x?2P#9k?2P?2]!*j?2]?2b#9k?2b?2g!*j?2g?2h#9k?2h?2i!*j?2i?2s#9k?2s?2t!*j?2t?3R#9k?3R?3S!*j?3S?3X#9k?3X?3Y!*j?3Y?3Z#9k?3Z?3[!*j?3[?3]#9k?3]?3^#9k?3^?3_!*j?3_?3`#9k?3`?3a#9k?3a?3b!*j?3b?5r#9k?5r?6e!*j?6e?>`#9k?>`?>r!*j?>r?@U#9k?@U?@W!*j?@W?A`#9k?A`?BY!*j?BY?Bf#9k?Bf?EO!*j?EO?ET#9k?ET?EU!*j?EU?HR#9k?HR?Hw!*j?Hw?Ic#9k?Ic?Ii!*j?Ii?JT#9k?JT?J`!*j?J`?L]#9k?L]?L`!*j?L`?Lf#9k?Lf?Lh!*j?Lh?Ln#9k?Ln?Lp!*j?Lp?Lv#9k?Lv?Lx!*j?Lx?L{#9k?L{O!*jX$@d2g!OWmPOq!+Wqr$@]rs$@]st$@]tu$@]uv$@]vw$@]wx$@]xz!+Wz{$@]{|$@]|!O!+W!O!P$@]!P!Q$@]!Q![$@]![!a!+W!a!b$@]!b!c!+W!c!}$@]!}#O!+W#O#P$@]#P#R!+W#R#S$@]#S#T%F{#T#o$@]#o$p!+W$p$q$@]$q${!+W${$|$@]$|%Q!+W%Q%R$@]%R%W!+W%W%o$@]%o%p!+W%p&a$@]&a&b!+W&b0`$@]0`0d!+W0d0p$@]0p1O!+W1O1T$@]1T1[!+W1[1]$@]1]1^!+W1^1_$@]1_4U!+W4U4Z$@]4Z4[!+W4[4]$@]4]4^$@]4^4`!+W4`4d$@]4d4l!+W4l4m$@]4m4n!+W4n4q$@]4q4r!+W4r4s$@]4s4t!+W4t5Y$@]5Y5Z!+W5Z7Q$@]7Q7R!+W7R:S$@]:S:[!+W:[=p$@]=p=y!+W=y>q$@]>q>s!+W>s>t$@]>t>{!+W>{?t$@]?tA`!+WA`A{$@]A{BQ!+WBQBT$@]BTCS!+WCSDP$@]DPDt!+WDtDu$@]DuDv$@]DvDw!+WDwGO$@]GOGP!+WGPGQ$@]GQGa!+WGaGb$@]GbGc$@]GcGj!+WGjGk$@]GkGl$@]GlGv!+WGvGy$@]GyG{!+WG{G|$@]G|H^!+WH^H_$@]H_H`!+WH`IO$@]IOIm!+WImKj$@]KjKu!+WKuKv$@]KvL`!+WL`MR$@]MRM[!+WM[M]$@]M]M^$@]M^Mb!+WMbMc$@]McMh!+WMhNO$@]NONS!+WNSNT$@]NTN^!+WN^N_$@]N_Nb!+WNbNc$@]NcNz!+WNz! e$@]! e!#O!+W!#O!#P$@]!#P!#Q!+W!#Q!#]$@]!#]!%W!+W!%W!&`$@]!&`!&c!+W!&c!&d$@]!&d!&v!+W!&v!&w$@]!&w!'O!+W!'O!'Y$@]!'Y!'i!+W!'i!'p$@]!'p!'q!+W!'q!'x$@]!'x!'}!+W!'}!(V$@]!(V!(X!+W!(X!(Y$@]!(Y!(Z$@]!(Z!(]!+W!(]!(s$@]!(s!(t!+W!(t!({$@]!({!(|!+W!(|!(}$@]!(}!)Q!+W!)Q!)U$@]!)U!)X!+W!)X!)Y$@]!)Y!)j!+W!)j!)k$@]!)k!)x!+W!)x!)y$@]!)y!)z$@]!)z!){!+W!){!*O$@]!*O!*^!+W!*^!*_$@]!*_!*`$@]!*`!*s!+W!*s!*y$@]!*y!*}!+W!*}!+O$@]!+O!+P$@]!+P!+R!+W!+R!+i$@]!+i!+j!+W!+j!+q$@]!+q!+r!+W!+r!+s$@]!+s!+t$@]!+t!+u!+W!+u!+v$@]!+v!+w$@]!+w!+x!+W!+x!+y$@]!+y!+z$@]!+z!,k!+W!,k!,o$@]!,o!,p!+W!,p!,q$@]!,q!-U!+W!-U!-X$@]!-X!-i!+W!-i!-r$@]!-r!-s!+W!-s!-v$@]!-v!-w!+W!-w!._$@]!._!.`!+W!.`!.g$@]!.g!.h!+W!.h!.i$@]!.i!.j$@]!.j!.k!+W!.k!.p$@]!.p!.s!+W!.s!.t$@]!.t!/W!+W!/W!/X$@]!/X!/h!+W!/h!/i$@]!/i!/j$@]!/j!0_!+W!0_!0g$@]!0g!0i!+W!0i!0j$@]!0j!0k$@]!0k!0m!+W!0m!1T$@]!1T!1U!+W!1U!1]$@]!1]!1^!+W!1^!1_$@]!1_!1`$@]!1`!1a!+W!1a!1f$@]!1f!1i!+W!1i!1j$@]!1j!2Y!+W!2Y!2Z$@]!2Z!2[$@]!2[!2]!+W!2]!2`$@]!2`!2o!+W!2o!2p$@]!2p!3R!+W!3R!3S$@]!3S!3T!+W!3T!3Z$@]!3Z!3^!+W!3^!3a$@]!3a!3b!+W!3b!3f$@]!3f!3i!+W!3i!3j$@]!3j!3k$@]!3k!3l!+W!3l!3m$@]!3m!3n!+W!3n!3o$@]!3o!3p$@]!3p!3s!+W!3s!3t$@]!3t!3u$@]!3u!3x!+W!3x!3{$@]!3{!4O!+W!4O!4[$@]!4[!4r!+W!4r!4s$@]!4s!5y!+W!5y!6R$@]!6R!6S!+W!6S!6V$@]!6V!6W!+W!6W!6o$@]!6o!6p!+W!6p!6z$@]!6z!6{!+W!6{!7Q$@]!7Q!7T!+W!7T!7U$@]!7U!7p!+W!7p!7q$@]!7q!7r$@]!7r!7x!+W!7x!7y$@]!7y!7z$@]!7z!8o!+W!8o!8w$@]!8w!8x!+W!8x!8{$@]!8{!8|!+W!8|!9e$@]!9e!9f!+W!9f!9p$@]!9p!9q!+W!9q!9v$@]!9v!9y!+W!9y!9z$@]!9z!:l!+W!:l!:m$@]!:m!:n!+W!:n!:o$@]!:o!:p$@]!:p!;P!+W!;P!;Q$@]!;Q!;R$@]!;R!;e!+W!;e!;m$@]!;m!;n!+W!;n!;q$@]!;q!;r!+W!;r!<m$@]!<m!<o!+W!<o!<p$@]!<p!=Q!+W!=Q!=R$@]!=R!=d!+W!=d!=e$@]!=e!=f$@]!=f!>O!+W!>O!>U$@]!>U!>Z!+W!>Z!>m$@]!>m!>p!+W!>p!?Y$@]!?Y!?Z!+W!?Z!?d$@]!?d!?e!+W!?e!?f$@]!?f!?h!+W!?h!?o$@]!?o!@{!+W!@{!A}$@]!A}!BO!+W!BO!BP$@]!BP!BQ$@]!BQ!B^!+W!B^!Be$@]!Be!Cq!+W!Cq!Cr$@]!Cr!Cs$@]!Cs!Ct!+W!Ct!Cu$@]!Cu!Cw!+W!Cw!Cx$@]!Cx!Cy$@]!Cy!Cz!+W!Cz!C{$@]!C{!C}!+W!C}!DO$@]!DO!DU!+W!DU!DY$@]!DY!DZ!+W!DZ!Db$@]!Db!Dc!+W!Dc!Df$@]!Df!Dg!+W!Dg!Dh$@]!Dh!Di!+W!Di!Dj$@]!Dj!Dl!+W!Dl!Dm$@]!Dm!Dn$@]!Dn!Do!+W!Do!Ds$@]!Ds!Dt!+W!Dt!Du$@]!Du!Dv$@]!Dv!EP!+W!EP!EQ$@]!EQ!ES!+W!ES!EX$@]!EX!EY!+W!EY!EZ$@]!EZ!Ep!+W!Ep!Et$@]!Et!Ff!+W!Ff!Fg$@]!Fg!Gx!+W!Gx!HQ$@]!HQ!HR!+W!HR!Hw$@]!Hw!Id!+W!Id!Ii$@]!Ii!LQ!+W!LQ!L}$@]!L}!Mc!+W!Mc!Md$@]!Md!Mt!+W!Mt!Mz$@]!Mz!NO!+W!NO!NS$@]!NS!NV!+W!NV!NW$@]!NW!NZ!+W!NZ!N[$@]!N[!N]$@]!N]!Nd!+W!Nd!Ng$@]!Ng!Nk!+W!Nk!Nx$@]!Nx# U!+W# U# V$@]# V# h!+W# h#!`$@]#!`#!a!+W#!a#!b$@]#!b#!g!+W#!g#!h$@]#!h#!j!+W#!j##g$@]##g##h!+W##h#*s$@]#*s#*t!+W#*t#*x$@]#*x#*z!+W#*z#+R$@]#+R#+S!+W#+S#+T$@]#+T#+U!+W#+U#+Y$@]#+Y#+[!+W#+[#,V$@]#,V#,W!+W#,W#,[$@]#,[#,^!+W#,^#-P$@]#-P#-Q!+W#-Q#-U$@]#-U#-W!+W#-W#-_$@]#-_#-`!+W#-`#-a$@]#-a#-b!+W#-b#-f$@]#-f#-h!+W#-h#-w$@]#-w#-x!+W#-x#/T$@]#/T#/U!+W#/U#/Y$@]#/Y#/[!+W#/[#0q$@]#0q#1h!+W#1h#1x$@]#1x#2Y!+W#2Y#4R$@]#4R#4_!+W#4_#Au$@]#Au#Aw!+W#Aw#BY$@]#BY#BZ!+W#BZ#Bu$@]#Bu#Bz!+W#Bz#Di$@]#Di#EO!+W#EO#E]$@]#E]#E^!+W#E^#Eb$@]#Eb#Ep!+W#Ep#FS$@]#FS#Fb!+W#Fb#Ft$@]#Ft#GS!+W#GS#Ga$@]#Ga#Gb!+W#Gb#Ge$@]#Ge#Gt!+W#Gt#Hz$@]#Hz#Io!+W#Io#Ip$@]#Ip#It!+W#It#Iu$@]#Iu#K[!+W#K[#MW$@]#MW#M`!+W#M`#NZ$@]#NZ#N[!+W#N[#N]$@]#N]#Nb!+W#Nb$ z$@]$ z$!U!+W$!U$!s$@]$!s$#x!+W$#x$$h$@]$$h$$j!+W$$j$$o$@]$$o$$z!+W$$z$%x$@]$%x$&_!+W$&_$&f$@]$&f$'p!+W$'p$(X$@]$(X$(b!+W$(b$)i$@]$)i$+_!+W$+_$+`$@]$+`$-a!+W$-a$.b$@]$.b$.s!+W$.s$.z$@]$.z$0T!+W$0T$0s$@]$0s$1Q!+W$1Q$1R$@]$1R$1S$@]$1S$1^!+W$1^$2[$@]$2[$2v!+W$2v$3l$@]$3l$4g!+W$4g$4j$@]$4j$4t!+W$4t$5j$@]$5j$7y!+W$7y$7}$@]$7}$8O!+W$8O$8S$@]$8S$8V!+W$8V$8W$@]$8W$8X$@]$8X$8b!+W$8b$<j$@]$<j$=|!+W$=|$DO$@]$DO$DQ!+W$DQ$DW$@]$DW$DY!+W$DY$EQ$@]$EQ$ES!+W$ES$EY$@]$EY$E[!+W$E[$Ed$@]$Ed$Ee!+W$Ee$Ef$@]$Ef$Eg!+W$Eg$Eh$@]$Eh$Ei!+W$Ei$Ej$@]$Ej$Ek!+W$Ek$F[$@]$F[$F^!+W$F^$Ge$@]$Ge$Gf!+W$Gf$Gm$@]$Gm$Gn!+W$Gn$Go$@]$Go$Gr!+W$Gr$Gu$@]$Gu$Gv!+W$Gv$G}$@]$G}$HQ!+W$HQ$HU$@]$HU$HW!+W$HW$H^$@]$H^$Hb!+W$Hb$Ho$@]$Ho$Ht!+W$Ht$Hw$@]$Hw$Hx!+W$Hx$IP$@]$IP$Ki!+W$Ki$Kj$@]$Kj$Kw!+W$Kw$Kx$@]$Kx$LY!+W$LY$Lg$@]$Lg$Np!+W$Np$Nq$@]$Nq$Nu!+W$Nu$Nv$@]$Nv$Nx!+W$Nx% S$@]% S% T!+W% T% U$@]% U% X!+W% X% ^$@]% ^% d!+W% d% e$@]% e% f!+W% f% g$@]% g% h!+W% h% i$@]% i% j!+W% j% n$@]% n% o!+W% o% z$@]% z% |!+W% |%!Q$@]%!Q%!V!+W%!V%![$@]%![%!`!+W%!`%!a$@]%!a%#g!+W%#g%#h$@]%#h%#i$@]%#i&/x!+W&/x&0y$@]&0y&0z!+W&0z&1{$@]&1{&1|!+W&1|&4w$@]&4w&4}!+W&4}&5R$@]&5R&5U!+W&5U&5V$@]&5V&5W$@]&5W&5d!+W&5d&6[$@]&6[&6]!+W&6]&6^$@]&6^&6c!+W&6c&6d$@]&6d&6f!+W&6f&7p$@]&7p&7w!+W&7w&7x$@]&7x&8Y!+W&8Y&8q$@]&8q&8z!+W&8z&9R$@]&9R&9S!+W&9S&9Z$@]&9Z&9[!+W&9[&9c$@]&9c&9d!+W&9d&9k$@]&9k&9l!+W&9l&9s$@]&9s&9t!+W&9t&9{$@]&9{&9|!+W&9|&:T$@]&:T&:U!+W&:U&:]$@]&:]&<P!+W&<P&<Q$@]&<Q&FZ!+W&FZ&F[$@]&F[&F]$@]&F]&GX!+W&GX&G^$@]&G^&Gc!+W&Gc&Gd$@]&Gd&Ge$@]&Ge&Gi!+W&Gi&Ic$@]&Ic&Ii!+W&Ii&Il$@]&Il&Im!+W&Im&Kk$@]&Kk&Kl!+W&Kl&Kp$@]&Kp&Ku!+W&Ku&Lp$@]&Lp&Ls!+W&Ls&Nu$@]&Nu' W!+W' W' s$@]' s'!z!+W'!z'#[$@]'#['.b!+W'.b*3f$@]*3f*5S!+W*5S40_$@]40_41d!+W41d4Js$@]4Js4LY!+W4LY4MY$@]4MY4M[!+W4M[5%T$@]5%T5%W!+W5%W5%h$@]5%h5%r!+W5%r5%s$@]5%s5%t$@]5%t5&Y!+W5&Y5'Z$@]5'Z5'k!+W5'k5(U$@]5(U5(^!+W5(^5)v$@]5)v5*y!+W5*y5+S$@]5+S5+U!+W5+U5-a$@]5-a5-c!+W5-c5-g$@]5-g5-h!+W5-h5-l$@]5-l5-x!+W5-x5.T$@]5.T5/t!+W5/t50O$@]50O50P!+W50P50S$@]50S50T!+W50T50X$@]50X50Y!+W50Y50q$@]50q51`!+W51`52f$@]52f52t!+W52t53x$@]53x55Y!+W55Y55`$@]55`55c!+W55c55d$@]55d55r!+W55r56`$@]56`56j!+W56j57R$@]57R57l!+W57l58Z$@]58Z58b!+W58b59c$@]59c5:P!+W5:P5:Q$@]5:Q5;S!+W5;S5;}$@]5;}5<f!+W5<f5<i$@]5<i5<j!+W5<j5<r$@]5<r5=W!+W5=W5=o$@]5=o5=r!+W5=r5=s$@]5=s5=x!+W5=x5>z$@]5>z5>{!+W5>{5>|$@]5>|5?P!+W5?P5?Q$@]5?Q5?R$@]5?R5?T!+W5?T5?Y$@]5?Y5?[!+W5?[5?]$@]5?]5?^!+W5?^5?_$@]5?_5?w!+W5?w5?z$@]5?z5?|!+W5?|5@X$@]5@X5@`!+W5@`5@c$@]5@c5@o!+W5@o5@u$@]5@u5@w!+W5@w5@}$@]5@}5AP!+W5AP5AV$@]5AV5A`!+W5A`5Ag$@]5Ag5Ah!+W5Ah5Ao$@]5Ao5Dv!+W5Dv5Ek$@]5Ek5FY!+W5FY;%S$@];%S;%`!+W;%`;%w$@];%w;%{!+W;%{;'O$@];'O;'S!+W;'S;=`!+i<%l?&r!+W?&r?.p$@]?.p?.r!+W?.r?1Q$@]?1Q?1x!+W?1x?2P$@]?2P?2]!+W?2]?2b$@]?2b?2g!+W?2g?2h$@]?2h?2i!+W?2i?2s$@]?2s?2t!+W?2t?3R$@]?3R?3S!+W?3S?3X$@]?3X?3Y!+W?3Y?3Z$@]?3Z?3[!+W?3[?3]$@]?3]?3^$@]?3^?3_!+W?3_?3`$@]?3`?3a$@]?3a?3b!+W?3b?5r$@]?5r?6e!+W?6e?>`$@]?>`?>r!+W?>r?@U$@]?@U?@W!+W?@W?A`$@]?A`?BY!+W?BY?Bf$@]?Bf?EO!+W?EO?ET$@]?ET?EU!+W?EU?HR$@]?HR?Hw!+W?Hw?Ic$@]?Ic?Ii!+W?Ii?JT$@]?JT?J`!+W?J`?L]$@]?L]?L`!+W?L`?Lf$@]?Lf?Lh!+W?Lh?Ln$@]?Ln?Lp!+W?Lp?Lv$@]?Lv?Lx!+W?Lx?L{$@]?L{O!+WP%GQ*]mPqr%F{rs%F{st%F{tu%F{uv%F{vw%F{wx%F{z{%F{{|%F{!O!P%F{!P!Q%F{!Q![%F{!a!b%F{!c!}%F{#O#P%F{#R#S%F{#S#T%F{#T#o%F{$p$q%F{${$|%F{%Q%R%F{%W%o%F{%p&a%F{&b0`%F{0d0p%F{1O1T%F{1[1]%F{1^1_%F{4U4Z%F{4[4]%F{4]4^%F{4`4d%F{4l4m%F{4n4q%F{4r4s%F{4t5Y%F{5Z7Q%F{7R:S%F{:[=p%F{=y>q%F{>s>t%F{>{?t%F{A`A{%F{BQBT%F{CSDP%F{DtDu%F{DuDv%F{DwGO%F{GPGQ%F{GaGb%F{GbGc%F{GjGk%F{GkGl%F{GvGy%F{G{G|%F{H^H_%F{H`IO%F{ImKj%F{KuKv%F{L`MR%F{M[M]%F{M]M^%F{MbMc%F{MhNO%F{NSNT%F{N^N_%F{NbNc%F{Nz! e%F{!#O!#P%F{!#Q!#]%F{!%W!&`%F{!&c!&d%F{!&v!&w%F{!'O!'Y%F{!'i!'p%F{!'q!'x%F{!'}!(V%F{!(X!(Y%F{!(Y!(Z%F{!(]!(s%F{!(t!({%F{!(|!(}%F{!)Q!)U%F{!)X!)Y%F{!)j!)k%F{!)x!)y%F{!)y!)z%F{!){!*O%F{!*^!*_%F{!*_!*`%F{!*s!*y%F{!*}!+O%F{!+O!+P%F{!+R!+i%F{!+j!+q%F{!+r!+s%F{!+s!+t%F{!+u!+v%F{!+v!+w%F{!+x!+y%F{!+y!+z%F{!,k!,o%F{!,p!,q%F{!-U!-X%F{!-i!-r%F{!-s!-v%F{!-w!._%F{!.`!.g%F{!.h!.i%F{!.i!.j%F{!.k!.p%F{!.s!.t%F{!/W!/X%F{!/h!/i%F{!/i!/j%F{!0_!0g%F{!0i!0j%F{!0j!0k%F{!0m!1T%F{!1U!1]%F{!1^!1_%F{!1_!1`%F{!1a!1f%F{!1i!1j%F{!2Y!2Z%F{!2Z!2[%F{!2]!2`%F{!2o!2p%F{!3R!3S%F{!3T!3Z%F{!3^!3a%F{!3b!3f%F{!3i!3j%F{!3j!3k%F{!3l!3m%F{!3n!3o%F{!3o!3p%F{!3s!3t%F{!3t!3u%F{!3x!3{%F{!4O!4[%F{!4r!4s%F{!5y!6R%F{!6S!6V%F{!6W!6o%F{!6p!6z%F{!6{!7Q%F{!7T!7U%F{!7p!7q%F{!7q!7r%F{!7x!7y%F{!7y!7z%F{!8o!8w%F{!8x!8{%F{!8|!9e%F{!9f!9p%F{!9q!9v%F{!9y!9z%F{!:l!:m%F{!:n!:o%F{!:o!:p%F{!;P!;Q%F{!;Q!;R%F{!;e!;m%F{!;n!;q%F{!;r!<m%F{!<o!<p%F{!=Q!=R%F{!=d!=e%F{!=e!=f%F{!>O!>U%F{!>Z!>m%F{!>p!?Y%F{!?Z!?d%F{!?e!?f%F{!?h!?o%F{!@{!A}%F{!BO!BP%F{!BP!BQ%F{!B^!Be%F{!Cq!Cr%F{!Cr!Cs%F{!Ct!Cu%F{!Cw!Cx%F{!Cx!Cy%F{!Cz!C{%F{!C}!DO%F{!DU!DY%F{!DZ!Db%F{!Dc!Df%F{!Dg!Dh%F{!Di!Dj%F{!Dl!Dm%F{!Dm!Dn%F{!Do!Ds%F{!Dt!Du%F{!Du!Dv%F{!EP!EQ%F{!ES!EX%F{!EY!EZ%F{!Ep!Et%F{!Ff!Fg%F{!Gx!HQ%F{!HR!Hw%F{!Id!Ii%F{!LQ!L}%F{!Mc!Md%F{!Mt!Mz%F{!NO!NS%F{!NV!NW%F{!NZ!N[%F{!N[!N]%F{!Nd!Ng%F{!Nk!Nx%F{# U# V%F{# h#!`%F{#!a#!b%F{#!g#!h%F{#!j##g%F{##h#*s%F{#*t#*x%F{#*z#+R%F{#+S#+T%F{#+U#+Y%F{#+[#,V%F{#,W#,[%F{#,^#-P%F{#-Q#-U%F{#-W#-_%F{#-`#-a%F{#-b#-f%F{#-h#-w%F{#-x#/T%F{#/U#/Y%F{#/[#0q%F{#1h#1x%F{#2Y#4R%F{#4_#Au%F{#Aw#BY%F{#BZ#Bu%F{#Bz#Di%F{#EO#E]%F{#E^#Eb%F{#Ep#FS%F{#Fb#Ft%F{#GS#Ga%F{#Gb#Ge%F{#Gt#Hz%F{#Io#Ip%F{#It#Iu%F{#K[#MW%F{#M`#NZ%F{#N[#N]%F{#Nb$ z%F{$!U$!s%F{$#x$$h%F{$$j$$o%F{$$z$%x%F{$&_$&f%F{$'p$(X%F{$(b$)i%F{$+_$+`%F{$-a$.b%F{$.s$.z%F{$0T$0s%F{$1Q$1R%F{$1R$1S%F{$1^$2[%F{$2v$3l%F{$4g$4j%F{$4t$5j%F{$7y$7}%F{$8O$8S%F{$8V$8W%F{$8W$8X%F{$8b$<j%F{$=|$DO%F{$DQ$DW%F{$DY$EQ%F{$ES$EY%F{$E[$Ed%F{$Ee$Ef%F{$Eg$Eh%F{$Ei$Ej%F{$Ek$F[%F{$F^$Ge%F{$Gf$Gm%F{$Gn$Go%F{$Gr$Gu%F{$Gv$G}%F{$HQ$HU%F{$HW$H^%F{$Hb$Ho%F{$Ht$Hw%F{$Hx$IP%F{$Ki$Kj%F{$Kw$Kx%F{$LY$Lg%F{$Np$Nq%F{$Nu$Nv%F{$Nx% S%F{% T% U%F{% X% ^%F{% d% e%F{% f% g%F{% h% i%F{% j% n%F{% o% z%F{% |%!Q%F{%!V%![%F{%!`%!a%F{%#g%#h%F{%#h%#i%F{&/x&0y%F{&0z&1{%F{&1|&4w%F{&4}&5R%F{&5U&5V%F{&5V&5W%F{&5d&6[%F{&6]&6^%F{&6c&6d%F{&6f&7p%F{&7w&7x%F{&8Y&8q%F{&8z&9R%F{&9S&9Z%F{&9[&9c%F{&9d&9k%F{&9l&9s%F{&9t&9{%F{&9|&:T%F{&:U&:]%F{&<P&<Q%F{&FZ&F[%F{&F[&F]%F{&GX&G^%F{&Gc&Gd%F{&Gd&Ge%F{&Gi&Ic%F{&Ii&Il%F{&Im&Kk%F{&Kl&Kp%F{&Ku&Lp%F{&Ls&Nu%F{' W' s%F{'!z'#[%F{'.b*3f%F{*5S40_%F{41d4Js%F{4LY4MY%F{4M[5%T%F{5%W5%h%F{5%r5%s%F{5%s5%t%F{5&Y5'Z%F{5'k5(U%F{5(^5)v%F{5*y5+S%F{5+U5-a%F{5-c5-g%F{5-h5-l%F{5-x5.T%F{5/t50O%F{50P50S%F{50T50X%F{50Y50q%F{51`52f%F{52t53x%F{55Y55`%F{55c55d%F{55r56`%F{56j57R%F{57l58Z%F{58b59c%F{5:P5:Q%F{5;S5;}%F{5<f5<i%F{5<j5<r%F{5=W5=o%F{5=r5=s%F{5=x5>z%F{5>{5>|%F{5?P5?Q%F{5?Q5?R%F{5?T5?Y%F{5?[5?]%F{5?^5?_%F{5?w5?z%F{5?|5@X%F{5@`5@c%F{5@o5@u%F{5@w5@}%F{5AP5AV%F{5A`5Ag%F{5Ah5Ao%F{5Dv5Ek%F{5FY;%S%F{;%`;%w%F{;%{;'O%F{?&r?.p%F{?.r?1Q%F{?1x?2P%F{?2]?2b%F{?2g?2h%F{?2i?2s%F{?2t?3R%F{?3S?3X%F{?3Y?3Z%F{?3[?3]%F{?3]?3^%F{?3_?3`%F{?3`?3a%F{?3b?5r%F{?6e?>`%F{?>r?@U%F{?@W?A`%F{?BY?Bf%F{?EO?ET%F{?EU?HR%F{?Hw?Ic%F{?Ii?JT%F{?J`?L]%F{?L`?Lf%F{?Lh?Ln%F{?Lp?Lv%F{?Lx?L{%F{R&5Q2gzQmPOq!+oqr&4yrs&4yst&4ytu&4yuv&4yvw&4ywx%F{xz!+oz{&4y{|&4y|!O!+o!O!P&4y!P!Q&4y!Q![&4y![!a!+o!a!b&4y!b!c!+o!c!}&4y!}#O!+o#O#P&4y#P#R!+o#R#S&4y#S#T&4y#T#o&4y#o$p!+o$p$q&4y$q${!+o${$|&4y$|%Q!+o%Q%R&4y%R%W!+o%W%o&4y%o%p!+o%p&a&4y&a&b!+o&b0`&4y0`0d!+o0d0p&4y0p1O!+o1O1T&4y1T1[!+o1[1]&4y1]1^!+o1^1_&4y1_4U!+o4U4Z&4y4Z4[!+o4[4]&4y4]4^&4y4^4`!+o4`4d&4y4d4l!+o4l4m&4y4m4n!+o4n4q&4y4q4r!+o4r4s&4y4s4t!+o4t5Y&4y5Y5Z!+o5Z7Q&4y7Q7R!+o7R:S&4y:S:[!+o:[=p&4y=p=y!+o=y>q&4y>q>s!+o>s>t&4y>t>{!+o>{?t&4y?tA`!+oA`A{&4yA{BQ!+oBQBT&4yBTCS!+oCSDP&4yDPDt!+oDtDu&4yDuDv&4yDvDw!+oDwGO&4yGOGP!+oGPGQ&4yGQGa!+oGaGb&4yGbGc&4yGcGj!+oGjGk&4yGkGl&4yGlGv!+oGvGy&4yGyG{!+oG{G|&4yG|H^!+oH^H_&4yH_H`!+oH`IO&4yIOIm!+oImKj&4yKjKu!+oKuKv&4yKvL`!+oL`MR&4yMRM[!+oM[M]&4yM]M^&4yM^Mb!+oMbMc&4yMcMh!+oMhNO&4yNONS!+oNSNT&4yNTN^!+oN^N_&4yN_Nb!+oNbNc&4yNcNz!+oNz! e&4y! e!#O!+o!#O!#P&4y!#P!#Q!+o!#Q!#]&4y!#]!%W!+o!%W!&`&4y!&`!&c!+o!&c!&d&4y!&d!&v!+o!&v!&w&4y!&w!'O!+o!'O!'Y&4y!'Y!'i!+o!'i!'p&4y!'p!'q!+o!'q!'x&4y!'x!'}!+o!'}!(V&4y!(V!(X!+o!(X!(Y&4y!(Y!(Z&4y!(Z!(]!+o!(]!(s&4y!(s!(t!+o!(t!({&4y!({!(|!+o!(|!(}&4y!(}!)Q!+o!)Q!)U&4y!)U!)X!+o!)X!)Y&4y!)Y!)j!+o!)j!)k&4y!)k!)x!+o!)x!)y&4y!)y!)z&4y!)z!){!+o!){!*O&4y!*O!*^!+o!*^!*_&4y!*_!*`&4y!*`!*s!+o!*s!*y&4y!*y!*}!+o!*}!+O&4y!+O!+P&4y!+P!+R!+o!+R!+i&4y!+i!+j!+o!+j!+q&4y!+q!+r!+o!+r!+s&4y!+s!+t&4y!+t!+u!+o!+u!+v&4y!+v!+w&4y!+w!+x!+o!+x!+y&4y!+y!+z&4y!+z!,k!+o!,k!,o&4y!,o!,p!+o!,p!,q&4y!,q!-U!+o!-U!-X&4y!-X!-i!+o!-i!-r&4y!-r!-s!+o!-s!-v&4y!-v!-w!+o!-w!._&4y!._!.`!+o!.`!.g&4y!.g!.h!+o!.h!.i&4y!.i!.j&4y!.j!.k!+o!.k!.p&4y!.p!.s!+o!.s!.t&4y!.t!/W!+o!/W!/X&4y!/X!/h!+o!/h!/i&4y!/i!/j&4y!/j!0_!+o!0_!0g&4y!0g!0i!+o!0i!0j&4y!0j!0k&4y!0k!0m!+o!0m!1T&4y!1T!1U!+o!1U!1]&4y!1]!1^!+o!1^!1_&4y!1_!1`&4y!1`!1a!+o!1a!1f&4y!1f!1i!+o!1i!1j&4y!1j!2Y!+o!2Y!2Z&4y!2Z!2[&4y!2[!2]!+o!2]!2`&4y!2`!2o!+o!2o!2p&4y!2p!3R!+o!3R!3S&4y!3S!3T!+o!3T!3Z&4y!3Z!3^!+o!3^!3a&4y!3a!3b!+o!3b!3f&4y!3f!3i!+o!3i!3j&4y!3j!3k&4y!3k!3l!+o!3l!3m&4y!3m!3n!+o!3n!3o&4y!3o!3p&4y!3p!3s!+o!3s!3t&4y!3t!3u&4y!3u!3x!+o!3x!3{&4y!3{!4O!+o!4O!4[&4y!4[!4r!+o!4r!4s&4y!4s!5y!+o!5y!6R&4y!6R!6S!+o!6S!6V&4y!6V!6W!+o!6W!6o&4y!6o!6p!+o!6p!6z&4y!6z!6{!+o!6{!7Q&4y!7Q!7T!+o!7T!7U&4y!7U!7p!+o!7p!7q&4y!7q!7r&4y!7r!7x!+o!7x!7y&4y!7y!7z&4y!7z!8o!+o!8o!8w&4y!8w!8x!+o!8x!8{&4y!8{!8|!+o!8|!9e&4y!9e!9f!+o!9f!9p&4y!9p!9q!+o!9q!9v&4y!9v!9y!+o!9y!9z&4y!9z!:l!+o!:l!:m&4y!:m!:n!+o!:n!:o&4y!:o!:p&4y!:p!;P!+o!;P!;Q&4y!;Q!;R&4y!;R!;e!+o!;e!;m&4y!;m!;n!+o!;n!;q&4y!;q!;r!+o!;r!<m&4y!<m!<o!+o!<o!<p&4y!<p!=Q!+o!=Q!=R&4y!=R!=d!+o!=d!=e&4y!=e!=f&4y!=f!>O!+o!>O!>U&4y!>U!>Z!+o!>Z!>m&4y!>m!>p!+o!>p!?Y&4y!?Y!?Z!+o!?Z!?d&4y!?d!?e!+o!?e!?f&4y!?f!?h!+o!?h!?o&4y!?o!@{!+o!@{!A}&4y!A}!BO!+o!BO!BP&4y!BP!BQ&4y!BQ!B^!+o!B^!Be&4y!Be!Cq!+o!Cq!Cr&4y!Cr!Cs&4y!Cs!Ct!+o!Ct!Cu&4y!Cu!Cw!+o!Cw!Cx&4y!Cx!Cy&4y!Cy!Cz!+o!Cz!C{&4y!C{!C}!+o!C}!DO&4y!DO!DU!+o!DU!DY&4y!DY!DZ!+o!DZ!Db&4y!Db!Dc!+o!Dc!Df&4y!Df!Dg!+o!Dg!Dh&4y!Dh!Di!+o!Di!Dj&4y!Dj!Dl!+o!Dl!Dm&4y!Dm!Dn&4y!Dn!Do!+o!Do!Ds&4y!Ds!Dt!+o!Dt!Du&4y!Du!Dv&4y!Dv!EP!+o!EP!EQ&4y!EQ!ES!+o!ES!EX&4y!EX!EY!+o!EY!EZ&4y!EZ!Ep!+o!Ep!Et&4y!Et!Ff!+o!Ff!Fg&4y!Fg!Gx!+o!Gx!HQ&4y!HQ!HR!+o!HR!Hw&4y!Hw!Id!+o!Id!Ii&4y!Ii!LQ!+o!LQ!L}&4y!L}!Mc!+o!Mc!Md&4y!Md!Mt!+o!Mt!Mz&4y!Mz!NO!+o!NO!NS&4y!NS!NV!+o!NV!NW&4y!NW!NZ!+o!NZ!N[&4y!N[!N]&4y!N]!Nd!+o!Nd!Ng&4y!Ng!Nk!+o!Nk!Nx&4y!Nx# U!+o# U# V&4y# V# h!+o# h#!`&4y#!`#!a!+o#!a#!b&4y#!b#!g!+o#!g#!h&4y#!h#!j!+o#!j##g&4y##g##h!+o##h#*s&4y#*s#*t!+o#*t#*x&4y#*x#*z!+o#*z#+R&4y#+R#+S!+o#+S#+T&4y#+T#+U!+o#+U#+Y&4y#+Y#+[!+o#+[#,V&4y#,V#,W!+o#,W#,[&4y#,[#,^!+o#,^#-P&4y#-P#-Q!+o#-Q#-U&4y#-U#-W!+o#-W#-_&4y#-_#-`!+o#-`#-a&4y#-a#-b!+o#-b#-f&4y#-f#-h!+o#-h#-w&4y#-w#-x!+o#-x#/T&4y#/T#/U!+o#/U#/Y&4y#/Y#/[!+o#/[#0q&4y#0q#1h!+o#1h#1x&4y#1x#2Y!+o#2Y#4R&4y#4R#4_!+o#4_#Au&4y#Au#Aw!+o#Aw#BY&4y#BY#BZ!+o#BZ#Bu&4y#Bu#Bz!+o#Bz#Di&4y#Di#EO!+o#EO#E]&4y#E]#E^!+o#E^#Eb&4y#Eb#Ep!+o#Ep#FS&4y#FS#Fb!+o#Fb#Ft&4y#Ft#GS!+o#GS#Ga&4y#Ga#Gb!+o#Gb#Ge&4y#Ge#Gt!+o#Gt#Hz&4y#Hz#Io!+o#Io#Ip&4y#Ip#It!+o#It#Iu&4y#Iu#K[!+o#K[#MW&4y#MW#M`!+o#M`#NZ&4y#NZ#N[!+o#N[#N]&4y#N]#Nb!+o#Nb$ z&4y$ z$!U!+o$!U$!s&4y$!s$#x!+o$#x$$h&4y$$h$$j!+o$$j$$o&4y$$o$$z!+o$$z$%x&4y$%x$&_!+o$&_$&f&4y$&f$'p!+o$'p$(X&4y$(X$(b!+o$(b$)i&4y$)i$+_!+o$+_$+`&4y$+`$-a!+o$-a$.b&4y$.b$.s!+o$.s$.z&4y$.z$0T!+o$0T$0s&4y$0s$1Q!+o$1Q$1R&4y$1R$1S&4y$1S$1^!+o$1^$2[&4y$2[$2v!+o$2v$3l&4y$3l$4g!+o$4g$4j&4y$4j$4t!+o$4t$5j&4y$5j$7y!+o$7y$7}&4y$7}$8O!+o$8O$8S&4y$8S$8V!+o$8V$8W&4y$8W$8X&4y$8X$8b!+o$8b$<j&4y$<j$=|!+o$=|$DO&4y$DO$DQ!+o$DQ$DW&4y$DW$DY!+o$DY$EQ&4y$EQ$ES!+o$ES$EY&4y$EY$E[!+o$E[$Ed&4y$Ed$Ee!+o$Ee$Ef&4y$Ef$Eg!+o$Eg$Eh&4y$Eh$Ei!+o$Ei$Ej&4y$Ej$Ek!+o$Ek$F[&4y$F[$F^!+o$F^$Ge&4y$Ge$Gf!+o$Gf$Gm&4y$Gm$Gn!+o$Gn$Go&4y$Go$Gr!+o$Gr$Gu&4y$Gu$Gv!+o$Gv$G}&4y$G}$HQ!+o$HQ$HU&4y$HU$HW!+o$HW$H^&4y$H^$Hb!+o$Hb$Ho&4y$Ho$Ht!+o$Ht$Hw&4y$Hw$Hx!+o$Hx$IP&4y$IP$Ki!+o$Ki$Kj&4y$Kj$Kw!+o$Kw$Kx&4y$Kx$LY!+o$LY$Lg&4y$Lg$Np!+o$Np$Nq&4y$Nq$Nu!+o$Nu$Nv&4y$Nv$Nx!+o$Nx% S&4y% S% T!+o% T% U&4y% U% X!+o% X% ^&4y% ^% d!+o% d% e&4y% e% f!+o% f% g&4y% g% h!+o% h% i&4y% i% j!+o% j% n&4y% n% o!+o% o% z&4y% z% |!+o% |%!Q&4y%!Q%!V!+o%!V%![&4y%![%!`!+o%!`%!a&4y%!a%#g!+o%#g%#h&4y%#h%#i&4y%#i&/x!+o&/x&0y&4y&0y&0z!+o&0z&1{&4y&1{&1|!+o&1|&4w&4y&4w&4}!+o&4}&5R&4y&5R&5U!+o&5U&5V&4y&5V&5W&4y&5W&5d!+o&5d&6[&4y&6[&6]!+o&6]&6^&4y&6^&6c!+o&6c&6d&4y&6d&6f!+o&6f&7p&4y&7p&7w!+o&7w&7x&4y&7x&8Y!+o&8Y&8q&4y&8q&8z!+o&8z&9R&4y&9R&9S!+o&9S&9Z&4y&9Z&9[!+o&9[&9c&4y&9c&9d!+o&9d&9k&4y&9k&9l!+o&9l&9s&4y&9s&9t!+o&9t&9{&4y&9{&9|!+o&9|&:T&4y&:T&:U!+o&:U&:]&4y&:]&<P!+o&<P&<Q&4y&<Q&FZ!+o&FZ&F[&4y&F[&F]&4y&F]&GX!+o&GX&G^&4y&G^&Gc!+o&Gc&Gd&4y&Gd&Ge&4y&Ge&Gi!+o&Gi&Ic&4y&Ic&Ii!+o&Ii&Il&4y&Il&Im!+o&Im&Kk&4y&Kk&Kl!+o&Kl&Kp&4y&Kp&Ku!+o&Ku&Lp&4y&Lp&Ls!+o&Ls&Nu&4y&Nu' W!+o' W' s&4y' s'!z!+o'!z'#[&4y'#['.b!+o'.b*3f&4y*3f*5S!+o*5S40_&4y40_41d!+o41d4Js&4y4Js4LY!+o4LY4MY&4y4MY4M[!+o4M[5%T&4y5%T5%W!+o5%W5%h&4y5%h5%r!+o5%r5%s&4y5%s5%t&4y5%t5&Y!+o5&Y5'Z&4y5'Z5'k!+o5'k5(U&4y5(U5(^!+o5(^5)v&4y5)v5*y!+o5*y5+S&4y5+S5+U!+o5+U5-a&4y5-a5-c!+o5-c5-g&4y5-g5-h!+o5-h5-l&4y5-l5-x!+o5-x5.T&4y5.T5/t!+o5/t50O&4y50O50P!+o50P50S&4y50S50T!+o50T50X&4y50X50Y!+o50Y50q&4y50q51`!+o51`52f&4y52f52t!+o52t53x&4y53x55Y!+o55Y55`&4y55`55c!+o55c55d&4y55d55r!+o55r56`&4y56`56j!+o56j57R&4y57R57l!+o57l58Z&4y58Z58b!+o58b59c&4y59c5:P!+o5:P5:Q&4y5:Q5;S!+o5;S5;}&4y5;}5<f!+o5<f5<i&4y5<i5<j!+o5<j5<r&4y5<r5=W!+o5=W5=o&4y5=o5=r!+o5=r5=s&4y5=s5=x!+o5=x5>z&4y5>z5>{!+o5>{5>|&4y5>|5?P!+o5?P5?Q&4y5?Q5?R&4y5?R5?T!+o5?T5?Y&4y5?Y5?[!+o5?[5?]&4y5?]5?^!+o5?^5?_&4y5?_5?w!+o5?w5?z&4y5?z5?|!+o5?|5@X&4y5@X5@`!+o5@`5@c&4y5@c5@o!+o5@o5@u&4y5@u5@w!+o5@w5@}&4y5@}5AP!+o5AP5AV&4y5AV5A`!+o5A`5Ag&4y5Ag5Ah!+o5Ah5Ao&4y5Ao5Dv!+o5Dv5Ek&4y5Ek5FY!+o5FY;%S&4y;%S;%`!+o;%`;%w&4y;%w;%{!+o;%{;'O&4y;'O;'S!+o;'S;=`!,Q<%l?&r!+o?&r?.p&4y?.p?.r!+o?.r?1Q&4y?1Q?1x!+o?1x?2P&4y?2P?2]!+o?2]?2b&4y?2b?2g!+o?2g?2h&4y?2h?2i!+o?2i?2s&4y?2s?2t!+o?2t?3R&4y?3R?3S!+o?3S?3X&4y?3X?3Y!+o?3Y?3Z&4y?3Z?3[!+o?3[?3]&4y?3]?3^&4y?3^?3_!+o?3_?3`&4y?3`?3a&4y?3a?3b!+o?3b?5r&4y?5r?6e!+o?6e?>`&4y?>`?>r!+o?>r?@U&4y?@U?@W!+o?@W?A`&4y?A`?BY!+o?BY?Bf&4y?Bf?EO!+o?EO?ET&4y?ET?EU!+o?EU?HR&4y?HR?Hw!+o?Hw?Ic&4y?Ic?Ii!+o?Ii?JT&4y?JT?J`!+o?J`?L]&4y?L]?L`!+o?L`?Lf&4y?Lf?Lh!+o?Lh?Ln&4y?Ln?Lp!+o?Lp?Lv&4y?Lv?Lx!+o?Lx?L{&4y?L{O!+o]';r2g!OW|SmPOq!,^qr';irs$@]st';itu';iuv';ivw';iwx';ixz!,^z{';i{|';i|!O!,^!O!P';i!P!Q';i!Q![';i![!a!,^!a!b';i!b!c!,^!c!}';i!}#O!,^#O#P';i#P#R!,^#R#S';i#S#T(BZ#T#o';i#o$p!,^$p$q';i$q${!,^${$|';i$|%Q!,^%Q%R';i%R%W!,^%W%o';i%o%p!,^%p&a';i&a&b!,^&b0`';i0`0d!,^0d0p';i0p1O!,^1O1T';i1T1[!,^1[1]';i1]1^!,^1^1_';i1_4U!,^4U4Z';i4Z4[!,^4[4]';i4]4^';i4^4`!,^4`4d';i4d4l!,^4l4m';i4m4n!,^4n4q';i4q4r!,^4r4s';i4s4t!,^4t5Y';i5Y5Z!,^5Z7Q';i7Q7R!,^7R:S';i:S:[!,^:[=p';i=p=y!,^=y>q';i>q>s!,^>s>t';i>t>{!,^>{?t';i?tA`!,^A`A{';iA{BQ!,^BQBT';iBTCS!,^CSDP';iDPDt!,^DtDu';iDuDv';iDvDw!,^DwGO';iGOGP!,^GPGQ';iGQGa!,^GaGb';iGbGc';iGcGj!,^GjGk';iGkGl';iGlGv!,^GvGy';iGyG{!,^G{G|';iG|H^!,^H^H_';iH_H`!,^H`IO';iIOIm!,^ImKj';iKjKu!,^KuKv';iKvL`!,^L`MR';iMRM[!,^M[M]';iM]M^';iM^Mb!,^MbMc';iMcMh!,^MhNO';iNONS!,^NSNT';iNTN^!,^N^N_';iN_Nb!,^NbNc';iNcNz!,^Nz! e';i! e!#O!,^!#O!#P';i!#P!#Q!,^!#Q!#]';i!#]!%W!,^!%W!&`';i!&`!&c!,^!&c!&d';i!&d!&v!,^!&v!&w';i!&w!'O!,^!'O!'Y';i!'Y!'i!,^!'i!'p';i!'p!'q!,^!'q!'x';i!'x!'}!,^!'}!(V';i!(V!(X!,^!(X!(Y';i!(Y!(Z';i!(Z!(]!,^!(]!(s';i!(s!(t!,^!(t!({';i!({!(|!,^!(|!(}';i!(}!)Q!,^!)Q!)U';i!)U!)X!,^!)X!)Y';i!)Y!)j!,^!)j!)k';i!)k!)x!,^!)x!)y';i!)y!)z';i!)z!){!,^!){!*O';i!*O!*^!,^!*^!*_';i!*_!*`';i!*`!*s!,^!*s!*y';i!*y!*}!,^!*}!+O';i!+O!+P';i!+P!+R!,^!+R!+i';i!+i!+j!,^!+j!+q';i!+q!+r!,^!+r!+s';i!+s!+t';i!+t!+u!,^!+u!+v';i!+v!+w';i!+w!+x!,^!+x!+y';i!+y!+z';i!+z!,k!,^!,k!,o';i!,o!,p!,^!,p!,q';i!,q!-U!,^!-U!-X';i!-X!-i!,^!-i!-r';i!-r!-s!,^!-s!-v';i!-v!-w!,^!-w!._';i!._!.`!,^!.`!.g';i!.g!.h!,^!.h!.i';i!.i!.j';i!.j!.k!,^!.k!.p';i!.p!.s!,^!.s!.t';i!.t!/W!,^!/W!/X';i!/X!/h!,^!/h!/i';i!/i!/j';i!/j!0_!,^!0_!0g';i!0g!0i!,^!0i!0j';i!0j!0k';i!0k!0m!,^!0m!1T';i!1T!1U!,^!1U!1]';i!1]!1^!,^!1^!1_';i!1_!1`';i!1`!1a!,^!1a!1f';i!1f!1i!,^!1i!1j';i!1j!2Y!,^!2Y!2Z';i!2Z!2[';i!2[!2]!,^!2]!2`';i!2`!2o!,^!2o!2p';i!2p!3R!,^!3R!3S';i!3S!3T!,^!3T!3Z';i!3Z!3^!,^!3^!3a';i!3a!3b!,^!3b!3f';i!3f!3i!,^!3i!3j';i!3j!3k';i!3k!3l!,^!3l!3m';i!3m!3n!,^!3n!3o';i!3o!3p';i!3p!3s!,^!3s!3t';i!3t!3u';i!3u!3x!,^!3x!3{';i!3{!4O!,^!4O!4[';i!4[!4r!,^!4r!4s';i!4s!5y!,^!5y!6R';i!6R!6S!,^!6S!6V';i!6V!6W!,^!6W!6o';i!6o!6p!,^!6p!6z';i!6z!6{!,^!6{!7Q';i!7Q!7T!,^!7T!7U';i!7U!7p!,^!7p!7q';i!7q!7r';i!7r!7x!,^!7x!7y';i!7y!7z';i!7z!8o!,^!8o!8w';i!8w!8x!,^!8x!8{';i!8{!8|!,^!8|!9e';i!9e!9f!,^!9f!9p';i!9p!9q!,^!9q!9v';i!9v!9y!,^!9y!9z';i!9z!:l!,^!:l!:m';i!:m!:n!,^!:n!:o';i!:o!:p';i!:p!;P!,^!;P!;Q';i!;Q!;R';i!;R!;e!,^!;e!;m';i!;m!;n!,^!;n!;q';i!;q!;r!,^!;r!<m';i!<m!<o!,^!<o!<p';i!<p!=Q!,^!=Q!=R';i!=R!=d!,^!=d!=e';i!=e!=f';i!=f!>O!,^!>O!>U';i!>U!>Z!,^!>Z!>m';i!>m!>p!,^!>p!?Y';i!?Y!?Z!,^!?Z!?d';i!?d!?e!,^!?e!?f';i!?f!?h!,^!?h!?o';i!?o!@{!,^!@{!A}';i!A}!BO!,^!BO!BP';i!BP!BQ';i!BQ!B^!,^!B^!Be';i!Be!Cq!,^!Cq!Cr';i!Cr!Cs';i!Cs!Ct!,^!Ct!Cu';i!Cu!Cw!,^!Cw!Cx';i!Cx!Cy';i!Cy!Cz!,^!Cz!C{';i!C{!C}!,^!C}!DO';i!DO!DU!,^!DU!DY';i!DY!DZ!,^!DZ!Db';i!Db!Dc!,^!Dc!Df';i!Df!Dg!,^!Dg!Dh';i!Dh!Di!,^!Di!Dj';i!Dj!Dl!,^!Dl!Dm';i!Dm!Dn';i!Dn!Do!,^!Do!Ds';i!Ds!Dt!,^!Dt!Du';i!Du!Dv';i!Dv!EP!,^!EP!EQ';i!EQ!ES!,^!ES!EX';i!EX!EY!,^!EY!EZ';i!EZ!Ep!,^!Ep!Et';i!Et!Ff!,^!Ff!Fg';i!Fg!Gx!,^!Gx!HQ';i!HQ!HR!,^!HR!Hw';i!Hw!Id!,^!Id!Ii';i!Ii!LQ!,^!LQ!L}';i!L}!Mc!,^!Mc!Md';i!Md!Mt!,^!Mt!Mz';i!Mz!NO!,^!NO!NS';i!NS!NV!,^!NV!NW';i!NW!NZ!,^!NZ!N[';i!N[!N]';i!N]!Nd!,^!Nd!Ng';i!Ng!Nk!,^!Nk!Nx';i!Nx# U!,^# U# V';i# V# h!,^# h#!`';i#!`#!a!,^#!a#!b';i#!b#!g!,^#!g#!h';i#!h#!j!,^#!j##g';i##g##h!,^##h#*s';i#*s#*t!,^#*t#*x';i#*x#*z!,^#*z#+R';i#+R#+S!,^#+S#+T';i#+T#+U!,^#+U#+Y';i#+Y#+[!,^#+[#,V';i#,V#,W!,^#,W#,[';i#,[#,^!,^#,^#-P';i#-P#-Q!,^#-Q#-U';i#-U#-W!,^#-W#-_';i#-_#-`!,^#-`#-a';i#-a#-b!,^#-b#-f';i#-f#-h!,^#-h#-w';i#-w#-x!,^#-x#/T';i#/T#/U!,^#/U#/Y';i#/Y#/[!,^#/[#0q';i#0q#1h!,^#1h#1x';i#1x#2Y!,^#2Y#4R';i#4R#4_!,^#4_#Au';i#Au#Aw!,^#Aw#BY';i#BY#BZ!,^#BZ#Bu';i#Bu#Bz!,^#Bz#Di';i#Di#EO!,^#EO#E]';i#E]#E^!,^#E^#Eb';i#Eb#Ep!,^#Ep#FS';i#FS#Fb!,^#Fb#Ft';i#Ft#GS!,^#GS#Ga';i#Ga#Gb!,^#Gb#Ge';i#Ge#Gt!,^#Gt#Hz';i#Hz#Io!,^#Io#Ip';i#Ip#It!,^#It#Iu';i#Iu#K[!,^#K[#MW';i#MW#M`!,^#M`#NZ';i#NZ#N[!,^#N[#N]';i#N]#Nb!,^#Nb$ z';i$ z$!U!,^$!U$!s';i$!s$#x!,^$#x$$h';i$$h$$j!,^$$j$$o';i$$o$$z!,^$$z$%x';i$%x$&_!,^$&_$&f';i$&f$'p!,^$'p$(X';i$(X$(b!,^$(b$)i';i$)i$+_!,^$+_$+`';i$+`$-a!,^$-a$.b';i$.b$.s!,^$.s$.z';i$.z$0T!,^$0T$0s';i$0s$1Q!,^$1Q$1R';i$1R$1S';i$1S$1^!,^$1^$2[';i$2[$2v!,^$2v$3l';i$3l$4g!,^$4g$4j';i$4j$4t!,^$4t$5j';i$5j$7y!,^$7y$7}';i$7}$8O!,^$8O$8S';i$8S$8V!,^$8V$8W';i$8W$8X';i$8X$8b!,^$8b$<j';i$<j$=|!,^$=|$DO';i$DO$DQ!,^$DQ$DW';i$DW$DY!,^$DY$EQ';i$EQ$ES!,^$ES$EY';i$EY$E[!,^$E[$Ed';i$Ed$Ee!,^$Ee$Ef';i$Ef$Eg!,^$Eg$Eh';i$Eh$Ei!,^$Ei$Ej';i$Ej$Ek!,^$Ek$F[';i$F[$F^!,^$F^$Ge';i$Ge$Gf!,^$Gf$Gm';i$Gm$Gn!,^$Gn$Go';i$Go$Gr!,^$Gr$Gu';i$Gu$Gv!,^$Gv$G}';i$G}$HQ!,^$HQ$HU';i$HU$HW!,^$HW$H^';i$H^$Hb!,^$Hb$Ho';i$Ho$Ht!,^$Ht$Hw';i$Hw$Hx!,^$Hx$IP';i$IP$Ki!,^$Ki$Kj';i$Kj$Kw!,^$Kw$Kx';i$Kx$LY!,^$LY$Lg';i$Lg$Np!,^$Np$Nq';i$Nq$Nu!,^$Nu$Nv';i$Nv$Nx!,^$Nx% S';i% S% T!,^% T% U';i% U% X!,^% X% ^';i% ^% d!,^% d% e';i% e% f!,^% f% g';i% g% h!,^% h% i';i% i% j!,^% j% n';i% n% o!,^% o% z';i% z% |!,^% |%!Q';i%!Q%!V!,^%!V%![';i%![%!`!,^%!`%!a';i%!a%#g!,^%#g%#h';i%#h%#i';i%#i&/x!,^&/x&0y';i&0y&0z!,^&0z&1{';i&1{&1|!,^&1|&4w';i&4w&4}!,^&4}&5R';i&5R&5U!,^&5U&5V';i&5V&5W';i&5W&5d!,^&5d&6[';i&6[&6]!,^&6]&6^';i&6^&6c!,^&6c&6d';i&6d&6f!,^&6f&7p';i&7p&7w!,^&7w&7x';i&7x&8Y!,^&8Y&8q';i&8q&8z!,^&8z&9R';i&9R&9S!,^&9S&9Z';i&9Z&9[!,^&9[&9c';i&9c&9d!,^&9d&9k';i&9k&9l!,^&9l&9s';i&9s&9t!,^&9t&9{';i&9{&9|!,^&9|&:T';i&:T&:U!,^&:U&:]';i&:]&<P!,^&<P&<Q';i&<Q&FZ!,^&FZ&F[';i&F[&F]';i&F]&GX!,^&GX&G^';i&G^&Gc!,^&Gc&Gd';i&Gd&Ge';i&Ge&Gi!,^&Gi&Ic';i&Ic&Ii!,^&Ii&Il';i&Il&Im!,^&Im&Kk';i&Kk&Kl!,^&Kl&Kp';i&Kp&Ku!,^&Ku&Lp';i&Lp&Ls!,^&Ls&Nu';i&Nu' W!,^' W' s';i' s'!z!,^'!z'#[';i'#['.b!,^'.b*3f';i*3f*5S!,^*5S40_';i40_41d!,^41d4Js';i4Js4LY!,^4LY4MY';i4MY4M[!,^4M[5%T';i5%T5%W!,^5%W5%h';i5%h5%r!,^5%r5%s';i5%s5%t';i5%t5&Y!,^5&Y5'Z';i5'Z5'k!,^5'k5(U';i5(U5(^!,^5(^5)v';i5)v5*y!,^5*y5+S';i5+S5+U!,^5+U5-a';i5-a5-c!,^5-c5-g';i5-g5-h!,^5-h5-l';i5-l5-x!,^5-x5.T';i5.T5/t!,^5/t50O';i50O50P!,^50P50S';i50S50T!,^50T50X';i50X50Y!,^50Y50q';i50q51`!,^51`52f';i52f52t!,^52t53x';i53x55Y!,^55Y55`';i55`55c!,^55c55d';i55d55r!,^55r56`';i56`56j!,^56j57R';i57R57l!,^57l58Z';i58Z58b!,^58b59c';i59c5:P!,^5:P5:Q';i5:Q5;S!,^5;S5;}';i5;}5<f!,^5<f5<i';i5<i5<j!,^5<j5<r';i5<r5=W!,^5=W5=o';i5=o5=r!,^5=r5=s';i5=s5=x!,^5=x5>z';i5>z5>{!,^5>{5>|';i5>|5?P!,^5?P5?Q';i5?Q5?R';i5?R5?T!,^5?T5?Y';i5?Y5?[!,^5?[5?]';i5?]5?^!,^5?^5?_';i5?_5?w!,^5?w5?z';i5?z5?|!,^5?|5@X';i5@X5@`!,^5@`5@c';i5@c5@o!,^5@o5@u';i5@u5@w!,^5@w5@}';i5@}5AP!,^5AP5AV';i5AV5A`!,^5A`5Ag';i5Ag5Ah!,^5Ah5Ao';i5Ao5Dv!,^5Dv5Ek';i5Ek5FY!,^5FY;%S';i;%S;%`!,^;%`;%w';i;%w;%{!,^;%{;'O';i;'O;'S!,^;'S;=`!-c<%l?&r!,^?&r?.p';i?.p?.r!,^?.r?1Q';i?1Q?1x!,^?1x?2P';i?2P?2]!,^?2]?2b';i?2b?2g!,^?2g?2h';i?2h?2i!,^?2i?2s';i?2s?2t!,^?2t?3R';i?3R?3S!,^?3S?3X';i?3X?3Y!,^?3Y?3Z';i?3Z?3[!,^?3[?3]';i?3]?3^';i?3^?3_!,^?3_?3`';i?3`?3a';i?3a?3b!,^?3b?5r';i?5r?6e!,^?6e?>`';i?>`?>r!,^?>r?@U';i?@U?@W!,^?@W?A`';i?A`?BY!,^?BY?Bf';i?Bf?EO!,^?EO?ET';i?ET?EU!,^?EU?HR';i?HR?Hw!,^?Hw?Ic';i?Ic?Ii!,^?Ii?JT';i?JT?J`!,^?J`?L]';i?L]?L`!,^?L`?Lf';i?Lf?Lh!,^?Lh?Ln';i?Ln?Lp!,^?Lp?Lv';i?Lv?Lx!,^?Lx?L{';i?L{O!,^T(Bb2g|SmPOq!,zqr(BZrs%F{st(BZtu(BZuv(BZvw(BZwx(BZxz!,zz{(BZ{|(BZ|!O!,z!O!P(BZ!P!Q(BZ!Q![(BZ![!a!,z!a!b(BZ!b!c!,z!c!}(BZ!}#O!,z#O#P(BZ#P#R!,z#R#S(BZ#S#T(BZ#T#o(BZ#o$p!,z$p$q(BZ$q${!,z${$|(BZ$|%Q!,z%Q%R(BZ%R%W!,z%W%o(BZ%o%p!,z%p&a(BZ&a&b!,z&b0`(BZ0`0d!,z0d0p(BZ0p1O!,z1O1T(BZ1T1[!,z1[1](BZ1]1^!,z1^1_(BZ1_4U!,z4U4Z(BZ4Z4[!,z4[4](BZ4]4^(BZ4^4`!,z4`4d(BZ4d4l!,z4l4m(BZ4m4n!,z4n4q(BZ4q4r!,z4r4s(BZ4s4t!,z4t5Y(BZ5Y5Z!,z5Z7Q(BZ7Q7R!,z7R:S(BZ:S:[!,z:[=p(BZ=p=y!,z=y>q(BZ>q>s!,z>s>t(BZ>t>{!,z>{?t(BZ?tA`!,zA`A{(BZA{BQ!,zBQBT(BZBTCS!,zCSDP(BZDPDt!,zDtDu(BZDuDv(BZDvDw!,zDwGO(BZGOGP!,zGPGQ(BZGQGa!,zGaGb(BZGbGc(BZGcGj!,zGjGk(BZGkGl(BZGlGv!,zGvGy(BZGyG{!,zG{G|(BZG|H^!,zH^H_(BZH_H`!,zH`IO(BZIOIm!,zImKj(BZKjKu!,zKuKv(BZKvL`!,zL`MR(BZMRM[!,zM[M](BZM]M^(BZM^Mb!,zMbMc(BZMcMh!,zMhNO(BZNONS!,zNSNT(BZNTN^!,zN^N_(BZN_Nb!,zNbNc(BZNcNz!,zNz! e(BZ! e!#O!,z!#O!#P(BZ!#P!#Q!,z!#Q!#](BZ!#]!%W!,z!%W!&`(BZ!&`!&c!,z!&c!&d(BZ!&d!&v!,z!&v!&w(BZ!&w!'O!,z!'O!'Y(BZ!'Y!'i!,z!'i!'p(BZ!'p!'q!,z!'q!'x(BZ!'x!'}!,z!'}!(V(BZ!(V!(X!,z!(X!(Y(BZ!(Y!(Z(BZ!(Z!(]!,z!(]!(s(BZ!(s!(t!,z!(t!({(BZ!({!(|!,z!(|!(}(BZ!(}!)Q!,z!)Q!)U(BZ!)U!)X!,z!)X!)Y(BZ!)Y!)j!,z!)j!)k(BZ!)k!)x!,z!)x!)y(BZ!)y!)z(BZ!)z!){!,z!){!*O(BZ!*O!*^!,z!*^!*_(BZ!*_!*`(BZ!*`!*s!,z!*s!*y(BZ!*y!*}!,z!*}!+O(BZ!+O!+P(BZ!+P!+R!,z!+R!+i(BZ!+i!+j!,z!+j!+q(BZ!+q!+r!,z!+r!+s(BZ!+s!+t(BZ!+t!+u!,z!+u!+v(BZ!+v!+w(BZ!+w!+x!,z!+x!+y(BZ!+y!+z(BZ!+z!,k!,z!,k!,o(BZ!,o!,p!,z!,p!,q(BZ!,q!-U!,z!-U!-X(BZ!-X!-i!,z!-i!-r(BZ!-r!-s!,z!-s!-v(BZ!-v!-w!,z!-w!._(BZ!._!.`!,z!.`!.g(BZ!.g!.h!,z!.h!.i(BZ!.i!.j(BZ!.j!.k!,z!.k!.p(BZ!.p!.s!,z!.s!.t(BZ!.t!/W!,z!/W!/X(BZ!/X!/h!,z!/h!/i(BZ!/i!/j(BZ!/j!0_!,z!0_!0g(BZ!0g!0i!,z!0i!0j(BZ!0j!0k(BZ!0k!0m!,z!0m!1T(BZ!1T!1U!,z!1U!1](BZ!1]!1^!,z!1^!1_(BZ!1_!1`(BZ!1`!1a!,z!1a!1f(BZ!1f!1i!,z!1i!1j(BZ!1j!2Y!,z!2Y!2Z(BZ!2Z!2[(BZ!2[!2]!,z!2]!2`(BZ!2`!2o!,z!2o!2p(BZ!2p!3R!,z!3R!3S(BZ!3S!3T!,z!3T!3Z(BZ!3Z!3^!,z!3^!3a(BZ!3a!3b!,z!3b!3f(BZ!3f!3i!,z!3i!3j(BZ!3j!3k(BZ!3k!3l!,z!3l!3m(BZ!3m!3n!,z!3n!3o(BZ!3o!3p(BZ!3p!3s!,z!3s!3t(BZ!3t!3u(BZ!3u!3x!,z!3x!3{(BZ!3{!4O!,z!4O!4[(BZ!4[!4r!,z!4r!4s(BZ!4s!5y!,z!5y!6R(BZ!6R!6S!,z!6S!6V(BZ!6V!6W!,z!6W!6o(BZ!6o!6p!,z!6p!6z(BZ!6z!6{!,z!6{!7Q(BZ!7Q!7T!,z!7T!7U(BZ!7U!7p!,z!7p!7q(BZ!7q!7r(BZ!7r!7x!,z!7x!7y(BZ!7y!7z(BZ!7z!8o!,z!8o!8w(BZ!8w!8x!,z!8x!8{(BZ!8{!8|!,z!8|!9e(BZ!9e!9f!,z!9f!9p(BZ!9p!9q!,z!9q!9v(BZ!9v!9y!,z!9y!9z(BZ!9z!:l!,z!:l!:m(BZ!:m!:n!,z!:n!:o(BZ!:o!:p(BZ!:p!;P!,z!;P!;Q(BZ!;Q!;R(BZ!;R!;e!,z!;e!;m(BZ!;m!;n!,z!;n!;q(BZ!;q!;r!,z!;r!<m(BZ!<m!<o!,z!<o!<p(BZ!<p!=Q!,z!=Q!=R(BZ!=R!=d!,z!=d!=e(BZ!=e!=f(BZ!=f!>O!,z!>O!>U(BZ!>U!>Z!,z!>Z!>m(BZ!>m!>p!,z!>p!?Y(BZ!?Y!?Z!,z!?Z!?d(BZ!?d!?e!,z!?e!?f(BZ!?f!?h!,z!?h!?o(BZ!?o!@{!,z!@{!A}(BZ!A}!BO!,z!BO!BP(BZ!BP!BQ(BZ!BQ!B^!,z!B^!Be(BZ!Be!Cq!,z!Cq!Cr(BZ!Cr!Cs(BZ!Cs!Ct!,z!Ct!Cu(BZ!Cu!Cw!,z!Cw!Cx(BZ!Cx!Cy(BZ!Cy!Cz!,z!Cz!C{(BZ!C{!C}!,z!C}!DO(BZ!DO!DU!,z!DU!DY(BZ!DY!DZ!,z!DZ!Db(BZ!Db!Dc!,z!Dc!Df(BZ!Df!Dg!,z!Dg!Dh(BZ!Dh!Di!,z!Di!Dj(BZ!Dj!Dl!,z!Dl!Dm(BZ!Dm!Dn(BZ!Dn!Do!,z!Do!Ds(BZ!Ds!Dt!,z!Dt!Du(BZ!Du!Dv(BZ!Dv!EP!,z!EP!EQ(BZ!EQ!ES!,z!ES!EX(BZ!EX!EY!,z!EY!EZ(BZ!EZ!Ep!,z!Ep!Et(BZ!Et!Ff!,z!Ff!Fg(BZ!Fg!Gx!,z!Gx!HQ(BZ!HQ!HR!,z!HR!Hw(BZ!Hw!Id!,z!Id!Ii(BZ!Ii!LQ!,z!LQ!L}(BZ!L}!Mc!,z!Mc!Md(BZ!Md!Mt!,z!Mt!Mz(BZ!Mz!NO!,z!NO!NS(BZ!NS!NV!,z!NV!NW(BZ!NW!NZ!,z!NZ!N[(BZ!N[!N](BZ!N]!Nd!,z!Nd!Ng(BZ!Ng!Nk!,z!Nk!Nx(BZ!Nx# U!,z# U# V(BZ# V# h!,z# h#!`(BZ#!`#!a!,z#!a#!b(BZ#!b#!g!,z#!g#!h(BZ#!h#!j!,z#!j##g(BZ##g##h!,z##h#*s(BZ#*s#*t!,z#*t#*x(BZ#*x#*z!,z#*z#+R(BZ#+R#+S!,z#+S#+T(BZ#+T#+U!,z#+U#+Y(BZ#+Y#+[!,z#+[#,V(BZ#,V#,W!,z#,W#,[(BZ#,[#,^!,z#,^#-P(BZ#-P#-Q!,z#-Q#-U(BZ#-U#-W!,z#-W#-_(BZ#-_#-`!,z#-`#-a(BZ#-a#-b!,z#-b#-f(BZ#-f#-h!,z#-h#-w(BZ#-w#-x!,z#-x#/T(BZ#/T#/U!,z#/U#/Y(BZ#/Y#/[!,z#/[#0q(BZ#0q#1h!,z#1h#1x(BZ#1x#2Y!,z#2Y#4R(BZ#4R#4_!,z#4_#Au(BZ#Au#Aw!,z#Aw#BY(BZ#BY#BZ!,z#BZ#Bu(BZ#Bu#Bz!,z#Bz#Di(BZ#Di#EO!,z#EO#E](BZ#E]#E^!,z#E^#Eb(BZ#Eb#Ep!,z#Ep#FS(BZ#FS#Fb!,z#Fb#Ft(BZ#Ft#GS!,z#GS#Ga(BZ#Ga#Gb!,z#Gb#Ge(BZ#Ge#Gt!,z#Gt#Hz(BZ#Hz#Io!,z#Io#Ip(BZ#Ip#It!,z#It#Iu(BZ#Iu#K[!,z#K[#MW(BZ#MW#M`!,z#M`#NZ(BZ#NZ#N[!,z#N[#N](BZ#N]#Nb!,z#Nb$ z(BZ$ z$!U!,z$!U$!s(BZ$!s$#x!,z$#x$$h(BZ$$h$$j!,z$$j$$o(BZ$$o$$z!,z$$z$%x(BZ$%x$&_!,z$&_$&f(BZ$&f$'p!,z$'p$(X(BZ$(X$(b!,z$(b$)i(BZ$)i$+_!,z$+_$+`(BZ$+`$-a!,z$-a$.b(BZ$.b$.s!,z$.s$.z(BZ$.z$0T!,z$0T$0s(BZ$0s$1Q!,z$1Q$1R(BZ$1R$1S(BZ$1S$1^!,z$1^$2[(BZ$2[$2v!,z$2v$3l(BZ$3l$4g!,z$4g$4j(BZ$4j$4t!,z$4t$5j(BZ$5j$7y!,z$7y$7}(BZ$7}$8O!,z$8O$8S(BZ$8S$8V!,z$8V$8W(BZ$8W$8X(BZ$8X$8b!,z$8b$<j(BZ$<j$=|!,z$=|$DO(BZ$DO$DQ!,z$DQ$DW(BZ$DW$DY!,z$DY$EQ(BZ$EQ$ES!,z$ES$EY(BZ$EY$E[!,z$E[$Ed(BZ$Ed$Ee!,z$Ee$Ef(BZ$Ef$Eg!,z$Eg$Eh(BZ$Eh$Ei!,z$Ei$Ej(BZ$Ej$Ek!,z$Ek$F[(BZ$F[$F^!,z$F^$Ge(BZ$Ge$Gf!,z$Gf$Gm(BZ$Gm$Gn!,z$Gn$Go(BZ$Go$Gr!,z$Gr$Gu(BZ$Gu$Gv!,z$Gv$G}(BZ$G}$HQ!,z$HQ$HU(BZ$HU$HW!,z$HW$H^(BZ$H^$Hb!,z$Hb$Ho(BZ$Ho$Ht!,z$Ht$Hw(BZ$Hw$Hx!,z$Hx$IP(BZ$IP$Ki!,z$Ki$Kj(BZ$Kj$Kw!,z$Kw$Kx(BZ$Kx$LY!,z$LY$Lg(BZ$Lg$Np!,z$Np$Nq(BZ$Nq$Nu!,z$Nu$Nv(BZ$Nv$Nx!,z$Nx% S(BZ% S% T!,z% T% U(BZ% U% X!,z% X% ^(BZ% ^% d!,z% d% e(BZ% e% f!,z% f% g(BZ% g% h!,z% h% i(BZ% i% j!,z% j% n(BZ% n% o!,z% o% z(BZ% z% |!,z% |%!Q(BZ%!Q%!V!,z%!V%![(BZ%![%!`!,z%!`%!a(BZ%!a%#g!,z%#g%#h(BZ%#h%#i(BZ%#i&/x!,z&/x&0y(BZ&0y&0z!,z&0z&1{(BZ&1{&1|!,z&1|&4w(BZ&4w&4}!,z&4}&5R(BZ&5R&5U!,z&5U&5V(BZ&5V&5W(BZ&5W&5d!,z&5d&6[(BZ&6[&6]!,z&6]&6^(BZ&6^&6c!,z&6c&6d(BZ&6d&6f!,z&6f&7p(BZ&7p&7w!,z&7w&7x(BZ&7x&8Y!,z&8Y&8q(BZ&8q&8z!,z&8z&9R(BZ&9R&9S!,z&9S&9Z(BZ&9Z&9[!,z&9[&9c(BZ&9c&9d!,z&9d&9k(BZ&9k&9l!,z&9l&9s(BZ&9s&9t!,z&9t&9{(BZ&9{&9|!,z&9|&:T(BZ&:T&:U!,z&:U&:](BZ&:]&<P!,z&<P&<Q(BZ&<Q&FZ!,z&FZ&F[(BZ&F[&F](BZ&F]&GX!,z&GX&G^(BZ&G^&Gc!,z&Gc&Gd(BZ&Gd&Ge(BZ&Ge&Gi!,z&Gi&Ic(BZ&Ic&Ii!,z&Ii&Il(BZ&Il&Im!,z&Im&Kk(BZ&Kk&Kl!,z&Kl&Kp(BZ&Kp&Ku!,z&Ku&Lp(BZ&Lp&Ls!,z&Ls&Nu(BZ&Nu' W!,z' W' s(BZ' s'!z!,z'!z'#[(BZ'#['.b!,z'.b*3f(BZ*3f*5S!,z*5S40_(BZ40_41d!,z41d4Js(BZ4Js4LY!,z4LY4MY(BZ4MY4M[!,z4M[5%T(BZ5%T5%W!,z5%W5%h(BZ5%h5%r!,z5%r5%s(BZ5%s5%t(BZ5%t5&Y!,z5&Y5'Z(BZ5'Z5'k!,z5'k5(U(BZ5(U5(^!,z5(^5)v(BZ5)v5*y!,z5*y5+S(BZ5+S5+U!,z5+U5-a(BZ5-a5-c!,z5-c5-g(BZ5-g5-h!,z5-h5-l(BZ5-l5-x!,z5-x5.T(BZ5.T5/t!,z5/t50O(BZ50O50P!,z50P50S(BZ50S50T!,z50T50X(BZ50X50Y!,z50Y50q(BZ50q51`!,z51`52f(BZ52f52t!,z52t53x(BZ53x55Y!,z55Y55`(BZ55`55c!,z55c55d(BZ55d55r!,z55r56`(BZ56`56j!,z56j57R(BZ57R57l!,z57l58Z(BZ58Z58b!,z58b59c(BZ59c5:P!,z5:P5:Q(BZ5:Q5;S!,z5;S5;}(BZ5;}5<f!,z5<f5<i(BZ5<i5<j!,z5<j5<r(BZ5<r5=W!,z5=W5=o(BZ5=o5=r!,z5=r5=s(BZ5=s5=x!,z5=x5>z(BZ5>z5>{!,z5>{5>|(BZ5>|5?P!,z5?P5?Q(BZ5?Q5?R(BZ5?R5?T!,z5?T5?Y(BZ5?Y5?[!,z5?[5?](BZ5?]5?^!,z5?^5?_(BZ5?_5?w!,z5?w5?z(BZ5?z5?|!,z5?|5@X(BZ5@X5@`!,z5@`5@c(BZ5@c5@o!,z5@o5@u(BZ5@u5@w!,z5@w5@}(BZ5@}5AP!,z5AP5AV(BZ5AV5A`!,z5A`5Ag(BZ5Ag5Ah!,z5Ah5Ao(BZ5Ao5Dv!,z5Dv5Ek(BZ5Ek5FY!,z5FY;%S(BZ;%S;%`!,z;%`;%w(BZ;%w;%{!,z;%{;'O(BZ;'O;'S!,z;'S;=`!-]<%l?&r!,z?&r?.p(BZ?.p?.r!,z?.r?1Q(BZ?1Q?1x!,z?1x?2P(BZ?2P?2]!,z?2]?2b(BZ?2b?2g!,z?2g?2h(BZ?2h?2i!,z?2i?2s(BZ?2s?2t!,z?2t?3R(BZ?3R?3S!,z?3S?3X(BZ?3X?3Y!,z?3Y?3Z(BZ?3Z?3[!,z?3[?3](BZ?3]?3^(BZ?3^?3_!,z?3_?3`(BZ?3`?3a(BZ?3a?3b!,z?3b?5r(BZ?5r?6e!,z?6e?>`(BZ?>`?>r!,z?>r?@U(BZ?@U?@W!,z?@W?A`(BZ?A`?BY!,z?BY?Bf(BZ?Bf?EO!,z?EO?ET(BZ?ET?EU!,z?EU?HR(BZ?HR?Hw!,z?Hw?Ic(BZ?Ic?Ii!,z?Ii?JT(BZ?JT?J`!,z?J`?L](BZ?L]?L`!,z?L`?Lf(BZ?Lf?Lh!,z?Lh?Ln(BZ?Ln?Lp!,z?Lp?Lv(BZ?Lv?Lx!,z?Lx?L{(BZ?L{O!,zV)IS2g|SzQmPOq!-iqr)Hyrs&4yst)Hytu)Hyuv)Hyvw)Hywx(BZxz!-iz{)Hy{|)Hy|!O!-i!O!P)Hy!P!Q)Hy!Q![)Hy![!a!-i!a!b)Hy!b!c!-i!c!})Hy!}#O!-i#O#P)Hy#P#R!-i#R#S)Hy#S#T)Hy#T#o)Hy#o$p!-i$p$q)Hy$q${!-i${$|)Hy$|%Q!-i%Q%R)Hy%R%W!-i%W%o)Hy%o%p!-i%p&a)Hy&a&b!-i&b0`)Hy0`0d!-i0d0p)Hy0p1O!-i1O1T)Hy1T1[!-i1[1])Hy1]1^!-i1^1_)Hy1_4U!-i4U4Z)Hy4Z4[!-i4[4])Hy4]4^)Hy4^4`!-i4`4d)Hy4d4l!-i4l4m)Hy4m4n!-i4n4q)Hy4q4r!-i4r4s)Hy4s4t!-i4t5Y)Hy5Y5Z!-i5Z7Q)Hy7Q7R!-i7R:S)Hy:S:[!-i:[=p)Hy=p=y!-i=y>q)Hy>q>s!-i>s>t)Hy>t>{!-i>{?t)Hy?tA`!-iA`A{)HyA{BQ!-iBQBT)HyBTCS!-iCSDP)HyDPDt!-iDtDu)HyDuDv)HyDvDw!-iDwGO)HyGOGP!-iGPGQ)HyGQGa!-iGaGb)HyGbGc)HyGcGj!-iGjGk)HyGkGl)HyGlGv!-iGvGy)HyGyG{!-iG{G|)HyG|H^!-iH^H_)HyH_H`!-iH`IO)HyIOIm!-iImKj)HyKjKu!-iKuKv)HyKvL`!-iL`MR)HyMRM[!-iM[M])HyM]M^)HyM^Mb!-iMbMc)HyMcMh!-iMhNO)HyNONS!-iNSNT)HyNTN^!-iN^N_)HyN_Nb!-iNbNc)HyNcNz!-iNz! e)Hy! e!#O!-i!#O!#P)Hy!#P!#Q!-i!#Q!#])Hy!#]!%W!-i!%W!&`)Hy!&`!&c!-i!&c!&d)Hy!&d!&v!-i!&v!&w)Hy!&w!'O!-i!'O!'Y)Hy!'Y!'i!-i!'i!'p)Hy!'p!'q!-i!'q!'x)Hy!'x!'}!-i!'}!(V)Hy!(V!(X!-i!(X!(Y)Hy!(Y!(Z)Hy!(Z!(]!-i!(]!(s)Hy!(s!(t!-i!(t!({)Hy!({!(|!-i!(|!(})Hy!(}!)Q!-i!)Q!)U)Hy!)U!)X!-i!)X!)Y)Hy!)Y!)j!-i!)j!)k)Hy!)k!)x!-i!)x!)y)Hy!)y!)z)Hy!)z!){!-i!){!*O)Hy!*O!*^!-i!*^!*_)Hy!*_!*`)Hy!*`!*s!-i!*s!*y)Hy!*y!*}!-i!*}!+O)Hy!+O!+P)Hy!+P!+R!-i!+R!+i)Hy!+i!+j!-i!+j!+q)Hy!+q!+r!-i!+r!+s)Hy!+s!+t)Hy!+t!+u!-i!+u!+v)Hy!+v!+w)Hy!+w!+x!-i!+x!+y)Hy!+y!+z)Hy!+z!,k!-i!,k!,o)Hy!,o!,p!-i!,p!,q)Hy!,q!-U!-i!-U!-X)Hy!-X!-i!-i!-i!-r)Hy!-r!-s!-i!-s!-v)Hy!-v!-w!-i!-w!._)Hy!._!.`!-i!.`!.g)Hy!.g!.h!-i!.h!.i)Hy!.i!.j)Hy!.j!.k!-i!.k!.p)Hy!.p!.s!-i!.s!.t)Hy!.t!/W!-i!/W!/X)Hy!/X!/h!-i!/h!/i)Hy!/i!/j)Hy!/j!0_!-i!0_!0g)Hy!0g!0i!-i!0i!0j)Hy!0j!0k)Hy!0k!0m!-i!0m!1T)Hy!1T!1U!-i!1U!1])Hy!1]!1^!-i!1^!1_)Hy!1_!1`)Hy!1`!1a!-i!1a!1f)Hy!1f!1i!-i!1i!1j)Hy!1j!2Y!-i!2Y!2Z)Hy!2Z!2[)Hy!2[!2]!-i!2]!2`)Hy!2`!2o!-i!2o!2p)Hy!2p!3R!-i!3R!3S)Hy!3S!3T!-i!3T!3Z)Hy!3Z!3^!-i!3^!3a)Hy!3a!3b!-i!3b!3f)Hy!3f!3i!-i!3i!3j)Hy!3j!3k)Hy!3k!3l!-i!3l!3m)Hy!3m!3n!-i!3n!3o)Hy!3o!3p)Hy!3p!3s!-i!3s!3t)Hy!3t!3u)Hy!3u!3x!-i!3x!3{)Hy!3{!4O!-i!4O!4[)Hy!4[!4r!-i!4r!4s)Hy!4s!5y!-i!5y!6R)Hy!6R!6S!-i!6S!6V)Hy!6V!6W!-i!6W!6o)Hy!6o!6p!-i!6p!6z)Hy!6z!6{!-i!6{!7Q)Hy!7Q!7T!-i!7T!7U)Hy!7U!7p!-i!7p!7q)Hy!7q!7r)Hy!7r!7x!-i!7x!7y)Hy!7y!7z)Hy!7z!8o!-i!8o!8w)Hy!8w!8x!-i!8x!8{)Hy!8{!8|!-i!8|!9e)Hy!9e!9f!-i!9f!9p)Hy!9p!9q!-i!9q!9v)Hy!9v!9y!-i!9y!9z)Hy!9z!:l!-i!:l!:m)Hy!:m!:n!-i!:n!:o)Hy!:o!:p)Hy!:p!;P!-i!;P!;Q)Hy!;Q!;R)Hy!;R!;e!-i!;e!;m)Hy!;m!;n!-i!;n!;q)Hy!;q!;r!-i!;r!<m)Hy!<m!<o!-i!<o!<p)Hy!<p!=Q!-i!=Q!=R)Hy!=R!=d!-i!=d!=e)Hy!=e!=f)Hy!=f!>O!-i!>O!>U)Hy!>U!>Z!-i!>Z!>m)Hy!>m!>p!-i!>p!?Y)Hy!?Y!?Z!-i!?Z!?d)Hy!?d!?e!-i!?e!?f)Hy!?f!?h!-i!?h!?o)Hy!?o!@{!-i!@{!A})Hy!A}!BO!-i!BO!BP)Hy!BP!BQ)Hy!BQ!B^!-i!B^!Be)Hy!Be!Cq!-i!Cq!Cr)Hy!Cr!Cs)Hy!Cs!Ct!-i!Ct!Cu)Hy!Cu!Cw!-i!Cw!Cx)Hy!Cx!Cy)Hy!Cy!Cz!-i!Cz!C{)Hy!C{!C}!-i!C}!DO)Hy!DO!DU!-i!DU!DY)Hy!DY!DZ!-i!DZ!Db)Hy!Db!Dc!-i!Dc!Df)Hy!Df!Dg!-i!Dg!Dh)Hy!Dh!Di!-i!Di!Dj)Hy!Dj!Dl!-i!Dl!Dm)Hy!Dm!Dn)Hy!Dn!Do!-i!Do!Ds)Hy!Ds!Dt!-i!Dt!Du)Hy!Du!Dv)Hy!Dv!EP!-i!EP!EQ)Hy!EQ!ES!-i!ES!EX)Hy!EX!EY!-i!EY!EZ)Hy!EZ!Ep!-i!Ep!Et)Hy!Et!Ff!-i!Ff!Fg)Hy!Fg!Gx!-i!Gx!HQ)Hy!HQ!HR!-i!HR!Hw)Hy!Hw!Id!-i!Id!Ii)Hy!Ii!LQ!-i!LQ!L})Hy!L}!Mc!-i!Mc!Md)Hy!Md!Mt!-i!Mt!Mz)Hy!Mz!NO!-i!NO!NS)Hy!NS!NV!-i!NV!NW)Hy!NW!NZ!-i!NZ!N[)Hy!N[!N])Hy!N]!Nd!-i!Nd!Ng)Hy!Ng!Nk!-i!Nk!Nx)Hy!Nx# U!-i# U# V)Hy# V# h!-i# h#!`)Hy#!`#!a!-i#!a#!b)Hy#!b#!g!-i#!g#!h)Hy#!h#!j!-i#!j##g)Hy##g##h!-i##h#*s)Hy#*s#*t!-i#*t#*x)Hy#*x#*z!-i#*z#+R)Hy#+R#+S!-i#+S#+T)Hy#+T#+U!-i#+U#+Y)Hy#+Y#+[!-i#+[#,V)Hy#,V#,W!-i#,W#,[)Hy#,[#,^!-i#,^#-P)Hy#-P#-Q!-i#-Q#-U)Hy#-U#-W!-i#-W#-_)Hy#-_#-`!-i#-`#-a)Hy#-a#-b!-i#-b#-f)Hy#-f#-h!-i#-h#-w)Hy#-w#-x!-i#-x#/T)Hy#/T#/U!-i#/U#/Y)Hy#/Y#/[!-i#/[#0q)Hy#0q#1h!-i#1h#1x)Hy#1x#2Y!-i#2Y#4R)Hy#4R#4_!-i#4_#Au)Hy#Au#Aw!-i#Aw#BY)Hy#BY#BZ!-i#BZ#Bu)Hy#Bu#Bz!-i#Bz#Di)Hy#Di#EO!-i#EO#E])Hy#E]#E^!-i#E^#Eb)Hy#Eb#Ep!-i#Ep#FS)Hy#FS#Fb!-i#Fb#Ft)Hy#Ft#GS!-i#GS#Ga)Hy#Ga#Gb!-i#Gb#Ge)Hy#Ge#Gt!-i#Gt#Hz)Hy#Hz#Io!-i#Io#Ip)Hy#Ip#It!-i#It#Iu)Hy#Iu#K[!-i#K[#MW)Hy#MW#M`!-i#M`#NZ)Hy#NZ#N[!-i#N[#N])Hy#N]#Nb!-i#Nb$ z)Hy$ z$!U!-i$!U$!s)Hy$!s$#x!-i$#x$$h)Hy$$h$$j!-i$$j$$o)Hy$$o$$z!-i$$z$%x)Hy$%x$&_!-i$&_$&f)Hy$&f$'p!-i$'p$(X)Hy$(X$(b!-i$(b$)i)Hy$)i$+_!-i$+_$+`)Hy$+`$-a!-i$-a$.b)Hy$.b$.s!-i$.s$.z)Hy$.z$0T!-i$0T$0s)Hy$0s$1Q!-i$1Q$1R)Hy$1R$1S)Hy$1S$1^!-i$1^$2[)Hy$2[$2v!-i$2v$3l)Hy$3l$4g!-i$4g$4j)Hy$4j$4t!-i$4t$5j)Hy$5j$7y!-i$7y$7})Hy$7}$8O!-i$8O$8S)Hy$8S$8V!-i$8V$8W)Hy$8W$8X)Hy$8X$8b!-i$8b$<j)Hy$<j$=|!-i$=|$DO)Hy$DO$DQ!-i$DQ$DW)Hy$DW$DY!-i$DY$EQ)Hy$EQ$ES!-i$ES$EY)Hy$EY$E[!-i$E[$Ed)Hy$Ed$Ee!-i$Ee$Ef)Hy$Ef$Eg!-i$Eg$Eh)Hy$Eh$Ei!-i$Ei$Ej)Hy$Ej$Ek!-i$Ek$F[)Hy$F[$F^!-i$F^$Ge)Hy$Ge$Gf!-i$Gf$Gm)Hy$Gm$Gn!-i$Gn$Go)Hy$Go$Gr!-i$Gr$Gu)Hy$Gu$Gv!-i$Gv$G})Hy$G}$HQ!-i$HQ$HU)Hy$HU$HW!-i$HW$H^)Hy$H^$Hb!-i$Hb$Ho)Hy$Ho$Ht!-i$Ht$Hw)Hy$Hw$Hx!-i$Hx$IP)Hy$IP$Ki!-i$Ki$Kj)Hy$Kj$Kw!-i$Kw$Kx)Hy$Kx$LY!-i$LY$Lg)Hy$Lg$Np!-i$Np$Nq)Hy$Nq$Nu!-i$Nu$Nv)Hy$Nv$Nx!-i$Nx% S)Hy% S% T!-i% T% U)Hy% U% X!-i% X% ^)Hy% ^% d!-i% d% e)Hy% e% f!-i% f% g)Hy% g% h!-i% h% i)Hy% i% j!-i% j% n)Hy% n% o!-i% o% z)Hy% z% |!-i% |%!Q)Hy%!Q%!V!-i%!V%![)Hy%![%!`!-i%!`%!a)Hy%!a%#g!-i%#g%#h)Hy%#h%#i)Hy%#i&/x!-i&/x&0y)Hy&0y&0z!-i&0z&1{)Hy&1{&1|!-i&1|&4w)Hy&4w&4}!-i&4}&5R)Hy&5R&5U!-i&5U&5V)Hy&5V&5W)Hy&5W&5d!-i&5d&6[)Hy&6[&6]!-i&6]&6^)Hy&6^&6c!-i&6c&6d)Hy&6d&6f!-i&6f&7p)Hy&7p&7w!-i&7w&7x)Hy&7x&8Y!-i&8Y&8q)Hy&8q&8z!-i&8z&9R)Hy&9R&9S!-i&9S&9Z)Hy&9Z&9[!-i&9[&9c)Hy&9c&9d!-i&9d&9k)Hy&9k&9l!-i&9l&9s)Hy&9s&9t!-i&9t&9{)Hy&9{&9|!-i&9|&:T)Hy&:T&:U!-i&:U&:])Hy&:]&<P!-i&<P&<Q)Hy&<Q&FZ!-i&FZ&F[)Hy&F[&F])Hy&F]&GX!-i&GX&G^)Hy&G^&Gc!-i&Gc&Gd)Hy&Gd&Ge)Hy&Ge&Gi!-i&Gi&Ic)Hy&Ic&Ii!-i&Ii&Il)Hy&Il&Im!-i&Im&Kk)Hy&Kk&Kl!-i&Kl&Kp)Hy&Kp&Ku!-i&Ku&Lp)Hy&Lp&Ls!-i&Ls&Nu)Hy&Nu' W!-i' W' s)Hy' s'!z!-i'!z'#[)Hy'#['.b!-i'.b*3f)Hy*3f*5S!-i*5S40_)Hy40_41d!-i41d4Js)Hy4Js4LY!-i4LY4MY)Hy4MY4M[!-i4M[5%T)Hy5%T5%W!-i5%W5%h)Hy5%h5%r!-i5%r5%s)Hy5%s5%t)Hy5%t5&Y!-i5&Y5'Z)Hy5'Z5'k!-i5'k5(U)Hy5(U5(^!-i5(^5)v)Hy5)v5*y!-i5*y5+S)Hy5+S5+U!-i5+U5-a)Hy5-a5-c!-i5-c5-g)Hy5-g5-h!-i5-h5-l)Hy5-l5-x!-i5-x5.T)Hy5.T5/t!-i5/t50O)Hy50O50P!-i50P50S)Hy50S50T!-i50T50X)Hy50X50Y!-i50Y50q)Hy50q51`!-i51`52f)Hy52f52t!-i52t53x)Hy53x55Y!-i55Y55`)Hy55`55c!-i55c55d)Hy55d55r!-i55r56`)Hy56`56j!-i56j57R)Hy57R57l!-i57l58Z)Hy58Z58b!-i58b59c)Hy59c5:P!-i5:P5:Q)Hy5:Q5;S!-i5;S5;})Hy5;}5<f!-i5<f5<i)Hy5<i5<j!-i5<j5<r)Hy5<r5=W!-i5=W5=o)Hy5=o5=r!-i5=r5=s)Hy5=s5=x!-i5=x5>z)Hy5>z5>{!-i5>{5>|)Hy5>|5?P!-i5?P5?Q)Hy5?Q5?R)Hy5?R5?T!-i5?T5?Y)Hy5?Y5?[!-i5?[5?])Hy5?]5?^!-i5?^5?_)Hy5?_5?w!-i5?w5?z)Hy5?z5?|!-i5?|5@X)Hy5@X5@`!-i5@`5@c)Hy5@c5@o!-i5@o5@u)Hy5@u5@w!-i5@w5@})Hy5@}5AP!-i5AP5AV)Hy5AV5A`!-i5A`5Ag)Hy5Ag5Ah!-i5Ah5Ao)Hy5Ao5Dv!-i5Dv5Ek)Hy5Ek5FY!-i5FY;%S)Hy;%S;%`!-i;%`;%w)Hy;%w;%{!-i;%{;'O)Hy;'O;'S!-i;'S;=`!.V<%l?&r!-i?&r?.p)Hy?.p?.r!-i?.r?1Q)Hy?1Q?1x!-i?1x?2P)Hy?2P?2]!-i?2]?2b)Hy?2b?2g!-i?2g?2h)Hy?2h?2i!-i?2i?2s)Hy?2s?2t!-i?2t?3R)Hy?3R?3S!-i?3S?3X)Hy?3X?3Y!-i?3Y?3Z)Hy?3Z?3[!-i?3[?3])Hy?3]?3^)Hy?3^?3_!-i?3_?3`)Hy?3`?3a)Hy?3a?3b!-i?3b?5r)Hy?5r?6e!-i?6e?>`)Hy?>`?>r!-i?>r?@U)Hy?@U?@W!-i?@W?A`)Hy?A`?BY!-i?BY?Bf)Hy?Bf?EO!-i?EO?ET)Hy?ET?EU!-i?EU?HR)Hy?HR?Hw!-i?Hw?Ic)Hy?Ic?Ii!-i?Ii?JT)Hy?JT?J`!-i?J`?L])Hy?L]?L`!-i?L`?Lf)Hy?Lf?Lh!-i?Lh?Ln)Hy?Ln?Lp!-i?Lp?Lv)Hy?Lv?Lx!-i?Lx?L{)Hy?L{O!-i_+ v2g!OWzQ{TmPOq!*jqr#9krs#9kst#9ktu#9kuv#9kvw#9kwx$@]xz!*jz{#9k{|#9k|!O!*j!O!P#9k!P!Q#9k!Q![#9k![!a!*j!a!b#9k!b!c!*j!c!}#9k!}#O!*j#O#P#9k#P#R!*j#R#S#9k#S#T&4y#T#o#9k#o$p!*j$p$q#9k$q${!*j${$|#9k$|%Q!*j%Q%R#9k%R%W!*j%W%o#9k%o%p!*j%p&a#9k&a&b!*j&b0`#9k0`0d!*j0d0p#9k0p1O!*j1O1T#9k1T1[!*j1[1]#9k1]1^!*j1^1_#9k1_4U!*j4U4Z#9k4Z4[!*j4[4]#9k4]4^#9k4^4`!*j4`4d#9k4d4l!*j4l4m#9k4m4n!*j4n4q#9k4q4r!*j4r4s#9k4s4t!*j4t5Y#9k5Y5Z!*j5Z7Q#9k7Q7R!*j7R:S#9k:S:[!*j:[=p#9k=p=y!*j=y>q#9k>q>s!*j>s>t#9k>t>{!*j>{?t#9k?tA`!*jA`A{#9kA{BQ!*jBQBT#9kBTCS!*jCSDP#9kDPDt!*jDtDu#9kDuDv#9kDvDw!*jDwGO#9kGOGP!*jGPGQ#9kGQGa!*jGaGb#9kGbGc#9kGcGj!*jGjGk#9kGkGl#9kGlGv!*jGvGy#9kGyG{!*jG{G|#9kG|H^!*jH^H_#9kH_H`!*jH`IO#9kIOIm!*jImKj#9kKjKu!*jKuKv#9kKvL`!*jL`MR#9kMRM[!*jM[M]#9kM]M^#9kM^Mb!*jMbMc#9kMcMh!*jMhNO#9kNONS!*jNSNT#9kNTN^!*jN^N_#9kN_Nb!*jNbNc#9kNcNz!*jNz! e#9k! e!#O!*j!#O!#P#9k!#P!#Q!*j!#Q!#]#9k!#]!%W!*j!%W!&`#9k!&`!&c!*j!&c!&d#9k!&d!&v!*j!&v!&w#9k!&w!'O!*j!'O!'Y#9k!'Y!'i!*j!'i!'p#9k!'p!'q!*j!'q!'x#9k!'x!'}!*j!'}!(V#9k!(V!(X!*j!(X!(Y#9k!(Y!(Z#9k!(Z!(]!*j!(]!(s#9k!(s!(t!*j!(t!({#9k!({!(|!*j!(|!(}#9k!(}!)Q!*j!)Q!)U#9k!)U!)X!*j!)X!)Y#9k!)Y!)j!*j!)j!)k#9k!)k!)x!*j!)x!)y#9k!)y!)z#9k!)z!){!*j!){!*O#9k!*O!*^!*j!*^!*_#9k!*_!*`#9k!*`!*s!*j!*s!*y#9k!*y!*}!*j!*}!+O#9k!+O!+P#9k!+P!+R!*j!+R!+i#9k!+i!+j!*j!+j!+q#9k!+q!+r!*j!+r!+s#9k!+s!+t#9k!+t!+u!*j!+u!+v#9k!+v!+w#9k!+w!+x!*j!+x!+y#9k!+y!+z#9k!+z!,k!*j!,k!,o#9k!,o!,p!*j!,p!,q#9k!,q!-U!*j!-U!-X#9k!-X!-i!*j!-i!-r#9k!-r!-s!*j!-s!-v#9k!-v!-w!*j!-w!._#9k!._!.`!*j!.`!.g#9k!.g!.h!*j!.h!.i#9k!.i!.j#9k!.j!.k!*j!.k!.p#9k!.p!.s!*j!.s!.t#9k!.t!/W!*j!/W!/X#9k!/X!/h!*j!/h!/i#9k!/i!/j#9k!/j!0_!*j!0_!0g#9k!0g!0i!*j!0i!0j#9k!0j!0k#9k!0k!0m!*j!0m!1T#9k!1T!1U!*j!1U!1]#9k!1]!1^!*j!1^!1_#9k!1_!1`#9k!1`!1a!*j!1a!1f#9k!1f!1i!*j!1i!1j#9k!1j!2Y!*j!2Y!2Z#9k!2Z!2[#9k!2[!2]!*j!2]!2`#9k!2`!2o!*j!2o!2p#9k!2p!3R!*j!3R!3S#9k!3S!3T!*j!3T!3Z#9k!3Z!3^!*j!3^!3a#9k!3a!3b!*j!3b!3f#9k!3f!3i!*j!3i!3j#9k!3j!3k#9k!3k!3l!*j!3l!3m#9k!3m!3n!*j!3n!3o#9k!3o!3p#9k!3p!3s!*j!3s!3t#9k!3t!3u#9k!3u!3x!*j!3x!3{#9k!3{!4O!*j!4O!4[#9k!4[!4r!*j!4r!4s#9k!4s!5y!*j!5y!6R#9k!6R!6S!*j!6S!6V#9k!6V!6W!*j!6W!6o#9k!6o!6p!*j!6p!6z#9k!6z!6{!*j!6{!7Q#9k!7Q!7T!*j!7T!7U#9k!7U!7p!*j!7p!7q#9k!7q!7r#9k!7r!7x!*j!7x!7y#9k!7y!7z#9k!7z!8o!*j!8o!8w#9k!8w!8x!*j!8x!8{#9k!8{!8|!*j!8|!9e#9k!9e!9f!*j!9f!9p#9k!9p!9q!*j!9q!9v#9k!9v!9y!*j!9y!9z#9k!9z!:l!*j!:l!:m#9k!:m!:n!*j!:n!:o#9k!:o!:p#9k!:p!;P!*j!;P!;Q#9k!;Q!;R#9k!;R!;e!*j!;e!;m#9k!;m!;n!*j!;n!;q#9k!;q!;r!*j!;r!<m#9k!<m!<o!*j!<o!<p#9k!<p!=Q!*j!=Q!=R#9k!=R!=d!*j!=d!=e#9k!=e!=f#9k!=f!>O!*j!>O!>U#9k!>U!>Z!*j!>Z!>m#9k!>m!>p!*j!>p!?Y#9k!?Y!?Z!*j!?Z!?d#9k!?d!?e!*j!?e!?f#9k!?f!?h!*j!?h!?o#9k!?o!@{!*j!@{!A}#9k!A}!BO!*j!BO!BP#9k!BP!BQ#9k!BQ!B^!*j!B^!Be#9k!Be!Cq!*j!Cq!Cr#9k!Cr!Cs#9k!Cs!Ct!*j!Ct!Cu#9k!Cu!Cw!*j!Cw!Cx#9k!Cx!Cy#9k!Cy!Cz!*j!Cz!C{#9k!C{!C}!*j!C}!DO#9k!DO!DU!*j!DU!DY#9k!DY!DZ!*j!DZ!Db#9k!Db!Dc!*j!Dc!Df#9k!Df!Dg!*j!Dg!Dh#9k!Dh!Di!*j!Di!Dj#9k!Dj!Dl!*j!Dl!Dm#9k!Dm!Dn#9k!Dn!Do!*j!Do!Ds#9k!Ds!Dt!*j!Dt!Du#9k!Du!Dv#9k!Dv!EP!*j!EP!EQ#9k!EQ!ES!*j!ES!EX#9k!EX!EY!*j!EY!EZ#9k!EZ!Ep!*j!Ep!Et#9k!Et!Ff!*j!Ff!Fg#9k!Fg!Gx!*j!Gx!HQ#9k!HQ!HR!*j!HR!Hw#9k!Hw!Id!*j!Id!Ii#9k!Ii!LQ!*j!LQ!L}#9k!L}!Mc!*j!Mc!Md#9k!Md!Mt!*j!Mt!Mz#9k!Mz!NO!*j!NO!NS#9k!NS!NV!*j!NV!NW#9k!NW!NZ!*j!NZ!N[#9k!N[!N]#9k!N]!Nd!*j!Nd!Ng#9k!Ng!Nk!*j!Nk!Nx#9k!Nx# U!*j# U# V#9k# V# h!*j# h#!`#9k#!`#!a!*j#!a#!b#9k#!b#!g!*j#!g#!h#9k#!h#!j!*j#!j##g#9k##g##h!*j##h#*s#9k#*s#*t!*j#*t#*x#9k#*x#*z!*j#*z#+R#9k#+R#+S!*j#+S#+T#9k#+T#+U!*j#+U#+Y#9k#+Y#+[!*j#+[#,V#9k#,V#,W!*j#,W#,[#9k#,[#,^!*j#,^#-P#9k#-P#-Q!*j#-Q#-U#9k#-U#-W!*j#-W#-_#9k#-_#-`!*j#-`#-a#9k#-a#-b!*j#-b#-f#9k#-f#-h!*j#-h#-w#9k#-w#-x!*j#-x#/T#9k#/T#/U!*j#/U#/Y#9k#/Y#/[!*j#/[#0q#9k#0q#1h!*j#1h#1x#9k#1x#2Y!*j#2Y#4R#9k#4R#4_!*j#4_#Au#9k#Au#Aw!*j#Aw#BY#9k#BY#BZ!*j#BZ#Bu#9k#Bu#Bz!*j#Bz#Di#9k#Di#EO!*j#EO#E]#9k#E]#E^!*j#E^#Eb#9k#Eb#Ep!*j#Ep#FS#9k#FS#Fb!*j#Fb#Ft#9k#Ft#GS!*j#GS#Ga#9k#Ga#Gb!*j#Gb#Ge#9k#Ge#Gt!*j#Gt#Hz#9k#Hz#Io!*j#Io#Ip#9k#Ip#It!*j#It#Iu#9k#Iu#K[!*j#K[#MW#9k#MW#M`!*j#M`#NZ#9k#NZ#N[!*j#N[#N]#9k#N]#Nb!*j#Nb$ z#9k$ z$!U!*j$!U$!s#9k$!s$#x!*j$#x$$h#9k$$h$$j!*j$$j$$o#9k$$o$$z!*j$$z$%x#9k$%x$&_!*j$&_$&f#9k$&f$'p!*j$'p$(X#9k$(X$(b!*j$(b$)i#9k$)i$+_!*j$+_$+`#9k$+`$-a!*j$-a$.b#9k$.b$.s!*j$.s$.z#9k$.z$0T!*j$0T$0s#9k$0s$1Q!*j$1Q$1R#9k$1R$1S#9k$1S$1^!*j$1^$2[#9k$2[$2v!*j$2v$3l#9k$3l$4g!*j$4g$4j#9k$4j$4t!*j$4t$5j#9k$5j$7y!*j$7y$7}#9k$7}$8O!*j$8O$8S#9k$8S$8V!*j$8V$8W#9k$8W$8X#9k$8X$8b!*j$8b$<j#9k$<j$=|!*j$=|$DO#9k$DO$DQ!*j$DQ$DW#9k$DW$DY!*j$DY$EQ#9k$EQ$ES!*j$ES$EY#9k$EY$E[!*j$E[$Ed#9k$Ed$Ee!*j$Ee$Ef#9k$Ef$Eg!*j$Eg$Eh#9k$Eh$Ei!*j$Ei$Ej#9k$Ej$Ek!*j$Ek$F[#9k$F[$F^!*j$F^$Ge#9k$Ge$Gf!*j$Gf$Gm#9k$Gm$Gn!*j$Gn$Go#9k$Go$Gr!*j$Gr$Gu#9k$Gu$Gv!*j$Gv$G}#9k$G}$HQ!*j$HQ$HU#9k$HU$HW!*j$HW$H^#9k$H^$Hb!*j$Hb$Ho#9k$Ho$Ht!*j$Ht$Hw#9k$Hw$Hx!*j$Hx$IP#9k$IP$Ki!*j$Ki$Kj#9k$Kj$Kw!*j$Kw$Kx#9k$Kx$LY!*j$LY$Lg#9k$Lg$Np!*j$Np$Nq#9k$Nq$Nu!*j$Nu$Nv#9k$Nv$Nx!*j$Nx% S#9k% S% T!*j% T% U#9k% U% X!*j% X% ^#9k% ^% d!*j% d% e#9k% e% f!*j% f% g#9k% g% h!*j% h% i#9k% i% j!*j% j% n#9k% n% o!*j% o% z#9k% z% |!*j% |%!Q#9k%!Q%!V!*j%!V%![#9k%![%!`!*j%!`%!a#9k%!a%#g!*j%#g%#h#9k%#h%#i#9k%#i&/x!*j&/x&0y#9k&0y&0z!*j&0z&1{#9k&1{&1|!*j&1|&4w#9k&4w&4}!*j&4}&5R#9k&5R&5U!*j&5U&5V#9k&5V&5W#9k&5W&5d!*j&5d&6[#9k&6[&6]!*j&6]&6^#9k&6^&6c!*j&6c&6d#9k&6d&6f!*j&6f&7p#9k&7p&7w!*j&7w&7x#9k&7x&8Y!*j&8Y&8q#9k&8q&8z!*j&8z&9R#9k&9R&9S!*j&9S&9Z#9k&9Z&9[!*j&9[&9c#9k&9c&9d!*j&9d&9k#9k&9k&9l!*j&9l&9s#9k&9s&9t!*j&9t&9{#9k&9{&9|!*j&9|&:T#9k&:T&:U!*j&:U&:]#9k&:]&<P!*j&<P&<Q#9k&<Q&FZ!*j&FZ&F[#9k&F[&F]#9k&F]&GX!*j&GX&G^#9k&G^&Gc!*j&Gc&Gd#9k&Gd&Ge#9k&Ge&Gi!*j&Gi&Ic#9k&Ic&Ii!*j&Ii&Il#9k&Il&Im!*j&Im&Kk#9k&Kk&Kl!*j&Kl&Kp#9k&Kp&Ku!*j&Ku&Lp#9k&Lp&Ls!*j&Ls&Nu#9k&Nu' W!*j' W' s#9k' s'!z!*j'!z'#[#9k'#['.b!*j'.b*3f#9k*3f*5S!*j*5S40_#9k40_41d!*j41d4Js#9k4Js4LY!*j4LY4MY#9k4MY4M[!*j4M[5%T#9k5%T5%W!*j5%W5%h#9k5%h5%r!*j5%r5%s#9k5%s5%t#9k5%t5&Y!*j5&Y5'Z#9k5'Z5'k!*j5'k5(U#9k5(U5(^!*j5(^5)v#9k5)v5*y!*j5*y5+S#9k5+S5+U!*j5+U5-a#9k5-a5-c!*j5-c5-g#9k5-g5-h!*j5-h5-l#9k5-l5-x!*j5-x5.T#9k5.T5/t!*j5/t50O#9k50O50P!*j50P50S#9k50S50T!*j50T50X#9k50X50Y!*j50Y50q#9k50q51`!*j51`52f#9k52f52t!*j52t53x#9k53x55Y!*j55Y55`#9k55`55c!*j55c55d#9k55d55r!*j55r56`#9k56`56j!*j56j57R#9k57R57l!*j57l58Z#9k58Z58b!*j58b59c#9k59c5:P!*j5:P5:Q#9k5:Q5;S!*j5;S5;}#9k5;}5<f!*j5<f5<i#9k5<i5<j!*j5<j5<r#9k5<r5=W!*j5=W5=o#9k5=o5=r!*j5=r5=s#9k5=s5=x!*j5=x5>z#9k5>z5>{!*j5>{5>|#9k5>|5?P!*j5?P5?Q#9k5?Q5?R#9k5?R5?T!*j5?T5?Y#9k5?Y5?[!*j5?[5?]#9k5?]5?^!*j5?^5?_#9k5?_5?w!*j5?w5?z#9k5?z5?|!*j5?|5@X#9k5@X5@`!*j5@`5@c#9k5@c5@o!*j5@o5@u#9k5@u5@w!*j5@w5@}#9k5@}5AP!*j5AP5AV#9k5AV5A`!*j5A`5Ag#9k5Ag5Ah!*j5Ah5Ao#9k5Ao5Dv!*j5Dv5Ek#9k5Ek5FY!*j5FY;%S#9k;%S;%`!*j;%`;%w#9k;%w;%{!*j;%{;'O#9k;'O;'S!*j;'S;=`!,W<%l?&r!*j?&r?.p#9k?.p?.r!*j?.r?1Q#9k?1Q?1x!*j?1x?2P#9k?2P?2]!*j?2]?2b#9k?2b?2g!*j?2g?2h#9k?2h?2i!*j?2i?2s#9k?2s?2t!*j?2t?3R#9k?3R?3S!*j?3S?3X#9k?3X?3Y!*j?3Y?3Z#9k?3Z?3[!*j?3[?3]#9k?3]?3^#9k?3^?3_!*j?3_?3`#9k?3`?3a#9k?3a?3b!*j?3b?5r#9k?5r?6e!*j?6e?>`#9k?>`?>r!*j?>r?@U#9k?@U?@W!*j?@W?A`#9k?A`?BY!*j?BY?Bf#9k?Bf?EO!*j?EO?ET#9k?ET?EU!*j?EU?HR#9k?HR?Hw!*j?Hw?Ic#9k?Ic?Ii!*j?Ii?JT#9k?JT?J`!*j?J`?L]#9k?L]?L`!*j?L`?Lf#9k?Lf?Lh!*j?Lh?Ln#9k?Ln?Lp!*j?Lp?Lv#9k?Lv?Lx!*j?Lx?L{#9k?L{O!*j!a,(j2g!OW|SzQmPOq!)tqr!2wrs#9kst!2wtu!2wuv-/Rvw!2wwx';ixz!)tz{!2w{|!2w|!O!)t!O!P!2w!P!Q!2w!Q![!2w![!a!)t!a!b!2w!b!c!)t!c!}!2w!}#O!)t#O#P!2w#P#R!)t#R#S!2w#S#T)Hy#T#o!2w#o$p!)t$p$q!2w$q${!)t${$|!2w$|%Q!)t%Q%R!2w%R%W!)t%W%o!2w%o%p!)t%p&a!2w&a&b!)t&b0`!2w0`0d!)t0d0p!2w0p1O!)t1O1T!2w1T1[!)t1[1]!2w1]1^!)t1^1_!2w1_4U!)t4U4Z!2w4Z4[!)t4[4]!2w4]4^!2w4^4`!)t4`4d!2w4d4l!)t4l4m!2w4m4n!)t4n4q!2w4q4r!)t4r4s!2w4s4t!)t4t5Y!2w5Y5Z!)t5Z7Q!2w7Q7R!)t7R:S!2w:S:[!)t:[=p!2w=p=y!)t=y>q!2w>q>s!)t>s>t!2w>t>{!)t>{?t!2w?tA`!)tA`A{!2wA{BQ!)tBQBT!2wBTCS!)tCSDP!2wDPDt!)tDtDu!2wDuDv!2wDvDw!)tDwGO!2wGOGP!)tGPGQ!2wGQGa!)tGaGb!2wGbGc!2wGcGj!)tGjGk!2wGkGl!2wGlGv!)tGvGy!2wGyG{!)tG{G|!2wG|H^!)tH^H_!2wH_H`!)tH`IO!2wIOIm!)tImKj!2wKjKu!)tKuKv!2wKvL`!)tL`MR!2wMRM[!)tM[M]!2wM]M^!2wM^Mb!)tMbMc!2wMcMh!)tMhNO!2wNONS!)tNSNT!2wNTN^!)tN^N_!2wN_Nb!)tNbNc!2wNcNz!)tNz! e!2w! e!#O!)t!#O!#P!2w!#P!#Q!)t!#Q!#]!2w!#]!%W!)t!%W!&`!2w!&`!&c!)t!&c!&d!2w!&d!&v!)t!&v!&w!2w!&w!'O!)t!'O!'Y!2w!'Y!'i!)t!'i!'p!2w!'p!'q!)t!'q!'x!2w!'x!'}!)t!'}!(V!2w!(V!(X!)t!(X!(Y!2w!(Y!(Z!2w!(Z!(]!)t!(]!(s!2w!(s!(t!)t!(t!({!2w!({!(|!)t!(|!(}!2w!(}!)Q!)t!)Q!)U!2w!)U!)X!)t!)X!)Y!2w!)Y!)j!)t!)j!)k!2w!)k!)x!)t!)x!)y!2w!)y!)z!2w!)z!){!)t!){!*O!2w!*O!*^!)t!*^!*_!2w!*_!*`!2w!*`!*s!)t!*s!*y!2w!*y!*}!)t!*}!+O!2w!+O!+P!2w!+P!+R!)t!+R!+i!2w!+i!+j!)t!+j!+q!2w!+q!+r!)t!+r!+s!2w!+s!+t!2w!+t!+u!)t!+u!+v!2w!+v!+w!2w!+w!+x!)t!+x!+y!2w!+y!+z!2w!+z!,k!)t!,k!,o!2w!,o!,p!)t!,p!,q!2w!,q!-U!)t!-U!-X!2w!-X!-i!)t!-i!-r!2w!-r!-s!)t!-s!-v!2w!-v!-w!)t!-w!._!2w!._!.`!)t!.`!.g!2w!.g!.h!)t!.h!.i!2w!.i!.j!2w!.j!.k!)t!.k!.p!2w!.p!.s!)t!.s!.t!2w!.t!/W!)t!/W!/X!2w!/X!/h!)t!/h!/i!2w!/i!/j!2w!/j!0_!)t!0_!0g!2w!0g!0i!)t!0i!0j!2w!0j!0k!2w!0k!0m!)t!0m!1T!2w!1T!1U!)t!1U!1]!2w!1]!1^!)t!1^!1_!2w!1_!1`!2w!1`!1a!)t!1a!1f!2w!1f!1i!)t!1i!1j!2w!1j!2Y!)t!2Y!2Z!2w!2Z!2[!2w!2[!2]!)t!2]!2`!2w!2`!2o!)t!2o!2p!2w!2p!3R!)t!3R!3S!2w!3S!3T!)t!3T!3Z!2w!3Z!3^!)t!3^!3a!2w!3a!3b!)t!3b!3f!2w!3f!3i!)t!3i!3j!2w!3j!3k!2w!3k!3l!)t!3l!3m!2w!3m!3n!)t!3n!3o!2w!3o!3p!2w!3p!3s!)t!3s!3t!2w!3t!3u!2w!3u!3x!)t!3x!3{!2w!3{!4O!)t!4O!4[!2w!4[!4r!)t!4r!4s!2w!4s!5y!)t!5y!6R!2w!6R!6S!)t!6S!6V!2w!6V!6W!)t!6W!6o!2w!6o!6p!)t!6p!6z!2w!6z!6{!)t!6{!7Q!2w!7Q!7T!)t!7T!7U!2w!7U!7p!)t!7p!7q!2w!7q!7r!2w!7r!7x!)t!7x!7y!2w!7y!7z!2w!7z!8o!)t!8o!8w!2w!8w!8x!)t!8x!8{!2w!8{!8|!)t!8|!9e!2w!9e!9f!)t!9f!9p!2w!9p!9q!)t!9q!9v!2w!9v!9y!)t!9y!9z!2w!9z!:l!)t!:l!:m!2w!:m!:n!)t!:n!:o!2w!:o!:p!2w!:p!;P!)t!;P!;Q!2w!;Q!;R!2w!;R!;e!)t!;e!;m!2w!;m!;n!)t!;n!;q!2w!;q!;r!)t!;r!<m!2w!<m!<o!)t!<o!<p!2w!<p!=Q!)t!=Q!=R!2w!=R!=d!)t!=d!=e!2w!=e!=f!2w!=f!>O!)t!>O!>U!2w!>U!>Z!)t!>Z!>m!2w!>m!>p!)t!>p!?Y!2w!?Y!?Z!)t!?Z!?d!2w!?d!?e!)t!?e!?f!2w!?f!?h!)t!?h!?o!2w!?o!@{!)t!@{!A}!2w!A}!BO!)t!BO!BP!2w!BP!BQ!2w!BQ!B^!)t!B^!Be!2w!Be!Cq!)t!Cq!Cr!2w!Cr!Cs!2w!Cs!Ct!)t!Ct!Cu!2w!Cu!Cw!)t!Cw!Cx!2w!Cx!Cy!2w!Cy!Cz!)t!Cz!C{!2w!C{!C}!)t!C}!DO!2w!DO!DU!)t!DU!DY!2w!DY!DZ!)t!DZ!Db!2w!Db!Dc!)t!Dc!Df!2w!Df!Dg!)t!Dg!Dh!2w!Dh!Di!)t!Di!Dj!2w!Dj!Dl!)t!Dl!Dm!2w!Dm!Dn!2w!Dn!Do!)t!Do!Ds!2w!Ds!Dt!)t!Dt!Du!2w!Du!Dv!2w!Dv!EP!)t!EP!EQ!2w!EQ!ES!)t!ES!EX!2w!EX!EY!)t!EY!EZ!2w!EZ!Ep!)t!Ep!Et!2w!Et!Ff!)t!Ff!Fg!2w!Fg!Gx!)t!Gx!HQ!2w!HQ!HR!)t!HR!Hw!2w!Hw!Id!)t!Id!Ii!2w!Ii!LQ!)t!LQ!L}!2w!L}!Mc!)t!Mc!Md!2w!Md!Mt!)t!Mt!Mz!2w!Mz!NO!)t!NO!NS!2w!NS!NV!)t!NV!NW!2w!NW!NZ!)t!NZ!N[!2w!N[!N]!2w!N]!Nd!)t!Nd!Ng!2w!Ng!Nk!)t!Nk!Nx!2w!Nx# U!)t# U# V!2w# V# h!)t# h#!`!2w#!`#!a!)t#!a#!b!2w#!b#!g!)t#!g#!h!2w#!h#!j!)t#!j##g!2w##g##h!)t##h#*s!2w#*s#*t!)t#*t#*x!2w#*x#*z!)t#*z#+R!2w#+R#+S!)t#+S#+T!2w#+T#+U!)t#+U#+Y!2w#+Y#+[!)t#+[#,V!2w#,V#,W!)t#,W#,[!2w#,[#,^!)t#,^#-P!2w#-P#-Q!)t#-Q#-U!2w#-U#-W!)t#-W#-_!2w#-_#-`!)t#-`#-a!2w#-a#-b!)t#-b#-f!2w#-f#-h!)t#-h#-w!2w#-w#-x!)t#-x#/T!2w#/T#/U!)t#/U#/Y!2w#/Y#/[!)t#/[#0q!2w#0q#1h!)t#1h#1x!2w#1x#2Y!)t#2Y#4R!2w#4R#4_!)t#4_#Au!2w#Au#Aw!)t#Aw#BY!2w#BY#BZ!)t#BZ#Bu!2w#Bu#Bz!)t#Bz#Di!2w#Di#EO!)t#EO#E]!2w#E]#E^!)t#E^#Eb!2w#Eb#Ep!)t#Ep#FS!2w#FS#Fb!)t#Fb#Ft!2w#Ft#GS!)t#GS#Ga!2w#Ga#Gb!)t#Gb#Ge!2w#Ge#Gt!)t#Gt#Hz!2w#Hz#Io!)t#Io#Ip!2w#Ip#It!)t#It#Iu!2w#Iu#K[!)t#K[#MW!2w#MW#M`!)t#M`#NZ!2w#NZ#N[!)t#N[#N]!2w#N]#Nb!)t#Nb$ z!2w$ z$!U!)t$!U$!s!2w$!s$#x!)t$#x$$h!2w$$h$$j!)t$$j$$o!2w$$o$$z!)t$$z$%x!2w$%x$&_!)t$&_$&f!2w$&f$'p!)t$'p$(X!2w$(X$(b!)t$(b$)i!2w$)i$+_!)t$+_$+`!2w$+`$-a!)t$-a$.b!2w$.b$.s!)t$.s$.z!2w$.z$0T!)t$0T$0s!2w$0s$1Q!)t$1Q$1R!2w$1R$1S!2w$1S$1^!)t$1^$2[!2w$2[$2v!)t$2v$3l!2w$3l$4g!)t$4g$4j!2w$4j$4t!)t$4t$5j!2w$5j$7y!)t$7y$7}!2w$7}$8O!)t$8O$8S!2w$8S$8V!)t$8V$8W!2w$8W$8X!2w$8X$8b!)t$8b$<j!2w$<j$=|!)t$=|$DO!2w$DO$DQ!)t$DQ$DW!2w$DW$DY!)t$DY$EQ!2w$EQ$ES!)t$ES$EY!2w$EY$E[!)t$E[$Ed!2w$Ed$Ee!)t$Ee$Ef!2w$Ef$Eg!)t$Eg$Eh!2w$Eh$Ei!)t$Ei$Ej!2w$Ej$Ek!)t$Ek$F[!2w$F[$F^!)t$F^$Ge!2w$Ge$Gf!)t$Gf$Gm!2w$Gm$Gn!)t$Gn$Go!2w$Go$Gr!)t$Gr$Gu!2w$Gu$Gv!)t$Gv$G}!2w$G}$HQ!)t$HQ$HU!2w$HU$HW!)t$HW$H^!2w$H^$Hb!)t$Hb$Ho!2w$Ho$Ht!)t$Ht$Hw!2w$Hw$Hx!)t$Hx$IP!2w$IP$Ki!)t$Ki$Kj!2w$Kj$Kw!)t$Kw$Kx!2w$Kx$LY!)t$LY$Lg!2w$Lg$Np!)t$Np$Nq!2w$Nq$Nu!)t$Nu$Nv!2w$Nv$Nx!)t$Nx% S!2w% S% T!)t% T% U!2w% U% X!)t% X% ^!2w% ^% d!)t% d% e!2w% e% f!)t% f% g!2w% g% h!)t% h% i!2w% i% j!)t% j% n!2w% n% o!)t% o% z!2w% z% |!)t% |%!Q!2w%!Q%!V!)t%!V%![!2w%![%!`!)t%!`%!a!2w%!a%#g!)t%#g%#h!2w%#h%#i!2w%#i&/x!)t&/x&0y!2w&0y&0z!)t&0z&1{!2w&1{&1|!)t&1|&4w!2w&4w&4}!)t&4}&5R!2w&5R&5U!)t&5U&5V!2w&5V&5W!2w&5W&5d!)t&5d&6[!2w&6[&6]!)t&6]&6^!2w&6^&6c!)t&6c&6d!2w&6d&6f!)t&6f&7p!2w&7p&7w!)t&7w&7x!2w&7x&8Y!)t&8Y&8q!2w&8q&8z!)t&8z&9R!2w&9R&9S!)t&9S&9Z!2w&9Z&9[!)t&9[&9c!2w&9c&9d!)t&9d&9k!2w&9k&9l!)t&9l&9s!2w&9s&9t!)t&9t&9{!2w&9{&9|!)t&9|&:T!2w&:T&:U!)t&:U&:]!2w&:]&<P!)t&<P&<Q!2w&<Q&FZ!)t&FZ&F[!2w&F[&F]!2w&F]&GX!)t&GX&G^!2w&G^&Gc!)t&Gc&Gd!2w&Gd&Ge!2w&Ge&Gi!)t&Gi&Ic!2w&Ic&Ii!)t&Ii&Il!2w&Il&Im!)t&Im&Kk!2w&Kk&Kl!)t&Kl&Kp!2w&Kp&Ku!)t&Ku&Lp!2w&Lp&Ls!)t&Ls&Nu!2w&Nu' W!)t' W' s!2w' s'!z!)t'!z'#[!2w'#['.b!)t'.b*3f!2w*3f*5S!)t*5S40_!2w40_41d!)t41d4Js!2w4Js4LY!)t4LY4MY!2w4MY4M[!)t4M[5%T!2w5%T5%W!)t5%W5%h!2w5%h5%r!)t5%r5%s!2w5%s5%t!2w5%t5&Y!)t5&Y5'Z!2w5'Z5'k!)t5'k5(U!2w5(U5(^!)t5(^5)v!2w5)v5*y!)t5*y5+S!2w5+S5+U!)t5+U5-a!2w5-a5-c!)t5-c5-g!2w5-g5-h!)t5-h5-l!2w5-l5-x!)t5-x5.T!2w5.T5/t!)t5/t50O!2w50O50P!)t50P50S!2w50S50T!)t50T50X!2w50X50Y!)t50Y50q!2w50q51`!)t51`52f!2w52f52t!)t52t53x!2w53x55Y!)t55Y55`!2w55`55c!)t55c55d!2w55d55r!)t55r56`!2w56`56j!)t56j57R!2w57R57l!)t57l58Z!2w58Z58b!)t58b59c!2w59c5:P!)t5:P5:Q!2w5:Q5;S!)t5;S5;}!2w5;}5<f!)t5<f5<i!2w5<i5<j!)t5<j5<r!2w5<r5=W!)t5=W5=o!2w5=o5=r!)t5=r5=s!2w5=s5=x!)t5=x5>z!2w5>z5>{!)t5>{5>|!2w5>|5?P!)t5?P5?Q!2w5?Q5?R!2w5?R5?T!)t5?T5?Y!2w5?Y5?[!)t5?[5?]!2w5?]5?^!)t5?^5?_!2w5?_5?w!)t5?w5?z!2w5?z5?|!)t5?|5@X!2w5@X5@`!)t5@`5@c!2w5@c5@o!)t5@o5@u!2w5@u5@w!)t5@w5@}!2w5@}5AP!)t5AP5AV!2w5AV5A`!)t5A`5Ag!2w5Ag5Ah!)t5Ah5Ao!2w5Ao5Dv!)t5Dv5Ek!2w5Ek5FY!)t5FY;%S!2w;%S;%`!)t;%`;%w!2w;%w;%{!)t;%{;'O!2w;'O;'S!)t;'S;=`!.]<%l?&r!)t?&r?.p!2w?.p?.r!)t?.r?1Q!2w?1Q?1x!)t?1x?2P!2w?2P?2]!)t?2]?2b!2w?2b?2g!)t?2g?2h!2w?2h?2i!)t?2i?2s!2w?2s?2t!)t?2t?3R!2w?3R?3S!)t?3S?3X!2w?3X?3Y!)t?3Y?3Z!2w?3Z?3[!)t?3[?3]!2w?3]?3^!2w?3^?3_!)t?3_?3`!2w?3`?3a!2w?3a?3b!)t?3b?5r!2w?5r?6e!)t?6e?>`!2w?>`?>r!)t?>r?@U!2w?@U?@W!)t?@W?A`!2w?A`?BY!)t?BY?Bf!2w?Bf?EO!)t?EO?ET!2w?ET?EU!)t?EU?HR!2w?HR?Hw!)t?Hw?Ic!2w?Ic?Ii!)t?Ii?JT!2w?JT?J`!)t?J`?L]!2w?L]?L`!)t?L`?Lf!2w?Lf?Lh!)t?Lh?Ln!2w?Ln?Lp!)t?Lp?Lv!2w?Lv?Lx!)t?Lx?L{!2w?L{O!)t!a-/`2i!OW|SzQS!RmPOY.5}YZ!)tZq.5}qr-/Rrs.<hst-/Rtu-/Ruv-/Rvw-/Rwx3)sxz.5}z{-/R{|-/R|!O.5}!O!P-/R!P!Q-/R!Q![-/R![!a.5}!a!b-/R!b!c.5}!c!}-/R!}#O.5}#O#P-/R#P#R.5}#R#S-/R#S#T57e#T#o-/R#o$p.5}$p$q-/R$q${.5}${$|-/R$|%Q.5}%Q%R-/R%R%W.5}%W%o-/R%o%p.5}%p&a-/R&a&b.5}&b0`-/R0`0d.5}0d0p-/R0p1O.5}1O1T-/R1T1[.5}1[1]-/R1]1^.5}1^1_-/R1_4U.5}4U4Z-/R4Z4[.5}4[4]-/R4]4^-/R4^4`.5}4`4d-/R4d4l.5}4l4m-/R4m4n.5}4n4q-/R4q4r.5}4r4s-/R4s4t.5}4t5Y-/R5Y5Z.5}5Z7Q-/R7Q7R.5}7R:S-/R:S:[.5}:[=p-/R=p=y.5}=y>q-/R>q>s.5}>s>t-/R>t>{.5}>{?t-/R?tA`.5}A`A{-/RA{BQ.5}BQBT-/RBTCS.5}CSDP-/RDPDt.5}DtDu-/RDuDv-/RDvDw.5}DwGO-/RGOGP.5}GPGQ-/RGQGa.5}GaGb-/RGbGc-/RGcGj.5}GjGk-/RGkGl-/RGlGv.5}GvGy-/RGyG{.5}G{G|-/RG|H^.5}H^H_-/RH_H`.5}H`IO-/RIOIm.5}ImKj-/RKjKu.5}KuKv-/RKvL`.5}L`MR-/RMRM[.5}M[M]-/RM]M^-/RM^Mb.5}MbMc-/RMcMh.5}MhNO-/RNONS.5}NSNT-/RNTN^.5}N^N_-/RN_Nb.5}NbNc-/RNcNz.5}Nz! e-/R! e!#O.5}!#O!#P-/R!#P!#Q.5}!#Q!#]-/R!#]!%W.5}!%W!&`-/R!&`!&c.5}!&c!&d-/R!&d!&v.5}!&v!&w-/R!&w!'O.5}!'O!'Y-/R!'Y!'i.5}!'i!'p-/R!'p!'q.5}!'q!'x-/R!'x!'}.5}!'}!(V-/R!(V!(X.5}!(X!(Y-/R!(Y!(Z-/R!(Z!(].5}!(]!(s-/R!(s!(t.5}!(t!({-/R!({!(|.5}!(|!(}-/R!(}!)Q.5}!)Q!)U-/R!)U!)X.5}!)X!)Y-/R!)Y!)j.5}!)j!)k-/R!)k!)x.5}!)x!)y-/R!)y!)z-/R!)z!){.5}!){!*O-/R!*O!*^.5}!*^!*_-/R!*_!*`-/R!*`!*s.5}!*s!*y-/R!*y!*}.5}!*}!+O-/R!+O!+P-/R!+P!+R.5}!+R!+i-/R!+i!+j.5}!+j!+q-/R!+q!+r.5}!+r!+s-/R!+s!+t-/R!+t!+u.5}!+u!+v-/R!+v!+w-/R!+w!+x.5}!+x!+y-/R!+y!+z-/R!+z!,k.5}!,k!,o-/R!,o!,p.5}!,p!,q-/R!,q!-U.5}!-U!-X-/R!-X!-i.5}!-i!-r-/R!-r!-s.5}!-s!-v-/R!-v!-w.5}!-w!._-/R!._!.`.5}!.`!.g-/R!.g!.h.5}!.h!.i-/R!.i!.j-/R!.j!.k.5}!.k!.p-/R!.p!.s.5}!.s!.t-/R!.t!/W.5}!/W!/X-/R!/X!/h.5}!/h!/i-/R!/i!/j-/R!/j!0_.5}!0_!0g-/R!0g!0i.5}!0i!0j-/R!0j!0k-/R!0k!0m.5}!0m!1T-/R!1T!1U.5}!1U!1]-/R!1]!1^.5}!1^!1_-/R!1_!1`-/R!1`!1a.5}!1a!1f-/R!1f!1i.5}!1i!1j-/R!1j!2Y.5}!2Y!2Z-/R!2Z!2[-/R!2[!2].5}!2]!2`-/R!2`!2o.5}!2o!2p-/R!2p!3R.5}!3R!3S-/R!3S!3T.5}!3T!3Z-/R!3Z!3^.5}!3^!3a-/R!3a!3b.5}!3b!3f-/R!3f!3i.5}!3i!3j-/R!3j!3k-/R!3k!3l.5}!3l!3m-/R!3m!3n.5}!3n!3o-/R!3o!3p-/R!3p!3s.5}!3s!3t-/R!3t!3u-/R!3u!3x.5}!3x!3{-/R!3{!4O.5}!4O!4[-/R!4[!4r.5}!4r!4s-/R!4s!5y.5}!5y!6R-/R!6R!6S.5}!6S!6V-/R!6V!6W.5}!6W!6o-/R!6o!6p.5}!6p!6z-/R!6z!6{.5}!6{!7Q-/R!7Q!7T.5}!7T!7U-/R!7U!7p.5}!7p!7q-/R!7q!7r-/R!7r!7x.5}!7x!7y-/R!7y!7z-/R!7z!8o.5}!8o!8w-/R!8w!8x.5}!8x!8{-/R!8{!8|.5}!8|!9e-/R!9e!9f.5}!9f!9p-/R!9p!9q.5}!9q!9v-/R!9v!9y.5}!9y!9z-/R!9z!:l.5}!:l!:m-/R!:m!:n.5}!:n!:o-/R!:o!:p-/R!:p!;P.5}!;P!;Q-/R!;Q!;R-/R!;R!;e.5}!;e!;m-/R!;m!;n.5}!;n!;q-/R!;q!;r.5}!;r!<m-/R!<m!<o.5}!<o!<p-/R!<p!=Q.5}!=Q!=R-/R!=R!=d.5}!=d!=e-/R!=e!=f-/R!=f!>O.5}!>O!>U-/R!>U!>Z.5}!>Z!>m-/R!>m!>p.5}!>p!?Y-/R!?Y!?Z.5}!?Z!?d-/R!?d!?e.5}!?e!?f-/R!?f!?h.5}!?h!?o-/R!?o!@{.5}!@{!A}-/R!A}!BO.5}!BO!BP-/R!BP!BQ-/R!BQ!B^.5}!B^!Be-/R!Be!Cq.5}!Cq!Cr-/R!Cr!Cs-/R!Cs!Ct.5}!Ct!Cu-/R!Cu!Cw.5}!Cw!Cx-/R!Cx!Cy-/R!Cy!Cz.5}!Cz!C{-/R!C{!C}.5}!C}!DO-/R!DO!DU.5}!DU!DY-/R!DY!DZ.5}!DZ!Db-/R!Db!Dc.5}!Dc!Df-/R!Df!Dg.5}!Dg!Dh-/R!Dh!Di.5}!Di!Dj-/R!Dj!Dl.5}!Dl!Dm-/R!Dm!Dn-/R!Dn!Do.5}!Do!Ds-/R!Ds!Dt.5}!Dt!Du-/R!Du!Dv-/R!Dv!EP.5}!EP!EQ-/R!EQ!ES.5}!ES!EX-/R!EX!EY.5}!EY!EZ-/R!EZ!Ep.5}!Ep!Et-/R!Et!Ff.5}!Ff!Fg-/R!Fg!Gx.5}!Gx!HQ-/R!HQ!HR.5}!HR!Hw-/R!Hw!Id.5}!Id!Ii-/R!Ii!LQ.5}!LQ!L}-/R!L}!Mc.5}!Mc!Md-/R!Md!Mt.5}!Mt!Mz-/R!Mz!NO.5}!NO!NS-/R!NS!NV.5}!NV!NW-/R!NW!NZ.5}!NZ!N[-/R!N[!N]-/R!N]!Nd.5}!Nd!Ng-/R!Ng!Nk.5}!Nk!Nx-/R!Nx# U.5}# U# V-/R# V# h.5}# h#!`-/R#!`#!a.5}#!a#!b-/R#!b#!g.5}#!g#!h-/R#!h#!j.5}#!j##g-/R##g##h.5}##h#*s-/R#*s#*t.5}#*t#*x-/R#*x#*z.5}#*z#+R-/R#+R#+S.5}#+S#+T-/R#+T#+U.5}#+U#+Y-/R#+Y#+[.5}#+[#,V-/R#,V#,W.5}#,W#,[-/R#,[#,^.5}#,^#-P-/R#-P#-Q.5}#-Q#-U-/R#-U#-W.5}#-W#-_-/R#-_#-`.5}#-`#-a-/R#-a#-b.5}#-b#-f-/R#-f#-h.5}#-h#-w-/R#-w#-x.5}#-x#/T-/R#/T#/U.5}#/U#/Y-/R#/Y#/[.5}#/[#0q-/R#0q#1h.5}#1h#1x-/R#1x#2Y.5}#2Y#4R-/R#4R#4_.5}#4_#Au-/R#Au#Aw.5}#Aw#BY-/R#BY#BZ.5}#BZ#Bu-/R#Bu#Bz.5}#Bz#Di-/R#Di#EO.5}#EO#E]-/R#E]#E^.5}#E^#Eb-/R#Eb#Ep.5}#Ep#FS-/R#FS#Fb.5}#Fb#Ft-/R#Ft#GS.5}#GS#Ga-/R#Ga#Gb.5}#Gb#Ge-/R#Ge#Gt.5}#Gt#Hz-/R#Hz#Io.5}#Io#Ip-/R#Ip#It.5}#It#Iu-/R#Iu#K[.5}#K[#MW-/R#MW#M`.5}#M`#NZ-/R#NZ#N[.5}#N[#N]-/R#N]#Nb.5}#Nb$ z-/R$ z$!U.5}$!U$!s-/R$!s$#x.5}$#x$$h-/R$$h$$j.5}$$j$$o-/R$$o$$z.5}$$z$%x-/R$%x$&_.5}$&_$&f-/R$&f$'p.5}$'p$(X-/R$(X$(b.5}$(b$)i-/R$)i$+_.5}$+_$+`-/R$+`$-a.5}$-a$.b-/R$.b$.s.5}$.s$.z-/R$.z$0T.5}$0T$0s-/R$0s$1Q.5}$1Q$1R-/R$1R$1S-/R$1S$1^.5}$1^$2[-/R$2[$2v.5}$2v$3l-/R$3l$4g.5}$4g$4j-/R$4j$4t.5}$4t$5j-/R$5j$7y.5}$7y$7}-/R$7}$8O.5}$8O$8S-/R$8S$8V.5}$8V$8W-/R$8W$8X-/R$8X$8b.5}$8b$<j-/R$<j$=|.5}$=|$DO-/R$DO$DQ.5}$DQ$DW-/R$DW$DY.5}$DY$EQ-/R$EQ$ES.5}$ES$EY-/R$EY$E[.5}$E[$Ed-/R$Ed$Ee.5}$Ee$Ef-/R$Ef$Eg.5}$Eg$Eh-/R$Eh$Ei.5}$Ei$Ej-/R$Ej$Ek.5}$Ek$F[-/R$F[$F^.5}$F^$Ge-/R$Ge$Gf.5}$Gf$Gm-/R$Gm$Gn.5}$Gn$Go-/R$Go$Gr.5}$Gr$Gu-/R$Gu$Gv.5}$Gv$G}-/R$G}$HQ.5}$HQ$HU-/R$HU$HW.5}$HW$H^-/R$H^$Hb.5}$Hb$Ho-/R$Ho$Ht.5}$Ht$Hw-/R$Hw$Hx.5}$Hx$IP-/R$IP$Ki.5}$Ki$Kj-/R$Kj$Kw.5}$Kw$Kx-/R$Kx$LY.5}$LY$Lg-/R$Lg$Np.5}$Np$Nq-/R$Nq$Nu.5}$Nu$Nv-/R$Nv$Nx.5}$Nx% S-/R% S% T.5}% T% U-/R% U% X.5}% X% ^-/R% ^% d.5}% d% e-/R% e% f.5}% f% g-/R% g% h.5}% h% i-/R% i% j.5}% j% n-/R% n% o.5}% o% z-/R% z% |.5}% |%!Q-/R%!Q%!V.5}%!V%![-/R%![%!`.5}%!`%!a-/R%!a%#g.5}%#g%#h-/R%#h%#i-/R%#i&/x.5}&/x&0y-/R&0y&0z.5}&0z&1{-/R&1{&1|.5}&1|&4w-/R&4w&4}.5}&4}&5R-/R&5R&5U.5}&5U&5V-/R&5V&5W-/R&5W&5d.5}&5d&6[-/R&6[&6].5}&6]&6^-/R&6^&6c.5}&6c&6d-/R&6d&6f.5}&6f&7p-/R&7p&7w.5}&7w&7x-/R&7x&8Y.5}&8Y&8q-/R&8q&8z.5}&8z&9R-/R&9R&9S.5}&9S&9Z-/R&9Z&9[.5}&9[&9c-/R&9c&9d.5}&9d&9k-/R&9k&9l.5}&9l&9s-/R&9s&9t.5}&9t&9{-/R&9{&9|.5}&9|&:T-/R&:T&:U.5}&:U&:]-/R&:]&<P.5}&<P&<Q-/R&<Q&FZ.5}&FZ&F[-/R&F[&F]-/R&F]&GX.5}&GX&G^-/R&G^&Gc.5}&Gc&Gd-/R&Gd&Ge-/R&Ge&Gi.5}&Gi&Ic-/R&Ic&Ii.5}&Ii&Il-/R&Il&Im.5}&Im&Kk-/R&Kk&Kl.5}&Kl&Kp-/R&Kp&Ku.5}&Ku&Lp-/R&Lp&Ls.5}&Ls&Nu-/R&Nu' W.5}' W' s-/R' s'!z.5}'!z'#[-/R'#['.b.5}'.b*3f-/R*3f*5S.5}*5S40_-/R40_41d.5}41d4Js-/R4Js4LY.5}4LY4MY-/R4MY4M[.5}4M[5%T-/R5%T5%W.5}5%W5%h-/R5%h5%r.5}5%r5%s-/R5%s5%t-/R5%t5&Y.5}5&Y5'Z-/R5'Z5'k.5}5'k5(U-/R5(U5(^.5}5(^5)v-/R5)v5*y.5}5*y5+S-/R5+S5+U.5}5+U5-a-/R5-a5-c.5}5-c5-g-/R5-g5-h.5}5-h5-l-/R5-l5-x.5}5-x5.T-/R5.T5/t.5}5/t50O-/R50O50P.5}50P50S-/R50S50T.5}50T50X-/R50X50Y.5}50Y50q-/R50q51`.5}51`52f-/R52f52t.5}52t53x-/R53x55Y.5}55Y55`-/R55`55c.5}55c55d-/R55d55r.5}55r56`-/R56`56j.5}56j57R-/R57R57l.5}57l58Z-/R58Z58b.5}58b59c-/R59c5:P.5}5:P5:Q-/R5:Q5;S.5}5;S5;}-/R5;}5<f.5}5<f5<i-/R5<i5<j.5}5<j5<r-/R5<r5=W.5}5=W5=o-/R5=o5=r.5}5=r5=s-/R5=s5=x.5}5=x5>z-/R5>z5>{.5}5>{5>|-/R5>|5?P.5}5?P5?Q-/R5?Q5?R-/R5?R5?T.5}5?T5?Y-/R5?Y5?[.5}5?[5?]-/R5?]5?^.5}5?^5?_-/R5?_5?w.5}5?w5?z-/R5?z5?|.5}5?|5@X-/R5@X5@`.5}5@`5@c-/R5@c5@o.5}5@o5@u-/R5@u5@w.5}5@w5@}-/R5@}5AP.5}5AP5AV-/R5AV5A`.5}5A`5Ag-/R5Ag5Ah.5}5Ah5Ao-/R5Ao5Dv.5}5Dv5Ek-/R5Ek5FY.5}5FY;%S-/R;%S;%`.5};%`;%w-/R;%w;%{.5};%{;'O-/R;'O;'S.5};'S;=`.<b<%l?&r.5}?&r?.p-/R?.p?.r.5}?.r?1Q-/R?1Q?1x.5}?1x?2P-/R?2P?2].5}?2]?2b-/R?2b?2g.5}?2g?2h-/R?2h?2i.5}?2i?2s-/R?2s?2t.5}?2t?3R-/R?3R?3S.5}?3S?3X-/R?3X?3Y.5}?3Y?3Z-/R?3Z?3[.5}?3[?3]-/R?3]?3^-/R?3^?3_.5}?3_?3`-/R?3`?3a-/R?3a?3b.5}?3b?5r-/R?5r?6e.5}?6e?>`-/R?>`?>r.5}?>r?@U-/R?@U?@W.5}?@W?A`-/R?A`?BY.5}?BY?Bf-/R?Bf?EO.5}?EO?ET-/R?ET?EU.5}?EU?HR-/R?HR?Hw.5}?Hw?Ic-/R?Ic?Ii.5}?Ii?JT-/R?JT?J`.5}?J`?L]-/R?L]?L`.5}?L`?Lf-/R?Lf?Lh.5}?Lh?Ln-/R?Ln?Lp.5}?Lp?Lv-/R?Lv?Lx.5}?Lx?L{-/R?L{O.5}!a.6YZ!OW|SzQS!ROY.5}YZ!)tZr.5}rs.6{sw.5}wx.9vx#S.5}#S#T.;f#T;'S.5};'S;=`.<b<%lO.5}!].7UX!OWzQS!ROY.6{YZ!*jZw.6{wx.7qx#S.6{#S#T.8|#T;'S.6{;'S;=`.9p<%lO.6{!Z.7xV!OWS!ROY.7qYZ!+WZ#S.7q#S#T.8_#T;'S.7q;'S;=`.8v<%lO.7q!R.8dSS!ROY.8_Z;'S.8_;'S;=`.8p<%lO.8_!R.8sP;=`<%l.8_!Z.8yP;=`<%l.7q!T.9TVzQS!ROY.8|YZ!+oZw.8|wx.8_x;'S.8|;'S;=`.9j<%lO.8|!T.9mP;=`<%l.8|!].9sP;=`<%l.6{!_.:PX!OW|SS!ROY.9vYZ!,^Zr.9vrs.7qs#S.9v#S#T.:l#T;'S.9v;'S;=`.;`<%lO.9v!V.:sV|SS!ROY.:lYZ!,zZr.:lrs.8_s;'S.:l;'S;=`.;Y<%lO.:l!V.;]P;=`<%l.:l!_.;cP;=`<%l.9v!X.;oX|SzQS!ROY.;fYZ!-iZr.;frs.8|sw.;fwx.:lx;'S.;f;'S;=`.<[<%lO.;f!X.<_P;=`<%l.;f!a.<eP;=`<%l.5}!].<s2i!OWzQS!RmPOY.6{YZ!*jZq.6{qr.<hrs.<hst.<htu.<huv.<hvw.<hwx/Cbxz.6{z{.<h{|.<h|!O.6{!O!P.<h!P!Q.<h!Q![.<h![!a.6{!a!b.<h!b!c.6{!c!}.<h!}#O.6{#O#P.<h#P#R.6{#R#S.<h#S#T2!{#T#o.<h#o$p.6{$p$q.<h$q${.6{${$|.<h$|%Q.6{%Q%R.<h%R%W.6{%W%o.<h%o%p.6{%p&a.<h&a&b.6{&b0`.<h0`0d.6{0d0p.<h0p1O.6{1O1T.<h1T1[.6{1[1].<h1]1^.6{1^1_.<h1_4U.6{4U4Z.<h4Z4[.6{4[4].<h4]4^.<h4^4`.6{4`4d.<h4d4l.6{4l4m.<h4m4n.6{4n4q.<h4q4r.6{4r4s.<h4s4t.6{4t5Y.<h5Y5Z.6{5Z7Q.<h7Q7R.6{7R:S.<h:S:[.6{:[=p.<h=p=y.6{=y>q.<h>q>s.6{>s>t.<h>t>{.6{>{?t.<h?tA`.6{A`A{.<hA{BQ.6{BQBT.<hBTCS.6{CSDP.<hDPDt.6{DtDu.<hDuDv.<hDvDw.6{DwGO.<hGOGP.6{GPGQ.<hGQGa.6{GaGb.<hGbGc.<hGcGj.6{GjGk.<hGkGl.<hGlGv.6{GvGy.<hGyG{.6{G{G|.<hG|H^.6{H^H_.<hH_H`.6{H`IO.<hIOIm.6{ImKj.<hKjKu.6{KuKv.<hKvL`.6{L`MR.<hMRM[.6{M[M].<hM]M^.<hM^Mb.6{MbMc.<hMcMh.6{MhNO.<hNONS.6{NSNT.<hNTN^.6{N^N_.<hN_Nb.6{NbNc.<hNcNz.6{Nz! e.<h! e!#O.6{!#O!#P.<h!#P!#Q.6{!#Q!#].<h!#]!%W.6{!%W!&`.<h!&`!&c.6{!&c!&d.<h!&d!&v.6{!&v!&w.<h!&w!'O.6{!'O!'Y.<h!'Y!'i.6{!'i!'p.<h!'p!'q.6{!'q!'x.<h!'x!'}.6{!'}!(V.<h!(V!(X.6{!(X!(Y.<h!(Y!(Z.<h!(Z!(].6{!(]!(s.<h!(s!(t.6{!(t!({.<h!({!(|.6{!(|!(}.<h!(}!)Q.6{!)Q!)U.<h!)U!)X.6{!)X!)Y.<h!)Y!)j.6{!)j!)k.<h!)k!)x.6{!)x!)y.<h!)y!)z.<h!)z!){.6{!){!*O.<h!*O!*^.6{!*^!*_.<h!*_!*`.<h!*`!*s.6{!*s!*y.<h!*y!*}.6{!*}!+O.<h!+O!+P.<h!+P!+R.6{!+R!+i.<h!+i!+j.6{!+j!+q.<h!+q!+r.6{!+r!+s.<h!+s!+t.<h!+t!+u.6{!+u!+v.<h!+v!+w.<h!+w!+x.6{!+x!+y.<h!+y!+z.<h!+z!,k.6{!,k!,o.<h!,o!,p.6{!,p!,q.<h!,q!-U.6{!-U!-X.<h!-X!-i.6{!-i!-r.<h!-r!-s.6{!-s!-v.<h!-v!-w.6{!-w!._.<h!._!.`.6{!.`!.g.<h!.g!.h.6{!.h!.i.<h!.i!.j.<h!.j!.k.6{!.k!.p.<h!.p!.s.6{!.s!.t.<h!.t!/W.6{!/W!/X.<h!/X!/h.6{!/h!/i.<h!/i!/j.<h!/j!0_.6{!0_!0g.<h!0g!0i.6{!0i!0j.<h!0j!0k.<h!0k!0m.6{!0m!1T.<h!1T!1U.6{!1U!1].<h!1]!1^.6{!1^!1_.<h!1_!1`.<h!1`!1a.6{!1a!1f.<h!1f!1i.6{!1i!1j.<h!1j!2Y.6{!2Y!2Z.<h!2Z!2[.<h!2[!2].6{!2]!2`.<h!2`!2o.6{!2o!2p.<h!2p!3R.6{!3R!3S.<h!3S!3T.6{!3T!3Z.<h!3Z!3^.6{!3^!3a.<h!3a!3b.6{!3b!3f.<h!3f!3i.6{!3i!3j.<h!3j!3k.<h!3k!3l.6{!3l!3m.<h!3m!3n.6{!3n!3o.<h!3o!3p.<h!3p!3s.6{!3s!3t.<h!3t!3u.<h!3u!3x.6{!3x!3{.<h!3{!4O.6{!4O!4[.<h!4[!4r.6{!4r!4s.<h!4s!5y.6{!5y!6R.<h!6R!6S.6{!6S!6V.<h!6V!6W.6{!6W!6o.<h!6o!6p.6{!6p!6z.<h!6z!6{.6{!6{!7Q.<h!7Q!7T.6{!7T!7U.<h!7U!7p.6{!7p!7q.<h!7q!7r.<h!7r!7x.6{!7x!7y.<h!7y!7z.<h!7z!8o.6{!8o!8w.<h!8w!8x.6{!8x!8{.<h!8{!8|.6{!8|!9e.<h!9e!9f.6{!9f!9p.<h!9p!9q.6{!9q!9v.<h!9v!9y.6{!9y!9z.<h!9z!:l.6{!:l!:m.<h!:m!:n.6{!:n!:o.<h!:o!:p.<h!:p!;P.6{!;P!;Q.<h!;Q!;R.<h!;R!;e.6{!;e!;m.<h!;m!;n.6{!;n!;q.<h!;q!;r.6{!;r!<m.<h!<m!<o.6{!<o!<p.<h!<p!=Q.6{!=Q!=R.<h!=R!=d.6{!=d!=e.<h!=e!=f.<h!=f!>O.6{!>O!>U.<h!>U!>Z.6{!>Z!>m.<h!>m!>p.6{!>p!?Y.<h!?Y!?Z.6{!?Z!?d.<h!?d!?e.6{!?e!?f.<h!?f!?h.6{!?h!?o.<h!?o!@{.6{!@{!A}.<h!A}!BO.6{!BO!BP.<h!BP!BQ.<h!BQ!B^.6{!B^!Be.<h!Be!Cq.6{!Cq!Cr.<h!Cr!Cs.<h!Cs!Ct.6{!Ct!Cu.<h!Cu!Cw.6{!Cw!Cx.<h!Cx!Cy.<h!Cy!Cz.6{!Cz!C{.<h!C{!C}.6{!C}!DO.<h!DO!DU.6{!DU!DY.<h!DY!DZ.6{!DZ!Db.<h!Db!Dc.6{!Dc!Df.<h!Df!Dg.6{!Dg!Dh.<h!Dh!Di.6{!Di!Dj.<h!Dj!Dl.6{!Dl!Dm.<h!Dm!Dn.<h!Dn!Do.6{!Do!Ds.<h!Ds!Dt.6{!Dt!Du.<h!Du!Dv.<h!Dv!EP.6{!EP!EQ.<h!EQ!ES.6{!ES!EX.<h!EX!EY.6{!EY!EZ.<h!EZ!Ep.6{!Ep!Et.<h!Et!Ff.6{!Ff!Fg.<h!Fg!Gx.6{!Gx!HQ.<h!HQ!HR.6{!HR!Hw.<h!Hw!Id.6{!Id!Ii.<h!Ii!LQ.6{!LQ!L}.<h!L}!Mc.6{!Mc!Md.<h!Md!Mt.6{!Mt!Mz.<h!Mz!NO.6{!NO!NS.<h!NS!NV.6{!NV!NW.<h!NW!NZ.6{!NZ!N[.<h!N[!N].<h!N]!Nd.6{!Nd!Ng.<h!Ng!Nk.6{!Nk!Nx.<h!Nx# U.6{# U# V.<h# V# h.6{# h#!`.<h#!`#!a.6{#!a#!b.<h#!b#!g.6{#!g#!h.<h#!h#!j.6{#!j##g.<h##g##h.6{##h#*s.<h#*s#*t.6{#*t#*x.<h#*x#*z.6{#*z#+R.<h#+R#+S.6{#+S#+T.<h#+T#+U.6{#+U#+Y.<h#+Y#+[.6{#+[#,V.<h#,V#,W.6{#,W#,[.<h#,[#,^.6{#,^#-P.<h#-P#-Q.6{#-Q#-U.<h#-U#-W.6{#-W#-_.<h#-_#-`.6{#-`#-a.<h#-a#-b.6{#-b#-f.<h#-f#-h.6{#-h#-w.<h#-w#-x.6{#-x#/T.<h#/T#/U.6{#/U#/Y.<h#/Y#/[.6{#/[#0q.<h#0q#1h.6{#1h#1x.<h#1x#2Y.6{#2Y#4R.<h#4R#4_.6{#4_#Au.<h#Au#Aw.6{#Aw#BY.<h#BY#BZ.6{#BZ#Bu.<h#Bu#Bz.6{#Bz#Di.<h#Di#EO.6{#EO#E].<h#E]#E^.6{#E^#Eb.<h#Eb#Ep.6{#Ep#FS.<h#FS#Fb.6{#Fb#Ft.<h#Ft#GS.6{#GS#Ga.<h#Ga#Gb.6{#Gb#Ge.<h#Ge#Gt.6{#Gt#Hz.<h#Hz#Io.6{#Io#Ip.<h#Ip#It.6{#It#Iu.<h#Iu#K[.6{#K[#MW.<h#MW#M`.6{#M`#NZ.<h#NZ#N[.6{#N[#N].<h#N]#Nb.6{#Nb$ z.<h$ z$!U.6{$!U$!s.<h$!s$#x.6{$#x$$h.<h$$h$$j.6{$$j$$o.<h$$o$$z.6{$$z$%x.<h$%x$&_.6{$&_$&f.<h$&f$'p.6{$'p$(X.<h$(X$(b.6{$(b$)i.<h$)i$+_.6{$+_$+`.<h$+`$-a.6{$-a$.b.<h$.b$.s.6{$.s$.z.<h$.z$0T.6{$0T$0s.<h$0s$1Q.6{$1Q$1R.<h$1R$1S.<h$1S$1^.6{$1^$2[.<h$2[$2v.6{$2v$3l.<h$3l$4g.6{$4g$4j.<h$4j$4t.6{$4t$5j.<h$5j$7y.6{$7y$7}.<h$7}$8O.6{$8O$8S.<h$8S$8V.6{$8V$8W.<h$8W$8X.<h$8X$8b.6{$8b$<j.<h$<j$=|.6{$=|$DO.<h$DO$DQ.6{$DQ$DW.<h$DW$DY.6{$DY$EQ.<h$EQ$ES.6{$ES$EY.<h$EY$E[.6{$E[$Ed.<h$Ed$Ee.6{$Ee$Ef.<h$Ef$Eg.6{$Eg$Eh.<h$Eh$Ei.6{$Ei$Ej.<h$Ej$Ek.6{$Ek$F[.<h$F[$F^.6{$F^$Ge.<h$Ge$Gf.6{$Gf$Gm.<h$Gm$Gn.6{$Gn$Go.<h$Go$Gr.6{$Gr$Gu.<h$Gu$Gv.6{$Gv$G}.<h$G}$HQ.6{$HQ$HU.<h$HU$HW.6{$HW$H^.<h$H^$Hb.6{$Hb$Ho.<h$Ho$Ht.6{$Ht$Hw.<h$Hw$Hx.6{$Hx$IP.<h$IP$Ki.6{$Ki$Kj.<h$Kj$Kw.6{$Kw$Kx.<h$Kx$LY.6{$LY$Lg.<h$Lg$Np.6{$Np$Nq.<h$Nq$Nu.6{$Nu$Nv.<h$Nv$Nx.6{$Nx% S.<h% S% T.6{% T% U.<h% U% X.6{% X% ^.<h% ^% d.6{% d% e.<h% e% f.6{% f% g.<h% g% h.6{% h% i.<h% i% j.6{% j% n.<h% n% o.6{% o% z.<h% z% |.6{% |%!Q.<h%!Q%!V.6{%!V%![.<h%![%!`.6{%!`%!a.<h%!a%#g.6{%#g%#h.<h%#h%#i.<h%#i&/x.6{&/x&0y.<h&0y&0z.6{&0z&1{.<h&1{&1|.6{&1|&4w.<h&4w&4}.6{&4}&5R.<h&5R&5U.6{&5U&5V.<h&5V&5W.<h&5W&5d.6{&5d&6[.<h&6[&6].6{&6]&6^.<h&6^&6c.6{&6c&6d.<h&6d&6f.6{&6f&7p.<h&7p&7w.6{&7w&7x.<h&7x&8Y.6{&8Y&8q.<h&8q&8z.6{&8z&9R.<h&9R&9S.6{&9S&9Z.<h&9Z&9[.6{&9[&9c.<h&9c&9d.6{&9d&9k.<h&9k&9l.6{&9l&9s.<h&9s&9t.6{&9t&9{.<h&9{&9|.6{&9|&:T.<h&:T&:U.6{&:U&:].<h&:]&<P.6{&<P&<Q.<h&<Q&FZ.6{&FZ&F[.<h&F[&F].<h&F]&GX.6{&GX&G^.<h&G^&Gc.6{&Gc&Gd.<h&Gd&Ge.<h&Ge&Gi.6{&Gi&Ic.<h&Ic&Ii.6{&Ii&Il.<h&Il&Im.6{&Im&Kk.<h&Kk&Kl.6{&Kl&Kp.<h&Kp&Ku.6{&Ku&Lp.<h&Lp&Ls.6{&Ls&Nu.<h&Nu' W.6{' W' s.<h' s'!z.6{'!z'#[.<h'#['.b.6{'.b*3f.<h*3f*5S.6{*5S40_.<h40_41d.6{41d4Js.<h4Js4LY.6{4LY4MY.<h4MY4M[.6{4M[5%T.<h5%T5%W.6{5%W5%h.<h5%h5%r.6{5%r5%s.<h5%s5%t.<h5%t5&Y.6{5&Y5'Z.<h5'Z5'k.6{5'k5(U.<h5(U5(^.6{5(^5)v.<h5)v5*y.6{5*y5+S.<h5+S5+U.6{5+U5-a.<h5-a5-c.6{5-c5-g.<h5-g5-h.6{5-h5-l.<h5-l5-x.6{5-x5.T.<h5.T5/t.6{5/t50O.<h50O50P.6{50P50S.<h50S50T.6{50T50X.<h50X50Y.6{50Y50q.<h50q51`.6{51`52f.<h52f52t.6{52t53x.<h53x55Y.6{55Y55`.<h55`55c.6{55c55d.<h55d55r.6{55r56`.<h56`56j.6{56j57R.<h57R57l.6{57l58Z.<h58Z58b.6{58b59c.<h59c5:P.6{5:P5:Q.<h5:Q5;S.6{5;S5;}.<h5;}5<f.6{5<f5<i.<h5<i5<j.6{5<j5<r.<h5<r5=W.6{5=W5=o.<h5=o5=r.6{5=r5=s.<h5=s5=x.6{5=x5>z.<h5>z5>{.6{5>{5>|.<h5>|5?P.6{5?P5?Q.<h5?Q5?R.<h5?R5?T.6{5?T5?Y.<h5?Y5?[.6{5?[5?].<h5?]5?^.6{5?^5?_.<h5?_5?w.6{5?w5?z.<h5?z5?|.6{5?|5@X.<h5@X5@`.6{5@`5@c.<h5@c5@o.6{5@o5@u.<h5@u5@w.6{5@w5@}.<h5@}5AP.6{5AP5AV.<h5AV5A`.6{5A`5Ag.<h5Ag5Ah.6{5Ah5Ao.<h5Ao5Dv.6{5Dv5Ek.<h5Ek5FY.6{5FY;%S.<h;%S;%`.6{;%`;%w.<h;%w;%{.6{;%{;'O.<h;'O;'S.6{;'S;=`.9p<%l?&r.6{?&r?.p.<h?.p?.r.6{?.r?1Q.<h?1Q?1x.6{?1x?2P.<h?2P?2].6{?2]?2b.<h?2b?2g.6{?2g?2h.<h?2h?2i.6{?2i?2s.<h?2s?2t.6{?2t?3R.<h?3R?3S.6{?3S?3X.<h?3X?3Y.6{?3Y?3Z.<h?3Z?3[.6{?3[?3].<h?3]?3^.<h?3^?3_.6{?3_?3`.<h?3`?3a.<h?3a?3b.6{?3b?5r.<h?5r?6e.6{?6e?>`.<h?>`?>r.6{?>r?@U.<h?@U?@W.6{?@W?A`.<h?A`?BY.6{?BY?Bf.<h?Bf?EO.6{?EO?ET.<h?ET?EU.6{?EU?HR.<h?HR?Hw.6{?Hw?Ic.<h?Ic?Ii.6{?Ii?JT.<h?JT?J`.6{?J`?L].<h?L]?L`.6{?L`?Lf.<h?Lf?Lh.6{?Lh?Ln.<h?Ln?Lp.6{?Lp?Lv.<h?Lv?Lx.6{?Lx?L{.<h?L{O.6{!Z/Ck2i!OWS!RmPOY.7qYZ!+WZq.7qqr/Cbrs/Cbst/Cbtu/Cbuv/Cbvw/Cbwx/Cbxz.7qz{/Cb{|/Cb|!O.7q!O!P/Cb!P!Q/Cb!Q![/Cb![!a.7q!a!b/Cb!b!c.7q!c!}/Cb!}#O.7q#O#P/Cb#P#R.7q#R#S/Cb#S#T0JY#T#o/Cb#o$p.7q$p$q/Cb$q${.7q${$|/Cb$|%Q.7q%Q%R/Cb%R%W.7q%W%o/Cb%o%p.7q%p&a/Cb&a&b.7q&b0`/Cb0`0d.7q0d0p/Cb0p1O.7q1O1T/Cb1T1[.7q1[1]/Cb1]1^.7q1^1_/Cb1_4U.7q4U4Z/Cb4Z4[.7q4[4]/Cb4]4^/Cb4^4`.7q4`4d/Cb4d4l.7q4l4m/Cb4m4n.7q4n4q/Cb4q4r.7q4r4s/Cb4s4t.7q4t5Y/Cb5Y5Z.7q5Z7Q/Cb7Q7R.7q7R:S/Cb:S:[.7q:[=p/Cb=p=y.7q=y>q/Cb>q>s.7q>s>t/Cb>t>{.7q>{?t/Cb?tA`.7qA`A{/CbA{BQ.7qBQBT/CbBTCS.7qCSDP/CbDPDt.7qDtDu/CbDuDv/CbDvDw.7qDwGO/CbGOGP.7qGPGQ/CbGQGa.7qGaGb/CbGbGc/CbGcGj.7qGjGk/CbGkGl/CbGlGv.7qGvGy/CbGyG{.7qG{G|/CbG|H^.7qH^H_/CbH_H`.7qH`IO/CbIOIm.7qImKj/CbKjKu.7qKuKv/CbKvL`.7qL`MR/CbMRM[.7qM[M]/CbM]M^/CbM^Mb.7qMbMc/CbMcMh.7qMhNO/CbNONS.7qNSNT/CbNTN^.7qN^N_/CbN_Nb.7qNbNc/CbNcNz.7qNz! e/Cb! e!#O.7q!#O!#P/Cb!#P!#Q.7q!#Q!#]/Cb!#]!%W.7q!%W!&`/Cb!&`!&c.7q!&c!&d/Cb!&d!&v.7q!&v!&w/Cb!&w!'O.7q!'O!'Y/Cb!'Y!'i.7q!'i!'p/Cb!'p!'q.7q!'q!'x/Cb!'x!'}.7q!'}!(V/Cb!(V!(X.7q!(X!(Y/Cb!(Y!(Z/Cb!(Z!(].7q!(]!(s/Cb!(s!(t.7q!(t!({/Cb!({!(|.7q!(|!(}/Cb!(}!)Q.7q!)Q!)U/Cb!)U!)X.7q!)X!)Y/Cb!)Y!)j.7q!)j!)k/Cb!)k!)x.7q!)x!)y/Cb!)y!)z/Cb!)z!){.7q!){!*O/Cb!*O!*^.7q!*^!*_/Cb!*_!*`/Cb!*`!*s.7q!*s!*y/Cb!*y!*}.7q!*}!+O/Cb!+O!+P/Cb!+P!+R.7q!+R!+i/Cb!+i!+j.7q!+j!+q/Cb!+q!+r.7q!+r!+s/Cb!+s!+t/Cb!+t!+u.7q!+u!+v/Cb!+v!+w/Cb!+w!+x.7q!+x!+y/Cb!+y!+z/Cb!+z!,k.7q!,k!,o/Cb!,o!,p.7q!,p!,q/Cb!,q!-U.7q!-U!-X/Cb!-X!-i.7q!-i!-r/Cb!-r!-s.7q!-s!-v/Cb!-v!-w.7q!-w!._/Cb!._!.`.7q!.`!.g/Cb!.g!.h.7q!.h!.i/Cb!.i!.j/Cb!.j!.k.7q!.k!.p/Cb!.p!.s.7q!.s!.t/Cb!.t!/W.7q!/W!/X/Cb!/X!/h.7q!/h!/i/Cb!/i!/j/Cb!/j!0_.7q!0_!0g/Cb!0g!0i.7q!0i!0j/Cb!0j!0k/Cb!0k!0m.7q!0m!1T/Cb!1T!1U.7q!1U!1]/Cb!1]!1^.7q!1^!1_/Cb!1_!1`/Cb!1`!1a.7q!1a!1f/Cb!1f!1i.7q!1i!1j/Cb!1j!2Y.7q!2Y!2Z/Cb!2Z!2[/Cb!2[!2].7q!2]!2`/Cb!2`!2o.7q!2o!2p/Cb!2p!3R.7q!3R!3S/Cb!3S!3T.7q!3T!3Z/Cb!3Z!3^.7q!3^!3a/Cb!3a!3b.7q!3b!3f/Cb!3f!3i.7q!3i!3j/Cb!3j!3k/Cb!3k!3l.7q!3l!3m/Cb!3m!3n.7q!3n!3o/Cb!3o!3p/Cb!3p!3s.7q!3s!3t/Cb!3t!3u/Cb!3u!3x.7q!3x!3{/Cb!3{!4O.7q!4O!4[/Cb!4[!4r.7q!4r!4s/Cb!4s!5y.7q!5y!6R/Cb!6R!6S.7q!6S!6V/Cb!6V!6W.7q!6W!6o/Cb!6o!6p.7q!6p!6z/Cb!6z!6{.7q!6{!7Q/Cb!7Q!7T.7q!7T!7U/Cb!7U!7p.7q!7p!7q/Cb!7q!7r/Cb!7r!7x.7q!7x!7y/Cb!7y!7z/Cb!7z!8o.7q!8o!8w/Cb!8w!8x.7q!8x!8{/Cb!8{!8|.7q!8|!9e/Cb!9e!9f.7q!9f!9p/Cb!9p!9q.7q!9q!9v/Cb!9v!9y.7q!9y!9z/Cb!9z!:l.7q!:l!:m/Cb!:m!:n.7q!:n!:o/Cb!:o!:p/Cb!:p!;P.7q!;P!;Q/Cb!;Q!;R/Cb!;R!;e.7q!;e!;m/Cb!;m!;n.7q!;n!;q/Cb!;q!;r.7q!;r!<m/Cb!<m!<o.7q!<o!<p/Cb!<p!=Q.7q!=Q!=R/Cb!=R!=d.7q!=d!=e/Cb!=e!=f/Cb!=f!>O.7q!>O!>U/Cb!>U!>Z.7q!>Z!>m/Cb!>m!>p.7q!>p!?Y/Cb!?Y!?Z.7q!?Z!?d/Cb!?d!?e.7q!?e!?f/Cb!?f!?h.7q!?h!?o/Cb!?o!@{.7q!@{!A}/Cb!A}!BO.7q!BO!BP/Cb!BP!BQ/Cb!BQ!B^.7q!B^!Be/Cb!Be!Cq.7q!Cq!Cr/Cb!Cr!Cs/Cb!Cs!Ct.7q!Ct!Cu/Cb!Cu!Cw.7q!Cw!Cx/Cb!Cx!Cy/Cb!Cy!Cz.7q!Cz!C{/Cb!C{!C}.7q!C}!DO/Cb!DO!DU.7q!DU!DY/Cb!DY!DZ.7q!DZ!Db/Cb!Db!Dc.7q!Dc!Df/Cb!Df!Dg.7q!Dg!Dh/Cb!Dh!Di.7q!Di!Dj/Cb!Dj!Dl.7q!Dl!Dm/Cb!Dm!Dn/Cb!Dn!Do.7q!Do!Ds/Cb!Ds!Dt.7q!Dt!Du/Cb!Du!Dv/Cb!Dv!EP.7q!EP!EQ/Cb!EQ!ES.7q!ES!EX/Cb!EX!EY.7q!EY!EZ/Cb!EZ!Ep.7q!Ep!Et/Cb!Et!Ff.7q!Ff!Fg/Cb!Fg!Gx.7q!Gx!HQ/Cb!HQ!HR.7q!HR!Hw/Cb!Hw!Id.7q!Id!Ii/Cb!Ii!LQ.7q!LQ!L}/Cb!L}!Mc.7q!Mc!Md/Cb!Md!Mt.7q!Mt!Mz/Cb!Mz!NO.7q!NO!NS/Cb!NS!NV.7q!NV!NW/Cb!NW!NZ.7q!NZ!N[/Cb!N[!N]/Cb!N]!Nd.7q!Nd!Ng/Cb!Ng!Nk.7q!Nk!Nx/Cb!Nx# U.7q# U# V/Cb# V# h.7q# h#!`/Cb#!`#!a.7q#!a#!b/Cb#!b#!g.7q#!g#!h/Cb#!h#!j.7q#!j##g/Cb##g##h.7q##h#*s/Cb#*s#*t.7q#*t#*x/Cb#*x#*z.7q#*z#+R/Cb#+R#+S.7q#+S#+T/Cb#+T#+U.7q#+U#+Y/Cb#+Y#+[.7q#+[#,V/Cb#,V#,W.7q#,W#,[/Cb#,[#,^.7q#,^#-P/Cb#-P#-Q.7q#-Q#-U/Cb#-U#-W.7q#-W#-_/Cb#-_#-`.7q#-`#-a/Cb#-a#-b.7q#-b#-f/Cb#-f#-h.7q#-h#-w/Cb#-w#-x.7q#-x#/T/Cb#/T#/U.7q#/U#/Y/Cb#/Y#/[.7q#/[#0q/Cb#0q#1h.7q#1h#1x/Cb#1x#2Y.7q#2Y#4R/Cb#4R#4_.7q#4_#Au/Cb#Au#Aw.7q#Aw#BY/Cb#BY#BZ.7q#BZ#Bu/Cb#Bu#Bz.7q#Bz#Di/Cb#Di#EO.7q#EO#E]/Cb#E]#E^.7q#E^#Eb/Cb#Eb#Ep.7q#Ep#FS/Cb#FS#Fb.7q#Fb#Ft/Cb#Ft#GS.7q#GS#Ga/Cb#Ga#Gb.7q#Gb#Ge/Cb#Ge#Gt.7q#Gt#Hz/Cb#Hz#Io.7q#Io#Ip/Cb#Ip#It.7q#It#Iu/Cb#Iu#K[.7q#K[#MW/Cb#MW#M`.7q#M`#NZ/Cb#NZ#N[.7q#N[#N]/Cb#N]#Nb.7q#Nb$ z/Cb$ z$!U.7q$!U$!s/Cb$!s$#x.7q$#x$$h/Cb$$h$$j.7q$$j$$o/Cb$$o$$z.7q$$z$%x/Cb$%x$&_.7q$&_$&f/Cb$&f$'p.7q$'p$(X/Cb$(X$(b.7q$(b$)i/Cb$)i$+_.7q$+_$+`/Cb$+`$-a.7q$-a$.b/Cb$.b$.s.7q$.s$.z/Cb$.z$0T.7q$0T$0s/Cb$0s$1Q.7q$1Q$1R/Cb$1R$1S/Cb$1S$1^.7q$1^$2[/Cb$2[$2v.7q$2v$3l/Cb$3l$4g.7q$4g$4j/Cb$4j$4t.7q$4t$5j/Cb$5j$7y.7q$7y$7}/Cb$7}$8O.7q$8O$8S/Cb$8S$8V.7q$8V$8W/Cb$8W$8X/Cb$8X$8b.7q$8b$<j/Cb$<j$=|.7q$=|$DO/Cb$DO$DQ.7q$DQ$DW/Cb$DW$DY.7q$DY$EQ/Cb$EQ$ES.7q$ES$EY/Cb$EY$E[.7q$E[$Ed/Cb$Ed$Ee.7q$Ee$Ef/Cb$Ef$Eg.7q$Eg$Eh/Cb$Eh$Ei.7q$Ei$Ej/Cb$Ej$Ek.7q$Ek$F[/Cb$F[$F^.7q$F^$Ge/Cb$Ge$Gf.7q$Gf$Gm/Cb$Gm$Gn.7q$Gn$Go/Cb$Go$Gr.7q$Gr$Gu/Cb$Gu$Gv.7q$Gv$G}/Cb$G}$HQ.7q$HQ$HU/Cb$HU$HW.7q$HW$H^/Cb$H^$Hb.7q$Hb$Ho/Cb$Ho$Ht.7q$Ht$Hw/Cb$Hw$Hx.7q$Hx$IP/Cb$IP$Ki.7q$Ki$Kj/Cb$Kj$Kw.7q$Kw$Kx/Cb$Kx$LY.7q$LY$Lg/Cb$Lg$Np.7q$Np$Nq/Cb$Nq$Nu.7q$Nu$Nv/Cb$Nv$Nx.7q$Nx% S/Cb% S% T.7q% T% U/Cb% U% X.7q% X% ^/Cb% ^% d.7q% d% e/Cb% e% f.7q% f% g/Cb% g% h.7q% h% i/Cb% i% j.7q% j% n/Cb% n% o.7q% o% z/Cb% z% |.7q% |%!Q/Cb%!Q%!V.7q%!V%![/Cb%![%!`.7q%!`%!a/Cb%!a%#g.7q%#g%#h/Cb%#h%#i/Cb%#i&/x.7q&/x&0y/Cb&0y&0z.7q&0z&1{/Cb&1{&1|.7q&1|&4w/Cb&4w&4}.7q&4}&5R/Cb&5R&5U.7q&5U&5V/Cb&5V&5W/Cb&5W&5d.7q&5d&6[/Cb&6[&6].7q&6]&6^/Cb&6^&6c.7q&6c&6d/Cb&6d&6f.7q&6f&7p/Cb&7p&7w.7q&7w&7x/Cb&7x&8Y.7q&8Y&8q/Cb&8q&8z.7q&8z&9R/Cb&9R&9S.7q&9S&9Z/Cb&9Z&9[.7q&9[&9c/Cb&9c&9d.7q&9d&9k/Cb&9k&9l.7q&9l&9s/Cb&9s&9t.7q&9t&9{/Cb&9{&9|.7q&9|&:T/Cb&:T&:U.7q&:U&:]/Cb&:]&<P.7q&<P&<Q/Cb&<Q&FZ.7q&FZ&F[/Cb&F[&F]/Cb&F]&GX.7q&GX&G^/Cb&G^&Gc.7q&Gc&Gd/Cb&Gd&Ge/Cb&Ge&Gi.7q&Gi&Ic/Cb&Ic&Ii.7q&Ii&Il/Cb&Il&Im.7q&Im&Kk/Cb&Kk&Kl.7q&Kl&Kp/Cb&Kp&Ku.7q&Ku&Lp/Cb&Lp&Ls.7q&Ls&Nu/Cb&Nu' W.7q' W' s/Cb' s'!z.7q'!z'#[/Cb'#['.b.7q'.b*3f/Cb*3f*5S.7q*5S40_/Cb40_41d.7q41d4Js/Cb4Js4LY.7q4LY4MY/Cb4MY4M[.7q4M[5%T/Cb5%T5%W.7q5%W5%h/Cb5%h5%r.7q5%r5%s/Cb5%s5%t/Cb5%t5&Y.7q5&Y5'Z/Cb5'Z5'k.7q5'k5(U/Cb5(U5(^.7q5(^5)v/Cb5)v5*y.7q5*y5+S/Cb5+S5+U.7q5+U5-a/Cb5-a5-c.7q5-c5-g/Cb5-g5-h.7q5-h5-l/Cb5-l5-x.7q5-x5.T/Cb5.T5/t.7q5/t50O/Cb50O50P.7q50P50S/Cb50S50T.7q50T50X/Cb50X50Y.7q50Y50q/Cb50q51`.7q51`52f/Cb52f52t.7q52t53x/Cb53x55Y.7q55Y55`/Cb55`55c.7q55c55d/Cb55d55r.7q55r56`/Cb56`56j.7q56j57R/Cb57R57l.7q57l58Z/Cb58Z58b.7q58b59c/Cb59c5:P.7q5:P5:Q/Cb5:Q5;S.7q5;S5;}/Cb5;}5<f.7q5<f5<i/Cb5<i5<j.7q5<j5<r/Cb5<r5=W.7q5=W5=o/Cb5=o5=r.7q5=r5=s/Cb5=s5=x.7q5=x5>z/Cb5>z5>{.7q5>{5>|/Cb5>|5?P.7q5?P5?Q/Cb5?Q5?R/Cb5?R5?T.7q5?T5?Y/Cb5?Y5?[.7q5?[5?]/Cb5?]5?^.7q5?^5?_/Cb5?_5?w.7q5?w5?z/Cb5?z5?|.7q5?|5@X/Cb5@X5@`.7q5@`5@c/Cb5@c5@o.7q5@o5@u/Cb5@u5@w.7q5@w5@}/Cb5@}5AP.7q5AP5AV/Cb5AV5A`.7q5A`5Ag/Cb5Ag5Ah.7q5Ah5Ao/Cb5Ao5Dv.7q5Dv5Ek/Cb5Ek5FY.7q5FY;%S/Cb;%S;%`.7q;%`;%w/Cb;%w;%{.7q;%{;'O/Cb;'O;'S.7q;'S;=`.8v<%l?&r.7q?&r?.p/Cb?.p?.r.7q?.r?1Q/Cb?1Q?1x.7q?1x?2P/Cb?2P?2].7q?2]?2b/Cb?2b?2g.7q?2g?2h/Cb?2h?2i.7q?2i?2s/Cb?2s?2t.7q?2t?3R/Cb?3R?3S.7q?3S?3X/Cb?3X?3Y.7q?3Y?3Z/Cb?3Z?3[.7q?3[?3]/Cb?3]?3^/Cb?3^?3_.7q?3_?3`/Cb?3`?3a/Cb?3a?3b.7q?3b?5r/Cb?5r?6e.7q?6e?>`/Cb?>`?>r.7q?>r?@U/Cb?@U?@W.7q?@W?A`/Cb?A`?BY.7q?BY?Bf/Cb?Bf?EO.7q?EO?ET/Cb?ET?EU.7q?EU?HR/Cb?HR?Hw.7q?Hw?Ic/Cb?Ic?Ii.7q?Ii?JT/Cb?JT?J`.7q?J`?L]/Cb?L]?L`.7q?L`?Lf/Cb?Lf?Lh.7q?Lh?Ln/Cb?Ln?Lp.7q?Lp?Lv/Cb?Lv?Lx.7q?Lx?L{/Cb?L{O.7q!R0Ja2hS!RmPOY.8_Zq.8_qr0JYrs0JYst0JYtu0JYuv0JYvw0JYwx0JYxz.8_z{0JY{|0JY|!O.8_!O!P0JY!P!Q0JY!Q![0JY![!a.8_!a!b0JY!b!c.8_!c!}0JY!}#O.8_#O#P0JY#P#R.8_#R#S0JY#S#T0JY#T#o0JY#o$p.8_$p$q0JY$q${.8_${$|0JY$|%Q.8_%Q%R0JY%R%W.8_%W%o0JY%o%p.8_%p&a0JY&a&b.8_&b0`0JY0`0d.8_0d0p0JY0p1O.8_1O1T0JY1T1[.8_1[1]0JY1]1^.8_1^1_0JY1_4U.8_4U4Z0JY4Z4[.8_4[4]0JY4]4^0JY4^4`.8_4`4d0JY4d4l.8_4l4m0JY4m4n.8_4n4q0JY4q4r.8_4r4s0JY4s4t.8_4t5Y0JY5Y5Z.8_5Z7Q0JY7Q7R.8_7R:S0JY:S:[.8_:[=p0JY=p=y.8_=y>q0JY>q>s.8_>s>t0JY>t>{.8_>{?t0JY?tA`.8_A`A{0JYA{BQ.8_BQBT0JYBTCS.8_CSDP0JYDPDt.8_DtDu0JYDuDv0JYDvDw.8_DwGO0JYGOGP.8_GPGQ0JYGQGa.8_GaGb0JYGbGc0JYGcGj.8_GjGk0JYGkGl0JYGlGv.8_GvGy0JYGyG{.8_G{G|0JYG|H^.8_H^H_0JYH_H`.8_H`IO0JYIOIm.8_ImKj0JYKjKu.8_KuKv0JYKvL`.8_L`MR0JYMRM[.8_M[M]0JYM]M^0JYM^Mb.8_MbMc0JYMcMh.8_MhNO0JYNONS.8_NSNT0JYNTN^.8_N^N_0JYN_Nb.8_NbNc0JYNcNz.8_Nz! e0JY! e!#O.8_!#O!#P0JY!#P!#Q.8_!#Q!#]0JY!#]!%W.8_!%W!&`0JY!&`!&c.8_!&c!&d0JY!&d!&v.8_!&v!&w0JY!&w!'O.8_!'O!'Y0JY!'Y!'i.8_!'i!'p0JY!'p!'q.8_!'q!'x0JY!'x!'}.8_!'}!(V0JY!(V!(X.8_!(X!(Y0JY!(Y!(Z0JY!(Z!(].8_!(]!(s0JY!(s!(t.8_!(t!({0JY!({!(|.8_!(|!(}0JY!(}!)Q.8_!)Q!)U0JY!)U!)X.8_!)X!)Y0JY!)Y!)j.8_!)j!)k0JY!)k!)x.8_!)x!)y0JY!)y!)z0JY!)z!){.8_!){!*O0JY!*O!*^.8_!*^!*_0JY!*_!*`0JY!*`!*s.8_!*s!*y0JY!*y!*}.8_!*}!+O0JY!+O!+P0JY!+P!+R.8_!+R!+i0JY!+i!+j.8_!+j!+q0JY!+q!+r.8_!+r!+s0JY!+s!+t0JY!+t!+u.8_!+u!+v0JY!+v!+w0JY!+w!+x.8_!+x!+y0JY!+y!+z0JY!+z!,k.8_!,k!,o0JY!,o!,p.8_!,p!,q0JY!,q!-U.8_!-U!-X0JY!-X!-i.8_!-i!-r0JY!-r!-s.8_!-s!-v0JY!-v!-w.8_!-w!._0JY!._!.`.8_!.`!.g0JY!.g!.h.8_!.h!.i0JY!.i!.j0JY!.j!.k.8_!.k!.p0JY!.p!.s.8_!.s!.t0JY!.t!/W.8_!/W!/X0JY!/X!/h.8_!/h!/i0JY!/i!/j0JY!/j!0_.8_!0_!0g0JY!0g!0i.8_!0i!0j0JY!0j!0k0JY!0k!0m.8_!0m!1T0JY!1T!1U.8_!1U!1]0JY!1]!1^.8_!1^!1_0JY!1_!1`0JY!1`!1a.8_!1a!1f0JY!1f!1i.8_!1i!1j0JY!1j!2Y.8_!2Y!2Z0JY!2Z!2[0JY!2[!2].8_!2]!2`0JY!2`!2o.8_!2o!2p0JY!2p!3R.8_!3R!3S0JY!3S!3T.8_!3T!3Z0JY!3Z!3^.8_!3^!3a0JY!3a!3b.8_!3b!3f0JY!3f!3i.8_!3i!3j0JY!3j!3k0JY!3k!3l.8_!3l!3m0JY!3m!3n.8_!3n!3o0JY!3o!3p0JY!3p!3s.8_!3s!3t0JY!3t!3u0JY!3u!3x.8_!3x!3{0JY!3{!4O.8_!4O!4[0JY!4[!4r.8_!4r!4s0JY!4s!5y.8_!5y!6R0JY!6R!6S.8_!6S!6V0JY!6V!6W.8_!6W!6o0JY!6o!6p.8_!6p!6z0JY!6z!6{.8_!6{!7Q0JY!7Q!7T.8_!7T!7U0JY!7U!7p.8_!7p!7q0JY!7q!7r0JY!7r!7x.8_!7x!7y0JY!7y!7z0JY!7z!8o.8_!8o!8w0JY!8w!8x.8_!8x!8{0JY!8{!8|.8_!8|!9e0JY!9e!9f.8_!9f!9p0JY!9p!9q.8_!9q!9v0JY!9v!9y.8_!9y!9z0JY!9z!:l.8_!:l!:m0JY!:m!:n.8_!:n!:o0JY!:o!:p0JY!:p!;P.8_!;P!;Q0JY!;Q!;R0JY!;R!;e.8_!;e!;m0JY!;m!;n.8_!;n!;q0JY!;q!;r.8_!;r!<m0JY!<m!<o.8_!<o!<p0JY!<p!=Q.8_!=Q!=R0JY!=R!=d.8_!=d!=e0JY!=e!=f0JY!=f!>O.8_!>O!>U0JY!>U!>Z.8_!>Z!>m0JY!>m!>p.8_!>p!?Y0JY!?Y!?Z.8_!?Z!?d0JY!?d!?e.8_!?e!?f0JY!?f!?h.8_!?h!?o0JY!?o!@{.8_!@{!A}0JY!A}!BO.8_!BO!BP0JY!BP!BQ0JY!BQ!B^.8_!B^!Be0JY!Be!Cq.8_!Cq!Cr0JY!Cr!Cs0JY!Cs!Ct.8_!Ct!Cu0JY!Cu!Cw.8_!Cw!Cx0JY!Cx!Cy0JY!Cy!Cz.8_!Cz!C{0JY!C{!C}.8_!C}!DO0JY!DO!DU.8_!DU!DY0JY!DY!DZ.8_!DZ!Db0JY!Db!Dc.8_!Dc!Df0JY!Df!Dg.8_!Dg!Dh0JY!Dh!Di.8_!Di!Dj0JY!Dj!Dl.8_!Dl!Dm0JY!Dm!Dn0JY!Dn!Do.8_!Do!Ds0JY!Ds!Dt.8_!Dt!Du0JY!Du!Dv0JY!Dv!EP.8_!EP!EQ0JY!EQ!ES.8_!ES!EX0JY!EX!EY.8_!EY!EZ0JY!EZ!Ep.8_!Ep!Et0JY!Et!Ff.8_!Ff!Fg0JY!Fg!Gx.8_!Gx!HQ0JY!HQ!HR.8_!HR!Hw0JY!Hw!Id.8_!Id!Ii0JY!Ii!LQ.8_!LQ!L}0JY!L}!Mc.8_!Mc!Md0JY!Md!Mt.8_!Mt!Mz0JY!Mz!NO.8_!NO!NS0JY!NS!NV.8_!NV!NW0JY!NW!NZ.8_!NZ!N[0JY!N[!N]0JY!N]!Nd.8_!Nd!Ng0JY!Ng!Nk.8_!Nk!Nx0JY!Nx# U.8_# U# V0JY# V# h.8_# h#!`0JY#!`#!a.8_#!a#!b0JY#!b#!g.8_#!g#!h0JY#!h#!j.8_#!j##g0JY##g##h.8_##h#*s0JY#*s#*t.8_#*t#*x0JY#*x#*z.8_#*z#+R0JY#+R#+S.8_#+S#+T0JY#+T#+U.8_#+U#+Y0JY#+Y#+[.8_#+[#,V0JY#,V#,W.8_#,W#,[0JY#,[#,^.8_#,^#-P0JY#-P#-Q.8_#-Q#-U0JY#-U#-W.8_#-W#-_0JY#-_#-`.8_#-`#-a0JY#-a#-b.8_#-b#-f0JY#-f#-h.8_#-h#-w0JY#-w#-x.8_#-x#/T0JY#/T#/U.8_#/U#/Y0JY#/Y#/[.8_#/[#0q0JY#0q#1h.8_#1h#1x0JY#1x#2Y.8_#2Y#4R0JY#4R#4_.8_#4_#Au0JY#Au#Aw.8_#Aw#BY0JY#BY#BZ.8_#BZ#Bu0JY#Bu#Bz.8_#Bz#Di0JY#Di#EO.8_#EO#E]0JY#E]#E^.8_#E^#Eb0JY#Eb#Ep.8_#Ep#FS0JY#FS#Fb.8_#Fb#Ft0JY#Ft#GS.8_#GS#Ga0JY#Ga#Gb.8_#Gb#Ge0JY#Ge#Gt.8_#Gt#Hz0JY#Hz#Io.8_#Io#Ip0JY#Ip#It.8_#It#Iu0JY#Iu#K[.8_#K[#MW0JY#MW#M`.8_#M`#NZ0JY#NZ#N[.8_#N[#N]0JY#N]#Nb.8_#Nb$ z0JY$ z$!U.8_$!U$!s0JY$!s$#x.8_$#x$$h0JY$$h$$j.8_$$j$$o0JY$$o$$z.8_$$z$%x0JY$%x$&_.8_$&_$&f0JY$&f$'p.8_$'p$(X0JY$(X$(b.8_$(b$)i0JY$)i$+_.8_$+_$+`0JY$+`$-a.8_$-a$.b0JY$.b$.s.8_$.s$.z0JY$.z$0T.8_$0T$0s0JY$0s$1Q.8_$1Q$1R0JY$1R$1S0JY$1S$1^.8_$1^$2[0JY$2[$2v.8_$2v$3l0JY$3l$4g.8_$4g$4j0JY$4j$4t.8_$4t$5j0JY$5j$7y.8_$7y$7}0JY$7}$8O.8_$8O$8S0JY$8S$8V.8_$8V$8W0JY$8W$8X0JY$8X$8b.8_$8b$<j0JY$<j$=|.8_$=|$DO0JY$DO$DQ.8_$DQ$DW0JY$DW$DY.8_$DY$EQ0JY$EQ$ES.8_$ES$EY0JY$EY$E[.8_$E[$Ed0JY$Ed$Ee.8_$Ee$Ef0JY$Ef$Eg.8_$Eg$Eh0JY$Eh$Ei.8_$Ei$Ej0JY$Ej$Ek.8_$Ek$F[0JY$F[$F^.8_$F^$Ge0JY$Ge$Gf.8_$Gf$Gm0JY$Gm$Gn.8_$Gn$Go0JY$Go$Gr.8_$Gr$Gu0JY$Gu$Gv.8_$Gv$G}0JY$G}$HQ.8_$HQ$HU0JY$HU$HW.8_$HW$H^0JY$H^$Hb.8_$Hb$Ho0JY$Ho$Ht.8_$Ht$Hw0JY$Hw$Hx.8_$Hx$IP0JY$IP$Ki.8_$Ki$Kj0JY$Kj$Kw.8_$Kw$Kx0JY$Kx$LY.8_$LY$Lg0JY$Lg$Np.8_$Np$Nq0JY$Nq$Nu.8_$Nu$Nv0JY$Nv$Nx.8_$Nx% S0JY% S% T.8_% T% U0JY% U% X.8_% X% ^0JY% ^% d.8_% d% e0JY% e% f.8_% f% g0JY% g% h.8_% h% i0JY% i% j.8_% j% n0JY% n% o.8_% o% z0JY% z% |.8_% |%!Q0JY%!Q%!V.8_%!V%![0JY%![%!`.8_%!`%!a0JY%!a%#g.8_%#g%#h0JY%#h%#i0JY%#i&/x.8_&/x&0y0JY&0y&0z.8_&0z&1{0JY&1{&1|.8_&1|&4w0JY&4w&4}.8_&4}&5R0JY&5R&5U.8_&5U&5V0JY&5V&5W0JY&5W&5d.8_&5d&6[0JY&6[&6].8_&6]&6^0JY&6^&6c.8_&6c&6d0JY&6d&6f.8_&6f&7p0JY&7p&7w.8_&7w&7x0JY&7x&8Y.8_&8Y&8q0JY&8q&8z.8_&8z&9R0JY&9R&9S.8_&9S&9Z0JY&9Z&9[.8_&9[&9c0JY&9c&9d.8_&9d&9k0JY&9k&9l.8_&9l&9s0JY&9s&9t.8_&9t&9{0JY&9{&9|.8_&9|&:T0JY&:T&:U.8_&:U&:]0JY&:]&<P.8_&<P&<Q0JY&<Q&FZ.8_&FZ&F[0JY&F[&F]0JY&F]&GX.8_&GX&G^0JY&G^&Gc.8_&Gc&Gd0JY&Gd&Ge0JY&Ge&Gi.8_&Gi&Ic0JY&Ic&Ii.8_&Ii&Il0JY&Il&Im.8_&Im&Kk0JY&Kk&Kl.8_&Kl&Kp0JY&Kp&Ku.8_&Ku&Lp0JY&Lp&Ls.8_&Ls&Nu0JY&Nu' W.8_' W' s0JY' s'!z.8_'!z'#[0JY'#['.b.8_'.b*3f0JY*3f*5S.8_*5S40_0JY40_41d.8_41d4Js0JY4Js4LY.8_4LY4MY0JY4MY4M[.8_4M[5%T0JY5%T5%W.8_5%W5%h0JY5%h5%r.8_5%r5%s0JY5%s5%t0JY5%t5&Y.8_5&Y5'Z0JY5'Z5'k.8_5'k5(U0JY5(U5(^.8_5(^5)v0JY5)v5*y.8_5*y5+S0JY5+S5+U.8_5+U5-a0JY5-a5-c.8_5-c5-g0JY5-g5-h.8_5-h5-l0JY5-l5-x.8_5-x5.T0JY5.T5/t.8_5/t50O0JY50O50P.8_50P50S0JY50S50T.8_50T50X0JY50X50Y.8_50Y50q0JY50q51`.8_51`52f0JY52f52t.8_52t53x0JY53x55Y.8_55Y55`0JY55`55c.8_55c55d0JY55d55r.8_55r56`0JY56`56j.8_56j57R0JY57R57l.8_57l58Z0JY58Z58b.8_58b59c0JY59c5:P.8_5:P5:Q0JY5:Q5;S.8_5;S5;}0JY5;}5<f.8_5<f5<i0JY5<i5<j.8_5<j5<r0JY5<r5=W.8_5=W5=o0JY5=o5=r.8_5=r5=s0JY5=s5=x.8_5=x5>z0JY5>z5>{.8_5>{5>|0JY5>|5?P.8_5?P5?Q0JY5?Q5?R0JY5?R5?T.8_5?T5?Y0JY5?Y5?[.8_5?[5?]0JY5?]5?^.8_5?^5?_0JY5?_5?w.8_5?w5?z0JY5?z5?|.8_5?|5@X0JY5@X5@`.8_5@`5@c0JY5@c5@o.8_5@o5@u0JY5@u5@w.8_5@w5@}0JY5@}5AP.8_5AP5AV0JY5AV5A`.8_5A`5Ag0JY5Ag5Ah.8_5Ah5Ao0JY5Ao5Dv.8_5Dv5Ek0JY5Ek5FY.8_5FY;%S0JY;%S;%`.8_;%`;%w0JY;%w;%{.8_;%{;'O0JY;'O;'S.8_;'S;=`.8p<%l?&r.8_?&r?.p0JY?.p?.r.8_?.r?1Q0JY?1Q?1x.8_?1x?2P0JY?2P?2].8_?2]?2b0JY?2b?2g.8_?2g?2h0JY?2h?2i.8_?2i?2s0JY?2s?2t.8_?2t?3R0JY?3R?3S.8_?3S?3X0JY?3X?3Y.8_?3Y?3Z0JY?3Z?3[.8_?3[?3]0JY?3]?3^0JY?3^?3_.8_?3_?3`0JY?3`?3a0JY?3a?3b.8_?3b?5r0JY?5r?6e.8_?6e?>`0JY?>`?>r.8_?>r?@U0JY?@U?@W.8_?@W?A`0JY?A`?BY.8_?BY?Bf0JY?Bf?EO.8_?EO?ET0JY?ET?EU.8_?EU?HR0JY?HR?Hw.8_?Hw?Ic0JY?Ic?Ii.8_?Ii?JT0JY?JT?J`.8_?J`?L]0JY?L]?L`.8_?L`?Lf0JY?Lf?Lh.8_?Lh?Ln0JY?Ln?Lp.8_?Lp?Lv0JY?Lv?Lx.8_?Lx?L{0JY?L{O.8_!T2#U2izQS!RmPOY.8|YZ!+oZq.8|qr2!{rs2!{st2!{tu2!{uv2!{vw2!{wx0JYxz.8|z{2!{{|2!{|!O.8|!O!P2!{!P!Q2!{!Q![2!{![!a.8|!a!b2!{!b!c.8|!c!}2!{!}#O.8|#O#P2!{#P#R.8|#R#S2!{#S#T2!{#T#o2!{#o$p.8|$p$q2!{$q${.8|${$|2!{$|%Q.8|%Q%R2!{%R%W.8|%W%o2!{%o%p.8|%p&a2!{&a&b.8|&b0`2!{0`0d.8|0d0p2!{0p1O.8|1O1T2!{1T1[.8|1[1]2!{1]1^.8|1^1_2!{1_4U.8|4U4Z2!{4Z4[.8|4[4]2!{4]4^2!{4^4`.8|4`4d2!{4d4l.8|4l4m2!{4m4n.8|4n4q2!{4q4r.8|4r4s2!{4s4t.8|4t5Y2!{5Y5Z.8|5Z7Q2!{7Q7R.8|7R:S2!{:S:[.8|:[=p2!{=p=y.8|=y>q2!{>q>s.8|>s>t2!{>t>{.8|>{?t2!{?tA`.8|A`A{2!{A{BQ.8|BQBT2!{BTCS.8|CSDP2!{DPDt.8|DtDu2!{DuDv2!{DvDw.8|DwGO2!{GOGP.8|GPGQ2!{GQGa.8|GaGb2!{GbGc2!{GcGj.8|GjGk2!{GkGl2!{GlGv.8|GvGy2!{GyG{.8|G{G|2!{G|H^.8|H^H_2!{H_H`.8|H`IO2!{IOIm.8|ImKj2!{KjKu.8|KuKv2!{KvL`.8|L`MR2!{MRM[.8|M[M]2!{M]M^2!{M^Mb.8|MbMc2!{McMh.8|MhNO2!{NONS.8|NSNT2!{NTN^.8|N^N_2!{N_Nb.8|NbNc2!{NcNz.8|Nz! e2!{! e!#O.8|!#O!#P2!{!#P!#Q.8|!#Q!#]2!{!#]!%W.8|!%W!&`2!{!&`!&c.8|!&c!&d2!{!&d!&v.8|!&v!&w2!{!&w!'O.8|!'O!'Y2!{!'Y!'i.8|!'i!'p2!{!'p!'q.8|!'q!'x2!{!'x!'}.8|!'}!(V2!{!(V!(X.8|!(X!(Y2!{!(Y!(Z2!{!(Z!(].8|!(]!(s2!{!(s!(t.8|!(t!({2!{!({!(|.8|!(|!(}2!{!(}!)Q.8|!)Q!)U2!{!)U!)X.8|!)X!)Y2!{!)Y!)j.8|!)j!)k2!{!)k!)x.8|!)x!)y2!{!)y!)z2!{!)z!){.8|!){!*O2!{!*O!*^.8|!*^!*_2!{!*_!*`2!{!*`!*s.8|!*s!*y2!{!*y!*}.8|!*}!+O2!{!+O!+P2!{!+P!+R.8|!+R!+i2!{!+i!+j.8|!+j!+q2!{!+q!+r.8|!+r!+s2!{!+s!+t2!{!+t!+u.8|!+u!+v2!{!+v!+w2!{!+w!+x.8|!+x!+y2!{!+y!+z2!{!+z!,k.8|!,k!,o2!{!,o!,p.8|!,p!,q2!{!,q!-U.8|!-U!-X2!{!-X!-i.8|!-i!-r2!{!-r!-s.8|!-s!-v2!{!-v!-w.8|!-w!._2!{!._!.`.8|!.`!.g2!{!.g!.h.8|!.h!.i2!{!.i!.j2!{!.j!.k.8|!.k!.p2!{!.p!.s.8|!.s!.t2!{!.t!/W.8|!/W!/X2!{!/X!/h.8|!/h!/i2!{!/i!/j2!{!/j!0_.8|!0_!0g2!{!0g!0i.8|!0i!0j2!{!0j!0k2!{!0k!0m.8|!0m!1T2!{!1T!1U.8|!1U!1]2!{!1]!1^.8|!1^!1_2!{!1_!1`2!{!1`!1a.8|!1a!1f2!{!1f!1i.8|!1i!1j2!{!1j!2Y.8|!2Y!2Z2!{!2Z!2[2!{!2[!2].8|!2]!2`2!{!2`!2o.8|!2o!2p2!{!2p!3R.8|!3R!3S2!{!3S!3T.8|!3T!3Z2!{!3Z!3^.8|!3^!3a2!{!3a!3b.8|!3b!3f2!{!3f!3i.8|!3i!3j2!{!3j!3k2!{!3k!3l.8|!3l!3m2!{!3m!3n.8|!3n!3o2!{!3o!3p2!{!3p!3s.8|!3s!3t2!{!3t!3u2!{!3u!3x.8|!3x!3{2!{!3{!4O.8|!4O!4[2!{!4[!4r.8|!4r!4s2!{!4s!5y.8|!5y!6R2!{!6R!6S.8|!6S!6V2!{!6V!6W.8|!6W!6o2!{!6o!6p.8|!6p!6z2!{!6z!6{.8|!6{!7Q2!{!7Q!7T.8|!7T!7U2!{!7U!7p.8|!7p!7q2!{!7q!7r2!{!7r!7x.8|!7x!7y2!{!7y!7z2!{!7z!8o.8|!8o!8w2!{!8w!8x.8|!8x!8{2!{!8{!8|.8|!8|!9e2!{!9e!9f.8|!9f!9p2!{!9p!9q.8|!9q!9v2!{!9v!9y.8|!9y!9z2!{!9z!:l.8|!:l!:m2!{!:m!:n.8|!:n!:o2!{!:o!:p2!{!:p!;P.8|!;P!;Q2!{!;Q!;R2!{!;R!;e.8|!;e!;m2!{!;m!;n.8|!;n!;q2!{!;q!;r.8|!;r!<m2!{!<m!<o.8|!<o!<p2!{!<p!=Q.8|!=Q!=R2!{!=R!=d.8|!=d!=e2!{!=e!=f2!{!=f!>O.8|!>O!>U2!{!>U!>Z.8|!>Z!>m2!{!>m!>p.8|!>p!?Y2!{!?Y!?Z.8|!?Z!?d2!{!?d!?e.8|!?e!?f2!{!?f!?h.8|!?h!?o2!{!?o!@{.8|!@{!A}2!{!A}!BO.8|!BO!BP2!{!BP!BQ2!{!BQ!B^.8|!B^!Be2!{!Be!Cq.8|!Cq!Cr2!{!Cr!Cs2!{!Cs!Ct.8|!Ct!Cu2!{!Cu!Cw.8|!Cw!Cx2!{!Cx!Cy2!{!Cy!Cz.8|!Cz!C{2!{!C{!C}.8|!C}!DO2!{!DO!DU.8|!DU!DY2!{!DY!DZ.8|!DZ!Db2!{!Db!Dc.8|!Dc!Df2!{!Df!Dg.8|!Dg!Dh2!{!Dh!Di.8|!Di!Dj2!{!Dj!Dl.8|!Dl!Dm2!{!Dm!Dn2!{!Dn!Do.8|!Do!Ds2!{!Ds!Dt.8|!Dt!Du2!{!Du!Dv2!{!Dv!EP.8|!EP!EQ2!{!EQ!ES.8|!ES!EX2!{!EX!EY.8|!EY!EZ2!{!EZ!Ep.8|!Ep!Et2!{!Et!Ff.8|!Ff!Fg2!{!Fg!Gx.8|!Gx!HQ2!{!HQ!HR.8|!HR!Hw2!{!Hw!Id.8|!Id!Ii2!{!Ii!LQ.8|!LQ!L}2!{!L}!Mc.8|!Mc!Md2!{!Md!Mt.8|!Mt!Mz2!{!Mz!NO.8|!NO!NS2!{!NS!NV.8|!NV!NW2!{!NW!NZ.8|!NZ!N[2!{!N[!N]2!{!N]!Nd.8|!Nd!Ng2!{!Ng!Nk.8|!Nk!Nx2!{!Nx# U.8|# U# V2!{# V# h.8|# h#!`2!{#!`#!a.8|#!a#!b2!{#!b#!g.8|#!g#!h2!{#!h#!j.8|#!j##g2!{##g##h.8|##h#*s2!{#*s#*t.8|#*t#*x2!{#*x#*z.8|#*z#+R2!{#+R#+S.8|#+S#+T2!{#+T#+U.8|#+U#+Y2!{#+Y#+[.8|#+[#,V2!{#,V#,W.8|#,W#,[2!{#,[#,^.8|#,^#-P2!{#-P#-Q.8|#-Q#-U2!{#-U#-W.8|#-W#-_2!{#-_#-`.8|#-`#-a2!{#-a#-b.8|#-b#-f2!{#-f#-h.8|#-h#-w2!{#-w#-x.8|#-x#/T2!{#/T#/U.8|#/U#/Y2!{#/Y#/[.8|#/[#0q2!{#0q#1h.8|#1h#1x2!{#1x#2Y.8|#2Y#4R2!{#4R#4_.8|#4_#Au2!{#Au#Aw.8|#Aw#BY2!{#BY#BZ.8|#BZ#Bu2!{#Bu#Bz.8|#Bz#Di2!{#Di#EO.8|#EO#E]2!{#E]#E^.8|#E^#Eb2!{#Eb#Ep.8|#Ep#FS2!{#FS#Fb.8|#Fb#Ft2!{#Ft#GS.8|#GS#Ga2!{#Ga#Gb.8|#Gb#Ge2!{#Ge#Gt.8|#Gt#Hz2!{#Hz#Io.8|#Io#Ip2!{#Ip#It.8|#It#Iu2!{#Iu#K[.8|#K[#MW2!{#MW#M`.8|#M`#NZ2!{#NZ#N[.8|#N[#N]2!{#N]#Nb.8|#Nb$ z2!{$ z$!U.8|$!U$!s2!{$!s$#x.8|$#x$$h2!{$$h$$j.8|$$j$$o2!{$$o$$z.8|$$z$%x2!{$%x$&_.8|$&_$&f2!{$&f$'p.8|$'p$(X2!{$(X$(b.8|$(b$)i2!{$)i$+_.8|$+_$+`2!{$+`$-a.8|$-a$.b2!{$.b$.s.8|$.s$.z2!{$.z$0T.8|$0T$0s2!{$0s$1Q.8|$1Q$1R2!{$1R$1S2!{$1S$1^.8|$1^$2[2!{$2[$2v.8|$2v$3l2!{$3l$4g.8|$4g$4j2!{$4j$4t.8|$4t$5j2!{$5j$7y.8|$7y$7}2!{$7}$8O.8|$8O$8S2!{$8S$8V.8|$8V$8W2!{$8W$8X2!{$8X$8b.8|$8b$<j2!{$<j$=|.8|$=|$DO2!{$DO$DQ.8|$DQ$DW2!{$DW$DY.8|$DY$EQ2!{$EQ$ES.8|$ES$EY2!{$EY$E[.8|$E[$Ed2!{$Ed$Ee.8|$Ee$Ef2!{$Ef$Eg.8|$Eg$Eh2!{$Eh$Ei.8|$Ei$Ej2!{$Ej$Ek.8|$Ek$F[2!{$F[$F^.8|$F^$Ge2!{$Ge$Gf.8|$Gf$Gm2!{$Gm$Gn.8|$Gn$Go2!{$Go$Gr.8|$Gr$Gu2!{$Gu$Gv.8|$Gv$G}2!{$G}$HQ.8|$HQ$HU2!{$HU$HW.8|$HW$H^2!{$H^$Hb.8|$Hb$Ho2!{$Ho$Ht.8|$Ht$Hw2!{$Hw$Hx.8|$Hx$IP2!{$IP$Ki.8|$Ki$Kj2!{$Kj$Kw.8|$Kw$Kx2!{$Kx$LY.8|$LY$Lg2!{$Lg$Np.8|$Np$Nq2!{$Nq$Nu.8|$Nu$Nv2!{$Nv$Nx.8|$Nx% S2!{% S% T.8|% T% U2!{% U% X.8|% X% ^2!{% ^% d.8|% d% e2!{% e% f.8|% f% g2!{% g% h.8|% h% i2!{% i% j.8|% j% n2!{% n% o.8|% o% z2!{% z% |.8|% |%!Q2!{%!Q%!V.8|%!V%![2!{%![%!`.8|%!`%!a2!{%!a%#g.8|%#g%#h2!{%#h%#i2!{%#i&/x.8|&/x&0y2!{&0y&0z.8|&0z&1{2!{&1{&1|.8|&1|&4w2!{&4w&4}.8|&4}&5R2!{&5R&5U.8|&5U&5V2!{&5V&5W2!{&5W&5d.8|&5d&6[2!{&6[&6].8|&6]&6^2!{&6^&6c.8|&6c&6d2!{&6d&6f.8|&6f&7p2!{&7p&7w.8|&7w&7x2!{&7x&8Y.8|&8Y&8q2!{&8q&8z.8|&8z&9R2!{&9R&9S.8|&9S&9Z2!{&9Z&9[.8|&9[&9c2!{&9c&9d.8|&9d&9k2!{&9k&9l.8|&9l&9s2!{&9s&9t.8|&9t&9{2!{&9{&9|.8|&9|&:T2!{&:T&:U.8|&:U&:]2!{&:]&<P.8|&<P&<Q2!{&<Q&FZ.8|&FZ&F[2!{&F[&F]2!{&F]&GX.8|&GX&G^2!{&G^&Gc.8|&Gc&Gd2!{&Gd&Ge2!{&Ge&Gi.8|&Gi&Ic2!{&Ic&Ii.8|&Ii&Il2!{&Il&Im.8|&Im&Kk2!{&Kk&Kl.8|&Kl&Kp2!{&Kp&Ku.8|&Ku&Lp2!{&Lp&Ls.8|&Ls&Nu2!{&Nu' W.8|' W' s2!{' s'!z.8|'!z'#[2!{'#['.b.8|'.b*3f2!{*3f*5S.8|*5S40_2!{40_41d.8|41d4Js2!{4Js4LY.8|4LY4MY2!{4MY4M[.8|4M[5%T2!{5%T5%W.8|5%W5%h2!{5%h5%r.8|5%r5%s2!{5%s5%t2!{5%t5&Y.8|5&Y5'Z2!{5'Z5'k.8|5'k5(U2!{5(U5(^.8|5(^5)v2!{5)v5*y.8|5*y5+S2!{5+S5+U.8|5+U5-a2!{5-a5-c.8|5-c5-g2!{5-g5-h.8|5-h5-l2!{5-l5-x.8|5-x5.T2!{5.T5/t.8|5/t50O2!{50O50P.8|50P50S2!{50S50T.8|50T50X2!{50X50Y.8|50Y50q2!{50q51`.8|51`52f2!{52f52t.8|52t53x2!{53x55Y.8|55Y55`2!{55`55c.8|55c55d2!{55d55r.8|55r56`2!{56`56j.8|56j57R2!{57R57l.8|57l58Z2!{58Z58b.8|58b59c2!{59c5:P.8|5:P5:Q2!{5:Q5;S.8|5;S5;}2!{5;}5<f.8|5<f5<i2!{5<i5<j.8|5<j5<r2!{5<r5=W.8|5=W5=o2!{5=o5=r.8|5=r5=s2!{5=s5=x.8|5=x5>z2!{5>z5>{.8|5>{5>|2!{5>|5?P.8|5?P5?Q2!{5?Q5?R2!{5?R5?T.8|5?T5?Y2!{5?Y5?[.8|5?[5?]2!{5?]5?^.8|5?^5?_2!{5?_5?w.8|5?w5?z2!{5?z5?|.8|5?|5@X2!{5@X5@`.8|5@`5@c2!{5@c5@o.8|5@o5@u2!{5@u5@w.8|5@w5@}2!{5@}5AP.8|5AP5AV2!{5AV5A`.8|5A`5Ag2!{5Ag5Ah.8|5Ah5Ao2!{5Ao5Dv.8|5Dv5Ek2!{5Ek5FY.8|5FY;%S2!{;%S;%`.8|;%`;%w2!{;%w;%{.8|;%{;'O2!{;'O;'S.8|;'S;=`.9j<%l?&r.8|?&r?.p2!{?.p?.r.8|?.r?1Q2!{?1Q?1x.8|?1x?2P2!{?2P?2].8|?2]?2b2!{?2b?2g.8|?2g?2h2!{?2h?2i.8|?2i?2s2!{?2s?2t.8|?2t?3R2!{?3R?3S.8|?3S?3X2!{?3X?3Y.8|?3Y?3Z2!{?3Z?3[.8|?3[?3]2!{?3]?3^2!{?3^?3_.8|?3_?3`2!{?3`?3a2!{?3a?3b.8|?3b?5r2!{?5r?6e.8|?6e?>`2!{?>`?>r.8|?>r?@U2!{?@U?@W.8|?@W?A`2!{?A`?BY.8|?BY?Bf2!{?Bf?EO.8|?EO?ET2!{?ET?EU.8|?EU?HR2!{?HR?Hw.8|?Hw?Ic2!{?Ic?Ii.8|?Ii?JT2!{?JT?J`.8|?J`?L]2!{?L]?L`.8|?L`?Lf2!{?Lf?Lh.8|?Lh?Ln2!{?Ln?Lp.8|?Lp?Lv2!{?Lv?Lx.8|?Lx?L{2!{?L{O.8|!_3*O2i!OW|SS!RmPOY.9vYZ!,^Zq.9vqr3)srs/Cbst3)stu3)suv3)svw3)swx3)sxz.9vz{3)s{|3)s|!O.9v!O!P3)s!P!Q3)s!Q![3)s![!a.9v!a!b3)s!b!c.9v!c!}3)s!}#O.9v#O#P3)s#P#R.9v#R#S3)s#S#T40m#T#o3)s#o$p.9v$p$q3)s$q${.9v${$|3)s$|%Q.9v%Q%R3)s%R%W.9v%W%o3)s%o%p.9v%p&a3)s&a&b.9v&b0`3)s0`0d.9v0d0p3)s0p1O.9v1O1T3)s1T1[.9v1[1]3)s1]1^.9v1^1_3)s1_4U.9v4U4Z3)s4Z4[.9v4[4]3)s4]4^3)s4^4`.9v4`4d3)s4d4l.9v4l4m3)s4m4n.9v4n4q3)s4q4r.9v4r4s3)s4s4t.9v4t5Y3)s5Y5Z.9v5Z7Q3)s7Q7R.9v7R:S3)s:S:[.9v:[=p3)s=p=y.9v=y>q3)s>q>s.9v>s>t3)s>t>{.9v>{?t3)s?tA`.9vA`A{3)sA{BQ.9vBQBT3)sBTCS.9vCSDP3)sDPDt.9vDtDu3)sDuDv3)sDvDw.9vDwGO3)sGOGP.9vGPGQ3)sGQGa.9vGaGb3)sGbGc3)sGcGj.9vGjGk3)sGkGl3)sGlGv.9vGvGy3)sGyG{.9vG{G|3)sG|H^.9vH^H_3)sH_H`.9vH`IO3)sIOIm.9vImKj3)sKjKu.9vKuKv3)sKvL`.9vL`MR3)sMRM[.9vM[M]3)sM]M^3)sM^Mb.9vMbMc3)sMcMh.9vMhNO3)sNONS.9vNSNT3)sNTN^.9vN^N_3)sN_Nb.9vNbNc3)sNcNz.9vNz! e3)s! e!#O.9v!#O!#P3)s!#P!#Q.9v!#Q!#]3)s!#]!%W.9v!%W!&`3)s!&`!&c.9v!&c!&d3)s!&d!&v.9v!&v!&w3)s!&w!'O.9v!'O!'Y3)s!'Y!'i.9v!'i!'p3)s!'p!'q.9v!'q!'x3)s!'x!'}.9v!'}!(V3)s!(V!(X.9v!(X!(Y3)s!(Y!(Z3)s!(Z!(].9v!(]!(s3)s!(s!(t.9v!(t!({3)s!({!(|.9v!(|!(}3)s!(}!)Q.9v!)Q!)U3)s!)U!)X.9v!)X!)Y3)s!)Y!)j.9v!)j!)k3)s!)k!)x.9v!)x!)y3)s!)y!)z3)s!)z!){.9v!){!*O3)s!*O!*^.9v!*^!*_3)s!*_!*`3)s!*`!*s.9v!*s!*y3)s!*y!*}.9v!*}!+O3)s!+O!+P3)s!+P!+R.9v!+R!+i3)s!+i!+j.9v!+j!+q3)s!+q!+r.9v!+r!+s3)s!+s!+t3)s!+t!+u.9v!+u!+v3)s!+v!+w3)s!+w!+x.9v!+x!+y3)s!+y!+z3)s!+z!,k.9v!,k!,o3)s!,o!,p.9v!,p!,q3)s!,q!-U.9v!-U!-X3)s!-X!-i.9v!-i!-r3)s!-r!-s.9v!-s!-v3)s!-v!-w.9v!-w!._3)s!._!.`.9v!.`!.g3)s!.g!.h.9v!.h!.i3)s!.i!.j3)s!.j!.k.9v!.k!.p3)s!.p!.s.9v!.s!.t3)s!.t!/W.9v!/W!/X3)s!/X!/h.9v!/h!/i3)s!/i!/j3)s!/j!0_.9v!0_!0g3)s!0g!0i.9v!0i!0j3)s!0j!0k3)s!0k!0m.9v!0m!1T3)s!1T!1U.9v!1U!1]3)s!1]!1^.9v!1^!1_3)s!1_!1`3)s!1`!1a.9v!1a!1f3)s!1f!1i.9v!1i!1j3)s!1j!2Y.9v!2Y!2Z3)s!2Z!2[3)s!2[!2].9v!2]!2`3)s!2`!2o.9v!2o!2p3)s!2p!3R.9v!3R!3S3)s!3S!3T.9v!3T!3Z3)s!3Z!3^.9v!3^!3a3)s!3a!3b.9v!3b!3f3)s!3f!3i.9v!3i!3j3)s!3j!3k3)s!3k!3l.9v!3l!3m3)s!3m!3n.9v!3n!3o3)s!3o!3p3)s!3p!3s.9v!3s!3t3)s!3t!3u3)s!3u!3x.9v!3x!3{3)s!3{!4O.9v!4O!4[3)s!4[!4r.9v!4r!4s3)s!4s!5y.9v!5y!6R3)s!6R!6S.9v!6S!6V3)s!6V!6W.9v!6W!6o3)s!6o!6p.9v!6p!6z3)s!6z!6{.9v!6{!7Q3)s!7Q!7T.9v!7T!7U3)s!7U!7p.9v!7p!7q3)s!7q!7r3)s!7r!7x.9v!7x!7y3)s!7y!7z3)s!7z!8o.9v!8o!8w3)s!8w!8x.9v!8x!8{3)s!8{!8|.9v!8|!9e3)s!9e!9f.9v!9f!9p3)s!9p!9q.9v!9q!9v3)s!9v!9y.9v!9y!9z3)s!9z!:l.9v!:l!:m3)s!:m!:n.9v!:n!:o3)s!:o!:p3)s!:p!;P.9v!;P!;Q3)s!;Q!;R3)s!;R!;e.9v!;e!;m3)s!;m!;n.9v!;n!;q3)s!;q!;r.9v!;r!<m3)s!<m!<o.9v!<o!<p3)s!<p!=Q.9v!=Q!=R3)s!=R!=d.9v!=d!=e3)s!=e!=f3)s!=f!>O.9v!>O!>U3)s!>U!>Z.9v!>Z!>m3)s!>m!>p.9v!>p!?Y3)s!?Y!?Z.9v!?Z!?d3)s!?d!?e.9v!?e!?f3)s!?f!?h.9v!?h!?o3)s!?o!@{.9v!@{!A}3)s!A}!BO.9v!BO!BP3)s!BP!BQ3)s!BQ!B^.9v!B^!Be3)s!Be!Cq.9v!Cq!Cr3)s!Cr!Cs3)s!Cs!Ct.9v!Ct!Cu3)s!Cu!Cw.9v!Cw!Cx3)s!Cx!Cy3)s!Cy!Cz.9v!Cz!C{3)s!C{!C}.9v!C}!DO3)s!DO!DU.9v!DU!DY3)s!DY!DZ.9v!DZ!Db3)s!Db!Dc.9v!Dc!Df3)s!Df!Dg.9v!Dg!Dh3)s!Dh!Di.9v!Di!Dj3)s!Dj!Dl.9v!Dl!Dm3)s!Dm!Dn3)s!Dn!Do.9v!Do!Ds3)s!Ds!Dt.9v!Dt!Du3)s!Du!Dv3)s!Dv!EP.9v!EP!EQ3)s!EQ!ES.9v!ES!EX3)s!EX!EY.9v!EY!EZ3)s!EZ!Ep.9v!Ep!Et3)s!Et!Ff.9v!Ff!Fg3)s!Fg!Gx.9v!Gx!HQ3)s!HQ!HR.9v!HR!Hw3)s!Hw!Id.9v!Id!Ii3)s!Ii!LQ.9v!LQ!L}3)s!L}!Mc.9v!Mc!Md3)s!Md!Mt.9v!Mt!Mz3)s!Mz!NO.9v!NO!NS3)s!NS!NV.9v!NV!NW3)s!NW!NZ.9v!NZ!N[3)s!N[!N]3)s!N]!Nd.9v!Nd!Ng3)s!Ng!Nk.9v!Nk!Nx3)s!Nx# U.9v# U# V3)s# V# h.9v# h#!`3)s#!`#!a.9v#!a#!b3)s#!b#!g.9v#!g#!h3)s#!h#!j.9v#!j##g3)s##g##h.9v##h#*s3)s#*s#*t.9v#*t#*x3)s#*x#*z.9v#*z#+R3)s#+R#+S.9v#+S#+T3)s#+T#+U.9v#+U#+Y3)s#+Y#+[.9v#+[#,V3)s#,V#,W.9v#,W#,[3)s#,[#,^.9v#,^#-P3)s#-P#-Q.9v#-Q#-U3)s#-U#-W.9v#-W#-_3)s#-_#-`.9v#-`#-a3)s#-a#-b.9v#-b#-f3)s#-f#-h.9v#-h#-w3)s#-w#-x.9v#-x#/T3)s#/T#/U.9v#/U#/Y3)s#/Y#/[.9v#/[#0q3)s#0q#1h.9v#1h#1x3)s#1x#2Y.9v#2Y#4R3)s#4R#4_.9v#4_#Au3)s#Au#Aw.9v#Aw#BY3)s#BY#BZ.9v#BZ#Bu3)s#Bu#Bz.9v#Bz#Di3)s#Di#EO.9v#EO#E]3)s#E]#E^.9v#E^#Eb3)s#Eb#Ep.9v#Ep#FS3)s#FS#Fb.9v#Fb#Ft3)s#Ft#GS.9v#GS#Ga3)s#Ga#Gb.9v#Gb#Ge3)s#Ge#Gt.9v#Gt#Hz3)s#Hz#Io.9v#Io#Ip3)s#Ip#It.9v#It#Iu3)s#Iu#K[.9v#K[#MW3)s#MW#M`.9v#M`#NZ3)s#NZ#N[.9v#N[#N]3)s#N]#Nb.9v#Nb$ z3)s$ z$!U.9v$!U$!s3)s$!s$#x.9v$#x$$h3)s$$h$$j.9v$$j$$o3)s$$o$$z.9v$$z$%x3)s$%x$&_.9v$&_$&f3)s$&f$'p.9v$'p$(X3)s$(X$(b.9v$(b$)i3)s$)i$+_.9v$+_$+`3)s$+`$-a.9v$-a$.b3)s$.b$.s.9v$.s$.z3)s$.z$0T.9v$0T$0s3)s$0s$1Q.9v$1Q$1R3)s$1R$1S3)s$1S$1^.9v$1^$2[3)s$2[$2v.9v$2v$3l3)s$3l$4g.9v$4g$4j3)s$4j$4t.9v$4t$5j3)s$5j$7y.9v$7y$7}3)s$7}$8O.9v$8O$8S3)s$8S$8V.9v$8V$8W3)s$8W$8X3)s$8X$8b.9v$8b$<j3)s$<j$=|.9v$=|$DO3)s$DO$DQ.9v$DQ$DW3)s$DW$DY.9v$DY$EQ3)s$EQ$ES.9v$ES$EY3)s$EY$E[.9v$E[$Ed3)s$Ed$Ee.9v$Ee$Ef3)s$Ef$Eg.9v$Eg$Eh3)s$Eh$Ei.9v$Ei$Ej3)s$Ej$Ek.9v$Ek$F[3)s$F[$F^.9v$F^$Ge3)s$Ge$Gf.9v$Gf$Gm3)s$Gm$Gn.9v$Gn$Go3)s$Go$Gr.9v$Gr$Gu3)s$Gu$Gv.9v$Gv$G}3)s$G}$HQ.9v$HQ$HU3)s$HU$HW.9v$HW$H^3)s$H^$Hb.9v$Hb$Ho3)s$Ho$Ht.9v$Ht$Hw3)s$Hw$Hx.9v$Hx$IP3)s$IP$Ki.9v$Ki$Kj3)s$Kj$Kw.9v$Kw$Kx3)s$Kx$LY.9v$LY$Lg3)s$Lg$Np.9v$Np$Nq3)s$Nq$Nu.9v$Nu$Nv3)s$Nv$Nx.9v$Nx% S3)s% S% T.9v% T% U3)s% U% X.9v% X% ^3)s% ^% d.9v% d% e3)s% e% f.9v% f% g3)s% g% h.9v% h% i3)s% i% j.9v% j% n3)s% n% o.9v% o% z3)s% z% |.9v% |%!Q3)s%!Q%!V.9v%!V%![3)s%![%!`.9v%!`%!a3)s%!a%#g.9v%#g%#h3)s%#h%#i3)s%#i&/x.9v&/x&0y3)s&0y&0z.9v&0z&1{3)s&1{&1|.9v&1|&4w3)s&4w&4}.9v&4}&5R3)s&5R&5U.9v&5U&5V3)s&5V&5W3)s&5W&5d.9v&5d&6[3)s&6[&6].9v&6]&6^3)s&6^&6c.9v&6c&6d3)s&6d&6f.9v&6f&7p3)s&7p&7w.9v&7w&7x3)s&7x&8Y.9v&8Y&8q3)s&8q&8z.9v&8z&9R3)s&9R&9S.9v&9S&9Z3)s&9Z&9[.9v&9[&9c3)s&9c&9d.9v&9d&9k3)s&9k&9l.9v&9l&9s3)s&9s&9t.9v&9t&9{3)s&9{&9|.9v&9|&:T3)s&:T&:U.9v&:U&:]3)s&:]&<P.9v&<P&<Q3)s&<Q&FZ.9v&FZ&F[3)s&F[&F]3)s&F]&GX.9v&GX&G^3)s&G^&Gc.9v&Gc&Gd3)s&Gd&Ge3)s&Ge&Gi.9v&Gi&Ic3)s&Ic&Ii.9v&Ii&Il3)s&Il&Im.9v&Im&Kk3)s&Kk&Kl.9v&Kl&Kp3)s&Kp&Ku.9v&Ku&Lp3)s&Lp&Ls.9v&Ls&Nu3)s&Nu' W.9v' W' s3)s' s'!z.9v'!z'#[3)s'#['.b.9v'.b*3f3)s*3f*5S.9v*5S40_3)s40_41d.9v41d4Js3)s4Js4LY.9v4LY4MY3)s4MY4M[.9v4M[5%T3)s5%T5%W.9v5%W5%h3)s5%h5%r.9v5%r5%s3)s5%s5%t3)s5%t5&Y.9v5&Y5'Z3)s5'Z5'k.9v5'k5(U3)s5(U5(^.9v5(^5)v3)s5)v5*y.9v5*y5+S3)s5+S5+U.9v5+U5-a3)s5-a5-c.9v5-c5-g3)s5-g5-h.9v5-h5-l3)s5-l5-x.9v5-x5.T3)s5.T5/t.9v5/t50O3)s50O50P.9v50P50S3)s50S50T.9v50T50X3)s50X50Y.9v50Y50q3)s50q51`.9v51`52f3)s52f52t.9v52t53x3)s53x55Y.9v55Y55`3)s55`55c.9v55c55d3)s55d55r.9v55r56`3)s56`56j.9v56j57R3)s57R57l.9v57l58Z3)s58Z58b.9v58b59c3)s59c5:P.9v5:P5:Q3)s5:Q5;S.9v5;S5;}3)s5;}5<f.9v5<f5<i3)s5<i5<j.9v5<j5<r3)s5<r5=W.9v5=W5=o3)s5=o5=r.9v5=r5=s3)s5=s5=x.9v5=x5>z3)s5>z5>{.9v5>{5>|3)s5>|5?P.9v5?P5?Q3)s5?Q5?R3)s5?R5?T.9v5?T5?Y3)s5?Y5?[.9v5?[5?]3)s5?]5?^.9v5?^5?_3)s5?_5?w.9v5?w5?z3)s5?z5?|.9v5?|5@X3)s5@X5@`.9v5@`5@c3)s5@c5@o.9v5@o5@u3)s5@u5@w.9v5@w5@}3)s5@}5AP.9v5AP5AV3)s5AV5A`.9v5A`5Ag3)s5Ag5Ah.9v5Ah5Ao3)s5Ao5Dv.9v5Dv5Ek3)s5Ek5FY.9v5FY;%S3)s;%S;%`.9v;%`;%w3)s;%w;%{.9v;%{;'O3)s;'O;'S.9v;'S;=`.;`<%l?&r.9v?&r?.p3)s?.p?.r.9v?.r?1Q3)s?1Q?1x.9v?1x?2P3)s?2P?2].9v?2]?2b3)s?2b?2g.9v?2g?2h3)s?2h?2i.9v?2i?2s3)s?2s?2t.9v?2t?3R3)s?3R?3S.9v?3S?3X3)s?3X?3Y.9v?3Y?3Z3)s?3Z?3[.9v?3[?3]3)s?3]?3^3)s?3^?3_.9v?3_?3`3)s?3`?3a3)s?3a?3b.9v?3b?5r3)s?5r?6e.9v?6e?>`3)s?>`?>r.9v?>r?@U3)s?@U?@W.9v?@W?A`3)s?A`?BY.9v?BY?Bf3)s?Bf?EO.9v?EO?ET3)s?ET?EU.9v?EU?HR3)s?HR?Hw.9v?Hw?Ic3)s?Ic?Ii.9v?Ii?JT3)s?JT?J`.9v?J`?L]3)s?L]?L`.9v?L`?Lf3)s?Lf?Lh.9v?Lh?Ln3)s?Ln?Lp.9v?Lp?Lv3)s?Lv?Lx.9v?Lx?L{3)s?L{O.9v!V40v2i|SS!RmPOY.:lYZ!,zZq.:lqr40mrs0JYst40mtu40muv40mvw40mwx40mxz.:lz{40m{|40m|!O.:l!O!P40m!P!Q40m!Q![40m![!a.:l!a!b40m!b!c.:l!c!}40m!}#O.:l#O#P40m#P#R.:l#R#S40m#S#T40m#T#o40m#o$p.:l$p$q40m$q${.:l${$|40m$|%Q.:l%Q%R40m%R%W.:l%W%o40m%o%p.:l%p&a40m&a&b.:l&b0`40m0`0d.:l0d0p40m0p1O.:l1O1T40m1T1[.:l1[1]40m1]1^.:l1^1_40m1_4U.:l4U4Z40m4Z4[.:l4[4]40m4]4^40m4^4`.:l4`4d40m4d4l.:l4l4m40m4m4n.:l4n4q40m4q4r.:l4r4s40m4s4t.:l4t5Y40m5Y5Z.:l5Z7Q40m7Q7R.:l7R:S40m:S:[.:l:[=p40m=p=y.:l=y>q40m>q>s.:l>s>t40m>t>{.:l>{?t40m?tA`.:lA`A{40mA{BQ.:lBQBT40mBTCS.:lCSDP40mDPDt.:lDtDu40mDuDv40mDvDw.:lDwGO40mGOGP.:lGPGQ40mGQGa.:lGaGb40mGbGc40mGcGj.:lGjGk40mGkGl40mGlGv.:lGvGy40mGyG{.:lG{G|40mG|H^.:lH^H_40mH_H`.:lH`IO40mIOIm.:lImKj40mKjKu.:lKuKv40mKvL`.:lL`MR40mMRM[.:lM[M]40mM]M^40mM^Mb.:lMbMc40mMcMh.:lMhNO40mNONS.:lNSNT40mNTN^.:lN^N_40mN_Nb.:lNbNc40mNcNz.:lNz! e40m! e!#O.:l!#O!#P40m!#P!#Q.:l!#Q!#]40m!#]!%W.:l!%W!&`40m!&`!&c.:l!&c!&d40m!&d!&v.:l!&v!&w40m!&w!'O.:l!'O!'Y40m!'Y!'i.:l!'i!'p40m!'p!'q.:l!'q!'x40m!'x!'}.:l!'}!(V40m!(V!(X.:l!(X!(Y40m!(Y!(Z40m!(Z!(].:l!(]!(s40m!(s!(t.:l!(t!({40m!({!(|.:l!(|!(}40m!(}!)Q.:l!)Q!)U40m!)U!)X.:l!)X!)Y40m!)Y!)j.:l!)j!)k40m!)k!)x.:l!)x!)y40m!)y!)z40m!)z!){.:l!){!*O40m!*O!*^.:l!*^!*_40m!*_!*`40m!*`!*s.:l!*s!*y40m!*y!*}.:l!*}!+O40m!+O!+P40m!+P!+R.:l!+R!+i40m!+i!+j.:l!+j!+q40m!+q!+r.:l!+r!+s40m!+s!+t40m!+t!+u.:l!+u!+v40m!+v!+w40m!+w!+x.:l!+x!+y40m!+y!+z40m!+z!,k.:l!,k!,o40m!,o!,p.:l!,p!,q40m!,q!-U.:l!-U!-X40m!-X!-i.:l!-i!-r40m!-r!-s.:l!-s!-v40m!-v!-w.:l!-w!._40m!._!.`.:l!.`!.g40m!.g!.h.:l!.h!.i40m!.i!.j40m!.j!.k.:l!.k!.p40m!.p!.s.:l!.s!.t40m!.t!/W.:l!/W!/X40m!/X!/h.:l!/h!/i40m!/i!/j40m!/j!0_.:l!0_!0g40m!0g!0i.:l!0i!0j40m!0j!0k40m!0k!0m.:l!0m!1T40m!1T!1U.:l!1U!1]40m!1]!1^.:l!1^!1_40m!1_!1`40m!1`!1a.:l!1a!1f40m!1f!1i.:l!1i!1j40m!1j!2Y.:l!2Y!2Z40m!2Z!2[40m!2[!2].:l!2]!2`40m!2`!2o.:l!2o!2p40m!2p!3R.:l!3R!3S40m!3S!3T.:l!3T!3Z40m!3Z!3^.:l!3^!3a40m!3a!3b.:l!3b!3f40m!3f!3i.:l!3i!3j40m!3j!3k40m!3k!3l.:l!3l!3m40m!3m!3n.:l!3n!3o40m!3o!3p40m!3p!3s.:l!3s!3t40m!3t!3u40m!3u!3x.:l!3x!3{40m!3{!4O.:l!4O!4[40m!4[!4r.:l!4r!4s40m!4s!5y.:l!5y!6R40m!6R!6S.:l!6S!6V40m!6V!6W.:l!6W!6o40m!6o!6p.:l!6p!6z40m!6z!6{.:l!6{!7Q40m!7Q!7T.:l!7T!7U40m!7U!7p.:l!7p!7q40m!7q!7r40m!7r!7x.:l!7x!7y40m!7y!7z40m!7z!8o.:l!8o!8w40m!8w!8x.:l!8x!8{40m!8{!8|.:l!8|!9e40m!9e!9f.:l!9f!9p40m!9p!9q.:l!9q!9v40m!9v!9y.:l!9y!9z40m!9z!:l.:l!:l!:m40m!:m!:n.:l!:n!:o40m!:o!:p40m!:p!;P.:l!;P!;Q40m!;Q!;R40m!;R!;e.:l!;e!;m40m!;m!;n.:l!;n!;q40m!;q!;r.:l!;r!<m40m!<m!<o.:l!<o!<p40m!<p!=Q.:l!=Q!=R40m!=R!=d.:l!=d!=e40m!=e!=f40m!=f!>O.:l!>O!>U40m!>U!>Z.:l!>Z!>m40m!>m!>p.:l!>p!?Y40m!?Y!?Z.:l!?Z!?d40m!?d!?e.:l!?e!?f40m!?f!?h.:l!?h!?o40m!?o!@{.:l!@{!A}40m!A}!BO.:l!BO!BP40m!BP!BQ40m!BQ!B^.:l!B^!Be40m!Be!Cq.:l!Cq!Cr40m!Cr!Cs40m!Cs!Ct.:l!Ct!Cu40m!Cu!Cw.:l!Cw!Cx40m!Cx!Cy40m!Cy!Cz.:l!Cz!C{40m!C{!C}.:l!C}!DO40m!DO!DU.:l!DU!DY40m!DY!DZ.:l!DZ!Db40m!Db!Dc.:l!Dc!Df40m!Df!Dg.:l!Dg!Dh40m!Dh!Di.:l!Di!Dj40m!Dj!Dl.:l!Dl!Dm40m!Dm!Dn40m!Dn!Do.:l!Do!Ds40m!Ds!Dt.:l!Dt!Du40m!Du!Dv40m!Dv!EP.:l!EP!EQ40m!EQ!ES.:l!ES!EX40m!EX!EY.:l!EY!EZ40m!EZ!Ep.:l!Ep!Et40m!Et!Ff.:l!Ff!Fg40m!Fg!Gx.:l!Gx!HQ40m!HQ!HR.:l!HR!Hw40m!Hw!Id.:l!Id!Ii40m!Ii!LQ.:l!LQ!L}40m!L}!Mc.:l!Mc!Md40m!Md!Mt.:l!Mt!Mz40m!Mz!NO.:l!NO!NS40m!NS!NV.:l!NV!NW40m!NW!NZ.:l!NZ!N[40m!N[!N]40m!N]!Nd.:l!Nd!Ng40m!Ng!Nk.:l!Nk!Nx40m!Nx# U.:l# U# V40m# V# h.:l# h#!`40m#!`#!a.:l#!a#!b40m#!b#!g.:l#!g#!h40m#!h#!j.:l#!j##g40m##g##h.:l##h#*s40m#*s#*t.:l#*t#*x40m#*x#*z.:l#*z#+R40m#+R#+S.:l#+S#+T40m#+T#+U.:l#+U#+Y40m#+Y#+[.:l#+[#,V40m#,V#,W.:l#,W#,[40m#,[#,^.:l#,^#-P40m#-P#-Q.:l#-Q#-U40m#-U#-W.:l#-W#-_40m#-_#-`.:l#-`#-a40m#-a#-b.:l#-b#-f40m#-f#-h.:l#-h#-w40m#-w#-x.:l#-x#/T40m#/T#/U.:l#/U#/Y40m#/Y#/[.:l#/[#0q40m#0q#1h.:l#1h#1x40m#1x#2Y.:l#2Y#4R40m#4R#4_.:l#4_#Au40m#Au#Aw.:l#Aw#BY40m#BY#BZ.:l#BZ#Bu40m#Bu#Bz.:l#Bz#Di40m#Di#EO.:l#EO#E]40m#E]#E^.:l#E^#Eb40m#Eb#Ep.:l#Ep#FS40m#FS#Fb.:l#Fb#Ft40m#Ft#GS.:l#GS#Ga40m#Ga#Gb.:l#Gb#Ge40m#Ge#Gt.:l#Gt#Hz40m#Hz#Io.:l#Io#Ip40m#Ip#It.:l#It#Iu40m#Iu#K[.:l#K[#MW40m#MW#M`.:l#M`#NZ40m#NZ#N[.:l#N[#N]40m#N]#Nb.:l#Nb$ z40m$ z$!U.:l$!U$!s40m$!s$#x.:l$#x$$h40m$$h$$j.:l$$j$$o40m$$o$$z.:l$$z$%x40m$%x$&_.:l$&_$&f40m$&f$'p.:l$'p$(X40m$(X$(b.:l$(b$)i40m$)i$+_.:l$+_$+`40m$+`$-a.:l$-a$.b40m$.b$.s.:l$.s$.z40m$.z$0T.:l$0T$0s40m$0s$1Q.:l$1Q$1R40m$1R$1S40m$1S$1^.:l$1^$2[40m$2[$2v.:l$2v$3l40m$3l$4g.:l$4g$4j40m$4j$4t.:l$4t$5j40m$5j$7y.:l$7y$7}40m$7}$8O.:l$8O$8S40m$8S$8V.:l$8V$8W40m$8W$8X40m$8X$8b.:l$8b$<j40m$<j$=|.:l$=|$DO40m$DO$DQ.:l$DQ$DW40m$DW$DY.:l$DY$EQ40m$EQ$ES.:l$ES$EY40m$EY$E[.:l$E[$Ed40m$Ed$Ee.:l$Ee$Ef40m$Ef$Eg.:l$Eg$Eh40m$Eh$Ei.:l$Ei$Ej40m$Ej$Ek.:l$Ek$F[40m$F[$F^.:l$F^$Ge40m$Ge$Gf.:l$Gf$Gm40m$Gm$Gn.:l$Gn$Go40m$Go$Gr.:l$Gr$Gu40m$Gu$Gv.:l$Gv$G}40m$G}$HQ.:l$HQ$HU40m$HU$HW.:l$HW$H^40m$H^$Hb.:l$Hb$Ho40m$Ho$Ht.:l$Ht$Hw40m$Hw$Hx.:l$Hx$IP40m$IP$Ki.:l$Ki$Kj40m$Kj$Kw.:l$Kw$Kx40m$Kx$LY.:l$LY$Lg40m$Lg$Np.:l$Np$Nq40m$Nq$Nu.:l$Nu$Nv40m$Nv$Nx.:l$Nx% S40m% S% T.:l% T% U40m% U% X.:l% X% ^40m% ^% d.:l% d% e40m% e% f.:l% f% g40m% g% h.:l% h% i40m% i% j.:l% j% n40m% n% o.:l% o% z40m% z% |.:l% |%!Q40m%!Q%!V.:l%!V%![40m%![%!`.:l%!`%!a40m%!a%#g.:l%#g%#h40m%#h%#i40m%#i&/x.:l&/x&0y40m&0y&0z.:l&0z&1{40m&1{&1|.:l&1|&4w40m&4w&4}.:l&4}&5R40m&5R&5U.:l&5U&5V40m&5V&5W40m&5W&5d.:l&5d&6[40m&6[&6].:l&6]&6^40m&6^&6c.:l&6c&6d40m&6d&6f.:l&6f&7p40m&7p&7w.:l&7w&7x40m&7x&8Y.:l&8Y&8q40m&8q&8z.:l&8z&9R40m&9R&9S.:l&9S&9Z40m&9Z&9[.:l&9[&9c40m&9c&9d.:l&9d&9k40m&9k&9l.:l&9l&9s40m&9s&9t.:l&9t&9{40m&9{&9|.:l&9|&:T40m&:T&:U.:l&:U&:]40m&:]&<P.:l&<P&<Q40m&<Q&FZ.:l&FZ&F[40m&F[&F]40m&F]&GX.:l&GX&G^40m&G^&Gc.:l&Gc&Gd40m&Gd&Ge40m&Ge&Gi.:l&Gi&Ic40m&Ic&Ii.:l&Ii&Il40m&Il&Im.:l&Im&Kk40m&Kk&Kl.:l&Kl&Kp40m&Kp&Ku.:l&Ku&Lp40m&Lp&Ls.:l&Ls&Nu40m&Nu' W.:l' W' s40m' s'!z.:l'!z'#[40m'#['.b.:l'.b*3f40m*3f*5S.:l*5S40_40m40_41d.:l41d4Js40m4Js4LY.:l4LY4MY40m4MY4M[.:l4M[5%T40m5%T5%W.:l5%W5%h40m5%h5%r.:l5%r5%s40m5%s5%t40m5%t5&Y.:l5&Y5'Z40m5'Z5'k.:l5'k5(U40m5(U5(^.:l5(^5)v40m5)v5*y.:l5*y5+S40m5+S5+U.:l5+U5-a40m5-a5-c.:l5-c5-g40m5-g5-h.:l5-h5-l40m5-l5-x.:l5-x5.T40m5.T5/t.:l5/t50O40m50O50P.:l50P50S40m50S50T.:l50T50X40m50X50Y.:l50Y50q40m50q51`.:l51`52f40m52f52t.:l52t53x40m53x55Y.:l55Y55`40m55`55c.:l55c55d40m55d55r.:l55r56`40m56`56j.:l56j57R40m57R57l.:l57l58Z40m58Z58b.:l58b59c40m59c5:P.:l5:P5:Q40m5:Q5;S.:l5;S5;}40m5;}5<f.:l5<f5<i40m5<i5<j.:l5<j5<r40m5<r5=W.:l5=W5=o40m5=o5=r.:l5=r5=s40m5=s5=x.:l5=x5>z40m5>z5>{.:l5>{5>|40m5>|5?P.:l5?P5?Q40m5?Q5?R40m5?R5?T.:l5?T5?Y40m5?Y5?[.:l5?[5?]40m5?]5?^.:l5?^5?_40m5?_5?w.:l5?w5?z40m5?z5?|.:l5?|5@X40m5@X5@`.:l5@`5@c40m5@c5@o.:l5@o5@u40m5@u5@w.:l5@w5@}40m5@}5AP.:l5AP5AV40m5AV5A`.:l5A`5Ag40m5Ag5Ah.:l5Ah5Ao40m5Ao5Dv.:l5Dv5Ek40m5Ek5FY.:l5FY;%S40m;%S;%`.:l;%`;%w40m;%w;%{.:l;%{;'O40m;'O;'S.:l;'S;=`.;Y<%l?&r.:l?&r?.p40m?.p?.r.:l?.r?1Q40m?1Q?1x.:l?1x?2P40m?2P?2].:l?2]?2b40m?2b?2g.:l?2g?2h40m?2h?2i.:l?2i?2s40m?2s?2t.:l?2t?3R40m?3R?3S.:l?3S?3X40m?3X?3Y.:l?3Y?3Z40m?3Z?3[.:l?3[?3]40m?3]?3^40m?3^?3_.:l?3_?3`40m?3`?3a40m?3a?3b.:l?3b?5r40m?5r?6e.:l?6e?>`40m?>`?>r.:l?>r?@U40m?@U?@W.:l?@W?A`40m?A`?BY.:l?BY?Bf40m?Bf?EO.:l?EO?ET40m?ET?EU.:l?EU?HR40m?HR?Hw.:l?Hw?Ic40m?Ic?Ii.:l?Ii?JT40m?JT?J`.:l?J`?L]40m?L]?L`.:l?L`?Lf40m?Lf?Lh.:l?Lh?Ln40m?Ln?Lp.:l?Lp?Lv40m?Lv?Lx.:l?Lx?L{40m?L{O.:l!X57p2i|SzQS!RmPOY.;fYZ!-iZq.;fqr57ers2!{st57etu57euv57evw57ewx40mxz.;fz{57e{|57e|!O.;f!O!P57e!P!Q57e!Q![57e![!a.;f!a!b57e!b!c.;f!c!}57e!}#O.;f#O#P57e#P#R.;f#R#S57e#S#T57e#T#o57e#o$p.;f$p$q57e$q${.;f${$|57e$|%Q.;f%Q%R57e%R%W.;f%W%o57e%o%p.;f%p&a57e&a&b.;f&b0`57e0`0d.;f0d0p57e0p1O.;f1O1T57e1T1[.;f1[1]57e1]1^.;f1^1_57e1_4U.;f4U4Z57e4Z4[.;f4[4]57e4]4^57e4^4`.;f4`4d57e4d4l.;f4l4m57e4m4n.;f4n4q57e4q4r.;f4r4s57e4s4t.;f4t5Y57e5Y5Z.;f5Z7Q57e7Q7R.;f7R:S57e:S:[.;f:[=p57e=p=y.;f=y>q57e>q>s.;f>s>t57e>t>{.;f>{?t57e?tA`.;fA`A{57eA{BQ.;fBQBT57eBTCS.;fCSDP57eDPDt.;fDtDu57eDuDv57eDvDw.;fDwGO57eGOGP.;fGPGQ57eGQGa.;fGaGb57eGbGc57eGcGj.;fGjGk57eGkGl57eGlGv.;fGvGy57eGyG{.;fG{G|57eG|H^.;fH^H_57eH_H`.;fH`IO57eIOIm.;fImKj57eKjKu.;fKuKv57eKvL`.;fL`MR57eMRM[.;fM[M]57eM]M^57eM^Mb.;fMbMc57eMcMh.;fMhNO57eNONS.;fNSNT57eNTN^.;fN^N_57eN_Nb.;fNbNc57eNcNz.;fNz! e57e! e!#O.;f!#O!#P57e!#P!#Q.;f!#Q!#]57e!#]!%W.;f!%W!&`57e!&`!&c.;f!&c!&d57e!&d!&v.;f!&v!&w57e!&w!'O.;f!'O!'Y57e!'Y!'i.;f!'i!'p57e!'p!'q.;f!'q!'x57e!'x!'}.;f!'}!(V57e!(V!(X.;f!(X!(Y57e!(Y!(Z57e!(Z!(].;f!(]!(s57e!(s!(t.;f!(t!({57e!({!(|.;f!(|!(}57e!(}!)Q.;f!)Q!)U57e!)U!)X.;f!)X!)Y57e!)Y!)j.;f!)j!)k57e!)k!)x.;f!)x!)y57e!)y!)z57e!)z!){.;f!){!*O57e!*O!*^.;f!*^!*_57e!*_!*`57e!*`!*s.;f!*s!*y57e!*y!*}.;f!*}!+O57e!+O!+P57e!+P!+R.;f!+R!+i57e!+i!+j.;f!+j!+q57e!+q!+r.;f!+r!+s57e!+s!+t57e!+t!+u.;f!+u!+v57e!+v!+w57e!+w!+x.;f!+x!+y57e!+y!+z57e!+z!,k.;f!,k!,o57e!,o!,p.;f!,p!,q57e!,q!-U.;f!-U!-X57e!-X!-i.;f!-i!-r57e!-r!-s.;f!-s!-v57e!-v!-w.;f!-w!._57e!._!.`.;f!.`!.g57e!.g!.h.;f!.h!.i57e!.i!.j57e!.j!.k.;f!.k!.p57e!.p!.s.;f!.s!.t57e!.t!/W.;f!/W!/X57e!/X!/h.;f!/h!/i57e!/i!/j57e!/j!0_.;f!0_!0g57e!0g!0i.;f!0i!0j57e!0j!0k57e!0k!0m.;f!0m!1T57e!1T!1U.;f!1U!1]57e!1]!1^.;f!1^!1_57e!1_!1`57e!1`!1a.;f!1a!1f57e!1f!1i.;f!1i!1j57e!1j!2Y.;f!2Y!2Z57e!2Z!2[57e!2[!2].;f!2]!2`57e!2`!2o.;f!2o!2p57e!2p!3R.;f!3R!3S57e!3S!3T.;f!3T!3Z57e!3Z!3^.;f!3^!3a57e!3a!3b.;f!3b!3f57e!3f!3i.;f!3i!3j57e!3j!3k57e!3k!3l.;f!3l!3m57e!3m!3n.;f!3n!3o57e!3o!3p57e!3p!3s.;f!3s!3t57e!3t!3u57e!3u!3x.;f!3x!3{57e!3{!4O.;f!4O!4[57e!4[!4r.;f!4r!4s57e!4s!5y.;f!5y!6R57e!6R!6S.;f!6S!6V57e!6V!6W.;f!6W!6o57e!6o!6p.;f!6p!6z57e!6z!6{.;f!6{!7Q57e!7Q!7T.;f!7T!7U57e!7U!7p.;f!7p!7q57e!7q!7r57e!7r!7x.;f!7x!7y57e!7y!7z57e!7z!8o.;f!8o!8w57e!8w!8x.;f!8x!8{57e!8{!8|.;f!8|!9e57e!9e!9f.;f!9f!9p57e!9p!9q.;f!9q!9v57e!9v!9y.;f!9y!9z57e!9z!:l.;f!:l!:m57e!:m!:n.;f!:n!:o57e!:o!:p57e!:p!;P.;f!;P!;Q57e!;Q!;R57e!;R!;e.;f!;e!;m57e!;m!;n.;f!;n!;q57e!;q!;r.;f!;r!<m57e!<m!<o.;f!<o!<p57e!<p!=Q.;f!=Q!=R57e!=R!=d.;f!=d!=e57e!=e!=f57e!=f!>O.;f!>O!>U57e!>U!>Z.;f!>Z!>m57e!>m!>p.;f!>p!?Y57e!?Y!?Z.;f!?Z!?d57e!?d!?e.;f!?e!?f57e!?f!?h.;f!?h!?o57e!?o!@{.;f!@{!A}57e!A}!BO.;f!BO!BP57e!BP!BQ57e!BQ!B^.;f!B^!Be57e!Be!Cq.;f!Cq!Cr57e!Cr!Cs57e!Cs!Ct.;f!Ct!Cu57e!Cu!Cw.;f!Cw!Cx57e!Cx!Cy57e!Cy!Cz.;f!Cz!C{57e!C{!C}.;f!C}!DO57e!DO!DU.;f!DU!DY57e!DY!DZ.;f!DZ!Db57e!Db!Dc.;f!Dc!Df57e!Df!Dg.;f!Dg!Dh57e!Dh!Di.;f!Di!Dj57e!Dj!Dl.;f!Dl!Dm57e!Dm!Dn57e!Dn!Do.;f!Do!Ds57e!Ds!Dt.;f!Dt!Du57e!Du!Dv57e!Dv!EP.;f!EP!EQ57e!EQ!ES.;f!ES!EX57e!EX!EY.;f!EY!EZ57e!EZ!Ep.;f!Ep!Et57e!Et!Ff.;f!Ff!Fg57e!Fg!Gx.;f!Gx!HQ57e!HQ!HR.;f!HR!Hw57e!Hw!Id.;f!Id!Ii57e!Ii!LQ.;f!LQ!L}57e!L}!Mc.;f!Mc!Md57e!Md!Mt.;f!Mt!Mz57e!Mz!NO.;f!NO!NS57e!NS!NV.;f!NV!NW57e!NW!NZ.;f!NZ!N[57e!N[!N]57e!N]!Nd.;f!Nd!Ng57e!Ng!Nk.;f!Nk!Nx57e!Nx# U.;f# U# V57e# V# h.;f# h#!`57e#!`#!a.;f#!a#!b57e#!b#!g.;f#!g#!h57e#!h#!j.;f#!j##g57e##g##h.;f##h#*s57e#*s#*t.;f#*t#*x57e#*x#*z.;f#*z#+R57e#+R#+S.;f#+S#+T57e#+T#+U.;f#+U#+Y57e#+Y#+[.;f#+[#,V57e#,V#,W.;f#,W#,[57e#,[#,^.;f#,^#-P57e#-P#-Q.;f#-Q#-U57e#-U#-W.;f#-W#-_57e#-_#-`.;f#-`#-a57e#-a#-b.;f#-b#-f57e#-f#-h.;f#-h#-w57e#-w#-x.;f#-x#/T57e#/T#/U.;f#/U#/Y57e#/Y#/[.;f#/[#0q57e#0q#1h.;f#1h#1x57e#1x#2Y.;f#2Y#4R57e#4R#4_.;f#4_#Au57e#Au#Aw.;f#Aw#BY57e#BY#BZ.;f#BZ#Bu57e#Bu#Bz.;f#Bz#Di57e#Di#EO.;f#EO#E]57e#E]#E^.;f#E^#Eb57e#Eb#Ep.;f#Ep#FS57e#FS#Fb.;f#Fb#Ft57e#Ft#GS.;f#GS#Ga57e#Ga#Gb.;f#Gb#Ge57e#Ge#Gt.;f#Gt#Hz57e#Hz#Io.;f#Io#Ip57e#Ip#It.;f#It#Iu57e#Iu#K[.;f#K[#MW57e#MW#M`.;f#M`#NZ57e#NZ#N[.;f#N[#N]57e#N]#Nb.;f#Nb$ z57e$ z$!U.;f$!U$!s57e$!s$#x.;f$#x$$h57e$$h$$j.;f$$j$$o57e$$o$$z.;f$$z$%x57e$%x$&_.;f$&_$&f57e$&f$'p.;f$'p$(X57e$(X$(b.;f$(b$)i57e$)i$+_.;f$+_$+`57e$+`$-a.;f$-a$.b57e$.b$.s.;f$.s$.z57e$.z$0T.;f$0T$0s57e$0s$1Q.;f$1Q$1R57e$1R$1S57e$1S$1^.;f$1^$2[57e$2[$2v.;f$2v$3l57e$3l$4g.;f$4g$4j57e$4j$4t.;f$4t$5j57e$5j$7y.;f$7y$7}57e$7}$8O.;f$8O$8S57e$8S$8V.;f$8V$8W57e$8W$8X57e$8X$8b.;f$8b$<j57e$<j$=|.;f$=|$DO57e$DO$DQ.;f$DQ$DW57e$DW$DY.;f$DY$EQ57e$EQ$ES.;f$ES$EY57e$EY$E[.;f$E[$Ed57e$Ed$Ee.;f$Ee$Ef57e$Ef$Eg.;f$Eg$Eh57e$Eh$Ei.;f$Ei$Ej57e$Ej$Ek.;f$Ek$F[57e$F[$F^.;f$F^$Ge57e$Ge$Gf.;f$Gf$Gm57e$Gm$Gn.;f$Gn$Go57e$Go$Gr.;f$Gr$Gu57e$Gu$Gv.;f$Gv$G}57e$G}$HQ.;f$HQ$HU57e$HU$HW.;f$HW$H^57e$H^$Hb.;f$Hb$Ho57e$Ho$Ht.;f$Ht$Hw57e$Hw$Hx.;f$Hx$IP57e$IP$Ki.;f$Ki$Kj57e$Kj$Kw.;f$Kw$Kx57e$Kx$LY.;f$LY$Lg57e$Lg$Np.;f$Np$Nq57e$Nq$Nu.;f$Nu$Nv57e$Nv$Nx.;f$Nx% S57e% S% T.;f% T% U57e% U% X.;f% X% ^57e% ^% d.;f% d% e57e% e% f.;f% f% g57e% g% h.;f% h% i57e% i% j.;f% j% n57e% n% o.;f% o% z57e% z% |.;f% |%!Q57e%!Q%!V.;f%!V%![57e%![%!`.;f%!`%!a57e%!a%#g.;f%#g%#h57e%#h%#i57e%#i&/x.;f&/x&0y57e&0y&0z.;f&0z&1{57e&1{&1|.;f&1|&4w57e&4w&4}.;f&4}&5R57e&5R&5U.;f&5U&5V57e&5V&5W57e&5W&5d.;f&5d&6[57e&6[&6].;f&6]&6^57e&6^&6c.;f&6c&6d57e&6d&6f.;f&6f&7p57e&7p&7w.;f&7w&7x57e&7x&8Y.;f&8Y&8q57e&8q&8z.;f&8z&9R57e&9R&9S.;f&9S&9Z57e&9Z&9[.;f&9[&9c57e&9c&9d.;f&9d&9k57e&9k&9l.;f&9l&9s57e&9s&9t.;f&9t&9{57e&9{&9|.;f&9|&:T57e&:T&:U.;f&:U&:]57e&:]&<P.;f&<P&<Q57e&<Q&FZ.;f&FZ&F[57e&F[&F]57e&F]&GX.;f&GX&G^57e&G^&Gc.;f&Gc&Gd57e&Gd&Ge57e&Ge&Gi.;f&Gi&Ic57e&Ic&Ii.;f&Ii&Il57e&Il&Im.;f&Im&Kk57e&Kk&Kl.;f&Kl&Kp57e&Kp&Ku.;f&Ku&Lp57e&Lp&Ls.;f&Ls&Nu57e&Nu' W.;f' W' s57e' s'!z.;f'!z'#[57e'#['.b.;f'.b*3f57e*3f*5S.;f*5S40_57e40_41d.;f41d4Js57e4Js4LY.;f4LY4MY57e4MY4M[.;f4M[5%T57e5%T5%W.;f5%W5%h57e5%h5%r.;f5%r5%s57e5%s5%t57e5%t5&Y.;f5&Y5'Z57e5'Z5'k.;f5'k5(U57e5(U5(^.;f5(^5)v57e5)v5*y.;f5*y5+S57e5+S5+U.;f5+U5-a57e5-a5-c.;f5-c5-g57e5-g5-h.;f5-h5-l57e5-l5-x.;f5-x5.T57e5.T5/t.;f5/t50O57e50O50P.;f50P50S57e50S50T.;f50T50X57e50X50Y.;f50Y50q57e50q51`.;f51`52f57e52f52t.;f52t53x57e53x55Y.;f55Y55`57e55`55c.;f55c55d57e55d55r.;f55r56`57e56`56j.;f56j57R57e57R57l.;f57l58Z57e58Z58b.;f58b59c57e59c5:P.;f5:P5:Q57e5:Q5;S.;f5;S5;}57e5;}5<f.;f5<f5<i57e5<i5<j.;f5<j5<r57e5<r5=W.;f5=W5=o57e5=o5=r.;f5=r5=s57e5=s5=x.;f5=x5>z57e5>z5>{.;f5>{5>|57e5>|5?P.;f5?P5?Q57e5?Q5?R57e5?R5?T.;f5?T5?Y57e5?Y5?[.;f5?[5?]57e5?]5?^.;f5?^5?_57e5?_5?w.;f5?w5?z57e5?z5?|.;f5?|5@X57e5@X5@`.;f5@`5@c57e5@c5@o.;f5@o5@u57e5@u5@w.;f5@w5@}57e5@}5AP.;f5AP5AV57e5AV5A`.;f5A`5Ag57e5Ag5Ah.;f5Ah5Ao57e5Ao5Dv.;f5Dv5Ek57e5Ek5FY.;f5FY;%S57e;%S;%`.;f;%`;%w57e;%w;%{.;f;%{;'O57e;'O;'S.;f;'S;=`.<[<%l?&r.;f?&r?.p57e?.p?.r.;f?.r?1Q57e?1Q?1x.;f?1x?2P57e?2P?2].;f?2]?2b57e?2b?2g.;f?2g?2h57e?2h?2i.;f?2i?2s57e?2s?2t.;f?2t?3R57e?3R?3S.;f?3S?3X57e?3X?3Y.;f?3Y?3Z57e?3Z?3[.;f?3[?3]57e?3]?3^57e?3^?3_.;f?3_?3`57e?3`?3a57e?3a?3b.;f?3b?5r57e?5r?6e.;f?6e?>`57e?>`?>r.;f?>r?@U57e?@U?@W.;f?@W?A`57e?A`?BY.;f?BY?Bf57e?Bf?EO.;f?EO?ET57e?ET?EU.;f?EU?HR57e?HR?Hw.;f?Hw?Ic57e?Ic?Ii.;f?Ii?JT57e?JT?J`.;f?J`?L]57e?L]?L`.;f?L`?Lf57e?Lf?Lh.;f?Lh?Ln57e?Ln?Lp.;f?Lp?Lv57e?Lv?Lx.;f?Lx?L{57e?L{O.;f_6>l2g!OW|SzQ!kPmPOq!)tqr!2wrs#9kst!2wtu!2wuv!2wvw!2wwx';ixz!)tz{!2w{|!2w|!O!)t!O!P!2w!P!Q!2w!Q![!2w![!a!)t!a!b!2w!b!c!)t!c!}!2w!}#O!)t#O#P!2w#P#R!)t#R#S!2w#S#T)Hy#T#o!2w#o$p!)t$p$q!2w$q${!)t${$|!2w$|%Q!)t%Q%R!2w%R%W!)t%W%o!2w%o%p!)t%p&a!2w&a&b!)t&b0`!2w0`0d!)t0d0p!2w0p1O!)t1O1T!2w1T1[!)t1[1]!2w1]1^!)t1^1_!2w1_4U!)t4U4Z!2w4Z4[!)t4[4]!2w4]4^!2w4^4`!)t4`4d!2w4d4l!)t4l4m!2w4m4n!)t4n4q!2w4q4r!)t4r4s!2w4s4t!)t4t5Y!2w5Y5Z!)t5Z7Q!2w7Q7R!)t7R:S!2w:S:[!)t:[=p!2w=p=y!)t=y>q!2w>q>s!)t>s>t!2w>t>{!)t>{?t!2w?tA`!)tA`A{!2wA{BQ!)tBQBT!2wBTCS!)tCSDP!2wDPDt!)tDtDu!2wDuDv!2wDvDw!)tDwGO!2wGOGP!)tGPGQ!2wGQGa!)tGaGb!2wGbGc!2wGcGj!)tGjGk!2wGkGl!2wGlGv!)tGvGy!2wGyG{!)tG{G|!2wG|H^!)tH^H_!2wH_H`!)tH`IO!2wIOIm!)tImKj!2wKjKu!)tKuKv!2wKvL`!)tL`MR!2wMRM[!)tM[M]!2wM]M^!2wM^Mb!)tMbMc!2wMcMh!)tMhNO!2wNONS!)tNSNT!2wNTN^!)tN^N_!2wN_Nb!)tNbNc!2wNcNz!)tNz! e!2w! e!#O!)t!#O!#P!2w!#P!#Q!)t!#Q!#]!2w!#]!%W!)t!%W!&`!2w!&`!&c!)t!&c!&d!2w!&d!&v!)t!&v!&w!2w!&w!'O!)t!'O!'Y!2w!'Y!'i!)t!'i!'p!2w!'p!'q!)t!'q!'x!2w!'x!'}!)t!'}!(V!2w!(V!(X!)t!(X!(Y!2w!(Y!(Z!2w!(Z!(]!)t!(]!(s!2w!(s!(t!)t!(t!({!2w!({!(|!)t!(|!(}!2w!(}!)Q!)t!)Q!)U!2w!)U!)X!)t!)X!)Y!2w!)Y!)j!)t!)j!)k!2w!)k!)x!)t!)x!)y!2w!)y!)z!2w!)z!){!)t!){!*O!2w!*O!*^!)t!*^!*_!2w!*_!*`!2w!*`!*s!)t!*s!*y!2w!*y!*}!)t!*}!+O!2w!+O!+P!2w!+P!+R!)t!+R!+i!2w!+i!+j!)t!+j!+q!2w!+q!+r!)t!+r!+s!2w!+s!+t!2w!+t!+u!)t!+u!+v!2w!+v!+w!2w!+w!+x!)t!+x!+y!2w!+y!+z!2w!+z!,k!)t!,k!,o!2w!,o!,p!)t!,p!,q!2w!,q!-U!)t!-U!-X!2w!-X!-i!)t!-i!-r!2w!-r!-s!)t!-s!-v!2w!-v!-w!)t!-w!._!2w!._!.`!)t!.`!.g!2w!.g!.h!)t!.h!.i!2w!.i!.j!2w!.j!.k!)t!.k!.p!2w!.p!.s!)t!.s!.t!2w!.t!/W!)t!/W!/X!2w!/X!/h!)t!/h!/i!2w!/i!/j!2w!/j!0_!)t!0_!0g!2w!0g!0i!)t!0i!0j!2w!0j!0k!2w!0k!0m!)t!0m!1T!2w!1T!1U!)t!1U!1]!2w!1]!1^!)t!1^!1_!2w!1_!1`!2w!1`!1a!)t!1a!1f!2w!1f!1i!)t!1i!1j!2w!1j!2Y!)t!2Y!2Z!2w!2Z!2[!2w!2[!2]!)t!2]!2`!2w!2`!2o!)t!2o!2p!2w!2p!3R!)t!3R!3S!2w!3S!3T!)t!3T!3Z!2w!3Z!3^!)t!3^!3a!2w!3a!3b!)t!3b!3f!2w!3f!3i!)t!3i!3j!2w!3j!3k!2w!3k!3l!)t!3l!3m!2w!3m!3n!)t!3n!3o!2w!3o!3p!2w!3p!3s!)t!3s!3t!2w!3t!3u!2w!3u!3x!)t!3x!3{!2w!3{!4O!)t!4O!4[!2w!4[!4r!)t!4r!4s!2w!4s!5y!)t!5y!6R!2w!6R!6S!)t!6S!6V!2w!6V!6W!)t!6W!6o!2w!6o!6p!)t!6p!6z!2w!6z!6{!)t!6{!7Q!2w!7Q!7T!)t!7T!7U!2w!7U!7p!)t!7p!7q!2w!7q!7r!2w!7r!7x!)t!7x!7y!2w!7y!7z!2w!7z!8o!)t!8o!8w!2w!8w!8x!)t!8x!8{!2w!8{!8|!)t!8|!9e!2w!9e!9f!)t!9f!9p!2w!9p!9q!)t!9q!9v!2w!9v!9y!)t!9y!9z!2w!9z!:l!)t!:l!:m!2w!:m!:n!)t!:n!:o!2w!:o!:p!2w!:p!;P!)t!;P!;Q!2w!;Q!;R!2w!;R!;e!)t!;e!;m!2w!;m!;n!)t!;n!;q!2w!;q!;r!)t!;r!<m!2w!<m!<o!)t!<o!<p!2w!<p!=Q!)t!=Q!=R!2w!=R!=d!)t!=d!=e!2w!=e!=f!2w!=f!>O!)t!>O!>U!2w!>U!>Z!)t!>Z!>m!2w!>m!>p!)t!>p!?Y!2w!?Y!?Z!)t!?Z!?d!2w!?d!?e!)t!?e!?f!2w!?f!?h!)t!?h!?o!2w!?o!@{!)t!@{!A}!2w!A}!BO!)t!BO!BP!2w!BP!BQ!2w!BQ!B^!)t!B^!Be!2w!Be!Cq!)t!Cq!Cr!2w!Cr!Cs!2w!Cs!Ct!)t!Ct!Cu!2w!Cu!Cw!)t!Cw!Cx!2w!Cx!Cy!2w!Cy!Cz!)t!Cz!C{!2w!C{!C}!)t!C}!DO!2w!DO!DU!)t!DU!DY!2w!DY!DZ!)t!DZ!Db!2w!Db!Dc!)t!Dc!Df!2w!Df!Dg!)t!Dg!Dh!2w!Dh!Di!)t!Di!Dj!2w!Dj!Dl!)t!Dl!Dm!2w!Dm!Dn!2w!Dn!Do!)t!Do!Ds!2w!Ds!Dt!)t!Dt!Du!2w!Du!Dv!2w!Dv!EP!)t!EP!EQ!2w!EQ!ES!)t!ES!EX!2w!EX!EY!)t!EY!EZ!2w!EZ!Ep!)t!Ep!Et!2w!Et!Ff!)t!Ff!Fg!2w!Fg!Gx!)t!Gx!HQ!2w!HQ!HR!)t!HR!Hw!2w!Hw!Id!)t!Id!Ii!2w!Ii!LQ!)t!LQ!L}!2w!L}!Mc!)t!Mc!Md!2w!Md!Mt!)t!Mt!Mz!2w!Mz!NO!)t!NO!NS!2w!NS!NV!)t!NV!NW!2w!NW!NZ!)t!NZ!N[!2w!N[!N]!2w!N]!Nd!)t!Nd!Ng!2w!Ng!Nk!)t!Nk!Nx!2w!Nx# U!)t# U# V!2w# V# h!)t# h#!`!2w#!`#!a!)t#!a#!b!2w#!b#!g!)t#!g#!h!2w#!h#!j!)t#!j##g!2w##g##h!)t##h#*s!2w#*s#*t!)t#*t#*x!2w#*x#*z!)t#*z#+R!2w#+R#+S!)t#+S#+T!2w#+T#+U!)t#+U#+Y!2w#+Y#+[!)t#+[#,V!2w#,V#,W!)t#,W#,[!2w#,[#,^!)t#,^#-P!2w#-P#-Q!)t#-Q#-U!2w#-U#-W!)t#-W#-_!2w#-_#-`!)t#-`#-a!2w#-a#-b!)t#-b#-f!2w#-f#-h!)t#-h#-w!2w#-w#-x!)t#-x#/T!2w#/T#/U!)t#/U#/Y!2w#/Y#/[!)t#/[#0q!2w#0q#1h!)t#1h#1x!2w#1x#2Y!)t#2Y#4R!2w#4R#4_!)t#4_#Au!2w#Au#Aw!)t#Aw#BY!2w#BY#BZ!)t#BZ#Bu!2w#Bu#Bz!)t#Bz#Di!2w#Di#EO!)t#EO#E]!2w#E]#E^!)t#E^#Eb!2w#Eb#Ep!)t#Ep#FS!2w#FS#Fb!)t#Fb#Ft!2w#Ft#GS!)t#GS#Ga!2w#Ga#Gb!)t#Gb#Ge!2w#Ge#Gt!)t#Gt#Hz!2w#Hz#Io!)t#Io#Ip!2w#Ip#It!)t#It#Iu!2w#Iu#K[!)t#K[#MW!2w#MW#M`!)t#M`#NZ!2w#NZ#N[!)t#N[#N]!2w#N]#Nb!)t#Nb$ z!2w$ z$!U!)t$!U$!s!2w$!s$#x!)t$#x$$h!2w$$h$$j!)t$$j$$o!2w$$o$$z!)t$$z$%x!2w$%x$&_!)t$&_$&f!2w$&f$'p!)t$'p$(X!2w$(X$(b!)t$(b$)i!2w$)i$+_!)t$+_$+`!2w$+`$-a!)t$-a$.b!2w$.b$.s!)t$.s$.z!2w$.z$0T!)t$0T$0s!2w$0s$1Q!)t$1Q$1R!2w$1R$1S!2w$1S$1^!)t$1^$2[!2w$2[$2v!)t$2v$3l!2w$3l$4g!)t$4g$4j!2w$4j$4t!)t$4t$5j!2w$5j$7y!)t$7y$7}!2w$7}$8O!)t$8O$8S!2w$8S$8V!)t$8V$8W!2w$8W$8X!2w$8X$8b!)t$8b$<j!2w$<j$=|!)t$=|$DO!2w$DO$DQ!)t$DQ$DW!2w$DW$DY!)t$DY$EQ!2w$EQ$ES!)t$ES$EY!2w$EY$E[!)t$E[$Ed!2w$Ed$Ee!)t$Ee$Ef!2w$Ef$Eg!)t$Eg$Eh!2w$Eh$Ei!)t$Ei$Ej!2w$Ej$Ek!)t$Ek$F[!2w$F[$F^!)t$F^$Ge!2w$Ge$Gf!)t$Gf$Gm!2w$Gm$Gn!)t$Gn$Go!2w$Go$Gr!)t$Gr$Gu!2w$Gu$Gv!)t$Gv$G}!2w$G}$HQ!)t$HQ$HU!2w$HU$HW!)t$HW$H^!2w$H^$Hb!)t$Hb$Ho!2w$Ho$Ht!)t$Ht$Hw!2w$Hw$Hx!)t$Hx$IP!2w$IP$Ki!)t$Ki$Kj!2w$Kj$Kw!)t$Kw$Kx!2w$Kx$LY!)t$LY$Lg!2w$Lg$Np!)t$Np$Nq!2w$Nq$Nu!)t$Nu$Nv!2w$Nv$Nx!)t$Nx% S!2w% S% T!)t% T% U!2w% U% X!)t% X% ^!2w% ^% d!)t% d% e!2w% e% f!)t% f% g!2w% g% h!)t% h% i!2w% i% j!)t% j% n!2w% n% o!)t% o% z!2w% z% |!)t% |%!Q!2w%!Q%!V!)t%!V%![!2w%![%!`!)t%!`%!a!2w%!a%#g!)t%#g%#h!2w%#h%#i!2w%#i&/x!)t&/x&0y!2w&0y&0z!)t&0z&1{!2w&1{&1|!)t&1|&4w!2w&4w&4}!)t&4}&5R!2w&5R&5U!)t&5U&5V!2w&5V&5W!2w&5W&5d!)t&5d&6[!2w&6[&6]!)t&6]&6^!2w&6^&6c!)t&6c&6d!2w&6d&6f!)t&6f&7p!2w&7p&7w!)t&7w&7x!2w&7x&8Y!)t&8Y&8q!2w&8q&8z!)t&8z&9R!2w&9R&9S!)t&9S&9Z!2w&9Z&9[!)t&9[&9c!2w&9c&9d!)t&9d&9k!2w&9k&9l!)t&9l&9s!2w&9s&9t!)t&9t&9{!2w&9{&9|!)t&9|&:T!2w&:T&:U!)t&:U&:]!2w&:]&<P!)t&<P&<Q!2w&<Q&FZ!)t&FZ&F[!2w&F[&F]!2w&F]&GX!)t&GX&G^!2w&G^&Gc!)t&Gc&Gd!2w&Gd&Ge!2w&Ge&Gi!)t&Gi&Ic!2w&Ic&Ii!)t&Ii&Il!2w&Il&Im!)t&Im&Kk!2w&Kk&Kl!)t&Kl&Kp!2w&Kp&Ku!)t&Ku&Lp!2w&Lp&Ls!)t&Ls&Nu!2w&Nu' W!)t' W' s!2w' s'!z!)t'!z'#[!2w'#['.b!)t'.b*3f!2w*3f*5S!)t*5S40_!2w40_41d!)t41d4Js!2w4Js4LY!)t4LY4MY!2w4MY4M[!)t4M[5%T!2w5%T5%W!)t5%W5%h!2w5%h5%r!)t5%r5%s!2w5%s5%t!2w5%t5&Y!)t5&Y5'Z!2w5'Z5'k!)t5'k5(U!2w5(U5(^!)t5(^5)v!2w5)v5*y!)t5*y5+S!2w5+S5+U!)t5+U5-a!2w5-a5-c!)t5-c5-g!2w5-g5-h!)t5-h5-l!2w5-l5-x!)t5-x5.T!2w5.T5/t!)t5/t50O!2w50O50P!)t50P50S!2w50S50T!)t50T50X!2w50X50Y!)t50Y50q!2w50q51`!)t51`52f!2w52f52t!)t52t53x!2w53x55Y!)t55Y55`!2w55`55c!)t55c55d!2w55d55r!)t55r56`!2w56`56j!)t56j57R!2w57R57l!)t57l58Z!2w58Z58b!)t58b59c!2w59c5:P!)t5:P5:Q!2w5:Q5;S!)t5;S5;}!2w5;}5<f!)t5<f5<i!2w5<i5<j!)t5<j5<r!2w5<r5=W!)t5=W5=o!2w5=o5=r!)t5=r5=s!2w5=s5=x!)t5=x5>z!2w5>z5>{!)t5>{5>|!2w5>|5?P!)t5?P5?Q!2w5?Q5?R!2w5?R5?T!)t5?T5?Y!2w5?Y5?[!)t5?[5?]!2w5?]5?^!)t5?^5?_!2w5?_5?w!)t5?w5?z!2w5?z5?|!)t5?|5@X!2w5@X5@`!)t5@`5@c!2w5@c5@o!)t5@o5@u!2w5@u5@w!)t5@w5@}!2w5@}5AP!)t5AP5AV!2w5AV5A`!)t5A`5Ag!2w5Ag5Ah!)t5Ah5Ao!2w5Ao5Dv!)t5Dv5Ek!2w5Ek5FY!)t5FY;%S!2w;%S;%`!)t;%`;%w!2w;%w;%{!)t;%{;'O!2w;'O;'S!)t;'S;=`!.]<%l?&r!)t?&r?.p!2w?.p?.r!)t?.r?1Q!2w?1Q?1x!)t?1x?2P!2w?2P?2]!)t?2]?2b!2w?2b?2g!)t?2g?2h!2w?2h?2i!)t?2i?2s!2w?2s?2t!)t?2t?3R!2w?3R?3S!)t?3S?3X!2w?3X?3Y!)t?3Y?3Z!2w?3Z?3[!)t?3[?3]!2w?3]?3^!2w?3^?3_!)t?3_?3`!2w?3`?3a!2w?3a?3b!)t?3b?5r!2w?5r?6e!)t?6e?>`!2w?>`?>r!)t?>r?@U!2w?@U?@W!)t?@W?A`!2w?A`?BY!)t?BY?Bf!2w?Bf?EO!)t?EO?ET!2w?ET?EU!)t?EU?HR!2w?HR?Hw!)t?Hw?Ic!2w?Ic?Ii!)t?Ii?JT!2w?JT?J`!)t?J`?L]!2w?L]?L`!)t?L`?Lf!2w?Lf?Lh!)t?Lh?Ln!2w?Ln?Lp!)t?Lp?Lv!2w?Lv?Lx!)t?Lx?L{!2w?L{O!)t_7E`2g!OW|SyRmPOq!,^qr';irs$@]st';itu';iuv';ivw';iwx';ixz!,^z{';i{|';i|!O!,^!O!P';i!P!Q';i!Q![';i![!a!,^!a!b';i!b!c!,^!c!}';i!}#O!,^#O#P';i#P#R!,^#R#S';i#S#T(BZ#T#o';i#o$p!,^$p$q';i$q${!,^${$|';i$|%Q!,^%Q%R';i%R%W!,^%W%o';i%o%p!,^%p&a';i&a&b!,^&b0`';i0`0d!,^0d0p';i0p1O!,^1O1T';i1T1[!,^1[1]';i1]1^!,^1^1_';i1_4U!,^4U4Z';i4Z4[!,^4[4]';i4]4^';i4^4`!,^4`4d';i4d4l!,^4l4m';i4m4n!,^4n4q';i4q4r!,^4r4s';i4s4t!,^4t5Y';i5Y5Z!,^5Z7Q';i7Q7R!,^7R:S';i:S:[!,^:[=p';i=p=y!,^=y>q';i>q>s!,^>s>t';i>t>{!,^>{?t';i?tA`!,^A`A{';iA{BQ!,^BQBT';iBTCS!,^CSDP';iDPDt!,^DtDu';iDuDv';iDvDw!,^DwGO';iGOGP!,^GPGQ';iGQGa!,^GaGb';iGbGc';iGcGj!,^GjGk';iGkGl';iGlGv!,^GvGy';iGyG{!,^G{G|';iG|H^!,^H^H_';iH_H`!,^H`IO';iIOIm!,^ImKj';iKjKu!,^KuKv';iKvL`!,^L`MR';iMRM[!,^M[M]';iM]M^';iM^Mb!,^MbMc';iMcMh!,^MhNO';iNONS!,^NSNT';iNTN^!,^N^N_';iN_Nb!,^NbNc';iNcNz!,^Nz! e';i! e!#O!,^!#O!#P';i!#P!#Q!,^!#Q!#]';i!#]!%W!,^!%W!&`';i!&`!&c!,^!&c!&d';i!&d!&v!,^!&v!&w';i!&w!'O!,^!'O!'Y';i!'Y!'i!,^!'i!'p';i!'p!'q!,^!'q!'x';i!'x!'}!,^!'}!(V';i!(V!(X!,^!(X!(Y';i!(Y!(Z';i!(Z!(]!,^!(]!(s';i!(s!(t!,^!(t!({';i!({!(|!,^!(|!(}';i!(}!)Q!,^!)Q!)U';i!)U!)X!,^!)X!)Y';i!)Y!)j!,^!)j!)k';i!)k!)x!,^!)x!)y';i!)y!)z';i!)z!){!,^!){!*O';i!*O!*^!,^!*^!*_';i!*_!*`';i!*`!*s!,^!*s!*y';i!*y!*}!,^!*}!+O';i!+O!+P';i!+P!+R!,^!+R!+i';i!+i!+j!,^!+j!+q';i!+q!+r!,^!+r!+s';i!+s!+t';i!+t!+u!,^!+u!+v';i!+v!+w';i!+w!+x!,^!+x!+y';i!+y!+z';i!+z!,k!,^!,k!,o';i!,o!,p!,^!,p!,q';i!,q!-U!,^!-U!-X';i!-X!-i!,^!-i!-r';i!-r!-s!,^!-s!-v';i!-v!-w!,^!-w!._';i!._!.`!,^!.`!.g';i!.g!.h!,^!.h!.i';i!.i!.j';i!.j!.k!,^!.k!.p';i!.p!.s!,^!.s!.t';i!.t!/W!,^!/W!/X';i!/X!/h!,^!/h!/i';i!/i!/j';i!/j!0_!,^!0_!0g';i!0g!0i!,^!0i!0j';i!0j!0k';i!0k!0m!,^!0m!1T';i!1T!1U!,^!1U!1]';i!1]!1^!,^!1^!1_';i!1_!1`';i!1`!1a!,^!1a!1f';i!1f!1i!,^!1i!1j';i!1j!2Y!,^!2Y!2Z';i!2Z!2[';i!2[!2]!,^!2]!2`';i!2`!2o!,^!2o!2p';i!2p!3R!,^!3R!3S';i!3S!3T!,^!3T!3Z';i!3Z!3^!,^!3^!3a';i!3a!3b!,^!3b!3f';i!3f!3i!,^!3i!3j';i!3j!3k';i!3k!3l!,^!3l!3m';i!3m!3n!,^!3n!3o';i!3o!3p';i!3p!3s!,^!3s!3t';i!3t!3u';i!3u!3x!,^!3x!3{';i!3{!4O!,^!4O!4[';i!4[!4r!,^!4r!4s';i!4s!5y!,^!5y!6R';i!6R!6S!,^!6S!6V';i!6V!6W!,^!6W!6o';i!6o!6p!,^!6p!6z';i!6z!6{!,^!6{!7Q';i!7Q!7T!,^!7T!7U';i!7U!7p!,^!7p!7q';i!7q!7r';i!7r!7x!,^!7x!7y';i!7y!7z';i!7z!8o!,^!8o!8w';i!8w!8x!,^!8x!8{';i!8{!8|!,^!8|!9e';i!9e!9f!,^!9f!9p';i!9p!9q!,^!9q!9v';i!9v!9y!,^!9y!9z';i!9z!:l!,^!:l!:m';i!:m!:n!,^!:n!:o';i!:o!:p';i!:p!;P!,^!;P!;Q';i!;Q!;R';i!;R!;e!,^!;e!;m';i!;m!;n!,^!;n!;q';i!;q!;r!,^!;r!<m';i!<m!<o!,^!<o!<p';i!<p!=Q!,^!=Q!=R';i!=R!=d!,^!=d!=e';i!=e!=f';i!=f!>O!,^!>O!>U';i!>U!>Z!,^!>Z!>m';i!>m!>p!,^!>p!?Y';i!?Y!?Z!,^!?Z!?d';i!?d!?e!,^!?e!?f';i!?f!?h!,^!?h!?o';i!?o!@{!,^!@{!A}';i!A}!BO!,^!BO!BP';i!BP!BQ';i!BQ!B^!,^!B^!Be';i!Be!Cq!,^!Cq!Cr';i!Cr!Cs';i!Cs!Ct!,^!Ct!Cu';i!Cu!Cw!,^!Cw!Cx';i!Cx!Cy';i!Cy!Cz!,^!Cz!C{';i!C{!C}!,^!C}!DO';i!DO!DU!,^!DU!DY';i!DY!DZ!,^!DZ!Db';i!Db!Dc!,^!Dc!Df';i!Df!Dg!,^!Dg!Dh';i!Dh!Di!,^!Di!Dj';i!Dj!Dl!,^!Dl!Dm';i!Dm!Dn';i!Dn!Do!,^!Do!Ds';i!Ds!Dt!,^!Dt!Du';i!Du!Dv';i!Dv!EP!,^!EP!EQ';i!EQ!ES!,^!ES!EX';i!EX!EY!,^!EY!EZ';i!EZ!Ep!,^!Ep!Et';i!Et!Ff!,^!Ff!Fg';i!Fg!Gx!,^!Gx!HQ';i!HQ!HR!,^!HR!Hw';i!Hw!Id!,^!Id!Ii';i!Ii!LQ!,^!LQ!L}';i!L}!Mc!,^!Mc!Md';i!Md!Mt!,^!Mt!Mz';i!Mz!NO!,^!NO!NS';i!NS!NV!,^!NV!NW';i!NW!NZ!,^!NZ!N[';i!N[!N]';i!N]!Nd!,^!Nd!Ng';i!Ng!Nk!,^!Nk!Nx';i!Nx# U!,^# U# V';i# V# h!,^# h#!`';i#!`#!a!,^#!a#!b';i#!b#!g!,^#!g#!h';i#!h#!j!,^#!j##g';i##g##h!,^##h#*s';i#*s#*t!,^#*t#*x';i#*x#*z!,^#*z#+R';i#+R#+S!,^#+S#+T';i#+T#+U!,^#+U#+Y';i#+Y#+[!,^#+[#,V';i#,V#,W!,^#,W#,[';i#,[#,^!,^#,^#-P';i#-P#-Q!,^#-Q#-U';i#-U#-W!,^#-W#-_';i#-_#-`!,^#-`#-a';i#-a#-b!,^#-b#-f';i#-f#-h!,^#-h#-w';i#-w#-x!,^#-x#/T';i#/T#/U!,^#/U#/Y';i#/Y#/[!,^#/[#0q';i#0q#1h!,^#1h#1x';i#1x#2Y!,^#2Y#4R';i#4R#4_!,^#4_#Au';i#Au#Aw!,^#Aw#BY';i#BY#BZ!,^#BZ#Bu';i#Bu#Bz!,^#Bz#Di';i#Di#EO!,^#EO#E]';i#E]#E^!,^#E^#Eb';i#Eb#Ep!,^#Ep#FS';i#FS#Fb!,^#Fb#Ft';i#Ft#GS!,^#GS#Ga';i#Ga#Gb!,^#Gb#Ge';i#Ge#Gt!,^#Gt#Hz';i#Hz#Io!,^#Io#Ip';i#Ip#It!,^#It#Iu';i#Iu#K[!,^#K[#MW';i#MW#M`!,^#M`#NZ';i#NZ#N[!,^#N[#N]';i#N]#Nb!,^#Nb$ z';i$ z$!U!,^$!U$!s';i$!s$#x!,^$#x$$h';i$$h$$j!,^$$j$$o';i$$o$$z!,^$$z$%x';i$%x$&_!,^$&_$&f';i$&f$'p!,^$'p$(X';i$(X$(b!,^$(b$)i';i$)i$+_!,^$+_$+`';i$+`$-a!,^$-a$.b';i$.b$.s!,^$.s$.z';i$.z$0T!,^$0T$0s';i$0s$1Q!,^$1Q$1R';i$1R$1S';i$1S$1^!,^$1^$2[';i$2[$2v!,^$2v$3l';i$3l$4g!,^$4g$4j';i$4j$4t!,^$4t$5j';i$5j$7y!,^$7y$7}';i$7}$8O!,^$8O$8S';i$8S$8V!,^$8V$8W';i$8W$8X';i$8X$8b!,^$8b$<j';i$<j$=|!,^$=|$DO';i$DO$DQ!,^$DQ$DW';i$DW$DY!,^$DY$EQ';i$EQ$ES!,^$ES$EY';i$EY$E[!,^$E[$Ed';i$Ed$Ee!,^$Ee$Ef';i$Ef$Eg!,^$Eg$Eh';i$Eh$Ei!,^$Ei$Ej';i$Ej$Ek!,^$Ek$F[';i$F[$F^!,^$F^$Ge';i$Ge$Gf!,^$Gf$Gm';i$Gm$Gn!,^$Gn$Go';i$Go$Gr!,^$Gr$Gu';i$Gu$Gv!,^$Gv$G}';i$G}$HQ!,^$HQ$HU';i$HU$HW!,^$HW$H^';i$H^$Hb!,^$Hb$Ho';i$Ho$Ht!,^$Ht$Hw';i$Hw$Hx!,^$Hx$IP';i$IP$Ki!,^$Ki$Kj';i$Kj$Kw!,^$Kw$Kx';i$Kx$LY!,^$LY$Lg';i$Lg$Np!,^$Np$Nq';i$Nq$Nu!,^$Nu$Nv';i$Nv$Nx!,^$Nx% S';i% S% T!,^% T% U';i% U% X!,^% X% ^';i% ^% d!,^% d% e';i% e% f!,^% f% g';i% g% h!,^% h% i';i% i% j!,^% j% n';i% n% o!,^% o% z';i% z% |!,^% |%!Q';i%!Q%!V!,^%!V%![';i%![%!`!,^%!`%!a';i%!a%#g!,^%#g%#h';i%#h%#i';i%#i&/x!,^&/x&0y';i&0y&0z!,^&0z&1{';i&1{&1|!,^&1|&4w';i&4w&4}!,^&4}&5R';i&5R&5U!,^&5U&5V';i&5V&5W';i&5W&5d!,^&5d&6[';i&6[&6]!,^&6]&6^';i&6^&6c!,^&6c&6d';i&6d&6f!,^&6f&7p';i&7p&7w!,^&7w&7x';i&7x&8Y!,^&8Y&8q';i&8q&8z!,^&8z&9R';i&9R&9S!,^&9S&9Z';i&9Z&9[!,^&9[&9c';i&9c&9d!,^&9d&9k';i&9k&9l!,^&9l&9s';i&9s&9t!,^&9t&9{';i&9{&9|!,^&9|&:T';i&:T&:U!,^&:U&:]';i&:]&<P!,^&<P&<Q';i&<Q&FZ!,^&FZ&F[';i&F[&F]';i&F]&GX!,^&GX&G^';i&G^&Gc!,^&Gc&Gd';i&Gd&Ge';i&Ge&Gi!,^&Gi&Ic';i&Ic&Ii!,^&Ii&Il';i&Il&Im!,^&Im&Kk';i&Kk&Kl!,^&Kl&Kp';i&Kp&Ku!,^&Ku&Lp';i&Lp&Ls!,^&Ls&Nu';i&Nu' W!,^' W' s';i' s'!z!,^'!z'#[';i'#['.b!,^'.b*3f';i*3f*5S!,^*5S40_';i40_41d!,^41d4Js';i4Js4LY!,^4LY4MY';i4MY4M[!,^4M[5%T';i5%T5%W!,^5%W5%h';i5%h5%r!,^5%r5%s';i5%s5%t';i5%t5&Y!,^5&Y5'Z';i5'Z5'k!,^5'k5(U';i5(U5(^!,^5(^5)v';i5)v5*y!,^5*y5+S';i5+S5+U!,^5+U5-a';i5-a5-c!,^5-c5-g';i5-g5-h!,^5-h5-l';i5-l5-x!,^5-x5.T';i5.T5/t!,^5/t50O';i50O50P!,^50P50S';i50S50T!,^50T50X';i50X50Y!,^50Y50q';i50q51`!,^51`52f';i52f52t!,^52t53x';i53x55Y!,^55Y55`';i55`55c!,^55c55d';i55d55r!,^55r56`';i56`56j!,^56j57R';i57R57l!,^57l58Z';i58Z58b!,^58b59c';i59c5:P!,^5:P5:Q';i5:Q5;S!,^5;S5;}';i5;}5<f!,^5<f5<i';i5<i5<j!,^5<j5<r';i5<r5=W!,^5=W5=o';i5=o5=r!,^5=r5=s';i5=s5=x!,^5=x5>z';i5>z5>{!,^5>{5>|';i5>|5?P!,^5?P5?Q';i5?Q5?R';i5?R5?T!,^5?T5?Y';i5?Y5?[!,^5?[5?]';i5?]5?^!,^5?^5?_';i5?_5?w!,^5?w5?z';i5?z5?|!,^5?|5@X';i5@X5@`!,^5@`5@c';i5@c5@o!,^5@o5@u';i5@u5@w!,^5@w5@}';i5@}5AP!,^5AP5AV';i5AV5A`!,^5A`5Ag';i5Ag5Ah!,^5Ah5Ao';i5Ao5Dv!,^5Dv5Ek';i5Ek5FY!,^5FY;%S';i;%S;%`!,^;%`;%w';i;%w;%{!,^;%{;'O';i;'O;'S!,^;'S;=`!-c<%l?&r!,^?&r?.p';i?.p?.r!,^?.r?1Q';i?1Q?1x!,^?1x?2P';i?2P?2]!,^?2]?2b';i?2b?2g!,^?2g?2h';i?2h?2i!,^?2i?2s';i?2s?2t!,^?2t?3R';i?3R?3S!,^?3S?3X';i?3X?3Y!,^?3Y?3Z';i?3Z?3[!,^?3[?3]';i?3]?3^';i?3^?3_!,^?3_?3`';i?3`?3a';i?3a?3b!,^?3b?5r';i?5r?6e!,^?6e?>`';i?>`?>r!,^?>r?@U';i?@U?@W!,^?@W?A`';i?A`?BY!,^?BY?Bf';i?Bf?EO!,^?EO?ET';i?ET?EU!,^?EU?HR';i?HR?Hw!,^?Hw?Ic';i?Ic?Ii!,^?Ii?JT';i?JT?J`!,^?J`?L]';i?L]?L`!,^?L`?Lf';i?Lf?Lh!,^?Lh?Ln';i?Ln?Lp!,^?Lp?Lv';i?Lv?Lx!,^?Lx?L{';i?L{O!,^_8LS]wP!OW|SzQOr!)trs!*jsw!)twx!,^xy8L{yz8Nnz!}!)t!}#O9 f#O#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_8MWY!ZP!OW|SzQOr!)trs!*jsw!)twx!,^xy8Mvy#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_8NRX!bP!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_8NyX!vP!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_9 qX!TP!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t!a9!i]!PP!OW|SzQOr!)trs!*jsw!)twx!,^xy!)tyz9#bz#P!)t#P#Q9%W#Q#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t!`9#mZ![`!OW|SzQOr!)trs!*jsw!)twx!,^xy!)tyz9$`z#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t!O9$kX!cp!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)tn9%cX!Y`!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_9&Z[!OW|SzQ!fPOr!)trs!*jsw!)twx!,^x}!)t}!O9'P!O!P9+}!P#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_9'^a!OW|SzQ!fP]POr!)trs!*jsw!)twx!,^x}!)t}!O9(c!O!`!)t!`!a9+V!a#S!)t#S#T!-i#T#c!)t#c#d9+V#d#l!)t#l#m9+V#m;'S!)t;'S;=`!.]<%lO!)t_9(pa!OW|SzQ!fP!iPOr!)trs!*jsw!)twx!,^x}!)t}!O9)u!O!`!)t!`!a9+V!a#S!)t#S#T!-i#T#c!)t#c#d9+V#d#l!)t#l#m9+V#m;'S!)t;'S;=`!.]<%lO!)t_9*Qa!OW|SzQ!fPOr!)trs!*jsw!)twx!,^x}!)t}!O9)u!O!`!)t!`!a9+V!a#S!)t#S#T!-i#T#c!)t#c#d9+V#d#l!)t#l#m9+V#m;'S!)t;'S;=`!.]<%lO!)t_9+bX!OW|SzQ!fPOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_9,Y[!OW|SzQ!hPOr!)trs!*jsw!)twx!,^x}!)t}!O9-O!O!P9+}!P#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_9-Z_!OW|SzQ!hPOr!)trs!*jsw!)twx!,^x!`!)t!`!a9.Y!a#S!)t#S#T!-i#T#c!)t#c#d9.Y#d#l!)t#l#m9.Y#m;'S!)t;'S;=`!.]<%lO!)t_9.eX!OW|SzQ!hPOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_9/_2h!OW|SzQ!hPmPOq!)tqr!2wrs#9kst!2wtu!2wuv!2wvw!2wwx';ixz!)tz{!2w{|!2w|}!)t}!O9-O!O!P9/Q!P!Q!2w!Q![!2w![!a!)t!a!b!2w!b!c!)t!c!}!2w!}#O!)t#O#P!2w#P#R!)t#R#S!2w#S#T)Hy#T#o!2w#o$p!)t$p$q!2w$q${!)t${$|!2w$|%Q!)t%Q%R!2w%R%W!)t%W%o!2w%o%p!)t%p&a!2w&a&b!)t&b0`!2w0`0d!)t0d0p!2w0p1O!)t1O1T!2w1T1[!)t1[1]!2w1]1^!)t1^1_!2w1_4U!)t4U4Z!2w4Z4[!)t4[4]!2w4]4^!2w4^4`!)t4`4d!2w4d4l!)t4l4m!2w4m4n!)t4n4q!2w4q4r!)t4r4s!2w4s4t!)t4t5Y!2w5Y5Z!)t5Z7Q!2w7Q7R!)t7R:S!2w:S:[!)t:[=p!2w=p=y!)t=y>q!2w>q>s!)t>s>t!2w>t>{!)t>{?t!2w?tA`!)tA`A{!2wA{BQ!)tBQBT!2wBTCS!)tCSDP!2wDPDt!)tDtDu!2wDuDv!2wDvDw!)tDwGO!2wGOGP!)tGPGQ!2wGQGa!)tGaGb!2wGbGc!2wGcGj!)tGjGk!2wGkGl!2wGlGv!)tGvGy!2wGyG{!)tG{G|!2wG|H^!)tH^H_!2wH_H`!)tH`IO!2wIOIm!)tImKj!2wKjKu!)tKuKv!2wKvL`!)tL`MR!2wMRM[!)tM[M]!2wM]M^!2wM^Mb!)tMbMc!2wMcMh!)tMhNO!2wNONS!)tNSNT!2wNTN^!)tN^N_!2wN_Nb!)tNbNc!2wNcNz!)tNz! e!2w! e!#O!)t!#O!#P!2w!#P!#Q!)t!#Q!#]!2w!#]!%W!)t!%W!&`!2w!&`!&c!)t!&c!&d!2w!&d!&v!)t!&v!&w!2w!&w!'O!)t!'O!'Y!2w!'Y!'i!)t!'i!'p!2w!'p!'q!)t!'q!'x!2w!'x!'}!)t!'}!(V!2w!(V!(X!)t!(X!(Y!2w!(Y!(Z!2w!(Z!(]!)t!(]!(s!2w!(s!(t!)t!(t!({!2w!({!(|!)t!(|!(}!2w!(}!)Q!)t!)Q!)U!2w!)U!)X!)t!)X!)Y!2w!)Y!)j!)t!)j!)k!2w!)k!)x!)t!)x!)y!2w!)y!)z!2w!)z!){!)t!){!*O!2w!*O!*^!)t!*^!*_!2w!*_!*`!2w!*`!*s!)t!*s!*y!2w!*y!*}!)t!*}!+O!2w!+O!+P!2w!+P!+R!)t!+R!+i!2w!+i!+j!)t!+j!+q!2w!+q!+r!)t!+r!+s!2w!+s!+t!2w!+t!+u!)t!+u!+v!2w!+v!+w!2w!+w!+x!)t!+x!+y!2w!+y!+z!2w!+z!,k!)t!,k!,o!2w!,o!,p!)t!,p!,q!2w!,q!-U!)t!-U!-X!2w!-X!-i!)t!-i!-r!2w!-r!-s!)t!-s!-v!2w!-v!-w!)t!-w!._!2w!._!.`!)t!.`!.g!2w!.g!.h!)t!.h!.i!2w!.i!.j!2w!.j!.k!)t!.k!.p!2w!.p!.s!)t!.s!.t!2w!.t!/W!)t!/W!/X!2w!/X!/h!)t!/h!/i!2w!/i!/j!2w!/j!0_!)t!0_!0g!2w!0g!0i!)t!0i!0j!2w!0j!0k!2w!0k!0m!)t!0m!1T!2w!1T!1U!)t!1U!1]!2w!1]!1^!)t!1^!1_!2w!1_!1`!2w!1`!1a!)t!1a!1f!2w!1f!1i!)t!1i!1j!2w!1j!2Y!)t!2Y!2Z!2w!2Z!2[!2w!2[!2]!)t!2]!2`!2w!2`!2o!)t!2o!2p!2w!2p!3R!)t!3R!3S!2w!3S!3T!)t!3T!3Z!2w!3Z!3^!)t!3^!3a!2w!3a!3b!)t!3b!3f!2w!3f!3i!)t!3i!3j!2w!3j!3k!2w!3k!3l!)t!3l!3m!2w!3m!3n!)t!3n!3o!2w!3o!3p!2w!3p!3s!)t!3s!3t!2w!3t!3u!2w!3u!3x!)t!3x!3{!2w!3{!4O!)t!4O!4[!2w!4[!4r!)t!4r!4s!2w!4s!5y!)t!5y!6R!2w!6R!6S!)t!6S!6V!2w!6V!6W!)t!6W!6o!2w!6o!6p!)t!6p!6z!2w!6z!6{!)t!6{!7Q!2w!7Q!7T!)t!7T!7U!2w!7U!7p!)t!7p!7q!2w!7q!7r!2w!7r!7x!)t!7x!7y!2w!7y!7z!2w!7z!8o!)t!8o!8w!2w!8w!8x!)t!8x!8{!2w!8{!8|!)t!8|!9e!2w!9e!9f!)t!9f!9p!2w!9p!9q!)t!9q!9v!2w!9v!9y!)t!9y!9z!2w!9z!:l!)t!:l!:m!2w!:m!:n!)t!:n!:o!2w!:o!:p!2w!:p!;P!)t!;P!;Q!2w!;Q!;R!2w!;R!;e!)t!;e!;m!2w!;m!;n!)t!;n!;q!2w!;q!;r!)t!;r!<m!2w!<m!<o!)t!<o!<p!2w!<p!=Q!)t!=Q!=R!2w!=R!=d!)t!=d!=e!2w!=e!=f!2w!=f!>O!)t!>O!>U!2w!>U!>Z!)t!>Z!>m!2w!>m!>p!)t!>p!?Y!2w!?Y!?Z!)t!?Z!?d!2w!?d!?e!)t!?e!?f!2w!?f!?h!)t!?h!?o!2w!?o!@{!)t!@{!A}!2w!A}!BO!)t!BO!BP!2w!BP!BQ!2w!BQ!B^!)t!B^!Be!2w!Be!Cq!)t!Cq!Cr!2w!Cr!Cs!2w!Cs!Ct!)t!Ct!Cu!2w!Cu!Cw!)t!Cw!Cx!2w!Cx!Cy!2w!Cy!Cz!)t!Cz!C{!2w!C{!C}!)t!C}!DO!2w!DO!DU!)t!DU!DY!2w!DY!DZ!)t!DZ!Db!2w!Db!Dc!)t!Dc!Df!2w!Df!Dg!)t!Dg!Dh!2w!Dh!Di!)t!Di!Dj!2w!Dj!Dl!)t!Dl!Dm!2w!Dm!Dn!2w!Dn!Do!)t!Do!Ds!2w!Ds!Dt!)t!Dt!Du!2w!Du!Dv!2w!Dv!EP!)t!EP!EQ!2w!EQ!ES!)t!ES!EX!2w!EX!EY!)t!EY!EZ!2w!EZ!Ep!)t!Ep!Et!2w!Et!Ff!)t!Ff!Fg!2w!Fg!Gx!)t!Gx!HQ!2w!HQ!HR!)t!HR!Hw!2w!Hw!Id!)t!Id!Ii!2w!Ii!LQ!)t!LQ!L}!2w!L}!Mc!)t!Mc!Md!2w!Md!Mt!)t!Mt!Mz!2w!Mz!NO!)t!NO!NS!2w!NS!NV!)t!NV!NW!2w!NW!NZ!)t!NZ!N[!2w!N[!N]!2w!N]!Nd!)t!Nd!Ng!2w!Ng!Nk!)t!Nk!Nx!2w!Nx# U!)t# U# V!2w# V# h!)t# h#!`!2w#!`#!a!)t#!a#!b!2w#!b#!g!)t#!g#!h!2w#!h#!j!)t#!j##g!2w##g##h!)t##h#*s!2w#*s#*t!)t#*t#*x!2w#*x#*z!)t#*z#+R!2w#+R#+S!)t#+S#+T!2w#+T#+U!)t#+U#+Y!2w#+Y#+[!)t#+[#,V!2w#,V#,W!)t#,W#,[!2w#,[#,^!)t#,^#-P!2w#-P#-Q!)t#-Q#-U!2w#-U#-W!)t#-W#-_!2w#-_#-`!)t#-`#-a!2w#-a#-b!)t#-b#-f!2w#-f#-h!)t#-h#-w!2w#-w#-x!)t#-x#/T!2w#/T#/U!)t#/U#/Y!2w#/Y#/[!)t#/[#0q!2w#0q#1h!)t#1h#1x!2w#1x#2Y!)t#2Y#4R!2w#4R#4_!)t#4_#Au!2w#Au#Aw!)t#Aw#BY!2w#BY#BZ!)t#BZ#Bu!2w#Bu#Bz!)t#Bz#Di!2w#Di#EO!)t#EO#E]!2w#E]#E^!)t#E^#Eb!2w#Eb#Ep!)t#Ep#FS!2w#FS#Fb!)t#Fb#Ft!2w#Ft#GS!)t#GS#Ga!2w#Ga#Gb!)t#Gb#Ge!2w#Ge#Gt!)t#Gt#Hz!2w#Hz#Io!)t#Io#Ip!2w#Ip#It!)t#It#Iu!2w#Iu#K[!)t#K[#MW!2w#MW#M`!)t#M`#NZ!2w#NZ#N[!)t#N[#N]!2w#N]#Nb!)t#Nb$ z!2w$ z$!U!)t$!U$!s!2w$!s$#x!)t$#x$$h!2w$$h$$j!)t$$j$$o!2w$$o$$z!)t$$z$%x!2w$%x$&_!)t$&_$&f!2w$&f$'p!)t$'p$(X!2w$(X$(b!)t$(b$)i!2w$)i$+_!)t$+_$+`!2w$+`$-a!)t$-a$.b!2w$.b$.s!)t$.s$.z!2w$.z$0T!)t$0T$0s!2w$0s$1Q!)t$1Q$1R!2w$1R$1S!2w$1S$1^!)t$1^$2[!2w$2[$2v!)t$2v$3l!2w$3l$4g!)t$4g$4j!2w$4j$4t!)t$4t$5j!2w$5j$7y!)t$7y$7}!2w$7}$8O!)t$8O$8S!2w$8S$8V!)t$8V$8W!2w$8W$8X!2w$8X$8b!)t$8b$<j!2w$<j$=|!)t$=|$DO!2w$DO$DQ!)t$DQ$DW!2w$DW$DY!)t$DY$EQ!2w$EQ$ES!)t$ES$EY!2w$EY$E[!)t$E[$Ed!2w$Ed$Ee!)t$Ee$Ef!2w$Ef$Eg!)t$Eg$Eh!2w$Eh$Ei!)t$Ei$Ej!2w$Ej$Ek!)t$Ek$F[!2w$F[$F^!)t$F^$Ge!2w$Ge$Gf!)t$Gf$Gm!2w$Gm$Gn!)t$Gn$Go!2w$Go$Gr!)t$Gr$Gu!2w$Gu$Gv!)t$Gv$G}!2w$G}$HQ!)t$HQ$HU!2w$HU$HW!)t$HW$H^!2w$H^$Hb!)t$Hb$Ho!2w$Ho$Ht!)t$Ht$Hw!2w$Hw$Hx!)t$Hx$IP!2w$IP$Ki!)t$Ki$Kj!2w$Kj$Kw!)t$Kw$Kx!2w$Kx$LY!)t$LY$Lg!2w$Lg$Np!)t$Np$Nq!2w$Nq$Nu!)t$Nu$Nv!2w$Nv$Nx!)t$Nx% S!2w% S% T!)t% T% U!2w% U% X!)t% X% ^!2w% ^% d!)t% d% e!2w% e% f!)t% f% g!2w% g% h!)t% h% i!2w% i% j!)t% j% n!2w% n% o!)t% o% z!2w% z% |!)t% |%!Q!2w%!Q%!V!)t%!V%![!2w%![%!`!)t%!`%!a!2w%!a%#g!)t%#g%#h!2w%#h%#i!2w%#i&/x!)t&/x&0y!2w&0y&0z!)t&0z&1{!2w&1{&1|!)t&1|&4w!2w&4w&4}!)t&4}&5R!2w&5R&5U!)t&5U&5V!2w&5V&5W!2w&5W&5d!)t&5d&6[!2w&6[&6]!)t&6]&6^!2w&6^&6c!)t&6c&6d!2w&6d&6f!)t&6f&7p!2w&7p&7w!)t&7w&7x!2w&7x&8Y!)t&8Y&8q!2w&8q&8z!)t&8z&9R!2w&9R&9S!)t&9S&9Z!2w&9Z&9[!)t&9[&9c!2w&9c&9d!)t&9d&9k!2w&9k&9l!)t&9l&9s!2w&9s&9t!)t&9t&9{!2w&9{&9|!)t&9|&:T!2w&:T&:U!)t&:U&:]!2w&:]&<P!)t&<P&<Q!2w&<Q&FZ!)t&FZ&F[!2w&F[&F]!2w&F]&GX!)t&GX&G^!2w&G^&Gc!)t&Gc&Gd!2w&Gd&Ge!2w&Ge&Gi!)t&Gi&Ic!2w&Ic&Ii!)t&Ii&Il!2w&Il&Im!)t&Im&Kk!2w&Kk&Kl!)t&Kl&Kp!2w&Kp&Ku!)t&Ku&Lp!2w&Lp&Ls!)t&Ls&Nu!2w&Nu' W!)t' W' s!2w' s'!z!)t'!z'#[!2w'#['.b!)t'.b*3f!2w*3f*5S!)t*5S40_!2w40_41d!)t41d4Js!2w4Js4LY!)t4LY4MY!2w4MY4M[!)t4M[5%T!2w5%T5%W!)t5%W5%h!2w5%h5%r!)t5%r5%s!2w5%s5%t!2w5%t5&Y!)t5&Y5'Z!2w5'Z5'k!)t5'k5(U!2w5(U5(^!)t5(^5)v!2w5)v5*y!)t5*y5+S!2w5+S5+U!)t5+U5-a!2w5-a5-c!)t5-c5-g!2w5-g5-h!)t5-h5-l!2w5-l5-x!)t5-x5.T!2w5.T5/t!)t5/t50O!2w50O50P!)t50P50S!2w50S50T!)t50T50X!2w50X50Y!)t50Y50q!2w50q51`!)t51`52f!2w52f52t!)t52t53x!2w53x55Y!)t55Y55`!2w55`55c!)t55c55d!2w55d55r!)t55r56`!2w56`56j!)t56j57R!2w57R57l!)t57l58Z!2w58Z58b!)t58b59c!2w59c5:P!)t5:P5:Q!2w5:Q5;S!)t5;S5;}!2w5;}5<f!)t5<f5<i!2w5<i5<j!)t5<j5<r!2w5<r5=W!)t5=W5=o!2w5=o5=r!)t5=r5=s!2w5=s5=x!)t5=x5>z!2w5>z5>{!)t5>{5>|!2w5>|5?P!)t5?P5?Q!2w5?Q5?R!2w5?R5?T!)t5?T5?Y!2w5?Y5?[!)t5?[5?]!2w5?]5?^!)t5?^5?_!2w5?_5?w!)t5?w5?z!2w5?z5?|!)t5?|5@X!2w5@X5@`!)t5@`5@c!2w5@c5@o!)t5@o5@u!2w5@u5@w!)t5@w5@}!2w5@}5AP!)t5AP5AV!2w5AV5A`!)t5A`5Ag!2w5Ag5Ah!)t5Ah5Ao!2w5Ao5Dv!)t5Dv5Ek!2w5Ek5FY!)t5FY;%S!2w;%S;%`!)t;%`;%w!2w;%w;%{!)t;%{;'O!2w;'O;'S!)t;'S;=`!.]<%l?&r!)t?&r?.p!2w?.p?.r!)t?.r?1Q!2w?1Q?1x!)t?1x?2P!2w?2P?2]!)t?2]?2b!2w?2b?2g!)t?2g?2h!2w?2h?2i!)t?2i?2s!2w?2s?2t!)t?2t?3R!2w?3R?3S!)t?3S?3X!2w?3X?3Y!)t?3Y?3Z!2w?3Z?3[!)t?3[?3]!2w?3]?3^!2w?3^?3_!)t?3_?3`!2w?3`?3a!2w?3a?3b!)t?3b?5r!2w?5r?6e!)t?6e?>`!2w?>`?>r!)t?>r?@U!2w?@U?@W!)t?@W?A`!2w?A`?BY!)t?BY?Bf!2w?Bf?EO!)t?EO?ET!2w?ET?EU!)t?EU?HR!2w?HR?Hw!)t?Hw?Ic!2w?Ic?Ii!)t?Ii?JT!2w?JT?J`!)t?J`?L]!2w?L]?L`!)t?L`?Lf!2w?Lf?Lh!)t?Lh?Ln!2w?Ln?Lp!)t?Lp?Lv!2w?Lv?Lx!)t?Lx?L{!2w?L{O!)t_:6UZ!OW|SzQ`POr!)trs!*jsw!)twx!,^x![!)t![!]:6w!]#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:7QZ!OW|SzQOr!)trs!*jsw!)twx!,^x![!)t![!]:7s!]#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:8OX!OW|SzQaPOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:8vX!OW|SzQ!{POr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:9l]!OW|SzQOr!)trs!*jsw!)twx!,^x}!)t}!O::e!O!_!)t!_!`:=l!`#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_::n[!OW|SzQOr!)trs!*jsw!)twx!,^x}!)t}!O:;d!O!P9+}!P#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:;oa!OW|SzQ!fPOr!)trs!*jsw!)twx!,^x}!)t}!O9)u!O!`!)t!`!a:<t!a#S!)t#S#T!-i#T#c!)t#c#d:<t#d#l!)t#l#m:<t#m;'S!)t;'S;=`!.]<%lO!)t_:=PX!OW|SzQ!dPOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:=uZ!OW|SzQOr!)trs!*jsw!)twx!,^x!_!)t!_!`:>h!`#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:>s`!OW|SzQ!gPOr!)trs!*jsw!)twx!,^x!_!)t!_!`:?u!`!a:Az!a#S!)t#S#T!-i#T#c!)t#c#d:Az#d#l!)t#l#m:Az#m;'S!)t;'S;=`!.]<%lO!)t_:@Q`!OW|SzQ!gPOr!)trs!*jsw!)twx!,^x!_!)t!_!`:?u!`!a:AS!a#S!)t#S#T!-i#T#c!)t#c#d:AS#d#l!)t#l#m:AS#m;'S!)t;'S;=`!.]<%lO!)t_:A_X!OW|SzQ!gPOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:BVX!OW|SzQ!ePOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:B}Z!OW|SzQ!gPOr!)trs!*jsw!)twx!,^x!_!)t!_!`:Cp!`#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:C}`!OW|SzQ!gP^POr!)trs!*jsw!)twx!,^x!_!)t!_!`:EP!`!a:AS!a#S!)t#S#T!-i#T#c!)t#c#d:AS#d#l!)t#l#m:AS#m;'S!)t;'S;=`!.]<%lO!)t_:E^`!OW|SzQ!gP!iPOr!)trs!*jsw!)twx!,^x!_!)t!_!`:?u!`!a:AS!a#S!)t#S#T!-i#T#c!)t#c#d:AS#d#l!)t#l#m:AS#m;'S!)t;'S;=`!.]<%lO!)t_:FkX!]P!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:Gc[!QP!OW|SzQOr!)trs!*jsw!)twx!,^xy:HXy!}!)t!}#O:IP#O#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:HdX!VP!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:I[X!WP!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)to:JS]!RP!OW|SzQOr!)trs!*jsw!)twx!,^xy!)tyz:J{z#P!)t#P#Q:Ks#Q#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)tn:KWX!U`!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)tn:LOX!X`!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_:Lv2g|SzQ}XmPOq!-iqr)Hyrs&4yst)Hytu)Hyuv)Hyvw)Hywx(BZxz!-iz{)Hy{|)Hy|!O!-i!O!P)Hy!P!Q)Hy!Q![)Hy![!a!-i!a!b)Hy!b!c!-i!c!})Hy!}#O!-i#O#P)Hy#P#R!-i#R#S)Hy#S#T)Hy#T#o)Hy#o$p!-i$p$q)Hy$q${!-i${$|)Hy$|%Q!-i%Q%R)Hy%R%W!-i%W%o)Hy%o%p!-i%p&a)Hy&a&b!-i&b0`)Hy0`0d!-i0d0p)Hy0p1O!-i1O1T)Hy1T1[!-i1[1])Hy1]1^!-i1^1_)Hy1_4U!-i4U4Z)Hy4Z4[!-i4[4])Hy4]4^)Hy4^4`!-i4`4d)Hy4d4l!-i4l4m)Hy4m4n!-i4n4q)Hy4q4r!-i4r4s)Hy4s4t!-i4t5Y)Hy5Y5Z!-i5Z7Q)Hy7Q7R!-i7R:S)Hy:S:[!-i:[=p)Hy=p=y!-i=y>q)Hy>q>s!-i>s>t)Hy>t>{!-i>{?t)Hy?tA`!-iA`A{)HyA{BQ!-iBQBT)HyBTCS!-iCSDP)HyDPDt!-iDtDu)HyDuDv)HyDvDw!-iDwGO)HyGOGP!-iGPGQ)HyGQGa!-iGaGb)HyGbGc)HyGcGj!-iGjGk)HyGkGl)HyGlGv!-iGvGy)HyGyG{!-iG{G|)HyG|H^!-iH^H_)HyH_H`!-iH`IO)HyIOIm!-iImKj)HyKjKu!-iKuKv)HyKvL`!-iL`MR)HyMRM[!-iM[M])HyM]M^)HyM^Mb!-iMbMc)HyMcMh!-iMhNO)HyNONS!-iNSNT)HyNTN^!-iN^N_)HyN_Nb!-iNbNc)HyNcNz!-iNz! e)Hy! e!#O!-i!#O!#P)Hy!#P!#Q!-i!#Q!#])Hy!#]!%W!-i!%W!&`)Hy!&`!&c!-i!&c!&d)Hy!&d!&v!-i!&v!&w)Hy!&w!'O!-i!'O!'Y)Hy!'Y!'i!-i!'i!'p)Hy!'p!'q!-i!'q!'x)Hy!'x!'}!-i!'}!(V)Hy!(V!(X!-i!(X!(Y)Hy!(Y!(Z)Hy!(Z!(]!-i!(]!(s)Hy!(s!(t!-i!(t!({)Hy!({!(|!-i!(|!(})Hy!(}!)Q!-i!)Q!)U)Hy!)U!)X!-i!)X!)Y)Hy!)Y!)j!-i!)j!)k)Hy!)k!)x!-i!)x!)y)Hy!)y!)z)Hy!)z!){!-i!){!*O)Hy!*O!*^!-i!*^!*_)Hy!*_!*`)Hy!*`!*s!-i!*s!*y)Hy!*y!*}!-i!*}!+O)Hy!+O!+P)Hy!+P!+R!-i!+R!+i)Hy!+i!+j!-i!+j!+q)Hy!+q!+r!-i!+r!+s)Hy!+s!+t)Hy!+t!+u!-i!+u!+v)Hy!+v!+w)Hy!+w!+x!-i!+x!+y)Hy!+y!+z)Hy!+z!,k!-i!,k!,o)Hy!,o!,p!-i!,p!,q)Hy!,q!-U!-i!-U!-X)Hy!-X!-i!-i!-i!-r)Hy!-r!-s!-i!-s!-v)Hy!-v!-w!-i!-w!._)Hy!._!.`!-i!.`!.g)Hy!.g!.h!-i!.h!.i)Hy!.i!.j)Hy!.j!.k!-i!.k!.p)Hy!.p!.s!-i!.s!.t)Hy!.t!/W!-i!/W!/X)Hy!/X!/h!-i!/h!/i)Hy!/i!/j)Hy!/j!0_!-i!0_!0g)Hy!0g!0i!-i!0i!0j)Hy!0j!0k)Hy!0k!0m!-i!0m!1T)Hy!1T!1U!-i!1U!1])Hy!1]!1^!-i!1^!1_)Hy!1_!1`)Hy!1`!1a!-i!1a!1f)Hy!1f!1i!-i!1i!1j)Hy!1j!2Y!-i!2Y!2Z)Hy!2Z!2[)Hy!2[!2]!-i!2]!2`)Hy!2`!2o!-i!2o!2p)Hy!2p!3R!-i!3R!3S)Hy!3S!3T!-i!3T!3Z)Hy!3Z!3^!-i!3^!3a)Hy!3a!3b!-i!3b!3f)Hy!3f!3i!-i!3i!3j)Hy!3j!3k)Hy!3k!3l!-i!3l!3m)Hy!3m!3n!-i!3n!3o)Hy!3o!3p)Hy!3p!3s!-i!3s!3t)Hy!3t!3u)Hy!3u!3x!-i!3x!3{)Hy!3{!4O!-i!4O!4[)Hy!4[!4r!-i!4r!4s)Hy!4s!5y!-i!5y!6R)Hy!6R!6S!-i!6S!6V)Hy!6V!6W!-i!6W!6o)Hy!6o!6p!-i!6p!6z)Hy!6z!6{!-i!6{!7Q)Hy!7Q!7T!-i!7T!7U)Hy!7U!7p!-i!7p!7q)Hy!7q!7r)Hy!7r!7x!-i!7x!7y)Hy!7y!7z)Hy!7z!8o!-i!8o!8w)Hy!8w!8x!-i!8x!8{)Hy!8{!8|!-i!8|!9e)Hy!9e!9f!-i!9f!9p)Hy!9p!9q!-i!9q!9v)Hy!9v!9y!-i!9y!9z)Hy!9z!:l!-i!:l!:m)Hy!:m!:n!-i!:n!:o)Hy!:o!:p)Hy!:p!;P!-i!;P!;Q)Hy!;Q!;R)Hy!;R!;e!-i!;e!;m)Hy!;m!;n!-i!;n!;q)Hy!;q!;r!-i!;r!<m)Hy!<m!<o!-i!<o!<p)Hy!<p!=Q!-i!=Q!=R)Hy!=R!=d!-i!=d!=e)Hy!=e!=f)Hy!=f!>O!-i!>O!>U)Hy!>U!>Z!-i!>Z!>m)Hy!>m!>p!-i!>p!?Y)Hy!?Y!?Z!-i!?Z!?d)Hy!?d!?e!-i!?e!?f)Hy!?f!?h!-i!?h!?o)Hy!?o!@{!-i!@{!A})Hy!A}!BO!-i!BO!BP)Hy!BP!BQ)Hy!BQ!B^!-i!B^!Be)Hy!Be!Cq!-i!Cq!Cr)Hy!Cr!Cs)Hy!Cs!Ct!-i!Ct!Cu)Hy!Cu!Cw!-i!Cw!Cx)Hy!Cx!Cy)Hy!Cy!Cz!-i!Cz!C{)Hy!C{!C}!-i!C}!DO)Hy!DO!DU!-i!DU!DY)Hy!DY!DZ!-i!DZ!Db)Hy!Db!Dc!-i!Dc!Df)Hy!Df!Dg!-i!Dg!Dh)Hy!Dh!Di!-i!Di!Dj)Hy!Dj!Dl!-i!Dl!Dm)Hy!Dm!Dn)Hy!Dn!Do!-i!Do!Ds)Hy!Ds!Dt!-i!Dt!Du)Hy!Du!Dv)Hy!Dv!EP!-i!EP!EQ)Hy!EQ!ES!-i!ES!EX)Hy!EX!EY!-i!EY!EZ)Hy!EZ!Ep!-i!Ep!Et)Hy!Et!Ff!-i!Ff!Fg)Hy!Fg!Gx!-i!Gx!HQ)Hy!HQ!HR!-i!HR!Hw)Hy!Hw!Id!-i!Id!Ii)Hy!Ii!LQ!-i!LQ!L})Hy!L}!Mc!-i!Mc!Md)Hy!Md!Mt!-i!Mt!Mz)Hy!Mz!NO!-i!NO!NS)Hy!NS!NV!-i!NV!NW)Hy!NW!NZ!-i!NZ!N[)Hy!N[!N])Hy!N]!Nd!-i!Nd!Ng)Hy!Ng!Nk!-i!Nk!Nx)Hy!Nx# U!-i# U# V)Hy# V# h!-i# h#!`)Hy#!`#!a!-i#!a#!b)Hy#!b#!g!-i#!g#!h)Hy#!h#!j!-i#!j##g)Hy##g##h!-i##h#*s)Hy#*s#*t!-i#*t#*x)Hy#*x#*z!-i#*z#+R)Hy#+R#+S!-i#+S#+T)Hy#+T#+U!-i#+U#+Y)Hy#+Y#+[!-i#+[#,V)Hy#,V#,W!-i#,W#,[)Hy#,[#,^!-i#,^#-P)Hy#-P#-Q!-i#-Q#-U)Hy#-U#-W!-i#-W#-_)Hy#-_#-`!-i#-`#-a)Hy#-a#-b!-i#-b#-f)Hy#-f#-h!-i#-h#-w)Hy#-w#-x!-i#-x#/T)Hy#/T#/U!-i#/U#/Y)Hy#/Y#/[!-i#/[#0q)Hy#0q#1h!-i#1h#1x)Hy#1x#2Y!-i#2Y#4R)Hy#4R#4_!-i#4_#Au)Hy#Au#Aw!-i#Aw#BY)Hy#BY#BZ!-i#BZ#Bu)Hy#Bu#Bz!-i#Bz#Di)Hy#Di#EO!-i#EO#E])Hy#E]#E^!-i#E^#Eb)Hy#Eb#Ep!-i#Ep#FS)Hy#FS#Fb!-i#Fb#Ft)Hy#Ft#GS!-i#GS#Ga)Hy#Ga#Gb!-i#Gb#Ge)Hy#Ge#Gt!-i#Gt#Hz)Hy#Hz#Io!-i#Io#Ip)Hy#Ip#It!-i#It#Iu)Hy#Iu#K[!-i#K[#MW)Hy#MW#M`!-i#M`#NZ)Hy#NZ#N[!-i#N[#N])Hy#N]#Nb!-i#Nb$ z)Hy$ z$!U!-i$!U$!s)Hy$!s$#x!-i$#x$$h)Hy$$h$$j!-i$$j$$o)Hy$$o$$z!-i$$z$%x)Hy$%x$&_!-i$&_$&f)Hy$&f$'p!-i$'p$(X)Hy$(X$(b!-i$(b$)i)Hy$)i$+_!-i$+_$+`)Hy$+`$-a!-i$-a$.b)Hy$.b$.s!-i$.s$.z)Hy$.z$0T!-i$0T$0s)Hy$0s$1Q!-i$1Q$1R)Hy$1R$1S)Hy$1S$1^!-i$1^$2[)Hy$2[$2v!-i$2v$3l)Hy$3l$4g!-i$4g$4j)Hy$4j$4t!-i$4t$5j)Hy$5j$7y!-i$7y$7})Hy$7}$8O!-i$8O$8S)Hy$8S$8V!-i$8V$8W)Hy$8W$8X)Hy$8X$8b!-i$8b$<j)Hy$<j$=|!-i$=|$DO)Hy$DO$DQ!-i$DQ$DW)Hy$DW$DY!-i$DY$EQ)Hy$EQ$ES!-i$ES$EY)Hy$EY$E[!-i$E[$Ed)Hy$Ed$Ee!-i$Ee$Ef)Hy$Ef$Eg!-i$Eg$Eh)Hy$Eh$Ei!-i$Ei$Ej)Hy$Ej$Ek!-i$Ek$F[)Hy$F[$F^!-i$F^$Ge)Hy$Ge$Gf!-i$Gf$Gm)Hy$Gm$Gn!-i$Gn$Go)Hy$Go$Gr!-i$Gr$Gu)Hy$Gu$Gv!-i$Gv$G})Hy$G}$HQ!-i$HQ$HU)Hy$HU$HW!-i$HW$H^)Hy$H^$Hb!-i$Hb$Ho)Hy$Ho$Ht!-i$Ht$Hw)Hy$Hw$Hx!-i$Hx$IP)Hy$IP$Ki!-i$Ki$Kj)Hy$Kj$Kw!-i$Kw$Kx)Hy$Kx$LY!-i$LY$Lg)Hy$Lg$Np!-i$Np$Nq)Hy$Nq$Nu!-i$Nu$Nv)Hy$Nv$Nx!-i$Nx% S)Hy% S% T!-i% T% U)Hy% U% X!-i% X% ^)Hy% ^% d!-i% d% e)Hy% e% f!-i% f% g)Hy% g% h!-i% h% i)Hy% i% j!-i% j% n)Hy% n% o!-i% o% z)Hy% z% |!-i% |%!Q)Hy%!Q%!V!-i%!V%![)Hy%![%!`!-i%!`%!a)Hy%!a%#g!-i%#g%#h)Hy%#h%#i)Hy%#i&/x!-i&/x&0y)Hy&0y&0z!-i&0z&1{)Hy&1{&1|!-i&1|&4w)Hy&4w&4}!-i&4}&5R)Hy&5R&5U!-i&5U&5V)Hy&5V&5W)Hy&5W&5d!-i&5d&6[)Hy&6[&6]!-i&6]&6^)Hy&6^&6c!-i&6c&6d)Hy&6d&6f!-i&6f&7p)Hy&7p&7w!-i&7w&7x)Hy&7x&8Y!-i&8Y&8q)Hy&8q&8z!-i&8z&9R)Hy&9R&9S!-i&9S&9Z)Hy&9Z&9[!-i&9[&9c)Hy&9c&9d!-i&9d&9k)Hy&9k&9l!-i&9l&9s)Hy&9s&9t!-i&9t&9{)Hy&9{&9|!-i&9|&:T)Hy&:T&:U!-i&:U&:])Hy&:]&<P!-i&<P&<Q)Hy&<Q&FZ!-i&FZ&F[)Hy&F[&F])Hy&F]&GX!-i&GX&G^)Hy&G^&Gc!-i&Gc&Gd)Hy&Gd&Ge)Hy&Ge&Gi!-i&Gi&Ic)Hy&Ic&Ii!-i&Ii&Il)Hy&Il&Im!-i&Im&Kk)Hy&Kk&Kl!-i&Kl&Kp)Hy&Kp&Ku!-i&Ku&Lp)Hy&Lp&Ls!-i&Ls&Nu)Hy&Nu' W!-i' W' s)Hy' s'!z!-i'!z'#[)Hy'#['.b!-i'.b*3f)Hy*3f*5S!-i*5S40_)Hy40_41d!-i41d4Js)Hy4Js4LY!-i4LY4MY)Hy4MY4M[!-i4M[5%T)Hy5%T5%W!-i5%W5%h)Hy5%h5%r!-i5%r5%s)Hy5%s5%t)Hy5%t5&Y!-i5&Y5'Z)Hy5'Z5'k!-i5'k5(U)Hy5(U5(^!-i5(^5)v)Hy5)v5*y!-i5*y5+S)Hy5+S5+U!-i5+U5-a)Hy5-a5-c!-i5-c5-g)Hy5-g5-h!-i5-h5-l)Hy5-l5-x!-i5-x5.T)Hy5.T5/t!-i5/t50O)Hy50O50P!-i50P50S)Hy50S50T!-i50T50X)Hy50X50Y!-i50Y50q)Hy50q51`!-i51`52f)Hy52f52t!-i52t53x)Hy53x55Y!-i55Y55`)Hy55`55c!-i55c55d)Hy55d55r!-i55r56`)Hy56`56j!-i56j57R)Hy57R57l!-i57l58Z)Hy58Z58b!-i58b59c)Hy59c5:P!-i5:P5:Q)Hy5:Q5;S!-i5;S5;})Hy5;}5<f!-i5<f5<i)Hy5<i5<j!-i5<j5<r)Hy5<r5=W!-i5=W5=o)Hy5=o5=r!-i5=r5=s)Hy5=s5=x!-i5=x5>z)Hy5>z5>{!-i5>{5>|)Hy5>|5?P!-i5?P5?Q)Hy5?Q5?R)Hy5?R5?T!-i5?T5?Y)Hy5?Y5?[!-i5?[5?])Hy5?]5?^!-i5?^5?_)Hy5?_5?w!-i5?w5?z)Hy5?z5?|!-i5?|5@X)Hy5@X5@`!-i5@`5@c)Hy5@c5@o!-i5@o5@u)Hy5@u5@w!-i5@w5@})Hy5@}5AP!-i5AP5AV)Hy5AV5A`!-i5A`5Ag)Hy5Ag5Ah!-i5Ah5Ao)Hy5Ao5Dv!-i5Dv5Ek)Hy5Ek5FY!-i5FY;%S)Hy;%S;%`!-i;%`;%w)Hy;%w;%{!-i;%{;'O)Hy;'O;'S!-i;'S;=`!.V<%l?&r!-i?&r?.p)Hy?.p?.r!-i?.r?1Q)Hy?1Q?1x!-i?1x?2P)Hy?2P?2]!-i?2]?2b)Hy?2b?2g!-i?2g?2h)Hy?2h?2i!-i?2i?2s)Hy?2s?2t!-i?2t?3R)Hy?3R?3S!-i?3S?3X)Hy?3X?3Y!-i?3Y?3Z)Hy?3Z?3[!-i?3[?3])Hy?3]?3^)Hy?3^?3_!-i?3_?3`)Hy?3`?3a)Hy?3a?3b!-i?3b?5r)Hy?5r?6e!-i?6e?>`)Hy?>`?>r!-i?>r?@U)Hy?@U?@W!-i?@W?A`)Hy?A`?BY!-i?BY?Bf)Hy?Bf?EO!-i?EO?ET)Hy?ET?EU!-i?EU?HR)Hy?HR?Hw!-i?Hw?Ic)Hy?Ic?Ii!-i?Ii?JT)Hy?JT?J`!-i?J`?L])Hy?L]?L`!-i?L`?Lf)Hy?Lf?Lh!-i?Lh?Ln)Hy?Ln?Lp!-i?Lp?Lv)Hy?Lv?Lx!-i?Lx?L{)Hy?L{O!-i_<%j2j!OW|SzQmPOq!)tqr!2wrs#9kst!2wtu!2wuv!2wvw!2wwx';ixz!)tz{!2w{|!2w|}!)t}!O::e!O!P!2w!P!Q!2w!Q![!2w![!_!)t!_!`:=l!`!a!)t!a!b!2w!b!c!)t!c!}!2w!}#O!)t#O#P!2w#P#R!)t#R#S!2w#S#T)Hy#T#o!2w#o$p!)t$p$q!2w$q${!)t${$|!2w$|%Q!)t%Q%R!2w%R%W!)t%W%o!2w%o%p!)t%p&a!2w&a&b!)t&b0`!2w0`0d!)t0d0p!2w0p1O!)t1O1T!2w1T1[!)t1[1]!2w1]1^!)t1^1_!2w1_4U!)t4U4Z!2w4Z4[!)t4[4]!2w4]4^!2w4^4`!)t4`4d!2w4d4l!)t4l4m!2w4m4n!)t4n4q!2w4q4r!)t4r4s!2w4s4t!)t4t5Y!2w5Y5Z!)t5Z7Q!2w7Q7R!)t7R:S!2w:S:[!)t:[=p!2w=p=y!)t=y>q!2w>q>s!)t>s>t!2w>t>{!)t>{?t!2w?tA`!)tA`A{!2wA{BQ!)tBQBT!2wBTCS!)tCSDP!2wDPDt!)tDtDu!2wDuDv!2wDvDw!)tDwGO!2wGOGP!)tGPGQ!2wGQGa!)tGaGb!2wGbGc!2wGcGj!)tGjGk!2wGkGl!2wGlGv!)tGvGy!2wGyG{!)tG{G|!2wG|H^!)tH^H_!2wH_H`!)tH`IO!2wIOIm!)tImKj!2wKjKu!)tKuKv!2wKvL`!)tL`MR!2wMRM[!)tM[M]!2wM]M^!2wM^Mb!)tMbMc!2wMcMh!)tMhNO!2wNONS!)tNSNT!2wNTN^!)tN^N_!2wN_Nb!)tNbNc!2wNcNz!)tNz! e!2w! e!#O!)t!#O!#P!2w!#P!#Q!)t!#Q!#]!2w!#]!%W!)t!%W!&`!2w!&`!&c!)t!&c!&d!2w!&d!&v!)t!&v!&w!2w!&w!'O!)t!'O!'Y!2w!'Y!'i!)t!'i!'p!2w!'p!'q!)t!'q!'x!2w!'x!'}!)t!'}!(V!2w!(V!(X!)t!(X!(Y!2w!(Y!(Z!2w!(Z!(]!)t!(]!(s!2w!(s!(t!)t!(t!({!2w!({!(|!)t!(|!(}!2w!(}!)Q!)t!)Q!)U!2w!)U!)X!)t!)X!)Y!2w!)Y!)j!)t!)j!)k!2w!)k!)x!)t!)x!)y!2w!)y!)z!2w!)z!){!)t!){!*O!2w!*O!*^!)t!*^!*_!2w!*_!*`!2w!*`!*s!)t!*s!*y!2w!*y!*}!)t!*}!+O!2w!+O!+P!2w!+P!+R!)t!+R!+i!2w!+i!+j!)t!+j!+q!2w!+q!+r!)t!+r!+s!2w!+s!+t!2w!+t!+u!)t!+u!+v!2w!+v!+w!2w!+w!+x!)t!+x!+y!2w!+y!+z!2w!+z!,k!)t!,k!,o!2w!,o!,p!)t!,p!,q!2w!,q!-U!)t!-U!-X!2w!-X!-i!)t!-i!-r!2w!-r!-s!)t!-s!-v!2w!-v!-w!)t!-w!._!2w!._!.`!)t!.`!.g!2w!.g!.h!)t!.h!.i!2w!.i!.j!2w!.j!.k!)t!.k!.p!2w!.p!.s!)t!.s!.t!2w!.t!/W!)t!/W!/X!2w!/X!/h!)t!/h!/i!2w!/i!/j!2w!/j!0_!)t!0_!0g!2w!0g!0i!)t!0i!0j!2w!0j!0k!2w!0k!0m!)t!0m!1T!2w!1T!1U!)t!1U!1]!2w!1]!1^!)t!1^!1_!2w!1_!1`!2w!1`!1a!)t!1a!1f!2w!1f!1i!)t!1i!1j!2w!1j!2Y!)t!2Y!2Z!2w!2Z!2[!2w!2[!2]!)t!2]!2`!2w!2`!2o!)t!2o!2p!2w!2p!3R!)t!3R!3S!2w!3S!3T!)t!3T!3Z!2w!3Z!3^!)t!3^!3a!2w!3a!3b!)t!3b!3f!2w!3f!3i!)t!3i!3j!2w!3j!3k!2w!3k!3l!)t!3l!3m!2w!3m!3n!)t!3n!3o!2w!3o!3p!2w!3p!3s!)t!3s!3t!2w!3t!3u!2w!3u!3x!)t!3x!3{!2w!3{!4O!)t!4O!4[!2w!4[!4r!)t!4r!4s!2w!4s!5y!)t!5y!6R!2w!6R!6S!)t!6S!6V!2w!6V!6W!)t!6W!6o!2w!6o!6p!)t!6p!6z!2w!6z!6{!)t!6{!7Q!2w!7Q!7T!)t!7T!7U!2w!7U!7p!)t!7p!7q!2w!7q!7r!2w!7r!7x!)t!7x!7y!2w!7y!7z!2w!7z!8o!)t!8o!8w!2w!8w!8x!)t!8x!8{!2w!8{!8|!)t!8|!9e!2w!9e!9f!)t!9f!9p!2w!9p!9q!)t!9q!9v!2w!9v!9y!)t!9y!9z!2w!9z!:l!)t!:l!:m!2w!:m!:n!)t!:n!:o!2w!:o!:p!2w!:p!;P!)t!;P!;Q!2w!;Q!;R!2w!;R!;e!)t!;e!;m!2w!;m!;n!)t!;n!;q!2w!;q!;r!)t!;r!<m!2w!<m!<o!)t!<o!<p!2w!<p!=Q!)t!=Q!=R!2w!=R!=d!)t!=d!=e!2w!=e!=f!2w!=f!>O!)t!>O!>U!2w!>U!>Z!)t!>Z!>m!2w!>m!>p!)t!>p!?Y!2w!?Y!?Z!)t!?Z!?d!2w!?d!?e!)t!?e!?f!2w!?f!?h!)t!?h!?o!2w!?o!@{!)t!@{!A}!2w!A}!BO!)t!BO!BP!2w!BP!BQ!2w!BQ!B^!)t!B^!Be!2w!Be!Cq!)t!Cq!Cr!2w!Cr!Cs!2w!Cs!Ct!)t!Ct!Cu!2w!Cu!Cw!)t!Cw!Cx!2w!Cx!Cy!2w!Cy!Cz!)t!Cz!C{!2w!C{!C}!)t!C}!DO!2w!DO!DU!)t!DU!DY!2w!DY!DZ!)t!DZ!Db!2w!Db!Dc!)t!Dc!Df!2w!Df!Dg!)t!Dg!Dh!2w!Dh!Di!)t!Di!Dj!2w!Dj!Dl!)t!Dl!Dm!2w!Dm!Dn!2w!Dn!Do!)t!Do!Ds!2w!Ds!Dt!)t!Dt!Du!2w!Du!Dv!2w!Dv!EP!)t!EP!EQ!2w!EQ!ES!)t!ES!EX!2w!EX!EY!)t!EY!EZ!2w!EZ!Ep!)t!Ep!Et!2w!Et!Ff!)t!Ff!Fg!2w!Fg!Gx!)t!Gx!HQ!2w!HQ!HR!)t!HR!Hw!2w!Hw!Id!)t!Id!Ii!2w!Ii!LQ!)t!LQ!L}!2w!L}!Mc!)t!Mc!Md!2w!Md!Mt!)t!Mt!Mz!2w!Mz!NO!)t!NO!NS!2w!NS!NV!)t!NV!NW!2w!NW!NZ!)t!NZ!N[!2w!N[!N]!2w!N]!Nd!)t!Nd!Ng!2w!Ng!Nk!)t!Nk!Nx!2w!Nx# U!)t# U# V!2w# V# h!)t# h#!`!2w#!`#!a!)t#!a#!b!2w#!b#!g!)t#!g#!h!2w#!h#!j!)t#!j##g!2w##g##h!)t##h#*s!2w#*s#*t!)t#*t#*x!2w#*x#*z!)t#*z#+R!2w#+R#+S!)t#+S#+T!2w#+T#+U!)t#+U#+Y!2w#+Y#+[!)t#+[#,V!2w#,V#,W!)t#,W#,[!2w#,[#,^!)t#,^#-P!2w#-P#-Q!)t#-Q#-U!2w#-U#-W!)t#-W#-_!2w#-_#-`!)t#-`#-a!2w#-a#-b!)t#-b#-f!2w#-f#-h!)t#-h#-w!2w#-w#-x!)t#-x#/T!2w#/T#/U!)t#/U#/Y!2w#/Y#/[!)t#/[#0q!2w#0q#1h!)t#1h#1x!2w#1x#2Y!)t#2Y#4R!2w#4R#4_!)t#4_#Au!2w#Au#Aw!)t#Aw#BY!2w#BY#BZ!)t#BZ#Bu!2w#Bu#Bz!)t#Bz#Di!2w#Di#EO!)t#EO#E]!2w#E]#E^!)t#E^#Eb!2w#Eb#Ep!)t#Ep#FS!2w#FS#Fb!)t#Fb#Ft!2w#Ft#GS!)t#GS#Ga!2w#Ga#Gb!)t#Gb#Ge!2w#Ge#Gt!)t#Gt#Hz!2w#Hz#Io!)t#Io#Ip!2w#Ip#It!)t#It#Iu!2w#Iu#K[!)t#K[#MW!2w#MW#M`!)t#M`#NZ!2w#NZ#N[!)t#N[#N]!2w#N]#Nb!)t#Nb$ z!2w$ z$!U!)t$!U$!s!2w$!s$#x!)t$#x$$h!2w$$h$$j!)t$$j$$o!2w$$o$$z!)t$$z$%x!2w$%x$&_!)t$&_$&f!2w$&f$'p!)t$'p$(X!2w$(X$(b!)t$(b$)i!2w$)i$+_!)t$+_$+`!2w$+`$-a!)t$-a$.b!2w$.b$.s!)t$.s$.z!2w$.z$0T!)t$0T$0s!2w$0s$1Q!)t$1Q$1R!2w$1R$1S!2w$1S$1^!)t$1^$2[!2w$2[$2v!)t$2v$3l!2w$3l$4g!)t$4g$4j!2w$4j$4t!)t$4t$5j!2w$5j$7y!)t$7y$7}!2w$7}$8O!)t$8O$8S!2w$8S$8V!)t$8V$8W!2w$8W$8X!2w$8X$8b!)t$8b$<j!2w$<j$=|!)t$=|$DO!2w$DO$DQ!)t$DQ$DW!2w$DW$DY!)t$DY$EQ!2w$EQ$ES!)t$ES$EY!2w$EY$E[!)t$E[$Ed!2w$Ed$Ee!)t$Ee$Ef!2w$Ef$Eg!)t$Eg$Eh!2w$Eh$Ei!)t$Ei$Ej!2w$Ej$Ek!)t$Ek$F[!2w$F[$F^!)t$F^$Ge!2w$Ge$Gf!)t$Gf$Gm!2w$Gm$Gn!)t$Gn$Go!2w$Go$Gr!)t$Gr$Gu!2w$Gu$Gv!)t$Gv$G}!2w$G}$HQ!)t$HQ$HU!2w$HU$HW!)t$HW$H^!2w$H^$Hb!)t$Hb$Ho!2w$Ho$Ht!)t$Ht$Hw!2w$Hw$Hx!)t$Hx$IP!2w$IP$Ki!)t$Ki$Kj!2w$Kj$Kw!)t$Kw$Kx!2w$Kx$LY!)t$LY$Lg!2w$Lg$Np!)t$Np$Nq!2w$Nq$Nu!)t$Nu$Nv!2w$Nv$Nx!)t$Nx% S!2w% S% T!)t% T% U!2w% U% X!)t% X% ^!2w% ^% d!)t% d% e!2w% e% f!)t% f% g!2w% g% h!)t% h% i!2w% i% j!)t% j% n!2w% n% o!)t% o% z!2w% z% |!)t% |%!Q!2w%!Q%!V!)t%!V%![!2w%![%!`!)t%!`%!a!2w%!a%#g!)t%#g%#h!2w%#h%#i!2w%#i&/x!)t&/x&0y!2w&0y&0z!)t&0z&1{!2w&1{&1|!)t&1|&4w!2w&4w&4}!)t&4}&5R!2w&5R&5U!)t&5U&5V!2w&5V&5W!2w&5W&5d!)t&5d&6[!2w&6[&6]!)t&6]&6^!2w&6^&6c!)t&6c&6d!2w&6d&6f!)t&6f&7p!2w&7p&7w!)t&7w&7x!2w&7x&8Y!)t&8Y&8q!2w&8q&8z!)t&8z&9R!2w&9R&9S!)t&9S&9Z!2w&9Z&9[!)t&9[&9c!2w&9c&9d!)t&9d&9k!2w&9k&9l!)t&9l&9s!2w&9s&9t!)t&9t&9{!2w&9{&9|!)t&9|&:T!2w&:T&:U!)t&:U&:]!2w&:]&<P!)t&<P&<Q!2w&<Q&FZ!)t&FZ&F[!2w&F[&F]!2w&F]&GX!)t&GX&G^!2w&G^&Gc!)t&Gc&Gd!2w&Gd&Ge!2w&Ge&Gi!)t&Gi&Ic!2w&Ic&Ii!)t&Ii&Il!2w&Il&Im!)t&Im&Kk!2w&Kk&Kl!)t&Kl&Kp!2w&Kp&Ku!)t&Ku&Lp!2w&Lp&Ls!)t&Ls&Nu!2w&Nu' W!)t' W' s!2w' s'!z!)t'!z'#[!2w'#['.b!)t'.b*3f!2w*3f*5S!)t*5S40_!2w40_41d!)t41d4Js!2w4Js4LY!)t4LY4MY!2w4MY4M[!)t4M[5%T!2w5%T5%W!)t5%W5%h!2w5%h5%r!)t5%r5%s!2w5%s5%t!2w5%t5&Y!)t5&Y5'Z!2w5'Z5'k!)t5'k5(U!2w5(U5(^!)t5(^5)v!2w5)v5*y!)t5*y5+S!2w5+S5+U!)t5+U5-a!2w5-a5-c!)t5-c5-g!2w5-g5-h!)t5-h5-l!2w5-l5-x!)t5-x5.T!2w5.T5/t!)t5/t50O!2w50O50P!)t50P50S!2w50S50T!)t50T50X!2w50X50Y!)t50Y50q!2w50q51`!)t51`52f!2w52f52t!)t52t53x!2w53x55Y!)t55Y55`!2w55`55c!)t55c55d!2w55d55r!)t55r56`!2w56`56j!)t56j57R!2w57R57l!)t57l58Z!2w58Z58b!)t58b59c!2w59c5:P!)t5:P5:Q!2w5:Q5;S!)t5;S5;}!2w5;}5<f!)t5<f5<i!2w5<i5<j!)t5<j5<r!2w5<r5=W!)t5=W5=o!2w5=o5=r!)t5=r5=s!2w5=s5=x!)t5=x5>z!2w5>z5>{!)t5>{5>|!2w5>|5?P!)t5?P5?Q!2w5?Q5?R!2w5?R5?T!)t5?T5?Y!2w5?Y5?[!)t5?[5?]!2w5?]5?^!)t5?^5?_!2w5?_5?w!)t5?w5?z!2w5?z5?|!)t5?|5@X!2w5@X5@`!)t5@`5@c!2w5@c5@o!)t5@o5@u!2w5@u5@w!)t5@w5@}!2w5@}5AP!)t5AP5AV!2w5AV5A`!)t5A`5Ag!2w5Ag5Ah!)t5Ah5Ao!2w5Ao5Dv!)t5Dv5Ek!2w5Ek5FY!)t5FY;%S!2w;%S;%`!)t;%`;%w!2w;%w;%{!)t;%{;'O!2w;'O;'S!)t;'S;=`!.]<%l?&r!)t?&r?.p!2w?.p?.r!)t?.r?1Q!2w?1Q?1x!)t?1x?2P!2w?2P?2]!)t?2]?2b!2w?2b?2g!)t?2g?2h!2w?2h?2i!)t?2i?2s!2w?2s?2t!)t?2t?3R!2w?3R?3S!)t?3S?3X!2w?3X?3Y!)t?3Y?3Z!2w?3Z?3[!)t?3[?3]!2w?3]?3^!2w?3^?3_!)t?3_?3`!2w?3`?3a!2w?3a?3b!)t?3b?5r!2w?5r?6e!)t?6e?>`!2w?>`?>r!)t?>r?@U!2w?@U?@W!)t?@W?A`!2w?A`?BY!)t?BY?Bf!2w?Bf?EO!)t?EO?ET!2w?ET?EU!)t?EU?HR!2w?HR?Hw!)t?Hw?Ic!2w?Ic?Ii!)t?Ii?JT!2w?JT?J`!)t?J`?L]!2w?L]?L`!)t?L`?Lf!2w?Lf?Lh!)t?Lh?Ln!2w?Ln?Lp!)t?Lp?Lv!2w?Lv?Lx!)t?Lx?L{!2w?L{O!)t_=,gZ!^P!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T#o!)t#o#p=-Y#p;'S!)t;'S;=`!.]<%lO!)t_=-eX!`P!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_=.]X!SP!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)to=/TZ!_P!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T#q!)t#q#r=/v#r;'S!)t;'S;=`!.]<%lO!)tn=0RX!a`!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t_=0wZ!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T#r!)t#r#s=1j#s;'S!)t;'S;=`!.]<%lO!)t_=1sZ!OW|SzQOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T#r!)t#r#s=2f#s;'S!)t;'S;=`!.]<%lO!)t_=2qX!OW|SzQ!iPOr!)trs!*jsw!)twx!,^x#S!)t#S#T!-i#T;'S!)t;'S;=`!.]<%lO!)t",tokenizers:[lW,oW,aW,0,1,2,3,4,5],topRules:{FlowchartDiagram:[0,5]},specialized:[{term:29,get:e=>uW[e]||-1}],tokenPrec:1356}),hW=24,fW=1,dW=2,pW=3,mW=4,gW=5,yW=6,wW=7,$W=8,xW=9,bW=10,vW=11,R0=12,SW=25,OW=26,kW=27,CW=28,EW=29,DW=30,TW=31,NW=32,jW=33,RW=34,_W=35,MW=36,AW=37,L3=[-1,9,10,13,32,37],HW=[43,45],zW=[44,58,62],BW=["->","-x","-)"," -"," "],YW=["-->","->>","--x","--)"," as"],Q3={"left of":R0,"right of":R0,activate:fW,actor:$W,alt:SW,and:OW,as:xW,autonumber:dW,box:kW,break:CW,create:pW,critical:EW,deactivate:mW,destroy:gW,else:DW,end:yW,link:TW,links:NW,loop:jW,note:wW,opt:RW,option:_W,over:R0,par:MW,participant:bW,rect:AW},GW=Object.keys(Q3),LW=new en(e=>{if(!L3.includes(e.next)){for(;e.next!==10&&e.next!==-1;)e.advance();e.acceptToken(hW)}}),QW=new en(e=>{if(L3.includes(e.next)||HW.includes(e.next))return;const t=()=>{if(e.peek(0)===-1||e.peek(1)===-1||e.peek(2)===-1)return!1;let s=String.fromCodePoint(e.peek(0))+String.fromCodePoint(e.peek(1));return!!(BW.includes(s)||(s+=String.fromCodePoint(e.peek(2)),YW.includes(s)))};let n="";for(;!zW.includes(e.next)&&!t()&&e.next!==10&&e.next!==-1;)n+=String.fromCodePoint(e.next),e.advance();const i=GW.filter(s=>s===n?n.toLowerCase().startsWith(s):n.toLowerCase().startsWith(s+" "));if(i.length>0){e.acceptToken(Q3[i[0]],i[0].length-n.length);return}e.acceptToken(vW)}),PW=jr({DiagramName:bs.diagramName,NodeText:bs.nodeText,Keyword1:bs.keyword1,Keyword2:bs.keyword2,LineComment:bs.lineComment,"Arrow ArrowSuffix":bs.arrow,Position:bs.position,MessageText1:bs.messageText1,MessageText2:bs.messageText2}),qW={__proto__:null,sequenceDiagram:84},P3=Si.deserialize({version:14,states:"'nOVQSOOO[QSO'#DUQOQSOOOOQO'#Cj'#CjO#QQUO,59pOOQP'#Co'#CoOOQQ'#Cq'#CqOOQO'#DY'#DYO#XQUO'#DYO#gQUO'#DYO#lQUO'#DYO#wQUO'#DYO#|QUO'#DYO$RQTO'#DYO$WQUO'#DYO$]QSO1G/[O$eQYO,59tO$sQUO,59tO$xQUO,59tO%TQUO,59tOOQO,59t,59tO%YQUO,59tOOQO'#Cp'#CpO%_QSO,59tO%dQUO7+$vO%kQSO7+$vOOQQ'#Cm'#CmO%sQSO1G/`O%xQUO1G/`O%}QUO1G/`OOQO1G/`1G/`O&VQUO1G/`O&[QUO1G/`O&gQSO1G/`O&oQTO1G/`OOQO,59^,59^O&tQUO<<HbOOQO-E6p-E6pO&oQTO7+$zO&{QSO7+$zO'QQUO7+$zOOQO7+$z7+$zO'VQUO7+$zOOQO'#Cn'#CnPdQUO'#CrOOQO<<Hf<<HfO&oQTO<<HfO'[QSO<<HfOOQOAN>QAN>QO&oQTOAN>QOOQOG23lG23l",stateData:"'g~OwOS~OzRO~O{SOgxX~OPZOQVORYOSZOTYOUVOV[OWXOYXOZWO_VOiTOjTOkTOlTOmTOnTOoUOpUOqTOrTOsTOtTOuTO~Ogxa~PdOXaO``Og|X{|X~OZbO~OWcOYcOZbO~OZdO~O[eO~OhfO~OZgO~O{hOgxi~OZkO{lO}jO!OjO~OZnO~OXoOg|a{|a~OZpO~OZqO~O!PrO~Ogxq~PdO{tOgxq~O!PvO~OZwO~OZwO{xO~OZyO~OXzOg|i{|i~O!PvO!QxO~Oh{O~Ogxy~PdO!P!OO~OZ!PO~OZ}O~O!P!RO~O{w`y`~",goto:"#S}PPPPPPPPPPPPPP!OPP!R!U!b!h!k!qPPPPPPPPPPPPPPPPP!wPPP!zRPORm`QyrQ}vQ!Q!OR!S!RX]Sht|Rd]X^Sht|Qi_RuiRQOQ_SVsht|",nodeNames:"⚠ Activate Autonumber Create Deactivate Destroy End Note Actor As Participant NodeText Position SequenceDiagram DiagramName LineComment Arrow ArrowSuffix MessageText1 Keyword MessageText2 Link",maxTerm:48,nodeProps:[["group",-9,1,2,3,4,5,6,7,19,21,"Keyword1",-3,8,9,10,"Keyword2"]],propSources:[PW],skippedNodes:[0],repeatNodeCount:1,tokenData:"(x~RmXY!|YZ#qZ^!|pq!|tu$nuv%`{|%}|}&S}!O&X![!]'T!c!}$n#T#o$n#y#z!|$f$g!|$g#BY$n#BY#BZ'Y#BZ$IS$n$IS$I_'Y$I_$I|$n$I|$JO'Y$JO$JT$n$JT$JU'Y$JU$KV$n$KV$KW'Y$KW&FU$n&FU&FV'Y&FV;'S$n;'S;=`%Y<%lO$n~#RYw~X^!|pq!|#y#z!|$f$g!|#BY#BZ!|$IS$I_!|$I|$JO!|$JT$JU!|$KV$KW!|&FU&FV!|~#x[{~w~XY!|YZ#qZ^!|pq!|#y#z!|$f$g!|#BY#BZ!|$IS$I_!|$I|$JO!|$JT$JU!|$KV$KW!|&FU&FV!|~$sVy~tu$n!Q![$n!c!}$n#T#o$n$g;'S$n;'S;=`%Y<%lO$n~%]P;=`<%l$n~%cPuv%f~%kS_~OY%fZ;'S%f;'S;=`%w<%lO%f~%zP;=`<%l%f~&SO}~~&XO!Q~R&^S!OQyz&j}!O&o!`!a&{#l#m&jP&oO`PP&rRyz&j!`!a&{#l#m&jP'QP`P!`!a&j~'YO!P~~'agw~y~X^!|pq!|tu$n!Q![$n!c!}$n#T#o$n#y#z!|$f$g!|$g#BY$n#BY#BZ'Y#BZ$IS$n$IS$I_'Y$I_$I|$n$I|$JO'Y$JO$JT$n$JT$JU'Y$JU$KV$n$KV$KW'Y$KW&FU$n&FU&FV'Y&FV;'S$n;'S;=`%Y<%lO$n",tokenizers:[LW,QW,0,1],topRules:{SequenceDiagram:[0,13]},specialized:[{term:41,get:e=>qW[e]||-1}],tokenPrec:293}),WW=1,ZW=14,UW=15,IW=16,q3=[-1,9,10,13,32],FW=["title","section"],VW=e=>e.peek(0)===37&&e.peek(1)===37,dp=e=>q3.includes(e.next)||VW(e),XW=new en(e=>{if(dp(e))return;let t="";for(;!q3.includes(e.next);)t+=String.fromCodePoint(e.next),e.advance();const n=FW.filter(i=>i===t?t.toLowerCase().startsWith(i):t.toLowerCase().startsWith(i+" "));if(n.length>0){e.acceptToken(WW,n[0].length-t.length);return}}),KW=new en(e=>{if(!dp(e)){for(;e.next!==10&&e.next!==-1;)e.advance();e.acceptToken(ZW)}}),JW=new en(e=>{if(!dp(e)){for(;e.next!==58&&e.next!==10&&e.next!==-1;)e.advance();e.acceptToken(UW)}}),tZ=new en(e=>{if(!dp(e)){for(;e.next!==44&&e.next!==10&&e.next!==-1;)e.advance();e.acceptToken(IW)}}),eZ=jr({DiagramName:El.diagramName,"Text TaskName":El.text,Actor:El.actor,Keyword:El.keyword,LineComment:El.lineComment,Score:El.score}),nZ={__proto__:null,journey:42},W3=Si.deserialize({version:14,states:"%^OVQ`OOO[QeO'#CoQOQ`OOOOQT'#C_'#C_OOQT'#Cf'#CfOmQeO,59ZOOQO'#Cc'#CcO!OQ`O'#CbOOQO'#Cs'#CsO!TQbO'#CsOvQ`O,59ZOOQT-E6d-E6dO!YQ`O1G.uO!bQdO,58|OOQO'#Ca'#CaOOQO,59_,59_O!gQeO1G.uO!YQ`O1G.uO!xQeO7+$aO#RQ`O7+$aOOQO'#Cd'#CdO#ZQ`O1G.hOOQO,59S,59SOOQO-E6f-E6fO#fQeO<<G{O#wQhO7+$SP#|QeO'#CfOOQO'#Ce'#CeO$[Q`O<<GnO#wQhO'#CgO$gQ`OAN=YOOQO,59R,59ROOQO-E6e-E6e",stateData:"$u~ObOS~OeRO~OPXOSWO_UOfSO]cX~OPXOSWO_UOfSO]ca~Oh]O~O^^O~OfSO]ci~O_dO~OPXOSWO_UOfSO]ci~OPXOSWO_UOfSO]cq~OhiO]UifUi~OPXOSWO_UOfSO]cy~O`kO~OPXOSWO_UOfSO~OimO]UyfUy~OimO]U!RfU!R~Ofb~",goto:"#_hPPPiPlow!P!S!Y!n!tPPPPPP#OPPP#RRPOR_X]WPT`bhj]VPT`bhjRe]QliRomQTPYZT`bhjQ`YSb[aRhcQnlRpnQaYQc[TgacRQOQYPQ[TXf`bhj",nodeNames:"⚠ Keyword JourneyDiagram DiagramName LineComment Text Task TaskName Score Actor",maxTerm:25,propSources:[eZ],skippedNodes:[0],repeatNodeCount:3,tokenData:"$|~RaXY!WYZ!{Z^!Wpq!Wuv#x|}$g![!]$l!c!}$q#T#o$q#y#z!W$f$g!W#BY#BZ!W$IS$I_!W$I|$JO!W$JT$JU!W$KV$KW!W&FU&FV!W~!]Yb~X^!Wpq!W#y#z!W$f$g!W#BY#BZ!W$IS$I_!W$I|$JO!W$JT$JU!W$KV$KW!W&FU&FV!W~#S[f~b~XY!WYZ!{Z^!Wpq!W#y#z!W$f$g!W#BY#BZ!W$IS$I_!W$I|$JO!W$JT$JU!W$KV$KW!W&FU&FV!W~#{Puv$O~$TSS~OY$OZ;'S$O;'S;=`$a<%lO$O~$dP;=`<%l$O~$lOi~~$qOh~~$vQd~!c!}$q#T#o$q",tokenizers:[XW,KW,JW,tZ,0],topRules:{JourneyDiagram:[0,2]},specialized:[{term:20,get:e=>nZ[e]||-1}],tokenPrec:172}),iZ=1,VS=[-1,45,60,62,10,13,123,61],sZ=new en(e=>{if(VS.includes(e.next)||e.next===32)return;let t,n="",i=0;do{if(t=e.peek(i),t===-1)return;n+=String.fromCodePoint(t),i++}while(!VS.includes(t));(t===45||t===60)&&(n=n.slice(0,-1).trim(),e.acceptToken(iZ,n.length))}),rZ=jr({"DiagramName SubDiagramType":hr.diagramName,LineComment:hr.lineComment,IDNumber:hr.number,"UnquotedString RelationshipStart":hr.unquotedString,QuotedString:hr.quotedString,PropKeyword:hr.unquotedString,Keyword:hr.keyword,"ForwardArrow BackArrow Hyphen":hr.arrow}),oZ={__proto__:null,requirementDiagram:144,requirement:150,Requirement:152,functionalRequirement:154,FunctionalRequirement:156,performanceRequirement:158,PerformanceRequirement:160,interfaceRequirement:162,InterfaceRequirement:164,physicalRequirement:166,PhysicalRequirement:168,designConstraint:170,DesignConstraint:172,element:174,Element:176,id:18,Id:20,ID:22,text:28,Text:30,risk:34,Risk:36,low:40,Low:42,medium:44,Medium:46,high:48,High:50,verifymethod:54,verifyMethod:56,VerifyMethod:58,analysis:62,Analysis:64,demonstration:66,Demonstration:68,inspection:70,Inspection:72,test:74,Test:76,type:80,Type:82,docRef:86,DocRef:88,contains:96,Contains:98,copies:100,Copies:102,derives:104,Derives:106,satisfies:108,Satisfies:110,verifies:112,Verifies:114,refines:116,Refines:118,traces:120,Traces:122},Z3=Si.deserialize({version:14,states:")`OYQQOOO_QQO'#DtQOQQOOOOQO'#C`'#C`O!kQRO,5:`O!rOSO'#CcOOQO'#Ef'#EfO!zQQO'#DZO#SQRO'#DnO$^QRO1G/zOOQO'#Ca'#CaO$eQWO'#DxOOOO'#Do'#DoO$mOSO,58}OOQP,58},58}O$uQQO,59uO$uQQO,59uOOQP,5:Y,5:YOOQP-E7l-E7lOOQP'#Cb'#CbOOQP'#Eg'#EgO%sQQO,5:dOOOO-E7m-E7mOOQP1G.i1G.iO%xQQO1G/aOOQO'#D]'#D]O%}QQO1G/aO&SQQO1G0OO$eQWO7+${O'VQQO7+%jOOQP<<Hg<<HgO'^QQO'#E_O'cQQO'#EbO'hQQO'#EcO'mQQO'#E^OOQO'#Dp'#DpO(qQQO<<IUOOQO'#Cd'#CdOOQO'#Ci'#CiOOQO'#Cl'#ClOOQO'#Cv'#CvOOQO'#DT'#DTOOQO'#DW'#DWO(xQQO'#EaO(}QQO'#EdO)SQQO'#EeOOQP<<IU<<IUO)XQQO,5:yO)^QQO,5:|O)rQQO,5:}OOQO,5:x,5:xOOQO-E7n-E7nOOQPAN>pAN>pO$eQWO,5:{O$eQWO,5;OO$eQWO,5;POOQO1G0e1G0eOOQO1G0h1G0hOOQO'#Co'#CoOOQO1G0i1G0iOOQO'#Cz'#CzOOQO1G0g1G0gOOQO1G0j1G0jOOQO1G0k1G0k",stateData:"*e~O!gOSQOS~O!jRO~O!kSO!e!hX~OPUO!mYO!nYO!oYO!pYO!qYO!rYO!sYO!tYO!uYO!vYO!wYO!xYO!yYO!zYO!|TO~O!e!ha~PgO!|^O!}[O~O!O_O!a`O~O!kaOP!bX!e!bX!m!bX!n!bX!o!bX!p!bX!q!bX!r!bX!s!bX!t!bX!u!bX!v!bX!w!bX!x!bX!y!bX!z!bX!|!bX~O!e!hi~PgO!{cO!|TO~O!|gO!}[O~O!QiO!RiO!SiO!TiO!UiO!ViO!WiO!XiO!YiO!ZiO![iO!]iO!^iO!_iO~O#OkO~O!`lO~O!OlO~O!kmO~OXuOYuOZuO^vO_vOawObwOkxOlxOmxOxyOyyO{zO|zO~O#P!OO~P&XO#S!PO~O#S!QO~O#S!RO~O!k!SOX#QXY#QXZ#QX^#QX_#QXa#QXb#QXk#QXl#QXm#QXx#QXy#QX{#QX|#QX#P#QX~O#P!UO~P&XO#S!VO~O#S!WO~O#S!XO~O[!YO~Od![Oe![Of![Og![Oh![Oi![O~Oo!^Op!^Oq!^Or!^Os!^Ot!^Ou!^Ov!^O~O!k!a!g!`!O!`~",goto:"%r#[PPPP#]#`#d#k#vPPPP#zPP$OPP$SPPPPPP$VPPP$ZPPPPPPPP$^PP$bPP$fP$jPPPPPPPPPPPPPPPP$p$v$|PPP%SPPP$fPPPPPPPPPPPPPPPPPPP%V%ZP%Z%Z%Z%Z%Z%_%cRPOTZSXZdZl!V!W!XSUSXZdZl!V!W!XTomtT{mtTpmtR!Z!QTqmtR!]!RT|mtT}mtTWSXQh_Rj`QXSRbXQ]TRf]QtmR!TtRQOTsmtTrmtTVSXQeZQnlQ!_!VQ!`!WR!a!X",nodeNames:"⚠ RelationshipStart LineComment RequirementDiagram DiagramName SubDiagramType UnquotedString QuotedString ID PropKeyword PropKeyword PropKeyword IDNumber Text PropKeyword PropKeyword Risk PropKeyword PropKeyword RiskType Keyword Keyword Keyword Keyword Keyword Keyword VerifyMethod PropKeyword PropKeyword PropKeyword VerifyMethodType Keyword Keyword Keyword Keyword Keyword Keyword Keyword Keyword Type PropKeyword PropKeyword DocRef PropKeyword PropKeyword RelationshipLine Hyphen RelationshipType Keyword Keyword Keyword Keyword Keyword Keyword Keyword Keyword Keyword Keyword Keyword Keyword Keyword Keyword ForwardArrow BackArrow",maxTerm:103,propSources:[rZ],skippedNodes:[0,2],repeatNodeCount:3,tokenData:"1g~R{OX#xXY$aYZ&SZ^$a^p#xpq$aqr#xrs'}su#xuv(Sv}#x}!O)v!O!Q#x!Q![*t![!]+|!]!^#x!^!_,a!_!c#x!c!}-]!}#T#x#T#o-]#o#p0o#p#q#x#q#r1S#r#y#x#y#z$a#z$f#x$f$g$a$g#BY#x#BY#BZ$a#BZ$IS#x$IS$I_$a$I_$I|#x$I|$JO$a$JO$JT#x$JT$JU$a$JU$KV#x$KV$KW$a$KW&FU#x&FU&FV$a&FV;'S#x;'S;=`$Z<%lO#xQ#}S!}QOr#xs;'S#x;'S;=`$Z<%lO#xQ$^P;=`<%l#xV$hh!}Q!gTOX#xX^$a^p#xpq$aqr#xs#y#x#y#z$a#z$f#x$f$g$a$g#BY#x#BY#BZ$a#BZ$IS#x$IS$I_$a$I_$I|#x$I|$JO$a$JO$JT#x$JT$JU$a$JU$KV#x$KV$KW$a$KW&FU#x&FU&FV$a&FV;'S#x;'S;=`$Z<%lO#xV&]j!}Q!kP!gTOX#xXY$aYZ&SZ^$a^p#xpq$aqr#xs#y#x#y#z$a#z$f#x$f$g$a$g#BY#x#BY#BZ$a#BZ$IS#x$IS$I_$a$I_$I|#x$I|$JO$a$JO$JT#x$JT$JU$a$JU$KV#x$KV$KW$a$KW&FU#x&FU&FV$a&FV;'S#x;'S;=`$Z<%lO#x~(SO!|~V(XU!}QOr#xsu#xuv(kv;'S#x;'S;=`$Z<%lO#xV(rVQT!}QOY(kYZ#xZr(krs)Xs;'S(k;'S;=`)p<%lO(kT)^SQTOY)XZ;'S)X;'S;=`)j<%lO)XT)mP;=`<%l)XV)sP;=`<%l(kR)}U!}Q!OPOr#xs!`#x!`!a*a!a;'S#x;'S;=`$Z<%lO#xR*hS!}Q!`POr#xs;'S#x;'S;=`$Z<%lO#xR*{W[P!}QOr#xs!O#x!O!P+e!P!Q#x!Q![*t![;'S#x;'S;=`$Z<%lO#xR+jU!}QOr#xs!Q#x!Q![*t![;'S#x;'S;=`$Z<%lO#xR,TS#SP!}QOr#xs;'S#x;'S;=`$Z<%lO#xR,fU!}QOr#xs}#x}!O,x!O;'S#x;'S;=`$Z<%lO#xR-PS!}Q!aPOr#xs;'S#x;'S;=`$Z<%lO#xV-fb!}Q!{S!iPOY.nYZ#xZ].n]^#x^r.nrs/ts}.n}!O#x!O!^.n!^!a#x!a!c.n!c!}-]!}#T.n#T#o-]#o#p#x#p;'S.n;'S;=`0i<%lO.nU.u_!}Q!{SOY.nYZ#xZ].n]^#x^r.nrs/ts}.n}!O#x!O!^.n!^!a#x!a#o.n#o#p#x#p;'S.n;'S;=`0i<%lO.nS/yW!{SOY/tZ]/t^}/t!O!^/t!a#o/t#p;'S/t;'S;=`0c<%lO/tS0fP;=`<%l/tU0lP;=`<%l.nR0vS#OP!}QOr#xs;'S#x;'S;=`$Z<%lO#xR1ZS#PP!}QOr#xs;'S#x;'S;=`$Z<%lO#x",tokenizers:[sZ,0,1,2],topRules:{RequirementDiagram:[0,3]},specialized:[{term:71,get:e=>oZ[e]||-1}],tokenPrec:428}),lZ=1,aZ=2,cZ=3,uZ=4,hZ=5,fZ=6,dZ=7,pZ=8,mZ=9,gZ=17,U3={axisFormat:lZ,dateFormat:aZ,excludes:cZ,inclusiveEndDates:uZ,section:mZ,tickInterval:hZ,title:fZ,todayMarker:dZ,weekday:pZ},yZ=Object.keys(U3),wZ=new en(e=>{if(e.next===32||e.next===10||e.next===-1||e.next===37&&e.peek(1)===37)return;let t="";for(;e.next!==10&&e.next!==-1;)t+=String.fromCodePoint(e.next),e.advance();const n=yZ.filter(i=>i===t?t.startsWith(i):t.startsWith(i+" "));if(n.length>0){e.acceptToken(U3[n[0]],n[0].length-t.length);return}e.acceptToken(gZ)}),$Z=jr({"DiagramName Section":Cf.diagramName,Keyword:Cf.keyword,ImportantText:Cf.string,LineComment:Cf.lineComment}),xZ={__proto__:null,gantt:44},I3=Si.deserialize({version:14,states:"!|OVQQOOO[QQO'#CpQOQQOOOOQO'#Cg'#CgO!XQRO,59[OOQP'#Ci'#CiO!`QRO'#CtO!SQRO'#CtOOQP'#Ct'#CtO!eQRO'#CkO#`QRO1G.vOOQP'#Ch'#ChOOQP,59`,59`OOQP,59V,59VOOQP-E6i-E6i",stateData:"#j~OcOS~OfRO~OgSO`dX~OPVOQVORVOSWOTVOUUOVVOWVOXUO^WOaTO~O`da~PdOaZO~Og]OP_XQ_XR_XS_XT_XU_XV_XW_XX_X^_X`_Xa_X~O`di~PdOgc~",goto:"!UiPPPPPPPPPPPjmpPwPPPP}PPP!QRPOR[USWSYR[VQYSR^YRQOTXSY",nodeNames:"⚠ AxisFormat DateFormat Excludes InclusiveEndDates TickInterval Title TodayMarker Weekday Section GanttDiagram DiagramName ImportantText Text LineComment",maxTerm:24,nodeProps:[["group",-8,1,2,3,4,5,6,7,8,"Keyword"]],propSources:[$Z],skippedNodes:[0],repeatNodeCount:1,tokenData:"$l~R_XY!QYZ!uZ^!Qpq!Quv#r!c!}$a#T#o$a#y#z!Q$f$g!Q#BY#BZ!Q$IS$I_!Q$I|$JO!Q$JT$JU!Q$KV$KW!Q&FU&FV!Q~!VYc~X^!Qpq!Q#y#z!Q$f$g!Q#BY#BZ!Q$IS$I_!Q$I|$JO!Q$JT$JU!Q$KV$KW!Q&FU&FV!Q~!|[g~c~XY!QYZ!uZ^!Qpq!Q#y#z!Q$f$g!Q#BY#BZ!Q$IS$I_!Q$I|$JO!Q$JT$JU!Q$KV$KW!Q&FU&FV!Q~#uPuv#x~#}S^~OY#xZ;'S#x;'S;=`$Z<%lO#x~$^P;=`<%l#x~$fQe~!c!}$a#T#o$a",tokenizers:[wZ,0],topRules:{GanttDiagram:[0,10]},specialized:[{term:21,get:e=>xZ[e]||-1}],tokenPrec:115});var vs;(function(e){e.Mermaid="MermaidDiagram",e.Mindmap="MindmapDiagram",e.Pie="PieDiagram",e.Flowchart="FlowchartDiagram",e.Sequence="SequenceDiagram",e.Journey="JourneyDiagram",e.Requirement="RequirementDiagram",e.Gantt="GanttDiagram"})(vs||(vs={}));var Ui;(function(e){e.Mermaid="mermaid",e.Mindmap="mindmap",e.Pie="pie",e.Flowchart="flowchart",e.Sequence="sequenceDiagram",e.Journey="journey",e.Requirement="requirementDiagram",e.Gantt="gantt"})(Ui||(Ui={}));var Ii;(function(e){e.Mermaid="mermaid",e.Mindmap="mindmap",e.Pie="pie",e.Flowchart="flowchart",e.Sequence="sequence",e.Journey="journey",e.Requirement="requirement",e.Gantt="gantt"})(Ii||(Ii={}));var au;(function(e){e.Graph="graph",e.Sequence="sequence",e.Requirement="requirement"})(au||(au={}));const bZ=vi.define({name:Ii.Mermaid,parser:Dq.configure({wrap:cG(e=>{switch(e.name){case vs.Mindmap:return{parser:H3};case vs.Pie:return{parser:z3};case vs.Flowchart:return{parser:G3};case vs.Sequence:return{parser:P3};case vs.Journey:return{parser:W3};case vs.Requirement:return{parser:Z3};case vs.Gantt:return{parser:I3};default:return null}})})}),vZ=vi.define({name:Ii.Mindmap,parser:H3}),SZ=vi.define({name:Ii.Pie,parser:z3}),OZ=vi.define({name:Ii.Flowchart,parser:G3}),kZ=vi.define({name:Ii.Sequence,parser:P3}),CZ=vi.define({name:Ii.Journey,parser:W3}),EZ=vi.define({name:Ii.Requirement,parser:Z3}),DZ=vi.define({name:Ii.Gantt,parser:I3});function F3(){return new Rr(bZ)}function TZ(){return new Rr(vZ)}function NZ(){return new Rr(SZ)}function jZ(){return new Rr(OZ)}function RZ(){return new Rr(kZ)}function _Z(){return new Rr(CZ)}function MZ(){return new Rr(EZ)}function AZ(){return new Rr(DZ)}Ki.of({name:Ui.Mermaid,load:async()=>F3()});Ki.of({name:Ui.Mindmap,load:async()=>TZ()});Ki.of({name:Ui.Pie,load:async()=>NZ()});Ki.of({name:Ui.Flowchart,alias:[au.Graph],load:async()=>jZ()});Ki.of({name:Ui.Sequence,alias:[au.Sequence],load:async()=>RZ()});Ki.of({name:Ui.Journey,load:async()=>_Z()});Ki.of({name:Ui.Requirement,alias:[au.Requirement],load:async()=>MZ()});Ki.of({name:Ui.Gantt,load:async()=>AZ()});const HZ="#e5c07b",XS="#e06c75",zZ="#56b6c2",BZ="#ffffff",Qf="#abb2bf",Iy="#7d8799",YZ="#61afef",GZ="#98c379",KS="#d19a66",LZ="#c678dd",QZ="#21252b",JS="#2c313a",tO="#282c34",_0="#353a42",PZ="#3E4451",eO="#528bff",qZ=yt.theme({"&":{color:Qf,backgroundColor:tO},".cm-content":{caretColor:eO},".cm-cursor, .cm-dropCursor":{borderLeftColor:eO},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:PZ},".cm-panels":{backgroundColor:QZ,color:Qf},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:tO,color:Iy,border:"none"},".cm-activeLineGutter":{backgroundColor:JS},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:_0},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:_0,borderBottomColor:_0},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:JS,color:Qf}}},{dark:!0}),WZ=xu.define([{tag:V.keyword,color:LZ},{tag:[V.name,V.deleted,V.character,V.propertyName,V.macroName],color:XS},{tag:[V.function(V.variableName),V.labelName],color:YZ},{tag:[V.color,V.constant(V.name),V.standard(V.name)],color:KS},{tag:[V.definition(V.name),V.separator],color:Qf},{tag:[V.typeName,V.className,V.number,V.changed,V.annotation,V.modifier,V.self,V.namespace],color:HZ},{tag:[V.operator,V.operatorKeyword,V.url,V.escape,V.regexp,V.link,V.special(V.string)],color:zZ},{tag:[V.meta,V.comment],color:Iy},{tag:V.strong,fontWeight:"bold"},{tag:V.emphasis,fontStyle:"italic"},{tag:V.strikethrough,textDecoration:"line-through"},{tag:V.link,color:Iy,textDecoration:"underline"},{tag:V.heading,fontWeight:"bold",color:XS},{tag:[V.atom,V.bool,V.special(V.variableName)],color:KS},{tag:[V.processingInstruction,V.string,V.inserted],color:GZ},{tag:V.invalid,color:BZ}]),ZZ=[qZ,bE(WZ)],UZ=new RegExp("^("+["title","accTitle","accDescr","direction","note","end","stateDiagram-v2","stateDiagram","state","erDiagram","PK","FK","UK","classDiagram","class","namespace","architecture-beta","service","group","junction","in","C4Context","C4Container","C4Component","C4Dynamic","C4Deployment","Person_Ext","Person","System_Ext","SystemDb","SystemQueue","System_Boundary","System","Container_Ext","ContainerDb","ContainerQueue","Container_Boundary","Container","Component_Ext","ComponentDb","ComponentQueue","Component","Enterprise_Boundary","Boundary","BiRel","Rel_Up","Rel_Down","Rel_Left","Rel_Right","Rel_Back","Rel_U","Rel_D","Rel_L","Rel_R","Rel"].join("|")+")\\b"),IZ=Ww.define({name:"mermaid-fallback",token(e){return e.match(/^%%.*/)?"comment":e.match(/^"([^"\\]|\\.)*("|$)/)?"string":e.match(UZ)?"keyword":e.match(/^\[\*\]/)?"atom":e.match(/^([<>|}{oxs*+#]*[-=.]{2,}[<>|}{ox*+#]*|<\||\|>|--|\.\.)/)?"operator":e.match(/^[0-9]+(\.[0-9]+)?/)?"number":e.match(/^[A-Za-z_][\w-]*/)?"variableName":(e.next(),null)}}),FZ=new Set(["flowchart","sequence"]);function VZ({value:e,onChange:t}){const n=L.useRef(null),i=L.useRef(null),s=L.useRef(t);L.useEffect(()=>{s.current=t});const r=Wi(u=>u.resolved),l=pt(u=>u.kind),c=FZ.has(l);return L.useEffect(()=>{if(!n.current)return;const u=new yt({parent:n.current,state:Wt.create({doc:e,extensions:[lq,c?F3():IZ,...r==="dark"?[ZZ]:[],yt.lineWrapping,yt.contentAttributes.of({"aria-label":me("panel.mermaidSource")}),Nr.highest(yt.theme({"&":{height:"100%",fontSize:"12.5px",backgroundColor:"transparent"},".cm-scroller":{fontFamily:'"Cascadia Code", Consolas, monospace',lineHeight:"1.55"},"&.cm-focused":{outline:"none"}})),yt.updateListener.of(f=>{f.docChanged&&s.current(f.state.doc.toString())})]})});return i.current=u,()=>{u.destroy(),i.current=null}},[r,c]),L.useEffect(()=>{const u=i.current;if(!u)return;const f=u.state.doc.toString();f!==e&&u.dispatch({changes:{from:0,to:f.length,insert:e}})},[e]),v.jsx("div",{ref:n,className:"code-editor-cm"})}function M0(e){var n;const t=(n=e.data)==null?void 0:n.label;return typeof t=="string"&&t.trim()?t:e.id}function XZ(){const e=pt(f=>f.nodes),t=pt(f=>f.edges),n=pt(f=>f.selectOnly),[i,s]=L.useState(""),r=_e(),l=L.useMemo(()=>{var m;const f=new Map,p=new Map(e.map(g=>[g.id,M0(g)]));for(const g of t){const y=f.get(g.source)??[],$=(m=g.data)==null?void 0:m.label;y.push({to:p.get(g.target)??g.target,label:typeof $=="string"?$:""}),f.set(g.source,y)}return f},[e,t]),c=i.trim().toLowerCase(),u=c?e.filter(f=>M0(f).toLowerCase().includes(c)||f.id.toLowerCase().includes(c)):e;return e.length===0?v.jsx("div",{className:"outline",children:v.jsx("p",{className:"palette-hint",children:r("outline.noNodes")})}):v.jsxs("div",{className:"outline",children:[v.jsx("input",{className:"outline-filter",type:"search",value:i,placeholder:r("outline.filter"),"aria-label":r("outline.filter"),onChange:f=>s(f.target.value)}),v.jsx("p",{className:"outline-summary",children:r("outline.summary",{nodes:e.length,edges:t.length})}),u.length===0?v.jsx("p",{className:"palette-hint",children:r("outline.empty")}):v.jsx("ul",{className:"outline-list",children:u.map(f=>{const p=l.get(f.id)??[],m=M0(f);return v.jsxs("li",{children:[v.jsxs("button",{type:"button",className:`outline-node${f.selected?" selected":""}`,"aria-label":r("outline.select",{name:m}),"aria-current":f.selected?"true":void 0,onClick:()=>n(f.id,"node"),children:[v.jsx("span",{className:"outline-name",children:m}),p.length>0&&v.jsx("span",{className:"outline-count",children:r("outline.connections",{count:p.length})})]}),p.length>0&&v.jsx("ul",{className:"outline-links",children:p.map((g,y)=>v.jsxs("li",{children:[v.jsx("span",{"aria-hidden":"true",children:"→ "}),g.to,g.label&&v.jsxs("em",{children:[" (",g.label,")"]})]},`${g.to}-${y}`))})]},f.id)})})]})}function KZ(){const e=pt(c=>c.code),t=pt(c=>c.parseError),n=pt(c=>c.warning),i=pt(c=>c.setCodeFromEditor),[s,r]=L.useState("code"),l=_e();return v.jsxs("section",{className:"code-panel","aria-label":l("panel.mermaidSource"),children:[v.jsxs("div",{className:"tabs",role:"tablist","aria-label":l("panel.sourceView"),children:[v.jsx("button",{className:s==="code"?"tab active":"tab",role:"tab",id:"tab-code","aria-selected":s==="code","aria-controls":"panel-code",onClick:()=>r("code"),children:l("panel.tabCode")}),v.jsx("button",{className:s==="preview"?"tab active":"tab",role:"tab",id:"tab-preview","aria-selected":s==="preview","aria-controls":"panel-preview",onClick:()=>r("preview"),children:l("panel.tabPreview")}),v.jsx("button",{className:s==="outline"?"tab active":"tab",role:"tab",id:"tab-outline","aria-selected":s==="outline","aria-controls":"panel-outline",onClick:()=>r("outline"),children:l("panel.tabOutline")})]}),s==="code"?v.jsxs("div",{id:"panel-code",role:"tabpanel","aria-labelledby":"tab-code",className:"tabpanel",children:[v.jsx(VZ,{value:e,onChange:i}),t&&v.jsx("div",{className:"parse-error",children:t}),!t&&n&&v.jsx("div",{className:"parse-warning",children:n})]}):s==="outline"?v.jsx("div",{id:"panel-outline",role:"tabpanel","aria-labelledby":"tab-outline",className:"tabpanel outline-panel",children:v.jsx(XZ,{})}):v.jsx("div",{id:"panel-preview",role:"tabpanel","aria-labelledby":"tab-preview",children:v.jsx(j4,{code:e,className:"preview"})})]})}function JZ(e){const t=e.match(/"([^"]*)"\s*$/),n=(t==null?void 0:t[1])??"",s=(t?e.slice(0,t.index):e).trim().split(/[\s,]+/).filter(Boolean);if(s.length<2)return null;const[r,l,...c]=s;return{type:r,name:l,keys:c.map(u=>u.toUpperCase()),comment:n}}function tU(e){return[e.type,e.name,...e.keys,e.comment?`"${e.comment}"`:""].filter(Boolean).join(" ")}function A0(e,t,n){return[...(e??[]).filter(s=>!s.trim().startsWith(`${t}:`)),`${t}:${n}`]}function H0(e,t,n){const i=(e??[]).find(r=>r.trim().startsWith(`${t}:`)),s=i==null?void 0:i.slice(i.indexOf(":")+1).trim();return s&&/^#[0-9a-fA-F]{6}$/.test(s)?s:n}function eU({node:e}){var i;const t=_e(),n=pt(s=>s.updateNodeData);switch(e.type){case"shape":return v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[t("insp.label"),v.jsx("input",{id:"inspector-label",value:e.data.label,onChange:s=>n(e.id,{label:s.target.value})})]}),v.jsxs("label",{children:[t("insp.shape"),v.jsx("select",{value:e.data.shape,onChange:s=>n(e.id,{shape:s.target.value}),children:fw.map(s=>v.jsx("option",{value:s,children:E8[s]},s))})]}),v.jsxs("div",{className:"color-row",children:[v.jsxs("label",{children:[t("insp.fill"),v.jsx("input",{type:"color",value:H0(e.data.styles,"fill","#232a3a"),onChange:s=>n(e.id,{styles:A0(e.data.styles,"fill",s.target.value)})})]}),v.jsxs("label",{children:[t("insp.border"),v.jsx("input",{type:"color",value:H0(e.data.styles,"stroke","#5b8def"),onChange:s=>n(e.id,{styles:A0(e.data.styles,"stroke",s.target.value)})})]}),v.jsxs("label",{children:[t("insp.text"),v.jsx("input",{type:"color",value:H0(e.data.styles,"color","#e6e9f0"),onChange:s=>n(e.id,{styles:A0(e.data.styles,"color",s.target.value)})})]}),(((i=e.data.styles)==null?void 0:i.length)??0)>0&&v.jsx("button",{className:"mini",onClick:()=>n(e.id,{styles:[]}),children:t("insp.reset")})]}),v.jsxs("label",{children:["CSS classes (classDef names, space-separated)",v.jsx("input",{defaultValue:(e.data.classes??[]).join(" "),onBlur:s=>n(e.id,{classes:s.target.value.split(/\s+/).filter(Boolean)})})]})]});case"state":return e.data.stateType==="normal"?v.jsxs("label",{children:[t("insp.label"),v.jsx("input",{value:e.data.label,onChange:s=>n(e.id,{label:s.target.value})})]}):v.jsx("div",{className:"inspector-empty",children:t("insp.pseudoState",{type:e.data.stateType})});case"entity":return v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[t("insp.name"),v.jsx("input",{id:"inspector-label",value:e.data.label,onChange:s=>n(e.id,{label:s.target.value})})]}),v.jsxs("label",{children:[t("insp.attributes")," ",v.jsx("code",{children:'type name PK "comment"'}),v.jsx("textarea",{rows:Math.max(3,e.data.attributes.length+1),defaultValue:e.data.attributes.map(tU).join(`
272
+ `),onBlur:s=>n(e.id,{attributes:s.target.value.split(`
273
+ `).map(JZ).filter(r=>r!==null)})})]})]});case"service":return v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[t("insp.label"),v.jsx("input",{id:"inspector-label",value:e.data.label,onChange:s=>n(e.id,{label:s.target.value})})]}),v.jsxs("label",{children:['Icon — built-in (server, database, cloud…), "logos:aws-s3", or empty',v.jsx("input",{defaultValue:e.data.icon,onBlur:s=>{const r=s.target.value.trim();r&&Jl.getState().recordRecent(r),n(e.id,{icon:r})}})]})]});case"junction":return v.jsx("div",{className:"inspector-empty",children:t("insp.junction")});case"note":return v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[t("insp.text"),v.jsx("textarea",{id:"inspector-label",rows:3,defaultValue:e.data.text,onBlur:s=>n(e.id,{text:s.target.value})},e.id)]}),v.jsxs("label",{children:["Attached to (class name, optional)",v.jsx("input",{defaultValue:e.data.target??"",onBlur:s=>n(e.id,{target:s.target.value.trim()||void 0})},`t-${e.id}`)]})]});case"c4":return v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[t("insp.label"),v.jsx("input",{id:"inspector-label",value:e.data.label,onChange:s=>n(e.id,{label:s.target.value})})]}),v.jsxs("label",{children:[t("insp.elementType"),v.jsx("select",{value:e.data.c4Shape,onChange:s=>n(e.id,{c4Shape:s.target.value}),children:Xk.map(s=>v.jsx("option",{value:s,children:s},s))})]}),v.jsxs("label",{children:[t("insp.description"),v.jsx("textarea",{rows:2,defaultValue:e.data.descr,onBlur:s=>n(e.id,{descr:s.target.value.trim()})})]})]});case"participant":return v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[t("insp.name"),v.jsx("input",{id:"inspector-label",value:e.data.label,onChange:s=>n(e.id,{label:s.target.value})})]}),v.jsxs("label",{children:[t("insp.kind"),v.jsxs("select",{value:e.data.ptype,onChange:s=>n(e.id,{ptype:s.target.value}),children:[v.jsx("option",{value:"participant",children:t("insp.participantBox")}),v.jsx("option",{value:"actor",children:t("insp.actorPerson")})]})]})]});case"class":return v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[t("insp.name"),v.jsx("input",{id:"inspector-label",value:e.data.label,onChange:s=>n(e.id,{label:s.target.value})})]}),v.jsxs("label",{children:["Fields — one per line: ",v.jsx("code",{children:"+int age"}),v.jsx("textarea",{rows:Math.max(2,e.data.members.length+1),defaultValue:e.data.members.join(`
274
+ `),onBlur:s=>n(e.id,{members:s.target.value.split(`
275
+ `).map(r=>r.trim()).filter(Boolean)})})]}),v.jsxs("label",{children:[t("insp.annotations")," ",v.jsx("code",{children:"interface"})," ",t("insp.annotationsHint"),v.jsx("input",{defaultValue:(e.data.annotations??[]).join(" "),onBlur:s=>n(e.id,{annotations:s.target.value.split(/s+/).filter(Boolean)})})]}),v.jsxs("label",{children:["Generic parameter — e.g. ",v.jsx("code",{children:"T"}),v.jsx("input",{defaultValue:e.data.generic??"",onBlur:s=>n(e.id,{generic:s.target.value.trim()||void 0})})]}),v.jsxs("label",{children:["Methods — one per line: ",v.jsx("code",{children:"+run() void"}),v.jsx("textarea",{rows:Math.max(2,e.data.methods.length+1),defaultValue:e.data.methods.join(`
276
+ `),onBlur:s=>n(e.id,{methods:s.target.value.split(`
277
+ `).map(r=>r.trim()).filter(Boolean)})})]})]});default:return v.jsxs("label",{children:[t("insp.label"),v.jsx("input",{id:"inspector-label",value:String(e.data.label),onChange:s=>n(e.id,{label:s.target.value})})]})}}function nU({edge:e}){const t=_e(),n=pt(r=>r.updateEdgeData),i=pt(r=>r.moveMessage),s=e.data;return s?v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[t("insp.label"),v.jsx("input",{id:"inspector-label",value:s.label,onChange:r=>n(e.id,{label:r.target.value})})]}),s.seq&&v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[t("insp.arrow"),v.jsx("select",{value:s.seq.op,onChange:r=>n(e.id,{seq:{op:r.target.value}}),children:D8.map(r=>v.jsxs("option",{value:r,children:[r," — ",T8[r]]},r))})]}),v.jsxs("div",{className:"color-row",children:[v.jsx("button",{className:"mini",onClick:()=>i(e.id,-1),children:"↑ Move up"}),v.jsx("button",{className:"mini",onClick:()=>i(e.id,1),children:"↓ Move down"})]})]}),s.stroke!==void 0&&v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[t("insp.line"),v.jsxs("select",{value:s.stroke,onChange:r=>n(e.id,{stroke:r.target.value}),children:[v.jsx("option",{value:"normal",children:t("insp.lineSolid")}),v.jsx("option",{value:"dotted",children:t("insp.lineDotted")}),v.jsx("option",{value:"thick",children:t("insp.lineThick")})]})]}),v.jsxs("label",{children:[t("insp.arrow"),v.jsxs("select",{value:s.arrow,onChange:r=>n(e.id,{arrow:r.target.value}),children:[v.jsx("option",{value:"arrow_point",children:t("insp.arrowPoint")}),v.jsx("option",{value:"arrow_open",children:t("insp.arrowNone")}),v.jsx("option",{value:"arrow_circle",children:t("insp.arrowCircle")}),v.jsx("option",{value:"arrow_cross",children:t("insp.arrowCross")})]})]}),v.jsxs("label",{className:"check",children:[v.jsx("input",{type:"checkbox",checked:!!s.both,onChange:r=>n(e.id,{both:r.target.checked})}),t("insp.bothEnds")]})]}),s.er&&v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[e.source," side",v.jsx("select",{value:s.er.cardB,onChange:r=>n(e.id,{er:{...s.er,cardB:r.target.value}}),children:X0.map(r=>v.jsx("option",{value:r,children:h1[r]},r))})]}),v.jsxs("label",{children:[e.target," side",v.jsx("select",{value:s.er.cardA,onChange:r=>n(e.id,{er:{...s.er,cardA:r.target.value}}),children:X0.map(r=>v.jsx("option",{value:r,children:h1[r]},r))})]}),v.jsxs("label",{className:"check",children:[v.jsx("input",{type:"checkbox",checked:s.er.identifying,onChange:r=>n(e.id,{er:{...s.er,identifying:r.target.checked}})}),t("insp.identifying")]})]}),s.c4&&v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:[t("insp.technology"),v.jsx("input",{value:s.c4.techn,placeholder:t("insp.techPlaceholder"),onChange:r=>n(e.id,{c4:{...s.c4,techn:r.target.value}})})]}),v.jsxs("label",{className:"check",children:[v.jsx("input",{type:"checkbox",checked:s.c4.relType==="birel",onChange:r=>n(e.id,{c4:{...s.c4,relType:r.target.checked?"birel":"rel"}})}),t("insp.bidirectional")]})]}),s.arch&&v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:["Side at ",e.source,v.jsx("select",{value:s.arch.lhsDir,onChange:r=>n(e.id,{arch:{...s.arch,lhsDir:r.target.value}}),children:["L","R","T","B"].map(r=>v.jsx("option",{value:r,children:r},r))})]}),v.jsxs("label",{children:["Side at ",e.target,v.jsx("select",{value:s.arch.rhsDir,onChange:r=>n(e.id,{arch:{...s.arch,rhsDir:r.target.value}}),children:["L","R","T","B"].map(r=>v.jsx("option",{value:r,children:r},r))})]}),v.jsxs("label",{className:"check",children:[v.jsx("input",{type:"checkbox",checked:s.arch.rhsInto,onChange:r=>n(e.id,{arch:{...s.arch,rhsInto:r.target.checked}})}),"Arrow into ",e.target]}),v.jsxs("label",{className:"check",children:[v.jsx("input",{type:"checkbox",checked:s.arch.lhsInto,onChange:r=>n(e.id,{arch:{...s.arch,lhsInto:r.target.checked}})}),"Arrow into ",e.source]}),v.jsxs("label",{className:"check",children:[v.jsx("input",{type:"checkbox",checked:s.arch.lhsGroup,onChange:r=>n(e.id,{arch:{...s.arch,lhsGroup:r.target.checked}})}),"Attach at ",e.source,"'s group border"]}),v.jsxs("label",{className:"check",children:[v.jsx("input",{type:"checkbox",checked:s.arch.rhsGroup,onChange:r=>n(e.id,{arch:{...s.arch,rhsGroup:r.target.checked}})}),"Attach at ",e.target,"'s group border"]})]}),s.cls&&v.jsxs(v.Fragment,{children:[v.jsxs("label",{children:["Marker at ",e.source,v.jsx("select",{value:s.cls.left,onChange:r=>n(e.id,{cls:{...s.cls,left:r.target.value}}),children:f1.map(r=>v.jsx("option",{value:r,children:r},r))})]}),v.jsxs("label",{children:["Marker at ",e.target,v.jsx("select",{value:s.cls.right,onChange:r=>n(e.id,{cls:{...s.cls,right:r.target.value}}),children:f1.map(r=>v.jsx("option",{value:r,children:r},r))})]}),v.jsxs("label",{className:"check",children:[v.jsx("input",{type:"checkbox",checked:s.cls.dotted,onChange:r=>n(e.id,{cls:{...s.cls,dotted:r.target.checked}})}),t("insp.dottedLine")]}),v.jsxs("label",{children:["Cardinality at ",e.source,v.jsx("input",{value:s.cls.card1??"",placeholder:t("insp.cardOnePlaceholder"),onChange:r=>n(e.id,{cls:{...s.cls,card1:r.target.value||void 0}})})]}),v.jsxs("label",{children:["Cardinality at ",e.target,v.jsx("input",{value:s.cls.card2??"",placeholder:t("insp.cardManyPlaceholder"),onChange:r=>n(e.id,{cls:{...s.cls,card2:r.target.value||void 0}})})]})]})]}):null}function iU(){const e=_e(),t=pt(r=>r.nodes),n=pt(r=>r.edges),i=t.find(r=>r.selected),s=n.find(r=>r.selected);return i?v.jsxs("section",{className:"inspector",children:[v.jsx("div",{className:"panel-title",children:i.type==="group"?e("insp.groupTitle",{id:i.id}):e("insp.nodeTitle",{id:i.id})}),v.jsx(eU,{node:i})]}):s?v.jsxs("section",{className:"inspector",children:[v.jsx("div",{className:"panel-title",children:e("insp.edgeTitle",{source:s.source,target:s.target})}),v.jsx(nU,{edge:s})]}):v.jsx(sU,{})}function sU(){const e=_e(),t=pt(l=>l.kind),n=pt(l=>l.title),i=pt(l=>l.accTitle),s=pt(l=>l.accDescr),r=pt(l=>l.setDiagramMeta);return v.jsxs("section",{className:"inspector",children:[v.jsx("div",{className:"panel-title",children:e("insp.diagramTitle")}),t==="c4"&&v.jsxs("label",{children:[e("insp.title"),v.jsx("input",{defaultValue:n,onBlur:l=>r({title:l.target.value.trim()})},`t-${n}`)]}),v.jsxs("label",{children:[e("inspector.accTitle"),v.jsx("input",{defaultValue:i,onBlur:l=>r({accTitle:l.target.value.trim()})},`at-${i}`)]}),v.jsxs("label",{children:[e("inspector.accDescr"),v.jsx("textarea",{rows:2,defaultValue:s,onBlur:l=>r({accDescr:l.target.value.trim()})},`ad-${s}`)]}),v.jsx("div",{className:"inspector-empty",children:e("inspector.empty")})]})}function rU(){const e=pt(i=>i.parseError),t=pt(i=>i.warning),n=e?`Diagram error: ${e}`:t?`Warning: ${t}`:"";return v.jsx("div",{className:"visually-hidden",role:"alert","aria-atomic":"true",children:n})}function oU(){try{return new URLSearchParams(location.search).has("embed")}catch{return!1}}const Md="*";function lU(e){const t=new URLSearchParams(e).get("origin");if(t===null||t.trim()==="")return null;if(t.trim()===Md)return Md;const n=[];for(const i of t.split(",")){const s=i.trim();if(s)try{const r=new URL(s);if(r.origin==="null"||r.origin!==s.replace(/\/$/,""))continue;n.push(r.origin)}catch{}}return n.length>0?n:null}function aU(){if(window.parent===window)return;const e=window.parent,t=lU(location.search);if(t===null){console.error("[archyne] Embed bridge disabled: no valid `origin` parameter. Load Archyne as `?embed=1&origin=https://your.app` so it knows which origin may read and write the diagram. Use `origin=*` for local development only.");return}const n=t===Md;n&&console.warn("[archyne] Embed bridge running with `origin=*`: any page framing Archyne can read and modify the diagram. Do not use this in production.");const i=l=>{if(n){e.postMessage(l,Md);return}for(const c of t)e.postMessage(l,c)};window.addEventListener("message",l=>{if(l.source!==e||!n&&!t.includes(l.origin))return;const c=l.data;if(!c||typeof c.type!="string")return;const u=pt.getState();(async()=>{try{switch(c.type){case"load":await u.applyCode(String(c.code??""),{record:!0}),i({type:"loaded"});break;case"getCode":i({type:"code",code:u.code});break;case"export":{const f={...v4,...c.options??{}},p=await S4(f,u.nodes,u.code);i({type:"exported",format:f.format,dataUrl:p});break}}}catch(f){i({type:"error",message:f instanceof Error?f.message:String(f)})}})()});let s=pt.getState().code,r;pt.subscribe(l=>{l.code!==s&&(s=l.code,clearTimeout(r),r=setTimeout(()=>i({type:"change",code:s}),300))}),i({type:"ready"})}function cU(){const e=ea(i=>i.toasts),t=ea(i=>i.dismiss),n=_e();return e.length===0?null:v.jsx("div",{className:"toasts","aria-live":"polite",children:e.map(i=>v.jsxs("div",{className:`toast toast-${i.tone}`,...i.tone==="error"?{role:"alert"}:{},children:[v.jsx("span",{children:i.text}),v.jsx("button",{type:"button",className:"toast-close","aria-label":n("toast.dismiss"),onClick:()=>t(i.id),children:v.jsx("span",{"aria-hidden":"true",children:"×"})})]},i.id))})}const uU=[{title:"shortcuts.file",rows:[["Ctrl+O","toolbar.open"],["Ctrl+S","toolbar.save"],["Ctrl+Shift+S","toolbar.saveAs"],["Ctrl+E","toolbar.export"]]},{title:"shortcuts.edit",rows:[["Ctrl+Z","toolbar.undo"],["Ctrl+Y","toolbar.redo"],["Ctrl+C","menu.copy"],["Ctrl+V","menu.paste"],["Ctrl+D","menu.duplicate"],["Ctrl+A","shortcuts.selectAll"],["Delete","menu.delete"]]},{title:"shortcuts.canvas",rows:[["Tab","shortcuts.nextNode"],["C","shortcuts.connect"],["Enter","shortcuts.completeConnect"],["Escape","shortcuts.cancel"],["↑ ↓ ← →","shortcuts.nudge"],["Shift + ↑ ↓ ← →","shortcuts.nudgeFar"]]},{title:"shortcuts.view",rows:[["Ctrl+K","shortcuts.commandPalette"],["?","shortcuts.title"]]}];function hU({onClose:e}){const t=_e();return v.jsxs(Id,{title:t("shortcuts.title"),onClose:e,className:"shortcuts",children:[v.jsx("div",{className:"modal-body shortcuts-body",children:uU.map(n=>v.jsxs("section",{children:[v.jsx("h3",{className:"panel-title",children:t(n.title)}),v.jsx("dl",{className:"shortcut-list",children:n.rows.map(([i,s])=>v.jsxs("div",{className:"shortcut-row",children:[v.jsx("dt",{children:v.jsx("kbd",{children:i})}),v.jsx("dd",{children:t(s)})]},i))})]},n.title))}),v.jsx("div",{className:"modal-actions",children:v.jsx("button",{onClick:e,children:t("about.close")})})]})}const fU=["flowchart","state","er","class","sequence","architecture","c4"],dU=[["dark","toolbar.themeDark"],["light","toolbar.themeLight"],["system","toolbar.themeSystem"]];function pU(e){var n;const t=(n=e.data)==null?void 0:n.label;return typeof t=="string"&&t.trim()?t:e.id}function mU(e,t,n){const i=u=>()=>{n(),u()},s=u=>i(()=>{u().then(()=>nd("toast.saved")).catch(f=>id("toast.saveFailed",f))}),r=()=>pt.getState(),l=()=>ii.getState(),c=[{id:"open",group:"palette.groupCommands",label:e("toolbar.open"),hint:"Ctrl+O",run:i(()=>void l().open().catch(()=>{}))},{id:"save",group:"palette.groupCommands",label:e("toolbar.save"),hint:"Ctrl+S",run:s(()=>l().save())},{id:"saveAs",group:"palette.groupCommands",label:e("toolbar.saveAs"),hint:"Ctrl+Shift+S",run:s(()=>l().saveAs())},{id:"undo",group:"palette.groupCommands",label:e("toolbar.undo"),hint:"Ctrl+Z",run:i(()=>void r().undo())},{id:"redo",group:"palette.groupCommands",label:e("toolbar.redo"),hint:"Ctrl+Y",run:i(()=>void r().redo())},{id:"selectAll",group:"palette.groupCommands",label:e("shortcuts.selectAll"),hint:"Ctrl+A",run:i(()=>r().selectAll())}];pt.getState().unsupported||c.push({id:"autoLayout",group:"palette.groupCommands",label:e("toolbar.autoLayout"),run:i(()=>void r().runAutoLayout())});for(const[u,f]of dU)c.push({id:`theme-${u}`,group:"palette.groupCommands",label:`${e("toolbar.theme")}: ${e(f)}`,run:i(()=>Wi.getState().setTheme(u))});for(const u of fU)c.push({id:`new-${u}`,group:"palette.groupNew",label:e(`kind.${u}`),run:i(()=>r().newDiagram(u))});for(const u of t)c.push({id:`node-${u.id}`,group:"palette.groupNodes",label:pU(u),hint:u.id,run:i(()=>r().selectOnly(u.id,"node"))});return c}function gU({onClose:e}){const t=_e(),n=ta(b=>b.locale),i=pt(b=>b.nodes),[s,r]=L.useState(""),[l,c]=L.useState(0),u=L.useRef(null),f=L.useRef(null),p=L.useRef(null),m=L.useMemo(()=>mU(t,i,e),[n,i,e]),g=L.useMemo(()=>{const b=s.trim().toLowerCase();return(b?m.filter(O=>{var E;return O.label.toLowerCase().includes(b)||((E=O.hint)==null?void 0:E.toLowerCase().includes(b))}):m).slice(0,40)},[m,s]),y=Math.min(l,Math.max(0,g.length-1));L.useEffect(()=>{var S;const b=document.activeElement;return(S=f.current)==null||S.focus(),()=>{var O;return(O=b==null?void 0:b.focus)==null?void 0:O.call(b)}},[]),L.useEffect(()=>{var b,S;(S=(b=u.current)==null?void 0:b.querySelector('[aria-selected="true"]'))==null||S.scrollIntoView({block:"nearest"})},[y]),L.useEffect(()=>{const b=p.current;if(!b)return;const S=O=>{var k;const E=g.length;O.key==="Escape"?(O.stopPropagation(),e()):O.key==="ArrowDown"&&E>0?(O.preventDefault(),c((y+1)%E)):O.key==="ArrowUp"&&E>0?(O.preventDefault(),c((y-1+E)%E)):O.key==="Enter"&&(O.preventDefault(),(k=g[y])==null||k.run())};return b.addEventListener("keydown",S),()=>b.removeEventListener("keydown",S)},[g,y,e]);const $=L.useMemo(()=>{const b=[];return g.forEach((S,O)=>{const E=b[b.length-1];E&&E.group===S.group?E.items.push({command:S,index:O}):b.push({group:S.group,items:[{command:S,index:O}]})}),b},[g]);return v.jsx("div",{className:"modal-overlay",role:"presentation",onMouseDown:b=>{b.target===b.currentTarget&&e()},children:v.jsxs("div",{ref:p,className:"modal command-palette",role:"dialog","aria-modal":"true","aria-label":t("palette.commandTitle"),children:[v.jsx("input",{ref:f,className:"command-input",type:"text",value:s,placeholder:t("palette.commandFilter"),"aria-label":t("palette.commandFilter"),role:"combobox","aria-expanded":"true","aria-controls":"command-list","aria-activedescendant":g[y]?`cmd-${g[y].id}`:void 0,onChange:b=>{r(b.target.value),c(0)}}),g.length===0?v.jsx("p",{className:"palette-hint command-empty",children:t("palette.commandEmpty")}):v.jsx("div",{className:"command-list",id:"command-list",role:"listbox",ref:u,children:$.map(b=>v.jsxs("div",{role:"group","aria-label":t(b.group),children:[v.jsx("div",{className:"panel-title command-group","aria-hidden":"true",children:t(b.group)}),b.items.map(({command:S,index:O})=>v.jsxs("button",{type:"button",id:`cmd-${S.id}`,role:"option",tabIndex:-1,"aria-selected":O===y,className:`command-row${O===y?" active":""}`,onMouseMove:()=>c(O),onClick:S.run,children:[v.jsx("span",{children:S.label}),S.hint&&v.jsx("kbd",{children:S.hint})]},S.id))]},b.group))})]})})}function yU(){const e=pt(p=>p.applyCode),[t,n]=L.useState(!1),[i,s]=L.useState(!1);L.useEffect(()=>{e(kH())},[e]),L.useEffect(()=>{oU()&&aU()},[]),L.useEffect(()=>{DH()},[]),L.useEffect(()=>{const p=m=>{CH()&&m.preventDefault()};return window.addEventListener("beforeunload",p),()=>window.removeEventListener("beforeunload",p)},[]),L.useEffect(()=>{document.documentElement.dataset.theme=Wi.getState().resolved;const p=Wi.subscribe(()=>pt.getState().refreshEdges()),m=window.matchMedia("(prefers-color-scheme: light)"),g=()=>Wi.getState().sync();return m.addEventListener("change",g),()=>{p(),m.removeEventListener("change",g)}},[]),L.useEffect(()=>{},[]),L.useEffect(()=>{const p=m=>{const g=m.target;if(g.tagName==="INPUT"||g.tagName==="TEXTAREA"||g.isContentEditable)return;const y=pt.getState();if(!m.ctrlKey&&!m.metaKey&&!m.altKey){if(m.key==="?"){m.preventDefault(),n(!0);return}const S={ArrowUp:[0,-1],ArrowDown:[0,1],ArrowLeft:[-1,0],ArrowRight:[1,0]}[m.key];if(S&&y.nodes.some(O=>O.selected)){m.preventDefault();const O=m.shiftKey?12:1;y.nudgeSelection(S[0]*O,S[1]*O);return}return}if(!(m.ctrlKey||m.metaKey))return;const $=m.key.toLowerCase();$==="z"&&!m.shiftKey?(m.preventDefault(),y.undo()):$==="y"||$==="z"&&m.shiftKey?(m.preventDefault(),y.redo()):$==="c"?y.copySelection():$==="v"?y.pasteClipboard():$==="d"?(m.preventDefault(),y.copySelection(),y.pasteClipboard()):$==="a"?(m.preventDefault(),y.selectAll()):$==="s"?(m.preventDefault(),(m.shiftKey?ii.getState().saveAs():ii.getState().save()).then(()=>nd("toast.saved")).catch(b=>id("toast.saveFailed",b))):$==="k"?(m.preventDefault(),s(b=>!b)):$==="o"&&(m.preventDefault(),ii.getState().open().catch(()=>{var b;(b=document.querySelector('input[type="file"]'))==null||b.click()}))};return window.addEventListener("keydown",p),()=>window.removeEventListener("keydown",p)},[]);const r=pt(p=>p.booted),l=ho(p=>p.paletteOpen),c=ho(p=>p.sideOpen),u=ho(p=>p.closeDrawers),f=_e();return v.jsxs(Zk,{children:[!r&&v.jsxs("div",{className:"splash",children:[v.jsx("img",{src:"./logo.svg",alt:"",className:"splash-mark"}),v.jsx("div",{className:"splash-name",children:"Archyne"}),v.jsx("div",{className:"splash-sub",children:f("app.loading")})]}),v.jsxs("div",{className:"app",children:[v.jsx(Bz,{}),v.jsxs("div",{className:`main${l?" palette-open":""}${c?" side-open":""}`,children:[v.jsx(v7,{}),v.jsx(W7,{}),v.jsxs("aside",{className:"side","aria-label":f("panel.sourceAndInspector"),children:[v.jsx(KZ,{}),v.jsx(iU,{})]}),(l||c)&&v.jsx("button",{type:"button",className:"drawer-backdrop","aria-label":f("palette.close"),onClick:u})]}),v.jsx(rU,{}),v.jsx(cU,{}),t&&v.jsx(hU,{onClose:()=>n(!1)}),i&&v.jsx(gU,{onClose:()=>s(!1)})]})]})}class wU extends L.Component{constructor(){super(...arguments);Qx(this,"state",{error:null})}static getDerivedStateFromError(n){return{error:n}}render(){if(!this.state.error)return this.props.children;let n="";try{n=localStorage.getItem("graph:code")??""}catch{}return v.jsxs("div",{className:"crash-screen",children:[v.jsx("h2",{children:me("error.crashTitle")}),v.jsx("pre",{className:"crash-error",children:String(this.state.error.stack??this.state.error)}),v.jsx("p",{children:me("error.crashIntro")}),v.jsx("textarea",{className:"crash-code",readOnly:!0,value:n,rows:10}),v.jsxs("div",{className:"crash-actions",children:[v.jsx("button",{onClick:()=>location.reload(),children:me("error.reload")}),v.jsx("button",{onClick:()=>{try{localStorage.removeItem("graph:code")}catch{}location.reload()},children:me("error.reset")})]})]})}}RH();h9.createRoot(document.getElementById("root")).render(v.jsx(L.StrictMode,{children:v.jsx(wU,{children:v.jsx(yU,{})})}));export{hu as C,On as R,Oe as _,Tc as a,Kz as b,xU as c,Xy as d,$O as e,n7 as f,nO as g,bU as h,zi as i,e7 as j,Wz as k,vO as n,aj as r,Pn as s};