decaframe 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +32 -0
- package/README.md +55 -0
- package/dist/archetype.js +1 -0
- package/dist/blocks.css +2822 -0
- package/dist/blocks.js +6 -0
- package/dist/brand.js +1 -0
- package/dist/chart.js +3 -0
- package/dist/chartView.js +1 -0
- package/dist/cli.js +22 -0
- package/dist/colour.js +1 -0
- package/dist/commands.js +1 -0
- package/dist/design.js +1 -0
- package/dist/diagram.js +99 -0
- package/dist/diagramRender.js +1 -0
- package/dist/diagramTheme.js +1 -0
- package/dist/diagramView.js +1 -0
- package/dist/diagramZoom.js +2 -0
- package/dist/export/assets.js +1 -0
- package/dist/export/html.js +6 -0
- package/dist/export/spec.js +1 -0
- package/dist/export/viewer.js +1112 -0
- package/dist/extensions.js +1 -0
- package/dist/figure.js +1 -0
- package/dist/filename.js +1 -0
- package/dist/fit.js +6 -0
- package/dist/fitLoop.js +1 -0
- package/dist/furniture.js +1 -0
- package/dist/icons.js +1 -0
- package/dist/id.js +1 -0
- package/dist/index.js +1 -0
- package/dist/item.js +1 -0
- package/dist/layout.js +1 -0
- package/dist/lint.js +1 -0
- package/dist/markdown.js +32 -0
- package/dist/mcp/browser.js +81 -0
- package/dist/mcp/channel.js +7 -0
- package/dist/mcp/export.js +1 -0
- package/dist/mcp/exportCli.js +11 -0
- package/dist/mcp/fit.js +1 -0
- package/dist/mcp/open.js +1 -0
- package/dist/mcp/openCli.js +1 -0
- package/dist/mcp/read.js +1 -0
- package/dist/mcp/server.js +31 -0
- package/dist/mcp/session.js +2 -0
- package/dist/mcp/stdio.js +2 -0
- package/dist/media.js +1 -0
- package/dist/notes.js +1 -0
- package/dist/page.js +1 -0
- package/dist/placeholder.js +1 -0
- package/dist/present/constants.js +1 -0
- package/dist/prose.js +1 -0
- package/dist/registry.js +1 -0
- package/dist/sizePreview.js +1 -0
- package/dist/slotMarkdown.js +3 -0
- package/dist/table.js +2 -0
- package/dist/template/catalogue.json +1 -0
- package/dist/template/index.js +1 -0
- package/dist/template/look.js +1 -0
- package/dist/text.js +8 -0
- package/dist/theme/atelier.json +1 -0
- package/dist/theme/aurora.json +1 -0
- package/dist/theme/boardroom.json +1 -0
- package/dist/theme/decaframe.json +1 -0
- package/dist/theme/editorial.json +1 -0
- package/dist/theme/emit.js +19 -0
- package/dist/theme/fonts.js +1 -0
- package/dist/theme/foundry.json +1 -0
- package/dist/theme/index.js +1 -0
- package/dist/theme/meadow.json +1 -0
- package/dist/theme/signal.json +1 -0
- package/dist/theme/tokens.json +1 -0
- package/dist/videoPlay.js +1 -0
- package/editor/assets/App-BvOGZ4cc.js +56 -0
- package/editor/assets/PresenterView-Barr5wsl.js +1 -0
- package/editor/assets/Shell-Dvc8Yvly.js +413 -0
- package/editor/assets/_commonjsHelpers-CqkleIqs.js +1 -0
- package/editor/assets/abnfDiagram-N423BO3Z-DMNuYXhv.js +1 -0
- package/editor/assets/arc-DOR9Dhm9.js +1 -0
- package/editor/assets/architectureDiagram-T3A2C74G-CpcCHDGw.js +36 -0
- package/editor/assets/blockDiagram-VBNYF7ZC-CbCqcHim.js +132 -0
- package/editor/assets/c4Diagram-5PPSVZJV-DouVYESX.js +10 -0
- package/editor/assets/channel-Dt7MgGxB.js +1 -0
- package/editor/assets/chunk-2GRJ4B5K-DCJz-Q3N.js +1 -0
- package/editor/assets/chunk-2Q5K7J3B-D5q9RvV7.js +1 -0
- package/editor/assets/chunk-5RXB4S5H-DnaXL-Vg.js +231 -0
- package/editor/assets/chunk-5VM5RSS4-Dsc890tp.js +15 -0
- package/editor/assets/chunk-6Q2QTUOP-B5F620Er.js +88 -0
- package/editor/assets/chunk-GF5L2VYU-D6F2cocl.js +206 -0
- package/editor/assets/chunk-JWPE2WC7-bRknM2iE.js +1 -0
- package/editor/assets/chunk-KBJHAD2P-DOPClpqF.js +1 -0
- package/editor/assets/chunk-RYQCIY6F-CvMFFqLU.js +1 -0
- package/editor/assets/chunk-XXDRQBXY-1qxA3khf.js +1 -0
- package/editor/assets/classDiagram-JCYQIIEL-DCQKoo1F.js +1 -0
- package/editor/assets/classDiagram-v2-OCEON4UE-DCQKoo1F.js +1 -0
- package/editor/assets/cose-bilkent-JH36ORCC-ClwDXN93.js +1 -0
- package/editor/assets/cynefin-VYW2F7L2-D_3oIqit.js +178 -0
- package/editor/assets/cynefinDiagram-MW4NZA55-5VKykgH3.js +62 -0
- package/editor/assets/cytoscape.esm-BjAbmLdb.js +331 -0
- package/editor/assets/dagre-VZM6K2ZE-DcheWwdS.js +4 -0
- package/editor/assets/defaultLocale-DX6XiGOO.js +1 -0
- package/editor/assets/diagram-7IWD3JNH-BKU8hufg.js +30 -0
- package/editor/assets/diagram-B4RE2ZJO-C6NwNXMM.js +3 -0
- package/editor/assets/diagram-LBJQPF4R-D5l8kaaB.js +24 -0
- package/editor/assets/diagram-Q27KOJAE-B839mp_E.js +24 -0
- package/editor/assets/diagram-UB23O5K3-BEJ8nrHN.js +41 -0
- package/editor/assets/ebnfDiagram-BXEA7PRR-Clexv7zP.js +1 -0
- package/editor/assets/erDiagram-JOGREHBK-CQiS9gcI.js +85 -0
- package/editor/assets/flowDiagram-UKHOOZJN-CKnVd1JX.js +156 -0
- package/editor/assets/ganttDiagram-PKOTCBZU-B2_YsT7P.js +292 -0
- package/editor/assets/gitGraphDiagram-DS77QQ5N-woKMsCpe.js +106 -0
- package/editor/assets/graph-C9eacEi8.js +1 -0
- package/editor/assets/index-CBRsrwap.css +1 -0
- package/editor/assets/index-CnMC8Z9d.js +9167 -0
- package/editor/assets/index-CzJ1nSGZ.js +61 -0
- package/editor/assets/infoDiagram-6WML65LV-DQBHUzYs.js +2 -0
- package/editor/assets/init-Gi6I4Gst.js +1 -0
- package/editor/assets/ishikawaDiagram-WSZJBQD7-B0ECJjey.js +70 -0
- package/editor/assets/journeyDiagram-NVQOT4AX-C6IoE7ds.js +139 -0
- package/editor/assets/kanban-definition-27J2QSJJ-BsRx6-QA.js +89 -0
- package/editor/assets/katex-C5jXJg4s.js +257 -0
- package/editor/assets/layout-DEXfKzaS.js +1 -0
- package/editor/assets/linear-CZdkbpsZ.js +1 -0
- package/editor/assets/map-Czzmt4hB.js +1 -0
- package/editor/assets/mermaid.core-BD7SxJD7.js +314 -0
- package/editor/assets/mindmap-definition-FAOFIHXS-zQTmawZC.js +96 -0
- package/editor/assets/ordinal-Cboi1Yqb.js +1 -0
- package/editor/assets/pegDiagram-VL7TDLO6-DwfoSDjb.js +1 -0
- package/editor/assets/pieDiagram-7S7Q4E2Y-CFju-NFP.js +39 -0
- package/editor/assets/quadrantDiagram-CIZ2JOQS-BD6kYPyE.js +7 -0
- package/editor/assets/railroadDiagram-AXF67PYL-RqQwm-lL.js +1 -0
- package/editor/assets/requirementDiagram-LRYGKXZP-piqHrBVs.js +84 -0
- package/editor/assets/sankeyDiagram-W5VNT64P-CiALLT6P.js +40 -0
- package/editor/assets/sequenceDiagram-SI44F4Z6-CjpaYPxa.js +162 -0
- package/editor/assets/sizeCapture-X5ZJPWSS-DG9i3uEZ.js +1 -0
- package/editor/assets/stateDiagram-OKZ733FA-BgfrUiLR.js +1 -0
- package/editor/assets/stateDiagram-v2-UEYNNEHI-OBUiw3fk.js +1 -0
- package/editor/assets/swimlanes-SLNWSIFB-edAhP15G.js +2 -0
- package/editor/assets/swimlanesDiagram-ULZ7WXOC-BvcKTcG0.js +8 -0
- package/editor/assets/timeline-definition-Z64GVDOM-CLCag48V.js +120 -0
- package/editor/assets/vennDiagram-T6HMQDX7-CNuGpJHG.js +34 -0
- package/editor/assets/wardleyDiagram-T6FBY63Y-D-NVpbtn.js +78 -0
- package/editor/assets/xychartDiagram-ELKLHX3M-CmO8305Y.js +7 -0
- package/editor/favicon.ico +0 -0
- package/editor/index.html +15 -0
- package/package.json +61 -0
|
@@ -0,0 +1,56 @@
|
|
|
1
|
+
import{C as Mp,a as Lp,H as _p,D as Ip,P as Fp,b as Zp,F as qp,I as Up,B as Xp,S as Vp,c as Kp,d as Jp,e as em,f as tm,g as im,h as nm,T as sm,i as rm,k as om,l as lm,m as am,n as hm,o as cm,p as um,q as fm,r as dm,s as pm,u as mm,w as gm,x as $m,V as wm,M as ym,y as bm,z as xm,A as Om,E as vm,G as km,J as Sm,K as Cm,L as Em,N as Dm,O as jm,Q as Rm,R as Nm,U as Pm,W as Tm,X as Hm,Y as Ym,Z as zm,$ as Gm,a0 as Qm,a1 as Am,a2 as Bm,a3 as Wm,a4 as Mm,a5 as Lm,a6 as _m,a7 as Im,a8 as Fm,a9 as Zm,aa as qm,ab as Um,ac as Xm,ad as Vm,ae as Km,af as ft,ag as Jm,j as p,ah as Sn,ai as e5,aj as Qc,ak as vo,al as Ac,am as t5,an as i5,ao as mr,ap as n5,aq as An,ar as Xn,as as Bc,at as Wc,au as Mc,av as s5,aw as r5,ax as o5,ay as l5,az as Lc,aA as Gr,aB as a5,aC as h5,aD as c5,aE as u5,aF as f5,aG as d5,aH as p5,aI as m5,aJ as g5,aK as $5,aL as w5,aM as y5,aN as b5,aO as x5,aP as O5,aQ as Ca,aR as v5,aS as k5,aT as S5,aU as C5,aV as ko,aW as Ys,aX as E5,aY as Ea,aZ as Da,a_ as D5,a$ as j5,b0 as R5,b1 as _c,b2 as N5,b3 as P5,b4 as ja,b5 as So,b6 as Ic,b7 as T5,b8 as H5,b9 as Y5,ba as z5,bb as G5,t as Q5,bc as A5,bd as B5,be as W5}from"./index-CnMC8Z9d.js";import{c as M5,r as g,D as Bi,d as Wi,e as Mi,f as Li,g as yn,h as Fc,B as Xt,s as L5,i as _5,j as I5,m as F5,k as Ra,t as Z5,l as q5,o as U5,p as X5,q as V5,v as K5,w as Na,x as J5,y as Co,z as eg,A as tg,C as ig,F as ng,M as gr,T as sg,H as Eo,R as Vn,I as Zc,J as ii,K as rg,L as og,S as lg,N as ag,O as hg,Q as cg,U as Pa,G as xe,V as ug,W as fg,X as qc,Y as dg,Z as pg,_ as mg,$ as Qr,a0 as gg,a1 as Uc,a2 as Ta,a3 as $g,a4 as wg,a5 as yg,a6 as bg,a7 as xg,a8 as Ha,a9 as Og,aa as vg,ab as Ya,ac as Bn,ad as kg,ae as Ar,af as Do,ag as Sg,ah as Cg,ai as Eg,aj as Xc,ak as Dg,al as Yl,am as jg,an as Rg,ao as Ng,ap as Pg,aq as Tg,ar as Hg,as as Yg,at as zg,au as fi,av as Gg,aw as hi,ax as Qg,ay as Ag,az as Bg,aA as Wg,aB as Mg,aC as Lg,aD as _g,aE as Ig,aF as Fg,aG as Zg,aH as qg,aI as Ug,aJ as Xg,aK as Vg,aL as Kg,aM as Jg,aN as e$,aO as t$,aP as Vc,aQ as jo,aR as Ro,a as Kc,n as i$,E as Jc,aS as n$,aT as s$,u as r$,aU as za,aV as o$,aW as l$,aX as a$,aY as h$,aZ as c$,a_ as u$,a$ as f$,b0 as d$,b1 as p$}from"./Shell-Dvc8Yvly.js";import"./_commonjsHelpers-CqkleIqs.js";const m$=[...Um,...Xm,"paragraph","heading","tableCell","tableHeader"];function Kn(){return[Zm.configure({document:!1,paragraph:!1,heading:!1,bulletList:!1,orderedList:!1,listItem:!1,blockquote:!1,codeBlock:!1,horizontalRule:!1,hardBreak:{keepMarks:!0},trailingNode:!1,listKeymap:!1}),qm.configure({types:m$,alignments:["left","center","right"]}),Mp,Lp,_p,Ip,Fp,Zp,qp,Up,Xp,Vp,Kp,Jp,em,tm,im,nm,sm,rm,om,lm,am,hm,cm,um,fm,dm,pm,mm,gm,$m,wm,ym,bm,xm,Om,vm,km,Sm,Cm,Em,Dm,jm,Rm,Nm,Pm,Tm,Hm,Ym,zm,Gm,Qm,Am,Bm,Wm,Mm,Lm,_m,Im,Fm]}function $r(i){return Vm(w$(i),Kn())}let Br=null;const g$=()=>{if(!Br){const i=Km(Kn());Br=new Set(Object.keys(i.nodes).filter(e=>"v"in(i.nodes[e].spec.attrs??{})))}return Br},$$=1;function w$(i){const e=g$(),t=n=>{var r;const s={...n};return n.type&&e.has(n.type)&&(((r=n.attrs)==null?void 0:r.v)??null)===null&&(s.attrs={...n.attrs,v:$$}),n.content&&(s.content=n.content.map(t)),s};return t(i)}/**
|
|
2
|
+
* @license lucide-react v1.27.0 - ISC
|
|
3
|
+
*
|
|
4
|
+
* This source code is licensed under the ISC license.
|
|
5
|
+
* See the LICENSE file in the root directory of this source tree.
|
|
6
|
+
*/const y$=[["path",{d:"M20 6 9 17l-5-5",key:"1gmf2c"}]],b$=M5("check",y$),Ga=420,hs=46,x$=.0018,ri=(i,e,t)=>Math.min(t,Math.max(e,i));function O$(i,e,t,n){const r=Math.max(i/t.w,e/t.h)*n.zoom,o=t.w*r,l=t.h*r;return{photoW:o,photoH:l,left:n.focusX/100*(i-o),top:n.focusY/100*(e-l)}}function eu({editor:i,blockId:e,itemId:t,open:n,onOpenChange:s,frameSelector:r=".media-frame",onCommit:o}){var H;const l=((H=ft(i.state.doc,t))==null?void 0:H.node.attrs)??{},a=typeof l.src=="string"?l.src:"",[h,c]=g.useState({focusX:50,focusY:50,zoom:1}),[u,f]=g.useState(16/9),[d,m]=g.useState(null),$=g.useRef(null),w=g.useRef(null),y=g.useRef(!1);if(g.useEffect(()=>{if(n&&!y.current){y.current=!0;const{focusX:E,focusY:B,zoom:_}=Jm(l);c({focusX:E,focusY:B,zoom:_});const q=ft(i.state.doc,t),ee=q?i.view.nodeDOM(q.pos):null,ne=ee instanceof HTMLElement?ee.matches(r)?ee:ee.querySelector(r):null,P=ne==null?void 0:ne.getBoundingClientRect();P&&P.height>0&&f(P.width/P.height)}n||(y.current=!1)}),g.useEffect(()=>{const E=$.current;if(!E||!n)return;const B=_=>{_.preventDefault(),c(q=>({...q,zoom:ri(q.zoom*Math.exp(-_.deltaY*x$),1,Sn)}))};return E.addEventListener("wheel",B,{passive:!1}),()=>E.removeEventListener("wheel",B)},[n]),!e||!a)return null;const x=Ga-hs*2,O=Math.round(x/u),j=O+hs*2,k=d?O$(x,O,d,h):null,v=(E,B)=>{const _=w.current;if(!_||!k)return;const q=x-k.photoW,ee=O-k.photoH;c(ne=>({...ne,focusX:q===0?ne.focusX:ri(_.focusX+E/q*100,0,100),focusY:ee===0?ne.focusY:ri(_.focusY+B/ee*100,0,100)}))},b=(E,B)=>c(_=>({..._,focusX:ri(_.focusX+E,0,100),focusY:ri(_.focusY+B,0,100)})),D=()=>c({focusX:50,focusY:50,zoom:1}),R=()=>{const E={focusX:Math.round(h.focusX),focusY:Math.round(h.focusY),zoom:Math.round(h.zoom*100)/100},B=E.focusX!==50||E.focusY!==50||E.zoom!==1;o?o(B?E:null):L5(i,e,t,B?E:null),s(!1)},C={width:x,height:O,left:hs,top:hs};return p.jsx(Bi,{open:n,onOpenChange:s,children:p.jsxs(Wi,{className:"sm:max-w-lg",children:[p.jsxs(Mi,{children:[p.jsx(Li,{children:"Frame this picture"}),p.jsx(yn,{children:"Drag the picture to choose which part shows, and scroll to move closer in. The bright window is the shape this picture has on the page."})]}),p.jsxs("div",{ref:$,className:"df-frame-stage",style:{width:Ga,height:j},role:"application","aria-label":"Picture framing. Arrow keys move the picture, plus and minus zoom, 0 centres.",tabIndex:0,autoFocus:!0,onPointerDown:E=>{E.currentTarget.setPointerCapture(E.pointerId),w.current={x:E.clientX,y:E.clientY,focusX:h.focusX,focusY:h.focusY}},onPointerMove:E=>{w.current&&v(E.clientX-w.current.x,E.clientY-w.current.y)},onPointerUp:E=>{E.currentTarget.releasePointerCapture(E.pointerId),w.current=null},onKeyDown:E=>{const B=E.shiftKey?10:2,q={ArrowLeft:()=>b(-B,0),ArrowRight:()=>b(B,0),ArrowUp:()=>b(0,-B),ArrowDown:()=>b(0,B),"+":()=>c(ee=>({...ee,zoom:ri(ee.zoom+.1,1,Sn)})),"=":()=>c(ee=>({...ee,zoom:ri(ee.zoom+.1,1,Sn)})),"-":()=>c(ee=>({...ee,zoom:ri(ee.zoom-.1,1,Sn)})),0:D}[E.key];q&&(E.preventDefault(),q())},children:[p.jsx("div",{className:"df-frame-photo",style:C,children:p.jsx("img",{src:a,alt:"",draggable:!1,onLoad:E=>m({w:E.currentTarget.naturalWidth||1,h:E.currentTarget.naturalHeight||1}),style:k?{width:k.photoW,height:k.photoH,left:k.left,top:k.top}:{width:"100%",height:"100%",left:0,top:0}})}),p.jsx("div",{className:"df-frame-window",style:C,"aria-hidden":!0})]}),p.jsxs("label",{className:"df-frame-zoom",children:[p.jsx("span",{children:"Zoom"}),p.jsx("input",{type:"range",min:1,max:Sn,step:.05,value:h.zoom,"aria-label":"Zoom",onChange:E=>c(B=>({...B,zoom:Number(E.target.value)}))}),p.jsxs("span",{className:"df-frame-readout",children:[h.zoom.toFixed(2),"×"]})]}),p.jsxs(Fc,{children:[p.jsx(Xt,{variant:"ghost",onClick:D,children:"Centre"}),p.jsx(Xt,{variant:"outline",onClick:()=>s(!1),children:"Cancel"}),p.jsx(Xt,{onClick:R,children:"Done"})]})]})})}const v$=170,Wr=e5,tu=()=>vo.filter(i=>i.kind==="page");function k$(i){const e=g.useRef(null),[t,n]=g.useState(null);return g.useEffect(()=>{if(!i||!e.current||t)return;const s=new Qc({element:e.current,extensions:Kn(),content:$r({type:"doc",content:tu().map(r=>r.content)}),editable:!1});n(s)},[i,t]),g.useEffect(()=>()=>t==null?void 0:t.destroy(),[t]),{host:e,stage:t}}function S$(i,e){const t=s=>{var l;const r=document.createTreeWalker(s,NodeFilter.SHOW_TEXT),o=[];for(;r.nextNode();){const a=r.currentNode;(l=a.nodeValue)!=null&&l.trim()&&o.push(a)}return o},n=t(i).map(s=>s.parentElement?getComputedStyle(s.parentElement).color:"");t(e).forEach((s,r)=>{var l;const o=document.createElement("span");o.className="df-tpl-bar",n[r]&&(o.style.background=n[r]),o.textContent=s.nodeValue,(l=s.parentNode)==null||l.replaceChild(o,s)})}function C$(){const i=()=>{const n=document.documentElement.dataset;return`${n.theme??""}:${n.mode??""}`},[e,t]=g.useState(i);return g.useEffect(()=>{const n=new MutationObserver(()=>t(i()));return n.observe(document.documentElement,{attributes:!0,attributeFilter:["data-theme","data-mode"]}),t(i()),()=>n.disconnect()},[]),e}function E$({stage:i,index:e,themeKey:t}){const n=g.useRef(null);return g.useEffect(()=>{const s=n.current;if(!s||!i)return;const r=i.view.dom.querySelectorAll(".page")[e];if(!r||!r.offsetWidth)return;const o=v$/r.offsetWidth,l=r.cloneNode(!0);l.removeAttribute("contenteditable"),l.querySelectorAll("[contenteditable]").forEach(h=>h.removeAttribute("contenteditable")),S$(r,l),l.style.transform=`scale(${o})`,l.style.transformOrigin="top left",l.style.boxShadow="none";const a=r.getBoundingClientRect();s.style.height=`${Ac(getComputedStyle(r).aspectRatio,a)*o}px`,s.replaceChildren(l)},[i,e,t]),p.jsx("div",{className:"df-tpl-thumb",ref:n,"aria-hidden":"true"})}function D$({open:i,onOpenChange:e,onPick:t}){const{host:n,stage:s}=k$(i),r=C$(),o=g.useMemo(tu,[]),l=g.useMemo(()=>{const a=new Map(Wr.map(h=>[h,[]]));return o.forEach(h=>{const c=h.group&&a.has(h.group)?h.group:Wr[Wr.length-1];a.get(c).push(h)}),[...a].filter(([,h])=>h.length)},[o]);return p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"df-tpl-stage",ref:n,"aria-hidden":"true"}),p.jsx(Bi,{open:i,onOpenChange:e,children:p.jsxs(Wi,{className:"df-tpl-dialog",children:[p.jsxs(Mi,{children:[p.jsx(Li,{children:"Add a page from a template"}),p.jsx(yn,{children:"Pick an arrangement. It is inserted as a new page — nothing already on the document changes."})]}),p.jsx("div",{className:"df-tpl-shelves",children:l.map(([a,h])=>p.jsxs("section",{children:[p.jsx("h3",{className:"df-tpl-shelf",children:a}),p.jsx("div",{className:"df-tpl-grid",children:h.map(c=>p.jsxs("button",{className:"df-tpl-item",onClick:()=>{t(c.id),e(!1)},children:[p.jsx(E$,{stage:s,index:o.indexOf(c),themeKey:r}),p.jsx("span",{className:"df-tpl-name",children:c.name})]},c.id))})]},a))})]})})]})}const j$=380,R$="lead-and-set",N$=()=>vo.find(i=>i.id===R$&&i.kind==="page")??vo.find(i=>i.kind==="page");function P$(i){const e=g.useRef(null),[t,n]=g.useState(null);return g.useEffect(()=>{!i||!e.current||t||n(new Qc({element:e.current,extensions:Kn(),content:$r({type:"doc",content:[N$().content]}),editable:!1}))},[i,t]),g.useEffect(()=>()=>t==null?void 0:t.destroy(),[t]),{host:e,stage:t}}function T$({stage:i,themeId:e,mode:t}){const n=g.useRef(null);return g.useEffect(()=>{const s=n.current;if(!s||!i)return;const r=i.view.dom.querySelector(".page");if(!r||!r.offsetWidth)return;const o=j$/r.offsetWidth,l=r.cloneNode(!0);l.removeAttribute("contenteditable"),l.querySelectorAll("[contenteditable]").forEach(h=>h.removeAttribute("contenteditable")),l.style.transform=`scale(${o})`,l.style.transformOrigin="top left",l.style.boxShadow="none";const a=r.getBoundingClientRect();s.style.height=`${Ac(getComputedStyle(r).aspectRatio,a)*o}px`,s.replaceChildren(l)},[i]),p.jsx("div",{className:"df-theme-thumb",ref:n,"data-theme":e,"data-mode":t,"aria-hidden":"true"})}function H$({open:i,onOpenChange:e,current:t,mode:n,onPick:s}){const{host:r,stage:o}=P$(i);return p.jsxs(p.Fragment,{children:[p.jsx("div",{className:"df-tpl-stage",ref:r,"aria-hidden":"true"}),p.jsx(Bi,{open:i,onOpenChange:e,children:p.jsxs(Wi,{className:"df-tpl-dialog df-theme-dialog",children:[p.jsxs(Mi,{children:[p.jsx(Li,{children:"Theme"}),p.jsx(yn,{children:"What the whole document is painted with — type, ink, accent and fills. The words on the page do not change."})]}),p.jsx("div",{className:"df-theme-grid",children:t5.map(l=>p.jsxs("button",{className:"df-theme-item","data-theme-id":l.id,"data-active":l.id===t||void 0,"aria-pressed":l.id===t,onClick:()=>{s(l.id),e(!1)},children:[p.jsx(T$,{stage:o,themeId:l.id,mode:n}),p.jsx("span",{className:"df-tpl-name",children:l.name})]},l.id))})]})})]})}const Y$=500,z$=2e3;async function G$(i){let e;try{e=await fetch("/export")}catch(l){return{error:l.message,missingImages:[]}}if(!e.ok)return{error:(await e.json().catch(()=>({}))).error??e.statusText,missingImages:[]};const t=e.headers.get("x-export-report"),n=t?JSON.parse(decodeURIComponent(t)):{missingImages:[]},s=await e.text(),r=URL.createObjectURL(new Blob([s],{type:"text/html"})),o=document.createElement("a");return o.href=r,o.download=i5(i,mr().name),o.click(),URL.revokeObjectURL(r),{missingImages:n.missingImages,themeFallback:n.themeFallback}}function Q$(i){let e=0,t=!1,n=!1,s=!0,r=!1,o=!1,l=null,a=null;const h=()=>{l&&clearTimeout(l),a&&clearTimeout(a),l=null,a=null},c=y=>{r||(r=!0,h(),console.warn(`decaframe: ${y} — reloading`),window.location.reload())},u=async()=>{if(h(),!(r||t)){t=!0;try{const y=await fetch("/document",{method:"POST",headers:{"content-type":"application/json"},body:JSON.stringify({revision:e,doc:i.getJSON()})});if(y.status===409){c("the agent changed this document while you were editing");return}if(!y.ok){console.error(`decaframe: commit refused (${y.status})`,await y.text());return}e=(await y.json()).revision}catch(y){console.error(`decaframe: commit failed — ${y.message}`)}finally{t=!1}}},f=()=>{r||n||(l&&clearTimeout(l),l=setTimeout(u,Y$),a||(a=setTimeout(u,z$)))},d=new EventSource("/events");d.addEventListener("hello",y=>{const{revision:x,doc:O}=JSON.parse(y.data);if(s){s=!1,e=x,JSON.stringify(i.getJSON())!==JSON.stringify(O)&&(n=!0,i.commands.setContent($r(O),{errorOnInvalidContent:!0}),n=!1);return}if(JSON.stringify(i.getJSON())!==JSON.stringify(O)){c("the document changed while the channel was down");return}e=x}),d.addEventListener("change",y=>{const{revision:x}=JSON.parse(y.data);if(!(t||x<=e)){if(i.isFocused){o=!0;return}c("the agent changed this document")}}),d.onerror=()=>{console.warn("decaframe: change channel disconnected, retrying")};const m=()=>f(),$=()=>{u().then(()=>{o&&c("the agent changed this document")})},w=()=>{document.visibilityState==="hidden"&&u()};return i.on("update",m),i.on("blur",$),document.addEventListener("visibilitychange",w),()=>{r=!0,h(),d.close(),i.off("update",m),i.off("blur",$),document.removeEventListener("visibilitychange",w)}}const Qt=(i,e)=>e?{type:i,content:[{type:"text",text:e}]}:null,Jn=i=>i.filter(Boolean),W=i=>({type:"item",attrs:{icon:i.icon??null,emphasis:i.emphasis??null},content:Jn([Qt("itemMeta",i.meta),Qt("itemTitle",i.title),i.body?{type:"itemBody",content:[ji(i.body)]}:null])}),mt=i=>({type:"stat",content:Jn([Qt("statLabel",i.label),Qt("statValue",i.value),Qt("statNote",i.note)])}),A$=i=>({type:"mediaItem",attrs:{src:i.src,alt:i.alt??null},content:Jn([Qt("mediaCaption",i.caption)])}),ye=(i,e,...t)=>({type:"page",attrs:{format:"16:9"},content:Jn([Qt("pageEyebrow",i),Qt("pageTitle",e),...t])}),Me=(i,e)=>({type:i,content:e}),Mr=(i,e,t)=>({type:i,attrs:{arrangement:e},content:t}),B$=(i,e,t={})=>({type:"chart",attrs:{...t,categories:e.categories,series:e.series},content:[{type:"chartTitle",content:i.title?[{type:"text",text:i.title}]:void 0},{type:"chartAxisY",content:i.axisY?[{type:"text",text:i.axisY}]:void 0},{type:"chartAxisX",content:i.axisX?[{type:"text",text:i.axisX}]:void 0}]}),Lr=(i,...e)=>({type:"layout",attrs:{layout:i},content:e}),oi=(i,...e)=>({type:"layoutRegion",attrs:{region:i},content:e}),Ii=i=>({type:"paragraph",content:[{type:"text",text:i}]}),W$="https://img.peapix.com/5747a929fad04e2aa16b1257f5b5d31b_1280.jpg",cs=(i,e,t,...n)=>({type:"page",attrs:{format:"16:9",accent:i},content:Jn([{type:"pageAccent",attrs:{src:W$,alt:"A lake at dusk"}},Qt("pageEyebrow",e),Qt("pageTitle",t),...n])}),Qa=(i,e)=>({type:i,attrs:{colspan:1,rowspan:1},...e?{content:[{type:"text",text:e}]}:{}}),Aa=(i,e,t)=>({type:i,content:[...e.length?[{type:"tableRow",content:e.map(n=>Qa("tableHeader",n))}]:[],...t.map(n=>({type:"tableRow",content:n.map(s=>Qa("tableCell",s))}))]}),ji=i=>({type:"paragraph",content:[{type:"text",text:i}]}),Ba=i=>({type:"heading",attrs:{level:3},content:[{type:"text",text:i}]}),M$=(i,e)=>({type:"quote",content:[{type:"quoteText",content:[{type:"text",text:i}]},{type:"attribution",content:[{type:"text",text:e}]}]}),us=(i,...e)=>({type:i?"orderedList":"bulletList",content:e.map(t=>({type:"listItem",content:[ji(t)]}))}),L$={type:"doc",content:[ye("01 — Positioning","What Meridian replaces",Me("box",[W({icon:"database",title:"Three warehouses",body:"Query planning, feature storage and the metrics layer collapse into one engine with a single copy of the data."}),W({icon:"workflow",title:"A nightly batch",body:"Incremental materialisation replaces the 04:00 rebuild, so freshness stops being a scheduling problem."}),W({icon:"shield",title:"Four access policies",body:"One policy engine evaluated at query time, rather than per-tool grants that drift within a quarter."})])),ye("02 — Platform","What it does",Me("box",[W({icon:"zap",title:"Incremental compute",body:"Only the partitions a change touches are recomputed."}),W({icon:"branch",title:"Branchable data",body:"Fork the warehouse, test a migration, merge or discard."}),W({icon:"lock",title:"Row-level policy",body:"Enforced in the planner, not bolted onto each client."}),W({icon:"signal",title:"Freshness SLOs",body:"Per-table targets, with alerting when a source stalls."}),W({icon:"route",title:"Query routing",body:"Hot paths served from cache, cold ones from object storage."}),W({icon:"search",title:"Lineage search",body:"Trace any column back through every transform that shaped it."})])),ye("03 — Platform","Where it runs",Me("box",[W({icon:"globe",title:"Cloud",body:"Managed, four regions, single-tenant compute per account."}),W({icon:"lock",title:"VPC",body:"Control plane hosted, data plane inside your network."}),W({icon:"cpu",title:"On-prem",body:"Air-gapped installs, licensed per node."}),W({icon:"clock",title:"Local",body:"A single binary for development against a sampled copy."})])),ye("04 — Platform","What ships in the box",Me("box",[W({icon:"search",title:"Catalogue",body:"Every table, column and owner."}),W({icon:"branch",title:"Lineage",body:"Column-level, computed from plans."}),W({icon:"signal",title:"Monitors",body:"Freshness and volume, per table."}),W({icon:"shield",title:"Policy",body:"Row and column rules in the planner."}),W({icon:"activity",title:"Usage",body:"Which queries touch which columns."}),W({icon:"scale",title:"Cost",body:"Attributed per team and per model."}),W({icon:"alert",title:"Alerting",body:"Routed to the owner, not a channel."})])),ye("05 — Platform","Sources we read natively",Me("box",[W({icon:"database",title:"Postgres",body:"Logical replication, no triggers."}),W({icon:"layers",title:"Snowflake",body:"Share-based, zero egress."}),W({icon:"boxes",title:"S3 / Iceberg",body:"Manifest-aware incremental scans."}),W({icon:"radio",title:"Kafka",body:"Exactly-once into the log tier."}),W({icon:"globe",title:"Salesforce",body:"Bulk API with schema drift handling."}),W({icon:"activity",title:"Segment",body:"Event streams landed raw and typed."}),W({icon:"cpu",title:"DynamoDB",body:"Streams, with TTL rows reconciled."}),W({icon:"clock",title:"Cron / SFTP",body:"For the ones that still arrive as CSV."}),W({icon:"scale",title:"dbt Core",body:"Existing models run unchanged."})])),ye("06 — Architecture","How a query resolves",Me("steps",[W({title:"Parse",body:"SQL is bound against the semantic layer, so metric names resolve before planning."}),W({title:"Authorise",body:"Row and column policy is folded into the plan as predicates, not applied after."}),W({title:"Route",body:"The planner picks cache, hot tier or object storage per scanned partition."}),W({title:"Return",body:"Results stream back while later partitions are still being read."})])),ye("07 — Adoption","Onboarding, week by week",Me("steps",[W({title:"Connect",body:"Read-only credentials against one source."}),W({title:"Mirror",body:"We replicate and reconcile against your existing warehouse."}),W({title:"Compare",body:"Every metric is diffed until the two agree to the row.",emphasis:!0}),W({title:"Cut over",body:"BI tools repoint. The old warehouse stays up."}),W({title:"Decommission",body:"Nightly batch is switched off once a fortnight passes clean."}),W({title:"Expand",body:"Remaining sources land one at a time."})])),ye("08 — Roadmap","Where this goes next",Me("timeline",[W({meta:"Shipped",title:"Incremental engine",body:"Partition-level recompute across all supported sources."}),W({meta:"Q3 2026",title:"Branching GA",body:"Fork, test and merge warehouse state without a copy.",emphasis:!0}),W({meta:"Q4 2026",title:"Policy engine v2",body:"Attribute-based rules, evaluated in the planner."}),W({meta:"Q1 2027",title:"Multi-region",body:"Reads served locally with a single writer per table."}),W({meta:"Q2 2027",title:"Open catalogue",body:"Iceberg REST catalogue, so other engines can read the same tables."})])),ye("09 — History","How we got here",Me("timeline",[W({meta:"Jan 2024",title:"First commit",body:"A query planner and nothing else."}),W({meta:"Jun 2024",title:"Seed round",body:"Four engineers, one design partner."}),W({meta:"Nov 2024",title:"Private beta",body:"Eleven teams, Postgres sources only."}),W({meta:"Mar 2025",title:"Iceberg support",body:"Object storage became the default tier."}),W({meta:"Sep 2025",title:"Policy engine",body:"Row-level rules moved into the planner."}),W({meta:"Feb 2026",title:"Series A",body:"Sixty customers, four regions."}),W({meta:"May 2026",title:"Branching beta",body:"Fork-and-merge shipped to design partners."}),W({meta:"Jul 2026",title:"Incremental GA",body:"The nightly rebuild became optional."})])),ye("10 — Traction","Where we are",Me("statRow",[mt({label:"Median query",value:"340ms",note:"p50 across all customer workloads, last 30 days."}),mt({label:"Freshness",value:"11s",note:"Source commit to queryable, at the median table."}),mt({label:"Compute saved",value:"61%",note:"Against the warehouse spend each customer replaced."})])),ye("11 — Traction","The fleet, at a glance",Me("statRow",[mt({label:"Customers",value:"184",note:"Paid, excluding design partners."}),mt({label:"Tables managed",value:"2.4M",note:"Under active incremental maintenance."}),mt({label:"Daily queries",value:"900M",note:"Served across four regions."}),mt({label:"Net retention",value:"141%",note:"Trailing twelve months."}),mt({label:"Uptime",value:"99.98%",note:"Rolling ninety-day, read path."})])),ye("12 — Thesis","Why the frame is fixed",Ba("The constraint is the lint"),ji("A flowing document grows without bound, so nothing can ever overflow it — and a feedback loop with nothing to report does not get weaker, it stops existing."),ji("A fixed frame has exactly one violation worth reporting: it does not fit. Measurable, unambiguous, actionable.")),ye("13 — Method","How a block earns its place",ji("Every block in the catalogue is markup, CSS and metadata travelling together, so a registry can ship one without the app knowing it existed."),Ba("What a new block must bring"),us(!1,"An archetype it already fits, or an owner signature.","A designed count range its layout genuinely changes across.","A silhouette no other block already has."),ji("The third is the one that gets skipped, and it is the one that made the predecessor render three different blocks as the same grey rounded rectangle."),ji("Blur the text. If you cannot name the block, it has not earned its place.")),ye("14 — Adoption","What we ask of you",us(!1,"One source, read-only, to start.","A metric you already trust, so the diff means something.","Two weeks before anyone repoints a dashboard.")),ye("15 — Platform","Everything in the box",us(!1,"Catalogue — every table, column and owner.","Lineage — column-level, computed from plans.","Monitors — freshness and volume, per table.","Policy — row and column rules in the planner.","Usage — which queries touch which columns.","Cost — attributed per team and per model.","Alerting — routed to the owner, not a channel.","Branching — fork, test and merge without a copy.")),ye("16 — Adoption","The first fortnight",us(!0,"Credentials land and the first source mirrors overnight.","Every metric is diffed until the two agree to the row.","One dashboard repoints. The old warehouse stays up.","The nightly rebuild is switched off once a fortnight passes clean.")),ye("17 — Customers","What they say",M$("We turned off the nightly rebuild in week three and nobody noticed, which is the highest praise a data platform is ever going to get.","Head of Data, a design partner")),ye("18 — Media","A photograph, to frame",Me("imageBlock",[A$({src:"https://img.peapix.com/5747a929fad04e2aa16b1257f5b5d31b_1280.jpg",alt:"A lakeside town at dusk, lit windows along the water and mountains behind",caption:"Varenna, Lake Como. Pick “Frame picture…” from its menu to choose what shows."})])),ye("19 — Compare","What a partition rebuild costs",Aa("table",["Change","Rows touched","Rebuild","Cost"],[["A column added","0","None","—"],["A day backfilled","2.4M","40s","$0.31"],["A source re-keyed","190M","18m","$24.60"]])),ye("20 — Compare","Per-source freshness, last quarter",Aa("table",["Source","Rows","p50","p99","Failures","Owner"],[["orders","1.9B","210ms","1.4s","0","Platform"],["shipments","840M","180ms","900ms","2","Logistics"],["returns","96M","95ms","410ms","0","Logistics"],["catalogue","12M","40ms","120ms","0","Merch"],["pricing","8M","35ms","110ms","1","Merch"],["inventory","2.1B","260ms","1.9s","0","Platform"],["suppliers","400K","20ms","60ms","0","Sourcing"],["fx rates","90K","15ms","45ms","0","Finance"]])),ye("21 — Layout","Two columns, and the ramp inside a region",Lr("two-cols",oi("col-1",{type:"heading",attrs:{level:3},content:[{type:"text",text:"What changed"}]},Ii("Storage stopped being the constraint, and the curve did the rest.")),oi("col-2",Me("box",[W({title:"Costs fell 80%",body:"Since 2015, and still falling."}),W({title:"Storage is solved",body:"Four hours at grid scale."})])))),cs("lead","22 — Accent","A pane, not an overlay",Ii("The picture owns the left track and content cannot enter it. That is the difference between a pane and a background, and it is why an edge accent divides the page.")),cs("trail","23 — Accent","The same thing, mirrored",Ii("Whichever way the photograph looks. The margins reference the frame padding TOKEN, so this lands flush in both themes rather than in the one it was written against.")),cs("top","24 — Accent","A banner across the frame",Ii("Use this when the picture is WIDE — a full-height column crops a landscape badly.")),cs("full","25 — Accent","Behind everything",Ii("The one case where content and picture overlap on purpose. A full accent is not a pane: the page keeps its ordinary stack and only the picture leaves the flow.")),ye("26 — Layout","A block reflows to its column",Lr("three-cols",oi("col-1",Me("box",[W({title:"Costs fell",body:"A grid at four becomes one column here."}),W({title:"Storage",body:"Nobody set that; the column did."}),W({title:"Routing",body:"Same block, same payload."}),W({title:"Policy",body:"Different shape."})])),oi("col-2",Me("statRow",[mt({label:"Freshness",value:"4h"}),mt({label:"Sources",value:"19"}),mt({label:"Failures",value:"0"})])),oi("col-3",Ii("A narrow column reflows what is in it rather than shrinking it. A block that cannot get narrow enough is a diagnostic, not a scale factor.")))),ye("27 — Sequence shapes","One payload, three shapes",Lr("three-cols",oi("col-1",Mr("steps","funnel",[W({title:"Collected",body:"Every row."}),W({title:"Governed",body:"What policy admits."}),W({title:"Queried",body:"What was asked for."})])),oi("col-2",Mr("steps","pyramid",[W({title:"Collected",body:"Every row."}),W({title:"Governed",body:"What policy admits."}),W({title:"Queried",body:"What was asked for."})])),oi("col-3",Mr("steps","staircase",[W({title:"Collected",body:"Every row."}),W({title:"Governed",body:"What policy admits."}),W({title:"Queried",body:"What was asked for."})])))),ye("28 — Chart","One payload, two series",B$({title:"Revenue by product line",axisX:"Product line",axisY:"Revenue ($M)"},{categories:["Enterprise","Professional","Starter","Free"],series:[{name:"Booked",values:[8500,5e3,3e3,400]},{name:"Renewed",values:[4100,3200,900,120]}]}))]};function _$({editor:i,target:e,x:t,y:n}){const s=g.useRef(null);g.useLayoutEffect(()=>{const o=s.current;if(!o)return;const l=q$(i,e);if(!l)return;const a=document.createElement("div");if(a.className="page df-preview-frame",a.dataset.kind=e.kind,e.kind==="item"&&l.parentElement){const h=l.parentElement.cloneNode(!1);h.appendChild(l.cloneNode(!0)),h.style.width=`${e.rect.width}px`,a.appendChild(h)}else{const h=l.cloneNode(!0);if(h.style.width=`${e.rect.width}px`,e.containerId){const c=document.createElement("div");c.className="layout-region",c.style.width=`${e.rect.width}px`,c.appendChild(h),a.appendChild(c)}else a.appendChild(h)}return a.querySelectorAll("[contenteditable]").forEach(h=>h.removeAttribute("contenteditable")),o.replaceChildren(a),()=>o.replaceChildren()},[i,e]);const r=Z$(e.rect.width);return g.useLayoutEffect(()=>{const o=s.current;if(o)return _5(o,t,n,r)},[r,t,n]),p.jsx("div",{className:"df-preview",ref:s,style:{width:e.rect.width+I$*2},"aria-hidden":"true"})}const I$=16,F$=.5,Z$=i=>Math.min(1,window.innerWidth*F$/Math.max(i,1));function q$(i,e){let t=null;if(i.state.doc.descendants((s,r)=>{var o;return t!==null?!1:(((o=s.attrs)==null?void 0:o.id)===e.id&&(t=r),!0)}),t===null)return null;const n=i.view.nodeDOM(t);return n instanceof HTMLElement?n:null}const U$={meta:"Eyebrow",caption:"Caption",title:"Heading",body:"Paragraph",label:"Label",value:"Figure",note:"Note"};function X$(i,e,t,n,s,r,o,l,a,h,c){var $,w,y,x,O,j;const u=(k,v=!0)=>()=>{k(),s(v?e.id:void 0)};if(e.kind==="block"){const k=I5(e.archetype??"",e.type??""),v=[];if(e.type==="layout"){const R=($=ft(i.state.doc,e.id))==null?void 0:$.node.attrs.layout;v.push({label:"Layout",icon:"Columns3",onSelect:()=>{},items:n5.filter(C=>C.name!==R).map(C=>({label:C.label,icon:"Columns3",onSelect:()=>u(()=>i.commands.setLayout(e.id,C.name))()}))})}k.length>0&&v.push({label:"Turn into",icon:"Shuffle",onSelect:()=>{},items:k.map(R=>({label:An(R.type),group:R.group,icon:F5(R.type,R.group),onSelect:()=>u(()=>i.commands.setBlockType(e.id,R.type))()}))});const b=(y=Xn(((w=ft(i.state.doc,e.id))==null?void 0:w.node.type.name)??""))==null?void 0:y.archetype;b==="chart"&&v.push({label:"Chart data…",icon:"Table2",onSelect:l}),b==="diagram"&&v.push({label:"Diagram source…",icon:"Code",onSelect:a}),Ra(i,e.id)&&v.push({label:"Design",icon:"Palette",onSelect:()=>{c(e.id),s(e.id)}});const D=Z5(i,e.id);if(D){const R=C=>u(()=>K5(i,e.id,C),!1);v.push({label:"Table",icon:"Table2",onSelect:()=>{},items:[{label:"Insert row above",onSelect:R("addRowBefore")},{label:"Insert row below",onSelect:R("addRowAfter")},{label:"Delete row",disabled:D.rows<=1,onSelect:R("deleteRow")},{label:"Insert column left",separatorBefore:!0,onSelect:R("addColumnBefore")},{label:"Insert column right",onSelect:R("addColumnAfter")},{label:"Delete column",disabled:D.cols<=1,onSelect:R("deleteColumn")},{label:"Join cells",separatorBefore:!0,disabled:!D.canMerge,onSelect:R("mergeCells")},{label:"Split cell",disabled:!D.canSplit,onSelect:R("splitCell")},{label:D.hasHeaderRow?"Remove header row":"Make first row a header",separatorBefore:!0,onSelect:R("toggleHeaderRow")}]})}return v.push({label:"Duplicate",icon:"Copy",onSelect:u(()=>i.commands.duplicateBlock(e.id),!1)}),v.push({label:"Delete",icon:"Trash2",danger:!0,separatorBefore:!0,onSelect:u(()=>eg(i,e.id),!1)}),v}const f=e.blockId?q5(i,e.blockId):!0,d=[{label:"Add before",icon:"ArrowUpToLine",disabled:!f,onSelect:u(()=>Na(i,e.blockId,e.index),!1)},{label:"Add after",icon:"ArrowDownToLine",disabled:!f,onSelect:u(()=>Na(i,e.blockId,e.index+1),!1)},{label:"Clone",icon:"Copy",disabled:!f,onSelect:u(()=>J5(i,e.blockId,e.id),!1)},{label:"Move before",icon:"ArrowUp",separatorBefore:!0,disabled:e.index===0,onSelect:u(()=>Co(i,e.blockId,e.id,e.index-1))},{label:"Move after",icon:"ArrowDown",disabled:e.index===t.length-1,onSelect:u(()=>Co(i,e.blockId,e.id,e.index+2))}];if((n==null?void 0:n.archetype)==="items"){const k=U5(i,e.id);d.push({label:k?"Remove emphasis":"Emphasise",icon:"Star",separatorBefore:!0,onSelect:u(()=>tg(i,e.blockId,e.id,!k))})}(n==null?void 0:n.archetype)==="media"&&(d.push({label:"Image address…",icon:"Image",separatorBefore:!0,onSelect:r}),typeof((x=ft(i.state.doc,e.id))==null?void 0:x.node.attrs.src)=="string"&&d.push({label:"Frame picture…",icon:"Crop",onSelect:o}));const m=n!=null&&n.id?X5(i,n.id,e.id):[];return m.length>0&&d.push({label:"Add text",icon:"Type",separatorBefore:(n==null?void 0:n.archetype)!=="media",onSelect:()=>{},items:m.map(k=>({label:U$[k]??k,onSelect:()=>u(()=>ig(i,e.blockId,e.id,k))()}))}),n!=null&&n.type&&((j=(O=Bc(n.type))==null?void 0:O.slots)!=null&&j.includes("icon"))&&d.push({label:"Icon",icon:"Sparkles",onSelect:()=>h(e.id)}),n!=null&&n.id&&t.length===1&&Ra(i,n.id)&&d.push({label:"Design",icon:"Palette",separatorBefore:!0,onSelect:()=>{c(n.id),s(n.id)}}),d.push({label:"Delete",icon:"Trash2",danger:!0,separatorBefore:!0,disabled:t.length<=1||!!e.blockId&&!V5(i,e.blockId),onSelect:u(()=>ng(i,e.blockId,e.id),!1)}),d}function V$({editor:i,target:e,siblings:t,block:n,at:s,open:r,onAddress:o,onFrame:l,onChartData:a,onDiagramSource:h,onIcon:c,onDesign:u,onOpenChange:f,onDone:d}){return p.jsx(gr,{label:e.kind==="block"?"Layout options":"Block options",align:"start",open:r,onOpenChange:f,items:X$(i,e,t,n,d,o,l,a,h,c,u),trigger:p.jsx("div",{className:"df-menu-anchor",style:{left:s.left,top:s.top}})})}function K$({editor:i,blockId:e,itemId:t,open:n,onOpenChange:s}){var d;const[r,o]=g.useState(""),[l,a]=g.useState(null),h=g.useRef(!1),c=((d=ft(i.state.doc,t))==null?void 0:d.node.attrs)??{},u=typeof c.alt=="string"?c.alt:"";if(g.useEffect(()=>{n&&!h.current&&(h.current=!0,o(typeof c.src=="string"?c.src:""),a(null)),n||(h.current=!1)}),!e)return null;const f=()=>{var w,y;const m=Wc((y=Xn(((w=ft(i.state.doc,e))==null?void 0:w.node.type.name)??""))==null?void 0:y.type),$=Mc(r.trim(),m);if($)return a($);Eo(i,e,t,r.trim()),s(!1)};return p.jsx(Bi,{open:n,onOpenChange:s,children:p.jsxs(Wi,{className:"sm:max-w-lg",children:[p.jsxs(Mi,{children:[p.jsx(Li,{children:"Image address"}),p.jsx(yn,{children:"The full web address of a picture that is already online. There is no upload yet — a file on this machine has to be somewhere with an address first."})]}),p.jsx(sg,{autoFocus:!0,value:r,"aria-label":"Image address","aria-invalid":l?!0:void 0,placeholder:"https://example.com/photo.jpg",onChange:m=>{o(m.target.value),l&&a(null)},onKeyDown:m=>{m.key==="Enter"&&(m.preventDefault(),f())}}),l&&p.jsx("p",{className:"text-sm text-destructive",role:"alert",children:l}),u&&p.jsxs("p",{className:"text-sm text-muted-foreground",children:["Described as “",u,"”"]}),p.jsx(Fc,{children:p.jsx(Xt,{onClick:f,children:"Set"})})]})})}var Wa=1,J$=.9,ew=.8,tw=.17,_r=.1,Ir=.999,iw=.9999,nw=.99,sw=/[\\\/_+.#"@\[\(\{&]/,rw=/[\\\/_+.#"@\[\(\{&]/g,ow=/[\s-]/,iu=/[\s-]/g;function No(i,e,t,n,s,r,o){if(r===e.length)return s===i.length?Wa:nw;var l=`${s},${r}`;if(o[l]!==void 0)return o[l];for(var a=n.charAt(r),h=t.indexOf(a,s),c=0,u,f,d,m;h>=0;)u=No(i,e,t,n,h+1,r+1,o),u>c&&(h===s?u*=Wa:sw.test(i.charAt(h-1))?(u*=ew,d=i.slice(s,h-1).match(rw),d&&s>0&&(u*=Math.pow(Ir,d.length))):ow.test(i.charAt(h-1))?(u*=J$,m=i.slice(s,h-1).match(iu),m&&s>0&&(u*=Math.pow(Ir,m.length))):(u*=tw,s>0&&(u*=Math.pow(Ir,h-s))),i.charAt(h)!==e.charAt(r)&&(u*=iw)),(u<_r&&t.charAt(h-1)===n.charAt(r+1)||n.charAt(r+1)===n.charAt(r)&&t.charAt(h-1)!==n.charAt(r))&&(f=No(i,e,t,n,h+1,r+2,o),f*_r>u&&(u=f*_r)),u>c&&(c=u),h=t.indexOf(a,h+1);return o[l]=c,c}function Ma(i){return i.toLowerCase().replace(iu," ")}function lw(i,e,t){return i=t&&t.length>0?`${i+" "+t.join(" ")}`:i,No(i,e,Ma(i),Ma(e),0,0,{})}var aw=Object.defineProperty,bn=(i,e)=>aw(i,"name",{value:e,configurable:!0}),nu=!!(typeof window<"u"&&window.document&&window.document.createElement);function Ti(i,e,{checkForDefaultPrevented:t=!0}={}){return bn(function(s){if(i==null||i(s),t===!1||!s||!s.defaultPrevented)return e==null?void 0:e(s)},"handleEvent")}bn(Ti,"composeEventHandlers");function hw(i){var e;if(!nu)throw new Error("Cannot access window outside of the DOM");return((e=i==null?void 0:i.ownerDocument)==null?void 0:e.defaultView)??window}bn(hw,"getOwnerWindow");function Po(i){if(!nu)throw new Error("Cannot access document outside of the DOM");return(i==null?void 0:i.ownerDocument)??document}bn(Po,"getOwnerDocument");function su(i,e=!1){const{activeElement:t}=Po(i);if(!(t!=null&&t.nodeName))return null;if(ru(t)&&t.contentDocument)return su(t.contentDocument.body,e);if(e){const n=t.getAttribute("aria-activedescendant");if(n){const s=Po(t).getElementById(n);if(s)return s}}return t}bn(su,"getActiveElement");function ru(i){return i.tagName==="IFRAME"}bn(ru,"isFrame");var cw=Object.defineProperty,zl=(i,e)=>cw(i,"name",{value:e,configurable:!0});function To(i,e){if(typeof i=="function")return i(e);i!=null&&(i.current=e)}zl(To,"setRef");function Hi(...i){return e=>{let t=!1;const n=i.map(s=>{const r=To(s,e);return!t&&typeof r=="function"&&(t=!0),r});if(t)return()=>{for(let s=0;s<n.length;s++){const r=n[s];typeof r=="function"?r():To(i[s],null)}}}}zl(Hi,"composeRefs");function xn(...i){return g.useCallback(Hi(...i),i)}zl(xn,"useComposedRefs");var uw=Object.defineProperty,at=(i,e)=>uw(i,"name",{value:e,configurable:!0});function fw(i,e){const t=g.createContext(e);t.displayName=i+"Context";const n=at(r=>{const{children:o,...l}=r,a=g.useMemo(()=>l,Object.values(l));return p.jsx(t.Provider,{value:a,children:o})},"Provider");n.displayName=i+"Provider";function s(r,o={}){const{optional:l=!1}=o,a=g.useContext(t);if(a)return a;if(e!==void 0)return e;if(!l)throw new Error(`\`${r}\` must be used within \`${i}\``)}return at(s,"useContext"),[n,s]}at(fw,"createContext");function ou(i,e=[]){let t=[];function n(r,o){const l=g.createContext(o);l.displayName=r+"Context";const a=t.length;t=[...t,o];const h=at(u=>{var y;const{scope:f,children:d,...m}=u,$=((y=f==null?void 0:f[i])==null?void 0:y[a])||l,w=g.useMemo(()=>m,Object.values(m));return p.jsx($.Provider,{value:w,children:d})},"Provider");h.displayName=r+"Provider";function c(u,f,d={}){var y;const{optional:m=!1}=d,$=((y=f==null?void 0:f[i])==null?void 0:y[a])||l,w=g.useContext($);if(w)return w;if(o!==void 0)return o;if(!m)throw new Error(`\`${u}\` must be used within \`${r}\``)}return at(c,"useContext"),[h,c]}at(n,"createContext");const s=at(()=>{const r=t.map(o=>g.createContext(o));return at(function(l){const a=(l==null?void 0:l[i])||r;return g.useMemo(()=>({[`__scope${i}`]:{...l,[i]:a}}),[l,a])},"useScope")},"createScope");return s.scopeName=i,[n,lu(s,...e)]}at(ou,"createContextScope");function lu(...i){const e=i[0];if(i.length===1)return e;const t=at(()=>{const n=i.map(s=>({useScope:s(),scopeName:s.scopeName}));return at(function(r){const o=n.reduce((l,{useScope:a,scopeName:h})=>{const u=a(r)[`__scope${h}`];return{...l,...u}},{});return g.useMemo(()=>({[`__scope${e.scopeName}`]:o}),[o])},"useComposedScopes")},"createScope");return t.scopeName=e.scopeName,t}at(lu,"composeContextScopes");var un=globalThis!=null&&globalThis.document?g.useLayoutEffect:()=>{},dw=Object.defineProperty,pw=(i,e)=>dw(i,"name",{value:e,configurable:!0}),mw=Vn[" useId ".trim().toString()]||(()=>{}),gw=0;function At(i){const[e,t]=g.useState(mw());return un(()=>{i||t(n=>n??String(gw++))},[i]),i||(e?`radix-${e}`:"")}pw(At,"useId");var $w=Object.defineProperty,ww=(i,e)=>$w(i,"name",{value:e,configurable:!0}),La=Vn[" useEffectEvent ".trim().toString()],_a=Vn[" useInsertionEffect ".trim().toString()];function au(i){if(typeof La=="function")return La(i);const e=g.useRef(()=>{throw new Error("Cannot call an event handler while rendering.")});return typeof _a=="function"?_a(()=>{e.current=i}):un(()=>{e.current=i}),g.useMemo(()=>((...t)=>{var n;return(n=e.current)==null?void 0:n.call(e,...t)}),[])}ww(au,"useEffectEvent");var yw=Object.defineProperty,es=(i,e)=>yw(i,"name",{value:e,configurable:!0}),bw=Vn[" useInsertionEffect ".trim().toString()]||un;function hu({prop:i,defaultProp:e,onChange:t=es(()=>{},"onChange"),caller:n}){const[s,r,o]=cu({defaultProp:e,onChange:t}),l=i!==void 0,a=l?i:s,h=g.useCallback(c=>{var u;if(l){const f=uu(c)?c(i):c;f!==i&&((u=o.current)==null||u.call(o,f))}else r(c)},[l,i,r,o]);return[a,h]}es(hu,"useControllableState");function cu({defaultProp:i,onChange:e}){const[t,n]=g.useState(i),s=g.useRef(t),r=g.useRef(e);return bw(()=>{r.current=e},[e]),g.useEffect(()=>{var o;s.current!==t&&((o=r.current)==null||o.call(r,t),s.current=t)},[t,s]),[t,n,r]}es(cu,"useUncontrolledState");function uu(i){return typeof i=="function"}es(uu,"isFunction");var Ia=Symbol("RADIX:SYNC_STATE");function xw(i,e,t,n){const{prop:s,defaultProp:r,onChange:o,caller:l}=e,a=s!==void 0,h=au(o),c=[{...t,state:r}];n&&c.push(n);const[u,f]=g.useReducer((w,y)=>{if(y.type===Ia)return{...w,state:y.state};const x=i(w,y);return a&&!Object.is(x.state,w.state)&&h(x.state),x},...c),d=u.state,m=g.useRef(d);g.useEffect(()=>{m.current!==d&&(m.current=d,a||h(d))},[d,m,a]);const $=g.useMemo(()=>s!==void 0?{...u,state:s}:u,[u,s]);return g.useEffect(()=>{a&&!Object.is(s,u.state)&&f({type:Ia,state:s})},[s,u.state,a]),[$,f]}es(xw,"useControllableStateReducer");var Ow=Object.defineProperty,Ot=(i,e)=>Ow(i,"name",{value:e,configurable:!0});function Gl(i){const e=g.forwardRef((t,n)=>{let{children:s,...r}=t,o=null,l=!1;const a=[];Ho(s)&&typeof fs=="function"&&(s=fs(s._payload)),g.Children.forEach(s,f=>{var d;if(mu(f)){l=!0;const m=f;let $="child"in m.props?m.props.child:m.props.children;Ho($)&&typeof fs=="function"&&($=fs($._payload)),o=kw(m,$),a.push((d=o==null?void 0:o.props)==null?void 0:d.children)}else a.push(f)}),o?o=g.cloneElement(o,void 0,a):!l&&g.Children.count(s)===1&&g.isValidElement(s)&&(o=s);const h=o?pu(o):void 0,c=xn(n,h);if(!o){if(s||s===0)throw new Error(l?Ew(i):Cw(i));return s}const u=du(r,o.props??{});return o.type!==g.Fragment&&(u.ref=n?c:h),g.cloneElement(o,u)});return e.displayName=`${i}.Slot`,e}Ot(Gl,"createSlot");var fu=Symbol.for("radix.slottable");function vw(i){const e=Ot(t=>"child"in t?t.children(t.child):t.children,"Slottable");return e.displayName=`${i}.Slottable`,e.__radixId=fu,e}Ot(vw,"createSlottable");var kw=Ot((i,e)=>{if("child"in i.props){const t=i.props.child;return g.isValidElement(t)?g.cloneElement(t,void 0,i.props.children(t.props.children)):null}return g.isValidElement(e)?e:null},"getSlottableElementFromSlottable");function du(i,e){const t={...e};for(const n in e){const s=i[n],r=e[n];/^on[A-Z]/.test(n)?s&&r?t[n]=(...l)=>{const a=r(...l);return s(...l),a}:s&&(t[n]=s):n==="style"?t[n]={...s,...r}:n==="className"&&(t[n]=[s,r].filter(Boolean).join(" "))}return{...i,...t}}Ot(du,"mergeProps");function pu(i){var n,s;let e=(n=Object.getOwnPropertyDescriptor(i.props,"ref"))==null?void 0:n.get,t=e&&"isReactWarning"in e&&e.isReactWarning;return t?i.ref:(e=(s=Object.getOwnPropertyDescriptor(i,"ref"))==null?void 0:s.get,t=e&&"isReactWarning"in e&&e.isReactWarning,t?i.props.ref:i.props.ref||i.ref)}Ot(pu,"getElementRef");function mu(i){return g.isValidElement(i)&&typeof i.type=="function"&&"__radixId"in i.type&&i.type.__radixId===fu}Ot(mu,"isSlottable");var Sw=Symbol.for("react.lazy");function Ho(i){return i!=null&&typeof i=="object"&&"$$typeof"in i&&i.$$typeof===Sw&&"_payload"in i&&gu(i._payload)}Ot(Ho,"isLazyComponent");function gu(i){return typeof i=="object"&&i!==null&&"then"in i}Ot(gu,"isPromiseLike");var Cw=Ot(i=>`${i} failed to slot onto its children. Expected a single React element child or \`Slottable\`.`,"createSlotError"),Ew=Ot(i=>`${i} failed to slot onto its \`Slottable\`. Expected \`Slottable\` to receive a single React element child.`,"createSlottableError"),fs=Vn[" use ".trim().toString()],Dw=Object.defineProperty,jw=(i,e)=>Dw(i,"name",{value:e,configurable:!0}),Rw=["a","button","div","form","h2","h3","img","input","label","li","nav","ol","p","select","span","svg","ul"],dt=Rw.reduce((i,e)=>{const t=Gl(`Primitive.${e}`),n=g.forwardRef((s,r)=>{const{asChild:o,...l}=s,a=o?t:e;return typeof window<"u"&&(window[Symbol.for("radix-ui")]=!0),p.jsx(a,{...l,ref:r})});return n.displayName=`Primitive.${e}`,{...i,[e]:n}},{});function $u(i,e){i&&Zc.flushSync(()=>i.dispatchEvent(e))}jw($u,"dispatchDiscreteCustomEvent");var Nw=Object.defineProperty,Pw=(i,e)=>Nw(i,"name",{value:e,configurable:!0});function fn(i){const e=g.useRef(i);return g.useEffect(()=>{e.current=i}),g.useMemo(()=>((...t)=>{var n;return(n=e.current)==null?void 0:n.call(e,...t)}),[])}Pw(fn,"useCallbackRef");var Tw=Object.defineProperty,ze=(i,e)=>Tw(i,"name",{value:e,configurable:!0}),Yo="dismissableLayer.update",Hw="dismissableLayer.pointerDownOutside",Yw="dismissableLayer.focusOutside",Fa,wu=g.createContext({layers:new Set,layersWithOutsidePointerEventsDisabled:new Set,branches:new Set,dismissableSurfaces:new Set}),zw=g.forwardRef(ze(function(e,t){const{disableOutsidePointerEvents:n=!1,deferPointerDownOutside:s=!1,onEscapeKeyDown:r,onPointerDownOutside:o,onFocusOutside:l,onInteractOutside:a,onDismiss:h,...c}=e,u=g.useContext(wu),[f,d]=g.useState(null),m=(f==null?void 0:f.ownerDocument)??(globalThis==null?void 0:globalThis.document),[,$]=g.useState({}),w=xn(t,d),y=Array.from(u.layers),[x]=[...u.layersWithOutsidePointerEventsDisabled].slice(-1),O=x?y.indexOf(x):-1,j=f?y.indexOf(f):-1,k=u.layersWithOutsidePointerEventsDisabled.size>0,v=j>=O,b=g.useRef(!1),D=bu(E=>{o==null||o(E),a==null||a(E),E.defaultPrevented||h==null||h()},{ownerDocument:m,deferPointerDownOutside:s,isDeferredPointerDownOutsideRef:b,dismissableSurfaces:u.dismissableSurfaces,shouldHandlePointerDownOutside:g.useCallback(E=>{if(!(E instanceof Node))return!1;const B=[...u.branches].some(_=>_.contains(E));return v&&!B},[u.branches,v])}),R=xu(E=>{if(s&&b.current)return;const B=E.target;[...u.branches].some(q=>q.contains(B))||(l==null||l(E),a==null||a(E),E.defaultPrevented||h==null||h())},m),C=f?j===y.length-1:!1,H=fn(E=>{E.key==="Escape"&&(r==null||r(E),!E.defaultPrevented&&h&&(E.preventDefault(),h()))});return g.useEffect(()=>{if(C)return m.addEventListener("keydown",H,{capture:!0}),()=>m.removeEventListener("keydown",H,{capture:!0})},[m,C,H]),g.useEffect(()=>{if(f)return n&&(u.layersWithOutsidePointerEventsDisabled.size===0&&(Fa=m.body.style.pointerEvents,m.body.style.pointerEvents="none"),u.layersWithOutsidePointerEventsDisabled.add(f)),u.layers.add(f),zo(),()=>{n&&(u.layersWithOutsidePointerEventsDisabled.delete(f),u.layersWithOutsidePointerEventsDisabled.size===0&&(m.body.style.pointerEvents=Fa))}},[f,m,n,u]),g.useEffect(()=>()=>{f&&(u.layers.delete(f),u.layersWithOutsidePointerEventsDisabled.delete(f),zo())},[f,u]),g.useEffect(()=>{const E=ze(()=>$({}),"handleUpdate");return document.addEventListener(Yo,E),()=>document.removeEventListener(Yo,E)},[]),p.jsx(dt.div,{...c,ref:w,style:{pointerEvents:k?v?"auto":"none":void 0,...e.style},onFocusCapture:Ti(e.onFocusCapture,R.onFocusCapture),onBlurCapture:Ti(e.onBlurCapture,R.onBlurCapture),onPointerDownCapture:Ti(e.onPointerDownCapture,D.onPointerDownCapture)})},"DismissableLayer"));function yu(){const i=g.useContext(wu),[e,t]=g.useState(null);return g.useEffect(()=>{if(e)return i.dismissableSurfaces.add(e),()=>{i.dismissableSurfaces.delete(e)}},[e,i.dismissableSurfaces]),t}ze(yu,"useDismissableLayerSurface");var Gw=ze(()=>!0,"IS_TRUE");function bu(i,e){const{ownerDocument:t=globalThis==null?void 0:globalThis.document,deferPointerDownOutside:n=!1,isDeferredPointerDownOutsideRef:s,dismissableSurfaces:r,shouldHandlePointerDownOutside:o=Gw}=e,l=fn(i),a=g.useRef(!1),h=g.useRef(!1),c=g.useRef(new Map),u=g.useRef(()=>{});return g.useEffect(()=>{function f(){h.current=!1,s.current=!1,c.current.clear()}ze(f,"resetOutsideInteraction");function d(){return Array.from(c.current.values()).some(Boolean)}ze(d,"isOutsideInteractionIntercepted");function m(O){if(!h.current)return;const j=O.target;j instanceof Node&&[...r].some(v=>v.contains(j))||c.current.set(O.type,!0),O.type==="click"&&window.setTimeout(()=>{h.current&&u.current()},0)}ze(m,"handleInteractionCapture");function $(O){h.current&&c.current.set(O.type,!1)}ze($,"handleInteractionBubble");const w=ze(O=>{if(O.target&&!a.current){let j=function(){t.removeEventListener("click",u.current);const v=d();f(),v||Ql(Hw,l,k,{discrete:!0})};if(ze(j,"handleAndDispatchPointerDownOutsideEvent"),!o(O.target)){t.removeEventListener("click",u.current),f(),a.current=!1;return}const k={originalEvent:O};h.current=!0,s.current=n&&O.button===0,c.current.clear(),!n||O.button!==0?j():(t.removeEventListener("click",u.current),u.current=j,t.addEventListener("click",u.current,{once:!0}))}else t.removeEventListener("click",u.current),f();a.current=!1},"handlePointerDown"),y=["pointerup","mousedown","mouseup","touchstart","touchend","click"];for(const O of y)t.addEventListener(O,m,!0),t.addEventListener(O,$);const x=window.setTimeout(()=>{t.addEventListener("pointerdown",w)},0);return()=>{window.clearTimeout(x),t.removeEventListener("pointerdown",w),t.removeEventListener("click",u.current);for(const O of y)t.removeEventListener(O,m,!0),t.removeEventListener(O,$)}},[t,l,n,s,r,o]),{onPointerDownCapture:ze(()=>a.current=!0,"onPointerDownCapture")}}ze(bu,"usePointerDownOutside");function xu(i,e=globalThis==null?void 0:globalThis.document){const t=fn(i),n=g.useRef(!1);return g.useEffect(()=>{const s=ze(r=>{r.target&&!n.current&&Ql(Yw,t,{originalEvent:r},{discrete:!1})},"handleFocus");return e.addEventListener("focusin",s),()=>e.removeEventListener("focusin",s)},[e,t]),{onFocusCapture:ze(()=>n.current=!0,"onFocusCapture"),onBlurCapture:ze(()=>n.current=!1,"onBlurCapture")}}ze(xu,"useFocusOutside");function zo(){const i=new CustomEvent(Yo);document.dispatchEvent(i)}ze(zo,"dispatchUpdate");function Ql(i,e,t,{discrete:n}){const s=t.originalEvent.target,r=new CustomEvent(i,{bubbles:!1,cancelable:!0,detail:t});e&&s.addEventListener(i,e,{once:!0}),n?$u(s,r):s.dispatchEvent(r)}ze(Ql,"handleAndDispatchCustomEvent");var Qw=Object.defineProperty,Ie=(i,e)=>Qw(i,"name",{value:e,configurable:!0}),Fr="focusScope.autoFocusOnMount",Zr="focusScope.autoFocusOnUnmount",Za={bubbles:!1,cancelable:!0},Aw=g.forwardRef(Ie(function(e,t){const{loop:n=!1,trapped:s=!1,onMountAutoFocus:r,onUnmountAutoFocus:o,...l}=e,[a,h]=g.useState(null),c=fn(r),u=fn(o),f=g.useRef(null),d=xn(t,h),m=g.useRef({paused:!1,pause(){this.paused=!0},resume(){this.paused=!1}}).current;g.useEffect(()=>{if(s){let w=function(j){if(m.paused||!a)return;const k=j.target;a.contains(k)?f.current=k:It(f.current,{select:!0})},y=function(j){if(m.paused||!a)return;const k=j.relatedTarget;k!==null&&(a.contains(k)||It(f.current,{select:!0}))},x=function(j){if(document.activeElement===document.body)for(const v of j)v.removedNodes.length>0&&It(a)};Ie(w,"handleFocusIn"),Ie(y,"handleFocusOut"),Ie(x,"handleMutations"),document.addEventListener("focusin",w),document.addEventListener("focusout",y);const O=new MutationObserver(x);return a&&O.observe(a,{childList:!0,subtree:!0}),()=>{document.removeEventListener("focusin",w),document.removeEventListener("focusout",y),O.disconnect()}}},[s,a,m.paused]),g.useEffect(()=>{if(a){qa.add(m);const w=document.activeElement;if(!a.contains(w)){const x=new CustomEvent(Fr,Za);a.addEventListener(Fr,c),a.dispatchEvent(x),x.defaultPrevented||(Ou(Eu(Al(a)),{select:!0}),document.activeElement===w&&It(a))}return()=>{a.removeEventListener(Fr,c),setTimeout(()=>{const x=new CustomEvent(Zr,Za);a.addEventListener(Zr,u),a.dispatchEvent(x),x.defaultPrevented||It(w??document.body,{select:!0}),a.removeEventListener(Zr,u),qa.remove(m)},0)}}},[a,c,u,m]);const $=g.useCallback(w=>{if(!n&&!s||m.paused)return;const y=w.key==="Tab"&&!w.altKey&&!w.ctrlKey&&!w.metaKey,x=document.activeElement;if(y&&x){const O=w.currentTarget,[j,k]=vu(O);j&&k?!w.shiftKey&&x===k?(w.preventDefault(),n&&It(j,{select:!0})):w.shiftKey&&x===j&&(w.preventDefault(),n&&It(k,{select:!0})):x===O&&w.preventDefault()}},[n,s,m.paused]);return p.jsx(dt.div,{tabIndex:-1,...l,ref:d,onKeyDown:$})},"FocusScope"));function Ou(i,{select:e=!1}={}){const t=document.activeElement;for(const n of i)if(It(n,{select:e}),document.activeElement!==t)return}Ie(Ou,"focusFirst");function vu(i){const e=Al(i),t=Go(e,i),n=Go(e.reverse(),i);return[t,n]}Ie(vu,"getTabbableEdges");function Al(i){const e=[],t=document.createTreeWalker(i,NodeFilter.SHOW_ELEMENT,{acceptNode:Ie(n=>{const s=n.tagName==="INPUT"&&n.type==="hidden";return n.disabled||n.hidden||s?NodeFilter.FILTER_SKIP:n.tabIndex>=0?NodeFilter.FILTER_ACCEPT:NodeFilter.FILTER_SKIP},"acceptNode")});for(;t.nextNode();)e.push(t.currentNode);return e}Ie(Al,"getTabbableCandidates");function Go(i,e){const t=typeof e.checkVisibility=="function"&&e.checkVisibility({checkVisibilityCSS:!0});for(const n of i)if(!(t?!n.checkVisibility({checkVisibilityCSS:!0}):ku(n,{upTo:e})))return n}Ie(Go,"findVisible");function ku(i,{upTo:e}){if(getComputedStyle(i).visibility==="hidden")return!0;for(;i;){if(e!==void 0&&i===e)return!1;if(getComputedStyle(i).display==="none")return!0;i=i.parentElement}return!1}Ie(ku,"isHidden");function Su(i){return i instanceof HTMLInputElement&&"select"in i}Ie(Su,"isSelectableInput");function It(i,{select:e=!1}={}){if(i&&i.focus){const t=document.activeElement;i.focus({preventScroll:!0}),i!==t&&Su(i)&&e&&i.select()}}Ie(It,"focus");var qa=Cu();function Cu(){let i=[];return{add(e){const t=i[0];e!==t&&(t==null||t.pause()),i=Qo(i,e),i.unshift(e)},remove(e){var t;i=Qo(i,e),(t=i[0])==null||t.resume()}}}Ie(Cu,"createFocusScopesStack");function Qo(i,e){const t=[...i],n=t.indexOf(e);return n!==-1&&t.splice(n,1),t}Ie(Qo,"arrayRemove");function Eu(i){return i.filter(e=>e.tagName!=="A")}Ie(Eu,"removeLinks");var Bw=Object.defineProperty,Ww=(i,e)=>Bw(i,"name",{value:e,configurable:!0}),Mw=g.forwardRef(Ww(function(e,t){var a;const{container:n,...s}=e,[r,o]=g.useState(!1);un(()=>o(!0),[]);const l=n||r&&((a=globalThis==null?void 0:globalThis.document)==null?void 0:a.body);return l?Zc.createPortal(p.jsx(dt.div,{...s,ref:t}),l):null},"Portal")),Lw=Object.defineProperty,Jt=(i,e)=>Lw(i,"name",{value:e,configurable:!0});function Du(i,e){return g.useReducer((t,n)=>e[t][n]??t,i)}Jt(Du,"useStateMachine");var Bl=Jt(i=>{const{present:e,children:t}=i,n=ju(e),s=typeof t=="function"?t({present:n.isPresent}):g.Children.only(t),r=Ru(n.ref,Nu(s));return typeof t=="function"||n.isPresent?g.cloneElement(s,{ref:r}):null},"Presence");function ju(i){const[e,t]=g.useState(),n=g.useRef(null),s=g.useRef(i),r=g.useRef("none"),o=g.useRef(void 0),l=i?"mounted":"unmounted",[a,h]=Du(l,{mounted:{UNMOUNT:"unmounted",ANIMATION_OUT:"unmountSuspended"},unmountSuspended:{MOUNT:"mounted",ANIMATION_END:"unmounted"},unmounted:{MOUNT:"mounted"}});return g.useEffect(()=>{a==="mounted"?(r.current=o.current??Ui(n.current),o.current=void 0):r.current="none"},[a]),un(()=>{const c=n.current,u=s.current;if(u!==i){const d=r.current,m=Ui(c);i?(o.current=m,h("MOUNT")):m==="none"||(c==null?void 0:c.display)==="none"?h("UNMOUNT"):h(u&&d!==m?"ANIMATION_OUT":"UNMOUNT"),s.current=i}},[i,h]),un(()=>{if(e){let c;const u=e.ownerDocument.defaultView??window,f=Jt(m=>{const w=Ui(n.current).includes(CSS.escape(m.animationName));if(m.target===e&&w&&(h("ANIMATION_END"),!s.current)){const y=e.style.animationFillMode;e.style.animationFillMode="forwards",c=u.setTimeout(()=>{e.style.animationFillMode==="forwards"&&(e.style.animationFillMode=y)})}},"handleAnimationEnd"),d=Jt(m=>{m.target===e&&(r.current=Ui(n.current))},"handleAnimationStart");return e.addEventListener("animationstart",d),e.addEventListener("animationcancel",f),e.addEventListener("animationend",f),()=>{u.clearTimeout(c),e.removeEventListener("animationstart",d),e.removeEventListener("animationcancel",f),e.removeEventListener("animationend",f)}}else h("ANIMATION_END")},[e,h]),{isPresent:["mounted","unmountSuspended"].includes(a),ref:g.useCallback(c=>{if(c){const u=getComputedStyle(c);n.current=u,o.current=Ui(u)}else n.current=null;t(c)},[])}}Jt(ju,"usePresence");function Ao(i,e){if(typeof i=="function")return i(e);i!=null&&(i.current=e)}Jt(Ao,"setRef");function Ru(...i){const e=g.useRef(i);return e.current=i,g.useCallback(t=>{const n=e.current;let s=!1;const r=n.map(o=>{const l=Ao(o,t);return!s&&typeof l=="function"&&(s=!0),l});if(s)return()=>{for(let o=0;o<r.length;o++){const l=r[o];typeof l=="function"?l():Ao(n[o],null)}}},[])}Jt(Ru,"useStableComposedRefs");function Ui(i){return(i==null?void 0:i.animationName)||"none"}Jt(Ui,"getAnimationName");function Nu(i){var n,s;let e=(n=Object.getOwnPropertyDescriptor(i.props,"ref"))==null?void 0:n.get,t=e&&"isReactWarning"in e&&e.isReactWarning;return t?i.ref:(e=(s=Object.getOwnPropertyDescriptor(i,"ref"))==null?void 0:s.get,t=e&&"isReactWarning"in e&&e.isReactWarning,t?i.props.ref:i.props.ref||i.ref)}Jt(Nu,"getElementRef");var _w=Object.defineProperty,Wl=(i,e)=>_w(i,"name",{value:e,configurable:!0}),ds=0,Et=null;function Iw(i){return Ml(),i.children}Wl(Iw,"FocusGuards");function Ml(){g.useEffect(()=>{Et||(Et={start:Bo(),end:Bo()});const{start:i,end:e}=Et;return document.body.firstElementChild!==i&&document.body.insertAdjacentElement("afterbegin",i),document.body.lastElementChild!==e&&document.body.insertAdjacentElement("beforeend",e),ds++,()=>{ds===1&&(Et==null||Et.start.remove(),Et==null||Et.end.remove(),Et=null),ds=Math.max(0,ds-1)}},[])}Wl(Ml,"useFocusGuards");function Bo(){const i=document.createElement("span");return i.setAttribute("data-radix-focus-guard",""),i.tabIndex=0,i.style.outline="none",i.style.opacity="0",i.style.position="fixed",i.style.pointerEvents="none",i}Wl(Bo,"createFocusGuard");var Pt=function(){return Pt=Object.assign||function(e){for(var t,n=1,s=arguments.length;n<s;n++){t=arguments[n];for(var r in t)Object.prototype.hasOwnProperty.call(t,r)&&(e[r]=t[r])}return e},Pt.apply(this,arguments)};function Pu(i,e){var t={};for(var n in i)Object.prototype.hasOwnProperty.call(i,n)&&e.indexOf(n)<0&&(t[n]=i[n]);if(i!=null&&typeof Object.getOwnPropertySymbols=="function")for(var s=0,n=Object.getOwnPropertySymbols(i);s<n.length;s++)e.indexOf(n[s])<0&&Object.prototype.propertyIsEnumerable.call(i,n[s])&&(t[n[s]]=i[n[s]]);return t}function Fw(i,e,t){if(t||arguments.length===2)for(var n=0,s=e.length,r;n<s;n++)(r||!(n in e))&&(r||(r=Array.prototype.slice.call(e,0,n)),r[n]=e[n]);return i.concat(r||Array.prototype.slice.call(e))}var zs="right-scroll-bar-position",Gs="width-before-scroll-bar",Zw="with-scroll-bars-hidden",qw="--removed-body-scroll-bar-size";function qr(i,e){return typeof i=="function"?i(e):i&&(i.current=e),i}function Uw(i,e){var t=g.useState(function(){return{value:i,callback:e,facade:{get current(){return t.value},set current(n){var s=t.value;s!==n&&(t.value=n,t.callback(n,s))}}}})[0];return t.callback=e,t.facade}var Xw=typeof window<"u"?g.useLayoutEffect:g.useEffect,Ua=new WeakMap;function Vw(i,e){var t=Uw(null,function(n){return i.forEach(function(s){return qr(s,n)})});return Xw(function(){var n=Ua.get(t);if(n){var s=new Set(n),r=new Set(i),o=t.current;s.forEach(function(l){r.has(l)||qr(l,null)}),r.forEach(function(l){s.has(l)||qr(l,o)})}Ua.set(t,i)},[i]),t}function Kw(i){return i}function Jw(i,e){e===void 0&&(e=Kw);var t=[],n=!1,s={read:function(){if(n)throw new Error("Sidecar: could not `read` from an `assigned` medium. `read` could be used only with `useMedium`.");return t.length?t[t.length-1]:i},useMedium:function(r){var o=e(r,n);return t.push(o),function(){t=t.filter(function(l){return l!==o})}},assignSyncMedium:function(r){for(n=!0;t.length;){var o=t;t=[],o.forEach(r)}t={push:function(l){return r(l)},filter:function(){return t}}},assignMedium:function(r){n=!0;var o=[];if(t.length){var l=t;t=[],l.forEach(r),o=t}var a=function(){var c=o;o=[],c.forEach(r)},h=function(){return Promise.resolve().then(a)};h(),t={push:function(c){o.push(c),h()},filter:function(c){return o=o.filter(c),t}}}};return s}function e2(i){i===void 0&&(i={});var e=Jw(null);return e.options=Pt({async:!0,ssr:!1},i),e}var Tu=function(i){var e=i.sideCar,t=Pu(i,["sideCar"]);if(!e)throw new Error("Sidecar: please provide `sideCar` property to import the right car");var n=e.read();if(!n)throw new Error("Sidecar medium not found");return g.createElement(n,Pt({},t))};Tu.isSideCarExport=!0;function t2(i,e){return i.useMedium(e),Tu}var Hu=e2(),Ur=function(){},wr=g.forwardRef(function(i,e){var t=g.useRef(null),n=g.useState({onScrollCapture:Ur,onWheelCapture:Ur,onTouchMoveCapture:Ur}),s=n[0],r=n[1],o=i.forwardProps,l=i.children,a=i.className,h=i.removeScrollBar,c=i.enabled,u=i.shards,f=i.sideCar,d=i.noRelative,m=i.noIsolation,$=i.inert,w=i.allowPinchZoom,y=i.as,x=y===void 0?"div":y,O=i.gapMode,j=Pu(i,["forwardProps","children","className","removeScrollBar","enabled","shards","sideCar","noRelative","noIsolation","inert","allowPinchZoom","as","gapMode"]),k=f,v=Vw([t,e]),b=Pt(Pt({},j),s);return g.createElement(g.Fragment,null,c&&g.createElement(k,{sideCar:Hu,removeScrollBar:h,shards:u,noRelative:d,noIsolation:m,inert:$,setCallbacks:r,allowPinchZoom:!!w,lockRef:t,gapMode:O}),o?g.cloneElement(g.Children.only(l),Pt(Pt({},b),{ref:v})):g.createElement(x,Pt({},b,{className:a,ref:v}),l))});wr.defaultProps={enabled:!0,removeScrollBar:!0,inert:!1};wr.classNames={fullWidth:Gs,zeroRight:zs};var i2=function(){if(typeof __webpack_nonce__<"u")return __webpack_nonce__};function n2(){if(!document)return null;var i=document.createElement("style");i.type="text/css";var e=i2();return e&&i.setAttribute("nonce",e),i}function s2(i,e){i.styleSheet?i.styleSheet.cssText=e:i.appendChild(document.createTextNode(e))}function r2(i){var e=document.head||document.getElementsByTagName("head")[0];e.appendChild(i)}var o2=function(){var i=0,e=null;return{add:function(t){i==0&&(e=n2())&&(s2(e,t),r2(e)),i++},remove:function(){i--,!i&&e&&(e.parentNode&&e.parentNode.removeChild(e),e=null)}}},l2=function(){var i=o2();return function(e,t){g.useEffect(function(){return i.add(e),function(){i.remove()}},[e&&t])}},Yu=function(){var i=l2(),e=function(t){var n=t.styles,s=t.dynamic;return i(n,s),null};return e},a2={left:0,top:0,right:0,gap:0},Xr=function(i){return parseInt(i||"",10)||0},h2=function(i){var e=window.getComputedStyle(document.body),t=e[i==="padding"?"paddingLeft":"marginLeft"],n=e[i==="padding"?"paddingTop":"marginTop"],s=e[i==="padding"?"paddingRight":"marginRight"];return[Xr(t),Xr(n),Xr(s)]},c2=function(i){if(i===void 0&&(i="margin"),typeof window>"u")return a2;var e=h2(i),t=document.documentElement.clientWidth,n=window.innerWidth;return{left:e[0],top:e[1],right:e[2],gap:Math.max(0,n-t+e[2]-e[0])}},u2=Yu(),sn="data-scroll-locked",f2=function(i,e,t,n){var s=i.left,r=i.top,o=i.right,l=i.gap;return t===void 0&&(t="margin"),`
|
|
7
|
+
.`.concat(Zw,` {
|
|
8
|
+
overflow: hidden `).concat(n,`;
|
|
9
|
+
padding-right: `).concat(l,"px ").concat(n,`;
|
|
10
|
+
}
|
|
11
|
+
body[`).concat(sn,`] {
|
|
12
|
+
overflow: hidden `).concat(n,`;
|
|
13
|
+
overscroll-behavior: contain;
|
|
14
|
+
`).concat([e&&"position: relative ".concat(n,";"),t==="margin"&&`
|
|
15
|
+
padding-left: `.concat(s,`px;
|
|
16
|
+
padding-top: `).concat(r,`px;
|
|
17
|
+
padding-right: `).concat(o,`px;
|
|
18
|
+
margin-left:0;
|
|
19
|
+
margin-top:0;
|
|
20
|
+
margin-right: `).concat(l,"px ").concat(n,`;
|
|
21
|
+
`),t==="padding"&&"padding-right: ".concat(l,"px ").concat(n,";")].filter(Boolean).join(""),`
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
.`).concat(zs,` {
|
|
25
|
+
right: `).concat(l,"px ").concat(n,`;
|
|
26
|
+
}
|
|
27
|
+
|
|
28
|
+
.`).concat(Gs,` {
|
|
29
|
+
margin-right: `).concat(l,"px ").concat(n,`;
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
.`).concat(zs," .").concat(zs,` {
|
|
33
|
+
right: 0 `).concat(n,`;
|
|
34
|
+
}
|
|
35
|
+
|
|
36
|
+
.`).concat(Gs," .").concat(Gs,` {
|
|
37
|
+
margin-right: 0 `).concat(n,`;
|
|
38
|
+
}
|
|
39
|
+
|
|
40
|
+
body[`).concat(sn,`] {
|
|
41
|
+
`).concat(qw,": ").concat(l,`px;
|
|
42
|
+
}
|
|
43
|
+
`)},Xa=function(){var i=parseInt(document.body.getAttribute(sn)||"0",10);return isFinite(i)?i:0},d2=function(){g.useEffect(function(){return document.body.setAttribute(sn,(Xa()+1).toString()),function(){var i=Xa()-1;i<=0?document.body.removeAttribute(sn):document.body.setAttribute(sn,i.toString())}},[])},p2=function(i){var e=i.noRelative,t=i.noImportant,n=i.gapMode,s=n===void 0?"margin":n;d2();var r=g.useMemo(function(){return c2(s)},[s]);return g.createElement(u2,{styles:f2(r,!e,s,t?"":"!important")})},Wo=!1;if(typeof window<"u")try{var ps=Object.defineProperty({},"passive",{get:function(){return Wo=!0,!0}});window.addEventListener("test",ps,ps),window.removeEventListener("test",ps,ps)}catch{Wo=!1}var Fi=Wo?{passive:!1}:!1,m2=function(i){return i.tagName==="TEXTAREA"},zu=function(i,e){if(!(i instanceof Element))return!1;var t=window.getComputedStyle(i);return t[e]!=="hidden"&&!(t.overflowY===t.overflowX&&!m2(i)&&t[e]==="visible")},g2=function(i){return zu(i,"overflowY")},$2=function(i){return zu(i,"overflowX")},Va=function(i,e){var t=e.ownerDocument,n=e;do{typeof ShadowRoot<"u"&&n instanceof ShadowRoot&&(n=n.host);var s=Gu(i,n);if(s){var r=Qu(i,n),o=r[1],l=r[2];if(o>l)return!0}n=n.parentNode}while(n&&n!==t.body);return!1},w2=function(i){var e=i.scrollTop,t=i.scrollHeight,n=i.clientHeight;return[e,t,n]},y2=function(i){var e=i.scrollLeft,t=i.scrollWidth,n=i.clientWidth;return[e,t,n]},Gu=function(i,e){return i==="v"?g2(e):$2(e)},Qu=function(i,e){return i==="v"?w2(e):y2(e)},b2=function(i,e){return i==="h"&&e==="rtl"?-1:1},x2=function(i,e,t,n,s){var r=b2(i,window.getComputedStyle(e).direction),o=r*n,l=t.target,a=e.contains(l),h=!1,c=o>0,u=0,f=0;do{if(!l)break;var d=Qu(i,l),m=d[0],$=d[1],w=d[2],y=$-w-r*m;(m||y)&&Gu(i,l)&&(u+=y,f+=m);var x=l.parentNode;l=x&&x.nodeType===Node.DOCUMENT_FRAGMENT_NODE?x.host:x}while(!a&&l!==document.body||a&&(e.contains(l)||e===l));return(c&&Math.abs(u)<1||!c&&Math.abs(f)<1)&&(h=!0),h},ms=function(i){return"changedTouches"in i?[i.changedTouches[0].clientX,i.changedTouches[0].clientY]:[0,0]},Ka=function(i){return[i.deltaX,i.deltaY]},Ja=function(i){return i&&"current"in i?i.current:i},O2=function(i,e){return i[0]===e[0]&&i[1]===e[1]},v2=function(i){return`
|
|
44
|
+
.block-interactivity-`.concat(i,` {pointer-events: none;}
|
|
45
|
+
.allow-interactivity-`).concat(i,` {pointer-events: all;}
|
|
46
|
+
`)},k2=0,Zi=[];function S2(i){var e=g.useRef([]),t=g.useRef([0,0]),n=g.useRef(),s=g.useState(k2++)[0],r=g.useState(Yu)[0],o=g.useRef(i);g.useEffect(function(){o.current=i},[i]),g.useEffect(function(){if(i.inert){document.body.classList.add("block-interactivity-".concat(s));var $=Fw([i.lockRef.current],(i.shards||[]).map(Ja),!0).filter(Boolean);return $.forEach(function(w){return w.classList.add("allow-interactivity-".concat(s))}),function(){document.body.classList.remove("block-interactivity-".concat(s)),$.forEach(function(w){return w.classList.remove("allow-interactivity-".concat(s))})}}},[i.inert,i.lockRef.current,i.shards]);var l=g.useCallback(function($,w){if("touches"in $&&$.touches.length===2||$.type==="wheel"&&$.ctrlKey)return!o.current.allowPinchZoom;var y=ms($),x=t.current,O="deltaX"in $?$.deltaX:x[0]-y[0],j="deltaY"in $?$.deltaY:x[1]-y[1],k,v=$.target,b=Math.abs(O)>Math.abs(j)?"h":"v";if("touches"in $&&b==="h"&&v.type==="range")return!1;var D=window.getSelection(),R=D&&D.anchorNode,C=R?R===v||R.contains(v):!1;if(C)return!1;var H=Va(b,v);if(!H)return!0;if(H?k=b:(k=b==="v"?"h":"v",H=Va(b,v)),!H)return!1;if(!n.current&&"changedTouches"in $&&(O||j)&&(n.current=k),!k)return!0;var E=n.current||k;return x2(E,w,$,E==="h"?O:j)},[]),a=g.useCallback(function($){var w=$;if(!(!Zi.length||Zi[Zi.length-1]!==r)){var y="deltaY"in w?Ka(w):ms(w),x=e.current.filter(function(k){return k.name===w.type&&(k.target===w.target||w.target===k.shadowParent)&&O2(k.delta,y)})[0];if(x&&x.should){w.cancelable&&w.preventDefault();return}if(!x){var O=(o.current.shards||[]).map(Ja).filter(Boolean).filter(function(k){return k.contains(w.target)}),j=O.length>0?l(w,O[0]):!o.current.noIsolation;j&&w.cancelable&&w.preventDefault()}}},[]),h=g.useCallback(function($,w,y,x){var O={name:$,delta:w,target:y,should:x,shadowParent:C2(y)};e.current.push(O),setTimeout(function(){e.current=e.current.filter(function(j){return j!==O})},1)},[]),c=g.useCallback(function($){t.current=ms($),n.current=void 0},[]),u=g.useCallback(function($){h($.type,Ka($),$.target,l($,i.lockRef.current))},[]),f=g.useCallback(function($){h($.type,ms($),$.target,l($,i.lockRef.current))},[]);g.useEffect(function(){return Zi.push(r),i.setCallbacks({onScrollCapture:u,onWheelCapture:u,onTouchMoveCapture:f}),document.addEventListener("wheel",a,Fi),document.addEventListener("touchmove",a,Fi),document.addEventListener("touchstart",c,Fi),function(){Zi=Zi.filter(function($){return $!==r}),document.removeEventListener("wheel",a,Fi),document.removeEventListener("touchmove",a,Fi),document.removeEventListener("touchstart",c,Fi)}},[]);var d=i.removeScrollBar,m=i.inert;return g.createElement(g.Fragment,null,m?g.createElement(r,{styles:v2(s)}):null,d?g.createElement(p2,{noRelative:i.noRelative,gapMode:i.gapMode}):null)}function C2(i){for(var e=null;i!==null;)i instanceof ShadowRoot&&(e=i.host,i=i.host),i=i.parentNode;return e}const E2=t2(Hu,S2);var Au=g.forwardRef(function(i,e){return g.createElement(wr,Pt({},i,{ref:e,sideCar:E2}))});Au.classNames=wr.classNames;var D2=function(i){if(typeof document>"u")return null;var e=Array.isArray(i)?i[0]:i;return e.ownerDocument.body},qi=new WeakMap,gs=new WeakMap,$s={},Vr=0,Bu=function(i){return i&&(i.host||Bu(i.parentNode))},j2=function(i,e){return e.map(function(t){if(i.contains(t))return t;var n=Bu(t);return n&&i.contains(n)?n:(console.error("aria-hidden",t,"in not contained inside",i,". Doing nothing"),null)}).filter(function(t){return!!t})},R2=function(i,e,t,n){var s=j2(e,Array.isArray(i)?i:[i]);$s[t]||($s[t]=new WeakMap);var r=$s[t],o=[],l=new Set,a=new Set(s),h=function(u){!u||l.has(u)||(l.add(u),h(u.parentNode))};s.forEach(h);var c=function(u){!u||a.has(u)||Array.prototype.forEach.call(u.children,function(f){if(l.has(f))c(f);else try{var d=f.getAttribute(n),m=d!==null&&d!=="false",$=(qi.get(f)||0)+1,w=(r.get(f)||0)+1;qi.set(f,$),r.set(f,w),o.push(f),$===1&&m&&gs.set(f,!0),w===1&&f.setAttribute(t,"true"),m||f.setAttribute(n,"true")}catch(y){console.error("aria-hidden: cannot operate on ",f,y)}})};return c(e),l.clear(),Vr++,function(){o.forEach(function(u){var f=qi.get(u)-1,d=r.get(u)-1;qi.set(u,f),r.set(u,d),f||(gs.has(u)||u.removeAttribute(n),gs.delete(u)),d||u.removeAttribute(t)}),Vr--,Vr||(qi=new WeakMap,qi=new WeakMap,gs=new WeakMap,$s={})}},N2=function(i,e,t){t===void 0&&(t="data-aria-hidden");var n=Array.from(Array.isArray(i)?i:[i]),s=D2(i);return s?(n.push.apply(n,Array.from(s.querySelectorAll("[aria-live], script"))),R2(n,s,t,"aria-hidden")):function(){return null}},P2=Object.defineProperty,ni=(i,e)=>P2(i,"name",{value:e,configurable:!0}),Ll="Dialog",[Wu,y1]=ou(Ll),[T2,_i]=Wu(Ll),H2=ni(i=>{const{__scopeDialog:e,children:t,open:n,defaultOpen:s,onOpenChange:r,modal:o=!0}=i,l=g.useRef(null),a=g.useRef(null),[h,c]=hu({prop:n,defaultProp:s??!1,onChange:r,caller:Ll}),[u,f]=g.useState(0),[d,m]=g.useState(0);return p.jsx(T2,{scope:e,triggerRef:l,contentRef:a,contentId:At(),titleId:At(),descriptionId:At(),titlePresent:u>0,descriptionPresent:d>0,setTitleCount:f,setDescriptionCount:m,open:h,onOpenChange:c,onOpenToggle:g.useCallback(()=>c($=>!$),[c]),modal:o,children:t})},"Dialog"),Mu="DialogPortal",[Y2,Lu]=Wu(Mu,{forceMount:void 0}),z2=ni(i=>{const{__scopeDialog:e,forceMount:t,children:n,container:s}=i,r=_i(Mu,e);return p.jsx(Y2,{scope:e,forceMount:t,children:g.Children.map(n,o=>p.jsx(Bl,{present:t||r.open,children:p.jsx(Mw,{asChild:!0,container:s,children:o})}))})},"DialogPortal"),Mo="DialogOverlay",G2=g.forwardRef(ni(function(e,t){const n=Lu(Mo,e.__scopeDialog),{forceMount:s=n.forceMount,...r}=e,o=_i(Mo,e.__scopeDialog);return o.modal?p.jsx(Bl,{present:s||o.open,children:p.jsx(A2,{...r,ref:t})}):null},"DialogOverlay")),Q2=Gl("DialogOverlay.RemoveScroll"),A2=g.forwardRef(ni(function(e,t){const{__scopeDialog:n,...s}=e,r=_i(Mo,n),o=yu(),l=xn(t,o);return p.jsx(Au,{as:Q2,allowPinchZoom:!0,shards:[r.contentRef],children:p.jsx(dt.div,{"data-state":_l(r.open),...s,ref:l,style:{pointerEvents:"auto",...s.style}})})},"DialogOverlayImpl")),Wn="DialogContent",B2=g.forwardRef(ni(function(e,t){const n=Lu(Wn,e.__scopeDialog),{forceMount:s=n.forceMount,...r}=e,o=_i(Wn,e.__scopeDialog);return p.jsx(Bl,{present:s||o.open,children:o.modal?p.jsx(W2,{...r,ref:t}):p.jsx(M2,{...r,ref:t})})},"DialogContent")),W2=g.forwardRef(ni(function(e,t){const n=_i(Wn,e.__scopeDialog),s=g.useRef(null),r=xn(t,n.contentRef,s);return g.useEffect(()=>{const o=s.current;if(o)return N2(o)},[]),p.jsx(_u,{...e,ref:r,trapFocus:n.open,disableOutsidePointerEvents:n.open,onCloseAutoFocus:Ti(e.onCloseAutoFocus,o=>{var l;o.preventDefault(),(l=n.triggerRef.current)==null||l.focus()}),onPointerDownOutside:Ti(e.onPointerDownOutside,o=>{const l=o.detail.originalEvent,a=l.button===0&&l.ctrlKey===!0;(l.button===2||a)&&o.preventDefault()}),onFocusOutside:Ti(e.onFocusOutside,o=>o.preventDefault())})},"DialogContentModal")),M2=g.forwardRef(ni(function(e,t){const n=_i(Wn,e.__scopeDialog),s=g.useRef(!1),r=g.useRef(!1);return p.jsx(_u,{...e,ref:t,trapFocus:!1,disableOutsidePointerEvents:!1,onCloseAutoFocus:o=>{var l,a;(l=e.onCloseAutoFocus)==null||l.call(e,o),o.defaultPrevented||(s.current||(a=n.triggerRef.current)==null||a.focus(),o.preventDefault()),s.current=!1,r.current=!1},onInteractOutside:o=>{var h,c;(h=e.onInteractOutside)==null||h.call(e,o),o.defaultPrevented||(s.current=!0,o.detail.originalEvent.type==="pointerdown"&&(r.current=!0));const l=o.target;((c=n.triggerRef.current)==null?void 0:c.contains(l))&&o.preventDefault(),o.detail.originalEvent.type==="focusin"&&r.current&&o.preventDefault()}})},"DialogContentNonModal")),_u=g.forwardRef(ni(function(e,t){const{__scopeDialog:n,trapFocus:s,onOpenAutoFocus:r,onCloseAutoFocus:o,...l}=e,a=_i(Wn,n);return Ml(),p.jsx(p.Fragment,{children:p.jsx(Aw,{asChild:!0,loop:!0,trapped:s,onMountAutoFocus:r,onUnmountAutoFocus:o,children:p.jsx(zw,{role:"dialog",id:a.contentId,"aria-describedby":a.descriptionPresent?a.descriptionId:void 0,"aria-labelledby":a.titlePresent?a.titleId:void 0,"data-state":_l(a.open),...l,ref:t,deferPointerDownOutside:!0,onDismiss:()=>a.onOpenChange(!1)})})})},"DialogContentImpl"));function _l(i){return i?"open":"closed"}ni(_l,"getState");var Cn='[cmdk-group=""]',Kr='[cmdk-group-items=""]',L2='[cmdk-group-heading=""]',Iu='[cmdk-item=""]',eh=`${Iu}:not([aria-disabled="true"])`,Lo="cmdk-item-select",Xi="data-value",_2=(i,e,t)=>lw(i,e,t),Fu=g.createContext(void 0),ts=()=>g.useContext(Fu),Zu=g.createContext(void 0),Il=()=>g.useContext(Zu),qu=g.createContext(void 0),Uu=g.forwardRef((i,e)=>{let t=Vi(()=>{var N,M;return{search:"",value:(M=(N=i.value)!=null?N:i.defaultValue)!=null?M:"",selectedItemId:void 0,filtered:{count:0,items:new Map,groups:new Set}}}),n=Vi(()=>new Set),s=Vi(()=>new Map),r=Vi(()=>new Map),o=Vi(()=>new Set),l=Xu(i),{label:a,children:h,value:c,onValueChange:u,filter:f,shouldFilter:d,loop:m,disablePointerSelection:$=!1,vimBindings:w=!0,...y}=i,x=At(),O=At(),j=At(),k=g.useRef(null),v=t0();Yi(()=>{if(c!==void 0){let N=c.trim();t.current.value=N,b.emit()}},[c]),Yi(()=>{v(6,B)},[]);let b=g.useMemo(()=>({subscribe:N=>(o.current.add(N),()=>o.current.delete(N)),snapshot:()=>t.current,setState:(N,M,T)=>{var Q,K,oe,je;if(!Object.is(t.current[N],M)){if(t.current[N]=M,N==="search")E(),C(),v(1,H);else if(N==="value"){if(document.activeElement.hasAttribute("cmdk-input")||document.activeElement.hasAttribute("cmdk-root")){let me=document.getElementById(j);me?me.focus():(Q=document.getElementById(x))==null||Q.focus()}if(v(7,()=>{var me;t.current.selectedItemId=(me=_())==null?void 0:me.id,b.emit()}),T||v(5,B),((K=l.current)==null?void 0:K.value)!==void 0){let me=M??"";(je=(oe=l.current).onValueChange)==null||je.call(oe,me);return}}b.emit()}},emit:()=>{o.current.forEach(N=>N())}}),[]),D=g.useMemo(()=>({value:(N,M,T)=>{var Q;M!==((Q=r.current.get(N))==null?void 0:Q.value)&&(r.current.set(N,{value:M,keywords:T}),t.current.filtered.items.set(N,R(M,T)),v(2,()=>{C(),b.emit()}))},item:(N,M)=>(n.current.add(N),M&&(s.current.has(M)?s.current.get(M).add(N):s.current.set(M,new Set([N]))),v(3,()=>{E(),C(),t.current.value||H(),b.emit()}),()=>{r.current.delete(N),n.current.delete(N),t.current.filtered.items.delete(N);let T=_();v(4,()=>{E(),(T==null?void 0:T.getAttribute("id"))===N&&H(),b.emit()})}),group:N=>(s.current.has(N)||s.current.set(N,new Set),()=>{r.current.delete(N),s.current.delete(N)}),filter:()=>l.current.shouldFilter,label:a||i["aria-label"],getDisablePointerSelection:()=>l.current.disablePointerSelection,listId:x,inputId:j,labelId:O,listInnerRef:k}),[]);function R(N,M){var T,Q;let K=(Q=(T=l.current)==null?void 0:T.filter)!=null?Q:_2;return N?K(N,t.current.search,M):0}function C(){if(!t.current.search||l.current.shouldFilter===!1)return;let N=t.current.filtered.items,M=[];t.current.filtered.groups.forEach(Q=>{let K=s.current.get(Q),oe=0;K.forEach(je=>{let me=N.get(je);oe=Math.max(me,oe)}),M.push([Q,oe])});let T=k.current;q().sort((Q,K)=>{var oe,je;let me=Q.getAttribute("id"),it=K.getAttribute("id");return((oe=N.get(it))!=null?oe:0)-((je=N.get(me))!=null?je:0)}).forEach(Q=>{let K=Q.closest(Kr);K?K.appendChild(Q.parentElement===K?Q:Q.closest(`${Kr} > *`)):T.appendChild(Q.parentElement===T?Q:Q.closest(`${Kr} > *`))}),M.sort((Q,K)=>K[1]-Q[1]).forEach(Q=>{var K;let oe=(K=k.current)==null?void 0:K.querySelector(`${Cn}[${Xi}="${encodeURIComponent(Q[0])}"]`);oe==null||oe.parentElement.appendChild(oe)})}function H(){let N=q().find(T=>T.getAttribute("aria-disabled")!=="true"),M=N==null?void 0:N.getAttribute(Xi);b.setState("value",M||void 0)}function E(){var N,M,T,Q;if(!t.current.search||l.current.shouldFilter===!1){t.current.filtered.count=n.current.size;return}t.current.filtered.groups=new Set;let K=0;for(let oe of n.current){let je=(M=(N=r.current.get(oe))==null?void 0:N.value)!=null?M:"",me=(Q=(T=r.current.get(oe))==null?void 0:T.keywords)!=null?Q:[],it=R(je,me);t.current.filtered.items.set(oe,it),it>0&&K++}for(let[oe,je]of s.current)for(let me of je)if(t.current.filtered.items.get(me)>0){t.current.filtered.groups.add(oe);break}t.current.filtered.count=K}function B(){var N,M,T;let Q=_();Q&&(((N=Q.parentElement)==null?void 0:N.firstChild)===Q&&((T=(M=Q.closest(Cn))==null?void 0:M.querySelector(L2))==null||T.scrollIntoView({block:"nearest"})),Q.scrollIntoView({block:"nearest"}))}function _(){var N;return(N=k.current)==null?void 0:N.querySelector(`${Iu}[aria-selected="true"]`)}function q(){var N;return Array.from(((N=k.current)==null?void 0:N.querySelectorAll(eh))||[])}function ee(N){let M=q()[N];M&&b.setState("value",M.getAttribute(Xi))}function ne(N){var M;let T=_(),Q=q(),K=Q.findIndex(je=>je===T),oe=Q[K+N];(M=l.current)!=null&&M.loop&&(oe=K+N<0?Q[Q.length-1]:K+N===Q.length?Q[0]:Q[K+N]),oe&&b.setState("value",oe.getAttribute(Xi))}function P(N){let M=_(),T=M==null?void 0:M.closest(Cn),Q;for(;T&&!Q;)T=N>0?J2(T,Cn):e0(T,Cn),Q=T==null?void 0:T.querySelector(eh);Q?b.setState("value",Q.getAttribute(Xi)):ne(N)}let Z=()=>ee(q().length-1),se=N=>{N.preventDefault(),N.metaKey?Z():N.altKey?P(1):ne(1)},ue=N=>{N.preventDefault(),N.metaKey?ee(0):N.altKey?P(-1):ne(-1)};return g.createElement(dt.div,{ref:e,tabIndex:-1,...y,"cmdk-root":"",onKeyDown:N=>{var M;(M=y.onKeyDown)==null||M.call(y,N);let T=N.nativeEvent.isComposing||N.keyCode===229;if(!(N.defaultPrevented||T))switch(N.key){case"n":case"j":{w&&N.ctrlKey&&se(N);break}case"ArrowDown":{se(N);break}case"p":case"k":{w&&N.ctrlKey&&ue(N);break}case"ArrowUp":{ue(N);break}case"Home":{N.preventDefault(),ee(0);break}case"End":{N.preventDefault(),Z();break}case"Enter":{N.preventDefault();let Q=_();if(Q){let K=new Event(Lo);Q.dispatchEvent(K)}}}}},g.createElement("label",{"cmdk-label":"",htmlFor:D.inputId,id:D.labelId,style:n0},a),yr(i,N=>g.createElement(Zu.Provider,{value:b},g.createElement(Fu.Provider,{value:D},N))))}),I2=g.forwardRef((i,e)=>{var t,n;let s=At(),r=g.useRef(null),o=g.useContext(qu),l=ts(),a=Xu(i),h=(n=(t=a.current)==null?void 0:t.forceMount)!=null?n:o==null?void 0:o.forceMount;Yi(()=>{if(!h)return l.item(s,o==null?void 0:o.id)},[h]);let c=Vu(s,r,[i.value,i.children,r],i.keywords),u=Il(),f=gi(v=>v.value&&v.value===c.current),d=gi(v=>h||l.filter()===!1?!0:v.search?v.filtered.items.get(s)>0:!0);g.useEffect(()=>{let v=r.current;if(!(!v||i.disabled))return v.addEventListener(Lo,m),()=>v.removeEventListener(Lo,m)},[d,i.onSelect,i.disabled]);function m(){var v,b;$(),(b=(v=a.current).onSelect)==null||b.call(v,c.current)}function $(){u.setState("value",c.current,!0)}if(!d)return null;let{disabled:w,value:y,onSelect:x,forceMount:O,keywords:j,...k}=i;return g.createElement(dt.div,{ref:Hi(r,e),...k,id:s,"cmdk-item":"",role:"option","aria-disabled":!!w,"aria-selected":!!f,"data-disabled":!!w,"data-selected":!!f,onPointerMove:w||l.getDisablePointerSelection()?void 0:$,onClick:w?void 0:m},i.children)}),F2=g.forwardRef((i,e)=>{let{heading:t,children:n,forceMount:s,...r}=i,o=At(),l=g.useRef(null),a=g.useRef(null),h=At(),c=ts(),u=gi(d=>s||c.filter()===!1?!0:d.search?d.filtered.groups.has(o):!0);Yi(()=>c.group(o),[]),Vu(o,l,[i.value,i.heading,a]);let f=g.useMemo(()=>({id:o,forceMount:s}),[s]);return g.createElement(dt.div,{ref:Hi(l,e),...r,"cmdk-group":"",role:"presentation",hidden:u?void 0:!0},t&&g.createElement("div",{ref:a,"cmdk-group-heading":"","aria-hidden":!0,id:h},t),yr(i,d=>g.createElement("div",{"cmdk-group-items":"",role:"group","aria-labelledby":t?h:void 0},g.createElement(qu.Provider,{value:f},d))))}),Z2=g.forwardRef((i,e)=>{let{alwaysRender:t,...n}=i,s=g.useRef(null),r=gi(o=>!o.search);return!t&&!r?null:g.createElement(dt.div,{ref:Hi(s,e),...n,"cmdk-separator":"",role:"separator"})}),q2=g.forwardRef((i,e)=>{let{onValueChange:t,...n}=i,s=i.value!=null,r=Il(),o=gi(h=>h.search),l=gi(h=>h.selectedItemId),a=ts();return g.useEffect(()=>{i.value!=null&&r.setState("search",i.value)},[i.value]),g.createElement(dt.input,{ref:e,...n,"cmdk-input":"",autoComplete:"off",autoCorrect:"off",spellCheck:!1,"aria-autocomplete":"list",role:"combobox","aria-expanded":!0,"aria-controls":a.listId,"aria-labelledby":a.labelId,"aria-activedescendant":l,id:a.inputId,type:"text",value:s?i.value:o,onChange:h=>{s||r.setState("search",h.target.value),t==null||t(h.target.value)}})}),U2=g.forwardRef((i,e)=>{let{children:t,label:n="Suggestions",...s}=i,r=g.useRef(null),o=g.useRef(null),l=gi(h=>h.selectedItemId),a=ts();return g.useEffect(()=>{if(o.current&&r.current){let h=o.current,c=r.current,u,f=new ResizeObserver(()=>{u=requestAnimationFrame(()=>{let d=h.offsetHeight;c.style.setProperty("--cmdk-list-height",d.toFixed(1)+"px")})});return f.observe(h),()=>{cancelAnimationFrame(u),f.unobserve(h)}}},[]),g.createElement(dt.div,{ref:Hi(r,e),...s,"cmdk-list":"",role:"listbox",tabIndex:-1,"aria-activedescendant":l,"aria-label":n,id:a.listId},yr(i,h=>g.createElement("div",{ref:Hi(o,a.listInnerRef),"cmdk-list-sizer":""},h)))}),X2=g.forwardRef((i,e)=>{let{open:t,onOpenChange:n,overlayClassName:s,contentClassName:r,container:o,...l}=i;return g.createElement(H2,{open:t,onOpenChange:n},g.createElement(z2,{container:o},g.createElement(G2,{"cmdk-overlay":"",className:s}),g.createElement(B2,{"aria-label":i.label,"cmdk-dialog":"",className:r},g.createElement(Uu,{ref:e,...l}))))}),V2=g.forwardRef((i,e)=>gi(t=>t.filtered.count===0)?g.createElement(dt.div,{ref:e,...i,"cmdk-empty":"",role:"presentation"}):null),K2=g.forwardRef((i,e)=>{let{progress:t,children:n,label:s="Loading...",...r}=i;return g.createElement(dt.div,{ref:e,...r,"cmdk-loading":"",role:"progressbar","aria-valuenow":t,"aria-valuemin":0,"aria-valuemax":100,"aria-label":s},yr(i,o=>g.createElement("div",{"aria-hidden":!0},o)))}),On=Object.assign(Uu,{List:U2,Item:I2,Input:q2,Group:F2,Separator:Z2,Dialog:X2,Empty:V2,Loading:K2});function J2(i,e){let t=i.nextElementSibling;for(;t;){if(t.matches(e))return t;t=t.nextElementSibling}}function e0(i,e){let t=i.previousElementSibling;for(;t;){if(t.matches(e))return t;t=t.previousElementSibling}}function Xu(i){let e=g.useRef(i);return Yi(()=>{e.current=i}),e}var Yi=typeof window>"u"?g.useEffect:g.useLayoutEffect;function Vi(i){let e=g.useRef();return e.current===void 0&&(e.current=i()),e}function gi(i){let e=Il(),t=()=>i(e.snapshot());return g.useSyncExternalStore(e.subscribe,t,t)}function Vu(i,e,t,n=[]){let s=g.useRef(),r=ts();return Yi(()=>{var o;let l=(()=>{var h;for(let c of t){if(typeof c=="string")return c.trim();if(typeof c=="object"&&"current"in c)return c.current?(h=c.current.textContent)==null?void 0:h.trim():s.current}})(),a=n.map(h=>h.trim());r.value(i,l,a),(o=e.current)==null||o.setAttribute(Xi,l),s.current=l}),s}var t0=()=>{let[i,e]=g.useState(),t=Vi(()=>new Map);return Yi(()=>{t.current.forEach(n=>n()),t.current=new Map},[i]),(n,s)=>{t.current.set(n,s),e({})}};function i0(i){let e=i.type;return typeof e=="function"?e(i.props):"render"in e?e.render(i.props):i}function yr({asChild:i,children:e},t){return i&&g.isValidElement(e)?g.cloneElement(i0(e),{ref:e.ref},t(e.props.children)):t(e)}var n0={position:"absolute",width:"1px",height:"1px",padding:"0",margin:"-1px",overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",borderWidth:"0"};function Ku({className:i,...e}){return p.jsx("div",{"data-slot":"input-group",role:"group",className:ii("group/input-group relative flex h-8 w-full min-w-0 items-center rounded-2xl border border-transparent bg-input/50 transition-[color,box-shadow] duration-200 outline-none in-data-[slot=combobox-content]:focus-within:border-inherit in-data-[slot=combobox-content]:focus-within:ring-0 has-[[data-slot=input-group-control]:focus-visible]:border-ring has-[[data-slot=input-group-control]:focus-visible]:ring-3 has-[[data-slot=input-group-control]:focus-visible]:ring-ring/30 has-[[data-slot][aria-invalid=true]]:border-destructive has-[[data-slot][aria-invalid=true]]:ring-3 has-[[data-slot][aria-invalid=true]]:ring-destructive/20 has-[>[data-align=block-end]]:h-auto has-[>[data-align=block-end]]:flex-col has-[>[data-align=block-start]]:h-auto has-[>[data-align=block-start]]:flex-col has-[>textarea]:h-auto dark:has-[[data-slot][aria-invalid=true]]:ring-destructive/40 has-[>[data-align=block-end]]:[&>input]:pt-3 has-[>[data-align=block-start]]:[&>input]:pb-3 has-[>[data-align=inline-end]]:[&>input]:pr-1.5 has-[>[data-align=inline-start]]:[&>input]:pl-1.5",i),...e})}const s0=og("flex h-auto cursor-text items-center justify-center gap-2 py-1.5 text-sm font-medium text-muted-foreground select-none group-data-[disabled=true]/input-group:opacity-50 **:data-[slot=kbd]:rounded-2xl **:data-[slot=kbd]:bg-muted-foreground/10 **:data-[slot=kbd]:px-1.5 [&>svg:not([class*='size-'])]:size-4",{variants:{align:{"inline-start":"order-first pl-2 has-[>button]:ml-[-0.3rem] has-[>kbd]:ml-[-0.15rem]","inline-end":"order-last pr-2 has-[>button]:mr-[-0.3rem] has-[>kbd]:mr-[-0.15rem]","block-start":"order-first w-full justify-start px-2.5 pt-2 group-has-[>input]/input-group:pt-2 [.border-b]:pb-2","block-end":"order-last w-full justify-start px-2.5 pb-2 group-has-[>input]/input-group:pb-2 [.border-t]:pt-2"}},defaultVariants:{align:"inline-start"}});function Ju({className:i,align:e="inline-start",...t}){return p.jsx("div",{role:"group","data-slot":"input-group-addon","data-align":e,className:ii(s0({align:e}),i),onClick:n=>{var s,r;n.target.closest("button")||(r=(s=n.currentTarget.parentElement)==null?void 0:s.querySelector("input"))==null||r.focus()},...t})}function r0({className:i,...e}){return p.jsx(rg,{"data-slot":"input-group-control",className:ii("flex-1 rounded-none border-0 bg-transparent shadow-none ring-0 focus-visible:ring-0 aria-invalid:ring-0 dark:bg-transparent",i),...e})}function ef({className:i,...e}){return p.jsx(On,{"data-slot":"command",className:ii("flex size-full flex-col overflow-hidden rounded-3xl bg-popover p-1 text-popover-foreground",i),...e})}function o0({className:i,...e}){return p.jsx("div",{"data-slot":"command-input-wrapper",className:"p-1 pb-0",children:p.jsxs(Ku,{className:"h-8! bg-input/50",children:[p.jsx(On.Input,{"data-slot":"command-input",className:ii("w-full text-sm outline-hidden disabled:cursor-not-allowed disabled:opacity-50",i),...e}),p.jsx(Ju,{children:p.jsx(lg,{className:"size-4 shrink-0 opacity-50"})})]})})}function tf({className:i,...e}){return p.jsx(On.List,{"data-slot":"command-list",className:ii("no-scrollbar max-h-72 scroll-py-1 overflow-x-hidden overflow-y-auto outline-none",i),...e})}function l0({className:i,...e}){return p.jsx(On.Empty,{"data-slot":"command-empty",className:ii("py-6 text-center text-sm",i),...e})}function nf({className:i,...e}){return p.jsx(On.Group,{"data-slot":"command-group",className:ii("overflow-hidden p-1 text-foreground **:[[cmdk-group-heading]]:px-2 **:[[cmdk-group-heading]]:py-1.5 **:[[cmdk-group-heading]]:text-xs **:[[cmdk-group-heading]]:font-medium **:[[cmdk-group-heading]]:text-muted-foreground",i),...e})}function sf({className:i,children:e,...t}){return p.jsxs(On.Item,{"data-slot":"command-item",className:ii("group/command-item relative flex min-h-7 cursor-default items-center gap-2 rounded-xl px-2 py-1.5 text-sm outline-hidden select-none in-data-[slot=dialog-content]:rounded-2xl data-[disabled=true]:pointer-events-none data-[disabled=true]:opacity-50 data-selected:bg-muted data-selected:text-foreground [&_svg]:pointer-events-none [&_svg]:shrink-0 [&_svg:not([class*='size-'])]:size-4 data-selected:*:[svg]:text-foreground",i),...t,children:[e,p.jsx(b$,{className:"ml-auto opacity-0 group-has-data-[slot=command-shortcut]/command-item:hidden group-data-[checked=true]/command-item:opacity-100"})]})}const a0=(i,e,t)=>{const n=i.toLowerCase(),s=e.trim().toLowerCase();return!s||n===s?1:n.startsWith(s)?.9:n.includes(s)?.7:t!=null&&t.some(r=>r.toLowerCase().includes(s))?.4:o5(s)===n?.2:0};function h0({editor:i,blockId:e,itemId:t,open:n,onOpenChange:s}){var u;const[r,o]=g.useState(""),l=g.useRef(!1),a=(u=ft(i.state.doc,t))==null?void 0:u.node.attrs.icon,h=typeof a=="string"?a:null;if(g.useEffect(()=>{n&&!l.current&&(l.current=!0,o("")),n||(l.current=!1)}),!e)return null;const c=f=>{ag(i,e,t,f),s(!1)};return p.jsx(Bi,{open:n,onOpenChange:s,children:p.jsxs(Wi,{className:"sm:max-w-md",children:[p.jsxs(Mi,{className:"df-icon-head",children:[p.jsx(Li,{children:"Icon"}),h&&p.jsx(Xt,{variant:"ghost",size:"sm",className:"df-icon-clear",onClick:()=>c(null),children:"Remove"})]}),p.jsxs(ef,{className:"df-icon-picker",loop:!0,filter:a0,children:[p.jsx(o0,{autoFocus:!0,value:r,onValueChange:o,placeholder:"Search icons…"}),p.jsxs(tf,{className:"max-h-72",children:[p.jsx(l0,{children:"No icon by that name. Try what the thing IS — “money”, “risk”."}),Object.entries(s5).map(([f,d])=>p.jsx(nf,{heading:f,className:"df-icon-shelf",children:d.map(m=>p.jsx(sf,{value:m,keywords:[f],className:"df-icon-cell",title:m,"aria-label":m,"data-active":m===h||void 0,onSelect:()=>c(m),children:p.jsx("span",{className:"df-icon-swatch",style:{"--icon":r5(m)??void 0},"aria-hidden":!0})},m))},f))]})]})]})})}const c0="",u0=i=>i===null?c0:String(i),f0=i=>{const e=i.trim();if(!e)return null;const t=Number(e);return Number.isFinite(t)?t:null};function d0({data:i,kind:e,stack:t}){const n=g.useRef(null),s=g.useRef(null),r=Lc(i);return g.useEffect(()=>{var l;if(r||!n.current){(l=s.current)==null||l.dispose(),s.current=null;return}const o=h5(i,{kind:e,stack:t});s.current?s.current.update(o):s.current=c5(n.current,o)},[i,e,t,r]),g.useEffect(()=>()=>{var o;(o=s.current)==null||o.dispose(),s.current=null},[]),p.jsxs("section",{className:"df-sheet-col",children:[p.jsx("h4",{className:"df-sheet-col-head",children:"Preview"}),p.jsx("div",{className:"chart-dialog-preview",children:r?p.jsx("p",{className:"chart-dialog-problem",role:"status",children:r}):p.jsx("div",{ref:n,className:"chart-dialog-stage"})})]})}function p0({editor:i,blockId:e,onDone:t}){const n=e!==null,s=g.useMemo(()=>{var b;return e?(b=ft(i.state.doc,e))==null?void 0:b.node:void 0},[i,e]),[r,o]=g.useState({categories:[],series:[]}),[l,a]=g.useState(null);g.useEffect(()=>{!n||!s||(o(l5(s)),a(null))},[n,s]);const h=Lc(r),c=(s==null?void 0:s.attrs.arrangement)??"column",u=(s==null?void 0:s.attrs.stack)??"none",f=(b,D,R)=>o(C=>({...C,series:C.series.map((H,E)=>E===D?{...H,values:H.values.map((B,_)=>_===b?f0(R):B)}:H)})),d=(b,D)=>o(R=>({...R,categories:R.categories.map((C,H)=>H===b?D:C)})),m=(b,D)=>o(R=>({...R,series:R.series.map((C,H)=>H===b?{...C,name:D}:C)})),$=()=>o(b=>({categories:[...b.categories,""],series:b.series.map(D=>({...D,values:[...D.values,null]}))})),w=b=>o(D=>({categories:D.categories.filter((R,C)=>C!==b),series:D.series.map(R=>({...R,values:R.values.filter((C,H)=>H!==b)}))})),y=()=>o(b=>({...b,series:[...b.series,{name:`Series ${b.series.length+1}`,values:b.categories.map(()=>null)}]})),x=b=>o(D=>({...D,series:D.series.filter((R,C)=>C!==b)})),O=b=>{const D=b.clipboardData.getData("text/plain");if(!D.includes(`
|
|
47
|
+
`))return;const R=u5(D);if(b.preventDefault(),!R){a("That paste has no readable numbers. Rows down, series across, one header row.");return}o(R.data),a(R.data.series.length===Gr?`Pasted. Only the first ${Gr} series were kept — that is how many colours a theme has.`:"Pasted.")},j=()=>{if(!(!e||h)){if(!hg(i,e,r)){a("That could not be saved. Check the numbers and try again.");return}t()}},k=r.series.length>=Gr,v=r.categories.length>=a5;return p.jsx(Bi,{open:n,onOpenChange:b=>{b||t()},children:p.jsxs(Wi,{className:"df-sheet chart-dialog",children:[p.jsxs(Mi,{className:"df-sheet-bar",children:[p.jsxs("div",{className:"df-sheet-titles",children:[p.jsx(Li,{children:"Chart data"}),p.jsx(yn,{children:"Rows are the labels along the axis; each column is one series. Paste a spreadsheet to fill it in one go."})]}),p.jsxs("div",{className:"df-sheet-controls",children:[p.jsx("p",{className:"df-sheet-note",role:"status",children:h??l??""}),p.jsx(Xt,{variant:"ghost",onClick:t,children:"Cancel"}),p.jsx(Xt,{onClick:j,disabled:!!h,children:"Done"})]})]}),p.jsxs("div",{className:"df-sheet-body chart-dialog-body",children:[p.jsx(d0,{data:r,kind:c,stack:u}),p.jsxs("section",{className:"df-sheet-col chart-dialog-data",children:[p.jsx("h4",{className:"df-sheet-col-head",children:"Data"}),p.jsx("div",{className:"chart-dialog-grid",onPaste:O,children:p.jsxs("table",{children:[p.jsx("thead",{children:p.jsxs("tr",{children:[p.jsx("th",{className:"chart-dialog-corner",children:"Label"}),r.series.map((b,D)=>p.jsx("th",{children:p.jsxs("span",{className:"chart-dialog-head",children:[p.jsx("input",{value:b.name,"aria-label":`Series ${D+1} name`,onChange:R=>m(D,R.target.value)}),p.jsx("button",{type:"button",className:"chart-dialog-drop","aria-label":`Remove series ${b.name||D+1}`,onClick:()=>x(D),children:"×"})]})},D)),p.jsx("th",{className:"chart-dialog-add"})]})}),p.jsx("tbody",{children:r.categories.map((b,D)=>p.jsxs("tr",{children:[p.jsx("th",{children:p.jsx("input",{value:b,"aria-label":`Label ${D+1}`,onChange:R=>d(D,R.target.value)})}),r.series.map((R,C)=>p.jsx("td",{children:p.jsx("input",{inputMode:"decimal",value:u0(R.values[D]??null),"aria-label":`${R.name} at ${b||D+1}`,onChange:H=>f(D,C,H.target.value)})},C)),p.jsx("td",{className:"chart-dialog-add",children:p.jsx("button",{type:"button",className:"chart-dialog-drop","aria-label":`Remove row ${b||D+1}`,onClick:()=>w(D),children:"×"})})]},D))})]})}),p.jsxs("div",{className:"chart-dialog-actions",children:[p.jsx("button",{type:"button",onClick:$,disabled:v,title:v?"Twelve labels is as many as the axis can show":void 0,children:"+ Row"}),p.jsx("button",{type:"button",onClick:y,disabled:k,title:k?"Six series is the most a theme has colours for":void 0,children:"+ Series"})]})]})]})]})})}let _o=[],rf=[];(()=>{let i="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(e=>e?parseInt(e,36):1);for(let e=0,t=0;e<i.length;e++)(e%2?rf:_o).push(t=t+i[e])})();function m0(i){if(i<768)return!1;for(let e=0,t=_o.length;;){let n=e+t>>1;if(i<_o[n])t=n;else if(i>=rf[n])e=n+1;else return!0;if(e==t)return!1}}function th(i){return i>=127462&&i<=127487}const ih=8205;function g0(i,e,t=!0,n=!0){return(t?of:$0)(i,e,n)}function of(i,e,t){if(e==i.length)return e;e&&lf(i.charCodeAt(e))&&af(i.charCodeAt(e-1))&&e--;let n=Jr(i,e);for(e+=nh(n);e<i.length;){let s=Jr(i,e);if(n==ih||s==ih||t&&m0(s))e+=nh(s),n=s;else if(th(s)){let r=0,o=e-2;for(;o>=0&&th(Jr(i,o));)r++,o-=2;if(r%2==0)break;e+=2}else break}return e}function $0(i,e,t){for(;e>1;){let n=of(i,e-2,t);if(n<e)return n;e--}return 0}function Jr(i,e){let t=i.charCodeAt(e);if(!af(t)||e+1==i.length)return t;let n=i.charCodeAt(e+1);return lf(n)?(t-55296<<10)+(n-56320)+65536:t}function lf(i){return i>=56320&&i<57344}function af(i){return i>=55296&&i<56320}function nh(i){return i<65536?1:2}class le{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid position ${e} in document of length ${this.length}`);return this.lineInner(e,!1,1,0)}line(e){if(e<1||e>this.lines)throw new RangeError(`Invalid line number ${e} in ${this.lines}-line document`);return this.lineInner(e,!0,1,0)}replace(e,t,n){[e,t]=dn(this,e,t);let s=[];return this.decompose(0,e,s,2),n.length&&n.decompose(0,n.length,s,3),this.decompose(t,this.length,s,1),Tt.from(s,this.length-(t-e)+n.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=dn(this,e,t);let n=[];return this.decompose(e,t,n,0),Tt.from(n,t-e)}eq(e){if(e==this)return!0;if(e.length!=this.length||e.lines!=this.lines)return!1;let t=this.scanIdentical(e,1),n=this.length-this.scanIdentical(e,-1),s=new Hn(this),r=new Hn(e);for(let o=t,l=t;;){if(s.next(o),r.next(o),o=0,s.lineBreak!=r.lineBreak||s.done!=r.done||s.value!=r.value)return!1;if(l+=s.value.length,s.done||l>=n)return!0}}iter(e=1){return new Hn(this,e)}iterRange(e,t=this.length){return new hf(this,e,t)}iterLines(e,t){let n;if(e==null)n=this.iter();else{t==null&&(t=this.lines+1);let s=this.line(e).from;n=this.iterRange(s,Math.max(s,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new cf(n)}toString(){return this.sliceString(0)}toJSON(){let e=[];return this.flatten(e),e}constructor(){}static of(e){if(e.length==0)throw new RangeError("A document must have at least one line");return e.length==1&&!e[0]?le.empty:e.length<=32?new Ee(e):Tt.from(Ee.split(e,[]))}}class Ee extends le{constructor(e,t=w0(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,n,s){for(let r=0;;r++){let o=this.text[r],l=s+o.length;if((t?n:l)>=e)return new y0(s,l,n,o);s=l+1,n++}}decompose(e,t,n,s){let r=e<=0&&t>=this.length?this:new Ee(sh(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(s&1){let o=n.pop(),l=Qs(r.text,o.text.slice(),0,r.length);if(l.length<=32)n.push(new Ee(l,o.length+r.length));else{let a=l.length>>1;n.push(new Ee(l.slice(0,a)),new Ee(l.slice(a)))}}else n.push(r)}replace(e,t,n){if(!(n instanceof Ee))return super.replace(e,t,n);[e,t]=dn(this,e,t);let s=Qs(this.text,Qs(n.text,sh(this.text,0,e)),t),r=this.length+n.length-(t-e);return s.length<=32?new Ee(s,r):Tt.from(Ee.split(s,[]),r)}sliceString(e,t=this.length,n=`
|
|
48
|
+
`){[e,t]=dn(this,e,t);let s="";for(let r=0,o=0;r<=t&&o<this.text.length;o++){let l=this.text[o],a=r+l.length;r>e&&o&&(s+=n),e<a&&t>r&&(s+=l.slice(Math.max(0,e-r),t-r)),r=a+1}return s}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let n=[],s=-1;for(let r of e)n.push(r),s+=r.length+1,n.length==32&&(t.push(new Ee(n,s)),n=[],s=-1);return s>-1&&t.push(new Ee(n,s)),t}}class Tt extends le{constructor(e,t){super(),this.children=e,this.length=t,this.lines=0;for(let n of e)this.lines+=n.lines}lineInner(e,t,n,s){for(let r=0;;r++){let o=this.children[r],l=s+o.length,a=n+o.lines-1;if((t?a:l)>=e)return o.lineInner(e,t,n,s);s=l+1,n=a+1}}decompose(e,t,n,s){for(let r=0,o=0;o<=t&&r<this.children.length;r++){let l=this.children[r],a=o+l.length;if(e<=a&&t>=o){let h=s&((o<=e?1:0)|(a>=t?2:0));o>=e&&a<=t&&!h?n.push(l):l.decompose(e-o,t-o,n,h)}o=a+1}}replace(e,t,n){if([e,t]=dn(this,e,t),n.lines<this.lines)for(let s=0,r=0;s<this.children.length;s++){let o=this.children[s],l=r+o.length;if(e>=r&&t<=l){let a=o.replace(e-r,t-r,n),h=this.lines-o.lines+a.lines;if(a.lines<h>>4&&a.lines>h>>6){let c=this.children.slice();return c[s]=a,new Tt(c,this.length-(t-e)+n.length)}return super.replace(r,l,a)}r=l+1}return super.replace(e,t,n)}sliceString(e,t=this.length,n=`
|
|
49
|
+
`){[e,t]=dn(this,e,t);let s="";for(let r=0,o=0;r<this.children.length&&o<=t;r++){let l=this.children[r],a=o+l.length;o>e&&r&&(s+=n),e<a&&t>o&&(s+=l.sliceString(e-o,t-o,n)),o=a+1}return s}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof Tt))return 0;let n=0,[s,r,o,l]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;s+=t,r+=t){if(s==o||r==l)return n;let a=this.children[s],h=e.children[r];if(a!=h)return n+a.scanIdentical(h,t);n+=a.length+1}}static from(e,t=e.reduce((n,s)=>n+s.length+1,-1)){let n=0;for(let d of e)n+=d.lines;if(n<32){let d=[];for(let m of e)m.flatten(d);return new Ee(d,t)}let s=Math.max(32,n>>5),r=s<<1,o=s>>1,l=[],a=0,h=-1,c=[];function u(d){let m;if(d.lines>r&&d instanceof Tt)for(let $ of d.children)u($);else d.lines>o&&(a>o||!a)?(f(),l.push(d)):d instanceof Ee&&a&&(m=c[c.length-1])instanceof Ee&&d.lines+m.lines<=32?(a+=d.lines,h+=d.length+1,c[c.length-1]=new Ee(m.text.concat(d.text),m.length+1+d.length)):(a+d.lines>s&&f(),a+=d.lines,h+=d.length+1,c.push(d))}function f(){a!=0&&(l.push(c.length==1?c[0]:Tt.from(c,h)),h=-1,a=c.length=0)}for(let d of e)u(d);return f(),l.length==1?l[0]:new Tt(l,t)}}le.empty=new Ee([""],0);function w0(i){let e=-1;for(let t of i)e+=t.length+1;return e}function Qs(i,e,t=0,n=1e9){for(let s=0,r=0,o=!0;r<i.length&&s<=n;r++){let l=i[r],a=s+l.length;a>=t&&(a>n&&(l=l.slice(0,n-s)),s<t&&(l=l.slice(t-s)),o?(e[e.length-1]+=l,o=!1):e.push(l)),s=a+1}return e}function sh(i,e,t){return Qs(i,[""],e,t)}class Hn{constructor(e,t=1){this.dir=t,this.done=!1,this.lineBreak=!1,this.value="",this.nodes=[e],this.offsets=[t>0?1:(e instanceof Ee?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let n=this.nodes.length-1,s=this.nodes[n],r=this.offsets[n],o=r>>1,l=s instanceof Ee?s.text.length:s.children.length;if(o==(t>0?l:0)){if(n==0)return this.done=!0,this.value="",this;t>0&&this.offsets[n-1]++,this.nodes.pop(),this.offsets.pop()}else if((r&1)==(t>0?0:1)){if(this.offsets[n]+=t,e==0)return this.lineBreak=!0,this.value=`
|
|
50
|
+
`,this;e--}else if(s instanceof Ee){let a=s.text[o+(t<0?-1:0)];if(this.offsets[n]+=t,a.length>Math.max(0,e))return this.value=e==0?a:t>0?a.slice(e):a.slice(0,a.length-e),this;e-=a.length}else{let a=s.children[o+(t<0?-1:0)];e>a.length?(e-=a.length,this.offsets[n]+=t):(t<0&&this.offsets[n]--,this.nodes.push(a),this.offsets.push(t>0?1:(a instanceof Ee?a.text.length:a.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}}class hf{constructor(e,t,n){this.value="",this.done=!1,this.cursor=new Hn(e,t>n?-1:1),this.pos=t>n?e.length:0,this.from=Math.min(t,n),this.to=Math.max(t,n)}nextInner(e,t){if(t<0?this.pos<=this.from:this.pos>=this.to)return this.value="",this.done=!0,this;e+=Math.max(0,t<0?this.pos-this.to:this.from-this.pos);let n=t<0?this.pos-this.from:this.to-this.pos;e>n&&(e=n),n-=e;let{value:s}=this.cursor.next(e);return this.pos+=(s.length+e)*t,this.value=s.length<=n?s:t<0?s.slice(s.length-n):s.slice(0,n),this.done=!this.value,this}next(e=0){return e<0?e=Math.max(e,this.from-this.pos):e>0&&(e=Math.min(e,this.to-this.pos)),this.nextInner(e,this.cursor.dir)}get lineBreak(){return this.cursor.lineBreak&&this.value!=""}}class cf{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:n,value:s}=this.inner.next(e);return t&&this.afterBreak?(this.value="",this.afterBreak=!1):t?(this.done=!0,this.value=""):n?this.afterBreak?this.value="":(this.afterBreak=!0,this.next()):(this.value=s,this.afterBreak=!1),this}get lineBreak(){return!1}}typeof Symbol<"u"&&(le.prototype[Symbol.iterator]=function(){return this.iter()},Hn.prototype[Symbol.iterator]=hf.prototype[Symbol.iterator]=cf.prototype[Symbol.iterator]=function(){return this});class y0{constructor(e,t,n,s){this.from=e,this.to=t,this.number=n,this.text=s}get length(){return this.to-this.from}}function dn(i,e,t){return e=Math.max(0,Math.min(i.length,e)),[e,Math.max(e,Math.min(i.length,t))]}function Ae(i,e,t=!0,n=!0){return g0(i,e,t,n)}function b0(i){return i>=56320&&i<57344}function x0(i){return i>=55296&&i<56320}function O0(i,e){let t=i.charCodeAt(e);if(!x0(t)||e+1==i.length)return t;let n=i.charCodeAt(e+1);return b0(n)?(t-55296<<10)+(n-56320)+65536:t}function v0(i){return i<65536?1:2}const Io=/\r\n?|\n/;var rt=(function(i){return i[i.Simple=0]="Simple",i[i.TrackDel=1]="TrackDel",i[i.TrackBefore=2]="TrackBefore",i[i.TrackAfter=3]="TrackAfter",i})(rt||(rt={}));class Bt{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;t<this.sections.length;t+=2)e+=this.sections[t];return e}get newLength(){let e=0;for(let t=0;t<this.sections.length;t+=2){let n=this.sections[t+1];e+=n<0?this.sections[t]:n}return e}get empty(){return this.sections.length==0||this.sections.length==2&&this.sections[1]<0}iterGaps(e){for(let t=0,n=0,s=0;t<this.sections.length;){let r=this.sections[t++],o=this.sections[t++];o<0?(e(n,s,r),s+=r):s+=o,n+=r}}iterChangedRanges(e,t=!1){Fo(this,e,t)}get invertedDesc(){let e=[];for(let t=0;t<this.sections.length;){let n=this.sections[t++],s=this.sections[t++];s<0?e.push(n,s):e.push(s,n)}return new Bt(e)}composeDesc(e){return this.empty?e:e.empty?this:uf(this,e)}mapDesc(e,t=!1){return e.empty?this:Zo(this,e,t)}mapPos(e,t=-1,n=rt.Simple){let s=0,r=0;for(let o=0;o<this.sections.length;){let l=this.sections[o++],a=this.sections[o++],h=s+l;if(a<0){if(h>e)return r+(e-s);r+=l}else{if(n!=rt.Simple&&h>=e&&(n==rt.TrackDel&&s<e&&h>e||n==rt.TrackBefore&&s<e||n==rt.TrackAfter&&h>e))return null;if(h>e||h==e&&t<0&&!l)return e==s||t<0?r:r+a;r+=a}s=h}if(e>s)throw new RangeError(`Position ${e} is out of range for changeset of length ${s}`);return r}touchesRange(e,t=e){for(let n=0,s=0;n<this.sections.length&&s<=t;){let r=this.sections[n++],o=this.sections[n++],l=s+r;if(o>=0&&s<=t&&l>=e)return s<e&&l>t?"cover":!0;s=l}return!1}toString(){let e="";for(let t=0;t<this.sections.length;){let n=this.sections[t++],s=this.sections[t++];e+=(e?" ":"")+n+(s>=0?":"+s:"")}return e}toJSON(){return this.sections}static fromJSON(e){if(!Array.isArray(e)||e.length%2||e.some(t=>typeof t!="number"))throw new RangeError("Invalid JSON representation of ChangeDesc");return new Bt(e)}static create(e){return new Bt(e)}}class Pe extends Bt{constructor(e,t){super(e),this.inserted=t}apply(e){if(this.length!=e.length)throw new RangeError("Applying change set to a document with the wrong length");return Fo(this,(t,n,s,r,o)=>e=e.replace(s,s+(n-t),o),!1),e}mapDesc(e,t=!1){return Zo(this,e,t,!0)}invert(e){let t=this.sections.slice(),n=[];for(let s=0,r=0;s<t.length;s+=2){let o=t[s],l=t[s+1];if(l>=0){t[s]=l,t[s+1]=o;let a=s>>1;for(;n.length<a;)n.push(le.empty);n.push(o?e.slice(r,r+o):le.empty)}r+=o}return new Pe(t,n)}compose(e){return this.empty?e:e.empty?this:uf(this,e,!0)}map(e,t=!1){return e.empty?this:Zo(this,e,t,!0)}iterChanges(e,t=!1){Fo(this,e,t)}get desc(){return Bt.create(this.sections)}filter(e){let t=[],n=[],s=[],r=new Mn(this);e:for(let o=0,l=0;;){let a=o==e.length?1e9:e[o++];for(;l<a||l==a&&r.len==0;){if(r.done)break e;let c=Math.min(r.len,a-l);Qe(s,c,-1);let u=r.ins==-1?-1:r.off==0?r.ins:0;Qe(t,c,u),u>0&&di(n,t,r.text),r.forward(c),l+=c}let h=e[o++];for(;l<h;){if(r.done)break e;let c=Math.min(r.len,h-l);Qe(t,c,-1),Qe(s,c,r.ins==-1?-1:r.off==0?r.ins:0),r.forward(c),l+=c}}return{changes:new Pe(t,n),filtered:Bt.create(s)}}toJSON(){let e=[];for(let t=0;t<this.sections.length;t+=2){let n=this.sections[t],s=this.sections[t+1];s<0?e.push(n):s==0?e.push([n]):e.push([n].concat(this.inserted[t>>1].toJSON()))}return e}static of(e,t,n){let s=[],r=[],o=0,l=null;function a(c=!1){if(!c&&!s.length)return;o<t&&Qe(s,t-o,-1);let u=new Pe(s,r);l=l?l.compose(u.map(l)):u,s=[],r=[],o=0}function h(c){if(Array.isArray(c))for(let u of c)h(u);else if(c instanceof Pe){if(c.length!=t)throw new RangeError(`Mismatched change set length (got ${c.length}, expected ${t})`);a(),l=l?l.compose(c.map(l)):c}else{let{from:u,to:f=u,insert:d}=c;if(u>f||u<0||f>t)throw new RangeError(`Invalid change range ${u} to ${f} (in doc of length ${t})`);let m=d?typeof d=="string"?le.of(d.split(n||Io)):d:le.empty,$=m.length;if(u==f&&$==0)return;u<o&&a(),u>o&&Qe(s,u-o,-1),Qe(s,f-u,$),di(r,s,m),o=f}}return h(e),a(!l),l}static empty(e){return new Pe(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],n=[];for(let s=0;s<e.length;s++){let r=e[s];if(typeof r=="number")t.push(r,-1);else{if(!Array.isArray(r)||typeof r[0]!="number"||r.some((o,l)=>l&&typeof o!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(r.length==1)t.push(r[0],0);else{for(;n.length<s;)n.push(le.empty);n[s]=le.of(r.slice(1)),t.push(r[0],n[s].length)}}}return new Pe(t,n)}static createSet(e,t){return new Pe(e,t)}}function Qe(i,e,t,n=!1){if(e==0&&t<=0)return;let s=i.length-2;s>=0&&t<=0&&t==i[s+1]?i[s]+=e:s>=0&&e==0&&i[s]==0?i[s+1]+=t:n?(i[s]+=e,i[s+1]+=t):i.push(e,t)}function di(i,e,t){if(t.length==0)return;let n=e.length-2>>1;if(n<i.length)i[i.length-1]=i[i.length-1].append(t);else{for(;i.length<n;)i.push(le.empty);i.push(t)}}function Fo(i,e,t){let n=i.inserted;for(let s=0,r=0,o=0;o<i.sections.length;){let l=i.sections[o++],a=i.sections[o++];if(a<0)s+=l,r+=l;else{let h=s,c=r,u=le.empty;for(;h+=l,c+=a,a&&n&&(u=u.append(n[o-2>>1])),!(t||o==i.sections.length||i.sections[o+1]<0);)l=i.sections[o++],a=i.sections[o++];e(s,h,r,c,u),s=h,r=c}}}function Zo(i,e,t,n=!1){let s=[],r=n?[]:null,o=new Mn(i),l=new Mn(e);for(let a=-1;;){if(o.done&&l.len||l.done&&o.len)throw new Error("Mismatched change set lengths");if(o.ins==-1&&l.ins==-1){let h=Math.min(o.len,l.len);Qe(s,h,-1),o.forward(h),l.forward(h)}else if(l.ins>=0&&(o.ins<0||a==o.i||o.off==0&&(l.len<o.len||l.len==o.len&&!t))){let h=l.len;for(Qe(s,l.ins,-1);h;){let c=Math.min(o.len,h);o.ins>=0&&a<o.i&&o.len<=c&&(Qe(s,0,o.ins),r&&di(r,s,o.text),a=o.i),o.forward(c),h-=c}l.next()}else if(o.ins>=0){let h=0,c=o.len;for(;c;)if(l.ins==-1){let u=Math.min(c,l.len);h+=u,c-=u,l.forward(u)}else if(l.ins==0&&l.len<c)c-=l.len,l.next();else break;Qe(s,h,a<o.i?o.ins:0),r&&a<o.i&&di(r,s,o.text),a=o.i,o.forward(o.len-c)}else{if(o.done&&l.done)return r?Pe.createSet(s,r):Bt.create(s);throw new Error("Mismatched change set lengths")}}}function uf(i,e,t=!1){let n=[],s=t?[]:null,r=new Mn(i),o=new Mn(e);for(let l=!1;;){if(r.done&&o.done)return s?Pe.createSet(n,s):Bt.create(n);if(r.ins==0)Qe(n,r.len,0,l),r.next();else if(o.len==0&&!o.done)Qe(n,0,o.ins,l),s&&di(s,n,o.text),o.next();else{if(r.done||o.done)throw new Error("Mismatched change set lengths");{let a=Math.min(r.len2,o.len),h=n.length;if(r.ins==-1){let c=o.ins==-1?-1:o.off?0:o.ins;Qe(n,a,c,l),s&&c&&di(s,n,o.text)}else o.ins==-1?(Qe(n,r.off?0:r.len,a,l),s&&di(s,n,r.textBit(a))):(Qe(n,r.off?0:r.len,o.off?0:o.ins,l),s&&!o.off&&di(s,n,o.text));l=(r.ins>a||o.ins>=0&&o.len>a)&&(l||n.length>h),r.forward2(a),o.forward(a)}}}}class Mn{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i<e.length?(this.len=e[this.i++],this.ins=e[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:e}=this.set,t=this.i-2>>1;return t>=e.length?le.empty:e[t]}textBit(e){let{inserted:t}=this.set,n=this.i-2>>1;return n>=t.length&&!e?le.empty:t[n].slice(this.off,e==null?void 0:this.off+e)}forward(e){e==this.len?this.next():(this.len-=e,this.off+=e)}forward2(e){this.ins==-1?this.forward(e):e==this.ins?this.next():(this.ins-=e,this.off+=e)}}class ci{constructor(e,t,n,s){this.from=e,this.to=t,this.flags=n,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 e=this.flags&7;return e==7?null:e}map(e,t=-1){let n,s;return this.empty?n=s=e.mapPos(this.from,t):(n=e.mapPos(this.from,1),s=e.mapPos(this.to,-1)),n==this.from&&s==this.to?this:new ci(n,s,this.flags,this.goalColumn)}extend(e,t=e,n=0){if(e<=this.anchor&&t>=this.anchor)return Y.range(e,t,void 0,void 0,n);let s=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return Y.range(this.anchor,s,void 0,void 0,n)}eq(e,t=!1){return this.anchor==e.anchor&&this.head==e.head&&this.goalColumn==e.goalColumn&&(!t||!this.empty||this.assoc==e.assoc)}toJSON(){return{anchor:this.anchor,head:this.head}}static fromJSON(e){if(!e||typeof e.anchor!="number"||typeof e.head!="number")throw new RangeError("Invalid JSON representation for SelectionRange");return Y.range(e.anchor,e.head)}static create(e,t,n,s){return new ci(e,t,n,s)}}class Y{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:Y.create(this.ranges.map(n=>n.map(e,t)),this.mainIndex)}eq(e,t=!1){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let n=0;n<this.ranges.length;n++)if(!this.ranges[n].eq(e.ranges[n],t))return!1;return!0}get main(){return this.ranges[this.mainIndex]}asSingle(){return this.ranges.length==1?this:new Y([this.main],0)}addRange(e,t=!0){return Y.create([e].concat(this.ranges),t?0:this.mainIndex+1)}replaceRange(e,t=this.mainIndex){let n=this.ranges.slice();return n[t]=e,Y.create(n,this.mainIndex)}toJSON(){return{ranges:this.ranges.map(e=>e.toJSON()),main:this.mainIndex}}static fromJSON(e){if(!e||!Array.isArray(e.ranges)||typeof e.main!="number"||e.main>=e.ranges.length)throw new RangeError("Invalid JSON representation for EditorSelection");return new Y(e.ranges.map(t=>ci.fromJSON(t)),e.main)}static single(e,t=e){return new Y([Y.range(e,t)],0)}static create(e,t=0){if(e.length==0)throw new RangeError("A selection needs at least one range");for(let n=0,s=0;s<e.length;s++){let r=e[s];if(r.empty?r.from<=n:r.from<n)return Y.normalized(e.slice(),t);n=r.to}return new Y(e,t)}static cursor(e,t=0,n,s){return ci.create(e,e,(t==0?0:t<0?8:16)|(n==null?7:Math.min(6,n)),s)}static range(e,t,n,s,r){let o=s==null?7:Math.min(6,s);return!r&&e!=t&&(r=t<e?1:-1),r&&(o|=r<0?8:16),t<e?ci.create(t,e,o|32,n):ci.create(e,t,o,n)}static undirectionalRange(e,t){return ci.create(e,t,64,void 0)}static normalized(e,t=0){let n=e[t];e.sort((s,r)=>s.from-r.from),t=e.indexOf(n);for(let s=1;s<e.length;s++){let r=e[s],o=e[s-1];if(r.empty?r.from<=o.to:r.from<o.to){let l=o.from,a=Math.max(r.to,o.to);s<=t&&t--,e.splice(--s,2,r.anchor>r.head?Y.range(a,l):Y.range(l,a))}}return new Y(e,t)}}function ff(i,e){for(let t of i.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}let Fl=0;class I{constructor(e,t,n,s,r){this.combine=e,this.compareInput=t,this.compare=n,this.isStatic=s,this.id=Fl++,this.default=e([]),this.extensions=typeof r=="function"?r(this):r}get reader(){return this}static define(e={}){return new I(e.combine||(t=>t),e.compareInput||((t,n)=>t===n),e.compare||(e.combine?(t,n)=>t===n:Zl),!!e.static,e.enables)}of(e){return new As([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new As(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new As(e,this,2,t)}from(e,t){return t||(t=n=>n),this.compute([e],n=>t(n.field(e)))}}function Zl(i,e){return i==e||i.length==e.length&&i.every((t,n)=>t===e[n])}class As{constructor(e,t,n,s){this.dependencies=e,this.facet=t,this.type=n,this.value=s,this.id=Fl++}dynamicSlot(e){var t;let n=this.value,s=this.facet.compareInput,r=this.id,o=e[r]>>1,l=this.type==2,a=!1,h=!1,c=[];for(let u of this.dependencies)u=="doc"?a=!0:u=="selection"?h=!0:(((t=e[u.id])!==null&&t!==void 0?t:1)&1)==0&&c.push(e[u.id]);return{create(u){return u.values[o]=n(u),1},update(u,f){if(a&&f.docChanged||h&&(f.docChanged||f.selection)||qo(u,c)){let d=n(u);if(l?!rh(d,u.values[o],s):!s(d,u.values[o]))return u.values[o]=d,1}return 0},reconfigure:(u,f)=>{let d,m=f.config.address[r];if(m!=null){let $=qs(f,m);if(this.dependencies.every(w=>w instanceof I?f.facet(w)===u.facet(w):w instanceof si?f.field(w,!1)==u.field(w,!1):!0)||(l?rh(d=n(u),$,s):s(d=n(u),$)))return u.values[o]=$,0}else d=n(u);return u.values[o]=d,1}}}get extension(){return this}}function rh(i,e,t){if(i.length!=e.length)return!1;for(let n=0;n<i.length;n++)if(!t(i[n],e[n]))return!1;return!0}function qo(i,e){let t=!1;for(let n of e)Yn(i,n)&1&&(t=!0);return t}function k0(i,e,t){let n=t.map(a=>i[a.id]),s=t.map(a=>a.type),r=n.filter(a=>!(a&1)),o=i[e.id]>>1;function l(a){let h=[];for(let c=0;c<n.length;c++){let u=qs(a,n[c]);if(s[c]==2)for(let f of u)h.push(f);else h.push(u)}return e.combine(h)}return{create(a){for(let h of n)Yn(a,h);return a.values[o]=l(a),1},update(a,h){if(!qo(a,r))return 0;let c=l(a);return e.compare(c,a.values[o])?0:(a.values[o]=c,1)},reconfigure(a,h){let c=qo(a,n),u=h.config.facets[e.id],f=h.facet(e);if(u&&!c&&Zl(t,u))return a.values[o]=f,0;let d=l(a);return e.compare(d,f)?(a.values[o]=f,0):(a.values[o]=d,1)}}}const ws=I.define({static:!0});class si{constructor(e,t,n,s,r){this.id=e,this.createF=t,this.updateF=n,this.compareF=s,this.spec=r,this.provides=void 0}static define(e){let t=new si(Fl++,e.create,e.update,e.compare||((n,s)=>n===s),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(ws).find(n=>n.field==this);return((t==null?void 0:t.create)||this.createF)(e)}slot(e){let t=e[this.id]>>1;return{create:n=>(n.values[t]=this.create(n),1),update:(n,s)=>{let r=n.values[t],o=this.updateF(r,s);return this.compareF(r,o)?0:(n.values[t]=o,1)},reconfigure:(n,s)=>{let r=n.facet(ws),o=s.facet(ws),l;return(l=r.find(a=>a.field==this))&&l!=o.find(a=>a.field==this)?(n.values[t]=l.create(n),1):s.config.address[this.id]!=null?(n.values[t]=s.field(this),0):(n.values[t]=this.create(n),1)}}}init(e){return[this,ws.of({field:this,create:e})]}get extension(){return this}}const Ri={lowest:4,low:3,default:2,high:1,highest:0};function En(i){return e=>new df(e,i)}const ql={highest:En(Ri.highest),high:En(Ri.high),default:En(Ri.default),low:En(Ri.low),lowest:En(Ri.lowest)};class df{constructor(e,t){this.inner=e,this.prec=t}get extension(){return this}}class br{of(e){return new Uo(this,e)}reconfigure(e){return br.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}}class Uo{constructor(e,t){this.compartment=e,this.inner=t}get extension(){return this}}class Zs{constructor(e,t,n,s,r,o){for(this.base=e,this.compartments=t,this.dynamicSlots=n,this.address=s,this.staticValues=r,this.facets=o,this.statusTemplate=[];this.statusTemplate.length<n.length;)this.statusTemplate.push(0)}staticFacet(e){let t=this.address[e.id];return t==null?e.default:this.staticValues[t>>1]}static resolve(e,t,n){let s=[],r=Object.create(null),o=new Map;for(let f of S0(e,t,o))f instanceof si?s.push(f):(r[f.facet.id]||(r[f.facet.id]=[])).push(f);let l=Object.create(null),a=[],h=[];for(let f of s)l[f.id]=h.length<<1,h.push(d=>f.slot(d));let c=n==null?void 0:n.config.facets;for(let f in r){let d=r[f],m=d[0].facet,$=c&&c[f]||[];if(d.every(w=>w.type==0))if(l[m.id]=a.length<<1|1,Zl($,d))a.push(n.facet(m));else{let w=m.combine(d.map(y=>y.value));a.push(n&&m.compare(w,n.facet(m))?n.facet(m):w)}else{for(let w of d)w.type==0?(l[w.id]=a.length<<1|1,a.push(w.value)):(l[w.id]=h.length<<1,h.push(y=>w.dynamicSlot(y)));l[m.id]=h.length<<1,h.push(w=>k0(w,m,d))}}let u=h.map(f=>f(l));return new Zs(e,o,u,l,a,r)}}function S0(i,e,t){let n=[[],[],[],[],[]],s=new Map;function r(o,l){let a=s.get(o);if(a!=null){if(a<=l)return;let h=n[a].indexOf(o);h>-1&&n[a].splice(h,1),o instanceof Uo&&t.delete(o.compartment)}if(s.set(o,l),Array.isArray(o))for(let h of o)r(h,l);else if(o instanceof Uo){if(t.has(o.compartment))throw new RangeError("Duplicate use of compartment in extensions");let h=e.get(o.compartment)||o.inner;t.set(o.compartment,h),r(h,l)}else if(o instanceof df)r(o.inner,o.prec);else if(o instanceof si)n[l].push(o),o.provides&&r(o.provides,l);else if(o instanceof As)n[l].push(o),o.facet.extensions&&r(o.facet.extensions,Ri.default);else{let h=o.extension;if(!h)throw new Error(`Unrecognized extension value in extension set (${o}).`);if(h==o)throw new Error(`Unrecognized extension value in extension set (${o}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);r(h,l)}}return r(i,Ri.default),n.reduce((o,l)=>o.concat(l))}function Yn(i,e){if(e&1)return 2;let t=e>>1,n=i.status[t];if(n==4)throw new Error("Cyclic dependency between fields and/or facets");if(n&2)return n;i.status[t]=4;let s=i.computeSlot(i,i.config.dynamicSlots[t]);return i.status[t]=2|s}function qs(i,e){return e&1?i.config.staticValues[e>>1]:i.values[e>>1]}const pf=I.define(),Xo=I.define({combine:i=>i.some(e=>e),static:!0}),mf=I.define({combine:i=>i.length?i[0]:void 0,static:!0}),gf=I.define(),$f=I.define(),wf=I.define(),yf=I.define({combine:i=>i.length?i[0]:!1});class xi{constructor(e,t){this.type=e,this.value=t}static define(){return new C0}}class C0{of(e){return new xi(this,e)}}class E0{constructor(e){this.map=e}of(e){return new Se(this,e)}}class Se{constructor(e,t){this.type=e,this.value=t}map(e){let t=this.type.map(this.value,e);return t===void 0?void 0:t==this.value?this:new Se(this.type,t)}is(e){return this.type==e}static define(e={}){return new E0(e.map||(t=>t))}static mapEffects(e,t){if(!e.length)return e;let n=[];for(let s of e){let r=s.map(t);r&&n.push(r)}return n}}Se.reconfigure=Se.define();Se.appendConfig=Se.define();class Te{constructor(e,t,n,s,r,o){this.startState=e,this.changes=t,this.selection=n,this.effects=s,this.annotations=r,this.scrollIntoView=o,this._doc=null,this._state=null,n&&ff(n,t.newLength),r.some(l=>l.type==Te.time)||(this.annotations=r.concat(Te.time.of(Date.now())))}static create(e,t,n,s,r,o){return new Te(e,t,n,s,r,o)}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(e){for(let t of this.annotations)if(t.type==e)return t.value}get docChanged(){return!this.changes.empty}get reconfigured(){return this.startState.config!=this.state.config}isUserEvent(e){let t=this.annotation(Te.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}}Te.time=xi.define();Te.userEvent=xi.define();Te.addToHistory=xi.define();Te.remote=xi.define();function D0(i,e){let t=[];for(let n=0,s=0;;){let r,o;if(n<i.length&&(s==e.length||e[s]>=i[n]))r=i[n++],o=i[n++];else if(s<e.length)r=e[s++],o=e[s++];else return t;!t.length||t[t.length-1]<r?t.push(r,o):t[t.length-1]<o&&(t[t.length-1]=o)}}function bf(i,e,t){var n;let s,r,o;return t?(s=e.changes,r=Pe.empty(e.changes.length),o=i.changes.compose(e.changes)):(s=e.changes.map(i.changes),r=i.changes.mapDesc(e.changes,!0),o=i.changes.compose(s)),{changes:o,selection:e.selection?e.selection.map(r):(n=i.selection)===null||n===void 0?void 0:n.map(s),effects:Se.mapEffects(i.effects,s).concat(Se.mapEffects(e.effects,r)),annotations:i.annotations.length?i.annotations.concat(e.annotations):e.annotations,scrollIntoView:i.scrollIntoView||e.scrollIntoView}}function Vo(i,e,t){let n=e.selection,s=rn(e.annotations);return e.userEvent&&(s=s.concat(Te.userEvent.of(e.userEvent))),{changes:e.changes instanceof Pe?e.changes:Pe.of(e.changes||[],t,i.facet(mf)),selection:n&&(n instanceof Y?n:Y.single(n.anchor,n.head)),effects:rn(e.effects),annotations:s,scrollIntoView:!!e.scrollIntoView}}function xf(i,e,t){let n=Vo(i,e.length?e[0]:{},i.doc.length);e.length&&e[0].filter===!1&&(t=!1);for(let r=1;r<e.length;r++){e[r].filter===!1&&(t=!1);let o=!!e[r].sequential;n=bf(n,Vo(i,e[r],o?n.changes.newLength:i.doc.length),o)}let s=Te.create(i,n.changes,n.selection,n.effects,n.annotations,n.scrollIntoView);return R0(t?j0(s):s)}function j0(i){let e=i.startState,t=!0;for(let s of e.facet(gf)){let r=s(i);if(r===!1){t=!1;break}Array.isArray(r)&&(t=t===!0?r:D0(t,r))}if(t!==!0){let s,r;if(t===!1)r=i.changes.invertedDesc,s=Pe.empty(e.doc.length);else{let o=i.changes.filter(t);s=o.changes,r=o.filtered.mapDesc(o.changes).invertedDesc}i=Te.create(e,s,i.selection&&i.selection.map(r),Se.mapEffects(i.effects,r),i.annotations,i.scrollIntoView)}let n=e.facet($f);for(let s=n.length-1;s>=0;s--){let r=n[s](i);r instanceof Te?i=r:Array.isArray(r)&&r.length==1&&r[0]instanceof Te?i=r[0]:i=xf(e,rn(r),!1)}return i}function R0(i){let e=i.startState,t=e.facet(wf),n=i;for(let s=t.length-1;s>=0;s--){let r=t[s](i);r&&Object.keys(r).length&&(n=bf(n,Vo(e,r,i.changes.newLength),!0))}return n==i?i:Te.create(e,i.changes,i.selection,n.effects,n.annotations,n.scrollIntoView)}const N0=[];function rn(i){return i==null?N0:Array.isArray(i)?i:[i]}var Ut=(function(i){return i[i.Word=0]="Word",i[i.Space=1]="Space",i[i.Other=2]="Other",i})(Ut||(Ut={}));const P0=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/;let Ko;try{Ko=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function T0(i){if(Ko)return Ko.test(i);for(let e=0;e<i.length;e++){let t=i[e];if(/\w/.test(t)||t>""&&(t.toUpperCase()!=t.toLowerCase()||P0.test(t)))return!0}return!1}function H0(i){return e=>{if(!/\S/.test(e))return Ut.Space;if(T0(e))return Ut.Word;for(let t=0;t<i.length;t++)if(e.indexOf(i[t])>-1)return Ut.Word;return Ut.Other}}class ce{constructor(e,t,n,s,r,o){this.config=e,this.doc=t,this.selection=n,this.values=s,this.status=e.statusTemplate.slice(),this.computeSlot=r,o&&(o._state=this);for(let l=0;l<this.config.dynamicSlots.length;l++)Yn(this,l<<1);this.computeSlot=null}field(e,t=!0){let n=this.config.address[e.id];if(n==null){if(t)throw new RangeError("Field is not present in this state");return}return Yn(this,n),qs(this,n)}update(...e){return xf(this,e,!0)}applyTransaction(e){let t=this.config,{base:n,compartments:s}=t;for(let l of e.effects)l.is(br.reconfigure)?(t&&(s=new Map,t.compartments.forEach((a,h)=>s.set(h,a)),t=null),s.set(l.value.compartment,l.value.extension)):l.is(Se.reconfigure)?(t=null,n=l.value):l.is(Se.appendConfig)&&(t=null,n=rn(n).concat(l.value));let r;t?r=e.startState.values.slice():(t=Zs.resolve(n,s,this),r=new ce(t,this.doc,this.selection,t.dynamicSlots.map(()=>null),(a,h)=>h.reconfigure(a,this),null).values);let o=e.startState.facet(Xo)?e.newSelection:e.newSelection.asSingle();new ce(t,e.newDoc,o,r,(l,a)=>a.update(l,e),e)}replaceSelection(e){return typeof e=="string"&&(e=this.toText(e)),this.changeByRange(t=>({changes:{from:t.from,to:t.to,insert:e},range:Y.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,n=e(t.ranges[0]),s=this.changes(n.changes),r=[n.range],o=rn(n.effects);for(let l=1;l<t.ranges.length;l++){let a=e(t.ranges[l]),h=this.changes(a.changes),c=h.map(s);for(let f=0;f<l;f++)r[f]=r[f].map(c);let u=s.mapDesc(h,!0);r.push(a.range.map(u)),s=s.compose(c),o=Se.mapEffects(o,c).concat(Se.mapEffects(rn(a.effects),u))}return{changes:s,selection:Y.create(r,t.mainIndex),effects:o}}changes(e=[]){return e instanceof Pe?e:Pe.of(e,this.doc.length,this.facet(ce.lineSeparator))}toText(e){return le.of(e.split(this.facet(ce.lineSeparator)||Io))}sliceDoc(e=0,t=this.doc.length){return this.doc.sliceString(e,t,this.lineBreak)}facet(e){let t=this.config.address[e.id];return t==null?e.default:(Yn(this,t),qs(this,t))}toJSON(e){let t={doc:this.sliceDoc(),selection:this.selection.toJSON()};if(e)for(let n in e){let s=e[n];s instanceof si&&this.config.address[s.id]!=null&&(t[n]=s.spec.toJSON(this.field(e[n]),this))}return t}static fromJSON(e,t={},n){if(!e||typeof e.doc!="string")throw new RangeError("Invalid JSON representation for EditorState");let s=[];if(n){for(let r in n)if(Object.prototype.hasOwnProperty.call(e,r)){let o=n[r],l=e[r];s.push(o.init(a=>o.spec.fromJSON(l,a)))}}return ce.create({doc:e.doc,selection:Y.fromJSON(e.selection),extensions:t.extensions?s.concat([t.extensions]):s})}static create(e={}){let t=Zs.resolve(e.extensions||[],new Map),n=e.doc instanceof le?e.doc:le.of((e.doc||"").split(t.staticFacet(ce.lineSeparator)||Io)),s=e.selection?e.selection instanceof Y?e.selection:Y.single(e.selection.anchor,e.selection.head):Y.single(0);return ff(s,n.length),t.staticFacet(Xo)||(s=s.asSingle()),new ce(t,n,s,t.dynamicSlots.map(()=>null),(r,o)=>o.create(r),null)}get tabSize(){return this.facet(ce.tabSize)}get lineBreak(){return this.facet(ce.lineSeparator)||`
|
|
51
|
+
`}get readOnly(){return this.facet(yf)}phrase(e,...t){for(let n of this.facet(ce.phrases))if(Object.prototype.hasOwnProperty.call(n,e)){e=n[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(n,s)=>{if(s=="$")return"$";let r=+(s||1);return!r||r>t.length?n:t[r-1]})),e}languageDataAt(e,t,n=-1){let s=[];for(let r of this.facet(pf))for(let o of r(this,t,n))Object.prototype.hasOwnProperty.call(o,e)&&s.push(o[e]);return s}charCategorizer(e){let t=this.languageDataAt("wordChars",e);return H0(t.length?t[0]:"")}wordAt(e){let{text:t,from:n,length:s}=this.doc.lineAt(e),r=this.charCategorizer(e),o=e-n,l=e-n;for(;o>0;){let a=Ae(t,o,!1);if(r(t.slice(a,o))!=Ut.Word)break;o=a}for(;l<s;){let a=Ae(t,l);if(r(t.slice(l,a))!=Ut.Word)break;l=a}return o==l?null:Y.range(o+n,l+n)}}ce.allowMultipleSelections=Xo;ce.tabSize=I.define({combine:i=>i.length?i[0]:4});ce.lineSeparator=mf;ce.readOnly=yf;ce.phrases=I.define({compare(i,e){let t=Object.keys(i),n=Object.keys(e);return t.length==n.length&&t.every(s=>i[s]==e[s])}});ce.languageData=pf;ce.changeFilter=gf;ce.transactionFilter=$f;ce.transactionExtender=wf;br.reconfigure=Se.define();function Of(i,e,t={}){let n={};for(let s of i)for(let r of Object.keys(s)){let o=s[r],l=n[r];if(l===void 0)n[r]=o;else if(!(l===o||o===void 0))if(Object.hasOwnProperty.call(t,r))n[r]=t[r](l,o);else throw new Error("Config merge conflict for field "+r)}for(let s in e)n[s]===void 0&&(n[s]=e[s]);return n}class zi{eq(e){return this==e}range(e,t=e){return Jo.create(e,t,this)}}zi.prototype.startSide=zi.prototype.endSide=0;zi.prototype.point=!1;zi.prototype.mapMode=rt.TrackDel;function Ul(i,e){return i==e||i.constructor==e.constructor&&i.eq(e)}let Jo=class vf{constructor(e,t,n){this.from=e,this.to=t,this.value=n}static create(e,t,n){return new vf(e,t,n)}};function el(i,e){return i.from-e.from||i.value.startSide-e.value.startSide}class Xl{constructor(e,t,n,s){this.from=e,this.to=t,this.value=n,this.maxPoint=s}get length(){return this.to[this.to.length-1]}findIndex(e,t,n,s=0){let r=n?this.to:this.from;for(let o=s,l=r.length;;){if(o==l)return o;let a=o+l>>1,h=r[a]-e||(n?this.value[a].endSide:this.value[a].startSide)-t;if(a==o)return h>=0?o:l;h>=0?l=a:o=a+1}}between(e,t,n,s){for(let r=this.findIndex(t,-1e9,!0),o=this.findIndex(n,1e9,!1,r);r<o;r++)if(s(this.from[r]+e,this.to[r]+e,this.value[r])===!1)return!1}map(e,t){let n=[],s=[],r=[],o=-1,l=-1;for(let a=0;a<this.value.length;a++){let h=this.value[a],c=this.from[a]+e,u=this.to[a]+e,f,d;if(c==u){let m=t.mapPos(c,h.startSide,h.mapMode);if(m==null||(f=d=m,h.startSide!=h.endSide&&(d=t.mapPos(c,h.endSide),d<f)))continue}else if(f=t.mapPos(c,h.startSide),d=t.mapPos(u,h.endSide),f>d||f==d&&h.startSide>0&&h.endSide<=0)continue;(d-f||h.endSide-h.startSide)<0||(o<0&&(o=f),h.point&&(l=Math.max(l,d-f)),n.push(h),s.push(f-o),r.push(d-o))}return{mapped:n.length?new Xl(s,r,n,l):null,pos:o}}}class re{constructor(e,t,n,s){this.chunkPos=e,this.chunk=t,this.nextLayer=n,this.maxPoint=s}static create(e,t,n,s){return new re(e,t,n,s)}get length(){let e=this.chunk.length-1;return e<0?0:Math.max(this.chunkEnd(e),this.nextLayer.length)}get size(){if(this.isEmpty)return 0;let e=this.nextLayer.size;for(let t of this.chunk)e+=t.value.length;return e}chunkEnd(e){return this.chunkPos[e]+this.chunk[e].length}update(e){let{add:t=[],sort:n=!1,filterFrom:s=0,filterTo:r=this.length}=e,o=e.filter;if(t.length==0&&!o)return this;if(n&&(t=t.slice().sort(el)),this.isEmpty)return t.length?re.of(t):this;let l=new kf(this,null,-1).goto(0),a=0,h=[],c=new Ln;for(;l.value||a<t.length;)if(a<t.length&&(l.from-t[a].from||l.startSide-t[a].value.startSide)>=0){let u=t[a++];c.addInner(u.from,u.to,u.value)||h.push(u)}else l.rangeIndex==1&&l.chunkIndex<this.chunk.length&&(a==t.length||this.chunkEnd(l.chunkIndex)<t[a].from)&&(!o||s>this.chunkEnd(l.chunkIndex)||r<this.chunkPos[l.chunkIndex])&&c.addChunk(this.chunkPos[l.chunkIndex],this.chunk[l.chunkIndex])?l.nextChunk():((!o||s>l.to||r<l.from||o(l.from,l.to,l.value))&&(c.addInner(l.from,l.to,l.value)||h.push(Jo.create(l.from,l.to,l.value))),l.next());return c.finishInner(this.nextLayer.isEmpty&&!h.length?re.empty:this.nextLayer.update({add:h,filter:o,filterFrom:s,filterTo:r}))}map(e){if(e.empty||this.isEmpty)return this;let t=[],n=[],s=-1;for(let o=0;o<this.chunk.length;o++){let l=this.chunkPos[o],a=this.chunk[o],h=e.touchesRange(l,l+a.length);if(h===!1)s=Math.max(s,a.maxPoint),t.push(a),n.push(e.mapPos(l));else if(h===!0){let{mapped:c,pos:u}=a.map(l,e);c&&(s=Math.max(s,c.maxPoint),t.push(c),n.push(u))}}let r=this.nextLayer.map(e);return t.length==0?r:new re(n,t,r||re.empty,s)}between(e,t,n){if(!this.isEmpty){for(let s=0;s<this.chunk.length;s++){let r=this.chunkPos[s],o=this.chunk[s];if(t>=r&&e<=r+o.length&&o.between(r,e-r,t-r,n)===!1)return}this.nextLayer.between(e,t,n)}}iter(e=0){return _n.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return _n.from(e).goto(t)}static compare(e,t,n,s,r=-1){let o=e.filter(u=>u.maxPoint>0||!u.isEmpty&&u.maxPoint>=r),l=t.filter(u=>u.maxPoint>0||!u.isEmpty&&u.maxPoint>=r),a=oh(o,l,n),h=new Dn(o,a,r),c=new Dn(l,a,r);n.iterGaps((u,f,d)=>lh(h,u,c,f,d,s)),n.empty&&n.length==0&&lh(h,0,c,0,0,s)}static eq(e,t,n=0,s){s==null&&(s=999999999);let r=e.filter(c=>!c.isEmpty&&t.indexOf(c)<0),o=t.filter(c=>!c.isEmpty&&e.indexOf(c)<0);if(r.length!=o.length)return!1;if(!r.length)return!0;let l=oh(r,o),a=new Dn(r,l,0).goto(n),h=new Dn(o,l,0).goto(n);for(;;){if(a.to!=h.to||!tl(a.active,h.active)||a.point&&(!h.point||!Ul(a.point,h.point)))return!1;if(a.to>s)return!0;a.next(),h.next()}}static spans(e,t,n,s,r=-1){let o=new Dn(e,null,r).goto(t),l=t,a=o.openStart;for(;;){let h=Math.min(o.to,n);if(o.point){let c=o.activeForPoint(o.to),u=o.pointFrom<t?c.length+1:o.point.startSide<0?c.length:Math.min(c.length,a);s.point(l,h,o.point,c,u,o.pointRank),a=Math.min(o.openEnd(h),c.length)}else h>l&&(s.span(l,h,o.active,a),a=o.openEnd(h));if(o.to>n)return a+(o.point&&o.to>n?1:0);l=o.to,o.next()}}static of(e,t=!1){let n=new Ln;for(let s of e instanceof Jo?[e]:t?Y0(e):e)n.add(s.from,s.to,s.value);return n.finish()}static join(e){if(!e.length)return re.empty;let t=e[e.length-1];for(let n=e.length-2;n>=0;n--)for(let s=e[n];s!=re.empty;s=s.nextLayer)t=new re(s.chunkPos,s.chunk,t,Math.max(s.maxPoint,t.maxPoint));return t}}re.empty=new re([],[],null,-1);function Y0(i){if(i.length>1)for(let e=i[0],t=1;t<i.length;t++){let n=i[t];if(el(e,n)>0)return i.slice().sort(el);e=n}return i}re.empty.nextLayer=re.empty;class Ln{finishChunk(e){this.chunks.push(new Xl(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,e&&(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(e,t,n){this.addInner(e,t,n)||(this.nextLayer||(this.nextLayer=new Ln)).add(e,t,n)}addInner(e,t,n){let s=e-this.lastTo||n.startSide-this.last.endSide;if(s<=0&&(e-this.lastFrom||n.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=e),this.from.push(e-this.chunkStart),this.to.push(t-this.chunkStart),this.last=n,this.lastFrom=e,this.lastTo=t,this.value.push(n),n.point&&(this.maxPoint=Math.max(this.maxPoint,t-e)),!0)}addChunk(e,t){if((e-this.lastTo||t.value[0].startSide-this.last.endSide)<0)return!1;this.from.length&&this.finishChunk(!0),this.setMaxPoint=Math.max(this.setMaxPoint,t.maxPoint),this.chunks.push(t),this.chunkPos.push(e);let n=t.value.length-1;return this.last=t.value[n],this.lastFrom=t.from[n]+e,this.lastTo=t.to[n]+e,!0}finish(){return this.finishInner(re.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let t=re.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}}function oh(i,e,t){let n=new Map;for(let r of i)for(let o=0;o<r.chunk.length;o++)r.chunk[o].maxPoint<=0&&n.set(r.chunk[o],r.chunkPos[o]);let s=new Set;for(let r of e)for(let o=0;o<r.chunk.length;o++){let l=n.get(r.chunk[o]);l!=null&&(t?t.mapPos(l):l)==r.chunkPos[o]&&!(t!=null&&t.touchesRange(l,l+r.chunk[o].length))&&s.add(r.chunk[o])}return s}class kf{constructor(e,t,n,s=0){this.layer=e,this.skip=t,this.minPoint=n,this.rank=s}get startSide(){return this.value?this.value.startSide:0}get endSide(){return this.value?this.value.endSide:0}goto(e,t=-1e9){return this.chunkIndex=this.rangeIndex=0,this.gotoInner(e,t,!1),this}gotoInner(e,t,n){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)<e||s.maxPoint<this.minPoint))break;this.chunkIndex++,n=!1}if(this.chunkIndex<this.layer.chunk.length){let s=this.layer.chunk[this.chunkIndex].findIndex(e-this.layer.chunkPos[this.chunkIndex],t,!0);(!n||this.rangeIndex<s)&&this.setRangeIndex(s)}this.next()}forward(e,t){(this.to-e||this.endSide-t)<0&&this.gotoInner(e,t,!0)}next(){for(;;)if(this.chunkIndex==this.layer.chunk.length){this.from=this.to=1e9,this.value=null;break}else{let e=this.layer.chunkPos[this.chunkIndex],t=this.layer.chunk[this.chunkIndex],n=e+t.from[this.rangeIndex];if(this.from=n,this.to=e+t.to[this.rangeIndex],this.value=t.value[this.rangeIndex],this.setRangeIndex(this.rangeIndex+1),this.minPoint<0||this.value.point&&this.to-this.from>=this.minPoint)break}}setRangeIndex(e){if(e==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=e}nextChunk(){this.chunkIndex++,this.rangeIndex=0,this.next()}compare(e){return this.from-e.from||this.startSide-e.startSide||this.rank-e.rank||this.to-e.to||this.endSide-e.endSide}}class _n{constructor(e){this.heap=e}static from(e,t=null,n=-1){let s=[];for(let r=0;r<e.length;r++)for(let o=e[r];!o.isEmpty;o=o.nextLayer)o.maxPoint>=n&&s.push(new kf(o,t,n,r));return s.length==1?s[0]:new _n(s)}get startSide(){return this.value?this.value.startSide:0}goto(e,t=-1e9){for(let n of this.heap)n.goto(e,t);for(let n=this.heap.length>>1;n>=0;n--)eo(this.heap,n);return this.next(),this}forward(e,t){for(let n of this.heap)n.forward(e,t);for(let n=this.heap.length>>1;n>=0;n--)eo(this.heap,n);(this.to-e||this.value.endSide-t)<0&&this.next()}next(){if(this.heap.length==0)this.from=this.to=1e9,this.value=null,this.rank=-1;else{let e=this.heap[0];this.from=e.from,this.to=e.to,this.value=e.value,this.rank=e.rank,e.value&&e.next(),eo(this.heap,0)}}}function eo(i,e){for(let t=i[e];;){let n=(e<<1)+1;if(n>=i.length)break;let s=i[n];if(n+1<i.length&&s.compare(i[n+1])>=0&&(s=i[n+1],n++),t.compare(s)<0)break;i[n]=t,i[e]=s,e=n}}class Dn{constructor(e,t,n){this.minPoint=n,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=_n.from(e,t,n)}goto(e,t=-1e9){return this.cursor.goto(e,t),this.active.length=this.activeTo.length=this.activeRank.length=0,this.minActive=-1,this.to=e,this.endSide=t,this.openStart=-1,this.next(),this}forward(e,t){for(;this.minActive>-1&&(this.activeTo[this.minActive]-e||this.active[this.minActive].endSide-t)<0;)this.removeActive(this.minActive);this.cursor.forward(e,t)}removeActive(e){ys(this.active,e),ys(this.activeTo,e),ys(this.activeRank,e),this.minActive=ah(this.active,this.activeTo)}addActive(e){let t=0,{value:n,to:s,rank:r}=this.cursor;for(;t<this.activeRank.length&&(r-this.activeRank[t]||s-this.activeTo[t])>0;)t++;bs(this.active,t,n),bs(this.activeTo,t,s),bs(this.activeRank,t,r),e&&bs(e,t,this.cursor.from),this.minActive=ah(this.active,this.activeTo)}next(){let e=this.to,t=this.point;this.point=null;let n=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]>e){this.to=this.activeTo[s],this.endSide=this.active[s].endSide;break}this.removeActive(s),n&&ys(n,s)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let r=this.cursor.value;if(!r.point)this.addActive(n),this.cursor.next();else if(t&&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(n){this.openStart=0;for(let s=n.length-1;s>=0&&n[s]<e;s--)this.openStart++}}activeForPoint(e){if(!this.active.length)return this.active;let t=[];for(let n=this.active.length-1;n>=0&&!(this.activeRank[n]<this.pointRank);n--)(this.activeTo[n]>e||this.activeTo[n]==e&&this.active[n].endSide>=this.point.endSide)&&t.push(this.active[n]);return t.reverse()}openEnd(e){let t=0;for(let n=this.activeTo.length-1;n>=0&&this.activeTo[n]>e;n--)t++;return t}}function lh(i,e,t,n,s,r){i.goto(e),t.goto(n);let o=n+s,l=n,a=n-e,h=!!r.boundChange;for(let c=!1;;){let u=i.to+a-t.to,f=u||i.endSide-t.endSide,d=f<0?i.to+a:t.to,m=Math.min(d,o);if(i.point||t.point?(i.point&&t.point&&Ul(i.point,t.point)&&tl(i.activeForPoint(i.to),t.activeForPoint(t.to))||r.comparePoint(l,m,i.point,t.point),c=!1):(c&&r.boundChange(l),m>l&&!tl(i.active,t.active)&&r.compareRange(l,m,i.active,t.active),h&&m<o&&(u||i.openEnd(d)!=t.openEnd(d))&&(c=!0)),d>o)break;l=d,f<=0&&i.next(),f>=0&&t.next()}}function tl(i,e){if(i.length!=e.length)return!1;for(let t=0;t<i.length;t++)if(i[t]!=e[t]&&!Ul(i[t],e[t]))return!1;return!0}function ys(i,e){for(let t=e,n=i.length-1;t<n;t++)i[t]=i[t+1];i.pop()}function bs(i,e,t){for(let n=i.length-1;n>=e;n--)i[n+1]=i[n];i[e]=t}function ah(i,e){let t=-1,n=1e9;for(let s=0;s<e.length;s++)(e[s]-n||i[s].endSide-i[t].endSide)<0&&(t=s,n=e[s]);return t}function xr(i,e,t=i.length){let n=0;for(let s=0;s<t&&s<i.length;)i.charCodeAt(s)==9?(n+=e-n%e,s++):(n++,s=Ae(i,s));return n}function z0(i,e,t,n){for(let s=0,r=0;;){if(r>=e)return s;if(s==i.length)break;r+=i.charCodeAt(s)==9?t-r%t:1,s=Ae(i,s)}return i.length}const il="ͼ",hh=typeof Symbol>"u"?"__"+il:Symbol.for(il),nl=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),ch=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{};class $i{constructor(e,t){this.rules=[];let{finish:n}=t||{};function s(o){return/^@/.test(o)?[o]:o.split(/,\s*/)}function r(o,l,a,h){let c=[],u=/^@(\w+)\b/.exec(o[0]),f=u&&u[1]=="keyframes";if(u&&l==null)return a.push(o[0]+";");for(let d in l){let m=l[d];if(/&/.test(d))r(d.split(/,\s*/).map($=>o.map(w=>$.replace(/&/,w))).reduce(($,w)=>$.concat(w)),m,a);else if(m&&typeof m=="object"){if(!u)throw new RangeError("The value of a property ("+d+") should be a primitive value.");r(s(d),m,c,f)}else m!=null&&c.push(d.replace(/_.*/,"").replace(/[A-Z]/g,$=>"-"+$.toLowerCase())+": "+m+";")}(c.length||f)&&a.push((n&&!u&&!h?o.map(n):o).join(", ")+" {"+c.join(" ")+"}")}for(let o in e)r(s(o),e[o],this.rules)}getRules(){return this.rules.join(`
|
|
52
|
+
`)}static newName(){let e=ch[hh]||1;return ch[hh]=e+1,il+e.toString(36)}static mount(e,t,n){let s=e[nl],r=n&&n.nonce;s?r&&s.setNonce(r):s=new G0(e,r),s.mount(Array.isArray(t)?t:[t],e)}}let uh=new Map;class G0{constructor(e,t){let n=e.ownerDocument||e,s=n.defaultView;if(!e.head&&e.adoptedStyleSheets&&s.CSSStyleSheet){let r=uh.get(n);if(r)return e[nl]=r;this.sheet=new s.CSSStyleSheet,uh.set(n,this)}else this.styleTag=n.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);this.modules=[],e[nl]=this}mount(e,t){let n=this.sheet,s=0,r=0;for(let o=0;o<e.length;o++){let l=e[o],a=this.modules.indexOf(l);if(a<r&&a>-1&&(this.modules.splice(a,1),r--,a=-1),a==-1){if(this.modules.splice(r++,0,l),n)for(let h=0;h<l.rules.length;h++)n.insertRule(l.rules[h],s++)}else{for(;r<a;)s+=this.modules[r++].rules.length;s+=l.rules.length,r++}}if(n)t.adoptedStyleSheets.indexOf(this.sheet)<0&&(t.adoptedStyleSheets=[this.sheet,...t.adoptedStyleSheets]);else{let o="";for(let a=0;a<this.modules.length;a++)o+=this.modules[a].getRules()+`
|
|
53
|
+
`;this.styleTag.textContent=o;let l=t.head||t;this.styleTag.parentNode!=l&&l.insertBefore(this.styleTag,l.firstChild)}}setNonce(e){this.styleTag&&this.styleTag.getAttribute("nonce")!=e&&this.styleTag.setAttribute("nonce",e)}}let _e=typeof navigator<"u"?navigator:{userAgent:"",vendor:"",platform:""},sl=typeof document<"u"?document:{documentElement:{style:{}}};const rl=/Edge\/(\d+)/.exec(_e.userAgent),Sf=/MSIE \d/.test(_e.userAgent),ol=/Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(_e.userAgent),Or=!!(Sf||ol||rl),fh=!Or&&/gecko\/(\d+)/i.test(_e.userAgent),to=!Or&&/Chrome\/(\d+)/.exec(_e.userAgent),dh="webkitFontSmoothing"in sl.documentElement.style,ll=!Or&&/Apple Computer/.test(_e.vendor),ph=ll&&(/Mobile\/\w+/.test(_e.userAgent)||_e.maxTouchPoints>2);var A={mac:ph||/Mac/.test(_e.platform),windows:/Win/.test(_e.platform),linux:/Linux|X11/.test(_e.platform),ie:Or,ie_version:Sf?sl.documentMode||6:ol?+ol[1]:rl?+rl[1]:0,gecko:fh,gecko_version:fh?+(/Firefox\/(\d+)/.exec(_e.userAgent)||[0,0])[1]:0,chrome:!!to,chrome_version:to?+to[1]:0,ios:ph,android:/Android\b/.test(_e.userAgent),webkit:dh,webkit_version:dh?+(/\bAppleWebKit\/(\d+)/.exec(_e.userAgent)||[0,0])[1]:0,safari:ll,safari_version:ll?+(/\bVersion\/(\d+(\.\d+)?)/.exec(_e.userAgent)||[0,0])[1]:0,tabSize:sl.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"};function Vl(i,e){for(let t in i)t=="class"&&e.class?e.class+=" "+i.class:t=="style"&&e.style?e.style+=";"+i.style:e[t]=i[t];return e}const Us=Object.create(null);function Kl(i,e,t){if(i==e)return!0;i||(i=Us),e||(e=Us);let n=Object.keys(i),s=Object.keys(e);if(n.length-0!=s.length-0)return!1;for(let r of n)if(r!=t&&(s.indexOf(r)==-1||i[r]!==e[r]))return!1;return!0}function Q0(i,e){for(let t=i.attributes.length-1;t>=0;t--){let n=i.attributes[t].name;e[n]==null&&i.removeAttribute(n)}for(let t in e){let n=e[t];t=="style"?i.style.cssText=n:i.getAttribute(t)!=n&&i.setAttribute(t,n)}}function mh(i,e,t){let n=!1;if(e)for(let s in e)t&&s in t||(n=!0,s=="style"?i.style.cssText="":i.removeAttribute(s));if(t)for(let s in t)e&&e[s]==t[s]||(n=!0,s=="style"?i.style.cssText=t[s]:i.setAttribute(s,t[s]));return n}function A0(i){let e=Object.create(null);for(let t=0;t<i.attributes.length;t++){let n=i.attributes[t];e[n.name]=n.value}return e}class vr{eq(e){return!1}updateDOM(e,t,n){return!1}compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}get estimatedHeight(){return-1}get lineBreaks(){return 0}ignoreEvent(e){return!0}coordsAt(e,t,n){return null}get isHidden(){return!1}get editable(){return!1}destroy(e){}}var et=(function(i){return i[i.Text=0]="Text",i[i.WidgetBefore=1]="WidgetBefore",i[i.WidgetAfter=2]="WidgetAfter",i[i.WidgetRange=3]="WidgetRange",i})(et||(et={}));class ve extends zi{constructor(e,t,n,s){super(),this.startSide=e,this.endSide=t,this.widget=n,this.spec=s}get heightRelevant(){return!1}static mark(e){return new is(e)}static widget(e){let t=Math.max(-1e4,Math.min(1e4,e.side||0)),n=!!e.block;return t+=n&&!e.inlineOrder?t>0?3e8:-4e8:t>0?1e8:-1e8,new Gi(e,t,t,n,e.widget||null,!1)}static replace(e){let t=!!e.block,n,s;if(e.isBlockGap)n=-5e8,s=4e8;else{let{start:r,end:o}=Cf(e,t);n=(r?t?-3e8:-1:5e8)-1,s=(o?t?2e8:1:-6e8)+1}return new Gi(e,n,s,t,e.widget||null,!0)}static line(e){return new ns(e)}static set(e,t=!1){return re.of(e,t)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}}ve.none=re.empty;class is extends ve{constructor(e){let{start:t,end:n}=Cf(e);super(t?-1:5e8,n?1:-6e8,null,e),this.tagName=e.tagName||"span",this.attrs=e.class&&e.attributes?Vl(e.attributes,{class:e.class}):e.class?{class:e.class}:e.attributes||Us}eq(e){return this==e||e instanceof is&&this.tagName==e.tagName&&Kl(this.attrs,e.attrs)}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}}is.prototype.point=!1;class ns extends ve{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof ns&&this.spec.class==e.spec.class&&Kl(this.spec.attributes,e.spec.attributes)}range(e,t=e){if(t!=e)throw new RangeError("Line decoration ranges must be zero-length");return super.range(e,t)}}ns.prototype.mapMode=rt.TrackBefore;ns.prototype.point=!0;class Gi extends ve{constructor(e,t,n,s,r,o){super(t,n,r,e),this.block=s,this.isReplace=o,this.mapMode=s?t<=0?rt.TrackBefore:rt.TrackAfter:rt.TrackDel}get type(){return this.startSide!=this.endSide?et.WidgetRange:this.startSide<=0?et.WidgetBefore:et.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof Gi&&B0(this.widget,e.widget)&&this.block==e.block&&this.startSide==e.startSide&&this.endSide==e.endSide}range(e,t=e){if(this.isReplace&&(e>t||e==t&&this.startSide>0&&this.endSide<=0))throw new RangeError("Invalid range for replacement decoration");if(!this.isReplace&&t!=e)throw new RangeError("Widget decorations can only have zero-length ranges");return super.range(e,t)}}Gi.prototype.point=!0;function Cf(i,e=!1){let{inclusiveStart:t,inclusiveEnd:n}=i;return t==null&&(t=i.inclusive),n==null&&(n=i.inclusive),{start:t??e,end:n??e}}function B0(i,e){return i==e||!!(i&&e&&i.compare(e))}function on(i,e,t,n=0){let s=t.length-1;s>=0&&t[s]+n>=i?t[s]=Math.max(t[s],e):t.push(i,e)}class In extends zi{constructor(e,t,n){super(),this.tagName=e,this.attributes=t,this.rank=n}eq(e){return e==this||e instanceof In&&this.tagName==e.tagName&&Kl(this.attributes,e.attributes)}static create(e){return new In(e.tagName,e.attributes||Us,e.rank==null?50:Math.max(0,Math.min(e.rank,100)))}static set(e,t=!1){return re.of(e,t)}}In.prototype.startSide=In.prototype.endSide=-1;function Fn(i){let e;return i.nodeType==11?e=i.getSelection?i:i.ownerDocument:e=i,e.getSelection()}function al(i,e){return e?i==e||i.contains(e.nodeType!=1?e.parentNode:e):!1}function zn(i,e){if(!e.anchorNode)return!1;try{return al(i,e.anchorNode)}catch{return!1}}function Bs(i){return i.nodeType==3?Zn(i,0,i.nodeValue.length).getClientRects():i.nodeType==1?i.getClientRects():[]}function Gn(i,e,t,n){return t?gh(i,e,t,n,-1)||gh(i,e,t,n,1):!1}function wi(i){for(var e=0;;e++)if(i=i.previousSibling,!i)return e}function Xs(i){return i.nodeType==1&&/^(DIV|P|LI|UL|OL|BLOCKQUOTE|DD|DT|H\d|SECTION|PRE)$/.test(i.nodeName)}function gh(i,e,t,n,s){for(;;){if(i==t&&e==n)return!0;if(e==(s<0?0:ei(i))){if(i.nodeName=="DIV")return!1;let r=i.parentNode;if(!r||r.nodeType!=1)return!1;e=wi(i)+(s<0?0:1),i=r}else if(i.nodeType==1){if(i=i.childNodes[e+(s<0?-1:0)],i.nodeType==1&&i.contentEditable=="false")return!1;e=s<0?ei(i):0}else return!1}}function ei(i){return i.nodeType==3?i.nodeValue.length:i.childNodes.length}function Vs(i,e){let{left:t,right:n}=i;if(t==n)return i;let s=e?t:n;return{left:s,right:s,top:i.top,bottom:i.bottom}}function W0(i){let e=i.visualViewport;return e?{left:0,right:e.width,top:0,bottom:e.height}:{left:0,right:i.innerWidth,top:0,bottom:i.innerHeight}}function Ef(i,e){let t=e.width/i.offsetWidth,n=e.height/i.offsetHeight;return(t>.995&&t<1.005||!isFinite(t)||Math.abs(e.width-i.offsetWidth)<1)&&(t=1),(n>.995&&n<1.005||!isFinite(n)||Math.abs(e.height-i.offsetHeight)<1)&&(n=1),{scaleX:t,scaleY:n}}function M0(i,e,t,n,s,r,o,l){let a=i.ownerDocument,h=a.defaultView||window;for(let c=i,u=!1;c&&!u;)if(c.nodeType==1){let f,d=c==a.body,m=1,$=1;if(d)f=W0(h);else{if(/^(fixed|sticky)$/.test(getComputedStyle(c).position)&&(u=!0),c.scrollHeight<=c.clientHeight&&c.scrollWidth<=c.clientWidth){c=c.assignedSlot||c.parentNode;continue}let x=c.getBoundingClientRect();({scaleX:m,scaleY:$}=Ef(c,x)),f={left:x.left,right:x.left+c.clientWidth*m,top:x.top,bottom:x.top+c.clientHeight*$}}let w=0,y=0;if(s=="nearest")e.top<f.top+o?(y=e.top-(f.top+o),t>0&&e.bottom>f.bottom+y&&(y=e.bottom-f.bottom+o)):e.bottom>f.bottom-o&&(y=e.bottom-f.bottom+o,t<0&&e.top-y<f.top&&(y=e.top-(f.top+o)));else{let x=e.bottom-e.top,O=f.bottom-f.top;y=(s=="center"&&x<=O?e.top+x/2-O/2:s=="start"||s=="center"&&t<0?e.top-o:e.bottom-O+o)-f.top}if(n=="nearest"?e.left<f.left+r?(w=e.left-(f.left+r),t>0&&e.right>f.right+w&&(w=e.right-f.right+r)):e.right>f.right-r&&(w=e.right-f.right+r,t<0&&e.left<f.left+w&&(w=e.left-(f.left+r))):w=(n=="center"?e.left+(e.right-e.left)/2-(f.right-f.left)/2:n=="start"==l?e.left-r:e.right-(f.right-f.left)+r)-f.left,w||y)if(d)h.scrollBy(w,y);else{let x=0,O=0;if(y){let j=c.scrollTop;c.scrollTop+=y/$,O=(c.scrollTop-j)*$}if(w){let j=c.scrollLeft;c.scrollLeft+=w/m,x=(c.scrollLeft-j)*m}e={left:e.left-x,top:e.top-O,right:e.right-x,bottom:e.bottom-O},x&&Math.abs(x-w)<1&&(n="nearest"),O&&Math.abs(O-y)<1&&(s="nearest")}if(d)break;(e.top<f.top||e.bottom>f.bottom||e.left<f.left||e.right>f.right)&&(e={left:Math.max(e.left,f.left),right:Math.min(e.right,f.right),top:Math.max(e.top,f.top),bottom:Math.min(e.bottom,f.bottom)}),c=c.assignedSlot||c.parentNode}else if(c.nodeType==11)c=c.host;else break}function Df(i,e=!0){let t=i.ownerDocument,n=null,s=null;for(let r=i.parentNode;r&&!(r==t.body||(!e||n)&&s);)if(r.nodeType==1)!s&&r.scrollHeight>r.clientHeight&&(s=r),e&&!n&&r.scrollWidth>r.clientWidth&&(n=r),r=r.assignedSlot||r.parentNode;else if(r.nodeType==11)r=r.host;else break;return{x:n,y:s}}class L0{constructor(){this.anchorNode=null,this.anchorOffset=0,this.focusNode=null,this.focusOffset=0}eq(e){return this.anchorNode==e.anchorNode&&this.anchorOffset==e.anchorOffset&&this.focusNode==e.focusNode&&this.focusOffset==e.focusOffset}setRange(e){let{anchorNode:t,focusNode:n}=e;this.set(t,Math.min(e.anchorOffset,t?ei(t):0),n,Math.min(e.focusOffset,n?ei(n):0))}set(e,t,n,s){this.anchorNode=e,this.anchorOffset=t,this.focusNode=n,this.focusOffset=s}}function jf(i){let e=[];for(let t=i;t;t=t.nodeType==11?t.host:t.parentNode)t.nodeType==1&&e.push({node:t,left:t.scrollLeft,top:t.scrollTop});return e}function Rf(i,e=!0){for(let{node:t,left:n,top:s}of i)e&&t.scrollTop!=s&&(t.scrollTop=s),t.scrollLeft!=n&&(t.scrollLeft=n)}let Di=null;A.safari&&A.safari_version>=26&&(Di=!1);function Nf(i){if(i.setActive)return i.setActive();if(Di)return i.focus(Di);let e=jf(i);i.focus(Di==null?{get preventScroll(){return Di={preventScroll:!0},!0}}:void 0),Di||(Di=!1,Rf(e))}let $h;function Zn(i,e,t=e){let n=$h||($h=document.createRange());return n.setEnd(i,t),n.setStart(i,e),n}function ln(i,e,t,n){let s={key:e,code:e,keyCode:t,which:t,cancelable:!0};n&&({altKey:s.altKey,ctrlKey:s.ctrlKey,shiftKey:s.shiftKey,metaKey:s.metaKey}=n);let r=new KeyboardEvent("keydown",s);r.synthetic=!0,i.dispatchEvent(r);let o=new KeyboardEvent("keyup",s);return o.synthetic=!0,i.dispatchEvent(o),r.defaultPrevented||o.defaultPrevented}function _0(i){for(;i;){if(i&&(i.nodeType==9||i.nodeType==11&&i.host))return i;i=i.assignedSlot||i.parentNode}return null}function I0(i,e){let t=e.focusNode,n=e.focusOffset;if(!t||e.anchorNode!=t||e.anchorOffset!=n)return!1;for(n=Math.min(n,ei(t));;)if(n){if(t.nodeType!=1)return!1;let s=t.childNodes[n-1];s.contentEditable=="false"?n--:(t=s,n=ei(t))}else{if(t==i)return!0;n=wi(t),t=t.parentNode}}function Pf(i){return i instanceof Window?i.pageYOffset>Math.max(0,i.document.documentElement.scrollHeight-i.innerHeight-4):i.scrollTop>Math.max(1,i.scrollHeight-i.clientHeight-4)}function Tf(i,e){for(let t=i,n=e;;){if(t.nodeType==3&&n>0)return{node:t,offset:n};if(t.nodeType==1&&n>0){if(t.contentEditable=="false")return null;t=t.childNodes[n-1],n=ei(t)}else if(t.parentNode&&!Xs(t))n=wi(t),t=t.parentNode;else return null}}function Hf(i,e){for(let t=i,n=e;;){if(t.nodeType==3&&n<t.nodeValue.length)return{node:t,offset:n};if(t.nodeType==1&&n<t.childNodes.length){if(t.contentEditable=="false")return null;t=t.childNodes[n],n=0}else if(t.parentNode&&!Xs(t))n=wi(t)+1,t=t.parentNode;else return null}}class $t{constructor(e,t,n=!0){this.node=e,this.offset=t,this.precise=n}static before(e,t){return new $t(e.parentNode,wi(e),t)}static after(e,t){return new $t(e.parentNode,wi(e)+1,t)}}var De=(function(i){return i[i.LTR=0]="LTR",i[i.RTL=1]="RTL",i})(De||(De={}));const Qi=De.LTR,Jl=De.RTL;function Yf(i){let e=[];for(let t=0;t<i.length;t++)e.push(1<<+i[t]);return e}const F0=Yf("88888888888888888888888888888888888666888888787833333333337888888000000000000000000000000008888880000000000000000000000000088888888888888888888888888888888888887866668888088888663380888308888800000000000000000000000800000000000000000000000000000008"),Z0=Yf("4444448826627288999999999992222222222222222222222222222222222222222222222229999999999999999999994444444444644222822222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222222999999949999999229989999223333333333"),hl=Object.create(null),Dt=[];for(let i of["()","[]","{}"]){let e=i.charCodeAt(0),t=i.charCodeAt(1);hl[e]=t,hl[t]=-e}function zf(i){return i<=247?F0[i]:1424<=i&&i<=1524?2:1536<=i&&i<=1785?Z0[i-1536]:1774<=i&&i<=2220?4:8192<=i&&i<=8204?256:64336<=i&&i<=65023?4:1}const q0=/[\u0590-\u05f4\u0600-\u06ff\u0700-\u08ac\ufb50-\ufdff]/;class Yt{get dir(){return this.level%2?Jl:Qi}constructor(e,t,n){this.from=e,this.to=t,this.level=n}side(e,t){return this.dir==t==e?this.to:this.from}forward(e,t){return e==(this.dir==t)}static find(e,t,n,s){let r=-1;for(let o=0;o<e.length;o++){let l=e[o];if(l.from<=t&&l.to>=t){if(l.level==n)return o;(r<0||(s!=0?s<0?l.from<t:l.to>t:e[r].level>l.level))&&(r=o)}}if(r<0)throw new RangeError("Index out of range");return r}}function Gf(i,e){if(i.length!=e.length)return!1;for(let t=0;t<i.length;t++){let n=i[t],s=e[t];if(n.from!=s.from||n.to!=s.to||n.direction!=s.direction||!Gf(n.inner,s.inner))return!1}return!0}const pe=[];function U0(i,e,t,n,s){for(let r=0;r<=n.length;r++){let o=r?n[r-1].to:e,l=r<n.length?n[r].from:t,a=r?256:s;for(let h=o,c=a,u=a;h<l;h++){let f=zf(i.charCodeAt(h));f==512?f=c:f==8&&u==4&&(f=16),pe[h]=f==4?2:f,f&7&&(u=f),c=f}for(let h=o,c=a,u=a;h<l;h++){let f=pe[h];if(f==128)h<l-1&&c==pe[h+1]&&c&24?f=pe[h]=c:pe[h]=256;else if(f==64){let d=h+1;for(;d<l&&pe[d]==64;)d++;let m=h&&c==8||d<t&&pe[d]==8?u==1?1:8:256;for(let $=h;$<d;$++)pe[$]=m;h=d-1}else f==8&&u==1&&(pe[h]=1);c=f,f&7&&(u=f)}}}function X0(i,e,t,n,s){let r=s==1?2:1;for(let o=0,l=0,a=0;o<=n.length;o++){let h=o?n[o-1].to:e,c=o<n.length?n[o].from:t;for(let u=h,f,d,m;u<c;u++)if(d=hl[f=i.charCodeAt(u)])if(d<0){for(let $=l-3;$>=0;$-=3)if(Dt[$+1]==-d){let w=Dt[$+2],y=w&2?s:w&4?w&1?r:s:0;y&&(pe[u]=pe[Dt[$]]=y),l=$;break}}else{if(Dt.length==189)break;Dt[l++]=u,Dt[l++]=f,Dt[l++]=a}else if((m=pe[u])==2||m==1){let $=m==s;a=$?0:1;for(let w=l-3;w>=0;w-=3){let y=Dt[w+2];if(y&2)break;if($)Dt[w+2]|=2;else{if(y&4)break;Dt[w+2]|=4}}}}}function V0(i,e,t,n){for(let s=0,r=n;s<=t.length;s++){let o=s?t[s-1].to:i,l=s<t.length?t[s].from:e;for(let a=o;a<l;){let h=pe[a];if(h==256){let c=a+1;for(;;)if(c==l){if(s==t.length)break;c=t[s++].to,l=s<t.length?t[s].from:e}else if(pe[c]==256)c++;else break;let u=r==1,f=(c<e?pe[c]:n)==1,d=u==f?u?1:2:n;for(let m=c,$=s,w=$?t[$-1].to:i;m>a;)m==w&&(m=t[--$].from,w=$?t[$-1].to:i),pe[--m]=d;a=c}else r=h,a++}}}function cl(i,e,t,n,s,r,o){let l=n%2?2:1;if(n%2==s%2)for(let a=e,h=0;a<t;){let c=!0,u=!1;if(h==r.length||a<r[h].from){let $=pe[a];$!=l&&(c=!1,u=$==16)}let f=!c&&l==1?[]:null,d=c?n:n+1,m=a;e:for(;;)if(h<r.length&&m==r[h].from){if(u)break e;let $=r[h];if(!c)for(let w=$.to,y=h+1;;){if(w==t)break e;if(y<r.length&&r[y].from==w)w=r[y++].to;else{if(pe[w]==l)break e;break}}if(h++,f)f.push($);else{$.from>a&&o.push(new Yt(a,$.from,d));let w=$.direction==Qi!=!(d%2);ul(i,w?n+1:n,s,$.inner,$.from,$.to,o),a=$.to}m=$.to}else{if(m==t||(c?pe[m]!=l:pe[m]==l))break;m++}f?cl(i,a,m,n+1,s,f,o):a<m&&o.push(new Yt(a,m,d)),a=m}else for(let a=t,h=r.length;a>e;){let c=!0,u=!1;if(!h||a>r[h-1].to){let $=pe[a-1];$!=l&&(c=!1,u=$==16)}let f=!c&&l==1?[]:null,d=c?n:n+1,m=a;e:for(;;)if(h&&m==r[h-1].to){if(u)break e;let $=r[--h];if(!c)for(let w=$.from,y=h;;){if(w==e)break e;if(y&&r[y-1].to==w)w=r[--y].from;else{if(pe[w-1]==l)break e;break}}if(f)f.push($);else{$.to<a&&o.push(new Yt($.to,a,d));let w=$.direction==Qi!=!(d%2);ul(i,w?n+1:n,s,$.inner,$.from,$.to,o),a=$.from}m=$.from}else{if(m==e||(c?pe[m-1]!=l:pe[m-1]==l))break;m--}f?cl(i,m,a,n+1,s,f,o):m<a&&o.push(new Yt(m,a,d)),a=m}}function ul(i,e,t,n,s,r,o){let l=e%2?2:1;U0(i,s,r,n,l),X0(i,s,r,n,l),V0(s,r,n,l),cl(i,s,r,e,t,n,o)}function K0(i,e,t){if(!i)return[new Yt(0,0,e==Jl?1:0)];if(e==Qi&&!t.length&&!q0.test(i))return Qf(i.length);if(t.length)for(;i.length>pe.length;)pe[pe.length]=256;let n=[],s=e==Qi?0:1;return ul(i,s,s,t,0,i.length,n),n}function Qf(i){return[new Yt(0,i,0)]}let Af="";function J0(i,e,t,n,s){var r;let o=n.head-i.from,l=Yt.find(e,o,(r=n.bidiLevel)!==null&&r!==void 0?r:-1,n.assoc),a=e[l],h=a.side(s,t);if(o==h){let f=l+=s?1:-1;if(f<0||f>=e.length)return null;a=e[l=f],o=a.side(!s,t),h=a.side(s,t)}let c=Ae(i.text,o,a.forward(s,t));(c<a.from||c>a.to)&&(c=h),Af=i.text.slice(Math.min(o,c),Math.max(o,c));let u=l==(s?e.length-1:0)?null:e[l+(s?1:-1)];return u&&c==h&&u.level+(s?0:1)<a.level?Y.cursor(u.side(!s,t)+i.from,u.forward(s,t)?1:-1,u.level):Y.cursor(c+i.from,a.forward(s,t)?-1:1,a.level)}function ey(i,e,t){for(let n=e;n<t;n++){let s=zf(i.charCodeAt(n));if(s==1)return Qi;if(s==2||s==4)return Jl}return Qi}const Bf=I.define(),Wf=I.define(),Mf=I.define(),Lf=I.define(),fl=I.define(),_f=I.define(),If=I.define(),ea=I.define(),ta=I.define(),Ff=I.define({combine:i=>i.some(e=>e)}),ty=I.define({combine:i=>i.some(e=>e)}),Zf=I.define();class an{constructor(e,t,n,s,r,o=!1){this.range=e,this.y=t,this.x=n,this.yMargin=s,this.xMargin=r,this.isSnapshot=o}map(e){return e.empty?this:new an(this.range.map(e),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}clip(e){return this.range.to<=e.doc.length?this:new an(Y.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}}const xs=Se.define({map:(i,e)=>i.map(e)}),qf=Se.define();function zt(i,e,t){let n=i.facet(Lf);n.length?n[0](e):window.onerror&&window.onerror(String(e),t,void 0,void 0,e)||(t?console.error(t+":",e):console.error(e))}const qt=I.define({combine:i=>i.length?i[0]:!0});let iy=0;const Ji=I.define({combine(i){return i.filter((e,t)=>{for(let n=0;n<t;n++)if(i[n].plugin==e.plugin)return!1;return!0})}});class ti{constructor(e,t,n,s,r){this.id=e,this.create=t,this.domEventHandlers=n,this.domEventObservers=s,this.baseExtensions=r(this),this.extension=this.baseExtensions.concat(Ji.of({plugin:this,arg:void 0}))}of(e){return this.baseExtensions.concat(Ji.of({plugin:this,arg:e}))}static define(e,t){const{eventHandlers:n,eventObservers:s,provide:r,decorations:o}=t||{};return new ti(iy++,e,n,s,l=>{let a=[];return o&&a.push(kr.of(h=>{let c=h.plugin(l);return c?o(c):ve.none})),r&&a.push(r(l)),a})}static fromClass(e,t){return ti.define((n,s)=>new e(n,s),t)}}class io{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}get plugin(){return this.spec&&this.spec.plugin}update(e){if(this.value){if(this.mustUpdate){let t=this.mustUpdate;if(this.mustUpdate=null,this.value.update)try{this.value.update(t)}catch(n){if(zt(t.state,n,"CodeMirror plugin crashed"),this.value.destroy)try{this.value.destroy()}catch{}this.deactivate()}}}else if(this.spec)try{this.value=this.spec.plugin.create(e,this.spec.arg)}catch(t){zt(e.state,t,"CodeMirror plugin crashed"),this.deactivate()}return this}destroy(e){var t;if(!((t=this.value)===null||t===void 0)&&t.destroy)try{this.value.destroy()}catch(n){zt(e.state,n,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}}const Uf=I.define(),ia=I.define(),kr=I.define(),Xf=I.define(),na=I.define(),ss=I.define(),Vf=I.define();function wh(i,e){let t=i.state.facet(Vf);if(!t.length)return t;let n=t.map(r=>r instanceof Function?r(i):r),s=[];return re.spans(n,e.from,e.to,{point(){},span(r,o,l,a){let h=r-e.from,c=o-e.from,u=s;for(let f=l.length-1;f>=0;f--,a--){let d=l[f].spec.bidiIsolate,m;if(d==null&&(d=ey(e.text,h,c)),a>0&&u.length&&(m=u[u.length-1]).to==h&&m.direction==d)m.to=c,u=m.inner;else{let $={from:h,to:c,direction:d,inner:[]};u.push($),u=$.inner}}}}),s}const Kf=I.define();function Jf(i){let e=0,t=0,n=0,s=0;for(let r of i.state.facet(Kf)){let o=r(i);o&&(o.left!=null&&(e=Math.max(e,o.left)),o.right!=null&&(t=Math.max(t,o.right)),o.top!=null&&(n=Math.max(n,o.top)),o.bottom!=null&&(s=Math.max(s,o.bottom)))}return{left:e,right:t,top:n,bottom:s}}const Pn=I.define();class ht{constructor(e,t,n,s){this.fromA=e,this.toA=t,this.fromB=n,this.toB=s}join(e){return new ht(Math.min(this.fromA,e.fromA),Math.max(this.toA,e.toA),Math.min(this.fromB,e.fromB),Math.max(this.toB,e.toB))}addToSet(e){let t=e.length,n=this;for(;t>0;t--){let s=e[t-1];if(!(s.fromA>n.toA)){if(s.toA<n.fromA)break;n=n.join(s),e.splice(t-1,1)}}return e.splice(t,0,n),e}static extendWithRanges(e,t){if(t.length==0)return e;let n=[];for(let s=0,r=0,o=0;;){let l=s<e.length?e[s].fromB:1e9,a=r<t.length?t[r]:1e9,h=Math.min(l,a);if(h==1e9)break;let c=h+o,u=h,f=c;for(;;)if(r<t.length&&t[r]<=u){let d=t[r+1];r+=2,u=Math.max(u,d);for(let m=s;m<e.length&&e[m].fromB<=u;m++)o=e[m].toA-e[m].toB;f=Math.max(f,d+o)}else if(s<e.length&&e[s].fromB<=u){let d=e[s++];u=Math.max(u,d.toB),f=Math.max(f,d.toA),o=d.toA-d.toB}else break;n.push(new ht(c,f,h,u))}return n}}class Ks{constructor(e,t,n){this.view=e,this.state=t,this.transactions=n,this.flags=0,this.startState=e.state,this.changes=Pe.empty(this.startState.doc.length);for(let r of n)this.changes=this.changes.compose(r.changes);let s=[];this.changes.iterChangedRanges((r,o,l,a)=>s.push(new ht(r,o,l,a))),this.changedRanges=s}static create(e,t,n){return new Ks(e,t,n)}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(e=>e.selection)}get empty(){return this.flags==0&&this.transactions.length==0}}const ny=[];class Ce{constructor(e,t,n=0){this.dom=e,this.length=t,this.flags=n,this.parent=null,e.cmTile=this}get breakAfter(){return this.flags&1}get children(){return ny}isWidget(){return!1}get isHidden(){return!1}isComposite(){return!1}isLine(){return!1}isText(){return!1}isBlock(){return!1}get domAttrs(){return null}sync(e){if(this.flags|=2,this.flags&4){this.flags&=-5;let t=this.domAttrs;t&&Q0(this.dom,t)}}toString(){return this.constructor.name+(this.children.length?`(${this.children})`:"")+(this.breakAfter?"#":"")}destroy(){this.parent=null}setDOM(e){this.dom=e,e.cmTile=this}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e,t=this.posAtStart){let n=t;for(let s of this.children){if(s==e)return n;n+=s.length+s.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}covers(e){return!0}coordsIn(e,t,n){return null}domPosFor(e,t){let n=wi(this.dom),s=this.length?e>0:t>0;return new $t(this.parent.dom,n+(s?1:0),e==0||e==this.length)}markDirty(e){this.flags&=-3,e&&(this.flags|=4),this.parent&&this.parent.flags&2&&this.parent.markDirty(!1)}get overrideDOMText(){return null}get root(){for(let e=this;e;e=e.parent)if(e instanceof Cr)return e;return null}static get(e){return e.cmTile}}class Sr extends Ce{constructor(e){super(e,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(e){this.children.push(e),e.parent=this}sync(e){if(this.flags&2)return;super.sync(e);let t=this.dom,n=null,s,r=(e==null?void 0:e.node)==t?e:null,o=0;for(let l of this.children){if(l.sync(e),o+=l.length+l.breakAfter,s=n?n.nextSibling:t.firstChild,r&&s!=l.dom&&(r.written=!0),l.dom.parentNode==t)for(;s&&s!=l.dom;)s=yh(s);else t.insertBefore(l.dom,s);n=l.dom}for(s=n?n.nextSibling:t.firstChild,r&&s&&(r.written=!0);s;)s=yh(s);this.length=o}}function yh(i){let e=i.nextSibling;return i.parentNode.removeChild(i),e}class Cr extends Sr{constructor(e,t){super(t),this.view=e}owns(e){for(;e;e=e.parent)if(e==this)return!0;return!1}isBlock(){return!0}nearest(e){for(;;){if(!e)return null;let t=Ce.get(e);if(t&&this.owns(t))return t;e=e.parentNode}}blockTiles(e){for(let t=[],n=this,s=0,r=0;;)if(s==n.children.length){if(!t.length)return;n=n.parent,n.breakAfter&&r++,s=t.pop()}else{let o=n.children[s++];if(o instanceof Vt)t.push(s),n=o,s=0;else{let l=r+o.length,a=e(o,r);if(a!==void 0)return a;r=l+o.breakAfter}}}resolveBlock(e,t){let n,s=-1,r,o=-1;if(this.blockTiles((l,a)=>{let h=a+l.length;if(e>=a&&e<=h){if(l.isWidget()&&t>=-1&&t<=1){if(l.flags&32)return!0;l.flags&16&&(n=void 0)}(a<e||e==h&&(t<-1?l.length:l.covers(1)))&&(!n||!l.isWidget()&&n.isWidget())&&(n=l,s=e-a),(h>e||e==a&&(t>1?l.length:l.covers(-1)))&&(!r||!l.isWidget()&&r.isWidget())&&(r=l,o=e-a)}}),!n&&!r)throw new Error("No tile at position "+e);return n&&t<0||!r?{tile:n,offset:s}:{tile:r,offset:o}}}class Vt extends Sr{constructor(e,t){super(e),this.wrapper=t}isBlock(){return!0}covers(e){return this.children.length?e<0?this.children[0].covers(-1):this.lastChild.covers(1):!1}get domAttrs(){return this.wrapper.attributes}static of(e,t){let n=new Vt(t||document.createElement(e.tagName),e);return t||(n.flags|=4),n}}class pn extends Sr{constructor(e,t){super(e),this.attrs=t}isLine(){return!0}static start(e,t,n){let s=new pn(t||document.createElement("div"),e);return(!t||!n)&&(s.flags|=4),s}get domAttrs(){return this.attrs}resolveInline(e,t,n){let s=null,r=-1,o=null,l=-1;function a(c,u){for(let f=0,d=0;f<c.children.length&&d<=u;f++){let m=c.children[f],$=d+m.length;$>=u&&(m.isComposite()?a(m,u-d):(!o||o.isHidden&&(t>0&&!(o.flags&32)||n&&ry(o,m)))&&($>u||m.flags&32&&t<=1)?(o=m,l=u-d):(d<u||m.flags&16&&!m.isHidden&&t>=-1)&&(s=m,r=u-d)),d=$}}a(this,e);let h=(t<0?s:o)||s||o;return h?{tile:h,offset:h==s?r:l}:null}coordsIn(e,t,n){let s=this.resolveInline(e,t,!0);return s?s.tile.coordsIn(Math.max(0,s.offset),t,n):sy(this)}domIn(e,t){let n=this.resolveInline(e,t);if(n){let{tile:s,offset:r}=n;if(this.dom.contains(s.dom))return s.isText()?new $t(s.dom,Math.min(s.dom.nodeValue.length,r)):s.domPosFor(r,s.flags&16?1:s.flags&32?-1:t);let o=n.tile.parent,l=!1;for(let a of o.children){if(l)return new $t(a.dom,0);a==n.tile&&(l=!0)}}return new $t(this.dom,0)}}function sy(i){let e=i.dom.lastChild;if(!e)return i.dom.getBoundingClientRect();let t=Bs(e);return t[t.length-1]||null}function ry(i,e){let t=i.coordsIn(0,1),n=e.coordsIn(0,1);return t&&n&&n.top<t.bottom}class Ke extends Sr{constructor(e,t){super(e),this.mark=t}get domAttrs(){return this.mark.attrs}static of(e,t){let n=new Ke(t||document.createElement(e.tagName),e);return t||(n.flags|=4),n}}class Ni extends Ce{constructor(e,t){super(e,t.length),this.text=t}sync(e){this.flags&2||(super.sync(e),this.dom.nodeValue!=this.text&&(e&&e.node==this.dom&&(e.written=!0),this.dom.nodeValue=this.text))}isText(){return!0}toString(){return JSON.stringify(this.text)}coordsIn(e,t,n){let s=this.dom.nodeValue.length;e>s&&(e=s);let r=e,o=e,l=0;e==0&&t<0||e==s&&t>=0?A.chrome||A.gecko||(e?(r--,l=1):o<s&&(o++,l=-1)):t<0?r--:o<s&&o++;let a=Zn(this.dom,r,o).getClientRects();if(!a.length)return null;let h=a[(l?l<0:t>=0)?0:a.length-1];return A.safari&&!l&&h.width==0&&(h=Array.prototype.find.call(a,c=>c.width)||h),n==null?h:Vs(h,(l?l>0:t<0)==n)}static of(e,t){let n=new Ni(t||document.createTextNode(e),e);return t||(n.flags|=2),n}}class Ai extends Ce{constructor(e,t,n,s){super(e,t,s),this.widget=n}isWidget(){return!0}get isHidden(){return this.widget.isHidden}covers(e){return this.flags&48?!1:(this.flags&(e<0?64:128))>0}coordsIn(e,t){return this.coordsInWidget(e,t,!1)}coordsInWidget(e,t,n){let s=this.widget.coordsAt(this.dom,e,t);if(s)return s;if(n)return Vs(this.dom.getBoundingClientRect(),this.length?e==0:t<=0);{let r=this.dom.getClientRects(),o=null;if(!r.length)return null;let l=this.flags&16?!0:this.flags&32?!1:e>0;for(let a=l?r.length-1:0;o=r[a],!(e>0?a==0:a==r.length-1||o.top<o.bottom);a+=l?-1:1);return Vs(o,!l)}}get overrideDOMText(){if(!this.length)return le.empty;let{root:e}=this;if(!e)return le.empty;let t=this.posAtStart;return e.view.state.doc.slice(t,t+this.length)}destroy(){super.destroy(),this.widget.destroy(this.dom)}static of(e,t,n,s,r){return r||(r=e.toDOM(t),e.editable||(r.contentEditable="false")),new Ai(r,n,e,s)}}class Js extends Ce{constructor(e){let t=document.createElement("img");t.className="cm-widgetBuffer",t.setAttribute("aria-hidden","true"),super(t,0,e)}get isHidden(){return!0}get overrideDOMText(){return le.empty}coordsIn(e,t,n){let s=this.dom.getBoundingClientRect();return n==null?s:Vs(s,t>0==n)}}class oy{constructor(e){this.index=0,this.beforeBreak=!1,this.parents=[],this.tile=e}advance(e,t,n){let{tile:s,index:r,beforeBreak:o,parents:l}=this;for(;e||t>0;)if(s.isComposite())if(o){if(!e)break;n&&n.break(),e--,o=!1}else if(r==s.children.length){if(!e&&!l.length)break;n&&n.leave(s),o=!!s.breakAfter,{tile:s,index:r}=l.pop(),r++}else{let a=s.children[r],h=a.breakAfter;(t>0?a.length<=e:a.length<e)&&(!n||n.skip(a,0,a.length)!==!1||!a.isComposite)?(o=!!h,r++,e-=a.length):(l.push({tile:s,index:r}),s=a,r=0,n&&a.isComposite()&&n.enter(a))}else{let a=s.length;if(r<a&&e){let h=Math.min(e,a-r);n&&n.skip(s,r,r+h),e-=h,r+=h}if(r==a)o=!!s.breakAfter,{tile:s,index:r}=l.pop(),r++;else if(!e)break}return this.tile=s,this.index=r,this.beforeBreak=o,this}get root(){return this.parents.length?this.parents[0].tile:this.tile}}class ly{constructor(e,t,n,s){this.from=e,this.to=t,this.wrapper=n,this.rank=s}}class ay{constructor(e,t,n){this.cache=e,this.root=t,this.blockWrappers=n,this.curLine=null,this.lastBlock=null,this.afterWidget=null,this.pos=0,this.wrappers=[],this.wrapperPos=0}addText(e,t,n,s){var r;this.flushBuffer();let o=this.ensureMarks(t,n),l=o.lastChild;if(l&&l.isText()&&!(l.flags&8)&&l.length+e.length<512){this.cache.reused.set(l,2);let a=o.children[o.children.length-1]=new Ni(l.dom,l.text+e);a.parent=o}else o.append(s||Ni.of(e,(r=this.cache.find(Ni))===null||r===void 0?void 0:r.dom));this.pos+=e.length,this.afterWidget=null}addComposition(e,t){let n=this.curLine;n.dom!=t.line.dom&&(n.setDOM(this.cache.reused.has(t.line)?no(t.line.dom):t.line.dom),this.cache.reused.set(t.line,2));let s=n;for(let l=t.marks.length-1;l>=0;l--){let a=t.marks[l],h=s.lastChild;if(h instanceof Ke&&h.mark.eq(a.mark))h.dom!=a.dom&&h.setDOM(no(a.dom)),s=h;else{if(this.cache.reused.get(a)){let u=Ce.get(a.dom);u&&u.setDOM(no(a.dom))}let c=Ke.of(a.mark,a.dom);s.append(c),s=c}this.cache.reused.set(a,2)}let r=Ce.get(e.text);r&&this.cache.reused.set(r,2);let o=new Ni(e.text,e.text.nodeValue);o.flags|=8,this.pos=e.range.toB,s.append(o)}addInlineWidget(e,t,n){let s=this.afterWidget&&e.flags&48&&(this.afterWidget.flags&48)==(e.flags&48);s||this.flushBuffer();let r=this.ensureMarks(t,n);!s&&!(e.flags&16)&&r.append(this.getBuffer(1)),r.append(e),this.pos+=e.length,this.afterWidget=e}addMark(e,t,n){this.flushBuffer(),this.ensureMarks(t,n).append(e),this.pos+=e.length,this.afterWidget=null}addBlockWidget(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}continueWidget(e){let t=this.afterWidget||this.lastBlock;t.length+=e,this.pos+=e}addLineStart(e,t){var n;e||(e=ed);let s=pn.start(e,t||((n=this.cache.find(pn))===null||n===void 0?void 0:n.dom),!!t);this.getBlockPos().append(this.lastBlock=this.curLine=s)}addLine(e){this.getBlockPos().append(e),this.pos+=e.length,this.lastBlock=e,this.endLine()}addBreak(){this.lastBlock.flags|=1,this.endLine(),this.pos++}addLineStartIfNotCovered(e){this.blockPosCovered()||this.addLineStart(e)}ensureLine(e){this.curLine||this.addLineStart(e)}ensureMarks(e,t){var n;let s=this.curLine;for(let r=e.length-1;r>=0;r--){let o=e[r],l;if(t>0&&(l=s.lastChild)&&l instanceof Ke&&l.mark.eq(o))s=l,t--;else{let a=Ke.of(o,(n=this.cache.find(Ke,h=>h.mark.eq(o)))===null||n===void 0?void 0:n.dom);s.append(a),s=a,t=0}}return s}endLine(){if(this.curLine){this.flushBuffer();let e=this.curLine.lastChild;(!e||!bh(this.curLine,!1)||e.dom.nodeName!="BR"&&e.isWidget()&&!(A.ios&&bh(this.curLine,!0)))&&this.curLine.append(this.cache.findWidget(so,0,32)||new Ai(so.toDOM(),0,so,32)),this.curLine=this.afterWidget=null}}updateBlockWrappers(){this.wrapperPos>this.pos+1e4&&(this.blockWrappers.goto(this.pos),this.wrappers.length=0);for(let e=this.wrappers.length-1;e>=0;e--)this.wrappers[e].to<this.pos&&this.wrappers.splice(e,1);for(let e=this.blockWrappers;e.value&&e.from<=this.pos;e.next())if(e.to>=this.pos){let t=e.rank*102+e.value.rank,n=new ly(e.from,e.to,e.value,t),s=this.wrappers.length;for(;s>0&&(this.wrappers[s-1].rank-n.rank||this.wrappers[s-1].to-n.to)<0;)s--;this.wrappers.splice(s,0,n)}this.wrapperPos=this.pos}getBlockPos(){var e;this.updateBlockWrappers();let t=this.root;for(let n of this.wrappers){let s=t.lastChild;if(n.from<this.pos&&s instanceof Vt&&s.wrapper.eq(n.wrapper))t=s;else{let r=Vt.of(n.wrapper,(e=this.cache.find(Vt,o=>o.wrapper.eq(n.wrapper)))===null||e===void 0?void 0:e.dom);t.append(r),t=r}}return t}blockPosCovered(){let e=this.lastBlock;return e!=null&&!e.breakAfter&&(!e.isWidget()||(e.flags&160)>0)}getBuffer(e){let t=2|(e<0?16:32),n=this.cache.find(Js,void 0,1);return n&&(n.flags=t),n||new Js(t)}flushBuffer(){this.afterWidget&&!(this.afterWidget.flags&32)&&(this.afterWidget.parent.append(this.getBuffer(-1)),this.afterWidget=null)}}class hy{constructor(e){this.skipCount=0,this.text="",this.textOff=0,this.cursor=e.iter()}skip(e){this.textOff+e<=this.text.length?this.textOff+=e:(this.skipCount+=e-(this.text.length-this.textOff),this.text="",this.textOff=0)}next(e){if(this.textOff==this.text.length){let{value:s,lineBreak:r,done:o}=this.cursor.next(this.skipCount);if(this.skipCount=0,o)throw new Error("Ran out of text content when drawing inline views");this.text=s;let l=this.textOff=Math.min(e,s.length);return r?null:s.slice(0,l)}let t=Math.min(this.text.length,this.textOff+e),n=this.text.slice(this.textOff,t);return this.textOff=t,n}}const er=[Ai,pn,Ni,Ke,Js,Vt,Cr];for(let i=0;i<er.length;i++)er[i].bucket=i;class cy{constructor(e){this.view=e,this.buckets=er.map(()=>[]),this.index=er.map(()=>0),this.reused=new Map}add(e){let t=e.constructor.bucket,n=this.buckets[t];n.length<6?n.push(e):n[this.index[t]=(this.index[t]+1)%6]=e}find(e,t,n=2){let s=e.bucket,r=this.buckets[s],o=this.index[s];for(let l=0;l<r.length;l++){let a=(l+o)%r.length,h=r[a];if((!t||t(h))&&!this.reused.has(h))return r.splice(a,1),a<o&&this.index[s]--,this.reused.set(h,n),h}return null}findWidget(e,t,n){let s=this.buckets[0];if(s.length)for(let r=0,o=0;;r++){if(r==s.length){if(o)return null;o=1,r=0}let l=s[r];if(!this.reused.has(l)&&(o==0?l.widget.compare(e):l.widget.constructor==e.constructor&&e.updateDOM(l.dom,this.view,l.widget)))return s.splice(r,1),r<this.index[0]&&this.index[0]--,l.widget==e&&l.length==t&&(l.flags&497)==n?(this.reused.set(l,1),l):(this.reused.set(l,2),new Ai(l.dom,t,e,l.flags&-498|n))}}reuse(e){return this.reused.set(e,1),e}maybeReuse(e,t=2){if(!this.reused.has(e))return this.reused.set(e,t),e.dom}clear(){for(let e=0;e<this.buckets.length;e++)this.buckets[e].length=this.index[e]=0}}class uy{constructor(e,t,n,s,r){this.view=e,this.decorations=s,this.disallowBlockEffectsFor=r,this.openWidget=!1,this.openMarks=0,this.cache=new cy(e),this.text=new hy(e.state.doc),this.builder=new ay(this.cache,new Cr(e,e.contentDOM),re.iter(n)),this.cache.reused.set(t,2),this.old=new oy(t),this.reuseWalker={skip:(o,l,a)=>{if(this.cache.add(o),o.isComposite())return!1},enter:o=>this.cache.add(o),leave:()=>{},break:()=>{}}}run(e,t){let n=t&&this.getCompositionContext(t.text);for(let s=0,r=0,o=0;;){let l=o<e.length?e[o++]:null,a=l?l.fromA:this.old.root.length;if(a>s){let h=a-s;this.preserve(h,!o,!l),s=a,r+=h}if(!l)break;t&&l.fromA<=t.range.fromA&&l.toA>=t.range.toA?(this.forward(l.fromA,t.range.fromA,t.range.fromA<t.range.toA?1:-1),this.emit(r,t.range.fromB),this.builder.flushBuffer(),this.cache.clear(),this.builder.addComposition(t,n),this.text.skip(t.range.toB-t.range.fromB),this.forward(t.range.fromA,l.toA),this.emit(t.range.toB,l.toB)):(this.forward(l.fromA,l.toA),this.emit(r,l.toB)),r=l.toB,s=l.toA}return this.builder.curLine&&this.builder.endLine(),this.builder.root}preserve(e,t,n){let s=py(this.old),r=this.openMarks;this.old.advance(e,n?1:-1,{skip:(o,l,a)=>{if(o.isWidget())if(this.openWidget)this.builder.continueWidget(a-l);else{let h=a>0||l<o.length?Ai.of(o.widget,this.view,a-l,o.flags&496,this.cache.maybeReuse(o)):this.cache.reuse(o);h.flags&256?(h.flags&=-2,this.builder.addBlockWidget(h)):(this.builder.ensureLine(null),this.builder.addInlineWidget(h,s,r),r=s.length)}else if(o.isText())this.builder.ensureLine(null),!l&&a==o.length&&!this.cache.reused.has(o)?this.builder.addText(o.text,s,r,this.cache.reuse(o)):(this.cache.add(o),this.builder.addText(o.text.slice(l,a),s,r)),r=s.length;else if(o.isLine())o.flags&=-2,this.cache.reused.set(o,1),this.builder.addLine(o);else if(o instanceof Js)this.cache.add(o);else if(o instanceof Ke)this.builder.ensureLine(null),this.builder.addMark(o,s,r),this.cache.reused.set(o,1),r=s.length;else return!1;this.openWidget=!1},enter:o=>{o.isLine()?this.builder.addLineStart(o.attrs,this.cache.maybeReuse(o)):(this.cache.add(o),o instanceof Ke&&s.unshift(o.mark)),this.openWidget=!1},leave:o=>{o.isLine()?s.length&&(s.length=r=0):o instanceof Ke&&(s.shift(),r=Math.min(r,s.length))},break:()=>{this.builder.addBreak(),this.openWidget=!1}}),this.text.skip(e)}emit(e,t){let n=null,s=this.builder,r=-1,o=re.spans(this.decorations,e,t,{point:(l,a,h,c,u,f)=>{if(h instanceof Gi){if(this.disallowBlockEffectsFor[f]){if(h.block)throw new RangeError("Block decorations may not be specified via plugins");if(a>this.view.state.doc.lineAt(l).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}if(r=c.length,u>c.length)s.continueWidget(a-l);else{let d=h.widget||(h.block?mn.block:mn.inline),m=fy(h),$=this.cache.findWidget(d,a-l,m)||Ai.of(d,this.view,a-l,m);h.block?(h.startSide>0&&s.addLineStartIfNotCovered(n),s.addBlockWidget($)):(s.ensureLine(n),s.addInlineWidget($,c,u))}n=null}else n=dy(n,h);a>l&&this.text.skip(a-l)},span:(l,a,h,c)=>{for(let u=l;u<a;){let f=this.text.next(Math.min(512,a-u));f==null?(s.addLineStartIfNotCovered(n),s.addBreak(),u++):(s.ensureLine(n),s.addText(f,h,u==l?c:h.length),u+=f.length),n=null}r=h.length}});r>-1&&(this.openWidget=o>r),this.openWidget||s.addLineStartIfNotCovered(n),this.openMarks=o}forward(e,t,n=1){t-e<=10?this.old.advance(t-e,n,this.reuseWalker):(this.old.advance(5,-1,this.reuseWalker),this.old.advance(t-e-10,-1),this.old.advance(5,n,this.reuseWalker))}getCompositionContext(e){let t=[],n=null;for(let s=e.parentNode;;s=s.parentNode){let r=Ce.get(s);if(s==this.view.contentDOM)break;r instanceof Ke?t.push(r):r!=null&&r.isLine()?n=r:r instanceof Vt||(s.nodeName=="DIV"&&!n&&s!=this.view.contentDOM?n=new pn(s,ed):n||t.push(Ke.of(new is({tagName:s.nodeName.toLowerCase(),attributes:A0(s)}),s)))}return{line:n,marks:t}}}function bh(i,e){let t=n=>{for(let s of n.children)if((e?s.isText():s.length)||t(s))return!0;return!1};return t(i)}function fy(i){let e=i.isReplace?(i.startSide<0?64:0)|(i.endSide>0?128:0):i.startSide>0?32:16;return i.block&&(e|=256),e}const ed={class:"cm-line"};function dy(i,e){let t=e.spec.attributes,n=e.spec.class;return!t&&!n||(i||(i={class:"cm-line"}),t&&Vl(t,i),n&&(i.class+=" "+n)),i}function py(i){let e=[];for(let t=i.parents.length;t>1;t--){let n=t==i.parents.length?i.tile:i.parents[t].tile;n instanceof Ke&&e.push(n.mark)}return e}function no(i){let e=Ce.get(i);return e&&e.setDOM(i.cloneNode()),i}class mn extends vr{constructor(e){super(),this.tag=e}eq(e){return e.tag==this.tag}toDOM(){return document.createElement(this.tag)}updateDOM(e){return e.nodeName.toLowerCase()==this.tag}get isHidden(){return!0}}mn.inline=new mn("span");mn.block=new mn("div");const so=new class extends vr{toDOM(){return document.createElement("br")}get isHidden(){return!0}get editable(){return!0}};class xh{constructor(e){this.view=e,this.decorations=[],this.blockWrappers=[],this.dynamicDecorationMap=[!1],this.domChanged=null,this.hasComposition=null,this.editContextFormatting=ve.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 Cr(e,e.contentDOM),this.updateInner([new ht(0,0,0,e.state.doc.length)],null)}update(e){var t;let n=e.changedRanges;this.minWidth>0&&n.length&&(n.every(({fromA:c,toA:u})=>u<this.minWidthFrom||c>this.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0),this.updateEditContextFormatting(e);let s=-1;this.view.inputState.composing>=0&&!this.view.observer.editContext&&(!((t=this.domChanged)===null||t===void 0)&&t.newSel?s=this.domChanged.newSel.head:!vy(e.changes,this.hasComposition)&&!e.selectionSet&&(s=e.state.selection.main.head));let r=s>-1?gy(this.view,e.changes,s):null;if(this.domChanged=null,this.hasComposition){let{from:c,to:u}=this.hasComposition;n=new ht(c,u,e.changes.mapPos(c,-1),e.changes.mapPos(u,1)).addToSet(n.slice())}this.hasComposition=r?{from:r.range.fromB,to:r.range.toB}:null,(A.ie||A.chrome)&&!r&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let o=this.decorations,l=this.blockWrappers;this.updateDeco();let a=yy(o,this.decorations,e.changes);a.length&&(n=ht.extendWithRanges(n,a));let h=xy(l,this.blockWrappers,e.changes);return h.length&&(n=ht.extendWithRanges(n,h)),r&&!n.some(c=>c.fromA<=r.range.fromA&&c.toA>=r.range.toA)&&(n=r.range.addToSet(n.slice())),this.tile.flags&2&&n.length==0?!1:(this.updateInner(n,r),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,t){this.view.viewState.mustMeasureContent=!0;let{observer:n}=this.view;n.ignore(()=>{if(t||e.length){let o=this.tile,l=new uy(this.view,o,this.blockWrappers,this.decorations,this.dynamicDecorationMap);t&&Ce.get(t.text)&&l.cache.reused.set(Ce.get(t.text),2),this.tile=l.run(e,t),dl(o,l.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=A.chrome||A.ios?{node:n.selectionRange.focusNode,written:!1}:void 0;this.tile.sync(r),r&&(r.written||n.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 ro&&s.push(r.dom);n.updateGaps(s)}updateEditContextFormatting(e){this.editContextFormatting=this.editContextFormatting.map(e.changes);for(let t of e.transactions)for(let n of t.effects)n.is(qf)&&(this.editContextFormatting=n.value)}updateSelection(e=!1,t=!1){(e||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let{dom:n}=this.tile,s=this.view.root.activeElement,r=s==n,o=!r&&!(this.view.state.facet(qt)||n.tabIndex>-1)&&zn(n,this.view.observer.selectionRange)&&!(s&&n.contains(s));if(!(r||t||o))return;let l=this.forceSelection;this.forceSelection=!1;let a=this.view.state.selection.main,h,c;if(a.empty?c=h=this.inlineDOMNearPos(a.anchor,a.assoc||1):(c=this.inlineDOMNearPos(a.head,a.head==a.from?1:-1),h=this.inlineDOMNearPos(a.anchor,a.anchor==a.from?1:-1)),A.gecko&&a.empty&&!this.hasComposition&&my(h)){let f=document.createTextNode("");this.view.observer.ignore(()=>h.node.insertBefore(f,h.node.childNodes[h.offset]||null)),h=c=new $t(f,0),l=!0}let u=this.view.observer.selectionRange;(l||!u.focusNode||(!Gn(h.node,h.offset,u.anchorNode,u.anchorOffset)||!Gn(c.node,c.offset,u.focusNode,u.focusOffset))&&!this.suppressWidgetCursorChange(u,a))&&(this.view.observer.ignore(()=>{A.android&&A.chrome&&n.contains(u.focusNode)&&Oy(u.focusNode,n)&&(n.blur(),n.focus({preventScroll:!0}));let f=Fn(this.view.root);if(f)if(a.empty){if(A.gecko){let d=$y(h.node,h.offset);if(d&&d!=3){let m=(d==1?Tf:Hf)(h.node,h.offset);m&&(h=new $t(m.node,m.offset))}}f.collapse(h.node,h.offset),a.bidiLevel!=null&&f.caretBidiLevel!==void 0&&(f.caretBidiLevel=a.bidiLevel)}else if(f.extend){f.collapse(h.node,h.offset);try{f.extend(c.node,c.offset)}catch{}}else{let d=document.createRange();a.anchor>a.head&&([h,c]=[c,h]),d.setEnd(c.node,c.offset),d.setStart(h.node,h.offset),f.removeAllRanges(),f.addRange(d)}o&&this.view.root.activeElement==n&&(n.blur(),s&&s.focus())}),this.view.observer.setSelectionRange(h,c)),this.impreciseAnchor=h.precise?null:new $t(u.anchorNode,u.anchorOffset),this.impreciseHead=c.precise?null:new $t(u.focusNode,u.focusOffset)}suppressWidgetCursorChange(e,t){return this.hasComposition&&t.empty&&Gn(e.focusNode,e.focusOffset,e.anchorNode,e.anchorOffset)&&this.posFromDOM(e.focusNode,e.focusOffset)==t.head}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,t=e.state.selection.main,n=Fn(e.root),{anchorNode:s,anchorOffset:r}=e.observer.selectionRange;if(!n||!t.empty||!t.assoc||!n.modify)return;let o=this.lineAt(t.head,t.assoc);if(!o)return;let l=o.posAtStart;if(t.head==l||t.head==l+o.length)return;let a=this.coordsAt(t.head,-1),h=this.coordsAt(t.head,1);if(!a||!h||a.bottom>h.top)return;let c=this.domAtPos(t.head+t.assoc,t.assoc);n.collapse(c.node,c.offset),n.modify("move",t.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let u=e.observer.selectionRange;e.docView.posFromDOM(u.anchorNode,u.anchorOffset)!=t.from&&n.collapse(s,r)}posFromDOM(e,t){let n=this.tile.nearest(e);if(!n)return this.tile.dom.compareDocumentPosition(e)&2?0:this.view.state.doc.length;let s=n.posAtStart;if(n.isComposite()){let r;if(e==n.dom)r=n.dom.childNodes[t];else{let o=ei(e)==0?0:t==0?-1:1;for(;;){let l=e.parentNode;if(l==n.dom)break;o==0&&l.firstChild!=l.lastChild&&(e==l.firstChild?o=-1:o=1),e=l}o<0?r=e:r=e.nextSibling}if(r==n.dom.firstChild)return s;for(;r&&!Ce.get(r);)r=r.nextSibling;if(!r)return s+n.length;for(let o=0,l=s;;o++){let a=n.children[o];if(a.dom==r)return l;l+=a.length+a.breakAfter}}else return n.isText()?e==n.dom?s+t:s+(t?n.length:0):s}domAtPos(e,t){let{tile:n,offset:s}=this.tile.resolveBlock(e,t);return n.isWidget()?n.domPosFor(s,t):n.domIn(s,t)}inlineDOMNearPos(e,t){let n,s=-1,r=!1,o,l=-1,a=!1;return this.tile.blockTiles((h,c)=>{if(h.isWidget()){if(h.flags&32&&c>=e)return!0;h.flags&16&&(r=!0)}else{let u=c+h.length;if(c<=e&&(n=h,s=e-c,r=u<e),u>=e&&!o&&(o=h,l=e-c,a=c>e),c>e&&o)return!0}}),!n&&!o?this.domAtPos(e,t):(r&&o?n=null:a&&n&&(o=null),n&&t<0||!o?n.domIn(s,t):o.domIn(l,t))}coordsAt(e,t,n){let{tile:s,offset:r}=this.tile.resolveBlock(e,t);return s.isWidget()?s.widget instanceof ro?null:s.coordsInWidget(r,t,!0):s.coordsIn(r,t,n)}lineAt(e,t){let{tile:n}=this.tile.resolveBlock(e,t);return n.isLine()?n:null}coordsForChar(e){let{tile:t,offset:n}=this.tile.resolveBlock(e,1);if(!t.isLine())return null;function s(r,o){if(r.isComposite())for(let l of r.children){if(l.length>=o){let a=s(l,o);if(a)return a}if(o-=l.length,o<0)break}else if(r.isText()&&o<r.length){let l=Ae(r.text,o);if(l==o)return null;let a=Zn(r.dom,o,l).getClientRects();for(let h=0;h<a.length;h++){let c=a[h];if(h==a.length-1||c.top<c.bottom&&c.left<c.right)return c}}return null}return s(t,n)}measureVisibleLineHeights(e){let t=[],{from:n,to:s}=e,r=this.view.contentDOM.clientWidth,o=r>Math.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,l=-1,a=this.view.textDirection==De.LTR,h=0,c=(u,f,d)=>{for(let m=0;m<u.children.length&&!(f>s);m++){let $=u.children[m],w=f+$.length,y=$.dom.getBoundingClientRect(),{height:x}=y;if(d&&!m&&(h+=y.top-d.top),$ instanceof Vt)w>n&&c($,f,y);else if(f>=n&&(h>0&&t.push(-h),t.push(x+h),h=0,o)){let O=$.dom.lastChild,j=O?Bs(O):[];if(j.length){let k=j[j.length-1],v=a?k.right-y.left:y.right-k.left;v>l&&(l=v,this.minWidth=r,this.minWidthFrom=f,this.minWidthTo=w)}}d&&m==u.children.length-1&&(h+=d.bottom-y.bottom),f=w+$.breakAfter}};return c(this.tile,0,null),t}textDirectionAt(e){let{tile:t}=this.tile.resolveBlock(e,1);return getComputedStyle(t.dom).direction=="rtl"?De.RTL:De.LTR}measureTextSize(){let e=this.tile.blockTiles(o=>{if(o.isLine()&&o.children.length&&o.length<=20){let l=0,a;for(let h of o.children){if(!h.isText()||/[^ -~]/.test(h.text))return;let c=Bs(h.dom);if(c.length!=1)return;l+=c[0].width,a=c[0].height}if(l)return{lineHeight:o.dom.getBoundingClientRect().height,charWidth:l/o.length,textHeight:a}}});if(e)return e;let t=document.createElement("div"),n,s,r;return t.className="cm-line",t.style.width="99999px",t.style.position="absolute",t.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.tile.dom.appendChild(t);let o=Bs(t.firstChild)[0];n=t.getBoundingClientRect().height,s=o&&o.width?o.width/27:7,r=o&&o.height?o.height:n,t.remove()}),{lineHeight:n,charWidth:s,textHeight:r}}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let n=0,s=0;;s++){let r=s==t.viewports.length?null:t.viewports[s],o=r?r.from-1:this.view.state.doc.length;if(o>n){let l=(t.lineBlockAt(o).bottom-t.lineBlockAt(n).top)/this.view.scaleY;e.push(ve.replace({widget:new ro(l),block:!0,inclusive:!0,isBlockGap:!0}).range(n,o))}if(!r)break;n=r.to+1}return ve.set(e)}updateDeco(){let e=1,t=this.view.state.facet(kr).map(r=>(this.dynamicDecorationMap[e++]=typeof r=="function")?r(this.view):r),n=!1,s=this.view.state.facet(na).map((r,o)=>{let l=typeof r=="function";return l&&(n=!0),l?r(this.view):r});for(s.length&&(this.dynamicDecorationMap[e++]=n,t.push(re.join(s))),this.decorations=[this.editContextFormatting,...t,this.computeBlockGapDeco(),this.view.viewState.lineGapDeco];e<this.decorations.length;)this.dynamicDecorationMap[e++]=!1;this.blockWrappers=this.view.state.facet(Xf).map(r=>typeof r=="function"?r(this.view):r)}scrollIntoView(e){if(e.isSnapshot){let h=this.view.viewState.lineBlockAt(e.range.head);this.view.scrollDOM.scrollTop=h.top-e.yMargin,this.view.scrollDOM.scrollLeft=e.xMargin;return}for(let h of this.view.state.facet(Zf))try{if(h(this.view,e.range,e))return!0}catch(c){zt(this.view.state,c,"scroll handler")}let{range:t}=e,n=this.coordsAt(t.head,t.assoc||(t.head>t.anchor?-1:1)),s;if(!n)return;!t.empty&&(s=this.coordsAt(t.anchor,t.anchor>t.head?-1:1))&&(n={left:Math.min(n.left,s.left),top:Math.min(n.top,s.top),right:Math.max(n.right,s.right),bottom:Math.max(n.bottom,s.bottom)});let r=Jf(this.view),o={left:n.left-r.left,top:n.top-r.top,right:n.right+r.right,bottom:n.bottom+r.bottom},{offsetWidth:l,offsetHeight:a}=this.view.scrollDOM;if(M0(this.view.scrollDOM,o,t.head<t.anchor?-1:1,e.x,e.y,Math.max(Math.min(e.xMargin,l),-l),Math.max(Math.min(e.yMargin,a),-a),this.view.textDirection==De.LTR),window.visualViewport&&window.innerHeight-window.visualViewport.height>1&&(n.top>window.visualViewport.offsetTop+window.visualViewport.height||n.bottom<window.visualViewport.offsetTop)){let h=this.view.docView.lineAt(t.head,1);if(h){let c=jf(h.dom);h.dom.scrollIntoView({block:"nearest"}),Rf(c,!1)}}}lineHasWidget(e){let t=n=>n.isWidget()||n.children.some(t);return t(this.tile.resolveBlock(e,1).tile)}destroy(){dl(this.tile)}}function dl(i,e){let t=e==null?void 0:e.get(i);if(t!=1){t==null&&i.destroy();for(let n of i.children)dl(n,e)}}function my(i){return i.node.nodeType==1&&i.node.firstChild&&(i.offset==0||i.node.childNodes[i.offset-1].contentEditable=="false")&&(i.offset==i.node.childNodes.length||i.node.childNodes[i.offset].contentEditable=="false")}function td(i,e){let t=i.observer.selectionRange;if(!t.focusNode)return null;let n=Tf(t.focusNode,t.focusOffset),s=Hf(t.focusNode,t.focusOffset),r=n||s;if(s&&n&&s.node!=n.node){let l=Ce.get(s.node);if(!l||l.isText()&&l.text!=s.node.nodeValue)r=s;else if(i.docView.lastCompositionAfterCursor){let a=Ce.get(n.node);!a||a.isText()&&a.text!=n.node.nodeValue||(r=s)}}if(i.docView.lastCompositionAfterCursor=r!=n,!r)return null;let o=e-r.offset;return{from:o,to:o+r.node.nodeValue.length,node:r.node}}function gy(i,e,t){let n=td(i,t);if(!n)return null;let{node:s,from:r,to:o}=n,l=s.nodeValue;if(/[\n\r]/.test(l)||i.state.doc.sliceString(n.from,n.to)!=l)return null;let a=e.invertedDesc;return{range:new ht(a.mapPos(r),a.mapPos(o),r,o),text:s}}function $y(i,e){return i.nodeType!=1?0:(e&&i.childNodes[e-1].contentEditable=="false"?1:0)|(e<i.childNodes.length&&i.childNodes[e].contentEditable=="false"?2:0)}let wy=class{constructor(){this.changes=[]}compareRange(e,t){on(e,t,this.changes)}comparePoint(e,t){on(e,t,this.changes)}boundChange(e){on(e,e,this.changes)}};function yy(i,e,t){let n=new wy;return re.compare(i,e,t,n),n.changes}class by{constructor(){this.changes=[]}compareRange(e,t){on(e,t,this.changes)}comparePoint(){}boundChange(e){on(e,e,this.changes)}}function xy(i,e,t){let n=new by;return re.compare(i,e,t,n),n.changes}function Oy(i,e){for(let t=i;t&&t!=e;t=t.assignedSlot||t.parentNode)if(t.nodeType==1&&t.contentEditable=="false")return!0;return!1}function vy(i,e){let t=!1;return e&&i.iterChangedRanges((n,s)=>{n<e.to&&s>e.from&&(t=!0)}),t}class ro extends vr{constructor(e){super(),this.height=e}toDOM(){let e=document.createElement("div");return e.className="cm-gap",this.updateDOM(e),e}eq(e){return e.height==this.height}updateDOM(e){return e.style.height=this.height+"px",!0}get editable(){return!0}get estimatedHeight(){return this.height}ignoreEvent(){return!1}}function ky(i,e,t=1){let n=i.charCategorizer(e),s=i.doc.lineAt(e),r=e-s.from;if(s.length==0)return Y.cursor(e);r==0?t=1:r==s.length&&(t=-1);let o=r,l=r;t<0?o=Ae(s.text,r,!1):l=Ae(s.text,r);let a=n(s.text.slice(o,l));for(;o>0;){let h=Ae(s.text,o,!1);if(n(s.text.slice(h,o))!=a)break;o=h}for(;l<s.length;){let h=Ae(s.text,l);if(n(s.text.slice(l,h))!=a)break;l=h}return Y.undirectionalRange(o+s.from,l+s.from)}function Sy(i,e,t,n,s){let r=Math.round((n-e.left)*i.defaultCharacterWidth);if(i.lineWrapping&&t.height>i.defaultLineHeight*1.5){let l=i.viewState.heightOracle.textHeight,a=Math.floor((s-t.top-(i.defaultLineHeight-l)*.5)/l);r+=a*i.viewState.heightOracle.lineLength}let o=i.state.sliceDoc(t.from,t.to);return t.from+z0(o,r,i.state.tabSize)}function Cy(i,e,t){let n=i.lineBlockAt(e);if(Array.isArray(n.type)){let s;for(let r of n.type){if(r.from>e)break;if(!(r.to<e)){if(r.from<e&&r.to>e)return r;(!s||r.type==et.Text&&(s.type!=r.type||(t<0?r.from<e:r.to>e)))&&(s=r)}}return s||n}return n}function Ey(i,e,t,n){let s=Cy(i,e.head,e.assoc||-1),r=!n||s.type!=et.Text||!(i.lineWrapping||s.widgetLineBreaks)?null:i.coordsAtPos(e.assoc<0&&e.head>s.from?e.head-1:e.head);if(r){let o=i.dom.getBoundingClientRect(),l=i.textDirectionAt(s.from),a=i.posAtCoords({x:t==(l==De.LTR)?o.right-1:o.left+1,y:(r.top+r.bottom)/2});if(a!=null)return Y.cursor(a,t?-1:1)}return Y.cursor(t?s.to:s.from,t?-1:1)}function Oh(i,e,t,n){let s=i.state.doc.lineAt(e.head),r=i.bidiSpans(s),o=i.textDirectionAt(s.from);for(let l=e,a=null;;){let h=J0(s,r,o,l,t),c=Af;if(!h){if(s.number==(t?i.state.doc.lines:1))return l;c=`
|
|
54
|
+
`,s=i.state.doc.line(s.number+(t?1:-1)),r=i.bidiSpans(s),h=i.visualLineSide(s,!t)}if(a){if(!a(c))return l}else{if(!n)return h;a=n(c)}l=h}}function Dy(i,e,t){let n=i.state.charCategorizer(e),s=n(t);return r=>{let o=n(r);return s==Ut.Space&&(s=o),s==o}}function jy(i,e,t,n){let s=e.head,r=t?1:-1;if(s==(t?i.state.doc.length:0))return Y.cursor(s,e.assoc);let o=e.goalColumn,l,a=i.contentDOM.getBoundingClientRect(),h=i.coordsAtPos(s,e.assoc||((e.empty?t:e.head==e.from)?1:-1)),c=i.documentTop;if(h)o==null&&(o=h.left-a.left),l=r<0?h.top:h.bottom;else{let m=i.viewState.lineBlockAt(s);o==null&&(o=Math.min(a.right-a.left,i.defaultCharacterWidth*(s-m.from))),l=(r<0?m.top:m.bottom)+c}let u=a.left+o,f=i.viewState.heightOracle.textHeight>>1,d=n??f;for(let m=0;;m+=f){let $=l+(d+m)*r,w=pl(i,{x:u,y:$},!1,r);if(t?$>a.bottom:$<a.top)return Y.cursor(w.pos,w.assoc);let y=i.coordsAtPos(w.pos,w.assoc),x=y?(y.top+y.bottom)/2:0;if(!y||(t?x>l:x<l))return Y.cursor(w.pos,w.assoc,void 0,o)}}function Qn(i,e,t){for(;;){let n=0;for(let s of i)s.between(e-1,e+1,(r,o,l)=>{if(e>r&&e<o){let a=n||t||(e-r<o-e?-1:1);e=a<0?r:o,n=a}});if(!n)return e}}function id(i,e){let t=null;for(let n=0;n<e.ranges.length;n++){let s=e.ranges[n],r=null;if(s.empty){let o=Qn(i,s.from,0);o!=s.from&&(r=Y.cursor(o,-1))}else{let o=Qn(i,s.from,-1),l=Qn(i,s.to,1);(o!=s.from||l!=s.to)&&(s.undirectional?r=Y.undirectionalRange(s.from,s.to):r=Y.range(s.from==s.anchor?o:l,s.from==s.head?o:l))}r&&(t||(t=e.ranges.slice()),t[n]=r)}return t?Y.create(t,e.mainIndex):e}function oo(i,e,t){let n=Qn(i.state.facet(ss).map(s=>s(i)),t.from,e.head>t.from?-1:1);return n==t.from?t:Y.cursor(n,n<t.from?1:-1)}class Ht{constructor(e,t){this.pos=e,this.assoc=t}}function pl(i,e,t,n){let s=i.contentDOM.getBoundingClientRect(),r=s.top+i.viewState.paddingTop,{x:o,y:l}=e,a=l-r,h;for(;;){if(a<0)return new Ht(0,1);if(a>i.viewState.docHeight)return new Ht(i.state.doc.length,-1);if(h=i.elementAtHeight(a),n==null)break;if(h.type==et.Text){if(n<0?h.to<i.viewport.from:h.from>i.viewport.to)break;let f=i.docView.coordsAt(n<0?h.from:h.to,n>0?-1:1);if(f&&(n<0?f.top<=a+r:f.bottom>=a+r))break}let u=i.viewState.heightOracle.textHeight/2;a=n>0?h.bottom+u:h.top-u}if(i.viewport.from>=h.to||i.viewport.to<=h.from){if(t)return null;if(h.type==et.Text){let u=Sy(i,s,h,o,l);return new Ht(u,u==h.from?1:-1)}}if(h.type!=et.Text)return a<(h.top+h.bottom)/2?new Ht(h.from,1):new Ht(h.to,-1);let c=i.docView.lineAt(h.from,2);return(!c||c.length!=h.length)&&(c=i.docView.lineAt(h.from,-2)),new Ry(i,o,l,i.textDirectionAt(h.from)).scanTile(c,h.from)}class Ry{constructor(e,t,n,s){this.view=e,this.x=t,this.y=n,this.baseDir=s,this.line=null,this.spans=null}bidiSpansAt(e){return(!this.line||this.line.from>e||this.line.to<e)&&(this.line=this.view.state.doc.lineAt(e),this.spans=this.view.bidiSpans(this.line)),this}baseDirAt(e,t){let{line:n,spans:s}=this.bidiSpansAt(e);return s[Yt.find(s,e-n.from,-1,t)].level==this.baseDir}dirAt(e,t){let{line:n,spans:s}=this.bidiSpansAt(e);return s[Yt.find(s,e-n.from,-1,t)].dir}bidiIn(e,t){let{spans:n,line:s}=this.bidiSpansAt(e);return n.length>1||n.length&&(n[0].level!=this.baseDir||n[0].to+s.from<t)}scan(e,t,n=!1){let s=0,r=e.length-1,o=new Set,l=this.bidiIn(e[0],e[r]),a,h,c=-1,u=1e9,f;e:for(;s<r;){let m=r-s,$=s+r>>1;t:if(o.has($)){for(let x=1;x<m;x++){let O=$+x;if(O>=r&&(O-=m),!o.has(O)){$=O;break t}}break e}o.add($);let w=t($),y=0;if(w)for(let x=0;x<w.length;x++){let O=w[x];if(!(O.width==0&&w.length>1))if(O.bottom<this.y)(!a||a.bottom<O.bottom)&&(a=O),y=1;else if(O.top>this.y)(!h||h.top>O.top)&&(h=O),y=-1;else{let j=O.left>this.x?this.x-O.left:O.right<this.x?this.x-O.right:0,k=Math.abs(j);k<u&&(c=$,u=k,f=O),j&&(y=j<0==(this.baseDir==De.LTR)?-1:1)}}y==-1&&(!l||this.baseDirAt(e[$],1))?r=$:y==1&&(!l||this.baseDirAt(e[$+1],-1))&&(s=$+1)}if(!f){if(!h&&!a)return{i:e[0],after:!1};let m=a&&(!h||this.y-a.bottom<h.top-this.y)?a:h;return this.y=(m.top+m.bottom)/2,this.scan(e,t,!0)}if(u&&!n){let{top:m,bottom:$}=f;if(a&&a.bottom>(m+m+$)/3)return this.y=a.bottom-1,this.scan(e,t,!0);if(h&&h.top<(m+$+$)/3)return this.y=h.top+1,this.scan(e,t,!0)}let d=(l?this.dirAt(e[c],1):this.baseDir)==De.LTR;return{i:c,after:this.x>(f.left+f.right)/2==d}}scanText(e,t){let n=[];for(let r=0;r<e.length;r=Ae(e.text,r))n.push(t+r);n.push(t+e.length);let s=this.scan(n,r=>{let o=n[r]-t,l=n[r+1]-t;return Zn(e.dom,o,l).getClientRects()});return s.after?new Ht(n[s.i+1],-1):new Ht(n[s.i],1)}scanTile(e,t){if(!e.length)return new Ht(t,1);if(e.children.length==1){let l=e.children[0];if(l.isText())return this.scanText(l,t);if(l.isComposite())return this.scanTile(l,t)}let n=[t];for(let l=0,a=t;l<e.children.length;l++)n.push(a+=e.children[l].length);let s=this.scan(n,l=>{let a=e.children[l];return a.flags&48?null:(a.dom.nodeType==1?a.dom:Zn(a.dom,0,a.length)).getClientRects()}),r=e.children[s.i],o=n[s.i];return r.isText()?this.scanText(r,o):r.isComposite()?this.scanTile(r,o):s.after?new Ht(n[s.i+1],-1):new Ht(o,1)}}const Ki="";class Ny{constructor(e,t){this.points=e,this.view=t,this.text="",this.lineSeparator=t.state.facet(ce.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=Ki}readRange(e,t){if(!e)return this;let n=e.parentNode;for(let s=e;;){this.findPointBefore(n,s);let r=this.text.length;this.readNode(s);let o=Ce.get(s),l=s.nextSibling;if(l==t){o!=null&&o.breakAfter&&!l&&n!=this.view.contentDOM&&this.lineBreak();break}let a=Ce.get(l);(o&&a?o.breakAfter:(o?o.breakAfter:Xs(s))||Xs(l)&&(s.nodeName!="BR"||o!=null&&o.isWidget())&&this.text.length>r)&&!Ty(l,t)&&this.lineBreak(),s=l}return this.findPointBefore(n,t),this}readTextNode(e){let t=e.nodeValue;for(let n of this.points)n.node==e&&(n.pos=this.text.length+Math.min(n.offset,t.length));for(let n=0,s=this.lineSeparator?null:/\r\n?|\n/g;;){let r=-1,o=1,l;if(this.lineSeparator?(r=t.indexOf(this.lineSeparator,n),o=this.lineSeparator.length):(l=s.exec(t))&&(r=l.index,o=l[0].length),this.append(t.slice(n,r<0?t.length:r)),r<0)break;if(this.lineBreak(),o>1)for(let a of this.points)a.node==e&&a.pos>this.text.length&&(a.pos-=o-1);n=r+o}}readNode(e){let t=Ce.get(e),n=t&&t.overrideDOMText;if(n!=null){this.findPointInside(e,n.length);for(let s=n.iter();!s.next().done;)s.lineBreak?this.lineBreak():this.append(s.value)}else e.nodeType==3?this.readTextNode(e):e.nodeName=="BR"?e.nextSibling&&this.lineBreak():e.nodeType==1&&this.readRange(e.firstChild,null)}findPointBefore(e,t){for(let n of this.points)n.node==e&&e.childNodes[n.offset]==t&&(n.pos=this.text.length)}findPointInside(e,t){for(let n of this.points)(e.nodeType==3?n.node==e:e.contains(n.node))&&(n.pos=this.text.length+(Py(e,n.node,n.offset)?t:0))}}function Py(i,e,t){for(;;){if(!e||t<ei(e))return!1;if(e==i)return!0;t=wi(e)+1,e=e.parentNode}}function Ty(i,e){let t;for(;!(i==e||!i);i=i.nextSibling){let n=Ce.get(i);if(!(n!=null&&n.isWidget()))return!1;n&&(t||(t=[])).push(n)}if(t)for(let n of t){let s=n.overrideDOMText;if(s!=null&&s.length)return!1}return!0}class vh{constructor(e,t){this.node=e,this.offset=t,this.pos=-1}}class Hy{constructor(e,t,n,s){this.typeOver=s,this.bounds=null,this.text="",this.domChanged=t>-1;let{impreciseHead:r,impreciseAnchor:o}=e.docView,l=e.state.selection;if(e.state.readOnly&&t>-1)this.newSel=null;else if(t>-1&&(this.bounds=nd(e.docView.tile,t,n,0))){let a=r||o?[]:zy(e),h=new Ny(a,e);h.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=h.text,this.newSel=Gy(a,this.bounds.from)}else{let a=e.observer.selectionRange,h=r&&r.node==a.focusNode&&r.offset==a.focusOffset||!al(e.contentDOM,a.focusNode)?l.main.head:e.docView.posFromDOM(a.focusNode,a.focusOffset),c=o&&o.node==a.anchorNode&&o.offset==a.anchorOffset||!al(e.contentDOM,a.anchorNode)?l.main.anchor:e.docView.posFromDOM(a.anchorNode,a.anchorOffset),u=e.viewport;if((A.ios||A.chrome)&&h!=c&&Math.min(h,c)<=l.main.from&&Math.max(h,c)>=l.main.to&&(u.from>0||u.to<e.state.doc.length)){let f=Math.min(h,c),d=Math.max(h,c),m=u.from-f,$=u.to-d;(m==0||m==1||f==0)&&($==0||$==-1||d==e.state.doc.length)&&(h=0,c=e.state.doc.length)}if(e.inputState.composing>-1&&l.ranges.length>1)this.newSel=l.replaceRange(Y.range(c,h));else if(e.lineWrapping&&c==h&&!(l.main.empty&&l.main.head==h)&&e.inputState.lastTouchTime>Date.now()-100){let f=e.coordsAtPos(h,-1),d=0;f&&(d=e.inputState.lastTouchY<=f.bottom?-1:1),this.newSel=Y.create([Y.cursor(h,d)])}else this.newSel=Y.single(c,h)}}}function nd(i,e,t,n){if(i.isComposite()){let s=-1,r=-1,o=-1,l=-1;for(let a=0,h=n,c=n;a<i.children.length;a++){let u=i.children[a],f=h+u.length;if(h<e&&f>t)return nd(u,e,t,h);if(f>=e&&s==-1&&(s=a,r=h),h>t&&u.dom.parentNode==i.dom){o=a,l=c;break}c=f,h=f+u.breakAfter}return{from:r,to:l<0?n+i.length:l,startDOM:(s?i.children[s-1].dom.nextSibling:null)||i.dom.firstChild,endDOM:o<i.children.length&&o>=0?i.children[o].dom:null}}else return i.isText()?{from:n,to:n+i.length,startDOM:i.dom,endDOM:i.dom.nextSibling}:null}function sd(i,e){let t,{newSel:n}=e,{state:s}=i,r=s.selection.main,o=i.inputState.lastKeyTime>Date.now()-100?i.inputState.lastKeyCode:-1;if(e.bounds){let{from:l,to:a}=e.bounds,h=r.from,c=null;(o===8||A.android&&e.text.length<a-l)&&(h=r.to,c="end");let u=s.doc.sliceString(l,a,Ki),f,d;!r.empty&&r.from>=l&&r.to<=a&&(e.typeOver||u!=e.text)&&u.slice(0,r.from-l)==e.text.slice(0,r.from-l)&&u.slice(r.to-l)==e.text.slice(f=e.text.length-(u.length-(r.to-l)))?t={from:r.from,to:r.to,insert:le.of(e.text.slice(r.from-l,f).split(Ki))}:(d=rd(u,e.text,h-l,c))&&(A.chrome&&o==13&&d.toB==d.from+2&&e.text.slice(d.from,d.toB)==Ki+Ki&&d.toB--,t={from:l+d.from,to:l+d.toA,insert:le.of(e.text.slice(d.from,d.toB).split(Ki))})}else n&&(!i.hasFocus&&s.facet(qt)||tr(n,r))&&(n=null);if(!t&&!n)return!1;if((A.mac||A.android)&&t&&t.from==t.to&&t.from==r.head-1&&/^\. ?$/.test(t.insert.toString())&&i.contentDOM.getAttribute("autocorrect")=="off"?(n&&t.insert.length==2&&(n=Y.single(n.main.anchor-1,n.main.head-1)),t={from:t.from,to:t.to,insert:le.of([t.insert.toString().replace("."," ")])}):s.doc.lineAt(r.from).to<r.to&&i.docView.lineHasWidget(r.to)&&i.inputState.insertingTextAt>Date.now()-50?t={from:r.from,to:r.to,insert:s.toText(i.inputState.insertingText)}:A.chrome&&t&&t.from==t.to&&t.from==r.head&&t.insert.toString()==`
|
|
55
|
+
`&&i.lineWrapping&&(n&&(n=Y.single(n.main.anchor-1,n.main.head-1)),t={from:r.from,to:r.to,insert:le.of([" "])}),t)return sa(i,t,n,o);if(n&&!tr(n,r)){let l=!1,a="select";return i.inputState.lastSelectionTime>Date.now()-50&&(i.inputState.lastSelectionOrigin=="select"&&(l=!0),a=i.inputState.lastSelectionOrigin,a=="select.pointer"&&(n=id(s.facet(ss).map(h=>h(i)),n))),i.dispatch({selection:n,scrollIntoView:l,userEvent:a}),!0}else return!1}function sa(i,e,t,n=-1){if(A.ios&&i.inputState.flushIOSKey(e))return!0;let s=i.state.selection.main;if(A.android&&(e.to==s.to&&(e.from==s.from||e.from==s.from-1&&i.state.sliceDoc(e.from,s.from)==" ")&&e.insert.length==1&&e.insert.lines==2&&ln(i.contentDOM,"Enter",13)||(e.from==s.from-1&&e.to==s.to&&e.insert.length==0||n==8&&e.insert.length<e.to-e.from&&e.to>s.head)&&ln(i.contentDOM,"Backspace",8)||e.from==s.from&&e.to==s.to+1&&e.insert.length==0&&ln(i.contentDOM,"Delete",46)))return!0;let r=e.insert.toString();i.inputState.composing>=0&&i.inputState.composing++;let o,l=()=>o||(o=Yy(i,e,t));return i.state.facet(_f).some(a=>a(i,e.from,e.to,r,l))||i.dispatch(l()),!0}function Yy(i,e,t){let n,s=i.state,r=s.selection.main,o=-1;if(e.from==e.to&&e.from<r.from||e.from>r.to){let a=e.from<r.from?-1:1,h=a<0?r.from:r.to,c=Qn(s.facet(ss).map(u=>u(i)),h,a);e.from==c&&(o=c)}if(o>-1)n={changes:e,selection:Y.cursor(e.from+e.insert.length,-1)};else if(e.from>=r.from&&e.to<=r.to&&e.to-e.from>=(r.to-r.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&i.inputState.composing<0){let a=r.from<e.from?s.sliceDoc(r.from,e.from):"",h=r.to>e.to?s.sliceDoc(e.to,r.to):"";n=s.replaceSelection(i.state.toText(a+e.insert.sliceString(0,void 0,i.state.lineBreak)+h))}else{let a=s.changes(e),h=t&&t.main.to<=a.newLength?t.main:void 0;if(s.selection.ranges.length>1&&(i.inputState.composing>=0||i.inputState.compositionPendingChange)&&e.to<=r.to+10&&e.to>=r.to-10){let c=i.state.sliceDoc(e.from,e.to),u,f=t&&td(i,t.main.head);if(f){let m=e.insert.length-(e.to-e.from);u={from:f.from,to:f.to-m}}else u=i.state.doc.lineAt(r.head);let d=r.to-e.to;n=s.changeByRange(m=>{if(m.from==r.from&&m.to==r.to)return{changes:a,range:h||m.map(a)};let $=m.to-d,w=$-c.length;if(i.state.sliceDoc(w,$)!=c||$>=u.from&&w<=u.to)return{range:m};let y=s.changes({from:w,to:$,insert:e.insert}),x=m.to-r.to;return{changes:y,range:h?Y.range(Math.max(0,h.anchor+x),Math.max(0,h.head+x)):m.map(y)}})}else n={changes:a,selection:h&&s.selection.replaceRange(h)}}let l="input.type";return(i.composing||i.inputState.compositionPendingChange&&i.inputState.compositionEndedAt>Date.now()-50)&&(i.inputState.compositionPendingChange=!1,l+=".compose",i.inputState.compositionFirstChange&&(l+=".start",i.inputState.compositionFirstChange=!1)),s.update(n,{userEvent:l,scrollIntoView:!0})}function rd(i,e,t,n){let s=Math.min(i.length,e.length),r=0;for(;r<s&&i.charCodeAt(r)==e.charCodeAt(r);)r++;if(r==s&&i.length==e.length)return null;let o=i.length,l=e.length;for(;o>0&&l>0&&i.charCodeAt(o-1)==e.charCodeAt(l-1);)o--,l--;if(n=="end"){let a=Math.max(0,r-Math.min(o,l));t-=o+a-r}if(o<r&&i.length<e.length){let a=t<=r&&t>=o?r-t:0;r-=a,l=r+(l-o),o=r}else if(l<r){let a=t<=r&&t>=l?r-t:0;r-=a,o=r+(o-l),l=r}return{from:r,toA:o,toB:l}}function zy(i){let e=[];if(i.root.activeElement!=i.contentDOM)return e;let{anchorNode:t,anchorOffset:n,focusNode:s,focusOffset:r}=i.observer.selectionRange;return t&&(e.push(new vh(t,n)),(s!=t||r!=n)&&e.push(new vh(s,r))),e}function Gy(i,e){if(i.length==0)return null;let t=i[0].pos,n=i.length==2?i[1].pos:t;return t>-1&&n>-1?Y.single(t+e,n+e):null}function tr(i,e){return e.head==i.main.head&&e.anchor==i.main.anchor}class Qy{setSelectionOrigin(e){this.lastSelectionOrigin=e,this.lastSelectionTime=Date.now()}constructor(e){this.view=e,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=e.hasFocus,A.safari&&e.contentDOM.addEventListener("input",()=>null),A.gecko&&eb(e.contentDOM.ownerDocument)}handleEvent(e){!Zy(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||(this.view.updateState!=0?Promise.resolve().then(()=>this.runHandlers(e.type,e)):this.runHandlers(e.type,e))}runHandlers(e,t){let n=this.handlers[e];if(n){for(let s of n.observers)s(this.view,t);for(let s of n.handlers){if(t.defaultPrevented)break;if(s(this.view,t)){t.preventDefault();break}}}}ensureHandlers(e){let t=By(e),n=this.handlers,s=this.view.contentDOM;for(let r in t)if(r!="scroll"){let o=!t[r].handlers.length,l=n[r];l&&o!=!l.handlers.length&&(s.removeEventListener(r,this.handleEvent),l=null),l||s.addEventListener(r,this.handleEvent,{passive:o})}for(let r in n)r!="scroll"&&!t[r]&&s.removeEventListener(r,this.handleEvent);this.handlers=t}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),e.keyCode==9&&this.tabFocusMode>-1&&(!this.tabFocusMode||Date.now()<=this.tabFocusMode))return!0;if(this.tabFocusMode>0&&e.keyCode!=27&&ld.indexOf(e.keyCode)<0&&(this.tabFocusMode=-1),A.android&&A.chrome&&!e.synthetic&&(e.keyCode==13||e.keyCode==8))return this.view.observer.delayAndroidKey(e.key,e.keyCode),!0;if(A.ios&&!e.synthetic&&!e.altKey&&!e.metaKey&&(od.some(t=>t.keyCode==e.keyCode)&&!e.ctrlKey||Wy.indexOf(e.key)>-1&&e.ctrlKey)){let t={ctrlKey:e.ctrlKey,altKey:e.altKey,metaKey:e.metaKey,shiftKey:e.shiftKey};return t.shiftKey&&A.ios&&!/^(off|none)$/.test(this.view.contentDOM.autocapitalize)&&Ay(this.view.win)&&(t.shiftKey=!1),this.pendingIOSKey={key:e.key,keyCode:e.keyCode,mods:t},setTimeout(()=>this.flushIOSKey(),250),!0}return e.keyCode!=229&&this.view.observer.forceFlush(),!1}flushIOSKey(e){let t=this.pendingIOSKey;return!t||t.key=="Enter"&&e&&e.from<e.to&&/^\S+$/.test(e.insert.toString())?!1:(this.pendingIOSKey=void 0,ln(this.view.contentDOM,t.key,t.keyCode,t.mods))}ignoreDuringComposition(e){return!/^key/.test(e.type)||e.synthetic?!1:this.composing>0?!0:A.safari&&!A.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}update(e){this.view.observer.update(e),this.mouseSelection&&this.mouseSelection.update(e),this.draggedContent&&e.docChanged&&(this.draggedContent=this.draggedContent.map(e.changes)),e.transactions.length&&(this.lastKeyCode=this.lastSelectionTime=0)}destroy(){this.mouseSelection&&this.mouseSelection.destroy()}}function Ay(i){return i.visualViewport?i.visualViewport.height*i.visualViewport.scale/i.document.documentElement.clientHeight<.85:!1}function kh(i,e){return(t,n)=>{try{return e.call(i,n,t)}catch(s){zt(t.state,s)}}}function By(i){let e=Object.create(null);function t(n){return e[n]||(e[n]={observers:[],handlers:[]})}for(let n of i){let s=n.spec,r=s&&s.plugin.domEventHandlers,o=s&&s.plugin.domEventObservers;if(r)for(let l in r){let a=r[l];a&&t(l).handlers.push(kh(n.value,a))}if(o)for(let l in o){let a=o[l];a&&t(l).observers.push(kh(n.value,a))}}for(let n in yt)t(n).handlers.push(yt[n]);for(let n in Ze)t(n).observers.push(Ze[n]);return e}const od=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],Wy="dthko",ld=[16,17,18,20,91,92,224,225],Os=6;function vs(i){return Math.max(0,i)*.7+8}function My(i,e){return Math.max(Math.abs(i.clientX-e.clientX),Math.abs(i.clientY-e.clientY))}class Ly{constructor(e,t,n,s){this.view=e,this.startEvent=t,this.style=n,this.mustSelect=s,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParents=Df(e.contentDOM),this.atoms=e.state.facet(ss).map(o=>o(e));let r=e.contentDOM.ownerDocument;r.addEventListener("mousemove",this.move=this.move.bind(this)),r.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(ce.allowMultipleSelections)&&_y(e,t),this.dragging=Fy(e,t)&&cd(t)==1?null:!1}start(e){this.dragging===!1&&this.select(e)}move(e){if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&My(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let t=0,n=0,s=0,r=0,o=this.view.win.innerWidth,l=this.view.win.innerHeight;this.scrollParents.x&&({left:s,right:o}=this.scrollParents.x.getBoundingClientRect()),this.scrollParents.y&&({top:r,bottom:l}=this.scrollParents.y.getBoundingClientRect());let a=Jf(this.view);e.clientX-a.left<=s+Os?t=-vs(s-e.clientX):e.clientX+a.right>=o-Os&&(t=vs(e.clientX-o)),e.clientY-a.top<=r+Os?n=-vs(r-e.clientY):e.clientY+a.bottom>=l-Os&&(n=vs(e.clientY-l)),this.setScrollSpeed(t,n)}up(e){this.dragging==null&&this.select(this.lastEvent),this.dragging||e.preventDefault(),this.destroy()}destroy(){this.setScrollSpeed(0,0);let e=this.view.contentDOM.ownerDocument;e.removeEventListener("mousemove",this.move),e.removeEventListener("mouseup",this.up),this.view.inputState.mouseSelection=this.view.inputState.draggedContent=null}setScrollSpeed(e,t){this.scrollSpeed={x:e,y:t},e||t?this.scrolling<0&&(this.scrolling=setInterval(()=>this.scroll(),50)):this.scrolling>-1&&(clearInterval(this.scrolling),this.scrolling=-1)}scroll(){let{x:e,y:t}=this.scrollSpeed;e&&this.scrollParents.x&&(this.scrollParents.x.scrollLeft+=e,e=0),t&&this.scrollParents.y&&(this.scrollParents.y.scrollTop+=t,t=0),(e||t)&&this.view.win.scrollBy(e,t),this.dragging===!1&&this.select(this.lastEvent)}select(e){let{view:t}=this,n=id(this.atoms,this.style.get(e,this.extend,this.multiple));(this.mustSelect||!n.eq(t.state.selection,this.dragging===!1))&&this.view.dispatch({selection:n,userEvent:"select.pointer"}),this.mustSelect=!1}update(e){e.transactions.some(t=>t.isUserEvent("input.type"))?this.destroy():this.style.update(e)&&setTimeout(()=>this.select(this.lastEvent),20)}}function _y(i,e){let t=i.state.facet(Bf);return t.length?t[0](e):A.mac?e.metaKey:e.ctrlKey}function Iy(i,e){let t=i.state.facet(Wf);return t.length?t[0](e):A.mac?!e.altKey:!e.ctrlKey}function Fy(i,e){let{main:t}=i.state.selection;if(t.empty)return!1;let n=Fn(i.root);if(!n||n.rangeCount==0)return!0;let s=n.getRangeAt(0).getClientRects();for(let r=0;r<s.length;r++){let o=s[r];if(o.left<=e.clientX&&o.right>=e.clientX&&o.top<=e.clientY&&o.bottom>=e.clientY)return!0}return!1}function Zy(i,e){if(!e.bubbles)return!0;if(e.defaultPrevented)return!1;for(let t=e.target,n;t!=i.contentDOM;t=t.parentNode)if(!t||t.nodeType==11||(n=Ce.get(t))&&n.isWidget()&&!n.isHidden&&n.widget.ignoreEvent(e))return!1;return!0}const yt=Object.create(null),Ze=Object.create(null),ad=A.ie&&A.ie_version<15||A.ios&&A.webkit_version<604;function qy(i){let e=i.dom.parentNode;if(!e)return;let t=e.appendChild(document.createElement("textarea"));t.style.cssText="position: fixed; left: -10000px; top: 10px",t.focus(),setTimeout(()=>{i.focus(),t.remove(),hd(i,t.value)},50)}function Er(i,e,t){for(let n of i.facet(e))t=n(t,i);return t}function hd(i,e){e=Er(i.state,ea,e);let{state:t}=i,n,s=1,r=t.toText(e),o=r.lines==t.selection.ranges.length;if(ml!=null&&t.selection.ranges.every(a=>a.empty)&&ml==r.toString()){let a=-1;n=t.changeByRange(h=>{let c=t.doc.lineAt(h.from);if(c.from==a)return{range:h};a=c.from;let u=t.toText((o?r.line(s++).text:e)+t.lineBreak);return{changes:{from:c.from,insert:u},range:Y.cursor(h.from+u.length)}})}else o?n=t.changeByRange(a=>{let h=r.line(s++);return{changes:{from:a.from,to:a.to,insert:h.text},range:Y.cursor(a.from+h.length)}}):n=t.replaceSelection(r);i.dispatch(n,{userEvent:"input.paste",scrollIntoView:!0})}Ze.scroll=i=>{let e=i.inputState;e.lastScrollTop=i.scrollDOM.scrollTop,e.lastScrollLeft=i.scrollDOM.scrollLeft,A.ios&&!e.touchActive&&(e.lastIOSMomentumScroll=Date.now())};Ze.wheel=Ze.mousewheel=i=>{i.inputState.lastWheelEvent=Date.now()};yt.keydown=(i,e)=>(i.inputState.setSelectionOrigin("select"),e.keyCode==27&&i.inputState.tabFocusMode!=0&&(i.inputState.tabFocusMode=Date.now()+2e3),!1);Ze.touchstart=(i,e)=>{let t=i.inputState,n=e.targetTouches[0];t.touchActive=!0,t.lastTouchTime=Date.now(),n&&(t.lastTouchX=n.clientX,t.lastTouchY=n.clientY),t.setSelectionOrigin("select.pointer")};Ze.touchmove=i=>{i.inputState.setSelectionOrigin("select.pointer")};Ze.touchend=(i,e)=>{i.inputState.touchActive=!1};yt.mousedown=(i,e)=>{if(i.observer.flush(),i.inputState.lastTouchTime>Date.now()-2e3)return!1;let t=null;for(let n of i.state.facet(Mf))if(t=n(i,e),t)break;if(!t&&e.button==0&&(t=Xy(i,e)),t){let n=!i.hasFocus;i.inputState.startMouseSelection(new Ly(i,e,t,n)),n&&i.observer.ignore(()=>{Nf(i.contentDOM);let r=i.root.activeElement;r&&!r.contains(i.contentDOM)&&r.blur()});let s=i.inputState.mouseSelection;if(s)return s.start(e),s.dragging===!1}else i.inputState.setSelectionOrigin("select.pointer");return!1};function Sh(i,e,t,n){if(n==1)return Y.cursor(e,t);if(n==2)return ky(i.state,e,t);{let s=i.docView.lineAt(e,t),r=i.state.doc.lineAt(s?s.posAtEnd:e),o=s?s.posAtStart:r.from,l=s?s.posAtEnd:r.to;return l<i.state.doc.length&&l==r.to&&l++,Y.undirectionalRange(o,l)}}const Uy=A.ie&&A.ie_version<=11;let Ch=null,Eh=0,Dh=0;function cd(i){if(!Uy)return i.detail;let e=Ch,t=Dh;return Ch=i,Dh=Date.now(),Eh=!e||t>Date.now()-400&&Math.abs(e.clientX-i.clientX)<2&&Math.abs(e.clientY-i.clientY)<2?(Eh+1)%3:1}function Xy(i,e){let t=i.posAndSideAtCoords({x:e.clientX,y:e.clientY},!1),n=cd(e),s=i.state.selection;return{update(r){r.docChanged&&(t.pos=r.changes.mapPos(t.pos),s=s.map(r.changes))},get(r,o,l){let a=i.posAndSideAtCoords({x:r.clientX,y:r.clientY},!1),h,c=Sh(i,a.pos,a.assoc,n);if(t.pos!=a.pos&&!o){let u=Sh(i,t.pos,t.assoc,n),f=Math.min(u.from,c.from),d=Math.max(u.to,c.to);c=f<c.from?Y.range(f,d,c.assoc):Y.range(d,f,c.assoc)}return o?s.replaceRange(s.main.extend(c.from,c.to,c.assoc)):l&&n==1&&s.ranges.length>1&&(h=Vy(s,a.pos))?h:l?s.addRange(c):Y.create([c])}}}function Vy(i,e){for(let t=0;t<i.ranges.length;t++){let{from:n,to:s}=i.ranges[t];if(n<=e&&s>=e)return Y.create(i.ranges.slice(0,t).concat(i.ranges.slice(t+1)),i.mainIndex==t?0:i.mainIndex-(i.mainIndex>t?1:0))}return null}yt.dragstart=(i,e)=>{let{selection:{main:t}}=i.state;if(e.target.draggable){let s=i.docView.tile.nearest(e.target);if(s&&s.isWidget()){let r=s.posAtStart,o=r+s.length;(r>=t.to||o<=t.from)&&(t=Y.undirectionalRange(r,o))}}let{inputState:n}=i;return n.mouseSelection&&(n.mouseSelection.dragging=!0),n.draggedContent=t,e.dataTransfer&&(e.dataTransfer.setData("Text",Er(i.state,ta,i.state.sliceDoc(t.from,t.to))),e.dataTransfer.effectAllowed="copyMove"),!1};yt.dragend=i=>(i.inputState.draggedContent=null,!1);function jh(i,e,t,n){if(t=Er(i.state,ea,t),!t)return;let s=i.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:r}=i.inputState,o=n&&r&&Iy(i,e)?{from:r.from,to:r.to}:null,l={from:s,insert:t},a=i.state.changes(o?[o,l]:l);i.focus(),i.dispatch({changes:a,selection:{anchor:a.mapPos(s,-1),head:a.mapPos(s,1)},userEvent:o?"move.drop":"input.drop"}),i.inputState.draggedContent=null}yt.drop=(i,e)=>{if(!e.dataTransfer)return!1;if(i.state.readOnly)return!0;let t=e.dataTransfer.files;if(t&&t.length){let n=Array(t.length),s=0,r=()=>{++s==t.length&&jh(i,e,n.filter(o=>o!=null).join(i.state.lineBreak),!1)};for(let o=0;o<t.length;o++){let l=new FileReader;l.onerror=r,l.onload=()=>{/[\x00-\x08\x0e-\x1f]{2}/.test(l.result)||(n[o]=l.result),r()},l.readAsText(t[o])}return!0}else{let n=e.dataTransfer.getData("Text");if(n)return jh(i,e,n,!0),!0}return!1};yt.paste=(i,e)=>{if(i.state.readOnly)return!0;i.observer.flush();let t=ad?null:e.clipboardData;return t?(hd(i,t.getData("text/plain")||t.getData("text/uri-list")),!0):(qy(i),!1)};function Ky(i,e){let t=i.dom.parentNode;if(!t)return;let n=t.appendChild(document.createElement("textarea"));n.style.cssText="position: fixed; left: -10000px; top: 10px",n.value=e,n.focus(),n.selectionEnd=e.length,n.selectionStart=0,setTimeout(()=>{n.remove(),i.focus()},50)}function Jy(i){let e=[],t=[],n=!1;for(let s of i.selection.ranges)s.empty||(e.push(i.sliceDoc(s.from,s.to)),t.push(s));if(!e.length){let s=-1;for(let{from:r}of i.selection.ranges){let o=i.doc.lineAt(r);o.number>s&&(e.push(o.text),t.push({from:o.from,to:Math.min(i.doc.length,o.to+1)})),s=o.number}n=!0}return{text:Er(i,ta,e.join(i.lineBreak)),ranges:t,linewise:n}}let ml=null;yt.copy=yt.cut=(i,e)=>{if(!zn(i.contentDOM,i.observer.selectionRange))return!1;let{text:t,ranges:n,linewise:s}=Jy(i.state);if(!t&&!s)return!1;ml=s?t:null,e.type=="cut"&&!i.state.readOnly&&i.dispatch({changes:n,scrollIntoView:!0,userEvent:"delete.cut"});let r=ad?null:e.clipboardData;return r?(r.clearData(),r.setData("text/plain",t),!0):(Ky(i,t),!1)};const ud=xi.define();function fd(i,e){let t=[];for(let n of i.facet(If)){let s=n(i,e);s&&t.push(s)}return t.length?i.update({effects:t,annotations:ud.of(!0)}):null}function dd(i){setTimeout(()=>{let e=i.hasFocus;if(e!=i.inputState.notifiedFocused){let t=fd(i.state,e);t?i.dispatch(t):i.update([])}},10)}Ze.focus=i=>{i.inputState.lastFocusTime=Date.now(),!i.scrollDOM.scrollTop&&(i.inputState.lastScrollTop||i.inputState.lastScrollLeft)&&(i.scrollDOM.scrollTop=i.inputState.lastScrollTop,i.scrollDOM.scrollLeft=i.inputState.lastScrollLeft),dd(i)};Ze.blur=i=>{i.observer.clearSelectionRange(),dd(i)};Ze.compositionstart=Ze.compositionupdate=i=>{i.observer.editContext||(i.inputState.compositionFirstChange==null&&(i.inputState.compositionFirstChange=!0),i.inputState.composing<0&&(i.inputState.composing=0))};Ze.compositionend=i=>{i.observer.editContext||(i.inputState.composing=-1,i.inputState.compositionEndedAt=Date.now(),i.inputState.compositionPendingKey=!0,i.inputState.compositionPendingChange=i.observer.pendingRecords().length>0,i.inputState.compositionFirstChange=null,A.chrome&&A.android?i.observer.flushSoon():i.inputState.compositionPendingChange?Promise.resolve().then(()=>i.observer.flush()):setTimeout(()=>{i.inputState.composing<0&&i.docView.hasComposition&&i.update([])},50))};Ze.contextmenu=i=>{i.inputState.lastContextMenu=Date.now()};yt.beforeinput=(i,e)=>{var t,n;if((e.inputType=="insertText"||e.inputType=="insertCompositionText")&&(i.inputState.insertingText=e.data,i.inputState.insertingTextAt=Date.now()),e.inputType=="insertReplacementText"&&i.observer.editContext){let r=(t=e.dataTransfer)===null||t===void 0?void 0:t.getData("text/plain"),o=e.getTargetRanges();if(r&&o.length){let l=o[0],a=i.posAtDOM(l.startContainer,l.startOffset),h=i.posAtDOM(l.endContainer,l.endOffset);return sa(i,{from:a,to:h,insert:i.state.toText(r)},null),!0}}let s;if(A.chrome&&A.android&&(s=od.find(r=>r.inputType==e.inputType))&&(i.observer.delayAndroidKey(s.key,s.keyCode),s.key=="Backspace"||s.key=="Delete")){let r=((n=window.visualViewport)===null||n===void 0?void 0:n.height)||0;setTimeout(()=>{var o;(((o=window.visualViewport)===null||o===void 0?void 0:o.height)||0)>r+10&&i.hasFocus&&(i.contentDOM.blur(),i.focus())},100)}return A.ios&&e.inputType=="deleteContentForward"&&i.observer.flushSoon(),A.safari&&e.inputType=="insertText"&&i.inputState.composing>=0&&setTimeout(()=>Ze.compositionend(i,e),20),!1};const Rh=new Set;function eb(i){Rh.has(i)||(Rh.add(i),i.addEventListener("copy",()=>{}),i.addEventListener("cut",()=>{}))}const Nh=["pre-wrap","normal","pre-line","break-spaces"];let gn=!1;function Ph(){gn=!1}class tb{constructor(e){this.lineWrapping=e,this.doc=le.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30}heightForGap(e,t){let n=this.doc.lineAt(t).number-this.doc.lineAt(e).number+1;return this.lineWrapping&&(n+=Math.max(0,Math.ceil((t-e-n*this.lineLength*.5)/this.lineLength))),this.lineHeight*n}heightForLine(e){return this.lineWrapping?(1+Math.max(0,Math.ceil((e-this.lineLength)/Math.max(1,this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return Nh.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let n=0;n<e.length;n++){let s=e[n];s<0?n++:this.heightSamples[Math.floor(s*10)]||(t=!0,this.heightSamples[Math.floor(s*10)]=!0)}return t}refresh(e,t,n,s,r,o){let l=Nh.indexOf(e)>-1,a=Math.abs(t-this.lineHeight)>.3||this.lineWrapping!=l;if(this.lineWrapping=l,this.lineHeight=t,this.charWidth=n,this.textHeight=s,this.lineLength=r,a){this.heightSamples={};for(let h=0;h<o.length;h++){let c=o[h];c<0?h++:this.heightSamples[Math.floor(c*10)]=!0}}return a}}class ib{constructor(e,t){this.from=e,this.heights=t,this.index=0}get more(){return this.index<this.heights.length}}class gt{constructor(e,t,n,s,r){this.from=e,this.length=t,this.top=n,this.height=s,this._content=r}get type(){return typeof this._content=="number"?et.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 Gi?this._content.widget:null}get widgetLineBreaks(){return typeof this._content=="number"?this._content:0}join(e){let t=(Array.isArray(this._content)?this._content:[this]).concat(Array.isArray(e._content)?e._content:[e]);return new gt(this.from,this.length+e.length,this.top,this.height+e.height,t)}}var ge=(function(i){return i[i.ByPos=0]="ByPos",i[i.ByHeight=1]="ByHeight",i[i.ByPosNoHeight=2]="ByPosNoHeight",i})(ge||(ge={}));const Ws=.001;class Fe{constructor(e,t,n=2){this.length=e,this.height=t,this.flags=n}get outdated(){return(this.flags&2)>0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e){this.height!=e&&(Math.abs(this.height-e)>Ws&&(gn=!0),this.height=e)}replace(e,t,n){return Fe.of(n)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,n,s){let r=this,o=n.doc;for(let l=s.length-1;l>=0;l--){let{fromA:a,toA:h,fromB:c,toB:u}=s[l],f=r.lineAt(a,ge.ByPosNoHeight,n.setDoc(t),0,0),d=f.to>=h?f:r.lineAt(h,ge.ByPosNoHeight,n,0,0);for(u+=d.to-h,h=d.to;l>0&&f.from<=s[l-1].toA;)a=s[l-1].fromA,c=s[l-1].fromB,l--,a<f.from&&(f=r.lineAt(a,ge.ByPosNoHeight,n,0,0));c+=f.from-a,a=f.from;let m=ra.build(n.setDoc(o),e,c,u);r=ir(r,r.replace(a,h,m))}return r.updateHeight(n,0)}static empty(){return new st(0,0,0)}static of(e){if(e.length==1)return e[0];let t=0,n=e.length,s=0,r=0;for(;;)if(t==n)if(s>r*2){let l=e[t-1];l.break?e.splice(--t,1,l.left,null,l.right):e.splice(--t,1,l.left,l.right),n+=1+l.break,s-=l.size}else if(r>s*2){let l=e[n];l.break?e.splice(n,1,l.left,null,l.right):e.splice(n,1,l.left,l.right),n+=2+l.break,r-=l.size}else break;else if(s<r){let l=e[t++];l&&(s+=l.size)}else{let l=e[--n];l&&(r+=l.size)}let o=0;return e[t-1]==null?(o=1,t--):e[t]==null&&(o=1,n++),new sb(Fe.of(e.slice(0,t)),o,Fe.of(e.slice(n)))}}function ir(i,e){return i==e?i:(i.constructor!=e.constructor&&(gn=!0),e)}Fe.prototype.size=1;const nb=ve.replace({});class pd extends Fe{constructor(e,t,n){super(e,t),this.deco=n,this.spaceAbove=0}mainBlock(e,t){return new gt(t,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.deco||0)}blockAt(e,t,n,s){return this.spaceAbove&&e<n+this.spaceAbove?new gt(s,0,n,this.spaceAbove,nb):this.mainBlock(n,s)}lineAt(e,t,n,s,r){let o=this.mainBlock(s,r);return this.spaceAbove?this.blockAt(0,n,s,r).join(o):o}forEachLine(e,t,n,s,r,o){e<=r+this.length&&t>=r&&o(this.lineAt(0,ge.ByPos,n,s,r))}setMeasuredHeight(e){let t=e.heights[e.index++];t<0?(this.spaceAbove=-t,t=e.heights[e.index++]):this.spaceAbove=0,this.setHeight(t)}updateHeight(e,t=0,n=!1,s){return s&&s.from<=t&&s.more&&this.setMeasuredHeight(s),this.outdated=!1,this}toString(){return`block(${this.length})`}}class st extends pd{constructor(e,t,n){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0,this.spaceAbove=n}mainBlock(e,t){return new gt(t,this.length,e+this.spaceAbove,this.height-this.spaceAbove,this.breaks)}replace(e,t,n){let s=n[0];return n.length==1&&(s instanceof st||s instanceof Ge&&s.flags&4)&&Math.abs(this.length-s.length)<10?(s instanceof Ge?s=new st(s.length,this.height,this.spaceAbove):s.height=this.height,this.outdated||(s.outdated=!1),s):Fe.of(n)}updateHeight(e,t=0,n=!1,s){return s&&s.from<=t&&s.more?this.setMeasuredHeight(s):(n||this.outdated)&&(this.spaceAbove=0,this.setHeight(Math.max(this.widgetHeight,e.heightForLine(this.length-this.collapsed))+this.breaks*e.lineHeight)),this.outdated=!1,this}toString(){return`line(${this.length}${this.collapsed?-this.collapsed:""}${this.widgetHeight?":"+this.widgetHeight:""})`}}class Ge extends Fe{constructor(e){super(e,0)}heightMetrics(e,t){let n=e.doc.lineAt(t).number,s=e.doc.lineAt(t+this.length).number,r=s-n+1,o,l=0;if(e.lineWrapping){let a=Math.min(this.height,e.lineHeight*r);o=a/r,this.length>r+1&&(l=(this.height-a)/(this.length-r-1))}else o=this.height/r;return{firstLine:n,lastLine:s,perLine:o,perChar:l}}blockAt(e,t,n,s){let{firstLine:r,lastLine:o,perLine:l,perChar:a}=this.heightMetrics(t,s);if(t.lineWrapping){let h=s+(e<t.lineHeight?0:Math.round(Math.max(0,Math.min(1,(e-n)/this.height))*this.length)),c=t.doc.lineAt(h),u=l+c.length*a,f=Math.max(n,e-u/2);return new gt(c.from,c.length,f,u,0)}else{let h=Math.max(0,Math.min(o-r,Math.floor((e-n)/l))),{from:c,length:u}=t.doc.line(r+h);return new gt(c,u,n+l*h,l,0)}}lineAt(e,t,n,s,r){if(t==ge.ByHeight)return this.blockAt(e,n,s,r);if(t==ge.ByPosNoHeight){let{from:d,to:m}=n.doc.lineAt(e);return new gt(d,m-d,0,0,0)}let{firstLine:o,perLine:l,perChar:a}=this.heightMetrics(n,r),h=n.doc.lineAt(e),c=l+h.length*a,u=h.number-o,f=s+l*u+a*(h.from-r-u);return new gt(h.from,h.length,Math.max(s,Math.min(f,s+this.height-c)),c,0)}forEachLine(e,t,n,s,r,o){e=Math.max(e,r),t=Math.min(t,r+this.length);let{firstLine:l,perLine:a,perChar:h}=this.heightMetrics(n,r);for(let c=e,u=s;c<=t;){let f=n.doc.lineAt(c);if(c==e){let m=f.number-l;u+=a*m+h*(e-r-m)}let d=a+h*f.length;o(new gt(f.from,f.length,u,d,0)),u+=d,c=f.to+1}}replace(e,t,n){let s=this.length-t;if(s>0){let r=n[n.length-1];r instanceof Ge?n[n.length-1]=new Ge(r.length+s):n.push(null,new Ge(s-1))}if(e>0){let r=n[0];r instanceof Ge?n[0]=new Ge(e+r.length):n.unshift(new Ge(e-1),null)}return Fe.of(n)}decomposeLeft(e,t){t.push(new Ge(e-1),null)}decomposeRight(e,t){t.push(null,new Ge(this.length-e-1))}updateHeight(e,t=0,n=!1,s){let r=t+this.length;if(s&&s.from<=t+this.length&&s.more){let o=[],l=Math.max(t,s.from),a=-1;for(s.from>t&&o.push(new Ge(s.from-t-1).updateHeight(e,t));l<=r&&s.more;){let c=e.doc.lineAt(l).length;o.length&&o.push(null);let u=s.heights[s.index++],f=0;u<0&&(f=-u,u=s.heights[s.index++]),a==-1?a=u:Math.abs(u-a)>=Ws&&(a=-2);let d=new st(c,u,f);d.outdated=!1,o.push(d),l+=c+1}l<=r&&o.push(null,new Ge(r-l).updateHeight(e,l));let h=Fe.of(o);return(a<0||Math.abs(h.height-this.height)>=Ws||Math.abs(a-this.heightMetrics(e,t).perLine)>=Ws)&&(gn=!0),ir(this,h)}else(n||this.outdated)&&(this.setHeight(e.heightForGap(t,t+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}}class sb extends Fe{constructor(e,t,n){super(e.length+t+n.length,e.height+n.height,t|(e.outdated||n.outdated?2:0)),this.left=e,this.right=n,this.size=e.size+n.size}get break(){return this.flags&1}blockAt(e,t,n,s){let r=n+this.left.height;return e<r?this.left.blockAt(e,t,n,s):this.right.blockAt(e,t,r,s+this.left.length+this.break)}lineAt(e,t,n,s,r){let o=s+this.left.height,l=r+this.left.length+this.break,a=t==ge.ByHeight?e<o:e<l,h=a?this.left.lineAt(e,t,n,s,r):this.right.lineAt(e,t,n,o,l);if(this.break||(a?h.to<l:h.from>l))return h;let c=t==ge.ByPosNoHeight?ge.ByPosNoHeight:ge.ByPos;return a?h.join(this.right.lineAt(l,c,n,o,l)):this.left.lineAt(l,c,n,s,r).join(h)}forEachLine(e,t,n,s,r,o){let l=s+this.left.height,a=r+this.left.length+this.break;if(this.break)e<a&&this.left.forEachLine(e,t,n,s,r,o),t>=a&&this.right.forEachLine(e,t,n,l,a,o);else{let h=this.lineAt(a,ge.ByPos,n,s,r);e<h.from&&this.left.forEachLine(e,h.from-1,n,s,r,o),h.to>=e&&h.from<=t&&o(h),t>h.to&&this.right.forEachLine(h.to+1,t,n,l,a,o)}}replace(e,t,n){let s=this.left.length+this.break;if(t<s)return this.balanced(this.left.replace(e,t,n),this.right);if(e>this.left.length)return this.balanced(this.left,this.right.replace(e-s,t-s,n));let r=[];e>0&&this.decomposeLeft(e,r);let o=r.length;for(let l of n)r.push(l);if(e>0&&Th(r,o-1),t<this.length){let l=r.length;this.decomposeRight(t,r),Th(r,l)}return Fe.of(r)}decomposeLeft(e,t){let n=this.left.length;if(e<=n)return this.left.decomposeLeft(e,t);t.push(this.left),this.break&&(n++,e>=n&&t.push(null)),e>n&&this.right.decomposeLeft(e-n,t)}decomposeRight(e,t){let n=this.left.length,s=n+this.break;if(e>=s)return this.right.decomposeRight(e-s,t);e<n&&this.left.decomposeRight(e,t),this.break&&e<s&&t.push(null),t.push(this.right)}balanced(e,t){return e.size>2*t.size||t.size>2*e.size?Fe.of(this.break?[e,null,t]:[e,t]):(this.left=ir(this.left,e),this.right=ir(this.right,t),this.setHeight(e.height+t.height),this.outdated=e.outdated||t.outdated,this.size=e.size+t.size,this.length=e.length+this.break+t.length,this)}updateHeight(e,t=0,n=!1,s){let{left:r,right:o}=this,l=t+r.length+this.break,a=null;return s&&s.from<=t+r.length&&s.more?a=r=r.updateHeight(e,t,n,s):r.updateHeight(e,t,n),s&&s.from<=l+o.length&&s.more?a=o=o.updateHeight(e,l,n,s):o.updateHeight(e,l,n),a?this.balanced(r,o):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}}function Th(i,e){let t,n;i[e]==null&&(t=i[e-1])instanceof Ge&&(n=i[e+1])instanceof Ge&&i.splice(e-1,3,new Ge(t.length+1+n.length))}const rb=5;class ra{constructor(e,t){this.pos=e,this.oracle=t,this.nodes=[],this.lineStart=-1,this.lineEnd=-1,this.covering=null,this.writtenTo=e}get isCovered(){return this.covering&&this.nodes[this.nodes.length-1]==this.covering}span(e,t){if(this.lineStart>-1){let n=Math.min(t,this.lineEnd),s=this.nodes[this.nodes.length-1];s instanceof st?s.length+=n-this.pos:(n>this.pos||!this.isCovered)&&this.nodes.push(new st(n-this.pos,-1,0)),this.writtenTo=n,t>n&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,n){if(e<t||n.heightRelevant){let s=n.widget?n.widget.estimatedHeight:0,r=n.widget?n.widget.lineBreaks:0;s<0&&(s=this.oracle.lineHeight);let o=t-e;n.block?this.addBlock(new pd(o,s,n)):(o||r||s>=rb)&&this.addLineDeco(s,r,o)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd<this.pos&&(this.lineEnd=this.oracle.doc.lineAt(this.pos).to)}enterLine(){if(this.lineStart>-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenTo<e&&((this.writtenTo<e-1||this.nodes[this.nodes.length-1]==null)&&this.nodes.push(this.blankContent(this.writtenTo,e-1)),this.nodes.push(null)),this.pos>e&&this.nodes.push(new st(this.pos-e,-1,0)),this.writtenTo=this.pos}blankContent(e,t){let n=new Ge(t-e);return this.oracle.doc.lineAt(e).to==t&&(n.flags|=4),n}ensureLine(){this.enterLine();let e=this.nodes.length?this.nodes[this.nodes.length-1]:null;if(e instanceof st)return e;let t=new st(0,-1,0);return this.nodes.push(t),t}addBlock(e){this.enterLine();let t=e.deco;t&&t.startSide>0&&!this.isCovered&&this.ensureLine(),this.nodes.push(e),this.writtenTo=this.pos=this.pos+e.length,t&&t.endSide>0&&(this.covering=e)}addLineDeco(e,t,n){let s=this.ensureLine();s.length+=n,s.collapsed+=n,s.widgetHeight=Math.max(s.widgetHeight,e),s.breaks+=t,this.writtenTo=this.pos=this.pos+n}finish(e){let t=this.nodes.length==0?null:this.nodes[this.nodes.length-1];this.lineStart>-1&&!(t instanceof st)&&!this.isCovered?this.nodes.push(new st(0,-1,0)):(this.writtenTo<this.pos||t==null)&&this.nodes.push(this.blankContent(this.writtenTo,this.pos));let n=e;for(let s of this.nodes)s instanceof st&&s.updateHeight(this.oracle,n),n+=s?s.length:1;return this.nodes}static build(e,t,n,s){let r=new ra(n,e);return re.spans(t,n,s,r,0),r.finish(n)}}function ob(i,e,t){let n=new lb;return re.compare(i,e,t,n,0),n.changes}class lb{constructor(){this.changes=[]}compareRange(){}comparePoint(e,t,n,s){(e<t||n&&n.heightRelevant||s&&s.heightRelevant)&&on(e,t,this.changes,5)}}function ab(i,e){let t=i.getBoundingClientRect(),n=i.ownerDocument,s=n.defaultView||window,r=Math.max(0,t.left),o=Math.min(s.innerWidth,t.right),l=Math.max(0,t.top),a=Math.min(s.innerHeight,t.bottom);for(let h=i.parentNode;h&&h!=n.body;)if(h.nodeType==1){let c=h,u=window.getComputedStyle(c);if((c.scrollHeight>c.clientHeight||c.scrollWidth>c.clientWidth)&&u.overflow!="visible"){let f=c.getBoundingClientRect();r=Math.max(r,f.left),o=Math.min(o,f.right),l=Math.max(l,f.top),a=Math.min(h==i.parentNode?s.innerHeight:a,f.bottom)}h=u.position=="absolute"||u.position=="fixed"?c.offsetParent:c.parentNode}else if(h.nodeType==11)h=h.host;else break;return{left:r-t.left,right:Math.max(r,o)-t.left,top:l-(t.top+e),bottom:Math.max(l,a)-(t.top+e)}}function hb(i){let e=i.getBoundingClientRect(),t=i.ownerDocument.defaultView||window;return e.left<t.innerWidth&&e.right>0&&e.top<t.innerHeight&&e.bottom>0}function cb(i,e){let t=i.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}class lo{constructor(e,t,n,s){this.from=e,this.to=t,this.size=n,this.displaySize=s}static same(e,t){if(e.length!=t.length)return!1;for(let n=0;n<e.length;n++){let s=e[n],r=t[n];if(s.from!=r.from||s.to!=r.to||s.size!=r.size)return!1}return!0}draw(e,t){return ve.replace({widget:new ub(this.displaySize*(t?e.scaleY:e.scaleX),t)}).range(this.from,this.to)}}class ub extends vr{constructor(e,t){super(),this.size=e,this.vertical=t}eq(e){return e.size==this.size&&e.vertical==this.vertical}toDOM(){let e=document.createElement("div");return this.vertical?e.style.height=this.size+"px":(e.style.width=this.size+"px",e.style.height="2px",e.style.display="inline-block"),e}get estimatedHeight(){return this.vertical?this.size:-1}}class Hh{constructor(e,t){this.view=e,this.state=t,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=Yh,this.scrollTarget=null,this.printing=!1,this.mustMeasureContent=!0,this.defaultTextDirection=De.LTR,this.visibleRanges=[],this.mustEnforceCursorAssoc=!1;let n=t.facet(ia).some(s=>typeof s!="function"&&s.class=="cm-lineWrapping");this.heightOracle=new tb(n),this.stateDeco=zh(t),this.heightMap=Fe.empty().applyChanges(this.stateDeco,le.empty,this.heightOracle.setDoc(t.doc),[new ht(0,0,0,t.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=ve.set(this.lineGaps.map(s=>s.draw(this,!1))),this.scrollParent=e.scrollDOM,this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let n=0;n<=1;n++){let s=n?t.head:t.anchor;if(!e.some(({from:r,to:o})=>s>=r&&s<=o)){let{from:r,to:o}=this.lineBlockAt(s);e.push(new ks(r,o))}}return this.viewports=e.sort((n,s)=>n.from-s.from),this.updateScaler()}updateScaler(){let e=this.scaler;return this.scaler=this.heightMap.height<=7e6?Yh:new oa(this.heightOracle,this.heightMap,this.viewports),e.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,e=>{this.viewportLines.push(Tn(e,this.scaler))})}update(e,t=null){this.state=e.state;let n=this.stateDeco;this.stateDeco=zh(this.state);let s=e.changedRanges,r=ht.extendWithRanges(s,ob(n,this.stateDeco,e?e.changes:Pe.empty(this.state.doc.length))),o=this.heightMap.height,l=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollOffset);Ph(),this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),r),(this.heightMap.height!=o||gn)&&(e.flags|=2),l?(this.scrollAnchorPos=e.changes.mapPos(l.from,-1),this.scrollAnchorHeight=l.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=o);let a=r.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.head<a.from||t.range.head>a.to)||!this.viewportIsAppropriate(a))&&(a=this.getViewport(0,t));let h=a.from!=this.viewport.from||a.to!=this.viewport.to;this.viewport=a,e.flags|=this.updateForViewport(),(h||!e.changes.empty||e.flags&2)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(this.mapLineGaps(this.lineGaps,e.changes))),e.flags|=this.computeVisibleRanges(e.changes),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&(e.selectionSet||e.focusChanged)&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(ty)&&(this.mustEnforceCursorAssoc=!0)}measure(){let{view:e}=this,t=e.contentDOM,n=window.getComputedStyle(t),s=this.heightOracle,r=n.whiteSpace;this.defaultTextDirection=n.direction=="rtl"?De.RTL:De.LTR;let o=this.heightOracle.mustRefreshForWrapping(r)||this.mustMeasureContent==="refresh",l=t.getBoundingClientRect(),a=o||this.mustMeasureContent||this.contentDOMHeight!=l.height;this.contentDOMHeight=l.height,this.mustMeasureContent=!1;let h=0,c=0;if(l.width&&l.height){let{scaleX:k,scaleY:v}=Ef(t,l);(k>.005&&Math.abs(this.scaleX-k)>.005||v>.005&&Math.abs(this.scaleY-v)>.005)&&(this.scaleX=k,this.scaleY=v,h|=16,o=a=!0)}let u=(parseInt(n.paddingTop)||0)*this.scaleY,f=(parseInt(n.paddingBottom)||0)*this.scaleY;(this.paddingTop!=u||this.paddingBottom!=f)&&(this.paddingTop=u,this.paddingBottom=f,h|=18),this.editorWidth!=e.scrollDOM.clientWidth&&(s.lineWrapping&&(a=!0),this.editorWidth=e.scrollDOM.clientWidth,h|=16);let d=Df(this.view.contentDOM,!1).y;d!=this.scrollParent&&(this.scrollParent=d,this.scrollAnchorHeight=-1,this.scrollOffset=0);let m=this.getScrollOffset();this.scrollOffset!=m&&(this.scrollAnchorHeight=-1,this.scrollOffset=m),this.scrolledToBottom=Pf(this.scrollParent||e.win);let $=(this.printing?cb:ab)(t,this.paddingTop),w=$.top-this.pixelViewport.top,y=$.bottom-this.pixelViewport.bottom;this.pixelViewport=$;let x=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(x!=this.inView&&(this.inView=x,x&&(a=!0)),!this.inView&&!this.scrollTarget&&!hb(e.dom))return 0;let O=l.width;if((this.contentDOMWidth!=O||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=l.width,this.editorHeight=e.scrollDOM.clientHeight,h|=16),a){let k=e.docView.measureVisibleLineHeights(this.viewport);if(s.mustRefreshForHeights(k)&&(o=!0),o||s.lineWrapping&&Math.abs(O-this.contentDOMWidth)>s.charWidth){let{lineHeight:v,charWidth:b,textHeight:D}=e.docView.measureTextSize();o=v>0&&s.refresh(r,v,b,D,Math.max(5,O/b),k),o&&(e.docView.minWidth=0,h|=16)}w>0&&y>0?c=Math.max(w,y):w<0&&y<0&&(c=Math.min(w,y)),Ph();for(let v of this.viewports){let b=v.from==this.viewport.from?k:e.docView.measureVisibleLineHeights(v);this.heightMap=(o?Fe.empty().applyChanges(this.stateDeco,le.empty,this.heightOracle,[new ht(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(s,0,o,new ib(v.from,b))}gn&&(h|=2)}let j=!this.viewportIsAppropriate(this.viewport,c)||this.scrollTarget&&(this.scrollTarget.range.head<this.viewport.from||this.scrollTarget.range.head>this.viewport.to);return j&&(h&2&&(h|=this.updateScaler()),this.viewport=this.getViewport(c,this.scrollTarget),h|=this.updateForViewport()),(h&2||j)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(o?[]:this.lineGaps,e)),h|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),h}get visibleTop(){return this.scaler.fromDOM(this.pixelViewport.top)}get visibleBottom(){return this.scaler.fromDOM(this.pixelViewport.bottom)}getViewport(e,t){let n=.5-Math.max(-.5,Math.min(.5,e/1e3/2)),s=this.heightMap,r=this.heightOracle,{visibleTop:o,visibleBottom:l}=this,a=new ks(s.lineAt(o-n*1e3,ge.ByHeight,r,0,0).from,s.lineAt(l+(1-n)*1e3,ge.ByHeight,r,0,0).to);if(t){let{head:h}=t.range;if(h<a.from||h>a.to){let c=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),u=s.lineAt(h,ge.ByPos,r,0,0),f;t.y=="center"?f=(u.top+u.bottom)/2-c/2:t.y=="start"||t.y=="nearest"&&h<a.from?f=u.top:f=u.bottom-c,a=new ks(s.lineAt(f-1e3/2,ge.ByHeight,r,0,0).from,s.lineAt(f+c+1e3/2,ge.ByHeight,r,0,0).to)}}return a}mapViewport(e,t){let n=t.mapPos(e.from,-1),s=t.mapPos(e.to,1);return new ks(this.heightMap.lineAt(n,ge.ByPos,this.heightOracle,0,0).from,this.heightMap.lineAt(s,ge.ByPos,this.heightOracle,0,0).to)}viewportIsAppropriate({from:e,to:t},n=0){if(!this.inView)return!0;let{top:s}=this.heightMap.lineAt(e,ge.ByPos,this.heightOracle,0,0),{bottom:r}=this.heightMap.lineAt(t,ge.ByPos,this.heightOracle,0,0),{visibleTop:o,visibleBottom:l}=this;return(e==0||s<=o-Math.max(10,Math.min(-n,250)))&&(t==this.state.doc.length||r>=l+Math.max(10,Math.min(n,250)))&&s>o-2*1e3&&r<l+2*1e3}mapLineGaps(e,t){if(!e.length||t.empty)return e;let n=[];for(let s of e)t.touchesRange(s.from,s.to)||n.push(new lo(t.mapPos(s.from),t.mapPos(s.to),s.size,s.displaySize));return n}ensureLineGaps(e,t){let n=this.heightOracle.lineWrapping,s=n?1e4:2e3,r=s>>1,o=s<<1;if(this.defaultTextDirection!=De.LTR&&!n)return[];let l=[],a=(c,u,f,d)=>{if(u-c<r)return;let m=this.state.selection.main,$=[m.from];m.empty||$.push(m.to);for(let y of $)if(y>c&&y<u){a(c,y-10,f,d),a(y+10,u,f,d);return}let w=db(e,y=>y.from>=f.from&&y.to<=f.to&&Math.abs(y.from-c)<r&&Math.abs(y.to-u)<r&&!$.some(x=>y.from<x&&y.to>x));if(!w){if(u<f.to&&t&&n&&t.visibleRanges.some(O=>O.from<=u&&O.to>=u)){let O=t.moveToLineBoundary(Y.cursor(u),!1,!0).head;O>c&&(u=O)}let y=this.gapSize(f,c,u,d),x=n||y<2e6?y:2e6;w=new lo(c,u,y,x)}l.push(w)},h=c=>{if(c.length<o||c.type!=et.Text)return;let u=fb(c.from,c.to,this.stateDeco);if(u.total<o)return;let f=this.scrollTarget?this.scrollTarget.range.head:null,d,m;if(n){let $=s/this.heightOracle.lineLength*this.heightOracle.lineHeight,w,y;if(f!=null){let x=Cs(u,f),O=((this.visibleBottom-this.visibleTop)/2+$)/c.height;w=x-O,y=x+O}else w=(this.visibleTop-c.top-$)/c.height,y=(this.visibleBottom-c.top+$)/c.height;d=Ss(u,w),m=Ss(u,y)}else{let $=u.total*this.heightOracle.charWidth,w=s*this.heightOracle.charWidth,y=0;if($>2e6)for(let v of e)v.from>=c.from&&v.from<c.to&&v.size!=v.displaySize&&v.from*this.heightOracle.charWidth+y<this.pixelViewport.left&&(y=v.size-v.displaySize);let x=this.pixelViewport.left+y,O=this.pixelViewport.right+y,j,k;if(f!=null){let v=Cs(u,f),b=((O-x)/2+w)/$;j=v-b,k=v+b}else j=(x-w)/$,k=(O+w)/$;d=Ss(u,j),m=Ss(u,k)}d>c.from&&a(c.from,d,c,u),m<c.to&&a(m,c.to,c,u)};for(let c of this.viewportLines)Array.isArray(c.type)?c.type.forEach(h):h(c);return l}gapSize(e,t,n,s){let r=Cs(s,n)-Cs(s,t);return this.heightOracle.lineWrapping?e.height*r:s.total*this.heightOracle.charWidth*r}updateLineGaps(e){lo.same(e,this.lineGaps)||(this.lineGaps=e,this.lineGapDeco=ve.set(e.map(t=>t.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(e){let t=this.stateDeco;this.lineGaps.length&&(t=t.concat(this.lineGapDeco));let n=[];re.spans(t,this.viewport.from,this.viewport.to,{span(r,o){n.push({from:r,to:o})},point(){}},20);let s=0;if(n.length!=this.visibleRanges.length)s=12;else for(let r=0;r<n.length&&!(s&8);r++){let o=this.visibleRanges[r],l=n[r];(o.from!=l.from||o.to!=l.to)&&(s|=4,e&&e.mapPos(o.from,-1)==l.from&&e.mapPos(o.to,1)==l.to||(s|=8))}return this.visibleRanges=n,s}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||Tn(this.heightMap.lineAt(e,ge.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return e>=this.viewportLines[0].top&&e<=this.viewportLines[this.viewportLines.length-1].bottom&&this.viewportLines.find(t=>t.top<=e&&t.bottom>=e)||Tn(this.heightMap.lineAt(this.scaler.fromDOM(e),ge.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(e){let t=this.lineBlockAtHeight(e+8);return t.from>=this.viewport.from||this.viewportLines[0].top-e>200?t:this.viewportLines[0]}elementAtHeight(e){return Tn(this.heightMap.blockAt(this.scaler.fromDOM(e),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 ks{constructor(e,t){this.from=e,this.to=t}}function fb(i,e,t){let n=[],s=i,r=0;return re.spans(t,i,e,{span(){},point(o,l){o>s&&(n.push({from:s,to:o}),r+=o-s),s=l}},20),s<e&&(n.push({from:s,to:e}),r+=e-s),{total:r,ranges:n}}function Ss({total:i,ranges:e},t){if(t<=0)return e[0].from;if(t>=1)return e[e.length-1].to;let n=Math.floor(i*t);for(let s=0;;s++){let{from:r,to:o}=e[s],l=o-r;if(n<=l)return r+n;n-=l}}function Cs(i,e){let t=0;for(let{from:n,to:s}of i.ranges){if(e<=s){t+=e-n;break}t+=s-n}return t/i.total}function db(i,e){for(let t of i)if(e(t))return t}const Yh={toDOM(i){return i},fromDOM(i){return i},scale:1,eq(i){return i==this}};function zh(i){let e=i.facet(kr).filter(n=>typeof n!="function"),t=i.facet(na).filter(n=>typeof n!="function");return t.length&&e.push(re.join(t)),e}class oa{constructor(e,t,n){let s=0,r=0,o=0;this.viewports=n.map(({from:l,to:a})=>{let h=t.lineAt(l,ge.ByPos,e,0,0).top,c=t.lineAt(a,ge.ByPos,e,0,0).bottom;return s+=c-h,{from:l,to:a,top:h,bottom:c,domTop:0,domBottom:0}}),this.scale=(7e6-s)/(t.height-s);for(let l of this.viewports)l.domTop=o+(l.top-r)*this.scale,o=l.domBottom=l.domTop+(l.bottom-l.top),r=l.bottom}toDOM(e){for(let t=0,n=0,s=0;;t++){let r=t<this.viewports.length?this.viewports[t]:null;if(!r||e<r.top)return s+(e-n)*this.scale;if(e<=r.bottom)return r.domTop+(e-r.top);n=r.bottom,s=r.domBottom}}fromDOM(e){for(let t=0,n=0,s=0;;t++){let r=t<this.viewports.length?this.viewports[t]:null;if(!r||e<r.domTop)return n+(e-s)/this.scale;if(e<=r.domBottom)return r.top+(e-r.domTop);n=r.bottom,s=r.domBottom}}eq(e){return e instanceof oa?this.scale==e.scale&&this.viewports.length==e.viewports.length&&this.viewports.every((t,n)=>t.from==e.viewports[n].from&&t.to==e.viewports[n].to):!1}}function Tn(i,e){if(e.scale==1)return i;let t=e.toDOM(i.top),n=e.toDOM(i.bottom);return new gt(i.from,i.length,t,n-t,Array.isArray(i._content)?i._content.map(s=>Tn(s,e)):i._content)}const Es=I.define({combine:i=>i.join(" ")}),gl=I.define({combine:i=>i.indexOf(!0)>-1}),$l=$i.newName(),md=$i.newName(),gd=$i.newName(),$d={"&light":"."+md,"&dark":"."+gd};function wl(i,e,t){return new $i(e,{finish(n){return/&/.test(n)?n.replace(/&\w*/,s=>{if(s=="&")return i;if(!t||!t[s])throw new RangeError(`Unsupported selector: ${s}`);return t[s]}):i+" "+n}})}const pb=wl("."+$l,{"&":{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"},".cm-panels-top":{top:"0"},".cm-panels-bottom":{bottom:"0"},"&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"}},$d),mb={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},ao=A.ie&&A.ie_version<=11;class gb{constructor(e){this.view=e,this.active=!1,this.editContext=null,this.selectionRange=new L0,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=e.contentDOM,this.observer=new MutationObserver(t=>{for(let n of t)this.queue.push(n);(A.ie&&A.ie_version<=11||A.ios&&e.composing)&&t.some(n=>n.type=="childList"&&n.removedNodes.length||n.type=="characterData"&&n.oldValue.length>n.target.nodeValue.length)?this.flushSoon():this.flush()}),window.EditContext&&A.android&&e.constructor.EDIT_CONTEXT!==!1&&!(A.chrome&&A.chrome_version<126)&&(this.editContext=new wb(e),e.state.facet(qt)&&(e.contentDOM.editContext=this.editContext.editContext)),ao&&(this.onCharData=t=>{this.queue.push({target:t.target,type:"characterData",oldValue:t.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 t;((t=this.view.docView)===null||t===void 0?void 0:t.lastUpdate)<Date.now()-75&&this.onResize()}),this.resizeScroll.observe(e.scrollDOM)),this.addWindowListeners(this.win=e.win),this.start(),typeof IntersectionObserver=="function"&&(this.intersection=new IntersectionObserver(t=>{this.parentCheck<0&&(this.parentCheck=setTimeout(this.listenForScroll.bind(this),1e3)),t.length>0&&t[t.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(t=>{t.length>0&&t[t.length-1].intersectionRatio>0&&this.onScrollChanged(document.createEvent("Event"))},{})),this.listenForScroll(),this.readSelectionRange()}onScrollChanged(e){this.view.inputState.runHandlers("scroll",e),this.intersecting&&this.view.measure()}onScroll(e){this.intersecting&&this.flush(!1),this.editContext&&this.view.requestMeasure(this.editContext.measureReq),this.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(e){(e.type=="change"||!e.type)&&!e.matches||(this.view.viewState.printing=!0,this.view.measure(),setTimeout(()=>{this.view.viewState.printing=!1,this.view.requestMeasure()},500))}updateGaps(e){if(this.gapIntersection&&(e.length!=this.gaps.length||this.gaps.some((t,n)=>t!=e[n]))){this.gapIntersection.disconnect();for(let t of e)this.gapIntersection.observe(t);this.gaps=e}}onSelectionChange(e){let t=this.selectionChanged;if(!this.readSelectionRange()||this.delayedAndroidKey)return;let{view:n}=this,s=this.selectionRange;if(n.state.facet(qt)?n.root.activeElement!=this.dom:!zn(this.dom,s))return;let r=s.anchorNode&&n.docView.tile.nearest(s.anchorNode);if(r&&r.isWidget()&&r.widget.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(A.ie&&A.ie_version<=11||A.android&&A.chrome)&&!n.state.selection.main.empty&&s.focusNode&&Gn(s.focusNode,s.focusOffset,s.anchorNode,s.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=Fn(e.root);if(!t)return!1;let n=A.safari&&e.root.nodeType==11&&e.root.activeElement==this.dom&&$b(this.view,t)||t;if(!n||this.selectionRange.eq(n))return!1;let s=zn(this.dom,n);return s&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime<Date.now()-300&&I0(this.dom,n)?(this.view.inputState.lastFocusTime=0,e.docView.updateSelection(),!1):(this.selectionRange.setRange(n),s&&(this.selectionChanged=!0),!0)}setSelectionRange(e,t){this.selectionRange.set(e.node,e.offset,t.node,t.offset),this.selectionChanged=!1}clearSelectionRange(){this.selectionRange.set(null,0,null,0)}listenForScroll(){this.parentCheck=-1;let e=0,t=null;for(let n=this.dom;n;)if(n.nodeType==1)!t&&e<this.scrollTargets.length&&this.scrollTargets[e]==n?e++:t||(t=this.scrollTargets.slice(0,e)),t&&t.push(n),n=n.assignedSlot||n.parentNode;else if(n.nodeType==11)n=n.host;else break;if(e<this.scrollTargets.length&&!t&&(t=this.scrollTargets.slice(0,e)),t){for(let n of this.scrollTargets)n.removeEventListener("scroll",this.onScroll);for(let n of this.scrollTargets=t)n.addEventListener("scroll",this.onScroll)}}ignore(e){if(!this.active)return e();try{return this.stop(),e()}finally{this.start(),this.clear()}}start(){this.active||(this.observer.observe(this.dom,mb),ao&&this.dom.addEventListener("DOMCharacterDataModified",this.onCharData),this.active=!0)}stop(){this.active&&(this.active=!1,this.observer.disconnect(),ao&&this.dom.removeEventListener("DOMCharacterDataModified",this.onCharData))}clear(){this.processRecords(),this.queue.length=0,this.selectionChanged=!1}delayAndroidKey(e,t){var n;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&&ln(this.dom,r.key,r.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(s)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange<Date.now()-50||!!(!((n=this.delayedAndroidKey)===null||n===void 0)&&n.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 e of this.observer.takeRecords())this.queue.push(e);return this.queue}processRecords(){let e=this.pendingRecords();e.length&&(this.queue=[]);let t=-1,n=-1,s=!1;for(let r of e){let o=this.readMutation(r);o&&(o.typeOver&&(s=!0),t==-1?{from:t,to:n}=o:(t=Math.min(o.from,t),n=Math.max(o.to,n)))}return{from:t,to:n,typeOver:s}}readChange(){let{from:e,to:t,typeOver:n}=this.processRecords(),s=this.selectionChanged&&zn(this.dom,this.selectionRange);if(e<0&&!s)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let r=new Hy(this.view,e,t,n);return this.view.docView.domChanged={newSel:r.newSel?r.newSel.main:null},r}flush(e=!0){if(this.delayedFlush>=0||this.delayedAndroidKey)return!1;e&&this.readSelectionRange();let t=this.readChange();if(!t)return this.view.requestMeasure(),!1;let n=this.view.state,s=sd(this.view,t);return this.view.state==n&&(t.domChanged||t.newSel&&!tr(this.view.state.selection,t.newSel.main))&&this.view.update([]),s}readMutation(e){let t=this.view.docView.tile.nearest(e.target);if(!t||t.isWidget())return null;if(t.markDirty(e.type=="attributes"),e.type=="childList"){let n=Gh(t,e.previousSibling||e.target.previousSibling,-1),s=Gh(t,e.nextSibling||e.target.nextSibling,1);return{from:n?t.posAfter(n):t.posAtStart,to:s?t.posBefore(s):t.posAtEnd,typeOver:!1}}else return e.type=="characterData"?{from:t.posAtStart,to:t.posAtEnd,typeOver:e.target.nodeValue==e.oldValue}:null}setWindow(e){e!=this.win&&(this.removeWindowListeners(this.win),this.win=e,this.addWindowListeners(this.win))}addWindowListeners(e){e.addEventListener("resize",this.onResize),this.printQuery?this.printQuery.addEventListener?this.printQuery.addEventListener("change",this.onPrint):this.printQuery.addListener(this.onPrint):e.addEventListener("beforeprint",this.onPrint),e.addEventListener("scroll",this.onScroll),e.document.addEventListener("selectionchange",this.onSelectionChange)}removeWindowListeners(e){e.removeEventListener("scroll",this.onScroll),e.removeEventListener("resize",this.onResize),this.printQuery?this.printQuery.removeEventListener?this.printQuery.removeEventListener("change",this.onPrint):this.printQuery.removeListener(this.onPrint):e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}update(e){this.editContext&&(this.editContext.update(e),e.startState.facet(qt)!=e.state.facet(qt)&&(e.view.contentDOM.editContext=e.state.facet(qt)?this.editContext.editContext:null))}destroy(){var e,t,n;this.stop(),(e=this.intersection)===null||e===void 0||e.disconnect(),(t=this.gapIntersection)===null||t===void 0||t.disconnect(),(n=this.resizeScroll)===null||n===void 0||n.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 Gh(i,e,t){for(;e;){let n=Ce.get(e);if(n&&n.parent==i)return n;let s=e.parentNode;e=s!=i.dom?s:t>0?e.nextSibling:e.previousSibling}return null}function Qh(i,e){let t=e.startContainer,n=e.startOffset,s=e.endContainer,r=e.endOffset,o=i.docView.domAtPos(i.state.selection.main.anchor,1);return Gn(o.node,o.offset,s,r)&&([t,n,s,r]=[s,r,t,n]),{anchorNode:t,anchorOffset:n,focusNode:s,focusOffset:r}}function $b(i,e){if(e.getComposedRanges){let s=e.getComposedRanges(i.root)[0];if(s)return Qh(i,s)}let t=null;function n(s){s.preventDefault(),s.stopImmediatePropagation(),t=s.getTargetRanges()[0]}return i.contentDOM.addEventListener("beforeinput",n,!0),i.dom.ownerDocument.execCommand("indent"),i.contentDOM.removeEventListener("beforeinput",n,!0),t?Qh(i,t):null}class wb{constructor(e){this.from=0,this.to=0,this.pendingContextChange=null,this.handlers=Object.create(null),this.composing=null,this.resetRange(e.state);let t=this.editContext=new window.EditContext({text:e.state.doc.sliceString(this.from,this.to),selectionStart:this.toContextPos(Math.max(this.from,Math.min(this.to,e.state.selection.main.anchor))),selectionEnd:this.toContextPos(e.state.selection.main.head)});this.handlers.textupdate=n=>{let s=e.state.selection.main,{anchor:r,head:o}=s,l=this.toEditorPos(n.updateRangeStart),a=this.toEditorPos(n.updateRangeEnd);e.inputState.composing>=0&&!this.composing&&(this.composing={contextBase:n.updateRangeStart,editorBase:l,drifted:!1});let h=a-l>n.text.length;l==this.from&&r<this.from?l=r:a==this.to&&r>this.to&&(a=r);let c=rd(e.state.sliceDoc(l,a),n.text,(h?s.from:s.to)-l,h?"end":null);if(!c){let f=Y.single(this.toEditorPos(n.selectionStart),this.toEditorPos(n.selectionEnd));tr(f,s)||e.dispatch({selection:f,userEvent:"select"});return}let u={from:c.from+l,to:c.toA+l,insert:le.of(n.text.slice(c.from,c.toB).split(`
|
|
56
|
+
`))};if((A.mac||A.android)&&u.from==o-1&&/^\. ?$/.test(n.text)&&e.contentDOM.getAttribute("autocorrect")=="off"&&(u={from:l,to:a,insert:le.of([n.text.replace("."," ")])}),this.pendingContextChange=u,!e.state.readOnly){let f=this.to-this.from+(u.to-u.from+u.insert.length);sa(e,u,Y.single(this.toEditorPos(n.selectionStart,f),this.toEditorPos(n.selectionEnd,f)))}this.pendingContextChange&&(this.revertPending(e.state),this.setSelection(e.state)),u.from<u.to&&!u.insert.length&&e.inputState.composing>=0&&!/[\\p{Alphabetic}\\p{Number}_]/.test(t.text.slice(Math.max(0,n.updateRangeStart-1),Math.min(t.text.length,n.updateRangeStart+1)))&&this.handlers.compositionend(n)},this.handlers.characterboundsupdate=n=>{let s=[],r=null;for(let o=this.toEditorPos(n.rangeStart),l=this.toEditorPos(n.rangeEnd);o<l;o++){let a=e.coordsForChar(o);r=a&&new DOMRect(a.left,a.top,a.right-a.left,a.bottom-a.top)||r||new DOMRect,s.push(r)}t.updateCharacterBounds(n.rangeStart,s)},this.handlers.textformatupdate=n=>{let s=[];for(let r of n.getTextFormats()){let o=r.underlineStyle,l=r.underlineThickness;if(!/none/i.test(o)&&!/none/i.test(l)){let a=this.toEditorPos(r.rangeStart),h=this.toEditorPos(r.rangeEnd);if(a<h){let c=`text-decoration: underline ${/^[a-z]/.test(o)?o+" ":o=="Dashed"?"dashed ":o=="Squiggle"?"wavy ":""}${/thin/i.test(l)?1:2}px`;s.push(ve.mark({attributes:{style:c}}).range(a,h))}}}e.dispatch({effects:qf.of(ve.set(s))})},this.handlers.compositionstart=()=>{e.inputState.composing<0&&(e.inputState.composing=0,e.inputState.compositionFirstChange=!0)},this.handlers.compositionend=()=>{if(e.inputState.composing=-1,e.inputState.compositionFirstChange=null,this.composing){let{drifted:n}=this.composing;this.composing=null,n&&this.reset(e.state)}};for(let n in this.handlers)t.addEventListener(n,this.handlers[n]);this.measureReq={read:n=>{let s=Fn(n.root);s&&s.rangeCount&&this.editContext.updateSelectionBounds(s.getRangeAt(0).getBoundingClientRect())}}}applyEdits(e){let t=0,n=!1,s=this.pendingContextChange;return e.changes.iterChanges((r,o,l,a,h)=>{if(n)return;let c=h.length-(o-r);if(s&&o>=s.to)if(s.from==r&&s.to==o&&s.insert.eq(h)){s=this.pendingContextChange=null,t+=c,this.to+=c;return}else s=null,this.revertPending(e.state);if(r+=t,o+=t,o<=this.from)this.from+=c,this.to+=c;else if(r<this.to){if(r<this.from||o>this.to||this.to-this.from+h.length>3e4){n=!0;return}this.editContext.updateText(this.toContextPos(r),this.toContextPos(o),h.toString()),this.to+=c}t+=c}),s&&!n&&this.revertPending(e.state),!n}update(e){let t=this.pendingContextChange,n=e.startState.selection.main;this.composing&&(this.composing.drifted||!e.changes.touchesRange(n.from,n.to)&&e.transactions.some(s=>!s.isUserEvent("input.type")&&s.changes.touchesRange(this.from,this.to)))?(this.composing.drifted=!0,this.composing.editorBase=e.changes.mapPos(this.composing.editorBase)):!this.applyEdits(e)||!this.rangeIsValid(e.state)?(this.pendingContextChange=null,this.reset(e.state)):(e.docChanged||e.selectionSet||t)&&this.setSelection(e.state),(e.geometryChanged||e.docChanged||e.selectionSet)&&e.view.requestMeasure(this.measureReq)}resetRange(e){let{head:t}=e.selection.main;this.from=Math.max(0,t-1e4),this.to=Math.min(e.doc.length,t+1e4)}reset(e){this.resetRange(e),this.editContext.updateText(0,this.editContext.text.length,e.doc.sliceString(this.from,this.to)),this.setSelection(e)}revertPending(e){let t=this.pendingContextChange;this.pendingContextChange=null,this.editContext.updateText(this.toContextPos(t.from),this.toContextPos(t.from+t.insert.length),e.doc.sliceString(t.from,t.to))}setSelection(e){let{main:t}=e.selection,n=this.toContextPos(Math.max(this.from,Math.min(this.to,t.anchor))),s=this.toContextPos(t.head);(this.editContext.selectionStart!=n||this.editContext.selectionEnd!=s)&&this.editContext.updateSelection(n,s)}rangeIsValid(e){let{head:t}=e.selection.main;return!(this.from>0&&t-this.from<500||this.to<e.doc.length&&this.to-t<500||this.to-this.from>1e4*3)}toEditorPos(e,t=this.to-this.from){e=Math.min(e,t);let n=this.composing;return n&&n.drifted?n.editorBase+(e-n.contextBase):e+this.from}toContextPos(e){let t=this.composing;return t&&t.drifted?t.contextBase+(e-t.editorBase):e-this.from}destroy(){for(let e in this.handlers)this.editContext.removeEventListener(e,this.handlers[e])}}class V{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(e={}){var t;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),e.parent&&e.parent.appendChild(this.dom);let{dispatch:n}=e;this.dispatchTransactions=e.dispatchTransactions||n&&(s=>s.forEach(r=>n(r,this)))||(s=>this.update(s)),this.dispatch=this.dispatch.bind(this),this._root=e.root||_0(e.parent)||document,this.viewState=new Hh(this,e.state||ce.create(e)),e.scrollTo&&e.scrollTo.is(xs)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(Ji).map(s=>new io(s));for(let s of this.plugins)s.update(this);this.observer=new gb(this),this.inputState=new Qy(this),this.inputState.ensureHandlers(this.plugins),this.docView=new xh(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),!((t=document.fonts)===null||t===void 0)&&t.ready&&document.fonts.ready.then(()=>{this.viewState.mustMeasureContent="refresh",this.requestMeasure()})}dispatch(...e){let t=e.length==1&&e[0]instanceof Te?e:e.length==1&&Array.isArray(e[0])?e[0]:[this.state.update(...e)];this.dispatchTransactions(t,this)}update(e){if(this.updateState!=0)throw new Error("Calls to EditorView.update are not allowed while an update is in progress");let t=!1,n=!1,s,r=this.state;for(let f of e){if(f.startState!=r)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");r=f.state}if(this.destroyed){this.viewState.state=r;return}let o=this.hasFocus,l=0,a=null;e.some(f=>f.annotation(ud))?(this.inputState.notifiedFocused=o,l=1):o!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=o,a=fd(r,o),a||(l=1));let h=this.observer.delayedAndroidKey,c=null;if(h?(this.observer.clearDelayedAndroidKey(),c=this.observer.readChange(),(c&&!this.state.doc.eq(r.doc)||!this.state.selection.eq(r.selection))&&(c=null)):this.observer.clear(),r.facet(ce.phrases)!=this.state.facet(ce.phrases))return this.setState(r);s=Ks.create(this,r,e),s.flags|=l;let u=this.viewState.scrollTarget;try{this.updateState=2;for(let f of e){if(u&&(u=u.map(f.changes)),f.scrollIntoView){let{main:d}=f.state.selection,{x:m,y:$}=this.state.facet(V.cursorScrollMargin);u=new an(d.empty?d:Y.cursor(d.head,d.head>d.anchor?-1:1),"nearest","nearest",$,m)}for(let d of f.effects)d.is(xs)&&(u=d.value.clip(this.state))}this.viewState.update(s,u),this.bidiCache=nr.update(this.bidiCache,s.changes),s.empty||(this.updatePlugins(s),this.inputState.update(s)),t=this.docView.update(s),this.state.facet(Pn)!=this.styleModules&&this.mountStyles(),n=this.updateAttrs(),this.showAnnouncements(e),this.docView.updateSelection(t,e.some(f=>f.isUserEvent("select.pointer")))}finally{this.updateState=0}if(s.startState.facet(Es)!=s.state.facet(Es)&&(this.viewState.mustMeasureContent=!0),(t||n||u||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),t&&this.docViewUpdate(),!s.empty)for(let f of this.state.facet(fl))try{f(s)}catch(d){zt(this.state,d,"update listener")}(a||c)&&Promise.resolve().then(()=>{a&&this.state==a.startState&&this.dispatch(a),c&&!sd(this,c)&&h.force&&ln(this.contentDOM,h.key,h.keyCode)})}setState(e){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=e;return}this.updateState=2;let t=this.hasFocus;try{for(let n of this.plugins)n.destroy(this);this.viewState=new Hh(this,e),this.plugins=e.facet(Ji).map(n=>new io(n)),this.pluginMap.clear();for(let n of this.plugins)n.update(this);this.docView.destroy(),this.docView=new xh(this),this.inputState.ensureHandlers(this.plugins),this.mountStyles(),this.updateAttrs(),this.bidiCache=[]}finally{this.updateState=0}t&&this.focus(),this.requestMeasure()}updatePlugins(e){let t=e.startState.facet(Ji),n=e.state.facet(Ji);if(t!=n){let s=[];for(let r of n){let o=t.indexOf(r);if(o<0)s.push(new io(r));else{let l=this.plugins[o];l.mustUpdate=e,s.push(l)}}for(let r of this.plugins)r.mustUpdate!=e&&r.destroy(this);this.plugins=s,this.pluginMap.clear()}else for(let s of this.plugins)s.mustUpdate=e;for(let s=0;s<this.plugins.length;s++)this.plugins[s].update(this);t!=n&&this.inputState.ensureHandlers(this.plugins)}docViewUpdate(){for(let e of this.plugins){let t=e.value;if(t&&t.docViewUpdate)try{t.docViewUpdate(this)}catch(n){zt(this.state,n,"doc view update listener")}}}measure(e=!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,e&&this.observer.forceFlush();let t=null,n=this.viewState.scrollParent,s=this.viewState.getScrollOffset(),{scrollAnchorPos:r,scrollAnchorHeight:o}=this.viewState;Math.abs(s-this.viewState.scrollOffset)>1&&(o=-1),this.viewState.scrollAnchorHeight=-1;try{for(let l=0;;l++){if(o<0)if(Pf(n||this.win))r=-1,o=this.viewState.heightMap.height;else{let d=this.viewState.scrollAnchorAt(s);r=d.from,o=d.top}this.updateState=1;let a=this.viewState.measure();if(!a&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(l>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let h=[];a&4||([this.measureRequests,h]=[h,this.measureRequests]);let c=h.map(d=>{try{return d.read(this)}catch(m){return zt(this.state,m),Ah}}),u=Ks.create(this,this.state,[]),f=!1;u.flags|=a,t?t.flags|=a:t=u,this.updateState=2,u.empty||(this.updatePlugins(u),this.inputState.update(u),this.updateAttrs(),f=this.docView.update(u),f&&this.docViewUpdate());for(let d=0;d<h.length;d++)if(c[d]!=Ah)try{let m=h[d];m.write&&m.write(c[d],this)}catch(m){zt(this.state,m)}if(f&&this.docView.updateSelection(!0),!u.viewportChanged&&this.measureRequests.length==0){if(this.viewState.editorHeight)if(this.viewState.scrollTarget){this.docView.scrollIntoView(this.viewState.scrollTarget),this.viewState.scrollTarget=null,o=-1;continue}else{let m=((r<0?this.viewState.heightMap.height:this.viewState.lineBlockAt(r).top)-o)/this.scaleY;if((m>1||m<-1)&&!(A.ios&&this.inputState.lastIOSMomentumScroll>Date.now()-100)&&(n==this.scrollDOM||this.hasFocus||Math.max(this.inputState.lastWheelEvent,this.inputState.lastTouchTime)>Date.now()-100)){s=s+m,n?n.scrollTop+=m:this.win.scrollBy(0,m),o=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let l of this.state.facet(fl))l(t)}get themeClasses(){return $l+" "+(this.state.facet(gl)?gd:md)+" "+this.state.facet(Es)}updateAttrs(){let e=Bh(this,Uf,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",writingsuggestions:"false",translate:"no",contenteditable:this.state.facet(qt)?"true":"false",class:"cm-content",style:`${A.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),Bh(this,ia,t);let n=this.observer.ignore(()=>{let s=mh(this.contentDOM,this.contentAttrs,t),r=mh(this.dom,this.editorAttrs,e);return s||r});return this.editorAttrs=e,this.contentAttrs=t,n}showAnnouncements(e){let t=!0;for(let n of e)for(let s of n.effects)if(s.is(V.announce)){t&&(this.announceDOM.textContent=""),t=!1;let r=this.announceDOM.appendChild(document.createElement("div"));r.textContent=s.value}}mountStyles(){this.styleModules=this.state.facet(Pn);let e=this.state.facet(V.cspNonce);$i.mount(this.root,this.styleModules.concat(pb).reverse(),e?{nonce:e}: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(e){if(this.measureScheduled<0&&(this.measureScheduled=this.win.requestAnimationFrame(()=>this.measure())),e){if(this.measureRequests.indexOf(e)>-1)return;if(e.key!=null){for(let t=0;t<this.measureRequests.length;t++)if(this.measureRequests[t].key===e.key){this.measureRequests[t]=e;return}}this.measureRequests.push(e)}}plugin(e){let t=this.pluginMap.get(e);return(t===void 0||t&&t.plugin!=e)&&this.pluginMap.set(e,t=this.plugins.find(n=>n.plugin==e)||null),t&&t.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(e){return this.readMeasured(),this.viewState.elementAtHeight(e)}lineBlockAtHeight(e){return this.readMeasured(),this.viewState.lineBlockAtHeight(e)}get viewportLineBlocks(){return this.viewState.viewportLines}lineBlockAt(e){return this.viewState.lineBlockAt(e)}get contentHeight(){return this.viewState.contentHeight}moveByChar(e,t,n){return oo(this,e,Oh(this,e,t,n))}moveByGroup(e,t){return oo(this,e,Oh(this,e,t,n=>Dy(this,e.head,n)))}visualLineSide(e,t){let n=this.bidiSpans(e),s=this.textDirectionAt(e.from),r=n[t?n.length-1:0];return Y.cursor(r.side(t,s)+e.from,r.forward(!t,s)?1:-1)}moveToLineBoundary(e,t,n=!0){return Ey(this,e,t,n)}moveVertically(e,t,n){return oo(this,e,jy(this,e,t,n))}domAtPos(e,t=1){return this.docView.domAtPos(e,t)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){this.readMeasured();let n=pl(this,e,t);return n&&n.pos}posAndSideAtCoords(e,t=!0){return this.readMeasured(),pl(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let n=this.state.doc.lineAt(e),s=this.bidiSpans(n),r=s[Yt.find(s,e-n.from,-1,t)];return this.docView.coordsAt(e,t,r.dir==De.RTL)}coordsForChar(e){return this.readMeasured(),this.docView.coordsForChar(e)}get defaultCharacterWidth(){return this.viewState.heightOracle.charWidth}get defaultLineHeight(){return this.viewState.heightOracle.lineHeight}get textDirection(){return this.viewState.defaultTextDirection}textDirectionAt(e){return!this.state.facet(Ff)||e<this.viewport.from||e>this.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>yb)return Qf(e.length);let t=this.textDirectionAt(e.from),n;for(let r of this.bidiCache)if(r.from==e.from&&r.dir==t&&(r.fresh||Gf(r.isolates,n=wh(this,e))))return r.order;n||(n=wh(this,e));let s=K0(e.text,t,n);return this.bidiCache.push(new nr(e.from,e.to,t,n,!0,s)),s}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||A.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{Nf(this.contentDOM),this.docView.updateSelection()})}setRoot(e){this._root!=e&&(this._root=e,this.observer.setWindow((e.nodeType==9?e:e.ownerDocument).defaultView||window),this.mountStyles())}destroy(){this.root.activeElement==this.contentDOM&&this.contentDOM.blur();for(let e of this.plugins)e.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(e,t={}){var n,s,r,o;return xs.of(new an(typeof e=="number"?Y.cursor(e):e,(n=t.y)!==null&&n!==void 0?n:"nearest",(s=t.x)!==null&&s!==void 0?s:"nearest",(r=t.yMargin)!==null&&r!==void 0?r:5,(o=t.xMargin)!==null&&o!==void 0?o:5))}scrollSnapshot(){let{scrollTop:e,scrollLeft:t}=this.scrollDOM,n=this.viewState.scrollAnchorAt(e);return xs.of(new an(Y.cursor(n.from),"start","start",n.top-e,t,!0))}setTabFocusMode(e){e==null?this.inputState.tabFocusMode=this.inputState.tabFocusMode<0?0:-1:typeof e=="boolean"?this.inputState.tabFocusMode=e?0:-1:this.inputState.tabFocusMode!=0&&(this.inputState.tabFocusMode=Date.now()+e)}static domEventHandlers(e){return ti.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return ti.define(()=>({}),{eventObservers:e})}static theme(e,t){let n=$i.newName(),s=[Es.of(n),Pn.of(wl(`.${n}`,e))];return t&&t.dark&&s.push(gl.of(!0)),s}static baseTheme(e){return ql.lowest(Pn.of(wl("."+$l,e,$d)))}static findFromDOM(e){var t;let n=e.querySelector(".cm-content"),s=n&&Ce.get(n)||Ce.get(e);return((t=s==null?void 0:s.root)===null||t===void 0?void 0:t.view)||null}}V.styleModule=Pn;V.inputHandler=_f;V.clipboardInputFilter=ea;V.clipboardOutputFilter=ta;V.scrollHandler=Zf;V.focusChangeEffect=If;V.perLineTextDirection=Ff;V.exceptionSink=Lf;V.updateListener=fl;V.editable=qt;V.mouseSelectionStyle=Mf;V.dragMovesSelection=Wf;V.clickAddsSelectionRange=Bf;V.decorations=kr;V.blockWrappers=Xf;V.outerDecorations=na;V.atomicRanges=ss;V.bidiIsolatedRanges=Vf;V.cursorScrollMargin=I.define({combine:i=>{let e=5,t=5;for(let n of i)typeof n=="number"?e=t=n:{x:e,y:t}=n;return{x:e,y:t}}});V.scrollMargins=Kf;V.darkTheme=gl;V.cspNonce=I.define({combine:i=>i.length?i[0]:""});V.contentAttributes=ia;V.editorAttributes=Uf;V.lineWrapping=V.contentAttributes.of({class:"cm-lineWrapping"});V.announce=Se.define();const yb=4096,Ah={};class nr{constructor(e,t,n,s,r,o){this.from=e,this.to=t,this.dir=n,this.isolates=s,this.fresh=r,this.order=o}static update(e,t){if(t.empty&&!e.some(r=>r.fresh))return e;let n=[],s=e.length?e[e.length-1].dir:De.LTR;for(let r=Math.max(0,e.length-10);r<e.length;r++){let o=e[r];o.dir==s&&!t.touchesRange(o.from,o.to)&&n.push(new nr(t.mapPos(o.from,1),t.mapPos(o.to,-1),o.dir,o.isolates,!1,o.order))}return n}}function Bh(i,e,t){for(let n=i.state.facet(e),s=n.length-1;s>=0;s--){let r=n[s],o=typeof r=="function"?r(i):r;o&&Vl(o,t)}return t}const bb=A.mac?"mac":A.windows?"win":A.linux?"linux":"key";function xb(i,e){const t=i.split(/-(?!$)/);let n=t[t.length-1];n=="Space"&&(n=" ");let s,r,o,l;for(let a=0;a<t.length-1;++a){const h=t[a];if(/^(cmd|meta|m)$/i.test(h))l=!0;else if(/^a(lt)?$/i.test(h))s=!0;else if(/^(c|ctrl|control)$/i.test(h))r=!0;else if(/^s(hift)?$/i.test(h))o=!0;else if(/^mod$/i.test(h))e=="mac"?l=!0:r=!0;else throw new Error("Unrecognized modifier name: "+h)}return s&&(n="Alt-"+n),r&&(n="Ctrl-"+n),l&&(n="Meta-"+n),o&&(n="Shift-"+n),n}function Ds(i,e,t){return e.altKey&&(i="Alt-"+i),e.ctrlKey&&(i="Ctrl-"+i),e.metaKey&&(i="Meta-"+i),t!==!1&&e.shiftKey&&(i="Shift-"+i),i}const Ob=ql.default(V.domEventHandlers({keydown(i,e){return Cb(vb(e.state),i,e,"editor")}})),wd=I.define({enables:Ob}),Wh=new WeakMap;function vb(i){let e=i.facet(wd),t=Wh.get(e);return t||Wh.set(e,t=Sb(e.reduce((n,s)=>n.concat(s),[]))),t}let ui=null;const kb=4e3;function Sb(i,e=bb){let t=Object.create(null),n=Object.create(null),s=(o,l)=>{let a=n[o];if(a==null)n[o]=l;else if(a!=l)throw new Error("Key binding "+o+" is used both as a regular binding and as a multi-stroke prefix")},r=(o,l,a,h,c)=>{var u,f;let d=t[o]||(t[o]=Object.create(null)),m=l.split(/ (?!$)/).map(y=>xb(y,e));for(let y=1;y<m.length;y++){let x=m.slice(0,y).join(" ");s(x,!0),d[x]||(d[x]={preventDefault:!0,stopPropagation:!1,run:[O=>{let j=ui={view:O,prefix:x,scope:o};return setTimeout(()=>{ui==j&&(ui=null)},kb),!0}]})}let $=m.join(" ");s($,!1);let w=d[$]||(d[$]={preventDefault:!1,stopPropagation:!1,run:((f=(u=d._any)===null||u===void 0?void 0:u.run)===null||f===void 0?void 0:f.slice())||[]});a&&w.run.push(a),h&&(w.preventDefault=!0),c&&(w.stopPropagation=!0)};for(let o of i){let l=o.scope?o.scope.split(" "):["editor"];if(o.any)for(let h of l){let c=t[h]||(t[h]=Object.create(null));c._any||(c._any={preventDefault:!1,stopPropagation:!1,run:[]});let{any:u}=o;for(let f in c)c[f].run.push(d=>u(d,yl))}let a=o[e]||o.key;if(a)for(let h of l)r(h,a,o.run,o.preventDefault,o.stopPropagation),o.shift&&r(h,"Shift-"+a,o.shift,o.preventDefault,o.stopPropagation)}return t}let yl=null;function Cb(i,e,t,n){yl=e;let s=f5(e),r=O0(s,0),o=v0(r)==s.length&&s!=" ",l="",a=!1,h=!1,c=!1;ui&&ui.view==t&&ui.scope==n&&(l=ui.prefix+" ",ld.indexOf(e.keyCode)<0&&(h=!0,ui=null));let u=new Set,f=w=>{if(w){for(let y of w.run)if(!u.has(y)&&(u.add(y),y(t)))return w.stopPropagation&&(c=!0),!0;w.preventDefault&&(w.stopPropagation&&(c=!0),h=!0)}return!1},d=i[n],m,$;return d&&(f(d[l+Ds(s,e,!o)])?a=!0:o&&(e.altKey||e.metaKey||e.ctrlKey)&&!(A.windows&&e.ctrlKey&&e.altKey)&&!(A.mac&&e.altKey&&!(e.ctrlKey||e.metaKey))&&(m=d5[e.keyCode])&&m!=s?(f(d[l+Ds(m,e,!0)])||e.shiftKey&&($=p5[e.keyCode])!=s&&$!=m&&f(d[l+Ds($,e,!1)]))&&(a=!0):o&&e.shiftKey&&f(d[l+Ds(s,e,!0)])&&(a=!0),!a&&f(d._any)&&(a=!0)),h&&(a=!0),a&&c&&e.stopPropagation(),yl=null,a}function Eb(){return jb}const Db=ve.line({class:"cm-activeLine"}),jb=ti.fromClass(class{constructor(i){this.decorations=this.getDeco(i)}update(i){(i.docChanged||i.selectionSet)&&(this.decorations=this.getDeco(i.view))}getDeco(i){let e=-1,t=[];for(let n of i.state.selection.ranges){let s=i.lineBlockAt(n.head);s.from>e&&(t.push(Db.range(s.from)),e=s.from)}return ve.set(t)}},{decorations:i=>i.decorations});class yi extends zi{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}}yi.prototype.elementClass="";yi.prototype.toDOM=void 0;yi.prototype.mapMode=rt.TrackBefore;yi.prototype.startSide=yi.prototype.endSide=-1;yi.prototype.point=!0;const Ms=I.define(),Rb=I.define(),Ls=I.define(),Mh=I.define({combine:i=>i.some(e=>e)});function Nb(i){return[Pb]}const Pb=ti.fromClass(class{constructor(i){this.view=i,this.domAfter=null,this.prevViewport=i.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=i.state.facet(Ls).map(e=>new _h(i,e)),this.fixed=!i.state.facet(Mh);for(let e of this.gutters)e.config.side=="after"?this.getDOMAfter().appendChild(e.dom):this.dom.appendChild(e.dom);this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),i.scrollDOM.insertBefore(this.dom,i.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(i){if(this.updateGutters(i)){let e=this.prevViewport,t=i.view.viewport,n=Math.min(e.to,t.to)-Math.max(e.from,t.from);this.syncGutters(n<(t.to-t.from)*.8)}if(i.geometryChanged){let e=this.view.contentHeight/this.view.scaleY+"px";this.dom.style.minHeight=e,this.domAfter&&(this.domAfter.style.minHeight=e)}this.view.state.facet(Mh)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":"",this.domAfter&&(this.domAfter.style.position=this.fixed?"sticky":"")),this.prevViewport=i.view.viewport}syncGutters(i){let e=this.dom.nextSibling;i&&(this.dom.remove(),this.domAfter&&this.domAfter.remove());let t=re.iter(this.view.state.facet(Ms),this.view.viewport.from),n=[],s=this.gutters.map(r=>new Tb(r,this.view.viewport,-this.view.documentPadding.top));for(let r of this.view.viewportLineBlocks)if(n.length&&(n=[]),Array.isArray(r.type)){let o=!0;for(let l of r.type)if(l.type==et.Text&&o){bl(t,n,l.from);for(let a of s)a.line(this.view,l,n);o=!1}else if(l.widget)for(let a of s)a.widget(this.view,l)}else if(r.type==et.Text){bl(t,n,r.from);for(let o of s)o.line(this.view,r,n)}else if(r.widget)for(let o of s)o.widget(this.view,r);for(let r of s)r.finish();i&&(this.view.scrollDOM.insertBefore(this.dom,e),this.domAfter&&this.view.scrollDOM.appendChild(this.domAfter))}updateGutters(i){let e=i.startState.facet(Ls),t=i.state.facet(Ls),n=i.docChanged||i.heightChanged||i.viewportChanged||!re.eq(i.startState.facet(Ms),i.state.facet(Ms),i.view.viewport.from,i.view.viewport.to);if(e==t)for(let s of this.gutters)s.update(i)&&(n=!0);else{n=!0;let s=[];for(let r of t){let o=e.indexOf(r);o<0?s.push(new _h(this.view,r)):(this.gutters[o].update(i),s.push(this.gutters[o]))}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 n}destroy(){for(let i of this.gutters)i.destroy();this.dom.remove(),this.domAfter&&this.domAfter.remove()}},{provide:i=>V.scrollMargins.of(e=>{let t=e.plugin(i);if(!t||t.gutters.length==0||!t.fixed)return null;let n=t.dom.offsetWidth*e.scaleX,s=t.domAfter?t.domAfter.offsetWidth*e.scaleX:0;return e.textDirection==De.LTR?{left:n,right:s}:{right:n,left:s}})});function Lh(i){return Array.isArray(i)?i:[i]}function bl(i,e,t){for(;i.value&&i.from<=t;)i.from==t&&e.push(i.value),i.next()}class Tb{constructor(e,t,n){this.gutter=e,this.height=n,this.i=0,this.cursor=re.iter(e.markers,t.from)}addElement(e,t,n){let{gutter:s}=this,r=(t.top-this.height)/e.scaleY,o=t.height/e.scaleY;if(this.i==s.elements.length){let l=new yd(e,o,r,n);s.elements.push(l),s.dom.appendChild(l.dom)}else s.elements[this.i].update(e,o,r,n);this.height=t.bottom,this.i++}line(e,t,n){let s=[];bl(this.cursor,s,t.from),n.length&&(s=s.concat(n));let r=this.gutter.config.lineMarker(e,t,s);r&&s.unshift(r);let o=this.gutter;s.length==0&&!o.config.renderEmptyElements||this.addElement(e,t,s)}widget(e,t){let n=this.gutter.config.widgetMarker(e,t.widget,t),s=n?[n]:null;for(let r of e.state.facet(Rb)){let o=r(e,t.widget,t);o&&(s||(s=[])).push(o)}s&&this.addElement(e,t,s)}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}}class _h{constructor(e,t){this.view=e,this.config=t,this.elements=[],this.spacer=null,this.dom=document.createElement("div"),this.dom.className="cm-gutter"+(this.config.class?" "+this.config.class:"");for(let n in t.domEventHandlers)this.dom.addEventListener(n,s=>{let r=s.target,o;if(r!=this.dom&&this.dom.contains(r)){for(;r.parentNode!=this.dom;)r=r.parentNode;let a=r.getBoundingClientRect();o=(a.top+a.bottom)/2}else o=s.clientY;let l=e.lineBlockAtHeight(o-e.documentTop);t.domEventHandlers[n](e,l,s)&&s.preventDefault()});this.markers=Lh(t.markers(e)),t.initialSpacer&&(this.spacer=new yd(e,0,0,[t.initialSpacer(e)]),this.dom.appendChild(this.spacer.dom),this.spacer.dom.style.cssText+="visibility: hidden; pointer-events: none")}update(e){let t=this.markers;if(this.markers=Lh(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let s=this.config.updateSpacer(this.spacer.markers[0],e);s!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[s])}let n=e.view.viewport;return!re.eq(this.markers,t,n.from,n.to)||(this.config.lineMarkerChange?this.config.lineMarkerChange(e):!1)}destroy(){for(let e of this.elements)e.destroy()}}class yd{constructor(e,t,n,s){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,n,s)}update(e,t,n,s){this.height!=t&&(this.height=t,this.dom.style.height=t+"px"),this.above!=n&&(this.dom.style.marginTop=(this.above=n)?n+"px":""),Hb(this.markers,s)||this.setMarkers(e,s)}setMarkers(e,t){let n="cm-gutterElement",s=this.dom.firstChild;for(let r=0,o=0;;){let l=o,a=r<t.length?t[r++]:null,h=!1;if(a){let c=a.elementClass;c&&(n+=" "+c);for(let u=o;u<this.markers.length;u++)if(this.markers[u].compare(a)){l=u,h=!0;break}}else l=this.markers.length;for(;o<l;){let c=this.markers[o++];if(c.toDOM){c.destroy(s);let u=s.nextSibling;s.remove(),s=u}}if(!a)break;a.toDOM&&(h?s=s.nextSibling:this.dom.insertBefore(a.toDOM(e),s)),h&&o++}this.dom.className=n,this.markers=t}destroy(){this.setMarkers(null,[])}}function Hb(i,e){if(i.length!=e.length)return!1;for(let t=0;t<i.length;t++)if(!i[t].compare(e[t]))return!1;return!0}const Yb=I.define(),zb=I.define(),en=I.define({combine(i){return Of(i,{formatNumber:String,domEventHandlers:{}},{domEventHandlers(e,t){let n=Object.assign({},e);for(let s in t){let r=n[s],o=t[s];n[s]=r?(l,a,h)=>r(l,a,h)||o(l,a,h):o}return n}})}});class ho extends yi{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}}function co(i,e){return i.state.facet(en).formatNumber(e,i.state)}const Gb=Ls.compute([en],i=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(Yb)},lineMarker(e,t,n){return n.some(s=>s.toDOM)?null:new ho(co(e,e.state.doc.lineAt(t.from).number))},widgetMarker:(e,t,n)=>{for(let s of e.state.facet(zb)){let r=s(e,t,n);if(r)return r}return null},lineMarkerChange:e=>e.startState.facet(en)!=e.state.facet(en),initialSpacer(e){return new ho(co(e,Ih(e.state.doc.lines)))},updateSpacer(e,t){let n=co(t.view,Ih(t.view.state.doc.lines));return n==e.number?e:new ho(n)},domEventHandlers:i.facet(en).domEventHandlers,side:"before"}));function Qb(i={}){return[en.of(i),Nb(),Gb]}function Ih(i){let e=9;for(;e<i;)e=e*10+9;return e}const Ab=new class extends yi{constructor(){super(...arguments),this.elementClass="cm-activeLineGutter"}},Bb=Ms.compute(["selection"],i=>{let e=[],t=-1;for(let n of i.selection.ranges){let s=i.doc.lineAt(n.head).from;s>t&&(t=s,e.push(Ab.range(s)))}return re.of(e)});function Wb(){return Bb}const bd=1024;let Mb=0;class ct{constructor(e,t){this.from=e,this.to=t}}class ie{constructor(e={}){this.id=Mb++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")}),this.combine=e.combine||null}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=qe.match(e)),t=>{let n=e(t);return n===void 0?null:[this,n]}}}ie.closedBy=new ie({deserialize:i=>i.split(" ")});ie.openedBy=new ie({deserialize:i=>i.split(" ")});ie.group=new ie({deserialize:i=>i.split(" ")});ie.isolate=new ie({deserialize:i=>{if(i&&i!="rtl"&&i!="ltr"&&i!="auto")throw new RangeError("Invalid value for isolate: "+i);return i||"auto"}});ie.contextHash=new ie({perNode:!0});ie.lookAhead=new ie({perNode:!0});ie.mounted=new ie({perNode:!0});class hn{constructor(e,t,n,s=!1){this.tree=e,this.overlay=t,this.parser=n,this.bracketed=s}static get(e){return e&&e.props&&e.props[ie.mounted.id]}}const Lb=Object.create(null);class qe{constructor(e,t,n,s=0){this.name=e,this.props=t,this.id=n,this.flags=s}static define(e){let t=e.props&&e.props.length?Object.create(null):Lb,n=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),s=new qe(e.name||"",t,e.id,n);if(e.props){for(let r of e.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");t[r[0].id]=r[1]}}return s}prop(e){return this.props[e.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(e){if(typeof e=="string"){if(this.name==e)return!0;let t=this.prop(ie.group);return t?t.indexOf(e)>-1:!1}return this.id==e}static match(e){let t=Object.create(null);for(let n in e)for(let s of n.split(" "))t[s]=e[n];return n=>{for(let s=n.prop(ie.group),r=-1;r<(s?s.length:0);r++){let o=t[r<0?n.name:s[r]];if(o)return o}}}}qe.none=new qe("",Object.create(null),0,8);class la{constructor(e){this.types=e;for(let t=0;t<e.length;t++)if(e[t].id!=t)throw new RangeError("Node type ids should correspond to array positions when creating a node set")}extend(...e){let t=[];for(let n of this.types){let s=null;for(let r of e){let o=r(n);if(o){s||(s=Object.assign({},n.props));let l=o[1],a=o[0];a.combine&&a.id in s&&(l=a.combine(s[a.id],l)),s[a.id]=l}}t.push(s?new qe(n.name,s,n.id,n.flags):n)}return new la(t)}}const js=new WeakMap,Fh=new WeakMap;var fe;(function(i){i[i.ExcludeBuffers=1]="ExcludeBuffers",i[i.IncludeAnonymous=2]="IncludeAnonymous",i[i.IgnoreMounts=4]="IgnoreMounts",i[i.IgnoreOverlays=8]="IgnoreOverlays",i[i.EnterBracketed=16]="EnterBracketed"})(fe||(fe={}));class Oe{constructor(e,t,n,s,r){if(this.type=e,this.children=t,this.positions=n,this.length=s,this.props=null,r&&r.length){this.props=Object.create(null);for(let[o,l]of r)this.props[typeof o=="number"?o:o.id]=l}}toString(){let e=hn.get(this);if(e&&!e.overlay)return e.tree.toString();let t="";for(let n of this.children){let s=n.toString();s&&(t&&(t+=","),t+=s)}return this.type.name?(/\W/.test(this.type.name)&&!this.type.isError?JSON.stringify(this.type.name):this.type.name)+(t.length?"("+t+")":""):t}cursor(e=0){return new sr(this.topNode,e)}cursorAt(e,t=0,n=0){let s=js.get(this)||this.topNode,r=new sr(s);return r.moveTo(e,t),js.set(this,r._tree),r}get topNode(){return new tt(this,0,0,null)}resolve(e,t=0){let n=qn(js.get(this)||this.topNode,e,t,!1);return js.set(this,n),n}resolveInner(e,t=0){let n=qn(Fh.get(this)||this.topNode,e,t,!0);return Fh.set(this,n),n}resolveStack(e,t=0){return Fb(this,e,t)}iterate(e){let{enter:t,leave:n,from:s=0,to:r=this.length}=e,o=e.mode||0,l=(o&fe.IncludeAnonymous)>0;for(let a=this.cursor(o|fe.IncludeAnonymous);;){let h=!1;if(a.from<=r&&a.to>=s&&(!l&&a.type.isAnonymous||t(a)!==!1)){if(a.firstChild())continue;h=!0}for(;h&&n&&(l||!a.type.isAnonymous)&&n(a),!a.nextSibling();){if(!a.parent())return;h=!0}}}prop(e){return e.perNode?this.props?this.props[e.id]:void 0:this.type.prop(e)}get propValues(){let e=[];if(this.props)for(let t in this.props)e.push([+t,this.props[t]]);return e}balance(e={}){return this.children.length<=8?this:ca(qe.none,this.children,this.positions,0,this.children.length,0,this.length,(t,n,s)=>new Oe(this.type,t,n,s,this.propValues),e.makeTree||((t,n,s)=>new Oe(qe.none,t,n,s)))}static build(e){return Zb(e)}}Oe.empty=new Oe(qe.none,[],[],0);class aa{constructor(e,t){this.buffer=e,this.index=t}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 aa(this.buffer,this.index)}}class bi{constructor(e,t,n){this.buffer=e,this.length=t,this.set=n}get type(){return qe.none}toString(){let e=[];for(let t=0;t<this.buffer.length;)e.push(this.childString(t)),t=this.buffer[t+3];return e.join(",")}childString(e){let t=this.buffer[e],n=this.buffer[e+3],s=this.set.types[t],r=s.name;if(/\W/.test(r)&&!s.isError&&(r=JSON.stringify(r)),e+=4,n==e)return r;let o=[];for(;e<n;)o.push(this.childString(e)),e=this.buffer[e+3];return r+"("+o.join(",")+")"}findChild(e,t,n,s,r){let{buffer:o}=this,l=-1;for(let a=e;a!=t&&!(xd(r,s,o[a+1],o[a+2])&&(l=a,n>0));a=o[a+3]);return l}slice(e,t,n){let s=this.buffer,r=new Uint16Array(t-e),o=0;for(let l=e,a=0;l<t;){r[a++]=s[l++],r[a++]=s[l++]-n;let h=r[a++]=s[l++]-n;r[a++]=s[l++]-e,o=Math.max(o,h)}return new bi(r,o,this.set)}}function xd(i,e,t,n){switch(i){case-2:return t<e;case-1:return n>=e&&t<e;case 0:return t<e&&n>e;case 1:return t<=e&&n>e;case 2:return n>e;case 4:return!0}}function qn(i,e,t,n){for(var s;i.from==i.to||(t<1?i.from>=e:i.from>e)||(t>-1?i.to<=e:i.to<e);){let o=!n&&i instanceof tt&&i.index<0?null:i.parent;if(!o)return i;i=o}let r=n?0:fe.IgnoreOverlays;if(n)for(let o=i,l=o.parent;l;o=l,l=o.parent)o instanceof tt&&o.index<0&&((s=l.enter(e,t,r))===null||s===void 0?void 0:s.from)!=o.from&&(i=l);for(;;){let o=i.enter(e,t,r);if(!o)return i;i=o}}class Od{cursor(e=0){return new sr(this,e)}getChild(e,t=null,n=null){let s=Zh(this,e,t,n);return s.length?s[0]:null}getChildren(e,t=null,n=null){return Zh(this,e,t,n)}resolve(e,t=0){return qn(this,e,t,!1)}resolveInner(e,t=0){return qn(this,e,t,!0)}matchContext(e){return xl(this.parent,e)}enterUnfinishedNodesBefore(e){let t=this.childBefore(e),n=this;for(;t;){let s=t.lastChild;if(!s||s.to!=t.to)break;s.type.isError&&s.from==s.to?(n=t,t=s.prevSibling):t=s}return n}get node(){return this}get next(){return this.parent}}class tt extends Od{constructor(e,t,n,s){super(),this._tree=e,this.from=t,this.index=n,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(e,t,n,s,r=0){for(let o=this;;){for(let{children:l,positions:a}=o._tree,h=t>0?l.length:-1;e!=h;e+=t){let c=l[e],u=a[e]+o.from,f;if(!(!(r&fe.EnterBracketed&&c instanceof Oe&&(f=hn.get(c))&&!f.overlay&&f.bracketed&&n>=u&&n<=u+c.length)&&!xd(s,n,u,u+c.length))){if(c instanceof bi){if(r&fe.ExcludeBuffers)continue;let d=c.findChild(0,c.buffer.length,t,n-u,s);if(d>-1)return new pi(new _b(o,c,e,u),null,d)}else if(r&fe.IncludeAnonymous||!c.type.isAnonymous||ha(c)){let d;if(!(r&fe.IgnoreMounts)&&(d=hn.get(c))&&!d.overlay)return new tt(d.tree,u,e,o);let m=new tt(c,u,e,o);return r&fe.IncludeAnonymous||!m.type.isAnonymous?m:m.nextChild(t<0?c.children.length-1:0,t,n,s,r)}}}if(r&fe.IncludeAnonymous||!o.type.isAnonymous||(o.index>=0?e=o.index+t:e=t<0?-1:o._parent._tree.children.length,o=o._parent,!o))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(e){return this.nextChild(0,1,e,2)}childBefore(e){return this.nextChild(this._tree.children.length-1,-1,e,-2)}prop(e){return this._tree.prop(e)}enter(e,t,n=0){let s;if(!(n&fe.IgnoreOverlays)&&(s=hn.get(this._tree))&&s.overlay){let r=e-this.from,o=n&fe.EnterBracketed&&s.bracketed;for(let{from:l,to:a}of s.overlay)if((t>0||o?l<=r:l<r)&&(t<0||o?a>=r:a>r))return new tt(s.tree,s.overlay[0].from+this.from,-1,this)}return this.nextChild(0,1,e,t,n)}nextSignificantParent(){let e=this;for(;e.type.isAnonymous&&e._parent;)e=e._parent;return e}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 Zh(i,e,t,n){let s=i.cursor(),r=[];if(!s.firstChild())return r;if(t!=null){for(let o=!1;!o;)if(o=s.type.is(t),!s.nextSibling())return r}for(;;){if(n!=null&&s.type.is(n))return r;if(s.type.is(e)&&r.push(s.node),!s.nextSibling())return n==null?r:[]}}function xl(i,e,t=e.length-1){for(let n=i;t>=0;n=n.parent){if(!n)return!1;if(!n.type.isAnonymous){if(e[t]&&e[t]!=n.name)return!1;t--}}return!0}class _b{constructor(e,t,n,s){this.parent=e,this.buffer=t,this.index=n,this.start=s}}class pi extends Od{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(e,t,n){super(),this.context=e,this._parent=t,this.index=n,this.type=e.buffer.set.types[e.buffer.buffer[n]]}child(e,t,n){let{buffer:s}=this.context,r=s.findChild(this.index+4,s.buffer[this.index+3],e,t-this.context.start,n);return r<0?null:new pi(this.context,this,r)}get firstChild(){return this.child(1,0,4)}get lastChild(){return this.child(-1,0,4)}childAfter(e){return this.child(1,e,2)}childBefore(e){return this.child(-1,e,-2)}prop(e){return this.type.prop(e)}enter(e,t,n=0){if(n&fe.ExcludeBuffers)return null;let{buffer:s}=this.context,r=s.findChild(this.index+4,s.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return r<0?null:new pi(this.context,this,r)}get parent(){return this._parent||this.context.parent.nextSignificantParent()}externalSibling(e){return this._parent?null:this.context.parent.nextChild(this.context.index+e,e,0,4)}get nextSibling(){let{buffer:e}=this.context,t=e.buffer[this.index+3];return t<(this._parent?e.buffer[this._parent.index+3]:e.buffer.length)?new pi(this.context,this._parent,t):this.externalSibling(1)}get prevSibling(){let{buffer:e}=this.context,t=this._parent?this._parent.index+4:0;return this.index==t?this.externalSibling(-1):new pi(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:n}=this.context,s=this.index+4,r=n.buffer[this.index+3];if(r>s){let o=n.buffer[this.index+1];e.push(n.slice(s,r,o)),t.push(0)}return new Oe(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}}function vd(i){if(!i.length)return null;let e=0,t=i[0];for(let r=1;r<i.length;r++){let o=i[r];(o.from>t.from||o.to<t.to)&&(t=o,e=r)}let n=t instanceof tt&&t.index<0?null:t.parent,s=i.slice();return n?s[e]=n:s.splice(e,1),new Ib(s,t)}class Ib{constructor(e,t){this.heads=e,this.node=t}get next(){return vd(this.heads)}}function Fb(i,e,t){let n=i.resolveInner(e,t),s=null;for(let r=n instanceof tt?n:n.context.parent;r;r=r.parent)if(r.index<0){let o=r.parent;(s||(s=[n])).push(o.resolve(e,t)),r=o}else{let o=hn.get(r.tree);if(o&&o.overlay&&o.overlay[0].from<=e&&o.overlay[o.overlay.length-1].to>=e){let l=new tt(o.tree,o.overlay[0].from+r.from,-1,r);(s||(s=[n])).push(qn(l,e,t,!1))}}return s?vd(s):n}class sr{get name(){return this.type.name}constructor(e,t=0){if(this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,this.mode=t&~fe.EnterBracketed,e instanceof tt)this.yieldNode(e);else{this._tree=e.context.parent,this.buffer=e.context;for(let n=e._parent;n;n=n._parent)this.stack.unshift(n.index);this.bufferNode=e,this.yieldBuf(e.index)}}yieldNode(e){return e?(this._tree=e,this.type=e.type,this.from=e.from,this.to=e.to,!0):!1}yieldBuf(e,t){this.index=e;let{start:n,buffer:s}=this.buffer;return this.type=t||s.set.types[s.buffer[e]],this.from=n+s.buffer[e+1],this.to=n+s.buffer[e+2],!0}yield(e){return e?e instanceof tt?(this.buffer=null,this.yieldNode(e)):(this.buffer=e.context,this.yieldBuf(e.index,e.type)):!1}toString(){return this.buffer?this.buffer.buffer.childString(this.index):this._tree.toString()}enterChild(e,t,n){if(!this.buffer)return this.yield(this._tree.nextChild(e<0?this._tree._tree.children.length-1:0,e,t,n,this.mode));let{buffer:s}=this.buffer,r=s.findChild(this.index+4,s.buffer[this.index+3],e,t-this.buffer.start,n);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(e){return this.enterChild(1,e,2)}childBefore(e){return this.enterChild(-1,e,-2)}enter(e,t,n=this.mode){return this.buffer?n&fe.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,n))}parent(){if(!this.buffer)return this.yieldNode(this.mode&fe.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&fe.IncludeAnonymous?this.buffer.parent:this.buffer.parent.nextSignificantParent();return this.buffer=null,this.yieldNode(e)}sibling(e){if(!this.buffer)return this._tree._parent?this.yield(this._tree.index<0?null:this._tree._parent.nextChild(this._tree.index+e,e,0,4,this.mode)):!1;let{buffer:t}=this.buffer,n=this.stack.length-1;if(e<0){let s=n<0?0:this.stack[n]+4;if(this.index!=s)return this.yieldBuf(t.findChild(s,this.index,-1,0,4))}else{let s=t.buffer[this.index+3];if(s<(n<0?t.buffer.length:t.buffer[this.stack[n]+3]))return this.yieldBuf(s)}return n<0?this.yield(this.buffer.parent.nextChild(this.buffer.index+e,e,0,4,this.mode)):!1}nextSibling(){return this.sibling(1)}prevSibling(){return this.sibling(-1)}atLastNode(e){let t,n,{buffer:s}=this;if(s){if(e>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:t,parent:n}=s)}else({index:t,_parent:n}=this._tree);for(;n;{index:t,_parent:n}=n)if(t>-1)for(let r=t+e,o=e<0?-1:n._tree.children.length;r!=o;r+=e){let l=n._tree.children[r];if(this.mode&fe.IncludeAnonymous||l instanceof bi||!l.type.isAnonymous||ha(l))return!1}return!0}move(e,t){if(t&&this.enterChild(e,0,4))return!0;for(;;){if(this.sibling(e))return!0;if(this.atLastNode(e)||!this.parent())return!1}}next(e=!0){return this.move(1,e)}prev(e=!0){return this.move(-1,e)}moveTo(e,t=0){for(;(this.from==this.to||(t<1?this.from>=e:this.from>e)||(t>-1?this.to<=e:this.to<e))&&this.parent(););for(;this.enterChild(1,e,t););return this}get node(){if(!this.buffer)return this._tree;let e=this.bufferNode,t=null,n=0;if(e&&e.context==this.buffer)e:for(let s=this.index,r=this.stack.length;r>=0;){for(let o=e;o;o=o._parent)if(o.index==s){if(s==this.index)return o;t=o,n=r+1;break e}s=this.stack[--r]}for(let s=n;s<this.stack.length;s++)t=new pi(this.buffer,t,this.stack[s]);return this.bufferNode=new pi(this.buffer,t,this.index)}get tree(){return this.buffer?null:this._tree._tree}iterate(e,t){for(let n=0;;){let s=!1;if(this.type.isAnonymous||e(this)!==!1){if(this.firstChild()){n++;continue}this.type.isAnonymous||(s=!0)}for(;;){if(s&&t&&t(this),s=this.type.isAnonymous,!n)return;if(this.nextSibling())break;this.parent(),n--,s=!0}}}matchContext(e){if(!this.buffer)return xl(this.node.parent,e);let{buffer:t}=this.buffer,{types:n}=t.set;for(let s=e.length-1,r=this.stack.length-1;s>=0;r--){if(r<0)return xl(this._tree,e,s);let o=n[t.buffer[this.stack[r]]];if(!o.isAnonymous){if(e[s]&&e[s]!=o.name)return!1;s--}}return!0}}function ha(i){return i.children.some(e=>e instanceof bi||!e.type.isAnonymous||ha(e))}function Zb(i){var e;let{buffer:t,nodeSet:n,maxBufferLength:s=bd,reused:r=[],minRepeatType:o=n.types.length}=i,l=Array.isArray(t)?new aa(t,t.length):t,a=n.types,h=0,c=0;function u(k,v,b,D,R,C){let{id:H,start:E,end:B,size:_}=l,q=c,ee=h;if(_<0)if(l.next(),_==-1){let ue=r[H];b.push(ue),D.push(E-k);return}else if(_==-3){h=H;return}else if(_==-4){c=H;return}else throw new RangeError(`Unrecognized record size: ${_}`);let ne=a[H],P,Z,se=E-k;if(B-E<=s&&(Z=w(l.pos-v,R))){let ue=new Uint16Array(Z.size-Z.skip),N=l.pos-Z.size,M=ue.length;for(;l.pos>N;)M=y(Z.start,ue,M);P=new bi(ue,B-Z.start,n),se=Z.start-k}else{let ue=l.pos-_;l.next();let N=[],M=[],T=H>=o?H:-1,Q=0,K=B;for(;l.pos>ue;)T>=0&&l.id==T&&l.size>=0?(l.end<=K-s&&(m(N,M,E,Q,l.end,K,T,q,ee),Q=N.length,K=l.end),l.next()):C>2500?f(E,ue,N,M):u(E,ue,N,M,T,C+1);if(T>=0&&Q>0&&Q<N.length&&m(N,M,E,Q,E,K,T,q,ee),N.reverse(),M.reverse(),T>-1&&Q>0){let oe=d(ne,ee);P=ca(ne,N,M,0,N.length,0,B-E,oe,oe)}else P=$(ne,N,M,B-E,q-B,ee)}b.push(P),D.push(se)}function f(k,v,b,D){let R=[],C=0,H=-1;for(;l.pos>v;){let{id:E,start:B,end:_,size:q}=l;if(q>4)l.next();else{if(H>-1&&B<H)break;H<0&&(H=_-s),R.push(E,B,_),C++,l.next()}}if(C){let E=new Uint16Array(C*4),B=R[R.length-2];for(let _=R.length-3,q=0;_>=0;_-=3)E[q++]=R[_],E[q++]=R[_+1]-B,E[q++]=R[_+2]-B,E[q++]=q;b.push(new bi(E,R[2]-B,n)),D.push(B-k)}}function d(k,v){return(b,D,R)=>{let C=0,H=b.length-1,E,B;if(H>=0&&(E=b[H])instanceof Oe){if(!H&&E.type==k&&E.length==R)return E;(B=E.prop(ie.lookAhead))&&(C=D[H]+E.length+B)}return $(k,b,D,R,C,v)}}function m(k,v,b,D,R,C,H,E,B){let _=[],q=[];for(;k.length>D;)_.push(k.pop()),q.push(v.pop()+b-R);k.push($(n.types[H],_,q,C-R,E-C,B)),v.push(R-b)}function $(k,v,b,D,R,C,H){if(C){let E=[ie.contextHash,C];H=H?[E].concat(H):[E]}if(R>25){let E=[ie.lookAhead,R];H=H?[E].concat(H):[E]}return new Oe(k,v,b,D,H)}function w(k,v){let b=l.fork(),D=0,R=0,C=0,H=b.end-s,E={size:0,start:0,skip:0};e:for(let B=b.pos-k;b.pos>B;){let _=b.size;if(b.id==v&&_>=0){E.size=D,E.start=R,E.skip=C,C+=4,D+=4,b.next();continue}let q=b.pos-_;if(_<0||q<B||b.start<H)break;let ee=b.id>=o?4:0,ne=b.start;for(b.next();b.pos>q;){if(b.size<0)if(b.size==-3||b.size==-4)ee+=4;else break e;else b.id>=o&&(ee+=4);b.next()}R=ne,D+=_,C+=ee}return(v<0||D==k)&&(E.size=D,E.start=R,E.skip=C),E.size>4?E:void 0}function y(k,v,b){let{id:D,start:R,end:C,size:H}=l;if(l.next(),H>=0&&D<o){let E=b;if(H>4){let B=l.pos-(H-4);for(;l.pos>B;)b=y(k,v,b)}v[--b]=E,v[--b]=C-k,v[--b]=R-k,v[--b]=D}else H==-3?h=D:H==-4&&(c=D);return b}let x=[],O=[];for(;l.pos>0;)u(i.start||0,i.bufferStart||0,x,O,-1,0);let j=(e=i.length)!==null&&e!==void 0?e:x.length?O[0]+x[0].length:0;return new Oe(a[i.topID],x.reverse(),O.reverse(),j)}const qh=new WeakMap;function _s(i,e){if(!i.isAnonymous||e instanceof bi||e.type!=i)return 1;let t=qh.get(e);if(t==null){t=1;for(let n of e.children){if(n.type!=i||!(n instanceof Oe)){t=1;break}t+=_s(i,n)}qh.set(e,t)}return t}function ca(i,e,t,n,s,r,o,l,a){let h=0;for(let m=n;m<s;m++)h+=_s(i,e[m]);let c=Math.ceil(h*1.5/8),u=[],f=[];function d(m,$,w,y,x){for(let O=w;O<y;){let j=O,k=$[O],v=_s(i,m[O]);for(O++;O<y;O++){let b=_s(i,m[O]);if(v+b>=c)break;v+=b}if(O==j+1){if(v>c){let b=m[j];d(b.children,b.positions,0,b.children.length,$[j]+x);continue}u.push(m[j])}else{let b=$[O-1]+m[O-1].length-k;u.push(ca(i,m,$,j,O,k,b,null,a))}f.push(k+x-r)}}return d(e,t,n,s,0),(l||a)(u,f,o)}class Kt{constructor(e,t,n,s,r=!1,o=!1){this.from=e,this.to=t,this.tree=n,this.offset=s,this.open=(r?1:0)|(o?2:0)}get openStart(){return(this.open&1)>0}get openEnd(){return(this.open&2)>0}static addTree(e,t=[],n=!1){let s=[new Kt(0,e.length,e,0,!1,n)];for(let r of t)r.to>e.length&&s.push(r);return s}static applyChanges(e,t,n=128){if(!t.length)return e;let s=[],r=1,o=e.length?e[0]:null;for(let l=0,a=0,h=0;;l++){let c=l<t.length?t[l]:null,u=c?c.fromA:1e9;if(u-a>=n)for(;o&&o.from<u;){let f=o;if(a>=f.from||u<=f.to||h){let d=Math.max(f.from,a)-h,m=Math.min(f.to,u)-h;f=d>=m?null:new Kt(d,m,f.tree,f.offset+h,l>0,!!c)}if(f&&s.push(f),o.to>u)break;o=r<e.length?e[r++]:null}if(!c)break;a=c.toA,h=c.toA-c.toB}return s}}class kd{startParse(e,t,n){return typeof e=="string"&&(e=new qb(e)),n=n?n.length?n.map(s=>new ct(s.from,s.to)):[new ct(0,0)]:[new ct(0,e.length)],this.createParse(e,t||[],n)}parse(e,t,n){let s=this.startParse(e,t,n);for(;;){let r=s.advance();if(r)return r}}}class qb{constructor(e){this.string=e}get length(){return this.string.length}chunk(e){return this.string.slice(e)}get lineChunks(){return!1}read(e,t){return this.string.slice(e,t)}}function Ub(i){return(e,t,n,s)=>new Vb(e,i,t,n,s)}class Uh{constructor(e,t,n,s,r,o){this.parser=e,this.parse=t,this.overlay=n,this.bracketed=s,this.target=r,this.from=o}}function Xh(i){if(!i.length||i.some(e=>e.from>=e.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(i))}class Xb{constructor(e,t,n,s,r,o,l,a){this.parser=e,this.predicate=t,this.mounts=n,this.index=s,this.start=r,this.bracketed=o,this.target=l,this.prev=a,this.depth=0,this.ranges=[]}}const Ol=new ie({perNode:!0});class Vb{constructor(e,t,n,s,r){this.nest=t,this.input=n,this.fragments=s,this.ranges=r,this.inner=[],this.innerDone=0,this.baseTree=null,this.stoppedAt=null,this.baseParse=e}advance(){if(this.baseParse){let n=this.baseParse.advance();if(!n)return null;if(this.baseParse=null,this.baseTree=n,this.startInner(),this.stoppedAt!=null)for(let s of this.inner)s.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let n=this.baseTree;return this.stoppedAt!=null&&(n=new Oe(n.type,n.children,n.positions,n.length,n.propValues.concat([[Ol,this.stoppedAt]]))),n}let e=this.inner[this.innerDone],t=e.parse.advance();if(t){this.innerDone++;let n=Object.assign(Object.create(null),e.target.props);n[ie.mounted.id]=new hn(t,e.overlay,e.parser,e.bracketed),e.target.props=n}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.input.length;for(let t=this.innerDone;t<this.inner.length;t++)this.inner[t].from<e&&(e=Math.min(e,this.inner[t].parse.parsedPos));return e}stopAt(e){if(this.stoppedAt=e,this.baseParse)this.baseParse.stopAt(e);else for(let t=this.innerDone;t<this.inner.length;t++)this.inner[t].parse.stopAt(e)}startInner(){let e=new ex(this.fragments),t=null,n=null,s=new sr(new tt(this.baseTree,this.ranges[0].from,0,null),fe.IncludeAnonymous|fe.IgnoreMounts);e:for(let r,o;;){let l=!0,a;if(this.stoppedAt!=null&&s.from>=this.stoppedAt)l=!1;else if(e.hasNode(s)){if(t){let h=t.mounts.find(c=>c.frag.from<=s.from&&c.frag.to>=s.to&&c.mount.overlay);if(h)for(let c of h.mount.overlay){let u=c.from+h.pos,f=c.to+h.pos;u>=s.from&&f<=s.to&&!t.ranges.some(d=>d.from<f&&d.to>u)&&t.ranges.push({from:u,to:f})}}l=!1}else if(n&&(o=Kb(n.ranges,s.from,s.to)))l=o!=2;else if(!s.type.isAnonymous&&(r=this.nest(s,this.input))&&(s.from<s.to||!r.overlay)){s.tree||(Jb(s),t&&t.depth++,n&&n.depth++);let h=e.findMounts(s.from,r.parser);if(typeof r.overlay=="function")t=new Xb(r.parser,r.overlay,h,this.inner.length,s.from,!!r.bracketed,s.tree,t);else{let c=Jh(this.ranges,r.overlay||(s.from<s.to?[new ct(s.from,s.to)]:[]));c.length&&Xh(c),(c.length||!r.overlay)&&this.inner.push(new Uh(r.parser,c.length?r.parser.startParse(this.input,ec(h,c),c):r.parser.startParse(""),r.overlay?r.overlay.map(u=>new ct(u.from-s.from,u.to-s.from)):null,!!r.bracketed,s.tree,c.length?c[0].from:s.from)),r.overlay?c.length&&(n={ranges:c,depth:0,prev:n}):l=!1}}else if(t&&(a=t.predicate(s))&&(a===!0&&(a=new ct(s.from,s.to)),a.from<a.to)){let h=t.ranges.length-1;h>=0&&t.ranges[h].to==a.from?t.ranges[h]={from:t.ranges[h].from,to:a.to}:t.ranges.push(a)}if(l&&s.firstChild())t&&t.depth++,n&&n.depth++;else for(;!s.nextSibling();){if(!s.parent())break e;if(t&&!--t.depth){let h=Jh(this.ranges,t.ranges);h.length&&(Xh(h),this.inner.splice(t.index,0,new Uh(t.parser,t.parser.startParse(this.input,ec(t.mounts,h),h),t.ranges.map(c=>new ct(c.from-t.start,c.to-t.start)),t.bracketed,t.target,h[0].from))),t=t.prev}n&&!--n.depth&&(n=n.prev)}}}}function Kb(i,e,t){for(let n of i){if(n.from>=t)break;if(n.to>e)return n.from<=e&&n.to>=t?2:1}return 0}function Vh(i,e,t,n,s,r){if(e<t){let o=i.buffer[e+1];n.push(i.slice(e,t,o)),s.push(o-r)}}function Jb(i){let{node:e}=i,t=[],n=e.context.buffer;do t.push(i.index),i.parent();while(!i.tree);let s=i.tree,r=s.children.indexOf(n),o=s.children[r],l=o.buffer,a=[r];function h(c,u,f,d,m,$){let w=t[$],y=[],x=[];Vh(o,c,w,y,x,d);let O=l[w+1],j=l[w+2];a.push(y.length);let k=$?h(w+4,l[w+3],o.set.types[l[w]],O,j-O,$-1):e.toTree();return y.push(k),x.push(O-d),Vh(o,l[w+3],u,y,x,d),new Oe(f,y,x,m)}s.children[r]=h(0,l.length,qe.none,0,o.length,t.length-1);for(let c of a){let u=i.tree.children[c],f=i.tree.positions[c];i.yield(new tt(u,f+i.from,c,i._tree))}}class Kh{constructor(e,t){this.offset=t,this.done=!1,this.cursor=e.cursor(fe.IncludeAnonymous|fe.IgnoreMounts)}moveTo(e){let{cursor:t}=this,n=e-this.offset;for(;!this.done&&t.from<n;)if(!(t.to>=e&&t.enter(n,1,fe.IgnoreOverlays|fe.ExcludeBuffers)))if(t.to<=e)t.next(!1)||(this.done=!0);else break}hasNode(e){if(this.moveTo(e.from),!this.done&&this.cursor.from+this.offset==e.from&&this.cursor.tree)for(let t=this.cursor.tree;;){if(t==e.tree)return!0;if(t.children.length&&t.positions[0]==0&&t.children[0]instanceof Oe)t=t.children[0];else break}return!1}}let ex=class{constructor(e){var t;if(this.fragments=e,this.curTo=0,this.fragI=0,e.length){let n=this.curFrag=e[0];this.curTo=(t=n.tree.prop(Ol))!==null&&t!==void 0?t:n.to,this.inner=new Kh(n.tree,-n.offset)}else this.curFrag=this.inner=null}hasNode(e){for(;this.curFrag&&e.from>=this.curTo;)this.nextFrag();return this.curFrag&&this.curFrag.from<=e.from&&this.curTo>=e.to&&this.inner.hasNode(e)}nextFrag(){var e;if(this.fragI++,this.fragI==this.fragments.length)this.curFrag=this.inner=null;else{let t=this.curFrag=this.fragments[this.fragI];this.curTo=(e=t.tree.prop(Ol))!==null&&e!==void 0?e:t.to,this.inner=new Kh(t.tree,-t.offset)}}findMounts(e,t){var n;let s=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let r=this.inner.cursor.node;r;r=r.parent){let o=(n=r.tree)===null||n===void 0?void 0:n.prop(ie.mounted);if(o&&o.parser==t)for(let l=this.fragI;l<this.fragments.length;l++){let a=this.fragments[l];if(a.from>=r.to)break;a.tree==this.curFrag.tree&&s.push({frag:a,pos:r.from-a.offset,mount:o})}}}return s}};function Jh(i,e){let t=null,n=e;for(let s=1,r=0;s<i.length;s++){let o=i[s-1].to,l=i[s].from;for(;r<n.length;r++){let a=n[r];if(a.from>=l)break;a.to<=o||(t||(n=t=e.slice()),a.from<o?(t[r]=new ct(a.from,o),a.to>l&&t.splice(r+1,0,new ct(l,a.to))):a.to>l?t[r--]=new ct(l,a.to):t.splice(r--,1))}}return n}function tx(i,e,t,n){let s=0,r=0,o=!1,l=!1,a=-1e9,h=[];for(;;){let c=s==i.length?1e9:o?i[s].to:i[s].from,u=r==e.length?1e9:l?e[r].to:e[r].from;if(o!=l){let f=Math.max(a,t),d=Math.min(c,u,n);f<d&&h.push(new ct(f,d))}if(a=Math.min(c,u),a==1e9)break;c==a&&(o?(o=!1,s++):o=!0),u==a&&(l?(l=!1,r++):l=!0)}return h}function ec(i,e){let t=[];for(let{pos:n,mount:s,frag:r}of i){let o=n+(s.overlay?s.overlay[0].from:0),l=o+s.tree.length,a=Math.max(r.from,o),h=Math.min(r.to,l);if(s.overlay){let c=s.overlay.map(f=>new ct(f.from+n,f.to+n)),u=tx(e,c,a,h);for(let f=0,d=a;;f++){let m=f==u.length,$=m?h:u[f].from;if($>d&&t.push(new Kt(d,$,s.tree,-o,r.from>=d||r.openStart,r.to<=$||r.openEnd)),m)break;d=u[f].to}}else t.push(new Kt(a,h,s.tree,-o,r.from>=o||r.openStart,r.to<=l||r.openEnd))}return t}let ix=0;class L{constructor(e,t,n,s){this.name=e,this.set=t,this.base=n,this.modified=s,this.id=ix++}toString(){let{name:e}=this;for(let t of this.modified)t.name&&(e=`${t.name}(${e})`);return e}static define(e,t){let n=typeof e=="string"?e:"?";if(e instanceof L&&(t=e),t!=null&&t.base)throw new Error("Can not derive from a modified tag");let s=new L(n,[],null,[]);if(s.set.push(s),t)for(let r of t.set)s.set.push(r);return s}static defineModifier(e){let t=new rr(e);return n=>n.modified.indexOf(t)>-1?n:rr.get(n.base||n,n.modified.concat(t).sort((s,r)=>s.id-r.id))}}let nx=0;class rr{constructor(e){this.name=e,this.instances=[],this.id=nx++}static get(e,t){if(!t.length)return e;let n=t[0].instances.find(l=>l.base==e&&sx(t,l.modified));if(n)return n;let s=[],r=new L(e.name,s,e,t);for(let l of t)l.instances.push(r);let o=rx(t);for(let l of e.set)if(!l.modified.length)for(let a of o)s.push(rr.get(l,a));return r}}function sx(i,e){return i.length==e.length&&i.every((t,n)=>t==e[n])}function rx(i){let e=[[]];for(let t=0;t<i.length;t++)for(let n=0,s=e.length;n<s;n++)e.push(e[n].concat(i[t]));return e.sort((t,n)=>n.length-t.length)}function Oi(i){let e=Object.create(null);for(let t in i){let n=i[t];Array.isArray(n)||(n=[n]);for(let s of t.split(" "))if(s){let r=[],o=2,l=s;for(let u=0;;){if(l=="..."&&u>0&&u+3==s.length){o=1;break}let f=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(l);if(!f)throw new RangeError("Invalid path: "+s);if(r.push(f[0]=="*"?"":f[0][0]=='"'?JSON.parse(f[0]):f[0]),u+=f[0].length,u==s.length)break;let d=s[u++];if(u==s.length&&d=="!"){o=0;break}if(d!="/")throw new RangeError("Invalid path: "+s);l=s.slice(u)}let a=r.length-1,h=r[a];if(!h)throw new RangeError("Invalid path: "+s);let c=new or(n,o,a>0?r.slice(0,a):null);e[h]=c.sort(e[h])}}return Sd.add(e)}const Sd=new ie;class or{constructor(e,t,n,s){this.tags=e,this.mode=t,this.context=n,this.next=s}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth<this.depth?(this.next=e,this):(e.next=this.sort(e.next),e)}get depth(){return this.context?this.context.length:0}}or.empty=new or([],2,null);function Cd(i,e){let t=Object.create(null);for(let r of i)if(!Array.isArray(r.tag))t[r.tag.id]=r.class;else for(let o of r.tag)t[o.id]=r.class;let{scope:n,all:s=null}=e||{};return{style:r=>{let o=s;for(let l of r)for(let a of l.set){let h=t[a.id];if(h){o=o?o+" "+h:h;break}}return o},scope:n}}function ox(i,e){let t=null;for(let n of i){let s=n.style(e);s&&(t=t?t+" "+s:s)}return t}function lx(i,e,t,n=0,s=i.length){let r=new ax(n,Array.isArray(e)?e:[e],t);r.highlightRange(i.cursor(),n,s,"",r.highlighters),r.flush(s)}class ax{constructor(e,t,n){this.at=e,this.highlighters=t,this.span=n,this.class=""}startSpan(e,t){t!=this.class&&(this.flush(e),e>this.at&&(this.at=e),this.class=t)}flush(e){e>this.at&&this.class&&this.span(this.at,e,this.class)}highlightRange(e,t,n,s,r){let{type:o,from:l,to:a}=e;if(l>=n||a<=t)return;o.isTop&&(r=this.highlighters.filter(d=>!d.scope||d.scope(o)));let h=s,c=hx(e)||or.empty,u=ox(r,c.tags);if(u&&(h&&(h+=" "),h+=u,c.mode==1&&(s+=(s?" ":"")+u)),this.startSpan(Math.max(t,l),h),c.opaque)return;let f=e.tree&&e.tree.prop(ie.mounted);if(f&&f.overlay){let d=e.node.enter(f.overlay[0].from+l,1),m=this.highlighters.filter(w=>!w.scope||w.scope(f.tree.type)),$=e.firstChild();for(let w=0,y=l;;w++){let x=w<f.overlay.length?f.overlay[w]:null,O=x?x.from+l:a,j=Math.max(t,y),k=Math.min(n,O);if(j<k&&$)for(;e.from<k&&(this.highlightRange(e,j,k,s,r),this.startSpan(Math.min(k,e.to),h),!(e.to>=O||!e.nextSibling())););if(!x||O>n)break;y=x.to+l,y>t&&(this.highlightRange(d.cursor(),Math.max(t,x.from+l),Math.min(n,y),"",m),this.startSpan(Math.min(n,y),h))}$&&e.parent()}else if(e.firstChild()){f&&(s="");do if(!(e.to<=t)){if(e.from>=n)break;this.highlightRange(e,t,n,s,r),this.startSpan(Math.min(n,e.to),h)}while(e.nextSibling());e.parent()}}}function hx(i){let e=i.type.prop(Sd);for(;e&&e.context&&!i.matchContext(e.context);)e=e.next;return e||null}const G=L.define,Rs=G(),li=G(),tc=G(li),ic=G(li),ai=G(),Ns=G(ai),uo=G(ai),Nt=G(),Ei=G(Nt),jt=G(),Rt=G(),vl=G(),jn=G(vl),Ps=G(),z={comment:Rs,lineComment:G(Rs),blockComment:G(Rs),docComment:G(Rs),name:li,variableName:G(li),typeName:tc,tagName:G(tc),propertyName:ic,attributeName:G(ic),className:G(li),labelName:G(li),namespace:G(li),macroName:G(li),literal:ai,string:Ns,docString:G(Ns),character:G(Ns),attributeValue:G(Ns),number:uo,integer:G(uo),float:G(uo),bool:G(ai),regexp:G(ai),escape:G(ai),color:G(ai),url:G(ai),keyword:jt,self:G(jt),null:G(jt),atom:G(jt),unit:G(jt),modifier:G(jt),operatorKeyword:G(jt),controlKeyword:G(jt),definitionKeyword:G(jt),moduleKeyword:G(jt),operator:Rt,derefOperator:G(Rt),arithmeticOperator:G(Rt),logicOperator:G(Rt),bitwiseOperator:G(Rt),compareOperator:G(Rt),updateOperator:G(Rt),definitionOperator:G(Rt),typeOperator:G(Rt),controlOperator:G(Rt),punctuation:vl,separator:G(vl),bracket:jn,angleBracket:G(jn),squareBracket:G(jn),paren:G(jn),brace:G(jn),content:Nt,heading:Ei,heading1:G(Ei),heading2:G(Ei),heading3:G(Ei),heading4:G(Ei),heading5:G(Ei),heading6:G(Ei),contentSeparator:G(Nt),list:G(Nt),quote:G(Nt),emphasis:G(Nt),strong:G(Nt),link:G(Nt),monospace:G(Nt),strikethrough:G(Nt),inserted:G(),deleted:G(),changed:G(),invalid:G(),meta:Ps,documentMeta:G(Ps),annotation:G(Ps),processingInstruction:G(Ps),definition:L.defineModifier("definition"),constant:L.defineModifier("constant"),function:L.defineModifier("function"),standard:L.defineModifier("standard"),local:L.defineModifier("local"),special:L.defineModifier("special")};for(let i in z){let e=z[i];e instanceof L&&(e.name=i)}Cd([{tag:z.link,class:"tok-link"},{tag:z.heading,class:"tok-heading"},{tag:z.emphasis,class:"tok-emphasis"},{tag:z.strong,class:"tok-strong"},{tag:z.keyword,class:"tok-keyword"},{tag:z.atom,class:"tok-atom"},{tag:z.bool,class:"tok-bool"},{tag:z.url,class:"tok-url"},{tag:z.labelName,class:"tok-labelName"},{tag:z.inserted,class:"tok-inserted"},{tag:z.deleted,class:"tok-deleted"},{tag:z.literal,class:"tok-literal"},{tag:z.string,class:"tok-string"},{tag:z.number,class:"tok-number"},{tag:[z.regexp,z.escape,z.special(z.string)],class:"tok-string2"},{tag:z.variableName,class:"tok-variableName"},{tag:z.local(z.variableName),class:"tok-variableName tok-local"},{tag:z.definition(z.variableName),class:"tok-variableName tok-definition"},{tag:z.special(z.variableName),class:"tok-variableName2"},{tag:z.definition(z.propertyName),class:"tok-propertyName tok-definition"},{tag:z.typeName,class:"tok-typeName"},{tag:z.namespace,class:"tok-namespace"},{tag:z.className,class:"tok-className"},{tag:z.macroName,class:"tok-macroName"},{tag:z.propertyName,class:"tok-propertyName"},{tag:z.operator,class:"tok-operator"},{tag:z.comment,class:"tok-comment"},{tag:z.meta,class:"tok-meta"},{tag:z.invalid,class:"tok-invalid"},{tag:z.punctuation,class:"tok-punctuation"}]);var fo;const tn=new ie;function cx(i){return I.define({combine:i?e=>e.concat(i):void 0})}const ux=new ie;class wt{constructor(e,t,n=[],s=""){this.data=e,this.name=s,ce.prototype.hasOwnProperty("tree")||Object.defineProperty(ce.prototype,"tree",{get(){return Wt(this)}}),this.parser=t,this.extension=[wn.of(this),ce.languageData.of((r,o,l)=>{let a=nc(r,o,l),h=a.type.prop(tn);if(!h)return[];let c=r.facet(h),u=a.type.prop(ux);if(u){let f=a.resolve(o-a.from,l);for(let d of u)if(d.test(f,r)){let m=r.facet(d.facet);return d.type=="replace"?m:m.concat(c)}}return c})].concat(n)}isActiveAt(e,t,n=-1){return nc(e,t,n).type.prop(tn)==this.data}findRegions(e){let t=e.facet(wn);if((t==null?void 0:t.data)==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let n=[],s=(r,o)=>{if(r.prop(tn)==this.data){n.push({from:o,to:o+r.length});return}let l=r.prop(ie.mounted);if(l){if(l.tree.prop(tn)==this.data){if(l.overlay)for(let a of l.overlay)n.push({from:a.from+o,to:a.to+o});else n.push({from:o,to:o+r.length});return}else if(l.overlay){let a=n.length;if(s(l.tree,l.overlay[0].from+o),n.length>a)return}}for(let a=0;a<r.children.length;a++){let h=r.children[a];h instanceof Oe&&s(h,r.positions[a]+o)}};return s(Wt(e),0),n}get allowsNesting(){return!0}}wt.setState=Se.define();function nc(i,e,t){let n=i.facet(wn),s=Wt(i).topNode;if(!n||n.allowsNesting)for(let r=s;r;r=r.enter(e,t,fe.ExcludeBuffers|fe.EnterBracketed))r.type.isTop&&(s=r);return s}class bt extends wt{constructor(e,t,n){super(e,t,[],n),this.parser=t}static define(e){let t=cx(e.languageData);return new bt(t,e.parser.configure({props:[tn.add(n=>n.isTop?t:void 0)]}),e.name)}configure(e,t){return new bt(this.data,this.parser.configure(e),t||this.name)}get allowsNesting(){return this.parser.hasWrappers()}}function Wt(i){let e=i.field(wt.state,!1);return e?e.tree:Oe.empty}class fx{constructor(e){this.doc=e,this.cursorPos=0,this.string="",this.cursor=e.iter()}get length(){return this.doc.length}syncTo(e){return this.string=this.cursor.next(e-this.cursorPos).value,this.cursorPos=e+this.string.length,this.cursorPos-this.string.length}chunk(e){return this.syncTo(e),this.string}get lineChunks(){return!0}read(e,t){let n=this.cursorPos-this.string.length;return e<n||t>=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-n,t-n)}}let Rn=null;class lr{constructor(e,t,n=[],s,r,o,l,a){this.parser=e,this.state=t,this.fragments=n,this.tree=s,this.treeLen=r,this.viewport=o,this.skipped=l,this.scheduleOn=a,this.parse=null,this.tempSkipped=[]}static create(e,t,n){return new lr(e,t,[],Oe.empty,0,n,[],null)}startParse(){return this.parser.startParse(new fx(this.state.doc),this.fragments)}work(e,t){return t!=null&&t>=this.state.doc.length&&(t=void 0),this.tree!=Oe.empty&&this.isDone(t??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var n;if(typeof e=="number"){let s=Date.now()+e;e=()=>Date.now()>s}for(this.parse||(this.parse=this.startParse()),t!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&t<this.state.doc.length&&this.parse.stopAt(t);;){let s=this.parse.advance();if(s)if(this.fragments=this.withoutTempSkipped(Kt.addTree(s,this.fragments,this.parse.stoppedAt!=null)),this.treeLen=(n=this.parse.stoppedAt)!==null&&n!==void 0?n:this.state.doc.length,this.tree=s,this.parse=null,this.treeLen<(t??this.state.doc.length))this.parse=this.startParse();else return!0;if(e())return!1}})}takeTree(){let e,t;this.parse&&(e=this.parse.parsedPos)>=this.treeLen&&((this.parse.stoppedAt==null||this.parse.stoppedAt>e)&&this.parse.stopAt(e),this.withContext(()=>{for(;!(t=this.parse.advance()););}),this.treeLen=e,this.tree=t,this.fragments=this.withoutTempSkipped(Kt.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=Rn;Rn=this;try{return e()}finally{Rn=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=sc(e,t.from,t.to);return e}changes(e,t){let{fragments:n,tree:s,treeLen:r,viewport:o,skipped:l}=this;if(this.takeTree(),!e.empty){let a=[];if(e.iterChangedRanges((h,c,u,f)=>a.push({fromA:h,toA:c,fromB:u,toB:f})),n=Kt.applyChanges(n,a),s=Oe.empty,r=0,o={from:e.mapPos(o.from,-1),to:e.mapPos(o.to,1)},this.skipped.length){l=[];for(let h of this.skipped){let c=e.mapPos(h.from,1),u=e.mapPos(h.to,-1);c<u&&l.push({from:c,to:u})}}}return new lr(this.parser,t,n,s,r,o,l,this.scheduleOn)}updateViewport(e){if(this.viewport.from==e.from&&this.viewport.to==e.to)return!1;this.viewport=e;let t=this.skipped.length;for(let n=0;n<this.skipped.length;n++){let{from:s,to:r}=this.skipped[n];s<e.to&&r>e.from&&(this.fragments=sc(this.fragments,s,r),this.skipped.splice(n--,1))}return this.skipped.length>=t?!1:(this.reset(),!0)}reset(){this.parse&&(this.takeTree(),this.parse=null)}skipUntilInView(e,t){this.skipped.push({from:e,to:t})}static getSkippingParser(e){return new class extends kd{createParse(t,n,s){let r=s[0].from,o=s[s.length-1].to;return{parsedPos:r,advance(){let a=Rn;if(a){for(let h of s)a.tempSkipped.push(h);e&&(a.scheduleOn=a.scheduleOn?Promise.all([a.scheduleOn,e]):e)}return this.parsedPos=o,new Oe(qe.none,[],[],o-r)},stoppedAt:null,stopAt(){}}}}}isDone(e){e=Math.min(e,this.state.doc.length);let t=this.fragments;return this.treeLen>=e&&t.length&&t[0].from==0&&t[0].to>=e}static get(){return Rn}}function sc(i,e,t){return Kt.applyChanges(i,[{fromA:e,toA:t,fromB:e,toB:t}])}class $n{constructor(e){this.context=e,this.tree=e.tree}apply(e){if(!e.docChanged&&this.tree==this.context.tree)return this;let t=this.context.changes(e.changes,e.state),n=this.context.treeLen==e.startState.doc.length?void 0:Math.max(e.changes.mapPos(this.context.treeLen),t.viewport.to);return t.work(20,n)||t.takeTree(),new $n(t)}static init(e){let t=Math.min(3e3,e.doc.length),n=lr.create(e.facet(wn).parser,e,{from:0,to:t});return n.work(20,t)||n.takeTree(),new $n(n)}}wt.state=si.define({create:$n.init,update(i,e){for(let t of e.effects)if(t.is(wt.setState))return t.value;return e.startState.facet(wn)!=e.state.facet(wn)?$n.init(e.state):i.apply(e)}});let Ed=i=>{let e=setTimeout(()=>i(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(Ed=i=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(i,{timeout:400})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});const po=typeof navigator<"u"&&(!((fo=navigator.scheduling)===null||fo===void 0)&&fo.isInputPending)?()=>navigator.scheduling.isInputPending():null,dx=ti.fromClass(class{constructor(e){this.view=e,this.working=null,this.workScheduled=0,this.chunkEnd=-1,this.chunkBudget=-1,this.work=this.work.bind(this),this.scheduleWork()}update(e){let t=this.view.state.field(wt.state).context;(t.updateViewport(e.view.viewport)||this.view.viewport.to>t.treeLen)&&this.scheduleWork(),(e.docChanged||e.selectionSet)&&(this.view.hasFocus&&(this.chunkBudget+=50),this.scheduleWork()),this.checkAsyncSchedule(t)}scheduleWork(){if(this.working)return;let{state:e}=this.view,t=e.field(wt.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=Ed(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEnd<t&&(this.chunkEnd<0||this.view.hasFocus)&&(this.chunkEnd=t+3e4,this.chunkBudget=3e3),this.chunkBudget<=0)return;let{state:n,viewport:{to:s}}=this.view,r=n.field(wt.state);if(r.tree==r.context.tree&&r.context.isDone(s+1e5))return;let o=Date.now()+Math.min(this.chunkBudget,100,e&&!po?Math.max(25,e.timeRemaining()-5):1e9),l=r.context.treeLen<s&&n.doc.length>s+1e3,a=r.context.work(()=>po&&po()||Date.now()>o,s+(l?0:1e5));this.chunkBudget-=Date.now()-t,(a||this.chunkBudget<=0)&&(r.context.takeTree(),this.view.dispatch({effects:wt.setState.of(new $n(r.context))})),this.chunkBudget>0&&!(a&&!l)&&this.scheduleWork(),this.checkAsyncSchedule(r.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(t=>zt(this.view.state,t)).then(()=>this.workScheduled--),e.scheduleOn=null)}destroy(){this.working&&this.working()}isWorking(){return!!(this.working||this.workScheduled>0)}},{eventHandlers:{focus(){this.scheduleWork()}}}),wn=I.define({combine(i){return i.length?i[0]:null},enables:i=>[wt.state,dx,V.contentAttributes.compute([i],e=>{let t=e.facet(i);return t&&t.name?{"data-language":t.name}:{}})]});class vi{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}}class _t{constructor(e,t,n,s,r,o=void 0){this.name=e,this.alias=t,this.extensions=n,this.filename=s,this.loadFunc=r,this.support=o,this.loading=null}load(){return this.loading||(this.loading=this.loadFunc().then(e=>this.support=e,e=>{throw this.loading=null,e}))}static of(e){let{load:t,support:n}=e;if(!t){if(!n)throw new RangeError("Must pass either 'load' or 'support' to LanguageDescription.of");t=()=>Promise.resolve(n)}return new _t(e.name,(e.alias||[]).concat(e.name).map(s=>s.toLowerCase()),e.extensions||[],e.filename,t,n)}static matchFilename(e,t){for(let s of e)if(s.filename&&s.filename.test(t))return s;let n=/\.([^.]+)$/.exec(t);if(n){for(let s of e)if(s.extensions.indexOf(n[1])>-1)return s}return null}static matchLanguageName(e,t,n=!0){t=t.toLowerCase();for(let s of e)if(s.alias.some(r=>r==t))return s;if(n)for(let s of e)for(let r of s.alias){let o=t.indexOf(r);if(o>-1&&(r.length>2||!/\w/.test(t[o-1])&&!/\w/.test(t[o+r.length])))return s}return null}}const px=I.define(),ua=I.define({combine:i=>{if(!i.length)return" ";let e=i[0];if(!e||/\S/.test(e)||Array.from(e).some(t=>t!=e[0]))throw new Error("Invalid indent unit: "+JSON.stringify(i[0]));return e}});function ar(i){let e=i.facet(ua);return e.charCodeAt(0)==9?i.tabSize*e.length:e.length}function hr(i,e){let t="",n=i.tabSize,s=i.facet(ua)[0];if(s==" "){for(;e>=n;)t+=" ",e-=n;s=" "}for(let r=0;r<e;r++)t+=s;return t}function Dd(i,e){i instanceof ce&&(i=new Dr(i));for(let n of i.state.facet(px)){let s=n(i,e);if(s!==void 0)return s}let t=Wt(i.state);return t.length>=e?gx(i,t,e):null}class Dr{constructor(e,t={}){this.state=e,this.options=t,this.unit=ar(e)}lineAt(e,t=1){let n=this.state.doc.lineAt(e),{simulateBreak:s,simulateDoubleBreak:r}=this.options;return s!=null&&s>=n.from&&s<=n.to?r&&s==e?{text:"",from:e}:(t<0?s<e:s<=e)?{text:n.text.slice(s-n.from),from:s}:{text:n.text.slice(0,s-n.from),from:n.from}:n}textAfterPos(e,t=1){if(this.options.simulateDoubleBreak&&e==this.options.simulateBreak)return"";let{text:n,from:s}=this.lineAt(e,t);return n.slice(e-s,Math.min(n.length,e+100-s))}column(e,t=1){let{text:n,from:s}=this.lineAt(e,t),r=this.countColumn(n,e-s),o=this.options.overrideIndentation?this.options.overrideIndentation(s):-1;return o>-1&&(r+=o-this.countColumn(n,n.search(/\S|$/))),r}countColumn(e,t=e.length){return xr(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:n,from:s}=this.lineAt(e,t),r=this.options.overrideIndentation;if(r){let o=r(s);if(o>-1)return o}return this.countColumn(n,n.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}}const mx=new ie;function gx(i,e,t){let n=e.resolveStack(t),s=e.resolveInner(t,-1).resolve(t,0).enterUnfinishedNodesBefore(t);if(s!=n.node){let r=[];for(let o=s;o&&!(o.from<n.node.from||o.to>n.node.to||o.from==n.node.from&&o.type==n.node.type);o=o.parent)r.push(o);for(let o=r.length-1;o>=0;o--)n={node:r[o],next:n}}return jd(n,i,t)}function jd(i,e,t){for(let n=i;n;n=n.next){let s=wx(n.node);if(s)return s(fa.create(e,t,n))}return 0}function $x(i){return i.pos==i.options.simulateBreak&&i.options.simulateDoubleBreak}function wx(i){let e=i.type.prop(mx);if(e)return e;let t=i.firstChild,n;if(t&&(n=t.type.prop(ie.closedBy))){let s=i.lastChild,r=s&&n.indexOf(s.name)>-1;return o=>Ox(o,!0,1,void 0,r&&!$x(o)?s.from:void 0)}return i.parent==null?yx:null}function yx(){return 0}class fa extends Dr{constructor(e,t,n){super(e.state,e.options),this.base=e,this.pos=t,this.context=n}get node(){return this.context.node}static create(e,t,n){return new fa(e,t,n)}get textAfter(){return this.textAfterPos(this.pos)}get baseIndent(){return this.baseIndentFor(this.node)}baseIndentFor(e){let t=this.state.doc.lineAt(e.from);for(;;){let n=e.resolve(t.from);for(;n.parent&&n.parent.from==n.from;)n=n.parent;if(bx(n,e))break;t=this.state.doc.lineAt(n.from)}return this.lineIndent(t.from)}continue(){return jd(this.context.next,this.base,this.pos)}}function bx(i,e){for(let t=e;t;t=t.parent)if(i==t)return!0;return!1}function xx(i){let e=i.node,t=e.childAfter(e.from),n=e.lastChild;if(!t)return null;let s=i.options.simulateBreak,r=i.state.doc.lineAt(t.from),o=s==null||s<=r.from?r.to:Math.min(r.to,s);for(let l=t.to;;){let a=e.childAfter(l);if(!a||a==n)return null;if(!a.type.isSkipped){if(a.from>=o)return null;let h=/^ */.exec(r.text.slice(t.to-r.from))[0].length;return{from:t.from,to:t.to+h}}l=a.to}}function Ox(i,e,t,n,s){let r=i.textAfter,o=r.match(/^\s*/)[0].length,l=n&&r.slice(o,o+n.length)==n||s==i.pos+o,a=xx(i);return a?l?i.column(a.from):i.column(a.to):i.baseIndent+(l?0:i.unit*t)}class jr{constructor(e,t){this.specs=e;let n;function s(l){let a=$i.newName();return(n||(n=Object.create(null)))["."+a]=l,a}const r=typeof t.all=="string"?t.all:t.all?s(t.all):void 0,o=t.scope;this.scope=o instanceof wt?l=>l.prop(tn)==o.data:o?l=>l==o:void 0,this.style=Cd(e.map(l=>({tag:l.tag,class:l.class||s(Object.assign({},l,{tag:null}))})),{all:r}).style,this.module=n?new $i(n):null,this.themeType=t.themeType}static define(e,t){return new jr(e,t||{})}}const kl=I.define(),vx=I.define({combine(i){return i.length?[i[0]]:null}});function mo(i){let e=i.facet(kl);return e.length?e:i.facet(vx)}function kx(i,e){let t=[Cx],n;return i instanceof jr&&(i.module&&t.push(V.styleModule.of(i.module)),n=i.themeType),n?t.push(kl.computeN([V.darkTheme],s=>s.facet(V.darkTheme)==(n=="dark")?[i]:[])):t.push(kl.of(i)),t}class Sx{constructor(e){this.markCache=Object.create(null),this.tree=Wt(e.state),this.decorations=this.buildDeco(e,mo(e.state)),this.decoratedTo=e.viewport.to}update(e){let t=Wt(e.state),n=mo(e.state),s=n!=mo(e.startState),{viewport:r}=e.view,o=e.changes.mapPos(this.decoratedTo,1);t.length<r.to&&!s&&t.type==this.tree.type&&o>=r.to?(this.decorations=this.decorations.map(e.changes),this.decoratedTo=o):(t!=this.tree||e.viewportChanged||s)&&(this.tree=t,this.decorations=this.buildDeco(e.view,n),this.decoratedTo=r.to)}buildDeco(e,t){if(!t||!this.tree.length)return ve.none;let n=new Ln;for(let{from:s,to:r}of e.visibleRanges)lx(this.tree,t,(o,l,a)=>{n.add(o,l,this.markCache[a]||(this.markCache[a]=ve.mark({class:a})))},s,r);return n.finish()}}const Cx=ql.high(ti.fromClass(Sx,{decorations:i=>i.decorations})),Ex=1e4,Dx="()[]{}",jx=new ie;function Sl(i,e,t){let n=i.prop(e<0?ie.openedBy:ie.closedBy);if(n)return n;if(i.name.length==1){let s=t.indexOf(i.name);if(s>-1&&s%2==(e<0?1:0))return[t[s+e]]}return null}function Cl(i){let e=i.type.prop(jx);return e?e(i.node):i}function nn(i,e,t,n={}){let s=n.maxScanDistance||Ex,r=n.brackets||Dx,o=Wt(i),l=o.resolveInner(e,t);for(let a=l;a;a=a.parent){let h=Sl(a.type,t,r);if(h&&a.from<a.to){let c=Cl(a);if(c&&(t>0?e>=c.from&&e<c.to:e>c.from&&e<=c.to))return Rx(i,e,t,a,c,h,r)}}return Nx(i,e,t,o,l.type,s,r)}function Rx(i,e,t,n,s,r,o){let l=n.parent,a={from:s.from,to:s.to},h=0,c=l==null?void 0:l.cursor();if(c&&(t<0?c.childBefore(n.from):c.childAfter(n.to)))do if(t<0?c.to<=n.from:c.from>=n.to){if(h==0&&r.indexOf(c.type.name)>-1&&c.from<c.to){let u=Cl(c);return{start:a,end:u?{from:u.from,to:u.to}:void 0,matched:!0}}else if(Sl(c.type,t,o))h++;else if(Sl(c.type,-t,o)){if(h==0){let u=Cl(c);return{start:a,end:u&&u.from<u.to?{from:u.from,to:u.to}:void 0,matched:!1}}h--}}while(t<0?c.prevSibling():c.nextSibling());return{start:a,matched:!1}}function Nx(i,e,t,n,s,r,o){if(t<0?!e:e==i.doc.length)return null;let l=t<0?i.sliceDoc(e-1,e):i.sliceDoc(e,e+1),a=o.indexOf(l);if(a<0||a%2==0!=t>0)return null;let h={from:t<0?e-1:e,to:t>0?e+1:e},c=i.doc.iterRange(e,t>0?i.doc.length:0),u=0;for(let f=0;!c.next().done&&f<=r;){let d=c.value;t<0&&(f+=d.length);let m=e+f*t;for(let $=t>0?0:d.length-1,w=t>0?d.length:-1;$!=w;$+=t){let y=o.indexOf(d[$]);if(!(y<0||n.resolveInner(m+$,1).type!=s))if(y%2==0==t>0)u++;else{if(u==1)return{start:h,end:{from:m+$,to:m+$+1},matched:y>>1==a>>1};u--}}t>0&&(f+=d.length)}return c.done?{start:h,matched:!1}:null}const Px=Object.create(null),rc=[qe.none],oc=[],lc=Object.create(null),Tx=Object.create(null);for(let[i,e]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"]])Tx[i]=Hx(Px,e);function go(i,e){oc.indexOf(i)>-1||(oc.push(i),console.warn(e))}function Hx(i,e){let t=[];for(let l of e.split(" ")){let a=[];for(let h of l.split(".")){let c=i[h]||z[h];c?typeof c=="function"?a.length?a=a.map(c):go(h,`Modifier ${h} used at start of tag`):a.length?go(h,`Tag ${h} used as modifier`):a=Array.isArray(c)?c:[c]:go(h,`Unknown highlighting tag ${h}`)}for(let h of a)t.push(h)}if(!t.length)return 0;let n=e.replace(/ /g,"_"),s=n+" "+t.map(l=>l.id),r=lc[s];if(r)return r.id;let o=lc[s]=qe.define({id:rc.length,name:n,props:[Oi({[n]:t})]});return rc.push(o),o.id}De.RTL,De.LTR;const Yx=i=>{let{state:e}=i,t=e.doc.lineAt(e.selection.main.from),n=pa(i.state,t.from);return n.line?zx(i):n.block?Qx(i):!1};function da(i,e){return({state:t,dispatch:n})=>{if(t.readOnly)return!1;let s=i(e,t);return s?(n(t.update(s)),!0):!1}}const zx=da(Wx,0),Gx=da(Rd,0),Qx=da((i,e)=>Rd(i,e,Bx(e)),0);function pa(i,e){let t=i.languageDataAt("commentTokens",e,1);return t.length?t[0]:{}}const Nn=50;function Ax(i,{open:e,close:t},n,s){let r=i.sliceDoc(n-Nn,n),o=i.sliceDoc(s,s+Nn),l=/\s*$/.exec(r)[0].length,a=/^\s*/.exec(o)[0].length,h=r.length-l;if(r.slice(h-e.length,h)==e&&o.slice(a,a+t.length)==t)return{open:{pos:n-l,margin:l&&1},close:{pos:s+a,margin:a&&1}};let c,u;s-n<=2*Nn?c=u=i.sliceDoc(n,s):(c=i.sliceDoc(n,n+Nn),u=i.sliceDoc(s-Nn,s));let f=/^\s*/.exec(c)[0].length,d=/\s*$/.exec(u)[0].length,m=u.length-d-t.length;return c.slice(f,f+e.length)==e&&u.slice(m,m+t.length)==t?{open:{pos:n+f+e.length,margin:/\s/.test(c.charAt(f+e.length))?1:0},close:{pos:s-d-t.length,margin:/\s/.test(u.charAt(m-1))?1:0}}:null}function Bx(i){let e=[];for(let t of i.selection.ranges){let n=i.doc.lineAt(t.from),s=t.to<=n.to?n:i.doc.lineAt(t.to);s.from>n.from&&s.from==t.to&&(s=t.to==n.to+1?n:i.doc.lineAt(t.to-1));let r=e.length-1;r>=0&&e[r].to>n.from?e[r].to=s.to:e.push({from:n.from+/^\s*/.exec(n.text)[0].length,to:s.to})}return e}function Rd(i,e,t=e.selection.ranges){let n=t.map(r=>pa(e,r.from).block);if(!n.every(r=>r))return null;let s=t.map((r,o)=>Ax(e,n[o],r.from,r.to));if(i!=2&&!s.every(r=>r))return{changes:e.changes(t.map((r,o)=>s[o]?[]:[{from:r.from,insert:n[o].open+" "},{from:r.to,insert:" "+n[o].close}]))};if(i!=1&&s.some(r=>r)){let r=[];for(let o=0,l;o<s.length;o++)if(l=s[o]){let a=n[o],{open:h,close:c}=l;r.push({from:h.pos-a.open.length,to:h.pos+h.margin},{from:c.pos-c.margin,to:c.pos+a.close.length})}return{changes:r}}return null}function Wx(i,e,t=e.selection.ranges){let n=[],s=-1;e:for(let{from:r,to:o}of t){let l=n.length,a=1e9,h;for(let c=r;c<=o;){let u=e.doc.lineAt(c);if(h==null&&(h=pa(e,u.from).line,!h))continue e;if(u.from>s&&(r==o||o>u.from)){s=u.from;let f=/^\s*/.exec(u.text)[0].length,d=f==u.length,m=u.text.slice(f,f+h.length)==h?f:-1;f<u.text.length&&f<a&&(a=f),n.push({line:u,comment:m,token:h,indent:f,empty:d,single:!1})}c=u.to+1}if(a<1e9)for(let c=l;c<n.length;c++)n[c].indent<n[c].line.text.length&&(n[c].indent=a);n.length==l+1&&(n[l].single=!0)}if(i!=2&&n.some(r=>r.comment<0&&(!r.empty||r.single))){let r=[];for(let{line:l,token:a,indent:h,empty:c,single:u}of n)(u||!c)&&r.push({from:l.from+h,insert:a+" "});let o=e.changes(r);return{changes:o,selection:e.selection.map(o,1)}}else if(i!=1&&n.some(r=>r.comment>=0)){let r=[];for(let{line:o,comment:l,token:a}of n)if(l>=0){let h=o.from+l,c=h+a.length;o.text[c-o.from]==" "&&c++,r.push({from:h,to:c})}return{changes:r}}return null}const El=xi.define(),Mx=xi.define(),Lx=I.define(),Nd=I.define({combine(i){return Of(i,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(n,s)=>e(n,s)||t(n,s)})}}),Pd=si.define({create(){return Gt.empty},update(i,e){let t=e.state.facet(Nd),n=e.annotation(El);if(n){let a=Je.fromTransaction(e,n.selection),h=n.side,c=h==0?i.undone:i.done;return a?c=cr(c,c.length,t.minDepth,a):c=Yd(c,e.startState.selection),new Gt(h==0?n.rest:c,h==0?c:n.rest)}let s=e.annotation(Mx);if((s=="full"||s=="before")&&(i=i.isolate()),e.annotation(Te.addToHistory)===!1)return e.changes.empty?i:i.addMapping(e.changes.desc);let r=Je.fromTransaction(e),o=e.annotation(Te.time),l=e.annotation(Te.userEvent);return r?i=i.addChanges(r,o,l,t,e):e.selection&&(i=i.addSelection(e.startState.selection,o,l,t.newGroupDelay)),(s=="full"||s=="after")&&(i=i.isolate()),i},toJSON(i){return{done:i.done.map(e=>e.toJSON()),undone:i.undone.map(e=>e.toJSON())}},fromJSON(i){return new Gt(i.done.map(Je.fromJSON),i.undone.map(Je.fromJSON))}});function _x(i={}){return[Pd,Nd.of(i),V.domEventHandlers({beforeinput(e,t){let n=e.inputType=="historyUndo"?Td:e.inputType=="historyRedo"?Dl:null;return n?(e.preventDefault(),n(t)):!1}})]}function Rr(i,e){return function({state:t,dispatch:n}){if(!e&&t.readOnly)return!1;let s=t.field(Pd,!1);if(!s)return!1;let r=s.pop(i,t,e);return r?(n(r),!0):!1}}const Td=Rr(0,!1),Dl=Rr(1,!1),Ix=Rr(0,!0),Fx=Rr(1,!0);class Je{constructor(e,t,n,s,r){this.changes=e,this.effects=t,this.mapped=n,this.startSelection=s,this.selectionsAfter=r}setSelAfter(e){return new Je(this.changes,this.effects,this.mapped,this.startSelection,e)}toJSON(){var e,t,n;return{changes:(e=this.changes)===null||e===void 0?void 0:e.toJSON(),mapped:(t=this.mapped)===null||t===void 0?void 0:t.toJSON(),startSelection:(n=this.startSelection)===null||n===void 0?void 0:n.toJSON(),selectionsAfter:this.selectionsAfter.map(s=>s.toJSON())}}static fromJSON(e){return new Je(e.changes&&Pe.fromJSON(e.changes),[],e.mapped&&Bt.fromJSON(e.mapped),e.startSelection&&Y.fromJSON(e.startSelection),e.selectionsAfter.map(Y.fromJSON))}static fromTransaction(e,t){let n=ut;for(let s of e.startState.facet(Lx)){let r=s(e);r.length&&(n=n.concat(r))}return!n.length&&e.changes.empty?null:new Je(e.changes.invert(e.startState.doc),n,void 0,t||e.startState.selection,ut)}static selection(e){return new Je(void 0,ut,void 0,void 0,e)}}function cr(i,e,t,n){let s=e+1>t+20?e-t-1:0,r=i.slice(s,e);return r.push(n),r}function Zx(i,e){let t=[],n=!1;return i.iterChangedRanges((s,r)=>t.push(s,r)),e.iterChangedRanges((s,r,o,l)=>{for(let a=0;a<t.length;){let h=t[a++],c=t[a++];l>=h&&o<=c&&(n=!0)}}),n}function qx(i,e){return i.ranges.length==e.ranges.length&&i.ranges.filter((t,n)=>t.empty!=e.ranges[n].empty).length===0}function Hd(i,e){return i.length?e.length?i.concat(e):i:e}const ut=[],Ux=200;function Yd(i,e){if(i.length){let t=i[i.length-1],n=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-Ux));return n.length&&n[n.length-1].eq(e)?i:(n.push(e),cr(i,i.length-1,1e9,t.setSelAfter(n)))}else return[Je.selection([e])]}function Xx(i){let e=i[i.length-1],t=i.slice();return t[i.length-1]=e.setSelAfter(e.selectionsAfter.slice(0,e.selectionsAfter.length-1)),t}function $o(i,e){if(!i.length)return i;let t=i.length,n=ut;for(;t;){let s=Vx(i[t-1],e,n);if(s.changes&&!s.changes.empty||s.effects.length){let r=i.slice(0,t);return r[t-1]=s,r}else e=s.mapped,t--,n=s.selectionsAfter}return n.length?[Je.selection(n)]:ut}function Vx(i,e,t){let n=Hd(i.selectionsAfter.length?i.selectionsAfter.map(l=>l.map(e)):ut,t);if(!i.changes)return Je.selection(n);let s=i.changes.map(e),r=e.mapDesc(i.changes,!0),o=i.mapped?i.mapped.composeDesc(r):r;return new Je(s,Se.mapEffects(i.effects,e),o,i.startSelection.map(r),n)}const Kx=/^(input\.type|delete)($|\.)/;class Gt{constructor(e,t,n=0,s=void 0){this.done=e,this.undone=t,this.prevTime=n,this.prevUserEvent=s}isolate(){return this.prevTime?new Gt(this.done,this.undone):this}addChanges(e,t,n,s,r){let o=this.done,l=o[o.length-1];return l&&l.changes&&!l.changes.empty&&e.changes&&(!n||Kx.test(n))&&(!l.selectionsAfter.length&&t-this.prevTime<s.newGroupDelay&&s.joinToEvent(r,Zx(l.changes,e.changes))||n=="input.type.compose")?o=cr(o,o.length-1,s.minDepth,new Je(e.changes.compose(l.changes),Hd(Se.mapEffects(e.effects,l.changes),l.effects),l.mapped,l.startSelection,ut)):o=cr(o,o.length,s.minDepth,e),new Gt(o,ut,t,n)}addSelection(e,t,n,s){let r=this.done.length?this.done[this.done.length-1].selectionsAfter:ut;return r.length>0&&t-this.prevTime<s&&n==this.prevUserEvent&&n&&/^select($|\.)/.test(n)&&qx(r[r.length-1],e)?this:new Gt(Yd(this.done,e),this.undone,t,n)}addMapping(e){return new Gt($o(this.done,e),$o(this.undone,e),this.prevTime,this.prevUserEvent)}pop(e,t,n){let s=e==0?this.done:this.undone;if(s.length==0)return null;let r=s[s.length-1],o=r.selectionsAfter[0]||(r.startSelection?r.startSelection.map(r.changes.invertedDesc,1):t.selection);if(n&&r.selectionsAfter.length)return t.update({selection:r.selectionsAfter[r.selectionsAfter.length-1],annotations:El.of({side:e,rest:Xx(s),selection:o}),userEvent:e==0?"select.undo":"select.redo",scrollIntoView:!0});if(r.changes){let l=s.length==1?ut:s.slice(0,s.length-1);return r.mapped&&(l=$o(l,r.mapped)),t.update({changes:r.changes,selection:r.startSelection,effects:r.effects,annotations:El.of({side:e,rest:l,selection:o}),filter:!1,userEvent:e==0?"undo":"redo",scrollIntoView:!0})}else return null}}Gt.empty=new Gt(ut,ut);const Jx=[{key:"Mod-z",run:Td,preventDefault:!0},{key:"Mod-y",mac:"Mod-Shift-z",run:Dl,preventDefault:!0},{linux:"Ctrl-Shift-z",run:Dl,preventDefault:!0},{key:"Mod-u",run:Ix,preventDefault:!0},{key:"Alt-u",mac:"Mod-Shift-u",run:Fx,preventDefault:!0}];function vn(i,e){return Y.create(i.ranges.map(e),i.mainIndex)}function vt(i,e){return i.update({selection:e,scrollIntoView:!0,userEvent:"select"})}function kt({state:i,dispatch:e},t){let n=vn(i.selection,t);return n.eq(i.selection,!0)?!1:(e(vt(i,n)),!0)}function Nr(i,e){return Y.cursor(e?i.to:i.from)}function zd(i,e){return kt(i,t=>t.empty?i.moveByChar(t,e):Nr(t,e))}function Be(i){return i.textDirectionAt(i.state.selection.main.head)==De.LTR}const Gd=i=>zd(i,!Be(i)),Qd=i=>zd(i,Be(i));function Ad(i,e){return kt(i,t=>t.empty?i.moveByGroup(t,e):Nr(t,e))}const eO=i=>Ad(i,!Be(i)),tO=i=>Ad(i,Be(i));function iO(i,e,t){if(e.type.prop(t))return!0;let n=e.to-e.from;return n&&(n>2||/[^\s,.;:]/.test(i.sliceDoc(e.from,e.to)))||e.firstChild}function Pr(i,e,t){let n=Wt(i).resolveInner(e.head),s=t?ie.closedBy:ie.openedBy;for(let a=e.head;;){let h=t?n.childAfter(a):n.childBefore(a);if(!h)break;iO(i,h,s)?n=h:a=t?h.to:h.from}let r=n.type.prop(s),o,l;return r&&(o=t?nn(i,n.from,1):nn(i,n.to,-1))&&o.matched?l=t?o.end.to:o.end.from:l=t?n.to:n.from,Y.cursor(l,t?-1:1)}const nO=i=>kt(i,e=>Pr(i.state,e,!Be(i))),sO=i=>kt(i,e=>Pr(i.state,e,Be(i)));function Bd(i,e){return kt(i,t=>{if(!t.empty)return Nr(t,e);let n=i.moveVertically(t,e);return n.head!=t.head?n:i.moveToLineBoundary(t,e)})}const Wd=i=>Bd(i,!1),Md=i=>Bd(i,!0);function Ld(i){let e=i.scrollDOM.clientHeight<i.scrollDOM.scrollHeight-2,t=0,n=0,s;if(e){for(let r of i.state.facet(V.scrollMargins)){let o=r(i);o!=null&&o.top&&(t=Math.max(o==null?void 0:o.top,t)),o!=null&&o.bottom&&(n=Math.max(o==null?void 0:o.bottom,n))}s=i.scrollDOM.clientHeight-t-n}else s=(i.dom.ownerDocument.defaultView||window).innerHeight;return{marginTop:t,marginBottom:n,selfScroll:e,height:Math.max(i.defaultLineHeight,s-5)}}function _d(i,e){let t=Ld(i),{state:n}=i,s=vn(n.selection,o=>o.empty?i.moveVertically(o,e,t.height):Nr(o,e));if(s.eq(n.selection))return!1;let r;if(t.selfScroll){let o=i.coordsAtPos(n.selection.main.head),l=i.scrollDOM.getBoundingClientRect(),a=l.top+t.marginTop,h=l.bottom-t.marginBottom;o&&o.top>a&&o.bottom<h&&(r=V.scrollIntoView(s.main.head,{y:"start",yMargin:o.top-a}))}return i.dispatch(vt(n,s),{effects:r}),!0}const ac=i=>_d(i,!1),jl=i=>_d(i,!0);function ki(i,e,t){let n=i.lineBlockAt(e.head),s=i.moveToLineBoundary(e,t);if(s.head==e.head&&s.head!=(t?n.to:n.from)&&(s=i.moveToLineBoundary(e,t,!1)),!t&&s.head==n.from&&n.length){let r=/^\s*/.exec(i.state.sliceDoc(n.from,Math.min(n.from+100,n.to)))[0].length;r&&e.head!=n.from+r&&(s=Y.cursor(n.from+r))}return s}const rO=i=>kt(i,e=>ki(i,e,!0)),oO=i=>kt(i,e=>ki(i,e,!1)),lO=i=>kt(i,e=>ki(i,e,!Be(i))),aO=i=>kt(i,e=>ki(i,e,Be(i))),hO=i=>kt(i,e=>Y.cursor(i.lineBlockAt(e.head).from,1)),cO=i=>kt(i,e=>Y.cursor(i.lineBlockAt(e.head).to,-1));function uO(i,e,t){let n=!1,s=vn(i.selection,r=>{let o=nn(i,r.head,-1)||nn(i,r.head,1)||r.head>0&&nn(i,r.head-1,1)||r.head<i.doc.length&&nn(i,r.head+1,-1);if(!o||!o.end)return r;n=!0;let l=o.start.from==r.head?o.end.to:o.end.from;return Y.cursor(l)});return n?(e(vt(i,s)),!0):!1}const fO=({state:i,dispatch:e})=>uO(i,e);function pt(i,e,t){let n=vn(i.state.selection,s=>{s.undirectional&&s.head>=s.anchor!=e&&(s=Y.range(s.head,s.anchor));let r=t(s);return Y.range(s.anchor,r.head,r.goalColumn,r.bidiLevel||void 0,r.assoc)});return n.eq(i.state.selection)?!1:(i.dispatch(vt(i.state,n)),!0)}function Id(i,e){return pt(i,e,t=>i.moveByChar(t,e))}const Fd=i=>Id(i,!Be(i)),Zd=i=>Id(i,Be(i));function qd(i,e){return pt(i,e,t=>i.moveByGroup(t,e))}const dO=i=>qd(i,!Be(i)),pO=i=>qd(i,Be(i)),mO=i=>{let e=!Be(i);return pt(i,e,t=>Pr(i.state,t,e))},gO=i=>{let e=Be(i);return pt(i,e,t=>Pr(i.state,t,e))};function Ud(i,e){return pt(i,e,t=>i.moveVertically(t,e))}const Xd=i=>Ud(i,!1),Vd=i=>Ud(i,!0);function Kd(i,e){return pt(i,e,t=>i.moveVertically(t,e,Ld(i).height))}const hc=i=>Kd(i,!1),cc=i=>Kd(i,!0),$O=i=>pt(i,!0,e=>ki(i,e,!0)),wO=i=>pt(i,!1,e=>ki(i,e,!1)),yO=i=>{let e=!Be(i);return pt(i,e,t=>ki(i,t,e))},bO=i=>{let e=Be(i);return pt(i,e,t=>ki(i,t,e))},xO=i=>pt(i,!1,e=>Y.cursor(i.lineBlockAt(e.head).from)),OO=i=>pt(i,!0,e=>Y.cursor(i.lineBlockAt(e.head).to)),uc=({state:i,dispatch:e})=>(e(vt(i,{anchor:0})),!0),fc=({state:i,dispatch:e})=>(e(vt(i,{anchor:i.doc.length})),!0),dc=({state:i,dispatch:e})=>(e(vt(i,{anchor:i.selection.main.anchor,head:0})),!0),pc=({state:i,dispatch:e})=>(e(vt(i,{anchor:i.selection.main.anchor,head:i.doc.length})),!0),vO=({state:i,dispatch:e})=>(e(i.update({selection:{anchor:0,head:i.doc.length},userEvent:"select"})),!0),kO=({state:i,dispatch:e})=>{let t=Tr(i).map(({from:n,to:s})=>Y.range(n,Math.min(s+1,i.doc.length)));return e(i.update({selection:Y.create(t),userEvent:"select"})),!0},SO=({state:i,dispatch:e})=>{let t=vn(i.selection,n=>{let s=Wt(i),r=s.resolveStack(n.from,1);if(n.empty){let o=s.resolveStack(n.from,-1);o.node.from>=r.node.from&&o.node.to<=r.node.to&&(r=o)}for(let o=r;o;o=o.next){let{node:l}=o;if((l.from<n.from&&l.to>=n.to||l.to>n.to&&l.from<=n.from)&&o.next)return Y.range(l.to,l.from)}return n});return t.eq(i.selection)?!1:(e(vt(i,t)),!0)};function Jd(i,e){let{state:t}=i,n=t.selection,s=t.selection.ranges.slice();for(let r of t.selection.ranges){let o=t.doc.lineAt(r.head);if(e?o.to<i.state.doc.length:o.from>0)for(let l=r;;){let a=i.moveVertically(l,e);if(a.head<o.from||a.head>o.to){s.some(h=>h.head==a.head)||s.push(a);break}else{if(a.head==l.head)break;l=a}}}return s.length==n.ranges.length?!1:(i.dispatch(vt(t,Y.create(s,s.length-1))),!0)}const CO=i=>Jd(i,!1),EO=i=>Jd(i,!0),DO=({state:i,dispatch:e})=>{let t=i.selection,n=null;return t.ranges.length>1?n=Y.create([t.main]):t.main.empty||(n=Y.create([Y.cursor(t.main.head)])),n?(e(vt(i,n)),!0):!1};function rs(i,e){if(i.state.readOnly)return!1;let t="delete.selection",{state:n}=i,s=n.changeByRange(r=>{let{from:o,to:l}=r;if(o==l){let a=e(r);a<o?(t="delete.backward",a=Ts(i,a,!1)):a>o&&(t="delete.forward",a=Ts(i,a,!0)),o=Math.min(o,a),l=Math.max(l,a)}else o=Ts(i,o,!1),l=Ts(i,l,!0);return o==l?{range:r}:{changes:{from:o,to:l},range:Y.cursor(o,o<r.head?-1:1)}});return s.changes.empty?!1:(i.dispatch(n.update(s,{scrollIntoView:!0,userEvent:t,effects:t=="delete.selection"?V.announce.of(n.phrase("Selection deleted")):void 0})),!0)}function Ts(i,e,t){if(i instanceof V)for(let n of i.state.facet(V.atomicRanges).map(s=>s(i)))n.between(e,e,(s,r)=>{s<e&&r>e&&(e=t?r:s)});return e}const ep=(i,e,t)=>rs(i,n=>{let s=n.from,{state:r}=i,o=r.doc.lineAt(s),l,a;if(t&&!e&&s>o.from&&s<o.from+200&&!/[^ \t]/.test(l=o.text.slice(0,s-o.from))){if(l[l.length-1]==" ")return s-1;let h=xr(l,r.tabSize),c=h%ar(r)||ar(r);for(let u=0;u<c&&l[l.length-1-u]==" ";u++)s--;a=s}else a=Ae(o.text,s-o.from,e,e)+o.from,a==s&&o.number!=(e?r.doc.lines:1)?a+=e?1:-1:!e&&/[\ufe00-\ufe0f]/.test(o.text.slice(a-o.from,s-o.from))&&(a=Ae(o.text,a-o.from,!1,!1)+o.from);return a}),Rl=i=>ep(i,!1,!0),tp=i=>ep(i,!0,!1),ip=(i,e)=>rs(i,t=>{let n=t.head,{state:s}=i,r=s.doc.lineAt(n),o=s.charCategorizer(n);for(let l=null;;){if(n==(e?r.to:r.from)){n==t.head&&r.number!=(e?s.doc.lines:1)&&(n+=e?1:-1);break}let a=Ae(r.text,n-r.from,e)+r.from,h=r.text.slice(Math.min(n,a)-r.from,Math.max(n,a)-r.from),c=o(h);if(l!=null&&c!=l)break;(h!=" "||n!=t.head)&&(l=c),n=a}return n}),np=i=>ip(i,!1),jO=i=>ip(i,!0),RO=i=>rs(i,e=>{let t=i.lineBlockAt(e.head).to;return e.head<t?t:Math.min(i.state.doc.length,e.head+1)}),NO=i=>rs(i,e=>{let t=i.moveToLineBoundary(e,!1).head;return e.head>t?t:Math.max(0,e.head-1)}),PO=i=>rs(i,e=>{let t=i.moveToLineBoundary(e,!0).head;return e.head<t?t:Math.min(i.state.doc.length,e.head+1)}),TO=({state:i,dispatch:e})=>{if(i.readOnly)return!1;let t=i.changeByRange(n=>({changes:{from:n.from,to:n.to,insert:le.of(["",""])},range:Y.cursor(n.from)}));return e(i.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},HO=({state:i,dispatch:e})=>{if(i.readOnly)return!1;let t=i.changeByRange(n=>{if(!n.empty||n.from==0||n.from==i.doc.length)return{range:n};let s=n.from,r=i.doc.lineAt(s),o=s==r.from?s-1:Ae(r.text,s-r.from,!1)+r.from,l=s==r.to?s+1:Ae(r.text,s-r.from,!0)+r.from;return{changes:{from:o,to:l,insert:i.doc.slice(s,l).append(i.doc.slice(o,s))},range:Y.cursor(l)}});return t.changes.empty?!1:(e(i.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function Tr(i){let e=[],t=-1;for(let n of i.selection.ranges){let s=i.doc.lineAt(n.from),r=i.doc.lineAt(n.to);if(!n.empty&&n.to==r.from&&(r=i.doc.lineAt(n.to-1)),t>=s.number){let o=e[e.length-1];o.to=r.to,o.ranges.push(n)}else e.push({from:s.from,to:r.to,ranges:[n]});t=r.number+1}return e}function sp(i,e,t){if(i.readOnly)return!1;let n=[],s=[];for(let r of Tr(i)){if(t?r.to==i.doc.length:r.from==0)continue;let o=i.doc.lineAt(t?r.to+1:r.from-1),l=o.length+1;if(t){n.push({from:r.to,to:o.to},{from:r.from,insert:o.text+i.lineBreak});for(let a of r.ranges)s.push(Y.range(Math.min(i.doc.length,a.anchor+l),Math.min(i.doc.length,a.head+l)))}else{n.push({from:o.from,to:r.from},{from:r.to,insert:i.lineBreak+o.text});for(let a of r.ranges)s.push(Y.range(a.anchor-l,a.head-l))}}return n.length?(e(i.update({changes:n,scrollIntoView:!0,selection:Y.create(s,i.selection.mainIndex),userEvent:"move.line"})),!0):!1}const YO=({state:i,dispatch:e})=>sp(i,e,!1),zO=({state:i,dispatch:e})=>sp(i,e,!0);function rp(i,e,t){if(i.readOnly)return!1;let n=[];for(let r of Tr(i))t?n.push({from:r.from,insert:i.doc.slice(r.from,r.to)+i.lineBreak}):n.push({from:r.to,insert:i.lineBreak+i.doc.slice(r.from,r.to)});let s=i.changes(n);return e(i.update({changes:s,selection:i.selection.map(s,t?1:-1),scrollIntoView:!0,userEvent:"input.copyline"})),!0}const GO=({state:i,dispatch:e})=>rp(i,e,!1),QO=({state:i,dispatch:e})=>rp(i,e,!0),AO=i=>{if(i.state.readOnly)return!1;let{state:e}=i,t=e.changes(Tr(e).map(({from:s,to:r})=>(s>0?s--:r<e.doc.length&&r++,{from:s,to:r}))),n=vn(e.selection,s=>{let r;if(i.lineWrapping){let o=i.lineBlockAt(s.head),l=i.coordsAtPos(s.head,s.assoc||1);l&&(r=o.bottom+i.documentTop-l.bottom+i.defaultLineHeight/2)}return i.moveVertically(s,!0,r)}).map(t);return i.dispatch({changes:t,selection:n,scrollIntoView:!0,userEvent:"delete.line"}),!0};function BO(i,e){if(/\(\)|\[\]|\{\}/.test(i.sliceDoc(e-1,e+1)))return{from:e,to:e};let t=Wt(i).resolveInner(e),n=t.childBefore(e),s=t.childAfter(e),r;return n&&s&&n.to<=e&&s.from>=e&&(r=n.type.prop(ie.closedBy))&&r.indexOf(s.name)>-1&&i.doc.lineAt(n.to).from==i.doc.lineAt(s.from).from&&!/\S/.test(i.sliceDoc(n.to,s.from))?{from:n.to,to:s.from}:null}const mc=op(!1),WO=op(!0);function op(i){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange(s=>{let{from:r,to:o}=s,l=e.doc.lineAt(r),a=!i&&r==o&&BO(e,r);i&&(r=o=(o<=l.to?l:e.doc.lineAt(o)).to);let h=new Dr(e,{simulateBreak:r,simulateDoubleBreak:!!a}),c=Dd(h,r);for(c==null&&(c=xr(/^\s*/.exec(e.doc.lineAt(r).text)[0],e.tabSize));o<l.to&&/\s/.test(l.text[o-l.from]);)o++;a?{from:r,to:o}=a:r>l.from&&r<l.from+100&&!/\S/.test(l.text.slice(0,r))&&(r=l.from);let u=["",hr(e,c)];return a&&u.push(hr(e,h.lineIndent(l.from,-1))),{changes:{from:r,to:o,insert:le.of(u)},range:Y.cursor(r+1+u[1].length)}});return t(e.update(n,{scrollIntoView:!0,userEvent:"input"})),!0}}function ma(i,e){let t=-1;return i.changeByRange(n=>{let s=[];for(let o=n.from;o<=n.to;){let l=i.doc.lineAt(o);l.number>t&&(n.empty||n.to>l.from)&&(e(l,s,n),t=l.number),o=l.to+1}let r=i.changes(s);return{changes:s,range:Y.range(r.mapPos(n.anchor,1),r.mapPos(n.head,1))}})}const MO=({state:i,dispatch:e})=>{if(i.readOnly)return!1;let t=Object.create(null),n=new Dr(i,{overrideIndentation:r=>{let o=t[r];return o??-1}}),s=ma(i,(r,o,l)=>{let a=Dd(n,r.from);if(a==null)return;/\S/.test(r.text)||(a=0);let h=/^\s*/.exec(r.text)[0],c=hr(i,a);(h!=c||l.from<r.from+h.length)&&(t[r.from]=a,o.push({from:r.from,to:r.from+h.length,insert:c}))});return s.changes.empty||e(i.update(s,{userEvent:"indent"})),!0},lp=({state:i,dispatch:e})=>i.readOnly?!1:(e(i.update(ma(i,(t,n)=>{n.push({from:t.from,insert:i.facet(ua)})}),{userEvent:"input.indent"})),!0),ap=({state:i,dispatch:e})=>i.readOnly?!1:(e(i.update(ma(i,(t,n)=>{let s=/^\s*/.exec(t.text)[0];if(!s)return;let r=xr(s,i.tabSize),o=0,l=hr(i,Math.max(0,r-ar(i)));for(;o<s.length&&o<l.length&&s.charCodeAt(o)==l.charCodeAt(o);)o++;n.push({from:t.from+o,to:t.from+s.length,insert:l.slice(o)})}),{userEvent:"delete.dedent"})),!0),LO=i=>(i.setTabFocusMode(),!0),_O=[{key:"Ctrl-b",run:Gd,shift:Fd,preventDefault:!0},{key:"Ctrl-f",run:Qd,shift:Zd},{key:"Ctrl-p",run:Wd,shift:Xd},{key:"Ctrl-n",run:Md,shift:Vd},{key:"Ctrl-a",run:hO,shift:xO},{key:"Ctrl-e",run:cO,shift:OO},{key:"Ctrl-d",run:tp},{key:"Ctrl-h",run:Rl},{key:"Ctrl-k",run:RO},{key:"Ctrl-Alt-h",run:np},{key:"Ctrl-o",run:TO},{key:"Ctrl-t",run:HO},{key:"Ctrl-v",run:jl}],IO=[{key:"ArrowLeft",run:Gd,shift:Fd,preventDefault:!0},{key:"Mod-ArrowLeft",mac:"Alt-ArrowLeft",run:eO,shift:dO,preventDefault:!0},{mac:"Cmd-ArrowLeft",run:lO,shift:yO,preventDefault:!0},{key:"ArrowRight",run:Qd,shift:Zd,preventDefault:!0},{key:"Mod-ArrowRight",mac:"Alt-ArrowRight",run:tO,shift:pO,preventDefault:!0},{mac:"Cmd-ArrowRight",run:aO,shift:bO,preventDefault:!0},{key:"ArrowUp",run:Wd,shift:Xd,preventDefault:!0},{mac:"Cmd-ArrowUp",run:uc,shift:dc},{mac:"Ctrl-ArrowUp",run:ac,shift:hc},{key:"ArrowDown",run:Md,shift:Vd,preventDefault:!0},{mac:"Cmd-ArrowDown",run:fc,shift:pc},{mac:"Ctrl-ArrowDown",run:jl,shift:cc},{key:"PageUp",run:ac,shift:hc},{key:"PageDown",run:jl,shift:cc},{key:"Home",run:oO,shift:wO,preventDefault:!0},{key:"Mod-Home",run:uc,shift:dc},{key:"End",run:rO,shift:$O,preventDefault:!0},{key:"Mod-End",run:fc,shift:pc},{key:"Enter",run:mc,shift:mc},{key:"Mod-a",run:vO},{key:"Backspace",run:Rl,shift:Rl,preventDefault:!0},{key:"Delete",run:tp,preventDefault:!0},{key:"Mod-Backspace",mac:"Alt-Backspace",run:np,preventDefault:!0},{key:"Mod-Delete",mac:"Alt-Delete",run:jO,preventDefault:!0},{mac:"Mod-Backspace",run:NO,preventDefault:!0},{mac:"Mod-Delete",run:PO,preventDefault:!0}].concat(_O.map(i=>({mac:i.key,run:i.run,shift:i.shift}))),FO=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:nO,shift:mO},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:sO,shift:gO},{key:"Alt-ArrowUp",run:YO},{key:"Shift-Alt-ArrowUp",run:GO},{key:"Alt-ArrowDown",run:zO},{key:"Shift-Alt-ArrowDown",run:QO},{key:"Mod-Alt-ArrowUp",run:CO},{key:"Mod-Alt-ArrowDown",run:EO},{key:"Escape",run:DO},{key:"Mod-Enter",run:WO},{key:"Alt-l",mac:"Ctrl-l",run:kO},{key:"Mod-i",run:SO,preventDefault:!0},{key:"Mod-[",run:ap},{key:"Mod-]",run:lp},{key:"Mod-Alt-\\",run:MO},{key:"Shift-Mod-k",run:AO},{key:"Shift-Mod-\\",run:fO},{key:"Mod-/",run:Yx},{key:"Alt-A",run:Gx},{key:"Ctrl-m",mac:"Shift-Alt-m",run:LO}].concat(IO),ZO={key:"Tab",run:lp,shift:ap};var gc={};class ur{constructor(e,t,n,s,r,o,l,a,h,c=0,u){this.p=e,this.stack=t,this.state=n,this.reducePos=s,this.pos=r,this.score=o,this.buffer=l,this.bufferBase=a,this.curContext=h,this.lookAhead=c,this.parent=u}toString(){return`[${this.stack.filter((e,t)=>t%3==0).concat(this.state)}]@${this.pos}${this.score?"!"+this.score:""}`}static start(e,t,n=0){let s=e.parser.context;return new ur(e,[],t,n,n,0,[],0,s?new $c(s,s.start):null,0,null)}get context(){return this.curContext?this.curContext.context:null}pushState(e,t){this.stack.push(this.state,t,this.bufferBase+this.buffer.length),this.state=e}reduce(e){var t;let n=e>>19,s=e&65535,{parser:r}=this.p,o=this.reducePos<this.pos-25&&this.setLookAhead(this.pos),l=r.dynamicPrecedence(s);if(l&&(this.score+=l),n==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,o?8:4,!0),this.reduceContext(s,this.reducePos);return}let a=this.stack.length-(n-1)*3-(e&262144?6:0),h=a?this.stack[a-2]:this.p.ranges[0].from;s<r.minRepeatTerm&&h==this.reducePos&&this.reducePos<this.pos&&(this.reducePos=this.pos);let c=this.reducePos-h;c>=2e3&&!(!((t=this.p.parser.nodeSet.types[s])===null||t===void 0)&&t.isAnonymous)&&(h==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=c):this.p.lastBigReductionSize<c&&(this.p.bigReductionCount=1,this.p.lastBigReductionStart=h,this.p.lastBigReductionSize=c));let u=a?this.stack[a-1]:0,f=this.bufferBase+this.buffer.length-u;if(s<r.minRepeatTerm||e&131072){let d=r.stateFlag(this.state,1)?this.pos:this.reducePos;this.storeNode(s,h,d,f+4,!0)}if(e&262144)this.state=this.stack[a];else{let d=this.stack[a-3];this.state=r.getGoto(d,s,!0)}for(;this.stack.length>a;)this.stack.pop();this.reduceContext(s,h)}storeNode(e,t,n,s=4,r=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]<this.buffer.length+this.bufferBase)){let o=this.buffer.length;if(o>0&&this.buffer[o-4]==0&&this.buffer[o-1]>-1){if(t==n)return;if(this.buffer[o-2]>=t){this.buffer[o-2]=n;return}}}if(!r||this.pos==n)this.buffer.push(e,t,n,s);else{let o=this.buffer.length;if(o>0&&(this.buffer[o-4]!=0||this.buffer[o-1]<0)){let l=!1;for(let a=o;a>0&&this.buffer[a-2]>n;a-=4)if(this.buffer[a-1]>=0){l=!0;break}if(l)for(;o>0&&this.buffer[o-2]>n;)this.buffer[o]=this.buffer[o-4],this.buffer[o+1]=this.buffer[o-3],this.buffer[o+2]=this.buffer[o-2],this.buffer[o+3]=this.buffer[o-1],o-=4,s>4&&(s-=4)}this.buffer[o]=e,this.buffer[o+1]=t,this.buffer[o+2]=n,this.buffer[o+3]=s}}shift(e,t,n,s){if(e&131072)this.pushState(e&65535,this.pos);else if((e&262144)==0){let r=e,{parser:o}=this.p;this.pos=s;let l=o.stateFlag(r,1);!l&&(s>n||t<=o.maxNode)&&(this.reducePos=s),this.pushState(r,l?n:Math.min(n,this.reducePos)),this.shiftContext(t,n),t<=o.maxNode&&this.buffer.push(t,n,s,4)}else this.pos=s,this.shiftContext(t,n),t<=this.p.parser.maxNode&&this.buffer.push(t,n,s,4)}apply(e,t,n,s){e&65536?this.reduce(e):this.shift(e,t,n,s)}useNode(e,t){let n=this.p.reused.length-1;(n<0||this.p.reused[n]!=e)&&(this.p.reused.push(e),n++);let s=this.pos;this.reducePos=this.pos=s+e.length,this.pushState(t,s),this.buffer.push(n,s,this.reducePos,-1),this.curContext&&this.updateContext(this.curContext.tracker.reuse(this.curContext.context,e,this,this.p.stream.reset(this.pos-e.length)))}split(){let e=this,t=e.buffer.length;for(t&&e.buffer[t-4]==0&&(t-=4);t>0&&e.buffer[t-2]>e.reducePos;)t-=4;let n=e.buffer.slice(t),s=e.bufferBase+t;for(;e&&s==e.bufferBase;)e=e.parent;return new ur(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,n,s,this.curContext,this.lookAhead,e)}recoverByDelete(e,t){let n=e<=this.p.parser.maxNode;n&&this.storeNode(e,this.pos,t,4),this.storeNode(0,this.pos,t,n?8:4),this.pos=this.reducePos=t,this.score-=190}canShift(e){for(let t=new qO(this);;){let n=this.p.parser.stateSlot(t.state,4)||this.p.parser.hasAction(t.state,e);if(n==0)return!1;if((n&65536)==0)return!0;t.reduce(n)}}recoverByInsert(e){if(this.stack.length>=300)return[];let t=this.p.parser.nextStates(this.state);if(t.length>8||this.stack.length>=120){let s=[];for(let r=0,o;r<t.length;r+=2)(o=t[r+1])!=this.state&&this.p.parser.hasAction(o,e)&&s.push(t[r],o);if(this.stack.length<120)for(let r=0;s.length<8&&r<t.length;r+=2){let o=t[r+1];s.some((l,a)=>a&1&&l==o)||s.push(t[r],o)}t=s}let n=[];for(let s=0;s<t.length&&n.length<4;s+=2){let r=t[s+1];if(r==this.state)continue;let o=this.split();o.pushState(r,this.pos),o.storeNode(0,o.pos,o.pos,4,!0),o.shiftContext(t[s],this.pos),o.reducePos=this.pos,o.score-=200,n.push(o)}return n}forceReduce(){let{parser:e}=this.p,t=e.stateSlot(this.state,5);if((t&65536)==0)return!1;if(!e.validAction(this.state,t)){let n=t>>19,s=t&65535,r=this.stack.length-n*3;if(r<0||e.getGoto(this.stack[r],s,!1)<0){let o=this.findForcedReduction();if(o==null)return!1;t=o}this.storeNode(0,this.pos,this.pos,4,!0),this.score-=100}return this.reducePos=this.pos,this.reduce(t),!0}findForcedReduction(){let{parser:e}=this.p,t=[],n=(s,r)=>{if(!t.includes(s))return t.push(s),e.allActions(s,o=>{if(!(o&393216))if(o&65536){let l=(o>>19)-r;if(l>1){let a=o&65535,h=this.stack.length-l*3;if(h>=0&&e.getGoto(this.stack[h],a,!1)>=0)return l<<19|65536|a}}else{let l=n(o,r+1);if(l!=null)return l}})};return n(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:e}=this.p;return e.data[e.stateSlot(this.state,1)]==65535&&!e.stateSlot(this.state,4)}restart(){this.storeNode(0,this.pos,this.pos,4,!0),this.state=this.stack[0],this.stack.length=0}sameState(e){if(this.state!=e.state||this.stack.length!=e.stack.length)return!1;for(let t=0;t<this.stack.length;t+=3)if(this.stack[t]!=e.stack[t])return!1;return!0}get parser(){return this.p.parser}dialectEnabled(e){return this.p.parser.dialect.flags[e]}shiftContext(e,t){this.curContext&&this.updateContext(this.curContext.tracker.shift(this.curContext.context,e,this,this.p.stream.reset(t)))}reduceContext(e,t){this.curContext&&this.updateContext(this.curContext.tracker.reduce(this.curContext.context,e,this,this.p.stream.reset(t)))}emitContext(){let e=this.buffer.length-1;(e<0||this.buffer[e]!=-3)&&this.buffer.push(this.curContext.hash,this.pos,this.pos,-3)}emitLookAhead(){let e=this.buffer.length-1;(e<0||this.buffer[e]!=-4)&&this.buffer.push(this.lookAhead,this.pos,this.pos,-4)}updateContext(e){if(e!=this.curContext.context){let t=new $c(this.curContext.tracker,e);t.hash!=this.curContext.hash&&this.emitContext(),this.curContext=t}}setLookAhead(e){return e<=this.lookAhead?!1:(this.emitLookAhead(),this.lookAhead=e,!0)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}}class $c{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}}class qO{constructor(e){this.start=e,this.state=e.state,this.stack=e.stack,this.base=this.stack.length}reduce(e){let t=e&65535,n=e>>19;n==0?(this.stack==this.start.stack&&(this.stack=this.stack.slice()),this.stack.push(this.state,0,0),this.base+=3):this.base-=(n-1)*3;let s=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=s}}class fr{constructor(e,t,n){this.stack=e,this.pos=t,this.index=n,this.buffer=e.buffer,this.index==0&&this.maybeNext()}static create(e,t=e.bufferBase+e.buffer.length){return new fr(e,t,t-e.bufferBase)}maybeNext(){let e=this.stack.parent;e!=null&&(this.index=this.stack.bufferBase-e.bufferBase,this.stack=e,this.buffer=e.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 fr(this.stack,this.pos,this.index)}}function Hs(i,e=Uint16Array){if(typeof i!="string")return i;let t=null;for(let n=0,s=0;n<i.length;){let r=0;for(;;){let o=i.charCodeAt(n++),l=!1;if(o==126){r=65535;break}o>=92&&o--,o>=34&&o--;let a=o-32;if(a>=46&&(a-=46,l=!0),r+=a,l)break;r*=46}t?t[s++]=r:t=new e(r)}return t}class Is{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}}const wc=new Is;class UO{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=wc,this.rangeIndex=0,this.pos=this.chunkPos=t[0].from,this.range=t[0],this.end=t[t.length-1].to,this.readNext()}resolveOffset(e,t){let n=this.range,s=this.rangeIndex,r=this.pos+e;for(;r<n.from;){if(!s)return null;let o=this.ranges[--s];r-=n.from-o.to,n=o}for(;t<0?r>n.to:r>=n.to;){if(s==this.ranges.length-1)return null;let o=this.ranges[++s];r+=o.from-n.to,n=o}return r}clipPos(e){if(e>=this.range.from&&e<this.range.to)return e;for(let t of this.ranges)if(t.to>e)return Math.max(e,t.from);return this.end}peek(e){let t=this.chunkOff+e,n,s;if(t>=0&&t<this.chunk.length)n=this.pos+e,s=this.chunk.charCodeAt(t);else{let r=this.resolveOffset(e,1);if(r==null)return-1;if(n=r,n>=this.chunk2Pos&&n<this.chunk2Pos+this.chunk2.length)s=this.chunk2.charCodeAt(n-this.chunk2Pos);else{let o=this.rangeIndex,l=this.range;for(;l.to<=n;)l=this.ranges[++o];this.chunk2=this.input.chunk(this.chunk2Pos=n),n+this.chunk2.length>l.to&&(this.chunk2=this.chunk2.slice(0,l.to-n)),s=this.chunk2.charCodeAt(0)}}return n>=this.token.lookAhead&&(this.token.lookAhead=n+1),s}acceptToken(e,t=0){let n=t?this.resolveOffset(t,-1):this.pos;if(n==null||n<this.token.start)throw new RangeError("Token end out of bounds");this.token.value=e,this.token.end=n}acceptTokenTo(e,t){this.token.value=e,this.token.end=t}getChunk(){if(this.pos>=this.chunk2Pos&&this.pos<this.chunk2Pos+this.chunk2.length){let{chunk:e,chunkPos:t}=this;this.chunk=this.chunk2,this.chunkPos=this.chunk2Pos,this.chunk2=e,this.chunk2Pos=t,this.chunkOff=this.pos-this.chunkPos}else{this.chunk2=this.chunk,this.chunk2Pos=this.chunkPos;let e=this.input.chunk(this.pos),t=this.pos+e.length;this.chunk=t>this.range.to?e.slice(0,this.range.to-this.pos):e,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(e=1){for(this.chunkOff+=e;this.pos+e>=this.range.to;){if(this.rangeIndex==this.ranges.length-1)return this.setDone();e-=this.range.to-this.pos,this.range=this.ranges[++this.rangeIndex],this.pos=this.range.from}return this.pos+=e,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(e,t){if(t?(this.token=t,t.start=e,t.lookAhead=e+1,t.value=t.extended=-1):this.token=wc,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e<this.range.from;)this.range=this.ranges[--this.rangeIndex];for(;e>=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&e<this.chunkPos+this.chunk.length?this.chunkOff=e-this.chunkPos:(this.chunk="",this.chunkOff=0),this.readNext()}return this}read(e,t){if(e>=this.chunkPos&&t<=this.chunkPos+this.chunk.length)return this.chunk.slice(e-this.chunkPos,t-this.chunkPos);if(e>=this.chunk2Pos&&t<=this.chunk2Pos+this.chunk2.length)return this.chunk2.slice(e-this.chunk2Pos,t-this.chunk2Pos);if(e>=this.range.from&&t<=this.range.to)return this.input.read(e,t);let n="";for(let s of this.ranges){if(s.from>=t)break;s.to>e&&(n+=this.input.read(Math.max(s.from,e),Math.min(s.to,t)))}return n}}class cn{constructor(e,t){this.data=e,this.id=t}token(e,t){let{parser:n}=t.p;XO(this.data,e,t,this.id,n.data,n.tokenPrecTable)}}cn.prototype.contextual=cn.prototype.fallback=cn.prototype.extend=!1;cn.prototype.fallback=cn.prototype.extend=!1;class We{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}}function XO(i,e,t,n,s,r){let o=0,l=1<<n,{dialect:a}=t.p.parser;e:for(;(l&i[o])!=0;){let h=i[o+1];for(let d=o+3;d<h;d+=2)if((i[d+1]&l)>0){let m=i[d];if(a.allows(m)&&(e.token.value==-1||e.token.value==m||VO(m,e.token.value,s,r))){e.acceptToken(m);break}}let c=e.next,u=0,f=i[o+2];if(e.next<0&&f>u&&i[h+f*3-3]==65535){o=i[h+f*3-1];continue e}for(;u<f;){let d=u+f>>1,m=h+d+(d<<1),$=i[m],w=i[m+1]||65536;if(c<$)f=d;else if(c>=w)u=d+1;else{o=i[m+2],e.advance();continue e}}break}}function yc(i,e,t){for(let n=e,s;(s=i[n])!=65535;n++)if(s==t)return n-e;return-1}function VO(i,e,t,n){let s=yc(t,n,e);return s<0||yc(t,n,i)<s}const nt=typeof process<"u"&&gc&&/\bparse\b/.test(gc.LOG);let wo=null;function bc(i,e,t){let n=i.cursor(fe.IncludeAnonymous);for(n.moveTo(e);;)if(!(t<0?n.childBefore(e):n.childAfter(e)))for(;;){if((t<0?n.to<e:n.from>e)&&!n.type.isError)return t<0?Math.max(0,Math.min(n.to-1,e-25)):Math.min(i.length,Math.max(n.from+1,e+25));if(t<0?n.prevSibling():n.nextSibling())break;if(!n.parent())return t<0?0:i.length}}class KO{constructor(e,t){this.fragments=e,this.nodeSet=t,this.i=0,this.fragment=null,this.safeFrom=-1,this.safeTo=-1,this.trees=[],this.start=[],this.index=[],this.nextFragment()}nextFragment(){let e=this.fragment=this.i==this.fragments.length?null:this.fragments[this.i++];if(e){for(this.safeFrom=e.openStart?bc(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?bc(e.tree,e.to+e.offset,-1)-e.offset:e.to;this.trees.length;)this.trees.pop(),this.start.pop(),this.index.pop();this.trees.push(e.tree),this.start.push(-e.offset),this.index.push(0),this.nextStart=this.safeFrom}else this.nextStart=1e9}nodeAt(e){if(e<this.nextStart)return null;for(;this.fragment&&this.safeTo<=e;)this.nextFragment();if(!this.fragment)return null;for(;;){let t=this.trees.length-1;if(t<0)return this.nextFragment(),null;let n=this.trees[t],s=this.index[t];if(s==n.children.length){this.trees.pop(),this.start.pop(),this.index.pop();continue}let r=n.children[s],o=this.start[t]+n.positions[s];if(o>e)return this.nextStart=o,null;if(r instanceof Oe){if(o==e){if(o<this.safeFrom)return null;let l=o+r.length;if(l<=this.safeTo){let a=r.prop(ie.lookAhead);if(!a||l+a<this.fragment.to)return r}}this.index[t]++,o+r.length>=Math.max(this.safeFrom,e)&&(this.trees.push(r),this.start.push(o),this.index.push(0))}else this.index[t]++,this.nextStart=o+r.length}}}class JO{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(n=>new Is)}getActions(e){let t=0,n=null,{parser:s}=e.p,{tokenizers:r}=s,o=s.stateSlot(e.state,3),l=e.curContext?e.curContext.hash:0,a=0;for(let h=0;h<r.length;h++){if((1<<h&o)==0)continue;let c=r[h],u=this.tokens[h];if(!(n&&!c.fallback)&&((c.contextual||u.start!=e.pos||u.mask!=o||u.context!=l)&&(this.updateCachedToken(u,c,e),u.mask=o,u.context=l),u.lookAhead>u.end+25&&(a=Math.max(u.lookAhead,a)),u.value!=0)){let f=t;if(u.extended>-1&&(t=this.addActions(e,u.extended,u.end,t)),t=this.addActions(e,u.value,u.end,t),!c.extend&&(n=u,t>f))break}}for(;this.actions.length>t;)this.actions.pop();return a&&e.setLookAhead(a),!n&&e.pos==this.stream.end&&(n=new Is,n.value=e.p.parser.eofTerm,n.start=n.end=e.pos,t=this.addActions(e,n.value,n.end,t)),this.mainToken=n,this.actions}getMainToken(e){if(this.mainToken)return this.mainToken;let t=new Is,{pos:n,p:s}=e;return t.start=n,t.end=Math.min(n+1,s.stream.end),t.value=n==s.stream.end?s.parser.eofTerm:0,t}updateCachedToken(e,t,n){let s=this.stream.clipPos(n.pos);if(t.token(this.stream.reset(s,e),n),e.value>-1){let{parser:r}=n.p;for(let o=0;o<r.specialized.length;o++)if(r.specialized[o]==e.value){let l=r.specializers[o](this.stream.read(e.start,e.end),n);if(l>=0&&n.p.parser.dialect.allows(l>>1)){(l&1)==0?e.value=l>>1:e.extended=l>>1;break}}}else e.value=0,e.end=this.stream.clipPos(s+1)}putAction(e,t,n,s){for(let r=0;r<s;r+=3)if(this.actions[r]==e)return s;return this.actions[s++]=e,this.actions[s++]=t,this.actions[s++]=n,s}addActions(e,t,n,s){let{state:r}=e,{parser:o}=e.p,{data:l}=o;for(let a=0;a<2;a++)for(let h=o.stateSlot(r,a?2:1);;h+=3){if(l[h]==65535)if(l[h+1]==1)h=Zt(l,h+2);else{s==0&&l[h+1]==2&&(s=this.putAction(Zt(l,h+2),t,n,s));break}l[h]==t&&(s=this.putAction(Zt(l,h+1),t,n,s))}return s}}class ev{constructor(e,t,n,s){this.parser=e,this.input=t,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 UO(t,s),this.tokens=new JO(e,this.stream),this.topTerm=e.top[1];let{from:r}=s[0];this.stacks=[ur.start(this,e.top[0],r)],this.fragments=n.length&&this.stream.end-r>e.bufferLength*4?new KO(n,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,t=this.minStackPos,n=this.stacks=[],s,r;if(this.bigReductionCount>300&&e.length==1){let[o]=e;for(;o.forceReduce()&&o.stack.length&&o.stack[o.stack.length-2]>=this.lastBigReductionStart;);this.bigReductionCount=this.lastBigReductionSize=0}for(let o=0;o<e.length;o++){let l=e[o];for(;;){if(this.tokens.mainToken=null,l.pos>t)n.push(l);else{if(this.advanceStack(l,n,e))continue;{s||(s=[],r=[]),s.push(l);let a=this.tokens.getMainToken(l);r.push(a.value,a.end)}}break}}if(!n.length){let o=s&&nv(s);if(o)return nt&&console.log("Finish with "+this.stackID(o)),this.stackToTree(o);if(this.parser.strict)throw nt&&s&&console.log("Stuck with token "+(this.tokens.mainToken?this.parser.getName(this.tokens.mainToken.value):"none")),new SyntaxError("No parse at "+t);this.recovering||(this.recovering=5)}if(this.recovering&&s){let o=this.stoppedAt!=null&&s[0].pos>this.stoppedAt?s[0]:this.runRecovery(s,r,n);if(o)return nt&&console.log("Force-finish "+this.stackID(o)),this.stackToTree(o.forceAll())}if(this.recovering){let o=this.recovering==1?1:this.recovering*3;if(n.length>o)for(n.sort((l,a)=>a.score-l.score);n.length>o;)n.pop();n.some(l=>l.reducePos>t)&&this.recovering--}else if(n.length>1){e:for(let o=0;o<n.length-1;o++){let l=n[o];for(let a=o+1;a<n.length;a++){let h=n[a];if(l.sameState(h)||l.buffer.length>500&&h.buffer.length>500)if((l.score-h.score||l.buffer.length-h.buffer.length)>0)n.splice(a--,1);else{n.splice(o--,1);continue e}}}n.length>12&&(n.sort((o,l)=>l.score-o.score),n.splice(12,n.length-12))}this.minStackPos=n[0].pos;for(let o=1;o<n.length;o++)n[o].pos<this.minStackPos&&(this.minStackPos=n[o].pos);return null}stopAt(e){if(this.stoppedAt!=null&&this.stoppedAt<e)throw new RangeError("Can't move stoppedAt forward");this.stoppedAt=e}advanceStack(e,t,n){let s=e.pos,{parser:r}=this,o=nt?this.stackID(e)+" -> ":"";if(this.stoppedAt!=null&&s>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let h=e.curContext&&e.curContext.tracker.strict,c=h?e.curContext.hash:0;for(let u=this.fragments.nodeAt(s);u;){let f=this.parser.nodeSet.types[u.type.id]==u.type?r.getGoto(e.state,u.type.id):-1;if(f>-1&&u.length&&(!h||(u.prop(ie.contextHash)||0)==c))return e.useNode(u,f),nt&&console.log(o+this.stackID(e)+` (via reuse of ${r.getName(u.type.id)})`),!0;if(!(u instanceof Oe)||u.children.length==0||u.positions[0]>0)break;let d=u.children[0];if(d instanceof Oe&&u.positions[0]==0)u=d;else break}}let l=r.stateSlot(e.state,4);if(l>0)return e.reduce(l),nt&&console.log(o+this.stackID(e)+` (via always-reduce ${r.getName(l&65535)})`),!0;if(e.stack.length>=8400)for(;e.stack.length>6e3&&e.forceReduce(););let a=this.tokens.getActions(e);for(let h=0;h<a.length;){let c=a[h++],u=a[h++],f=a[h++],d=h==a.length||!n,m=d?e:e.split(),$=this.tokens.mainToken;if(m.apply(c,u,$?$.start:m.pos,f),nt&&console.log(o+this.stackID(m)+` (via ${(c&65536)==0?"shift":`reduce of ${r.getName(c&65535)}`} for ${r.getName(u)} @ ${s}${m==e?"":", split"})`),d)return!0;m.pos>s?t.push(m):n.push(m)}return!1}advanceFully(e,t){let n=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>n)return xc(e,t),!0}}runRecovery(e,t,n){let s=null,r=!1;for(let o=0;o<e.length;o++){let l=e[o],a=t[o<<1],h=t[(o<<1)+1],c=nt?this.stackID(l)+" -> ":"";if(l.deadEnd&&(r||(r=!0,l.restart(),nt&&console.log(c+this.stackID(l)+" (restarted)"),this.advanceFully(l,n))))continue;let u=l.split(),f=c;for(let d=0;d<10&&u.forceReduce()&&(nt&&console.log(f+this.stackID(u)+" (via force-reduce)"),!this.advanceFully(u,n));d++)nt&&(f=this.stackID(u)+" -> ");for(let d of l.recoverByInsert(a))nt&&console.log(c+this.stackID(d)+" (via recover-insert)"),this.advanceFully(d,n);this.stream.end>l.pos?(h==l.pos&&(h++,a=0),l.recoverByDelete(a,h),nt&&console.log(c+this.stackID(l)+` (via recover-delete ${this.parser.getName(a)})`),xc(l,n)):(!s||s.score<u.score)&&(s=u)}return s}stackToTree(e){return e.close(),Oe.build({buffer:fr.create(e),nodeSet:this.parser.nodeSet,topID:this.topTerm,maxBufferLength:this.parser.bufferLength,reused:this.reused,start:this.ranges[0].from,length:e.pos-this.ranges[0].from,minRepeatType:this.parser.minRepeatTerm})}stackID(e){let t=(wo||(wo=new WeakMap)).get(e);return t||wo.set(e,t=String.fromCodePoint(this.nextStackID++)),t+e}}function xc(i,e){for(let t=0;t<e.length;t++){let n=e[t];if(n.pos==i.pos&&n.sameState(i)){e[t].score<i.score&&(e[t]=i);return}}e.push(i)}class tv{constructor(e,t,n){this.source=e,this.flags=t,this.disabled=n}allows(e){return!this.disabled||this.disabled[e]==0}}const yo=i=>i;class iv{constructor(e){this.start=e.start,this.shift=e.shift||yo,this.reduce=e.reduce||yo,this.reuse=e.reuse||yo,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}}class xt extends kd{constructor(e){if(super(),this.wrappers=[],e.version!=14)throw new RangeError(`Parser version (${e.version}) doesn't match runtime version (14)`);let t=e.nodeNames.split(" ");this.minRepeatTerm=t.length;for(let l=0;l<e.repeatNodeCount;l++)t.push("");let n=Object.keys(e.topRules).map(l=>e.topRules[l][1]),s=[];for(let l=0;l<t.length;l++)s.push([]);function r(l,a,h){s[l].push([a,a.deserialize(String(h))])}if(e.nodeProps)for(let l of e.nodeProps){let a=l[0];typeof a=="string"&&(a=ie[a]);for(let h=1;h<l.length;){let c=l[h++];if(c>=0)r(c,a,l[h++]);else{let u=l[h+-c];for(let f=-c;f>0;f--)r(l[h++],a,u);h++}}}this.nodeSet=new la(t.map((l,a)=>qe.define({name:a>=this.minRepeatTerm?void 0:l,id:a,props:s[a],top:n.indexOf(a)>-1,error:a==0,skipped:e.skippedNodes&&e.skippedNodes.indexOf(a)>-1}))),e.propSources&&(this.nodeSet=this.nodeSet.extend(...e.propSources)),this.strict=!1,this.bufferLength=bd;let o=Hs(e.tokenData);this.context=e.context,this.specializerSpecs=e.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let l=0;l<this.specializerSpecs.length;l++)this.specialized[l]=this.specializerSpecs[l].term;this.specializers=this.specializerSpecs.map(Oc),this.states=Hs(e.states,Uint32Array),this.data=Hs(e.stateData),this.goto=Hs(e.goto),this.maxTerm=e.maxTerm,this.tokenizers=e.tokenizers.map(l=>typeof l=="number"?new cn(o,l):l),this.topRules=e.topRules,this.dialects=e.dialects||{},this.dynamicPrecedences=e.dynamicPrecedences||null,this.tokenPrecTable=e.tokenPrec,this.termNames=e.termNames||null,this.maxNode=this.nodeSet.types.length-1,this.dialect=this.parseDialect(),this.top=this.topRules[Object.keys(this.topRules)[0]]}createParse(e,t,n){let s=new ev(this,e,t,n);for(let r of this.wrappers)s=r(s,e,t,n);return s}getGoto(e,t,n=!1){let s=this.goto;if(t>=s[0])return-1;for(let r=s[t+1];;){let o=s[r++],l=o&1,a=s[r++];if(l&&n)return a;for(let h=r+(o>>1);r<h;r++)if(s[r]==e)return a;if(l)return-1}}hasAction(e,t){let n=this.data;for(let s=0;s<2;s++)for(let r=this.stateSlot(e,s?2:1),o;;r+=3){if((o=n[r])==65535)if(n[r+1]==1)o=n[r=Zt(n,r+2)];else{if(n[r+1]==2)return Zt(n,r+2);break}if(o==t||o==0)return Zt(n,r+1)}return 0}stateSlot(e,t){return this.states[e*6+t]}stateFlag(e,t){return(this.stateSlot(e,0)&t)>0}validAction(e,t){return!!this.allActions(e,n=>n==t?!0:null)}allActions(e,t){let n=this.stateSlot(e,4),s=n?t(n):void 0;for(let r=this.stateSlot(e,1);s==null;r+=3){if(this.data[r]==65535)if(this.data[r+1]==1)r=Zt(this.data,r+2);else break;s=t(Zt(this.data,r+1))}return s}nextStates(e){let t=[];for(let n=this.stateSlot(e,1);;n+=3){if(this.data[n]==65535)if(this.data[n+1]==1)n=Zt(this.data,n+2);else break;if((this.data[n+2]&1)==0){let s=this.data[n+1];t.some((r,o)=>o&1&&r==s)||t.push(this.data[n],s)}}return t}configure(e){let t=Object.assign(Object.create(xt.prototype),this);if(e.props&&(t.nodeSet=this.nodeSet.extend(...e.props)),e.top){let n=this.topRules[e.top];if(!n)throw new RangeError(`Invalid top rule name ${e.top}`);t.top=n}return e.tokenizers&&(t.tokenizers=this.tokenizers.map(n=>{let s=e.tokenizers.find(r=>r.from==n);return s?s.to:n})),e.specializers&&(t.specializers=this.specializers.slice(),t.specializerSpecs=this.specializerSpecs.map((n,s)=>{let r=e.specializers.find(l=>l.from==n.external);if(!r)return n;let o=Object.assign(Object.assign({},n),{external:r.to});return t.specializers[s]=Oc(o),o})),e.contextTracker&&(t.context=e.contextTracker),e.dialect&&(t.dialect=this.parseDialect(e.dialect)),e.strict!=null&&(t.strict=e.strict),e.wrap&&(t.wrappers=t.wrappers.concat(e.wrap)),e.bufferLength!=null&&(t.bufferLength=e.bufferLength),t}hasWrappers(){return this.wrappers.length>0}getName(e){return this.termNames?this.termNames[e]:String(e<=this.maxNode&&this.nodeSet.types[e].name||e)}get eofTerm(){return this.maxNode+1}get topNode(){return this.nodeSet.types[this.top[1]]}dynamicPrecedence(e){let t=this.dynamicPrecedences;return t==null?0:t[e]||0}parseDialect(e){let t=Object.keys(this.dialects),n=t.map(()=>!1);if(e)for(let r of e.split(" ")){let o=t.indexOf(r);o>=0&&(n[o]=!0)}let s=null;for(let r=0;r<t.length;r++)if(!n[r])for(let o=this.dialects[t[r]],l;(l=this.data[o++])!=65535;)(s||(s=new Uint8Array(this.maxTerm+1)))[l]=1;return new tv(e,n,s)}static deserialize(e){return new xt(e)}}function Zt(i,e){return i[e]|i[e+1]<<16}function nv(i){let e=null;for(let t of i){let n=t.p.stoppedAt;(t.pos==t.p.stream.end||n!=null&&t.pos>n)&&t.p.parser.stateFlag(t.state,2)&&(!e||e.score<t.score)&&(e=t)}return e}function Oc(i){if(i.external){let e=i.extend?1:0;return(t,n)=>i.external(t,n)<<1|e}return i.get}const sv=11,rv=1,ov=2,vc=3,lv=4,av=5,hv=6,cv=7,uv=[-1,9,13,32],hp={mindmap:ov,pie:rv,flowchart:vc,graph:vc,sequenceDiagram:lv,journey:av,requirementDiagram:hv,gantt:cv},fv=Object.keys(hp),dv=new We(i=>{if(uv.includes(i.next))return;let e="";for(;i.next!=10&&i.next!==-1;)e+=String.fromCodePoint(i.next),i.advance();i.advance();const t=fv.filter(n=>e.startsWith(n));if(t.length>0){for(;i.next!==-1;)i.advance();i.acceptToken(hp[t[0]])}else i.acceptToken(sv)}),pv=xt.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,dv],topRules:{MermaidDiagram:[0,8]},tokenPrec:0}),cp=16,up=1,mv=2,gv=3,$v=4,wv=5,yv=17,bv=18,xv=[up,mv,gv,$v,wv],dr=10,Nl=13,fp=32,ga=9,dp=35,Ov=58,vv=40,kv=41,Sv=91,Cv=93,Ev=123,Dv=125,jv=new We((i,e)=>{if(!(i.next<0)){i.advance();let t=0;for(;i.next==fp||i.next==ga;)i.advance(),t++;let n=i.next==dr||i.next==Nl||i.next==dp;i.acceptToken(n?bv:yv,-t)}},{contextual:!0,fallback:!0}),Rv=new We((i,e)=>{let t=0;for(;i.next>-1&&i.next!==dr;){if(i.next===Ov)return;if(i.next===vv||i.next===Sv||i.next===Ev)if(t>0){i.acceptToken(e.context.lineType);return}else return;if((i.next===kv||i.next===Cv||i.next===Dv)&&t>0){i.acceptToken(e.context.lineType);return}i.advance(),t++}i.acceptToken(e.context.lineType)}),Nv=i=>4-i%4,Pv=new We((i,e)=>{let t=i.peek(-1);if(t==dr||t==Nl){for(;;){if(i.next!=fp){if(i.next!=ga)break}i.advance()}i.next!=dr&&i.next!=Nl&&i.next!=dp&&i.acceptToken(cp)}}),Tv={lineType:up},Hv=i=>{let e=0;for(let t=0;t<i.length;t++)e+=i.charCodeAt(t)==ga?Nv(e):1;return e},Yv=i=>xv[i%5],zv=new iv({start:Tv,shift(i,e,t,n){if(e===cp){const s=Hv(n.read(n.pos,t.pos));i.lineType=Yv(s)}return i}}),Si={diagramName:L.define(z.typeName)},ot={diagramName:L.define(Si.diagramName),lineText1:L.define(),lineText2:L.define(),lineText3:L.define(),lineText4:L.define(),lineText5:L.define()},Ve={diagramName:L.define(Si.diagramName),lineComment:L.define(z.lineComment),number:L.define(z.number),showData:L.define(z.keyword),string:L.define(z.string),title:L.define(z.keyword),titleText:L.define(z.string)},be={diagramName:L.define(Si.diagramName),keyword:L.define(z.keyword),lineComment:L.define(z.lineComment),link:L.define(z.contentSeparator),nodeEdge:L.define(z.contentSeparator),nodeEdgeText:L.define(z.string),nodeId:L.define(z.variableName),nodeText:L.define(z.string),number:L.define(z.number),orientation:L.define(z.modifier),string:L.define(z.string)},Ye={diagramName:L.define(Si.diagramName),arrow:L.define(z.contentSeparator),keyword1:L.define(z.keyword),keyword2:L.define(z.controlKeyword),lineComment:L.define(z.lineComment),messageText1:L.define(z.string),messageText2:L.define(z.content),nodeText:L.define(z.variableName),position:L.define(z.modifier)},lt={diagramName:L.define(Si.diagramName),actor:L.define(z.variableName),keyword:L.define(z.keyword),lineComment:L.define(z.lineComment),score:L.define(z.number),text:L.define(z.string)},Le={diagramName:L.define(Si.diagramName),arrow:L.define(z.contentSeparator),keyword:L.define(z.keyword),lineComment:L.define(z.lineComment),number:L.define(z.number),quotedString:L.define(z.string),unquotedString:L.define(z.content)},mi={diagramName:L.define(Si.diagramName),keyword:L.define(z.keyword),lineComment:L.define(z.lineComment),string:L.define(z.string)},Gv=Oi({DiagramName:ot.diagramName,LineText1:ot.lineText1,LineText2:ot.lineText2,LineText3:ot.lineText3,LineText4:ot.lineText4,LineText5:ot.lineText5}),Qv={__proto__:null,mindmap:44,icon:50},pp=xt.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:zv,propSources:[Gv],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:[Pv,Rv,0,jv],topRules:{MindmapDiagram:[0,6]},specialized:[{term:21,get:i=>Qv[i]||-1}],tokenPrec:0}),kc=1,Av=new We(i=>{if(i.next===10){i.acceptToken(kc);return}if(i.next!==-1){for(;i.next!==10&&i.next!==-1;)i.advance();i.acceptToken(kc)}}),Bv=Oi({DiagramName:Ve.diagramName,LineComment:Ve.lineComment,Number:Ve.number,ShowData:Ve.showData,String:Ve.string,Title:Ve.title,TitleText:Ve.titleText}),Wv={__proto__:null,pie:34,showData:36,title:38},mp=xt.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:[Bv],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:[Av,0,1],topRules:{PieDiagram:[0,3]},specialized:[{term:16,get:i=>Wv[i]||-1}],tokenPrec:0}),Mv=1,Lv=2,_v=3,gp=[-1,9,13,32,34,39,96],$p=[40,62,91,123,124],Iv=[41,93,124,125],Sc=45,Cc=61,Ec=46,Fv=new We(i=>{if(!(gp.includes(i.next)||$p.includes(i.next))){for(;!Iv.includes(i.next)&&i.next!==-1;)i.advance();i.acceptToken(Lv)}}),Zv=new We(i=>{if(!(gp.includes(i.next)||$p.includes(i.next)||i.next===Sc||i.next===Cc||i.next===Ec)){for(;i.next!==Sc&&i.next!==Cc&&i.next!==Ec&&i.next!==-1;)i.advance();i.acceptToken(Mv)}}),qv=new We(i=>{if(!(i.next===10||i.next===-1)){for(;i.next!==10&&i.next!==-1;)i.advance();i.acceptToken(_v)}}),Uv=Oi({"( )":z.paren,"[ ]":z.squareBracket,"{ }":z.brace,"<":z.angleBracket,DiagramName:be.diagramName,DoubleEqual:be.link,DoubleHyphen:be.link,Keyword:be.keyword,LineComment:be.lineComment,Link:be.link,NodeEdge:be.nodeEdge,NodeEdgeText:be.nodeEdgeText,NodeId:be.nodeId,NodeText:be.nodeText,Number:be.number,Orientation:be.orientation,String:be.string}),Xv={__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},wp=xt.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:[Uv],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!QQ!,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:[Zv,Fv,qv,0,1,2,3,4,5],topRules:{FlowchartDiagram:[0,5]},specialized:[{term:29,get:i=>Xv[i]||-1}],tokenPrec:1356}),Vv=24,Kv=1,Jv=2,ek=3,tk=4,ik=5,nk=6,sk=7,rk=8,ok=9,lk=10,ak=11,bo=12,hk=25,ck=26,uk=27,fk=28,dk=29,pk=30,mk=31,gk=32,$k=33,wk=34,yk=35,bk=36,xk=37,yp=[-1,9,10,13,32,37],Ok=[43,45],vk=[44,58,62],kk=["->","-x","-)"," -"," "],Sk=["-->","->>","--x","--)"," as"],bp={"left of":bo,"right of":bo,activate:Kv,actor:rk,alt:hk,and:ck,as:ok,autonumber:Jv,box:uk,break:fk,create:ek,critical:dk,deactivate:tk,destroy:ik,else:pk,end:nk,link:mk,links:gk,loop:$k,note:sk,opt:wk,option:yk,over:bo,par:bk,participant:lk,rect:xk},Ck=Object.keys(bp),Ek=new We(i=>{if(!yp.includes(i.next)){for(;i.next!==10&&i.next!==-1;)i.advance();i.acceptToken(Vv)}}),Dk=new We(i=>{if(yp.includes(i.next)||Ok.includes(i.next))return;const e=()=>{if(i.peek(0)===-1||i.peek(1)===-1||i.peek(2)===-1)return!1;let s=String.fromCodePoint(i.peek(0))+String.fromCodePoint(i.peek(1));return!!(kk.includes(s)||(s+=String.fromCodePoint(i.peek(2)),Sk.includes(s)))};let t="";for(;!vk.includes(i.next)&&!e()&&i.next!==10&&i.next!==-1;)t+=String.fromCodePoint(i.next),i.advance();const n=Ck.filter(s=>s===t?t.toLowerCase().startsWith(s):t.toLowerCase().startsWith(s+" "));if(n.length>0){i.acceptToken(bp[n[0]],n[0].length-t.length);return}i.acceptToken(ak)}),jk=Oi({DiagramName:Ye.diagramName,NodeText:Ye.nodeText,Keyword1:Ye.keyword1,Keyword2:Ye.keyword2,LineComment:Ye.lineComment,"Arrow ArrowSuffix":Ye.arrow,Position:Ye.position,MessageText1:Ye.messageText1,MessageText2:Ye.messageText2}),Rk={__proto__:null,sequenceDiagram:84},xp=xt.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:[jk],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:[Ek,Dk,0,1],topRules:{SequenceDiagram:[0,13]},specialized:[{term:41,get:i=>Rk[i]||-1}],tokenPrec:293}),Nk=1,Pk=14,Tk=15,Hk=16,Op=[-1,9,10,13,32],Yk=["title","section"],zk=i=>i.peek(0)===37&&i.peek(1)===37,Hr=i=>Op.includes(i.next)||zk(i),Gk=new We(i=>{if(Hr(i))return;let e="";for(;!Op.includes(i.next);)e+=String.fromCodePoint(i.next),i.advance();const t=Yk.filter(n=>n===e?e.toLowerCase().startsWith(n):e.toLowerCase().startsWith(n+" "));if(t.length>0){i.acceptToken(Nk,t[0].length-e.length);return}}),Qk=new We(i=>{if(!Hr(i)){for(;i.next!==10&&i.next!==-1;)i.advance();i.acceptToken(Pk)}}),Ak=new We(i=>{if(!Hr(i)){for(;i.next!==58&&i.next!==10&&i.next!==-1;)i.advance();i.acceptToken(Tk)}}),Bk=new We(i=>{if(!Hr(i)){for(;i.next!==44&&i.next!==10&&i.next!==-1;)i.advance();i.acceptToken(Hk)}}),Wk=Oi({DiagramName:lt.diagramName,"Text TaskName":lt.text,Actor:lt.actor,Keyword:lt.keyword,LineComment:lt.lineComment,Score:lt.score}),Mk={__proto__:null,journey:42},vp=xt.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:[Wk],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:[Gk,Qk,Ak,Bk,0],topRules:{JourneyDiagram:[0,2]},specialized:[{term:20,get:i=>Mk[i]||-1}],tokenPrec:172}),Lk=1,Dc=[-1,45,60,62,10,13,123,61],_k=new We(i=>{if(Dc.includes(i.next)||i.next===32)return;let e,t="",n=0;do{if(e=i.peek(n),e===-1)return;t+=String.fromCodePoint(e),n++}while(!Dc.includes(e));(e===45||e===60)&&(t=t.slice(0,-1).trim(),i.acceptToken(Lk,t.length))}),Ik=Oi({"DiagramName SubDiagramType":Le.diagramName,LineComment:Le.lineComment,IDNumber:Le.number,"UnquotedString RelationshipStart":Le.unquotedString,QuotedString:Le.quotedString,PropKeyword:Le.unquotedString,Keyword:Le.keyword,"ForwardArrow BackArrow Hyphen":Le.arrow}),Fk={__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},kp=xt.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:[Ik],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:[_k,0,1,2],topRules:{RequirementDiagram:[0,3]},specialized:[{term:71,get:i=>Fk[i]||-1}],tokenPrec:428}),Zk=1,qk=2,Uk=3,Xk=4,Vk=5,Kk=6,Jk=7,eS=8,tS=9,iS=17,Sp={axisFormat:Zk,dateFormat:qk,excludes:Uk,inclusiveEndDates:Xk,section:tS,tickInterval:Vk,title:Kk,todayMarker:Jk,weekday:eS},nS=Object.keys(Sp),sS=new We(i=>{if(i.next===32||i.next===10||i.next===-1||i.next===37&&i.peek(1)===37)return;let e="";for(;i.next!==10&&i.next!==-1;)e+=String.fromCodePoint(i.next),i.advance();const t=nS.filter(n=>n===e?e.startsWith(n):e.startsWith(n+" "));if(t.length>0){i.acceptToken(Sp[t[0]],t[0].length-e.length);return}i.acceptToken(iS)}),rS=Oi({"DiagramName Section":mi.diagramName,Keyword:mi.keyword,ImportantText:mi.string,LineComment:mi.lineComment}),oS={__proto__:null,gantt:44},Cp=xt.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:[rS],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:[sS,0],topRules:{GanttDiagram:[0,10]},specialized:[{term:21,get:i=>oS[i]||-1}],tokenPrec:115});var Ft;(function(i){i.Mermaid="MermaidDiagram",i.Mindmap="MindmapDiagram",i.Pie="PieDiagram",i.Flowchart="FlowchartDiagram",i.Sequence="SequenceDiagram",i.Journey="JourneyDiagram",i.Requirement="RequirementDiagram",i.Gantt="GanttDiagram"})(Ft||(Ft={}));var Mt;(function(i){i.Mermaid="mermaid",i.Mindmap="mindmap",i.Pie="pie",i.Flowchart="flowchart",i.Sequence="sequenceDiagram",i.Journey="journey",i.Requirement="requirementDiagram",i.Gantt="gantt"})(Mt||(Mt={}));var Lt;(function(i){i.Mermaid="mermaid",i.Mindmap="mindmap",i.Pie="pie",i.Flowchart="flowchart",i.Sequence="sequence",i.Journey="journey",i.Requirement="requirement",i.Gantt="gantt"})(Lt||(Lt={}));var Un;(function(i){i.Graph="graph",i.Sequence="sequence",i.Requirement="requirement"})(Un||(Un={}));const lS=bt.define({name:Lt.Mermaid,parser:pv.configure({wrap:Ub(i=>{switch(i.name){case Ft.Mindmap:return{parser:pp};case Ft.Pie:return{parser:mp};case Ft.Flowchart:return{parser:wp};case Ft.Sequence:return{parser:xp};case Ft.Journey:return{parser:vp};case Ft.Requirement:return{parser:kp};case Ft.Gantt:return{parser:Cp};default:return null}})})}),aS=bt.define({name:Lt.Mindmap,parser:pp}),hS=bt.define({name:Lt.Pie,parser:mp}),cS=bt.define({name:Lt.Flowchart,parser:wp}),uS=bt.define({name:Lt.Sequence,parser:xp}),fS=bt.define({name:Lt.Journey,parser:vp}),dS=bt.define({name:Lt.Requirement,parser:kp}),pS=bt.define({name:Lt.Gantt,parser:Cp});function Ep(){return new vi(lS)}function mS(){return new vi(aS)}function gS(){return new vi(hS)}function $S(){return new vi(cS)}function wS(){return new vi(uS)}function yS(){return new vi(fS)}function bS(){return new vi(dS)}function xS(){return new vi(pS)}_t.of({name:Mt.Mermaid,load:async()=>Ep()});_t.of({name:Mt.Mindmap,load:async()=>mS()});_t.of({name:Mt.Pie,load:async()=>gS()});_t.of({name:Mt.Flowchart,alias:[Un.Graph],load:async()=>$S()});_t.of({name:Mt.Sequence,alias:[Un.Sequence],load:async()=>wS()});_t.of({name:Mt.Journey,load:async()=>yS()});_t.of({name:Mt.Requirement,alias:[Un.Requirement],load:async()=>bS()});_t.of({name:Mt.Gantt,load:async()=>xS()});let OS=0;const vS=jr.define([{tag:[Si.diagramName,ot.diagramName,Ve.diagramName,be.diagramName,Ye.diagramName,lt.diagramName,Le.diagramName,mi.diagramName],class:"cm-mm-name"},{tag:[be.keyword,be.orientation,Ye.keyword1,Ye.keyword2,lt.keyword,Le.keyword,mi.keyword,Ve.title,Ve.showData],class:"cm-mm-keyword"},{tag:[be.nodeEdge,be.link,Ye.arrow,Le.arrow],class:"cm-mm-edge"},{tag:[be.nodeId,Ye.position,lt.actor],class:"cm-mm-id"},{tag:[be.nodeText,be.nodeEdgeText,Ye.nodeText,Ye.messageText1,Ye.messageText2,lt.text,Ve.titleText,ot.lineText1,ot.lineText2,ot.lineText3,ot.lineText4,ot.lineText5],class:"cm-mm-text"},{tag:[be.string,Ve.string,mi.string,Le.quotedString,Le.unquotedString],class:"cm-mm-string"},{tag:[be.number,Ve.number,Le.number,lt.score],class:"cm-mm-number"},{tag:[be.lineComment,Ve.lineComment,Ye.lineComment,lt.lineComment,Le.lineComment,mi.lineComment],class:"cm-mm-comment"}]),Pl=Se.define(),kS=ve.line({class:"cm-diagram-error"}),SS=si.define({create:()=>ve.none,update(i,e){for(const t of e.effects)if(t.is(Pl))return t.value===null||t.value>e.state.doc.lines?ve.none:ve.set([kS.range(e.state.doc.line(t.value).from)]);return i.map(e.changes)},provide:i=>V.decorations.from(i)}),CS=i=>[Qb(),Eb(),Wb(),_x(),wd.of([...FO,...Jx,ZO]),Ep(),kx(vS),SS,V.lineWrapping,V.updateListener.of(e=>{e.docChanged&&i(e.state.doc.toString())})],ES=["M15 3h6v6","m21 3-7 7","m3 21 7-7","M9 21H3v-6"],DS=["m14 10 7-7","M20 10h-6V4","m3 21 7-7","M4 14h6v6"];function jS({editor:i,blockId:e,onDone:t}){const n=e!==null,[s,r]=g.useState(""),[o,l]=g.useState(null),[a,h]=g.useState(null),[c,u]=g.useState(!1),f=g.useRef(null),d=g.useRef(null),m=g.useRef(!1),$=g.useCallback(()=>{var H;const D=(e?document.querySelector(`.doc-body [data-id="${CSS.escape(e)}"]`):null)??document.querySelector(".doc-body .page")??document.documentElement,R=((H=D.closest("[data-mode]"))==null?void 0:H.getAttribute("data-mode"))??"light",C=m5(D,g5);return{mode:R,fontFamily:getComputedStyle(D).fontFamily||"sans-serif",themeVariables:C?$5(C,R==="dark"):void 0}},[e]),w=g.useCallback((b,D)=>{var C;if(l(D),(C=f.current)==null||C.dispatch({effects:Pl.of(D.line)}),m.current){b.setAttribute("data-stale","");return}b.textContent="";const R=document.createElement("p");R.className="diagram-problem",R.textContent=D.message,b.append(R)},[]),y=g.useCallback(async(b,D)=>{var _,q;const R=(_=d.current)==null?void 0:_.pane;if(!R)return;const C=w5(b);if(C){D.live&&w(R,{message:C,line:null});return}const{mode:H,fontFamily:E,themeVariables:B}=$();try{const ee=await y5(b,{mode:H,fontFamily:E,themeVariables:B,id:`dfx-drawer-${OS++}`});if(!D.live)return;R.innerHTML=ee,R.removeAttribute("data-stale"),m.current=!0,l(null),(q=f.current)==null||q.dispatch({effects:Pl.of(null)})}catch(ee){if(!D.live)return;w(R,{message:x5(ee),line:b5(ee)})}},[$,w]),x=g.useMemo(()=>{const b=document.createElement("button");return b.type="button",b.className="diagram-zoom-btn diagram-zoom-full",b.addEventListener("pointerdown",D=>{D.preventDefault(),D.stopPropagation()}),b.addEventListener("click",D=>{D.preventDefault(),D.stopPropagation(),u(R=>!R)}),b},[]);g.useEffect(()=>{var D;c||(D=f.current)==null||D.requestMeasure(),x.innerHTML=O5(c?DS:ES);const b=c?"Show the source":"Fill the drawer";x.setAttribute("aria-label",b),x.setAttribute("title",b)},[c,x]);const O=g.useCallback(b=>{var R,C;if(!b){(R=f.current)==null||R.destroy(),f.current=null;return}const D=e&&((C=ft(i.state.doc,e))==null?void 0:C.node.attrs.source)||"";r(D),l(null),h(null),u(!1),m.current=!1,f.current=new V({state:ce.create({doc:D,extensions:CS(r)}),parent:b}),f.current.focus()},[e,i]),j=g.useCallback(b=>{var R;if(!b){(R=d.current)==null||R.dispose(),d.current=null;return}const D=b.querySelector(`.${Ca}`);D&&(d.current=v5(D,b),d.current.controls.append(x))},[x]);g.useEffect(()=>{if(!n)return;const b={live:!0},D=setTimeout(()=>void y(s,b),250);return()=>{b.live=!1,clearTimeout(D)}},[s,n,y]);const k=()=>{if(!(!e||o)){if(!cg(i,e,s)){h("That could not be saved. Check the source and try again.");return}t()}},v=o!=null&&o.line?`Line ${o.line}. `:"";return p.jsx(Bi,{open:n,onOpenChange:b=>{b||t()},children:p.jsxs(Wi,{className:"df-sheet diagram-dialog","data-full":c?"":void 0,children:[p.jsxs(Mi,{className:"df-sheet-bar",children:[p.jsxs("div",{className:"df-sheet-titles",children:[p.jsx(Li,{children:"Diagram source"}),p.jsx(yn,{children:"Mermaid text. The first line names the kind of diagram; after that write what connects to what, and the layout engine places it."})]}),p.jsxs("div",{className:"df-sheet-controls",children:[p.jsx("p",{className:"df-sheet-note",role:"status",children:o?`${v}Mermaid cannot draw this yet.`:a??""}),p.jsx(Xt,{variant:"ghost",onClick:t,children:"Cancel"}),p.jsx(Xt,{onClick:k,disabled:!!o,children:"Done"})]})]}),p.jsxs("div",{className:"df-sheet-body diagram-dialog-body",children:[p.jsxs("section",{className:"df-sheet-col diagram-dialog-source",children:[p.jsx("h4",{className:"df-sheet-col-head",children:"Source"}),p.jsx("div",{className:"diagram-dialog-code",ref:O}),o&&p.jsx("pre",{className:"diagram-dialog-problem",role:"status",children:o.message})]}),p.jsxs("section",{className:"df-sheet-col diagram-dialog-preview",children:[p.jsx("h4",{className:"df-sheet-col-head",children:"Preview"}),p.jsx("div",{className:"diagram-dialog-stage",ref:j,children:p.jsx("figure",{className:"blk-diagram",children:p.jsx("div",{className:Ca})})})]})]})]})})}const Tl="decaframe:no-upload",jc=/\.(png|jpe?g|gif|webp|avif|svg)(\?|#|$)/i;function xo(i,e){const t=(i??"").trim();return t===""||/\s/.test(t)?null:Mc(t,e)===null?t:null}function Dp(i){var e;for(let t=i.depth;t>0;t-=1)if(i.node(t).type.name==="mediaItem"){const n=i.node(t),s=i.node(t-1);return{itemId:String(n.attrs.id??""),blockId:String(s.attrs.id??""),src:typeof n.attrs.src=="string"?n.attrs.src:"",kind:Wc((e=Xn(s.type.name))==null?void 0:e.type)}}return null}function Rc(i){for(let e=i.depth;e>=0;e-=1)if(i.node(e).type.name==="page")return String(i.node(e).attrs.id??"");return null}function RS(i,e){const t=e.target instanceof Element?e.target.closest('figure[data-node="mediaItem"]'):null,n=t==null?void 0:t.getAttribute("data-id");if(!t||!n)return null;const s=ft(i.state.doc,n);return s?Dp(i.state.doc.resolve(s.pos+1)):null}function NS(){return k5.create({name:"mediaDrop",addProseMirrorPlugins(){const i=this.editor;return[new S5({key:new C5("mediaDrop"),props:{handlePaste(e,t,n){var h;const s=(h=t.clipboardData)==null?void 0:h.getData("text/plain"),r=n.content.textBetween(0,n.content.size," "),o=Dp(e.state.selection.$from),l=xo(s||r,(o==null?void 0:o.kind)??"image");if(!l)return!1;if(o&&o.src===""&&o.blockId&&o.itemId)return Eo(i,o.blockId,o.itemId,l),!0;if(o)return!1;const a=Rc(e.state.selection.$from);return!a||!jc.test(l)?!1:Pa(i,a,l)},handleDrop(e,t){const n=t.dataTransfer;if(!n||n.types.includes("application/x-prosemirror-slice"))return!1;const s=RS(e,t);if(n.files.length>0)return s!=null&&s.itemId?(t.preventDefault(),e.dom.dispatchEvent(new CustomEvent(Tl,{bubbles:!0,detail:{itemId:s.itemId}})),!0):!1;const r=(s==null?void 0:s.kind)??"image",o=xo(n.getData("text/uri-list"),r)??xo(n.getData("text/plain"),r);if(!o)return!1;if(s!=null&&s.blockId&&s.itemId)return t.preventDefault(),Eo(i,s.blockId,s.itemId,o),!0;const l=e.posAtCoords({left:t.clientX,top:t.clientY}),a=l?Rc(e.state.doc.resolve(l.pos)):null;return!a||!jc.test(o)?!1:(t.preventDefault(),Pa(i,a,o))}}})]}})}const pr=16,jp=20,Rp=10,Np=6,PS=pr+Np+pr+Rp;function Nc(i,e){return i==="block"?{left:e.left-PS,top:e.top}:{left:e.left+e.width/2-jp/2,top:e.top-pr/2}}const TS={"--df-grip-short":`${pr}px`,"--df-grip-long":`${jp}px`,"--df-reach":`${Rp}px`,"--df-bar-gap":`${Np}px`};function HS({page:i,active:e,onOpen:t,notesActive:n,hasNotes:s,onOpenNotes:r}){return p.jsxs("div",{className:"df-page-btn-row",style:{left:i.rect.left,top:i.rect.top},children:[p.jsxs("button",{className:"df-page-btn","data-active":e||void 0,"aria-label":"Page options","aria-pressed":e,onMouseDown:o=>o.preventDefault(),onClick:()=>t(i.id),children:[p.jsx(xe,{name:"SlidersHorizontal",size:12}),p.jsx("span",{children:"Page"})]}),p.jsxs("button",{className:"df-page-btn","data-active":n||void 0,"aria-label":s?"Speaker notes (has notes)":"Speaker notes","aria-pressed":n,onMouseDown:o=>o.preventDefault(),onClick:()=>r(i.id),children:[p.jsx(xe,{name:"StickyNote",size:12}),s&&p.jsx("span",{className:"df-page-btn-dot","aria-hidden":"true"})]})]})}function YS({page:i}){const e=Math.round(i.overflow??0);return p.jsx("div",{className:"df-edge","data-over":e,"aria-hidden":"true",style:{left:i.rect.left,top:i.rect.top+(i.frameH??i.rect.height),width:i.rect.width}})}function zS({page:i,editor:e,onMenu:t}){return p.jsxs("div",{className:"df-empty-page",style:{left:i.rect.left,top:i.rect.top,width:i.rect.width,height:i.rect.height},children:[p.jsx("button",{className:"df-empty-hit","aria-label":"Start typing on this page",onMouseDown:n=>n.preventDefault(),onClick:()=>ug(e,i.id)}),p.jsx(gr,{label:"Add a layout",align:"center",onOpenChange:t,items:fg.map(n=>({label:n.group,icon:dg(n.group),onSelect:()=>{},items:n.tiles.map(s=>({label:s.label,mark:s.svg,onSelect:()=>qc(e,i.id,s.insert)}))})),trigger:p.jsxs("button",{className:"df-frame-btn",onMouseDown:n=>n.preventDefault(),children:[p.jsx(xe,{name:"Plus",size:15}),p.jsx("span",{children:"Add a layout"})]})})]})}const GS=(i,e)=>{let t=null;return i.state.doc.forEach(n=>{n.attrs.id===e&&(t=n.attrs.notes??null)}),t},QS=4,AS=(i,e)=>i===e||!!i&&!!e&&i.index===e.index&&i.x===e.x&&i.y===e.y&&i.orientation===e.orientation&&i.length===e.length,BS=["lead-top","trail-top","lead-bottom","trail-bottom"];function WS(i,e){const t=i.view.dom.querySelector(`[data-id="${e}"]`),n=t==null?void 0:t.parentElement;if(!n)return null;const s=n.getBoundingClientRect(),r=getComputedStyle(n);return{left:s.left+(parseFloat(r.paddingLeft)||0)+window.scrollX,right:s.right-(parseFloat(r.paddingRight)||0)+window.scrollX}}function MS(i,e){const t=i.right-i.left;if(t<=0)return Ys;const n=Math.abs(e-(i.left+i.right)/2)*2*Ys/t;return Math.min(Ys,n)}const LS='.df-layer, [role="menu"], [role="tooltip"], [role="dialog"], [role="listbox"]',Fs=i=>{var e;return!!((e=i==null?void 0:i.closest)!=null&&e.call(i,LS))},Pp={current:!1},Hl="df-block-menu",Oo=i=>{Pp.current=i,window.dispatchEvent(new Event(Hl))};function _S({editor:i,drawer:e,onDrawer:t,onDesign:n,onTemplates:s,notesPageId:r,onNotes:o}){const[l,a]=g.useState([]),[h,c]=g.useState(null),[u,f]=g.useState(null),[d,m]=g.useState(null),[$,w]=g.useState(null),[y,x]=g.useState(null),[O,j]=g.useState(null),[k,v]=g.useState(null),[b,D]=g.useState(null),[R,C]=g.useState(null),[H,E]=g.useState(null),[B,_]=g.useState(!1),[q,ee]=g.useState(null),[ne,P]=g.useState(null),[Z,se]=g.useState({x:0,y:0}),ue=g.useRef({x:-1,y:-1}),N=g.useRef(!1),[M,T]=g.useState(null),[Q,K]=g.useState(null),[oe,je]=g.useState(null),me=g.useRef(null),it=g.useRef(!1),kn=g.useRef(0),ke=g.useCallback(()=>{cancelAnimationFrame(kn.current),kn.current=requestAnimationFrame(()=>a(pg(i)))},[i]);g.useEffect(()=>{ke(),i.on("transaction",ke),window.addEventListener("scroll",ke,!0),window.addEventListener("resize",ke);const S=new ResizeObserver(ke);return S.observe(i.view.dom),()=>{i.off("transaction",ke),window.removeEventListener("scroll",ke,!0),window.removeEventListener("resize",ke),S.disconnect(),cancelAnimationFrame(kn.current)}},[i,ke]);const Ci=g.useCallback((S,U)=>{const ae=l.find(X=>X.kind==="page"&&S>=X.rect.left&&S<=X.rect.right&&U>=X.rect.top&&U<=X.rect.bottom);je((ae==null?void 0:ae.id)??null),c(ae?null:mg(l,S,U));const J=Qr(l,S,U);if(!J||J.kind==="page")return f(null);if(J.kind==="block")return f({block:J});f({item:J,block:l.find(X=>X.kind==="block"&&X.id===J.blockId)})},[l]);g.useEffect(()=>{H||me.current||N.current||ue.current.x<0||Ci(ue.current.x,ue.current.y)},[l,H,Ci]),g.useEffect(()=>{const S=U=>{if(ue.current={x:U.clientX+window.scrollX,y:U.clientY+window.scrollY},H||me.current)return;const ae=U.target;N.current=Fs(ae),!N.current&&Ci(ue.current.x,ue.current.y)};return window.addEventListener("pointermove",S),()=>window.removeEventListener("pointermove",S)},[H,Ci]),g.useEffect(()=>{const S=()=>{var X;const{$from:U}=i.state.selection;let ae=null,J=null;for(let $e=U.depth;$e>0;$e--){const te=U.node($e);if(te.type.name==="page"){J=te.attrs.id??null;break}(X=te.attrs)!=null&&X.id&&Xn(te.type.name)&&(ae??(ae=te.attrs.id))}T(ae),K(J)};return S(),i.on("selectionUpdate",S),i.on("transaction",S),()=>{i.off("selectionUpdate",S),i.off("transaction",S)}},[i]);const F=l.find(S=>S.id===d)??null;g.useEffect(()=>{const S=te=>{var Re,He,de;if(Fs(te.target))return;const he=(He=(Re=te.target)==null?void 0:Re.closest)==null?void 0:He.call(Re,".media-frame"),we=(de=he==null?void 0:he.closest("[data-id]"))==null?void 0:de.getAttribute("data-id");if(we){m(we),w(null),x(null);return}m(null),w(null),x(null),C(null)},U=te=>{var we;const he=(we=te.detail)==null?void 0:we.itemId;he&&(m(he),w(he))},ae=te=>{te.key==="Escape"&&(it.current||(m(null),C(null)))},J=te=>{var ls,as,ka,Sa;const he=te.target;if(!he||!i.view.dom.contains(he)||(ls=he.closest)!=null&&ls.call(he,".page-eyebrow, .page-title, .page-subtitle"))return;const we=(as=he.closest)==null?void 0:as.call(he,".media-frame");if(we){const Ct=(ka=we.closest("[data-id]"))==null?void 0:ka.getAttribute("data-id");Ct&&we.hasAttribute("data-missing")&&w(Ct);return}const Re=te.clientX+window.scrollX,He=te.clientY+window.scrollY,de=Qr(l,Re,He);if((de==null?void 0:de.kind)!=="page")return;const Ne=l.filter(Ct=>Ct.kind==="block"&&$g(Ct)===de.id);if(!Ne.length)return;const St=wg(Ne.map(Ct=>Ct.rect),Re,He,"column");if(!St)return;const os=[Ne[St.index-1],Ne[St.index]].find(Ct=>Ct&&yg(i,Ct.id));if(os)return void bg(i,os.id);xg(i,de.id,(Sa=Ne[St.index])==null?void 0:Sa.id)},X=te=>{const he=te.target;if(!he||!i.view.dom.contains(he))return;const we=te.clientX+window.scrollX,Re=te.clientY+window.scrollY,He=Qr(l,we,Re);if(!He||He.kind==="page")return;te.preventDefault();const de=i.state.selection;if(!(de instanceof ko)){const Ne=i.view.posAtCoords({left:te.clientX,top:te.clientY}),St=Ne?i.state.doc.resolve(Ne.pos):null;Ne&&(St!=null&&St.parent.isTextblock)?i.commands.setTextSelection(Ne.pos):de.empty||i.commands.setTextSelection(de.to)}m(He.id),it.current=!0,Oo(!0),C({left:we,top:Re})},$e=te=>{var we,Re,He;if(Fs(te.target))return;let he=((Re=(we=te.target)==null?void 0:we.closest)==null?void 0:Re.call(we,"[data-id]"))??null;for(;he;){const de=he.getAttribute("data-id");if(de&&Ta(i,de)){m(de),C(null);return}he=((He=he.parentElement)==null?void 0:He.closest("[data-id]"))??null}};return window.addEventListener("pointerdown",S),window.addEventListener("dblclick",$e),window.addEventListener("click",J),window.addEventListener("contextmenu",X),window.addEventListener("keydown",ae,!0),window.addEventListener(Tl,U),()=>{window.removeEventListener(Tl,U),window.removeEventListener("pointerdown",S),window.removeEventListener("dblclick",$e),window.removeEventListener("click",J),window.removeEventListener("contextmenu",X),window.removeEventListener("keydown",ae,!0)}},[l,i]);const Ue=g.useCallback(S=>gg(l,S),[l]),Yp=S=>U=>{U.preventDefault(),me.current={target:S,x:U.clientX,y:U.clientY,moved:!1}};g.useEffect(()=>{const S=J=>{const X=me.current;if(!X||!X.moved&&Math.hypot(J.clientX-X.x,J.clientY-X.y)<QS)return;X.moved||(X.moved=!0,E(X.target),se({x:J.clientX,y:J.clientY}),m(null),C(null));const $e=Ha(l,X.target,J.clientX+window.scrollX,J.clientY+window.scrollY);P(te=>AS(te,($e==null?void 0:$e.seam)??null)?te:($e==null?void 0:$e.seam)??null)},U=J=>{const X=me.current;if(!X)return;if(me.current=null,!X.moved){const te=i.state.selection;!te.empty&&!(te instanceof ko)&&i.commands.setTextSelection(te.to),m(X.target.id),it.current=!0,Oo(!0),C(Nc(X.target.kind==="block"?"block":"item",X.target.rect));return}const $e=Ha(l,X.target,J.clientX+window.scrollX,J.clientY+window.scrollY);E(null),P(null),$e&&(X.target.kind==="item"&&X.target.blockId?Co(i,X.target.blockId,X.target.id,$e.index):X.target.kind==="block"&&Og(i,$e.containerId,X.target.id,$e.index),ke())},ae=()=>{me.current=null,E(null),P(null)};return window.addEventListener("pointermove",S),window.addEventListener("pointerup",U),window.addEventListener("pointercancel",ae),()=>{window.removeEventListener("pointermove",S),window.removeEventListener("pointerup",U),window.removeEventListener("pointercancel",ae)}},[l,i,ke]);const $a=S=>S?l.find(U=>U.id===S.id):void 0,wa=$a(u==null?void 0:u.block),zp=$a(u==null?void 0:u.item),ya=wa??((F==null?void 0:F.kind)==="block"?F:void 0),ba=zp??((F==null?void 0:F.kind)==="item"?F:void 0),Gp=S=>U=>{var Re,He;U.preventDefault(),U.stopPropagation();const ae=WS(i,S.id);if(!ae)return;(He=(Re=U.target).setPointerCapture)==null||He.call(Re,U.pointerId),_(!0);const J=de=>Math.max(E5,MS(ae,de+window.scrollX));let X=0;const $e=de=>{cancelAnimationFrame(X),X=requestAnimationFrame(()=>Ar(i,S.id,J(de)))};$e(U.clientX);const te=de=>$e(de.clientX),he=de=>{const Ne=J(de.clientX);cancelAnimationFrame(X),window.removeEventListener("pointermove",te),window.removeEventListener("pointerup",he),window.removeEventListener("pointercancel",we),_(!1),Do(i,S.id,"width",Ne),Do(i,S.id,"place",Ne>=Ys?null:"centre"),Ar(i,S.id,null),ke()},we=()=>{cancelAnimationFrame(X),window.removeEventListener("pointermove",te),window.removeEventListener("pointerup",he),window.removeEventListener("pointercancel",we),_(!1),Ar(i,S.id,null)};window.addEventListener("pointermove",te),window.addEventListener("pointerup",he),window.addEventListener("pointercancel",we)},Qp=S=>{if(!S||!Ta(i,S.id))return null;const U=Math.round(vg(i,S.id));return BS.map(ae=>{const[J,X]=ae.split("-");return p.jsx("div",{className:`df-size df-size-${ae}`,"data-id":S.id,role:"separator","aria-label":`Resize — ${U}% wide, drag`,style:{left:J==="lead"?S.rect.left:S.rect.right,top:X==="top"?S.rect.top:S.rect.bottom},onPointerDown:Gp(S)},`${S.id}-${ae}`)})},Ap=(S,U)=>ae=>{var He,de;ae.preventDefault(),ae.stopPropagation();const J=Ya(i,S.id);if(!J)return;(de=(He=ae.target).setPointerCapture)==null||de.call(He,ae.pointerId);let X=J.widths;const $e=Ne=>{X=Sg(J,U,Ne+window.scrollX);const St=J.right-J.left,os=X.slice(0,U+1).reduce((ls,as)=>ls+as,0);ee({x:J.left+os/100*St,top:J.top,bottom:J.bottom})};$e(ae.clientX);const te=()=>{window.removeEventListener("pointermove",he),window.removeEventListener("pointerup",we),window.removeEventListener("pointercancel",Re),ee(null)},he=Ne=>$e(Ne.clientX),we=Ne=>{$e(Ne.clientX),te(),Cg(i,S.id,X),ke()},Re=()=>te();window.addEventListener("pointermove",he),window.addEventListener("pointerup",we),window.addEventListener("pointercancel",Re)},Bp=S=>{if(!S||S.kind!=="block")return null;const U=Ya(i,S.id);return U?U.xs.map((ae,J)=>p.jsx("div",{className:"df-col","data-id":S.id,"data-index":J,role:"separator","aria-orientation":"vertical","aria-label":`Resize column ${J+1} — drag`,style:{left:ae,top:U.top,height:U.bottom-U.top},onPointerDown:Ap(S,J)},`${S.id}-col-${J}`)):null},xa=(S,U)=>p.jsx("div",{className:"df-ring","data-id":S.id,"data-kind":S.kind,"data-tone":U,style:{left:S.rect.left,top:S.rect.top,width:S.rect.width,height:S.rect.height}},`${S.id}-${U}`),Oa=(S,U,ae)=>p.jsxs("div",{className:U,style:Nc(S.kind==="block"?"block":"item",S.rect),children:[S.kind==="block"&&p.jsx(Bn,{label:"Add a block below",side:"left",children:p.jsx("button",{className:"df-bar-add","aria-label":"Add a block below",onMouseDown:J=>J.preventDefault(),onClick:()=>{kg(i,S.pageId,S.id),ke()},children:p.jsx(xe,{name:"Plus",size:14})})}),p.jsx(Bn,{label:"Click to select · Drag to move",side:S.kind==="block"?"left":"top",children:p.jsx("button",{className:"df-bar-btn","data-selected":d===S.id||void 0,"aria-label":`${S.kind==="block"?"Layout":"Block"} — click to select, drag to rearrange`,onPointerDown:Yp(S),children:p.jsx(xe,{name:ae,size:14})})})]},S.id),Yr=S=>S&&S.archetype!=="prose"?S:void 0,zr=Yr(wa)??Yr((F==null?void 0:F.kind)==="item"?l.find(S=>S.kind==="block"&&S.id===F.blockId):void 0)??Yr(l.find(S=>S.kind==="block"&&S.id===M)),va=(F==null?void 0:F.kind)==="block"?F:(F==null?void 0:F.kind)==="item"?l.find(S=>S.kind==="block"&&S.id===F.blockId):void 0,Wp=va??l.find(S=>S.kind==="block"&&S.id===M);return p.jsxs("div",{className:"df-layer",style:TS,children:[h&&!H&&!B&&p.jsxs("div",{className:"df-page-seam",style:{left:h.x,top:h.y},children:[p.jsx("button",{className:"df-page-seam-btn","aria-label":"Insert a blank page here",onClick:()=>Uc(i,()=>i.commands.addPage({before:h.before,title:"New page"})),children:p.jsx(xe,{name:"Plus",size:14})}),p.jsx("button",{className:"df-page-seam-btn","aria-label":"Insert a page from a template here",onClick:()=>s(h.before),children:p.jsx(xe,{name:"LayoutPanelLeft",size:14})})]}),zr&&!H&&!B&&zr.id!==(F==null?void 0:F.id)&&xa(zr,"soft"),F&&!H&&xa(F,"strong"),!H&&Qp(va),!H&&!B&&Bp(Wp),q&&p.jsx("div",{className:"df-col-guide",style:{left:q.x,top:q.top,height:q.bottom-q.top}}),ya&&!H&&!B&&Oa(ya,"df-bar df-bar-block","MoreVertical"),ba&&!H&&!B&&Oa(ba,"df-bar df-bar-item","MoreHorizontal"),F&&!H&&R&&p.jsx(V$,{editor:i,target:F,siblings:Ue(F),block:F.kind==="item"?l.find(S=>S.kind==="block"&&S.id===F.blockId):void 0,at:R,open:!0,onAddress:()=>w(F.id),onFrame:()=>j(F.id),onChartData:()=>v(F.id),onDiagramSource:()=>D(F.id),onIcon:S=>x(S),onDesign:n,onOpenChange:S=>{it.current=S,Oo(S),S||C(null)},onDone:S=>{m(S??null),w(null),x(null),j(null),C(null),ke()}}),(F==null?void 0:F.kind)==="item"&&$===F.id&&p.jsx(K$,{editor:i,blockId:F.blockId??"",itemId:F.id,open:!0,onOpenChange:S=>{S||(w(null),ke())}}),(F==null?void 0:F.kind)==="item"&&y===F.id&&p.jsx(h0,{editor:i,blockId:F.blockId??"",itemId:F.id,open:!0,onOpenChange:S=>{S||(x(null),ke())}}),p.jsx(p0,{editor:i,blockId:k,onDone:()=>{v(null),ke()}}),p.jsx(jS,{editor:i,blockId:b,onDone:()=>{D(null),ke()}}),(F==null?void 0:F.kind)==="item"&&O===F.id&&p.jsx(eu,{editor:i,blockId:F.blockId??"",itemId:F.id,open:!0,onOpenChange:S=>{S||(j(null),ke())}}),!H&&l.filter(S=>S.kind==="page"&&(S.id===oe||e&&S.id===Q||S.id===r)).map(S=>p.jsx(HS,{page:S,active:e&&S.id===Q,onOpen:t,notesActive:S.id===r,hasNotes:GS(i,S.id)!==null,onOpenNotes:o},`c-${S.id}`)),!H&&l.filter(S=>S.kind==="page"&&(S.overflow??0)>0).map(S=>p.jsx(YS,{page:S},`o-${S.id}`)),!H&&l.filter(S=>S.kind==="page"&&S.blocks===0).map(S=>p.jsx(zS,{page:S,editor:i,onMenu:U=>{it.current=U}},`e-${S.id}`)),ne&&p.jsx("div",{className:"df-seam","data-orientation":ne.orientation,style:ne.orientation==="vertical"?{left:ne.x-1,top:ne.y-ne.length/2,height:ne.length}:{left:ne.x-ne.length/2,top:ne.y-1,width:ne.length}}),H&&p.jsx("div",{className:"df-ghost",style:{left:H.rect.left,top:H.rect.top,width:H.rect.width,height:H.rect.height}}),H&&p.jsx(_$,{editor:i,target:H,x:Z.x,y:Z.y})]})}const IS=Ng.map(([i])=>i);function FS(i,e){const t=Rg(i,e);if(t)return t;let n=null;return i.state.doc.forEach(s=>{n===null&&s.type.name==="page"&&(n=s.attrs.id??null)}),n}function ZS({editor:i,group:e,onGroup:t}){const[n,s]=g.useState(""),r=n.trim().toLowerCase(),o=g.useRef(null);e!==null&&(o.current=e);const l=e??o.current,a=g.useMemo(()=>r?Eg(r):Xc.filter(d=>d.shelf===l),[r,l]),h=g.useMemo(()=>new Set(a.map(d=>d.section)).size>1,[a]),c=g.useCallback(d=>{const m=FS(i,d.insert);if(!m)return;const $=Dg(i,m);qc(i,m,d.insert,$),t(null),i.commands.focus()},[i,t]),u=e!==null,f=g.useRef(null);return p.jsxs(p.Fragment,{children:[p.jsxs(Yl,{open:u,onClose:g.useCallback(()=>t(null),[t]),title:r?"All blocks":l??"",badge:a.length,closeLabel:"Close the block picker",className:"df-dock-panel",dismissOnOutsidePress:!0,children:[p.jsxs(Ku,{className:"df-dock-search",children:[p.jsx(Ju,{children:p.jsx(xe,{name:"Search",size:13})}),p.jsx(r0,{type:"search",placeholder:"Search blocks","aria-label":"Search blocks",value:n,onChange:d=>s(d.target.value)})]}),p.jsxs("div",{className:"df-dock-list",children:[a.length===0&&p.jsxs("p",{className:"df-empty",children:["Nothing matches “",n,"”."]}),a.map((d,m)=>{var $;return p.jsxs(g.Fragment,{children:[h&&d.section!==(($=a[m-1])==null?void 0:$.section)&&p.jsx("p",{className:"df-dock-group",children:d.section}),p.jsxs("button",{className:"df-dock-item","data-kind":d.kind,onClick:()=>c(d),children:[p.jsx("span",{className:"df-dock-icon","aria-hidden":"true",dangerouslySetInnerHTML:{__html:d.svg}}),p.jsx("span",{className:"df-dock-label",children:d.label})]})]},d.key)})]})]}),p.jsx("aside",{className:"df-panel df-dock-strip","aria-label":"Blocks",children:IS.map(d=>{const m=jg[d];return p.jsx(Bn,{label:d,side:"left",children:p.jsx("button",{className:"df-dock-cat","data-active":d===e||void 0,"aria-label":d,"aria-pressed":d===e,onPointerDown:()=>{f.current=e},onClick:()=>t(d===f.current?null:d),children:m?p.jsx(xe,{name:m,size:16}):p.jsx("span",{className:"df-dock-dot"})})},d)})})]})}const qS=[{name:"bold",label:"B",title:"Bold",className:"df-mark-bold"},{name:"italic",label:"I",title:"Italic",className:"df-mark-italic"},{name:"underline",label:"U",title:"Underline",className:"df-mark-underline"},{name:"strike",label:"S",title:"Strikethrough",className:"df-mark-strike"},{name:"code",label:"</>",title:"Code",className:"df-mark-code"}],US=[{value:"left",title:"Align left",icon:"AlignLeft"},{value:"center",title:"Align centre",icon:"AlignCenter"},{value:"right",title:"Align right",icon:"AlignRight"}],XS=[{kind:"text",label:"Text"},{kind:"highlight",label:"Highlight"}],VS={sm:"Small text",md:"Normal text",lg:"Large text"};var Gc;const KS=(((Gc=Bc("text"))==null?void 0:Gc.arrangements)??[]).map(i=>({name:i.name,label:VS[i.name]??i.label})).sort((i,e)=>["sm","md","lg"].indexOf(i.name)-["sm","md","lg"].indexOf(e.name)),Pc=[...R5].sort((i,e)=>i-e).map(i=>({level:i,label:`Heading ${i}`})),JS=_c.filter(i=>i!=="text"&&i!=="heading").map(i=>({value:i,label:An(i)})),e1=_c.map(i=>({value:i,label:An(i)}));function t1({editor:i}){const[e,t]=g.useState(null),[,n]=g.useState(0),s=g.useRef(!1),r=g.useRef(!1),o=g.useRef(!1),[l,a]=g.useState(!1),[h,c]=g.useState(!1),[u,f]=g.useState(!1),d=g.useRef(null),m=g.useRef(!1),$=g.useRef(null),w=g.useRef(!1),y=g.useRef(null),[x,O]=g.useState(null),j=g.useRef(!1),k=g.useRef(0),v=g.useCallback(()=>{cancelAnimationFrame(k.current),k.current=requestAnimationFrame(()=>{var Ci,F;if(n(Ue=>Ue+1),s.current||r.current||m.current||w.current||j.current)return;if(Pp.current)return t(null);const{state:P,view:Z}=i,se=P.selection,ue=se instanceof ko;if(!(i.isEditable&&!se.empty&&(ue||Ea(se))&&(ue||P.doc.textBetween(se.from,se.to).length>0)&&!o.current))return t(null);const M=ue?se.ranges.map(Ue=>Da(Z,Ue.$from.pos,Ue.$to.pos)):[Da(Z,se.from,se.to)],T={left:Math.min(...M.map(Ue=>Ue.left)),right:Math.max(...M.map(Ue=>Ue.right)),top:Math.min(...M.map(Ue=>Ue.top)),bottom:Math.max(...M.map(Ue=>Ue.bottom))},Q=T.right-T.left,K=window.scrollX,oe=window.scrollY,je=T.top+oe,me=((Ci=b.current)==null?void 0:Ci.getBoundingClientRect().width)??0,it=8,kn=((F=document.querySelector(".df-rail"))==null?void 0:F.getBoundingClientRect().right)??0,ke=Math.min(Math.max(T.left+Q/2+K,kn+me/2+it+K),window.innerWidth-me/2-it+K);t({cx:ke,top:je,bottom:T.bottom+oe,below:je<56})})},[i]);g.useEffect(()=>{v(),i.on("selectionUpdate",v),i.on("transaction",v),window.addEventListener("scroll",v,!0),window.addEventListener("resize",v);const P=new ResizeObserver(v);P.observe(i.view.dom),b.current&&P.observe(b.current);const Z=N=>{Fs(N.target)||(o.current=!0,v())},se=()=>{o.current&&(o.current=!1,v())},ue=N=>{if(N.key!=="Escape"||s.current||j.current)return;if(r.current){r.current=!1,a(!1),i.chain().focus().run();return}const M=i.state.selection;!M.empty&&Ea(M)&&i.chain().focus().setTextSelection(M.to).run()};return window.addEventListener(Hl,v),window.addEventListener("pointerdown",Z),window.addEventListener("pointerup",se),window.addEventListener("keydown",ue,!0),()=>{i.off("selectionUpdate",v),i.off("transaction",v),window.removeEventListener("scroll",v,!0),window.removeEventListener("resize",v),P.disconnect(),window.removeEventListener(Hl,v),window.removeEventListener("pointerdown",Z),window.removeEventListener("pointerup",se),window.removeEventListener("keydown",ue,!0),cancelAnimationFrame(k.current)}},[i,v,!!e]);const b=g.useRef(null),D=Pg(i),R=g.useRef(D);s.current||(R.current=D);const C=R.current,H=P=>!(C!=null&&C.holds)||C.holds.includes(P),E=(()=>{if(C)return C.kind==="heading"?Pc.find(P=>P.level===(C.level??3)):e1.find(P=>P.value===C.kind)})(),B=P=>{r.current=!1,a(!1),v()},_=(P,Z)=>{const se=i.chain().focus();P==="text"?(Z?se.setColor(Z):se.unsetColor()).run():(Z?se.setHighlight({color:Z}):se.unsetHighlight()).run(),v()},q=()=>{j.current=!1,O(null),i.chain().focus().run(),v()},ee=P=>{const Z=i.getAttributes(P==="text"?"textStyle":"highlight").color;return Z&&/^#[0-9a-f]{6}$/i.test(Z)?Z:"#000000"},ne=()=>{var Z;const P=((Z=d.current)==null?void 0:Z.value.trim())??"";if(!P)i.chain().focus().extendMarkRange("link").unsetLink().run();else{const se=/^[a-z][a-z0-9+.-]*:/i.test(P)?P:`https://${P}`;i.chain().focus().extendMarkRange("link").setLink({href:se}).run()}B()};return e?p.jsx("div",{className:"df-layer",children:p.jsx("div",{ref:b,className:"df-bubble",role:"toolbar","aria-label":"Text formatting","data-below":e.below||void 0,style:{left:e.cx,top:e.below?e.bottom+8:e.top-8},children:x?p.jsxs("div",{className:"df-bubble-colour-panel",role:"group","aria-label":"Colour",children:[p.jsx("div",{className:"df-colour-kinds",role:"tablist",children:XS.map(P=>p.jsx("button",{type:"button",role:"tab",className:"df-bubble-btn df-colour-kind","aria-selected":P.kind===x,"data-active":P.kind===x||void 0,onMouseDown:Z=>Z.preventDefault(),onClick:()=>O(P.kind),children:P.label},P.kind))}),p.jsx("span",{className:"df-bubble-rule"}),p.jsx("button",{type:"button",className:"df-swatch df-swatch-none",title:"No colour","aria-label":"No colour","data-active":!i.isActive(x==="text"?"textStyle":"highlight")||void 0,onMouseDown:P=>P.preventDefault(),onClick:()=>_(x,null)}),D5.map(P=>p.jsx("button",{type:"button",className:"df-swatch",title:P[0].toUpperCase()+P.slice(1),"aria-label":P,style:{background:`var(--${j5(P)})`},"data-active":i.isActive(x==="text"?"textStyle":"highlight",{color:P})||void 0,onMouseDown:Z=>Z.preventDefault(),onClick:()=>_(x,P)},P)),p.jsx("span",{className:"df-bubble-rule"}),p.jsx("label",{className:"df-swatch df-swatch-custom",title:"Custom colour…",children:p.jsx("input",{type:"color",defaultValue:ee(x),onFocus:()=>{j.current=!0},onChange:P=>_(x,P.target.value),onBlur:()=>{j.current=!1}})}),p.jsx("button",{type:"button",className:"df-bubble-btn df-bubble-icon",title:"Done",onMouseDown:P=>P.preventDefault(),onClick:q,children:p.jsx(xe,{name:"ChevronLeft",size:14})})]}):l?p.jsxs("form",{className:"df-bubble-link",onSubmit:P=>{P.preventDefault(),ne()},children:[p.jsx("input",{ref:d,className:"df-bubble-url",placeholder:"Paste or type a link…",defaultValue:i.getAttributes("link").href??"",autoFocus:!0,spellCheck:!1}),p.jsx("button",{type:"submit",className:"df-bubble-btn df-bubble-apply",children:"Set"}),i.isActive("link")&&p.jsx("button",{type:"button",className:"df-bubble-btn",title:"Remove link",onClick:()=>{i.chain().focus().extendMarkRange("link").unsetLink().run(),B()},children:p.jsx(xe,{name:"Trash2",size:14})})]}):u?p.jsxs("form",{className:"df-bubble-link",onSubmit:P=>{var se;P.preventDefault();const Z=((se=y.current)==null?void 0:se.value.trim())||null;C&&i.commands.updateBlock(C.id,{content:[{text:Tg(i,C.id),language:Z}]}),w.current=!1,f(!1),i.chain().focus().run(),v()},children:[p.jsx("input",{ref:y,className:"df-bubble-url",placeholder:"Language — js, python, sql…",defaultValue:(C==null?void 0:C.language)??"",autoFocus:!0,spellCheck:!1,onFocus:()=>{w.current=!0}}),p.jsx("button",{type:"submit",className:"df-bubble-btn df-bubble-apply",children:"Set"})]}):h?p.jsxs("form",{className:"df-bubble-link",onSubmit:P=>{var se;P.preventDefault();const Z=(se=$.current)==null?void 0:se.value.trim();Z&&i.chain().focus().insertContent({type:"inlineImage",attrs:{src:Z}}).run(),m.current=!1,c(!1),v()},children:[p.jsx("input",{ref:$,className:"df-bubble-url",placeholder:"Paste a picture's web address…",autoFocus:!0,spellCheck:!1,onFocus:()=>{m.current=!0}}),p.jsx("button",{type:"submit",className:"df-bubble-btn df-bubble-apply",children:"Insert"})]}):p.jsxs(p.Fragment,{children:[C&&p.jsxs(p.Fragment,{children:[p.jsx(gr,{label:"Turn into",align:"start",onOpenChange:P=>{s.current=P,P||i.chain().focus().run(),v()},trigger:p.jsxs("button",{className:"df-bubble-btn df-bubble-turn",onMouseDown:P=>P.preventDefault(),children:[p.jsx("span",{children:(E==null?void 0:E.label)??"Normal text"}),p.jsx(xe,{name:"ChevronDown",size:12})]}),items:[...(H("text")?KS:[]).map(P=>({label:P.label,active:C.kind==="text"&&(C.arrangement??"md")===P.name,onSelect:()=>{const Z=i.chain().focus();C.kind!=="text"&&Z.setBlockType(C.id,"text"),Z.setArrangement(C.id,P.name==="md"?null:P.name).run()}})),...(H("heading")?Pc:[]).map(P=>({label:P.label,active:C.kind==="heading"&&(C.level??3)===P.level,onSelect:()=>{const Z=i.chain().focus();C.kind!=="heading"&&Z.setBlockType(C.id,"heading"),Z.setHeadingLevel(C.id,P.level).run()}})),...JS.filter(P=>H(P.value)).map(P=>({label:P.label,active:P.value===C.kind,onSelect:()=>i.commands.setBlockType(C.id,P.value)}))]}),p.jsx("span",{className:"df-bubble-rule"})]}),qS.map(P=>p.jsx("button",{className:`df-bubble-btn ${P.className}`,title:P.title,"data-active":i.isActive(P.name)||void 0,onMouseDown:Z=>Z.preventDefault(),onClick:()=>i.chain().focus().toggleMark(P.name).run(),children:P.label},P.name)),p.jsx("button",{className:"df-bubble-btn df-bubble-icon df-bubble-colour",title:"Colour","data-active":i.isActive("textStyle")||i.isActive("highlight")||void 0,onMouseDown:P=>P.preventDefault(),onClick:()=>O("text"),children:p.jsx(xe,{name:"Baseline",size:14})}),p.jsx("button",{className:"df-bubble-btn df-bubble-icon",title:"Link","data-active":i.isActive("link")||void 0,onMouseDown:P=>P.preventDefault(),onClick:()=>{r.current=!0,a(!0)},children:p.jsx(xe,{name:"Link",size:14})}),(C==null?void 0:C.kind)==="code"&&p.jsx("button",{className:"df-bubble-btn df-bubble-lang",title:"The fence's language",onMouseDown:P=>P.preventDefault(),onClick:()=>{w.current=!0,f(!0)},children:p.jsx("span",{children:C.language||"Language"})}),p.jsx("button",{className:"df-bubble-btn df-bubble-icon",title:"Picture in the text",onMouseDown:P=>P.preventDefault(),onClick:()=>{m.current=!0,c(!0)},children:p.jsx(xe,{name:"Image",size:14})}),p.jsx("span",{className:"df-bubble-rule"}),US.map(P=>p.jsx("button",{className:"df-bubble-btn df-bubble-icon",title:P.title,"data-active":i.isActive({textAlign:P.value})||void 0,onMouseDown:Z=>Z.preventDefault(),onClick:()=>i.chain().focus().setTextAlign(P.value).run(),children:p.jsx(xe,{name:P.icon,size:14})},P.value)),p.jsx("span",{className:"df-bubble-rule"}),p.jsx("button",{className:"df-bubble-btn df-bubble-icon",title:"Clear formatting",onMouseDown:P=>P.preventDefault(),onClick:()=>i.chain().focus().unsetAllMarks().run(),children:p.jsx(xe,{name:"RemoveFormatting",size:14})})]})})}):null}function i1({slash:i}){var d,m;const[e,t]=g.useState(i.get());g.useEffect(()=>i.subscribe(t),[i]);const n=(d=e.items[e.active])==null?void 0:d.pick.key;if(g.useEffect(()=>{var b,D;if(!n)return;const $=document.querySelector(".df-slash [cmdk-list]");if(!$)return;const y=[...$.querySelectorAll("[cmdk-item]")].find(R=>R.getAttribute("data-value")===n);if(!y)return;const O=((b=y.parentElement)==null?void 0:b.firstElementChild)===y?(D=y.closest("[cmdk-group]"))==null?void 0:D.querySelector("[cmdk-group-heading]"):null,j=$.getBoundingClientRect(),k=(O??y).getBoundingClientRect().top,v=y.getBoundingClientRect().bottom;k<j.top?$.scrollTop+=k-j.top-4:v>j.bottom&&($.scrollTop+=v-j.bottom+4)},[n,e.open]),!e.open||!e.rect||!e.items.length)return null;const{rect:s}=e,r=[...new Set(e.items.map($=>$.group))],o=r.length>1,l=8,a=window.innerHeight-s.bottom-l*2,h=s.top-l*2,c=a<220&&h>a,u=Math.max(120,Math.min(320,(c?h:a)-44)),f=Math.min(s.left,window.innerWidth-268-12);return p.jsxs(ef,{className:"df-slash","data-flip":c||void 0,style:c?{left:f,bottom:window.innerHeight-s.top+l}:{left:f,top:s.bottom+l},shouldFilter:!1,value:((m=e.items[e.active])==null?void 0:m.pick.key)??"",onValueChange:()=>{},label:"Insert a block",children:[p.jsx(tf,{style:{maxHeight:u},children:(o?r:[null]).map($=>p.jsx(nf,{heading:$??void 0,className:"df-slash-shelf",children:e.items.filter(w=>$===null||w.group===$).map(w=>p.jsxs(sf,{value:w.pick.key,className:"df-slash-item",onMouseDown:y=>y.preventDefault(),onSelect:()=>e.run(w),children:[p.jsx("span",{className:"df-slash-mark","aria-hidden":"true",dangerouslySetInnerHTML:{__html:w.pick.svg}}),p.jsxs("span",{className:"df-slash-text",children:[p.jsx("span",{className:"df-slash-title",children:w.pick.label}),w.hint&&p.jsx("span",{className:"df-slash-hint",children:w.hint})]})]},w.pick.key))},$??"_"))}),p.jsx("p",{className:"df-slash-foot",children:e.query?`${e.items.length} of ${Xc.length}`:"Keep typing to search all blocks"})]})}const Tp=["border-top","border-trail","border-bottom","border-lead"],n1={"border-top":"top","border-trail":"trail","border-bottom":"bottom","border-lead":"lead"};function s1({editor:i,blockId:e,open:t,onClose:n}){const s=e?ft(i.state.doc,e):null,r=s&&Xn(s.node.type.name),o=e?Hg(i,e):[],l=c=>o.includes(c),a=e?Yg(i,e):!1,h=e?zg(i,e):!1;return p.jsx(Yl,{open:t,onClose:n,title:"Design",badge:r?An(r.type):"—",closeLabel:"Hide block design",className:"df-drawer df-design-panel",children:!e||!r?p.jsx("p",{className:"df-empty",children:"This block is no longer here. Pick another one to design it."}):o.length===0&&!a&&!h?p.jsxs("p",{className:"df-empty",children:[An(r.type)," has no design options yet — its family has not been designed."]}):p.jsxs("div",{className:"df-fields",children:[a&&p.jsx(r1,{editor:i,blockId:e}),p.jsx(o1,{editor:i,blockId:e}),p.jsx(l1,{editor:i,blockId:e}),(l("fill")||l("on-fill")||l("head-fill")||l("on-head-fill")||l("band-fill"))&&p.jsxs(fi,{label:"Surface",children:[l("fill")&&p.jsx(Xe,{editor:i,blockId:e,slot:"fill",label:"Fill"}),l("on-fill")&&p.jsx(Xe,{editor:i,blockId:e,slot:"on-fill",label:"Ink"}),l("head-fill")&&p.jsx(Xe,{editor:i,blockId:e,slot:"head-fill",label:"Header"}),l("on-head-fill")&&p.jsx(Xe,{editor:i,blockId:e,slot:"on-head-fill",label:"Header ink"}),l("band-fill")&&p.jsx(Xe,{editor:i,blockId:e,slot:"band-fill",label:"Bands"})]}),Tp.some(c=>l(c))&&p.jsx(a1,{editor:i,blockId:e,has:l}),(l("corner")||l("elevation"))&&p.jsxs(fi,{label:"Shape",children:[l("corner")&&p.jsx(Xe,{editor:i,blockId:e,slot:"corner",label:"Corner"}),l("elevation")&&p.jsx(Xe,{editor:i,blockId:e,slot:"elevation",label:"Shadow"})]}),(l("marker")||l("marker-fill"))&&p.jsxs(fi,{label:"Marker",children:[l("marker")&&p.jsx(Xe,{editor:i,blockId:e,slot:"marker",label:"Marker"}),l("marker-fill")&&p.jsx(Xe,{editor:i,blockId:e,slot:"marker-fill",label:"Behind it"})]}),(l("row-rule")||l("row-mark")||l("table-mark"))&&p.jsxs(fi,{label:"Accent",children:[l("row-rule")&&p.jsx(Xe,{editor:i,blockId:e,slot:"row-rule",label:"Row rule"}),l("row-mark")&&p.jsx(Xe,{editor:i,blockId:e,slot:"row-mark",label:"Row mark"}),l("table-mark")&&p.jsx(Xe,{editor:i,blockId:e,slot:"table-mark",label:"Table mark"})]})]})})}function r1({editor:i,blockId:e}){const t=Gg(i,e);return p.jsx(fi,{label:"Size",children:p.jsx(hi,{label:"Place",children:p.jsx(Pi,{value:Tc[t]??t,label:"Place",options:N5.map(n=>({label:Tc[n],active:n===t,onSelect:()=>Do(i,e,"place",n)}))})})})}const Tc={start:"Start",centre:"Centre",end:"End"};function o1({editor:i,blockId:e}){var u;const t=Qg(i,e),n=Ag(i,e),s=Bg(i,e),r=Wg(i,e),o=Mg(i,e);if(!t.length&&!n&&!s.length&&!r.length&&o===null)return null;const l=Lg(i,e),a=_g(i,e),h=Ig(i,e),c=Fg(i,e);return p.jsxs(fi,{label:"Layout",children:[t.length>1&&p.jsx(hi,{label:"Shape",children:p.jsx(Pi,{value:((u=t.find(f=>f.name===l))==null?void 0:u.label)??l,label:"Shape",options:t.map(f=>({label:f.label,active:f.name===l,disabled:!!f.disabled,onSelect:()=>Zg(i,e,f.name)}))})}),r.length>1&&p.jsx(hi,{label:"Stack",children:p.jsx(Pi,{value:Yc[a]??a,label:"Stack",options:r.map(f=>({label:Yc[f]??f,active:f===a,onSelect:()=>qg(i,e,f)}))})}),s.length>1&&p.jsx(hi,{label:"Mark",children:p.jsx(Pi,{value:Hc[c]??c,label:"Mark",options:s.map(f=>({label:Hc[f]??f,active:f===c,onSelect:()=>Ug(i,e,f)}))})}),o!==null&&p.jsx(hi,{label:"Eyebrow",children:p.jsx(Xg,{className:"df-toggle",checked:o,onCheckedChange:f=>Vg(i,e,f),"aria-label":"A small label above every title"})}),n&&p.jsx(hi,{label:"Icon",children:p.jsx(Pi,{value:zc[h]??h,label:"Icon",options:P5.map(f=>({label:zc[f],active:f===h,onSelect:()=>Kg(i,e,f)}))})})]})}const Hp="Hidden",Hc={numeral:"Numeral",dot:"Dot",icon:"Icon",none:Hp},Yc={none:"Side by side",stacked:"Stacked",proportional:"Shares (100%)"},zc={top:"Above",lead:"Beside",none:Hp};function l1({editor:i,blockId:e}){const t=Jg(i,e);if(!t.length)return null;const n=e$(i,e);return p.jsx(fi,{label:"Style",children:p.jsx(hi,{label:"Style",children:p.jsx(Pi,{value:ja(n),label:"Style",options:t.map(s=>({label:ja(s),active:s===n,onSelect:()=>t$(i,e,s)}))})})})}function a1({editor:i,blockId:e,has:t}){return p.jsxs(fi,{label:"Border",children:[p.jsx("div",{className:"df-border-glyph",children:p.jsxs("div",{className:"df-border-box",children:[p.jsx("span",{className:"df-border-face"}),Tp.filter(t).map(n=>p.jsx(h1,{editor:i,blockId:e,slot:n},n))]})}),p.jsx("p",{className:"df-hint",children:"Click a side: off, rule, strong, accent."}),t("border-weight")&&p.jsx(Xe,{editor:i,blockId:e,slot:"border-weight",label:"Weight"}),t("divider")&&p.jsx(Xe,{editor:i,blockId:e,slot:"divider",label:"Between boxes"})]})}function h1({editor:i,blockId:e,slot:t}){var a,h;const n=((a=So[t])==null?void 0:a.accepts)??[],s=Vc(i,e,t),r=[null,...n],o=r[(r.indexOf(s)+1)%r.length],l=n1[t];return p.jsx("button",{type:"button",className:`df-side df-side-${l} ${l==="top"||l==="bottom"?"df-side-h":"df-side-v"}`,"aria-label":`${((h=So[t])==null?void 0:h.label)??t}: ${s?Ro(t,s):"off"}`,"data-off":s?void 0:"",style:{"--df-side-paint":s?`var(--${s})`:void 0},onClick:()=>jo(i,e,t,o??Ic)})}function Xe({editor:i,blockId:e,slot:t,label:n}){var o;const s=((o=So[t])==null?void 0:o.accepts)??[],r=Vc(i,e,t);return p.jsx(hi,{label:n,children:p.jsx(Pi,{value:r?Ro(t,r):"None",label:n,options:[{label:"None",active:r===null,onSelect:()=>jo(i,e,t,Ic)},...s.map(l=>({label:Ro(t,l),active:r===l,onSelect:()=>jo(i,e,t,l)}))]})})}function Pi({value:i,label:e,options:t}){return p.jsx(gr,{label:e,align:"end",trigger:p.jsxs("button",{type:"button",className:"df-pick","aria-label":e,children:[p.jsx("span",{children:i}),p.jsx(xe,{name:"ChevronDown",size:13})]}),items:t})}const c1=500;function u1({editor:i,pages:e,pageId:t,open:n,onClose:s,onNavigate:r}){const o=e.findIndex(f=>f.id===t),l=o>=0?e[o]:null,a=Kc({extensions:i$(),content:{type:"doc",content:[{type:"paragraph"}]},editorProps:{attributes:{class:"df-notes-body"}}}),[h,c]=g.useState(!0);g.useEffect(()=>{if(!a)return;const f=()=>c(a.isEmpty);return f(),a.on("transaction",f),()=>{a.off("transaction",f)}},[a]),g.useEffect(()=>{if(!a||!l)return;const f=l.id;return a.commands.setContent(l.notes??"",{contentType:"markdown"}),()=>{const d=a.getMarkdown().trim();i.commands.setPage(f,{notes:d||null})}},[a,l==null?void 0:l.id,i]);const u=g.useRef(void 0);return g.useEffect(()=>{if(!a||!l)return;const f=l.id,d=()=>{const w=a.getMarkdown().trim();i.commands.setPage(f,{notes:w||null})},m=()=>{clearTimeout(u.current),u.current=setTimeout(d,c1)},$=()=>{clearTimeout(u.current),d()};return a.on("update",m),a.on("blur",$),()=>{a.off("update",m),a.off("blur",$),clearTimeout(u.current)}},[a,l==null?void 0:l.id,i]),p.jsx(Yl,{open:n,onClose:s,title:"Speaker notes",badge:l?String(l.index+1).padStart(2,"0"):"—",closeLabel:"Hide speaker notes",className:"df-drawer df-notes-panel",children:l?p.jsxs("div",{className:"df-notes-fields",children:[p.jsxs("div",{className:"df-notes-box",children:[p.jsx(Jc,{editor:a}),h&&p.jsx("span",{className:"df-notes-placeholder","aria-hidden":"true",children:"Add notes…"})]}),p.jsxs("div",{className:"df-notes-nav",children:[p.jsx("button",{type:"button",className:"df-notes-nav-btn",disabled:o<=0,onClick:()=>r(e[o-1].id),"aria-label":"Previous page's notes",children:p.jsx(xe,{name:"ChevronLeft",size:15})}),p.jsx("span",{className:"df-notes-nav-title",title:l.title,children:l.title}),p.jsx("button",{type:"button",className:"df-notes-nav-btn",disabled:o>=e.length-1,onClick:()=>r(e[o+1].id),"aria-label":"Next page's notes",children:p.jsx(xe,{name:"ChevronRight",size:15})})]})]}):p.jsx("p",{className:"df-empty",children:"This page is no longer here."})})}function f1({editor:i,doc:e}){const t=e.mode==="dark";return p.jsxs("div",{className:"df-view",children:[p.jsx(Bn,{label:t?"Light mode":"Dark mode",side:"left",children:p.jsx("button",{className:"df-view-group df-view-mode","aria-label":t?"Light mode":"Dark mode",onClick:()=>i.commands.setDocument({mode:t?"light":"dark"}),children:p.jsx(xe,{name:t?"Sun":"Moon",size:16})})}),p.jsxs("div",{className:"df-view-group",children:[p.jsx("button",{className:"df-view-btn","aria-label":"Undo",disabled:!i.can().undo(),onClick:()=>i.chain().focus().undo().run(),children:p.jsx(xe,{name:"Undo2",size:15})}),p.jsx("button",{className:"df-view-btn","aria-label":"Redo",disabled:!i.can().redo(),onClick:()=>i.chain().focus().redo().run(),children:p.jsx(xe,{name:"Redo2",size:15})})]}),p.jsx(Bn,{label:"Help is not built yet",side:"left",children:p.jsx("button",{className:"df-view-group df-view-help","aria-disabled":"true","aria-label":"Help",children:p.jsx(xe,{name:"CircleHelp",size:16})})})]})}const d1=$r(mr().doc??L$),p1=200;function v1(){const[i,e]=g.useState(!0),[t,n]=g.useState(null),s=(t==null?void 0:t.kind)==="dock"?t.id:null,r=(t==null?void 0:t.kind)==="page",o=(t==null?void 0:t.kind)==="design"?t.id:null,l=(t==null?void 0:t.kind)==="notes"?t.id:null,a=(t==null?void 0:t.kind)==="document",h=j=>()=>n(k=>(k==null?void 0:k.kind)===j?null:k),c=j=>n(k=>j?{kind:"dock",id:j}:(k==null?void 0:k.kind)==="dock"?null:k),u=()=>n(j=>(j==null?void 0:j.kind)==="page"?null:{kind:"page"}),f=()=>n(j=>(j==null?void 0:j.kind)==="document"?null:{kind:"document"}),d=j=>n({kind:"design",id:j}),m=h("design"),$=j=>n({kind:"notes",id:j}),w=h("notes"),y=g.useMemo(()=>n$(),[]),x=g.useMemo(()=>NS(),[]),O=Kc({extensions:[...Kn(),y.extension,x,T5,H5,Y5],content:d1,editorProps:{attributes:{class:"doc-body"}}});return g.useEffect(()=>{Object.assign(window,{__editor:O,__propsOf:G5,__pmModel:{DOMParser:z5}})},[O]),g.useEffect(()=>{if(!(!mr().channel||!O))return Q$(O)},[O]),O?p.jsx(s$,{children:p.jsx(m1,{editor:O,slash:y,dock:s,setDock:c,drawer:r,toggleDrawer:u,designId:o,openDesign:d,closeDesign:m,notesPage:l,openNotes:$,closeNotes:w,documentPanel:a,toggleDocument:f,rail:i,setRail:e})}):null}function m1({editor:i,slash:e,dock:t,setDock:n,drawer:s,toggleDrawer:r,designId:o,openDesign:l,closeDesign:a,notesPage:h,openNotes:c,closeNotes:u,documentPanel:f,toggleDocument:d,rail:m,setRail:$}){const{pages:w,doc:y,current:x}=r$(i),[O,j]=g.useState(m),[k,v]=g.useState(null),b=mr().channel?()=>{G$(y.title).then(T=>{(T.error||T.missingImages.length||T.themeFallback)&&v(T)})}:void 0,[D,R]=g.useState(!1),[C,H]=g.useState(null);g.useEffect(()=>{i.setEditable(!C)},[i,C]);const E=g.useCallback(()=>H(null),[]),B=g.useRef(null);g.useEffect(()=>{var K;if(C||B.current===null)return;const T=(K=w[B.current])==null?void 0:K.id;if(B.current=null,!T)return;const Q=requestAnimationFrame(()=>za(i,T));return()=>cancelAnimationFrame(Q)},[C,w,i]);const _=o$(i,!C&&m),[q,ee]=g.useState(null),[ne,P]=g.useState(null),Z=T=>{setTimeout(()=>P({before:T}),0)};g.useEffect(()=>{if(m){j(!0);return}const T=setTimeout(()=>j(!1),p1);return()=>clearTimeout(T)},[m]),g.useEffect(()=>{const T=document.documentElement;T.dataset.format=y.format,T.dataset.align=y.align,T.dataset.theme=Q5(y.theme).theme.id,A5(T.dataset.theme),T.dataset.mode=y.mode,T.classList.toggle("dark",y.mode==="dark");const Q=B5({footer:y.footer,footerLogo:y.footerLogo,footerNumbers:y.footerNumbers});for(const[oe,je]of Object.entries(Q))T.style.setProperty(oe,je);const K=W5({footer:y.footer,footerLogo:y.footerLogo,footerLogoWide:y.footerLogoWide,footerNumbers:y.footerNumbers});T.toggleAttribute("data-footer-on","data-footer-on"in K),T.toggleAttribute("data-footer-wide","data-footer-wide"in K),T.toggleAttribute("data-page-numbers","data-page-numbers"in K)},[y.format,y.align,y.theme,y.mode,y.footer,y.footerLogo,y.footerLogoWide,y.footerNumbers]);const se=w.find(T=>T.id===x)??null,ue=Math.max(0,w.findIndex(T=>T.id===x));l$({editor:i,active:!C,at:ue,onPresent:H});const N=T=>{const Q=T===x;Q||za(i,T),(!s||Q)&&r()},M=T=>{h===T?u():c(T)};return p.jsxs(p.Fragment,{children:[!C&&p.jsx(a$,{editor:i,doc:y,onPresent:H,onExport:b,onDocument:d,onThemes:()=>R(!0),currentIndex:ue}),p.jsx(h$,{outcome:k,onOpenChange:T=>{T||v(null)}}),p.jsx(H$,{open:D,onOpenChange:R,current:y.theme,mode:y.mode,onPick:T=>i.commands.setDocument({theme:T})}),O&&!C&&p.jsx(c$,{editor:i,pages:w,current:x,viewing:_,closing:!m,onHide:()=>$(()=>!1),onTemplates:Z}),!m&&!C&&p.jsx(u$,{onShow:()=>$(()=>!0)}),p.jsx("div",{className:"doc df-doc","data-rail":m?void 0:"hidden","data-presenting":C?"true":void 0,children:p.jsx("div",{className:"df-present-stage",children:p.jsx(Jc,{editor:i})})}),C&&p.jsx(f$,{editor:i,pages:w,start:C,onExit:E,landing:B}),!C&&p.jsx(ZS,{editor:i,group:t,onGroup:n}),p.jsx(d$,{editor:i,doc:y,open:f&&!C,onClose:d}),p.jsx(p$,{editor:i,page:se,open:s&&!C,onClose:r,onFrameAccent:ee}),p.jsx(u1,{editor:i,pages:w,pageId:h,open:h!==null&&!C,onClose:u,onNavigate:c}),p.jsx(D$,{open:ne!==null,onOpenChange:T=>{T||P(null)},onPick:T=>Uc(i,()=>i.commands.applyTemplate(T,{before:ne==null?void 0:ne.before}))}),q?p.jsx(eu,{editor:i,blockId:q,itemId:q,open:!0,onOpenChange:T=>{T||ee(null)},frameSelector:".page-accent",onCommit:T=>{se&&i.commands.setAccent(se.id,{focusX:(T==null?void 0:T.focusX)??null,focusY:(T==null?void 0:T.focusY)??null,zoom:(T==null?void 0:T.zoom)??null})}}):null,p.jsx(s1,{editor:i,blockId:o,open:o!==null,onClose:a}),!C&&p.jsx(_S,{editor:i,drawer:s,onDrawer:N,onDesign:l,onTemplates:Z,notesPageId:h,onNotes:M}),!C&&p.jsx(t1,{editor:i}),p.jsx(i1,{slash:e}),!C&&p.jsx(f1,{editor:i,doc:y})]})}export{v1 as default};
|