diff --git a/public/dist/app.js b/public/dist/app.js index f94dd8cdf17..fdbd730f714 100644 --- a/public/dist/app.js +++ b/public/dist/app.js @@ -1,34 +1,34 @@ -var Nu=Object.create;var Se=Object.defineProperty;var zu=Object.getOwnPropertyDescriptor;var Hu=Object.getOwnPropertyNames;var Uu=Object.getPrototypeOf,ju=Object.prototype.hasOwnProperty;var Vu=(n,t,e)=>t in n?Se(n,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):n[t]=e;var Wu=(n,t)=>()=>(n&&(t=n(n=0)),t);var _=(n,t)=>()=>(t||n((t={exports:{}}).exports,t),t.exports),Ae=(n,t)=>{for(var e in t)Se(n,e,{get:t[e],enumerable:!0})},Go=(n,t,e,i)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Hu(t))!ju.call(n,r)&&r!==e&&Se(n,r,{get:()=>t[r],enumerable:!(i=zu(t,r))||i.enumerable});return n};var Ko=(n,t,e)=>(e=n!=null?Nu(Uu(n)):{},Go(t||!n||!n.__esModule?Se(e,"default",{value:n,enumerable:!0}):e,n)),Gu=n=>Go(Se({},"__esModule",{value:!0}),n);var at=(n,t,e)=>(Vu(n,typeof t!="symbol"?t+"":t,e),e),Ku=(n,t,e)=>{if(!t.has(n))throw TypeError("Cannot "+e)};var ot=(n,t,e)=>{if(t.has(n))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(n):t.set(n,e)};var L=(n,t,e)=>(Ku(n,t,"access private method"),e);var qs=_((Pb,Vh)=>{Vh.exports={Aacute:"\xC1",aacute:"\xE1",Abreve:"\u0102",abreve:"\u0103",ac:"\u223E",acd:"\u223F",acE:"\u223E\u0333",Acirc:"\xC2",acirc:"\xE2",acute:"\xB4",Acy:"\u0410",acy:"\u0430",AElig:"\xC6",aelig:"\xE6",af:"\u2061",Afr:"\u{1D504}",afr:"\u{1D51E}",Agrave:"\xC0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",Alpha:"\u0391",alpha:"\u03B1",Amacr:"\u0100",amacr:"\u0101",amalg:"\u2A3F",amp:"&",AMP:"&",andand:"\u2A55",And:"\u2A53",and:"\u2227",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angmsd:"\u2221",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",Aogon:"\u0104",aogon:"\u0105",Aopf:"\u{1D538}",aopf:"\u{1D552}",apacir:"\u2A6F",ap:"\u2248",apE:"\u2A70",ape:"\u224A",apid:"\u224B",apos:"'",ApplyFunction:"\u2061",approx:"\u2248",approxeq:"\u224A",Aring:"\xC5",aring:"\xE5",Ascr:"\u{1D49C}",ascr:"\u{1D4B6}",Assign:"\u2254",ast:"*",asymp:"\u2248",asympeq:"\u224D",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",Backslash:"\u2216",Barv:"\u2AE7",barvee:"\u22BD",barwed:"\u2305",Barwed:"\u2306",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",Bcy:"\u0411",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",Because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",Bernoullis:"\u212C",Beta:"\u0392",beta:"\u03B2",beth:"\u2136",between:"\u226C",Bfr:"\u{1D505}",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bNot:"\u2AED",bnot:"\u2310",Bopf:"\u{1D539}",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxbox:"\u29C9",boxdl:"\u2510",boxdL:"\u2555",boxDl:"\u2556",boxDL:"\u2557",boxdr:"\u250C",boxdR:"\u2552",boxDr:"\u2553",boxDR:"\u2554",boxh:"\u2500",boxH:"\u2550",boxhd:"\u252C",boxHd:"\u2564",boxhD:"\u2565",boxHD:"\u2566",boxhu:"\u2534",boxHu:"\u2567",boxhU:"\u2568",boxHU:"\u2569",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxul:"\u2518",boxuL:"\u255B",boxUl:"\u255C",boxUL:"\u255D",boxur:"\u2514",boxuR:"\u2558",boxUr:"\u2559",boxUR:"\u255A",boxv:"\u2502",boxV:"\u2551",boxvh:"\u253C",boxvH:"\u256A",boxVh:"\u256B",boxVH:"\u256C",boxvl:"\u2524",boxvL:"\u2561",boxVl:"\u2562",boxVL:"\u2563",boxvr:"\u251C",boxvR:"\u255E",boxVr:"\u255F",boxVR:"\u2560",bprime:"\u2035",breve:"\u02D8",Breve:"\u02D8",brvbar:"\xA6",bscr:"\u{1D4B7}",Bscr:"\u212C",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsolb:"\u29C5",bsol:"\\",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",Bumpeq:"\u224E",bumpeq:"\u224F",Cacute:"\u0106",cacute:"\u0107",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",cap:"\u2229",Cap:"\u22D2",capcup:"\u2A47",capdot:"\u2A40",CapitalDifferentialD:"\u2145",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",Cayleys:"\u212D",ccaps:"\u2A4D",Ccaron:"\u010C",ccaron:"\u010D",Ccedil:"\xC7",ccedil:"\xE7",Ccirc:"\u0108",ccirc:"\u0109",Cconint:"\u2230",ccups:"\u2A4C",ccupssm:"\u2A50",Cdot:"\u010A",cdot:"\u010B",cedil:"\xB8",Cedilla:"\xB8",cemptyv:"\u29B2",cent:"\xA2",centerdot:"\xB7",CenterDot:"\xB7",cfr:"\u{1D520}",Cfr:"\u212D",CHcy:"\u0427",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",Chi:"\u03A7",chi:"\u03C7",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",CircleDot:"\u2299",circledR:"\xAE",circledS:"\u24C8",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",cir:"\u25CB",cirE:"\u29C3",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",clubs:"\u2663",clubsuit:"\u2663",colon:":",Colon:"\u2237",Colone:"\u2A74",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",Congruent:"\u2261",conint:"\u222E",Conint:"\u222F",ContourIntegral:"\u222E",copf:"\u{1D554}",Copf:"\u2102",coprod:"\u2210",Coproduct:"\u2210",copy:"\xA9",COPY:"\xA9",copysr:"\u2117",CounterClockwiseContourIntegral:"\u2233",crarr:"\u21B5",cross:"\u2717",Cross:"\u2A2F",Cscr:"\u{1D49E}",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cupbrcap:"\u2A48",cupcap:"\u2A46",CupCap:"\u224D",cup:"\u222A",Cup:"\u22D3",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dagger:"\u2020",Dagger:"\u2021",daleth:"\u2138",darr:"\u2193",Darr:"\u21A1",dArr:"\u21D3",dash:"\u2010",Dashv:"\u2AE4",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",Dcaron:"\u010E",dcaron:"\u010F",Dcy:"\u0414",dcy:"\u0434",ddagger:"\u2021",ddarr:"\u21CA",DD:"\u2145",dd:"\u2146",DDotrahd:"\u2911",ddotseq:"\u2A77",deg:"\xB0",Del:"\u2207",Delta:"\u0394",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",Dfr:"\u{1D507}",dfr:"\u{1D521}",dHar:"\u2965",dharl:"\u21C3",dharr:"\u21C2",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",diam:"\u22C4",diamond:"\u22C4",Diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",DifferentialD:"\u2146",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",DJcy:"\u0402",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",Dopf:"\u{1D53B}",dopf:"\u{1D555}",Dot:"\xA8",dot:"\u02D9",DotDot:"\u20DC",doteq:"\u2250",doteqdot:"\u2251",DotEqual:"\u2250",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrowBar:"\u2913",downarrow:"\u2193",DownArrow:"\u2193",Downarrow:"\u21D3",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVectorBar:"\u2956",DownLeftVector:"\u21BD",DownRightTeeVector:"\u295F",DownRightVectorBar:"\u2957",DownRightVector:"\u21C1",DownTeeArrow:"\u21A7",DownTee:"\u22A4",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",Dscr:"\u{1D49F}",dscr:"\u{1D4B9}",DScy:"\u0405",dscy:"\u0455",dsol:"\u29F6",Dstrok:"\u0110",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",DZcy:"\u040F",dzcy:"\u045F",dzigrarr:"\u27FF",Eacute:"\xC9",eacute:"\xE9",easter:"\u2A6E",Ecaron:"\u011A",ecaron:"\u011B",Ecirc:"\xCA",ecirc:"\xEA",ecir:"\u2256",ecolon:"\u2255",Ecy:"\u042D",ecy:"\u044D",eDDot:"\u2A77",Edot:"\u0116",edot:"\u0117",eDot:"\u2251",ee:"\u2147",efDot:"\u2252",Efr:"\u{1D508}",efr:"\u{1D522}",eg:"\u2A9A",Egrave:"\xC8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",Element:"\u2208",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",Emacr:"\u0112",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",EmptySmallSquare:"\u25FB",emptyv:"\u2205",EmptyVerySmallSquare:"\u25AB",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",ENG:"\u014A",eng:"\u014B",ensp:"\u2002",Eogon:"\u0118",eogon:"\u0119",Eopf:"\u{1D53C}",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",Epsilon:"\u0395",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",Equal:"\u2A75",equals:"=",EqualTilde:"\u2242",equest:"\u225F",Equilibrium:"\u21CC",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erarr:"\u2971",erDot:"\u2253",escr:"\u212F",Escr:"\u2130",esdot:"\u2250",Esim:"\u2A73",esim:"\u2242",Eta:"\u0397",eta:"\u03B7",ETH:"\xD0",eth:"\xF0",Euml:"\xCB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",Exists:"\u2203",expectation:"\u2130",exponentiale:"\u2147",ExponentialE:"\u2147",fallingdotseq:"\u2252",Fcy:"\u0424",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",Ffr:"\u{1D509}",ffr:"\u{1D523}",filig:"\uFB01",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",Fopf:"\u{1D53D}",fopf:"\u{1D557}",forall:"\u2200",ForAll:"\u2200",fork:"\u22D4",forkv:"\u2AD9",Fouriertrf:"\u2131",fpartint:"\u2A0D",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",Fscr:"\u2131",gacute:"\u01F5",Gamma:"\u0393",gamma:"\u03B3",Gammad:"\u03DC",gammad:"\u03DD",gap:"\u2A86",Gbreve:"\u011E",gbreve:"\u011F",Gcedil:"\u0122",Gcirc:"\u011C",gcirc:"\u011D",Gcy:"\u0413",gcy:"\u0433",Gdot:"\u0120",gdot:"\u0121",ge:"\u2265",gE:"\u2267",gEl:"\u2A8C",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",gescc:"\u2AA9",ges:"\u2A7E",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",Gfr:"\u{1D50A}",gfr:"\u{1D524}",gg:"\u226B",Gg:"\u22D9",ggg:"\u22D9",gimel:"\u2137",GJcy:"\u0403",gjcy:"\u0453",gla:"\u2AA5",gl:"\u2277",glE:"\u2A92",glj:"\u2AA4",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gnE:"\u2269",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",Gopf:"\u{1D53E}",gopf:"\u{1D558}",grave:"`",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",gtcc:"\u2AA7",gtcir:"\u2A7A",gt:">",GT:">",Gt:"\u226B",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",Hacek:"\u02C7",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",HARDcy:"\u042A",hardcy:"\u044A",harrcir:"\u2948",harr:"\u2194",hArr:"\u21D4",harrw:"\u21AD",Hat:"^",hbar:"\u210F",Hcirc:"\u0124",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",Hfr:"\u210C",HilbertSpace:"\u210B",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",Hopf:"\u210D",horbar:"\u2015",HorizontalLine:"\u2500",hscr:"\u{1D4BD}",Hscr:"\u210B",hslash:"\u210F",Hstrok:"\u0126",hstrok:"\u0127",HumpDownHump:"\u224E",HumpEqual:"\u224F",hybull:"\u2043",hyphen:"\u2010",Iacute:"\xCD",iacute:"\xED",ic:"\u2063",Icirc:"\xCE",icirc:"\xEE",Icy:"\u0418",icy:"\u0438",Idot:"\u0130",IEcy:"\u0415",iecy:"\u0435",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",Ifr:"\u2111",Igrave:"\xCC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",IJlig:"\u0132",ijlig:"\u0133",Imacr:"\u012A",imacr:"\u012B",image:"\u2111",ImaginaryI:"\u2148",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",Im:"\u2111",imof:"\u22B7",imped:"\u01B5",Implies:"\u21D2",incare:"\u2105",in:"\u2208",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",intcal:"\u22BA",int:"\u222B",Int:"\u222C",integers:"\u2124",Integral:"\u222B",intercal:"\u22BA",Intersection:"\u22C2",intlarhk:"\u2A17",intprod:"\u2A3C",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",IOcy:"\u0401",iocy:"\u0451",Iogon:"\u012E",iogon:"\u012F",Iopf:"\u{1D540}",iopf:"\u{1D55A}",Iota:"\u0399",iota:"\u03B9",iprod:"\u2A3C",iquest:"\xBF",iscr:"\u{1D4BE}",Iscr:"\u2110",isin:"\u2208",isindot:"\u22F5",isinE:"\u22F9",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",Itilde:"\u0128",itilde:"\u0129",Iukcy:"\u0406",iukcy:"\u0456",Iuml:"\xCF",iuml:"\xEF",Jcirc:"\u0134",jcirc:"\u0135",Jcy:"\u0419",jcy:"\u0439",Jfr:"\u{1D50D}",jfr:"\u{1D527}",jmath:"\u0237",Jopf:"\u{1D541}",jopf:"\u{1D55B}",Jscr:"\u{1D4A5}",jscr:"\u{1D4BF}",Jsercy:"\u0408",jsercy:"\u0458",Jukcy:"\u0404",jukcy:"\u0454",Kappa:"\u039A",kappa:"\u03BA",kappav:"\u03F0",Kcedil:"\u0136",kcedil:"\u0137",Kcy:"\u041A",kcy:"\u043A",Kfr:"\u{1D50E}",kfr:"\u{1D528}",kgreen:"\u0138",KHcy:"\u0425",khcy:"\u0445",KJcy:"\u040C",kjcy:"\u045C",Kopf:"\u{1D542}",kopf:"\u{1D55C}",Kscr:"\u{1D4A6}",kscr:"\u{1D4C0}",lAarr:"\u21DA",Lacute:"\u0139",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",Lambda:"\u039B",lambda:"\u03BB",lang:"\u27E8",Lang:"\u27EA",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",Laplacetrf:"\u2112",laquo:"\xAB",larrb:"\u21E4",larrbfs:"\u291F",larr:"\u2190",Larr:"\u219E",lArr:"\u21D0",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",latail:"\u2919",lAtail:"\u291B",lat:"\u2AAB",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lBarr:"\u290E",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",Lcaron:"\u013D",lcaron:"\u013E",Lcedil:"\u013B",lcedil:"\u013C",lceil:"\u2308",lcub:"{",Lcy:"\u041B",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",lE:"\u2266",LeftAngleBracket:"\u27E8",LeftArrowBar:"\u21E4",leftarrow:"\u2190",LeftArrow:"\u2190",Leftarrow:"\u21D0",LeftArrowRightArrow:"\u21C6",leftarrowtail:"\u21A2",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVectorBar:"\u2959",LeftDownVector:"\u21C3",LeftFloor:"\u230A",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",LeftRightArrow:"\u2194",Leftrightarrow:"\u21D4",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",LeftRightVector:"\u294E",LeftTeeArrow:"\u21A4",LeftTee:"\u22A3",LeftTeeVector:"\u295A",leftthreetimes:"\u22CB",LeftTriangleBar:"\u29CF",LeftTriangle:"\u22B2",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVectorBar:"\u2958",LeftUpVector:"\u21BF",LeftVectorBar:"\u2952",LeftVector:"\u21BC",lEg:"\u2A8B",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",lescc:"\u2AA8",les:"\u2A7D",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",lessgtr:"\u2276",LessLess:"\u2AA1",lesssim:"\u2272",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",lfisht:"\u297C",lfloor:"\u230A",Lfr:"\u{1D50F}",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lHar:"\u2962",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",LJcy:"\u0409",ljcy:"\u0459",llarr:"\u21C7",ll:"\u226A",Ll:"\u22D8",llcorner:"\u231E",Lleftarrow:"\u21DA",llhard:"\u296B",lltri:"\u25FA",Lmidot:"\u013F",lmidot:"\u0140",lmoustache:"\u23B0",lmoust:"\u23B0",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lnE:"\u2268",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",LongLeftArrow:"\u27F5",Longleftarrow:"\u27F8",longleftrightarrow:"\u27F7",LongLeftRightArrow:"\u27F7",Longleftrightarrow:"\u27FA",longmapsto:"\u27FC",longrightarrow:"\u27F6",LongRightArrow:"\u27F6",Longrightarrow:"\u27F9",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",Lopf:"\u{1D543}",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",Lscr:"\u2112",lsh:"\u21B0",Lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",Lstrok:"\u0141",lstrok:"\u0142",ltcc:"\u2AA6",ltcir:"\u2A79",lt:"<",LT:"<",Lt:"\u226A",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",ltrPar:"\u2996",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",Map:"\u2905",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",Mcy:"\u041C",mcy:"\u043C",mdash:"\u2014",mDDot:"\u223A",measuredangle:"\u2221",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",mfr:"\u{1D52A}",mho:"\u2127",micro:"\xB5",midast:"*",midcir:"\u2AF0",mid:"\u2223",middot:"\xB7",minusb:"\u229F",minus:"\u2212",minusd:"\u2238",minusdu:"\u2A2A",MinusPlus:"\u2213",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",Mopf:"\u{1D544}",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",Mscr:"\u2133",mstpos:"\u223E",Mu:"\u039C",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nabla:"\u2207",Nacute:"\u0143",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natural:"\u266E",naturals:"\u2115",natur:"\u266E",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",Ncy:"\u041D",ncy:"\u043D",ndash:"\u2013",nearhk:"\u2924",nearr:"\u2197",neArr:"\u21D7",nearrow:"\u2197",ne:"\u2260",nedot:"\u2250\u0338",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` -`,nexist:"\u2204",nexists:"\u2204",Nfr:"\u{1D511}",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",nGg:"\u22D9\u0338",ngsim:"\u2275",nGt:"\u226B\u20D2",ngt:"\u226F",ngtr:"\u226F",nGtv:"\u226B\u0338",nharr:"\u21AE",nhArr:"\u21CE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",NJcy:"\u040A",njcy:"\u045A",nlarr:"\u219A",nlArr:"\u21CD",nldr:"\u2025",nlE:"\u2266\u0338",nle:"\u2270",nleftarrow:"\u219A",nLeftarrow:"\u21CD",nleftrightarrow:"\u21AE",nLeftrightarrow:"\u21CE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nLl:"\u22D8\u0338",nlsim:"\u2274",nLt:"\u226A\u20D2",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nLtv:"\u226A\u0338",nmid:"\u2224",NoBreak:"\u2060",NonBreakingSpace:"\xA0",nopf:"\u{1D55F}",Nopf:"\u2115",Not:"\u2AEC",not:"\xAC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",notin:"\u2209",notindot:"\u22F5\u0338",notinE:"\u22F9\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangle:"\u22EB",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",nparallel:"\u2226",npar:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",nprec:"\u2280",npreceq:"\u2AAF\u0338",npre:"\u2AAF\u0338",nrarrc:"\u2933\u0338",nrarr:"\u219B",nrArr:"\u21CF",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nRightarrow:"\u21CF",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",Nscr:"\u{1D4A9}",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",Ntilde:"\xD1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",Nu:"\u039D",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvDash:"\u22AD",nVdash:"\u22AE",nVDash:"\u22AF",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvHarr:"\u2904",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwarhk:"\u2923",nwarr:"\u2196",nwArr:"\u21D6",nwarrow:"\u2196",nwnear:"\u2927",Oacute:"\xD3",oacute:"\xF3",oast:"\u229B",Ocirc:"\xD4",ocirc:"\xF4",ocir:"\u229A",Ocy:"\u041E",ocy:"\u043E",odash:"\u229D",Odblac:"\u0150",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",OElig:"\u0152",oelig:"\u0153",ofcir:"\u29BF",Ofr:"\u{1D512}",ofr:"\u{1D52C}",ogon:"\u02DB",Ograve:"\xD2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",Omacr:"\u014C",omacr:"\u014D",Omega:"\u03A9",omega:"\u03C9",Omicron:"\u039F",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",Oopf:"\u{1D546}",oopf:"\u{1D560}",opar:"\u29B7",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",operp:"\u29B9",oplus:"\u2295",orarr:"\u21BB",Or:"\u2A54",or:"\u2228",ord:"\u2A5D",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oS:"\u24C8",Oscr:"\u{1D4AA}",oscr:"\u2134",Oslash:"\xD8",oslash:"\xF8",osol:"\u2298",Otilde:"\xD5",otilde:"\xF5",otimesas:"\u2A36",Otimes:"\u2A37",otimes:"\u2297",Ouml:"\xD6",ouml:"\xF6",ovbar:"\u233D",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",para:"\xB6",parallel:"\u2225",par:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",PartialD:"\u2202",Pcy:"\u041F",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",Pfr:"\u{1D513}",pfr:"\u{1D52D}",Phi:"\u03A6",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",Pi:"\u03A0",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plus:"+",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",PlusMinus:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",Poincareplane:"\u210C",pointint:"\u2A15",popf:"\u{1D561}",Popf:"\u2119",pound:"\xA3",prap:"\u2AB7",Pr:"\u2ABB",pr:"\u227A",prcue:"\u227C",precapprox:"\u2AB7",prec:"\u227A",preccurlyeq:"\u227C",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",pre:"\u2AAF",prE:"\u2AB3",precsim:"\u227E",prime:"\u2032",Prime:"\u2033",primes:"\u2119",prnap:"\u2AB9",prnE:"\u2AB5",prnsim:"\u22E8",prod:"\u220F",Product:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",Proportional:"\u221D",Proportion:"\u2237",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",Pscr:"\u{1D4AB}",pscr:"\u{1D4C5}",Psi:"\u03A8",psi:"\u03C8",puncsp:"\u2008",Qfr:"\u{1D514}",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",Qopf:"\u211A",qprime:"\u2057",Qscr:"\u{1D4AC}",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quot:'"',QUOT:'"',rAarr:"\u21DB",race:"\u223D\u0331",Racute:"\u0154",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",Rang:"\u27EB",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raquo:"\xBB",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarr:"\u2192",Rarr:"\u21A0",rArr:"\u21D2",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",Rarrtl:"\u2916",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",rAtail:"\u291C",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rBarr:"\u290F",RBarr:"\u2910",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",rceil:"\u2309",rcub:"}",Rcy:"\u0420",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",Re:"\u211C",rect:"\u25AD",reg:"\xAE",REG:"\xAE",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",Rfr:"\u211C",rHar:"\u2964",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",Rho:"\u03A1",rho:"\u03C1",rhov:"\u03F1",RightAngleBracket:"\u27E9",RightArrowBar:"\u21E5",rightarrow:"\u2192",RightArrow:"\u2192",Rightarrow:"\u21D2",RightArrowLeftArrow:"\u21C4",rightarrowtail:"\u21A3",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVectorBar:"\u2955",RightDownVector:"\u21C2",RightFloor:"\u230B",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",RightTeeArrow:"\u21A6",RightTee:"\u22A2",RightTeeVector:"\u295B",rightthreetimes:"\u22CC",RightTriangleBar:"\u29D0",RightTriangle:"\u22B3",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVectorBar:"\u2954",RightUpVector:"\u21BE",RightVectorBar:"\u2953",RightVector:"\u21C0",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoustache:"\u23B1",rmoust:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",Ropf:"\u211D",roplus:"\u2A2E",rotimes:"\u2A35",RoundImplies:"\u2970",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",Rrightarrow:"\u21DB",rsaquo:"\u203A",rscr:"\u{1D4C7}",Rscr:"\u211B",rsh:"\u21B1",Rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",RuleDelayed:"\u29F4",ruluhar:"\u2968",rx:"\u211E",Sacute:"\u015A",sacute:"\u015B",sbquo:"\u201A",scap:"\u2AB8",Scaron:"\u0160",scaron:"\u0161",Sc:"\u2ABC",sc:"\u227B",sccue:"\u227D",sce:"\u2AB0",scE:"\u2AB4",Scedil:"\u015E",scedil:"\u015F",Scirc:"\u015C",scirc:"\u015D",scnap:"\u2ABA",scnE:"\u2AB6",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",Scy:"\u0421",scy:"\u0441",sdotb:"\u22A1",sdot:"\u22C5",sdote:"\u2A66",searhk:"\u2925",searr:"\u2198",seArr:"\u21D8",searrow:"\u2198",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",Sfr:"\u{1D516}",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",SHCHcy:"\u0429",shchcy:"\u0449",SHcy:"\u0428",shcy:"\u0448",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",shortmid:"\u2223",shortparallel:"\u2225",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",shy:"\xAD",Sigma:"\u03A3",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",SmallCircle:"\u2218",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",SOFTcy:"\u042C",softcy:"\u044C",solbar:"\u233F",solb:"\u29C4",sol:"/",Sopf:"\u{1D54A}",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",Sqrt:"\u221A",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",square:"\u25A1",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",squarf:"\u25AA",squ:"\u25A1",squf:"\u25AA",srarr:"\u2192",Sscr:"\u{1D4AE}",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",Star:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",Sub:"\u22D0",subdot:"\u2ABD",subE:"\u2AC5",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",Subset:"\u22D0",subseteq:"\u2286",subseteqq:"\u2AC5",SubsetEqual:"\u2286",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succapprox:"\u2AB8",succ:"\u227B",succcurlyeq:"\u227D",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",SuchThat:"\u220B",sum:"\u2211",Sum:"\u2211",sung:"\u266A",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",sup:"\u2283",Sup:"\u22D1",supdot:"\u2ABE",supdsub:"\u2AD8",supE:"\u2AC6",supe:"\u2287",supedot:"\u2AC4",Superset:"\u2283",SupersetEqual:"\u2287",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",Supset:"\u22D1",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swarhk:"\u2926",swarr:"\u2199",swArr:"\u21D9",swarrow:"\u2199",swnwar:"\u292A",szlig:"\xDF",Tab:" ",target:"\u2316",Tau:"\u03A4",tau:"\u03C4",tbrk:"\u23B4",Tcaron:"\u0164",tcaron:"\u0165",Tcedil:"\u0162",tcedil:"\u0163",Tcy:"\u0422",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",Tfr:"\u{1D517}",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",Therefore:"\u2234",Theta:"\u0398",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",THORN:"\xDE",thorn:"\xFE",tilde:"\u02DC",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",timesbar:"\u2A31",timesb:"\u22A0",times:"\xD7",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",topbot:"\u2336",topcir:"\u2AF1",top:"\u22A4",Topf:"\u{1D54B}",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",TRADE:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",TripleDot:"\u20DB",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",Tscr:"\u{1D4AF}",tscr:"\u{1D4C9}",TScy:"\u0426",tscy:"\u0446",TSHcy:"\u040B",tshcy:"\u045B",Tstrok:"\u0166",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",Uacute:"\xDA",uacute:"\xFA",uarr:"\u2191",Uarr:"\u219F",uArr:"\u21D1",Uarrocir:"\u2949",Ubrcy:"\u040E",ubrcy:"\u045E",Ubreve:"\u016C",ubreve:"\u016D",Ucirc:"\xDB",ucirc:"\xFB",Ucy:"\u0423",ucy:"\u0443",udarr:"\u21C5",Udblac:"\u0170",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",Ufr:"\u{1D518}",ufr:"\u{1D532}",Ugrave:"\xD9",ugrave:"\xF9",uHar:"\u2963",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",Umacr:"\u016A",umacr:"\u016B",uml:"\xA8",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",uogon:"\u0173",Uopf:"\u{1D54C}",uopf:"\u{1D566}",UpArrowBar:"\u2912",uparrow:"\u2191",UpArrow:"\u2191",Uparrow:"\u21D1",UpArrowDownArrow:"\u21C5",updownarrow:"\u2195",UpDownArrow:"\u2195",Updownarrow:"\u21D5",UpEquilibrium:"\u296E",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",upsi:"\u03C5",Upsi:"\u03D2",upsih:"\u03D2",Upsilon:"\u03A5",upsilon:"\u03C5",UpTeeArrow:"\u21A5",UpTee:"\u22A5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",Uring:"\u016E",uring:"\u016F",urtri:"\u25F9",Uscr:"\u{1D4B0}",uscr:"\u{1D4CA}",utdot:"\u22F0",Utilde:"\u0168",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",Uuml:"\xDC",uuml:"\xFC",uwangle:"\u29A7",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",vArr:"\u21D5",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vBar:"\u2AE8",Vbar:"\u2AEB",vBarv:"\u2AE9",Vcy:"\u0412",vcy:"\u0432",vdash:"\u22A2",vDash:"\u22A8",Vdash:"\u22A9",VDash:"\u22AB",Vdashl:"\u2AE6",veebar:"\u22BB",vee:"\u2228",Vee:"\u22C1",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",Verbar:"\u2016",vert:"|",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",Vopf:"\u{1D54D}",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",Vscr:"\u{1D4B1}",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",Vvdash:"\u22AA",vzigzag:"\u299A",Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",Wedge:"\u22C0",wedgeq:"\u2259",weierp:"\u2118",Wfr:"\u{1D51A}",wfr:"\u{1D534}",Wopf:"\u{1D54E}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",Wscr:"\u{1D4B2}",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",Xfr:"\u{1D51B}",xfr:"\u{1D535}",xharr:"\u27F7",xhArr:"\u27FA",Xi:"\u039E",xi:"\u03BE",xlarr:"\u27F5",xlArr:"\u27F8",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",Xopf:"\u{1D54F}",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrarr:"\u27F6",xrArr:"\u27F9",Xscr:"\u{1D4B3}",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",Yacute:"\xDD",yacute:"\xFD",YAcy:"\u042F",yacy:"\u044F",Ycirc:"\u0176",ycirc:"\u0177",Ycy:"\u042B",ycy:"\u044B",yen:"\xA5",Yfr:"\u{1D51C}",yfr:"\u{1D536}",YIcy:"\u0407",yicy:"\u0457",Yopf:"\u{1D550}",yopf:"\u{1D56A}",Yscr:"\u{1D4B4}",yscr:"\u{1D4CE}",YUcy:"\u042E",yucy:"\u044E",yuml:"\xFF",Yuml:"\u0178",Zacute:"\u0179",zacute:"\u017A",Zcaron:"\u017D",zcaron:"\u017E",Zcy:"\u0417",zcy:"\u0437",Zdot:"\u017B",zdot:"\u017C",zeetrf:"\u2128",ZeroWidthSpace:"\u200B",Zeta:"\u0396",zeta:"\u03B6",zfr:"\u{1D537}",Zfr:"\u2128",ZHcy:"\u0416",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",Zopf:"\u2124",Zscr:"\u{1D4B5}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"}});var Kr=_((Ob,Bs)=>{"use strict";Bs.exports=qs()});var si=_((Rb,Ps)=>{Ps.exports=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4E\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDF55-\uDF59]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDF3C-\uDF3E]|\uD806[\uDC3B\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/});var Ns=_((Nb,Rs)=>{"use strict";var Os={};function Wh(n){var t,e,i=Os[n];if(i)return i;for(i=Os[n]=[],t=0;t<128;t++)e=String.fromCharCode(t),/^[0-9a-z]$/i.test(e)?i.push(e):i.push("%"+("0"+t.toString(16).toUpperCase()).slice(-2));for(t=0;t"u"&&(e=!0),a=Wh(t),i=0,r=n.length;i=55296&&o<=57343){if(o>=55296&&o<=56319&&i+1=56320&&s<=57343)){l+=encodeURIComponent(n[i]+n[i+1]),i++;continue}l+="%EF%BF%BD";continue}l+=encodeURIComponent(n[i])}return l}ai.defaultChars=";/?:@&=+$,-_.!~*'()#";ai.componentChars="-_.!~*'()";Rs.exports=ai});var Us=_((zb,Hs)=>{"use strict";var zs={};function Gh(n){var t,e,i=zs[n];if(i)return i;for(i=zs[n]=[],t=0;t<128;t++)e=String.fromCharCode(t),i.push(e);for(t=0;t=55296&&u<=57343?h+="\uFFFD\uFFFD\uFFFD":h+=String.fromCharCode(u),r+=6;continue}if((s&248)===240&&r+91114111?h+="\uFFFD\uFFFD\uFFFD\uFFFD":(u-=65536,h+=String.fromCharCode(55296+(u>>10),56320+(u&1023))),r+=9;continue}h+="\uFFFD"}return h})}li.defaultChars=";/?:@&=+$,#";li.componentChars="";Hs.exports=li});var Vs=_((Hb,js)=>{"use strict";js.exports=function(t){var e="";return e+=t.protocol||"",e+=t.slashes?"//":"",e+=t.auth?t.auth+"@":"",t.hostname&&t.hostname.indexOf(":")!==-1?e+="["+t.hostname+"]":e+=t.hostname||"",e+=t.port?":"+t.port:"",e+=t.pathname||"",e+=t.search||"",e+=t.hash||"",e}});var Js=_((Ub,Ys)=>{"use strict";function ci(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}var Kh=/^([a-z0-9.+-]+:)/i,Zh=/:[0-9]*$/,Xh=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,Yh=["<",">",'"',"`"," ","\r",` -`," "],Jh=["{","}","|","\\","^","`"].concat(Yh),Qh=["'"].concat(Jh),Ws=["%","/","?",";","#"].concat(Qh),Gs=["/","?","#"],td=255,Ks=/^[+a-z0-9A-Z_-]{0,63}$/,ed=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,Zs={javascript:!0,"javascript:":!0},Xs={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};function nd(n,t){if(n&&n instanceof ci)return n;var e=new ci;return e.parse(n,t),e}ci.prototype.parse=function(n,t){var e,i,r,o,s,a=n;if(a=a.trim(),!t&&n.split("#").length===1){var l=Xh.exec(a);if(l)return this.pathname=l[1],l[2]&&(this.search=l[2]),this}var c=Kh.exec(a);if(c&&(c=c[0],r=c.toLowerCase(),this.protocol=c,a=a.substr(c.length)),(t||c||a.match(/^\/\/[^@\/]+@[^@\/]+/))&&(s=a.substr(0,2)==="//",s&&!(c&&Zs[c])&&(a=a.substr(2),this.slashes=!0)),!Zs[c]&&(s||c&&!Xs[c])){var u=-1;for(e=0;e127?v+="x":v+=w[b];if(!v.match(Ks)){var x=m.slice(0,e),E=m.slice(e+1),y=w.match(ed);y&&(x.push(y[1]),E.unshift(y[2])),E.length&&(a=E.join(".")+a),this.hostname=x.join(".");break}}}}this.hostname.length>td&&(this.hostname=""),p&&(this.hostname=this.hostname.substr(1,this.hostname.length-2))}var A=a.indexOf("#");A!==-1&&(this.hash=a.substr(A),a=a.slice(0,A));var D=a.indexOf("?");return D!==-1&&(this.search=a.substr(D),a=a.slice(0,D)),a&&(this.pathname=a),Xs[r]&&this.hostname&&!this.pathname&&(this.pathname=""),this};ci.prototype.parseHost=function(n){var t=Zh.exec(n);t&&(t=t[0],t!==":"&&(this.port=t.substr(1)),n=n.substr(0,n.length-t.length)),n&&(this.hostname=n)};Ys.exports=nd});var Zr=_((jb,Ze)=>{"use strict";Ze.exports.encode=Ns();Ze.exports.decode=Us();Ze.exports.format=Vs();Ze.exports.parse=Js()});var Xr=_((Vb,Qs)=>{Qs.exports=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/});var Yr=_((Wb,ta)=>{ta.exports=/[\0-\x1F\x7F-\x9F]/});var na=_((Gb,ea)=>{ea.exports=/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/});var Jr=_((Kb,ia)=>{ia.exports=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/});var ra=_(ge=>{"use strict";ge.Any=Xr();ge.Cc=Yr();ge.Cf=na();ge.P=si();ge.Z=Jr()});var N=_(Q=>{"use strict";function id(n){return Object.prototype.toString.call(n)}function rd(n){return id(n)==="[object String]"}var od=Object.prototype.hasOwnProperty;function sa(n,t){return od.call(n,t)}function sd(n){var t=Array.prototype.slice.call(arguments,1);return t.forEach(function(e){if(e){if(typeof e!="object")throw new TypeError(e+"must be object");Object.keys(e).forEach(function(i){n[i]=e[i]})}}),n}function ad(n,t,e){return[].concat(n.slice(0,t),e,n.slice(t+1))}function aa(n){return!(n>=55296&&n<=57343||n>=64976&&n<=65007||(n&65535)===65535||(n&65535)===65534||n>=0&&n<=8||n===11||n>=14&&n<=31||n>=127&&n<=159||n>1114111)}function la(n){if(n>65535){n-=65536;var t=55296+(n>>10),e=56320+(n&1023);return String.fromCharCode(t,e)}return String.fromCharCode(n)}var ca=/\\([!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~])/g,ld=/&([a-z#][a-z0-9]{1,31});/gi,cd=new RegExp(ca.source+"|"+ld.source,"gi"),ud=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i,oa=Kr();function hd(n,t){var e;return sa(oa,t)?oa[t]:t.charCodeAt(0)===35&&ud.test(t)&&(e=t[1].toLowerCase()==="x"?parseInt(t.slice(2),16):parseInt(t.slice(1),10),aa(e))?la(e):n}function dd(n){return n.indexOf("\\")<0?n:n.replace(ca,"$1")}function pd(n){return n.indexOf("\\")<0&&n.indexOf("&")<0?n:n.replace(cd,function(t,e,i){return e||hd(t,i)})}var fd=/[&<>"]/,md=/[&<>"]/g,gd={"&":"&","<":"<",">":">",'"':"""};function bd(n){return gd[n]}function vd(n){return fd.test(n)?n.replace(md,bd):n}var wd=/[.?*+^$[\]\\(){}|-]/g;function yd(n){return n.replace(wd,"\\$&")}function xd(n){switch(n){case 9:case 32:return!0}return!1}function kd(n){if(n>=8192&&n<=8202)return!0;switch(n){case 9:case 10:case 11:case 12:case 13:case 32:case 160:case 5760:case 8239:case 8287:case 12288:return!0}return!1}var Cd=si();function Ed(n){return Cd.test(n)}function _d(n){switch(n){case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 124:case 125:case 126:return!0;default:return!1}}function Sd(n){return n=n.trim().replace(/\s+/g," "),"\u1E9E".toLowerCase()==="\u1E7E"&&(n=n.replace(/ẞ/g,"\xDF")),n.toLowerCase().toUpperCase()}Q.lib={};Q.lib.mdurl=Zr();Q.lib.ucmicro=ra();Q.assign=sd;Q.isString=rd;Q.has=sa;Q.unescapeMd=dd;Q.unescapeAll=pd;Q.isValidEntityCode=aa;Q.fromCodePoint=la;Q.escapeHtml=vd;Q.arrayReplaceAt=ad;Q.isSpace=xd;Q.isWhiteSpace=kd;Q.isMdAsciiPunct=_d;Q.isPunctChar=Ed;Q.escapeRE=yd;Q.normalizeReference=Sd});var ha=_((Yb,ua)=>{"use strict";ua.exports=function(t,e,i){var r,o,s,a,l=-1,c=t.posMax,u=t.pos;for(t.pos=e+1,r=1;t.pos{"use strict";var da=N().unescapeAll;pa.exports=function(t,e,i){var r,o,s=e,a={ok:!1,pos:0,lines:0,str:""};if(t.charCodeAt(s)===60){for(s++;s32))return a;if(r===41){if(o===0)break;o--}s++}return e===s||o!==0||(a.str=da(t.slice(e,s)),a.pos=s,a.ok=!0),a}});var ga=_((Qb,ma)=>{"use strict";var Ad=N().unescapeAll;ma.exports=function(t,e,i){var r,o,s=0,a=e,l={ok:!1,pos:0,lines:0,str:""};if(a>=i||(o=t.charCodeAt(a),o!==34&&o!==39&&o!==40))return l;for(a++,o===40&&(o=41);a{"use strict";ui.parseLinkLabel=ha();ui.parseLinkDestination=fa();ui.parseLinkTitle=ga()});var wa=_((ev,va)=>{"use strict";var Dd=N().assign,Ld=N().unescapeAll,Jt=N().escapeHtml,Dt={};Dt.code_inline=function(n,t,e,i,r){var o=n[t];return""+Jt(o.content)+""};Dt.code_block=function(n,t,e,i,r){var o=n[t];return""+Jt(n[t].content)+` -`};Dt.fence=function(n,t,e,i,r){var o=n[t],s=o.info?Ld(o.info).trim():"",a="",l="",c,u,h,d,f;return s&&(h=s.split(/(\s+)/g),a=h[0],l=h.slice(2).join("")),e.highlight?c=e.highlight(o.content,a,l)||Jt(o.content):c=Jt(o.content),c.indexOf("t in i?Se(i,t,{enumerable:!0,configurable:!0,writable:!0,value:e}):i[t]=e;var Wu=(i,t)=>()=>(i&&(t=i(i=0)),t);var _=(i,t)=>()=>(t||i((t={exports:{}}).exports,t),t.exports),Ae=(i,t)=>{for(var e in t)Se(i,e,{get:t[e],enumerable:!0})},Ko=(i,t,e,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let r of Hu(t))!ju.call(i,r)&&r!==e&&Se(i,r,{get:()=>t[r],enumerable:!(n=zu(t,r))||n.enumerable});return i};var Zo=(i,t,e)=>(e=i!=null?Nu(Uu(i)):{},Ko(t||!i||!i.__esModule?Se(e,"default",{value:i,enumerable:!0}):e,i)),Gu=i=>Ko(Se({},"__esModule",{value:!0}),i);var at=(i,t,e)=>(Vu(i,typeof t!="symbol"?t+"":t,e),e),Ku=(i,t,e)=>{if(!t.has(i))throw TypeError("Cannot "+e)};var ot=(i,t,e)=>{if(t.has(i))throw TypeError("Cannot add the same private member more than once");t instanceof WeakSet?t.add(i):t.set(i,e)};var L=(i,t,e)=>(Ku(i,t,"access private method"),e);var Bs=_((Ob,Vh)=>{Vh.exports={Aacute:"\xC1",aacute:"\xE1",Abreve:"\u0102",abreve:"\u0103",ac:"\u223E",acd:"\u223F",acE:"\u223E\u0333",Acirc:"\xC2",acirc:"\xE2",acute:"\xB4",Acy:"\u0410",acy:"\u0430",AElig:"\xC6",aelig:"\xE6",af:"\u2061",Afr:"\u{1D504}",afr:"\u{1D51E}",Agrave:"\xC0",agrave:"\xE0",alefsym:"\u2135",aleph:"\u2135",Alpha:"\u0391",alpha:"\u03B1",Amacr:"\u0100",amacr:"\u0101",amalg:"\u2A3F",amp:"&",AMP:"&",andand:"\u2A55",And:"\u2A53",and:"\u2227",andd:"\u2A5C",andslope:"\u2A58",andv:"\u2A5A",ang:"\u2220",ange:"\u29A4",angle:"\u2220",angmsdaa:"\u29A8",angmsdab:"\u29A9",angmsdac:"\u29AA",angmsdad:"\u29AB",angmsdae:"\u29AC",angmsdaf:"\u29AD",angmsdag:"\u29AE",angmsdah:"\u29AF",angmsd:"\u2221",angrt:"\u221F",angrtvb:"\u22BE",angrtvbd:"\u299D",angsph:"\u2222",angst:"\xC5",angzarr:"\u237C",Aogon:"\u0104",aogon:"\u0105",Aopf:"\u{1D538}",aopf:"\u{1D552}",apacir:"\u2A6F",ap:"\u2248",apE:"\u2A70",ape:"\u224A",apid:"\u224B",apos:"'",ApplyFunction:"\u2061",approx:"\u2248",approxeq:"\u224A",Aring:"\xC5",aring:"\xE5",Ascr:"\u{1D49C}",ascr:"\u{1D4B6}",Assign:"\u2254",ast:"*",asymp:"\u2248",asympeq:"\u224D",Atilde:"\xC3",atilde:"\xE3",Auml:"\xC4",auml:"\xE4",awconint:"\u2233",awint:"\u2A11",backcong:"\u224C",backepsilon:"\u03F6",backprime:"\u2035",backsim:"\u223D",backsimeq:"\u22CD",Backslash:"\u2216",Barv:"\u2AE7",barvee:"\u22BD",barwed:"\u2305",Barwed:"\u2306",barwedge:"\u2305",bbrk:"\u23B5",bbrktbrk:"\u23B6",bcong:"\u224C",Bcy:"\u0411",bcy:"\u0431",bdquo:"\u201E",becaus:"\u2235",because:"\u2235",Because:"\u2235",bemptyv:"\u29B0",bepsi:"\u03F6",bernou:"\u212C",Bernoullis:"\u212C",Beta:"\u0392",beta:"\u03B2",beth:"\u2136",between:"\u226C",Bfr:"\u{1D505}",bfr:"\u{1D51F}",bigcap:"\u22C2",bigcirc:"\u25EF",bigcup:"\u22C3",bigodot:"\u2A00",bigoplus:"\u2A01",bigotimes:"\u2A02",bigsqcup:"\u2A06",bigstar:"\u2605",bigtriangledown:"\u25BD",bigtriangleup:"\u25B3",biguplus:"\u2A04",bigvee:"\u22C1",bigwedge:"\u22C0",bkarow:"\u290D",blacklozenge:"\u29EB",blacksquare:"\u25AA",blacktriangle:"\u25B4",blacktriangledown:"\u25BE",blacktriangleleft:"\u25C2",blacktriangleright:"\u25B8",blank:"\u2423",blk12:"\u2592",blk14:"\u2591",blk34:"\u2593",block:"\u2588",bne:"=\u20E5",bnequiv:"\u2261\u20E5",bNot:"\u2AED",bnot:"\u2310",Bopf:"\u{1D539}",bopf:"\u{1D553}",bot:"\u22A5",bottom:"\u22A5",bowtie:"\u22C8",boxbox:"\u29C9",boxdl:"\u2510",boxdL:"\u2555",boxDl:"\u2556",boxDL:"\u2557",boxdr:"\u250C",boxdR:"\u2552",boxDr:"\u2553",boxDR:"\u2554",boxh:"\u2500",boxH:"\u2550",boxhd:"\u252C",boxHd:"\u2564",boxhD:"\u2565",boxHD:"\u2566",boxhu:"\u2534",boxHu:"\u2567",boxhU:"\u2568",boxHU:"\u2569",boxminus:"\u229F",boxplus:"\u229E",boxtimes:"\u22A0",boxul:"\u2518",boxuL:"\u255B",boxUl:"\u255C",boxUL:"\u255D",boxur:"\u2514",boxuR:"\u2558",boxUr:"\u2559",boxUR:"\u255A",boxv:"\u2502",boxV:"\u2551",boxvh:"\u253C",boxvH:"\u256A",boxVh:"\u256B",boxVH:"\u256C",boxvl:"\u2524",boxvL:"\u2561",boxVl:"\u2562",boxVL:"\u2563",boxvr:"\u251C",boxvR:"\u255E",boxVr:"\u255F",boxVR:"\u2560",bprime:"\u2035",breve:"\u02D8",Breve:"\u02D8",brvbar:"\xA6",bscr:"\u{1D4B7}",Bscr:"\u212C",bsemi:"\u204F",bsim:"\u223D",bsime:"\u22CD",bsolb:"\u29C5",bsol:"\\",bsolhsub:"\u27C8",bull:"\u2022",bullet:"\u2022",bump:"\u224E",bumpE:"\u2AAE",bumpe:"\u224F",Bumpeq:"\u224E",bumpeq:"\u224F",Cacute:"\u0106",cacute:"\u0107",capand:"\u2A44",capbrcup:"\u2A49",capcap:"\u2A4B",cap:"\u2229",Cap:"\u22D2",capcup:"\u2A47",capdot:"\u2A40",CapitalDifferentialD:"\u2145",caps:"\u2229\uFE00",caret:"\u2041",caron:"\u02C7",Cayleys:"\u212D",ccaps:"\u2A4D",Ccaron:"\u010C",ccaron:"\u010D",Ccedil:"\xC7",ccedil:"\xE7",Ccirc:"\u0108",ccirc:"\u0109",Cconint:"\u2230",ccups:"\u2A4C",ccupssm:"\u2A50",Cdot:"\u010A",cdot:"\u010B",cedil:"\xB8",Cedilla:"\xB8",cemptyv:"\u29B2",cent:"\xA2",centerdot:"\xB7",CenterDot:"\xB7",cfr:"\u{1D520}",Cfr:"\u212D",CHcy:"\u0427",chcy:"\u0447",check:"\u2713",checkmark:"\u2713",Chi:"\u03A7",chi:"\u03C7",circ:"\u02C6",circeq:"\u2257",circlearrowleft:"\u21BA",circlearrowright:"\u21BB",circledast:"\u229B",circledcirc:"\u229A",circleddash:"\u229D",CircleDot:"\u2299",circledR:"\xAE",circledS:"\u24C8",CircleMinus:"\u2296",CirclePlus:"\u2295",CircleTimes:"\u2297",cir:"\u25CB",cirE:"\u29C3",cire:"\u2257",cirfnint:"\u2A10",cirmid:"\u2AEF",cirscir:"\u29C2",ClockwiseContourIntegral:"\u2232",CloseCurlyDoubleQuote:"\u201D",CloseCurlyQuote:"\u2019",clubs:"\u2663",clubsuit:"\u2663",colon:":",Colon:"\u2237",Colone:"\u2A74",colone:"\u2254",coloneq:"\u2254",comma:",",commat:"@",comp:"\u2201",compfn:"\u2218",complement:"\u2201",complexes:"\u2102",cong:"\u2245",congdot:"\u2A6D",Congruent:"\u2261",conint:"\u222E",Conint:"\u222F",ContourIntegral:"\u222E",copf:"\u{1D554}",Copf:"\u2102",coprod:"\u2210",Coproduct:"\u2210",copy:"\xA9",COPY:"\xA9",copysr:"\u2117",CounterClockwiseContourIntegral:"\u2233",crarr:"\u21B5",cross:"\u2717",Cross:"\u2A2F",Cscr:"\u{1D49E}",cscr:"\u{1D4B8}",csub:"\u2ACF",csube:"\u2AD1",csup:"\u2AD0",csupe:"\u2AD2",ctdot:"\u22EF",cudarrl:"\u2938",cudarrr:"\u2935",cuepr:"\u22DE",cuesc:"\u22DF",cularr:"\u21B6",cularrp:"\u293D",cupbrcap:"\u2A48",cupcap:"\u2A46",CupCap:"\u224D",cup:"\u222A",Cup:"\u22D3",cupcup:"\u2A4A",cupdot:"\u228D",cupor:"\u2A45",cups:"\u222A\uFE00",curarr:"\u21B7",curarrm:"\u293C",curlyeqprec:"\u22DE",curlyeqsucc:"\u22DF",curlyvee:"\u22CE",curlywedge:"\u22CF",curren:"\xA4",curvearrowleft:"\u21B6",curvearrowright:"\u21B7",cuvee:"\u22CE",cuwed:"\u22CF",cwconint:"\u2232",cwint:"\u2231",cylcty:"\u232D",dagger:"\u2020",Dagger:"\u2021",daleth:"\u2138",darr:"\u2193",Darr:"\u21A1",dArr:"\u21D3",dash:"\u2010",Dashv:"\u2AE4",dashv:"\u22A3",dbkarow:"\u290F",dblac:"\u02DD",Dcaron:"\u010E",dcaron:"\u010F",Dcy:"\u0414",dcy:"\u0434",ddagger:"\u2021",ddarr:"\u21CA",DD:"\u2145",dd:"\u2146",DDotrahd:"\u2911",ddotseq:"\u2A77",deg:"\xB0",Del:"\u2207",Delta:"\u0394",delta:"\u03B4",demptyv:"\u29B1",dfisht:"\u297F",Dfr:"\u{1D507}",dfr:"\u{1D521}",dHar:"\u2965",dharl:"\u21C3",dharr:"\u21C2",DiacriticalAcute:"\xB4",DiacriticalDot:"\u02D9",DiacriticalDoubleAcute:"\u02DD",DiacriticalGrave:"`",DiacriticalTilde:"\u02DC",diam:"\u22C4",diamond:"\u22C4",Diamond:"\u22C4",diamondsuit:"\u2666",diams:"\u2666",die:"\xA8",DifferentialD:"\u2146",digamma:"\u03DD",disin:"\u22F2",div:"\xF7",divide:"\xF7",divideontimes:"\u22C7",divonx:"\u22C7",DJcy:"\u0402",djcy:"\u0452",dlcorn:"\u231E",dlcrop:"\u230D",dollar:"$",Dopf:"\u{1D53B}",dopf:"\u{1D555}",Dot:"\xA8",dot:"\u02D9",DotDot:"\u20DC",doteq:"\u2250",doteqdot:"\u2251",DotEqual:"\u2250",dotminus:"\u2238",dotplus:"\u2214",dotsquare:"\u22A1",doublebarwedge:"\u2306",DoubleContourIntegral:"\u222F",DoubleDot:"\xA8",DoubleDownArrow:"\u21D3",DoubleLeftArrow:"\u21D0",DoubleLeftRightArrow:"\u21D4",DoubleLeftTee:"\u2AE4",DoubleLongLeftArrow:"\u27F8",DoubleLongLeftRightArrow:"\u27FA",DoubleLongRightArrow:"\u27F9",DoubleRightArrow:"\u21D2",DoubleRightTee:"\u22A8",DoubleUpArrow:"\u21D1",DoubleUpDownArrow:"\u21D5",DoubleVerticalBar:"\u2225",DownArrowBar:"\u2913",downarrow:"\u2193",DownArrow:"\u2193",Downarrow:"\u21D3",DownArrowUpArrow:"\u21F5",DownBreve:"\u0311",downdownarrows:"\u21CA",downharpoonleft:"\u21C3",downharpoonright:"\u21C2",DownLeftRightVector:"\u2950",DownLeftTeeVector:"\u295E",DownLeftVectorBar:"\u2956",DownLeftVector:"\u21BD",DownRightTeeVector:"\u295F",DownRightVectorBar:"\u2957",DownRightVector:"\u21C1",DownTeeArrow:"\u21A7",DownTee:"\u22A4",drbkarow:"\u2910",drcorn:"\u231F",drcrop:"\u230C",Dscr:"\u{1D49F}",dscr:"\u{1D4B9}",DScy:"\u0405",dscy:"\u0455",dsol:"\u29F6",Dstrok:"\u0110",dstrok:"\u0111",dtdot:"\u22F1",dtri:"\u25BF",dtrif:"\u25BE",duarr:"\u21F5",duhar:"\u296F",dwangle:"\u29A6",DZcy:"\u040F",dzcy:"\u045F",dzigrarr:"\u27FF",Eacute:"\xC9",eacute:"\xE9",easter:"\u2A6E",Ecaron:"\u011A",ecaron:"\u011B",Ecirc:"\xCA",ecirc:"\xEA",ecir:"\u2256",ecolon:"\u2255",Ecy:"\u042D",ecy:"\u044D",eDDot:"\u2A77",Edot:"\u0116",edot:"\u0117",eDot:"\u2251",ee:"\u2147",efDot:"\u2252",Efr:"\u{1D508}",efr:"\u{1D522}",eg:"\u2A9A",Egrave:"\xC8",egrave:"\xE8",egs:"\u2A96",egsdot:"\u2A98",el:"\u2A99",Element:"\u2208",elinters:"\u23E7",ell:"\u2113",els:"\u2A95",elsdot:"\u2A97",Emacr:"\u0112",emacr:"\u0113",empty:"\u2205",emptyset:"\u2205",EmptySmallSquare:"\u25FB",emptyv:"\u2205",EmptyVerySmallSquare:"\u25AB",emsp13:"\u2004",emsp14:"\u2005",emsp:"\u2003",ENG:"\u014A",eng:"\u014B",ensp:"\u2002",Eogon:"\u0118",eogon:"\u0119",Eopf:"\u{1D53C}",eopf:"\u{1D556}",epar:"\u22D5",eparsl:"\u29E3",eplus:"\u2A71",epsi:"\u03B5",Epsilon:"\u0395",epsilon:"\u03B5",epsiv:"\u03F5",eqcirc:"\u2256",eqcolon:"\u2255",eqsim:"\u2242",eqslantgtr:"\u2A96",eqslantless:"\u2A95",Equal:"\u2A75",equals:"=",EqualTilde:"\u2242",equest:"\u225F",Equilibrium:"\u21CC",equiv:"\u2261",equivDD:"\u2A78",eqvparsl:"\u29E5",erarr:"\u2971",erDot:"\u2253",escr:"\u212F",Escr:"\u2130",esdot:"\u2250",Esim:"\u2A73",esim:"\u2242",Eta:"\u0397",eta:"\u03B7",ETH:"\xD0",eth:"\xF0",Euml:"\xCB",euml:"\xEB",euro:"\u20AC",excl:"!",exist:"\u2203",Exists:"\u2203",expectation:"\u2130",exponentiale:"\u2147",ExponentialE:"\u2147",fallingdotseq:"\u2252",Fcy:"\u0424",fcy:"\u0444",female:"\u2640",ffilig:"\uFB03",fflig:"\uFB00",ffllig:"\uFB04",Ffr:"\u{1D509}",ffr:"\u{1D523}",filig:"\uFB01",FilledSmallSquare:"\u25FC",FilledVerySmallSquare:"\u25AA",fjlig:"fj",flat:"\u266D",fllig:"\uFB02",fltns:"\u25B1",fnof:"\u0192",Fopf:"\u{1D53D}",fopf:"\u{1D557}",forall:"\u2200",ForAll:"\u2200",fork:"\u22D4",forkv:"\u2AD9",Fouriertrf:"\u2131",fpartint:"\u2A0D",frac12:"\xBD",frac13:"\u2153",frac14:"\xBC",frac15:"\u2155",frac16:"\u2159",frac18:"\u215B",frac23:"\u2154",frac25:"\u2156",frac34:"\xBE",frac35:"\u2157",frac38:"\u215C",frac45:"\u2158",frac56:"\u215A",frac58:"\u215D",frac78:"\u215E",frasl:"\u2044",frown:"\u2322",fscr:"\u{1D4BB}",Fscr:"\u2131",gacute:"\u01F5",Gamma:"\u0393",gamma:"\u03B3",Gammad:"\u03DC",gammad:"\u03DD",gap:"\u2A86",Gbreve:"\u011E",gbreve:"\u011F",Gcedil:"\u0122",Gcirc:"\u011C",gcirc:"\u011D",Gcy:"\u0413",gcy:"\u0433",Gdot:"\u0120",gdot:"\u0121",ge:"\u2265",gE:"\u2267",gEl:"\u2A8C",gel:"\u22DB",geq:"\u2265",geqq:"\u2267",geqslant:"\u2A7E",gescc:"\u2AA9",ges:"\u2A7E",gesdot:"\u2A80",gesdoto:"\u2A82",gesdotol:"\u2A84",gesl:"\u22DB\uFE00",gesles:"\u2A94",Gfr:"\u{1D50A}",gfr:"\u{1D524}",gg:"\u226B",Gg:"\u22D9",ggg:"\u22D9",gimel:"\u2137",GJcy:"\u0403",gjcy:"\u0453",gla:"\u2AA5",gl:"\u2277",glE:"\u2A92",glj:"\u2AA4",gnap:"\u2A8A",gnapprox:"\u2A8A",gne:"\u2A88",gnE:"\u2269",gneq:"\u2A88",gneqq:"\u2269",gnsim:"\u22E7",Gopf:"\u{1D53E}",gopf:"\u{1D558}",grave:"`",GreaterEqual:"\u2265",GreaterEqualLess:"\u22DB",GreaterFullEqual:"\u2267",GreaterGreater:"\u2AA2",GreaterLess:"\u2277",GreaterSlantEqual:"\u2A7E",GreaterTilde:"\u2273",Gscr:"\u{1D4A2}",gscr:"\u210A",gsim:"\u2273",gsime:"\u2A8E",gsiml:"\u2A90",gtcc:"\u2AA7",gtcir:"\u2A7A",gt:">",GT:">",Gt:"\u226B",gtdot:"\u22D7",gtlPar:"\u2995",gtquest:"\u2A7C",gtrapprox:"\u2A86",gtrarr:"\u2978",gtrdot:"\u22D7",gtreqless:"\u22DB",gtreqqless:"\u2A8C",gtrless:"\u2277",gtrsim:"\u2273",gvertneqq:"\u2269\uFE00",gvnE:"\u2269\uFE00",Hacek:"\u02C7",hairsp:"\u200A",half:"\xBD",hamilt:"\u210B",HARDcy:"\u042A",hardcy:"\u044A",harrcir:"\u2948",harr:"\u2194",hArr:"\u21D4",harrw:"\u21AD",Hat:"^",hbar:"\u210F",Hcirc:"\u0124",hcirc:"\u0125",hearts:"\u2665",heartsuit:"\u2665",hellip:"\u2026",hercon:"\u22B9",hfr:"\u{1D525}",Hfr:"\u210C",HilbertSpace:"\u210B",hksearow:"\u2925",hkswarow:"\u2926",hoarr:"\u21FF",homtht:"\u223B",hookleftarrow:"\u21A9",hookrightarrow:"\u21AA",hopf:"\u{1D559}",Hopf:"\u210D",horbar:"\u2015",HorizontalLine:"\u2500",hscr:"\u{1D4BD}",Hscr:"\u210B",hslash:"\u210F",Hstrok:"\u0126",hstrok:"\u0127",HumpDownHump:"\u224E",HumpEqual:"\u224F",hybull:"\u2043",hyphen:"\u2010",Iacute:"\xCD",iacute:"\xED",ic:"\u2063",Icirc:"\xCE",icirc:"\xEE",Icy:"\u0418",icy:"\u0438",Idot:"\u0130",IEcy:"\u0415",iecy:"\u0435",iexcl:"\xA1",iff:"\u21D4",ifr:"\u{1D526}",Ifr:"\u2111",Igrave:"\xCC",igrave:"\xEC",ii:"\u2148",iiiint:"\u2A0C",iiint:"\u222D",iinfin:"\u29DC",iiota:"\u2129",IJlig:"\u0132",ijlig:"\u0133",Imacr:"\u012A",imacr:"\u012B",image:"\u2111",ImaginaryI:"\u2148",imagline:"\u2110",imagpart:"\u2111",imath:"\u0131",Im:"\u2111",imof:"\u22B7",imped:"\u01B5",Implies:"\u21D2",incare:"\u2105",in:"\u2208",infin:"\u221E",infintie:"\u29DD",inodot:"\u0131",intcal:"\u22BA",int:"\u222B",Int:"\u222C",integers:"\u2124",Integral:"\u222B",intercal:"\u22BA",Intersection:"\u22C2",intlarhk:"\u2A17",intprod:"\u2A3C",InvisibleComma:"\u2063",InvisibleTimes:"\u2062",IOcy:"\u0401",iocy:"\u0451",Iogon:"\u012E",iogon:"\u012F",Iopf:"\u{1D540}",iopf:"\u{1D55A}",Iota:"\u0399",iota:"\u03B9",iprod:"\u2A3C",iquest:"\xBF",iscr:"\u{1D4BE}",Iscr:"\u2110",isin:"\u2208",isindot:"\u22F5",isinE:"\u22F9",isins:"\u22F4",isinsv:"\u22F3",isinv:"\u2208",it:"\u2062",Itilde:"\u0128",itilde:"\u0129",Iukcy:"\u0406",iukcy:"\u0456",Iuml:"\xCF",iuml:"\xEF",Jcirc:"\u0134",jcirc:"\u0135",Jcy:"\u0419",jcy:"\u0439",Jfr:"\u{1D50D}",jfr:"\u{1D527}",jmath:"\u0237",Jopf:"\u{1D541}",jopf:"\u{1D55B}",Jscr:"\u{1D4A5}",jscr:"\u{1D4BF}",Jsercy:"\u0408",jsercy:"\u0458",Jukcy:"\u0404",jukcy:"\u0454",Kappa:"\u039A",kappa:"\u03BA",kappav:"\u03F0",Kcedil:"\u0136",kcedil:"\u0137",Kcy:"\u041A",kcy:"\u043A",Kfr:"\u{1D50E}",kfr:"\u{1D528}",kgreen:"\u0138",KHcy:"\u0425",khcy:"\u0445",KJcy:"\u040C",kjcy:"\u045C",Kopf:"\u{1D542}",kopf:"\u{1D55C}",Kscr:"\u{1D4A6}",kscr:"\u{1D4C0}",lAarr:"\u21DA",Lacute:"\u0139",lacute:"\u013A",laemptyv:"\u29B4",lagran:"\u2112",Lambda:"\u039B",lambda:"\u03BB",lang:"\u27E8",Lang:"\u27EA",langd:"\u2991",langle:"\u27E8",lap:"\u2A85",Laplacetrf:"\u2112",laquo:"\xAB",larrb:"\u21E4",larrbfs:"\u291F",larr:"\u2190",Larr:"\u219E",lArr:"\u21D0",larrfs:"\u291D",larrhk:"\u21A9",larrlp:"\u21AB",larrpl:"\u2939",larrsim:"\u2973",larrtl:"\u21A2",latail:"\u2919",lAtail:"\u291B",lat:"\u2AAB",late:"\u2AAD",lates:"\u2AAD\uFE00",lbarr:"\u290C",lBarr:"\u290E",lbbrk:"\u2772",lbrace:"{",lbrack:"[",lbrke:"\u298B",lbrksld:"\u298F",lbrkslu:"\u298D",Lcaron:"\u013D",lcaron:"\u013E",Lcedil:"\u013B",lcedil:"\u013C",lceil:"\u2308",lcub:"{",Lcy:"\u041B",lcy:"\u043B",ldca:"\u2936",ldquo:"\u201C",ldquor:"\u201E",ldrdhar:"\u2967",ldrushar:"\u294B",ldsh:"\u21B2",le:"\u2264",lE:"\u2266",LeftAngleBracket:"\u27E8",LeftArrowBar:"\u21E4",leftarrow:"\u2190",LeftArrow:"\u2190",Leftarrow:"\u21D0",LeftArrowRightArrow:"\u21C6",leftarrowtail:"\u21A2",LeftCeiling:"\u2308",LeftDoubleBracket:"\u27E6",LeftDownTeeVector:"\u2961",LeftDownVectorBar:"\u2959",LeftDownVector:"\u21C3",LeftFloor:"\u230A",leftharpoondown:"\u21BD",leftharpoonup:"\u21BC",leftleftarrows:"\u21C7",leftrightarrow:"\u2194",LeftRightArrow:"\u2194",Leftrightarrow:"\u21D4",leftrightarrows:"\u21C6",leftrightharpoons:"\u21CB",leftrightsquigarrow:"\u21AD",LeftRightVector:"\u294E",LeftTeeArrow:"\u21A4",LeftTee:"\u22A3",LeftTeeVector:"\u295A",leftthreetimes:"\u22CB",LeftTriangleBar:"\u29CF",LeftTriangle:"\u22B2",LeftTriangleEqual:"\u22B4",LeftUpDownVector:"\u2951",LeftUpTeeVector:"\u2960",LeftUpVectorBar:"\u2958",LeftUpVector:"\u21BF",LeftVectorBar:"\u2952",LeftVector:"\u21BC",lEg:"\u2A8B",leg:"\u22DA",leq:"\u2264",leqq:"\u2266",leqslant:"\u2A7D",lescc:"\u2AA8",les:"\u2A7D",lesdot:"\u2A7F",lesdoto:"\u2A81",lesdotor:"\u2A83",lesg:"\u22DA\uFE00",lesges:"\u2A93",lessapprox:"\u2A85",lessdot:"\u22D6",lesseqgtr:"\u22DA",lesseqqgtr:"\u2A8B",LessEqualGreater:"\u22DA",LessFullEqual:"\u2266",LessGreater:"\u2276",lessgtr:"\u2276",LessLess:"\u2AA1",lesssim:"\u2272",LessSlantEqual:"\u2A7D",LessTilde:"\u2272",lfisht:"\u297C",lfloor:"\u230A",Lfr:"\u{1D50F}",lfr:"\u{1D529}",lg:"\u2276",lgE:"\u2A91",lHar:"\u2962",lhard:"\u21BD",lharu:"\u21BC",lharul:"\u296A",lhblk:"\u2584",LJcy:"\u0409",ljcy:"\u0459",llarr:"\u21C7",ll:"\u226A",Ll:"\u22D8",llcorner:"\u231E",Lleftarrow:"\u21DA",llhard:"\u296B",lltri:"\u25FA",Lmidot:"\u013F",lmidot:"\u0140",lmoustache:"\u23B0",lmoust:"\u23B0",lnap:"\u2A89",lnapprox:"\u2A89",lne:"\u2A87",lnE:"\u2268",lneq:"\u2A87",lneqq:"\u2268",lnsim:"\u22E6",loang:"\u27EC",loarr:"\u21FD",lobrk:"\u27E6",longleftarrow:"\u27F5",LongLeftArrow:"\u27F5",Longleftarrow:"\u27F8",longleftrightarrow:"\u27F7",LongLeftRightArrow:"\u27F7",Longleftrightarrow:"\u27FA",longmapsto:"\u27FC",longrightarrow:"\u27F6",LongRightArrow:"\u27F6",Longrightarrow:"\u27F9",looparrowleft:"\u21AB",looparrowright:"\u21AC",lopar:"\u2985",Lopf:"\u{1D543}",lopf:"\u{1D55D}",loplus:"\u2A2D",lotimes:"\u2A34",lowast:"\u2217",lowbar:"_",LowerLeftArrow:"\u2199",LowerRightArrow:"\u2198",loz:"\u25CA",lozenge:"\u25CA",lozf:"\u29EB",lpar:"(",lparlt:"\u2993",lrarr:"\u21C6",lrcorner:"\u231F",lrhar:"\u21CB",lrhard:"\u296D",lrm:"\u200E",lrtri:"\u22BF",lsaquo:"\u2039",lscr:"\u{1D4C1}",Lscr:"\u2112",lsh:"\u21B0",Lsh:"\u21B0",lsim:"\u2272",lsime:"\u2A8D",lsimg:"\u2A8F",lsqb:"[",lsquo:"\u2018",lsquor:"\u201A",Lstrok:"\u0141",lstrok:"\u0142",ltcc:"\u2AA6",ltcir:"\u2A79",lt:"<",LT:"<",Lt:"\u226A",ltdot:"\u22D6",lthree:"\u22CB",ltimes:"\u22C9",ltlarr:"\u2976",ltquest:"\u2A7B",ltri:"\u25C3",ltrie:"\u22B4",ltrif:"\u25C2",ltrPar:"\u2996",lurdshar:"\u294A",luruhar:"\u2966",lvertneqq:"\u2268\uFE00",lvnE:"\u2268\uFE00",macr:"\xAF",male:"\u2642",malt:"\u2720",maltese:"\u2720",Map:"\u2905",map:"\u21A6",mapsto:"\u21A6",mapstodown:"\u21A7",mapstoleft:"\u21A4",mapstoup:"\u21A5",marker:"\u25AE",mcomma:"\u2A29",Mcy:"\u041C",mcy:"\u043C",mdash:"\u2014",mDDot:"\u223A",measuredangle:"\u2221",MediumSpace:"\u205F",Mellintrf:"\u2133",Mfr:"\u{1D510}",mfr:"\u{1D52A}",mho:"\u2127",micro:"\xB5",midast:"*",midcir:"\u2AF0",mid:"\u2223",middot:"\xB7",minusb:"\u229F",minus:"\u2212",minusd:"\u2238",minusdu:"\u2A2A",MinusPlus:"\u2213",mlcp:"\u2ADB",mldr:"\u2026",mnplus:"\u2213",models:"\u22A7",Mopf:"\u{1D544}",mopf:"\u{1D55E}",mp:"\u2213",mscr:"\u{1D4C2}",Mscr:"\u2133",mstpos:"\u223E",Mu:"\u039C",mu:"\u03BC",multimap:"\u22B8",mumap:"\u22B8",nabla:"\u2207",Nacute:"\u0143",nacute:"\u0144",nang:"\u2220\u20D2",nap:"\u2249",napE:"\u2A70\u0338",napid:"\u224B\u0338",napos:"\u0149",napprox:"\u2249",natural:"\u266E",naturals:"\u2115",natur:"\u266E",nbsp:"\xA0",nbump:"\u224E\u0338",nbumpe:"\u224F\u0338",ncap:"\u2A43",Ncaron:"\u0147",ncaron:"\u0148",Ncedil:"\u0145",ncedil:"\u0146",ncong:"\u2247",ncongdot:"\u2A6D\u0338",ncup:"\u2A42",Ncy:"\u041D",ncy:"\u043D",ndash:"\u2013",nearhk:"\u2924",nearr:"\u2197",neArr:"\u21D7",nearrow:"\u2197",ne:"\u2260",nedot:"\u2250\u0338",NegativeMediumSpace:"\u200B",NegativeThickSpace:"\u200B",NegativeThinSpace:"\u200B",NegativeVeryThinSpace:"\u200B",nequiv:"\u2262",nesear:"\u2928",nesim:"\u2242\u0338",NestedGreaterGreater:"\u226B",NestedLessLess:"\u226A",NewLine:` +`,nexist:"\u2204",nexists:"\u2204",Nfr:"\u{1D511}",nfr:"\u{1D52B}",ngE:"\u2267\u0338",nge:"\u2271",ngeq:"\u2271",ngeqq:"\u2267\u0338",ngeqslant:"\u2A7E\u0338",nges:"\u2A7E\u0338",nGg:"\u22D9\u0338",ngsim:"\u2275",nGt:"\u226B\u20D2",ngt:"\u226F",ngtr:"\u226F",nGtv:"\u226B\u0338",nharr:"\u21AE",nhArr:"\u21CE",nhpar:"\u2AF2",ni:"\u220B",nis:"\u22FC",nisd:"\u22FA",niv:"\u220B",NJcy:"\u040A",njcy:"\u045A",nlarr:"\u219A",nlArr:"\u21CD",nldr:"\u2025",nlE:"\u2266\u0338",nle:"\u2270",nleftarrow:"\u219A",nLeftarrow:"\u21CD",nleftrightarrow:"\u21AE",nLeftrightarrow:"\u21CE",nleq:"\u2270",nleqq:"\u2266\u0338",nleqslant:"\u2A7D\u0338",nles:"\u2A7D\u0338",nless:"\u226E",nLl:"\u22D8\u0338",nlsim:"\u2274",nLt:"\u226A\u20D2",nlt:"\u226E",nltri:"\u22EA",nltrie:"\u22EC",nLtv:"\u226A\u0338",nmid:"\u2224",NoBreak:"\u2060",NonBreakingSpace:"\xA0",nopf:"\u{1D55F}",Nopf:"\u2115",Not:"\u2AEC",not:"\xAC",NotCongruent:"\u2262",NotCupCap:"\u226D",NotDoubleVerticalBar:"\u2226",NotElement:"\u2209",NotEqual:"\u2260",NotEqualTilde:"\u2242\u0338",NotExists:"\u2204",NotGreater:"\u226F",NotGreaterEqual:"\u2271",NotGreaterFullEqual:"\u2267\u0338",NotGreaterGreater:"\u226B\u0338",NotGreaterLess:"\u2279",NotGreaterSlantEqual:"\u2A7E\u0338",NotGreaterTilde:"\u2275",NotHumpDownHump:"\u224E\u0338",NotHumpEqual:"\u224F\u0338",notin:"\u2209",notindot:"\u22F5\u0338",notinE:"\u22F9\u0338",notinva:"\u2209",notinvb:"\u22F7",notinvc:"\u22F6",NotLeftTriangleBar:"\u29CF\u0338",NotLeftTriangle:"\u22EA",NotLeftTriangleEqual:"\u22EC",NotLess:"\u226E",NotLessEqual:"\u2270",NotLessGreater:"\u2278",NotLessLess:"\u226A\u0338",NotLessSlantEqual:"\u2A7D\u0338",NotLessTilde:"\u2274",NotNestedGreaterGreater:"\u2AA2\u0338",NotNestedLessLess:"\u2AA1\u0338",notni:"\u220C",notniva:"\u220C",notnivb:"\u22FE",notnivc:"\u22FD",NotPrecedes:"\u2280",NotPrecedesEqual:"\u2AAF\u0338",NotPrecedesSlantEqual:"\u22E0",NotReverseElement:"\u220C",NotRightTriangleBar:"\u29D0\u0338",NotRightTriangle:"\u22EB",NotRightTriangleEqual:"\u22ED",NotSquareSubset:"\u228F\u0338",NotSquareSubsetEqual:"\u22E2",NotSquareSuperset:"\u2290\u0338",NotSquareSupersetEqual:"\u22E3",NotSubset:"\u2282\u20D2",NotSubsetEqual:"\u2288",NotSucceeds:"\u2281",NotSucceedsEqual:"\u2AB0\u0338",NotSucceedsSlantEqual:"\u22E1",NotSucceedsTilde:"\u227F\u0338",NotSuperset:"\u2283\u20D2",NotSupersetEqual:"\u2289",NotTilde:"\u2241",NotTildeEqual:"\u2244",NotTildeFullEqual:"\u2247",NotTildeTilde:"\u2249",NotVerticalBar:"\u2224",nparallel:"\u2226",npar:"\u2226",nparsl:"\u2AFD\u20E5",npart:"\u2202\u0338",npolint:"\u2A14",npr:"\u2280",nprcue:"\u22E0",nprec:"\u2280",npreceq:"\u2AAF\u0338",npre:"\u2AAF\u0338",nrarrc:"\u2933\u0338",nrarr:"\u219B",nrArr:"\u21CF",nrarrw:"\u219D\u0338",nrightarrow:"\u219B",nRightarrow:"\u21CF",nrtri:"\u22EB",nrtrie:"\u22ED",nsc:"\u2281",nsccue:"\u22E1",nsce:"\u2AB0\u0338",Nscr:"\u{1D4A9}",nscr:"\u{1D4C3}",nshortmid:"\u2224",nshortparallel:"\u2226",nsim:"\u2241",nsime:"\u2244",nsimeq:"\u2244",nsmid:"\u2224",nspar:"\u2226",nsqsube:"\u22E2",nsqsupe:"\u22E3",nsub:"\u2284",nsubE:"\u2AC5\u0338",nsube:"\u2288",nsubset:"\u2282\u20D2",nsubseteq:"\u2288",nsubseteqq:"\u2AC5\u0338",nsucc:"\u2281",nsucceq:"\u2AB0\u0338",nsup:"\u2285",nsupE:"\u2AC6\u0338",nsupe:"\u2289",nsupset:"\u2283\u20D2",nsupseteq:"\u2289",nsupseteqq:"\u2AC6\u0338",ntgl:"\u2279",Ntilde:"\xD1",ntilde:"\xF1",ntlg:"\u2278",ntriangleleft:"\u22EA",ntrianglelefteq:"\u22EC",ntriangleright:"\u22EB",ntrianglerighteq:"\u22ED",Nu:"\u039D",nu:"\u03BD",num:"#",numero:"\u2116",numsp:"\u2007",nvap:"\u224D\u20D2",nvdash:"\u22AC",nvDash:"\u22AD",nVdash:"\u22AE",nVDash:"\u22AF",nvge:"\u2265\u20D2",nvgt:">\u20D2",nvHarr:"\u2904",nvinfin:"\u29DE",nvlArr:"\u2902",nvle:"\u2264\u20D2",nvlt:"<\u20D2",nvltrie:"\u22B4\u20D2",nvrArr:"\u2903",nvrtrie:"\u22B5\u20D2",nvsim:"\u223C\u20D2",nwarhk:"\u2923",nwarr:"\u2196",nwArr:"\u21D6",nwarrow:"\u2196",nwnear:"\u2927",Oacute:"\xD3",oacute:"\xF3",oast:"\u229B",Ocirc:"\xD4",ocirc:"\xF4",ocir:"\u229A",Ocy:"\u041E",ocy:"\u043E",odash:"\u229D",Odblac:"\u0150",odblac:"\u0151",odiv:"\u2A38",odot:"\u2299",odsold:"\u29BC",OElig:"\u0152",oelig:"\u0153",ofcir:"\u29BF",Ofr:"\u{1D512}",ofr:"\u{1D52C}",ogon:"\u02DB",Ograve:"\xD2",ograve:"\xF2",ogt:"\u29C1",ohbar:"\u29B5",ohm:"\u03A9",oint:"\u222E",olarr:"\u21BA",olcir:"\u29BE",olcross:"\u29BB",oline:"\u203E",olt:"\u29C0",Omacr:"\u014C",omacr:"\u014D",Omega:"\u03A9",omega:"\u03C9",Omicron:"\u039F",omicron:"\u03BF",omid:"\u29B6",ominus:"\u2296",Oopf:"\u{1D546}",oopf:"\u{1D560}",opar:"\u29B7",OpenCurlyDoubleQuote:"\u201C",OpenCurlyQuote:"\u2018",operp:"\u29B9",oplus:"\u2295",orarr:"\u21BB",Or:"\u2A54",or:"\u2228",ord:"\u2A5D",order:"\u2134",orderof:"\u2134",ordf:"\xAA",ordm:"\xBA",origof:"\u22B6",oror:"\u2A56",orslope:"\u2A57",orv:"\u2A5B",oS:"\u24C8",Oscr:"\u{1D4AA}",oscr:"\u2134",Oslash:"\xD8",oslash:"\xF8",osol:"\u2298",Otilde:"\xD5",otilde:"\xF5",otimesas:"\u2A36",Otimes:"\u2A37",otimes:"\u2297",Ouml:"\xD6",ouml:"\xF6",ovbar:"\u233D",OverBar:"\u203E",OverBrace:"\u23DE",OverBracket:"\u23B4",OverParenthesis:"\u23DC",para:"\xB6",parallel:"\u2225",par:"\u2225",parsim:"\u2AF3",parsl:"\u2AFD",part:"\u2202",PartialD:"\u2202",Pcy:"\u041F",pcy:"\u043F",percnt:"%",period:".",permil:"\u2030",perp:"\u22A5",pertenk:"\u2031",Pfr:"\u{1D513}",pfr:"\u{1D52D}",Phi:"\u03A6",phi:"\u03C6",phiv:"\u03D5",phmmat:"\u2133",phone:"\u260E",Pi:"\u03A0",pi:"\u03C0",pitchfork:"\u22D4",piv:"\u03D6",planck:"\u210F",planckh:"\u210E",plankv:"\u210F",plusacir:"\u2A23",plusb:"\u229E",pluscir:"\u2A22",plus:"+",plusdo:"\u2214",plusdu:"\u2A25",pluse:"\u2A72",PlusMinus:"\xB1",plusmn:"\xB1",plussim:"\u2A26",plustwo:"\u2A27",pm:"\xB1",Poincareplane:"\u210C",pointint:"\u2A15",popf:"\u{1D561}",Popf:"\u2119",pound:"\xA3",prap:"\u2AB7",Pr:"\u2ABB",pr:"\u227A",prcue:"\u227C",precapprox:"\u2AB7",prec:"\u227A",preccurlyeq:"\u227C",Precedes:"\u227A",PrecedesEqual:"\u2AAF",PrecedesSlantEqual:"\u227C",PrecedesTilde:"\u227E",preceq:"\u2AAF",precnapprox:"\u2AB9",precneqq:"\u2AB5",precnsim:"\u22E8",pre:"\u2AAF",prE:"\u2AB3",precsim:"\u227E",prime:"\u2032",Prime:"\u2033",primes:"\u2119",prnap:"\u2AB9",prnE:"\u2AB5",prnsim:"\u22E8",prod:"\u220F",Product:"\u220F",profalar:"\u232E",profline:"\u2312",profsurf:"\u2313",prop:"\u221D",Proportional:"\u221D",Proportion:"\u2237",propto:"\u221D",prsim:"\u227E",prurel:"\u22B0",Pscr:"\u{1D4AB}",pscr:"\u{1D4C5}",Psi:"\u03A8",psi:"\u03C8",puncsp:"\u2008",Qfr:"\u{1D514}",qfr:"\u{1D52E}",qint:"\u2A0C",qopf:"\u{1D562}",Qopf:"\u211A",qprime:"\u2057",Qscr:"\u{1D4AC}",qscr:"\u{1D4C6}",quaternions:"\u210D",quatint:"\u2A16",quest:"?",questeq:"\u225F",quot:'"',QUOT:'"',rAarr:"\u21DB",race:"\u223D\u0331",Racute:"\u0154",racute:"\u0155",radic:"\u221A",raemptyv:"\u29B3",rang:"\u27E9",Rang:"\u27EB",rangd:"\u2992",range:"\u29A5",rangle:"\u27E9",raquo:"\xBB",rarrap:"\u2975",rarrb:"\u21E5",rarrbfs:"\u2920",rarrc:"\u2933",rarr:"\u2192",Rarr:"\u21A0",rArr:"\u21D2",rarrfs:"\u291E",rarrhk:"\u21AA",rarrlp:"\u21AC",rarrpl:"\u2945",rarrsim:"\u2974",Rarrtl:"\u2916",rarrtl:"\u21A3",rarrw:"\u219D",ratail:"\u291A",rAtail:"\u291C",ratio:"\u2236",rationals:"\u211A",rbarr:"\u290D",rBarr:"\u290F",RBarr:"\u2910",rbbrk:"\u2773",rbrace:"}",rbrack:"]",rbrke:"\u298C",rbrksld:"\u298E",rbrkslu:"\u2990",Rcaron:"\u0158",rcaron:"\u0159",Rcedil:"\u0156",rcedil:"\u0157",rceil:"\u2309",rcub:"}",Rcy:"\u0420",rcy:"\u0440",rdca:"\u2937",rdldhar:"\u2969",rdquo:"\u201D",rdquor:"\u201D",rdsh:"\u21B3",real:"\u211C",realine:"\u211B",realpart:"\u211C",reals:"\u211D",Re:"\u211C",rect:"\u25AD",reg:"\xAE",REG:"\xAE",ReverseElement:"\u220B",ReverseEquilibrium:"\u21CB",ReverseUpEquilibrium:"\u296F",rfisht:"\u297D",rfloor:"\u230B",rfr:"\u{1D52F}",Rfr:"\u211C",rHar:"\u2964",rhard:"\u21C1",rharu:"\u21C0",rharul:"\u296C",Rho:"\u03A1",rho:"\u03C1",rhov:"\u03F1",RightAngleBracket:"\u27E9",RightArrowBar:"\u21E5",rightarrow:"\u2192",RightArrow:"\u2192",Rightarrow:"\u21D2",RightArrowLeftArrow:"\u21C4",rightarrowtail:"\u21A3",RightCeiling:"\u2309",RightDoubleBracket:"\u27E7",RightDownTeeVector:"\u295D",RightDownVectorBar:"\u2955",RightDownVector:"\u21C2",RightFloor:"\u230B",rightharpoondown:"\u21C1",rightharpoonup:"\u21C0",rightleftarrows:"\u21C4",rightleftharpoons:"\u21CC",rightrightarrows:"\u21C9",rightsquigarrow:"\u219D",RightTeeArrow:"\u21A6",RightTee:"\u22A2",RightTeeVector:"\u295B",rightthreetimes:"\u22CC",RightTriangleBar:"\u29D0",RightTriangle:"\u22B3",RightTriangleEqual:"\u22B5",RightUpDownVector:"\u294F",RightUpTeeVector:"\u295C",RightUpVectorBar:"\u2954",RightUpVector:"\u21BE",RightVectorBar:"\u2953",RightVector:"\u21C0",ring:"\u02DA",risingdotseq:"\u2253",rlarr:"\u21C4",rlhar:"\u21CC",rlm:"\u200F",rmoustache:"\u23B1",rmoust:"\u23B1",rnmid:"\u2AEE",roang:"\u27ED",roarr:"\u21FE",robrk:"\u27E7",ropar:"\u2986",ropf:"\u{1D563}",Ropf:"\u211D",roplus:"\u2A2E",rotimes:"\u2A35",RoundImplies:"\u2970",rpar:")",rpargt:"\u2994",rppolint:"\u2A12",rrarr:"\u21C9",Rrightarrow:"\u21DB",rsaquo:"\u203A",rscr:"\u{1D4C7}",Rscr:"\u211B",rsh:"\u21B1",Rsh:"\u21B1",rsqb:"]",rsquo:"\u2019",rsquor:"\u2019",rthree:"\u22CC",rtimes:"\u22CA",rtri:"\u25B9",rtrie:"\u22B5",rtrif:"\u25B8",rtriltri:"\u29CE",RuleDelayed:"\u29F4",ruluhar:"\u2968",rx:"\u211E",Sacute:"\u015A",sacute:"\u015B",sbquo:"\u201A",scap:"\u2AB8",Scaron:"\u0160",scaron:"\u0161",Sc:"\u2ABC",sc:"\u227B",sccue:"\u227D",sce:"\u2AB0",scE:"\u2AB4",Scedil:"\u015E",scedil:"\u015F",Scirc:"\u015C",scirc:"\u015D",scnap:"\u2ABA",scnE:"\u2AB6",scnsim:"\u22E9",scpolint:"\u2A13",scsim:"\u227F",Scy:"\u0421",scy:"\u0441",sdotb:"\u22A1",sdot:"\u22C5",sdote:"\u2A66",searhk:"\u2925",searr:"\u2198",seArr:"\u21D8",searrow:"\u2198",sect:"\xA7",semi:";",seswar:"\u2929",setminus:"\u2216",setmn:"\u2216",sext:"\u2736",Sfr:"\u{1D516}",sfr:"\u{1D530}",sfrown:"\u2322",sharp:"\u266F",SHCHcy:"\u0429",shchcy:"\u0449",SHcy:"\u0428",shcy:"\u0448",ShortDownArrow:"\u2193",ShortLeftArrow:"\u2190",shortmid:"\u2223",shortparallel:"\u2225",ShortRightArrow:"\u2192",ShortUpArrow:"\u2191",shy:"\xAD",Sigma:"\u03A3",sigma:"\u03C3",sigmaf:"\u03C2",sigmav:"\u03C2",sim:"\u223C",simdot:"\u2A6A",sime:"\u2243",simeq:"\u2243",simg:"\u2A9E",simgE:"\u2AA0",siml:"\u2A9D",simlE:"\u2A9F",simne:"\u2246",simplus:"\u2A24",simrarr:"\u2972",slarr:"\u2190",SmallCircle:"\u2218",smallsetminus:"\u2216",smashp:"\u2A33",smeparsl:"\u29E4",smid:"\u2223",smile:"\u2323",smt:"\u2AAA",smte:"\u2AAC",smtes:"\u2AAC\uFE00",SOFTcy:"\u042C",softcy:"\u044C",solbar:"\u233F",solb:"\u29C4",sol:"/",Sopf:"\u{1D54A}",sopf:"\u{1D564}",spades:"\u2660",spadesuit:"\u2660",spar:"\u2225",sqcap:"\u2293",sqcaps:"\u2293\uFE00",sqcup:"\u2294",sqcups:"\u2294\uFE00",Sqrt:"\u221A",sqsub:"\u228F",sqsube:"\u2291",sqsubset:"\u228F",sqsubseteq:"\u2291",sqsup:"\u2290",sqsupe:"\u2292",sqsupset:"\u2290",sqsupseteq:"\u2292",square:"\u25A1",Square:"\u25A1",SquareIntersection:"\u2293",SquareSubset:"\u228F",SquareSubsetEqual:"\u2291",SquareSuperset:"\u2290",SquareSupersetEqual:"\u2292",SquareUnion:"\u2294",squarf:"\u25AA",squ:"\u25A1",squf:"\u25AA",srarr:"\u2192",Sscr:"\u{1D4AE}",sscr:"\u{1D4C8}",ssetmn:"\u2216",ssmile:"\u2323",sstarf:"\u22C6",Star:"\u22C6",star:"\u2606",starf:"\u2605",straightepsilon:"\u03F5",straightphi:"\u03D5",strns:"\xAF",sub:"\u2282",Sub:"\u22D0",subdot:"\u2ABD",subE:"\u2AC5",sube:"\u2286",subedot:"\u2AC3",submult:"\u2AC1",subnE:"\u2ACB",subne:"\u228A",subplus:"\u2ABF",subrarr:"\u2979",subset:"\u2282",Subset:"\u22D0",subseteq:"\u2286",subseteqq:"\u2AC5",SubsetEqual:"\u2286",subsetneq:"\u228A",subsetneqq:"\u2ACB",subsim:"\u2AC7",subsub:"\u2AD5",subsup:"\u2AD3",succapprox:"\u2AB8",succ:"\u227B",succcurlyeq:"\u227D",Succeeds:"\u227B",SucceedsEqual:"\u2AB0",SucceedsSlantEqual:"\u227D",SucceedsTilde:"\u227F",succeq:"\u2AB0",succnapprox:"\u2ABA",succneqq:"\u2AB6",succnsim:"\u22E9",succsim:"\u227F",SuchThat:"\u220B",sum:"\u2211",Sum:"\u2211",sung:"\u266A",sup1:"\xB9",sup2:"\xB2",sup3:"\xB3",sup:"\u2283",Sup:"\u22D1",supdot:"\u2ABE",supdsub:"\u2AD8",supE:"\u2AC6",supe:"\u2287",supedot:"\u2AC4",Superset:"\u2283",SupersetEqual:"\u2287",suphsol:"\u27C9",suphsub:"\u2AD7",suplarr:"\u297B",supmult:"\u2AC2",supnE:"\u2ACC",supne:"\u228B",supplus:"\u2AC0",supset:"\u2283",Supset:"\u22D1",supseteq:"\u2287",supseteqq:"\u2AC6",supsetneq:"\u228B",supsetneqq:"\u2ACC",supsim:"\u2AC8",supsub:"\u2AD4",supsup:"\u2AD6",swarhk:"\u2926",swarr:"\u2199",swArr:"\u21D9",swarrow:"\u2199",swnwar:"\u292A",szlig:"\xDF",Tab:" ",target:"\u2316",Tau:"\u03A4",tau:"\u03C4",tbrk:"\u23B4",Tcaron:"\u0164",tcaron:"\u0165",Tcedil:"\u0162",tcedil:"\u0163",Tcy:"\u0422",tcy:"\u0442",tdot:"\u20DB",telrec:"\u2315",Tfr:"\u{1D517}",tfr:"\u{1D531}",there4:"\u2234",therefore:"\u2234",Therefore:"\u2234",Theta:"\u0398",theta:"\u03B8",thetasym:"\u03D1",thetav:"\u03D1",thickapprox:"\u2248",thicksim:"\u223C",ThickSpace:"\u205F\u200A",ThinSpace:"\u2009",thinsp:"\u2009",thkap:"\u2248",thksim:"\u223C",THORN:"\xDE",thorn:"\xFE",tilde:"\u02DC",Tilde:"\u223C",TildeEqual:"\u2243",TildeFullEqual:"\u2245",TildeTilde:"\u2248",timesbar:"\u2A31",timesb:"\u22A0",times:"\xD7",timesd:"\u2A30",tint:"\u222D",toea:"\u2928",topbot:"\u2336",topcir:"\u2AF1",top:"\u22A4",Topf:"\u{1D54B}",topf:"\u{1D565}",topfork:"\u2ADA",tosa:"\u2929",tprime:"\u2034",trade:"\u2122",TRADE:"\u2122",triangle:"\u25B5",triangledown:"\u25BF",triangleleft:"\u25C3",trianglelefteq:"\u22B4",triangleq:"\u225C",triangleright:"\u25B9",trianglerighteq:"\u22B5",tridot:"\u25EC",trie:"\u225C",triminus:"\u2A3A",TripleDot:"\u20DB",triplus:"\u2A39",trisb:"\u29CD",tritime:"\u2A3B",trpezium:"\u23E2",Tscr:"\u{1D4AF}",tscr:"\u{1D4C9}",TScy:"\u0426",tscy:"\u0446",TSHcy:"\u040B",tshcy:"\u045B",Tstrok:"\u0166",tstrok:"\u0167",twixt:"\u226C",twoheadleftarrow:"\u219E",twoheadrightarrow:"\u21A0",Uacute:"\xDA",uacute:"\xFA",uarr:"\u2191",Uarr:"\u219F",uArr:"\u21D1",Uarrocir:"\u2949",Ubrcy:"\u040E",ubrcy:"\u045E",Ubreve:"\u016C",ubreve:"\u016D",Ucirc:"\xDB",ucirc:"\xFB",Ucy:"\u0423",ucy:"\u0443",udarr:"\u21C5",Udblac:"\u0170",udblac:"\u0171",udhar:"\u296E",ufisht:"\u297E",Ufr:"\u{1D518}",ufr:"\u{1D532}",Ugrave:"\xD9",ugrave:"\xF9",uHar:"\u2963",uharl:"\u21BF",uharr:"\u21BE",uhblk:"\u2580",ulcorn:"\u231C",ulcorner:"\u231C",ulcrop:"\u230F",ultri:"\u25F8",Umacr:"\u016A",umacr:"\u016B",uml:"\xA8",UnderBar:"_",UnderBrace:"\u23DF",UnderBracket:"\u23B5",UnderParenthesis:"\u23DD",Union:"\u22C3",UnionPlus:"\u228E",Uogon:"\u0172",uogon:"\u0173",Uopf:"\u{1D54C}",uopf:"\u{1D566}",UpArrowBar:"\u2912",uparrow:"\u2191",UpArrow:"\u2191",Uparrow:"\u21D1",UpArrowDownArrow:"\u21C5",updownarrow:"\u2195",UpDownArrow:"\u2195",Updownarrow:"\u21D5",UpEquilibrium:"\u296E",upharpoonleft:"\u21BF",upharpoonright:"\u21BE",uplus:"\u228E",UpperLeftArrow:"\u2196",UpperRightArrow:"\u2197",upsi:"\u03C5",Upsi:"\u03D2",upsih:"\u03D2",Upsilon:"\u03A5",upsilon:"\u03C5",UpTeeArrow:"\u21A5",UpTee:"\u22A5",upuparrows:"\u21C8",urcorn:"\u231D",urcorner:"\u231D",urcrop:"\u230E",Uring:"\u016E",uring:"\u016F",urtri:"\u25F9",Uscr:"\u{1D4B0}",uscr:"\u{1D4CA}",utdot:"\u22F0",Utilde:"\u0168",utilde:"\u0169",utri:"\u25B5",utrif:"\u25B4",uuarr:"\u21C8",Uuml:"\xDC",uuml:"\xFC",uwangle:"\u29A7",vangrt:"\u299C",varepsilon:"\u03F5",varkappa:"\u03F0",varnothing:"\u2205",varphi:"\u03D5",varpi:"\u03D6",varpropto:"\u221D",varr:"\u2195",vArr:"\u21D5",varrho:"\u03F1",varsigma:"\u03C2",varsubsetneq:"\u228A\uFE00",varsubsetneqq:"\u2ACB\uFE00",varsupsetneq:"\u228B\uFE00",varsupsetneqq:"\u2ACC\uFE00",vartheta:"\u03D1",vartriangleleft:"\u22B2",vartriangleright:"\u22B3",vBar:"\u2AE8",Vbar:"\u2AEB",vBarv:"\u2AE9",Vcy:"\u0412",vcy:"\u0432",vdash:"\u22A2",vDash:"\u22A8",Vdash:"\u22A9",VDash:"\u22AB",Vdashl:"\u2AE6",veebar:"\u22BB",vee:"\u2228",Vee:"\u22C1",veeeq:"\u225A",vellip:"\u22EE",verbar:"|",Verbar:"\u2016",vert:"|",Vert:"\u2016",VerticalBar:"\u2223",VerticalLine:"|",VerticalSeparator:"\u2758",VerticalTilde:"\u2240",VeryThinSpace:"\u200A",Vfr:"\u{1D519}",vfr:"\u{1D533}",vltri:"\u22B2",vnsub:"\u2282\u20D2",vnsup:"\u2283\u20D2",Vopf:"\u{1D54D}",vopf:"\u{1D567}",vprop:"\u221D",vrtri:"\u22B3",Vscr:"\u{1D4B1}",vscr:"\u{1D4CB}",vsubnE:"\u2ACB\uFE00",vsubne:"\u228A\uFE00",vsupnE:"\u2ACC\uFE00",vsupne:"\u228B\uFE00",Vvdash:"\u22AA",vzigzag:"\u299A",Wcirc:"\u0174",wcirc:"\u0175",wedbar:"\u2A5F",wedge:"\u2227",Wedge:"\u22C0",wedgeq:"\u2259",weierp:"\u2118",Wfr:"\u{1D51A}",wfr:"\u{1D534}",Wopf:"\u{1D54E}",wopf:"\u{1D568}",wp:"\u2118",wr:"\u2240",wreath:"\u2240",Wscr:"\u{1D4B2}",wscr:"\u{1D4CC}",xcap:"\u22C2",xcirc:"\u25EF",xcup:"\u22C3",xdtri:"\u25BD",Xfr:"\u{1D51B}",xfr:"\u{1D535}",xharr:"\u27F7",xhArr:"\u27FA",Xi:"\u039E",xi:"\u03BE",xlarr:"\u27F5",xlArr:"\u27F8",xmap:"\u27FC",xnis:"\u22FB",xodot:"\u2A00",Xopf:"\u{1D54F}",xopf:"\u{1D569}",xoplus:"\u2A01",xotime:"\u2A02",xrarr:"\u27F6",xrArr:"\u27F9",Xscr:"\u{1D4B3}",xscr:"\u{1D4CD}",xsqcup:"\u2A06",xuplus:"\u2A04",xutri:"\u25B3",xvee:"\u22C1",xwedge:"\u22C0",Yacute:"\xDD",yacute:"\xFD",YAcy:"\u042F",yacy:"\u044F",Ycirc:"\u0176",ycirc:"\u0177",Ycy:"\u042B",ycy:"\u044B",yen:"\xA5",Yfr:"\u{1D51C}",yfr:"\u{1D536}",YIcy:"\u0407",yicy:"\u0457",Yopf:"\u{1D550}",yopf:"\u{1D56A}",Yscr:"\u{1D4B4}",yscr:"\u{1D4CE}",YUcy:"\u042E",yucy:"\u044E",yuml:"\xFF",Yuml:"\u0178",Zacute:"\u0179",zacute:"\u017A",Zcaron:"\u017D",zcaron:"\u017E",Zcy:"\u0417",zcy:"\u0437",Zdot:"\u017B",zdot:"\u017C",zeetrf:"\u2128",ZeroWidthSpace:"\u200B",Zeta:"\u0396",zeta:"\u03B6",zfr:"\u{1D537}",Zfr:"\u2128",ZHcy:"\u0416",zhcy:"\u0436",zigrarr:"\u21DD",zopf:"\u{1D56B}",Zopf:"\u2124",Zscr:"\u{1D4B5}",zscr:"\u{1D4CF}",zwj:"\u200D",zwnj:"\u200C"}});var Zr=_((Rb,Ps)=>{"use strict";Ps.exports=Bs()});var sn=_((Nb,Os)=>{Os.exports=/[!-#%-\*,-\/:;\?@\[-\]_\{\}\xA1\xA7\xAB\xB6\xB7\xBB\xBF\u037E\u0387\u055A-\u055F\u0589\u058A\u05BE\u05C0\u05C3\u05C6\u05F3\u05F4\u0609\u060A\u060C\u060D\u061B\u061E\u061F\u066A-\u066D\u06D4\u0700-\u070D\u07F7-\u07F9\u0830-\u083E\u085E\u0964\u0965\u0970\u09FD\u0A76\u0AF0\u0C84\u0DF4\u0E4F\u0E5A\u0E5B\u0F04-\u0F12\u0F14\u0F3A-\u0F3D\u0F85\u0FD0-\u0FD4\u0FD9\u0FDA\u104A-\u104F\u10FB\u1360-\u1368\u1400\u166D\u166E\u169B\u169C\u16EB-\u16ED\u1735\u1736\u17D4-\u17D6\u17D8-\u17DA\u1800-\u180A\u1944\u1945\u1A1E\u1A1F\u1AA0-\u1AA6\u1AA8-\u1AAD\u1B5A-\u1B60\u1BFC-\u1BFF\u1C3B-\u1C3F\u1C7E\u1C7F\u1CC0-\u1CC7\u1CD3\u2010-\u2027\u2030-\u2043\u2045-\u2051\u2053-\u205E\u207D\u207E\u208D\u208E\u2308-\u230B\u2329\u232A\u2768-\u2775\u27C5\u27C6\u27E6-\u27EF\u2983-\u2998\u29D8-\u29DB\u29FC\u29FD\u2CF9-\u2CFC\u2CFE\u2CFF\u2D70\u2E00-\u2E2E\u2E30-\u2E4E\u3001-\u3003\u3008-\u3011\u3014-\u301F\u3030\u303D\u30A0\u30FB\uA4FE\uA4FF\uA60D-\uA60F\uA673\uA67E\uA6F2-\uA6F7\uA874-\uA877\uA8CE\uA8CF\uA8F8-\uA8FA\uA8FC\uA92E\uA92F\uA95F\uA9C1-\uA9CD\uA9DE\uA9DF\uAA5C-\uAA5F\uAADE\uAADF\uAAF0\uAAF1\uABEB\uFD3E\uFD3F\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE61\uFE63\uFE68\uFE6A\uFE6B\uFF01-\uFF03\uFF05-\uFF0A\uFF0C-\uFF0F\uFF1A\uFF1B\uFF1F\uFF20\uFF3B-\uFF3D\uFF3F\uFF5B\uFF5D\uFF5F-\uFF65]|\uD800[\uDD00-\uDD02\uDF9F\uDFD0]|\uD801\uDD6F|\uD802[\uDC57\uDD1F\uDD3F\uDE50-\uDE58\uDE7F\uDEF0-\uDEF6\uDF39-\uDF3F\uDF99-\uDF9C]|\uD803[\uDF55-\uDF59]|\uD804[\uDC47-\uDC4D\uDCBB\uDCBC\uDCBE-\uDCC1\uDD40-\uDD43\uDD74\uDD75\uDDC5-\uDDC8\uDDCD\uDDDB\uDDDD-\uDDDF\uDE38-\uDE3D\uDEA9]|\uD805[\uDC4B-\uDC4F\uDC5B\uDC5D\uDCC6\uDDC1-\uDDD7\uDE41-\uDE43\uDE60-\uDE6C\uDF3C-\uDF3E]|\uD806[\uDC3B\uDE3F-\uDE46\uDE9A-\uDE9C\uDE9E-\uDEA2]|\uD807[\uDC41-\uDC45\uDC70\uDC71\uDEF7\uDEF8]|\uD809[\uDC70-\uDC74]|\uD81A[\uDE6E\uDE6F\uDEF5\uDF37-\uDF3B\uDF44]|\uD81B[\uDE97-\uDE9A]|\uD82F\uDC9F|\uD836[\uDE87-\uDE8B]|\uD83A[\uDD5E\uDD5F]/});var zs=_((zb,Ns)=>{"use strict";var Rs={};function Wh(i){var t,e,n=Rs[i];if(n)return n;for(n=Rs[i]=[],t=0;t<128;t++)e=String.fromCharCode(t),/^[0-9a-z]$/i.test(e)?n.push(e):n.push("%"+("0"+t.toString(16).toUpperCase()).slice(-2));for(t=0;t"u"&&(e=!0),a=Wh(t),n=0,r=i.length;n=55296&&o<=57343){if(o>=55296&&o<=56319&&n+1=56320&&s<=57343)){l+=encodeURIComponent(i[n]+i[n+1]),n++;continue}l+="%EF%BF%BD";continue}l+=encodeURIComponent(i[n])}return l}an.defaultChars=";/?:@&=+$,-_.!~*'()#";an.componentChars="-_.!~*'()";Ns.exports=an});var js=_((Hb,Us)=>{"use strict";var Hs={};function Gh(i){var t,e,n=Hs[i];if(n)return n;for(n=Hs[i]=[],t=0;t<128;t++)e=String.fromCharCode(t),n.push(e);for(t=0;t=55296&&u<=57343?h+="\uFFFD\uFFFD\uFFFD":h+=String.fromCharCode(u),r+=6;continue}if((s&248)===240&&r+91114111?h+="\uFFFD\uFFFD\uFFFD\uFFFD":(u-=65536,h+=String.fromCharCode(55296+(u>>10),56320+(u&1023))),r+=9;continue}h+="\uFFFD"}return h})}ln.defaultChars=";/?:@&=+$,#";ln.componentChars="";Us.exports=ln});var Ws=_((Ub,Vs)=>{"use strict";Vs.exports=function(t){var e="";return e+=t.protocol||"",e+=t.slashes?"//":"",e+=t.auth?t.auth+"@":"",t.hostname&&t.hostname.indexOf(":")!==-1?e+="["+t.hostname+"]":e+=t.hostname||"",e+=t.port?":"+t.port:"",e+=t.pathname||"",e+=t.search||"",e+=t.hash||"",e}});var Qs=_((jb,Js)=>{"use strict";function cn(){this.protocol=null,this.slashes=null,this.auth=null,this.port=null,this.hostname=null,this.hash=null,this.search=null,this.pathname=null}var Kh=/^([a-z0-9.+-]+:)/i,Zh=/:[0-9]*$/,Xh=/^(\/\/?(?!\/)[^\?\s]*)(\?[^\s]*)?$/,Yh=["<",">",'"',"`"," ","\r",` +`," "],Jh=["{","}","|","\\","^","`"].concat(Yh),Qh=["'"].concat(Jh),Gs=["%","/","?",";","#"].concat(Qh),Ks=["/","?","#"],td=255,Zs=/^[+a-z0-9A-Z_-]{0,63}$/,ed=/^([+a-z0-9A-Z_-]{0,63})(.*)$/,Xs={javascript:!0,"javascript:":!0},Ys={http:!0,https:!0,ftp:!0,gopher:!0,file:!0,"http:":!0,"https:":!0,"ftp:":!0,"gopher:":!0,"file:":!0};function id(i,t){if(i&&i instanceof cn)return i;var e=new cn;return e.parse(i,t),e}cn.prototype.parse=function(i,t){var e,n,r,o,s,a=i;if(a=a.trim(),!t&&i.split("#").length===1){var l=Xh.exec(a);if(l)return this.pathname=l[1],l[2]&&(this.search=l[2]),this}var c=Kh.exec(a);if(c&&(c=c[0],r=c.toLowerCase(),this.protocol=c,a=a.substr(c.length)),(t||c||a.match(/^\/\/[^@\/]+@[^@\/]+/))&&(s=a.substr(0,2)==="//",s&&!(c&&Xs[c])&&(a=a.substr(2),this.slashes=!0)),!Xs[c]&&(s||c&&!Ys[c])){var u=-1;for(e=0;e127?v+="x":v+=w[b];if(!v.match(Zs)){var x=m.slice(0,e),E=m.slice(e+1),y=w.match(ed);y&&(x.push(y[1]),E.unshift(y[2])),E.length&&(a=E.join(".")+a),this.hostname=x.join(".");break}}}}this.hostname.length>td&&(this.hostname=""),p&&(this.hostname=this.hostname.substr(1,this.hostname.length-2))}var S=a.indexOf("#");S!==-1&&(this.hash=a.substr(S),a=a.slice(0,S));var D=a.indexOf("?");return D!==-1&&(this.search=a.substr(D),a=a.slice(0,D)),a&&(this.pathname=a),Ys[r]&&this.hostname&&!this.pathname&&(this.pathname=""),this};cn.prototype.parseHost=function(i){var t=Zh.exec(i);t&&(t=t[0],t!==":"&&(this.port=t.substr(1)),i=i.substr(0,i.length-t.length)),i&&(this.hostname=i)};Js.exports=id});var Xr=_((Vb,Ze)=>{"use strict";Ze.exports.encode=zs();Ze.exports.decode=js();Ze.exports.format=Ws();Ze.exports.parse=Qs()});var Yr=_((Wb,ta)=>{ta.exports=/[\0-\uD7FF\uE000-\uFFFF]|[\uD800-\uDBFF][\uDC00-\uDFFF]|[\uD800-\uDBFF](?![\uDC00-\uDFFF])|(?:[^\uD800-\uDBFF]|^)[\uDC00-\uDFFF]/});var Jr=_((Gb,ea)=>{ea.exports=/[\0-\x1F\x7F-\x9F]/});var na=_((Kb,ia)=>{ia.exports=/[\xAD\u0600-\u0605\u061C\u06DD\u070F\u08E2\u180E\u200B-\u200F\u202A-\u202E\u2060-\u2064\u2066-\u206F\uFEFF\uFFF9-\uFFFB]|\uD804[\uDCBD\uDCCD]|\uD82F[\uDCA0-\uDCA3]|\uD834[\uDD73-\uDD7A]|\uDB40[\uDC01\uDC20-\uDC7F]/});var Qr=_((Zb,ra)=>{ra.exports=/[ \xA0\u1680\u2000-\u200A\u2028\u2029\u202F\u205F\u3000]/});var oa=_(ge=>{"use strict";ge.Any=Yr();ge.Cc=Jr();ge.Cf=na();ge.P=sn();ge.Z=Qr()});var N=_(Q=>{"use strict";function nd(i){return Object.prototype.toString.call(i)}function rd(i){return nd(i)==="[object String]"}var od=Object.prototype.hasOwnProperty;function aa(i,t){return od.call(i,t)}function sd(i){var t=Array.prototype.slice.call(arguments,1);return t.forEach(function(e){if(e){if(typeof e!="object")throw new TypeError(e+"must be object");Object.keys(e).forEach(function(n){i[n]=e[n]})}}),i}function ad(i,t,e){return[].concat(i.slice(0,t),e,i.slice(t+1))}function la(i){return!(i>=55296&&i<=57343||i>=64976&&i<=65007||(i&65535)===65535||(i&65535)===65534||i>=0&&i<=8||i===11||i>=14&&i<=31||i>=127&&i<=159||i>1114111)}function ca(i){if(i>65535){i-=65536;var t=55296+(i>>10),e=56320+(i&1023);return String.fromCharCode(t,e)}return String.fromCharCode(i)}var ua=/\\([!"#$%&'()*+,\-.\/:;<=>?@[\\\]^_`{|}~])/g,ld=/&([a-z#][a-z0-9]{1,31});/gi,cd=new RegExp(ua.source+"|"+ld.source,"gi"),ud=/^#((?:x[a-f0-9]{1,8}|[0-9]{1,8}))$/i,sa=Zr();function hd(i,t){var e;return aa(sa,t)?sa[t]:t.charCodeAt(0)===35&&ud.test(t)&&(e=t[1].toLowerCase()==="x"?parseInt(t.slice(2),16):parseInt(t.slice(1),10),la(e))?ca(e):i}function dd(i){return i.indexOf("\\")<0?i:i.replace(ua,"$1")}function pd(i){return i.indexOf("\\")<0&&i.indexOf("&")<0?i:i.replace(cd,function(t,e,n){return e||hd(t,n)})}var fd=/[&<>"]/,md=/[&<>"]/g,gd={"&":"&","<":"<",">":">",'"':"""};function bd(i){return gd[i]}function vd(i){return fd.test(i)?i.replace(md,bd):i}var wd=/[.?*+^$[\]\\(){}|-]/g;function yd(i){return i.replace(wd,"\\$&")}function xd(i){switch(i){case 9:case 32:return!0}return!1}function kd(i){if(i>=8192&&i<=8202)return!0;switch(i){case 9:case 10:case 11:case 12:case 13:case 32:case 160:case 5760:case 8239:case 8287:case 12288:return!0}return!1}var Cd=sn();function Ed(i){return Cd.test(i)}function _d(i){switch(i){case 33:case 34:case 35:case 36:case 37:case 38:case 39:case 40:case 41:case 42:case 43:case 44:case 45:case 46:case 47:case 58:case 59:case 60:case 61:case 62:case 63:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 124:case 125:case 126:return!0;default:return!1}}function Sd(i){return i=i.trim().replace(/\s+/g," "),"\u1E9E".toLowerCase()==="\u1E7E"&&(i=i.replace(/ẞ/g,"\xDF")),i.toLowerCase().toUpperCase()}Q.lib={};Q.lib.mdurl=Xr();Q.lib.ucmicro=oa();Q.assign=sd;Q.isString=rd;Q.has=aa;Q.unescapeMd=dd;Q.unescapeAll=pd;Q.isValidEntityCode=la;Q.fromCodePoint=ca;Q.escapeHtml=vd;Q.arrayReplaceAt=ad;Q.isSpace=xd;Q.isWhiteSpace=kd;Q.isMdAsciiPunct=_d;Q.isPunctChar=Ed;Q.escapeRE=yd;Q.normalizeReference=Sd});var da=_((Jb,ha)=>{"use strict";ha.exports=function(t,e,n){var r,o,s,a,l=-1,c=t.posMax,u=t.pos;for(t.pos=e+1,r=1;t.pos{"use strict";var pa=N().unescapeAll;fa.exports=function(t,e,n){var r,o,s=e,a={ok:!1,pos:0,lines:0,str:""};if(t.charCodeAt(s)===60){for(s++;s32))return a;if(r===41){if(o===0)break;o--}s++}return e===s||o!==0||(a.str=pa(t.slice(e,s)),a.pos=s,a.ok=!0),a}});var ba=_((tv,ga)=>{"use strict";var Ad=N().unescapeAll;ga.exports=function(t,e,n){var r,o,s=0,a=e,l={ok:!1,pos:0,lines:0,str:""};if(a>=n||(o=t.charCodeAt(a),o!==34&&o!==39&&o!==40))return l;for(a++,o===40&&(o=41);a{"use strict";un.parseLinkLabel=da();un.parseLinkDestination=ma();un.parseLinkTitle=ba()});var ya=_((iv,wa)=>{"use strict";var Dd=N().assign,Ld=N().unescapeAll,Jt=N().escapeHtml,Dt={};Dt.code_inline=function(i,t,e,n,r){var o=i[t];return""+Jt(o.content)+""};Dt.code_block=function(i,t,e,n,r){var o=i[t];return""+Jt(i[t].content)+` +`};Dt.fence=function(i,t,e,n,r){var o=i[t],s=o.info?Ld(o.info).trim():"",a="",l="",c,u,h,d,f;return s&&(h=s.split(/(\s+)/g),a=h[0],l=h.slice(2).join("")),e.highlight?c=e.highlight(o.content,a,l)||Jt(o.content):c=Jt(o.content),c.indexOf(""+c+` `):"
"+c+`
-`};Dt.image=function(n,t,e,i,r){var o=n[t];return o.attrs[o.attrIndex("alt")][1]=r.renderInlineAsText(o.children,e,i),r.renderToken(n,t,e)};Dt.hardbreak=function(n,t,e){return e.xhtmlOut?`
+`};Dt.image=function(i,t,e,n,r){var o=i[t];return o.attrs[o.attrIndex("alt")][1]=r.renderInlineAsText(o.children,e,n),r.renderToken(i,t,e)};Dt.hardbreak=function(i,t,e){return e.xhtmlOut?`
`:`
-`};Dt.softbreak=function(n,t,e){return e.breaks?e.xhtmlOut?`
+`};Dt.softbreak=function(i,t,e){return e.breaks?e.xhtmlOut?`
`:`
`:` -`};Dt.text=function(n,t){return Jt(n[t].content)};Dt.html_block=function(n,t){return n[t].content};Dt.html_inline=function(n,t){return n[t].content};function be(){this.rules=Dd({},Dt)}be.prototype.renderAttrs=function(t){var e,i,r;if(!t.attrs)return"";for(r="",e=0,i=t.attrs.length;e -`:">",o)};be.prototype.renderInline=function(n,t,e){for(var i,r="",o=this.rules,s=0,a=n.length;s{"use strict";function Ct(){this.__rules__=[],this.__cache__=null}Ct.prototype.__find__=function(n){for(var t=0;t{"use strict";var Td=/\r\n?|\n/g,$d=/\0/g;xa.exports=function(t){var e;e=t.src.replace(Td,` -`),e=e.replace($d,"\uFFFD"),t.src=e}});var Ea=_((rv,Ca)=>{"use strict";Ca.exports=function(t){var e;t.inlineMode?(e=new t.Token("inline","",0),e.content=t.src,e.map=[0,1],e.children=[],t.tokens.push(e)):t.md.block.parse(t.src,t.md,t.env,t.tokens)}});var Sa=_((ov,_a)=>{"use strict";_a.exports=function(t){var e=t.tokens,i,r,o;for(r=0,o=e.length;r{"use strict";var Id=N().arrayReplaceAt;function Md(n){return/^\s]/i.test(n)}function Fd(n){return/^<\/a\s*>/i.test(n)}Aa.exports=function(t){var e,i,r,o,s,a,l,c,u,h,d,f,p,m,w,v,b=t.tokens,k;if(t.md.options.linkify){for(i=0,r=b.length;i=0;e--){if(a=o[e],a.type==="link_close"){for(e--;o[e].level!==a.level&&o[e].type!=="link_open";)e--;continue}if(a.type==="html_inline"&&(Md(a.content)&&p>0&&p--,Fd(a.content)&&p++),!(p>0)&&a.type==="text"&&t.md.linkify.test(a.content)){for(u=a.content,k=t.md.linkify.match(u),l=[],f=a.level,d=0,k.length>0&&k[0].index===0&&e>0&&o[e-1].type==="text_special"&&(k=k.slice(1)),c=0;cd&&(s=new t.Token("text","",0),s.content=u.slice(d,h),s.level=f,l.push(s)),s=new t.Token("link_open","a",1),s.attrs=[["href",w]],s.level=f++,s.markup="linkify",s.info="auto",l.push(s),s=new t.Token("text","",0),s.content=v,s.level=f,l.push(s),s=new t.Token("link_close","a",-1),s.level=--f,s.markup="linkify",s.info="auto",l.push(s),d=k[c].lastIndex);d{"use strict";var La=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/,qd=/\((c|tm|r)\)/i,Bd=/\((c|tm|r)\)/ig,Pd={c:"\xA9",r:"\xAE",tm:"\u2122"};function Od(n,t){return Pd[t.toLowerCase()]}function Rd(n){var t,e,i=0;for(t=n.length-1;t>=0;t--)e=n[t],e.type==="text"&&!i&&(e.content=e.content.replace(Bd,Od)),e.type==="link_open"&&e.info==="auto"&&i--,e.type==="link_close"&&e.info==="auto"&&i++}function Nd(n){var t,e,i=0;for(t=n.length-1;t>=0;t--)e=n[t],e.type==="text"&&!i&&La.test(e.content)&&(e.content=e.content.replace(/\+-/g,"\xB1").replace(/\.{2,}/g,"\u2026").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---(?=[^-]|$)/mg,"$1\u2014").replace(/(^|\s)--(?=\s|$)/mg,"$1\u2013").replace(/(^|[^-\s])--(?=[^-\s]|$)/mg,"$1\u2013")),e.type==="link_open"&&e.info==="auto"&&i--,e.type==="link_close"&&e.info==="auto"&&i++}Ta.exports=function(t){var e;if(t.md.options.typographer)for(e=t.tokens.length-1;e>=0;e--)t.tokens[e].type==="inline"&&(qd.test(t.tokens[e].content)&&Rd(t.tokens[e].children),La.test(t.tokens[e].content)&&Nd(t.tokens[e].children))}});var Oa=_((lv,Pa)=>{"use strict";var Ia=N().isWhiteSpace,Ma=N().isPunctChar,Fa=N().isMdAsciiPunct,zd=/['"]/,qa=/['"]/g,Ba="\u2019";function di(n,t,e){return n.slice(0,t)+e+n.slice(t+1)}function Hd(n,t){var e,i,r,o,s,a,l,c,u,h,d,f,p,m,w,v,b,k,x,E,y;for(x=[],e=0;e=0&&!(x[b].level<=l);b--);if(x.length=b+1,i.type==="text"){r=i.content,s=0,a=r.length;t:for(;s=0)u=r.charCodeAt(o.index-1);else for(b=e-1;b>=0&&!(n[b].type==="softbreak"||n[b].type==="hardbreak");b--)if(n[b].content){u=n[b].content.charCodeAt(n[b].content.length-1);break}if(h=32,s=48&&u<=57&&(v=w=!1),w&&v&&(w=d,v=f),!w&&!v){k&&(i.content=di(i.content,o.index,Ba));continue}if(v){for(b=x.length-1;b>=0&&(c=x[b],!(x[b].level=0;e--)t.tokens[e].type!=="inline"||!zd.test(t.tokens[e].content)||Hd(t.tokens[e].children,t)}});var Na=_((cv,Ra)=>{"use strict";Ra.exports=function(t){var e,i,r,o,s,a,l=t.tokens;for(e=0,i=l.length;e{"use strict";function ve(n,t,e){this.type=n,this.tag=t,this.attrs=null,this.map=null,this.nesting=e,this.level=0,this.children=null,this.content="",this.markup="",this.info="",this.meta=null,this.block=!1,this.hidden=!1}ve.prototype.attrIndex=function(t){var e,i,r;if(!this.attrs)return-1;for(e=this.attrs,i=0,r=e.length;i=0&&(i=this.attrs[e][1]),i};ve.prototype.attrJoin=function(t,e){var i=this.attrIndex(t);i<0?this.attrPush([t,e]):this.attrs[i][1]=this.attrs[i][1]+" "+e};za.exports=ve});var ja=_((hv,Ua)=>{"use strict";var Ud=pi();function Ha(n,t,e){this.src=n,this.env=e,this.tokens=[],this.inlineMode=!1,this.md=t}Ha.prototype.Token=Ud;Ua.exports=Ha});var Wa=_((dv,Va)=>{"use strict";var jd=hi(),Qr=[["normalize",ka()],["block",Ea()],["inline",Sa()],["linkify",Da()],["replacements",$a()],["smartquotes",Oa()],["text_join",Na()]];function to(){this.ruler=new jd;for(var n=0;n{"use strict";var eo=N().isSpace;function no(n,t){var e=n.bMarks[t]+n.tShift[t],i=n.eMarks[t];return n.src.slice(e,i)}function Ga(n){var t=[],e=0,i=n.length,r,o=!1,s=0,a="";for(r=n.charCodeAt(e);ei||(u=e+1,t.sCount[u]=4||(a=t.bMarks[u]+t.tShift[u],a>=t.eMarks[u])||(E=t.src.charCodeAt(a++),E!==124&&E!==45&&E!==58)||a>=t.eMarks[u]||(y=t.src.charCodeAt(a++),y!==124&&y!==45&&y!==58&&!eo(y))||E===45&&eo(y))return!1;for(;a=4||(h=Ga(s),h.length&&h[0]===""&&h.shift(),h.length&&h[h.length-1]===""&&h.pop(),d=h.length,d===0||d!==p.length))return!1;if(r)return!0;for(b=t.parentType,t.parentType="table",x=t.md.block.ruler.getRules("blockquote"),f=t.push("table_open","table",1),f.map=w=[e,0],f=t.push("thead_open","thead",1),f.map=[e,e+1],f=t.push("tr_open","tr",1),f.map=[e,e+1],l=0;l=4)break;for(h=Ga(s),h.length&&h[0]===""&&h.shift(),h.length&&h[h.length-1]===""&&h.pop(),u===e+2&&(f=t.push("tbody_open","tbody",1),f.map=v=[e+2,0]),f=t.push("tr_open","tr",1),f.map=[u,u+1],l=0;l{"use strict";Xa.exports=function(t,e,i){var r,o,s;if(t.sCount[e]-t.blkIndent<4)return!1;for(o=r=e+1;r=4){r++,o=r;continue}break}return t.line=o,s=t.push("code_block","code",0),s.content=t.getLines(e,o,4+t.blkIndent,!1)+` -`,s.map=[e,t.line],!0}});var Qa=_((mv,Ja)=>{"use strict";Ja.exports=function(t,e,i,r){var o,s,a,l,c,u,h,d=!1,f=t.bMarks[e]+t.tShift[e],p=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4||f+3>p||(o=t.src.charCodeAt(f),o!==126&&o!==96)||(c=f,f=t.skipChars(f,o),s=f-c,s<3)||(h=t.src.slice(c,f),a=t.src.slice(f,p),o===96&&a.indexOf(String.fromCharCode(o))>=0))return!1;if(r)return!0;for(l=e;l++,!(l>=i||(f=c=t.bMarks[l]+t.tShift[l],p=t.eMarks[l],f=4)&&(f=t.skipChars(f,o),!(f-c{"use strict";var Vd=N().isSpace;tl.exports=function(t,e,i,r){var o,s,a,l,c,u,h,d,f,p,m,w,v,b,k,x,E,y,A,D,M=t.lineMax,T=t.bMarks[e]+t.tShift[e],P=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4||t.src.charCodeAt(T)!==62)return!1;if(r)return!0;for(p=[],m=[],b=[],k=[],y=t.md.block.ruler.getRules("blockquote"),v=t.parentType,t.parentType="blockquote",d=e;d=P));d++){if(t.src.charCodeAt(T++)===62&&!D){for(l=t.sCount[d]+1,t.src.charCodeAt(T)===32?(T++,l++,o=!1,x=!0):t.src.charCodeAt(T)===9?(x=!0,(t.bsCount[d]+l)%4===3?(T++,l++,o=!1):o=!0):x=!1,f=l,p.push(t.bMarks[d]),t.bMarks[d]=T;T=P,m.push(t.bsCount[d]),t.bsCount[d]=t.sCount[d]+1+(x?1:0),b.push(t.sCount[d]),t.sCount[d]=f-l,k.push(t.tShift[d]),t.tShift[d]=T-t.bMarks[d];continue}if(u)break;for(E=!1,a=0,c=y.length;a",A.map=h=[e,0],t.md.block.tokenize(t,e,d),A=t.push("blockquote_close","blockquote",-1),A.markup=">",t.lineMax=M,t.parentType=v,h[1]=t.line,a=0;a{"use strict";var Wd=N().isSpace;nl.exports=function(t,e,i,r){var o,s,a,l,c=t.bMarks[e]+t.tShift[e],u=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4||(o=t.src.charCodeAt(c++),o!==42&&o!==45&&o!==95))return!1;for(s=1;c{"use strict";var sl=N().isSpace;function rl(n,t){var e,i,r,o;return i=n.bMarks[t]+n.tShift[t],r=n.eMarks[t],e=n.src.charCodeAt(i++),e!==42&&e!==45&&e!==43||i=o||(e=n.src.charCodeAt(r++),e<48||e>57))return-1;for(;;){if(r>=o)return-1;if(e=n.src.charCodeAt(r++),e>=48&&e<=57){if(r-i>=10)return-1;continue}if(e===41||e===46)break;return-1}return r=4||t.listIndent>=0&&t.sCount[$]-t.listIndent>=4&&t.sCount[$]=t.blkIndent&&(Ot=!0),(T=ol(t,$))>=0){if(h=!0,H=t.bMarks[$]+t.tShift[$],v=Number(t.src.slice(H,T-1)),Ot&&v!==1)return!1}else if((T=rl(t,$))>=0)h=!1;else return!1;if(Ot&&t.skipSpaces(T)>=t.eMarks[$])return!1;if(r)return!0;for(w=t.src.charCodeAt(T-1),m=t.tokens.length,h?(W=t.push("ordered_list_open","ol",1),v!==1&&(W.attrs=[["start",v]])):W=t.push("bullet_list_open","ul",1),W.map=p=[$,0],W.markup=String.fromCharCode(w),P=!1,et=t.md.block.ruler.getRules("list"),E=t.parentType,t.parentType="list";$=b?c=1:c=k-u,c>4&&(c=1),l=u+c,W=t.push("list_item_open","li",1),W.markup=String.fromCharCode(w),W.map=d=[$,0],h&&(W.info=t.src.slice(H,T-1)),D=t.tight,A=t.tShift[$],y=t.sCount[$],x=t.listIndent,t.listIndent=t.blkIndent,t.blkIndent=l,t.tight=!0,t.tShift[$]=s-t.bMarks[$],t.sCount[$]=k,s>=b&&t.isEmpty($+1)?t.line=Math.min(t.line+2,i):t.md.block.tokenize(t,$,i,!0),(!t.tight||P)&&(Rt=!1),P=t.line-$>1&&t.isEmpty(t.line-1),t.blkIndent=t.listIndent,t.listIndent=x,t.tShift[$]=A,t.sCount[$]=y,t.tight=D,W=t.push("list_item_close","li",-1),W.markup=String.fromCharCode(w),$=t.line,d[1]=$,$>=i||t.sCount[$]=4)break;for(U=!1,a=0,f=et.length;a{"use strict";var Kd=N().normalizeReference,fi=N().isSpace;cl.exports=function(t,e,i,r){var o,s,a,l,c,u,h,d,f,p,m,w,v,b,k,x,E=0,y=t.bMarks[e]+t.tShift[e],A=t.eMarks[e],D=e+1;if(t.sCount[e]-t.blkIndent>=4||t.src.charCodeAt(y)!==91)return!1;for(;++y3)&&!(t.sCount[D]<0)){for(b=!1,u=0,h=k.length;u"u"&&(t.env.references={}),typeof t.env.references[d]>"u"&&(t.env.references[d]={title:x,href:c}),t.parentType=p,t.line=e+E+1),!0)}});var dl=_((yv,hl)=>{"use strict";hl.exports=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","section","source","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]});var ro=_((xv,io)=>{"use strict";var Zd="[a-zA-Z_:][a-zA-Z0-9:._-]*",Xd="[^\"'=<>`\\x00-\\x20]+",Yd="'[^']*'",Jd='"[^"]*"',Qd="(?:"+Xd+"|"+Yd+"|"+Jd+")",tp="(?:\\s+"+Zd+"(?:\\s*=\\s*"+Qd+")?)",pl="<[A-Za-z][A-Za-z0-9\\-]*"+tp+"*\\s*\\/?>",fl="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",ep="|",np="<[?][\\s\\S]*?[?]>",ip="]*>",rp="",op=new RegExp("^(?:"+pl+"|"+fl+"|"+ep+"|"+np+"|"+ip+"|"+rp+")"),sp=new RegExp("^(?:"+pl+"|"+fl+")");io.exports.HTML_TAG_RE=op;io.exports.HTML_OPEN_CLOSE_TAG_RE=sp});var gl=_((kv,ml)=>{"use strict";var ap=dl(),lp=ro().HTML_OPEN_CLOSE_TAG_RE,we=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,!0],[/^/,!0],[/^<\?/,/\?>/,!0],[/^/,!0],[/^/,!0],[new RegExp("^|$))","i"),/^$/,!0],[new RegExp(lp.source+"\\s*$"),/^$/,!1]];ml.exports=function(t,e,i,r){var o,s,a,l,c=t.bMarks[e]+t.tShift[e],u=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4||!t.md.options.html||t.src.charCodeAt(c)!==60)return!1;for(l=t.src.slice(c,u),o=0;o{"use strict";var bl=N().isSpace;vl.exports=function(t,e,i,r){var o,s,a,l,c=t.bMarks[e]+t.tShift[e],u=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4||(o=t.src.charCodeAt(c),o!==35||c>=u))return!1;for(s=1,o=t.src.charCodeAt(++c);o===35&&c6||cc&&bl(t.src.charCodeAt(a-1))&&(u=a),t.line=e+1,l=t.push("heading_open","h"+String(s),1),l.markup="########".slice(0,s),l.map=[e,t.line],l=t.push("inline","",0),l.content=t.src.slice(c,u).trim(),l.map=[e,t.line],l.children=[],l=t.push("heading_close","h"+String(s),-1),l.markup="########".slice(0,s)),!0)}});var xl=_((Ev,yl)=>{"use strict";yl.exports=function(t,e,i){var r,o,s,a,l,c,u,h,d,f=e+1,p,m=t.md.block.ruler.getRules("paragraph");if(t.sCount[e]-t.blkIndent>=4)return!1;for(p=t.parentType,t.parentType="paragraph";f3)){if(t.sCount[f]>=t.blkIndent&&(c=t.bMarks[f]+t.tShift[f],u=t.eMarks[f],c=u)))){h=d===61?1:2;break}if(!(t.sCount[f]<0)){for(o=!1,s=0,a=m.length;s{"use strict";kl.exports=function(t,e,i){var r,o,s,a,l,c,u=e+1,h=t.md.block.ruler.getRules("paragraph");for(c=t.parentType,t.parentType="paragraph";u3)&&!(t.sCount[u]<0)){for(o=!1,s=0,a=h.length;s{"use strict";var El=pi(),mi=N().isSpace;function Lt(n,t,e,i){var r,o,s,a,l,c,u,h;for(this.src=n,this.md=t,this.env=e,this.tokens=i,this.bMarks=[],this.eMarks=[],this.tShift=[],this.sCount=[],this.bsCount=[],this.blkIndent=0,this.line=0,this.lineMax=0,this.tight=!1,this.ddIndent=-1,this.listIndent=-1,this.parentType="root",this.level=0,this.result="",o=this.src,h=!1,s=a=c=u=0,l=o.length;a0&&this.level++,this.tokens.push(i),i};Lt.prototype.isEmpty=function(t){return this.bMarks[t]+this.tShift[t]>=this.eMarks[t]};Lt.prototype.skipEmptyLines=function(t){for(var e=this.lineMax;te;)if(!mi(this.src.charCodeAt(--t)))return t+1;return t};Lt.prototype.skipChars=function(t,e){for(var i=this.src.length;ti;)if(e!==this.src.charCodeAt(--t))return t+1;return t};Lt.prototype.getLines=function(t,e,i,r){var o,s,a,l,c,u,h,d=t;if(t>=e)return"";for(u=new Array(e-t),o=0;di?u[o]=new Array(s-i+1).join(" ")+this.src.slice(l,c):u[o]=this.src.slice(l,c)}return u.join("")};Lt.prototype.Token=El;_l.exports=Lt});var Dl=_((Av,Al)=>{"use strict";var cp=hi(),gi=[["table",Za(),["paragraph","reference"]],["code",Ya()],["fence",Qa(),["paragraph","reference","blockquote","list"]],["blockquote",el(),["paragraph","reference","blockquote","list"]],["hr",il(),["paragraph","reference","blockquote","list"]],["list",ll(),["paragraph","reference","blockquote"]],["reference",ul()],["html_block",gl(),["paragraph","reference","blockquote"]],["heading",wl(),["paragraph","reference","blockquote"]],["lheading",xl()],["paragraph",Cl()]];function bi(){this.ruler=new cp;for(var n=0;n=e||n.sCount[l]=u){n.line=e;break}for(o=n.line,r=0;r=n.line)throw new Error("block rule didn't increment state.line");break}if(!i)throw new Error("none of the block rules matched");n.tight=!c,n.isEmpty(n.line-1)&&(c=!0),l=n.line,l{"use strict";function up(n){switch(n){case 10:case 33:case 35:case 36:case 37:case 38:case 42:case 43:case 45:case 58:case 60:case 61:case 62:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 125:case 126:return!0;default:return!1}}Ll.exports=function(t,e){for(var i=t.pos;i{"use strict";var hp=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;$l.exports=function(t,e){var i,r,o,s,a,l,c,u;return!t.md.options.linkify||t.linkLevel>0||(i=t.pos,r=t.posMax,i+3>r)||t.src.charCodeAt(i)!==58||t.src.charCodeAt(i+1)!==47||t.src.charCodeAt(i+2)!==47||(o=t.pending.match(hp),!o)||(s=o[1],a=t.md.linkify.matchAtStart(t.src.slice(i-s.length)),!a)||(l=a.url,l.length<=s.length)||(l=l.replace(/\*+$/,""),c=t.md.normalizeLink(l),!t.md.validateLink(c))?!1:(e||(t.pending=t.pending.slice(0,-s.length),u=t.push("link_open","a",1),u.attrs=[["href",c]],u.markup="linkify",u.info="auto",u=t.push("text","",0),u.content=t.md.normalizeLinkText(l),u=t.push("link_close","a",-1),u.markup="linkify",u.info="auto"),t.pos+=l.length-s.length,!0)}});var Fl=_((Tv,Ml)=>{"use strict";var dp=N().isSpace;Ml.exports=function(t,e){var i,r,o,s=t.pos;if(t.src.charCodeAt(s)!==10)return!1;if(i=t.pending.length-1,r=t.posMax,!e)if(i>=0&&t.pending.charCodeAt(i)===32)if(i>=1&&t.pending.charCodeAt(i-1)===32){for(o=i-1;o>=1&&t.pending.charCodeAt(o-1)===32;)o--;t.pending=t.pending.slice(0,o),t.push("hardbreak","br",0)}else t.pending=t.pending.slice(0,-1),t.push("softbreak","br",0);else t.push("softbreak","br",0);for(s++;s{"use strict";var pp=N().isSpace,so=[];for(oo=0;oo<256;oo++)so.push(0);var oo;"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach(function(n){so[n.charCodeAt(0)]=1});ql.exports=function(t,e){var i,r,o,s,a,l=t.pos,c=t.posMax;if(t.src.charCodeAt(l)!==92||(l++,l>=c))return!1;if(i=t.src.charCodeAt(l),i===10){for(e||t.push("hardbreak","br",0),l++;l=55296&&i<=56319&&l+1=56320&&r<=57343&&(s+=t.src[l+1],l++)),o="\\"+s,e||(a=t.push("text_special","",0),i<256&&so[i]!==0?a.content=s:a.content=o,a.markup=o,a.info="escape"),t.pos=l+1,!0}});var Ol=_((Iv,Pl)=>{"use strict";Pl.exports=function(t,e){var i,r,o,s,a,l,c,u,h=t.pos,d=t.src.charCodeAt(h);if(d!==96)return!1;for(i=h,h++,r=t.posMax;h{"use strict";ao.exports.tokenize=function(t,e){var i,r,o,s,a,l=t.pos,c=t.src.charCodeAt(l);if(e||c!==126||(r=t.scanDelims(t.pos,!0),s=r.length,a=String.fromCharCode(c),s<2))return!1;for(s%2&&(o=t.push("text","",0),o.content=a,s--),i=0;i{"use strict";co.exports.tokenize=function(t,e){var i,r,o,s=t.pos,a=t.src.charCodeAt(s);if(e||a!==95&&a!==42)return!1;for(r=t.scanDelims(t.pos,a===42),i=0;i=0;e--)i=t[e],!(i.marker!==95&&i.marker!==42)&&i.end!==-1&&(r=t[i.end],a=e>0&&t[e-1].end===i.end+1&&t[e-1].marker===i.marker&&t[e-1].token===i.token-1&&t[i.end+1].token===r.token+1,s=String.fromCharCode(i.marker),o=n.tokens[i.token],o.type=a?"strong_open":"em_open",o.tag=a?"strong":"em",o.nesting=1,o.markup=a?s+s:s,o.content="",o=n.tokens[r.token],o.type=a?"strong_close":"em_close",o.tag=a?"strong":"em",o.nesting=-1,o.markup=a?s+s:s,o.content="",a&&(n.tokens[t[e-1].token].content="",n.tokens[t[i.end+1].token].content="",e--))}co.exports.postProcess=function(t){var e,i=t.tokens_meta,r=t.tokens_meta.length;for(Nl(t,t.delimiters),e=0;e{"use strict";var fp=N().normalizeReference,ho=N().isSpace;zl.exports=function(t,e){var i,r,o,s,a,l,c,u,h,d="",f="",p=t.pos,m=t.posMax,w=t.pos,v=!0;if(t.src.charCodeAt(t.pos)!==91||(a=t.pos+1,s=t.md.helpers.parseLinkLabel(t,t.pos,!0),s<0))return!1;if(l=s+1,l=m)return!1;if(w=l,c=t.md.helpers.parseLinkDestination(t.src,l,t.posMax),c.ok){for(d=t.md.normalizeLink(c.str),t.md.validateLink(d)?l=c.pos:d="",w=l;l=m||t.src.charCodeAt(l)!==41)&&(v=!0),l++}if(v){if(typeof t.env.references>"u")return!1;if(l=0?o=t.src.slice(w,l++):l=s+1):l=s+1,o||(o=t.src.slice(a,s)),u=t.env.references[fp(o)],!u)return t.pos=p,!1;d=u.href,f=u.title}return e||(t.pos=a,t.posMax=s,h=t.push("link_open","a",1),h.attrs=i=[["href",d]],f&&i.push(["title",f]),t.linkLevel++,t.md.inline.tokenize(t),t.linkLevel--,h=t.push("link_close","a",-1)),t.pos=l,t.posMax=m,!0}});var jl=_((Bv,Ul)=>{"use strict";var mp=N().normalizeReference,po=N().isSpace;Ul.exports=function(t,e){var i,r,o,s,a,l,c,u,h,d,f,p,m,w="",v=t.pos,b=t.posMax;if(t.src.charCodeAt(t.pos)!==33||t.src.charCodeAt(t.pos+1)!==91||(l=t.pos+2,a=t.md.helpers.parseLinkLabel(t,t.pos+1,!1),a<0))return!1;if(c=a+1,c=b)return!1;for(m=c,h=t.md.helpers.parseLinkDestination(t.src,c,t.posMax),h.ok&&(w=t.md.normalizeLink(h.str),t.md.validateLink(w)?c=h.pos:w=""),m=c;c=b||t.src.charCodeAt(c)!==41)return t.pos=v,!1;c++}else{if(typeof t.env.references>"u")return!1;if(c=0?s=t.src.slice(m,c++):c=a+1):c=a+1,s||(s=t.src.slice(l,a)),u=t.env.references[mp(s)],!u)return t.pos=v,!1;w=u.href,d=u.title}return e||(o=t.src.slice(l,a),t.md.inline.parse(o,t.md,t.env,p=[]),f=t.push("image","img",0),f.attrs=i=[["src",w],["alt",""]],f.children=p,f.content=o,d&&i.push(["title",d])),t.pos=c,t.posMax=b,!0}});var Wl=_((Pv,Vl)=>{"use strict";var gp=/^([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)$/,bp=/^([a-zA-Z][a-zA-Z0-9+.\-]{1,31}):([^<>\x00-\x20]*)$/;Vl.exports=function(t,e){var i,r,o,s,a,l,c=t.pos;if(t.src.charCodeAt(c)!==60)return!1;for(a=t.pos,l=t.posMax;;){if(++c>=l||(s=t.src.charCodeAt(c),s===60))return!1;if(s===62)break}return i=t.src.slice(a+1,c),bp.test(i)?(r=t.md.normalizeLink(i),t.md.validateLink(r)?(e||(o=t.push("link_open","a",1),o.attrs=[["href",r]],o.markup="autolink",o.info="auto",o=t.push("text","",0),o.content=t.md.normalizeLinkText(i),o=t.push("link_close","a",-1),o.markup="autolink",o.info="auto"),t.pos+=i.length+2,!0):!1):gp.test(i)?(r=t.md.normalizeLink("mailto:"+i),t.md.validateLink(r)?(e||(o=t.push("link_open","a",1),o.attrs=[["href",r]],o.markup="autolink",o.info="auto",o=t.push("text","",0),o.content=t.md.normalizeLinkText(i),o=t.push("link_close","a",-1),o.markup="autolink",o.info="auto"),t.pos+=i.length+2,!0):!1):!1}});var Kl=_((Ov,Gl)=>{"use strict";var vp=ro().HTML_TAG_RE;function wp(n){return/^\s]/i.test(n)}function yp(n){return/^<\/a\s*>/i.test(n)}function xp(n){var t=n|32;return t>=97&&t<=122}Gl.exports=function(t,e){var i,r,o,s,a=t.pos;return!t.md.options.html||(o=t.posMax,t.src.charCodeAt(a)!==60||a+2>=o)||(i=t.src.charCodeAt(a+1),i!==33&&i!==63&&i!==47&&!xp(i))||(r=t.src.slice(a).match(vp),!r)?!1:(e||(s=t.push("html_inline","",0),s.content=r[0],wp(s.content)&&t.linkLevel++,yp(s.content)&&t.linkLevel--),t.pos+=r[0].length,!0)}});var Jl=_((Rv,Yl)=>{"use strict";var Zl=Kr(),kp=N().has,Cp=N().isValidEntityCode,Xl=N().fromCodePoint,Ep=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i,_p=/^&([a-z][a-z0-9]{1,31});/i;Yl.exports=function(t,e){var i,r,o,s,a=t.pos,l=t.posMax;if(t.src.charCodeAt(a)!==38||a+1>=l)return!1;if(i=t.src.charCodeAt(a+1),i===35){if(o=t.src.slice(a).match(Ep),o)return e||(r=o[1][0].toLowerCase()==="x"?parseInt(o[1].slice(1),16):parseInt(o[1],10),s=t.push("text_special","",0),s.content=Cp(r)?Xl(r):Xl(65533),s.markup=o[0],s.info="entity"),t.pos+=o[0].length,!0}else if(o=t.src.slice(a).match(_p),o&&kp(Zl,o[1]))return e||(s=t.push("text_special","",0),s.content=Zl[o[1]],s.markup=o[0],s.info="entity"),t.pos+=o[0].length,!0;return!1}});var ec=_((Nv,tc)=>{"use strict";function Ql(n){var t,e,i,r,o,s,a,l,c={},u=n.length;if(u){var h=0,d=-2,f=[];for(t=0;to;e-=f[e]+1)if(r=n[e],r.marker===i.marker&&r.open&&r.end<0&&(a=!1,(r.close||i.open)&&(r.length+i.length)%3===0&&(r.length%3!==0||i.length%3!==0)&&(a=!0),!a)){l=e>0&&!n[e-1].open?f[e-1]+1:0,f[t]=t-e+l,f[e]=l,i.open=!1,r.end=t,r.close=!1,s=-1,d=-2;break}s!==-1&&(c[i.marker][(i.open?3:0)+(i.length||0)%3]=s)}}}tc.exports=function(t){var e,i=t.tokens_meta,r=t.tokens_meta.length;for(Ql(t.delimiters),e=0;e{"use strict";nc.exports=function(t){var e,i,r=0,o=t.tokens,s=t.tokens.length;for(e=i=0;e0&&r++,o[e].type==="text"&&e+1{"use strict";var fo=pi(),rc=N().isWhiteSpace,oc=N().isPunctChar,sc=N().isMdAsciiPunct;function Xe(n,t,e,i){this.src=n,this.env=e,this.md=t,this.tokens=i,this.tokens_meta=Array(i.length),this.pos=0,this.posMax=this.src.length,this.level=0,this.pending="",this.pendingLevel=0,this.cache={},this.delimiters=[],this._prev_delimiters=[],this.backticks={},this.backticksScanned=!1,this.linkLevel=0}Xe.prototype.pushPending=function(){var n=new fo("text","",0);return n.content=this.pending,n.level=this.pendingLevel,this.tokens.push(n),this.pending="",n};Xe.prototype.push=function(n,t,e){this.pending&&this.pushPending();var i=new fo(n,t,e),r=null;return e<0&&(this.level--,this.delimiters=this._prev_delimiters.pop()),i.level=this.level,e>0&&(this.level++,this._prev_delimiters.push(this.delimiters),this.delimiters=[],r={delimiters:this.delimiters}),this.pendingLevel=this.level,this.tokens.push(i),this.tokens_meta.push(r),i};Xe.prototype.scanDelims=function(n,t){var e=n,i,r,o,s,a,l,c,u,h,d=!0,f=!0,p=this.posMax,m=this.src.charCodeAt(n);for(i=n>0?this.src.charCodeAt(n-1):32;e{"use strict";var cc=hi(),mo=[["text",Tl()],["linkify",Il()],["newline",Fl()],["escape",Bl()],["backticks",Ol()],["strikethrough",lo().tokenize],["emphasis",uo().tokenize],["link",Hl()],["image",jl()],["autolink",Wl()],["html_inline",Kl()],["entity",Jl()]],go=[["balance_pairs",ec()],["strikethrough",lo().postProcess],["emphasis",uo().postProcess],["fragments_join",ic()]];function Ye(){var n;for(this.ruler=new cc,n=0;n=n.pos)throw new Error("inline rule didn't increment state.pos");break}}else n.pos=n.posMax;t||n.pos++,a[i]=n.pos};Ye.prototype.tokenize=function(n){for(var t,e,i,r=this.ruler.getRules(""),o=r.length,s=n.posMax,a=n.md.options.maxNesting;n.pos=n.pos)throw new Error("inline rule didn't increment state.pos");break}}if(t){if(n.pos>=s)break;continue}n.pending+=n.src[n.pos++]}n.pending&&n.pushPending()};Ye.prototype.parse=function(n,t,e,i){var r,o,s,a=new this.State(n,t,e,i);for(this.tokenize(a),o=this.ruler2.getRules(""),s=o.length,r=0;r{"use strict";dc.exports=function(n){var t={};n=n||{},t.src_Any=Xr().source,t.src_Cc=Yr().source,t.src_Z=Jr().source,t.src_P=si().source,t.src_ZPCc=[t.src_Z,t.src_P,t.src_Cc].join("|"),t.src_ZCc=[t.src_Z,t.src_Cc].join("|");var e="[><\uFF5C]";return t.src_pseudo_letter="(?:(?!"+e+"|"+t.src_ZPCc+")"+t.src_Any+")",t.src_ip4="(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",t.src_auth="(?:(?:(?!"+t.src_ZCc+"|[@/\\[\\]()]).)+@)?",t.src_port="(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?",t.src_host_terminator="(?=$|"+e+"|"+t.src_ZPCc+")(?!"+(n["---"]?"-(?!--)|":"-|")+"_|:\\d|\\.-|\\.(?!$|"+t.src_ZPCc+"))",t.src_path="(?:[/?#](?:(?!"+t.src_ZCc+"|"+e+`|[()[\\]{}.,"'?!\\-;]).|\\[(?:(?!`+t.src_ZCc+"|\\]).)*\\]|\\((?:(?!"+t.src_ZCc+"|[)]).)*\\)|\\{(?:(?!"+t.src_ZCc+'|[}]).)*\\}|\\"(?:(?!'+t.src_ZCc+`|["]).)+\\"|\\'(?:(?!`+t.src_ZCc+"|[']).)+\\'|\\'(?="+t.src_pseudo_letter+"|[-])|\\.{2,}[a-zA-Z0-9%/&]|\\.(?!"+t.src_ZCc+"|[.]|$)|"+(n["---"]?"\\-(?!--(?:[^-]|$))(?:-*)|":"\\-+|")+",(?!"+t.src_ZCc+"|$)|;(?!"+t.src_ZCc+"|$)|\\!+(?!"+t.src_ZCc+"|[!]|$)|\\?(?!"+t.src_ZCc+"|[?]|$))+|\\/)?",t.src_email_name='[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]*',t.src_xn="xn--[a-z0-9\\-]{1,59}",t.src_domain_root="(?:"+t.src_xn+"|"+t.src_pseudo_letter+"{1,63})",t.src_domain="(?:"+t.src_xn+"|(?:"+t.src_pseudo_letter+")|(?:"+t.src_pseudo_letter+"(?:-|"+t.src_pseudo_letter+"){0,61}"+t.src_pseudo_letter+"))",t.src_host="(?:(?:(?:(?:"+t.src_domain+")\\.)*"+t.src_domain+"))",t.tpl_host_fuzzy="(?:"+t.src_ip4+"|(?:(?:(?:"+t.src_domain+")\\.)+(?:%TLDS%)))",t.tpl_host_no_ip_fuzzy="(?:(?:(?:"+t.src_domain+")\\.)+(?:%TLDS%))",t.src_host_strict=t.src_host+t.src_host_terminator,t.tpl_host_fuzzy_strict=t.tpl_host_fuzzy+t.src_host_terminator,t.src_host_port_strict=t.src_host+t.src_port+t.src_host_terminator,t.tpl_host_port_fuzzy_strict=t.tpl_host_fuzzy+t.src_port+t.src_host_terminator,t.tpl_host_port_no_ip_fuzzy_strict=t.tpl_host_no_ip_fuzzy+t.src_port+t.src_host_terminator,t.tpl_host_fuzzy_test="localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:"+t.src_ZPCc+"|>|$))",t.tpl_email_fuzzy="(^|"+e+'|"|\\(|'+t.src_ZCc+")("+t.src_email_name+"@"+t.tpl_host_fuzzy_strict+")",t.tpl_link_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`|\uFF5C]|"+t.src_ZPCc+"))((?![$+<=>^`|\uFF5C])"+t.tpl_host_port_fuzzy_strict+t.src_path+")",t.tpl_link_no_ip_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`|\uFF5C]|"+t.src_ZPCc+"))((?![$+<=>^`|\uFF5C])"+t.tpl_host_port_no_ip_fuzzy_strict+t.src_path+")",t}});var vc=_((Vv,bc)=>{"use strict";function bo(n){var t=Array.prototype.slice.call(arguments,1);return t.forEach(function(e){e&&Object.keys(e).forEach(function(i){n[i]=e[i]})}),n}function wi(n){return Object.prototype.toString.call(n)}function Sp(n){return wi(n)==="[object String]"}function Ap(n){return wi(n)==="[object Object]"}function Dp(n){return wi(n)==="[object RegExp]"}function fc(n){return wi(n)==="[object Function]"}function Lp(n){return n.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}var gc={fuzzyLink:!0,fuzzyEmail:!0,fuzzyIP:!1};function Tp(n){return Object.keys(n||{}).reduce(function(t,e){return t||gc.hasOwnProperty(e)},!1)}var $p={"http:":{validate:function(n,t,e){var i=n.slice(t);return e.re.http||(e.re.http=new RegExp("^\\/\\/"+e.re.src_auth+e.re.src_host_port_strict+e.re.src_path,"i")),e.re.http.test(i)?i.match(e.re.http)[0].length:0}},"https:":"http:","ftp:":"http:","//":{validate:function(n,t,e){var i=n.slice(t);return e.re.no_http||(e.re.no_http=new RegExp("^"+e.re.src_auth+"(?:localhost|(?:(?:"+e.re.src_domain+")\\.)+"+e.re.src_domain_root+")"+e.re.src_port+e.re.src_host_terminator+e.re.src_path,"i")),e.re.no_http.test(i)?t>=3&&n[t-3]===":"||t>=3&&n[t-3]==="/"?0:i.match(e.re.no_http)[0].length:0}},"mailto:":{validate:function(n,t,e){var i=n.slice(t);return e.re.mailto||(e.re.mailto=new RegExp("^"+e.re.src_email_name+"@"+e.re.src_host_strict,"i")),e.re.mailto.test(i)?i.match(e.re.mailto)[0].length:0}}},Ip="a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]",Mp="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|\u0440\u0444".split("|");function Fp(n){n.__index__=-1,n.__text_cache__=""}function qp(n){return function(t,e){var i=t.slice(e);return n.test(i)?i.match(n)[0].length:0}}function mc(){return function(n,t){t.normalize(n)}}function vi(n){var t=n.re=pc()(n.__opts__),e=n.__tlds__.slice();n.onCompile(),n.__tlds_replaced__||e.push(Ip),e.push(t.src_xn),t.src_tlds=e.join("|");function i(a){return a.replace("%TLDS%",t.src_tlds)}t.email_fuzzy=RegExp(i(t.tpl_email_fuzzy),"i"),t.link_fuzzy=RegExp(i(t.tpl_link_fuzzy),"i"),t.link_no_ip_fuzzy=RegExp(i(t.tpl_link_no_ip_fuzzy),"i"),t.host_fuzzy_test=RegExp(i(t.tpl_host_fuzzy_test),"i");var r=[];n.__compiled__={};function o(a,l){throw new Error('(LinkifyIt) Invalid schema "'+a+'": '+l)}Object.keys(n.__schemas__).forEach(function(a){var l=n.__schemas__[a];if(l!==null){var c={validate:null,link:null};if(n.__compiled__[a]=c,Ap(l)){Dp(l.validate)?c.validate=qp(l.validate):fc(l.validate)?c.validate=l.validate:o(a,l),fc(l.normalize)?c.normalize=l.normalize:l.normalize?o(a,l):c.normalize=mc();return}if(Sp(l)){r.push(a);return}o(a,l)}}),r.forEach(function(a){n.__compiled__[n.__schemas__[a]]&&(n.__compiled__[a].validate=n.__compiled__[n.__schemas__[a]].validate,n.__compiled__[a].normalize=n.__compiled__[n.__schemas__[a]].normalize)}),n.__compiled__[""]={validate:null,normalize:mc()};var s=Object.keys(n.__compiled__).filter(function(a){return a.length>0&&n.__compiled__[a]}).map(Lp).join("|");n.re.schema_test=RegExp("(^|(?!_)(?:[><\uFF5C]|"+t.src_ZPCc+"))("+s+")","i"),n.re.schema_search=RegExp("(^|(?!_)(?:[><\uFF5C]|"+t.src_ZPCc+"))("+s+")","ig"),n.re.schema_at_start=RegExp("^"+n.re.schema_search.source,"i"),n.re.pretest=RegExp("("+n.re.schema_test.source+")|("+n.re.host_fuzzy_test.source+")|@","i"),Fp(n)}function Bp(n,t){var e=n.__index__,i=n.__last_index__,r=n.__text_cache__.slice(e,i);this.schema=n.__schema__.toLowerCase(),this.index=e+t,this.lastIndex=i+t,this.raw=r,this.text=r,this.url=r}function vo(n,t){var e=new Bp(n,t);return n.__compiled__[e.schema].normalize(e,n),e}function gt(n,t){if(!(this instanceof gt))return new gt(n,t);t||Tp(n)&&(t=n,n={}),this.__opts__=bo({},gc,t),this.__index__=-1,this.__last_index__=-1,this.__schema__="",this.__text_cache__="",this.__schemas__=bo({},$p,n),this.__compiled__={},this.__tlds__=Mp,this.__tlds_replaced__=!1,this.re={},vi(this)}gt.prototype.add=function(t,e){return this.__schemas__[t]=e,vi(this),this};gt.prototype.set=function(t){return this.__opts__=bo(this.__opts__,t),this};gt.prototype.test=function(t){if(this.__text_cache__=t,this.__index__=-1,!t.length)return!1;var e,i,r,o,s,a,l,c,u;if(this.re.schema_test.test(t)){for(l=this.re.schema_search,l.lastIndex=0;(e=l.exec(t))!==null;)if(o=this.testSchemaAt(t,e[2],l.lastIndex),o){this.__schema__=e[2],this.__index__=e.index+e[1].length,this.__last_index__=e.index+e[0].length+o;break}}return this.__opts__.fuzzyLink&&this.__compiled__["http:"]&&(c=t.search(this.re.host_fuzzy_test),c>=0&&(this.__index__<0||c=0&&(r=t.match(this.re.email_fuzzy))!==null&&(s=r.index+r[1].length,a=r.index+r[0].length,(this.__index__<0||sthis.__last_index__)&&(this.__schema__="mailto:",this.__index__=s,this.__last_index__=a))),this.__index__>=0};gt.prototype.pretest=function(t){return this.re.pretest.test(t)};gt.prototype.testSchemaAt=function(t,e,i){return this.__compiled__[e.toLowerCase()]?this.__compiled__[e.toLowerCase()].validate(t,i,this):0};gt.prototype.match=function(t){var e=0,i=[];this.__index__>=0&&this.__text_cache__===t&&(i.push(vo(this,e)),e=this.__last_index__);for(var r=e?t.slice(e):t;this.test(r);)i.push(vo(this,e)),r=r.slice(this.__last_index__),e+=this.__last_index__;return i.length?i:null};gt.prototype.matchAtStart=function(t){if(this.__text_cache__=t,this.__index__=-1,!t.length)return null;var e=this.re.schema_at_start.exec(t);if(!e)return null;var i=this.testSchemaAt(t,e[2],e[0].length);return i?(this.__schema__=e[2],this.__index__=e.index+e[1].length,this.__last_index__=e.index+e[0].length+i,vo(this,0)):null};gt.prototype.tlds=function(t,e){return t=Array.isArray(t)?t:[t],e?(this.__tlds__=this.__tlds__.concat(t).sort().filter(function(i,r,o){return i!==o[r-1]}).reverse(),vi(this),this):(this.__tlds__=t.slice(),this.__tlds_replaced__=!0,vi(this),this)};gt.prototype.normalize=function(t){t.schema||(t.url="http://"+t.url),t.schema==="mailto:"&&!/^mailto:/i.test(t.url)&&(t.url="mailto:"+t.url)};gt.prototype.onCompile=function(){};bc.exports=gt});var Sc={};Ae(Sc,{decode:()=>ko,default:()=>jp,encode:()=>Co,toASCII:()=>_c,toUnicode:()=>Ec,ucs2decode:()=>xo,ucs2encode:()=>kc});function Vt(n){throw new RangeError(Np[n])}function zp(n,t){let e=[],i=n.length;for(;i--;)e[i]=t(n[i]);return e}function xc(n,t){let e=n.split("@"),i="";e.length>1&&(i=e[0]+"@",n=e[1]),n=n.replace(Rp,".");let r=n.split("."),o=zp(r,t).join(".");return i+o}function xo(n){let t=[],e=0,i=n.length;for(;e=55296&&r<=56319&&e{"use strict";yc="-",Pp=/^xn--/,Op=/[^\0-\x7F]/,Rp=/[\x2E\u3002\uFF0E\uFF61]/g,Np={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},wo=36-1,Tt=Math.floor,yo=String.fromCharCode;kc=n=>String.fromCodePoint(...n),Hp=function(n){return n>=48&&n<58?26+(n-48):n>=65&&n<91?n-65:n>=97&&n<123?n-97:36},wc=function(n,t){return n+22+75*(n<26)-((t!=0)<<5)},Cc=function(n,t,e){let i=0;for(n=e?Tt(n/700):n>>1,n+=Tt(n/t);n>wo*26>>1;i+=36)n=Tt(n/wo);return Tt(i+(wo+1)*n/(n+38))},ko=function(n){let t=[],e=n.length,i=0,r=128,o=72,s=n.lastIndexOf(yc);s<0&&(s=0);for(let a=0;a=128&&Vt("not-basic"),t.push(n.charCodeAt(a));for(let a=s>0?s+1:0;a=e&&Vt("invalid-input");let d=Hp(n.charCodeAt(a++));d>=36&&Vt("invalid-input"),d>Tt((2147483647-i)/u)&&Vt("overflow"),i+=d*u;let f=h<=o?1:h>=o+26?26:h-o;if(dTt(2147483647/p)&&Vt("overflow"),u*=p}let c=t.length+1;o=Cc(i-l,c,l==0),Tt(i/c)>2147483647-r&&Vt("overflow"),r+=Tt(i/c),i%=c,t.splice(i++,0,r)}return String.fromCodePoint(...t)},Co=function(n){let t=[];n=xo(n);let e=n.length,i=128,r=0,o=72;for(let l of n)l<128&&t.push(yo(l));let s=t.length,a=s;for(s&&t.push(yc);a=i&&uTt((2147483647-r)/c)&&Vt("overflow"),r+=(l-i)*c,i=l;for(let u of n)if(u2147483647&&Vt("overflow"),u===i){let h=r;for(let d=36;;d+=36){let f=d<=o?1:d>=o+26?26:d-o;if(h{"use strict";Dc.exports={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"\u201C\u201D\u2018\u2019",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}}});var $c=_((Gv,Tc)=>{"use strict";Tc.exports={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"\u201C\u201D\u2018\u2019",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["paragraph"]},inline:{rules:["text"],rules2:["balance_pairs","fragments_join"]}}}});var Mc=_((Kv,Ic)=>{"use strict";Ic.exports={options:{html:!0,xhtmlOut:!0,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"\u201C\u201D\u2018\u2019",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["blockquote","code","fence","heading","hr","html_block","lheading","list","reference","paragraph"]},inline:{rules:["autolink","backticks","emphasis","entity","escape","html_inline","image","link","newline","text"],rules2:["balance_pairs","emphasis","fragments_join"]}}}});var Pc=_((Zv,Bc)=>{"use strict";var Je=N(),Vp=ba(),Wp=wa(),Gp=Wa(),Kp=Dl(),Zp=hc(),Xp=vc(),Qt=Zr(),Fc=(Ac(),Gu(Sc)),Yp={default:Lc(),zero:$c(),commonmark:Mc()},Jp=/^(vbscript|javascript|file|data):/,Qp=/^data:image\/(gif|png|jpeg|webp);/;function tf(n){var t=n.trim().toLowerCase();return Jp.test(t)?!!Qp.test(t):!0}var qc=["http:","https:","mailto:"];function ef(n){var t=Qt.parse(n,!0);if(t.hostname&&(!t.protocol||qc.indexOf(t.protocol)>=0))try{t.hostname=Fc.toASCII(t.hostname)}catch{}return Qt.encode(Qt.format(t))}function nf(n){var t=Qt.parse(n,!0);if(t.hostname&&(!t.protocol||qc.indexOf(t.protocol)>=0))try{t.hostname=Fc.toUnicode(t.hostname)}catch{}return Qt.decode(Qt.format(t),Qt.decode.defaultChars+"%")}function bt(n,t){if(!(this instanceof bt))return new bt(n,t);t||Je.isString(n)||(t=n||{},n="default"),this.inline=new Zp,this.block=new Kp,this.core=new Gp,this.renderer=new Wp,this.linkify=new Xp,this.validateLink=tf,this.normalizeLink=ef,this.normalizeLinkText=nf,this.utils=Je,this.helpers=Je.assign({},Vp),this.options={},this.configure(n),t&&this.set(t)}bt.prototype.set=function(n){return Je.assign(this.options,n),this};bt.prototype.configure=function(n){var t=this,e;if(Je.isString(n)&&(e=n,n=Yp[e],!n))throw new Error('Wrong `markdown-it` preset "'+e+'", check name');if(!n)throw new Error("Wrong `markdown-it` preset, can't be empty");return n.options&&t.set(n.options),n.components&&Object.keys(n.components).forEach(function(i){n.components[i].rules&&t[i].ruler.enableOnly(n.components[i].rules),n.components[i].rules2&&t[i].ruler2.enableOnly(n.components[i].rules2)}),this};bt.prototype.enable=function(n,t){var e=[];Array.isArray(n)||(n=[n]),["core","block","inline"].forEach(function(r){e=e.concat(this[r].ruler.enable(n,!0))},this),e=e.concat(this.inline.ruler2.enable(n,!0));var i=n.filter(function(r){return e.indexOf(r)<0});if(i.length&&!t)throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+i);return this};bt.prototype.disable=function(n,t){var e=[];Array.isArray(n)||(n=[n]),["core","block","inline"].forEach(function(r){e=e.concat(this[r].ruler.disable(n,!0))},this),e=e.concat(this.inline.ruler2.disable(n,!0));var i=n.filter(function(r){return e.indexOf(r)<0});if(i.length&&!t)throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+i);return this};bt.prototype.use=function(n){var t=[this].concat(Array.prototype.slice.call(arguments,1));return n.apply(n,t),this};bt.prototype.parse=function(n,t){if(typeof n!="string")throw new Error("Input data should be a String");var e=new this.core.State(n,this,t);return this.core.process(e),e.tokens};bt.prototype.render=function(n,t){return t=t||{},this.renderer.render(this.parse(n,t),this.options,t)};bt.prototype.parseInline=function(n,t){var e=new this.core.State(n,this,t);return e.inlineMode=!0,this.core.process(e),e.tokens};bt.prototype.renderInline=function(n,t){return t=t||{},this.renderer.render(this.parseInline(n,t),this.options,t)};Bc.exports=bt});var Rc=_((Xv,Oc)=>{"use strict";Oc.exports=Pc()});var jc=_((Yv,Uc)=>{var Eo=!0,zc=!1,Hc=!1;Uc.exports=function(n,t){t&&(Eo=!t.enabled,zc=!!t.label,Hc=!!t.labelAfter),n.core.ruler.after("inline","github-task-lists",function(e){for(var i=e.tokens,r=2;r=0;i--)if(n[i].level===e)return i;return-1}function of(n,t){return hf(n[t])&&df(n[t-1])&&pf(n[t-2])&&ff(n[t])}function sf(n,t){if(n.children.unshift(af(n,t)),n.children[1].content=n.children[1].content.slice(3),n.content=n.content.slice(3),zc)if(Hc){n.children.pop();var e="task-item-"+Math.ceil(Math.random()*(1e4*1e3)-1e3);n.children[0].content=n.children[0].content.slice(0,-1)+' id="'+e+'">',n.children.push(uf(n.content,e,t))}else n.children.unshift(lf(t)),n.children.push(cf(t))}function af(n,t){var e=new t("html_inline","",0),i=Eo?' disabled="" ':"";return n.content.indexOf("[ ] ")===0?e.content='':(n.content.indexOf("[x] ")===0||n.content.indexOf("[X] ")===0)&&(e.content=''),e}function lf(n){var t=new n("html_inline","",0);return t.content="",t}function uf(n,t,e){var i=new e("html_inline","",0);return i.content='",i.attrs=[{for:t}],i}function hf(n){return n.type==="inline"}function df(n){return n.type==="paragraph_open"}function pf(n){return n.type==="list_item_open"}function ff(n){return n.content.indexOf("[ ] ")===0||n.content.indexOf("[x] ")===0||n.content.indexOf("[X] ")===0}});var fr={};Ae(fr,{emit:()=>dr,emitPublic:()=>Yu,error:()=>pr,listen:()=>Xu,showResponseError:()=>th,showValidationErrors:()=>Qu,success:()=>Ju});var sn={},Zu=[];function dr(n,t){Zu.push({name:n,data:t});let e=sn[n]||[];for(let i of e)i(t)}function Xu(n,t){typeof sn[n]>"u"&&(sn[n]=[]),sn[n].push(t)}function Yu(n,t,e){let i=new CustomEvent(t,{detail:e,bubbles:!0});n.dispatchEvent(i)}function Ju(n){dr("success",n)}function pr(n){dr("error",n)}function Qu(n){if(n.status&&n.status===422&&n.data){let t=Object.values(n.data).flat().join(` -`);pr(t)}}function th(n){n.status&&n.status>=400&&n.data&&n.data.message&&pr(n.data.message)}var mr={};Ae(mr,{HttpError:()=>an,createXMLHttpRequest:()=>nh,delete:()=>ah,get:()=>ih,patch:()=>sh,post:()=>rh,put:()=>oh});async function eh(n){if(n.status===204)return null;let e=(n.headers.get("Content-Type")||"").split(";")[0].split("/").pop();return e==="javascript"||e==="json"?n.json():n.text()}var an=class extends Error{constructor(t,e){super(t.statusText),this.data=e,this.headers=t.headers,this.redirected=t.redirected,this.status=t.status,this.statusText=t.statusText,this.url=t.url,this.original=t}};function nh(n,t,e={}){let i=document.querySelector("meta[name=token]").getAttribute("content"),r=new XMLHttpRequest;for(let[o,s]of Object.entries(e))r.addEventListener(o,s.bind(r));return r.open(n,t),r.withCredentials=!0,r.setRequestHeader("X-CSRF-TOKEN",i),r}async function Zo(n,t={}){let e=n;if(e.startsWith("http")||(e=window.baseUrl(e)),t.params){let l=new URL(e);for(let c of Object.keys(t.params)){let u=t.params[c];typeof u<"u"&&u!==null&&l.searchParams.set(c,u)}e=l.toString()}let i=document.querySelector("meta[name=token]").getAttribute("content"),r={...t,credentials:"same-origin"};r.headers={...r.headers||{},baseURL:window.baseUrl(""),"X-CSRF-TOKEN":i};let o=await fetch(e,r),s=await eh(o),a={data:s,headers:o.headers,redirected:o.redirected,status:o.status,statusText:o.statusText,url:o.url,original:o};if(!o.ok)throw new an(o,s);return a}async function ln(n,t,e=null){let i={method:n,body:e};return typeof e=="object"&&!(e instanceof FormData)&&(i.headers={"Content-Type":"application/json","X-Requested-With":"XMLHttpRequest"},i.body=JSON.stringify(e)),e instanceof FormData&&n!=="post"&&(e.append("_method",n),i.method="post"),Zo(t,i)}async function ih(n,t={}){return Zo(n,{method:"GET",params:t})}async function rh(n,t=null){return ln("POST",n,t)}async function oh(n,t=null){return ln("PUT",n,t)}async function sh(n,t=null){return ln("PATCH",n,t)}async function ah(n,t=null){return ln("DELETE",n,t)}var gr=class{constructor(){this.store=new Map,this.parseTranslations()}parseTranslations(){let t=document.querySelectorAll('meta[name="translation"]');for(let e of t){let i=e.getAttribute("key"),r=e.getAttribute("value");this.store.set(i,r)}}get(t,e){let i=this.getTransText(t);return this.performReplacements(i,e)}getPlural(t,e,i){let r=this.getTransText(t);return this.parsePlural(r,e,i)}parsePlural(t,e,i){let r=t.split("|"),o=/^{([0-9]+)}/,s=/^\[([0-9]+),([0-9*]+)]/,a=null;for(let l of r){let c=l.match(o);if(c!==null&&Number(c[1])===e){a=l.replace(o,"").trim();break}let u=l.match(s);if(u!==null&&Number(u[1])<=e&&(u[2]==="*"||Number(u[2])>=e)){a=l.replace(s,"").trim();break}}return a===null&&r.length>1&&(a=e===1?r[0]:r[1]),a===null&&(a=r[0]),this.performReplacements(a,i)}getTransText(t){let e=this.store.get(t);return e===void 0&&console.warn(`Translation with key "${t}" does not exist`),e}performReplacements(t,e){if(!e)return t;let i=t.match(/:(\S+)/g);if(i===null)return t;let r=t;return i.forEach(o=>{let s=o.substring(1);typeof e[s]>"u"||(r=r.replace(o,e[s]))}),r}},Xo=gr;var xr={};Ae(xr,{first:()=>hh,firstOnElement:()=>ph,get:()=>dh,init:()=>wr,register:()=>yr});function br(n){let t=i=>i.slice(0,1).toUpperCase()+i.slice(1),e=n.split("-");return e[0]+e.slice(1).map(t).join("")}function Yo(n){return n.replace(/[A-Z]/g,(t,e)=>(e>0?"-":"")+t.toLowerCase())}var De={},Jo={},vr=new WeakMap;function lh(n,t){let e={},i={},r=`${n}@`,o=`[refs*="${r}"]`,s=[...t.querySelectorAll(o)];t.matches(o)&&s.push(t);for(let a of s){let l=a.getAttribute("refs").split(" ").filter(c=>c.startsWith(r)).map(c=>c.replace(r,"")).map(br);for(let c of l)e[c]=a,typeof i[c]>"u"&&(i[c]=[]),i[c].push(a)}return{refs:e,manyRefs:i}}function ch(n,t){let e={},i=`option:${n}:`;for(let{name:r,value:o}of t.attributes)if(r.startsWith(i)){let s=r.replace(i,"");e[br(s)]=o||""}return e}function uh(n,t){let e=Jo[n];if(e===void 0)return;let i;try{i=new e,i.$name=n,i.$el=t;let o=lh(n,t);i.$refs=o.refs,i.$manyRefs=o.manyRefs,i.$opts=ch(n,t),i.setup()}catch(o){console.error("Failed to create component",o,n,t)}typeof De[n]>"u"&&(De[n]=[]),De[n].push(i);let r=vr.get(t)||{};r[n]=i,vr.set(t,r)}function wr(n=document){let t=n.querySelectorAll("[component],[components]");for(let e of t){let i=`${e.getAttribute("component")||""} ${e.getAttribute("components")}`.toLowerCase().split(" ").filter(Boolean);for(let r of i)uh(r,e)}}function yr(n){let t=Object.keys(n);for(let e of t)Jo[Yo(e)]=n[e]}function hh(n){return(De[n]||[null])[0]}function dh(n){return De[n]||[]}function ph(n,t){return(vr.get(n)||{})[t]||null}var Vo={};Ae(Vo,{AddRemoveRows:()=>un,AjaxDeleteRow:()=>hn,AjaxForm:()=>dn,Attachments:()=>pn,AttachmentsList:()=>fn,AutoSubmit:()=>gn,AutoSuggest:()=>mn,BackToTop:()=>bn,BookSort:()=>qn,ChapterContents:()=>Pn,CodeEditor:()=>On,CodeHighlighter:()=>Rn,CodeTextarea:()=>Nn,Collapsible:()=>zn,ConfirmDialog:()=>Hn,CustomCheckbox:()=>Un,DetailsHighlighter:()=>jn,Dropdown:()=>Vn,DropdownSearch:()=>Wn,Dropzone:()=>Gn,EditorToolbox:()=>Kn,EntityPermissions:()=>Zn,EntitySearch:()=>Xn,EntitySelector:()=>Yn,EntitySelectorPopup:()=>Jn,EventEmitSelect:()=>Qn,ExpandToggle:()=>ti,GlobalSearch:()=>ei,HeaderMobileToggle:()=>ni,ImageManager:()=>ii,ImagePicker:()=>ri,ListSortControl:()=>oi,MarkdownEditor:()=>Fi,NewUserPassword:()=>qi,Notification:()=>Bi,OptionalInput:()=>Pi,PageComment:()=>Ni,PageComments:()=>zi,PageDisplay:()=>Hi,PageEditor:()=>Ui,PagePicker:()=>Vi,PermissionsTable:()=>Wi,Pointer:()=>Gi,Popup:()=>Ki,SettingAppColorScheme:()=>Zi,SettingColorPicker:()=>Xi,SettingHomepageControl:()=>Yi,ShelfSort:()=>Ji,ShortcutInput:()=>tr,Shortcuts:()=>Qi,SortableList:()=>er,SubmitOnChange:()=>nr,Tabs:()=>ir,TagManager:()=>rr,TemplateManager:()=>or,ToggleSwitch:()=>sr,TriLayout:()=>ar,UserSelect:()=>lr,WebhookEvents:()=>cr,WysiwygEditor:()=>ur,WysiwygInput:()=>hr});function Et(n,t={},e=[]){let i=document.createElement(n);for(let[r,o]of Object.entries(t))o===null?i.removeAttribute(r):i.setAttribute(r,o);for(let r of e)typeof r=="string"?i.append(document.createTextNode(r)):i.append(r);return i}function kr(n,t){let e=document.querySelectorAll(n);for(let i of e)t(i)}function cn(n,t,e){for(let i of t)n.addEventListener(i,e)}function R(n,t){Array.isArray(n)||(n=[n]);for(let e of n)e.addEventListener("click",t),e.addEventListener("keydown",i=>{(i.key==="Enter"||i.key===" ")&&(i.preventDefault(),t(i))})}function Qo(n,t,e){Array.isArray(t)||(t=[t]);let i=r=>{r.key===n&&e(r)};t.forEach(r=>r.addEventListener("keydown",i))}function se(n,t){Qo("Enter",n,t)}function ts(n,t){Qo("Escape",n,t)}function K(n,t,e,i){n.addEventListener(e,r=>{let o=r.target.closest(t);o&&i.call(o,r,o)})}function es(n,t){let e=document.querySelectorAll(n);t=t.toLowerCase();for(let i of e)if(i.textContent.toLowerCase().includes(t))return i;return null}function Le(n){n.innerHTML='
'}function ae(){let n=document.createElement("div");return n.classList.add("loading-container"),n.innerHTML="
",n}function Te(n){let t=n.querySelectorAll(".loading-container");for(let e of t)e.remove()}function _t(n){let t=document.createElement("div");return t.innerHTML=n,window.$components.init(t),t.children[0]}function Nt(n,t,e){let i;return function(...o){let s=this,a=function(){i=null,e||n.apply(s,o)},l=e&&!i;clearTimeout(i),i=setTimeout(a,t),l&&n.apply(s,o)}}function Er(n){if(!n)return;let t=n;for(;t.parentElement;)t=t.parentElement,t.nodeName==="DETAILS"&&!t.open&&(t.open=!0);n.scrollIntoView({behavior:"smooth"});let e=getComputedStyle(document.body).getPropertyValue("--color-link");n.style.outline=`2px dashed ${e}`,n.style.outlineOffset="5px",n.style.transition=null,setTimeout(()=>{n.style.transition="outline linear 3s",n.style.outline="2px dashed rgba(0, 0, 0, 0)";let i=()=>{n.removeEventListener("transitionend",i),n.style.transition=null,n.style.outline=null,n.style.outlineOffset=null};n.addEventListener("transitionend",i)},1e3)}function ns(n){return n.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function is(){let n=()=>((1+Math.random())*65536|0).toString(16).substring(1);return`${n()+n()}-${n()}-${n()}-${n()}-${n()}${n()}${n()}`}function rs(n){return new Promise(t=>{setTimeout(t,n)})}var g=class{constructor(){at(this,"$name","");at(this,"$el",null);at(this,"$refs",{});at(this,"$manyRefs",{});at(this,"$opts",{})}setup(){}$emit(t,e={}){e.from=this;let i=this.$name,r=new CustomEvent(`${i}-${t}`,{bubbles:!0,detail:e});this.$el.dispatchEvent(r)}};var un=class extends g{setup(){this.modelRow=this.$refs.model,this.addButton=this.$refs.add,this.removeSelector=this.$opts.removeSelector,this.rowSelector=this.$opts.rowSelector,this.setupListeners()}setupListeners(){this.addButton.addEventListener("click",this.add.bind(this)),K(this.$el,this.removeSelector,"click",t=>{t.target.closest(this.rowSelector).remove()})}add(){let t=this.modelRow.cloneNode(!0);t.classList.remove("hidden"),this.setClonedInputNames(t),this.modelRow.parentNode.insertBefore(t,this.modelRow),window.$components.init(t)}setClonedInputNames(t){let e=is(),i=t.querySelectorAll('[name*="randrowid"]');for(let r of i)r.name=r.name.split("randrowid").join(e)}};var hn=class extends g{setup(){this.row=this.$el,this.url=this.$opts.url,this.deleteButtons=this.$manyRefs.delete,R(this.deleteButtons,this.runDelete.bind(this))}runDelete(){this.row.style.opacity="0.7",this.row.style.pointerEvents="none",window.$http.delete(this.url).then(t=>{typeof t.data=="object"&&t.data.message&&window.$events.emit("success",t.data.message),this.row.remove()}).catch(()=>{this.row.style.opacity=null,this.row.style.pointerEvents=null})}};var dn=class extends g{setup(){this.container=this.$el,this.responseContainer=this.container,this.url=this.$opts.url,this.method=this.$opts.method||"post",this.successMessage=this.$opts.successMessage,this.submitButtons=this.$manyRefs.submit||[],this.$opts.responseContainer&&(this.responseContainer=this.container.closest(this.$opts.responseContainer)),this.setupListeners()}setupListeners(){if(this.container.tagName==="FORM"){this.container.addEventListener("submit",this.submitRealForm.bind(this));return}se(this.container,t=>{this.submitFakeForm(),t.preventDefault()}),this.submitButtons.forEach(t=>R(t,this.submitFakeForm.bind(this)))}submitFakeForm(){let t=new FormData,e=this.container.querySelectorAll("[name]");for(let i of e)t.append(i.getAttribute("name"),i.value);this.submit(t)}submitRealForm(t){t.preventDefault();let e=new FormData(this.container);this.submit(e)}async submit(t){this.responseContainer.style.opacity="0.7",this.responseContainer.style.pointerEvents="none";try{let e=await window.$http[this.method.toLowerCase()](this.url,t);this.$emit("success",{formData:t}),this.responseContainer.innerHTML=e.data,this.successMessage&&window.$events.emit("success",this.successMessage)}catch(e){this.responseContainer.innerHTML=e.data}window.$components.init(this.responseContainer),this.responseContainer.style.opacity=null,this.responseContainer.style.pointerEvents=null}};var pn=class extends g{setup(){this.container=this.$el,this.pageId=this.$opts.pageId,this.editContainer=this.$refs.editContainer,this.listContainer=this.$refs.listContainer,this.linksContainer=this.$refs.linksContainer,this.listPanel=this.$refs.listPanel,this.attachLinkButton=this.$refs.attachLinkButton,this.setupListeners()}setupListeners(){let t=this.reloadList.bind(this);this.container.addEventListener("dropzone-upload-success",t),this.container.addEventListener("ajax-form-success",t),this.container.addEventListener("sortable-list-sort",e=>{this.updateOrder(e.detail.ids)}),this.container.addEventListener("event-emit-select-edit",e=>{this.startEdit(e.detail.id)}),this.container.addEventListener("event-emit-select-edit-back",()=>{this.stopEdit()}),this.container.addEventListener("event-emit-select-insert",e=>{let i=e.target.closest("[data-drag-content]").getAttribute("data-drag-content"),r=JSON.parse(i);window.$events.emit("editor::insert",{html:r["text/html"],markdown:r["text/plain"]})}),this.attachLinkButton.addEventListener("click",()=>{this.showSection("links")})}showSection(t){let e={links:this.linksContainer,edit:this.editContainer,list:this.listContainer};for(let[i,r]of Object.entries(e))r.toggleAttribute("hidden",i!==t)}reloadList(){this.stopEdit(),window.$http.get(`/attachments/get/page/${this.pageId}`).then(t=>{this.listPanel.innerHTML=t.data,window.$components.init(this.listPanel)})}updateOrder(t){window.$http.put(`/attachments/sort/page/${this.pageId}`,{order:t}).then(e=>{window.$events.emit("success",e.data.message)})}async startEdit(t){this.showSection("edit"),Le(this.editContainer);let e=await window.$http.get(`/attachments/edit/${t}`);this.editContainer.innerHTML=e.data,window.$components.init(this.editContainer)}stopEdit(){this.showSection("list")}};var fn=class extends g{setup(){this.container=this.$el,this.fileLinks=this.$manyRefs.linkTypeFile,this.setupListeners()}setupListeners(){let t=e=>e.key==="Control"||e.key==="Meta";window.addEventListener("keydown",e=>{t(e)&&this.addOpenQueryToLinks()},{passive:!0}),window.addEventListener("keyup",e=>{t(e)&&this.removeOpenQueryFromLinks()},{passive:!0})}addOpenQueryToLinks(){for(let t of this.fileLinks)t.href.split("?")[1]!=="open=true"&&(t.href+="?open=true",t.setAttribute("target","_blank"))}removeOpenQueryFromLinks(){for(let t of this.fileLinks)t.href=t.href.split("?")[0],t.removeAttribute("target")}};var $e,_r,Ie,Sr,zt=class{constructor(t,e=null,i=null){ot(this,$e);ot(this,Ie);this.containers=[t],this.onEscape=e,this.onEnter=i,t.addEventListener("keydown",L(this,$e,_r).bind(this))}shareHandlingToEl(t){this.containers.push(t),t.addEventListener("keydown",L(this,$e,_r).bind(this))}focusNext(){let t=L(this,Ie,Sr).call(this),i=t.indexOf(document.activeElement)+1;i>=t.length&&(i=0),t[i].focus()}focusPrevious(){let t=L(this,Ie,Sr).call(this),i=t.indexOf(document.activeElement)-1;i<0&&(i=t.length-1),t[i].focus()}};$e=new WeakSet,_r=function(t){t.target.matches("input")&&(t.key==="ArrowRight"||t.key==="ArrowLeft")||(t.key==="ArrowDown"||t.key==="ArrowRight"?(this.focusNext(),t.preventDefault()):t.key==="ArrowUp"||t.key==="ArrowLeft"?(this.focusPrevious(),t.preventDefault()):t.key==="Escape"?this.onEscape?this.onEscape(t):document.activeElement&&document.activeElement.blur():t.key==="Enter"&&this.onEnter&&this.onEnter(t))},Ie=new WeakSet,Sr=function(){let t=[],e='[tabindex]:not([tabindex="-1"]),[href],button:not([tabindex="-1"],[disabled]),input:not([type=hidden])';for(let i of this.containers)t.push(...i.querySelectorAll(e));return t};var Ar={},mn=class extends g{setup(){this.parent=this.$el.parentElement,this.container=this.$el,this.type=this.$opts.type,this.url=this.$opts.url,this.input=this.$refs.input,this.list=this.$refs.list,this.lastPopulated=0,this.setupListeners()}setupListeners(){new zt(this.list,()=>{this.input.focus(),setTimeout(()=>this.hideSuggestions(),1)},e=>{e.preventDefault();let i=e.target.textContent;i&&this.selectSuggestion(i)}).shareHandlingToEl(this.input),K(this.list,".text-item","click",(e,i)=>{this.selectSuggestion(i.textContent)}),this.input.addEventListener("input",this.requestSuggestions.bind(this)),this.input.addEventListener("focus",this.requestSuggestions.bind(this)),this.input.addEventListener("blur",this.hideSuggestionsIfFocusedLost.bind(this)),this.input.addEventListener("keydown",e=>{e.key==="Tab"&&this.hideSuggestions()})}selectSuggestion(t){this.input.value=t,this.lastPopulated=Date.now(),this.input.focus(),this.input.dispatchEvent(new Event("input",{bubbles:!0})),this.input.dispatchEvent(new Event("change",{bubbles:!0})),this.hideSuggestions()}async requestSuggestions(){if(Date.now()-this.lastPopulated<50)return;let t=this.getNameFilterIfNeeded(),e=this.input.value.toLowerCase(),r=(await this.loadSuggestions(e,t)).filter(o=>e===""||o.toLowerCase().startsWith(e)).slice(0,10);this.displaySuggestions(r)}getNameFilterIfNeeded(){return this.type!=="value"?null:this.parent.querySelector("input").value}async loadSuggestions(t,e=null){t=t.slice(0,4);let i={search:t,name:e},r=`${this.url}:${JSON.stringify(i)}`;if(Ar[r])return Ar[r];let o=await window.$http.get(this.url,i);return Ar[r]=o.data,o.data}displaySuggestions(t){if(t.length===0){this.hideSuggestions();return}this.list.innerHTML=t.map(e=>`
  • ${ns(e)}
  • `).join(""),this.list.style.display="block";for(let e of this.list.querySelectorAll(".text-item"))e.addEventListener("blur",this.hideSuggestionsIfFocusedLost.bind(this))}hideSuggestions(){this.list.style.display="none"}hideSuggestionsIfFocusedLost(t){this.container.contains(t.relatedTarget)||this.hideSuggestions()}};var gn=class extends g{setup(){this.form=this.$el,this.form.submit()}};var bn=class extends g{setup(){if(this.button=this.$el,this.targetElem=document.getElementById("header"),this.showing=!1,this.breakPoint=1200,document.body.classList.contains("flexbox")){this.button.style.display="none";return}this.button.addEventListener("click",this.scrollToTop.bind(this)),window.addEventListener("scroll",this.onPageScroll.bind(this))}onPageScroll(){let t=document.documentElement.scrollTop||document.body.scrollTop||0;!this.showing&&t>this.breakPoint?(this.button.style.display="block",this.showing=!0,setTimeout(()=>{this.button.style.opacity=.4},1)):this.showing&&t{this.button.style.display="none"},500))}scrollToTop(){let t=this.targetElem.getBoundingClientRect().top,e=document.documentElement.scrollTop?document.documentElement:document.body,i=300,r=Date.now(),o=this.targetElem.getBoundingClientRect().top;function s(){let a=1-(Date.now()-r)/i,l=Math.abs(a*o);a>0?(e.scrollTop=l,requestAnimationFrame(s.bind(this))):e.scrollTop=t}requestAnimationFrame(s.bind(this))}};function os(n,t){var e=Object.keys(n);if(Object.getOwnPropertySymbols){var i=Object.getOwnPropertySymbols(n);t&&(i=i.filter(function(r){return Object.getOwnPropertyDescriptor(n,r).enumerable})),e.push.apply(e,i)}return e}function At(n){for(var t=1;t=0)&&(e[r]=n[r]);return e}function gh(n,t){if(n==null)return{};var e=mh(n,t),i,r;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(n);for(r=0;r=0)&&Object.prototype.propertyIsEnumerable.call(n,i)&&(e[i]=n[i])}return e}function bh(n){return vh(n)||wh(n)||yh(n)||xh()}function vh(n){if(Array.isArray(n))return Or(n)}function wh(n){if(typeof Symbol<"u"&&n[Symbol.iterator]!=null||n["@@iterator"]!=null)return Array.from(n)}function yh(n,t){if(n){if(typeof n=="string")return Or(n,t);var e=Object.prototype.toString.call(n).slice(8,-1);if(e==="Object"&&n.constructor&&(e=n.constructor.name),e==="Map"||e==="Set")return Array.from(n);if(e==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return Or(n,t)}}function Or(n,t){(t==null||t>n.length)&&(t=n.length);for(var e=0,i=new Array(t);e"&&(t=t.substring(1)),n)try{if(n.matches)return n.matches(t);if(n.msMatchesSelector)return n.msMatchesSelector(t);if(n.webkitMatchesSelector)return n.webkitMatchesSelector(t)}catch{return!1}return!1}}function Ch(n){return n.host&&n!==document&&n.host.nodeType?n.host:n.parentNode}function xt(n,t,e,i){if(n){e=e||document;do{if(t!=null&&(t[0]===">"?n.parentNode===e&&Ln(n,t):Ln(n,t))||i&&n===e)return n;if(n===e)break}while(n=Ch(n))}return null}var as=/\s+/g;function Y(n,t,e){if(n&&t)if(n.classList)n.classList[e?"add":"remove"](t);else{var i=(" "+n.className+" ").replace(as," ").replace(" "+t+" "," ");n.className=(i+(e?" "+t:"")).replace(as," ")}}function S(n,t,e){var i=n&&n.style;if(i){if(e===void 0)return document.defaultView&&document.defaultView.getComputedStyle?e=document.defaultView.getComputedStyle(n,""):n.currentStyle&&(e=n.currentStyle),t===void 0?e:e[t];!(t in i)&&t.indexOf("webkit")===-1&&(t="-webkit-"+t),i[t]=e+(typeof e=="string"?"":"px")}}function Xt(n,t){var e="";if(typeof n=="string")e=n;else do{var i=S(n,"transform");i&&i!=="none"&&(e=i+" "+e)}while(!t&&(n=n.parentNode));var r=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return r&&new r(e)}function ws(n,t,e){if(n){var i=n.getElementsByTagName(t),r=0,o=i.length;if(e)for(;r=o:s=r<=o,!s)return i;if(i===St())break;i=jt(i,!1)}return!1}function pe(n,t,e,i){for(var r=0,o=0,s=n.children;o2&&arguments[2]!==void 0?arguments[2]:{},r=i.evt,o=gh(i,Th);We.pluginEvent.bind(I)(t,e,At({dragEl:C,parentEl:Z,ghostEl:q,rootEl:V,nextEl:Zt,lastDownEl:_n,cloneEl:G,cloneHidden:Ut,dragStarted:Pe,putSortable:tt,activeSortable:I.active,originalEvent:r,oldIndex:de,oldDraggableIndex:He,newIndex:mt,newDraggableIndex:Ht,hideGhostForTarget:Ss,unhideGhostForTarget:As,cloneNowHidden:function(){Ut=!0},cloneNowShown:function(){Ut=!1},dispatchSortableEvent:function(a){st({sortable:e,name:a,originalEvent:r})}},o))};function st(n){Be(At({putSortable:tt,cloneEl:G,targetEl:C,rootEl:V,oldIndex:de,oldDraggableIndex:He,newIndex:mt,newDraggableIndex:Ht},n))}var C,Z,q,V,Zt,_n,G,Ut,de,mt,He,Ht,vn,tt,he=!1,Tn=!1,$n=[],Gt,wt,$r,Ir,hs,ds,Pe,ce,Ue,je=!1,wn=!1,Sn,nt,Mr=[],Rr=!1,In=[],Fn=typeof document<"u",yn=gs,ps=Ve||Mt?"cssFloat":"float",$h=Fn&&!bs&&!gs&&"draggable"in document.createElement("div"),Cs=function(){if(Fn){if(Mt)return!1;var n=document.createElement("x");return n.style.cssText="pointer-events:auto",n.style.pointerEvents==="auto"}}(),Es=function(t,e){var i=S(t),r=parseInt(i.width)-parseInt(i.paddingLeft)-parseInt(i.paddingRight)-parseInt(i.borderLeftWidth)-parseInt(i.borderRightWidth),o=pe(t,0,e),s=pe(t,1,e),a=o&&S(o),l=s&&S(s),c=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+j(o).width,u=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+j(s).width;if(i.display==="flex")return i.flexDirection==="column"||i.flexDirection==="column-reverse"?"vertical":"horizontal";if(i.display==="grid")return i.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(o&&a.float&&a.float!=="none"){var h=a.float==="left"?"left":"right";return s&&(l.clear==="both"||l.clear===h)?"vertical":"horizontal"}return o&&(a.display==="block"||a.display==="flex"||a.display==="table"||a.display==="grid"||c>=r&&i[ps]==="none"||s&&i[ps]==="none"&&c+u>r)?"vertical":"horizontal"},Ih=function(t,e,i){var r=i?t.left:t.top,o=i?t.right:t.bottom,s=i?t.width:t.height,a=i?e.left:e.top,l=i?e.right:e.bottom,c=i?e.width:e.height;return r===a||o===l||r+s/2===a+c/2},Mh=function(t,e){var i;return $n.some(function(r){var o=r[it].options.emptyInsertThreshold;if(!(!o||Ur(r))){var s=j(r),a=t>=s.left-o&&t<=s.right+o,l=e>=s.top-o&&e<=s.bottom+o;if(a&&l)return i=r}}),i},_s=function(t){function e(o,s){return function(a,l,c,u){var h=a.options.group.name&&l.options.group.name&&a.options.group.name===l.options.group.name;if(o==null&&(s||h))return!0;if(o==null||o===!1)return!1;if(s&&o==="clone")return o;if(typeof o=="function")return e(o(a,l,c,u),s)(a,l,c,u);var d=(s?a:l).options.group.name;return o===!0||typeof o=="string"&&o===d||o.join&&o.indexOf(d)>-1}}var i={},r=t.group;(!r||En(r)!="object")&&(r={name:r}),i.name=r.name,i.checkPull=e(r.pull,!0),i.checkPut=e(r.put),i.revertClone=r.revertClone,t.group=i},Ss=function(){!Cs&&q&&S(q,"display","none")},As=function(){!Cs&&q&&S(q,"display","")};Fn&&!bs&&document.addEventListener("click",function(n){if(Tn)return n.preventDefault(),n.stopPropagation&&n.stopPropagation(),n.stopImmediatePropagation&&n.stopImmediatePropagation(),Tn=!1,!1},!0);var Kt=function(t){if(C){t=t.touches?t.touches[0]:t;var e=Mh(t.clientX,t.clientY);if(e){var i={};for(var r in t)t.hasOwnProperty(r)&&(i[r]=t[r]);i.target=i.rootEl=e,i.preventDefault=void 0,i.stopPropagation=void 0,e[it]._onDragOver(i)}}},Fh=function(t){C&&C.parentNode[it]._isOutsideThisEl(t.target)};function I(n,t){if(!(n&&n.nodeType&&n.nodeType===1))throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(n));this.el=n,this.options=t=kt({},t),n[it]=this;var e={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(n.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return Es(n,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(s,a){s.setData("Text",a.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:I.supportPointer!==!1&&"PointerEvent"in window&&!Ne,emptyInsertThreshold:5};We.initializePlugins(this,n,e);for(var i in e)!(i in t)&&(t[i]=e[i]);_s(t);for(var r in this)r.charAt(0)==="_"&&typeof this[r]=="function"&&(this[r]=this[r].bind(this));this.nativeDraggable=t.forceFallback?!1:$h,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?O(n,"pointerdown",this._onTapStart):(O(n,"mousedown",this._onTapStart),O(n,"touchstart",this._onTapStart)),this.nativeDraggable&&(O(n,"dragover",this),O(n,"dragenter",this)),$n.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),kt(this,Ah())}I.prototype={constructor:I,_isOutsideThisEl:function(t){!this.el.contains(t)&&t!==this.el&&(ce=null)},_getDirection:function(t,e){return typeof this.options.direction=="function"?this.options.direction.call(this,t,e,C):this.options.direction},_onTapStart:function(t){if(t.cancelable){var e=this,i=this.el,r=this.options,o=r.preventOnFilter,s=t.type,a=t.touches&&t.touches[0]||t.pointerType&&t.pointerType==="touch"&&t,l=(a||t).target,c=t.target.shadowRoot&&(t.path&&t.path[0]||t.composedPath&&t.composedPath()[0])||l,u=r.filter;if(Hh(i),!C&&!(/mousedown|pointerdown/.test(s)&&t.button!==0||r.disabled)&&!c.isContentEditable&&!(!this.nativeDraggable&&Ne&&l&&l.tagName.toUpperCase()==="SELECT")&&(l=xt(l,r.draggable,i,!1),!(l&&l.animated)&&_n!==l)){if(de=J(l),He=J(l,r.draggable),typeof u=="function"){if(u.call(this,t,l,this)){st({sortable:e,rootEl:c,name:"filter",targetEl:l,toEl:i,fromEl:i}),lt("filter",e,{evt:t}),o&&t.cancelable&&t.preventDefault();return}}else if(u&&(u=u.split(",").some(function(h){if(h=xt(c,h.trim(),i,!1),h)return st({sortable:e,rootEl:h,name:"filter",targetEl:l,fromEl:i,toEl:i}),lt("filter",e,{evt:t}),!0}),u)){o&&t.cancelable&&t.preventDefault();return}r.handle&&!xt(c,r.handle,i,!1)||this._prepareDragStart(t,a,l)}}},_prepareDragStart:function(t,e,i){var r=this,o=r.el,s=r.options,a=o.ownerDocument,l;if(i&&!C&&i.parentNode===o){var c=j(i);if(V=o,C=i,Z=C.parentNode,Zt=C.nextSibling,_n=i,vn=s.group,I.dragged=C,Gt={target:C,clientX:(e||t).clientX,clientY:(e||t).clientY},hs=Gt.clientX-c.left,ds=Gt.clientY-c.top,this._lastX=(e||t).clientX,this._lastY=(e||t).clientY,C.style["will-change"]="all",l=function(){if(lt("delayEnded",r,{evt:t}),I.eventCanceled){r._onDrop();return}r._disableDelayedDragEvents(),!ss&&r.nativeDraggable&&(C.draggable=!0),r._triggerDragStart(t,e),st({sortable:r,name:"choose",originalEvent:t}),Y(C,s.chosenClass,!0)},s.ignore.split(",").forEach(function(u){ws(C,u.trim(),Fr)}),O(a,"dragover",Kt),O(a,"mousemove",Kt),O(a,"touchmove",Kt),O(a,"mouseup",r._onDrop),O(a,"touchend",r._onDrop),O(a,"touchcancel",r._onDrop),ss&&this.nativeDraggable&&(this.options.touchStartThreshold=4,C.draggable=!0),lt("delayStart",this,{evt:t}),s.delay&&(!s.delayOnTouchOnly||e)&&(!this.nativeDraggable||!(Ve||Mt))){if(I.eventCanceled){this._onDrop();return}O(a,"mouseup",r._disableDelayedDrag),O(a,"touchend",r._disableDelayedDrag),O(a,"touchcancel",r._disableDelayedDrag),O(a,"mousemove",r._delayedDragTouchMoveHandler),O(a,"touchmove",r._delayedDragTouchMoveHandler),s.supportPointer&&O(a,"pointermove",r._delayedDragTouchMoveHandler),r._dragStartTimer=setTimeout(l,s.delay)}else l()}},_delayedDragTouchMoveHandler:function(t){var e=t.touches?t.touches[0]:t;Math.max(Math.abs(e.clientX-this._lastX),Math.abs(e.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){C&&Fr(C),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var t=this.el.ownerDocument;B(t,"mouseup",this._disableDelayedDrag),B(t,"touchend",this._disableDelayedDrag),B(t,"touchcancel",this._disableDelayedDrag),B(t,"mousemove",this._delayedDragTouchMoveHandler),B(t,"touchmove",this._delayedDragTouchMoveHandler),B(t,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(t,e){e=e||t.pointerType=="touch"&&t,!this.nativeDraggable||e?this.options.supportPointer?O(document,"pointermove",this._onTouchMove):e?O(document,"touchmove",this._onTouchMove):O(document,"mousemove",this._onTouchMove):(O(C,"dragend",this),O(V,"dragstart",this._onDragStart));try{document.selection?An(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(t,e){if(he=!1,V&&C){lt("dragStarted",this,{evt:e}),this.nativeDraggable&&O(document,"dragover",Fh);var i=this.options;!t&&Y(C,i.dragClass,!1),Y(C,i.ghostClass,!0),I.active=this,t&&this._appendGhost(),st({sortable:this,name:"start",originalEvent:e})}else this._nulling()},_emulateDragOver:function(){if(wt){this._lastX=wt.clientX,this._lastY=wt.clientY,Ss();for(var t=document.elementFromPoint(wt.clientX,wt.clientY),e=t;t&&t.shadowRoot&&(t=t.shadowRoot.elementFromPoint(wt.clientX,wt.clientY),t!==e);)e=t;if(C.parentNode[it]._isOutsideThisEl(t),e)do{if(e[it]){var i=void 0;if(i=e[it]._onDragOver({clientX:wt.clientX,clientY:wt.clientY,target:t,rootEl:e}),i&&!this.options.dragoverBubble)break}t=e}while(e=e.parentNode);As()}},_onTouchMove:function(t){if(Gt){var e=this.options,i=e.fallbackTolerance,r=e.fallbackOffset,o=t.touches?t.touches[0]:t,s=q&&Xt(q,!0),a=q&&s&&s.a,l=q&&s&&s.d,c=yn&&nt&&cs(nt),u=(o.clientX-Gt.clientX+r.x)/(a||1)+(c?c[0]-Mr[0]:0)/(a||1),h=(o.clientY-Gt.clientY+r.y)/(l||1)+(c?c[1]-Mr[1]:0)/(l||1);if(!I.active&&!he){if(i&&Math.max(Math.abs(o.clientX-this._lastX),Math.abs(o.clientY-this._lastY))=0&&(st({rootEl:Z,name:"add",toEl:Z,fromEl:V,originalEvent:t}),st({sortable:this,name:"remove",toEl:Z,originalEvent:t}),st({rootEl:Z,name:"sort",toEl:Z,fromEl:V,originalEvent:t}),st({sortable:this,name:"sort",toEl:Z,originalEvent:t})),tt&&tt.save()):mt!==de&&mt>=0&&(st({sortable:this,name:"update",toEl:Z,originalEvent:t}),st({sortable:this,name:"sort",toEl:Z,originalEvent:t})),I.active&&((mt==null||mt===-1)&&(mt=de,Ht=He),st({sortable:this,name:"end",toEl:Z,originalEvent:t}),this.save()))),this._nulling()},_nulling:function(){lt("nulling",this),V=C=Z=q=Zt=G=_n=Ut=Gt=wt=Pe=mt=Ht=de=He=ce=Ue=tt=vn=I.dragged=I.ghost=I.clone=I.active=null,In.forEach(function(t){t.checked=!0}),In.length=$r=Ir=0},handleEvent:function(t){switch(t.type){case"drop":case"dragend":this._onDrop(t);break;case"dragenter":case"dragover":C&&(this._onDragOver(t),qh(t));break;case"selectstart":t.preventDefault();break}},toArray:function(){for(var t=[],e,i=this.el.children,r=0,o=i.length,s=this.options;rr.right+o||n.clientY>i.bottom&&n.clientX>i.left:n.clientY>r.bottom+o||n.clientX>i.right&&n.clientY>i.top}function Rh(n,t,e,i,r,o,s,a){var l=i?n.clientY:n.clientX,c=i?e.height:e.width,u=i?e.top:e.left,h=i?e.bottom:e.right,d=!1;if(!s){if(a&&Snu+c*o/2:lh-Sn)return-Ue}else if(l>u+c*(1-r)/2&&lh-c*o/2)?l>u+c/2?1:-1:0}function Nh(n){return J(C)1&&(F.forEach(function(a){o.addAnimationState({target:a,rect:ct?j(a):s}),Lr(a),a.fromRect=s,i.removeAnimationState(a)}),ct=!1,jh(!this.options.removeCloneOnHide,r))},dragOverCompleted:function(e){var i=e.sortable,r=e.isOwner,o=e.insertion,s=e.activeSortable,a=e.parentEl,l=e.putSortable,c=this.options;if(o){if(r&&s._hideClone(),Fe=!1,c.animation&&F.length>1&&(ct||!r&&!s.options.sort&&!l)){var u=j(z,!1,!0,!0);F.forEach(function(d){d!==z&&(us(d,u),a.appendChild(d))}),ct=!0}if(!r)if(ct||Cn(),F.length>1){var h=kn;s._showClone(i),s.options.animation&&!kn&&h&&ft.forEach(function(d){s.addAnimationState({target:d,rect:qe}),d.fromRect=qe,d.thisAnimationDuration=null})}else s._showClone(i)}},dragOverAnimationCapture:function(e){var i=e.dragRect,r=e.isOwner,o=e.activeSortable;if(F.forEach(function(a){a.thisAnimationDuration=null}),o.options.animation&&!r&&o.multiDrag.isMultiDrag){qe=kt({},i);var s=Xt(z,!0);qe.top-=s.f,qe.left-=s.e}},dragOverAnimationComplete:function(){ct&&(ct=!1,Cn())},drop:function(e){var i=e.originalEvent,r=e.rootEl,o=e.parentEl,s=e.sortable,a=e.dispatchSortableEvent,l=e.oldIndex,c=e.putSortable,u=c||this.sortable;if(i){var h=this.options,d=o.children;if(!ue)if(h.multiDragKey&&!this.multiDragKeyDown&&this._deselectMultiDrag(),Y(z,h.selectedClass,!~F.indexOf(z)),~F.indexOf(z))F.splice(F.indexOf(z),1),Me=null,Be({sortable:s,rootEl:r,name:"deselect",targetEl:z,originalEvent:i});else{if(F.push(z),Be({sortable:s,rootEl:r,name:"select",targetEl:z,originalEvent:i}),i.shiftKey&&Me&&s.el.contains(Me)){var f=J(Me),p=J(z);if(~f&&~p&&f!==p){var m,w;for(p>f?(w=f,m=p):(w=p,m=f+1);w1){var v=j(z),b=J(z,":not(."+this.options.selectedClass+")");if(!Fe&&h.animation&&(z.thisAnimationDuration=null),u.captureAnimationState(),!Fe&&(h.animation&&(z.fromRect=v,F.forEach(function(x){if(x.thisAnimationDuration=null,x!==z){var E=ct?j(x):v;x.fromRect=E,u.addAnimationState({target:x,rect:E})}})),Cn(),F.forEach(function(x){d[b]?o.insertBefore(x,d[b]):o.appendChild(x),b++}),l===J(z))){var k=!1;F.forEach(function(x){if(x.sortableIndex!==J(x)){k=!0;return}}),k&&(a("update"),a("sort"))}F.forEach(function(x){Lr(x)}),u.animateAll()}yt=u}(r===o||c&&c.lastPutMode!=="clone")&&ft.forEach(function(x){x.parentNode&&x.parentNode.removeChild(x)})}},nullingGlobal:function(){this.isMultiDrag=ue=!1,ft.length=0},destroyGlobal:function(){this._deselectMultiDrag(),B(document,"pointerup",this._deselectMultiDrag),B(document,"mouseup",this._deselectMultiDrag),B(document,"touchend",this._deselectMultiDrag),B(document,"keydown",this._checkKeyDown),B(document,"keyup",this._checkKeyUp)},_deselectMultiDrag:function(e){if(!(typeof ue<"u"&&ue)&&yt===this.sortable&&!(e&&xt(e.target,this.options.draggable,this.sortable.el,!1))&&!(e&&e.button!==0))for(;F.length;){var i=F[0];Y(i,this.options.selectedClass,!1),F.shift(),Be({sortable:this.sortable,rootEl:this.sortable.el,name:"deselect",targetEl:i,originalEvent:e})}},_checkKeyDown:function(e){e.key===this.options.multiDragKey&&(this.multiDragKeyDown=!0)},_checkKeyUp:function(e){e.key===this.options.multiDragKey&&(this.multiDragKeyDown=!1)}},kt(n,{pluginName:"multiDrag",utils:{select:function(e){var i=e.parentNode[it];!i||!i.options.multiDrag||~F.indexOf(e)||(yt&&yt!==i&&(yt.multiDrag._deselectMultiDrag(),yt=i),Y(e,i.options.selectedClass,!0),F.push(e))},deselect:function(e){var i=e.parentNode[it],r=F.indexOf(e);!i||!i.options.multiDrag||!~r||(Y(e,i.options.selectedClass,!1),F.splice(r,1))}},eventProperties:function(){var e=this,i=[],r=[];return F.forEach(function(o){i.push({multiDragElement:o,index:o.sortableIndex});var s;ct&&o!==z?s=-1:ct?s=J(o,":not(."+e.options.selectedClass+")"):s=J(o),r.push({multiDragElement:o,index:s})}),{items:bh(F),clones:[].concat(ft),oldIndicies:i,newIndicies:r}},optionListeners:{multiDragKey:function(e){return e=e.toLowerCase(),e==="ctrl"?e="Control":e.length>1&&(e=e.charAt(0).toUpperCase()+e.substr(1)),e}}})}function jh(n,t){F.forEach(function(e,i){var r=t.children[e.sortableIndex+(n?Number(i):0)];r?t.insertBefore(e,r):t.appendChild(e)})}function ms(n,t){ft.forEach(function(e,i){var r=t.children[e.sortableIndex+(n?Number(i):0)];r?t.insertBefore(e,r):t.appendChild(e)})}function Cn(){F.forEach(function(n){n!==z&&n.parentNode&&n.parentNode.removeChild(n)})}I.mount(new Uh);I.mount(Wr,Vr);var Yt=I;var Ts={name(n,t){let e=n.getAttribute("data-name").trim().toLowerCase(),i=t.getAttribute("data-name").trim().toLowerCase();return e.localeCompare(i)},created(n,t){let e=Number(n.getAttribute("data-created"));return Number(t.getAttribute("data-created"))-e},updated(n,t){let e=Number(n.getAttribute("data-updated"));return Number(t.getAttribute("data-updated"))-e},chaptersFirst(n,t){let e=n.getAttribute("data-type"),i=t.getAttribute("data-type");return e===i?0:e==="chapter"?-1:1},chaptersLast(n,t){let e=n.getAttribute("data-type"),i=t.getAttribute("data-type");return e===i?0:e==="chapter"?1:-1}},$s={up:{active(n,t){return!(n.previousElementSibling===null&&!t)},run(n,t){(n.previousElementSibling||t).insertAdjacentElement("beforebegin",n)}},down:{active(n,t){return!(n.nextElementSibling===null&&!t)},run(n,t){(n.nextElementSibling||t).insertAdjacentElement("afterend",n)}},next_book:{active(n,t,e){return e.nextElementSibling!==null},run(n,t,e){e.nextElementSibling.querySelector("ul").prepend(n)}},prev_book:{active(n,t,e){return e.previousElementSibling!==null},run(n,t,e){e.previousElementSibling.querySelector("ul").appendChild(n)}},next_chapter:{active(n,t){return n.dataset.type==="page"&&this.getNextChapter(n,t)},run(n,t){this.getNextChapter(n,t).querySelector("ul").prepend(n)},getNextChapter(n,t){let e=t||n,i=Array.from(e.parentElement.children),r=i.indexOf(e);return i.slice(r+1).find(o=>o.dataset.type==="chapter")}},prev_chapter:{active(n,t){return n.dataset.type==="page"&&this.getPrevChapter(n,t)},run(n,t){this.getPrevChapter(n,t).querySelector("ul").append(n)},getPrevChapter(n,t){let e=t||n,i=Array.from(e.parentElement.children),r=i.indexOf(e);return i.slice(0,r).reverse().find(o=>o.dataset.type==="chapter")}},book_end:{active(n,t){return t||t===null&&n.nextElementSibling},run(n,t,e){e.querySelector("ul").append(n)}},book_start:{active(n,t){return t||t===null&&n.previousElementSibling},run(n,t,e){e.querySelector("ul").prepend(n)}},before_chapter:{active(n,t){return t},run(n,t){t.insertAdjacentElement("beforebegin",n)}},after_chapter:{active(n,t){return t},run(n,t){t.insertAdjacentElement("afterend",n)}}},qn=class extends g{setup(){this.container=this.$el,this.sortContainer=this.$refs.sortContainer,this.input=this.$refs.input,Yt.mount(new Ls);let t=this.container.querySelector(".sort-box");this.setupBookSortable(t),this.setupSortPresets(),this.setupMoveActions(),window.$events.listen("entity-select-change",this.bookSelect.bind(this))}setupMoveActions(){this.container.addEventListener("click",t=>{if(t.target.matches("[data-move]")){let e=t.target.getAttribute("data-move"),i=t.target.closest("[data-id]");this.runSortAction(i,e)}}),this.updateMoveActionStateForAll()}setupSortPresets(){let t="",e=!1,i=["name","created","updated"];this.sortContainer.addEventListener("click",r=>{let o=r.target.closest(".sort-box-options [data-sort]");if(!o)return;r.preventDefault();let s=o.closest(".sort-box").querySelectorAll("ul"),a=o.getAttribute("data-sort");e=t===a?!e:!1;let l=Ts[a];e&&i.includes(a)&&(l=function(u,h){return 0-Ts[a](u,h)});for(let c of s)Array.from(c.children).filter(h=>h.matches("li")).sort(l).forEach(h=>{c.appendChild(h)});t=a,this.updateMapInput()})}bookSelect(t){if(this.container.querySelector(`[data-type="book"][data-id="${t.id}"]`)!==null)return;let i=`${t.link}/sort-item`;window.$http.get(i).then(r=>{let o=_t(r.data);this.sortContainer.append(o),this.setupBookSortable(o),this.updateMoveActionStateForAll(),o.querySelector("summary").focus()})}setupBookSortable(t){let e=Array.from(t.querySelectorAll(".sort-list, .sortable-page-sublist")),i={name:"book",pull:["book","chapter"],put:["book","chapter"]},r={name:"chapter",pull:["book","chapter"],put(o,s,a){return a.getAttribute("data-type")==="page"}};for(let o of e)Yt.create(o,{group:o.classList.contains("sort-list")?i:r,animation:150,fallbackOnBody:!0,swapThreshold:.65,onSort:()=>{this.ensureNoNestedChapters(),this.updateMapInput(),this.updateMoveActionStateForAll()},dragClass:"bg-white",ghostClass:"primary-background-light",multiDrag:!0,multiDragKey:"Control",selectedClass:"sortable-selected"})}ensureNoNestedChapters(){let t=this.container.querySelectorAll('[data-type="chapter"] [data-type="chapter"]');for(let e of t)e.parentElement.closest('[data-type="chapter"]').insertAdjacentElement("afterend",e)}updateMapInput(){let t=this.buildEntityMap();this.input.value=JSON.stringify(t)}buildEntityMap(){let t=[],e=this.container.querySelectorAll(".sort-list");for(let i of e){let r=i.closest('[data-type="book"]').getAttribute("data-id"),o=Array.from(i.children).filter(s=>s.matches('[data-type="page"], [data-type="chapter"]'));for(let s=0;s{for(let s of r)n.style[s]=null;n.style.transition=null,n.removeEventListener("transitionend",o),Bn.delete(n),i&&i()};setTimeout(()=>{n.style.transition=`all ease-in-out ${e}ms`;for(let s of r)n.style[s]=t[s][1];n.addEventListener("transitionend",o),Bn.set(n,o)},15)}function Ke(n){Bn.has(n)&&Bn.get(n)()}function Is(n,t=400,e=null){Ke(n),n.style.display="block",Ge(n,{opacity:["0","1"]},t,()=>{e&&e()})}function Ms(n,t=400,e=null){Ke(n),Ge(n,{opacity:["1","0"]},t,()=>{n.style.display="none",e&&e()})}function fe(n,t=400){Ke(n);let e=n.getBoundingClientRect().height,i=getComputedStyle(n),r=i.getPropertyValue("padding-top"),o=i.getPropertyValue("padding-bottom"),s={maxHeight:[`${e}px`,"0px"],overflow:["hidden","hidden"],paddingTop:[r,"0px"],paddingBottom:[o,"0px"]};Ge(n,s,t,()=>{n.style.display="none"})}function me(n,t=400){Ke(n),n.style.display="block";let e=n.getBoundingClientRect().height,i=getComputedStyle(n),r=i.getPropertyValue("padding-top"),o=i.getPropertyValue("padding-bottom"),s={maxHeight:["0px",`${e}px`],overflow:["hidden","hidden"],paddingTop:["0px",r],paddingBottom:["0px",o]};Ge(n,s,t)}function Fs(n,t=400){let e=n.getBoundingClientRect().height,i=getComputedStyle(n),r=i.getPropertyValue("padding-top"),o=i.getPropertyValue("padding-bottom");return()=>{Ke(n);let s=n.getBoundingClientRect().height,a=getComputedStyle(n),l=a.getPropertyValue("padding-top"),c=a.getPropertyValue("padding-bottom"),u={height:[`${e}px`,`${s}px`],overflow:["hidden","hidden"],paddingTop:[r,l],paddingBottom:[o,c]};Ge(n,u,t)}}var Pn=class extends g{setup(){this.list=this.$refs.list,this.toggle=this.$refs.toggle,this.isOpen=this.toggle.classList.contains("open"),this.toggle.addEventListener("click",this.click.bind(this))}open(){this.toggle.classList.add("open"),this.toggle.setAttribute("aria-expanded","true"),me(this.list,180),this.isOpen=!0}close(){this.toggle.classList.remove("open"),this.toggle.setAttribute("aria-expanded","false"),fe(this.list,180),this.isOpen=!1}click(t){t.preventDefault(),this.isOpen?this.close():this.open()}};var On=class extends g{constructor(){super(...arguments);at(this,"editor",null);at(this,"saveCallback",null);at(this,"cancelCallback",null);at(this,"history",{});at(this,"historyKey","code_history")}setup(){this.container=this.$refs.container,this.popup=this.$el,this.editorInput=this.$refs.editor,this.languageButtons=this.$manyRefs.languageButton,this.languageOptionsContainer=this.$refs.languageOptionsContainer,this.saveButton=this.$refs.saveButton,this.languageInput=this.$refs.languageInput,this.historyDropDown=this.$refs.historyDropDown,this.historyList=this.$refs.historyList,this.favourites=new Set(this.$opts.favourites.split(",")),this.setupListeners(),this.setupFavourites()}setupListeners(){this.container.addEventListener("keydown",e=>{e.ctrlKey&&e.key==="Enter"&&this.save()}),R(this.languageButtons,e=>{let i=e.target.dataset.lang;this.languageInput.value=i,this.languageInputChange(i)}),se(this.languageInput,()=>this.save()),this.languageInput.addEventListener("input",()=>this.languageInputChange(this.languageInput.value)),R(this.saveButton,()=>this.save()),K(this.historyList,"button","click",(e,i)=>{e.preventDefault();let r=i.dataset.time;this.editor&&this.editor.setContent(this.history[r])})}setupFavourites(){for(let e of this.languageButtons)this.setupFavouritesForButton(e);this.sortLanguageList()}setupFavouritesForButton(e){let i=e.dataset.lang,r=this.favourites.has(i);e.setAttribute("data-favourite",r?"true":"false"),K(e.parentElement,".lang-option-favorite-toggle","click",()=>{r=!r,r?this.favourites.add(i):this.favourites.delete(i),e.setAttribute("data-favourite",r?"true":"false"),window.$http.patch("/preferences/update-code-language-favourite",{language:i,active:r}),this.sortLanguageList(),r&&e.scrollIntoView({block:"center",behavior:"smooth"})})}sortLanguageList(){let e=this.languageButtons.sort((i,r)=>{let o=i.dataset.favourite==="true",s=r.dataset.favourite==="true";return o&&!s?-1:s&&!o||i.dataset.lang>r.dataset.lang?1:-1}).map(i=>i.parentElement);for(let i of e)this.languageOptionsContainer.append(i)}save(){this.saveCallback&&this.saveCallback(this.editor.getContent(),this.languageInput.value),this.hide()}async open(e,i,r,o){this.languageInput.value=i,this.saveCallback=r,this.cancelCallback=o,await this.show(),this.languageInputChange(i),this.editor.setContent(e)}async show(){let e=await window.importVersioned("code");this.editor||(this.editor=e.popupEditor(this.editorInput,this.languageInput.value)),this.loadHistory(),this.getPopup().show(()=>{this.editor.focus()},()=>{this.addHistory(),this.cancelCallback&&this.cancelCallback()})}hide(){this.getPopup().hide(),this.addHistory()}getPopup(){return window.$components.firstOnElement(this.popup,"popup")}async updateEditorMode(e){this.editor.setMode(e,this.editor.getContent())}languageInputChange(e){this.updateEditorMode(e);let i=e.toLowerCase();for(let r of this.languageButtons){let o=r.dataset.lang.toLowerCase().trim(),s=i===o;r.classList.toggle("active",s),s&&r.scrollIntoView({block:"center",behavior:"smooth"})}}loadHistory(){this.history=JSON.parse(window.sessionStorage.getItem(this.historyKey)||"{}");let e=Object.keys(this.history).reverse();this.historyDropDown.classList.toggle("hidden",e.length===0),this.historyList.innerHTML=e.map(i=>{let r=new Date(parseInt(i,10)).toLocaleTimeString();return`
  • `}).join("")}addHistory(){if(!this.editor)return;let e=this.editor.getContent();if(!e)return;let i=Object.keys(this.history).pop();if(this.history[i]===e)return;this.history[String(Date.now())]=e;let r=JSON.stringify(this.history);window.sessionStorage.setItem(this.historyKey,r)}};var Rn=class extends g{setup(){let t=this.$el;t.querySelectorAll("pre").length>0&&window.importVersioned("code").then(i=>{i.highlightWithin(t)})}};var Nn=class extends g{async setup(){let{mode:t}=this.$opts;(await window.importVersioned("code")).inlineEditor(this.$el,t)}};var zn=class extends g{setup(){this.container=this.$el,this.trigger=this.$refs.trigger,this.content=this.$refs.content,this.trigger&&(this.trigger.addEventListener("click",this.toggle.bind(this)),this.openIfContainsError())}open(){this.container.classList.add("open"),this.trigger.setAttribute("aria-expanded","true"),me(this.content,300)}close(){this.container.classList.remove("open"),this.trigger.setAttribute("aria-expanded","false"),fe(this.content,300)}toggle(){this.container.classList.contains("open")?this.close():this.open()}openIfContainsError(){this.content.querySelector(".text-neg.text-small")&&this.open()}};var Hn=class extends g{setup(){this.container=this.$el,this.confirmButton=this.$refs.confirm,this.res=null,R(this.confirmButton,()=>{this.sendResult(!0),this.getPopup().hide()})}show(){return this.getPopup().show(null,()=>{this.sendResult(!1)}),new Promise(t=>{this.res=t})}getPopup(){return window.$components.firstOnElement(this.container,"popup")}sendResult(t){this.res&&(this.res(t),this.res=null)}};var Un=class extends g{setup(){this.container=this.$el,this.checkbox=this.container.querySelector("input[type=checkbox]"),this.display=this.container.querySelector('[role="checkbox"]'),this.checkbox.addEventListener("change",this.stateChange.bind(this)),this.container.addEventListener("keydown",this.onKeyDown.bind(this))}onKeyDown(t){(t.key===" "||t.key==="Enter")&&(t.preventDefault(),this.toggle())}toggle(){this.checkbox.checked=!this.checkbox.checked,this.checkbox.dispatchEvent(new Event("change")),this.stateChange()}stateChange(){let t=this.checkbox.checked?"true":"false";this.display.setAttribute("aria-checked",t)}};var jn=class extends g{setup(){this.container=this.$el,this.dealtWith=!1,this.container.addEventListener("toggle",this.onToggle.bind(this))}onToggle(){this.dealtWith||(this.container.querySelector("pre")&&window.importVersioned("code").then(t=>{t.highlightWithin(this.container)}),this.dealtWith=!0)}};var Vn=class extends g{setup(){this.container=this.$el,this.menu=this.$refs.menu,this.toggle=this.$refs.toggle,this.moveMenu=this.$opts.moveMenu,this.bubbleEscapes=this.$opts.bubbleEscapes==="true",this.direction=document.dir==="rtl"?"right":"left",this.body=document.body,this.showing=!1,this.hide=this.hide.bind(this),this.setupListeners()}show(t=null){this.hideAll(),this.menu.style.display="block",this.menu.classList.add("anim","menuIn"),this.toggle.setAttribute("aria-expanded","true");let e=this.menu.getBoundingClientRect(),i=0,r=this.toggle.getBoundingClientRect().height,o=e.bottom>window.innerHeight,s=this.container.getBoundingClientRect();if(this.moveMenu&&(this.body.appendChild(this.menu),this.menu.style.position="fixed",this.menu.style.width=`${e.width}px`,this.menu.style.left=`${e.left}px`,o?i=window.innerHeight-e.top-r/2:i=e.top),o){this.menu.style.top="initial",this.menu.style.bottom=`${i}px`;let c=window.innerHeight-40-(window.innerHeight-s.bottom);this.menu.style.maxHeight=`${Math.floor(c)}px`}else{this.menu.style.top=`${i}px`,this.menu.style.bottom="initial";let c=window.innerHeight-40-s.top;this.menu.style.maxHeight=`${Math.floor(c)}px`}this.menu.addEventListener("mouseleave",this.hide),window.addEventListener("click",c=>{this.menu.contains(c.target)||this.hide()});let a=this.menu.querySelector("input");a!==null&&a.focus(),this.showing=!0;let l=new Event("show");this.container.dispatchEvent(l),t&&t.stopPropagation()}hideAll(){for(let t of window.$components.get("dropdown"))t.hide()}hide(){this.menu.style.display="none",this.menu.classList.remove("anim","menuIn"),this.toggle.setAttribute("aria-expanded","false"),this.menu.style.top="",this.menu.style.bottom="",this.menu.style.maxHeight="",this.moveMenu&&(this.menu.style.position="",this.menu.style[this.direction]="",this.menu.style.width="",this.menu.style.left="",this.container.appendChild(this.menu)),this.showing=!1}setupListeners(){let t=new zt(this.container,e=>{this.hide(),this.toggle.focus(),this.bubbleEscapes||e.stopPropagation()},e=>{e.target.nodeName==="INPUT"&&(e.preventDefault(),e.stopPropagation()),this.hide()});this.moveMenu&&t.shareHandlingToEl(this.menu),this.container.addEventListener("click",e=>{Array.from(this.menu.querySelectorAll("a")).includes(e.target)&&this.hide()}),R(this.toggle,e=>{e.stopPropagation(),e.preventDefault(),this.show(e),e instanceof KeyboardEvent&&t.focusNext()})}};var Wn=class extends g{setup(){this.elem=this.$el,this.searchInput=this.$refs.searchInput,this.loadingElem=this.$refs.loading,this.listContainerElem=this.$refs.listContainer,this.localSearchSelector=this.$opts.localSearchSelector,this.url=this.$opts.url,this.elem.addEventListener("show",this.onShow.bind(this)),this.searchInput.addEventListener("input",this.onSearch.bind(this)),this.runAjaxSearch=Nt(this.runAjaxSearch,300,!1)}onShow(){this.loadList()}onSearch(){let t=this.searchInput.value.toLowerCase().trim();this.localSearchSelector?this.runLocalSearch(t):(this.toggleLoading(!0),this.listContainerElem.innerHTML="",this.runAjaxSearch(t))}runAjaxSearch(t){this.loadList(t)}runLocalSearch(t){let e=this.listContainerElem.querySelectorAll(this.localSearchSelector);for(let i of e){let r=!t||i.textContent.toLowerCase().includes(t);i.style.display=r?"flex":"none",i.classList.toggle("hidden",!r)}}async loadList(t=""){this.listContainerElem.innerHTML="",this.toggleLoading(!0);try{let e=await window.$http.get(this.getAjaxUrl(t)),i=Fs(this.listContainerElem,80);this.listContainerElem.innerHTML=e.data,i()}catch(e){console.error(e)}this.toggleLoading(!1),this.localSearchSelector&&this.onSearch()}getAjaxUrl(t=null){if(!t)return this.url;let e=this.url.includes("?")?"&":"?";return`${this.url}${e}search=${encodeURIComponent(t)}`}toggleLoading(t=!1){this.loadingElem.style.display=t?"block":"none"}};var Ft=class{constructor(t){this.data=t}hasItems(){return!!this.data&&!!this.data.types&&this.data.types.length>0}containsTabularData(){let t=this.data.getData("text/rtf");return t&&t.includes("\\trowd")}getImages(){let{types:t}=this.data,e=[];for(let r of t)if(r.includes("image")){let o=this.data.getData(r);e.push(o.getAsFile())}let i=this.getFiles().filter(r=>r.type.includes("image"));return e.push(...i),e}getFiles(){let{files:t}=this.data;return[...t]}};async function Gr(n){if(window.isSecureContext&&navigator.clipboard){await navigator.clipboard.writeText(n);return}let t=document.createElement("textarea");t.style="position: absolute; left: -1000px; top: -1000px;",t.value=n,document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t)}var Gn=class extends g{setup(){this.container=this.$el,this.statusArea=this.$refs.statusArea,this.dropTarget=this.$refs.dropTarget,this.selectButtons=this.$manyRefs.selectButton||[],this.isActive=!0,this.url=this.$opts.url,this.method=(this.$opts.method||"post").toUpperCase(),this.successMessage=this.$opts.successMessage,this.errorMessage=this.$opts.errorMessage,this.uploadLimitMb=Number(this.$opts.uploadLimit),this.uploadLimitMessage=this.$opts.uploadLimitMessage,this.zoneText=this.$opts.zoneText,this.fileAcceptTypes=this.$opts.fileAccept,this.allowMultiple=this.$opts.allowMultiple==="true",this.setupListeners()}toggleActive(t){this.isActive=t}setupListeners(){R(this.selectButtons,this.manualSelectHandler.bind(this)),this.setupDropTargetHandlers()}setupDropTargetHandlers(){let t=0,e=()=>{this.hideOverlay(),t=0};this.dropTarget.addEventListener("dragenter",i=>{i.preventDefault(),t+=1,t===1&&this.isActive&&this.showOverlay()}),this.dropTarget.addEventListener("dragover",i=>{i.preventDefault()}),this.dropTarget.addEventListener("dragend",e),this.dropTarget.addEventListener("dragleave",()=>{t-=1,t===0&&e()}),this.dropTarget.addEventListener("drop",i=>{if(i.preventDefault(),e(),!this.isActive)return;let o=new Ft(i.dataTransfer).getFiles();for(let s of o)this.createUploadFromFile(s)})}manualSelectHandler(){let t=Et("input",{type:"file",style:"left: -400px; visibility: hidden; position: fixed;",accept:this.fileAcceptTypes,multiple:this.allowMultiple?"":null});this.container.append(t),t.click(),t.addEventListener("change",()=>{for(let e of t.files)this.createUploadFromFile(e);t.remove()})}showOverlay(){if(!this.dropTarget.querySelector(".dropzone-overlay")){let e=Et("div",{class:"dropzone-overlay"},[this.zoneText]);this.dropTarget.append(e)}}hideOverlay(){let t=this.dropTarget.querySelector(".dropzone-overlay");t&&t.remove()}createUploadFromFile(t){let{dom:e,status:i,progress:r,dismiss:o}=this.createDomForFile(t);this.statusArea.append(e);let s=this,a={file:t,dom:e,updateProgress(l){r.textContent=`${l}%`,r.style.width=`${l}%`},markError(l){i.setAttribute("data-status","error"),i.textContent=l,Te(e),this.updateProgress(100)},markSuccess(l){i.setAttribute("data-status","success"),i.textContent=l,Te(e),setTimeout(o,2400),s.$emit("upload-success",{name:t.name})}};return t.size>this.uploadLimitMb*1e6?(a.markError(this.uploadLimitMessage),a):(this.startXhrForUpload(a),a)}startXhrForUpload(t){let e=new FormData;e.append("file",t.file,t.file.name),this.method!=="POST"&&e.append("_method",this.method);let i=this,r=window.$http.createXMLHttpRequest("POST",this.url,{error(){t.markError(i.errorMessage)},readystatechange(){if(this.readyState===XMLHttpRequest.DONE&&this.status===200)t.markSuccess(i.successMessage);else if(this.readyState===XMLHttpRequest.DONE&&this.status>=400){let o=this.responseText,s=o.startsWith("{")?JSON.parse(o):{message:o},a=s?.message||s?.error||o;t.markError(a)}}});r.upload.addEventListener("progress",o=>{let s=Math.min(Math.ceil(o.loaded/o.total*100),100);t.updateProgress(s)}),r.setRequestHeader("Accept","application/json"),r.send(e)}createDomForFile(t){let e=Et("img",{src:"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.224 7.373a.924.924 0 0 0-.92.925l-.006 7.404c0 .509.412.925.921.925h5.557a.928.928 0 0 0 .926-.925v-5.553l-2.777-2.776Zm3.239 3.239V8.067l2.545 2.545z' style='fill:%23000;fill-opacity:.75'/%3E%3C/svg%3E"}),i=Et("div",{class:"dropzone-file-item-status"},[]),r=Et("div",{class:"dropzone-file-item-progress"}),o=Et("div",{class:"dropzone-file-item-image-wrap"},[e]),s=Et("div",{class:"dropzone-file-item"},[o,Et("div",{class:"dropzone-file-item-text-wrap"},[Et("div",{class:"dropzone-file-item-label"},[t.name]),ae(),i]),r]);t.type.startsWith("image/")&&(e.src=URL.createObjectURL(t));let a=()=>{s.classList.add("dismiss"),s.addEventListener("animationend",()=>{s.remove()})};return s.addEventListener("click",a),{dom:s,progress:r,status:i,dismiss:a}}};var Kn=class extends g{setup(){this.container=this.$el,this.buttons=this.$manyRefs.tabButton,this.contentElements=this.$manyRefs.tabContent,this.toggleButton=this.$refs.toggle,this.editorWrapEl=this.container.closest(".page-editor"),this.setupListeners(),this.setActiveTab(this.contentElements[0].dataset.tabContent)}setupListeners(){this.toggleButton.addEventListener("click",()=>this.toggle()),this.container.addEventListener("click",t=>{let e=t.target.closest("button");if(this.buttons.includes(e)){let i=e.dataset.tab;this.setActiveTab(i,!0)}})}toggle(){this.container.classList.toggle("open");let t=this.container.classList.contains("open");this.toggleButton.setAttribute("aria-expanded",t?"true":"false"),this.editorWrapEl.classList.toggle("toolbox-open",t)}setActiveTab(t,e=!1){for(let i of this.buttons)i.classList.remove("active"),i.dataset.tab===t&&i.classList.add("active");for(let i of this.contentElements)i.style.display="none",i.dataset.tabContent===t&&(i.style.display="block");e&&!this.container.classList.contains("open")&&this.toggle()}};var Zn=class extends g{setup(){this.container=this.$el,this.entityType=this.$opts.entityType,this.everyoneInheritToggle=this.$refs.everyoneInherit,this.roleSelect=this.$refs.roleSelect,this.roleContainer=this.$refs.roleContainer,this.setupListeners()}setupListeners(){this.everyoneInheritToggle.addEventListener("change",t=>{let e=t.target.checked,i=document.querySelectorAll('input[name^="permissions[0]["]');for(let r of i)r.disabled=e,r.checked=!1}),this.container.addEventListener("click",t=>{let e=t.target.closest("button");e&&e.dataset.roleId&&this.removeRowOnButtonClick(e)}),this.roleSelect.addEventListener("change",()=>{let t=this.roleSelect.value;t&&this.addRoleRow(t)})}async addRoleRow(t){this.roleSelect.disabled=!0;let e=this.roleSelect.querySelector(`option[value="${t}"]`);e&&e.remove();let i=await window.$http.get(`/permissions/form-row/${this.entityType}/${t}`),r=_t(i.data);this.roleContainer.append(r),this.roleSelect.disabled=!1}removeRowOnButtonClick(t){let e=t.closest(".item-list-row"),{roleId:i}=t.dataset,{roleName:r}=t.dataset,o=document.createElement("option");o.value=i,o.textContent=r,this.roleSelect.append(o),e.remove()}};var Xn=class extends g{setup(){this.entityId=this.$opts.entityId,this.entityType=this.$opts.entityType,this.contentView=this.$refs.contentView,this.searchView=this.$refs.searchView,this.searchResults=this.$refs.searchResults,this.searchInput=this.$refs.searchInput,this.searchForm=this.$refs.searchForm,this.clearButton=this.$refs.clearButton,this.loadingBlock=this.$refs.loadingBlock,this.setupListeners()}setupListeners(){this.searchInput.addEventListener("change",this.runSearch.bind(this)),this.searchForm.addEventListener("submit",t=>{t.preventDefault(),this.runSearch()}),R(this.clearButton,this.clearSearch.bind(this))}runSearch(){let t=this.searchInput.value.trim();if(t.length===0){this.clearSearch();return}this.searchView.classList.remove("hidden"),this.contentView.classList.add("hidden"),this.loadingBlock.classList.remove("hidden");let e=window.baseUrl(`/search/${this.entityType}/${this.entityId}`);window.$http.get(e,{term:t}).then(i=>{this.searchResults.innerHTML=i.data}).catch(console.error).then(()=>{this.loadingBlock.classList.add("hidden")})}clearSearch(){this.searchView.classList.add("hidden"),this.contentView.classList.remove("hidden"),this.loadingBlock.classList.add("hidden"),this.searchInput.value=""}};var Yn=class extends g{setup(){this.elem=this.$el,this.input=this.$refs.input,this.searchInput=this.$refs.search,this.loading=this.$refs.loading,this.resultsContainer=this.$refs.results,this.searchOptions={entityTypes:this.$opts.entityTypes||"page,book,chapter",entityPermission:this.$opts.entityPermission||"view",searchEndpoint:this.$opts.searchEndpoint||"",initialValue:this.searchInput.value||""},this.search="",this.lastClick=0,this.setupListeners(),this.showLoading(),this.searchOptions.searchEndpoint&&this.initialLoad()}configureSearchOptions(t){Object.assign(this.searchOptions,t),this.reset(),this.searchInput.value=this.searchOptions.initialValue}setupListeners(){this.elem.addEventListener("click",this.onClick.bind(this));let t=0;this.searchInput.addEventListener("input",()=>{t=Date.now(),this.showLoading(),setTimeout(()=>{Date.now()-t<199||this.searchEntities(this.searchInput.value)},200)}),this.searchInput.addEventListener("keydown",e=>{e.keyCode===13&&e.preventDefault()}),K(this.$el,"[data-entity-type]","keydown",e=>{if(e.ctrlKey&&e.code==="Enter"){let i=this.$el.closest("form");if(i){i.submit(),e.preventDefault();return}}e.code==="ArrowDown"&&this.focusAdjacent(!0),e.code==="ArrowUp"&&this.focusAdjacent(!1)}),this.searchInput.addEventListener("keydown",e=>{e.code==="ArrowDown"&&this.focusAdjacent(!0)})}focusAdjacent(t=!0){let e=Array.from(this.resultsContainer.querySelectorAll("[data-entity-type]")),i=e.indexOf(document.activeElement),r=e[i+(t?1:-1)]||e[0];r&&r.focus()}reset(){this.searchInput.value="",this.showLoading(),this.initialLoad()}focusSearch(){this.searchInput.focus()}showLoading(){this.loading.style.display="block",this.resultsContainer.style.display="none"}hideLoading(){this.loading.style.display="none",this.resultsContainer.style.display="block"}initialLoad(){if(!this.searchOptions.searchEndpoint)throw new Error("Search endpoint not set for entity-selector load");if(this.searchOptions.initialValue){this.searchEntities(this.searchOptions.initialValue);return}window.$http.get(this.searchUrl()).then(t=>{this.resultsContainer.innerHTML=t.data,this.hideLoading()})}searchUrl(){let t=`types=${encodeURIComponent(this.searchOptions.entityTypes)}&permission=${encodeURIComponent(this.searchOptions.entityPermission)}`;return`${this.searchOptions.searchEndpoint}?${t}`}searchEntities(t){if(!this.searchOptions.searchEndpoint)throw new Error("Search endpoint not set for entity-selector load");this.input.value="";let e=`${this.searchUrl()}&term=${encodeURIComponent(t)}`;window.$http.get(e).then(i=>{this.resultsContainer.innerHTML=i.data,this.hideLoading()})}isDoubleClick(){let t=Date.now(),e=t-this.lastClick<300;return this.lastClick=t,e}onClick(t){let e=t.target.closest("[data-entity-type]");e&&(t.preventDefault(),t.stopPropagation(),this.selectItem(e))}selectItem(t){let e=this.isDoubleClick(),i=t.getAttribute("data-entity-type"),r=t.getAttribute("data-entity-id"),o=!t.classList.contains("selected")||e;this.unselectAll(),this.input.value=o?`${i}:${r}`:"";let s=t.getAttribute("href"),a=t.querySelector(".entity-list-item-name").textContent,l={id:Number(r),name:a,link:s};o?t.classList.add("selected"):window.$events.emit("entity-select-change",null),!(!e&&!o)&&(e&&this.confirmSelection(l),o&&window.$events.emit("entity-select-change",l))}confirmSelection(t){window.$events.emit("entity-select-confirm",t)}unselectAll(){let t=this.elem.querySelectorAll(".selected");for(let e of t)e.classList.remove("selected","primary-background")}};var Jn=class extends g{setup(){this.container=this.$el,this.selectButton=this.$refs.select,this.selectorEl=this.$refs.selector,this.callback=null,this.selection=null,this.selectButton.addEventListener("click",this.onSelectButtonClick.bind(this)),window.$events.listen("entity-select-change",this.onSelectionChange.bind(this)),window.$events.listen("entity-select-confirm",this.handleConfirmedSelection.bind(this))}show(t,e={}){this.callback=t,this.getSelector().configureSearchOptions(e),this.getPopup().show(),this.getSelector().focusSearch()}hide(){this.getPopup().hide()}getPopup(){return window.$components.firstOnElement(this.container,"popup")}getSelector(){return window.$components.firstOnElement(this.selectorEl,"entity-selector")}onSelectButtonClick(){this.handleConfirmedSelection(this.selection)}onSelectionChange(t){this.selection=t,t===null?this.selectButton.setAttribute("disabled","true"):this.selectButton.removeAttribute("disabled")}handleConfirmedSelection(t){this.hide(),this.getSelector().reset(),this.callback&&t&&this.callback(t)}};var Qn=class extends g{setup(){this.container=this.$el,this.name=this.$opts.name,R(this.$el,()=>{this.$emit(this.name,this.$opts)})}};var ti=class extends g{setup(){this.targetSelector=this.$opts.targetSelector,this.isOpen=this.$opts.isOpen==="true",this.updateEndpoint=this.$opts.updateEndpoint,this.$el.addEventListener("click",this.click.bind(this))}open(t){me(t,200)}close(t){fe(t,200)}click(t){t.preventDefault();let e=document.querySelectorAll(this.targetSelector);for(let i of e)(this.isOpen?this.close:this.open)(i);this.isOpen=!this.isOpen,this.updateSystemAjax(this.isOpen)}updateSystemAjax(t){window.$http.patch(this.updateEndpoint,{expand:t?"true":"false"})}};var ei=class extends g{setup(){this.container=this.$el,this.input=this.$refs.input,this.suggestions=this.$refs.suggestions,this.suggestionResultsWrap=this.$refs.suggestionResults,this.loadingWrap=this.$refs.loading,this.button=this.$refs.button,this.setupListeners()}setupListeners(){let t=Nt(this.updateSuggestions.bind(this),200,!1);this.input.addEventListener("input",()=>{let{value:e}=this.input;e.length>0?(this.loadingWrap.style.display="block",this.suggestionResultsWrap.style.opacity="0.5",t(e)):this.hideSuggestions()}),this.input.addEventListener("dblclick",()=>{this.input.setAttribute("autocomplete","on"),this.button.focus(),this.input.focus()}),new zt(this.container,()=>{this.hideSuggestions()})}async updateSuggestions(t){let{data:e}=await window.$http.get("/search/suggest",{term:t});if(!this.input.value)return;let i=_t(e);this.suggestionResultsWrap.innerHTML="",this.suggestionResultsWrap.style.opacity="1",this.loadingWrap.style.display="none",this.suggestionResultsWrap.append(i),this.container.classList.contains("search-active")||this.showSuggestions()}showSuggestions(){this.container.classList.add("search-active"),window.requestAnimationFrame(()=>{this.suggestions.classList.add("search-suggestions-animation")})}hideSuggestions(){this.container.classList.remove("search-active"),this.suggestions.classList.remove("search-suggestions-animation"),this.suggestionResultsWrap.innerHTML=""}};var ni=class extends g{setup(){this.elem=this.$el,this.toggleButton=this.$refs.toggle,this.menu=this.$refs.menu,this.open=!1,this.toggleButton.addEventListener("click",this.onToggle.bind(this)),this.onWindowClick=this.onWindowClick.bind(this),this.onKeyDown=this.onKeyDown.bind(this)}onToggle(t){this.open=!this.open,this.menu.classList.toggle("show",this.open),this.toggleButton.setAttribute("aria-expanded",this.open?"true":"false"),this.open?(this.elem.addEventListener("keydown",this.onKeyDown),window.addEventListener("click",this.onWindowClick)):(this.elem.removeEventListener("keydown",this.onKeyDown),window.removeEventListener("click",this.onWindowClick)),t.stopPropagation()}onKeyDown(t){t.code==="Escape"&&this.onToggle(t)}onWindowClick(t){this.onToggle(t)}};var ii=class extends g{setup(){this.uploadedTo=this.$opts.uploadedTo,this.container=this.$el,this.popupEl=this.$refs.popup,this.searchForm=this.$refs.searchForm,this.searchInput=this.$refs.searchInput,this.cancelSearch=this.$refs.cancelSearch,this.listContainer=this.$refs.listContainer,this.filterTabs=this.$manyRefs.filterTabs,this.selectButton=this.$refs.selectButton,this.uploadButton=this.$refs.uploadButton,this.uploadHint=this.$refs.uploadHint,this.formContainer=this.$refs.formContainer,this.formContainerPlaceholder=this.$refs.formContainerPlaceholder,this.dropzoneContainer=this.$refs.dropzoneContainer,this.loadMore=this.$refs.loadMore,this.type="gallery",this.lastSelected={},this.lastSelectedTime=0,this.callback=null,this.resetState=()=>{this.hasData=!1,this.page=1,this.filter="all"},this.resetState(),this.setupListeners()}setupListeners(){R(this.filterTabs,i=>{this.resetAll(),this.filter=i.target.dataset.filter,this.setActiveFilterTab(this.filter),this.loadGallery()}),this.searchForm.addEventListener("submit",i=>{this.resetListView(),this.loadGallery(),this.cancelSearch.toggleAttribute("hidden",!this.searchInput.value),i.preventDefault()}),R(this.cancelSearch,()=>{this.resetListView(),this.resetSearchView(),this.loadGallery()}),K(this.container,".load-more button","click",this.runLoadMore.bind(this)),this.listContainer.addEventListener("event-emit-select-image",this.onImageSelectEvent.bind(this)),this.listContainer.addEventListener("error",i=>{i.target.src=window.baseUrl("loading_error.png")},!0),R(this.selectButton,()=>{this.callback&&this.callback(this.lastSelected),this.hide()}),K(this.formContainer,"#image-manager-delete","click",()=>{this.lastSelected&&this.loadImageEditForm(this.lastSelected.id,!0)}),K(this.formContainer,"#image-manager-rebuild-thumbs","click",async(i,r)=>{r.disabled=!0,this.lastSelected&&await this.rebuildThumbnails(this.lastSelected.id),r.disabled=!1}),this.formContainer.addEventListener("ajax-form-success",()=>{this.refreshGallery(),this.resetEditForm()}),this.container.addEventListener("dropzone-upload-success",this.refreshGallery.bind(this));let t=this.listContainer.parentElement,e=[];t.addEventListener("wheel",i=>{if(!(Math.ceil(t.scrollHeight-t.scrollTop)===t.clientHeight)||i.deltaY<1)return;let s=Date.now()-1e3;e.push(Date.now()),e=e.filter(a=>a>=s),e.length>5&&this.canLoadMore()&&this.runLoadMore()})}show(t,e="gallery"){this.resetAll(),this.callback=t,this.type=e,this.getPopup().show();let i=e!=="gallery";this.dropzoneContainer.classList.toggle("hidden",i),this.uploadButton.classList.toggle("hidden",i),this.uploadHint.classList.toggle("hidden",i),window.$components.firstOnElement(this.container,"dropzone").toggleActive(!i),this.hasData||(this.loadGallery(),this.hasData=!0)}hide(){this.getPopup().hide()}getPopup(){return window.$components.firstOnElement(this.popupEl,"popup")}async loadGallery(){let t={page:this.page,search:this.searchInput.value||null,uploaded_to:this.uploadedTo,filter_type:this.filter==="all"?null:this.filter},{data:e}=await window.$http.get(`images/${this.type}`,t);t.page===1&&(this.listContainer.innerHTML=""),this.addReturnedHtmlElementsToList(e),Te(this.listContainer)}addReturnedHtmlElementsToList(t){let e=document.createElement("div");e.innerHTML=t;let i=e.querySelector(".load-more");i&&(i.remove(),this.loadMore.innerHTML=i.innerHTML),this.loadMore.toggleAttribute("hidden",!i),window.$components.init(e);for(let r of[...e.children])this.listContainer.appendChild(r)}setActiveFilterTab(t){for(let e of this.filterTabs){let i=e.dataset.filter===t;e.setAttribute("aria-selected",i?"true":"false")}}resetAll(){this.resetState(),this.resetListView(),this.resetSearchView(),this.resetEditForm(),this.setActiveFilterTab("all"),this.selectButton.classList.add("hidden")}resetSearchView(){this.searchInput.value="",this.cancelSearch.toggleAttribute("hidden",!0)}resetEditForm(){this.formContainer.innerHTML="",this.formContainerPlaceholder.removeAttribute("hidden")}resetListView(){Le(this.listContainer),this.page=1}refreshGallery(){this.resetListView(),this.loadGallery()}async onImageSelectEvent(t){let e=JSON.parse(t.detail.data),i=e&&e.id===this.lastSelected.id&&Date.now()-this.lastSelectedTime<400,r=t.target.classList.contains("selected");[...this.listContainer.querySelectorAll(".selected")].forEach(o=>{o.classList.remove("selected")}),!r&&!i?(t.target.classList.add("selected"),e=await this.loadImageEditForm(e.id)):i?i&&(e=this.lastSelected):this.resetEditForm(),this.selectButton.classList.toggle("hidden",r),i&&this.callback&&(this.callback(e),this.hide()),this.lastSelected=e,this.lastSelectedTime=Date.now()}async loadImageEditForm(t,e=!1){e||(this.formContainer.innerHTML="");let i=e?{delete:!0}:{},{data:r}=await window.$http.get(`/images/edit/${t}`,i);this.formContainer.innerHTML=r,this.formContainerPlaceholder.setAttribute("hidden",""),window.$components.init(this.formContainer);let o=this.formContainer.querySelector("#image-manager-form-image-data");return JSON.parse(o.text)}runLoadMore(){Le(this.loadMore),this.page+=1,this.loadGallery()}canLoadMore(){return this.loadMore.querySelector("button")&&!this.loadMore.hasAttribute("hidden")}async rebuildThumbnails(t){try{let e=await window.$http.put(`/images/${t}/rebuild-thumbnails`);window.$events.success(e.data),this.refreshGallery()}catch(e){window.$events.showResponseError(e)}}};var ri=class extends g{setup(){this.imageElem=this.$refs.image,this.imageInput=this.$refs.imageInput,this.resetInput=this.$refs.resetInput,this.removeInput=this.$refs.removeInput,this.resetButton=this.$refs.resetButton,this.removeButton=this.$refs.removeButton||null,this.defaultImage=this.$opts.defaultImage,this.setupListeners()}setupListeners(){this.resetButton.addEventListener("click",this.reset.bind(this)),this.removeButton&&this.removeButton.addEventListener("click",this.removeImage.bind(this)),this.imageInput.addEventListener("change",this.fileInputChange.bind(this))}fileInputChange(){this.resetInput.setAttribute("disabled","disabled"),this.removeInput&&this.removeInput.setAttribute("disabled","disabled");for(let t of this.imageInput.files)this.imageElem.src=window.URL.createObjectURL(t);this.imageElem.classList.remove("none")}reset(){this.imageInput.value="",this.imageElem.src=this.defaultImage,this.resetInput.removeAttribute("disabled"),this.removeInput&&this.removeInput.setAttribute("disabled","disabled"),this.imageElem.classList.remove("none")}removeImage(){this.imageInput.value="",this.imageElem.classList.add("none"),this.removeInput.removeAttribute("disabled"),this.resetInput.setAttribute("disabled","disabled")}};var oi=class extends g{setup(){this.elem=this.$el,this.menu=this.$refs.menu,this.sortInput=this.$refs.sort,this.orderInput=this.$refs.order,this.form=this.$refs.form,this.setupListeners()}setupListeners(){this.menu.addEventListener("click",t=>{t.target.closest("[data-sort-value]")!==null&&this.sortOptionClick(t)}),this.elem.addEventListener("click",t=>{t.target.closest("[data-sort-dir]")!==null&&this.sortDirectionClick(t)})}sortOptionClick(t){let e=t.target.closest("[data-sort-value]");this.sortInput.value=e.getAttribute("data-sort-value"),t.preventDefault(),this.form.submit()}sortDirectionClick(t){let e=this.orderInput.value;this.orderInput.value=e==="asc"?"desc":"asc",t.preventDefault(),this.form.submit()}};var Vc=Ko(Rc()),Wc=Ko(jc()),yi=class{constructor(){this.renderer=new Vc.default({html:!0}),this.renderer.use(Wc.default,{label:!0})}getRenderer(){return this.renderer}render(t){return this.renderer.render(t)}};function mf(n,t){return document.createElement(n,t)}function gf(n,t,e){return document.createElementNS(n,t,e)}function bf(){return te(document.createDocumentFragment())}function vf(n){return document.createTextNode(n)}function wf(n){return document.createComment(n)}function yf(n,t,e){if(qt(n)){let i=n;for(;i&&qt(i);)i=te(i).parent;n=i??n}qt(t)&&(t=te(t,n)),e&&qt(e)&&(e=te(e).firstChildNode),n.insertBefore(t,e)}function xf(n,t){n.removeChild(t)}function kf(n,t){qt(t)&&(t=te(t,n)),n.appendChild(t)}function Gc(n){if(qt(n)){for(;n&&qt(n);)n=te(n).parent;return n??null}return n.parentNode}function Cf(n){var t;if(qt(n)){let e=te(n),i=Gc(e);if(i&&e.lastChildNode){let r=Array.from(i.childNodes),o=r.indexOf(e.lastChildNode);return(t=r[o+1])!==null&&t!==void 0?t:null}return null}return n.nextSibling}function Ef(n){return n.tagName}function _f(n,t){n.textContent=t}function Sf(n){return n.textContent}function Af(n){return n.nodeType===1}function Df(n){return n.nodeType===3}function Lf(n){return n.nodeType===8}function qt(n){return n.nodeType===11}function te(n,t){var e,i,r;let o=n;return(e=o.parent)!==null&&e!==void 0||(o.parent=t??null),(i=o.firstChildNode)!==null&&i!==void 0||(o.firstChildNode=n.firstChild),(r=o.lastChildNode)!==null&&r!==void 0||(o.lastChildNode=n.lastChild),o}var xi={createElement:mf,createElementNS:gf,createTextNode:vf,createDocumentFragment:bf,createComment:wf,insertBefore:yf,removeChild:xf,appendChild:kf,parentNode:Gc,nextSibling:Cf,tagName:Ef,setTextContent:_f,getTextContent:Sf,isElement:Af,isText:Df,isComment:Lf,isDocumentFragment:qt};function Bt(n,t,e,i,r){let o=t===void 0?void 0:t.key;return{sel:n,data:t,children:e,text:i,elm:r,key:o}}var Kc=Array.isArray;function Zc(n){return typeof n=="string"||typeof n=="number"||n instanceof String||n instanceof Number}function _o(n){return n===void 0}function ut(n){return n!==void 0}var So=Bt("",{},[],void 0,void 0);function Qe(n,t){var e,i;let r=n.key===t.key,o=((e=n.data)===null||e===void 0?void 0:e.is)===((i=t.data)===null||i===void 0?void 0:i.is),s=n.sel===t.sel,a=!n.sel&&n.sel===t.sel?typeof n.text==typeof t.text:!0;return s&&r&&o&&a}function $f(){throw new Error("The document fragment is not supported on this platform.")}function If(n,t){return n.isElement(t)}function Mf(n,t){return n.isDocumentFragment(t)}function Ff(n,t,e){var i;let r={};for(let o=t;o<=e;++o){let s=(i=n[o])===null||i===void 0?void 0:i.key;s!==void 0&&(r[s]=o)}return r}var qf=["create","update","remove","destroy","pre","post"];function Ao(n,t,e){let i={create:[],update:[],remove:[],destroy:[],pre:[],post:[]},r=t!==void 0?t:xi;for(let p of qf)for(let m of n){let w=m[p];w!==void 0&&i[p].push(w)}function o(p){let m=p.id?"#"+p.id:"",w=p.getAttribute("class"),v=w?"."+w.split(" ").join("."):"";return Bt(r.tagName(p).toLowerCase()+m+v,{},[],void 0,p)}function s(p){return Bt(void 0,{},[],void 0,p)}function a(p,m){return function(){if(--m===0){let v=r.parentNode(p);r.removeChild(v,p)}}}function l(p,m){var w,v,b,k;let x,E=p.data;if(E!==void 0){let D=(w=E.hook)===null||w===void 0?void 0:w.init;ut(D)&&(D(p),E=p.data)}let y=p.children,A=p.sel;if(A==="!")_o(p.text)&&(p.text=""),p.elm=r.createComment(p.text);else if(A!==void 0){let D=A.indexOf("#"),M=A.indexOf(".",D),T=D>0?D:A.length,P=M>0?M:A.length,H=D!==-1||M!==-1?A.slice(0,Math.min(T,P)):A,U=p.elm=ut(E)&&ut(x=E.ns)?r.createElementNS(x,H,E):r.createElement(H,E);for(T0&&U.setAttribute("class",A.slice(P+1).replace(/\./g," ")),x=0;x0&&(u.attrs=l),Object.keys(c).length>0&&(u.dataset=c),a[0]==="s"&&a[1]==="v"&&a[2]==="g"&&(a.length===3||a[3]==="."||a[3]==="#")&&Do(u,h,a),Bt(a,u,h,void 0,n)}else return e.isText(n)?(i=e.getTextContent(n),Bt(void 0,void 0,void 0,i,n)):e.isComment(n)?(i=e.getTextContent(n),Bt("!",{},[],i,n)):Bt("",{},[],void 0,n)}var Bf="http://www.w3.org/1999/xlink",Pf="http://www.w3.org/XML/1998/namespace";function Xc(n,t){let e,i=t.elm,r=n.data.attrs,o=t.data.attrs;if(!(!r&&!o)&&r!==o){r=r||{},o=o||{};for(e in o){let s=o[e];r[e]!==s&&(s===!0?i.setAttribute(e,""):s===!1?i.removeAttribute(e):e.charCodeAt(0)!==120?i.setAttribute(e,s):e.charCodeAt(3)===58?i.setAttributeNS(Pf,e,s):e.charCodeAt(5)===58?i.setAttributeNS(Bf,e,s):i.setAttribute(e,s))}for(e in r)e in o||i.removeAttribute(e)}}var Lo={create:Xc,update:Xc};var ki;function Of(){return ki||(ki=Ao([Lo]),ki)}function Yc(n,t){let e=document.createElement("div");e.innerHTML=t,Of()(tn(n),tn(e))}var Ci=class{constructor(t){this.editor=t,this.container=t.config.displayEl,this.doc=null,this.lastDisplayClick=0,this.container.contentDocument.readyState==="complete"?this.onLoad():this.container.addEventListener("load",this.onLoad.bind(this)),this.updateVisibility(t.settings.get("showPreview")),t.settings.onChange("showPreview",e=>this.updateVisibility(e))}updateVisibility(t){let e=this.container.closest(".markdown-editor-wrap");e.style.display=t?null:"none"}onLoad(){this.doc=this.container.contentDocument,this.loadStylesIntoDisplay(),this.doc.body.className="page-content",this.doc.addEventListener("click",this.onDisplayClick.bind(this))}onDisplayClick(t){let e=Date.now()-this.lastDisplayClick<300,i=t.target.closest("a");if(i!==null){t.preventDefault(),window.open(i.getAttribute("href"));return}let r=t.target.closest("[drawio-diagram]");if(r!==null&&e){this.editor.actions.editDrawing(r);return}this.lastDisplayClick=Date.now()}loadStylesIntoDisplay(){this.doc.documentElement.classList.add("markdown-editor-display"),document.documentElement.classList.contains("dark-mode")&&(this.doc.documentElement.style.backgroundColor="#222",this.doc.documentElement.classList.add("dark-mode")),this.doc.head.innerHTML="";let t=document.head.querySelectorAll("style,link[rel=stylesheet]");for(let e of t){let i=e.cloneNode(!0);this.doc.head.appendChild(i)}}patchWithHtml(t){let{body:e}=this.doc;if(e.children.length===0){let r=document.createElement("div");this.doc.body.append(r)}let i=e.children[0];Yc(i,t)}scrollToIndex(t){let e=this.doc.body?.children[0]?.children;if(e&&e.length<=t)return;(t===-1?e[e.length-1]:e[t]).scrollIntoView({block:"start",inline:"nearest",behavior:"smooth"})}};function Ei(n){return new Promise((t,e)=>{n.oncomplete=n.onsuccess=()=>t(n.result),n.onabort=n.onerror=()=>e(n.error)})}function Rf(n,t){let e=indexedDB.open(n);e.onupgradeneeded=()=>e.result.createObjectStore(t);let i=Ei(e);return(r,o)=>i.then(s=>o(s.transaction(t,r).objectStore(t)))}var To;function $o(){return To||(To=Rf("keyval-store","keyval")),To}function Io(n,t=$o()){return t("readonly",e=>Ei(e.get(n)))}function Mo(n,t,e=$o()){return e("readwrite",i=>(i.put(t,n),Ei(i.transaction)))}function Fo(n,t=$o()){return t("readwrite",e=>(e.delete(n),Ei(e.transaction)))}var $t=null,Po,_i,qo,Bo="last-drawing-save";function Oo(n){$t.contentWindow.postMessage(JSON.stringify(n),Po)}function zf(n){Mo(Bo,n.data),qo&&qo(n.data).then(()=>{Fo(Bo)})}function Hf(n){Oo({action:"export",format:"xmlpng",xml:n.xml,spin:"Updating drawing"})}function Uf(){_i&&_i().then(n=>{Oo({action:"load",autosave:1,xml:n})})}function jf(){let n={};window.$events.emitPublic($t,"editor-drawio::configure",{config:n}),Oo({action:"configure",config:n})}function Jc(){window.removeEventListener("message",Qc),$t&&document.body.removeChild($t)}function Qc(n){if(!n.data||n.data.length<1||n.origin!==Po)return;let t=JSON.parse(n.data);t.event==="init"?Uf():t.event==="exit"?Jc():t.event==="save"?Hf(t):t.event==="export"?zf(t):t.event==="configure"&&jf()}async function Vf(){let n=await Io(Bo),t=document.getElementById("unsaved-drawing-dialog");t||console.error("Missing expected unsaved-drawing dialog"),n&&await window.$components.firstOnElement(t,"confirm-dialog").show()&&(_i=async()=>n)}async function en(n,t,e){_i=t,qo=e,await Vf(),$t=document.createElement("iframe"),$t.setAttribute("frameborder","0"),window.addEventListener("message",Qc),$t.setAttribute("src",n),$t.setAttribute("class","fullscreen"),$t.style.backgroundColor="#FFFFFF",document.body.appendChild($t),Po=new URL(n).origin}async function Ro(n,t){let e={image:n,uploaded_to:t};return(await window.$http.post(window.baseUrl("/images/drawio"),e)).data}function ee(){Jc()}async function Si(n){try{return`data:image/png;base64,${(await window.$http.get(window.baseUrl(`/images/drawio/base64/${n}`))).data.content}`}catch(t){throw t instanceof window.$http.HttpError&&window.$events.showResponseError(t),ee(),t}}var nn,No,xe,Ai,ke,Di,Pt,ne,Wt,ye,rt,ht,rn,zo,on,Ho,Ce,Li,dt,vt,$i,eu,Ti=class{constructor(t){ot(this,nn);ot(this,xe);ot(this,ke);ot(this,Pt);ot(this,Wt);ot(this,rt);ot(this,rn);ot(this,on);ot(this,Ce);ot(this,dt);ot(this,$i);this.editor=t,this.lastContent={html:"",markdown:""}}updateAndRender(){let t=L(this,xe,Ai).call(this);this.editor.config.inputEl.value=t;let e=this.editor.markdown.render(t);window.$events.emit("editor-html-change",""),window.$events.emit("editor-markdown-change",""),this.lastContent.html=e,this.lastContent.markdown=t,this.editor.display.patchWithHtml(e)}getContent(){return this.lastContent}showImageInsert(){window.$components.first("image-manager").show(e=>{let i=e.thumbs?.display||e.url,o=`[![${L(this,Wt,ye).call(this)||e.name}](${i})](${e.url})`;L(this,Pt,ne).call(this,o,o.length)},"gallery")}insertImage(){let t=`![${L(this,Wt,ye).call(this)}](http://)`;L(this,Pt,ne).call(this,t,t.length-1)}insertLink(){let t=L(this,Wt,ye).call(this),e=`[${t}]()`,i=t===""?-3:-1;L(this,Pt,ne).call(this,e,e.length+i)}showImageManager(){let t=L(this,rt,ht).call(this);window.$components.first("image-manager").show(i=>{L(this,nn,No).call(this,i,t)},"drawio")}showLinkSelector(){let t=L(this,rt,ht).call(this),e=window.$components.first("entity-selector-popup"),i=L(this,Wt,ye).call(this,t);e.show(r=>{let s=`[${i||r.name}](${r.link})`;L(this,Pt,ne).call(this,s,s.length,t)},{initialValue:i,searchEndpoint:"/search/entity-selector",entityTypes:"page,book,chapter,bookshelf",entityPermission:"view"})}startDrawing(){let t=this.editor.config.drawioUrl;if(!t)return;let e=L(this,rt,ht).call(this);en(t,()=>Promise.resolve(""),async i=>{let r={image:i,uploaded_to:Number(this.editor.config.pageId)};try{let o=await window.$http.post("/images/drawio",r);L(this,nn,No).call(this,o.data,e),ee()}catch(o){throw this.handleDrawingUploadError(o),new Error(`Failed to save image with error: ${o}`)}})}editDrawing(t){let{drawioUrl:e}=this.editor.config;if(!e)return;let i=L(this,rt,ht).call(this),r=t.getAttribute("drawio-diagram");en(e,()=>Si(r),async o=>{let s={image:o,uploaded_to:Number(this.editor.config.pageId)};try{let a=await window.$http.post("/images/drawio",s),l=`
    `,c=L(this,xe,Ai).call(this).split(` +`};Dt.text=function(i,t){return Jt(i[t].content)};Dt.html_block=function(i,t){return i[t].content};Dt.html_inline=function(i,t){return i[t].content};function be(){this.rules=Dd({},Dt)}be.prototype.renderAttrs=function(t){var e,n,r;if(!t.attrs)return"";for(r="",e=0,n=t.attrs.length;e +`:">",o)};be.prototype.renderInline=function(i,t,e){for(var n,r="",o=this.rules,s=0,a=i.length;s{"use strict";function Ct(){this.__rules__=[],this.__cache__=null}Ct.prototype.__find__=function(i){for(var t=0;t{"use strict";var Td=/\r\n?|\n/g,$d=/\0/g;ka.exports=function(t){var e;e=t.src.replace(Td,` +`),e=e.replace($d,"\uFFFD"),t.src=e}});var _a=_((ov,Ea)=>{"use strict";Ea.exports=function(t){var e;t.inlineMode?(e=new t.Token("inline","",0),e.content=t.src,e.map=[0,1],e.children=[],t.tokens.push(e)):t.md.block.parse(t.src,t.md,t.env,t.tokens)}});var Aa=_((sv,Sa)=>{"use strict";Sa.exports=function(t){var e=t.tokens,n,r,o;for(r=0,o=e.length;r{"use strict";var Id=N().arrayReplaceAt;function Md(i){return/^\s]/i.test(i)}function Fd(i){return/^<\/a\s*>/i.test(i)}Da.exports=function(t){var e,n,r,o,s,a,l,c,u,h,d,f,p,m,w,v,b=t.tokens,k;if(t.md.options.linkify){for(n=0,r=b.length;n=0;e--){if(a=o[e],a.type==="link_close"){for(e--;o[e].level!==a.level&&o[e].type!=="link_open";)e--;continue}if(a.type==="html_inline"&&(Md(a.content)&&p>0&&p--,Fd(a.content)&&p++),!(p>0)&&a.type==="text"&&t.md.linkify.test(a.content)){for(u=a.content,k=t.md.linkify.match(u),l=[],f=a.level,d=0,k.length>0&&k[0].index===0&&e>0&&o[e-1].type==="text_special"&&(k=k.slice(1)),c=0;cd&&(s=new t.Token("text","",0),s.content=u.slice(d,h),s.level=f,l.push(s)),s=new t.Token("link_open","a",1),s.attrs=[["href",w]],s.level=f++,s.markup="linkify",s.info="auto",l.push(s),s=new t.Token("text","",0),s.content=v,s.level=f,l.push(s),s=new t.Token("link_close","a",-1),s.level=--f,s.markup="linkify",s.info="auto",l.push(s),d=k[c].lastIndex);d{"use strict";var Ta=/\+-|\.\.|\?\?\?\?|!!!!|,,|--/,qd=/\((c|tm|r)\)/i,Bd=/\((c|tm|r)\)/ig,Pd={c:"\xA9",r:"\xAE",tm:"\u2122"};function Od(i,t){return Pd[t.toLowerCase()]}function Rd(i){var t,e,n=0;for(t=i.length-1;t>=0;t--)e=i[t],e.type==="text"&&!n&&(e.content=e.content.replace(Bd,Od)),e.type==="link_open"&&e.info==="auto"&&n--,e.type==="link_close"&&e.info==="auto"&&n++}function Nd(i){var t,e,n=0;for(t=i.length-1;t>=0;t--)e=i[t],e.type==="text"&&!n&&Ta.test(e.content)&&(e.content=e.content.replace(/\+-/g,"\xB1").replace(/\.{2,}/g,"\u2026").replace(/([?!])…/g,"$1..").replace(/([?!]){4,}/g,"$1$1$1").replace(/,{2,}/g,",").replace(/(^|[^-])---(?=[^-]|$)/mg,"$1\u2014").replace(/(^|\s)--(?=\s|$)/mg,"$1\u2013").replace(/(^|[^-\s])--(?=[^-\s]|$)/mg,"$1\u2013")),e.type==="link_open"&&e.info==="auto"&&n--,e.type==="link_close"&&e.info==="auto"&&n++}$a.exports=function(t){var e;if(t.md.options.typographer)for(e=t.tokens.length-1;e>=0;e--)t.tokens[e].type==="inline"&&(qd.test(t.tokens[e].content)&&Rd(t.tokens[e].children),Ta.test(t.tokens[e].content)&&Nd(t.tokens[e].children))}});var Ra=_((cv,Oa)=>{"use strict";var Ma=N().isWhiteSpace,Fa=N().isPunctChar,qa=N().isMdAsciiPunct,zd=/['"]/,Ba=/['"]/g,Pa="\u2019";function dn(i,t,e){return i.slice(0,t)+e+i.slice(t+1)}function Hd(i,t){var e,n,r,o,s,a,l,c,u,h,d,f,p,m,w,v,b,k,x,E,y;for(x=[],e=0;e=0&&!(x[b].level<=l);b--);if(x.length=b+1,n.type==="text"){r=n.content,s=0,a=r.length;t:for(;s=0)u=r.charCodeAt(o.index-1);else for(b=e-1;b>=0&&!(i[b].type==="softbreak"||i[b].type==="hardbreak");b--)if(i[b].content){u=i[b].content.charCodeAt(i[b].content.length-1);break}if(h=32,s=48&&u<=57&&(v=w=!1),w&&v&&(w=d,v=f),!w&&!v){k&&(n.content=dn(n.content,o.index,Pa));continue}if(v){for(b=x.length-1;b>=0&&(c=x[b],!(x[b].level=0;e--)t.tokens[e].type!=="inline"||!zd.test(t.tokens[e].content)||Hd(t.tokens[e].children,t)}});var za=_((uv,Na)=>{"use strict";Na.exports=function(t){var e,n,r,o,s,a,l=t.tokens;for(e=0,n=l.length;e{"use strict";function ve(i,t,e){this.type=i,this.tag=t,this.attrs=null,this.map=null,this.nesting=e,this.level=0,this.children=null,this.content="",this.markup="",this.info="",this.meta=null,this.block=!1,this.hidden=!1}ve.prototype.attrIndex=function(t){var e,n,r;if(!this.attrs)return-1;for(e=this.attrs,n=0,r=e.length;n=0&&(n=this.attrs[e][1]),n};ve.prototype.attrJoin=function(t,e){var n=this.attrIndex(t);n<0?this.attrPush([t,e]):this.attrs[n][1]=this.attrs[n][1]+" "+e};Ha.exports=ve});var Va=_((dv,ja)=>{"use strict";var Ud=pn();function Ua(i,t,e){this.src=i,this.env=e,this.tokens=[],this.inlineMode=!1,this.md=t}Ua.prototype.Token=Ud;ja.exports=Ua});var Ga=_((pv,Wa)=>{"use strict";var jd=hn(),to=[["normalize",Ca()],["block",_a()],["inline",Aa()],["linkify",La()],["replacements",Ia()],["smartquotes",Ra()],["text_join",za()]];function eo(){this.ruler=new jd;for(var i=0;i{"use strict";var io=N().isSpace;function no(i,t){var e=i.bMarks[t]+i.tShift[t],n=i.eMarks[t];return i.src.slice(e,n)}function Ka(i){var t=[],e=0,n=i.length,r,o=!1,s=0,a="";for(r=i.charCodeAt(e);en||(u=e+1,t.sCount[u]=4||(a=t.bMarks[u]+t.tShift[u],a>=t.eMarks[u])||(E=t.src.charCodeAt(a++),E!==124&&E!==45&&E!==58)||a>=t.eMarks[u]||(y=t.src.charCodeAt(a++),y!==124&&y!==45&&y!==58&&!io(y))||E===45&&io(y))return!1;for(;a=4||(h=Ka(s),h.length&&h[0]===""&&h.shift(),h.length&&h[h.length-1]===""&&h.pop(),d=h.length,d===0||d!==p.length))return!1;if(r)return!0;for(b=t.parentType,t.parentType="table",x=t.md.block.ruler.getRules("blockquote"),f=t.push("table_open","table",1),f.map=w=[e,0],f=t.push("thead_open","thead",1),f.map=[e,e+1],f=t.push("tr_open","tr",1),f.map=[e,e+1],l=0;l=4)break;for(h=Ka(s),h.length&&h[0]===""&&h.shift(),h.length&&h[h.length-1]===""&&h.pop(),u===e+2&&(f=t.push("tbody_open","tbody",1),f.map=v=[e+2,0]),f=t.push("tr_open","tr",1),f.map=[u,u+1],l=0;l{"use strict";Ya.exports=function(t,e,n){var r,o,s;if(t.sCount[e]-t.blkIndent<4)return!1;for(o=r=e+1;r=4){r++,o=r;continue}break}return t.line=o,s=t.push("code_block","code",0),s.content=t.getLines(e,o,4+t.blkIndent,!1)+` +`,s.map=[e,t.line],!0}});var tl=_((gv,Qa)=>{"use strict";Qa.exports=function(t,e,n,r){var o,s,a,l,c,u,h,d=!1,f=t.bMarks[e]+t.tShift[e],p=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4||f+3>p||(o=t.src.charCodeAt(f),o!==126&&o!==96)||(c=f,f=t.skipChars(f,o),s=f-c,s<3)||(h=t.src.slice(c,f),a=t.src.slice(f,p),o===96&&a.indexOf(String.fromCharCode(o))>=0))return!1;if(r)return!0;for(l=e;l++,!(l>=n||(f=c=t.bMarks[l]+t.tShift[l],p=t.eMarks[l],f=4)&&(f=t.skipChars(f,o),!(f-c{"use strict";var Vd=N().isSpace;el.exports=function(t,e,n,r){var o,s,a,l,c,u,h,d,f,p,m,w,v,b,k,x,E,y,S,D,M=t.lineMax,T=t.bMarks[e]+t.tShift[e],P=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4||t.src.charCodeAt(T)!==62)return!1;if(r)return!0;for(p=[],m=[],b=[],k=[],y=t.md.block.ruler.getRules("blockquote"),v=t.parentType,t.parentType="blockquote",d=e;d=P));d++){if(t.src.charCodeAt(T++)===62&&!D){for(l=t.sCount[d]+1,t.src.charCodeAt(T)===32?(T++,l++,o=!1,x=!0):t.src.charCodeAt(T)===9?(x=!0,(t.bsCount[d]+l)%4===3?(T++,l++,o=!1):o=!0):x=!1,f=l,p.push(t.bMarks[d]),t.bMarks[d]=T;T=P,m.push(t.bsCount[d]),t.bsCount[d]=t.sCount[d]+1+(x?1:0),b.push(t.sCount[d]),t.sCount[d]=f-l,k.push(t.tShift[d]),t.tShift[d]=T-t.bMarks[d];continue}if(u)break;for(E=!1,a=0,c=y.length;a",S.map=h=[e,0],t.md.block.tokenize(t,e,d),S=t.push("blockquote_close","blockquote",-1),S.markup=">",t.lineMax=M,t.parentType=v,h[1]=t.line,a=0;a{"use strict";var Wd=N().isSpace;nl.exports=function(t,e,n,r){var o,s,a,l,c=t.bMarks[e]+t.tShift[e],u=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4||(o=t.src.charCodeAt(c++),o!==42&&o!==45&&o!==95))return!1;for(s=1;c{"use strict";var al=N().isSpace;function ol(i,t){var e,n,r,o;return n=i.bMarks[t]+i.tShift[t],r=i.eMarks[t],e=i.src.charCodeAt(n++),e!==42&&e!==45&&e!==43||n=o||(e=i.src.charCodeAt(r++),e<48||e>57))return-1;for(;;){if(r>=o)return-1;if(e=i.src.charCodeAt(r++),e>=48&&e<=57){if(r-n>=10)return-1;continue}if(e===41||e===46)break;return-1}return r=4||t.listIndent>=0&&t.sCount[$]-t.listIndent>=4&&t.sCount[$]=t.blkIndent&&(Ot=!0),(T=sl(t,$))>=0){if(h=!0,H=t.bMarks[$]+t.tShift[$],v=Number(t.src.slice(H,T-1)),Ot&&v!==1)return!1}else if((T=ol(t,$))>=0)h=!1;else return!1;if(Ot&&t.skipSpaces(T)>=t.eMarks[$])return!1;if(r)return!0;for(w=t.src.charCodeAt(T-1),m=t.tokens.length,h?(W=t.push("ordered_list_open","ol",1),v!==1&&(W.attrs=[["start",v]])):W=t.push("bullet_list_open","ul",1),W.map=p=[$,0],W.markup=String.fromCharCode(w),P=!1,et=t.md.block.ruler.getRules("list"),E=t.parentType,t.parentType="list";$=b?c=1:c=k-u,c>4&&(c=1),l=u+c,W=t.push("list_item_open","li",1),W.markup=String.fromCharCode(w),W.map=d=[$,0],h&&(W.info=t.src.slice(H,T-1)),D=t.tight,S=t.tShift[$],y=t.sCount[$],x=t.listIndent,t.listIndent=t.blkIndent,t.blkIndent=l,t.tight=!0,t.tShift[$]=s-t.bMarks[$],t.sCount[$]=k,s>=b&&t.isEmpty($+1)?t.line=Math.min(t.line+2,n):t.md.block.tokenize(t,$,n,!0),(!t.tight||P)&&(Rt=!1),P=t.line-$>1&&t.isEmpty(t.line-1),t.blkIndent=t.listIndent,t.listIndent=x,t.tShift[$]=S,t.sCount[$]=y,t.tight=D,W=t.push("list_item_close","li",-1),W.markup=String.fromCharCode(w),$=t.line,d[1]=$,$>=n||t.sCount[$]=4)break;for(U=!1,a=0,f=et.length;a{"use strict";var Kd=N().normalizeReference,fn=N().isSpace;ul.exports=function(t,e,n,r){var o,s,a,l,c,u,h,d,f,p,m,w,v,b,k,x,E=0,y=t.bMarks[e]+t.tShift[e],S=t.eMarks[e],D=e+1;if(t.sCount[e]-t.blkIndent>=4||t.src.charCodeAt(y)!==91)return!1;for(;++y3)&&!(t.sCount[D]<0)){for(b=!1,u=0,h=k.length;u"u"&&(t.env.references={}),typeof t.env.references[d]>"u"&&(t.env.references[d]={title:x,href:c}),t.parentType=p,t.line=e+E+1),!0)}});var pl=_((xv,dl)=>{"use strict";dl.exports=["address","article","aside","base","basefont","blockquote","body","caption","center","col","colgroup","dd","details","dialog","dir","div","dl","dt","fieldset","figcaption","figure","footer","form","frame","frameset","h1","h2","h3","h4","h5","h6","head","header","hr","html","iframe","legend","li","link","main","menu","menuitem","nav","noframes","ol","optgroup","option","p","param","section","source","summary","table","tbody","td","tfoot","th","thead","title","tr","track","ul"]});var oo=_((kv,ro)=>{"use strict";var Zd="[a-zA-Z_:][a-zA-Z0-9:._-]*",Xd="[^\"'=<>`\\x00-\\x20]+",Yd="'[^']*'",Jd='"[^"]*"',Qd="(?:"+Xd+"|"+Yd+"|"+Jd+")",tp="(?:\\s+"+Zd+"(?:\\s*=\\s*"+Qd+")?)",fl="<[A-Za-z][A-Za-z0-9\\-]*"+tp+"*\\s*\\/?>",ml="<\\/[A-Za-z][A-Za-z0-9\\-]*\\s*>",ep="|",ip="<[?][\\s\\S]*?[?]>",np="]*>",rp="",op=new RegExp("^(?:"+fl+"|"+ml+"|"+ep+"|"+ip+"|"+np+"|"+rp+")"),sp=new RegExp("^(?:"+fl+"|"+ml+")");ro.exports.HTML_TAG_RE=op;ro.exports.HTML_OPEN_CLOSE_TAG_RE=sp});var bl=_((Cv,gl)=>{"use strict";var ap=pl(),lp=oo().HTML_OPEN_CLOSE_TAG_RE,we=[[/^<(script|pre|style|textarea)(?=(\s|>|$))/i,/<\/(script|pre|style|textarea)>/i,!0],[/^/,!0],[/^<\?/,/\?>/,!0],[/^/,!0],[/^/,!0],[new RegExp("^|$))","i"),/^$/,!0],[new RegExp(lp.source+"\\s*$"),/^$/,!1]];gl.exports=function(t,e,n,r){var o,s,a,l,c=t.bMarks[e]+t.tShift[e],u=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4||!t.md.options.html||t.src.charCodeAt(c)!==60)return!1;for(l=t.src.slice(c,u),o=0;o{"use strict";var vl=N().isSpace;wl.exports=function(t,e,n,r){var o,s,a,l,c=t.bMarks[e]+t.tShift[e],u=t.eMarks[e];if(t.sCount[e]-t.blkIndent>=4||(o=t.src.charCodeAt(c),o!==35||c>=u))return!1;for(s=1,o=t.src.charCodeAt(++c);o===35&&c6||cc&&vl(t.src.charCodeAt(a-1))&&(u=a),t.line=e+1,l=t.push("heading_open","h"+String(s),1),l.markup="########".slice(0,s),l.map=[e,t.line],l=t.push("inline","",0),l.content=t.src.slice(c,u).trim(),l.map=[e,t.line],l.children=[],l=t.push("heading_close","h"+String(s),-1),l.markup="########".slice(0,s)),!0)}});var kl=_((_v,xl)=>{"use strict";xl.exports=function(t,e,n){var r,o,s,a,l,c,u,h,d,f=e+1,p,m=t.md.block.ruler.getRules("paragraph");if(t.sCount[e]-t.blkIndent>=4)return!1;for(p=t.parentType,t.parentType="paragraph";f3)){if(t.sCount[f]>=t.blkIndent&&(c=t.bMarks[f]+t.tShift[f],u=t.eMarks[f],c=u)))){h=d===61?1:2;break}if(!(t.sCount[f]<0)){for(o=!1,s=0,a=m.length;s{"use strict";Cl.exports=function(t,e,n){var r,o,s,a,l,c,u=e+1,h=t.md.block.ruler.getRules("paragraph");for(c=t.parentType,t.parentType="paragraph";u3)&&!(t.sCount[u]<0)){for(o=!1,s=0,a=h.length;s{"use strict";var _l=pn(),mn=N().isSpace;function Lt(i,t,e,n){var r,o,s,a,l,c,u,h;for(this.src=i,this.md=t,this.env=e,this.tokens=n,this.bMarks=[],this.eMarks=[],this.tShift=[],this.sCount=[],this.bsCount=[],this.blkIndent=0,this.line=0,this.lineMax=0,this.tight=!1,this.ddIndent=-1,this.listIndent=-1,this.parentType="root",this.level=0,this.result="",o=this.src,h=!1,s=a=c=u=0,l=o.length;a0&&this.level++,this.tokens.push(n),n};Lt.prototype.isEmpty=function(t){return this.bMarks[t]+this.tShift[t]>=this.eMarks[t]};Lt.prototype.skipEmptyLines=function(t){for(var e=this.lineMax;te;)if(!mn(this.src.charCodeAt(--t)))return t+1;return t};Lt.prototype.skipChars=function(t,e){for(var n=this.src.length;tn;)if(e!==this.src.charCodeAt(--t))return t+1;return t};Lt.prototype.getLines=function(t,e,n,r){var o,s,a,l,c,u,h,d=t;if(t>=e)return"";for(u=new Array(e-t),o=0;dn?u[o]=new Array(s-n+1).join(" ")+this.src.slice(l,c):u[o]=this.src.slice(l,c)}return u.join("")};Lt.prototype.Token=_l;Sl.exports=Lt});var Ll=_((Dv,Dl)=>{"use strict";var cp=hn(),gn=[["table",Xa(),["paragraph","reference"]],["code",Ja()],["fence",tl(),["paragraph","reference","blockquote","list"]],["blockquote",il(),["paragraph","reference","blockquote","list"]],["hr",rl(),["paragraph","reference","blockquote","list"]],["list",cl(),["paragraph","reference","blockquote"]],["reference",hl()],["html_block",bl(),["paragraph","reference","blockquote"]],["heading",yl(),["paragraph","reference","blockquote"]],["lheading",kl()],["paragraph",El()]];function bn(){this.ruler=new cp;for(var i=0;i=e||i.sCount[l]=u){i.line=e;break}for(o=i.line,r=0;r=i.line)throw new Error("block rule didn't increment state.line");break}if(!n)throw new Error("none of the block rules matched");i.tight=!c,i.isEmpty(i.line-1)&&(c=!0),l=i.line,l{"use strict";function up(i){switch(i){case 10:case 33:case 35:case 36:case 37:case 38:case 42:case 43:case 45:case 58:case 60:case 61:case 62:case 64:case 91:case 92:case 93:case 94:case 95:case 96:case 123:case 125:case 126:return!0;default:return!1}}Tl.exports=function(t,e){for(var n=t.pos;n{"use strict";var hp=/(?:^|[^a-z0-9.+-])([a-z][a-z0-9.+-]*)$/i;Il.exports=function(t,e){var n,r,o,s,a,l,c,u;return!t.md.options.linkify||t.linkLevel>0||(n=t.pos,r=t.posMax,n+3>r)||t.src.charCodeAt(n)!==58||t.src.charCodeAt(n+1)!==47||t.src.charCodeAt(n+2)!==47||(o=t.pending.match(hp),!o)||(s=o[1],a=t.md.linkify.matchAtStart(t.src.slice(n-s.length)),!a)||(l=a.url,l.length<=s.length)||(l=l.replace(/\*+$/,""),c=t.md.normalizeLink(l),!t.md.validateLink(c))?!1:(e||(t.pending=t.pending.slice(0,-s.length),u=t.push("link_open","a",1),u.attrs=[["href",c]],u.markup="linkify",u.info="auto",u=t.push("text","",0),u.content=t.md.normalizeLinkText(l),u=t.push("link_close","a",-1),u.markup="linkify",u.info="auto"),t.pos+=l.length-s.length,!0)}});var ql=_(($v,Fl)=>{"use strict";var dp=N().isSpace;Fl.exports=function(t,e){var n,r,o,s=t.pos;if(t.src.charCodeAt(s)!==10)return!1;if(n=t.pending.length-1,r=t.posMax,!e)if(n>=0&&t.pending.charCodeAt(n)===32)if(n>=1&&t.pending.charCodeAt(n-1)===32){for(o=n-1;o>=1&&t.pending.charCodeAt(o-1)===32;)o--;t.pending=t.pending.slice(0,o),t.push("hardbreak","br",0)}else t.pending=t.pending.slice(0,-1),t.push("softbreak","br",0);else t.push("softbreak","br",0);for(s++;s{"use strict";var pp=N().isSpace,ao=[];for(so=0;so<256;so++)ao.push(0);var so;"\\!\"#$%&'()*+,./:;<=>?@[]^_`{|}~-".split("").forEach(function(i){ao[i.charCodeAt(0)]=1});Bl.exports=function(t,e){var n,r,o,s,a,l=t.pos,c=t.posMax;if(t.src.charCodeAt(l)!==92||(l++,l>=c))return!1;if(n=t.src.charCodeAt(l),n===10){for(e||t.push("hardbreak","br",0),l++;l=55296&&n<=56319&&l+1=56320&&r<=57343&&(s+=t.src[l+1],l++)),o="\\"+s,e||(a=t.push("text_special","",0),n<256&&ao[n]!==0?a.content=s:a.content=o,a.markup=o,a.info="escape"),t.pos=l+1,!0}});var Rl=_((Mv,Ol)=>{"use strict";Ol.exports=function(t,e){var n,r,o,s,a,l,c,u,h=t.pos,d=t.src.charCodeAt(h);if(d!==96)return!1;for(n=h,h++,r=t.posMax;h{"use strict";lo.exports.tokenize=function(t,e){var n,r,o,s,a,l=t.pos,c=t.src.charCodeAt(l);if(e||c!==126||(r=t.scanDelims(t.pos,!0),s=r.length,a=String.fromCharCode(c),s<2))return!1;for(s%2&&(o=t.push("text","",0),o.content=a,s--),n=0;n{"use strict";uo.exports.tokenize=function(t,e){var n,r,o,s=t.pos,a=t.src.charCodeAt(s);if(e||a!==95&&a!==42)return!1;for(r=t.scanDelims(t.pos,a===42),n=0;n=0;e--)n=t[e],!(n.marker!==95&&n.marker!==42)&&n.end!==-1&&(r=t[n.end],a=e>0&&t[e-1].end===n.end+1&&t[e-1].marker===n.marker&&t[e-1].token===n.token-1&&t[n.end+1].token===r.token+1,s=String.fromCharCode(n.marker),o=i.tokens[n.token],o.type=a?"strong_open":"em_open",o.tag=a?"strong":"em",o.nesting=1,o.markup=a?s+s:s,o.content="",o=i.tokens[r.token],o.type=a?"strong_close":"em_close",o.tag=a?"strong":"em",o.nesting=-1,o.markup=a?s+s:s,o.content="",a&&(i.tokens[t[e-1].token].content="",i.tokens[t[n.end+1].token].content="",e--))}uo.exports.postProcess=function(t){var e,n=t.tokens_meta,r=t.tokens_meta.length;for(zl(t,t.delimiters),e=0;e{"use strict";var fp=N().normalizeReference,po=N().isSpace;Hl.exports=function(t,e){var n,r,o,s,a,l,c,u,h,d="",f="",p=t.pos,m=t.posMax,w=t.pos,v=!0;if(t.src.charCodeAt(t.pos)!==91||(a=t.pos+1,s=t.md.helpers.parseLinkLabel(t,t.pos,!0),s<0))return!1;if(l=s+1,l=m)return!1;if(w=l,c=t.md.helpers.parseLinkDestination(t.src,l,t.posMax),c.ok){for(d=t.md.normalizeLink(c.str),t.md.validateLink(d)?l=c.pos:d="",w=l;l=m||t.src.charCodeAt(l)!==41)&&(v=!0),l++}if(v){if(typeof t.env.references>"u")return!1;if(l=0?o=t.src.slice(w,l++):l=s+1):l=s+1,o||(o=t.src.slice(a,s)),u=t.env.references[fp(o)],!u)return t.pos=p,!1;d=u.href,f=u.title}return e||(t.pos=a,t.posMax=s,h=t.push("link_open","a",1),h.attrs=n=[["href",d]],f&&n.push(["title",f]),t.linkLevel++,t.md.inline.tokenize(t),t.linkLevel--,h=t.push("link_close","a",-1)),t.pos=l,t.posMax=m,!0}});var Vl=_((Pv,jl)=>{"use strict";var mp=N().normalizeReference,fo=N().isSpace;jl.exports=function(t,e){var n,r,o,s,a,l,c,u,h,d,f,p,m,w="",v=t.pos,b=t.posMax;if(t.src.charCodeAt(t.pos)!==33||t.src.charCodeAt(t.pos+1)!==91||(l=t.pos+2,a=t.md.helpers.parseLinkLabel(t,t.pos+1,!1),a<0))return!1;if(c=a+1,c=b)return!1;for(m=c,h=t.md.helpers.parseLinkDestination(t.src,c,t.posMax),h.ok&&(w=t.md.normalizeLink(h.str),t.md.validateLink(w)?c=h.pos:w=""),m=c;c=b||t.src.charCodeAt(c)!==41)return t.pos=v,!1;c++}else{if(typeof t.env.references>"u")return!1;if(c=0?s=t.src.slice(m,c++):c=a+1):c=a+1,s||(s=t.src.slice(l,a)),u=t.env.references[mp(s)],!u)return t.pos=v,!1;w=u.href,d=u.title}return e||(o=t.src.slice(l,a),t.md.inline.parse(o,t.md,t.env,p=[]),f=t.push("image","img",0),f.attrs=n=[["src",w],["alt",""]],f.children=p,f.content=o,d&&n.push(["title",d])),t.pos=c,t.posMax=b,!0}});var Gl=_((Ov,Wl)=>{"use strict";var gp=/^([a-zA-Z0-9.!#$%&'*+\/=?^_`{|}~-]+@[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?(?:\.[a-zA-Z0-9](?:[a-zA-Z0-9-]{0,61}[a-zA-Z0-9])?)*)$/,bp=/^([a-zA-Z][a-zA-Z0-9+.\-]{1,31}):([^<>\x00-\x20]*)$/;Wl.exports=function(t,e){var n,r,o,s,a,l,c=t.pos;if(t.src.charCodeAt(c)!==60)return!1;for(a=t.pos,l=t.posMax;;){if(++c>=l||(s=t.src.charCodeAt(c),s===60))return!1;if(s===62)break}return n=t.src.slice(a+1,c),bp.test(n)?(r=t.md.normalizeLink(n),t.md.validateLink(r)?(e||(o=t.push("link_open","a",1),o.attrs=[["href",r]],o.markup="autolink",o.info="auto",o=t.push("text","",0),o.content=t.md.normalizeLinkText(n),o=t.push("link_close","a",-1),o.markup="autolink",o.info="auto"),t.pos+=n.length+2,!0):!1):gp.test(n)?(r=t.md.normalizeLink("mailto:"+n),t.md.validateLink(r)?(e||(o=t.push("link_open","a",1),o.attrs=[["href",r]],o.markup="autolink",o.info="auto",o=t.push("text","",0),o.content=t.md.normalizeLinkText(n),o=t.push("link_close","a",-1),o.markup="autolink",o.info="auto"),t.pos+=n.length+2,!0):!1):!1}});var Zl=_((Rv,Kl)=>{"use strict";var vp=oo().HTML_TAG_RE;function wp(i){return/^\s]/i.test(i)}function yp(i){return/^<\/a\s*>/i.test(i)}function xp(i){var t=i|32;return t>=97&&t<=122}Kl.exports=function(t,e){var n,r,o,s,a=t.pos;return!t.md.options.html||(o=t.posMax,t.src.charCodeAt(a)!==60||a+2>=o)||(n=t.src.charCodeAt(a+1),n!==33&&n!==63&&n!==47&&!xp(n))||(r=t.src.slice(a).match(vp),!r)?!1:(e||(s=t.push("html_inline","",0),s.content=r[0],wp(s.content)&&t.linkLevel++,yp(s.content)&&t.linkLevel--),t.pos+=r[0].length,!0)}});var Ql=_((Nv,Jl)=>{"use strict";var Xl=Zr(),kp=N().has,Cp=N().isValidEntityCode,Yl=N().fromCodePoint,Ep=/^&#((?:x[a-f0-9]{1,6}|[0-9]{1,7}));/i,_p=/^&([a-z][a-z0-9]{1,31});/i;Jl.exports=function(t,e){var n,r,o,s,a=t.pos,l=t.posMax;if(t.src.charCodeAt(a)!==38||a+1>=l)return!1;if(n=t.src.charCodeAt(a+1),n===35){if(o=t.src.slice(a).match(Ep),o)return e||(r=o[1][0].toLowerCase()==="x"?parseInt(o[1].slice(1),16):parseInt(o[1],10),s=t.push("text_special","",0),s.content=Cp(r)?Yl(r):Yl(65533),s.markup=o[0],s.info="entity"),t.pos+=o[0].length,!0}else if(o=t.src.slice(a).match(_p),o&&kp(Xl,o[1]))return e||(s=t.push("text_special","",0),s.content=Xl[o[1]],s.markup=o[0],s.info="entity"),t.pos+=o[0].length,!0;return!1}});var ic=_((zv,ec)=>{"use strict";function tc(i){var t,e,n,r,o,s,a,l,c={},u=i.length;if(u){var h=0,d=-2,f=[];for(t=0;to;e-=f[e]+1)if(r=i[e],r.marker===n.marker&&r.open&&r.end<0&&(a=!1,(r.close||n.open)&&(r.length+n.length)%3===0&&(r.length%3!==0||n.length%3!==0)&&(a=!0),!a)){l=e>0&&!i[e-1].open?f[e-1]+1:0,f[t]=t-e+l,f[e]=l,n.open=!1,r.end=t,r.close=!1,s=-1,d=-2;break}s!==-1&&(c[n.marker][(n.open?3:0)+(n.length||0)%3]=s)}}}ec.exports=function(t){var e,n=t.tokens_meta,r=t.tokens_meta.length;for(tc(t.delimiters),e=0;e{"use strict";nc.exports=function(t){var e,n,r=0,o=t.tokens,s=t.tokens.length;for(e=n=0;e0&&r++,o[e].type==="text"&&e+1{"use strict";var mo=pn(),oc=N().isWhiteSpace,sc=N().isPunctChar,ac=N().isMdAsciiPunct;function Xe(i,t,e,n){this.src=i,this.env=e,this.md=t,this.tokens=n,this.tokens_meta=Array(n.length),this.pos=0,this.posMax=this.src.length,this.level=0,this.pending="",this.pendingLevel=0,this.cache={},this.delimiters=[],this._prev_delimiters=[],this.backticks={},this.backticksScanned=!1,this.linkLevel=0}Xe.prototype.pushPending=function(){var i=new mo("text","",0);return i.content=this.pending,i.level=this.pendingLevel,this.tokens.push(i),this.pending="",i};Xe.prototype.push=function(i,t,e){this.pending&&this.pushPending();var n=new mo(i,t,e),r=null;return e<0&&(this.level--,this.delimiters=this._prev_delimiters.pop()),n.level=this.level,e>0&&(this.level++,this._prev_delimiters.push(this.delimiters),this.delimiters=[],r={delimiters:this.delimiters}),this.pendingLevel=this.level,this.tokens.push(n),this.tokens_meta.push(r),n};Xe.prototype.scanDelims=function(i,t){var e=i,n,r,o,s,a,l,c,u,h,d=!0,f=!0,p=this.posMax,m=this.src.charCodeAt(i);for(n=i>0?this.src.charCodeAt(i-1):32;e{"use strict";var uc=hn(),go=[["text",$l()],["linkify",Ml()],["newline",ql()],["escape",Pl()],["backticks",Rl()],["strikethrough",co().tokenize],["emphasis",ho().tokenize],["link",Ul()],["image",Vl()],["autolink",Gl()],["html_inline",Zl()],["entity",Ql()]],bo=[["balance_pairs",ic()],["strikethrough",co().postProcess],["emphasis",ho().postProcess],["fragments_join",rc()]];function Ye(){var i;for(this.ruler=new uc,i=0;i=i.pos)throw new Error("inline rule didn't increment state.pos");break}}else i.pos=i.posMax;t||i.pos++,a[n]=i.pos};Ye.prototype.tokenize=function(i){for(var t,e,n,r=this.ruler.getRules(""),o=r.length,s=i.posMax,a=i.md.options.maxNesting;i.pos=i.pos)throw new Error("inline rule didn't increment state.pos");break}}if(t){if(i.pos>=s)break;continue}i.pending+=i.src[i.pos++]}i.pending&&i.pushPending()};Ye.prototype.parse=function(i,t,e,n){var r,o,s,a=new this.State(i,t,e,n);for(this.tokenize(a),o=this.ruler2.getRules(""),s=o.length,r=0;r{"use strict";pc.exports=function(i){var t={};i=i||{},t.src_Any=Yr().source,t.src_Cc=Jr().source,t.src_Z=Qr().source,t.src_P=sn().source,t.src_ZPCc=[t.src_Z,t.src_P,t.src_Cc].join("|"),t.src_ZCc=[t.src_Z,t.src_Cc].join("|");var e="[><\uFF5C]";return t.src_pseudo_letter="(?:(?!"+e+"|"+t.src_ZPCc+")"+t.src_Any+")",t.src_ip4="(?:(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)\\.){3}(25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)",t.src_auth="(?:(?:(?!"+t.src_ZCc+"|[@/\\[\\]()]).)+@)?",t.src_port="(?::(?:6(?:[0-4]\\d{3}|5(?:[0-4]\\d{2}|5(?:[0-2]\\d|3[0-5])))|[1-5]?\\d{1,4}))?",t.src_host_terminator="(?=$|"+e+"|"+t.src_ZPCc+")(?!"+(i["---"]?"-(?!--)|":"-|")+"_|:\\d|\\.-|\\.(?!$|"+t.src_ZPCc+"))",t.src_path="(?:[/?#](?:(?!"+t.src_ZCc+"|"+e+`|[()[\\]{}.,"'?!\\-;]).|\\[(?:(?!`+t.src_ZCc+"|\\]).)*\\]|\\((?:(?!"+t.src_ZCc+"|[)]).)*\\)|\\{(?:(?!"+t.src_ZCc+'|[}]).)*\\}|\\"(?:(?!'+t.src_ZCc+`|["]).)+\\"|\\'(?:(?!`+t.src_ZCc+"|[']).)+\\'|\\'(?="+t.src_pseudo_letter+"|[-])|\\.{2,}[a-zA-Z0-9%/&]|\\.(?!"+t.src_ZCc+"|[.]|$)|"+(i["---"]?"\\-(?!--(?:[^-]|$))(?:-*)|":"\\-+|")+",(?!"+t.src_ZCc+"|$)|;(?!"+t.src_ZCc+"|$)|\\!+(?!"+t.src_ZCc+"|[!]|$)|\\?(?!"+t.src_ZCc+"|[?]|$))+|\\/)?",t.src_email_name='[\\-;:&=\\+\\$,\\.a-zA-Z0-9_][\\-;:&=\\+\\$,\\"\\.a-zA-Z0-9_]*',t.src_xn="xn--[a-z0-9\\-]{1,59}",t.src_domain_root="(?:"+t.src_xn+"|"+t.src_pseudo_letter+"{1,63})",t.src_domain="(?:"+t.src_xn+"|(?:"+t.src_pseudo_letter+")|(?:"+t.src_pseudo_letter+"(?:-|"+t.src_pseudo_letter+"){0,61}"+t.src_pseudo_letter+"))",t.src_host="(?:(?:(?:(?:"+t.src_domain+")\\.)*"+t.src_domain+"))",t.tpl_host_fuzzy="(?:"+t.src_ip4+"|(?:(?:(?:"+t.src_domain+")\\.)+(?:%TLDS%)))",t.tpl_host_no_ip_fuzzy="(?:(?:(?:"+t.src_domain+")\\.)+(?:%TLDS%))",t.src_host_strict=t.src_host+t.src_host_terminator,t.tpl_host_fuzzy_strict=t.tpl_host_fuzzy+t.src_host_terminator,t.src_host_port_strict=t.src_host+t.src_port+t.src_host_terminator,t.tpl_host_port_fuzzy_strict=t.tpl_host_fuzzy+t.src_port+t.src_host_terminator,t.tpl_host_port_no_ip_fuzzy_strict=t.tpl_host_no_ip_fuzzy+t.src_port+t.src_host_terminator,t.tpl_host_fuzzy_test="localhost|www\\.|\\.\\d{1,3}\\.|(?:\\.(?:%TLDS%)(?:"+t.src_ZPCc+"|>|$))",t.tpl_email_fuzzy="(^|"+e+'|"|\\(|'+t.src_ZCc+")("+t.src_email_name+"@"+t.tpl_host_fuzzy_strict+")",t.tpl_link_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`|\uFF5C]|"+t.src_ZPCc+"))((?![$+<=>^`|\uFF5C])"+t.tpl_host_port_fuzzy_strict+t.src_path+")",t.tpl_link_no_ip_fuzzy="(^|(?![.:/\\-_@])(?:[$+<=>^`|\uFF5C]|"+t.src_ZPCc+"))((?![$+<=>^`|\uFF5C])"+t.tpl_host_port_no_ip_fuzzy_strict+t.src_path+")",t}});var wc=_((Wv,vc)=>{"use strict";function vo(i){var t=Array.prototype.slice.call(arguments,1);return t.forEach(function(e){e&&Object.keys(e).forEach(function(n){i[n]=e[n]})}),i}function wn(i){return Object.prototype.toString.call(i)}function Sp(i){return wn(i)==="[object String]"}function Ap(i){return wn(i)==="[object Object]"}function Dp(i){return wn(i)==="[object RegExp]"}function mc(i){return wn(i)==="[object Function]"}function Lp(i){return i.replace(/[.?*+^$[\]\\(){}|-]/g,"\\$&")}var bc={fuzzyLink:!0,fuzzyEmail:!0,fuzzyIP:!1};function Tp(i){return Object.keys(i||{}).reduce(function(t,e){return t||bc.hasOwnProperty(e)},!1)}var $p={"http:":{validate:function(i,t,e){var n=i.slice(t);return e.re.http||(e.re.http=new RegExp("^\\/\\/"+e.re.src_auth+e.re.src_host_port_strict+e.re.src_path,"i")),e.re.http.test(n)?n.match(e.re.http)[0].length:0}},"https:":"http:","ftp:":"http:","//":{validate:function(i,t,e){var n=i.slice(t);return e.re.no_http||(e.re.no_http=new RegExp("^"+e.re.src_auth+"(?:localhost|(?:(?:"+e.re.src_domain+")\\.)+"+e.re.src_domain_root+")"+e.re.src_port+e.re.src_host_terminator+e.re.src_path,"i")),e.re.no_http.test(n)?t>=3&&i[t-3]===":"||t>=3&&i[t-3]==="/"?0:n.match(e.re.no_http)[0].length:0}},"mailto:":{validate:function(i,t,e){var n=i.slice(t);return e.re.mailto||(e.re.mailto=new RegExp("^"+e.re.src_email_name+"@"+e.re.src_host_strict,"i")),e.re.mailto.test(n)?n.match(e.re.mailto)[0].length:0}}},Ip="a[cdefgilmnoqrstuwxz]|b[abdefghijmnorstvwyz]|c[acdfghiklmnoruvwxyz]|d[ejkmoz]|e[cegrstu]|f[ijkmor]|g[abdefghilmnpqrstuwy]|h[kmnrtu]|i[delmnoqrst]|j[emop]|k[eghimnprwyz]|l[abcikrstuvy]|m[acdeghklmnopqrstuvwxyz]|n[acefgilopruz]|om|p[aefghklmnrstwy]|qa|r[eosuw]|s[abcdeghijklmnortuvxyz]|t[cdfghjklmnortvwz]|u[agksyz]|v[aceginu]|w[fs]|y[et]|z[amw]",Mp="biz|com|edu|gov|net|org|pro|web|xxx|aero|asia|coop|info|museum|name|shop|\u0440\u0444".split("|");function Fp(i){i.__index__=-1,i.__text_cache__=""}function qp(i){return function(t,e){var n=t.slice(e);return i.test(n)?n.match(i)[0].length:0}}function gc(){return function(i,t){t.normalize(i)}}function vn(i){var t=i.re=fc()(i.__opts__),e=i.__tlds__.slice();i.onCompile(),i.__tlds_replaced__||e.push(Ip),e.push(t.src_xn),t.src_tlds=e.join("|");function n(a){return a.replace("%TLDS%",t.src_tlds)}t.email_fuzzy=RegExp(n(t.tpl_email_fuzzy),"i"),t.link_fuzzy=RegExp(n(t.tpl_link_fuzzy),"i"),t.link_no_ip_fuzzy=RegExp(n(t.tpl_link_no_ip_fuzzy),"i"),t.host_fuzzy_test=RegExp(n(t.tpl_host_fuzzy_test),"i");var r=[];i.__compiled__={};function o(a,l){throw new Error('(LinkifyIt) Invalid schema "'+a+'": '+l)}Object.keys(i.__schemas__).forEach(function(a){var l=i.__schemas__[a];if(l!==null){var c={validate:null,link:null};if(i.__compiled__[a]=c,Ap(l)){Dp(l.validate)?c.validate=qp(l.validate):mc(l.validate)?c.validate=l.validate:o(a,l),mc(l.normalize)?c.normalize=l.normalize:l.normalize?o(a,l):c.normalize=gc();return}if(Sp(l)){r.push(a);return}o(a,l)}}),r.forEach(function(a){i.__compiled__[i.__schemas__[a]]&&(i.__compiled__[a].validate=i.__compiled__[i.__schemas__[a]].validate,i.__compiled__[a].normalize=i.__compiled__[i.__schemas__[a]].normalize)}),i.__compiled__[""]={validate:null,normalize:gc()};var s=Object.keys(i.__compiled__).filter(function(a){return a.length>0&&i.__compiled__[a]}).map(Lp).join("|");i.re.schema_test=RegExp("(^|(?!_)(?:[><\uFF5C]|"+t.src_ZPCc+"))("+s+")","i"),i.re.schema_search=RegExp("(^|(?!_)(?:[><\uFF5C]|"+t.src_ZPCc+"))("+s+")","ig"),i.re.schema_at_start=RegExp("^"+i.re.schema_search.source,"i"),i.re.pretest=RegExp("("+i.re.schema_test.source+")|("+i.re.host_fuzzy_test.source+")|@","i"),Fp(i)}function Bp(i,t){var e=i.__index__,n=i.__last_index__,r=i.__text_cache__.slice(e,n);this.schema=i.__schema__.toLowerCase(),this.index=e+t,this.lastIndex=n+t,this.raw=r,this.text=r,this.url=r}function wo(i,t){var e=new Bp(i,t);return i.__compiled__[e.schema].normalize(e,i),e}function gt(i,t){if(!(this instanceof gt))return new gt(i,t);t||Tp(i)&&(t=i,i={}),this.__opts__=vo({},bc,t),this.__index__=-1,this.__last_index__=-1,this.__schema__="",this.__text_cache__="",this.__schemas__=vo({},$p,i),this.__compiled__={},this.__tlds__=Mp,this.__tlds_replaced__=!1,this.re={},vn(this)}gt.prototype.add=function(t,e){return this.__schemas__[t]=e,vn(this),this};gt.prototype.set=function(t){return this.__opts__=vo(this.__opts__,t),this};gt.prototype.test=function(t){if(this.__text_cache__=t,this.__index__=-1,!t.length)return!1;var e,n,r,o,s,a,l,c,u;if(this.re.schema_test.test(t)){for(l=this.re.schema_search,l.lastIndex=0;(e=l.exec(t))!==null;)if(o=this.testSchemaAt(t,e[2],l.lastIndex),o){this.__schema__=e[2],this.__index__=e.index+e[1].length,this.__last_index__=e.index+e[0].length+o;break}}return this.__opts__.fuzzyLink&&this.__compiled__["http:"]&&(c=t.search(this.re.host_fuzzy_test),c>=0&&(this.__index__<0||c=0&&(r=t.match(this.re.email_fuzzy))!==null&&(s=r.index+r[1].length,a=r.index+r[0].length,(this.__index__<0||sthis.__last_index__)&&(this.__schema__="mailto:",this.__index__=s,this.__last_index__=a))),this.__index__>=0};gt.prototype.pretest=function(t){return this.re.pretest.test(t)};gt.prototype.testSchemaAt=function(t,e,n){return this.__compiled__[e.toLowerCase()]?this.__compiled__[e.toLowerCase()].validate(t,n,this):0};gt.prototype.match=function(t){var e=0,n=[];this.__index__>=0&&this.__text_cache__===t&&(n.push(wo(this,e)),e=this.__last_index__);for(var r=e?t.slice(e):t;this.test(r);)n.push(wo(this,e)),r=r.slice(this.__last_index__),e+=this.__last_index__;return n.length?n:null};gt.prototype.matchAtStart=function(t){if(this.__text_cache__=t,this.__index__=-1,!t.length)return null;var e=this.re.schema_at_start.exec(t);if(!e)return null;var n=this.testSchemaAt(t,e[2],e[0].length);return n?(this.__schema__=e[2],this.__index__=e.index+e[1].length,this.__last_index__=e.index+e[0].length+n,wo(this,0)):null};gt.prototype.tlds=function(t,e){return t=Array.isArray(t)?t:[t],e?(this.__tlds__=this.__tlds__.concat(t).sort().filter(function(n,r,o){return n!==o[r-1]}).reverse(),vn(this),this):(this.__tlds__=t.slice(),this.__tlds_replaced__=!0,vn(this),this)};gt.prototype.normalize=function(t){t.schema||(t.url="http://"+t.url),t.schema==="mailto:"&&!/^mailto:/i.test(t.url)&&(t.url="mailto:"+t.url)};gt.prototype.onCompile=function(){};vc.exports=gt});var Ac={};Ae(Ac,{decode:()=>Co,default:()=>jp,encode:()=>Eo,toASCII:()=>Sc,toUnicode:()=>_c,ucs2decode:()=>ko,ucs2encode:()=>Cc});function Vt(i){throw new RangeError(Np[i])}function zp(i,t){let e=[],n=i.length;for(;n--;)e[n]=t(i[n]);return e}function kc(i,t){let e=i.split("@"),n="";e.length>1&&(n=e[0]+"@",i=e[1]),i=i.replace(Rp,".");let r=i.split("."),o=zp(r,t).join(".");return n+o}function ko(i){let t=[],e=0,n=i.length;for(;e=55296&&r<=56319&&e{"use strict";xc="-",Pp=/^xn--/,Op=/[^\0-\x7F]/,Rp=/[\x2E\u3002\uFF0E\uFF61]/g,Np={overflow:"Overflow: input needs wider integers to process","not-basic":"Illegal input >= 0x80 (not a basic code point)","invalid-input":"Invalid input"},yo=35,Tt=Math.floor,xo=String.fromCharCode;Cc=i=>String.fromCodePoint(...i),Hp=function(i){return i>=48&&i<58?26+(i-48):i>=65&&i<91?i-65:i>=97&&i<123?i-97:36},yc=function(i,t){return i+22+75*(i<26)-((t!=0)<<5)},Ec=function(i,t,e){let n=0;for(i=e?Tt(i/700):i>>1,i+=Tt(i/t);i>yo*26>>1;n+=36)i=Tt(i/yo);return Tt(n+(yo+1)*i/(i+38))},Co=function(i){let t=[],e=i.length,n=0,r=128,o=72,s=i.lastIndexOf(xc);s<0&&(s=0);for(let a=0;a=128&&Vt("not-basic"),t.push(i.charCodeAt(a));for(let a=s>0?s+1:0;a=e&&Vt("invalid-input");let d=Hp(i.charCodeAt(a++));d>=36&&Vt("invalid-input"),d>Tt((2147483647-n)/u)&&Vt("overflow"),n+=d*u;let f=h<=o?1:h>=o+26?26:h-o;if(dTt(2147483647/p)&&Vt("overflow"),u*=p}let c=t.length+1;o=Ec(n-l,c,l==0),Tt(n/c)>2147483647-r&&Vt("overflow"),r+=Tt(n/c),n%=c,t.splice(n++,0,r)}return String.fromCodePoint(...t)},Eo=function(i){let t=[];i=ko(i);let e=i.length,n=128,r=0,o=72;for(let l of i)l<128&&t.push(xo(l));let s=t.length,a=s;for(s&&t.push(xc);a=n&&uTt((2147483647-r)/c)&&Vt("overflow"),r+=(l-n)*c,n=l;for(let u of i)if(u2147483647&&Vt("overflow"),u===n){let h=r;for(let d=36;;d+=36){let f=d<=o?1:d>=o+26?26:d-o;if(h{"use strict";Lc.exports={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"\u201C\u201D\u2018\u2019",highlight:null,maxNesting:100},components:{core:{},block:{},inline:{}}}});var Ic=_((Kv,$c)=>{"use strict";$c.exports={options:{html:!1,xhtmlOut:!1,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"\u201C\u201D\u2018\u2019",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["paragraph"]},inline:{rules:["text"],rules2:["balance_pairs","fragments_join"]}}}});var Fc=_((Zv,Mc)=>{"use strict";Mc.exports={options:{html:!0,xhtmlOut:!0,breaks:!1,langPrefix:"language-",linkify:!1,typographer:!1,quotes:"\u201C\u201D\u2018\u2019",highlight:null,maxNesting:20},components:{core:{rules:["normalize","block","inline","text_join"]},block:{rules:["blockquote","code","fence","heading","hr","html_block","lheading","list","reference","paragraph"]},inline:{rules:["autolink","backticks","emphasis","entity","escape","html_inline","image","link","newline","text"],rules2:["balance_pairs","emphasis","fragments_join"]}}}});var Oc=_((Xv,Pc)=>{"use strict";var Je=N(),Vp=va(),Wp=ya(),Gp=Ga(),Kp=Ll(),Zp=dc(),Xp=wc(),Qt=Xr(),qc=(Dc(),Gu(Ac)),Yp={default:Tc(),zero:Ic(),commonmark:Fc()},Jp=/^(vbscript|javascript|file|data):/,Qp=/^data:image\/(gif|png|jpeg|webp);/;function tf(i){var t=i.trim().toLowerCase();return Jp.test(t)?!!Qp.test(t):!0}var Bc=["http:","https:","mailto:"];function ef(i){var t=Qt.parse(i,!0);if(t.hostname&&(!t.protocol||Bc.indexOf(t.protocol)>=0))try{t.hostname=qc.toASCII(t.hostname)}catch{}return Qt.encode(Qt.format(t))}function nf(i){var t=Qt.parse(i,!0);if(t.hostname&&(!t.protocol||Bc.indexOf(t.protocol)>=0))try{t.hostname=qc.toUnicode(t.hostname)}catch{}return Qt.decode(Qt.format(t),Qt.decode.defaultChars+"%")}function vt(i,t){if(!(this instanceof vt))return new vt(i,t);t||Je.isString(i)||(t=i||{},i="default"),this.inline=new Zp,this.block=new Kp,this.core=new Gp,this.renderer=new Wp,this.linkify=new Xp,this.validateLink=tf,this.normalizeLink=ef,this.normalizeLinkText=nf,this.utils=Je,this.helpers=Je.assign({},Vp),this.options={},this.configure(i),t&&this.set(t)}vt.prototype.set=function(i){return Je.assign(this.options,i),this};vt.prototype.configure=function(i){var t=this,e;if(Je.isString(i)&&(e=i,i=Yp[e],!i))throw new Error('Wrong `markdown-it` preset "'+e+'", check name');if(!i)throw new Error("Wrong `markdown-it` preset, can't be empty");return i.options&&t.set(i.options),i.components&&Object.keys(i.components).forEach(function(n){i.components[n].rules&&t[n].ruler.enableOnly(i.components[n].rules),i.components[n].rules2&&t[n].ruler2.enableOnly(i.components[n].rules2)}),this};vt.prototype.enable=function(i,t){var e=[];Array.isArray(i)||(i=[i]),["core","block","inline"].forEach(function(r){e=e.concat(this[r].ruler.enable(i,!0))},this),e=e.concat(this.inline.ruler2.enable(i,!0));var n=i.filter(function(r){return e.indexOf(r)<0});if(n.length&&!t)throw new Error("MarkdownIt. Failed to enable unknown rule(s): "+n);return this};vt.prototype.disable=function(i,t){var e=[];Array.isArray(i)||(i=[i]),["core","block","inline"].forEach(function(r){e=e.concat(this[r].ruler.disable(i,!0))},this),e=e.concat(this.inline.ruler2.disable(i,!0));var n=i.filter(function(r){return e.indexOf(r)<0});if(n.length&&!t)throw new Error("MarkdownIt. Failed to disable unknown rule(s): "+n);return this};vt.prototype.use=function(i){var t=[this].concat(Array.prototype.slice.call(arguments,1));return i.apply(i,t),this};vt.prototype.parse=function(i,t){if(typeof i!="string")throw new Error("Input data should be a String");var e=new this.core.State(i,this,t);return this.core.process(e),e.tokens};vt.prototype.render=function(i,t){return t=t||{},this.renderer.render(this.parse(i,t),this.options,t)};vt.prototype.parseInline=function(i,t){var e=new this.core.State(i,this,t);return e.inlineMode=!0,this.core.process(e),e.tokens};vt.prototype.renderInline=function(i,t){return t=t||{},this.renderer.render(this.parseInline(i,t),this.options,t)};Pc.exports=vt});var Nc=_((Yv,Rc)=>{"use strict";Rc.exports=Oc()});var Vc=_((Jv,jc)=>{var _o=!0,Hc=!1,Uc=!1;jc.exports=function(i,t){t&&(_o=!t.enabled,Hc=!!t.label,Uc=!!t.labelAfter),i.core.ruler.after("inline","github-task-lists",function(e){for(var n=e.tokens,r=2;r=0;n--)if(i[n].level===e)return n;return-1}function of(i,t){return hf(i[t])&&df(i[t-1])&&pf(i[t-2])&&ff(i[t])}function sf(i,t){if(i.children.unshift(af(i,t)),i.children[1].content=i.children[1].content.slice(3),i.content=i.content.slice(3),Hc)if(Uc){i.children.pop();var e="task-item-"+Math.ceil(Math.random()*(1e4*1e3)-1e3);i.children[0].content=i.children[0].content.slice(0,-1)+' id="'+e+'">',i.children.push(uf(i.content,e,t))}else i.children.unshift(lf(t)),i.children.push(cf(t))}function af(i,t){var e=new t("html_inline","",0),n=_o?' disabled="" ':"";return i.content.indexOf("[ ] ")===0?e.content='':(i.content.indexOf("[x] ")===0||i.content.indexOf("[X] ")===0)&&(e.content=''),e}function lf(i){var t=new i("html_inline","",0);return t.content="",t}function uf(i,t,e){var n=new e("html_inline","",0);return n.content='",n.attrs=[{for:t}],n}function hf(i){return i.type==="inline"}function df(i){return i.type==="paragraph_open"}function pf(i){return i.type==="list_item_open"}function ff(i){return i.content.indexOf("[ ] ")===0||i.content.indexOf("[x] ")===0||i.content.indexOf("[X] ")===0}});var mr={};Ae(mr,{emit:()=>pr,emitPublic:()=>Yu,error:()=>fr,listen:()=>Xu,showResponseError:()=>th,showValidationErrors:()=>Qu,success:()=>Ju});var oi={},Zu=[];function pr(i,t){Zu.push({name:i,data:t});let e=oi[i]||[];for(let n of e)n(t)}function Xu(i,t){typeof oi[i]>"u"&&(oi[i]=[]),oi[i].push(t)}function Yu(i,t,e){let n=new CustomEvent(t,{detail:e,bubbles:!0});i.dispatchEvent(n)}function Ju(i){pr("success",i)}function fr(i){pr("error",i)}function Qu(i){if(i.status&&i.status===422&&i.data){let t=Object.values(i.data).flat().join(` +`);fr(t)}}function th(i){i.status&&i.status>=400&&i.data&&i.data.message&&fr(i.data.message)}var gr={};Ae(gr,{HttpError:()=>si,createXMLHttpRequest:()=>ih,delete:()=>ah,get:()=>nh,patch:()=>sh,post:()=>rh,put:()=>oh});async function eh(i){if(i.status===204)return null;let e=(i.headers.get("Content-Type")||"").split(";")[0].split("/").pop();return e==="javascript"||e==="json"?i.json():i.text()}var si=class extends Error{constructor(t,e){super(t.statusText),this.data=e,this.headers=t.headers,this.redirected=t.redirected,this.status=t.status,this.statusText=t.statusText,this.url=t.url,this.original=t}};function ih(i,t,e={}){let n=document.querySelector("meta[name=token]").getAttribute("content"),r=new XMLHttpRequest;for(let[o,s]of Object.entries(e))r.addEventListener(o,s.bind(r));return r.open(i,t),r.withCredentials=!0,r.setRequestHeader("X-CSRF-TOKEN",n),r}async function Xo(i,t={}){let e=i;if(e.startsWith("http")||(e=window.baseUrl(e)),t.params){let l=new URL(e);for(let c of Object.keys(t.params)){let u=t.params[c];typeof u<"u"&&u!==null&&l.searchParams.set(c,u)}e=l.toString()}let n=document.querySelector("meta[name=token]").getAttribute("content"),r={...t,credentials:"same-origin"};r.headers={...r.headers||{},baseURL:window.baseUrl(""),"X-CSRF-TOKEN":n};let o=await fetch(e,r),s=await eh(o),a={data:s,headers:o.headers,redirected:o.redirected,status:o.status,statusText:o.statusText,url:o.url,original:o};if(!o.ok)throw new si(o,s);return a}async function ai(i,t,e=null){let n={method:i,body:e};return typeof e=="object"&&!(e instanceof FormData)&&(n.headers={"Content-Type":"application/json","X-Requested-With":"XMLHttpRequest"},n.body=JSON.stringify(e)),e instanceof FormData&&i!=="post"&&(e.append("_method",i),n.method="post"),Xo(t,n)}async function nh(i,t={}){return Xo(i,{method:"GET",params:t})}async function rh(i,t=null){return ai("POST",i,t)}async function oh(i,t=null){return ai("PUT",i,t)}async function sh(i,t=null){return ai("PATCH",i,t)}async function ah(i,t=null){return ai("DELETE",i,t)}var br=class{constructor(){this.store=new Map,this.parseTranslations()}parseTranslations(){let t=document.querySelectorAll('meta[name="translation"]');for(let e of t){let n=e.getAttribute("key"),r=e.getAttribute("value");this.store.set(n,r)}}get(t,e){let n=this.getTransText(t);return this.performReplacements(n,e)}getPlural(t,e,n){let r=this.getTransText(t);return this.parsePlural(r,e,n)}parsePlural(t,e,n){let r=t.split("|"),o=/^{([0-9]+)}/,s=/^\[([0-9]+),([0-9*]+)]/,a=null;for(let l of r){let c=l.match(o);if(c!==null&&Number(c[1])===e){a=l.replace(o,"").trim();break}let u=l.match(s);if(u!==null&&Number(u[1])<=e&&(u[2]==="*"||Number(u[2])>=e)){a=l.replace(s,"").trim();break}}return a===null&&r.length>1&&(a=e===1?r[0]:r[1]),a===null&&(a=r[0]),this.performReplacements(a,n)}getTransText(t){let e=this.store.get(t);return e===void 0&&console.warn(`Translation with key "${t}" does not exist`),e}performReplacements(t,e){if(!e)return t;let n=t.match(/:(\S+)/g);if(n===null)return t;let r=t;return n.forEach(o=>{let s=o.substring(1);typeof e[s]>"u"||(r=r.replace(o,e[s]))}),r}},Yo=br;var kr={};Ae(kr,{first:()=>hh,firstOnElement:()=>ph,get:()=>dh,init:()=>yr,register:()=>xr});function vr(i){let t=n=>n.slice(0,1).toUpperCase()+n.slice(1),e=i.split("-");return e[0]+e.slice(1).map(t).join("")}function Jo(i){return i.replace(/[A-Z]/g,(t,e)=>(e>0?"-":"")+t.toLowerCase())}var De={},Qo={},wr=new WeakMap;function lh(i,t){let e={},n={},r=`${i}@`,o=`[refs*="${r}"]`,s=[...t.querySelectorAll(o)];t.matches(o)&&s.push(t);for(let a of s){let l=a.getAttribute("refs").split(" ").filter(c=>c.startsWith(r)).map(c=>c.replace(r,"")).map(vr);for(let c of l)e[c]=a,typeof n[c]>"u"&&(n[c]=[]),n[c].push(a)}return{refs:e,manyRefs:n}}function ch(i,t){let e={},n=`option:${i}:`;for(let{name:r,value:o}of t.attributes)if(r.startsWith(n)){let s=r.replace(n,"");e[vr(s)]=o||""}return e}function uh(i,t){let e=Qo[i];if(e===void 0)return;let n;try{n=new e,n.$name=i,n.$el=t;let o=lh(i,t);n.$refs=o.refs,n.$manyRefs=o.manyRefs,n.$opts=ch(i,t),n.setup()}catch(o){console.error("Failed to create component",o,i,t)}typeof De[i]>"u"&&(De[i]=[]),De[i].push(n);let r=wr.get(t)||{};r[i]=n,wr.set(t,r)}function yr(i=document){let t=i.querySelectorAll("[component],[components]");for(let e of t){let n=`${e.getAttribute("component")||""} ${e.getAttribute("components")}`.toLowerCase().split(" ").filter(Boolean);for(let r of n)uh(r,e)}}function xr(i){let t=Object.keys(i);for(let e of t)Qo[Jo(e)]=i[e]}function hh(i){return(De[i]||[null])[0]}function dh(i){return De[i]||[]}function ph(i,t){return(wr.get(i)||{})[t]||null}var Wo={};Ae(Wo,{AddRemoveRows:()=>ci,AjaxDeleteRow:()=>ui,AjaxForm:()=>hi,Attachments:()=>di,AttachmentsList:()=>pi,AutoSubmit:()=>mi,AutoSuggest:()=>fi,BackToTop:()=>gi,BookSort:()=>Fi,ChapterContents:()=>Bi,CodeEditor:()=>Pi,CodeHighlighter:()=>Oi,CodeTextarea:()=>Ri,Collapsible:()=>Ni,ConfirmDialog:()=>zi,CustomCheckbox:()=>Hi,DetailsHighlighter:()=>Ui,Dropdown:()=>ji,DropdownSearch:()=>Vi,Dropzone:()=>Wi,EditorToolbox:()=>Gi,EntityPermissions:()=>Ki,EntitySearch:()=>Zi,EntitySelector:()=>Xi,EntitySelectorPopup:()=>Yi,EventEmitSelect:()=>Ji,ExpandToggle:()=>Qi,GlobalSearch:()=>tn,HeaderMobileToggle:()=>en,ImageManager:()=>nn,ImagePicker:()=>rn,ListSortControl:()=>on,MarkdownEditor:()=>qn,NewUserPassword:()=>Bn,Notification:()=>Pn,OptionalInput:()=>On,PageComment:()=>zn,PageComments:()=>Hn,PageDisplay:()=>Un,PageEditor:()=>jn,PagePicker:()=>Wn,PermissionsTable:()=>Gn,Pointer:()=>Kn,Popup:()=>Zn,SettingAppColorScheme:()=>Xn,SettingColorPicker:()=>Yn,SettingHomepageControl:()=>Jn,ShelfSort:()=>Qn,ShortcutInput:()=>er,Shortcuts:()=>tr,SortableList:()=>ir,SubmitOnChange:()=>nr,Tabs:()=>rr,TagManager:()=>or,TemplateManager:()=>sr,ToggleSwitch:()=>ar,TriLayout:()=>lr,UserSelect:()=>cr,WebhookEvents:()=>ur,WysiwygEditor:()=>hr,WysiwygInput:()=>dr});function Et(i,t={},e=[]){let n=document.createElement(i);for(let[r,o]of Object.entries(t))o===null?n.removeAttribute(r):n.setAttribute(r,o);for(let r of e)typeof r=="string"?n.append(document.createTextNode(r)):n.append(r);return n}function Cr(i,t){let e=document.querySelectorAll(i);for(let n of e)t(n)}function li(i,t,e){for(let n of t)i.addEventListener(n,e)}function R(i,t){Array.isArray(i)||(i=[i]);for(let e of i)e.addEventListener("click",t),e.addEventListener("keydown",n=>{(n.key==="Enter"||n.key===" ")&&(n.preventDefault(),t(n))})}function ts(i,t,e){Array.isArray(t)||(t=[t]);let n=r=>{r.key===i&&e(r)};t.forEach(r=>r.addEventListener("keydown",n))}function se(i,t){ts("Enter",i,t)}function es(i,t){ts("Escape",i,t)}function K(i,t,e,n){i.addEventListener(e,r=>{let o=r.target.closest(t);o&&n.call(o,r,o)})}function is(i,t){let e=document.querySelectorAll(i);t=t.toLowerCase();for(let n of e)if(n.textContent.toLowerCase().includes(t))return n;return null}function Le(i){i.innerHTML='
    '}function ae(){let i=document.createElement("div");return i.classList.add("loading-container"),i.innerHTML="
    ",i}function Te(i){let t=i.querySelectorAll(".loading-container");for(let e of t)e.remove()}function _t(i){let t=document.createElement("div");return t.innerHTML=i,window.$components.init(t),t.children[0]}function Nt(i,t,e){let n;return function(...o){let s=this,a=function(){n=null,e||i.apply(s,o)},l=e&&!n;clearTimeout(n),n=setTimeout(a,t),l&&i.apply(s,o)}}function _r(i){if(!i)return;let t=i;for(;t.parentElement;)t=t.parentElement,t.nodeName==="DETAILS"&&!t.open&&(t.open=!0);i.scrollIntoView({behavior:"smooth"});let e=getComputedStyle(document.body).getPropertyValue("--color-link");i.style.outline=`2px dashed ${e}`,i.style.outlineOffset="5px",i.style.transition=null,setTimeout(()=>{i.style.transition="outline linear 3s",i.style.outline="2px dashed rgba(0, 0, 0, 0)";let n=()=>{i.removeEventListener("transitionend",n),i.style.transition=null,i.style.outline=null,i.style.outlineOffset=null};i.addEventListener("transitionend",n)},1e3)}function ns(i){return i.replace(/&/g,"&").replace(//g,">").replace(/"/g,""").replace(/'/g,"'")}function rs(){let i=()=>((1+Math.random())*65536|0).toString(16).substring(1);return`${i()+i()}-${i()}-${i()}-${i()}-${i()}${i()}${i()}`}function os(i){return new Promise(t=>{setTimeout(t,i)})}var g=class{constructor(){at(this,"$name","");at(this,"$el",null);at(this,"$refs",{});at(this,"$manyRefs",{});at(this,"$opts",{})}setup(){}$emit(t,e={}){e.from=this;let n=this.$name,r=new CustomEvent(`${n}-${t}`,{bubbles:!0,detail:e});this.$el.dispatchEvent(r)}};var ci=class extends g{setup(){this.modelRow=this.$refs.model,this.addButton=this.$refs.add,this.removeSelector=this.$opts.removeSelector,this.rowSelector=this.$opts.rowSelector,this.setupListeners()}setupListeners(){this.addButton.addEventListener("click",this.add.bind(this)),K(this.$el,this.removeSelector,"click",t=>{t.target.closest(this.rowSelector).remove()})}add(){let t=this.modelRow.cloneNode(!0);t.classList.remove("hidden"),this.setClonedInputNames(t),this.modelRow.parentNode.insertBefore(t,this.modelRow),window.$components.init(t)}setClonedInputNames(t){let e=rs(),n=t.querySelectorAll('[name*="randrowid"]');for(let r of n)r.name=r.name.split("randrowid").join(e)}};var ui=class extends g{setup(){this.row=this.$el,this.url=this.$opts.url,this.deleteButtons=this.$manyRefs.delete,R(this.deleteButtons,this.runDelete.bind(this))}runDelete(){this.row.style.opacity="0.7",this.row.style.pointerEvents="none",window.$http.delete(this.url).then(t=>{typeof t.data=="object"&&t.data.message&&window.$events.emit("success",t.data.message),this.row.remove()}).catch(()=>{this.row.style.opacity=null,this.row.style.pointerEvents=null})}};var hi=class extends g{setup(){this.container=this.$el,this.responseContainer=this.container,this.url=this.$opts.url,this.method=this.$opts.method||"post",this.successMessage=this.$opts.successMessage,this.submitButtons=this.$manyRefs.submit||[],this.$opts.responseContainer&&(this.responseContainer=this.container.closest(this.$opts.responseContainer)),this.setupListeners()}setupListeners(){if(this.container.tagName==="FORM"){this.container.addEventListener("submit",this.submitRealForm.bind(this));return}se(this.container,t=>{this.submitFakeForm(),t.preventDefault()}),this.submitButtons.forEach(t=>R(t,this.submitFakeForm.bind(this)))}submitFakeForm(){let t=new FormData,e=this.container.querySelectorAll("[name]");for(let n of e)t.append(n.getAttribute("name"),n.value);this.submit(t)}submitRealForm(t){t.preventDefault();let e=new FormData(this.container);this.submit(e)}async submit(t){this.responseContainer.style.opacity="0.7",this.responseContainer.style.pointerEvents="none";try{let e=await window.$http[this.method.toLowerCase()](this.url,t);this.$emit("success",{formData:t}),this.responseContainer.innerHTML=e.data,this.successMessage&&window.$events.emit("success",this.successMessage)}catch(e){this.responseContainer.innerHTML=e.data}window.$components.init(this.responseContainer),this.responseContainer.style.opacity=null,this.responseContainer.style.pointerEvents=null}};var di=class extends g{setup(){this.container=this.$el,this.pageId=this.$opts.pageId,this.editContainer=this.$refs.editContainer,this.listContainer=this.$refs.listContainer,this.linksContainer=this.$refs.linksContainer,this.listPanel=this.$refs.listPanel,this.attachLinkButton=this.$refs.attachLinkButton,this.setupListeners()}setupListeners(){let t=this.reloadList.bind(this);this.container.addEventListener("dropzone-upload-success",t),this.container.addEventListener("ajax-form-success",t),this.container.addEventListener("sortable-list-sort",e=>{this.updateOrder(e.detail.ids)}),this.container.addEventListener("event-emit-select-edit",e=>{this.startEdit(e.detail.id)}),this.container.addEventListener("event-emit-select-edit-back",()=>{this.stopEdit()}),this.container.addEventListener("event-emit-select-insert",e=>{let n=e.target.closest("[data-drag-content]").getAttribute("data-drag-content"),r=JSON.parse(n);window.$events.emit("editor::insert",{html:r["text/html"],markdown:r["text/plain"]})}),this.attachLinkButton.addEventListener("click",()=>{this.showSection("links")})}showSection(t){let e={links:this.linksContainer,edit:this.editContainer,list:this.listContainer};for(let[n,r]of Object.entries(e))r.toggleAttribute("hidden",n!==t)}reloadList(){this.stopEdit(),window.$http.get(`/attachments/get/page/${this.pageId}`).then(t=>{this.listPanel.innerHTML=t.data,window.$components.init(this.listPanel)})}updateOrder(t){window.$http.put(`/attachments/sort/page/${this.pageId}`,{order:t}).then(e=>{window.$events.emit("success",e.data.message)})}async startEdit(t){this.showSection("edit"),Le(this.editContainer);let e=await window.$http.get(`/attachments/edit/${t}`);this.editContainer.innerHTML=e.data,window.$components.init(this.editContainer)}stopEdit(){this.showSection("list")}};var pi=class extends g{setup(){this.container=this.$el,this.fileLinks=this.$manyRefs.linkTypeFile,this.setupListeners()}setupListeners(){let t=e=>e.key==="Control"||e.key==="Meta";window.addEventListener("keydown",e=>{t(e)&&this.addOpenQueryToLinks()},{passive:!0}),window.addEventListener("keyup",e=>{t(e)&&this.removeOpenQueryFromLinks()},{passive:!0})}addOpenQueryToLinks(){for(let t of this.fileLinks)t.href.split("?")[1]!=="open=true"&&(t.href+="?open=true",t.setAttribute("target","_blank"))}removeOpenQueryFromLinks(){for(let t of this.fileLinks)t.href=t.href.split("?")[0],t.removeAttribute("target")}};var $e,Sr,Ie,Ar,zt=class{constructor(t,e=null,n=null){ot(this,$e);ot(this,Ie);this.containers=[t],this.onEscape=e,this.onEnter=n,t.addEventListener("keydown",L(this,$e,Sr).bind(this))}shareHandlingToEl(t){this.containers.push(t),t.addEventListener("keydown",L(this,$e,Sr).bind(this))}focusNext(){let t=L(this,Ie,Ar).call(this),n=t.indexOf(document.activeElement)+1;n>=t.length&&(n=0),t[n].focus()}focusPrevious(){let t=L(this,Ie,Ar).call(this),n=t.indexOf(document.activeElement)-1;n<0&&(n=t.length-1),t[n].focus()}};$e=new WeakSet,Sr=function(t){t.target.matches("input")&&(t.key==="ArrowRight"||t.key==="ArrowLeft")||(t.key==="ArrowDown"||t.key==="ArrowRight"?(this.focusNext(),t.preventDefault()):t.key==="ArrowUp"||t.key==="ArrowLeft"?(this.focusPrevious(),t.preventDefault()):t.key==="Escape"?this.onEscape?this.onEscape(t):document.activeElement&&document.activeElement.blur():t.key==="Enter"&&this.onEnter&&this.onEnter(t))},Ie=new WeakSet,Ar=function(){let t=[],e='[tabindex]:not([tabindex="-1"]),[href],button:not([tabindex="-1"],[disabled]),input:not([type=hidden])';for(let n of this.containers)t.push(...n.querySelectorAll(e));return t};var Dr={},fi=class extends g{setup(){this.parent=this.$el.parentElement,this.container=this.$el,this.type=this.$opts.type,this.url=this.$opts.url,this.input=this.$refs.input,this.list=this.$refs.list,this.lastPopulated=0,this.setupListeners()}setupListeners(){new zt(this.list,()=>{this.input.focus(),setTimeout(()=>this.hideSuggestions(),1)},e=>{e.preventDefault();let n=e.target.textContent;n&&this.selectSuggestion(n)}).shareHandlingToEl(this.input),K(this.list,".text-item","click",(e,n)=>{this.selectSuggestion(n.textContent)}),this.input.addEventListener("input",this.requestSuggestions.bind(this)),this.input.addEventListener("focus",this.requestSuggestions.bind(this)),this.input.addEventListener("blur",this.hideSuggestionsIfFocusedLost.bind(this)),this.input.addEventListener("keydown",e=>{e.key==="Tab"&&this.hideSuggestions()})}selectSuggestion(t){this.input.value=t,this.lastPopulated=Date.now(),this.input.focus(),this.input.dispatchEvent(new Event("input",{bubbles:!0})),this.input.dispatchEvent(new Event("change",{bubbles:!0})),this.hideSuggestions()}async requestSuggestions(){if(Date.now()-this.lastPopulated<50)return;let t=this.getNameFilterIfNeeded(),e=this.input.value.toLowerCase(),r=(await this.loadSuggestions(e,t)).filter(o=>e===""||o.toLowerCase().startsWith(e)).slice(0,10);this.displaySuggestions(r)}getNameFilterIfNeeded(){return this.type!=="value"?null:this.parent.querySelector("input").value}async loadSuggestions(t,e=null){t=t.slice(0,4);let n={search:t,name:e},r=`${this.url}:${JSON.stringify(n)}`;if(Dr[r])return Dr[r];let o=await window.$http.get(this.url,n);return Dr[r]=o.data,o.data}displaySuggestions(t){if(t.length===0){this.hideSuggestions();return}this.list.innerHTML=t.map(e=>`
  • ${ns(e)}
  • `).join(""),this.list.style.display="block";for(let e of this.list.querySelectorAll(".text-item"))e.addEventListener("blur",this.hideSuggestionsIfFocusedLost.bind(this))}hideSuggestions(){this.list.style.display="none"}hideSuggestionsIfFocusedLost(t){this.container.contains(t.relatedTarget)||this.hideSuggestions()}};var mi=class extends g{setup(){this.form=this.$el,this.form.submit()}};var gi=class extends g{setup(){if(this.button=this.$el,this.targetElem=document.getElementById("header"),this.showing=!1,this.breakPoint=1200,document.body.classList.contains("flexbox")){this.button.style.display="none";return}this.button.addEventListener("click",this.scrollToTop.bind(this)),window.addEventListener("scroll",this.onPageScroll.bind(this))}onPageScroll(){let t=document.documentElement.scrollTop||document.body.scrollTop||0;!this.showing&&t>this.breakPoint?(this.button.style.display="block",this.showing=!0,setTimeout(()=>{this.button.style.opacity=.4},1)):this.showing&&t{this.button.style.display="none"},500))}scrollToTop(){let t=this.targetElem.getBoundingClientRect().top,e=document.documentElement.scrollTop?document.documentElement:document.body,n=300,r=Date.now(),o=this.targetElem.getBoundingClientRect().top;function s(){let a=1-(Date.now()-r)/n,l=Math.abs(a*o);a>0?(e.scrollTop=l,requestAnimationFrame(s.bind(this))):e.scrollTop=t}requestAnimationFrame(s.bind(this))}};function ss(i,t){var e=Object.keys(i);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(i);t&&(n=n.filter(function(r){return Object.getOwnPropertyDescriptor(i,r).enumerable})),e.push.apply(e,n)}return e}function At(i){for(var t=1;t=0)&&(e[r]=i[r]);return e}function gh(i,t){if(i==null)return{};var e=mh(i,t),n,r;if(Object.getOwnPropertySymbols){var o=Object.getOwnPropertySymbols(i);for(r=0;r=0)&&Object.prototype.propertyIsEnumerable.call(i,n)&&(e[n]=i[n])}return e}function bh(i){return vh(i)||wh(i)||yh(i)||xh()}function vh(i){if(Array.isArray(i))return Rr(i)}function wh(i){if(typeof Symbol<"u"&&i[Symbol.iterator]!=null||i["@@iterator"]!=null)return Array.from(i)}function yh(i,t){if(i){if(typeof i=="string")return Rr(i,t);var e=Object.prototype.toString.call(i).slice(8,-1);if(e==="Object"&&i.constructor&&(e=i.constructor.name),e==="Map"||e==="Set")return Array.from(i);if(e==="Arguments"||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(e))return Rr(i,t)}}function Rr(i,t){(t==null||t>i.length)&&(t=i.length);for(var e=0,n=new Array(t);e"&&(t=t.substring(1)),i)try{if(i.matches)return i.matches(t);if(i.msMatchesSelector)return i.msMatchesSelector(t);if(i.webkitMatchesSelector)return i.webkitMatchesSelector(t)}catch{return!1}return!1}}function Ch(i){return i.host&&i!==document&&i.host.nodeType?i.host:i.parentNode}function bt(i,t,e,n){if(i){e=e||document;do{if(t!=null&&(t[0]===">"?i.parentNode===e&&Di(i,t):Di(i,t))||n&&i===e)return i;if(i===e)break}while(i=Ch(i))}return null}var ls=/\s+/g;function Y(i,t,e){if(i&&t)if(i.classList)i.classList[e?"add":"remove"](t);else{var n=(" "+i.className+" ").replace(ls," ").replace(" "+t+" "," ");i.className=(n+(e?" "+t:"")).replace(ls," ")}}function A(i,t,e){var n=i&&i.style;if(n){if(e===void 0)return document.defaultView&&document.defaultView.getComputedStyle?e=document.defaultView.getComputedStyle(i,""):i.currentStyle&&(e=i.currentStyle),t===void 0?e:e[t];!(t in n)&&t.indexOf("webkit")===-1&&(t="-webkit-"+t),n[t]=e+(typeof e=="string"?"":"px")}}function Xt(i,t){var e="";if(typeof i=="string")e=i;else do{var n=A(i,"transform");n&&n!=="none"&&(e=n+" "+e)}while(!t&&(i=i.parentNode));var r=window.DOMMatrix||window.WebKitCSSMatrix||window.CSSMatrix||window.MSCSSMatrix;return r&&new r(e)}function ys(i,t,e){if(i){var n=i.getElementsByTagName(t),r=0,o=n.length;if(e)for(;r=o:s=r<=o,!s)return n;if(n===St())break;n=jt(n,!1)}return!1}function pe(i,t,e,n){for(var r=0,o=0,s=i.children;o2&&arguments[2]!==void 0?arguments[2]:{},r=n.evt,o=gh(n,Th);We.pluginEvent.bind(I)(t,e,At({dragEl:C,parentEl:Z,ghostEl:q,rootEl:V,nextEl:Zt,lastDownEl:Ei,cloneEl:G,cloneHidden:Ut,dragStarted:Pe,putSortable:tt,activeSortable:I.active,originalEvent:r,oldIndex:de,oldDraggableIndex:He,newIndex:mt,newDraggableIndex:Ht,hideGhostForTarget:As,unhideGhostForTarget:Ds,cloneNowHidden:function(){Ut=!0},cloneNowShown:function(){Ut=!1},dispatchSortableEvent:function(a){st({sortable:e,name:a,originalEvent:r})}},o))};function st(i){Be(At({putSortable:tt,cloneEl:G,targetEl:C,rootEl:V,oldIndex:de,oldDraggableIndex:He,newIndex:mt,newDraggableIndex:Ht},i))}var C,Z,q,V,Zt,Ei,G,Ut,de,mt,He,Ht,bi,tt,he=!1,Li=!1,Ti=[],Gt,yt,Ir,Mr,ds,ps,Pe,ce,Ue,je=!1,vi=!1,_i,it,Fr=[],Nr=!1,$i=[],Mi=typeof document<"u",wi=bs,fs=Ve||Mt?"cssFloat":"float",$h=Mi&&!vs&&!bs&&"draggable"in document.createElement("div"),Es=function(){if(Mi){if(Mt)return!1;var i=document.createElement("x");return i.style.cssText="pointer-events:auto",i.style.pointerEvents==="auto"}}(),_s=function(t,e){var n=A(t),r=parseInt(n.width)-parseInt(n.paddingLeft)-parseInt(n.paddingRight)-parseInt(n.borderLeftWidth)-parseInt(n.borderRightWidth),o=pe(t,0,e),s=pe(t,1,e),a=o&&A(o),l=s&&A(s),c=a&&parseInt(a.marginLeft)+parseInt(a.marginRight)+j(o).width,u=l&&parseInt(l.marginLeft)+parseInt(l.marginRight)+j(s).width;if(n.display==="flex")return n.flexDirection==="column"||n.flexDirection==="column-reverse"?"vertical":"horizontal";if(n.display==="grid")return n.gridTemplateColumns.split(" ").length<=1?"vertical":"horizontal";if(o&&a.float&&a.float!=="none"){var h=a.float==="left"?"left":"right";return s&&(l.clear==="both"||l.clear===h)?"vertical":"horizontal"}return o&&(a.display==="block"||a.display==="flex"||a.display==="table"||a.display==="grid"||c>=r&&n[fs]==="none"||s&&n[fs]==="none"&&c+u>r)?"vertical":"horizontal"},Ih=function(t,e,n){var r=n?t.left:t.top,o=n?t.right:t.bottom,s=n?t.width:t.height,a=n?e.left:e.top,l=n?e.right:e.bottom,c=n?e.width:e.height;return r===a||o===l||r+s/2===a+c/2},Mh=function(t,e){var n;return Ti.some(function(r){var o=r[nt].options.emptyInsertThreshold;if(!(!o||jr(r))){var s=j(r),a=t>=s.left-o&&t<=s.right+o,l=e>=s.top-o&&e<=s.bottom+o;if(a&&l)return n=r}}),n},Ss=function(t){function e(o,s){return function(a,l,c,u){var h=a.options.group.name&&l.options.group.name&&a.options.group.name===l.options.group.name;if(o==null&&(s||h))return!0;if(o==null||o===!1)return!1;if(s&&o==="clone")return o;if(typeof o=="function")return e(o(a,l,c,u),s)(a,l,c,u);var d=(s?a:l).options.group.name;return o===!0||typeof o=="string"&&o===d||o.join&&o.indexOf(d)>-1}}var n={},r=t.group;(!r||Ci(r)!="object")&&(r={name:r}),n.name=r.name,n.checkPull=e(r.pull,!0),n.checkPut=e(r.put),n.revertClone=r.revertClone,t.group=n},As=function(){!Es&&q&&A(q,"display","none")},Ds=function(){!Es&&q&&A(q,"display","")};Mi&&!vs&&document.addEventListener("click",function(i){if(Li)return i.preventDefault(),i.stopPropagation&&i.stopPropagation(),i.stopImmediatePropagation&&i.stopImmediatePropagation(),Li=!1,!1},!0);var Kt=function(t){if(C){t=t.touches?t.touches[0]:t;var e=Mh(t.clientX,t.clientY);if(e){var n={};for(var r in t)t.hasOwnProperty(r)&&(n[r]=t[r]);n.target=n.rootEl=e,n.preventDefault=void 0,n.stopPropagation=void 0,e[nt]._onDragOver(n)}}},Fh=function(t){C&&C.parentNode[nt]._isOutsideThisEl(t.target)};function I(i,t){if(!(i&&i.nodeType&&i.nodeType===1))throw"Sortable: `el` must be an HTMLElement, not ".concat({}.toString.call(i));this.el=i,this.options=t=kt({},t),i[nt]=this;var e={group:null,sort:!0,disabled:!1,store:null,handle:null,draggable:/^[uo]l$/i.test(i.nodeName)?">li":">*",swapThreshold:1,invertSwap:!1,invertedSwapThreshold:null,removeCloneOnHide:!0,direction:function(){return _s(i,this.options)},ghostClass:"sortable-ghost",chosenClass:"sortable-chosen",dragClass:"sortable-drag",ignore:"a, img",filter:null,preventOnFilter:!0,animation:0,easing:null,setData:function(s,a){s.setData("Text",a.textContent)},dropBubble:!1,dragoverBubble:!1,dataIdAttr:"data-id",delay:0,delayOnTouchOnly:!1,touchStartThreshold:(Number.parseInt?Number:window).parseInt(window.devicePixelRatio,10)||1,forceFallback:!1,fallbackClass:"sortable-fallback",fallbackOnBody:!1,fallbackTolerance:0,fallbackOffset:{x:0,y:0},supportPointer:I.supportPointer!==!1&&"PointerEvent"in window&&!Ne,emptyInsertThreshold:5};We.initializePlugins(this,i,e);for(var n in e)!(n in t)&&(t[n]=e[n]);Ss(t);for(var r in this)r.charAt(0)==="_"&&typeof this[r]=="function"&&(this[r]=this[r].bind(this));this.nativeDraggable=t.forceFallback?!1:$h,this.nativeDraggable&&(this.options.touchStartThreshold=1),t.supportPointer?O(i,"pointerdown",this._onTapStart):(O(i,"mousedown",this._onTapStart),O(i,"touchstart",this._onTapStart)),this.nativeDraggable&&(O(i,"dragover",this),O(i,"dragenter",this)),Ti.push(this.el),t.store&&t.store.get&&this.sort(t.store.get(this)||[]),kt(this,Ah())}I.prototype={constructor:I,_isOutsideThisEl:function(t){!this.el.contains(t)&&t!==this.el&&(ce=null)},_getDirection:function(t,e){return typeof this.options.direction=="function"?this.options.direction.call(this,t,e,C):this.options.direction},_onTapStart:function(t){if(t.cancelable){var e=this,n=this.el,r=this.options,o=r.preventOnFilter,s=t.type,a=t.touches&&t.touches[0]||t.pointerType&&t.pointerType==="touch"&&t,l=(a||t).target,c=t.target.shadowRoot&&(t.path&&t.path[0]||t.composedPath&&t.composedPath()[0])||l,u=r.filter;if(Hh(n),!C&&!(/mousedown|pointerdown/.test(s)&&t.button!==0||r.disabled)&&!c.isContentEditable&&!(!this.nativeDraggable&&Ne&&l&&l.tagName.toUpperCase()==="SELECT")&&(l=bt(l,r.draggable,n,!1),!(l&&l.animated)&&Ei!==l)){if(de=J(l),He=J(l,r.draggable),typeof u=="function"){if(u.call(this,t,l,this)){st({sortable:e,rootEl:c,name:"filter",targetEl:l,toEl:n,fromEl:n}),lt("filter",e,{evt:t}),o&&t.cancelable&&t.preventDefault();return}}else if(u&&(u=u.split(",").some(function(h){if(h=bt(c,h.trim(),n,!1),h)return st({sortable:e,rootEl:h,name:"filter",targetEl:l,fromEl:n,toEl:n}),lt("filter",e,{evt:t}),!0}),u)){o&&t.cancelable&&t.preventDefault();return}r.handle&&!bt(c,r.handle,n,!1)||this._prepareDragStart(t,a,l)}}},_prepareDragStart:function(t,e,n){var r=this,o=r.el,s=r.options,a=o.ownerDocument,l;if(n&&!C&&n.parentNode===o){var c=j(n);if(V=o,C=n,Z=C.parentNode,Zt=C.nextSibling,Ei=n,bi=s.group,I.dragged=C,Gt={target:C,clientX:(e||t).clientX,clientY:(e||t).clientY},ds=Gt.clientX-c.left,ps=Gt.clientY-c.top,this._lastX=(e||t).clientX,this._lastY=(e||t).clientY,C.style["will-change"]="all",l=function(){if(lt("delayEnded",r,{evt:t}),I.eventCanceled){r._onDrop();return}r._disableDelayedDragEvents(),!as&&r.nativeDraggable&&(C.draggable=!0),r._triggerDragStart(t,e),st({sortable:r,name:"choose",originalEvent:t}),Y(C,s.chosenClass,!0)},s.ignore.split(",").forEach(function(u){ys(C,u.trim(),qr)}),O(a,"dragover",Kt),O(a,"mousemove",Kt),O(a,"touchmove",Kt),O(a,"mouseup",r._onDrop),O(a,"touchend",r._onDrop),O(a,"touchcancel",r._onDrop),as&&this.nativeDraggable&&(this.options.touchStartThreshold=4,C.draggable=!0),lt("delayStart",this,{evt:t}),s.delay&&(!s.delayOnTouchOnly||e)&&(!this.nativeDraggable||!(Ve||Mt))){if(I.eventCanceled){this._onDrop();return}O(a,"mouseup",r._disableDelayedDrag),O(a,"touchend",r._disableDelayedDrag),O(a,"touchcancel",r._disableDelayedDrag),O(a,"mousemove",r._delayedDragTouchMoveHandler),O(a,"touchmove",r._delayedDragTouchMoveHandler),s.supportPointer&&O(a,"pointermove",r._delayedDragTouchMoveHandler),r._dragStartTimer=setTimeout(l,s.delay)}else l()}},_delayedDragTouchMoveHandler:function(t){var e=t.touches?t.touches[0]:t;Math.max(Math.abs(e.clientX-this._lastX),Math.abs(e.clientY-this._lastY))>=Math.floor(this.options.touchStartThreshold/(this.nativeDraggable&&window.devicePixelRatio||1))&&this._disableDelayedDrag()},_disableDelayedDrag:function(){C&&qr(C),clearTimeout(this._dragStartTimer),this._disableDelayedDragEvents()},_disableDelayedDragEvents:function(){var t=this.el.ownerDocument;B(t,"mouseup",this._disableDelayedDrag),B(t,"touchend",this._disableDelayedDrag),B(t,"touchcancel",this._disableDelayedDrag),B(t,"mousemove",this._delayedDragTouchMoveHandler),B(t,"touchmove",this._delayedDragTouchMoveHandler),B(t,"pointermove",this._delayedDragTouchMoveHandler)},_triggerDragStart:function(t,e){e=e||t.pointerType=="touch"&&t,!this.nativeDraggable||e?this.options.supportPointer?O(document,"pointermove",this._onTouchMove):e?O(document,"touchmove",this._onTouchMove):O(document,"mousemove",this._onTouchMove):(O(C,"dragend",this),O(V,"dragstart",this._onDragStart));try{document.selection?Si(function(){document.selection.empty()}):window.getSelection().removeAllRanges()}catch{}},_dragStarted:function(t,e){if(he=!1,V&&C){lt("dragStarted",this,{evt:e}),this.nativeDraggable&&O(document,"dragover",Fh);var n=this.options;!t&&Y(C,n.dragClass,!1),Y(C,n.ghostClass,!0),I.active=this,t&&this._appendGhost(),st({sortable:this,name:"start",originalEvent:e})}else this._nulling()},_emulateDragOver:function(){if(yt){this._lastX=yt.clientX,this._lastY=yt.clientY,As();for(var t=document.elementFromPoint(yt.clientX,yt.clientY),e=t;t&&t.shadowRoot&&(t=t.shadowRoot.elementFromPoint(yt.clientX,yt.clientY),t!==e);)e=t;if(C.parentNode[nt]._isOutsideThisEl(t),e)do{if(e[nt]){var n=void 0;if(n=e[nt]._onDragOver({clientX:yt.clientX,clientY:yt.clientY,target:t,rootEl:e}),n&&!this.options.dragoverBubble)break}t=e}while(e=e.parentNode);Ds()}},_onTouchMove:function(t){if(Gt){var e=this.options,n=e.fallbackTolerance,r=e.fallbackOffset,o=t.touches?t.touches[0]:t,s=q&&Xt(q,!0),a=q&&s&&s.a,l=q&&s&&s.d,c=wi&&it&&us(it),u=(o.clientX-Gt.clientX+r.x)/(a||1)+(c?c[0]-Fr[0]:0)/(a||1),h=(o.clientY-Gt.clientY+r.y)/(l||1)+(c?c[1]-Fr[1]:0)/(l||1);if(!I.active&&!he){if(n&&Math.max(Math.abs(o.clientX-this._lastX),Math.abs(o.clientY-this._lastY))=0&&(st({rootEl:Z,name:"add",toEl:Z,fromEl:V,originalEvent:t}),st({sortable:this,name:"remove",toEl:Z,originalEvent:t}),st({rootEl:Z,name:"sort",toEl:Z,fromEl:V,originalEvent:t}),st({sortable:this,name:"sort",toEl:Z,originalEvent:t})),tt&&tt.save()):mt!==de&&mt>=0&&(st({sortable:this,name:"update",toEl:Z,originalEvent:t}),st({sortable:this,name:"sort",toEl:Z,originalEvent:t})),I.active&&((mt==null||mt===-1)&&(mt=de,Ht=He),st({sortable:this,name:"end",toEl:Z,originalEvent:t}),this.save()))),this._nulling()},_nulling:function(){lt("nulling",this),V=C=Z=q=Zt=G=Ei=Ut=Gt=yt=Pe=mt=Ht=de=He=ce=Ue=tt=bi=I.dragged=I.ghost=I.clone=I.active=null,$i.forEach(function(t){t.checked=!0}),$i.length=Ir=Mr=0},handleEvent:function(t){switch(t.type){case"drop":case"dragend":this._onDrop(t);break;case"dragenter":case"dragover":C&&(this._onDragOver(t),qh(t));break;case"selectstart":t.preventDefault();break}},toArray:function(){for(var t=[],e,n=this.el.children,r=0,o=n.length,s=this.options;rr.right+o||i.clientY>n.bottom&&i.clientX>n.left:i.clientY>r.bottom+o||i.clientX>n.right&&i.clientY>n.top}function Rh(i,t,e,n,r,o,s,a){var l=n?i.clientY:i.clientX,c=n?e.height:e.width,u=n?e.top:e.left,h=n?e.bottom:e.right,d=!1;if(!s){if(a&&_iu+c*o/2:lh-_i)return-Ue}else if(l>u+c*(1-r)/2&&lh-c*o/2)?l>u+c/2?1:-1:0}function Nh(i){return J(C)1&&(F.forEach(function(a){o.addAnimationState({target:a,rect:ct?j(a):s}),Tr(a),a.fromRect=s,n.removeAnimationState(a)}),ct=!1,jh(!this.options.removeCloneOnHide,r))},dragOverCompleted:function(e){var n=e.sortable,r=e.isOwner,o=e.insertion,s=e.activeSortable,a=e.parentEl,l=e.putSortable,c=this.options;if(o){if(r&&s._hideClone(),Fe=!1,c.animation&&F.length>1&&(ct||!r&&!s.options.sort&&!l)){var u=j(z,!1,!0,!0);F.forEach(function(d){d!==z&&(hs(d,u),a.appendChild(d))}),ct=!0}if(!r)if(ct||ki(),F.length>1){var h=xi;s._showClone(n),s.options.animation&&!xi&&h&&ft.forEach(function(d){s.addAnimationState({target:d,rect:qe}),d.fromRect=qe,d.thisAnimationDuration=null})}else s._showClone(n)}},dragOverAnimationCapture:function(e){var n=e.dragRect,r=e.isOwner,o=e.activeSortable;if(F.forEach(function(a){a.thisAnimationDuration=null}),o.options.animation&&!r&&o.multiDrag.isMultiDrag){qe=kt({},n);var s=Xt(z,!0);qe.top-=s.f,qe.left-=s.e}},dragOverAnimationComplete:function(){ct&&(ct=!1,ki())},drop:function(e){var n=e.originalEvent,r=e.rootEl,o=e.parentEl,s=e.sortable,a=e.dispatchSortableEvent,l=e.oldIndex,c=e.putSortable,u=c||this.sortable;if(n){var h=this.options,d=o.children;if(!ue)if(h.multiDragKey&&!this.multiDragKeyDown&&this._deselectMultiDrag(),Y(z,h.selectedClass,!~F.indexOf(z)),~F.indexOf(z))F.splice(F.indexOf(z),1),Me=null,Be({sortable:s,rootEl:r,name:"deselect",targetEl:z,originalEvent:n});else{if(F.push(z),Be({sortable:s,rootEl:r,name:"select",targetEl:z,originalEvent:n}),n.shiftKey&&Me&&s.el.contains(Me)){var f=J(Me),p=J(z);if(~f&&~p&&f!==p){var m,w;for(p>f?(w=f,m=p):(w=p,m=f+1);w1){var v=j(z),b=J(z,":not(."+this.options.selectedClass+")");if(!Fe&&h.animation&&(z.thisAnimationDuration=null),u.captureAnimationState(),!Fe&&(h.animation&&(z.fromRect=v,F.forEach(function(x){if(x.thisAnimationDuration=null,x!==z){var E=ct?j(x):v;x.fromRect=E,u.addAnimationState({target:x,rect:E})}})),ki(),F.forEach(function(x){d[b]?o.insertBefore(x,d[b]):o.appendChild(x),b++}),l===J(z))){var k=!1;F.forEach(function(x){if(x.sortableIndex!==J(x)){k=!0;return}}),k&&(a("update"),a("sort"))}F.forEach(function(x){Tr(x)}),u.animateAll()}xt=u}(r===o||c&&c.lastPutMode!=="clone")&&ft.forEach(function(x){x.parentNode&&x.parentNode.removeChild(x)})}},nullingGlobal:function(){this.isMultiDrag=ue=!1,ft.length=0},destroyGlobal:function(){this._deselectMultiDrag(),B(document,"pointerup",this._deselectMultiDrag),B(document,"mouseup",this._deselectMultiDrag),B(document,"touchend",this._deselectMultiDrag),B(document,"keydown",this._checkKeyDown),B(document,"keyup",this._checkKeyUp)},_deselectMultiDrag:function(e){if(!(typeof ue<"u"&&ue)&&xt===this.sortable&&!(e&&bt(e.target,this.options.draggable,this.sortable.el,!1))&&!(e&&e.button!==0))for(;F.length;){var n=F[0];Y(n,this.options.selectedClass,!1),F.shift(),Be({sortable:this.sortable,rootEl:this.sortable.el,name:"deselect",targetEl:n,originalEvent:e})}},_checkKeyDown:function(e){e.key===this.options.multiDragKey&&(this.multiDragKeyDown=!0)},_checkKeyUp:function(e){e.key===this.options.multiDragKey&&(this.multiDragKeyDown=!1)}},kt(i,{pluginName:"multiDrag",utils:{select:function(e){var n=e.parentNode[nt];!n||!n.options.multiDrag||~F.indexOf(e)||(xt&&xt!==n&&(xt.multiDrag._deselectMultiDrag(),xt=n),Y(e,n.options.selectedClass,!0),F.push(e))},deselect:function(e){var n=e.parentNode[nt],r=F.indexOf(e);!n||!n.options.multiDrag||!~r||(Y(e,n.options.selectedClass,!1),F.splice(r,1))}},eventProperties:function(){var e=this,n=[],r=[];return F.forEach(function(o){n.push({multiDragElement:o,index:o.sortableIndex});var s;ct&&o!==z?s=-1:ct?s=J(o,":not(."+e.options.selectedClass+")"):s=J(o),r.push({multiDragElement:o,index:s})}),{items:bh(F),clones:[].concat(ft),oldIndicies:n,newIndicies:r}},optionListeners:{multiDragKey:function(e){return e=e.toLowerCase(),e==="ctrl"?e="Control":e.length>1&&(e=e.charAt(0).toUpperCase()+e.substr(1)),e}}})}function jh(i,t){F.forEach(function(e,n){var r=t.children[e.sortableIndex+(i?Number(n):0)];r?t.insertBefore(e,r):t.appendChild(e)})}function gs(i,t){ft.forEach(function(e,n){var r=t.children[e.sortableIndex+(i?Number(n):0)];r?t.insertBefore(e,r):t.appendChild(e)})}function ki(){F.forEach(function(i){i!==z&&i.parentNode&&i.parentNode.removeChild(i)})}I.mount(new Uh);I.mount(Gr,Wr);var Yt=I;var $s={name(i,t){let e=i.getAttribute("data-name").trim().toLowerCase(),n=t.getAttribute("data-name").trim().toLowerCase();return e.localeCompare(n)},created(i,t){let e=Number(i.getAttribute("data-created"));return Number(t.getAttribute("data-created"))-e},updated(i,t){let e=Number(i.getAttribute("data-updated"));return Number(t.getAttribute("data-updated"))-e},chaptersFirst(i,t){let e=i.getAttribute("data-type"),n=t.getAttribute("data-type");return e===n?0:e==="chapter"?-1:1},chaptersLast(i,t){let e=i.getAttribute("data-type"),n=t.getAttribute("data-type");return e===n?0:e==="chapter"?1:-1}},Is={up:{active(i,t){return!(i.previousElementSibling===null&&!t)},run(i,t){(i.previousElementSibling||t).insertAdjacentElement("beforebegin",i)}},down:{active(i,t){return!(i.nextElementSibling===null&&!t)},run(i,t){(i.nextElementSibling||t).insertAdjacentElement("afterend",i)}},next_book:{active(i,t,e){return e.nextElementSibling!==null},run(i,t,e){e.nextElementSibling.querySelector("ul").prepend(i)}},prev_book:{active(i,t,e){return e.previousElementSibling!==null},run(i,t,e){e.previousElementSibling.querySelector("ul").appendChild(i)}},next_chapter:{active(i,t){return i.dataset.type==="page"&&this.getNextChapter(i,t)},run(i,t){this.getNextChapter(i,t).querySelector("ul").prepend(i)},getNextChapter(i,t){let e=t||i,n=Array.from(e.parentElement.children),r=n.indexOf(e);return n.slice(r+1).find(o=>o.dataset.type==="chapter")}},prev_chapter:{active(i,t){return i.dataset.type==="page"&&this.getPrevChapter(i,t)},run(i,t){this.getPrevChapter(i,t).querySelector("ul").append(i)},getPrevChapter(i,t){let e=t||i,n=Array.from(e.parentElement.children),r=n.indexOf(e);return n.slice(0,r).reverse().find(o=>o.dataset.type==="chapter")}},book_end:{active(i,t){return t||t===null&&i.nextElementSibling},run(i,t,e){e.querySelector("ul").append(i)}},book_start:{active(i,t){return t||t===null&&i.previousElementSibling},run(i,t,e){e.querySelector("ul").prepend(i)}},before_chapter:{active(i,t){return t},run(i,t){t.insertAdjacentElement("beforebegin",i)}},after_chapter:{active(i,t){return t},run(i,t){t.insertAdjacentElement("afterend",i)}}},Fi=class extends g{setup(){this.container=this.$el,this.sortContainer=this.$refs.sortContainer,this.input=this.$refs.input,Yt.mount(new Ts);let t=this.container.querySelector(".sort-box");this.setupBookSortable(t),this.setupSortPresets(),this.setupMoveActions(),window.$events.listen("entity-select-change",this.bookSelect.bind(this))}setupMoveActions(){this.container.addEventListener("click",t=>{if(t.target.matches("[data-move]")){let e=t.target.getAttribute("data-move"),n=t.target.closest("[data-id]");this.runSortAction(n,e)}}),this.updateMoveActionStateForAll()}setupSortPresets(){let t="",e=!1,n=["name","created","updated"];this.sortContainer.addEventListener("click",r=>{let o=r.target.closest(".sort-box-options [data-sort]");if(!o)return;r.preventDefault();let s=o.closest(".sort-box").querySelectorAll("ul"),a=o.getAttribute("data-sort");e=t===a?!e:!1;let l=$s[a];e&&n.includes(a)&&(l=function(u,h){return 0-$s[a](u,h)});for(let c of s)Array.from(c.children).filter(h=>h.matches("li")).sort(l).forEach(h=>{c.appendChild(h)});t=a,this.updateMapInput()})}bookSelect(t){if(this.container.querySelector(`[data-type="book"][data-id="${t.id}"]`)!==null)return;let n=`${t.link}/sort-item`;window.$http.get(n).then(r=>{let o=_t(r.data);this.sortContainer.append(o),this.setupBookSortable(o),this.updateMoveActionStateForAll(),o.querySelector("summary").focus()})}setupBookSortable(t){let e=Array.from(t.querySelectorAll(".sort-list, .sortable-page-sublist")),n={name:"book",pull:["book","chapter"],put:["book","chapter"]},r={name:"chapter",pull:["book","chapter"],put(o,s,a){return a.getAttribute("data-type")==="page"}};for(let o of e)Yt.create(o,{group:o.classList.contains("sort-list")?n:r,animation:150,fallbackOnBody:!0,swapThreshold:.65,onSort:()=>{this.ensureNoNestedChapters(),this.updateMapInput(),this.updateMoveActionStateForAll()},dragClass:"bg-white",ghostClass:"primary-background-light",multiDrag:!0,multiDragKey:"Control",selectedClass:"sortable-selected"})}ensureNoNestedChapters(){let t=this.container.querySelectorAll('[data-type="chapter"] [data-type="chapter"]');for(let e of t)e.parentElement.closest('[data-type="chapter"]').insertAdjacentElement("afterend",e)}updateMapInput(){let t=this.buildEntityMap();this.input.value=JSON.stringify(t)}buildEntityMap(){let t=[],e=this.container.querySelectorAll(".sort-list");for(let n of e){let r=n.closest('[data-type="book"]').getAttribute("data-id"),o=Array.from(n.children).filter(s=>s.matches('[data-type="page"], [data-type="chapter"]'));for(let s=0;s{for(let s of r)i.style[s]=null;i.style.transition=null,i.removeEventListener("transitionend",o),qi.delete(i),n&&n()};setTimeout(()=>{i.style.transition=`all ease-in-out ${e}ms`;for(let s of r)i.style[s]=t[s][1];i.addEventListener("transitionend",o),qi.set(i,o)},15)}function Ke(i){qi.has(i)&&qi.get(i)()}function Ms(i,t=400,e=null){Ke(i),i.style.display="block",Ge(i,{opacity:["0","1"]},t,()=>{e&&e()})}function Fs(i,t=400,e=null){Ke(i),Ge(i,{opacity:["1","0"]},t,()=>{i.style.display="none",e&&e()})}function fe(i,t=400){Ke(i);let e=i.getBoundingClientRect().height,n=getComputedStyle(i),r=n.getPropertyValue("padding-top"),o=n.getPropertyValue("padding-bottom"),s={maxHeight:[`${e}px`,"0px"],overflow:["hidden","hidden"],paddingTop:[r,"0px"],paddingBottom:[o,"0px"]};Ge(i,s,t,()=>{i.style.display="none"})}function me(i,t=400){Ke(i),i.style.display="block";let e=i.getBoundingClientRect().height,n=getComputedStyle(i),r=n.getPropertyValue("padding-top"),o=n.getPropertyValue("padding-bottom"),s={maxHeight:["0px",`${e}px`],overflow:["hidden","hidden"],paddingTop:["0px",r],paddingBottom:["0px",o]};Ge(i,s,t)}function qs(i,t=400){let e=i.getBoundingClientRect().height,n=getComputedStyle(i),r=n.getPropertyValue("padding-top"),o=n.getPropertyValue("padding-bottom");return()=>{Ke(i);let s=i.getBoundingClientRect().height,a=getComputedStyle(i),l=a.getPropertyValue("padding-top"),c=a.getPropertyValue("padding-bottom"),u={height:[`${e}px`,`${s}px`],overflow:["hidden","hidden"],paddingTop:[r,l],paddingBottom:[o,c]};Ge(i,u,t)}}var Bi=class extends g{setup(){this.list=this.$refs.list,this.toggle=this.$refs.toggle,this.isOpen=this.toggle.classList.contains("open"),this.toggle.addEventListener("click",this.click.bind(this))}open(){this.toggle.classList.add("open"),this.toggle.setAttribute("aria-expanded","true"),me(this.list,180),this.isOpen=!0}close(){this.toggle.classList.remove("open"),this.toggle.setAttribute("aria-expanded","false"),fe(this.list,180),this.isOpen=!1}click(t){t.preventDefault(),this.isOpen?this.close():this.open()}};var Pi=class extends g{constructor(){super(...arguments);at(this,"editor",null);at(this,"saveCallback",null);at(this,"cancelCallback",null);at(this,"history",{});at(this,"historyKey","code_history")}setup(){this.container=this.$refs.container,this.popup=this.$el,this.editorInput=this.$refs.editor,this.languageButtons=this.$manyRefs.languageButton,this.languageOptionsContainer=this.$refs.languageOptionsContainer,this.saveButton=this.$refs.saveButton,this.languageInput=this.$refs.languageInput,this.historyDropDown=this.$refs.historyDropDown,this.historyList=this.$refs.historyList,this.favourites=new Set(this.$opts.favourites.split(",")),this.setupListeners(),this.setupFavourites()}setupListeners(){this.container.addEventListener("keydown",e=>{e.ctrlKey&&e.key==="Enter"&&this.save()}),R(this.languageButtons,e=>{let n=e.target.dataset.lang;this.languageInput.value=n,this.languageInputChange(n)}),se(this.languageInput,()=>this.save()),this.languageInput.addEventListener("input",()=>this.languageInputChange(this.languageInput.value)),R(this.saveButton,()=>this.save()),K(this.historyList,"button","click",(e,n)=>{e.preventDefault();let r=n.dataset.time;this.editor&&this.editor.setContent(this.history[r])})}setupFavourites(){for(let e of this.languageButtons)this.setupFavouritesForButton(e);this.sortLanguageList()}setupFavouritesForButton(e){let n=e.dataset.lang,r=this.favourites.has(n);e.setAttribute("data-favourite",r?"true":"false"),K(e.parentElement,".lang-option-favorite-toggle","click",()=>{r=!r,r?this.favourites.add(n):this.favourites.delete(n),e.setAttribute("data-favourite",r?"true":"false"),window.$http.patch("/preferences/update-code-language-favourite",{language:n,active:r}),this.sortLanguageList(),r&&e.scrollIntoView({block:"center",behavior:"smooth"})})}sortLanguageList(){let e=this.languageButtons.sort((n,r)=>{let o=n.dataset.favourite==="true",s=r.dataset.favourite==="true";return o&&!s?-1:s&&!o||n.dataset.lang>r.dataset.lang?1:-1}).map(n=>n.parentElement);for(let n of e)this.languageOptionsContainer.append(n)}save(){this.saveCallback&&this.saveCallback(this.editor.getContent(),this.languageInput.value),this.hide()}async open(e,n,r,o){this.languageInput.value=n,this.saveCallback=r,this.cancelCallback=o,await this.show(),this.languageInputChange(n),this.editor.setContent(e)}async show(){let e=await window.importVersioned("code");this.editor||(this.editor=e.popupEditor(this.editorInput,this.languageInput.value)),this.loadHistory(),this.getPopup().show(()=>{this.editor.focus()},()=>{this.addHistory(),this.cancelCallback&&this.cancelCallback()})}hide(){this.getPopup().hide(),this.addHistory()}getPopup(){return window.$components.firstOnElement(this.popup,"popup")}async updateEditorMode(e){this.editor.setMode(e,this.editor.getContent())}languageInputChange(e){this.updateEditorMode(e);let n=e.toLowerCase();for(let r of this.languageButtons){let o=r.dataset.lang.toLowerCase().trim(),s=n===o;r.classList.toggle("active",s),s&&r.scrollIntoView({block:"center",behavior:"smooth"})}}loadHistory(){this.history=JSON.parse(window.sessionStorage.getItem(this.historyKey)||"{}");let e=Object.keys(this.history).reverse();this.historyDropDown.classList.toggle("hidden",e.length===0),this.historyList.innerHTML=e.map(n=>{let r=new Date(parseInt(n,10)).toLocaleTimeString();return`
  • `}).join("")}addHistory(){if(!this.editor)return;let e=this.editor.getContent();if(!e)return;let n=Object.keys(this.history).pop();if(this.history[n]===e)return;this.history[String(Date.now())]=e;let r=JSON.stringify(this.history);window.sessionStorage.setItem(this.historyKey,r)}};var Oi=class extends g{setup(){let t=this.$el;t.querySelectorAll("pre").length>0&&window.importVersioned("code").then(n=>{n.highlightWithin(t)})}};var Ri=class extends g{async setup(){let{mode:t}=this.$opts;(await window.importVersioned("code")).inlineEditor(this.$el,t)}};var Ni=class extends g{setup(){this.container=this.$el,this.trigger=this.$refs.trigger,this.content=this.$refs.content,this.trigger&&(this.trigger.addEventListener("click",this.toggle.bind(this)),this.openIfContainsError())}open(){this.container.classList.add("open"),this.trigger.setAttribute("aria-expanded","true"),me(this.content,300)}close(){this.container.classList.remove("open"),this.trigger.setAttribute("aria-expanded","false"),fe(this.content,300)}toggle(){this.container.classList.contains("open")?this.close():this.open()}openIfContainsError(){this.content.querySelector(".text-neg.text-small")&&this.open()}};var zi=class extends g{setup(){this.container=this.$el,this.confirmButton=this.$refs.confirm,this.res=null,R(this.confirmButton,()=>{this.sendResult(!0),this.getPopup().hide()})}show(){return this.getPopup().show(null,()=>{this.sendResult(!1)}),new Promise(t=>{this.res=t})}getPopup(){return window.$components.firstOnElement(this.container,"popup")}sendResult(t){this.res&&(this.res(t),this.res=null)}};var Hi=class extends g{setup(){this.container=this.$el,this.checkbox=this.container.querySelector("input[type=checkbox]"),this.display=this.container.querySelector('[role="checkbox"]'),this.checkbox.addEventListener("change",this.stateChange.bind(this)),this.container.addEventListener("keydown",this.onKeyDown.bind(this))}onKeyDown(t){(t.key===" "||t.key==="Enter")&&(t.preventDefault(),this.toggle())}toggle(){this.checkbox.checked=!this.checkbox.checked,this.checkbox.dispatchEvent(new Event("change")),this.stateChange()}stateChange(){let t=this.checkbox.checked?"true":"false";this.display.setAttribute("aria-checked",t)}};var Ui=class extends g{setup(){this.container=this.$el,this.dealtWith=!1,this.container.addEventListener("toggle",this.onToggle.bind(this))}onToggle(){this.dealtWith||(this.container.querySelector("pre")&&window.importVersioned("code").then(t=>{t.highlightWithin(this.container)}),this.dealtWith=!0)}};var ji=class extends g{setup(){this.container=this.$el,this.menu=this.$refs.menu,this.toggle=this.$refs.toggle,this.moveMenu=this.$opts.moveMenu,this.bubbleEscapes=this.$opts.bubbleEscapes==="true",this.direction=document.dir==="rtl"?"right":"left",this.body=document.body,this.showing=!1,this.hide=this.hide.bind(this),this.setupListeners()}show(t=null){this.hideAll(),this.menu.style.display="block",this.menu.classList.add("anim","menuIn"),this.toggle.setAttribute("aria-expanded","true");let e=this.menu.getBoundingClientRect(),n=0,r=this.toggle.getBoundingClientRect().height,o=e.bottom>window.innerHeight,s=this.container.getBoundingClientRect();if(this.moveMenu&&(this.body.appendChild(this.menu),this.menu.style.position="fixed",this.menu.style.width=`${e.width}px`,this.menu.style.left=`${e.left}px`,o?n=window.innerHeight-e.top-r/2:n=e.top),o){this.menu.style.top="initial",this.menu.style.bottom=`${n}px`;let c=window.innerHeight-40-(window.innerHeight-s.bottom);this.menu.style.maxHeight=`${Math.floor(c)}px`}else{this.menu.style.top=`${n}px`,this.menu.style.bottom="initial";let c=window.innerHeight-40-s.top;this.menu.style.maxHeight=`${Math.floor(c)}px`}this.menu.addEventListener("mouseleave",this.hide),window.addEventListener("click",c=>{this.menu.contains(c.target)||this.hide()});let a=this.menu.querySelector("input");a!==null&&a.focus(),this.showing=!0;let l=new Event("show");this.container.dispatchEvent(l),t&&t.stopPropagation()}hideAll(){for(let t of window.$components.get("dropdown"))t.hide()}hide(){this.menu.style.display="none",this.menu.classList.remove("anim","menuIn"),this.toggle.setAttribute("aria-expanded","false"),this.menu.style.top="",this.menu.style.bottom="",this.menu.style.maxHeight="",this.moveMenu&&(this.menu.style.position="",this.menu.style[this.direction]="",this.menu.style.width="",this.menu.style.left="",this.container.appendChild(this.menu)),this.showing=!1}setupListeners(){let t=new zt(this.container,e=>{this.hide(),this.toggle.focus(),this.bubbleEscapes||e.stopPropagation()},e=>{e.target.nodeName==="INPUT"&&(e.preventDefault(),e.stopPropagation()),this.hide()});this.moveMenu&&t.shareHandlingToEl(this.menu),this.container.addEventListener("click",e=>{Array.from(this.menu.querySelectorAll("a")).includes(e.target)&&this.hide()}),R(this.toggle,e=>{e.stopPropagation(),e.preventDefault(),this.show(e),e instanceof KeyboardEvent&&t.focusNext()})}};var Vi=class extends g{setup(){this.elem=this.$el,this.searchInput=this.$refs.searchInput,this.loadingElem=this.$refs.loading,this.listContainerElem=this.$refs.listContainer,this.localSearchSelector=this.$opts.localSearchSelector,this.url=this.$opts.url,this.elem.addEventListener("show",this.onShow.bind(this)),this.searchInput.addEventListener("input",this.onSearch.bind(this)),this.runAjaxSearch=Nt(this.runAjaxSearch,300,!1)}onShow(){this.loadList()}onSearch(){let t=this.searchInput.value.toLowerCase().trim();this.localSearchSelector?this.runLocalSearch(t):(this.toggleLoading(!0),this.listContainerElem.innerHTML="",this.runAjaxSearch(t))}runAjaxSearch(t){this.loadList(t)}runLocalSearch(t){let e=this.listContainerElem.querySelectorAll(this.localSearchSelector);for(let n of e){let r=!t||n.textContent.toLowerCase().includes(t);n.style.display=r?"flex":"none",n.classList.toggle("hidden",!r)}}async loadList(t=""){this.listContainerElem.innerHTML="",this.toggleLoading(!0);try{let e=await window.$http.get(this.getAjaxUrl(t)),n=qs(this.listContainerElem,80);this.listContainerElem.innerHTML=e.data,n()}catch(e){console.error(e)}this.toggleLoading(!1),this.localSearchSelector&&this.onSearch()}getAjaxUrl(t=null){if(!t)return this.url;let e=this.url.includes("?")?"&":"?";return`${this.url}${e}search=${encodeURIComponent(t)}`}toggleLoading(t=!1){this.loadingElem.style.display=t?"block":"none"}};var Ft=class{constructor(t){this.data=t}hasItems(){return!!this.data&&!!this.data.types&&this.data.types.length>0}containsTabularData(){let t=this.data.getData("text/rtf");return t&&t.includes("\\trowd")}getImages(){let{types:t}=this.data,e=[];for(let r of t)if(r.includes("image")){let o=this.data.getData(r);e.push(o.getAsFile())}let n=this.getFiles().filter(r=>r.type.includes("image"));return e.push(...n),e}getFiles(){let{files:t}=this.data;return[...t]}};async function Kr(i){if(window.isSecureContext&&navigator.clipboard){await navigator.clipboard.writeText(i);return}let t=document.createElement("textarea");t.style="position: absolute; left: -1000px; top: -1000px;",t.value=i,document.body.appendChild(t),t.select(),document.execCommand("copy"),document.body.removeChild(t)}var Wi=class extends g{setup(){this.container=this.$el,this.statusArea=this.$refs.statusArea,this.dropTarget=this.$refs.dropTarget,this.selectButtons=this.$manyRefs.selectButton||[],this.isActive=!0,this.url=this.$opts.url,this.method=(this.$opts.method||"post").toUpperCase(),this.successMessage=this.$opts.successMessage,this.errorMessage=this.$opts.errorMessage,this.uploadLimitMb=Number(this.$opts.uploadLimit),this.uploadLimitMessage=this.$opts.uploadLimitMessage,this.zoneText=this.$opts.zoneText,this.fileAcceptTypes=this.$opts.fileAccept,this.allowMultiple=this.$opts.allowMultiple==="true",this.setupListeners()}toggleActive(t){this.isActive=t}setupListeners(){R(this.selectButtons,this.manualSelectHandler.bind(this)),this.setupDropTargetHandlers()}setupDropTargetHandlers(){let t=0,e=()=>{this.hideOverlay(),t=0};this.dropTarget.addEventListener("dragenter",n=>{n.preventDefault(),t+=1,t===1&&this.isActive&&this.showOverlay()}),this.dropTarget.addEventListener("dragover",n=>{n.preventDefault()}),this.dropTarget.addEventListener("dragend",e),this.dropTarget.addEventListener("dragleave",()=>{t-=1,t===0&&e()}),this.dropTarget.addEventListener("drop",n=>{if(n.preventDefault(),e(),!this.isActive)return;let o=new Ft(n.dataTransfer).getFiles();for(let s of o)this.createUploadFromFile(s)})}manualSelectHandler(){let t=Et("input",{type:"file",style:"left: -400px; visibility: hidden; position: fixed;",accept:this.fileAcceptTypes,multiple:this.allowMultiple?"":null});this.container.append(t),t.click(),t.addEventListener("change",()=>{for(let e of t.files)this.createUploadFromFile(e);t.remove()})}showOverlay(){if(!this.dropTarget.querySelector(".dropzone-overlay")){let e=Et("div",{class:"dropzone-overlay"},[this.zoneText]);this.dropTarget.append(e)}}hideOverlay(){let t=this.dropTarget.querySelector(".dropzone-overlay");t&&t.remove()}createUploadFromFile(t){let{dom:e,status:n,progress:r,dismiss:o}=this.createDomForFile(t);this.statusArea.append(e);let s=this,a={file:t,dom:e,updateProgress(l){r.textContent=`${l}%`,r.style.width=`${l}%`},markError(l){n.setAttribute("data-status","error"),n.textContent=l,Te(e),this.updateProgress(100)},markSuccess(l){n.setAttribute("data-status","success"),n.textContent=l,Te(e),setTimeout(o,2400),s.$emit("upload-success",{name:t.name})}};return t.size>this.uploadLimitMb*1e6?(a.markError(this.uploadLimitMessage),a):(this.startXhrForUpload(a),a)}startXhrForUpload(t){let e=new FormData;e.append("file",t.file,t.file.name),this.method!=="POST"&&e.append("_method",this.method);let n=this,r=window.$http.createXMLHttpRequest("POST",this.url,{error(){t.markError(n.errorMessage)},readystatechange(){if(this.readyState===XMLHttpRequest.DONE&&this.status===200)t.markSuccess(n.successMessage);else if(this.readyState===XMLHttpRequest.DONE&&this.status>=400){let o=this.responseText,s=o.startsWith("{")?JSON.parse(o):{message:o},a=s?.message||s?.error||o;t.markError(a)}}});r.upload.addEventListener("progress",o=>{let s=Math.min(Math.ceil(o.loaded/o.total*100),100);t.updateProgress(s)}),r.setRequestHeader("Accept","application/json"),r.send(e)}createDomForFile(t){let e=Et("img",{src:"data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 24 24'%3E%3Cpath d='M9.224 7.373a.924.924 0 0 0-.92.925l-.006 7.404c0 .509.412.925.921.925h5.557a.928.928 0 0 0 .926-.925v-5.553l-2.777-2.776Zm3.239 3.239V8.067l2.545 2.545z' style='fill:%23000;fill-opacity:.75'/%3E%3C/svg%3E"}),n=Et("div",{class:"dropzone-file-item-status"},[]),r=Et("div",{class:"dropzone-file-item-progress"}),o=Et("div",{class:"dropzone-file-item-image-wrap"},[e]),s=Et("div",{class:"dropzone-file-item"},[o,Et("div",{class:"dropzone-file-item-text-wrap"},[Et("div",{class:"dropzone-file-item-label"},[t.name]),ae(),n]),r]);t.type.startsWith("image/")&&(e.src=URL.createObjectURL(t));let a=()=>{s.classList.add("dismiss"),s.addEventListener("animationend",()=>{s.remove()})};return s.addEventListener("click",a),{dom:s,progress:r,status:n,dismiss:a}}};var Gi=class extends g{setup(){this.container=this.$el,this.buttons=this.$manyRefs.tabButton,this.contentElements=this.$manyRefs.tabContent,this.toggleButton=this.$refs.toggle,this.editorWrapEl=this.container.closest(".page-editor"),this.setupListeners(),this.setActiveTab(this.contentElements[0].dataset.tabContent)}setupListeners(){this.toggleButton.addEventListener("click",()=>this.toggle()),this.container.addEventListener("click",t=>{let e=t.target.closest("button");if(this.buttons.includes(e)){let n=e.dataset.tab;this.setActiveTab(n,!0)}})}toggle(){this.container.classList.toggle("open");let t=this.container.classList.contains("open");this.toggleButton.setAttribute("aria-expanded",t?"true":"false"),this.editorWrapEl.classList.toggle("toolbox-open",t)}setActiveTab(t,e=!1){for(let n of this.buttons)n.classList.remove("active"),n.dataset.tab===t&&n.classList.add("active");for(let n of this.contentElements)n.style.display="none",n.dataset.tabContent===t&&(n.style.display="block");e&&!this.container.classList.contains("open")&&this.toggle()}};var Ki=class extends g{setup(){this.container=this.$el,this.entityType=this.$opts.entityType,this.everyoneInheritToggle=this.$refs.everyoneInherit,this.roleSelect=this.$refs.roleSelect,this.roleContainer=this.$refs.roleContainer,this.setupListeners()}setupListeners(){this.everyoneInheritToggle.addEventListener("change",t=>{let e=t.target.checked,n=document.querySelectorAll('input[name^="permissions[0]["]');for(let r of n)r.disabled=e,r.checked=!1}),this.container.addEventListener("click",t=>{let e=t.target.closest("button");e&&e.dataset.roleId&&this.removeRowOnButtonClick(e)}),this.roleSelect.addEventListener("change",()=>{let t=this.roleSelect.value;t&&this.addRoleRow(t)})}async addRoleRow(t){this.roleSelect.disabled=!0;let e=this.roleSelect.querySelector(`option[value="${t}"]`);e&&e.remove();let n=await window.$http.get(`/permissions/form-row/${this.entityType}/${t}`),r=_t(n.data);this.roleContainer.append(r),this.roleSelect.disabled=!1}removeRowOnButtonClick(t){let e=t.closest(".item-list-row"),{roleId:n}=t.dataset,{roleName:r}=t.dataset,o=document.createElement("option");o.value=n,o.textContent=r,this.roleSelect.append(o),e.remove()}};var Zi=class extends g{setup(){this.entityId=this.$opts.entityId,this.entityType=this.$opts.entityType,this.contentView=this.$refs.contentView,this.searchView=this.$refs.searchView,this.searchResults=this.$refs.searchResults,this.searchInput=this.$refs.searchInput,this.searchForm=this.$refs.searchForm,this.clearButton=this.$refs.clearButton,this.loadingBlock=this.$refs.loadingBlock,this.setupListeners()}setupListeners(){this.searchInput.addEventListener("change",this.runSearch.bind(this)),this.searchForm.addEventListener("submit",t=>{t.preventDefault(),this.runSearch()}),R(this.clearButton,this.clearSearch.bind(this))}runSearch(){let t=this.searchInput.value.trim();if(t.length===0){this.clearSearch();return}this.searchView.classList.remove("hidden"),this.contentView.classList.add("hidden"),this.loadingBlock.classList.remove("hidden");let e=window.baseUrl(`/search/${this.entityType}/${this.entityId}`);window.$http.get(e,{term:t}).then(n=>{this.searchResults.innerHTML=n.data}).catch(console.error).then(()=>{this.loadingBlock.classList.add("hidden")})}clearSearch(){this.searchView.classList.add("hidden"),this.contentView.classList.remove("hidden"),this.loadingBlock.classList.add("hidden"),this.searchInput.value=""}};var Xi=class extends g{setup(){this.elem=this.$el,this.input=this.$refs.input,this.searchInput=this.$refs.search,this.loading=this.$refs.loading,this.resultsContainer=this.$refs.results,this.searchOptions={entityTypes:this.$opts.entityTypes||"page,book,chapter",entityPermission:this.$opts.entityPermission||"view",searchEndpoint:this.$opts.searchEndpoint||"",initialValue:this.searchInput.value||""},this.search="",this.lastClick=0,this.setupListeners(),this.showLoading(),this.searchOptions.searchEndpoint&&this.initialLoad()}configureSearchOptions(t){Object.assign(this.searchOptions,t),this.reset(),this.searchInput.value=this.searchOptions.initialValue}setupListeners(){this.elem.addEventListener("click",this.onClick.bind(this));let t=0;this.searchInput.addEventListener("input",()=>{t=Date.now(),this.showLoading(),setTimeout(()=>{Date.now()-t<199||this.searchEntities(this.searchInput.value)},200)}),this.searchInput.addEventListener("keydown",e=>{e.keyCode===13&&e.preventDefault()}),K(this.$el,"[data-entity-type]","keydown",e=>{if(e.ctrlKey&&e.code==="Enter"){let n=this.$el.closest("form");if(n){n.submit(),e.preventDefault();return}}e.code==="ArrowDown"&&this.focusAdjacent(!0),e.code==="ArrowUp"&&this.focusAdjacent(!1)}),this.searchInput.addEventListener("keydown",e=>{e.code==="ArrowDown"&&this.focusAdjacent(!0)})}focusAdjacent(t=!0){let e=Array.from(this.resultsContainer.querySelectorAll("[data-entity-type]")),n=e.indexOf(document.activeElement),r=e[n+(t?1:-1)]||e[0];r&&r.focus()}reset(){this.searchInput.value="",this.showLoading(),this.initialLoad()}focusSearch(){this.searchInput.focus()}showLoading(){this.loading.style.display="block",this.resultsContainer.style.display="none"}hideLoading(){this.loading.style.display="none",this.resultsContainer.style.display="block"}initialLoad(){if(!this.searchOptions.searchEndpoint)throw new Error("Search endpoint not set for entity-selector load");if(this.searchOptions.initialValue){this.searchEntities(this.searchOptions.initialValue);return}window.$http.get(this.searchUrl()).then(t=>{this.resultsContainer.innerHTML=t.data,this.hideLoading()})}searchUrl(){let t=`types=${encodeURIComponent(this.searchOptions.entityTypes)}&permission=${encodeURIComponent(this.searchOptions.entityPermission)}`;return`${this.searchOptions.searchEndpoint}?${t}`}searchEntities(t){if(!this.searchOptions.searchEndpoint)throw new Error("Search endpoint not set for entity-selector load");this.input.value="";let e=`${this.searchUrl()}&term=${encodeURIComponent(t)}`;window.$http.get(e).then(n=>{this.resultsContainer.innerHTML=n.data,this.hideLoading()})}isDoubleClick(){let t=Date.now(),e=t-this.lastClick<300;return this.lastClick=t,e}onClick(t){let e=t.target.closest("[data-entity-type]");e&&(t.preventDefault(),t.stopPropagation(),this.selectItem(e))}selectItem(t){let e=this.isDoubleClick(),n=t.getAttribute("data-entity-type"),r=t.getAttribute("data-entity-id"),o=!t.classList.contains("selected")||e;this.unselectAll(),this.input.value=o?`${n}:${r}`:"";let s=t.getAttribute("href"),a=t.querySelector(".entity-list-item-name").textContent,l={id:Number(r),name:a,link:s};o?t.classList.add("selected"):window.$events.emit("entity-select-change",null),!(!e&&!o)&&(e&&this.confirmSelection(l),o&&window.$events.emit("entity-select-change",l))}confirmSelection(t){window.$events.emit("entity-select-confirm",t)}unselectAll(){let t=this.elem.querySelectorAll(".selected");for(let e of t)e.classList.remove("selected","primary-background")}};var Yi=class extends g{setup(){this.container=this.$el,this.selectButton=this.$refs.select,this.selectorEl=this.$refs.selector,this.callback=null,this.selection=null,this.selectButton.addEventListener("click",this.onSelectButtonClick.bind(this)),window.$events.listen("entity-select-change",this.onSelectionChange.bind(this)),window.$events.listen("entity-select-confirm",this.handleConfirmedSelection.bind(this))}show(t,e={}){this.callback=t,this.getSelector().configureSearchOptions(e),this.getPopup().show(),this.getSelector().focusSearch()}hide(){this.getPopup().hide()}getPopup(){return window.$components.firstOnElement(this.container,"popup")}getSelector(){return window.$components.firstOnElement(this.selectorEl,"entity-selector")}onSelectButtonClick(){this.handleConfirmedSelection(this.selection)}onSelectionChange(t){this.selection=t,t===null?this.selectButton.setAttribute("disabled","true"):this.selectButton.removeAttribute("disabled")}handleConfirmedSelection(t){this.hide(),this.getSelector().reset(),this.callback&&t&&this.callback(t)}};var Ji=class extends g{setup(){this.container=this.$el,this.name=this.$opts.name,R(this.$el,()=>{this.$emit(this.name,this.$opts)})}};var Qi=class extends g{setup(){this.targetSelector=this.$opts.targetSelector,this.isOpen=this.$opts.isOpen==="true",this.updateEndpoint=this.$opts.updateEndpoint,this.$el.addEventListener("click",this.click.bind(this))}open(t){me(t,200)}close(t){fe(t,200)}click(t){t.preventDefault();let e=document.querySelectorAll(this.targetSelector);for(let n of e)(this.isOpen?this.close:this.open)(n);this.isOpen=!this.isOpen,this.updateSystemAjax(this.isOpen)}updateSystemAjax(t){window.$http.patch(this.updateEndpoint,{expand:t?"true":"false"})}};var tn=class extends g{setup(){this.container=this.$el,this.input=this.$refs.input,this.suggestions=this.$refs.suggestions,this.suggestionResultsWrap=this.$refs.suggestionResults,this.loadingWrap=this.$refs.loading,this.button=this.$refs.button,this.setupListeners()}setupListeners(){let t=Nt(this.updateSuggestions.bind(this),200,!1);this.input.addEventListener("input",()=>{let{value:e}=this.input;e.length>0?(this.loadingWrap.style.display="block",this.suggestionResultsWrap.style.opacity="0.5",t(e)):this.hideSuggestions()}),this.input.addEventListener("dblclick",()=>{this.input.setAttribute("autocomplete","on"),this.button.focus(),this.input.focus()}),new zt(this.container,()=>{this.hideSuggestions()})}async updateSuggestions(t){let{data:e}=await window.$http.get("/search/suggest",{term:t});if(!this.input.value)return;let n=_t(e);this.suggestionResultsWrap.innerHTML="",this.suggestionResultsWrap.style.opacity="1",this.loadingWrap.style.display="none",this.suggestionResultsWrap.append(n),this.container.classList.contains("search-active")||this.showSuggestions()}showSuggestions(){this.container.classList.add("search-active"),window.requestAnimationFrame(()=>{this.suggestions.classList.add("search-suggestions-animation")})}hideSuggestions(){this.container.classList.remove("search-active"),this.suggestions.classList.remove("search-suggestions-animation"),this.suggestionResultsWrap.innerHTML=""}};var en=class extends g{setup(){this.elem=this.$el,this.toggleButton=this.$refs.toggle,this.menu=this.$refs.menu,this.open=!1,this.toggleButton.addEventListener("click",this.onToggle.bind(this)),this.onWindowClick=this.onWindowClick.bind(this),this.onKeyDown=this.onKeyDown.bind(this)}onToggle(t){this.open=!this.open,this.menu.classList.toggle("show",this.open),this.toggleButton.setAttribute("aria-expanded",this.open?"true":"false"),this.open?(this.elem.addEventListener("keydown",this.onKeyDown),window.addEventListener("click",this.onWindowClick)):(this.elem.removeEventListener("keydown",this.onKeyDown),window.removeEventListener("click",this.onWindowClick)),t.stopPropagation()}onKeyDown(t){t.code==="Escape"&&this.onToggle(t)}onWindowClick(t){this.onToggle(t)}};var nn=class extends g{setup(){this.uploadedTo=this.$opts.uploadedTo,this.container=this.$el,this.popupEl=this.$refs.popup,this.searchForm=this.$refs.searchForm,this.searchInput=this.$refs.searchInput,this.cancelSearch=this.$refs.cancelSearch,this.listContainer=this.$refs.listContainer,this.filterTabs=this.$manyRefs.filterTabs,this.selectButton=this.$refs.selectButton,this.uploadButton=this.$refs.uploadButton,this.uploadHint=this.$refs.uploadHint,this.formContainer=this.$refs.formContainer,this.formContainerPlaceholder=this.$refs.formContainerPlaceholder,this.dropzoneContainer=this.$refs.dropzoneContainer,this.loadMore=this.$refs.loadMore,this.type="gallery",this.lastSelected={},this.lastSelectedTime=0,this.callback=null,this.resetState=()=>{this.hasData=!1,this.page=1,this.filter="all"},this.resetState(),this.setupListeners()}setupListeners(){R(this.filterTabs,n=>{this.resetAll(),this.filter=n.target.dataset.filter,this.setActiveFilterTab(this.filter),this.loadGallery()}),this.searchForm.addEventListener("submit",n=>{this.resetListView(),this.loadGallery(),this.cancelSearch.toggleAttribute("hidden",!this.searchInput.value),n.preventDefault()}),R(this.cancelSearch,()=>{this.resetListView(),this.resetSearchView(),this.loadGallery()}),K(this.container,".load-more button","click",this.runLoadMore.bind(this)),this.listContainer.addEventListener("event-emit-select-image",this.onImageSelectEvent.bind(this)),this.listContainer.addEventListener("error",n=>{n.target.src=window.baseUrl("loading_error.png")},!0),R(this.selectButton,()=>{this.callback&&this.callback(this.lastSelected),this.hide()}),K(this.formContainer,"#image-manager-delete","click",()=>{this.lastSelected&&this.loadImageEditForm(this.lastSelected.id,!0)}),K(this.formContainer,"#image-manager-rebuild-thumbs","click",async(n,r)=>{r.disabled=!0,this.lastSelected&&await this.rebuildThumbnails(this.lastSelected.id),r.disabled=!1}),this.formContainer.addEventListener("ajax-form-success",()=>{this.refreshGallery(),this.resetEditForm()}),this.container.addEventListener("dropzone-upload-success",this.refreshGallery.bind(this));let t=this.listContainer.parentElement,e=[];t.addEventListener("wheel",n=>{if(!(Math.ceil(t.scrollHeight-t.scrollTop)===t.clientHeight)||n.deltaY<1)return;let s=Date.now()-1e3;e.push(Date.now()),e=e.filter(a=>a>=s),e.length>5&&this.canLoadMore()&&this.runLoadMore()})}show(t,e="gallery"){this.resetAll(),this.callback=t,this.type=e,this.getPopup().show();let n=e!=="gallery";this.dropzoneContainer.classList.toggle("hidden",n),this.uploadButton.classList.toggle("hidden",n),this.uploadHint.classList.toggle("hidden",n),window.$components.firstOnElement(this.container,"dropzone").toggleActive(!n),this.hasData||(this.loadGallery(),this.hasData=!0)}hide(){this.getPopup().hide()}getPopup(){return window.$components.firstOnElement(this.popupEl,"popup")}async loadGallery(){let t={page:this.page,search:this.searchInput.value||null,uploaded_to:this.uploadedTo,filter_type:this.filter==="all"?null:this.filter},{data:e}=await window.$http.get(`images/${this.type}`,t);t.page===1&&(this.listContainer.innerHTML=""),this.addReturnedHtmlElementsToList(e),Te(this.listContainer)}addReturnedHtmlElementsToList(t){let e=document.createElement("div");e.innerHTML=t;let n=e.querySelector(".load-more");n&&(n.remove(),this.loadMore.innerHTML=n.innerHTML),this.loadMore.toggleAttribute("hidden",!n),window.$components.init(e);for(let r of[...e.children])this.listContainer.appendChild(r)}setActiveFilterTab(t){for(let e of this.filterTabs){let n=e.dataset.filter===t;e.setAttribute("aria-selected",n?"true":"false")}}resetAll(){this.resetState(),this.resetListView(),this.resetSearchView(),this.resetEditForm(),this.setActiveFilterTab("all"),this.selectButton.classList.add("hidden")}resetSearchView(){this.searchInput.value="",this.cancelSearch.toggleAttribute("hidden",!0)}resetEditForm(){this.formContainer.innerHTML="",this.formContainerPlaceholder.removeAttribute("hidden")}resetListView(){Le(this.listContainer),this.page=1}refreshGallery(){this.resetListView(),this.loadGallery()}async onImageSelectEvent(t){let e=JSON.parse(t.detail.data),n=e&&e.id===this.lastSelected.id&&Date.now()-this.lastSelectedTime<400,r=t.target.classList.contains("selected");[...this.listContainer.querySelectorAll(".selected")].forEach(o=>{o.classList.remove("selected")}),!r&&!n?(t.target.classList.add("selected"),e=await this.loadImageEditForm(e.id)):n?n&&(e=this.lastSelected):this.resetEditForm(),this.selectButton.classList.toggle("hidden",r),n&&this.callback&&(this.callback(e),this.hide()),this.lastSelected=e,this.lastSelectedTime=Date.now()}async loadImageEditForm(t,e=!1){e||(this.formContainer.innerHTML="");let n=e?{delete:!0}:{},{data:r}=await window.$http.get(`/images/edit/${t}`,n);this.formContainer.innerHTML=r,this.formContainerPlaceholder.setAttribute("hidden",""),window.$components.init(this.formContainer);let o=this.formContainer.querySelector("#image-manager-form-image-data");return JSON.parse(o.text)}runLoadMore(){Le(this.loadMore),this.page+=1,this.loadGallery()}canLoadMore(){return this.loadMore.querySelector("button")&&!this.loadMore.hasAttribute("hidden")}async rebuildThumbnails(t){try{let e=await window.$http.put(`/images/${t}/rebuild-thumbnails`);window.$events.success(e.data),this.refreshGallery()}catch(e){window.$events.showResponseError(e)}}};var rn=class extends g{setup(){this.imageElem=this.$refs.image,this.imageInput=this.$refs.imageInput,this.resetInput=this.$refs.resetInput,this.removeInput=this.$refs.removeInput,this.resetButton=this.$refs.resetButton,this.removeButton=this.$refs.removeButton||null,this.defaultImage=this.$opts.defaultImage,this.setupListeners()}setupListeners(){this.resetButton.addEventListener("click",this.reset.bind(this)),this.removeButton&&this.removeButton.addEventListener("click",this.removeImage.bind(this)),this.imageInput.addEventListener("change",this.fileInputChange.bind(this))}fileInputChange(){this.resetInput.setAttribute("disabled","disabled"),this.removeInput&&this.removeInput.setAttribute("disabled","disabled");for(let t of this.imageInput.files)this.imageElem.src=window.URL.createObjectURL(t);this.imageElem.classList.remove("none")}reset(){this.imageInput.value="",this.imageElem.src=this.defaultImage,this.resetInput.removeAttribute("disabled"),this.removeInput&&this.removeInput.setAttribute("disabled","disabled"),this.imageElem.classList.remove("none")}removeImage(){this.imageInput.value="",this.imageElem.classList.add("none"),this.removeInput.removeAttribute("disabled"),this.resetInput.setAttribute("disabled","disabled")}};var on=class extends g{setup(){this.elem=this.$el,this.menu=this.$refs.menu,this.sortInput=this.$refs.sort,this.orderInput=this.$refs.order,this.form=this.$refs.form,this.setupListeners()}setupListeners(){this.menu.addEventListener("click",t=>{t.target.closest("[data-sort-value]")!==null&&this.sortOptionClick(t)}),this.elem.addEventListener("click",t=>{t.target.closest("[data-sort-dir]")!==null&&this.sortDirectionClick(t)})}sortOptionClick(t){let e=t.target.closest("[data-sort-value]");this.sortInput.value=e.getAttribute("data-sort-value"),t.preventDefault(),this.form.submit()}sortDirectionClick(t){let e=this.orderInput.value;this.orderInput.value=e==="asc"?"desc":"asc",t.preventDefault(),this.form.submit()}};var Wc=Zo(Nc()),Gc=Zo(Vc()),yn=class{constructor(){this.renderer=new Wc.default({html:!0}),this.renderer.use(Gc.default,{label:!0})}getRenderer(){return this.renderer}render(t){return this.renderer.render(t)}};function mf(i,t){return document.createElement(i,t)}function gf(i,t,e){return document.createElementNS(i,t,e)}function bf(){return te(document.createDocumentFragment())}function vf(i){return document.createTextNode(i)}function wf(i){return document.createComment(i)}function yf(i,t,e){if(qt(i)){let n=i;for(;n&&qt(n);)n=te(n).parent;i=n??i}qt(t)&&(t=te(t,i)),e&&qt(e)&&(e=te(e).firstChildNode),i.insertBefore(t,e)}function xf(i,t){i.removeChild(t)}function kf(i,t){qt(t)&&(t=te(t,i)),i.appendChild(t)}function Kc(i){if(qt(i)){for(;i&&qt(i);)i=te(i).parent;return i??null}return i.parentNode}function Cf(i){var t;if(qt(i)){let e=te(i),n=Kc(e);if(n&&e.lastChildNode){let r=Array.from(n.childNodes),o=r.indexOf(e.lastChildNode);return(t=r[o+1])!==null&&t!==void 0?t:null}return null}return i.nextSibling}function Ef(i){return i.tagName}function _f(i,t){i.textContent=t}function Sf(i){return i.textContent}function Af(i){return i.nodeType===1}function Df(i){return i.nodeType===3}function Lf(i){return i.nodeType===8}function qt(i){return i.nodeType===11}function te(i,t){var e,n,r;let o=i;return(e=o.parent)!==null&&e!==void 0||(o.parent=t??null),(n=o.firstChildNode)!==null&&n!==void 0||(o.firstChildNode=i.firstChild),(r=o.lastChildNode)!==null&&r!==void 0||(o.lastChildNode=i.lastChild),o}var xn={createElement:mf,createElementNS:gf,createTextNode:vf,createDocumentFragment:bf,createComment:wf,insertBefore:yf,removeChild:xf,appendChild:kf,parentNode:Kc,nextSibling:Cf,tagName:Ef,setTextContent:_f,getTextContent:Sf,isElement:Af,isText:Df,isComment:Lf,isDocumentFragment:qt};function Bt(i,t,e,n,r){let o=t===void 0?void 0:t.key;return{sel:i,data:t,children:e,text:n,elm:r,key:o}}var So=Array.isArray;function Zc(i){return typeof i=="string"||typeof i=="number"||i instanceof String||i instanceof Number}function kn(i){return i===void 0}function ut(i){return i!==void 0}var Ao=Bt("",{},[],void 0,void 0);function Qe(i,t){var e,n;let r=i.key===t.key,o=((e=i.data)===null||e===void 0?void 0:e.is)===((n=t.data)===null||n===void 0?void 0:n.is),s=i.sel===t.sel,a=!i.sel&&i.sel===t.sel?typeof i.text==typeof t.text:!0;return s&&r&&o&&a}function $f(){throw new Error("The document fragment is not supported on this platform.")}function If(i,t){return i.isElement(t)}function Mf(i,t){return i.isDocumentFragment(t)}function Ff(i,t,e){var n;let r={};for(let o=t;o<=e;++o){let s=(n=i[o])===null||n===void 0?void 0:n.key;s!==void 0&&(r[s]=o)}return r}var qf=["create","update","remove","destroy","pre","post"];function Do(i,t,e){let n={create:[],update:[],remove:[],destroy:[],pre:[],post:[]},r=t!==void 0?t:xn;for(let p of qf)for(let m of i){let w=m[p];w!==void 0&&n[p].push(w)}function o(p){let m=p.id?"#"+p.id:"",w=p.getAttribute("class"),v=w?"."+w.split(" ").join("."):"";return Bt(r.tagName(p).toLowerCase()+m+v,{},[],void 0,p)}function s(p){return Bt(void 0,{},[],void 0,p)}function a(p,m){return function(){if(--m===0){let v=r.parentNode(p);v!==null&&r.removeChild(v,p)}}}function l(p,m){var w,v,b,k;let x,E=p.data;if(E!==void 0){let D=(w=E.hook)===null||w===void 0?void 0:w.init;ut(D)&&(D(p),E=p.data)}let y=p.children,S=p.sel;if(S==="!")kn(p.text)&&(p.text=""),p.elm=r.createComment(p.text);else if(S==="")p.elm=r.createTextNode(p.text);else if(S!==void 0){let D=S.indexOf("#"),M=S.indexOf(".",D),T=D>0?D:S.length,P=M>0?M:S.length,H=D!==-1||M!==-1?S.slice(0,Math.min(T,P)):S,U=p.elm=ut(E)&&ut(x=E.ns)?r.createElementNS(x,H,E):r.createElement(H,E);for(T0&&U.setAttribute("class",S.slice(P+1).replace(/\./g," ")),x=0;x0&&(u.attrs=l),Object.keys(c).length>0&&(u.dataset=c),a.startsWith("svg")&&(a.length===3||a[3]==="."||a[3]==="#")&&Lo(u,h,a),Bt(a,u,h,void 0,i)}else return e.isText(i)?(n=e.getTextContent(i),Bt(void 0,void 0,void 0,n,i)):e.isComment(i)?(n=e.getTextContent(i),Bt("!",{},[],n,i)):Bt("",{},[],void 0,i)}var Bf="http://www.w3.org/1999/xlink",Pf="http://www.w3.org/2000/xmlns/",Of="http://www.w3.org/XML/1998/namespace";function Xc(i,t){let e,n=t.elm,r=i.data.attrs,o=t.data.attrs;if(!(!r&&!o)&&r!==o){r=r||{},o=o||{};for(e in o){let s=o[e];r[e]!==s&&(s===!0?n.setAttribute(e,""):s===!1?n.removeAttribute(e):e.charCodeAt(0)!==120?n.setAttribute(e,s):e.charCodeAt(3)===58?n.setAttributeNS(Of,e,s):e.charCodeAt(5)===58?e.charCodeAt(1)===109?n.setAttributeNS(Pf,e,s):n.setAttributeNS(Bf,e,s):n.setAttribute(e,s))}for(e in r)e in o||n.removeAttribute(e)}}var To={create:Xc,update:Xc};var Cn;function Rf(){return Cn||(Cn=Do([To]),Cn)}function Yc(i,t){let e=document.createElement("div");e.innerHTML=t,Rf()(ti(i),ti(e))}var En=class{constructor(t){this.editor=t,this.container=t.config.displayEl,this.doc=null,this.lastDisplayClick=0,this.container.contentDocument.readyState==="complete"?this.onLoad():this.container.addEventListener("load",this.onLoad.bind(this)),this.updateVisibility(t.settings.get("showPreview")),t.settings.onChange("showPreview",e=>this.updateVisibility(e))}updateVisibility(t){let e=this.container.closest(".markdown-editor-wrap");e.style.display=t?null:"none"}onLoad(){this.doc=this.container.contentDocument,this.loadStylesIntoDisplay(),this.doc.body.className="page-content",this.doc.addEventListener("click",this.onDisplayClick.bind(this))}onDisplayClick(t){let e=Date.now()-this.lastDisplayClick<300,n=t.target.closest("a");if(n!==null){t.preventDefault(),window.open(n.getAttribute("href"));return}let r=t.target.closest("[drawio-diagram]");if(r!==null&&e){this.editor.actions.editDrawing(r);return}this.lastDisplayClick=Date.now()}loadStylesIntoDisplay(){this.doc.documentElement.classList.add("markdown-editor-display"),document.documentElement.classList.contains("dark-mode")&&(this.doc.documentElement.style.backgroundColor="#222",this.doc.documentElement.classList.add("dark-mode")),this.doc.head.innerHTML="";let t=document.head.querySelectorAll("style,link[rel=stylesheet]");for(let e of t){let n=e.cloneNode(!0);this.doc.head.appendChild(n)}}patchWithHtml(t){let{body:e}=this.doc;if(e.children.length===0){let r=document.createElement("div");this.doc.body.append(r)}let n=e.children[0];Yc(n,t)}scrollToIndex(t){let e=this.doc.body?.children[0]?.children;if(e&&e.length<=t)return;(t===-1?e[e.length-1]:e[t]).scrollIntoView({block:"start",inline:"nearest",behavior:"smooth"})}};function _n(i){return new Promise((t,e)=>{i.oncomplete=i.onsuccess=()=>t(i.result),i.onabort=i.onerror=()=>e(i.error)})}function Nf(i,t){let e=indexedDB.open(i);e.onupgradeneeded=()=>e.result.createObjectStore(t);let n=_n(e);return(r,o)=>n.then(s=>o(s.transaction(t,r).objectStore(t)))}var $o;function Io(){return $o||($o=Nf("keyval-store","keyval")),$o}function Mo(i,t=Io()){return t("readonly",e=>_n(e.get(i)))}function Fo(i,t,e=Io()){return e("readwrite",n=>(n.put(t,i),_n(n.transaction)))}function qo(i,t=Io()){return t("readwrite",e=>(e.delete(i),_n(e.transaction)))}var $t=null,Oo,Sn,Bo,Po="last-drawing-save";function Ro(i){$t.contentWindow.postMessage(JSON.stringify(i),Oo)}function Hf(i){Fo(Po,i.data),Bo&&Bo(i.data).then(()=>{qo(Po)})}function Uf(i){Ro({action:"export",format:"xmlpng",xml:i.xml,spin:"Updating drawing"})}function jf(){Sn&&Sn().then(i=>{Ro({action:"load",autosave:1,xml:i})})}function Vf(){let i={};window.$events.emitPublic($t,"editor-drawio::configure",{config:i}),Ro({action:"configure",config:i})}function Jc(){window.removeEventListener("message",Qc),$t&&document.body.removeChild($t)}function Qc(i){if(!i.data||i.data.length<1||i.origin!==Oo)return;let t=JSON.parse(i.data);t.event==="init"?jf():t.event==="exit"?Jc():t.event==="save"?Uf(t):t.event==="export"?Hf(t):t.event==="configure"&&Vf()}async function Wf(){let i=await Mo(Po),t=document.getElementById("unsaved-drawing-dialog");t||console.error("Missing expected unsaved-drawing dialog"),i&&await window.$components.firstOnElement(t,"confirm-dialog").show()&&(Sn=async()=>i)}async function ei(i,t,e){Sn=t,Bo=e,await Wf(),$t=document.createElement("iframe"),$t.setAttribute("frameborder","0"),window.addEventListener("message",Qc),$t.setAttribute("src",i),$t.setAttribute("class","fullscreen"),$t.style.backgroundColor="#FFFFFF",document.body.appendChild($t),Oo=new URL(i).origin}async function No(i,t){let e={image:i,uploaded_to:t};return(await window.$http.post(window.baseUrl("/images/drawio"),e)).data}function ee(){Jc()}async function An(i){try{return`data:image/png;base64,${(await window.$http.get(window.baseUrl(`/images/drawio/base64/${i}`))).data.content}`}catch(t){throw t instanceof window.$http.HttpError&&window.$events.showResponseError(t),ee(),t}}var ii,zo,xe,Dn,ke,Ln,Pt,ie,Wt,ye,rt,ht,ni,Ho,ri,Uo,Ce,Tn,dt,wt,In,eu,$n=class{constructor(t){ot(this,ii);ot(this,xe);ot(this,ke);ot(this,Pt);ot(this,Wt);ot(this,rt);ot(this,ni);ot(this,ri);ot(this,Ce);ot(this,dt);ot(this,In);this.editor=t,this.lastContent={html:"",markdown:""}}updateAndRender(){let t=L(this,xe,Dn).call(this);this.editor.config.inputEl.value=t;let e=this.editor.markdown.render(t);window.$events.emit("editor-html-change",""),window.$events.emit("editor-markdown-change",""),this.lastContent.html=e,this.lastContent.markdown=t,this.editor.display.patchWithHtml(e)}getContent(){return this.lastContent}showImageInsert(){window.$components.first("image-manager").show(e=>{let n=e.thumbs?.display||e.url,o=`[![${L(this,Wt,ye).call(this)||e.name}](${n})](${e.url})`;L(this,Pt,ie).call(this,o,o.length)},"gallery")}insertImage(){let t=`![${L(this,Wt,ye).call(this)}](http://)`;L(this,Pt,ie).call(this,t,t.length-1)}insertLink(){let t=L(this,Wt,ye).call(this),e=`[${t}]()`,n=t===""?-3:-1;L(this,Pt,ie).call(this,e,e.length+n)}showImageManager(){let t=L(this,rt,ht).call(this);window.$components.first("image-manager").show(n=>{L(this,ii,zo).call(this,n,t)},"drawio")}showLinkSelector(){let t=L(this,rt,ht).call(this),e=window.$components.first("entity-selector-popup"),n=L(this,Wt,ye).call(this,t);e.show(r=>{let s=`[${n||r.name}](${r.link})`;L(this,Pt,ie).call(this,s,s.length,t)},{initialValue:n,searchEndpoint:"/search/entity-selector",entityTypes:"page,book,chapter,bookshelf",entityPermission:"view"})}startDrawing(){let t=this.editor.config.drawioUrl;if(!t)return;let e=L(this,rt,ht).call(this);ei(t,()=>Promise.resolve(""),async n=>{let r={image:n,uploaded_to:Number(this.editor.config.pageId)};try{let o=await window.$http.post("/images/drawio",r);L(this,ii,zo).call(this,o.data,e),ee()}catch(o){throw this.handleDrawingUploadError(o),new Error(`Failed to save image with error: ${o}`)}})}editDrawing(t){let{drawioUrl:e}=this.editor.config;if(!e)return;let n=L(this,rt,ht).call(this),r=t.getAttribute("drawio-diagram");ei(e,()=>An(r),async o=>{let s={image:o,uploaded_to:Number(this.editor.config.pageId)};try{let a=await window.$http.post("/images/drawio",s),l=`
    `,c=L(this,xe,Dn).call(this).split(` `).map(u=>u.indexOf(`drawio-diagram="${r}"`)!==-1?l:u).join(` -`);L(this,ke,Di).call(this,c,i),ee()}catch(a){throw this.handleDrawingUploadError(a),new Error(`Failed to save image with error: ${a}`)}})}handleDrawingUploadError(t){t.status===413?window.$events.emit("error",this.editor.config.text.serverUploadLimit):window.$events.emit("error",this.editor.config.text.imageUploadError),console.error(t)}fullScreen(){let{container:t}=this.editor.config,e=t.classList.contains("fullscreen");t.classList.toggle("fullscreen",!e),document.body.classList.toggle("markdown-fullscreen",!e)}scrollToText(t){if(!t)return;let e=this.editor.cm.state.doc,i=1,r=-1;for(let s of e.iterLines()){if(s.includes(t)){r=i;break}i+=1}if(r===-1)return;let o=e.line(r);L(this,$i,eu).call(this,o.from,o.to,!0),this.focus()}focus(){this.editor.cm.hasFocus||this.editor.cm.focus()}insertContent(t){L(this,Pt,ne).call(this,t,t.length)}prependContent(t){t=L(this,rn,zo).call(this,t);let i=L(this,rt,ht).call(this).from+t.length+1;L(this,dt,vt).call(this,0,0,`${t} -`,i),this.focus()}appendContent(t){t=L(this,rn,zo).call(this,t),L(this,dt,vt).call(this,this.editor.cm.state.doc.length,` -${t}`),this.focus()}replaceContent(t){L(this,ke,Di).call(this,t)}replaceLineStart(t){let e=L(this,rt,ht).call(this),i=this.editor.cm.state.doc.lineAt(e.from),r=i.text,o=r.split(" ")[0];if(o===t){let c=r.replace(`${t} `,""),u=e.from+(c.length-r.length);L(this,dt,vt).call(this,i.from,i.to,c,u);return}let s=r;/^[#>`]/.test(o)?s=r.replace(o,t).trim():t!==""&&(s=`${t} ${r}`);let l=e.from+(s.length-r.length);L(this,dt,vt).call(this,i.from,i.to,s,l)}wrapSelection(t,e){let i=L(this,rt,ht).call(this),r=L(this,Wt,ye).call(this,i);if(!r){L(this,Ce,Li).call(this,t,e);return}let o=r,s;r.startsWith(t)&&r.endsWith(e)?(o=r.slice(t.length,r.length-e.length),s=i.extend(i.from,i.to-(t.length+e.length))):(o=`${t}${r}${e}`,s=i.extend(i.from,i.to+(t.length+e.length))),L(this,dt,vt).call(this,i.from,i.to,o,s.anchor,s.head)}replaceLineStartForOrderedList(){let t=L(this,rt,ht).call(this),e=this.editor.cm.state.doc.lineAt(t.from),r=this.editor.cm.state.doc.line(e.number-1).text.match(/^(\s*)(\d)([).])\s/)||[],o=(Number(r[2])||0)+1,s=r[1]||"",a=r[3]||".",l=`${s}${o}${a}`;return this.replaceLineStart(l)}cycleCalloutTypeAtSelection(){let t=L(this,rt,ht).call(this),e=this.editor.cm.state.doc.lineAt(t.from),i=["info","success","warning","danger"],r=i.join("|"),s=new RegExp(`class="((${r})\\s+callout|callout\\s+(${r}))"`,"i").exec(e.text),a=(s?s[2]||s[3]:"").toLowerCase();if(a===i[i.length-1])L(this,Ce,Li).call(this,`

    `,"

    ");else if(a==="")L(this,Ce,Li).call(this,'

    ',"

    ");else{let l=i.indexOf(a)+1,c=i[l],u=e.text.replace(s[0],s[0].replace(a,c)),h=u.length-e.text.length;L(this,dt,vt).call(this,e.from,e.to,u,t.anchor+h,t.head+h)}}syncDisplayPosition(t){let e=t.target;if(Math.abs(e.scrollHeight-e.clientHeight-e.scrollTop)<1){this.editor.display.scrollToIndex(-1);return}let r=this.editor.cm.lineBlockAtHeight(e.scrollTop),o=this.editor.cm.state.sliceDoc(0,r.from),l=new DOMParser().parseFromString(this.editor.markdown.render(o),"text/html").documentElement.querySelectorAll("body > *");this.editor.display.scrollToIndex(l.length)}async insertTemplate(t,e,i){let r=this.editor.cm.posAtCoords({x:e,y:i},!1),{data:o}=await window.$http.get(`/templates/${t}`),s=o.markdown||o.html;L(this,dt,vt).call(this,r,r,s,r)}insertClipboardImages(t,e,i){let r=this.editor.cm.posAtCoords({x:e,y:i},!1);for(let o of t)this.uploadImage(o,r)}async uploadImage(t,e=null){if(t===null||t.type.indexOf("image")!==0)return;let i="png";if(e===null&&(e=L(this,rt,ht).call(this).from),t.name){let c=t.name.match(/\.(.+)$/);c.length>1&&(i=c[1])}let r=`image-${Math.random().toString(16).slice(2)}`,s=`![](${window.baseUrl(`/loading.gif#upload${r}`)})`;L(this,dt,vt).call(this,e,e,s,e);let a=`image-${Date.now()}.${i}`,l=new FormData;l.append("file",t,a),l.append("uploaded_to",this.editor.config.pageId);try{let{data:c}=await window.$http.post("/images/gallery",l),u=`[![](${c.thumbs.display})](${c.url})`;L(this,on,Ho).call(this,s,u)}catch(c){window.$events.error(c?.data?.message||this.editor.config.text.imageUploadError),L(this,on,Ho).call(this,s,""),console.error(c)}}};nn=new WeakSet,No=function(t,e){let i=`
    `;L(this,Pt,ne).call(this,i,i.length,e)},xe=new WeakSet,Ai=function(){return this.editor.cm.state.doc.toString()},ke=new WeakSet,Di=function(t,e=null){e=e||L(this,rt,ht).call(this);let i=this.editor.cm.state.toText(t),r=Math.min(e.from,i.length);L(this,dt,vt).call(this,0,this.editor.cm.state.doc.length,t,r),this.focus()},Pt=new WeakSet,ne=function(t,e=0,i=null){i=i||this.editor.cm.state.selection.main;let r=i.from+e;L(this,dt,vt).call(this,i.from,i.to,t,r),this.focus()},Wt=new WeakSet,ye=function(t=null){return t=t||L(this,rt,ht).call(this),this.editor.cm.state.sliceDoc(t.from,t.to)},rt=new WeakSet,ht=function(){return this.editor.cm.state.selection.main},rn=new WeakSet,zo=function(t){return t.replace(/\r\n|\r/g,` -`)},on=new WeakSet,Ho=function(t,e){let i=L(this,xe,Ai).call(this).replace(t,e);L(this,ke,Di).call(this,i)},Ce=new WeakSet,Li=function(t,e){let i=L(this,rt,ht).call(this),r=this.editor.cm.state.doc.lineAt(i.from),o=r.text,s,a=0;o.startsWith(t)&&o.endsWith(e)?(s=o.slice(t.length,o.length-e.length),a=-t.length):(s=`${t}${o}${e}`,a=t.length),L(this,dt,vt).call(this,r.from,r.to,s,i.from+a)},dt=new WeakSet,vt=function(t,e=null,i=null,r=null,o=null){let s={changes:{from:t,to:e,insert:i}};r&&(s.selection={anchor:r},o&&(s.selection.head=o)),this.editor.cm.dispatch(s)},$i=new WeakSet,eu=function(t,e,i=!1){this.editor.cm.dispatch({selection:{anchor:t,head:e},scrollIntoView:i})};var Ii=class{constructor(t){this.settingMap={scrollSync:!0,showPreview:!0,editorWidth:50},this.changeListeners={},this.loadFromLocalStorage(),this.applyToInputs(t),this.listenToInputChanges(t)}applyToInputs(t){for(let e of t){let i=e.getAttribute("name").replace("md-","");e.checked=this.settingMap[i]}}listenToInputChanges(t){for(let e of t)e.addEventListener("change",()=>{let i=e.getAttribute("name").replace("md-","");this.set(i,e.checked)})}loadFromLocalStorage(){let t=window.localStorage.getItem("md-editor-settings");if(!t)return;let e=JSON.parse(t);for(let[i,r]of Object.entries(e))r!==null&&this.settingMap[i]!==void 0&&(this.settingMap[i]=r)}set(t,e){this.settingMap[t]=e,window.localStorage.setItem("md-editor-settings",JSON.stringify(this.settingMap));for(let i of this.changeListeners[t]||[])i(e)}get(t){return this.settingMap[t]||null}onChange(t,e){let i=this.changeListeners[t]||[];i.push(e),this.changeListeners[t]=i}};function Mi({html:n,markdown:t}){return t||n}function nu(n){window.$events.listen("editor::replace",t=>{let e=Mi(t);n.actions.replaceContent(e)}),window.$events.listen("editor::append",t=>{let e=Mi(t);n.actions.appendContent(e)}),window.$events.listen("editor::prepend",t=>{let e=Mi(t);n.actions.prependContent(e)}),window.$events.listen("editor::insert",t=>{let e=Mi(t);n.actions.insertContent(e)}),window.$events.listen("editor::focus",()=>{n.actions.focus()})}function Wf(n){let t={};return t["Shift-Mod-i"]=()=>n.actions.insertImage(),t["Mod-s"]=()=>window.$events.emit("editor-save-draft"),t["Mod-Enter"]=()=>window.$events.emit("editor-save-page"),t["Shift-Mod-k"]=()=>n.actions.showLinkSelector(),t["Mod-k"]=()=>n.actions.insertLink(),t["Mod-1"]=()=>n.actions.replaceLineStart("##"),t["Mod-2"]=()=>n.actions.replaceLineStart("###"),t["Mod-3"]=()=>n.actions.replaceLineStart("####"),t["Mod-4"]=()=>n.actions.replaceLineStart("#####"),t["Mod-5"]=()=>n.actions.replaceLineStart(""),t["Mod-d"]=()=>n.actions.replaceLineStart(""),t["Mod-6"]=()=>n.actions.replaceLineStart(">"),t["Mod-q"]=()=>n.actions.replaceLineStart(">"),t["Mod-7"]=()=>n.actions.wrapSelection("\n```\n","\n```"),t["Mod-8"]=()=>n.actions.wrapSelection("`","`"),t["Shift-Mod-e"]=()=>n.actions.wrapSelection("`","`"),t["Mod-9"]=()=>n.actions.cycleCalloutTypeAtSelection(),t["Mod-p"]=()=>n.actions.replaceLineStart("-"),t["Mod-o"]=()=>n.actions.replaceLineStartForOrderedList(),t}function iu(n){let t=Wf(n),e=[],i=r=>()=>(r(),!0);for(let[r,o]of Object.entries(t))e.push({key:r,run:i(o),preventDefault:!0});return e}async function ru(n){let t=await window.importVersioned("code");function e(a){a.docChanged&&n.actions.updateAndRender()}let i=Nt(n.actions.syncDisplayPosition.bind(n.actions),100,!1),r=n.settings.get("scrollSync");n.settings.onChange("scrollSync",a=>{r=a});let o={scroll:a=>r&&i(a),drop:a=>{let l=a.dataTransfer.getData("bookstack/template");l&&(a.preventDefault(),n.actions.insertTemplate(l,a.pageX,a.pageY));let u=new Ft(a.dataTransfer).getImages();u.length>0&&(a.stopPropagation(),a.preventDefault(),n.actions.insertClipboardImages(u,a.pageX,a.pageY))},paste:a=>{let l=new Ft(a.clipboardData||a.dataTransfer);if(!l.hasItems()||l.containsTabularData())return;let c=l.getImages();for(let u of c)n.actions.uploadImage(u)}},s=t.markdownEditor(n.config.inputEl,e,o,iu(n));return window.mdEditorView=s,s}async function ou(n){let t={config:n,markdown:new yi,settings:new Ii(n.settingInputs)};return t.actions=new Ti(t),t.display=new Ci(t),t.cm=await ru(t),nu(t),t}var Fi=class extends g{setup(){this.elem=this.$el,this.pageId=this.$opts.pageId,this.textDirection=this.$opts.textDirection,this.imageUploadErrorText=this.$opts.imageUploadErrorText,this.serverUploadLimitText=this.$opts.serverUploadLimitText,this.display=this.$refs.display,this.input=this.$refs.input,this.divider=this.$refs.divider,this.displayWrap=this.$refs.displayWrap;let{settingContainer:t}=this.$refs,e=t.querySelectorAll('input[type="checkbox"]');this.editor=null,ou({pageId:this.pageId,container:this.elem,displayEl:this.display,inputEl:this.input,drawioUrl:this.getDrawioUrl(),settingInputs:Array.from(e),text:{serverUploadLimit:this.serverUploadLimitText,imageUploadError:this.imageUploadErrorText}}).then(i=>{this.editor=i,this.setupListeners(),this.emitEditorEvents(),this.scrollToTextIfNeeded(),this.editor.actions.updateAndRender()})}emitEditorEvents(){window.$events.emitPublic(this.elem,"editor-markdown::setup",{markdownIt:this.editor.markdown.getRenderer(),displayEl:this.display,cmEditorView:this.editor.cm})}setupListeners(){this.elem.addEventListener("click",t=>{let e=t.target.closest("button[data-action]");if(e===null)return;let i=e.getAttribute("data-action");if(i==="insertImage"&&this.editor.actions.showImageInsert(),i==="insertLink"&&this.editor.actions.showLinkSelector(),i==="insertDrawing"&&(t.ctrlKey||t.metaKey)){this.editor.actions.showImageManager();return}i==="insertDrawing"&&this.editor.actions.startDrawing(),i==="fullscreen"&&this.editor.actions.fullScreen()}),this.elem.addEventListener("click",t=>{let e=t.target.closest(".editor-toolbar-label");if(!e)return;let i=this.elem.querySelectorAll(".markdown-editor-wrap");for(let r of i)r.classList.remove("active");e.closest(".markdown-editor-wrap").classList.add("active")}),this.handleDividerDrag()}handleDividerDrag(){this.divider.addEventListener("pointerdown",()=>{let e=this.elem.getBoundingClientRect(),i=o=>{let s=o.pageX-e.left,a=Math.min(Math.max(20,Math.floor(s/e.width*100)),80);this.displayWrap.style.flexBasis=`${100-a}%`,this.editor.settings.set("editorWidth",a)},r=()=>{window.removeEventListener("pointermove",i),window.removeEventListener("pointerup",r),this.display.style.pointerEvents=null,document.body.style.userSelect=null};this.display.style.pointerEvents="none",document.body.style.userSelect="none",window.addEventListener("pointermove",i),window.addEventListener("pointerup",r)});let t=this.editor.settings.get("editorWidth");t&&(this.displayWrap.style.flexBasis=`${100-t}%`)}scrollToTextIfNeeded(){let e=new URL(window.location).searchParams.get("content-text");e&&this.editor.actions.scrollToText(e)}getDrawioUrl(){let t=document.querySelector("[drawio-url]");return t&&t.getAttribute("drawio-url")||""}getContent(){return this.editor.actions.getContent()}};var qi=class extends g{setup(){this.container=this.$el,this.inputContainer=this.$refs.inputContainer,this.inviteOption=this.container.querySelector("input[name=send_invite]"),this.inviteOption&&(this.inviteOption.addEventListener("change",this.inviteOptionChange.bind(this)),this.inviteOptionChange())}inviteOptionChange(){let t=this.inviteOption.value==="true",e=this.container.querySelectorAll("input[type=password]");for(let i of e)i.disabled=t;this.inputContainer.style.display=t?"none":"block"}};var Bi=class extends g{setup(){this.container=this.$el,this.type=this.$opts.type,this.textElem=this.container.querySelector("span"),this.autoHide=this.$opts.autoHide==="true",this.initialShow=this.$opts.show==="true",this.container.style.display="grid",window.$events.listen(this.type,t=>{this.show(t)}),this.container.addEventListener("click",this.hide.bind(this)),this.initialShow&&setTimeout(()=>this.show(this.textElem.textContent),100),this.hideCleanup=this.hideCleanup.bind(this)}show(t=""){if(this.container.removeEventListener("transitionend",this.hideCleanup),this.textElem.textContent=t,this.container.style.display="grid",setTimeout(()=>{this.container.classList.add("showing")},1),this.autoHide){let e=t.split(" ").length,i=Math.max(2e3,1e3+250*e);setTimeout(this.hide.bind(this),i)}}hide(){this.container.classList.remove("showing"),this.container.addEventListener("transitionend",this.hideCleanup)}hideCleanup(){this.container.style.display="none",this.container.removeEventListener("transitionend",this.hideCleanup)}};var Pi=class extends g{setup(){this.removeButton=this.$refs.remove,this.showButton=this.$refs.show,this.input=this.$refs.input,this.setupListeners()}setupListeners(){R(this.removeButton,()=>{this.input.value="",this.input.classList.add("hidden"),this.removeButton.classList.add("hidden"),this.showButton.classList.remove("hidden")}),R(this.showButton,()=>{this.input.classList.remove("hidden"),this.removeButton.classList.remove("hidden"),this.showButton.classList.add("hidden")})}};function su(n){for(let t=1;t<5;t++)n.shortcuts.add(`meta+${t}`,"",["FormatBlock",!1,`h${t+1}`]);n.shortcuts.add("meta+5","",["FormatBlock",!1,"p"]),n.shortcuts.add("meta+d","",["FormatBlock",!1,"p"]),n.shortcuts.add("meta+6","",["FormatBlock",!1,"blockquote"]),n.shortcuts.add("meta+q","",["FormatBlock",!1,"blockquote"]),n.shortcuts.add("meta+7","",["codeeditor",!1,"pre"]),n.shortcuts.add("meta+e","",["codeeditor",!1,"pre"]),n.shortcuts.add("meta+8","",["FormatBlock",!1,"code"]),n.shortcuts.add("meta+shift+E","",["FormatBlock",!1,"code"]),n.shortcuts.add("meta+o","","InsertOrderedList"),n.shortcuts.add("meta+p","","InsertUnorderedList"),n.shortcuts.add("meta+S","",()=>{window.$events.emit("editor-save-draft")}),n.shortcuts.add("meta+13","",()=>{window.$events.emit("editor-save-page")}),n.shortcuts.add("meta+9","",()=>{let t=n.selection.getNode(),e=t?t.closest(".callout"):null,i=["info","success","warning","danger"],o=(i.findIndex(a=>e&&e.classList.contains(a))+1)%i.length,s=i[o];n.formatter.apply(`callout${s}`)}),n.shortcuts.add("meta+shift+K","",()=>{let t=window.$components.first("entity-selector-popup"),e=n.selection.getContent({format:"text"}).trim();t.show(i=>{n.selection.isCollapsed()?n.insertContent(n.dom.createHTML("a",{href:i.link},n.dom.encode(i.name))):n.formatter.apply("link",{href:i.link}),n.selection.collapse(!1),n.focus()},{initialValue:e,searchEndpoint:"/search/entity-selector",entityTypes:"page,book,chapter,bookshelf",entityPermission:"view"})})}function au(n){window.$events.listen("editor::replace",({html:t})=>{n.setContent(t)}),window.$events.listen("editor::append",({html:t})=>{let e=n.getContent()+t;n.setContent(e)}),window.$events.listen("editor::prepend",({html:t})=>{let e=t+n.getContent();n.setContent(e)}),window.$events.listen("editor::insert",({html:t})=>{n.insertContent(t)}),window.$events.listen("editor::focus",()=>{n.initialized&&n.focus()})}function Gf(n,t){let e=n.dom.get(encodeURIComponent(t).replace(/!/g,"%21"));e&&(e.scrollIntoView(),n.selection.select(e,!0),n.selection.collapse(!1),n.focus())}function lu(n){let e=new URL(window.location).searchParams.get("content-id");e&&Gf(n,e)}var ie,Oi;function Kf(n){return n&&!!(n.textContent||n.innerText)}async function Zf(n,t){if(n===null||n.type.indexOf("image")!==0)throw new Error("Not an image file");let e=n.name||`image-${Date.now()}.png`,i=new FormData;return i.append("file",n,e),i.append("uploaded_to",t),(await window.$http.post(window.baseUrl("/images/gallery"),i)).data}function cu(n,t,e){let i=new Ft(e.clipboardData||e.dataTransfer);if(!i.hasItems()||i.containsTabularData())return;let r=i.getImages();for(let o of r){let s=`image-${Math.random().toString(16).slice(2)}`,a=window.baseUrl("/loading.gif");e.preventDefault(),setTimeout(()=>{n.insertContent(`

    `),Zf(o,t.pageId).then(l=>{let c=l.name.replace(/"/g,""),u=`${c}`,h=n.dom.create("a",{target:"_blank",href:l.url},u);n.dom.replace(h,s)}).catch(l=>{n.dom.remove(s),window.$events.error(l?.data?.message||t.translations.imageUploadErrorText),console.error(l)})},10)}}function Xf(n){let t=n.selection.getNode();t.nodeName==="IMG"&&(ie=n.dom.getParent(t,".mceTemp"),!ie&&t.parentNode.nodeName==="A"&&!Kf(t.parentNode)&&(ie=t.parentNode)),t.hasAttribute("contenteditable")&&t.getAttribute("contenteditable")==="false"&&(Oi=t)}function Yf(n,t,e){let{dom:i}=n,r=window.tinymce.dom.RangeUtils.getCaretRangeFromPoint(e.clientX,e.clientY,n.getDoc()),o=e.dataTransfer&&e.dataTransfer.getData("bookstack/template");o&&(e.preventDefault(),window.$http.get(`/templates/${o}`).then(s=>{n.selection.setRng(r),n.undoManager.transact(()=>{n.execCommand("mceInsertContent",!1,s.data.html)})})),i.getParent(r.startContainer,".mceTemp")?e.preventDefault():ie&&(e.preventDefault(),n.undoManager.transact(()=>{n.selection.setRng(r),n.selection.setNode(ie),i.remove(ie)})),!e.isDefaultPrevented()&&Oi&&(e.preventDefault(),n.undoManager.transact(()=>{let s=n.selection.getNode(),a=n.selection.getRng(),l=s.closest("body > *");a.startOffset>a.startContainer.length/2?l.after(Oi):l.before(Oi)})),e.isDefaultPrevented()||cu(n,t,e),ie=null}function uu(n,t){n.on("dragstart",()=>Xf(n)),n.on("drop",e=>Yf(n,t,e)),n.on("paste",e=>cu(n,t,e))}function hu(n){return["undo redo","styles","bold italic underline forecolor backcolor formatoverflow","alignleft aligncenter alignright alignjustify","bullist numlist listoverflow",n.textDirection==="rtl"?"ltr rtl":"","link customtable imagemanager-insert insertoverflow","code about fullscreen"].filter(i=>!!i).join(" | ")}function Jf(n){n.ui.registry.addGroupToolbarButton("formatoverflow",{icon:"more-drawer",tooltip:"More",items:"strikethrough superscript subscript inlinecode removeformat"}),n.ui.registry.addGroupToolbarButton("listoverflow",{icon:"more-drawer",tooltip:"More",items:"tasklist outdent indent"}),n.ui.registry.addGroupToolbarButton("insertoverflow",{icon:"more-drawer",tooltip:"More",items:"customhr codeeditor drawio media details"})}function Qf(n){n.ui.registry.addContextToolbar("linkcontexttoolbar",{predicate(t){return t.closest("a")!==null},position:"node",scope:"node",items:"link unlink openlink"})}function tm(n){n.ui.registry.addContextToolbar("imagecontexttoolbar",{predicate(t){return t.closest("img")!==null},position:"node",scope:"node",items:"image"})}function du(n){Jf(n),Qf(n),tm(n)}var em={"table-delete-column":'',"table-delete-row":'',"table-insert-column-after":'',"table-insert-column-before":'',"table-insert-row-above":'',"table-insert-row-after":'',table:'',"table-delete-table":''};function pu(n){for(let[t,e]of Object.entries(em))n.ui.registry.addIcon(t,e)}function nm(n){n.serializer.addNodeFilter("br",t=>{for(let e of t)if(e.parent&&e.parent.name==="code"){let i=window.tinymce.html.Node.create("#text");i.value=` -`,e.replace(i)}})}function im(n){n.parser.addNodeFilter("div",t=>{for(let e of t){let i=e.attr("id")||"",r=e.attr("class")||"";(i==="pointer"||r.includes("pointer"))&&e.remove()}})}function fu(n){nm(n),im(n)}function mu(n){return n.tagName.toLowerCase()==="code-block"}function bu(n,t,e,i){let r=window.$components.first("code-editor"),o=n.selection.getBookmark();r.open(t,e,(s,a)=>{i(s,a),n.focus(),n.selection.moveToBookmark(o)},()=>{n.focus(),n.selection.moveToBookmark(o)})}function gu(n,t){bu(n,t.getContent(),t.getLanguage(),(e,i)=>{t.setContent(e,i)})}function rm(n){let t=n.getDoc(),e=t.defaultView;class i extends e.HTMLElement{constructor(){super();at(this,"editor",null);this.attachShadow({mode:"open"});let s=document.head.querySelectorAll('link[rel="stylesheet"]:not([media="print"]),style'),a=Array.from(s).map(c=>c.cloneNode(!0)),l=document.createElement("div");l.style.pointerEvents="none",l.contentEditable="false",l.classList.add("CodeMirrorContainer"),l.classList.toggle("dark-mode",document.documentElement.classList.contains("dark-mode")),this.shadowRoot.append(...a,l)}getLanguage(){let s=c=>(c.split(" ").filter(h=>h.startsWith("language-"))[0]||"").replace("language-",""),a=this.querySelector("code"),l=this.querySelector("pre");return s(l.className)||a&&s(a.className)||""}setContent(s,a){this.editor&&(this.editor.setContent(s),this.editor.setMode(a,s));let l=this.querySelector("pre");l||(l=t.createElement("pre"),this.append(l)),l.innerHTML="";let c=t.createElement("code");l.append(c),c.innerText=s,c.className=`language-${a}`}getContent(){let s=this.querySelector("code")||this.querySelector("pre"),a=document.createElement("pre");a.innerHTML=s.innerHTML.replace(/\ufeff/g,"");let l=a.querySelectorAll("br");for(let c of l)c.replaceWith(` +`);L(this,ke,Ln).call(this,c,n),ee()}catch(a){throw this.handleDrawingUploadError(a),new Error(`Failed to save image with error: ${a}`)}})}handleDrawingUploadError(t){t.status===413?window.$events.emit("error",this.editor.config.text.serverUploadLimit):window.$events.emit("error",this.editor.config.text.imageUploadError),console.error(t)}fullScreen(){let{container:t}=this.editor.config,e=t.classList.contains("fullscreen");t.classList.toggle("fullscreen",!e),document.body.classList.toggle("markdown-fullscreen",!e)}scrollToText(t){if(!t)return;let e=this.editor.cm.state.doc,n=1,r=-1;for(let s of e.iterLines()){if(s.includes(t)){r=n;break}n+=1}if(r===-1)return;let o=e.line(r);L(this,In,eu).call(this,o.from,o.to,!0),this.focus()}focus(){this.editor.cm.hasFocus||this.editor.cm.focus()}insertContent(t){L(this,Pt,ie).call(this,t,t.length)}prependContent(t){t=L(this,ni,Ho).call(this,t);let n=L(this,rt,ht).call(this).from+t.length+1;L(this,dt,wt).call(this,0,0,`${t} +`,n),this.focus()}appendContent(t){t=L(this,ni,Ho).call(this,t),L(this,dt,wt).call(this,this.editor.cm.state.doc.length,` +${t}`),this.focus()}replaceContent(t){L(this,ke,Ln).call(this,t)}replaceLineStart(t){let e=L(this,rt,ht).call(this),n=this.editor.cm.state.doc.lineAt(e.from),r=n.text,o=r.split(" ")[0];if(o===t){let c=r.replace(`${t} `,""),u=e.from+(c.length-r.length);L(this,dt,wt).call(this,n.from,n.to,c,u);return}let s=r;/^[#>`]/.test(o)?s=r.replace(o,t).trim():t!==""&&(s=`${t} ${r}`);let l=e.from+(s.length-r.length);L(this,dt,wt).call(this,n.from,n.to,s,l)}wrapSelection(t,e){let n=L(this,rt,ht).call(this),r=L(this,Wt,ye).call(this,n);if(!r){L(this,Ce,Tn).call(this,t,e);return}let o=r,s;r.startsWith(t)&&r.endsWith(e)?(o=r.slice(t.length,r.length-e.length),s=n.extend(n.from,n.to-(t.length+e.length))):(o=`${t}${r}${e}`,s=n.extend(n.from,n.to+(t.length+e.length))),L(this,dt,wt).call(this,n.from,n.to,o,s.anchor,s.head)}replaceLineStartForOrderedList(){let t=L(this,rt,ht).call(this),e=this.editor.cm.state.doc.lineAt(t.from),r=this.editor.cm.state.doc.line(e.number-1).text.match(/^(\s*)(\d)([).])\s/)||[],o=(Number(r[2])||0)+1,s=r[1]||"",a=r[3]||".",l=`${s}${o}${a}`;return this.replaceLineStart(l)}cycleCalloutTypeAtSelection(){let t=L(this,rt,ht).call(this),e=this.editor.cm.state.doc.lineAt(t.from),n=["info","success","warning","danger"],r=n.join("|"),s=new RegExp(`class="((${r})\\s+callout|callout\\s+(${r}))"`,"i").exec(e.text),a=(s?s[2]||s[3]:"").toLowerCase();if(a===n[n.length-1])L(this,Ce,Tn).call(this,`

    `,"

    ");else if(a==="")L(this,Ce,Tn).call(this,'

    ',"

    ");else{let l=n.indexOf(a)+1,c=n[l],u=e.text.replace(s[0],s[0].replace(a,c)),h=u.length-e.text.length;L(this,dt,wt).call(this,e.from,e.to,u,t.anchor+h,t.head+h)}}syncDisplayPosition(t){let e=t.target;if(Math.abs(e.scrollHeight-e.clientHeight-e.scrollTop)<1){this.editor.display.scrollToIndex(-1);return}let r=this.editor.cm.lineBlockAtHeight(e.scrollTop),o=this.editor.cm.state.sliceDoc(0,r.from),l=new DOMParser().parseFromString(this.editor.markdown.render(o),"text/html").documentElement.querySelectorAll("body > *");this.editor.display.scrollToIndex(l.length)}async insertTemplate(t,e,n){let r=this.editor.cm.posAtCoords({x:e,y:n},!1),{data:o}=await window.$http.get(`/templates/${t}`),s=o.markdown||o.html;L(this,dt,wt).call(this,r,r,s,r)}insertClipboardImages(t,e,n){let r=this.editor.cm.posAtCoords({x:e,y:n},!1);for(let o of t)this.uploadImage(o,r)}async uploadImage(t,e=null){if(t===null||t.type.indexOf("image")!==0)return;let n="png";if(e===null&&(e=L(this,rt,ht).call(this).from),t.name){let c=t.name.match(/\.(.+)$/);c.length>1&&(n=c[1])}let r=`image-${Math.random().toString(16).slice(2)}`,s=`![](${window.baseUrl(`/loading.gif#upload${r}`)})`;L(this,dt,wt).call(this,e,e,s,e);let a=`image-${Date.now()}.${n}`,l=new FormData;l.append("file",t,a),l.append("uploaded_to",this.editor.config.pageId);try{let{data:c}=await window.$http.post("/images/gallery",l),u=`[![](${c.thumbs.display})](${c.url})`;L(this,ri,Uo).call(this,s,u)}catch(c){window.$events.error(c?.data?.message||this.editor.config.text.imageUploadError),L(this,ri,Uo).call(this,s,""),console.error(c)}}};ii=new WeakSet,zo=function(t,e){let n=`
    `;L(this,Pt,ie).call(this,n,n.length,e)},xe=new WeakSet,Dn=function(){return this.editor.cm.state.doc.toString()},ke=new WeakSet,Ln=function(t,e=null){e=e||L(this,rt,ht).call(this);let n=this.editor.cm.state.toText(t),r=Math.min(e.from,n.length);L(this,dt,wt).call(this,0,this.editor.cm.state.doc.length,t,r),this.focus()},Pt=new WeakSet,ie=function(t,e=0,n=null){n=n||this.editor.cm.state.selection.main;let r=n.from+e;L(this,dt,wt).call(this,n.from,n.to,t,r),this.focus()},Wt=new WeakSet,ye=function(t=null){return t=t||L(this,rt,ht).call(this),this.editor.cm.state.sliceDoc(t.from,t.to)},rt=new WeakSet,ht=function(){return this.editor.cm.state.selection.main},ni=new WeakSet,Ho=function(t){return t.replace(/\r\n|\r/g,` +`)},ri=new WeakSet,Uo=function(t,e){let n=L(this,xe,Dn).call(this).replace(t,e);L(this,ke,Ln).call(this,n)},Ce=new WeakSet,Tn=function(t,e){let n=L(this,rt,ht).call(this),r=this.editor.cm.state.doc.lineAt(n.from),o=r.text,s,a=0;o.startsWith(t)&&o.endsWith(e)?(s=o.slice(t.length,o.length-e.length),a=-t.length):(s=`${t}${o}${e}`,a=t.length),L(this,dt,wt).call(this,r.from,r.to,s,n.from+a)},dt=new WeakSet,wt=function(t,e=null,n=null,r=null,o=null){let s={changes:{from:t,to:e,insert:n}};r&&(s.selection={anchor:r},o&&(s.selection.head=o)),this.editor.cm.dispatch(s)},In=new WeakSet,eu=function(t,e,n=!1){this.editor.cm.dispatch({selection:{anchor:t,head:e},scrollIntoView:n})};var Mn=class{constructor(t){this.settingMap={scrollSync:!0,showPreview:!0,editorWidth:50},this.changeListeners={},this.loadFromLocalStorage(),this.applyToInputs(t),this.listenToInputChanges(t)}applyToInputs(t){for(let e of t){let n=e.getAttribute("name").replace("md-","");e.checked=this.settingMap[n]}}listenToInputChanges(t){for(let e of t)e.addEventListener("change",()=>{let n=e.getAttribute("name").replace("md-","");this.set(n,e.checked)})}loadFromLocalStorage(){let t=window.localStorage.getItem("md-editor-settings");if(!t)return;let e=JSON.parse(t);for(let[n,r]of Object.entries(e))r!==null&&this.settingMap[n]!==void 0&&(this.settingMap[n]=r)}set(t,e){this.settingMap[t]=e,window.localStorage.setItem("md-editor-settings",JSON.stringify(this.settingMap));for(let n of this.changeListeners[t]||[])n(e)}get(t){return this.settingMap[t]||null}onChange(t,e){let n=this.changeListeners[t]||[];n.push(e),this.changeListeners[t]=n}};function Fn({html:i,markdown:t}){return t||i}function iu(i){window.$events.listen("editor::replace",t=>{let e=Fn(t);i.actions.replaceContent(e)}),window.$events.listen("editor::append",t=>{let e=Fn(t);i.actions.appendContent(e)}),window.$events.listen("editor::prepend",t=>{let e=Fn(t);i.actions.prependContent(e)}),window.$events.listen("editor::insert",t=>{let e=Fn(t);i.actions.insertContent(e)}),window.$events.listen("editor::focus",()=>{i.actions.focus()})}function Gf(i){let t={};return t["Shift-Mod-i"]=()=>i.actions.insertImage(),t["Mod-s"]=()=>window.$events.emit("editor-save-draft"),t["Mod-Enter"]=()=>window.$events.emit("editor-save-page"),t["Shift-Mod-k"]=()=>i.actions.showLinkSelector(),t["Mod-k"]=()=>i.actions.insertLink(),t["Mod-1"]=()=>i.actions.replaceLineStart("##"),t["Mod-2"]=()=>i.actions.replaceLineStart("###"),t["Mod-3"]=()=>i.actions.replaceLineStart("####"),t["Mod-4"]=()=>i.actions.replaceLineStart("#####"),t["Mod-5"]=()=>i.actions.replaceLineStart(""),t["Mod-d"]=()=>i.actions.replaceLineStart(""),t["Mod-6"]=()=>i.actions.replaceLineStart(">"),t["Mod-q"]=()=>i.actions.replaceLineStart(">"),t["Mod-7"]=()=>i.actions.wrapSelection("\n```\n","\n```"),t["Mod-8"]=()=>i.actions.wrapSelection("`","`"),t["Shift-Mod-e"]=()=>i.actions.wrapSelection("`","`"),t["Mod-9"]=()=>i.actions.cycleCalloutTypeAtSelection(),t["Mod-p"]=()=>i.actions.replaceLineStart("-"),t["Mod-o"]=()=>i.actions.replaceLineStartForOrderedList(),t}function nu(i){let t=Gf(i),e=[],n=r=>()=>(r(),!0);for(let[r,o]of Object.entries(t))e.push({key:r,run:n(o),preventDefault:!0});return e}async function ru(i){let t=await window.importVersioned("code");function e(a){a.docChanged&&i.actions.updateAndRender()}let n=Nt(i.actions.syncDisplayPosition.bind(i.actions),100,!1),r=i.settings.get("scrollSync");i.settings.onChange("scrollSync",a=>{r=a});let o={scroll:a=>r&&n(a),drop:a=>{let l=a.dataTransfer.getData("bookstack/template");l&&(a.preventDefault(),i.actions.insertTemplate(l,a.pageX,a.pageY));let u=new Ft(a.dataTransfer).getImages();u.length>0&&(a.stopPropagation(),a.preventDefault(),i.actions.insertClipboardImages(u,a.pageX,a.pageY))},paste:a=>{let l=new Ft(a.clipboardData||a.dataTransfer);if(!l.hasItems()||l.containsTabularData())return;let c=l.getImages();for(let u of c)i.actions.uploadImage(u)}},s=t.markdownEditor(i.config.inputEl,e,o,nu(i));return window.mdEditorView=s,s}async function ou(i){let t={config:i,markdown:new yn,settings:new Mn(i.settingInputs)};return t.actions=new $n(t),t.display=new En(t),t.cm=await ru(t),iu(t),t}var qn=class extends g{setup(){this.elem=this.$el,this.pageId=this.$opts.pageId,this.textDirection=this.$opts.textDirection,this.imageUploadErrorText=this.$opts.imageUploadErrorText,this.serverUploadLimitText=this.$opts.serverUploadLimitText,this.display=this.$refs.display,this.input=this.$refs.input,this.divider=this.$refs.divider,this.displayWrap=this.$refs.displayWrap;let{settingContainer:t}=this.$refs,e=t.querySelectorAll('input[type="checkbox"]');this.editor=null,ou({pageId:this.pageId,container:this.elem,displayEl:this.display,inputEl:this.input,drawioUrl:this.getDrawioUrl(),settingInputs:Array.from(e),text:{serverUploadLimit:this.serverUploadLimitText,imageUploadError:this.imageUploadErrorText}}).then(n=>{this.editor=n,this.setupListeners(),this.emitEditorEvents(),this.scrollToTextIfNeeded(),this.editor.actions.updateAndRender()})}emitEditorEvents(){window.$events.emitPublic(this.elem,"editor-markdown::setup",{markdownIt:this.editor.markdown.getRenderer(),displayEl:this.display,cmEditorView:this.editor.cm})}setupListeners(){this.elem.addEventListener("click",t=>{let e=t.target.closest("button[data-action]");if(e===null)return;let n=e.getAttribute("data-action");if(n==="insertImage"&&this.editor.actions.showImageInsert(),n==="insertLink"&&this.editor.actions.showLinkSelector(),n==="insertDrawing"&&(t.ctrlKey||t.metaKey)){this.editor.actions.showImageManager();return}n==="insertDrawing"&&this.editor.actions.startDrawing(),n==="fullscreen"&&this.editor.actions.fullScreen()}),this.elem.addEventListener("click",t=>{let e=t.target.closest(".editor-toolbar-label");if(!e)return;let n=this.elem.querySelectorAll(".markdown-editor-wrap");for(let r of n)r.classList.remove("active");e.closest(".markdown-editor-wrap").classList.add("active")}),this.handleDividerDrag()}handleDividerDrag(){this.divider.addEventListener("pointerdown",()=>{let e=this.elem.getBoundingClientRect(),n=o=>{let s=o.pageX-e.left,a=Math.min(Math.max(20,Math.floor(s/e.width*100)),80);this.displayWrap.style.flexBasis=`${100-a}%`,this.editor.settings.set("editorWidth",a)},r=()=>{window.removeEventListener("pointermove",n),window.removeEventListener("pointerup",r),this.display.style.pointerEvents=null,document.body.style.userSelect=null};this.display.style.pointerEvents="none",document.body.style.userSelect="none",window.addEventListener("pointermove",n),window.addEventListener("pointerup",r)});let t=this.editor.settings.get("editorWidth");t&&(this.displayWrap.style.flexBasis=`${100-t}%`)}scrollToTextIfNeeded(){let e=new URL(window.location).searchParams.get("content-text");e&&this.editor.actions.scrollToText(e)}getDrawioUrl(){let t=document.querySelector("[drawio-url]");return t&&t.getAttribute("drawio-url")||""}getContent(){return this.editor.actions.getContent()}};var Bn=class extends g{setup(){this.container=this.$el,this.inputContainer=this.$refs.inputContainer,this.inviteOption=this.container.querySelector("input[name=send_invite]"),this.inviteOption&&(this.inviteOption.addEventListener("change",this.inviteOptionChange.bind(this)),this.inviteOptionChange())}inviteOptionChange(){let t=this.inviteOption.value==="true",e=this.container.querySelectorAll("input[type=password]");for(let n of e)n.disabled=t;this.inputContainer.style.display=t?"none":"block"}};var Pn=class extends g{setup(){this.container=this.$el,this.type=this.$opts.type,this.textElem=this.container.querySelector("span"),this.autoHide=this.$opts.autoHide==="true",this.initialShow=this.$opts.show==="true",this.container.style.display="grid",window.$events.listen(this.type,t=>{this.show(t)}),this.container.addEventListener("click",this.hide.bind(this)),this.initialShow&&setTimeout(()=>this.show(this.textElem.textContent),100),this.hideCleanup=this.hideCleanup.bind(this)}show(t=""){if(this.container.removeEventListener("transitionend",this.hideCleanup),this.textElem.textContent=t,this.container.style.display="grid",setTimeout(()=>{this.container.classList.add("showing")},1),this.autoHide){let e=t.split(" ").length,n=Math.max(2e3,1e3+250*e);setTimeout(this.hide.bind(this),n)}}hide(){this.container.classList.remove("showing"),this.container.addEventListener("transitionend",this.hideCleanup)}hideCleanup(){this.container.style.display="none",this.container.removeEventListener("transitionend",this.hideCleanup)}};var On=class extends g{setup(){this.removeButton=this.$refs.remove,this.showButton=this.$refs.show,this.input=this.$refs.input,this.setupListeners()}setupListeners(){R(this.removeButton,()=>{this.input.value="",this.input.classList.add("hidden"),this.removeButton.classList.add("hidden"),this.showButton.classList.remove("hidden")}),R(this.showButton,()=>{this.input.classList.remove("hidden"),this.removeButton.classList.remove("hidden"),this.showButton.classList.add("hidden")})}};function su(i){for(let t=1;t<5;t++)i.shortcuts.add(`meta+${t}`,"",["FormatBlock",!1,`h${t+1}`]);i.shortcuts.add("meta+5","",["FormatBlock",!1,"p"]),i.shortcuts.add("meta+d","",["FormatBlock",!1,"p"]),i.shortcuts.add("meta+6","",["FormatBlock",!1,"blockquote"]),i.shortcuts.add("meta+q","",["FormatBlock",!1,"blockquote"]),i.shortcuts.add("meta+7","",["codeeditor",!1,"pre"]),i.shortcuts.add("meta+e","",["codeeditor",!1,"pre"]),i.shortcuts.add("meta+8","",["FormatBlock",!1,"code"]),i.shortcuts.add("meta+shift+E","",["FormatBlock",!1,"code"]),i.shortcuts.add("meta+o","","InsertOrderedList"),i.shortcuts.add("meta+p","","InsertUnorderedList"),i.shortcuts.add("meta+S","",()=>{window.$events.emit("editor-save-draft")}),i.shortcuts.add("meta+13","",()=>{window.$events.emit("editor-save-page")}),i.shortcuts.add("meta+9","",()=>{let t=i.selection.getNode(),e=t?t.closest(".callout"):null,n=["info","success","warning","danger"],o=(n.findIndex(a=>e&&e.classList.contains(a))+1)%n.length,s=n[o];i.formatter.apply(`callout${s}`)}),i.shortcuts.add("meta+shift+K","",()=>{let t=window.$components.first("entity-selector-popup"),e=i.selection.getContent({format:"text"}).trim();t.show(n=>{i.selection.isCollapsed()?i.insertContent(i.dom.createHTML("a",{href:n.link},i.dom.encode(n.name))):i.formatter.apply("link",{href:n.link}),i.selection.collapse(!1),i.focus()},{initialValue:e,searchEndpoint:"/search/entity-selector",entityTypes:"page,book,chapter,bookshelf",entityPermission:"view"})})}function au(i){window.$events.listen("editor::replace",({html:t})=>{i.setContent(t)}),window.$events.listen("editor::append",({html:t})=>{let e=i.getContent()+t;i.setContent(e)}),window.$events.listen("editor::prepend",({html:t})=>{let e=t+i.getContent();i.setContent(e)}),window.$events.listen("editor::insert",({html:t})=>{i.insertContent(t)}),window.$events.listen("editor::focus",()=>{i.initialized&&i.focus()})}function Kf(i,t){let e=i.dom.get(encodeURIComponent(t).replace(/!/g,"%21"));e&&(e.scrollIntoView(),i.selection.select(e,!0),i.selection.collapse(!1),i.focus())}function lu(i){let e=new URL(window.location).searchParams.get("content-id");e&&Kf(i,e)}var ne,Rn;function Zf(i){return i&&!!(i.textContent||i.innerText)}async function Xf(i,t){if(i===null||i.type.indexOf("image")!==0)throw new Error("Not an image file");let e=i.name||`image-${Date.now()}.png`,n=new FormData;return n.append("file",i,e),n.append("uploaded_to",t),(await window.$http.post(window.baseUrl("/images/gallery"),n)).data}function cu(i,t,e){let n=new Ft(e.clipboardData||e.dataTransfer);if(!n.hasItems()||n.containsTabularData())return;let r=n.getImages();for(let o of r){let s=`image-${Math.random().toString(16).slice(2)}`,a=window.baseUrl("/loading.gif");e.preventDefault(),setTimeout(()=>{i.insertContent(`

    `),Xf(o,t.pageId).then(l=>{let c=l.name.replace(/"/g,""),u=`${c}`,h=i.dom.create("a",{target:"_blank",href:l.url},u);i.dom.replace(h,s)}).catch(l=>{i.dom.remove(s),window.$events.error(l?.data?.message||t.translations.imageUploadErrorText),console.error(l)})},10)}}function Yf(i){let t=i.selection.getNode();t.nodeName==="IMG"&&(ne=i.dom.getParent(t,".mceTemp"),!ne&&t.parentNode.nodeName==="A"&&!Zf(t.parentNode)&&(ne=t.parentNode)),t.hasAttribute("contenteditable")&&t.getAttribute("contenteditable")==="false"&&(Rn=t)}function Jf(i,t,e){let{dom:n}=i,r=window.tinymce.dom.RangeUtils.getCaretRangeFromPoint(e.clientX,e.clientY,i.getDoc()),o=e.dataTransfer&&e.dataTransfer.getData("bookstack/template");o&&(e.preventDefault(),window.$http.get(`/templates/${o}`).then(s=>{i.selection.setRng(r),i.undoManager.transact(()=>{i.execCommand("mceInsertContent",!1,s.data.html)})})),n.getParent(r.startContainer,".mceTemp")?e.preventDefault():ne&&(e.preventDefault(),i.undoManager.transact(()=>{i.selection.setRng(r),i.selection.setNode(ne),n.remove(ne)})),!e.isDefaultPrevented()&&Rn&&(e.preventDefault(),i.undoManager.transact(()=>{let s=i.selection.getNode(),a=i.selection.getRng(),l=s.closest("body > *");a.startOffset>a.startContainer.length/2?l.after(Rn):l.before(Rn)})),e.isDefaultPrevented()||cu(i,t,e),ne=null}function uu(i,t){i.on("dragstart",()=>Yf(i)),i.on("drop",e=>Jf(i,t,e)),i.on("paste",e=>cu(i,t,e))}function hu(i){return["undo redo","styles","bold italic underline forecolor backcolor formatoverflow","alignleft aligncenter alignright alignjustify","bullist numlist listoverflow",i.textDirection==="rtl"?"ltr rtl":"","link customtable imagemanager-insert insertoverflow","code about fullscreen"].filter(n=>!!n).join(" | ")}function Qf(i){i.ui.registry.addGroupToolbarButton("formatoverflow",{icon:"more-drawer",tooltip:"More",items:"strikethrough superscript subscript inlinecode removeformat"}),i.ui.registry.addGroupToolbarButton("listoverflow",{icon:"more-drawer",tooltip:"More",items:"tasklist outdent indent"}),i.ui.registry.addGroupToolbarButton("insertoverflow",{icon:"more-drawer",tooltip:"More",items:"customhr codeeditor drawio media details"})}function tm(i){i.ui.registry.addContextToolbar("linkcontexttoolbar",{predicate(t){return t.closest("a")!==null},position:"node",scope:"node",items:"link unlink openlink"})}function em(i){i.ui.registry.addContextToolbar("imagecontexttoolbar",{predicate(t){return t.closest("img")!==null},position:"node",scope:"node",items:"image"})}function du(i){Qf(i),tm(i),em(i)}var im={"table-delete-column":'',"table-delete-row":'',"table-insert-column-after":'',"table-insert-column-before":'',"table-insert-row-above":'',"table-insert-row-after":'',table:'',"table-delete-table":''};function pu(i){for(let[t,e]of Object.entries(im))i.ui.registry.addIcon(t,e)}function nm(i){i.serializer.addNodeFilter("br",t=>{for(let e of t)if(e.parent&&e.parent.name==="code"){let n=window.tinymce.html.Node.create("#text");n.value=` +`,e.replace(n)}})}function rm(i){i.parser.addNodeFilter("div",t=>{for(let e of t){let n=e.attr("id")||"",r=e.attr("class")||"";(n==="pointer"||r.includes("pointer"))&&e.remove()}})}function fu(i){nm(i),rm(i)}function mu(i){return i.tagName.toLowerCase()==="code-block"}function bu(i,t,e,n){let r=window.$components.first("code-editor"),o=i.selection.getBookmark();r.open(t,e,(s,a)=>{n(s,a),i.focus(),i.selection.moveToBookmark(o)},()=>{i.focus(),i.selection.moveToBookmark(o)})}function gu(i,t){bu(i,t.getContent(),t.getLanguage(),(e,n)=>{t.setContent(e,n)})}function om(i){let t=i.getDoc(),e=t.defaultView;class n extends e.HTMLElement{constructor(){super();at(this,"editor",null);this.attachShadow({mode:"open"});let s=document.head.querySelectorAll('link[rel="stylesheet"]:not([media="print"]),style'),a=Array.from(s).map(c=>c.cloneNode(!0)),l=document.createElement("div");l.style.pointerEvents="none",l.contentEditable="false",l.classList.add("CodeMirrorContainer"),l.classList.toggle("dark-mode",document.documentElement.classList.contains("dark-mode")),this.shadowRoot.append(...a,l)}getLanguage(){let s=c=>(c.split(" ").filter(h=>h.startsWith("language-"))[0]||"").replace("language-",""),a=this.querySelector("code"),l=this.querySelector("pre");return s(l.className)||a&&s(a.className)||""}setContent(s,a){this.editor&&(this.editor.setContent(s),this.editor.setMode(a,s));let l=this.querySelector("pre");l||(l=t.createElement("pre"),this.append(l)),l.innerHTML="";let c=t.createElement("code");l.append(c),c.innerText=s,c.className=`language-${a}`}getContent(){let s=this.querySelector("code")||this.querySelector("pre"),a=document.createElement("pre");a.innerHTML=s.innerHTML.replace(/\ufeff/g,"");let l=a.querySelectorAll("br");for(let c of l)c.replaceWith(` `);return a.textContent}connectedCallback(){let s=Date.now();if(this.editor)return;this.cleanChildContent();let a=this.getContent(),c=a.split(` -`).length*19.2+18+24;this.style.height=`${c}px`;let u=this.shadowRoot.querySelector(".CodeMirrorContainer"),h=d=>{this.editor=d.wysiwygView(u,this.shadowRoot,a,this.getLanguage()),setTimeout(()=>{this.style.height=null},12)};window.importVersioned("code").then(d=>{let f=Date.now()-s<20?20:0;setTimeout(()=>h(d),f)})}cleanChildContent(){let s=this.querySelector("pre");if(s)for(let a of s.childNodes)a.nodeName==="#text"&&a.textContent==="\uFEFF"&&a.remove()}}e.customElements.define("code-block",i)}function om(n){n.ui.registry.addIcon("codeblock",''),n.ui.registry.addButton("codeeditor",{tooltip:"Insert code block",icon:"codeblock",onAction(){n.execCommand("codeeditor")}}),n.ui.registry.addButton("editcodeeditor",{tooltip:"Edit code block",icon:"edit-block",onAction(){n.execCommand("codeeditor")}}),n.addCommand("codeeditor",()=>{let t=n.selection.getNode(),e=t.ownerDocument;if(mu(t))gu(n,t);else{let i=n.selection.getContent({format:"text"});bu(n,i,"",(r,o)=>{let s=e.createElement("pre"),a=e.createElement("code");a.classList.add(`language-${o}`),a.innerText=r,s.append(a),n.insertContent(s.outerHTML)})}}),n.on("dblclick",()=>{let t=n.selection.getNode();mu(t)&&gu(n,t)}),n.on("PreInit",()=>{n.parser.addNodeFilter("pre",t=>{for(let e of t){let i=window.tinymce.html.Node.create("code-block",{contenteditable:"false"}),r=e.attr("dir");r&&i.attr("dir",r);let o=e.getAll("span");for(let s of o)s.unwrap();e.attr("style",null),e.wrap(i)}}),n.parser.addNodeFilter("code-block",t=>{for(let e of t)e.attr("contenteditable","false")}),n.serializer.addNodeFilter("code-block",t=>{for(let e of t){let i=e.attr("dir");i&&e.firstChild?e.firstChild.attr("dir",i):e.firstChild&&e.firstChild.attr("dir",null),e.unwrap()}})}),n.ui.registry.addContextToolbar("codeeditor",{predicate(t){return t.nodeName.toLowerCase()==="code-block"},items:"editcodeeditor",position:"node",scope:"node"}),n.on("PreInit",()=>{rm(n)})}function vu(){return om}var pt=null,oe=null,re={};function Uo(n){return n.hasAttribute("drawio-diagram")}function sm(n,t=null){pt=n,oe=t,window.$components.first("image-manager").show(i=>{if(t){let r=t.querySelector("img");pt.undoManager.transact(()=>{pt.dom.setAttrib(r,"src",i.url),pt.dom.setAttrib(t,"drawio-diagram",i.id)})}else{let r=`
    `;pt.insertContent(r)}},"drawio")}async function am(n){let t=window.baseUrl("/loading.gif"),e=o=>{o.status===413?window.$events.emit("error",re.translations.serverUploadLimitText):window.$events.emit("error",re.translations.imageUploadErrorText),console.error(o)};if(oe){ee();let o=oe.querySelector("img");try{let s=await Ro(n,re.pageId);pt.undoManager.transact(()=>{pt.dom.setAttrib(o,"src",s.url),pt.dom.setAttrib(oe,"drawio-diagram",s.id)})}catch(s){throw e(s),new Error(`Failed to save image with error: ${s}`)}return}await rs(5);let i=`drawing-${Math.random().toString(16).slice(2)}`,r=`drawing-wrap-${Math.random().toString(16).slice(2)}`;pt.insertContent(`
    `),ee();try{let o=await Ro(n,re.pageId);pt.undoManager.transact(()=>{pt.dom.setAttrib(i,"src",o.url),pt.dom.setAttrib(r,"drawio-diagram",o.id)})}catch(o){throw pt.dom.remove(r),e(o),new Error(`Failed to save image with error: ${o}`)}}function lm(){if(!oe)return Promise.resolve("");let n=oe.getAttribute("drawio-diagram");return Si(n)}function wu(n,t=null){pt=n,oe=t,en(re.drawioUrl,lm,am)}function cm(n){n.addCommand("drawio",()=>{let t=n.selection.getNode();wu(n,Uo(t)?t:null)}),n.ui.registry.addIcon("diagram",``),n.ui.registry.addSplitButton("drawio",{tooltip:"Insert/edit drawing",icon:"diagram",onAction(){n.execCommand("drawio"),window.document.body.dispatchEvent(new Event("mousedown",{bubbles:!0}))},fetch(t){t([{type:"choiceitem",text:"Drawing manager",value:"drawing-manager"}])},onItemAction(t,e){if(e==="drawing-manager"){let i=n.selection.getNode();sm(n,Uo(i)?i:null)}}}),n.on("dblclick",()=>{let t=n.selection.getNode();Uo(t)&&wu(n,t)}),n.on("SetContent",()=>{let t=n.dom.select("body > div[drawio-diagram]");t.length&&n.undoManager.transact(()=>{for(let e of t)e.setAttribute("contenteditable","false")})})}function yu(n){return re=n,cm}function um(n){n.addCommand("InsertHorizontalRule",()=>{let t=document.createElement("hr"),e=n.selection.getNode(),{parentNode:i}=e;i.insertBefore(t,e)}),n.ui.registry.addButton("customhr",{icon:"horizontal-rule",tooltip:"Insert horizontal line",onAction(){n.execCommand("InsertHorizontalRule")}})}function xu(){return um}function hm(n){n.ui.registry.addButton("imagemanager-insert",{title:"Insert image",icon:"image",tooltip:"Insert image",onAction(){window.$components.first("image-manager").show(e=>{let i=e.thumbs?.display||e.url,r=``;r+=`${e.name}`,r+="",n.execCommand("mceInsertContent",!1,r)},"gallery")}})}function ku(){return hm}function dm(n){let t={title:"About the WYSIWYG Editor",url:window.baseUrl("/help/wysiwyg")};n.ui.registry.addButton("about",{icon:"help",tooltip:"About the editor",onAction(){window.tinymce.activeEditor.windowManager.openUrl(t)}})}function Cu(){return dm}var Eu=["p","h1","h2","h3","h4","h5","h6","div","blockquote","pre","code-block","details","ul","ol","table","hr"];function Ri(n){return n.selection.getNode().closest("details")}function pm(n,t){let e=Ri(n);e&&n.undoManager.transact(()=>{let i=e.querySelector("summary");i||(i=document.createElement("summary"),e.prepend(i)),i.textContent=t})}function fm(n){return{title:"Edit collapsible block",body:{type:"panel",items:[{type:"input",name:"summary",label:"Toggle label"}]},buttons:[{type:"cancel",text:"Cancel"},{type:"submit",text:"Save",primary:!0}],onSubmit(t){let{summary:e}=t.getData();pm(n,e),t.close()}}}function mm(n){let t=n.querySelector("summary");return t?t.textContent:""}function _u(n){let t=Ri(n);n.windowManager.open(fm(n)).setData({summary:mm(t)})}function gm(n){let t=n.selection.getNode().closest("details"),e=n.selection.getBookmark();if(t){let i=t.querySelectorAll("details > *:not(summary, doc-root), doc-root > *");n.undoManager.transact(()=>{for(let r of i)t.parentNode.insertBefore(r,t);t.remove()})}n.focus(),n.selection.moveToBookmark(e)}function jo(n){n.attr("contenteditable",null);let t=!1;for(let e of n.children())e.name==="doc-root"&&(e.unwrap(),t=!0);t&&jo(n)}function bm(n){jo(n),n.attr("contenteditable","false");let t=window.tinymce.html.Node.create("doc-root",{contenteditable:"true"}),e=null;for(let i of n.children()){if(i.name==="summary")continue;Eu.includes(i.name)?(t.append(i),e=null):(e||(e=window.tinymce.html.Node.create("p"),t.append(e)),e.append(i))}n.append(t)}function vm(n){n.parser.addNodeFilter("details",t=>{for(let e of t)bm(e)}),n.serializer.addNodeFilter("details",t=>{for(let e of t)jo(e),e.attr("open",null)}),n.serializer.addNodeFilter("doc-root",t=>{for(let e of t)e.unwrap()})}function wm(n){n.ui.registry.addIcon("details",''),n.ui.registry.addIcon("togglefold",''),n.ui.registry.addIcon("togglelabel",''),n.ui.registry.addButton("details",{icon:"details",tooltip:"Insert collapsible block",onAction(){n.execCommand("InsertDetailsBlock")}}),n.ui.registry.addButton("removedetails",{icon:"table-delete-table",tooltip:"Unwrap",onAction(){gm(n)}}),n.ui.registry.addButton("editdetials",{icon:"togglelabel",tooltip:"Edit label",onAction(){_u(n)}}),n.on("dblclick",t=>{!Ri(n)||t.target.closest("doc-root")||_u(n)}),n.ui.registry.addButton("toggledetails",{icon:"togglefold",tooltip:"Toggle open/closed",onAction(){Ri(n).toggleAttribute("open"),n.focus()}}),n.addCommand("InsertDetailsBlock",()=>{let t=n.selection.getContent({format:"html"}),e=document.createElement("details"),i=document.createElement("summary"),r=`details-${Date.now()}`;e.setAttribute("data-id",r),e.appendChild(i),t||(t="


    "),e.innerHTML+=t,n.insertContent(e.outerHTML),n.focus();let o=n.dom.select(`[data-id="${r}"]`)[0]||null;if(o){let s=o.querySelector("doc-root > *");s&&s.focus(),o.removeAttribute("data-id")}}),n.ui.registry.addContextToolbar("details",{predicate(t){return t.nodeName.toLowerCase()==="details"},items:"editdetials toggledetails removedetails",position:"node",scope:"node"}),n.on("PreInit",()=>{vm(n)})}function Su(){return wm}function ym(n){n.ui.registry.addIcon("tableclearformatting",'');let t={items:" | tablerowheader",predicate(i){let r=i.nodeName.toLowerCase()==="table",o=n.selection.getNode(),s=o.closest("table");return!r||!s?!1:s.querySelector("tr").contains(o)},position:"node",scope:"node"};n.ui.registry.addContextToolbar("customtabletoolbarfirstrow",t),n.addCommand("tableclearformatting",()=>{let i=n.dom.getParent(n.selection.getStart(),"table");if(!i)return;let r=["class","style","width","height"],o=[i,...i.querySelectorAll(r.map(s=>`[${s}]`).join(","))];for(let s of o)for(let a of r)s.removeAttribute(a)}),n.addCommand("tableclearsizes",()=>{let i=n.dom.getParent(n.selection.getStart(),"table");if(!i)return;let r=[i,...i.querySelectorAll("tr,td,th,tbody,thead,tfoot,th>*,td>*")];for(let o of r)o.removeAttribute("width"),o.removeAttribute("height"),o.style.height=null,o.style.width=null});let e=()=>{let i=n.ui.registry.getAll().buttons;n.ui.registry.addMenuButton("customtable",{...i.table,fetch:r=>r("inserttable | cell row column | advtablesort | tableprops tableclearformatting tableclearsizes deletetable")}),n.ui.registry.addMenuItem("tableclearformatting",{icon:"tableclearformatting",text:"Clear table formatting",onSetup:i.tableprops.onSetup,onAction(){n.execCommand("tableclearformatting")}}),n.ui.registry.addMenuItem("tableclearsizes",{icon:"resize",text:"Resize to contents",onSetup:i.tableprops.onSetup,onAction(){n.execCommand("tableclearsizes")}}),n.off("PreInit",e)};n.on("PreInit",e)}function Au(){return ym}function xm(n){let t=n.closest("li");return t&&t.parentNode.nodeName==="UL"&&t.classList.contains("task-list-item")}function km(n,t,e){let i=t.getBoundingClientRect();n.clientX<=i.right&&n.clientX>=i.left&&n.clientY>=i.top&&n.clientY<=i.bottom||e.undoManager.transact(()=>{t.hasAttribute("checked")?t.removeAttribute("checked"):t.setAttribute("checked","checked")})}function Cm(n){n.attr("class","task-list-item");for(let t of n.children())t.name==="input"&&(t.attr("checked")==="checked"&&n.attr("checked","checked"),t.remove())}function Em(n){let t=n.attr("checked")==="checked";n.attr("checked",null);let e={type:"checkbox",disabled:"disabled"};t&&(e.checked="checked");let i=window.tinymce.html.Node.create("input",e);i.shortEnded=!0,n.firstChild?n.insert(i,n.firstChild,!0):n.append(i)}function _m(n){n.ui.registry.addIcon("tasklist",''),n.ui.registry.addToggleButton("tasklist",{tooltip:"Task list",icon:"tasklist",active:!1,onAction(i){i.isActive()?n.execCommand("RemoveList"):n.execCommand("InsertUnorderedList",null,{"list-item-attributes":{class:"task-list-item"},"list-style-type":"tasklist"})},onSetup(i){n.on("NodeChange",r=>{let o=r.parents.find(a=>a.nodeName==="LI"),s=o&&o.classList.contains("task-list-item");i.setActive(!!s)})}});let t=n.ui.registry.getAll().buttons.bullist;t.onSetup=function(r){n.on("NodeChange",o=>{let s=o.parents.find(c=>c.nodeName==="LI"),a=s&&s.classList.contains("task-list-item"),l=s&&s.parentNode.nodeName==="UL";r.setActive(!!(l&&!a))})},t.onAction=function(){xm(n.selection.getNode())&&n.execCommand("InsertOrderedList",null,{"list-item-attributes":{class:null}}),n.execCommand("InsertUnorderedList",null,{"list-item-attributes":{class:null}})};let e=n.ui.registry.getAll().buttons.numlist;e.onAction=function(){n.execCommand("InsertOrderedList",null,{"list-item-attributes":{class:null}})},n.on("PreInit",()=>{n.parser.addNodeFilter("li",i=>{for(let r of i)r.attributes.map.class==="task-list-item"&&Cm(r)}),n.serializer.addNodeFilter("li",i=>{for(let r of i)r.attributes.map.class==="task-list-item"&&Em(r)})}),n.on("click",i=>{let r=i.target;r.nodeName==="LI"&&r.classList.contains("task-list-item")&&(km(i,r,n),i.preventDefault())})}function Du(){return _m}function Lu(n){function t(e){let i=e.querySelector("iframe, video");if(!i)return;let r=[...i.classList.values()].filter(s=>s.startsWith("align-")),o=[...e.classList.values()].filter(s=>s.startsWith("align-"));e.classList.remove(...o),e.classList.add(...r)}n.on("SetContent",()=>{let e=n.dom.select("span.mce-preview-object");for(let i of e)t(i)}),n.on("FormatApply",e=>{let i=e.format.startsWith("align");if(!e.node||!e.node.matches(".mce-preview-object"))return;let r=e.node.querySelector("iframe, video");if(i&&r){let o=(n.formatter.get(e.format)[0]?.classes||[])[0],s=!r.classList.contains(o),l=(e.node.getAttribute("data-mce-p-class")||"").split(" ").filter(u=>!u.startsWith("align-"));s&&l.push(o);let c=l.join(" ");e.node.setAttribute("data-mce-p-class",c),r.setAttribute("class",c),n.formatter.apply(e.format,{},r),t(e.node)}})}function Tu(n){let t=n.querySelectorAll('[dir],[style*="direction"],[style*="text-align"]');for(let e of t)e.removeAttribute("dir"),e.style.direction=null,e.style.textAlign=null;n.style.direction=null,n.style.textAlign=null}function $u(n){let t=[];n.on("TableSelectionChange",i=>{t=(i.cells||[]).map(r=>r.dom)}),n.on("TableSelectionClear",()=>{t=[]});let e=["class","style","width","height"];n.on("FormatRemove",()=>{for(let i of t)for(let r of e)i.removeAttribute(r)}),n.on("ExecCommand",i=>{let r=i.command;if(r!=="mceDirectionLTR"&&r!=="mceDirectionRTL")return;let o=r==="mceDirectionLTR"?"ltr":"rtl";for(let s of t)s.setAttribute("dir",o),Tu(s)})}function Iu(n){n.on("ExecCommand",t=>{let e=t.command;if(e!=="mceDirectionLTR"&&e!=="mceDirectionRTL")return;let i=n.selection.getSelectedBlocks();for(let r of i)Tu(r)})}var Sm=[{title:"Large Header",format:"h2",preview:"color: blue;"},{title:"Medium Header",format:"h3"},{title:"Small Header",format:"h4"},{title:"Tiny Header",format:"h5"},{title:"Paragraph",format:"p",exact:!0,classes:""},{title:"Blockquote",format:"blockquote"},{title:"Callouts",items:[{title:"Information",format:"calloutinfo"},{title:"Success",format:"calloutsuccess"},{title:"Warning",format:"calloutwarning"},{title:"Danger",format:"calloutdanger"}]}],Am={alignleft:{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img,iframe,video",classes:"align-left"},aligncenter:{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img,iframe,video",classes:"align-center"},alignright:{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img,iframe,video",classes:"align-right"},calloutsuccess:{block:"p",exact:!0,attributes:{class:"callout success"}},calloutinfo:{block:"p",exact:!0,attributes:{class:"callout info"}},calloutwarning:{block:"p",exact:!0,attributes:{class:"callout warning"}},calloutdanger:{block:"p",exact:!0,attributes:{class:"callout danger"}}},Dm=["#BFEDD2","","#FBEEB8","","#F8CAC6","","#ECCAFA","","#C2E0F4","","#2DC26B","","#F1C40F","","#E03E2D","","#B96AD9","","#3598DB","","#169179","","#E67E23","","#BA372A","","#843FA1","","#236FA1","","#ECF0F1","","#CED4D9","","#95A5A6","","#7E8C8D","","#34495E","","#000000","","#ffffff",""];function Mu(n,t,e){if(e.filetype==="file"){let i=window.$components.first("entity-selector-popup"),r=this.selection.getContent({format:"text"}).trim();i.show(o=>{n(o.link,{text:o.name,title:o.name})},{initialValue:r,searchEndpoint:"/search/entity-selector",entityTypes:"page,book,chapter,bookshelf",entityPermission:"view"})}e.filetype==="image"&&window.$components.first("image-manager").show(r=>{n(r.url,{alt:r.name})},"gallery")}function Lm(n){let t=["image","table","link","autolink","fullscreen","code","customhr","autosave","lists","codeeditor","media","imagemanager","about","details","tasklist","tableadditions",n.textDirection==="rtl"?"directionality":""];return window.tinymce.PluginManager.add("codeeditor",vu()),window.tinymce.PluginManager.add("customhr",xu()),window.tinymce.PluginManager.add("imagemanager",ku()),window.tinymce.PluginManager.add("about",Cu()),window.tinymce.PluginManager.add("details",Su()),window.tinymce.PluginManager.add("tasklist",Du()),window.tinymce.PluginManager.add("tableadditions",Au()),n.drawioUrl&&(window.tinymce.PluginManager.add("drawio",yu(n)),t.push("drawio")),t.filter(e=>!!e)}function Fu(n){let t=document.head.innerHTML.split(` -`),e=t.findIndex(s=>s.trim()===""),i=t.findIndex(s=>s.trim()==="");if(e===-1||i===-1)return;let r=t.slice(e+1,i).join(` -`),o=n.createElement("div");o.innerHTML=r,n.head.append(...o.children)}function Tm(n){return function(e){function i(){n.darkMode&&e.contentDocument.documentElement.classList.add("dark-mode"),window.$events.emit("editor-html-change","")}e.on("ExecCommand change input NodeChange ObjectResized",i),au(e),uu(e,n),e.on("init",()=>{i(),lu(e),window.editor=e,su(e)}),e.on("PreInit",()=>{fu(e)}),Lu(e),$u(e),Iu(e),window.$events.emitPublic(n.containerElement,"editor-tinymce::setup",{editor:e}),e.ui.registry.addButton("inlinecode",{tooltip:"Inline code",icon:"sourcecode",onAction(){e.execCommand("mceToggleFormat",!1,"code")}})}}function qu(n){return` +`).length*19.2+18+24;this.style.height=`${c}px`;let u=this.shadowRoot.querySelector(".CodeMirrorContainer"),h=d=>{this.editor=d.wysiwygView(u,this.shadowRoot,a,this.getLanguage()),setTimeout(()=>{this.style.height=null},12)};window.importVersioned("code").then(d=>{let f=Date.now()-s<20?20:0;setTimeout(()=>h(d),f)})}cleanChildContent(){let s=this.querySelector("pre");if(s)for(let a of s.childNodes)a.nodeName==="#text"&&a.textContent==="\uFEFF"&&a.remove()}}e.customElements.define("code-block",n)}function sm(i){i.ui.registry.addIcon("codeblock",''),i.ui.registry.addButton("codeeditor",{tooltip:"Insert code block",icon:"codeblock",onAction(){i.execCommand("codeeditor")}}),i.ui.registry.addButton("editcodeeditor",{tooltip:"Edit code block",icon:"edit-block",onAction(){i.execCommand("codeeditor")}}),i.addCommand("codeeditor",()=>{let t=i.selection.getNode(),e=t.ownerDocument;if(mu(t))gu(i,t);else{let n=i.selection.getContent({format:"text"});bu(i,n,"",(r,o)=>{let s=e.createElement("pre"),a=e.createElement("code");a.classList.add(`language-${o}`),a.innerText=r,s.append(a),i.insertContent(s.outerHTML)})}}),i.on("dblclick",()=>{let t=i.selection.getNode();mu(t)&&gu(i,t)}),i.on("PreInit",()=>{i.parser.addNodeFilter("pre",t=>{for(let e of t){let n=window.tinymce.html.Node.create("code-block",{contenteditable:"false"}),r=e.attr("dir");r&&n.attr("dir",r);let o=e.getAll("span");for(let s of o)s.unwrap();e.attr("style",null),e.wrap(n)}}),i.parser.addNodeFilter("code-block",t=>{for(let e of t)e.attr("contenteditable","false")}),i.serializer.addNodeFilter("code-block",t=>{for(let e of t){let n=e.attr("dir");n&&e.firstChild?e.firstChild.attr("dir",n):e.firstChild&&e.firstChild.attr("dir",null),e.unwrap()}})}),i.ui.registry.addContextToolbar("codeeditor",{predicate(t){return t.nodeName.toLowerCase()==="code-block"},items:"editcodeeditor",position:"node",scope:"node"}),i.on("PreInit",()=>{om(i)})}function vu(){return sm}var pt=null,oe=null,re={};function jo(i){return i.hasAttribute("drawio-diagram")}function am(i,t=null){pt=i,oe=t,window.$components.first("image-manager").show(n=>{if(t){let r=t.querySelector("img");pt.undoManager.transact(()=>{pt.dom.setAttrib(r,"src",n.url),pt.dom.setAttrib(t,"drawio-diagram",n.id)})}else{let r=`
    `;pt.insertContent(r)}},"drawio")}async function lm(i){let t=window.baseUrl("/loading.gif"),e=o=>{o.status===413?window.$events.emit("error",re.translations.serverUploadLimitText):window.$events.emit("error",re.translations.imageUploadErrorText),console.error(o)};if(oe){ee();let o=oe.querySelector("img");try{let s=await No(i,re.pageId);pt.undoManager.transact(()=>{pt.dom.setAttrib(o,"src",s.url),pt.dom.setAttrib(oe,"drawio-diagram",s.id)})}catch(s){throw e(s),new Error(`Failed to save image with error: ${s}`)}return}await os(5);let n=`drawing-${Math.random().toString(16).slice(2)}`,r=`drawing-wrap-${Math.random().toString(16).slice(2)}`;pt.insertContent(`
    `),ee();try{let o=await No(i,re.pageId);pt.undoManager.transact(()=>{pt.dom.setAttrib(n,"src",o.url),pt.dom.setAttrib(r,"drawio-diagram",o.id)})}catch(o){throw pt.dom.remove(r),e(o),new Error(`Failed to save image with error: ${o}`)}}function cm(){if(!oe)return Promise.resolve("");let i=oe.getAttribute("drawio-diagram");return An(i)}function wu(i,t=null){pt=i,oe=t,ei(re.drawioUrl,cm,lm)}function um(i){i.addCommand("drawio",()=>{let t=i.selection.getNode();wu(i,jo(t)?t:null)}),i.ui.registry.addIcon("diagram",``),i.ui.registry.addSplitButton("drawio",{tooltip:"Insert/edit drawing",icon:"diagram",onAction(){i.execCommand("drawio"),window.document.body.dispatchEvent(new Event("mousedown",{bubbles:!0}))},fetch(t){t([{type:"choiceitem",text:"Drawing manager",value:"drawing-manager"}])},onItemAction(t,e){if(e==="drawing-manager"){let n=i.selection.getNode();am(i,jo(n)?n:null)}}}),i.on("dblclick",()=>{let t=i.selection.getNode();jo(t)&&wu(i,t)}),i.on("SetContent",()=>{let t=i.dom.select("body > div[drawio-diagram]");t.length&&i.undoManager.transact(()=>{for(let e of t)e.setAttribute("contenteditable","false")})})}function yu(i){return re=i,um}function hm(i){i.addCommand("InsertHorizontalRule",()=>{let t=document.createElement("hr"),e=i.selection.getNode(),{parentNode:n}=e;n.insertBefore(t,e)}),i.ui.registry.addButton("customhr",{icon:"horizontal-rule",tooltip:"Insert horizontal line",onAction(){i.execCommand("InsertHorizontalRule")}})}function xu(){return hm}function dm(i){i.ui.registry.addButton("imagemanager-insert",{title:"Insert image",icon:"image",tooltip:"Insert image",onAction(){window.$components.first("image-manager").show(e=>{let n=e.thumbs?.display||e.url,r=``;r+=`${e.name}`,r+="",i.execCommand("mceInsertContent",!1,r)},"gallery")}})}function ku(){return dm}function pm(i){let t={title:"About the WYSIWYG Editor",url:window.baseUrl("/help/wysiwyg")};i.ui.registry.addButton("about",{icon:"help",tooltip:"About the editor",onAction(){window.tinymce.activeEditor.windowManager.openUrl(t)}})}function Cu(){return pm}var Eu=["p","h1","h2","h3","h4","h5","h6","div","blockquote","pre","code-block","details","ul","ol","table","hr"];function Nn(i){return i.selection.getNode().closest("details")}function fm(i,t){let e=Nn(i);e&&i.undoManager.transact(()=>{let n=e.querySelector("summary");n||(n=document.createElement("summary"),e.prepend(n)),n.textContent=t})}function mm(i){return{title:"Edit collapsible block",body:{type:"panel",items:[{type:"input",name:"summary",label:"Toggle label"}]},buttons:[{type:"cancel",text:"Cancel"},{type:"submit",text:"Save",primary:!0}],onSubmit(t){let{summary:e}=t.getData();fm(i,e),t.close()}}}function gm(i){let t=i.querySelector("summary");return t?t.textContent:""}function _u(i){let t=Nn(i);i.windowManager.open(mm(i)).setData({summary:gm(t)})}function bm(i){let t=i.selection.getNode().closest("details"),e=i.selection.getBookmark();if(t){let n=t.querySelectorAll("details > *:not(summary, doc-root), doc-root > *");i.undoManager.transact(()=>{for(let r of n)t.parentNode.insertBefore(r,t);t.remove()})}i.focus(),i.selection.moveToBookmark(e)}function Vo(i){i.attr("contenteditable",null);let t=!1;for(let e of i.children())e.name==="doc-root"&&(e.unwrap(),t=!0);t&&Vo(i)}function vm(i){Vo(i),i.attr("contenteditable","false");let t=window.tinymce.html.Node.create("doc-root",{contenteditable:"true"}),e=null;for(let n of i.children()){if(n.name==="summary")continue;Eu.includes(n.name)?(t.append(n),e=null):(e||(e=window.tinymce.html.Node.create("p"),t.append(e)),e.append(n))}i.append(t)}function wm(i){i.parser.addNodeFilter("details",t=>{for(let e of t)vm(e)}),i.serializer.addNodeFilter("details",t=>{for(let e of t)Vo(e),e.attr("open",null)}),i.serializer.addNodeFilter("doc-root",t=>{for(let e of t)e.unwrap()})}function ym(i){i.ui.registry.addIcon("details",''),i.ui.registry.addIcon("togglefold",''),i.ui.registry.addIcon("togglelabel",''),i.ui.registry.addButton("details",{icon:"details",tooltip:"Insert collapsible block",onAction(){i.execCommand("InsertDetailsBlock")}}),i.ui.registry.addButton("removedetails",{icon:"table-delete-table",tooltip:"Unwrap",onAction(){bm(i)}}),i.ui.registry.addButton("editdetials",{icon:"togglelabel",tooltip:"Edit label",onAction(){_u(i)}}),i.on("dblclick",t=>{!Nn(i)||t.target.closest("doc-root")||_u(i)}),i.ui.registry.addButton("toggledetails",{icon:"togglefold",tooltip:"Toggle open/closed",onAction(){Nn(i).toggleAttribute("open"),i.focus()}}),i.addCommand("InsertDetailsBlock",()=>{let t=i.selection.getContent({format:"html"}),e=document.createElement("details"),n=document.createElement("summary"),r=`details-${Date.now()}`;e.setAttribute("data-id",r),e.appendChild(n),t||(t="


    "),e.innerHTML+=t,i.insertContent(e.outerHTML),i.focus();let o=i.dom.select(`[data-id="${r}"]`)[0]||null;if(o){let s=o.querySelector("doc-root > *");s&&s.focus(),o.removeAttribute("data-id")}}),i.ui.registry.addContextToolbar("details",{predicate(t){return t.nodeName.toLowerCase()==="details"},items:"editdetials toggledetails removedetails",position:"node",scope:"node"}),i.on("PreInit",()=>{wm(i)})}function Su(){return ym}function xm(i){i.ui.registry.addIcon("tableclearformatting",'');let t={items:" | tablerowheader",predicate(n){let r=n.nodeName.toLowerCase()==="table",o=i.selection.getNode(),s=o.closest("table");return!r||!s?!1:s.querySelector("tr").contains(o)},position:"node",scope:"node"};i.ui.registry.addContextToolbar("customtabletoolbarfirstrow",t),i.addCommand("tableclearformatting",()=>{let n=i.dom.getParent(i.selection.getStart(),"table");if(!n)return;let r=["class","style","width","height"],o=[n,...n.querySelectorAll(r.map(s=>`[${s}]`).join(","))];for(let s of o)for(let a of r)s.removeAttribute(a)}),i.addCommand("tableclearsizes",()=>{let n=i.dom.getParent(i.selection.getStart(),"table");if(!n)return;let r=[n,...n.querySelectorAll("tr,td,th,tbody,thead,tfoot,th>*,td>*")];for(let o of r)o.removeAttribute("width"),o.removeAttribute("height"),o.style.height=null,o.style.width=null});let e=()=>{let n=i.ui.registry.getAll().buttons;i.ui.registry.addMenuButton("customtable",{...n.table,fetch:r=>r("inserttable | cell row column | advtablesort | tableprops tableclearformatting tableclearsizes deletetable")}),i.ui.registry.addMenuItem("tableclearformatting",{icon:"tableclearformatting",text:"Clear table formatting",onSetup:n.tableprops.onSetup,onAction(){i.execCommand("tableclearformatting")}}),i.ui.registry.addMenuItem("tableclearsizes",{icon:"resize",text:"Resize to contents",onSetup:n.tableprops.onSetup,onAction(){i.execCommand("tableclearsizes")}}),i.off("PreInit",e)};i.on("PreInit",e)}function Au(){return xm}function km(i){let t=i.closest("li");return t&&t.parentNode.nodeName==="UL"&&t.classList.contains("task-list-item")}function Cm(i,t,e){let n=t.getBoundingClientRect();i.clientX<=n.right&&i.clientX>=n.left&&i.clientY>=n.top&&i.clientY<=n.bottom||e.undoManager.transact(()=>{t.hasAttribute("checked")?t.removeAttribute("checked"):t.setAttribute("checked","checked")})}function Em(i){i.attr("class","task-list-item");for(let t of i.children())t.name==="input"&&(t.attr("checked")==="checked"&&i.attr("checked","checked"),t.remove())}function _m(i){let t=i.attr("checked")==="checked";i.attr("checked",null);let e={type:"checkbox",disabled:"disabled"};t&&(e.checked="checked");let n=window.tinymce.html.Node.create("input",e);n.shortEnded=!0,i.firstChild?i.insert(n,i.firstChild,!0):i.append(n)}function Sm(i){i.ui.registry.addIcon("tasklist",''),i.ui.registry.addToggleButton("tasklist",{tooltip:"Task list",icon:"tasklist",active:!1,onAction(n){n.isActive()?i.execCommand("RemoveList"):i.execCommand("InsertUnorderedList",null,{"list-item-attributes":{class:"task-list-item"},"list-style-type":"tasklist"})},onSetup(n){i.on("NodeChange",r=>{let o=r.parents.find(a=>a.nodeName==="LI"),s=o&&o.classList.contains("task-list-item");n.setActive(!!s)})}});let t=i.ui.registry.getAll().buttons.bullist;t.onSetup=function(r){i.on("NodeChange",o=>{let s=o.parents.find(c=>c.nodeName==="LI"),a=s&&s.classList.contains("task-list-item"),l=s&&s.parentNode.nodeName==="UL";r.setActive(!!(l&&!a))})},t.onAction=function(){km(i.selection.getNode())&&i.execCommand("InsertOrderedList",null,{"list-item-attributes":{class:null}}),i.execCommand("InsertUnorderedList",null,{"list-item-attributes":{class:null}})};let e=i.ui.registry.getAll().buttons.numlist;e.onAction=function(){i.execCommand("InsertOrderedList",null,{"list-item-attributes":{class:null}})},i.on("PreInit",()=>{i.parser.addNodeFilter("li",n=>{for(let r of n)r.attributes.map.class==="task-list-item"&&Em(r)}),i.serializer.addNodeFilter("li",n=>{for(let r of n)r.attributes.map.class==="task-list-item"&&_m(r)})}),i.on("click",n=>{let r=n.target;r.nodeName==="LI"&&r.classList.contains("task-list-item")&&(Cm(n,r,i),n.preventDefault())})}function Du(){return Sm}function Lu(i){function t(e){let n=e.querySelector("iframe, video");if(!n)return;let r=[...n.classList.values()].filter(s=>s.startsWith("align-")),o=[...e.classList.values()].filter(s=>s.startsWith("align-"));e.classList.remove(...o),e.classList.add(...r)}i.on("SetContent",()=>{let e=i.dom.select("span.mce-preview-object");for(let n of e)t(n)}),i.on("FormatApply",e=>{let n=e.format.startsWith("align");if(!e.node||!e.node.matches(".mce-preview-object"))return;let r=e.node.querySelector("iframe, video");if(n&&r){let o=(i.formatter.get(e.format)[0]?.classes||[])[0],s=!r.classList.contains(o),l=(e.node.getAttribute("data-mce-p-class")||"").split(" ").filter(u=>!u.startsWith("align-"));s&&l.push(o);let c=l.join(" ");e.node.setAttribute("data-mce-p-class",c),r.setAttribute("class",c),i.formatter.apply(e.format,{},r),t(e.node)}})}function Tu(i){let t=i.querySelectorAll('[dir],[style*="direction"],[style*="text-align"]');for(let e of t)e.removeAttribute("dir"),e.style.direction=null,e.style.textAlign=null;i.style.direction=null,i.style.textAlign=null}function $u(i){let t=[];i.on("TableSelectionChange",n=>{t=(n.cells||[]).map(r=>r.dom)}),i.on("TableSelectionClear",()=>{t=[]});let e=["class","style","width","height"];i.on("FormatRemove",()=>{for(let n of t)for(let r of e)n.removeAttribute(r)}),i.on("ExecCommand",n=>{let r=n.command;if(r!=="mceDirectionLTR"&&r!=="mceDirectionRTL")return;let o=r==="mceDirectionLTR"?"ltr":"rtl";for(let s of t)s.setAttribute("dir",o),Tu(s)})}function Iu(i){i.on("ExecCommand",t=>{let e=t.command;if(e!=="mceDirectionLTR"&&e!=="mceDirectionRTL")return;let n=i.selection.getSelectedBlocks();for(let r of n)Tu(r)})}var Am=[{title:"Large Header",format:"h2",preview:"color: blue;"},{title:"Medium Header",format:"h3"},{title:"Small Header",format:"h4"},{title:"Tiny Header",format:"h5"},{title:"Paragraph",format:"p",exact:!0,classes:""},{title:"Blockquote",format:"blockquote"},{title:"Callouts",items:[{title:"Information",format:"calloutinfo"},{title:"Success",format:"calloutsuccess"},{title:"Warning",format:"calloutwarning"},{title:"Danger",format:"calloutdanger"}]}],Dm={alignleft:{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img,iframe,video",classes:"align-left"},aligncenter:{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img,iframe,video",classes:"align-center"},alignright:{selector:"p,h1,h2,h3,h4,h5,h6,td,th,div,ul,ol,li,table,img,iframe,video",classes:"align-right"},calloutsuccess:{block:"p",exact:!0,attributes:{class:"callout success"}},calloutinfo:{block:"p",exact:!0,attributes:{class:"callout info"}},calloutwarning:{block:"p",exact:!0,attributes:{class:"callout warning"}},calloutdanger:{block:"p",exact:!0,attributes:{class:"callout danger"}}},Lm=["#BFEDD2","","#FBEEB8","","#F8CAC6","","#ECCAFA","","#C2E0F4","","#2DC26B","","#F1C40F","","#E03E2D","","#B96AD9","","#3598DB","","#169179","","#E67E23","","#BA372A","","#843FA1","","#236FA1","","#ECF0F1","","#CED4D9","","#95A5A6","","#7E8C8D","","#34495E","","#000000","","#ffffff",""];function Mu(i,t,e){if(e.filetype==="file"){let n=window.$components.first("entity-selector-popup"),r=this.selection.getContent({format:"text"}).trim();n.show(o=>{i(o.link,{text:o.name,title:o.name})},{initialValue:r,searchEndpoint:"/search/entity-selector",entityTypes:"page,book,chapter,bookshelf",entityPermission:"view"})}e.filetype==="image"&&window.$components.first("image-manager").show(r=>{i(r.url,{alt:r.name})},"gallery")}function Tm(i){let t=["image","table","link","autolink","fullscreen","code","customhr","autosave","lists","codeeditor","media","imagemanager","about","details","tasklist","tableadditions",i.textDirection==="rtl"?"directionality":""];return window.tinymce.PluginManager.add("codeeditor",vu()),window.tinymce.PluginManager.add("customhr",xu()),window.tinymce.PluginManager.add("imagemanager",ku()),window.tinymce.PluginManager.add("about",Cu()),window.tinymce.PluginManager.add("details",Su()),window.tinymce.PluginManager.add("tasklist",Du()),window.tinymce.PluginManager.add("tableadditions",Au()),i.drawioUrl&&(window.tinymce.PluginManager.add("drawio",yu(i)),t.push("drawio")),t.filter(e=>!!e)}function Fu(i){let t=document.head.innerHTML.split(` +`),e=t.findIndex(s=>s.trim()===""),n=t.findIndex(s=>s.trim()==="");if(e===-1||n===-1)return;let r=t.slice(e+1,n).join(` +`),o=i.createElement("div");o.innerHTML=r,i.head.append(...o.children)}function $m(i){return function(e){function n(){i.darkMode&&e.contentDocument.documentElement.classList.add("dark-mode"),window.$events.emit("editor-html-change","")}e.on("ExecCommand change input NodeChange ObjectResized",n),au(e),uu(e,i),e.on("init",()=>{n(),lu(e),window.editor=e,su(e)}),e.on("PreInit",()=>{fu(e)}),Lu(e),$u(e),Iu(e),window.$events.emitPublic(i.containerElement,"editor-tinymce::setup",{editor:e}),e.ui.registry.addButton("inlinecode",{tooltip:"Inline code",icon:"sourcecode",onAction(){e.execCommand("mceToggleFormat",!1,"code")}})}}function qu(i){return` html, body, html.dark-mode { - background: ${n.darkMode?"#222":"#fff"}; + background: ${i.darkMode?"#222":"#fff"}; } body { padding-left: 15px !important; @@ -39,12 +39,12 @@ body { margin-right: auto !important; overflow-y: hidden !important; }`.trim().replace(` -`,"")}function Bu(n){return window.tinymce.addI18n(n.language,n.translationMap),{width:"100%",height:"100%",selector:"#html-editor",cache_suffix:`?version=${document.querySelector('script[src*="/dist/app.js"]').getAttribute("src").split("?version=")[1]}`,content_css:[window.baseUrl("/dist/styles.css")],branding:!1,skin:n.darkMode?"tinymce-5-dark":"tinymce-5",body_class:"page-content",browser_spellcheck:!0,relative_urls:!1,language:n.language,directionality:n.textDirection,remove_script_host:!1,document_base_url:window.baseUrl("/"),end_container_on_empty_block:!0,remove_trailing_brs:!1,statusbar:!1,menubar:!1,paste_data_images:!1,extended_valid_elements:"pre[*],svg[*],div[drawio-diagram],details[*],summary[*],div[*],li[class|checked|style]",automatic_uploads:!1,custom_elements:"doc-root,code-block",valid_children:["-div[p|h1|h2|h3|h4|h5|h6|blockquote|code-block]","+div[pre|img]","-doc-root[doc-root|#text]","-li[details]","+code-block[pre]","+doc-root[p|h1|h2|h3|h4|h5|h6|blockquote|code-block|div|hr]"].join(","),plugins:Lm(n),contextmenu:!1,toolbar:hu(n),content_style:qu(n),style_formats:Sm,style_formats_merge:!1,media_alt_source:!1,media_poster:!1,formats:Am,table_style_by_css:!0,table_use_colgroups:!0,file_picker_types:"file image",color_map:Dm,file_picker_callback:Mu,paste_preprocess(e,i){let{content:r}=i;r.indexOf('this.$emit("reply",{id:this.commentLocalId,element:this.container})),this.editButton&&(this.editButton.addEventListener("click",this.startEdit.bind(this)),this.form.addEventListener("submit",this.update.bind(this)),this.formCancel.addEventListener("click",()=>this.toggleEditMode(!1))),this.deleteButton&&this.deleteButton.addEventListener("click",this.delete.bind(this))}toggleEditMode(t){this.contentContainer.toggleAttribute("hidden",t),this.form.toggleAttribute("hidden",!t)}startEdit(){if(this.toggleEditMode(!0),this.wysiwygEditor){this.wysiwygEditor.focus();return}let t=Ee({language:this.wysiwygLanguage,containerElement:this.input,darkMode:document.documentElement.classList.contains("dark-mode"),textDirection:this.wysiwygTextDirection,translations:{},translationMap:window.editor_translations});window.tinymce.init(t).then(e=>{this.wysiwygEditor=e[0],setTimeout(()=>this.wysiwygEditor.focus(),50)})}async update(t){t.preventDefault();let e=this.showLoading();this.form.toggleAttribute("hidden",!0);let i={html:this.wysiwygEditor.getContent(),parent_id:this.parentId||null};try{let r=await window.$http.put(`/comment/${this.commentId}`,i),o=_t(r.data);this.container.replaceWith(o),window.$events.success(this.updatedText)}catch(r){console.error(r),window.$events.showValidationErrors(r),this.form.toggleAttribute("hidden",!1),e.remove()}}async delete(){this.showLoading(),await window.$http.delete(`/comment/${this.commentId}`),this.container.closest(".comment-branch").remove(),window.$events.success(this.deletedText),this.$emit("delete")}showLoading(){let t=ae();return t.classList.add("px-l"),this.container.append(t),t}};var zi=class extends g{setup(){this.elem=this.$el,this.pageId=Number(this.$opts.pageId),this.container=this.$refs.commentContainer,this.commentCountBar=this.$refs.commentCountBar,this.commentsTitle=this.$refs.commentsTitle,this.addButtonContainer=this.$refs.addButtonContainer,this.replyToRow=this.$refs.replyToRow,this.formContainer=this.$refs.formContainer,this.form=this.$refs.form,this.formInput=this.$refs.formInput,this.formReplyLink=this.$refs.formReplyLink,this.addCommentButton=this.$refs.addCommentButton,this.hideFormButton=this.$refs.hideFormButton,this.removeReplyToButton=this.$refs.removeReplyToButton,this.wysiwygLanguage=this.$opts.wysiwygLanguage,this.wysiwygTextDirection=this.$opts.wysiwygTextDirection,this.wysiwygEditor=null,this.createdText=this.$opts.createdText,this.countText=this.$opts.countText,this.parentId=null,this.formReplyText=this.formReplyLink?.textContent||"",this.setupListeners()}setupListeners(){this.elem.addEventListener("page-comment-delete",()=>{this.updateCount(),this.hideForm()}),this.elem.addEventListener("page-comment-reply",t=>{this.setReply(t.detail.id,t.detail.element)}),this.form&&(this.removeReplyToButton.addEventListener("click",this.removeReplyTo.bind(this)),this.hideFormButton.addEventListener("click",this.hideForm.bind(this)),this.addCommentButton.addEventListener("click",this.showForm.bind(this)),this.form.addEventListener("submit",this.saveComment.bind(this)))}saveComment(t){t.preventDefault(),t.stopPropagation();let e=ae();e.classList.add("px-l"),this.form.after(e),this.form.toggleAttribute("hidden",!0);let i={html:this.wysiwygEditor.getContent(),parent_id:this.parentId||null};window.$http.post(`/comment/${this.pageId}`,i).then(r=>{let o=_t(r.data);this.formContainer.after(o),window.$events.success(this.createdText),this.hideForm(),this.updateCount()}).catch(r=>{this.form.toggleAttribute("hidden",!1),window.$events.showValidationErrors(r)}),this.form.toggleAttribute("hidden",!1),e.remove()}updateCount(){let t=this.getCommentCount();this.commentsTitle.textContent=window.trans_plural(this.countText,t,{count:t})}resetForm(){this.removeEditor(),this.formInput.value="",this.parentId=null,this.replyToRow.toggleAttribute("hidden",!0),this.container.append(this.formContainer)}showForm(){this.removeEditor(),this.formContainer.toggleAttribute("hidden",!1),this.addButtonContainer.toggleAttribute("hidden",!0),this.formContainer.scrollIntoView({behavior:"smooth",block:"nearest"}),this.loadEditor()}hideForm(){this.resetForm(),this.formContainer.toggleAttribute("hidden",!0),this.getCommentCount()>0?this.elem.append(this.addButtonContainer):this.commentCountBar.append(this.addButtonContainer),this.addButtonContainer.toggleAttribute("hidden",!1)}loadEditor(){if(this.wysiwygEditor){this.wysiwygEditor.focus();return}let t=Ee({language:this.wysiwygLanguage,containerElement:this.formInput,darkMode:document.documentElement.classList.contains("dark-mode"),textDirection:this.wysiwygTextDirection,translations:{},translationMap:window.editor_translations});window.tinymce.init(t).then(e=>{this.wysiwygEditor=e[0],setTimeout(()=>this.wysiwygEditor.focus(),50)})}removeEditor(){this.wysiwygEditor&&(this.wysiwygEditor.remove(),this.wysiwygEditor=null)}getCommentCount(){return this.container.querySelectorAll('[component="page-comment"]').length}setReply(t,e){e.closest(".comment-branch").querySelector(".comment-branch-children").append(this.formContainer),this.showForm(),this.parentId=t,this.replyToRow.toggleAttribute("hidden",!1),this.formReplyLink.textContent=this.formReplyText.replace("1234",this.parentId),this.formReplyLink.href=`#comment${this.parentId}`}removeReplyTo(){this.parentId=null,this.replyToRow.toggleAttribute("hidden",!0),this.container.append(this.formContainer),this.showForm()}};function $m(n,t){kr(`#page-navigation a[href="#${n}"]`,e=>{e.closest("li").classList.toggle("current-heading",t)})}function Im(n){for(let t of n){let e=t.intersectionRatio===1;$m(t.target.id,e)}}function Mm(n){let t={rootMargin:"0px 0px 0px 0px",threshold:1},e=new IntersectionObserver(Im,t);for(let i of n)e.observe(i)}var Hi=class extends g{setup(){if(this.container=this.$el,this.pageId=this.$opts.pageId,window.importVersioned("code").then(e=>e.highlight()),this.setupNavHighlighting(),window.location.hash){let e=window.location.hash.replace(/%20/g," ").substring(1);this.goToText(e)}let t=document.querySelector(".sidebar-page-nav");t&&K(t,"a","click",(e,i)=>{e.preventDefault(),window.$components.first("tri-layout").showContent();let r=i.getAttribute("href").substr(1);this.goToText(r),window.history.pushState(null,null,`#${r}`)})}goToText(t){let e=document.getElementById(t);if(kr(".page-content [data-highlighted]",i=>{i.removeAttribute("data-highlighted"),i.style.backgroundColor=null}),e!==null)Er(e);else{let i=es(".page-content > div > *",t);i&&Er(i)}}setupNavHighlighting(){let t=document.querySelector(".sidebar-page-nav"),e=document.querySelector(".page-content").querySelectorAll("h1, h2, h3, h4, h5, h6");e.length>0&&t!==null&&Mm(e)}};function Pu(n){let t=new Date(n*1e3),e=t.getHours(),i=t.getMinutes();return`${(e>9?"":"0")+e}:${(i>9?"":"0")+i}`}var Ui=class extends g{setup(){this.draftsEnabled=this.$opts.draftsEnabled==="true",this.editorType=this.$opts.editorType,this.pageId=Number(this.$opts.pageId),this.isNewDraft=this.$opts.pageNewDraft==="true",this.hasDefaultTitle=this.$opts.hasDefaultTitle||!1,this.container=this.$el,this.titleElem=this.$refs.titleContainer.querySelector("input"),this.saveDraftButton=this.$refs.saveDraft,this.discardDraftButton=this.$refs.discardDraft,this.discardDraftWrap=this.$refs.discardDraftWrap,this.deleteDraftButton=this.$refs.deleteDraft,this.deleteDraftWrap=this.$refs.deleteDraftWrap,this.draftDisplay=this.$refs.draftDisplay,this.draftDisplayIcon=this.$refs.draftDisplayIcon,this.changelogInput=this.$refs.changelogInput,this.changelogDisplay=this.$refs.changelogDisplay,this.changeEditorButtons=this.$manyRefs.changeEditor||[],this.switchDialogContainer=this.$refs.switchDialog,this.deleteDraftDialogContainer=this.$refs.deleteDraftDialog,this.draftText=this.$opts.draftText,this.autosaveFailText=this.$opts.autosaveFailText,this.editingPageText=this.$opts.editingPageText,this.draftDiscardedText=this.$opts.draftDiscardedText,this.draftDeleteText=this.$opts.draftDeleteText,this.draftDeleteFailText=this.$opts.draftDeleteFailText,this.setChangelogText=this.$opts.setChangelogText,this.autoSave={interval:null,frequency:3e4,last:0,pendingChange:!1},this.shownWarningsCache=new Set,this.pageId!==0&&this.draftsEnabled&&window.setTimeout(()=>{this.startAutoSave()},1e3),this.draftDisplay.innerHTML=this.draftText,this.setupListeners(),this.setInitialFocus()}setupListeners(){window.$events.listen("editor-save-draft",this.saveDraft.bind(this)),window.$events.listen("editor-save-page",this.savePage.bind(this));let t=()=>{this.autoSave.pendingChange=!0};window.$events.listen("editor-html-change",t),window.$events.listen("editor-markdown-change",t),this.titleElem.addEventListener("input",t);let e=Nt(this.updateChangelogDisplay.bind(this),300,!1);this.changelogInput.addEventListener("input",e),R(this.saveDraftButton,this.saveDraft.bind(this)),R(this.discardDraftButton,this.discardDraft.bind(this)),R(this.deleteDraftButton,this.deleteDraft.bind(this)),R(this.changeEditorButtons,this.changeEditor.bind(this))}setInitialFocus(){if(this.hasDefaultTitle){this.titleElem.select();return}window.setTimeout(()=>{window.$events.emit("editor::focus","")},500)}startAutoSave(){this.autoSave.interval=window.setInterval(this.runAutoSave.bind(this),this.autoSave.frequency)}runAutoSave(){Date.now()-this.autoSave.last{this.draftDisplayIcon.classList.remove("visible")},2e3)}async discardDraft(t=!0){let e;try{e=await window.$http.get(`/ajax/page/${this.pageId}`)}catch(i){console.error(i);return}this.autoSave.interval&&window.clearInterval(this.autoSave.interval),this.draftDisplay.innerText=this.editingPageText,this.discardDraftWrap.toggleAttribute("hidden",!0),window.$events.emit("editor::replace",{html:e.data.html,markdown:e.data.markdown}),this.titleElem.value=e.data.name,window.setTimeout(()=>{this.startAutoSave()},1e3),t&&window.$events.success(this.draftDiscardedText)}async deleteDraft(){if(await window.$components.firstOnElement(this.deleteDraftDialogContainer,"confirm-dialog").show())try{let i=this.discardDraft(!1),r=window.$http.delete(`/page-revisions/user-drafts/${this.pageId}`);await Promise.all([i,r]),window.$events.success(this.draftDeleteText),this.deleteDraftWrap.toggleAttribute("hidden",!0)}catch(i){console.error(i),window.$events.error(this.draftDeleteFailText)}}updateChangelogDisplay(){let t=this.changelogInput.value.trim();t.length===0?t=this.setChangelogText:t.length>16&&(t=`${t.slice(0,16)}...`),this.changelogDisplay.innerText=t}async changeEditor(t){t.preventDefault();let e=t.target.closest("a").href,i=window.$components.firstOnElement(this.switchDialogContainer,"confirm-dialog"),[r,o]=await Promise.all([this.saveDraft(),i.show()]);r&&o&&(window.location=e)}getEditorComponent(){return window.$components.first("markdown-editor")||window.$components.first("wysiwyg-editor")}};function ji(n,t){n.toggleAttribute("hidden",!t)}var Vi=class extends g{setup(){this.input=this.$refs.input,this.resetButton=this.$refs.resetButton,this.selectButton=this.$refs.selectButton,this.display=this.$refs.display,this.defaultDisplay=this.$refs.defaultDisplay,this.buttonSep=this.$refs.buttonSeperator,this.selectorEndpoint=this.$opts.selectorEndpoint,this.value=this.input.value,this.setupListeners()}setupListeners(){this.selectButton.addEventListener("click",this.showPopup.bind(this)),this.display.parentElement.addEventListener("click",this.showPopup.bind(this)),this.display.addEventListener("click",t=>t.stopPropagation()),this.resetButton.addEventListener("click",()=>{this.setValue("","")})}showPopup(){window.$components.first("entity-selector-popup").show(e=>{this.setValue(e.id,e.name)},{initialValue:"",searchEndpoint:this.selectorEndpoint,entityTypes:"page",entityPermission:"view"})}setValue(t,e){this.value=t,this.input.value=t,this.controlView(e)}controlView(t){let e=this.value&&this.value!==0;if(ji(this.resetButton,e),ji(this.buttonSep,e),ji(this.defaultDisplay,!e),ji(this.display,e),e){let i=this.getAssetIdFromVal();this.display.textContent=`#${i}, ${t}`,this.display.href=window.baseUrl(`/link/${i}`)}}getAssetIdFromVal(){return Number(this.value)}};var Wi=class extends g{setup(){this.container=this.$el,this.cellSelector=this.$opts.cellSelector||"td,th",this.rowSelector=this.$opts.rowSelector||"tr";for(let t of this.$manyRefs.toggleAll||[])t.addEventListener("click",this.toggleAllClick.bind(this));for(let t of this.$manyRefs.toggleRow||[])t.addEventListener("click",this.toggleRowClick.bind(this));for(let t of this.$manyRefs.toggleColumn||[])t.addEventListener("click",this.toggleColumnClick.bind(this))}toggleAllClick(t){t.preventDefault(),this.toggleAllInElement(this.container)}toggleRowClick(t){t.preventDefault(),this.toggleAllInElement(t.target.closest(this.rowSelector))}toggleColumnClick(t){t.preventDefault();let e=t.target.closest(this.cellSelector),i=Array.from(e.parentElement.children).indexOf(e),r=this.container.querySelectorAll(this.rowSelector),o=[];for(let s of r){let a=s.children[i];a&&o.push(...a.querySelectorAll("input[type=checkbox]"))}this.toggleAllInputs(o)}toggleAllInElement(t){let e=t.querySelectorAll("input[type=checkbox]");this.toggleAllInputs(e)}toggleAllInputs(t){let e=t.length>0?t[0].checked:!1;for(let i of t)i.checked=!e,i.dispatchEvent(new Event("change"))}};var Gi=class extends g{setup(){this.container=this.$el,this.pointer=this.$refs.pointer,this.linkInput=this.$refs.linkInput,this.linkButton=this.$refs.linkButton,this.includeInput=this.$refs.includeInput,this.includeButton=this.$refs.includeButton,this.sectionModeButton=this.$refs.sectionModeButton,this.modeToggles=this.$manyRefs.modeToggle,this.modeSections=this.$manyRefs.modeSection,this.pageId=this.$opts.pageId,this.showing=!1,this.isSelection=!1,this.setupListeners()}setupListeners(){this.includeButton.addEventListener("click",()=>Gr(this.includeInput.value)),this.linkButton.addEventListener("click",()=>Gr(this.linkInput.value)),R([this.includeInput,this.linkInput],e=>{e.target.select(),e.stopPropagation()}),cn(this.pointer,["click","focus"],e=>{e.stopPropagation()}),cn(document.body,["click","focus"],()=>{!this.showing||this.isSelection||this.hidePointer()}),ts(this.pointer,this.hidePointer.bind(this));let t=document.querySelector(".page-content");cn(t,["mouseup","keyup"],e=>{e.stopPropagation();let i=e.target.closest('[id^="bkmrk"]');i&&window.getSelection().toString().length>0&&this.showPointerAtTarget(i,e.pageX,!1)}),R(this.sectionModeButton,this.enterSectionSelectMode.bind(this)),R(this.modeToggles,e=>{for(let i of this.modeSections){let r=!i.contains(e.target);i.toggleAttribute("hidden",!r)}this.modeToggles.find(i=>i!==e.target).focus()})}hidePointer(){this.pointer.style.display=null,this.showing=!1}showPointerAtTarget(t,e,i){this.updateForTarget(t),this.pointer.style.display="block";let r=t.getBoundingClientRect(),o=this.pointer.getBoundingClientRect(),a=Math.min(Math.max(e,r.left),r.right)-o.width/2,l=r.top-o.height-16;this.pointer.style.left=`${a}px`,this.pointer.style.top=`${l}px`,this.showing=!0,this.isSelection=!0,setTimeout(()=>{this.isSelection=!1},100);let c=()=>{this.hidePointer(),window.removeEventListener("scroll",c,{passive:!0})};t.parentElement.insertBefore(this.pointer,t),i||window.addEventListener("scroll",c,{passive:!0})}updateForTarget(t){let e=window.baseUrl(`/link/${this.pageId}#${t.id}`),i=`{{@${this.pageId}#${t.id}}}`;this.linkInput.value=e,this.includeInput.value=i;let r=this.pointer.querySelector("#pointer-edit");if(r&&t){let{editHref:o}=r.dataset,s=t.id,a=t.textContent&&t.textContent.substring(0,50);r.href=`${o}?content-id=${s}&content-text=${encodeURIComponent(a)}`}}enterSectionSelectMode(){let t=Array.from(document.querySelectorAll('.page-content [id^="bkmrk"]'));for(let e of t)e.setAttribute("tabindex","0");t[0].focus(),se(t,e=>{this.showPointerAtTarget(e.target,0,!0),this.pointer.focus()})}};var Ki=class extends g{setup(){this.container=this.$el,this.hideButtons=this.$manyRefs.hide||[],this.onkeyup=null,this.onHide=null,this.setupListeners()}setupListeners(){let t=null;this.container.addEventListener("mousedown",e=>{t=e.target}),this.container.addEventListener("click",e=>{e.target===this.container&&t===this.container&&this.hide()}),R(this.hideButtons,()=>this.hide())}hide(t=null){Ms(this.container,120,t),this.onkeyup&&(window.removeEventListener("keyup",this.onkeyup),this.onkeyup=null),this.onHide&&this.onHide()}show(t=null,e=null){Is(this.container,120,t),this.onkeyup=i=>{i.key==="Escape"&&this.hide()},window.addEventListener("keyup",this.onkeyup),this.onHide=e}};var Zi=class extends g{setup(){this.container=this.$el,this.mode=this.$opts.mode,this.lightContainer=this.$refs.lightContainer,this.darkContainer=this.$refs.darkContainer,this.container.addEventListener("tabs-change",e=>{let r=e.detail.showing==="color-scheme-panel-light"?"light":"dark";this.handleModeChange(r)});let t=e=>{this.updateAppColorsFromInputs(),e.target.name.startsWith("setting-app-color")&&this.updateLightForInput(e.target)};this.container.addEventListener("change",t),this.container.addEventListener("input",t)}handleModeChange(t){this.mode=t;let e=t==="dark";document.documentElement.classList.toggle("dark-mode",e),this.updateAppColorsFromInputs()}updateAppColorsFromInputs(){let e=(this.mode==="dark"?this.darkContainer:this.lightContainer).querySelectorAll('input[type="color"]');for(let i of e){let r=i.name.split("-"),o=r.indexOf("color"),s=r.slice(1,o).join("-");s==="app"&&(s="primary");let a=`--color-${s}`;document.body.style.setProperty(a,i.value)}}updateLightForInput(t){let e=t.name.replace("-color","-color-light"),i=t.value,r=this.hexToRgb(i),o=`rgba(${[r.r,r.g,r.b,"0.15"].join(",")})`,s=this.container.querySelector(`input[name="${e}"][type="hidden"]`);s.value=o}hexToRgb(t){let e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return{r:e?parseInt(e[1],16):0,g:e?parseInt(e[2],16):0,b:e?parseInt(e[3],16):0}}};var Xi=class extends g{setup(){this.colorInput=this.$refs.input,this.resetButton=this.$refs.resetButton,this.defaultButton=this.$refs.defaultButton,this.currentColor=this.$opts.current,this.defaultColor=this.$opts.default,this.resetButton.addEventListener("click",()=>this.setValue(this.currentColor)),this.defaultButton.addEventListener("click",()=>this.setValue(this.defaultColor))}setValue(t){this.colorInput.value=t,this.colorInput.dispatchEvent(new Event("change",{bubbles:!0}))}};var Yi=class extends g{setup(){this.typeControl=this.$refs.typeControl,this.pagePickerContainer=this.$refs.pagePickerContainer,this.typeControl.addEventListener("change",this.controlPagePickerVisibility.bind(this)),this.controlPagePickerVisibility()}controlPagePickerVisibility(){let t=this.typeControl.value==="page";this.pagePickerContainer.style.display=t?"block":"none"}};var qm={move_up(n){let t=n.parentNode,e=Array.from(t.children).indexOf(n),i=Math.max(e-1,0);t.insertBefore(n,t.children[i]||null)},move_down(n){let t=n.parentNode,e=Array.from(t.children).indexOf(n),i=Math.min(e+2,t.children.length);t.insertBefore(n,t.children[i]||null)},remove(n,t,e){e.appendChild(n)},add(n,t){t.appendChild(n)}},Ji=class extends g{setup(){this.elem=this.$el,this.input=this.$refs.input,this.shelfBookList=this.$refs.shelfBookList,this.allBookList=this.$refs.allBookList,this.bookSearchInput=this.$refs.bookSearch,this.sortButtonContainer=this.$refs.sortButtonContainer,this.lastSort=null,this.initSortable(),this.setupListeners()}initSortable(){let t=this.elem.querySelectorAll(".scroll-box");for(let e of t)new Yt(e,{group:"shelf-books",ghostClass:"primary-background-light",handle:".handle",animation:150,onSort:this.onChange.bind(this)})}setupListeners(){this.elem.addEventListener("click",t=>{let e=t.target.closest(".scroll-box-item button[data-action]");e&&this.sortItemActionClick(e)}),this.bookSearchInput.addEventListener("input",()=>{this.filterBooksByName(this.bookSearchInput.value)}),this.sortButtonContainer.addEventListener("click",t=>{let e=t.target.closest("button[data-sort]");e&&this.sortShelfBooks(e.dataset.sort)})}filterBooksByName(t){this.allBookList.style.height||(this.allBookList.style.height=`${this.allBookList.getBoundingClientRect().height}px`);let e=this.allBookList.children,i=t.trim().toLowerCase();for(let r of e){let o=!t||r.textContent.toLowerCase().includes(i);r.style.display=o?null:"none"}}sortItemActionClick(t){let e=t.closest(".scroll-box-item"),{action:i}=t.dataset,r=qm[i];r(e,this.shelfBookList,this.allBookList),this.onChange()}onChange(){let t=Array.from(this.shelfBookList.querySelectorAll("[data-id]"));this.input.value=t.map(e=>e.getAttribute("data-id")).join(",")}sortShelfBooks(t){let e=Array.from(this.shelfBookList.children),i=t===this.lastSort;e.sort((r,o)=>{let s=r.dataset[t].toLowerCase(),a=o.dataset[t].toLowerCase();return i?a.localeCompare(s):s.localeCompare(a)});for(let r of e)this.shelfBookList.append(r);this.lastSort=this.lastSort===t?null:t,this.onChange()}};function Bm(n){let t={};for(let[e,i]of Object.entries(n))t[i]=e;return t}var Qi=class extends g{setup(){this.container=this.$el,this.mapById=JSON.parse(this.$opts.keyMap),this.mapByShortcut=Bm(this.mapById),this.hintsShowing=!1,this.hideHints=this.hideHints.bind(this),this.hintAbortController=null,this.setupListeners()}setupListeners(){window.addEventListener("keydown",t=>{if(!t.target.closest("input, select, textarea, .cm-editor")){if(t.key==="?"){this.hintsShowing?this.hideHints():this.showHints();return}this.handleShortcutPress(t)}})}handleShortcutPress(t){let i=[t.ctrlKey?"Ctrl":"",t.metaKey?"Cmd":"",t.key].filter(o=>!!o).join(" + "),r=this.mapByShortcut[i];r&&this.runShortcut(r)&&t.preventDefault()}runShortcut(t){let e=this.container.querySelector(`[data-shortcut="${t}"]`);return e?e.matches("input, textarea, select")?(e.focus(),!0):e.matches("a, button")?(e.click(),!0):e.matches("div[tabindex]")?(e.click(),e.focus(),!0):(console.error("Shortcut attempted to be ran for element type that does not have handling setup",e),!1):!1}showHints(){let t=document.createElement("div");t.classList.add("shortcut-container"),this.container.append(t);let e=this.container.querySelectorAll("[data-shortcut]"),i=new Set;for(let o of e){let s=o.getAttribute("data-shortcut");if(i.has(s))continue;let a=this.mapById[s];this.showHintLabel(o,a,t),i.add(s)}this.hintAbortController=new AbortController;let r=this.hintAbortController.signal;window.addEventListener("scroll",this.hideHints,{signal:r}),window.addEventListener("focus",this.hideHints,{signal:r}),window.addEventListener("blur",this.hideHints,{signal:r}),window.addEventListener("click",this.hideHints,{signal:r}),this.hintsShowing=!0}showHintLabel(t,e,i){let r=t.getBoundingClientRect(),o=document.createElement("div");o.classList.add("shortcut-hint"),o.textContent=e;let s=document.createElement("div");s.classList.add("shortcut-linkage"),s.style.left=`${r.x}px`,s.style.top=`${r.y}px`,s.style.width=`${r.width}px`,s.style.height=`${r.height}px`,i.append(o,s);let a=o.getBoundingClientRect();o.style.insetInlineStart=`${r.x+r.width-(a.width+6)}px`,o.style.insetBlockStart=`${r.y+(r.height-a.height)/2}px`}hideHints(){this.container.querySelector(".shortcut-container").remove(),this.hintAbortController?.abort(),this.hintsShowing=!1}};var Pm=["Control","Alt","Shift","Meta","Super"," ","+","Tab","Escape"],tr=class extends g{setup(){this.input=this.$el,this.setupListeners()}setupListeners(){this.listenerRecordKey=this.listenerRecordKey.bind(this),this.input.addEventListener("focus",()=>{this.startListeningForInput()}),this.input.addEventListener("blur",()=>{this.stopListeningForInput()})}startListeningForInput(){this.input.addEventListener("keydown",this.listenerRecordKey)}listenerRecordKey(t){if(Pm.includes(t.key))return;let e=[t.ctrlKey?"Ctrl":"",t.metaKey?"Cmd":"",t.key];this.input.value=e.filter(i=>!!i).join(" + ")}stopListeningForInput(){this.input.removeEventListener("keydown",this.listenerRecordKey)}};var er=class extends g{setup(){this.container=this.$el,this.handleSelector=this.$opts.handleSelector;let t=new Yt(this.container,{handle:this.handleSelector,animation:150,onSort:()=>{this.$emit("sort",{ids:t.toArray()})},setData(e,i){let r=i.getAttribute("data-drag-content");if(r){let o=JSON.parse(r);for(let[s,a]of Object.entries(o))e.setData(s,a)}},revertOnSpill:!0,dropBubble:!0,dragoverBubble:!1})}};var nr=class extends g{setup(){this.filter=this.$opts.filter,this.$el.addEventListener("change",t=>{if(this.filter&&!t.target.matches(this.filter))return;let e=this.$el.closest("form");e&&e.submit()})}};var ir=class extends g{setup(){this.container=this.$el,this.tabList=this.container.querySelector('[role="tablist"]'),this.tabs=Array.from(this.tabList.querySelectorAll('[role="tab"]')),this.panels=Array.from(this.container.querySelectorAll(':scope > [role="tabpanel"], :scope > * > [role="tabpanel"]')),this.activeUnder=this.$opts.activeUnder?Number(this.$opts.activeUnder):1e4,this.active=null,this.container.addEventListener("click",t=>{let e=t.target.closest('[role="tab"]');e&&this.tabs.includes(e)&&this.show(e.getAttribute("aria-controls"))}),window.addEventListener("resize",this.updateActiveState.bind(this),{passive:!0}),this.updateActiveState()}show(t){for(let e of this.panels)e.toggleAttribute("hidden",e.id!==t);for(let e of this.tabs){let r=e.getAttribute("aria-controls")===t;e.setAttribute("aria-selected",r?"true":"false")}this.$emit("change",{showing:t})}updateActiveState(){let t=window.innerWidth!e.hasAttribute("hidden"))||this.panels[0];this.show(t.id),this.tabList.toggleAttribute("hidden",!1)}deactivate(){for(let t of this.panels)t.removeAttribute("hidden");for(let t of this.tabs)t.setAttribute("aria-selected","false");this.tabList.toggleAttribute("hidden",!0)}};var rr=class extends g{setup(){this.addRemoveComponentEl=this.$refs.addRemove,this.container=this.$el,this.rowSelector=this.$opts.rowSelector,this.setupListeners()}setupListeners(){this.container.addEventListener("input",t=>{let e=window.$components.firstOnElement(this.addRemoveComponentEl,"add-remove-rows");!this.hasEmptyRows()&&t.target.value&&e.add()})}hasEmptyRows(){return[...this.container.querySelectorAll(this.rowSelector)].find(i=>[...i.querySelectorAll("input")].filter(r=>r.value).length===0)!==void 0}};var or=class extends g{setup(){this.container=this.$el,this.list=this.$refs.list,this.searchInput=this.$refs.searchInput,this.searchButton=this.$refs.searchButton,this.searchCancel=this.$refs.searchCancel,this.setupListeners()}setupListeners(){K(this.container,"[template-action]","click",this.handleTemplateActionClick.bind(this)),K(this.container,".pagination a","click",this.handlePaginationClick.bind(this)),K(this.container,".template-item-content","click",this.handleTemplateItemClick.bind(this)),K(this.container,".template-item","dragstart",this.handleTemplateItemDragStart.bind(this)),this.searchInput.addEventListener("keypress",t=>{t.key==="Enter"&&(t.preventDefault(),this.performSearch())}),this.searchButton.addEventListener("click",()=>this.performSearch()),this.searchCancel.addEventListener("click",()=>{this.searchInput.value="",this.performSearch()})}handleTemplateItemClick(t,e){let i=e.closest("[template-id]").getAttribute("template-id");this.insertTemplate(i,"replace")}handleTemplateItemDragStart(t,e){let i=e.closest("[template-id]").getAttribute("template-id");t.dataTransfer.setData("bookstack/template",i),t.dataTransfer.setData("text/plain",i)}handleTemplateActionClick(t,e){t.stopPropagation();let i=e.getAttribute("template-action"),r=e.closest("[template-id]").getAttribute("template-id");this.insertTemplate(r,i)}async insertTemplate(t,e="replace"){let i=await window.$http.get(`/templates/${t}`),r=`editor::${e}`;window.$events.emit(r,i.data)}async handlePaginationClick(t,e){t.preventDefault();let i=e.getAttribute("href"),r=await window.$http.get(i);this.list.innerHTML=r.data}async performSearch(){let t=this.searchInput.value,e=await window.$http.get("/templates",{search:t});this.searchCancel.style.display=t?"block":"none",this.list.innerHTML=e.data}};var sr=class extends g{setup(){this.input=this.$el.querySelector("input[type=hidden]"),this.checkbox=this.$el.querySelector("input[type=checkbox]"),this.checkbox.addEventListener("change",this.stateChange.bind(this))}stateChange(){this.input.value=this.checkbox.checked?"true":"false";let t=new Event("change");this.input.dispatchEvent(t)}};var ar=class extends g{setup(){this.container=this.$refs.container,this.tabs=this.$manyRefs.tab,this.lastLayoutType="none",this.onDestroy=null,this.scrollCache={content:0,info:0},this.lastTabShown="content",this.mobileTabClick=this.mobileTabClick.bind(this),this.updateLayout(),window.addEventListener("resize",()=>{this.updateLayout()},{passive:!0})}updateLayout(){let t="tablet";window.innerWidth<=1e3&&(t="mobile"),window.innerWidth>=1400&&(t="desktop"),t!==this.lastLayoutType&&(this.onDestroy&&(this.onDestroy(),this.onDestroy=null),t==="desktop"?this.setupDesktop():t==="mobile"&&this.setupMobile(),this.lastLayoutType=t)}setupMobile(){for(let t of this.tabs)t.addEventListener("click",this.mobileTabClick);this.onDestroy=()=>{for(let t of this.tabs)t.removeEventListener("click",this.mobileTabClick)}}setupDesktop(){}mobileTabClick(t){let{tab:e}=t.target.dataset;this.showTab(e)}showContent(){this.showTab("content",!1)}showTab(t,e=!0){this.scrollCache[this.lastTabShown]=document.documentElement.scrollTop;for(let r of this.tabs){let o=r.dataset.tab===t;r.setAttribute("aria-selected",o?"true":"false")}let i=t==="info";if(this.container.classList.toggle("show-info",i),e){let o=document.querySelector("header").getBoundingClientRect().bottom;document.documentElement.scrollTop=this.scrollCache[t]||o,setTimeout(()=>{document.documentElement.scrollTop=this.scrollCache[t]||o},50)}this.lastTabShown=t}};var lr=class extends g{setup(){this.container=this.$el,this.input=this.$refs.input,this.userInfoContainer=this.$refs.userInfo,K(this.container,"a.dropdown-search-item","click",this.selectUser.bind(this))}selectUser(t,e){t.preventDefault(),this.input.value=e.getAttribute("data-id"),this.userInfoContainer.innerHTML=e.innerHTML,this.input.dispatchEvent(new Event("change",{bubbles:!0})),this.hide()}hide(){window.$components.firstOnElement(this.container,"dropdown").hide()}};var cr=class extends g{setup(){this.checkboxes=this.$el.querySelectorAll('input[type="checkbox"]'),this.allCheckbox=this.$el.querySelector('input[type="checkbox"][value="all"]'),this.$el.addEventListener("change",t=>{t.target.checked&&t.target===this.allCheckbox?this.deselectIndividualEvents():t.target.checked&&(this.allCheckbox.checked=!1)})}deselectIndividualEvents(){for(let t of this.checkboxes)t!==this.allCheckbox&&(t.checked=!1)}};var ur=class extends g{setup(){this.elem=this.$el,this.tinyMceConfig=Bu({language:this.$opts.language,containerElement:this.elem,darkMode:document.documentElement.classList.contains("dark-mode"),textDirection:this.$opts.textDirection,drawioUrl:this.getDrawIoUrl(),pageId:Number(this.$opts.pageId),translations:{imageUploadErrorText:this.$opts.imageUploadErrorText,serverUploadLimitText:this.$opts.serverUploadLimitText},translationMap:window.editor_translations}),window.$events.emitPublic(this.elem,"editor-tinymce::pre-init",{config:this.tinyMceConfig}),window.tinymce.init(this.tinyMceConfig).then(t=>{this.editor=t[0]})}getDrawIoUrl(){let t=document.querySelector("[drawio-url]");return t?t.getAttribute("drawio-url"):""}getContent(){return{html:this.editor.getContent()}}};var hr=class extends g{setup(){this.elem=this.$el;let t=Ee({language:this.$opts.language,containerElement:this.elem,darkMode:document.documentElement.classList.contains("dark-mode"),textDirection:this.$opts.textDirection,translations:{},translationMap:window.editor_translations});window.tinymce.init(t).then(e=>{this.editor=e[0]})}};window.baseUrl=function(t){let e=t,i=document.querySelector('meta[name="base-url"]').getAttribute("content");return i[i.length-1]==="/"&&(i=i.slice(0,i.length-1)),e[0]==="/"&&(e=e.slice(1)),`${i}/${e}`};window.importVersioned=function(t){let e=document.querySelector('link[href*="/dist/styles.css?version="]').href.split("?version=").pop();return import(window.baseUrl(`dist/${t}.js?version=${e}`))};window.$http=mr;window.$events=fr;var _e=new Xo;window.trans=_e.get.bind(_e);window.trans_choice=_e.getPlural.bind(_e);window.trans_plural=_e.parsePlural.bind(_e);yr(Vo);window.$components=xr;wr(); +`,"")}function Bu(i){return window.tinymce.addI18n(i.language,i.translationMap),{width:"100%",height:"100%",selector:"#html-editor",cache_suffix:`?version=${document.querySelector('script[src*="/dist/app.js"]').getAttribute("src").split("?version=")[1]}`,content_css:[window.baseUrl("/dist/styles.css")],branding:!1,skin:i.darkMode?"tinymce-5-dark":"tinymce-5",body_class:"page-content",browser_spellcheck:!0,relative_urls:!1,language:i.language,directionality:i.textDirection,remove_script_host:!1,document_base_url:window.baseUrl("/"),end_container_on_empty_block:!0,remove_trailing_brs:!1,statusbar:!1,menubar:!1,paste_data_images:!1,extended_valid_elements:"pre[*],svg[*],div[drawio-diagram],details[*],summary[*],div[*],li[class|checked|style]",automatic_uploads:!1,custom_elements:"doc-root,code-block",valid_children:["-div[p|h1|h2|h3|h4|h5|h6|blockquote|code-block]","+div[pre|img]","-doc-root[doc-root|#text]","-li[details]","+code-block[pre]","+doc-root[p|h1|h2|h3|h4|h5|h6|blockquote|code-block|div|hr]"].join(","),plugins:Tm(i),contextmenu:!1,toolbar:hu(i),content_style:qu(i),style_formats:Am,style_formats_merge:!1,media_alt_source:!1,media_poster:!1,formats:Dm,table_style_by_css:!0,table_use_colgroups:!0,file_picker_types:"file image",color_map:Lm,file_picker_callback:Mu,paste_preprocess(e,n){let{content:r}=n;r.indexOf('this.$emit("reply",{id:this.commentLocalId,element:this.container})),this.editButton&&(this.editButton.addEventListener("click",this.startEdit.bind(this)),this.form.addEventListener("submit",this.update.bind(this)),this.formCancel.addEventListener("click",()=>this.toggleEditMode(!1))),this.deleteButton&&this.deleteButton.addEventListener("click",this.delete.bind(this))}toggleEditMode(t){this.contentContainer.toggleAttribute("hidden",t),this.form.toggleAttribute("hidden",!t)}startEdit(){if(this.toggleEditMode(!0),this.wysiwygEditor){this.wysiwygEditor.focus();return}let t=Ee({language:this.wysiwygLanguage,containerElement:this.input,darkMode:document.documentElement.classList.contains("dark-mode"),textDirection:this.wysiwygTextDirection,translations:{},translationMap:window.editor_translations});window.tinymce.init(t).then(e=>{this.wysiwygEditor=e[0],setTimeout(()=>this.wysiwygEditor.focus(),50)})}async update(t){t.preventDefault();let e=this.showLoading();this.form.toggleAttribute("hidden",!0);let n={html:this.wysiwygEditor.getContent(),parent_id:this.parentId||null};try{let r=await window.$http.put(`/comment/${this.commentId}`,n),o=_t(r.data);this.container.replaceWith(o),window.$events.success(this.updatedText)}catch(r){console.error(r),window.$events.showValidationErrors(r),this.form.toggleAttribute("hidden",!1),e.remove()}}async delete(){this.showLoading(),await window.$http.delete(`/comment/${this.commentId}`),this.container.closest(".comment-branch").remove(),window.$events.success(this.deletedText),this.$emit("delete")}showLoading(){let t=ae();return t.classList.add("px-l"),this.container.append(t),t}};var Hn=class extends g{setup(){this.elem=this.$el,this.pageId=Number(this.$opts.pageId),this.container=this.$refs.commentContainer,this.commentCountBar=this.$refs.commentCountBar,this.commentsTitle=this.$refs.commentsTitle,this.addButtonContainer=this.$refs.addButtonContainer,this.replyToRow=this.$refs.replyToRow,this.formContainer=this.$refs.formContainer,this.form=this.$refs.form,this.formInput=this.$refs.formInput,this.formReplyLink=this.$refs.formReplyLink,this.addCommentButton=this.$refs.addCommentButton,this.hideFormButton=this.$refs.hideFormButton,this.removeReplyToButton=this.$refs.removeReplyToButton,this.wysiwygLanguage=this.$opts.wysiwygLanguage,this.wysiwygTextDirection=this.$opts.wysiwygTextDirection,this.wysiwygEditor=null,this.createdText=this.$opts.createdText,this.countText=this.$opts.countText,this.parentId=null,this.formReplyText=this.formReplyLink?.textContent||"",this.setupListeners()}setupListeners(){this.elem.addEventListener("page-comment-delete",()=>{this.updateCount(),this.hideForm()}),this.elem.addEventListener("page-comment-reply",t=>{this.setReply(t.detail.id,t.detail.element)}),this.form&&(this.removeReplyToButton.addEventListener("click",this.removeReplyTo.bind(this)),this.hideFormButton.addEventListener("click",this.hideForm.bind(this)),this.addCommentButton.addEventListener("click",this.showForm.bind(this)),this.form.addEventListener("submit",this.saveComment.bind(this)))}saveComment(t){t.preventDefault(),t.stopPropagation();let e=ae();e.classList.add("px-l"),this.form.after(e),this.form.toggleAttribute("hidden",!0);let n={html:this.wysiwygEditor.getContent(),parent_id:this.parentId||null};window.$http.post(`/comment/${this.pageId}`,n).then(r=>{let o=_t(r.data);this.formContainer.after(o),window.$events.success(this.createdText),this.hideForm(),this.updateCount()}).catch(r=>{this.form.toggleAttribute("hidden",!1),window.$events.showValidationErrors(r)}),this.form.toggleAttribute("hidden",!1),e.remove()}updateCount(){let t=this.getCommentCount();this.commentsTitle.textContent=window.trans_plural(this.countText,t,{count:t})}resetForm(){this.removeEditor(),this.formInput.value="",this.parentId=null,this.replyToRow.toggleAttribute("hidden",!0),this.container.append(this.formContainer)}showForm(){this.removeEditor(),this.formContainer.toggleAttribute("hidden",!1),this.addButtonContainer.toggleAttribute("hidden",!0),this.formContainer.scrollIntoView({behavior:"smooth",block:"nearest"}),this.loadEditor()}hideForm(){this.resetForm(),this.formContainer.toggleAttribute("hidden",!0),this.getCommentCount()>0?this.elem.append(this.addButtonContainer):this.commentCountBar.append(this.addButtonContainer),this.addButtonContainer.toggleAttribute("hidden",!1)}loadEditor(){if(this.wysiwygEditor){this.wysiwygEditor.focus();return}let t=Ee({language:this.wysiwygLanguage,containerElement:this.formInput,darkMode:document.documentElement.classList.contains("dark-mode"),textDirection:this.wysiwygTextDirection,translations:{},translationMap:window.editor_translations});window.tinymce.init(t).then(e=>{this.wysiwygEditor=e[0],setTimeout(()=>this.wysiwygEditor.focus(),50)})}removeEditor(){this.wysiwygEditor&&(this.wysiwygEditor.remove(),this.wysiwygEditor=null)}getCommentCount(){return this.container.querySelectorAll('[component="page-comment"]').length}setReply(t,e){e.closest(".comment-branch").querySelector(".comment-branch-children").append(this.formContainer),this.showForm(),this.parentId=t,this.replyToRow.toggleAttribute("hidden",!1),this.formReplyLink.textContent=this.formReplyText.replace("1234",this.parentId),this.formReplyLink.href=`#comment${this.parentId}`}removeReplyTo(){this.parentId=null,this.replyToRow.toggleAttribute("hidden",!0),this.container.append(this.formContainer),this.showForm()}};function Im(i,t){Cr(`#page-navigation a[href="#${i}"]`,e=>{e.closest("li").classList.toggle("current-heading",t)})}function Mm(i){for(let t of i){let e=t.intersectionRatio===1;Im(t.target.id,e)}}function Fm(i){let t={rootMargin:"0px 0px 0px 0px",threshold:1},e=new IntersectionObserver(Mm,t);for(let n of i)e.observe(n)}var Un=class extends g{setup(){if(this.container=this.$el,this.pageId=this.$opts.pageId,window.importVersioned("code").then(e=>e.highlight()),this.setupNavHighlighting(),window.location.hash){let e=window.location.hash.replace(/%20/g," ").substring(1);this.goToText(e)}let t=document.querySelector(".sidebar-page-nav");t&&K(t,"a","click",(e,n)=>{e.preventDefault(),window.$components.first("tri-layout").showContent();let r=n.getAttribute("href").substr(1);this.goToText(r),window.history.pushState(null,null,`#${r}`)})}goToText(t){let e=document.getElementById(t);if(Cr(".page-content [data-highlighted]",n=>{n.removeAttribute("data-highlighted"),n.style.backgroundColor=null}),e!==null)_r(e);else{let n=is(".page-content > div > *",t);n&&_r(n)}}setupNavHighlighting(){let t=document.querySelector(".sidebar-page-nav"),e=document.querySelector(".page-content").querySelectorAll("h1, h2, h3, h4, h5, h6");e.length>0&&t!==null&&Fm(e)}};function Pu(i){let t=new Date(i*1e3),e=t.getHours(),n=t.getMinutes();return`${(e>9?"":"0")+e}:${(n>9?"":"0")+n}`}var jn=class extends g{setup(){this.draftsEnabled=this.$opts.draftsEnabled==="true",this.editorType=this.$opts.editorType,this.pageId=Number(this.$opts.pageId),this.isNewDraft=this.$opts.pageNewDraft==="true",this.hasDefaultTitle=this.$opts.hasDefaultTitle||!1,this.container=this.$el,this.titleElem=this.$refs.titleContainer.querySelector("input"),this.saveDraftButton=this.$refs.saveDraft,this.discardDraftButton=this.$refs.discardDraft,this.discardDraftWrap=this.$refs.discardDraftWrap,this.deleteDraftButton=this.$refs.deleteDraft,this.deleteDraftWrap=this.$refs.deleteDraftWrap,this.draftDisplay=this.$refs.draftDisplay,this.draftDisplayIcon=this.$refs.draftDisplayIcon,this.changelogInput=this.$refs.changelogInput,this.changelogDisplay=this.$refs.changelogDisplay,this.changeEditorButtons=this.$manyRefs.changeEditor||[],this.switchDialogContainer=this.$refs.switchDialog,this.deleteDraftDialogContainer=this.$refs.deleteDraftDialog,this.draftText=this.$opts.draftText,this.autosaveFailText=this.$opts.autosaveFailText,this.editingPageText=this.$opts.editingPageText,this.draftDiscardedText=this.$opts.draftDiscardedText,this.draftDeleteText=this.$opts.draftDeleteText,this.draftDeleteFailText=this.$opts.draftDeleteFailText,this.setChangelogText=this.$opts.setChangelogText,this.autoSave={interval:null,frequency:3e4,last:0,pendingChange:!1},this.shownWarningsCache=new Set,this.pageId!==0&&this.draftsEnabled&&window.setTimeout(()=>{this.startAutoSave()},1e3),this.draftDisplay.innerHTML=this.draftText,this.setupListeners(),this.setInitialFocus()}setupListeners(){window.$events.listen("editor-save-draft",this.saveDraft.bind(this)),window.$events.listen("editor-save-page",this.savePage.bind(this));let t=()=>{this.autoSave.pendingChange=!0};window.$events.listen("editor-html-change",t),window.$events.listen("editor-markdown-change",t),this.titleElem.addEventListener("input",t);let e=Nt(this.updateChangelogDisplay.bind(this),300,!1);this.changelogInput.addEventListener("input",e),R(this.saveDraftButton,this.saveDraft.bind(this)),R(this.discardDraftButton,this.discardDraft.bind(this)),R(this.deleteDraftButton,this.deleteDraft.bind(this)),R(this.changeEditorButtons,this.changeEditor.bind(this))}setInitialFocus(){if(this.hasDefaultTitle){this.titleElem.select();return}window.setTimeout(()=>{window.$events.emit("editor::focus","")},500)}startAutoSave(){this.autoSave.interval=window.setInterval(this.runAutoSave.bind(this),this.autoSave.frequency)}runAutoSave(){Date.now()-this.autoSave.last{this.draftDisplayIcon.classList.remove("visible")},2e3)}async discardDraft(t=!0){let e;try{e=await window.$http.get(`/ajax/page/${this.pageId}`)}catch(n){console.error(n);return}this.autoSave.interval&&window.clearInterval(this.autoSave.interval),this.draftDisplay.innerText=this.editingPageText,this.discardDraftWrap.toggleAttribute("hidden",!0),window.$events.emit("editor::replace",{html:e.data.html,markdown:e.data.markdown}),this.titleElem.value=e.data.name,window.setTimeout(()=>{this.startAutoSave()},1e3),t&&window.$events.success(this.draftDiscardedText)}async deleteDraft(){if(await window.$components.firstOnElement(this.deleteDraftDialogContainer,"confirm-dialog").show())try{let n=this.discardDraft(!1),r=window.$http.delete(`/page-revisions/user-drafts/${this.pageId}`);await Promise.all([n,r]),window.$events.success(this.draftDeleteText),this.deleteDraftWrap.toggleAttribute("hidden",!0)}catch(n){console.error(n),window.$events.error(this.draftDeleteFailText)}}updateChangelogDisplay(){let t=this.changelogInput.value.trim();t.length===0?t=this.setChangelogText:t.length>16&&(t=`${t.slice(0,16)}...`),this.changelogDisplay.innerText=t}async changeEditor(t){t.preventDefault();let e=t.target.closest("a").href,n=window.$components.firstOnElement(this.switchDialogContainer,"confirm-dialog"),[r,o]=await Promise.all([this.saveDraft(),n.show()]);r&&o&&(window.location=e)}getEditorComponent(){return window.$components.first("markdown-editor")||window.$components.first("wysiwyg-editor")}};function Vn(i,t){i.toggleAttribute("hidden",!t)}var Wn=class extends g{setup(){this.input=this.$refs.input,this.resetButton=this.$refs.resetButton,this.selectButton=this.$refs.selectButton,this.display=this.$refs.display,this.defaultDisplay=this.$refs.defaultDisplay,this.buttonSep=this.$refs.buttonSeperator,this.selectorEndpoint=this.$opts.selectorEndpoint,this.value=this.input.value,this.setupListeners()}setupListeners(){this.selectButton.addEventListener("click",this.showPopup.bind(this)),this.display.parentElement.addEventListener("click",this.showPopup.bind(this)),this.display.addEventListener("click",t=>t.stopPropagation()),this.resetButton.addEventListener("click",()=>{this.setValue("","")})}showPopup(){window.$components.first("entity-selector-popup").show(e=>{this.setValue(e.id,e.name)},{initialValue:"",searchEndpoint:this.selectorEndpoint,entityTypes:"page",entityPermission:"view"})}setValue(t,e){this.value=t,this.input.value=t,this.controlView(e)}controlView(t){let e=this.value&&this.value!==0;if(Vn(this.resetButton,e),Vn(this.buttonSep,e),Vn(this.defaultDisplay,!e),Vn(this.display,e),e){let n=this.getAssetIdFromVal();this.display.textContent=`#${n}, ${t}`,this.display.href=window.baseUrl(`/link/${n}`)}}getAssetIdFromVal(){return Number(this.value)}};var Gn=class extends g{setup(){this.container=this.$el,this.cellSelector=this.$opts.cellSelector||"td,th",this.rowSelector=this.$opts.rowSelector||"tr";for(let t of this.$manyRefs.toggleAll||[])t.addEventListener("click",this.toggleAllClick.bind(this));for(let t of this.$manyRefs.toggleRow||[])t.addEventListener("click",this.toggleRowClick.bind(this));for(let t of this.$manyRefs.toggleColumn||[])t.addEventListener("click",this.toggleColumnClick.bind(this))}toggleAllClick(t){t.preventDefault(),this.toggleAllInElement(this.container)}toggleRowClick(t){t.preventDefault(),this.toggleAllInElement(t.target.closest(this.rowSelector))}toggleColumnClick(t){t.preventDefault();let e=t.target.closest(this.cellSelector),n=Array.from(e.parentElement.children).indexOf(e),r=this.container.querySelectorAll(this.rowSelector),o=[];for(let s of r){let a=s.children[n];a&&o.push(...a.querySelectorAll("input[type=checkbox]"))}this.toggleAllInputs(o)}toggleAllInElement(t){let e=t.querySelectorAll("input[type=checkbox]");this.toggleAllInputs(e)}toggleAllInputs(t){let e=t.length>0?t[0].checked:!1;for(let n of t)n.checked=!e,n.dispatchEvent(new Event("change"))}};var Kn=class extends g{setup(){this.container=this.$el,this.pointer=this.$refs.pointer,this.linkInput=this.$refs.linkInput,this.linkButton=this.$refs.linkButton,this.includeInput=this.$refs.includeInput,this.includeButton=this.$refs.includeButton,this.sectionModeButton=this.$refs.sectionModeButton,this.modeToggles=this.$manyRefs.modeToggle,this.modeSections=this.$manyRefs.modeSection,this.pageId=this.$opts.pageId,this.showing=!1,this.isSelection=!1,this.setupListeners()}setupListeners(){this.includeButton.addEventListener("click",()=>Kr(this.includeInput.value)),this.linkButton.addEventListener("click",()=>Kr(this.linkInput.value)),R([this.includeInput,this.linkInput],e=>{e.target.select(),e.stopPropagation()}),li(this.pointer,["click","focus"],e=>{e.stopPropagation()}),li(document.body,["click","focus"],()=>{!this.showing||this.isSelection||this.hidePointer()}),es(this.pointer,this.hidePointer.bind(this));let t=document.querySelector(".page-content");li(t,["mouseup","keyup"],e=>{e.stopPropagation();let n=e.target.closest('[id^="bkmrk"]');n&&window.getSelection().toString().length>0&&this.showPointerAtTarget(n,e.pageX,!1)}),R(this.sectionModeButton,this.enterSectionSelectMode.bind(this)),R(this.modeToggles,e=>{for(let n of this.modeSections){let r=!n.contains(e.target);n.toggleAttribute("hidden",!r)}this.modeToggles.find(n=>n!==e.target).focus()})}hidePointer(){this.pointer.style.display=null,this.showing=!1}showPointerAtTarget(t,e,n){this.updateForTarget(t),this.pointer.style.display="block";let r=t.getBoundingClientRect(),o=this.pointer.getBoundingClientRect(),a=Math.min(Math.max(e,r.left),r.right)-o.width/2,l=r.top-o.height-16;this.pointer.style.left=`${a}px`,this.pointer.style.top=`${l}px`,this.showing=!0,this.isSelection=!0,setTimeout(()=>{this.isSelection=!1},100);let c=()=>{this.hidePointer(),window.removeEventListener("scroll",c,{passive:!0})};t.parentElement.insertBefore(this.pointer,t),n||window.addEventListener("scroll",c,{passive:!0})}updateForTarget(t){let e=window.baseUrl(`/link/${this.pageId}#${t.id}`),n=`{{@${this.pageId}#${t.id}}}`;this.linkInput.value=e,this.includeInput.value=n;let r=this.pointer.querySelector("#pointer-edit");if(r&&t){let{editHref:o}=r.dataset,s=t.id,a=t.textContent&&t.textContent.substring(0,50);r.href=`${o}?content-id=${s}&content-text=${encodeURIComponent(a)}`}}enterSectionSelectMode(){let t=Array.from(document.querySelectorAll('.page-content [id^="bkmrk"]'));for(let e of t)e.setAttribute("tabindex","0");t[0].focus(),se(t,e=>{this.showPointerAtTarget(e.target,0,!0),this.pointer.focus()})}};var Zn=class extends g{setup(){this.container=this.$el,this.hideButtons=this.$manyRefs.hide||[],this.onkeyup=null,this.onHide=null,this.setupListeners()}setupListeners(){let t=null;this.container.addEventListener("mousedown",e=>{t=e.target}),this.container.addEventListener("click",e=>{e.target===this.container&&t===this.container&&this.hide()}),R(this.hideButtons,()=>this.hide())}hide(t=null){Fs(this.container,120,t),this.onkeyup&&(window.removeEventListener("keyup",this.onkeyup),this.onkeyup=null),this.onHide&&this.onHide()}show(t=null,e=null){Ms(this.container,120,t),this.onkeyup=n=>{n.key==="Escape"&&this.hide()},window.addEventListener("keyup",this.onkeyup),this.onHide=e}};var Xn=class extends g{setup(){this.container=this.$el,this.mode=this.$opts.mode,this.lightContainer=this.$refs.lightContainer,this.darkContainer=this.$refs.darkContainer,this.container.addEventListener("tabs-change",e=>{let r=e.detail.showing==="color-scheme-panel-light"?"light":"dark";this.handleModeChange(r)});let t=e=>{this.updateAppColorsFromInputs(),e.target.name.startsWith("setting-app-color")&&this.updateLightForInput(e.target)};this.container.addEventListener("change",t),this.container.addEventListener("input",t)}handleModeChange(t){this.mode=t;let e=t==="dark";document.documentElement.classList.toggle("dark-mode",e),this.updateAppColorsFromInputs()}updateAppColorsFromInputs(){let e=(this.mode==="dark"?this.darkContainer:this.lightContainer).querySelectorAll('input[type="color"]');for(let n of e){let r=n.name.split("-"),o=r.indexOf("color"),s=r.slice(1,o).join("-");s==="app"&&(s="primary");let a=`--color-${s}`;document.body.style.setProperty(a,n.value)}}updateLightForInput(t){let e=t.name.replace("-color","-color-light"),n=t.value,r=this.hexToRgb(n),o=`rgba(${[r.r,r.g,r.b,"0.15"].join(",")})`,s=this.container.querySelector(`input[name="${e}"][type="hidden"]`);s.value=o}hexToRgb(t){let e=/^#?([a-f\d]{2})([a-f\d]{2})([a-f\d]{2})$/i.exec(t);return{r:e?parseInt(e[1],16):0,g:e?parseInt(e[2],16):0,b:e?parseInt(e[3],16):0}}};var Yn=class extends g{setup(){this.colorInput=this.$refs.input,this.resetButton=this.$refs.resetButton,this.defaultButton=this.$refs.defaultButton,this.currentColor=this.$opts.current,this.defaultColor=this.$opts.default,this.resetButton.addEventListener("click",()=>this.setValue(this.currentColor)),this.defaultButton.addEventListener("click",()=>this.setValue(this.defaultColor))}setValue(t){this.colorInput.value=t,this.colorInput.dispatchEvent(new Event("change",{bubbles:!0}))}};var Jn=class extends g{setup(){this.typeControl=this.$refs.typeControl,this.pagePickerContainer=this.$refs.pagePickerContainer,this.typeControl.addEventListener("change",this.controlPagePickerVisibility.bind(this)),this.controlPagePickerVisibility()}controlPagePickerVisibility(){let t=this.typeControl.value==="page";this.pagePickerContainer.style.display=t?"block":"none"}};var Bm={move_up(i){let t=i.parentNode,e=Array.from(t.children).indexOf(i),n=Math.max(e-1,0);t.insertBefore(i,t.children[n]||null)},move_down(i){let t=i.parentNode,e=Array.from(t.children).indexOf(i),n=Math.min(e+2,t.children.length);t.insertBefore(i,t.children[n]||null)},remove(i,t,e){e.appendChild(i)},add(i,t){t.appendChild(i)}},Qn=class extends g{setup(){this.elem=this.$el,this.input=this.$refs.input,this.shelfBookList=this.$refs.shelfBookList,this.allBookList=this.$refs.allBookList,this.bookSearchInput=this.$refs.bookSearch,this.sortButtonContainer=this.$refs.sortButtonContainer,this.lastSort=null,this.initSortable(),this.setupListeners()}initSortable(){let t=this.elem.querySelectorAll(".scroll-box");for(let e of t)new Yt(e,{group:"shelf-books",ghostClass:"primary-background-light",handle:".handle",animation:150,onSort:this.onChange.bind(this)})}setupListeners(){this.elem.addEventListener("click",t=>{let e=t.target.closest(".scroll-box-item button[data-action]");e&&this.sortItemActionClick(e)}),this.bookSearchInput.addEventListener("input",()=>{this.filterBooksByName(this.bookSearchInput.value)}),this.sortButtonContainer.addEventListener("click",t=>{let e=t.target.closest("button[data-sort]");e&&this.sortShelfBooks(e.dataset.sort)})}filterBooksByName(t){this.allBookList.style.height||(this.allBookList.style.height=`${this.allBookList.getBoundingClientRect().height}px`);let e=this.allBookList.children,n=t.trim().toLowerCase();for(let r of e){let o=!t||r.textContent.toLowerCase().includes(n);r.style.display=o?null:"none"}}sortItemActionClick(t){let e=t.closest(".scroll-box-item"),{action:n}=t.dataset,r=Bm[n];r(e,this.shelfBookList,this.allBookList),this.onChange()}onChange(){let t=Array.from(this.shelfBookList.querySelectorAll("[data-id]"));this.input.value=t.map(e=>e.getAttribute("data-id")).join(",")}sortShelfBooks(t){let e=Array.from(this.shelfBookList.children),n=t===this.lastSort;e.sort((r,o)=>{let s=r.dataset[t].toLowerCase(),a=o.dataset[t].toLowerCase();return n?a.localeCompare(s):s.localeCompare(a)});for(let r of e)this.shelfBookList.append(r);this.lastSort=this.lastSort===t?null:t,this.onChange()}};function Pm(i){let t={};for(let[e,n]of Object.entries(i))t[n]=e;return t}var tr=class extends g{setup(){this.container=this.$el,this.mapById=JSON.parse(this.$opts.keyMap),this.mapByShortcut=Pm(this.mapById),this.hintsShowing=!1,this.hideHints=this.hideHints.bind(this),this.hintAbortController=null,this.setupListeners()}setupListeners(){window.addEventListener("keydown",t=>{if(!t.target.closest("input, select, textarea, .cm-editor")){if(t.key==="?"){this.hintsShowing?this.hideHints():this.showHints();return}this.handleShortcutPress(t)}})}handleShortcutPress(t){let n=[t.ctrlKey?"Ctrl":"",t.metaKey?"Cmd":"",t.key].filter(o=>!!o).join(" + "),r=this.mapByShortcut[n];r&&this.runShortcut(r)&&t.preventDefault()}runShortcut(t){let e=this.container.querySelector(`[data-shortcut="${t}"]`);return e?e.matches("input, textarea, select")?(e.focus(),!0):e.matches("a, button")?(e.click(),!0):e.matches("div[tabindex]")?(e.click(),e.focus(),!0):(console.error("Shortcut attempted to be ran for element type that does not have handling setup",e),!1):!1}showHints(){let t=document.createElement("div");t.classList.add("shortcut-container"),this.container.append(t);let e=this.container.querySelectorAll("[data-shortcut]"),n=new Set;for(let o of e){let s=o.getAttribute("data-shortcut");if(n.has(s))continue;let a=this.mapById[s];this.showHintLabel(o,a,t),n.add(s)}this.hintAbortController=new AbortController;let r=this.hintAbortController.signal;window.addEventListener("scroll",this.hideHints,{signal:r}),window.addEventListener("focus",this.hideHints,{signal:r}),window.addEventListener("blur",this.hideHints,{signal:r}),window.addEventListener("click",this.hideHints,{signal:r}),this.hintsShowing=!0}showHintLabel(t,e,n){let r=t.getBoundingClientRect(),o=document.createElement("div");o.classList.add("shortcut-hint"),o.textContent=e;let s=document.createElement("div");s.classList.add("shortcut-linkage"),s.style.left=`${r.x}px`,s.style.top=`${r.y}px`,s.style.width=`${r.width}px`,s.style.height=`${r.height}px`,n.append(o,s);let a=o.getBoundingClientRect();o.style.insetInlineStart=`${r.x+r.width-(a.width+6)}px`,o.style.insetBlockStart=`${r.y+(r.height-a.height)/2}px`}hideHints(){this.container.querySelector(".shortcut-container").remove(),this.hintAbortController?.abort(),this.hintsShowing=!1}};var Om=["Control","Alt","Shift","Meta","Super"," ","+","Tab","Escape"],er=class extends g{setup(){this.input=this.$el,this.setupListeners()}setupListeners(){this.listenerRecordKey=this.listenerRecordKey.bind(this),this.input.addEventListener("focus",()=>{this.startListeningForInput()}),this.input.addEventListener("blur",()=>{this.stopListeningForInput()})}startListeningForInput(){this.input.addEventListener("keydown",this.listenerRecordKey)}listenerRecordKey(t){if(Om.includes(t.key))return;let e=[t.ctrlKey?"Ctrl":"",t.metaKey?"Cmd":"",t.key];this.input.value=e.filter(n=>!!n).join(" + ")}stopListeningForInput(){this.input.removeEventListener("keydown",this.listenerRecordKey)}};var ir=class extends g{setup(){this.container=this.$el,this.handleSelector=this.$opts.handleSelector;let t=new Yt(this.container,{handle:this.handleSelector,animation:150,onSort:()=>{this.$emit("sort",{ids:t.toArray()})},setData(e,n){let r=n.getAttribute("data-drag-content");if(r){let o=JSON.parse(r);for(let[s,a]of Object.entries(o))e.setData(s,a)}},revertOnSpill:!0,dropBubble:!0,dragoverBubble:!1})}};var nr=class extends g{setup(){this.filter=this.$opts.filter,this.$el.addEventListener("change",t=>{if(this.filter&&!t.target.matches(this.filter))return;let e=this.$el.closest("form");e&&e.submit()})}};var rr=class extends g{setup(){this.container=this.$el,this.tabList=this.container.querySelector('[role="tablist"]'),this.tabs=Array.from(this.tabList.querySelectorAll('[role="tab"]')),this.panels=Array.from(this.container.querySelectorAll(':scope > [role="tabpanel"], :scope > * > [role="tabpanel"]')),this.activeUnder=this.$opts.activeUnder?Number(this.$opts.activeUnder):1e4,this.active=null,this.container.addEventListener("click",t=>{let e=t.target.closest('[role="tab"]');e&&this.tabs.includes(e)&&this.show(e.getAttribute("aria-controls"))}),window.addEventListener("resize",this.updateActiveState.bind(this),{passive:!0}),this.updateActiveState()}show(t){for(let e of this.panels)e.toggleAttribute("hidden",e.id!==t);for(let e of this.tabs){let r=e.getAttribute("aria-controls")===t;e.setAttribute("aria-selected",r?"true":"false")}this.$emit("change",{showing:t})}updateActiveState(){let t=window.innerWidth!e.hasAttribute("hidden"))||this.panels[0];this.show(t.id),this.tabList.toggleAttribute("hidden",!1)}deactivate(){for(let t of this.panels)t.removeAttribute("hidden");for(let t of this.tabs)t.setAttribute("aria-selected","false");this.tabList.toggleAttribute("hidden",!0)}};var or=class extends g{setup(){this.addRemoveComponentEl=this.$refs.addRemove,this.container=this.$el,this.rowSelector=this.$opts.rowSelector,this.setupListeners()}setupListeners(){this.container.addEventListener("input",t=>{let e=window.$components.firstOnElement(this.addRemoveComponentEl,"add-remove-rows");!this.hasEmptyRows()&&t.target.value&&e.add()})}hasEmptyRows(){return[...this.container.querySelectorAll(this.rowSelector)].find(n=>[...n.querySelectorAll("input")].filter(r=>r.value).length===0)!==void 0}};var sr=class extends g{setup(){this.container=this.$el,this.list=this.$refs.list,this.searchInput=this.$refs.searchInput,this.searchButton=this.$refs.searchButton,this.searchCancel=this.$refs.searchCancel,this.setupListeners()}setupListeners(){K(this.container,"[template-action]","click",this.handleTemplateActionClick.bind(this)),K(this.container,".pagination a","click",this.handlePaginationClick.bind(this)),K(this.container,".template-item-content","click",this.handleTemplateItemClick.bind(this)),K(this.container,".template-item","dragstart",this.handleTemplateItemDragStart.bind(this)),this.searchInput.addEventListener("keypress",t=>{t.key==="Enter"&&(t.preventDefault(),this.performSearch())}),this.searchButton.addEventListener("click",()=>this.performSearch()),this.searchCancel.addEventListener("click",()=>{this.searchInput.value="",this.performSearch()})}handleTemplateItemClick(t,e){let n=e.closest("[template-id]").getAttribute("template-id");this.insertTemplate(n,"replace")}handleTemplateItemDragStart(t,e){let n=e.closest("[template-id]").getAttribute("template-id");t.dataTransfer.setData("bookstack/template",n),t.dataTransfer.setData("text/plain",n)}handleTemplateActionClick(t,e){t.stopPropagation();let n=e.getAttribute("template-action"),r=e.closest("[template-id]").getAttribute("template-id");this.insertTemplate(r,n)}async insertTemplate(t,e="replace"){let n=await window.$http.get(`/templates/${t}`),r=`editor::${e}`;window.$events.emit(r,n.data)}async handlePaginationClick(t,e){t.preventDefault();let n=e.getAttribute("href"),r=await window.$http.get(n);this.list.innerHTML=r.data}async performSearch(){let t=this.searchInput.value,e=await window.$http.get("/templates",{search:t});this.searchCancel.style.display=t?"block":"none",this.list.innerHTML=e.data}};var ar=class extends g{setup(){this.input=this.$el.querySelector("input[type=hidden]"),this.checkbox=this.$el.querySelector("input[type=checkbox]"),this.checkbox.addEventListener("change",this.stateChange.bind(this))}stateChange(){this.input.value=this.checkbox.checked?"true":"false";let t=new Event("change");this.input.dispatchEvent(t)}};var lr=class extends g{setup(){this.container=this.$refs.container,this.tabs=this.$manyRefs.tab,this.lastLayoutType="none",this.onDestroy=null,this.scrollCache={content:0,info:0},this.lastTabShown="content",this.mobileTabClick=this.mobileTabClick.bind(this),this.updateLayout(),window.addEventListener("resize",()=>{this.updateLayout()},{passive:!0})}updateLayout(){let t="tablet";window.innerWidth<=1e3&&(t="mobile"),window.innerWidth>=1400&&(t="desktop"),t!==this.lastLayoutType&&(this.onDestroy&&(this.onDestroy(),this.onDestroy=null),t==="desktop"?this.setupDesktop():t==="mobile"&&this.setupMobile(),this.lastLayoutType=t)}setupMobile(){for(let t of this.tabs)t.addEventListener("click",this.mobileTabClick);this.onDestroy=()=>{for(let t of this.tabs)t.removeEventListener("click",this.mobileTabClick)}}setupDesktop(){}mobileTabClick(t){let{tab:e}=t.target.dataset;this.showTab(e)}showContent(){this.showTab("content",!1)}showTab(t,e=!0){this.scrollCache[this.lastTabShown]=document.documentElement.scrollTop;for(let r of this.tabs){let o=r.dataset.tab===t;r.setAttribute("aria-selected",o?"true":"false")}let n=t==="info";if(this.container.classList.toggle("show-info",n),e){let o=document.querySelector("header").getBoundingClientRect().bottom;document.documentElement.scrollTop=this.scrollCache[t]||o,setTimeout(()=>{document.documentElement.scrollTop=this.scrollCache[t]||o},50)}this.lastTabShown=t}};var cr=class extends g{setup(){this.container=this.$el,this.input=this.$refs.input,this.userInfoContainer=this.$refs.userInfo,K(this.container,"a.dropdown-search-item","click",this.selectUser.bind(this))}selectUser(t,e){t.preventDefault(),this.input.value=e.getAttribute("data-id"),this.userInfoContainer.innerHTML=e.innerHTML,this.input.dispatchEvent(new Event("change",{bubbles:!0})),this.hide()}hide(){window.$components.firstOnElement(this.container,"dropdown").hide()}};var ur=class extends g{setup(){this.checkboxes=this.$el.querySelectorAll('input[type="checkbox"]'),this.allCheckbox=this.$el.querySelector('input[type="checkbox"][value="all"]'),this.$el.addEventListener("change",t=>{t.target.checked&&t.target===this.allCheckbox?this.deselectIndividualEvents():t.target.checked&&(this.allCheckbox.checked=!1)})}deselectIndividualEvents(){for(let t of this.checkboxes)t!==this.allCheckbox&&(t.checked=!1)}};var hr=class extends g{setup(){this.elem=this.$el,this.tinyMceConfig=Bu({language:this.$opts.language,containerElement:this.elem,darkMode:document.documentElement.classList.contains("dark-mode"),textDirection:this.$opts.textDirection,drawioUrl:this.getDrawIoUrl(),pageId:Number(this.$opts.pageId),translations:{imageUploadErrorText:this.$opts.imageUploadErrorText,serverUploadLimitText:this.$opts.serverUploadLimitText},translationMap:window.editor_translations}),window.$events.emitPublic(this.elem,"editor-tinymce::pre-init",{config:this.tinyMceConfig}),window.tinymce.init(this.tinyMceConfig).then(t=>{this.editor=t[0]})}getDrawIoUrl(){let t=document.querySelector("[drawio-url]");return t?t.getAttribute("drawio-url"):""}getContent(){return{html:this.editor.getContent()}}};var dr=class extends g{setup(){this.elem=this.$el;let t=Ee({language:this.$opts.language,containerElement:this.elem,darkMode:document.documentElement.classList.contains("dark-mode"),textDirection:this.$opts.textDirection,translations:{},translationMap:window.editor_translations});window.tinymce.init(t).then(e=>{this.editor=e[0]})}};window.baseUrl=function(t){let e=t,n=document.querySelector('meta[name="base-url"]').getAttribute("content");return n[n.length-1]==="/"&&(n=n.slice(0,n.length-1)),e[0]==="/"&&(e=e.slice(1)),`${n}/${e}`};window.importVersioned=function(t){let e=document.querySelector('link[href*="/dist/styles.css?version="]').href.split("?version=").pop();return import(window.baseUrl(`dist/${t}.js?version=${e}`))};window.$http=gr;window.$events=mr;var _e=new Yo;window.trans=_e.get.bind(_e);window.trans_choice=_e.getPlural.bind(_e);window.trans_plural=_e.parsePlural.bind(_e);xr(Wo);window.$components=kr;yr(); /*! Bundled license information: sortablejs/modular/sortable.esm.js: (**! - * Sortable 1.15.1 + * Sortable 1.15.2 * @author RubaXa * @author owenm * @license MIT diff --git a/public/dist/code.js b/public/dist/code.js index 126349c1b9c..19843f25928 100644 --- a/public/dist/code.js +++ b/public/dist/code.js @@ -1,14 +1,14 @@ -var q=class i{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]=ci(this,e,t);let r=[];return this.decompose(0,e,r,2),n.length&&n.decompose(0,n.length,r,3),this.decompose(t,this.length,r,1),oi.from(r,this.length-(t-e)+n.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=ci(this,e,t);let n=[];return this.decompose(e,t,n,0),oi.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),r=new Gt(this),s=new Gt(e);for(let o=t,O=t;;){if(r.next(o),s.next(o),o=0,r.lineBreak!=s.lineBreak||r.done!=s.done||r.value!=s.value)return!1;if(O+=r.value.length,r.done||O>=n)return!0}}iter(e=1){return new Gt(this,e)}iterRange(e,t=this.length){return new Rn(this,e,t)}iterLines(e,t){let n;if(e==null)n=this.iter();else{t==null&&(t=this.lines+1);let r=this.line(e).from;n=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new Zn(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]?i.empty:e.length<=32?new ze(e):oi.from(ze.split(e,[]))}},ze=class i extends q{constructor(e,t=Qd(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,n,r){for(let s=0;;s++){let o=this.text[s],O=r+o.length;if((t?n:O)>=e)return new ts(r,O,n,o);r=O+1,n++}}decompose(e,t,n,r){let s=e<=0&&t>=this.length?this:new i(cl(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(r&1){let o=n.pop(),O=Wn(s.text,o.text.slice(),0,s.length);if(O.length<=32)n.push(new i(O,o.length+s.length));else{let l=O.length>>1;n.push(new i(O.slice(0,l)),new i(O.slice(l)))}}else n.push(s)}replace(e,t,n){if(!(n instanceof i))return super.replace(e,t,n);[e,t]=ci(this,e,t);let r=Wn(this.text,Wn(n.text,cl(this.text,0,e)),t),s=this.length+n.length-(t-e);return r.length<=32?new i(r,s):oi.from(i.split(r,[]),s)}sliceString(e,t=this.length,n=` -`){[e,t]=ci(this,e,t);let r="";for(let s=0,o=0;s<=t&&oe&&o&&(r+=n),es&&(r+=O.slice(Math.max(0,e-s),t-s)),s=l+1}return r}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let n=[],r=-1;for(let s of e)n.push(s),r+=s.length+1,n.length==32&&(t.push(new i(n,r)),n=[],r=-1);return r>-1&&t.push(new i(n,r)),t}},oi=class i extends q{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,r){for(let s=0;;s++){let o=this.children[s],O=r+o.length,l=n+o.lines-1;if((t?l:O)>=e)return o.lineInner(e,t,n,r);r=O+1,n=l+1}}decompose(e,t,n,r){for(let s=0,o=0;o<=t&&s=o){let a=r&((o<=e?1:0)|(l>=t?2:0));o>=e&&l<=t&&!a?n.push(O):O.decompose(e-o,t-o,n,a)}o=l+1}}replace(e,t,n){if([e,t]=ci(this,e,t),n.lines=s&&t<=O){let l=o.replace(e-s,t-s,n),a=this.lines-o.lines+l.lines;if(l.lines>5-1&&l.lines>a>>5+1){let h=this.children.slice();return h[r]=l,new i(h,this.length-(t-e)+n.length)}return super.replace(s,O,l)}s=O+1}return super.replace(e,t,n)}sliceString(e,t=this.length,n=` -`){[e,t]=ci(this,e,t);let r="";for(let s=0,o=0;se&&s&&(r+=n),eo&&(r+=O.sliceString(e-o,t-o,n)),o=l+1}return r}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof i))return 0;let n=0,[r,s,o,O]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;r+=t,s+=t){if(r==o||s==O)return n;let l=this.children[r],a=e.children[s];if(l!=a)return n+l.scanIdentical(a,t);n+=l.length+1}}static from(e,t=e.reduce((n,r)=>n+r.length+1,-1)){let n=0;for(let d of e)n+=d.lines;if(n<32){let d=[];for(let p of e)p.flatten(d);return new ze(d,t)}let r=Math.max(32,n>>5),s=r<<1,o=r>>1,O=[],l=0,a=-1,h=[];function c(d){let p;if(d.lines>s&&d instanceof i)for(let m of d.children)c(m);else d.lines>o&&(l>o||!l)?(f(),O.push(d)):d instanceof ze&&l&&(p=h[h.length-1])instanceof ze&&d.lines+p.lines<=32?(l+=d.lines,a+=d.length+1,h[h.length-1]=new ze(p.text.concat(d.text),p.length+1+d.length)):(l+d.lines>r&&f(),l+=d.lines,a+=d.length+1,h.push(d))}function f(){l!=0&&(O.push(h.length==1?h[0]:i.from(h,a)),a=-1,l=h.length=0)}for(let d of e)c(d);return f(),O.length==1?O[0]:new i(O,t)}};q.empty=new ze([""],0);function Qd(i){let e=-1;for(let t of i)e+=t.length+1;return e}function Wn(i,e,t=0,n=1e9){for(let r=0,s=0,o=!0;s=t&&(l>n&&(O=O.slice(0,n-r)),r0?1:(e instanceof ze?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let n=this.nodes.length-1,r=this.nodes[n],s=this.offsets[n],o=s>>1,O=r instanceof ze?r.text.length:r.children.length;if(o==(t>0?O: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((s&1)==(t>0?0:1)){if(this.offsets[n]+=t,e==0)return this.lineBreak=!0,this.value=` -`,this;e--}else if(r instanceof ze){let l=r.text[o+(t<0?-1:0)];if(this.offsets[n]+=t,l.length>Math.max(0,e))return this.value=e==0?l:t>0?l.slice(e):l.slice(0,l.length-e),this;e-=l.length}else{let l=r.children[o+(t<0?-1:0)];e>l.length?(e-=l.length,this.offsets[n]+=t):(t<0&&this.offsets[n]--,this.nodes.push(l),this.offsets.push(t>0?1:(l instanceof ze?l.text.length:l.children.length)<<1))}}}next(e=0){return e<0&&(this.nextInner(-e,-this.dir),e=this.value.length),this.nextInner(e,this.dir)}},Rn=class{constructor(e,t,n){this.value="",this.done=!1,this.cursor=new Gt(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:r}=this.cursor.next(e);return this.pos+=(r.length+e)*t,this.value=r.length<=n?r:t<0?r.slice(r.length-n):r.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!=""}},Zn=class{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:n,value:r}=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=r,this.afterBreak=!1),this}get lineBreak(){return!1}};typeof Symbol<"u"&&(q.prototype[Symbol.iterator]=function(){return this.iter()},Gt.prototype[Symbol.iterator]=Rn.prototype[Symbol.iterator]=Zn.prototype[Symbol.iterator]=function(){return this});var ts=class{constructor(e,t,n,r){this.from=e,this.to=t,this.number=n,this.text=r}get length(){return this.to-this.from}};function ci(i,e,t){return e=Math.max(0,Math.min(i.length,e)),[e,Math.max(e,Math.min(i.length,t))]}var Oi="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(i=>i?parseInt(i,36):1);for(let i=1;ii)return Oi[e-1]<=i;return!1}function fl(i){return i>=127462&&i<=127487}var ul=8205;function le(i,e,t=!0,n=!0){return(t?Sl:bd)(i,e,n)}function Sl(i,e,t){if(e==i.length)return e;e&&Ql(i.charCodeAt(e))&&yl(i.charCodeAt(e-1))&&e--;let n=li(i,e);for(e+=Vi(n);e=0&&fl(li(i,o));)s++,o-=2;if(s%2==0)break;e+=2}else break}return e}function bd(i,e,t){for(;e>0;){let n=Sl(i,e-2,t);if(n=56320&&i<57344}function yl(i){return i>=55296&&i<56320}function li(i,e){let t=i.charCodeAt(e);if(!yl(t)||e+1==i.length)return t;let n=i.charCodeAt(e+1);return Ql(n)?(t-55296<<10)+(n-56320)+65536:t}function Vi(i){return i<65536?1:2}var is=/\r\n?|\n/,Oe=function(i){return i[i.Simple=0]="Simple",i[i.TrackDel=1]="TrackDel",i[i.TrackBefore=2]="TrackBefore",i[i.TrackAfter=3]="TrackAfter",i}(Oe||(Oe={})),ct=class i{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;te)return s+(e-r);s+=O}else{if(n!=Oe.Simple&&a>=e&&(n==Oe.TrackDel&&re||n==Oe.TrackBefore&&re))return null;if(a>e||a==e&&t<0&&!O)return e==r||t<0?s:s+l;s+=l}r=a}if(e>r)throw new RangeError(`Position ${e} is out of range for changeset of length ${r}`);return s}touchesRange(e,t=e){for(let n=0,r=0;n=0&&r<=t&&O>=e)return rt?"cover":!0;r=O}return!1}toString(){let e="";for(let t=0;t=0?":"+r:"")}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 i(e)}static create(e){return new i(e)}},ge=class i extends ct{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 ns(this,(t,n,r,s,o)=>e=e.replace(r,r+(n-t),o),!1),e}mapDesc(e,t=!1){return rs(this,e,t,!0)}invert(e){let t=this.sections.slice(),n=[];for(let r=0,s=0;r=0){t[r]=O,t[r+1]=o;let l=r>>1;for(;n.length0&&yt(n,t,s.text),s.forward(h),O+=h}let a=e[o++];for(;O>1].toJSON()))}return e}static of(e,t,n){let r=[],s=[],o=0,O=null;function l(h=!1){if(!h&&!r.length)return;of||c<0||f>t)throw new RangeError(`Invalid change range ${c} to ${f} (in doc of length ${t})`);let p=d?typeof d=="string"?q.of(d.split(n||is)):d:q.empty,m=p.length;if(c==f&&m==0)return;co&&fe(r,c-o,-1),fe(r,f-c,m),yt(s,r,p),o=f}}return a(e),l(!O),O}static empty(e){return new i(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],n=[];for(let r=0;rO&&typeof o!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(s.length==1)t.push(s[0],0);else{for(;n.length=0&&t<=0&&t==i[r+1]?i[r]+=e:e==0&&i[r]==0?i[r+1]+=t:n?(i[r]+=e,i[r+1]+=t):i.push(e,t)}function yt(i,e,t){if(t.length==0)return;let n=e.length-2>>1;if(n>1])),!(t||o==i.sections.length||i.sections[o+1]<0);)O=i.sections[o++],l=i.sections[o++];e(r,a,s,h,c),r=a,s=h}}}function rs(i,e,t,n=!1){let r=[],s=n?[]:null,o=new Mt(i),O=new Mt(e);for(let l=-1;;)if(o.ins==-1&&O.ins==-1){let a=Math.min(o.len,O.len);fe(r,a,-1),o.forward(a),O.forward(a)}else if(O.ins>=0&&(o.ins<0||l==o.i||o.off==0&&(O.len=0&&l=0){let a=0,h=o.len;for(;h;)if(O.ins==-1){let c=Math.min(h,O.len);a+=c,h-=c,O.forward(c)}else if(O.ins==0&&O.lenl||o.ins>=0&&o.len>l)&&(O||n.length>a),s.forward2(l),o.forward(l)}}}}var Mt=class{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i>1;return t>=e.length?q.empty:e[t]}textBit(e){let{inserted:t}=this.set,n=this.i-2>>1;return n>=t.length&&!e?q.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)}},si=class i{constructor(e,t,n){this.from=e,this.to=t,this.flags=n}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 bidiLevel(){let e=this.flags&7;return e==7?null:e}get goalColumn(){let e=this.flags>>6;return e==16777215?void 0:e}map(e,t=-1){let n,r;return this.empty?n=r=e.mapPos(this.from,t):(n=e.mapPos(this.from,1),r=e.mapPos(this.to,-1)),n==this.from&&r==this.to?this:new i(n,r,this.flags)}extend(e,t=e){if(e<=this.anchor&&t>=this.anchor)return S.range(e,t);let n=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return S.range(this.anchor,n)}eq(e){return this.anchor==e.anchor&&this.head==e.head}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 S.range(e.anchor,e.head)}static create(e,t,n){return new i(e,t,n)}},S=class i{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:i.create(this.ranges.map(n=>n.map(e,t)),this.mainIndex)}eq(e){if(this.ranges.length!=e.ranges.length||this.mainIndex!=e.mainIndex)return!1;for(let t=0;te.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 i(e.ranges.map(t=>si.fromJSON(t)),e.main)}static single(e,t=e){return new i([i.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,r=0;re?8:0)|s)}static normalized(e,t=0){let n=e[t];e.sort((r,s)=>r.from-s.from),t=e.indexOf(n);for(let r=1;rs.head?i.range(l,O):i.range(O,l))}}return new i(e,t)}};function Pl(i,e){for(let t of i.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}var ds=0,W=class i{constructor(e,t,n,r,s){this.combine=e,this.compareInput=t,this.compare=n,this.isStatic=r,this.id=ds++,this.default=e([]),this.extensions=typeof s=="function"?s(this):s}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:ps),!!e.static,e.enables)}of(e){return new ai([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new ai(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new ai(e,this,2,t)}from(e,t){return t||(t=n=>n),this.compute([e],n=>t(n.field(e)))}};function ps(i,e){return i==e||i.length==e.length&&i.every((t,n)=>t===e[n])}var ai=class{constructor(e,t,n,r){this.dependencies=e,this.facet=t,this.type=n,this.value=r,this.id=ds++}dynamicSlot(e){var t;let n=this.value,r=this.facet.compareInput,s=this.id,o=e[s]>>1,O=this.type==2,l=!1,a=!1,h=[];for(let c of this.dependencies)c=="doc"?l=!0:c=="selection"?a=!0:((t=e[c.id])!==null&&t!==void 0?t:1)&1||h.push(e[c.id]);return{create(c){return c.values[o]=n(c),1},update(c,f){if(l&&f.docChanged||a&&(f.docChanged||f.selection)||ss(c,h)){let d=n(c);if(O?!dl(d,c.values[o],r):!r(d,c.values[o]))return c.values[o]=d,1}return 0},reconfigure:(c,f)=>{let d,p=f.config.address[s];if(p!=null){let m=Cn(f,p);if(this.dependencies.every(g=>g instanceof W?f.facet(g)===c.facet(g):g instanceof $e?f.field(g,!1)==c.field(g,!1):!0)||(O?dl(d=n(c),m,r):r(d=n(c),m)))return c.values[o]=m,0}else d=n(c);return c.values[o]=d,1}}}};function dl(i,e,t){if(i.length!=e.length)return!1;for(let n=0;ni[l.id]),r=t.map(l=>l.type),s=n.filter(l=>!(l&1)),o=i[e.id]>>1;function O(l){let a=[];for(let h=0;hn===r),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(pl).find(n=>n.field==this);return(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,r)=>{let s=n.values[t],o=this.updateF(s,r);return this.compareF(s,o)?0:(n.values[t]=o,1)},reconfigure:(n,r)=>r.config.address[this.id]!=null?(n.values[t]=r.field(this),0):(n.values[t]=this.create(n),1)}}init(e){return[this,pl.of({field:this,create:e})]}get extension(){return this}},jt={lowest:4,low:3,default:2,high:1,highest:0};function Zi(i){return e=>new Yn(e,i)}var et={highest:Zi(jt.highest),high:Zi(jt.high),default:Zi(jt.default),low:Zi(jt.low),lowest:Zi(jt.lowest)},Yn=class{constructor(e,t){this.inner=e,this.prec=t}},ft=class i{of(e){return new Ci(this,e)}reconfigure(e){return i.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}},Ci=class{constructor(e,t){this.compartment=e,this.inner=t}},Vn=class i{constructor(e,t,n,r,s,o){for(this.base=e,this.compartments=t,this.dynamicSlots=n,this.address=r,this.staticValues=s,this.facets=o,this.statusTemplate=[];this.statusTemplate.length>1]}static resolve(e,t,n){let r=[],s=Object.create(null),o=new Map;for(let f of xd(e,t,o))f instanceof $e?r.push(f):(s[f.facet.id]||(s[f.facet.id]=[])).push(f);let O=Object.create(null),l=[],a=[];for(let f of r)O[f.id]=a.length<<1,a.push(d=>f.slot(d));let h=n?.config.facets;for(let f in s){let d=s[f],p=d[0].facet,m=h&&h[f]||[];if(d.every(g=>g.type==0))if(O[p.id]=l.length<<1|1,ps(m,d))l.push(n.facet(p));else{let g=p.combine(d.map($=>$.value));l.push(n&&p.compare(g,n.facet(p))?n.facet(p):g)}else{for(let g of d)g.type==0?(O[g.id]=l.length<<1|1,l.push(g.value)):(O[g.id]=a.length<<1,a.push($=>g.dynamicSlot($)));O[p.id]=a.length<<1,a.push(g=>Pd(g,p,d))}}let c=a.map(f=>f(O));return new i(e,o,c,O,l,s)}};function xd(i,e,t){let n=[[],[],[],[],[]],r=new Map;function s(o,O){let l=r.get(o);if(l!=null){if(l<=O)return;let a=n[l].indexOf(o);a>-1&&n[l].splice(a,1),o instanceof Ci&&t.delete(o.compartment)}if(r.set(o,O),Array.isArray(o))for(let a of o)s(a,O);else if(o instanceof Ci){if(t.has(o.compartment))throw new RangeError("Duplicate use of compartment in extensions");let a=e.get(o.compartment)||o.inner;t.set(o.compartment,a),s(a,O)}else if(o instanceof Yn)s(o.inner,o.prec);else if(o instanceof $e)n[O].push(o),o.provides&&s(o.provides,O);else if(o instanceof ai)n[O].push(o),o.facet.extensions&&s(o.facet.extensions,jt.default);else{let a=o.extension;if(!a)throw new Error(`Unrecognized extension value in extension set (${o}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);s(a,O)}}return s(i,jt.default),n.reduce((o,O)=>o.concat(O))}function Yi(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 r=i.computeSlot(i,i.config.dynamicSlots[t]);return i.status[t]=2|r}function Cn(i,e){return e&1?i.config.staticValues[e>>1]:i.values[e>>1]}var xl=W.define(),os=W.define({combine:i=>i.some(e=>e),static:!0}),wl=W.define({combine:i=>i.length?i[0]:void 0,static:!0}),kl=W.define(),vl=W.define(),Tl=W.define(),zl=W.define({combine:i=>i.length?i[0]:!1}),ke=class{constructor(e,t){this.type=e,this.value=t}static define(){return new Os}},Os=class{of(e){return new ke(this,e)}},ls=class{constructor(e){this.map=e}of(e){return new E(this,e)}},E=class i{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 i(this.type,t)}is(e){return this.type==e}static define(e={}){return new ls(e.map||(t=>t))}static mapEffects(e,t){if(!e.length)return e;let n=[];for(let r of e){let s=r.map(t);s&&n.push(s)}return n}};E.reconfigure=E.define();E.appendConfig=E.define();var se=class i{constructor(e,t,n,r,s,o){this.startState=e,this.changes=t,this.selection=n,this.effects=r,this.annotations=s,this.scrollIntoView=o,this._doc=null,this._state=null,n&&Pl(n,t.newLength),s.some(O=>O.type==i.time)||(this.annotations=s.concat(i.time.of(Date.now())))}static create(e,t,n,r,s,o){return new i(e,t,n,r,s,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(i.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}};se.time=ke.define();se.userEvent=ke.define();se.addToHistory=ke.define();se.remote=ke.define();function wd(i,e){let t=[];for(let n=0,r=0;;){let s,o;if(n=i[n]))s=i[n++],o=i[n++];else if(r=0;r--){let s=n[r](i);s instanceof se?i=s:Array.isArray(s)&&s.length==1&&s[0]instanceof se?i=s[0]:i=Wl(e,hi(s),!1)}return i}function vd(i){let e=i.startState,t=e.facet(Tl),n=i;for(let r=t.length-1;r>=0;r--){let s=t[r](i);s&&Object.keys(s).length&&(n=Xl(n,as(e,s,i.changes.newLength),!0))}return n==i?i:se.create(e,i.changes,i.selection,n.effects,n.annotations,n.scrollIntoView)}var Td=[];function hi(i){return i==null?Td:Array.isArray(i)?i:[i]}var qe=function(i){return i[i.Word=0]="Word",i[i.Space=1]="Space",i[i.Other=2]="Other",i}(qe||(qe={})),zd=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,hs;try{hs=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function Xd(i){if(hs)return hs.test(i);for(let e=0;e"\x80"&&(t.toUpperCase()!=t.toLowerCase()||zd.test(t)))return!0}return!1}function Wd(i){return e=>{if(!/\S/.test(e))return qe.Space;if(Xd(e))return qe.Word;for(let t=0;t-1)return qe.Word;return qe.Other}}var j=class i{constructor(e,t,n,r,s,o){this.config=e,this.doc=t,this.selection=n,this.values=r,this.status=e.statusTemplate.slice(),this.computeSlot=s,o&&(o._state=this);for(let O=0;Or.set(a,l)),t=null),r.set(O.value.compartment,O.value.extension)):O.is(E.reconfigure)?(t=null,n=O.value):O.is(E.appendConfig)&&(t=null,n=hi(n).concat(O.value));let s;t?s=e.startState.values.slice():(t=Vn.resolve(n,r,this),s=new i(t,this.doc,this.selection,t.dynamicSlots.map(()=>null),(l,a)=>a.reconfigure(l,this),null).values);let o=e.startState.facet(os)?e.newSelection:e.newSelection.asSingle();new i(t,e.newDoc,o,s,(O,l)=>l.update(O,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:S.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,n=e(t.ranges[0]),r=this.changes(n.changes),s=[n.range],o=hi(n.effects);for(let O=1;Oo.spec.fromJSON(O,l)))}}return i.create({doc:e.doc,selection:S.fromJSON(e.selection),extensions:t.extensions?r.concat([t.extensions]):r})}static create(e={}){let t=Vn.resolve(e.extensions||[],new Map),n=e.doc instanceof q?e.doc:q.of((e.doc||"").split(t.staticFacet(i.lineSeparator)||is)),r=e.selection?e.selection instanceof S?e.selection:S.single(e.selection.anchor,e.selection.head):S.single(0);return Pl(r,n.length),t.staticFacet(os)||(r=r.asSingle()),new i(t,n,r,t.dynamicSlots.map(()=>null),(s,o)=>o.create(s),null)}get tabSize(){return this.facet(i.tabSize)}get lineBreak(){return this.facet(i.lineSeparator)||` -`}get readOnly(){return this.facet(zl)}phrase(e,...t){for(let n of this.facet(i.phrases))if(Object.prototype.hasOwnProperty.call(n,e)){e=n[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(n,r)=>{if(r=="$")return"$";let s=+(r||1);return!s||s>t.length?n:t[s-1]})),e}languageDataAt(e,t,n=-1){let r=[];for(let s of this.facet(xl))for(let o of s(this,t,n))Object.prototype.hasOwnProperty.call(o,e)&&r.push(o[e]);return r}charCategorizer(e){return Wd(this.languageDataAt("wordChars",e).join(""))}wordAt(e){let{text:t,from:n,length:r}=this.doc.lineAt(e),s=this.charCategorizer(e),o=e-n,O=e-n;for(;o>0;){let l=le(t,o,!1);if(s(t.slice(l,o))!=qe.Word)break;o=l}for(;Oi.length?i[0]:4});j.lineSeparator=wl;j.readOnly=zl;j.phrases=W.define({compare(i,e){let t=Object.keys(i),n=Object.keys(e);return t.length==n.length&&t.every(r=>i[r]==e[r])}});j.languageData=xl;j.changeFilter=kl;j.transactionFilter=vl;j.transactionExtender=Tl;ft.reconfigure=E.define();function bt(i,e,t={}){let n={};for(let r of i)for(let s of Object.keys(r)){let o=r[s],O=n[s];if(O===void 0)n[s]=o;else if(!(O===o||o===void 0))if(Object.hasOwnProperty.call(t,s))n[s]=t[s](O,o);else throw new Error("Config merge conflict for field "+s)}for(let r in e)n[r]===void 0&&(n[r]=e[r]);return n}var Ie=class{eq(e){return this==e}range(e,t=e){return qi.create(e,t,this)}};Ie.prototype.startSide=Ie.prototype.endSide=0;Ie.prototype.point=!1;Ie.prototype.mapMode=Oe.TrackDel;var qi=class i{constructor(e,t,n){this.from=e,this.to=t,this.value=n}static create(e,t,n){return new i(e,t,n)}};function cs(i,e){return i.from-e.from||i.value.startSide-e.value.startSide}var fs=class i{constructor(e,t,n,r){this.from=e,this.to=t,this.value=n,this.maxPoint=r}get length(){return this.to[this.to.length-1]}findIndex(e,t,n,r=0){let s=n?this.to:this.from;for(let o=r,O=s.length;;){if(o==O)return o;let l=o+O>>1,a=s[l]-e||(n?this.value[l].endSide:this.value[l].startSide)-t;if(l==o)return a>=0?o:O;a>=0?O=l:o=l+1}}between(e,t,n,r){for(let s=this.findIndex(t,-1e9,!0),o=this.findIndex(n,1e9,!1,s);sd||f==d&&a.startSide>0&&a.endSide<=0)continue;(d-f||a.endSide-a.startSide)<0||(o<0&&(o=f),a.point&&(O=Math.max(O,d-f)),n.push(a),r.push(f-o),s.push(d-o))}return{mapped:n.length?new i(r,s,n,O):null,pos:o}}},B=class i{constructor(e,t,n,r){this.chunkPos=e,this.chunk=t,this.nextLayer=n,this.maxPoint=r}static create(e,t,n,r){return new i(e,t,n,r)}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:r=0,filterTo:s=this.length}=e,o=e.filter;if(t.length==0&&!o)return this;if(n&&(t=t.slice().sort(cs)),this.isEmpty)return t.length?i.of(t):this;let O=new qn(this,null,-1).goto(0),l=0,a=[],h=new It;for(;O.value||l=0){let c=t[l++];h.addInner(c.from,c.to,c.value)||a.push(c)}else O.rangeIndex==1&&O.chunkIndexthis.chunkEnd(O.chunkIndex)||sO.to||s=s&&e<=s+o.length&&o.between(s,e-s,t-s,n)===!1)return}this.nextLayer.between(e,t,n)}}iter(e=0){return Ui.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return Ui.from(e).goto(t)}static compare(e,t,n,r,s=-1){let o=e.filter(c=>c.maxPoint>0||!c.isEmpty&&c.maxPoint>=s),O=t.filter(c=>c.maxPoint>0||!c.isEmpty&&c.maxPoint>=s),l=ml(o,O,n),a=new Et(o,l,s),h=new Et(O,l,s);n.iterGaps((c,f,d)=>gl(a,c,h,f,d,r)),n.empty&&n.length==0&&gl(a,0,h,0,0,r)}static eq(e,t,n=0,r){r==null&&(r=1e9-1);let s=e.filter(h=>!h.isEmpty&&t.indexOf(h)<0),o=t.filter(h=>!h.isEmpty&&e.indexOf(h)<0);if(s.length!=o.length)return!1;if(!s.length)return!0;let O=ml(s,o),l=new Et(s,O,0).goto(n),a=new Et(o,O,0).goto(n);for(;;){if(l.to!=a.to||!us(l.active,a.active)||l.point&&(!a.point||!l.point.eq(a.point)))return!1;if(l.to>r)return!0;l.next(),a.next()}}static spans(e,t,n,r,s=-1){let o=new Et(e,null,s).goto(t),O=t,l=o.openStart;for(;;){let a=Math.min(o.to,n);if(o.point){let h=o.activeForPoint(o.to),c=o.pointFromO&&(r.span(O,a,o.active,l),l=o.openEnd(a));if(o.to>n)return l+(o.point&&o.to>n?1:0);O=o.to,o.next()}}static of(e,t=!1){let n=new It;for(let r of e instanceof qi?[e]:t?Rd(e):e)n.add(r.from,r.to,r.value);return n.finish()}};B.empty=new B([],[],null,-1);function Rd(i){if(i.length>1)for(let e=i[0],t=1;t0)return i.slice().sort(cs);e=n}return i}B.empty.nextLayer=B.empty;var It=class i{finishChunk(e){this.chunks.push(new fs(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 i)).add(e,t,n)}addInner(e,t,n){let r=e-this.lastTo||n.startSide-this.last.endSide;if(r<=0&&(e-this.lastFrom||n.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return r<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(B.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let t=B.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}};function ml(i,e,t){let n=new Map;for(let s of i)for(let o=0;o=this.minPoint)break}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex=n&&r.push(new qn(o,t,n,s));return r.length==1?r[0]:new i(r)}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--)es(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--)es(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(),es(this.heap,0)}}};function es(i,e){for(let t=i[e];;){let n=(e<<1)+1;if(n>=i.length)break;let r=i[n];if(n+1=0&&(r=i[n+1],n++),t.compare(r)<0)break;i[n]=t,i[e]=r,e=n}}var Et=class{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=Ui.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){zn(this.active,e),zn(this.activeTo,e),zn(this.activeRank,e),this.minActive=$l(this.active,this.activeTo)}addActive(e){let t=0,{value:n,to:r,rank:s}=this.cursor;for(;t-1&&(this.activeTo[r]-this.cursor.from||this.active[r].endSide-this.cursor.startSide)<0){if(this.activeTo[r]>e){this.to=this.activeTo[r],this.endSide=this.active[r].endSide;break}this.removeActive(r),n&&zn(n,r)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let s=this.cursor.value;if(!s.point)this.addActive(n),this.cursor.next();else if(t&&this.cursor.to==this.to&&this.cursor.from=0&&n[r]=0&&!(this.activeRank[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 gl(i,e,t,n,r,s){i.goto(e),t.goto(n);let o=n+r,O=n,l=n-e;for(;;){let a=i.to+l-t.to||i.endSide-t.endSide,h=a<0?i.to+l:t.to,c=Math.min(h,o);if(i.point||t.point?i.point&&t.point&&(i.point==t.point||i.point.eq(t.point))&&us(i.activeForPoint(i.to),t.activeForPoint(t.to))||s.comparePoint(O,c,i.point,t.point):c>O&&!us(i.active,t.active)&&s.compareRange(O,c,i.active,t.active),h>o)break;O=h,a<=0&&i.next(),a>=0&&t.next()}}function us(i,e){if(i.length!=e.length)return!1;for(let t=0;t=e;n--)i[n+1]=i[n];i[e]=t}function $l(i,e){let t=-1,n=1e9;for(let r=0;r=e)return r;if(r==i.length)break;s+=i.charCodeAt(r)==9?t-s%t:1,r=le(i,r)}return n===!0?-1:i.length}var ms="\u037C",Rl=typeof Symbol>"u"?"__"+ms:Symbol.for(ms),gs=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),Zl=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{},Ue=class{constructor(e,t){this.rules=[];let{finish:n}=t||{};function r(o){return/^@/.test(o)?[o]:o.split(/,\s*/)}function s(o,O,l,a){let h=[],c=/^@(\w+)\b/.exec(o[0]),f=c&&c[1]=="keyframes";if(c&&O==null)return l.push(o[0]+";");for(let d in O){let p=O[d];if(/&/.test(d))s(d.split(/,\s*/).map(m=>o.map(g=>m.replace(/&/,g))).reduce((m,g)=>m.concat(g)),p,l);else if(p&&typeof p=="object"){if(!c)throw new RangeError("The value of a property ("+d+") should be a primitive value.");s(r(d),p,h,f)}else p!=null&&h.push(d.replace(/_.*/,"").replace(/[A-Z]/g,m=>"-"+m.toLowerCase())+": "+p+";")}(h.length||f)&&l.push((n&&!c&&!a?o.map(n):o).join(", ")+" {"+h.join(" ")+"}")}for(let o in e)s(r(o),e[o],this.rules)}getRules(){return this.rules.join(` -`)}static newName(){let e=Zl[Rl]||1;return Zl[Rl]=e+1,ms+e.toString(36)}static mount(e,t,n){let r=e[gs],s=n&&n.nonce;r?s&&r.setNonce(s):r=new $s(e,s),r.mount(Array.isArray(t)?t:[t])}},Yl=new Map,$s=class{constructor(e,t){let n=e.ownerDocument||e,r=n.defaultView;if(!e.head&&e.adoptedStyleSheets&&r.CSSStyleSheet){let s=Yl.get(n);if(s)return e.adoptedStyleSheets=[s.sheet,...e.adoptedStyleSheets],e[gs]=s;this.sheet=new r.CSSStyleSheet,e.adoptedStyleSheets=[this.sheet,...e.adoptedStyleSheets],Yl.set(n,this)}else{this.styleTag=n.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);let s=e.head||e;s.insertBefore(this.styleTag,s.firstChild)}this.modules=[],e[gs]=this}mount(e){let t=this.sheet,n=0,r=0;for(let s=0;s-1&&(this.modules.splice(O,1),r--,O=-1),O==-1){if(this.modules.splice(r++,0,o),t)for(let l=0;l",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},Zd=typeof navigator<"u"&&/Mac/.test(navigator.platform),Yd=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(ee=0;ee<10;ee++)ut[48+ee]=ut[96+ee]=String(ee);var ee;for(ee=1;ee<=24;ee++)ut[ee+111]="F"+ee;var ee;for(ee=65;ee<=90;ee++)ut[ee]=String.fromCharCode(ee+32),fi[ee]=String.fromCharCode(ee);var ee;for(_n in ut)fi.hasOwnProperty(_n)||(fi[_n]=ut[_n]);var _n;function Vl(i){var e=Zd&&i.metaKey&&i.shiftKey&&!i.ctrlKey&&!i.altKey||Yd&&i.shiftKey&&i.key&&i.key.length==1||i.key=="Unidentified",t=!e&&i.key||(i.shiftKey?fi:ut)[i.keyCode]||i.key||"Unidentified";return t=="Esc"&&(t="Escape"),t=="Del"&&(t="Delete"),t=="Left"&&(t="ArrowLeft"),t=="Up"&&(t="ArrowUp"),t=="Right"&&(t="ArrowRight"),t=="Down"&&(t="ArrowDown"),t}function er(i){let e;return i.nodeType==11?e=i.getSelection?i:i.ownerDocument:e=i,e.getSelection()}function xs(i,e){return e?i==e||i.contains(e.nodeType!=1?e.parentNode:e):!1}function Vd(i){let e=i.activeElement;for(;e&&e.shadowRoot;)e=e.shadowRoot.activeElement;return e}function Dn(i,e){if(!e.anchorNode)return!1;try{return xs(i,e.anchorNode)}catch{return!1}}function Ni(i){return i.nodeType==3?Lt(i,0,i.nodeValue.length).getClientRects():i.nodeType==1?i.getClientRects():[]}function tr(i,e,t,n){return t?Cl(i,e,t,n,-1)||Cl(i,e,t,n,1):!1}function Fi(i){for(var e=0;;e++)if(i=i.previousSibling,!i)return e}function Cl(i,e,t,n,r){for(;;){if(i==t&&e==n)return!0;if(e==(r<0?0:dt(i))){if(i.nodeName=="DIV")return!1;let s=i.parentNode;if(!s||s.nodeType!=1)return!1;e=Fi(i)+(r<0?0:1),i=s}else if(i.nodeType==1){if(i=i.childNodes[e+(r<0?-1:0)],i.nodeType==1&&i.contentEditable=="false")return!1;e=r<0?dt(i):0}else return!1}}function dt(i){return i.nodeType==3?i.nodeValue.length:i.childNodes.length}function oo(i,e){let t=e?i.left:i.right;return{left:t,right:t,top:i.top,bottom:i.bottom}}function Cd(i){return{left:0,right:i.innerWidth,top:0,bottom:i.innerHeight}}function ga(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 qd(i,e,t,n,r,s,o,O){let l=i.ownerDocument,a=l.defaultView||window;for(let h=i,c=!1;h&&!c;)if(h.nodeType==1){let f,d=h==l.body,p=1,m=1;if(d)f=Cd(a);else{if(/^(fixed|sticky)$/.test(getComputedStyle(h).position)&&(c=!0),h.scrollHeight<=h.clientHeight&&h.scrollWidth<=h.clientWidth){h=h.assignedSlot||h.parentNode;continue}let Q=h.getBoundingClientRect();({scaleX:p,scaleY:m}=ga(h,Q)),f={left:Q.left,right:Q.left+h.clientWidth*p,top:Q.top,bottom:Q.top+h.clientHeight*m}}let g=0,$=0;if(r=="nearest")e.top0&&e.bottom>f.bottom+$&&($=e.bottom-f.bottom+$+o)):e.bottom>f.bottom&&($=e.bottom-f.bottom+o,t<0&&e.top-$0&&e.right>f.right+g&&(g=e.right-f.right+g+s)):e.right>f.right&&(g=e.right-f.right+s,t<0&&e.leftt.clientHeight||t.scrollWidth>t.clientWidth)return t;t=t.assignedSlot||t.parentNode}else if(t.nodeType==11)t=t.host;else break;return null}var ws=class{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?dt(t):0),n,Math.min(e.focusOffset,n?dt(n):0))}set(e,t,n,r){this.anchorNode=e,this.anchorOffset=t,this.focusNode=n,this.focusOffset=r}},ui=null;function $a(i){if(i.setActive)return i.setActive();if(ui)return i.focus(ui);let e=[];for(let t=i;t&&(e.push(t,t.scrollTop,t.scrollLeft),t!=t.ownerDocument);t=t.parentNode);if(i.focus(ui==null?{get preventScroll(){return ui={preventScroll:!0},!0}}:void 0),!ui){ui=!1;for(let t=0;tMath.max(1,i.scrollHeight-i.clientHeight-4)}var Se=class i{constructor(e,t,n=!0){this.node=e,this.offset=t,this.precise=n}static before(e,t){return new i(e.parentNode,Fi(e),t)}static after(e,t){return new i(e.parentNode,Fi(e)+1,t)}},Oo=[],N=class i{constructor(){this.parent=null,this.dom=null,this.flags=2}get overrideDOMText(){return null}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e){let t=this.posAtStart;for(let n of this.children){if(n==e)return t;t+=n.length+n.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}sync(e,t){if(this.flags&2){let n=this.dom,r=null,s;for(let o of this.children){if(o.flags&7){if(!o.dom&&(s=r?r.nextSibling:n.firstChild)){let O=i.get(s);(!O||!O.parent&&O.canReuseDOM(o))&&o.reuseDOM(s)}o.sync(e,t),o.flags&=-8}if(s=r?r.nextSibling:n.firstChild,t&&!t.written&&t.node==n&&s!=o.dom&&(t.written=!0),o.dom.parentNode==n)for(;s&&s!=o.dom;)s=Ul(s);else n.insertBefore(o.dom,s);r=o.dom}for(s=r?r.nextSibling:n.firstChild,s&&t&&t.node==n&&(t.written=!0);s;)s=Ul(s)}else if(this.flags&1)for(let n of this.children)n.flags&7&&(n.sync(e,t),n.flags&=-8)}reuseDOM(e){}localPosFromDOM(e,t){let n;if(e==this.dom)n=this.dom.childNodes[t];else{let r=dt(e)==0?0:t==0?-1:1;for(;;){let s=e.parentNode;if(s==this.dom)break;r==0&&s.firstChild!=s.lastChild&&(e==s.firstChild?r=-1:r=1),e=s}r<0?n=e:n=e.nextSibling}if(n==this.dom.firstChild)return 0;for(;n&&!i.get(n);)n=n.nextSibling;if(!n)return this.length;for(let r=0,s=0;;r++){let o=this.children[r];if(o.dom==n)return s;s+=o.length+o.breakAfter}}domBoundsAround(e,t,n=0){let r=-1,s=-1,o=-1,O=-1;for(let l=0,a=n,h=n;lt)return c.domBoundsAround(e,t,a);if(f>=e&&r==-1&&(r=l,s=a),a>t&&c.dom.parentNode==this.dom){o=l,O=h;break}h=f,a=f+c.breakAfter}return{from:s,to:O<0?n+this.length:O,startDOM:(r?this.children[r-1].dom.nextSibling:null)||this.dom.firstChild,endDOM:o=0?this.children[o].dom:null}}markDirty(e=!1){this.flags|=2,this.markParentsDirty(e)}markParentsDirty(e){for(let t=this.parent;t;t=t.parent){if(e&&(t.flags|=2),t.flags&1)return;t.flags|=1,e=!1}}setParent(e){this.parent!=e&&(this.parent=e,this.flags&7&&this.markParentsDirty(!0))}setDOM(e){this.dom!=e&&(this.dom&&(this.dom.cmView=null),this.dom=e,e.cmView=this)}get rootView(){for(let e=this;;){let t=e.parent;if(!t)return e;e=t}}replaceChildren(e,t,n=Oo){this.markDirty();for(let r=e;rthis.pos||e==this.pos&&(t>0||this.i==0||this.children[this.i-1].breakAfter))return this.off=e-this.pos,this;let n=this.children[--this.i];this.pos-=n.length+n.breakAfter}}};function ya(i,e,t,n,r,s,o,O,l){let{children:a}=i,h=a.length?a[e]:null,c=s.length?s[s.length-1]:null,f=c?c.breakAfter:o;if(!(e==n&&h&&!o&&!f&&s.length<2&&h.merge(t,r,s.length?c:null,t==0,O,l))){if(n0&&(!o&&s.length&&h.merge(t,h.length,s[0],!1,O,0)?h.breakAfter=s.shift().breakAfter:(t2),z={mac:jl||/Mac/.test(Xe.platform),windows:/Win/.test(Xe.platform),linux:/Linux|X11/.test(Xe.platform),ie:dr,ie_version:Pa?ks.documentMode||6:Ts?+Ts[1]:vs?+vs[1]:0,gecko:_l,gecko_version:_l?+(/Firefox\/(\d+)/.exec(Xe.userAgent)||[0,0])[1]:0,chrome:!!Ss,chrome_version:Ss?+Ss[1]:0,ios:jl,android:/Android\b/.test(Xe.userAgent),webkit:Al,safari:xa,webkit_version:Al?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0,tabSize:ks.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"},jd=256,wt=class i extends N{constructor(e){super(),this.text=e}get length(){return this.text.length}createDOM(e){this.setDOM(e||document.createTextNode(this.text))}sync(e,t){this.dom||this.createDOM(),this.dom.nodeValue!=this.text&&(t&&t.node==this.dom&&(t.written=!0),this.dom.nodeValue=this.text)}reuseDOM(e){e.nodeType==3&&this.createDOM(e)}merge(e,t,n){return this.flags&8||n&&(!(n instanceof i)||this.length-(t-e)+n.length>jd||n.flags&8)?!1:(this.text=this.text.slice(0,e)+(n?n.text:"")+this.text.slice(t),this.markDirty(),!0)}split(e){let t=new i(this.text.slice(e));return this.text=this.text.slice(0,e),this.markDirty(),t.flags|=this.flags&8,t}localPosFromDOM(e,t){return e==this.dom?t:t?this.text.length:0}domAtPos(e){return new Se(this.dom,e)}domBoundsAround(e,t,n){return{from:n,to:n+this.length,startDOM:this.dom,endDOM:this.dom.nextSibling}}coordsAt(e,t){return Ed(this.dom,e,t)}},kt=class i extends N{constructor(e,t=[],n=0){super(),this.mark=e,this.children=t,this.length=n;for(let r of t)r.setParent(this)}setAttrs(e){if(Sa(e),this.mark.class&&(e.className=this.mark.class),this.mark.attrs)for(let t in this.mark.attrs)e.setAttribute(t,this.mark.attrs[t]);return e}canReuseDOM(e){return super.canReuseDOM(e)&&!((this.flags|e.flags)&8)}reuseDOM(e){e.nodeName==this.mark.tagName.toUpperCase()&&(this.setDOM(e),this.flags|=6)}sync(e,t){this.dom?this.flags&4&&this.setAttrs(this.dom):this.setDOM(this.setAttrs(document.createElement(this.mark.tagName))),super.sync(e,t)}merge(e,t,n,r,s,o){return n&&(!(n instanceof i&&n.mark.eq(this.mark))||e&&s<=0||te&&t.push(n=e&&(r=s),n=l,s++}let o=this.length-e;return this.length=e,r>-1&&(this.children.length=r,this.markDirty()),new i(this.mark,t,o)}domAtPos(e){return wa(this,e)}coordsAt(e,t){return va(this,e,t)}};function Ed(i,e,t){let n=i.nodeValue.length;e>n&&(e=n);let r=e,s=e,o=0;e==0&&t<0||e==n&&t>=0?z.chrome||z.gecko||(e?(r--,o=1):s=0)?0:O.length-1];return z.safari&&!o&&l.width==0&&(l=Array.prototype.find.call(O,a=>a.width)||l),o?oo(l,o<0):l||null}var nr=class i extends N{static create(e,t,n){return new i(e,t,n)}constructor(e,t,n){super(),this.widget=e,this.length=t,this.side=n,this.prevWidget=null}split(e){let t=i.create(this.widget,this.length-e,this.side);return this.length-=e,t}sync(e){(!this.dom||!this.widget.updateDOM(this.dom,e))&&(this.dom&&this.prevWidget&&this.prevWidget.destroy(this.dom),this.prevWidget=null,this.setDOM(this.widget.toDOM(e)),this.dom.contentEditable="false")}getSide(){return this.side}merge(e,t,n,r,s,o){return n&&(!(n instanceof i)||!this.widget.compare(n.widget)||e>0&&s<=0||t0)?Se.before(this.dom):Se.after(this.dom,e==this.length)}domBoundsAround(){return null}coordsAt(e,t){let n=this.widget.coordsAt(this.dom,e,t);if(n)return n;let r=this.dom.getClientRects(),s=null;if(!r.length)return null;let o=this.side?this.side<0:e>0;for(let O=o?r.length-1:0;s=r[O],!(e>0?O==0:O==r.length-1||s.top0?Se.before(this.dom):Se.after(this.dom)}localPosFromDOM(){return 0}domBoundsAround(){return null}coordsAt(e){return this.dom.getBoundingClientRect()}get overrideDOMText(){return q.empty}get isHidden(){return!0}};wt.prototype.children=nr.prototype.children=Hi.prototype.children=Oo;function wa(i,e){let t=i.dom,{children:n}=i,r=0;for(let s=0;rs&&e0;s--){let o=n[s-1];if(o.dom.parentNode==t)return o.domAtPos(o.length)}for(let s=r;s0&&e instanceof kt&&r.length&&(n=r[r.length-1])instanceof kt&&n.mark.eq(e.mark)?ka(n,e.children[0],t-1):(r.push(e),e.setParent(i)),i.length+=e.length}function va(i,e,t){let n=null,r=-1,s=null,o=-1;function O(a,h){for(let c=0,f=0;c=h&&(d.children.length?O(d,h-f):(!s||s.isHidden&&t>0)&&(p>h||f==p&&d.getSide()>0)?(s=d,o=h-f):(f-1?1:0)!=r.length-(t&&r.indexOf(t)>-1?1:0))return!1;for(let s of n)if(s!=t&&(r.indexOf(s)==-1||i[s]!==e[s]))return!1;return!0}function Xs(i,e,t){let n=!1;if(e)for(let r in e)t&&r in t||(n=!0,r=="style"?i.style.cssText="":i.removeAttribute(r));if(t)for(let r in t)e&&e[r]==t[r]||(n=!0,r=="style"?i.style.cssText=t[r]:i.setAttribute(r,t[r]));return n}function Md(i){let e=Object.create(null);for(let t=0;t0&&this.children[n-1].length==0;)this.children[--n].destroy();return this.children.length=n,this.markDirty(),this.length=e,t}transferDOM(e){this.dom&&(this.markDirty(),e.setDOM(this.dom),e.prevAttrs=this.prevAttrs===void 0?this.attrs:this.prevAttrs,this.prevAttrs=void 0,this.dom=null)}setDeco(e){lo(this.attrs,e)||(this.dom&&(this.prevAttrs=this.attrs,this.markDirty()),this.attrs=e)}append(e,t){ka(this,e,t)}addLineDeco(e){let t=e.spec.attributes,n=e.spec.class;t&&(this.attrs=zs(t,this.attrs||{})),n&&(this.attrs=zs({class:n},this.attrs||{}))}domAtPos(e){return wa(this,e)}reuseDOM(e){e.nodeName=="DIV"&&(this.setDOM(e),this.flags|=6)}sync(e,t){var n;this.dom?this.flags&4&&(Sa(this.dom),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0):(this.setDOM(document.createElement("div")),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0),this.prevAttrs!==void 0&&(Xs(this.dom,this.prevAttrs,this.attrs),this.dom.classList.add("cm-line"),this.prevAttrs=void 0),super.sync(e,t);let r=this.dom.lastChild;for(;r&&N.get(r)instanceof kt;)r=r.lastChild;if(!r||!this.length||r.nodeName!="BR"&&((n=N.get(r))===null||n===void 0?void 0:n.isEditable)==!1&&(!z.ios||!this.children.some(s=>s instanceof wt))){let s=document.createElement("BR");s.cmIgnore=!0,this.dom.appendChild(s)}}measureTextSize(){if(this.children.length==0||this.length>20)return null;let e=0,t;for(let n of this.children){if(!(n instanceof wt)||/[^ -~]/.test(n.text))return null;let r=Ni(n.dom);if(r.length!=1)return null;e+=r[0].width,t=r[0].height}return e?{lineHeight:this.dom.getBoundingClientRect().height,charWidth:e/this.length,textHeight:t}:null}coordsAt(e,t){let n=va(this,e,t);if(!this.children.length&&n&&this.parent){let{heightOracle:r}=this.parent.view.viewState,s=n.bottom-n.top;if(Math.abs(s-r.lineHeight)<2&&r.textHeight=t){if(s instanceof i)return s;if(o>t)break}r=o+s.breakAfter}return null}},gi=class i extends N{constructor(e,t,n){super(),this.widget=e,this.length=t,this.deco=n,this.breakAfter=0,this.prevWidget=null}merge(e,t,n,r,s,o){return n&&(!(n instanceof i)||!this.widget.compare(n.widget)||e>0&&s<=0||t0}},vt=class{eq(e){return!1}updateDOM(e,t){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}destroy(e){}},Qe=function(i){return i[i.Text=0]="Text",i[i.WidgetBefore=1]="WidgetBefore",i[i.WidgetAfter=2]="WidgetAfter",i[i.WidgetRange=3]="WidgetRange",i}(Qe||(Qe={})),I=class extends Ie{constructor(e,t,n,r){super(),this.startSide=e,this.endSide=t,this.widget=n,this.spec=r}get heightRelevant(){return!1}static mark(e){return new Ki(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 Tt(e,t,t,n,e.widget||null,!1)}static replace(e){let t=!!e.block,n,r;if(e.isBlockGap)n=-5e8,r=4e8;else{let{start:s,end:o}=Ta(e,t);n=(s?t?-3e8:-1:5e8)-1,r=(o?t?2e8:1:-6e8)+1}return new Tt(e,n,r,t,e.widget||null,!0)}static line(e){return new Ji(e)}static set(e,t=!1){return B.of(e,t)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}};I.none=B.empty;var Ki=class i extends I{constructor(e){let{start:t,end:n}=Ta(e);super(t?-1:5e8,n?1:-6e8,null,e),this.tagName=e.tagName||"span",this.class=e.class||"",this.attrs=e.attributes||null}eq(e){var t,n;return this==e||e instanceof i&&this.tagName==e.tagName&&(this.class||((t=this.attrs)===null||t===void 0?void 0:t.class))==(e.class||((n=e.attrs)===null||n===void 0?void 0:n.class))&&lo(this.attrs,e.attrs,"class")}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}};Ki.prototype.point=!1;var Ji=class i extends I{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof i&&this.spec.class==e.spec.class&&lo(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)}};Ji.prototype.mapMode=Oe.TrackBefore;Ji.prototype.point=!0;var Tt=class i extends I{constructor(e,t,n,r,s,o){super(t,n,s,e),this.block=r,this.isReplace=o,this.mapMode=r?t<=0?Oe.TrackBefore:Oe.TrackAfter:Oe.TrackDel}get type(){return this.startSide!=this.endSide?Qe.WidgetRange:this.startSide<=0?Qe.WidgetBefore:Qe.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof i&&Id(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)}};Tt.prototype.point=!0;function Ta(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 Id(i,e){return i==e||!!(i&&e&&i.compare(e))}function Ws(i,e,t,n=0){let r=t.length-1;r>=0&&t[r]+n>=i?t[r]=Math.max(t[r],e):t.push(i,e)}var Mi=class i{constructor(e,t,n,r){this.doc=e,this.pos=t,this.end=n,this.disallowBlockEffectsFor=r,this.content=[],this.curLine=null,this.breakAtStart=0,this.pendingBuffer=0,this.bufferMarks=[],this.atCursorPos=!0,this.openStart=-1,this.openEnd=-1,this.text="",this.textOff=0,this.cursor=e.iter(),this.skip=t}posCovered(){if(this.content.length==0)return!this.breakAtStart&&this.doc.lineAt(this.pos).from!=this.pos;let e=this.content[this.content.length-1];return!(e.breakAfter||e instanceof gi&&e.deco.endSide<0)}getLine(){return this.curLine||(this.content.push(this.curLine=new ae),this.atCursorPos=!0),this.curLine}flushBuffer(e=this.bufferMarks){this.pendingBuffer&&(this.curLine.append(An(new Hi(-1),e),e.length),this.pendingBuffer=0)}addBlockWidget(e){this.flushBuffer(),this.curLine=null,this.content.push(e)}finish(e){this.pendingBuffer&&e<=this.bufferMarks.length?this.flushBuffer():this.pendingBuffer=0,!this.posCovered()&&!(e&&this.content.length&&this.content[this.content.length-1]instanceof gi)&&this.getLine()}buildText(e,t,n){for(;e>0;){if(this.textOff==this.text.length){let{value:s,lineBreak:o,done:O}=this.cursor.next(this.skip);if(this.skip=0,O)throw new Error("Ran out of text content when drawing inline views");if(o){this.posCovered()||this.getLine(),this.content.length?this.content[this.content.length-1].breakAfter=1:this.breakAtStart=1,this.flushBuffer(),this.curLine=null,this.atCursorPos=!0,e--;continue}else this.text=s,this.textOff=0}let r=Math.min(this.text.length-this.textOff,e,512);this.flushBuffer(t.slice(t.length-n)),this.getLine().append(An(new wt(this.text.slice(this.textOff,this.textOff+r)),t),n),this.atCursorPos=!0,this.textOff+=r,e-=r,n=0}}span(e,t,n,r){this.buildText(t-e,n,r),this.pos=t,this.openStart<0&&(this.openStart=r)}point(e,t,n,r,s,o){if(this.disallowBlockEffectsFor[o]&&n instanceof Tt){if(n.block)throw new RangeError("Block decorations may not be specified via plugins");if(t>this.doc.lineAt(this.pos).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}let O=t-e;if(n instanceof Tt)if(n.block)n.startSide>0&&!this.posCovered()&&this.getLine(),this.addBlockWidget(new gi(n.widget||new rr("div"),O,n));else{let l=nr.create(n.widget||new rr("span"),O,O?0:n.startSide),a=this.atCursorPos&&!l.isEditable&&s<=r.length&&(e0),h=!l.isEditable&&(er.length||n.startSide<=0),c=this.getLine();this.pendingBuffer==2&&!a&&!l.isEditable&&(this.pendingBuffer=0),this.flushBuffer(r),a&&(c.append(An(new Hi(1),r),s),s=r.length+Math.max(0,s-r.length)),c.append(An(l,r),s),this.atCursorPos=h,this.pendingBuffer=h?er.length?1:2:0,this.pendingBuffer&&(this.bufferMarks=r.slice())}else this.doc.lineAt(this.pos).from==this.pos&&this.getLine().addLineDeco(n);O&&(this.textOff+O<=this.text.length?this.textOff+=O:(this.skip+=O-(this.text.length-this.textOff),this.text="",this.textOff=0),this.pos=t),this.openStart<0&&(this.openStart=s)}static build(e,t,n,r,s){let o=new i(e,t,n,s);return o.openEnd=B.spans(r,t,n,o),o.openStart<0&&(o.openStart=o.openEnd),o.finish(o.openEnd),o}};function An(i,e){for(let t of e)i=new kt(t,[i],i.length);return i}var rr=class extends vt{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}},za=W.define(),Xa=W.define(),Wa=W.define(),Ra=W.define(),Rs=W.define(),Za=W.define(),Ya=W.define(),Va=W.define({combine:i=>i.some(e=>e)}),Ca=W.define({combine:i=>i.some(e=>e)}),Ii=class i{constructor(e,t="nearest",n="nearest",r=5,s=5,o=!1){this.range=e,this.y=t,this.x=n,this.yMargin=r,this.xMargin=s,this.isSnapshot=o}map(e){return e.empty?this:new i(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 i(S.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}},jn=E.define({map:(i,e)=>i.map(e)});function rt(i,e,t){let n=i.facet(Ra);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)}var pr=W.define({combine:i=>i.length?i[0]:!0}),Ld=0,_i=W.define(),Ae=class i{constructor(e,t,n,r,s){this.id=e,this.create=t,this.domEventHandlers=n,this.domEventObservers=r,this.extension=s(this)}static define(e,t){let{eventHandlers:n,eventObservers:r,provide:s,decorations:o}=t||{};return new i(Ld++,e,n,r,O=>{let l=[_i.of(O)];return o&&l.push(en.of(a=>{let h=a.plugin(O);return h?o(h):I.none})),s&&l.push(s(O)),l})}static fromClass(e,t){return i.define(n=>new e(n),t)}},Li=class{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}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(rt(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.create(e)}catch(t){rt(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){rt(e.state,n,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}},qa=W.define(),ao=W.define(),en=W.define(),ho=W.define(),Ua=W.define();function Gl(i,e,t){let n=i.state.facet(Ua);if(!n.length)return n;let r=n.map(o=>o instanceof Function?o(i):o),s=[];return B.spans(r,e,t,{point(){},span(o,O,l,a){let h=s;for(let c=l.length-1;c>=0;c--,a--){let f=l[c].spec.bidiIsolate,d;if(f!=null)if(a>0&&h.length&&(d=h[h.length-1]).to==o&&d.direction==f)d.to=O,h=d.inner;else{let p={from:o,to:O,direction:f,inner:[]};h.push(p),h=p.inner}}}}),s}var _a=W.define();function Aa(i){let e=0,t=0,n=0,r=0;for(let s of i.state.facet(_a)){let o=s(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&&(r=Math.max(r,o.bottom)))}return{left:e,right:t,top:n,bottom:r}}var Ai=W.define(),st=class i{constructor(e,t,n,r){this.fromA=e,this.toA=t,this.fromB=n,this.toB=r}join(e){return new i(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 r=e[t-1];if(!(r.fromA>n.toA)){if(r.toAh)break;s+=2}if(!l)return n;new i(l.fromA,l.toA,l.fromB,l.toB).addToSet(n),o=l.toA,O=l.toB}}},sr=class i{constructor(e,t,n){this.view=e,this.state=t,this.transactions=n,this.flags=0,this.startState=e.state,this.changes=ge.empty(this.startState.doc.length);for(let s of n)this.changes=this.changes.compose(s.changes);let r=[];this.changes.iterChangedRanges((s,o,O,l)=>r.push(new st(s,o,O,l))),this.changedRanges=r}static create(e,t,n){return new i(e,t,n)}get viewportChanged(){return(this.flags&4)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&10)>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}},K=function(i){return i[i.LTR=0]="LTR",i[i.RTL=1]="RTL",i}(K||(K={})),tn=K.LTR,ja=K.RTL;function Ea(i){let e=[];for(let t=0;t=t){if(O.level==n)return o;(s<0||(r!=0?r<0?O.fromt:e[s].level>O.level))&&(s=o)}}if(s<0)throw new RangeError("Index out of range");return s}};function Ga(i,e){if(i.length!=e.length)return!1;for(let t=0;t=0;m-=3)if(tt[m+1]==-d){let g=tt[m+2],$=g&2?r:g&4?g&1?s:r:0;$&&(G[c]=G[tt[m]]=$),O=m;break}}else{if(tt.length==189)break;tt[O++]=c,tt[O++]=f,tt[O++]=l}else if((p=G[c])==2||p==1){let m=p==r;l=m?0:1;for(let g=O-3;g>=0;g-=3){let $=tt[g+2];if($&2)break;if(m)tt[g+2]|=2;else{if($&4)break;tt[g+2]|=4}}}}}function Jd(i,e,t,n){for(let r=0,s=n;r<=t.length;r++){let o=r?t[r-1].to:i,O=rl;)p==g&&(p=t[--m].from,g=m?t[m-1].to:i),G[--p]=d;l=h}else s=a,l++}}}function Ys(i,e,t,n,r,s,o){let O=n%2?2:1;if(n%2==r%2)for(let l=e,a=0;ll&&o.push(new nt(l,m.from,d));let g=m.direction==tn!=!(d%2);Vs(i,g?n+1:n,r,m.inner,m.from,m.to,o),l=m.to}p=m.to}else{if(p==t||(h?G[p]!=O:G[p]==O))break;p++}f?Ys(i,l,p,n+1,r,f,o):le;){let h=!0,c=!1;if(!a||l>s[a-1].to){let m=G[l-1];m!=O&&(h=!1,c=m==16)}let f=!h&&O==1?[]:null,d=h?n:n+1,p=l;e:for(;;)if(a&&p==s[a-1].to){if(c)break e;let m=s[--a];if(!h)for(let g=m.from,$=a;;){if(g==e)break e;if($&&s[$-1].to==g)g=s[--$].from;else{if(G[g-1]==O)break e;break}}if(f)f.push(m);else{m.toG.length;)G[G.length]=256;let n=[],r=e==tn?0:1;return Vs(i,r,r,t,0,i.length,n),n}function Ma(i){return[new nt(0,i,0)]}var Ia="";function tp(i,e,t,n,r){var s;let o=n.head-i.from,O=-1;if(o==0){if(!r||!i.length)return null;e[0].level!=t&&(o=e[0].side(!1,t),O=0)}else if(o==i.length){if(r)return null;let f=e[e.length-1];f.level!=t&&(o=f.side(!0,t),O=e.length-1)}O<0&&(O=nt.find(e,o,(s=n.bidiLevel)!==null&&s!==void 0?s:-1,n.assoc));let l=e[O];o==l.side(r,t)&&(l=e[O+=r?1:-1],o=l.side(!r,t));let a=r==(l.dir==t),h=le(i.text,o,a);if(Ia=i.text.slice(Math.min(o,h),Math.max(o,h)),h>l.from&&h0&&n.length&&(n.every(({fromA:a,toA:h})=>hthis.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0);let r=-1;this.view.inputState.composing>=0&&(!((t=this.domChanged)===null||t===void 0)&&t.newSel?r=this.domChanged.newSel.head:!lp(e.changes,this.hasComposition)&&!e.selectionSet&&(r=e.state.selection.main.head));let s=r>-1?np(this.view,e.changes,r):null;if(this.domChanged=null,this.hasComposition){this.markedForComposition.clear();let{from:a,to:h}=this.hasComposition;n=new st(a,h,e.changes.mapPos(a,-1),e.changes.mapPos(h,1)).addToSet(n.slice())}this.hasComposition=s?{from:s.range.fromB,to:s.range.toB}:null,(z.ie||z.chrome)&&!s&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let o=this.decorations,O=this.updateDeco(),l=op(o,O,e.changes);return n=st.extendWithRanges(n,l),!(this.flags&7)&&n.length==0?!1:(this.updateInner(n,e.startState.doc.length,s),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,t,n){this.view.viewState.mustMeasureContent=!0,this.updateChildren(e,t,n);let{observer:r}=this.view;r.ignore(()=>{this.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let o=z.chrome||z.ios?{node:r.selectionRange.focusNode,written:!1}:void 0;this.sync(this.view,o),this.flags&=-8,o&&(o.written||r.selectionRange.focusNode!=o.node)&&(this.forceSelection=!0),this.dom.style.height=""}),this.markedForComposition.forEach(o=>o.flags&=-9);let s=[];if(this.view.viewport.from||this.view.viewport.to=0?r[o]:null;if(!O)break;let{fromA:l,toA:a,fromB:h,toB:c}=O,f,d,p,m;if(n&&n.range.fromBh){let b=Mi.build(this.view.state.doc,h,n.range.fromB,this.decorations,this.dynamicDecorationMap),x=Mi.build(this.view.state.doc,n.range.toB,c,this.decorations,this.dynamicDecorationMap);d=b.breakAtStart,p=b.openStart,m=x.openEnd;let w=this.compositionView(n);x.breakAtStart?w.breakAfter=1:x.content.length&&w.merge(w.length,w.length,x.content[0],!1,x.openStart,0)&&(w.breakAfter=x.content[0].breakAfter,x.content.shift()),b.content.length&&w.merge(0,0,b.content[b.content.length-1],!0,0,b.openEnd)&&b.content.pop(),f=b.content.concat(w).concat(x.content)}else({content:f,breakAtStart:d,openStart:p,openEnd:m}=Mi.build(this.view.state.doc,h,c,this.decorations,this.dynamicDecorationMap));let{i:g,off:$}=s.findPos(a,1),{i:Q,off:k}=s.findPos(l,-1);ya(this,Q,k,g,$,f,d,p,m)}n&&this.fixCompositionDOM(n)}compositionView(e){let t=new wt(e.text.nodeValue);t.flags|=8;for(let{deco:r}of e.marks)t=new kt(r,[t],t.length);let n=new ae;return n.append(t,0),n}fixCompositionDOM(e){let t=(s,o)=>{o.flags|=8|(o.children.some(l=>l.flags&7)?1:0),this.markedForComposition.add(o);let O=N.get(s);O&&O!=o&&(O.dom=null),o.setDOM(s)},n=this.childPos(e.range.fromB,1),r=this.children[n.i];t(e.line,r);for(let s=e.marks.length-1;s>=-1;s--)n=r.childPos(n.off,1),r=r.children[n.i],t(s>=0?e.marks[s].node:e.text,r)}updateSelection(e=!1,t=!1){(e||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let n=this.view.root.activeElement,r=n==this.dom,s=!r&&Dn(this.dom,this.view.observer.selectionRange)&&!(n&&this.dom.contains(n));if(!(r||t||s))return;let o=this.forceSelection;this.forceSelection=!1;let O=this.view.state.selection.main,l=this.moveToLine(this.domAtPos(O.anchor)),a=O.empty?l:this.moveToLine(this.domAtPos(O.head));if(z.gecko&&O.empty&&!this.hasComposition&&ip(l)){let c=document.createTextNode("");this.view.observer.ignore(()=>l.node.insertBefore(c,l.node.childNodes[l.offset]||null)),l=a=new Se(c,0),o=!0}let h=this.view.observer.selectionRange;(o||!h.focusNode||!tr(l.node,l.offset,h.anchorNode,h.anchorOffset)||!tr(a.node,a.offset,h.focusNode,h.focusOffset))&&(this.view.observer.ignore(()=>{z.android&&z.chrome&&this.dom.contains(h.focusNode)&&Op(h.focusNode,this.dom)&&(this.dom.blur(),this.dom.focus({preventScroll:!0}));let c=er(this.view.root);if(c)if(O.empty){if(z.gecko){let f=rp(l.node,l.offset);if(f&&f!=3){let d=Ba(l.node,l.offset,f==1?1:-1);d&&(l=new Se(d.node,d.offset))}}c.collapse(l.node,l.offset),O.bidiLevel!=null&&c.caretBidiLevel!==void 0&&(c.caretBidiLevel=O.bidiLevel)}else if(c.extend){c.collapse(l.node,l.offset);try{c.extend(a.node,a.offset)}catch{}}else{let f=document.createRange();O.anchor>O.head&&([l,a]=[a,l]),f.setEnd(a.node,a.offset),f.setStart(l.node,l.offset),c.removeAllRanges(),c.addRange(f)}s&&this.view.root.activeElement==this.dom&&(this.dom.blur(),n&&n.focus())}),this.view.observer.setSelectionRange(l,a)),this.impreciseAnchor=l.precise?null:new Se(h.anchorNode,h.anchorOffset),this.impreciseHead=a.precise?null:new Se(h.focusNode,h.focusOffset)}enforceCursorAssoc(){if(this.hasComposition)return;let{view:e}=this,t=e.state.selection.main,n=er(e.root),{anchorNode:r,anchorOffset:s}=e.observer.selectionRange;if(!n||!t.empty||!t.assoc||!n.modify)return;let o=ae.find(this,t.head);if(!o)return;let O=o.posAtStart;if(t.head==O||t.head==O+o.length)return;let l=this.coordsAt(t.head,-1),a=this.coordsAt(t.head,1);if(!l||!a||l.bottom>a.top)return;let h=this.domAtPos(t.head+t.assoc);n.collapse(h.node,h.offset),n.modify("move",t.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let c=e.observer.selectionRange;e.docView.posFromDOM(c.anchorNode,c.anchorOffset)!=t.from&&n.collapse(r,s)}moveToLine(e){let t=this.dom,n;if(e.node!=t)return e;for(let r=e.offset;!n&&r=0;r--){let s=N.get(t.childNodes[r]);s instanceof ae&&(n=s.domAtPos(s.length))}return n?new Se(n.node,n.offset,!0):e}nearest(e){for(let t=e;t;){let n=N.get(t);if(n&&n.rootView==this)return n;t=t.parentNode}return null}posFromDOM(e,t){let n=this.nearest(e);if(!n)throw new RangeError("Trying to find position for a DOM position outside of the document");return n.localPosFromDOM(e,t)+n.posAtStart}domAtPos(e){let{i:t,off:n}=this.childCursor().findPos(e,-1);for(;t=0;o--){let O=this.children[o],l=s-O.breakAfter,a=l-O.length;if(le||O.covers(1))&&(!n||O instanceof ae&&!(n instanceof ae&&t>=0))&&(n=O,r=a),s=a}return n?n.coordsAt(e-r,t):null}coordsForChar(e){let{i:t,off:n}=this.childPos(e,1),r=this.children[t];if(!(r instanceof ae))return null;for(;r.children.length;){let{i:O,off:l}=r.childPos(n,1);for(;;O++){if(O==r.children.length)return null;if((r=r.children[O]).length)break}n=l}if(!(r instanceof wt))return null;let s=le(r.text,n);if(s==n)return null;let o=Lt(r.dom,n,s).getClientRects();for(let O=0;OMath.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,O=-1,l=this.view.textDirection==K.LTR;for(let a=0,h=0;hr)break;if(a>=n){let d=c.dom.getBoundingClientRect();if(t.push(d.height),o){let p=c.dom.lastChild,m=p?Ni(p):[];if(m.length){let g=m[m.length-1],$=l?g.right-d.left:d.right-g.left;$>O&&(O=$,this.minWidth=s,this.minWidthFrom=a,this.minWidthTo=f)}}}a=f+c.breakAfter}return t}textDirectionAt(e){let{i:t}=this.childPos(e,1);return getComputedStyle(this.children[t].dom).direction=="rtl"?K.RTL:K.LTR}measureTextSize(){for(let s of this.children)if(s instanceof ae){let o=s.measureTextSize();if(o)return o}let e=document.createElement("div"),t,n,r;return e.className="cm-line",e.style.width="99999px",e.style.position="absolute",e.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.dom.appendChild(e);let s=Ni(e.firstChild)[0];t=e.getBoundingClientRect().height,n=s?s.width/27:7,r=s?s.height:t,e.remove()}),{lineHeight:t,charWidth:n,textHeight:r}}childCursor(e=this.length){let t=this.children.length;return t&&(e-=this.children[--t].length),new ir(this.children,e,t)}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let n=0,r=0;;r++){let s=r==t.viewports.length?null:t.viewports[r],o=s?s.from-1:this.length;if(o>n){let O=(t.lineBlockAt(o).bottom-t.lineBlockAt(n).top)/this.view.scaleY;e.push(I.replace({widget:new Or(O),block:!0,inclusive:!0,isBlockGap:!0}).range(n,o))}if(!s)break;n=s.to+1}return I.set(e)}updateDeco(){let e=this.view.state.facet(en).map((t,n)=>(this.dynamicDecorationMap[n]=typeof t=="function")?t(this.view):t);for(let t=e.length;tt.anchor?-1:1),r;if(!n)return;!t.empty&&(r=this.coordsAt(t.anchor,t.anchor>t.head?-1:1))&&(n={left:Math.min(n.left,r.left),top:Math.min(n.top,r.top),right:Math.max(n.right,r.right),bottom:Math.max(n.bottom,r.bottom)});let s=Aa(this.view),o={left:n.left-s.left,top:n.top-s.top,right:n.right+s.right,bottom:n.bottom+s.bottom},{offsetWidth:O,offsetHeight:l}=this.view.scrollDOM;qd(this.view.scrollDOM,o,t.head0)n=n.childNodes[r-1],r=dt(n);else break}if(t>=0)for(let n=i,r=e;;){if(n.nodeType==3)return{node:n,offset:r};if(n.nodeType==1&&r=0)n=n.childNodes[r],r=0;else break}return null}function rp(i,e){return i.nodeType!=1?0:(e&&i.childNodes[e-1].contentEditable=="false"?1:0)|(e{ne.from&&(t=!0)}),t}function ap(i,e,t=1){let n=i.charCategorizer(e),r=i.doc.lineAt(e),s=e-r.from;if(r.length==0)return S.cursor(e);s==0?t=1:s==r.length&&(t=-1);let o=s,O=s;t<0?o=le(r.text,s,!1):O=le(r.text,s);let l=n(r.text.slice(o,O));for(;o>0;){let a=le(r.text,o,!1);if(n(r.text.slice(a,o))!=l)break;o=a}for(;Oi?e.left-i:Math.max(0,i-e.right)}function cp(i,e){return e.top>i?e.top-i:Math.max(0,i-e.bottom)}function Qs(i,e){return i.tope.top+1}function Ml(i,e){return ei.bottom?{top:i.top,left:i.left,right:i.right,bottom:e}:i}function Cs(i,e,t){let n,r,s,o,O=!1,l,a,h,c;for(let p=i.firstChild;p;p=p.nextSibling){let m=Ni(p);for(let g=0;gk||o==k&&s>Q){n=p,r=$,s=Q,o=k;let b=k?t<$.top?-1:1:Q?e<$.left?-1:1:0;O=!b||(b>0?g0)}Q==0?t>$.bottom&&(!h||h.bottom<$.bottom)?(l=p,h=$):t<$.top&&(!c||c.top>$.top)&&(a=p,c=$):h&&Qs(h,$)?h=Il(h,$.bottom):c&&Qs(c,$)&&(c=Ml(c,$.top))}}if(h&&h.bottom>=t?(n=l,r=h):c&&c.top<=t&&(n=a,r=c),!n)return{node:i,offset:0};let f=Math.max(r.left,Math.min(r.right,e));if(n.nodeType==3)return Ll(n,f,t);if(O&&n.contentEditable!="false")return Cs(n,f,t);let d=Array.prototype.indexOf.call(i.childNodes,n)+(e>=(r.left+r.right)/2?1:0);return{node:i,offset:d}}function Ll(i,e,t){let n=i.nodeValue.length,r=-1,s=1e9,o=0;for(let O=0;Ot?h.top-t:t-h.bottom)-1;if(h.left-1<=e&&h.right+1>=e&&c=(h.left+h.right)/2,d=f;if((z.chrome||z.gecko)&&Lt(i,O).getBoundingClientRect().left==h.right&&(d=!f),c<=0)return{node:i,offset:O+(d?1:0)};r=O+(d?1:0),s=c}}}return{node:i,offset:r>-1?r:o>0?i.nodeValue.length:0}}function Da(i,e,t,n=-1){var r,s;let o=i.contentDOM.getBoundingClientRect(),O=o.top+i.viewState.paddingTop,l,{docHeight:a}=i.viewState,{x:h,y:c}=e,f=c-O;if(f<0)return 0;if(f>a)return i.state.doc.length;for(let b=i.viewState.heightOracle.textHeight/2,x=!1;l=i.elementAtHeight(f),l.type!=Qe.Text;)for(;f=n>0?l.bottom+b:l.top-b,!(f>=0&&f<=a);){if(x)return t?null:0;x=!0,n=-n}c=O+f;let d=l.from;if(di.viewport.to)return i.viewport.to==i.state.doc.length?i.state.doc.length:t?null:Bl(i,o,l,h,c);let p=i.dom.ownerDocument,m=i.root.elementFromPoint?i.root:p,g=m.elementFromPoint(h,c);g&&!i.contentDOM.contains(g)&&(g=null),g||(h=Math.max(o.left+1,Math.min(o.right-1,h)),g=m.elementFromPoint(h,c),g&&!i.contentDOM.contains(g)&&(g=null));let $,Q=-1;if(g&&((r=i.docView.nearest(g))===null||r===void 0?void 0:r.isEditable)!=!1){if(p.caretPositionFromPoint){let b=p.caretPositionFromPoint(h,c);b&&({offsetNode:$,offset:Q}=b)}else if(p.caretRangeFromPoint){let b=p.caretRangeFromPoint(h,c);b&&({startContainer:$,startOffset:Q}=b,(!i.contentDOM.contains($)||z.safari&&fp($,Q,h)||z.chrome&&up($,Q,h))&&($=void 0))}}if(!$||!i.docView.dom.contains($)){let b=ae.find(i.docView,d);if(!b)return f>l.top+l.height/2?l.to:l.from;({node:$,offset:Q}=Cs(b.dom,h,c))}let k=i.docView.nearest($);if(!k)return null;if(k.isWidget&&((s=k.dom)===null||s===void 0?void 0:s.nodeType)==1){let b=k.dom.getBoundingClientRect();return e.yi.defaultLineHeight*1.5){let O=i.viewState.heightOracle.textHeight,l=Math.floor((r-t.top-(i.defaultLineHeight-O)*.5)/O);s+=l*i.viewState.heightOracle.lineLength}let o=i.state.sliceDoc(t.from,t.to);return t.from+Un(o,s,i.state.tabSize)}function fp(i,e,t){let n;if(i.nodeType!=3||e!=(n=i.nodeValue.length))return!1;for(let r=i.nextSibling;r;r=r.nextSibling)if(r.nodeType!=1||r.nodeName!="BR")return!1;return Lt(i,n-1,n).getBoundingClientRect().left>t}function up(i,e,t){if(e!=0)return!1;for(let r=i;;){let s=r.parentNode;if(!s||s.nodeType!=1||s.firstChild!=r)return!1;if(s.classList.contains("cm-line"))break;r=s}let n=i.nodeType==1?i.getBoundingClientRect():Lt(i,0,Math.max(i.nodeValue.length,1)).getBoundingClientRect();return t-n.left>5}function qs(i,e){let t=i.lineBlockAt(e);if(Array.isArray(t.type)){for(let n of t.type)if(n.to>e||n.to==e&&(n.to==t.to||n.type==Qe.Text))return n}return t}function dp(i,e,t,n){let r=qs(i,e.head),s=!n||r.type!=Qe.Text||!(i.lineWrapping||r.widgetLineBreaks)?null:i.coordsAtPos(e.assoc<0&&e.head>r.from?e.head-1:e.head);if(s){let o=i.dom.getBoundingClientRect(),O=i.textDirectionAt(r.from),l=i.posAtCoords({x:t==(O==K.LTR)?o.right-1:o.left+1,y:(s.top+s.bottom)/2});if(l!=null)return S.cursor(l,t?-1:1)}return S.cursor(t?r.to:r.from,t?-1:1)}function Dl(i,e,t,n){let r=i.state.doc.lineAt(e.head),s=i.bidiSpans(r),o=i.textDirectionAt(r.from);for(let O=e,l=null;;){let a=tp(r,s,o,O,t),h=Ia;if(!a){if(r.number==(t?i.state.doc.lines:1))return O;h=` -`,r=i.state.doc.line(r.number+(t?1:-1)),s=i.bidiSpans(r),a=S.cursor(t?r.from:r.to)}if(l){if(!l(h))return O}else{if(!n)return a;l=n(h)}O=a}}function pp(i,e,t){let n=i.state.charCategorizer(e),r=n(t);return s=>{let o=n(s);return r==qe.Space&&(r=o),r==o}}function mp(i,e,t,n){let r=e.head,s=t?1:-1;if(r==(t?i.state.doc.length:0))return S.cursor(r,e.assoc);let o=e.goalColumn,O,l=i.contentDOM.getBoundingClientRect(),a=i.coordsAtPos(r,e.assoc||-1),h=i.documentTop;if(a)o==null&&(o=a.left-l.left),O=s<0?a.top:a.bottom;else{let d=i.viewState.lineBlockAt(r);o==null&&(o=Math.min(l.right-l.left,i.defaultCharacterWidth*(r-d.from))),O=(s<0?d.top:d.bottom)+h}let c=l.left+o,f=n??i.viewState.heightOracle.textHeight>>1;for(let d=0;;d+=10){let p=O+(f+d)*s,m=Da(i,{x:c,y:p},!1,s);if(pl.bottom||(s<0?mr)){let g=i.docView.coordsForChar(m),$=!g||p{if(e>s&&er(i)),t.from,e.head>t.from?-1:1);return n==t.from?t:S.cursor(n,nnull),z.gecko&&Wp(e.contentDOM.ownerDocument)}handleEvent(e){!Pp(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||this.runHandlers(e.type,e)}runHandlers(e,t){let n=this.handlers[e];if(n){for(let r of n.observers)r(this.view,t);for(let r of n.handlers){if(t.defaultPrevented)break;if(r(this.view,t)){t.preventDefault();break}}}}ensureHandlers(e){let t=gp(e),n=this.handlers,r=this.view.contentDOM;for(let s in t)if(s!="scroll"){let o=!t[s].handlers.length,O=n[s];O&&o!=!O.handlers.length&&(r.removeEventListener(s,this.handleEvent),O=null),O||r.addEventListener(s,this.handleEvent,{passive:o})}for(let s in n)s!="scroll"&&!t[s]&&r.removeEventListener(s,this.handleEvent);this.handlers=t}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),e.keyCode==9&&Date.now()n.keyCode==e.keyCode))&&!e.ctrlKey||$p.indexOf(e.key)>-1&&e.ctrlKey&&!e.shiftKey)?(this.pendingIOSKey=t||e,setTimeout(()=>this.flushIOSKey(),250),!0):(e.keyCode!=229&&this.view.observer.forceFlush(),!1)}flushIOSKey(){let e=this.pendingIOSKey;return e?(this.pendingIOSKey=void 0,mi(this.view.contentDOM,e.key,e.keyCode)):!1}ignoreDuringComposition(e){return/^key/.test(e.type)?this.composing>0?!0:z.safari&&!z.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1:!1}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}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 Nl(i,e){return(t,n)=>{try{return e.call(i,n,t)}catch(r){rt(t.state,r)}}}function gp(i){let e=Object.create(null);function t(n){return e[n]||(e[n]={observers:[],handlers:[]})}for(let n of i){let r=n.spec;if(r&&r.domEventHandlers)for(let s in r.domEventHandlers){let o=r.domEventHandlers[s];o&&t(s).handlers.push(Nl(n.value,o))}if(r&&r.domEventObservers)for(let s in r.domEventObservers){let o=r.domEventObservers[s];o&&t(s).observers.push(Nl(n.value,o))}}for(let n in Le)t(n).handlers.push(Le[n]);for(let n in Be)t(n).observers.push(Be[n]);return e}var Na=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],$p="dthko",Fa=[16,17,18,20,91,92,224,225],En=6;function Gn(i){return Math.max(0,i)*.7+8}function Sp(i,e){return Math.max(Math.abs(i.clientX-e.clientX),Math.abs(i.clientY-e.clientY))}var _s=class{constructor(e,t,n,r){this.view=e,this.startEvent=t,this.style=n,this.mustSelect=r,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParent=Ud(e.contentDOM),this.atoms=e.state.facet(ho).map(o=>o(e));let s=e.contentDOM.ownerDocument;s.addEventListener("mousemove",this.move=this.move.bind(this)),s.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(j.allowMultipleSelections)&&Qp(e,t),this.dragging=bp(e,t)&&eh(t)==1?null:!1}start(e){this.dragging===!1&&this.select(e)}move(e){var t;if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&Sp(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let n=0,r=0,s=((t=this.scrollParent)===null||t===void 0?void 0:t.getBoundingClientRect())||{left:0,top:0,right:this.view.win.innerWidth,bottom:this.view.win.innerHeight},o=Aa(this.view);e.clientX-o.left<=s.left+En?n=-Gn(s.left-e.clientX):e.clientX+o.right>=s.right-En&&(n=Gn(e.clientX-s.right)),e.clientY-o.top<=s.top+En?r=-Gn(s.top-e.clientY):e.clientY+o.bottom>=s.bottom-En&&(r=Gn(e.clientY-s.bottom)),this.setScrollSpeed(n,r)}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(){this.scrollParent?(this.scrollParent.scrollLeft+=this.scrollSpeed.x,this.scrollParent.scrollTop+=this.scrollSpeed.y):this.view.win.scrollBy(this.scrollSpeed.x,this.scrollSpeed.y),this.dragging===!1&&this.select(this.lastEvent)}skipAtoms(e){let t=null;for(let n=0;nthis.select(this.lastEvent),20)}};function Qp(i,e){let t=i.state.facet(za);return t.length?t[0](e):z.mac?e.metaKey:e.ctrlKey}function yp(i,e){let t=i.state.facet(Xa);return t.length?t[0](e):z.mac?!e.altKey:!e.ctrlKey}function bp(i,e){let{main:t}=i.state.selection;if(t.empty)return!1;let n=er(i.root);if(!n||n.rangeCount==0)return!0;let r=n.getRangeAt(0).getClientRects();for(let s=0;s=e.clientX&&o.top<=e.clientY&&o.bottom>=e.clientY)return!0}return!1}function Pp(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=N.get(t))&&n.ignoreEvent(e))return!1;return!0}var Le=Object.create(null),Be=Object.create(null),Ha=z.ie&&z.ie_version<15||z.ios&&z.webkit_version<604;function xp(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(),Ka(i,t.value)},50)}function Ka(i,e){let{state:t}=i,n,r=1,s=t.toText(e),o=s.lines==t.selection.ranges.length;if(As!=null&&t.selection.ranges.every(l=>l.empty)&&As==s.toString()){let l=-1;n=t.changeByRange(a=>{let h=t.doc.lineAt(a.from);if(h.from==l)return{range:a};l=h.from;let c=t.toText((o?s.line(r++).text:e)+t.lineBreak);return{changes:{from:h.from,insert:c},range:S.cursor(a.from+c.length)}})}else o?n=t.changeByRange(l=>{let a=s.line(r++);return{changes:{from:l.from,to:l.to,insert:a.text},range:S.cursor(l.from+a.length)}}):n=t.replaceSelection(s);i.dispatch(n,{userEvent:"input.paste",scrollIntoView:!0})}Be.scroll=i=>{i.inputState.lastScrollTop=i.scrollDOM.scrollTop,i.inputState.lastScrollLeft=i.scrollDOM.scrollLeft};Le.keydown=(i,e)=>(i.inputState.setSelectionOrigin("select"),e.keyCode==27&&(i.inputState.lastEscPress=Date.now()),!1);Be.touchstart=(i,e)=>{i.inputState.lastTouchTime=Date.now(),i.inputState.setSelectionOrigin("select.pointer")};Be.touchmove=i=>{i.inputState.setSelectionOrigin("select.pointer")};Le.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(Wa))if(t=n(i,e),t)break;if(!t&&e.button==0&&(t=vp(i,e)),t){let n=!i.hasFocus;i.inputState.startMouseSelection(new _s(i,e,t,n)),n&&i.observer.ignore(()=>$a(i.contentDOM));let r=i.inputState.mouseSelection;if(r)return r.start(e),r.dragging===!1}return!1};function Fl(i,e,t,n){if(n==1)return S.cursor(e,t);if(n==2)return ap(i.state,e,t);{let r=ae.find(i.docView,e),s=i.state.doc.lineAt(r?r.posAtEnd:e),o=r?r.posAtStart:s.from,O=r?r.posAtEnd:s.to;return Oi>=e.top&&i<=e.bottom,Hl=(i,e,t)=>Ja(e,t)&&i>=t.left&&i<=t.right;function wp(i,e,t,n){let r=ae.find(i.docView,e);if(!r)return 1;let s=e-r.posAtStart;if(s==0)return 1;if(s==r.length)return-1;let o=r.coordsAt(s,-1);if(o&&Hl(t,n,o))return-1;let O=r.coordsAt(s,1);return O&&Hl(t,n,O)?1:o&&Ja(n,o)?-1:1}function Kl(i,e){let t=i.posAtCoords({x:e.clientX,y:e.clientY},!1);return{pos:t,bias:wp(i,t,e.clientX,e.clientY)}}var kp=z.ie&&z.ie_version<=11,Jl=null,ea=0,ta=0;function eh(i){if(!kp)return i.detail;let e=Jl,t=ta;return Jl=i,ta=Date.now(),ea=!e||t>Date.now()-400&&Math.abs(e.clientX-i.clientX)<2&&Math.abs(e.clientY-i.clientY)<2?(ea+1)%3:1}function vp(i,e){let t=Kl(i,e),n=eh(e),r=i.state.selection;return{update(s){s.docChanged&&(t.pos=s.changes.mapPos(t.pos),r=r.map(s.changes))},get(s,o,O){let l=Kl(i,s),a,h=Fl(i,l.pos,l.bias,n);if(t.pos!=l.pos&&!o){let c=Fl(i,t.pos,t.bias,n),f=Math.min(c.from,h.from),d=Math.max(c.to,h.to);h=f1&&(a=Tp(r,l.pos))?a:O?r.addRange(h):S.create([h])}}}function Tp(i,e){for(let t=0;t=e)return S.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}Le.dragstart=(i,e)=>{let{selection:{main:t}}=i.state;if(e.target.draggable){let r=i.docView.nearest(e.target);if(r&&r.isWidget){let s=r.posAtStart,o=s+r.length;(s>=t.to||o<=t.from)&&(t=S.range(s,o))}}let{inputState:n}=i;return n.mouseSelection&&(n.mouseSelection.dragging=!0),n.draggedContent=t,e.dataTransfer&&(e.dataTransfer.setData("Text",i.state.sliceDoc(t.from,t.to)),e.dataTransfer.effectAllowed="copyMove"),!1};Le.dragend=i=>(i.inputState.draggedContent=null,!1);function ia(i,e,t,n){if(!t)return;let r=i.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:s}=i.inputState,o=n&&s&&yp(i,e)?{from:s.from,to:s.to}:null,O={from:r,insert:t},l=i.state.changes(o?[o,O]:O);i.focus(),i.dispatch({changes:l,selection:{anchor:l.mapPos(r,-1),head:l.mapPos(r,1)},userEvent:o?"move.drop":"input.drop"}),i.inputState.draggedContent=null}Le.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),r=0,s=()=>{++r==t.length&&ia(i,e,n.filter(o=>o!=null).join(i.state.lineBreak),!1)};for(let o=0;o{/[\x00-\x08\x0e-\x1f]{2}/.test(O.result)||(n[o]=O.result),s()},O.readAsText(t[o])}return!0}else{let n=e.dataTransfer.getData("Text");if(n)return ia(i,e,n,!0),!0}return!1};Le.paste=(i,e)=>{if(i.state.readOnly)return!0;i.observer.flush();let t=Ha?null:e.clipboardData;return t?(Ka(i,t.getData("text/plain")||t.getData("text/uri-text")),!0):(xp(i),!1)};function zp(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 Xp(i){let e=[],t=[],n=!1;for(let r of i.selection.ranges)r.empty||(e.push(i.sliceDoc(r.from,r.to)),t.push(r));if(!e.length){let r=-1;for(let{from:s}of i.selection.ranges){let o=i.doc.lineAt(s);o.number>r&&(e.push(o.text),t.push({from:o.from,to:Math.min(i.doc.length,o.to+1)})),r=o.number}n=!0}return{text:e.join(i.lineBreak),ranges:t,linewise:n}}var As=null;Le.copy=Le.cut=(i,e)=>{let{text:t,ranges:n,linewise:r}=Xp(i.state);if(!t&&!r)return!1;As=r?t:null,e.type=="cut"&&!i.state.readOnly&&i.dispatch({changes:n,scrollIntoView:!0,userEvent:"delete.cut"});let s=Ha?null:e.clipboardData;return s?(s.clearData(),s.setData("text/plain",t),!0):(zp(i,t),!1)};var th=ke.define();function ih(i,e){let t=[];for(let n of i.facet(Ya)){let r=n(i,e);r&&t.push(r)}return t?i.update({effects:t,annotations:th.of(!0)}):null}function nh(i){setTimeout(()=>{let e=i.hasFocus;if(e!=i.inputState.notifiedFocused){let t=ih(i.state,e);t?i.dispatch(t):i.update([])}},10)}Be.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),nh(i)};Be.blur=i=>{i.observer.clearSelectionRange(),nh(i)};Be.compositionstart=Be.compositionupdate=i=>{i.inputState.compositionFirstChange==null&&(i.inputState.compositionFirstChange=!0),i.inputState.composing<0&&(i.inputState.composing=0)};Be.compositionend=i=>{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,z.chrome&&z.android?i.observer.flushSoon():i.inputState.compositionPendingChange?Promise.resolve().then(()=>i.observer.flush()):setTimeout(()=>{i.inputState.composing<0&&i.docView.hasComposition&&i.update([])},50)};Be.contextmenu=i=>{i.inputState.lastContextMenu=Date.now()};Le.beforeinput=(i,e)=>{var t;let n;if(z.chrome&&z.android&&(n=Na.find(r=>r.inputType==e.inputType))&&(i.observer.delayAndroidKey(n.key,n.keyCode),n.key=="Backspace"||n.key=="Delete")){let r=((t=window.visualViewport)===null||t===void 0?void 0:t.height)||0;setTimeout(()=>{var s;(((s=window.visualViewport)===null||s===void 0?void 0:s.height)||0)>r+10&&i.hasFocus&&(i.contentDOM.blur(),i.focus())},100)}return!1};var na=new Set;function Wp(i){na.has(i)||(na.add(i),i.addEventListener("copy",()=>{}),i.addEventListener("cut",()=>{}))}var ra=["pre-wrap","normal","pre-line","break-spaces"],js=class{constructor(e){this.lineWrapping=e,this.doc=q.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30,this.heightChanged=!1}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)/(this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return ra.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let n=0;n-1,l=Math.round(t)!=Math.round(this.lineHeight)||this.lineWrapping!=O;if(this.lineWrapping=O,this.lineHeight=t,this.charWidth=n,this.textHeight=r,this.lineLength=s,l){this.heightSamples={};for(let a=0;a0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e,t){this.height!=t&&(Math.abs(this.height-t)>Fn&&(e.heightChanged=!0),this.height=t)}replace(e,t,n){return i.of(n)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,n,r){let s=this,o=n.doc;for(let O=r.length-1;O>=0;O--){let{fromA:l,toA:a,fromB:h,toB:c}=r[O],f=s.lineAt(l,D.ByPosNoHeight,n.setDoc(t),0,0),d=f.to>=a?f:s.lineAt(a,D.ByPosNoHeight,n,0,0);for(c+=d.to-a,a=d.to;O>0&&f.from<=r[O-1].toA;)l=r[O-1].fromA,h=r[O-1].fromB,O--,ls*2){let O=e[t-1];O.break?e.splice(--t,1,O.left,null,O.right):e.splice(--t,1,O.left,O.right),n+=1+O.break,r-=O.size}else if(s>r*2){let O=e[n];O.break?e.splice(n,1,O.left,null,O.right):e.splice(n,1,O.left,O.right),n+=2+O.break,s-=O.size}else break;else if(r=s&&o(this.blockAt(0,n,r,s))}updateHeight(e,t=0,n=!1,r){return r&&r.from<=t&&r.more&&this.setHeight(e,r.heights[r.index++]),this.outdated=!1,this}toString(){return`block(${this.length})`}},_e=class i extends lr{constructor(e,t){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0}blockAt(e,t,n,r){return new it(r,this.length,n,this.height,this.breaks)}replace(e,t,n){let r=n[0];return n.length==1&&(r instanceof i||r instanceof xt&&r.flags&4)&&Math.abs(this.length-r.length)<10?(r instanceof xt?r=new i(r.length,this.height):r.height=this.height,this.outdated||(r.outdated=!1),r):We.of(n)}updateHeight(e,t=0,n=!1,r){return r&&r.from<=t&&r.more?this.setHeight(e,r.heights[r.index++]):(n||this.outdated)&&this.setHeight(e,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:""})`}},xt=class i extends We{constructor(e){super(e,0)}heightMetrics(e,t){let n=e.doc.lineAt(t).number,r=e.doc.lineAt(t+this.length).number,s=r-n+1,o,O=0;if(e.lineWrapping){let l=Math.min(this.height,e.lineHeight*s);o=l/s,this.length>s+1&&(O=(this.height-l)/(this.length-s-1))}else o=this.height/s;return{firstLine:n,lastLine:r,perLine:o,perChar:O}}blockAt(e,t,n,r){let{firstLine:s,lastLine:o,perLine:O,perChar:l}=this.heightMetrics(t,r);if(t.lineWrapping){let a=r+Math.round(Math.max(0,Math.min(1,(e-n)/this.height))*this.length),h=t.doc.lineAt(a),c=O+h.length*l,f=Math.max(n,e-c/2);return new it(h.from,h.length,f,c,0)}else{let a=Math.max(0,Math.min(o-s,Math.floor((e-n)/O))),{from:h,length:c}=t.doc.line(s+a);return new it(h,c,n+O*a,O,0)}}lineAt(e,t,n,r,s){if(t==D.ByHeight)return this.blockAt(e,n,r,s);if(t==D.ByPosNoHeight){let{from:d,to:p}=n.doc.lineAt(e);return new it(d,p-d,0,0,0)}let{firstLine:o,perLine:O,perChar:l}=this.heightMetrics(n,s),a=n.doc.lineAt(e),h=O+a.length*l,c=a.number-o,f=r+O*c+l*(a.from-s-c);return new it(a.from,a.length,Math.max(r,Math.min(f,r+this.height-h)),h,0)}forEachLine(e,t,n,r,s,o){e=Math.max(e,s),t=Math.min(t,s+this.length);let{firstLine:O,perLine:l,perChar:a}=this.heightMetrics(n,s);for(let h=e,c=r;h<=t;){let f=n.doc.lineAt(h);if(h==e){let p=f.number-O;c+=l*p+a*(e-s-p)}let d=l+a*f.length;o(new it(f.from,f.length,c,d,0)),c+=d,h=f.to+1}}replace(e,t,n){let r=this.length-t;if(r>0){let s=n[n.length-1];s instanceof i?n[n.length-1]=new i(s.length+r):n.push(null,new i(r-1))}if(e>0){let s=n[0];s instanceof i?n[0]=new i(e+s.length):n.unshift(new i(e-1),null)}return We.of(n)}decomposeLeft(e,t){t.push(new i(e-1),null)}decomposeRight(e,t){t.push(null,new i(this.length-e-1))}updateHeight(e,t=0,n=!1,r){let s=t+this.length;if(r&&r.from<=t+this.length&&r.more){let o=[],O=Math.max(t,r.from),l=-1;for(r.from>t&&o.push(new i(r.from-t-1).updateHeight(e,t));O<=s&&r.more;){let h=e.doc.lineAt(O).length;o.length&&o.push(null);let c=r.heights[r.index++];l==-1?l=c:Math.abs(c-l)>=Fn&&(l=-2);let f=new _e(h,c);f.outdated=!1,o.push(f),O+=h+1}O<=s&&o.push(null,new i(s-O).updateHeight(e,O));let a=We.of(o);return(l<0||Math.abs(a.height-this.height)>=Fn||Math.abs(l-this.heightMetrics(e,t).perLine)>=Fn)&&(e.heightChanged=!0),a}else(n||this.outdated)&&(this.setHeight(e,e.heightForGap(t,t+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}},Gs=class extends We{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,r){let s=n+this.left.height;return eO))return a;let h=t==D.ByPosNoHeight?D.ByPosNoHeight:D.ByPos;return l?a.join(this.right.lineAt(O,h,n,o,O)):this.left.lineAt(O,h,n,r,s).join(a)}forEachLine(e,t,n,r,s,o){let O=r+this.left.height,l=s+this.left.length+this.break;if(this.break)e=l&&this.right.forEachLine(e,t,n,O,l,o);else{let a=this.lineAt(l,D.ByPos,n,r,s);e=e&&a.from<=t&&o(a),t>a.to&&this.right.forEachLine(a.to+1,t,n,O,l,o)}}replace(e,t,n){let r=this.left.length+this.break;if(tthis.left.length)return this.balanced(this.left,this.right.replace(e-r,t-r,n));let s=[];e>0&&this.decomposeLeft(e,s);let o=s.length;for(let O of n)s.push(O);if(e>0&&sa(s,o-1),t=n&&t.push(null)),e>n&&this.right.decomposeLeft(e-n,t)}decomposeRight(e,t){let n=this.left.length,r=n+this.break;if(e>=r)return this.right.decomposeRight(e-r,t);e2*t.size||t.size>2*e.size?We.of(this.break?[e,null,t]:[e,t]):(this.left=e,this.right=t,this.height=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,r){let{left:s,right:o}=this,O=t+s.length+this.break,l=null;return r&&r.from<=t+s.length&&r.more?l=s=s.updateHeight(e,t,n,r):s.updateHeight(e,t,n),r&&r.from<=O+o.length&&r.more?l=o=o.updateHeight(e,O,n,r):o.updateHeight(e,O,n),l?this.balanced(s,o):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}};function sa(i,e){let t,n;i[e]==null&&(t=i[e-1])instanceof xt&&(n=i[e+1])instanceof xt&&i.splice(e-1,3,new xt(t.length+1+n.length))}var Rp=5,Ms=class i{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),r=this.nodes[this.nodes.length-1];r instanceof _e?r.length+=n-this.pos:(n>this.pos||!this.isCovered)&&this.nodes.push(new _e(n-this.pos,-1)),this.writtenTo=n,t>n&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,n){if(e=Rp)&&this.addLineDeco(r,s,o)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenToe&&this.nodes.push(new _e(this.pos-e,-1)),this.writtenTo=this.pos}blankContent(e,t){let n=new xt(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 _e)return e;let t=new _e(0,-1);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 r=this.ensureLine();r.length+=n,r.collapsed+=n,r.widgetHeight=Math.max(r.widgetHeight,e),r.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 _e)&&!this.isCovered?this.nodes.push(new _e(0,-1)):(this.writtenToh.clientHeight||h.scrollWidth>h.clientWidth)&&c.overflow!="visible"){let f=h.getBoundingClientRect();s=Math.max(s,f.left),o=Math.min(o,f.right),O=Math.max(O,f.top),l=a==i.parentNode?f.bottom:Math.min(l,f.bottom)}a=c.position=="absolute"||c.position=="fixed"?h.offsetParent:h.parentNode}else if(a.nodeType==11)a=a.host;else break;return{left:s-t.left,right:Math.max(s,o)-t.left,top:O-(t.top+e),bottom:Math.max(O,l)-(t.top+e)}}function Vp(i,e){let t=i.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}var Bi=class{constructor(e,t,n){this.from=e,this.to=t,this.size=n}static same(e,t){if(e.length!=t.length)return!1;for(let n=0;ntypeof n!="function"&&n.class=="cm-lineWrapping");this.heightOracle=new js(t),this.stateDeco=e.facet(en).filter(n=>typeof n!="function"),this.heightMap=We.empty().applyChanges(this.stateDeco,q.empty,this.heightOracle.setDoc(e.doc),[new st(0,0,0,e.doc.length)]),this.viewport=this.getViewport(0,null),this.updateViewportLines(),this.updateForViewport(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=I.set(this.lineGaps.map(n=>n.draw(this,!1))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let n=0;n<=1;n++){let r=n?t.head:t.anchor;if(!e.some(({from:s,to:o})=>r>=s&&r<=o)){let{from:s,to:o}=this.lineBlockAt(r);e.push(new di(s,o))}}this.viewports=e.sort((n,r)=>n.from-r.from),this.scaler=this.heightMap.height<=7e6?oa:new Bs(this.heightOracle,this.heightMap,this.viewports)}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(this.scaler.scale==1?e:ji(e,this.scaler))})}update(e,t=null){this.state=e.state;let n=this.stateDeco;this.stateDeco=this.state.facet(en).filter(h=>typeof h!="function");let r=e.changedRanges,s=st.extendWithRanges(r,Zp(n,this.stateDeco,e?e.changes:ge.empty(this.state.doc.length))),o=this.heightMap.height,O=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),s),this.heightMap.height!=o&&(e.flags|=2),O?(this.scrollAnchorPos=e.changes.mapPos(O.from,-1),this.scrollAnchorHeight=O.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=this.heightMap.height);let l=s.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.headl.to)||!this.viewportIsAppropriate(l))&&(l=this.getViewport(0,t));let a=!e.changes.empty||e.flags&2||l.from!=this.viewport.from||l.to!=this.viewport.to;this.viewport=l,this.updateForViewport(),a&&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(),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&e.selectionSet&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(Ca)&&(this.mustEnforceCursorAssoc=!0)}measure(e){let t=e.contentDOM,n=window.getComputedStyle(t),r=this.heightOracle,s=n.whiteSpace;this.defaultTextDirection=n.direction=="rtl"?K.RTL:K.LTR;let o=this.heightOracle.mustRefreshForWrapping(s),O=t.getBoundingClientRect(),l=o||this.mustMeasureContent||this.contentDOMHeight!=O.height;this.contentDOMHeight=O.height,this.mustMeasureContent=!1;let a=0,h=0;if(O.width&&O.height){let{scaleX:b,scaleY:x}=ga(t,O);(this.scaleX!=b||this.scaleY!=x)&&(this.scaleX=b,this.scaleY=x,a|=8,o=l=!0)}let c=(parseInt(n.paddingTop)||0)*this.scaleY,f=(parseInt(n.paddingBottom)||0)*this.scaleY;(this.paddingTop!=c||this.paddingBottom!=f)&&(this.paddingTop=c,this.paddingBottom=f,a|=10),this.editorWidth!=e.scrollDOM.clientWidth&&(r.lineWrapping&&(l=!0),this.editorWidth=e.scrollDOM.clientWidth,a|=8);let d=e.scrollDOM.scrollTop*this.scaleY;this.scrollTop!=d&&(this.scrollAnchorHeight=-1,this.scrollTop=d),this.scrolledToBottom=Qa(e.scrollDOM);let p=(this.printing?Vp:Yp)(t,this.paddingTop),m=p.top-this.pixelViewport.top,g=p.bottom-this.pixelViewport.bottom;this.pixelViewport=p;let $=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if($!=this.inView&&(this.inView=$,$&&(l=!0)),!this.inView&&!this.scrollTarget)return 0;let Q=O.width;if((this.contentDOMWidth!=Q||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=O.width,this.editorHeight=e.scrollDOM.clientHeight,a|=8),l){let b=e.docView.measureVisibleLineHeights(this.viewport);if(r.mustRefreshForHeights(b)&&(o=!0),o||r.lineWrapping&&Math.abs(Q-this.contentDOMWidth)>r.charWidth){let{lineHeight:x,charWidth:w,textHeight:Z}=e.docView.measureTextSize();o=x>0&&r.refresh(s,x,w,Z,Q/w,b),o&&(e.docView.minWidth=0,a|=8)}m>0&&g>0?h=Math.max(m,g):m<0&&g<0&&(h=Math.min(m,g)),r.heightChanged=!1;for(let x of this.viewports){let w=x.from==this.viewport.from?b:e.docView.measureVisibleLineHeights(x);this.heightMap=(o?We.empty().applyChanges(this.stateDeco,q.empty,this.heightOracle,[new st(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(r,0,o,new Es(x.from,w))}r.heightChanged&&(a|=2)}let k=!this.viewportIsAppropriate(this.viewport,h)||this.scrollTarget&&(this.scrollTarget.range.headthis.viewport.to);return k&&(this.viewport=this.getViewport(h,this.scrollTarget)),this.updateForViewport(),(a&2||k)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(o?[]:this.lineGaps,e)),a|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),a}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)),r=this.heightMap,s=this.heightOracle,{visibleTop:o,visibleBottom:O}=this,l=new di(r.lineAt(o-n*1e3,D.ByHeight,s,0,0).from,r.lineAt(O+(1-n)*1e3,D.ByHeight,s,0,0).to);if(t){let{head:a}=t.range;if(al.to){let h=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),c=r.lineAt(a,D.ByPos,s,0,0),f;t.y=="center"?f=(c.top+c.bottom)/2-h/2:t.y=="start"||t.y=="nearest"&&a=O+Math.max(10,Math.min(n,250)))&&r>o-2*1e3&&s>1,o=r<<1;if(this.defaultTextDirection!=K.LTR&&!n)return[];let O=[],l=(a,h,c,f)=>{if(h-aa&&gg.from>=c.from&&g.to<=c.to&&Math.abs(g.from-a)g.from<$&&g.to>$));if(!m){if(hg.from<=h&&g.to>=h)){let g=t.moveToLineBoundary(S.cursor(h),!1,!0).head;g>a&&(h=g)}m=new Bi(a,h,this.gapSize(c,a,h,f))}O.push(m)};for(let a of this.viewportLines){if(a.lengtha.from&&l(a.from,f,a,h),dt.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(){let e=this.stateDeco;this.lineGaps.length&&(e=e.concat(this.lineGapDeco));let t=[];B.spans(e,this.viewport.from,this.viewport.to,{span(r,s){t.push({from:r,to:s})},point(){}},20);let n=t.length!=this.visibleRanges.length||this.visibleRanges.some((r,s)=>r.from!=t[s].from||r.to!=t[s].to);return this.visibleRanges=t,n?4:0}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||ji(this.heightMap.lineAt(e,D.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return ji(this.heightMap.lineAt(this.scaler.fromDOM(e),D.ByHeight,this.heightOracle,0,0),this.scaler)}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 ji(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}},di=class{constructor(e,t){this.from=e,this.to=t}};function Cp(i,e,t){let n=[],r=i,s=0;return B.spans(t,i,e,{span(){},point(o,O){o>r&&(n.push({from:r,to:o}),s+=o-r),r=O}},20),r=1)return e[e.length-1].to;let n=Math.floor(i*t);for(let r=0;;r++){let{from:s,to:o}=e[r],O=o-s;if(n<=O)return s+n;n-=O}}function In(i,e){let t=0;for(let{from:n,to:r}of i.ranges){if(e<=r){t+=e-n;break}t+=r-n}return t/i.total}function qp(i,e){for(let t of i)if(e(t))return t}var oa={toDOM(i){return i},fromDOM(i){return i},scale:1},Bs=class{constructor(e,t,n){let r=0,s=0,o=0;this.viewports=n.map(({from:O,to:l})=>{let a=t.lineAt(O,D.ByPos,e,0,0).top,h=t.lineAt(l,D.ByPos,e,0,0).bottom;return r+=h-a,{from:O,to:l,top:a,bottom:h,domTop:0,domBottom:0}}),this.scale=(7e6-r)/(t.height-r);for(let O of this.viewports)O.domTop=o+(O.top-s)*this.scale,o=O.domBottom=O.domTop+(O.bottom-O.top),s=O.bottom}toDOM(e){for(let t=0,n=0,r=0;;t++){let s=tji(r,e)):i._content)}var Ln=W.define({combine:i=>i.join(" ")}),Ds=W.define({combine:i=>i.indexOf(!0)>-1}),Ns=Ue.newName(),rh=Ue.newName(),sh=Ue.newName(),oh={"&light":"."+rh,"&dark":"."+sh};function Fs(i,e,t){return new Ue(e,{finish(n){return/&/.test(n)?n.replace(/&\w*/,r=>{if(r=="&")return i;if(!t||!t[r])throw new RangeError(`Unsupported selector: ${r}`);return t[r]}):i+" "+n}})}var Up=Fs("."+Ns,{"&":{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},".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":{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:"#444"},".cm-dropCursor":{position:"absolute"},"&.cm-focused > .cm-scroller > .cm-cursorLayer .cm-cursor":{display:"block"},".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",insetInlineStart:0,zIndex:200},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",borderRight:"1px solid #ddd"},"&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},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-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"},".cm-highlightSpace:before":{content:"attr(data-display)",position:"absolute",pointerEvents:"none",color:"#888"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,')`,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"}},oh),Ei="\uFFFF",Hs=class{constructor(e,t){this.points=e,this.text="",this.lineSeparator=t.facet(j.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=Ei}readRange(e,t){if(!e)return this;let n=e.parentNode;for(let r=e;;){this.findPointBefore(n,r);let s=this.text.length;this.readNode(r);let o=r.nextSibling;if(o==t)break;let O=N.get(r),l=N.get(o);(O&&l?O.breakAfter:(O?O.breakAfter:Oa(r))||Oa(o)&&(r.nodeName!="BR"||r.cmIgnore)&&this.text.length>s)&&this.lineBreak(),r=o}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,r=this.lineSeparator?null:/\r\n?|\n/g;;){let s=-1,o=1,O;if(this.lineSeparator?(s=t.indexOf(this.lineSeparator,n),o=this.lineSeparator.length):(O=r.exec(t))&&(s=O.index,o=O[0].length),this.append(t.slice(n,s<0?t.length:s)),s<0)break;if(this.lineBreak(),o>1)for(let l of this.points)l.node==e&&l.pos>this.text.length&&(l.pos-=o-1);n=s+o}}readNode(e){if(e.cmIgnore)return;let t=N.get(e),n=t&&t.overrideDOMText;if(n!=null){this.findPointInside(e,n.length);for(let r=n.iter();!r.next().done;)r.lineBreak?this.lineBreak():this.append(r.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+(_p(e,n.node,n.offset)?t:0))}};function _p(i,e,t){for(;;){if(!e||t-1)this.newSel=null;else if(t>-1&&(this.bounds=e.docView.domBoundsAround(t,n,0))){let O=s||o?[]:Ep(e),l=new Hs(O,e.state);l.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=l.text,this.newSel=Gp(O,this.bounds.from)}else{let O=e.observer.selectionRange,l=s&&s.node==O.focusNode&&s.offset==O.focusOffset||!xs(e.contentDOM,O.focusNode)?e.state.selection.main.head:e.docView.posFromDOM(O.focusNode,O.focusOffset),a=o&&o.node==O.anchorNode&&o.offset==O.anchorOffset||!xs(e.contentDOM,O.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(O.anchorNode,O.anchorOffset);this.newSel=S.single(a,l)}}};function Oh(i,e){let t,{newSel:n}=e,r=i.state.selection.main,s=i.inputState.lastKeyTime>Date.now()-100?i.inputState.lastKeyCode:-1;if(e.bounds){let{from:o,to:O}=e.bounds,l=r.from,a=null;(s===8||z.android&&e.text.length=r.from&&t.to<=r.to&&(t.from!=r.from||t.to!=r.to)&&r.to-r.from-(t.to-t.from)<=4?t={from:r.from,to:r.to,insert:i.state.doc.slice(r.from,t.from).append(t.insert).append(i.state.doc.slice(t.to,r.to))}:(z.mac||z.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=S.single(n.main.anchor-1,n.main.head-1)),t={from:r.from,to:r.to,insert:q.of([" "])}):z.chrome&&t&&t.from==t.to&&t.from==r.head&&t.insert.toString()==` - `&&i.lineWrapping&&(n&&(n=S.single(n.main.anchor-1,n.main.head-1)),t={from:r.from,to:r.to,insert:q.of([" "])}),t){if(z.ios&&i.inputState.flushIOSKey()||z.android&&(t.from==r.from&&t.to==r.to&&t.insert.length==1&&t.insert.lines==2&&mi(i.contentDOM,"Enter",13)||(t.from==r.from-1&&t.to==r.to&&t.insert.length==0||s==8&&t.insert.lengthr.head)&&mi(i.contentDOM,"Backspace",8)||t.from==r.from&&t.to==r.to+1&&t.insert.length==0&&mi(i.contentDOM,"Delete",46)))return!0;let o=t.insert.toString();i.inputState.composing>=0&&i.inputState.composing++;let O,l=()=>O||(O=Ap(i,t,n));return i.state.facet(Za).some(a=>a(i,t.from,t.to,o,l))||i.dispatch(l()),!0}else if(n&&!n.main.eq(r)){let o=!1,O="select";return i.inputState.lastSelectionTime>Date.now()-50&&(i.inputState.lastSelectionOrigin=="select"&&(o=!0),O=i.inputState.lastSelectionOrigin),i.dispatch({selection:n,scrollIntoView:o,userEvent:O}),!0}else return!1}function Ap(i,e,t){let n,r=i.state,s=r.selection.main;if(e.from>=s.from&&e.to<=s.to&&e.to-e.from>=(s.to-s.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&i.inputState.composing<0){let O=s.frome.to?r.sliceDoc(e.to,s.to):"";n=r.replaceSelection(i.state.toText(O+e.insert.sliceString(0,void 0,i.state.lineBreak)+l))}else{let O=r.changes(e),l=t&&t.main.to<=O.newLength?t.main:void 0;if(r.selection.ranges.length>1&&i.inputState.composing>=0&&e.to<=s.to&&e.to>=s.to-10){let a=i.state.sliceDoc(e.from,e.to),h,c=t&&La(i,t.main.head);if(c){let p=e.insert.length-(e.to-e.from);h={from:c.from,to:c.to-p}}else h=i.state.doc.lineAt(s.head);let f=s.to-e.to,d=s.to-s.from;n=r.changeByRange(p=>{if(p.from==s.from&&p.to==s.to)return{changes:O,range:l||p.map(O)};let m=p.to-f,g=m-a.length;if(p.to-p.from!=d||i.state.sliceDoc(g,m)!=a||p.to>=h.from&&p.from<=h.to)return{range:p};let $=r.changes({from:g,to:m,insert:e.insert}),Q=p.to-s.to;return{changes:$,range:l?S.range(Math.max(0,l.anchor+Q),Math.max(0,l.head+Q)):p.map($)}})}else n={changes:O,selection:l&&r.selection.replaceRange(l)}}let o="input.type";return(i.composing||i.inputState.compositionPendingChange&&i.inputState.compositionEndedAt>Date.now()-50)&&(i.inputState.compositionPendingChange=!1,o+=".compose",i.inputState.compositionFirstChange&&(o+=".start",i.inputState.compositionFirstChange=!1)),r.update(n,{userEvent:o,scrollIntoView:!0})}function jp(i,e,t,n){let r=Math.min(i.length,e.length),s=0;for(;s0&&O>0&&i.charCodeAt(o-1)==e.charCodeAt(O-1);)o--,O--;if(n=="end"){let l=Math.max(0,s-Math.min(o,O));t-=o+l-s}if(o=o?s-t:0;s-=l,O=s+(O-o),o=s}else if(O=O?s-t:0;s-=l,o=s+(o-O),O=s}return{from:s,toA:o,toB:O}}function Ep(i){let e=[];if(i.root.activeElement!=i.contentDOM)return e;let{anchorNode:t,anchorOffset:n,focusNode:r,focusOffset:s}=i.observer.selectionRange;return t&&(e.push(new hr(t,n)),(r!=t||s!=n)&&e.push(new hr(r,s))),e}function Gp(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?S.single(t+e,n+e):null}var Mp={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},bs=z.ie&&z.ie_version<=11,Js=class{constructor(e){this.view=e,this.active=!1,this.selectionRange=new ws,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.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver(t=>{for(let n of t)this.queue.push(n);(z.ie&&z.ie_version<=11||z.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()}),bs&&(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),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var t;((t=this.view.docView)===null||t===void 0?void 0:t.lastUpdate){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.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(){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,r=this.selectionRange;if(n.state.facet(pr)?n.root.activeElement!=this.dom:!Dn(n.dom,r))return;let s=r.anchorNode&&n.docView.nearest(r.anchorNode);if(s&&s.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(z.ie&&z.ie_version<=11||z.android&&z.chrome)&&!n.state.selection.main.empty&&r.focusNode&&tr(r.focusNode,r.focusOffset,r.anchorNode,r.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=z.safari&&e.root.nodeType==11&&Vd(this.dom.ownerDocument)==this.dom&&Ip(this.view)||er(e.root);if(!t||this.selectionRange.eq(t))return!1;let n=Dn(this.dom,t);return n&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime{let s=this.delayedAndroidKey;s&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=s.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&s.force&&mi(this.dom,s.key,s.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(r)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange{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,r=!1;for(let s of e){let o=this.readMutation(s);o&&(o.typeOver&&(r=!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:r}}readChange(){let{from:e,to:t,typeOver:n}=this.processRecords(),r=this.selectionChanged&&Dn(this.dom,this.selectionRange);if(e<0&&!r)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let s=new Ks(this.view,e,t,n);return this.view.docView.domChanged={newSel:s.newSel?s.newSel.main:null},s}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,r=Oh(this.view,t);return this.view.state==n&&this.view.update([]),r}readMutation(e){let t=this.view.docView.nearest(e.target);if(!t||t.ignoreMutation(e))return null;if(t.markDirty(e.type=="attributes"),e.type=="attributes"&&(t.flags|=4),e.type=="childList"){let n=la(t,e.previousSibling||e.target.previousSibling,-1),r=la(t,e.nextSibling||e.target.nextSibling,1);return{from:n?t.posAfter(n):t.posAtStart,to:r?t.posBefore(r):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),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),e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}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 r of this.scrollTargets)r.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey)}};function la(i,e,t){for(;e;){let n=N.get(e);if(n&&n.parent==i)return n;let r=e.parentNode;e=r!=i.dom?r:t>0?e.nextSibling:e.previousSibling}return null}function Ip(i){let e=null;function t(l){l.preventDefault(),l.stopImmediatePropagation(),e=l.getTargetRanges()[0]}if(i.contentDOM.addEventListener("beforeinput",t,!0),i.dom.ownerDocument.execCommand("indent"),i.contentDOM.removeEventListener("beforeinput",t,!0),!e)return null;let n=e.startContainer,r=e.startOffset,s=e.endContainer,o=e.endOffset,O=i.docView.domAtPos(i.state.selection.main.anchor);return tr(O.node,O.offset,s,o)&&([n,r,s,o]=[s,o,n,r]),{anchorNode:n,anchorOffset:r,focusNode:s,focusOffset:o}}var v=class i{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.composing>0}get compositionStarted(){return this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){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);let{dispatch:t}=e;this.dispatchTransactions=e.dispatchTransactions||t&&(n=>n.forEach(r=>t(r,this)))||(n=>this.update(n)),this.dispatch=this.dispatch.bind(this),this._root=e.root||_d(e.parent)||document,this.viewState=new ar(e.state||j.create(e)),e.scrollTo&&e.scrollTo.is(jn)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(_i).map(n=>new Li(n));for(let n of this.plugins)n.update(this);this.observer=new Js(this),this.inputState=new Us(this),this.inputState.ensureHandlers(this.plugins),this.docView=new or(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure(),e.parent&&e.parent.appendChild(this.dom)}dispatch(...e){let t=e.length==1&&e[0]instanceof se?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,r,s=this.state;for(let f of e){if(f.startState!=s)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");s=f.state}if(this.destroyed){this.viewState.state=s;return}let o=this.hasFocus,O=0,l=null;e.some(f=>f.annotation(th))?(this.inputState.notifiedFocused=o,O=1):o!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=o,l=ih(s,o),l||(O=1));let a=this.observer.delayedAndroidKey,h=null;if(a?(this.observer.clearDelayedAndroidKey(),h=this.observer.readChange(),(h&&!this.state.doc.eq(s.doc)||!this.state.selection.eq(s.selection))&&(h=null)):this.observer.clear(),s.facet(j.phrases)!=this.state.facet(j.phrases))return this.setState(s);r=sr.create(this,s,e),r.flags|=O;let c=this.viewState.scrollTarget;try{this.updateState=2;for(let f of e){if(c&&(c=c.map(f.changes)),f.scrollIntoView){let{main:d}=f.state.selection;c=new Ii(d.empty?d:S.cursor(d.head,d.head>d.anchor?-1:1))}for(let d of f.effects)d.is(jn)&&(c=d.value.clip(this.state))}this.viewState.update(r,c),this.bidiCache=cr.update(this.bidiCache,r.changes),r.empty||(this.updatePlugins(r),this.inputState.update(r)),t=this.docView.update(r),this.state.facet(Ai)!=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(r.startState.facet(Ln)!=r.state.facet(Ln)&&(this.viewState.mustMeasureContent=!0),(t||n||c||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),!r.empty)for(let f of this.state.facet(Rs))try{f(r)}catch(d){rt(this.state,d,"update listener")}(l||h)&&Promise.resolve().then(()=>{l&&this.state==l.startState&&this.dispatch(l),h&&!Oh(this,h)&&a.force&&mi(this.contentDOM,a.key,a.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 ar(e),this.plugins=e.facet(_i).map(n=>new Li(n)),this.pluginMap.clear();for(let n of this.plugins)n.update(this);this.docView.destroy(),this.docView=new or(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(_i),n=e.state.facet(_i);if(t!=n){let r=[];for(let s of n){let o=t.indexOf(s);if(o<0)r.push(new Li(s));else{let O=this.plugins[o];O.mustUpdate=e,r.push(O)}}for(let s of this.plugins)s.mustUpdate!=e&&s.destroy(this);this.plugins=r,this.pluginMap.clear()}else for(let r of this.plugins)r.mustUpdate=e;for(let r=0;r-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.scrollDOM,r=n.scrollTop*this.scaleY,{scrollAnchorPos:s,scrollAnchorHeight:o}=this.viewState;Math.abs(r-this.viewState.scrollTop)>1&&(o=-1),this.viewState.scrollAnchorHeight=-1;try{for(let O=0;;O++){if(o<0)if(Qa(n))s=-1,o=this.viewState.heightMap.height;else{let d=this.viewState.scrollAnchorAt(r);s=d.from,o=d.top}this.updateState=1;let l=this.viewState.measure(this);if(!l&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(O>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let a=[];l&4||([this.measureRequests,a]=[a,this.measureRequests]);let h=a.map(d=>{try{return d.read(this)}catch(p){return rt(this.state,p),aa}}),c=sr.create(this,this.state,[]),f=!1;c.flags|=l,t?t.flags|=l:t=c,this.updateState=2,c.empty||(this.updatePlugins(c),this.inputState.update(c),this.updateAttrs(),f=this.docView.update(c));for(let d=0;d1||p<-1){r=r+p,n.scrollTop=r/this.scaleY,o=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let O of this.state.facet(Rs))O(t)}get themeClasses(){return Ns+" "+(this.state.facet(Ds)?sh:rh)+" "+this.state.facet(Ln)}updateAttrs(){let e=ha(this,qa,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",translate:"no",contenteditable:this.state.facet(pr)?"true":"false",class:"cm-content",style:`${z.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),ha(this,ao,t);let n=this.observer.ignore(()=>{let r=Xs(this.contentDOM,this.contentAttrs,t),s=Xs(this.dom,this.editorAttrs,e);return r||s});return this.editorAttrs=e,this.contentAttrs=t,n}showAnnouncements(e){let t=!0;for(let n of e)for(let r of n.effects)if(r.is(i.announce)){t&&(this.announceDOM.textContent=""),t=!1;let s=this.announceDOM.appendChild(document.createElement("div"));s.textContent=r.value}}mountStyles(){this.styleModules=this.state.facet(Ai);let e=this.state.facet(i.cspNonce);Ue.mount(this.root,this.styleModules.concat(Up).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;tn.spec==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 ys(this,e,Dl(this,e,t,n))}moveByGroup(e,t){return ys(this,e,Dl(this,e,t,n=>pp(this,e.head,n)))}moveToLineBoundary(e,t,n=!0){return dp(this,e,t,n)}moveVertically(e,t,n){return ys(this,e,mp(this,e,t,n))}domAtPos(e){return this.docView.domAtPos(e)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){return this.readMeasured(),Da(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let n=this.docView.coordsAt(e,t);if(!n||n.left==n.right)return n;let r=this.state.doc.lineAt(e),s=this.bidiSpans(r),o=s[nt.find(s,e-r.from,-1,t)];return oo(n,o.dir==K.LTR==t>0)}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(Va)||ethis.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>Lp)return Ma(e.length);let t=this.textDirectionAt(e.from),n;for(let s of this.bidiCache)if(s.from==e.from&&s.dir==t&&(s.fresh||Ga(s.isolates,n=Gl(this,e.from,e.to))))return s.order;n||(n=Gl(this,e.from,e.to));let r=ep(e.text,t,n);return this.bidiCache.push(new cr(e.from,e.to,t,n,!0,r)),r}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||z.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{$a(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(){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={}){return jn.of(new Ii(typeof e=="number"?S.cursor(e):e,t.y,t.x,t.yMargin,t.xMargin))}scrollSnapshot(){let{scrollTop:e,scrollLeft:t}=this.scrollDOM,n=this.viewState.scrollAnchorAt(e);return jn.of(new Ii(S.cursor(n.from),"start","start",n.top-e,t,!0))}static domEventHandlers(e){return Ae.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return Ae.define(()=>({}),{eventObservers:e})}static theme(e,t){let n=Ue.newName(),r=[Ln.of(n),Ai.of(Fs(`.${n}`,e))];return t&&t.dark&&r.push(Ds.of(!0)),r}static baseTheme(e){return et.lowest(Ai.of(Fs("."+Ns,e,oh)))}static findFromDOM(e){var t;let n=e.querySelector(".cm-content"),r=n&&N.get(n)||N.get(e);return((t=r?.rootView)===null||t===void 0?void 0:t.view)||null}};v.styleModule=Ai;v.inputHandler=Za;v.focusChangeEffect=Ya;v.perLineTextDirection=Va;v.exceptionSink=Ra;v.updateListener=Rs;v.editable=pr;v.mouseSelectionStyle=Wa;v.dragMovesSelection=Xa;v.clickAddsSelectionRange=za;v.decorations=en;v.atomicRanges=ho;v.bidiIsolatedRanges=Ua;v.scrollMargins=_a;v.darkTheme=Ds;v.cspNonce=W.define({combine:i=>i.length?i[0]:""});v.contentAttributes=ao;v.editorAttributes=qa;v.lineWrapping=v.contentAttributes.of({class:"cm-lineWrapping"});v.announce=E.define();var Lp=4096,aa={},cr=class i{constructor(e,t,n,r,s,o){this.from=e,this.to=t,this.dir=n,this.isolates=r,this.fresh=s,this.order=o}static update(e,t){if(t.empty&&!e.some(s=>s.fresh))return e;let n=[],r=e.length?e[e.length-1].dir:K.LTR;for(let s=Math.max(0,e.length-10);s=0;r--){let s=n[r],o=typeof s=="function"?s(i):s;o&&zs(o,t)}return t}var Bp=z.mac?"mac":z.windows?"win":z.linux?"linux":"key";function Dp(i,e){let t=i.split(/-(?!$)/),n=t[t.length-1];n=="Space"&&(n=" ");let r,s,o,O;for(let l=0;ln.concat(r),[]))),t}var Pt=null,Hp=4e3;function Kp(i,e=Bp){let t=Object.create(null),n=Object.create(null),r=(o,O)=>{let l=n[o];if(l==null)n[o]=O;else if(l!=O)throw new Error("Key binding "+o+" is used both as a regular binding and as a multi-stroke prefix")},s=(o,O,l,a,h)=>{var c,f;let d=t[o]||(t[o]=Object.create(null)),p=O.split(/ (?!$)/).map($=>Dp($,e));for(let $=1;${let b=Pt={view:k,prefix:Q,scope:o};return setTimeout(()=>{Pt==b&&(Pt=null)},Hp),!0}]})}let m=p.join(" ");r(m,!1);let g=d[m]||(d[m]={preventDefault:!1,stopPropagation:!1,run:((f=(c=d._any)===null||c===void 0?void 0:c.run)===null||f===void 0?void 0:f.slice())||[]});l&&g.run.push(l),a&&(g.preventDefault=!0),h&&(g.stopPropagation=!0)};for(let o of i){let O=o.scope?o.scope.split(" "):["editor"];if(o.any)for(let a of O){let h=t[a]||(t[a]=Object.create(null));h._any||(h._any={preventDefault:!1,stopPropagation:!1,run:[]});for(let c in h)h[c].run.push(o.any)}let l=o[e]||o.key;if(l)for(let a of O)s(a,l,o.run,o.preventDefault,o.stopPropagation),o.shift&&s(a,"Shift-"+l,o.shift,o.preventDefault,o.stopPropagation)}return t}function Jp(i,e,t,n){let r=Vl(e),s=li(r,0),o=Vi(s)==r.length&&r!=" ",O="",l=!1,a=!1,h=!1;Pt&&Pt.view==t&&Pt.scope==n&&(O=Pt.prefix+" ",Fa.indexOf(e.keyCode)<0&&(a=!0,Pt=null));let c=new Set,f=g=>{if(g){for(let $ of g.run)if(!c.has($)&&(c.add($),$(t,e)))return g.stopPropagation&&(h=!0),!0;g.preventDefault&&(g.stopPropagation&&(h=!0),a=!0)}return!1},d=i[n],p,m;return d&&(f(d[O+Bn(r,e,!o)])?l=!0:o&&(e.altKey||e.metaKey||e.ctrlKey)&&!(z.windows&&e.ctrlKey&&e.altKey)&&(p=ut[e.keyCode])&&p!=r?(f(d[O+Bn(p,e,!0)])||e.shiftKey&&(m=fi[e.keyCode])!=r&&m!=p&&f(d[O+Bn(m,e,!1)]))&&(l=!0):o&&e.shiftKey&&f(d[O+Bn(r,e,!0)])&&(l=!0),!l&&f(d._any)&&(l=!0)),a&&(l=!0),l&&h&&e.stopPropagation(),l}var nn=class i{constructor(e,t,n,r,s){this.className=e,this.left=t,this.top=n,this.width=r,this.height=s}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,t){return t.className!=this.className?!1:(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width!=null&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,t,n){if(n.empty){let r=e.coordsAtPos(n.head,n.assoc||1);if(!r)return[];let s=lh(e);return[new i(t,r.left-s.left,r.top-s.top,null,r.bottom-r.top)]}else return em(e,t,n)}};function lh(i){let e=i.scrollDOM.getBoundingClientRect();return{left:(i.textDirection==K.LTR?e.left:e.right-i.scrollDOM.clientWidth*i.scaleX)-i.scrollDOM.scrollLeft*i.scaleX,top:e.top-i.scrollDOM.scrollTop*i.scaleY}}function fa(i,e,t){let n=S.cursor(e);return{from:Math.max(t.from,i.moveToLineBoundary(n,!1,!0).from),to:Math.min(t.to,i.moveToLineBoundary(n,!0,!0).from),type:Qe.Text}}function em(i,e,t){if(t.to<=i.viewport.from||t.from>=i.viewport.to)return[];let n=Math.max(t.from,i.viewport.from),r=Math.min(t.to,i.viewport.to),s=i.textDirection==K.LTR,o=i.contentDOM,O=o.getBoundingClientRect(),l=lh(i),a=o.querySelector(".cm-line"),h=a&&window.getComputedStyle(a),c=O.left+(h?parseInt(h.paddingLeft)+Math.min(0,parseInt(h.textIndent)):0),f=O.right-(h?parseInt(h.paddingRight):0),d=qs(i,n),p=qs(i,r),m=d.type==Qe.Text?d:null,g=p.type==Qe.Text?p:null;if(m&&(i.lineWrapping||d.widgetLineBreaks)&&(m=fa(i,n,m)),g&&(i.lineWrapping||p.widgetLineBreaks)&&(g=fa(i,r,g)),m&&g&&m.from==g.from)return Q(k(t.from,t.to,m));{let x=m?k(t.from,null,m):b(d,!1),w=g?k(null,t.to,g):b(p,!0),Z=[];return(m||d).to<(g||p).from-(m&&g?1:0)||d.widgetLineBreaks>1&&x.bottom+i.defaultLineHeight/2te&&xe.from=ce)break;ie>oe&&L(Math.max(J,oe),x==null&&J<=te,Math.min(ie,ce),w==null&&ie>=he,we.dir)}if(oe=Je.to+1,oe>=ce)break}return C.length==0&&L(te,x==null,he,w==null,i.textDirection),{top:M,bottom:V,horizontal:C}}function b(x,w){let Z=O.top+(w?x.top:x.bottom);return{top:Z,bottom:Z,horizontal:[]}}}function tm(i,e){return i.constructor==e.constructor&&i.eq(e)}var eo=class{constructor(e,t){this.view=e,this.layer=t,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),t.above&&this.dom.classList.add("cm-layer-above"),t.class&&this.dom.classList.add(t.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),t.mount&&t.mount(this.dom,e)}update(e){e.startState.facet(Hn)!=e.state.facet(Hn)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&(this.scale(),e.view.requestMeasure(this.measureReq))}setOrder(e){let t=0,n=e.facet(Hn);for(;t!tm(t,this.drawn[n]))){let t=this.dom.firstChild,n=0;for(let r of e)r.update&&t&&r.constructor&&this.drawn[n].constructor&&r.update(t,this.drawn[n])?(t=t.nextSibling,n++):this.dom.insertBefore(r.draw(),t);for(;t;){let r=t.nextSibling;t.remove(),t=r}this.drawn=e}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}},Hn=W.define();function ah(i){return[Ae.define(e=>new eo(e,i)),Hn.of(i)]}var hh=!z.ios,rn=W.define({combine(i){return bt(i,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})}});function ch(i={}){return[rn.of(i),im,nm,rm,Ca.of(!0)]}function fh(i){return i.startState.facet(rn)!=i.state.facet(rn)}var im=ah({above:!0,markers(i){let{state:e}=i,t=e.facet(rn),n=[];for(let r of e.selection.ranges){let s=r==e.selection.main;if(r.empty?!s||hh:t.drawRangeCursor){let o=s?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",O=r.empty?r:S.cursor(r.head,r.head>r.anchor?-1:1);for(let l of nn.forRange(i,o,O))n.push(l)}}return n},update(i,e){i.transactions.some(n=>n.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let t=fh(i);return t&&ua(i.state,e),i.docChanged||i.selectionSet||t},mount(i,e){ua(e.state,i)},class:"cm-cursorLayer"});function ua(i,e){e.style.animationDuration=i.facet(rn).cursorBlinkRate+"ms"}var nm=ah({above:!1,markers(i){return i.state.selection.ranges.map(e=>e.empty?[]:nn.forRange(i,"cm-selectionBackground",e)).reduce((e,t)=>e.concat(t))},update(i,e){return i.docChanged||i.selectionSet||i.viewportChanged||fh(i)},class:"cm-selectionLayer"}),to={".cm-line":{"& ::selection":{backgroundColor:"transparent !important"},"&::selection":{backgroundColor:"transparent !important"}}};hh&&(to[".cm-line"].caretColor="transparent !important",to[".cm-content"]={caretColor:"transparent !important"});var rm=et.highest(v.theme(to)),uh=E.define({map(i,e){return i==null?null:e.mapPos(i)}}),Gi=$e.define({create(){return null},update(i,e){return i!=null&&(i=e.changes.mapPos(i)),e.effects.reduce((t,n)=>n.is(uh)?n.value:t,i)}}),sm=Ae.fromClass(class{constructor(i){this.view=i,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(i){var e;let t=i.state.field(Gi);t==null?this.cursor!=null&&((e=this.cursor)===null||e===void 0||e.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(i.startState.field(Gi)!=t||i.docChanged||i.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:i}=this,e=i.state.field(Gi),t=e!=null&&i.coordsAtPos(e);if(!t)return null;let n=i.scrollDOM.getBoundingClientRect();return{left:t.left-n.left+i.scrollDOM.scrollLeft*i.scaleX,top:t.top-n.top+i.scrollDOM.scrollTop*i.scaleY,height:t.bottom-t.top}}drawCursor(i){if(this.cursor){let{scaleX:e,scaleY:t}=this.view;i?(this.cursor.style.left=i.left/e+"px",this.cursor.style.top=i.top/t+"px",this.cursor.style.height=i.height/t+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(i){this.view.state.field(Gi)!=i&&this.view.dispatch({effects:uh.of(i)})}},{eventObservers:{dragover(i){this.setDropPos(this.view.posAtCoords({x:i.clientX,y:i.clientY}))},dragleave(i){(i.target==this.view.contentDOM||!this.view.contentDOM.contains(i.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function dh(){return[Gi,sm]}var Lb=/x/.unicode!=null?"gu":"g";function co(){return Om}var om=I.line({class:"cm-activeLine"}),Om=Ae.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 r=i.lineBlockAt(n.head);r.from>e&&(t.push(om.range(r.from)),e=r.from)}return I.set(t)}},{decorations:i=>i.decorations});var io=2e3;function lm(i,e,t){let n=Math.min(e.line,t.line),r=Math.max(e.line,t.line),s=[];if(e.off>io||t.off>io||e.col<0||t.col<0){let o=Math.min(e.off,t.off),O=Math.max(e.off,t.off);for(let l=n;l<=r;l++){let a=i.doc.line(l);a.length<=O&&s.push(S.range(a.from+o,a.to+O))}}else{let o=Math.min(e.col,t.col),O=Math.max(e.col,t.col);for(let l=n;l<=r;l++){let a=i.doc.line(l),h=Un(a.text,o,i.tabSize,!0);if(h<0)s.push(S.cursor(a.to));else{let c=Un(a.text,O,i.tabSize);s.push(S.range(a.from+h,a.from+c))}}}return s}function am(i,e){let t=i.coordsAtPos(i.viewport.from);return t?Math.round(Math.abs((t.left-e)/i.defaultCharacterWidth)):-1}function da(i,e){let t=i.posAtCoords({x:e.clientX,y:e.clientY},!1),n=i.state.doc.lineAt(t),r=t-n.from,s=r>io?-1:r==n.length?am(i,e.clientX):ve(n.text,i.state.tabSize,t-n.from);return{line:n.number,col:s,off:r}}function hm(i,e){let t=da(i,e),n=i.state.selection;return t?{update(r){if(r.docChanged){let s=r.changes.mapPos(r.startState.doc.line(t.line).from),o=r.state.doc.lineAt(s);t={line:o.number,col:t.col,off:Math.min(t.off,o.length)},n=n.map(r.changes)}},get(r,s,o){let O=da(i,r);if(!O)return n;let l=lm(i.state,t,O);return l.length?o?S.create(l.concat(n.ranges)):S.create(l):n}}:null}function ph(i){let e=i?.eventFilter||(t=>t.altKey&&t.button==0);return v.mouseSelectionStyle.of((t,n)=>e(n)?hm(t,n):null)}var Bb=v.baseTheme({".cm-tooltip":{zIndex:100,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:`${7*2}px`,position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}});var De=class extends Ie{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}};De.prototype.elementClass="";De.prototype.toDOM=void 0;De.prototype.mapMode=Oe.TrackBefore;De.prototype.startSide=De.prototype.endSide=-1;De.prototype.point=!0;var Kn=W.define();var Jn=W.define();var no=W.define({combine:i=>i.some(e=>e)});function cm(i){let e=[fm];return i&&i.fixed===!1&&e.push(no.of(!0)),e}var fm=Ae.fromClass(class{constructor(i){this.view=i,this.prevViewport=i.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=i.state.facet(Jn).map(e=>new fr(i,e));for(let e of this.gutters)this.dom.appendChild(e.dom);this.fixed=!i.state.facet(no),this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),i.scrollDOM.insertBefore(this.dom,i.contentDOM)}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)}i.geometryChanged&&(this.dom.style.minHeight=this.view.contentHeight+"px"),this.view.state.facet(no)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":""),this.prevViewport=i.view.viewport}syncGutters(i){let e=this.dom.nextSibling;i&&this.dom.remove();let t=B.iter(this.view.state.facet(Kn),this.view.viewport.from),n=[],r=this.gutters.map(s=>new so(s,this.view.viewport,-this.view.documentPadding.top));for(let s of this.view.viewportLineBlocks)if(n.length&&(n=[]),Array.isArray(s.type)){let o=!0;for(let O of s.type)if(O.type==Qe.Text&&o){ro(t,n,O.from);for(let l of r)l.line(this.view,O,n);o=!1}else if(O.widget)for(let l of r)l.widget(this.view,O)}else if(s.type==Qe.Text){ro(t,n,s.from);for(let o of r)o.line(this.view,s,n)}else if(s.widget)for(let o of r)o.widget(this.view,s);for(let s of r)s.finish();i&&this.view.scrollDOM.insertBefore(this.dom,e)}updateGutters(i){let e=i.startState.facet(Jn),t=i.state.facet(Jn),n=i.docChanged||i.heightChanged||i.viewportChanged||!B.eq(i.startState.facet(Kn),i.state.facet(Kn),i.view.viewport.from,i.view.viewport.to);if(e==t)for(let r of this.gutters)r.update(i)&&(n=!0);else{n=!0;let r=[];for(let s of t){let o=e.indexOf(s);o<0?r.push(new fr(this.view,s)):(this.gutters[o].update(i),r.push(this.gutters[o]))}for(let s of this.gutters)s.dom.remove(),r.indexOf(s)<0&&s.destroy();for(let s of r)this.dom.appendChild(s.dom);this.gutters=r}return n}destroy(){for(let i of this.gutters)i.destroy();this.dom.remove()}},{provide:i=>v.scrollMargins.of(e=>{let t=e.plugin(i);return!t||t.gutters.length==0||!t.fixed?null:e.textDirection==K.LTR?{left:t.dom.offsetWidth*e.scaleX}:{right:t.dom.offsetWidth*e.scaleX}})});function pa(i){return Array.isArray(i)?i:[i]}function ro(i,e,t){for(;i.value&&i.from<=t;)i.from==t&&e.push(i.value),i.next()}var so=class{constructor(e,t,n){this.gutter=e,this.height=n,this.i=0,this.cursor=B.iter(e.markers,t.from)}addElement(e,t,n){let{gutter:r}=this,s=(t.top-this.height)/e.scaleY,o=t.height/e.scaleY;if(this.i==r.elements.length){let O=new ur(e,o,s,n);r.elements.push(O),r.dom.appendChild(O.dom)}else r.elements[this.i].update(e,o,s,n);this.height=t.bottom,this.i++}line(e,t,n){let r=[];ro(this.cursor,r,t.from),n.length&&(r=r.concat(n));let s=this.gutter.config.lineMarker(e,t,r);s&&r.unshift(s);let o=this.gutter;r.length==0&&!o.config.renderEmptyElements||this.addElement(e,t,r)}widget(e,t){let n=this.gutter.config.widgetMarker(e,t.widget,t);n&&this.addElement(e,t,[n])}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}},fr=class{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,r=>{let s=r.target,o;if(s!=this.dom&&this.dom.contains(s)){for(;s.parentNode!=this.dom;)s=s.parentNode;let l=s.getBoundingClientRect();o=(l.top+l.bottom)/2}else o=r.clientY;let O=e.lineBlockAtHeight(o-e.documentTop);t.domEventHandlers[n](e,O,r)&&r.preventDefault()});this.markers=pa(t.markers(e)),t.initialSpacer&&(this.spacer=new ur(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=pa(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let r=this.config.updateSpacer(this.spacer.markers[0],e);r!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[r])}let n=e.view.viewport;return!B.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()}},ur=class{constructor(e,t,n,r){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,n,r)}update(e,t,n,r){this.height!=t&&(this.height=t,this.dom.style.height=t+"px"),this.above!=n&&(this.dom.style.marginTop=(this.above=n)?n+"px":""),um(this.markers,r)||this.setMarkers(e,r)}setMarkers(e,t){let n="cm-gutterElement",r=this.dom.firstChild;for(let s=0,o=0;;){let O=o,l=ss(O,l,a)||o(O,l,a):o}return n}})}}),Di=class extends De{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}};function Ps(i,e){return i.state.facet(pi).formatNumber(e,i.state)}var pm=Jn.compute([pi],i=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(dm)},lineMarker(e,t,n){return n.some(r=>r.toDOM)?null:new Di(Ps(e,e.state.doc.lineAt(t.from).number))},widgetMarker:()=>null,lineMarkerChange:e=>e.startState.facet(pi)!=e.state.facet(pi),initialSpacer(e){return new Di(Ps(e,ma(e.state.doc.lines)))},updateSpacer(e,t){let n=Ps(t.view,ma(t.view.state.doc.lines));return n==e.number?e:new Di(n)},domEventHandlers:i.facet(pi).domEventHandlers}));function mh(i={}){return[pi.of(i),cm(),pm]}function ma(i){let e=9;for(;e{let e=[],t=-1;for(let n of i.selection.ranges){let r=i.doc.lineAt(n.head).from;r>t&&(t=r,e.push(mm.range(r)))}return B.of(e)});function fo(){return gm}async function gh(i){if(window.isSecureContext&&navigator.clipboard){await navigator.clipboard.writeText(i);return}let e=document.createElement("textarea");e.style="position: absolute; left: -1000px; top: -1000px;",e.value=i,document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e)}var $m=0,Te=class{constructor(e,t){this.from=e,this.to=t}},R=class{constructor(e={}){this.id=$m++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=F.match(e)),t=>{let n=e(t);return n===void 0?null:[this,n]}}};R.closedBy=new R({deserialize:i=>i.split(" ")});R.openedBy=new R({deserialize:i=>i.split(" ")});R.group=new R({deserialize:i=>i.split(" ")});R.contextHash=new R({perNode:!0});R.lookAhead=new R({perNode:!0});R.mounted=new R({perNode:!0});var Bt=class{constructor(e,t,n){this.tree=e,this.overlay=t,this.parser=n}static get(e){return e&&e.props&&e.props[R.mounted.id]}},Sm=Object.create(null),F=class i{constructor(e,t,n,r=0){this.name=e,this.props=t,this.id=n,this.flags=r}static define(e){let t=e.props&&e.props.length?Object.create(null):Sm,n=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),r=new i(e.name||"",t,e.id,n);if(e.props){for(let s of e.props)if(Array.isArray(s)||(s=s(r)),s){if(s[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[s[0].id]=s[1]}}return r}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(R.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 r of n.split(" "))t[r]=e[n];return n=>{for(let r=n.prop(R.group),s=-1;s<(r?r.length:0);s++){let o=t[s<0?n.name:r[s]];if(o)return o}}}};F.none=new F("",Object.create(null),0,8);var pt=class i{constructor(e){this.types=e;for(let t=0;t0;for(let l=this.cursor(o|_.IncludeAnonymous);;){let a=!1;if(l.from<=s&&l.to>=r&&(!O&&l.type.isAnonymous||t(l)!==!1)){if(l.firstChild())continue;a=!0}for(;a&&n&&(O||!l.type.isAnonymous)&&n(l),!l.nextSibling();){if(!l.parent())return;a=!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:xo(F.none,this.children,this.positions,0,this.children.length,0,this.length,(t,n,r)=>new i(this.type,t,n,r,this.propValues),e.makeTree||((t,n,r)=>new i(F.none,t,n,r)))}static build(e){return ym(e)}};Y.empty=new Y(F.none,[],[],0);var uo=class i{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 i(this.buffer,this.index)}},Dt=class i{constructor(e,t,n){this.buffer=e,this.length=t,this.set=n}get type(){return F.none}toString(){let e=[];for(let t=0;t0));l=o[l+3]);return O}slice(e,t,n){let r=this.buffer,s=new Uint16Array(t-e),o=0;for(let O=e,l=0;O=e&&te;case 1:return t<=e&&n>e;case 2:return n>e;case 4:return!0}}function sn(i,e,t,n){for(var r;i.from==i.to||(t<1?i.from>=e:i.from>e)||(t>-1?i.to<=e:i.to0?O.length:-1;e!=a;e+=t){let h=O[e],c=l[e]+o.from;if(xh(r,n,c,c+h.length)){if(h instanceof Dt){if(s&_.ExcludeBuffers)continue;let f=h.findChild(0,h.buffer.length,t,n-c,r);if(f>-1)return new Nt(new mo(o,h,e,c),null,f)}else if(s&_.IncludeAnonymous||!h.type.isAnonymous||Po(h)){let f;if(!(s&_.IgnoreMounts)&&(f=Bt.get(h))&&!f.overlay)return new i(f.tree,c,e,o);let d=new i(h,c,e,o);return s&_.IncludeAnonymous||!d.type.isAnonymous?d:d.nextChild(t<0?h.children.length-1:0,t,n,r)}}}if(s&_.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)}enter(e,t,n=0){let r;if(!(n&_.IgnoreOverlays)&&(r=Bt.get(this._tree))&&r.overlay){let s=e-this.from;for(let{from:o,to:O}of r.overlay)if((t>0?o<=s:o=s:O>s))return new i(r.tree,r.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 Sh(i,e,t,n){let r=i.cursor(),s=[];if(!r.firstChild())return s;if(t!=null){for(;!r.type.is(t);)if(!r.nextSibling())return s}for(;;){if(n!=null&&r.type.is(n))return s;if(r.type.is(e)&&s.push(r.node),!r.nextSibling())return n==null?s:[]}}function po(i,e,t=e.length-1){for(let n=i.parent;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}var mo=class{constructor(e,t,n,r){this.parent=e,this.buffer=t,this.index=n,this.start=r}},Nt=class i extends $r{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:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.context.start,n);return s<0?null:new i(this.context,this,s)}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)}enter(e,t,n=0){if(n&_.ExcludeBuffers)return null;let{buffer:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return s<0?null:new i(this.context,this,s)}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 i(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 i(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:n}=this.context,r=this.index+4,s=n.buffer[this.index+3];if(s>r){let o=n.buffer[this.index+1];e.push(n.slice(r,s,o)),t.push(0)}return new Y(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}};function wh(i){if(!i.length)return null;if(i.length==1)return i[0];let e=0,t=i[0];for(let s=1;st.from||o.to=e){let O=new Re(o.tree,o.overlay[0].from+s.from,0,null);(r||(r=[n])).push(sn(O,e,t,!1))}}return r?wh(r):n}var $i=class{get name(){return this.type.name}constructor(e,t=0){if(this.mode=t,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,e instanceof Re)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:r}=this.buffer;return this.type=t||r.set.types[r.buffer[e]],this.from=n+r.buffer[e+1],this.to=n+r.buffer[e+2],!0}yield(e){return e?e instanceof Re?(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:r}=this.buffer,s=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.buffer.start,n);return s<0?!1:(this.stack.push(this.index),this.yieldBuf(s))}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&_.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,n))}parent(){if(!this.buffer)return this.yieldNode(this.mode&_.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&_.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 r=n<0?0:this.stack[n]+4;if(this.index!=r)return this.yieldBuf(t.findChild(r,this.index,-1,0,4))}else{let r=t.buffer[this.index+3];if(r<(n<0?t.buffer.length:t.buffer[this.stack[n]+3]))return this.yieldBuf(r)}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:r}=this;if(r){if(e>0){if(this.index-1)for(let s=t+e,o=e<0?-1:n._tree.children.length;s!=o;s+=e){let O=n._tree.children[s];if(this.mode&_.IncludeAnonymous||O instanceof Dt||!O.type.isAnonymous||Po(O))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=0;){for(let o=e;o;o=o._parent)if(o.index==r){if(r==this.index)return o;t=o,n=s+1;break e}r=this.stack[--s]}for(let r=n;r=0;s--){if(s<0)return po(this.node,e,r);let o=n[t.buffer[this.stack[s]]];if(!o.isAnonymous){if(e[r]&&e[r]!=o.name)return!1;r--}}return!0}};function Po(i){return i.children.some(e=>e instanceof Dt||!e.type.isAnonymous||Po(e))}function ym(i){var e;let{buffer:t,nodeSet:n,maxBufferLength:r=1024,reused:s=[],minRepeatType:o=n.types.length}=i,O=Array.isArray(t)?new uo(t,t.length):t,l=n.types,a=0,h=0;function c(b,x,w,Z,M){let{id:V,start:C,end:L,size:te}=O,he=h;for(;te<0;)if(O.next(),te==-1){let we=s[V];w.push(we),Z.push(C-b);return}else if(te==-3){a=V;return}else if(te==-4){h=V;return}else throw new RangeError(`Unrecognized record size: ${te}`);let xe=l[V],oe,ce,Je=C-b;if(L-C<=r&&(ce=m(O.pos-x,M))){let we=new Uint16Array(ce.size-ce.skip),J=O.pos-ce.size,ie=we.length;for(;O.pos>J;)ie=g(ce.start,we,ie);oe=new Dt(we,L-ce.start,n),Je=ce.start-b}else{let we=O.pos-te;O.next();let J=[],ie=[],At=V>=o?V:-1,ri=0,Tn=L;for(;O.pos>we;)At>=0&&O.id==At&&O.size>=0?(O.end<=Tn-r&&(d(J,ie,C,ri,O.end,Tn,At,he),ri=J.length,Tn=O.end),O.next()):c(C,we,J,ie,At);if(At>=0&&ri>0&&ri-1&&ri>0){let hl=f(xe);oe=xo(xe,J,ie,0,J.length,0,L-C,hl,hl)}else oe=p(xe,J,ie,L-C,he-L)}w.push(oe),Z.push(Je)}function f(b){return(x,w,Z)=>{let M=0,V=x.length-1,C,L;if(V>=0&&(C=x[V])instanceof Y){if(!V&&C.type==b&&C.length==Z)return C;(L=C.prop(R.lookAhead))&&(M=w[V]+C.length+L)}return p(b,x,w,Z,M)}}function d(b,x,w,Z,M,V,C,L){let te=[],he=[];for(;b.length>Z;)te.push(b.pop()),he.push(x.pop()+w-M);b.push(p(n.types[C],te,he,V-M,L-V)),x.push(M-w)}function p(b,x,w,Z,M=0,V){if(a){let C=[R.contextHash,a];V=V?[C].concat(V):[C]}if(M>25){let C=[R.lookAhead,M];V=V?[C].concat(V):[C]}return new Y(b,x,w,Z,V)}function m(b,x){let w=O.fork(),Z=0,M=0,V=0,C=w.end-r,L={size:0,start:0,skip:0};e:for(let te=w.pos-b;w.pos>te;){let he=w.size;if(w.id==x&&he>=0){L.size=Z,L.start=M,L.skip=V,V+=4,Z+=4,w.next();continue}let xe=w.pos-he;if(he<0||xe=o?4:0,ce=w.start;for(w.next();w.pos>xe;){if(w.size<0)if(w.size==-3)oe+=4;else break e;else w.id>=o&&(oe+=4);w.next()}M=ce,Z+=he,V+=oe}return(x<0||Z==b)&&(L.size=Z,L.start=M,L.skip=V),L.size>4?L:void 0}function g(b,x,w){let{id:Z,start:M,end:V,size:C}=O;if(O.next(),C>=0&&Z4){let te=O.pos-(C-4);for(;O.pos>te;)w=g(b,x,w)}x[--w]=L,x[--w]=V-b,x[--w]=M-b,x[--w]=Z}else C==-3?a=Z:C==-4&&(h=Z);return w}let $=[],Q=[];for(;O.pos>0;)c(i.start||0,i.bufferStart||0,$,Q,-1);let k=(e=i.length)!==null&&e!==void 0?e:$.length?Q[0]+$[0].length:0;return new Y(l[i.topID],$.reverse(),Q.reverse(),k)}var Qh=new WeakMap;function gr(i,e){if(!i.isAnonymous||e instanceof Dt||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 Y)){t=1;break}t+=gr(i,n)}Qh.set(e,t)}return t}function xo(i,e,t,n,r,s,o,O,l){let a=0;for(let p=n;p=h)break;w+=Z}if(k==b+1){if(w>h){let Z=p[b];d(Z.children,Z.positions,0,Z.children.length,m[b]+Q);continue}c.push(p[b])}else{let Z=m[k-1]+p[k-1].length-x;c.push(xo(i,p,m,b,k,x,Z,null,l))}f.push(x+Q-s)}}return d(e,t,n,r,0),(O||l)(c,f,o)}var Si=class{constructor(){this.map=new WeakMap}setBuffer(e,t,n){let r=this.map.get(e);r||this.map.set(e,r=new Map),r.set(t,n)}getBuffer(e,t){let n=this.map.get(e);return n&&n.get(t)}set(e,t){e instanceof Nt?this.setBuffer(e.context.buffer,e.index,t):e instanceof Re&&this.map.set(e.tree,t)}get(e){return e instanceof Nt?this.getBuffer(e.context.buffer,e.index):e instanceof Re?this.map.get(e.tree):void 0}cursorSet(e,t){e.buffer?this.setBuffer(e.buffer.buffer,e.index,t):this.map.set(e.tree,t)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}},mt=class i{constructor(e,t,n,r,s=!1,o=!1){this.from=e,this.to=t,this.tree=n,this.offset=r,this.open=(s?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 r=[new i(0,e.length,e,0,!1,n)];for(let s of t)s.to>e.length&&r.push(s);return r}static applyChanges(e,t,n=128){if(!t.length)return e;let r=[],s=1,o=e.length?e[0]:null;for(let O=0,l=0,a=0;;O++){let h=O=n)for(;o&&o.from=f.from||c<=f.to||a){let d=Math.max(f.from,l)-a,p=Math.min(f.to,c)-a;f=d>=p?null:new i(d,p,f.tree,f.offset+a,O>0,!!h)}if(f&&r.push(f),o.to>c)break;o=snew Te(r.from,r.to)):[new Te(0,0)]:[new Te(0,e.length)],this.createParse(e,t||[],n)}parse(e,t,n){let r=this.startParse(e,t,n);for(;;){let s=r.advance();if(s)return s}}},$o=class{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 Qi(i){return(e,t,n,r)=>new yo(e,i,t,n,r)}var Sr=class{constructor(e,t,n,r,s){if(this.parser=e,this.parse=t,this.overlay=n,this.target=r,this.ranges=s,!s.length||s.some(o=>o.from>=o.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(s))}},So=class{constructor(e,t,n,r,s,o,O){this.parser=e,this.predicate=t,this.mounts=n,this.index=r,this.start=s,this.target=o,this.prev=O,this.depth=0,this.ranges=[]}},Qo=new R({perNode:!0}),yo=class{constructor(e,t,n,r,s){this.nest=t,this.input=n,this.fragments=r,this.ranges=s,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 r of this.inner)r.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let n=this.baseTree;return this.stoppedAt!=null&&(n=new Y(n.type,n.children,n.positions,n.length,n.propValues.concat([[Qo,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[R.mounted.id]=new Bt(t,e.overlay,e.parser),e.target.props=n}return null}get parsedPos(){if(this.baseParse)return 0;let e=this.input.length;for(let t=this.innerDone;th.frag.from<=r.from&&h.frag.to>=r.to&&h.mount.overlay);if(a)for(let h of a.mount.overlay){let c=h.from+a.pos,f=h.to+a.pos;c>=r.from&&f<=r.to&&!t.ranges.some(d=>d.fromc)&&t.ranges.push({from:c,to:f})}}O=!1}else if(n&&(o=bm(n.ranges,r.from,r.to)))O=o!=2;else if(!r.type.isAnonymous&&r.fromnew Te(c.from-r.from,c.to-r.from)):null,r.tree,h)),s.overlay?h.length&&(n={ranges:h,depth:0,prev:n}):O=!1}}else t&&(l=t.predicate(r))&&(l===!0&&(l=new Te(r.from,r.to)),l.fromnew Te(h.from-t.start,h.to-t.start)),t.target,a)),t=t.prev}n&&!--n.depth&&(n=n.prev)}}}};function bm(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 yh(i,e,t,n,r,s){if(e=e.to);n++);let o=r.children[n],O=o.buffer;function l(a,h,c,f,d){let p=a;for(;O[p+2]+s<=e.from;)p=O[p+3];let m=[],g=[];yh(o,a,p,m,g,f);let $=O[p+1],Q=O[p+2],k=$+s==e.from&&Q+s==e.to&&O[p]==e.type.id;return m.push(k?e.toTree():l(p+4,O[p+3],o.set.types[O[p]],$,Q-$)),g.push($-f),yh(o,O[p+3],h,m,g,f),new Y(c,m,g,d)}r.children[n]=l(0,O.length,F.none,0,o.length);for(let a=0;a<=t;a++)i.childAfter(e.from)}var Qr=class{constructor(e,t){this.offset=t,this.done=!1,this.cursor=e.cursor(_.IncludeAnonymous|_.IgnoreMounts)}moveTo(e){let{cursor:t}=this,n=e-this.offset;for(;!this.done&&t.from=e&&t.enter(n,1,_.IgnoreOverlays|_.ExcludeBuffers)||t.next(!1)||(this.done=!0)}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 Y)t=t.children[0];else break}return!1}},bo=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(Qo))!==null&&t!==void 0?t:n.to,this.inner=new Qr(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(Qo))!==null&&e!==void 0?e:t.to,this.inner=new Qr(t.tree,-t.offset)}}findMounts(e,t){var n;let r=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let s=this.inner.cursor.node;s;s=s.parent){let o=(n=s.tree)===null||n===void 0?void 0:n.prop(R.mounted);if(o&&o.parser==t)for(let O=this.fragI;O=s.to)break;l.tree==this.curFrag.tree&&r.push({frag:l,pos:s.from-l.offset,mount:o})}}}return r}};function bh(i,e){let t=null,n=e;for(let r=1,s=0;r=O)break;l.to<=o||(t||(n=t=e.slice()),l.fromO&&t.splice(s+1,0,new Te(O,l.to))):l.to>O?t[s--]=new Te(O,l.to):t.splice(s--,1))}}return n}function xm(i,e,t,n){let r=0,s=0,o=!1,O=!1,l=-1e9,a=[];for(;;){let h=r==i.length?1e9:o?i[r].to:i[r].from,c=s==e.length?1e9:O?e[s].to:e[s].from;if(o!=O){let f=Math.max(l,t),d=Math.min(h,c,n);fnew Te(f.from+n,f.to+n)),c=xm(e,h,l,a);for(let f=0,d=l;;f++){let p=f==c.length,m=p?a:c[f].from;if(m>d&&t.push(new mt(d,m,r.tree,-o,s.from>=d||s.openStart,s.to<=m||s.openEnd)),p)break;d=c[f].to}}else t.push(new mt(l,a,r.tree,-o,s.from>=o||s.openStart,s.to<=O||s.openEnd))}return t}var wm=0,je=class i{constructor(e,t,n){this.set=e,this.base=t,this.modified=n,this.id=wm++}static define(e){if(e?.base)throw new Error("Can not derive from a modified tag");let t=new i([],null,[]);if(t.set.push(t),e)for(let n of e.set)t.set.push(n);return t}static defineModifier(){let e=new xr;return t=>t.modified.indexOf(e)>-1?t:xr.get(t.base||t,t.modified.concat(e).sort((n,r)=>n.id-r.id))}},km=0,xr=class i{constructor(){this.instances=[],this.id=km++}static get(e,t){if(!t.length)return e;let n=t[0].instances.find(O=>O.base==e&&vm(t,O.modified));if(n)return n;let r=[],s=new je(r,e,t);for(let O of t)O.instances.push(s);let o=Tm(t);for(let O of e.set)if(!O.modified.length)for(let l of o)r.push(i.get(O,l));return s}};function vm(i,e){return i.length==e.length&&i.every((t,n)=>t==e[n])}function Tm(i){let e=[[]];for(let t=0;tn.length-t.length)}function ne(i){let e=Object.create(null);for(let t in i){let n=i[t];Array.isArray(n)||(n=[n]);for(let r of t.split(" "))if(r){let s=[],o=2,O=r;for(let c=0;;){if(O=="..."&&c>0&&c+3==r.length){o=1;break}let f=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(O);if(!f)throw new RangeError("Invalid path: "+r);if(s.push(f[0]=="*"?"":f[0][0]=='"'?JSON.parse(f[0]):f[0]),c+=f[0].length,c==r.length)break;let d=r[c++];if(c==r.length&&d=="!"){o=0;break}if(d!="/")throw new RangeError("Invalid path: "+r);O=r.slice(c)}let l=s.length-1,a=s[l];if(!a)throw new RangeError("Invalid path: "+r);let h=new yi(n,o,l>0?s.slice(0,l):null);e[a]=h.sort(e[a])}}return Th.add(e)}var Th=new R,yi=class{constructor(e,t,n,r){this.tags=e,this.mode=t,this.context=n,this.next=r}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth{let o=r;for(let O of s)for(let l of O.set){let a=t[l.id];if(a){o=o?o+" "+a:a;break}}return o},scope:n}}function zm(i,e){let t=null;for(let n of i){let r=n.style(e);r&&(t=t?t+" "+r:r)}return t}function zh(i,e,t,n=0,r=i.length){let s=new ko(n,Array.isArray(e)?e:[e],t);s.highlightRange(i.cursor(),n,r,"",s.highlighters),s.flush(r)}var ko=class{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,r,s){let{type:o,from:O,to:l}=e;if(O>=n||l<=t)return;o.isTop&&(s=this.highlighters.filter(d=>!d.scope||d.scope(o)));let a=r,h=Xm(e)||yi.empty,c=zm(s,h.tags);if(c&&(a&&(a+=" "),a+=c,h.mode==1&&(r+=(r?" ":"")+c)),this.startSpan(Math.max(t,O),a),h.opaque)return;let f=e.tree&&e.tree.prop(R.mounted);if(f&&f.overlay){let d=e.node.enter(f.overlay[0].from+O,1),p=this.highlighters.filter(g=>!g.scope||g.scope(f.tree.type)),m=e.firstChild();for(let g=0,$=O;;g++){let Q=g=k||!e.nextSibling())););if(!Q||k>n)break;$=Q.to+O,$>t&&(this.highlightRange(d.cursor(),Math.max(t,Q.from+O),Math.min(n,$),"",p),this.startSpan(Math.min(n,$),a))}m&&e.parent()}else if(e.firstChild()){f&&(r="");do if(!(e.to<=t)){if(e.from>=n)break;this.highlightRange(e,t,n,r,s),this.startSpan(Math.min(n,e.to),a)}while(e.nextSibling());e.parent()}}};function Xm(i){let e=i.type.prop(Th);for(;e&&e.context&&!i.matchContext(e.context);)e=e.next;return e||null}var P=je.define,yr=P(),zt=P(),kh=P(zt),vh=P(zt),Xt=P(),br=P(Xt),wo=P(Xt),at=P(),Ft=P(at),Ot=P(),lt=P(),vo=P(),on=P(vo),Pr=P(),u={comment:yr,lineComment:P(yr),blockComment:P(yr),docComment:P(yr),name:zt,variableName:P(zt),typeName:kh,tagName:P(kh),propertyName:vh,attributeName:P(vh),className:P(zt),labelName:P(zt),namespace:P(zt),macroName:P(zt),literal:Xt,string:br,docString:P(br),character:P(br),attributeValue:P(br),number:wo,integer:P(wo),float:P(wo),bool:P(Xt),regexp:P(Xt),escape:P(Xt),color:P(Xt),url:P(Xt),keyword:Ot,self:P(Ot),null:P(Ot),atom:P(Ot),unit:P(Ot),modifier:P(Ot),operatorKeyword:P(Ot),controlKeyword:P(Ot),definitionKeyword:P(Ot),moduleKeyword:P(Ot),operator:lt,derefOperator:P(lt),arithmeticOperator:P(lt),logicOperator:P(lt),bitwiseOperator:P(lt),compareOperator:P(lt),updateOperator:P(lt),definitionOperator:P(lt),typeOperator:P(lt),controlOperator:P(lt),punctuation:vo,separator:P(vo),bracket:on,angleBracket:P(on),squareBracket:P(on),paren:P(on),brace:P(on),content:at,heading:Ft,heading1:P(Ft),heading2:P(Ft),heading3:P(Ft),heading4:P(Ft),heading5:P(Ft),heading6:P(Ft),contentSeparator:P(at),list:P(at),quote:P(at),emphasis:P(at),strong:P(at),link:P(at),monospace:P(at),strikethrough:P(at),inserted:P(),deleted:P(),changed:P(),invalid:P(),meta:Pr,documentMeta:P(Pr),annotation:P(Pr),processingInstruction:P(Pr),definition:je.defineModifier(),constant:je.defineModifier(),function:je.defineModifier(),standard:je.defineModifier(),local:je.defineModifier(),special:je.defineModifier()},i0=To([{tag:u.link,class:"tok-link"},{tag:u.heading,class:"tok-heading"},{tag:u.emphasis,class:"tok-emphasis"},{tag:u.strong,class:"tok-strong"},{tag:u.keyword,class:"tok-keyword"},{tag:u.atom,class:"tok-atom"},{tag:u.bool,class:"tok-bool"},{tag:u.url,class:"tok-url"},{tag:u.labelName,class:"tok-labelName"},{tag:u.inserted,class:"tok-inserted"},{tag:u.deleted,class:"tok-deleted"},{tag:u.literal,class:"tok-literal"},{tag:u.string,class:"tok-string"},{tag:u.number,class:"tok-number"},{tag:[u.regexp,u.escape,u.special(u.string)],class:"tok-string2"},{tag:u.variableName,class:"tok-variableName"},{tag:u.local(u.variableName),class:"tok-variableName tok-local"},{tag:u.definition(u.variableName),class:"tok-variableName tok-definition"},{tag:u.special(u.variableName),class:"tok-variableName2"},{tag:u.definition(u.propertyName),class:"tok-propertyName tok-definition"},{tag:u.typeName,class:"tok-typeName"},{tag:u.namespace,class:"tok-namespace"},{tag:u.className,class:"tok-className"},{tag:u.macroName,class:"tok-macroName"},{tag:u.propertyName,class:"tok-propertyName"},{tag:u.operator,class:"tok-operator"},{tag:u.comment,class:"tok-comment"},{tag:u.meta,class:"tok-meta"},{tag:u.invalid,class:"tok-invalid"},{tag:u.punctuation,class:"tok-punctuation"}]);var zo,$t=new R;function Pi(i){return W.define({combine:i?e=>e.concat(i):void 0})}var Tr=new R,ue=class{constructor(e,t,n=[],r=""){this.data=e,this.name=r,j.prototype.hasOwnProperty("tree")||Object.defineProperty(j.prototype,"tree",{get(){return A(this)}}),this.parser=t,this.extension=[bi.of(this),j.languageData.of((s,o,O)=>{let l=Xh(s,o,O),a=l.type.prop($t);if(!a)return[];let h=s.facet(a),c=l.type.prop(Tr);if(c){let f=l.resolve(o-l.from,O);for(let d of c)if(d.test(f,s)){let p=s.facet(d.facet);return d.type=="replace"?p:p.concat(h)}}return h})].concat(n)}isActiveAt(e,t,n=-1){return Xh(e,t,n).type.prop($t)==this.data}findRegions(e){let t=e.facet(bi);if(t?.data==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let n=[],r=(s,o)=>{if(s.prop($t)==this.data){n.push({from:o,to:o+s.length});return}let O=s.prop(R.mounted);if(O){if(O.tree.prop($t)==this.data){if(O.overlay)for(let l of O.overlay)n.push({from:l.from+o,to:l.to+o});else n.push({from:o,to:o+s.length});return}else if(O.overlay){let l=n.length;if(r(O.tree,O.overlay[0].from+o),n.length>l)return}}for(let l=0;ln.isTop?t:void 0)]}),e.name)}configure(e,t){return new i(this.data,this.parser.configure(e),t||this.name)}get allowsNesting(){return this.parser.hasWrappers()}};function A(i){let e=i.field(ue.state,!1);return e?e.tree:Y.empty}var Zo=class{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=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-n,t-n)}},On=null,Ht=class i{constructor(e,t,n=[],r,s,o,O,l){this.parser=e,this.state=t,this.fragments=n,this.tree=r,this.treeLen=s,this.viewport=o,this.skipped=O,this.scheduleOn=l,this.parse=null,this.tempSkipped=[]}static create(e,t,n){return new i(e,t,[],Y.empty,0,n,[],null)}startParse(){return this.parser.startParse(new Zo(this.state.doc),this.fragments)}work(e,t){return t!=null&&t>=this.state.doc.length&&(t=void 0),this.tree!=Y.empty&&this.isDone(t??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var n;if(typeof e=="number"){let r=Date.now()+e;e=()=>Date.now()>r}for(this.parse||(this.parse=this.startParse()),t!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&t=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(mt.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=On;On=this;try{return e()}finally{On=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=Wh(e,t.from,t.to);return e}changes(e,t){let{fragments:n,tree:r,treeLen:s,viewport:o,skipped:O}=this;if(this.takeTree(),!e.empty){let l=[];if(e.iterChangedRanges((a,h,c,f)=>l.push({fromA:a,toA:h,fromB:c,toB:f})),n=mt.applyChanges(n,l),r=Y.empty,s=0,o={from:e.mapPos(o.from,-1),to:e.mapPos(o.to,1)},this.skipped.length){O=[];for(let a of this.skipped){let h=e.mapPos(a.from,1),c=e.mapPos(a.to,-1);he.from&&(this.fragments=Wh(this.fragments,r,s),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 gt{createParse(t,n,r){let s=r[0].from,o=r[r.length-1].to;return{parsedPos:s,advance(){let l=On;if(l){for(let a of r)l.tempSkipped.push(a);e&&(l.scheduleOn=l.scheduleOn?Promise.all([l.scheduleOn,e]):e)}return this.parsedPos=o,new Y(F.none,[],[],o-s)},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 On}};function Wh(i,e,t){return mt.applyChanges(i,[{fromA:e,toA:t,fromB:e,toB:t}])}var ln=class i{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 i(t)}static init(e){let t=Math.min(3e3,e.doc.length),n=Ht.create(e.facet(bi).parser,e,{from:0,to:t});return n.work(20,t)||n.takeTree(),new i(n)}};ue.state=$e.define({create:ln.init,update(i,e){for(let t of e.effects)if(t.is(ue.setState))return t.value;return e.startState.facet(bi)!=e.state.facet(bi)?ln.init(e.state):i.apply(e)}});var Ch=i=>{let e=setTimeout(()=>i(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(Ch=i=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(i,{timeout:500-100})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});var Xo=typeof navigator<"u"&&(!((zo=navigator.scheduling)===null||zo===void 0)&&zo.isInputPending)?()=>navigator.scheduling.isInputPending():null,Wm=Ae.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(ue.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(ue.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=Ch(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEndr+1e3,l=s.context.work(()=>Xo&&Xo()||Date.now()>o,r+(O?0:1e5));this.chunkBudget-=Date.now()-t,(l||this.chunkBudget<=0)&&(s.context.takeTree(),this.view.dispatch({effects:ue.setState.of(new ln(s.context))})),this.chunkBudget>0&&!(l&&!O)&&this.scheduleWork(),this.checkAsyncSchedule(s.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(t=>rt(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()}}}),bi=W.define({combine(i){return i.length?i[0]:null},enables:i=>[ue.state,Wm,v.contentAttributes.compute([i],e=>{let t=e.facet(i);return t&&t.name?{"data-language":t.name}:{}})]}),re=class{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}},an=class i{constructor(e,t,n,r,s,o=void 0){this.name=e,this.alias=t,this.extensions=n,this.filename=r,this.loadFunc=s,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 i(e.name,(e.alias||[]).concat(e.name).map(r=>r.toLowerCase()),e.extensions||[],e.filename,t,n)}static matchFilename(e,t){for(let r of e)if(r.filename&&r.filename.test(t))return r;let n=/\.([^.]+)$/.exec(t);if(n){for(let r of e)if(r.extensions.indexOf(n[1])>-1)return r}return null}static matchLanguageName(e,t,n=!0){t=t.toLowerCase();for(let r of e)if(r.alias.some(s=>s==t))return r;if(n)for(let r of e)for(let s of r.alias){let o=t.indexOf(s);if(o>-1&&(s.length>2||!/\w/.test(t[o-1])&&!/\w/.test(t[o+s.length])))return r}return null}},qh=W.define(),Rt=W.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 Wt(i){let e=i.facet(Rt);return e.charCodeAt(0)==9?i.tabSize*e.length:e.length}function cn(i,e){let t="",n=i.tabSize,r=i.facet(Rt)[0];if(r==" "){for(;e>=n;)t+=" ",e-=n;r=" "}for(let s=0;s=e?Rm(i,t,e):null}var Kt=class{constructor(e,t={}){this.state=e,this.options=t,this.unit=Wt(e)}lineAt(e,t=1){let n=this.state.doc.lineAt(e),{simulateBreak:r,simulateDoubleBreak:s}=this.options;return r!=null&&r>=n.from&&r<=n.to?s&&r==e?{text:"",from:e}:(t<0?r-1&&(s+=o-this.countColumn(n,n.search(/\S|$/))),s}countColumn(e,t=e.length){return ve(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:n,from:r}=this.lineAt(e,t),s=this.options.overrideIndentation;if(s){let o=s(r);if(o>-1)return o}return this.countColumn(n,n.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}},ye=new R;function Rm(i,e,t){let n=e.resolveStack(t),r=n.node.enterUnfinishedNodesBefore(t);if(r!=n.node){let s=[];for(let o=r;o!=n.node;o=o.parent)s.push(o);for(let o=s.length-1;o>=0;o--)n={node:s[o],next:n}}return Uh(n,i,t)}function Uh(i,e,t){for(let n=i;n;n=n.next){let r=Ym(n.node);if(r)return r(Yo.create(e,t,n))}return 0}function Zm(i){return i.pos==i.options.simulateBreak&&i.options.simulateDoubleBreak}function Ym(i){let e=i.type.prop(ye);if(e)return e;let t=i.firstChild,n;if(t&&(n=t.type.prop(R.closedBy))){let r=i.lastChild,s=r&&n.indexOf(r.name)>-1;return o=>_h(o,!0,1,void 0,s&&!Zm(o)?r.from:void 0)}return i.parent==null?Vm:null}function Vm(){return 0}var Yo=class i extends Kt{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 i(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(Cm(n,e))break;t=this.state.doc.lineAt(n.from)}return this.lineIndent(t.from)}continue(){return Uh(this.context.next,this.base,this.pos)}};function Cm(i,e){for(let t=e;t;t=t.parent)if(i==t)return!0;return!1}function qm(i){let e=i.node,t=e.childAfter(e.from),n=e.lastChild;if(!t)return null;let r=i.options.simulateBreak,s=i.state.doc.lineAt(t.from),o=r==null||r<=s.from?s.to:Math.min(s.to,r);for(let O=t.to;;){let l=e.childAfter(O);if(!l||l==n)return null;if(!l.type.isSkipped)return l.from_h(n,e,t,i)}function _h(i,e,t,n,r){let s=i.textAfter,o=s.match(/^\s*/)[0].length,O=n&&s.slice(o,o+n.length)==n||r==i.pos+o,l=e?qm(i):null;return l?O?i.column(l.from):i.column(l.to):i.baseIndent+(O?0:i.unit*t)}var Ah=i=>i.baseIndent;function Ze({except:i,units:e=1}={}){return t=>{let n=i&&i.test(t.textAfter);return t.baseIndent+(n?0:e*t.unit)}}var jh=W.define(),be=new R;function Zt(i){let e=i.firstChild,t=i.lastChild;return e&&e.toO.prop($t)==o.data:o?O=>O==o:void 0,this.style=To(e.map(O=>({tag:O.tag,class:O.class||r(Object.assign({},O,{tag:null}))})),{all:s}).style,this.module=n?new Ue(n):null,this.themeType=t.themeType}static define(e,t){return new i(e,t||{})}},Vo=W.define(),Eh=W.define({combine(i){return i.length?[i[0]]:null}});function Wo(i){let e=i.facet(Vo);return e.length?e:i.facet(Eh)}function jo(i,e){let t=[Um],n;return i instanceof St&&(i.module&&t.push(v.styleModule.of(i.module)),n=i.themeType),e?.fallback?t.push(Eh.of(i)):n?t.push(Vo.computeN([v.darkTheme],r=>r.facet(v.darkTheme)==(n=="dark")?[i]:[])):t.push(Vo.of(i)),t}var Co=class{constructor(e){this.markCache=Object.create(null),this.tree=A(e.state),this.decorations=this.buildDeco(e,Wo(e.state))}update(e){let t=A(e.state),n=Wo(e.state),r=n!=Wo(e.startState);t.length{n.add(o,O,this.markCache[l]||(this.markCache[l]=I.mark({class:l})))},r,s);return n.finish()}},Um=et.high(Ae.fromClass(Co,{decorations:i=>i.decorations})),c0=St.define([{tag:u.meta,color:"#404740"},{tag:u.link,textDecoration:"underline"},{tag:u.heading,textDecoration:"underline",fontWeight:"bold"},{tag:u.emphasis,fontStyle:"italic"},{tag:u.strong,fontWeight:"bold"},{tag:u.strikethrough,textDecoration:"line-through"},{tag:u.keyword,color:"#708"},{tag:[u.atom,u.bool,u.url,u.contentSeparator,u.labelName],color:"#219"},{tag:[u.literal,u.inserted],color:"#164"},{tag:[u.string,u.deleted],color:"#a11"},{tag:[u.regexp,u.escape,u.special(u.string)],color:"#e40"},{tag:u.definition(u.variableName),color:"#00f"},{tag:u.local(u.variableName),color:"#30a"},{tag:[u.typeName,u.namespace],color:"#085"},{tag:u.className,color:"#167"},{tag:[u.special(u.variableName),u.macroName],color:"#256"},{tag:u.definition(u.propertyName),color:"#00c"},{tag:u.comment,color:"#940"},{tag:u.invalid,color:"#f00"}]),_m=v.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),Gh=1e4,Mh="()[]{}",Ih=W.define({combine(i){return bt(i,{afterCursor:!0,brackets:Mh,maxScanDistance:Gh,renderMatch:Em})}}),Am=I.mark({class:"cm-matchingBracket"}),jm=I.mark({class:"cm-nonmatchingBracket"});function Em(i){let e=[],t=i.matched?Am:jm;return e.push(t.range(i.start.from,i.start.to)),i.end&&e.push(t.range(i.end.from,i.end.to)),e}var Gm=$e.define({create(){return I.none},update(i,e){if(!e.docChanged&&!e.selection)return i;let t=[],n=e.state.facet(Ih);for(let r of e.state.selection.ranges){if(!r.empty)continue;let s=Ne(e.state,r.head,-1,n)||r.head>0&&Ne(e.state,r.head-1,1,n)||n.afterCursor&&(Ne(e.state,r.head,1,n)||r.headv.decorations.from(i)}),Mm=[Gm,_m];function Lh(i={}){return[Ih.of(i),Mm]}var fn=new R;function qo(i,e,t){let n=i.prop(e<0?R.openedBy:R.closedBy);if(n)return n;if(i.name.length==1){let r=t.indexOf(i.name);if(r>-1&&r%2==(e<0?1:0))return[t[r+e]]}return null}function Uo(i){let e=i.type.prop(fn);return e?e(i.node):i}function Ne(i,e,t,n={}){let r=n.maxScanDistance||Gh,s=n.brackets||Mh,o=A(i),O=o.resolveInner(e,t);for(let l=O;l;l=l.parent){let a=qo(l.type,t,s);if(a&&l.from0?e>=h.from&&eh.from&&e<=h.to))return Im(i,e,t,l,h,a,s)}}return Lm(i,e,t,o,O.type,r,s)}function Im(i,e,t,n,r,s,o){let O=n.parent,l={from:r.from,to:r.to},a=0,h=O?.cursor();if(h&&(t<0?h.childBefore(n.from):h.childAfter(n.to)))do if(t<0?h.to<=n.from:h.from>=n.to){if(a==0&&s.indexOf(h.type.name)>-1&&h.from0)return null;let a={from:t<0?e-1:e,to:t>0?e+1:e},h=i.doc.iterRange(e,t>0?i.doc.length:0),c=0;for(let f=0;!h.next().done&&f<=s;){let d=h.value;t<0&&(f+=d.length);let p=e+f*t;for(let m=t>0?0:d.length-1,g=t>0?d.length:-1;m!=g;m+=t){let $=o.indexOf(d[m]);if(!($<0||n.resolveInner(p+m,1).type!=r))if($%2==0==t>0)c++;else{if(c==1)return{start:a,end:{from:p+m,to:p+m+1},matched:$>>1==l>>1};c--}}t>0&&(f+=d.length)}return h.done?{start:a,matched:!1}:null}function Rh(i,e,t,n=0,r=0){e==null&&(e=i.search(/[^\s\u00a0]/),e==-1&&(e=i.length));let s=r;for(let o=n;o=this.string.length}sol(){return this.pos==0}peek(){return this.string.charAt(this.pos)||void 0}next(){if(this.post}eatSpace(){let e=this.pos;for(;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e}skipToEnd(){this.pos=this.string.length}skipTo(e){let t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0}backUp(e){this.pos-=e}column(){return this.lastColumnPosn?o.toLowerCase():o,s=this.string.substr(this.pos,e.length);return r(s)==r(e)?(t!==!1&&(this.pos+=e.length),!0):null}else{let r=this.string.slice(this.pos).match(e);return r&&r.index>0?null:(r&&t!==!1&&(this.pos+=r[0].length),r)}}current(){return this.string.slice(this.start,this.pos)}};function Bm(i){return{name:i.name||"",token:i.token,blankLine:i.blankLine||(()=>{}),startState:i.startState||(()=>!0),copyState:i.copyState||Dm,indent:i.indent||(()=>null),languageData:i.languageData||{},tokenTable:i.tokenTable||Go}}function Dm(i){if(typeof i!="object")return i;let e={};for(let t in i){let n=i[t];e[t]=n instanceof Array?n.slice():n}return e}var Zh=new WeakMap,kr=class i extends ue{constructor(e){let t=Pi(e.languageData),n=Bm(e),r,s=new class extends gt{createParse(o,O,l){return new _o(r,o,O,l)}};super(t,s,[qh.of((o,O)=>this.getIndent(o,O))],e.name),this.topNode=Km(t),r=this,this.streamParser=n,this.stateAfter=new R({perNode:!0}),this.tokenTable=e.tokenTable?new vr(n.tokenTable):Hm}static define(e){return new i(e)}getIndent(e,t){let n=A(e.state),r=n.resolve(t);for(;r&&r.type!=this.topNode;)r=r.parent;if(!r)return null;let s,{overrideIndentation:o}=e.options;o&&(s=Zh.get(e.state),s!=null&&s1e4)return null;for(;l=n&&t+e.length<=r&&e.prop(i.stateAfter);if(s)return{state:i.streamParser.copyState(s),pos:t+e.length};for(let o=e.children.length-1;o>=0;o--){let O=e.children[o],l=t+e.positions[o],a=O instanceof Y&&l=e.length)return e;!r&&e.type==i.topNode&&(r=!0);for(let s=e.children.length-1;s>=0;s--){let o=e.positions[s],O=e.children[s],l;if(ot&&Eo(i,r.tree,0-r.offset,t,o),l;if(O&&(l=Bh(i,r.tree,t+r.offset,O.pos+r.offset,!1)))return{state:O.state,tree:l}}return{state:i.streamParser.startState(n?Wt(n):4),tree:Y.empty}}var _o=class{constructor(e,t,n,r){this.lang=e,this.input=t,this.fragments=n,this.ranges=r,this.stoppedAt=null,this.chunks=[],this.chunkPos=[],this.chunk=[],this.chunkReused=void 0,this.rangeIndex=0,this.to=r[r.length-1].to;let s=Ht.get(),o=r[0].from,{state:O,tree:l}=Nm(e,n,o,s?.state);this.state=O,this.parsedPos=this.chunkStart=o+l.length;for(let a=0;a=t?this.finish():e&&this.parsedPos>=e.viewport.to?(e.skipUntilInView(this.parsedPos,t),this.finish()):null}stopAt(e){this.stoppedAt=e}lineAfter(e){let t=this.input.chunk(e);if(this.input.lineChunks)t==` +var j=class i{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]=di(this,e,t);let r=[];return this.decompose(0,e,r,2),n.length&&n.decompose(0,n.length,r,3),this.decompose(t,this.length,r,1),li.from(r,this.length-(t-e)+n.length)}append(e){return this.replace(this.length,this.length,e)}slice(e,t=this.length){[e,t]=di(this,e,t);let n=[];return this.decompose(e,t,n,0),li.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),r=new Lt(this),s=new Lt(e);for(let o=t,O=t;;){if(r.next(o),s.next(o),o=0,r.lineBreak!=s.lineBreak||r.done!=s.done||r.value!=s.value)return!1;if(O+=r.value.length,r.done||O>=n)return!0}}iter(e=1){return new Lt(this,e)}iterRange(e,t=this.length){return new Yn(this,e,t)}iterLines(e,t){let n;if(e==null)n=this.iter();else{t==null&&(t=this.lines+1);let r=this.line(e).from;n=this.iterRange(r,Math.max(r,t==this.lines+1?this.length:t<=1?0:this.line(t-1).to))}return new Cn(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]?i.empty:e.length<=32?new Ze(e):li.from(Ze.split(e,[]))}},Ze=class i extends j{constructor(e,t=zd(e)){super(),this.text=e,this.length=t}get lines(){return this.text.length}get children(){return null}lineInner(e,t,n,r){for(let s=0;;s++){let o=this.text[s],O=r+o.length;if((t?n:O)>=e)return new ns(r,O,n,o);r=O+1,n++}}decompose(e,t,n,r){let s=e<=0&&t>=this.length?this:new i($a(this.text,e,t),Math.min(t,this.length)-Math.max(0,e));if(r&1){let o=n.pop(),O=qn(s.text,o.text.slice(),0,s.length);if(O.length<=32)n.push(new i(O,o.length+s.length));else{let a=O.length>>1;n.push(new i(O.slice(0,a)),new i(O.slice(a)))}}else n.push(s)}replace(e,t,n){if(!(n instanceof i))return super.replace(e,t,n);[e,t]=di(this,e,t);let r=qn(this.text,qn(n.text,$a(this.text,0,e)),t),s=this.length+n.length-(t-e);return r.length<=32?new i(r,s):li.from(i.split(r,[]),s)}sliceString(e,t=this.length,n=` +`){[e,t]=di(this,e,t);let r="";for(let s=0,o=0;s<=t&&oe&&o&&(r+=n),es&&(r+=O.slice(Math.max(0,e-s),t-s)),s=a+1}return r}flatten(e){for(let t of this.text)e.push(t)}scanIdentical(){return 0}static split(e,t){let n=[],r=-1;for(let s of e)n.push(s),r+=s.length+1,n.length==32&&(t.push(new i(n,r)),n=[],r=-1);return r>-1&&t.push(new i(n,r)),t}},li=class i extends j{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,r){for(let s=0;;s++){let o=this.children[s],O=r+o.length,a=n+o.lines-1;if((t?a:O)>=e)return o.lineInner(e,t,n,r);r=O+1,n=a+1}}decompose(e,t,n,r){for(let s=0,o=0;o<=t&&s=o){let l=r&((o<=e?1:0)|(a>=t?2:0));o>=e&&a<=t&&!l?n.push(O):O.decompose(e-o,t-o,n,l)}o=a+1}}replace(e,t,n){if([e,t]=di(this,e,t),n.lines=s&&t<=O){let a=o.replace(e-s,t-s,n),l=this.lines-o.lines+a.lines;if(a.lines>4&&a.lines>l>>6){let h=this.children.slice();return h[r]=a,new i(h,this.length-(t-e)+n.length)}return super.replace(s,O,a)}s=O+1}return super.replace(e,t,n)}sliceString(e,t=this.length,n=` +`){[e,t]=di(this,e,t);let r="";for(let s=0,o=0;se&&s&&(r+=n),eo&&(r+=O.sliceString(e-o,t-o,n)),o=a+1}return r}flatten(e){for(let t of this.children)t.flatten(e)}scanIdentical(e,t){if(!(e instanceof i))return 0;let n=0,[r,s,o,O]=t>0?[0,0,this.children.length,e.children.length]:[this.children.length-1,e.children.length-1,-1,-1];for(;;r+=t,s+=t){if(r==o||s==O)return n;let a=this.children[r],l=e.children[s];if(a!=l)return n+a.scanIdentical(l,t);n+=a.length+1}}static from(e,t=e.reduce((n,r)=>n+r.length+1,-1)){let n=0;for(let d of e)n+=d.lines;if(n<32){let d=[];for(let p of e)p.flatten(d);return new Ze(d,t)}let r=Math.max(32,n>>5),s=r<<1,o=r>>1,O=[],a=0,l=-1,h=[];function c(d){let p;if(d.lines>s&&d instanceof i)for(let m of d.children)c(m);else d.lines>o&&(a>o||!a)?(f(),O.push(d)):d instanceof Ze&&a&&(p=h[h.length-1])instanceof Ze&&d.lines+p.lines<=32?(a+=d.lines,l+=d.length+1,h[h.length-1]=new Ze(p.text.concat(d.text),p.length+1+d.length)):(a+d.lines>r&&f(),a+=d.lines,l+=d.length+1,h.push(d))}function f(){a!=0&&(O.push(h.length==1?h[0]:i.from(h,l)),l=-1,a=h.length=0)}for(let d of e)c(d);return f(),O.length==1?O[0]:new i(O,t)}};j.empty=new Ze([""],0);function zd(i){let e=-1;for(let t of i)e+=t.length+1;return e}function qn(i,e,t=0,n=1e9){for(let r=0,s=0,o=!0;s=t&&(a>n&&(O=O.slice(0,n-r)),r0?1:(e instanceof Ze?e.text.length:e.children.length)<<1]}nextInner(e,t){for(this.done=this.lineBreak=!1;;){let n=this.nodes.length-1,r=this.nodes[n],s=this.offsets[n],o=s>>1,O=r instanceof Ze?r.text.length:r.children.length;if(o==(t>0?O: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((s&1)==(t>0?0:1)){if(this.offsets[n]+=t,e==0)return this.lineBreak=!0,this.value=` +`,this;e--}else if(r instanceof Ze){let a=r.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=r.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 Ze?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)}},Yn=class{constructor(e,t,n){this.value="",this.done=!1,this.cursor=new Lt(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:r}=this.cursor.next(e);return this.pos+=(r.length+e)*t,this.value=r.length<=n?r:t<0?r.slice(r.length-n):r.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!=""}},Cn=class{constructor(e){this.inner=e,this.afterBreak=!0,this.value="",this.done=!1}next(e=0){let{done:t,lineBreak:n,value:r}=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=r,this.afterBreak=!1),this}get lineBreak(){return!1}};typeof Symbol<"u"&&(j.prototype[Symbol.iterator]=function(){return this.iter()},Lt.prototype[Symbol.iterator]=Yn.prototype[Symbol.iterator]=Cn.prototype[Symbol.iterator]=function(){return this});var ns=class{constructor(e,t,n,r){this.from=e,this.to=t,this.number=n,this.text=r}get length(){return this.to-this.from}};function di(i,e,t){return e=Math.max(0,Math.min(i.length,e)),[e,Math.max(e,Math.min(i.length,t))]}var hi="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(i=>i?parseInt(i,36):1);for(let i=1;ii)return hi[e-1]<=i;return!1}function ga(i){return i>=127462&&i<=127487}var Qa=8205;function le(i,e,t=!0,n=!0){return(t?wa:Xd)(i,e,n)}function wa(i,e,t){if(e==i.length)return e;e&&ka(i.charCodeAt(e))&&Ta(i.charCodeAt(e-1))&&e--;let n=ci(i,e);for(e+=ji(n);e=0&&ga(ci(i,o));)s++,o-=2;if(s%2==0)break;e+=2}else break}return e}function Xd(i,e,t){for(;e>0;){let n=wa(i,e-2,t);if(n=56320&&i<57344}function Ta(i){return i>=55296&&i<56320}function ci(i,e){let t=i.charCodeAt(e);if(!Ta(t)||e+1==i.length)return t;let n=i.charCodeAt(e+1);return ka(n)?(t-55296<<10)+(n-56320)+65536:t}function ji(i){return i<65536?1:2}var rs=/\r\n?|\n/,ae=function(i){return i[i.Simple=0]="Simple",i[i.TrackDel=1]="TrackDel",i[i.TrackBefore=2]="TrackBefore",i[i.TrackAfter=3]="TrackAfter",i}(ae||(ae={})),ut=class i{constructor(e){this.sections=e}get length(){let e=0;for(let t=0;te)return s+(e-r);s+=O}else{if(n!=ae.Simple&&l>=e&&(n==ae.TrackDel&&re||n==ae.TrackBefore&&re))return null;if(l>e||l==e&&t<0&&!O)return e==r||t<0?s:s+a;s+=a}r=l}if(e>r)throw new RangeError(`Position ${e} is out of range for changeset of length ${r}`);return s}touchesRange(e,t=e){for(let n=0,r=0;n=0&&r<=t&&O>=e)return rt?"cover":!0;r=O}return!1}toString(){let e="";for(let t=0;t=0?":"+r:"")}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 i(e)}static create(e){return new i(e)}},me=class i extends ut{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 ss(this,(t,n,r,s,o)=>e=e.replace(r,r+(n-t),o),!1),e}mapDesc(e,t=!1){return os(this,e,t,!0)}invert(e){let t=this.sections.slice(),n=[];for(let r=0,s=0;r=0){t[r]=O,t[r+1]=o;let a=r>>1;for(;n.length0&&bt(n,t,s.text),s.forward(h),O+=h}let l=e[o++];for(;O>1].toJSON()))}return e}static of(e,t,n){let r=[],s=[],o=0,O=null;function a(h=!1){if(!h&&!r.length)return;of||c<0||f>t)throw new RangeError(`Invalid change range ${c} to ${f} (in doc of length ${t})`);let p=d?typeof d=="string"?j.of(d.split(n||rs)):d:j.empty,m=p.length;if(c==f&&m==0)return;co&&ce(r,c-o,-1),ce(r,f-c,m),bt(s,r,p),o=f}}return l(e),a(!O),O}static empty(e){return new i(e?[e,-1]:[],[])}static fromJSON(e){if(!Array.isArray(e))throw new RangeError("Invalid JSON representation of ChangeSet");let t=[],n=[];for(let r=0;rO&&typeof o!="string"))throw new RangeError("Invalid JSON representation of ChangeSet");if(s.length==1)t.push(s[0],0);else{for(;n.length=0&&t<=0&&t==i[r+1]?i[r]+=e:e==0&&i[r]==0?i[r+1]+=t:n?(i[r]+=e,i[r+1]+=t):i.push(e,t)}function bt(i,e,t){if(t.length==0)return;let n=e.length-2>>1;if(n>1])),!(t||o==i.sections.length||i.sections[o+1]<0);)O=i.sections[o++],a=i.sections[o++];e(r,l,s,h,c),r=l,s=h}}}function os(i,e,t,n=!1){let r=[],s=n?[]:null,o=new Dt(i),O=new Dt(e);for(let a=-1;;)if(o.ins==-1&&O.ins==-1){let l=Math.min(o.len,O.len);ce(r,l,-1),o.forward(l),O.forward(l)}else if(O.ins>=0&&(o.ins<0||a==o.i||o.off==0&&(O.len=0&&a=0){let l=0,h=o.len;for(;h;)if(O.ins==-1){let c=Math.min(h,O.len);l+=c,h-=c,O.forward(c)}else if(O.ins==0&&O.lena||o.ins>=0&&o.len>a)&&(O||n.length>l),s.forward2(a),o.forward(a)}}}}var Dt=class{constructor(e){this.set=e,this.i=0,this.next()}next(){let{sections:e}=this.set;this.i>1;return t>=e.length?j.empty:e[t]}textBit(e){let{inserted:t}=this.set,n=this.i-2>>1;return n>=t.length&&!e?j.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)}},ai=class i{constructor(e,t,n){this.from=e,this.to=t,this.flags=n}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 bidiLevel(){let e=this.flags&7;return e==7?null:e}get goalColumn(){let e=this.flags>>6;return e==16777215?void 0:e}map(e,t=-1){let n,r;return this.empty?n=r=e.mapPos(this.from,t):(n=e.mapPos(this.from,1),r=e.mapPos(this.to,-1)),n==this.from&&r==this.to?this:new i(n,r,this.flags)}extend(e,t=e){if(e<=this.anchor&&t>=this.anchor)return S.range(e,t);let n=Math.abs(e-this.anchor)>Math.abs(t-this.anchor)?e:t;return S.range(this.anchor,n)}eq(e,t=!1){return this.anchor==e.anchor&&this.head==e.head&&(!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 S.range(e.anchor,e.head)}static create(e,t,n){return new i(e,t,n)}},S=class i{constructor(e,t){this.ranges=e,this.mainIndex=t}map(e,t=-1){return e.empty?this:i.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;ne.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 i(e.ranges.map(t=>ai.fromJSON(t)),e.main)}static single(e,t=e){return new i([i.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,r=0;re?8:0)|s)}static normalized(e,t=0){let n=e[t];e.sort((r,s)=>r.from-s.from),t=e.indexOf(n);for(let r=1;rs.head?i.range(a,O):i.range(O,a))}}return new i(e,t)}};function za(i,e){for(let t of i.ranges)if(t.to>e)throw new RangeError("Selection points outside of document")}var ms=0,W=class i{constructor(e,t,n,r,s){this.combine=e,this.compareInput=t,this.compare=n,this.isStatic=r,this.id=ms++,this.default=e([]),this.extensions=typeof s=="function"?s(this):s}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:$s),!!e.static,e.enables)}of(e){return new fi([],this,0,e)}compute(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new fi(e,this,1,t)}computeN(e,t){if(this.isStatic)throw new Error("Can't compute a static facet");return new fi(e,this,2,t)}from(e,t){return t||(t=n=>n),this.compute([e],n=>t(n.field(e)))}};function $s(i,e){return i==e||i.length==e.length&&i.every((t,n)=>t===e[n])}var fi=class{constructor(e,t,n,r){this.dependencies=e,this.facet=t,this.type=n,this.value=r,this.id=ms++}dynamicSlot(e){var t;let n=this.value,r=this.facet.compareInput,s=this.id,o=e[s]>>1,O=this.type==2,a=!1,l=!1,h=[];for(let c of this.dependencies)c=="doc"?a=!0:c=="selection"?l=!0:((t=e[c.id])!==null&&t!==void 0?t:1)&1||h.push(e[c.id]);return{create(c){return c.values[o]=n(c),1},update(c,f){if(a&&f.docChanged||l&&(f.docChanged||f.selection)||Os(c,h)){let d=n(c);if(O?!Sa(d,c.values[o],r):!r(d,c.values[o]))return c.values[o]=d,1}return 0},reconfigure:(c,f)=>{let d,p=f.config.address[s];if(p!=null){let m=_n(f,p);if(this.dependencies.every($=>$ instanceof W?f.facet($)===c.facet($):$ instanceof $e?f.field($,!1)==c.field($,!1):!0)||(O?Sa(d=n(c),m,r):r(d=n(c),m)))return c.values[o]=m,0}else d=n(c);return c.values[o]=d,1}}}};function Sa(i,e,t){if(i.length!=e.length)return!1;for(let n=0;ni[a.id]),r=t.map(a=>a.type),s=n.filter(a=>!(a&1)),o=i[e.id]>>1;function O(a){let l=[];for(let h=0;hn===r),e);return e.provide&&(t.provides=e.provide(t)),t}create(e){let t=e.facet(ya).find(n=>n.field==this);return(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,r)=>{let s=n.values[t],o=this.updateF(s,r);return this.compareF(s,o)?0:(n.values[t]=o,1)},reconfigure:(n,r)=>r.config.address[this.id]!=null?(n.values[t]=r.field(this),0):(n.values[t]=this.create(n),1)}}init(e){return[this,ya.of({field:this,create:e})]}get extension(){return this}},Mt={lowest:4,low:3,default:2,high:1,highest:0};function Yi(i){return e=>new jn(e,i)}var it={highest:Yi(Mt.highest),high:Yi(Mt.high),default:Yi(Mt.default),low:Yi(Mt.low),lowest:Yi(Mt.lowest)},jn=class{constructor(e,t){this.inner=e,this.prec=t}},dt=class i{of(e){return new Ai(this,e)}reconfigure(e){return i.reconfigure.of({compartment:this,extension:e})}get(e){return e.config.compartments.get(this)}},Ai=class{constructor(e,t){this.compartment=e,this.inner=t}},An=class i{constructor(e,t,n,r,s,o){for(this.base=e,this.compartments=t,this.dynamicSlots=n,this.address=r,this.staticValues=s,this.facets=o,this.statusTemplate=[];this.statusTemplate.length>1]}static resolve(e,t,n){let r=[],s=Object.create(null),o=new Map;for(let f of Rd(e,t,o))f instanceof $e?r.push(f):(s[f.facet.id]||(s[f.facet.id]=[])).push(f);let O=Object.create(null),a=[],l=[];for(let f of r)O[f.id]=l.length<<1,l.push(d=>f.slot(d));let h=n?.config.facets;for(let f in s){let d=s[f],p=d[0].facet,m=h&&h[f]||[];if(d.every($=>$.type==0))if(O[p.id]=a.length<<1|1,$s(m,d))a.push(n.facet(p));else{let $=p.combine(d.map(g=>g.value));a.push(n&&p.compare($,n.facet(p))?n.facet(p):$)}else{for(let $ of d)$.type==0?(O[$.id]=a.length<<1|1,a.push($.value)):(O[$.id]=l.length<<1,l.push(g=>$.dynamicSlot(g)));O[p.id]=l.length<<1,l.push($=>Wd($,p,d))}}let c=l.map(f=>f(O));return new i(e,o,c,O,a,s)}};function Rd(i,e,t){let n=[[],[],[],[],[]],r=new Map;function s(o,O){let a=r.get(o);if(a!=null){if(a<=O)return;let l=n[a].indexOf(o);l>-1&&n[a].splice(l,1),o instanceof Ai&&t.delete(o.compartment)}if(r.set(o,O),Array.isArray(o))for(let l of o)s(l,O);else if(o instanceof Ai){if(t.has(o.compartment))throw new RangeError("Duplicate use of compartment in extensions");let l=e.get(o.compartment)||o.inner;t.set(o.compartment,l),s(l,O)}else if(o instanceof jn)s(o.inner,o.prec);else if(o instanceof $e)n[O].push(o),o.provides&&s(o.provides,O);else if(o instanceof fi)n[O].push(o),o.facet.extensions&&s(o.facet.extensions,Mt.default);else{let l=o.extension;if(!l)throw new Error(`Unrecognized extension value in extension set (${o}). This sometimes happens because multiple instances of @codemirror/state are loaded, breaking instanceof checks.`);s(l,O)}}return s(i,Mt.default),n.reduce((o,O)=>o.concat(O))}function Ci(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 r=i.computeSlot(i,i.config.dynamicSlots[t]);return i.status[t]=2|r}function _n(i,e){return e&1?i.config.staticValues[e>>1]:i.values[e>>1]}var Za=W.define(),as=W.define({combine:i=>i.some(e=>e),static:!0}),Xa=W.define({combine:i=>i.length?i[0]:void 0,static:!0}),Wa=W.define(),Ra=W.define(),Va=W.define(),qa=W.define({combine:i=>i.length?i[0]:!1}),we=class{constructor(e,t){this.type=e,this.value=t}static define(){return new ls}},ls=class{of(e){return new we(this,e)}},hs=class{constructor(e){this.map=e}of(e){return new B(this,e)}},B=class i{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 i(this.type,t)}is(e){return this.type==e}static define(e={}){return new hs(e.map||(t=>t))}static mapEffects(e,t){if(!e.length)return e;let n=[];for(let r of e){let s=r.map(t);s&&n.push(s)}return n}};B.reconfigure=B.define();B.appendConfig=B.define();var ne=class i{constructor(e,t,n,r,s,o){this.startState=e,this.changes=t,this.selection=n,this.effects=r,this.annotations=s,this.scrollIntoView=o,this._doc=null,this._state=null,n&&za(n,t.newLength),s.some(O=>O.type==i.time)||(this.annotations=s.concat(i.time.of(Date.now())))}static create(e,t,n,r,s,o){return new i(e,t,n,r,s,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(i.userEvent);return!!(t&&(t==e||t.length>e.length&&t.slice(0,e.length)==e&&t[e.length]=="."))}};ne.time=we.define();ne.userEvent=we.define();ne.addToHistory=we.define();ne.remote=we.define();function Vd(i,e){let t=[];for(let n=0,r=0;;){let s,o;if(n=i[n]))s=i[n++],o=i[n++];else if(r=0;r--){let s=n[r](i);s instanceof ne?i=s:Array.isArray(s)&&s.length==1&&s[0]instanceof ne?i=s[0]:i=Ca(e,ui(s),!1)}return i}function Yd(i){let e=i.startState,t=e.facet(Va),n=i;for(let r=t.length-1;r>=0;r--){let s=t[r](i);s&&Object.keys(s).length&&(n=Ya(n,cs(e,s,i.changes.newLength),!0))}return n==i?i:ne.create(e,i.changes,i.selection,n.effects,n.annotations,n.scrollIntoView)}var Cd=[];function ui(i){return i==null?Cd:Array.isArray(i)?i:[i]}var Ae=function(i){return i[i.Word=0]="Word",i[i.Space=1]="Space",i[i.Other=2]="Other",i}(Ae||(Ae={})),jd=/[\u00df\u0587\u0590-\u05f4\u0600-\u06ff\u3040-\u309f\u30a0-\u30ff\u3400-\u4db5\u4e00-\u9fcc\uac00-\ud7af]/,fs;try{fs=new RegExp("[\\p{Alphabetic}\\p{Number}_]","u")}catch{}function Ad(i){if(fs)return fs.test(i);for(let e=0;e"\x80"&&(t.toUpperCase()!=t.toLowerCase()||jd.test(t)))return!0}return!1}function _d(i){return e=>{if(!/\S/.test(e))return Ae.Space;if(Ad(e))return Ae.Word;for(let t=0;t-1)return Ae.Word;return Ae.Other}}var L=class i{constructor(e,t,n,r,s,o){this.config=e,this.doc=t,this.selection=n,this.values=r,this.status=e.statusTemplate.slice(),this.computeSlot=s,o&&(o._state=this);for(let O=0;Or.set(l,a)),t=null),r.set(O.value.compartment,O.value.extension)):O.is(B.reconfigure)?(t=null,n=O.value):O.is(B.appendConfig)&&(t=null,n=ui(n).concat(O.value));let s;t?s=e.startState.values.slice():(t=An.resolve(n,r,this),s=new i(t,this.doc,this.selection,t.dynamicSlots.map(()=>null),(a,l)=>l.reconfigure(a,this),null).values);let o=e.startState.facet(as)?e.newSelection:e.newSelection.asSingle();new i(t,e.newDoc,o,s,(O,a)=>a.update(O,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:S.cursor(t.from+e.length)}))}changeByRange(e){let t=this.selection,n=e(t.ranges[0]),r=this.changes(n.changes),s=[n.range],o=ui(n.effects);for(let O=1;Oo.spec.fromJSON(O,a)))}}return i.create({doc:e.doc,selection:S.fromJSON(e.selection),extensions:t.extensions?r.concat([t.extensions]):r})}static create(e={}){let t=An.resolve(e.extensions||[],new Map),n=e.doc instanceof j?e.doc:j.of((e.doc||"").split(t.staticFacet(i.lineSeparator)||rs)),r=e.selection?e.selection instanceof S?e.selection:S.single(e.selection.anchor,e.selection.head):S.single(0);return za(r,n.length),t.staticFacet(as)||(r=r.asSingle()),new i(t,n,r,t.dynamicSlots.map(()=>null),(s,o)=>o.create(s),null)}get tabSize(){return this.facet(i.tabSize)}get lineBreak(){return this.facet(i.lineSeparator)||` +`}get readOnly(){return this.facet(qa)}phrase(e,...t){for(let n of this.facet(i.phrases))if(Object.prototype.hasOwnProperty.call(n,e)){e=n[e];break}return t.length&&(e=e.replace(/\$(\$|\d*)/g,(n,r)=>{if(r=="$")return"$";let s=+(r||1);return!s||s>t.length?n:t[s-1]})),e}languageDataAt(e,t,n=-1){let r=[];for(let s of this.facet(Za))for(let o of s(this,t,n))Object.prototype.hasOwnProperty.call(o,e)&&r.push(o[e]);return r}charCategorizer(e){return _d(this.languageDataAt("wordChars",e).join(""))}wordAt(e){let{text:t,from:n,length:r}=this.doc.lineAt(e),s=this.charCategorizer(e),o=e-n,O=e-n;for(;o>0;){let a=le(t,o,!1);if(s(t.slice(a,o))!=Ae.Word)break;o=a}for(;Oi.length?i[0]:4});L.lineSeparator=Xa;L.readOnly=qa;L.phrases=W.define({compare(i,e){let t=Object.keys(i),n=Object.keys(e);return t.length==n.length&&t.every(r=>i[r]==e[r])}});L.languageData=Za;L.changeFilter=Wa;L.transactionFilter=Ra;L.transactionExtender=Va;dt.reconfigure=B.define();function xt(i,e,t={}){let n={};for(let r of i)for(let s of Object.keys(r)){let o=r[s],O=n[s];if(O===void 0)n[s]=o;else if(!(O===o||o===void 0))if(Object.hasOwnProperty.call(t,s))n[s]=t[s](O,o);else throw new Error("Config merge conflict for field "+s)}for(let r in e)n[r]===void 0&&(n[r]=e[r]);return n}var De=class{eq(e){return this==e}range(e,t=e){return _i.create(e,t,this)}};De.prototype.startSide=De.prototype.endSide=0;De.prototype.point=!1;De.prototype.mapMode=ae.TrackDel;var _i=class i{constructor(e,t,n){this.from=e,this.to=t,this.value=n}static create(e,t,n){return new i(e,t,n)}};function us(i,e){return i.from-e.from||i.value.startSide-e.value.startSide}var ds=class i{constructor(e,t,n,r){this.from=e,this.to=t,this.value=n,this.maxPoint=r}get length(){return this.to[this.to.length-1]}findIndex(e,t,n,r=0){let s=n?this.to:this.from;for(let o=r,O=s.length;;){if(o==O)return o;let a=o+O>>1,l=s[a]-e||(n?this.value[a].endSide:this.value[a].startSide)-t;if(a==o)return l>=0?o:O;l>=0?O=a:o=a+1}}between(e,t,n,r){for(let s=this.findIndex(t,-1e9,!0),o=this.findIndex(n,1e9,!1,s);sd||f==d&&l.startSide>0&&l.endSide<=0)continue;(d-f||l.endSide-l.startSide)<0||(o<0&&(o=f),l.point&&(O=Math.max(O,d-f)),n.push(l),r.push(f-o),s.push(d-o))}return{mapped:n.length?new i(r,s,n,O):null,pos:o}}},H=class i{constructor(e,t,n,r){this.chunkPos=e,this.chunk=t,this.nextLayer=n,this.maxPoint=r}static create(e,t,n,r){return new i(e,t,n,r)}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:r=0,filterTo:s=this.length}=e,o=e.filter;if(t.length==0&&!o)return this;if(n&&(t=t.slice().sort(us)),this.isEmpty)return t.length?i.of(t):this;let O=new Un(this,null,-1).goto(0),a=0,l=[],h=new Bt;for(;O.value||a=0){let c=t[a++];h.addInner(c.from,c.to,c.value)||l.push(c)}else O.rangeIndex==1&&O.chunkIndexthis.chunkEnd(O.chunkIndex)||sO.to||s=s&&e<=s+o.length&&o.between(s,e-s,t-s,n)===!1)return}this.nextLayer.between(e,t,n)}}iter(e=0){return Ui.from([this]).goto(e)}get isEmpty(){return this.nextLayer==this}static iter(e,t=0){return Ui.from(e).goto(t)}static compare(e,t,n,r,s=-1){let o=e.filter(c=>c.maxPoint>0||!c.isEmpty&&c.maxPoint>=s),O=t.filter(c=>c.maxPoint>0||!c.isEmpty&&c.maxPoint>=s),a=Pa(o,O,n),l=new It(o,a,s),h=new It(O,a,s);n.iterGaps((c,f,d)=>ba(l,c,h,f,d,r)),n.empty&&n.length==0&&ba(l,0,h,0,0,r)}static eq(e,t,n=0,r){r==null&&(r=999999999);let s=e.filter(h=>!h.isEmpty&&t.indexOf(h)<0),o=t.filter(h=>!h.isEmpty&&e.indexOf(h)<0);if(s.length!=o.length)return!1;if(!s.length)return!0;let O=Pa(s,o),a=new It(s,O,0).goto(n),l=new It(o,O,0).goto(n);for(;;){if(a.to!=l.to||!ps(a.active,l.active)||a.point&&(!l.point||!a.point.eq(l.point)))return!1;if(a.to>r)return!0;a.next(),l.next()}}static spans(e,t,n,r,s=-1){let o=new It(e,null,s).goto(t),O=t,a=o.openStart;for(;;){let l=Math.min(o.to,n);if(o.point){let h=o.activeForPoint(o.to),c=o.pointFromO&&(r.span(O,l,o.active,a),a=o.openEnd(l));if(o.to>n)return a+(o.point&&o.to>n?1:0);O=o.to,o.next()}}static of(e,t=!1){let n=new Bt;for(let r of e instanceof _i?[e]:t?Ud(e):e)n.add(r.from,r.to,r.value);return n.finish()}static join(e){if(!e.length)return i.empty;let t=e[e.length-1];for(let n=e.length-2;n>=0;n--)for(let r=e[n];r!=i.empty;r=r.nextLayer)t=new i(r.chunkPos,r.chunk,t,Math.max(r.maxPoint,t.maxPoint));return t}};H.empty=new H([],[],null,-1);function Ud(i){if(i.length>1)for(let e=i[0],t=1;t0)return i.slice().sort(us);e=n}return i}H.empty.nextLayer=H.empty;var Bt=class i{finishChunk(e){this.chunks.push(new ds(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 i)).add(e,t,n)}addInner(e,t,n){let r=e-this.lastTo||n.startSide-this.last.endSide;if(r<=0&&(e-this.lastFrom||n.startSide-this.last.startSide)<0)throw new Error("Ranges must be added sorted by `from` position and `startSide`");return r<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(H.empty)}finishInner(e){if(this.from.length&&this.finishChunk(!1),this.chunks.length==0)return e;let t=H.create(this.chunkPos,this.chunks,this.nextLayer?this.nextLayer.finishInner(e):e,this.setMaxPoint);return this.from=null,t}};function Pa(i,e,t){let n=new Map;for(let s of i)for(let o=0;o=this.minPoint)break}}setRangeIndex(e){if(e==this.layer.chunk[this.chunkIndex].value.length){if(this.chunkIndex++,this.skip)for(;this.chunkIndex=n&&r.push(new Un(o,t,n,s));return r.length==1?r[0]:new i(r)}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--)is(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--)is(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(),is(this.heap,0)}}};function is(i,e){for(let t=i[e];;){let n=(e<<1)+1;if(n>=i.length)break;let r=i[n];if(n+1=0&&(r=i[n+1],n++),t.compare(r)<0)break;i[n]=t,i[e]=r,e=n}}var It=class{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=Ui.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){Rn(this.active,e),Rn(this.activeTo,e),Rn(this.activeRank,e),this.minActive=xa(this.active,this.activeTo)}addActive(e){let t=0,{value:n,to:r,rank:s}=this.cursor;for(;t0;)t++;Vn(this.active,t,n),Vn(this.activeTo,t,r),Vn(this.activeRank,t,s),e&&Vn(e,t,this.cursor.from),this.minActive=xa(this.active,this.activeTo)}next(){let e=this.to,t=this.point;this.point=null;let n=this.openStart<0?[]:null;for(;;){let r=this.minActive;if(r>-1&&(this.activeTo[r]-this.cursor.from||this.active[r].endSide-this.cursor.startSide)<0){if(this.activeTo[r]>e){this.to=this.activeTo[r],this.endSide=this.active[r].endSide;break}this.removeActive(r),n&&Rn(n,r)}else if(this.cursor.value)if(this.cursor.from>e){this.to=this.cursor.from,this.endSide=this.cursor.startSide;break}else{let s=this.cursor.value;if(!s.point)this.addActive(n),this.cursor.next();else if(t&&this.cursor.to==this.to&&this.cursor.from=0&&n[r]=0&&!(this.activeRank[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 ba(i,e,t,n,r,s){i.goto(e),t.goto(n);let o=n+r,O=n,a=n-e;for(;;){let l=i.to+a-t.to||i.endSide-t.endSide,h=l<0?i.to+a:t.to,c=Math.min(h,o);if(i.point||t.point?i.point&&t.point&&(i.point==t.point||i.point.eq(t.point))&&ps(i.activeForPoint(i.to),t.activeForPoint(t.to))||s.comparePoint(O,c,i.point,t.point):c>O&&!ps(i.active,t.active)&&s.compareRange(O,c,i.active,t.active),h>o)break;O=h,l<=0&&i.next(),l>=0&&t.next()}}function ps(i,e){if(i.length!=e.length)return!1;for(let t=0;t=e;n--)i[n+1]=i[n];i[e]=t}function xa(i,e){let t=-1,n=1e9;for(let r=0;r=e)return r;if(r==i.length)break;s+=i.charCodeAt(r)==9?t-s%t:1,r=le(i,r)}return n===!0?-1:i.length}var gs="\u037C",ja=typeof Symbol>"u"?"__"+gs:Symbol.for(gs),Qs=typeof Symbol>"u"?"__styleSet"+Math.floor(Math.random()*1e8):Symbol("styleSet"),Aa=typeof globalThis<"u"?globalThis:typeof window<"u"?window:{},_e=class{constructor(e,t){this.rules=[];let{finish:n}=t||{};function r(o){return/^@/.test(o)?[o]:o.split(/,\s*/)}function s(o,O,a,l){let h=[],c=/^@(\w+)\b/.exec(o[0]),f=c&&c[1]=="keyframes";if(c&&O==null)return a.push(o[0]+";");for(let d in O){let p=O[d];if(/&/.test(d))s(d.split(/,\s*/).map(m=>o.map($=>m.replace(/&/,$))).reduce((m,$)=>m.concat($)),p,a);else if(p&&typeof p=="object"){if(!c)throw new RangeError("The value of a property ("+d+") should be a primitive value.");s(r(d),p,h,f)}else p!=null&&h.push(d.replace(/_.*/,"").replace(/[A-Z]/g,m=>"-"+m.toLowerCase())+": "+p+";")}(h.length||f)&&a.push((n&&!c&&!l?o.map(n):o).join(", ")+" {"+h.join(" ")+"}")}for(let o in e)s(r(o),e[o],this.rules)}getRules(){return this.rules.join(` +`)}static newName(){let e=Aa[ja]||1;return Aa[ja]=e+1,gs+e.toString(36)}static mount(e,t,n){let r=e[Qs],s=n&&n.nonce;r?s&&r.setNonce(s):r=new Ss(e,s),r.mount(Array.isArray(t)?t:[t])}},_a=new Map,Ss=class{constructor(e,t){let n=e.ownerDocument||e,r=n.defaultView;if(!e.head&&e.adoptedStyleSheets&&r.CSSStyleSheet){let s=_a.get(n);if(s)return e.adoptedStyleSheets=[s.sheet,...e.adoptedStyleSheets],e[Qs]=s;this.sheet=new r.CSSStyleSheet,e.adoptedStyleSheets=[this.sheet,...e.adoptedStyleSheets],_a.set(n,this)}else{this.styleTag=n.createElement("style"),t&&this.styleTag.setAttribute("nonce",t);let s=e.head||e;s.insertBefore(this.styleTag,s.firstChild)}this.modules=[],e[Qs]=this}mount(e){let t=this.sheet,n=0,r=0;for(let s=0;s-1&&(this.modules.splice(O,1),r--,O=-1),O==-1){if(this.modules.splice(r++,0,o),t)for(let a=0;a",191:"?",192:"~",219:"{",220:"|",221:"}",222:'"'},Ed=typeof navigator<"u"&&/Mac/.test(navigator.platform),Gd=typeof navigator<"u"&&/MSIE \d|Trident\/(?:[7-9]|\d{2,})\..*rv:(\d+)/.exec(navigator.userAgent);for(re=0;re<10;re++)pt[48+re]=pt[96+re]=String(re);var re;for(re=1;re<=24;re++)pt[re+111]="F"+re;var re;for(re=65;re<=90;re++)pt[re]=String.fromCharCode(re+32),pi[re]=String.fromCharCode(re);var re;for(Gn in pt)pi.hasOwnProperty(Gn)||(pi[Gn]=pt[Gn]);var Gn;function Ua(i){var e=Ed&&i.metaKey&&i.shiftKey&&!i.ctrlKey&&!i.altKey||Gd&&i.shiftKey&&i.key&&i.key.length==1||i.key=="Unidentified",t=!e&&i.key||(i.shiftKey?pi:pt)[i.keyCode]||i.key||"Unidentified";return t=="Esc"&&(t="Escape"),t=="Del"&&(t="Delete"),t=="Left"&&(t="ArrowLeft"),t=="Up"&&(t="ArrowUp"),t=="Right"&&(t="ArrowRight"),t=="Down"&&(t="ArrowDown"),t}function rr(i){let e;return i.nodeType==11?e=i.getSelection?i:i.ownerDocument:e=i,e.getSelection()}function ks(i,e){return e?i==e||i.contains(e.nodeType!=1?e.parentNode:e):!1}function Md(i){let e=i.activeElement;for(;e&&e.shadowRoot;)e=e.shadowRoot.activeElement;return e}function Kn(i,e){if(!e.anchorNode)return!1;try{return ks(i,e.anchorNode)}catch{return!1}}function Ji(i){return i.nodeType==3?Nt(i,0,i.nodeValue.length).getClientRects():i.nodeType==1?i.getClientRects():[]}function Di(i,e,t,n){return t?Ea(i,e,t,n,-1)||Ea(i,e,t,n,1):!1}function en(i){for(var e=0;;e++)if(i=i.previousSibling,!i)return e}function Ea(i,e,t,n,r){for(;;){if(i==t&&e==n)return!0;if(e==(r<0?0:mt(i))){if(i.nodeName=="DIV")return!1;let s=i.parentNode;if(!s||s.nodeType!=1)return!1;e=en(i)+(r<0?0:1),i=s}else if(i.nodeType==1){if(i=i.childNodes[e+(r<0?-1:0)],i.nodeType==1&&i.contentEditable=="false")return!1;e=r<0?mt(i):0}else return!1}}function mt(i){return i.nodeType==3?i.nodeValue.length:i.childNodes.length}function ao(i,e){let t=e?i.left:i.right;return{left:t,right:t,top:i.top,bottom:i.bottom}}function Id(i){return{left:0,right:i.innerWidth,top:0,bottom:i.innerHeight}}function bl(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 Ld(i,e,t,n,r,s,o,O){let a=i.ownerDocument,l=a.defaultView||window;for(let h=i,c=!1;h&&!c;)if(h.nodeType==1){let f,d=h==a.body,p=1,m=1;if(d)f=Id(l);else{if(/^(fixed|sticky)$/.test(getComputedStyle(h).position)&&(c=!0),h.scrollHeight<=h.clientHeight&&h.scrollWidth<=h.clientWidth){h=h.assignedSlot||h.parentNode;continue}let Q=h.getBoundingClientRect();({scaleX:p,scaleY:m}=bl(h,Q)),f={left:Q.left,right:Q.left+h.clientWidth*p,top:Q.top,bottom:Q.top+h.clientHeight*m}}let $=0,g=0;if(r=="nearest")e.top0&&e.bottom>f.bottom+g&&(g=e.bottom-f.bottom+g+o)):e.bottom>f.bottom&&(g=e.bottom-f.bottom+o,t<0&&e.top-g0&&e.right>f.right+$&&($=e.right-f.right+$+s)):e.right>f.right&&($=e.right-f.right+s,t<0&&e.leftt.clientHeight||t.scrollWidth>t.clientWidth)return t;t=t.assignedSlot||t.parentNode}else if(t.nodeType==11)t=t.host;else break;return null}var Ts=class{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?mt(t):0),n,Math.min(e.focusOffset,n?mt(n):0))}set(e,t,n,r){this.anchorNode=e,this.anchorOffset=t,this.focusNode=n,this.focusOffset=r}},mi=null;function xl(i){if(i.setActive)return i.setActive();if(mi)return i.focus(mi);let e=[];for(let t=i;t&&(e.push(t,t.scrollTop,t.scrollLeft),t!=t.ownerDocument);t=t.parentNode);if(i.focus(mi==null?{get preventScroll(){return mi={preventScroll:!0},!0}}:void 0),!mi){mi=!1;for(let t=0;tMath.max(1,i.scrollHeight-i.clientHeight-4)}var ge=class i{constructor(e,t,n=!0){this.node=e,this.offset=t,this.precise=n}static before(e,t){return new i(e.parentNode,en(e),t)}static after(e,t){return new i(e.parentNode,en(e)+1,t)}},lo=[],J=class i{constructor(){this.parent=null,this.dom=null,this.flags=2}get overrideDOMText(){return null}get posAtStart(){return this.parent?this.parent.posBefore(this):0}get posAtEnd(){return this.posAtStart+this.length}posBefore(e){let t=this.posAtStart;for(let n of this.children){if(n==e)return t;t+=n.length+n.breakAfter}throw new RangeError("Invalid child in posBefore")}posAfter(e){return this.posBefore(e)+e.length}sync(e,t){if(this.flags&2){let n=this.dom,r=null,s;for(let o of this.children){if(o.flags&7){if(!o.dom&&(s=r?r.nextSibling:n.firstChild)){let O=i.get(s);(!O||!O.parent&&O.canReuseDOM(o))&&o.reuseDOM(s)}o.sync(e,t),o.flags&=-8}if(s=r?r.nextSibling:n.firstChild,t&&!t.written&&t.node==n&&s!=o.dom&&(t.written=!0),o.dom.parentNode==n)for(;s&&s!=o.dom;)s=Ma(s);else n.insertBefore(o.dom,s);r=o.dom}for(s=r?r.nextSibling:n.firstChild,s&&t&&t.node==n&&(t.written=!0);s;)s=Ma(s)}else if(this.flags&1)for(let n of this.children)n.flags&7&&(n.sync(e,t),n.flags&=-8)}reuseDOM(e){}localPosFromDOM(e,t){let n;if(e==this.dom)n=this.dom.childNodes[t];else{let r=mt(e)==0?0:t==0?-1:1;for(;;){let s=e.parentNode;if(s==this.dom)break;r==0&&s.firstChild!=s.lastChild&&(e==s.firstChild?r=-1:r=1),e=s}r<0?n=e:n=e.nextSibling}if(n==this.dom.firstChild)return 0;for(;n&&!i.get(n);)n=n.nextSibling;if(!n)return this.length;for(let r=0,s=0;;r++){let o=this.children[r];if(o.dom==n)return s;s+=o.length+o.breakAfter}}domBoundsAround(e,t,n=0){let r=-1,s=-1,o=-1,O=-1;for(let a=0,l=n,h=n;at)return c.domBoundsAround(e,t,l);if(f>=e&&r==-1&&(r=a,s=l),l>t&&c.dom.parentNode==this.dom){o=a,O=h;break}h=f,l=f+c.breakAfter}return{from:s,to:O<0?n+this.length:O,startDOM:(r?this.children[r-1].dom.nextSibling:null)||this.dom.firstChild,endDOM:o=0?this.children[o].dom:null}}markDirty(e=!1){this.flags|=2,this.markParentsDirty(e)}markParentsDirty(e){for(let t=this.parent;t;t=t.parent){if(e&&(t.flags|=2),t.flags&1)return;t.flags|=1,e=!1}}setParent(e){this.parent!=e&&(this.parent=e,this.flags&7&&this.markParentsDirty(!0))}setDOM(e){this.dom!=e&&(this.dom&&(this.dom.cmView=null),this.dom=e,e.cmView=this)}get rootView(){for(let e=this;;){let t=e.parent;if(!t)return e;e=t}}replaceChildren(e,t,n=lo){this.markDirty();for(let r=e;rthis.pos||e==this.pos&&(t>0||this.i==0||this.children[this.i-1].breakAfter))return this.off=e-this.pos,this;let n=this.children[--this.i];this.pos-=n.length+n.breakAfter}}};function Tl(i,e,t,n,r,s,o,O,a){let{children:l}=i,h=l.length?l[e]:null,c=s.length?s[s.length-1]:null,f=c?c.breakAfter:o;if(!(e==n&&h&&!o&&!f&&s.length<2&&h.merge(t,r,s.length?c:null,t==0,O,a))){if(n0&&(!o&&s.length&&h.merge(t,h.length,s[0],!1,O,0)?h.breakAfter=s.shift().breakAfter:(t2),z={mac:Da||/Mac/.test(Xe.platform),windows:/Win/.test(Xe.platform),linux:/Linux|X11/.test(Xe.platform),ie:$r,ie_version:zl?vs.documentMode||6:Zs?+Zs[1]:zs?+zs[1]:0,gecko:Ia,gecko_version:Ia?+(/Firefox\/(\d+)/.exec(Xe.userAgent)||[0,0])[1]:0,chrome:!!ys,chrome_version:ys?+ys[1]:0,ios:Da,android:/Android\b/.test(Xe.userAgent),webkit:La,safari:Zl,webkit_version:La?+(/\bAppleWebKit\/(\d+)/.exec(navigator.userAgent)||[0,0])[1]:0,tabSize:vs.documentElement.style.tabSize!=null?"tab-size":"-moz-tab-size"},Hd=256,Tt=class i extends J{constructor(e){super(),this.text=e}get length(){return this.text.length}createDOM(e){this.setDOM(e||document.createTextNode(this.text))}sync(e,t){this.dom||this.createDOM(),this.dom.nodeValue!=this.text&&(t&&t.node==this.dom&&(t.written=!0),this.dom.nodeValue=this.text)}reuseDOM(e){e.nodeType==3&&this.createDOM(e)}merge(e,t,n){return this.flags&8||n&&(!(n instanceof i)||this.length-(t-e)+n.length>Hd||n.flags&8)?!1:(this.text=this.text.slice(0,e)+(n?n.text:"")+this.text.slice(t),this.markDirty(),!0)}split(e){let t=new i(this.text.slice(e));return this.text=this.text.slice(0,e),this.markDirty(),t.flags|=this.flags&8,t}localPosFromDOM(e,t){return e==this.dom?t:t?this.text.length:0}domAtPos(e){return new ge(this.dom,e)}domBoundsAround(e,t,n){return{from:n,to:n+this.length,startDOM:this.dom,endDOM:this.dom.nextSibling}}coordsAt(e,t){return Fd(this.dom,e,t)}},vt=class i extends J{constructor(e,t=[],n=0){super(),this.mark=e,this.children=t,this.length=n;for(let r of t)r.setParent(this)}setAttrs(e){if(wl(e),this.mark.class&&(e.className=this.mark.class),this.mark.attrs)for(let t in this.mark.attrs)e.setAttribute(t,this.mark.attrs[t]);return e}canReuseDOM(e){return super.canReuseDOM(e)&&!((this.flags|e.flags)&8)}reuseDOM(e){e.nodeName==this.mark.tagName.toUpperCase()&&(this.setDOM(e),this.flags|=6)}sync(e,t){this.dom?this.flags&4&&this.setAttrs(this.dom):this.setDOM(this.setAttrs(document.createElement(this.mark.tagName))),super.sync(e,t)}merge(e,t,n,r,s,o){return n&&(!(n instanceof i&&n.mark.eq(this.mark))||e&&s<=0||te&&t.push(n=e&&(r=s),n=a,s++}let o=this.length-e;return this.length=e,r>-1&&(this.children.length=r,this.markDirty()),new i(this.mark,t,o)}domAtPos(e){return Xl(this,e)}coordsAt(e,t){return Rl(this,e,t)}};function Fd(i,e,t){let n=i.nodeValue.length;e>n&&(e=n);let r=e,s=e,o=0;e==0&&t<0||e==n&&t>=0?z.chrome||z.gecko||(e?(r--,o=1):s=0)?0:O.length-1];return z.safari&&!o&&a.width==0&&(a=Array.prototype.find.call(O,l=>l.width)||a),o?ao(a,o<0):a||null}var or=class i extends J{static create(e,t,n){return new i(e,t,n)}constructor(e,t,n){super(),this.widget=e,this.length=t,this.side=n,this.prevWidget=null}split(e){let t=i.create(this.widget,this.length-e,this.side);return this.length-=e,t}sync(e){(!this.dom||!this.widget.updateDOM(this.dom,e))&&(this.dom&&this.prevWidget&&this.prevWidget.destroy(this.dom),this.prevWidget=null,this.setDOM(this.widget.toDOM(e)),this.widget.editable||(this.dom.contentEditable="false"))}getSide(){return this.side}merge(e,t,n,r,s,o){return n&&(!(n instanceof i)||!this.widget.compare(n.widget)||e>0&&s<=0||t0)?ge.before(this.dom):ge.after(this.dom,e==this.length)}domBoundsAround(){return null}coordsAt(e,t){let n=this.widget.coordsAt(this.dom,e,t);if(n)return n;let r=this.dom.getClientRects(),s=null;if(!r.length)return null;let o=this.side?this.side<0:e>0;for(let O=o?r.length-1:0;s=r[O],!(e>0?O==0:O==r.length-1||s.top0?ge.before(this.dom):ge.after(this.dom)}localPosFromDOM(){return 0}domBoundsAround(){return null}coordsAt(e){return this.dom.getBoundingClientRect()}get overrideDOMText(){return j.empty}get isHidden(){return!0}};Tt.prototype.children=or.prototype.children=tn.prototype.children=lo;function Xl(i,e){let t=i.dom,{children:n}=i,r=0;for(let s=0;rs&&e0;s--){let o=n[s-1];if(o.dom.parentNode==t)return o.domAtPos(o.length)}for(let s=r;s0&&e instanceof vt&&r.length&&(n=r[r.length-1])instanceof vt&&n.mark.eq(e.mark)?Wl(n,e.children[0],t-1):(r.push(e),e.setParent(i)),i.length+=e.length}function Rl(i,e,t){let n=null,r=-1,s=null,o=-1;function O(l,h){for(let c=0,f=0;c=h&&(d.children.length?O(d,h-f):(!s||s.isHidden&&t>0)&&(p>h||f==p&&d.getSide()>0)?(s=d,o=h-f):(f-1?1:0)!=r.length-(t&&r.indexOf(t)>-1?1:0))return!1;for(let s of n)if(s!=t&&(r.indexOf(s)==-1||i[s]!==e[s]))return!1;return!0}function Ws(i,e,t){let n=!1;if(e)for(let r in e)t&&r in t||(n=!0,r=="style"?i.style.cssText="":i.removeAttribute(r));if(t)for(let r in t)e&&e[r]==t[r]||(n=!0,r=="style"?i.style.cssText=t[r]:i.setAttribute(r,t[r]));return n}function Jd(i){let e=Object.create(null);for(let t=0;t0&&this.children[n-1].length==0;)this.children[--n].destroy();return this.children.length=n,this.markDirty(),this.length=e,t}transferDOM(e){this.dom&&(this.markDirty(),e.setDOM(this.dom),e.prevAttrs=this.prevAttrs===void 0?this.attrs:this.prevAttrs,this.prevAttrs=void 0,this.dom=null)}setDeco(e){ho(this.attrs,e)||(this.dom&&(this.prevAttrs=this.attrs,this.markDirty()),this.attrs=e)}append(e,t){Wl(this,e,t)}addLineDeco(e){let t=e.spec.attributes,n=e.spec.class;t&&(this.attrs=Xs(t,this.attrs||{})),n&&(this.attrs=Xs({class:n},this.attrs||{}))}domAtPos(e){return Xl(this,e)}reuseDOM(e){e.nodeName=="DIV"&&(this.setDOM(e),this.flags|=6)}sync(e,t){var n;this.dom?this.flags&4&&(wl(this.dom),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0):(this.setDOM(document.createElement("div")),this.dom.className="cm-line",this.prevAttrs=this.attrs?null:void 0),this.prevAttrs!==void 0&&(Ws(this.dom,this.prevAttrs,this.attrs),this.dom.classList.add("cm-line"),this.prevAttrs=void 0),super.sync(e,t);let r=this.dom.lastChild;for(;r&&J.get(r)instanceof vt;)r=r.lastChild;if(!r||!this.length||r.nodeName!="BR"&&((n=J.get(r))===null||n===void 0?void 0:n.isEditable)==!1&&(!z.ios||!this.children.some(s=>s instanceof Tt))){let s=document.createElement("BR");s.cmIgnore=!0,this.dom.appendChild(s)}}measureTextSize(){if(this.children.length==0||this.length>20)return null;let e=0,t;for(let n of this.children){if(!(n instanceof Tt)||/[^ -~]/.test(n.text))return null;let r=Ji(n.dom);if(r.length!=1)return null;e+=r[0].width,t=r[0].height}return e?{lineHeight:this.dom.getBoundingClientRect().height,charWidth:e/this.length,textHeight:t}:null}coordsAt(e,t){let n=Rl(this,e,t);if(!this.children.length&&n&&this.parent){let{heightOracle:r}=this.parent.view.viewState,s=n.bottom-n.top;if(Math.abs(s-r.lineHeight)<2&&r.textHeight=t){if(s instanceof i)return s;if(o>t)break}r=o+s.breakAfter}return null}},Si=class i extends J{constructor(e,t,n){super(),this.widget=e,this.length=t,this.deco=n,this.breakAfter=0,this.prevWidget=null}merge(e,t,n,r,s,o){return n&&(!(n instanceof i)||!this.widget.compare(n.widget)||e>0&&s<=0||t0}},zt=class{eq(e){return!1}updateDOM(e,t){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){}},Qe=function(i){return i[i.Text=0]="Text",i[i.WidgetBefore=1]="WidgetBefore",i[i.WidgetAfter=2]="WidgetAfter",i[i.WidgetRange=3]="WidgetRange",i}(Qe||(Qe={})),I=class extends De{constructor(e,t,n,r){super(),this.startSide=e,this.endSide=t,this.widget=n,this.spec=r}get heightRelevant(){return!1}static mark(e){return new nn(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 Zt(e,t,t,n,e.widget||null,!1)}static replace(e){let t=!!e.block,n,r;if(e.isBlockGap)n=-5e8,r=4e8;else{let{start:s,end:o}=Vl(e,t);n=(s?t?-3e8:-1:5e8)-1,r=(o?t?2e8:1:-6e8)+1}return new Zt(e,n,r,t,e.widget||null,!0)}static line(e){return new rn(e)}static set(e,t=!1){return H.of(e,t)}hasHeight(){return this.widget?this.widget.estimatedHeight>-1:!1}};I.none=H.empty;var nn=class i extends I{constructor(e){let{start:t,end:n}=Vl(e);super(t?-1:5e8,n?1:-6e8,null,e),this.tagName=e.tagName||"span",this.class=e.class||"",this.attrs=e.attributes||null}eq(e){var t,n;return this==e||e instanceof i&&this.tagName==e.tagName&&(this.class||((t=this.attrs)===null||t===void 0?void 0:t.class))==(e.class||((n=e.attrs)===null||n===void 0?void 0:n.class))&&ho(this.attrs,e.attrs,"class")}range(e,t=e){if(e>=t)throw new RangeError("Mark decorations may not be empty");return super.range(e,t)}};nn.prototype.point=!1;var rn=class i extends I{constructor(e){super(-2e8,-2e8,null,e)}eq(e){return e instanceof i&&this.spec.class==e.spec.class&&ho(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)}};rn.prototype.mapMode=ae.TrackBefore;rn.prototype.point=!0;var Zt=class i extends I{constructor(e,t,n,r,s,o){super(t,n,s,e),this.block=r,this.isReplace=o,this.mapMode=r?t<=0?ae.TrackBefore:ae.TrackAfter:ae.TrackDel}get type(){return this.startSide!=this.endSide?Qe.WidgetRange:this.startSide<=0?Qe.WidgetBefore:Qe.WidgetAfter}get heightRelevant(){return this.block||!!this.widget&&(this.widget.estimatedHeight>=5||this.widget.lineBreaks>0)}eq(e){return e instanceof i&&ep(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)}};Zt.prototype.point=!0;function Vl(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 ep(i,e){return i==e||!!(i&&e&&i.compare(e))}function Rs(i,e,t,n=0){let r=t.length-1;r>=0&&t[r]+n>=i?t[r]=Math.max(t[r],e):t.push(i,e)}var Bi=class i{constructor(e,t,n,r){this.doc=e,this.pos=t,this.end=n,this.disallowBlockEffectsFor=r,this.content=[],this.curLine=null,this.breakAtStart=0,this.pendingBuffer=0,this.bufferMarks=[],this.atCursorPos=!0,this.openStart=-1,this.openEnd=-1,this.text="",this.textOff=0,this.cursor=e.iter(),this.skip=t}posCovered(){if(this.content.length==0)return!this.breakAtStart&&this.doc.lineAt(this.pos).from!=this.pos;let e=this.content[this.content.length-1];return!(e.breakAfter||e instanceof Si&&e.deco.endSide<0)}getLine(){return this.curLine||(this.content.push(this.curLine=new he),this.atCursorPos=!0),this.curLine}flushBuffer(e=this.bufferMarks){this.pendingBuffer&&(this.curLine.append(Mn(new tn(-1),e),e.length),this.pendingBuffer=0)}addBlockWidget(e){this.flushBuffer(),this.curLine=null,this.content.push(e)}finish(e){this.pendingBuffer&&e<=this.bufferMarks.length?this.flushBuffer():this.pendingBuffer=0,!this.posCovered()&&!(e&&this.content.length&&this.content[this.content.length-1]instanceof Si)&&this.getLine()}buildText(e,t,n){for(;e>0;){if(this.textOff==this.text.length){let{value:s,lineBreak:o,done:O}=this.cursor.next(this.skip);if(this.skip=0,O)throw new Error("Ran out of text content when drawing inline views");if(o){this.posCovered()||this.getLine(),this.content.length?this.content[this.content.length-1].breakAfter=1:this.breakAtStart=1,this.flushBuffer(),this.curLine=null,this.atCursorPos=!0,e--;continue}else this.text=s,this.textOff=0}let r=Math.min(this.text.length-this.textOff,e,512);this.flushBuffer(t.slice(t.length-n)),this.getLine().append(Mn(new Tt(this.text.slice(this.textOff,this.textOff+r)),t),n),this.atCursorPos=!0,this.textOff+=r,e-=r,n=0}}span(e,t,n,r){this.buildText(t-e,n,r),this.pos=t,this.openStart<0&&(this.openStart=r)}point(e,t,n,r,s,o){if(this.disallowBlockEffectsFor[o]&&n instanceof Zt){if(n.block)throw new RangeError("Block decorations may not be specified via plugins");if(t>this.doc.lineAt(this.pos).to)throw new RangeError("Decorations that replace line breaks may not be specified via plugins")}let O=t-e;if(n instanceof Zt)if(n.block)n.startSide>0&&!this.posCovered()&&this.getLine(),this.addBlockWidget(new Si(n.widget||new Or("div"),O,n));else{let a=or.create(n.widget||new Or("span"),O,O?0:n.startSide),l=this.atCursorPos&&!a.isEditable&&s<=r.length&&(e0),h=!a.isEditable&&(er.length||n.startSide<=0),c=this.getLine();this.pendingBuffer==2&&!l&&!a.isEditable&&(this.pendingBuffer=0),this.flushBuffer(r),l&&(c.append(Mn(new tn(1),r),s),s=r.length+Math.max(0,s-r.length)),c.append(Mn(a,r),s),this.atCursorPos=h,this.pendingBuffer=h?er.length?1:2:0,this.pendingBuffer&&(this.bufferMarks=r.slice())}else this.doc.lineAt(this.pos).from==this.pos&&this.getLine().addLineDeco(n);O&&(this.textOff+O<=this.text.length?this.textOff+=O:(this.skip+=O-(this.text.length-this.textOff),this.text="",this.textOff=0),this.pos=t),this.openStart<0&&(this.openStart=s)}static build(e,t,n,r,s){let o=new i(e,t,n,s);return o.openEnd=H.spans(r,t,n,o),o.openStart<0&&(o.openStart=o.openEnd),o.finish(o.openEnd),o}};function Mn(i,e){for(let t of e)i=new vt(t,[i],i.length);return i}var Or=class extends zt{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}},K=function(i){return i[i.LTR=0]="LTR",i[i.RTL=1]="RTL",i}(K||(K={})),Ht=K.LTR,co=K.RTL;function ql(i){let e=[];for(let t=0;t=t){if(O.level==n)return o;(s<0||(r!=0?r<0?O.fromt:e[s].level>O.level))&&(s=o)}}if(s<0)throw new RangeError("Index out of range");return s}};function Cl(i,e){if(i.length!=e.length)return!1;for(let t=0;t=0;m-=3)if(nt[m+1]==-d){let $=nt[m+2],g=$&2?r:$&4?$&1?s:r:0;g&&(N[c]=N[nt[m]]=g),O=m;break}}else{if(nt.length==189)break;nt[O++]=c,nt[O++]=f,nt[O++]=a}else if((p=N[c])==2||p==1){let m=p==r;a=m?0:1;for(let $=O-3;$>=0;$-=3){let g=nt[$+2];if(g&2)break;if(m)nt[$+2]|=2;else{if(g&4)break;nt[$+2]|=4}}}}}function op(i,e,t,n){for(let r=0,s=n;r<=t.length;r++){let o=r?t[r-1].to:i,O=ra;)p==$&&(p=t[--m].from,$=m?t[m-1].to:i),N[--p]=d;a=h}else s=l,a++}}}function qs(i,e,t,n,r,s,o){let O=n%2?2:1;if(n%2==r%2)for(let a=e,l=0;aa&&o.push(new st(a,m.from,d));let $=m.direction==Ht!=!(d%2);Ys(i,$?n+1:n,r,m.inner,m.from,m.to,o),a=m.to}p=m.to}else{if(p==t||(h?N[p]!=O:N[p]==O))break;p++}f?qs(i,a,p,n+1,r,f,o):ae;){let h=!0,c=!1;if(!l||a>s[l-1].to){let m=N[a-1];m!=O&&(h=!1,c=m==16)}let f=!h&&O==1?[]:null,d=h?n:n+1,p=a;e:for(;;)if(l&&p==s[l-1].to){if(c)break e;let m=s[--l];if(!h)for(let $=m.from,g=l;;){if($==e)break e;if(g&&s[g-1].to==$)$=s[--g].from;else{if(N[$-1]==O)break e;break}}if(f)f.push(m);else{m.toN.length;)N[N.length]=256;let n=[],r=e==Ht?0:1;return Ys(i,r,r,t,0,i.length,n),n}function jl(i){return[new st(0,i,0)]}var Al="";function ap(i,e,t,n,r){var s;let o=n.head-i.from,O=st.find(e,o,(s=n.bidiLevel)!==null&&s!==void 0?s:-1,n.assoc),a=e[O],l=a.side(r,t);if(o==l){let f=O+=r?1:-1;if(f<0||f>=e.length)return null;a=e[O=f],o=a.side(!r,t),l=a.side(r,t)}let h=le(i.text,o,a.forward(r,t));(ha.to)&&(h=l),Al=i.text.slice(Math.min(o,h),Math.max(o,h));let c=O==(r?e.length-1:0)?null:e[O+(r?1:-1)];return c&&h==l&&c.level+(r?0:1)i.some(e=>e)}),Dl=W.define({combine:i=>i.some(e=>e)}),Ni=class i{constructor(e,t="nearest",n="nearest",r=5,s=5,o=!1){this.range=e,this.y=t,this.x=n,this.yMargin=r,this.xMargin=s,this.isSnapshot=o}map(e){return e.empty?this:new i(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 i(S.cursor(e.doc.length),this.y,this.x,this.yMargin,this.xMargin,this.isSnapshot)}},In=B.define({map:(i,e)=>i.map(e)});function ot(i,e,t){let n=i.facet(Gl);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)}var gr=W.define({combine:i=>i.length?i[0]:!0}),hp=0,Ei=W.define(),Ee=class i{constructor(e,t,n,r,s){this.id=e,this.create=t,this.domEventHandlers=n,this.domEventObservers=r,this.extension=s(this)}static define(e,t){let{eventHandlers:n,eventObservers:r,provide:s,decorations:o}=t||{};return new i(hp++,e,n,r,O=>{let a=[Ei.of(O)];return o&&a.push(sn.of(l=>{let h=l.plugin(O);return h?o(h):I.none})),s&&a.push(s(O)),a})}static fromClass(e,t){return i.define(n=>new e(n),t)}},Hi=class{constructor(e){this.spec=e,this.mustUpdate=null,this.value=null}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(ot(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.create(e)}catch(t){ot(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){ot(e.state,n,"CodeMirror plugin crashed")}}deactivate(){this.spec=this.value=null}},Bl=W.define(),fo=W.define(),sn=W.define(),Nl=W.define(),uo=W.define(),Hl=W.define();function Na(i,e){let t=i.state.facet(Hl);if(!t.length)return t;let n=t.map(s=>s instanceof Function?s(i):s),r=[];return H.spans(n,e.from,e.to,{point(){},span(s,o,O,a){let l=s-e.from,h=o-e.from,c=r;for(let f=O.length-1;f>=0;f--,a--){let d=O[f].spec.bidiIsolate,p;if(d==null&&(d=lp(e.text,l,h)),a>0&&c.length&&(p=c[c.length-1]).to==l&&p.direction==d)p.to=h,c=p.inner;else{let m={from:l,to:h,direction:d,inner:[]};c.push(m),c=m.inner}}}}),r}var Fl=W.define();function Kl(i){let e=0,t=0,n=0,r=0;for(let s of i.state.facet(Fl)){let o=s(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&&(r=Math.max(r,o.bottom)))}return{left:e,right:t,top:n,bottom:r}}var Gi=W.define(),Ot=class i{constructor(e,t,n,r){this.fromA=e,this.toA=t,this.fromB=n,this.toB=r}join(e){return new i(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 r=e[t-1];if(!(r.fromA>n.toA)){if(r.toAh)break;s+=2}if(!a)return n;new i(a.fromA,a.toA,a.fromB,a.toB).addToSet(n),o=a.toA,O=a.toB}}},ar=class i{constructor(e,t,n){this.view=e,this.state=t,this.transactions=n,this.flags=0,this.startState=e.state,this.changes=me.empty(this.startState.doc.length);for(let s of n)this.changes=this.changes.compose(s.changes);let r=[];this.changes.iterChangedRanges((s,o,O,a)=>r.push(new Ot(s,o,O,a))),this.changedRanges=r}static create(e,t,n){return new i(e,t,n)}get viewportChanged(){return(this.flags&4)>0}get heightChanged(){return(this.flags&2)>0}get geometryChanged(){return this.docChanged||(this.flags&10)>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}},lr=class extends J{get length(){return this.view.state.doc.length}constructor(e){super(),this.view=e,this.decorations=[],this.dynamicDecorationMap=[],this.domChanged=null,this.hasComposition=null,this.markedForComposition=new Set,this.minWidth=0,this.minWidthFrom=0,this.minWidthTo=0,this.impreciseAnchor=null,this.impreciseHead=null,this.forceSelection=!1,this.lastUpdate=Date.now(),this.setDOM(e.contentDOM),this.children=[new he],this.children[0].setParent(this),this.updateDeco(),this.updateInner([new Ot(0,0,0,e.state.doc.length)],0,null)}update(e){var t;let n=e.changedRanges;this.minWidth>0&&n.length&&(n.every(({fromA:l,toA:h})=>hthis.minWidthTo)?(this.minWidthFrom=e.changes.mapPos(this.minWidthFrom,1),this.minWidthTo=e.changes.mapPos(this.minWidthTo,1)):this.minWidth=this.minWidthFrom=this.minWidthTo=0);let r=-1;this.view.inputState.composing>=0&&(!((t=this.domChanged)===null||t===void 0)&&t.newSel?r=this.domChanged.newSel.head:!$p(e.changes,this.hasComposition)&&!e.selectionSet&&(r=e.state.selection.main.head));let s=r>-1?fp(this.view,e.changes,r):null;if(this.domChanged=null,this.hasComposition){this.markedForComposition.clear();let{from:l,to:h}=this.hasComposition;n=new Ot(l,h,e.changes.mapPos(l,-1),e.changes.mapPos(h,1)).addToSet(n.slice())}this.hasComposition=s?{from:s.range.fromB,to:s.range.toB}:null,(z.ie||z.chrome)&&!s&&e&&e.state.doc.lines!=e.startState.doc.lines&&(this.forceSelection=!0);let o=this.decorations,O=this.updateDeco(),a=pp(o,O,e.changes);return n=Ot.extendWithRanges(n,a),!(this.flags&7)&&n.length==0?!1:(this.updateInner(n,e.startState.doc.length,s),e.transactions.length&&(this.lastUpdate=Date.now()),!0)}updateInner(e,t,n){this.view.viewState.mustMeasureContent=!0,this.updateChildren(e,t,n);let{observer:r}=this.view;r.ignore(()=>{this.dom.style.height=this.view.viewState.contentHeight/this.view.scaleY+"px",this.dom.style.flexBasis=this.minWidth?this.minWidth+"px":"";let o=z.chrome||z.ios?{node:r.selectionRange.focusNode,written:!1}:void 0;this.sync(this.view,o),this.flags&=-8,o&&(o.written||r.selectionRange.focusNode!=o.node)&&(this.forceSelection=!0),this.dom.style.height=""}),this.markedForComposition.forEach(o=>o.flags&=-9);let s=[];if(this.view.viewport.from||this.view.viewport.to=0?r[o]:null;if(!O)break;let{fromA:a,toA:l,fromB:h,toB:c}=O,f,d,p,m;if(n&&n.range.fromBh){let w=Bi.build(this.view.state.doc,h,n.range.fromB,this.decorations,this.dynamicDecorationMap),P=Bi.build(this.view.state.doc,n.range.toB,c,this.decorations,this.dynamicDecorationMap);d=w.breakAtStart,p=w.openStart,m=P.openEnd;let v=this.compositionView(n);P.breakAtStart?v.breakAfter=1:P.content.length&&v.merge(v.length,v.length,P.content[0],!1,P.openStart,0)&&(v.breakAfter=P.content[0].breakAfter,P.content.shift()),w.content.length&&v.merge(0,0,w.content[w.content.length-1],!0,0,w.openEnd)&&w.content.pop(),f=w.content.concat(v).concat(P.content)}else({content:f,breakAtStart:d,openStart:p,openEnd:m}=Bi.build(this.view.state.doc,h,c,this.decorations,this.dynamicDecorationMap));let{i:$,off:g}=s.findPos(l,1),{i:Q,off:x}=s.findPos(a,-1);Tl(this,Q,x,$,g,f,d,p,m)}n&&this.fixCompositionDOM(n)}compositionView(e){let t=new Tt(e.text.nodeValue);t.flags|=8;for(let{deco:r}of e.marks)t=new vt(r,[t],t.length);let n=new he;return n.append(t,0),n}fixCompositionDOM(e){let t=(s,o)=>{o.flags|=8|(o.children.some(a=>a.flags&7)?1:0),this.markedForComposition.add(o);let O=J.get(s);O&&O!=o&&(O.dom=null),o.setDOM(s)},n=this.childPos(e.range.fromB,1),r=this.children[n.i];t(e.line,r);for(let s=e.marks.length-1;s>=-1;s--)n=r.childPos(n.off,1),r=r.children[n.i],t(s>=0?e.marks[s].node:e.text,r)}updateSelection(e=!1,t=!1){(e||!this.view.observer.selectionRange.focusNode)&&this.view.observer.readSelectionRange();let n=this.view.root.activeElement,r=n==this.dom,s=!r&&Kn(this.dom,this.view.observer.selectionRange)&&!(n&&this.dom.contains(n));if(!(r||t||s))return;let o=this.forceSelection;this.forceSelection=!1;let O=this.view.state.selection.main,a=this.moveToLine(this.domAtPos(O.anchor)),l=O.empty?a:this.moveToLine(this.domAtPos(O.head));if(z.gecko&&O.empty&&!this.hasComposition&&cp(a)){let c=document.createTextNode("");this.view.observer.ignore(()=>a.node.insertBefore(c,a.node.childNodes[a.offset]||null)),a=l=new ge(c,0),o=!0}let h=this.view.observer.selectionRange;(o||!h.focusNode||(!Di(a.node,a.offset,h.anchorNode,h.anchorOffset)||!Di(l.node,l.offset,h.focusNode,h.focusOffset))&&!this.suppressWidgetCursorChange(h,O))&&(this.view.observer.ignore(()=>{z.android&&z.chrome&&this.dom.contains(h.focusNode)&&mp(h.focusNode,this.dom)&&(this.dom.blur(),this.dom.focus({preventScroll:!0}));let c=rr(this.view.root);if(c)if(O.empty){if(z.gecko){let f=up(a.node,a.offset);if(f&&f!=3){let d=eh(a.node,a.offset,f==1?1:-1);d&&(a=new ge(d.node,d.offset))}}c.collapse(a.node,a.offset),O.bidiLevel!=null&&c.caretBidiLevel!==void 0&&(c.caretBidiLevel=O.bidiLevel)}else if(c.extend){c.collapse(a.node,a.offset);try{c.extend(l.node,l.offset)}catch{}}else{let f=document.createRange();O.anchor>O.head&&([a,l]=[l,a]),f.setEnd(l.node,l.offset),f.setStart(a.node,a.offset),c.removeAllRanges(),c.addRange(f)}s&&this.view.root.activeElement==this.dom&&(this.dom.blur(),n&&n.focus())}),this.view.observer.setSelectionRange(a,l)),this.impreciseAnchor=a.precise?null:new ge(h.anchorNode,h.anchorOffset),this.impreciseHead=l.precise?null:new ge(h.focusNode,h.focusOffset)}suppressWidgetCursorChange(e,t){return this.hasComposition&&t.empty&&Di(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=rr(e.root),{anchorNode:r,anchorOffset:s}=e.observer.selectionRange;if(!n||!t.empty||!t.assoc||!n.modify)return;let o=he.find(this,t.head);if(!o)return;let O=o.posAtStart;if(t.head==O||t.head==O+o.length)return;let a=this.coordsAt(t.head,-1),l=this.coordsAt(t.head,1);if(!a||!l||a.bottom>l.top)return;let h=this.domAtPos(t.head+t.assoc);n.collapse(h.node,h.offset),n.modify("move",t.assoc<0?"forward":"backward","lineboundary"),e.observer.readSelectionRange();let c=e.observer.selectionRange;e.docView.posFromDOM(c.anchorNode,c.anchorOffset)!=t.from&&n.collapse(r,s)}moveToLine(e){let t=this.dom,n;if(e.node!=t)return e;for(let r=e.offset;!n&&r=0;r--){let s=J.get(t.childNodes[r]);s instanceof he&&(n=s.domAtPos(s.length))}return n?new ge(n.node,n.offset,!0):e}nearest(e){for(let t=e;t;){let n=J.get(t);if(n&&n.rootView==this)return n;t=t.parentNode}return null}posFromDOM(e,t){let n=this.nearest(e);if(!n)throw new RangeError("Trying to find position for a DOM position outside of the document");return n.localPosFromDOM(e,t)+n.posAtStart}domAtPos(e){let{i:t,off:n}=this.childCursor().findPos(e,-1);for(;t=0;o--){let O=this.children[o],a=s-O.breakAfter,l=a-O.length;if(ae||O.covers(1))&&(!n||O instanceof he&&!(n instanceof he&&t>=0))&&(n=O,r=l),s=l}return n?n.coordsAt(e-r,t):null}coordsForChar(e){let{i:t,off:n}=this.childPos(e,1),r=this.children[t];if(!(r instanceof he))return null;for(;r.children.length;){let{i:O,off:a}=r.childPos(n,1);for(;;O++){if(O==r.children.length)return null;if((r=r.children[O]).length)break}n=a}if(!(r instanceof Tt))return null;let s=le(r.text,n);if(s==n)return null;let o=Nt(r.dom,n,s).getClientRects();for(let O=0;OMath.max(this.view.scrollDOM.clientWidth,this.minWidth)+1,O=-1,a=this.view.textDirection==K.LTR;for(let l=0,h=0;hr)break;if(l>=n){let d=c.dom.getBoundingClientRect();if(t.push(d.height),o){let p=c.dom.lastChild,m=p?Ji(p):[];if(m.length){let $=m[m.length-1],g=a?$.right-d.left:d.right-$.left;g>O&&(O=g,this.minWidth=s,this.minWidthFrom=l,this.minWidthTo=f)}}}l=f+c.breakAfter}return t}textDirectionAt(e){let{i:t}=this.childPos(e,1);return getComputedStyle(this.children[t].dom).direction=="rtl"?K.RTL:K.LTR}measureTextSize(){for(let s of this.children)if(s instanceof he){let o=s.measureTextSize();if(o)return o}let e=document.createElement("div"),t,n,r;return e.className="cm-line",e.style.width="99999px",e.style.position="absolute",e.textContent="abc def ghi jkl mno pqr stu",this.view.observer.ignore(()=>{this.dom.appendChild(e);let s=Ji(e.firstChild)[0];t=e.getBoundingClientRect().height,n=s?s.width/27:7,r=s?s.height:t,e.remove()}),{lineHeight:t,charWidth:n,textHeight:r}}childCursor(e=this.length){let t=this.children.length;return t&&(e-=this.children[--t].length),new sr(this.children,e,t)}computeBlockGapDeco(){let e=[],t=this.view.viewState;for(let n=0,r=0;;r++){let s=r==t.viewports.length?null:t.viewports[r],o=s?s.from-1:this.length;if(o>n){let O=(t.lineBlockAt(o).bottom-t.lineBlockAt(n).top)/this.view.scaleY;e.push(I.replace({widget:new hr(O),block:!0,inclusive:!0,isBlockGap:!0}).range(n,o))}if(!s)break;n=s.to+1}return I.set(e)}updateDeco(){let e=this.view.state.facet(sn).map((r,s)=>(this.dynamicDecorationMap[s]=typeof r=="function")?r(this.view):r),t=!1,n=this.view.state.facet(Nl).map((r,s)=>{let o=typeof r=="function";return o&&(t=!0),o?r(this.view):r});n.length&&(this.dynamicDecorationMap[e.length]=t,e.push(H.join(n)));for(let r=e.length;rt.anchor?-1:1),r;if(!n)return;!t.empty&&(r=this.coordsAt(t.anchor,t.anchor>t.head?-1:1))&&(n={left:Math.min(n.left,r.left),top:Math.min(n.top,r.top),right:Math.max(n.right,r.right),bottom:Math.max(n.bottom,r.bottom)});let s=Kl(this.view),o={left:n.left-s.left,top:n.top-s.top,right:n.right+s.right,bottom:n.bottom+s.bottom},{offsetWidth:O,offsetHeight:a}=this.view.scrollDOM;Ld(this.view.scrollDOM,o,t.head0)n=n.childNodes[r-1],r=mt(n);else break}if(t>=0)for(let n=i,r=e;;){if(n.nodeType==3)return{node:n,offset:r};if(n.nodeType==1&&r=0)n=n.childNodes[r],r=0;else break}return null}function up(i,e){return i.nodeType!=1?0:(e&&i.childNodes[e-1].contentEditable=="false"?1:0)|(e{ne.from&&(t=!0)}),t}function gp(i,e,t=1){let n=i.charCategorizer(e),r=i.doc.lineAt(e),s=e-r.from;if(r.length==0)return S.cursor(e);s==0?t=1:s==r.length&&(t=-1);let o=s,O=s;t<0?o=le(r.text,s,!1):O=le(r.text,s);let a=n(r.text.slice(o,O));for(;o>0;){let l=le(r.text,o,!1);if(n(r.text.slice(l,o))!=a)break;o=l}for(;Oi?e.left-i:Math.max(0,i-e.right)}function Sp(i,e){return e.top>i?e.top-i:Math.max(0,i-e.bottom)}function Ps(i,e){return i.tope.top+1}function Ha(i,e){return ei.bottom?{top:i.top,left:i.left,right:i.right,bottom:e}:i}function js(i,e,t){let n,r,s,o,O=!1,a,l,h,c;for(let p=i.firstChild;p;p=p.nextSibling){let m=Ji(p);for(let $=0;$x||o==x&&s>Q){n=p,r=g,s=Q,o=x;let w=x?t0?$0)}Q==0?t>g.bottom&&(!h||h.bottomg.top)&&(l=p,c=g):h&&Ps(h,g)?h=Fa(h,g.bottom):c&&Ps(c,g)&&(c=Ha(c,g.top))}}if(h&&h.bottom>=t?(n=a,r=h):c&&c.top<=t&&(n=l,r=c),!n)return{node:i,offset:0};let f=Math.max(r.left,Math.min(r.right,e));if(n.nodeType==3)return Ka(n,f,t);if(O&&n.contentEditable!="false")return js(n,f,t);let d=Array.prototype.indexOf.call(i.childNodes,n)+(e>=(r.left+r.right)/2?1:0);return{node:i,offset:d}}function Ka(i,e,t){let n=i.nodeValue.length,r=-1,s=1e9,o=0;for(let O=0;Ot?h.top-t:t-h.bottom)-1;if(h.left-1<=e&&h.right+1>=e&&c=(h.left+h.right)/2,d=f;if((z.chrome||z.gecko)&&Nt(i,O).getBoundingClientRect().left==h.right&&(d=!f),c<=0)return{node:i,offset:O+(d?1:0)};r=O+(d?1:0),s=c}}}return{node:i,offset:r>-1?r:o>0?i.nodeValue.length:0}}function th(i,e,t,n=-1){var r,s;let o=i.contentDOM.getBoundingClientRect(),O=o.top+i.viewState.paddingTop,a,{docHeight:l}=i.viewState,{x:h,y:c}=e,f=c-O;if(f<0)return 0;if(f>l)return i.state.doc.length;for(let w=i.viewState.heightOracle.textHeight/2,P=!1;a=i.elementAtHeight(f),a.type!=Qe.Text;)for(;f=n>0?a.bottom+w:a.top-w,!(f>=0&&f<=l);){if(P)return t?null:0;P=!0,n=-n}c=O+f;let d=a.from;if(di.viewport.to)return i.viewport.to==i.state.doc.length?i.state.doc.length:t?null:Ja(i,o,a,h,c);let p=i.dom.ownerDocument,m=i.root.elementFromPoint?i.root:p,$=m.elementFromPoint(h,c);$&&!i.contentDOM.contains($)&&($=null),$||(h=Math.max(o.left+1,Math.min(o.right-1,h)),$=m.elementFromPoint(h,c),$&&!i.contentDOM.contains($)&&($=null));let g,Q=-1;if($&&((r=i.docView.nearest($))===null||r===void 0?void 0:r.isEditable)!=!1){if(p.caretPositionFromPoint){let w=p.caretPositionFromPoint(h,c);w&&({offsetNode:g,offset:Q}=w)}else if(p.caretRangeFromPoint){let w=p.caretRangeFromPoint(h,c);w&&({startContainer:g,startOffset:Q}=w,(!i.contentDOM.contains(g)||z.safari&&yp(g,Q,h)||z.chrome&&Pp(g,Q,h))&&(g=void 0))}}if(!g||!i.docView.dom.contains(g)){let w=he.find(i.docView,d);if(!w)return f>a.top+a.height/2?a.to:a.from;({node:g,offset:Q}=js(w.dom,h,c))}let x=i.docView.nearest(g);if(!x)return null;if(x.isWidget&&((s=x.dom)===null||s===void 0?void 0:s.nodeType)==1){let w=x.dom.getBoundingClientRect();return e.yi.defaultLineHeight*1.5){let O=i.viewState.heightOracle.textHeight,a=Math.floor((r-t.top-(i.defaultLineHeight-O)*.5)/O);s+=a*i.viewState.heightOracle.lineLength}let o=i.state.sliceDoc(t.from,t.to);return t.from+En(o,s,i.state.tabSize)}function yp(i,e,t){let n;if(i.nodeType!=3||e!=(n=i.nodeValue.length))return!1;for(let r=i.nextSibling;r;r=r.nextSibling)if(r.nodeType!=1||r.nodeName!="BR")return!1;return Nt(i,n-1,n).getBoundingClientRect().left>t}function Pp(i,e,t){if(e!=0)return!1;for(let r=i;;){let s=r.parentNode;if(!s||s.nodeType!=1||s.firstChild!=r)return!1;if(s.classList.contains("cm-line"))break;r=s}let n=i.nodeType==1?i.getBoundingClientRect():Nt(i,0,Math.max(i.nodeValue.length,1)).getBoundingClientRect();return t-n.left>5}function As(i,e){let t=i.lineBlockAt(e);if(Array.isArray(t.type)){for(let n of t.type)if(n.to>e||n.to==e&&(n.to==t.to||n.type==Qe.Text))return n}return t}function bp(i,e,t,n){let r=As(i,e.head),s=!n||r.type!=Qe.Text||!(i.lineWrapping||r.widgetLineBreaks)?null:i.coordsAtPos(e.assoc<0&&e.head>r.from?e.head-1:e.head);if(s){let o=i.dom.getBoundingClientRect(),O=i.textDirectionAt(r.from),a=i.posAtCoords({x:t==(O==K.LTR)?o.right-1:o.left+1,y:(s.top+s.bottom)/2});if(a!=null)return S.cursor(a,t?-1:1)}return S.cursor(t?r.to:r.from,t?-1:1)}function el(i,e,t,n){let r=i.state.doc.lineAt(e.head),s=i.bidiSpans(r),o=i.textDirectionAt(r.from);for(let O=e,a=null;;){let l=ap(r,s,o,O,t),h=Al;if(!l){if(r.number==(t?i.state.doc.lines:1))return O;h=` +`,r=i.state.doc.line(r.number+(t?1:-1)),s=i.bidiSpans(r),l=i.visualLineSide(r,!t)}if(a){if(!a(h))return O}else{if(!n)return l;a=n(h)}O=l}}function xp(i,e,t){let n=i.state.charCategorizer(e),r=n(t);return s=>{let o=n(s);return r==Ae.Space&&(r=o),r==o}}function wp(i,e,t,n){let r=e.head,s=t?1:-1;if(r==(t?i.state.doc.length:0))return S.cursor(r,e.assoc);let o=e.goalColumn,O,a=i.contentDOM.getBoundingClientRect(),l=i.coordsAtPos(r,e.assoc||-1),h=i.documentTop;if(l)o==null&&(o=l.left-a.left),O=s<0?l.top:l.bottom;else{let d=i.viewState.lineBlockAt(r);o==null&&(o=Math.min(a.right-a.left,i.defaultCharacterWidth*(r-d.from))),O=(s<0?d.top:d.bottom)+h}let c=a.left+o,f=n??i.viewState.heightOracle.textHeight>>1;for(let d=0;;d+=10){let p=O+(f+d)*s,m=th(i,{x:c,y:p},!1,s);if(pa.bottom||(s<0?mr)){let $=i.docView.coordsForChar(m),g=!$||p<$.top?-1:1;return S.cursor(m,g,void 0,o)}}}function Jn(i,e,t){for(;;){let n=0;for(let r of i)r.between(e-1,e+1,(s,o,O)=>{if(e>s&&er(i)),t.from,e.head>t.from?-1:1);return n==t.from?t:S.cursor(n,nnull),z.gecko&&_p(e.contentDOM.ownerDocument)}handleEvent(e){!Wp(this.view,e)||this.ignoreDuringComposition(e)||e.type=="keydown"&&this.keydown(e)||this.runHandlers(e.type,e)}runHandlers(e,t){let n=this.handlers[e];if(n){for(let r of n.observers)r(this.view,t);for(let r of n.handlers){if(t.defaultPrevented)break;if(r(this.view,t)){t.preventDefault();break}}}}ensureHandlers(e){let t=kp(e),n=this.handlers,r=this.view.contentDOM;for(let s in t)if(s!="scroll"){let o=!t[s].handlers.length,O=n[s];O&&o!=!O.handlers.length&&(r.removeEventListener(s,this.handleEvent),O=null),O||r.addEventListener(s,this.handleEvent,{passive:o})}for(let s in n)s!="scroll"&&!t[s]&&r.removeEventListener(s,this.handleEvent);this.handlers=t}keydown(e){if(this.lastKeyCode=e.keyCode,this.lastKeyTime=Date.now(),e.keyCode==9&&Date.now()n.keyCode==e.keyCode))&&!e.ctrlKey||Tp.indexOf(e.key)>-1&&e.ctrlKey&&!e.shiftKey)?(this.pendingIOSKey=t||e,setTimeout(()=>this.flushIOSKey(),250),!0):(e.keyCode!=229&&this.view.observer.forceFlush(),!1)}flushIOSKey(){let e=this.pendingIOSKey;return e?(this.pendingIOSKey=void 0,Qi(this.view.contentDOM,e.key,e.keyCode)):!1}ignoreDuringComposition(e){return/^key/.test(e.type)?this.composing>0?!0:z.safari&&!z.ios&&this.compositionPendingKey&&Date.now()-this.compositionEndedAt<100?(this.compositionPendingKey=!1,!0):!1:!1}startMouseSelection(e){this.mouseSelection&&this.mouseSelection.destroy(),this.mouseSelection=e}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 tl(i,e){return(t,n)=>{try{return e.call(i,n,t)}catch(r){ot(t.state,r)}}}function kp(i){let e=Object.create(null);function t(n){return e[n]||(e[n]={observers:[],handlers:[]})}for(let n of i){let r=n.spec;if(r&&r.domEventHandlers)for(let s in r.domEventHandlers){let o=r.domEventHandlers[s];o&&t(s).handlers.push(tl(n.value,o))}if(r&&r.domEventObservers)for(let s in r.domEventObservers){let o=r.domEventObservers[s];o&&t(s).observers.push(tl(n.value,o))}}for(let n in Be)t(n).handlers.push(Be[n]);for(let n in Ne)t(n).observers.push(Ne[n]);return e}var ih=[{key:"Backspace",keyCode:8,inputType:"deleteContentBackward"},{key:"Enter",keyCode:13,inputType:"insertParagraph"},{key:"Enter",keyCode:13,inputType:"insertLineBreak"},{key:"Delete",keyCode:46,inputType:"deleteContentForward"}],Tp="dthko",nh=[16,17,18,20,91,92,224,225],Ln=6;function Dn(i){return Math.max(0,i)*.7+8}function vp(i,e){return Math.max(Math.abs(i.clientX-e.clientX),Math.abs(i.clientY-e.clientY))}var Us=class{constructor(e,t,n,r){this.view=e,this.startEvent=t,this.style=n,this.mustSelect=r,this.scrollSpeed={x:0,y:0},this.scrolling=-1,this.lastEvent=t,this.scrollParent=Dd(e.contentDOM),this.atoms=e.state.facet(uo).map(o=>o(e));let s=e.contentDOM.ownerDocument;s.addEventListener("mousemove",this.move=this.move.bind(this)),s.addEventListener("mouseup",this.up=this.up.bind(this)),this.extend=t.shiftKey,this.multiple=e.state.facet(L.allowMultipleSelections)&&zp(e,t),this.dragging=Xp(e,t)&&Oh(t)==1?null:!1}start(e){this.dragging===!1&&this.select(e)}move(e){var t;if(e.buttons==0)return this.destroy();if(this.dragging||this.dragging==null&&vp(this.startEvent,e)<10)return;this.select(this.lastEvent=e);let n=0,r=0,s=((t=this.scrollParent)===null||t===void 0?void 0:t.getBoundingClientRect())||{left:0,top:0,right:this.view.win.innerWidth,bottom:this.view.win.innerHeight},o=Kl(this.view);e.clientX-o.left<=s.left+Ln?n=-Dn(s.left-e.clientX):e.clientX+o.right>=s.right-Ln&&(n=Dn(e.clientX-s.right)),e.clientY-o.top<=s.top+Ln?r=-Dn(s.top-e.clientY):e.clientY+o.bottom>=s.bottom-Ln&&(r=Dn(e.clientY-s.bottom)),this.setScrollSpeed(n,r)}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(){this.scrollParent?(this.scrollParent.scrollLeft+=this.scrollSpeed.x,this.scrollParent.scrollTop+=this.scrollSpeed.y):this.view.win.scrollBy(this.scrollSpeed.x,this.scrollSpeed.y),this.dragging===!1&&this.select(this.lastEvent)}skipAtoms(e){let t=null;for(let n=0;nthis.select(this.lastEvent),20)}};function zp(i,e){let t=i.state.facet(_l);return t.length?t[0](e):z.mac?e.metaKey:e.ctrlKey}function Zp(i,e){let t=i.state.facet(Ul);return t.length?t[0](e):z.mac?!e.altKey:!e.ctrlKey}function Xp(i,e){let{main:t}=i.state.selection;if(t.empty)return!1;let n=rr(i.root);if(!n||n.rangeCount==0)return!0;let r=n.getRangeAt(0).getClientRects();for(let s=0;s=e.clientX&&o.top<=e.clientY&&o.bottom>=e.clientY)return!0}return!1}function Wp(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=J.get(t))&&n.ignoreEvent(e))return!1;return!0}var Be=Object.create(null),Ne=Object.create(null),rh=z.ie&&z.ie_version<15||z.ios&&z.webkit_version<604;function Rp(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(),sh(i,t.value)},50)}function sh(i,e){let{state:t}=i,n,r=1,s=t.toText(e),o=s.lines==t.selection.ranges.length;if(Es!=null&&t.selection.ranges.every(a=>a.empty)&&Es==s.toString()){let a=-1;n=t.changeByRange(l=>{let h=t.doc.lineAt(l.from);if(h.from==a)return{range:l};a=h.from;let c=t.toText((o?s.line(r++).text:e)+t.lineBreak);return{changes:{from:h.from,insert:c},range:S.cursor(l.from+c.length)}})}else o?n=t.changeByRange(a=>{let l=s.line(r++);return{changes:{from:a.from,to:a.to,insert:l.text},range:S.cursor(a.from+l.length)}}):n=t.replaceSelection(s);i.dispatch(n,{userEvent:"input.paste",scrollIntoView:!0})}Ne.scroll=i=>{i.inputState.lastScrollTop=i.scrollDOM.scrollTop,i.inputState.lastScrollLeft=i.scrollDOM.scrollLeft};Be.keydown=(i,e)=>(i.inputState.setSelectionOrigin("select"),e.keyCode==27&&(i.inputState.lastEscPress=Date.now()),!1);Ne.touchstart=(i,e)=>{i.inputState.lastTouchTime=Date.now(),i.inputState.setSelectionOrigin("select.pointer")};Ne.touchmove=i=>{i.inputState.setSelectionOrigin("select.pointer")};Be.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(El))if(t=n(i,e),t)break;if(!t&&e.button==0&&(t=Yp(i,e)),t){let n=!i.hasFocus;i.inputState.startMouseSelection(new Us(i,e,t,n)),n&&i.observer.ignore(()=>xl(i.contentDOM));let r=i.inputState.mouseSelection;if(r)return r.start(e),r.dragging===!1}return!1};function il(i,e,t,n){if(n==1)return S.cursor(e,t);if(n==2)return gp(i.state,e,t);{let r=he.find(i.docView,e),s=i.state.doc.lineAt(r?r.posAtEnd:e),o=r?r.posAtStart:s.from,O=r?r.posAtEnd:s.to;return Oi>=e.top&&i<=e.bottom,nl=(i,e,t)=>oh(e,t)&&i>=t.left&&i<=t.right;function Vp(i,e,t,n){let r=he.find(i.docView,e);if(!r)return 1;let s=e-r.posAtStart;if(s==0)return 1;if(s==r.length)return-1;let o=r.coordsAt(s,-1);if(o&&nl(t,n,o))return-1;let O=r.coordsAt(s,1);return O&&nl(t,n,O)?1:o&&oh(n,o)?-1:1}function rl(i,e){let t=i.posAtCoords({x:e.clientX,y:e.clientY},!1);return{pos:t,bias:Vp(i,t,e.clientX,e.clientY)}}var qp=z.ie&&z.ie_version<=11,sl=null,ol=0,Ol=0;function Oh(i){if(!qp)return i.detail;let e=sl,t=Ol;return sl=i,Ol=Date.now(),ol=!e||t>Date.now()-400&&Math.abs(e.clientX-i.clientX)<2&&Math.abs(e.clientY-i.clientY)<2?(ol+1)%3:1}function Yp(i,e){let t=rl(i,e),n=Oh(e),r=i.state.selection;return{update(s){s.docChanged&&(t.pos=s.changes.mapPos(t.pos),r=r.map(s.changes))},get(s,o,O){let a=rl(i,s),l,h=il(i,a.pos,a.bias,n);if(t.pos!=a.pos&&!o){let c=il(i,t.pos,t.bias,n),f=Math.min(c.from,h.from),d=Math.max(c.to,h.to);h=f1&&(l=Cp(r,a.pos))?l:O?r.addRange(h):S.create([h])}}}function Cp(i,e){for(let t=0;t=e)return S.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}Be.dragstart=(i,e)=>{let{selection:{main:t}}=i.state;if(e.target.draggable){let r=i.docView.nearest(e.target);if(r&&r.isWidget){let s=r.posAtStart,o=s+r.length;(s>=t.to||o<=t.from)&&(t=S.range(s,o))}}let{inputState:n}=i;return n.mouseSelection&&(n.mouseSelection.dragging=!0),n.draggedContent=t,e.dataTransfer&&(e.dataTransfer.setData("Text",i.state.sliceDoc(t.from,t.to)),e.dataTransfer.effectAllowed="copyMove"),!1};Be.dragend=i=>(i.inputState.draggedContent=null,!1);function al(i,e,t,n){if(!t)return;let r=i.posAtCoords({x:e.clientX,y:e.clientY},!1),{draggedContent:s}=i.inputState,o=n&&s&&Zp(i,e)?{from:s.from,to:s.to}:null,O={from:r,insert:t},a=i.state.changes(o?[o,O]:O);i.focus(),i.dispatch({changes:a,selection:{anchor:a.mapPos(r,-1),head:a.mapPos(r,1)},userEvent:o?"move.drop":"input.drop"}),i.inputState.draggedContent=null}Be.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),r=0,s=()=>{++r==t.length&&al(i,e,n.filter(o=>o!=null).join(i.state.lineBreak),!1)};for(let o=0;o{/[\x00-\x08\x0e-\x1f]{2}/.test(O.result)||(n[o]=O.result),s()},O.readAsText(t[o])}return!0}else{let n=e.dataTransfer.getData("Text");if(n)return al(i,e,n,!0),!0}return!1};Be.paste=(i,e)=>{if(i.state.readOnly)return!0;i.observer.flush();let t=rh?null:e.clipboardData;return t?(sh(i,t.getData("text/plain")||t.getData("text/uri-text")),!0):(Rp(i),!1)};function jp(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 Ap(i){let e=[],t=[],n=!1;for(let r of i.selection.ranges)r.empty||(e.push(i.sliceDoc(r.from,r.to)),t.push(r));if(!e.length){let r=-1;for(let{from:s}of i.selection.ranges){let o=i.doc.lineAt(s);o.number>r&&(e.push(o.text),t.push({from:o.from,to:Math.min(i.doc.length,o.to+1)})),r=o.number}n=!0}return{text:e.join(i.lineBreak),ranges:t,linewise:n}}var Es=null;Be.copy=Be.cut=(i,e)=>{let{text:t,ranges:n,linewise:r}=Ap(i.state);if(!t&&!r)return!1;Es=r?t:null,e.type=="cut"&&!i.state.readOnly&&i.dispatch({changes:n,scrollIntoView:!0,userEvent:"delete.cut"});let s=rh?null:e.clipboardData;return s?(s.clearData(),s.setData("text/plain",t),!0):(jp(i,t),!1)};var ah=we.define();function lh(i,e){let t=[];for(let n of i.facet(Il)){let r=n(i,e);r&&t.push(r)}return t?i.update({effects:t,annotations:ah.of(!0)}):null}function hh(i){setTimeout(()=>{let e=i.hasFocus;if(e!=i.inputState.notifiedFocused){let t=lh(i.state,e);t?i.dispatch(t):i.update([])}},10)}Ne.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),hh(i)};Ne.blur=i=>{i.observer.clearSelectionRange(),hh(i)};Ne.compositionstart=Ne.compositionupdate=i=>{i.inputState.compositionFirstChange==null&&(i.inputState.compositionFirstChange=!0),i.inputState.composing<0&&(i.inputState.composing=0)};Ne.compositionend=i=>{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,z.chrome&&z.android?i.observer.flushSoon():i.inputState.compositionPendingChange?Promise.resolve().then(()=>i.observer.flush()):setTimeout(()=>{i.inputState.composing<0&&i.docView.hasComposition&&i.update([])},50)};Ne.contextmenu=i=>{i.inputState.lastContextMenu=Date.now()};Be.beforeinput=(i,e)=>{var t;let n;if(z.chrome&&z.android&&(n=ih.find(r=>r.inputType==e.inputType))&&(i.observer.delayAndroidKey(n.key,n.keyCode),n.key=="Backspace"||n.key=="Delete")){let r=((t=window.visualViewport)===null||t===void 0?void 0:t.height)||0;setTimeout(()=>{var s;(((s=window.visualViewport)===null||s===void 0?void 0:s.height)||0)>r+10&&i.hasFocus&&(i.contentDOM.blur(),i.focus())},100)}return!1};var ll=new Set;function _p(i){ll.has(i)||(ll.add(i),i.addEventListener("copy",()=>{}),i.addEventListener("cut",()=>{}))}var hl=["pre-wrap","normal","pre-line","break-spaces"],Gs=class{constructor(e){this.lineWrapping=e,this.doc=j.empty,this.heightSamples={},this.lineHeight=14,this.charWidth=7,this.textHeight=14,this.lineLength=30,this.heightChanged=!1}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)/(this.lineLength-5))))*this.lineHeight:this.lineHeight}setDoc(e){return this.doc=e,this}mustRefreshForWrapping(e){return hl.indexOf(e)>-1!=this.lineWrapping}mustRefreshForHeights(e){let t=!1;for(let n=0;n-1,a=Math.round(t)!=Math.round(this.lineHeight)||this.lineWrapping!=O;if(this.lineWrapping=O,this.lineHeight=t,this.charWidth=n,this.textHeight=r,this.lineLength=s,a){this.heightSamples={};for(let l=0;l0}set outdated(e){this.flags=(e?2:0)|this.flags&-3}setHeight(e,t){this.height!=t&&(Math.abs(this.height-t)>er&&(e.heightChanged=!0),this.height=t)}replace(e,t,n){return i.of(n)}decomposeLeft(e,t){t.push(this)}decomposeRight(e,t){t.push(this)}applyChanges(e,t,n,r){let s=this,o=n.doc;for(let O=r.length-1;O>=0;O--){let{fromA:a,toA:l,fromB:h,toB:c}=r[O],f=s.lineAt(a,F.ByPosNoHeight,n.setDoc(t),0,0),d=f.to>=l?f:s.lineAt(l,F.ByPosNoHeight,n,0,0);for(c+=d.to-l,l=d.to;O>0&&f.from<=r[O-1].toA;)a=r[O-1].fromA,h=r[O-1].fromB,O--,as*2){let O=e[t-1];O.break?e.splice(--t,1,O.left,null,O.right):e.splice(--t,1,O.left,O.right),n+=1+O.break,r-=O.size}else if(s>r*2){let O=e[n];O.break?e.splice(n,1,O.left,null,O.right):e.splice(n,1,O.left,O.right),n+=2+O.break,s-=O.size}else break;else if(r=s&&o(this.blockAt(0,n,r,s))}updateHeight(e,t=0,n=!1,r){return r&&r.from<=t&&r.more&&this.setHeight(e,r.heights[r.index++]),this.outdated=!1,this}toString(){return`block(${this.length})`}},Ue=class i extends cr{constructor(e,t){super(e,t,null),this.collapsed=0,this.widgetHeight=0,this.breaks=0}blockAt(e,t,n,r){return new rt(r,this.length,n,this.height,this.breaks)}replace(e,t,n){let r=n[0];return n.length==1&&(r instanceof i||r instanceof kt&&r.flags&4)&&Math.abs(this.length-r.length)<10?(r instanceof kt?r=new i(r.length,this.height):r.height=this.height,this.outdated||(r.outdated=!1),r):We.of(n)}updateHeight(e,t=0,n=!1,r){return r&&r.from<=t&&r.more?this.setHeight(e,r.heights[r.index++]):(n||this.outdated)&&this.setHeight(e,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:""})`}},kt=class i extends We{constructor(e){super(e,0)}heightMetrics(e,t){let n=e.doc.lineAt(t).number,r=e.doc.lineAt(t+this.length).number,s=r-n+1,o,O=0;if(e.lineWrapping){let a=Math.min(this.height,e.lineHeight*s);o=a/s,this.length>s+1&&(O=(this.height-a)/(this.length-s-1))}else o=this.height/s;return{firstLine:n,lastLine:r,perLine:o,perChar:O}}blockAt(e,t,n,r){let{firstLine:s,lastLine:o,perLine:O,perChar:a}=this.heightMetrics(t,r);if(t.lineWrapping){let l=r+Math.round(Math.max(0,Math.min(1,(e-n)/this.height))*this.length),h=t.doc.lineAt(l),c=O+h.length*a,f=Math.max(n,e-c/2);return new rt(h.from,h.length,f,c,0)}else{let l=Math.max(0,Math.min(o-s,Math.floor((e-n)/O))),{from:h,length:c}=t.doc.line(s+l);return new rt(h,c,n+O*l,O,0)}}lineAt(e,t,n,r,s){if(t==F.ByHeight)return this.blockAt(e,n,r,s);if(t==F.ByPosNoHeight){let{from:d,to:p}=n.doc.lineAt(e);return new rt(d,p-d,0,0,0)}let{firstLine:o,perLine:O,perChar:a}=this.heightMetrics(n,s),l=n.doc.lineAt(e),h=O+l.length*a,c=l.number-o,f=r+O*c+a*(l.from-s-c);return new rt(l.from,l.length,Math.max(r,Math.min(f,r+this.height-h)),h,0)}forEachLine(e,t,n,r,s,o){e=Math.max(e,s),t=Math.min(t,s+this.length);let{firstLine:O,perLine:a,perChar:l}=this.heightMetrics(n,s);for(let h=e,c=r;h<=t;){let f=n.doc.lineAt(h);if(h==e){let p=f.number-O;c+=a*p+l*(e-s-p)}let d=a+l*f.length;o(new rt(f.from,f.length,c,d,0)),c+=d,h=f.to+1}}replace(e,t,n){let r=this.length-t;if(r>0){let s=n[n.length-1];s instanceof i?n[n.length-1]=new i(s.length+r):n.push(null,new i(r-1))}if(e>0){let s=n[0];s instanceof i?n[0]=new i(e+s.length):n.unshift(new i(e-1),null)}return We.of(n)}decomposeLeft(e,t){t.push(new i(e-1),null)}decomposeRight(e,t){t.push(null,new i(this.length-e-1))}updateHeight(e,t=0,n=!1,r){let s=t+this.length;if(r&&r.from<=t+this.length&&r.more){let o=[],O=Math.max(t,r.from),a=-1;for(r.from>t&&o.push(new i(r.from-t-1).updateHeight(e,t));O<=s&&r.more;){let h=e.doc.lineAt(O).length;o.length&&o.push(null);let c=r.heights[r.index++];a==-1?a=c:Math.abs(c-a)>=er&&(a=-2);let f=new Ue(h,c);f.outdated=!1,o.push(f),O+=h+1}O<=s&&o.push(null,new i(s-O).updateHeight(e,O));let l=We.of(o);return(a<0||Math.abs(l.height-this.height)>=er||Math.abs(a-this.heightMetrics(e,t).perLine)>=er)&&(e.heightChanged=!0),l}else(n||this.outdated)&&(this.setHeight(e,e.heightForGap(t,t+this.length)),this.outdated=!1);return this}toString(){return`gap(${this.length})`}},Is=class extends We{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,r){let s=n+this.left.height;return eO))return l;let h=t==F.ByPosNoHeight?F.ByPosNoHeight:F.ByPos;return a?l.join(this.right.lineAt(O,h,n,o,O)):this.left.lineAt(O,h,n,r,s).join(l)}forEachLine(e,t,n,r,s,o){let O=r+this.left.height,a=s+this.left.length+this.break;if(this.break)e=a&&this.right.forEachLine(e,t,n,O,a,o);else{let l=this.lineAt(a,F.ByPos,n,r,s);e=e&&l.from<=t&&o(l),t>l.to&&this.right.forEachLine(l.to+1,t,n,O,a,o)}}replace(e,t,n){let r=this.left.length+this.break;if(tthis.left.length)return this.balanced(this.left,this.right.replace(e-r,t-r,n));let s=[];e>0&&this.decomposeLeft(e,s);let o=s.length;for(let O of n)s.push(O);if(e>0&&cl(s,o-1),t=n&&t.push(null)),e>n&&this.right.decomposeLeft(e-n,t)}decomposeRight(e,t){let n=this.left.length,r=n+this.break;if(e>=r)return this.right.decomposeRight(e-r,t);e2*t.size||t.size>2*e.size?We.of(this.break?[e,null,t]:[e,t]):(this.left=e,this.right=t,this.height=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,r){let{left:s,right:o}=this,O=t+s.length+this.break,a=null;return r&&r.from<=t+s.length&&r.more?a=s=s.updateHeight(e,t,n,r):s.updateHeight(e,t,n),r&&r.from<=O+o.length&&r.more?a=o=o.updateHeight(e,O,n,r):o.updateHeight(e,O,n),a?this.balanced(s,o):(this.height=this.left.height+this.right.height,this.outdated=!1,this)}toString(){return this.left+(this.break?" ":"-")+this.right}};function cl(i,e){let t,n;i[e]==null&&(t=i[e-1])instanceof kt&&(n=i[e+1])instanceof kt&&i.splice(e-1,3,new kt(t.length+1+n.length))}var Up=5,Ls=class i{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),r=this.nodes[this.nodes.length-1];r instanceof Ue?r.length+=n-this.pos:(n>this.pos||!this.isCovered)&&this.nodes.push(new Ue(n-this.pos,-1)),this.writtenTo=n,t>n&&(this.nodes.push(null),this.writtenTo++,this.lineStart=-1)}this.pos=t}point(e,t,n){if(e=Up)&&this.addLineDeco(r,s,o)}else t>e&&this.span(e,t);this.lineEnd>-1&&this.lineEnd-1)return;let{from:e,to:t}=this.oracle.doc.lineAt(this.pos);this.lineStart=e,this.lineEnd=t,this.writtenToe&&this.nodes.push(new Ue(this.pos-e,-1)),this.writtenTo=this.pos}blankContent(e,t){let n=new kt(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 Ue)return e;let t=new Ue(0,-1);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 r=this.ensureLine();r.length+=n,r.collapsed+=n,r.widgetHeight=Math.max(r.widgetHeight,e),r.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 Ue)&&!this.isCovered?this.nodes.push(new Ue(0,-1)):(this.writtenToh.clientHeight||h.scrollWidth>h.clientWidth)&&c.overflow!="visible"){let f=h.getBoundingClientRect();s=Math.max(s,f.left),o=Math.min(o,f.right),O=Math.max(O,f.top),a=l==i.parentNode?f.bottom:Math.min(a,f.bottom)}l=c.position=="absolute"||c.position=="fixed"?h.offsetParent:h.parentNode}else if(l.nodeType==11)l=l.host;else break;return{left:s-t.left,right:Math.max(s,o)-t.left,top:O-(t.top+e),bottom:Math.max(O,a)-(t.top+e)}}function Mp(i,e){let t=i.getBoundingClientRect();return{left:0,right:t.right-t.left,top:e,bottom:t.bottom-(t.top+e)}}var Fi=class{constructor(e,t,n){this.from=e,this.to=t,this.size=n}static same(e,t){if(e.length!=t.length)return!1;for(let n=0;ntypeof n!="function"&&n.class=="cm-lineWrapping");this.heightOracle=new Gs(t),this.stateDeco=e.facet(sn).filter(n=>typeof n!="function"),this.heightMap=We.empty().applyChanges(this.stateDeco,j.empty,this.heightOracle.setDoc(e.doc),[new Ot(0,0,0,e.doc.length)]),this.viewport=this.getViewport(0,null),this.updateViewportLines(),this.updateForViewport(),this.lineGaps=this.ensureLineGaps([]),this.lineGapDeco=I.set(this.lineGaps.map(n=>n.draw(this,!1))),this.computeVisibleRanges()}updateForViewport(){let e=[this.viewport],{main:t}=this.state.selection;for(let n=0;n<=1;n++){let r=n?t.head:t.anchor;if(!e.some(({from:s,to:o})=>r>=s&&r<=o)){let{from:s,to:o}=this.lineBlockAt(r);e.push(new $i(s,o))}}this.viewports=e.sort((n,r)=>n.from-r.from),this.scaler=this.heightMap.height<=7e6?fl:new Ns(this.heightOracle,this.heightMap,this.viewports)}updateViewportLines(){this.viewportLines=[],this.heightMap.forEachLine(this.viewport.from,this.viewport.to,this.heightOracle.setDoc(this.state.doc),0,0,e=>{this.viewportLines.push(this.scaler.scale==1?e:Mi(e,this.scaler))})}update(e,t=null){this.state=e.state;let n=this.stateDeco;this.stateDeco=this.state.facet(sn).filter(h=>typeof h!="function");let r=e.changedRanges,s=Ot.extendWithRanges(r,Ep(n,this.stateDeco,e?e.changes:me.empty(this.state.doc.length))),o=this.heightMap.height,O=this.scrolledToBottom?null:this.scrollAnchorAt(this.scrollTop);this.heightMap=this.heightMap.applyChanges(this.stateDeco,e.startState.doc,this.heightOracle.setDoc(this.state.doc),s),this.heightMap.height!=o&&(e.flags|=2),O?(this.scrollAnchorPos=e.changes.mapPos(O.from,-1),this.scrollAnchorHeight=O.top):(this.scrollAnchorPos=-1,this.scrollAnchorHeight=this.heightMap.height);let a=s.length?this.mapViewport(this.viewport,e.changes):this.viewport;(t&&(t.range.heada.to)||!this.viewportIsAppropriate(a))&&(a=this.getViewport(0,t));let l=!e.changes.empty||e.flags&2||a.from!=this.viewport.from||a.to!=this.viewport.to;this.viewport=a,this.updateForViewport(),l&&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(),t&&(this.scrollTarget=t),!this.mustEnforceCursorAssoc&&e.selectionSet&&e.view.lineWrapping&&e.state.selection.main.empty&&e.state.selection.main.assoc&&!e.state.facet(Dl)&&(this.mustEnforceCursorAssoc=!0)}measure(e){let t=e.contentDOM,n=window.getComputedStyle(t),r=this.heightOracle,s=n.whiteSpace;this.defaultTextDirection=n.direction=="rtl"?K.RTL:K.LTR;let o=this.heightOracle.mustRefreshForWrapping(s),O=t.getBoundingClientRect(),a=o||this.mustMeasureContent||this.contentDOMHeight!=O.height;this.contentDOMHeight=O.height,this.mustMeasureContent=!1;let l=0,h=0;if(O.width&&O.height){let{scaleX:w,scaleY:P}=bl(t,O);(this.scaleX!=w||this.scaleY!=P)&&(this.scaleX=w,this.scaleY=P,l|=8,o=a=!0)}let c=(parseInt(n.paddingTop)||0)*this.scaleY,f=(parseInt(n.paddingBottom)||0)*this.scaleY;(this.paddingTop!=c||this.paddingBottom!=f)&&(this.paddingTop=c,this.paddingBottom=f,l|=10),this.editorWidth!=e.scrollDOM.clientWidth&&(r.lineWrapping&&(a=!0),this.editorWidth=e.scrollDOM.clientWidth,l|=8);let d=e.scrollDOM.scrollTop*this.scaleY;this.scrollTop!=d&&(this.scrollAnchorHeight=-1,this.scrollTop=d),this.scrolledToBottom=kl(e.scrollDOM);let p=(this.printing?Mp:Gp)(t,this.paddingTop),m=p.top-this.pixelViewport.top,$=p.bottom-this.pixelViewport.bottom;this.pixelViewport=p;let g=this.pixelViewport.bottom>this.pixelViewport.top&&this.pixelViewport.right>this.pixelViewport.left;if(g!=this.inView&&(this.inView=g,g&&(a=!0)),!this.inView&&!this.scrollTarget)return 0;let Q=O.width;if((this.contentDOMWidth!=Q||this.editorHeight!=e.scrollDOM.clientHeight)&&(this.contentDOMWidth=O.width,this.editorHeight=e.scrollDOM.clientHeight,l|=8),a){let w=e.docView.measureVisibleLineHeights(this.viewport);if(r.mustRefreshForHeights(w)&&(o=!0),o||r.lineWrapping&&Math.abs(Q-this.contentDOMWidth)>r.charWidth){let{lineHeight:P,charWidth:v,textHeight:k}=e.docView.measureTextSize();o=P>0&&r.refresh(s,P,v,k,Q/v,w),o&&(e.docView.minWidth=0,l|=8)}m>0&&$>0?h=Math.max(m,$):m<0&&$<0&&(h=Math.min(m,$)),r.heightChanged=!1;for(let P of this.viewports){let v=P.from==this.viewport.from?w:e.docView.measureVisibleLineHeights(P);this.heightMap=(o?We.empty().applyChanges(this.stateDeco,j.empty,this.heightOracle,[new Ot(0,0,0,e.state.doc.length)]):this.heightMap).updateHeight(r,0,o,new Ms(P.from,v))}r.heightChanged&&(l|=2)}let x=!this.viewportIsAppropriate(this.viewport,h)||this.scrollTarget&&(this.scrollTarget.range.headthis.viewport.to);return x&&(this.viewport=this.getViewport(h,this.scrollTarget)),this.updateForViewport(),(l&2||x)&&this.updateViewportLines(),(this.lineGaps.length||this.viewport.to-this.viewport.from>4e3)&&this.updateLineGaps(this.ensureLineGaps(o?[]:this.lineGaps,e)),l|=this.computeVisibleRanges(),this.mustEnforceCursorAssoc&&(this.mustEnforceCursorAssoc=!1,e.docView.enforceCursorAssoc()),l}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)),r=this.heightMap,s=this.heightOracle,{visibleTop:o,visibleBottom:O}=this,a=new $i(r.lineAt(o-n*1e3,F.ByHeight,s,0,0).from,r.lineAt(O+(1-n)*1e3,F.ByHeight,s,0,0).to);if(t){let{head:l}=t.range;if(la.to){let h=Math.min(this.editorHeight,this.pixelViewport.bottom-this.pixelViewport.top),c=r.lineAt(l,F.ByPos,s,0,0),f;t.y=="center"?f=(c.top+c.bottom)/2-h/2:t.y=="start"||t.y=="nearest"&&l=O+Math.max(10,Math.min(n,250)))&&r>o-2*1e3&&s>1,o=r<<1;if(this.defaultTextDirection!=K.LTR&&!n)return[];let O=[],a=(l,h,c,f)=>{if(h-ll&&$$.from>=c.from&&$.to<=c.to&&Math.abs($.from-l)$.fromg));if(!m){if(h$.from<=h&&$.to>=h)){let $=t.moveToLineBoundary(S.cursor(h),!1,!0).head;$>l&&(h=$)}m=new Fi(l,h,this.gapSize(c,l,h,f))}O.push(m)};for(let l of this.viewportLines){if(l.lengthl.from&&a(l.from,f,l,h),dt.draw(this,this.heightOracle.lineWrapping))))}computeVisibleRanges(){let e=this.stateDeco;this.lineGaps.length&&(e=e.concat(this.lineGapDeco));let t=[];H.spans(e,this.viewport.from,this.viewport.to,{span(r,s){t.push({from:r,to:s})},point(){}},20);let n=t.length!=this.visibleRanges.length||this.visibleRanges.some((r,s)=>r.from!=t[s].from||r.to!=t[s].to);return this.visibleRanges=t,n?4:0}lineBlockAt(e){return e>=this.viewport.from&&e<=this.viewport.to&&this.viewportLines.find(t=>t.from<=e&&t.to>=e)||Mi(this.heightMap.lineAt(e,F.ByPos,this.heightOracle,0,0),this.scaler)}lineBlockAtHeight(e){return Mi(this.heightMap.lineAt(this.scaler.fromDOM(e),F.ByHeight,this.heightOracle,0,0),this.scaler)}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 Mi(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}},$i=class{constructor(e,t){this.from=e,this.to=t}};function Ip(i,e,t){let n=[],r=i,s=0;return H.spans(t,i,e,{span(){},point(o,O){o>r&&(n.push({from:r,to:o}),s+=o-r),r=O}},20),r=1)return e[e.length-1].to;let n=Math.floor(i*t);for(let r=0;;r++){let{from:s,to:o}=e[r],O=o-s;if(n<=O)return s+n;n-=O}}function Nn(i,e){let t=0;for(let{from:n,to:r}of i.ranges){if(e<=r){t+=e-n;break}t+=r-n}return t/i.total}function Lp(i,e){for(let t of i)if(e(t))return t}var fl={toDOM(i){return i},fromDOM(i){return i},scale:1},Ns=class{constructor(e,t,n){let r=0,s=0,o=0;this.viewports=n.map(({from:O,to:a})=>{let l=t.lineAt(O,F.ByPos,e,0,0).top,h=t.lineAt(a,F.ByPos,e,0,0).bottom;return r+=h-l,{from:O,to:a,top:l,bottom:h,domTop:0,domBottom:0}}),this.scale=(7e6-r)/(t.height-r);for(let O of this.viewports)O.domTop=o+(O.top-s)*this.scale,o=O.domBottom=O.domTop+(O.bottom-O.top),s=O.bottom}toDOM(e){for(let t=0,n=0,r=0;;t++){let s=tMi(r,e)):i._content)}var Hn=W.define({combine:i=>i.join(" ")}),Hs=W.define({combine:i=>i.indexOf(!0)>-1}),Fs=_e.newName(),ch=_e.newName(),fh=_e.newName(),uh={"&light":"."+ch,"&dark":"."+fh};function Ks(i,e,t){return new _e(e,{finish(n){return/&/.test(n)?n.replace(/&\w*/,r=>{if(r=="&")return i;if(!t||!t[r])throw new RangeError(`Unsupported selector: ${r}`);return t[r]}):i+" "+n}})}var Dp=Ks("."+Fs,{"&":{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},".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":{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:"#444"},".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",insetInlineStart:0,zIndex:200},"&light .cm-gutters":{backgroundColor:"#f5f5f5",color:"#6c6c6c",borderRight:"1px solid #ddd"},"&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},"&light .cm-panels":{backgroundColor:"#f5f5f5",color:"black"},"&light .cm-panels-top":{borderBottom:"1px solid #ddd"},"&light .cm-panels-bottom":{borderTop:"1px solid #ddd"},"&dark .cm-panels":{backgroundColor:"#333338",color:"white"},".cm-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"},".cm-highlightSpace:before":{content:"attr(data-display)",position:"absolute",pointerEvents:"none",color:"#888"},".cm-highlightTab":{backgroundImage:`url('data:image/svg+xml,')`,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"}},uh),Ii="\uFFFF",Js=class{constructor(e,t){this.points=e,this.text="",this.lineSeparator=t.facet(L.lineSeparator)}append(e){this.text+=e}lineBreak(){this.text+=Ii}readRange(e,t){if(!e)return this;let n=e.parentNode;for(let r=e;;){this.findPointBefore(n,r);let s=this.text.length;this.readNode(r);let o=r.nextSibling;if(o==t)break;let O=J.get(r),a=J.get(o);(O&&a?O.breakAfter:(O?O.breakAfter:ul(r))||ul(o)&&(r.nodeName!="BR"||r.cmIgnore)&&this.text.length>s)&&this.lineBreak(),r=o}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,r=this.lineSeparator?null:/\r\n?|\n/g;;){let s=-1,o=1,O;if(this.lineSeparator?(s=t.indexOf(this.lineSeparator,n),o=this.lineSeparator.length):(O=r.exec(t))&&(s=O.index,o=O[0].length),this.append(t.slice(n,s<0?t.length:s)),s<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=s+o}}readNode(e){if(e.cmIgnore)return;let t=J.get(e),n=t&&t.overrideDOMText;if(n!=null){this.findPointInside(e,n.length);for(let r=n.iter();!r.next().done;)r.lineBreak?this.lineBreak():this.append(r.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+(Bp(e,n.node,n.offset)?t:0))}};function Bp(i,e,t){for(;;){if(!e||t-1)this.newSel=null;else if(t>-1&&(this.bounds=e.docView.domBoundsAround(t,n,0))){let O=s||o?[]:Fp(e),a=new Js(O,e.state);a.readRange(this.bounds.startDOM,this.bounds.endDOM),this.text=a.text,this.newSel=Kp(O,this.bounds.from)}else{let O=e.observer.selectionRange,a=s&&s.node==O.focusNode&&s.offset==O.focusOffset||!ks(e.contentDOM,O.focusNode)?e.state.selection.main.head:e.docView.posFromDOM(O.focusNode,O.focusOffset),l=o&&o.node==O.anchorNode&&o.offset==O.anchorOffset||!ks(e.contentDOM,O.anchorNode)?e.state.selection.main.anchor:e.docView.posFromDOM(O.anchorNode,O.anchorOffset),h=e.viewport;if((z.ios||z.chrome)&&e.state.selection.main.empty&&a!=l&&(h.from>0||h.toDate.now()-100?i.inputState.lastKeyCode:-1;if(e.bounds){let{from:o,to:O}=e.bounds,a=r.from,l=null;(s===8||z.android&&e.text.length=r.from&&t.to<=r.to&&(t.from!=r.from||t.to!=r.to)&&r.to-r.from-(t.to-t.from)<=4?t={from:r.from,to:r.to,insert:i.state.doc.slice(r.from,t.from).append(t.insert).append(i.state.doc.slice(t.to,r.to))}:(z.mac||z.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=S.single(n.main.anchor-1,n.main.head-1)),t={from:r.from,to:r.to,insert:j.of([" "])}):z.chrome&&t&&t.from==t.to&&t.from==r.head&&t.insert.toString()==` + `&&i.lineWrapping&&(n&&(n=S.single(n.main.anchor-1,n.main.head-1)),t={from:r.from,to:r.to,insert:j.of([" "])}),t){if(z.ios&&i.inputState.flushIOSKey()||z.android&&(t.from==r.from&&t.to==r.to&&t.insert.length==1&&t.insert.lines==2&&Qi(i.contentDOM,"Enter",13)||(t.from==r.from-1&&t.to==r.to&&t.insert.length==0||s==8&&t.insert.lengthr.head)&&Qi(i.contentDOM,"Backspace",8)||t.from==r.from&&t.to==r.to+1&&t.insert.length==0&&Qi(i.contentDOM,"Delete",46)))return!0;let o=t.insert.toString();i.inputState.composing>=0&&i.inputState.composing++;let O,a=()=>O||(O=Np(i,t,n));return i.state.facet(Ml).some(l=>l(i,t.from,t.to,o,a))||i.dispatch(a()),!0}else if(n&&!n.main.eq(r)){let o=!1,O="select";return i.inputState.lastSelectionTime>Date.now()-50&&(i.inputState.lastSelectionOrigin=="select"&&(o=!0),O=i.inputState.lastSelectionOrigin),i.dispatch({selection:n,scrollIntoView:o,userEvent:O}),!0}else return!1}function Np(i,e,t){let n,r=i.state,s=r.selection.main;if(e.from>=s.from&&e.to<=s.to&&e.to-e.from>=(s.to-s.from)/3&&(!t||t.main.empty&&t.main.from==e.from+e.insert.length)&&i.inputState.composing<0){let O=s.frome.to?r.sliceDoc(e.to,s.to):"";n=r.replaceSelection(i.state.toText(O+e.insert.sliceString(0,void 0,i.state.lineBreak)+a))}else{let O=r.changes(e),a=t&&t.main.to<=O.newLength?t.main:void 0;if(r.selection.ranges.length>1&&i.inputState.composing>=0&&e.to<=s.to&&e.to>=s.to-10){let l=i.state.sliceDoc(e.from,e.to),h,c=t&&Jl(i,t.main.head);if(c){let p=e.insert.length-(e.to-e.from);h={from:c.from,to:c.to-p}}else h=i.state.doc.lineAt(s.head);let f=s.to-e.to,d=s.to-s.from;n=r.changeByRange(p=>{if(p.from==s.from&&p.to==s.to)return{changes:O,range:a||p.map(O)};let m=p.to-f,$=m-l.length;if(p.to-p.from!=d||i.state.sliceDoc($,m)!=l||p.to>=h.from&&p.from<=h.to)return{range:p};let g=r.changes({from:$,to:m,insert:e.insert}),Q=p.to-s.to;return{changes:g,range:a?S.range(Math.max(0,a.anchor+Q),Math.max(0,a.head+Q)):p.map(g)}})}else n={changes:O,selection:a&&r.selection.replaceRange(a)}}let o="input.type";return(i.composing||i.inputState.compositionPendingChange&&i.inputState.compositionEndedAt>Date.now()-50)&&(i.inputState.compositionPendingChange=!1,o+=".compose",i.inputState.compositionFirstChange&&(o+=".start",i.inputState.compositionFirstChange=!1)),r.update(n,{userEvent:o,scrollIntoView:!0})}function Hp(i,e,t,n){let r=Math.min(i.length,e.length),s=0;for(;s0&&O>0&&i.charCodeAt(o-1)==e.charCodeAt(O-1);)o--,O--;if(n=="end"){let a=Math.max(0,s-Math.min(o,O));t-=o+a-s}if(o=o?s-t:0;s-=a,O=s+(O-o),o=s}else if(O=O?s-t:0;s-=a,o=s+(o-O),O=s}return{from:s,toA:o,toB:O}}function Fp(i){let e=[];if(i.root.activeElement!=i.contentDOM)return e;let{anchorNode:t,anchorOffset:n,focusNode:r,focusOffset:s}=i.observer.selectionRange;return t&&(e.push(new ur(t,n)),(r!=t||s!=n)&&e.push(new ur(r,s))),e}function Kp(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?S.single(t+e,n+e):null}var Jp={childList:!0,characterData:!0,subtree:!0,attributes:!0,characterDataOldValue:!0},xs=z.ie&&z.ie_version<=11,to=class{constructor(e){this.view=e,this.active=!1,this.selectionRange=new Ts,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.parentCheck=-1,this.dom=e.contentDOM,this.observer=new MutationObserver(t=>{for(let n of t)this.queue.push(n);(z.ie&&z.ie_version<=11||z.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()}),xs&&(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),typeof ResizeObserver=="function"&&(this.resizeScroll=new ResizeObserver(()=>{var t;((t=this.view.docView)===null||t===void 0?void 0:t.lastUpdate){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.onScrollChanged(e)}onResize(){this.resizeTimeout<0&&(this.resizeTimeout=setTimeout(()=>{this.resizeTimeout=-1,this.view.requestMeasure()},50))}onPrint(){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,r=this.selectionRange;if(n.state.facet(gr)?n.root.activeElement!=this.dom:!Kn(n.dom,r))return;let s=r.anchorNode&&n.docView.nearest(r.anchorNode);if(s&&s.ignoreEvent(e)){t||(this.selectionChanged=!1);return}(z.ie&&z.ie_version<=11||z.android&&z.chrome)&&!n.state.selection.main.empty&&r.focusNode&&Di(r.focusNode,r.focusOffset,r.anchorNode,r.anchorOffset)?this.flushSoon():this.flush(!1)}readSelectionRange(){let{view:e}=this,t=z.safari&&e.root.nodeType==11&&Md(this.dom.ownerDocument)==this.dom&&em(this.view)||rr(e.root);if(!t||this.selectionRange.eq(t))return!1;let n=Kn(this.dom,t);return n&&!this.selectionChanged&&e.inputState.lastFocusTime>Date.now()-200&&e.inputState.lastTouchTime{let s=this.delayedAndroidKey;s&&(this.clearDelayedAndroidKey(),this.view.inputState.lastKeyCode=s.keyCode,this.view.inputState.lastKeyTime=Date.now(),!this.flush()&&s.force&&Qi(this.dom,s.key,s.keyCode))};this.flushingAndroidKey=this.view.win.requestAnimationFrame(r)}(!this.delayedAndroidKey||e=="Enter")&&(this.delayedAndroidKey={key:e,keyCode:t,force:this.lastChange{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,r=!1;for(let s of e){let o=this.readMutation(s);o&&(o.typeOver&&(r=!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:r}}readChange(){let{from:e,to:t,typeOver:n}=this.processRecords(),r=this.selectionChanged&&Kn(this.dom,this.selectionRange);if(e<0&&!r)return null;e>-1&&(this.lastChange=Date.now()),this.view.inputState.lastFocusTime=0,this.selectionChanged=!1;let s=new eo(this.view,e,t,n);return this.view.docView.domChanged={newSel:s.newSel?s.newSel.main:null},s}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,r=dh(this.view,t);return this.view.state==n&&this.view.update([]),r}readMutation(e){let t=this.view.docView.nearest(e.target);if(!t||t.ignoreMutation(e))return null;if(t.markDirty(e.type=="attributes"),e.type=="attributes"&&(t.flags|=4),e.type=="childList"){let n=dl(t,e.previousSibling||e.target.previousSibling,-1),r=dl(t,e.nextSibling||e.target.nextSibling,1);return{from:n?t.posAfter(n):t.posAtStart,to:r?t.posBefore(r):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),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),e.removeEventListener("beforeprint",this.onPrint),e.document.removeEventListener("selectionchange",this.onSelectionChange)}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 r of this.scrollTargets)r.removeEventListener("scroll",this.onScroll);this.removeWindowListeners(this.win),clearTimeout(this.parentCheck),clearTimeout(this.resizeTimeout),this.win.cancelAnimationFrame(this.delayedFlush),this.win.cancelAnimationFrame(this.flushingAndroidKey)}};function dl(i,e,t){for(;e;){let n=J.get(e);if(n&&n.parent==i)return n;let r=e.parentNode;e=r!=i.dom?r:t>0?e.nextSibling:e.previousSibling}return null}function em(i){let e=null;function t(a){a.preventDefault(),a.stopImmediatePropagation(),e=a.getTargetRanges()[0]}if(i.contentDOM.addEventListener("beforeinput",t,!0),i.dom.ownerDocument.execCommand("indent"),i.contentDOM.removeEventListener("beforeinput",t,!0),!e)return null;let n=e.startContainer,r=e.startOffset,s=e.endContainer,o=e.endOffset,O=i.docView.domAtPos(i.state.selection.main.anchor);return Di(O.node,O.offset,s,o)&&([n,r,s,o]=[s,o,n,r]),{anchorNode:n,anchorOffset:r,focusNode:s,focusOffset:o}}var T=class i{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.composing>0}get compositionStarted(){return this.inputState.composing>=0}get root(){return this._root}get win(){return this.dom.ownerDocument.defaultView||window}constructor(e={}){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:t}=e;this.dispatchTransactions=e.dispatchTransactions||t&&(n=>n.forEach(r=>t(r,this)))||(n=>this.update(n)),this.dispatch=this.dispatch.bind(this),this._root=e.root||Bd(e.parent)||document,this.viewState=new fr(e.state||L.create(e)),e.scrollTo&&e.scrollTo.is(In)&&(this.viewState.scrollTarget=e.scrollTo.value.clip(this.viewState.state)),this.plugins=this.state.facet(Ei).map(n=>new Hi(n));for(let n of this.plugins)n.update(this);this.observer=new to(this),this.inputState=new _s(this),this.inputState.ensureHandlers(this.plugins),this.docView=new lr(this),this.mountStyles(),this.updateAttrs(),this.updateState=0,this.requestMeasure()}dispatch(...e){let t=e.length==1&&e[0]instanceof ne?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,r,s=this.state;for(let f of e){if(f.startState!=s)throw new RangeError("Trying to update state with a transaction that doesn't start from the previous state.");s=f.state}if(this.destroyed){this.viewState.state=s;return}let o=this.hasFocus,O=0,a=null;e.some(f=>f.annotation(ah))?(this.inputState.notifiedFocused=o,O=1):o!=this.inputState.notifiedFocused&&(this.inputState.notifiedFocused=o,a=lh(s,o),a||(O=1));let l=this.observer.delayedAndroidKey,h=null;if(l?(this.observer.clearDelayedAndroidKey(),h=this.observer.readChange(),(h&&!this.state.doc.eq(s.doc)||!this.state.selection.eq(s.selection))&&(h=null)):this.observer.clear(),s.facet(L.phrases)!=this.state.facet(L.phrases))return this.setState(s);r=ar.create(this,s,e),r.flags|=O;let c=this.viewState.scrollTarget;try{this.updateState=2;for(let f of e){if(c&&(c=c.map(f.changes)),f.scrollIntoView){let{main:d}=f.state.selection;c=new Ni(d.empty?d:S.cursor(d.head,d.head>d.anchor?-1:1))}for(let d of f.effects)d.is(In)&&(c=d.value.clip(this.state))}this.viewState.update(r,c),this.bidiCache=dr.update(this.bidiCache,r.changes),r.empty||(this.updatePlugins(r),this.inputState.update(r)),t=this.docView.update(r),this.state.facet(Gi)!=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(r.startState.facet(Hn)!=r.state.facet(Hn)&&(this.viewState.mustMeasureContent=!0),(t||n||c||this.viewState.mustEnforceCursorAssoc||this.viewState.mustMeasureContent)&&this.requestMeasure(),!r.empty)for(let f of this.state.facet(Cs))try{f(r)}catch(d){ot(this.state,d,"update listener")}(a||h)&&Promise.resolve().then(()=>{a&&this.state==a.startState&&this.dispatch(a),h&&!dh(this,h)&&l.force&&Qi(this.contentDOM,l.key,l.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 fr(e),this.plugins=e.facet(Ei).map(n=>new Hi(n)),this.pluginMap.clear();for(let n of this.plugins)n.update(this);this.docView.destroy(),this.docView=new lr(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(Ei),n=e.state.facet(Ei);if(t!=n){let r=[];for(let s of n){let o=t.indexOf(s);if(o<0)r.push(new Hi(s));else{let O=this.plugins[o];O.mustUpdate=e,r.push(O)}}for(let s of this.plugins)s.mustUpdate!=e&&s.destroy(this);this.plugins=r,this.pluginMap.clear()}else for(let r of this.plugins)r.mustUpdate=e;for(let r=0;r-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.scrollDOM,r=n.scrollTop*this.scaleY,{scrollAnchorPos:s,scrollAnchorHeight:o}=this.viewState;Math.abs(r-this.viewState.scrollTop)>1&&(o=-1),this.viewState.scrollAnchorHeight=-1;try{for(let O=0;;O++){if(o<0)if(kl(n))s=-1,o=this.viewState.heightMap.height;else{let d=this.viewState.scrollAnchorAt(r);s=d.from,o=d.top}this.updateState=1;let a=this.viewState.measure(this);if(!a&&!this.measureRequests.length&&this.viewState.scrollTarget==null)break;if(O>5){console.warn(this.measureRequests.length?"Measure loop restarted more than 5 times":"Viewport failed to stabilize");break}let l=[];a&4||([this.measureRequests,l]=[l,this.measureRequests]);let h=l.map(d=>{try{return d.read(this)}catch(p){return ot(this.state,p),pl}}),c=ar.create(this,this.state,[]),f=!1;c.flags|=a,t?t.flags|=a:t=c,this.updateState=2,c.empty||(this.updatePlugins(c),this.inputState.update(c),this.updateAttrs(),f=this.docView.update(c));for(let d=0;d1||p<-1){r=r+p,n.scrollTop=r/this.scaleY,o=-1;continue}}break}}}finally{this.updateState=0,this.measureScheduled=-1}if(t&&!t.empty)for(let O of this.state.facet(Cs))O(t)}get themeClasses(){return Fs+" "+(this.state.facet(Hs)?fh:ch)+" "+this.state.facet(Hn)}updateAttrs(){let e=ml(this,Bl,{class:"cm-editor"+(this.hasFocus?" cm-focused ":" ")+this.themeClasses}),t={spellcheck:"false",autocorrect:"off",autocapitalize:"off",translate:"no",contenteditable:this.state.facet(gr)?"true":"false",class:"cm-content",style:`${z.tabSize}: ${this.state.tabSize}`,role:"textbox","aria-multiline":"true"};this.state.readOnly&&(t["aria-readonly"]="true"),ml(this,fo,t);let n=this.observer.ignore(()=>{let r=Ws(this.contentDOM,this.contentAttrs,t),s=Ws(this.dom,this.editorAttrs,e);return r||s});return this.editorAttrs=e,this.contentAttrs=t,n}showAnnouncements(e){let t=!0;for(let n of e)for(let r of n.effects)if(r.is(i.announce)){t&&(this.announceDOM.textContent=""),t=!1;let s=this.announceDOM.appendChild(document.createElement("div"));s.textContent=r.value}}mountStyles(){this.styleModules=this.state.facet(Gi);let e=this.state.facet(i.cspNonce);_e.mount(this.root,this.styleModules.concat(Dp).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;tn.spec==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 bs(this,e,el(this,e,t,n))}moveByGroup(e,t){return bs(this,e,el(this,e,t,n=>xp(this,e.head,n)))}visualLineSide(e,t){let n=this.bidiSpans(e),r=this.textDirectionAt(e.from),s=n[t?n.length-1:0];return S.cursor(s.side(t,r)+e.from,s.forward(!t,r)?1:-1)}moveToLineBoundary(e,t,n=!0){return bp(this,e,t,n)}moveVertically(e,t,n){return bs(this,e,wp(this,e,t,n))}domAtPos(e){return this.docView.domAtPos(e)}posAtDOM(e,t=0){return this.docView.posFromDOM(e,t)}posAtCoords(e,t=!0){return this.readMeasured(),th(this,e,t)}coordsAtPos(e,t=1){this.readMeasured();let n=this.docView.coordsAt(e,t);if(!n||n.left==n.right)return n;let r=this.state.doc.lineAt(e),s=this.bidiSpans(r),o=s[st.find(s,e-r.from,-1,t)];return ao(n,o.dir==K.LTR==t>0)}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(Ll)||ethis.viewport.to?this.textDirection:(this.readMeasured(),this.docView.textDirectionAt(e))}get lineWrapping(){return this.viewState.heightOracle.lineWrapping}bidiSpans(e){if(e.length>tm)return jl(e.length);let t=this.textDirectionAt(e.from),n;for(let s of this.bidiCache)if(s.from==e.from&&s.dir==t&&(s.fresh||Cl(s.isolates,n=Na(this,e))))return s.order;n||(n=Na(this,e));let r=Op(e.text,t,n);return this.bidiCache.push(new dr(e.from,e.to,t,n,!0,r)),r}get hasFocus(){var e;return(this.dom.ownerDocument.hasFocus()||z.safari&&((e=this.inputState)===null||e===void 0?void 0:e.lastContextMenu)>Date.now()-3e4)&&this.root.activeElement==this.contentDOM}focus(){this.observer.ignore(()=>{xl(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(){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={}){return In.of(new Ni(typeof e=="number"?S.cursor(e):e,t.y,t.x,t.yMargin,t.xMargin))}scrollSnapshot(){let{scrollTop:e,scrollLeft:t}=this.scrollDOM,n=this.viewState.scrollAnchorAt(e);return In.of(new Ni(S.cursor(n.from),"start","start",n.top-e,t,!0))}static domEventHandlers(e){return Ee.define(()=>({}),{eventHandlers:e})}static domEventObservers(e){return Ee.define(()=>({}),{eventObservers:e})}static theme(e,t){let n=_e.newName(),r=[Hn.of(n),Gi.of(Ks(`.${n}`,e))];return t&&t.dark&&r.push(Hs.of(!0)),r}static baseTheme(e){return it.lowest(Gi.of(Ks("."+Fs,e,uh)))}static findFromDOM(e){var t;let n=e.querySelector(".cm-content"),r=n&&J.get(n)||J.get(e);return((t=r?.rootView)===null||t===void 0?void 0:t.view)||null}};T.styleModule=Gi;T.inputHandler=Ml;T.focusChangeEffect=Il;T.perLineTextDirection=Ll;T.exceptionSink=Gl;T.updateListener=Cs;T.editable=gr;T.mouseSelectionStyle=El;T.dragMovesSelection=Ul;T.clickAddsSelectionRange=_l;T.decorations=sn;T.outerDecorations=Nl;T.atomicRanges=uo;T.bidiIsolatedRanges=Hl;T.scrollMargins=Fl;T.darkTheme=Hs;T.cspNonce=W.define({combine:i=>i.length?i[0]:""});T.contentAttributes=fo;T.editorAttributes=Bl;T.lineWrapping=T.contentAttributes.of({class:"cm-lineWrapping"});T.announce=B.define();var tm=4096,pl={},dr=class i{constructor(e,t,n,r,s,o){this.from=e,this.to=t,this.dir=n,this.isolates=r,this.fresh=s,this.order=o}static update(e,t){if(t.empty&&!e.some(s=>s.fresh))return e;let n=[],r=e.length?e[e.length-1].dir:K.LTR;for(let s=Math.max(0,e.length-10);s=0;r--){let s=n[r],o=typeof s=="function"?s(i):s;o&&Xs(o,t)}return t}var im=z.mac?"mac":z.windows?"win":z.linux?"linux":"key";function nm(i,e){let t=i.split(/-(?!$)/),n=t[t.length-1];n=="Space"&&(n=" ");let r,s,o,O;for(let a=0;an.concat(r),[]))),t}var wt=null,om=4e3;function Om(i,e=im){let t=Object.create(null),n=Object.create(null),r=(o,O)=>{let a=n[o];if(a==null)n[o]=O;else if(a!=O)throw new Error("Key binding "+o+" is used both as a regular binding and as a multi-stroke prefix")},s=(o,O,a,l,h)=>{var c,f;let d=t[o]||(t[o]=Object.create(null)),p=O.split(/ (?!$)/).map(g=>nm(g,e));for(let g=1;g{let w=wt={view:x,prefix:Q,scope:o};return setTimeout(()=>{wt==w&&(wt=null)},om),!0}]})}let m=p.join(" ");r(m,!1);let $=d[m]||(d[m]={preventDefault:!1,stopPropagation:!1,run:((f=(c=d._any)===null||c===void 0?void 0:c.run)===null||f===void 0?void 0:f.slice())||[]});a&&$.run.push(a),l&&($.preventDefault=!0),h&&($.stopPropagation=!0)};for(let o of i){let O=o.scope?o.scope.split(" "):["editor"];if(o.any)for(let l of O){let h=t[l]||(t[l]=Object.create(null));h._any||(h._any={preventDefault:!1,stopPropagation:!1,run:[]});for(let c in h)h[c].run.push(o.any)}let a=o[e]||o.key;if(a)for(let l of O)s(l,a,o.run,o.preventDefault,o.stopPropagation),o.shift&&s(l,"Shift-"+a,o.shift,o.preventDefault,o.stopPropagation)}return t}function am(i,e,t,n){let r=Ua(e),s=ci(r,0),o=ji(s)==r.length&&r!=" ",O="",a=!1,l=!1,h=!1;wt&&wt.view==t&&wt.scope==n&&(O=wt.prefix+" ",nh.indexOf(e.keyCode)<0&&(l=!0,wt=null));let c=new Set,f=$=>{if($){for(let g of $.run)if(!c.has(g)&&(c.add(g),g(t,e)))return $.stopPropagation&&(h=!0),!0;$.preventDefault&&($.stopPropagation&&(h=!0),l=!0)}return!1},d=i[n],p,m;return d&&(f(d[O+Fn(r,e,!o)])?a=!0:o&&(e.altKey||e.metaKey||e.ctrlKey)&&!(z.windows&&e.ctrlKey&&e.altKey)&&(p=pt[e.keyCode])&&p!=r?(f(d[O+Fn(p,e,!0)])||e.shiftKey&&(m=pi[e.keyCode])!=r&&m!=p&&f(d[O+Fn(m,e,!1)]))&&(a=!0):o&&e.shiftKey&&f(d[O+Fn(r,e,!0)])&&(a=!0),!a&&f(d._any)&&(a=!0)),l&&(a=!0),a&&h&&e.stopPropagation(),a}var on=class i{constructor(e,t,n,r,s){this.className=e,this.left=t,this.top=n,this.width=r,this.height=s}draw(){let e=document.createElement("div");return e.className=this.className,this.adjust(e),e}update(e,t){return t.className!=this.className?!1:(this.adjust(e),!0)}adjust(e){e.style.left=this.left+"px",e.style.top=this.top+"px",this.width!=null&&(e.style.width=this.width+"px"),e.style.height=this.height+"px"}eq(e){return this.left==e.left&&this.top==e.top&&this.width==e.width&&this.height==e.height&&this.className==e.className}static forRange(e,t,n){if(n.empty){let r=e.coordsAtPos(n.head,n.assoc||1);if(!r)return[];let s=ph(e);return[new i(t,r.left-s.left,r.top-s.top,null,r.bottom-r.top)]}else return lm(e,t,n)}};function ph(i){let e=i.scrollDOM.getBoundingClientRect();return{left:(i.textDirection==K.LTR?e.left:e.right-i.scrollDOM.clientWidth*i.scaleX)-i.scrollDOM.scrollLeft*i.scaleX,top:e.top-i.scrollDOM.scrollTop*i.scaleY}}function gl(i,e,t){let n=S.cursor(e);return{from:Math.max(t.from,i.moveToLineBoundary(n,!1,!0).from),to:Math.min(t.to,i.moveToLineBoundary(n,!0,!0).from),type:Qe.Text}}function lm(i,e,t){if(t.to<=i.viewport.from||t.from>=i.viewport.to)return[];let n=Math.max(t.from,i.viewport.from),r=Math.min(t.to,i.viewport.to),s=i.textDirection==K.LTR,o=i.contentDOM,O=o.getBoundingClientRect(),a=ph(i),l=o.querySelector(".cm-line"),h=l&&window.getComputedStyle(l),c=O.left+(h?parseInt(h.paddingLeft)+Math.min(0,parseInt(h.textIndent)):0),f=O.right-(h?parseInt(h.paddingRight):0),d=As(i,n),p=As(i,r),m=d.type==Qe.Text?d:null,$=p.type==Qe.Text?p:null;if(m&&(i.lineWrapping||d.widgetLineBreaks)&&(m=gl(i,n,m)),$&&(i.lineWrapping||p.widgetLineBreaks)&&($=gl(i,r,$)),m&&$&&m.from==$.from)return Q(x(t.from,t.to,m));{let P=m?x(t.from,null,m):w(d,!1),v=$?x(null,t.to,$):w(p,!0),k=[];return(m||d).to<($||p).from-(m&&$?1:0)||d.widgetLineBreaks>1&&P.bottom+i.defaultLineHeight/2V&&E.from=be)break;se>te&&Y(Math.max(Ce,te),P==null&&Ce<=V,Math.min(se,be),v==null&&se>=D,ze.dir)}if(te=xe.to+1,te>=be)break}return A.length==0&&Y(V,P==null,D,v==null,i.textDirection),{top:U,bottom:C,horizontal:A}}function w(P,v){let k=O.top+(v?P.top:P.bottom);return{top:k,bottom:k,horizontal:[]}}}function hm(i,e){return i.constructor==e.constructor&&i.eq(e)}var io=class{constructor(e,t){this.view=e,this.layer=t,this.drawn=[],this.scaleX=1,this.scaleY=1,this.measureReq={read:this.measure.bind(this),write:this.draw.bind(this)},this.dom=e.scrollDOM.appendChild(document.createElement("div")),this.dom.classList.add("cm-layer"),t.above&&this.dom.classList.add("cm-layer-above"),t.class&&this.dom.classList.add(t.class),this.scale(),this.dom.setAttribute("aria-hidden","true"),this.setOrder(e.state),e.requestMeasure(this.measureReq),t.mount&&t.mount(this.dom,e)}update(e){e.startState.facet(tr)!=e.state.facet(tr)&&this.setOrder(e.state),(this.layer.update(e,this.dom)||e.geometryChanged)&&(this.scale(),e.view.requestMeasure(this.measureReq))}setOrder(e){let t=0,n=e.facet(tr);for(;t!hm(t,this.drawn[n]))){let t=this.dom.firstChild,n=0;for(let r of e)r.update&&t&&r.constructor&&this.drawn[n].constructor&&r.update(t,this.drawn[n])?(t=t.nextSibling,n++):this.dom.insertBefore(r.draw(),t);for(;t;){let r=t.nextSibling;t.remove(),t=r}this.drawn=e}}destroy(){this.layer.destroy&&this.layer.destroy(this.dom,this.view),this.dom.remove()}},tr=W.define();function mh(i){return[Ee.define(e=>new io(e,i)),tr.of(i)]}var $h=!z.ios,On=W.define({combine(i){return xt(i,{cursorBlinkRate:1200,drawRangeCursor:!0},{cursorBlinkRate:(e,t)=>Math.min(e,t),drawRangeCursor:(e,t)=>e||t})}});function gh(i={}){return[On.of(i),cm,fm,um,Dl.of(!0)]}function Qh(i){return i.startState.facet(On)!=i.state.facet(On)}var cm=mh({above:!0,markers(i){let{state:e}=i,t=e.facet(On),n=[];for(let r of e.selection.ranges){let s=r==e.selection.main;if(r.empty?!s||$h:t.drawRangeCursor){let o=s?"cm-cursor cm-cursor-primary":"cm-cursor cm-cursor-secondary",O=r.empty?r:S.cursor(r.head,r.head>r.anchor?-1:1);for(let a of on.forRange(i,o,O))n.push(a)}}return n},update(i,e){i.transactions.some(n=>n.selection)&&(e.style.animationName=e.style.animationName=="cm-blink"?"cm-blink2":"cm-blink");let t=Qh(i);return t&&Ql(i.state,e),i.docChanged||i.selectionSet||t},mount(i,e){Ql(e.state,i)},class:"cm-cursorLayer"});function Ql(i,e){e.style.animationDuration=i.facet(On).cursorBlinkRate+"ms"}var fm=mh({above:!1,markers(i){return i.state.selection.ranges.map(e=>e.empty?[]:on.forRange(i,"cm-selectionBackground",e)).reduce((e,t)=>e.concat(t))},update(i,e){return i.docChanged||i.selectionSet||i.viewportChanged||Qh(i)},class:"cm-selectionLayer"}),no={".cm-line":{"& ::selection":{backgroundColor:"transparent !important"},"&::selection":{backgroundColor:"transparent !important"}}};$h&&(no[".cm-line"].caretColor="transparent !important",no[".cm-content"]={caretColor:"transparent !important"});var um=it.highest(T.theme(no)),Sh=B.define({map(i,e){return i==null?null:e.mapPos(i)}}),Li=$e.define({create(){return null},update(i,e){return i!=null&&(i=e.changes.mapPos(i)),e.effects.reduce((t,n)=>n.is(Sh)?n.value:t,i)}}),dm=Ee.fromClass(class{constructor(i){this.view=i,this.cursor=null,this.measureReq={read:this.readPos.bind(this),write:this.drawCursor.bind(this)}}update(i){var e;let t=i.state.field(Li);t==null?this.cursor!=null&&((e=this.cursor)===null||e===void 0||e.remove(),this.cursor=null):(this.cursor||(this.cursor=this.view.scrollDOM.appendChild(document.createElement("div")),this.cursor.className="cm-dropCursor"),(i.startState.field(Li)!=t||i.docChanged||i.geometryChanged)&&this.view.requestMeasure(this.measureReq))}readPos(){let{view:i}=this,e=i.state.field(Li),t=e!=null&&i.coordsAtPos(e);if(!t)return null;let n=i.scrollDOM.getBoundingClientRect();return{left:t.left-n.left+i.scrollDOM.scrollLeft*i.scaleX,top:t.top-n.top+i.scrollDOM.scrollTop*i.scaleY,height:t.bottom-t.top}}drawCursor(i){if(this.cursor){let{scaleX:e,scaleY:t}=this.view;i?(this.cursor.style.left=i.left/e+"px",this.cursor.style.top=i.top/t+"px",this.cursor.style.height=i.height/t+"px"):this.cursor.style.left="-100000px"}}destroy(){this.cursor&&this.cursor.remove()}setDropPos(i){this.view.state.field(Li)!=i&&this.view.dispatch({effects:Sh.of(i)})}},{eventObservers:{dragover(i){this.setDropPos(this.view.posAtCoords({x:i.clientX,y:i.clientY}))},dragleave(i){(i.target==this.view.contentDOM||!this.view.contentDOM.contains(i.relatedTarget))&&this.setDropPos(null)},dragend(){this.setDropPos(null)},drop(){this.setDropPos(null)}}});function yh(){return[Li,dm]}var lP=/x/.unicode!=null?"gu":"g";function po(){return mm}var pm=I.line({class:"cm-activeLine"}),mm=Ee.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 r=i.lineBlockAt(n.head);r.from>e&&(t.push(pm.range(r.from)),e=r.from)}return I.set(t)}},{decorations:i=>i.decorations});var ro=2e3;function $m(i,e,t){let n=Math.min(e.line,t.line),r=Math.max(e.line,t.line),s=[];if(e.off>ro||t.off>ro||e.col<0||t.col<0){let o=Math.min(e.off,t.off),O=Math.max(e.off,t.off);for(let a=n;a<=r;a++){let l=i.doc.line(a);l.length<=O&&s.push(S.range(l.from+o,l.to+O))}}else{let o=Math.min(e.col,t.col),O=Math.max(e.col,t.col);for(let a=n;a<=r;a++){let l=i.doc.line(a),h=En(l.text,o,i.tabSize,!0);if(h<0)s.push(S.cursor(l.to));else{let c=En(l.text,O,i.tabSize);s.push(S.range(l.from+h,l.from+c))}}}return s}function gm(i,e){let t=i.coordsAtPos(i.viewport.from);return t?Math.round(Math.abs((t.left-e)/i.defaultCharacterWidth)):-1}function Sl(i,e){let t=i.posAtCoords({x:e.clientX,y:e.clientY},!1),n=i.state.doc.lineAt(t),r=t-n.from,s=r>ro?-1:r==n.length?gm(i,e.clientX):ke(n.text,i.state.tabSize,t-n.from);return{line:n.number,col:s,off:r}}function Qm(i,e){let t=Sl(i,e),n=i.state.selection;return t?{update(r){if(r.docChanged){let s=r.changes.mapPos(r.startState.doc.line(t.line).from),o=r.state.doc.lineAt(s);t={line:o.number,col:t.col,off:Math.min(t.off,o.length)},n=n.map(r.changes)}},get(r,s,o){let O=Sl(i,r);if(!O)return n;let a=$m(i.state,t,O);return a.length?o?S.create(a.concat(n.ranges)):S.create(a):n}}:null}function Ph(i){let e=i?.eventFilter||(t=>t.altKey&&t.button==0);return T.mouseSelectionStyle.of((t,n)=>e(n)?Qm(t,n):null)}var hP=T.baseTheme({".cm-tooltip":{zIndex:100,boxSizing:"border-box"},"&light .cm-tooltip":{border:"1px solid #bbb",backgroundColor:"#f5f5f5"},"&light .cm-tooltip-section:not(:first-child)":{borderTop:"1px solid #bbb"},"&dark .cm-tooltip":{backgroundColor:"#333338",color:"white"},".cm-tooltip-arrow":{height:"7px",width:`${7*2}px`,position:"absolute",zIndex:-1,overflow:"hidden","&:before, &:after":{content:"''",position:"absolute",width:0,height:0,borderLeft:"7px solid transparent",borderRight:"7px solid transparent"},".cm-tooltip-above &":{bottom:"-7px","&:before":{borderTop:"7px solid #bbb"},"&:after":{borderTop:"7px solid #f5f5f5",bottom:"1px"}},".cm-tooltip-below &":{top:"-7px","&:before":{borderBottom:"7px solid #bbb"},"&:after":{borderBottom:"7px solid #f5f5f5",top:"1px"}}},"&dark .cm-tooltip .cm-tooltip-arrow":{"&:before":{borderTopColor:"#333338",borderBottomColor:"#333338"},"&:after":{borderTopColor:"transparent",borderBottomColor:"transparent"}}});var He=class extends De{compare(e){return this==e||this.constructor==e.constructor&&this.eq(e)}eq(e){return!1}destroy(e){}};He.prototype.elementClass="";He.prototype.toDOM=void 0;He.prototype.mapMode=ae.TrackBefore;He.prototype.startSide=He.prototype.endSide=-1;He.prototype.point=!0;var ir=W.define();var nr=W.define();var so=W.define({combine:i=>i.some(e=>e)});function Sm(i){let e=[ym];return i&&i.fixed===!1&&e.push(so.of(!0)),e}var ym=Ee.fromClass(class{constructor(i){this.view=i,this.prevViewport=i.viewport,this.dom=document.createElement("div"),this.dom.className="cm-gutters",this.dom.setAttribute("aria-hidden","true"),this.dom.style.minHeight=this.view.contentHeight/this.view.scaleY+"px",this.gutters=i.state.facet(nr).map(e=>new pr(i,e));for(let e of this.gutters)this.dom.appendChild(e.dom);this.fixed=!i.state.facet(so),this.fixed&&(this.dom.style.position="sticky"),this.syncGutters(!1),i.scrollDOM.insertBefore(this.dom,i.contentDOM)}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)}i.geometryChanged&&(this.dom.style.minHeight=this.view.contentHeight+"px"),this.view.state.facet(so)!=!this.fixed&&(this.fixed=!this.fixed,this.dom.style.position=this.fixed?"sticky":""),this.prevViewport=i.view.viewport}syncGutters(i){let e=this.dom.nextSibling;i&&this.dom.remove();let t=H.iter(this.view.state.facet(ir),this.view.viewport.from),n=[],r=this.gutters.map(s=>new Oo(s,this.view.viewport,-this.view.documentPadding.top));for(let s of this.view.viewportLineBlocks)if(n.length&&(n=[]),Array.isArray(s.type)){let o=!0;for(let O of s.type)if(O.type==Qe.Text&&o){oo(t,n,O.from);for(let a of r)a.line(this.view,O,n);o=!1}else if(O.widget)for(let a of r)a.widget(this.view,O)}else if(s.type==Qe.Text){oo(t,n,s.from);for(let o of r)o.line(this.view,s,n)}else if(s.widget)for(let o of r)o.widget(this.view,s);for(let s of r)s.finish();i&&this.view.scrollDOM.insertBefore(this.dom,e)}updateGutters(i){let e=i.startState.facet(nr),t=i.state.facet(nr),n=i.docChanged||i.heightChanged||i.viewportChanged||!H.eq(i.startState.facet(ir),i.state.facet(ir),i.view.viewport.from,i.view.viewport.to);if(e==t)for(let r of this.gutters)r.update(i)&&(n=!0);else{n=!0;let r=[];for(let s of t){let o=e.indexOf(s);o<0?r.push(new pr(this.view,s)):(this.gutters[o].update(i),r.push(this.gutters[o]))}for(let s of this.gutters)s.dom.remove(),r.indexOf(s)<0&&s.destroy();for(let s of r)this.dom.appendChild(s.dom);this.gutters=r}return n}destroy(){for(let i of this.gutters)i.destroy();this.dom.remove()}},{provide:i=>T.scrollMargins.of(e=>{let t=e.plugin(i);return!t||t.gutters.length==0||!t.fixed?null:e.textDirection==K.LTR?{left:t.dom.offsetWidth*e.scaleX}:{right:t.dom.offsetWidth*e.scaleX}})});function yl(i){return Array.isArray(i)?i:[i]}function oo(i,e,t){for(;i.value&&i.from<=t;)i.from==t&&e.push(i.value),i.next()}var Oo=class{constructor(e,t,n){this.gutter=e,this.height=n,this.i=0,this.cursor=H.iter(e.markers,t.from)}addElement(e,t,n){let{gutter:r}=this,s=(t.top-this.height)/e.scaleY,o=t.height/e.scaleY;if(this.i==r.elements.length){let O=new mr(e,o,s,n);r.elements.push(O),r.dom.appendChild(O.dom)}else r.elements[this.i].update(e,o,s,n);this.height=t.bottom,this.i++}line(e,t,n){let r=[];oo(this.cursor,r,t.from),n.length&&(r=r.concat(n));let s=this.gutter.config.lineMarker(e,t,r);s&&r.unshift(s);let o=this.gutter;r.length==0&&!o.config.renderEmptyElements||this.addElement(e,t,r)}widget(e,t){let n=this.gutter.config.widgetMarker(e,t.widget,t);n&&this.addElement(e,t,[n])}finish(){let e=this.gutter;for(;e.elements.length>this.i;){let t=e.elements.pop();e.dom.removeChild(t.dom),t.destroy()}}},pr=class{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,r=>{let s=r.target,o;if(s!=this.dom&&this.dom.contains(s)){for(;s.parentNode!=this.dom;)s=s.parentNode;let a=s.getBoundingClientRect();o=(a.top+a.bottom)/2}else o=r.clientY;let O=e.lineBlockAtHeight(o-e.documentTop);t.domEventHandlers[n](e,O,r)&&r.preventDefault()});this.markers=yl(t.markers(e)),t.initialSpacer&&(this.spacer=new mr(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=yl(this.config.markers(e.view)),this.spacer&&this.config.updateSpacer){let r=this.config.updateSpacer(this.spacer.markers[0],e);r!=this.spacer.markers[0]&&this.spacer.update(e.view,0,0,[r])}let n=e.view.viewport;return!H.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()}},mr=class{constructor(e,t,n,r){this.height=-1,this.above=0,this.markers=[],this.dom=document.createElement("div"),this.dom.className="cm-gutterElement",this.update(e,t,n,r)}update(e,t,n,r){this.height!=t&&(this.height=t,this.dom.style.height=t+"px"),this.above!=n&&(this.dom.style.marginTop=(this.above=n)?n+"px":""),Pm(this.markers,r)||this.setMarkers(e,r)}setMarkers(e,t){let n="cm-gutterElement",r=this.dom.firstChild;for(let s=0,o=0;;){let O=o,a=ss(O,a,l)||o(O,a,l):o}return n}})}}),Ki=class extends He{constructor(e){super(),this.number=e}eq(e){return this.number==e.number}toDOM(){return document.createTextNode(this.number)}};function ws(i,e){return i.state.facet(gi).formatNumber(e,i.state)}var xm=nr.compute([gi],i=>({class:"cm-lineNumbers",renderEmptyElements:!1,markers(e){return e.state.facet(bm)},lineMarker(e,t,n){return n.some(r=>r.toDOM)?null:new Ki(ws(e,e.state.doc.lineAt(t.from).number))},widgetMarker:()=>null,lineMarkerChange:e=>e.startState.facet(gi)!=e.state.facet(gi),initialSpacer(e){return new Ki(ws(e,Pl(e.state.doc.lines)))},updateSpacer(e,t){let n=ws(t.view,Pl(t.view.state.doc.lines));return n==e.number?e:new Ki(n)},domEventHandlers:i.facet(gi).domEventHandlers}));function bh(i={}){return[gi.of(i),Sm(),xm]}function Pl(i){let e=9;for(;e{let e=[],t=-1;for(let n of i.selection.ranges){let r=i.doc.lineAt(n.head).from;r>t&&(t=r,e.push(wm.range(r)))}return H.of(e)});function mo(){return km}async function xh(i){if(window.isSecureContext&&navigator.clipboard){await navigator.clipboard.writeText(i);return}let e=document.createElement("textarea");e.style="position: absolute; left: -1000px; top: -1000px;",e.value=i,document.body.appendChild(e),e.select(),document.execCommand("copy"),document.body.removeChild(e)}var Tm=0,Te=class{constructor(e,t){this.from=e,this.to=t}},R=class{constructor(e={}){this.id=Tm++,this.perNode=!!e.perNode,this.deserialize=e.deserialize||(()=>{throw new Error("This node type doesn't define a deserialize function")})}add(e){if(this.perNode)throw new RangeError("Can't add per-node props to node types");return typeof e!="function"&&(e=ie.match(e)),t=>{let n=e(t);return n===void 0?null:[this,n]}}};R.closedBy=new R({deserialize:i=>i.split(" ")});R.openedBy=new R({deserialize:i=>i.split(" ")});R.group=new R({deserialize:i=>i.split(" ")});R.isolate=new R({deserialize:i=>{if(i&&i!="rtl"&&i!="ltr"&&i!="auto")throw new RangeError("Invalid value for isolate: "+i);return i||"auto"}});R.contextHash=new R({perNode:!0});R.lookAhead=new R({perNode:!0});R.mounted=new R({perNode:!0});var Ft=class{constructor(e,t,n){this.tree=e,this.overlay=t,this.parser=n}static get(e){return e&&e.props&&e.props[R.mounted.id]}},vm=Object.create(null),ie=class i{constructor(e,t,n,r=0){this.name=e,this.props=t,this.id=n,this.flags=r}static define(e){let t=e.props&&e.props.length?Object.create(null):vm,n=(e.top?1:0)|(e.skipped?2:0)|(e.error?4:0)|(e.name==null?8:0),r=new i(e.name||"",t,e.id,n);if(e.props){for(let s of e.props)if(Array.isArray(s)||(s=s(r)),s){if(s[0].perNode)throw new RangeError("Can't store a per-node prop on a node type");t[s[0].id]=s[1]}}return r}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(R.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 r of n.split(" "))t[r]=e[n];return n=>{for(let r=n.prop(R.group),s=-1;s<(r?r.length:0);s++){let o=t[s<0?n.name:r[s]];if(o)return o}}}};ie.none=new ie("",Object.create(null),0,8);var $t=class i{constructor(e){this.types=e;for(let t=0;t0;for(let a=this.cursor(o|G.IncludeAnonymous);;){let l=!1;if(a.from<=s&&a.to>=r&&(!O&&a.type.isAnonymous||t(a)!==!1)){if(a.firstChild())continue;l=!0}for(;l&&n&&(O||!a.type.isAnonymous)&&n(a),!a.nextSibling();){if(!a.parent())return;l=!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:To(ie.none,this.children,this.positions,0,this.children.length,0,this.length,(t,n,r)=>new i(this.type,t,n,r,this.propValues),e.makeTree||((t,n,r)=>new i(ie.none,t,n,r)))}static build(e){return Zm(e)}};q.empty=new q(ie.none,[],[],0);var $o=class i{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 i(this.buffer,this.index)}},Xt=class i{constructor(e,t,n){this.buffer=e,this.length=t,this.set=n}get type(){return ie.none}toString(){let e=[];for(let t=0;t0));a=o[a+3]);return O}slice(e,t,n){let r=this.buffer,s=new Uint16Array(t-e),o=0;for(let O=e,a=0;O=e&&te;case 1:return t<=e&&n>e;case 2:return n>e;case 4:return!0}}function an(i,e,t,n){for(var r;i.from==i.to||(t<1?i.from>=e:i.from>e)||(t>-1?i.to<=e:i.to0?O.length:-1;e!=l;e+=t){let h=O[e],c=a[e]+o.from;if(Wh(r,n,c,c+h.length)){if(h instanceof Xt){if(s&G.ExcludeBuffers)continue;let f=h.findChild(0,h.buffer.length,t,n-c,r);if(f>-1)return new Kt(new Qo(o,h,e,c),null,f)}else if(s&G.IncludeAnonymous||!h.type.isAnonymous||ko(h)){let f;if(!(s&G.IgnoreMounts)&&(f=Ft.get(h))&&!f.overlay)return new i(f.tree,c,e,o);let d=new i(h,c,e,o);return s&G.IncludeAnonymous||!d.type.isAnonymous?d:d.nextChild(t<0?h.children.length-1:0,t,n,r)}}}if(s&G.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)}enter(e,t,n=0){let r;if(!(n&G.IgnoreOverlays)&&(r=Ft.get(this._tree))&&r.overlay){let s=e-this.from;for(let{from:o,to:O}of r.overlay)if((t>0?o<=s:o=s:O>s))return new i(r.tree,r.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 kh(i,e,t,n){let r=i.cursor(),s=[];if(!r.firstChild())return s;if(t!=null){for(let o=!1;!o;)if(o=r.type.is(t),!r.nextSibling())return s}for(;;){if(n!=null&&r.type.is(n))return s;if(r.type.is(e)&&s.push(r.node),!r.nextSibling())return n==null?s:[]}}function go(i,e,t=e.length-1){for(let n=i.parent;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}var Qo=class{constructor(e,t,n,r){this.parent=e,this.buffer=t,this.index=n,this.start=r}},Kt=class i extends yr{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:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.context.start,n);return s<0?null:new i(this.context,this,s)}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)}enter(e,t,n=0){if(n&G.ExcludeBuffers)return null;let{buffer:r}=this.context,s=r.findChild(this.index+4,r.buffer[this.index+3],t>0?1:-1,e-this.context.start,t);return s<0?null:new i(this.context,this,s)}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 i(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 i(this.context,this._parent,e.findChild(t,this.index,-1,0,4))}get tree(){return null}toTree(){let e=[],t=[],{buffer:n}=this.context,r=this.index+4,s=n.buffer[this.index+3];if(s>r){let o=n.buffer[this.index+1];e.push(n.slice(r,s,o)),t.push(0)}return new q(this.type,e,t,this.to-this.from)}toString(){return this.context.buffer.childString(this.index)}};function Rh(i){if(!i.length)return null;let e=0,t=i[0];for(let s=1;st.from||o.to=e){let O=new ve(o.tree,o.overlay[0].from+s.from,-1,s);(r||(r=[n])).push(an(O,e,t,!1))}}return r?Rh(r):n}var yi=class{get name(){return this.type.name}constructor(e,t=0){if(this.mode=t,this.buffer=null,this.stack=[],this.index=0,this.bufferNode=null,e instanceof ve)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:r}=this.buffer;return this.type=t||r.set.types[r.buffer[e]],this.from=n+r.buffer[e+1],this.to=n+r.buffer[e+2],!0}yield(e){return e?e instanceof ve?(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:r}=this.buffer,s=r.findChild(this.index+4,r.buffer[this.index+3],e,t-this.buffer.start,n);return s<0?!1:(this.stack.push(this.index),this.yieldBuf(s))}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&G.ExcludeBuffers?!1:this.enterChild(1,e,t):this.yield(this._tree.enter(e,t,n))}parent(){if(!this.buffer)return this.yieldNode(this.mode&G.IncludeAnonymous?this._tree._parent:this._tree.parent);if(this.stack.length)return this.yieldBuf(this.stack.pop());let e=this.mode&G.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 r=n<0?0:this.stack[n]+4;if(this.index!=r)return this.yieldBuf(t.findChild(r,this.index,-1,0,4))}else{let r=t.buffer[this.index+3];if(r<(n<0?t.buffer.length:t.buffer[this.stack[n]+3]))return this.yieldBuf(r)}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:r}=this;if(r){if(e>0){if(this.index-1)for(let s=t+e,o=e<0?-1:n._tree.children.length;s!=o;s+=e){let O=n._tree.children[s];if(this.mode&G.IncludeAnonymous||O instanceof Xt||!O.type.isAnonymous||ko(O))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=0;){for(let o=e;o;o=o._parent)if(o.index==r){if(r==this.index)return o;t=o,n=s+1;break e}r=this.stack[--s]}for(let r=n;r=0;s--){if(s<0)return go(this.node,e,r);let o=n[t.buffer[this.stack[s]]];if(!o.isAnonymous){if(e[r]&&e[r]!=o.name)return!1;r--}}return!0}};function ko(i){return i.children.some(e=>e instanceof Xt||!e.type.isAnonymous||ko(e))}function Zm(i){var e;let{buffer:t,nodeSet:n,maxBufferLength:r=1024,reused:s=[],minRepeatType:o=n.types.length}=i,O=Array.isArray(t)?new $o(t,t.length):t,a=n.types,l=0,h=0;function c(P,v,k,U,C,A){let{id:Y,start:V,end:D,size:E}=O,te=h;for(;E<0;)if(O.next(),E==-1){let se=s[Y];k.push(se),U.push(V-P);return}else if(E==-3){l=Y;return}else if(E==-4){h=Y;return}else throw new RangeError(`Unrecognized record size: ${E}`);let be=a[Y],xe,ze,Ce=V-P;if(D-V<=r&&(ze=$(O.pos-v,C))){let se=new Uint16Array(ze.size-ze.skip),je=O.pos-ze.size,tt=se.length;for(;O.pos>je;)tt=g(ze.start,se,tt);xe=new Xt(se,D-ze.start,n),Ce=ze.start-P}else{let se=O.pos-E;O.next();let je=[],tt=[],Gt=Y>=o?Y:-1,Oi=0,Wn=D;for(;O.pos>se;)Gt>=0&&O.id==Gt&&O.size>=0?(O.end<=Wn-r&&(p(je,tt,V,Oi,O.end,Wn,Gt,te),Oi=je.length,Wn=O.end),O.next()):A>2500?f(V,se,je,tt):c(V,se,je,tt,Gt,A+1);if(Gt>=0&&Oi>0&&Oi-1&&Oi>0){let ma=d(be);xe=To(be,je,tt,0,je.length,0,D-V,ma,ma)}else xe=m(be,je,tt,D-V,te-D)}k.push(xe),U.push(Ce)}function f(P,v,k,U){let C=[],A=0,Y=-1;for(;O.pos>v;){let{id:V,start:D,end:E,size:te}=O;if(te>4)O.next();else{if(Y>-1&&D=0;E-=3)V[te++]=C[E],V[te++]=C[E+1]-D,V[te++]=C[E+2]-D,V[te++]=te;k.push(new Xt(V,C[2]-D,n)),U.push(D-P)}}function d(P){return(v,k,U)=>{let C=0,A=v.length-1,Y,V;if(A>=0&&(Y=v[A])instanceof q){if(!A&&Y.type==P&&Y.length==U)return Y;(V=Y.prop(R.lookAhead))&&(C=k[A]+Y.length+V)}return m(P,v,k,U,C)}}function p(P,v,k,U,C,A,Y,V){let D=[],E=[];for(;P.length>U;)D.push(P.pop()),E.push(v.pop()+k-C);P.push(m(n.types[Y],D,E,A-C,V-A)),v.push(C-k)}function m(P,v,k,U,C=0,A){if(l){let Y=[R.contextHash,l];A=A?[Y].concat(A):[Y]}if(C>25){let Y=[R.lookAhead,C];A=A?[Y].concat(A):[Y]}return new q(P,v,k,U,A)}function $(P,v){let k=O.fork(),U=0,C=0,A=0,Y=k.end-r,V={size:0,start:0,skip:0};e:for(let D=k.pos-P;k.pos>D;){let E=k.size;if(k.id==v&&E>=0){V.size=U,V.start=C,V.skip=A,A+=4,U+=4,k.next();continue}let te=k.pos-E;if(E<0||te=o?4:0,xe=k.start;for(k.next();k.pos>te;){if(k.size<0)if(k.size==-3)be+=4;else break e;else k.id>=o&&(be+=4);k.next()}C=xe,U+=E,A+=be}return(v<0||U==P)&&(V.size=U,V.start=C,V.skip=A),V.size>4?V:void 0}function g(P,v,k){let{id:U,start:C,end:A,size:Y}=O;if(O.next(),Y>=0&&U4){let D=O.pos-(Y-4);for(;O.pos>D;)k=g(P,v,k)}v[--k]=V,v[--k]=A-P,v[--k]=C-P,v[--k]=U}else Y==-3?l=U:Y==-4&&(h=U);return k}let Q=[],x=[];for(;O.pos>0;)c(i.start||0,i.bufferStart||0,Q,x,-1,0);let w=(e=i.length)!==null&&e!==void 0?e:Q.length?x[0]+Q[0].length:0;return new q(a[i.topID],Q.reverse(),x.reverse(),w)}var Th=new WeakMap;function Sr(i,e){if(!i.isAnonymous||e instanceof Xt||e.type!=i)return 1;let t=Th.get(e);if(t==null){t=1;for(let n of e.children){if(n.type!=i||!(n instanceof q)){t=1;break}t+=Sr(i,n)}Th.set(e,t)}return t}function To(i,e,t,n,r,s,o,O,a){let l=0;for(let p=n;p=h)break;v+=k}if(x==w+1){if(v>h){let k=p[w];d(k.children,k.positions,0,k.children.length,m[w]+Q);continue}c.push(p[w])}else{let k=m[x-1]+p[x-1].length-P;c.push(To(i,p,m,w,x,P,k,null,a))}f.push(P+Q-s)}}return d(e,t,n,r,0),(O||a)(c,f,o)}var Pi=class{constructor(){this.map=new WeakMap}setBuffer(e,t,n){let r=this.map.get(e);r||this.map.set(e,r=new Map),r.set(t,n)}getBuffer(e,t){let n=this.map.get(e);return n&&n.get(t)}set(e,t){e instanceof Kt?this.setBuffer(e.context.buffer,e.index,t):e instanceof ve&&this.map.set(e.tree,t)}get(e){return e instanceof Kt?this.getBuffer(e.context.buffer,e.index):e instanceof ve?this.map.get(e.tree):void 0}cursorSet(e,t){e.buffer?this.setBuffer(e.buffer.buffer,e.index,t):this.map.set(e.tree,t)}cursorGet(e){return e.buffer?this.getBuffer(e.buffer.buffer,e.index):this.map.get(e.tree)}},gt=class i{constructor(e,t,n,r,s=!1,o=!1){this.from=e,this.to=t,this.tree=n,this.offset=r,this.open=(s?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 r=[new i(0,e.length,e,0,!1,n)];for(let s of t)s.to>e.length&&r.push(s);return r}static applyChanges(e,t,n=128){if(!t.length)return e;let r=[],s=1,o=e.length?e[0]:null;for(let O=0,a=0,l=0;;O++){let h=O=n)for(;o&&o.from=f.from||c<=f.to||l){let d=Math.max(f.from,a)-l,p=Math.min(f.to,c)-l;f=d>=p?null:new i(d,p,f.tree,f.offset+l,O>0,!!h)}if(f&&r.push(f),o.to>c)break;o=snew Te(r.from,r.to)):[new Te(0,0)]:[new Te(0,e.length)],this.createParse(e,t||[],n)}parse(e,t,n){let r=this.startParse(e,t,n);for(;;){let s=r.advance();if(s)return s}}},yo=class{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 bi(i){return(e,t,n,r)=>new xo(e,i,t,n,r)}var Pr=class{constructor(e,t,n,r,s){this.parser=e,this.parse=t,this.overlay=n,this.target=r,this.from=s}};function vh(i){if(!i.length||i.some(e=>e.from>=e.to))throw new RangeError("Invalid inner parse ranges given: "+JSON.stringify(i))}var Po=class{constructor(e,t,n,r,s,o,O){this.parser=e,this.predicate=t,this.mounts=n,this.index=r,this.start=s,this.target=o,this.prev=O,this.depth=0,this.ranges=[]}},bo=new R({perNode:!0}),xo=class{constructor(e,t,n,r,s){this.nest=t,this.input=n,this.fragments=r,this.ranges=s,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 r of this.inner)r.parse.stopAt(this.stoppedAt)}if(this.innerDone==this.inner.length){let n=this.baseTree;return this.stoppedAt!=null&&(n=new q(n.type,n.children,n.positions,n.length,n.propValues.concat([[bo,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[R.mounted.id]=new Ft(t,e.overlay,e.parser),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.stoppedAt)O=!1;else if(e.hasNode(r)){if(t){let l=t.mounts.find(h=>h.frag.from<=r.from&&h.frag.to>=r.to&&h.mount.overlay);if(l)for(let h of l.mount.overlay){let c=h.from+l.pos,f=h.to+l.pos;c>=r.from&&f<=r.to&&!t.ranges.some(d=>d.fromc)&&t.ranges.push({from:c,to:f})}}O=!1}else if(n&&(o=Xm(n.ranges,r.from,r.to)))O=o!=2;else if(!r.type.isAnonymous&&(s=this.nest(r,this.input))&&(r.fromnew Te(c.from-r.from,c.to-r.from)):null,r.tree,h.length?h[0].from:r.from)),s.overlay?h.length&&(n={ranges:h,depth:0,prev:n}):O=!1}}else t&&(a=t.predicate(r))&&(a===!0&&(a=new Te(r.from,r.to)),a.fromnew Te(h.from-t.start,h.to-t.start)),t.target,l[0].from))),t=t.prev}n&&!--n.depth&&(n=n.prev)}}}};function Xm(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 zh(i,e,t,n,r,s){if(e=e&&t.enter(n,1,G.IgnoreOverlays|G.ExcludeBuffers)||t.next(!1)||(this.done=!0)}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 q)t=t.children[0];else break}return!1}},wo=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(bo))!==null&&t!==void 0?t:n.to,this.inner=new br(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(bo))!==null&&e!==void 0?e:t.to,this.inner=new br(t.tree,-t.offset)}}findMounts(e,t){var n;let r=[];if(this.inner){this.inner.cursor.moveTo(e,1);for(let s=this.inner.cursor.node;s;s=s.parent){let o=(n=s.tree)===null||n===void 0?void 0:n.prop(R.mounted);if(o&&o.parser==t)for(let O=this.fragI;O=s.to)break;a.tree==this.curFrag.tree&&r.push({frag:a,pos:s.from-a.offset,mount:o})}}}return r}};function Zh(i,e){let t=null,n=e;for(let r=1,s=0;r=O)break;a.to<=o||(t||(n=t=e.slice()),a.fromO&&t.splice(s+1,0,new Te(O,a.to))):a.to>O?t[s--]=new Te(O,a.to):t.splice(s--,1))}}return n}function Rm(i,e,t,n){let r=0,s=0,o=!1,O=!1,a=-1e9,l=[];for(;;){let h=r==i.length?1e9:o?i[r].to:i[r].from,c=s==e.length?1e9:O?e[s].to:e[s].from;if(o!=O){let f=Math.max(a,t),d=Math.min(h,c,n);fnew Te(f.from+n,f.to+n)),c=Rm(e,h,a,l);for(let f=0,d=a;;f++){let p=f==c.length,m=p?l:c[f].from;if(m>d&&t.push(new gt(d,m,r.tree,-o,s.from>=d||s.openStart,s.to<=m||s.openEnd)),p)break;d=c[f].to}}else t.push(new gt(a,l,r.tree,-o,s.from>=o||s.openStart,s.to<=O||s.openEnd))}return t}var Vm=0,Ge=class i{constructor(e,t,n){this.set=e,this.base=t,this.modified=n,this.id=Vm++}static define(e){if(e?.base)throw new Error("Can not derive from a modified tag");let t=new i([],null,[]);if(t.set.push(t),e)for(let n of e.set)t.set.push(n);return t}static defineModifier(){let e=new Tr;return t=>t.modified.indexOf(e)>-1?t:Tr.get(t.base||t,t.modified.concat(e).sort((n,r)=>n.id-r.id))}},qm=0,Tr=class i{constructor(){this.instances=[],this.id=qm++}static get(e,t){if(!t.length)return e;let n=t[0].instances.find(O=>O.base==e&&Ym(t,O.modified));if(n)return n;let r=[],s=new Ge(r,e,t);for(let O of t)O.instances.push(s);let o=Cm(t);for(let O of e.set)if(!O.modified.length)for(let a of o)r.push(i.get(O,a));return s}};function Ym(i,e){return i.length==e.length&&i.every((t,n)=>t==e[n])}function Cm(i){let e=[[]];for(let t=0;tn.length-t.length)}function oe(i){let e=Object.create(null);for(let t in i){let n=i[t];Array.isArray(n)||(n=[n]);for(let r of t.split(" "))if(r){let s=[],o=2,O=r;for(let c=0;;){if(O=="..."&&c>0&&c+3==r.length){o=1;break}let f=/^"(?:[^"\\]|\\.)*?"|[^\/!]+/.exec(O);if(!f)throw new RangeError("Invalid path: "+r);if(s.push(f[0]=="*"?"":f[0][0]=='"'?JSON.parse(f[0]):f[0]),c+=f[0].length,c==r.length)break;let d=r[c++];if(c==r.length&&d=="!"){o=0;break}if(d!="/")throw new RangeError("Invalid path: "+r);O=r.slice(c)}let a=s.length-1,l=s[a];if(!l)throw new RangeError("Invalid path: "+r);let h=new xi(n,o,a>0?s.slice(0,a):null);e[l]=h.sort(e[l])}}return Yh.add(e)}var Yh=new R,xi=class{constructor(e,t,n,r){this.tags=e,this.mode=t,this.context=n,this.next=r}get opaque(){return this.mode==0}get inherit(){return this.mode==1}sort(e){return!e||e.depth{let o=r;for(let O of s)for(let a of O.set){let l=t[a.id];if(l){o=o?o+" "+l:l;break}}return o},scope:n}}function jm(i,e){let t=null;for(let n of i){let r=n.style(e);r&&(t=t?t+" "+r:r)}return t}function Ch(i,e,t,n=0,r=i.length){let s=new zo(n,Array.isArray(e)?e:[e],t);s.highlightRange(i.cursor(),n,r,"",s.highlighters),s.flush(r)}var zo=class{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,r,s){let{type:o,from:O,to:a}=e;if(O>=n||a<=t)return;o.isTop&&(s=this.highlighters.filter(d=>!d.scope||d.scope(o)));let l=r,h=Am(e)||xi.empty,c=jm(s,h.tags);if(c&&(l&&(l+=" "),l+=c,h.mode==1&&(r+=(r?" ":"")+c)),this.startSpan(Math.max(t,O),l),h.opaque)return;let f=e.tree&&e.tree.prop(R.mounted);if(f&&f.overlay){let d=e.node.enter(f.overlay[0].from+O,1),p=this.highlighters.filter($=>!$.scope||$.scope(f.tree.type)),m=e.firstChild();for(let $=0,g=O;;$++){let Q=$=x||!e.nextSibling())););if(!Q||x>n)break;g=Q.to+O,g>t&&(this.highlightRange(d.cursor(),Math.max(t,Q.from+O),Math.min(n,g),"",p),this.startSpan(Math.min(n,g),l))}m&&e.parent()}else if(e.firstChild()){f&&(r="");do if(!(e.to<=t)){if(e.from>=n)break;this.highlightRange(e,t,n,r,s),this.startSpan(Math.min(n,e.to),l)}while(e.nextSibling());e.parent()}}};function Am(i){let e=i.type.prop(Yh);for(;e&&e.context&&!i.matchContext(e.context);)e=e.next;return e||null}var b=Ge.define,xr=b(),Wt=b(),Vh=b(Wt),qh=b(Wt),Rt=b(),wr=b(Rt),vo=b(Rt),ct=b(),Jt=b(ct),lt=b(),ht=b(),Zo=b(),ln=b(Zo),kr=b(),u={comment:xr,lineComment:b(xr),blockComment:b(xr),docComment:b(xr),name:Wt,variableName:b(Wt),typeName:Vh,tagName:b(Vh),propertyName:qh,attributeName:b(qh),className:b(Wt),labelName:b(Wt),namespace:b(Wt),macroName:b(Wt),literal:Rt,string:wr,docString:b(wr),character:b(wr),attributeValue:b(wr),number:vo,integer:b(vo),float:b(vo),bool:b(Rt),regexp:b(Rt),escape:b(Rt),color:b(Rt),url:b(Rt),keyword:lt,self:b(lt),null:b(lt),atom:b(lt),unit:b(lt),modifier:b(lt),operatorKeyword:b(lt),controlKeyword:b(lt),definitionKeyword:b(lt),moduleKeyword:b(lt),operator:ht,derefOperator:b(ht),arithmeticOperator:b(ht),logicOperator:b(ht),bitwiseOperator:b(ht),compareOperator:b(ht),updateOperator:b(ht),definitionOperator:b(ht),typeOperator:b(ht),controlOperator:b(ht),punctuation:Zo,separator:b(Zo),bracket:ln,angleBracket:b(ln),squareBracket:b(ln),paren:b(ln),brace:b(ln),content:ct,heading:Jt,heading1:b(Jt),heading2:b(Jt),heading3:b(Jt),heading4:b(Jt),heading5:b(Jt),heading6:b(Jt),contentSeparator:b(ct),list:b(ct),quote:b(ct),emphasis:b(ct),strong:b(ct),link:b(ct),monospace:b(ct),strikethrough:b(ct),inserted:b(),deleted:b(),changed:b(),invalid:b(),meta:kr,documentMeta:b(kr),annotation:b(kr),processingInstruction:b(kr),definition:Ge.defineModifier(),constant:Ge.defineModifier(),function:Ge.defineModifier(),standard:Ge.defineModifier(),local:Ge.defineModifier(),special:Ge.defineModifier()},QP=Xo([{tag:u.link,class:"tok-link"},{tag:u.heading,class:"tok-heading"},{tag:u.emphasis,class:"tok-emphasis"},{tag:u.strong,class:"tok-strong"},{tag:u.keyword,class:"tok-keyword"},{tag:u.atom,class:"tok-atom"},{tag:u.bool,class:"tok-bool"},{tag:u.url,class:"tok-url"},{tag:u.labelName,class:"tok-labelName"},{tag:u.inserted,class:"tok-inserted"},{tag:u.deleted,class:"tok-deleted"},{tag:u.literal,class:"tok-literal"},{tag:u.string,class:"tok-string"},{tag:u.number,class:"tok-number"},{tag:[u.regexp,u.escape,u.special(u.string)],class:"tok-string2"},{tag:u.variableName,class:"tok-variableName"},{tag:u.local(u.variableName),class:"tok-variableName tok-local"},{tag:u.definition(u.variableName),class:"tok-variableName tok-definition"},{tag:u.special(u.variableName),class:"tok-variableName2"},{tag:u.definition(u.propertyName),class:"tok-propertyName tok-definition"},{tag:u.typeName,class:"tok-typeName"},{tag:u.namespace,class:"tok-namespace"},{tag:u.className,class:"tok-className"},{tag:u.macroName,class:"tok-macroName"},{tag:u.propertyName,class:"tok-propertyName"},{tag:u.operator,class:"tok-operator"},{tag:u.comment,class:"tok-comment"},{tag:u.meta,class:"tok-meta"},{tag:u.invalid,class:"tok-invalid"},{tag:u.punctuation,class:"tok-punctuation"}]);var Wo,St=new R;function ki(i){return W.define({combine:i?e=>e.concat(i):void 0})}var Xr=new R,fe=class{constructor(e,t,n=[],r=""){this.data=e,this.name=r,L.prototype.hasOwnProperty("tree")||Object.defineProperty(L.prototype,"tree",{get(){return M(this)}}),this.parser=t,this.extension=[wi.of(this),L.languageData.of((s,o,O)=>{let a=jh(s,o,O),l=a.type.prop(St);if(!l)return[];let h=s.facet(l),c=a.type.prop(Xr);if(c){let f=a.resolve(o-a.from,O);for(let d of c)if(d.test(f,s)){let p=s.facet(d.facet);return d.type=="replace"?p:p.concat(h)}}return h})].concat(n)}isActiveAt(e,t,n=-1){return jh(e,t,n).type.prop(St)==this.data}findRegions(e){let t=e.facet(wi);if(t?.data==this.data)return[{from:0,to:e.doc.length}];if(!t||!t.allowsNesting)return[];let n=[],r=(s,o)=>{if(s.prop(St)==this.data){n.push({from:o,to:o+s.length});return}let O=s.prop(R.mounted);if(O){if(O.tree.prop(St)==this.data){if(O.overlay)for(let a of O.overlay)n.push({from:a.from+o,to:a.to+o});else n.push({from:o,to:o+s.length});return}else if(O.overlay){let a=n.length;if(r(O.tree,O.overlay[0].from+o),n.length>a)return}}for(let a=0;an.isTop?t:void 0)]}),e.name)}configure(e,t){return new i(this.data,this.parser.configure(e),t||this.name)}get allowsNesting(){return this.parser.hasWrappers()}};function M(i){let e=i.field(fe.state,!1);return e?e.tree:q.empty}var Yo=class{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=this.cursorPos?this.doc.sliceString(e,t):this.string.slice(e-n,t-n)}},hn=null,ei=class i{constructor(e,t,n=[],r,s,o,O,a){this.parser=e,this.state=t,this.fragments=n,this.tree=r,this.treeLen=s,this.viewport=o,this.skipped=O,this.scheduleOn=a,this.parse=null,this.tempSkipped=[]}static create(e,t,n){return new i(e,t,[],q.empty,0,n,[],null)}startParse(){return this.parser.startParse(new Yo(this.state.doc),this.fragments)}work(e,t){return t!=null&&t>=this.state.doc.length&&(t=void 0),this.tree!=q.empty&&this.isDone(t??this.state.doc.length)?(this.takeTree(),!0):this.withContext(()=>{var n;if(typeof e=="number"){let r=Date.now()+e;e=()=>Date.now()>r}for(this.parse||(this.parse=this.startParse()),t!=null&&(this.parse.stoppedAt==null||this.parse.stoppedAt>t)&&t=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(gt.addTree(this.tree,this.fragments,!0)),this.parse=null)}withContext(e){let t=hn;hn=this;try{return e()}finally{hn=t}}withoutTempSkipped(e){for(let t;t=this.tempSkipped.pop();)e=Ah(e,t.from,t.to);return e}changes(e,t){let{fragments:n,tree:r,treeLen:s,viewport:o,skipped:O}=this;if(this.takeTree(),!e.empty){let a=[];if(e.iterChangedRanges((l,h,c,f)=>a.push({fromA:l,toA:h,fromB:c,toB:f})),n=gt.applyChanges(n,a),r=q.empty,s=0,o={from:e.mapPos(o.from,-1),to:e.mapPos(o.to,1)},this.skipped.length){O=[];for(let l of this.skipped){let h=e.mapPos(l.from,1),c=e.mapPos(l.to,-1);he.from&&(this.fragments=Ah(this.fragments,r,s),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 Qt{createParse(t,n,r){let s=r[0].from,o=r[r.length-1].to;return{parsedPos:s,advance(){let a=hn;if(a){for(let l of r)a.tempSkipped.push(l);e&&(a.scheduleOn=a.scheduleOn?Promise.all([a.scheduleOn,e]):e)}return this.parsedPos=o,new q(ie.none,[],[],o-s)},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 hn}};function Ah(i,e,t){return gt.applyChanges(i,[{fromA:e,toA:t,fromB:e,toB:t}])}var cn=class i{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 i(t)}static init(e){let t=Math.min(3e3,e.doc.length),n=ei.create(e.facet(wi).parser,e,{from:0,to:t});return n.work(20,t)||n.takeTree(),new i(n)}};fe.state=$e.define({create:cn.init,update(i,e){for(let t of e.effects)if(t.is(fe.setState))return t.value;return e.startState.facet(wi)!=e.state.facet(wi)?cn.init(e.state):i.apply(e)}});var Mh=i=>{let e=setTimeout(()=>i(),500);return()=>clearTimeout(e)};typeof requestIdleCallback<"u"&&(Mh=i=>{let e=-1,t=setTimeout(()=>{e=requestIdleCallback(i,{timeout:400})},100);return()=>e<0?clearTimeout(t):cancelIdleCallback(e)});var Ro=typeof navigator<"u"&&(!((Wo=navigator.scheduling)===null||Wo===void 0)&&Wo.isInputPending)?()=>navigator.scheduling.isInputPending():null,_m=Ee.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(fe.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(fe.state);(t.tree!=t.context.tree||!t.context.isDone(e.doc.length))&&(this.working=Mh(this.work))}work(e){this.working=null;let t=Date.now();if(this.chunkEndr+1e3,a=s.context.work(()=>Ro&&Ro()||Date.now()>o,r+(O?0:1e5));this.chunkBudget-=Date.now()-t,(a||this.chunkBudget<=0)&&(s.context.takeTree(),this.view.dispatch({effects:fe.setState.of(new cn(s.context))})),this.chunkBudget>0&&!(a&&!O)&&this.scheduleWork(),this.checkAsyncSchedule(s.context)}checkAsyncSchedule(e){e.scheduleOn&&(this.workScheduled++,e.scheduleOn.then(()=>this.scheduleWork()).catch(t=>ot(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()}}}),wi=W.define({combine(i){return i.length?i[0]:null},enables:i=>[fe.state,_m,T.contentAttributes.compute([i],e=>{let t=e.facet(i);return t&&t.name?{"data-language":t.name}:{}})]}),Oe=class{constructor(e,t=[]){this.language=e,this.support=t,this.extension=[e,t]}},fn=class i{constructor(e,t,n,r,s,o=void 0){this.name=e,this.alias=t,this.extensions=n,this.filename=r,this.loadFunc=s,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 i(e.name,(e.alias||[]).concat(e.name).map(r=>r.toLowerCase()),e.extensions||[],e.filename,t,n)}static matchFilename(e,t){for(let r of e)if(r.filename&&r.filename.test(t))return r;let n=/\.([^.]+)$/.exec(t);if(n){for(let r of e)if(r.extensions.indexOf(n[1])>-1)return r}return null}static matchLanguageName(e,t,n=!0){t=t.toLowerCase();for(let r of e)if(r.alias.some(s=>s==t))return r;if(n)for(let r of e)for(let s of r.alias){let o=t.indexOf(s);if(o>-1&&(s.length>2||!/\w/.test(t[o-1])&&!/\w/.test(t[o+s.length])))return r}return null}},Ih=W.define(),qt=W.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 Vt(i){let e=i.facet(qt);return e.charCodeAt(0)==9?i.tabSize*e.length:e.length}function dn(i,e){let t="",n=i.tabSize,r=i.facet(qt)[0];if(r==" "){for(;e>=n;)t+=" ",e-=n;r=" "}for(let s=0;s=e?Um(i,t,e):null}var ti=class{constructor(e,t={}){this.state=e,this.options=t,this.unit=Vt(e)}lineAt(e,t=1){let n=this.state.doc.lineAt(e),{simulateBreak:r,simulateDoubleBreak:s}=this.options;return r!=null&&r>=n.from&&r<=n.to?s&&r==e?{text:"",from:e}:(t<0?r-1&&(s+=o-this.countColumn(n,n.search(/\S|$/))),s}countColumn(e,t=e.length){return ke(e,this.state.tabSize,t)}lineIndent(e,t=1){let{text:n,from:r}=this.lineAt(e,t),s=this.options.overrideIndentation;if(s){let o=s(r);if(o>-1)return o}return this.countColumn(n,n.search(/\S|$/))}get simulatedBreak(){return this.options.simulateBreak||null}},Se=new R;function Um(i,e,t){let n=e.resolveStack(t),r=n.node.enterUnfinishedNodesBefore(t);if(r!=n.node){let s=[];for(let o=r;o!=n.node;o=o.parent)s.push(o);for(let o=s.length-1;o>=0;o--)n={node:s[o],next:n}}return Lh(n,i,t)}function Lh(i,e,t){for(let n=i;n;n=n.next){let r=Gm(n.node);if(r)return r(Co.create(e,t,n))}return 0}function Em(i){return i.pos==i.options.simulateBreak&&i.options.simulateDoubleBreak}function Gm(i){let e=i.type.prop(Se);if(e)return e;let t=i.firstChild,n;if(t&&(n=t.type.prop(R.closedBy))){let r=i.lastChild,s=r&&n.indexOf(r.name)>-1;return o=>Dh(o,!0,1,void 0,s&&!Em(o)?r.from:void 0)}return i.parent==null?Mm:null}function Mm(){return 0}var Co=class i extends ti{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 i(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(Im(n,e))break;t=this.state.doc.lineAt(n.from)}return this.lineIndent(t.from)}continue(){return Lh(this.context.next,this.base,this.pos)}};function Im(i,e){for(let t=e;t;t=t.parent)if(i==t)return!0;return!1}function Lm(i){let e=i.node,t=e.childAfter(e.from),n=e.lastChild;if(!t)return null;let r=i.options.simulateBreak,s=i.state.doc.lineAt(t.from),o=r==null||r<=s.from?s.to:Math.min(s.to,r);for(let O=t.to;;){let a=e.childAfter(O);if(!a||a==n)return null;if(!a.type.isSkipped)return a.fromDh(n,e,t,i)}function Dh(i,e,t,n,r){let s=i.textAfter,o=s.match(/^\s*/)[0].length,O=n&&s.slice(o,o+n.length)==n||r==i.pos+o,a=e?Lm(i):null;return a?O?i.column(a.from):i.column(a.to):i.baseIndent+(O?0:i.unit*t)}var Bh=i=>i.baseIndent;function Re({except:i,units:e=1}={}){return t=>{let n=i&&i.test(t.textAfter);return t.baseIndent+(n?0:e*t.unit)}}var Nh=W.define(),ye=new R;function Yt(i){let e=i.firstChild,t=i.lastChild;return e&&e.toO.prop(St)==o.data:o?O=>O==o:void 0,this.style=Xo(e.map(O=>({tag:O.tag,class:O.class||r(Object.assign({},O,{tag:null}))})),{all:s}).style,this.module=n?new _e(n):null,this.themeType=t.themeType}static define(e,t){return new i(e,t||{})}},jo=W.define(),Hh=W.define({combine(i){return i.length?[i[0]]:null}});function Vo(i){let e=i.facet(jo);return e.length?e:i.facet(Hh)}function Mo(i,e){let t=[Dm],n;return i instanceof yt&&(i.module&&t.push(T.styleModule.of(i.module)),n=i.themeType),e?.fallback?t.push(Hh.of(i)):n?t.push(jo.computeN([T.darkTheme],r=>r.facet(T.darkTheme)==(n=="dark")?[i]:[])):t.push(jo.of(i)),t}var Ao=class{constructor(e){this.markCache=Object.create(null),this.tree=M(e.state),this.decorations=this.buildDeco(e,Vo(e.state)),this.decoratedTo=e.viewport.to}update(e){let t=M(e.state),n=Vo(e.state),r=n!=Vo(e.startState),{viewport:s}=e.view,o=e.changes.mapPos(this.decoratedTo,1);t.length=s.to?(this.decorations=this.decorations.map(e.changes),this.decoratedTo=o):(t!=this.tree||e.viewportChanged||r)&&(this.tree=t,this.decorations=this.buildDeco(e.view,n),this.decoratedTo=s.to)}buildDeco(e,t){if(!t||!this.tree.length)return I.none;let n=new Bt;for(let{from:r,to:s}of e.visibleRanges)Ch(this.tree,t,(o,O,a)=>{n.add(o,O,this.markCache[a]||(this.markCache[a]=I.mark({class:a})))},r,s);return n.finish()}},Dm=it.high(Ee.fromClass(Ao,{decorations:i=>i.decorations})),vP=yt.define([{tag:u.meta,color:"#404740"},{tag:u.link,textDecoration:"underline"},{tag:u.heading,textDecoration:"underline",fontWeight:"bold"},{tag:u.emphasis,fontStyle:"italic"},{tag:u.strong,fontWeight:"bold"},{tag:u.strikethrough,textDecoration:"line-through"},{tag:u.keyword,color:"#708"},{tag:[u.atom,u.bool,u.url,u.contentSeparator,u.labelName],color:"#219"},{tag:[u.literal,u.inserted],color:"#164"},{tag:[u.string,u.deleted],color:"#a11"},{tag:[u.regexp,u.escape,u.special(u.string)],color:"#e40"},{tag:u.definition(u.variableName),color:"#00f"},{tag:u.local(u.variableName),color:"#30a"},{tag:[u.typeName,u.namespace],color:"#085"},{tag:u.className,color:"#167"},{tag:[u.special(u.variableName),u.macroName],color:"#256"},{tag:u.definition(u.propertyName),color:"#00c"},{tag:u.comment,color:"#940"},{tag:u.invalid,color:"#f00"}]),Bm=T.baseTheme({"&.cm-focused .cm-matchingBracket":{backgroundColor:"#328c8252"},"&.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bb555544"}}),Fh=1e4,Kh="()[]{}",Jh=W.define({combine(i){return xt(i,{afterCursor:!0,brackets:Kh,maxScanDistance:Fh,renderMatch:Fm})}}),Nm=I.mark({class:"cm-matchingBracket"}),Hm=I.mark({class:"cm-nonmatchingBracket"});function Fm(i){let e=[],t=i.matched?Nm:Hm;return e.push(t.range(i.start.from,i.start.to)),i.end&&e.push(t.range(i.end.from,i.end.to)),e}var Km=$e.define({create(){return I.none},update(i,e){if(!e.docChanged&&!e.selection)return i;let t=[],n=e.state.facet(Jh);for(let r of e.state.selection.ranges){if(!r.empty)continue;let s=Fe(e.state,r.head,-1,n)||r.head>0&&Fe(e.state,r.head-1,1,n)||n.afterCursor&&(Fe(e.state,r.head,1,n)||r.headT.decorations.from(i)}),Jm=[Km,Bm];function ec(i={}){return[Jh.of(i),Jm]}var pn=new R;function _o(i,e,t){let n=i.prop(e<0?R.openedBy:R.closedBy);if(n)return n;if(i.name.length==1){let r=t.indexOf(i.name);if(r>-1&&r%2==(e<0?1:0))return[t[r+e]]}return null}function Uo(i){let e=i.type.prop(pn);return e?e(i.node):i}function Fe(i,e,t,n={}){let r=n.maxScanDistance||Fh,s=n.brackets||Kh,o=M(i),O=o.resolveInner(e,t);for(let a=O;a;a=a.parent){let l=_o(a.type,t,s);if(l&&a.from0?e>=h.from&&eh.from&&e<=h.to))return e$(i,e,t,a,h,l,s)}}return t$(i,e,t,o,O.type,r,s)}function e$(i,e,t,n,r,s,o){let O=n.parent,a={from:r.from,to:r.to},l=0,h=O?.cursor();if(h&&(t<0?h.childBefore(n.from):h.childAfter(n.to)))do if(t<0?h.to<=n.from:h.from>=n.to){if(l==0&&s.indexOf(h.type.name)>-1&&h.from0)return null;let l={from:t<0?e-1:e,to:t>0?e+1:e},h=i.doc.iterRange(e,t>0?i.doc.length:0),c=0;for(let f=0;!h.next().done&&f<=s;){let d=h.value;t<0&&(f+=d.length);let p=e+f*t;for(let m=t>0?0:d.length-1,$=t>0?d.length:-1;m!=$;m+=t){let g=o.indexOf(d[m]);if(!(g<0||n.resolveInner(p+m,1).type!=r))if(g%2==0==t>0)c++;else{if(c==1)return{start:l,end:{from:p+m,to:p+m+1},matched:g>>1==a>>1};c--}}t>0&&(f+=d.length)}return h.done?{start:l,matched:!1}:null}function _h(i,e,t,n=0,r=0){e==null&&(e=i.search(/[^\s\u00a0]/),e==-1&&(e=i.length));let s=r;for(let o=n;o=this.string.length}sol(){return this.pos==0}peek(){return this.string.charAt(this.pos)||void 0}next(){if(this.post}eatSpace(){let e=this.pos;for(;/[\s\u00a0]/.test(this.string.charAt(this.pos));)++this.pos;return this.pos>e}skipToEnd(){this.pos=this.string.length}skipTo(e){let t=this.string.indexOf(e,this.pos);if(t>-1)return this.pos=t,!0}backUp(e){this.pos-=e}column(){return this.lastColumnPosn?o.toLowerCase():o,s=this.string.substr(this.pos,e.length);return r(s)==r(e)?(t!==!1&&(this.pos+=e.length),!0):null}else{let r=this.string.slice(this.pos).match(e);return r&&r.index>0?null:(r&&t!==!1&&(this.pos+=r[0].length),r)}}current(){return this.string.slice(this.start,this.pos)}};function i$(i){return{name:i.name||"",token:i.token,blankLine:i.blankLine||(()=>{}),startState:i.startState||(()=>!0),copyState:i.copyState||n$,indent:i.indent||(()=>null),languageData:i.languageData||{},tokenTable:i.tokenTable||Lo}}function n$(i){if(typeof i!="object")return i;let e={};for(let t in i){let n=i[t];e[t]=n instanceof Array?n.slice():n}return e}var Uh=new WeakMap,zr=class i extends fe{constructor(e){let t=ki(e.languageData),n=i$(e),r,s=new class extends Qt{createParse(o,O,a){return new Eo(r,o,O,a)}};super(t,s,[Ih.of((o,O)=>this.getIndent(o,O))],e.name),this.topNode=O$(t),r=this,this.streamParser=n,this.stateAfter=new R({perNode:!0}),this.tokenTable=e.tokenTable?new Zr(n.tokenTable):o$}static define(e){return new i(e)}getIndent(e,t){let n=M(e.state),r=n.resolve(t);for(;r&&r.type!=this.topNode;)r=r.parent;if(!r)return null;let s,{overrideIndentation:o}=e.options;o&&(s=Uh.get(e.state),s!=null&&s1e4)return null;for(;a=n&&t+e.length<=r&&e.prop(i.stateAfter);if(s)return{state:i.streamParser.copyState(s),pos:t+e.length};for(let o=e.children.length-1;o>=0;o--){let O=e.children[o],a=t+e.positions[o],l=O instanceof q&&a=e.length)return e;!r&&e.type==i.topNode&&(r=!0);for(let s=e.children.length-1;s>=0;s--){let o=e.positions[s],O=e.children[s],a;if(ot&&Io(i,r.tree,0-r.offset,t,o),a;if(O&&(a=tc(i,r.tree,t+r.offset,O.pos+r.offset,!1)))return{state:O.state,tree:a}}return{state:i.streamParser.startState(n?Vt(n):4),tree:q.empty}}var Eo=class{constructor(e,t,n,r){this.lang=e,this.input=t,this.fragments=n,this.ranges=r,this.stoppedAt=null,this.chunks=[],this.chunkPos=[],this.chunk=[],this.chunkReused=void 0,this.rangeIndex=0,this.to=r[r.length-1].to;let s=ei.get(),o=r[0].from,{state:O,tree:a}=r$(e,n,o,s?.state);this.state=O,this.parsedPos=this.chunkStart=o+a.length;for(let l=0;l=t?this.finish():e&&this.parsedPos>=e.viewport.to?(e.skipUntilInView(this.parsedPos,t),this.finish()):null}stopAt(e){this.stoppedAt=e}lineAfter(e){let t=this.input.chunk(e);if(this.input.lineChunks)t==` `&&(t="");else{let n=t.indexOf(` -`);n>-1&&(t=t.slice(0,n))}return e+t.length<=this.to?t:t.slice(0,this.to-e)}nextLine(){let e=this.parsedPos,t=this.lineAfter(e),n=e+t.length;for(let r=this.rangeIndex;;){let s=this.ranges[r].to;if(s>=n||(t=t.slice(0,s-(n-t.length)),r++,r==this.ranges.length))break;let o=this.ranges[r].from,O=this.lineAfter(o);t+=O,n=o+O.length}return{line:t,end:n}}skipGapsTo(e,t,n){for(;;){let r=this.ranges[this.rangeIndex].to,s=e+t;if(n>0?r>s:r>=s)break;let o=this.ranges[++this.rangeIndex].from;t+=o-r}return t}moveRangeIndex(){for(;this.ranges[this.rangeIndex].to1){s=this.skipGapsTo(t,s,1),t+=s;let o=this.chunk.length;s=this.skipGapsTo(n,s,-1),n+=s,r+=this.chunk.length-o}return this.chunk.push(e,t,n,r),s}parseLine(e){let{line:t,end:n}=this.nextLine(),r=0,{streamParser:s}=this.lang,o=new wr(t,e?e.state.tabSize:4,e?Wt(e.state):2);if(o.eol())s.blankLine(this.state,o.indentUnit);else for(;!o.eol();){let O=Dh(s.token,o,this.state);if(O&&(r=this.emitToken(this.lang.tokenTable.resolve(O),this.parsedPos+o.start,this.parsedPos+o.pos,4,r)),o.start>1e4)break}this.parsedPos=n,this.moveRangeIndex(),this.parsedPose.start)return r}throw new Error("Stream parser failed to advance stream.")}var Go=Object.create(null),hn=[F.none],Fm=new pt(hn),Yh=[],Vh=Object.create(null),Nh=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"]])Nh[i]=Fh(Go,e);var vr=class{constructor(e){this.extra=e,this.table=Object.assign(Object.create(null),Nh)}resolve(e){return e?this.table[e]||(this.table[e]=Fh(this.extra,e)):0}},Hm=new vr(Go);function Ro(i,e){Yh.indexOf(i)>-1||(Yh.push(i),console.warn(e))}function Fh(i,e){let t=[];for(let O of e.split(" ")){let l=[];for(let a of O.split(".")){let h=i[a]||u[a];h?typeof h=="function"?l.length?l=l.map(h):Ro(a,`Modifier ${a} used at start of tag`):l.length?Ro(a,`Tag ${a} used as modifier`):l=Array.isArray(h)?h:[h]:Ro(a,`Unknown highlighting tag ${a}`)}for(let a of l)t.push(a)}if(!t.length)return 0;let n=e.replace(/ /g,"_"),r=n+" "+t.map(O=>O.id),s=Vh[r];if(s)return s.id;let o=Vh[r]=F.define({id:hn.length,name:n,props:[ne({[n]:t})]});return hn.push(o),o.id}function Km(i){let e=F.define({id:hn.length,name:"Document",props:[$t.add(()=>i)],top:!0});return hn.push(e),e}var Jm=i=>{let{state:e}=i,t=e.doc.lineAt(e.selection.main.from),n=Fo(i.state,t.from);return n.line?eg(i):n.block?ig(i):!1};function No(i,e){return({state:t,dispatch:n})=>{if(t.readOnly)return!1;let r=i(e,t);return r?(n(t.update(r)),!0):!1}}var eg=No(sg,0);var tg=No(rc,0);var ig=No((i,e)=>rc(i,e,rg(e)),0);function Fo(i,e){let t=i.languageDataAt("commentTokens",e);return t.length?t[0]:{}}var un=50;function ng(i,{open:e,close:t},n,r){let s=i.sliceDoc(n-un,n),o=i.sliceDoc(r,r+un),O=/\s*$/.exec(s)[0].length,l=/^\s*/.exec(o)[0].length,a=s.length-O;if(s.slice(a-e.length,a)==e&&o.slice(l,l+t.length)==t)return{open:{pos:n-O,margin:O&&1},close:{pos:r+l,margin:l&&1}};let h,c;r-n<=2*un?h=c=i.sliceDoc(n,r):(h=i.sliceDoc(n,n+un),c=i.sliceDoc(r-un,r));let f=/^\s*/.exec(h)[0].length,d=/\s*$/.exec(c)[0].length,p=c.length-d-t.length;return h.slice(f,f+e.length)==e&&c.slice(p,p+t.length)==t?{open:{pos:n+f+e.length,margin:/\s/.test(h.charAt(f+e.length))?1:0},close:{pos:r-d-t.length,margin:/\s/.test(c.charAt(p-1))?1:0}}:null}function rg(i){let e=[];for(let t of i.selection.ranges){let n=i.doc.lineAt(t.from),r=t.to<=n.to?n:i.doc.lineAt(t.to),s=e.length-1;s>=0&&e[s].to>n.from?e[s].to=r.to:e.push({from:n.from+/^\s*/.exec(n.text)[0].length,to:r.to})}return e}function rc(i,e,t=e.selection.ranges){let n=t.map(s=>Fo(e,s.from).block);if(!n.every(s=>s))return null;let r=t.map((s,o)=>ng(e,n[o],s.from,s.to));if(i!=2&&!r.every(s=>s))return{changes:e.changes(t.map((s,o)=>r[o]?[]:[{from:s.from,insert:n[o].open+" "},{from:s.to,insert:" "+n[o].close}]))};if(i!=1&&r.some(s=>s)){let s=[];for(let o=0,O;or&&(s==o||o>c.from)){r=c.from;let f=/^\s*/.exec(c.text)[0].length,d=f==c.length,p=c.text.slice(f,f+a.length)==a?f:-1;fs.comment<0&&(!s.empty||s.single))){let s=[];for(let{line:O,token:l,indent:a,empty:h,single:c}of n)(c||!h)&&s.push({from:O.from+a,insert:l+" "});let o=e.changes(s);return{changes:o,selection:e.selection.map(o,1)}}else if(i!=1&&n.some(s=>s.comment>=0)){let s=[];for(let{line:o,comment:O,token:l}of n)if(O>=0){let a=o.from+O,h=a+l.length;o.text[h-o.from]==" "&&h++,s.push({from:a,to:h})}return{changes:s}}return null}var Io=ke.define(),og=ke.define(),Og=W.define(),sc=W.define({combine(i){return bt(i,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(n,r)=>e(n,r)||t(n,r)})}}),oc=$e.define({create(){return Jt.empty},update(i,e){let t=e.state.facet(sc),n=e.annotation(Io);if(n){let l=Fe.fromTransaction(e,n.selection),a=n.side,h=a==0?i.undone:i.done;return l?h=Wr(h,h.length,t.minDepth,l):h=hc(h,e.startState.selection),new Jt(a==0?n.rest:h,a==0?h:n.rest)}let r=e.annotation(og);if((r=="full"||r=="before")&&(i=i.isolate()),e.annotation(se.addToHistory)===!1)return e.changes.empty?i:i.addMapping(e.changes.desc);let s=Fe.fromTransaction(e),o=e.annotation(se.time),O=e.annotation(se.userEvent);return s?i=i.addChanges(s,o,O,t,e):e.selection&&(i=i.addSelection(e.startState.selection,o,O,t.newGroupDelay)),(r=="full"||r=="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 Jt(i.done.map(Fe.fromJSON),i.undone.map(Fe.fromJSON))}});function Oc(i={}){return[oc,sc.of(i),v.domEventHandlers({beforeinput(e,t){let n=e.inputType=="historyUndo"?lc:e.inputType=="historyRedo"?Lo: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 r=t.field(oc,!1);if(!r)return!1;let s=r.pop(i,t,e);return s?(n(s),!0):!1}}var lc=Rr(0,!1),Lo=Rr(1,!1),lg=Rr(0,!0),ag=Rr(1,!0);var Fe=class i{constructor(e,t,n,r,s){this.changes=e,this.effects=t,this.mapped=n,this.startSelection=r,this.selectionsAfter=s}setSelAfter(e){return new i(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(r=>r.toJSON())}}static fromJSON(e){return new i(e.changes&&ge.fromJSON(e.changes),[],e.mapped&&ct.fromJSON(e.mapped),e.startSelection&&S.fromJSON(e.startSelection),e.selectionsAfter.map(S.fromJSON))}static fromTransaction(e,t){let n=Ee;for(let r of e.startState.facet(Og)){let s=r(e);s.length&&(n=n.concat(s))}return!n.length&&e.changes.empty?null:new i(e.changes.invert(e.startState.doc),n,void 0,t||e.startState.selection,Ee)}static selection(e){return new i(void 0,Ee,void 0,void 0,e)}};function Wr(i,e,t,n){let r=e+1>t+20?e-t-1:0,s=i.slice(r,e);return s.push(n),s}function hg(i,e){let t=[],n=!1;return i.iterChangedRanges((r,s)=>t.push(r,s)),e.iterChangedRanges((r,s,o,O)=>{for(let l=0;l=a&&o<=h&&(n=!0)}}),n}function cg(i,e){return i.ranges.length==e.ranges.length&&i.ranges.filter((t,n)=>t.empty!=e.ranges[n].empty).length===0}function ac(i,e){return i.length?e.length?i.concat(e):i:e}var Ee=[],fg=200;function hc(i,e){if(i.length){let t=i[i.length-1],n=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-fg));return n.length&&n[n.length-1].eq(e)?i:(n.push(e),Wr(i,i.length-1,1e9,t.setSelAfter(n)))}else return[Fe.selection([e])]}function ug(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 Mo(i,e){if(!i.length)return i;let t=i.length,n=Ee;for(;t;){let r=dg(i[t-1],e,n);if(r.changes&&!r.changes.empty||r.effects.length){let s=i.slice(0,t);return s[t-1]=r,s}else e=r.mapped,t--,n=r.selectionsAfter}return n.length?[Fe.selection(n)]:Ee}function dg(i,e,t){let n=ac(i.selectionsAfter.length?i.selectionsAfter.map(O=>O.map(e)):Ee,t);if(!i.changes)return Fe.selection(n);let r=i.changes.map(e),s=e.mapDesc(i.changes,!0),o=i.mapped?i.mapped.composeDesc(s):s;return new Fe(r,E.mapEffects(i.effects,e),o,i.startSelection.map(s),n)}var pg=/^(input\.type|delete)($|\.)/,Jt=class i{constructor(e,t,n=0,r=void 0){this.done=e,this.undone=t,this.prevTime=n,this.prevUserEvent=r}isolate(){return this.prevTime?new i(this.done,this.undone):this}addChanges(e,t,n,r,s){let o=this.done,O=o[o.length-1];return O&&O.changes&&!O.changes.empty&&e.changes&&(!n||pg.test(n))&&(!O.selectionsAfter.length&&t-this.prevTime0&&t-this.prevTimet.empty?i.moveByChar(t,e):Zr(t,e))}function pe(i){return i.textDirectionAt(i.state.selection.main.head)==K.LTR}var uc=i=>fc(i,!pe(i)),dc=i=>fc(i,pe(i));function pc(i,e){return He(i,t=>t.empty?i.moveByGroup(t,e):Zr(t,e))}var mg=i=>pc(i,!pe(i)),gg=i=>pc(i,pe(i));var S0=typeof Intl<"u"&&Intl.Segmenter?new Intl.Segmenter(void 0,{granularity:"word"}):null;function $g(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 Yr(i,e,t){let n=A(i).resolveInner(e.head),r=t?R.closedBy:R.openedBy;for(let l=e.head;;){let a=t?n.childAfter(l):n.childBefore(l);if(!a)break;$g(i,a,r)?n=a:l=t?a.to:a.from}let s=n.type.prop(r),o,O;return s&&(o=t?Ne(i,n.from,1):Ne(i,n.to,-1))&&o.matched?O=t?o.end.to:o.end.from:O=t?n.to:n.from,S.cursor(O,t?-1:1)}var Sg=i=>He(i,e=>Yr(i.state,e,!pe(i))),Qg=i=>He(i,e=>Yr(i.state,e,pe(i)));function mc(i,e){return He(i,t=>{if(!t.empty)return Zr(t,e);let n=i.moveVertically(t,e);return n.head!=t.head?n:i.moveToLineBoundary(t,e)})}var gc=i=>mc(i,!1),$c=i=>mc(i,!0);function Sc(i){let e=i.scrollDOM.clientHeighto.empty?i.moveVertically(o,e,t.height):Zr(o,e));if(r.eq(n.selection))return!1;let s;if(t.selfScroll){let o=i.coordsAtPos(n.selection.main.head),O=i.scrollDOM.getBoundingClientRect(),l=O.top+t.marginTop,a=O.bottom-t.marginBottom;o&&o.top>l&&o.bottomQc(i,!1),Bo=i=>Qc(i,!0);function Yt(i,e,t){let n=i.lineBlockAt(e.head),r=i.moveToLineBoundary(e,t);if(r.head==e.head&&r.head!=(t?n.to:n.from)&&(r=i.moveToLineBoundary(e,t,!1)),!t&&r.head==n.from&&n.length){let s=/^\s*/.exec(i.state.sliceDoc(n.from,Math.min(n.from+100,n.to)))[0].length;s&&e.head!=n.from+s&&(r=S.cursor(n.from+s))}return r}var yg=i=>He(i,e=>Yt(i,e,!0)),bg=i=>He(i,e=>Yt(i,e,!1)),Pg=i=>He(i,e=>Yt(i,e,!pe(i))),xg=i=>He(i,e=>Yt(i,e,pe(i))),wg=i=>He(i,e=>S.cursor(i.lineBlockAt(e.head).from,1)),kg=i=>He(i,e=>S.cursor(i.lineBlockAt(e.head).to,-1));function vg(i,e,t){let n=!1,r=xi(i.selection,s=>{let o=Ne(i,s.head,-1)||Ne(i,s.head,1)||s.head>0&&Ne(i,s.head-1,1)||s.headvg(i,e,!1);function Ge(i,e){let t=xi(i.state.selection,n=>{let r=e(n);return S.range(n.anchor,r.head,r.goalColumn,r.bidiLevel||void 0)});return t.eq(i.state.selection)?!1:(i.dispatch(ht(i.state,t)),!0)}function yc(i,e){return Ge(i,t=>i.moveByChar(t,e))}var bc=i=>yc(i,!pe(i)),Pc=i=>yc(i,pe(i));function xc(i,e){return Ge(i,t=>i.moveByGroup(t,e))}var zg=i=>xc(i,!pe(i)),Xg=i=>xc(i,pe(i));var Wg=i=>Ge(i,e=>Yr(i.state,e,!pe(i))),Rg=i=>Ge(i,e=>Yr(i.state,e,pe(i)));function wc(i,e){return Ge(i,t=>i.moveVertically(t,e))}var kc=i=>wc(i,!1),vc=i=>wc(i,!0);function Tc(i,e){return Ge(i,t=>i.moveVertically(t,e,Sc(i).height))}var Kh=i=>Tc(i,!1),Jh=i=>Tc(i,!0),Zg=i=>Ge(i,e=>Yt(i,e,!0)),Yg=i=>Ge(i,e=>Yt(i,e,!1)),Vg=i=>Ge(i,e=>Yt(i,e,!pe(i))),Cg=i=>Ge(i,e=>Yt(i,e,pe(i))),qg=i=>Ge(i,e=>S.cursor(i.lineBlockAt(e.head).from)),Ug=i=>Ge(i,e=>S.cursor(i.lineBlockAt(e.head).to)),ec=({state:i,dispatch:e})=>(e(ht(i,{anchor:0})),!0),tc=({state:i,dispatch:e})=>(e(ht(i,{anchor:i.doc.length})),!0),ic=({state:i,dispatch:e})=>(e(ht(i,{anchor:i.selection.main.anchor,head:0})),!0),nc=({state:i,dispatch:e})=>(e(ht(i,{anchor:i.selection.main.anchor,head:i.doc.length})),!0),_g=({state:i,dispatch:e})=>(e(i.update({selection:{anchor:0,head:i.doc.length},userEvent:"select"})),!0),Ag=({state:i,dispatch:e})=>{let t=Vr(i).map(({from:n,to:r})=>S.range(n,Math.min(r+1,i.doc.length)));return e(i.update({selection:S.create(t),userEvent:"select"})),!0},jg=({state:i,dispatch:e})=>{let t=xi(i.selection,n=>{var r;let s=A(i).resolveStack(n.from,1);for(let o=s;o;o=o.next){let{node:O}=o;if((O.from=n.to||O.to>n.to&&O.from<=n.from)&&(!((r=O.parent)===null||r===void 0)&&r.parent))return S.range(O.to,O.from)}return n});return e(ht(i,t)),!0},Eg=({state:i,dispatch:e})=>{let t=i.selection,n=null;return t.ranges.length>1?n=S.create([t.main]):t.main.empty||(n=S.create([S.cursor(t.main.head)])),n?(e(ht(i,n)),!0):!1};function dn(i,e){if(i.state.readOnly)return!1;let t="delete.selection",{state:n}=i,r=n.changeByRange(s=>{let{from:o,to:O}=s;if(o==O){let l=e(s);lo&&(t="delete.forward",l=Xr(i,l,!0)),o=Math.min(o,l),O=Math.max(O,l)}else o=Xr(i,o,!1),O=Xr(i,O,!0);return o==O?{range:s}:{changes:{from:o,to:O},range:S.cursor(o,or(i)))n.between(e,e,(r,s)=>{re&&(e=t?s:r)});return e}var zc=(i,e)=>dn(i,t=>{let n=t.from,{state:r}=i,s=r.doc.lineAt(n),o,O;if(!e&&n>s.from&&nzc(i,!1),Xc=i=>zc(i,!0),Wc=(i,e)=>dn(i,t=>{let n=t.head,{state:r}=i,s=r.doc.lineAt(n),o=r.charCategorizer(n);for(let O=null;;){if(n==(e?s.to:s.from)){n==t.head&&s.number!=(e?r.doc.lines:1)&&(n+=e?1:-1);break}let l=le(s.text,n-s.from,e)+s.from,a=s.text.slice(Math.min(n,l)-s.from,Math.max(n,l)-s.from),h=o(a);if(O!=null&&h!=O)break;(a!=" "||n!=t.head)&&(O=h),n=l}return n}),Rc=i=>Wc(i,!1),Gg=i=>Wc(i,!0),Mg=i=>dn(i,e=>{let t=i.lineBlockAt(e.head).to;return e.headdn(i,e=>{let t=i.moveToLineBoundary(e,!1).head;return e.head>t?t:Math.max(0,e.head-1)}),Lg=i=>dn(i,e=>{let t=i.moveToLineBoundary(e,!0).head;return e.head{if(i.readOnly)return!1;let t=i.changeByRange(n=>({changes:{from:n.from,to:n.to,insert:q.of(["",""])},range:S.cursor(n.from)}));return e(i.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},Dg=({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 r=n.from,s=i.doc.lineAt(r),o=r==s.from?r-1:le(s.text,r-s.from,!1)+s.from,O=r==s.to?r+1:le(s.text,r-s.from,!0)+s.from;return{changes:{from:o,to:O,insert:i.doc.slice(r,O).append(i.doc.slice(o,r))},range:S.cursor(O)}});return t.changes.empty?!1:(e(i.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function Vr(i){let e=[],t=-1;for(let n of i.selection.ranges){let r=i.doc.lineAt(n.from),s=i.doc.lineAt(n.to);if(!n.empty&&n.to==s.from&&(s=i.doc.lineAt(n.to-1)),t>=r.number){let o=e[e.length-1];o.to=s.to,o.ranges.push(n)}else e.push({from:r.from,to:s.to,ranges:[n]});t=s.number+1}return e}function Zc(i,e,t){if(i.readOnly)return!1;let n=[],r=[];for(let s of Vr(i)){if(t?s.to==i.doc.length:s.from==0)continue;let o=i.doc.lineAt(t?s.to+1:s.from-1),O=o.length+1;if(t){n.push({from:s.to,to:o.to},{from:s.from,insert:o.text+i.lineBreak});for(let l of s.ranges)r.push(S.range(Math.min(i.doc.length,l.anchor+O),Math.min(i.doc.length,l.head+O)))}else{n.push({from:o.from,to:s.from},{from:s.to,insert:i.lineBreak+o.text});for(let l of s.ranges)r.push(S.range(l.anchor-O,l.head-O))}}return n.length?(e(i.update({changes:n,scrollIntoView:!0,selection:S.create(r,i.selection.mainIndex),userEvent:"move.line"})),!0):!1}var Ng=({state:i,dispatch:e})=>Zc(i,e,!1),Fg=({state:i,dispatch:e})=>Zc(i,e,!0);function Yc(i,e,t){if(i.readOnly)return!1;let n=[];for(let r of Vr(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)});return e(i.update({changes:n,scrollIntoView:!0,userEvent:"input.copyline"})),!0}var Hg=({state:i,dispatch:e})=>Yc(i,e,!1),Kg=({state:i,dispatch:e})=>Yc(i,e,!0),Jg=i=>{if(i.state.readOnly)return!1;let{state:e}=i,t=e.changes(Vr(e).map(({from:r,to:s})=>(r>0?r--:si.moveVertically(r,!0)).map(t);return i.dispatch({changes:t,selection:n,scrollIntoView:!0,userEvent:"delete.line"}),!0};function e$(i,e){if(/\(\)|\[\]|\{\}/.test(i.sliceDoc(e-1,e+1)))return{from:e,to:e};let t=A(i).resolveInner(e),n=t.childBefore(e),r=t.childAfter(e),s;return n&&r&&n.to<=e&&r.from>=e&&(s=n.type.prop(R.closedBy))&&s.indexOf(r.name)>-1&&i.doc.lineAt(n.to).from==i.doc.lineAt(r.from).from&&!/\S/.test(i.sliceDoc(n.to,r.from))?{from:n.to,to:r.from}:null}var t$=Vc(!1),i$=Vc(!0);function Vc(i){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange(r=>{let{from:s,to:o}=r,O=e.doc.lineAt(s),l=!i&&s==o&&e$(e,s);i&&(s=o=(o<=O.to?O:e.doc.lineAt(o)).to);let a=new Kt(e,{simulateBreak:s,simulateDoubleBreak:!!l}),h=Ao(a,s);for(h==null&&(h=ve(/^\s*/.exec(e.doc.lineAt(s).text)[0],e.tabSize));oO.from&&s{let r=[];for(let o=n.from;o<=n.to;){let O=i.doc.lineAt(o);O.number>t&&(n.empty||n.to>O.from)&&(e(O,r,n),t=O.number),o=O.to+1}let s=i.changes(r);return{changes:r,range:S.range(s.mapPos(n.anchor,1),s.mapPos(n.head,1))}})}var n$=({state:i,dispatch:e})=>{if(i.readOnly)return!1;let t=Object.create(null),n=new Kt(i,{overrideIndentation:s=>{let o=t[s];return o??-1}}),r=Ho(i,(s,o,O)=>{let l=Ao(n,s.from);if(l==null)return;/\S/.test(s.text)||(l=0);let a=/^\s*/.exec(s.text)[0],h=cn(i,l);(a!=h||O.fromi.readOnly?!1:(e(i.update(Ho(i,(t,n)=>{n.push({from:t.from,insert:i.facet(Rt)})}),{userEvent:"input.indent"})),!0),qc=({state:i,dispatch:e})=>i.readOnly?!1:(e(i.update(Ho(i,(t,n)=>{let r=/^\s*/.exec(t.text)[0];if(!r)return;let s=ve(r,i.tabSize),o=0,O=cn(i,Math.max(0,s-Wt(i)));for(;o({mac:i.key,run:i.run,shift:i.shift}))),Ko=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:Sg,shift:Wg},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:Qg,shift:Rg},{key:"Alt-ArrowUp",run:Ng},{key:"Shift-Alt-ArrowUp",run:Hg},{key:"Alt-ArrowDown",run:Fg},{key:"Shift-Alt-ArrowDown",run:Kg},{key:"Escape",run:Eg},{key:"Mod-Enter",run:i$},{key:"Alt-l",mac:"Ctrl-l",run:Ag},{key:"Mod-i",run:jg,preventDefault:!0},{key:"Mod-[",run:qc},{key:"Mod-]",run:Cc},{key:"Mod-Alt-\\",run:n$},{key:"Shift-Mod-k",run:Jg},{key:"Shift-Mod-\\",run:Tg},{key:"Mod-/",run:Jm},{key:"Alt-A",run:tg}].concat(s$),Uc={key:"Tab",run:Cc,shift:qc};var o$="#e5c07b",_c="#e06c75",O$="#56b6c2",l$="#ffffff",Cr="#abb2bf",eO="#7d8799",a$="#61afef",h$="#98c379",Ac="#d19a66",c$="#c678dd",f$="#21252b",jc="#2c313a",Ec="#282c34",Jo="#353a42",u$="#3E4451",Gc="#528bff";var Mc=v.theme({"&":{color:Cr,backgroundColor:Ec},".cm-content":{caretColor:Gc},".cm-cursor, .cm-dropCursor":{borderLeftColor:Gc},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:u$},".cm-panels":{backgroundColor:f$,color:Cr},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:Ec,color:eO,border:"none"},".cm-activeLineGutter":{backgroundColor:jc},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:Jo},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:Jo,borderBottomColor:Jo},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:jc,color:Cr}}},{dark:!0}),Ic=St.define([{tag:u.keyword,color:c$},{tag:[u.name,u.deleted,u.character,u.propertyName,u.macroName],color:_c},{tag:[u.function(u.variableName),u.labelName],color:a$},{tag:[u.color,u.constant(u.name),u.standard(u.name)],color:Ac},{tag:[u.definition(u.name),u.separator],color:Cr},{tag:[u.typeName,u.className,u.number,u.changed,u.annotation,u.modifier,u.self,u.namespace],color:o$},{tag:[u.operator,u.operatorKeyword,u.url,u.escape,u.regexp,u.link,u.special(u.string)],color:O$},{tag:[u.meta,u.comment],color:eO},{tag:u.strong,fontWeight:"bold"},{tag:u.emphasis,fontStyle:"italic"},{tag:u.strikethrough,textDecoration:"line-through"},{tag:u.link,color:eO,textDecoration:"underline"},{tag:u.heading,fontWeight:"bold",color:_c},{tag:[u.atom,u.bool,u.special(u.variableName)],color:Ac},{tag:[u.processingInstruction,u.string,u.inserted],color:h$},{tag:u.invalid,color:l$}]);var d$=St.define([{tag:u.meta,color:"#388938"},{tag:u.link,textDecoration:"underline"},{tag:u.heading,textDecoration:"underline",fontWeight:"bold"},{tag:u.emphasis,fontStyle:"italic"},{tag:u.strong,fontWeight:"bold"},{tag:u.strikethrough,textDecoration:"line-through"},{tag:u.keyword,color:"#708"},{tag:[u.atom,u.bool,u.url,u.contentSeparator,u.labelName],color:"#219"},{tag:[u.literal,u.inserted],color:"#164"},{tag:[u.string,u.deleted],color:"#a11"},{tag:[u.regexp,u.escape,u.special(u.string)],color:"#e40"},{tag:u.definition(u.variableName),color:"#00f"},{tag:u.local(u.variableName),color:"#30a"},{tag:[u.typeName,u.namespace],color:"#085"},{tag:u.className,color:"#167"},{tag:[u.special(u.variableName),u.macroName],color:"#256"},{tag:u.definition(u.propertyName),color:"#00c"},{tag:u.compareOperator,color:"#708"},{tag:u.comment,color:"#940"},{tag:u.invalid,color:"#f00"}]),p$={"&":{backgroundColor:"#FFF",color:"#000"},"&.cm-focused":{outline:"none"},".cm-line":{lineHeight:"1.6"}};function Lc(i){let e=document.documentElement.classList.contains("dark-mode"),t=e?Mc:v.theme(p$),n=e?Ic:d$,r={darkModeActive:e,registerViewTheme(s){let o=s();o&&(t=v.theme(o))},registerHighlightStyle(s){let o=s(u)||[];o.length&&(n=St.define(o))}};return window.$events.emitPublic(i,"library-cm6::configure-theme",r),[t,jo(n)]}function Bc(i){return[Lc(i),mh(),ch(),dh(),Lh(),ph()]}function m$(){let i=new ft,e={focus(t,n){n.dispatch({effects:i.reconfigure([fo(),co()])})},blur(t,n){n.dispatch({effects:i.reconfigure([])})}};return[i.of([]),v.domEventHandlers(e)]}function tO(i){return[...Bc(i),m$(),ot.of([...Ko]),j.readOnly.of(!0)]}function qr(i){return[...Bc(i),fo(),co(),Oc(),ot.of([...Ko,...cc,Uc]),v.lineWrapping]}var rO=class i{constructor(e,t,n,r,s,o,O,l,a,h=0,c){this.p=e,this.stack=t,this.state=n,this.reducePos=r,this.pos=s,this.score=o,this.buffer=O,this.bufferBase=l,this.curContext=a,this.lookAhead=h,this.parent=c}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 r=e.parser.context;return new i(e,[],t,n,n,0,[],0,r?new Ur(r,r.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,r=e&65535,{parser:s}=this.p,o=s.dynamicPrecedence(r);if(o&&(this.score+=o),n==0){this.pushState(s.getGoto(this.state,r,!0),this.reducePos),r=2e3&&!(!((t=this.p.parser.nodeSet.types[r])===null||t===void 0)&&t.isAnonymous)&&(l==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=a):this.p.lastBigReductionSizeO;)this.stack.pop();this.reduceContext(r,l)}storeNode(e,t,n,r=4,s=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]0&&o.buffer[O-4]==0&&o.buffer[O-1]>-1){if(t==n)return;if(o.buffer[O-2]>=t){o.buffer[O-2]=n;return}}}if(!s||this.pos==n)this.buffer.push(e,t,n,r);else{let o=this.buffer.length;if(o>0&&this.buffer[o-4]!=0)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,r>4&&(r-=4);this.buffer[o]=e,this.buffer[o+1]=t,this.buffer[o+2]=n,this.buffer[o+3]=r}}shift(e,t,n,r){if(e&131072)this.pushState(e&65535,this.pos);else if(e&262144)this.pos=r,this.shiftContext(t,n),t<=this.p.parser.maxNode&&this.buffer.push(t,n,r,4);else{let s=e,{parser:o}=this.p;(r>this.pos||t<=o.maxNode)&&(this.pos=r,o.stateFlag(s,1)||(this.reducePos=r)),this.pushState(s,n),this.shiftContext(t,n),t<=o.maxNode&&this.buffer.push(t,n,r,4)}}apply(e,t,n,r){e&65536?this.reduce(e):this.shift(e,t,n,r)}useNode(e,t){let n=this.p.reused.length-1;(n<0||this.p.reused[n]!=e)&&(this.p.reused.push(e),n++);let r=this.pos;this.reducePos=this.pos=r+e.length,this.pushState(t,r),this.buffer.push(n,r,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>0&&e.buffer[t-2]>e.reducePos;)t-=4;let n=e.buffer.slice(t),r=e.bufferBase+t;for(;e&&r==e.bufferBase;)e=e.parent;return new i(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,n,r,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 sO(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))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 r=[];for(let s=0,o;sl&1&&O==o)||r.push(t[s],o)}t=r}let n=[];for(let r=0;r>19,r=t&65535,s=this.stack.length-n*3;if(s<0||e.getGoto(this.stack[s],r,!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=(r,s)=>{if(!t.includes(r))return t.push(r),e.allActions(r,o=>{if(!(o&393216))if(o&65536){let O=(o>>19)-s;if(O>1){let l=o&65535,a=this.stack.length-O*3;if(a>=0&&e.getGoto(this.stack[a],l,!1)>=0)return O<<19|65536|l}}else{let O=n(o,s+1);if(O!=null)return O}})};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;tthis.lookAhead&&(this.emitLookAhead(),this.lookAhead=e)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}},Ur=class{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}},sO=class{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 r=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=r}},oO=class i{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 i(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 i(this.stack,this.pos,this.index)}};function pn(i,e=Uint16Array){if(typeof i!="string")return i;let t=null;for(let n=0,r=0;n=92&&o--,o>=34&&o--;let l=o-32;if(l>=46&&(l-=46,O=!0),s+=l,O)break;s*=46}t?t[r++]=s:t=new e(s)}return t}var wi=class{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}},Dc=new wi,OO=class{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=Dc,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,r=this.rangeIndex,s=this.pos+e;for(;sn.to:s>=n.to;){if(r==this.ranges.length-1)return null;let o=this.ranges[++r];s+=o.from-n.to,n=o}return s}clipPos(e){if(e>=this.range.from&&ee)return Math.max(e,t.from);return this.end}peek(e){let t=this.chunkOff+e,n,r;if(t>=0&&t=this.chunk2Pos&&nO.to&&(this.chunk2=this.chunk2.slice(0,O.to-n)),r=this.chunk2.charCodeAt(0)}}return n>=this.token.lookAhead&&(this.token.lookAhead=n+1),r}acceptToken(e,t=0){let n=t?this.resolveOffset(t,-1):this.pos;if(n==null||n=this.chunk2Pos&&this.posthis.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=Dc,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&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 r of this.ranges){if(r.from>=t)break;r.to>e&&(n+=this.input.read(Math.max(r.from,e),Math.min(r.to,t)))}return n}},Vt=class{constructor(e,t){this.data=e,this.id=t}token(e,t){let{parser:n}=t.p;Jc(this.data,e,t,this.id,n.data,n.tokenPrecTable)}};Vt.prototype.contextual=Vt.prototype.fallback=Vt.prototype.extend=!1;var Ct=class{constructor(e,t,n){this.precTable=t,this.elseToken=n,this.data=typeof e=="string"?pn(e):e}token(e,t){let n=e.pos,r=0;for(;;){let s=e.next<0,o=e.resolveOffset(1,1);if(Jc(this.data,e,t,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(s||r++,o==null)break;e.reset(o,e.token)}r&&(e.reset(n,e.token),e.acceptToken(this.elseToken,r))}};Ct.prototype.contextual=Vt.prototype.fallback=Vt.prototype.extend=!1;var H=class{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}};function Jc(i,e,t,n,r,s){let o=0,O=1<0){let p=i[d];if(l.allows(p)&&(e.token.value==-1||e.token.value==p||$$(p,e.token.value,r,s))){e.acceptToken(p);break}}let h=e.next,c=0,f=i[o+2];if(e.next<0&&f>c&&i[a+f*3-3]==65535&&i[a+f*3-3]==65535){o=i[a+f*3-1];continue e}for(;c>1,p=a+d+(d<<1),m=i[p],g=i[p+1]||65536;if(h=g)c=d+1;else{o=i[p+2],e.advance();continue e}}break}}function Nc(i,e,t){for(let n=e,r;(r=i[n])!=65535;n++)if(r==t)return n-e;return-1}function $$(i,e,t,n){let r=Nc(t,n,e);return r<0||Nc(t,n,i)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}}var lO=class{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?Fc(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?Fc(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(ee)return this.nextStart=o,null;if(s instanceof Y){if(o==e){if(o=Math.max(this.safeFrom,e)&&(this.trees.push(s),this.start.push(o),this.index.push(0))}else this.index[t]++,this.nextStart=o+s.length}}},aO=class{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(n=>new wi)}getActions(e){let t=0,n=null,{parser:r}=e.p,{tokenizers:s}=r,o=r.stateSlot(e.state,3),O=e.curContext?e.curContext.hash:0,l=0;for(let a=0;ac.end+25&&(l=Math.max(c.lookAhead,l)),c.value!=0)){let f=t;if(c.extended>-1&&(t=this.addActions(e,c.extended,c.end,t)),t=this.addActions(e,c.value,c.end,t),!h.extend&&(n=c,t>f))break}}for(;this.actions.length>t;)this.actions.pop();return l&&e.setLookAhead(l),!n&&e.pos==this.stream.end&&(n=new wi,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 wi,{pos:n,p:r}=e;return t.start=n,t.end=Math.min(n+1,r.stream.end),t.value=n==r.stream.end?r.parser.eofTerm:0,t}updateCachedToken(e,t,n){let r=this.stream.clipPos(n.pos);if(t.token(this.stream.reset(r,e),n),e.value>-1){let{parser:s}=n.p;for(let o=0;o=0&&n.p.parser.dialect.allows(O>>1)){O&1?e.extended=O>>1:e.value=O>>1;break}}}else e.value=0,e.end=this.stream.clipPos(r+1)}putAction(e,t,n,r){for(let s=0;se.bufferLength*4?new lO(n,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,t=this.minStackPos,n=this.stacks=[],r,s;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;ot)n.push(O);else{if(this.advanceStack(O,n,e))continue;{r||(r=[],s=[]),r.push(O);let l=this.tokens.getMainToken(O);s.push(l.value,l.end)}}break}}if(!n.length){let o=r&&S$(r);if(o)return Ye&&console.log("Finish with "+this.stackID(o)),this.stackToTree(o);if(this.parser.strict)throw Ye&&r&&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&&r){let o=this.stoppedAt!=null&&r[0].pos>this.stoppedAt?r[0]:this.runRecovery(r,s,n);if(o)return Ye&&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((O,l)=>l.score-O.score);n.length>o;)n.pop();n.some(O=>O.reducePos>t)&&this.recovering--}else if(n.length>1){e:for(let o=0;o500&&a.buffer.length>500)if((O.score-a.score||O.buffer.length-a.buffer.length)>0)n.splice(l--,1);else{n.splice(o--,1);continue e}}}n.length>12&&n.splice(12,n.length-12)}this.minStackPos=n[0].pos;for(let o=1;o ":"";if(this.stoppedAt!=null&&r>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let a=e.curContext&&e.curContext.tracker.strict,h=a?e.curContext.hash:0;for(let c=this.fragments.nodeAt(r);c;){let f=this.parser.nodeSet.types[c.type.id]==c.type?s.getGoto(e.state,c.type.id):-1;if(f>-1&&c.length&&(!a||(c.prop(R.contextHash)||0)==h))return e.useNode(c,f),Ye&&console.log(o+this.stackID(e)+` (via reuse of ${s.getName(c.type.id)})`),!0;if(!(c instanceof Y)||c.children.length==0||c.positions[0]>0)break;let d=c.children[0];if(d instanceof Y&&c.positions[0]==0)c=d;else break}}let O=s.stateSlot(e.state,4);if(O>0)return e.reduce(O),Ye&&console.log(o+this.stackID(e)+` (via always-reduce ${s.getName(O&65535)})`),!0;if(e.stack.length>=9e3)for(;e.stack.length>6e3&&e.forceReduce(););let l=this.tokens.getActions(e);for(let a=0;ar?t.push(p):n.push(p)}return!1}advanceFully(e,t){let n=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>n)return Hc(e,t),!0}}runRecovery(e,t,n){let r=null,s=!1;for(let o=0;o ":"";if(O.deadEnd&&(s||(s=!0,O.restart(),Ye&&console.log(h+this.stackID(O)+" (restarted)"),this.advanceFully(O,n))))continue;let c=O.split(),f=h;for(let d=0;c.forceReduce()&&d<10&&(Ye&&console.log(f+this.stackID(c)+" (via force-reduce)"),!this.advanceFully(c,n));d++)Ye&&(f=this.stackID(c)+" -> ");for(let d of O.recoverByInsert(l))Ye&&console.log(h+this.stackID(d)+" (via recover-insert)"),this.advanceFully(d,n);this.stream.end>O.pos?(a==O.pos&&(a++,l=0),O.recoverByDelete(l,a),Ye&&console.log(h+this.stackID(O)+` (via recover-delete ${this.parser.getName(l)})`),Hc(O,n)):(!r||r.scorei,qt=class{constructor(e){this.start=e.start,this.shift=e.shift||nO,this.reduce=e.reduce||nO,this.reuse=e.reuse||nO,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}},me=class i extends gt{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 O=0;Oe.topRules[O][1]),r=[];for(let O=0;O=0)s(h,l,O[a++]);else{let c=O[a+-h];for(let f=-h;f>0;f--)s(O[a++],l,c);a++}}}this.nodeSet=new pt(t.map((O,l)=>F.define({name:l>=this.minRepeatTerm?void 0:O,id:l,props:r[l],top:n.indexOf(l)>-1,error:l==0,skipped:e.skippedNodes&&e.skippedNodes.indexOf(l)>-1}))),e.propSources&&(this.nodeSet=this.nodeSet.extend(...e.propSources)),this.strict=!1,this.bufferLength=1024;let o=pn(e.tokenData);this.context=e.context,this.specializerSpecs=e.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let O=0;Otypeof O=="number"?new Vt(o,O):O),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 r=new hO(this,e,t,n);for(let s of this.wrappers)r=s(r,e,t,n);return r}getGoto(e,t,n=!1){let r=this.goto;if(t>=r[0])return-1;for(let s=r[t+1];;){let o=r[s++],O=o&1,l=r[s++];if(O&&n)return l;for(let a=s+(o>>1);s0}validAction(e,t){return!!this.allActions(e,n=>n==t?!0:null)}allActions(e,t){let n=this.stateSlot(e,4),r=n?t(n):void 0;for(let s=this.stateSlot(e,1);r==null;s+=3){if(this.data[s]==65535)if(this.data[s+1]==1)s=Qt(this.data,s+2);else break;r=t(Qt(this.data,s+1))}return r}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=Qt(this.data,n+2);else break;if(!(this.data[n+2]&1)){let r=this.data[n+1];t.some((s,o)=>o&1&&s==r)||t.push(this.data[n],r)}}return t}configure(e){let t=Object.assign(Object.create(i.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 r=e.tokenizers.find(s=>s.from==n);return r?r.to:n})),e.specializers&&(t.specializers=this.specializers.slice(),t.specializerSpecs=this.specializerSpecs.map((n,r)=>{let s=e.specializers.find(O=>O.from==n.external);if(!s)return n;let o=Object.assign(Object.assign({},n),{external:s.to});return t.specializers[r]=Kc(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 s of e.split(" ")){let o=t.indexOf(s);o>=0&&(n[o]=!0)}let r=null;for(let s=0;sn)&&t.p.parser.stateFlag(t.state,2)&&(!e||e.scorei.external(t,n)<<1|e}return i.get}var Q$=96,ef=1,y$=97,b$=98,tf=2,nf=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],P$=58,x$=40,rf=95,w$=91,_r=45,k$=46,v$=35,T$=37;function Ar(i){return i>=65&&i<=90||i>=97&&i<=122||i>=161}function z$(i){return i>=48&&i<=57}var X$=new H((i,e)=>{for(let t=!1,n=0,r=0;;r++){let{next:s}=i;if(Ar(s)||s==_r||s==rf||t&&z$(s))!t&&(s!=_r||r>0)&&(t=!0),n===r&&s==_r&&n++,i.advance();else{t&&i.acceptToken(s==x$?y$:n==2&&e.canShift(tf)?tf:b$);break}}}),W$=new H(i=>{if(nf.includes(i.peek(-1))){let{next:e}=i;(Ar(e)||e==rf||e==v$||e==k$||e==w$||e==P$||e==_r)&&i.acceptToken(Q$)}}),R$=new H(i=>{if(!nf.includes(i.peek(-1))){let{next:e}=i;if(e==T$&&(i.advance(),i.acceptToken(ef)),Ar(e)){do i.advance();while(Ar(i.next));i.acceptToken(ef)}}}),Z$=ne({"AtKeyword import charset namespace keyframes media supports":u.definitionKeyword,"from to selector":u.keyword,NamespaceName:u.namespace,KeyframeName:u.labelName,KeyframeRangeName:u.operatorKeyword,TagName:u.tagName,ClassName:u.className,PseudoClassName:u.constant(u.className),IdName:u.labelName,"FeatureName PropertyName":u.propertyName,AttributeName:u.attributeName,NumberLiteral:u.number,KeywordQuery:u.keyword,UnaryQueryOp:u.operatorKeyword,"CallTag ValueName":u.atom,VariableName:u.variableName,Callee:u.operatorKeyword,Unit:u.unit,"UniversalSelector NestingSelector":u.definitionOperator,MatchOp:u.compareOperator,"ChildOp SiblingOp, LogicOp":u.logicOperator,BinOp:u.arithmeticOperator,Important:u.modifier,Comment:u.blockComment,ColorLiteral:u.color,"ParenthesizedContent StringLiteral":u.string,":":u.punctuation,"PseudoOp #":u.derefOperator,"; ,":u.separator,"( )":u.paren,"[ ]":u.squareBracket,"{ }":u.brace}),Y$={__proto__:null,lang:32,"nth-child":32,"nth-last-child":32,"nth-of-type":32,"nth-last-of-type":32,dir:32,"host-context":32,url:60,"url-prefix":60,domain:60,regexp:60,selector:134},V$={__proto__:null,"@import":114,"@media":138,"@charset":142,"@namespace":146,"@keyframes":152,"@supports":164},C$={__proto__:null,not:128,only:128},sf=me.deserialize({version:14,states:"9bQYQ[OOO#_Q[OOP#fOWOOOOQP'#Cd'#CdOOQP'#Cc'#CcO#kQ[O'#CfO$_QXO'#CaO$fQ[O'#ChO$qQ[O'#DPO$vQ[O'#DTOOQP'#Ej'#EjO${QdO'#DeO%gQ[O'#DrO${QdO'#DtO%xQ[O'#DvO&TQ[O'#DyO&]Q[O'#EPO&kQ[O'#EROOQS'#Ei'#EiOOQS'#EU'#EUQYQ[OOO&rQXO'#CdO'gQWO'#DaO'lQWO'#EpO'wQ[O'#EpQOQWOOP(RO#tO'#C_POOO)C@X)C@XOOQP'#Cg'#CgOOQP,59Q,59QO#kQ[O,59QO(^Q[O'#EXO(xQWO,58{O)QQ[O,59SO$qQ[O,59kO$vQ[O,59oO(^Q[O,59sO(^Q[O,59uO(^Q[O,59vO)]Q[O'#D`OOQS,58{,58{OOQP'#Ck'#CkOOQO'#C}'#C}OOQP,59S,59SO)dQWO,59SO)iQWO,59SOOQP'#DR'#DROOQP,59k,59kOOQO'#DV'#DVO)nQ`O,59oOOQS'#Cp'#CpO${QdO'#CqO)vQvO'#CsO+TQtO,5:POOQO'#Cx'#CxO)iQWO'#CwO+iQWO'#CyOOQS'#Em'#EmOOQO'#Dh'#DhO+nQ[O'#DoO+|QWO'#EqO&]Q[O'#DmO,[QWO'#DpOOQO'#Er'#ErO({QWO,5:^O,aQpO,5:`OOQS'#Dx'#DxO,iQWO,5:bO,nQ[O,5:bOOQO'#D{'#D{O,vQWO,5:eO,{QWO,5:kO-TQWO,5:mOOQS-E8S-E8SO${QdO,59{O-]Q[O'#EZO-jQWO,5;[O-jQWO,5;[POOO'#ET'#ETP-uO#tO,58yPOOO,58y,58yOOQP1G.l1G.lO.lQXO,5:sOOQO-E8V-E8VOOQS1G.g1G.gOOQP1G.n1G.nO)dQWO1G.nO)iQWO1G.nOOQP1G/V1G/VO.yQ`O1G/ZO/dQXO1G/_O/zQXO1G/aO0bQXO1G/bO0xQWO,59zO0}Q[O'#DOO1UQdO'#CoOOQP1G/Z1G/ZO${QdO1G/ZO1]QpO,59]OOQS,59_,59_O${QdO,59aO1eQWO1G/kOOQS,59c,59cO1jQ!bO,59eO1rQWO'#DhO1}QWO,5:TO2SQWO,5:ZO&]Q[O,5:VO&]Q[O'#E[O2[QWO,5;]O2gQWO,5:XO(^Q[O,5:[OOQS1G/x1G/xOOQS1G/z1G/zOOQS1G/|1G/|O2xQWO1G/|O2}QdO'#D|OOQS1G0P1G0POOQS1G0V1G0VOOQS1G0X1G0XO3YQtO1G/gOOQO,5:u,5:uO3pQ[O,5:uOOQO-E8X-E8XO3}QWO1G0vPOOO-E8R-E8RPOOO1G.e1G.eOOQP7+$Y7+$YOOQP7+$u7+$uO${QdO7+$uOOQS1G/f1G/fO4YQXO'#EoO4aQWO,59jO4fQtO'#EVO5ZQdO'#ElO5eQWO,59ZO5jQpO7+$uOOQS1G.w1G.wOOQS1G.{1G.{OOQS7+%V7+%VO5rQWO1G/PO${QdO1G/oOOQO1G/u1G/uOOQO1G/q1G/qO5wQWO,5:vOOQO-E8Y-E8YO6VQXO1G/vOOQS7+%h7+%hO6^QYO'#CsOOQO'#EO'#EOO6iQ`O'#D}OOQO'#D}'#D}O6tQWO'#E]O6|QdO,5:hOOQS,5:h,5:hO7XQtO'#EYO${QdO'#EYO8VQdO7+%ROOQO7+%R7+%ROOQO1G0a1G0aO8jQpO<T![;'S%^;'S;=`%o<%lO%^l;TUo`Oy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^l;nYo`#b[Oy%^z!Q%^!Q![;g![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^l[[o`#b[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^n?VSp^Oy%^z;'S%^;'S;=`%o<%lO%^l?hWjWOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^n@VU#_QOy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^~@nTjWOy%^z{@}{;'S%^;'S;=`%o<%lO%^~AUSo`#X~Oy%^z;'S%^;'S;=`%o<%lO%^lAg[#b[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^bBbU]QOy%^z![%^![!]Bt!];'S%^;'S;=`%o<%lO%^bB{S^Qo`Oy%^z;'S%^;'S;=`%o<%lO%^nC^S!W^Oy%^z;'S%^;'S;=`%o<%lO%^dCoSzSOy%^z;'S%^;'S;=`%o<%lO%^bDQU|QOy%^z!`%^!`!aDd!a;'S%^;'S;=`%o<%lO%^bDkS|Qo`Oy%^z;'S%^;'S;=`%o<%lO%^bDzWOy%^z!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^bEk[!YQo`Oy%^z}%^}!OEd!O!Q%^!Q![Ed![!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^bFfSxQOy%^z;'S%^;'S;=`%o<%lO%^lFwSv[Oy%^z;'S%^;'S;=`%o<%lO%^bGWUOy%^z#b%^#b#cGj#c;'S%^;'S;=`%o<%lO%^bGoUo`Oy%^z#W%^#W#XHR#X;'S%^;'S;=`%o<%lO%^bHYS!`Qo`Oy%^z;'S%^;'S;=`%o<%lO%^bHiUOy%^z#f%^#f#gHR#g;'S%^;'S;=`%o<%lO%^fIQS!RUOy%^z;'S%^;'S;=`%o<%lO%^nIcS!Q^Oy%^z;'S%^;'S;=`%o<%lO%^fItU!PQOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^`JZP;=`<%l$}",tokenizers:[W$,R$,X$,1,2,3,4,new Ct("m~RRYZ[z{a~~g~aO#Z~~dP!P!Qg~lO#[~~",28,102)],topRules:{StyleSheet:[0,4],Styles:[1,84]},specialized:[{term:97,get:i=>Y$[i]||-1},{term:56,get:i=>V$[i]||-1},{term:98,get:i=>C$[i]||-1}],tokenPrec:1169});var fO=null;function uO(){if(!fO&&typeof document=="object"&&document.body){let{style:i}=document.body,e=[],t=new Set;for(let n in i)n!="cssText"&&n!="cssFloat"&&typeof i[n]=="string"&&(/[A-Z]/.test(n)&&(n=n.replace(/[A-Z]/g,r=>"-"+r.toLowerCase())),t.has(n)||(e.push(n),t.add(n)));fO=e.sort().map(n=>({type:"property",label:n}))}return fO||[]}var of=["active","after","any-link","autofill","backdrop","before","checked","cue","default","defined","disabled","empty","enabled","file-selector-button","first","first-child","first-letter","first-line","first-of-type","focus","focus-visible","focus-within","fullscreen","has","host","host-context","hover","in-range","indeterminate","invalid","is","lang","last-child","last-of-type","left","link","marker","modal","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","part","placeholder","placeholder-shown","read-only","read-write","required","right","root","scope","selection","slotted","target","target-text","valid","visited","where"].map(i=>({type:"class",label:i})),Of=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map(i=>({type:"keyword",label:i})).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map(i=>({type:"constant",label:i}))),q$=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map(i=>({type:"type",label:i})),Ut=/^(\w[\w-]*|-\w[\w-]*|)$/,U$=/^-(-[\w-]*)?$/;function _$(i,e){var t;if((i.name=="("||i.type.isError)&&(i=i.parent||i),i.name!="ArgList")return!1;let n=(t=i.parent)===null||t===void 0?void 0:t.firstChild;return n?.name!="Callee"?!1:e.sliceString(n.from,n.to)=="var"}var lf=new Si,A$=["Declaration"];function j$(i){for(let e=i;;){if(e.type.isTop)return e;if(!(e=e.parent))return i}}function af(i,e,t){if(e.to-e.from>4096){let n=lf.get(e);if(n)return n;let r=[],s=new Set,o=e.cursor(_.IncludeAnonymous);if(o.firstChild())do for(let O of af(i,o.node,t))s.has(O.label)||(s.add(O.label),r.push(O));while(o.nextSibling());return lf.set(e,r),r}else{let n=[],r=new Set;return e.cursor().iterate(s=>{var o;if(t(s)&&s.matchContext(A$)&&((o=s.node.nextSibling)===null||o===void 0?void 0:o.name)==":"){let O=i.sliceString(s.from,s.to);r.has(O)||(r.add(O),n.push({label:O,type:"variable"}))}}),n}}var E$=i=>e=>{let{state:t,pos:n}=e,r=A(t).resolveInner(n,-1),s=r.type.isError&&r.from==r.to-1&&t.doc.sliceString(r.from,r.to)=="-";if(r.name=="PropertyName"||(s||r.name=="TagName")&&/^(Block|Styles)$/.test(r.resolve(r.to).name))return{from:r.from,options:uO(),validFor:Ut};if(r.name=="ValueName")return{from:r.from,options:Of,validFor:Ut};if(r.name=="PseudoClassName")return{from:r.from,options:of,validFor:Ut};if(i(r)||(e.explicit||s)&&_$(r,t.doc))return{from:i(r)||s?r.from:n,options:af(t.doc,j$(r),i),validFor:U$};if(r.name=="TagName"){for(let{parent:l}=r;l;l=l.parent)if(l.name=="Block")return{from:r.from,options:uO(),validFor:Ut};return{from:r.from,options:q$,validFor:Ut}}if(!e.explicit)return null;let o=r.resolve(n),O=o.childBefore(n);return O&&O.name==":"&&o.name=="PseudoClassSelector"?{from:n,options:of,validFor:Ut}:O&&O.name==":"&&o.name=="Declaration"||o.name=="ArgList"?{from:n,options:Of,validFor:Ut}:o.name=="Block"||o.name=="Styles"?{from:n,options:uO(),validFor:Ut}:null},G$=E$(i=>i.name=="VariableName"),mn=de.define({name:"css",parser:sf.configure({props:[ye.add({Declaration:Ze()}),be.add({"Block KeyframeList":Zt})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function jr(){return new re(mn,mn.data.of({autocomplete:G$}))}var M$=ne({String:u.string,Number:u.number,"True False":u.bool,PropertyName:u.propertyName,Null:u.null,",":u.separator,"[ ]":u.squareBracket,"{ }":u.brace}),hf=me.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#CjOOQO'#Cp'#CpQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CrOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59U,59UO!iQPO,59UOVQPO,59QOqQPO'#CkO!nQPO,59^OOQO1G.k1G.kOVQPO'#ClO!vQPO,59aOOQO1G.p1G.pOOQO1G.l1G.lOOQO,59V,59VOOQO-E6i-E6iOOQO,59W,59WOOQO-E6j-E6j",stateData:"#O~OcOS~OQSORSOSSOTSOWQO]ROePO~OVXOeUO~O[[O~PVOg^O~Oh_OVfX~OVaO~OhbO[iX~O[dO~Oh_OVfa~OhbO[ia~O",goto:"!kjPPPPPPkPPkqwPPk{!RPPP!XP!ePP!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"\u26A0 JsonText True False Null Number String } { Object Property PropertyName ] [ Array",maxTerm:25,nodeProps:[["openedBy",7,"{",12,"["],["closedBy",8,"}",13,"]"]],propSources:[M$],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oc~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Oe~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zOh~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yOg~~'OO]~~'TO[~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0});var I$=de.define({name:"json",parser:hf.configure({props:[ye.add({Object:Ze({except:/^\s*\}/}),Array:Ze({except:/^\s*\]/})}),be.add({"Object Array":Zt})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function cf(){return new re(I$)}var L$=304,ff=1,B$=2,D$=305,N$=307,F$=308,H$=3,K$=4,J$=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],df=125,eS=59,uf=47,tS=42,iS=43,nS=45,rS=new qt({start:!1,shift(i,e){return e==H$||e==K$||e==N$?i:e==F$},strict:!1}),sS=new H((i,e)=>{let{next:t}=i;(t==df||t==-1||e.context)&&i.acceptToken(D$)},{contextual:!0,fallback:!0}),oS=new H((i,e)=>{let{next:t}=i,n;J$.indexOf(t)>-1||t==uf&&((n=i.peek(1))==uf||n==tS)||t!=df&&t!=eS&&t!=-1&&!e.context&&i.acceptToken(L$)},{contextual:!0}),OS=new H((i,e)=>{let{next:t}=i;if((t==iS||t==nS)&&(i.advance(),t==i.next)){i.advance();let n=!e.context&&e.canShift(ff);i.acceptToken(n?ff:B$)}},{contextual:!0}),lS=ne({"get set async static":u.modifier,"for while do if else switch try catch finally return throw break continue default case":u.controlKeyword,"in of await yield void typeof delete instanceof":u.operatorKeyword,"let var const using function class extends":u.definitionKeyword,"import export from":u.moduleKeyword,"with debugger as new":u.keyword,TemplateString:u.special(u.string),super:u.atom,BooleanLiteral:u.bool,this:u.self,null:u.null,Star:u.modifier,VariableName:u.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":u.function(u.variableName),VariableDefinition:u.definition(u.variableName),Label:u.labelName,PropertyName:u.propertyName,PrivatePropertyName:u.special(u.propertyName),"CallExpression/MemberExpression/PropertyName":u.function(u.propertyName),"FunctionDeclaration/VariableDefinition":u.function(u.definition(u.variableName)),"ClassDeclaration/VariableDefinition":u.definition(u.className),PropertyDefinition:u.definition(u.propertyName),PrivatePropertyDefinition:u.definition(u.special(u.propertyName)),UpdateOp:u.updateOperator,"LineComment Hashbang":u.lineComment,BlockComment:u.blockComment,Number:u.number,String:u.string,Escape:u.escape,ArithOp:u.arithmeticOperator,LogicOp:u.logicOperator,BitOp:u.bitwiseOperator,CompareOp:u.compareOperator,RegExp:u.regexp,Equals:u.definitionOperator,Arrow:u.function(u.punctuation),": Spread":u.punctuation,"( )":u.paren,"[ ]":u.squareBracket,"{ }":u.brace,"InterpolationStart InterpolationEnd":u.special(u.brace),".":u.derefOperator,", ;":u.separator,"@":u.meta,TypeName:u.typeName,TypeDefinition:u.definition(u.typeName),"type enum interface implements namespace module declare":u.definitionKeyword,"abstract global Privacy readonly override":u.modifier,"is keyof unique infer":u.operatorKeyword,JSXAttributeValue:u.attributeValue,JSXText:u.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":u.angleBracket,"JSXIdentifier JSXNameSpacedName":u.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":u.attributeName,"JSXBuiltin/JSXIdentifier":u.standard(u.tagName)}),aS={__proto__:null,export:16,as:21,from:29,default:32,async:37,function:38,extends:48,this:52,true:60,false:60,null:72,void:76,typeof:80,super:98,new:132,delete:148,yield:157,await:161,class:166,public:223,private:223,protected:223,readonly:225,instanceof:244,satisfies:247,in:248,const:250,import:282,keyof:337,unique:341,infer:347,is:383,abstract:403,implements:405,type:407,let:410,var:412,using:415,interface:421,enum:425,namespace:431,module:433,declare:437,global:441,for:460,of:469,while:472,with:476,do:480,if:484,else:486,switch:490,case:496,try:502,catch:506,finally:510,return:514,throw:518,break:522,continue:526,debugger:530},hS={__proto__:null,async:119,get:121,set:123,declare:183,public:185,private:185,protected:185,static:187,abstract:189,override:191,readonly:197,accessor:199,new:387},cS={__proto__:null,"<":139},pf=me.deserialize({version:14,states:"$6zO%TQUOOO%[QUOOO'_QWOOP(lOSOOO*zQ(CjO'#CgO+ROpO'#ChO+aO!bO'#ChO+oO07`O'#D[O.QQUO'#DbO.bQUO'#DmO%[QUO'#DwO0fQUO'#EPOOQ(CY'#EX'#EXO1PQSO'#EUOOQO'#Ej'#EjOOQO'#Id'#IdO1XQSO'#GlO1dQSO'#EiO1iQSO'#EiO3kQ(CjO'#JeO6[Q(CjO'#JfO6xQSO'#FXO6}Q#tO'#FpOOQ(CY'#Fa'#FaO7YO&jO'#FaO7hQ,UO'#FwO9OQSO'#FvOOQ(CY'#Jf'#JfOOQ(CW'#Je'#JeO9TQSO'#GpOOQQ'#KQ'#KQO9`QSO'#IQO9eQ(C[O'#IROOQQ'#JR'#JROOQQ'#IV'#IVQ`QUOOO`QUOOO%[QUO'#DoO9mQUO'#D{O9tQUO'#D}O9ZQSO'#GlO9{Q,UO'#CmO:ZQSO'#EhO:fQSO'#EsO:kQ,UO'#F`O;YQSO'#GlOOQO'#KR'#KRO;_QSO'#KRO;mQSO'#GtO;mQSO'#GuO;mQSO'#GwO9ZQSO'#GzO]QSO'#HZO>eQSO'#HaO>eQSO'#HcO`QUO'#HeO>eQSO'#HgO>eQSO'#HjO>jQSO'#HpO>oQ(C]O'#HvO%[QUO'#HxO>zQ(C]O'#HzO?VQ(C]O'#H|O9eQ(C[O'#IOO?bQ(CjO'#CgO@dQWO'#DgQOQSOOO%[QUO'#D}O@zQSO'#EQO9{Q,UO'#EhOAVQSO'#EhOAbQ`O'#F`OOQQ'#Ce'#CeOOQ(CW'#Dl'#DlOOQ(CW'#Ji'#JiO%[QUO'#JiOOQO'#Jm'#JmOOQO'#Ia'#IaOBbQWO'#EaOOQ(CW'#E`'#E`OC^Q(C`O'#EaOChQWO'#ETOOQO'#Jl'#JlOC|QWO'#JmOEZQWO'#ETOChQWO'#EaPEhO?MpO'#C`POOO)CDp)CDpOOOO'#IW'#IWOEsOpO,59SOOQ(CY,59S,59SOOOO'#IX'#IXOFRO!bO,59SO%[QUO'#D^OOOO'#IZ'#IZOFaO07`O,59vOOQ(CY,59v,59vOFoQUO'#I[OGSQSO'#JgOIUQbO'#JgO+}QUO'#JgOI]QSO,59|OIsQSO'#EjOJQQSO'#JuOJ]QSO'#JtOJ]QSO'#JtOJeQSO,5;WOJjQSO'#JsOOQ(CY,5:X,5:XOJqQUO,5:XOLrQ(CjO,5:cOMcQSO,5:kOM|Q(C[O'#JrONTQSO'#JqO9TQSO'#JqONiQSO'#JqONqQSO,5;VONvQSO'#JqO!#OQbO'#JfOOQ(CY'#Cg'#CgO%[QUO'#EPO!#nQ`O,5:pOOQO'#Jn'#JnOOQO-ElOOQQ'#JZ'#JZOOQQ,5>m,5>mOOQQ-ExQ(CjO,5:iOOQO,5@m,5@mO!?iQ,UO,5=WO!?wQ(C[O'#J[O9OQSO'#J[O!@YQ(C[O,59XO!@eQWO,59XO!@mQ,UO,59XO9{Q,UO,59XO!@xQSO,5;TO!AQQSO'#HYO!AcQSO'#KVO%[QUO,5;xO!7cQWO,5;zO!AkQSO,5=sO!ApQSO,5=sO!AuQSO,5=sO9eQ(C[O,5=sO;mQSO,5=cOOQO'#Cs'#CsO!BTQWO,5=`O!B]Q,UO,5=aO!BhQSO,5=cO!BmQ`O,5=fO!BuQSO'#KRO>jQSO'#HPO9ZQSO'#HRO!BzQSO'#HRO9{Q,UO'#HTO!CPQSO'#HTOOQQ,5=i,5=iO!CUQSO'#HUO!C^QSO'#CmO!CcQSO,58}O!CmQSO,58}O!ErQUO,58}OOQQ,58},58}O!FSQ(C[O,58}O%[QUO,58}O!H_QUO'#H]OOQQ'#H^'#H^OOQQ'#H_'#H_O`QUO,5=uO!HuQSO,5=uO`QUO,5={O`QUO,5=}O!HzQSO,5>PO`QUO,5>RO!IPQSO,5>UO!IUQUO,5>[OOQQ,5>b,5>bO%[QUO,5>bO9eQ(C[O,5>dOOQQ,5>f,5>fO!M`QSO,5>fOOQQ,5>h,5>hO!M`QSO,5>hOOQQ,5>j,5>jO!MeQWO'#DYO%[QUO'#JiO!NSQWO'#JiO!NqQWO'#DhO# SQWO'#DhO##eQUO'#DhO##lQSO'#JhO##tQSO,5:RO##yQSO'#EnO#$XQSO'#JvO#$aQSO,5;XO#$fQWO'#DhO#$sQWO'#ESOOQ(CY,5:l,5:lO%[QUO,5:lO#$zQSO,5:lO>jQSO,5;SO!@eQWO,5;SO!@mQ,UO,5;SO9{Q,UO,5;SO#%SQSO,5@TO#%XQ!LQO,5:pOOQO-E<_-E<_O#&_Q(C`O,5:{OChQWO,5:oO#&iQWO,5:oOChQWO,5:{O!@YQ(C[O,5:oOOQ(CW'#Ed'#EdOOQO,5:{,5:{O%[QUO,5:{O#&vQ(C[O,5:{O#'RQ(C[O,5:{O!@eQWO,5:oOOQO,5;R,5;RO#'aQ(C[O,5:{POOO'#IU'#IUP#'uO?MpO,58zPOOO,58z,58zOOOO-EvO+}QUO,5>vOOQO,5>|,5>|O#(aQUO'#I[OOQO-ERQ(CjO1G0yO#?yQ(CjO1G0yO#ByQ$IUO'#CgO#DwQ$IUO1G1[O#EOQ$IUO'#JfO!,YQSO1G1bO#E`Q(CjO,5?SOOQ(CW-EeQSO1G3kO$.VQUO1G3mO$2ZQUO'#HlOOQQ1G3p1G3pO$2hQSO'#HrO>jQSO'#HtOOQQ1G3v1G3vO$2pQUO1G3vO9eQ(C[O1G3|OOQQ1G4O1G4OOOQ(CW'#GX'#GXO9eQ(C[O1G4QO9eQ(C[O1G4SO$6wQSO,5@TO!*SQUO,5;YO9TQSO,5;YO>jQSO,5:SO!*SQUO,5:SO!@eQWO,5:SO$6|Q$IUO,5:SOOQO,5;Y,5;YO$7WQWO'#I]O$7nQSO,5@SOOQ(CY1G/m1G/mO$7vQWO'#IcO$8QQSO,5@bOOQ(CW1G0s1G0sO# SQWO,5:SOOQO'#I`'#I`O$8YQWO,5:nOOQ(CY,5:n,5:nO#$}QSO1G0WOOQ(CY1G0W1G0WO%[QUO1G0WOOQ(CY1G0n1G0nO>jQSO1G0nO!@eQWO1G0nO!@mQ,UO1G0nOOQ(CW1G5o1G5oO!@YQ(C[O1G0ZOOQO1G0g1G0gO%[QUO1G0gO$8aQ(C[O1G0gO$8lQ(C[O1G0gO!@eQWO1G0ZOChQWO1G0ZO$8zQ(C[O1G0gOOQO1G0Z1G0ZO$9`Q(CjO1G0gPOOO-EvO$9|QSO1G5mO$:UQSO1G5zO$:^QbO1G5{O9TQSO,5>|O$:hQ(CjO1G5xO%[QUO1G5xO$:xQ(C[O1G5xO$;ZQSO1G5wO$;ZQSO1G5wO9TQSO1G5wO$;cQSO,5?PO9TQSO,5?POOQO,5?P,5?PO$;wQSO,5?PO$$XQSO,5?POOQO-ExQ(CjO,5WOOQQ,5>W,5>WO%[QUO'#HmO%(ZQSO'#HoOOQQ,5>^,5>^O9TQSO,5>^OOQQ,5>`,5>`OOQQ7+)b7+)bOOQQ7+)h7+)hOOQQ7+)l7+)lOOQQ7+)n7+)nO%(`QWO1G5oO%(tQ$IUO1G0tO%)OQSO1G0tOOQO1G/n1G/nO%)ZQ$IUO1G/nO>jQSO1G/nO!*SQUO'#DhOOQO,5>w,5>wOOQO-E},5>}OOQO-EjQSO7+&YO!@eQWO7+&YOOQO7+%u7+%uO$9`Q(CjO7+&ROOQO7+&R7+&RO%[QUO7+&RO%)eQ(C[O7+&RO!@YQ(C[O7+%uO!@eQWO7+%uO%)pQ(C[O7+&RO%*OQ(CjO7++dO%[QUO7++dO%*`QSO7++cO%*`QSO7++cOOQO1G4k1G4kO9TQSO1G4kO%*hQSO1G4kOOQO7+%z7+%zO#$}QSO<xOOQO-E<[-E<[O%2^QbO,5>yO%[QUO,5>yOOQO-E<]-E<]O%2hQSO1G5qOOQ(CY<XQ$IUO1G0yO%>`Q$IUO1G0yO%@WQ$IUO1G0yO%@kQ(CjO<XOOQQ,5>Z,5>ZO%NUQSO1G3xO9TQSO7+&`O!*SQUO7+&`OOQO7+%Y7+%YO%NZQ$IUO1G5{O>jQSO7+%YOOQ(CY<jQSO<jQSO7+)dO&5rQSO<{AN>{O%[QUOAN?XOOQO<SQSO7++uO%LgQSOANAyOOQQANAyANAyO!&^Q,UOANAyO&>[QSOANAyOOQQANA{ANA{O9eQ(C[OANA{O#MzQSOANA{OOQO'#HW'#HWOOQO7+*e7+*eOOQQG22uG22uOOQQANEPANEPOOQQANEQANEQOOQQANBTANBTO&>dQSOANBTOOQQ<iQSOLD,jO&>qQ$IUO7+'tO&@gQ$IUO7+'vO&B]Q,UOG26|OOQO<YOPZXYZXlZXzZX{ZX}ZX!fZX!gZX!iZX!mZX#YZX#edX#hZX#iZX#jZX#kZX#lZX#mZX#nZX#oZX#pZX#rZX#tZX#vZX#wZX#|ZX(TZX(dZX(kZX(lZX!WZX!XZX~O#zZX~P#@sOP$]OY:YOl9|Oz#yO{#zO}#{O!f:OO!g#wO!i#xO!m$]O#h9zO#i9{O#j9{O#k9{O#l9}O#m:OO#n:OO#o:XO#p:OO#r:PO#t:RO#v:TO#w:UO(TVO(d$ZO(k#|O(l#}O~O#z.iO~P#CQO#Y:ZO#|:ZO#z(YX!X(YX~P! UO_'[a!W'[a'm'[a'k'[a!h'[a!T'[ap'[a!Y'[a%b'[a!b'[a~P!7zOP#giY#gi_#gil#gi{#gi!W#gi!f#gi!g#gi!i#gi!m#gi#h#gi#i#gi#j#gi#k#gi#l#gi#m#gi#n#gi#o#gi#p#gi#r#gi#t#gi#v#gi#w#gi'm#gi(T#gi(d#gi'k#gi!T#gi!h#gip#gi!Y#gi%b#gi!b#gi~P#,gO_#{i!W#{i'm#{i'k#{i!T#{i!h#{ip#{i!Y#{i%b#{i!b#{i~P!7zO$X.nO$Z.nO~O$X.oO$Z.oO~O!b)_O#Y.pO!Y$_X$U$_X$X$_X$Z$_X$b$_X~O!V.qO~O!Y)bO$U.sO$X)aO$Z)aO$b.tO~O!W:VO!X(XX~P#CQO!X.uO~O!b)_O$b(mX~O$b.wO~Or)qO(U)rO(V.zO~O!T/OO~P!&^O!WdX!bdX!hdX!h$tX(ddX~P!/bO!h/UO~P#,gO!W/VO!b#uO(d'gO!h(qX~O!h/[O~O!V*SO'v%`O!h(qP~O#e/^O~O!T$tX!W$tX!b${X~P!/bO!W/_O!T(rX~P#,gO!b/aO~O!T/cO~Ol/gO!b#uO!i%^O(P%RO(d'gO~O'v/iO~O!b+YO~O_%gO!W/mO'm%gO~O!X/oO~P!3`O!^/pO!_/pO'w!lO(W!mO~O}/rO(W!mO~O#U/sO~O'v&QOe'aX!W'aX~O!W*lOe(Qa~Oe/xO~Oz/yO{/yO}/zOhwa(kwa(lwa!Wwa#Ywa~Oewa#zwa~P$ hOz)vO})wOh$ma(k$ma(l$ma!W$ma#Y$ma~Oe$ma#z$ma~P$!^Oz)vO})wOh$oa(k$oa(l$oa!W$oa#Y$oa~Oe$oa#z$oa~P$#PO#e/|O~Oe$}a!W$}a#Y$}a#z$}a~P!0kO!b#uO~O#e0PO~O!W*}O_(va'm(va~Oz#yO{#zO}#{O!g#wO!i#xO(TVOP!oiY!oil!oi!W!oi!f!oi!m!oi#h!oi#i!oi#j!oi#k!oi#l!oi#m!oi#n!oi#o!oi#p!oi#r!oi#t!oi#v!oi#w!oi(d!oi(k!oi(l!oi~O_!oi'm!oi'k!oi!T!oi!h!oip!oi!Y!oi%b!oi!b!oi~P$$nOh.UO!Y'VO%b.TO~Oj0ZO'v0YO~P!1]O!b+YO_(Oa!Y(Oa'm(Oa!W(Oa~O#e0aO~OYZX!WdX!XdX~O!W0bO!X(zX~O!X0dO~OY0eO~O'v+bO'xTO'{UO~O!Y%wO'v%`O^'iX!W'iX~O!W+gO^(ya~O!h0jO~P!7zOY0mO~O^0nO~O#Y0qO~Oh0tO!Y$|O~O(W(tO!X(wP~Oh0}O!Y0zO%b0|O(P%RO~OY1XO!W1VO!X(xX~O!X1YO~O^1[O_%gO'm%gO~O'v#mO'xTO'{UO~O#Y$eO#|$eOP(YXY(YXl(YXz(YX{(YX}(YX!W(YX!f(YX!i(YX!m(YX#h(YX#i(YX#j(YX#k(YX#l(YX#m(YX#n(YX#o(YX#r(YX#t(YX#v(YX#w(YX(T(YX(d(YX(k(YX(l(YX~O#p1_O&S1`O_(YX!g(YX~P$+dO#Y$eO#p1_O&S1`O~O_1bO~P%[O_1dO~O&]1gOP&ZiQ&ZiW&Zi_&Zib&Zic&Zij&Zil&Zim&Zin&Zit&Ziv&Zix&Zi}&Zi!R&Zi!S&Zi!Y&Zi!d&Zi!i&Zi!l&Zi!m&Zi!n&Zi!p&Zi!r&Zi!u&Zi!y&Zi#q&Zi$R&Zi$V&Zi%a&Zi%c&Zi%e&Zi%f&Zi%g&Zi%j&Zi%l&Zi%o&Zi%p&Zi%r&Zi&O&Zi&U&Zi&W&Zi&Y&Zi&[&Zi&_&Zi&e&Zi&k&Zi&m&Zi&o&Zi&q&Zi&s&Zi'k&Zi'v&Zi'x&Zi'{&Zi(T&Zi(c&Zi(p&Zi!X&Zi`&Zi&b&Zi~O`1mO!X1kO&b1lO~P`O!YXO!i1oO~O&i,jOP&diQ&diW&di_&dib&dic&dij&dil&dim&din&dit&div&dix&di}&di!R&di!S&di!Y&di!d&di!i&di!l&di!m&di!n&di!p&di!r&di!u&di!y&di#q&di$R&di$V&di%a&di%c&di%e&di%f&di%g&di%j&di%l&di%o&di%p&di%r&di&O&di&U&di&W&di&Y&di&[&di&_&di&e&di&k&di&m&di&o&di&q&di&s&di'k&di'v&di'x&di'{&di(T&di(c&di(p&di!X&di&]&di`&di&b&di~O!T1uO~O!W![a!X![a~P#CQOm!nO}!oO!V1{O(W!mO!W'PX!X'PX~P@OO!W,zO!X([a~O!W'VX!X'VX~P!7SO!W,}O!X(ja~O!X2SO~P'_O_%gO#Y2]O'm%gO~O_%gO!b#uO#Y2]O'm%gO~O_%gO!b#uO!m2aO#Y2]O'm%gO(d'gO~O_%gO'm%gO~P!7zO!W$aOp$la~O!T'Oi!W'Oi~P!7zO!W'{O!T(Zi~O!W(SO!T(hi~O!T(ii!W(ii~P!7zO!W(fi!h(fi_(fi'm(fi~P!7zO#Y2cO!W(fi!h(fi_(fi'm(fi~O!W(`O!h(ei~O}%aO!Y%bO!y]O#c2hO#d2gO'v%`O~O}%aO!Y%bO#d2gO'v%`O~Oh2oO!Y'VO%b2nO~Oh2oO!Y'VO%b2nO(P%RO~O#ewaPwaYwa_walwa!fwa!gwa!iwa!mwa#hwa#iwa#jwa#kwa#lwa#mwa#nwa#owa#pwa#rwa#twa#vwa#wwa'mwa(Twa(dwa!hwa!Twa'kwapwa!Ywa%bwa!bwa~P$ hO#e$maP$maY$ma_$mal$ma{$ma!f$ma!g$ma!i$ma!m$ma#h$ma#i$ma#j$ma#k$ma#l$ma#m$ma#n$ma#o$ma#p$ma#r$ma#t$ma#v$ma#w$ma'm$ma(T$ma(d$ma!h$ma!T$ma'k$map$ma!Y$ma%b$ma!b$ma~P$!^O#e$oaP$oaY$oa_$oal$oa{$oa!f$oa!g$oa!i$oa!m$oa#h$oa#i$oa#j$oa#k$oa#l$oa#m$oa#n$oa#o$oa#p$oa#r$oa#t$oa#v$oa#w$oa'm$oa(T$oa(d$oa!h$oa!T$oa'k$oap$oa!Y$oa%b$oa!b$oa~P$#PO#e$}aP$}aY$}a_$}al$}a{$}a!W$}a!f$}a!g$}a!i$}a!m$}a#h$}a#i$}a#j$}a#k$}a#l$}a#m$}a#n$}a#o$}a#p$}a#r$}a#t$}a#v$}a#w$}a'm$}a(T$}a(d$}a!h$}a!T$}a'k$}a#Y$}ap$}a!Y$}a%b$}a!b$}a~P#,gO_#]q!W#]q'm#]q'k#]q!T#]q!h#]qp#]q!Y#]q%b#]q!b#]q~P!7zOe'QX!W'QX~P!'vO!W._Oe(^a~O!V2wO!W'RX!h'RX~P%[O!W.bO!h(_a~O!W.bO!h(_a~P!7zO!T2zO~O#z!ka!X!ka~PJxO#z!ca!W!ca!X!ca~P#CQO#z!oa!X!oa~P!:eO#z!qa!X!qa~P!=OO!Y3^O$VfO$`3_O~O!X3cO~Op3dO~P#,gO_$iq!W$iq'm$iq'k$iq!T$iq!h$iqp$iq!Y$iq%b$iq!b$iq~P!7zO!T3eO~P#,gOz)vO})wO(l){Oh%Yi(k%Yi!W%Yi#Y%Yi~Oe%Yi#z%Yi~P$I|Oz)vO})wOh%[i(k%[i(l%[i!W%[i#Y%[i~Oe%[i#z%[i~P$JoO(d$ZO~P#,gO!V3hO'v%`O!W']X!h']X~O!W/VO!h(qa~O!W/VO!b#uO!h(qa~O!W/VO!b#uO(d'gO!h(qa~Oe$vi!W$vi#Y$vi#z$vi~P!0kO!V3pO'v*XO!T'_X!W'_X~P!1YO!W/_O!T(ra~O!W/_O!T(ra~P#,gO!b#uO#p3xO~Ol3{O!b#uO(d'gO~Oe(Ri!W(Ri~P!0kO#Y4OOe(Ri!W(Ri~P!0kO!h4RO~O_$jq!W$jq'm$jq'k$jq!T$jq!h$jqp$jq!Y$jq%b$jq!b$jq~P!7zO!T4VO~O!W4WO!Y(sX~P#,gO!g#wO~P4XO_$tX!Y$tX%VZX'm$tX!W$tX~P!/bO%V4YO_iXhiXziX}iX!YiX'miX(kiX(liX!WiX~O%V4YO~O%c4aO'v+bO'xTO'{UO!W'hX!X'hX~O!W0bO!X(za~OY4eO~O^4fO~O_%gO'm%gO~P#,gO!Y$|O~P#,gO!W4nO#Y4pO!X(wX~O!X4qO~Om!nO}4rO!]!xO!^!uO!_!uO!y9rO!}!pO#O!pO#P!pO#Q!pO#R!pO#U4wO#V!yO'w!lO'xTO'{UO(W!mO(c!sO~O!X4vO~P%$nOh4|O!Y0zO%b4{O~Oh4|O!Y0zO%b4{O(P%RO~O'v#mO!W'gX!X'gX~O!W1VO!X(xa~O'xTO'{UO(W5VO~O^5ZO~O#p5^O&S5_O~PMhO!h5`O~P%[O_5bO~O_5bO~P%[O`1mO!X5gO&b1lO~P`O!b5iO~O!b5kO!W(]i!X(]i!b(]i!i(]i(P(]i~O!W#bi!X#bi~P#CQO#Y5lO!W#bi!X#bi~O!W![i!X![i~P#CQO_%gO#Y5uO'm%gO~O_%gO!b#uO#Y5uO'm%gO~O!W(fq!h(fq_(fq'm(fq~P!7zO!W(`O!h(eq~O}%aO!Y%bO#d5|O'v%`O~O!Y'VO%b6PO~Oh6SO!Y'VO%b6PO~O#e%YiP%YiY%Yi_%Yil%Yi{%Yi!f%Yi!g%Yi!i%Yi!m%Yi#h%Yi#i%Yi#j%Yi#k%Yi#l%Yi#m%Yi#n%Yi#o%Yi#p%Yi#r%Yi#t%Yi#v%Yi#w%Yi'm%Yi(T%Yi(d%Yi!h%Yi!T%Yi'k%Yip%Yi!Y%Yi%b%Yi!b%Yi~P$I|O#e%[iP%[iY%[i_%[il%[i{%[i!f%[i!g%[i!i%[i!m%[i#h%[i#i%[i#j%[i#k%[i#l%[i#m%[i#n%[i#o%[i#p%[i#r%[i#t%[i#v%[i#w%[i'm%[i(T%[i(d%[i!h%[i!T%[i'k%[ip%[i!Y%[i%b%[i!b%[i~P$JoO#e$viP$viY$vi_$vil$vi{$vi!W$vi!f$vi!g$vi!i$vi!m$vi#h$vi#i$vi#j$vi#k$vi#l$vi#m$vi#n$vi#o$vi#p$vi#r$vi#t$vi#v$vi#w$vi'm$vi(T$vi(d$vi!h$vi!T$vi'k$vi#Y$vip$vi!Y$vi%b$vi!b$vi~P#,gOe'Qa!W'Qa~P!0kO!W'Ra!h'Ra~P!7zO!W.bO!h(_i~O#z#]i!W#]i!X#]i~P#CQOP$]Oz#yO{#zO}#{O!g#wO!i#xO!m$]O(TVOY#gil#gi!f#gi#i#gi#j#gi#k#gi#l#gi#m#gi#n#gi#o#gi#p#gi#r#gi#t#gi#v#gi#w#gi#z#gi(d#gi(k#gi(l#gi!W#gi!X#gi~O#h#gi~P%2}O#h9zO~P%2}OP$]Oz#yO{#zO}#{O!g#wO!i#xO!m$]O#h9zO#i9{O#j9{O#k9{O(TVOY#gi!f#gi#l#gi#m#gi#n#gi#o#gi#p#gi#r#gi#t#gi#v#gi#w#gi#z#gi(d#gi(k#gi(l#gi!W#gi!X#gi~Ol#gi~P%5YOl9|O~P%5YOP$]Ol9|Oz#yO{#zO}#{O!g#wO!i#xO!m$]O#h9zO#i9{O#j9{O#k9{O#l9}O(TVO#r#gi#t#gi#v#gi#w#gi#z#gi(d#gi(k#gi(l#gi!W#gi!X#gi~OY#gi!f#gi#m#gi#n#gi#o#gi#p#gi~P%7eOY:YO!f:OO#m:OO#n:OO#o:XO#p:OO~P%7eOP$]OY:YOl9|Oz#yO{#zO}#{O!f:OO!g#wO!i#xO!m$]O#h9zO#i9{O#j9{O#k9{O#l9}O#m:OO#n:OO#o:XO#p:OO#r:PO(TVO#t#gi#v#gi#w#gi#z#gi(d#gi(l#gi!W#gi!X#gi~O(k#gi~P%:PO(k#|O~P%:POP$]OY:YOl9|Oz#yO{#zO}#{O!f:OO!g#wO!i#xO!m$]O#h9zO#i9{O#j9{O#k9{O#l9}O#m:OO#n:OO#o:XO#p:OO#r:PO#t:RO(TVO(k#|O#v#gi#w#gi#z#gi(d#gi!W#gi!X#gi~O(l#gi~P%<[O(l#}O~P%<[OP$]OY:YOl9|Oz#yO{#zO}#{O!f:OO!g#wO!i#xO!m$]O#h9zO#i9{O#j9{O#k9{O#l9}O#m:OO#n:OO#o:XO#p:OO#r:PO#t:RO#v:TO(TVO(k#|O(l#}O~O#w#gi#z#gi(d#gi!W#gi!X#gi~P%>gO_#xy!W#xy'm#xy'k#xy!T#xy!h#xyp#xy!Y#xy%b#xy!b#xy~P!7zOh;mOz)vO})wO(k)yO(l){O~OP#giY#gil#gi{#gi!f#gi!g#gi!i#gi!m#gi#h#gi#i#gi#j#gi#k#gi#l#gi#m#gi#n#gi#o#gi#p#gi#r#gi#t#gi#v#gi#w#gi#z#gi(T#gi(d#gi!W#gi!X#gi~P%A_O!g#wOP(SXY(SXh(SXl(SXz(SX{(SX}(SX!f(SX!i(SX!m(SX#h(SX#i(SX#j(SX#k(SX#l(SX#m(SX#n(SX#o(SX#p(SX#r(SX#t(SX#v(SX#w(SX#z(SX(T(SX(d(SX(k(SX(l(SX!W(SX!X(SX~O#z#{i!W#{i!X#{i~P#CQO#z!oi!X!oi~P$$nO!X6`O~O!W'[a!X'[a~P#CQO!b#uO(d'gO!W']a!h']a~O!W/VO!h(qi~O!W/VO!b#uO!h(qi~Oe$vq!W$vq#Y$vq#z$vq~P!0kO!T'_a!W'_a~P#,gO!b6gO~O!W/_O!T(ri~P#,gO!W/_O!T(ri~O!T6kO~O!b#uO#p6pO~Ol6qO!b#uO(d'gO~O!T6sO~Oe$xq!W$xq#Y$xq#z$xq~P!0kO_$jy!W$jy'm$jy'k$jy!T$jy!h$jyp$jy!Y$jy%b$jy!b$jy~P!7zO!b5kO~O!W4WO!Y(sa~O_#]y!W#]y'm#]y'k#]y!T#]y!h#]yp#]y!Y#]y%b#]y!b#]y~P!7zOY6xO~O!W0bO!X(zi~O^7OO~O(W(tO!W'dX!X'dX~O!W4nO!X(wa~OjkO'v7VO~P.iO!X7YO~P%$nOm!nO}7ZO'xTO'{UO(W!mO(c!sO~O!Y0zO~O!Y0zO%b7]O~Oh7`O!Y0zO%b7]O~OY7eO!W'ga!X'ga~O!W1VO!X(xi~O!h7iO~O!h7jO~O!h7mO~O!h7mO~P%[O_7oO~O!b7pO~O!h7qO~O!W(ii!X(ii~P#CQO_%gO#Y7yO'm%gO~O!W(fy!h(fy_(fy'm(fy~P!7zO!W(`O!h(ey~O!Y'VO%b7|O~O#e$vqP$vqY$vq_$vql$vq{$vq!W$vq!f$vq!g$vq!i$vq!m$vq#h$vq#i$vq#j$vq#k$vq#l$vq#m$vq#n$vq#o$vq#p$vq#r$vq#t$vq#v$vq#w$vq'm$vq(T$vq(d$vq!h$vq!T$vq'k$vq#Y$vqp$vq!Y$vq%b$vq!b$vq~P#,gO#e$xqP$xqY$xq_$xql$xq{$xq!W$xq!f$xq!g$xq!i$xq!m$xq#h$xq#i$xq#j$xq#k$xq#l$xq#m$xq#n$xq#o$xq#p$xq#r$xq#t$xq#v$xq#w$xq'm$xq(T$xq(d$xq!h$xq!T$xq'k$xq#Y$xqp$xq!Y$xq%b$xq!b$xq~P#,gO!W'Ri!h'Ri~P!7zO#z#]q!W#]q!X#]q~P#CQOz/yO{/yO}/zOPwaYwahwalwa!fwa!gwa!iwa!mwa#hwa#iwa#jwa#kwa#lwa#mwa#nwa#owa#pwa#rwa#twa#vwa#wwa#zwa(Twa(dwa(kwa(lwa!Wwa!Xwa~Oz)vO})wOP$maY$mah$mal$ma{$ma!f$ma!g$ma!i$ma!m$ma#h$ma#i$ma#j$ma#k$ma#l$ma#m$ma#n$ma#o$ma#p$ma#r$ma#t$ma#v$ma#w$ma#z$ma(T$ma(d$ma(k$ma(l$ma!W$ma!X$ma~Oz)vO})wOP$oaY$oah$oal$oa{$oa!f$oa!g$oa!i$oa!m$oa#h$oa#i$oa#j$oa#k$oa#l$oa#m$oa#n$oa#o$oa#p$oa#r$oa#t$oa#v$oa#w$oa#z$oa(T$oa(d$oa(k$oa(l$oa!W$oa!X$oa~OP$}aY$}al$}a{$}a!f$}a!g$}a!i$}a!m$}a#h$}a#i$}a#j$}a#k$}a#l$}a#m$}a#n$}a#o$}a#p$}a#r$}a#t$}a#v$}a#w$}a#z$}a(T$}a(d$}a!W$}a!X$}a~P%A_O#z$iq!W$iq!X$iq~P#CQO#z$jq!W$jq!X$jq~P#CQO!X8WO~O#z8XO~P!0kO!b#uO!W']i!h']i~O!b#uO(d'gO!W']i!h']i~O!W/VO!h(qq~O!T'_i!W'_i~P#,gO!W/_O!T(rq~O!T8_O~P#,gO!T8_O~Oe(Ry!W(Ry~P!0kO!W'ba!Y'ba~P#,gO_%Uq!Y%Uq'm%Uq!W%Uq~P#,gOY8dO~O!W0bO!X(zq~O#Y8hO!W'da!X'da~O!W4nO!X(wi~P#CQOPZXYZXlZXzZX{ZX}ZX!TZX!WZX!fZX!gZX!iZX!mZX#YZX#edX#hZX#iZX#jZX#kZX#lZX#mZX#nZX#oZX#pZX#rZX#tZX#vZX#wZX#|ZX(TZX(dZX(kZX(lZX~O!b%SX#p%SX~P&2_O!Y0zO%b8lO~O'xTO'{UO(W8qO~O!W1VO!X(xq~O!h8tO~O!h8uO~O!h8vO~O!h8vO~P%[O#Y8yO!W#by!X#by~O!W#by!X#by~P#CQO!Y'VO%b9OO~O#z#xy!W#xy!X#xy~P#CQOP$viY$vil$vi{$vi!f$vi!g$vi!i$vi!m$vi#h$vi#i$vi#j$vi#k$vi#l$vi#m$vi#n$vi#o$vi#p$vi#r$vi#t$vi#v$vi#w$vi#z$vi(T$vi(d$vi!W$vi!X$vi~P%A_Oz)vO})wO(l){OP%YiY%Yih%Yil%Yi{%Yi!f%Yi!g%Yi!i%Yi!m%Yi#h%Yi#i%Yi#j%Yi#k%Yi#l%Yi#m%Yi#n%Yi#o%Yi#p%Yi#r%Yi#t%Yi#v%Yi#w%Yi#z%Yi(T%Yi(d%Yi(k%Yi!W%Yi!X%Yi~Oz)vO})wOP%[iY%[ih%[il%[i{%[i!f%[i!g%[i!i%[i!m%[i#h%[i#i%[i#j%[i#k%[i#l%[i#m%[i#n%[i#o%[i#p%[i#r%[i#t%[i#v%[i#w%[i#z%[i(T%[i(d%[i(k%[i(l%[i!W%[i!X%[i~O#z$jy!W$jy!X$jy~P#CQO#z#]y!W#]y!X#]y~P#CQO!b#uO!W']q!h']q~O!W/VO!h(qy~O!T'_q!W'_q~P#,gO!T9VO~P#,gO!W0bO!X(zy~O!W4nO!X(wq~O!Y0zO%b9^O~O!h9aO~O!Y'VO%b9fO~OP$vqY$vql$vq{$vq!f$vq!g$vq!i$vq!m$vq#h$vq#i$vq#j$vq#k$vq#l$vq#m$vq#n$vq#o$vq#p$vq#r$vq#t$vq#v$vq#w$vq#z$vq(T$vq(d$vq!W$vq!X$vq~P%A_OP$xqY$xql$xq{$xq!f$xq!g$xq!i$xq!m$xq#h$xq#i$xq#j$xq#k$xq#l$xq#m$xq#n$xq#o$xq#p$xq#r$xq#t$xq#v$xq#w$xq#z$xq(T$xq(d$xq!W$xq!X$xq~P%A_Oe%^!Z!W%^!Z#Y%^!Z#z%^!Z~P!0kO!W'dq!X'dq~P#CQO!W#b!Z!X#b!Z~P#CQO#e%^!ZP%^!ZY%^!Z_%^!Zl%^!Z{%^!Z!W%^!Z!f%^!Z!g%^!Z!i%^!Z!m%^!Z#h%^!Z#i%^!Z#j%^!Z#k%^!Z#l%^!Z#m%^!Z#n%^!Z#o%^!Z#p%^!Z#r%^!Z#t%^!Z#v%^!Z#w%^!Z'm%^!Z(T%^!Z(d%^!Z!h%^!Z!T%^!Z'k%^!Z#Y%^!Zp%^!Z!Y%^!Z%b%^!Z!b%^!Z~P#,gOP%^!ZY%^!Zl%^!Z{%^!Z!f%^!Z!g%^!Z!i%^!Z!m%^!Z#h%^!Z#i%^!Z#j%^!Z#k%^!Z#l%^!Z#m%^!Z#n%^!Z#o%^!Z#p%^!Z#r%^!Z#t%^!Z#v%^!Z#w%^!Z#z%^!Z(T%^!Z(d%^!Z!W%^!Z!X%^!Z~P%A_Op(XX~P1qO'w!lO~P!*SO!TdX!WdX#YdX~P&2_OPZXYZXlZXzZX{ZX}ZX!WZX!WdX!fZX!gZX!iZX!mZX#YZX#YdX#edX#hZX#iZX#jZX#kZX#lZX#mZX#nZX#oZX#pZX#rZX#tZX#vZX#wZX#|ZX(TZX(dZX(kZX(lZX~O!bdX!hZX!hdX(ddX~P&GuOP9qOQ9qOb;bOc!iOjkOl9qOmkOnkOtkOv9qOx9qO}WO!RkO!SkO!YXO!d9tO!iZO!l9qO!m9qO!n9qO!p9uO!r9xO!u!hO$R!kO$VfO'v)UO'xTO'{UO(TVO(c[O(p;`O~O!W:VO!X$la~Oj%SOl$tOm$sOn$sOt%TOv%UOx:]O}${O!Y$|O!d;gO!i$xO#d:cO$R%YO$n:_O$p:aO$s%ZO'v(lO'xTO'{UO(P%RO(T$uO~O#q)]O~P&LkO!XZX!XdX~P&GuO#e9yO~O!b#uO#e9yO~O#Y:ZO~O#p:OO~O#Y:eO!W(iX!X(iX~O#Y:ZO!W(gX!X(gX~O#e:fO~Oe:hO~P!0kO#e:mO~O#e:nO~O!b#uO#e:oO~O!b#uO#e:fO~O#z:pO~P#CQO#e:qO~O#e:rO~O#e:sO~O#e:tO~O#e:uO~O#e:vO~O#z:wO~P!0kO#z:xO~P!0kO$V~!g!}#O#Q#R#U#c#d#o(p$n$p$s%V%a%b%c%j%l%o%p%r%t~'qR$V(p#i!S'o'w#jm#h#klz'p(W'p'v$X$Z$X~",goto:"$'R)OPPPP)PPP)SP)eP*t.xPPPP5YPP5pP;l>sP?WP?WPPP?WP@xP?WP?WP?WP@|PPARPAlPFdPPPFhPPPPFhIiPPPIoJjPFhPLxPPPP! WFhPPPFhPFhP!#fFhP!&z!'|!(VP!(y!(}!(yPPPPP!,Y!'|PP!,v!-pP!0dFhFh!0i!3s!8Y!8Y!wP#@W#@_#@gPPPP#Du#Gl#NT#NW#NZ$ S$ V$ Y$ a$ iPP$ o$ s$!k$#j$#n$$SPP$$W$$^$$bP$$e$$i$$l$%b$%y$&b$&f$&i$&l$&r$&u$&y$&}R!{RoqOXst!Z#c%f&i&k&l&n,b,g1g1jY!uQ'V-S0z4uQ%lvQ%tyQ%{|Q&a!VS&}!e,zQ']!iS'c!r!xS*_$|*dQ+`%uQ+m%}Q,R&ZQ-Q'UQ-['^Q-d'dQ/p*fQ1U,SR:d9u%OdOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$a$e%f%l%y&b&e&i&k&l&n&r&z'X'i'y'{(R(Y(n(r(v)u*x*|,_,b,g-W-`-n-t.b.i/z0P0a0}1_1`1b1d1g1j1l2]2c2w4r4|5^5_5b5u7Z7`7o7yS#p]9r!r)W$[$m'O)j,s,v.q1{3^4p5l8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;cQ*o%VQ+e%wQ,T&^Q,[&fQ.X:[Q0W+WQ0[+YQ0g+fQ1^,YQ2k.UQ4`0bQ5T1VQ6R2oQ6X:]Q6z4aR8P6S&|kOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$[$a$e$m%f%l%y&b&e&f&i&k&l&n&r&z'O'X'i'y'{(R(Y(n(r(v)j)u*x*|+W,_,b,g,s,v-W-`-n-t.U.b.i.q/z0P0a0}1_1`1b1d1g1j1l1{2]2c2o2w3^4p4r4|5^5_5b5l5u6S7Z7`7o7y8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;ct!nQ!r!u!x!y&}'U'V'c'd'e,z-Q-S-d0z4u4w$^$si#u#w$c$d$x${%W%X%])q)w)z)|)}*U*[*j*k+V+Y+q+t.T._/P/^/_/a/|0q0t0|2n3f3p3x4O4W4Y4{6P6g6p7]7|8X8l9O9^9f:X:Y:^:_:`:a:b:c:i:j:k:l:m:n:q:r:s:t:w:x;`;h;i;l;mQ&O|Q&{!eS'R%b,}Q+e%wQ/{*sQ0g+fQ0l+lQ1],XQ1^,YQ4`0bQ4i0nQ5W1XQ5X1[Q6z4aQ6}4fQ7h5ZQ8g7OR8r7ernOXst!V!Z#c%f&`&i&k&l&n,b,g1g1jR,V&b&v^OPXYstuvwz!Z!`!g!j!o#R#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$[$a$e$m%f%l%y&b&e&f&i&k&l&n&r&z'X'i'{(R(Y(n(r(v)j)u*x*|+W,_,b,g,s,v-W-`-n-t.U.b.i.q/z0P0a0}1_1`1b1d1g1j1l1{2]2c2o2w3^4p4r4|5^5_5b5l5u6S7Z7`7o7y8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;b;c[#[WZ#V#Y'O'y!S%cm#g#h#k%^%a(S(^(_(`*z*{*},^,t-r-x-y-z-|1o2g2h5k5|Q%oxQ%syS%x|%}Q&U!TQ'Y!hQ'[!iQ(g#rS*R$x*VS+_%t%uQ+c%wQ+|&XQ,Q&ZS-Z']'^Q.W(hQ/Z*SQ0`+`Q0f+fQ0h+gQ0k+kQ1P+}S1T,R,SQ2X-[Q3g/VQ4_0bQ4c0eQ4h0mQ5S1UQ6d3hQ6y4aQ6|4eQ8c6xR9X8dv$zi#w%W%X%])z)|*U*j*k._/^/|3f4O8X;`;h;i!S%qy!i!t%s%t%u&|'[']'^'b'l*^+_+`,w-Z-[-c/h0`2Q2X2`3zQ+X%oQ+r&RQ+u&SQ,P&ZQ.V(gQ1O+|U1S,Q,R,SQ2p.WQ4}1PS5R1T1UQ7d5S#O;d#u$c$d$x${)q)w)}*[+V+Y+q+t.T/P/_/a0q0t0|2n3p3x4W4Y4{6P6g6p7]7|8l9O9^9f:^:`:b:i:k:m:q:s:w;l;mg;e:X:Y:_:a:c:j:l:n:r:t:xW%Pi%R*l;`S&R!Q&`Q&S!RQ&T!SR+p&P$_%Oi#u#w$c$d$x${%W%X%])q)w)z)|)}*U*[*j*k+V+Y+q+t.T._/P/^/_/a/|0q0t0|2n3f3p3x4O4W4Y4{6P6g6p7]7|8X8l9O9^9f:X:Y:^:_:`:a:b:c:i:j:k:l:m:n:q:r:s:t:w:x;`;h;i;l;mT)r$u)sV*p%V:[:]U'R!e%b,}S(u#y#zQ+j%zS.P(c(dQ0u+vQ4P/yR7S4n&|kOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$[$a$e$m%f%l%y&b&e&f&i&k&l&n&r&z'O'X'i'y'{(R(Y(n(r(v)j)u*x*|+W,_,b,g,s,v-W-`-n-t.U.b.i.q/z0P0a0}1_1`1b1d1g1j1l1{2]2c2o2w3^4p4r4|5^5_5b5l5u6S7Z7`7o7y8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;c$i$`c#X#d%j%k%m'x(O(j(q(y(z({(|(})O)P)Q)R)S)T)V)Y)^)h+T+i,x-g-l-q-s.^.d.h.j.k.l.{/}1v1y2Z2b2v2{2|2}3O3P3Q3R3S3T3U3V3W3X3[3]3b4T4]5n5t5y6V6W6]6^7U7s7w8Q8U8V8{9Z9b9s;VT#SV#T&}kOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$[$a$e$m%f%l%y&b&e&f&i&k&l&n&r&z'O'X'i'y'{(R(Y(n(r(v)j)u*x*|+W,_,b,g,s,v-W-`-n-t.U.b.i.q/z0P0a0}1_1`1b1d1g1j1l1{2]2c2o2w3^4p4r4|5^5_5b5l5u6S7Z7`7o7y8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;cQ'P!eR1|,zv!nQ!e!r!u!x!y&}'U'V'c'd'e,z-Q-S-d0z4u4wS*^$|*dS/h*_*fQ/q*gQ0w+xQ3z/pR3}/snqOXst!Z#c%f&i&k&l&n,b,g1g1jQ&p!^Q'm!wS(i#t9yQ+]%rQ+z&UQ+{&WQ-X'ZQ-f'fS.](n:fS0O*x:oQ0^+^Q0y+yQ1n,iQ1p,jQ1x,uQ2V-YQ2Y-^S4U0P:uQ4Z0_S4^0a:vQ5m1zQ5q2WQ5v2_Q6w4[Q7t5oQ7u5rQ7x5wR8x7q$d$_c#X#d%k%m'x(O(j(q(y(z({(|(})O)P)Q)R)S)T)V)Y)^)h+T+i,x-g-l-q-s.^.d.h.k.l.{/}1v1y2Z2b2v2{2|2}3O3P3Q3R3S3T3U3V3W3X3[3]3b4T4]5n5t5y6V6W6]6^7U7s7w8Q8U8V8{9Z9b9s;VS(f#o'`U*i$}(m3ZS+S%j.jQ2l0WQ6O2kQ8O6RR9P8P$d$^c#X#d%k%m'x(O(j(q(y(z({(|(})O)P)Q)R)S)T)V)Y)^)h+T+i,x-g-l-q-s.^.d.h.k.l.{/}1v1y2Z2b2v2{2|2}3O3P3Q3R3S3T3U3V3W3X3[3]3b4T4]5n5t5y6V6W6]6^7U7s7w8Q8U8V8{9Z9b9s;VS(e#o'`S(w#z$_S+R%j.jS.Q(d(fQ.m)XQ0T+SR2i.R&|kOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$[$a$e$m%f%l%y&b&e&f&i&k&l&n&r&z'O'X'i'y'{(R(Y(n(r(v)j)u*x*|+W,_,b,g,s,v-W-`-n-t.U.b.i.q/z0P0a0}1_1`1b1d1g1j1l1{2]2c2o2w3^4p4r4|5^5_5b5l5u6S7Z7`7o7y8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;cS#p]9rQ&k!XQ&l!YQ&n![Q&o!]R1f,eQ'W!hQ+U%oQ-V'YS.S(g+XQ2T-UW2m.V.W0V0XQ5p2UU5}2j2l2pS7{6O6QS8}7}8OS9d8|9PQ9l9eR9o9mU!vQ'V-ST4s0z4u!Q_OXZ`st!V!Z#c#g%^%f&`&b&i&k&l&n(`,b,g-y1g1j]!pQ!r'V-S0z4uT#p]9r%Y{OPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$a$e%f%l%y&b&e&f&i&k&l&n&r&z'X'i'y'{(R(Y(n(r(v)u*x*|+W,_,b,g-W-`-n-t.U.b.i/z0P0a0}1_1`1b1d1g1j1l2]2c2o2w4r4|5^5_5b5u6S7Z7`7o7yS(u#y#zS.P(c(d!s:|$[$m'O)j,s,v.q1{3^4p5l8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;cY!tQ'V-S0z4uQ'b!rS'l!u!xS'n!y4wS-c'c'dQ-e'eR2`-dQ'k!tS([#f1aS-b'b'nQ/Y*RQ/f*^Q2a-eQ3l/ZS3u/g/qQ6c3gS6n3{3}Q8Z6dR8b6qQ#vbQ'j!tS(Z#f1aS(]#l*wQ*y%_Q+Z%pQ+a%vU-a'b'k'nQ-u([Q/X*RQ/e*^Q/k*aQ0]+[Q1Q,OS2^-b-eQ2f-}S3k/Y/ZS3t/f/qQ3w/jQ3y/lQ5P1RQ5x2aQ6b3gQ6f3lS6j3u3}Q6o3|Q7b5QS8Y6c6dQ8^6kQ8`6nQ8o7cQ9T8ZQ9U8_Q9W8bQ9`8pQ9h9VQ;P:zQ;[;TR;];UV!vQ'V-S%YaOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$a$e%f%l%y&b&e&f&i&k&l&n&r&z'X'i'y'{(R(Y(n(r(v)u*x*|+W,_,b,g-W-`-n-t.U.b.i/z0P0a0}1_1`1b1d1g1j1l2]2c2o2w4r4|5^5_5b5u6S7Z7`7o7yS#vz!j!r:y$[$m'O)j,s,v.q1{3^4p5l8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;cR;P;b%YbOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$a$e%f%l%y&b&e&f&i&k&l&n&r&z'X'i'y'{(R(Y(n(r(v)u*x*|+W,_,b,g-W-`-n-t.U.b.i/z0P0a0}1_1`1b1d1g1j1l2]2c2o2w4r4|5^5_5b5u6S7Z7`7o7yQ%_j!S%py!i!t%s%t%u&|'[']'^'b'l*^+_+`,w-Z-[-c/h0`2Q2X2`3zS%vz!jQ+[%qQ,O&ZW1R,P,Q,R,SU5Q1S1T1US7c5R5SQ8p7d!r:z$[$m'O)j,s,v.q1{3^4p5l8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;cQ;T;aR;U;b$|eOPXYstuvw!Z!`!g!o#R#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$a$e%f%l%y&b&e&i&k&l&n&r&z'X'i'{(R(Y(n(r(v)u*x*|+W,_,b,g-W-`-n-t.U.b.i/z0P0a0}1_1`1b1d1g1j1l2]2c2o2w4r4|5^5_5b5u6S7Z7`7o7yY#aWZ#V#Y'y!S%cm#g#h#k%^%a(S(^(_(`*z*{*},^,t-r-x-y-z-|1o2g2h5k5|Q,]&f!p:{$[$m)j,s,v.q1{3^4p5l8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;cR;O'OS'S!e%bR2O,}%OdOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$a$e%f%l%y&b&e&i&k&l&n&r&z'X'i'y'{(R(Y(n(r(v)u*x*|,_,b,g-W-`-n-t.b.i/z0P0a0}1_1`1b1d1g1j1l2]2c2w4r4|5^5_5b5u7Z7`7o7y!r)W$[$m'O)j,s,v.q1{3^4p5l8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;cQ,[&fQ0W+WQ2k.UQ6R2oR8P6S!f$Uc#X%j'x(O(j(q)Q)R)S)T)Y)^+i-g-l-q-s.^.d.{/}2Z2b2v3X4T4]5t5y6V7w8{9s!T:Q)V)h,x.j1v1y2{3T3U3V3W3[3b5n6W6]6^7U7s8Q8U8V9Z9b;V!b$Wc#X%j'x(O(j(q)S)T)Y)^+i-g-l-q-s.^.d.{/}2Z2b2v3X4T4]5t5y6V7w8{9s!P:S)V)h,x.j1v1y2{3V3W3[3b5n6W6]6^7U7s8Q8U8V9Z9b;V!^$[c#X%j'x(O(j(q)Y)^+i-g-l-q-s.^.d.{/}2Z2b2v3X4T4]5t5y6V7w8{9sQ3f/Tz;c)V)h,x.j1v1y2{3[3b5n6W6]6^7U7s8Q8U8V9Z9b;VQ;h;jR;i;k&|kOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$[$a$e$m%f%l%y&b&e&f&i&k&l&n&r&z'O'X'i'y'{(R(Y(n(r(v)j)u*x*|+W,_,b,g,s,v-W-`-n-t.U.b.i.q/z0P0a0}1_1`1b1d1g1j1l1{2]2c2o2w3^4p4r4|5^5_5b5l5u6S7Z7`7o7y8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;cS$nh$oR3_.p'TgOPWXYZhstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$[$a$e$m$o%f%l%y&b&e&f&i&k&l&n&r&z'O'X'i'y'{(R(Y(n(r(v)j)u*x*|+W,_,b,g,s,v-W-`-n-t.U.b.i.p.q/z0P0a0}1_1`1b1d1g1j1l1{2]2c2o2w3^4p4r4|5^5_5b5l5u6S7Z7`7o7y8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;cT$jf$pQ$hfS)a$k)eR)m$pT$if$pT)c$k)e'ThOPWXYZhstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$[$a$e$m$o%f%l%y&b&e&f&i&k&l&n&r&z'O'X'i'y'{(R(Y(n(r(v)j)u*x*|+W,_,b,g,s,v-W-`-n-t.U.b.i.p.q/z0P0a0}1_1`1b1d1g1j1l1{2]2c2o2w3^4p4r4|5^5_5b5l5u6S7Z7`7o7y8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;cT$nh$oQ$qhR)l$o%YjOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$a$e%f%l%y&b&e&f&i&k&l&n&r&z'X'i'y'{(R(Y(n(r(v)u*x*|+W,_,b,g-W-`-n-t.U.b.i/z0P0a0}1_1`1b1d1g1j1l2]2c2o2w4r4|5^5_5b5u6S7Z7`7o7y!s;a$[$m'O)j,s,v.q1{3^4p5l8h8y9q9t9u9x9y9z9{9|9}:O:P:Q:R:S:T:U:V:Z:d:e:f:h:o:p:u:v;c#clOPXZst!Z!`!o#R#c#n#{$m%f&b&e&f&i&k&l&n&r&z'X(v)j*|+W,_,b,g-W.U.q/z0}1_1`1b1d1g1j1l2o3^4r4|5^5_5b6S7Z7`7ov$}i#w%W%X%])z)|*U*j*k._/^/|3f4O8X;`;h;i#O(m#u$c$d$x${)q)w)}*[+V+Y+q+t.T/P/_/a0q0t0|2n3p3x4W4Y4{6P6g6p7]7|8l9O9^9f:^:`:b:i:k:m:q:s:w;l;mQ*t%ZQ.|)vg3Z:X:Y:_:a:c:j:l:n:r:t:xv$yi#w%W%X%])z)|*U*j*k._/^/|3f4O8X;`;h;iQ*W$zS*a$|*dQ*u%[Q/l*b#O;R#u$c$d$x${)q)w)}*[+V+Y+q+t.T/P/_/a0q0t0|2n3p3x4W4Y4{6P6g6p7]7|8l9O9^9f:^:`:b:i:k:m:q:s:w;l;mf;S:X:Y:_:a:c:j:l:n:r:t:xQ;W;dQ;X;eQ;Y;fR;Z;gv$}i#w%W%X%])z)|*U*j*k._/^/|3f4O8X;`;h;i#O(m#u$c$d$x${)q)w)}*[+V+Y+q+t.T/P/_/a0q0t0|2n3p3x4W4Y4{6P6g6p7]7|8l9O9^9f:^:`:b:i:k:m:q:s:w;l;mg3Z:X:Y:_:a:c:j:l:n:r:t:xnoOXst!Z#c%f&i&k&l&n,b,g1g1jQ*Z${Q,p&uQ,q&wR3o/_$^%Oi#u#w$c$d$x${%W%X%])q)w)z)|)}*U*[*j*k+V+Y+q+t.T._/P/^/_/a/|0q0t0|2n3f3p3x4O4W4Y4{6P6g6p7]7|8X8l9O9^9f:X:Y:^:_:`:a:b:c:i:j:k:l:m:n:q:r:s:t:w:x;`;h;i;l;mQ+s&SQ0s+uQ4l0rR7R4mT*c$|*dS*c$|*dT4t0z4uS/j*`4rT3|/r7ZQ+Z%pQ/k*aQ0]+[Q1Q,OQ5P1RQ7b5QQ8o7cR9`8pn)z$v(o*v/]/t/u2t3m4S6a6r9S;Q;^;_!Y:i(k)[*Q*Y.[.x.}/T/b0U0p0r2s3n3r4k4m6T6U6h6l6t6v8]8a9g;j;k]:j3Y6[8R9Q9R9pp)|$v(o*v/R/]/t/u2t3m4S6a6r9S;Q;^;_![:k(k)[*Q*Y.[.x.}/T/b0U0p0r2q2s3n3r4k4m6T6U6h6l6t6v8]8a9g;j;k_:l3Y6[8R8S9Q9R9prnOXst!V!Z#c%f&`&i&k&l&n,b,g1g1jQ&]!UR,_&frnOXst!V!Z#c%f&`&i&k&l&n,b,g1g1jR&]!UQ+w&TR0o+psnOXst!V!Z#c%f&`&i&k&l&n,b,g1g1jQ0{+|S4z1O1PU7[4x4y4}S8k7^7_S9[8j8mQ9i9]R9n9jQ&d!VR,W&`R5W1XS%x|%}R0h+gQ&i!WR,b&jR,h&oT1h,g1jR,l&pQ,k&pR1q,lQ'p!zR-h'pSsOtQ#cXT%is#cQ!}TR'r!}Q#QUR't#QQ)s$uR.y)sQ#TVR'v#TQ#WWU'|#W'}-oQ'}#XR-o(OQ,{'PR1},{Q.`(oR2u.`Q.c(qS2x.c2yR2y.dQ-S'VR2R-SY!rQ'V-S0z4uR'a!rS#^W%aU(T#^(U-pQ(U#_R-p(PQ-O'SR2P-Ot`OXst!V!Z#c%f&`&b&i&k&l&n,b,g1g1jS#gZ%^U#q`#g-yR-y(`Q(a#iQ-v(]W.O(a-v2d5zQ2d-wR5z2eQ)e$kR.r)eQ$ohR)k$oQ$bcU)Z$b-k:WQ-k9sR:W)hQ/W*RW3i/W3j6e8[U3j/X/Y/ZS6e3k3lR8[6f#o)x$v(k(o)[*Q*Y*q*r*v.Y.Z.[.x.}/R/S/T/]/b/t/u0U0p0r2q2r2s2t3Y3m3n3r4S4k4m6T6U6Y6Z6[6a6h6l6r6t6v8R8S8T8]8a9Q9R9S9g9p;Q;^;_;j;kQ/`*YU3q/`3s6iQ3s/bR6i3rQ*d$|R/n*dQ*m%QR/w*mQ4X0UR6u4XQ+O%dR0S+OQ4o0uS7T4o8iR8i7UQ+y&UR0x+yQ4u0zR7X4uQ1W,TS5U1W7fR7f5WQ0c+cW4b0c4d6{8eQ4d0fQ6{4cR8e6|Q+h%xR0i+hQ1j,gR5f1jYrOXst#cQ&m!ZQ+Q%fQ,a&iQ,c&kQ,d&lQ,f&nQ1e,bS1h,g1jR5e1gQ%hpQ&q!_Q&t!aQ&v!bQ&x!cQ'h!tQ+P%eQ+]%rQ+o&OQ,V&dQ,n&sW-_'b'j'k'nQ-f'fQ/m*cQ0^+^S1Z,W,ZQ1r,mQ1s,pQ1t,qQ2Y-^W2[-a-b-e-gQ4Z0_Q4g0lQ4j0pQ5O1QQ5Y1]Q5d1fU5s2Z2^2aQ5v2_Q6w4[Q7P4iQ7Q4kQ7W4tQ7a5PQ7g5XS7v5t5xQ7x5wQ8f6}Q8n7bQ8s7hQ8z7wQ9Y8gQ9_8oQ9c8{R9k9`Q%ryQ'Z!iQ'f!tU+^%s%t%uQ,u&|U-Y'[']'^S-^'b'lQ/d*^S0_+_+`Q1z,wS2W-Z-[Q2_-cQ3v/hQ4[0`Q5o2QQ5r2XQ5w2`R6m3zS$wi;`R*n%RU%Qi%R;`R/v*lQ$viS(k#u+YQ(o#wS)[$c$dQ*Q$xQ*Y${Q*q%WQ*r%XQ*v%]Q.Y:^Q.Z:`Q.[:bQ.x)qS.})w/PQ/R)zQ/S)|Q/T)}Q/]*UQ/b*[Q/t*jQ/u*kh0U+V.T0|2n4{6P7]7|8l9O9^9fQ0p+qQ0r+tQ2q:iQ2r:kQ2s:mQ2t._S3Y:X:YQ3m/^Q3n/_Q3r/aQ4S/|Q4k0qQ4m0tQ6T:qQ6U:sQ6Y:_Q6Z:aQ6[:cQ6a3fQ6h3pQ6l3xQ6r4OQ6t4WQ6v4YQ8R:nQ8S:jQ8T:lQ8]6gQ8a6pQ9Q:rQ9R:tQ9S8XQ9g:wQ9p:xQ;Q;`Q;^;hQ;_;iQ;j;lR;k;mnpOXst!Z#c%f&i&k&l&n,b,g1g1jQ!fPS#eZ#nQ&s!`U'_!o4r7ZQ'u#RQ(x#{Q)i$mS,Z&b&eQ,`&fQ,m&rQ,r&zQ-U'XQ.f(vQ.v)jQ0Q*|Q0X+WQ1c,_Q2U-WQ2l.UQ3a.qQ4Q/zQ4y0}Q5[1_Q5]1`Q5a1bQ5c1dQ5h1lQ6O2oQ6_3^Q7_4|Q7k5^Q7l5_Q7n5bQ8O6SQ8m7`R8w7o#WcOPXZst!Z!`!o#c#n#{%f&b&e&f&i&k&l&n&r&z'X(v*|+W,_,b,g-W.U/z0}1_1`1b1d1g1j1l2o4r4|5^5_5b6S7Z7`7oQ#XWQ#dYQ%juQ%kvS%mw!gS'x#V'{Q(O#YQ(j#tQ(q#xQ(y$OQ(z$PQ({$QQ(|$RQ(}$SQ)O$TQ)P$UQ)Q$VQ)R$WQ)S$XQ)T$YQ)V$[Q)Y$aQ)^$eW)h$m)j.q3^Q+T%lQ+i%yS,x'O1{Q-g'iS-l'y-nQ-q(RQ-s(YQ.^(nQ.d(rQ.h9qQ.j9tQ.k9uQ.l9xQ.{)uQ/}*xQ1v,sQ1y,vQ2Z-`Q2b-tQ2v.bQ2{9yQ2|9zQ2}9{Q3O9|Q3P9}Q3Q:OQ3R:PQ3S:QQ3T:RQ3U:SQ3V:TQ3W:UQ3X.iQ3[:ZQ3]:dQ3b:VQ4T0PQ4]0aQ5n:eQ5t2]Q5y2cQ6V2wQ6W:fQ6]:hQ6^:oQ7U4pQ7s5lQ7w5uQ8Q:pQ8U:uQ8V:vQ8{7yQ9Z8hQ9b8yQ9s#RR;V;cR#ZWR'Q!eY!tQ'V-S0z4uS&|!e,zQ'b!rS'l!u!xS'n!y4wS,w&}'US-c'c'dQ-e'eQ2Q-QR2`-dR(p#wR(s#xQ!fQT-R'V-S]!qQ!r'V-S0z4uQ#o]R'`9rT#jZ%^S#iZ%^S%dm,^U(]#g#h#kS-w(^(_Q-{(`Q0R*}Q2e-xU2f-y-z-|S5{2g2hR7z5|`#]W#V#Y%a'y(S*z-rr#fZm#g#h#k%^(^(_(`*}-x-y-z-|2g2h5|Q1a,^Q1w,tQ5j1oQ7r5kT:}'O*{T#`W%aS#_W%aS'z#V(SS(P#Y*zS,y'O*{T-m'y-rT'T!e%bQ$kfR)o$pT)d$k)eR3`.pT*T$x*VR*]${Q0V+VQ2j.TQ4x0|Q6Q2nQ7^4{Q7}6PQ8j7]Q8|7|Q9]8lQ9e9OQ9j9^R9m9fnqOXst!Z#c%f&i&k&l&n,b,g1g1jQ&c!VR,V&`tmOXst!U!V!Z#c%f&`&i&k&l&n,b,g1g1jR,^&fT%em,^R0v+vR,U&^Q%||R+n%}R+d%wT&g!W&jT&h!W&jT1i,g1j",nodeNames:"\u26A0 ArithOp ArithOp LineComment BlockComment Script Hashbang ExportDeclaration export Star as VariableName String Escape from ; default FunctionDeclaration async function VariableDefinition > TypeParamList TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . ?. PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewExpression new TypeArgList CompareOp < ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies in const CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXStartTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast ArrowFunction TypeParamList SequenceExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:367,context:rS,nodeProps:[["group",-26,7,15,17,63,200,204,208,209,211,214,217,227,229,235,237,239,241,244,250,256,258,260,262,264,266,267,"Statement",-32,11,12,26,29,30,36,46,49,50,52,57,65,73,77,79,81,82,104,105,114,115,132,135,137,138,139,140,142,143,163,164,166,"Expression",-23,25,27,31,35,37,39,167,169,171,172,174,175,176,178,179,180,182,183,184,194,196,198,199,"Type",-3,85,97,103,"ClassItem"],["openedBy",32,"InterpolationStart",51,"[",55,"{",70,"(",144,"JSXStartTag",156,"JSXStartTag JSXStartCloseTag"],["closedBy",34,"InterpolationEnd",45,"]",56,"}",71,")",145,"JSXSelfCloseEndTag JSXEndTag",161,"JSXEndTag"]],propSources:[lS],skippedNodes:[0,3,4,270],repeatNodeCount:33,tokenData:"$Fl(CSR!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#8g!R![#:v![!]#Gv!]!^#IS!^!_#J^!_!`#Nu!`!a$#a!a!b$(n!b!c$,m!c!}Er!}#O$-w#O#P$/R#P#Q$4j#Q#R$5t#R#SEr#S#T$7R#T#o$8]#o#p$s#r#s$@P#s$f%Z$f$g+g$g#BYEr#BY#BZ$AZ#BZ$ISEr$IS$I_$AZ$I_$I|Er$I|$I}$Df$I}$JO$Df$JO$JTEr$JT$JU$AZ$JU$KVEr$KV$KW$AZ$KW&FUEr&FU&FV$AZ&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$AZ?HUOEr(n%d_$e&j'yp'|!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$e&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$e&j'|!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU'|!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$e&j'ypOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU'ypOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX'yp'|!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z(CS+rq$e&j'yp'|!b'o(;dOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z(CS.ST'z#S$e&j'p(;dO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c(CS.n_$e&j'yp'|!b'p(;dOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`/x`$e&j!m$Ip'yp'|!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S1V`#r$Id$e&j'yp'|!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S2d_#r$Id$e&j'yp'|!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$2b3l_'x$(n$e&j'|!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k*r4r_$e&j'|!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k)`5vX$e&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q)`6jT$`#t$e&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c#t6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y#t7bO$`#t#t7eP;=`<%l6y)`7kP;=`<%l5q*r7w]$`#t$e&j'|!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}%W8uZ'|!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p%W9oU$`#t'|!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}%W:UP;=`<%l8p*r:[P;=`<%l4k#%|:hh$e&j'yp'|!bOY%ZYZ&cZq%Zqr`#P#o`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXUS$e&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSUSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWUS'|!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]US$e&j'ypOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWUS'ypOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYUS'yp'|!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%lQ^$e&j!SSOY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@Y!_!}!=y!}#O!Bw#O#P!Dj#P#o!=y#o#p!@Y#p;'S!=y;'S;=`!E[<%lO!=y&n!?Ta$e&j!SSO!^&c!_#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&cS!@_X!SSOY!@YZ!P!@Y!P!Q!@z!Q!}!@Y!}#O!Ac#O#P!Bb#P;'S!@Y;'S;=`!Bq<%lO!@YS!APU!SS#Z#[!@z#]#^!@z#a#b!@z#g#h!@z#i#j!@z#m#n!@zS!AfVOY!AcZ#O!Ac#O#P!A{#P#Q!@Y#Q;'S!Ac;'S;=`!B[<%lO!AcS!BOSOY!AcZ;'S!Ac;'S;=`!B[<%lO!AcS!B_P;=`<%l!AcS!BeSOY!@YZ;'S!@Y;'S;=`!Bq<%lO!@YS!BtP;=`<%l!@Y&n!B|[$e&jOY!BwYZ&cZ!^!Bw!^!_!Ac!_#O!Bw#O#P!Cr#P#Q!=y#Q#o!Bw#o#p!Ac#p;'S!Bw;'S;=`!Dd<%lO!Bw&n!CwX$e&jOY!BwYZ&cZ!^!Bw!^!_!Ac!_#o!Bw#o#p!Ac#p;'S!Bw;'S;=`!Dd<%lO!Bw&n!DgP;=`<%l!Bw&n!DoX$e&jOY!=yYZ&cZ!^!=y!^!_!@Y!_#o!=y#o#p!@Y#p;'S!=y;'S;=`!E[<%lO!=y&n!E_P;=`<%l!=y(Q!Eki$e&j'|!b!SSOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#Z&}#Z#[!Eb#[#]&}#]#^!Eb#^#a&}#a#b!Eb#b#g&}#g#h!Eb#h#i&}#i#j!Eb#j#m&}#m#n!Eb#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!f!GaZ'|!b!SSOY!GYZw!GYwx!@Yx!P!GY!P!Q!HS!Q!}!GY!}#O!Ic#O#P!Bb#P;'S!GY;'S;=`!JZ<%lO!GY!f!HZb'|!b!SSOY'}Zw'}x#O'}#P#Z'}#Z#[!HS#[#]'}#]#^!HS#^#a'}#a#b!HS#b#g'}#g#h!HS#h#i'}#i#j!HS#j#m'}#m#n!HS#n;'S'};'S;=`(f<%lO'}!f!IhX'|!bOY!IcZw!Icwx!Acx#O!Ic#O#P!A{#P#Q!GY#Q;'S!Ic;'S;=`!JT<%lO!Ic!f!JWP;=`<%l!Ic!f!J^P;=`<%l!GY(Q!Jh^$e&j'|!bOY!JaYZ&cZw!Jawx!Bwx!^!Ja!^!_!Ic!_#O!Ja#O#P!Cr#P#Q!Q#V#X%Z#X#Y!4|#Y#b%Z#b#c#Zd$e&j'yp'|!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#?i!R!S#?i!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#?i#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#?tf$e&j'yp'|!bm$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#?i!R!S#?i!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#?i#S#b%Z#b#c#aS[i]||-1},{term:330,get:i=>hS[i]||-1},{term:68,get:i=>cS[i]||-1}],tokenPrec:12827});var Er=class{constructor(e,t,n){this.state=e,this.pos=t,this.explicit=n,this.abortListeners=[]}tokenBefore(e){let t=A(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),n=Math.max(t.from,this.pos-250),r=t.text.slice(n-t.from,this.pos-t.from),s=r.search(uS(e,!1));return s<0?null:{from:n+s,to:this.pos,text:r.slice(s)}}get aborted(){return this.abortListeners==null}addEventListener(e,t){e=="abort"&&this.abortListeners&&this.abortListeners.push(t)}};function mf(i){let e=Object.keys(i).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function fS(i){let e=Object.create(null),t=Object.create(null);for(let{label:r}of i){e[r[0]]=!0;for(let s=1;stypeof r=="string"?{label:r}:r),[t,n]=e.every(r=>/^\w+$/.test(r.label))?[/\w*$/,/\w+$/]:fS(e);return r=>{let s=r.matchBefore(n);return s||r.explicit?{from:s?s.from:r.pos,options:e,validFor:t}:null}}function Sf(i,e){return t=>{for(let n=A(t.state).resolveInner(t.pos,-1);n;n=n.parent){if(i.indexOf(n.name)>-1)return null;if(n.type.isTop)break}return e(t)}}function uS(i,e){var t;let{source:n}=i,r=e&&n[0]!="^",s=n[n.length-1]!="$";return!r&&!s?i:new RegExp(`${r?"^":""}(?:${n})${s?"$":""}`,(t=i.flags)!==null&&t!==void 0?t:i.ignoreCase?"i":"")}var dS=ke.define();var pS=v.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"\xB7\xB7\xB7"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'\u0192'"}},".cm-completionIcon-class":{"&:after":{content:"'\u25CB'"}},".cm-completionIcon-interface":{"&:after":{content:"'\u25CC'"}},".cm-completionIcon-variable":{"&:after":{content:"'\u{1D465}'"}},".cm-completionIcon-constant":{"&:after":{content:"'\u{1D436}'"}},".cm-completionIcon-type":{"&:after":{content:"'\u{1D461}'"}},".cm-completionIcon-enum":{"&:after":{content:"'\u222A'"}},".cm-completionIcon-property":{"&:after":{content:"'\u25A1'"}},".cm-completionIcon-keyword":{"&:after":{content:"'\u{1F511}\uFE0E'"}},".cm-completionIcon-namespace":{"&:after":{content:"'\u25A2'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}}),dO=class{constructor(e,t,n,r){this.field=e,this.line=t,this.from=n,this.to=r}},pO=class i{constructor(e,t,n){this.field=e,this.from=t,this.to=n}map(e){let t=e.mapPos(this.from,-1,Oe.TrackDel),n=e.mapPos(this.to,1,Oe.TrackDel);return t==null||n==null?null:new i(this.field,t,n)}},mO=class i{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let n=[],r=[t],s=e.doc.lineAt(t),o=/^\s*/.exec(s.text)[0];for(let l of this.lines){if(n.length){let a=o,h=/^\t*/.exec(l)[0].length;for(let c=0;cnew pO(l.field,r[l.line]+l.from,r[l.line]+l.to));return{text:n,ranges:O}}static parse(e){let t=[],n=[],r=[],s;for(let o of e.split(/\r\n?|\n/)){for(;s=/[#$]\{(?:(\d+)(?::([^}]*))?|([^}]*))\}/.exec(o);){let O=s[1]?+s[1]:null,l=s[2]||s[3]||"",a=-1;for(let h=0;h=a&&c.field++}r.push(new dO(a,n.length,s.index,s.index+l.length)),o=o.slice(0,s.index)+l+o.slice(s.index+s[0].length)}for(let O;O=/\\([{}])/.exec(o);){o=o.slice(0,O.index)+O[1]+o.slice(O.index+O[0].length);for(let l of r)l.line==n.length&&l.from>O.index&&(l.from--,l.to--)}n.push(o)}return new i(n,r)}},mS=I.widget({widget:new class extends vt{toDOM(){let i=document.createElement("span");return i.className="cm-snippetFieldPosition",i}ignoreEvent(){return!1}}}),gS=I.mark({class:"cm-snippetField"}),ki=class i{constructor(e,t){this.ranges=e,this.active=t,this.deco=I.set(e.map(n=>(n.from==n.to?mS:gS).range(n.from,n.to)))}map(e){let t=[];for(let n of this.ranges){let r=n.map(e);if(!r)return null;t.push(r)}return new i(t,this.active)}selectionInsideField(e){return e.ranges.every(t=>this.ranges.some(n=>n.field==this.active&&n.from<=t.from&&n.to>=t.to))}},$n=E.define({map(i,e){return i&&i.map(e)}}),$S=E.define(),gn=$e.define({create(){return null},update(i,e){for(let t of e.effects){if(t.is($n))return t.value;if(t.is($S)&&i)return new ki(i.ranges,t.value)}return i&&e.docChanged&&(i=i.map(e.changes)),i&&e.selection&&!i.selectionInsideField(e.selection)&&(i=null),i},provide:i=>v.decorations.from(i,e=>e?e.deco:I.none)});function gO(i,e){return S.create(i.filter(t=>t.field==e).map(t=>S.range(t.from,t.to)))}function SS(i){let e=mO.parse(i);return(t,n,r,s)=>{let{text:o,ranges:O}=e.instantiate(t.state,r),l={changes:{from:r,to:s,insert:q.of(o)},scrollIntoView:!0,annotations:n?dS.of(n):void 0};if(O.length&&(l.selection=gO(O,0)),O.length>1){let a=new ki(O,0),h=l.effects=[$n.of(a)];t.state.field(gn,!1)===void 0&&h.push(E.appendConfig.of([gn,xS,wS,pS]))}t.dispatch(t.state.update(l))}}function Qf(i){return({state:e,dispatch:t})=>{let n=e.field(gn,!1);if(!n||i<0&&n.active==0)return!1;let r=n.active+i,s=i>0&&!n.ranges.some(o=>o.field==r+i);return t(e.update({selection:gO(n.ranges,r),effects:$n.of(s?null:new ki(n.ranges,r)),scrollIntoView:!0})),!0}}var QS=({state:i,dispatch:e})=>i.field(gn,!1)?(e(i.update({effects:$n.of(null)})),!0):!1,yS=Qf(1),bS=Qf(-1);var PS=[{key:"Tab",run:yS,shift:bS},{key:"Escape",run:QS}],gf=W.define({combine(i){return i.length?i[0]:PS}}),xS=et.highest(ot.compute([gf],i=>i.facet(gf)));function Pe(i,e){return Object.assign(Object.assign({},e),{apply:SS(i)})}var wS=v.domEventHandlers({mousedown(i,e){let t=e.state.field(gn,!1),n;if(!t||(n=e.posAtCoords({x:i.clientX,y:i.clientY}))==null)return!1;let r=t.ranges.find(s=>s.from<=n&&s.to>=n);return!r||r.field==t.active?!1:(e.dispatch({selection:gO(t.ranges,r.field),effects:$n.of(t.ranges.some(s=>s.field>r.field)?new ki(t.ranges,r.field):null),scrollIntoView:!0}),!0)}});var yf=new class extends Ie{};yf.startSide=1;yf.endSide=-1;var o1=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent);var wf=[Pe("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),Pe("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),Pe("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),Pe("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),Pe("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),Pe(`try { +`);n>-1&&(t=t.slice(0,n))}return e+t.length<=this.to?t:t.slice(0,this.to-e)}nextLine(){let e=this.parsedPos,t=this.lineAfter(e),n=e+t.length;for(let r=this.rangeIndex;;){let s=this.ranges[r].to;if(s>=n||(t=t.slice(0,s-(n-t.length)),r++,r==this.ranges.length))break;let o=this.ranges[r].from,O=this.lineAfter(o);t+=O,n=o+O.length}return{line:t,end:n}}skipGapsTo(e,t,n){for(;;){let r=this.ranges[this.rangeIndex].to,s=e+t;if(n>0?r>s:r>=s)break;let o=this.ranges[++this.rangeIndex].from;t+=o-r}return t}moveRangeIndex(){for(;this.ranges[this.rangeIndex].to1){s=this.skipGapsTo(t,s,1),t+=s;let o=this.chunk.length;s=this.skipGapsTo(n,s,-1),n+=s,r+=this.chunk.length-o}return this.chunk.push(e,t,n,r),s}parseLine(e){let{line:t,end:n}=this.nextLine(),r=0,{streamParser:s}=this.lang,o=new vr(t,e?e.state.tabSize:4,e?Vt(e.state):2);if(o.eol())s.blankLine(this.state,o.indentUnit);else for(;!o.eol();){let O=ic(s.token,o,this.state);if(O&&(r=this.emitToken(this.lang.tokenTable.resolve(O),this.parsedPos+o.start,this.parsedPos+o.pos,4,r)),o.start>1e4)break}this.parsedPos=n,this.moveRangeIndex(),this.parsedPose.start)return r}throw new Error("Stream parser failed to advance stream.")}var Lo=Object.create(null),un=[ie.none],s$=new $t(un),Eh=[],Gh=Object.create(null),nc=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"]])nc[i]=rc(Lo,e);var Zr=class{constructor(e){this.extra=e,this.table=Object.assign(Object.create(null),nc)}resolve(e){return e?this.table[e]||(this.table[e]=rc(this.extra,e)):0}},o$=new Zr(Lo);function qo(i,e){Eh.indexOf(i)>-1||(Eh.push(i),console.warn(e))}function rc(i,e){let t=[];for(let O of e.split(" ")){let a=[];for(let l of O.split(".")){let h=i[l]||u[l];h?typeof h=="function"?a.length?a=a.map(h):qo(l,`Modifier ${l} used at start of tag`):a.length?qo(l,`Tag ${l} used as modifier`):a=Array.isArray(h)?h:[h]:qo(l,`Unknown highlighting tag ${l}`)}for(let l of a)t.push(l)}if(!t.length)return 0;let n=e.replace(/ /g,"_"),r=n+" "+t.map(O=>O.id),s=Gh[r];if(s)return s.id;let o=Gh[r]=ie.define({id:un.length,name:n,props:[oe({[n]:t})]});return un.push(o),o.id}function O$(i){let e=ie.define({id:un.length,name:"Document",props:[St.add(()=>i)],top:!0});return un.push(e),e}var zP={rtl:I.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"rtl"},bidiIsolate:K.RTL}),ltr:I.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"ltr"},bidiIsolate:K.LTR}),auto:I.mark({class:"cm-iso",inclusive:!0,attributes:{dir:"auto"},bidiIsolate:null})};var a$=i=>{let{state:e}=i,t=e.doc.lineAt(e.selection.main.from),n=Jo(i.state,t.from);return n.line?l$(i):n.block?c$(i):!1};function Ko(i,e){return({state:t,dispatch:n})=>{if(t.readOnly)return!1;let r=i(e,t);return r?(n(t.update(r)),!0):!1}}var l$=Ko(d$,0);var h$=Ko(fc,0);var c$=Ko((i,e)=>fc(i,e,u$(e)),0);function Jo(i,e){let t=i.languageDataAt("commentTokens",e);return t.length?t[0]:{}}var mn=50;function f$(i,{open:e,close:t},n,r){let s=i.sliceDoc(n-mn,n),o=i.sliceDoc(r,r+mn),O=/\s*$/.exec(s)[0].length,a=/^\s*/.exec(o)[0].length,l=s.length-O;if(s.slice(l-e.length,l)==e&&o.slice(a,a+t.length)==t)return{open:{pos:n-O,margin:O&&1},close:{pos:r+a,margin:a&&1}};let h,c;r-n<=2*mn?h=c=i.sliceDoc(n,r):(h=i.sliceDoc(n,n+mn),c=i.sliceDoc(r-mn,r));let f=/^\s*/.exec(h)[0].length,d=/\s*$/.exec(c)[0].length,p=c.length-d-t.length;return h.slice(f,f+e.length)==e&&c.slice(p,p+t.length)==t?{open:{pos:n+f+e.length,margin:/\s/.test(h.charAt(f+e.length))?1:0},close:{pos:r-d-t.length,margin:/\s/.test(c.charAt(p-1))?1:0}}:null}function u$(i){let e=[];for(let t of i.selection.ranges){let n=i.doc.lineAt(t.from),r=t.to<=n.to?n:i.doc.lineAt(t.to),s=e.length-1;s>=0&&e[s].to>n.from?e[s].to=r.to:e.push({from:n.from+/^\s*/.exec(n.text)[0].length,to:r.to})}return e}function fc(i,e,t=e.selection.ranges){let n=t.map(s=>Jo(e,s.from).block);if(!n.every(s=>s))return null;let r=t.map((s,o)=>f$(e,n[o],s.from,s.to));if(i!=2&&!r.every(s=>s))return{changes:e.changes(t.map((s,o)=>r[o]?[]:[{from:s.from,insert:n[o].open+" "},{from:s.to,insert:" "+n[o].close}]))};if(i!=1&&r.some(s=>s)){let s=[];for(let o=0,O;or&&(s==o||o>c.from)){r=c.from;let f=/^\s*/.exec(c.text)[0].length,d=f==c.length,p=c.text.slice(f,f+l.length)==l?f:-1;fs.comment<0&&(!s.empty||s.single))){let s=[];for(let{line:O,token:a,indent:l,empty:h,single:c}of n)(c||!h)&&s.push({from:O.from+l,insert:a+" "});let o=e.changes(s);return{changes:o,selection:e.selection.map(o,1)}}else if(i!=1&&n.some(s=>s.comment>=0)){let s=[];for(let{line:o,comment:O,token:a}of n)if(O>=0){let l=o.from+O,h=l+a.length;o.text[h-o.from]==" "&&h++,s.push({from:l,to:h})}return{changes:s}}return null}var Bo=we.define(),p$=we.define(),m$=W.define(),uc=W.define({combine(i){return xt(i,{minDepth:100,newGroupDelay:500,joinToEvent:(e,t)=>t},{minDepth:Math.max,newGroupDelay:Math.min,joinToEvent:(e,t)=>(n,r)=>e(n,r)||t(n,r)})}}),dc=$e.define({create(){return ii.empty},update(i,e){let t=e.state.facet(uc),n=e.annotation(Bo);if(n){let a=Ke.fromTransaction(e,n.selection),l=n.side,h=l==0?i.undone:i.done;return a?h=Vr(h,h.length,t.minDepth,a):h=gc(h,e.startState.selection),new ii(l==0?n.rest:h,l==0?h:n.rest)}let r=e.annotation(p$);if((r=="full"||r=="before")&&(i=i.isolate()),e.annotation(ne.addToHistory)===!1)return e.changes.empty?i:i.addMapping(e.changes.desc);let s=Ke.fromTransaction(e),o=e.annotation(ne.time),O=e.annotation(ne.userEvent);return s?i=i.addChanges(s,o,O,t,e):e.selection&&(i=i.addSelection(e.startState.selection,o,O,t.newGroupDelay)),(r=="full"||r=="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 ii(i.done.map(Ke.fromJSON),i.undone.map(Ke.fromJSON))}});function pc(i={}){return[dc,uc.of(i),T.domEventHandlers({beforeinput(e,t){let n=e.inputType=="historyUndo"?mc:e.inputType=="historyRedo"?No:null;return n?(e.preventDefault(),n(t)):!1}})]}function qr(i,e){return function({state:t,dispatch:n}){if(!e&&t.readOnly)return!1;let r=t.field(dc,!1);if(!r)return!1;let s=r.pop(i,t,e);return s?(n(s),!0):!1}}var mc=qr(0,!1),No=qr(1,!1),$$=qr(0,!0),g$=qr(1,!0);var Ke=class i{constructor(e,t,n,r,s){this.changes=e,this.effects=t,this.mapped=n,this.startSelection=r,this.selectionsAfter=s}setSelAfter(e){return new i(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(r=>r.toJSON())}}static fromJSON(e){return new i(e.changes&&me.fromJSON(e.changes),[],e.mapped&&ut.fromJSON(e.mapped),e.startSelection&&S.fromJSON(e.startSelection),e.selectionsAfter.map(S.fromJSON))}static fromTransaction(e,t){let n=Me;for(let r of e.startState.facet(m$)){let s=r(e);s.length&&(n=n.concat(s))}return!n.length&&e.changes.empty?null:new i(e.changes.invert(e.startState.doc),n,void 0,t||e.startState.selection,Me)}static selection(e){return new i(void 0,Me,void 0,void 0,e)}};function Vr(i,e,t,n){let r=e+1>t+20?e-t-1:0,s=i.slice(r,e);return s.push(n),s}function Q$(i,e){let t=[],n=!1;return i.iterChangedRanges((r,s)=>t.push(r,s)),e.iterChangedRanges((r,s,o,O)=>{for(let a=0;a=l&&o<=h&&(n=!0)}}),n}function S$(i,e){return i.ranges.length==e.ranges.length&&i.ranges.filter((t,n)=>t.empty!=e.ranges[n].empty).length===0}function $c(i,e){return i.length?e.length?i.concat(e):i:e}var Me=[],y$=200;function gc(i,e){if(i.length){let t=i[i.length-1],n=t.selectionsAfter.slice(Math.max(0,t.selectionsAfter.length-y$));return n.length&&n[n.length-1].eq(e)?i:(n.push(e),Vr(i,i.length-1,1e9,t.setSelAfter(n)))}else return[Ke.selection([e])]}function P$(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 Do(i,e){if(!i.length)return i;let t=i.length,n=Me;for(;t;){let r=b$(i[t-1],e,n);if(r.changes&&!r.changes.empty||r.effects.length){let s=i.slice(0,t);return s[t-1]=r,s}else e=r.mapped,t--,n=r.selectionsAfter}return n.length?[Ke.selection(n)]:Me}function b$(i,e,t){let n=$c(i.selectionsAfter.length?i.selectionsAfter.map(O=>O.map(e)):Me,t);if(!i.changes)return Ke.selection(n);let r=i.changes.map(e),s=e.mapDesc(i.changes,!0),o=i.mapped?i.mapped.composeDesc(s):s;return new Ke(r,B.mapEffects(i.effects,e),o,i.startSelection.map(s),n)}var x$=/^(input\.type|delete)($|\.)/,ii=class i{constructor(e,t,n=0,r=void 0){this.done=e,this.undone=t,this.prevTime=n,this.prevUserEvent=r}isolate(){return this.prevTime?new i(this.done,this.undone):this}addChanges(e,t,n,r,s){let o=this.done,O=o[o.length-1];return O&&O.changes&&!O.changes.empty&&e.changes&&(!n||x$.test(n))&&(!O.selectionsAfter.length&&t-this.prevTime0&&t-this.prevTimet.empty?i.moveByChar(t,e):Yr(t,e))}function de(i){return i.textDirectionAt(i.state.selection.main.head)==K.LTR}var yc=i=>Sc(i,!de(i)),Pc=i=>Sc(i,de(i));function bc(i,e){return Je(i,t=>t.empty?i.moveByGroup(t,e):Yr(t,e))}var w$=i=>bc(i,!de(i)),k$=i=>bc(i,de(i));var CP=typeof Intl<"u"&&Intl.Segmenter?new Intl.Segmenter(void 0,{granularity:"word"}):null;function T$(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 Cr(i,e,t){let n=M(i).resolveInner(e.head),r=t?R.closedBy:R.openedBy;for(let a=e.head;;){let l=t?n.childAfter(a):n.childBefore(a);if(!l)break;T$(i,l,r)?n=l:a=t?l.to:l.from}let s=n.type.prop(r),o,O;return s&&(o=t?Fe(i,n.from,1):Fe(i,n.to,-1))&&o.matched?O=t?o.end.to:o.end.from:O=t?n.to:n.from,S.cursor(O,t?-1:1)}var v$=i=>Je(i,e=>Cr(i.state,e,!de(i))),z$=i=>Je(i,e=>Cr(i.state,e,de(i)));function xc(i,e){return Je(i,t=>{if(!t.empty)return Yr(t,e);let n=i.moveVertically(t,e);return n.head!=t.head?n:i.moveToLineBoundary(t,e)})}var wc=i=>xc(i,!1),kc=i=>xc(i,!0);function Tc(i){let e=i.scrollDOM.clientHeighto.empty?i.moveVertically(o,e,t.height):Yr(o,e));if(r.eq(n.selection))return!1;let s;if(t.selfScroll){let o=i.coordsAtPos(n.selection.main.head),O=i.scrollDOM.getBoundingClientRect(),a=O.top+t.marginTop,l=O.bottom-t.marginBottom;o&&o.top>a&&o.bottomvc(i,!1),Ho=i=>vc(i,!0);function Ct(i,e,t){let n=i.lineBlockAt(e.head),r=i.moveToLineBoundary(e,t);if(r.head==e.head&&r.head!=(t?n.to:n.from)&&(r=i.moveToLineBoundary(e,t,!1)),!t&&r.head==n.from&&n.length){let s=/^\s*/.exec(i.state.sliceDoc(n.from,Math.min(n.from+100,n.to)))[0].length;s&&e.head!=n.from+s&&(r=S.cursor(n.from+s))}return r}var Z$=i=>Je(i,e=>Ct(i,e,!0)),X$=i=>Je(i,e=>Ct(i,e,!1)),W$=i=>Je(i,e=>Ct(i,e,!de(i))),R$=i=>Je(i,e=>Ct(i,e,de(i))),V$=i=>Je(i,e=>S.cursor(i.lineBlockAt(e.head).from,1)),q$=i=>Je(i,e=>S.cursor(i.lineBlockAt(e.head).to,-1));function Y$(i,e,t){let n=!1,r=Ti(i.selection,s=>{let o=Fe(i,s.head,-1)||Fe(i,s.head,1)||s.head>0&&Fe(i,s.head-1,1)||s.headY$(i,e,!1);function Ie(i,e){let t=Ti(i.state.selection,n=>{let r=e(n);return S.range(n.anchor,r.head,r.goalColumn,r.bidiLevel||void 0)});return t.eq(i.state.selection)?!1:(i.dispatch(ft(i.state,t)),!0)}function zc(i,e){return Ie(i,t=>i.moveByChar(t,e))}var Zc=i=>zc(i,!de(i)),Xc=i=>zc(i,de(i));function Wc(i,e){return Ie(i,t=>i.moveByGroup(t,e))}var j$=i=>Wc(i,!de(i)),A$=i=>Wc(i,de(i));var _$=i=>Ie(i,e=>Cr(i.state,e,!de(i))),U$=i=>Ie(i,e=>Cr(i.state,e,de(i)));function Rc(i,e){return Ie(i,t=>i.moveVertically(t,e))}var Vc=i=>Rc(i,!1),qc=i=>Rc(i,!0);function Yc(i,e){return Ie(i,t=>i.moveVertically(t,e,Tc(i).height))}var oc=i=>Yc(i,!1),Oc=i=>Yc(i,!0),E$=i=>Ie(i,e=>Ct(i,e,!0)),G$=i=>Ie(i,e=>Ct(i,e,!1)),M$=i=>Ie(i,e=>Ct(i,e,!de(i))),I$=i=>Ie(i,e=>Ct(i,e,de(i))),L$=i=>Ie(i,e=>S.cursor(i.lineBlockAt(e.head).from)),D$=i=>Ie(i,e=>S.cursor(i.lineBlockAt(e.head).to)),ac=({state:i,dispatch:e})=>(e(ft(i,{anchor:0})),!0),lc=({state:i,dispatch:e})=>(e(ft(i,{anchor:i.doc.length})),!0),hc=({state:i,dispatch:e})=>(e(ft(i,{anchor:i.selection.main.anchor,head:0})),!0),cc=({state:i,dispatch:e})=>(e(ft(i,{anchor:i.selection.main.anchor,head:i.doc.length})),!0),B$=({state:i,dispatch:e})=>(e(i.update({selection:{anchor:0,head:i.doc.length},userEvent:"select"})),!0),N$=({state:i,dispatch:e})=>{let t=jr(i).map(({from:n,to:r})=>S.range(n,Math.min(r+1,i.doc.length)));return e(i.update({selection:S.create(t),userEvent:"select"})),!0},H$=({state:i,dispatch:e})=>{let t=Ti(i.selection,n=>{var r;let s=M(i).resolveStack(n.from,1);for(let o=s;o;o=o.next){let{node:O}=o;if((O.from=n.to||O.to>n.to&&O.from<=n.from)&&(!((r=O.parent)===null||r===void 0)&&r.parent))return S.range(O.to,O.from)}return n});return e(ft(i,t)),!0},F$=({state:i,dispatch:e})=>{let t=i.selection,n=null;return t.ranges.length>1?n=S.create([t.main]):t.main.empty||(n=S.create([S.cursor(t.main.head)])),n?(e(ft(i,n)),!0):!1};function $n(i,e){if(i.state.readOnly)return!1;let t="delete.selection",{state:n}=i,r=n.changeByRange(s=>{let{from:o,to:O}=s;if(o==O){let a=e(s);ao&&(t="delete.forward",a=Rr(i,a,!0)),o=Math.min(o,a),O=Math.max(O,a)}else o=Rr(i,o,!1),O=Rr(i,O,!0);return o==O?{range:s}:{changes:{from:o,to:O},range:S.cursor(o,or(i)))n.between(e,e,(r,s)=>{re&&(e=t?s:r)});return e}var Cc=(i,e)=>$n(i,t=>{let n=t.from,{state:r}=i,s=r.doc.lineAt(n),o,O;if(!e&&n>s.from&&nCc(i,!1),jc=i=>Cc(i,!0),Ac=(i,e)=>$n(i,t=>{let n=t.head,{state:r}=i,s=r.doc.lineAt(n),o=r.charCategorizer(n);for(let O=null;;){if(n==(e?s.to:s.from)){n==t.head&&s.number!=(e?r.doc.lines:1)&&(n+=e?1:-1);break}let a=le(s.text,n-s.from,e)+s.from,l=s.text.slice(Math.min(n,a)-s.from,Math.max(n,a)-s.from),h=o(l);if(O!=null&&h!=O)break;(l!=" "||n!=t.head)&&(O=h),n=a}return n}),_c=i=>Ac(i,!1),K$=i=>Ac(i,!0),J$=i=>$n(i,e=>{let t=i.lineBlockAt(e.head).to;return e.head$n(i,e=>{let t=i.moveToLineBoundary(e,!1).head;return e.head>t?t:Math.max(0,e.head-1)}),tg=i=>$n(i,e=>{let t=i.moveToLineBoundary(e,!0).head;return e.head{if(i.readOnly)return!1;let t=i.changeByRange(n=>({changes:{from:n.from,to:n.to,insert:j.of(["",""])},range:S.cursor(n.from)}));return e(i.update(t,{scrollIntoView:!0,userEvent:"input"})),!0},ng=({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 r=n.from,s=i.doc.lineAt(r),o=r==s.from?r-1:le(s.text,r-s.from,!1)+s.from,O=r==s.to?r+1:le(s.text,r-s.from,!0)+s.from;return{changes:{from:o,to:O,insert:i.doc.slice(r,O).append(i.doc.slice(o,r))},range:S.cursor(O)}});return t.changes.empty?!1:(e(i.update(t,{scrollIntoView:!0,userEvent:"move.character"})),!0)};function jr(i){let e=[],t=-1;for(let n of i.selection.ranges){let r=i.doc.lineAt(n.from),s=i.doc.lineAt(n.to);if(!n.empty&&n.to==s.from&&(s=i.doc.lineAt(n.to-1)),t>=r.number){let o=e[e.length-1];o.to=s.to,o.ranges.push(n)}else e.push({from:r.from,to:s.to,ranges:[n]});t=s.number+1}return e}function Uc(i,e,t){if(i.readOnly)return!1;let n=[],r=[];for(let s of jr(i)){if(t?s.to==i.doc.length:s.from==0)continue;let o=i.doc.lineAt(t?s.to+1:s.from-1),O=o.length+1;if(t){n.push({from:s.to,to:o.to},{from:s.from,insert:o.text+i.lineBreak});for(let a of s.ranges)r.push(S.range(Math.min(i.doc.length,a.anchor+O),Math.min(i.doc.length,a.head+O)))}else{n.push({from:o.from,to:s.from},{from:s.to,insert:i.lineBreak+o.text});for(let a of s.ranges)r.push(S.range(a.anchor-O,a.head-O))}}return n.length?(e(i.update({changes:n,scrollIntoView:!0,selection:S.create(r,i.selection.mainIndex),userEvent:"move.line"})),!0):!1}var rg=({state:i,dispatch:e})=>Uc(i,e,!1),sg=({state:i,dispatch:e})=>Uc(i,e,!0);function Ec(i,e,t){if(i.readOnly)return!1;let n=[];for(let r of jr(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)});return e(i.update({changes:n,scrollIntoView:!0,userEvent:"input.copyline"})),!0}var og=({state:i,dispatch:e})=>Ec(i,e,!1),Og=({state:i,dispatch:e})=>Ec(i,e,!0),ag=i=>{if(i.state.readOnly)return!1;let{state:e}=i,t=e.changes(jr(e).map(({from:r,to:s})=>(r>0?r--:si.moveVertically(r,!0)).map(t);return i.dispatch({changes:t,selection:n,scrollIntoView:!0,userEvent:"delete.line"}),!0};function lg(i,e){if(/\(\)|\[\]|\{\}/.test(i.sliceDoc(e-1,e+1)))return{from:e,to:e};let t=M(i).resolveInner(e),n=t.childBefore(e),r=t.childAfter(e),s;return n&&r&&n.to<=e&&r.from>=e&&(s=n.type.prop(R.closedBy))&&s.indexOf(r.name)>-1&&i.doc.lineAt(n.to).from==i.doc.lineAt(r.from).from&&!/\S/.test(i.sliceDoc(n.to,r.from))?{from:n.to,to:r.from}:null}var hg=Gc(!1),cg=Gc(!0);function Gc(i){return({state:e,dispatch:t})=>{if(e.readOnly)return!1;let n=e.changeByRange(r=>{let{from:s,to:o}=r,O=e.doc.lineAt(s),a=!i&&s==o&&lg(e,s);i&&(s=o=(o<=O.to?O:e.doc.lineAt(o)).to);let l=new ti(e,{simulateBreak:s,simulateDoubleBreak:!!a}),h=Go(l,s);for(h==null&&(h=ke(/^\s*/.exec(e.doc.lineAt(s).text)[0],e.tabSize));oO.from&&s{let r=[];for(let o=n.from;o<=n.to;){let O=i.doc.lineAt(o);O.number>t&&(n.empty||n.to>O.from)&&(e(O,r,n),t=O.number),o=O.to+1}let s=i.changes(r);return{changes:r,range:S.range(s.mapPos(n.anchor,1),s.mapPos(n.head,1))}})}var fg=({state:i,dispatch:e})=>{if(i.readOnly)return!1;let t=Object.create(null),n=new ti(i,{overrideIndentation:s=>{let o=t[s];return o??-1}}),r=eO(i,(s,o,O)=>{let a=Go(n,s.from);if(a==null)return;/\S/.test(s.text)||(a=0);let l=/^\s*/.exec(s.text)[0],h=dn(i,a);(l!=h||O.fromi.readOnly?!1:(e(i.update(eO(i,(t,n)=>{n.push({from:t.from,insert:i.facet(qt)})}),{userEvent:"input.indent"})),!0),Ic=({state:i,dispatch:e})=>i.readOnly?!1:(e(i.update(eO(i,(t,n)=>{let r=/^\s*/.exec(t.text)[0];if(!r)return;let s=ke(r,i.tabSize),o=0,O=dn(i,Math.max(0,s-Vt(i)));for(;o({mac:i.key,run:i.run,shift:i.shift}))),tO=[{key:"Alt-ArrowLeft",mac:"Ctrl-ArrowLeft",run:v$,shift:_$},{key:"Alt-ArrowRight",mac:"Ctrl-ArrowRight",run:z$,shift:U$},{key:"Alt-ArrowUp",run:rg},{key:"Shift-Alt-ArrowUp",run:og},{key:"Alt-ArrowDown",run:sg},{key:"Shift-Alt-ArrowDown",run:Og},{key:"Escape",run:F$},{key:"Mod-Enter",run:cg},{key:"Alt-l",mac:"Ctrl-l",run:N$},{key:"Mod-i",run:H$,preventDefault:!0},{key:"Mod-[",run:Ic},{key:"Mod-]",run:Mc},{key:"Mod-Alt-\\",run:fg},{key:"Shift-Mod-k",run:ag},{key:"Shift-Mod-\\",run:C$},{key:"Mod-/",run:a$},{key:"Alt-A",run:h$}].concat(dg),Lc={key:"Tab",run:Mc,shift:Ic};var pg="#e5c07b",Dc="#e06c75",mg="#56b6c2",$g="#ffffff",Ar="#abb2bf",nO="#7d8799",gg="#61afef",Qg="#98c379",Bc="#d19a66",Sg="#c678dd",yg="#21252b",Nc="#2c313a",Hc="#282c34",iO="#353a42",Pg="#3E4451",Fc="#528bff";var Kc=T.theme({"&":{color:Ar,backgroundColor:Hc},".cm-content":{caretColor:Fc},".cm-cursor, .cm-dropCursor":{borderLeftColor:Fc},"&.cm-focused > .cm-scroller > .cm-selectionLayer .cm-selectionBackground, .cm-selectionBackground, .cm-content ::selection":{backgroundColor:Pg},".cm-panels":{backgroundColor:yg,color:Ar},".cm-panels.cm-panels-top":{borderBottom:"2px solid black"},".cm-panels.cm-panels-bottom":{borderTop:"2px solid black"},".cm-searchMatch":{backgroundColor:"#72a1ff59",outline:"1px solid #457dff"},".cm-searchMatch.cm-searchMatch-selected":{backgroundColor:"#6199ff2f"},".cm-activeLine":{backgroundColor:"#6699ff0b"},".cm-selectionMatch":{backgroundColor:"#aafe661a"},"&.cm-focused .cm-matchingBracket, &.cm-focused .cm-nonmatchingBracket":{backgroundColor:"#bad0f847"},".cm-gutters":{backgroundColor:Hc,color:nO,border:"none"},".cm-activeLineGutter":{backgroundColor:Nc},".cm-foldPlaceholder":{backgroundColor:"transparent",border:"none",color:"#ddd"},".cm-tooltip":{border:"none",backgroundColor:iO},".cm-tooltip .cm-tooltip-arrow:before":{borderTopColor:"transparent",borderBottomColor:"transparent"},".cm-tooltip .cm-tooltip-arrow:after":{borderTopColor:iO,borderBottomColor:iO},".cm-tooltip-autocomplete":{"& > ul > li[aria-selected]":{backgroundColor:Nc,color:Ar}}},{dark:!0}),Jc=yt.define([{tag:u.keyword,color:Sg},{tag:[u.name,u.deleted,u.character,u.propertyName,u.macroName],color:Dc},{tag:[u.function(u.variableName),u.labelName],color:gg},{tag:[u.color,u.constant(u.name),u.standard(u.name)],color:Bc},{tag:[u.definition(u.name),u.separator],color:Ar},{tag:[u.typeName,u.className,u.number,u.changed,u.annotation,u.modifier,u.self,u.namespace],color:pg},{tag:[u.operator,u.operatorKeyword,u.url,u.escape,u.regexp,u.link,u.special(u.string)],color:mg},{tag:[u.meta,u.comment],color:nO},{tag:u.strong,fontWeight:"bold"},{tag:u.emphasis,fontStyle:"italic"},{tag:u.strikethrough,textDecoration:"line-through"},{tag:u.link,color:nO,textDecoration:"underline"},{tag:u.heading,fontWeight:"bold",color:Dc},{tag:[u.atom,u.bool,u.special(u.variableName)],color:Bc},{tag:[u.processingInstruction,u.string,u.inserted],color:Qg},{tag:u.invalid,color:$g}]);var bg=yt.define([{tag:u.meta,color:"#388938"},{tag:u.link,textDecoration:"underline"},{tag:u.heading,textDecoration:"underline",fontWeight:"bold"},{tag:u.emphasis,fontStyle:"italic"},{tag:u.strong,fontWeight:"bold"},{tag:u.strikethrough,textDecoration:"line-through"},{tag:u.keyword,color:"#708"},{tag:[u.atom,u.bool,u.url,u.contentSeparator,u.labelName],color:"#219"},{tag:[u.literal,u.inserted],color:"#164"},{tag:[u.string,u.deleted],color:"#a11"},{tag:[u.regexp,u.escape,u.special(u.string)],color:"#e40"},{tag:u.definition(u.variableName),color:"#00f"},{tag:u.local(u.variableName),color:"#30a"},{tag:[u.typeName,u.namespace],color:"#085"},{tag:u.className,color:"#167"},{tag:[u.special(u.variableName),u.macroName],color:"#256"},{tag:u.definition(u.propertyName),color:"#00c"},{tag:u.compareOperator,color:"#708"},{tag:u.comment,color:"#940"},{tag:u.invalid,color:"#f00"}]),xg={"&":{backgroundColor:"#FFF",color:"#000"},"&.cm-focused":{outline:"none"},".cm-line":{lineHeight:"1.6"}};function ef(i){let e=document.documentElement.classList.contains("dark-mode"),t=e?Kc:T.theme(xg),n=e?Jc:bg,r={darkModeActive:e,registerViewTheme(s){let o=s();o&&(t=T.theme(o))},registerHighlightStyle(s){let o=s(u)||[];o.length&&(n=yt.define(o))}};return window.$events.emitPublic(i,"library-cm6::configure-theme",r),[t,Mo(n)]}function tf(i){return[ef(i),bh(),gh(),yh(),ec(),Ph()]}function wg(){let i=new dt,e={focus(t,n){n.dispatch({effects:i.reconfigure([mo(),po()])})},blur(t,n){n.dispatch({effects:i.reconfigure([])})}};return[i.of([]),T.domEventHandlers(e)]}function rO(i){return[...tf(i),wg(),at.of([...tO]),L.readOnly.of(!0)]}function _r(i){return[...tf(i),mo(),po(),pc(),at.of([...tO,...Qc,Lc]),T.lineWrapping]}var OO=class i{constructor(e,t,n,r,s,o,O,a,l,h=0,c){this.p=e,this.stack=t,this.state=n,this.reducePos=r,this.pos=s,this.score=o,this.buffer=O,this.bufferBase=a,this.curContext=l,this.lookAhead=h,this.parent=c}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 r=e.parser.context;return new i(e,[],t,n,n,0,[],0,r?new Ur(r,r.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,r=e&65535,{parser:s}=this.p,o=s.dynamicPrecedence(r);if(o&&(this.score+=o),n==0){this.pushState(s.getGoto(this.state,r,!0),this.reducePos),r=2e3&&!(!((t=this.p.parser.nodeSet.types[r])===null||t===void 0)&&t.isAnonymous)&&(a==this.p.lastBigReductionStart?(this.p.bigReductionCount++,this.p.lastBigReductionSize=l):this.p.lastBigReductionSizeO;)this.stack.pop();this.reduceContext(r,a)}storeNode(e,t,n,r=4,s=!1){if(e==0&&(!this.stack.length||this.stack[this.stack.length-1]0&&o.buffer[O-4]==0&&o.buffer[O-1]>-1){if(t==n)return;if(o.buffer[O-2]>=t){o.buffer[O-2]=n;return}}}if(!s||this.pos==n)this.buffer.push(e,t,n,r);else{let o=this.buffer.length;if(o>0&&this.buffer[o-4]!=0)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,r>4&&(r-=4);this.buffer[o]=e,this.buffer[o+1]=t,this.buffer[o+2]=n,this.buffer[o+3]=r}}shift(e,t,n,r){if(e&131072)this.pushState(e&65535,this.pos);else if(e&262144)this.pos=r,this.shiftContext(t,n),t<=this.p.parser.maxNode&&this.buffer.push(t,n,r,4);else{let s=e,{parser:o}=this.p;(r>this.pos||t<=o.maxNode)&&(this.pos=r,o.stateFlag(s,1)||(this.reducePos=r)),this.pushState(s,n),this.shiftContext(t,n),t<=o.maxNode&&this.buffer.push(t,n,r,4)}}apply(e,t,n,r){e&65536?this.reduce(e):this.shift(e,t,n,r)}useNode(e,t){let n=this.p.reused.length-1;(n<0||this.p.reused[n]!=e)&&(this.p.reused.push(e),n++);let r=this.pos;this.reducePos=this.pos=r+e.length,this.pushState(t,r),this.buffer.push(n,r,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>0&&e.buffer[t-2]>e.reducePos;)t-=4;let n=e.buffer.slice(t),r=e.bufferBase+t;for(;e&&r==e.bufferBase;)e=e.parent;return new i(this.p,this.stack.slice(),this.state,this.reducePos,this.pos,this.score,n,r,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 aO(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))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 r=[];for(let s=0,o;sa&1&&O==o)||r.push(t[s],o)}t=r}let n=[];for(let r=0;r>19,r=t&65535,s=this.stack.length-n*3;if(s<0||e.getGoto(this.stack[s],r,!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=(r,s)=>{if(!t.includes(r))return t.push(r),e.allActions(r,o=>{if(!(o&393216))if(o&65536){let O=(o>>19)-s;if(O>1){let a=o&65535,l=this.stack.length-O*3;if(l>=0&&e.getGoto(this.stack[l],a,!1)>=0)return O<<19|65536|a}}else{let O=n(o,s+1);if(O!=null)return O}})};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;tthis.lookAhead&&(this.emitLookAhead(),this.lookAhead=e)}close(){this.curContext&&this.curContext.tracker.strict&&this.emitContext(),this.lookAhead>0&&this.emitLookAhead()}},Ur=class{constructor(e,t){this.tracker=e,this.context=t,this.hash=e.strict?e.hash(t):0}},aO=class{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 r=this.start.p.parser.getGoto(this.stack[this.base-3],t,!0);this.state=r}},lO=class i{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 i(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 i(this.stack,this.pos,this.index)}};function gn(i,e=Uint16Array){if(typeof i!="string")return i;let t=null;for(let n=0,r=0;n=92&&o--,o>=34&&o--;let a=o-32;if(a>=46&&(a-=46,O=!0),s+=a,O)break;s*=46}t?t[r++]=s:t=new e(s)}return t}var vi=class{constructor(){this.start=-1,this.value=-1,this.end=-1,this.extended=-1,this.lookAhead=0,this.mask=0,this.context=0}},nf=new vi,hO=class{constructor(e,t){this.input=e,this.ranges=t,this.chunk="",this.chunkOff=0,this.chunk2="",this.chunk2Pos=0,this.next=-1,this.token=nf,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,r=this.rangeIndex,s=this.pos+e;for(;sn.to:s>=n.to;){if(r==this.ranges.length-1)return null;let o=this.ranges[++r];s+=o.from-n.to,n=o}return s}clipPos(e){if(e>=this.range.from&&ee)return Math.max(e,t.from);return this.end}peek(e){let t=this.chunkOff+e,n,r;if(t>=0&&t=this.chunk2Pos&&nO.to&&(this.chunk2=this.chunk2.slice(0,O.to-n)),r=this.chunk2.charCodeAt(0)}}return n>=this.token.lookAhead&&(this.token.lookAhead=n+1),r}acceptToken(e,t=0){let n=t?this.resolveOffset(t,-1):this.pos;if(n==null||n=this.chunk2Pos&&this.posthis.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=nf,this.pos!=e){if(this.pos=e,e==this.end)return this.setDone(),this;for(;e=this.range.to;)this.range=this.ranges[++this.rangeIndex];e>=this.chunkPos&&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 r of this.ranges){if(r.from>=t)break;r.to>e&&(n+=this.input.read(Math.max(r.from,e),Math.min(r.to,t)))}return n}},jt=class{constructor(e,t){this.data=e,this.id=t}token(e,t){let{parser:n}=t.p;af(this.data,e,t,this.id,n.data,n.tokenPrecTable)}};jt.prototype.contextual=jt.prototype.fallback=jt.prototype.extend=!1;var At=class{constructor(e,t,n){this.precTable=t,this.elseToken=n,this.data=typeof e=="string"?gn(e):e}token(e,t){let n=e.pos,r=0;for(;;){let s=e.next<0,o=e.resolveOffset(1,1);if(af(this.data,e,t,0,this.data,this.precTable),e.token.value>-1)break;if(this.elseToken==null)return;if(s||r++,o==null)break;e.reset(o,e.token)}r&&(e.reset(n,e.token),e.acceptToken(this.elseToken,r))}};At.prototype.contextual=jt.prototype.fallback=jt.prototype.extend=!1;var ee=class{constructor(e,t={}){this.token=e,this.contextual=!!t.contextual,this.fallback=!!t.fallback,this.extend=!!t.extend}};function af(i,e,t,n,r,s){let o=0,O=1<0){let p=i[d];if(a.allows(p)&&(e.token.value==-1||e.token.value==p||Tg(p,e.token.value,r,s))){e.acceptToken(p);break}}let h=e.next,c=0,f=i[o+2];if(e.next<0&&f>c&&i[l+f*3-3]==65535){o=i[l+f*3-1];continue e}for(;c>1,p=l+d+(d<<1),m=i[p],$=i[p+1]||65536;if(h=$)c=d+1;else{o=i[p+2],e.advance();continue e}}break}}function rf(i,e,t){for(let n=e,r;(r=i[n])!=65535;n++)if(r==t)return n-e;return-1}function Tg(i,e,t,n){let r=rf(t,n,e);return r<0||rf(t,n,i)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}}var cO=class{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?sf(e.tree,e.from+e.offset,1)-e.offset:e.from,this.safeTo=e.openEnd?sf(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(ee)return this.nextStart=o,null;if(s instanceof q){if(o==e){if(o=Math.max(this.safeFrom,e)&&(this.trees.push(s),this.start.push(o),this.index.push(0))}else this.index[t]++,this.nextStart=o+s.length}}},fO=class{constructor(e,t){this.stream=t,this.tokens=[],this.mainToken=null,this.actions=[],this.tokens=e.tokenizers.map(n=>new vi)}getActions(e){let t=0,n=null,{parser:r}=e.p,{tokenizers:s}=r,o=r.stateSlot(e.state,3),O=e.curContext?e.curContext.hash:0,a=0;for(let l=0;lc.end+25&&(a=Math.max(c.lookAhead,a)),c.value!=0)){let f=t;if(c.extended>-1&&(t=this.addActions(e,c.extended,c.end,t)),t=this.addActions(e,c.value,c.end,t),!h.extend&&(n=c,t>f))break}}for(;this.actions.length>t;)this.actions.pop();return a&&e.setLookAhead(a),!n&&e.pos==this.stream.end&&(n=new vi,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 vi,{pos:n,p:r}=e;return t.start=n,t.end=Math.min(n+1,r.stream.end),t.value=n==r.stream.end?r.parser.eofTerm:0,t}updateCachedToken(e,t,n){let r=this.stream.clipPos(n.pos);if(t.token(this.stream.reset(r,e),n),e.value>-1){let{parser:s}=n.p;for(let o=0;o=0&&n.p.parser.dialect.allows(O>>1)){O&1?e.extended=O>>1:e.value=O>>1;break}}}else e.value=0,e.end=this.stream.clipPos(r+1)}putAction(e,t,n,r){for(let s=0;se.bufferLength*4?new cO(n,e.nodeSet):null}get parsedPos(){return this.minStackPos}advance(){let e=this.stacks,t=this.minStackPos,n=this.stacks=[],r,s;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;ot)n.push(O);else{if(this.advanceStack(O,n,e))continue;{r||(r=[],s=[]),r.push(O);let a=this.tokens.getMainToken(O);s.push(a.value,a.end)}}break}}if(!n.length){let o=r&&vg(r);if(o)return Ve&&console.log("Finish with "+this.stackID(o)),this.stackToTree(o);if(this.parser.strict)throw Ve&&r&&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&&r){let o=this.stoppedAt!=null&&r[0].pos>this.stoppedAt?r[0]:this.runRecovery(r,s,n);if(o)return Ve&&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((O,a)=>a.score-O.score);n.length>o;)n.pop();n.some(O=>O.reducePos>t)&&this.recovering--}else if(n.length>1){e:for(let o=0;o500&&l.buffer.length>500)if((O.score-l.score||O.buffer.length-l.buffer.length)>0)n.splice(a--,1);else{n.splice(o--,1);continue e}}}n.length>12&&n.splice(12,n.length-12)}this.minStackPos=n[0].pos;for(let o=1;o ":"";if(this.stoppedAt!=null&&r>this.stoppedAt)return e.forceReduce()?e:null;if(this.fragments){let l=e.curContext&&e.curContext.tracker.strict,h=l?e.curContext.hash:0;for(let c=this.fragments.nodeAt(r);c;){let f=this.parser.nodeSet.types[c.type.id]==c.type?s.getGoto(e.state,c.type.id):-1;if(f>-1&&c.length&&(!l||(c.prop(R.contextHash)||0)==h))return e.useNode(c,f),Ve&&console.log(o+this.stackID(e)+` (via reuse of ${s.getName(c.type.id)})`),!0;if(!(c instanceof q)||c.children.length==0||c.positions[0]>0)break;let d=c.children[0];if(d instanceof q&&c.positions[0]==0)c=d;else break}}let O=s.stateSlot(e.state,4);if(O>0)return e.reduce(O),Ve&&console.log(o+this.stackID(e)+` (via always-reduce ${s.getName(O&65535)})`),!0;if(e.stack.length>=8400)for(;e.stack.length>6e3&&e.forceReduce(););let a=this.tokens.getActions(e);for(let l=0;lr?t.push(p):n.push(p)}return!1}advanceFully(e,t){let n=e.pos;for(;;){if(!this.advanceStack(e,null,null))return!1;if(e.pos>n)return of(e,t),!0}}runRecovery(e,t,n){let r=null,s=!1;for(let o=0;o ":"";if(O.deadEnd&&(s||(s=!0,O.restart(),Ve&&console.log(h+this.stackID(O)+" (restarted)"),this.advanceFully(O,n))))continue;let c=O.split(),f=h;for(let d=0;c.forceReduce()&&d<10&&(Ve&&console.log(f+this.stackID(c)+" (via force-reduce)"),!this.advanceFully(c,n));d++)Ve&&(f=this.stackID(c)+" -> ");for(let d of O.recoverByInsert(a))Ve&&console.log(h+this.stackID(d)+" (via recover-insert)"),this.advanceFully(d,n);this.stream.end>O.pos?(l==O.pos&&(l++,a=0),O.recoverByDelete(a,l),Ve&&console.log(h+this.stackID(O)+` (via recover-delete ${this.parser.getName(a)})`),of(O,n)):(!r||r.scorei,_t=class{constructor(e){this.start=e.start,this.shift=e.shift||oO,this.reduce=e.reduce||oO,this.reuse=e.reuse||oO,this.hash=e.hash||(()=>0),this.strict=e.strict!==!1}},pe=class i extends Qt{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 O=0;Oe.topRules[O][1]),r=[];for(let O=0;O=0)s(h,a,O[l++]);else{let c=O[l+-h];for(let f=-h;f>0;f--)s(O[l++],a,c);l++}}}this.nodeSet=new $t(t.map((O,a)=>ie.define({name:a>=this.minRepeatTerm?void 0:O,id:a,props:r[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=1024;let o=gn(e.tokenData);this.context=e.context,this.specializerSpecs=e.specialized||[],this.specialized=new Uint16Array(this.specializerSpecs.length);for(let O=0;Otypeof O=="number"?new jt(o,O):O),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 r=new uO(this,e,t,n);for(let s of this.wrappers)r=s(r,e,t,n);return r}getGoto(e,t,n=!1){let r=this.goto;if(t>=r[0])return-1;for(let s=r[t+1];;){let o=r[s++],O=o&1,a=r[s++];if(O&&n)return a;for(let l=s+(o>>1);s0}validAction(e,t){return!!this.allActions(e,n=>n==t?!0:null)}allActions(e,t){let n=this.stateSlot(e,4),r=n?t(n):void 0;for(let s=this.stateSlot(e,1);r==null;s+=3){if(this.data[s]==65535)if(this.data[s+1]==1)s=Pt(this.data,s+2);else break;r=t(Pt(this.data,s+1))}return r}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=Pt(this.data,n+2);else break;if(!(this.data[n+2]&1)){let r=this.data[n+1];t.some((s,o)=>o&1&&s==r)||t.push(this.data[n],r)}}return t}configure(e){let t=Object.assign(Object.create(i.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 r=e.tokenizers.find(s=>s.from==n);return r?r.to:n})),e.specializers&&(t.specializers=this.specializers.slice(),t.specializerSpecs=this.specializerSpecs.map((n,r)=>{let s=e.specializers.find(O=>O.from==n.external);if(!s)return n;let o=Object.assign(Object.assign({},n),{external:s.to});return t.specializers[r]=Of(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 s of e.split(" ")){let o=t.indexOf(s);o>=0&&(n[o]=!0)}let r=null;for(let s=0;sn)&&t.p.parser.stateFlag(t.state,2)&&(!e||e.scorei.external(t,n)<<1|e}return i.get}var zg=99,lf=1,Zg=100,Xg=101,hf=2,cf=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],Wg=58,Rg=40,ff=95,Vg=91,Er=45,qg=46,Yg=35,Cg=37,jg=38,Ag=92,_g=10;function Qn(i){return i>=65&&i<=90||i>=97&&i<=122||i>=161}function uf(i){return i>=48&&i<=57}var Ug=new ee((i,e)=>{for(let t=!1,n=0,r=0;;r++){let{next:s}=i;if(Qn(s)||s==Er||s==ff||t&&uf(s))!t&&(s!=Er||r>0)&&(t=!0),n===r&&s==Er&&n++,i.advance();else if(s==Ag&&i.peek(1)!=_g)i.advance(),i.next>-1&&i.advance(),t=!0;else{t&&i.acceptToken(s==Rg?Zg:n==2&&e.canShift(hf)?hf:Xg);break}}}),Eg=new ee(i=>{if(cf.includes(i.peek(-1))){let{next:e}=i;(Qn(e)||e==ff||e==Yg||e==qg||e==Vg||e==Wg&&Qn(i.peek(1))||e==Er||e==jg)&&i.acceptToken(zg)}}),Gg=new ee(i=>{if(!cf.includes(i.peek(-1))){let{next:e}=i;if(e==Cg&&(i.advance(),i.acceptToken(lf)),Qn(e)){do i.advance();while(Qn(i.next)||uf(i.next));i.acceptToken(lf)}}}),Mg=oe({"AtKeyword import charset namespace keyframes media supports":u.definitionKeyword,"from to selector":u.keyword,NamespaceName:u.namespace,KeyframeName:u.labelName,KeyframeRangeName:u.operatorKeyword,TagName:u.tagName,ClassName:u.className,PseudoClassName:u.constant(u.className),IdName:u.labelName,"FeatureName PropertyName":u.propertyName,AttributeName:u.attributeName,NumberLiteral:u.number,KeywordQuery:u.keyword,UnaryQueryOp:u.operatorKeyword,"CallTag ValueName":u.atom,VariableName:u.variableName,Callee:u.operatorKeyword,Unit:u.unit,"UniversalSelector NestingSelector":u.definitionOperator,MatchOp:u.compareOperator,"ChildOp SiblingOp, LogicOp":u.logicOperator,BinOp:u.arithmeticOperator,Important:u.modifier,Comment:u.blockComment,ColorLiteral:u.color,"ParenthesizedContent StringLiteral":u.string,":":u.punctuation,"PseudoOp #":u.derefOperator,"; ,":u.separator,"( )":u.paren,"[ ]":u.squareBracket,"{ }":u.brace}),Ig={__proto__:null,lang:32,"nth-child":32,"nth-last-child":32,"nth-of-type":32,"nth-last-of-type":32,dir:32,"host-context":32,url:60,"url-prefix":60,domain:60,regexp:60,selector:138},Lg={__proto__:null,"@import":118,"@media":142,"@charset":146,"@namespace":150,"@keyframes":156,"@supports":168},Dg={__proto__:null,not:132,only:132},df=pe.deserialize({version:14,states:":^QYQ[OOO#_Q[OOP#fOWOOOOQP'#Cd'#CdOOQP'#Cc'#CcO#kQ[O'#CfO$_QXO'#CaO$fQ[O'#ChO$qQ[O'#DTO$vQ[O'#DWOOQP'#Em'#EmO${QdO'#DgO%jQ[O'#DtO${QdO'#DvO%{Q[O'#DxO&WQ[O'#D{O&`Q[O'#ERO&nQ[O'#ETOOQS'#El'#ElOOQS'#EW'#EWQYQ[OOO&uQXO'#CdO'jQWO'#DcO'oQWO'#EsO'zQ[O'#EsQOQWOOP(UO#tO'#C_POOO)C@[)C@[OOQP'#Cg'#CgOOQP,59Q,59QO#kQ[O,59QO(aQ[O'#E[O({QWO,58{O)TQ[O,59SO$qQ[O,59oO$vQ[O,59rO(aQ[O,59uO(aQ[O,59wO(aQ[O,59xO)`Q[O'#DbOOQS,58{,58{OOQP'#Ck'#CkOOQO'#DR'#DROOQP,59S,59SO)gQWO,59SO)lQWO,59SOOQP'#DV'#DVOOQP,59o,59oOOQO'#DX'#DXO)qQ`O,59rOOQS'#Cp'#CpO${QdO'#CqO)yQvO'#CsO+ZQtO,5:ROOQO'#Cx'#CxO)lQWO'#CwO+oQWO'#CyO+tQ[O'#DOOOQS'#Ep'#EpOOQO'#Dj'#DjO+|Q[O'#DqO,[QWO'#EtO&`Q[O'#DoO,jQWO'#DrOOQO'#Eu'#EuO)OQWO,5:`O,oQpO,5:bOOQS'#Dz'#DzO,wQWO,5:dO,|Q[O,5:dOOQO'#D}'#D}O-UQWO,5:gO-ZQWO,5:mO-cQWO,5:oOOQS-E8U-E8UO${QdO,59}O-kQ[O'#E^O-xQWO,5;_O-xQWO,5;_POOO'#EV'#EVP.TO#tO,58yPOOO,58y,58yOOQP1G.l1G.lO.zQXO,5:vOOQO-E8Y-E8YOOQS1G.g1G.gOOQP1G.n1G.nO)gQWO1G.nO)lQWO1G.nOOQP1G/Z1G/ZO/XQ`O1G/^O/rQXO1G/aO0YQXO1G/cO0pQXO1G/dO1WQWO,59|O1]Q[O'#DSO1dQdO'#CoOOQP1G/^1G/^O${QdO1G/^O1kQpO,59]OOQS,59_,59_O${QdO,59aO1sQWO1G/mOOQS,59c,59cO1xQ!bO,59eOOQS'#DP'#DPOOQS'#EY'#EYO2QQ[O,59jOOQS,59j,59jO2YQWO'#DjO2eQWO,5:VO2jQWO,5:]O&`Q[O,5:XO&`Q[O'#E_O2rQWO,5;`O2}QWO,5:ZO(aQ[O,5:^OOQS1G/z1G/zOOQS1G/|1G/|OOQS1G0O1G0OO3`QWO1G0OO3eQdO'#EOOOQS1G0R1G0ROOQS1G0X1G0XOOQS1G0Z1G0ZO3pQtO1G/iOOQO,5:x,5:xO4WQ[O,5:xOOQO-E8[-E8[O4eQWO1G0yPOOO-E8T-E8TPOOO1G.e1G.eOOQP7+$Y7+$YOOQP7+$x7+$xO${QdO7+$xOOQS1G/h1G/hO4pQXO'#ErO4wQWO,59nO4|QtO'#EXO5tQdO'#EoO6OQWO,59ZO6TQpO7+$xOOQS1G.w1G.wOOQS1G.{1G.{OOQS7+%X7+%XO6]QWO1G/POOQS-E8W-E8WOOQS1G/U1G/UO${QdO1G/qOOQO1G/w1G/wOOQO1G/s1G/sO6bQWO,5:yOOQO-E8]-E8]O6pQXO1G/xOOQS7+%j7+%jO6wQYO'#CsOOQO'#EQ'#EQO7SQ`O'#EPOOQO'#EP'#EPO7_QWO'#E`O7gQdO,5:jOOQS,5:j,5:jO7rQtO'#E]O${QdO'#E]O8sQdO7+%TOOQO7+%T7+%TOOQO1G0d1G0dO9WQpO<OAN>OO:xQdO,5:uOOQO-E8X-E8XOOQO<T![;'S%^;'S;=`%o<%lO%^l;TUo`Oy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^l;nYo`#e[Oy%^z!Q%^!Q![;g![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^l[[o`#e[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^n?VSt^Oy%^z;'S%^;'S;=`%o<%lO%^l?hWjWOy%^z!O%^!O!P;O!P!Q%^!Q![>T![;'S%^;'S;=`%o<%lO%^n@VU#bQOy%^z!Q%^!Q![;g![;'S%^;'S;=`%o<%lO%^~@nTjWOy%^z{@}{;'S%^;'S;=`%o<%lO%^~AUSo`#[~Oy%^z;'S%^;'S;=`%o<%lO%^lAg[#e[Oy%^z!O%^!O!P;g!P!Q%^!Q![>T![!g%^!g!h<^!h#X%^#X#Y<^#Y;'S%^;'S;=`%o<%lO%^bBbU]QOy%^z![%^![!]Bt!];'S%^;'S;=`%o<%lO%^bB{S^Qo`Oy%^z;'S%^;'S;=`%o<%lO%^nC^S!Y^Oy%^z;'S%^;'S;=`%o<%lO%^dCoS|SOy%^z;'S%^;'S;=`%o<%lO%^bDQU!OQOy%^z!`%^!`!aDd!a;'S%^;'S;=`%o<%lO%^bDkS!OQo`Oy%^z;'S%^;'S;=`%o<%lO%^bDzWOy%^z!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^bEk[![Qo`Oy%^z}%^}!OEd!O!Q%^!Q![Ed![!c%^!c!}Ed!}#T%^#T#oEd#o;'S%^;'S;=`%o<%lO%^nFfSq^Oy%^z;'S%^;'S;=`%o<%lO%^nFwSp^Oy%^z;'S%^;'S;=`%o<%lO%^bGWUOy%^z#b%^#b#cGj#c;'S%^;'S;=`%o<%lO%^bGoUo`Oy%^z#W%^#W#XHR#X;'S%^;'S;=`%o<%lO%^bHYS!bQo`Oy%^z;'S%^;'S;=`%o<%lO%^bHiUOy%^z#f%^#f#gHR#g;'S%^;'S;=`%o<%lO%^fIQS!TUOy%^z;'S%^;'S;=`%o<%lO%^nIcS!S^Oy%^z;'S%^;'S;=`%o<%lO%^fItU!RQOy%^z!_%^!_!`6y!`;'S%^;'S;=`%o<%lO%^`JZP;=`<%l$}",tokenizers:[Eg,Gg,Ug,1,2,3,4,new At("m~RRYZ[z{a~~g~aO#^~~dP!P!Qg~lO#_~~",28,105)],topRules:{StyleSheet:[0,4],Styles:[1,86]},specialized:[{term:100,get:i=>Ig[i]||-1},{term:58,get:i=>Lg[i]||-1},{term:101,get:i=>Dg[i]||-1}],tokenPrec:1200});var pO=null;function mO(){if(!pO&&typeof document=="object"&&document.body){let{style:i}=document.body,e=[],t=new Set;for(let n in i)n!="cssText"&&n!="cssFloat"&&typeof i[n]=="string"&&(/[A-Z]/.test(n)&&(n=n.replace(/[A-Z]/g,r=>"-"+r.toLowerCase())),t.has(n)||(e.push(n),t.add(n)));pO=e.sort().map(n=>({type:"property",label:n}))}return pO||[]}var pf=["active","after","any-link","autofill","backdrop","before","checked","cue","default","defined","disabled","empty","enabled","file-selector-button","first","first-child","first-letter","first-line","first-of-type","focus","focus-visible","focus-within","fullscreen","has","host","host-context","hover","in-range","indeterminate","invalid","is","lang","last-child","last-of-type","left","link","marker","modal","not","nth-child","nth-last-child","nth-last-of-type","nth-of-type","only-child","only-of-type","optional","out-of-range","part","placeholder","placeholder-shown","read-only","read-write","required","right","root","scope","selection","slotted","target","target-text","valid","visited","where"].map(i=>({type:"class",label:i})),mf=["above","absolute","activeborder","additive","activecaption","after-white-space","ahead","alias","all","all-scroll","alphabetic","alternate","always","antialiased","appworkspace","asterisks","attr","auto","auto-flow","avoid","avoid-column","avoid-page","avoid-region","axis-pan","background","backwards","baseline","below","bidi-override","blink","block","block-axis","bold","bolder","border","border-box","both","bottom","break","break-all","break-word","bullets","button","button-bevel","buttonface","buttonhighlight","buttonshadow","buttontext","calc","capitalize","caps-lock-indicator","caption","captiontext","caret","cell","center","checkbox","circle","cjk-decimal","clear","clip","close-quote","col-resize","collapse","color","color-burn","color-dodge","column","column-reverse","compact","condensed","contain","content","contents","content-box","context-menu","continuous","copy","counter","counters","cover","crop","cross","crosshair","currentcolor","cursive","cyclic","darken","dashed","decimal","decimal-leading-zero","default","default-button","dense","destination-atop","destination-in","destination-out","destination-over","difference","disc","discard","disclosure-closed","disclosure-open","document","dot-dash","dot-dot-dash","dotted","double","down","e-resize","ease","ease-in","ease-in-out","ease-out","element","ellipse","ellipsis","embed","end","ethiopic-abegede-gez","ethiopic-halehame-aa-er","ethiopic-halehame-gez","ew-resize","exclusion","expanded","extends","extra-condensed","extra-expanded","fantasy","fast","fill","fill-box","fixed","flat","flex","flex-end","flex-start","footnotes","forwards","from","geometricPrecision","graytext","grid","groove","hand","hard-light","help","hidden","hide","higher","highlight","highlighttext","horizontal","hsl","hsla","hue","icon","ignore","inactiveborder","inactivecaption","inactivecaptiontext","infinite","infobackground","infotext","inherit","initial","inline","inline-axis","inline-block","inline-flex","inline-grid","inline-table","inset","inside","intrinsic","invert","italic","justify","keep-all","landscape","large","larger","left","level","lighter","lighten","line-through","linear","linear-gradient","lines","list-item","listbox","listitem","local","logical","loud","lower","lower-hexadecimal","lower-latin","lower-norwegian","lowercase","ltr","luminosity","manipulation","match","matrix","matrix3d","medium","menu","menutext","message-box","middle","min-intrinsic","mix","monospace","move","multiple","multiple_mask_images","multiply","n-resize","narrower","ne-resize","nesw-resize","no-close-quote","no-drop","no-open-quote","no-repeat","none","normal","not-allowed","nowrap","ns-resize","numbers","numeric","nw-resize","nwse-resize","oblique","opacity","open-quote","optimizeLegibility","optimizeSpeed","outset","outside","outside-shape","overlay","overline","padding","padding-box","painted","page","paused","perspective","pinch-zoom","plus-darker","plus-lighter","pointer","polygon","portrait","pre","pre-line","pre-wrap","preserve-3d","progress","push-button","radial-gradient","radio","read-only","read-write","read-write-plaintext-only","rectangle","region","relative","repeat","repeating-linear-gradient","repeating-radial-gradient","repeat-x","repeat-y","reset","reverse","rgb","rgba","ridge","right","rotate","rotate3d","rotateX","rotateY","rotateZ","round","row","row-resize","row-reverse","rtl","run-in","running","s-resize","sans-serif","saturation","scale","scale3d","scaleX","scaleY","scaleZ","screen","scroll","scrollbar","scroll-position","se-resize","self-start","self-end","semi-condensed","semi-expanded","separate","serif","show","single","skew","skewX","skewY","skip-white-space","slide","slider-horizontal","slider-vertical","sliderthumb-horizontal","sliderthumb-vertical","slow","small","small-caps","small-caption","smaller","soft-light","solid","source-atop","source-in","source-out","source-over","space","space-around","space-between","space-evenly","spell-out","square","start","static","status-bar","stretch","stroke","stroke-box","sub","subpixel-antialiased","svg_masks","super","sw-resize","symbolic","symbols","system-ui","table","table-caption","table-cell","table-column","table-column-group","table-footer-group","table-header-group","table-row","table-row-group","text","text-bottom","text-top","textarea","textfield","thick","thin","threeddarkshadow","threedface","threedhighlight","threedlightshadow","threedshadow","to","top","transform","translate","translate3d","translateX","translateY","translateZ","transparent","ultra-condensed","ultra-expanded","underline","unidirectional-pan","unset","up","upper-latin","uppercase","url","var","vertical","vertical-text","view-box","visible","visibleFill","visiblePainted","visibleStroke","visual","w-resize","wait","wave","wider","window","windowframe","windowtext","words","wrap","wrap-reverse","x-large","x-small","xor","xx-large","xx-small"].map(i=>({type:"keyword",label:i})).concat(["aliceblue","antiquewhite","aqua","aquamarine","azure","beige","bisque","black","blanchedalmond","blue","blueviolet","brown","burlywood","cadetblue","chartreuse","chocolate","coral","cornflowerblue","cornsilk","crimson","cyan","darkblue","darkcyan","darkgoldenrod","darkgray","darkgreen","darkkhaki","darkmagenta","darkolivegreen","darkorange","darkorchid","darkred","darksalmon","darkseagreen","darkslateblue","darkslategray","darkturquoise","darkviolet","deeppink","deepskyblue","dimgray","dodgerblue","firebrick","floralwhite","forestgreen","fuchsia","gainsboro","ghostwhite","gold","goldenrod","gray","grey","green","greenyellow","honeydew","hotpink","indianred","indigo","ivory","khaki","lavender","lavenderblush","lawngreen","lemonchiffon","lightblue","lightcoral","lightcyan","lightgoldenrodyellow","lightgray","lightgreen","lightpink","lightsalmon","lightseagreen","lightskyblue","lightslategray","lightsteelblue","lightyellow","lime","limegreen","linen","magenta","maroon","mediumaquamarine","mediumblue","mediumorchid","mediumpurple","mediumseagreen","mediumslateblue","mediumspringgreen","mediumturquoise","mediumvioletred","midnightblue","mintcream","mistyrose","moccasin","navajowhite","navy","oldlace","olive","olivedrab","orange","orangered","orchid","palegoldenrod","palegreen","paleturquoise","palevioletred","papayawhip","peachpuff","peru","pink","plum","powderblue","purple","rebeccapurple","red","rosybrown","royalblue","saddlebrown","salmon","sandybrown","seagreen","seashell","sienna","silver","skyblue","slateblue","slategray","snow","springgreen","steelblue","tan","teal","thistle","tomato","turquoise","violet","wheat","white","whitesmoke","yellow","yellowgreen"].map(i=>({type:"constant",label:i}))),Bg=["a","abbr","address","article","aside","b","bdi","bdo","blockquote","body","br","button","canvas","caption","cite","code","col","colgroup","dd","del","details","dfn","dialog","div","dl","dt","em","figcaption","figure","footer","form","header","hgroup","h1","h2","h3","h4","h5","h6","hr","html","i","iframe","img","input","ins","kbd","label","legend","li","main","meter","nav","ol","output","p","pre","ruby","section","select","small","source","span","strong","sub","summary","sup","table","tbody","td","template","textarea","tfoot","th","thead","tr","u","ul"].map(i=>({type:"type",label:i})),Ut=/^(\w[\w-]*|-\w[\w-]*|)$/,Ng=/^-(-[\w-]*)?$/;function Hg(i,e){var t;if((i.name=="("||i.type.isError)&&(i=i.parent||i),i.name!="ArgList")return!1;let n=(t=i.parent)===null||t===void 0?void 0:t.firstChild;return n?.name!="Callee"?!1:e.sliceString(n.from,n.to)=="var"}var $f=new Pi,Fg=["Declaration"];function Kg(i){for(let e=i;;){if(e.type.isTop)return e;if(!(e=e.parent))return i}}function gf(i,e,t){if(e.to-e.from>4096){let n=$f.get(e);if(n)return n;let r=[],s=new Set,o=e.cursor(G.IncludeAnonymous);if(o.firstChild())do for(let O of gf(i,o.node,t))s.has(O.label)||(s.add(O.label),r.push(O));while(o.nextSibling());return $f.set(e,r),r}else{let n=[],r=new Set;return e.cursor().iterate(s=>{var o;if(t(s)&&s.matchContext(Fg)&&((o=s.node.nextSibling)===null||o===void 0?void 0:o.name)==":"){let O=i.sliceString(s.from,s.to);r.has(O)||(r.add(O),n.push({label:O,type:"variable"}))}}),n}}var Jg=i=>e=>{let{state:t,pos:n}=e,r=M(t).resolveInner(n,-1),s=r.type.isError&&r.from==r.to-1&&t.doc.sliceString(r.from,r.to)=="-";if(r.name=="PropertyName"||(s||r.name=="TagName")&&/^(Block|Styles)$/.test(r.resolve(r.to).name))return{from:r.from,options:mO(),validFor:Ut};if(r.name=="ValueName")return{from:r.from,options:mf,validFor:Ut};if(r.name=="PseudoClassName")return{from:r.from,options:pf,validFor:Ut};if(i(r)||(e.explicit||s)&&Hg(r,t.doc))return{from:i(r)||s?r.from:n,options:gf(t.doc,Kg(r),i),validFor:Ng};if(r.name=="TagName"){for(let{parent:a}=r;a;a=a.parent)if(a.name=="Block")return{from:r.from,options:mO(),validFor:Ut};return{from:r.from,options:Bg,validFor:Ut}}if(!e.explicit)return null;let o=r.resolve(n),O=o.childBefore(n);return O&&O.name==":"&&o.name=="PseudoClassSelector"?{from:n,options:pf,validFor:Ut}:O&&O.name==":"&&o.name=="Declaration"||o.name=="ArgList"?{from:n,options:mf,validFor:Ut}:o.name=="Block"||o.name=="Styles"?{from:n,options:mO(),validFor:Ut}:null},eQ=Jg(i=>i.name=="VariableName"),Sn=ue.define({name:"css",parser:df.configure({props:[Se.add({Declaration:Re()}),ye.add({"Block KeyframeList":Yt})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"}},indentOnInput:/^\s*\}$/,wordChars:"-"}});function Gr(){return new Oe(Sn,Sn.data.of({autocomplete:eQ}))}var tQ=oe({String:u.string,Number:u.number,"True False":u.bool,PropertyName:u.propertyName,Null:u.null,",":u.separator,"[ ]":u.squareBracket,"{ }":u.brace}),Qf=pe.deserialize({version:14,states:"$bOVQPOOOOQO'#Cb'#CbOnQPO'#CeOvQPO'#CjOOQO'#Cp'#CpQOQPOOOOQO'#Cg'#CgO}QPO'#CfO!SQPO'#CrOOQO,59P,59PO![QPO,59PO!aQPO'#CuOOQO,59U,59UO!iQPO,59UOVQPO,59QOqQPO'#CkO!nQPO,59^OOQO1G.k1G.kOVQPO'#ClO!vQPO,59aOOQO1G.p1G.pOOQO1G.l1G.lOOQO,59V,59VOOQO-E6i-E6iOOQO,59W,59WOOQO-E6j-E6j",stateData:"#O~OcOS~OQSORSOSSOTSOWQO]ROePO~OVXOeUO~O[[O~PVOg^O~Oh_OVfX~OVaO~OhbO[iX~O[dO~Oh_OVfa~OhbO[ia~O",goto:"!kjPPPPPPkPPkqwPPk{!RPPP!XP!ePP!hXSOR^bQWQRf_TVQ_Q`WRg`QcZRicQTOQZRQe^RhbRYQR]R",nodeNames:"\u26A0 JsonText True False Null Number String } { Object Property PropertyName ] [ Array",maxTerm:25,nodeProps:[["isolate",-2,6,11,""],["openedBy",7,"{",12,"["],["closedBy",8,"}",13,"]"]],propSources:[tQ],skippedNodes:[0],repeatNodeCount:2,tokenData:"(|~RaXY!WYZ!W]^!Wpq!Wrs!]|}$u}!O$z!Q!R%T!R![&c![!]&t!}#O&y#P#Q'O#Y#Z'T#b#c'r#h#i(Z#o#p(r#q#r(w~!]Oc~~!`Wpq!]qr!]rs!xs#O!]#O#P!}#P;'S!];'S;=`$o<%lO!]~!}Oe~~#QXrs!]!P!Q!]#O#P!]#U#V!]#Y#Z!]#b#c!]#f#g!]#h#i!]#i#j#m~#pR!Q![#y!c!i#y#T#Z#y~#|R!Q![$V!c!i$V#T#Z$V~$YR!Q![$c!c!i$c#T#Z$c~$fR!Q![!]!c!i!]#T#Z!]~$rP;=`<%l!]~$zOh~~$}Q!Q!R%T!R![&c~%YRT~!O!P%c!g!h%w#X#Y%w~%fP!Q![%i~%nRT~!Q![%i!g!h%w#X#Y%w~%zR{|&T}!O&T!Q![&Z~&WP!Q![&Z~&`PT~!Q![&Z~&hST~!O!P%c!Q![&c!g!h%w#X#Y%w~&yOg~~'OO]~~'TO[~~'WP#T#U'Z~'^P#`#a'a~'dP#g#h'g~'jP#X#Y'm~'rOR~~'uP#i#j'x~'{P#`#a(O~(RP#`#a(U~(ZOS~~(^P#f#g(a~(dP#i#j(g~(jP#X#Y(m~(rOQ~~(wOW~~(|OV~",tokenizers:[0],topRules:{JsonText:[0,1]},tokenPrec:0});var iQ=ue.define({name:"json",parser:Qf.configure({props:[Se.add({Object:Re({except:/^\s*\}/}),Array:Re({except:/^\s*\]/})}),ye.add({"Object Array":Yt})]}),languageData:{closeBrackets:{brackets:["[","{",'"']},indentOnInput:/^\s*[\}\]]$/}});function Sf(){return new Oe(iQ)}var nQ=309,yf=1,rQ=2,sQ=3,oQ=310,OQ=312,aQ=313,lQ=4,hQ=5,cQ=0,gO=[9,10,11,12,13,32,133,160,5760,8192,8193,8194,8195,8196,8197,8198,8199,8200,8201,8202,8232,8233,8239,8287,12288],Pf=125,fQ=59,QO=47,uQ=42,dQ=43,pQ=45,mQ=60,$Q=44,gQ=new _t({start:!1,shift(i,e){return e==lQ||e==hQ||e==OQ?i:e==aQ},strict:!1}),QQ=new ee((i,e)=>{let{next:t}=i;(t==Pf||t==-1||e.context)&&i.acceptToken(oQ)},{contextual:!0,fallback:!0}),SQ=new ee((i,e)=>{let{next:t}=i,n;gO.indexOf(t)>-1||t==QO&&((n=i.peek(1))==QO||n==uQ)||t!=Pf&&t!=fQ&&t!=-1&&!e.context&&i.acceptToken(nQ)},{contextual:!0}),yQ=new ee((i,e)=>{let{next:t}=i;if((t==dQ||t==pQ)&&(i.advance(),t==i.next)){i.advance();let n=!e.context&&e.canShift(yf);i.acceptToken(n?yf:rQ)}},{contextual:!0});function $O(i,e){return i>=65&&i<=90||i>=97&&i<=122||i==95||i>=192||!e&&i>=48&&i<=57}var PQ=new ee((i,e)=>{if(i.next!=mQ||!e.dialectEnabled(cQ)||(i.advance(),i.next==QO))return;let t=0;for(;gO.indexOf(i.next)>-1;)i.advance(),t++;if($O(i.next,!0)){for(i.advance(),t++;$O(i.next,!1);)i.advance(),t++;for(;gO.indexOf(i.next)>-1;)i.advance(),t++;if(i.next==$Q)return;for(let n=0;;n++){if(n==7){if(!$O(i.next,!0))return;break}if(i.next!="extends".charCodeAt(n))break;i.advance(),t++}}i.acceptToken(sQ,-t)}),bQ=oe({"get set async static":u.modifier,"for while do if else switch try catch finally return throw break continue default case":u.controlKeyword,"in of await yield void typeof delete instanceof":u.operatorKeyword,"let var const using function class extends":u.definitionKeyword,"import export from":u.moduleKeyword,"with debugger as new":u.keyword,TemplateString:u.special(u.string),super:u.atom,BooleanLiteral:u.bool,this:u.self,null:u.null,Star:u.modifier,VariableName:u.variableName,"CallExpression/VariableName TaggedTemplateExpression/VariableName":u.function(u.variableName),VariableDefinition:u.definition(u.variableName),Label:u.labelName,PropertyName:u.propertyName,PrivatePropertyName:u.special(u.propertyName),"CallExpression/MemberExpression/PropertyName":u.function(u.propertyName),"FunctionDeclaration/VariableDefinition":u.function(u.definition(u.variableName)),"ClassDeclaration/VariableDefinition":u.definition(u.className),PropertyDefinition:u.definition(u.propertyName),PrivatePropertyDefinition:u.definition(u.special(u.propertyName)),UpdateOp:u.updateOperator,"LineComment Hashbang":u.lineComment,BlockComment:u.blockComment,Number:u.number,String:u.string,Escape:u.escape,ArithOp:u.arithmeticOperator,LogicOp:u.logicOperator,BitOp:u.bitwiseOperator,CompareOp:u.compareOperator,RegExp:u.regexp,Equals:u.definitionOperator,Arrow:u.function(u.punctuation),": Spread":u.punctuation,"( )":u.paren,"[ ]":u.squareBracket,"{ }":u.brace,"InterpolationStart InterpolationEnd":u.special(u.brace),".":u.derefOperator,", ;":u.separator,"@":u.meta,TypeName:u.typeName,TypeDefinition:u.definition(u.typeName),"type enum interface implements namespace module declare":u.definitionKeyword,"abstract global Privacy readonly override":u.modifier,"is keyof unique infer":u.operatorKeyword,JSXAttributeValue:u.attributeValue,JSXText:u.content,"JSXStartTag JSXStartCloseTag JSXSelfCloseEndTag JSXEndTag":u.angleBracket,"JSXIdentifier JSXNameSpacedName":u.tagName,"JSXAttribute/JSXIdentifier JSXAttribute/JSXNameSpacedName":u.attributeName,"JSXBuiltin/JSXIdentifier":u.standard(u.tagName)}),xQ={__proto__:null,export:18,as:23,from:31,default:34,async:39,function:40,extends:52,this:56,true:64,false:64,null:76,void:80,typeof:84,super:102,new:136,delete:152,yield:161,await:165,class:170,public:227,private:227,protected:227,readonly:229,instanceof:248,satisfies:251,in:252,const:254,import:286,keyof:339,unique:343,infer:349,is:385,abstract:405,implements:407,type:409,let:412,var:414,using:417,interface:423,enum:427,namespace:433,module:435,declare:439,global:443,for:462,of:471,while:474,with:478,do:482,if:486,else:488,switch:492,case:498,try:504,catch:508,finally:512,return:516,throw:520,break:524,continue:528,debugger:532},wQ={__proto__:null,async:123,get:125,set:127,declare:187,public:189,private:189,protected:189,static:191,abstract:193,override:195,readonly:201,accessor:203,new:389},kQ={__proto__:null,"<":143},bf=pe.deserialize({version:14,states:"$RQWO'#CdO>cQWO'#H[O>kQWO'#HbO>kQWO'#HdO`Q^O'#HfO>kQWO'#HhO>kQWO'#HkO>pQWO'#HqO>uQ07iO'#HwO%[Q^O'#HyO?QQ07iO'#H{O?]Q07iO'#H}O9kQ07hO'#IPO?hQ08SO'#ChO@jQ`O'#DiQOQWOOO%[Q^O'#EPOAQQWO'#ESO:RQ7[O'#EjOA]QWO'#EjOAhQpO'#FbOOQU'#Cf'#CfOOQ07`'#Dn'#DnOOQ07`'#Jm'#JmO%[Q^O'#JmOOQO'#Jq'#JqOOQO'#Ib'#IbOBhQ`O'#EcOOQ07`'#Eb'#EbOCdQ07pO'#EcOCnQ`O'#EVOOQO'#Jp'#JpODSQ`O'#JqOEaQ`O'#EVOCnQ`O'#EcPEnO!0LbO'#CaPOOO)CDu)CDuOOOO'#IX'#IXOEyO!bO,59TOOQ07b,59T,59TOOOO'#IY'#IYOFXO#tO,59TO%[Q^O'#D`OOOO'#I['#I[OFgO?MpO,59xOOQ07b,59x,59xOFuQ^O'#I]OGYQWO'#JkOI[QrO'#JkO+}Q^O'#JkOIcQWO,5:OOIyQWO'#ElOJWQWO'#JyOJcQWO'#JxOJcQWO'#JxOJkQWO,5;YOJpQWO'#JwOOQ07f,5:Z,5:ZOJwQ^O,5:ZOLxQ08SO,5:eOMiQWO,5:mONSQ07hO'#JvONZQWO'#JuO9ZQWO'#JuONoQWO'#JuONwQWO,5;XON|QWO'#JuO!#UQrO'#JjOOQ07b'#Ch'#ChO%[Q^O'#ERO!#tQpO,5:rOOQO'#Jr'#JrOOQO-EmOOQU'#J`'#J`OOQU,5>n,5>nOOQU-EpQWO'#HQO9aQWO'#HSO!CgQWO'#HSO:RQ7[O'#HUO!ClQWO'#HUOOQU,5=j,5=jO!CqQWO'#HVO!DSQWO'#CnO!DXQWO,59OO!DcQWO,59OO!FhQ^O,59OOOQU,59O,59OO!FxQ07hO,59OO%[Q^O,59OO!ITQ^O'#H^OOQU'#H_'#H_OOQU'#H`'#H`O`Q^O,5=vO!IkQWO,5=vO`Q^O,5=|O`Q^O,5>OO!IpQWO,5>QO`Q^O,5>SO!IuQWO,5>VO!IzQ^O,5>]OOQU,5>c,5>cO%[Q^O,5>cO9kQ07hO,5>eOOQU,5>g,5>gO!NUQWO,5>gOOQU,5>i,5>iO!NUQWO,5>iOOQU,5>k,5>kO!NZQ`O'#D[O%[Q^O'#JmO!NxQ`O'#JmO# gQ`O'#DjO# xQ`O'#DjO#$ZQ^O'#DjO#$bQWO'#JlO#$jQWO,5:TO#$oQWO'#EpO#$}QWO'#JzO#%VQWO,5;ZO#%[Q`O'#DjO#%iQ`O'#EUOOQ07b,5:n,5:nO%[Q^O,5:nO#%pQWO,5:nO>pQWO,5;UO!@}Q`O,5;UO!AVQ7[O,5;UO:RQ7[O,5;UO#%xQWO,5@XO#%}Q$ISO,5:rOOQO-E<`-E<`O#'TQ07pO,5:}OCnQ`O,5:qO#'_Q`O,5:qOCnQ`O,5:}O!@rQ07hO,5:qOOQ07`'#Ef'#EfOOQO,5:},5:}O%[Q^O,5:}O#'lQ07hO,5:}O#'wQ07hO,5:}O!@}Q`O,5:qOOQO,5;T,5;TO#(VQ07hO,5:}POOO'#IV'#IVP#(kO!0LbO,58{POOO,58{,58{OOOO-EwO+}Q^O,5>wOOQO,5>},5>}O#)VQ^O'#I]OOQO-EjQ08SO1G0{O#>wQ08SO1G0{O#@uQ08SO1G0{O#CuQ(CYO'#ChO#EsQ(CYO1G1^O#EzQ(CYO'#JjO!,lQWO1G1dO#F[Q08SO,5?TOOQ07`-EkQWO1G3lO$2dQ^O1G3nO$6hQ^O'#HmOOQU1G3q1G3qO$6uQWO'#HsO>pQWO'#HuOOQU1G3w1G3wO$6}Q^O1G3wO9kQ07hO1G3}OOQU1G4P1G4POOQ07`'#GY'#GYO9kQ07hO1G4RO9kQ07hO1G4TO$;UQWO,5@XO!*fQ^O,5;[O9ZQWO,5;[O>pQWO,5:UO!*fQ^O,5:UO!@}Q`O,5:UO$;ZQ(CYO,5:UOOQO,5;[,5;[O$;eQ`O'#I^O$;{QWO,5@WOOQ07b1G/o1G/oO$pQWO1G0pO!@}Q`O1G0pO!AVQ7[O1G0pOOQ07`1G5s1G5sO!@rQ07hO1G0]OOQO1G0i1G0iO%[Q^O1G0iO$PQrO1G4cOOQO1G4i1G4iO%[Q^O,5>wO$>ZQWO1G5qO$>cQWO1G6OO$>kQrO1G6PO9ZQWO,5>}O$>uQ08SO1G5|O%[Q^O1G5|O$?VQ07hO1G5|O$?hQWO1G5{O$?hQWO1G5{O9ZQWO1G5{O$?pQWO,5?QO9ZQWO,5?QOOQO,5?Q,5?QO$@UQWO,5?QO$'ZQWO,5?QOOQO-EXOOQU,5>X,5>XO%[Q^O'#HnO%7dQWO'#HpOOQU,5>_,5>_O9ZQWO,5>_OOQU,5>a,5>aOOQU7+)c7+)cOOQU7+)i7+)iOOQU7+)m7+)mOOQU7+)o7+)oO%7iQ`O1G5sO%7}Q(CYO1G0vO%8XQWO1G0vOOQO1G/p1G/pO%8dQ(CYO1G/pO>pQWO1G/pO!*fQ^O'#DjOOQO,5>x,5>xOOQO-E<[-E<[OOQO,5?O,5?OOOQO-EpQWO7+&[O!@}Q`O7+&[OOQO7+%w7+%wO$=mQ08SO7+&TOOQO7+&T7+&TO%[Q^O7+&TO%8nQ07hO7+&TO!@rQ07hO7+%wO!@}Q`O7+%wO%8yQ07hO7+&TO%9XQ08SO7++hO%[Q^O7++hO%9iQWO7++gO%9iQWO7++gOOQO1G4l1G4lO9ZQWO1G4lO%9qQWO1G4lOOQO7+%|7+%|O#%sQWO<zQ08SO1G2ZO%A]Q08SO1G2mO%ChQ08SO1G2oO%EsQ7[O,5>yOOQO-E<]-E<]O%E}QrO,5>zO%[Q^O,5>zOOQO-E<^-E<^O%FXQWO1G5uOOQ07b<YOOQU,5>[,5>[O&5oQWO1G3yO9ZQWO7+&bO!*fQ^O7+&bOOQO7+%[7+%[O&5tQ(CYO1G6PO>pQWO7+%[OOQ07b<pQWO<pQWO7+)eO'&sQWO<}AN>}O%[Q^OAN?ZOOQO<qQ(CYOG26}O!*fQ^O'#DyO1PQWO'#EWO'@gQrO'#JiO!*fQ^O'#DqO'@nQ^O'#D}O'@uQrO'#ChO'C]QrO'#ChO!*fQ^O'#EPO'CmQ^O,5;VO!*fQ^O,5;aO!*fQ^O,5;aO!*fQ^O,5;aO!*fQ^O,5;aO!*fQ^O,5;aO!*fQ^O,5;aO!*fQ^O,5;aO!*fQ^O,5;aO!*fQ^O,5;aO!*fQ^O,5;aO!*fQ^O,5;aO!*fQ^O'#IiO'EpQWO,5a#@O#@^#@d#Ax#BW#Cr#DQ#DW#D^#Dd#Dn#Dt#Dz#EU#Eh#EnPPPPPPPPPP#EtPPPPPPP#Fi#Ip#KP#KW#K`PPPP$!d$%Z$+r$+u$+x$,q$,t$,w$-O$-WPP$-^$-b$.Y$/X$/]$/qPP$/u$/{$0PP$0S$0W$0Z$1P$1h$2P$2T$2W$2Z$2a$2d$2h$2lR!{RoqOXst!Z#c%j&m&o&p&r,h,m1w1zY!uQ'Z-Y1[5]Q%pvQ%xyQ&P|Q&e!VS'R!e-QQ'a!iS'g!r!xS*c$|*hQ+f%yQ+s&RQ,X&_Q-W'YQ-b'bQ-j'hQ/|*jQ1f,YR;Y:g%OdOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$a$e%j%p%}&f&i&m&o&p&r&v'O']'m'}(P(V(^(r(v(z)y+O+S,e,h,m-^-f-t-z.l.s0[0a0q1_1o1p1r1t1w1z1|2m2s3Z5Y5d5t5u5x6]7w7|8]8gS#p]:d!r)[$[$m'S)n,y,|.{2]3p5W6S9W9i:c:f:g:j:k:l:m:n:o:p:q:r:s:t:u:v:w:{;Y;Z;[;^;e;f;o;p<]Q*u%ZQ+k%{Q,Z&bQ,b&jQ.c;QQ0h+^Q0l+`Q0w+lQ1n,`Q2{.[Q4v0rQ5k1gQ6i3PQ6u;RQ7h4wR8m6j&|kOPWXYZstuvw!Z!`!g!o#R#V#Y#c#n#t#x#{$O$P$Q$R$S$T$U$V$W$X$Y$[$a$e$m%j%p%}&f&i&j&m&o&p&r&v'O'S']'m'}(P(V(^(r(v(z)n)y+O+S+^,e,h,m,y,|-^-f-t-z.[.l.s.{0[0a0q1_1o1p1r1t1w1z1|2]2m2s3P3Z3p5W5Y5d5t5u5x6S6]6j7w7|8]8g9W9i:c:f:g:j:k:l:m:n:o:p:q:r:s:t:u:v:w:{;Y;Z;[;^;e;f;o;p<]t!nQ!r!u!x!y'R'Y'Z'g'h'i-Q-W-Y-j1[5]5_$v$si#u#w$c$d$x${%O%Q%[%]%a)u){)}*P*R*Y*`*p*q+]+`+w+z.Z.i/Z/j/k/m0Q0S0^1R1U1^3O3x4S4[4f4n4p5c6g7T7^7y8j8w9[9n:O:W:y:z:|:};O;P;S;T;U;V;W;X;_;`;a;b;c;d;g;h;i;j;k;l;m;n;q;r < TypeParamList TypeDefinition extends ThisType this LiteralType ArithOp Number BooleanLiteral TemplateType InterpolationEnd Interpolation InterpolationStart NullType null VoidType void TypeofType typeof MemberExpression . ?. PropertyName [ TemplateString Escape Interpolation super RegExp ] ArrayExpression Spread , } { ObjectExpression Property async get set PropertyDefinition Block : NewExpression new TypeArgList CompareOp < ) ( ArgList UnaryExpression delete LogicOp BitOp YieldExpression yield AwaitExpression await ParenthesizedExpression ClassExpression class ClassBody MethodDeclaration Decorator @ MemberExpression PrivatePropertyName CallExpression declare Privacy static abstract override PrivatePropertyDefinition PropertyDeclaration readonly accessor Optional TypeAnnotation Equals StaticBlock FunctionExpression ArrowFunction ParamList ParamList ArrayPattern ObjectPattern PatternProperty Privacy readonly Arrow MemberExpression BinaryExpression ArithOp ArithOp ArithOp ArithOp BitOp CompareOp instanceof satisfies in const CompareOp BitOp BitOp BitOp LogicOp LogicOp ConditionalExpression LogicOp LogicOp AssignmentExpression UpdateOp PostfixExpression CallExpression TaggedTemplateExpression DynamicImport import ImportMeta JSXElement JSXSelfCloseEndTag JSXSelfClosingTag JSXIdentifier JSXBuiltin JSXIdentifier JSXNamespacedName JSXMemberExpression JSXSpreadAttribute JSXAttribute JSXAttributeValue JSXEscape JSXEndTag JSXOpenTag JSXFragmentTag JSXText JSXEscape JSXStartCloseTag JSXCloseTag PrefixCast ArrowFunction TypeParamList SequenceExpression KeyofType keyof UniqueType unique ImportType InferredType infer TypeName ParenthesizedType FunctionSignature ParamList NewSignature IndexedType TupleType Label ArrayType ReadonlyType ObjectType MethodType PropertyType IndexSignature PropertyDefinition CallSignature TypePredicate is NewSignature new UnionType LogicOp IntersectionType LogicOp ConditionalType ParameterizedType ClassDeclaration abstract implements type VariableDeclaration let var using TypeAliasDeclaration InterfaceDeclaration interface EnumDeclaration enum EnumBody NamespaceDeclaration namespace module AmbientDeclaration declare GlobalDeclaration global ClassDeclaration ClassBody AmbientFunctionDeclaration ExportGroup VariableName VariableName ImportDeclaration ImportGroup ForStatement for ForSpec ForInSpec ForOfSpec of WhileStatement while WithStatement with DoStatement do IfStatement if else SwitchStatement switch SwitchBody CaseLabel case DefaultLabel TryStatement try CatchClause catch FinallyClause finally ReturnStatement return ThrowStatement throw BreakStatement break ContinueStatement continue DebuggerStatement debugger LabeledStatement ExpressionStatement SingleExpression SingleClassItem",maxTerm:371,context:gQ,nodeProps:[["isolate",-8,4,5,13,33,35,48,50,52,""],["group",-26,8,16,18,65,201,205,209,210,212,215,218,228,230,236,238,240,242,245,251,257,259,261,263,265,267,268,"Statement",-32,12,13,28,31,32,38,48,51,52,54,59,67,75,79,81,83,84,106,107,116,117,134,137,139,140,141,142,144,145,164,165,167,"Expression",-23,27,29,33,37,39,41,168,170,172,173,175,176,177,179,180,181,183,184,185,195,197,199,200,"Type",-3,87,99,105,"ClassItem"],["openedBy",22,"<",34,"InterpolationStart",53,"[",57,"{",72,"(",157,"JSXStartCloseTag"],["closedBy",23,">",36,"InterpolationEnd",47,"]",58,"}",73,")",162,"JSXEndTag"]],propSources:[bQ],skippedNodes:[0,4,5,271],repeatNodeCount:37,tokenData:"$Fj(CSR!bOX%ZXY+gYZ-yZ[+g[]%Z]^.c^p%Zpq+gqr/mrs3cst:_tuEruvJSvwLkwx! Yxy!'iyz!(sz{!)}{|!,q|}!.O}!O!,q!O!P!/Y!P!Q!9j!Q!R#8g!R![#:v![!]#Gv!]!^#IS!^!_#J^!_!`#Ns!`!a$#_!a!b$(l!b!c$,k!c!}Er!}#O$-u#O#P$/P#P#Q$4h#Q#R$5r#R#SEr#S#T$7P#T#o$8Z#o#p$q#r#s$?}#s$f%Z$f$g+g$g#BYEr#BY#BZ$AX#BZ$ISEr$IS$I_$AX$I_$I|Er$I|$I}$Dd$I}$JO$Dd$JO$JTEr$JT$JU$AX$JU$KVEr$KV$KW$AX$KW&FUEr&FU&FV$AX&FV;'SEr;'S;=`I|<%l?HTEr?HT?HU$AX?HUOEr(n%d_$f&j(Op(R!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z&j&hT$f&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c&j&zP;=`<%l&c'|'U]$f&j(R!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!b(SU(R!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!b(iP;=`<%l'}'|(oP;=`<%l&}'[(y]$f&j(OpOY(rYZ&cZr(rrs&cs!^(r!^!_)r!_#O(r#O#P&c#P#o(r#o#p)r#p;'S(r;'S;=`*a<%lO(rp)wU(OpOY)rZr)rs#O)r#P;'S)r;'S;=`*Z<%lO)rp*^P;=`<%l)r'[*dP;=`<%l(r#S*nX(Op(R!bOY*gZr*grs'}sw*gwx)rx#O*g#P;'S*g;'S;=`+Z<%lO*g#S+^P;=`<%l*g(n+dP;=`<%l%Z(CS+rq$f&j(Op(R!b't(;dOX%ZXY+gYZ&cZ[+g[p%Zpq+gqr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p$f%Z$f$g+g$g#BY%Z#BY#BZ+g#BZ$IS%Z$IS$I_+g$I_$JT%Z$JT$JU+g$JU$KV%Z$KV$KW+g$KW&FU%Z&FU&FV+g&FV;'S%Z;'S;=`+a<%l?HT%Z?HT?HU+g?HUO%Z(CS.ST(P#S$f&j'u(;dO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c(CS.n_$f&j(Op(R!b'u(;dOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#`/x`$f&j!o$Ip(Op(R!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`0z!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S1V`#t$Id$f&j(Op(R!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_!`2X!`#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z%#S2d_#t$Id$f&j(Op(R!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!^%Z!^!_*g!_#O%Z#O#P&c#P#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/|3l_'}$(n$f&j(R!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k(^4r_$f&j(R!bOY4kYZ5qZr4krs7nsw4kwx5qx!^4k!^!_8p!_#O4k#O#P5q#P#o4k#o#p8p#p;'S4k;'S;=`:X<%lO4k&z5vX$f&jOr5qrs6cs!^5q!^!_6y!_#o5q#o#p6y#p;'S5q;'S;=`7h<%lO5q&z6jT$a`$f&jO!^&c!_#o&c#p;'S&c;'S;=`&w<%lO&c`6|TOr6yrs7]s;'S6y;'S;=`7b<%lO6y`7bO$a``7eP;=`<%l6y&z7kP;=`<%l5q(^7w]$a`$f&j(R!bOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!r8uZ(R!bOY8pYZ6yZr8prs9hsw8pwx6yx#O8p#O#P6y#P;'S8p;'S;=`:R<%lO8p!r9oU$a`(R!bOY'}Zw'}x#O'}#P;'S'};'S;=`(f<%lO'}!r:UP;=`<%l8p(^:[P;=`<%l4k#%|:hh$f&j(Op(R!bOY%ZYZ&cZq%Zqr`#P#o`x!^=^!^!_?q!_#O=^#O#P>`#P#o=^#o#p?q#p;'S=^;'S;=`@h<%lO=^&n>gXVS$f&jOY>`YZ&cZ!^>`!^!_?S!_#o>`#o#p?S#p;'S>`;'S;=`?k<%lO>`S?XSVSOY?SZ;'S?S;'S;=`?e<%lO?SS?hP;=`<%l?S&n?nP;=`<%l>`!f?xWVS(R!bOY?qZw?qwx?Sx#O?q#O#P?S#P;'S?q;'S;=`@b<%lO?q!f@eP;=`<%l?q(Q@kP;=`<%l=^'`@w]VS$f&j(OpOY@nYZ&cZr@nrs>`s!^@n!^!_Ap!_#O@n#O#P>`#P#o@n#o#pAp#p;'S@n;'S;=`Bg<%lO@ntAwWVS(OpOYApZrAprs?Ss#OAp#O#P?S#P;'SAp;'S;=`Ba<%lOAptBdP;=`<%lAp'`BjP;=`<%l@n#WBvYVS(Op(R!bOYBmZrBmrs?qswBmwxApx#OBm#O#P?S#P;'SBm;'S;=`Cf<%lOBm#WCiP;=`<%lBm(rCoP;=`<%lQ^$f&j!USOY!=yYZ&cZ!P!=y!P!Q!>|!Q!^!=y!^!_!@Y!_!}!=y!}#O!Bw#O#P!Dj#P#o!=y#o#p!@Y#p;'S!=y;'S;=`!E[<%lO!=y&n!?Ta$f&j!USO!^&c!_#Z&c#Z#[!>|#[#]&c#]#^!>|#^#a&c#a#b!>|#b#g&c#g#h!>|#h#i&c#i#j!>|#j#m&c#m#n!>|#n#o&c#p;'S&c;'S;=`&w<%lO&cS!@_X!USOY!@YZ!P!@Y!P!Q!@z!Q!}!@Y!}#O!Ac#O#P!Bb#P;'S!@Y;'S;=`!Bq<%lO!@YS!APU!US#Z#[!@z#]#^!@z#a#b!@z#g#h!@z#i#j!@z#m#n!@zS!AfVOY!AcZ#O!Ac#O#P!A{#P#Q!@Y#Q;'S!Ac;'S;=`!B[<%lO!AcS!BOSOY!AcZ;'S!Ac;'S;=`!B[<%lO!AcS!B_P;=`<%l!AcS!BeSOY!@YZ;'S!@Y;'S;=`!Bq<%lO!@YS!BtP;=`<%l!@Y&n!B|[$f&jOY!BwYZ&cZ!^!Bw!^!_!Ac!_#O!Bw#O#P!Cr#P#Q!=y#Q#o!Bw#o#p!Ac#p;'S!Bw;'S;=`!Dd<%lO!Bw&n!CwX$f&jOY!BwYZ&cZ!^!Bw!^!_!Ac!_#o!Bw#o#p!Ac#p;'S!Bw;'S;=`!Dd<%lO!Bw&n!DgP;=`<%l!Bw&n!DoX$f&jOY!=yYZ&cZ!^!=y!^!_!@Y!_#o!=y#o#p!@Y#p;'S!=y;'S;=`!E[<%lO!=y&n!E_P;=`<%l!=y(Q!Eki$f&j(R!b!USOY&}YZ&cZw&}wx&cx!^&}!^!_'}!_#O&}#O#P&c#P#Z&}#Z#[!Eb#[#]&}#]#^!Eb#^#a&}#a#b!Eb#b#g&}#g#h!Eb#h#i&}#i#j!Eb#j#m&}#m#n!Eb#n#o&}#o#p'}#p;'S&};'S;=`(l<%lO&}!f!GaZ(R!b!USOY!GYZw!GYwx!@Yx!P!GY!P!Q!HS!Q!}!GY!}#O!Ic#O#P!Bb#P;'S!GY;'S;=`!JZ<%lO!GY!f!HZb(R!b!USOY'}Zw'}x#O'}#P#Z'}#Z#[!HS#[#]'}#]#^!HS#^#a'}#a#b!HS#b#g'}#g#h!HS#h#i'}#i#j!HS#j#m'}#m#n!HS#n;'S'};'S;=`(f<%lO'}!f!IhX(R!bOY!IcZw!Icwx!Acx#O!Ic#O#P!A{#P#Q!GY#Q;'S!Ic;'S;=`!JT<%lO!Ic!f!JWP;=`<%l!Ic!f!J^P;=`<%l!GY(Q!Jh^$f&j(R!bOY!JaYZ&cZw!Jawx!Bwx!^!Ja!^!_!Ic!_#O!Ja#O#P!Cr#P#Q!Q#V#X%Z#X#Y!4|#Y#b%Z#b#c#Zd$f&j(Op(R!bOY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#?i!R!S#?i!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#?i#S#o%Z#o#p*g#p;'S%Z;'S;=`+a<%lO%Z$/l#?tf$f&j(Op(R!bo$'|OY%ZYZ&cZr%Zrs&}sw%Zwx(rx!Q%Z!Q!R#?i!R!S#?i!S!^%Z!^!_*g!_#O%Z#O#P&c#P#R%Z#R#S#?i#S#b%Z#b#c#xQ[i]||-1},{term:334,get:i=>wQ[i]||-1},{term:70,get:i=>kQ[i]||-1}],tokenPrec:14638});var Mr=class{constructor(e,t,n){this.state=e,this.pos=t,this.explicit=n,this.abortListeners=[]}tokenBefore(e){let t=M(this.state).resolveInner(this.pos,-1);for(;t&&e.indexOf(t.name)<0;)t=t.parent;return t?{from:t.from,to:this.pos,text:this.state.sliceDoc(t.from,this.pos),type:t.type}:null}matchBefore(e){let t=this.state.doc.lineAt(this.pos),n=Math.max(t.from,this.pos-250),r=t.text.slice(n-t.from,this.pos-t.from),s=r.search(vQ(e,!1));return s<0?null:{from:n+s,to:this.pos,text:r.slice(s)}}get aborted(){return this.abortListeners==null}addEventListener(e,t){e=="abort"&&this.abortListeners&&this.abortListeners.push(t)}};function xf(i){let e=Object.keys(i).join(""),t=/\w/.test(e);return t&&(e=e.replace(/\w/g,"")),`[${t?"\\w":""}${e.replace(/[^\w\s]/g,"\\$&")}]`}function TQ(i){let e=Object.create(null),t=Object.create(null);for(let{label:r}of i){e[r[0]]=!0;for(let s=1;stypeof r=="string"?{label:r}:r),[t,n]=e.every(r=>/^\w+$/.test(r.label))?[/\w*$/,/\w+$/]:TQ(e);return r=>{let s=r.matchBefore(n);return s||r.explicit?{from:s?s.from:r.pos,options:e,validFor:t}:null}}function Tf(i,e){return t=>{for(let n=M(t.state).resolveInner(t.pos,-1);n;n=n.parent){if(i.indexOf(n.name)>-1)return null;if(n.type.isTop)break}return e(t)}}function vQ(i,e){var t;let{source:n}=i,r=e&&n[0]!="^",s=n[n.length-1]!="$";return!r&&!s?i:new RegExp(`${r?"^":""}(?:${n})${s?"$":""}`,(t=i.flags)!==null&&t!==void 0?t:i.ignoreCase?"i":"")}var zQ=we.define();var ZQ=T.baseTheme({".cm-tooltip.cm-tooltip-autocomplete":{"& > ul":{fontFamily:"monospace",whiteSpace:"nowrap",overflow:"hidden auto",maxWidth_fallback:"700px",maxWidth:"min(700px, 95vw)",minWidth:"250px",maxHeight:"10em",height:"100%",listStyle:"none",margin:0,padding:0,"& > li, & > completion-section":{padding:"1px 3px",lineHeight:1.2},"& > li":{overflowX:"hidden",textOverflow:"ellipsis",cursor:"pointer"},"& > completion-section":{display:"list-item",borderBottom:"1px solid silver",paddingLeft:"0.5em",opacity:.7}}},"&light .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#17c",color:"white"},"&light .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#777"},"&dark .cm-tooltip-autocomplete ul li[aria-selected]":{background:"#347",color:"white"},"&dark .cm-tooltip-autocomplete-disabled ul li[aria-selected]":{background:"#444"},".cm-completionListIncompleteTop:before, .cm-completionListIncompleteBottom:after":{content:'"\xB7\xB7\xB7"',opacity:.5,display:"block",textAlign:"center"},".cm-tooltip.cm-completionInfo":{position:"absolute",padding:"3px 9px",width:"max-content",maxWidth:"400px",boxSizing:"border-box"},".cm-completionInfo.cm-completionInfo-left":{right:"100%"},".cm-completionInfo.cm-completionInfo-right":{left:"100%"},".cm-completionInfo.cm-completionInfo-left-narrow":{right:"30px"},".cm-completionInfo.cm-completionInfo-right-narrow":{left:"30px"},"&light .cm-snippetField":{backgroundColor:"#00000022"},"&dark .cm-snippetField":{backgroundColor:"#ffffff22"},".cm-snippetFieldPosition":{verticalAlign:"text-top",width:0,height:"1.15em",display:"inline-block",margin:"0 -0.7px -.7em",borderLeft:"1.4px dotted #888"},".cm-completionMatchedText":{textDecoration:"underline"},".cm-completionDetail":{marginLeft:"0.5em",fontStyle:"italic"},".cm-completionIcon":{fontSize:"90%",width:".8em",display:"inline-block",textAlign:"center",paddingRight:".6em",opacity:"0.6",boxSizing:"content-box"},".cm-completionIcon-function, .cm-completionIcon-method":{"&:after":{content:"'\u0192'"}},".cm-completionIcon-class":{"&:after":{content:"'\u25CB'"}},".cm-completionIcon-interface":{"&:after":{content:"'\u25CC'"}},".cm-completionIcon-variable":{"&:after":{content:"'\u{1D465}'"}},".cm-completionIcon-constant":{"&:after":{content:"'\u{1D436}'"}},".cm-completionIcon-type":{"&:after":{content:"'\u{1D461}'"}},".cm-completionIcon-enum":{"&:after":{content:"'\u222A'"}},".cm-completionIcon-property":{"&:after":{content:"'\u25A1'"}},".cm-completionIcon-keyword":{"&:after":{content:"'\u{1F511}\uFE0E'"}},".cm-completionIcon-namespace":{"&:after":{content:"'\u25A2'"}},".cm-completionIcon-text":{"&:after":{content:"'abc'",fontSize:"50%",verticalAlign:"middle"}}}),SO=class{constructor(e,t,n,r){this.field=e,this.line=t,this.from=n,this.to=r}},yO=class i{constructor(e,t,n){this.field=e,this.from=t,this.to=n}map(e){let t=e.mapPos(this.from,-1,ae.TrackDel),n=e.mapPos(this.to,1,ae.TrackDel);return t==null||n==null?null:new i(this.field,t,n)}},PO=class i{constructor(e,t){this.lines=e,this.fieldPositions=t}instantiate(e,t){let n=[],r=[t],s=e.doc.lineAt(t),o=/^\s*/.exec(s.text)[0];for(let a of this.lines){if(n.length){let l=o,h=/^\t*/.exec(a)[0].length;for(let c=0;cnew yO(a.field,r[a.line]+a.from,r[a.line]+a.to));return{text:n,ranges:O}}static parse(e){let t=[],n=[],r=[],s;for(let o of e.split(/\r\n?|\n/)){for(;s=/[#$]\{(?:(\d+)(?::([^}]*))?|([^}]*))\}/.exec(o);){let O=s[1]?+s[1]:null,a=s[2]||s[3]||"",l=-1;for(let h=0;h=l&&c.field++}r.push(new SO(l,n.length,s.index,s.index+a.length)),o=o.slice(0,s.index)+a+o.slice(s.index+s[0].length)}for(let O;O=/\\([{}])/.exec(o);){o=o.slice(0,O.index)+O[1]+o.slice(O.index+O[0].length);for(let a of r)a.line==n.length&&a.from>O.index&&(a.from--,a.to--)}n.push(o)}return new i(n,r)}},XQ=I.widget({widget:new class extends zt{toDOM(){let i=document.createElement("span");return i.className="cm-snippetFieldPosition",i}ignoreEvent(){return!1}}}),WQ=I.mark({class:"cm-snippetField"}),zi=class i{constructor(e,t){this.ranges=e,this.active=t,this.deco=I.set(e.map(n=>(n.from==n.to?XQ:WQ).range(n.from,n.to)))}map(e){let t=[];for(let n of this.ranges){let r=n.map(e);if(!r)return null;t.push(r)}return new i(t,this.active)}selectionInsideField(e){return e.ranges.every(t=>this.ranges.some(n=>n.field==this.active&&n.from<=t.from&&n.to>=t.to))}},Pn=B.define({map(i,e){return i&&i.map(e)}}),RQ=B.define(),yn=$e.define({create(){return null},update(i,e){for(let t of e.effects){if(t.is(Pn))return t.value;if(t.is(RQ)&&i)return new zi(i.ranges,t.value)}return i&&e.docChanged&&(i=i.map(e.changes)),i&&e.selection&&!i.selectionInsideField(e.selection)&&(i=null),i},provide:i=>T.decorations.from(i,e=>e?e.deco:I.none)});function bO(i,e){return S.create(i.filter(t=>t.field==e).map(t=>S.range(t.from,t.to)))}function VQ(i){let e=PO.parse(i);return(t,n,r,s)=>{let{text:o,ranges:O}=e.instantiate(t.state,r),a={changes:{from:r,to:s,insert:j.of(o)},scrollIntoView:!0,annotations:n?[zQ.of(n),ne.userEvent.of("input.complete")]:void 0};if(O.length&&(a.selection=bO(O,0)),O.some(l=>l.field>0)){let l=new zi(O,0),h=a.effects=[Pn.of(l)];t.state.field(yn,!1)===void 0&&h.push(B.appendConfig.of([yn,AQ,_Q,ZQ]))}t.dispatch(t.state.update(a))}}function vf(i){return({state:e,dispatch:t})=>{let n=e.field(yn,!1);if(!n||i<0&&n.active==0)return!1;let r=n.active+i,s=i>0&&!n.ranges.some(o=>o.field==r+i);return t(e.update({selection:bO(n.ranges,r),effects:Pn.of(s?null:new zi(n.ranges,r)),scrollIntoView:!0})),!0}}var qQ=({state:i,dispatch:e})=>i.field(yn,!1)?(e(i.update({effects:Pn.of(null)})),!0):!1,YQ=vf(1),CQ=vf(-1);var jQ=[{key:"Tab",run:YQ,shift:CQ},{key:"Escape",run:qQ}],wf=W.define({combine(i){return i.length?i[0]:jQ}}),AQ=it.highest(at.compute([wf],i=>i.facet(wf)));function Pe(i,e){return Object.assign(Object.assign({},e),{apply:VQ(i)})}var _Q=T.domEventHandlers({mousedown(i,e){let t=e.state.field(yn,!1),n;if(!t||(n=e.posAtCoords({x:i.clientX,y:i.clientY}))==null)return!1;let r=t.ranges.find(s=>s.from<=n&&s.to>=n);return!r||r.field==t.active?!1:(e.dispatch({selection:bO(t.ranges,r.field),effects:Pn.of(t.ranges.some(s=>s.field>r.field)?new zi(t.ranges,r.field):null),scrollIntoView:!0}),!0)}});var zf=new class extends De{};zf.startSide=1;zf.endSide=-1;var x1=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent);var Rf=[Pe("function ${name}(${params}) {\n ${}\n}",{label:"function",detail:"definition",type:"keyword"}),Pe("for (let ${index} = 0; ${index} < ${bound}; ${index}++) {\n ${}\n}",{label:"for",detail:"loop",type:"keyword"}),Pe("for (let ${name} of ${collection}) {\n ${}\n}",{label:"for",detail:"of loop",type:"keyword"}),Pe("do {\n ${}\n} while (${})",{label:"do",detail:"loop",type:"keyword"}),Pe("while (${}) {\n ${}\n}",{label:"while",detail:"loop",type:"keyword"}),Pe(`try { \${} } catch (\${error}) { \${} @@ -20,11 +20,11 @@ var q=class i{lineAt(e){if(e<0||e>this.length)throw new RangeError(`Invalid posi constructor(\${params}) { \${} } -}`,{label:"class",detail:"definition",type:"keyword"}),Pe('import {${names}} from "${module}"\n${}',{label:"import",detail:"named",type:"keyword"}),Pe('import ${name} from "${module}"\n${}',{label:"import",detail:"default",type:"keyword"})],kS=wf.concat([Pe("interface ${name} {\n ${}\n}",{label:"interface",detail:"definition",type:"keyword"}),Pe("type ${name} = ${type}",{label:"type",detail:"definition",type:"keyword"}),Pe("enum ${name} {\n ${}\n}",{label:"enum",detail:"definition",type:"keyword"})]),bf=new Si,kf=new Set(["Script","Block","FunctionExpression","FunctionDeclaration","ArrowFunction","MethodDeclaration","ForStatement"]);function Sn(i){return(e,t)=>{let n=e.node.getChild("VariableDefinition");return n&&t(n,i),!0}}var vS=["FunctionDeclaration"],TS={FunctionDeclaration:Sn("function"),ClassDeclaration:Sn("class"),ClassExpression:()=>!0,EnumDeclaration:Sn("constant"),TypeAliasDeclaration:Sn("type"),NamespaceDeclaration:Sn("namespace"),VariableDefinition(i,e){i.matchContext(vS)||e(i,"variable")},TypeDefinition(i,e){e(i,"type")},__proto__:null};function vf(i,e){let t=bf.get(e);if(t)return t;let n=[],r=!0;function s(o,O){let l=i.sliceString(o.from,o.to);n.push({label:l,type:O})}return e.cursor(_.IncludeAnonymous).iterate(o=>{if(r)r=!1;else if(o.name){let O=TS[o.name];if(O&&O(o,s)||kf.has(o.name))return!1}else if(o.to-o.from>8192){for(let O of vf(i,o.node))n.push(O);return!1}}),bf.set(e,n),n}var Pf=/^[\w$\xa1-\uffff][\w$\d\xa1-\uffff]*$/,Tf=["TemplateString","String","RegExp","LineComment","BlockComment","VariableDefinition","TypeDefinition","Label","PropertyDefinition","PropertyName","PrivatePropertyDefinition","PrivatePropertyName",".","?."];function zS(i){let e=A(i.state).resolveInner(i.pos,-1);if(Tf.indexOf(e.name)>-1)return null;let t=e.name=="VariableName"||e.to-e.from<20&&Pf.test(i.state.sliceDoc(e.from,e.to));if(!t&&!i.explicit)return null;let n=[];for(let r=e;r;r=r.parent)kf.has(r.name)&&(n=n.concat(vf(i.state.doc,r)));return{options:n,from:t?e.from:i.pos,validFor:Pf}}var Ke=de.define({name:"javascript",parser:pf.configure({props:[ye.add({IfStatement:Ze({except:/^\s*({|else\b)/}),TryStatement:Ze({except:/^\s*({|catch\b|finally\b)/}),LabeledStatement:Ah,SwitchBody:i=>{let e=i.textAfter,t=/^\s*\}/.test(e),n=/^\s*(case|default)\b/.test(e);return i.baseIndent+(t?0:n?1:2)*i.unit},Block:zr({closing:"}"}),ArrowFunction:i=>i.baseIndent+i.unit,"TemplateString BlockComment":()=>null,"Statement Property":Ze({except:/^{/}),JSXElement(i){let e=/^\s*<\//.test(i.textAfter);return i.lineIndent(i.node.from)+(e?0:i.unit)},JSXEscape(i){let e=/\s*\}/.test(i.textAfter);return i.lineIndent(i.node.from)+(e?0:i.unit)},"JSXOpenTag JSXSelfClosingTag"(i){return i.column(i.node.from)+i.unit}}),be.add({"Block ClassBody SwitchBody EnumBody ObjectExpression ArrayExpression ObjectType":Zt,BlockComment(i){return{from:i.from+2,to:i.to-2}}})]}),languageData:{closeBrackets:{brackets:["(","[","{","'",'"',"`"]},commentTokens:{line:"//",block:{open:"/*",close:"*/"}},indentOnInput:/^\s*(?:case |default:|\{|\}|<\/)$/,wordChars:"$"}}),zf={test:i=>/^JSX/.test(i.name),facet:Pi({commentTokens:{block:{open:"{/*",close:"*/}"}}})},$O=Ke.configure({dialect:"ts"},"typescript"),SO=Ke.configure({dialect:"jsx",props:[Tr.add(i=>i.isTop?[zf]:void 0)]}),QO=Ke.configure({dialect:"jsx ts",props:[Tr.add(i=>i.isTop?[zf]:void 0)]},"typescript"),Xf=i=>({label:i,type:"keyword"}),Wf="break case const continue default delete export extends false finally in instanceof let new return static super switch this throw true typeof var yield".split(" ").map(Xf),XS=Wf.concat(["declare","implements","private","protected","public"].map(Xf));function ei(i={}){let e=i.jsx?i.typescript?QO:SO:i.typescript?$O:Ke,t=i.typescript?kS.concat(XS):wf.concat(Wf);return new re(e,[Ke.data.of({autocomplete:Sf(Tf,$f(t))}),Ke.data.of({autocomplete:zS}),i.jsx?ZS:[]])}function WS(i){for(;;){if(i.name=="JSXOpenTag"||i.name=="JSXSelfClosingTag"||i.name=="JSXFragmentTag")return i;if(i.name=="JSXEscape"||!i.parent)return null;i=i.parent}}function xf(i,e,t=i.length){for(let n=e?.firstChild;n;n=n.nextSibling)if(n.name=="JSXIdentifier"||n.name=="JSXBuiltin"||n.name=="JSXNamespacedName"||n.name=="JSXMemberExpression")return i.sliceString(n.from,Math.min(n.to,t));return""}var RS=typeof navigator=="object"&&/Android\b/.test(navigator.userAgent),ZS=v.inputHandler.of((i,e,t,n,r)=>{if((RS?i.composing:i.compositionStarted)||i.state.readOnly||e!=t||n!=">"&&n!="/"||!Ke.isActiveAt(i.state,e,-1))return!1;let s=r(),{state:o}=s,O=o.changeByRange(l=>{var a;let{head:h}=l,c=A(o).resolveInner(h-1,-1),f;if(c.name=="JSXStartTag"&&(c=c.parent),!(o.doc.sliceString(h-1,h)!=n||c.name=="JSXAttributeValue"&&c.to>h)){if(n==">"&&c.name=="JSXFragmentTag")return{range:l,changes:{from:h,insert:""}};if(n=="/"&&c.name=="JSXStartCloseTag"){let d=c.parent,p=d.parent;if(p&&d.from==h-2&&((f=xf(o.doc,p.firstChild,h))||((a=p.firstChild)===null||a===void 0?void 0:a.name)=="JSXFragmentTag")){let m=`${f}>`;return{range:S.cursor(h+m.length,-1),changes:{from:h,insert:m}}}}else if(n==">"){let d=WS(c);if(d&&!/^\/?>|^<\//.test(o.doc.sliceString(h,h+2))&&(f=xf(o.doc,d,h)))return{range:l,changes:{from:h,insert:``}}}}return{range:l}});return O.changes.empty?!1:(i.dispatch([s,o.update(O,{userEvent:"input.complete",scrollIntoView:!0})]),!0)});var YS=54,VS=1,CS=55,qS=2,US=56,_S=3,Rf=4,AS=5,Gr=6,Af=7,jf=8,Ef=9,Gf=10,jS=11,ES=12,GS=13,yO=57,MS=14,Zf=58,Mf=20,IS=22,If=23,LS=24,PO=26,Lf=27,BS=28,DS=31,NS=34,FS=36,HS=37,KS=0,JS=1,eQ={area:!0,base:!0,br:!0,col:!0,command:!0,embed:!0,frame:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0,menuitem:!0},tQ={dd:!0,li:!0,optgroup:!0,option:!0,p:!0,rp:!0,rt:!0,tbody:!0,td:!0,tfoot:!0,th:!0,tr:!0},Yf={dd:{dd:!0,dt:!0},dt:{dd:!0,dt:!0},li:{li:!0},option:{option:!0,optgroup:!0},optgroup:{optgroup:!0},p:{address:!0,article:!0,aside:!0,blockquote:!0,dir:!0,div:!0,dl:!0,fieldset:!0,footer:!0,form:!0,h1:!0,h2:!0,h3:!0,h4:!0,h5:!0,h6:!0,header:!0,hgroup:!0,hr:!0,menu:!0,nav:!0,ol:!0,p:!0,pre:!0,section:!0,table:!0,ul:!0},rp:{rp:!0,rt:!0},rt:{rp:!0,rt:!0},tbody:{tbody:!0,tfoot:!0},td:{td:!0,th:!0},tfoot:{tbody:!0},th:{td:!0,th:!0},thead:{tbody:!0,tfoot:!0},tr:{tr:!0}};function iQ(i){return i==45||i==46||i==58||i>=65&&i<=90||i==95||i>=97&&i<=122||i>=161}function Bf(i){return i==9||i==10||i==13||i==32}var Vf=null,Cf=null,qf=0;function xO(i,e){let t=i.pos+e;if(qf==t&&Cf==i)return Vf;let n=i.peek(e);for(;Bf(n);)n=i.peek(++e);let r="";for(;iQ(n);)r+=String.fromCharCode(n),n=i.peek(++e);return Cf=i,qf=t,Vf=r?r.toLowerCase():n==nQ||n==rQ?void 0:null}var Df=60,Mr=62,wO=47,nQ=63,rQ=33,sQ=45;function Uf(i,e){this.name=i,this.parent=e,this.hash=e?e.hash:0;for(let t=0;t-1?new Uf(xO(n,1)||"",i):i},reduce(i,e){return e==Mf&&i?i.parent:i},reuse(i,e,t,n){let r=e.type.id;return r==Gr||r==FS?new Uf(xO(n,1)||"",i):i},hash(i){return i?i.hash:0},strict:!1}),lQ=new H((i,e)=>{if(i.next!=Df){i.next<0&&e.context&&i.acceptToken(yO);return}i.advance();let t=i.next==wO;t&&i.advance();let n=xO(i,0);if(n===void 0)return;if(!n)return i.acceptToken(t?MS:Gr);let r=e.context?e.context.name:null;if(t){if(n==r)return i.acceptToken(jS);if(r&&tQ[r])return i.acceptToken(yO,-2);if(e.dialectEnabled(KS))return i.acceptToken(ES);for(let s=e.context;s;s=s.parent)if(s.name==n)return;i.acceptToken(GS)}else{if(n=="script")return i.acceptToken(Af);if(n=="style")return i.acceptToken(jf);if(n=="textarea")return i.acceptToken(Ef);if(eQ.hasOwnProperty(n))return i.acceptToken(Gf);r&&Yf[r]&&Yf[r][n]?i.acceptToken(yO,-1):i.acceptToken(Gr)}},{contextual:!0}),aQ=new H(i=>{for(let e=0,t=0;;t++){if(i.next<0){t&&i.acceptToken(Zf);break}if(i.next==sQ)e++;else if(i.next==Mr&&e>=2){t>3&&i.acceptToken(Zf,-2);break}else e=0;i.advance()}});function hQ(i){for(;i;i=i.parent)if(i.name=="svg"||i.name=="math")return!0;return!1}var cQ=new H((i,e)=>{if(i.next==wO&&i.peek(1)==Mr){let t=e.dialectEnabled(JS)||hQ(e.context);i.acceptToken(t?AS:Rf,2)}else i.next==Mr&&i.acceptToken(Rf,1)});function kO(i,e,t){let n=2+i.length;return new H(r=>{for(let s=0,o=0,O=0;;O++){if(r.next<0){O&&r.acceptToken(e);break}if(s==0&&r.next==Df||s==1&&r.next==wO||s>=2&&so?r.acceptToken(e,-o):r.acceptToken(t,-(o-2));break}else if((r.next==10||r.next==13)&&O){r.acceptToken(e,1);break}else s=o=0;r.advance()}})}var fQ=kO("script",YS,VS),uQ=kO("style",CS,qS),dQ=kO("textarea",US,_S),pQ=ne({"Text RawText":u.content,"StartTag StartCloseTag SelfClosingEndTag EndTag":u.angleBracket,TagName:u.tagName,"MismatchedCloseTag/TagName":[u.tagName,u.invalid],AttributeName:u.attributeName,"AttributeValue UnquotedAttributeValue":u.attributeValue,Is:u.definitionOperator,"EntityReference CharacterReference":u.character,Comment:u.blockComment,ProcessingInst:u.processingInstruction,DoctypeDecl:u.documentMeta}),Nf=me.deserialize({version:14,states:",xOVO!rOOO!WQ#tO'#CqO!]Q#tO'#CzO!bQ#tO'#C}O!gQ#tO'#DQO!lQ#tO'#DSO!qOaO'#CpO!|ObO'#CpO#XOdO'#CpO$eO!rO'#CpOOO`'#Cp'#CpO$lO$fO'#DTO$tQ#tO'#DVO$yQ#tO'#DWOOO`'#Dk'#DkOOO`'#DY'#DYQVO!rOOO%OQ&rO,59]O%WQ&rO,59fO%`Q&rO,59iO%hQ&rO,59lO%sQ&rO,59nOOOa'#D^'#D^O%{OaO'#CxO&WOaO,59[OOOb'#D_'#D_O&`ObO'#C{O&kObO,59[OOOd'#D`'#D`O&sOdO'#DOO'OOdO,59[OOO`'#Da'#DaO'WO!rO,59[O'_Q#tO'#DROOO`,59[,59[OOOp'#Db'#DbO'dO$fO,59oOOO`,59o,59oO'lQ#|O,59qO'qQ#|O,59rOOO`-E7W-E7WO'vQ&rO'#CsOOQW'#DZ'#DZO(UQ&rO1G.wOOOa1G.w1G.wO(^Q&rO1G/QOOOb1G/Q1G/QO(fQ&rO1G/TOOOd1G/T1G/TO(nQ&rO1G/WOOO`1G/W1G/WOOO`1G/Y1G/YO(yQ&rO1G/YOOOa-E7[-E7[O)RQ#tO'#CyOOO`1G.v1G.vOOOb-E7]-E7]O)WQ#tO'#C|OOOd-E7^-E7^O)]Q#tO'#DPOOO`-E7_-E7_O)bQ#|O,59mOOOp-E7`-E7`OOO`1G/Z1G/ZOOO`1G/]1G/]OOO`1G/^1G/^O)gQ,UO,59_OOQW-E7X-E7XOOOa7+$c7+$cOOOb7+$l7+$lOOOd7+$o7+$oOOO`7+$r7+$rOOO`7+$t7+$tO)rQ#|O,59eO)wQ#|O,59hO)|Q#|O,59kOOO`1G/X1G/XO*RO7[O'#CvO*dOMhO'#CvOOQW1G.y1G.yOOO`1G/P1G/POOO`1G/S1G/SOOO`1G/V1G/VOOOO'#D['#D[O*uO7[O,59bOOQW,59b,59bOOOO'#D]'#D]O+WOMhO,59bOOOO-E7Y-E7YOOQW1G.|1G.|OOOO-E7Z-E7Z",stateData:"+s~O!^OS~OUSOVPOWQOXROYTO[]O][O^^O`^Oa^Ob^Oc^Ox^O{_O!dZO~OfaO~OfbO~OfcO~OfdO~OfeO~O!WfOPlP!ZlP~O!XiOQoP!ZoP~O!YlORrP!ZrP~OUSOVPOWQOXROYTOZqO[]O][O^^O`^Oa^Ob^Oc^Ox^O!dZO~O!ZrO~P#dO![sO!euO~OfvO~OfwO~OS|OhyO~OS!OOhyO~OS!QOhyO~OS!SOT!TOhyO~OS!TOhyO~O!WfOPlX!ZlX~OP!WO!Z!XO~O!XiOQoX!ZoX~OQ!ZO!Z!XO~O!YlORrX!ZrX~OR!]O!Z!XO~O!Z!XO~P#dOf!_O~O![sO!e!aO~OS!bO~OS!cO~Oi!dOSgXhgXTgX~OS!fOhyO~OS!gOhyO~OS!hOhyO~OS!iOT!jOhyO~OS!jOhyO~Of!kO~Of!lO~Of!mO~OS!nO~Ok!qO!`!oO!b!pO~OS!rO~OS!sO~OS!tO~Oa!uOb!uOc!uO!`!wO!a!uO~Oa!xOb!xOc!xO!b!wO!c!xO~Oa!uOb!uOc!uO!`!{O!a!uO~Oa!xOb!xOc!xO!b!{O!c!xO~OT~bac!dx{!d~",goto:"%p!`PPPPPPPPPPPPPPPPPPPP!a!gP!mPP!yP!|#P#S#Y#]#`#f#i#l#r#x!aP!a!aP$O$U$l$r$x%O%U%[%bPPPPPPPP%hX^OX`pXUOX`pezabcde{}!P!R!UR!q!dRhUR!XhXVOX`pRkVR!XkXWOX`pRnWR!XnXXOX`pQrXR!XpXYOX`pQ`ORx`Q{aQ}bQ!PcQ!RdQ!UeZ!e{}!P!R!UQ!v!oR!z!vQ!y!pR!|!yQgUR!VgQjVR!YjQmWR![mQpXR!^pQtZR!`tS_O`ToXp",nodeNames:"\u26A0 StartCloseTag StartCloseTag StartCloseTag EndTag SelfClosingEndTag StartTag StartTag StartTag StartTag StartTag StartCloseTag StartCloseTag StartCloseTag IncompleteCloseTag Document Text EntityReference CharacterReference InvalidEntity Element OpenTag TagName Attribute AttributeName Is AttributeValue UnquotedAttributeValue ScriptText CloseTag OpenTag StyleText CloseTag OpenTag TextareaText CloseTag OpenTag CloseTag SelfClosingTag Comment ProcessingInst MismatchedCloseTag CloseTag DoctypeDecl",maxTerm:67,context:OQ,nodeProps:[["closedBy",-10,1,2,3,7,8,9,10,11,12,13,"EndTag",6,"EndTag SelfClosingEndTag",-4,21,30,33,36,"CloseTag"],["openedBy",4,"StartTag StartCloseTag",5,"StartTag",-4,29,32,35,37,"OpenTag"],["group",-9,14,17,18,19,20,39,40,41,42,"Entity",16,"Entity TextContent",-3,28,31,34,"TextContent Entity"]],propSources:[pQ],skippedNodes:[0],repeatNodeCount:9,tokenData:"!]tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^/^!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!Z5zbkWOX5uXZ7SZ[5u[^7S^p5uqr5urs7Sst+Ptw5uwx7Sx!]5u!]!^7w!^!a7S!a#S5u#S#T7S#T;'S5u;'S;=`8n<%lO5u!R7VVOp7Sqs7St!]7S!]!^7l!^;'S7S;'S;=`7q<%lO7S!R7qOa!R!R7tP;=`<%l7S!Z8OYkWa!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!Z8qP;=`<%l5u!_8{ihSkWOX5uXZ7SZ[5u[^7S^p5uqr8trs7Sst/^tw8twx7Sx!P8t!P!Q5u!Q!]8t!]!^:j!^!a7S!a#S8t#S#T;{#T#s8t#s$f5u$f;'S8t;'S;=`>V<%l?Ah8t?Ah?BY5u?BY?Mn8t?MnO5u!_:sbhSkWa!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VP<%l?Ah;{?Ah?BY7S?BY?Mn;{?MnO7S!V=dXhSa!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!V>SP;=`<%l;{!_>YP;=`<%l8t!_>dhhSkWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^/^!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!Z@TakWOX@OXZAYZ[@O[^AY^p@Oqr@OrsAYsw@OwxAYx!]@O!]!^Az!^!aAY!a#S@O#S#TAY#T;'S@O;'S;=`Bq<%lO@O!RA]UOpAYq!]AY!]!^Ao!^;'SAY;'S;=`At<%lOAY!RAtOb!R!RAwP;=`<%lAY!ZBRYkWb!ROX+PZ[+P^p+Pqr+Psw+Px!^+P!a#S+P#T;'S+P;'S;=`+t<%lO+P!ZBtP;=`<%l@O!_COhhSkWOX@OXZAYZ[@O[^AY^p@OqrBwrsAYswBwwxAYx!PBw!P!Q@O!Q!]Bw!]!^Dj!^!aAY!a#SBw#S#TE{#T#sBw#s$f@O$f;'SBw;'S;=`HS<%l?AhBw?Ah?BY@O?BY?MnBw?MnO@O!_DsbhSkWb!ROX+PZ[+P^p+Pqr/^sw/^x!P/^!P!Q+P!Q!^/^!a#S/^#S#T0m#T#s/^#s$f+P$f;'S/^;'S;=`1e<%l?Ah/^?Ah?BY+P?BY?Mn/^?MnO+P!VFQbhSOpAYqrE{rsAYswE{wxAYx!PE{!P!QAY!Q!]E{!]!^GY!^!aAY!a#sE{#s$fAY$f;'SE{;'S;=`G|<%l?AhE{?Ah?BYAY?BY?MnE{?MnOAY!VGaXhSb!Rqr0msw0mx!P0m!Q!^0m!a#s0m$f;'S0m;'S;=`1_<%l?Ah0m?BY?Mn0m!VHPP;=`<%lE{!_HVP;=`<%lBw!ZHcW!bx`P!a`Or(trs'ksv(tw!^(t!^!_)e!_;'S(t;'S;=`*P<%lO(t!aIYlhS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OKQ!O!P-_!P!Q$q!Q!^-_!^!_*V!_!a&X!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!aK_khS`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx!P-_!P!Q$q!Q!^-_!^!_*V!_!`&X!`!aMS!a#S-_#S#T1k#T#s-_#s$f$q$f;'S-_;'S;=`3X<%l?Ah-_?Ah?BY$q?BY?Mn-_?MnO$q!TM_X`P!a`!cp!eQOr&Xrs&}sv&Xwx(tx!^&X!^!_*V!_;'S&X;'S;=`*y<%lO&X!aNZ!ZhSfQ`PkW!a`!cpOX$qXZ&XZ[$q[^&X^p$qpq&Xqr-_rs&}sv-_vw/^wx(tx}-_}!OMz!O!PMz!P!Q$q!Q![Mz![!]Mz!]!^-_!^!_*V!_!a&X!a!c-_!c!}Mz!}#R-_#R#SMz#S#T1k#T#oMz#o#s-_#s$f$q$f$}-_$}%OMz%O%W-_%W%oMz%o%p-_%p&aMz&a&b-_&b1pMz1p4UMz4U4dMz4d4e-_4e$ISMz$IS$I`-_$I`$IbMz$Ib$Je-_$Je$JgMz$Jg$Kh-_$Kh%#tMz%#t&/x-_&/x&EtMz&Et&FV-_&FV;'SMz;'S;:j!#|;:j;=`3X<%l?&r-_?&r?AhMz?Ah?BY$q?BY?MnMz?MnO$q!a!$PP;=`<%lMz!R!$ZY!a`!cpOq*Vqr!$yrs(Vsv*Vwx)ex!a*V!a!b!4t!b;'S*V;'S;=`*s<%lO*V!R!%Q]!a`!cpOr*Vrs(Vsv*Vwx)ex}*V}!O!%y!O!f*V!f!g!']!g#W*V#W#X!0`#X;'S*V;'S;=`*s<%lO*V!R!&QX!a`!cpOr*Vrs(Vsv*Vwx)ex}*V}!O!&m!O;'S*V;'S;=`*s<%lO*V!R!&vV!a`!cp!dPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!'dX!a`!cpOr*Vrs(Vsv*Vwx)ex!q*V!q!r!(P!r;'S*V;'S;=`*s<%lO*V!R!(WX!a`!cpOr*Vrs(Vsv*Vwx)ex!e*V!e!f!(s!f;'S*V;'S;=`*s<%lO*V!R!(zX!a`!cpOr*Vrs(Vsv*Vwx)ex!v*V!v!w!)g!w;'S*V;'S;=`*s<%lO*V!R!)nX!a`!cpOr*Vrs(Vsv*Vwx)ex!{*V!{!|!*Z!|;'S*V;'S;=`*s<%lO*V!R!*bX!a`!cpOr*Vrs(Vsv*Vwx)ex!r*V!r!s!*}!s;'S*V;'S;=`*s<%lO*V!R!+UX!a`!cpOr*Vrs(Vsv*Vwx)ex!g*V!g!h!+q!h;'S*V;'S;=`*s<%lO*V!R!+xY!a`!cpOr!+qrs!,hsv!+qvw!-Swx!.[x!`!+q!`!a!/j!a;'S!+q;'S;=`!0Y<%lO!+qq!,mV!cpOv!,hvx!-Sx!`!,h!`!a!-q!a;'S!,h;'S;=`!.U<%lO!,hP!-VTO!`!-S!`!a!-f!a;'S!-S;'S;=`!-k<%lO!-SP!-kO{PP!-nP;=`<%l!-Sq!-xS!cp{POv(Vx;'S(V;'S;=`(h<%lO(Vq!.XP;=`<%l!,ha!.aX!a`Or!.[rs!-Ssv!.[vw!-Sw!`!.[!`!a!.|!a;'S!.[;'S;=`!/d<%lO!.[a!/TT!a`{POr)esv)ew;'S)e;'S;=`)y<%lO)ea!/gP;=`<%l!.[!R!/sV!a`!cp{POr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!0]P;=`<%l!+q!R!0gX!a`!cpOr*Vrs(Vsv*Vwx)ex#c*V#c#d!1S#d;'S*V;'S;=`*s<%lO*V!R!1ZX!a`!cpOr*Vrs(Vsv*Vwx)ex#V*V#V#W!1v#W;'S*V;'S;=`*s<%lO*V!R!1}X!a`!cpOr*Vrs(Vsv*Vwx)ex#h*V#h#i!2j#i;'S*V;'S;=`*s<%lO*V!R!2qX!a`!cpOr*Vrs(Vsv*Vwx)ex#m*V#m#n!3^#n;'S*V;'S;=`*s<%lO*V!R!3eX!a`!cpOr*Vrs(Vsv*Vwx)ex#d*V#d#e!4Q#e;'S*V;'S;=`*s<%lO*V!R!4XX!a`!cpOr*Vrs(Vsv*Vwx)ex#X*V#X#Y!+q#Y;'S*V;'S;=`*s<%lO*V!R!4{Y!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!a!4t!a!b!:]!b;'S!4t;'S;=`!;r<%lO!4tq!5pV!cpOv!5kvx!6Vx!a!5k!a!b!7W!b;'S!5k;'S;=`!8V<%lO!5kP!6YTO!a!6V!a!b!6i!b;'S!6V;'S;=`!7Q<%lO!6VP!6lTO!`!6V!`!a!6{!a;'S!6V;'S;=`!7Q<%lO!6VP!7QOxPP!7TP;=`<%l!6Vq!7]V!cpOv!5kvx!6Vx!`!5k!`!a!7r!a;'S!5k;'S;=`!8V<%lO!5kq!7yS!cpxPOv(Vx;'S(V;'S;=`(h<%lO(Vq!8YP;=`<%l!5ka!8bX!a`Or!8]rs!6Vsv!8]vw!6Vw!a!8]!a!b!8}!b;'S!8];'S;=`!:V<%lO!8]a!9SX!a`Or!8]rs!6Vsv!8]vw!6Vw!`!8]!`!a!9o!a;'S!8];'S;=`!:V<%lO!8]a!9vT!a`xPOr)esv)ew;'S)e;'S;=`)y<%lO)ea!:YP;=`<%l!8]!R!:dY!a`!cpOr!4trs!5ksv!4tvw!6Vwx!8]x!`!4t!`!a!;S!a;'S!4t;'S;=`!;r<%lO!4t!R!;]V!a`!cpxPOr*Vrs(Vsv*Vwx)ex;'S*V;'S;=`*s<%lO*V!R!;uP;=`<%l!4t!V!{let a=O.type.id;if(a==BS)return bO(O,l,t);if(a==DS)return bO(O,l,n);if(a==NS)return bO(O,l,r);if(a==Mf&&s.length){let h=O.node,c=h.firstChild,f=c&&_f(c,l),d;if(f){for(let p of s)if(p.tag==f&&(!p.attrs||p.attrs(d||(d=Ff(h,l))))){let m=h.lastChild;return{parser:p.parser,overlay:[{from:c.to,to:m.type.id==HS?m.from:h.to}]}}}}if(o&&a==If){let h=O.node,c;if(c=h.firstChild){let f=o[l.read(c.from,c.to)];if(f)for(let d of f){if(d.tagName&&d.tagName!=_f(h.parent,l))continue;let p=h.lastChild;if(p.type.id==PO){let m=p.from+1,g=p.lastChild,$=p.to-(g&&g.isError?0:1);if($>m)return{parser:d.parser,overlay:[{from:m,to:$}]}}else if(p.type.id==Lf)return{parser:d.parser,overlay:[{from:p.from,to:p.to}]}}}}return null})}var Qn=["_blank","_self","_top","_parent"],TO=["ascii","utf-8","utf-16","latin1","latin1"],zO=["get","post","put","delete"],XO=["application/x-www-form-urlencoded","multipart/form-data","text/plain"],Ve=["true","false"],X={},mQ={a:{attrs:{href:null,ping:null,type:null,media:null,target:Qn,hreflang:null}},abbr:X,address:X,area:{attrs:{alt:null,coords:null,href:null,target:null,ping:null,media:null,hreflang:null,type:null,shape:["default","rect","circle","poly"]}},article:X,aside:X,audio:{attrs:{src:null,mediagroup:null,crossorigin:["anonymous","use-credentials"],preload:["none","metadata","auto"],autoplay:["autoplay"],loop:["loop"],controls:["controls"]}},b:X,base:{attrs:{href:null,target:Qn}},bdi:X,bdo:X,blockquote:{attrs:{cite:null}},body:X,br:X,button:{attrs:{form:null,formaction:null,name:null,value:null,autofocus:["autofocus"],disabled:["autofocus"],formenctype:XO,formmethod:zO,formnovalidate:["novalidate"],formtarget:Qn,type:["submit","reset","button"]}},canvas:{attrs:{width:null,height:null}},caption:X,center:X,cite:X,code:X,col:{attrs:{span:null}},colgroup:{attrs:{span:null}},command:{attrs:{type:["command","checkbox","radio"],label:null,icon:null,radiogroup:null,command:null,title:null,disabled:["disabled"],checked:["checked"]}},data:{attrs:{value:null}},datagrid:{attrs:{disabled:["disabled"],multiple:["multiple"]}},datalist:{attrs:{data:null}},dd:X,del:{attrs:{cite:null,datetime:null}},details:{attrs:{open:["open"]}},dfn:X,div:X,dl:X,dt:X,em:X,embed:{attrs:{src:null,type:null,width:null,height:null}},eventsource:{attrs:{src:null}},fieldset:{attrs:{disabled:["disabled"],form:null,name:null}},figcaption:X,figure:X,footer:X,form:{attrs:{action:null,name:null,"accept-charset":TO,autocomplete:["on","off"],enctype:XO,method:zO,novalidate:["novalidate"],target:Qn}},h1:X,h2:X,h3:X,h4:X,h5:X,h6:X,head:{children:["title","base","link","style","meta","script","noscript","command"]},header:X,hgroup:X,hr:X,html:{attrs:{manifest:null}},i:X,iframe:{attrs:{src:null,srcdoc:null,name:null,width:null,height:null,sandbox:["allow-top-navigation","allow-same-origin","allow-forms","allow-scripts"],seamless:["seamless"]}},img:{attrs:{alt:null,src:null,ismap:null,usemap:null,width:null,height:null,crossorigin:["anonymous","use-credentials"]}},input:{attrs:{alt:null,dirname:null,form:null,formaction:null,height:null,list:null,max:null,maxlength:null,min:null,name:null,pattern:null,placeholder:null,size:null,src:null,step:null,value:null,width:null,accept:["audio/*","video/*","image/*"],autocomplete:["on","off"],autofocus:["autofocus"],checked:["checked"],disabled:["disabled"],formenctype:XO,formmethod:zO,formnovalidate:["novalidate"],formtarget:Qn,multiple:["multiple"],readonly:["readonly"],required:["required"],type:["hidden","text","search","tel","url","email","password","datetime","date","month","week","time","datetime-local","number","range","color","checkbox","radio","file","submit","image","reset","button"]}},ins:{attrs:{cite:null,datetime:null}},kbd:X,keygen:{attrs:{challenge:null,form:null,name:null,autofocus:["autofocus"],disabled:["disabled"],keytype:["RSA"]}},label:{attrs:{for:null,form:null}},legend:X,li:{attrs:{value:null}},link:{attrs:{href:null,type:null,hreflang:null,media:null,sizes:["all","16x16","16x16 32x32","16x16 32x32 64x64"]}},map:{attrs:{name:null}},mark:X,menu:{attrs:{label:null,type:["list","context","toolbar"]}},meta:{attrs:{content:null,charset:TO,name:["viewport","application-name","author","description","generator","keywords"],"http-equiv":["content-language","content-type","default-style","refresh"]}},meter:{attrs:{value:null,min:null,low:null,high:null,max:null,optimum:null}},nav:X,noscript:X,object:{attrs:{data:null,type:null,name:null,usemap:null,form:null,width:null,height:null,typemustmatch:["typemustmatch"]}},ol:{attrs:{reversed:["reversed"],start:null,type:["1","a","A","i","I"]},children:["li","script","template","ul","ol"]},optgroup:{attrs:{disabled:["disabled"],label:null}},option:{attrs:{disabled:["disabled"],label:null,selected:["selected"],value:null}},output:{attrs:{for:null,form:null,name:null}},p:X,param:{attrs:{name:null,value:null}},pre:X,progress:{attrs:{value:null,max:null}},q:{attrs:{cite:null}},rp:X,rt:X,ruby:X,samp:X,script:{attrs:{type:["text/javascript"],src:null,async:["async"],defer:["defer"],charset:TO}},section:X,select:{attrs:{form:null,name:null,size:null,autofocus:["autofocus"],disabled:["disabled"],multiple:["multiple"]}},slot:{attrs:{name:null}},small:X,source:{attrs:{src:null,type:null,media:null}},span:X,strong:X,style:{attrs:{type:["text/css"],media:null,scoped:null}},sub:X,summary:X,sup:X,table:X,tbody:X,td:{attrs:{colspan:null,rowspan:null,headers:null}},template:X,textarea:{attrs:{dirname:null,form:null,maxlength:null,name:null,placeholder:null,rows:null,cols:null,autofocus:["autofocus"],disabled:["disabled"],readonly:["readonly"],required:["required"],wrap:["soft","hard"]}},tfoot:X,th:{attrs:{colspan:null,rowspan:null,headers:null,scope:["row","col","rowgroup","colgroup"]}},thead:X,time:{attrs:{datetime:null}},title:X,tr:X,track:{attrs:{src:null,label:null,default:null,kind:["subtitles","captions","descriptions","chapters","metadata"],srclang:null}},ul:{children:["li","script","template","ul","ol"]},var:X,video:{attrs:{src:null,poster:null,width:null,height:null,crossorigin:["anonymous","use-credentials"],preload:["auto","metadata","none"],autoplay:["autoplay"],mediagroup:["movie"],muted:["muted"],controls:["controls"]}},wbr:X},eu={accesskey:null,class:null,contenteditable:Ve,contextmenu:null,dir:["ltr","rtl","auto"],draggable:["true","false","auto"],dropzone:["copy","move","link","string:","file:"],hidden:["hidden"],id:null,inert:["inert"],itemid:null,itemprop:null,itemref:null,itemscope:["itemscope"],itemtype:null,lang:["ar","bn","de","en-GB","en-US","es","fr","hi","id","ja","pa","pt","ru","tr","zh"],spellcheck:Ve,autocorrect:Ve,autocapitalize:Ve,style:null,tabindex:null,title:null,translate:["yes","no"],rel:["stylesheet","alternate","author","bookmark","help","license","next","nofollow","noreferrer","prefetch","prev","search","tag"],role:"alert application article banner button cell checkbox complementary contentinfo dialog document feed figure form grid gridcell heading img list listbox listitem main navigation region row rowgroup search switch tab table tabpanel textbox timer".split(" "),"aria-activedescendant":null,"aria-atomic":Ve,"aria-autocomplete":["inline","list","both","none"],"aria-busy":Ve,"aria-checked":["true","false","mixed","undefined"],"aria-controls":null,"aria-describedby":null,"aria-disabled":Ve,"aria-dropeffect":null,"aria-expanded":["true","false","undefined"],"aria-flowto":null,"aria-grabbed":["true","false","undefined"],"aria-haspopup":Ve,"aria-hidden":Ve,"aria-invalid":["true","false","grammar","spelling"],"aria-label":null,"aria-labelledby":null,"aria-level":null,"aria-live":["off","polite","assertive"],"aria-multiline":Ve,"aria-multiselectable":Ve,"aria-owns":null,"aria-posinset":null,"aria-pressed":["true","false","mixed","undefined"],"aria-readonly":Ve,"aria-relevant":null,"aria-required":Ve,"aria-selected":["true","false","undefined"],"aria-setsize":null,"aria-sort":["ascending","descending","none","other"],"aria-valuemax":null,"aria-valuemin":null,"aria-valuenow":null,"aria-valuetext":null},tu="beforeunload copy cut dragstart dragover dragleave dragenter dragend drag paste focus blur change click load mousedown mouseenter mouseleave mouseup keydown keyup resize scroll unload".split(" ").map(i=>"on"+i);for(let i of tu)eu[i]=null;var ti=class{constructor(e,t){this.tags=Object.assign(Object.assign({},mQ),e),this.globalAttrs=Object.assign(Object.assign({},eu),t),this.allTags=Object.keys(this.tags),this.globalAttrNames=Object.keys(this.globalAttrs)}};ti.default=new ti;function vi(i,e,t=i.length){if(!e)return"";let n=e.firstChild,r=n&&n.getChild("TagName");return r?i.sliceString(r.from,Math.min(r.to,t)):""}function Ti(i,e=!1){for(;i;i=i.parent)if(i.name=="Element")if(e)e=!1;else return i;return null}function iu(i,e,t){let n=t.tags[vi(i,Ti(e))];return n?.children||t.allTags}function WO(i,e){let t=[];for(let n=Ti(e);n&&!n.type.isTop;n=Ti(n.parent)){let r=vi(i,n);if(r&&n.lastChild.name=="CloseTag")break;r&&t.indexOf(r)<0&&(e.name=="EndTag"||e.from>=n.firstChild.to)&&t.push(r)}return t}var nu=/^[:\-\.\w\u00b7-\uffff]*$/;function Hf(i,e,t,n,r){let s=/\s*>/.test(i.sliceDoc(r,r+5))?"":">",o=Ti(t,!0);return{from:n,to:r,options:iu(i.doc,o,e).map(O=>({label:O,type:"type"})).concat(WO(i.doc,t).map((O,l)=>({label:"/"+O,apply:"/"+O+s,type:"type",boost:99-l}))),validFor:/^\/?[:\-\.\w\u00b7-\uffff]*$/}}function Kf(i,e,t,n){let r=/\s*>/.test(i.sliceDoc(n,n+5))?"":">";return{from:t,to:n,options:WO(i.doc,e).map((s,o)=>({label:s,apply:s+r,type:"type",boost:99-o})),validFor:nu}}function gQ(i,e,t,n){let r=[],s=0;for(let o of iu(i.doc,t,e))r.push({label:"<"+o,type:"type"});for(let o of WO(i.doc,t))r.push({label:"",type:"type",boost:99-s++});return{from:n,to:n,options:r,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}function $Q(i,e,t,n,r){let s=Ti(t),o=s?e.tags[vi(i.doc,s)]:null,O=o&&o.attrs?Object.keys(o.attrs):[],l=o&&o.globalAttrs===!1?O:O.length?O.concat(e.globalAttrNames):e.globalAttrNames;return{from:n,to:r,options:l.map(a=>({label:a,type:"property"})),validFor:nu}}function SQ(i,e,t,n,r){var s;let o=(s=t.parent)===null||s===void 0?void 0:s.getChild("AttributeName"),O=[],l;if(o){let a=i.sliceDoc(o.from,o.to),h=e.globalAttrs[a];if(!h){let c=Ti(t),f=c?e.tags[vi(i.doc,c)]:null;h=f?.attrs&&f.attrs[a]}if(h){let c=i.sliceDoc(n,r).toLowerCase(),f='"',d='"';/^['"]/.test(c)?(l=c[0]=='"'?/^[^"]*$/:/^[^']*$/,f="",d=i.sliceDoc(r,r+1)==c[0]?"":c[0],c=c.slice(1),n++):l=/^[^\s<>='"]*$/;for(let p of h)O.push({label:p,apply:f+p+d,type:"constant"})}}return{from:n,to:r,options:O,validFor:l}}function ru(i,e){let{state:t,pos:n}=e,r=A(t).resolveInner(n,-1),s=r.resolve(n);for(let o=n,O;s==r&&(O=r.childBefore(o));){let l=O.lastChild;if(!l||!l.type.isError||l.fromru(n,r)}var yQ=Ke.parser.configure({top:"SingleExpression"}),ou=[{tag:"script",attrs:i=>i.type=="text/typescript"||i.lang=="ts",parser:$O.parser},{tag:"script",attrs:i=>i.type=="text/babel"||i.type=="text/jsx",parser:SO.parser},{tag:"script",attrs:i=>i.type=="text/typescript-jsx",parser:QO.parser},{tag:"script",attrs(i){return/^(importmap|speculationrules|application\/(.+\+)?json)$/i.test(i.type)},parser:yQ},{tag:"script",attrs(i){return!i.type||/^(?:text|application)\/(?:x-)?(?:java|ecma)script$|^module$|^$/i.test(i.type)},parser:Ke.parser},{tag:"style",attrs(i){return(!i.lang||i.lang=="css")&&(!i.type||/^(text\/)?(x-)?(stylesheet|css)$/i.test(i.type))},parser:mn.parser}],Ou=[{name:"style",parser:mn.parser.configure({top:"Styles"})}].concat(tu.map(i=>({name:i,parser:Ke.parser}))),lu=de.define({name:"html",parser:Nf.configure({props:[ye.add({Element(i){let e=/^(\s*)(<\/)?/.exec(i.textAfter);return i.node.to<=i.pos+e[0].length?i.continue():i.lineIndent(i.node.from)+(e[2]?0:i.unit)},"OpenTag CloseTag SelfClosingTag"(i){return i.column(i.node.from)+i.unit},Document(i){if(i.pos+/\s*/.exec(i.textAfter)[0].lengthi.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:""}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-._"}}),Ir=lu.configure({wrap:vO(ou,Ou)});function zi(i={}){let e="",t;i.matchClosingTags===!1&&(e="noMatch"),i.selfClosingTags===!0&&(e=(e?e+" ":"")+"selfClosing"),(i.nestedLanguages&&i.nestedLanguages.length||i.nestedAttributes&&i.nestedAttributes.length)&&(t=vO((i.nestedLanguages||[]).concat(ou),(i.nestedAttributes||[]).concat(Ou)));let n=t?lu.configure({wrap:t,dialect:e}):e?Ir.configure({dialect:e}):Ir;return new re(n,[Ir.data.of({autocomplete:QQ(i)}),i.autoCloseTags!==!1?bQ:[],ei().support,jr().support])}var Jf=new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")),bQ=v.inputHandler.of((i,e,t,n,r)=>{if(i.composing||i.state.readOnly||e!=t||n!=">"&&n!="/"||!Ir.isActiveAt(i.state,e,-1))return!1;let s=r(),{state:o}=s,O=o.changeByRange(l=>{var a,h,c;let f=o.doc.sliceString(l.from-1,l.to)==n,{head:d}=l,p=A(o).resolveInner(d-1,-1),m;if((p.name=="TagName"||p.name=="StartTag")&&(p=p.parent),f&&n==">"&&p.name=="OpenTag"){if(((h=(a=p.parent)===null||a===void 0?void 0:a.lastChild)===null||h===void 0?void 0:h.name)!="CloseTag"&&(m=vi(o.doc,p.parent,d))&&!Jf.has(m)){let g=d+(o.doc.sliceString(d,d+1)===">"?1:0),$=``;return{range:l,changes:{from:d,to:g,insert:$}}}}else if(f&&n=="/"&&p.name=="IncompleteCloseTag"){let g=p.parent;if(p.from==d-2&&((c=g.lastChild)===null||c===void 0?void 0:c.name)!="CloseTag"&&(m=vi(o.doc,g,d))&&!Jf.has(m)){let $=d+(o.doc.sliceString(d,d+1)===">"?1:0),Q=`${m}>`;return{range:S.cursor(d+Q.length,-1),changes:{from:d,to:$,insert:Q}}}}return{range:l}});return O.changes.empty?!1:(i.dispatch([s,o.update(O,{userEvent:"input.complete",scrollIntoView:!0})]),!0)});var Dr=class i{static create(e,t,n,r,s){let o=r+(r<<8)+e+(t<<4)|0;return new i(e,t,n,o,s,[],[])}constructor(e,t,n,r,s,o,O){this.type=e,this.value=t,this.from=n,this.hash=r,this.end=s,this.children=o,this.positions=O,this.hashProp=[[R.contextHash,r]]}addChild(e,t){e.prop(R.contextHash)!=this.hash&&(e=new Y(e.type,e.children,e.positions,e.length,this.hashProp)),this.children.push(e),this.positions.push(t)}toTree(e,t=this.end){let n=this.children.length-1;return n>=0&&(t=Math.max(t,this.positions[n]+this.children[n].length+this.from)),new Y(e.types[this.type],this.children,this.positions,t-this.from).balance({makeTree:(r,s,o)=>new Y(F.none,r,s,o,this.hashProp)})}},y;(function(i){i[i.Document=1]="Document",i[i.CodeBlock=2]="CodeBlock",i[i.FencedCode=3]="FencedCode",i[i.Blockquote=4]="Blockquote",i[i.HorizontalRule=5]="HorizontalRule",i[i.BulletList=6]="BulletList",i[i.OrderedList=7]="OrderedList",i[i.ListItem=8]="ListItem",i[i.ATXHeading1=9]="ATXHeading1",i[i.ATXHeading2=10]="ATXHeading2",i[i.ATXHeading3=11]="ATXHeading3",i[i.ATXHeading4=12]="ATXHeading4",i[i.ATXHeading5=13]="ATXHeading5",i[i.ATXHeading6=14]="ATXHeading6",i[i.SetextHeading1=15]="SetextHeading1",i[i.SetextHeading2=16]="SetextHeading2",i[i.HTMLBlock=17]="HTMLBlock",i[i.LinkReference=18]="LinkReference",i[i.Paragraph=19]="Paragraph",i[i.CommentBlock=20]="CommentBlock",i[i.ProcessingInstructionBlock=21]="ProcessingInstructionBlock",i[i.Escape=22]="Escape",i[i.Entity=23]="Entity",i[i.HardBreak=24]="HardBreak",i[i.Emphasis=25]="Emphasis",i[i.StrongEmphasis=26]="StrongEmphasis",i[i.Link=27]="Link",i[i.Image=28]="Image",i[i.InlineCode=29]="InlineCode",i[i.HTMLTag=30]="HTMLTag",i[i.Comment=31]="Comment",i[i.ProcessingInstruction=32]="ProcessingInstruction",i[i.URL=33]="URL",i[i.HeaderMark=34]="HeaderMark",i[i.QuoteMark=35]="QuoteMark",i[i.ListMark=36]="ListMark",i[i.LinkMark=37]="LinkMark",i[i.EmphasisMark=38]="EmphasisMark",i[i.CodeMark=39]="CodeMark",i[i.CodeText=40]="CodeText",i[i.CodeInfo=41]="CodeInfo",i[i.LinkTitle=42]="LinkTitle",i[i.LinkLabel=43]="LinkLabel"})(y||(y={}));var YO=class{constructor(e,t){this.start=e,this.content=t,this.marks=[],this.parsers=[]}},VO=class{constructor(){this.text="",this.baseIndent=0,this.basePos=0,this.depth=0,this.markers=[],this.pos=0,this.indent=0,this.next=-1}forward(){this.basePos>this.pos&&this.forwardInner()}forwardInner(){let e=this.skipSpace(this.basePos);this.indent=this.countIndent(e,this.pos,this.indent),this.pos=e,this.next=e==this.text.length?-1:this.text.charCodeAt(e)}skipSpace(e){return Pn(this.text,e)}reset(e){for(this.text=e,this.baseIndent=this.basePos=this.pos=this.indent=0,this.forwardInner(),this.depth=1;this.markers.length;)this.markers.pop()}moveBase(e){this.basePos=e,this.baseIndent=this.countIndent(e,this.pos,this.indent)}moveBaseColumn(e){this.baseIndent=e,this.basePos=this.findColumn(e)}addMarker(e){this.markers.push(e)}countIndent(e,t=0,n=0){for(let r=t;r=e.stack[t.depth+1].value+t.baseIndent)return!0;if(t.indent>=t.baseIndent+4)return!1;let n=(i.type==y.OrderedList?DO:BO)(t,e,!1);return n>0&&(i.type!=y.BulletList||LO(t,e,!1)<0)&&t.text.charCodeAt(t.pos+n-1)==i.value}var yu={[y.Blockquote](i,e,t){return t.next!=62?!1:(t.markers.push(U(y.QuoteMark,e.lineStart+t.pos,e.lineStart+t.pos+1)),t.moveBase(t.pos+(Me(t.text.charCodeAt(t.pos+1))?2:1)),i.end=e.lineStart+t.text.length,!0)},[y.ListItem](i,e,t){return t.indent-1?!1:(t.moveBaseColumn(t.baseIndent+i.value),!0)},[y.OrderedList]:au,[y.BulletList]:au,[y.Document](){return!0}};function Me(i){return i==32||i==9||i==10||i==13}function Pn(i,e=0){for(;et&&Me(i.charCodeAt(e-1));)e--;return e}function bu(i){if(i.next!=96&&i.next!=126)return-1;let e=i.pos+1;for(;e-1&&i.depth==e.stack.length||n<3?-1:1}function xu(i,e){for(let t=i.stack.length-1;t>=0;t--)if(i.stack[t].type==e)return!0;return!1}function BO(i,e,t){return(i.next==45||i.next==43||i.next==42)&&(i.pos==i.text.length-1||Me(i.text.charCodeAt(i.pos+1)))&&(!t||xu(e,y.BulletList)||i.skipSpace(i.pos+2)=48&&r<=57;){n++;if(n==i.text.length)return-1;r=i.text.charCodeAt(n)}return n==i.pos||n>i.pos+9||r!=46&&r!=41||ni.pos+1||i.next!=49)?-1:n+1-i.pos}function wu(i){if(i.next!=35)return-1;let e=i.pos+1;for(;e6?-1:t}function ku(i){if(i.next!=45&&i.next!=61||i.indent>=i.baseIndent+4)return-1;let e=i.pos+1;for(;e/,Tu=/\?>/,qO=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*"}},indentOnInput:/^\s*<\/\w+\W$/,wordChars:"-._"}}),Dr=mu.configure({wrap:RO(du,pu)});function Wi(i={}){let e="",t;i.matchClosingTags===!1&&(e="noMatch"),i.selfClosingTags===!0&&(e=(e?e+" ":"")+"selfClosing"),(i.nestedLanguages&&i.nestedLanguages.length||i.nestedAttributes&&i.nestedAttributes.length)&&(t=RO((i.nestedLanguages||[]).concat(du),(i.nestedAttributes||[]).concat(pu)));let n=t?mu.configure({wrap:t,dialect:e}):e?Dr.configure({dialect:e}):Dr;return new Oe(n,[Dr.data.of({autocomplete:qS(i)}),i.autoCloseTags!==!1?CS:[],ni().support,Gr().support])}var Ou=new Set("area base br col command embed frame hr img input keygen link meta param source track wbr menuitem".split(" ")),CS=T.inputHandler.of((i,e,t,n,r)=>{if(i.composing||i.state.readOnly||e!=t||n!=">"&&n!="/"||!Dr.isActiveAt(i.state,e,-1))return!1;let s=r(),{state:o}=s,O=o.changeByRange(a=>{var l,h,c;let f=o.doc.sliceString(a.from-1,a.to)==n,{head:d}=a,p=M(o).resolveInner(d-1,-1),m;if((p.name=="TagName"||p.name=="StartTag")&&(p=p.parent),f&&n==">"&&p.name=="OpenTag"){if(((h=(l=p.parent)===null||l===void 0?void 0:l.lastChild)===null||h===void 0?void 0:h.name)!="CloseTag"&&(m=Zi(o.doc,p.parent,d))&&!Ou.has(m)){let $=d+(o.doc.sliceString(d,d+1)===">"?1:0),g=``;return{range:a,changes:{from:d,to:$,insert:g}}}}else if(f&&n=="/"&&p.name=="IncompleteCloseTag"){let $=p.parent;if(p.from==d-2&&((c=$.lastChild)===null||c===void 0?void 0:c.name)!="CloseTag"&&(m=Zi(o.doc,$,d))&&!Ou.has(m)){let g=d+(o.doc.sliceString(d,d+1)===">"?1:0),Q=`${m}>`;return{range:S.cursor(d+Q.length,-1),changes:{from:d,to:g,insert:Q}}}}return{range:a}});return O.changes.empty?!1:(i.dispatch([s,o.update(O,{userEvent:"input.complete",scrollIntoView:!0})]),!0)});var Hr=class i{static create(e,t,n,r,s){let o=r+(r<<8)+e+(t<<4)|0;return new i(e,t,n,o,s,[],[])}constructor(e,t,n,r,s,o,O){this.type=e,this.value=t,this.from=n,this.hash=r,this.end=s,this.children=o,this.positions=O,this.hashProp=[[R.contextHash,r]]}addChild(e,t){e.prop(R.contextHash)!=this.hash&&(e=new q(e.type,e.children,e.positions,e.length,this.hashProp)),this.children.push(e),this.positions.push(t)}toTree(e,t=this.end){let n=this.children.length-1;return n>=0&&(t=Math.max(t,this.positions[n]+this.children[n].length+this.from)),new q(e.types[this.type],this.children,this.positions,t-this.from).balance({makeTree:(r,s,o)=>new q(ie.none,r,s,o,this.hashProp)})}},y;(function(i){i[i.Document=1]="Document",i[i.CodeBlock=2]="CodeBlock",i[i.FencedCode=3]="FencedCode",i[i.Blockquote=4]="Blockquote",i[i.HorizontalRule=5]="HorizontalRule",i[i.BulletList=6]="BulletList",i[i.OrderedList=7]="OrderedList",i[i.ListItem=8]="ListItem",i[i.ATXHeading1=9]="ATXHeading1",i[i.ATXHeading2=10]="ATXHeading2",i[i.ATXHeading3=11]="ATXHeading3",i[i.ATXHeading4=12]="ATXHeading4",i[i.ATXHeading5=13]="ATXHeading5",i[i.ATXHeading6=14]="ATXHeading6",i[i.SetextHeading1=15]="SetextHeading1",i[i.SetextHeading2=16]="SetextHeading2",i[i.HTMLBlock=17]="HTMLBlock",i[i.LinkReference=18]="LinkReference",i[i.Paragraph=19]="Paragraph",i[i.CommentBlock=20]="CommentBlock",i[i.ProcessingInstructionBlock=21]="ProcessingInstructionBlock",i[i.Escape=22]="Escape",i[i.Entity=23]="Entity",i[i.HardBreak=24]="HardBreak",i[i.Emphasis=25]="Emphasis",i[i.StrongEmphasis=26]="StrongEmphasis",i[i.Link=27]="Link",i[i.Image=28]="Image",i[i.InlineCode=29]="InlineCode",i[i.HTMLTag=30]="HTMLTag",i[i.Comment=31]="Comment",i[i.ProcessingInstruction=32]="ProcessingInstruction",i[i.Autolink=33]="Autolink",i[i.HeaderMark=34]="HeaderMark",i[i.QuoteMark=35]="QuoteMark",i[i.ListMark=36]="ListMark",i[i.LinkMark=37]="LinkMark",i[i.EmphasisMark=38]="EmphasisMark",i[i.CodeMark=39]="CodeMark",i[i.CodeText=40]="CodeText",i[i.CodeInfo=41]="CodeInfo",i[i.LinkTitle=42]="LinkTitle",i[i.LinkLabel=43]="LinkLabel",i[i.URL=44]="URL"})(y||(y={}));var _O=class{constructor(e,t){this.start=e,this.content=t,this.marks=[],this.parsers=[]}},UO=class{constructor(){this.text="",this.baseIndent=0,this.basePos=0,this.depth=0,this.markers=[],this.pos=0,this.indent=0,this.next=-1}forward(){this.basePos>this.pos&&this.forwardInner()}forwardInner(){let e=this.skipSpace(this.basePos);this.indent=this.countIndent(e,this.pos,this.indent),this.pos=e,this.next=e==this.text.length?-1:this.text.charCodeAt(e)}skipSpace(e){return Tn(this.text,e)}reset(e){for(this.text=e,this.baseIndent=this.basePos=this.pos=this.indent=0,this.forwardInner(),this.depth=1;this.markers.length;)this.markers.pop()}moveBase(e){this.basePos=e,this.baseIndent=this.countIndent(e,this.pos,this.indent)}moveBaseColumn(e){this.baseIndent=e,this.basePos=this.findColumn(e)}addMarker(e){this.markers.push(e)}countIndent(e,t=0,n=0){for(let r=t;r=e.stack[t.depth+1].value+t.baseIndent)return!0;if(t.indent>=t.baseIndent+4)return!1;let n=(i.type==y.OrderedList?ea:JO)(t,e,!1);return n>0&&(i.type!=y.BulletList||KO(t,e,!1)<0)&&t.text.charCodeAt(t.pos+n-1)==i.value}var zu={[y.Blockquote](i,e,t){return t.next!=62?!1:(t.markers.push(_(y.QuoteMark,e.lineStart+t.pos,e.lineStart+t.pos+1)),t.moveBase(t.pos+(Le(t.text.charCodeAt(t.pos+1))?2:1)),i.end=e.lineStart+t.text.length,!0)},[y.ListItem](i,e,t){return t.indent-1?!1:(t.moveBaseColumn(t.baseIndent+i.value),!0)},[y.OrderedList]:$u,[y.BulletList]:$u,[y.Document](){return!0}};function Le(i){return i==32||i==9||i==10||i==13}function Tn(i,e=0){for(;et&&Le(i.charCodeAt(e-1));)e--;return e}function Zu(i){if(i.next!=96&&i.next!=126)return-1;let e=i.pos+1;for(;e-1&&i.depth==e.stack.length||n<3?-1:1}function Wu(i,e){for(let t=i.stack.length-1;t>=0;t--)if(i.stack[t].type==e)return!0;return!1}function JO(i,e,t){return(i.next==45||i.next==43||i.next==42)&&(i.pos==i.text.length-1||Le(i.text.charCodeAt(i.pos+1)))&&(!t||Wu(e,y.BulletList)||i.skipSpace(i.pos+2)=48&&r<=57;){n++;if(n==i.text.length)return-1;r=i.text.charCodeAt(n)}return n==i.pos||n>i.pos+9||r!=46&&r!=41||ni.pos+1||i.next!=49)?-1:n+1-i.pos}function Ru(i){if(i.next!=35)return-1;let e=i.pos+1;for(;e6?-1:t}function Vu(i){if(i.next!=45&&i.next!=61||i.indent>=i.baseIndent+4)return-1;let e=i.pos+1;for(;e/,Yu=/\?>/,GO=[[/^<(?:script|pre|style)(?:\s|>|$)/i,/<\/(?:script|pre|style)>/i],[/^\s*/i.exec(n);if(s)return i.append(U(y.Comment,t,t+1+s[0].length));let o=/^\?[^]*?\?>/.exec(n);if(o)return i.append(U(y.ProcessingInstruction,t,t+1+o[0].length));let O=/^(?:![A-Z][^]*?>|!\[CDATA\[[^]*?\]\]>|\/\s*[a-zA-Z][\w-]*\s*>|\s*[a-zA-Z][\w-]*(\s+[a-zA-Z:_][\w-.:]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*(\/\s*)?>)/.exec(n);return O?i.append(U(y.HTMLTag,t,t+1+O[0].length)):-1},Emphasis(i,e,t){if(e!=95&&e!=42)return-1;let n=t+1;for(;i.char(n)==e;)n++;let r=i.slice(t-1,t),s=i.slice(n,n+1),o=kn.test(r),O=kn.test(s),l=/\s|^$/.test(r),a=/\s|^$/.test(s),h=!a&&(!O||l||o),c=!l&&(!o||a||O),f=h&&(e==42||!c||o),d=c&&(e==42||!h||O);return i.append(new Ce(e==95?Ru:Zu,t,n,(f?1:0)|(d?2:0)))},HardBreak(i,e,t){if(e==92&&i.char(t+1)==10)return i.append(U(y.HardBreak,t,t+2));if(e==32){let n=t+1;for(;i.char(n)==32;)n++;if(i.char(n)==10&&n>=t+2)return i.append(U(y.HardBreak,t,n+1))}return-1},Link(i,e,t){return e==91?i.append(new Ce(bn,t,t+1,1)):-1},Image(i,e,t){return e==33&&i.char(t+1)==91?i.append(new Ce(fu,t,t+2,1)):-1},LinkEnd(i,e,t){if(e!=93)return-1;for(let n=i.parts.length-1;n>=0;n--){let r=i.parts[n];if(r instanceof Ce&&(r.type==bn||r.type==fu)){if(!r.side||i.skipSpace(r.to)==t&&!/[(\[]/.test(i.slice(t+1,t+2)))return i.parts[n]=null,-1;let s=i.takeContent(n),o=i.parts[n]=kQ(i,s,r.type==bn?y.Link:y.Image,r.from,t+1);if(r.type==bn)for(let O=0;Oe?U(y.URL,e+t,s+t):s==i.length?null:!1}}function Vu(i,e,t){let n=i.charCodeAt(e);if(n!=39&&n!=34&&n!=40)return!1;let r=n==40?41:n;for(let s=e+1,o=!1;s=this.end?-1:this.text.charCodeAt(e-this.offset)}get end(){return this.offset+this.text.length}slice(e,t){return this.text.slice(e-this.offset,t-this.offset)}append(e){return this.parts.push(e),e.to}addDelimiter(e,t,n,r,s){return this.append(new Ce(e,t,n,(r?1:0)|(s?2:0)))}addElement(e){return this.append(e)}resolveMarkers(e){for(let n=e;n=e;l--){let m=this.parts[l];if(m instanceof Ce&&m.side&1&&m.type==r.type&&!(s&&(r.side&1||m.side&2)&&(m.to-m.from+o)%3==0&&((m.to-m.from)%3||o%3))){O=m;break}}if(!O)continue;let a=r.type.resolve,h=[],c=O.from,f=r.to;if(s){let m=Math.min(2,O.to-O.from,o);c=O.to-m,f=r.from+m,a=m==1?"Emphasis":"StrongEmphasis"}O.type.mark&&h.push(this.elt(O.type.mark,c,O.to));for(let m=l+1;m=0;t--){let n=this.parts[t];if(n instanceof Ce&&n.type==e)return t}return null}takeContent(e){let t=this.resolveMarkers(e);return this.parts.length=e,t}skipSpace(e){return Pn(this.text,e-this.offset)+this.offset}elt(e,t,n,r){return typeof e=="string"?U(this.parser.getNodeType(e),t,n,r):new Fr(e,t)}};function GO(i,e){if(!e.length)return i;if(!i.length)return e;let t=i.slice(),n=0;for(let r of e){for(;n(e?e-1:0))return!1;if(this.fragmentEnd<0){let s=this.fragment.to;for(;s>0&&this.input.read(s-1,s)!=` -`;)s--;this.fragmentEnd=s?s-1:0}let n=this.cursor;n||(n=this.cursor=this.fragment.tree.cursor(),n.firstChild());let r=e+this.fragment.offset;for(;n.to<=r;)if(!n.parent())return!1;for(;;){if(n.from>=r)return this.fragment.from<=t;if(!n.childAfter(r))return!1}}matches(e){let t=this.cursor.tree;return t&&t.prop(R.contextHash)==e}takeNodes(e){let t=this.cursor,n=this.fragment.offset,r=this.fragmentEnd-(this.fragment.openEnd?1:0),s=e.absoluteLineStart,o=s,O=e.block.children.length,l=o,a=O;for(;;){if(t.to-n>r){if(t.type.isAnonymous&&t.firstChild())continue;break}let h=qu(t.from-n,e.ranges);if(t.to-n<=e.ranges[e.rangeI].to)e.addNode(t.tree,h);else{let c=new Y(e.parser.nodeSet.types[y.Paragraph],[],[],0,e.block.hashProp);e.reusePlaceholders.set(c,t.tree),e.addNode(c,h)}if(t.type.is("Block")&&(vQ.indexOf(t.type.id)<0?(o=t.to-n,O=e.block.children.length):(o=l,O=a,l=t.to-n,a=e.block.children.length)),!t.nextSibling())break}for(;e.block.children.length>O;)e.block.children.pop(),e.block.positions.pop();return o-s}};function qu(i,e){let t=i;for(let n=1;nLr[i]),Object.keys(Lr).map(i=>PQ[i]),Object.keys(Lr),xQ,yu,Object.keys(ZO).map(i=>ZO[i]),Object.keys(ZO),[]);function zQ(i,e,t){let n=[];for(let r=i.firstChild,s=e;;r=r.nextSibling){let o=r?r.from:t;if(o>s&&n.push({from:s,to:o}),!r)break;s=r.to}return n}function _u(i){let{codeParser:e,htmlParser:t}=i;return{wrap:Qi((r,s)=>{let o=r.type.id;if(e&&(o==y.CodeBlock||o==y.FencedCode)){let O="";if(o==y.FencedCode){let a=r.node.getChild(y.CodeInfo);a&&(O=s.read(a.from,a.to))}let l=e(O);if(l)return{parser:l,overlay:a=>a.type.id==y.CodeText}}else if(t&&(o==y.HTMLBlock||o==y.HTMLTag))return{parser:t,overlay:zQ(r.node,r.from,r.to)};return null})}}var XQ={resolve:"Strikethrough",mark:"StrikethroughMark"},WQ={defineNodes:[{name:"Strikethrough",style:{"Strikethrough/...":u.strikethrough}},{name:"StrikethroughMark",style:u.processingInstruction}],parseInline:[{name:"Strikethrough",parse(i,e,t){if(e!=126||i.char(t+1)!=126||i.char(t+2)==126)return-1;let n=i.slice(t-1,t),r=i.slice(t+2,t+3),s=/\s|^$/.test(n),o=/\s|^$/.test(r),O=kn.test(n),l=kn.test(r);return i.addDelimiter(XQ,t,t+2,!o&&(!l||s||O),!s&&(!O||o||l))},after:"Emphasis"}]};function xn(i,e,t=0,n,r=0){let s=0,o=!0,O=-1,l=-1,a=!1,h=()=>{n.push(i.elt("TableCell",r+O,r+l,i.parser.parseInline(e.slice(O,l),r+O)))};for(let c=t;c-1)&&s++,o=!1,n&&(O>-1&&h(),n.push(i.elt("TableDelimiter",c+r,c+r+1))),O=l=-1):(a||f!=32&&f!=9)&&(O<0&&(O=c),l=c+1),a=!a&&f==92}return O>-1&&(s++,n&&h()),s}function du(i,e){for(let t=e;tr instanceof Hr)||!du(e.text,e.basePos))return!1;let n=i.scanLine(i.absoluteLineEnd+1).text;return Au.test(n)&&xn(i,e.text,e.basePos)==xn(i,n,e.basePos)},before:"SetextHeading"}]},IO=class{nextLine(){return!1}finish(e,t){return e.addLeafElement(t,e.elt("Task",t.start,t.start+t.content.length,[e.elt("TaskMarker",t.start,t.start+3),...e.parser.parseInline(t.content.slice(3),t.start+3)])),!0}},ZQ={defineNodes:[{name:"Task",block:!0,style:u.list},{name:"TaskMarker",style:u.atom}],parseBlock:[{name:"TaskList",leaf(i,e){return/^\[[ xX]\][ \t]/.test(e.content)&&i.parentType().name=="ListItem"?new IO:null},after:"SetextHeading"}]},pu=/(www\.)|(https?:\/\/)|([\w.+-]+@)|(mailto:|xmpp:)/gy,mu=/[\w-]+(\.\w+(\.\w+)?)(\/[^\s<]*)?/gy,gu=/[\w.+-]+@[\w-]+\.[\w.-]+/gy,$u=/\/[a-zA-Z\d@.]+/gy;function Su(i,e,t,n){let r=0;for(let s=e;sSu(i,e,n,"("))n--;else if(r==";"&&(s=/&(?:#\d+|#x[a-f\d]+|\w+);$/.exec(i.slice(e,n))))n=e+s.index;else break}return n}function Qu(i,e){gu.lastIndex=e;let t=gu.exec(i);if(!t)return-1;let n=t[0][t[0].length-1];return n=="_"||n=="-"?-1:e+t[0].length-(n=="."?1:0)}var VQ={parseInline:[{name:"Autolink",parse(i,e,t){let n=t-i.offset;pu.lastIndex=n;let r=pu.exec(i.text),s=-1;return!r||(r[1]||r[2]?s=YQ(i.text,n+r[0].length):r[3]?s=Qu(i.text,n):(s=Qu(i.text,n+r[0].length),s>-1&&r[0]=="xmpp:"&&($u.lastIndex=s,r=$u.exec(i.text),r&&(s=r.index+r[0].length))),s<0)?-1:(i.addElement(i.elt("URL",t,s+i.offset)),s+i.offset)}}]},ju=[RQ,ZQ,WQ,VQ];function Eu(i,e,t){return(n,r,s)=>{if(r!=i||n.char(s+1)==i)return-1;let o=[n.elt(t,s,s+1)];for(let O=s+1;O"}}}),Du=new R,Nu=Uu.configure({props:[be.add(i=>!i.is("Block")||i.is("Document")||HO(i)!=null?void 0:(e,t)=>({from:t.doc.lineAt(e.from).to,to:e.to})),Du.add(HO),ye.add({Document:()=>null}),$t.add({Document:Bu})]});function HO(i){let e=/^(?:ATX|Setext)Heading(\d)$/.exec(i.name);return e?+e[1]:void 0}function CQ(i,e){let t=i;for(;;){let n=t.nextSibling,r;if(!n||(r=HO(n.type))!=null&&r<=e)break;t=n}return t.to}var qQ=jh.of((i,e,t)=>{for(let n=A(i).resolveInner(t,-1);n&&!(n.fromt)return{from:t,to:s}}return null});function el(i){return new ue(Bu,i,[qQ],"markdown")}var UQ=el(Nu),_Q=Nu.configure([ju,Mu,Gu,Iu,{props:[be.add({Table:(i,e)=>({from:e.doc.lineAt(i.from).to,to:i.to})})]}]),Fu=el(_Q);function AQ(i,e){return t=>{if(t&&i){let n=null;if(t=/\S*/.exec(t)[0],typeof i=="function"?n=i(t):n=an.matchLanguageName(i,t,!0),n instanceof an)return n.support?n.support.language.parser:Ht.getSkippingParser(n.load());if(n)return n.parser}return e?e.parser:null}}var Wi=class{constructor(e,t,n,r,s,o,O){this.node=e,this.from=t,this.to=n,this.spaceBefore=r,this.spaceAfter=s,this.type=o,this.item=O}blank(e,t=!0){let n=this.spaceBefore+(this.node.name=="Blockquote"?">":"");if(e!=null){for(;n.length0;r--)n+=" ";return n+(t?this.spaceAfter:"")}}marker(e,t){let n=this.node.name=="OrderedList"?String(+Ku(this.item,e)[2]+t):"";return this.spaceBefore+n+this.type+this.spaceAfter}};function Hu(i,e){let t=[];for(let r=i;r&&r.name!="Document";r=r.parent)(r.name=="ListItem"||r.name=="Blockquote"||r.name=="FencedCode")&&t.push(r);let n=[];for(let r=t.length-1;r>=0;r--){let s=t[r],o,O=e.lineAt(s.from),l=s.from-O.from;if(s.name=="FencedCode")n.push(new Wi(s,l,l,"","","",null));else if(s.name=="Blockquote"&&(o=/^ *>( ?)/.exec(O.text.slice(l))))n.push(new Wi(s,l,l+o[0].length,"",o[1],">",null));else if(s.name=="ListItem"&&s.parent.name=="OrderedList"&&(o=/^( *)\d+([.)])( *)/.exec(O.text.slice(l)))){let a=o[3],h=o[0].length;a.length>=4&&(a=a.slice(0,a.length-4),h-=4),n.push(new Wi(s.parent,l,l+h,o[1],a,o[2],s))}else if(s.name=="ListItem"&&s.parent.name=="BulletList"&&(o=/^( *)([-+*])( {1,4}\[[ xX]\])?( +)/.exec(O.text.slice(l)))){let a=o[4],h=o[0].length;a.length>4&&(a=a.slice(0,a.length-4),h-=4);let c=o[2];o[3]&&(c+=o[3].replace(/[xX]/," ")),n.push(new Wi(s.parent,l,l+h,o[1],a,c,s))}}return n}function Ku(i,e){return/^(\s*)(\d+)(?=[.)])/.exec(e.sliceString(i.from,i.from+10))}function NO(i,e,t,n=0){for(let r=-1,s=i;;){if(s.name=="ListItem"){let O=Ku(s,e),l=+O[2];if(r>=0){if(l!=r+1)return;t.push({from:s.from+O[1].length,to:s.from+O[0].length,insert:String(r+2+n)})}r=l}let o=s.nextSibling;if(!o)break;s=o}}function KO(i,e){let t=/^[ \t]*/.exec(i)[0].length;if(!t||e.facet(Rt)!=" ")return i;let n=ve(i,4,t),r="";for(let s=n;s>0;)s>=4?(r+=" ",s-=4):(r+=" ",s--);return r+i.slice(t)}var jQ=({state:i,dispatch:e})=>{let t=A(i),{doc:n}=i,r=null,s=i.changeByRange(o=>{if(!o.empty||!Fu.isActiveAt(i,o.from))return r={range:o};let O=o.from,l=n.lineAt(O),a=Hu(t.resolveInner(O,-1),n);for(;a.length&&a[a.length-1].from>O-l.from;)a.pop();if(!a.length)return r={range:o};let h=a[a.length-1];if(h.to-h.spaceAfter.length>O-l.from)return r={range:o};let c=O>=h.to-h.spaceAfter.length&&!/\S/.test(l.text.slice(h.to));if(h.item&&c)if(h.node.firstChild.to>=O||l.from>0&&!/[^\s>]/.test(n.lineAt(l.from-1).text)){let g=a.length>1?a[a.length-2]:null,$,Q="";g&&g.item?($=l.from+g.from,Q=g.marker(n,1)):$=l.from+(g?g.to:0);let k=[{from:$,to:O,insert:Q}];return h.node.name=="OrderedList"&&NO(h.item,n,k,-2),g&&g.node.name=="OrderedList"&&NO(g.item,n,k),{range:S.cursor($+Q.length),changes:k}}else{let g="";for(let $=0,Q=a.length-2;$<=Q;$++)g+=a[$].blank($\s*$/.exec(g.text);if($&&$.index==h.from){let Q=i.changes([{from:g.from+$.index,to:g.to},{from:l.from+h.from,to:l.to}]);return{range:o.map(Q),changes:Q}}}let f=[];h.node.name=="OrderedList"&&NO(h.item,n,f);let d=h.item&&h.item.from]*/.exec(l.text)[0].length>=h.to)for(let g=0,$=a.length-1;g<=$;g++)p+=g==$&&!d?a[g].marker(n,1):a[g].blank(g<$?ve(l.text,4,a[g+1].from)-p.length:null);let m=O;for(;m>l.from&&/\s/.test(l.text.charAt(m-l.from-1));)m--;return p=KO(p,i),f.push({from:m,to:O,insert:i.lineBreak+p}),{range:S.cursor(m+p.length+1),changes:f}});return r?!1:(e(i.update(s,{scrollIntoView:!0,userEvent:"input"})),!0)};function Lu(i){return i.name=="QuoteMark"||i.name=="ListMark"}function EQ(i,e){let t=i.resolveInner(e,-1),n=e;Lu(t)&&(n=t.from,t=t.parent);for(let r;r=t.childBefore(n);)if(Lu(r))n=r.from;else if(r.name=="OrderedList"||r.name=="BulletList")t=r.lastChild,n=t.to;else break;return t}var GQ=({state:i,dispatch:e})=>{let t=A(i),n=null,r=i.changeByRange(s=>{let o=s.from,{doc:O}=i;if(s.empty&&Fu.isActiveAt(i,s.from)){let l=O.lineAt(o),a=Hu(EQ(t,o),O);if(a.length){let h=a[a.length-1],c=h.to-h.spaceAfter.length+(h.spaceAfter?1:0);if(o-l.from>c&&!/\S/.test(l.text.slice(c,o-l.from)))return{range:S.cursor(l.from+c),changes:{from:l.from+c,to:o}};if(o-l.from==c&&(!h.item||l.from<=h.item.from||!/\S/.test(l.text.slice(0,h.to)))){let f=l.from+h.from;if(h.item&&h.node.from=97&&i<=122||i>=65&&i<=90}function vn(i){return i==95||i>=128||nd(i)}function il(i){return i>=48&&i<=55||i>=97&&i<=102||i>=65&&i<=70}var ob={int:!0,integer:!0,bool:!0,boolean:!0,float:!0,double:!0,real:!0,string:!0,array:!0,object:!0,unset:!0,__proto__:null},Ob=new H(i=>{if(i.next==40){i.advance();let e=0;for(;id(i.peek(e));)e++;let t="",n;for(;nd(n=i.peek(e));)t+=String.fromCharCode(n),e++;for(;id(i.peek(e));)e++;i.peek(e)==41&&ob[t.toLowerCase()]&&i.acceptToken(BQ)}else if(i.next==60&&i.peek(1)==60&&i.peek(2)==60){for(let n=0;n<3;n++)i.advance();for(;i.next==32||i.next==9;)i.advance();let e=i.next==39;if(e&&i.advance(),!vn(i.next))return;let t=String.fromCharCode(i.next);for(;i.advance(),!(!vn(i.next)&&!(i.next>=48&&i.next<=55));)t+=String.fromCharCode(i.next);if(e){if(i.next!=39)return;i.advance()}if(i.next!=10&&i.next!=13)return;for(;;){let n=i.next==10||i.next==13;if(i.advance(),i.next<0)return;if(n){for(;i.next==32||i.next==9;)i.advance();let r=!0;for(let s=0;s{i.next<0&&i.acceptToken(KQ)}),ab=new H((i,e)=>{i.next==63&&e.canShift(Ju)&&i.peek(1)==62&&i.acceptToken(Ju)});function hb(i){let e=i.peek(1);if(e==110||e==114||e==116||e==118||e==101||e==102||e==92||e==36||e==34||e==123)return 2;if(e>=48&&e<=55){let t=2,n;for(;t<5&&(n=i.peek(t))>=48&&n<=55;)t++;return t}if(e==120&&il(i.peek(2)))return il(i.peek(3))?4:3;if(e==117&&i.peek(2)==123)for(let t=3;;t++){let n=i.peek(t);if(n==125)return t==2?0:t+1;if(!il(n))break}return 0}var cb=new H((i,e)=>{let t=!1;for(;!(i.next==34||i.next<0||i.next==36&&(vn(i.peek(1))||i.peek(1)==123)||i.next==123&&i.peek(1)==36);t=!0){if(i.next==92){let n=hb(i);if(n){if(t)break;return i.acceptToken(FQ,n)}}else if(!t&&(i.next==91||i.next==45&&i.peek(1)==62&&vn(i.peek(2))||i.next==63&&i.peek(1)==45&&i.peek(2)==62&&vn(i.peek(3)))&&e.canShift(HQ))break;i.advance()}t&&i.acceptToken(NQ)}),fb=ne({"Visibility abstract final static":u.modifier,"for foreach while do if else elseif switch try catch finally return throw break continue default case":u.controlKeyword,"endif endfor endforeach endswitch endwhile declare enddeclare goto match":u.controlKeyword,"and or xor yield unset clone instanceof insteadof":u.operatorKeyword,"function fn class trait implements extends const enum global interface use var":u.definitionKeyword,"include include_once require require_once namespace":u.moduleKeyword,"new from echo print array list as":u.keyword,null:u.null,Boolean:u.bool,VariableName:u.variableName,"NamespaceName/...":u.namespace,"NamedType/...":u.typeName,Name:u.name,"CallExpression/Name":u.function(u.variableName),"LabelStatement/Name":u.labelName,"MemberExpression/Name":u.propertyName,"MemberExpression/VariableName":u.special(u.propertyName),"ScopedExpression/ClassMemberName/Name":u.propertyName,"ScopedExpression/ClassMemberName/VariableName":u.special(u.propertyName),"CallExpression/MemberExpression/Name":u.function(u.propertyName),"CallExpression/ScopedExpression/ClassMemberName/Name":u.function(u.propertyName),"MethodDeclaration/Name":u.function(u.definition(u.variableName)),"FunctionDefinition/Name":u.function(u.definition(u.variableName)),"ClassDeclaration/Name":u.definition(u.className),UpdateOp:u.updateOperator,ArithOp:u.arithmeticOperator,LogicOp:u.logicOperator,BitOp:u.bitwiseOperator,CompareOp:u.compareOperator,ControlOp:u.controlOperator,AssignOp:u.definitionOperator,"$ ConcatOp":u.operator,LineComment:u.lineComment,BlockComment:u.blockComment,Integer:u.integer,Float:u.float,String:u.string,ShellExpression:u.special(u.string),"=> ->":u.punctuation,"( )":u.paren,"#[ [ ]":u.squareBracket,"${ { }":u.brace,"-> ?->":u.derefOperator,", ; :: : \\":u.separator,"PhpOpen PhpClose":u.processingInstruction}),ub={__proto__:null,static:311,STATIC:311,class:333,CLASS:333},rd=me.deserialize({version:14,states:"$GSQ`OWOOQhQaOOP%oO`OOOOO#t'#H_'#H_O%tO#|O'#DtOOO#u'#Dw'#DwQ&SOWO'#DwO&XO$VOOOOQ#u'#Dx'#DxO&lQaO'#D|O(mQdO'#E}O(tQdO'#EQO*kQaO'#EWO,zQ`O'#ETO-PQ`O'#E^O/nQaO'#E^O/uQ`O'#EfO/zQ`O'#EoO*kQaO'#EoO0VQ`O'#HhO0[Q`O'#E{O0[Q`O'#E{OOQS'#Ic'#IcO0aQ`O'#EvOOQS'#IZ'#IZO2oQdO'#IWO6tQeO'#FUO*kQaO'#FeO*kQaO'#FfO*kQaO'#FgO*kQaO'#FhO*kQaO'#FhO*kQaO'#FkOOQO'#Id'#IdO7RQ`O'#FqOOQO'#Hi'#HiO7ZQ`O'#HOO7uQ`O'#FlO8QQ`O'#H]O8]Q`O'#FvO8eQaO'#FwO*kQaO'#GVO*kQaO'#GYO8}OrO'#G]OOQS'#Iq'#IqOOQS'#Ip'#IpOOQS'#IW'#IWO,zQ`O'#GdO,zQ`O'#GfO,zQ`O'#GkOhQaO'#GmO9UQ`O'#GnO9ZQ`O'#GqO9`Q`O'#GtO9eQeO'#GuO9eQeO'#GvO9eQeO'#GwO9oQ`O'#GxO9tQ`O'#GzO9yQaO'#G{OS,5>SOJ[QdO,5;gOOQO-E;f-E;fOL^Q`O,5;gOLcQpO,5;bO0aQ`O'#EyOLkQtO'#E}OOQS'#Ez'#EzOOQS'#Ib'#IbOM`QaO,5:wO*kQaO,5;nOOQS,5;p,5;pO*kQaO,5;pOMgQdO,5UQaO,5=hO!-eQ`O'#F}O!-jQdO'#IlO!&WQdO,5=iOOQ#u,5=j,5=jO!-uQ`O,5=lO!-xQ`O,5=mO!-}Q`O,5=nO!.YQdO,5=qOOQ#u,5=q,5=qO!.eQ`O,5=rO!.eQ`O,5=rO!.mQdO'#IwO!.{Q`O'#HXO!&WQdO,5=rO!/ZQ`O,5=rO!/fQdO'#IYO!&WQdO,5=vOOQ#u-E;_-E;_O!1RQ`O,5=kOOO#u,5:^,5:^O!1^O#|O,5:^OOO#u-E;^-E;^OOOO,5>p,5>pOOQ#y1G0S1G0SO!1fQ`O1G0XO*kQaO1G0XO!2xQ`O1G0pOOQS1G0p1G0pO!4[Q`O1G0pOOQS'#I_'#I_O*kQaO'#I_OOQS1G0q1G0qO!4cQ`O'#IaO!7lQ`O'#E}O!7yQaO'#EuOOQO'#Ia'#IaO!8TQ`O'#I`O!8]Q`O,5;_OOQS'#FQ'#FQOOQS1G1U1G1UO!8bQdO1G1]O!:dQdO1G1]O!wO#(fQaO'#HdO#(vQ`O,5>vOOQS1G0d1G0dO#)OQ`O1G0dO#)TQ`O'#I^O#*mQ`O'#I^O#*uQ`O,5;ROIbQaO,5;ROOQS1G0u1G0uPOQO'#E}'#E}O#+fQdO1G1RO0aQ`O'#HgO#-hQtO,5;cO#.YQaO1G0|OOQS,5;e,5;eO#0iQtO,5;gO#0vQdO1G0cO*kQaO1G0cO#2cQdO1G1YO#4OQdO1G1[OOQO,5<^,5<^O#4`Q`O'#HjO#4nQ`O,5?ROOQO1G1w1G1wO#4vQ`O,5?ZO!&WQdO1G3TO<_Q`O1G3TOOQ#u1G3U1G3UO#4{Q`O1G3YO!1RQ`O1G3VO#5WQ`O1G3VO#5]QpO'#FoO#5kQ`O'#FoO#5{Q`O'#FoO#6WQ`O'#FoO#6`Q`O'#FsO#6eQ`O'#FtOOQO'#If'#IfO#6lQ`O'#IeO#6tQ`O,5tOOQ#u1G3b1G3bOOQ#u1G3V1G3VO!-xQ`O1G3VO!1UQ`O1G3VOOO#u1G/x1G/xO*kQaO7+%sO#MuQdO7+%sOOQS7+&[7+&[O$ bQ`O,5>yO>UQaO,5;`O$ iQ`O,5;aO$#OQaO'#HfO$#YQ`O,5>zOOQS1G0y1G0yO$#bQ`O'#EYO$#gQ`O'#IXO$#oQ`O,5:sOOQS1G0e1G0eO$#tQ`O1G0eO$#yQ`O1G0iO9yQaO1G0iOOQO,5>O,5>OOOQO-E;b-E;bOOQS7+&O7+&OO>UQaO,5;SO$%`QaO'#HeO$%jQ`O,5>xOOQS1G0m1G0mO$%rQ`O1G0mOOQS,5>R,5>ROOQS-E;e-E;eO$%wQdO7+&hO$'yQtO1G1RO$(WQdO7+%}OOQS1G0i1G0iOOQO,5>U,5>UOOQO-E;h-E;hOOQ#u7+(o7+(oO!&WQdO7+(oOOQ#u7+(t7+(tO#KmQ`O7+(tO0aQ`O7+(tOOQ#u7+(q7+(qO!-xQ`O7+(qO!1UQ`O7+(qO!1RQ`O7+(qO$)sQ`O,5UQaO,5],5>]OOQS-E;o-E;oO$.iQdO7+'hO$.yQpO7+'hO$/RQdO'#IiOOQO,5dOOQ#u,5>d,5>dOOQ#u-E;v-E;vO$;lQaO7+(lO$cOOQS-E;u-E;uO!&WQdO7+(nO$=mQdO1G2TOOQS,5>[,5>[OOQS-E;n-E;nOOQ#u7+(r7+(rO$?nQ`O'#GQO$?uQ`O'#GQO$@ZQ`O'#HUOOQO'#Hy'#HyO$@`Q`O,5=oOOQ#u,5=o,5=oO$@gQpO7+(tOOQ#u7+(x7+(xO!&WQdO7+(xO$@rQdO,5>fOOQS-E;x-E;xO$AQQdO1G4}O$A]Q`O,5=tO$AbQ`O,5=tO$AmQ`O'#H{O$BRQ`O,5?dOOQS1G3_1G3_O#KrQ`O7+(xO$BZQdO,5=|OOQS-E;`-E;`O$CvQdO<Q,5>QOOQO-E;d-E;dO$8YQaO,5:tO$FxQaO'#HcO$GVQ`O,5>sOOQS1G0_1G0_OOQS7+&P7+&PO$G_Q`O7+&TO$HtQ`O1G0nO$JZQ`O,5>POOQO,5>P,5>POOQO-E;c-E;cOOQS7+&X7+&XOOQS7+&T7+&TOOQ#u<UQaO1G1uO$KsQ`O1G1uO$LOQ`O1G1yOOQO1G1y1G1yO$LTQ`O1G1uO$L]Q`O1G1uO$MrQ`O1G1zO>UQaO1G1zOOQO,5>V,5>VOOQO-E;i-E;iOOQS<`OOQ#u-E;r-E;rOhQaO<aOOQO-E;s-E;sO!&WQdO<g,5>gOOQO-E;y-E;yO!&WQdO<UQaO,5;TOOQ#uANAzANAzO#KmQ`OANAzOOQ#uANAwANAwO!-xQ`OANAwO%)vQ`O7+'aO>UQaO7+'aOOQO7+'e7+'eO%+]Q`O7+'aO%+hQ`O7+'eO>UQaO7+'fO%+mQ`O7+'fO%-SQ`O'#HlO%-bQ`O,5?SO%-bQ`O,5?SOOQO1G1{1G1{O$+qQpOAN@dOOQSAN@dAN@dO0aQ`OAN@dO%-jQtOANCgO%-xQ`OAN@dO*kQaOAN@nO%.QQdOAN@nO%.bQpOAN@nOOQS,5>X,5>XOOQS-E;k-E;kOOQO1G2U1G2UO!&WQdO1G2UO$/dQpO1G2UO<_Q`O1G2SO!.YQdO1G2WO!&WQdO1G2SOOQO1G2W1G2WOOQO1G2S1G2SO%.jQaO'#GSOOQO1G2X1G2XOOQSAN@oAN@oOOOQ<UQaO<W,5>WO%6wQ`O,5>WOOQO-E;j-E;jO%6|Q`O1G4nOOQSG26OG26OO$+qQpOG26OO0aQ`OG26OO%7UQdOG26YO*kQaOG26YOOQO7+'p7+'pO!&WQdO7+'pO!&WQdO7+'nOOQO7+'r7+'rOOQO7+'n7+'nO%7fQ`OLD+tO%8uQ`O'#E}O%9PQ`O'#IZO!&WQdO'#HrO%:|QaO,5^,5>^OOQP-E;p-E;pOOQO1G2Y1G2YOOQ#uLD,bLD,bOOQTG27RG27RO!&WQdOLD,xO!&WQdO<wO&EPQdO1G0cO#.YQaO1G0cO&F{QdO1G1YO&HwQdO1G1[O#.YQaO1G1|O#.YQaO7+%sO&JsQdO7+%sO&LoQdO7+%}O#.YQaO7+'hO&NkQdO7+'hO'!gQdO<lQdO,5>wO(@nQdO1G0cO'.QQaO1G0cO(BpQdO1G1YO(DrQdO1G1[O'.QQaO1G1|O'.QQaO7+%sO(FtQdO7+%sO(HvQdO7+%}O'.QQaO7+'hO(JxQdO7+'hO(LzQdO<wO*1sQaO'#HdO*2TQ`O,5>vO*2]QdO1G0cO9yQaO1G0cO*4XQdO1G1YO*6TQdO1G1[O9yQaO1G1|O>UQaO'#HwO*8PQ`O,5=[O*8XQaO'#HbO*8cQ`O,5>tO9yQaO7+%sO*8kQdO7+%sO*:gQ`O1G0iO>UQaO1G0iO*;|QdO7+%}O9yQaO7+'hO*=xQdO7+'hO*?tQ`O,5>cO*AZQ`O,5=|O*BpQdO<UQaO'#FeO>UQaO'#FfO>UQaO'#FgO>UQaO'#FhO>UQaO'#FhO>UQaO'#FkO+'XQaO'#FwO>UQaO'#GVO>UQaO'#GYO+'`QaO,5:mO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO+'gQ`O'#I]O$8YQaO'#EaO+)PQaOG26YO$8YQaO'#I]O+*{Q`O'#I[O++TQaO,5:wO>UQaO,5;nO>UQaO,5;pO++[Q`O,5UQaO1G0XO+9hQ`O1G1]O+;TQ`O1G1]O+]Q`O1G1]O+?xQ`O1G1]O+AeQ`O1G1]O+CQQ`O1G1]O+DmQ`O1G1]O+FYQ`O1G1]O+GuQ`O1G1]O+IbQ`O1G1]O+J}Q`O1G1]O+LjQ`O1G1]O+NVQ`O1G1]O, rQ`O1G1]O,#_Q`O1G0cO>UQaO1G0cO,$zQ`O1G1YO,&gQ`O1G1[O,(SQ`O1G1|O>UQaO1G1|O>UQaO7+%sO,([Q`O7+%sO,)wQ`O7+%}O>UQaO7+'hO,+dQ`O7+'hO,+lQ`O7+'hO,-XQpO7+'hO,-aQ`O<UQaO<UQaOAN@nO,0qQ`OAN@nO,2^QpOAN@nO,2fQ`OG26YO>UQaOG26YO,4RQ`OLD+tO,5nQaO,5:}O>UQaO1G0iO,5uQ`O'#I]O$8YQaO'#FeO$8YQaO'#FfO$8YQaO'#FgO$8YQaO'#FhO$8YQaO'#FhO+)PQaO'#FhO$8YQaO'#FkO,6SQaO'#FwO,6ZQaO'#FwO$8YQaO'#GVO+)PQaO'#GVO$8YQaO'#GYO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO,8YQ`O'#FlO>UQaO'#EaO>UQaO'#I]O,8bQaO,5:wO,8iQaO,5:wO$8YQaO,5;nO+)PQaO,5;nO$8YQaO,5;pO,:hQ`O,5wO-IcQ`O1G0cO-KOQ`O1G0cO$8YQaO1G0cO+)PQaO1G0cO-L_Q`O1G1YO-MzQ`O1G1YO. ZQ`O1G1[O$8YQaO1G1|O$8YQaO7+%sO+)PQaO7+%sO.!vQ`O7+%sO.$cQ`O7+%sO.%rQ`O7+%}O.'_Q`O7+%}O$8YQaO7+'hO.(nQ`O7+'hO.*ZQ`O<fQ`O,5>wO.@RQ`O1G1|O!%WQ`O1G1|O0aQ`O1G1|O0aQ`O7+'hO.@ZQ`O7+'hO.@cQpO7+'hO.@kQpO<UO#X&PO~P>UO!o&SO!s&RO#b&RO~OPgOQ|OU^OW}O[8lOo=yOs#hOx8jOy8jO}`O!O]O!Q8pO!R}O!T8oO!U8kO!V8kO!Y8rO!c8iO!s&VO!y[O#U&WO#W_O#bhO#daO#ebO#peO$T8nO$]8mO$^8nO$aqO$z8qO${!OO$}}O%O}O%V|O'g{O~O!x'SP~PAOO!s&[O#b&[O~OT#TOz#RO!S#UO!b#VO!o!{O!v!yO!y!}O#S#QO#W!zO#`!|O#a!|O#s#PO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dO~O!x&nO~PCqO!x'VX!}'VX#O'VX#X'VX!n'VXV'VX!q'VX#u'VX#w'VXw'VX~P&sO!y$hO#S&oO~Oo$mOs$lO~O!o&pO~O!}&sO#S;dO#U;cO!x'OP~P9yOT6iOz6gO!S6jO!b6kO!o!{O!v8sO!y!}O#S#QO#W!zO#`!|O#a!|O#s#PO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}'PX#X'PX~O#O&tO~PGSO!}&wO#X'OX~O#X&yO~O!}'OO!x'QP~P9yO!n'PO~PCqO!m#oa!o#oa#S#oa#p#qX&s#oa!x#oa#O#oaw#oa~OT#oaz#oa!S#oa!b#oa!v#oa!y#oa#W#oa#`#oa#a#oa#s#oa#z#oa#{#oa#|#oa#}#oa$O#oa$Q#oa$R#oa$S#oa$T#oa$U#oa$V#oa$W#oa$z#oa!}#oa#X#oa!n#oaV#oa!q#oa#u#oa#w#oa~PIpO!s'RO~O!x'UO#l'SO~O!x'VX#l'VX#p#qX#S'VX#U'VX#b'VX!o'VX#O'VXw'VX!m'VX&s'VX~O#S'YO~P*kO!m$Xa&s$Xa!x$Xa!n$Xa~PCqO!m$Ya&s$Ya!x$Ya!n$Ya~PCqO!m$Za&s$Za!x$Za!n$Za~PCqO!m$[a&s$[a!x$[a!n$[a~PCqO!o!{O!y!}O#W!zO#`!|O#a!|O#s#PO$z#dOT$[a!S$[a!b$[a!m$[a!v$[a#S$[a#z$[a#{$[a#|$[a#}$[a$O$[a$Q$[a$R$[a$S$[a$T$[a$U$[a$V$[a$W$[a&s$[a!x$[a!n$[a~Oz#RO~PNyO!m$_a&s$_a!x$_a!n$_a~PCqO!y!}O!}$fX#X$fX~O!}'^O#X'ZX~O#X'`O~O!s$kO#S'aO~O]'cO~O!s'eO~O!s'fO~O$l'gO~O!`'mO#S'kO#U'lO#b'jO$drO!x'XP~P0aO!^'sO!oXO!q'rO~O!s'uO!y$hO~O!y$hO#S'wO~O!y$hO#S'yO~O#u'zO!m$sX!}$sX&s$sX~O!}'{O!m'bX&s'bX~O!m#cO&s#cO~O!q(PO#O(OO~O!m$ka&s$ka!x$ka!n$ka~PCqOl(ROw(SO!o(TO!y!}O~O!o!{O!y!}O#W!zO#`!|O#a!|O#s#PO~OT$yaz$ya!S$ya!b$ya!m$ya!v$ya#S$ya#z$ya#{$ya#|$ya#}$ya$O$ya$Q$ya$R$ya$S$ya$T$ya$U$ya$V$ya$W$ya$z$ya&s$ya!x$ya!}$ya#O$ya#X$ya!n$ya!q$yaV$ya#u$ya#w$ya~P!'WO!m$|a&s$|a!x$|a!n$|a~PCqO#W([O#`(YO#a(YO&r(ZOR&gX!o&gX#b&gX#e&gX&q&gX'f&gX~O'f(_O~P8lO!q(`O~PhO!o(cO!q(dO~O!q(`O&s(gO~PhO!a(kO~O!m(lO~P9yOZ(wOn(xO~O!s(zO~OT6iOz6gO!S6jO!b6kO!v8sO!}({O#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m'jX&s'jX~P!'WO#u)PO~O!})QO!m'`X&s'`X~Ol(RO!o(TO~Ow(SO!o)WO!q)ZO~O!m#cO!oXO&s#cO~O!o%pO!s#yO~OV)aO!})_O!m'kX&s'kX~O])cOs)cO!s#gO#peO~O!o%pO!s#gO#p)hO~OT6iOz6gO!S6jO!b6kO!v8sO!})iO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m&|X&s&|X#O&|X~P!'WOl(ROw(SO!o(TO~O!i)oO&t)oO~OT8vOz8tO!S8wO!b8xO!q)pO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#X)rO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WO!n)rO~PCqOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x'TX!}'TX~P!'WOT'VXz'VX!S'VX!b'VX!o'VX!v'VX!y'VX#S'VX#W'VX#`'VX#a'VX#p#qX#s'VX#z'VX#{'VX#|'VX#}'VX$O'VX$Q'VX$R'VX$S'VX$T'VX$U'VX$V'VX$W'VX$z'VX~O!q)tO!x'VX!}'VX~P!5xO!x#iX!}#iX~P>UO!})vO!x'SX~O!x)xO~O$z#dOT#yiz#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi$W#yi&s#yi!x#yi!}#yi#O#yi#X#yi!n#yi!q#yiV#yi#u#yi#w#yi~P!'WOz#RO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi&s#yi!x#yi!n#yi~P!'WOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi&s#yi!x#yi!n#yi~P!'WOT#TOz#RO!b#VO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dO!S#yi!m#yi&s#yi!x#yi!n#yi~P!'WOT#TOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dO!S#yi!b#yi!m#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi#|#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi#|#yi#}#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi~P!'WOz#RO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi~P!'WOz#RO$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi&s#yi!x#yi!n#yi~P!'WOz#RO$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi&s#yi!x#yi!n#yi~P!'WOz#RO$T#`O$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi&s#yi!x#yi!n#yi~P!'WOz#RO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi&s#yi!x#yi!n#yi~P!'WOz#RO$S#_O$T#`O$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi&s#yi!x#yi!n#yi~P!'WOz#RO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi&s#yi!x#yi!n#yi~P!'WO_)yO~P9yO!x)|O~O#S*PO~P9yOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#Ta#X#Ta#O#Ta!m#Ta&s#Ta!x#Ta!n#TaV#Ta!q#Ta~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}'Pa#X'Pa#O'Pa!m'Pa&s'Pa!x'Pa!n'PaV'Pa!q'Pa~P!'WO#S#oO#U#nO!}&WX#X&WX~P9yO!}&wO#X'Oa~O#X*SO~OT6iOz6gO!S6jO!b6kO!v8sO!}*UO#O*TO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!x'QX~P!'WO!}*UO!x'QX~O!x*WO~O!m#oi!o#oi#S#oi#p#qX&s#oi!x#oi#O#oiw#oi~OT#oiz#oi!S#oi!b#oi!v#oi!y#oi#W#oi#`#oi#a#oi#s#oi#z#oi#{#oi#|#oi#}#oi$O#oi$Q#oi$R#oi$S#oi$T#oi$U#oi$V#oi$W#oi$z#oi!}#oi#X#oi!n#oiV#oi!q#oi#u#oi#w#oi~P#*zO#l'SO!x#ka#S#ka#U#ka#b#ka!o#ka#O#kaw#ka!m#ka&s#ka~OPgOQ|OU^OW}O[4OOo5xOs#hOx3zOy3zO}`O!O]O!Q2^O!R}O!T4UO!U3|O!V3|O!Y2`O!c3xO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T4SO$]4QO$^4SO$aqO$z2_O${!OO$}}O%O}O%V|O'g{O~O#l#oa#U#oa#b#oa~PIpOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#Pi!S#Pi!b#Pi!m#Pi&s#Pi!x#Pi!n#Pi~P!'WOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#vi!S#vi!b#vi!m#vi&s#vi!x#vi!n#vi~P!'WO!m#xi&s#xi!x#xi!n#xi~PCqO!s#gO#peO!}&^X#X&^X~O!}'^O#X'Za~O!s'uO~Ow(SO!o)WO!q*fO~O!s*jO~O#S*lO#U*mO#b*kO#l'SO~O#S*lO#U*mO#b*kO$drO~P0aO#u*oO!x$cX!}$cX~O#U*mO#b*kO~O#b*pO~O#b*rO~P0aO!}*sO!x'XX~O!x*uO~O!y*wO~O!^*{O!oXO!q*zO~O!q*}O!o'ci!m'ci&s'ci~O!q+QO#O+PO~O#b$nO!m&eX!}&eX&s&eX~O!}'{O!m'ba&s'ba~OT$kiz$ki!S$ki!b$ki!m$ki!o$ki!v$ki!y$ki#S$ki#W$ki#`$ki#a$ki#s$ki#u#fa#w#fa#z$ki#{$ki#|$ki#}$ki$O$ki$Q$ki$R$ki$S$ki$T$ki$U$ki$V$ki$W$ki$z$ki&s$ki!x$ki!}$ki#O$ki#X$ki!n$ki!q$kiV$ki~OS+^O]+aOm+^Os$aO!^+dO!_+^O!`+^O!n+hO#b$nO$aqO$drO~P0aO!s+lO~O#W+nO#`+mO#a+mO~O!s+pO#b+pO$}+pO%T+oO~O!n+qO~PCqOc%XXd%XXh%XXj%XXf%XXg%XXe%XX~PhOc+uOd+sOP%WiQ%WiS%WiU%WiW%WiX%Wi[%Wi]%Wi^%Wi`%Wia%Wib%Wik%Wim%Wio%Wip%Wiq%Wis%Wit%Wiu%Wiv%Wix%Wiy%Wi|%Wi}%Wi!O%Wi!P%Wi!Q%Wi!R%Wi!T%Wi!U%Wi!V%Wi!W%Wi!X%Wi!Y%Wi!Z%Wi![%Wi!]%Wi!^%Wi!`%Wi!a%Wi!c%Wi!m%Wi!o%Wi!s%Wi!y%Wi#W%Wi#b%Wi#d%Wi#e%Wi#p%Wi$T%Wi$]%Wi$^%Wi$a%Wi$d%Wi$l%Wi$z%Wi${%Wi$}%Wi%O%Wi%V%Wi&p%Wi'g%Wi&t%Wi!n%Wih%Wij%Wif%Wig%WiY%Wi_%Wii%Wie%Wi~Oc+yOd+vOh+xO~OY+zO_+{O!n,OO~OY+zO_+{Oi%^X~Oi,QO~Oj,RO~O!m,TO~P9yO!m,VO~Of,WO~OT6iOV,XOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO~P!'WOg,YO~O!y,ZO~OZ(wOn(xOP%liQ%liS%liU%liW%liX%li[%li]%li^%li`%lia%lib%lik%lim%lio%lip%liq%lis%lit%liu%liv%lix%liy%li|%li}%li!O%li!P%li!Q%li!R%li!T%li!U%li!V%li!W%li!X%li!Y%li!Z%li![%li!]%li!^%li!`%li!a%li!c%li!m%li!o%li!s%li!y%li#W%li#b%li#d%li#e%li#p%li$T%li$]%li$^%li$a%li$d%li$l%li$z%li${%li$}%li%O%li%V%li&p%li'g%li&t%li!n%lic%lid%lih%lij%lif%lig%liY%li_%lii%lie%li~O#u,_O~O!}({O!m%da&s%da~O!x,bO~O!s%dO!m&dX!}&dX&s&dX~O!})QO!m'`a&s'`a~OS+^OY,iOm+^Os$aO!^+dO!_+^O!`+^O$aqO$drO~O!n,lO~P#JwO!o)WO~O!o%pO!s'RO~O!s#gO#peO!m&nX!}&nX&s&nX~O!})_O!m'ka&s'ka~O!s,rO~OV,sO!n%|X!}%|X~O!},uO!n'lX~O!n,wO~O!m&UX!}&UX&s&UX#O&UX~P9yO!})iO!m&|a&s&|a#O&|a~Oz#RO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT!uq!S!uq!b!uq!m!uq!v!uq&s!uq!x!uq!n!uq~P!'WO!n,|O~PCqOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#ia!}#ia~P!'WO!x&YX!}&YX~PAOO!})vO!x'Sa~O#O-QO~O!}-RO!n&{X~O!n-TO~O!x-UO~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#Vi#X#Vi~P!'WO!x&XX!}&XX~P9yO!}*UO!x'Qa~O!x-[O~OT#jqz#jq!S#jq!b#jq!m#jq!v#jq#S#jq#u#jq#w#jq#z#jq#{#jq#|#jq#}#jq$O#jq$Q#jq$R#jq$S#jq$T#jq$U#jq$V#jq$W#jq$z#jq&s#jq!x#jq!}#jq#O#jq#X#jq!n#jq!q#jqV#jq~P!'WO#l#oi#U#oi#b#oi~P#*zOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#Pq!S#Pq!b#Pq!m#Pq&s#Pq!x#Pq!n#Pq~P!'WO#u-dO!x$ca!}$ca~O#U-fO#b-eO~O#b-gO~O#S-hO#U-fO#b-eO#l'SO~O#b-jO#l'SO~O#u-kO!x$ha!}$ha~O!`'mO#S'kO#U'lO#b'jO$drO!x&_X!}&_X~P0aO!}*sO!x'Xa~O!oXO#l'SO~O#S-pO#b-oO!x'[P~O!oXO!q-rO~O!q-uO!o'cq!m'cq&s'cq~O!^-wO!oXO!q-rO~O!q-{O#O-zO~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m$si!}$si&s$si~P!'WO!m$jq&s$jq!x$jq!n$jq~PCqO#O-zO#l'SO~O!}-|Ow']X!o']X!m']X&s']X~O#b$nO#l'SO~OS+^O].ROm+^Os$aO!_+^O!`+^O#b$nO$aqO$drO~P0aOS+^O].ROm+^Os$aO!_+^O!`+^O#b$nO$aqO~P0aOS+^O]+aOm+^Os$aO!^+dO!_+^O!`+^O!n.ZO#b$nO$aqO$drO~P0aO!s.^O~O!s._O#b._O$}._O%T+oO~O$}.`O~O#X.aO~Oc%Xad%Xah%Xaj%Xaf%Xag%Xae%Xa~PhOc.dOd+sOP%WqQ%WqS%WqU%WqW%WqX%Wq[%Wq]%Wq^%Wq`%Wqa%Wqb%Wqk%Wqm%Wqo%Wqp%Wqq%Wqs%Wqt%Wqu%Wqv%Wqx%Wqy%Wq|%Wq}%Wq!O%Wq!P%Wq!Q%Wq!R%Wq!T%Wq!U%Wq!V%Wq!W%Wq!X%Wq!Y%Wq!Z%Wq![%Wq!]%Wq!^%Wq!`%Wq!a%Wq!c%Wq!m%Wq!o%Wq!s%Wq!y%Wq#W%Wq#b%Wq#d%Wq#e%Wq#p%Wq$T%Wq$]%Wq$^%Wq$a%Wq$d%Wq$l%Wq$z%Wq${%Wq$}%Wq%O%Wq%V%Wq&p%Wq'g%Wq&t%Wq!n%Wqh%Wqj%Wqf%Wqg%WqY%Wq_%Wqi%Wqe%Wq~Oc.iOd+vOh.hO~O!q(`O~OP6]OQ|OU^OW}O[:fOo>ROs#hOx:dOy:dO}`O!O]O!Q:kO!R}O!T:jO!U:eO!V:eO!Y:oO!c8gO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T:hO$]:gO$^:hO$aqO$z:mO${!OO$}}O%O}O%V|O'g{O~O!m.lO!q.lO~OY+zO_+{O!n.nO~OY+zO_+{Oi%^a~O!x.rO~P>UO!m.tO~O!m.tO~P9yOQ|OW}O!R}O$}}O%O}O%V|O'g{O~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m&ka!}&ka&s&ka~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m$qi!}$qi&s$qi~P!'WOS+^Om+^Os$aO!_+^O!`+^O$aqO$drO~OY/PO~P$?VOS+^Om+^Os$aO!_+^O!`+^O$aqO~O!s/QO~O!n/SO~P#JwOw(SO!o)WO#l'SO~OV/VO!m&na!}&na&s&na~O!})_O!m'ki&s'ki~O!s/XO~OV/YO!n%|a!}%|a~O]/[Os/[O!s#gO#peO!n&oX!}&oX~O!},uO!n'la~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m&Ua!}&Ua&s&Ua#O&Ua~P!'WOz#RO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT!uy!S!uy!b!uy!m!uy!v!uy&s!uy!x!uy!n!uy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#hi!}#hi~P!'WO_)yO!n&VX!}&VX~P9yO!}-RO!n&{a~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#Vq#X#Vq~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#[i!}#[i~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#O/cO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!x&Xa!}&Xa~P!'WO#u/iO!x$ci!}$ci~O#b/jO~O#U/lO#b/kO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$ci!}$ci~P!'WO#u/mO!x$hi!}$hi~O!}/oO!x'[X~O#b/qO~O!x/rO~O!oXO!q/uO~O#l'SO!o'cy!m'cy&s'cy~O!m$jy&s$jy!x$jy!n$jy~PCqO#O/xO#l'SO~O!s#gO#peOw&aX!o&aX!}&aX!m&aX&s&aX~O!}-|Ow']a!o']a!m']a&s']a~OU$PO]0QO!R$PO!s$OO!v#}O#b$nO#p2XO~P$?uO!m#cO!o0VO&s#cO~O#X0YO~Oh0_O~OT:tOz:pO!S:vO!b:xO!m0`O!q0`O!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO~P!'WOY%]a_%]a!n%]ai%]a~PhO!x0bO~O!x0bO~P>UO!m0dO~OT6iOz6gO!S6jO!b6kO!v8sO!x0fO#O0eO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO~P!'WO!x0fO~O!x0gO#b0hO#l'SO~O!x0iO~O!s0jO~O!m#cO#u0lO&s#cO~O!s0mO~O!})_O!m'kq&s'kq~O!s0nO~OV0oO!n%}X!}%}X~OT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!n!|i!}!|i~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$cq!}$cq~P!'WO#u0vO!x$cq!}$cq~O#b0wO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$hq!}$hq~P!'WO#S0zO#b0yO!x&`X!}&`X~O!}/oO!x'[a~O#l'SO!o'c!R!m'c!R&s'c!R~O!oXO!q1PO~O!m$j!R&s$j!R!x$j!R!n$j!R~PCqO#O1RO#l'SO~OP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!n1^O!s1YO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lOh1_O~OY%[i_%[i!n%[ii%[i~PhOY%]i_%]i!n%]ii%]i~PhO!x1bO~O!x1bO~P>UO!x1eO~O!m#cO#u1iO&s#cO~O$}1jO%V1jO~O!s1kO~OV1lO!n%}a!}%}a~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#]i!}#]i~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$cy!}$cy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$hy!}$hy~P!'WO#b1nO~O!}/oO!x'[i~O!m$j!Z&s$j!Z!x$j!Z!n$j!Z~PCqOT:uOz:qO!S:wO!b:yO!v=nO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dO~P!'WOV1uO{1tO~P!5xOV1uO{1tOT&}Xz&}X!S&}X!b&}X!o&}X!v&}X!y&}X#S&}X#W&}X#`&}X#a&}X#s&}X#u&}X#w&}X#z&}X#{&}X#|&}X#}&}X$O&}X$Q&}X$R&}X$S&}X$T&}X$U&}X$V&}X$W&}X$z&}X~OP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!n1xO!s1YO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lOY%[q_%[q!n%[qi%[q~PhO!x1zO~O!x%gi~PCqOe1{O~O$}1|O%V1|O~O!s2OO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$c!R!}$c!R~P!'WO!m$j!c&s$j!c!x$j!c!n$j!c~PCqO!s2QO~O!`2SO!s2RO~O!s2VO!m$xi&s$xi~O!s'WO~O!s*]O~OT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$ka#u$ka#w$ka&s$ka!x$ka!n$ka!q$ka#X$ka!}$ka~P!'WO#S2]O~P*kO$l$tO~P#.YOT6iOz6gO!S6jO!b6kO!v8sO#O2[O#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m'PX&s'PX!x'PX!n'PX~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#O3uO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}'PX#X'PX#u'PX#w'PX!m'PX&s'PX!x'PX!n'PXV'PX!q'PX~P!'WO#S3dO~P#.YOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$Xa#u$Xa#w$Xa&s$Xa!x$Xa!n$Xa!q$Xa#X$Xa!}$Xa~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$Ya#u$Ya#w$Ya&s$Ya!x$Ya!n$Ya!q$Ya#X$Ya!}$Ya~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$Za#u$Za#w$Za&s$Za!x$Za!n$Za!q$Za#X$Za!}$Za~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$[a#u$[a#w$[a&s$[a!x$[a!n$[a!q$[a#X$[a!}$[a~P!'WOz2aO#u$[a#w$[a!q$[a#X$[a!}$[a~PNyOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$_a#u$_a#w$_a&s$_a!x$_a!n$_a!q$_a#X$_a!}$_a~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$|a#u$|a#w$|a&s$|a!x$|a!n$|a!q$|a#X$|a!}$|a~P!'WOz2aO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOT2cOz2aO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!S#yi!m#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOT2cOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!S#yi!b#yi!m#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi#|#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$T2nO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$S2mO$T2nO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m#Ta#u#Ta#w#Ta&s#Ta!x#Ta!n#Ta!q#Ta#X#Ta!}#Ta~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m'Pa#u'Pa#w'Pa&s'Pa!x'Pa!n'Pa!q'Pa#X'Pa!}'Pa~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#Pi!S#Pi!b#Pi!m#Pi#u#Pi#w#Pi&s#Pi!x#Pi!n#Pi!q#Pi#X#Pi!}#Pi~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#vi!S#vi!b#vi!m#vi#u#vi#w#vi&s#vi!x#vi!n#vi!q#vi#X#vi!}#vi~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m#xi#u#xi#w#xi&s#xi!x#xi!n#xi!q#xi#X#xi!}#xi~P!'WOz2aO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT!uq!S!uq!b!uq!m!uq!v!uq#u!uq#w!uq&s!uq!x!uq!n!uq!q!uq#X!uq!}!uq~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#Pq!S#Pq!b#Pq!m#Pq#u#Pq#w#Pq&s#Pq!x#Pq!n#Pq!q#Pq#X#Pq!}#Pq~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$jq#u$jq#w$jq&s$jq!x$jq!n$jq!q$jq#X$jq!}$jq~P!'WOz2aO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT!uy!S!uy!b!uy!m!uy!v!uy#u!uy#w!uy&s!uy!x!uy!n!uy!q!uy#X!uy!}!uy~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$jy#u$jy#w$jy&s$jy!x$jy!n$jy!q$jy#X$jy!}$jy~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$j!R#u$j!R#w$j!R&s$j!R!x$j!R!n$j!R!q$j!R#X$j!R!}$j!R~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$j!Z#u$j!Z#w$j!Z&s$j!Z!x$j!Z!n$j!Z!q$j!Z#X$j!Z!}$j!Z~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$j!c#u$j!c#w$j!c&s$j!c!x$j!c!n$j!c!q$j!c#X$j!c!}$j!c~P!'WOP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S3vO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OO~P$;lOP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OO~P$;lO#u2uO#w2vO!q&zX#X&zX!}&zX~P0rOP6]OU^O[4POo8^Or2wOs#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S2tO#U2sO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OOT#xXz#xX!S#xX!b#xX!m#xX!o#xX!v#xX#`#xX#a#xX#s#xX#u#xX#w#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX&s#xX!x#xX!n#xX!q#xX#X#xX!}#xX~P$;lOP6]OU^O[4POo8^Or4xOs#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S4uO#U4tO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OOT#xXz#xX!S#xX!b#xX!o#xX!v#xX!}#xX#O#xX#X#xX#`#xX#a#xX#s#xX#u#xX#w#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX!m#xX&s#xX!x#xX!n#xXV#xX!q#xX~P$;lO!q3PO~P>UO!q5}O#O3gO~OT8vOz8tO!S8wO!b8xO!q3hO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WO!q6OO#O3kO~O!q6PO#O3oO~O#O3oO#l'SO~O#O3pO#l'SO~O#O3sO#l'SO~OP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$l$tO$z4bO${!OO~P$;lOP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S5eO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OO~P$;lOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$Xa#O$Xa#X$Xa#u$Xa#w$Xa!m$Xa&s$Xa!x$Xa!n$XaV$Xa!q$Xa~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$Ya#O$Ya#X$Ya#u$Ya#w$Ya!m$Ya&s$Ya!x$Ya!n$YaV$Ya!q$Ya~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$Za#O$Za#X$Za#u$Za#w$Za!m$Za&s$Za!x$Za!n$ZaV$Za!q$Za~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$[a#O$[a#X$[a#u$[a#w$[a!m$[a&s$[a!x$[a!n$[aV$[a!q$[a~P!'WOz4dO!}$[a#O$[a#X$[a#u$[a#w$[aV$[a!q$[a~PNyOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$_a#O$_a#X$_a#u$_a#w$_a!m$_a&s$_a!x$_a!n$_aV$_a!q$_a~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$|a#O$|a#X$|a#u$|a#w$|a!m$|a&s$|a!x$|a!n$|aV$|a!q$|a~P!'WOz4dO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT4fOz4dO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!S#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT4fOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!S#yi!b#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$T4qO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$S4pO$T4qO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}#Ta#O#Ta#X#Ta#u#Ta#w#Ta!m#Ta&s#Ta!x#Ta!n#TaV#Ta!q#Ta~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}'Pa#O'Pa#X'Pa#u'Pa#w'Pa!m'Pa&s'Pa!x'Pa!n'PaV'Pa!q'Pa~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#Pi!S#Pi!b#Pi!}#Pi#O#Pi#X#Pi#u#Pi#w#Pi!m#Pi&s#Pi!x#Pi!n#PiV#Pi!q#Pi~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#vi!S#vi!b#vi!}#vi#O#vi#X#vi#u#vi#w#vi!m#vi&s#vi!x#vi!n#viV#vi!q#vi~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}#xi#O#xi#X#xi#u#xi#w#xi!m#xi&s#xi!x#xi!n#xiV#xi!q#xi~P!'WOz4dO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT!uq!S!uq!b!uq!v!uq!}!uq#O!uq#X!uq#u!uq#w!uq!m!uq&s!uq!x!uq!n!uqV!uq!q!uq~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#Pq!S#Pq!b#Pq!}#Pq#O#Pq#X#Pq#u#Pq#w#Pq!m#Pq&s#Pq!x#Pq!n#PqV#Pq!q#Pq~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$jq#O$jq#X$jq#u$jq#w$jq!m$jq&s$jq!x$jq!n$jqV$jq!q$jq~P!'WOz4dO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT!uy!S!uy!b!uy!v!uy!}!uy#O!uy#X!uy#u!uy#w!uy!m!uy&s!uy!x!uy!n!uyV!uy!q!uy~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$jy#O$jy#X$jy#u$jy#w$jy!m$jy&s$jy!x$jy!n$jyV$jy!q$jy~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$j!R#O$j!R#X$j!R#u$j!R#w$j!R!m$j!R&s$j!R!x$j!R!n$j!RV$j!R!q$j!R~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$j!Z#O$j!Z#X$j!Z#u$j!Z#w$j!Z!m$j!Z&s$j!Z!x$j!Z!n$j!ZV$j!Z!q$j!Z~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$j!c#O$j!c#X$j!c#u$j!c#w$j!c!m$j!c&s$j!c!x$j!c!n$j!cV$j!c!q$j!c~P!'WO#S5wO~P#.YO!y$hO#S5{O~O!x4ZO#l'SO~O!y$hO#S5|O~OT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$ka#O$ka#X$ka#u$ka#w$ka!m$ka&s$ka!x$ka!n$kaV$ka!q$ka~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#O5vO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!m'PX#u'PX#w'PX&s'PX!x'PX!n'PX!q'PX#X'PX!}'PX~P!'WO#u4vO#w4wO!}&zX#O&zX#X&zXV&zX!q&zX~P0rO!q5QO~P>UO!q8bO#O5hO~OT8vOz8tO!S8wO!b8xO!q5iO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WO!q8cO#O5lO~O!q8dO#O5pO~O#O5pO#l'SO~O#O5qO#l'SO~O#O5tO#l'SO~O$l$tO~P9yOo5zOs$lO~O#S7oO~P9yOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$Xa#O$Xa#X$Xa!m$Xa&s$Xa!x$Xa!n$XaV$Xa!q$Xa~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$Ya#O$Ya#X$Ya!m$Ya&s$Ya!x$Ya!n$YaV$Ya!q$Ya~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$Za#O$Za#X$Za!m$Za&s$Za!x$Za!n$ZaV$Za!q$Za~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$[a#O$[a#X$[a!m$[a&s$[a!x$[a!n$[aV$[a!q$[a~P!'WOz6gO!}$[a#O$[a#X$[aV$[a!q$[a~PNyOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$_a#O$_a#X$_a!m$_a&s$_a!x$_a!n$_aV$_a!q$_a~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$ka#O$ka#X$ka!m$ka&s$ka!x$ka!n$kaV$ka!q$ka~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$|a#O$|a#X$|a!m$|a&s$|a!x$|a!n$|aV$|a!q$|a~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO!}7sO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x'jX~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO!}7uO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x&|X~P!'WOz6gO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT6iOz6gO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!S#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT6iOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!S#yi!b#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi#|#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi#|#yi#}#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$T6tO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$S6sO$T6tO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WO#S7zO~P>UO!m#Ta&s#Ta!x#Ta!n#Ta~PCqO!m'Pa&s'Pa!x'Pa!n'Pa~PCqO#S;dO#U;cO!x&WX!}&WX~P9yO!}7lO!x'Oa~Oz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#Pi!S#Pi!b#Pi!}#Pi#O#Pi#X#Pi!m#Pi&s#Pi!x#Pi!n#PiV#Pi!q#Pi~P!'WOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#vi!S#vi!b#vi!}#vi#O#vi#X#vi!m#vi&s#vi!x#vi!n#viV#vi!q#vi~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#xi#O#xi#X#xi!m#xi&s#xi!x#xi!n#xiV#xi!q#xi~P!'WO!}7sO!x%da~O!x&UX!}&UX~P>UO!}7uO!x&|a~Oz6gO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT!uq!S!uq!b!uq!v!uq!}!uq#O!uq#X!uq!m!uq&s!uq!x!uq!n!uqV!uq!q!uq~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#Vi!}#Vi~P!'WOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#Pq!S#Pq!b#Pq!}#Pq#O#Pq#X#Pq!m#Pq&s#Pq!x#Pq!n#PqV#Pq!q#Pq~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$jq#O$jq#X$jq!m$jq&s$jq!x$jq!n$jqV$jq!q$jq~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x&ka!}&ka~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x&Ua!}&Ua~P!'WOz6gO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT!uy!S!uy!b!uy!v!uy!}!uy#O!uy#X!uy!m!uy&s!uy!x!uy!n!uyV!uy!q!uy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#Vq!}#Vq~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$jy#O$jy#X$jy!m$jy&s$jy!x$jy!n$jyV$jy!q$jy~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$j!R#O$j!R#X$j!R!m$j!R&s$j!R!x$j!R!n$j!RV$j!R!q$j!R~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$j!Z#O$j!Z#X$j!Z!m$j!Z&s$j!Z!x$j!Z!n$j!ZV$j!Z!q$j!Z~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$j!c#O$j!c#X$j!c!m$j!c&s$j!c!x$j!c!n$j!cV$j!c!q$j!c~P!'WO#S8[O~P9yO#O8ZO!m'PX&s'PX!x'PX!n'PXV'PX!q'PX~PGSO!y$hO#S8`O~O!y$hO#S8aO~O#u6zO#w6{O!}&zX#O&zX#X&zXV&zX!q&zX~P0rOr6|O#S#oO#U#nO!}#xX#O#xX#X#xXV#xX!q#xX~P2yOr;iO#S9XO#U9VOT#xXz#xX!S#xX!b#xX!m#xX!o#xX!q#xX!v#xX#`#xX#a#xX#s#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX!n#xX!}#xX~P9yOr9WO#S9WO#U9WOT#xXz#xX!S#xX!b#xX!o#xX!v#xX#`#xX#a#xX#s#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX~P9yOr9]O#S;dO#U;cOT#xXz#xX!S#xX!b#xX!o#xX!q#xX!v#xX#`#xX#a#xX#s#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX#X#xX!x#xX!}#xX~P9yO$l$tO~P>UO!q7XO~P>UOT6iOz6gO!S6jO!b6kO!v8sO#O7iO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!x'PX!}'PX~P!'WOP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lO!}7lO!x'OX~O#S9yO~P>UOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$Xa#X$Xa!x$Xa!}$Xa~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$Ya#X$Ya!x$Ya!}$Ya~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$Za#X$Za!x$Za!}$Za~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$[a#X$[a!x$[a!}$[a~P!'WOz8tO$z#dOT$[a!S$[a!b$[a!q$[a!v$[a#S$[a#z$[a#{$[a#|$[a#}$[a$O$[a$Q$[a$R$[a$S$[a$T$[a$U$[a$V$[a$W$[a#X$[a!x$[a!}$[a~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$_a#X$_a!x$_a!}$_a~P!'WO!q=dO#O7rO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$ka#X$ka!x$ka!}$ka~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$|a#X$|a!x$|a!}$|a~P!'WOT8vOz8tO!S8wO!b8xO!q7wO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WOz8tO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#X#yi!x#yi!}#yi~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi#X#yi!x#yi!}#yi~P!'WOT8vOz8tO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!S#yi!q#yi#X#yi!x#yi!}#yi~P!'WOT8vOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!S#yi!b#yi!q#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#|#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#|#yi#}#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#|#yi#}#yi$O#yi#X#yi!x#yi!}#yi~P!'WOz8tO$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi#X#yi!x#yi!}#yi~P!'WOz8tO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi#X#yi!x#yi!}#yi~P!'WOz8tO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi#X#yi!x#yi!}#yi~P!'WOz8tO$T9RO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi#X#yi!x#yi!}#yi~P!'WOz8tO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi#X#yi!x#yi!}#yi~P!'WOz8tO$S9QO$T9RO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi#X#yi!x#yi!}#yi~P!'WOz8tO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi#X#yi!x#yi!}#yi~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#Pi!S#Pi!b#Pi!q#Pi#X#Pi!x#Pi!}#Pi~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#vi!S#vi!b#vi!q#vi#X#vi!x#vi!}#vi~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q#xi#X#xi!x#xi!}#xi~P!'WO!q=eO#O7|O~Oz8tO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT!uq!S!uq!b!uq!q!uq!v!uq#X!uq!x!uq!}!uq~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#Pq!S#Pq!b#Pq!q#Pq#X#Pq!x#Pq!}#Pq~P!'WO!q=iO#O8TO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$jq#X$jq!x$jq!}$jq~P!'WO#O8TO#l'SO~Oz8tO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT!uy!S!uy!b!uy!q!uy!v!uy#X!uy!x!uy!}!uy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$jy#X$jy!x$jy!}$jy~P!'WO#O8UO#l'SO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$j!R#X$j!R!x$j!R!}$j!R~P!'WO#O8XO#l'SO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$j!Z#X$j!Z!x$j!Z!}$j!Z~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$j!c#X$j!c!x$j!c!}$j!c~P!'WO#S:bO~P>UO#O:aO!q'PX!x'PX~PGSO$l$tO~P$8YOP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$l$tO$z:nO${!OO~P$;lOo8_Os$lO~O#SSOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#SSOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#S=UO#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lOT6iOz6gO!S6jO!b6kO!v8sO#O=SO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#O=RO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m'PX!q'PX!n'PX!}'PX~P!'WOT&zXz&zX!S&zX!b&zX!o&zX!q&zX!v&zX!y&zX#S&zX#W&zX#`&zX#a&zX#s&zX#z&zX#{&zX#|&zX#}&zX$O&zX$Q&zX$R&zX$S&zX$T&zX$U&zX$V&zX$W&zX$z&zX!}&zX~O#u9ZO#w9[O#X&zX!x&zX~P.8oO!y$hO#S=^O~O!q9hO~P>UO!y$hO#S=cO~O!q>OO#O9}O~OT8vOz8tO!S8wO!b8xO!q:OO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m#Ta!q#Ta!n#Ta!}#Ta~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m'Pa!q'Pa!n'Pa!}'Pa~P!'WO!q>PO#O:RO~O!q>QO#O:YO~O#O:YO#l'SO~O#O:ZO#l'SO~O#O:_O#l'SO~O#u;eO#w;gO!m&zX!n&zX~P.8oO#u;fO#w;hOT&zXz&zX!S&zX!b&zX!o&zX!v&zX!y&zX#S&zX#W&zX#`&zX#a&zX#s&zX#z&zX#{&zX#|&zX#}&zX$O&zX$Q&zX$R&zX$S&zX$T&zX$U&zX$V&zX$W&zX$z&zX~O!q;tO~P>UO!q;uO~P>UO!q>XO#OYO#O9WO~OT8vOz8tO!S8wO!b8xO!qZO#O[O#O<{O~O#O<{O#l'SO~O#O9WO#l'SO~O#O<|O#l'SO~O#O=PO#l'SO~O!y$hO#S=|O~Oo=[Os$lO~O!y$hO#S=}O~O!y$hO#S>UO~O!y$hO#S>VO~O!y$hO#S>WO~Oo={Os$lO~Oo>TOs$lO~Oo>SOs$lO~O%O$U$}$d!d$V#b%V#e'g!s#d~",goto:"%&y'mPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP'nP'uPP'{(OPPP(hP(OP(O*ZP*ZPP2W:j:mPP*Z:sBpPBsPBsPP:sCSCVCZ:s:sPPPC^PP:sK^!$S!$S:s!$WP!$W!$W!%UP!.]!7pP!?oP*ZP*Z*ZPPPPP!?rPPPPPPP*Z*Z*Z*ZPP*Z*ZP!E]!GRP!GV!Gy!GR!GR!HP*Z*ZP!HY!Hl!Ib!J`!Jd!J`!Jo!J}!J}!KV!KY!KY*ZPP*ZPP!K^#%[#%[#%`P#%fP(O#%j(O#&S#&V#&V#&](O#&`(O(O#&f#&i(O#&r#&u(O(O(O(O(O#&x(O(O(O(O(O(O(O(O(O#&{!KR(O(O#'_#'o#'r(O(OP#'u#'|#(S#(o#(y#)P#)Z#)b#)h#*d#4X#5T#5Z#5a#5k#5q#5w#6]#6c#6i#6o#6u#6{#7R#7]#7g#7m#7s#7}PPPPPPPP#8T#8X#8}#NO#NR#N]$(f$(r$)X$)_$)b$)e$)k$,X$5v$>_$>b$>h$>k$>n$>w$>{$?X$?k$Bk$CO$C{$K{PP%%y%%}%&Z%&p%&vQ!nQT!qV!rQUOR%x!mRVO}!hPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1a|!hPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1aQ%^!ZQ%g!aQ%l!eQ'd$dQ'q$iQ)[%kQ*y'tQ,](xU-n*v*x+OQ.W+cQ.{,[S/t-s-tQ0T.SS0}/s/wQ1V0RQ1o1OR2P1p0u!OPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uO>P>Q>X>Y>Z>[3ZfPVX[_bgjklmnoprxyz!S!W!X!Y!]!e!f!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t#}$R$S$U$h$y$}%P%R%S%T%U%c%p%r%}&S&W&p&s&t&w'O'S'U'Y'^'i'm'r'z(O(P(R(S(T(`(l({)P)Z)_)c)i)p)t)v*P*T*U*f*o*s*z*}+P+Q+]+`+d+g+r+u+z,T,V,X,Z,u-Q-R-d-k-r-u-z-{-|.Q.b.d.l.t/[/c/i/m/u/x0V0`0a0d0e0i0v1P1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w5}6O6P6T6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8b8c8d8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uO>P>Q>X>Y>Z>[3scPVX[_bdegjklmnoprxyz!S!W!X!Y!]!e!f!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t#{#}$R$S$U$h$y$}%P%R%S%T%U%c%m%n%p%r%}&S&W&p&s&t&w'O'S'U'Y'^'i'm'r'z(O(P(R(S(T(`(l({)P)Z)^)_)c)g)h)i)p)t)v*P*T*U*f*o*s*z*}+P+Q+]+`+d+g+r+u+z,T,V,X,Z,u,x-Q-R-d-k-r-u-z-{-|.Q.b.d.l.t/[/c/i/m/u/x0V0`0a0d0e0i0v1P1R1]1a2W2X2Y2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w5}6O6P6T6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8b8c8d8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uO>P>Q>X>Y>Z>[0phPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0`0a0d0e0i0v1R1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uRS=p>S>VS=s>T>UR=t>WT'n$h*s!csPVXt!S!j!r!s!w$h$}%P%S%U'i(T(`)W*s+]+g+r+u,g,k.b.d.l0`0a0i1aQ$^rR*`'^Q*x'sQ-t*{R/w-wQ(W$tQ)U%hQ)n%vQ*i'fQ+k(XR-c*jQ(V$tQ)Y%jQ)m%vQ*e'eS*h'f)nS+j(W(XS-b*i*jQ.]+kQ/T,mQ/e-`R/g-cQ(U$tQ)T%hQ)V%iQ)l%vU*g'f)m)nU+i(V(W(XQ,f)UU-a*h*i*jS.[+j+kS/f-b-cQ0X.]R0t/gT+e(T+g[%e!_$b'c+a.R0QR,d)Qb$ov(T+[+]+`+g.P.Q0PR+T'{S+e(T+gT,j)W,kR0W.XT1[0V1]0w|PVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X,_-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uO>P>Q>X>Y>Z>[R2Y2X|tPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1aW$`t'i+],gS'i$h*sS+](T+gT,g)W,kQ'_$^R*a'_Q*t'oR-m*tQ/p-oS0{/p0|R0|/qQ-}+XR/|-}Q+g(TR.Y+gS+`(T+gS,h)W,kQ.Q+]W.T+`,h.Q/OR/O,gQ)R%eR,e)RQ'|$oR+U'|Q1]0VR1w1]Q${{R(^${Q+t(aR.c+tQ+w(bR.g+wQ+}(cQ,P(dT.m+},PQ(|%`S,a(|7tR7t7VQ(y%^R,^(yQ,k)WR/R,kQ)`%oS,q)`/WR/W,rQ,v)dR/^,vT!uV!rj!iPVX!j!r!s!w(`+r.l0`0a1aQ%Q!SQ(a$}W(h%P%S%U0iQ.e+uQ0Z.bR0[.d|ZPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1aQ#f[U#m_#s&wQ#wbQ$VkQ$WlQ$XmQ$YnQ$ZoQ$[pQ$sx^$uy2_4b6e8q:m:nQ$vzQ%W!WQ%Y!XQ%[!YW%`!]%R(l,VU%s!g&p-RQ%|!yQ&O!zQ&Q!{S&U!})v^&^#R2a4d6g8t:p:qQ&_#SQ&`#TQ&a#UQ&b#VQ&c#WQ&d#XQ&e#YQ&f#ZQ&g#[Q&h#]Q&i#^Q&j#_Q&k#`Q&l#aQ&m#bQ&u#nQ&v#oS&{#t'OQ'X$RQ'Z$SQ'[$UQ(]$yQ(p%TQ)q%}Q)s&SQ)u&WQ*O&tS*['U4ZQ*^'Y^*_2[3u5v8Z:a=R=SQ+S'zQ+V(OQ,`({Q,c)PQ,y)iQ,{)pQ,})tQ-V*PQ-W*TQ-X*U^-]2]3v5w8[:b=T=UQ-i*oQ-x+PQ.k+zQ.w,XQ/`-QQ/h-dQ/n-kQ/y-zQ0r/cQ0u/iQ0x/mQ1Q/xU1X0V1]9WQ1d0eQ1m0vQ1q1RQ2Z2^Q2qjQ2r3yQ2x3zQ2y3|Q2z4OQ2{4QQ2|4SQ2}4UQ3O2`Q3Q2bQ3R2cQ3S2dQ3T2eQ3U2fQ3V2gQ3W2hQ3X2iQ3Y2jQ3Z2kQ3[2lQ3]2mQ3^2nQ3_2oQ3`2pQ3a2sQ3b2tQ3c2uQ3e2vQ3f2wQ3i3PQ3j3dQ3l3gQ3m3hQ3n3kQ3q3oQ3r3pQ3t3sQ4Y4WQ4y3{Q4z3}Q4{4PQ4|4RQ4}4TQ5O4VQ5P4cQ5R4eQ5S4fQ5T4gQ5U4hQ5V4iQ5W4jQ5X4kQ5Y4lQ5Z4mQ5[4nQ5]4oQ5^4pQ5_4qQ5`4rQ5a4sQ5b4tQ5c4uQ5d4vQ5f4wQ5g4xQ5j5QQ5k5eQ5m5hQ5n5iQ5o5lQ5r5pQ5s5qQ5u5tQ6Q4aQ6R3xQ6V6TQ6}6^Q7O6_Q7P6`Q7Q6aQ7R6bQ7S6cQ7T6dQ7U6fU7V,T.t0dQ7W%cQ7Y6hQ7Z6iQ7[6jQ7]6kQ7^6lQ7_6mQ7`6nQ7a6oQ7b6pQ7c6qQ7d6rQ7e6sQ7f6tQ7g6uQ7h6vQ7j6xQ7k6yQ7n6zQ7p6{Q7q6|Q7x7XQ7y7iQ7{7oQ7}7rQ8O7sQ8P7uQ8Q7wQ8R7zQ8S7|Q8V8TQ8W8UQ8Y8XQ8]8fU9U#k&s7lQ9^8jQ9_8kQ9`8lQ9a8mQ9b8nQ9c8oQ9e8pQ9f8rQ9g8sQ9i8uQ9j8vQ9k8wQ9l8xQ9m8yQ9n8zQ9o8{Q9p8|Q9q8}Q9r9OQ9s9PQ9t9QQ9u9RQ9v9SQ9w9TQ9x9ZQ9z9[Q9{9]Q:P9hQ:Q9yQ:T9}Q:V:OQ:W:RQ:[:YQ:^:ZQ:`:_Q:c8iQ;j:dQ;k:eQ;l:fQ;m:gQ;n:hQ;o:iQ;p:jQ;q:kQ;r:lQ;s:oQ;v:rQ;w:sQ;x:tQ;y:uQ;z:vQ;{:wQ;|:xQ;}:yQOQ=h>PQ=j>QQ=u>XQ=v>YQ=w>ZR=x>[0t!OPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uO>P>Q>X>Y>Z>[S$]r'^Q%k!eS%o!f%rQ)b%pU+X(R(S+dQ,p)_Q,t)cQ/Z,uQ/{-|R0p/[|vPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1a#U#i[bklmnopxyz!W!X!Y!{#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b$R$S$U$y%}&S'Y(O)p+P-z/x0e1R2[2]6x6yd+^(T)W+]+`+g,g,h,k.Q/O!t6w'U2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3z3|4O4Q4S4U5v5w!x;b3u3v3x3y3{3}4P4R4T4V4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t$O=z_j!]!g#k#n#o#s#t%R%T&p&s&t&w'O'z(l({)P)i*P*U,V,X-R6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6z6{6|7X7l7o7r7w7|8T8U8X8Z8[8f8g8h8i#|>]!y!z!}%c&W)t)v*T*o,T-d-k.t/c/i/m0d0v4W6T7i7s7u7z8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9Z9[9]9h9y9}:O:R:Y:Z:_:a:b;c;d=Z=m=n!v>^+z-Q9V9X:d:e:f:g:h:j:k:m:o:p:r:t:v:x:z:|;O;Q;S;U;W;Y;[;^;`;e;g;i;t_0V1]9W:i:l:n:q:s:u:w:y:{:};P;R;T;V;X;Z;];_;a;f;h;u AssignmentExpression ArrayExpression ValueList & VariadicUnpacking ... Pair [ ] ListExpression ValueList Pair Pair SubscriptExpression MemberExpression -> ?-> VariableName DynamicVariable $ ${ CallExpression ArgList NamedArgument SpreadArgument CastExpression UnionType LogicOp OptionalType NamedType QualifiedName \\ NamespaceName ScopedExpression :: ClassMemberName AssignOp UpdateExpression UpdateOp YieldExpression BinaryExpression LogicOp LogicOp LogicOp BitOp BitOp BitOp CompareOp CompareOp BitOp ArithOp ConcatOp ArithOp ArithOp IncludeExpression RequireExpression CloneExpression UnaryExpression ControlOp LogicOp PrintIntrinsic FunctionExpression static ParamList Parameter #[ Attributes Attribute VariadicParameter PropertyParameter UseList ArrowFunction NewExpression class BaseClause ClassInterfaceClause DeclarationList ConstDeclaration VariableDeclarator PropertyDeclaration VariableDeclarator MethodDeclaration UseDeclaration UseList UseInsteadOfClause UseAsClause UpdateExpression ArithOp ShellExpression ThrowExpression Integer Float String MemberExpression SubscriptExpression UnaryExpression ArithOp Interpolation String IfStatement ColonBlock SwitchStatement Block CaseStatement DefaultStatement ColonBlock WhileStatement EmptyStatement DoStatement ForStatement ForSpec SequenceExpression ForeachStatement ForSpec Pair GotoStatement ContinueStatement BreakStatement ReturnStatement TryStatement CatchDeclarator DeclareStatement EchoStatement UnsetStatement ConstDeclaration FunctionDefinition ClassDeclaration InterfaceDeclaration TraitDeclaration EnumDeclaration EnumBody EnumCase NamespaceDefinition NamespaceUseDeclaration UseGroup UseClause UseClause GlobalDeclaration FunctionStaticDeclaration Program",maxTerm:304,nodeProps:[["group",-36,2,8,49,81,83,85,88,93,94,102,106,107,110,111,114,118,123,126,130,132,133,147,148,149,150,153,154,164,165,179,181,182,183,184,185,191,"Expression",-28,74,78,80,82,192,194,199,201,202,205,208,209,210,211,212,214,215,216,217,218,219,220,221,222,225,226,230,231,"Statement",-3,119,121,122,"Type"],["openedBy",69,"phpOpen",76,"{",86,"(",101,"#["],["closedBy",71,"phpClose",77,"}",87,")",158,"]"]],propSources:[fb],skippedNodes:[0],repeatNodeCount:29,tokenData:"!F|_R!]OX$zXY&^YZ'sZ]$z]^&^^p$zpq&^qr)Rrs+Pst+otu2buv5evw6rwx8Vxy>]yz>yz{?g{|@}|}Bb}!OCO!O!PDh!P!QKT!Q!R!!o!R![!$q![!]!,P!]!^!-a!^!_!-}!_!`!1S!`!a!2d!a!b!3t!b!c!7^!c!d!7z!d!e!9W!e!}!7z!}#O!;^#O#P!;z#P#Q!V<%lO8VR9WV&wP%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X<%lO9mQ9rV%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X<%lO9mQ:^O%VQQ:aRO;'S9m;'S;=`:j;=`O9mQ:oW%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X;=`<%l9m<%lO9mQ;[P;=`<%l9mR;fV&wP%VQOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRV<%l~8V~O8V~~%fR=OW&wPOY8VYZ9PZ!^8V!^!_;{!_;'S8V;'S;=`=h;=`<%l9m<%lO8VR=mW%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X;=`<%l8V<%lO9mR>YP;=`<%l8VR>dV!yQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV?QV!xU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR?nY&wP$VQOY$zYZ%fZz$zz{@^{!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR@eW$WQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zRAUY$TQ&wPOY$zYZ%fZ{$z{|At|!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zRA{V$zQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRBiV!}Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$z_CXZ$TQ%TW&wPOY$zYZ%fZ}$z}!OAt!O!^$z!^!_%k!_!`6U!`!aCz!a;'S$z;'S;=`&W<%lO$zVDRV#`U&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zVDo[&wP$UQOY$zYZ%fZ!O$z!O!PEe!P!Q$z!Q![Fs![!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zVEjX&wPOY$zYZ%fZ!O$z!O!PFV!P!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zVF^V#UU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRFz_&wP%OQOY$zYZ%fZ!Q$z!Q![Fs![!^$z!^!_%k!_!g$z!g!hGy!h#R$z#R#SJc#S#X$z#X#YGy#Y;'S$z;'S;=`&W<%lO$zRHO]&wPOY$zYZ%fZ{$z{|Hw|}$z}!OHw!O!Q$z!Q![Ii![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRH|X&wPOY$zYZ%fZ!Q$z!Q![Ii![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRIpZ&wP%OQOY$zYZ%fZ!Q$z!Q![Ii![!^$z!^!_%k!_#R$z#R#SHw#S;'S$z;'S;=`&W<%lO$zRJhX&wPOY$zYZ%fZ!Q$z!Q![Fs![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zVK[[&wP$VQOY$zYZ%fZz$zz{LQ{!P$z!P!Q,o!Q!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zVLVX&wPOYLQYZLrZzLQz{N_{!^LQ!^!_! s!_;'SLQ;'S;=`!!i<%lOLQVLwT&wPOzMWz{Mj{;'SMW;'S;=`NX<%lOMWUMZTOzMWz{Mj{;'SMW;'S;=`NX<%lOMWUMmVOzMWz{Mj{!PMW!P!QNS!Q;'SMW;'S;=`NX<%lOMWUNXO!eUUN[P;=`<%lMWVNdZ&wPOYLQYZLrZzLQz{N_{!PLQ!P!Q! V!Q!^LQ!^!_! s!_;'SLQ;'S;=`!!i<%lOLQV! ^V!eU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV! vZOYLQYZLrZzLQz{N_{!aLQ!a!bMW!b;'SLQ;'S;=`!!i<%l~LQ~OLQ~~%fV!!lP;=`<%lLQZ!!vm&wP$}YOY$zYZ%fZ!O$z!O!PFs!P!Q$z!Q![!$q![!^$z!^!_%k!_!d$z!d!e!&o!e!g$z!g!hGy!h!q$z!q!r!(a!r!z$z!z!{!){!{#R$z#R#S!%}#S#U$z#U#V!&o#V#X$z#X#YGy#Y#c$z#c#d!(a#d#l$z#l#m!){#m;'S$z;'S;=`&W<%lO$zZ!$xa&wP$}YOY$zYZ%fZ!O$z!O!PFs!P!Q$z!Q![!$q![!^$z!^!_%k!_!g$z!g!hGy!h#R$z#R#S!%}#S#X$z#X#YGy#Y;'S$z;'S;=`&W<%lO$zZ!&SX&wPOY$zYZ%fZ!Q$z!Q![!$q![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zZ!&tY&wPOY$zYZ%fZ!Q$z!Q!R!'d!R!S!'d!S!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zZ!'k[&wP$}YOY$zYZ%fZ!Q$z!Q!R!'d!R!S!'d!S!^$z!^!_%k!_#R$z#R#S!&o#S;'S$z;'S;=`&W<%lO$zZ!(fX&wPOY$zYZ%fZ!Q$z!Q!Y!)R!Y!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zZ!)YZ&wP$}YOY$zYZ%fZ!Q$z!Q!Y!)R!Y!^$z!^!_%k!_#R$z#R#S!(a#S;'S$z;'S;=`&W<%lO$zZ!*Q]&wPOY$zYZ%fZ!Q$z!Q![!*y![!^$z!^!_%k!_!c$z!c!i!*y!i#T$z#T#Z!*y#Z;'S$z;'S;=`&W<%lO$zZ!+Q_&wP$}YOY$zYZ%fZ!Q$z!Q![!*y![!^$z!^!_%k!_!c$z!c!i!*y!i#R$z#R#S!){#S#T$z#T#Z!*y#Z;'S$z;'S;=`&W<%lO$zR!,WX!qQ&wPOY$zYZ%fZ![$z![!]!,s!]!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!,zV#sQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!-hV!mU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!.S[$RQOY$zYZ%fZ!^$z!^!_!.x!_!`!/i!`!a*c!a!b!0]!b;'S$z;'S;=`&W<%l~$z~O$z~~%fR!/PW$SQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR!/pX$RQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`$z!`!a*c!a;'S$z;'S;=`&W<%lO$zP!0bR!iP!_!`!0k!r!s!0p#d#e!0pP!0pO!iPP!0sQ!j!k!0y#[#]!0yP!0|Q!r!s!0k#d#e!0kV!1ZX#uQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`)r!`!a!1v!a;'S$z;'S;=`&W<%lO$zV!1}V#OU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!2kX$RQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`!3W!`!a!.x!a;'S$z;'S;=`&W<%lO$zR!3_V$RQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!3{[!vQ&wPOY$zYZ%fZ}$z}!O!4q!O!^$z!^!_%k!_!`$z!`!a!6P!a!b!6m!b;'S$z;'S;=`&W<%lO$zV!4vX&wPOY$zYZ%fZ!^$z!^!_%k!_!`$z!`!a!5c!a;'S$z;'S;=`&W<%lO$zV!5jV#aU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!6WV!gU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!6tW#zQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR!7eV$]Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$z_!8Ra&wP!s^OY$zYZ%fZ!Q$z!Q![!7z![!^$z!^!_%k!_!c$z!c!}!7z!}#R$z#R#S!7z#S#T$z#T#o!7z#o$g$z$g&j!7z&j;'S$z;'S;=`&W<%lO$z_!9_e&wP!s^OY$zYZ%fZr$zrs!:psw$zwx8Vx!Q$z!Q![!7z![!^$z!^!_%k!_!c$z!c!}!7z!}#R$z#R#S!7z#S#T$z#T#o!7z#o$g$z$g&j!7z&j;'S$z;'S;=`&W<%lO$zR!:wV&wP'gQOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!;eV#WU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!mZ!^!=u!^!_!@u!_#O!=u#O#P!Aq#P#S!=u#S#T!B{#T;'S!=u;'S;=`!Ci<%lO!=uR!>rV&wPO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o<%lO!?XQ!?[VO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o<%lO!?XQ!?tRO;'S!?X;'S;=`!?};=`O!?XQ!@QWO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o;=`<%l!?X<%lO!?XQ!@oO${QQ!@rP;=`<%l!?XR!@x]OY!=uYZ!>mZ!a!=u!a!b!?X!b#O!=u#O#P!Aq#P#S!=u#S#T!B{#T;'S!=u;'S;=`!Ci<%l~!=u~O!=u~~%fR!AvW&wPOY!=uYZ!>mZ!^!=u!^!_!@u!_;'S!=u;'S;=`!B`;=`<%l!?X<%lO!=uR!BcWO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o;=`<%l!=u<%lO!?XR!CSV${Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!ClP;=`<%l!=uV!CvV!oU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!DfY#}Q#lS&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`#p$z#p#q!EU#q;'S$z;'S;=`&W<%lO$zR!E]V#{Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!EyV!nQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!FgV$^Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$z",tokenizers:[Ob,cb,ab,0,1,2,3,lb],topRules:{Template:[0,72],Program:[1,232]},dynamicPrecedences:{284:1},specialized:[{term:81,get:(i,e)=>td(i)<<1,external:td},{term:81,get:i=>ub[i]||-1}],tokenPrec:29354});var db=de.define({name:"php",parser:rd.configure({props:[ye.add({IfStatement:Ze({except:/^\s*({|else\b|elseif\b|endif\b)/}),TryStatement:Ze({except:/^\s*({|catch\b|finally\b)/}),SwitchBody:i=>{let e=i.textAfter,t=/^\s*\}/.test(e),n=/^\s*(case|default)\b/.test(e);return i.baseIndent+(t?0:n?1:2)*i.unit},ColonBlock:i=>i.baseIndent+i.unit,"Block EnumBody DeclarationList":zr({closing:"}"}),ArrowFunction:i=>i.baseIndent+i.unit,"String BlockComment":()=>null,Statement:Ze({except:/^({|end(for|foreach|switch|while)\b)/})}),be.add({"Block EnumBody DeclarationList SwitchBody ArrayExpression ValueList":Zt,ColonBlock(i){return{from:i.from+1,to:i.to}},BlockComment(i){return{from:i.from+2,to:i.to-2}}})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"},line:"//"},indentOnInput:/^\s*(?:case |default:|end(?:if|for(?:each)?|switch|while)|else(?:if)?|\{|\})$/,wordChars:"$",closeBrackets:{stringPrefixes:["b","B"]}}});function sd(i={}){let e=[],t;if(i.baseLanguage!==null)if(i.baseLanguage)t=i.baseLanguage;else{let n=zi({matchClosingTags:!1});e.push(n.support),t=n.language}return new re(db.configure({wrap:t&&Qi(n=>n.type.isTop?{parser:t.parser,overlay:r=>r.name=="Text"}:null),top:i.plain?"Program":"Template"}),e)}var pb=me.deserialize({version:14,states:"%^QYQPOOO!YQQO'#CaO#RQQO'#CrOOQO'#Ct'#CtQYQPOOOOQO'#C}'#C}O#]QQO'#CzO$ZQQO'#CoOOQO'#Cz'#CzOOQO'#Cu'#CuO$lQQO,58{OOQO,58{,58{O$sQQO,59^O$sQQO,59^OOQO,59^,59^OOQO-E6r-E6rO$zQQO'#CfOOQO,58|,58|OOQO'#C|'#C|O%]QSO'#C{O%hQQO,59ZOOQO-E6s-E6sOOQO1G.g1G.gO%mQQO1G.xOOQO1G.x1G.xO%tQQO,59QO%yQSO'#CvO&bQSO,59gOOQO1G.u1G.uOOQO7+$d7+$dOOQO1G.l1G.lOOQO,59b,59bOOQO-E6t-E6t",stateData:"&{~OmOSPOS~OSPOeQOgRO~OVUOZTO[TO]TO^WO_WO`WOaWObWOtVOuWO~ORZO~PeOVUOZTO[TO]TO^WO_WO`WObWOtVOuWO~Oa[Od^O~P!aOX`ORnXVnXZnX[nX]nX^nX_nX`nXanXbnXtnXunXdnX~OVbOZTO[TO]TOsoP~ORfO~PeOdhO~PeOVbOZTO[TO]TOWoP~OrjOsoXWoX~OslO~OdmO~PeOWnO~OVbOZTO[TO]TOrjXsjXWjX~OrjOsoaWoa~Og[]a_^`bVmPZ`~",goto:"#brPPPPPswPPP!PPPPPPPPPwPPsP!S!Y!hPPP!n!v!|#TTROS]WPQY[]gRaUQSOR_SQYPQ]QUeY]gRg[QkcRpk]XPQY[]gQdVRi`ScV`Roj[WPQY[]gVbV`j",nodeNames:"\u26A0 BlockComment Template }} {{ InsertBlock Function Identifier ) ( FunctionParamList String Boolean Number ChainedIdentifier Comparison Operator CodeTag Math Array %} {% CodeBlock PlainText",maxTerm:37,nodeProps:[["openedBy",3,"{{",8,"(",20,"{%"],["closedBy",4,"}}",9,")",21,"%}"]],skippedNodes:[0,1],repeatNodeCount:3,tokenData:"#Jr~R!^OX$}XY&ZYZ&ZZ]$}]^&Z^p$}pq&Zqr'Wrs(Ysu$}uv-cvw$}wx.gxy3Wyz3nz{4U{|4r|}5Y}!O5r!O!P>u!P!Q?]!Q!R:[!R![=m![!]?y!]!^$}!^!_@a!_!`@}!`!a@a!a!c$}!c!}6}!}#OAk#O#P$}#P#QBR#Q#R$}#R#S6}#S#T$}#T#UBi#U#V!'f#V#X6}#X#Y!,h#Y#Z# Y#Z#]6}#]#^#'g#^#a6}#a#b#.T#b#c#5r#c#d#8[#d#g6}#g#h#9h#h#i#AV#i#j!.Q#j#k!@V#k#l#Co#l#o6}#o#p#Ge#p#q>u#q#r#In#r;'S$};'S;=`&O<%lO$}P%STgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}P%fWOs$}tu$}v#o$}#p;'S$};'S;=`&O<%l~$}~O$}~~&UP&RP;=`<%l$}P&ZOgP~&b[gPm~OX$}XY&ZYZ&ZZ]$}]^&Z^p$}pq&Zq#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~']VgPO!_$}!_!`'r!`#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~'yTgP_~O#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~(aXgPZ~Or(Yrs(|s#O(Y#O#P)d#P#o(Y#o#p){#p;'S(Y;'S;=`,n<%lO(Y~)TTgPZ~O#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~)iUgPO#o(Y#o#p){#p;'S(Y;'S;=`,t;=`<%l*|<%lO(Y~*Q^Z~Or(Yrs(|st*|tu(Yuv*|v#O(Y#O#P)d#P#o(Y#o#p*|#p;'S(Y;'S;=`,n<%l~(Y~O(Y~~&U~+RVZ~Or*|rs+hs#O*|#O#P+m#P;'S*|;'S;=`,h<%lO*|~+mOZ~~+pRO;'S*|;'S;=`+y;=`O*|~,OWZ~Or*|rs+hs#O*|#O#P+m#P;'S*|;'S;=`,h;=`<%l*|<%lO*|~,kP;=`<%l*|~,qP;=`<%l(Y~,yWZ~Or*|rs+hs#O*|#O#P+m#P;'S*|;'S;=`,h;=`<%l(Y<%lO*|~-jVgPb~O#o$}#o#p%c#p#q$}#q#r.P#r;'S$};'S;=`&O<%lO$}R.WTdQgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~.nXgPZ~Ow.gwx(|x#O.g#O#P/Z#P#o.g#o#p/r#p;'S.g;'S;=`2c<%lO.g~/`UgPO#o.g#o#p/r#p;'S.g;'S;=`2i;=`<%l0v<%lO.g~/w_Z~Os.gst0vtu.guv0vvw.gwx(|x#O.g#O#P/Z#P#o.g#o#p0v#p;'S.g;'S;=`2c<%l~.g~O.g~~&U~0{VZ~Ow0vwx+hx#O0v#O#P1b#P;'S0v;'S;=`2]<%lO0v~1eRO;'S0v;'S;=`1n;=`O0v~1sWZ~Ow0vwx+hx#O0v#O#P1b#P;'S0v;'S;=`2];=`<%l0v<%lO0v~2`P;=`<%l0v~2fP;=`<%l.g~2nWZ~Ow0vwx+hx#O0v#O#P1b#P;'S0v;'S;=`2];=`<%l.g<%lO0vR3_TXQgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}V3uTWUgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~4]VgPb~Oz$}z{4r{#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~4yTgPb~O#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}V5cTrSuQgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~5{`gPb~V~O}$}}!O6}!O!P8T!P!Q$}!Q!R:[!R![=m![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~7U_gPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~8Y^gPO}$}}!O9U!O!Q$}!Q![9U![!c$}!c!}9U!}#R$}#R#S9U#S#T$}#T#o9U#o#p%c#p;'S$};'S;=`&O<%lO$}~9]_gP^~O}$}}!O9U!O!P8T!P!Q$}!Q![9U![!c$}!c!}9U!}#R$}#R#S9U#S#T$}#T#o9U#o#p%c#p;'S$};'S;=`&O<%lO$}~:e_gP]~V~O}$}}!O6}!O!P;d!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~;i^gPO}$}}!O9U!O!Q$}!Q![|TgP`~O#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~?dVgPb~O!P$}!P!Q4r!Q#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}R@QTuQgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~@hVgP_~O!_$}!_!`'r!`#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~AUVgP`~O!_$}!_!`'r!`#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}RArTtQgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}VBYTsUgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~BpegPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#b6}#b#cDR#c#d6}#d#eFg#e#i6}#i#jKe#j#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~DYagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#W6}#W#XE_#X#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~Eh_gP_~V~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~FnagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#d6}#d#eGs#e#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~GzagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#`6}#`#aIP#a#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~IWagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#m6}#m#nJ]#n#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~Jf_gPa~V~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~KlagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#h6}#h#iLq#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~LxagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#c6}#c#dM}#d#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~NUagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y! Z#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~! bagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#h!!g#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!!nagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#V6}#V#W!#s#W#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!#z`gPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U!$|#U#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!%TagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#d6}#d#e!&Y#e#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!&aagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#YJ]#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!'magPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#`6}#`#a!(r#a#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!(yagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#c6}#c#d!*O#d#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!*VagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#V6}#V#W!+[#W#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!+cagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#_6}#_#`J]#`#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!,oegPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#`6}#`#a!.Q#a#b6}#b#c!/^#c#l6}#l#m!Hz#m#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!.XagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#h!&Y#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!/eagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#W6}#W#X!0j#X#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!0qkgPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U!2f#U#V!'f#V#Y6}#Y#Z!3x#Z#]6}#]#^!6b#^#a6}#a#b!7n#b#g6}#g#h!OVgPO#k$}#k#l!>e#l#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~!>jVgPO#]$}#]#^!?P#^#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~!?UVgPO#h$}#h#i!?k#i#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~!?pVgPO#[$}#[#]'r#]#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~!@^agPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y!Ac#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!AjagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#f6}#f#g!Bo#g#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!BvagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U6}#U#V!C{#V#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!DS`gPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U!EU#U#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!E]agPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#h6}#h#i!Fb#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!FiagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#]6}#]#^!Gn#^#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!GuagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#a6}#a#bJ]#b#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!IRagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#h6}#h#i!JW#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!J_agPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y!Kd#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!KkagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#b6}#b#c!Lp#c#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!LwagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#W6}#W#X!M|#X#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!NTagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#hJ]#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~# abgPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U#!i#U#c6}#c#d!5U#d#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#!pagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#`6}#`#a##u#a#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~##|agPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#h#%R#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#%YagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y#&_#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#&h_gP[~V~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#'negPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#Y6}#Y#ZJ]#Z#b6}#b#c#)P#c#g6}#g#hE_#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#)YagP_~V~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#V6}#V#W#*_#W#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#*fagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#`6}#`#a#+k#a#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#+ragPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#i6}#i#j#,w#j#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#-OagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#W6}#W#X!&Y#X#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#.[`gPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U#/^#U#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#/ecgPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#V6}#V#W!:T#W#h6}#h#i#0p#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#0wagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#V6}#V#W#1|#W#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#2TagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#[6}#[#]#3Y#]#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#3aagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y#4f#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#4magPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#hE_#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#5yagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#c6}#c#d#7O#d#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#7VagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#h6}#h#iE_#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#8cagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#f6}#f#gE_#g#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#9ocgPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y#:z#Y#h6}#h#i#m#g#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#>tagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#h6}#h#i#?y#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#@QagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#h!=65&&i<=90||i==95||i>=97&&i<=122||i>=161}function vb(i){return i==9||i==10||i==13||i==32}var Od=null,ld=null,ad=0;function rl(i,e){let t=i.pos+e;if(ld==i&&ad==t)return Od;for(;vb(i.peek(e));)e++;let n="";for(;;){let r=i.peek(e);if(!kb(r))break;n+=String.fromCharCode(r),e++}return ld=i,ad=t,Od=n||null}function hd(i,e){this.name=i,this.parent=e,this.hash=e?e.hash:0;for(let t=0;t{if(i.next==60){if(i.advance(),i.next==47){i.advance();let t=rl(i,0);if(!t)return i.acceptToken(Qb);if(e.context&&t==e.context.name)return i.acceptToken(gb);for(let n=e.context;n;n=n.parent)if(n.name==t)return i.acceptToken($b,-2);i.acceptToken(Sb)}else if(i.next!=33&&i.next!=63)return i.acceptToken(nl)}},{contextual:!0});function sl(i,e){return new H(t=>{for(let n=0,r=0;;r++){if(t.next<0){r&&t.acceptToken(i);break}if(t.next==e.charCodeAt(n)){if(n++,n==e.length){r>=e.length&&t.acceptToken(i,1-e.length);break}}else n=t.next==e.charCodeAt(0)?1:0;t.advance()}})}var Xb=sl(yb,"-->"),Wb=sl(bb,"?>"),Rb=sl(Pb,"]]>"),Zb=ne({Text:u.content,"StartTag StartCloseTag EndTag SelfCloseEndTag":u.angleBracket,TagName:u.tagName,"MismatchedCloseTag/Tagname":[u.tagName,u.invalid],AttributeName:u.attributeName,AttributeValue:u.attributeValue,Is:u.definitionOperator,"EntityReference CharacterReference":u.character,Comment:u.blockComment,ProcessingInst:u.processingInstruction,DoctypeDecl:u.documentMeta,Cdata:u.special(u.string)}),cd=me.deserialize({version:14,states:",SOQOaOOOrOxO'#CfOzOpO'#CiO!tOaO'#CgOOOP'#Cg'#CgO!{OrO'#CrO#TOtO'#CsO#]OpO'#CtOOOP'#DS'#DSOOOP'#Cv'#CvQQOaOOOOOW'#Cw'#CwO#eOxO,59QOOOP,59Q,59QOOOO'#Cx'#CxO#mOpO,59TO#uO!bO,59TOOOP'#C{'#C{O$TOaO,59RO$[OpO'#CoOOOP,59R,59ROOOQ'#C|'#C|O$dOrO,59^OOOP,59^,59^OOOS'#C}'#C}O$lOtO,59_OOOP,59_,59_O$tOpO,59`O$|OpO,59`OOOP-E6t-E6tOOOW-E6u-E6uOOOP1G.l1G.lOOOO-E6v-E6vO%UO!bO1G.oO%UO!bO1G.oO%dOpO'#CkO%lO!bO'#CyO%zO!bO1G.oOOOP1G.o1G.oOOOP1G.w1G.wOOOP-E6y-E6yOOOP1G.m1G.mO&VOpO,59ZO&_OpO,59ZOOOQ-E6z-E6zOOOP1G.x1G.xOOOS-E6{-E6{OOOP1G.y1G.yO&gOpO1G.zO&gOpO1G.zOOOP1G.z1G.zO&oO!bO7+$ZO&}O!bO7+$ZOOOP7+$Z7+$ZOOOP7+$c7+$cO'YOpO,59VO'bOpO,59VO'jO!bO,59eOOOO-E6w-E6wO'xOpO1G.uO'xOpO1G.uOOOP1G.u1G.uO(QOpO7+$fOOOP7+$f7+$fO(YO!bO<`#X;'S%y;'S;=`&_<%lO%yX>eV{WOr%ysv%yw#T%y#T#U>z#U;'S%y;'S;=`&_<%lO%yX?PV{WOr%ysv%yw#h%y#h#i?f#i;'S%y;'S;=`&_<%lO%yX?kV{WOr%ysv%yw#T%y#T#Us.from<=t&&s.to>=t),r=n&&n.getChild("AttributeName");return r?i.sliceString(r.from,r.to):""}function Ol(i){for(let e=i&&i.parent;e;e=e.parent)if(e.name=="Element")return e;return null}function Vb(i,e){var t;let n=A(i).resolveInner(e,-1),r=null;for(let s=n;!r&&s.parent;s=s.parent)(s.name=="OpenTag"||s.name=="CloseTag"||s.name=="SelfClosingTag"||s.name=="MismatchedCloseTag")&&(r=s);if(r&&(r.to>e||r.lastChild.type.isError)){let s=r.parent;if(n.name=="TagName")return r.name=="CloseTag"||r.name=="MismatchedCloseTag"?{type:"closeTag",from:n.from,context:s}:{type:"openTag",from:n.from,context:Ol(s)};if(n.name=="AttributeName")return{type:"attrName",from:n.from,context:r};if(n.name=="AttributeValue")return{type:"attrValue",from:n.from,context:r};let o=n==r||n.name=="Attribute"?n.childBefore(e):n;return o?.name=="StartTag"?{type:"openTag",from:e,context:Ol(s)}:o?.name=="StartCloseTag"&&o.to<=e?{type:"closeTag",from:e,context:s}:o?.name=="Is"?{type:"attrValue",from:e,context:r}:o?{type:"attrName",from:e,context:r}:null}else if(n.name=="StartCloseTag")return{type:"closeTag",from:e,context:n.parent};for(;n.parent&&n.to==e&&!(!((t=n.lastChild)===null||t===void 0)&&t.type.isError);)n=n.parent;return n.name=="Element"||n.name=="Text"||n.name=="Document"?{type:"tag",from:e,context:n.name=="Element"?n:Ol(n)}:null}var al=class{constructor(e,t,n){this.attrs=t,this.attrValues=n,this.children=[],this.name=e.name,this.completion=Object.assign(Object.assign({type:"type"},e.completion||{}),{label:this.name}),this.openCompletion=Object.assign(Object.assign({},this.completion),{label:"<"+this.name}),this.closeCompletion=Object.assign(Object.assign({},this.completion),{label:"",boost:2}),this.closeNameCompletion=Object.assign(Object.assign({},this.completion),{label:this.name+">"}),this.text=e.textContent?e.textContent.map(r=>({label:r,type:"text"})):[]}},ll=/^[:\-\.\w\u00b7-\uffff]*$/;function fd(i){return Object.assign(Object.assign({type:"property"},i.completion||{}),{label:i.name})}function ud(i){return typeof i=="string"?{label:`"${i}"`,type:"constant"}:/^"/.test(i.label)?i:Object.assign(Object.assign({},i),{label:`"${i.label}"`})}function Cb(i,e){let t=[],n=[],r=Object.create(null);for(let l of e){let a=fd(l);t.push(a),l.global&&n.push(a),l.values&&(r[l.name]=l.values.map(ud))}let s=[],o=[],O=Object.create(null);for(let l of i){let a=n,h=r;l.attributes&&(a=a.concat(l.attributes.map(f=>typeof f=="string"?t.find(d=>d.label==f)||{label:f,type:"property"}:(f.values&&(h==r&&(h=Object.create(h)),h[f.name]=f.values.map(ud)),fd(f)))));let c=new al(l,a,h);O[c.name]=c,s.push(c),l.top&&o.push(c)}o.length||(o=s);for(let l=0;l{var a;let{doc:h}=l.state,c=Vb(l.state,l.pos);if(!c||c.type=="tag"&&!l.explicit)return null;let{type:f,from:d,context:p}=c;if(f=="openTag"){let m=o,g=ol(h,p);if(g){let $=O[g];m=$?.children||s}return{from:d,options:m.map($=>$.completion),validFor:ll}}else if(f=="closeTag"){let m=ol(h,p);return m?{from:d,to:l.pos+(h.sliceString(l.pos,l.pos+1)==">"?1:0),options:[((a=O[m])===null||a===void 0?void 0:a.closeNameCompletion)||{label:m+">",type:"type"}],validFor:ll}:null}else if(f=="attrName"){let m=O[Jr(h,p)];return{from:d,options:m?.attrs||n,validFor:ll}}else if(f=="attrValue"){let m=Yb(h,p,d);if(!m)return null;let g=O[Jr(h,p)],$=(g?.attrValues||r)[m];return!$||!$.length?null:{from:d,to:l.pos+(h.sliceString(l.pos,l.pos+1)=='"'?1:0),options:$,validFor:/^"[^"]*"?$/}}else if(f=="tag"){let m=ol(h,p),g=O[m],$=[],Q=p&&p.lastChild;m&&(!Q||Q.name!="CloseTag"||Jr(h,Q)!=m)&&$.push(g?g.closeCompletion:{label:"",type:"type",boost:2});let k=$.concat((g?.children||(p?s:o)).map(b=>b.openCompletion));if(p&&g?.text.length){let b=p.firstChild;b.to>l.pos-20&&!/\S/.test(l.state.sliceDoc(b.to,l.pos))&&(k=k.concat(g.text))}return{from:d,options:k,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}else return null}}var dd=de.define({name:"xml",parser:cd.configure({props:[ye.add({Element(i){let e=/^\s*<\//.test(i.textAfter);return i.lineIndent(i.node.from)+(e?0:i.unit)},"OpenTag CloseTag SelfClosingTag"(i){return i.column(i.node.from)+i.unit}}),be.add({Element(i){let e=i.firstChild,t=i.lastChild;return!e||e.name!="OpenTag"?null:{from:e.to,to:t.name=="CloseTag"?t.from:i.to}}}),fn.add({"OpenTag CloseTag":i=>i.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:""}},indentOnInput:/^\s*<\/$/}});function pd(i={}){return new re(dd,dd.data.of({autocomplete:Cb(i.elements||[],i.attributes||[])}))}var T=async i=>{let e=await window.importVersioned("legacy-modes");return kr.define(e[i])},qb={bash:()=>T("shell"),c:()=>T("c"),css:async()=>jr(),"c++":()=>T("cpp"),"c#":()=>T("csharp"),clj:()=>T("clojure"),clojure:()=>T("clojure"),csharp:()=>T("csharp"),dart:()=>T("dart"),diff:()=>T("diff"),for:()=>T("fortran"),fortran:()=>T("fortran"),"f#":()=>T("fSharp"),fsharp:()=>T("fSharp"),go:()=>T("go"),haskell:()=>T("haskell"),hs:()=>T("haskell"),html:async()=>zi(),ini:()=>T("properties"),java:()=>T("java"),javascript:async()=>ei(),json:async()=>cf(),js:async()=>ei(),jl:()=>T("julia"),julia:()=>T("julia"),kotlin:()=>T("kotlin"),latex:()=>T("stex"),lua:()=>T("lua"),markdown:async()=>Kr(),matlab:()=>T("octave"),md:async()=>Kr(),mdown:async()=>Kr(),ml:()=>T("sml"),mssql:()=>T("msSQL"),mysql:()=>T("mySQL"),nginx:()=>T("nginx"),octave:()=>T("octave"),pas:()=>T("pascal"),pascal:()=>T("pascal"),perl:()=>T("perl"),pgsql:()=>T("pgSQL"),php:async i=>{let e=i.includes("T("perl"),"pl/sql":()=>T("plSQL"),postgresql:()=>T("pgSQL"),powershell:()=>T("powerShell"),properties:()=>T("properties"),ocaml:()=>T("oCaml"),py:()=>T("python"),python:()=>T("python"),rb:()=>T("ruby"),rs:()=>T("rust"),ruby:()=>T("ruby"),rust:()=>T("rust"),scala:()=>T("scala"),scheme:()=>T("scheme"),shell:()=>T("shell"),sh:()=>T("shell"),smarty:()=>T("smarty"),stext:()=>T("stex"),swift:()=>T("swift"),toml:()=>T("toml"),ts:async()=>ei({typescript:!0}),twig:async()=>od(),typescript:async()=>ei({typescript:!0}),sql:()=>T("standardSQL"),sqlite:()=>T("sqlite"),vbs:()=>T("vbScript"),vbscript:()=>T("vbScript"),"vb.net":()=>T("vb"),vbnet:()=>T("vb"),xml:async()=>pd(),yaml:()=>T("yaml"),yml:()=>T("yaml")};function md(i,e){let t=i.trim().replace(/^\./g,"").toLowerCase(),n=qb[t];if(!(typeof n>"u"))return n(e)}var gd=new WeakMap;function Ri(i,e){let t=new ft;e.extensions.push(t.of([]));let n={usage:i,editorViewConfig:e,libEditorView:v,libEditorState:j,libCompartment:ft};window.$events.emitPublic(e.parent,"library-cm6::pre-init",n);let r=new v(e);return gd.set(r,t),window.$events.emitPublic(e.parent,"library-cm6::post-init",{editorView:r,...n}),r}async function $d(i,e,t){let n=gd.get(i),r=await md(e,t);i.dispatch({effects:n.reconfigure(r||[])})}var _t=class{constructor(e){this.ev=e}getContent(){return this.ev.state.doc.toString()}setContent(e){let{doc:t}=this.ev.state;this.ev.dispatch({changes:{from:0,to:t.length,insert:e}})}focus(){this.ev.focus()}setMode(e,t=""){$d(this.ev,e,t)}};function Ub(i){let e='',t='',n=document.createElement("button");n.setAttribute("type","button"),n.classList.add("cm-copy-button"),n.innerHTML=e,i.dom.appendChild(n);let r=620,s=60;n.addEventListener("click",()=>{gh(i.state.doc.toString()),n.classList.add("success"),setTimeout(()=>{n.innerHTML=t},s/2),setTimeout(()=>{n.classList.remove("success")},r),setTimeout(()=>{n.innerHTML=e},r+s/2)})}function Sd(i){let e=i.querySelector("code[class^=language-]");i.innerHTML=i.innerHTML.replace(//gi,` -`);let t=i.textContent.trimEnd(),n="";e!==null&&(n=e.className.replace("language-",""));let r=document.createElement("div");i.parentNode.insertBefore(r,i);let s=e.getAttribute("dir")||i.getAttribute("dir")||"";s&&r.setAttribute("dir",s);let o=Ri("content-code-block",{parent:r,doc:t,extensions:tO(r)});new _t(o).setMode(n,t),i.remove(),Ub(o)}function xP(i){let e=i.querySelectorAll("pre");for(let t of e)Sd(t)}function wP(){let i=document.querySelectorAll(".page-content pre, .comment-box .content pre");for(let e of i)Sd(e)}function kP(i,e,t,n){let r=Ri("content-code-block",{parent:i,doc:t,extensions:tO(i),root:e}),s=new _t(r);return s.setMode(n,t),s}function vP(i,e){let t=i.textContent,n={parent:i.parentElement,doc:t,extensions:[...qr(i.parentElement)]},r=new _t(Ri("code-editor",n));return r.setMode(e,t),i.style.display="none",r}function TP(i,e){let t=i.value,n={parent:i.parentElement,doc:t,extensions:[...qr(i.parentElement),v.updateListener.of(o=>{o.docChanged&&(i.value=o.state.doc.toString())})]},r=Ri("code-input",n),s=new _t(r);return s.setMode(e,t),i.style.display="none",s}function zP(i,e,t,n){let r=i.textContent,s={parent:i.parentElement,doc:r,extensions:[ot.of(n),...qr(i.parentElement),v.updateListener.of(O=>{e(O)}),v.domEventHandlers(t)]};window.$events.emitPublic(i,"editor-markdown-cm6::pre-init",{editorViewConfig:s});let o=Ri("markdown-editor",s);return new _t(o).setMode("markdown",""),i.style.display="none",o}export{wP as highlight,xP as highlightWithin,TP as inlineEditor,zP as markdownEditor,vP as popupEditor,kP as wysiwygView}; +`);n=r<0?t:t.slice(0,r)}return e+n.length>this.to?n.slice(0,this.to-e):n}prevLineEnd(){return this.atEnd?this.lineStart:this.lineStart-1}startContext(e,t,n=0){this.block=Hr.create(e,n,this.lineStart+t,this.block.hash,this.lineStart+this.line.text.length),this.stack.push(this.block)}startComposite(e,t,n=0){this.startContext(this.parser.getNodeType(e),t,n)}addNode(e,t,n){typeof e=="number"&&(e=new q(this.parser.nodeSet.types[e],Ri,Ri,(n??this.prevLineEnd())-t)),this.block.addChild(e,t-this.block.from)}addElement(e){this.block.addChild(e.toTree(this.parser.nodeSet),e.from-this.block.from)}addLeafElement(e,t){this.addNode(this.buffer.writeElements(NO(t.children,e.marks),-t.from).finish(t.type,t.to-t.from),t.from)}finishContext(){let e=this.stack.pop(),t=this.stack[this.stack.length-1];t.addChild(e.toTree(this.parser.nodeSet),e.from-t.from),this.block=t}finish(){for(;this.stack.length>1;)this.finishContext();return this.addGaps(this.block.toTree(this.parser.nodeSet,this.lineStart))}addGaps(e){return this.ranges.length>1?ju(this.ranges,0,e.topNode,this.ranges[0].from,this.reusePlaceholders):e}finishLeaf(e){for(let n of e.parsers)if(n.finish(this,e))return;let t=NO(this.parser.parseInline(e.content,e.start),e.marks);this.addNode(this.buffer.writeElements(t,-e.start).finish(y.Paragraph,e.content.length),e.start)}elt(e,t,n,r){return typeof e=="string"?_(this.parser.getNodeType(e),t,n,r):new Kr(e,t)}get buffer(){return new Fr(this.parser.nodeSet)}};function ju(i,e,t,n,r){let s=i[e].to,o=[],O=[],a=t.from+n;function l(h,c){for(;c?h>=s:h>s;){let f=i[e+1].from-s;n+=f,h+=f,e++,s=i[e].to}}for(let h=t.firstChild;h;h=h.nextSibling){l(h.from+n,!0);let c=h.from+n,f,d=r.get(h.tree);d?f=d:h.to+n>s?(f=ju(i,e,h,n,r),l(h.to+n,!1)):f=h.toTree(),o.push(f),O.push(c-a)}return l(t.to+n,!1),new q(t.type,o,O,t.to+n-a,t.tree?t.tree.propValues:void 0)}var zn=class i extends Qt{constructor(e,t,n,r,s,o,O,a,l){super(),this.nodeSet=e,this.blockParsers=t,this.leafBlockParsers=n,this.blockNames=r,this.endLeafBlock=s,this.skipContextMarkup=o,this.inlineParsers=O,this.inlineNames=a,this.wrappers=l,this.nodeTypes=Object.create(null);for(let h of e.types)this.nodeTypes[h.name]=h.id}createParse(e,t,n){let r=new LO(this,e,t,n);for(let s of this.wrappers)r=s(r,e,t,n);return r}configure(e){let t=DO(e);if(!t)return this;let{nodeSet:n,skipContextMarkup:r}=this,s=this.blockParsers.slice(),o=this.leafBlockParsers.slice(),O=this.blockNames.slice(),a=this.inlineParsers.slice(),l=this.inlineNames.slice(),h=this.endLeafBlock.slice(),c=this.wrappers;if(wn(t.defineNodes)){r=Object.assign({},r);let f=n.types.slice(),d;for(let p of t.defineNodes){let{name:m,block:$,composite:g,style:Q}=typeof p=="string"?{name:p}:p;if(f.some(P=>P.name==m))continue;g&&(r[f.length]=(P,v,k)=>g(v,k,P.value));let x=f.length,w=g?["Block","BlockContext"]:$?x>=y.ATXHeading1&&x<=y.SetextHeading2?["Block","LeafBlock","Heading"]:["Block","LeafBlock"]:void 0;f.push(ie.define({id:x,name:m,props:w&&[[R.group,w]]})),Q&&(d||(d={}),Array.isArray(Q)||Q instanceof Ge?d[m]=Q:Object.assign(d,Q))}n=new $t(f),d&&(n=n.extend(oe(d)))}if(wn(t.props)&&(n=n.extend(...t.props)),wn(t.remove))for(let f of t.remove){let d=this.blockNames.indexOf(f),p=this.inlineNames.indexOf(f);d>-1&&(s[d]=o[d]=void 0),p>-1&&(a[p]=void 0)}if(wn(t.parseBlock))for(let f of t.parseBlock){let d=O.indexOf(f.name);if(d>-1)s[d]=f.parse,o[d]=f.leaf;else{let p=f.before?Nr(O,f.before):f.after?Nr(O,f.after)+1:O.length-1;s.splice(p,0,f.parse),o.splice(p,0,f.leaf),O.splice(p,0,f.name)}f.endLeaf&&h.push(f.endLeaf)}if(wn(t.parseInline))for(let f of t.parseInline){let d=l.indexOf(f.name);if(d>-1)a[d]=f.parse;else{let p=f.before?Nr(l,f.before):f.after?Nr(l,f.after)+1:l.length-1;a.splice(p,0,f.parse),l.splice(p,0,f.name)}}return t.wrap&&(c=c.concat(t.wrap)),new i(n,s,o,O,h,r,a,l,c)}getNodeType(e){let t=this.nodeTypes[e];if(t==null)throw new RangeError(`Unknown node type '${e}'`);return t}parseInline(e,t){let n=new BO(this,e,t);e:for(let r=t;r=0){r=O;continue e}}r++}return n.resolveMarkers(0)}};function wn(i){return i!=null&&i.length>0}function DO(i){if(!Array.isArray(i))return i;if(i.length==0)return null;let e=DO(i[0]);if(i.length==1)return e;let t=DO(i.slice(1));if(!t||!e)return e||t;let n=(o,O)=>(o||Ri).concat(O||Ri),r=e.wrap,s=t.wrap;return{props:n(e.props,t.props),defineNodes:n(e.defineNodes,t.defineNodes),parseBlock:n(e.parseBlock,t.parseBlock),parseInline:n(e.parseInline,t.parseInline),remove:n(e.remove,t.remove),wrap:r?s?(o,O,a,l)=>r(s(o,O,a,l),O,a,l):r:s}}function Nr(i,e){let t=i.indexOf(e);if(t<0)throw new RangeError(`Position specified relative to unknown parser ${e}`);return t}var Au=[ie.none];for(let i=1,e;e=y[i];i++)Au[i]=ie.define({id:i,name:e,props:i>=y.Escape?[]:[[R.group,i in zu?["Block","BlockContext"]:["Block","LeafBlock"]]],top:e=="Document"});var Ri=[],Fr=class{constructor(e){this.nodeSet=e,this.content=[],this.nodes=[]}write(e,t,n,r=0){return this.content.push(e,t,n,4+r*4),this}writeElements(e,t=0){for(let n of e)n.writeTo(this,t);return this}finish(e,t){return q.build({buffer:this.content,nodeSet:this.nodeSet,reused:this.nodes,topID:e,length:t})}},oi=class{constructor(e,t,n,r=Ri){this.type=e,this.from=t,this.to=n,this.children=r}writeTo(e,t){let n=e.content.length;e.writeElements(this.children,t),e.content.push(this.type,this.from+t,this.to+t,e.content.length+4-n)}toTree(e){return new Fr(e).writeElements(this.children,-this.from).finish(this.type,this.to-this.from)}},Kr=class{constructor(e,t){this.tree=e,this.from=t}get to(){return this.from+this.tree.length}get type(){return this.tree.type.id}get children(){return Ri}writeTo(e,t){e.nodes.push(this.tree),e.content.push(e.nodes.length-1,this.from+t,this.to+t,-1)}toTree(){return this.tree}};function _(i,e,t,n){return new oi(i,e,t,n)}var _u={resolve:"Emphasis",mark:"EmphasisMark"},Uu={resolve:"Emphasis",mark:"EmphasisMark"},kn={},Su={},Ye=class{constructor(e,t,n,r){this.type=e,this.from=t,this.to=n,this.side=r}},yu="!\"#$%&'()*+,-./:;<=>?@[\\]^_`{|}~",Zn=/[!"#$%&'()*+,\-.\/:;<=>?@\[\\\]^_`{|}~\xA1\u2010-\u2027]/;try{Zn=new RegExp("[\\p{Pc}|\\p{Pd}|\\p{Pe}|\\p{Pf}|\\p{Pi}|\\p{Po}|\\p{Ps}]","u")}catch{}var AO={Escape(i,e,t){if(e!=92||t==i.end-1)return-1;let n=i.char(t+1);for(let r=0;r]+|[a-z\d.!#$%&'*+/=?^_`{|}~-]+@[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?(?:\.[a-z\d](?:[a-z\d-]{0,61}[a-z\d])?)*)>/i.exec(n);if(r)return i.append(_(y.Autolink,t,t+1+r[0].length,[_(y.LinkMark,t,t+1),_(y.URL,t+1,t+r[0].length),_(y.LinkMark,t+r[0].length,t+1+r[0].length)]));let s=/^!--[^>](?:-[^-]|[^-])*?-->/i.exec(n);if(s)return i.append(_(y.Comment,t,t+1+s[0].length));let o=/^\?[^]*?\?>/.exec(n);if(o)return i.append(_(y.ProcessingInstruction,t,t+1+o[0].length));let O=/^(?:![A-Z][^]*?>|!\[CDATA\[[^]*?\]\]>|\/\s*[a-zA-Z][\w-]*\s*>|\s*[a-zA-Z][\w-]*(\s+[a-zA-Z:_][\w-.:]*(?:\s*=\s*(?:[^\s"'=<>`]+|'[^']*'|"[^"]*"))?)*\s*(\/\s*)?>)/.exec(n);return O?i.append(_(y.HTMLTag,t,t+1+O[0].length)):-1},Emphasis(i,e,t){if(e!=95&&e!=42)return-1;let n=t+1;for(;i.char(n)==e;)n++;let r=i.slice(t-1,t),s=i.slice(n,n+1),o=Zn.test(r),O=Zn.test(s),a=/\s|^$/.test(r),l=/\s|^$/.test(s),h=!l&&(!O||a||o),c=!a&&(!o||l||O),f=h&&(e==42||!c||o),d=c&&(e==42||!h||O);return i.append(new Ye(e==95?_u:Uu,t,n,(f?1:0)|(d?2:0)))},HardBreak(i,e,t){if(e==92&&i.char(t+1)==10)return i.append(_(y.HardBreak,t,t+2));if(e==32){let n=t+1;for(;i.char(n)==32;)n++;if(i.char(n)==10&&n>=t+2)return i.append(_(y.HardBreak,t,n+1))}return-1},Link(i,e,t){return e==91?i.append(new Ye(kn,t,t+1,1)):-1},Image(i,e,t){return e==33&&i.char(t+1)==91?i.append(new Ye(Su,t,t+2,1)):-1},LinkEnd(i,e,t){if(e!=93)return-1;for(let n=i.parts.length-1;n>=0;n--){let r=i.parts[n];if(r instanceof Ye&&(r.type==kn||r.type==Su)){if(!r.side||i.skipSpace(r.to)==t&&!/[(\[]/.test(i.slice(t+1,t+2)))return i.parts[n]=null,-1;let s=i.takeContent(n),o=i.parts[n]=US(i,s,r.type==kn?y.Link:y.Image,r.from,t+1);if(r.type==kn)for(let O=0;Oe?_(y.URL,e+t,s+t):s==i.length?null:!1}}function Gu(i,e,t){let n=i.charCodeAt(e);if(n!=39&&n!=34&&n!=40)return!1;let r=n==40?41:n;for(let s=e+1,o=!1;s=this.end?-1:this.text.charCodeAt(e-this.offset)}get end(){return this.offset+this.text.length}slice(e,t){return this.text.slice(e-this.offset,t-this.offset)}append(e){return this.parts.push(e),e.to}addDelimiter(e,t,n,r,s){return this.append(new Ye(e,t,n,(r?1:0)|(s?2:0)))}addElement(e){return this.append(e)}resolveMarkers(e){for(let n=e;n=e;a--){let m=this.parts[a];if(m instanceof Ye&&m.side&1&&m.type==r.type&&!(s&&(r.side&1||m.side&2)&&(m.to-m.from+o)%3==0&&((m.to-m.from)%3||o%3))){O=m;break}}if(!O)continue;let l=r.type.resolve,h=[],c=O.from,f=r.to;if(s){let m=Math.min(2,O.to-O.from,o);c=O.to-m,f=r.from+m,l=m==1?"Emphasis":"StrongEmphasis"}O.type.mark&&h.push(this.elt(O.type.mark,c,O.to));for(let m=a+1;m=0;t--){let n=this.parts[t];if(n instanceof Ye&&n.type==e)return t}return null}takeContent(e){let t=this.resolveMarkers(e);return this.parts.length=e,t}skipSpace(e){return Tn(this.text,e-this.offset)+this.offset}elt(e,t,n,r){return typeof e=="string"?_(this.parser.getNodeType(e),t,n,r):new Kr(e,t)}};function NO(i,e){if(!e.length)return i;if(!i.length)return e;let t=i.slice(),n=0;for(let r of e){for(;n(e?e-1:0))return!1;if(this.fragmentEnd<0){let s=this.fragment.to;for(;s>0&&this.input.read(s-1,s)!=` +`;)s--;this.fragmentEnd=s?s-1:0}let n=this.cursor;n||(n=this.cursor=this.fragment.tree.cursor(),n.firstChild());let r=e+this.fragment.offset;for(;n.to<=r;)if(!n.parent())return!1;for(;;){if(n.from>=r)return this.fragment.from<=t;if(!n.childAfter(r))return!1}}matches(e){let t=this.cursor.tree;return t&&t.prop(R.contextHash)==e}takeNodes(e){let t=this.cursor,n=this.fragment.offset,r=this.fragmentEnd-(this.fragment.openEnd?1:0),s=e.absoluteLineStart,o=s,O=e.block.children.length,a=o,l=O;for(;;){if(t.to-n>r){if(t.type.isAnonymous&&t.firstChild())continue;break}let h=Iu(t.from-n,e.ranges);if(t.to-n<=e.ranges[e.rangeI].to)e.addNode(t.tree,h);else{let c=new q(e.parser.nodeSet.types[y.Paragraph],[],[],0,e.block.hashProp);e.reusePlaceholders.set(c,t.tree),e.addNode(c,h)}if(t.type.is("Block")&&(ES.indexOf(t.type.id)<0?(o=t.to-n,O=e.block.children.length):(o=a,O=l,a=t.to-n,l=e.block.children.length)),!t.nextSibling())break}for(;e.block.children.length>O;)e.block.children.pop(),e.block.positions.pop();return o-s}};function Iu(i,e){let t=i;for(let n=1;nBr[i]),Object.keys(Br).map(i=>jS[i]),Object.keys(Br),AS,zu,Object.keys(AO).map(i=>AO[i]),Object.keys(AO),[]);function MS(i,e,t){let n=[];for(let r=i.firstChild,s=e;;r=r.nextSibling){let o=r?r.from:t;if(o>s&&n.push({from:s,to:o}),!r)break;s=r.to}return n}function Du(i){let{codeParser:e,htmlParser:t}=i;return{wrap:bi((r,s)=>{let o=r.type.id;if(e&&(o==y.CodeBlock||o==y.FencedCode)){let O="";if(o==y.FencedCode){let l=r.node.getChild(y.CodeInfo);l&&(O=s.read(l.from,l.to))}let a=e(O);if(a)return{parser:a,overlay:l=>l.type.id==y.CodeText}}else if(t&&(o==y.HTMLBlock||o==y.HTMLTag))return{parser:t,overlay:MS(r.node,r.from,r.to)};return null})}}var IS={resolve:"Strikethrough",mark:"StrikethroughMark"},LS={defineNodes:[{name:"Strikethrough",style:{"Strikethrough/...":u.strikethrough}},{name:"StrikethroughMark",style:u.processingInstruction}],parseInline:[{name:"Strikethrough",parse(i,e,t){if(e!=126||i.char(t+1)!=126||i.char(t+2)==126)return-1;let n=i.slice(t-1,t),r=i.slice(t+2,t+3),s=/\s|^$/.test(n),o=/\s|^$/.test(r),O=Zn.test(n),a=Zn.test(r);return i.addDelimiter(IS,t,t+2,!o&&(!a||s||O),!s&&(!O||o||a))},after:"Emphasis"}]};function vn(i,e,t=0,n,r=0){let s=0,o=!0,O=-1,a=-1,l=!1,h=()=>{n.push(i.elt("TableCell",r+O,r+a,i.parser.parseInline(e.slice(O,a),r+O)))};for(let c=t;c-1)&&s++,o=!1,n&&(O>-1&&h(),n.push(i.elt("TableDelimiter",c+r,c+r+1))),O=a=-1):(l||f!=32&&f!=9)&&(O<0&&(O=c),a=c+1),l=!l&&f==92}return O>-1&&(s++,n&&h()),s}function Pu(i,e){for(let t=e;tr instanceof Jr)||!Pu(e.text,e.basePos))return!1;let n=i.scanLine(i.absoluteLineEnd+1).text;return Bu.test(n)&&vn(i,e.text,e.basePos)==vn(i,n,e.basePos)},before:"SetextHeading"}]},FO=class{nextLine(){return!1}finish(e,t){return e.addLeafElement(t,e.elt("Task",t.start,t.start+t.content.length,[e.elt("TaskMarker",t.start,t.start+3),...e.parser.parseInline(t.content.slice(3),t.start+3)])),!0}},BS={defineNodes:[{name:"Task",block:!0,style:u.list},{name:"TaskMarker",style:u.atom}],parseBlock:[{name:"TaskList",leaf(i,e){return/^\[[ xX]\][ \t]/.test(e.content)&&i.parentType().name=="ListItem"?new FO:null},after:"SetextHeading"}]},bu=/(www\.)|(https?:\/\/)|([\w.+-]+@)|(mailto:|xmpp:)/gy,xu=/[\w-]+(\.[\w-]+)+(\/[^\s<]*)?/gy,NS=/[\w-]+\.[\w-]+($|\/)/,wu=/[\w.+-]+@[\w-]+(\.[\w.-]+)+/gy,ku=/\/[a-zA-Z\d@.]+/gy;function Tu(i,e,t,n){let r=0;for(let s=e;s-1)return-1;let n=e+t[0].length;for(;;){let r=i[n-1],s;if(/[?!.,:*_~]/.test(r)||r==")"&&Tu(i,e,n,")")>Tu(i,e,n,"("))n--;else if(r==";"&&(s=/&(?:#\d+|#x[a-f\d]+|\w+);$/.exec(i.slice(e,n))))n=e+s.index;else break}return n}function vu(i,e){wu.lastIndex=e;let t=wu.exec(i);if(!t)return-1;let n=t[0][t[0].length-1];return n=="_"||n=="-"?-1:e+t[0].length-(n=="."?1:0)}var FS={parseInline:[{name:"Autolink",parse(i,e,t){let n=t-i.offset;bu.lastIndex=n;let r=bu.exec(i.text),s=-1;return!r||(r[1]||r[2]?s=HS(i.text,n+r[0].length):r[3]?s=vu(i.text,n):(s=vu(i.text,n+r[0].length),s>-1&&r[0]=="xmpp:"&&(ku.lastIndex=s,r=ku.exec(i.text),r&&(s=r.index+r[0].length))),s<0)?-1:(i.addElement(i.elt("URL",t,s+i.offset)),s+i.offset)}}]},Nu=[DS,BS,LS,FS];function Hu(i,e,t){return(n,r,s)=>{if(r!=i||n.char(s+1)==i)return-1;let o=[n.elt(t,s,s+1)];for(let O=s+1;O"}}}),nd=new R,rd=Lu.configure({props:[ye.add(i=>!i.is("Block")||i.is("Document")||na(i)!=null?void 0:(e,t)=>({from:t.doc.lineAt(e.from).to,to:e.to})),nd.add(na),Se.add({Document:()=>null}),St.add({Document:id})]});function na(i){let e=/^(?:ATX|Setext)Heading(\d)$/.exec(i.name);return e?+e[1]:void 0}function KS(i,e){let t=i;for(;;){let n=t.nextSibling,r;if(!n||(r=na(n.type))!=null&&r<=e)break;t=n}return t.to}var JS=Nh.of((i,e,t)=>{for(let n=M(i).resolveInner(t,-1);n&&!(n.fromt)return{from:t,to:s}}return null});function sa(i){return new fe(id,i,[JS],"markdown")}var ey=sa(rd),ty=rd.configure([Nu,Ku,Fu,Ju,{props:[ye.add({Table:(i,e)=>({from:e.doc.lineAt(i.from).to,to:i.to})})]}]),sd=sa(ty);function iy(i,e){return t=>{if(t&&i){let n=null;if(t=/\S*/.exec(t)[0],typeof i=="function"?n=i(t):n=fn.matchLanguageName(i,t,!0),n instanceof fn)return n.support?n.support.language.parser:ei.getSkippingParser(n.load());if(n)return n.parser}return e?e.parser:null}}var Vi=class{constructor(e,t,n,r,s,o,O){this.node=e,this.from=t,this.to=n,this.spaceBefore=r,this.spaceAfter=s,this.type=o,this.item=O}blank(e,t=!0){let n=this.spaceBefore+(this.node.name=="Blockquote"?">":"");if(e!=null){for(;n.length0;r--)n+=" ";return n+(t?this.spaceAfter:"")}}marker(e,t){let n=this.node.name=="OrderedList"?String(+Od(this.item,e)[2]+t):"";return this.spaceBefore+n+this.type+this.spaceAfter}};function od(i,e){let t=[];for(let r=i;r&&r.name!="Document";r=r.parent)(r.name=="ListItem"||r.name=="Blockquote"||r.name=="FencedCode")&&t.push(r);let n=[];for(let r=t.length-1;r>=0;r--){let s=t[r],o,O=e.lineAt(s.from),a=s.from-O.from;if(s.name=="FencedCode")n.push(new Vi(s,a,a,"","","",null));else if(s.name=="Blockquote"&&(o=/^ *>( ?)/.exec(O.text.slice(a))))n.push(new Vi(s,a,a+o[0].length,"",o[1],">",null));else if(s.name=="ListItem"&&s.parent.name=="OrderedList"&&(o=/^( *)\d+([.)])( *)/.exec(O.text.slice(a)))){let l=o[3],h=o[0].length;l.length>=4&&(l=l.slice(0,l.length-4),h-=4),n.push(new Vi(s.parent,a,a+h,o[1],l,o[2],s))}else if(s.name=="ListItem"&&s.parent.name=="BulletList"&&(o=/^( *)([-+*])( {1,4}\[[ xX]\])?( +)/.exec(O.text.slice(a)))){let l=o[4],h=o[0].length;l.length>4&&(l=l.slice(0,l.length-4),h-=4);let c=o[2];o[3]&&(c+=o[3].replace(/[xX]/," ")),n.push(new Vi(s.parent,a,a+h,o[1],l,c,s))}}return n}function Od(i,e){return/^(\s*)(\d+)(?=[.)])/.exec(e.sliceString(i.from,i.from+10))}function ta(i,e,t,n=0){for(let r=-1,s=i;;){if(s.name=="ListItem"){let O=Od(s,e),a=+O[2];if(r>=0){if(a!=r+1)return;t.push({from:s.from+O[1].length,to:s.from+O[0].length,insert:String(r+2+n)})}r=a}let o=s.nextSibling;if(!o)break;s=o}}function oa(i,e){let t=/^[ \t]*/.exec(i)[0].length;if(!t||e.facet(qt)!=" ")return i;let n=ke(i,4,t),r="";for(let s=n;s>0;)s>=4?(r+=" ",s-=4):(r+=" ",s--);return r+i.slice(t)}var ny=({state:i,dispatch:e})=>{let t=M(i),{doc:n}=i,r=null,s=i.changeByRange(o=>{if(!o.empty||!sd.isActiveAt(i,o.from))return r={range:o};let O=o.from,a=n.lineAt(O),l=od(t.resolveInner(O,-1),n);for(;l.length&&l[l.length-1].from>O-a.from;)l.pop();if(!l.length)return r={range:o};let h=l[l.length-1];if(h.to-h.spaceAfter.length>O-a.from)return r={range:o};let c=O>=h.to-h.spaceAfter.length&&!/\S/.test(a.text.slice(h.to));if(h.item&&c){let $=h.node.firstChild,g=h.node.getChild("ListItem","ListItem");if($.to>=O||g&&g.to0&&!/[^\s>]/.test(n.lineAt(a.from-1).text)){let Q=l.length>1?l[l.length-2]:null,x,w="";Q&&Q.item?(x=a.from+Q.from,w=Q.marker(n,1)):x=a.from+(Q?Q.to:0);let P=[{from:x,to:O,insert:w}];return h.node.name=="OrderedList"&&ta(h.item,n,P,-2),Q&&Q.node.name=="OrderedList"&&ta(Q.item,n,P),{range:S.cursor(x+w.length),changes:P}}else{let Q=td(l,i,a);return{range:S.cursor(O+Q.length+1),changes:{from:a.from,insert:Q+i.lineBreak}}}}if(h.node.name=="Blockquote"&&c&&a.from){let $=n.lineAt(a.from-1),g=/>\s*$/.exec($.text);if(g&&g.index==h.from){let Q=i.changes([{from:$.from+g.index,to:$.to},{from:a.from+h.from,to:a.to}]);return{range:o.map(Q),changes:Q}}}let f=[];h.node.name=="OrderedList"&&ta(h.item,n,f);let d=h.item&&h.item.from]*/.exec(a.text)[0].length>=h.to)for(let $=0,g=l.length-1;$<=g;$++)p+=$==g&&!d?l[$].marker(n,1):l[$].blank($a.from&&/\s/.test(a.text.charAt(m-a.from-1));)m--;return p=oa(p,i),ry(h.node,i.doc)&&(p=td(l,i,a)+i.lineBreak+p),f.push({from:m,to:O,insert:i.lineBreak+p}),{range:S.cursor(m+p.length+1),changes:f}});return r?!1:(e(i.update(s,{scrollIntoView:!0,userEvent:"input"})),!0)};function ed(i){return i.name=="QuoteMark"||i.name=="ListMark"}function ry(i,e){if(i.name!="OrderedList"&&i.name!="BulletList")return!1;let t=i.firstChild,n=i.getChild("ListItem","ListItem");if(!n)return!1;let r=e.lineAt(t.to),s=e.lineAt(n.from),o=/^[\s>]*$/.test(r.text);return r.number+(o?0:1){let t=M(i),n=null,r=i.changeByRange(s=>{let o=s.from,{doc:O}=i;if(s.empty&&sd.isActiveAt(i,s.from)){let a=O.lineAt(o),l=od(sy(t,o),O);if(l.length){let h=l[l.length-1],c=h.to-h.spaceAfter.length+(h.spaceAfter?1:0);if(o-a.from>c&&!/\S/.test(a.text.slice(c,o-a.from)))return{range:S.cursor(a.from+c),changes:{from:a.from+c,to:o}};if(o-a.from==c&&(!h.item||a.from<=h.item.from||!/\S/.test(a.text.slice(0,h.to)))){let f=a.from+h.from;if(h.item&&h.node.from=97&&i<=122||i>=65&&i<=90}function Xn(i){return i==95||i>=128||fd(i)}function aa(i){return i>=48&&i<=55||i>=97&&i<=102||i>=65&&i<=70}var b0={int:!0,integer:!0,bool:!0,boolean:!0,float:!0,double:!0,real:!0,string:!0,array:!0,object:!0,unset:!0,__proto__:null},x0=new ee(i=>{if(i.next==40){i.advance();let e=0;for(;cd(i.peek(e));)e++;let t="",n;for(;fd(n=i.peek(e));)t+=String.fromCharCode(n),e++;for(;cd(i.peek(e));)e++;i.peek(e)==41&&b0[t.toLowerCase()]&&i.acceptToken(hy)}else if(i.next==60&&i.peek(1)==60&&i.peek(2)==60){for(let n=0;n<3;n++)i.advance();for(;i.next==32||i.next==9;)i.advance();let e=i.next==39;if(e&&i.advance(),!Xn(i.next))return;let t=String.fromCharCode(i.next);for(;i.advance(),!(!Xn(i.next)&&!(i.next>=48&&i.next<=55));)t+=String.fromCharCode(i.next);if(e){if(i.next!=39)return;i.advance()}if(i.next!=10&&i.next!=13)return;for(;;){let n=i.next==10||i.next==13;if(i.advance(),i.next<0)return;if(n){for(;i.next==32||i.next==9;)i.advance();let r=!0;for(let s=0;s{i.next<0&&i.acceptToken(py)}),k0=new ee((i,e)=>{i.next==63&&e.canShift(ad)&&i.peek(1)==62&&i.acceptToken(ad)});function T0(i){let e=i.peek(1);if(e==110||e==114||e==116||e==118||e==101||e==102||e==92||e==36||e==34||e==123)return 2;if(e>=48&&e<=55){let t=2,n;for(;t<5&&(n=i.peek(t))>=48&&n<=55;)t++;return t}if(e==120&&aa(i.peek(2)))return aa(i.peek(3))?4:3;if(e==117&&i.peek(2)==123)for(let t=3;;t++){let n=i.peek(t);if(n==125)return t==2?0:t+1;if(!aa(n))break}return 0}var v0=new ee((i,e)=>{let t=!1;for(;!(i.next==34||i.next<0||i.next==36&&(Xn(i.peek(1))||i.peek(1)==123)||i.next==123&&i.peek(1)==36);t=!0){if(i.next==92){let n=T0(i);if(n){if(t)break;return i.acceptToken(uy,n)}}else if(!t&&(i.next==91||i.next==45&&i.peek(1)==62&&Xn(i.peek(2))||i.next==63&&i.peek(1)==45&&i.peek(2)==62&&Xn(i.peek(3)))&&e.canShift(dy))break;i.advance()}t&&i.acceptToken(fy)}),z0=oe({"Visibility abstract final static":u.modifier,"for foreach while do if else elseif switch try catch finally return throw break continue default case":u.controlKeyword,"endif endfor endforeach endswitch endwhile declare enddeclare goto match":u.controlKeyword,"and or xor yield unset clone instanceof insteadof":u.operatorKeyword,"function fn class trait implements extends const enum global interface use var":u.definitionKeyword,"include include_once require require_once namespace":u.moduleKeyword,"new from echo print array list as":u.keyword,null:u.null,Boolean:u.bool,VariableName:u.variableName,"NamespaceName/...":u.namespace,"NamedType/...":u.typeName,Name:u.name,"CallExpression/Name":u.function(u.variableName),"LabelStatement/Name":u.labelName,"MemberExpression/Name":u.propertyName,"MemberExpression/VariableName":u.special(u.propertyName),"ScopedExpression/ClassMemberName/Name":u.propertyName,"ScopedExpression/ClassMemberName/VariableName":u.special(u.propertyName),"CallExpression/MemberExpression/Name":u.function(u.propertyName),"CallExpression/ScopedExpression/ClassMemberName/Name":u.function(u.propertyName),"MethodDeclaration/Name":u.function(u.definition(u.variableName)),"FunctionDefinition/Name":u.function(u.definition(u.variableName)),"ClassDeclaration/Name":u.definition(u.className),UpdateOp:u.updateOperator,ArithOp:u.arithmeticOperator,LogicOp:u.logicOperator,BitOp:u.bitwiseOperator,CompareOp:u.compareOperator,ControlOp:u.controlOperator,AssignOp:u.definitionOperator,"$ ConcatOp":u.operator,LineComment:u.lineComment,BlockComment:u.blockComment,Integer:u.integer,Float:u.float,String:u.string,ShellExpression:u.special(u.string),"=> ->":u.punctuation,"( )":u.paren,"#[ [ ]":u.squareBracket,"${ { }":u.brace,"-> ?->":u.derefOperator,", ; :: : \\":u.separator,"PhpOpen PhpClose":u.processingInstruction}),Z0={__proto__:null,static:311,STATIC:311,class:333,CLASS:333},ud=pe.deserialize({version:14,states:"$GSQ`OWOOQhQaOOP%oO`OOOOO#t'#H_'#H_O%tO#|O'#DtOOO#u'#Dw'#DwQ&SOWO'#DwO&XO$VOOOOQ#u'#Dx'#DxO&lQaO'#D|O(mQdO'#E}O(tQdO'#EQO*kQaO'#EWO,zQ`O'#ETO-PQ`O'#E^O/nQaO'#E^O/uQ`O'#EfO/zQ`O'#EoO*kQaO'#EoO0VQ`O'#HhO0[Q`O'#E{O0[Q`O'#E{OOQS'#Ic'#IcO0aQ`O'#EvOOQS'#IZ'#IZO2oQdO'#IWO6tQeO'#FUO*kQaO'#FeO*kQaO'#FfO*kQaO'#FgO*kQaO'#FhO*kQaO'#FhO*kQaO'#FkOOQO'#Id'#IdO7RQ`O'#FqOOQO'#Hi'#HiO7ZQ`O'#HOO7uQ`O'#FlO8QQ`O'#H]O8]Q`O'#FvO8eQaO'#FwO*kQaO'#GVO*kQaO'#GYO8}OrO'#G]OOQS'#Iq'#IqOOQS'#Ip'#IpOOQS'#IW'#IWO,zQ`O'#GdO,zQ`O'#GfO,zQ`O'#GkOhQaO'#GmO9UQ`O'#GnO9ZQ`O'#GqO9`Q`O'#GtO9eQeO'#GuO9eQeO'#GvO9eQeO'#GwO9oQ`O'#GxO9tQ`O'#GzO9yQaO'#G{OS,5>SOJ[QdO,5;gOOQO-E;f-E;fOL^Q`O,5;gOLcQpO,5;bO0aQ`O'#EyOLkQtO'#E}OOQS'#Ez'#EzOOQS'#Ib'#IbOM`QaO,5:wO*kQaO,5;nOOQS,5;p,5;pO*kQaO,5;pOMgQdO,5UQaO,5=hO!-eQ`O'#F}O!-jQdO'#IlO!&WQdO,5=iOOQ#u,5=j,5=jO!-uQ`O,5=lO!-xQ`O,5=mO!-}Q`O,5=nO!.YQdO,5=qOOQ#u,5=q,5=qO!.eQ`O,5=rO!.eQ`O,5=rO!.mQdO'#IwO!.{Q`O'#HXO!&WQdO,5=rO!/ZQ`O,5=rO!/fQdO'#IYO!&WQdO,5=vOOQ#u-E;_-E;_O!1RQ`O,5=kOOO#u,5:^,5:^O!1^O#|O,5:^OOO#u-E;^-E;^OOOO,5>p,5>pOOQ#y1G0S1G0SO!1fQ`O1G0XO*kQaO1G0XO!2xQ`O1G0pOOQS1G0p1G0pO!4[Q`O1G0pOOQS'#I_'#I_O*kQaO'#I_OOQS1G0q1G0qO!4cQ`O'#IaO!7lQ`O'#E}O!7yQaO'#EuOOQO'#Ia'#IaO!8TQ`O'#I`O!8]Q`O,5;_OOQS'#FQ'#FQOOQS1G1U1G1UO!8bQdO1G1]O!:dQdO1G1]O!wO#(fQaO'#HdO#(vQ`O,5>vOOQS1G0d1G0dO#)OQ`O1G0dO#)TQ`O'#I^O#*mQ`O'#I^O#*uQ`O,5;ROIbQaO,5;ROOQS1G0u1G0uPOQO'#E}'#E}O#+fQdO1G1RO0aQ`O'#HgO#-hQtO,5;cO#.YQaO1G0|OOQS,5;e,5;eO#0iQtO,5;gO#0vQdO1G0cO*kQaO1G0cO#2cQdO1G1YO#4OQdO1G1[OOQO,5<^,5<^O#4`Q`O'#HjO#4nQ`O,5?ROOQO1G1w1G1wO#4vQ`O,5?ZO!&WQdO1G3TO<_Q`O1G3TOOQ#u1G3U1G3UO#4{Q`O1G3YO!1RQ`O1G3VO#5WQ`O1G3VO#5]QpO'#FoO#5kQ`O'#FoO#5{Q`O'#FoO#6WQ`O'#FoO#6`Q`O'#FsO#6eQ`O'#FtOOQO'#If'#IfO#6lQ`O'#IeO#6tQ`O,5tOOQ#u1G3b1G3bOOQ#u1G3V1G3VO!-xQ`O1G3VO!1UQ`O1G3VOOO#u1G/x1G/xO*kQaO7+%sO#MuQdO7+%sOOQS7+&[7+&[O$ bQ`O,5>yO>UQaO,5;`O$ iQ`O,5;aO$#OQaO'#HfO$#YQ`O,5>zOOQS1G0y1G0yO$#bQ`O'#EYO$#gQ`O'#IXO$#oQ`O,5:sOOQS1G0e1G0eO$#tQ`O1G0eO$#yQ`O1G0iO9yQaO1G0iOOQO,5>O,5>OOOQO-E;b-E;bOOQS7+&O7+&OO>UQaO,5;SO$%`QaO'#HeO$%jQ`O,5>xOOQS1G0m1G0mO$%rQ`O1G0mOOQS,5>R,5>ROOQS-E;e-E;eO$%wQdO7+&hO$'yQtO1G1RO$(WQdO7+%}OOQS1G0i1G0iOOQO,5>U,5>UOOQO-E;h-E;hOOQ#u7+(o7+(oO!&WQdO7+(oOOQ#u7+(t7+(tO#KmQ`O7+(tO0aQ`O7+(tOOQ#u7+(q7+(qO!-xQ`O7+(qO!1UQ`O7+(qO!1RQ`O7+(qO$)sQ`O,5UQaO,5],5>]OOQS-E;o-E;oO$.iQdO7+'hO$.yQpO7+'hO$/RQdO'#IiOOQO,5dOOQ#u,5>d,5>dOOQ#u-E;v-E;vO$;lQaO7+(lO$cOOQS-E;u-E;uO!&WQdO7+(nO$=mQdO1G2TOOQS,5>[,5>[OOQS-E;n-E;nOOQ#u7+(r7+(rO$?nQ`O'#GQO$?uQ`O'#GQO$@ZQ`O'#HUOOQO'#Hy'#HyO$@`Q`O,5=oOOQ#u,5=o,5=oO$@gQpO7+(tOOQ#u7+(x7+(xO!&WQdO7+(xO$@rQdO,5>fOOQS-E;x-E;xO$AQQdO1G4}O$A]Q`O,5=tO$AbQ`O,5=tO$AmQ`O'#H{O$BRQ`O,5?dOOQS1G3_1G3_O#KrQ`O7+(xO$BZQdO,5=|OOQS-E;`-E;`O$CvQdO<Q,5>QOOQO-E;d-E;dO$8YQaO,5:tO$FxQaO'#HcO$GVQ`O,5>sOOQS1G0_1G0_OOQS7+&P7+&PO$G_Q`O7+&TO$HtQ`O1G0nO$JZQ`O,5>POOQO,5>P,5>POOQO-E;c-E;cOOQS7+&X7+&XOOQS7+&T7+&TOOQ#u<UQaO1G1uO$KsQ`O1G1uO$LOQ`O1G1yOOQO1G1y1G1yO$LTQ`O1G1uO$L]Q`O1G1uO$MrQ`O1G1zO>UQaO1G1zOOQO,5>V,5>VOOQO-E;i-E;iOOQS<`OOQ#u-E;r-E;rOhQaO<aOOQO-E;s-E;sO!&WQdO<g,5>gOOQO-E;y-E;yO!&WQdO<UQaO,5;TOOQ#uANAzANAzO#KmQ`OANAzOOQ#uANAwANAwO!-xQ`OANAwO%)vQ`O7+'aO>UQaO7+'aOOQO7+'e7+'eO%+]Q`O7+'aO%+hQ`O7+'eO>UQaO7+'fO%+mQ`O7+'fO%-SQ`O'#HlO%-bQ`O,5?SO%-bQ`O,5?SOOQO1G1{1G1{O$+qQpOAN@dOOQSAN@dAN@dO0aQ`OAN@dO%-jQtOANCgO%-xQ`OAN@dO*kQaOAN@nO%.QQdOAN@nO%.bQpOAN@nOOQS,5>X,5>XOOQS-E;k-E;kOOQO1G2U1G2UO!&WQdO1G2UO$/dQpO1G2UO<_Q`O1G2SO!.YQdO1G2WO!&WQdO1G2SOOQO1G2W1G2WOOQO1G2S1G2SO%.jQaO'#GSOOQO1G2X1G2XOOQSAN@oAN@oOOOQ<UQaO<W,5>WO%6wQ`O,5>WOOQO-E;j-E;jO%6|Q`O1G4nOOQSG26OG26OO$+qQpOG26OO0aQ`OG26OO%7UQdOG26YO*kQaOG26YOOQO7+'p7+'pO!&WQdO7+'pO!&WQdO7+'nOOQO7+'r7+'rOOQO7+'n7+'nO%7fQ`OLD+tO%8uQ`O'#E}O%9PQ`O'#IZO!&WQdO'#HrO%:|QaO,5^,5>^OOQP-E;p-E;pOOQO1G2Y1G2YOOQ#uLD,bLD,bOOQTG27RG27RO!&WQdOLD,xO!&WQdO<wO&EPQdO1G0cO#.YQaO1G0cO&F{QdO1G1YO&HwQdO1G1[O#.YQaO1G1|O#.YQaO7+%sO&JsQdO7+%sO&LoQdO7+%}O#.YQaO7+'hO&NkQdO7+'hO'!gQdO<lQdO,5>wO(@nQdO1G0cO'.QQaO1G0cO(BpQdO1G1YO(DrQdO1G1[O'.QQaO1G1|O'.QQaO7+%sO(FtQdO7+%sO(HvQdO7+%}O'.QQaO7+'hO(JxQdO7+'hO(LzQdO<wO*1sQaO'#HdO*2TQ`O,5>vO*2]QdO1G0cO9yQaO1G0cO*4XQdO1G1YO*6TQdO1G1[O9yQaO1G1|O>UQaO'#HwO*8PQ`O,5=[O*8XQaO'#HbO*8cQ`O,5>tO9yQaO7+%sO*8kQdO7+%sO*:gQ`O1G0iO>UQaO1G0iO*;|QdO7+%}O9yQaO7+'hO*=xQdO7+'hO*?tQ`O,5>cO*AZQ`O,5=|O*BpQdO<UQaO'#FeO>UQaO'#FfO>UQaO'#FgO>UQaO'#FhO>UQaO'#FhO>UQaO'#FkO+'XQaO'#FwO>UQaO'#GVO>UQaO'#GYO+'`QaO,5:mO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO>UQaO,5;qO+'gQ`O'#I]O$8YQaO'#EaO+)PQaOG26YO$8YQaO'#I]O+*{Q`O'#I[O++TQaO,5:wO>UQaO,5;nO>UQaO,5;pO++[Q`O,5UQaO1G0XO+9hQ`O1G1]O+;TQ`O1G1]O+]Q`O1G1]O+?xQ`O1G1]O+AeQ`O1G1]O+CQQ`O1G1]O+DmQ`O1G1]O+FYQ`O1G1]O+GuQ`O1G1]O+IbQ`O1G1]O+J}Q`O1G1]O+LjQ`O1G1]O+NVQ`O1G1]O, rQ`O1G1]O,#_Q`O1G0cO>UQaO1G0cO,$zQ`O1G1YO,&gQ`O1G1[O,(SQ`O1G1|O>UQaO1G1|O>UQaO7+%sO,([Q`O7+%sO,)wQ`O7+%}O>UQaO7+'hO,+dQ`O7+'hO,+lQ`O7+'hO,-XQpO7+'hO,-aQ`O<UQaO<UQaOAN@nO,0qQ`OAN@nO,2^QpOAN@nO,2fQ`OG26YO>UQaOG26YO,4RQ`OLD+tO,5nQaO,5:}O>UQaO1G0iO,5uQ`O'#I]O$8YQaO'#FeO$8YQaO'#FfO$8YQaO'#FgO$8YQaO'#FhO$8YQaO'#FhO+)PQaO'#FhO$8YQaO'#FkO,6SQaO'#FwO,6ZQaO'#FwO$8YQaO'#GVO+)PQaO'#GVO$8YQaO'#GYO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO$8YQaO,5;qO+)PQaO,5;qO,8YQ`O'#FlO>UQaO'#EaO>UQaO'#I]O,8bQaO,5:wO,8iQaO,5:wO$8YQaO,5;nO+)PQaO,5;nO$8YQaO,5;pO,:hQ`O,5wO-IcQ`O1G0cO-KOQ`O1G0cO$8YQaO1G0cO+)PQaO1G0cO-L_Q`O1G1YO-MzQ`O1G1YO. ZQ`O1G1[O$8YQaO1G1|O$8YQaO7+%sO+)PQaO7+%sO.!vQ`O7+%sO.$cQ`O7+%sO.%rQ`O7+%}O.'_Q`O7+%}O$8YQaO7+'hO.(nQ`O7+'hO.*ZQ`O<fQ`O,5>wO.@RQ`O1G1|O!%WQ`O1G1|O0aQ`O1G1|O0aQ`O7+'hO.@ZQ`O7+'hO.@cQpO7+'hO.@kQpO<UO#X&PO~P>UO!o&SO!s&RO#b&RO~OPgOQ|OU^OW}O[8lOo=yOs#hOx8jOy8jO}`O!O]O!Q8pO!R}O!T8oO!U8kO!V8kO!Y8rO!c8iO!s&VO!y[O#U&WO#W_O#bhO#daO#ebO#peO$T8nO$]8mO$^8nO$aqO$z8qO${!OO$}}O%O}O%V|O'g{O~O!x'SP~PAOO!s&[O#b&[O~OT#TOz#RO!S#UO!b#VO!o!{O!v!yO!y!}O#S#QO#W!zO#`!|O#a!|O#s#PO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dO~O!x&nO~PCqO!x'VX!}'VX#O'VX#X'VX!n'VXV'VX!q'VX#u'VX#w'VXw'VX~P&sO!y$hO#S&oO~Oo$mOs$lO~O!o&pO~O!}&sO#S;dO#U;cO!x'OP~P9yOT6iOz6gO!S6jO!b6kO!o!{O!v8sO!y!}O#S#QO#W!zO#`!|O#a!|O#s#PO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}'PX#X'PX~O#O&tO~PGSO!}&wO#X'OX~O#X&yO~O!}'OO!x'QP~P9yO!n'PO~PCqO!m#oa!o#oa#S#oa#p#qX&s#oa!x#oa#O#oaw#oa~OT#oaz#oa!S#oa!b#oa!v#oa!y#oa#W#oa#`#oa#a#oa#s#oa#z#oa#{#oa#|#oa#}#oa$O#oa$Q#oa$R#oa$S#oa$T#oa$U#oa$V#oa$W#oa$z#oa!}#oa#X#oa!n#oaV#oa!q#oa#u#oa#w#oa~PIpO!s'RO~O!x'UO#l'SO~O!x'VX#l'VX#p#qX#S'VX#U'VX#b'VX!o'VX#O'VXw'VX!m'VX&s'VX~O#S'YO~P*kO!m$Xa&s$Xa!x$Xa!n$Xa~PCqO!m$Ya&s$Ya!x$Ya!n$Ya~PCqO!m$Za&s$Za!x$Za!n$Za~PCqO!m$[a&s$[a!x$[a!n$[a~PCqO!o!{O!y!}O#W!zO#`!|O#a!|O#s#PO$z#dOT$[a!S$[a!b$[a!m$[a!v$[a#S$[a#z$[a#{$[a#|$[a#}$[a$O$[a$Q$[a$R$[a$S$[a$T$[a$U$[a$V$[a$W$[a&s$[a!x$[a!n$[a~Oz#RO~PNyO!m$_a&s$_a!x$_a!n$_a~PCqO!y!}O!}$fX#X$fX~O!}'^O#X'ZX~O#X'`O~O!s$kO#S'aO~O]'cO~O!s'eO~O!s'fO~O$l'gO~O!`'mO#S'kO#U'lO#b'jO$drO!x'XP~P0aO!^'sO!oXO!q'rO~O!s'uO!y$hO~O!y$hO#S'wO~O!y$hO#S'yO~O#u'zO!m$sX!}$sX&s$sX~O!}'{O!m'bX&s'bX~O!m#cO&s#cO~O!q(PO#O(OO~O!m$ka&s$ka!x$ka!n$ka~PCqOl(ROw(SO!o(TO!y!}O~O!o!{O!y!}O#W!zO#`!|O#a!|O#s#PO~OT$yaz$ya!S$ya!b$ya!m$ya!v$ya#S$ya#z$ya#{$ya#|$ya#}$ya$O$ya$Q$ya$R$ya$S$ya$T$ya$U$ya$V$ya$W$ya$z$ya&s$ya!x$ya!}$ya#O$ya#X$ya!n$ya!q$yaV$ya#u$ya#w$ya~P!'WO!m$|a&s$|a!x$|a!n$|a~PCqO#W([O#`(YO#a(YO&r(ZOR&gX!o&gX#b&gX#e&gX&q&gX'f&gX~O'f(_O~P8lO!q(`O~PhO!o(cO!q(dO~O!q(`O&s(gO~PhO!a(kO~O!m(lO~P9yOZ(wOn(xO~O!s(zO~OT6iOz6gO!S6jO!b6kO!v8sO!}({O#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m'jX&s'jX~P!'WO#u)PO~O!})QO!m'`X&s'`X~Ol(RO!o(TO~Ow(SO!o)WO!q)ZO~O!m#cO!oXO&s#cO~O!o%pO!s#yO~OV)aO!})_O!m'kX&s'kX~O])cOs)cO!s#gO#peO~O!o%pO!s#gO#p)hO~OT6iOz6gO!S6jO!b6kO!v8sO!})iO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m&|X&s&|X#O&|X~P!'WOl(ROw(SO!o(TO~O!i)oO&t)oO~OT8vOz8tO!S8wO!b8xO!q)pO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#X)rO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WO!n)rO~PCqOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x'TX!}'TX~P!'WOT'VXz'VX!S'VX!b'VX!o'VX!v'VX!y'VX#S'VX#W'VX#`'VX#a'VX#p#qX#s'VX#z'VX#{'VX#|'VX#}'VX$O'VX$Q'VX$R'VX$S'VX$T'VX$U'VX$V'VX$W'VX$z'VX~O!q)tO!x'VX!}'VX~P!5xO!x#iX!}#iX~P>UO!})vO!x'SX~O!x)xO~O$z#dOT#yiz#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi$W#yi&s#yi!x#yi!}#yi#O#yi#X#yi!n#yi!q#yiV#yi#u#yi#w#yi~P!'WOz#RO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi&s#yi!x#yi!n#yi~P!'WOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi&s#yi!x#yi!n#yi~P!'WOT#TOz#RO!b#VO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dO!S#yi!m#yi&s#yi!x#yi!n#yi~P!'WOT#TOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dO!S#yi!b#yi!m#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi#|#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi#|#yi#}#yi&s#yi!x#yi!n#yi~P!'WOz#RO#S#QO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi~P!'WOz#RO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi~P!'WOz#RO$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi&s#yi!x#yi!n#yi~P!'WOz#RO$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi&s#yi!x#yi!n#yi~P!'WOz#RO$T#`O$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi&s#yi!x#yi!n#yi~P!'WOz#RO$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi&s#yi!x#yi!n#yi~P!'WOz#RO$S#_O$T#`O$V#bO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi&s#yi!x#yi!n#yi~P!'WOz#RO$W#bO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi&s#yi!x#yi!n#yi~P!'WO_)yO~P9yO!x)|O~O#S*PO~P9yOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#Ta#X#Ta#O#Ta!m#Ta&s#Ta!x#Ta!n#TaV#Ta!q#Ta~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}'Pa#X'Pa#O'Pa!m'Pa&s'Pa!x'Pa!n'PaV'Pa!q'Pa~P!'WO#S#oO#U#nO!}&WX#X&WX~P9yO!}&wO#X'Oa~O#X*SO~OT6iOz6gO!S6jO!b6kO!v8sO!}*UO#O*TO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!x'QX~P!'WO!}*UO!x'QX~O!x*WO~O!m#oi!o#oi#S#oi#p#qX&s#oi!x#oi#O#oiw#oi~OT#oiz#oi!S#oi!b#oi!v#oi!y#oi#W#oi#`#oi#a#oi#s#oi#z#oi#{#oi#|#oi#}#oi$O#oi$Q#oi$R#oi$S#oi$T#oi$U#oi$V#oi$W#oi$z#oi!}#oi#X#oi!n#oiV#oi!q#oi#u#oi#w#oi~P#*zO#l'SO!x#ka#S#ka#U#ka#b#ka!o#ka#O#kaw#ka!m#ka&s#ka~OPgOQ|OU^OW}O[4OOo5xOs#hOx3zOy3zO}`O!O]O!Q2^O!R}O!T4UO!U3|O!V3|O!Y2`O!c3xO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T4SO$]4QO$^4SO$aqO$z2_O${!OO$}}O%O}O%V|O'g{O~O#l#oa#U#oa#b#oa~PIpOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#Pi!S#Pi!b#Pi!m#Pi&s#Pi!x#Pi!n#Pi~P!'WOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#vi!S#vi!b#vi!m#vi&s#vi!x#vi!n#vi~P!'WO!m#xi&s#xi!x#xi!n#xi~PCqO!s#gO#peO!}&^X#X&^X~O!}'^O#X'Za~O!s'uO~Ow(SO!o)WO!q*fO~O!s*jO~O#S*lO#U*mO#b*kO#l'SO~O#S*lO#U*mO#b*kO$drO~P0aO#u*oO!x$cX!}$cX~O#U*mO#b*kO~O#b*pO~O#b*rO~P0aO!}*sO!x'XX~O!x*uO~O!y*wO~O!^*{O!oXO!q*zO~O!q*}O!o'ci!m'ci&s'ci~O!q+QO#O+PO~O#b$nO!m&eX!}&eX&s&eX~O!}'{O!m'ba&s'ba~OT$kiz$ki!S$ki!b$ki!m$ki!o$ki!v$ki!y$ki#S$ki#W$ki#`$ki#a$ki#s$ki#u#fa#w#fa#z$ki#{$ki#|$ki#}$ki$O$ki$Q$ki$R$ki$S$ki$T$ki$U$ki$V$ki$W$ki$z$ki&s$ki!x$ki!}$ki#O$ki#X$ki!n$ki!q$kiV$ki~OS+^O]+aOm+^Os$aO!^+dO!_+^O!`+^O!n+hO#b$nO$aqO$drO~P0aO!s+lO~O#W+nO#`+mO#a+mO~O!s+pO#b+pO$}+pO%T+oO~O!n+qO~PCqOc%XXd%XXh%XXj%XXf%XXg%XXe%XX~PhOc+uOd+sOP%WiQ%WiS%WiU%WiW%WiX%Wi[%Wi]%Wi^%Wi`%Wia%Wib%Wik%Wim%Wio%Wip%Wiq%Wis%Wit%Wiu%Wiv%Wix%Wiy%Wi|%Wi}%Wi!O%Wi!P%Wi!Q%Wi!R%Wi!T%Wi!U%Wi!V%Wi!W%Wi!X%Wi!Y%Wi!Z%Wi![%Wi!]%Wi!^%Wi!`%Wi!a%Wi!c%Wi!m%Wi!o%Wi!s%Wi!y%Wi#W%Wi#b%Wi#d%Wi#e%Wi#p%Wi$T%Wi$]%Wi$^%Wi$a%Wi$d%Wi$l%Wi$z%Wi${%Wi$}%Wi%O%Wi%V%Wi&p%Wi'g%Wi&t%Wi!n%Wih%Wij%Wif%Wig%WiY%Wi_%Wii%Wie%Wi~Oc+yOd+vOh+xO~OY+zO_+{O!n,OO~OY+zO_+{Oi%^X~Oi,QO~Oj,RO~O!m,TO~P9yO!m,VO~Of,WO~OT6iOV,XOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO~P!'WOg,YO~O!y,ZO~OZ(wOn(xOP%liQ%liS%liU%liW%liX%li[%li]%li^%li`%lia%lib%lik%lim%lio%lip%liq%lis%lit%liu%liv%lix%liy%li|%li}%li!O%li!P%li!Q%li!R%li!T%li!U%li!V%li!W%li!X%li!Y%li!Z%li![%li!]%li!^%li!`%li!a%li!c%li!m%li!o%li!s%li!y%li#W%li#b%li#d%li#e%li#p%li$T%li$]%li$^%li$a%li$d%li$l%li$z%li${%li$}%li%O%li%V%li&p%li'g%li&t%li!n%lic%lid%lih%lij%lif%lig%liY%li_%lii%lie%li~O#u,_O~O!}({O!m%da&s%da~O!x,bO~O!s%dO!m&dX!}&dX&s&dX~O!})QO!m'`a&s'`a~OS+^OY,iOm+^Os$aO!^+dO!_+^O!`+^O$aqO$drO~O!n,lO~P#JwO!o)WO~O!o%pO!s'RO~O!s#gO#peO!m&nX!}&nX&s&nX~O!})_O!m'ka&s'ka~O!s,rO~OV,sO!n%|X!}%|X~O!},uO!n'lX~O!n,wO~O!m&UX!}&UX&s&UX#O&UX~P9yO!})iO!m&|a&s&|a#O&|a~Oz#RO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT!uq!S!uq!b!uq!m!uq!v!uq&s!uq!x!uq!n!uq~P!'WO!n,|O~PCqOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#ia!}#ia~P!'WO!x&YX!}&YX~PAOO!})vO!x'Sa~O#O-QO~O!}-RO!n&{X~O!n-TO~O!x-UO~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#Vi#X#Vi~P!'WO!x&XX!}&XX~P9yO!}*UO!x'Qa~O!x-[O~OT#jqz#jq!S#jq!b#jq!m#jq!v#jq#S#jq#u#jq#w#jq#z#jq#{#jq#|#jq#}#jq$O#jq$Q#jq$R#jq$S#jq$T#jq$U#jq$V#jq$W#jq$z#jq&s#jq!x#jq!}#jq#O#jq#X#jq!n#jq!q#jqV#jq~P!'WO#l#oi#U#oi#b#oi~P#*zOz#RO!v!yO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT#Pq!S#Pq!b#Pq!m#Pq&s#Pq!x#Pq!n#Pq~P!'WO#u-dO!x$ca!}$ca~O#U-fO#b-eO~O#b-gO~O#S-hO#U-fO#b-eO#l'SO~O#b-jO#l'SO~O#u-kO!x$ha!}$ha~O!`'mO#S'kO#U'lO#b'jO$drO!x&_X!}&_X~P0aO!}*sO!x'Xa~O!oXO#l'SO~O#S-pO#b-oO!x'[P~O!oXO!q-rO~O!q-uO!o'cq!m'cq&s'cq~O!^-wO!oXO!q-rO~O!q-{O#O-zO~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m$si!}$si&s$si~P!'WO!m$jq&s$jq!x$jq!n$jq~PCqO#O-zO#l'SO~O!}-|Ow']X!o']X!m']X&s']X~O#b$nO#l'SO~OS+^O].ROm+^Os$aO!_+^O!`+^O#b$nO$aqO$drO~P0aOS+^O].ROm+^Os$aO!_+^O!`+^O#b$nO$aqO~P0aOS+^O]+aOm+^Os$aO!^+dO!_+^O!`+^O!n.ZO#b$nO$aqO$drO~P0aO!s.^O~O!s._O#b._O$}._O%T+oO~O$}.`O~O#X.aO~Oc%Xad%Xah%Xaj%Xaf%Xag%Xae%Xa~PhOc.dOd+sOP%WqQ%WqS%WqU%WqW%WqX%Wq[%Wq]%Wq^%Wq`%Wqa%Wqb%Wqk%Wqm%Wqo%Wqp%Wqq%Wqs%Wqt%Wqu%Wqv%Wqx%Wqy%Wq|%Wq}%Wq!O%Wq!P%Wq!Q%Wq!R%Wq!T%Wq!U%Wq!V%Wq!W%Wq!X%Wq!Y%Wq!Z%Wq![%Wq!]%Wq!^%Wq!`%Wq!a%Wq!c%Wq!m%Wq!o%Wq!s%Wq!y%Wq#W%Wq#b%Wq#d%Wq#e%Wq#p%Wq$T%Wq$]%Wq$^%Wq$a%Wq$d%Wq$l%Wq$z%Wq${%Wq$}%Wq%O%Wq%V%Wq&p%Wq'g%Wq&t%Wq!n%Wqh%Wqj%Wqf%Wqg%WqY%Wq_%Wqi%Wqe%Wq~Oc.iOd+vOh.hO~O!q(`O~OP6]OQ|OU^OW}O[:fOo>ROs#hOx:dOy:dO}`O!O]O!Q:kO!R}O!T:jO!U:eO!V:eO!Y:oO!c8gO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T:hO$]:gO$^:hO$aqO$z:mO${!OO$}}O%O}O%V|O'g{O~O!m.lO!q.lO~OY+zO_+{O!n.nO~OY+zO_+{Oi%^a~O!x.rO~P>UO!m.tO~O!m.tO~P9yOQ|OW}O!R}O$}}O%O}O%V|O'g{O~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m&ka!}&ka&s&ka~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m$qi!}$qi&s$qi~P!'WOS+^Om+^Os$aO!_+^O!`+^O$aqO$drO~OY/PO~P$?VOS+^Om+^Os$aO!_+^O!`+^O$aqO~O!s/QO~O!n/SO~P#JwOw(SO!o)WO#l'SO~OV/VO!m&na!}&na&s&na~O!})_O!m'ki&s'ki~O!s/XO~OV/YO!n%|a!}%|a~O]/[Os/[O!s#gO#peO!n&oX!}&oX~O!},uO!n'la~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m&Ua!}&Ua&s&Ua#O&Ua~P!'WOz#RO#S#QO#z#SO#{#WO#|#XO#}#YO$O#ZO$Q#]O$R#^O$S#_O$T#`O$U#aO$V#bO$W#bO$z#dOT!uy!S!uy!b!uy!m!uy!v!uy&s!uy!x!uy!n!uy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#hi!}#hi~P!'WO_)yO!n&VX!}&VX~P9yO!}-RO!n&{a~OT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#Vq#X#Vq~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#[i!}#[i~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#O/cO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!x&Xa!}&Xa~P!'WO#u/iO!x$ci!}$ci~O#b/jO~O#U/lO#b/kO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$ci!}$ci~P!'WO#u/mO!x$hi!}$hi~O!}/oO!x'[X~O#b/qO~O!x/rO~O!oXO!q/uO~O#l'SO!o'cy!m'cy&s'cy~O!m$jy&s$jy!x$jy!n$jy~PCqO#O/xO#l'SO~O!s#gO#peOw&aX!o&aX!}&aX!m&aX&s&aX~O!}-|Ow']a!o']a!m']a&s']a~OU$PO]0QO!R$PO!s$OO!v#}O#b$nO#p2XO~P$?uO!m#cO!o0VO&s#cO~O#X0YO~Oh0_O~OT:tOz:pO!S:vO!b:xO!m0`O!q0`O!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO~P!'WOY%]a_%]a!n%]ai%]a~PhO!x0bO~O!x0bO~P>UO!m0dO~OT6iOz6gO!S6jO!b6kO!v8sO!x0fO#O0eO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO~P!'WO!x0fO~O!x0gO#b0hO#l'SO~O!x0iO~O!s0jO~O!m#cO#u0lO&s#cO~O!s0mO~O!})_O!m'kq&s'kq~O!s0nO~OV0oO!n%}X!}%}X~OT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!n!|i!}!|i~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$cq!}$cq~P!'WO#u0vO!x$cq!}$cq~O#b0wO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$hq!}$hq~P!'WO#S0zO#b0yO!x&`X!}&`X~O!}/oO!x'[a~O#l'SO!o'c!R!m'c!R&s'c!R~O!oXO!q1PO~O!m$j!R&s$j!R!x$j!R!n$j!R~PCqO#O1RO#l'SO~OP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!n1^O!s1YO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lOh1_O~OY%[i_%[i!n%[ii%[i~PhOY%]i_%]i!n%]ii%]i~PhO!x1bO~O!x1bO~P>UO!x1eO~O!m#cO#u1iO&s#cO~O$}1jO%V1jO~O!s1kO~OV1lO!n%}a!}%}a~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#]i!}#]i~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$cy!}$cy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$hy!}$hy~P!'WO#b1nO~O!}/oO!x'[i~O!m$j!Z&s$j!Z!x$j!Z!n$j!Z~PCqOT:uOz:qO!S:wO!b:yO!v=nO#S#QO#z:sO#{:{O#|:}O#};PO$O;RO$Q;VO$R;XO$S;ZO$T;]O$U;_O$V;aO$W;aO$z#dO~P!'WOV1uO{1tO~P!5xOV1uO{1tOT&}Xz&}X!S&}X!b&}X!o&}X!v&}X!y&}X#S&}X#W&}X#`&}X#a&}X#s&}X#u&}X#w&}X#z&}X#{&}X#|&}X#}&}X$O&}X$Q&}X$R&}X$S&}X$T&}X$U&}X$V&}X$W&}X$z&}X~OP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!n1xO!s1YO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lOY%[q_%[q!n%[qi%[q~PhO!x1zO~O!x%gi~PCqOe1{O~O$}1|O%V1|O~O!s2OO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x$c!R!}$c!R~P!'WO!m$j!c&s$j!c!x$j!c!n$j!c~PCqO!s2QO~O!`2SO!s2RO~O!s2VO!m$xi&s$xi~O!s'WO~O!s*]O~OT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$ka#u$ka#w$ka&s$ka!x$ka!n$ka!q$ka#X$ka!}$ka~P!'WO#S2]O~P*kO$l$tO~P#.YOT6iOz6gO!S6jO!b6kO!v8sO#O2[O#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m'PX&s'PX!x'PX!n'PX~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#O3uO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}'PX#X'PX#u'PX#w'PX!m'PX&s'PX!x'PX!n'PXV'PX!q'PX~P!'WO#S3dO~P#.YOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$Xa#u$Xa#w$Xa&s$Xa!x$Xa!n$Xa!q$Xa#X$Xa!}$Xa~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$Ya#u$Ya#w$Ya&s$Ya!x$Ya!n$Ya!q$Ya#X$Ya!}$Ya~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$Za#u$Za#w$Za&s$Za!x$Za!n$Za!q$Za#X$Za!}$Za~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$[a#u$[a#w$[a&s$[a!x$[a!n$[a!q$[a#X$[a!}$[a~P!'WOz2aO#u$[a#w$[a!q$[a#X$[a!}$[a~PNyOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$_a#u$_a#w$_a&s$_a!x$_a!n$_a!q$_a#X$_a!}$_a~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$|a#u$|a#w$|a&s$|a!x$|a!n$|a!q$|a#X$|a!}$|a~P!'WOz2aO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOT2cOz2aO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!S#yi!m#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOT2cOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!S#yi!b#yi!m#yi#u#yi#w#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi#|#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO#S#QO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$T2nO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$S2mO$T2nO$V2pO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOz2aO$W2pO$z#dOT#yi!S#yi!b#yi!m#yi!v#yi#S#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi&s#yi!x#yi!n#yi!q#yi#X#yi!}#yi~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m#Ta#u#Ta#w#Ta&s#Ta!x#Ta!n#Ta!q#Ta#X#Ta!}#Ta~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m'Pa#u'Pa#w'Pa&s'Pa!x'Pa!n'Pa!q'Pa#X'Pa!}'Pa~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#Pi!S#Pi!b#Pi!m#Pi#u#Pi#w#Pi&s#Pi!x#Pi!n#Pi!q#Pi#X#Pi!}#Pi~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#vi!S#vi!b#vi!m#vi#u#vi#w#vi&s#vi!x#vi!n#vi!q#vi#X#vi!}#vi~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m#xi#u#xi#w#xi&s#xi!x#xi!n#xi!q#xi#X#xi!}#xi~P!'WOz2aO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT!uq!S!uq!b!uq!m!uq!v!uq#u!uq#w!uq&s!uq!x!uq!n!uq!q!uq#X!uq!}!uq~P!'WOz2aO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT#Pq!S#Pq!b#Pq!m#Pq#u#Pq#w#Pq&s#Pq!x#Pq!n#Pq!q#Pq#X#Pq!}#Pq~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$jq#u$jq#w$jq&s$jq!x$jq!n$jq!q$jq#X$jq!}$jq~P!'WOz2aO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dOT!uy!S!uy!b!uy!m!uy!v!uy#u!uy#w!uy&s!uy!x!uy!n!uy!q!uy#X!uy!}!uy~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$jy#u$jy#w$jy&s$jy!x$jy!n$jy!q$jy#X$jy!}$jy~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$j!R#u$j!R#w$j!R&s$j!R!x$j!R!n$j!R!q$j!R#X$j!R!}$j!R~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$j!Z#u$j!Z#w$j!Z&s$j!Z!x$j!Z!n$j!Z!q$j!Z#X$j!Z!}$j!Z~P!'WOT2cOz2aO!S2dO!b2eO!v4WO#S#QO#z2bO#{2fO#|2gO#}2hO$O2iO$Q2kO$R2lO$S2mO$T2nO$U2oO$V2pO$W2pO$z#dO!m$j!c#u$j!c#w$j!c&s$j!c!x$j!c!n$j!c!q$j!c#X$j!c!}$j!c~P!'WOP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S3vO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OO~P$;lOP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OO~P$;lO#u2uO#w2vO!q&zX#X&zX!}&zX~P0rOP6]OU^O[4POo8^Or2wOs#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S2tO#U2sO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OOT#xXz#xX!S#xX!b#xX!m#xX!o#xX!v#xX#`#xX#a#xX#s#xX#u#xX#w#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX&s#xX!x#xX!n#xX!q#xX#X#xX!}#xX~P$;lOP6]OU^O[4POo8^Or4xOs#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S4uO#U4tO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OOT#xXz#xX!S#xX!b#xX!o#xX!v#xX!}#xX#O#xX#X#xX#`#xX#a#xX#s#xX#u#xX#w#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX!m#xX&s#xX!x#xX!n#xXV#xX!q#xX~P$;lO!q3PO~P>UO!q5}O#O3gO~OT8vOz8tO!S8wO!b8xO!q3hO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WO!q6OO#O3kO~O!q6PO#O3oO~O#O3oO#l'SO~O#O3pO#l'SO~O#O3sO#l'SO~OP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$l$tO$z4bO${!OO~P$;lOP6]OU^O[4POo8^Os#hOx3{Oy3{O}`O!O]O!Q4aO!T4VO!U3}O!V3}O!Y4cO!c3yO!s#gO!y[O#S5eO#W_O#bhO#daO#ebO#peO$T4TO$]4RO$^4TO$aqO$z4bO${!OO~P$;lOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$Xa#O$Xa#X$Xa#u$Xa#w$Xa!m$Xa&s$Xa!x$Xa!n$XaV$Xa!q$Xa~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$Ya#O$Ya#X$Ya#u$Ya#w$Ya!m$Ya&s$Ya!x$Ya!n$YaV$Ya!q$Ya~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$Za#O$Za#X$Za#u$Za#w$Za!m$Za&s$Za!x$Za!n$ZaV$Za!q$Za~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$[a#O$[a#X$[a#u$[a#w$[a!m$[a&s$[a!x$[a!n$[aV$[a!q$[a~P!'WOz4dO!}$[a#O$[a#X$[a#u$[a#w$[aV$[a!q$[a~PNyOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$_a#O$_a#X$_a#u$_a#w$_a!m$_a&s$_a!x$_a!n$_aV$_a!q$_a~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$|a#O$|a#X$|a#u$|a#w$|a!m$|a&s$|a!x$|a!n$|aV$|a!q$|a~P!'WOz4dO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT4fOz4dO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!S#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT4fOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!S#yi!b#yi!}#yi#O#yi#X#yi#u#yi#w#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO#S#QO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$T4qO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$S4pO$T4qO$V4sO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz4dO$W4sO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#u#yi#w#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}#Ta#O#Ta#X#Ta#u#Ta#w#Ta!m#Ta&s#Ta!x#Ta!n#TaV#Ta!q#Ta~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}'Pa#O'Pa#X'Pa#u'Pa#w'Pa!m'Pa&s'Pa!x'Pa!n'PaV'Pa!q'Pa~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#Pi!S#Pi!b#Pi!}#Pi#O#Pi#X#Pi#u#Pi#w#Pi!m#Pi&s#Pi!x#Pi!n#PiV#Pi!q#Pi~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#vi!S#vi!b#vi!}#vi#O#vi#X#vi#u#vi#w#vi!m#vi&s#vi!x#vi!n#viV#vi!q#vi~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}#xi#O#xi#X#xi#u#xi#w#xi!m#xi&s#xi!x#xi!n#xiV#xi!q#xi~P!'WOz4dO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT!uq!S!uq!b!uq!v!uq!}!uq#O!uq#X!uq#u!uq#w!uq!m!uq&s!uq!x!uq!n!uqV!uq!q!uq~P!'WOz4dO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT#Pq!S#Pq!b#Pq!}#Pq#O#Pq#X#Pq#u#Pq#w#Pq!m#Pq&s#Pq!x#Pq!n#PqV#Pq!q#Pq~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$jq#O$jq#X$jq#u$jq#w$jq!m$jq&s$jq!x$jq!n$jqV$jq!q$jq~P!'WOz4dO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dOT!uy!S!uy!b!uy!v!uy!}!uy#O!uy#X!uy#u!uy#w!uy!m!uy&s!uy!x!uy!n!uyV!uy!q!uy~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$jy#O$jy#X$jy#u$jy#w$jy!m$jy&s$jy!x$jy!n$jyV$jy!q$jy~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$j!R#O$j!R#X$j!R#u$j!R#w$j!R!m$j!R&s$j!R!x$j!R!n$j!RV$j!R!q$j!R~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$j!Z#O$j!Z#X$j!Z#u$j!Z#w$j!Z!m$j!Z&s$j!Z!x$j!Z!n$j!ZV$j!Z!q$j!Z~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$j!c#O$j!c#X$j!c#u$j!c#w$j!c!m$j!c&s$j!c!x$j!c!n$j!cV$j!c!q$j!c~P!'WO#S5wO~P#.YO!y$hO#S5{O~O!x4ZO#l'SO~O!y$hO#S5|O~OT4fOz4dO!S4gO!b4hO!v6TO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!}$ka#O$ka#X$ka#u$ka#w$ka!m$ka&s$ka!x$ka!n$kaV$ka!q$ka~P!'WOT4fOz4dO!S4gO!b4hO!v6TO#O5vO#S#QO#z4eO#{4iO#|4jO#}4kO$O4lO$Q4nO$R4oO$S4pO$T4qO$U4rO$V4sO$W4sO$z#dO!m'PX#u'PX#w'PX&s'PX!x'PX!n'PX!q'PX#X'PX!}'PX~P!'WO#u4vO#w4wO!}&zX#O&zX#X&zXV&zX!q&zX~P0rO!q5QO~P>UO!q8bO#O5hO~OT8vOz8tO!S8wO!b8xO!q5iO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WO!q8cO#O5lO~O!q8dO#O5pO~O#O5pO#l'SO~O#O5qO#l'SO~O#O5tO#l'SO~O$l$tO~P9yOo5zOs$lO~O#S7oO~P9yOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$Xa#O$Xa#X$Xa!m$Xa&s$Xa!x$Xa!n$XaV$Xa!q$Xa~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$Ya#O$Ya#X$Ya!m$Ya&s$Ya!x$Ya!n$YaV$Ya!q$Ya~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$Za#O$Za#X$Za!m$Za&s$Za!x$Za!n$ZaV$Za!q$Za~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$[a#O$[a#X$[a!m$[a&s$[a!x$[a!n$[aV$[a!q$[a~P!'WOz6gO!}$[a#O$[a#X$[aV$[a!q$[a~PNyOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$_a#O$_a#X$_a!m$_a&s$_a!x$_a!n$_aV$_a!q$_a~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$ka#O$ka#X$ka!m$ka&s$ka!x$ka!n$kaV$ka!q$ka~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$|a#O$|a#X$|a!m$|a&s$|a!x$|a!n$|aV$|a!q$|a~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO!}7sO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x'jX~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO!}7uO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x&|X~P!'WOz6gO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT6iOz6gO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!S#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOT6iOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!S#yi!b#yi!}#yi#O#yi#X#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi#|#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi#|#yi#}#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO#S#QO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$T6tO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$S6sO$T6tO$V6vO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WOz6gO$W6vO$z#dOT#yi!S#yi!b#yi!v#yi!}#yi#O#yi#S#yi#X#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi!m#yi&s#yi!x#yi!n#yiV#yi!q#yi~P!'WO#S7zO~P>UO!m#Ta&s#Ta!x#Ta!n#Ta~PCqO!m'Pa&s'Pa!x'Pa!n'Pa~PCqO#S;dO#U;cO!x&WX!}&WX~P9yO!}7lO!x'Oa~Oz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#Pi!S#Pi!b#Pi!}#Pi#O#Pi#X#Pi!m#Pi&s#Pi!x#Pi!n#PiV#Pi!q#Pi~P!'WOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#vi!S#vi!b#vi!}#vi#O#vi#X#vi!m#vi&s#vi!x#vi!n#viV#vi!q#vi~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}#xi#O#xi#X#xi!m#xi&s#xi!x#xi!n#xiV#xi!q#xi~P!'WO!}7sO!x%da~O!x&UX!}&UX~P>UO!}7uO!x&|a~Oz6gO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT!uq!S!uq!b!uq!v!uq!}!uq#O!uq#X!uq!m!uq&s!uq!x!uq!n!uqV!uq!q!uq~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#Vi!}#Vi~P!'WOz6gO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT#Pq!S#Pq!b#Pq!}#Pq#O#Pq#X#Pq!m#Pq&s#Pq!x#Pq!n#PqV#Pq!q#Pq~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$jq#O$jq#X$jq!m$jq&s$jq!x$jq!n$jqV$jq!q$jq~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x&ka!}&ka~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x&Ua!}&Ua~P!'WOz6gO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dOT!uy!S!uy!b!uy!v!uy!}!uy#O!uy#X!uy!m!uy&s!uy!x!uy!n!uyV!uy!q!uy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!x#Vq!}#Vq~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$jy#O$jy#X$jy!m$jy&s$jy!x$jy!n$jyV$jy!q$jy~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$j!R#O$j!R#X$j!R!m$j!R&s$j!R!x$j!R!n$j!RV$j!R!q$j!R~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$j!Z#O$j!Z#X$j!Z!m$j!Z&s$j!Z!x$j!Z!n$j!ZV$j!Z!q$j!Z~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!}$j!c#O$j!c#X$j!c!m$j!c&s$j!c!x$j!c!n$j!cV$j!c!q$j!c~P!'WO#S8[O~P9yO#O8ZO!m'PX&s'PX!x'PX!n'PXV'PX!q'PX~PGSO!y$hO#S8`O~O!y$hO#S8aO~O#u6zO#w6{O!}&zX#O&zX#X&zXV&zX!q&zX~P0rOr6|O#S#oO#U#nO!}#xX#O#xX#X#xXV#xX!q#xX~P2yOr;iO#S9XO#U9VOT#xXz#xX!S#xX!b#xX!m#xX!o#xX!q#xX!v#xX#`#xX#a#xX#s#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX!n#xX!}#xX~P9yOr9WO#S9WO#U9WOT#xXz#xX!S#xX!b#xX!o#xX!v#xX#`#xX#a#xX#s#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX~P9yOr9]O#S;dO#U;cOT#xXz#xX!S#xX!b#xX!o#xX!q#xX!v#xX#`#xX#a#xX#s#xX#z#xX#{#xX#|#xX#}#xX$O#xX$Q#xX$R#xX$S#xX$U#xX$V#xX$W#xX#X#xX!x#xX!}#xX~P9yO$l$tO~P>UO!q7XO~P>UOT6iOz6gO!S6jO!b6kO!v8sO#O7iO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!x'PX!}'PX~P!'WOP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lO!}7lO!x'OX~O#S9yO~P>UOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$Xa#X$Xa!x$Xa!}$Xa~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$Ya#X$Ya!x$Ya!}$Ya~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$Za#X$Za!x$Za!}$Za~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$[a#X$[a!x$[a!}$[a~P!'WOz8tO$z#dOT$[a!S$[a!b$[a!q$[a!v$[a#S$[a#z$[a#{$[a#|$[a#}$[a$O$[a$Q$[a$R$[a$S$[a$T$[a$U$[a$V$[a$W$[a#X$[a!x$[a!}$[a~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$_a#X$_a!x$_a!}$_a~P!'WO!q=dO#O7rO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$ka#X$ka!x$ka!}$ka~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$|a#X$|a!x$|a!}$|a~P!'WOT8vOz8tO!S8wO!b8xO!q7wO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WOz8tO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#X#yi!x#yi!}#yi~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi#X#yi!x#yi!}#yi~P!'WOT8vOz8tO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!S#yi!q#yi#X#yi!x#yi!}#yi~P!'WOT8vOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!S#yi!b#yi!q#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#|#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#|#yi#}#yi#X#yi!x#yi!}#yi~P!'WOz8tO#S#QO$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#z#yi#{#yi#|#yi#}#yi$O#yi#X#yi!x#yi!}#yi~P!'WOz8tO$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi#X#yi!x#yi!}#yi~P!'WOz8tO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi#X#yi!x#yi!}#yi~P!'WOz8tO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi#X#yi!x#yi!}#yi~P!'WOz8tO$T9RO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$U#yi#X#yi!x#yi!}#yi~P!'WOz8tO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi#X#yi!x#yi!}#yi~P!'WOz8tO$S9QO$T9RO$V9TO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$U#yi#X#yi!x#yi!}#yi~P!'WOz8tO$W9TO$z#dOT#yi!S#yi!b#yi!q#yi!v#yi#S#yi#z#yi#{#yi#|#yi#}#yi$O#yi$Q#yi$R#yi$S#yi$T#yi$U#yi$V#yi#X#yi!x#yi!}#yi~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#Pi!S#Pi!b#Pi!q#Pi#X#Pi!x#Pi!}#Pi~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#vi!S#vi!b#vi!q#vi#X#vi!x#vi!}#vi~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q#xi#X#xi!x#xi!}#xi~P!'WO!q=eO#O7|O~Oz8tO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT!uq!S!uq!b!uq!q!uq!v!uq#X!uq!x!uq!}!uq~P!'WOz8tO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT#Pq!S#Pq!b#Pq!q#Pq#X#Pq!x#Pq!}#Pq~P!'WO!q=iO#O8TO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$jq#X$jq!x$jq!}$jq~P!'WO#O8TO#l'SO~Oz8tO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dOT!uy!S!uy!b!uy!q!uy!v!uy#X!uy!x!uy!}!uy~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$jy#X$jy!x$jy!}$jy~P!'WO#O8UO#l'SO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$j!R#X$j!R!x$j!R!}$j!R~P!'WO#O8XO#l'SO~OT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$j!Z#X$j!Z!x$j!Z!}$j!Z~P!'WOT8vOz8tO!S8wO!b8xO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO!q$j!c#X$j!c!x$j!c!}$j!c~P!'WO#S:bO~P>UO#O:aO!q'PX!x'PX~PGSO$l$tO~P$8YOP6]OU^O[9WOo>SOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$l$tO$z:nO${!OO~P$;lOo8_Os$lO~O#SSOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#SSOs#hOx9WOy9WO}`O!O]O!Q:lO!T9WO!U9WO!V9WO!Y9WO!c8hO!s#gO!y[O#S=UO#W_O#bhO#daO#ebO#peO$T:iO$]9WO$^:iO$aqO$z:nO${!OO~P$;lOT6iOz6gO!S6jO!b6kO!v8sO#O=SO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO~P!'WOT6iOz6gO!S6jO!b6kO!v8sO#O=RO#S#QO#z6hO#{6lO#|6mO#}6nO$O6oO$Q6qO$R6rO$S6sO$T6tO$U6uO$V6vO$W6vO$z#dO!m'PX!q'PX!n'PX!}'PX~P!'WOT&zXz&zX!S&zX!b&zX!o&zX!q&zX!v&zX!y&zX#S&zX#W&zX#`&zX#a&zX#s&zX#z&zX#{&zX#|&zX#}&zX$O&zX$Q&zX$R&zX$S&zX$T&zX$U&zX$V&zX$W&zX$z&zX!}&zX~O#u9ZO#w9[O#X&zX!x&zX~P.8oO!y$hO#S=^O~O!q9hO~P>UO!y$hO#S=cO~O!q>OO#O9}O~OT8vOz8tO!S8wO!b8xO!q:OO!v=ZO#S#QO#z8uO#{8yO#|8zO#}8{O$O8|O$Q9OO$R9PO$S9QO$T9RO$U9SO$V9TO$W9TO$z#dO~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m#Ta!q#Ta!n#Ta!}#Ta~P!'WOT:tOz:pO!S:vO!b:xO!v=mO#S#QO#z:rO#{:zO#|:|O#};OO$O;QO$Q;UO$R;WO$S;YO$T;[O$U;^O$V;`O$W;`O$z#dO!m'Pa!q'Pa!n'Pa!}'Pa~P!'WO!q>PO#O:RO~O!q>QO#O:YO~O#O:YO#l'SO~O#O:ZO#l'SO~O#O:_O#l'SO~O#u;eO#w;gO!m&zX!n&zX~P.8oO#u;fO#w;hOT&zXz&zX!S&zX!b&zX!o&zX!v&zX!y&zX#S&zX#W&zX#`&zX#a&zX#s&zX#z&zX#{&zX#|&zX#}&zX$O&zX$Q&zX$R&zX$S&zX$T&zX$U&zX$V&zX$W&zX$z&zX~O!q;tO~P>UO!q;uO~P>UO!q>XO#OYO#O9WO~OT8vOz8tO!S8wO!b8xO!qZO#O[O#O<{O~O#O<{O#l'SO~O#O9WO#l'SO~O#O<|O#l'SO~O#O=PO#l'SO~O!y$hO#S=|O~Oo=[Os$lO~O!y$hO#S=}O~O!y$hO#S>UO~O!y$hO#S>VO~O!y$hO#S>WO~Oo={Os$lO~Oo>TOs$lO~Oo>SOs$lO~O%O$U$}$d!d$V#b%V#e'g!s#d~",goto:"%&y'mPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPPP'nP'uPP'{(OPPP(hP(OP(O*ZP*ZPP2W:j:mPP*Z:sBpPBsPBsPP:sCSCVCZ:s:sPPPC^PP:sK^!$S!$S:s!$WP!$W!$W!%UP!.]!7pP!?oP*ZP*Z*ZPPPPP!?rPPPPPPP*Z*Z*Z*ZPP*Z*ZP!E]!GRP!GV!Gy!GR!GR!HP*Z*ZP!HY!Hl!Ib!J`!Jd!J`!Jo!J}!J}!KV!KY!KY*ZPP*ZPP!K^#%[#%[#%`P#%fP(O#%j(O#&S#&V#&V#&](O#&`(O(O#&f#&i(O#&r#&u(O(O(O(O(O#&x(O(O(O(O(O(O(O(O(O#&{!KR(O(O#'_#'o#'r(O(OP#'u#'|#(S#(o#(y#)P#)Z#)b#)h#*d#4X#5T#5Z#5a#5k#5q#5w#6]#6c#6i#6o#6u#6{#7R#7]#7g#7m#7s#7}PPPPPPPP#8T#8X#8}#NO#NR#N]$(f$(r$)X$)_$)b$)e$)k$,X$5v$>_$>b$>h$>k$>n$>w$>{$?X$?k$Bk$CO$C{$K{PP%%y%%}%&Z%&p%&vQ!nQT!qV!rQUOR%x!mRVO}!hPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1a|!hPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1aQ%^!ZQ%g!aQ%l!eQ'd$dQ'q$iQ)[%kQ*y'tQ,](xU-n*v*x+OQ.W+cQ.{,[S/t-s-tQ0T.SS0}/s/wQ1V0RQ1o1OR2P1p0u!OPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uO>P>Q>X>Y>Z>[3ZfPVX[_bgjklmnoprxyz!S!W!X!Y!]!e!f!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t#}$R$S$U$h$y$}%P%R%S%T%U%c%p%r%}&S&W&p&s&t&w'O'S'U'Y'^'i'm'r'z(O(P(R(S(T(`(l({)P)Z)_)c)i)p)t)v*P*T*U*f*o*s*z*}+P+Q+]+`+d+g+r+u+z,T,V,X,Z,u-Q-R-d-k-r-u-z-{-|.Q.b.d.l.t/[/c/i/m/u/x0V0`0a0d0e0i0v1P1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w5}6O6P6T6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8b8c8d8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uO>P>Q>X>Y>Z>[3scPVX[_bdegjklmnoprxyz!S!W!X!Y!]!e!f!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t#{#}$R$S$U$h$y$}%P%R%S%T%U%c%m%n%p%r%}&S&W&p&s&t&w'O'S'U'Y'^'i'm'r'z(O(P(R(S(T(`(l({)P)Z)^)_)c)g)h)i)p)t)v*P*T*U*f*o*s*z*}+P+Q+]+`+d+g+r+u+z,T,V,X,Z,u,x-Q-R-d-k-r-u-z-{-|.Q.b.d.l.t/[/c/i/m/u/x0V0`0a0d0e0i0v1P1R1]1a2W2X2Y2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w5}6O6P6T6]6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8b8c8d8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uO>P>Q>X>Y>Z>[0phPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0`0a0d0e0i0v1R1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uRS=p>S>VS=s>T>UR=t>WT'n$h*s!csPVXt!S!j!r!s!w$h$}%P%S%U'i(T(`)W*s+]+g+r+u,g,k.b.d.l0`0a0i1aQ$^rR*`'^Q*x'sQ-t*{R/w-wQ(W$tQ)U%hQ)n%vQ*i'fQ+k(XR-c*jQ(V$tQ)Y%jQ)m%vQ*e'eS*h'f)nS+j(W(XS-b*i*jQ.]+kQ/T,mQ/e-`R/g-cQ(U$tQ)T%hQ)V%iQ)l%vU*g'f)m)nU+i(V(W(XQ,f)UU-a*h*i*jS.[+j+kS/f-b-cQ0X.]R0t/gT+e(T+g[%e!_$b'c+a.R0QR,d)Qb$ov(T+[+]+`+g.P.Q0PR+T'{S+e(T+gT,j)W,kR0W.XT1[0V1]0w|PVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X,_-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uO>P>Q>X>Y>Z>[R2Y2X|tPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1aW$`t'i+],gS'i$h*sS+](T+gT,g)W,kQ'_$^R*a'_Q*t'oR-m*tQ/p-oS0{/p0|R0|/qQ-}+XR/|-}Q+g(TR.Y+gS+`(T+gS,h)W,kQ.Q+]W.T+`,h.Q/OR/O,gQ)R%eR,e)RQ'|$oR+U'|Q1]0VR1w1]Q${{R(^${Q+t(aR.c+tQ+w(bR.g+wQ+}(cQ,P(dT.m+},PQ(|%`S,a(|7tR7t7VQ(y%^R,^(yQ,k)WR/R,kQ)`%oS,q)`/WR/W,rQ,v)dR/^,vT!uV!rj!iPVX!j!r!s!w(`+r.l0`0a1aQ%Q!SQ(a$}W(h%P%S%U0iQ.e+uQ0Z.bR0[.d|ZPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1aQ#f[U#m_#s&wQ#wbQ$VkQ$WlQ$XmQ$YnQ$ZoQ$[pQ$sx^$uy2_4b6e8q:m:nQ$vzQ%W!WQ%Y!XQ%[!YW%`!]%R(l,VU%s!g&p-RQ%|!yQ&O!zQ&Q!{S&U!})v^&^#R2a4d6g8t:p:qQ&_#SQ&`#TQ&a#UQ&b#VQ&c#WQ&d#XQ&e#YQ&f#ZQ&g#[Q&h#]Q&i#^Q&j#_Q&k#`Q&l#aQ&m#bQ&u#nQ&v#oS&{#t'OQ'X$RQ'Z$SQ'[$UQ(]$yQ(p%TQ)q%}Q)s&SQ)u&WQ*O&tS*['U4ZQ*^'Y^*_2[3u5v8Z:a=R=SQ+S'zQ+V(OQ,`({Q,c)PQ,y)iQ,{)pQ,})tQ-V*PQ-W*TQ-X*U^-]2]3v5w8[:b=T=UQ-i*oQ-x+PQ.k+zQ.w,XQ/`-QQ/h-dQ/n-kQ/y-zQ0r/cQ0u/iQ0x/mQ1Q/xU1X0V1]9WQ1d0eQ1m0vQ1q1RQ2Z2^Q2qjQ2r3yQ2x3zQ2y3|Q2z4OQ2{4QQ2|4SQ2}4UQ3O2`Q3Q2bQ3R2cQ3S2dQ3T2eQ3U2fQ3V2gQ3W2hQ3X2iQ3Y2jQ3Z2kQ3[2lQ3]2mQ3^2nQ3_2oQ3`2pQ3a2sQ3b2tQ3c2uQ3e2vQ3f2wQ3i3PQ3j3dQ3l3gQ3m3hQ3n3kQ3q3oQ3r3pQ3t3sQ4Y4WQ4y3{Q4z3}Q4{4PQ4|4RQ4}4TQ5O4VQ5P4cQ5R4eQ5S4fQ5T4gQ5U4hQ5V4iQ5W4jQ5X4kQ5Y4lQ5Z4mQ5[4nQ5]4oQ5^4pQ5_4qQ5`4rQ5a4sQ5b4tQ5c4uQ5d4vQ5f4wQ5g4xQ5j5QQ5k5eQ5m5hQ5n5iQ5o5lQ5r5pQ5s5qQ5u5tQ6Q4aQ6R3xQ6V6TQ6}6^Q7O6_Q7P6`Q7Q6aQ7R6bQ7S6cQ7T6dQ7U6fU7V,T.t0dQ7W%cQ7Y6hQ7Z6iQ7[6jQ7]6kQ7^6lQ7_6mQ7`6nQ7a6oQ7b6pQ7c6qQ7d6rQ7e6sQ7f6tQ7g6uQ7h6vQ7j6xQ7k6yQ7n6zQ7p6{Q7q6|Q7x7XQ7y7iQ7{7oQ7}7rQ8O7sQ8P7uQ8Q7wQ8R7zQ8S7|Q8V8TQ8W8UQ8Y8XQ8]8fU9U#k&s7lQ9^8jQ9_8kQ9`8lQ9a8mQ9b8nQ9c8oQ9e8pQ9f8rQ9g8sQ9i8uQ9j8vQ9k8wQ9l8xQ9m8yQ9n8zQ9o8{Q9p8|Q9q8}Q9r9OQ9s9PQ9t9QQ9u9RQ9v9SQ9w9TQ9x9ZQ9z9[Q9{9]Q:P9hQ:Q9yQ:T9}Q:V:OQ:W:RQ:[:YQ:^:ZQ:`:_Q:c8iQ;j:dQ;k:eQ;l:fQ;m:gQ;n:hQ;o:iQ;p:jQ;q:kQ;r:lQ;s:oQ;v:rQ;w:sQ;x:tQ;y:uQ;z:vQ;{:wQ;|:xQ;}:yQOQ=h>PQ=j>QQ=u>XQ=v>YQ=w>ZR=x>[0t!OPVX[_bjklmnopxyz!S!W!X!Y!]!g!j!r!s!w!y!z!{!}#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b#k#n#o#s#t$R$S$U$y$}%P%R%S%T%U%c%}&S&W&p&s&t&w'O'U'Y'z(O(`(l({)P)i)p)t)v*P*T*U*o+P+r+u+z,T,V,X-Q-R-d-k-z.b.d.l.t/c/i/m/x0V0`0a0d0e0i0v1R1]1a2[2]2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3u3v3x3y3z3{3|3}4O4P4Q4R4S4T4U4V4W4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t5v5w6T6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6x6y6z6{6|7X7i7l7o7r7s7u7w7z7|8T8U8X8Z8[8f8g8h8i8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9V9W9X9Z9[9]9h9y9}:O:R:Y:Z:_:a:b:d:e:f:g:h:i:j:k:l:m:n:o:p:q:r:s:t:u:v:w:x:y:z:{:|:};O;P;Q;R;S;T;U;V;W;X;Y;Z;[;];^;_;`;a;c;d;e;f;g;h;i;t;uO>P>Q>X>Y>Z>[S$]r'^Q%k!eS%o!f%rQ)b%pU+X(R(S+dQ,p)_Q,t)cQ/Z,uQ/{-|R0p/[|vPVX!S!j!r!s!w$}%P%S%U(`+r+u.b.d.l0`0a0i1a#U#i[bklmnopxyz!W!X!Y!{#R#S#T#U#V#W#X#Y#Z#[#]#^#_#`#a#b$R$S$U$y%}&S'Y(O)p+P-z/x0e1R2[2]6x6yd+^(T)W+]+`+g,g,h,k.Q/O!t6w'U2^2_2`2a2b2c2d2e2f2g2h2i2j2k2l2m2n2o2p2s2t2u2v2w3P3d3g3h3k3o3p3s3z3|4O4Q4S4U5v5w!x;b3u3v3x3y3{3}4P4R4T4V4Z4a4b4c4d4e4f4g4h4i4j4k4l4m4n4o4p4q4r4s4t4u4v4w4x5Q5e5h5i5l5p5q5t$O=z_j!]!g#k#n#o#s#t%R%T&p&s&t&w'O'z(l({)P)i*P*U,V,X-R6^6_6`6a6b6c6d6e6f6g6h6i6j6k6l6m6n6o6p6q6r6s6t6u6v6z6{6|7X7l7o7r7w7|8T8U8X8Z8[8f8g8h8i#|>]!y!z!}%c&W)t)v*T*o,T-d-k.t/c/i/m0d0v4W6T7i7s7u7z8j8k8l8m8n8o8p8q8r8s8t8u8v8w8x8y8z8{8|8}9O9P9Q9R9S9T9Z9[9]9h9y9}:O:R:Y:Z:_:a:b;c;d=Z=m=n!v>^+z-Q9V9X:d:e:f:g:h:j:k:m:o:p:r:t:v:x:z:|;O;Q;S;U;W;Y;[;^;`;e;g;i;t_0V1]9W:i:l:n:q:s:u:w:y:{:};P;R;T;V;X;Z;];_;a;f;h;u AssignmentExpression ArrayExpression ValueList & VariadicUnpacking ... Pair [ ] ListExpression ValueList Pair Pair SubscriptExpression MemberExpression -> ?-> VariableName DynamicVariable $ ${ CallExpression ArgList NamedArgument SpreadArgument CastExpression UnionType LogicOp OptionalType NamedType QualifiedName \\ NamespaceName ScopedExpression :: ClassMemberName AssignOp UpdateExpression UpdateOp YieldExpression BinaryExpression LogicOp LogicOp LogicOp BitOp BitOp BitOp CompareOp CompareOp BitOp ArithOp ConcatOp ArithOp ArithOp IncludeExpression RequireExpression CloneExpression UnaryExpression ControlOp LogicOp PrintIntrinsic FunctionExpression static ParamList Parameter #[ Attributes Attribute VariadicParameter PropertyParameter UseList ArrowFunction NewExpression class BaseClause ClassInterfaceClause DeclarationList ConstDeclaration VariableDeclarator PropertyDeclaration VariableDeclarator MethodDeclaration UseDeclaration UseList UseInsteadOfClause UseAsClause UpdateExpression ArithOp ShellExpression ThrowExpression Integer Float String MemberExpression SubscriptExpression UnaryExpression ArithOp Interpolation String IfStatement ColonBlock SwitchStatement Block CaseStatement DefaultStatement ColonBlock WhileStatement EmptyStatement DoStatement ForStatement ForSpec SequenceExpression ForeachStatement ForSpec Pair GotoStatement ContinueStatement BreakStatement ReturnStatement TryStatement CatchDeclarator DeclareStatement EchoStatement UnsetStatement ConstDeclaration FunctionDefinition ClassDeclaration InterfaceDeclaration TraitDeclaration EnumDeclaration EnumBody EnumCase NamespaceDefinition NamespaceUseDeclaration UseGroup UseClause UseClause GlobalDeclaration FunctionStaticDeclaration Program",maxTerm:304,nodeProps:[["group",-36,2,8,49,81,83,85,88,93,94,102,106,107,110,111,114,118,123,126,130,132,133,147,148,149,150,153,154,164,165,179,181,182,183,184,185,191,"Expression",-28,74,78,80,82,192,194,199,201,202,205,208,209,210,211,212,214,215,216,217,218,219,220,221,222,225,226,230,231,"Statement",-3,119,121,122,"Type"],["isolate",-4,66,67,70,191,""],["openedBy",69,"phpOpen",76,"{",86,"(",101,"#["],["closedBy",71,"phpClose",77,"}",87,")",158,"]"]],propSources:[z0],skippedNodes:[0],repeatNodeCount:29,tokenData:"!F|_R!]OX$zXY&^YZ'sZ]$z]^&^^p$zpq&^qr)Rrs+Pst+otu2buv5evw6rwx8Vxy>]yz>yz{?g{|@}|}Bb}!OCO!O!PDh!P!QKT!Q!R!!o!R![!$q![!]!,P!]!^!-a!^!_!-}!_!`!1S!`!a!2d!a!b!3t!b!c!7^!c!d!7z!d!e!9W!e!}!7z!}#O!;^#O#P!;z#P#Q!V<%lO8VR9WV&wP%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X<%lO9mQ9rV%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X<%lO9mQ:^O%VQQ:aRO;'S9m;'S;=`:j;=`O9mQ:oW%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X;=`<%l9m<%lO9mQ;[P;=`<%l9mR;fV&wP%VQOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRV<%l~8V~O8V~~%fR=OW&wPOY8VYZ9PZ!^8V!^!_;{!_;'S8V;'S;=`=h;=`<%l9m<%lO8VR=mW%VQOw9mwx:Xx#O9m#O#P:^#P;'S9m;'S;=`;X;=`<%l8V<%lO9mR>YP;=`<%l8VR>dV!yQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV?QV!xU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR?nY&wP$VQOY$zYZ%fZz$zz{@^{!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR@eW$WQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zRAUY$TQ&wPOY$zYZ%fZ{$z{|At|!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zRA{V$zQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRBiV!}Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$z_CXZ$TQ%TW&wPOY$zYZ%fZ}$z}!OAt!O!^$z!^!_%k!_!`6U!`!aCz!a;'S$z;'S;=`&W<%lO$zVDRV#`U&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zVDo[&wP$UQOY$zYZ%fZ!O$z!O!PEe!P!Q$z!Q![Fs![!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zVEjX&wPOY$zYZ%fZ!O$z!O!PFV!P!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zVF^V#UU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRFz_&wP%OQOY$zYZ%fZ!Q$z!Q![Fs![!^$z!^!_%k!_!g$z!g!hGy!h#R$z#R#SJc#S#X$z#X#YGy#Y;'S$z;'S;=`&W<%lO$zRHO]&wPOY$zYZ%fZ{$z{|Hw|}$z}!OHw!O!Q$z!Q![Ii![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRH|X&wPOY$zYZ%fZ!Q$z!Q![Ii![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zRIpZ&wP%OQOY$zYZ%fZ!Q$z!Q![Ii![!^$z!^!_%k!_#R$z#R#SHw#S;'S$z;'S;=`&W<%lO$zRJhX&wPOY$zYZ%fZ!Q$z!Q![Fs![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zVK[[&wP$VQOY$zYZ%fZz$zz{LQ{!P$z!P!Q,o!Q!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zVLVX&wPOYLQYZLrZzLQz{N_{!^LQ!^!_! s!_;'SLQ;'S;=`!!i<%lOLQVLwT&wPOzMWz{Mj{;'SMW;'S;=`NX<%lOMWUMZTOzMWz{Mj{;'SMW;'S;=`NX<%lOMWUMmVOzMWz{Mj{!PMW!P!QNS!Q;'SMW;'S;=`NX<%lOMWUNXO!eUUN[P;=`<%lMWVNdZ&wPOYLQYZLrZzLQz{N_{!PLQ!P!Q! V!Q!^LQ!^!_! s!_;'SLQ;'S;=`!!i<%lOLQV! ^V!eU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV! vZOYLQYZLrZzLQz{N_{!aLQ!a!bMW!b;'SLQ;'S;=`!!i<%l~LQ~OLQ~~%fV!!lP;=`<%lLQZ!!vm&wP$}YOY$zYZ%fZ!O$z!O!PFs!P!Q$z!Q![!$q![!^$z!^!_%k!_!d$z!d!e!&o!e!g$z!g!hGy!h!q$z!q!r!(a!r!z$z!z!{!){!{#R$z#R#S!%}#S#U$z#U#V!&o#V#X$z#X#YGy#Y#c$z#c#d!(a#d#l$z#l#m!){#m;'S$z;'S;=`&W<%lO$zZ!$xa&wP$}YOY$zYZ%fZ!O$z!O!PFs!P!Q$z!Q![!$q![!^$z!^!_%k!_!g$z!g!hGy!h#R$z#R#S!%}#S#X$z#X#YGy#Y;'S$z;'S;=`&W<%lO$zZ!&SX&wPOY$zYZ%fZ!Q$z!Q![!$q![!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zZ!&tY&wPOY$zYZ%fZ!Q$z!Q!R!'d!R!S!'d!S!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zZ!'k[&wP$}YOY$zYZ%fZ!Q$z!Q!R!'d!R!S!'d!S!^$z!^!_%k!_#R$z#R#S!&o#S;'S$z;'S;=`&W<%lO$zZ!(fX&wPOY$zYZ%fZ!Q$z!Q!Y!)R!Y!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zZ!)YZ&wP$}YOY$zYZ%fZ!Q$z!Q!Y!)R!Y!^$z!^!_%k!_#R$z#R#S!(a#S;'S$z;'S;=`&W<%lO$zZ!*Q]&wPOY$zYZ%fZ!Q$z!Q![!*y![!^$z!^!_%k!_!c$z!c!i!*y!i#T$z#T#Z!*y#Z;'S$z;'S;=`&W<%lO$zZ!+Q_&wP$}YOY$zYZ%fZ!Q$z!Q![!*y![!^$z!^!_%k!_!c$z!c!i!*y!i#R$z#R#S!){#S#T$z#T#Z!*y#Z;'S$z;'S;=`&W<%lO$zR!,WX!qQ&wPOY$zYZ%fZ![$z![!]!,s!]!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!,zV#sQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!-hV!mU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!.S[$RQOY$zYZ%fZ!^$z!^!_!.x!_!`!/i!`!a*c!a!b!0]!b;'S$z;'S;=`&W<%l~$z~O$z~~%fR!/PW$SQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR!/pX$RQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`$z!`!a*c!a;'S$z;'S;=`&W<%lO$zP!0bR!iP!_!`!0k!r!s!0p#d#e!0pP!0pO!iPP!0sQ!j!k!0y#[#]!0yP!0|Q!r!s!0k#d#e!0kV!1ZX#uQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`)r!`!a!1v!a;'S$z;'S;=`&W<%lO$zV!1}V#OU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!2kX$RQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`!3W!`!a!.x!a;'S$z;'S;=`&W<%lO$zR!3_V$RQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!3{[!vQ&wPOY$zYZ%fZ}$z}!O!4q!O!^$z!^!_%k!_!`$z!`!a!6P!a!b!6m!b;'S$z;'S;=`&W<%lO$zV!4vX&wPOY$zYZ%fZ!^$z!^!_%k!_!`$z!`!a!5c!a;'S$z;'S;=`&W<%lO$zV!5jV#aU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!6WV!gU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!6tW#zQ&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`;'S$z;'S;=`&W<%lO$zR!7eV$]Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$z_!8Ra&wP!s^OY$zYZ%fZ!Q$z!Q![!7z![!^$z!^!_%k!_!c$z!c!}!7z!}#R$z#R#S!7z#S#T$z#T#o!7z#o$g$z$g&j!7z&j;'S$z;'S;=`&W<%lO$z_!9_e&wP!s^OY$zYZ%fZr$zrs!:psw$zwx8Vx!Q$z!Q![!7z![!^$z!^!_%k!_!c$z!c!}!7z!}#R$z#R#S!7z#S#T$z#T#o!7z#o$g$z$g&j!7z&j;'S$z;'S;=`&W<%lO$zR!:wV&wP'gQOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!;eV#WU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!mZ!^!=u!^!_!@u!_#O!=u#O#P!Aq#P#S!=u#S#T!B{#T;'S!=u;'S;=`!Ci<%lO!=uR!>rV&wPO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o<%lO!?XQ!?[VO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o<%lO!?XQ!?tRO;'S!?X;'S;=`!?};=`O!?XQ!@QWO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o;=`<%l!?X<%lO!?XQ!@oO${QQ!@rP;=`<%l!?XR!@x]OY!=uYZ!>mZ!a!=u!a!b!?X!b#O!=u#O#P!Aq#P#S!=u#S#T!B{#T;'S!=u;'S;=`!Ci<%l~!=u~O!=u~~%fR!AvW&wPOY!=uYZ!>mZ!^!=u!^!_!@u!_;'S!=u;'S;=`!B`;=`<%l!?X<%lO!=uR!BcWO#O!?X#O#P!?q#P#S!?X#S#T!@j#T;'S!?X;'S;=`!@o;=`<%l!=u<%lO!?XR!CSV${Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!ClP;=`<%l!=uV!CvV!oU&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zV!DfY#}Q#lS&wPOY$zYZ%fZ!^$z!^!_%k!_!`6U!`#p$z#p#q!EU#q;'S$z;'S;=`&W<%lO$zR!E]V#{Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!EyV!nQ&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$zR!FgV$^Q&wPOY$zYZ%fZ!^$z!^!_%k!_;'S$z;'S;=`&W<%lO$z",tokenizers:[x0,v0,k0,0,1,2,3,w0],topRules:{Template:[0,72],Program:[1,232]},dynamicPrecedences:{284:1},specialized:[{term:81,get:(i,e)=>hd(i)<<1,external:hd},{term:81,get:i=>Z0[i]||-1}],tokenPrec:29354});var X0=ue.define({name:"php",parser:ud.configure({props:[Se.add({IfStatement:Re({except:/^\s*({|else\b|elseif\b|endif\b)/}),TryStatement:Re({except:/^\s*({|catch\b|finally\b)/}),SwitchBody:i=>{let e=i.textAfter,t=/^\s*\}/.test(e),n=/^\s*(case|default)\b/.test(e);return i.baseIndent+(t?0:n?1:2)*i.unit},ColonBlock:i=>i.baseIndent+i.unit,"Block EnumBody DeclarationList":Wr({closing:"}"}),ArrowFunction:i=>i.baseIndent+i.unit,"String BlockComment":()=>null,Statement:Re({except:/^({|end(for|foreach|switch|while)\b)/})}),ye.add({"Block EnumBody DeclarationList SwitchBody ArrayExpression ValueList":Yt,ColonBlock(i){return{from:i.from+1,to:i.to}},BlockComment(i){return{from:i.from+2,to:i.to-2}}})]}),languageData:{commentTokens:{block:{open:"/*",close:"*/"},line:"//"},indentOnInput:/^\s*(?:case |default:|end(?:if|for(?:each)?|switch|while)|else(?:if)?|\{|\})$/,wordChars:"$",closeBrackets:{stringPrefixes:["b","B"]}}});function dd(i={}){let e=[],t;if(i.baseLanguage!==null)if(i.baseLanguage)t=i.baseLanguage;else{let n=Wi({matchClosingTags:!1});e.push(n.support),t=n.language}return new Oe(X0.configure({wrap:t&&bi(n=>n.type.isTop?{parser:t.parser,overlay:r=>r.name=="Text"}:null),top:i.plain?"Program":"Template"}),e)}var W0=pe.deserialize({version:14,states:"%^QYQPOOO!YQQO'#CaO#RQQO'#CrOOQO'#Ct'#CtQYQPOOOOQO'#C}'#C}O#]QQO'#CzO$ZQQO'#CoOOQO'#Cz'#CzOOQO'#Cu'#CuO$lQQO,58{OOQO,58{,58{O$sQQO,59^O$sQQO,59^OOQO,59^,59^OOQO-E6r-E6rO$zQQO'#CfOOQO,58|,58|OOQO'#C|'#C|O%]QSO'#C{O%hQQO,59ZOOQO-E6s-E6sOOQO1G.g1G.gO%mQQO1G.xOOQO1G.x1G.xO%tQQO,59QO%yQSO'#CvO&bQSO,59gOOQO1G.u1G.uOOQO7+$d7+$dOOQO1G.l1G.lOOQO,59b,59bOOQO-E6t-E6t",stateData:"&{~OmOSPOS~OSPOeQOgRO~OVUOZTO[TO]TO^WO_WO`WOaWObWOtVOuWO~ORZO~PeOVUOZTO[TO]TO^WO_WO`WObWOtVOuWO~Oa[Od^O~P!aOX`ORnXVnXZnX[nX]nX^nX_nX`nXanXbnXtnXunXdnX~OVbOZTO[TO]TOsoP~ORfO~PeOdhO~PeOVbOZTO[TO]TOWoP~OrjOsoXWoX~OslO~OdmO~PeOWnO~OVbOZTO[TO]TOrjXsjXWjX~OrjOsoaWoa~Og[]a_^`bVmPZ`~",goto:"#brPPPPPswPPP!PPPPPPPPPwPPsP!S!Y!hPPP!n!v!|#TTROS]WPQY[]gRaUQSOR_SQYPQ]QUeY]gRg[QkcRpk]XPQY[]gQdVRi`ScV`Roj[WPQY[]gVbV`j",nodeNames:"\u26A0 BlockComment Template }} {{ InsertBlock Function Identifier ) ( FunctionParamList String Boolean Number ChainedIdentifier Comparison Operator CodeTag Math Array %} {% CodeBlock PlainText",maxTerm:37,nodeProps:[["openedBy",3,"{{",8,"(",20,"{%"],["closedBy",4,"}}",9,")",21,"%}"]],skippedNodes:[0,1],repeatNodeCount:3,tokenData:"#Jr~R!^OX$}XY&ZYZ&ZZ]$}]^&Z^p$}pq&Zqr'Wrs(Ysu$}uv-cvw$}wx.gxy3Wyz3nz{4U{|4r|}5Y}!O5r!O!P>u!P!Q?]!Q!R:[!R![=m![!]?y!]!^$}!^!_@a!_!`@}!`!a@a!a!c$}!c!}6}!}#OAk#O#P$}#P#QBR#Q#R$}#R#S6}#S#T$}#T#UBi#U#V!'f#V#X6}#X#Y!,h#Y#Z# Y#Z#]6}#]#^#'g#^#a6}#a#b#.T#b#c#5r#c#d#8[#d#g6}#g#h#9h#h#i#AV#i#j!.Q#j#k!@V#k#l#Co#l#o6}#o#p#Ge#p#q>u#q#r#In#r;'S$};'S;=`&O<%lO$}P%STgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}P%fWOs$}tu$}v#o$}#p;'S$};'S;=`&O<%l~$}~O$}~~&UP&RP;=`<%l$}P&ZOgP~&b[gPm~OX$}XY&ZYZ&ZZ]$}]^&Z^p$}pq&Zq#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~']VgPO!_$}!_!`'r!`#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~'yTgP_~O#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~(aXgPZ~Or(Yrs(|s#O(Y#O#P)d#P#o(Y#o#p){#p;'S(Y;'S;=`,n<%lO(Y~)TTgPZ~O#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~)iUgPO#o(Y#o#p){#p;'S(Y;'S;=`,t;=`<%l*|<%lO(Y~*Q^Z~Or(Yrs(|st*|tu(Yuv*|v#O(Y#O#P)d#P#o(Y#o#p*|#p;'S(Y;'S;=`,n<%l~(Y~O(Y~~&U~+RVZ~Or*|rs+hs#O*|#O#P+m#P;'S*|;'S;=`,h<%lO*|~+mOZ~~+pRO;'S*|;'S;=`+y;=`O*|~,OWZ~Or*|rs+hs#O*|#O#P+m#P;'S*|;'S;=`,h;=`<%l*|<%lO*|~,kP;=`<%l*|~,qP;=`<%l(Y~,yWZ~Or*|rs+hs#O*|#O#P+m#P;'S*|;'S;=`,h;=`<%l(Y<%lO*|~-jVgPb~O#o$}#o#p%c#p#q$}#q#r.P#r;'S$};'S;=`&O<%lO$}R.WTdQgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~.nXgPZ~Ow.gwx(|x#O.g#O#P/Z#P#o.g#o#p/r#p;'S.g;'S;=`2c<%lO.g~/`UgPO#o.g#o#p/r#p;'S.g;'S;=`2i;=`<%l0v<%lO.g~/w_Z~Os.gst0vtu.guv0vvw.gwx(|x#O.g#O#P/Z#P#o.g#o#p0v#p;'S.g;'S;=`2c<%l~.g~O.g~~&U~0{VZ~Ow0vwx+hx#O0v#O#P1b#P;'S0v;'S;=`2]<%lO0v~1eRO;'S0v;'S;=`1n;=`O0v~1sWZ~Ow0vwx+hx#O0v#O#P1b#P;'S0v;'S;=`2];=`<%l0v<%lO0v~2`P;=`<%l0v~2fP;=`<%l.g~2nWZ~Ow0vwx+hx#O0v#O#P1b#P;'S0v;'S;=`2];=`<%l.g<%lO0vR3_TXQgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}V3uTWUgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~4]VgPb~Oz$}z{4r{#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~4yTgPb~O#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}V5cTrSuQgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~5{`gPb~V~O}$}}!O6}!O!P8T!P!Q$}!Q!R:[!R![=m![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~7U_gPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~8Y^gPO}$}}!O9U!O!Q$}!Q![9U![!c$}!c!}9U!}#R$}#R#S9U#S#T$}#T#o9U#o#p%c#p;'S$};'S;=`&O<%lO$}~9]_gP^~O}$}}!O9U!O!P8T!P!Q$}!Q![9U![!c$}!c!}9U!}#R$}#R#S9U#S#T$}#T#o9U#o#p%c#p;'S$};'S;=`&O<%lO$}~:e_gP]~V~O}$}}!O6}!O!P;d!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~;i^gPO}$}}!O9U!O!Q$}!Q![|TgP`~O#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~?dVgPb~O!P$}!P!Q4r!Q#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}R@QTuQgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~@hVgP_~O!_$}!_!`'r!`#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~AUVgP`~O!_$}!_!`'r!`#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}RArTtQgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}VBYTsUgPO#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~BpegPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#b6}#b#cDR#c#d6}#d#eFg#e#i6}#i#jKe#j#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~DYagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#W6}#W#XE_#X#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~Eh_gP_~V~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~FnagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#d6}#d#eGs#e#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~GzagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#`6}#`#aIP#a#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~IWagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#m6}#m#nJ]#n#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~Jf_gPa~V~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~KlagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#h6}#h#iLq#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~LxagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#c6}#c#dM}#d#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~NUagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y! Z#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~! bagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#h!!g#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!!nagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#V6}#V#W!#s#W#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!#z`gPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U!$|#U#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!%TagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#d6}#d#e!&Y#e#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!&aagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#YJ]#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!'magPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#`6}#`#a!(r#a#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!(yagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#c6}#c#d!*O#d#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!*VagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#V6}#V#W!+[#W#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!+cagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#_6}#_#`J]#`#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!,oegPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#`6}#`#a!.Q#a#b6}#b#c!/^#c#l6}#l#m!Hz#m#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!.XagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#h!&Y#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!/eagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#W6}#W#X!0j#X#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!0qkgPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U!2f#U#V!'f#V#Y6}#Y#Z!3x#Z#]6}#]#^!6b#^#a6}#a#b!7n#b#g6}#g#h!OVgPO#k$}#k#l!>e#l#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~!>jVgPO#]$}#]#^!?P#^#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~!?UVgPO#h$}#h#i!?k#i#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~!?pVgPO#[$}#[#]'r#]#o$}#o#p%c#p;'S$};'S;=`&O<%lO$}~!@^agPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y!Ac#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!AjagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#f6}#f#g!Bo#g#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!BvagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U6}#U#V!C{#V#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!DS`gPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U!EU#U#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!E]agPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#h6}#h#i!Fb#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!FiagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#]6}#]#^!Gn#^#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!GuagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#a6}#a#bJ]#b#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!IRagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#h6}#h#i!JW#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!J_agPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y!Kd#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!KkagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#b6}#b#c!Lp#c#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!LwagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#W6}#W#X!M|#X#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~!NTagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#hJ]#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~# abgPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U#!i#U#c6}#c#d!5U#d#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#!pagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#`6}#`#a##u#a#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~##|agPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#h#%R#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#%YagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y#&_#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#&h_gP[~V~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#'negPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#Y6}#Y#ZJ]#Z#b6}#b#c#)P#c#g6}#g#hE_#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#)YagP_~V~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#V6}#V#W#*_#W#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#*fagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#`6}#`#a#+k#a#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#+ragPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#i6}#i#j#,w#j#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#-OagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#W6}#W#X!&Y#X#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#.[`gPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#U#/^#U#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#/ecgPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#V6}#V#W!:T#W#h6}#h#i#0p#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#0wagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#V6}#V#W#1|#W#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#2TagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#[6}#[#]#3Y#]#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#3aagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y#4f#Y#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#4magPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#hE_#h#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#5yagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#c6}#c#d#7O#d#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#7VagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#h6}#h#iE_#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#8cagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#f6}#f#gE_#g#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#9ocgPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#X6}#X#Y#:z#Y#h6}#h#i#m#g#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#>tagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#h6}#h#i#?y#i#o6}#o#p%c#p;'S$};'S;=`&O<%lO$}~#@QagPV~O}$}}!O6}!O!P8T!P!Q$}!Q![6}![!c$}!c!}6}!}#R$}#R#S6}#S#T$}#T#g6}#g#h!=65&&i<=90||i==95||i>=97&&i<=122||i>=161}function M0(i){return i==9||i==10||i==13||i==32}var md=null,$d=null,gd=0;function ha(i,e){let t=i.pos+e;if($d==i&&gd==t)return md;for(;M0(i.peek(e));)e++;let n="";for(;;){let r=i.peek(e);if(!G0(r))break;n+=String.fromCharCode(r),e++}return $d=i,gd=t,md=n||null}function Qd(i,e){this.name=i,this.parent=e,this.hash=e?e.hash:0;for(let t=0;t{if(i.next==60){if(i.advance(),i.next==47){i.advance();let t=ha(i,0);if(!t)return i.acceptToken(C0);if(e.context&&t==e.context.name)return i.acceptToken(V0);for(let n=e.context;n;n=n.parent)if(n.name==t)return i.acceptToken(q0,-2);i.acceptToken(Y0)}else if(i.next!=33&&i.next!=63)return i.acceptToken(la)}},{contextual:!0});function ca(i,e){return new ee(t=>{let n=0,r=e.charCodeAt(0);e:for(;!(t.next<0);t.advance(),n++)if(t.next==r){for(let s=1;s"),B0=ca(A0,"?>"),N0=ca(_0,"]]>"),H0=oe({Text:u.content,"StartTag StartCloseTag EndTag SelfCloseEndTag":u.angleBracket,TagName:u.tagName,"MismatchedCloseTag/Tagname":[u.tagName,u.invalid],AttributeName:u.attributeName,AttributeValue:u.attributeValue,Is:u.definitionOperator,"EntityReference CharacterReference":u.character,Comment:u.blockComment,ProcessingInst:u.processingInstruction,DoctypeDecl:u.documentMeta,Cdata:u.special(u.string)}),Sd=pe.deserialize({version:14,states:",SOQOaOOOrOxO'#CfOzOpO'#CiO!tOaO'#CgOOOP'#Cg'#CgO!{OrO'#CrO#TOtO'#CsO#]OpO'#CtOOOP'#DS'#DSOOOP'#Cv'#CvQQOaOOOOOW'#Cw'#CwO#eOxO,59QOOOP,59Q,59QOOOO'#Cx'#CxO#mOpO,59TO#uO!bO,59TOOOP'#C{'#C{O$TOaO,59RO$[OpO'#CoOOOP,59R,59ROOOQ'#C|'#C|O$dOrO,59^OOOP,59^,59^OOOS'#C}'#C}O$lOtO,59_OOOP,59_,59_O$tOpO,59`O$|OpO,59`OOOP-E6t-E6tOOOW-E6u-E6uOOOP1G.l1G.lOOOO-E6v-E6vO%UO!bO1G.oO%UO!bO1G.oO%dOpO'#CkO%lO!bO'#CyO%zO!bO1G.oOOOP1G.o1G.oOOOP1G.w1G.wOOOP-E6y-E6yOOOP1G.m1G.mO&VOpO,59ZO&_OpO,59ZOOOQ-E6z-E6zOOOP1G.x1G.xOOOS-E6{-E6{OOOP1G.y1G.yO&gOpO1G.zO&gOpO1G.zOOOP1G.z1G.zO&oO!bO7+$ZO&}O!bO7+$ZOOOP7+$Z7+$ZOOOP7+$c7+$cO'YOpO,59VO'bOpO,59VO'jO!bO,59eOOOO-E6w-E6wO'xOpO1G.uO'xOpO1G.uOOOP1G.u1G.uO(QOpO7+$fOOOP7+$f7+$fO(YO!bO<d!d;'S%y;'S;=`&_<%lO%yX>iV{WOr%ysv%yw!}%y!}#O?O#O;'S%y;'S;=`&_<%lO%yX?VT{WxPOr%ysv%yw;'S%y;'S;=`&_<%lO%yX?kV{WOr%ysv%yw#W%y#W#X@Q#X;'S%y;'S;=`&_<%lO%yX@VV{WOr%ysv%yw#T%y#T#U@l#U;'S%y;'S;=`&_<%lO%yX@qV{WOr%ysv%yw#h%y#h#iAW#i;'S%y;'S;=`&_<%lO%yXA]V{WOr%ysv%yw#T%y#T#U>d#U;'S%y;'S;=`&_<%lO%yXAwV{WOr%ysv%yw#c%y#c#dB^#d;'S%y;'S;=`&_<%lO%yXBcV{WOr%ysv%yw#V%y#V#WBx#W;'S%y;'S;=`&_<%lO%yXB}V{WOr%ysv%yw#h%y#h#iCd#i;'S%y;'S;=`&_<%lO%yXCiV{WOr%ysv%yw#m%y#m#nDO#n;'S%y;'S;=`&_<%lO%yXDTV{WOr%ysv%yw#d%y#d#eDj#e;'S%y;'S;=`&_<%lO%yXDoV{WOr%ysv%yw#X%y#X#Y9i#Y;'S%y;'S;=`&_<%lO%yXE]T!PP{WOr%ysv%yw;'S%y;'S;=`&_<%lO%yZEuWaQVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$n_FhW[UVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nZGXYVP{WOr$nrs%_sv$nw!^$n!^!_%y!_!`$n!`!aGw!a;'S$n;'S;=`&e<%lO$nZHQW!OQVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$nZHqYVP{WOr$nrs%_sv$nw!^$n!^!_%y!_#P$n#P#QIa#Q;'S$n;'S;=`&e<%lO$nZIhYVP{WOr$nrs%_sv$nw!^$n!^!_%y!_!`$n!`!aJW!a;'S$n;'S;=`&e<%lO$nZJaWwQVP{WOr$nrs%_sv$nw!^$n!^!_%y!_;'S$n;'S;=`&e<%lO$n",tokenizers:[L0,D0,B0,N0,0,1,2,3],topRules:{Document:[0,6]},tokenPrec:0});function ts(i,e){let t=e&&e.getChild("TagName");return t?i.sliceString(t.from,t.to):""}function fa(i,e){let t=e&&e.firstChild;return!t||t.name!="OpenTag"?"":ts(i,t)}function F0(i,e,t){let n=e&&e.getChildren("Attribute").find(s=>s.from<=t&&s.to>=t),r=n&&n.getChild("AttributeName");return r?i.sliceString(r.from,r.to):""}function ua(i){for(let e=i&&i.parent;e;e=e.parent)if(e.name=="Element")return e;return null}function K0(i,e){var t;let n=M(i).resolveInner(e,-1),r=null;for(let s=n;!r&&s.parent;s=s.parent)(s.name=="OpenTag"||s.name=="CloseTag"||s.name=="SelfClosingTag"||s.name=="MismatchedCloseTag")&&(r=s);if(r&&(r.to>e||r.lastChild.type.isError)){let s=r.parent;if(n.name=="TagName")return r.name=="CloseTag"||r.name=="MismatchedCloseTag"?{type:"closeTag",from:n.from,context:s}:{type:"openTag",from:n.from,context:ua(s)};if(n.name=="AttributeName")return{type:"attrName",from:n.from,context:r};if(n.name=="AttributeValue")return{type:"attrValue",from:n.from,context:r};let o=n==r||n.name=="Attribute"?n.childBefore(e):n;return o?.name=="StartTag"?{type:"openTag",from:e,context:ua(s)}:o?.name=="StartCloseTag"&&o.to<=e?{type:"closeTag",from:e,context:s}:o?.name=="Is"?{type:"attrValue",from:e,context:r}:o?{type:"attrName",from:e,context:r}:null}else if(n.name=="StartCloseTag")return{type:"closeTag",from:e,context:n.parent};for(;n.parent&&n.to==e&&!(!((t=n.lastChild)===null||t===void 0)&&t.type.isError);)n=n.parent;return n.name=="Element"||n.name=="Text"||n.name=="Document"?{type:"tag",from:e,context:n.name=="Element"?n:ua(n)}:null}var pa=class{constructor(e,t,n){this.attrs=t,this.attrValues=n,this.children=[],this.name=e.name,this.completion=Object.assign(Object.assign({type:"type"},e.completion||{}),{label:this.name}),this.openCompletion=Object.assign(Object.assign({},this.completion),{label:"<"+this.name}),this.closeCompletion=Object.assign(Object.assign({},this.completion),{label:"",boost:2}),this.closeNameCompletion=Object.assign(Object.assign({},this.completion),{label:this.name+">"}),this.text=e.textContent?e.textContent.map(r=>({label:r,type:"text"})):[]}},da=/^[:\-\.\w\u00b7-\uffff]*$/;function yd(i){return Object.assign(Object.assign({type:"property"},i.completion||{}),{label:i.name})}function Pd(i){return typeof i=="string"?{label:`"${i}"`,type:"constant"}:/^"/.test(i.label)?i:Object.assign(Object.assign({},i),{label:`"${i.label}"`})}function J0(i,e){let t=[],n=[],r=Object.create(null);for(let a of e){let l=yd(a);t.push(l),a.global&&n.push(l),a.values&&(r[a.name]=a.values.map(Pd))}let s=[],o=[],O=Object.create(null);for(let a of i){let l=n,h=r;a.attributes&&(l=l.concat(a.attributes.map(f=>typeof f=="string"?t.find(d=>d.label==f)||{label:f,type:"property"}:(f.values&&(h==r&&(h=Object.create(h)),h[f.name]=f.values.map(Pd)),yd(f)))));let c=new pa(a,l,h);O[c.name]=c,s.push(c),a.top&&o.push(c)}o.length||(o=s);for(let a=0;a{var l;let{doc:h}=a.state,c=K0(a.state,a.pos);if(!c||c.type=="tag"&&!a.explicit)return null;let{type:f,from:d,context:p}=c;if(f=="openTag"){let m=o,$=fa(h,p);if($){let g=O[$];m=g?.children||s}return{from:d,options:m.map(g=>g.completion),validFor:da}}else if(f=="closeTag"){let m=fa(h,p);return m?{from:d,to:a.pos+(h.sliceString(a.pos,a.pos+1)==">"?1:0),options:[((l=O[m])===null||l===void 0?void 0:l.closeNameCompletion)||{label:m+">",type:"type"}],validFor:da}:null}else if(f=="attrName"){let m=O[ts(h,p)];return{from:d,options:m?.attrs||n,validFor:da}}else if(f=="attrValue"){let m=F0(h,p,d);if(!m)return null;let $=O[ts(h,p)],g=($?.attrValues||r)[m];return!g||!g.length?null:{from:d,to:a.pos+(h.sliceString(a.pos,a.pos+1)=='"'?1:0),options:g,validFor:/^"[^"]*"?$/}}else if(f=="tag"){let m=fa(h,p),$=O[m],g=[],Q=p&&p.lastChild;m&&(!Q||Q.name!="CloseTag"||ts(h,Q)!=m)&&g.push($?$.closeCompletion:{label:"",type:"type",boost:2});let x=g.concat(($?.children||(p?s:o)).map(w=>w.openCompletion));if(p&&$?.text.length){let w=p.firstChild;w.to>a.pos-20&&!/\S/.test(a.state.sliceDoc(w.to,a.pos))&&(x=x.concat($.text))}return{from:d,options:x,validFor:/^<\/?[:\-\.\w\u00b7-\uffff]*$/}}else return null}}var bd=ue.define({name:"xml",parser:Sd.configure({props:[Se.add({Element(i){let e=/^\s*<\//.test(i.textAfter);return i.lineIndent(i.node.from)+(e?0:i.unit)},"OpenTag CloseTag SelfClosingTag"(i){return i.column(i.node.from)+i.unit}}),ye.add({Element(i){let e=i.firstChild,t=i.lastChild;return!e||e.name!="OpenTag"?null:{from:e.to,to:t.name=="CloseTag"?t.from:i.to}}}),pn.add({"OpenTag CloseTag":i=>i.getChild("TagName")})]}),languageData:{commentTokens:{block:{open:""}},indentOnInput:/^\s*<\/$/}});function xd(i={}){return new Oe(bd,bd.data.of({autocomplete:J0(i.elements||[],i.attributes||[])}))}var Z=async i=>{let e=await window.importVersioned("legacy-modes");return zr.define(e[i])},eP={bash:()=>Z("shell"),c:()=>Z("c"),css:async()=>Gr(),"c++":()=>Z("cpp"),"c#":()=>Z("csharp"),clj:()=>Z("clojure"),clojure:()=>Z("clojure"),csharp:()=>Z("csharp"),dart:()=>Z("dart"),diff:()=>Z("diff"),for:()=>Z("fortran"),fortran:()=>Z("fortran"),"f#":()=>Z("fSharp"),fsharp:()=>Z("fSharp"),go:()=>Z("go"),haskell:()=>Z("haskell"),hs:()=>Z("haskell"),html:async()=>Wi(),ini:()=>Z("properties"),java:()=>Z("java"),javascript:async()=>ni(),json:async()=>Sf(),js:async()=>ni(),jl:()=>Z("julia"),julia:()=>Z("julia"),kotlin:()=>Z("kotlin"),latex:()=>Z("stex"),lua:()=>Z("lua"),markdown:async()=>es(),matlab:()=>Z("octave"),md:async()=>es(),mdown:async()=>es(),ml:()=>Z("sml"),mssql:()=>Z("msSQL"),mysql:()=>Z("mySQL"),nginx:()=>Z("nginx"),octave:()=>Z("octave"),pas:()=>Z("pascal"),pascal:()=>Z("pascal"),perl:()=>Z("perl"),pgsql:()=>Z("pgSQL"),php:async i=>{let e=i.includes("Z("perl"),"pl/sql":()=>Z("plSQL"),postgresql:()=>Z("pgSQL"),powershell:()=>Z("powerShell"),properties:()=>Z("properties"),ocaml:()=>Z("oCaml"),py:()=>Z("python"),python:()=>Z("python"),rb:()=>Z("ruby"),rs:()=>Z("rust"),ruby:()=>Z("ruby"),rust:()=>Z("rust"),scala:()=>Z("scala"),scheme:()=>Z("scheme"),shell:()=>Z("shell"),sh:()=>Z("shell"),smarty:()=>Z("smarty"),stext:()=>Z("stex"),swift:()=>Z("swift"),toml:()=>Z("toml"),ts:async()=>ni({typescript:!0}),twig:async()=>pd(),typescript:async()=>ni({typescript:!0}),sql:()=>Z("standardSQL"),sqlite:()=>Z("sqlite"),vbs:()=>Z("vbScript"),vbscript:()=>Z("vbScript"),"vb.net":()=>Z("vb"),vbnet:()=>Z("vb"),xml:async()=>xd(),yaml:()=>Z("yaml"),yml:()=>Z("yaml")};function wd(i,e){let t=i.trim().replace(/^\./g,"").toLowerCase(),n=eP[t];if(!(typeof n>"u"))return n(e)}var kd=new WeakMap;function qi(i,e){let t=new dt;e.extensions.push(t.of([]));let n={usage:i,editorViewConfig:e,libEditorView:T,libEditorState:L,libCompartment:dt};window.$events.emitPublic(e.parent,"library-cm6::pre-init",n);let r=new T(e);return kd.set(r,t),window.$events.emitPublic(e.parent,"library-cm6::post-init",{editorView:r,...n}),r}async function Td(i,e,t){let n=kd.get(i),r=await wd(e,t);i.dispatch({effects:n.reconfigure(r||[])})}var Et=class{constructor(e){this.ev=e}getContent(){return this.ev.state.doc.toString()}setContent(e){let{doc:t}=this.ev.state;this.ev.dispatch({changes:{from:0,to:t.length,insert:e}})}focus(){this.ev.focus()}setMode(e,t=""){Td(this.ev,e,t)}};function tP(i){let e='',t='',n=document.createElement("button");n.setAttribute("type","button"),n.classList.add("cm-copy-button"),n.innerHTML=e,i.dom.appendChild(n);let r=620,s=60;n.addEventListener("click",()=>{xh(i.state.doc.toString()),n.classList.add("success"),setTimeout(()=>{n.innerHTML=t},s/2),setTimeout(()=>{n.classList.remove("success")},r),setTimeout(()=>{n.innerHTML=e},r+s/2)})}function vd(i){let e=i.querySelector("code[class^=language-]");i.innerHTML=i.innerHTML.replace(//gi,` +`);let t=i.textContent.trimEnd(),n="",r="";e!==null&&(n=e.className.replace("language-",""),r=e.getAttribute("dir"));let s=document.createElement("div");i.parentNode.insertBefore(s,i);let o=r||i.getAttribute("dir")||"";o&&s.setAttribute("dir",o);let O=qi("content-code-block",{parent:s,doc:t,extensions:rO(s)});new Et(O).setMode(n,t),i.remove(),tP(O)}function Eb(i){let e=i.querySelectorAll("pre");for(let t of e)vd(t)}function Gb(){let i=document.querySelectorAll(".page-content pre, .comment-box .content pre");for(let e of i)vd(e)}function Mb(i,e,t,n){let r=qi("content-code-block",{parent:i,doc:t,extensions:rO(i),root:e}),s=new Et(r);return s.setMode(n,t),s}function Ib(i,e){let t=i.textContent,n={parent:i.parentElement,doc:t,extensions:[..._r(i.parentElement)]},r=new Et(qi("code-editor",n));return r.setMode(e,t),i.style.display="none",r}function Lb(i,e){let t=i.value,n={parent:i.parentElement,doc:t,extensions:[..._r(i.parentElement),T.updateListener.of(o=>{o.docChanged&&(i.value=o.state.doc.toString())})]},r=qi("code-input",n),s=new Et(r);return s.setMode(e,t),i.style.display="none",s}function Db(i,e,t,n){let r=i.textContent,s={parent:i.parentElement,doc:r,extensions:[at.of(n),..._r(i.parentElement),T.updateListener.of(O=>{e(O)}),T.domEventHandlers(t)]};window.$events.emitPublic(i,"editor-markdown-cm6::pre-init",{editorViewConfig:s});let o=qi("markdown-editor",s);return new Et(o).setMode("markdown",""),i.style.display="none",o}export{Gb as highlight,Eb as highlightWithin,Lb as inlineEditor,Db as markdownEditor,Ib as popupEditor,Mb as wysiwygView}; //# sourceMappingURL=code.js.map diff --git a/public/dist/styles.css b/public/dist/styles.css index 4ff08bc0c5c..11427854f6f 100644 --- a/public/dist/styles.css +++ b/public/dist/styles.css @@ -1 +1 @@ -html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after{content:"";content:none}q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}:root{--font-body: -apple-system, BlinkMacSystemFont, Segoe UI, Oxygen, Ubuntu, Roboto, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;--font-code: Lucida Console, DejaVu Sans Mono, Ubuntu Mono, Monaco, monospace;--color-primary: #206ea7;--color-primary-light: rgba(32,110,167,0.15);--color-link: #206ea7;--color-page: #206ea7;--color-page-draft: #7e50b1;--color-chapter: #af4d0d;--color-book: #077b70;--color-bookshelf: #a94747;--color-positive: #0f7d15;--color-negative: #ab0f0e;--color-info: #0288D1;--color-warning: #cf4d03;--bg-disabled: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='100%25' width='100%25'%3E%3Cdefs%3E%3Cpattern id='doodad' width='19' height='19' viewBox='0 0 40 40' patternUnits='userSpaceOnUse' patternTransform='rotate(143)'%3E%3Crect width='100%25' height='100%25' fill='rgba(42, 67, 101,0)'/%3E%3Cpath d='M-10 30h60v20h-60zM-10-10h60v20h-60' fill='rgba(26, 32, 44,0)'/%3E%3Cpath d='M-10 10h60v20h-60zM-10-30h60v20h-60z' fill='rgba(0, 0, 0,0.05)'/%3E%3C/pattern%3E%3C/defs%3E%3Crect fill='url(%23doodad)' height='200%25' width='200%25'/%3E%3C/svg%3E")}:root.dark-mode{--bg-disabled: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='100%25' width='100%25'%3E%3Cdefs%3E%3Cpattern id='doodad' width='19' height='19' viewBox='0 0 40 40' patternUnits='userSpaceOnUse' patternTransform='rotate(143)'%3E%3Crect width='100%25' height='100%25' fill='rgba(42, 67, 101,0)'/%3E%3Cpath d='M-10 30h60v20h-60zM-10-10h60v20h-60' fill='rgba(26, 32, 44,0)'/%3E%3Cpath d='M-10 10h60v20h-60zM-10-30h60v20h-60z' fill='rgba(255, 255, 255,0.05)'/%3E%3C/pattern%3E%3C/defs%3E%3Crect fill='url(%23doodad)' height='200%25' width='200%25'/%3E%3C/svg%3E");color-scheme:only dark;--color-positive: #4aa850;--color-negative: #e85c5b;--color-warning: #de8a5a}:root:not(.dark-mode){color-scheme:only light}.m-none{margin:0 !important}.mx-none{margin-inline-start:0 !important;margin-inline-end:0 !important}.my-none{margin-top:0 !important;margin-bottom:0 !important}.mt-none{margin-top:0 !important}.mr-none{margin-inline-end:0 !important}.mb-none{margin-bottom:0 !important}.ml-none{margin-inline-start:0 !important}.m-xxs{margin:3px !important}.mx-xxs{margin-inline-start:3px !important;margin-inline-end:3px !important}.my-xxs{margin-top:3px !important;margin-bottom:3px !important}.mt-xxs{margin-top:3px !important}.mr-xxs{margin-inline-end:3px !important}.mb-xxs{margin-bottom:3px !important}.ml-xxs{margin-inline-start:3px !important}.m-xs{margin:6px !important}.mx-xs{margin-inline-start:6px !important;margin-inline-end:6px !important}.my-xs{margin-top:6px !important;margin-bottom:6px !important}.mt-xs{margin-top:6px !important}.mr-xs{margin-inline-end:6px !important}.mb-xs{margin-bottom:6px !important}.ml-xs{margin-inline-start:6px !important}.m-s{margin:12px !important}.mx-s{margin-inline-start:12px !important;margin-inline-end:12px !important}.my-s{margin-top:12px !important;margin-bottom:12px !important}.mt-s{margin-top:12px !important}.mr-s{margin-inline-end:12px !important}.mb-s{margin-bottom:12px !important}.ml-s{margin-inline-start:12px !important}.m-m{margin:16px !important}.mx-m{margin-inline-start:16px !important;margin-inline-end:16px !important}.my-m{margin-top:16px !important;margin-bottom:16px !important}.mt-m{margin-top:16px !important}.mr-m{margin-inline-end:16px !important}.mb-m{margin-bottom:16px !important}.ml-m{margin-inline-start:16px !important}.m-l{margin:24px !important}.mx-l{margin-inline-start:24px !important;margin-inline-end:24px !important}.my-l{margin-top:24px !important;margin-bottom:24px !important}.mt-l{margin-top:24px !important}.mr-l{margin-inline-end:24px !important}.mb-l{margin-bottom:24px !important}.ml-l{margin-inline-start:24px !important}.m-xl{margin:32px !important}.mx-xl{margin-inline-start:32px !important;margin-inline-end:32px !important}.my-xl{margin-top:32px !important;margin-bottom:32px !important}.mt-xl{margin-top:32px !important}.mr-xl{margin-inline-end:32px !important}.mb-xl{margin-bottom:32px !important}.ml-xl{margin-inline-start:32px !important}.m-xxl{margin:48px !important}.mx-xxl{margin-inline-start:48px !important;margin-inline-end:48px !important}.my-xxl{margin-top:48px !important;margin-bottom:48px !important}.mt-xxl{margin-top:48px !important}.mr-xxl{margin-inline-end:48px !important}.mb-xxl{margin-bottom:48px !important}.ml-xxl{margin-inline-start:48px !important}.m-auto{margin:auto !important}.mx-auto{margin-inline-start:auto !important;margin-inline-end:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-inline-end:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-inline-start:auto !important}.p-none{padding:0 !important}.px-none{padding-inline-start:0 !important;padding-inline-end:0 !important}.py-none{padding-top:0 !important;padding-bottom:0 !important}.pt-none{padding-top:0 !important}.pr-none{padding-inline-end:0 !important}.pb-none{padding-bottom:0 !important}.pl-none{padding-inline-start:0 !important}.p-xxs{padding:3px !important}.px-xxs{padding-inline-start:3px !important;padding-inline-end:3px !important}.py-xxs{padding-top:3px !important;padding-bottom:3px !important}.pt-xxs{padding-top:3px !important}.pr-xxs{padding-inline-end:3px !important}.pb-xxs{padding-bottom:3px !important}.pl-xxs{padding-inline-start:3px !important}.p-xs{padding:6px !important}.px-xs{padding-inline-start:6px !important;padding-inline-end:6px !important}.py-xs{padding-top:6px !important;padding-bottom:6px !important}.pt-xs{padding-top:6px !important}.pr-xs{padding-inline-end:6px !important}.pb-xs{padding-bottom:6px !important}.pl-xs{padding-inline-start:6px !important}.p-s{padding:12px !important}.px-s{padding-inline-start:12px !important;padding-inline-end:12px !important}.py-s{padding-top:12px !important;padding-bottom:12px !important}.pt-s{padding-top:12px !important}.pr-s{padding-inline-end:12px !important}.pb-s{padding-bottom:12px !important}.pl-s{padding-inline-start:12px !important}.p-m{padding:16px !important}.px-m{padding-inline-start:16px !important;padding-inline-end:16px !important}.py-m{padding-top:16px !important;padding-bottom:16px !important}.pt-m{padding-top:16px !important}.pr-m{padding-inline-end:16px !important}.pb-m{padding-bottom:16px !important}.pl-m{padding-inline-start:16px !important}.p-l{padding:24px !important}.px-l{padding-inline-start:24px !important;padding-inline-end:24px !important}.py-l{padding-top:24px !important;padding-bottom:24px !important}.pt-l{padding-top:24px !important}.pr-l{padding-inline-end:24px !important}.pb-l{padding-bottom:24px !important}.pl-l{padding-inline-start:24px !important}.p-xl{padding:32px !important}.px-xl{padding-inline-start:32px !important;padding-inline-end:32px !important}.py-xl{padding-top:32px !important;padding-bottom:32px !important}.pt-xl{padding-top:32px !important}.pr-xl{padding-inline-end:32px !important}.pb-xl{padding-bottom:32px !important}.pl-xl{padding-inline-start:32px !important}.p-xxl{padding:48px !important}.px-xxl{padding-inline-start:48px !important;padding-inline-end:48px !important}.py-xxl{padding-top:48px !important;padding-bottom:48px !important}.pt-xxl{padding-top:48px !important}.pr-xxl{padding-inline-end:48px !important}.pb-xxl{padding-bottom:48px !important}.pl-xxl{padding-inline-start:48px !important}.p-auto{padding:auto !important}.px-auto{padding-inline-start:auto !important;padding-inline-end:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-inline-end:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-inline-start:auto !important}.gap-none{gap:0 !important}.gap-x-none{column-gap:0 !important}.gap-y-none{row-gap:0 !important}.gap-xxs{gap:3px !important}.gap-x-xxs{column-gap:3px !important}.gap-y-xxs{row-gap:3px !important}.gap-xs{gap:6px !important}.gap-x-xs{column-gap:6px !important}.gap-y-xs{row-gap:6px !important}.gap-s{gap:12px !important}.gap-x-s{column-gap:12px !important}.gap-y-s{row-gap:12px !important}.gap-m{gap:16px !important}.gap-x-m{column-gap:16px !important}.gap-y-m{row-gap:16px !important}.gap-l{gap:24px !important}.gap-x-l{column-gap:24px !important}.gap-y-l{row-gap:24px !important}.gap-xl{gap:32px !important}.gap-x-xl{column-gap:32px !important}.gap-y-xl{row-gap:32px !important}.gap-xxl{gap:48px !important}.gap-x-xxl{column-gap:48px !important}.gap-y-xxl{row-gap:48px !important}.gap-auto{gap:auto !important}.gap-x-auto{column-gap:auto !important}.gap-y-auto{row-gap:auto !important}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}*{box-sizing:border-box;outline-color:var(--color-primary);outline-width:1px}*:focus{outline-style:dotted}html{height:100%;overflow-y:scroll;background-color:#f2f2f2}html.flexbox{overflow-y:hidden}html.dark-mode{background-color:#111}body{font-size:14px;line-height:1.6;color:#444;-webkit-font-smoothing:antialiased;height:100%;display:flex;flex-direction:column}html.dark-mode body{color:#aaa}body,button,input,select,label,textarea{font-family:var(--font-body)}pre,#markdown-editor-input,.text-mono,.code-base,span.code,code{font-family:var(--font-code)}h1{font-size:3.425em;line-height:1.22222222em;margin-top:.48888889em;margin-bottom:.48888889em}h2{font-size:2.8275em;line-height:1.294117647em;margin-top:.8627451em;margin-bottom:.43137255em}h3{font-size:2.333em;line-height:1.221428572em;margin-top:.78571429em;margin-bottom:.43137255em}h4{font-size:1.666em;line-height:1.375em;margin-top:.78571429em;margin-bottom:.43137255em}h1,h2,h3,h4,h5,h6{font-weight:400;position:relative;display:block;font-family:var(--font-heading, var(--font-body));color:#222}html.dark-mode h1,html.dark-mode h2,html.dark-mode h3,html.dark-mode h4,html.dark-mode h5,html.dark-mode h6{color:#bbb}h1 .subheader,h2 .subheader,h3 .subheader,h4 .subheader,h5 .subheader,h6 .subheader{font-size:.5em;line-height:1em;color:#969696}h5{font-size:1.4em}h5,h6{line-height:1.2em;margin-top:.78571429em;margin-bottom:.66em}@media screen and (max-width: 600px){h1{font-size:2.8275em}h2{font-size:2.333em}h3{font-size:1.666em}h4{font-size:1.333em}h5{font-size:1.161616em}}.list-heading{font-size:2rem}h2.list-heading{font-size:1.333rem}a{color:var(--color-link);fill:currentColor;cursor:pointer;text-decoration:none;transition:filter ease-in-out 80ms;line-height:1.6}a:hover{text-decoration:underline}a.icon{display:inline-block}a svg{position:relative;display:inline-block}a:focus img:only-child{outline:2px dashed var(--color-link);outline-offset:2px}a.no-link-style{color:inherit}a.no-link-style:hover{text-decoration:none}.blended-links a{color:inherit}.blended-links a svg{fill:currentColor}p,ul,ol,pre,table,blockquote{margin-top:.3em;margin-bottom:1.375em}hr{border:0;height:1px;background:#eaeaea;margin-bottom:24px}html.dark-mode hr{background:#555}hr.faded{background-image:linear-gradient(to right, #FFF, #e3e0e0 20%, #e3e0e0 80%, #FFF)}hr.darker{background:#ddd}html.dark-mode hr.darker{background:#666}hr.margin-top,hr.even{margin-top:24px}strong,b,.bold,.strong{font-weight:bold}strong>strong,strong>b,strong>.bold,strong>.strong,b>strong,b>b,b>.bold,b>.strong,.bold>strong,.bold>b,.bold>.bold,.bold>.strong,.strong>strong,.strong>b,.strong>.bold,.strong>.strong{font-weight:bolder}em,i,.italic{font-style:italic}small,p.small,span.small,.text-small{font-size:.75rem}sup,.superscript{vertical-align:super;font-size:.8em}sub,.subscript{vertical-align:sub;font-size:.8em}pre{font-size:12px;border:1px solid #ddd;background-color:#fff;border-color:#ddd;border-radius:4px;padding-inline-start:26px;position:relative;padding-top:3px;padding-bottom:3px}html.dark-mode pre{background-color:#2b2b2b}html.dark-mode pre{border-color:#111}pre:before{content:"";display:block;position:absolute;top:0;width:22.4px;inset-inline-start:0;height:100%;background-color:#f5f5f5;border-inline-end:1px solid #ddd}html.dark-mode pre:before{background-color:#313335}html.dark-mode pre:before{border-inline-end:none}@media print{pre{padding-left:12px}pre:before{display:none}}blockquote{display:block;position:relative;border-left:4px solid rgba(0,0,0,0);border-left-color:var(--color-primary);background-color:#f8f8f8;padding:12px 16px 12px 32px;overflow:auto}html.dark-mode blockquote{background-color:#333}blockquote:before{content:"“";font-size:2em;font-weight:bold;position:absolute;top:12px;left:12px;color:#777}.text-mono{font-family:var(--font-code)}.text-uppercase{text-transform:uppercase}.text-capitals{text-transform:capitalize}.code-base,span.code,code{font-size:.84em;border:1px solid #ddd;border-radius:3px;background-color:#f8f8f8;border-color:#ddd}html.dark-mode .code-base,html.dark-mode span.code,html.dark-mode code{background-color:#2b2b2b}html.dark-mode .code-base,html.dark-mode span.code,html.dark-mode code{border-color:#444}code{display:inline;padding:1px 3px;white-space:pre-wrap;line-height:1.2em}span.code{padding:1px 6px}pre code{background-color:rgba(0,0,0,0);border:0;font-size:1em;display:block;line-height:1.6}span.highlight{font-weight:bold;padding:2px 4px}ul,ol{padding-left:32px;padding-right:32px;display:flow-root}ul p,ol p{margin:0}ul{list-style:disc}ul ul{list-style:circle}ul label{margin:0}ol{list-style:decimal}li>ol,li>ul{margin-top:0;margin-bottom:0;margin-block-end:0;margin-block-start:0;padding-block-end:0;padding-block-start:0;padding-left:19.2px;padding-right:19.2px}li.checkbox-item,li.task-list-item{display:list-item;list-style:none;margin-left:-19.2px}li.checkbox-item input[type=checkbox],li.task-list-item input[type=checkbox]{margin-right:6px}li.checkbox-item li.checkbox-item,li.checkbox-item li.task-list-item,li.task-list-item li.checkbox-item,li.task-list-item li.task-list-item{margin-left:6px}.underlined{text-decoration:underline}.text-center{text-align:center}.text-left{text-align:start}.text-right{text-align:end}@media screen and (min-width: 360px){.text-xxs-center{text-align:center}.text-xxs-left{text-align:start}.text-xxs-right{text-align:end}}@media screen and (min-width: 400px){.text-xs-center{text-align:center}.text-xs-left{text-align:start}.text-xs-right{text-align:end}}@media screen and (min-width: 600px){.text-s-center{text-align:center}.text-s-left{text-align:start}.text-s-right{text-align:end}}@media screen and (min-width: 880px){.text-m-center{text-align:center}.text-m-left{text-align:start}.text-m-right{text-align:end}}@media screen and (min-width: 1000px){.text-l-center{text-align:center}.text-l-left{text-align:start}.text-l-right{text-align:end}}@media screen and (min-width: 1100px){.text-xl-center{text-align:center}.text-xl-left{text-align:start}.text-xl-right{text-align:end}}.text-bigger{font-size:1.1em}.text-large{font-size:1.6666em}.no-color{color:inherit}.break-text{white-space:normal;word-wrap:break-word;overflow-wrap:break-word}.text-limit-lines-1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.text-limit-lines-2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.header-group{margin:16px 0}.header-group h1,.header-group h2,.header-group h3,.header-group h4,.header-group h5,.header-group h6{margin:0}span.sep{color:#bbb;padding:0 6px}.list>*{display:block}.svg-icon{width:1em;height:1em;display:inline-block;position:relative;bottom:-0.105em;margin-inline-end:6px;pointer-events:none;fill:currentColor}.primary-background{background-color:var(--color-primary) !important}.primary-background-light{background-color:var(--color-primary-light)}html.dark-mode .primary-background-light{background:#000}html.dark-mode .primary-background-light .text-link{color:#aaa !important}.link-background{background-color:var(--color-link) !important}.text-pos,.text-pos:hover,.text-pos-hover:hover{color:var(--color-positive) !important;fill:var(--color-positive) !important}.text-warn,.text-warn:hover,.text-warn-hover:hover{color:var(--color-warning) !important;fill:var(--color-warning) !important}.text-neg,.text-neg:hover,.text-neg-hover:hover{color:var(--color-negative) !important;fill:var(--color-negative) !important}.text-primary,.text-primary:hover,.text-primary-hover:hover{color:var(--color-primary) !important;fill:var(--color-primary) !important}.text-link,.text-link:hover,.text-link-hover:hover{color:var(--color-link) !important;fill:var(--color-link) !important}.text-muted{color:#575757 !important;fill:currentColor !important}html.dark-mode .text-muted{color:#888 !important}.text-dark{color:#222 !important;fill:currentColor !important}html.dark-mode .text-dark{color:#ccc !important}.text-white{color:#fff;fill:currentColor !important}.text-bookshelf,.text-bookshelf:hover{color:var(--color-bookshelf);fill:var(--color-bookshelf)}.text-book,.text-book:hover{color:var(--color-book);fill:var(--color-book)}.text-page,.text-page:hover{color:var(--color-page);fill:var(--color-page)}.text-page.draft,.text-page.draft:hover{color:var(--color-page-draft);fill:var(--color-page-draft)}.text-chapter,.text-chapter:hover{color:var(--color-chapter);fill:var(--color-chapter)}.bg-white{background-color:#fff}.bg-book{background-color:var(--color-book)}.bg-chapter{background-color:var(--color-chapter)}.bg-bookshelf{background-color:var(--color-bookshelf)}.container{max-width:1400px;margin-inline-start:auto;margin-inline-end:auto;padding-inline-start:16px;padding-inline-end:16px}.container.medium{max-width:1100px}.container.small{max-width:840px}.container.very-small{max-width:480px}.grid{display:grid;grid-column-gap:24px;grid-row-gap:24px}.grid>*{min-width:0}.grid.half{grid-template-columns:1fr 1fr}.grid.third{grid-template-columns:1fr 1fr 1fr}.grid.left-focus{grid-template-columns:2fr 1fr}.grid.right-focus{grid-template-columns:1fr 3fr}.grid.gap-y-xs{grid-row-gap:6px}.grid.gap-xl{grid-column-gap:32px;grid-row-gap:32px}.grid.gap-xxl{grid-column-gap:48px;grid-row-gap:48px}.grid.v-center{align-items:center}.grid.v-end{align-items:end}.grid.no-gap{grid-row-gap:0;grid-column-gap:0}.grid.no-row-gap{grid-row-gap:0}@media screen and (max-width: 880px){.grid.third:not(.no-break){grid-template-columns:1fr 1fr}.grid.half:not(.no-break),.grid.left-focus:not(.no-break),.grid.right-focus:not(.no-break){grid-template-columns:1fr}.grid.half.collapse-xs{grid-template-columns:1fr 1fr}.grid.gap-xl{grid-column-gap:16px;grid-row-gap:16px}.grid.right-focus.reverse-collapse>*:nth-child(2){order:0}.grid.right-focus.reverse-collapse>*:nth-child(1){order:1}}@media screen and (max-width: 600px){.grid.third:not(.no-break){grid-template-columns:1fr}}@media screen and (max-width: 400px){.grid.half.collapse-xs{grid-template-columns:1fr}}#content{flex:1 0 auto}body.flexbox{display:flex;flex-direction:column;align-items:stretch;height:100%;min-height:100%;max-height:100%;overflow:hidden}body.flexbox #content{flex:1;display:flex;min-height:0}.flex-fill{display:flex;align-items:stretch;min-height:0;max-width:100%;position:relative}.flex-container-row{display:flex;flex-direction:row}.flex-container-row.v-center{align-items:center}.flex-container-column{display:flex;flex-direction:column}.flex-container-row.inline,.flex-container-column.inline{display:inline-flex !important}.flex-container-column.wrap,.flex-container-row.wrap{flex-wrap:wrap}.flex{min-height:0;flex:1;max-width:100%}.flex.fit-content{flex-basis:auto;flex-grow:0}.flex.fill-area{flex-grow:1;flex-shrink:0;min-width:fit-content}.flex-2{min-height:0;flex:2;max-width:100%}.flex-3{min-height:0;flex:3;max-width:100%}.flex-none{flex:none}.justify-flex-start{justify-content:flex-start}.justify-flex-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-space-between{justify-content:space-between}.items-center{align-items:center}.items-stretch{align-items:stretch}.min-width-xxxxs{min-width:60px}.min-width-xxxs{min-width:80px}.min-width-xxs{min-width:100px}.min-width-xs{min-width:120px}.min-width-s{min-width:160px}.min-width-m{min-width:200px}.min-width-l{min-width:240px}.min-width-xl{min-width:280px}.min-width-xxl{min-width:320px}.block{display:block !important;position:relative}.inline{display:inline !important}.block.inline{display:inline-block !important}.relative{position:relative}.fixed{position:fixed;z-index:20}.fixed.top-right{top:0;right:0}.hidden{display:none !important}.overflow-hidden{overflow:hidden}.height-fill{height:100%}.height-auto{height:auto !important}.float{float:left}.float.right{float:right}.sticky-top-m{position:sticky;top:16px}@media screen and (max-width: 360px){.hide-under-xxs{display:none !important}}@media screen and (min-width: 360px){.hide-over-xxs{display:none !important}}@media screen and (max-width: 400px){.hide-under-xs{display:none !important}}@media screen and (min-width: 400px){.hide-over-xs{display:none !important}}@media screen and (max-width: 600px){.hide-under-s{display:none !important}}@media screen and (min-width: 600px){.hide-over-s{display:none !important}}@media screen and (max-width: 880px){.hide-under-m{display:none !important}}@media screen and (min-width: 880px){.hide-over-m{display:none !important}}@media screen and (max-width: 1000px){.hide-under-l{display:none !important}}@media screen and (min-width: 1000px){.hide-over-l{display:none !important}}@media screen and (max-width: 1100px){.hide-under-xl{display:none !important}}@media screen and (min-width: 1100px){.hide-over-xl{display:none !important}}[hidden]{display:none !important}.screen-reader-only{position:absolute;inset-inline-start:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.rounded{border-radius:4px}.dual-column-content{columns:2}@media screen and (max-width: 880px){.dual-column-content{columns:1}}.clearfix::before,.clearfix::after{content:" ";display:table}.clearfix::after{clear:both}.tri-layout-container{display:grid;margin-inline-start:32px;margin-inline-end:32px;grid-template-columns:1fr 4fr 1fr;grid-template-areas:"a b c";grid-column-gap:32px;position:relative}.tri-layout-sides{grid-column-start:a;grid-column-end:c;grid-row:1;min-width:0;z-index:4}.tri-layout-sides-content{display:grid;grid-template-areas:"a b c";grid-template-columns:1fr 4fr 1fr;height:100%}.tri-layout-middle{grid-area:b;padding-top:16px;min-width:0;z-index:5}.tri-layout-right{grid-area:c;min-width:0}.tri-layout-left{grid-area:a;min-width:0}@media screen and (min-width: 1400px){.tri-layout-left-contents,.tri-layout-right-contents{padding:32px 16px;position:sticky;top:0;max-height:100vh;min-height:50vh;overflow-y:scroll;overflow-x:hidden;height:100%;scrollbar-width:none;-ms-overflow-style:none}.tri-layout-left-contents::-webkit-scrollbar,.tri-layout-right-contents::-webkit-scrollbar{display:none}.tri-layout-middle-contents{max-width:940px;margin:0 auto}}@media screen and (min-width: 1400px)and (max-width: 1700px){.tri-layout-sides-content,.tri-layout-container{grid-template-columns:1fr 972px 1fr}.tri-layout-container{grid-column-gap:12px;margin-inline-start:16px;margin-inline-end:16px}}@media screen and (max-width: 1400px){.tri-layout-container{grid-template-areas:"a b b";grid-template-columns:1fr 3fr;grid-template-rows:min-content min-content 1fr;padding-inline-end:24px}.tri-layout-sides{grid-column-start:a;grid-column-end:a}.tri-layout-sides-content{display:block}}@media screen and (min-width: 1000px)and (max-width: 1400px){.tri-layout-sides-content{position:sticky;top:0;max-height:100vh;min-height:50vh;overflow-y:scroll;overflow-x:hidden;height:100%;scrollbar-width:none;-ms-overflow-style:none}.tri-layout-sides-content::-webkit-scrollbar{display:none}}@media screen and (min-width: 1000px){.tri-layout-mobile-tabs{display:none}.tri-layout-left-contents>*,.tri-layout-right-contents>*{opacity:.6;transition:opacity ease-in-out 120ms}html.dark-mode .tri-layout-left-contents>*,html.dark-mode .tri-layout-right-contents>*{opacity:.75}.tri-layout-left-contents>*:hover,.tri-layout-left-contents>*:focus-within,.tri-layout-right-contents>*:hover,.tri-layout-right-contents>*:focus-within{opacity:1 !important}}@media screen and (min-width: 1000px)and (prefers-contrast: more){.tri-layout-left-contents>*,.tri-layout-right-contents>*{opacity:1 !important}}@media screen and (max-width: 1000px){.tri-layout-container{grid-template-areas:none;grid-template-columns:1fr;grid-column-gap:0;padding-inline-end:6px;padding-inline-start:6px}.tri-layout-container .tri-layout-sides{padding-inline-start:16px;padding-inline-end:16px;grid-column:1/1}.tri-layout-container .tri-layout-left>*,.tri-layout-container .tri-layout-right>*{display:none;pointer-events:none}.tri-layout-container .tri-layout-left,.tri-layout-container .tri-layout-right{padding-top:0 !important}.tri-layout-container .tri-layout-middle{grid-area:none;grid-row:3;grid-column:1/1;z-index:1;overflow:hidden;transition:transform ease-in-out 240ms}.tri-layout-container .tri-layout-left{grid-row:2}.tri-layout-container.show-info{overflow:hidden}.tri-layout-container.show-info .tri-layout-middle{display:none}.tri-layout-container.show-info .tri-layout-right>*,.tri-layout-container.show-info .tri-layout-left>*{display:block;pointer-events:auto}}@media screen and (max-width: 880px){.tri-layout-container{margin-inline-start:0;margin-inline-end:0}}.card{background-color:#fff;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);border-radius:3px;break-inside:avoid}html.dark-mode .card{background-color:#222}.card .body,.card p.empty-text{padding-block:16px}.card a,.card p{word-wrap:break-word;word-break:break-word}.card-title{padding:16px 16px 6px;margin:0;font-size:14px;color:#222;fill:#222;font-weight:400}.card-title a{line-height:1}.card-footer-link,button.card-footer-link{display:block;padding:12px 16px;line-height:1;border-top:1px solid;width:100%;text-align:left;border-color:#ddd;border-radius:0 0 3px 3px;font-size:.9em;margin-top:6px}html.dark-mode .card-footer-link,html.dark-mode button.card-footer-link{border-color:#555}.card-footer-link:hover,button.card-footer-link:hover{text-decoration:none;background-color:#f2f2f2}html.dark-mode .card-footer-link:hover,html.dark-mode button.card-footer-link:hover{background-color:#2d2d2d}.card-footer-link:focus,button.card-footer-link:focus{background-color:#eee;outline:1px dotted #666;outline-offset:-2px}html.dark-mode .card-footer-link:focus,html.dark-mode button.card-footer-link:focus{background-color:#222}.card.border-card{border:1px solid;border-color:#ddd}html.dark-mode .card.border-card{border-color:#000}.card.drag-card{border:1px solid #ddd;border-color:#ddd;background-color:#fff;border-radius:4px;display:flex;padding:0 0 0 40px;margin:12px 0;position:relative}html.dark-mode .card.drag-card{border-color:#000}html.dark-mode .card.drag-card{background-color:#333}.card.drag-card .drag-card-action{cursor:pointer}.card.drag-card .handle,.card.drag-card .drag-card-action{display:flex;align-items:center;text-align:center;justify-content:center;width:28px;flex-grow:0;padding:0 6px}.card.drag-card .handle:hover,.card.drag-card .drag-card-action:hover{background-color:#eee}html.dark-mode .card.drag-card .handle:hover,html.dark-mode .card.drag-card .drag-card-action:hover{background-color:#2d2d2d}.card.drag-card .handle .svg-icon,.card.drag-card .drag-card-action .svg-icon{margin-inline-end:0px}.card.drag-card .outline input{margin:12px 0;width:100%}.card.drag-card .outline{position:relative}.card.drag-card .handle{background-color:#eee;left:0;position:absolute;top:0;bottom:0}html.dark-mode .card.drag-card .handle{background-color:#2d2d2d}.card.drag-card>div{padding:0 12px;max-width:80%;flex:1}.grid-card{display:flex;flex-direction:column;border:1px solid #ddd;border-color:#ddd;margin-bottom:24px;border-radius:4px;overflow:hidden;min-width:100px;color:#444;transition:border-color ease-in-out 120ms,box-shadow ease-in-out 120ms}html.dark-mode .grid-card{border-color:#000}.grid-card:hover{color:#444;text-decoration:none;box-shadow:0 1px 6px -1px rgba(0,0,0,.1)}html.dark-mode .grid-card:hover{box-shadow:0 1px 6px -1px rgba(0,0,0,.5)}.grid-card h2{width:100%;font-size:1.5em;margin:0 0 10px}.grid-card p{font-size:.7rem;margin:0;line-height:1.6em}.grid-card .grid-card-content{flex:1;border-top:0;border-bottom-width:2px}.grid-card .grid-card-content,.grid-card .grid-card-footer{padding:24px}.grid-card .grid-card-content+.grid-card-footer{padding-top:0}.book-grid-item .grid-card-footer p.small{font-size:.8em;margin:0}.content-wrap.card{padding:16px 48px;margin-inline-start:auto;margin-inline-end:auto;margin-bottom:24px;overflow:initial;min-height:60vh;border-radius:8px}.content-wrap.card.auto-height{min-height:0}.content-wrap.card.fill-width{width:100%}@media screen and (max-width: 1400px){.content-wrap.card{padding:16px 32px}}@media screen and (max-width: 880px){.content-wrap.card{padding:16px 24px}}@media screen and (max-width: 600px){.content-wrap.card{padding:16px 16px}}.sub-card{box-shadow:0 1px 3px 0 rgba(0,0,0,.1);border:1.5px solid;border-color:#e2e2e2;border-radius:4px}html.dark-mode .sub-card{border-color:#444}.outline-hover{border:1px solid rgba(0,0,0,0) !important}.outline-hover:hover{border:1px solid rgba(0,0,0,.1) !important}.fade-in-when-active{opacity:.6;transition:opacity ease-in-out 120ms}html.dark-mode .fade-in-when-active{opacity:.7}.fade-in-when-active:hover,.fade-in-when-active:focus-within{opacity:1 !important}@media(prefers-contrast: more){.fade-in-when-active{opacity:1 !important}}.tag-item{display:inline-flex;margin-bottom:6px;margin-inline-end:6px;border-radius:4px;border:1px solid;overflow:hidden;font-size:.85em;border-color:#ccc}html.dark-mode .tag-item{border-color:#666}.tag-item a,.tag-item span,.tag-item a:hover,.tag-item a:active{padding:4px 8px;color:rgba(0,0,0,.7);transition:background-color ease-in-out 80ms;text-decoration:none}html.dark-mode .tag-item a,html.dark-mode .tag-item span,html.dark-mode .tag-item a:hover,html.dark-mode .tag-item a:active{color:rgba(255,255,255,.8)}.tag-item a:hover{background-color:rgba(255,255,255,.7)}html.dark-mode .tag-item a:hover{background-color:rgba(255,255,255,.3)}.tag-item svg{fill:rgba(0,0,0,.5)}html.dark-mode .tag-item svg{fill:rgba(255,255,255,.5)}.tag-item .tag-value{border-inline-start:1px solid;border-color:#ddd;background-color:rgba(255,255,255,.5)}html.dark-mode .tag-item .tag-value{border-color:#666}html.dark-mode .tag-item .tag-value{background-color:rgba(255,255,255,.2)}.tag-name.highlight,.tag-value.highlight{font-weight:bold}.tag-list div:last-child .tag-item{margin-bottom:0}.item-list-row .tag-item{margin-bottom:0}.api-method{font-size:.75rem;background-color:#888;padding:6px;line-height:1.3;opacity:.7;vertical-align:top;border-radius:3px;color:#fff;display:inline-block;min-width:60px;text-align:center;font-weight:bold}.api-method[data-method=GET]{background-color:#077b70}.api-method[data-method=POST]{background-color:#cf4d03}.api-method[data-method=PUT]{background-color:#0288d1}.api-method[data-method=DELETE]{background-color:#ab0f0e}.sticky-sidebar{position:sticky;top:16px;max-height:calc(100vh - 16px);overflow-y:auto}button{background-color:rgba(0,0,0,0);border:0;font-size:100%}.button{text-decoration:none;font-size:.85rem;line-height:1.4em;padding:7.8px 16px;margin-top:6px;margin-bottom:6px;display:inline-block;font-weight:400;outline:0;border-radius:4px;cursor:pointer;transition:background-color ease-in-out 120ms,filter ease-in-out 120ms,box-shadow ease-in-out 120ms;box-shadow:none;background-color:var(--color-primary);color:#fff;border:1px solid var(--color-primary);vertical-align:top}.button:hover,.button:focus,.button:active{background-color:var(--color-primary);text-decoration:none;color:#fff}.button:hover{box-shadow:0 0 4px 1px #ccc;filter:brightness(110%)}html.dark-mode .button:hover{box-shadow:0 0 4px 1px rgba(0,0,0,.5)}.button:focus{outline:1px dotted currentColor;outline-offset:-6px;box-shadow:none;filter:brightness(90%)}.button:active{outline:0}.button.outline{background-color:rgba(0,0,0,0);color:#666;fill:currentColor;border:1px solid;border-color:#ccc}html.dark-mode .button.outline{color:#aaa}html.dark-mode .button.outline{border-color:#666}.button.outline:hover,.button.outline:focus,.button.outline:active{color:#444;border:1px solid #ccc;box-shadow:0 1px 4px 0 rgba(0,0,0,.1);background-color:#f2f2f2;background-color:#f8f8f8;filter:none}html.dark-mode .button.outline:hover,html.dark-mode .button.outline:focus,html.dark-mode .button.outline:active{color:#bbb}html.dark-mode .button.outline:hover,html.dark-mode .button.outline:focus,html.dark-mode .button.outline:active{background-color:#444}.button.outline:active{border-color:#bbb;background-color:#ddd;color:#666;box-shadow:inset 0 0 2px rgba(0,0,0,.1)}.button+.button{margin-inline-start:12px}.button.small{font-size:.75rem;padding:7.2px 12px}.text-button{cursor:pointer;background-color:rgba(0,0,0,0);padding:0;margin:0;border:none;user-select:none;font-size:.75rem;line-height:1.4em;color:var(--color-link)}.text-button:active{outline:0}.text-button:hover{text-decoration:none}.text-button:hover,.text-button:focus{color:var(--color-link);fill:var(--color-link)}.text-button.hover-underline:hover{text-decoration:underline}.button.block{width:100%;text-align:start;display:block}.button.icon .svg-icon,.icon-button .svg-icon,.text-button.icon .svg-icon{margin-inline-end:0}.icon-button{text-align:center;border:1px solid rgba(0,0,0,0)}.icon-button:hover{background-color:rgba(0,0,0,.05);border-radius:4px;border-color:#ddd;cursor:pointer}html.dark-mode .icon-button:hover{border-color:#444}.button.svg{display:flex;align-items:center;padding:12px 16px;padding-bottom:10px;width:100%}.button.svg svg{display:inline-block;width:24px;height:24px;bottom:auto;margin-inline-end:16px}.button[disabled]{background-color:#bbb;cursor:default;border-color:#ccc}.button[disabled]:hover{background-color:#bbb;cursor:default;box-shadow:none}table{min-width:100px;max-width:100%}table thead{background-color:#f8f8f8;font-weight:500}html.dark-mode table thead{background-color:#333}table td,table th{min-width:10px;padding:6px 8px;border:1px solid #ddd;overflow:auto;line-height:1.2;word-break:break-word;vertical-align:top}table td p,table th p{margin:0}table.table{width:100%}table.table tr td,table.table tr th{border-bottom:1px solid rgba(0,0,0,.05)}table.table th,table.table td{text-align:start;border:none;padding:12px 12px;vertical-align:middle;margin:0;overflow:visible}table.table th{font-weight:bold}table.table tr:hover{background-color:#f2f2f2}html.dark-mode table.table tr:hover{background-color:#333}table.table .text-right{text-align:end}table.table .text-center{text-align:center}table.table td.actions{overflow:visible}table.table a{display:inline-block}table.table.expand-to-padding{margin-left:-12px;margin-right:-12px;width:calc(100% + 2*12px);max-width:calc(100% + 2*12px)}table.no-style td{border:0;padding:0}table.list-table{margin:0 -6px}table.list-table td{border:0;vertical-align:middle;padding:6px}.input-base,input[type=text],input[type=number],input[type=email],input[type=date],input[type=search],input[type=url],input[type=color],input[type=password],select,textarea,.fake-input{border-radius:3px;border:1px solid #d4d4d4;background-color:#fff;border-color:#d4d4d4;color:#666;display:inline-block;font-size:14px;padding:10.8px;height:40px;width:250px;max-width:100%}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{background-color:#333}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{border-color:#111}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{color:#aaa}.input-base.neg,input.neg[type=text],input.neg[type=number],input.neg[type=email],input.neg[type=date],input.neg[type=search],input.neg[type=url],input.neg[type=color],input.neg[type=password],select.neg,textarea.neg,.neg.fake-input,.input-base.invalid,input.invalid[type=text],input.invalid[type=number],input.invalid[type=email],input.invalid[type=date],input.invalid[type=search],input.invalid[type=url],input.invalid[type=color],input.invalid[type=password],select.invalid,textarea.invalid,.invalid.fake-input{border:1px solid var(--color-negative)}.input-base.pos,input.pos[type=text],input.pos[type=number],input.pos[type=email],input.pos[type=date],input.pos[type=search],input.pos[type=url],input.pos[type=color],input.pos[type=password],select.pos,textarea.pos,.pos.fake-input,.input-base.valid,input.valid[type=text],input.valid[type=number],input.valid[type=email],input.valid[type=date],input.valid[type=search],input.valid[type=url],input.valid[type=color],input.valid[type=password],select.valid,textarea.valid,.valid.fake-input{border:1px solid var(--color-positive)}.input-base.disabled,input.disabled[type=text],input.disabled[type=number],input.disabled[type=email],input.disabled[type=date],input.disabled[type=search],input.disabled[type=url],input.disabled[type=color],input.disabled[type=password],select.disabled,textarea.disabled,.disabled.fake-input,.input-base[disabled],input[disabled][type=text],input[disabled][type=number],input[disabled][type=email],input[disabled][type=date],input[disabled][type=search],input[disabled][type=url],input[disabled][type=color],input[disabled][type=password],select[disabled],textarea[disabled],[disabled].fake-input{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAMUlEQVQIW2NkwAGuXbv2nxGbHEhCS0uLEUMSJgHShCKJLIEiiS4Bl8QmAZbEJQGSBAC62BuJ+tt7zgAAAABJRU5ErkJggg==)}.input-base[readonly],input[readonly][type=text],input[readonly][type=number],input[readonly][type=email],input[readonly][type=date],input[readonly][type=search],input[readonly][type=url],input[readonly][type=color],input[readonly][type=password],select[readonly],textarea[readonly],[readonly].fake-input{background-color:#f8f8f8}.input-base:focus,input[type=text]:focus,input[type=number]:focus,input[type=email]:focus,input[type=date]:focus,input[type=search]:focus,input[type=url]:focus,input[type=color]:focus,input[type=password]:focus,select:focus,textarea:focus,.fake-input:focus{border-color:var(--color-primary);outline:1px solid var(--color-primary)}.input-fill-width{width:100% !important}.fake-input{overflow:auto}#html-editor{display:none}#markdown-editor{position:relative;z-index:5}#markdown-editor #markdown-editor-input{font-style:normal;font-weight:400;padding:6px 16px;color:#444;border-radius:0;max-height:100%;flex:1;border:0;width:100%}#markdown-editor #markdown-editor-input:focus{outline:0}#markdown-editor.fullscreen{position:fixed;top:0;left:0;height:100%;z-index:2}.markdown-editor-wrap{border-top:1px solid #ddd;border-bottom:1px solid #ddd;border-color:#ddd;position:relative;flex:1;min-width:0}html.dark-mode .markdown-editor-wrap{border-color:#000}.markdown-editor-wrap+.markdown-editor-wrap{flex-basis:50%;flex-shrink:0;flex-grow:0}.markdown-editor-wrap .cm-editor{flex:1;max-width:100%;border:0;margin:0}.markdown-panel-divider{width:2px;background-color:#ddd;cursor:col-resize}html.dark-mode .markdown-panel-divider{background-color:#000}@media screen and (max-width: 880px){#markdown-editor{flex-direction:column}#markdown-editor .markdown-editor-wrap{width:100%;max-width:100%;flex-grow:1;flex-basis:auto !important;min-height:0}.editor-toolbar-label{float:none !important;border-color:#ddd;display:block}html.dark-mode .editor-toolbar-label{border-color:#555}.markdown-editor-wrap:not(.active) .editor-toolbar+div,.markdown-editor-wrap:not(.active) .editor-toolbar .buttons,.markdown-editor-wrap:not(.active) .markdown-display{display:none}#markdown-editor .markdown-editor-wrap:not(.active){flex-grow:0;flex:none}}.markdown-editor-display{background-color:#fff}.markdown-editor-display body{display:block;background-color:#fff;padding-inline-start:16px;padding-inline-end:16px}.markdown-editor-display [drawio-diagram]:hover{outline:2px solid var(--color-primary)}html.markdown-editor-display.dark-mode{background-color:#222}html.markdown-editor-display.dark-mode body{background-color:#222}.editor-toolbar{height:32px;width:100%;font-size:11px;line-height:1.6;border-bottom:1px solid #ccc;background-color:#fff;border-color:#ccc;flex:none}html.dark-mode .editor-toolbar{background-color:#333}html.dark-mode .editor-toolbar{border-color:#000}html.dark-mode .editor-toolbar button{color:#aaa}.editor-toolbar .buttons{font-size:14px}.editor-toolbar .buttons .dropdown-menu{padding:0}.editor-toolbar .buttons .toggle-switch{margin:12px 0}.editor-toolbar .buttons button{font-size:.9rem;width:2rem;text-align:center;border-left:1px solid;border-color:#ddd}html.dark-mode .editor-toolbar .buttons button{border-color:#555}.editor-toolbar .buttons button svg{margin-inline-end:0}.editor-toolbar .buttons button:hover{background-color:#ddd}html.dark-mode .editor-toolbar .buttons button:hover{background-color:#222}label{color:#666;display:block;line-height:1.4em;font-size:.94em;font-weight:400;padding-bottom:2px;margin-bottom:.2em}html.dark-mode label{color:#ddd}label.inline{display:inline-block}label.radio,label.checkbox{font-weight:400;user-select:none}label.radio input[type=radio],label.radio input[type=checkbox],label.checkbox input[type=radio],label.checkbox input[type=checkbox]{margin-inline-end:6px}label.inline.checkbox{margin-inline-end:16px}label+p.small{margin-bottom:.8em}table.form-table{max-width:100%}table.form-table td{overflow:hidden;padding:1.5px 0}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:url("data:image/svg+xml;utf8,");background-size:10px 12px;background-position:calc(100% - 20px) 64%;background-repeat:no-repeat}html[dir=rtl] select{background-position:20px 70%}input[type=date]{width:190px}input[type=color]{height:60px}input[type=color].small{height:42px;width:60px;padding:2px}.toggle-switch{user-select:none;display:inline-grid;grid-template-columns:28px 1fr;align-items:center;margin:16px 0}.toggle-switch .custom-checkbox{width:16px;height:16px;border-radius:2px;display:inline-block;border:2px solid currentColor;overflow:hidden;fill:currentColor}.toggle-switch .custom-checkbox .svg-icon{width:100%;height:100%;margin:0;bottom:auto;top:-1.5px;left:0;transition:transform ease-in-out 120ms;transform:scale(0);transform-origin:center center}.toggle-switch input[type=checkbox]{display:none}.toggle-switch input[type=checkbox]:checked+.custom-checkbox .svg-icon{transform:scale(1)}.toggle-switch .custom-checkbox:hover{background-color:rgba(0,0,0,.05);opacity:.8}.toggle-switch input[type=checkbox][disabled]~*{opacity:.8;cursor:not-allowed}.toggle-switch input[type=checkbox][disabled]~.custom-checkbox{border-color:#999;color:#999 !important;background:#f2f2f2}.toggle-switch-list .toggle-switch{margin:6px 0}.toggle-switch-list.compact .toggle-switch{margin:1px 0}.form-group{margin-bottom:12px}.setting-list>div{border-bottom:1px solid #ddd;padding:32px 0}.setting-list>div:last-child{border-bottom:none}.setting-list-label{color:#222;font-size:1rem}.setting-list-label+p.small{margin-bottom:0}.setting-list-label+.grid{margin-top:16px}.setting-list .grid input[type=text],.setting-list .grid input[type=email],.setting-list .grid input[type=password],.setting-list .grid select,.stretch-inputs input[type=text],.stretch-inputs input[type=email],.stretch-inputs input[type=password],.stretch-inputs select{width:100%}.simple-code-input{background-color:#f8f8f8;font-family:monospace;font-size:12px;min-height:100px;display:block;width:100%}.form-group div.text-pos,.form-group div.text-neg,.form-group p.text-post,.form-group p.text-neg{padding:6px 0}.form-group.collapsible{padding:0 16px;border:1px solid;border-color:#ddd;border-radius:4px}html.dark-mode .form-group.collapsible{border-color:#000}.form-group.collapsible .collapse-title{margin-inline-start:-16px;margin-inline-end:-16px;padding:12px 16px;display:block;width:calc(100% + 32px);text-align:start}.form-group.collapsible .collapse-title,.form-group.collapsible .collapse-title label{cursor:pointer}.form-group.collapsible .collapse-title label{padding-bottom:0;margin-bottom:0;color:inherit}.form-group.collapsible .collapse-title label:before{display:inline-block;content:"▸";margin-inline-end:16px;transition:all ease-in-out 400ms;transform:rotate(0)}.form-group.collapsible .collapse-content{display:none;padding-bottom:16px}.form-group.collapsible.open .collapse-title label:before{transform:rotate(90deg)}.title-input input[type=text]{display:block;width:100%;padding:12px;margin-top:0;font-size:2em;height:auto}.description-input textarea{display:block;width:100%;padding:12px;font-size:14px;color:#666;height:auto}.description-input>.tox-tinymce{border:1px solid #ddd !important;border-color:#ddd !important;border-radius:3px}html.dark-mode .description-input>.tox-tinymce{border-color:#000 !important}.description-input>.tox-tinymce .tox-toolbar__primary{justify-content:end}.search-box{max-width:100%;position:relative}.search-box button[tabindex="-1"]{background-color:rgba(0,0,0,0);border:none;color:#666;padding:0;cursor:pointer;position:absolute;left:8px;top:9px}html.dark-mode .search-box button[tabindex="-1"]{color:#aaa}html[dir=rtl] .search-box button[tabindex="-1"]{right:8px;left:auto}.search-box input{display:block;padding:9px;padding-inline-start:28px;width:300px;max-width:100%;height:auto}.search-box.flexible input{width:100%}.search-box button.search-box-cancel{left:auto;right:0}.contained-search-box{display:flex;height:38px;z-index:-1}.contained-search-box.floating{box-shadow:0 1px 3px 1px rgba(76,76,76,.26);border-radius:4px;overflow:hidden}html.dark-mode .contained-search-box.floating{border:1px solid #000}.contained-search-box input,.contained-search-box button{height:100%;border-radius:0;border:1px solid #ddd;border-color:#ddd;margin-inline-start:-1px}html.dark-mode .contained-search-box input,html.dark-mode .contained-search-box button{border-color:#000}.contained-search-box input:last-child,.contained-search-box button:last-child{border-inline-end:0}.contained-search-box input{border:0;flex:5;padding:6px 12px}.contained-search-box input:focus,.contained-search-box input:active{outline:1px dotted var(--color-primary);outline-offset:-2px;border:0}.contained-search-box button{border:0;width:48px;border-inline-start:1px solid #ddd;background-color:#fff;background-color:#fff;color:#444}html.dark-mode .contained-search-box button{background-color:#333}html.dark-mode .contained-search-box button{color:#aaa}.contained-search-box button:focus{outline:1px dotted var(--color-primary);outline-offset:-2px}.contained-search-box svg{margin:0}@media screen and (max-width: 600px){.contained-search-box{width:180px}}.outline>input{border:0;border-bottom:2px solid #ddd;border-radius:0}.outline>input:focus,.outline>input:active{border:0;border-bottom:2px solid #aaa;outline:0}.image-picker img{background-color:#bbb;max-width:100%}.custom-file-input{overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px;height:1px;border:0;clip:rect(0, 0, 0, 0)}.custom-file-input:focus+label{border-color:var(--color-primary);outline:1px solid var(--color-primary)}input.shortcut-input{width:auto;max-width:120px;height:auto}.anim.fadeIn{opacity:0;animation-name:fadeIn;animation-duration:120ms;animation-timing-function:ease-in-out;animation-fill-mode:forwards}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.search-suggestions-animation{animation-name:searchSuggestions;animation-duration:120ms;animation-fill-mode:forwards;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99)}@keyframes searchSuggestions{0%{opacity:.5;transform:scale(0.9)}100%{opacity:1;transform:scale(1)}}@keyframes loadingBob{0%{transform:translate3d(0, 0, 0)}30%{transform:translate3d(0, 0, 0)}50%{transform:translate3d(0, -10px, 0)}70%{transform:translate3d(0, 0, 0)}100%{transform:translate3d(0, 0, 0)}}@keyframes pointer{0%{transform:translate3d(0, 20px, 0) scale3d(0, 0, 0)}100%{transform:translate3d(0, 0, 0) scale3d(1, 1, 1)}}.anim.pointer{transform-origin:50% 100%;animation-name:pointer;animation-duration:180ms;animation-delay:0s;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99)}.tox.tox-fullscreen{position:fixed;top:0;height:100%;width:100%;max-width:100%;z-index:100}.tox.tox-tinymce{border-inline:0;border-bottom:0}.page-content.mce-content-body{padding-block-start:1rem;padding-block-end:1rem;outline:0;display:block}.wysiwyg-input.mce-content-body{padding-block-start:1rem;padding-block-end:1rem;outline:0;display:block}.wysiwyg-input.mce-content-body:before{padding:1rem;top:4px;font-style:italic;color:rgba(34,47,62,.5)}html.dark-mode .wysiwyg-input.mce-content-body:before{color:rgba(155,155,155,.5)}.page-content.mce-content-body doc-root{display:block}.page-content.mce-content-body code-block{display:block}.page-content.mce-content-body p{line-height:1.6}body.page-content.mce-content-body{padding-bottom:5rem}.tox .tox-pop__dialog .tox-toolbar{background:rgba(0,0,0,0) !important}.tox-toolbar__primary{justify-content:center}.page-content.mce-content-body code-block>*{pointer-events:none}.page-content.mce-content-body code-block pre{display:none}.page-content.mce-content-body details summary{pointer-events:none}.page-content.mce-content-body details doc-root{padding:12px;margin-left:-10px;margin-right:-10px;margin-bottom:-10px;margin-top:-10px;overflow:hidden}.page-content.mce-content-body .mce-preview-object.align-right{float:right !important;margin:6px 0 6px 12px}.page-content.mce-content-body .mce-preview-object.align-left{float:left !important;margin:6px 16px 16px 0}.page-content.mce-content-body .mce-preview-object.align-center{display:block;margin-left:auto;margin-right:auto}.page-content.mce-content-body .mce-preview-object iframe,.page-content.mce-content-body .mce-preview-object video{display:block;margin:0 !important;float:none !important}.page-content.mce-content-body td[data-mce-selected]::after,.page-content.mce-content-body th[data-mce-selected]::after{top:1px;left:1px;bottom:1px;right:1px;outline:1px dashed #1a85ff;outline-offset:0}.dark-mode .tox .tox-toolbar__primary,.dark-mode .tox .tox-menu,.dark-mode .tox .tox-dialog__header,.dark-mode .tox .tox-dialog,.dark-mode .tox .tox-dialog__footer,.dark-mode .tox .tox-pop__dialog,.dark-mode .tox.tox-tinymce-aux .tox-toolbar__overflow{background-color:#333 !important}.dark-mode .tox .tox-tbtn svg,.dark-mode .tox .tox-tbtn,.dark-mode .tox .tox-collection--list .tox-collection__item--active:not(.tox-collection__item--state-disabled){color:#dbdbdb;fill:#dbdbdb}.tox .tox-tbtn--bespoke .tox-tbtn__select-label{width:6em !important}.tox-menu .tox-collection__item blockquote::before{content:none}.tox-menu .tox-collection__item blockquote{border-left:4px solid var(--color-primary) !important;padding:4px 6px !important}.tox-menu .tox-collection__item blockquote{border-left:4px solid var(--color-primary) !important;padding:4px 6px !important}.tox-menu .tox-collection__item p[style*=background-color]{padding:4px 6px !important;border-left:3px solid currentColor !important}.tox-menu .tox-collection__item[title^="<"]>div>div{font-family:var(--font-code) !important;border:1px solid #ddd !important;background-color:#eee !important;padding:4px 6px !important}.tox-menu .tox-collection__item-label{line-height:normal !important}.page-content.mce-content-body .task-list-item{margin-left:0;position:relative}.page-content.mce-content-body .task-list-item>input[type=checkbox]{display:none}.page-content.mce-content-body .task-list-item:before{content:"";display:inline-block;border:2px solid #ccc;width:12px;height:12px;border-radius:2px;margin-right:8px;vertical-align:text-top;cursor:pointer;position:absolute;left:-24px;top:4px}.page-content.mce-content-body .task-list-item[checked]:before{background-color:#ccc;background-image:url('data:image/svg+xml;utf8,');background-position:50% 50%;background-size:100% 100%}.cm-editor{font-size:12px;border:1px solid #ddd;line-height:1.4;margin-bottom:24px}.page-content .cm-editor,.CodeMirrorContainer .cm-editor{border-radius:4px}.cm-editor .cm-line,.cm-editor .cm-gutter{font-family:var(--font-code)}.dark-mode .cm-editor{border-color:#444}.cm-copy-button{position:absolute;display:flex;align-items:center;justify-content:center;top:-1px;inset-inline-end:-1px;background-color:#eee;border:1px solid #ddd;border-start-end-radius:4px;background-color:#eee;border-color:#ddd;color:#444;line-height:0;cursor:pointer;z-index:5;user-select:none;opacity:0;pointer-events:none;width:32px;height:32px;transition:background-color linear 60ms,color linear 60ms}html.dark-mode .cm-copy-button{background-color:#333}html.dark-mode .cm-copy-button{border-color:#444}html.dark-mode .cm-copy-button{color:#888}.cm-copy-button svg{fill:currentColor}.cm-copy-button.success{background:var(--color-positive);color:#fff}.cm-copy-button:focus{outline:0 !important}.cm-editor:hover .cm-copy-button{user-select:all;opacity:.6;pointer-events:all}.notification{position:fixed;top:0;right:0;margin:32px;padding:16px 24px;background-color:#fff;background-color:#fff;border-radius:4px;border-inline-start:6px solid currentColor;box-shadow:0 1px 6px 1px rgba(22,22,22,.2);z-index:999999;cursor:pointer;max-width:360px;transition:transform ease-in-out 280ms;transform:translateX(580px);display:grid;grid-template-columns:42px 1fr 12px;color:#444;font-weight:700}html.dark-mode .notification{background-color:#444}.notification span,.notification svg{vertical-align:middle;justify-self:center;align-self:center}.notification svg{width:2.8rem;height:2.8rem;padding-inline-end:12px;fill:currentColor}.notification .dismiss{margin-top:-8px}.notification .dismiss svg{height:1rem;color:#444}html.dark-mode .notification .dismiss svg{color:#888}.notification span{vertical-align:middle;line-height:1.3}html.dark-mode .notification span{color:#bbb}.notification.pos{color:var(--color-positive)}.notification.neg{color:var(--color-negative)}.notification.warning{color:var(--color-warning)}.notification.showing{transform:translateX(0)}.notification.showing:hover{transform:translate3d(0, -2px, 0)}.chapter-contents-toggle{cursor:pointer;margin:0;transition:all ease-in-out 180ms;user-select:none}.chapter-contents-toggle svg[data-icon=caret-right]{margin-inline-end:0;font-size:1rem;transition:all ease-in-out 180ms;transform:rotate(0deg);transform-origin:50% 50%}.chapter-contents-toggle.open svg[data-icon=caret-right]{transform:rotate(90deg)}.chapter-contents-toggle svg[data-icon=caret-right]+*{margin-inline-start:3px}[overlay],.popup-background{background-color:rgba(0,0,0,.333);position:fixed;z-index:95536;width:100%;height:100%;min-width:100%;min-height:100%;top:0;left:0;right:0;bottom:0;align-items:center;justify-content:center;display:none}html.dark-mode [overlay],html.dark-mode .popup-background{background-color:rgba(0,0,0,.6)}.popup-body-wrap{display:flex}.popup-body{background-color:#fff;max-height:90%;max-width:1200px;width:90%;height:auto;margin:2% auto;border-radius:4px;box-shadow:0 0 15px 0 rgba(0,0,0,.3);overflow:hidden;z-index:999;display:flex;flex-direction:column;position:relative}html.dark-mode .popup-body{background-color:#333}.popup-body.small{margin:2% auto;width:800px;max-width:90%}.popup-body.very-small{margin:2% auto;width:600px;max-width:90%}.popup-body:before{display:flex;align-self:flex-start}.popup-body .popup-content{overflow-y:auto}.popup-body:focus{outline:0}.popup-header button,.popup-footer button{margin:0;border-radius:0;box-shadow:none;color:#fff;padding:6px 16px;cursor:pointer}.popup-header button:not(.popup-header-close){font-size:.8rem}.popup-header button:hover{background-color:rgba(255,255,255,.1)}.popup-footer{justify-content:end;background-color:var(--color-primary-light);min-height:41px}.popup-footer button{padding:10px 16px}.popup-header-close{border:0;color:#fff;font-size:16px;cursor:pointer}.popup-header-close svg{margin-right:0}.popup-header,.popup-footer{display:flex;position:relative;height:40px;flex:0}.popup-header .popup-title,.popup-footer .popup-title{color:#fff;margin-right:auto;padding:8px 16px}.popup-header.flex-container-row,.popup-footer.flex-container-row{display:flex !important}body.flexbox-support #entity-selector-wrap .popup-body .form-group{height:444px;min-height:444px}#entity-selector-wrap .popup-body .form-group{margin:0}.popup-body .entity-selector-container{flex:1}.dropzone-overlay{position:absolute;display:flex;justify-content:center;align-items:center;font-size:1.333rem;width:98%;height:98%;left:1%;top:1%;border-radius:4px;border:1px dashed var(--color-primary);font-style:italic;box-sizing:content-box;background-clip:padding-box;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%23a9a9a9' fill-opacity='0.52' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");background-color:var(--color-primary);color:#fff;opacity:.8;z-index:9;pointer-events:none;animation:dzAnimIn 240ms ease-in-out}.dropzone-landing-area{background-color:var(--color-primary-light);padding:16px 24px;width:100%;border:1px dashed var(--color-primary);color:var(--color-primary);border-radius:4px}@keyframes dzAnimIn{0%{opacity:0;transform:scale(0.7)}60%{transform:scale(1.1)}100%{transform:scale(1);opacity:.8}}@keyframes dzFileItemIn{0%{opacity:.5;transform:translateY(28px)}100%{opacity:1;transform:translateY(0)}}@keyframes dzFileItemOut{0%{opacity:1;transform:translateY(0)}100%{opacity:.5;transform:translateY(28px)}}.dropzone-file-item{width:260px;height:80px;position:relative;display:flex;margin:1rem;flex-direction:row;background:#fff;box-shadow:0 1px 6px 1px rgba(22,22,22,.2);border-radius:4px;overflow:hidden;padding-bottom:3px;animation:dzFileItemIn ease-in-out 240ms;transition:transform ease-in-out 120ms,box-shadow ease-in-out 120ms;cursor:pointer}html.dark-mode .dropzone-file-item{background:#444}.dropzone-file-item:hover{transform:translateY(-3px);box-shadow:0 3px 8px 1px rgba(22,22,22,.2)}.dropzone-file-item.dismiss{animation:dzFileItemOut ease-in-out 240ms}.dropzone-file-item .loading-container{text-align:start !important;margin:0}.dropzone-file-item-image-wrap{width:80px;position:relative;background-color:var(--color-primary-light)}.dropzone-file-item-image-wrap img{object-fit:cover;width:100%;height:100%;opacity:.8}.dropzone-file-item-text-wrap{flex:1;display:block;padding:1rem;overflow:auto}.dropzone-file-item-progress{position:absolute;bottom:0;left:0;font-size:0;height:3px;background-color:var(--color-primary);transition:width ease-in-out 240ms}.dropzone-file-item-label,.dropzone-file-item-status{align-items:center;font-size:.8rem;font-weight:700}.dropzone-file-item-status[data-status]{display:flex;font-size:.6rem;font-weight:500;line-height:1.2}.dropzone-file-item-status[data-status=success]{color:var(--color-positive)}.dropzone-file-item-status[data-status=error]{color:var(--color-negative)}.dropzone-file-item-status[data-status]+.dropzone-file-item-label{display:none}.image-manager-body{min-height:70vh}.image-manager-filter-bar{position:sticky;top:0;z-index:5;background-color:rgba(255,255,255,.85)}html.dark-mode .image-manager-filter-bar{background-color:rgba(80,80,80,.85)}.image-manager-filter-bar-bg{position:absolute;left:0;top:0;width:100%;height:100%;opacity:.15;z-index:-1}.image-manager-filters{box-shadow:0 1px 3px 1px rgba(76,76,76,.26);border-radius:4px;overflow:hidden;border-bottom:0 !important}html.dark-mode .image-manager-filters{border:1px solid #000 !important}.image-manager-filters button{line-height:0;background-color:#fff}html.dark-mode .image-manager-filters button{background-color:#333}.image-manager-filters svg{margin:0}.image-manager-list{padding:3px;display:grid;grid-template-columns:repeat(auto-fill, minmax(max(140px, 17%), 1fr));gap:3px;z-index:3}.image-manager-list>div{aspect-ratio:1}.image-manager-list .image{display:block;position:relative;border-radius:0;margin:0;width:100%;text-align:start;padding:0;cursor:pointer;aspect-ratio:1;border-color:#ddd;transition:all linear 80ms;overflow:hidden}html.dark-mode .image-manager-list .image{border-color:#000}.image-manager-list .image.selected{background-color:var(--color-primary-light);outline:currentColor 3px solid;border-radius:3px;transform:scale3d(0.95, 0.95, 0.95)}.image-manager-list .image img{width:100%;max-width:100%;display:block;object-fit:cover;height:auto}.image-manager-list .image .image-meta{opacity:0;position:absolute;width:100%;bottom:0;left:0;color:#eee;background-color:rgba(0,0,0,.7);font-size:10px;padding:3px 4px;pointer-events:none;transition:opacity ease-in-out 80ms}.image-manager-list .image .image-meta span{display:block}.image-manager-list .image.selected .image-meta,.image-manager-list .image:hover .image-meta,.image-manager-list .image:focus .image-meta{opacity:1}@media screen and (max-width: 880px){.image-manager-list .image .image-meta{display:none}}.image-manager .load-more{text-align:center;padding:12px 16px;clear:both}.image-manager .load-more .loading-container{margin:0}.image-manager .loading-container{text-align:center}.image-manager-list .image-manager-list-warning{grid-column:1/-1;aspect-ratio:auto}.image-manager-warning{background:#fff;color:var(--color-warning);font-weight:bold;border-inline:3px solid var(--color-warning)}html.dark-mode .image-manager-warning{background:#333}.image-manager-sidebar{width:300px;margin:0 auto;overflow-y:auto;overflow-x:hidden;border-inline-start:1px solid #ddd;border-color:#ddd}html.dark-mode .image-manager-sidebar{border-color:#000}.image-manager-sidebar .inner{min-height:auto;padding:16px}.image-manager-sidebar .image-manager-viewer img{max-width:100%;max-height:180px;display:block;margin:0 auto 16px auto;box-shadow:0 1px 21px 1px rgba(76,76,76,.3)}.image-manager-sidebar .image-manager-viewer{height:196px;display:flex;align-items:center;justify-content:center}.image-manager-sidebar .image-manager-viewer a{display:inline-block}@media screen and (max-width: 880px){.image-manager-sidebar{border-inline-start:0}}.image-manager-content{display:flex;flex-direction:column;flex:1;overflow-y:scroll}.image-manager-content .container{width:100%}.image-manager-content .full-tab{text-align:center}.tab-container.bordered [role=tablist] button[role=tab]{border-inline-end:1px solid #ddd;border-inline-end-color:#ddd}html.dark-mode .tab-container.bordered [role=tablist] button[role=tab]{border-inline-end-color:#000}.tab-container.bordered [role=tablist] button[role=tab]:last-child{border-inline-end:none}.tab-container [role=tablist]{display:flex;align-items:end;justify-items:start;text-align:start;border-bottom:1px solid #ddd;border-color:#ddd;margin-bottom:16px}html.dark-mode .tab-container [role=tablist]{border-color:#444}.tab-container [role=tablist] button[role=tab]{display:inline-block;padding:12px;color:rgba(0,0,0,.5);cursor:pointer;border-bottom:2px solid rgba(0,0,0,0);margin-bottom:-1px}html.dark-mode .tab-container [role=tablist] button[role=tab]{color:rgba(255,255,255,.5)}.tab-container [role=tablist] button[role=tab][aria-selected=true]{color:var(--color-link) !important;border-bottom-color:var(--color-link) !important;outline:0 !important}.tab-container [role=tablist] button[role=tab]:hover,.tab-container [role=tablist] button[role=tab]:focus{color:rgba(0,0,0,.8);border-bottom-color:rgba(0,0,0,.2)}html.dark-mode .tab-container [role=tablist] button[role=tab]:hover,html.dark-mode .tab-container [role=tablist] button[role=tab]:focus{color:rgba(255,255,255,.8)}html.dark-mode .tab-container [role=tablist] button[role=tab]:hover,html.dark-mode .tab-container [role=tablist] button[role=tab]:focus{border-bottom-color:rgba(255,255,255,.2)}.tab-container [role=tablist] button[role=tab]:focus{outline:1px dotted var(--color-primary);outline-offset:-2px}.tab-container [role=tablist].controls-card{margin-bottom:0;border-bottom:0;padding:0 6px}.image-picker .none{display:none}.code-editor .CodeMirror{height:auto;min-height:50vh;border-bottom:0}.code-editor .lang-options{overflow-y:scroll;flex-basis:200px;flex-grow:1}.code-editor .lang-options button{display:block;padding:6px 16px;border-bottom:1px solid;color:#333;border-bottom-color:#eee;cursor:pointer;width:100%;text-align:left;font-family:var(--font-code);font-size:.7rem;padding-left:30px}html.dark-mode .code-editor .lang-options button{color:#aaa}html.dark-mode .code-editor .lang-options button{border-bottom-color:#000}.code-editor .lang-options button:hover,.code-editor .lang-options button.active{background-color:var(--color-primary-light);color:var(--color-primary)}.code-editor button.lang-option-favorite-toggle{position:absolute;top:0;left:0;width:28px;font-size:1rem;border:0;line-height:1;padding:2px;z-index:2;height:100%;text-align:center;color:var(--color-primary)}.code-editor button.lang-option-favorite-toggle svg{margin:0}.code-editor button[data-favourite=true]~.action-favourite,.code-editor button[data-favourite=false]~.action-unfavourite{display:none}.code-editor .action-favourite{opacity:.5}.code-editor button:hover~.action-favourite{opacity:1}.code-editor label{background-color:var(--color-primary-light);width:100%;color:var(--color-primary);padding:3px 12px;margin-bottom:0}.code-editor-language-list{position:relative;width:160px;z-index:2;align-items:stretch}.code-editor-language-list input{border-radius:0;border:0;border-bottom:1px solid #ddd;padding:6px 12px;height:auto}.code-editor-main{flex:1;min-width:0}.code-editor-main .cm-editor{margin-bottom:0;z-index:1;max-width:100%;width:100%}.code-editor-body-wrap{height:80vh}@media screen and (max-width: 600px){.code-editor .lang-options{display:none}.code-editor-body-wrap{flex-direction:column}.code-editor-language-list,.code-editor-language-list input{width:100%}}.comments-container{padding-inline:32px}@media screen and (max-width: 880px){.comments-container{padding-inline:6px}}.comment-box{border-radius:4px;border:1px solid #ddd;border-color:#ddd;background-color:#fff}html.dark-mode .comment-box{border-color:#000}html.dark-mode .comment-box{background-color:#222}.comment-box .content{font-size:.666em;padding:6px 12px}.comment-box .content p,.comment-box .content ul,.comment-box .content ol{font-size:14px;margin:.5em 0}.comment-box .actions{opacity:0;transition:opacity ease-in-out 120ms}.comment-box:hover .actions,.comment-box:focus-within .actions{opacity:1}.comment-box .actions button:focus{outline:1px dotted var(--color-primary)}@media screen and (max-width: 880px){.comment-box .actions{opacity:1}}.comment-box .header{border-bottom:1px solid #ddd;padding:6px 12px;border-color:#ddd}html.dark-mode .comment-box .header{border-color:#000}.comment-box .header a{color:inherit}.comment-box .header .text-muted{color:#999}.comment-box .header .meta a,.comment-box .header .meta span{white-space:nowrap}.comment-box .header .right-meta .text-muted{opacity:.8}.comment-thread-indicator{border-inline-start:3px dotted #ddd;border-color:#ddd;margin-inline-start:6px;width:24px;height:calc(100% - 16px)}html.dark-mode .comment-thread-indicator{border-color:#444}.comment-branch .comment-branch .comment-branch .comment-branch .comment-thread-indicator{display:none}.comment-reply{display:none;margin:0 !important;margin-bottom:-3px !important}.comment-branch .comment-branch .comment-branch .comment-branch .comment-reply{display:block}.comment-container-compact .comment-box .meta{font-size:.8rem}.comment-container-compact .comment-box .header{padding:6px}.comment-container-compact .comment-box .right-meta{display:none}.comment-container-compact .comment-box .content{padding:6px 12px}.comment-container-compact .comment-thread-indicator{width:16px}#tag-manager .drag-card{max-width:500px}.template-item{cursor:pointer;position:relative}.template-item:hover,.template-item .template-item-actions button:hover{background-color:#f2f2f2}.template-item .template-item-actions{position:absolute;top:0;inset-inline-end:0;width:50px;height:100%;display:flex;flex-direction:column;border-inline-start:1px solid;border-color:#ddd}html.dark-mode .template-item .template-item-actions{border-color:#000}.template-item .template-item-actions button{cursor:pointer;flex:1;background-color:#fff;border:0;border-top:1px solid;border-color:#ddd}html.dark-mode .template-item .template-item-actions button{background-color:#222}html.dark-mode .template-item .template-item-actions button{border-color:#000}.template-item .template-item-actions button svg{margin:0}.template-item .template-item-actions button:first-child{border-top:0}.dropdown-search{position:relative}.dropdown-search-toggle-breadcrumb{border:1px solid rgba(0,0,0,0);border-radius:4px;line-height:normal;padding:6px}.dropdown-search-toggle-breadcrumb:hover{border-color:#ddd}.dropdown-search-toggle-breadcrumb .svg-icon{margin-inline-end:0}.dropdown-search-toggle-select{display:flex;gap:12px;line-height:normal}.dropdown-search-toggle-select .svg-icon{height:26px;width:26px;margin:0}.dropdown-search-toggle-select .avatar{height:22px;width:22px}.dropdown-search-toggle-select .avatar+span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-search-toggle-select .dropdown-search-toggle-caret{font-size:1.15rem}.dropdown-search-toggle-select-label{min-width:0;white-space:nowrap}.dropdown-search-toggle-select-caret{line-height:0;margin-left:auto;margin-top:-2px;display:flex;align-items:center}.dropdown-search-dropdown{box-shadow:0 1px 3px 1px rgba(76,76,76,.26);overflow:hidden;min-height:100px;width:240px;display:none;position:absolute;z-index:80;right:0;top:0;margin-top:16px}html[dir=rtl] .dropdown-search-dropdown{right:auto;left:-16px}.dropdown-search-dropdown .dropdown-search-search .svg-icon{position:absolute;left:12px;top:11px;fill:#888;pointer-events:none}html[dir=rtl] .dropdown-search-dropdown .dropdown-search-search .svg-icon{right:12px;left:auto}.dropdown-search-dropdown .dropdown-search-list{max-height:400px;overflow-y:scroll;text-align:start}.dropdown-search-dropdown .dropdown-search-item{padding:12px 16px}.dropdown-search-dropdown .dropdown-search-item:hover,.dropdown-search-dropdown .dropdown-search-item:focus{background-color:#f2f2f2;text-decoration:none}.dropdown-search-dropdown input,.dropdown-search-dropdown input:focus{padding-inline-start:32px;border-radius:0;border:0;border-bottom:1px solid #ddd}.dropdown-search-dropdown input:focus{outline:0}@media screen and (max-width: 1000px){.dropdown-search-dropdown{inset-inline:16px auto}.dropdown-search-dropdown .dropdown-search-list{max-height:240px}}.item-list{box-shadow:0 1px 3px 0 rgba(0,0,0,.1)}.item-list-row{border:1.5px solid;border-color:#e2e2e2;border-bottom-width:0}html.dark-mode .item-list-row{border-color:#444}.item-list-row label{padding-bottom:0}.item-list-row:hover{background-color:#f6f6f6}html.dark-mode .item-list-row:hover{background-color:#333}.item-list-row:first-child{border-radius:4px 4px 0 0}.item-list-row:last-child{border-radius:0 0 4px 4px;border-bottom-width:1.5px}.item-list-row:first-child:last-child{border-radius:4px}.item-list-row-toggle-all{visibility:hidden}.item-list-row:hover .item-list-row-toggle-all{visibility:visible}.status-indicator-active,.status-indicator-inactive{width:8px;height:8px;border-radius:50%;display:inline-block}.status-indicator-active{background-color:var(--color-positive)}.status-indicator-inactive{background-color:var(--color-negative)}.shortcut-container{background-color:rgba(0,0,0,.25);pointer-events:none;position:fixed;left:0;top:0;width:100%;height:100%;z-index:99}.shortcut-linkage{position:fixed;box-shadow:0 0 4px 0 #fff;border-radius:3px}.shortcut-hint{position:fixed;padding:3px 3px;font-size:.85rem;font-weight:700;line-height:1;background-color:#eee;border-radius:3px;border:1px solid #b4b4b4;box-shadow:0 1px 1px rgba(0,0,0,.2),0 2px 0 0 rgba(255,255,255,.7) inset;color:#333}.back-to-top{background-color:var(--color-primary);position:fixed;bottom:16px;right:24px;padding:5px 7px;cursor:pointer;color:#fff;fill:#fff;width:40px;height:40px;border-radius:40px;transition:all ease-in-out 180ms;opacity:0;z-index:999;overflow:hidden}.back-to-top svg{width:26.6666666667px;height:26.6666666667px;margin-inline-end:4px}.back-to-top:hover{width:136px;opacity:1 !important}.back-to-top .inner{width:136px}.back-to-top span{position:relative;vertical-align:top;line-height:2}.scroll-box{list-style:none;padding:0;margin:0;max-height:280px;overflow-y:scroll;border:1px solid;border-color:#ddd;border-radius:3px;min-height:20px;background-color:#eee}html.dark-mode .scroll-box{border-color:#000}html.dark-mode .scroll-box{background-color:#000}.scroll-box-item{border-bottom:1px solid;border-top:1px solid;border-color:#ddd;margin-top:-1px;background-color:#fff;display:flex;align-items:flex-start;padding:1px}html.dark-mode .scroll-box-item{border-color:#000}html.dark-mode .scroll-box-item{background-color:#222}.scroll-box-item:last-child{border-bottom:0}.scroll-box-item:hover{cursor:pointer;background-color:#f8f8f8}html.dark-mode .scroll-box-item:hover{background-color:#333}.scroll-box-item .handle{color:#aaa;cursor:grab}.scroll-box-item button{opacity:.6}.scroll-box-item .handle svg{margin:0}.scroll-box-item>*{padding:6px 16px}.scroll-box-item .handle+*{padding-left:0}.scroll-box-item:hover .handle{color:#444}html.dark-mode .scroll-box-item:hover .handle{color:#fff}.scroll-box-item:hover button{opacity:1}.scroll-box-item a:hover{text-decoration:none}input.scroll-box-search,.scroll-box-header-item{font-size:.8rem;border:1px solid;border-color:#ddd;background-color:#fff;margin-bottom:-1px;border-radius:3px 3px 0 0;width:100%;max-width:100%;height:auto;line-height:1.4;color:#666}html.dark-mode input.scroll-box-search,html.dark-mode .scroll-box-header-item{border-color:#000}html.dark-mode input.scroll-box-search,html.dark-mode .scroll-box-header-item{background-color:#222}.scroll-box-search+.scroll-box,.scroll-box-header-item+.scroll-box{border-radius:0 0 3px 3px}.scroll-box[refs="shelf-sort@shelf-book-list"] [data-action=add]{display:none}.scroll-box[refs="shelf-sort@all-book-list"] [data-action=remove],.scroll-box[refs="shelf-sort@all-book-list"] [data-action=move_up],.scroll-box[refs="shelf-sort@all-book-list"] [data-action=move_down]{display:none}header.grid{grid-template-columns:minmax(max-content, 2fr) 1fr minmax(max-content, 2fr)}@media screen and (max-width: 1000px){header.grid{grid-template-columns:1fr;grid-row-gap:0}}header{position:relative;display:block;z-index:11;top:0;color:#fafafa;border-bottom:1px solid #ddd;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);border-bottom-color:#ddd}html.dark-mode header{border-bottom-color:#000}header .header-links{display:flex;align-items:center;justify-content:end}header .links{display:inline-block;vertical-align:top}header .links a{display:inline-block;padding:10px 16px;color:#fff;border-radius:3px}header .links a:hover{text-decoration:none;background-color:rgba(255,255,255,.15)}header .dropdown-container{padding-inline-start:16px;padding-inline-end:0}header .avatar,header .user-name{display:inline-block}header .avatar{width:30px;height:30px}header .user-name{vertical-align:top;position:relative;display:inline-flex;align-items:center;cursor:pointer;padding:12px;margin:0 -12px;border-radius:3px;gap:6px}header .user-name>span{padding-inline-start:6px;display:inline-block;line-height:1}header .user-name>svg{font-size:18px;margin-top:-2px;margin-inline-end:0}header .user-name:hover{background-color:rgba(255,255,255,.15)}@media screen and (min-width: 1000px)and (max-width: 1100px){header .user-name{padding-inline-start:6px}header .user-name .name{display:none}}.header *,.primary-background *{outline-color:#fff}header .search-box{display:inline-block}header .search-box input{background-color:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.2);border-radius:40px;color:#eee;z-index:2;height:auto;padding:9px;padding-inline-start:40px}header .search-box input:focus{outline:none;border:1px solid rgba(255,255,255,.4)}header .search-box input::placeholder{color:#fff;opacity:.6}@media screen and (min-width: 1000px)and (max-width: 1100px){header .search-box{max-width:200px}}header .search-box:focus-within #header-search-box-button{opacity:1}#header-search-box-button{z-index:1;inset-inline-start:16px;top:10px;color:#fff;opacity:.6;color:rgba(255,255,255,.8)}html.dark-mode #header-search-box-button{color:#aaa}#header-search-box-button svg{margin-inline-end:0}.global-search-suggestions{display:none;position:absolute;top:-12px;left:0;right:0;z-index:-1;margin-left:-48px;margin-right:-48px;padding-top:56px;border-radius:3px;box-shadow:0 2px 2px 1px rgba(0,0,0,.13);transform-origin:top center;opacity:.5;transform:scale(0.9)}.global-search-suggestions .entity-item-snippet p{display:none}.global-search-suggestions .entity-item-snippet{font-size:.8rem}.global-search-suggestions .entity-list-item-name{font-size:.9rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.global-search-suggestions .global-search-loading{position:absolute;width:100%}header .search-box.search-active:focus-within .global-search-suggestions{display:block}header .search-box.search-active:focus-within input{background-color:#eee;border-color:#ddd}html.dark-mode header .search-box.search-active:focus-within input{background-color:#333}html.dark-mode header .search-box.search-active:focus-within input{border-color:#111}header .search-box.search-active:focus-within #header-search-box-button,header .search-box.search-active:focus-within input{color:#444}html.dark-mode header .search-box.search-active:focus-within #header-search-box-button,html.dark-mode header .search-box.search-active:focus-within input{color:#aaa}.logo{display:inline-flex;padding:6px 12px;margin:6px -12px;gap:12px;align-items:center;border-radius:4px}.logo:hover{color:#fff;text-decoration:none;background-color:rgba(255,255,255,.15)}.logo-text{font-size:1.8em;color:#fff;font-weight:400;line-height:1}.logo-image{height:43px}.mobile-menu-toggle{color:#fff;fill:#fff;font-size:2em;border:2px solid rgba(255,255,255,.8);border-radius:4px;padding:0 6px;line-height:1;cursor:pointer;user-select:none}.mobile-menu-toggle svg{margin:0;bottom:-2px}@media screen and (max-width: 1000px){header .header-links{background-color:#fff;display:none;z-index:10;inset-inline-end:16px;border-radius:4px;overflow:hidden;position:absolute;box-shadow:0 2px 2px 1px rgba(0,0,0,.13);margin-top:16px;padding:6px 0}html.dark-mode header .header-links{background-color:#333}header .header-links.show{display:block}header .links a,header .dropdown-container ul li a,header .dropdown-container ul li button{text-align:start;display:grid;align-items:center;padding:8px 16px;gap:16px;color:#444;grid-template-columns:16px auto;line-height:1.4;color:#444}html.dark-mode header .links a,html.dark-mode header .dropdown-container ul li a,html.dark-mode header .dropdown-container ul li button{color:#eee}header .links a svg,header .dropdown-container ul li a svg,header .dropdown-container ul li button svg{margin-inline-end:12px;width:16px}header .links a:hover,header .dropdown-container ul li a:hover,header .dropdown-container ul li button:hover{background-color:var(--color-primary-light);color:var(--color-primary);text-decoration:none}header .links a:focus,header .dropdown-container ul li a:focus,header .dropdown-container ul li button:focus{background-color:#eee;outline-color:var(--color-primary);color:var(--color-primary)}html.dark-mode header .links a:focus,html.dark-mode header .dropdown-container ul li a:focus,html.dark-mode header .dropdown-container ul li button:focus{background-color:#333}header .dropdown-container{display:block;padding-inline-start:0}header .links{display:block}header .dropdown-container ul{display:block !important;position:relative;background-color:rgba(0,0,0,0);border:0;padding:0;margin:0;box-shadow:none}}.tri-layout-mobile-tabs{position:sticky;top:0;z-index:5;background-color:#fff;border-bottom:1px solid #ddd;border-bottom-color:#ddd;box-shadow:0 1px 6px -1px rgba(0,0,0,.1)}html.dark-mode .tri-layout-mobile-tabs{border-bottom-color:#333}.tri-layout-mobile-tab{text-align:center;border-bottom:3px solid #bbb;cursor:pointer;margin:0;background-color:#fff;border-bottom-color:#bbb}html.dark-mode .tri-layout-mobile-tab{background-color:#222}html.dark-mode .tri-layout-mobile-tab{border-bottom-color:#333}.tri-layout-mobile-tab:first-child{border-inline-end:1px solid #ddd;border-inline-end-color:#ddd}html.dark-mode .tri-layout-mobile-tab:first-child{border-inline-end-color:#000}.tri-layout-mobile-tab[aria-selected=true]{border-bottom-color:currentColor !important}.breadcrumbs{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:wrap;opacity:.7}.breadcrumbs .icon-list-item{width:auto;padding-top:6px;padding-bottom:6px}.breadcrumbs .separator{display:inline-block;fill:#aaa;font-size:1.6em;line-height:.8;margin:-2px 0 0}.breadcrumbs:hover,.breadcrumbs:focus-within{opacity:1}@media(prefers-contrast: more){.breadcrumbs{opacity:1}}@media screen and (max-width: 1000px){.breadcrumbs .icon-list-item{padding:6px}.breadcrumbs .icon-list-item>span+span{display:none}.breadcrumbs .icon-list-item>span:first-child{margin-inline-end:0}}.faded a,.faded button,.faded span,.faded span>div{color:#666;fill:#666}.faded .text-button{opacity:.5;transition:all ease-in-out 120ms}.faded .text-button:hover{opacity:1;text-decoration:none}.faded span.faded-text{display:inline-block;padding:12px}footer{flex-shrink:0;padding:1rem 1rem 2rem 1rem;text-align:center}footer a{margin:0 .5em}body.flexbox footer{display:none}.book-contents .entity-list-item .icon{width:4px;border-radius:1px;justify-self:stretch;align-self:stretch;height:auto;margin-inline-end:6px}.book-contents .entity-list-item .icon:after{opacity:.5}.book-contents .entity-list-item .icon svg{display:none}.book-contents .entity-list-item p{margin-bottom:0}.book-contents .entity-list-item .inner-page{padding-top:0;padding-bottom:0}.entity-list-item+.chapter-expansion{display:flex;padding:0 16px 16px 16px;align-items:center;border:0;width:100%;position:relative}.entity-list-item+.chapter-expansion>.icon{width:4px;height:auto;border-radius:0 0 1px 1px;align-self:stretch;flex-shrink:0}.entity-list-item+.chapter-expansion>.icon:before{position:absolute;top:0;left:0;width:100%;height:1px;background-color:currentColor;content:"";opacity:.5}.entity-list-item+.chapter-expansion>.icon:after{opacity:.5}.entity-list-item+.chapter-expansion .icon svg{display:none}.entity-list-item+.chapter-expansion>.content{flex:1}.entity-list-item+.chapter-expansion .chapter-contents-toggle{border-radius:0 4px 4px 0;padding:6px 19px;width:100%;text-align:start}.entity-list-item+.chapter-expansion .chapter-contents-toggle:hover{background-color:rgba(0,0,0,.06)}.entity-list-item.has-children{padding-bottom:0}.entity-list-item.has-children>.icon{border-radius:4px 4px 0 0}.inset-list{display:none}.inset-list .entity-list-item-name{font-size:1rem}.inset-list .entity-list-item-children{padding-top:0;padding-bottom:0}.sidebar-page-nav{list-style:none;margin-block-start:12px;margin-block-end:16px;margin-inline-start:6px;margin-inline-end:0;position:relative}.sidebar-page-nav:after{content:"";display:block;position:absolute;left:0;background-color:rgba(0,0,0,.2);width:2px;top:5px;bottom:5px;z-index:0}html[dir=rtl] .sidebar-page-nav:after{left:auto;right:0}html.dark-mode .sidebar-page-nav:after{background-color:rgba(255,255,255,.2)}.sidebar-page-nav li{margin-bottom:4px;font-size:.95em;position:relative}.sidebar-page-nav .h1{padding-inline-start:16px}.sidebar-page-nav .h2{padding-inline-start:24px}.sidebar-page-nav .h3{padding-inline-start:32px}.sidebar-page-nav .h4{padding-inline-start:40px}.sidebar-page-nav .h5{padding-inline-start:48px}.sidebar-page-nav .h6{padding-inline-start:56px}.sidebar-page-nav .current-heading{font-weight:bold}.sidebar-page-nav li:not(.current-heading) .sidebar-page-nav-bullet{background-color:#bbb !important}html.dark-mode .sidebar-page-nav li:not(.current-heading) .sidebar-page-nav-bullet{background-color:#666 !important}.sidebar-page-nav .sidebar-page-nav-bullet{width:6px;height:6px;position:absolute;left:-2px;top:30%;border-radius:50%;box-shadow:0 0 0 6px #f2f2f2;box-shadow:0 0 0 6px #f2f2f2;z-index:1}html.dark-mode .sidebar-page-nav .sidebar-page-nav-bullet{box-shadow:0 0 0 6px #111}html[dir=rtl] .sidebar-page-nav .sidebar-page-nav-bullet{left:auto;right:-2px}.book-tree .sidebar-page-list{list-style:none;margin-block-start:6px;margin-block-end:0;margin-inline-start:-12px;margin-inline-end:-12px;padding-inline-start:0;padding-inline-end:0}.book-tree .sidebar-page-list ul{list-style:none;padding-inline-start:1rem;padding-inline-end:0}.book-tree .sidebar-page-list .entity-list-item{padding-top:2px;padding-bottom:2px;background-clip:content-box;border-radius:0 3px 3px 0;padding-inline-end:0}.book-tree .sidebar-page-list .entity-list-item .content{width:100%;padding-top:6px;padding-bottom:6px;max-width:calc(100% - 20px)}.book-tree .sidebar-page-list .entity-list-item.selected{background-color:rgba(0,0,0,.06)}html.dark-mode .book-tree .sidebar-page-list .entity-list-item.selected{background-color:rgba(255,255,255,.06)}.book-tree .sidebar-page-list .entity-list-item.no-hover{margin-top:-6px;padding-inline-end:0}.book-tree .sidebar-page-list .entity-list-item-name{font-size:1em;margin:0;margin-inline-end:16px}.book-tree .sidebar-page-list .chapter-child-menu{font-size:.8rem;margin-top:-0.2rem;margin-inline-start:-1rem}.book-tree .sidebar-page-list .chapter-contents-toggle{display:block;width:100%;text-align:start;padding:3px 12px 6px 12px;border-radius:0 3px 3px 0;line-height:1;margin-top:-3px;margin-bottom:-3px}.book-tree .sidebar-page-list .chapter-contents-toggle:hover{background-color:rgba(0,0,0,.06)}html.dark-mode .book-tree .sidebar-page-list .chapter-contents-toggle:hover{background-color:rgba(255,255,255,.06)}.book-tree .sidebar-page-list .entity-list-item .icon{z-index:2;width:4px;height:auto;align-self:stretch;flex-shrink:0;border-radius:1px;opacity:.8}.book-tree .sidebar-page-list .entity-list-item .icon:after{opacity:1}.book-tree .sidebar-page-list .entity-list-item .icon svg{display:none}.chapter-child-menu ul.sub-menu{display:none;padding-inline-start:0;position:relative;margin-bottom:0}.sortable-page-list,.sortable-page-sublist{list-style:none}.sort-box{margin-bottom:16px;padding:16px 32px;position:relative}.sort-box::before{pointer-events:none;content:"";border-radius:4px;opacity:.5;border:2px solid var(--color-book);display:block;top:0;bottom:0;left:0;right:0;position:absolute}.sort-box-options{display:flex;flex-wrap:wrap;justify-content:space-between}.sort-box-options .button{margin-inline-start:0}.sortable-page-list{margin-inline-start:0;padding:0}.sortable-page-list .entity-list-item>span:first-child{align-self:flex-start}.sortable-page-list .sortable-selected,.sortable-page-list .sortable-selected:hover{outline:1px dotted var(--color-primary);background-color:var(--color-primary-light) !important}.sortable-page-list .entity-list-item>div{display:block;flex:1}.sortable-page-list>ul{margin-inline-start:0}.sortable-page-list .sortable-page-sublist{margin-bottom:16px;margin-top:0;padding-inline-start:16px}.sortable-page-list li{background-color:#fff;border:1px solid;border-color:#ddd;margin-top:-1px;min-height:38px}html.dark-mode .sortable-page-list li{background-color:#222}html.dark-mode .sortable-page-list li{border-color:#666}.sortable-page-list li.text-page,.sortable-page-list li.text-chapter{border-inline-start:2px solid currentColor}.sortable-page-list li:first-child{margin-top:6px}.sortable-page-list li.placeholder{position:relative}.sortable-page-list li.placeholder:before{position:absolute}.sort-box summary{list-style:none;font-size:.9rem;cursor:pointer}.sort-box summary::-webkit-details-marker{display:none}details.sort-box summary .caret-container svg{transition:transform ease-in-out 120ms}details.sort-box[open] summary .caret-container svg{transform:rotate(90deg)}.sort-box-actions .icon-button{opacity:.6}.sort-box .flex-container-row:hover .sort-box-actions .icon-button,.sort-box .flex-container-row:focus-within .sort-box-actions .icon-button{opacity:1}.sort-box-actions .icon-button[disabled]{visibility:hidden}.sort-box-actions .dropdown-menu button[disabled]{display:none}.sort-list-handle{cursor:grab}.activity-list-item{padding:12px 0;display:grid;grid-template-columns:min-content 1fr;grid-column-gap:16px;font-size:.9em}.card .activity-list-item{padding-block:12px}.user-list-item{display:inline-grid;padding:12px;grid-template-columns:min-content 1fr;grid-column-gap:16px;font-size:.9em;align-items:center}.user-list-item>div:first-child{line-height:0}ul.pagination{display:inline-flex;list-style:none;margin:16px 0;padding-inline-start:1px}ul.pagination li:first-child a,ul.pagination li:first-child span{border-radius:3px 0 0 3px}ul.pagination li:last-child a,ul.pagination li:last-child span{border-radius:0 3px 3px 0}ul.pagination a,ul.pagination span{display:block;padding:3px 12px;border:1px solid #ccc;margin-inline-start:-1px;user-select:none;color:#555;border-color:#ccc}html.dark-mode ul.pagination a,html.dark-mode ul.pagination span{color:#eee}html.dark-mode ul.pagination a,html.dark-mode ul.pagination span{border-color:#666}ul.pagination li.disabled{cursor:not-allowed}ul.pagination li.active span{color:#111;background-color:rgba(0,0,0,.05)}html.dark-mode ul.pagination li.active span{color:#eee}html.dark-mode ul.pagination li.active span{background-color:rgba(0,0,0,.5)}.compact ul.pagination{margin:0}.entity-list,.icon-list{margin:0 -16px}.entity-list h4,.icon-list h4{margin:0}.entity-list hr,.icon-list hr{margin:0}.entity-list .text-small.text-muted,.icon-list .text-small.text-muted{color:#aaa;font-size:.75em;margin-top:6px}.entity-list .text-muted p.text-muted,.icon-list .text-muted p.text-muted{margin-top:0}.entity-list .page.draft .text-page,.icon-list .page.draft .text-page{color:var(--color-page-draft);fill:var(--color-page-draft)}.entity-list>.dropdown-container,.icon-list>.dropdown-container{display:block}.icon-list hr{margin:12px 16px;max-width:140px;opacity:.25;height:1.1px}.icon-list hr+hr,.icon-list hr:first-child,.icon-list hr:last-child{display:none}.entity-list-item,.icon-list-item{padding:12px 16px;display:flex;align-items:center;gap:16px;background-color:rgba(0,0,0,0);border:0;width:100%;position:relative;word-break:break-word}.entity-list-item h4 a,.icon-list-item h4 a{color:#666}.entity-list-item>span:first-child,.icon-list-item>span:first-child{flex-basis:1.88em;flex:none}.entity-list-item>span:last-child,.icon-list-item>span:last-child{flex:1;text-align:start}.entity-list-item>.content,.icon-list-item>.content{min-width:0}.entity-list-item:not(.no-hover),.icon-list-item:not(.no-hover){cursor:pointer}.entity-list-item:not(.no-hover):hover,.icon-list-item:not(.no-hover):hover{background-color:rgba(0,0,0,.06);text-decoration:none;border-radius:4px}html.dark-mode .entity-list-item:not(.no-hover):hover,html.dark-mode .icon-list-item:not(.no-hover):hover{background-color:rgba(255,255,255,.06)}.entity-list-item.outline-hover:hover,.icon-list-item.outline-hover:hover{background-color:rgba(0,0,0,0)}.entity-list-item:focus,.icon-list-item:focus{background-color:#eee;outline:1px dotted #666;outline-offset:-2px}html.dark-mode .entity-list-item:focus,html.dark-mode .icon-list-item:focus{background-color:#222}.entity-list-item.disabled{pointer-events:none;cursor:not-allowed;opacity:.8;user-select:none;background:var(--bg-disabled)}.entity-list-item-path-sep{display:inline-block;vertical-align:top;position:relative;top:1px}.entity-list-item-path-sep svg{margin-inline-end:0}.split-icon-list-item{display:flex;align-items:center;gap:16px;background-color:rgba(0,0,0,0);border:0;width:100%;position:relative;word-break:break-word;border-radius:4px}.split-icon-list-item>a{padding:12px 16px;display:flex;align-items:center;gap:16px;flex:1}.split-icon-list-item>a:hover{text-decoration:none}.split-icon-list-item .icon{flex-basis:1.88em;flex:none}.split-icon-list-item:hover{background-color:rgba(0,0,0,.06)}html.dark-mode .split-icon-list-item:hover{background-color:rgba(255,255,255,.06)}.icon-list-item-dropdown{margin-inline-start:auto;align-self:stretch;display:flex;align-items:stretch;border-inline-start:1px solid rgba(0,0,0,.1);visibility:hidden}.split-icon-list-item:hover .icon-list-item-dropdown,.split-icon-list-item:focus-within .icon-list-item-dropdown{visibility:visible}.icon-list-item-dropdown-toggle{padding:6px;display:flex;align-items:center;cursor:pointer;color:#888}html.dark-mode .icon-list-item-dropdown-toggle{color:#999}.icon-list-item-dropdown-toggle svg{margin:0}.icon-list-item-dropdown-toggle:hover{background-color:rgba(0,0,0,.06)}html.dark-mode .icon-list-item-dropdown-toggle:hover{background-color:rgba(255,255,255,.06)}.card .entity-list-item:not(.no-hover,.book-contents .entity-list-item):hover{background-color:#f2f2f2;border-radius:0}html.dark-mode .card .entity-list-item:not(.no-hover,.book-contents .entity-list-item):hover{background-color:#2d2d2d}.card .entity-list-item .entity-list-item:hover{background-color:#eee}.entity-list-item-children{padding:16px 24px}.entity-list-item-children>div{overflow:hidden;padding:0 0 6px 0}.entity-list-item-children .entity-chip{text-overflow:ellipsis;height:2.5em;overflow:hidden;text-align:start;display:block;white-space:nowrap}.entity-list-item-children>.entity-list>.entity-list-item:last-child{margin-bottom:-6px}.entity-list-item-image{align-self:stretch;width:140px;flex:none;background-size:cover;background-position:50% 50%;border-radius:3px;position:relative;margin-inline-end:24px}.entity-list-item-image.entity-list-item-image-wide{width:220px}.entity-list-item-image .svg-icon{color:#fff;font-size:1.66rem;margin-inline-end:0;position:absolute;bottom:6px;left:6px}html.dark-mode .entity-list-item-image .svg-icon{color:rgba(255,255,255,.6)}@media screen and (max-width: 880px){.entity-list-item-image{width:80px}}.chapter>.entity-list-item-image{width:60px}.entity-list.compact{font-size:8.4px}.entity-list.compact h4,.entity-list.compact a{line-height:1.2}.entity-list.compact .entity-item-snippet{display:none}.entity-list.compact .entity-list-item p{font-size:11.2px;padding-top:6px}.entity-list.compact .entity-list-item p:empty{padding-top:0}.entity-list.compact p{margin:0}.entity-list.compact>p.empty-text{display:block;font-size:14px}.entity-list.compact hr{margin:0}@media screen and (max-width: 880px){.entity-list.compact h4{font-size:1.666em}}.entity-item-tags{font-size:.75rem;opacity:1}.entity-item-tags .primary-background-light{background:rgba(0,0,0,0)}.entity-item-tags .tag-name{background-color:rgba(0,0,0,.05)}.dropdown-container{display:inline-block;vertical-align:top;position:relative}.dropdown-menu{display:none;position:absolute;z-index:999;top:0;list-style:none;inset-inline-end:0;margin:16px 0;background-color:#fff;box-shadow:0 1px 6px 0 rgba(0,0,0,.18);border-radius:3px;min-width:180px;padding:6px 0;color:#555;fill:currentColor;text-align:start !important;max-height:500px;overflow-y:auto}html.dark-mode .dropdown-menu{background-color:#333}html.dark-mode .dropdown-menu{color:#eee}.dropdown-menu.anchor-left{inset-inline-end:auto;inset-inline-start:0}.dropdown-menu.wide{min-width:220px}.dropdown-menu.xl-limited{width:280px;max-width:100%}.dropdown-menu .text-muted{color:#999;fill:#999}.dropdown-menu li.active a{font-weight:600}.dropdown-menu button{width:100%;text-align:start}.dropdown-menu li.border-bottom{border-bottom:1px solid #ddd}.dropdown-menu li hr{margin:6px 0}.dropdown-menu .icon-item,.dropdown-menu .text-item,.dropdown-menu .label-item{padding:8px 16px;color:#555;fill:currentColor;white-space:nowrap;line-height:1.4;cursor:pointer}html.dark-mode .dropdown-menu .icon-item,html.dark-mode .dropdown-menu .text-item,html.dark-mode .dropdown-menu .label-item{color:#eee}.dropdown-menu .icon-item.break-text,.dropdown-menu .text-item.break-text,.dropdown-menu .label-item.break-text{white-space:normal;word-wrap:break-word;overflow-wrap:break-word}.dropdown-menu .icon-item:hover,.dropdown-menu .icon-item:focus,.dropdown-menu .text-item:hover,.dropdown-menu .text-item:focus,.dropdown-menu .label-item:hover,.dropdown-menu .label-item:focus{text-decoration:none;background-color:var(--color-primary-light);color:var(--color-primary)}.dropdown-menu .icon-item:focus,.dropdown-menu .text-item:focus,.dropdown-menu .label-item:focus{outline:1px solid var(--color-primary);outline-offset:-2px}.dropdown-menu .icon-item svg,.dropdown-menu .text-item svg,.dropdown-menu .label-item svg{margin-inline-end:12px;display:inline-block;width:16px}.dropdown-menu .text-item{display:block}.dropdown-menu .label-item{display:grid;align-items:center;grid-template-columns:auto min-content;gap:16px}.dropdown-menu .label-item>*:nth-child(2){opacity:.7}.dropdown-menu .label-item>*:nth-child(2):hover{opacity:1}.dropdown-menu .icon-item{display:grid;align-items:start;grid-template-columns:16px auto;gap:16px}.dropdown-menu .icon-item svg{margin-inline-end:0;margin-block-start:1px}.tri-layout-right .dropdown-menu,.tri-layout-left .dropdown-menu{inset-inline-end:6px}.featured-image-container{position:relative;overflow:hidden;min-height:140px;background-size:cover;background-position:50% 50%;transition:opacity ease-in-out 240ms}.featured-image-container a{display:block}.featured-image-container img{display:block;width:100%;max-width:100%;height:auto}.featured-image-container-wrap{position:relative}.featured-image-container-wrap .svg-icon{color:#fff;font-size:2rem;margin-inline-end:0;position:absolute;bottom:10px;left:6px}html.dark-mode .featured-image-container-wrap .svg-icon{color:rgba(255,255,255,.6)}.grid-card:hover .featured-image-container{opacity:.5}.action-link{background:rgba(0,0,0,0);border:none;color:currentColor;padding:16px 0}.active-link-list a{display:inline-block;padding:12px}.active-link-list a:not(.active){color:#444}html.dark-mode .active-link-list a:not(.active){color:#888}.active-link-list a:hover{background-color:rgba(0,0,0,.05);border-radius:4px;text-decoration:none}html.dark-mode .active-link-list a:hover{background-color:rgba(255,255,255,.05)}.active-link-list.in-sidebar a{display:block;margin-bottom:6px}.active-link-list.in-sidebar a.active{border-radius:4px;background-color:rgba(0,0,0,.05)}html.dark-mode .active-link-list.in-sidebar a.active{background-color:rgba(255,255,255,.05)}.entity-meta-item{display:flex;line-height:1.2;margin:.6em 0;align-content:start;gap:12px}.entity-meta-item a{line-height:1.2}.entity-meta-item svg{flex-shrink:0;width:1em;margin:0}.page-editor{display:flex;flex-direction:column;align-items:stretch;overflow:hidden}.page-editor .edit-area{flex:1;flex-direction:column;z-index:10;overflow:hidden;border-radius:0 0 8px 8px}.page-editor .mce-tinymce{box-shadow:none}.page-editor .mce-top-part::before{box-shadow:none}.page-editor-page-area{width:100%;border-radius:8px;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);background-color:#fff}html.dark-mode .page-editor-page-area{background-color:#333}.page-edit-toolbar{width:100%;margin:0 auto;display:grid;grid-template-columns:minmax(max-content, 2fr) 1.5fr minmax(max-content, 2fr);align-items:center}@media screen and (min-width: 1400px){.page-editor-wysiwyg .page-edit-toolbar,.page-editor-wysiwyg .page-editor-page-area{max-width:1140px}.page-editor-wysiwyg .floating-toolbox{position:absolute}}@media screen and (max-width: 880px){.page-edit-toolbar{display:flex;flex-direction:row;justify-content:space-between}}.title-input.page-title{font-size:.8em}.title-input.page-title .input{border:0;margin-bottom:-1px}.title-input.page-title input[type=text]{max-width:840px;margin:0 auto;border:none;height:auto;display:block;width:100%;font-size:20px;border-radius:8px}.title-input.page-title input[type=text]:focus{position:relative;outline-offset:-1px;outline:1px dashed var(--color-primary);box-shadow:0 1px 6px -1px rgba(0,0,0,.1);z-index:50}.page-editor-markdown .title-input.page-title input[type=text]{max-width:100%}body.tox-fullscreen .page-editor .edit-area,body.markdown-fullscreen .page-editor .edit-area{z-index:12}body.tox-fullscreen .page-editor,body.tox-fullscreen .flex-fill,body.markdown-fullscreen .page-editor,body.markdown-fullscreen .flex-fill{overflow:visible}@media screen and (max-width: 600px){.page-edit-toolbar{overflow-x:scroll;overflow-y:visible}.page-edit-toolbar{white-space:nowrap}.page-edit-toolbar>div{display:inline-block}}.page-save-mobile-button{position:fixed;z-index:30;border-radius:50%;width:52px;height:52px;font-size:26px;inset-inline-end:6px;bottom:12px;box-shadow:0 2px 2px 1px rgba(0,0,0,.13);background-color:currentColor;text-align:center}.page-save-mobile-button svg{fill:#fff;margin-inline-end:0}.draft-notification{pointer-events:none;transform:scale(0);transition:transform ease-in-out 120ms;transform-origin:50% 50%}.draft-notification.visible{transform:scale(1)}.page-style.editor{padding:0 !important}.pointer-container{position:fixed;display:none;left:0;z-index:10}.pointer{border:1px solid #ccc;border-color:#ccc;border-radius:4px;box-shadow:0 0 12px 1px rgba(0,0,0,.1);background-color:#fff;width:275px}html.dark-mode .pointer{border-color:#000}html.dark-mode .pointer{background-color:#333}.pointer.is-page-editable{width:328px}.pointer:before{position:absolute;left:50%;bottom:-9px;width:16px;height:16px;margin-inline-start:-8px;content:"";display:block;transform:rotate(45deg);transform-origin:50% 50%;border-right:1px solid #ccc;border-bottom:1px solid #ccc;z-index:56;background-color:#fff;border-color:#ccc}html.dark-mode .pointer:before{background-color:#333}html.dark-mode .pointer:before{border-color:#000}.pointer input,.pointer button,.pointer a{position:relative;border-radius:0;height:28px;font-size:12px;vertical-align:top;padding:5px 16px}.pointer input{background-color:#fff;border:1px solid #ddd;border-color:#ddd;color:#666;width:160px;z-index:40;padding:5px 10px}html.dark-mode .pointer input{border-color:#000}.pointer .text-button{color:#444}html.dark-mode .pointer .text-button{color:#aaa}.pointer .input-group .button{line-height:1;margin:0 0 0 -4px;box-shadow:none}.pointer a.button{margin:0}.pointer .svg-icon{width:1.2em;height:1.2em}.pointer .button{border-color:#ddd}html.dark-mode .pointer .button{border-color:#000}.floating-toolbox{background-color:#fff;overflow:hidden;align-items:stretch;flex-direction:row;display:flex;max-height:100%;border-radius:8px;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);margin-bottom:auto;margin-inline-start:24px;position:relative}html.dark-mode .floating-toolbox{background-color:#222}.floating-toolbox.open{position:relative;right:0;max-width:480px;margin-bottom:0}.floating-toolbox:not(.open) .toolbox-tab-content{display:none !important}.floating-toolbox .toolbox-toggle svg{transition:transform ease-in-out 180ms}.floating-toolbox .toolbox-toggle{transition:background-color ease-in-out 180ms}.floating-toolbox.open .toolbox-toggle{background-color:rgba(255,0,0,.2)}.floating-toolbox.open .toolbox-toggle svg{transform:rotate(180deg)}.floating-toolbox>div{flex:1;position:relative}.floating-toolbox .tabs{border-inline-end:1px solid #ddd;border-inline-end-color:#ddd;width:40px;flex:0 1 auto;margin-inline-end:-1px}html.dark-mode .floating-toolbox .tabs{border-inline-end-color:#000}.floating-toolbox .tabs-inner{background-color:#fff}html.dark-mode .floating-toolbox .tabs-inner{background-color:#222}.floating-toolbox .tabs svg{padding:0;margin:0}.floating-toolbox .tabs-inner>button{color:rgba(0,0,0,.7);display:block;cursor:pointer;padding:10px 6px;font-size:18px;line-height:1.6}html.dark-mode .floating-toolbox .tabs-inner>button{color:rgba(255,255,255,.5)}.floating-toolbox .tabs-inner>button:hover,.floating-toolbox.open .tabs-inner>button.active{color:var(--color-link) !important;position:relative}.floating-toolbox .tabs-inner>button:hover:after,.floating-toolbox.open .tabs-inner>button.active:after{content:"";display:block;position:absolute;left:0;width:100%;top:0;height:100%;background-color:currentColor;opacity:.075}.floating-toolbox.open .tabs-inner>button.active{border-inline-end:1px solid var(--color-link);margin-inline-end:-1px}.floating-toolbox h4{font-size:24px;margin:16px 0 0 0;padding:0 24px 12px 24px}.floating-toolbox .tags input{max-width:100%;width:100%;min-width:50px}.floating-toolbox .tags td,.floating-toolbox .inline-start-table>div>div>div{padding-inline-end:12px;padding-top:12px;position:relative}.floating-toolbox .handle{user-select:none;cursor:move;fill:#999}.floating-toolbox form{display:flex;flex:1;flex-direction:column;overflow-y:scroll}.floating-toolbox table td,.floating-toolbox table th{overflow:visible}@media screen and (max-width: 1400px){.floating-toolbox{margin-inline-start:12px}}@media screen and (max-width: 600px){.page-editor-page-area-wrap{margin:4px !important}.floating-toolbox{margin-inline-start:4px}.floating-toolbox .tabs{width:32px}.floating-toolbox .tabs-inner>button{font-size:12px}.page-edit-toolbar{padding-block:0 !important}.page-editor.toolbox-open .page-editor-page-area{display:none}}.toolbox-tab-content{display:none;overflow-y:auto;padding-bottom:45px}.suggestion-box{top:auto;margin:-4px 0 0;right:auto;left:0;padding:0}.suggestion-box li{display:block;border-bottom:1px solid #ddd}.suggestion-box li:last-child{border-bottom:0}.comments-container h5{color:#888;font-weight:normal;margin-top:.5em}.comment-editor .CodeMirror,.comment-editor .CodeMirror-scroll{min-height:175px}.mce-floatpanel[aria-label="Insert/edit media"] .mce-open{display:none}.entity-list-item>span:first-child,.icon-list-item>span:first-child,.split-icon-list-item>a>.icon,.chapter-expansion>.icon{font-size:.8rem;width:1.88em;height:1.88em;flex-shrink:0;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:1em;position:relative;overflow:hidden}.entity-list-item>span:first-child svg,.icon-list-item>span:first-child svg,.split-icon-list-item>a>.icon svg,.chapter-expansion>.icon svg{margin:0;bottom:0}.entity-list-item>span:first-child:after,.icon-list-item>span:first-child:after,.split-icon-list-item>a>.icon:after,.chapter-expansion>.icon:after{content:"";position:absolute;background-color:currentColor;opacity:.2;left:0;top:0;width:100%;height:100%}.entity-chip{display:inline-block;align-items:center;justify-content:center;text-align:center;font-size:.9em;border-radius:3px;position:relative;overflow:hidden;padding:6px 12px;fill:currentColor;opacity:.85;transition:opacity ease-in-out 120ms}.entity-chip:after{content:"";position:absolute;background-color:currentColor;opacity:.15;left:0;top:0;width:100%;height:100%}.entity-chip:hover{text-decoration:none;opacity:1}@media(prefers-contrast: more){.entity-chip{opacity:1}}.page-content{width:100%;max-width:840px;margin:0 auto;overflow-wrap:break-word}.page-content .align-left{text-align:left}.page-content img.align-left,.page-content table.align-left,.page-content iframe.align-left,.page-content video.align-left{float:left !important;margin:6px 16px 16px 0}.page-content .align-right{text-align:right !important}.page-content img.align-right,.page-content table.align-right,.page-content iframe.align-right,.page-content video.align-right{float:right !important;margin:6px 0 6px 12px}.page-content .align-center{text-align:center}.page-content img.align-center,.page-content video.align-center,.page-content iframe.align-center{display:block}.page-content img.align-center,.page-content table.align-center,.page-content iframe.align-center,.page-content video.align-center{margin-left:auto;margin-right:auto}.page-content img{max-width:100%;height:auto}.page-content h1,.page-content h2,.page-content h3,.page-content h4,.page-content h5,.page-content h6,.page-content pre{clear:left}.page-content hr{clear:both;margin:16px 0}.page-content table{hyphens:auto;table-layout:fixed;max-width:100%;height:auto !important}.page-content ins,.page-content del{text-decoration:none}.page-content ins{background:#dbffdb}.page-content del{background:#ffecec}.page-content details{border:1px solid;border-color:#ddd;margin-bottom:1em;padding:12px}html.dark-mode .page-content details{border-color:#555}.page-content details>summary{margin-top:-12px;margin-left:-12px;margin-right:-12px;margin-bottom:-12px;font-weight:bold;background-color:#eee;padding:6px 12px}html.dark-mode .page-content details>summary{background-color:#333}.page-content details[open]>summary{margin-bottom:12px;border-bottom:1px solid;border-color:#ddd}html.dark-mode .page-content details[open]>summary{border-color:#555}.page-content details>summary+*{margin-top:.2em}.page-content details:after{content:"";display:block;clear:both}.page-content li>input[type=checkbox]{vertical-align:top;margin-top:.3em}.page-content p:empty{min-height:1.6em}.page-content.page-revision pre code{white-space:pre-wrap}.page-content .cm-editor{margin-bottom:1.375em}.page-content video{max-width:100%}.callout{border-left:3px solid #bbb;background-color:#eee;padding:12px 12px 12px 32px;display:block;position:relative;overflow:auto}.callout:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiMwMTUzODAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEyIDJDNi40OCAyIDIgNi40OCAyIDEyczQuNDggMTAgMTAgMTAgMTAtNC40OCAxMC0xMFMxNy41MiAyIDEyIDJ6bTEgMTVoLTJ2LTZoMnY2em0wLThoLTJWN2gydjJ6Ii8+PC9zdmc+");background-repeat:no-repeat;content:"";width:1.2em;height:1.2em;left:8px;top:50%;margin-top:-9px;display:inline-block;position:absolute;line-height:1;opacity:.8}.callout.success{border-left-color:#0f7d15;background-color:#eafdeb;color:#063409}html.dark-mode .callout.success{border-left-color:#4aa850}html.dark-mode .callout.success{background-color:#122913}html.dark-mode .callout.success{color:#4aa850}.callout.success:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiMzNzZjMzkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEyIDJDNi40OCAyIDIgNi40OCAyIDEyczQuNDggMTAgMTAgMTAgMTAtNC40OCAxMC0xMFMxNy41MiAyIDEyIDJ6bS0yIDE1bC01LTUgMS40MS0xLjQxTDEwIDE0LjE3bDcuNTktNy41OUwxOSA4bC05IDl6Ii8+PC9zdmc+")}.callout.danger{border-left-color:#ab0f0e;background-color:#fcdbdb;color:#4d0706}html.dark-mode .callout.danger{border-left-color:#e85c5b}html.dark-mode .callout.danger{background-color:#250505}html.dark-mode .callout.danger{color:#e85c5b}.callout.danger:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiNiOTE4MTgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0xNS43MyAzSDguMjdMMyA4LjI3djcuNDZMOC4yNyAyMWg3LjQ2TDIxIDE1LjczVjguMjdMMTUuNzMgM3pNMTIgMTcuM2MtLjcyIDAtMS4zLS41OC0xLjMtMS4zIDAtLjcyLjU4LTEuMyAxLjMtMS4zLjcyIDAgMS4zLjU4IDEuMyAxLjMgMCAuNzItLjU4IDEuMy0xLjMgMS4zem0xLTQuM2gtMlY3aDJ2NnoiLz4gICAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==")}.callout.info{border-left-color:#0288d1;color:#01466c;background-color:#d3efff}html.dark-mode .callout.info{border-left-color:#0288d1}html.dark-mode .callout.info{color:#0288d1}html.dark-mode .callout.info{background-color:#001825}.callout.warning{border-left-color:#cf4d03;background-color:#fee3d3;color:#6a2802}html.dark-mode .callout.warning{border-left-color:#de8a5a}html.dark-mode .callout.warning{background-color:#30170a}html.dark-mode .callout.warning{color:#de8a5a}.callout.warning:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiNiNjUzMWMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEgMjFoMjJMMTIgMiAxIDIxem0xMi0zaC0ydi0yaDJ2MnptMC00aC0ydi00aDJ2NHoiLz48L3N2Zz4=")}.callout a{color:inherit;text-decoration:underline}@media print{html,body{font-size:12px;background-color:#fff}.page-content{margin:0 auto}.print-hidden{display:none !important}.tri-layout-container{grid-template-columns:1fr;grid-template-areas:"b";margin-inline-start:0;margin-inline-end:0;display:block}.card{box-shadow:none}.content-wrap.card{padding-inline-start:0;padding-inline-end:0}}.dragged{position:absolute;opacity:.5;z-index:2000}body.dragging,body.dragging *{cursor:move !important}.avatar{border-radius:100%;background-color:#eee;width:30px;height:30px}html.dark-mode .avatar{background-color:#000}.avatar.med{width:40px;height:40px}.avatar.large{width:80px;height:80px}.avatar.huge{width:120px;height:120px}.avatar.square{border-radius:3px}html.dark-mode .avatar[src$="user_avatar.png"]{filter:invert(1)}.loading-container{position:relative;display:block;margin:32px auto}.loading-container>div{width:10px;height:10px;border-radius:10px;display:inline-block;vertical-align:top;transform:translate3d(-10px, 0, 0);margin-top:6px;animation-name:loadingBob;animation-duration:1.4s;animation-iteration-count:infinite;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99);margin-inline-end:4px;background-color:var(--color-page);animation-delay:-300ms}.loading-container>div:first-child{left:-16px;background-color:var(--color-book);animation-delay:-600ms}.loading-container>div:last-of-type{left:16px;background-color:var(--color-chapter);animation-delay:0ms}.loading-container>span{margin-inline-start:12px;font-style:italic;color:#888;vertical-align:top}.skip-to-content-link{position:fixed;top:-52px;left:0;background-color:#fff;z-index:15;border-radius:0 4px 4px 0;display:block;box-shadow:0 0 4px 1px rgba(0,0,0,.5);font-weight:bold}.skip-to-content-link:focus{top:32px;outline-offset:-10px;outline:2px dotted var(--color-link)}.entity-selector{border:1px solid #ddd;border-color:#ddd;border-radius:3px;overflow:hidden;font-size:.8em}html.dark-mode .entity-selector{border-color:#111}.entity-selector input[type=text]{width:100%;display:block;border-radius:0;border:0;border-bottom:1px solid #ddd;font-size:16px;padding:12px 16px}.entity-selector .entity-list{overflow-y:scroll;height:400px;background-color:#eee;margin-inline-end:0;margin-inline-start:0}html.dark-mode .entity-selector .entity-list{background-color:#222}.entity-selector .entity-list-item{background-color:#fff}html.dark-mode .entity-selector .entity-list-item{background-color:#222}.entity-selector .entity-list-item p{margin-bottom:0}.entity-selector .entity-list-item:focus{outline:2px dotted var(--color-primary);outline-offset:-4px}.entity-selector .entity-list-item.selected{background-color:rgba(0,0,0,.05)}html.dark-mode .entity-selector .entity-list-item.selected{background-color:rgba(255,255,255,.05)}.entity-selector .loading{height:400px;padding-top:24px}.entity-selector.compact{font-size:10px}.entity-selector.compact .entity-item-snippet{display:none}.entity-selector.compact h4{font-size:14px}.fullscreen{border:0;position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;z-index:150}@media screen and (min-width: 600px)and (max-width: 880px){#home-default>.grid.third{display:block;columns:2;column-gap:24px !important}}.list-sort-container{display:inline-block}.list-sort-container form{display:inline-block}.list-sort-container .list-sort{display:inline-grid;margin-inline-start:12px;grid-template-columns:minmax(120px, max-content) 40px;font-size:.9rem;border:2px solid #ddd;border-color:#ddd;border-radius:4px}html.dark-mode .list-sort-container .list-sort{border-color:#444}.list-sort-container .list-sort-label{font-weight:bold;display:inline-block;color:#555}html.dark-mode .list-sort-container .list-sort-label{color:#888}.list-sort-container .list-sort-type{text-align:start}.list-sort-container .list-sort-type,.list-sort-container .list-sort-dir{padding:6px 12px;cursor:pointer}.list-sort-container .list-sort-dir{border-inline-start:2px solid #ddd;color:#888;border-color:#ddd}html.dark-mode .list-sort-container .list-sort-dir{border-color:#444}.list-sort-container .list-sort-dir .svg-icon{transition:transform ease-in-out 120ms}.list-sort-container .list-sort-dir:hover .svg-icon{transform:rotate(180deg)}/*# sourceMappingURL=styles.css.map */ +html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,big,cite,code,del,dfn,em,img,ins,kbd,q,s,samp,small,strike,strong,sub,sup,tt,var,b,u,i,center,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,embed,figure,figcaption,footer,header,hgroup,menu,nav,output,ruby,section,summary,time,mark,audio,video{margin:0;padding:0;border:0;font-size:100%;font:inherit;vertical-align:baseline}article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block}body{line-height:1}ol,ul{list-style:none}blockquote,q{quotes:none}blockquote:before,blockquote:after{content:"";content:none}q:before,q:after{content:"";content:none}table{border-collapse:collapse;border-spacing:0}:root{--font-body: -apple-system, BlinkMacSystemFont, Segoe UI, Oxygen, Ubuntu, Roboto, Cantarell, Fira Sans, Droid Sans, Helvetica Neue, sans-serif;--font-code: Lucida Console, DejaVu Sans Mono, Ubuntu Mono, Monaco, monospace;--color-primary: #206ea7;--color-primary-light: rgba(32,110,167,0.15);--color-link: #206ea7;--color-page: #206ea7;--color-page-draft: #7e50b1;--color-chapter: #af4d0d;--color-book: #077b70;--color-bookshelf: #a94747;--color-positive: #0f7d15;--color-negative: #ab0f0e;--color-info: #0288D1;--color-warning: #cf4d03;--bg-disabled: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='100%25' width='100%25'%3E%3Cdefs%3E%3Cpattern id='doodad' width='19' height='19' viewBox='0 0 40 40' patternUnits='userSpaceOnUse' patternTransform='rotate(143)'%3E%3Crect width='100%25' height='100%25' fill='rgba(42, 67, 101,0)'/%3E%3Cpath d='M-10 30h60v20h-60zM-10-10h60v20h-60' fill='rgba(26, 32, 44,0)'/%3E%3Cpath d='M-10 10h60v20h-60zM-10-30h60v20h-60z' fill='rgba(0, 0, 0,0.05)'/%3E%3C/pattern%3E%3C/defs%3E%3Crect fill='url(%23doodad)' height='200%25' width='200%25'/%3E%3C/svg%3E")}:root.dark-mode{--bg-disabled: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' height='100%25' width='100%25'%3E%3Cdefs%3E%3Cpattern id='doodad' width='19' height='19' viewBox='0 0 40 40' patternUnits='userSpaceOnUse' patternTransform='rotate(143)'%3E%3Crect width='100%25' height='100%25' fill='rgba(42, 67, 101,0)'/%3E%3Cpath d='M-10 30h60v20h-60zM-10-10h60v20h-60' fill='rgba(26, 32, 44,0)'/%3E%3Cpath d='M-10 10h60v20h-60zM-10-30h60v20h-60z' fill='rgba(255, 255, 255,0.05)'/%3E%3C/pattern%3E%3C/defs%3E%3Crect fill='url(%23doodad)' height='200%25' width='200%25'/%3E%3C/svg%3E");color-scheme:only dark;--color-positive: #4aa850;--color-negative: #e85c5b;--color-warning: #de8a5a}:root:not(.dark-mode){color-scheme:only light}.m-none{margin:0 !important}.mx-none{margin-inline-start:0 !important;margin-inline-end:0 !important}.my-none{margin-top:0 !important;margin-bottom:0 !important}.mt-none{margin-top:0 !important}.mr-none{margin-inline-end:0 !important}.mb-none{margin-bottom:0 !important}.ml-none{margin-inline-start:0 !important}.m-xxs{margin:3px !important}.mx-xxs{margin-inline-start:3px !important;margin-inline-end:3px !important}.my-xxs{margin-top:3px !important;margin-bottom:3px !important}.mt-xxs{margin-top:3px !important}.mr-xxs{margin-inline-end:3px !important}.mb-xxs{margin-bottom:3px !important}.ml-xxs{margin-inline-start:3px !important}.m-xs{margin:6px !important}.mx-xs{margin-inline-start:6px !important;margin-inline-end:6px !important}.my-xs{margin-top:6px !important;margin-bottom:6px !important}.mt-xs{margin-top:6px !important}.mr-xs{margin-inline-end:6px !important}.mb-xs{margin-bottom:6px !important}.ml-xs{margin-inline-start:6px !important}.m-s{margin:12px !important}.mx-s{margin-inline-start:12px !important;margin-inline-end:12px !important}.my-s{margin-top:12px !important;margin-bottom:12px !important}.mt-s{margin-top:12px !important}.mr-s{margin-inline-end:12px !important}.mb-s{margin-bottom:12px !important}.ml-s{margin-inline-start:12px !important}.m-m{margin:16px !important}.mx-m{margin-inline-start:16px !important;margin-inline-end:16px !important}.my-m{margin-top:16px !important;margin-bottom:16px !important}.mt-m{margin-top:16px !important}.mr-m{margin-inline-end:16px !important}.mb-m{margin-bottom:16px !important}.ml-m{margin-inline-start:16px !important}.m-l{margin:24px !important}.mx-l{margin-inline-start:24px !important;margin-inline-end:24px !important}.my-l{margin-top:24px !important;margin-bottom:24px !important}.mt-l{margin-top:24px !important}.mr-l{margin-inline-end:24px !important}.mb-l{margin-bottom:24px !important}.ml-l{margin-inline-start:24px !important}.m-xl{margin:32px !important}.mx-xl{margin-inline-start:32px !important;margin-inline-end:32px !important}.my-xl{margin-top:32px !important;margin-bottom:32px !important}.mt-xl{margin-top:32px !important}.mr-xl{margin-inline-end:32px !important}.mb-xl{margin-bottom:32px !important}.ml-xl{margin-inline-start:32px !important}.m-xxl{margin:48px !important}.mx-xxl{margin-inline-start:48px !important;margin-inline-end:48px !important}.my-xxl{margin-top:48px !important;margin-bottom:48px !important}.mt-xxl{margin-top:48px !important}.mr-xxl{margin-inline-end:48px !important}.mb-xxl{margin-bottom:48px !important}.ml-xxl{margin-inline-start:48px !important}.m-auto{margin:auto !important}.mx-auto{margin-inline-start:auto !important;margin-inline-end:auto !important}.my-auto{margin-top:auto !important;margin-bottom:auto !important}.mt-auto{margin-top:auto !important}.mr-auto{margin-inline-end:auto !important}.mb-auto{margin-bottom:auto !important}.ml-auto{margin-inline-start:auto !important}.p-none{padding:0 !important}.px-none{padding-inline-start:0 !important;padding-inline-end:0 !important}.py-none{padding-top:0 !important;padding-bottom:0 !important}.pt-none{padding-top:0 !important}.pr-none{padding-inline-end:0 !important}.pb-none{padding-bottom:0 !important}.pl-none{padding-inline-start:0 !important}.p-xxs{padding:3px !important}.px-xxs{padding-inline-start:3px !important;padding-inline-end:3px !important}.py-xxs{padding-top:3px !important;padding-bottom:3px !important}.pt-xxs{padding-top:3px !important}.pr-xxs{padding-inline-end:3px !important}.pb-xxs{padding-bottom:3px !important}.pl-xxs{padding-inline-start:3px !important}.p-xs{padding:6px !important}.px-xs{padding-inline-start:6px !important;padding-inline-end:6px !important}.py-xs{padding-top:6px !important;padding-bottom:6px !important}.pt-xs{padding-top:6px !important}.pr-xs{padding-inline-end:6px !important}.pb-xs{padding-bottom:6px !important}.pl-xs{padding-inline-start:6px !important}.p-s{padding:12px !important}.px-s{padding-inline-start:12px !important;padding-inline-end:12px !important}.py-s{padding-top:12px !important;padding-bottom:12px !important}.pt-s{padding-top:12px !important}.pr-s{padding-inline-end:12px !important}.pb-s{padding-bottom:12px !important}.pl-s{padding-inline-start:12px !important}.p-m{padding:16px !important}.px-m{padding-inline-start:16px !important;padding-inline-end:16px !important}.py-m{padding-top:16px !important;padding-bottom:16px !important}.pt-m{padding-top:16px !important}.pr-m{padding-inline-end:16px !important}.pb-m{padding-bottom:16px !important}.pl-m{padding-inline-start:16px !important}.p-l{padding:24px !important}.px-l{padding-inline-start:24px !important;padding-inline-end:24px !important}.py-l{padding-top:24px !important;padding-bottom:24px !important}.pt-l{padding-top:24px !important}.pr-l{padding-inline-end:24px !important}.pb-l{padding-bottom:24px !important}.pl-l{padding-inline-start:24px !important}.p-xl{padding:32px !important}.px-xl{padding-inline-start:32px !important;padding-inline-end:32px !important}.py-xl{padding-top:32px !important;padding-bottom:32px !important}.pt-xl{padding-top:32px !important}.pr-xl{padding-inline-end:32px !important}.pb-xl{padding-bottom:32px !important}.pl-xl{padding-inline-start:32px !important}.p-xxl{padding:48px !important}.px-xxl{padding-inline-start:48px !important;padding-inline-end:48px !important}.py-xxl{padding-top:48px !important;padding-bottom:48px !important}.pt-xxl{padding-top:48px !important}.pr-xxl{padding-inline-end:48px !important}.pb-xxl{padding-bottom:48px !important}.pl-xxl{padding-inline-start:48px !important}.p-auto{padding:auto !important}.px-auto{padding-inline-start:auto !important;padding-inline-end:auto !important}.py-auto{padding-top:auto !important;padding-bottom:auto !important}.pt-auto{padding-top:auto !important}.pr-auto{padding-inline-end:auto !important}.pb-auto{padding-bottom:auto !important}.pl-auto{padding-inline-start:auto !important}.gap-none{gap:0 !important}.gap-x-none{column-gap:0 !important}.gap-y-none{row-gap:0 !important}.gap-xxs{gap:3px !important}.gap-x-xxs{column-gap:3px !important}.gap-y-xxs{row-gap:3px !important}.gap-xs{gap:6px !important}.gap-x-xs{column-gap:6px !important}.gap-y-xs{row-gap:6px !important}.gap-s{gap:12px !important}.gap-x-s{column-gap:12px !important}.gap-y-s{row-gap:12px !important}.gap-m{gap:16px !important}.gap-x-m{column-gap:16px !important}.gap-y-m{row-gap:16px !important}.gap-l{gap:24px !important}.gap-x-l{column-gap:24px !important}.gap-y-l{row-gap:24px !important}.gap-xl{gap:32px !important}.gap-x-xl{column-gap:32px !important}.gap-y-xl{row-gap:32px !important}.gap-xxl{gap:48px !important}.gap-x-xxl{column-gap:48px !important}.gap-y-xxl{row-gap:48px !important}.gap-auto{gap:auto !important}.gap-x-auto{column-gap:auto !important}.gap-y-auto{row-gap:auto !important}.opacity-10{opacity:.1}.opacity-20{opacity:.2}.opacity-30{opacity:.3}.opacity-40{opacity:.4}.opacity-50{opacity:.5}.opacity-60{opacity:.6}.opacity-70{opacity:.7}.opacity-80{opacity:.8}.opacity-90{opacity:.9}*{box-sizing:border-box;outline-color:var(--color-primary);outline-width:1px}*:focus{outline-style:dotted}html{height:100%;overflow-y:scroll;background-color:#f2f2f2}html.flexbox{overflow-y:hidden}html.dark-mode{background-color:#111}body{font-size:14px;line-height:1.6;color:#444;-webkit-font-smoothing:antialiased;height:100%;display:flex;flex-direction:column}html.dark-mode body{color:#aaa}body,button,input,select,label,textarea{font-family:var(--font-body)}pre,#markdown-editor-input,.text-mono,.code-base,span.code,code{font-family:var(--font-code)}h1{font-size:3.425em;line-height:1.22222222em;margin-top:.48888889em;margin-bottom:.48888889em}h2{font-size:2.8275em;line-height:1.294117647em;margin-top:.8627451em;margin-bottom:.43137255em}h3{font-size:2.333em;line-height:1.221428572em;margin-top:.78571429em;margin-bottom:.43137255em}h4{font-size:1.666em;line-height:1.375em;margin-top:.78571429em;margin-bottom:.43137255em}h1,h2,h3,h4,h5,h6{font-weight:400;position:relative;display:block;font-family:var(--font-heading, var(--font-body));color:#222}html.dark-mode h1,html.dark-mode h2,html.dark-mode h3,html.dark-mode h4,html.dark-mode h5,html.dark-mode h6{color:#bbb}h1 .subheader,h2 .subheader,h3 .subheader,h4 .subheader,h5 .subheader,h6 .subheader{font-size:.5em;line-height:1em;color:#969696}h5{font-size:1.4em}h5,h6{line-height:1.2em;margin-top:.78571429em;margin-bottom:.66em}@media screen and (max-width: 600px){h1{font-size:2.8275em}h2{font-size:2.333em}h3{font-size:1.666em}h4{font-size:1.333em}h5{font-size:1.161616em}}.list-heading{font-size:2rem}h2.list-heading{font-size:1.333rem}a{color:var(--color-link);fill:currentColor;cursor:pointer;text-decoration:none;transition:filter ease-in-out 80ms;line-height:1.6}a:hover{text-decoration:underline}a.icon{display:inline-block}a svg{position:relative;display:inline-block}a:focus img:only-child{outline:2px dashed var(--color-link);outline-offset:2px}a.no-link-style{color:inherit}a.no-link-style:hover{text-decoration:none}.blended-links a{color:inherit}.blended-links a svg{fill:currentColor}p,ul,ol,pre,table,blockquote{margin-top:.3em;margin-bottom:1.375em}hr{border:0;height:1px;background:#eaeaea;margin-bottom:24px}html.dark-mode hr{background:#555}hr.faded{background-image:linear-gradient(to right, #FFF, #e3e0e0 20%, #e3e0e0 80%, #FFF)}hr.darker{background:#ddd}html.dark-mode hr.darker{background:#666}hr.margin-top,hr.even{margin-top:24px}strong,b,.bold,.strong{font-weight:bold}strong>strong,strong>b,strong>.bold,strong>.strong,b>strong,b>b,b>.bold,b>.strong,.bold>strong,.bold>b,.bold>.bold,.bold>.strong,.strong>strong,.strong>b,.strong>.bold,.strong>.strong{font-weight:bolder}em,i,.italic{font-style:italic}small,p.small,span.small,.text-small{font-size:.75rem}sup,.superscript{vertical-align:super;font-size:.8em}sub,.subscript{vertical-align:sub;font-size:.8em}pre{font-size:12px;border:1px solid #ddd;background-color:#fff;border-color:#ddd;border-radius:4px;padding-inline-start:26px;position:relative;padding-top:3px;padding-bottom:3px}html.dark-mode pre{background-color:#2b2b2b}html.dark-mode pre{border-color:#111}pre:before{content:"";display:block;position:absolute;top:0;width:22.4px;inset-inline-start:0;height:100%;background-color:#f5f5f5;border-inline-end:1px solid #ddd}html.dark-mode pre:before{background-color:#313335}html.dark-mode pre:before{border-inline-end:none}@media print{pre{padding-left:12px}pre:before{display:none}}blockquote{display:block;position:relative;border-left:4px solid rgba(0,0,0,0);border-left-color:var(--color-primary);background-color:#f8f8f8;padding:12px 16px 12px 32px;overflow:auto}html.dark-mode blockquote{background-color:#333}blockquote:before{content:"“";font-size:2em;font-weight:bold;position:absolute;top:12px;left:12px;color:#777}.text-mono{font-family:var(--font-code)}.text-uppercase{text-transform:uppercase}.text-capitals{text-transform:capitalize}.code-base,span.code,code{font-size:.84em;border:1px solid #ddd;border-radius:3px;background-color:#f8f8f8;border-color:#ddd}html.dark-mode .code-base,html.dark-mode span.code,html.dark-mode code{background-color:#2b2b2b}html.dark-mode .code-base,html.dark-mode span.code,html.dark-mode code{border-color:#444}code{display:inline;padding:1px 3px;white-space:pre-wrap;line-height:1.2em}span.code{padding:1px 6px}pre code{background-color:rgba(0,0,0,0);border:0;font-size:1em;display:block;line-height:1.6}span.highlight{font-weight:bold;padding:2px 4px}ul,ol{padding-left:32px;padding-right:32px;display:flow-root}ul p,ol p{margin:0}ul{list-style:disc}ul ul{list-style:circle}ul label{margin:0}ol{list-style:decimal}li>ol,li>ul{margin-top:0;margin-bottom:0;margin-block-end:0;margin-block-start:0;padding-block-end:0;padding-block-start:0;padding-left:19.2px;padding-right:19.2px}li.checkbox-item,li.task-list-item{display:list-item;list-style:none;margin-left:-19.2px}li.checkbox-item input[type=checkbox],li.task-list-item input[type=checkbox]{margin-right:6px}li.checkbox-item li.checkbox-item,li.checkbox-item li.task-list-item,li.task-list-item li.checkbox-item,li.task-list-item li.task-list-item{margin-left:6px}.underlined{text-decoration:underline}.text-center{text-align:center}.text-left{text-align:start}.text-right{text-align:end}@media screen and (min-width: 360px){.text-xxs-center{text-align:center}.text-xxs-left{text-align:start}.text-xxs-right{text-align:end}}@media screen and (min-width: 400px){.text-xs-center{text-align:center}.text-xs-left{text-align:start}.text-xs-right{text-align:end}}@media screen and (min-width: 600px){.text-s-center{text-align:center}.text-s-left{text-align:start}.text-s-right{text-align:end}}@media screen and (min-width: 880px){.text-m-center{text-align:center}.text-m-left{text-align:start}.text-m-right{text-align:end}}@media screen and (min-width: 1000px){.text-l-center{text-align:center}.text-l-left{text-align:start}.text-l-right{text-align:end}}@media screen and (min-width: 1100px){.text-xl-center{text-align:center}.text-xl-left{text-align:start}.text-xl-right{text-align:end}}.text-bigger{font-size:1.1em}.text-large{font-size:1.6666em}.no-color{color:inherit}.break-text{white-space:normal;word-wrap:break-word;overflow-wrap:break-word}.text-limit-lines-1{white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.text-limit-lines-2{display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.header-group{margin:16px 0}.header-group h1,.header-group h2,.header-group h3,.header-group h4,.header-group h5,.header-group h6{margin:0}span.sep{color:#bbb;padding:0 6px}.list>*{display:block}.svg-icon{width:1em;height:1em;display:inline-block;position:relative;bottom:-0.105em;margin-inline-end:6px;pointer-events:none;fill:currentColor}.primary-background{background-color:var(--color-primary) !important}.primary-background-light{background-color:var(--color-primary-light)}html.dark-mode .primary-background-light{background:#000}html.dark-mode .primary-background-light .text-link{color:#aaa !important}.link-background{background-color:var(--color-link) !important}.text-pos,.text-pos:hover,.text-pos-hover:hover{color:var(--color-positive) !important;fill:var(--color-positive) !important}.text-warn,.text-warn:hover,.text-warn-hover:hover{color:var(--color-warning) !important;fill:var(--color-warning) !important}.text-neg,.text-neg:hover,.text-neg-hover:hover{color:var(--color-negative) !important;fill:var(--color-negative) !important}.text-primary,.text-primary:hover,.text-primary-hover:hover{color:var(--color-primary) !important;fill:var(--color-primary) !important}.text-link,.text-link:hover,.text-link-hover:hover{color:var(--color-link) !important;fill:var(--color-link) !important}.text-muted{color:#575757 !important;fill:currentColor !important}html.dark-mode .text-muted{color:#888 !important}.text-dark{color:#222 !important;fill:currentColor !important}html.dark-mode .text-dark{color:#ccc !important}.text-white{color:#fff;fill:currentColor !important}.text-bookshelf,.text-bookshelf:hover{color:var(--color-bookshelf);fill:var(--color-bookshelf)}.text-book,.text-book:hover{color:var(--color-book);fill:var(--color-book)}.text-page,.text-page:hover{color:var(--color-page);fill:var(--color-page)}.text-page.draft,.text-page.draft:hover{color:var(--color-page-draft);fill:var(--color-page-draft)}.text-chapter,.text-chapter:hover{color:var(--color-chapter);fill:var(--color-chapter)}.bg-white{background-color:#fff}.bg-book{background-color:var(--color-book)}.bg-chapter{background-color:var(--color-chapter)}.bg-bookshelf{background-color:var(--color-bookshelf)}.container{max-width:1400px;margin-inline-start:auto;margin-inline-end:auto;padding-inline-start:16px;padding-inline-end:16px}.container.medium{max-width:1100px}.container.small{max-width:840px}.container.very-small{max-width:480px}.grid{display:grid;grid-column-gap:24px;grid-row-gap:24px}.grid>*{min-width:0}.grid.half{grid-template-columns:1fr 1fr}.grid.third{grid-template-columns:1fr 1fr 1fr}.grid.left-focus{grid-template-columns:2fr 1fr}.grid.right-focus{grid-template-columns:1fr 3fr}.grid.gap-y-xs{grid-row-gap:6px}.grid.gap-xl{grid-column-gap:32px;grid-row-gap:32px}.grid.gap-xxl{grid-column-gap:48px;grid-row-gap:48px}.grid.v-center{align-items:center}.grid.v-end{align-items:end}.grid.no-gap{grid-row-gap:0;grid-column-gap:0}.grid.no-row-gap{grid-row-gap:0}@media screen and (max-width: 880px){.grid.third:not(.no-break){grid-template-columns:1fr 1fr}.grid.half:not(.no-break),.grid.left-focus:not(.no-break),.grid.right-focus:not(.no-break){grid-template-columns:1fr}.grid.half.collapse-xs{grid-template-columns:1fr 1fr}.grid.gap-xl{grid-column-gap:16px;grid-row-gap:16px}.grid.right-focus.reverse-collapse>*:nth-child(2){order:0}.grid.right-focus.reverse-collapse>*:nth-child(1){order:1}}@media screen and (max-width: 600px){.grid.third:not(.no-break){grid-template-columns:1fr}}@media screen and (max-width: 400px){.grid.half.collapse-xs{grid-template-columns:1fr}}#content{flex:1 0 auto}body.flexbox{display:flex;flex-direction:column;align-items:stretch;height:100%;min-height:100%;max-height:100%;overflow:hidden}body.flexbox #content{flex:1;display:flex;min-height:0}.flex-fill{display:flex;align-items:stretch;min-height:0;max-width:100%;position:relative}.flex-container-row{display:flex;flex-direction:row}.flex-container-row.v-center{align-items:center}.flex-container-column{display:flex;flex-direction:column}.flex-container-row.inline,.flex-container-column.inline{display:inline-flex !important}.flex-container-column.wrap,.flex-container-row.wrap{flex-wrap:wrap}.flex{min-height:0;flex:1;max-width:100%}.flex.fit-content{flex-basis:auto;flex-grow:0}.flex.fill-area{flex-grow:1;flex-shrink:0;min-width:fit-content}.flex-2{min-height:0;flex:2;max-width:100%}.flex-3{min-height:0;flex:3;max-width:100%}.flex-none{flex:none}.justify-flex-start{justify-content:flex-start}.justify-flex-end{justify-content:flex-end}.justify-center{justify-content:center}.justify-space-between{justify-content:space-between}.items-center{align-items:center}.items-stretch{align-items:stretch}.min-width-xxxxs{min-width:60px}.min-width-xxxs{min-width:80px}.min-width-xxs{min-width:100px}.min-width-xs{min-width:120px}.min-width-s{min-width:160px}.min-width-m{min-width:200px}.min-width-l{min-width:240px}.min-width-xl{min-width:280px}.min-width-xxl{min-width:320px}.block{display:block !important;position:relative}.inline{display:inline !important}.block.inline{display:inline-block !important}.relative{position:relative}.fixed{position:fixed;z-index:20}.fixed.top-right{top:0;right:0}.hidden{display:none !important}.overflow-hidden{overflow:hidden}.height-fill{height:100%}.height-auto{height:auto !important}.float{float:left}.float.right{float:right}.sticky-top-m{position:sticky;top:16px}@media screen and (max-width: 360px){.hide-under-xxs{display:none !important}}@media screen and (min-width: 360px){.hide-over-xxs{display:none !important}}@media screen and (max-width: 400px){.hide-under-xs{display:none !important}}@media screen and (min-width: 400px){.hide-over-xs{display:none !important}}@media screen and (max-width: 600px){.hide-under-s{display:none !important}}@media screen and (min-width: 600px){.hide-over-s{display:none !important}}@media screen and (max-width: 880px){.hide-under-m{display:none !important}}@media screen and (min-width: 880px){.hide-over-m{display:none !important}}@media screen and (max-width: 1000px){.hide-under-l{display:none !important}}@media screen and (min-width: 1000px){.hide-over-l{display:none !important}}@media screen and (max-width: 1100px){.hide-under-xl{display:none !important}}@media screen and (min-width: 1100px){.hide-over-xl{display:none !important}}[hidden]{display:none !important}.screen-reader-only{position:absolute;inset-inline-start:-10000px;top:auto;width:1px;height:1px;overflow:hidden}.rounded{border-radius:4px}.dual-column-content{columns:2}@media screen and (max-width: 880px){.dual-column-content{columns:1}}.clearfix::before,.clearfix::after{content:" ";display:table}.clearfix::after{clear:both}.tri-layout-container{display:grid;margin-inline-start:32px;margin-inline-end:32px;grid-template-columns:1fr 4fr 1fr;grid-template-areas:"a b c";grid-column-gap:32px;position:relative}.tri-layout-sides{grid-column-start:a;grid-column-end:c;grid-row:1;min-width:0;z-index:4}.tri-layout-sides-content{display:grid;grid-template-areas:"a b c";grid-template-columns:1fr 4fr 1fr;height:100%}.tri-layout-middle{grid-area:b;padding-top:16px;min-width:0;z-index:5}.tri-layout-right{grid-area:c;min-width:0}.tri-layout-left{grid-area:a;min-width:0}@media screen and (min-width: 1400px){.tri-layout-left-contents,.tri-layout-right-contents{padding:32px 16px;position:sticky;top:0;max-height:100vh;min-height:50vh;overflow-y:scroll;overflow-x:hidden;height:100%;scrollbar-width:none;-ms-overflow-style:none}.tri-layout-left-contents::-webkit-scrollbar,.tri-layout-right-contents::-webkit-scrollbar{display:none}.tri-layout-middle-contents{max-width:940px;margin:0 auto}}@media screen and (min-width: 1400px)and (max-width: 1700px){.tri-layout-sides-content,.tri-layout-container{grid-template-columns:1fr 972px 1fr}.tri-layout-container{grid-column-gap:12px;margin-inline-start:16px;margin-inline-end:16px}}@media screen and (max-width: 1400px){.tri-layout-container{grid-template-areas:"a b b";grid-template-columns:1fr 3fr;grid-template-rows:min-content min-content 1fr;padding-inline-end:24px}.tri-layout-sides{grid-column-start:a;grid-column-end:a}.tri-layout-sides-content{display:block}}@media screen and (min-width: 1000px)and (max-width: 1400px){.tri-layout-sides-content{position:sticky;top:0;max-height:100vh;min-height:50vh;overflow-y:scroll;overflow-x:hidden;height:100%;scrollbar-width:none;-ms-overflow-style:none}.tri-layout-sides-content::-webkit-scrollbar{display:none}}@media screen and (min-width: 1000px){.tri-layout-mobile-tabs{display:none}.tri-layout-left-contents>*,.tri-layout-right-contents>*{opacity:.6;transition:opacity ease-in-out 120ms}html.dark-mode .tri-layout-left-contents>*,html.dark-mode .tri-layout-right-contents>*{opacity:.75}.tri-layout-left-contents>*:hover,.tri-layout-left-contents>*:focus-within,.tri-layout-right-contents>*:hover,.tri-layout-right-contents>*:focus-within{opacity:1 !important}}@media screen and (min-width: 1000px)and (prefers-contrast: more){.tri-layout-left-contents>*,.tri-layout-right-contents>*{opacity:1 !important}}@media screen and (max-width: 1000px){.tri-layout-container{grid-template-areas:none;grid-template-columns:1fr;grid-column-gap:0;padding-inline-end:6px;padding-inline-start:6px}.tri-layout-container .tri-layout-sides{padding-inline-start:16px;padding-inline-end:16px;grid-column:1/1}.tri-layout-container .tri-layout-left>*,.tri-layout-container .tri-layout-right>*{display:none;pointer-events:none}.tri-layout-container .tri-layout-left,.tri-layout-container .tri-layout-right{padding-top:0 !important}.tri-layout-container .tri-layout-middle{grid-area:none;grid-row:3;grid-column:1/1;z-index:1;overflow:hidden;transition:transform ease-in-out 240ms}.tri-layout-container .tri-layout-left{grid-row:2}.tri-layout-container.show-info{overflow:hidden}.tri-layout-container.show-info .tri-layout-middle{display:none}.tri-layout-container.show-info .tri-layout-right>*,.tri-layout-container.show-info .tri-layout-left>*{display:block;pointer-events:auto}}@media screen and (max-width: 880px){.tri-layout-container{margin-inline-start:0;margin-inline-end:0}}.card{background-color:#fff;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);border-radius:3px;break-inside:avoid}html.dark-mode .card{background-color:#222}.card .body,.card p.empty-text{padding-block:16px}.card a,.card p{word-wrap:break-word;word-break:break-word}.card-title{padding:16px 16px 6px;margin:0;font-size:14px;color:#222;fill:#222;font-weight:400}.card-title a{line-height:1}.card-footer-link,button.card-footer-link{display:block;padding:12px 16px;line-height:1;border-top:1px solid;width:100%;text-align:left;border-color:#ddd;border-radius:0 0 3px 3px;font-size:.9em;margin-top:6px}html.dark-mode .card-footer-link,html.dark-mode button.card-footer-link{border-color:#555}.card-footer-link:hover,button.card-footer-link:hover{text-decoration:none;background-color:#f2f2f2}html.dark-mode .card-footer-link:hover,html.dark-mode button.card-footer-link:hover{background-color:#2d2d2d}.card-footer-link:focus,button.card-footer-link:focus{background-color:#eee;outline:1px dotted #666;outline-offset:-2px}html.dark-mode .card-footer-link:focus,html.dark-mode button.card-footer-link:focus{background-color:#222}.card.border-card{border:1px solid;border-color:#ddd}html.dark-mode .card.border-card{border-color:#000}.card.drag-card{border:1px solid #ddd;border-color:#ddd;background-color:#fff;border-radius:4px;display:flex;padding:0 0 0 40px;margin:12px 0;position:relative}html.dark-mode .card.drag-card{border-color:#000}html.dark-mode .card.drag-card{background-color:#333}.card.drag-card .drag-card-action{cursor:pointer}.card.drag-card .handle,.card.drag-card .drag-card-action{display:flex;align-items:center;text-align:center;justify-content:center;width:28px;flex-grow:0;padding:0 6px}.card.drag-card .handle:hover,.card.drag-card .drag-card-action:hover{background-color:#eee}html.dark-mode .card.drag-card .handle:hover,html.dark-mode .card.drag-card .drag-card-action:hover{background-color:#2d2d2d}.card.drag-card .handle .svg-icon,.card.drag-card .drag-card-action .svg-icon{margin-inline-end:0px}.card.drag-card .outline input{margin:12px 0;width:100%}.card.drag-card .outline{position:relative}.card.drag-card .handle{background-color:#eee;left:0;position:absolute;top:0;bottom:0}html.dark-mode .card.drag-card .handle{background-color:#2d2d2d}.card.drag-card>div{padding:0 12px;max-width:80%;flex:1}.grid-card{display:flex;flex-direction:column;border:1px solid #ddd;border-color:#ddd;margin-bottom:24px;border-radius:4px;overflow:hidden;min-width:100px;color:#444;transition:border-color ease-in-out 120ms,box-shadow ease-in-out 120ms}html.dark-mode .grid-card{border-color:#000}.grid-card:hover{color:#444;text-decoration:none;box-shadow:0 1px 6px -1px rgba(0,0,0,.1)}html.dark-mode .grid-card:hover{box-shadow:0 1px 6px -1px rgba(0,0,0,.5)}.grid-card h2{width:100%;font-size:1.5em;margin:0 0 10px}.grid-card p{font-size:.7rem;margin:0;line-height:1.6em}.grid-card .grid-card-content{flex:1;border-top:0;border-bottom-width:2px}.grid-card .grid-card-content,.grid-card .grid-card-footer{padding:24px}.grid-card .grid-card-content+.grid-card-footer{padding-top:0}.book-grid-item .grid-card-footer p.small{font-size:.8em;margin:0}.content-wrap.card{padding:16px 48px;margin-inline-start:auto;margin-inline-end:auto;margin-bottom:24px;overflow:initial;min-height:60vh;border-radius:8px}.content-wrap.card.auto-height{min-height:0}.content-wrap.card.fill-width{width:100%}@media screen and (max-width: 1400px){.content-wrap.card{padding:16px 32px}}@media screen and (max-width: 880px){.content-wrap.card{padding:16px 24px}}@media screen and (max-width: 600px){.content-wrap.card{padding:16px 16px}}.sub-card{box-shadow:0 1px 3px 0 rgba(0,0,0,.1);border:1.5px solid;border-color:#e2e2e2;border-radius:4px}html.dark-mode .sub-card{border-color:#444}.outline-hover{border:1px solid rgba(0,0,0,0) !important}.outline-hover:hover{border:1px solid rgba(0,0,0,.1) !important}.fade-in-when-active{opacity:.6;transition:opacity ease-in-out 120ms}html.dark-mode .fade-in-when-active{opacity:.7}.fade-in-when-active:hover,.fade-in-when-active:focus-within{opacity:1 !important}@media(prefers-contrast: more){.fade-in-when-active{opacity:1 !important}}.tag-item{display:inline-flex;margin-bottom:6px;margin-inline-end:6px;border-radius:4px;border:1px solid;overflow:hidden;font-size:.85em;border-color:#ccc}html.dark-mode .tag-item{border-color:#666}.tag-item a,.tag-item span,.tag-item a:hover,.tag-item a:active{padding:4px 8px;color:rgba(0,0,0,.7);transition:background-color ease-in-out 80ms;text-decoration:none}html.dark-mode .tag-item a,html.dark-mode .tag-item span,html.dark-mode .tag-item a:hover,html.dark-mode .tag-item a:active{color:rgba(255,255,255,.8)}.tag-item a:hover{background-color:rgba(255,255,255,.7)}html.dark-mode .tag-item a:hover{background-color:rgba(255,255,255,.3)}.tag-item svg{fill:rgba(0,0,0,.5)}html.dark-mode .tag-item svg{fill:rgba(255,255,255,.5)}.tag-item .tag-value{border-inline-start:1px solid;border-color:#ddd;background-color:rgba(255,255,255,.5)}html.dark-mode .tag-item .tag-value{border-color:#666}html.dark-mode .tag-item .tag-value{background-color:rgba(255,255,255,.2)}.tag-name.highlight,.tag-value.highlight{font-weight:bold}.tag-list div:last-child .tag-item{margin-bottom:0}.item-list-row .tag-item{margin-bottom:0}.api-method{font-size:.75rem;background-color:#888;padding:6px;line-height:1.3;opacity:.7;vertical-align:top;border-radius:3px;color:#fff;display:inline-block;min-width:60px;text-align:center;font-weight:bold}.api-method[data-method=GET]{background-color:#077b70}.api-method[data-method=POST]{background-color:#cf4d03}.api-method[data-method=PUT]{background-color:#0288d1}.api-method[data-method=DELETE]{background-color:#ab0f0e}.sticky-sidebar{position:sticky;top:16px;max-height:calc(100vh - 16px);overflow-y:auto}button{background-color:rgba(0,0,0,0);border:0;font-size:100%}.button{text-decoration:none;font-size:.85rem;line-height:1.4em;padding:7.8px 16px;margin-top:6px;margin-bottom:6px;display:inline-block;font-weight:400;outline:0;border-radius:4px;cursor:pointer;transition:background-color ease-in-out 120ms,filter ease-in-out 120ms,box-shadow ease-in-out 120ms;box-shadow:none;background-color:var(--color-primary);color:#fff;border:1px solid var(--color-primary);vertical-align:top}.button:hover,.button:focus,.button:active{background-color:var(--color-primary);text-decoration:none;color:#fff}.button:hover{box-shadow:0 0 4px 1px #ccc;filter:brightness(110%)}html.dark-mode .button:hover{box-shadow:0 0 4px 1px rgba(0,0,0,.5)}.button:focus{outline:1px dotted currentColor;outline-offset:-6px;box-shadow:none;filter:brightness(90%)}.button:active{outline:0}.button.outline{background-color:rgba(0,0,0,0);color:#666;fill:currentColor;border:1px solid;border-color:#ccc}html.dark-mode .button.outline{color:#aaa}html.dark-mode .button.outline{border-color:#666}.button.outline:hover,.button.outline:focus,.button.outline:active{color:#444;border:1px solid #ccc;box-shadow:0 1px 4px 0 rgba(0,0,0,.1);background-color:#f2f2f2;background-color:#f8f8f8;filter:none}html.dark-mode .button.outline:hover,html.dark-mode .button.outline:focus,html.dark-mode .button.outline:active{color:#bbb}html.dark-mode .button.outline:hover,html.dark-mode .button.outline:focus,html.dark-mode .button.outline:active{background-color:#444}.button.outline:active{border-color:#bbb;background-color:#ddd;color:#666;box-shadow:inset 0 0 2px rgba(0,0,0,.1)}.button+.button{margin-inline-start:12px}.button.small{font-size:.75rem;padding:7.2px 12px}.text-button{cursor:pointer;background-color:rgba(0,0,0,0);padding:0;margin:0;border:none;user-select:none;font-size:.75rem;line-height:1.4em;color:var(--color-link)}.text-button:active{outline:0}.text-button:hover{text-decoration:none}.text-button:hover,.text-button:focus{color:var(--color-link);fill:var(--color-link)}.text-button.hover-underline:hover{text-decoration:underline}.button.block{width:100%;text-align:start;display:block}.button.icon .svg-icon,.icon-button .svg-icon,.text-button.icon .svg-icon{margin-inline-end:0}.icon-button{text-align:center;border:1px solid rgba(0,0,0,0)}.icon-button:hover{background-color:rgba(0,0,0,.05);border-radius:4px;border-color:#ddd;cursor:pointer}html.dark-mode .icon-button:hover{border-color:#444}.button.svg{display:flex;align-items:center;padding:12px 16px;padding-bottom:10px;width:100%}.button.svg svg{display:inline-block;width:24px;height:24px;bottom:auto;margin-inline-end:16px}.button[disabled]{background-color:#bbb;cursor:default;border-color:#ccc}.button[disabled]:hover{background-color:#bbb;cursor:default;box-shadow:none}table{min-width:100px;max-width:100%}table thead{background-color:#f8f8f8;font-weight:500}html.dark-mode table thead{background-color:#333}table td,table th{min-width:10px;padding:6px 8px;border:1px solid #ddd;overflow:auto;line-height:1.2;word-break:break-word;vertical-align:top}table td p,table th p{margin:0}table.table{width:100%}table.table tr td,table.table tr th{border-bottom:1px solid rgba(0,0,0,.05)}table.table th,table.table td{text-align:start;border:none;padding:12px 12px;vertical-align:middle;margin:0;overflow:visible}table.table th{font-weight:bold}table.table tr:hover{background-color:#f2f2f2}html.dark-mode table.table tr:hover{background-color:#333}table.table .text-right{text-align:end}table.table .text-center{text-align:center}table.table td.actions{overflow:visible}table.table a{display:inline-block}table.table.expand-to-padding{margin-left:-12px;margin-right:-12px;width:calc(100% + 2*12px);max-width:calc(100% + 2*12px)}table.no-style td{border:0;padding:0}table.list-table{margin:0 -6px}table.list-table td{border:0;vertical-align:middle;padding:6px}.input-base,input[type=text],input[type=number],input[type=email],input[type=date],input[type=search],input[type=url],input[type=color],input[type=password],select,textarea,.fake-input{border-radius:3px;border:1px solid #d4d4d4;background-color:#fff;border-color:#d4d4d4;color:#666;display:inline-block;font-size:14px;padding:10.8px;height:40px;width:250px;max-width:100%}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{background-color:#333}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{border-color:#111}html.dark-mode .input-base,html.dark-mode input[type=text],html.dark-mode input[type=number],html.dark-mode input[type=email],html.dark-mode input[type=date],html.dark-mode input[type=search],html.dark-mode input[type=url],html.dark-mode input[type=color],html.dark-mode input[type=password],html.dark-mode select,html.dark-mode textarea,html.dark-mode .fake-input{color:#aaa}.input-base.neg,input.neg[type=text],input.neg[type=number],input.neg[type=email],input.neg[type=date],input.neg[type=search],input.neg[type=url],input.neg[type=color],input.neg[type=password],select.neg,textarea.neg,.neg.fake-input,.input-base.invalid,input.invalid[type=text],input.invalid[type=number],input.invalid[type=email],input.invalid[type=date],input.invalid[type=search],input.invalid[type=url],input.invalid[type=color],input.invalid[type=password],select.invalid,textarea.invalid,.invalid.fake-input{border:1px solid var(--color-negative)}.input-base.pos,input.pos[type=text],input.pos[type=number],input.pos[type=email],input.pos[type=date],input.pos[type=search],input.pos[type=url],input.pos[type=color],input.pos[type=password],select.pos,textarea.pos,.pos.fake-input,.input-base.valid,input.valid[type=text],input.valid[type=number],input.valid[type=email],input.valid[type=date],input.valid[type=search],input.valid[type=url],input.valid[type=color],input.valid[type=password],select.valid,textarea.valid,.valid.fake-input{border:1px solid var(--color-positive)}.input-base.disabled,input.disabled[type=text],input.disabled[type=number],input.disabled[type=email],input.disabled[type=date],input.disabled[type=search],input.disabled[type=url],input.disabled[type=color],input.disabled[type=password],select.disabled,textarea.disabled,.disabled.fake-input,.input-base[disabled],input[disabled][type=text],input[disabled][type=number],input[disabled][type=email],input[disabled][type=date],input[disabled][type=search],input[disabled][type=url],input[disabled][type=color],input[disabled][type=password],select[disabled],textarea[disabled],[disabled].fake-input{background:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAcAAAAHCAYAAADEUlfTAAAAMUlEQVQIW2NkwAGuXbv2nxGbHEhCS0uLEUMSJgHShCKJLIEiiS4Bl8QmAZbEJQGSBAC62BuJ+tt7zgAAAABJRU5ErkJggg==)}.input-base[readonly],input[readonly][type=text],input[readonly][type=number],input[readonly][type=email],input[readonly][type=date],input[readonly][type=search],input[readonly][type=url],input[readonly][type=color],input[readonly][type=password],select[readonly],textarea[readonly],[readonly].fake-input{background-color:#f8f8f8}.input-base:focus,input[type=text]:focus,input[type=number]:focus,input[type=email]:focus,input[type=date]:focus,input[type=search]:focus,input[type=url]:focus,input[type=color]:focus,input[type=password]:focus,select:focus,textarea:focus,.fake-input:focus{border-color:var(--color-primary);outline:1px solid var(--color-primary)}.input-fill-width{width:100% !important}.fake-input{overflow:auto}#html-editor{display:none}#markdown-editor{position:relative;z-index:5}#markdown-editor #markdown-editor-input{font-style:normal;font-weight:400;padding:6px 16px;color:#444;border-radius:0;max-height:100%;flex:1;border:0;width:100%}#markdown-editor #markdown-editor-input:focus{outline:0}#markdown-editor.fullscreen{position:fixed;top:0;left:0;height:100%;z-index:2}.markdown-editor-wrap{border-top:1px solid #ddd;border-bottom:1px solid #ddd;border-color:#ddd;position:relative;flex:1;min-width:0}html.dark-mode .markdown-editor-wrap{border-color:#000}.markdown-editor-wrap+.markdown-editor-wrap{flex-basis:50%;flex-shrink:0;flex-grow:0}.markdown-editor-wrap .cm-editor{flex:1;max-width:100%;border:0;margin:0}.markdown-panel-divider{width:2px;background-color:#ddd;cursor:col-resize}html.dark-mode .markdown-panel-divider{background-color:#000}@media screen and (max-width: 880px){#markdown-editor{flex-direction:column}#markdown-editor .markdown-editor-wrap{width:100%;max-width:100%;flex-grow:1;flex-basis:auto !important;min-height:0}.editor-toolbar-label{float:none !important;border-color:#ddd;display:block}html.dark-mode .editor-toolbar-label{border-color:#555}.markdown-editor-wrap:not(.active) .editor-toolbar+div,.markdown-editor-wrap:not(.active) .editor-toolbar .buttons,.markdown-editor-wrap:not(.active) .markdown-display{display:none}#markdown-editor .markdown-editor-wrap:not(.active){flex-grow:0;flex:none}}.markdown-editor-display{background-color:#fff}.markdown-editor-display body{display:block;background-color:#fff;padding-inline-start:12px;padding-inline-end:12px;max-width:864px}.markdown-editor-display [drawio-diagram]:hover{outline:2px solid var(--color-primary)}html.markdown-editor-display.dark-mode{background-color:#222}html.markdown-editor-display.dark-mode body{background-color:#222}.editor-toolbar{height:32px;width:100%;font-size:11px;line-height:1.6;border-bottom:1px solid #ccc;background-color:#fff;border-color:#ccc;flex:none}html.dark-mode .editor-toolbar{background-color:#333}html.dark-mode .editor-toolbar{border-color:#000}html.dark-mode .editor-toolbar button{color:#aaa}.editor-toolbar .buttons{font-size:14px}.editor-toolbar .buttons .dropdown-menu{padding:0}.editor-toolbar .buttons .toggle-switch{margin:12px 0}.editor-toolbar .buttons button{font-size:.9rem;width:2rem;text-align:center;border-left:1px solid;border-color:#ddd}html.dark-mode .editor-toolbar .buttons button{border-color:#555}.editor-toolbar .buttons button svg{margin-inline-end:0}.editor-toolbar .buttons button:hover{background-color:#ddd}html.dark-mode .editor-toolbar .buttons button:hover{background-color:#222}label{color:#666;display:block;line-height:1.4em;font-size:.94em;font-weight:400;padding-bottom:2px;margin-bottom:.2em}html.dark-mode label{color:#ddd}label.inline{display:inline-block}label.radio,label.checkbox{font-weight:400;user-select:none}label.radio input[type=radio],label.radio input[type=checkbox],label.checkbox input[type=radio],label.checkbox input[type=checkbox]{margin-inline-end:6px}label.inline.checkbox{margin-inline-end:16px}label+p.small{margin-bottom:.8em}table.form-table{max-width:100%}table.form-table td{overflow:hidden;padding:1.5px 0}select{-webkit-appearance:none;-moz-appearance:none;appearance:none;background:url("data:image/svg+xml;utf8,");background-size:10px 12px;background-position:calc(100% - 20px) 64%;background-repeat:no-repeat}html[dir=rtl] select{background-position:20px 70%}input[type=date]{width:190px}input[type=color]{height:60px}input[type=color].small{height:42px;width:60px;padding:2px}.toggle-switch{user-select:none;display:inline-grid;grid-template-columns:28px 1fr;align-items:center;margin:16px 0}.toggle-switch .custom-checkbox{width:16px;height:16px;border-radius:2px;display:inline-block;border:2px solid currentColor;overflow:hidden;fill:currentColor}.toggle-switch .custom-checkbox .svg-icon{width:100%;height:100%;margin:0;bottom:auto;top:-1.5px;left:0;transition:transform ease-in-out 120ms;transform:scale(0);transform-origin:center center}.toggle-switch input[type=checkbox]{display:none}.toggle-switch input[type=checkbox]:checked+.custom-checkbox .svg-icon{transform:scale(1)}.toggle-switch .custom-checkbox:hover{background-color:rgba(0,0,0,.05);opacity:.8}.toggle-switch input[type=checkbox][disabled]~*{opacity:.8;cursor:not-allowed}.toggle-switch input[type=checkbox][disabled]~.custom-checkbox{border-color:#999;color:#999 !important;background:#f2f2f2}.toggle-switch-list .toggle-switch{margin:6px 0}.toggle-switch-list.compact .toggle-switch{margin:1px 0}.form-group{margin-bottom:12px}.setting-list>div{border-bottom:1px solid #ddd;padding:32px 0}.setting-list>div:last-child{border-bottom:none}.setting-list-label{color:#222;font-size:1rem}.setting-list-label+p.small{margin-bottom:0}.setting-list-label+.grid{margin-top:16px}.setting-list .grid input[type=text],.setting-list .grid input[type=email],.setting-list .grid input[type=password],.setting-list .grid select,.stretch-inputs input[type=text],.stretch-inputs input[type=email],.stretch-inputs input[type=password],.stretch-inputs select{width:100%}.simple-code-input{background-color:#f8f8f8;font-family:monospace;font-size:12px;min-height:100px;display:block;width:100%}.form-group div.text-pos,.form-group div.text-neg,.form-group p.text-post,.form-group p.text-neg{padding:6px 0}.form-group.collapsible{padding:0 16px;border:1px solid;border-color:#ddd;border-radius:4px}html.dark-mode .form-group.collapsible{border-color:#000}.form-group.collapsible .collapse-title{margin-inline-start:-16px;margin-inline-end:-16px;padding:12px 16px;display:block;width:calc(100% + 32px);text-align:start}.form-group.collapsible .collapse-title,.form-group.collapsible .collapse-title label{cursor:pointer}.form-group.collapsible .collapse-title label{padding-bottom:0;margin-bottom:0;color:inherit}.form-group.collapsible .collapse-title label:before{display:inline-block;content:"▸";margin-inline-end:16px;transition:all ease-in-out 400ms;transform:rotate(0)}.form-group.collapsible .collapse-content{display:none;padding-bottom:16px}.form-group.collapsible.open .collapse-title label:before{transform:rotate(90deg)}.title-input input[type=text]{display:block;width:100%;padding:12px;margin-top:0;font-size:2em;height:auto}.description-input textarea{display:block;width:100%;padding:12px;font-size:14px;color:#666;height:auto}.description-input>.tox-tinymce{border:1px solid #ddd !important;border-color:#ddd !important;border-radius:3px}html.dark-mode .description-input>.tox-tinymce{border-color:#000 !important}.description-input>.tox-tinymce .tox-toolbar__primary{justify-content:end}.search-box{max-width:100%;position:relative}.search-box button[tabindex="-1"]{background-color:rgba(0,0,0,0);border:none;color:#666;padding:0;cursor:pointer;position:absolute;left:8px;top:9px}html.dark-mode .search-box button[tabindex="-1"]{color:#aaa}html[dir=rtl] .search-box button[tabindex="-1"]{right:8px;left:auto}.search-box input{display:block;padding:9px;padding-inline-start:28px;width:300px;max-width:100%;height:auto}.search-box.flexible input{width:100%}.search-box button.search-box-cancel{left:auto;right:0}.contained-search-box{display:flex;height:38px;z-index:-1}.contained-search-box.floating{box-shadow:0 1px 3px 1px rgba(76,76,76,.26);border-radius:4px;overflow:hidden}html.dark-mode .contained-search-box.floating{border:1px solid #000}.contained-search-box input,.contained-search-box button{height:100%;border-radius:0;border:1px solid #ddd;border-color:#ddd;margin-inline-start:-1px}html.dark-mode .contained-search-box input,html.dark-mode .contained-search-box button{border-color:#000}.contained-search-box input:last-child,.contained-search-box button:last-child{border-inline-end:0}.contained-search-box input{border:0;flex:5;padding:6px 12px}.contained-search-box input:focus,.contained-search-box input:active{outline:1px dotted var(--color-primary);outline-offset:-2px;border:0}.contained-search-box button{border:0;width:48px;border-inline-start:1px solid #ddd;background-color:#fff;background-color:#fff;color:#444}html.dark-mode .contained-search-box button{background-color:#333}html.dark-mode .contained-search-box button{color:#aaa}.contained-search-box button:focus{outline:1px dotted var(--color-primary);outline-offset:-2px}.contained-search-box svg{margin:0}@media screen and (max-width: 600px){.contained-search-box{width:180px}}.outline>input{border:0;border-bottom:2px solid #ddd;border-radius:0}.outline>input:focus,.outline>input:active{border:0;border-bottom:2px solid #aaa;outline:0}.image-picker img{background-color:#bbb;max-width:100%}.custom-file-input{overflow:hidden;padding:0;position:absolute;white-space:nowrap;width:1px;height:1px;border:0;clip:rect(0, 0, 0, 0)}.custom-file-input:focus+label{border-color:var(--color-primary);outline:1px solid var(--color-primary)}input.shortcut-input{width:auto;max-width:120px;height:auto}.anim.fadeIn{opacity:0;animation-name:fadeIn;animation-duration:120ms;animation-timing-function:ease-in-out;animation-fill-mode:forwards}@keyframes fadeIn{0%{opacity:0}100%{opacity:1}}.search-suggestions-animation{animation-name:searchSuggestions;animation-duration:120ms;animation-fill-mode:forwards;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99)}@keyframes searchSuggestions{0%{opacity:.5;transform:scale(0.9)}100%{opacity:1;transform:scale(1)}}@keyframes loadingBob{0%{transform:translate3d(0, 0, 0)}30%{transform:translate3d(0, 0, 0)}50%{transform:translate3d(0, -10px, 0)}70%{transform:translate3d(0, 0, 0)}100%{transform:translate3d(0, 0, 0)}}@keyframes pointer{0%{transform:translate3d(0, 20px, 0) scale3d(0, 0, 0)}100%{transform:translate3d(0, 0, 0) scale3d(1, 1, 1)}}.anim.pointer{transform-origin:50% 100%;animation-name:pointer;animation-duration:180ms;animation-delay:0s;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99)}.tox.tox-fullscreen{position:fixed;top:0;height:100%;width:100%;max-width:100%;z-index:100}.tox.tox-tinymce{border-inline:0;border-bottom:0}.page-content.mce-content-body{padding-block-start:1rem;padding-block-end:1rem;outline:0;display:block;max-width:870px}.wysiwyg-input.mce-content-body{padding-block-start:1rem;padding-block-end:1rem;outline:0;display:block}.wysiwyg-input.mce-content-body:before{padding:1rem;top:4px;font-style:italic;color:rgba(34,47,62,.5)}html.dark-mode .wysiwyg-input.mce-content-body:before{color:rgba(155,155,155,.5)}.page-content.mce-content-body doc-root{display:block}.page-content.mce-content-body code-block{display:block}.page-content.mce-content-body p{line-height:1.6}body.page-content.mce-content-body{padding-bottom:5rem}.tox .tox-pop__dialog .tox-toolbar{background:rgba(0,0,0,0) !important}.tox-toolbar__primary{justify-content:center}.page-content.mce-content-body code-block>*{pointer-events:none}.page-content.mce-content-body code-block pre{display:none}.page-content.mce-content-body details summary{pointer-events:none}.page-content.mce-content-body details doc-root{padding:12px;margin-left:-10px;margin-right:-10px;margin-bottom:-10px;margin-top:-10px;overflow:hidden}.page-content.mce-content-body .mce-preview-object.align-right{float:right !important;margin:6px 0 6px 12px}.page-content.mce-content-body .mce-preview-object.align-left{float:left !important;margin:6px 16px 16px 0}.page-content.mce-content-body .mce-preview-object.align-center{display:block;margin-left:auto;margin-right:auto}.page-content.mce-content-body .mce-preview-object iframe,.page-content.mce-content-body .mce-preview-object video{display:block;margin:0 !important;float:none !important}.page-content.mce-content-body td[data-mce-selected]::after,.page-content.mce-content-body th[data-mce-selected]::after{top:1px;left:1px;bottom:1px;right:1px;outline:1px dashed #1a85ff;outline-offset:0}.dark-mode .tox .tox-toolbar__primary,.dark-mode .tox .tox-menu,.dark-mode .tox .tox-dialog__header,.dark-mode .tox .tox-dialog,.dark-mode .tox .tox-dialog__footer,.dark-mode .tox .tox-pop__dialog,.dark-mode .tox.tox-tinymce-aux .tox-toolbar__overflow{background-color:#333 !important}.dark-mode .tox .tox-tbtn svg,.dark-mode .tox .tox-tbtn,.dark-mode .tox .tox-collection--list .tox-collection__item--active:not(.tox-collection__item--state-disabled){color:#dbdbdb;fill:#dbdbdb}.tox .tox-tbtn--bespoke .tox-tbtn__select-label{width:6em !important}.tox-menu .tox-collection__item blockquote::before{content:none}.tox-menu .tox-collection__item blockquote{border-left:4px solid var(--color-primary) !important;padding:4px 6px !important}.tox-menu .tox-collection__item blockquote{border-left:4px solid var(--color-primary) !important;padding:4px 6px !important}.tox-menu .tox-collection__item p[style*=background-color]{padding:4px 6px !important;border-left:3px solid currentColor !important}.tox-menu .tox-collection__item[title^="<"]>div>div{font-family:var(--font-code) !important;border:1px solid #ddd !important;background-color:#eee !important;padding:4px 6px !important}.tox-menu .tox-collection__item-label{line-height:normal !important}.page-content.mce-content-body .task-list-item{margin-left:0;position:relative}.page-content.mce-content-body .task-list-item>input[type=checkbox]{display:none}.page-content.mce-content-body .task-list-item:before{content:"";display:inline-block;border:2px solid #ccc;width:12px;height:12px;border-radius:2px;margin-right:8px;vertical-align:text-top;cursor:pointer;position:absolute;left:-24px;top:4px}.page-content.mce-content-body .task-list-item[checked]:before{background-color:#ccc;background-image:url('data:image/svg+xml;utf8,');background-position:50% 50%;background-size:100% 100%}.cm-editor{font-size:12px;border:1px solid #ddd;line-height:1.4;margin-bottom:24px}.page-content .cm-editor,.CodeMirrorContainer .cm-editor{border-radius:4px}.cm-editor .cm-line,.cm-editor .cm-gutter{font-family:var(--font-code)}.dark-mode .cm-editor{border-color:#444}.cm-copy-button{position:absolute;display:flex;align-items:center;justify-content:center;top:-1px;inset-inline-end:-1px;background-color:#eee;border:1px solid #ddd;border-start-end-radius:4px;background-color:#eee;border-color:#ddd;color:#444;line-height:0;cursor:pointer;z-index:5;user-select:none;opacity:0;pointer-events:none;width:32px;height:32px;transition:background-color linear 60ms,color linear 60ms}html.dark-mode .cm-copy-button{background-color:#333}html.dark-mode .cm-copy-button{border-color:#444}html.dark-mode .cm-copy-button{color:#888}.cm-copy-button svg{fill:currentColor}.cm-copy-button.success{background:var(--color-positive);color:#fff}.cm-copy-button:focus{outline:0 !important}.cm-editor:hover .cm-copy-button{user-select:all;opacity:.6;pointer-events:all}.notification{position:fixed;top:0;right:0;margin:32px;padding:16px 24px;background-color:#fff;background-color:#fff;border-radius:4px;border-inline-start:6px solid currentColor;box-shadow:0 1px 6px 1px rgba(22,22,22,.2);z-index:999999;cursor:pointer;max-width:360px;transition:transform ease-in-out 280ms;transform:translateX(580px);display:grid;grid-template-columns:42px 1fr 12px;color:#444;font-weight:700}html.dark-mode .notification{background-color:#444}.notification span,.notification svg{vertical-align:middle;justify-self:center;align-self:center}.notification svg{width:2.8rem;height:2.8rem;padding-inline-end:12px;fill:currentColor}.notification .dismiss{margin-top:-8px}.notification .dismiss svg{height:1rem;color:#444}html.dark-mode .notification .dismiss svg{color:#888}.notification span{vertical-align:middle;line-height:1.3}html.dark-mode .notification span{color:#bbb}.notification.pos{color:var(--color-positive)}.notification.neg{color:var(--color-negative)}.notification.warning{color:var(--color-warning)}.notification.showing{transform:translateX(0)}.notification.showing:hover{transform:translate3d(0, -2px, 0)}.chapter-contents-toggle{cursor:pointer;margin:0;transition:all ease-in-out 180ms;user-select:none}.chapter-contents-toggle svg[data-icon=caret-right]{margin-inline-end:0;font-size:1rem;transition:all ease-in-out 180ms;transform:rotate(0deg);transform-origin:50% 50%}.chapter-contents-toggle.open svg[data-icon=caret-right]{transform:rotate(90deg)}.chapter-contents-toggle svg[data-icon=caret-right]+*{margin-inline-start:3px}[overlay],.popup-background{background-color:rgba(0,0,0,.333);position:fixed;z-index:95536;width:100%;height:100%;min-width:100%;min-height:100%;top:0;left:0;right:0;bottom:0;align-items:center;justify-content:center;display:none}html.dark-mode [overlay],html.dark-mode .popup-background{background-color:rgba(0,0,0,.6)}.popup-body-wrap{display:flex}.popup-body{background-color:#fff;max-height:90%;max-width:1200px;width:90%;height:auto;margin:2% auto;border-radius:4px;box-shadow:0 0 15px 0 rgba(0,0,0,.3);overflow:hidden;z-index:999;display:flex;flex-direction:column;position:relative}html.dark-mode .popup-body{background-color:#333}.popup-body.small{margin:2% auto;width:800px;max-width:90%}.popup-body.very-small{margin:2% auto;width:600px;max-width:90%}.popup-body:before{display:flex;align-self:flex-start}.popup-body .popup-content{overflow-y:auto}.popup-body:focus{outline:0}.popup-header button,.popup-footer button{margin:0;border-radius:0;box-shadow:none;color:#fff;padding:6px 16px;cursor:pointer}.popup-header button:not(.popup-header-close){font-size:.8rem}.popup-header button:hover{background-color:rgba(255,255,255,.1)}.popup-footer{justify-content:end;background-color:var(--color-primary-light);min-height:41px}.popup-footer button{padding:10px 16px}.popup-header-close{border:0;color:#fff;font-size:16px;cursor:pointer}.popup-header-close svg{margin-right:0}.popup-header,.popup-footer{display:flex;position:relative;height:40px;flex:0}.popup-header .popup-title,.popup-footer .popup-title{color:#fff;margin-right:auto;padding:8px 16px}.popup-header.flex-container-row,.popup-footer.flex-container-row{display:flex !important}body.flexbox-support #entity-selector-wrap .popup-body .form-group{height:444px;min-height:444px}#entity-selector-wrap .popup-body .form-group{margin:0}.popup-body .entity-selector-container{flex:1}.dropzone-overlay{position:absolute;display:flex;justify-content:center;align-items:center;font-size:1.333rem;width:98%;height:98%;left:1%;top:1%;border-radius:4px;border:1px dashed var(--color-primary);font-style:italic;box-sizing:content-box;background-clip:padding-box;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='4' height='4' viewBox='0 0 4 4'%3E%3Cpath fill='%23a9a9a9' fill-opacity='0.52' d='M1 3h1v1H1V3zm2-2h1v1H3V1z'%3E%3C/path%3E%3C/svg%3E");background-color:var(--color-primary);color:#fff;opacity:.8;z-index:9;pointer-events:none;animation:dzAnimIn 240ms ease-in-out}.dropzone-landing-area{background-color:var(--color-primary-light);padding:16px 24px;width:100%;border:1px dashed var(--color-primary);color:var(--color-primary);border-radius:4px}@keyframes dzAnimIn{0%{opacity:0;transform:scale(0.7)}60%{transform:scale(1.1)}100%{transform:scale(1);opacity:.8}}@keyframes dzFileItemIn{0%{opacity:.5;transform:translateY(28px)}100%{opacity:1;transform:translateY(0)}}@keyframes dzFileItemOut{0%{opacity:1;transform:translateY(0)}100%{opacity:.5;transform:translateY(28px)}}.dropzone-file-item{width:260px;height:80px;position:relative;display:flex;margin:1rem;flex-direction:row;background:#fff;box-shadow:0 1px 6px 1px rgba(22,22,22,.2);border-radius:4px;overflow:hidden;padding-bottom:3px;animation:dzFileItemIn ease-in-out 240ms;transition:transform ease-in-out 120ms,box-shadow ease-in-out 120ms;cursor:pointer}html.dark-mode .dropzone-file-item{background:#444}.dropzone-file-item:hover{transform:translateY(-3px);box-shadow:0 3px 8px 1px rgba(22,22,22,.2)}.dropzone-file-item.dismiss{animation:dzFileItemOut ease-in-out 240ms}.dropzone-file-item .loading-container{text-align:start !important;margin:0}.dropzone-file-item-image-wrap{width:80px;position:relative;background-color:var(--color-primary-light)}.dropzone-file-item-image-wrap img{object-fit:cover;width:100%;height:100%;opacity:.8}.dropzone-file-item-text-wrap{flex:1;display:block;padding:1rem;overflow:auto}.dropzone-file-item-progress{position:absolute;bottom:0;left:0;font-size:0;height:3px;background-color:var(--color-primary);transition:width ease-in-out 240ms}.dropzone-file-item-label,.dropzone-file-item-status{align-items:center;font-size:.8rem;font-weight:700}.dropzone-file-item-status[data-status]{display:flex;font-size:.6rem;font-weight:500;line-height:1.2}.dropzone-file-item-status[data-status=success]{color:var(--color-positive)}.dropzone-file-item-status[data-status=error]{color:var(--color-negative)}.dropzone-file-item-status[data-status]+.dropzone-file-item-label{display:none}.image-manager-body{min-height:70vh}.image-manager-filter-bar{position:sticky;top:0;z-index:5;background-color:rgba(255,255,255,.85)}html.dark-mode .image-manager-filter-bar{background-color:rgba(80,80,80,.85)}.image-manager-filter-bar-bg{position:absolute;left:0;top:0;width:100%;height:100%;opacity:.15;z-index:-1}.image-manager-filters{box-shadow:0 1px 3px 1px rgba(76,76,76,.26);border-radius:4px;overflow:hidden;border-bottom:0 !important}html.dark-mode .image-manager-filters{border:1px solid #000 !important}.image-manager-filters button{line-height:0;background-color:#fff}html.dark-mode .image-manager-filters button{background-color:#333}.image-manager-filters svg{margin:0}.image-manager-list{padding:3px;display:grid;grid-template-columns:repeat(auto-fill, minmax(max(140px, 17%), 1fr));gap:3px;z-index:3}.image-manager-list>div{aspect-ratio:1}.image-manager-list .image{display:block;position:relative;border-radius:0;margin:0;width:100%;text-align:start;padding:0;cursor:pointer;aspect-ratio:1;border-color:#ddd;transition:all linear 80ms;overflow:hidden}html.dark-mode .image-manager-list .image{border-color:#000}.image-manager-list .image.selected{background-color:var(--color-primary-light);outline:currentColor 3px solid;border-radius:3px;transform:scale3d(0.95, 0.95, 0.95)}.image-manager-list .image img{width:100%;max-width:100%;display:block;object-fit:cover;height:auto}.image-manager-list .image .image-meta{opacity:0;position:absolute;width:100%;bottom:0;left:0;color:#eee;background-color:rgba(0,0,0,.7);font-size:10px;padding:3px 4px;pointer-events:none;transition:opacity ease-in-out 80ms}.image-manager-list .image .image-meta span{display:block}.image-manager-list .image.selected .image-meta,.image-manager-list .image:hover .image-meta,.image-manager-list .image:focus .image-meta{opacity:1}@media screen and (max-width: 880px){.image-manager-list .image .image-meta{display:none}}.image-manager .load-more{text-align:center;padding:12px 16px;clear:both}.image-manager .load-more .loading-container{margin:0}.image-manager .loading-container{text-align:center}.image-manager-list .image-manager-list-warning{grid-column:1/-1;aspect-ratio:auto}.image-manager-warning{background:#fff;color:var(--color-warning);font-weight:bold;border-inline:3px solid var(--color-warning)}html.dark-mode .image-manager-warning{background:#333}.image-manager-sidebar{width:300px;margin:0 auto;overflow-y:auto;overflow-x:hidden;border-inline-start:1px solid #ddd;border-color:#ddd}html.dark-mode .image-manager-sidebar{border-color:#000}.image-manager-sidebar .inner{min-height:auto;padding:16px}.image-manager-sidebar .image-manager-viewer img{max-width:100%;max-height:180px;display:block;margin:0 auto 16px auto;box-shadow:0 1px 21px 1px rgba(76,76,76,.3)}.image-manager-sidebar .image-manager-viewer{height:196px;display:flex;align-items:center;justify-content:center}.image-manager-sidebar .image-manager-viewer a{display:inline-block}@media screen and (max-width: 880px){.image-manager-sidebar{border-inline-start:0}}.image-manager-content{display:flex;flex-direction:column;flex:1;overflow-y:scroll}.image-manager-content .container{width:100%}.image-manager-content .full-tab{text-align:center}.tab-container.bordered [role=tablist] button[role=tab]{border-inline-end:1px solid #ddd;border-inline-end-color:#ddd}html.dark-mode .tab-container.bordered [role=tablist] button[role=tab]{border-inline-end-color:#000}.tab-container.bordered [role=tablist] button[role=tab]:last-child{border-inline-end:none}.tab-container [role=tablist]{display:flex;align-items:end;justify-items:start;text-align:start;border-bottom:1px solid #ddd;border-color:#ddd;margin-bottom:16px}html.dark-mode .tab-container [role=tablist]{border-color:#444}.tab-container [role=tablist] button[role=tab]{display:inline-block;padding:12px;color:rgba(0,0,0,.5);cursor:pointer;border-bottom:2px solid rgba(0,0,0,0);margin-bottom:-1px}html.dark-mode .tab-container [role=tablist] button[role=tab]{color:rgba(255,255,255,.5)}.tab-container [role=tablist] button[role=tab][aria-selected=true]{color:var(--color-link) !important;border-bottom-color:var(--color-link) !important;outline:0 !important}.tab-container [role=tablist] button[role=tab]:hover,.tab-container [role=tablist] button[role=tab]:focus{color:rgba(0,0,0,.8);border-bottom-color:rgba(0,0,0,.2)}html.dark-mode .tab-container [role=tablist] button[role=tab]:hover,html.dark-mode .tab-container [role=tablist] button[role=tab]:focus{color:rgba(255,255,255,.8)}html.dark-mode .tab-container [role=tablist] button[role=tab]:hover,html.dark-mode .tab-container [role=tablist] button[role=tab]:focus{border-bottom-color:rgba(255,255,255,.2)}.tab-container [role=tablist] button[role=tab]:focus{outline:1px dotted var(--color-primary);outline-offset:-2px}.tab-container [role=tablist].controls-card{margin-bottom:0;border-bottom:0;padding:0 6px}.image-picker .none{display:none}.code-editor .CodeMirror{height:auto;min-height:50vh;border-bottom:0}.code-editor .lang-options{overflow-y:scroll;flex-basis:200px;flex-grow:1}.code-editor .lang-options button{display:block;padding:6px 16px;border-bottom:1px solid;color:#333;border-bottom-color:#eee;cursor:pointer;width:100%;text-align:left;font-family:var(--font-code);font-size:.7rem;padding-left:30px}html.dark-mode .code-editor .lang-options button{color:#aaa}html.dark-mode .code-editor .lang-options button{border-bottom-color:#000}.code-editor .lang-options button:hover,.code-editor .lang-options button.active{background-color:var(--color-primary-light);color:var(--color-primary)}.code-editor button.lang-option-favorite-toggle{position:absolute;top:0;left:0;width:28px;font-size:1rem;border:0;line-height:1;padding:2px;z-index:2;height:100%;text-align:center;color:var(--color-primary)}.code-editor button.lang-option-favorite-toggle svg{margin:0}.code-editor button[data-favourite=true]~.action-favourite,.code-editor button[data-favourite=false]~.action-unfavourite{display:none}.code-editor .action-favourite{opacity:.5}.code-editor button:hover~.action-favourite{opacity:1}.code-editor label{background-color:var(--color-primary-light);width:100%;color:var(--color-primary);padding:3px 12px;margin-bottom:0}.code-editor-language-list{position:relative;width:160px;z-index:2;align-items:stretch}.code-editor-language-list input{border-radius:0;border:0;border-bottom:1px solid #ddd;padding:6px 12px;height:auto}.code-editor-main{flex:1;min-width:0}.code-editor-main .cm-editor{margin-bottom:0;z-index:1;max-width:100%;width:100%}.code-editor-body-wrap{height:80vh}@media screen and (max-width: 600px){.code-editor .lang-options{display:none}.code-editor-body-wrap{flex-direction:column}.code-editor-language-list,.code-editor-language-list input{width:100%}}.comments-container{padding-inline:32px}@media screen and (max-width: 880px){.comments-container{padding-inline:6px}}.comment-box{border-radius:4px;border:1px solid #ddd;border-color:#ddd;background-color:#fff}html.dark-mode .comment-box{border-color:#000}html.dark-mode .comment-box{background-color:#222}.comment-box .content{font-size:.666em;padding:6px 12px}.comment-box .content p,.comment-box .content ul,.comment-box .content ol{font-size:14px;margin:.5em 0}.comment-box .actions{opacity:0;transition:opacity ease-in-out 120ms}.comment-box:hover .actions,.comment-box:focus-within .actions{opacity:1}.comment-box .actions button:focus{outline:1px dotted var(--color-primary)}@media screen and (max-width: 880px){.comment-box .actions{opacity:1}}.comment-box .header{border-bottom:1px solid #ddd;padding:6px 12px;border-color:#ddd}html.dark-mode .comment-box .header{border-color:#000}.comment-box .header a{color:inherit}.comment-box .header .text-muted{color:#999}.comment-box .header .meta a,.comment-box .header .meta span{white-space:nowrap}.comment-box .header .right-meta .text-muted{opacity:.8}.comment-thread-indicator{border-inline-start:3px dotted #ddd;border-color:#ddd;margin-inline-start:6px;width:24px;height:calc(100% - 16px)}html.dark-mode .comment-thread-indicator{border-color:#444}.comment-branch .comment-branch .comment-branch .comment-branch .comment-thread-indicator{display:none}.comment-reply{display:none;margin:0 !important;margin-bottom:-3px !important}.comment-branch .comment-branch .comment-branch .comment-branch .comment-reply{display:block}.comment-container-compact .comment-box .meta{font-size:.8rem}.comment-container-compact .comment-box .header{padding:6px}.comment-container-compact .comment-box .right-meta{display:none}.comment-container-compact .comment-box .content{padding:6px 12px}.comment-container-compact .comment-thread-indicator{width:16px}#tag-manager .drag-card{max-width:500px}.template-item{cursor:pointer;position:relative}.template-item:hover,.template-item .template-item-actions button:hover{background-color:#f2f2f2}.template-item .template-item-actions{position:absolute;top:0;inset-inline-end:0;width:50px;height:100%;display:flex;flex-direction:column;border-inline-start:1px solid;border-color:#ddd}html.dark-mode .template-item .template-item-actions{border-color:#000}.template-item .template-item-actions button{cursor:pointer;flex:1;background-color:#fff;border:0;border-top:1px solid;border-color:#ddd}html.dark-mode .template-item .template-item-actions button{background-color:#222}html.dark-mode .template-item .template-item-actions button{border-color:#000}.template-item .template-item-actions button svg{margin:0}.template-item .template-item-actions button:first-child{border-top:0}.dropdown-search{position:relative}.dropdown-search-toggle-breadcrumb{border:1px solid rgba(0,0,0,0);border-radius:4px;line-height:normal;padding:6px}.dropdown-search-toggle-breadcrumb:hover{border-color:#ddd}.dropdown-search-toggle-breadcrumb .svg-icon{margin-inline-end:0}.dropdown-search-toggle-select{display:flex;gap:12px;line-height:normal}.dropdown-search-toggle-select .svg-icon{height:26px;width:26px;margin:0}.dropdown-search-toggle-select .avatar{height:22px;width:22px}.dropdown-search-toggle-select .avatar+span{max-width:100%;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.dropdown-search-toggle-select .dropdown-search-toggle-caret{font-size:1.15rem}.dropdown-search-toggle-select-label{min-width:0;white-space:nowrap}.dropdown-search-toggle-select-caret{line-height:0;margin-left:auto;margin-top:-2px;display:flex;align-items:center}.dropdown-search-dropdown{box-shadow:0 1px 3px 1px rgba(76,76,76,.26);overflow:hidden;min-height:100px;width:240px;display:none;position:absolute;z-index:80;right:0;top:0;margin-top:16px}html[dir=rtl] .dropdown-search-dropdown{right:auto;left:-16px}.dropdown-search-dropdown .dropdown-search-search .svg-icon{position:absolute;left:12px;top:11px;fill:#888;pointer-events:none}html[dir=rtl] .dropdown-search-dropdown .dropdown-search-search .svg-icon{right:12px;left:auto}.dropdown-search-dropdown .dropdown-search-list{max-height:400px;overflow-y:scroll;text-align:start}.dropdown-search-dropdown .dropdown-search-item{padding:12px 16px}.dropdown-search-dropdown .dropdown-search-item:hover,.dropdown-search-dropdown .dropdown-search-item:focus{background-color:#f2f2f2;text-decoration:none}.dropdown-search-dropdown input,.dropdown-search-dropdown input:focus{padding-inline-start:32px;border-radius:0;border:0;border-bottom:1px solid #ddd}.dropdown-search-dropdown input:focus{outline:0}@media screen and (max-width: 1000px){.dropdown-search-dropdown{inset-inline:16px auto}.dropdown-search-dropdown .dropdown-search-list{max-height:240px}}.item-list{box-shadow:0 1px 3px 0 rgba(0,0,0,.1)}.item-list-row{border:1.5px solid;border-color:#e2e2e2;border-bottom-width:0}html.dark-mode .item-list-row{border-color:#444}.item-list-row label{padding-bottom:0}.item-list-row:hover{background-color:#f6f6f6}html.dark-mode .item-list-row:hover{background-color:#333}.item-list-row:first-child{border-radius:4px 4px 0 0}.item-list-row:last-child{border-radius:0 0 4px 4px;border-bottom-width:1.5px}.item-list-row:first-child:last-child{border-radius:4px}.item-list-row-toggle-all{visibility:hidden}.item-list-row:hover .item-list-row-toggle-all{visibility:visible}.status-indicator-active,.status-indicator-inactive{width:8px;height:8px;border-radius:50%;display:inline-block}.status-indicator-active{background-color:var(--color-positive)}.status-indicator-inactive{background-color:var(--color-negative)}.shortcut-container{background-color:rgba(0,0,0,.25);pointer-events:none;position:fixed;left:0;top:0;width:100%;height:100%;z-index:99}.shortcut-linkage{position:fixed;box-shadow:0 0 4px 0 #fff;border-radius:3px}.shortcut-hint{position:fixed;padding:3px 3px;font-size:.85rem;font-weight:700;line-height:1;background-color:#eee;border-radius:3px;border:1px solid #b4b4b4;box-shadow:0 1px 1px rgba(0,0,0,.2),0 2px 0 0 rgba(255,255,255,.7) inset;color:#333}.back-to-top{background-color:var(--color-primary);position:fixed;bottom:16px;right:24px;padding:5px 7px;cursor:pointer;color:#fff;fill:#fff;width:40px;height:40px;border-radius:40px;transition:all ease-in-out 180ms;opacity:0;z-index:999;overflow:hidden}.back-to-top svg{width:26.6666666667px;height:26.6666666667px;margin-inline-end:4px}.back-to-top:hover{width:136px;opacity:1 !important}.back-to-top .inner{width:136px}.back-to-top span{position:relative;vertical-align:top;line-height:2}.scroll-box{list-style:none;padding:0;margin:0;max-height:280px;overflow-y:scroll;border:1px solid;border-color:#ddd;border-radius:3px;min-height:20px;background-color:#eee}html.dark-mode .scroll-box{border-color:#000}html.dark-mode .scroll-box{background-color:#000}.scroll-box-item{border-bottom:1px solid;border-top:1px solid;border-color:#ddd;margin-top:-1px;background-color:#fff;display:flex;align-items:flex-start;padding:1px}html.dark-mode .scroll-box-item{border-color:#000}html.dark-mode .scroll-box-item{background-color:#222}.scroll-box-item:last-child{border-bottom:0}.scroll-box-item:hover{cursor:pointer;background-color:#f8f8f8}html.dark-mode .scroll-box-item:hover{background-color:#333}.scroll-box-item .handle{color:#aaa;cursor:grab}.scroll-box-item button{opacity:.6}.scroll-box-item .handle svg{margin:0}.scroll-box-item>*{padding:6px 16px}.scroll-box-item .handle+*{padding-left:0}.scroll-box-item:hover .handle{color:#444}html.dark-mode .scroll-box-item:hover .handle{color:#fff}.scroll-box-item:hover button{opacity:1}.scroll-box-item a:hover{text-decoration:none}input.scroll-box-search,.scroll-box-header-item{font-size:.8rem;border:1px solid;border-color:#ddd;background-color:#fff;margin-bottom:-1px;border-radius:3px 3px 0 0;width:100%;max-width:100%;height:auto;line-height:1.4;color:#666}html.dark-mode input.scroll-box-search,html.dark-mode .scroll-box-header-item{border-color:#000}html.dark-mode input.scroll-box-search,html.dark-mode .scroll-box-header-item{background-color:#222}.scroll-box-search+.scroll-box,.scroll-box-header-item+.scroll-box{border-radius:0 0 3px 3px}.scroll-box[refs="shelf-sort@shelf-book-list"] [data-action=add]{display:none}.scroll-box[refs="shelf-sort@all-book-list"] [data-action=remove],.scroll-box[refs="shelf-sort@all-book-list"] [data-action=move_up],.scroll-box[refs="shelf-sort@all-book-list"] [data-action=move_down]{display:none}header.grid{grid-template-columns:minmax(max-content, 2fr) 1fr minmax(max-content, 2fr)}@media screen and (max-width: 1000px){header.grid{grid-template-columns:1fr;grid-row-gap:0}}header{position:relative;display:block;z-index:11;top:0;color:#fafafa;border-bottom:1px solid #ddd;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);border-bottom-color:#ddd}html.dark-mode header{border-bottom-color:#000}header .header-links{display:flex;align-items:center;justify-content:end}header .links{display:inline-block;vertical-align:top}header .links a{display:inline-block;padding:10px 16px;color:#fff;border-radius:3px}header .links a:hover{text-decoration:none;background-color:rgba(255,255,255,.15)}header .dropdown-container{padding-inline-start:16px;padding-inline-end:0}header .avatar,header .user-name{display:inline-block}header .avatar{width:30px;height:30px}header .user-name{vertical-align:top;position:relative;display:inline-flex;align-items:center;cursor:pointer;padding:12px;margin:0 -12px;border-radius:3px;gap:6px}header .user-name>span{padding-inline-start:6px;display:inline-block;line-height:1}header .user-name>svg{font-size:18px;margin-top:-2px;margin-inline-end:0}header .user-name:hover{background-color:rgba(255,255,255,.15)}@media screen and (min-width: 1000px)and (max-width: 1100px){header .user-name{padding-inline-start:6px}header .user-name .name{display:none}}.header *,.primary-background *{outline-color:#fff}header .search-box{display:inline-block}header .search-box input{background-color:rgba(0,0,0,.2);border:1px solid rgba(255,255,255,.2);border-radius:40px;color:#eee;z-index:2;height:auto;padding:9px;padding-inline-start:40px}header .search-box input:focus{outline:none;border:1px solid rgba(255,255,255,.4)}header .search-box input::placeholder{color:#fff;opacity:.6}@media screen and (min-width: 1000px)and (max-width: 1100px){header .search-box{max-width:200px}}header .search-box:focus-within #header-search-box-button{opacity:1}#header-search-box-button{z-index:1;inset-inline-start:16px;top:10px;color:#fff;opacity:.6;color:rgba(255,255,255,.8)}html.dark-mode #header-search-box-button{color:#aaa}#header-search-box-button svg{margin-inline-end:0}.global-search-suggestions{display:none;position:absolute;top:-12px;left:0;right:0;z-index:-1;margin-left:-48px;margin-right:-48px;padding-top:56px;border-radius:3px;box-shadow:0 2px 2px 1px rgba(0,0,0,.13);transform-origin:top center;opacity:.5;transform:scale(0.9)}.global-search-suggestions .entity-item-snippet p{display:none}.global-search-suggestions .entity-item-snippet{font-size:.8rem}.global-search-suggestions .entity-list-item-name{font-size:.9rem;display:-webkit-box;-webkit-box-orient:vertical;-webkit-line-clamp:2;overflow:hidden}.global-search-suggestions .global-search-loading{position:absolute;width:100%}header .search-box.search-active:focus-within .global-search-suggestions{display:block}header .search-box.search-active:focus-within input{background-color:#eee;border-color:#ddd}html.dark-mode header .search-box.search-active:focus-within input{background-color:#333}html.dark-mode header .search-box.search-active:focus-within input{border-color:#111}header .search-box.search-active:focus-within #header-search-box-button,header .search-box.search-active:focus-within input{color:#444}html.dark-mode header .search-box.search-active:focus-within #header-search-box-button,html.dark-mode header .search-box.search-active:focus-within input{color:#aaa}.logo{display:inline-flex;padding:6px 12px;margin:6px -12px;gap:12px;align-items:center;border-radius:4px}.logo:hover{color:#fff;text-decoration:none;background-color:rgba(255,255,255,.15)}.logo-text{font-size:1.8em;color:#fff;font-weight:400;line-height:1}.logo-image{height:43px}.mobile-menu-toggle{color:#fff;fill:#fff;font-size:2em;border:2px solid rgba(255,255,255,.8);border-radius:4px;padding:0 6px;line-height:1;cursor:pointer;user-select:none}.mobile-menu-toggle svg{margin:0;bottom:-2px}@media screen and (max-width: 1000px){header .header-links{background-color:#fff;display:none;z-index:10;inset-inline-end:16px;border-radius:4px;overflow:hidden;position:absolute;box-shadow:0 2px 2px 1px rgba(0,0,0,.13);margin-top:16px;padding:6px 0}html.dark-mode header .header-links{background-color:#333}header .header-links.show{display:block}header .links a,header .dropdown-container ul li a,header .dropdown-container ul li button{text-align:start;display:grid;align-items:center;padding:8px 16px;gap:16px;color:#444;grid-template-columns:16px auto;line-height:1.4;color:#444}html.dark-mode header .links a,html.dark-mode header .dropdown-container ul li a,html.dark-mode header .dropdown-container ul li button{color:#eee}header .links a svg,header .dropdown-container ul li a svg,header .dropdown-container ul li button svg{margin-inline-end:12px;width:16px}header .links a:hover,header .dropdown-container ul li a:hover,header .dropdown-container ul li button:hover{background-color:var(--color-primary-light);color:var(--color-primary);text-decoration:none}header .links a:focus,header .dropdown-container ul li a:focus,header .dropdown-container ul li button:focus{background-color:#eee;outline-color:var(--color-primary);color:var(--color-primary)}html.dark-mode header .links a:focus,html.dark-mode header .dropdown-container ul li a:focus,html.dark-mode header .dropdown-container ul li button:focus{background-color:#333}header .dropdown-container{display:block;padding-inline-start:0}header .links{display:block}header .dropdown-container ul{display:block !important;position:relative;background-color:rgba(0,0,0,0);border:0;padding:0;margin:0;box-shadow:none}}.tri-layout-mobile-tabs{position:sticky;top:0;z-index:5;background-color:#fff;border-bottom:1px solid #ddd;border-bottom-color:#ddd;box-shadow:0 1px 6px -1px rgba(0,0,0,.1)}html.dark-mode .tri-layout-mobile-tabs{border-bottom-color:#333}.tri-layout-mobile-tab{text-align:center;border-bottom:3px solid #bbb;cursor:pointer;margin:0;background-color:#fff;border-bottom-color:#bbb}html.dark-mode .tri-layout-mobile-tab{background-color:#222}html.dark-mode .tri-layout-mobile-tab{border-bottom-color:#333}.tri-layout-mobile-tab:first-child{border-inline-end:1px solid #ddd;border-inline-end-color:#ddd}html.dark-mode .tri-layout-mobile-tab:first-child{border-inline-end-color:#000}.tri-layout-mobile-tab[aria-selected=true]{border-bottom-color:currentColor !important}.breadcrumbs{display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:wrap;opacity:.7}.breadcrumbs .icon-list-item{width:auto;padding-top:6px;padding-bottom:6px}.breadcrumbs .separator{display:inline-block;fill:#aaa;font-size:1.6em;line-height:.8;margin:-2px 0 0}.breadcrumbs:hover,.breadcrumbs:focus-within{opacity:1}@media(prefers-contrast: more){.breadcrumbs{opacity:1}}@media screen and (max-width: 1000px){.breadcrumbs .icon-list-item{padding:6px}.breadcrumbs .icon-list-item>span+span{display:none}.breadcrumbs .icon-list-item>span:first-child{margin-inline-end:0}}.faded a,.faded button,.faded span,.faded span>div{color:#666;fill:#666}.faded .text-button{opacity:.5;transition:all ease-in-out 120ms}.faded .text-button:hover{opacity:1;text-decoration:none}.faded span.faded-text{display:inline-block;padding:12px}footer{flex-shrink:0;padding:1rem 1rem 2rem 1rem;text-align:center}footer a{margin:0 .5em}body.flexbox footer{display:none}.book-contents .entity-list-item .icon{width:4px;border-radius:1px;justify-self:stretch;align-self:stretch;height:auto;margin-inline-end:6px}.book-contents .entity-list-item .icon:after{opacity:.5}.book-contents .entity-list-item .icon svg{display:none}.book-contents .entity-list-item p{margin-bottom:0}.book-contents .entity-list-item .inner-page{padding-top:0;padding-bottom:0}.entity-list-item+.chapter-expansion{display:flex;padding:0 16px 16px 16px;align-items:center;border:0;width:100%;position:relative}.entity-list-item+.chapter-expansion>.icon{width:4px;height:auto;border-radius:0 0 1px 1px;align-self:stretch;flex-shrink:0}.entity-list-item+.chapter-expansion>.icon:before{position:absolute;top:0;left:0;width:100%;height:1px;background-color:currentColor;content:"";opacity:.5}.entity-list-item+.chapter-expansion>.icon:after{opacity:.5}.entity-list-item+.chapter-expansion .icon svg{display:none}.entity-list-item+.chapter-expansion>.content{flex:1}.entity-list-item+.chapter-expansion .chapter-contents-toggle{border-radius:0 4px 4px 0;padding:6px 19px;width:100%;text-align:start}.entity-list-item+.chapter-expansion .chapter-contents-toggle:hover{background-color:rgba(0,0,0,.06)}.entity-list-item.has-children{padding-bottom:0}.entity-list-item.has-children>.icon{border-radius:4px 4px 0 0}.inset-list{display:none}.inset-list .entity-list-item-name{font-size:1rem}.inset-list .entity-list-item-children{padding-top:0;padding-bottom:0}.sidebar-page-nav{list-style:none;margin-block-start:12px;margin-block-end:16px;margin-inline-start:6px;margin-inline-end:0;position:relative}.sidebar-page-nav:after{content:"";display:block;position:absolute;left:0;background-color:rgba(0,0,0,.2);width:2px;top:5px;bottom:5px;z-index:0}html[dir=rtl] .sidebar-page-nav:after{left:auto;right:0}html.dark-mode .sidebar-page-nav:after{background-color:rgba(255,255,255,.2)}.sidebar-page-nav li{margin-bottom:4px;font-size:.95em;position:relative}.sidebar-page-nav .h1{padding-inline-start:16px}.sidebar-page-nav .h2{padding-inline-start:24px}.sidebar-page-nav .h3{padding-inline-start:32px}.sidebar-page-nav .h4{padding-inline-start:40px}.sidebar-page-nav .h5{padding-inline-start:48px}.sidebar-page-nav .h6{padding-inline-start:56px}.sidebar-page-nav .current-heading{font-weight:bold}.sidebar-page-nav li:not(.current-heading) .sidebar-page-nav-bullet{background-color:#bbb !important}html.dark-mode .sidebar-page-nav li:not(.current-heading) .sidebar-page-nav-bullet{background-color:#666 !important}.sidebar-page-nav .sidebar-page-nav-bullet{width:6px;height:6px;position:absolute;left:-2px;top:30%;border-radius:50%;box-shadow:0 0 0 6px #f2f2f2;box-shadow:0 0 0 6px #f2f2f2;z-index:1}html.dark-mode .sidebar-page-nav .sidebar-page-nav-bullet{box-shadow:0 0 0 6px #111}html[dir=rtl] .sidebar-page-nav .sidebar-page-nav-bullet{left:auto;right:-2px}.book-tree .sidebar-page-list{list-style:none;margin-block-start:6px;margin-block-end:0;margin-inline-start:-12px;margin-inline-end:-12px;padding-inline-start:0;padding-inline-end:0}.book-tree .sidebar-page-list ul{list-style:none;padding-inline-start:1rem;padding-inline-end:0}.book-tree .sidebar-page-list .entity-list-item{padding-top:2px;padding-bottom:2px;background-clip:content-box;border-radius:0 3px 3px 0;padding-inline-end:0}.book-tree .sidebar-page-list .entity-list-item .content{width:100%;padding-top:6px;padding-bottom:6px;max-width:calc(100% - 20px)}.book-tree .sidebar-page-list .entity-list-item.selected{background-color:rgba(0,0,0,.06)}html.dark-mode .book-tree .sidebar-page-list .entity-list-item.selected{background-color:rgba(255,255,255,.06)}.book-tree .sidebar-page-list .entity-list-item.no-hover{margin-top:-6px;padding-inline-end:0}.book-tree .sidebar-page-list .entity-list-item-name{font-size:1em;margin:0;margin-inline-end:16px}.book-tree .sidebar-page-list .chapter-child-menu{font-size:.8rem;margin-top:-0.2rem;margin-inline-start:-1rem}.book-tree .sidebar-page-list .chapter-contents-toggle{display:block;width:100%;text-align:start;padding:3px 12px 6px 12px;border-radius:0 3px 3px 0;line-height:1;margin-top:-3px;margin-bottom:-3px}.book-tree .sidebar-page-list .chapter-contents-toggle:hover{background-color:rgba(0,0,0,.06)}html.dark-mode .book-tree .sidebar-page-list .chapter-contents-toggle:hover{background-color:rgba(255,255,255,.06)}.book-tree .sidebar-page-list .entity-list-item .icon{z-index:2;width:4px;height:auto;align-self:stretch;flex-shrink:0;border-radius:1px;opacity:.8}.book-tree .sidebar-page-list .entity-list-item .icon:after{opacity:1}.book-tree .sidebar-page-list .entity-list-item .icon svg{display:none}.chapter-child-menu ul.sub-menu{display:none;padding-inline-start:0;position:relative;margin-bottom:0}.sortable-page-list,.sortable-page-sublist{list-style:none}.sort-box{margin-bottom:16px;padding:16px 32px;position:relative}.sort-box::before{pointer-events:none;content:"";border-radius:4px;opacity:.5;border:2px solid var(--color-book);display:block;top:0;bottom:0;left:0;right:0;position:absolute}.sort-box-options{display:flex;flex-wrap:wrap;justify-content:space-between}.sort-box-options .button{margin-inline-start:0}.sortable-page-list{margin-inline-start:0;padding:0}.sortable-page-list .entity-list-item>span:first-child{align-self:flex-start}.sortable-page-list .sortable-selected,.sortable-page-list .sortable-selected:hover{outline:1px dotted var(--color-primary);background-color:var(--color-primary-light) !important}.sortable-page-list .entity-list-item>div{display:block;flex:1}.sortable-page-list>ul{margin-inline-start:0}.sortable-page-list .sortable-page-sublist{margin-bottom:16px;margin-top:0;padding-inline-start:16px}.sortable-page-list li{background-color:#fff;border:1px solid;border-color:#ddd;margin-top:-1px;min-height:38px}html.dark-mode .sortable-page-list li{background-color:#222}html.dark-mode .sortable-page-list li{border-color:#666}.sortable-page-list li.text-page,.sortable-page-list li.text-chapter{border-inline-start:2px solid currentColor}.sortable-page-list li:first-child{margin-top:6px}.sortable-page-list li.placeholder{position:relative}.sortable-page-list li.placeholder:before{position:absolute}.sort-box summary{list-style:none;font-size:.9rem;cursor:pointer}.sort-box summary::-webkit-details-marker{display:none}details.sort-box summary .caret-container svg{transition:transform ease-in-out 120ms}details.sort-box[open] summary .caret-container svg{transform:rotate(90deg)}.sort-box-actions .icon-button{opacity:.6}.sort-box .flex-container-row:hover .sort-box-actions .icon-button,.sort-box .flex-container-row:focus-within .sort-box-actions .icon-button{opacity:1}.sort-box-actions .icon-button[disabled]{visibility:hidden}.sort-box-actions .dropdown-menu button[disabled]{display:none}.sort-list-handle{cursor:grab}.activity-list-item{padding:12px 0;display:grid;grid-template-columns:min-content 1fr;grid-column-gap:16px;font-size:.9em}.card .activity-list-item{padding-block:12px}.user-list-item{display:inline-grid;padding:12px;grid-template-columns:min-content 1fr;grid-column-gap:16px;font-size:.9em;align-items:center}.user-list-item>div:first-child{line-height:0}ul.pagination{display:inline-flex;list-style:none;margin:16px 0;padding-inline-start:1px}ul.pagination li:first-child a,ul.pagination li:first-child span{border-radius:3px 0 0 3px}ul.pagination li:last-child a,ul.pagination li:last-child span{border-radius:0 3px 3px 0}ul.pagination a,ul.pagination span{display:block;padding:3px 12px;border:1px solid #ccc;margin-inline-start:-1px;user-select:none;color:#555;border-color:#ccc}html.dark-mode ul.pagination a,html.dark-mode ul.pagination span{color:#eee}html.dark-mode ul.pagination a,html.dark-mode ul.pagination span{border-color:#666}ul.pagination li.disabled{cursor:not-allowed}ul.pagination li.active span{color:#111;background-color:rgba(0,0,0,.05)}html.dark-mode ul.pagination li.active span{color:#eee}html.dark-mode ul.pagination li.active span{background-color:rgba(0,0,0,.5)}.compact ul.pagination{margin:0}.entity-list,.icon-list{margin:0 -16px}.entity-list h4,.icon-list h4{margin:0}.entity-list hr,.icon-list hr{margin:0}.entity-list .text-small.text-muted,.icon-list .text-small.text-muted{color:#aaa;font-size:.75em;margin-top:6px}.entity-list .text-muted p.text-muted,.icon-list .text-muted p.text-muted{margin-top:0}.entity-list .page.draft .text-page,.icon-list .page.draft .text-page{color:var(--color-page-draft);fill:var(--color-page-draft)}.entity-list>.dropdown-container,.icon-list>.dropdown-container{display:block}.icon-list hr{margin:12px 16px;max-width:140px;opacity:.25;height:1.1px}.icon-list hr+hr,.icon-list hr:first-child,.icon-list hr:last-child{display:none}.entity-list-item,.icon-list-item{padding:12px 16px;display:flex;align-items:center;gap:16px;background-color:rgba(0,0,0,0);border:0;width:100%;position:relative;word-break:break-word}.entity-list-item h4 a,.icon-list-item h4 a{color:#666}.entity-list-item>span:first-child,.icon-list-item>span:first-child{flex-basis:1.88em;flex:none}.entity-list-item>span:last-child,.icon-list-item>span:last-child{flex:1;text-align:start}.entity-list-item>.content,.icon-list-item>.content{min-width:0}.entity-list-item:not(.no-hover),.icon-list-item:not(.no-hover){cursor:pointer}.entity-list-item:not(.no-hover):hover,.icon-list-item:not(.no-hover):hover{background-color:rgba(0,0,0,.06);text-decoration:none;border-radius:4px}html.dark-mode .entity-list-item:not(.no-hover):hover,html.dark-mode .icon-list-item:not(.no-hover):hover{background-color:rgba(255,255,255,.06)}.entity-list-item.outline-hover:hover,.icon-list-item.outline-hover:hover{background-color:rgba(0,0,0,0)}.entity-list-item:focus,.icon-list-item:focus{background-color:#eee;outline:1px dotted #666;outline-offset:-2px}html.dark-mode .entity-list-item:focus,html.dark-mode .icon-list-item:focus{background-color:#222}.entity-list-item.disabled{pointer-events:none;cursor:not-allowed;opacity:.8;user-select:none;background:var(--bg-disabled)}.entity-list-item-path-sep{display:inline-block;vertical-align:top;position:relative;top:1px}.entity-list-item-path-sep svg{margin-inline-end:0}.split-icon-list-item{display:flex;align-items:center;gap:16px;background-color:rgba(0,0,0,0);border:0;width:100%;position:relative;word-break:break-word;border-radius:4px}.split-icon-list-item>a{padding:12px 16px;display:flex;align-items:center;gap:16px;flex:1}.split-icon-list-item>a:hover{text-decoration:none}.split-icon-list-item .icon{flex-basis:1.88em;flex:none}.split-icon-list-item:hover{background-color:rgba(0,0,0,.06)}html.dark-mode .split-icon-list-item:hover{background-color:rgba(255,255,255,.06)}.icon-list-item-dropdown{margin-inline-start:auto;align-self:stretch;display:flex;align-items:stretch;border-inline-start:1px solid rgba(0,0,0,.1);visibility:hidden}.split-icon-list-item:hover .icon-list-item-dropdown,.split-icon-list-item:focus-within .icon-list-item-dropdown{visibility:visible}.icon-list-item-dropdown-toggle{padding:6px;display:flex;align-items:center;cursor:pointer;color:#888}html.dark-mode .icon-list-item-dropdown-toggle{color:#999}.icon-list-item-dropdown-toggle svg{margin:0}.icon-list-item-dropdown-toggle:hover{background-color:rgba(0,0,0,.06)}html.dark-mode .icon-list-item-dropdown-toggle:hover{background-color:rgba(255,255,255,.06)}.card .entity-list-item:not(.no-hover,.book-contents .entity-list-item):hover{background-color:#f2f2f2;border-radius:0}html.dark-mode .card .entity-list-item:not(.no-hover,.book-contents .entity-list-item):hover{background-color:#2d2d2d}.card .entity-list-item .entity-list-item:hover{background-color:#eee}.entity-list-item-children{padding:16px 24px}.entity-list-item-children>div{overflow:hidden;padding:0 0 6px 0}.entity-list-item-children .entity-chip{text-overflow:ellipsis;height:2.5em;overflow:hidden;text-align:start;display:block;white-space:nowrap}.entity-list-item-children>.entity-list>.entity-list-item:last-child{margin-bottom:-6px}.entity-list-item-image{align-self:stretch;width:140px;flex:none;background-size:cover;background-position:50% 50%;border-radius:3px;position:relative;margin-inline-end:24px}.entity-list-item-image.entity-list-item-image-wide{width:220px}.entity-list-item-image .svg-icon{color:#fff;font-size:1.66rem;margin-inline-end:0;position:absolute;bottom:6px;left:6px}html.dark-mode .entity-list-item-image .svg-icon{color:rgba(255,255,255,.6)}@media screen and (max-width: 880px){.entity-list-item-image{width:80px}}.chapter>.entity-list-item-image{width:60px}.entity-list.compact{font-size:8.4px}.entity-list.compact h4,.entity-list.compact a{line-height:1.2}.entity-list.compact .entity-item-snippet{display:none}.entity-list.compact .entity-list-item p{font-size:11.2px;padding-top:6px}.entity-list.compact .entity-list-item p:empty{padding-top:0}.entity-list.compact p{margin:0}.entity-list.compact>p.empty-text{display:block;font-size:14px}.entity-list.compact hr{margin:0}@media screen and (max-width: 880px){.entity-list.compact h4{font-size:1.666em}}.entity-item-tags{font-size:.75rem;opacity:1}.entity-item-tags .primary-background-light{background:rgba(0,0,0,0)}.entity-item-tags .tag-name{background-color:rgba(0,0,0,.05)}.dropdown-container{display:inline-block;vertical-align:top;position:relative}.dropdown-menu{display:none;position:absolute;z-index:999;top:0;list-style:none;inset-inline-end:0;margin:16px 0;background-color:#fff;box-shadow:0 1px 6px 0 rgba(0,0,0,.18);border-radius:3px;min-width:180px;padding:6px 0;color:#555;fill:currentColor;text-align:start !important;max-height:500px;overflow-y:auto}html.dark-mode .dropdown-menu{background-color:#333}html.dark-mode .dropdown-menu{color:#eee}.dropdown-menu.anchor-left{inset-inline-end:auto;inset-inline-start:0}.dropdown-menu.wide{min-width:220px}.dropdown-menu.xl-limited{width:280px;max-width:100%}.dropdown-menu .text-muted{color:#999;fill:#999}.dropdown-menu li.active a{font-weight:600}.dropdown-menu button{width:100%;text-align:start}.dropdown-menu li.border-bottom{border-bottom:1px solid #ddd}.dropdown-menu li hr{margin:6px 0}.dropdown-menu .icon-item,.dropdown-menu .text-item,.dropdown-menu .label-item{padding:8px 16px;color:#555;fill:currentColor;white-space:nowrap;line-height:1.4;cursor:pointer}html.dark-mode .dropdown-menu .icon-item,html.dark-mode .dropdown-menu .text-item,html.dark-mode .dropdown-menu .label-item{color:#eee}.dropdown-menu .icon-item.break-text,.dropdown-menu .text-item.break-text,.dropdown-menu .label-item.break-text{white-space:normal;word-wrap:break-word;overflow-wrap:break-word}.dropdown-menu .icon-item:hover,.dropdown-menu .icon-item:focus,.dropdown-menu .text-item:hover,.dropdown-menu .text-item:focus,.dropdown-menu .label-item:hover,.dropdown-menu .label-item:focus{text-decoration:none;background-color:var(--color-primary-light);color:var(--color-primary)}.dropdown-menu .icon-item:focus,.dropdown-menu .text-item:focus,.dropdown-menu .label-item:focus{outline:1px solid var(--color-primary);outline-offset:-2px}.dropdown-menu .icon-item svg,.dropdown-menu .text-item svg,.dropdown-menu .label-item svg{margin-inline-end:12px;display:inline-block;width:16px}.dropdown-menu .text-item{display:block}.dropdown-menu .label-item{display:grid;align-items:center;grid-template-columns:auto min-content;gap:16px}.dropdown-menu .label-item>*:nth-child(2){opacity:.7}.dropdown-menu .label-item>*:nth-child(2):hover{opacity:1}.dropdown-menu .icon-item{display:grid;align-items:start;grid-template-columns:16px auto;gap:16px}.dropdown-menu .icon-item svg{margin-inline-end:0;margin-block-start:1px}.tri-layout-right .dropdown-menu,.tri-layout-left .dropdown-menu{inset-inline-end:6px}.featured-image-container{position:relative;overflow:hidden;min-height:140px;background-size:cover;background-position:50% 50%;transition:opacity ease-in-out 240ms}.featured-image-container a{display:block}.featured-image-container img{display:block;width:100%;max-width:100%;height:auto}.featured-image-container-wrap{position:relative}.featured-image-container-wrap .svg-icon{color:#fff;font-size:2rem;margin-inline-end:0;position:absolute;bottom:10px;left:6px}html.dark-mode .featured-image-container-wrap .svg-icon{color:rgba(255,255,255,.6)}.grid-card:hover .featured-image-container{opacity:.5}.action-link{background:rgba(0,0,0,0);border:none;color:currentColor;padding:16px 0}.active-link-list a{display:inline-block;padding:12px}.active-link-list a:not(.active){color:#444}html.dark-mode .active-link-list a:not(.active){color:#888}.active-link-list a:hover{background-color:rgba(0,0,0,.05);border-radius:4px;text-decoration:none}html.dark-mode .active-link-list a:hover{background-color:rgba(255,255,255,.05)}.active-link-list.in-sidebar a{display:block;margin-bottom:6px}.active-link-list.in-sidebar a.active{border-radius:4px;background-color:rgba(0,0,0,.05)}html.dark-mode .active-link-list.in-sidebar a.active{background-color:rgba(255,255,255,.05)}.entity-meta-item{display:flex;line-height:1.2;margin:.6em 0;align-content:start;gap:12px}.entity-meta-item a{line-height:1.2}.entity-meta-item svg{flex-shrink:0;width:1em;margin:0}.page-editor{display:flex;flex-direction:column;align-items:stretch;overflow:hidden}.page-editor .edit-area{flex:1;flex-direction:column;z-index:10;overflow:hidden;border-radius:0 0 8px 8px}.page-editor .mce-tinymce{box-shadow:none}.page-editor .mce-top-part::before{box-shadow:none}.page-editor-page-area{width:100%;border-radius:8px;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);background-color:#fff}html.dark-mode .page-editor-page-area{background-color:#333}.page-edit-toolbar{width:100%;margin:0 auto;display:grid;grid-template-columns:minmax(max-content, 2fr) 1.5fr minmax(max-content, 2fr);align-items:center}@media screen and (min-width: 1400px){.page-editor-wysiwyg .page-edit-toolbar,.page-editor-wysiwyg .page-editor-page-area{max-width:1140px}.page-editor-wysiwyg .floating-toolbox{position:absolute}}@media screen and (max-width: 880px){.page-edit-toolbar{display:flex;flex-direction:row;justify-content:space-between}}.title-input.page-title{font-size:.8em}.title-input.page-title .input{border:0;margin-bottom:-1px}.title-input.page-title input[type=text]{max-width:840px;margin:0 auto;border:none;height:auto;display:block;width:100%;font-size:20px;border-radius:8px}.title-input.page-title input[type=text]:focus{position:relative;outline-offset:-1px;outline:1px dashed var(--color-primary);box-shadow:0 1px 6px -1px rgba(0,0,0,.1);z-index:50}.page-editor-markdown .title-input.page-title input[type=text]{max-width:100%}body.tox-fullscreen .page-editor .edit-area,body.markdown-fullscreen .page-editor .edit-area{z-index:12}body.tox-fullscreen .page-editor,body.tox-fullscreen .flex-fill,body.markdown-fullscreen .page-editor,body.markdown-fullscreen .flex-fill{overflow:visible}@media screen and (max-width: 600px){.page-edit-toolbar{overflow-x:scroll;overflow-y:visible}.page-edit-toolbar{white-space:nowrap}.page-edit-toolbar>div{display:inline-block}}.page-save-mobile-button{position:fixed;z-index:30;border-radius:50%;width:52px;height:52px;font-size:26px;inset-inline-end:6px;bottom:12px;box-shadow:0 2px 2px 1px rgba(0,0,0,.13);background-color:currentColor;text-align:center}.page-save-mobile-button svg{fill:#fff;margin-inline-end:0}.draft-notification{pointer-events:none;transform:scale(0);transition:transform ease-in-out 120ms;transform-origin:50% 50%}.draft-notification.visible{transform:scale(1)}.page-style.editor{padding:0 !important}.pointer-container{position:fixed;display:none;left:0;z-index:10}.pointer{border:1px solid #ccc;border-color:#ccc;border-radius:4px;box-shadow:0 0 12px 1px rgba(0,0,0,.1);background-color:#fff;width:275px}html.dark-mode .pointer{border-color:#000}html.dark-mode .pointer{background-color:#333}.pointer.is-page-editable{width:328px}.pointer:before{position:absolute;left:50%;bottom:-9px;width:16px;height:16px;margin-inline-start:-8px;content:"";display:block;transform:rotate(45deg);transform-origin:50% 50%;border-right:1px solid #ccc;border-bottom:1px solid #ccc;z-index:56;background-color:#fff;border-color:#ccc}html.dark-mode .pointer:before{background-color:#333}html.dark-mode .pointer:before{border-color:#000}.pointer input,.pointer button,.pointer a{position:relative;border-radius:0;height:28px;font-size:12px;vertical-align:top;padding:5px 16px}.pointer input{background-color:#fff;border:1px solid #ddd;border-color:#ddd;color:#666;width:160px;z-index:40;padding:5px 10px}html.dark-mode .pointer input{border-color:#000}.pointer .text-button{color:#444}html.dark-mode .pointer .text-button{color:#aaa}.pointer .input-group .button{line-height:1;margin:0 0 0 -4px;box-shadow:none}.pointer a.button{margin:0}.pointer .svg-icon{width:1.2em;height:1.2em}.pointer .button{border-color:#ddd}html.dark-mode .pointer .button{border-color:#000}.floating-toolbox{background-color:#fff;overflow:hidden;align-items:stretch;flex-direction:row;display:flex;max-height:100%;border-radius:8px;box-shadow:0 1px 6px -1px rgba(0,0,0,.1);margin-bottom:auto;margin-inline-start:24px;position:relative}html.dark-mode .floating-toolbox{background-color:#222}.floating-toolbox.open{position:relative;right:0;max-width:480px;margin-bottom:0}.floating-toolbox:not(.open) .toolbox-tab-content{display:none !important}.floating-toolbox .toolbox-toggle svg{transition:transform ease-in-out 180ms}.floating-toolbox .toolbox-toggle{transition:background-color ease-in-out 180ms}.floating-toolbox.open .toolbox-toggle{background-color:rgba(255,0,0,.2)}.floating-toolbox.open .toolbox-toggle svg{transform:rotate(180deg)}.floating-toolbox>div{flex:1;position:relative}.floating-toolbox .tabs{border-inline-end:1px solid #ddd;border-inline-end-color:#ddd;width:40px;flex:0 1 auto;margin-inline-end:-1px}html.dark-mode .floating-toolbox .tabs{border-inline-end-color:#000}.floating-toolbox .tabs-inner{background-color:#fff}html.dark-mode .floating-toolbox .tabs-inner{background-color:#222}.floating-toolbox .tabs svg{padding:0;margin:0}.floating-toolbox .tabs-inner>button{color:rgba(0,0,0,.7);display:block;cursor:pointer;padding:10px 6px;font-size:18px;line-height:1.6}html.dark-mode .floating-toolbox .tabs-inner>button{color:rgba(255,255,255,.5)}.floating-toolbox .tabs-inner>button:hover,.floating-toolbox.open .tabs-inner>button.active{color:var(--color-link) !important;position:relative}.floating-toolbox .tabs-inner>button:hover:after,.floating-toolbox.open .tabs-inner>button.active:after{content:"";display:block;position:absolute;left:0;width:100%;top:0;height:100%;background-color:currentColor;opacity:.075}.floating-toolbox.open .tabs-inner>button.active{border-inline-end:1px solid var(--color-link);margin-inline-end:-1px}.floating-toolbox h4{font-size:24px;margin:16px 0 0 0;padding:0 24px 12px 24px}.floating-toolbox .tags input{max-width:100%;width:100%;min-width:50px}.floating-toolbox .tags td,.floating-toolbox .inline-start-table>div>div>div{padding-inline-end:12px;padding-top:12px;position:relative}.floating-toolbox .handle{user-select:none;cursor:move;fill:#999}.floating-toolbox form{display:flex;flex:1;flex-direction:column;overflow-y:scroll}.floating-toolbox table td,.floating-toolbox table th{overflow:visible}@media screen and (max-width: 1400px){.floating-toolbox{margin-inline-start:12px}}@media screen and (max-width: 600px){.page-editor-page-area-wrap{margin:4px !important}.floating-toolbox{margin-inline-start:4px}.floating-toolbox .tabs{width:32px}.floating-toolbox .tabs-inner>button{font-size:12px}.page-edit-toolbar{padding-block:0 !important}.page-editor.toolbox-open .page-editor-page-area{display:none}}.toolbox-tab-content{display:none;overflow-y:auto;padding-bottom:45px}.suggestion-box{top:auto;margin:-4px 0 0;right:auto;left:0;padding:0}.suggestion-box li{display:block;border-bottom:1px solid #ddd}.suggestion-box li:last-child{border-bottom:0}.comments-container h5{color:#888;font-weight:normal;margin-top:.5em}.comment-editor .CodeMirror,.comment-editor .CodeMirror-scroll{min-height:175px}.mce-floatpanel[aria-label="Insert/edit media"] .mce-open{display:none}.entity-list-item>span:first-child,.icon-list-item>span:first-child,.split-icon-list-item>a>.icon,.chapter-expansion>.icon{font-size:.8rem;width:1.88em;height:1.88em;flex-shrink:0;display:flex;align-items:center;justify-content:center;text-align:center;border-radius:1em;position:relative;overflow:hidden}.entity-list-item>span:first-child svg,.icon-list-item>span:first-child svg,.split-icon-list-item>a>.icon svg,.chapter-expansion>.icon svg{margin:0;bottom:0}.entity-list-item>span:first-child:after,.icon-list-item>span:first-child:after,.split-icon-list-item>a>.icon:after,.chapter-expansion>.icon:after{content:"";position:absolute;background-color:currentColor;opacity:.2;left:0;top:0;width:100%;height:100%}.entity-chip{display:inline-block;align-items:center;justify-content:center;text-align:center;font-size:.9em;border-radius:3px;position:relative;overflow:hidden;padding:6px 12px;fill:currentColor;opacity:.85;transition:opacity ease-in-out 120ms}.entity-chip:after{content:"";position:absolute;background-color:currentColor;opacity:.15;left:0;top:0;width:100%;height:100%}.entity-chip:hover{text-decoration:none;opacity:1}@media(prefers-contrast: more){.entity-chip{opacity:1}}.page-content{width:100%;max-width:840px;margin:0 auto;overflow-wrap:break-word}.page-content .align-left{text-align:left}.page-content img.align-left,.page-content table.align-left,.page-content iframe.align-left,.page-content video.align-left{float:left !important;margin:6px 16px 16px 0}.page-content .align-right{text-align:right !important}.page-content img.align-right,.page-content table.align-right,.page-content iframe.align-right,.page-content video.align-right{float:right !important;margin:6px 0 6px 12px}.page-content .align-center{text-align:center}.page-content img.align-center,.page-content video.align-center,.page-content iframe.align-center{display:block}.page-content img.align-center,.page-content table.align-center,.page-content iframe.align-center,.page-content video.align-center{margin-left:auto;margin-right:auto}.page-content img{max-width:100%;height:auto}.page-content h1,.page-content h2,.page-content h3,.page-content h4,.page-content h5,.page-content h6,.page-content pre{clear:left}.page-content hr{clear:both;margin:16px 0}.page-content table{hyphens:auto;table-layout:fixed;max-width:100%;height:auto !important}.page-content ins,.page-content del{text-decoration:none}.page-content ins{background:#dbffdb}.page-content del{background:#ffecec}.page-content details{border:1px solid;border-color:#ddd;margin-bottom:1em;padding:12px}html.dark-mode .page-content details{border-color:#555}.page-content details>summary{margin-top:-12px;margin-left:-12px;margin-right:-12px;margin-bottom:-12px;font-weight:bold;background-color:#eee;padding:6px 12px}html.dark-mode .page-content details>summary{background-color:#333}.page-content details[open]>summary{margin-bottom:12px;border-bottom:1px solid;border-color:#ddd}html.dark-mode .page-content details[open]>summary{border-color:#555}.page-content details>summary+*{margin-top:.2em}.page-content details:after{content:"";display:block;clear:both}.page-content li>input[type=checkbox]{vertical-align:top;margin-top:.3em}.page-content p:empty{min-height:1.6em}.page-content.page-revision pre code{white-space:pre-wrap}.page-content .cm-editor{margin-bottom:1.375em}.page-content video{max-width:100%}.callout{border-left:3px solid #bbb;background-color:#eee;padding:12px 12px 12px 32px;display:block;position:relative;overflow:auto}.callout:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiMwMTUzODAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEyIDJDNi40OCAyIDIgNi40OCAyIDEyczQuNDggMTAgMTAgMTAgMTAtNC40OCAxMC0xMFMxNy41MiAyIDEyIDJ6bTEgMTVoLTJ2LTZoMnY2em0wLThoLTJWN2gydjJ6Ii8+PC9zdmc+");background-repeat:no-repeat;content:"";width:1.2em;height:1.2em;left:8px;top:50%;margin-top:-9px;display:inline-block;position:absolute;line-height:1;opacity:.8}.callout.success{border-left-color:#0f7d15;background-color:#eafdeb;color:#063409}html.dark-mode .callout.success{border-left-color:#4aa850}html.dark-mode .callout.success{background-color:#122913}html.dark-mode .callout.success{color:#4aa850}.callout.success:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiMzNzZjMzkiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEyIDJDNi40OCAyIDIgNi40OCAyIDEyczQuNDggMTAgMTAgMTAgMTAtNC40OCAxMC0xMFMxNy41MiAyIDEyIDJ6bS0yIDE1bC01LTUgMS40MS0xLjQxTDEwIDE0LjE3bDcuNTktNy41OUwxOSA4bC05IDl6Ii8+PC9zdmc+")}.callout.danger{border-left-color:#ab0f0e;background-color:#fcdbdb;color:#4d0706}html.dark-mode .callout.danger{border-left-color:#e85c5b}html.dark-mode .callout.danger{background-color:#250505}html.dark-mode .callout.danger{color:#e85c5b}.callout.danger:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiNiOTE4MTgiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0xNS43MyAzSDguMjdMMyA4LjI3djcuNDZMOC4yNyAyMWg3LjQ2TDIxIDE1LjczVjguMjdMMTUuNzMgM3pNMTIgMTcuM2MtLjcyIDAtMS4zLS41OC0xLjMtMS4zIDAtLjcyLjU4LTEuMyAxLjMtMS4zLjcyIDAgMS4zLjU4IDEuMyAxLjMgMCAuNzItLjU4IDEuMy0xLjMgMS4zem0xLTQuM2gtMlY3aDJ2NnoiLz4gICAgPHBhdGggZD0iTTAgMGgyNHYyNEgweiIgZmlsbD0ibm9uZSIvPjwvc3ZnPg==")}.callout.info{border-left-color:#0288d1;color:#01466c;background-color:#d3efff}html.dark-mode .callout.info{border-left-color:#0288d1}html.dark-mode .callout.info{color:#0288d1}html.dark-mode .callout.info{background-color:#001825}.callout.warning{border-left-color:#cf4d03;background-color:#fee3d3;color:#6a2802}html.dark-mode .callout.warning{border-left-color:#de8a5a}html.dark-mode .callout.warning{background-color:#30170a}html.dark-mode .callout.warning{color:#de8a5a}.callout.warning:before{background-image:url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjQgMjQiIGZpbGw9IiNiNjUzMWMiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+ICAgIDxwYXRoIGQ9Ik0wIDBoMjR2MjRIMHoiIGZpbGw9Im5vbmUiLz4gICAgPHBhdGggZD0iTTEgMjFoMjJMMTIgMiAxIDIxem0xMi0zaC0ydi0yaDJ2MnptMC00aC0ydi00aDJ2NHoiLz48L3N2Zz4=")}.callout a{color:inherit;text-decoration:underline}@media print{html,body{font-size:12px;background-color:#fff}.page-content{margin:0 auto}.print-hidden{display:none !important}.tri-layout-container{grid-template-columns:1fr;grid-template-areas:"b";margin-inline-start:0;margin-inline-end:0;display:block}.card{box-shadow:none}.content-wrap.card{padding-inline-start:0;padding-inline-end:0}}.dragged{position:absolute;opacity:.5;z-index:2000}body.dragging,body.dragging *{cursor:move !important}.avatar{border-radius:100%;background-color:#eee;width:30px;height:30px}html.dark-mode .avatar{background-color:#000}.avatar.med{width:40px;height:40px}.avatar.large{width:80px;height:80px}.avatar.huge{width:120px;height:120px}.avatar.square{border-radius:3px}html.dark-mode .avatar[src$="user_avatar.png"]{filter:invert(1)}.loading-container{position:relative;display:block;margin:32px auto}.loading-container>div{width:10px;height:10px;border-radius:10px;display:inline-block;vertical-align:top;transform:translate3d(-10px, 0, 0);margin-top:6px;animation-name:loadingBob;animation-duration:1.4s;animation-iteration-count:infinite;animation-timing-function:cubic-bezier(0.62, 0.28, 0.23, 0.99);margin-inline-end:4px;background-color:var(--color-page);animation-delay:-300ms}.loading-container>div:first-child{left:-16px;background-color:var(--color-book);animation-delay:-600ms}.loading-container>div:last-of-type{left:16px;background-color:var(--color-chapter);animation-delay:0ms}.loading-container>span{margin-inline-start:12px;font-style:italic;color:#888;vertical-align:top}.skip-to-content-link{position:fixed;top:-52px;left:0;background-color:#fff;z-index:15;border-radius:0 4px 4px 0;display:block;box-shadow:0 0 4px 1px rgba(0,0,0,.5);font-weight:bold}.skip-to-content-link:focus{top:32px;outline-offset:-10px;outline:2px dotted var(--color-link)}.entity-selector{border:1px solid #ddd;border-color:#ddd;border-radius:3px;overflow:hidden;font-size:.8em}html.dark-mode .entity-selector{border-color:#111}.entity-selector input[type=text]{width:100%;display:block;border-radius:0;border:0;border-bottom:1px solid #ddd;font-size:16px;padding:12px 16px}.entity-selector .entity-list{overflow-y:scroll;height:400px;background-color:#eee;margin-inline-end:0;margin-inline-start:0}html.dark-mode .entity-selector .entity-list{background-color:#222}.entity-selector .entity-list-item{background-color:#fff}html.dark-mode .entity-selector .entity-list-item{background-color:#222}.entity-selector .entity-list-item p{margin-bottom:0}.entity-selector .entity-list-item:focus{outline:2px dotted var(--color-primary);outline-offset:-4px}.entity-selector .entity-list-item.selected{background-color:rgba(0,0,0,.05)}html.dark-mode .entity-selector .entity-list-item.selected{background-color:rgba(255,255,255,.05)}.entity-selector .loading{height:400px;padding-top:24px}.entity-selector.compact{font-size:10px}.entity-selector.compact .entity-item-snippet{display:none}.entity-selector.compact h4{font-size:14px}.fullscreen{border:0;position:fixed;top:0;left:0;right:0;bottom:0;width:100%;height:100%;z-index:150}@media screen and (min-width: 600px)and (max-width: 880px){#home-default>.grid.third{display:block;columns:2;column-gap:24px !important}}.list-sort-container{display:inline-block}.list-sort-container form{display:inline-block}.list-sort-container .list-sort{display:inline-grid;margin-inline-start:12px;grid-template-columns:minmax(120px, max-content) 40px;font-size:.9rem;border:2px solid #ddd;border-color:#ddd;border-radius:4px}html.dark-mode .list-sort-container .list-sort{border-color:#444}.list-sort-container .list-sort-label{font-weight:bold;display:inline-block;color:#555}html.dark-mode .list-sort-container .list-sort-label{color:#888}.list-sort-container .list-sort-type{text-align:start}.list-sort-container .list-sort-type,.list-sort-container .list-sort-dir{padding:6px 12px;cursor:pointer}.list-sort-container .list-sort-dir{border-inline-start:2px solid #ddd;color:#888;border-color:#ddd}html.dark-mode .list-sort-container .list-sort-dir{border-color:#444}.list-sort-container .list-sort-dir .svg-icon{transition:transform ease-in-out 120ms}.list-sort-container .list-sort-dir:hover .svg-icon{transform:rotate(180deg)}/*# sourceMappingURL=styles.css.map */ diff --git a/version b/version index bdac4bc824c..4860fe4d0fd 100644 --- a/version +++ b/version @@ -1 +1 @@ -v24.02.2 +v24.02.3