From fe0c9eb704130b7d1648330c0cef8a769783431c Mon Sep 17 00:00:00 2001 From: Martin Huschenbett Date: Sat, 2 Nov 2024 08:15:01 +0100 Subject: [PATCH] Updates --- assets/felix_wasm_bridge_bg-CHdd_nk6.wasm | Bin 0 -> 112659 bytes assets/felix_wasm_bridge_bg-CV0-NIcC.wasm | Bin 116325 -> 0 bytes assets/index-Cqv0LPin.js | 1299 ++++++++++++++++++++ assets/index-Dspg__Nu.js | 1345 --------------------- index.html | 2 +- 5 files changed, 1300 insertions(+), 1346 deletions(-) create mode 100644 assets/felix_wasm_bridge_bg-CHdd_nk6.wasm delete mode 100644 assets/felix_wasm_bridge_bg-CV0-NIcC.wasm create mode 100644 assets/index-Cqv0LPin.js delete mode 100644 assets/index-Dspg__Nu.js diff --git a/assets/felix_wasm_bridge_bg-CHdd_nk6.wasm b/assets/felix_wasm_bridge_bg-CHdd_nk6.wasm new file mode 100644 index 0000000000000000000000000000000000000000..d05c2c7dfa75c2eb949c18982c1a8e74bfe7912d GIT binary patch literal 112659 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≪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 Ae*gdg literal 0 HcmV?d00001 diff --git a/assets/felix_wasm_bridge_bg-CV0-NIcC.wasm b/assets/felix_wasm_bridge_bg-CV0-NIcC.wasm deleted file mode 100644 index 74158dd77a10da810608178c352fdaacff4a698c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 116325 zcmdqK51eJyRp)#D-9J_LR`u!b>i-R#dugHi*+?}s)eXVeyA4e`fbcZ>^5*#ly6J96 zRSQ(p=@2D!0S)3j#xRi?F=A{T6g0sw2~W{PQy4~3iNidZ2~JR3Mdf`ym_bDcmDun5 zTl<`I&%IS$kkDj4K02v$_y4`uUTf{O)?Rz>VE4`67Y0EP{!+O1n&`-p@W?gs5&IAb z?00ZY$gfaIHIfva_)kDo-J+D3|FW#N@EmJqI zz5418?s@+Wgm1X|#ywN}u03@1-h(&ZboIe~`-9}<#n#O)cI|;1Z`fz$Y9}u@Rw=jd z;K3UYUVX#94+g=TEAalC^DYL9w6Lnu0tG&B!`^-S-+#lty^EC@sg}86vF@y_0ge`-A4m2fkh{U3c}(hjw2( zef8u8+s@m1;r@MFwp_4f^R@dYgXj$ldg$)ocERS!$*sHhZ{57-+WprqT5wHeY*RNM z-hJTe12^7y^S-P1%`66y6_rvqeBk@`>^o=xS)_y25;q?@`2HKNd!rJkd02dx&%Ect zEt}8VzisP<7w+G^d(Zj%76V4Lt-N^|?>{kymB-@j$|Vu)2Kw)MRIdoJ9)dE1@~cJDiH^1Ll?qL@0lcgy7Y z+xBlg@4Si0ZTly-oWEEn&+)){{|zAW4cG3wasSos;KAJ=+VO$?`@xiL=TB}s?}9!1 zCbsU~a_xnC&s&U+awOQ}OKv`I@5I&%uf6uX&HFZQ*|T@gVkIjho;-igh3Dz>`$Zk;%PVsiK93wLi_Y{Yp#5A3_)x%;m)1 z$!)tAYjD#%Sbg{VZ#cBg0Cx3xd(PjpXWzAZC(b{A@8%0(0dJBA?%lWN17ahhv&ASS zRpa?W02bf)!NoE!tz`bbecyNE!4Cz^_zU5aVI0?zq#i^uzZ&6Cki?0toyH;Nh1iNFieuD76(Z^vH#*Ej+0u@h#K*5qZLF^5Y(euNNgNO zaeaBDB4H5M+DQIH}4D1?gPT^0|#!rHu&LiSp_l& z_xad=8!oBD?mxJ1U+}4L=rgqE!qzpv9zGuac=%x0`M<*-3V$yAzryc$I{c0B5AB}? ze=~f6_}#OaFo#Y)6k ziuko~>fA7Rhl*tJxq$s0VZzU3G78$Gtt>n@yp;}(Upmre3}F_IN7qkAd$UH`b!T^y zqW{WwfNqXYk49k>w01DgNAKRDam?25yy}vXD2qBtJ8ZeLItjIA$veVZt$yn3G*#{1 zPEDU?H_<21=)-g$dB>w9OI-WFRJWcrC!=Oo&uWvz)w4+5rY;vw5#J74LCZbyvAMvF zyZaxU3(}8-L3IR;Q$K)$CI0do>eMq^oQ(3=akMr{D`eVsZ9hCwb#PxqMO@#NAG zAm*M0-G<5X&Z$Rz!T4xrl<@PxRJYlSS`uxKw?}}soY&wjLWP;`+H5BMlN;rrvCrPl z&>Kx|Eo*6VYuS({x30$< z5TRL3ucDZCGFxT)`B#MMQnwSpBBE!6>NbijlA#wSZAxXVh{lh*0<65zoueP|=(A}|o2<|ybrT2*BVi)B#y$l)V zHAQ(%qg&&Q!b|4Wac?-)6}SbCZ|8eFn97D=m*)y|-q$s@aFy7?aC)sF)q8={IBbDJ z8>4Hs0`34S-31c)M$u016-MmR?waB1irp)ehU7pB*995OaG z#)x~w9`%U5Tg#V)5rgnH_4;$6kkE>|2}L~aM;-_K9#_OCD-i~phk6kL+k+wV(5`FF z1ow{?qj9e@bM9N+=YAsRqk%}|)NzdkR)d0JoWj+hSe}Y62s1oAx<*2e1hT>ZqF9S+ z=%VzD_7YHxiO3O>$R)+Z7whw-%r0<#dzWCk;gL_h`T(3gJet18FVr1FGUSCuj*5f* z8C>7pJPBZ)j4&ugh%-nWXn>L?-Tc?b^ zi}I|C?PXp<6Ny3Qf!okev4LA(p;*cVZmdGF7SUEjPO*yc^RRS4^g9*v-0<@(R@6=h z>K{akw`d@ zV;&WwYkUKTK!@RMTG$zz$vm%ryp&XWGSBK<mj1DTirdHq-!QB0c@ z8|y=xK7cWKACR^aw=%sbg8qz}^3_DLxsuK-nQ4(QGKguXn44;yDKM<9Ugvm6v&BzY zGCUcbGB~vxsvce8`if=Ynr|G+oj z{9-R)#du};r_5|dLy@U+KpI}ZazKf6OACxE83z+14HEO1=BQr}djq4Z)I<;XPE? z6~A(JSU-Zncf#9yW9&iTSCn3UGUIN+OXq(DSInLjbg-JfTU<8lOej1C34jX-t*o8Sa~W9wNl zD#*s@@stc@UD--~pcSbEQ2i-sWo_9?YY<$88ga^z$t1%ykQaPZ7AB@ps9+|89F(4+ zpQ=I9mTzUp?0vIGo6hXfBRK+iifdwmcvA1im02z}J;DoQ9ZRB`dj3sJU zj18L#>tJqc*w7;)Gc~O5g^k&cmEp{kVUtM2*W4N3P*l<6C0Y<|8ts?ZwC5y(?y3Sb ziB^}U0VchsnDa&H-IgCwQ!(oUv*?W*m05oCEYo0yHR|oD-DoJcDV_ShTkVBm>FuF^ z%t|@sV@fU1w_+4Xv?Ud3s}VWPwomIwZS4K!TaIb(mJv)!G)w4ayGL{Q?e#`Og zobPm=34zsE;2B_^m=B2c#@3wI!DlP$oQwyUR0oX*;8Q*)x$U4_#9CsYU`i1hlAhZD<2#$6FyiLm-6q0rl|2DD-fuP4N>2+Mm#TYQiKD`OBqt6MRcO*9yFr%Q1JqmU5*G}th-RGwE$(Uh-Hx^d zojwAzrQFDhrlfjcXevZvbj<1$ow_y2_&Tb;YCkpP#a`j5s|+RcZ5%fS^lI&=67hQ) z!O}kTDCQSb(pq!sAjJ|UPHpC_WDz_TYdY>((|f$oJBWv2B-T_fSW|rfk>6(4WM-&b zrCi9tsM2=CV?rZg}15p0pd87=$liC$tTYhc`q+M?$%HrqkW#hM*86a&aPXe;ZzDtmlg-e&EWH z2J%;HsvEdlW;!+Z%w10g<}7x}2!caao9@KX5&dwp@(o+-&fw>X6DJy%5#Xo%Ih%*C z>ju;ESR)V~n#QrOg>MB$>BsJP(wx@15j(Fg=xEPP9}2F)q#7Qcrs{?}}lbwf<4cjJ+O8qg4^4BR097#WmPEcUd+E}5BfsjLaz=+bpc zSVwyp)@UJ%P^qP6J)MsdHx3)Udo5PqTf5d_aET9hgTrWR@k}lnAGz6vhBo8kLjY>- zPDa(0pTyJprKW&cvm48@fgNNLH%KfXC}TxiC}Fo{;Rk0h2tYTijSN7BTdL#FLFsD* znS_jr=&NG13sQ5>`kr1f5^MIdP;e~f2vayCzrGL9azO=tHgUiximepJ@ooSJNgcBv zfNiyR`2}nQu&YZPh};+uF_;GHY+&I?n9rM{QMoeqW!mbkAD)U#@dwLiu+Gfv3GSaE zP$C)xnUO_$CFf@s5~ZY*oaDJ|N$jtVJ~X&XTE zZ~Y-S5*t_w*Z^+2yWSwKYz9^X3nKt|vUr#Jq**{6U5B+T=!E8#8*O(44q@X4Yo-sX zfkQLbpQ@>6MvLjL$w}CwfRH?&b;ASOn<=Kg8w;zLQ;&C@&^_;Qq7y-x1t!-VV*+&# zb>kV~h~gP&4NPLLv|ph8*OmxJ1~cqX`m{BA{}H+txM?kzub*|odsv&?kA-2iAe(kW zdSzI^jA}|&=d>8gE7cOliUh;l*rj4R_=V;W;FpLf_SjB;5Y3$q5O-a*dL++3r=!EPvE%eame3R8#I(Krza8Up4Tc0*X<}1J%Go3MfV?$Etx(DxespJW>rj zu7F~c@>n(SIRzA>lqafzrxZ|(Qs%0GXB1G3Ql3-b={%rsneu`H&*mxmmf2oZ;Q2g7 z-!j|F3LMW<^ewZ!s=!NmioRvG*A;jrPtmu`c2pSmTAreBneASs%<@M=(6`KXzXJE< zDf*V#9#r7IJVoC!+d~RGkf-QdX8WW9$MO_?%WRJ;@JODbZ<+0L3Otsl=v!ucN`WWx z6n)EVqSy>S>?w(|$a~ZBG-4{M1;lt*{l;1PMa>@Z1A_!clZ1&MS^x|*+;G{n1OxzVJdECL67r| z`Xn3P8a3a5?I}Mco17cbcm0&H-N4DeoSv~J01$K(n~R;OQMUb)xZ9BO&EAtm^eP_# zWAVjiBM+t^{Z37zw5~#~s|YnrB1w|wf}T)AF9xMKCe%xFAWfe%M{7+f5T1qeVTzEo z7>iab!%M@;QX0cBE@V}tYylF4ra9#n7mJV1^l?H9EM%^C$_w5WIg}(9N^?N26t0Kq zyXjJGN(baR2HbdSS2WWkF!k38L*9G9>Pn zT)`467&&8P&lbNZ->2r8sFMr)(1sVXjYFugT0=5c55S|c2b{>XUX^_j_DGZT^Na+j z*&P^5&VukC%2|-OP9gJXf;6_!^B#esZ_Eqw9{7rJHydGJZFJhI&|tj=TS&}3Xb2<# zO#|%Dt8O4j(uGo>rX}R3qO)BJT`>~9^{F!>o#`=%hzQn(cR&{HGS_2>A4A|4V-?6b z=HwG1(A;Y=%y*6tLUy_qm(vt`Eryr^r(D?_EFVu?) zPSdp#r^!Y&)|UcN2ki;uFmyp2g&lJ4H*S4(Wt94}z{m5mz)TLxx-BTSJ)jd|*MVqK zzM0iSQ!YP$O8|5mQ_3c3&*M?%%dPh1a1z{a<<<-J4{0-i{-U(>SCC07nT#$6l{ZXv z7!GH{IwO2^MpU*L9ZenvK*z$|zx^=|i!LML=ZlCrB9?0nvsEnKag(Ctv2M0&< zlZ?Qf;prqJtoth8lpP#AH+-*#9(otQv(5D|y@Zm_*dZr08t;9m0pnP$kDY)_bpnzA zXG`q_B#my2u97=l=sl`?=Nm)sQC&ITD7})Jdj}rDU?MmuT)5ncK{A&2Rc1Oo^)sz) zgHt}!I_e3A2i~{r77uGXAM++4cuNI>c;V*Y$RT)NCBh(hPbI=2I9o$yQtMFpR1qM{tcskHh44D_0dkR zc78B0LJ3+TUi{5u`z&aYXtmK1Yu8#UWK9sk_%y|wcO-b)0Rmgo;5*_*oVc&aJe);1 zM0b~XmuLzc>aZa&9^HiD$qc^O)g|dAyGB%lojJ!deHTq8NadS?zlo8Kyf~Lf!lot`NMl+hV^S$CEy z$0kWDDIWd@|!#xzaC~yQ+vB?dejTZN#~+ul+`Qa_PW@mBMptarg6jC&9qczyL`kJb7;d z@-4Rc!J7e`qQ?tSP5l2unqk5I2GdLfq&PXv;8kNZ(_D;ZhDw?N)ndnC`aay5M>E?! z&1@@h=YI;#l-y=Pnt@jkpYw{7(Twp5qZ#8B;{)TKM>7+iX2y$gpCX!Ru`2}FVXMze zUV_Y?(RZ#VX2D!dltP4ZPZRAgmVk*d$eMdzF`v;@6GNG71a3onLk#C+`Lf6_|{aUAAEIHigqhA@n#D-wEZS~X- z2+m@|BmN5MQ|blcFuYj(_}f69J^T#atM*ehuW3OQs;cAtdlA)gA!3m z0|uvoV&cy)O92GdW%SXa2#O{UMNSY0jkg*??vke+de+*2#S3Nf14r`>R z38X9aYyILN^&=Pn>B~Kk{!Q^Sa(`Ar7nQ#sy6AI@L$}BvNF@Exb!VtBr!(~W!?q!YQ$u}w+T!{(dLdK z!ZQIHkn~k9AbEn2jf?8D7!IIweC|we&M1AYkWYup+zS1&lNbZcvs@I)){Jv%I{v&Q z32{=jQ8LR|)h)&>iwx>v)KAV|6SMr-|7>Q-;lGsoKg3Zy<%+8d9-h%_@qk%}qK0j6T6NJtWt%VJaEFds8>p0i~D}$R^**-pJ~yu53s9RArXO3sEtefhi~MZ^|Ot`Y5_)cRCfdmPL{o zs!9-@%%E-X>lM-Z;jjUvIvJ6-=gOj7-Pe~vL#c_^vQ-0Y#AlLT?xwMU9DXLHC__18 z5~(c0b@SO)(g5prt-LQDYBW_$WCiCIl))>K)*>=EH_$AOXhjCK-zRBB@L%HKqluVX z0jsmb+ZdYHDpFOi?a(}@^|(aV zgoxtqv|iIJ`QONNe)mMn>#$~=g@CLDukih-^~8H@EO=cZ)YB8cW>`!_%xFtLr6@>W zWDj&CfE$<=8BWO^2+Xm?VR)ymZ^+e+qERg&AuU(xxNWCyGzE}hp=VS&VtNLhAg$0d zbQh``mY%`kCVCO)?Rx2pcCqon52}OJhW0?ax4z|eYk9kVF{EAgNL;v4%k8%Ec3VZetTR|V z`^Jj_bYQ%P-g3JmYFETYb0fYvb0Fc0Uu#?EWMTqcu=C0h*-e&A2_qFdGOs^3?;IIf z9M3r{Siy5)eTnCs=u=B9XcfvixN`*O%Ec&0w9=y-D(Tf|68n+@qU!P)+I&jsxBM*S z`XSMc;z*OG6qaZ%0nk^ZHO4owE&S5+lTD)t(snRu5NeZH7(NXo<`IiUn61t>@ zFwc~eP&O318TicNO{wx86kt(3D45YPosxZDAmF6H02X}!ZnAjos;^gj-gnQP%pBgH zl1!l5hvwD(L3qaEwX42f?R2--clsPdeiBDidt+YhAA&P1Uc2h+)lPSNwVPS8IivefmT8F zU3k^s_apd|E?&Fp>(y@CQ3ZNR8Dbr4bprQI9eRP)lQo-8l z-^`bJw?@JNwJa(eypB_n1PZsjC^n{IbaK&RMPuA@>lO3URf@s9sZvXeQp;2-7urrb zuy^J?TwjzrO{MxJ-IIf3RZ(g+KdgHu{FKn_LDq|gf4VvvJ5tLJ0WHVfBfpℑdGu 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

$jzW3uhLXu__Mw>fBR;H_EL(?(G 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 E0KA4l)Bpeg diff --git a/assets/index-Cqv0LPin.js b/assets/index-Cqv0LPin.js new file mode 100644 index 0000000..19119b7 --- /dev/null +++ b/assets/index-Cqv0LPin.js @@ -0,0 +1,1299 @@ +var HC=(Oe,Un)=>()=>(Un||Oe((Un={exports:{}}).exports,Un),Un.exports);var BC=HC((VC,ah)=>{(async()=>{(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))n(r);new MutationObserver(r=>{for(const h of r)if(h.type==="childList")for(const i of h.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&n(i)}).observe(document,{childList:!0,subtree:!0});function t(r){const h={};return r.integrity&&(h.integrity=r.integrity),r.referrerPolicy&&(h.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?h.credentials="include":r.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function n(r){if(r.ep)return;r.ep=!0;const h=t(r);fetch(r.href,h)}})();var Oe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Un(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var lh={exports:{}},No={},ch={exports:{}},de={},fi=Symbol.for("react.element"),Bm=Symbol.for("react.portal"),Um=Symbol.for("react.fragment"),Vm=Symbol.for("react.strict_mode"),Gm=Symbol.for("react.profiler"),Km=Symbol.for("react.provider"),Ym=Symbol.for("react.context"),Qm=Symbol.for("react.forward_ref"),qm=Symbol.for("react.suspense"),Zm=Symbol.for("react.memo"),Xm=Symbol.for("react.lazy"),uh=Symbol.iterator;function Jm(e){return e===null||typeof e!="object"?null:(e=uh&&e[uh]||e["@@iterator"],typeof e=="function"?e:null)}var hh={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},dh=Object.assign,ph={};function xr(e,t,n){this.props=e,this.context=t,this.refs=ph,this.updater=n||hh}xr.prototype.isReactComponent={},xr.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},xr.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function fh(){}fh.prototype=xr.prototype;function Ea(e,t,n){this.props=e,this.context=t,this.refs=ph,this.updater=n||hh}var La=Ea.prototype=new fh;La.constructor=Ea,dh(La,xr.prototype),La.isPureReactComponent=!0;var gh=Array.isArray,mh=Object.prototype.hasOwnProperty,Ra={current:null},vh={key:!0,ref:!0,__self:!0,__source:!0};function yh(e,t,n){var r,h={},i=null,d=null;if(t!=null)for(r in t.ref!==void 0&&(d=t.ref),t.key!==void 0&&(i=""+t.key),t)mh.call(t,r)&&!vh.hasOwnProperty(r)&&(h[r]=t[r]);var g=arguments.length-2;if(g===1)h.children=n;else if(1>>1,B=N[F];if(0>>1;Fh(H,D))Uh(K,H)?(N[F]=K,N[U]=D,F=U):(N[F]=H,N[P]=D,F=P);else if(Uh(K,D))N[F]=K,N[U]=D,F=U;else break e}}return O}function h(N,O){var D=N.sortIndex-O.sortIndex;return D!==0?D:N.id-O.id}if(typeof performance=="object"&&typeof performance.now=="function"){var i=performance;e.unstable_now=function(){return i.now()}}else{var d=Date,g=d.now();e.unstable_now=function(){return d.now()-g}}var c=[],f=[],s=1,o=null,a=3,l=!1,u=!1,p=!1,m=typeof setTimeout=="function"?setTimeout:null,v=typeof clearTimeout=="function"?clearTimeout:null,b=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function _(N){for(var O=n(f);O!==null;){if(O.callback===null)r(f);else if(O.startTime<=N)r(f),O.sortIndex=O.expirationTime,t(c,O);else break;O=n(f)}}function S(N){if(p=!1,_(N),!u)if(n(c)!==null)u=!0,R(w);else{var O=n(f);O!==null&&I(S,O.startTime-N)}}function w(N,O){u=!1,p&&(p=!1,v(M),M=-1),l=!0;var D=a;try{for(_(O),o=n(c);o!==null&&(!(o.expirationTime>O)||N&&!L());){var F=o.callback;if(typeof F=="function"){o.callback=null,a=o.priorityLevel;var B=F(o.expirationTime<=O);O=e.unstable_now(),typeof B=="function"?o.callback=B:o===n(c)&&r(c),_(O)}else r(c);o=n(c)}if(o!==null)var j=!0;else{var P=n(f);P!==null&&I(S,P.startTime-O),j=!1}return j}finally{o=null,a=D,l=!1}}var y=!1,C=null,M=-1,E=5,T=-1;function L(){return!(e.unstable_now()-TN||125F?(N.sortIndex=D,t(f,N),n(c)===null&&N===n(f)&&(p?(v(M),M=-1):p=!0,I(S,D-F))):(N.sortIndex=B,t(c,N),u||l||(u=!0,R(w))),N},e.unstable_shouldYield=L,e.unstable_wrapCallback=function(N){var O=a;return function(){var D=a;a=O;try{return N.apply(this,arguments)}finally{a=D}}}})(kh),Ch.exports=kh;var uv=Ch.exports,hv=W,mt=uv;function J(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Da=Object.prototype.hasOwnProperty,dv=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Mh={},Ah={};function pv(e){return Da.call(Ah,e)?!0:Da.call(Mh,e)?!1:dv.test(e)?Ah[e]=!0:(Mh[e]=!0,!1)}function fv(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function gv(e,t,n,r){if(t===null||typeof t>"u"||fv(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function at(e,t,n,r,h,i,d){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=h,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=d}var Ye={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Ye[e]=new at(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Ye[t]=new at(t,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){Ye[e]=new at(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Ye[e]=new at(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Ye[e]=new at(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){Ye[e]=new at(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){Ye[e]=new at(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){Ye[e]=new at(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){Ye[e]=new at(e,5,!1,e.toLowerCase(),null,!1,!1)});var za=/[\-:]([a-z])/g;function Fa(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(za,Fa);Ye[t]=new at(t,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(za,Fa);Ye[t]=new at(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(za,Fa);Ye[t]=new at(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){Ye[e]=new at(e,1,!1,e.toLowerCase(),null,!1,!1)}),Ye.xlinkHref=new at("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){Ye[e]=new at(e,1,!1,e.toLowerCase(),null,!0,!0)});function Pa(e,t,n,r){var h=Ye.hasOwnProperty(t)?Ye[t]:null;(h!==null?h.type!==0:r||!(2g||h[d]!==i[g]){var c=` +`+h[d].replace(" at new "," at ");return e.displayName&&c.includes("")&&(c=c.replace("",e.displayName)),c}while(1<=d&&0<=g);break}}}finally{Ka=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?vi(e):""}function mv(e){switch(e.tag){case 5:return vi(e.type);case 16:return vi("Lazy");case 13:return vi("Suspense");case 19:return vi("SuspenseList");case 0:case 2:case 15:return e=Ya(e.type,!1),e;case 11:return e=Ya(e.type.render,!1),e;case 1:return e=Ya(e.type,!0),e;default:return""}}function Qa(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case Cr:return"Fragment";case $r:return"Portal";case Wa:return"Profiler";case ja:return"StrictMode";case Ba:return"Suspense";case Ua:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case Eh:return(e.displayName||"Context")+".Consumer";case Th:return(e._context.displayName||"Context")+".Provider";case Ha:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Va:return t=e.displayName||null,t!==null?t:Qa(e.type)||"Memo";case bn:t=e._payload,e=e._init;try{return Qa(e(t))}catch{}}return null}function vv(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Qa(t);case 8:return t===ja?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function wn(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Nh(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function yv(e){var t=Nh(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var h=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return h.call(this)},set:function(d){r=""+d,i.call(this,d)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(d){r=""+d},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Fo(e){e._valueTracker||(e._valueTracker=yv(e))}function Ih(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Nh(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function Po(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function qa(e,t){var n=t.checked;return Te({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Oh(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=wn(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Dh(e,t){t=t.checked,t!=null&&Pa(e,"checked",t,!1)}function Za(e,t){Dh(e,t);var n=wn(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?Xa(e,t.type,n):t.hasOwnProperty("defaultValue")&&Xa(e,t.type,wn(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function zh(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function Xa(e,t,n){(t!=="number"||Po(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var yi=Array.isArray;function kr(e,t,n,r){if(e=e.options,t){t={};for(var h=0;h"+t.valueOf().toString()+"",t=jo.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function bi(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var wi={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},bv=["Webkit","ms","Moz","O"];Object.keys(wi).forEach(function(e){bv.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),wi[t]=wi[e]})});function Bh(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||wi.hasOwnProperty(e)&&wi[e]?(""+t).trim():t+"px"}function Uh(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,h=Bh(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,h):e[n]=h}}var wv=Te({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function tl(e,t){if(t){if(wv[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(J(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(J(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(J(61))}if(t.style!=null&&typeof t.style!="object")throw Error(J(62))}}function nl(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var rl=null;function il(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var ol=null,_r=null,Mr=null;function Vh(e){if(e=Hi(e)){if(typeof ol!="function")throw Error(J(280));var t=e.stateNode;t&&(t=cs(t),ol(e.stateNode,e.type,t))}}function Gh(e){_r?Mr?Mr.push(e):Mr=[e]:_r=e}function Kh(){if(_r){var e=_r,t=Mr;if(Mr=_r=null,Vh(e),t)for(e=0;e>>=0,e===0?32:31-(Lv(e)/Rv|0)|0}var Vo=64,Go=4194304;function Ci(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Ko(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,h=e.suspendedLanes,i=e.pingedLanes,d=n&268435455;if(d!==0){var g=d&~h;g!==0?r=Ci(g):(i&=d,i!==0&&(r=Ci(i)))}else d=n&~h,d!==0?r=Ci(d):i!==0&&(r=Ci(i));if(r===0)return 0;if(t!==0&&t!==r&&!(t&h)&&(h=r&-r,i=t&-t,h>=i||h===16&&(i&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function ki(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Dt(t),e[t]=n}function Dv(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=Ni),xd=" ",Sd=!1;function $d(e,t){switch(e){case"keyup":return uy.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Cd(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Er=!1;function dy(e,t){switch(e){case"compositionend":return Cd(t);case"keypress":return t.which!==32?null:(Sd=!0,xd);case"textInput":return e=t.data,e===xd&&Sd?null:e;default:return null}}function py(e,t){if(Er)return e==="compositionend"||!$l&&$d(e,t)?(e=gd(),Xo=vl=kn=null,Er=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Ld(n)}}function Nd(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Nd(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Id(){for(var e=window,t=Po();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=Po(e.document)}return t}function _l(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function Sy(e){var t=Id(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Nd(n.ownerDocument.documentElement,n)){if(r!==null&&_l(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var h=n.textContent.length,i=Math.min(r.start,h);r=r.end===void 0?i:Math.min(r.end,h),!e.extend&&i>r&&(h=r,r=i,i=h),h=Rd(n,i);var d=Rd(n,r);h&&d&&(e.rangeCount!==1||e.anchorNode!==h.node||e.anchorOffset!==h.offset||e.focusNode!==d.node||e.focusOffset!==d.offset)&&(t=t.createRange(),t.setStart(h.node,h.offset),e.removeAllRanges(),i>r?(e.addRange(t),e.extend(d.node,d.offset)):(t.setEnd(d.node,d.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,Lr=null,Ml=null,zi=null,Al=!1;function Od(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Al||Lr==null||Lr!==Po(r)||(r=Lr,"selectionStart"in r&&_l(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),zi&&Di(zi,r)||(zi=r,r=ss(Ml,"onSelect"),0Dr||(e.current=jl[Dr],jl[Dr]=null,Dr--)}function we(e,t){Dr++,jl[Dr]=e.current,e.current=t}var Tn={},tt=An(Tn),ut=An(!1),Yn=Tn;function zr(e,t){var n=e.type.contextTypes;if(!n)return Tn;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var h={},i;for(i in n)h[i]=t[i];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=h),h}function ht(e){return e=e.childContextTypes,e!=null}function us(){Se(ut),Se(tt)}function qd(e,t,n){if(tt.current!==Tn)throw Error(J(168));we(tt,t),we(ut,n)}function Zd(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var h in r)if(!(h in t))throw Error(J(108,vv(e)||"Unknown",h));return Te({},n,r)}function hs(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Tn,Yn=tt.current,we(tt,e),we(ut,ut.current),!0}function Xd(e,t,n){var r=e.stateNode;if(!r)throw Error(J(169));n?(e=Zd(e,t,Yn),r.__reactInternalMemoizedMergedChildContext=e,Se(ut),Se(tt),we(tt,e)):Se(ut),we(ut,n)}var rn=null,ds=!1,Wl=!1;function Jd(e){rn===null?rn=[e]:rn.push(e)}function Iy(e){ds=!0,Jd(e)}function En(){if(!Wl&&rn!==null){Wl=!0;var e=0,t=ve;try{var n=rn;for(ve=1;e>=d,h-=d,on=1<<32-Dt(t)+h|n<M?(E=C,C=null):E=C.sibling;var T=a(v,C,_[M],S);if(T===null){C===null&&(C=E);break}e&&C&&T.alternate===null&&t(v,C),b=i(T,b,M),y===null?w=T:y.sibling=T,y=T,C=E}if(M===_.length)return n(v,C),Me&&qn(v,M),w;if(C===null){for(;M<_.length;M++)C=o(v,_[M],S),C!==null&&(b=i(C,b,M),y===null?w=C:y.sibling=C,y=C);return Me&&qn(v,M),w}for(C=r(v,C);M<_.length;M++)E=l(C,v,M,_[M],S),E!==null&&(e&&E.alternate!==null&&C.delete(E.key===null?M:E.key),b=i(E,b,M),y===null?w=E:y.sibling=E,y=E);return e&&C.forEach(function(L){return t(v,L)}),Me&&qn(v,M),w}function p(v,b,_,S){var w=mi(_);if(typeof w!="function")throw Error(J(150));if(_=w.call(_),_==null)throw Error(J(151));for(var y=w=null,C=b,M=b=0,E=null,T=_.next();C!==null&&!T.done;M++,T=_.next()){C.index>M?(E=C,C=null):E=C.sibling;var L=a(v,C,T.value,S);if(L===null){C===null&&(C=E);break}e&&C&&L.alternate===null&&t(v,C),b=i(L,b,M),y===null?w=L:y.sibling=L,y=L,C=E}if(T.done)return n(v,C),Me&&qn(v,M),w;if(C===null){for(;!T.done;M++,T=_.next())T=o(v,T.value,S),T!==null&&(b=i(T,b,M),y===null?w=T:y.sibling=T,y=T);return Me&&qn(v,M),w}for(C=r(v,C);!T.done;M++,T=_.next())T=l(C,v,M,T.value,S),T!==null&&(e&&T.alternate!==null&&C.delete(T.key===null?M:T.key),b=i(T,b,M),y===null?w=T:y.sibling=T,y=T);return e&&C.forEach(function($){return t(v,$)}),Me&&qn(v,M),w}function m(v,b,_,S){if(typeof _=="object"&&_!==null&&_.type===Cr&&_.key===null&&(_=_.props.children),typeof _=="object"&&_!==null){switch(_.$$typeof){case zo:e:{for(var w=_.key,y=b;y!==null;){if(y.key===w){if(w=_.type,w===Cr){if(y.tag===7){n(v,y.sibling),b=h(y,_.props.children),b.return=v,v=b;break e}}else if(y.elementType===w||typeof w=="object"&&w!==null&&w.$$typeof===bn&&op(w)===y.type){n(v,y.sibling),b=h(y,_.props),b.ref=Bi(v,y,_),b.return=v,v=b;break e}n(v,y);break}else t(v,y);y=y.sibling}_.type===Cr?(b=ir(_.props.children,v.mode,S,_.key),b.return=v,v=b):(S=js(_.type,_.key,_.props,null,v.mode,S),S.ref=Bi(v,b,_),S.return=v,v=S)}return d(v);case $r:e:{for(y=_.key;b!==null;){if(b.key===y)if(b.tag===4&&b.stateNode.containerInfo===_.containerInfo&&b.stateNode.implementation===_.implementation){n(v,b.sibling),b=h(b,_.children||[]),b.return=v,v=b;break e}else{n(v,b);break}else t(v,b);b=b.sibling}b=zc(_,v.mode,S),b.return=v,v=b}return d(v);case bn:return y=_._init,m(v,b,y(_._payload),S)}if(yi(_))return u(v,b,_,S);if(mi(_))return p(v,b,_,S);ms(v,_)}return typeof _=="string"&&_!==""||typeof _=="number"?(_=""+_,b!==null&&b.tag===6?(n(v,b.sibling),b=h(b,_),b.return=v,v=b):(n(v,b),b=Dc(_,v.mode,S),b.return=v,v=b),d(v)):n(v,b)}return m}var Wr=sp(!0),ap=sp(!1),vs=An(null),ys=null,Hr=null,Kl=null;function Yl(){Kl=Hr=ys=null}function Ql(e){var t=vs.current;Se(vs),e._currentValue=t}function ql(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function Br(e,t){ys=e,Kl=Hr=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(dt=!0),e.firstContext=null)}function _t(e){var t=e._currentValue;if(Kl!==e)if(e={context:e,memoizedValue:t,next:null},Hr===null){if(ys===null)throw Error(J(308));Hr=e,ys.dependencies={lanes:0,firstContext:e}}else Hr=Hr.next=e;return t}var Zn=null;function Zl(e){Zn===null?Zn=[e]:Zn.push(e)}function lp(e,t,n,r){var h=t.interleaved;return h===null?(n.next=n,Zl(t)):(n.next=h.next,h.next=n),t.interleaved=n,an(e,r)}function an(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Ln=!1;function Xl(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function cp(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function ln(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Rn(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,fe&2){var h=r.pending;return h===null?t.next=t:(t.next=h.next,h.next=t),r.pending=t,an(e,n)}return h=r.interleaved,h===null?(t.next=t,Zl(r)):(t.next=h.next,h.next=t),r.interleaved=t,an(e,n)}function bs(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,dl(e,n)}}function up(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var h=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var d={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};i===null?h=i=d:i=i.next=d,n=n.next}while(n!==null);i===null?h=i=t:i=i.next=t}else h=i=t;n={baseState:r.baseState,firstBaseUpdate:h,lastBaseUpdate:i,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function ws(e,t,n,r){var h=e.updateQueue;Ln=!1;var i=h.firstBaseUpdate,d=h.lastBaseUpdate,g=h.shared.pending;if(g!==null){h.shared.pending=null;var c=g,f=c.next;c.next=null,d===null?i=f:d.next=f,d=c;var s=e.alternate;s!==null&&(s=s.updateQueue,g=s.lastBaseUpdate,g!==d&&(g===null?s.firstBaseUpdate=f:g.next=f,s.lastBaseUpdate=c))}if(i!==null){var o=h.baseState;d=0,s=f=c=null,g=i;do{var a=g.lane,l=g.eventTime;if((r&a)===a){s!==null&&(s=s.next={eventTime:l,lane:0,tag:g.tag,payload:g.payload,callback:g.callback,next:null});e:{var u=e,p=g;switch(a=t,l=n,p.tag){case 1:if(u=p.payload,typeof u=="function"){o=u.call(l,o,a);break e}o=u;break e;case 3:u.flags=u.flags&-65537|128;case 0:if(u=p.payload,a=typeof u=="function"?u.call(l,o,a):u,a==null)break e;o=Te({},o,a);break e;case 2:Ln=!0}}g.callback!==null&&g.lane!==0&&(e.flags|=64,a=h.effects,a===null?h.effects=[g]:a.push(g))}else l={eventTime:l,lane:a,tag:g.tag,payload:g.payload,callback:g.callback,next:null},s===null?(f=s=l,c=o):s=s.next=l,d|=a;if(g=g.next,g===null){if(g=h.shared.pending,g===null)break;a=g,g=a.next,a.next=null,h.lastBaseUpdate=a,h.shared.pending=null}}while(!0);if(s===null&&(c=o),h.baseState=c,h.firstBaseUpdate=f,h.lastBaseUpdate=s,t=h.shared.interleaved,t!==null){h=t;do d|=h.lane,h=h.next;while(h!==t)}else i===null&&(h.shared.lanes=0);er|=d,e.lanes=d,e.memoizedState=o}}function hp(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=rc.transition;rc.transition={};try{e(!1),t()}finally{ve=n,rc.transition=r}}function Ep(){return Mt().memoizedState}function Fy(e,t,n){var r=Dn(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Lp(e))Rp(t,n);else if(n=lp(e,t,n,r),n!==null){var h=ct();Ht(n,e,r,h),Np(n,t,r)}}function Py(e,t,n){var r=Dn(e),h={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Lp(e))Rp(t,h);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var d=t.lastRenderedState,g=i(d,n);if(h.hasEagerState=!0,h.eagerState=g,zt(g,d)){var c=t.interleaved;c===null?(h.next=h,Zl(t)):(h.next=c.next,c.next=h),t.interleaved=h;return}}catch{}finally{}n=lp(e,t,h,r),n!==null&&(h=ct(),Ht(n,e,r,h),Np(n,t,r))}}function Lp(e){var t=e.alternate;return e===Le||t!==null&&t===Le}function Rp(e,t){Ki=$s=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Np(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,dl(e,n)}}var _s={readContext:_t,useCallback:nt,useContext:nt,useEffect:nt,useImperativeHandle:nt,useInsertionEffect:nt,useLayoutEffect:nt,useMemo:nt,useReducer:nt,useRef:nt,useState:nt,useDebugValue:nt,useDeferredValue:nt,useTransition:nt,useMutableSource:nt,useSyncExternalStore:nt,useId:nt,unstable_isNewReconciler:!1},jy={readContext:_t,useCallback:function(e,t){return Zt().memoizedState=[e,t===void 0?null:t],e},useContext:_t,useEffect:Sp,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,Cs(4194308,4,kp.bind(null,t,e),n)},useLayoutEffect:function(e,t){return Cs(4194308,4,e,t)},useInsertionEffect:function(e,t){return Cs(4,2,e,t)},useMemo:function(e,t){var n=Zt();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=Zt();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Fy.bind(null,Le,e),[r.memoizedState,e]},useRef:function(e){var t=Zt();return e={current:e},t.memoizedState=e},useState:wp,useDebugValue:uc,useDeferredValue:function(e){return Zt().memoizedState=e},useTransition:function(){var e=wp(!1),t=e[0];return e=zy.bind(null,e[1]),Zt().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Le,h=Zt();if(Me){if(n===void 0)throw Error(J(407));n=n()}else{if(n=t(),Ve===null)throw Error(J(349));Jn&30||gp(r,t,n)}h.memoizedState=n;var i={value:n,getSnapshot:t};return h.queue=i,Sp(vp.bind(null,r,i,e),[e]),r.flags|=2048,qi(9,mp.bind(null,r,i,n,t),void 0,null),n},useId:function(){var e=Zt(),t=Ve.identifierPrefix;if(Me){var n=sn,r=on;n=(r&~(1<<32-Dt(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=Yi++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=d.createElement(n,{is:r.is}):(e=d.createElement(n),n==="select"&&(d=e,r.multiple?d.multiple=!0:r.size&&(d.size=r.size))):e=d.createElementNS(e,n),e[Qt]=t,e[Wi]=r,Jp(e,t,!1,!1),t.stateNode=e;e:{switch(d=nl(n,r),n){case"dialog":xe("cancel",e),xe("close",e),h=r;break;case"iframe":case"object":case"embed":xe("load",e),h=r;break;case"video":case"audio":for(h=0;hYr&&(t.flags|=128,r=!0,Zi(i,!1),t.lanes=4194304)}else{if(!r)if(e=xs(d),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),Zi(i,!0),i.tail===null&&i.tailMode==="hidden"&&!d.alternate&&!Me)return rt(t),null}else 2*Fe()-i.renderingStartTime>Yr&&n!==1073741824&&(t.flags|=128,r=!0,Zi(i,!1),t.lanes=4194304);i.isBackwards?(d.sibling=t.child,t.child=d):(n=i.last,n!==null?n.sibling=d:t.child=d,i.last=d)}return i.tail!==null?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Fe(),t.sibling=null,n=Ee.current,we(Ee,r?n&1|2:n&1),t):(rt(t),null);case 22:case 23:return Nc(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?wt&1073741824&&(rt(t),t.subtreeFlags&6&&(t.flags|=8192)):rt(t),null;case 24:return null;case 25:return null}throw Error(J(156,t.tag))}function Yy(e,t){switch(Bl(t),t.tag){case 1:return ht(t.type)&&us(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Ur(),Se(ut),Se(tt),nc(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return ec(t),null;case 13:if(Se(Ee),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(J(340));jr()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return Se(Ee),null;case 4:return Ur(),null;case 10:return Ql(t.type._context),null;case 22:case 23:return Nc(),null;case 24:return null;default:return null}}var Es=!1,it=!1,Qy=typeof WeakSet=="function"?WeakSet:Set,te=null;function Gr(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){De(e,t,r)}else n.current=null}function nf(e,t,n){try{n()}catch(r){De(e,t,r)}}var rf=!1;function qy(e,t){if(Il=qo,e=Id(),_l(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var h=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var d=0,g=-1,c=-1,f=0,s=0,o=e,a=null;t:for(;;){for(var l;o!==n||h!==0&&o.nodeType!==3||(g=d+h),o!==i||r!==0&&o.nodeType!==3||(c=d+r),o.nodeType===3&&(d+=o.nodeValue.length),(l=o.firstChild)!==null;)a=o,o=l;for(;;){if(o===e)break t;if(a===n&&++f===h&&(g=d),a===i&&++s===r&&(c=d),(l=o.nextSibling)!==null)break;o=a,a=o.parentNode}o=l}n=g===-1||c===-1?null:{start:g,end:c}}else n=null}n=n||{start:0,end:0}}else n=null;for(Ol={focusedElem:e,selectionRange:n},qo=!1,te=t;te!==null;)if(t=te,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,te=e;else for(;te!==null;){t=te;try{var u=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(u!==null){var p=u.memoizedProps,m=u.memoizedState,v=t.stateNode,b=v.getSnapshotBeforeUpdate(t.elementType===t.type?p:Pt(t.type,p),m);v.__reactInternalSnapshotBeforeUpdate=b}break;case 3:var _=t.stateNode.containerInfo;_.nodeType===1?_.textContent="":_.nodeType===9&&_.documentElement&&_.removeChild(_.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(J(163))}}catch(S){De(t,t.return,S)}if(e=t.sibling,e!==null){e.return=t.return,te=e;break}te=t.return}return u=rf,rf=!1,u}function Xi(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var h=r=r.next;do{if((h.tag&e)===e){var i=h.destroy;h.destroy=void 0,i!==void 0&&nf(t,n,i)}h=h.next}while(h!==r)}}function Ls(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function Sc(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function of(e){var t=e.alternate;t!==null&&(e.alternate=null,of(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Qt],delete t[Wi],delete t[Pl],delete t[Ry],delete t[Ny])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function sf(e){return e.tag===5||e.tag===3||e.tag===4}function af(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||sf(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function $c(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=ls));else if(r!==4&&(e=e.child,e!==null))for($c(e,t,n),e=e.sibling;e!==null;)$c(e,t,n),e=e.sibling}function Cc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for(Cc(e,t,n),e=e.sibling;e!==null;)Cc(e,t,n),e=e.sibling}var Qe=null,jt=!1;function Nn(e,t,n){for(n=n.child;n!==null;)lf(e,t,n),n=n.sibling}function lf(e,t,n){if(Yt&&typeof Yt.onCommitFiberUnmount=="function")try{Yt.onCommitFiberUnmount(Uo,n)}catch{}switch(n.tag){case 5:it||Gr(n,t);case 6:var r=Qe,h=jt;Qe=null,Nn(e,t,n),Qe=r,jt=h,Qe!==null&&(jt?(e=Qe,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Qe.removeChild(n.stateNode));break;case 18:Qe!==null&&(jt?(e=Qe,n=n.stateNode,e.nodeType===8?Fl(e.parentNode,n):e.nodeType===1&&Fl(e,n),Ei(e)):Fl(Qe,n.stateNode));break;case 4:r=Qe,h=jt,Qe=n.stateNode.containerInfo,jt=!0,Nn(e,t,n),Qe=r,jt=h;break;case 0:case 11:case 14:case 15:if(!it&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){h=r=r.next;do{var i=h,d=i.destroy;i=i.tag,d!==void 0&&(i&2||i&4)&&nf(n,t,d),h=h.next}while(h!==r)}Nn(e,t,n);break;case 1:if(!it&&(Gr(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(g){De(n,t,g)}Nn(e,t,n);break;case 21:Nn(e,t,n);break;case 22:n.mode&1?(it=(r=it)||n.memoizedState!==null,Nn(e,t,n),it=r):Nn(e,t,n);break;default:Nn(e,t,n)}}function cf(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Qy),t.forEach(function(r){var h=o0.bind(null,e,r);n.has(r)||(n.add(r),r.then(h,h))})}}function Wt(e,t){var n=t.deletions;if(n!==null)for(var r=0;rh&&(h=d),r&=~i}if(r=h,r=Fe()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Xy(r/1960))-r,10e?16:e,On===null)var r=!1;else{if(e=On,On=null,Ds=0,fe&6)throw Error(J(331));var h=fe;for(fe|=4,te=e.current;te!==null;){var i=te,d=i.child;if(te.flags&16){var g=i.deletions;if(g!==null){for(var c=0;cFe()-Mc?nr(e,0):_c|=n),ft(e,t)}function Sf(e,t){t===0&&(e.mode&1?(t=Go,Go<<=1,!(Go&130023424)&&(Go=4194304)):t=1);var n=ct();e=an(e,t),e!==null&&(ki(e,t,n),ft(e,n))}function i0(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),Sf(e,n)}function o0(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,h=e.memoizedState;h!==null&&(n=h.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(J(314))}r!==null&&r.delete(t),Sf(e,n)}var $f;$f=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||ut.current)dt=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return dt=!1,Gy(e,t,n);dt=!!(e.flags&131072)}else dt=!1,Me&&t.flags&1048576&&ep(t,fs,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;Ts(e,t),e=t.pendingProps;var h=zr(t,tt.current);Br(t,n),h=oc(null,t,r,e,h,n);var i=sc();return t.flags|=1,typeof h=="object"&&h!==null&&typeof h.render=="function"&&h.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,ht(r)?(i=!0,hs(t)):i=!1,t.memoizedState=h.state!==null&&h.state!==void 0?h.state:null,Xl(t),h.updater=Ms,t.stateNode=h,h._reactInternals=t,dc(t,r,e,n),t=mc(null,t,r,!0,i,n)):(t.tag=0,Me&&i&&Hl(t),lt(null,t,h,n),t=t.child),t;case 16:r=t.elementType;e:{switch(Ts(e,t),e=t.pendingProps,h=r._init,r=h(r._payload),t.type=r,h=t.tag=a0(r),e=Pt(r,e),h){case 0:t=gc(null,t,r,e,n);break e;case 1:t=Kp(null,t,r,e,n);break e;case 11:t=Hp(null,t,r,e,n);break e;case 14:t=Bp(null,t,r,Pt(r.type,e),n);break e}throw Error(J(306,r,""))}return t;case 0:return r=t.type,h=t.pendingProps,h=t.elementType===r?h:Pt(r,h),gc(e,t,r,h,n);case 1:return r=t.type,h=t.pendingProps,h=t.elementType===r?h:Pt(r,h),Kp(e,t,r,h,n);case 3:e:{if(Yp(t),e===null)throw Error(J(387));r=t.pendingProps,i=t.memoizedState,h=i.element,cp(e,t),ws(t,r,null,n);var d=t.memoizedState;if(r=d.element,i.isDehydrated)if(i={element:r,isDehydrated:!1,cache:d.cache,pendingSuspenseBoundaries:d.pendingSuspenseBoundaries,transitions:d.transitions},t.updateQueue.baseState=i,t.memoizedState=i,t.flags&256){h=Vr(Error(J(423)),t),t=Qp(e,t,r,n,h);break e}else if(r!==h){h=Vr(Error(J(424)),t),t=Qp(e,t,r,n,h);break e}else for(bt=Mn(t.stateNode.containerInfo.firstChild),yt=t,Me=!0,Ft=null,n=ap(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(jr(),r===h){t=cn(e,t,n);break e}lt(e,t,r,n)}t=t.child}return t;case 5:return dp(t),e===null&&Vl(t),r=t.type,h=t.pendingProps,i=e!==null?e.memoizedProps:null,d=h.children,Dl(r,h)?d=null:i!==null&&Dl(r,i)&&(t.flags|=32),Gp(e,t),lt(e,t,d,n),t.child;case 6:return e===null&&Vl(t),null;case 13:return qp(e,t,n);case 4:return Jl(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Wr(t,null,r,n):lt(e,t,r,n),t.child;case 11:return r=t.type,h=t.pendingProps,h=t.elementType===r?h:Pt(r,h),Hp(e,t,r,h,n);case 7:return lt(e,t,t.pendingProps,n),t.child;case 8:return lt(e,t,t.pendingProps.children,n),t.child;case 12:return lt(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,h=t.pendingProps,i=t.memoizedProps,d=h.value,we(vs,r._currentValue),r._currentValue=d,i!==null)if(zt(i.value,d)){if(i.children===h.children&&!ut.current){t=cn(e,t,n);break e}}else for(i=t.child,i!==null&&(i.return=t);i!==null;){var g=i.dependencies;if(g!==null){d=i.child;for(var c=g.firstContext;c!==null;){if(c.context===r){if(i.tag===1){c=ln(-1,n&-n),c.tag=2;var f=i.updateQueue;if(f!==null){f=f.shared;var s=f.pending;s===null?c.next=c:(c.next=s.next,s.next=c),f.pending=c}}i.lanes|=n,c=i.alternate,c!==null&&(c.lanes|=n),ql(i.return,n,t),g.lanes|=n;break}c=c.next}}else if(i.tag===10)d=i.type===t.type?null:i.child;else if(i.tag===18){if(d=i.return,d===null)throw Error(J(341));d.lanes|=n,g=d.alternate,g!==null&&(g.lanes|=n),ql(d,n,t),d=i.sibling}else d=i.child;if(d!==null)d.return=i;else for(d=i;d!==null;){if(d===t){d=null;break}if(i=d.sibling,i!==null){i.return=d.return,d=i;break}d=d.return}i=d}lt(e,t,h.children,n),t=t.child}return t;case 9:return h=t.type,r=t.pendingProps.children,Br(t,n),h=_t(h),r=r(h),t.flags|=1,lt(e,t,r,n),t.child;case 14:return r=t.type,h=Pt(r,t.pendingProps),h=Pt(r.type,h),Bp(e,t,r,h,n);case 15:return Up(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,h=t.pendingProps,h=t.elementType===r?h:Pt(r,h),Ts(e,t),t.tag=1,ht(r)?(e=!0,hs(t)):e=!1,Br(t,n),Op(t,r,h),dc(t,r,h,n),mc(null,t,r,!0,e,n);case 19:return Xp(e,t,n);case 22:return Vp(e,t,n)}throw Error(J(156,t.tag))};function Cf(e,t){return td(e,t)}function s0(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Tt(e,t,n,r){return new s0(e,t,n,r)}function Oc(e){return e=e.prototype,!(!e||!e.isReactComponent)}function a0(e){if(typeof e=="function")return Oc(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Ha)return 11;if(e===Va)return 14}return 2}function Fn(e,t){var n=e.alternate;return n===null?(n=Tt(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function js(e,t,n,r,h,i){var d=2;if(r=e,typeof e=="function")Oc(e)&&(d=1);else if(typeof e=="string")d=5;else e:switch(e){case Cr:return ir(n.children,h,i,t);case ja:d=8,h|=8;break;case Wa:return e=Tt(12,n,t,h|2),e.elementType=Wa,e.lanes=i,e;case Ba:return e=Tt(13,n,t,h),e.elementType=Ba,e.lanes=i,e;case Ua:return e=Tt(19,n,t,h),e.elementType=Ua,e.lanes=i,e;case Lh:return Ws(n,h,i,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Th:d=10;break e;case Eh:d=9;break e;case Ha:d=11;break e;case Va:d=14;break e;case bn:d=16,r=null;break e}throw Error(J(130,e==null?e:typeof e,""))}return t=Tt(d,n,t,h),t.elementType=e,t.type=r,t.lanes=i,t}function ir(e,t,n,r){return e=Tt(7,e,r,t),e.lanes=n,e}function Ws(e,t,n,r){return e=Tt(22,e,r,t),e.elementType=Lh,e.lanes=n,e.stateNode={isHidden:!1},e}function Dc(e,t,n){return e=Tt(6,e,null,t),e.lanes=n,e}function zc(e,t,n){return t=Tt(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function l0(e,t,n,r,h){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=hl(0),this.expirationTimes=hl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=hl(0),this.identifierPrefix=r,this.onRecoverableError=h,this.mutableSourceEagerHydrationData=null}function Fc(e,t,n,r,h,i,d,g,c){return e=new l0(e,t,n,g,c),t===1?(t=1,i===!0&&(t|=8)):t=0,i=Tt(3,null,null,t),e.current=i,i.stateNode=e,i.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Xl(i),e}function c0(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Ef)}catch(e){console.error(e)}}Ef(),$h.exports=gt;var Lf=$h.exports;const f0=Un(Lf);var Rf=Lf;Oa.createRoot=Rf.createRoot,Oa.hydrateRoot=Rf.hydrateRoot;var g0={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};const or=(e,t,n,r)=>{const h=W.forwardRef(({color:i="currentColor",size:d=24,stroke:g=2,title:c,className:f,children:s,...o},a)=>W.createElement("svg",{ref:a,...g0[e],width:d,height:d,className:["tabler-icon",`tabler-icon-${t}`,f].join(" "),...e==="filled"?{fill:i}:{strokeWidth:g,stroke:i},...o},[c&&W.createElement("title",{key:"svg-title"},c),...r.map(([l,u])=>W.createElement(l,u)),...Array.isArray(s)?s:[s]]));return h.displayName=`${n}`,h};var m0=or("outline","abc","IconAbc",[["path",{d:"M3 16v-6a2 2 0 1 1 4 0v6",key:"svg-0"}],["path",{d:"M3 13h4",key:"svg-1"}],["path",{d:"M10 8v6a2 2 0 1 0 4 0v-1a2 2 0 1 0 -4 0v1",key:"svg-2"}],["path",{d:"M20.732 12a2 2 0 0 0 -3.732 1v1a2 2 0 0 0 3.726 1.01",key:"svg-3"}]]),v0=or("outline","chevron-down","IconChevronDown",[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]]),y0=or("outline","circle-x","IconCircleX",[["path",{d:"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-0"}],["path",{d:"M10 10l4 4m0 -4l-4 4",key:"svg-1"}]]),b0=or("outline","maximize","IconMaximize",[["path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2",key:"svg-0"}],["path",{d:"M4 16v2a2 2 0 0 0 2 2h2",key:"svg-1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v2",key:"svg-2"}],["path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2",key:"svg-3"}]]),w0=or("outline","minimize","IconMinimize",[["path",{d:"M15 19v-2a2 2 0 0 1 2 -2h2",key:"svg-0"}],["path",{d:"M15 5v2a2 2 0 0 0 2 2h2",key:"svg-1"}],["path",{d:"M5 15h2a2 2 0 0 1 2 2v2",key:"svg-2"}],["path",{d:"M5 9h2a2 2 0 0 0 2 -2v-2",key:"svg-3"}]]),x0=or("filled","brand-github-filled","IconBrandGithubFilled",[["path",{d:"M5.315 2.1c.791 -.113 1.9 .145 3.333 .966l.272 .161l.16 .1l.397 -.083a13.3 13.3 0 0 1 4.59 -.08l.456 .08l.396 .083l.161 -.1c1.385 -.84 2.487 -1.17 3.322 -1.148l.164 .008l.147 .017l.076 .014l.05 .011l.144 .047a1 1 0 0 1 .53 .514a5.2 5.2 0 0 1 .397 2.91l-.047 .267l-.046 .196l.123 .163c.574 .795 .93 1.728 1.03 2.707l.023 .295l.007 .272c0 3.855 -1.659 5.883 -4.644 6.68l-.245 .061l-.132 .029l.014 .161l.008 .157l.004 .365l-.002 .213l-.003 3.834a1 1 0 0 1 -.883 .993l-.117 .007h-6a1 1 0 0 1 -.993 -.883l-.007 -.117v-.734c-1.818 .26 -3.03 -.424 -4.11 -1.878l-.535 -.766c-.28 -.396 -.455 -.579 -.589 -.644l-.048 -.019a1 1 0 0 1 .564 -1.918c.642 .188 1.074 .568 1.57 1.239l.538 .769c.76 1.079 1.36 1.459 2.609 1.191l.001 -.678l-.018 -.168a5.03 5.03 0 0 1 -.021 -.824l.017 -.185l.019 -.12l-.108 -.024c-2.976 -.71 -4.703 -2.573 -4.875 -6.139l-.01 -.31l-.004 -.292a5.6 5.6 0 0 1 .908 -3.051l.152 -.222l.122 -.163l-.045 -.196a5.2 5.2 0 0 1 .145 -2.642l.1 -.282l.106 -.253a1 1 0 0 1 .529 -.514l.144 -.047l.154 -.03z",key:"svg-0"}]]),S0=or("filled","moon-filled","IconMoonFilled",[["path",{d:"M12 1.992a10 10 0 1 0 9.236 13.838c.341 -.82 -.476 -1.644 -1.298 -1.31a6.5 6.5 0 0 1 -6.864 -10.787l.077 -.08c.551 -.63 .113 -1.653 -.758 -1.653h-.266l-.068 -.006l-.06 -.002z",key:"svg-0"}]]),Jt=function(){return Jt=Object.assign||function(e){for(var t,n=1,r=arguments.length;n"u")return P0;var t=j0(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},H0=zf(),qr="data-scroll-locked",B0=function(e,t,n,r){var h=e.left,i=e.top,d=e.right,g=e.gap;return n===void 0&&(n="margin"),` + .`.concat(C0,` { + overflow: hidden `).concat(r,`; + padding-right: `).concat(g,"px ").concat(r,`; + } + body[`).concat(qr,`] { + overflow: hidden `).concat(r,`; + overscroll-behavior: contain; + `).concat([t&&"position: relative ".concat(r,";"),n==="margin"&&` + padding-left: `.concat(h,`px; + padding-top: `).concat(i,`px; + padding-right: `).concat(d,`px; + margin-left:0; + margin-top:0; + margin-right: `).concat(g,"px ").concat(r,`; + `),n==="padding"&&"padding-right: ".concat(g,"px ").concat(r,";")].filter(Boolean).join(""),` + } + + .`).concat(Ys,` { + right: `).concat(g,"px ").concat(r,`; + } + + .`).concat(Qs,` { + margin-right: `).concat(g,"px ").concat(r,`; + } + + .`).concat(Ys," .").concat(Ys,` { + right: 0 `).concat(r,`; + } + + .`).concat(Qs," .").concat(Qs,` { + margin-right: 0 `).concat(r,`; + } + + body[`).concat(qr,`] { + `).concat(k0,": ").concat(g,`px; + } +`)},Ff=function(){var e=parseInt(document.body.getAttribute(qr)||"0",10);return isFinite(e)?e:0},U0=function(){W.useEffect(function(){return document.body.setAttribute(qr,(Ff()+1).toString()),function(){var e=Ff()-1;e<=0?document.body.removeAttribute(qr):document.body.setAttribute(qr,e.toString())}},[])},V0=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,h=r===void 0?"margin":r;U0();var i=W.useMemo(function(){return W0(h)},[h]);return W.createElement(H0,{styles:B0(i,!t,h,n?"":"!important")})},Vc=!1;if(typeof window<"u")try{var Zs=Object.defineProperty({},"passive",{get:function(){return Vc=!0,!0}});window.addEventListener("test",Zs,Zs),window.removeEventListener("test",Zs,Zs)}catch{Vc=!1}var Zr=Vc?{passive:!1}:!1,G0=function(e){return e.tagName==="TEXTAREA"},Pf=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!G0(e)&&n[t]==="visible")},K0=function(e){return Pf(e,"overflowY")},Y0=function(e){return Pf(e,"overflowX")},jf=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var h=Wf(e,r);if(h){var i=Hf(e,r),d=i[1],g=i[2];if(d>g)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},Q0=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},q0=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},Wf=function(e,t){return e==="v"?K0(t):Y0(t)},Hf=function(e,t){return e==="v"?Q0(t):q0(t)},Z0=function(e,t){return e==="h"&&t==="rtl"?-1:1},X0=function(e,t,n,r,h){var i=Z0(e,window.getComputedStyle(t).direction),d=i*r,g=n.target,c=t.contains(g),f=!1,s=d>0,o=0,a=0;do{var l=Hf(e,g),u=l[0],p=l[1],m=l[2],v=p-m-i*u;(u||v)&&Wf(e,g)&&(o+=v,a+=u),g instanceof ShadowRoot?g=g.host:g=g.parentNode}while(!c&&g!==document.body||c&&(t.contains(g)||t===g));return(s&&(Math.abs(o)<1||!h)||!s&&(Math.abs(a)<1||!h))&&(f=!0),f},Xs=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Bf=function(e){return[e.deltaX,e.deltaY]},Uf=function(e){return e&&"current"in e?e.current:e},J0=function(e,t){return e[0]===t[0]&&e[1]===t[1]},eb=function(e){return` + .block-interactivity-`.concat(e,` {pointer-events: none;} + .allow-interactivity-`).concat(e,` {pointer-events: all;} +`)},tb=0,Xr=[];function nb(e){var t=W.useRef([]),n=W.useRef([0,0]),r=W.useRef(),h=W.useState(tb++)[0],i=W.useState(zf)[0],d=W.useRef(e);W.useEffect(function(){d.current=e},[e]),W.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(h));var p=$0([e.lockRef.current],(e.shards||[]).map(Uf),!0).filter(Boolean);return p.forEach(function(m){return m.classList.add("allow-interactivity-".concat(h))}),function(){document.body.classList.remove("block-interactivity-".concat(h)),p.forEach(function(m){return m.classList.remove("allow-interactivity-".concat(h))})}}},[e.inert,e.lockRef.current,e.shards]);var g=W.useCallback(function(p,m){if("touches"in p&&p.touches.length===2||p.type==="wheel"&&p.ctrlKey)return!d.current.allowPinchZoom;var v=Xs(p),b=n.current,_="deltaX"in p?p.deltaX:b[0]-v[0],S="deltaY"in p?p.deltaY:b[1]-v[1],w,y=p.target,C=Math.abs(_)>Math.abs(S)?"h":"v";if("touches"in p&&C==="h"&&y.type==="range")return!1;var M=jf(C,y);if(!M)return!0;if(M?w=C:(w=C==="v"?"h":"v",M=jf(C,y)),!M)return!1;if(!r.current&&"changedTouches"in p&&(_||S)&&(r.current=w),!w)return!0;var E=r.current||w;return X0(E,m,p,E==="h"?_:S,!0)},[]),c=W.useCallback(function(p){var m=p;if(!(!Xr.length||Xr[Xr.length-1]!==i)){var v="deltaY"in m?Bf(m):Xs(m),b=t.current.filter(function(w){return w.name===m.type&&(w.target===m.target||m.target===w.shadowParent)&&J0(w.delta,v)})[0];if(b&&b.should){m.cancelable&&m.preventDefault();return}if(!b){var _=(d.current.shards||[]).map(Uf).filter(Boolean).filter(function(w){return w.contains(m.target)}),S=_.length>0?g(m,_[0]):!d.current.noIsolation;S&&m.cancelable&&m.preventDefault()}}},[]),f=W.useCallback(function(p,m,v,b){var _={name:p,delta:m,target:v,should:b,shadowParent:rb(v)};t.current.push(_),setTimeout(function(){t.current=t.current.filter(function(S){return S!==_})},1)},[]),s=W.useCallback(function(p){n.current=Xs(p),r.current=void 0},[]),o=W.useCallback(function(p){f(p.type,Bf(p),p.target,g(p,e.lockRef.current))},[]),a=W.useCallback(function(p){f(p.type,Xs(p),p.target,g(p,e.lockRef.current))},[]);W.useEffect(function(){return Xr.push(i),e.setCallbacks({onScrollCapture:o,onWheelCapture:o,onTouchMoveCapture:a}),document.addEventListener("wheel",c,Zr),document.addEventListener("touchmove",c,Zr),document.addEventListener("touchstart",s,Zr),function(){Xr=Xr.filter(function(p){return p!==i}),document.removeEventListener("wheel",c,Zr),document.removeEventListener("touchmove",c,Zr),document.removeEventListener("touchstart",s,Zr)}},[]);var l=e.removeScrollBar,u=e.inert;return W.createElement(W.Fragment,null,u?W.createElement(i,{styles:eb(h)}):null,l?W.createElement(V0,{gapMode:e.gapMode}):null)}function rb(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const ib=R0(Df,nb);var Gc=W.forwardRef(function(e,t){return W.createElement(qs,Jt({},e,{ref:t,sideCar:ib}))});Gc.classNames=qs.classNames;function Ze(e){return Object.keys(e)}function Kc(e){return e&&typeof e=="object"&&!Array.isArray(e)}function Yc(e,t){const n={...e},r=t;return Kc(e)&&Kc(t)&&Object.keys(t).forEach(h=>{Kc(r[h])&&h in e?n[h]=Yc(n[h],r[h]):n[h]=r[h]}),n}function ob(e){return e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function sb(e){var t;return typeof e!="string"||!e.includes("var(--mantine-scale)")?e:(t=e.match(/^calc\((.*?)\)$/))==null?void 0:t[1].split("*")[0].trim()}function Qc(e){const t=sb(e);return typeof t=="number"?t:typeof t=="string"?t.includes("calc")||t.includes("var")?t:t.includes("px")?Number(t.replace("px","")):t.includes("rem")?Number(t.replace("rem",""))*16:t.includes("em")?Number(t.replace("em",""))*16:Number(t):NaN}function qc(e){return e==="0rem"?"0rem":`calc(${e} * var(--mantine-scale))`}function Vf(e,{shouldScale:t=!1}={}){function n(r){if(r===0||r==="0")return`0${e}`;if(typeof r=="number"){const h=`${r/16}${e}`;return t?qc(h):h}if(typeof r=="string"){if(r===""||r.startsWith("calc(")||r.startsWith("clamp(")||r.includes("rgba("))return r;if(r.includes(","))return r.split(",").map(i=>n(i)).join(",");if(r.includes(" "))return r.split(" ").map(i=>n(i)).join(" ");if(r.includes(e))return t?qc(r):r;const h=r.replace("px","");if(!Number.isNaN(Number(h))){const i=`${Number(h)/16}${e}`;return t?qc(i):i}}return r}return n}const Y=Vf("rem",{shouldScale:!0}),ro=Vf("em");function Zc(e){return Object.keys(e).reduce((t,n)=>(e[n]!==void 0&&(t[n]=e[n]),t),{})}function Gf(e){return typeof e=="number"?!0:typeof e=="string"?e.startsWith("calc(")||e.startsWith("var(")||e.includes(" ")&&e.trim()!==""?!0:/[0-9]/.test(e.trim().replace("-","")[0]):!1}function io(e){const t=W.createContext(null);return[({children:n,value:r})=>G.jsx(t.Provider,{value:r,children:n}),()=>{const n=W.useContext(t);if(n===null)throw new Error(e);return n}]}function Kf(e,t){return n=>{if(typeof n!="string"||n.trim().length===0)throw new Error(t);return`${e}-${n}`}}function oo(e,t){let n=e;for(;(n=n.parentElement)&&!n.matches(t););return n}function ab(e,t,n){for(let r=e-1;r>=0;r-=1)if(!t[r].disabled)return r;if(n){for(let r=t.length-1;r>-1;r-=1)if(!t[r].disabled)return r}return e}function lb(e,t,n){for(let r=e+1;r{var u;n==null||n(g);const c=Array.from(((u=oo(g.currentTarget,e))==null?void 0:u.querySelectorAll(t))||[]).filter(p=>cb(g.currentTarget,p,e)),f=c.findIndex(p=>g.currentTarget===p),s=lb(f,c,r),o=ab(f,c,r),a=i==="rtl"?o:s,l=i==="rtl"?s:o;switch(g.key){case"ArrowRight":{d==="horizontal"&&(g.stopPropagation(),g.preventDefault(),c[a].focus(),h&&c[a].click());break}case"ArrowLeft":{d==="horizontal"&&(g.stopPropagation(),g.preventDefault(),c[l].focus(),h&&c[l].click());break}case"ArrowUp":{d==="vertical"&&(g.stopPropagation(),g.preventDefault(),c[o].focus(),h&&c[o].click());break}case"ArrowDown":{d==="vertical"&&(g.stopPropagation(),g.preventDefault(),c[s].focus(),h&&c[s].click());break}case"Home":{g.stopPropagation(),g.preventDefault(),!c[0].disabled&&c[0].focus();break}case"End":{g.stopPropagation(),g.preventDefault();const p=c.length-1;!c[p].disabled&&c[p].focus();break}}}}const hb={app:100,modal:200,popover:300,overlay:400,max:9999};function db(e){return hb[e]}function Jr(e,t="size",n=!0){if(e!==void 0)return Gf(e)?n?Y(e):e:`var(--${t}-${e})`}function so(e){return Jr(e,"mantine-spacing")}function Yf(e){return e===void 0?"var(--mantine-radius-default)":Jr(e,"mantine-radius")}function Qf(e){return Jr(e,"mantine-font-size")}function qf(e){return Jr(e,"mantine-line-height",!1)}function Xc(e,t){return e in t?Qc(t[e]):Qc(e)}function Zf(e,t){const n=e.map(r=>({value:r,px:Xc(r,t)}));return n.sort((r,h)=>r.px-h.px),n}function pb(){return`mantine-${Math.random().toString(36).slice(2,11)}`}function sr(e){const t=W.useRef(e);return W.useEffect(()=>{t.current=e}),W.useMemo(()=>(...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)},[])}function Js(e,t){const n=sr(e),r=W.useRef(0);return W.useEffect(()=>()=>window.clearTimeout(r.current),[]),W.useCallback((...h)=>{window.clearTimeout(r.current),r.current=window.setTimeout(()=>n(...h),t)},[n,t])}const Xf=["mousedown","touchstart"];function fb(e,t,n){const r=W.useRef();return W.useEffect(()=>{const h=i=>{const{target:d}=i??{};if(Array.isArray(n)){const g=(d==null?void 0:d.hasAttribute("data-ignore-outside-clicks"))||!document.body.contains(d)&&d.tagName!=="HTML";n.every(c=>!!c&&!i.composedPath().includes(c))&&!g&&e()}else r.current&&!r.current.contains(d)&&e()};return Xf.forEach(i=>document.addEventListener(i,h)),()=>{Xf.forEach(i=>document.removeEventListener(i,h))}},[r,e,n]),r}function gb(e,t){try{return e.addEventListener("change",t),()=>e.removeEventListener("change",t)}catch{return e.addListener(t),()=>e.removeListener(t)}}function mb(e,t){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(e).matches:!1}function vb(e,t,{getInitialValueInEffect:n}={getInitialValueInEffect:!0}){const[r,h]=W.useState(n?t:mb(e)),i=W.useRef();return W.useEffect(()=>{if("matchMedia"in window)return i.current=window.matchMedia(e),h(i.current.matches),gb(i.current,d=>h(d.matches))},[e]),r}function yb(e,t,n={leading:!1}){const[r,h]=W.useState(e),i=W.useRef(null),d=W.useRef(!0),g=()=>window.clearTimeout(i.current);W.useEffect(()=>g,[]);const c=W.useCallback(f=>{g(),d.current&&n.leading?h(f):i.current=window.setTimeout(()=>{d.current=!0,h(f)},t),d.current=!1},[n.leading]);return[r,c]}const ao=typeof document<"u"?W.useLayoutEffect:W.useEffect;function bb(e,t){const n=W.useRef(!1);W.useEffect(()=>()=>{n.current=!1},[]),W.useEffect(()=>{if(n.current)return e();n.current=!0},t)}const wb=xh.useId||(()=>{});function xb(){const e=wb();return e?`mantine-${e.replace(/:/g,"")}`:""}function Sb(e){const t=xb(),[n,r]=W.useState(t);return ao(()=>{r(pb())},[]),typeof e=="string"?e:typeof window>"u"?t:n}function Jc(e,t,n){W.useEffect(()=>(window.addEventListener(e,t,n),()=>window.removeEventListener(e,t,n)),[e,t])}function $b(e,t){typeof e=="function"?e(t):typeof e=="object"&&e!==null&&"current"in e&&(e.current=t)}function Cb(...e){return t=>{e.forEach(n=>$b(n,t))}}function ar(...e){return W.useCallback(Cb(...e),e)}function kb({value:e,defaultValue:t,finalValue:n,onChange:r=()=>{}}){const[h,i]=W.useState(t!==void 0?t:n);return e!==void 0?[e,r,!0]:[h,(g,...c)=>{i(g),r==null||r(g,...c)},!1]}function Jf(e,t){return vb("(prefers-reduced-motion: reduce)",e,t)}const _b=e=>e<.5?2*e*e:-1+(4-2*e)*e,Mb=({axis:e,target:t,parent:n,alignment:r,offset:h,isList:i})=>{if(!t||!n&&typeof document>"u")return 0;const d=!!n,g=(n||document.body).getBoundingClientRect(),c=t.getBoundingClientRect(),f=s=>c[s]-g[s];if(e==="y"){const s=f("top");if(s===0)return 0;if(r==="start"){const a=s-h;return a<=c.height*(i?0:1)||!i?a:0}const o=d?g.height:window.innerHeight;if(r==="end"){const a=s+h-o+c.height;return a>=-c.height*(i?0:1)||!i?a:0}return r==="center"?s-o/2+c.height/2:0}if(e==="x"){const s=f("left");if(s===0)return 0;if(r==="start"){const a=s-h;return a<=c.width||!i?a:0}const o=d?g.width:window.innerWidth;if(r==="end"){const a=s+h-o+c.width;return a>=-c.width||!i?a:0}return r==="center"?s-o/2+c.width/2:0}return 0},Ab=({axis:e,parent:t})=>{if(!t&&typeof document>"u")return 0;const n=e==="y"?"scrollTop":"scrollLeft";if(t)return t[n];const{body:r,documentElement:h}=document;return r[n]+h[n]},Tb=({axis:e,parent:t,distance:n})=>{if(!t&&typeof document>"u")return;const r=e==="y"?"scrollTop":"scrollLeft";if(t)t[r]=n;else{const{body:h,documentElement:i}=document;h[r]=n,i[r]=n}};function Eb({duration:e=1250,axis:t="y",onScrollFinish:n,easing:r=_b,offset:h=0,cancelable:i=!0,isList:d=!1}={}){const g=W.useRef(0),c=W.useRef(0),f=W.useRef(!1),s=W.useRef(null),o=W.useRef(null),a=Jf(),l=()=>{g.current&&cancelAnimationFrame(g.current)},u=W.useCallback(({alignment:m="start"}={})=>{f.current=!1,g.current&&l();const v=Ab({parent:s.current,axis:t})??0,b=Mb({parent:s.current,target:o.current,axis:t,alignment:m,offset:h,isList:d})-(s.current?0:v);function _(){c.current===0&&(c.current=performance.now());const S=performance.now()-c.current,w=a||e===0?1:S/e,y=v+b*r(w);Tb({parent:s.current,axis:t,distance:y}),!f.current&&w<1?g.current=requestAnimationFrame(_):(typeof n=="function"&&n(),c.current=0,g.current=0,l())}_()},[t,e,r,d,h,n,a]),p=()=>{i&&(f.current=!0)};return Jc("wheel",p,{passive:!0}),Jc("touchmove",p,{passive:!0}),W.useEffect(()=>l,[]),{scrollableRef:s,targetRef:o,scrollIntoView:u,cancel:l}}function eg(){const e=window.document;return e.fullscreenElement||e.webkitFullscreenElement||e.mozFullScreenElement||e.msFullscreenElement}function Lb(){const e=window.document;return typeof e.exitFullscreen=="function"?e.exitFullscreen():typeof e.msExitFullscreen=="function"?e.msExitFullscreen():typeof e.webkitExitFullscreen=="function"?e.webkitExitFullscreen():typeof e.mozCancelFullScreen=="function"?e.mozCancelFullScreen():null}function Rb(e){var n,r,h,i,d;const t=e;return((n=t.requestFullscreen)==null?void 0:n.call(t))||((r=t.msRequestFullscreen)==null?void 0:r.call(t))||((h=t.webkitEnterFullscreen)==null?void 0:h.call(t))||((i=t.webkitRequestFullscreen)==null?void 0:i.call(t))||((d=t.mozRequestFullscreen)==null?void 0:d.call(t))}const tg=["","webkit","moz","ms"];function ng(e,{onFullScreen:t,onError:n}){return tg.forEach(r=>{e.addEventListener(`${r}fullscreenchange`,t),e.addEventListener(`${r}fullscreenerror`,n)}),()=>{tg.forEach(r=>{e.removeEventListener(`${r}fullscreenchange`,t),e.removeEventListener(`${r}fullscreenerror`,n)})}}function Nb(){const[e,t]=W.useState(!1),n=W.useRef(),r=W.useCallback(g=>{t(g.target===eg())},[t]),h=W.useCallback(g=>{t(!1),console.error(`[@mantine/hooks] use-fullscreen: Error attempting full-screen mode method: ${g} (${g.target})`)},[t]),i=W.useCallback(async()=>{eg()?await Lb():await Rb(n.current)},[]),d=W.useCallback(g=>{g===null?n.current=window.document.documentElement:n.current=g},[]);return W.useEffect(()=>{if(!n.current&&window.document)return n.current=window.document.documentElement,ng(n.current,{onFullScreen:r,onError:h});if(n.current)return ng(n.current,{onFullScreen:r,onError:h})},[]),{ref:d,toggle:i,fullscreen:e}}function rg(e){const t=new Map;return(...n)=>{const r=JSON.stringify(n);if(t.has(r))return t.get(r);const h=e(...n);return t.set(r,h),h}}function ig(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var h=e.length;for(t=0;t{Object.entries(n).forEach(([r,h])=>{t[r]?t[r]=hn(t[r],h):t[r]=h})}),t}function eu({theme:e,classNames:t,props:n,stylesCtx:r}){const h=(Array.isArray(t)?t:[t]).map(i=>typeof i=="function"?i(e,n,r):i||Ib);return Ob(h)}function tu({theme:e,styles:t,props:n,stylesCtx:r}){return(Array.isArray(t)?t:[t]).reduce((h,i)=>typeof i=="function"?{...h,...i(e,n,r)}:{...h,...i},{})}const og=W.createContext(null);function Pn(){const e=W.useContext(og);if(!e)throw new Error("[@mantine/core] MantineProvider was not found in tree");return e}function Db(){return Pn().cssVariablesResolver}function zb(){return Pn().classNamesPrefix}function nu(){return Pn().getStyleNonce}function Fb(){return Pn().withStaticClasses}function Pb(){return Pn().headless}function jb(){var e;return(e=Pn().stylesTransform)==null?void 0:e.sx}function Wb(){var e;return(e=Pn().stylesTransform)==null?void 0:e.styles}function Hb(e){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(e)}function Bb(e){let t=e.replace("#","");if(t.length===3){const d=t.split("");t=[d[0],d[0],d[1],d[1],d[2],d[2]].join("")}if(t.length===8){const d=parseInt(t.slice(6,8),16)/255;return{r:parseInt(t.slice(0,2),16),g:parseInt(t.slice(2,4),16),b:parseInt(t.slice(4,6),16),a:d}}const n=parseInt(t,16),r=n>>16&255,h=n>>8&255,i=n&255;return{r,g:h,b:i,a:1}}function Ub(e){const[t,n,r,h]=e.replace(/[^0-9,./]/g,"").split(/[/,]/).map(Number);return{r:t,g:n,b:r,a:h||1}}function Vb(e){const t=/^hsla?\(\s*(\d+)\s*,\s*(\d+%)\s*,\s*(\d+%)\s*(,\s*(0?\.\d+|\d+(\.\d+)?))?\s*\)$/i,n=e.match(t);if(!n)return{r:0,g:0,b:0,a:1};const r=parseInt(n[1],10),h=parseInt(n[2],10)/100,i=parseInt(n[3],10)/100,d=n[5]?parseFloat(n[5]):void 0,g=(1-Math.abs(2*i-1))*h,c=r/60,f=g*(1-Math.abs(c%2-1)),s=i-g/2;let o,a,l;return c>=0&&c<1?(o=g,a=f,l=0):c>=1&&c<2?(o=f,a=g,l=0):c>=2&&c<3?(o=0,a=g,l=f):c>=3&&c<4?(o=0,a=f,l=g):c>=4&&c<5?(o=f,a=0,l=g):(o=g,a=0,l=f),{r:Math.round((o+s)*255),g:Math.round((a+s)*255),b:Math.round((l+s)*255),a:d||1}}function ru(e){return Hb(e)?Bb(e):e.startsWith("rgb")?Ub(e):e.startsWith("hsl")?Vb(e):{r:0,g:0,b:0,a:1}}function ea(e,t){if(e.startsWith("var("))return`color-mix(in srgb, ${e}, black ${t*100}%)`;const{r:n,g:r,b:h,a:i}=ru(e),d=1-t,g=c=>Math.round(c*d);return`rgba(${g(n)}, ${g(r)}, ${g(h)}, ${i})`}function lo(e,t){return typeof e.primaryShade=="number"?e.primaryShade:t==="dark"?e.primaryShade.dark:e.primaryShade.light}function iu(e){return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function Gb(e){const t=e.match(/oklch\((.*?)%\s/);return t?parseFloat(t[1]):null}function Kb(e){if(e.startsWith("oklch("))return(Gb(e)||0)/100;const{r:t,g:n,b:r}=ru(e),h=t/255,i=n/255,d=r/255,g=iu(h),c=iu(i),f=iu(d);return .2126*g+.7152*c+.0722*f}function co(e,t=.179){return e.startsWith("var(")?!1:Kb(e)>t}function uo({color:e,theme:t,colorScheme:n}){if(typeof e!="string")throw new Error(`[@mantine/core] Failed to parse color. Expected color to be a string, instead got ${typeof e}`);if(e==="bright")return{color:e,value:n==="dark"?t.white:t.black,shade:void 0,isThemeColor:!1,isLight:co(n==="dark"?t.white:t.black,t.luminanceThreshold),variable:"--mantine-color-bright"};if(e==="dimmed")return{color:e,value:n==="dark"?t.colors.dark[2]:t.colors.gray[7],shade:void 0,isThemeColor:!1,isLight:co(n==="dark"?t.colors.dark[2]:t.colors.gray[6],t.luminanceThreshold),variable:"--mantine-color-dimmed"};if(e==="white"||e==="black")return{color:e,value:e==="white"?t.white:t.black,shade:void 0,isThemeColor:!1,isLight:co(e==="white"?t.white:t.black,t.luminanceThreshold),variable:`--mantine-color-${e}`};const[r,h]=e.split("."),i=h?Number(h):void 0,d=r in t.colors;if(d){const g=i!==void 0?t.colors[r][i]:t.colors[r][lo(t,n||"light")];return{color:r,value:g,shade:i,isThemeColor:d,isLight:co(g,t.luminanceThreshold),variable:h?`--mantine-color-${r}-${i}`:`--mantine-color-${r}-filled`}}return{color:e,value:e,isThemeColor:d,isLight:co(e,t.luminanceThreshold),shade:i,variable:void 0}}function ei(e,t){const n=uo({color:e||t.primaryColor,theme:t});return n.variable?`var(${n.variable})`:e}function ou(e,t){const n={from:(e==null?void 0:e.from)||t.defaultGradient.from,to:(e==null?void 0:e.to)||t.defaultGradient.to,deg:(e==null?void 0:e.deg)||t.defaultGradient.deg||0},r=ei(n.from,t),h=ei(n.to,t);return`linear-gradient(${n.deg}deg, ${r} 0%, ${h} 100%)`}function dn(e,t){if(typeof e!="string"||t>1||t<0)return"rgba(0, 0, 0, 1)";if(e.startsWith("var(")){const i=(1-t)*100;return`color-mix(in srgb, ${e}, transparent ${i}%)`}if(e.startsWith("oklch"))return e.includes("/")?e.replace(/\/\s*[\d.]+\s*\)/,`/ ${t})`):e.replace(")",` / ${t})`);const{r:n,g:r,b:h}=ru(e);return`rgba(${n}, ${r}, ${h}, ${t})`}const ti=dn,Yb=({color:e,theme:t,variant:n,gradient:r,autoContrast:h})=>{const i=uo({color:e,theme:t}),d=typeof h=="boolean"?h:t.autoContrast;if(n==="filled"){const g=d&&i.isLight?"var(--mantine-color-black)":"var(--mantine-color-white)";return i.isThemeColor?i.shade===void 0?{background:`var(--mantine-color-${e}-filled)`,hover:`var(--mantine-color-${e}-filled-hover)`,color:g,border:`${Y(1)} solid transparent`}:{background:`var(--mantine-color-${i.color}-${i.shade})`,hover:`var(--mantine-color-${i.color}-${i.shade===9?8:i.shade+1})`,color:g,border:`${Y(1)} solid transparent`}:{background:e,hover:ea(e,.1),color:g,border:`${Y(1)} solid transparent`}}if(n==="light"){if(i.isThemeColor){if(i.shade===void 0)return{background:`var(--mantine-color-${e}-light)`,hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${Y(1)} solid transparent`};const g=t.colors[i.color][i.shade];return{background:dn(g,.1),hover:dn(g,.12),color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${Y(1)} solid transparent`}}return{background:dn(e,.1),hover:dn(e,.12),color:e,border:`${Y(1)} solid transparent`}}if(n==="outline")return i.isThemeColor?i.shade===void 0?{background:"transparent",hover:`var(--mantine-color-${e}-outline-hover)`,color:`var(--mantine-color-${e}-outline)`,border:`${Y(1)} solid var(--mantine-color-${e}-outline)`}:{background:"transparent",hover:dn(t.colors[i.color][i.shade],.05),color:`var(--mantine-color-${i.color}-${i.shade})`,border:`${Y(1)} solid var(--mantine-color-${i.color}-${i.shade})`}:{background:"transparent",hover:dn(e,.05),color:e,border:`${Y(1)} solid ${e}`};if(n==="subtle"){if(i.isThemeColor){if(i.shade===void 0)return{background:"transparent",hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${Y(1)} solid transparent`};const g=t.colors[i.color][i.shade];return{background:"transparent",hover:dn(g,.12),color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${Y(1)} solid transparent`}}return{background:"transparent",hover:dn(e,.12),color:e,border:`${Y(1)} solid transparent`}}return n==="transparent"?i.isThemeColor?i.shade===void 0?{background:"transparent",hover:"transparent",color:`var(--mantine-color-${e}-light-color)`,border:`${Y(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${Y(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:e,border:`${Y(1)} solid transparent`}:n==="white"?i.isThemeColor?i.shade===void 0?{background:"var(--mantine-color-white)",hover:ea(t.white,.01),color:`var(--mantine-color-${e}-filled)`,border:`${Y(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:ea(t.white,.01),color:`var(--mantine-color-${i.color}-${i.shade})`,border:`${Y(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:ea(t.white,.01),color:e,border:`${Y(1)} solid transparent`}:n==="gradient"?{background:ou(r,t),hover:ou(r,t),color:"var(--mantine-color-white)",border:"none"}:n==="default"?{background:"var(--mantine-color-default)",hover:"var(--mantine-color-default-hover)",color:"var(--mantine-color-default-color)",border:`${Y(1)} solid var(--mantine-color-default-border)`}:{}},Qb={dark:["#C9C9C9","#b8b8b8","#828282","#696969","#424242","#3b3b3b","#2e2e2e","#242424","#1f1f1f","#141414"],gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},sg="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",ta={scale:1,fontSmoothing:!0,focusRing:"auto",white:"#fff",black:"#000",colors:Qb,primaryShade:{light:6,dark:8},primaryColor:"blue",variantColorResolver:Yb,autoContrast:!1,luminanceThreshold:.3,fontFamily:sg,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",respectReducedMotion:!1,cursorType:"default",defaultGradient:{from:"blue",to:"cyan",deg:45},defaultRadius:"sm",activeClassName:"mantine-active",focusClassName:"",headings:{fontFamily:sg,fontWeight:"700",textWrap:"wrap",sizes:{h1:{fontSize:Y(34),lineHeight:"1.3"},h2:{fontSize:Y(26),lineHeight:"1.35"},h3:{fontSize:Y(22),lineHeight:"1.4"},h4:{fontSize:Y(18),lineHeight:"1.45"},h5:{fontSize:Y(16),lineHeight:"1.5"},h6:{fontSize:Y(14),lineHeight:"1.5"}}},fontSizes:{xs:Y(12),sm:Y(14),md:Y(16),lg:Y(18),xl:Y(20)},lineHeights:{xs:"1.4",sm:"1.45",md:"1.55",lg:"1.6",xl:"1.65"},radius:{xs:Y(2),sm:Y(4),md:Y(8),lg:Y(16),xl:Y(32)},spacing:{xs:Y(10),sm:Y(12),md:Y(16),lg:Y(20),xl:Y(32)},breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},shadows:{xs:`0 ${Y(1)} ${Y(3)} rgba(0, 0, 0, 0.05), 0 ${Y(1)} ${Y(2)} rgba(0, 0, 0, 0.1)`,sm:`0 ${Y(1)} ${Y(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Y(10)} ${Y(15)} ${Y(-5)}, rgba(0, 0, 0, 0.04) 0 ${Y(7)} ${Y(7)} ${Y(-5)}`,md:`0 ${Y(1)} ${Y(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Y(20)} ${Y(25)} ${Y(-5)}, rgba(0, 0, 0, 0.04) 0 ${Y(10)} ${Y(10)} ${Y(-5)}`,lg:`0 ${Y(1)} ${Y(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Y(28)} ${Y(23)} ${Y(-7)}, rgba(0, 0, 0, 0.04) 0 ${Y(12)} ${Y(12)} ${Y(-7)}`,xl:`0 ${Y(1)} ${Y(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${Y(36)} ${Y(28)} ${Y(-7)}, rgba(0, 0, 0, 0.04) 0 ${Y(17)} ${Y(17)} ${Y(-7)}`},other:{},components:{}};function ag(e){return e==="auto"||e==="dark"||e==="light"}function qb({key:e="mantine-color-scheme-value"}={}){let t;return{get:n=>{if(typeof window>"u")return n;try{const r=window.localStorage.getItem(e);return ag(r)?r:n}catch{return n}},set:n=>{try{window.localStorage.setItem(e,n)}catch(r){console.warn("[@mantine/core] Local storage color scheme manager was unable to save color scheme.",r)}},subscribe:n=>{t=r=>{r.storageArea===window.localStorage&&r.key===e&&ag(r.newValue)&&n(r.newValue)},window.addEventListener("storage",t)},unsubscribe:()=>{window.removeEventListener("storage",t)},clear:()=>{window.localStorage.removeItem(e)}}}const Zb="[@mantine/core] MantineProvider: Invalid theme.primaryColor, it accepts only key of theme.colors, learn more \u2013 https://mantine.dev/theming/colors/#primary-color",lg="[@mantine/core] MantineProvider: Invalid theme.primaryShade, it accepts only 0-9 integers or an object { light: 0-9, dark: 0-9 }";function su(e){return e<0||e>9?!1:parseInt(e.toString(),10)===e}function cg(e){if(!(e.primaryColor in e.colors))throw new Error(Zb);if(typeof e.primaryShade=="object"&&(!su(e.primaryShade.dark)||!su(e.primaryShade.light)))throw new Error(lg);if(typeof e.primaryShade=="number"&&!su(e.primaryShade))throw new Error(lg)}function ug(e,t){var r;if(!t)return cg(e),e;const n=Yc(e,t);return t.fontFamily&&!((r=t.headings)!=null&&r.fontFamily)&&(n.headings.fontFamily=t.fontFamily),cg(n),n}const au=W.createContext(null),Xb=()=>W.useContext(au)||ta;function pn(){const e=W.useContext(au);if(!e)throw new Error("@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app");return e}function hg({theme:e,children:t,inherit:n=!0}){const r=Xb(),h=W.useMemo(()=>ug(n?r:ta,e),[e,r,n]);return G.jsx(au.Provider,{value:h,children:t})}hg.displayName="@mantine/core/MantineThemeProvider";function Jb(){const e=pn(),t=nu(),n=Ze(e.breakpoints).reduce((r,h)=>{const i=e.breakpoints[h].includes("px"),d=Qc(e.breakpoints[h]),g=i?`${d-.1}px`:ro(d-.1),c=i?`${d}px`:ro(d);return`${r}@media (max-width: ${g}) {.mantine-visible-from-${h} {display: none !important;}}@media (min-width: ${c}) {.mantine-hidden-from-${h} {display: none !important;}}`},"");return G.jsx("style",{"data-mantine-styles":"classes",nonce:t==null?void 0:t(),dangerouslySetInnerHTML:{__html:n}})}function lu(e){return Object.entries(e).map(([t,n])=>`${t}: ${n};`).join("")}function cu(e,t){return(Array.isArray(e)?e:[e]).reduce((n,r)=>`${r}{${n}}`,t)}function ew(e,t){const n=lu(e.variables),r=n?cu(t,n):"",h=lu(e.dark),i=lu(e.light),d=h?cu(t===":host"?`${t}([data-mantine-color-scheme="dark"])`:`${t}[data-mantine-color-scheme="dark"]`,h):"",g=i?cu(t===":host"?`${t}([data-mantine-color-scheme="light"])`:`${t}[data-mantine-color-scheme="light"]`,i):"";return`${r}${d}${g}`}function dg({color:e,theme:t,autoContrast:n}){return(typeof n=="boolean"?n:t.autoContrast)&&uo({color:e||t.primaryColor,theme:t}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function pg(e,t){return dg({color:e.colors[e.primaryColor][lo(e,t)],theme:e,autoContrast:null})}function na({theme:e,color:t,colorScheme:n,name:r=t,withColorValues:h=!0}){if(!e.colors[t])return{};if(n==="light"){const g=lo(e,"light"),c={[`--mantine-color-${r}-text`]:`var(--mantine-color-${r}-filled)`,[`--mantine-color-${r}-filled`]:`var(--mantine-color-${r}-${g})`,[`--mantine-color-${r}-filled-hover`]:`var(--mantine-color-${r}-${g===9?8:g+1})`,[`--mantine-color-${r}-light`]:ti(e.colors[t][g],.1),[`--mantine-color-${r}-light-hover`]:ti(e.colors[t][g],.12),[`--mantine-color-${r}-light-color`]:`var(--mantine-color-${r}-${g})`,[`--mantine-color-${r}-outline`]:`var(--mantine-color-${r}-${g})`,[`--mantine-color-${r}-outline-hover`]:ti(e.colors[t][g],.05)};return h?{[`--mantine-color-${r}-0`]:e.colors[t][0],[`--mantine-color-${r}-1`]:e.colors[t][1],[`--mantine-color-${r}-2`]:e.colors[t][2],[`--mantine-color-${r}-3`]:e.colors[t][3],[`--mantine-color-${r}-4`]:e.colors[t][4],[`--mantine-color-${r}-5`]:e.colors[t][5],[`--mantine-color-${r}-6`]:e.colors[t][6],[`--mantine-color-${r}-7`]:e.colors[t][7],[`--mantine-color-${r}-8`]:e.colors[t][8],[`--mantine-color-${r}-9`]:e.colors[t][9],...c}:c}const i=lo(e,"dark"),d={[`--mantine-color-${r}-text`]:`var(--mantine-color-${r}-4)`,[`--mantine-color-${r}-filled`]:`var(--mantine-color-${r}-${i})`,[`--mantine-color-${r}-filled-hover`]:`var(--mantine-color-${r}-${i===9?8:i+1})`,[`--mantine-color-${r}-light`]:ti(e.colors[t][Math.max(0,i-2)],.15),[`--mantine-color-${r}-light-hover`]:ti(e.colors[t][Math.max(0,i-2)],.2),[`--mantine-color-${r}-light-color`]:`var(--mantine-color-${r}-${Math.max(i-5,0)})`,[`--mantine-color-${r}-outline`]:`var(--mantine-color-${r}-${Math.max(i-4,0)})`,[`--mantine-color-${r}-outline-hover`]:ti(e.colors[t][Math.max(i-4,0)],.05)};return h?{[`--mantine-color-${r}-0`]:e.colors[t][0],[`--mantine-color-${r}-1`]:e.colors[t][1],[`--mantine-color-${r}-2`]:e.colors[t][2],[`--mantine-color-${r}-3`]:e.colors[t][3],[`--mantine-color-${r}-4`]:e.colors[t][4],[`--mantine-color-${r}-5`]:e.colors[t][5],[`--mantine-color-${r}-6`]:e.colors[t][6],[`--mantine-color-${r}-7`]:e.colors[t][7],[`--mantine-color-${r}-8`]:e.colors[t][8],[`--mantine-color-${r}-9`]:e.colors[t][9],...d}:d}function tw(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function ni(e,t,n){Ze(t).forEach(r=>Object.assign(e,{[`--mantine-${n}-${r}`]:t[r]}))}const fg=e=>{const t=lo(e,"light"),n=e.defaultRadius in e.radius?e.radius[e.defaultRadius]:Y(e.defaultRadius),r={variables:{"--mantine-scale":e.scale.toString(),"--mantine-cursor-type":e.cursorType,"--mantine-color-scheme":"light dark","--mantine-webkit-font-smoothing":e.fontSmoothing?"antialiased":"unset","--mantine-moz-font-smoothing":e.fontSmoothing?"grayscale":"unset","--mantine-color-white":e.white,"--mantine-color-black":e.black,"--mantine-line-height":e.lineHeights.md,"--mantine-font-family":e.fontFamily,"--mantine-font-family-monospace":e.fontFamilyMonospace,"--mantine-font-family-headings":e.headings.fontFamily,"--mantine-heading-font-weight":e.headings.fontWeight,"--mantine-heading-text-wrap":e.headings.textWrap,"--mantine-radius-default":n,"--mantine-primary-color-filled":`var(--mantine-color-${e.primaryColor}-filled)`,"--mantine-primary-color-filled-hover":`var(--mantine-color-${e.primaryColor}-filled-hover)`,"--mantine-primary-color-light":`var(--mantine-color-${e.primaryColor}-light)`,"--mantine-primary-color-light-hover":`var(--mantine-color-${e.primaryColor}-light-hover)`,"--mantine-primary-color-light-color":`var(--mantine-color-${e.primaryColor}-light-color)`},light:{"--mantine-primary-color-contrast":pg(e,"light"),"--mantine-color-bright":"var(--mantine-color-black)","--mantine-color-text":e.black,"--mantine-color-body":e.white,"--mantine-color-error":"var(--mantine-color-red-6)","--mantine-color-placeholder":"var(--mantine-color-gray-5)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-${t})`,"--mantine-color-default":"var(--mantine-color-white)","--mantine-color-default-hover":"var(--mantine-color-gray-0)","--mantine-color-default-color":"var(--mantine-color-black)","--mantine-color-default-border":"var(--mantine-color-gray-4)","--mantine-color-dimmed":"var(--mantine-color-gray-6)"},dark:{"--mantine-primary-color-contrast":pg(e,"dark"),"--mantine-color-bright":"var(--mantine-color-white)","--mantine-color-text":"var(--mantine-color-dark-0)","--mantine-color-body":"var(--mantine-color-dark-7)","--mantine-color-error":"var(--mantine-color-red-8)","--mantine-color-placeholder":"var(--mantine-color-dark-3)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-4)`,"--mantine-color-default":"var(--mantine-color-dark-6)","--mantine-color-default-hover":"var(--mantine-color-dark-5)","--mantine-color-default-color":"var(--mantine-color-white)","--mantine-color-default-border":"var(--mantine-color-dark-4)","--mantine-color-dimmed":"var(--mantine-color-dark-2)"}};ni(r.variables,e.breakpoints,"breakpoint"),ni(r.variables,e.spacing,"spacing"),ni(r.variables,e.fontSizes,"font-size"),ni(r.variables,e.lineHeights,"line-height"),ni(r.variables,e.shadows,"shadow"),ni(r.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((i,d)=>{r.variables[`--mantine-primary-color-${d}`]=`var(--mantine-color-${e.primaryColor}-${d})`}),Ze(e.colors).forEach(i=>{const d=e.colors[i];if(tw(d)){Object.assign(r.light,na({theme:e,name:d.name,color:d.light,colorScheme:"light",withColorValues:!0})),Object.assign(r.dark,na({theme:e,name:d.name,color:d.dark,colorScheme:"dark",withColorValues:!0}));return}d.forEach((g,c)=>{r.variables[`--mantine-color-${i}-${c}`]=g}),Object.assign(r.light,na({theme:e,color:i,colorScheme:"light",withColorValues:!1})),Object.assign(r.dark,na({theme:e,color:i,colorScheme:"dark",withColorValues:!1}))});const h=e.headings.sizes;return Ze(h).forEach(i=>{r.variables[`--mantine-${i}-font-size`]=h[i].fontSize,r.variables[`--mantine-${i}-line-height`]=h[i].lineHeight,r.variables[`--mantine-${i}-font-weight`]=h[i].fontWeight||e.headings.fontWeight}),r};function nw({theme:e,generator:t}){const n=fg(e),r=t==null?void 0:t(e);return r?Yc(n,r):n}const uu=fg(ta);function rw(e){const t={variables:{},light:{},dark:{}};return Ze(e.variables).forEach(n=>{uu.variables[n]!==e.variables[n]&&(t.variables[n]=e.variables[n])}),Ze(e.light).forEach(n=>{uu.light[n]!==e.light[n]&&(t.light[n]=e.light[n])}),Ze(e.dark).forEach(n=>{uu.dark[n]!==e.dark[n]&&(t.dark[n]=e.dark[n])}),t}function iw(e){return` + ${e}[data-mantine-color-scheme="dark"] { --mantine-color-scheme: dark; } + ${e}[data-mantine-color-scheme="light"] { --mantine-color-scheme: light; } +`}function gg({cssVariablesSelector:e,deduplicateCssVariables:t}){const n=pn(),r=nu(),h=Db(),i=nw({theme:n,generator:h}),d=e===":root"&&t,g=d?rw(i):i,c=ew(g,e);return c?G.jsx("style",{"data-mantine-styles":!0,nonce:r==null?void 0:r(),dangerouslySetInnerHTML:{__html:`${c}${d?"":iw(e)}`}}):null}gg.displayName="@mantine/CssVariables";function ow(){const e=console.error;console.error=(...t)=>{t.length>1&&typeof t[0]=="string"&&t[0].toLowerCase().includes("extra attributes from the server")&&typeof t[1]=="string"&&t[1].toLowerCase().includes("data-mantine-color-scheme")||e(...t)}}function ri(e,t){var r;const n=e!=="auto"?e:window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";(r=t())==null||r.setAttribute("data-mantine-color-scheme",n)}function sw({manager:e,defaultColorScheme:t,getRootElement:n,forceColorScheme:r}){const h=W.useRef(),[i,d]=W.useState(()=>e.get(t)),g=r||i,c=W.useCallback(s=>{r||(ri(s,n),d(s),e.set(s))},[e.set,g,r]),f=W.useCallback(()=>{d(t),ri(t,n),e.clear()},[e.clear,t]);return W.useEffect(()=>(e.subscribe(c),e.unsubscribe),[e.subscribe,e.unsubscribe]),ao(()=>{ri(e.get(t),n)},[]),W.useEffect(()=>{var o;if(r)return ri(r,n),()=>{};r===void 0&&ri(i,n),h.current=window.matchMedia("(prefers-color-scheme: dark)");const s=a=>{i==="auto"&&ri(a.matches?"dark":"light",n)};return(o=h.current)==null||o.addEventListener("change",s),()=>{var a;return(a=h.current)==null?void 0:a.removeEventListener("change",s)}},[i,r]),{colorScheme:g,setColorScheme:c,clearColorScheme:f}}function aw({respectReducedMotion:e,getRootElement:t}){ao(()=>{var n;e&&((n=t())==null||n.setAttribute("data-respect-reduced-motion","true"))},[e])}ow();function mg({theme:e,children:t,getStyleNonce:n,withStaticClasses:r=!0,withGlobalClasses:h=!0,deduplicateCssVariables:i=!0,withCssVariables:d=!0,cssVariablesSelector:g=":root",classNamesPrefix:c="mantine",colorSchemeManager:f=qb(),defaultColorScheme:s="light",getRootElement:o=()=>document.documentElement,cssVariablesResolver:a,forceColorScheme:l,stylesTransform:u}){const{colorScheme:p,setColorScheme:m,clearColorScheme:v}=sw({defaultColorScheme:s,forceColorScheme:l,manager:f,getRootElement:o});return aw({respectReducedMotion:(e==null?void 0:e.respectReducedMotion)||!1,getRootElement:o}),G.jsx(og.Provider,{value:{colorScheme:p,setColorScheme:m,clearColorScheme:v,getRootElement:o,classNamesPrefix:c,getStyleNonce:n,cssVariablesResolver:a,cssVariablesSelector:g,withStaticClasses:r,stylesTransform:u},children:G.jsxs(hg,{theme:e,children:[d&&G.jsx(gg,{cssVariablesSelector:g,deduplicateCssVariables:i}),h&&G.jsx(Jb,{}),t]})})}mg.displayName="@mantine/core/MantineProvider";const lw={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function cw({theme:e,options:t,unstyled:n}){return hn((t==null?void 0:t.focusable)&&!n&&(e.focusClassName||lw[e.focusRing]),(t==null?void 0:t.active)&&!n&&e.activeClassName)}function uw({selector:e,stylesCtx:t,options:n,props:r,theme:h}){return eu({theme:h,classNames:n==null?void 0:n.classNames,props:(n==null?void 0:n.props)||r,stylesCtx:t})[e]}function vg({selector:e,stylesCtx:t,theme:n,classNames:r,props:h}){return eu({theme:n,classNames:r,props:h,stylesCtx:t})[e]}function hw({rootSelector:e,selector:t,className:n}){return e===t?n:void 0}function dw({selector:e,classes:t,unstyled:n}){return n?void 0:t[e]}function pw({themeName:e,classNamesPrefix:t,selector:n,withStaticClass:r}){return r===!1?[]:e.map(h=>`${t}-${h}-${n}`)}function fw({themeName:e,theme:t,selector:n,props:r,stylesCtx:h}){return e.map(i=>{var d,g;return(g=eu({theme:t,classNames:(d=t.components[i])==null?void 0:d.classNames,props:r,stylesCtx:h}))==null?void 0:g[n]})}function gw({options:e,classes:t,selector:n,unstyled:r}){return e!=null&&e.variant&&!r?t[`${n}--${e.variant}`]:void 0}function mw({theme:e,options:t,themeName:n,selector:r,classNamesPrefix:h,classNames:i,classes:d,unstyled:g,className:c,rootSelector:f,props:s,stylesCtx:o,withStaticClasses:a,headless:l,transformedStyles:u}){return hn(cw({theme:e,options:t,unstyled:g||l}),fw({theme:e,themeName:n,selector:r,props:s,stylesCtx:o}),gw({options:t,classes:d,selector:r,unstyled:g}),vg({selector:r,stylesCtx:o,theme:e,classNames:i,props:s}),vg({selector:r,stylesCtx:o,theme:e,classNames:u,props:s}),uw({selector:r,stylesCtx:o,options:t,props:s,theme:e}),hw({rootSelector:f,selector:r,className:c}),dw({selector:r,classes:d,unstyled:g||l}),a&&!l&&pw({themeName:n,classNamesPrefix:h,selector:r,withStaticClass:t==null?void 0:t.withStaticClass}),t==null?void 0:t.className)}function vw({theme:e,themeName:t,props:n,stylesCtx:r,selector:h}){return t.map(i=>{var d;return tu({theme:e,styles:(d=e.components[i])==null?void 0:d.styles,props:n,stylesCtx:r})[h]}).reduce((i,d)=>({...i,...d}),{})}function hu({style:e,theme:t}){return Array.isArray(e)?[...e].reduce((n,r)=>({...n,...hu({style:r,theme:t})}),{}):typeof e=="function"?e(t):e??{}}function yw(e){return e.reduce((t,n)=>(n&&Object.keys(n).forEach(r=>{t[r]={...t[r],...Zc(n[r])}}),t),{})}function bw({vars:e,varsResolver:t,theme:n,props:r,stylesCtx:h,selector:i,themeName:d,headless:g}){var c;return(c=yw([g?{}:t==null?void 0:t(n,r,h),...d.map(f=>{var s,o,a;return(a=(o=(s=n.components)==null?void 0:s[f])==null?void 0:o.vars)==null?void 0:a.call(o,n,r,h)}),e==null?void 0:e(n,r,h)]))==null?void 0:c[i]}function ww({theme:e,themeName:t,selector:n,options:r,props:h,stylesCtx:i,rootSelector:d,styles:g,style:c,vars:f,varsResolver:s,headless:o,withStylesTransform:a}){return{...!a&&vw({theme:e,themeName:t,props:h,stylesCtx:i,selector:n}),...!a&&tu({theme:e,styles:g,props:h,stylesCtx:i})[n],...!a&&tu({theme:e,styles:r==null?void 0:r.styles,props:(r==null?void 0:r.props)||h,stylesCtx:i})[n],...bw({theme:e,props:h,stylesCtx:i,vars:f,varsResolver:s,selector:n,themeName:t,headless:o}),...d===n?hu({style:c,theme:e}):null,...hu({style:r==null?void 0:r.style,theme:e})}}function xw({props:e,stylesCtx:t,themeName:n}){var i;const r=pn(),h=(i=Wb())==null?void 0:i();return{getTransformedStyles:d=>h?[...d.map(g=>h(g,{props:e,theme:r,ctx:t})),...n.map(g=>{var c;return h((c=r.components[g])==null?void 0:c.styles,{props:e,theme:r,ctx:t})})].filter(Boolean):[],withStylesTransform:!!h}}function Et({name:e,classes:t,props:n,stylesCtx:r,className:h,style:i,rootSelector:d="root",unstyled:g,classNames:c,styles:f,vars:s,varsResolver:o}){const a=pn(),l=zb(),u=Fb(),p=Pb(),m=(Array.isArray(e)?e:[e]).filter(_=>_),{withStylesTransform:v,getTransformedStyles:b}=xw({props:n,stylesCtx:r,themeName:m});return(_,S)=>({className:mw({theme:a,options:S,themeName:m,selector:_,classNamesPrefix:l,classNames:c,classes:t,unstyled:g,className:h,rootSelector:d,props:n,stylesCtx:r,withStaticClasses:u,headless:p,transformedStyles:b([S==null?void 0:S.styles,f])}),style:ww({theme:a,themeName:m,selector:_,options:S,props:n,stylesCtx:r,rootSelector:d,styles:f,style:i,vars:s,varsResolver:o,headless:p,withStylesTransform:v})})}function Sw(e,t){return typeof e=="boolean"?e:t.autoContrast}function $e(e,t,n){var d;const r=pn(),h=(d=r.components[e])==null?void 0:d.defaultProps,i=typeof h=="function"?h(r):h;return{...t,...i,...Zc(n)}}function du(e){return Ze(e).reduce((t,n)=>e[n]!==void 0?`${t}${ob(n)}:${e[n]};`:t,"").trim()}function $w({selector:e,styles:t,media:n,container:r}){const h=t?du(t):"",i=Array.isArray(n)?n.map(g=>`@media${g.query}{${e}{${du(g.styles)}}}`):[],d=Array.isArray(r)?r.map(g=>`@container ${g.query}{${e}{${du(g.styles)}}}`):[];return`${h?`${e}{${h}}`:""}${i.join("")}${d.join("")}`.trim()}function yg(e){const t=nu();return G.jsx("style",{"data-mantine-styles":"inline",nonce:t==null?void 0:t(),dangerouslySetInnerHTML:{__html:$w(e)}})}function Cw(e){const{m:t,mx:n,my:r,mt:h,mb:i,ml:d,mr:g,me:c,ms:f,p:s,px:o,py:a,pt:l,pb:u,pl:p,pr:m,pe:v,ps:b,bd:_,bg:S,c:w,opacity:y,ff:C,fz:M,fw:E,lts:T,ta:L,lh:$,fs:k,tt:x,td:A,w:R,miw:I,maw:N,h:O,mih:D,mah:F,bgsz:B,bgp:j,bgr:P,bga:H,pos:U,top:K,left:q,bottom:X,right:ee,inset:se,display:le,flex:je,hiddenFrom:Re,visibleFrom:ye,lightHidden:Xe,darkHidden:Vt,sx:Gt,...fr}=e;return{styleProps:Zc({m:t,mx:n,my:r,mt:h,mb:i,ml:d,mr:g,me:c,ms:f,p:s,px:o,py:a,pt:l,pb:u,pl:p,pr:m,pe:v,ps:b,bd:_,bg:S,c:w,opacity:y,ff:C,fz:M,fw:E,lts:T,ta:L,lh:$,fs:k,tt:x,td:A,w:R,miw:I,maw:N,h:O,mih:D,mah:F,bgsz:B,bgp:j,bgr:P,bga:H,pos:U,top:K,left:q,bottom:X,right:ee,inset:se,display:le,flex:je,hiddenFrom:Re,visibleFrom:ye,lightHidden:Xe,darkHidden:Vt,sx:Gt}),rest:fr}}const kw={m:{type:"spacing",property:"margin"},mt:{type:"spacing",property:"marginTop"},mb:{type:"spacing",property:"marginBottom"},ml:{type:"spacing",property:"marginLeft"},mr:{type:"spacing",property:"marginRight"},ms:{type:"spacing",property:"marginInlineStart"},me:{type:"spacing",property:"marginInlineEnd"},mx:{type:"spacing",property:"marginInline"},my:{type:"spacing",property:"marginBlock"},p:{type:"spacing",property:"padding"},pt:{type:"spacing",property:"paddingTop"},pb:{type:"spacing",property:"paddingBottom"},pl:{type:"spacing",property:"paddingLeft"},pr:{type:"spacing",property:"paddingRight"},ps:{type:"spacing",property:"paddingInlineStart"},pe:{type:"spacing",property:"paddingInlineEnd"},px:{type:"spacing",property:"paddingInline"},py:{type:"spacing",property:"paddingBlock"},bd:{type:"border",property:"border"},bg:{type:"color",property:"background"},c:{type:"textColor",property:"color"},opacity:{type:"identity",property:"opacity"},ff:{type:"fontFamily",property:"fontFamily"},fz:{type:"fontSize",property:"fontSize"},fw:{type:"identity",property:"fontWeight"},lts:{type:"size",property:"letterSpacing"},ta:{type:"identity",property:"textAlign"},lh:{type:"lineHeight",property:"lineHeight"},fs:{type:"identity",property:"fontStyle"},tt:{type:"identity",property:"textTransform"},td:{type:"identity",property:"textDecoration"},w:{type:"spacing",property:"width"},miw:{type:"spacing",property:"minWidth"},maw:{type:"spacing",property:"maxWidth"},h:{type:"spacing",property:"height"},mih:{type:"spacing",property:"minHeight"},mah:{type:"spacing",property:"maxHeight"},bgsz:{type:"size",property:"backgroundSize"},bgp:{type:"identity",property:"backgroundPosition"},bgr:{type:"identity",property:"backgroundRepeat"},bga:{type:"identity",property:"backgroundAttachment"},pos:{type:"identity",property:"position"},top:{type:"identity",property:"top"},left:{type:"size",property:"left"},bottom:{type:"size",property:"bottom"},right:{type:"size",property:"right"},inset:{type:"size",property:"inset"},display:{type:"identity",property:"display"},flex:{type:"identity",property:"flex"}};function pu(e,t){const n=uo({color:e,theme:t});return n.color==="dimmed"?"var(--mantine-color-dimmed)":n.color==="bright"?"var(--mantine-color-bright)":n.variable?`var(${n.variable})`:n.color}function _w(e,t){const n=uo({color:e,theme:t});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:pu(e,t)}function Mw(e,t){if(typeof e=="number")return Y(e);if(typeof e=="string"){const[n,r,...h]=e.split(" ").filter(d=>d.trim()!=="");let i=`${Y(n)}`;return r&&(i+=` ${r}`),h.length>0&&(i+=` ${pu(h.join(" "),t)}`),i.trim()}return e}const bg={text:"var(--mantine-font-family)",mono:"var(--mantine-font-family-monospace)",monospace:"var(--mantine-font-family-monospace)",heading:"var(--mantine-font-family-headings)",headings:"var(--mantine-font-family-headings)"};function Aw(e){return typeof e=="string"&&e in bg?bg[e]:e}const Tw=["h1","h2","h3","h4","h5","h6"];function Ew(e,t){return typeof e=="string"&&e in t.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&Tw.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?Y(e):e}function Lw(e){return e}const Rw=["h1","h2","h3","h4","h5","h6"];function Nw(e,t){return typeof e=="string"&&e in t.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&Rw.includes(e)?`var(--mantine-${e}-line-height)`:e}function Iw(e){return typeof e=="number"?Y(e):e}function Ow(e,t){if(typeof e=="number")return Y(e);if(typeof e=="string"){const n=e.replace("-","");if(!(n in t.spacing))return Y(e);const r=`--mantine-spacing-${n}`;return e.startsWith("-")?`calc(var(${r}) * -1)`:`var(${r})`}return e}const fu={color:pu,textColor:_w,fontSize:Ew,spacing:Ow,identity:Lw,size:Iw,lineHeight:Nw,fontFamily:Aw,border:Mw};function wg(e){return e.replace("(min-width: ","").replace("em)","")}function Dw({media:e,...t}){const n=Object.keys(e).sort((r,h)=>Number(wg(r))-Number(wg(h))).map(r=>({query:r,styles:e[r]}));return{...t,media:n}}function zw(e){if(typeof e!="object"||e===null)return!1;const t=Object.keys(e);return!(t.length===1&&t[0]==="base")}function Fw(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function Pw(e){return typeof e=="object"&&e!==null?Ze(e).filter(t=>t!=="base"):[]}function jw(e,t){return typeof e=="object"&&e!==null&&t in e?e[t]:e}function Ww({styleProps:e,data:t,theme:n}){return Dw(Ze(e).reduce((r,h)=>{if(h==="hiddenFrom"||h==="visibleFrom"||h==="sx")return r;const i=t[h],d=Array.isArray(i.property)?i.property:[i.property],g=Fw(e[h]);if(!zw(e[h]))return d.forEach(f=>{r.inlineStyles[f]=fu[i.type](g,n)}),r;r.hasResponsiveStyles=!0;const c=Pw(e[h]);return d.forEach(f=>{g&&(r.styles[f]=fu[i.type](g,n)),c.forEach(s=>{const o=`(min-width: ${n.breakpoints[s]})`;r.media[o]={...r.media[o],[f]:fu[i.type](jw(e[h],s),n)}})}),r},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function Hw(){return`__m__-${W.useId().replace(/:/g,"")}`}function xg(e){return e.startsWith("data-")?e:`data-${e}`}function Bw(e){return Object.keys(e).reduce((t,n)=>{const r=e[n];return r===void 0||r===""||r===!1||r===null||(t[xg(n)]=e[n]),t},{})}function Sg(e){return e?typeof e=="string"?{[xg(e)]:!0}:Array.isArray(e)?[...e].reduce((t,n)=>({...t,...Sg(n)}),{}):Bw(e):null}function gu(e,t){return Array.isArray(e)?[...e].reduce((n,r)=>({...n,...gu(r,t)}),{}):typeof e=="function"?e(t):e??{}}function Uw({theme:e,style:t,vars:n,styleProps:r}){const h=gu(t,e),i=gu(n,e);return{...h,...i,...r}}const $g=W.forwardRef(({component:e,style:t,__vars:n,className:r,variant:h,mod:i,size:d,hiddenFrom:g,visibleFrom:c,lightHidden:f,darkHidden:s,renderRoot:o,__size:a,...l},u)=>{var C,M;const p=pn(),m=e||"div",{styleProps:v,rest:b}=Cw(l),_=(M=(C=jb())==null?void 0:C())==null?void 0:M(v.sx),S=Hw(),w=Ww({styleProps:v,theme:p,data:kw}),y={ref:u,style:Uw({theme:p,style:t,vars:n,styleProps:w.inlineStyles}),className:hn(r,_,{[S]:w.hasResponsiveStyles,"mantine-light-hidden":f,"mantine-dark-hidden":s,[`mantine-hidden-from-${g}`]:g,[`mantine-visible-from-${c}`]:c}),"data-variant":h,"data-size":Gf(d)?void 0:d||void 0,size:a,...Sg(i),...b};return G.jsxs(G.Fragment,{children:[w.hasResponsiveStyles&&G.jsx(yg,{selector:`.${S}`,styles:w.styles,media:w.media}),typeof o=="function"?o(y):G.jsx(m,{...y})]})});$g.displayName="@mantine/core/Box";const ge=$g;function Cg(e){return e}function Ge(e){const t=W.forwardRef(e);return t.extend=Cg,t.withProps=n=>{const r=W.forwardRef((h,i)=>G.jsx(t,{...n,...h,ref:i}));return r.extend=t.extend,r.displayName=`WithProps(${t.displayName})`,r},t}function ho(e){const t=W.forwardRef(e);return t.withProps=n=>{const r=W.forwardRef((h,i)=>G.jsx(t,{...n,...h,ref:i}));return r.extend=t.extend,r.displayName=`WithProps(${t.displayName})`,r},t.extend=Cg,t}const Vw=W.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function kg(){return W.useContext(Vw)}const[Gw,Lt]=io("ScrollArea.Root component was not found in tree");function ii(e,t){const n=sr(t);ao(()=>{let r=0;if(e){const h=new ResizeObserver(()=>{cancelAnimationFrame(r),r=window.requestAnimationFrame(n)});return h.observe(e),()=>{window.cancelAnimationFrame(r),h.unobserve(e)}}},[e,n])}const Kw=W.forwardRef((e,t)=>{const{style:n,...r}=e,h=Lt(),[i,d]=W.useState(0),[g,c]=W.useState(0),f=!!(i&&g);return ii(h.scrollbarX,()=>{var o;const s=((o=h.scrollbarX)==null?void 0:o.offsetHeight)||0;h.onCornerHeightChange(s),c(s)}),ii(h.scrollbarY,()=>{var o;const s=((o=h.scrollbarY)==null?void 0:o.offsetWidth)||0;h.onCornerWidthChange(s),d(s)}),f?G.jsx("div",{...r,ref:t,style:{...n,width:i,height:g}}):null}),Yw=W.forwardRef((e,t)=>{const n=Lt(),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&r?G.jsx(Kw,{...e,ref:t}):null}),Qw={scrollHideDelay:1e3,type:"hover"},_g=W.forwardRef((e,t)=>{const n=$e("ScrollAreaRoot",Qw,e),{type:r,scrollHideDelay:h,scrollbars:i,...d}=n,[g,c]=W.useState(null),[f,s]=W.useState(null),[o,a]=W.useState(null),[l,u]=W.useState(null),[p,m]=W.useState(null),[v,b]=W.useState(0),[_,S]=W.useState(0),[w,y]=W.useState(!1),[C,M]=W.useState(!1),E=ar(t,T=>c(T));return G.jsx(Gw,{value:{type:r,scrollHideDelay:h,scrollArea:g,viewport:f,onViewportChange:s,content:o,onContentChange:a,scrollbarX:l,onScrollbarXChange:u,scrollbarXEnabled:w,onScrollbarXEnabledChange:y,scrollbarY:p,onScrollbarYChange:m,scrollbarYEnabled:C,onScrollbarYEnabledChange:M,onCornerWidthChange:b,onCornerHeightChange:S},children:G.jsx(ge,{...d,ref:E,__vars:{"--sa-corner-width":i!=="xy"?"0px":`${v}px`,"--sa-corner-height":i!=="xy"?"0px":`${_}px`}})})});_g.displayName="@mantine/core/ScrollAreaRoot";function Mg(e,t){const n=e/t;return Number.isNaN(n)?0:n}function ra(e){const t=Mg(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function Ag(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function qw(e,[t,n]){return Math.min(n,Math.max(t,e))}function Tg(e,t,n="ltr"){const r=ra(t),h=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,i=t.scrollbar.size-h,d=t.content-t.viewport,g=i-r,c=n==="ltr"?[0,d]:[d*-1,0],f=qw(e,c);return Ag([0,d],[0,g])(f)}function Zw(e,t,n,r="ltr"){const h=ra(n),i=h/2,d=t||i,g=h-d,c=n.scrollbar.paddingStart+d,f=n.scrollbar.size-n.scrollbar.paddingEnd-g,s=n.content-n.viewport,o=r==="ltr"?[0,s]:[s*-1,0];return Ag([c,f],o)(e)}function Eg(e,t){return e>0&&e{e==null||e(r),(n===!1||!r.defaultPrevented)&&(t==null||t(r))}}const[Xw,Lg]=io("ScrollAreaScrollbar was not found in tree"),Rg=W.forwardRef((e,t)=>{const{sizes:n,hasThumb:r,onThumbChange:h,onThumbPointerUp:i,onThumbPointerDown:d,onThumbPositionChange:g,onDragScroll:c,onWheelScroll:f,onResize:s,...o}=e,a=Lt(),[l,u]=W.useState(null),p=ar(t,M=>u(M)),m=W.useRef(null),v=W.useRef(""),{viewport:b}=a,_=n.content-n.viewport,S=sr(f),w=sr(g),y=Js(s,10),C=M=>{if(m.current){const E=M.clientX-m.current.left,T=M.clientY-m.current.top;c({x:E,y:T})}};return W.useEffect(()=>{const M=E=>{const T=E.target;l!=null&&l.contains(T)&&S(E,_)};return document.addEventListener("wheel",M,{passive:!1}),()=>document.removeEventListener("wheel",M,{passive:!1})},[b,l,_,S]),W.useEffect(w,[n,w]),ii(l,y),ii(a.content,y),G.jsx(Xw,{value:{scrollbar:l,hasThumb:r,onThumbChange:sr(h),onThumbPointerUp:sr(i),onThumbPositionChange:w,onThumbPointerDown:sr(d)},children:G.jsx("div",{...o,ref:p,"data-mantine-scrollbar":!0,style:{position:"absolute",...o.style},onPointerDown:lr(e.onPointerDown,M=>{M.preventDefault(),M.button===0&&(M.target.setPointerCapture(M.pointerId),m.current=l.getBoundingClientRect(),v.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",C(M))}),onPointerMove:lr(e.onPointerMove,C),onPointerUp:lr(e.onPointerUp,M=>{M.preventDefault();const E=M.target;E.hasPointerCapture(M.pointerId)&&E.releasePointerCapture(M.pointerId),document.body.style.webkitUserSelect=v.current,m.current=null})})})}),Ng=W.forwardRef((e,t)=>{const{sizes:n,onSizesChange:r,style:h,...i}=e,d=Lt(),[g,c]=W.useState(),f=W.useRef(null),s=ar(t,f,d.onScrollbarXChange);return W.useEffect(()=>{f.current&&c(getComputedStyle(f.current))},[f]),G.jsx(Rg,{"data-orientation":"horizontal",...i,ref:s,sizes:n,style:{...h,"--sa-thumb-width":`${ra(n)}px`},onThumbPointerDown:o=>e.onThumbPointerDown(o.x),onDragScroll:o=>e.onDragScroll(o.x),onWheelScroll:(o,a)=>{if(d.viewport){const l=d.viewport.scrollLeft+o.deltaX;e.onWheelScroll(l),Eg(l,a)&&o.preventDefault()}},onResize:()=>{f.current&&d.viewport&&g&&r({content:d.viewport.scrollWidth,viewport:d.viewport.offsetWidth,scrollbar:{size:f.current.clientWidth,paddingStart:ia(g.paddingLeft),paddingEnd:ia(g.paddingRight)}})}})});Ng.displayName="@mantine/core/ScrollAreaScrollbarX";const Ig=W.forwardRef((e,t)=>{const{sizes:n,onSizesChange:r,style:h,...i}=e,d=Lt(),[g,c]=W.useState(),f=W.useRef(null),s=ar(t,f,d.onScrollbarYChange);return W.useEffect(()=>{f.current&&c(window.getComputedStyle(f.current))},[]),G.jsx(Rg,{...i,"data-orientation":"vertical",ref:s,sizes:n,style:{"--sa-thumb-height":`${ra(n)}px`,...h},onThumbPointerDown:o=>e.onThumbPointerDown(o.y),onDragScroll:o=>e.onDragScroll(o.y),onWheelScroll:(o,a)=>{if(d.viewport){const l=d.viewport.scrollTop+o.deltaY;e.onWheelScroll(l),Eg(l,a)&&o.preventDefault()}},onResize:()=>{f.current&&d.viewport&&g&&r({content:d.viewport.scrollHeight,viewport:d.viewport.offsetHeight,scrollbar:{size:f.current.clientHeight,paddingStart:ia(g.paddingTop),paddingEnd:ia(g.paddingBottom)}})}})});Ig.displayName="@mantine/core/ScrollAreaScrollbarY";const oa=W.forwardRef((e,t)=>{const{orientation:n="vertical",...r}=e,{dir:h}=kg(),i=Lt(),d=W.useRef(null),g=W.useRef(0),[c,f]=W.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),s=Mg(c.viewport,c.content),o={...r,sizes:c,onSizesChange:f,hasThumb:s>0&&s<1,onThumbChange:l=>{d.current=l},onThumbPointerUp:()=>{g.current=0},onThumbPointerDown:l=>{g.current=l}},a=(l,u)=>Zw(l,g.current,c,u);return n==="horizontal"?G.jsx(Ng,{...o,ref:t,onThumbPositionChange:()=>{if(i.viewport&&d.current){const l=i.viewport.scrollLeft,u=Tg(l,c,h);d.current.style.transform=`translate3d(${u}px, 0, 0)`}},onWheelScroll:l=>{i.viewport&&(i.viewport.scrollLeft=l)},onDragScroll:l=>{i.viewport&&(i.viewport.scrollLeft=a(l,h))}}):n==="vertical"?G.jsx(Ig,{...o,ref:t,onThumbPositionChange:()=>{if(i.viewport&&d.current){const l=i.viewport.scrollTop,u=Tg(l,c);c.scrollbar.size===0?d.current.style.opacity="0":d.current.style.opacity="1",d.current.style.transform=`translate3d(0, ${u}px, 0)`}},onWheelScroll:l=>{i.viewport&&(i.viewport.scrollTop=l)},onDragScroll:l=>{i.viewport&&(i.viewport.scrollTop=a(l))}}):null});oa.displayName="@mantine/core/ScrollAreaScrollbarVisible";const mu=W.forwardRef((e,t)=>{const n=Lt(),{forceMount:r,...h}=e,[i,d]=W.useState(!1),g=e.orientation==="horizontal",c=Js(()=>{if(n.viewport){const f=n.viewport.offsetWidth{const{forceMount:n,...r}=e,h=Lt(),[i,d]=W.useState(!1);return W.useEffect(()=>{const{scrollArea:g}=h;let c=0;if(g){const f=()=>{window.clearTimeout(c),d(!0)},s=()=>{c=window.setTimeout(()=>d(!1),h.scrollHideDelay)};return g.addEventListener("pointerenter",f),g.addEventListener("pointerleave",s),()=>{window.clearTimeout(c),g.removeEventListener("pointerenter",f),g.removeEventListener("pointerleave",s)}}},[h.scrollArea,h.scrollHideDelay]),n||i?G.jsx(mu,{"data-state":i?"visible":"hidden",...r,ref:t}):null});Og.displayName="@mantine/core/ScrollAreaScrollbarHover";const Jw=W.forwardRef((e,t)=>{const{forceMount:n,...r}=e,h=Lt(),i=e.orientation==="horizontal",[d,g]=W.useState("hidden"),c=Js(()=>g("idle"),100);return W.useEffect(()=>{if(d==="idle"){const f=window.setTimeout(()=>g("hidden"),h.scrollHideDelay);return()=>window.clearTimeout(f)}},[d,h.scrollHideDelay]),W.useEffect(()=>{const{viewport:f}=h,s=i?"scrollLeft":"scrollTop";if(f){let o=f[s];const a=()=>{const l=f[s];o!==l&&(g("scrolling"),c()),o=l};return f.addEventListener("scroll",a),()=>f.removeEventListener("scroll",a)}},[h.viewport,i,c]),n||d!=="hidden"?G.jsx(oa,{"data-state":d==="hidden"?"hidden":"visible",...r,ref:t,onPointerEnter:lr(e.onPointerEnter,()=>g("interacting")),onPointerLeave:lr(e.onPointerLeave,()=>g("idle"))}):null}),vu=W.forwardRef((e,t)=>{const{forceMount:n,...r}=e,h=Lt(),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:d}=h,g=e.orientation==="horizontal";return W.useEffect(()=>(g?i(!0):d(!0),()=>{g?i(!1):d(!1)}),[g,i,d]),h.type==="hover"?G.jsx(Og,{...r,ref:t,forceMount:n}):h.type==="scroll"?G.jsx(Jw,{...r,ref:t,forceMount:n}):h.type==="auto"?G.jsx(mu,{...r,ref:t,forceMount:n}):h.type==="always"?G.jsx(oa,{...r,ref:t}):null});vu.displayName="@mantine/core/ScrollAreaScrollbar";function e1(e,t=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},r=0;return function h(){const i={left:e.scrollLeft,top:e.scrollTop},d=n.left!==i.left,g=n.top!==i.top;(d||g)&&t(),n=i,r=window.requestAnimationFrame(h)}(),()=>window.cancelAnimationFrame(r)}const Dg=W.forwardRef((e,t)=>{const{style:n,...r}=e,h=Lt(),i=Lg(),{onThumbPositionChange:d}=i,g=ar(t,s=>i.onThumbChange(s)),c=W.useRef(),f=Js(()=>{c.current&&(c.current(),c.current=void 0)},100);return W.useEffect(()=>{const{viewport:s}=h;if(s){const o=()=>{if(f(),!c.current){const a=e1(s,d);c.current=a,d()}};return d(),s.addEventListener("scroll",o),()=>s.removeEventListener("scroll",o)}},[h.viewport,f,d]),G.jsx("div",{"data-state":i.hasThumb?"visible":"hidden",...r,ref:g,style:{width:"var(--sa-thumb-width)",height:"var(--sa-thumb-height)",...n},onPointerDownCapture:lr(e.onPointerDownCapture,s=>{const o=s.target.getBoundingClientRect(),a=s.clientX-o.left,l=s.clientY-o.top;i.onThumbPointerDown({x:a,y:l})}),onPointerUp:lr(e.onPointerUp,i.onThumbPointerUp)})});Dg.displayName="@mantine/core/ScrollAreaThumb";const yu=W.forwardRef((e,t)=>{const{forceMount:n,...r}=e,h=Lg();return n||h.hasThumb?G.jsx(Dg,{ref:t,...r}):null});yu.displayName="@mantine/core/ScrollAreaThumb";const zg=W.forwardRef(({children:e,style:t,...n},r)=>{const h=Lt(),i=ar(r,h.onViewportChange);return G.jsx(ge,{...n,ref:i,style:{overflowX:h.scrollbarXEnabled?"scroll":"hidden",overflowY:h.scrollbarYEnabled?"scroll":"hidden",...t},children:G.jsx("div",{style:{minWidth:"100%",display:"table"},ref:h.onContentChange,children:e})})});zg.displayName="@mantine/core/ScrollAreaViewport";var bu={root:"m_d57069b5",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const Fg={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},t1=(e,{scrollbarSize:t})=>({root:{"--scrollarea-scrollbar-size":Y(t)}}),oi=Ge((e,t)=>{const n=$e("ScrollArea",Fg,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,scrollbarSize:c,vars:f,type:s,scrollHideDelay:o,viewportProps:a,viewportRef:l,onScrollPositionChange:u,children:p,offsetScrollbars:m,scrollbars:v,onBottomReached:b,onTopReached:_,...S}=n,[w,y]=W.useState(!1),C=Et({name:"ScrollArea",props:n,classes:bu,className:h,style:i,classNames:r,styles:d,unstyled:g,vars:f,varsResolver:t1});return G.jsxs(_g,{type:s==="never"?"always":s,scrollHideDelay:o,ref:t,scrollbars:v,...C("root"),...S,children:[G.jsx(zg,{...a,...C("viewport",{style:a==null?void 0:a.style}),ref:l,"data-offset-scrollbars":m===!0?"xy":m||void 0,"data-scrollbars":v||void 0,onScroll:M=>{var $;($=a==null?void 0:a.onScroll)==null||$.call(a,M),u==null||u({x:M.currentTarget.scrollLeft,y:M.currentTarget.scrollTop});const{scrollTop:E,scrollHeight:T,clientHeight:L}=M.currentTarget;E-(T-L)===0&&(b==null||b()),E===0&&(_==null||_())},children:p}),(v==="xy"||v==="x")&&G.jsx(vu,{...C("scrollbar"),orientation:"horizontal","data-hidden":s==="never"||void 0,forceMount:!0,onMouseEnter:()=>y(!0),onMouseLeave:()=>y(!1),children:G.jsx(yu,{...C("thumb")})}),(v==="xy"||v==="y")&&G.jsx(vu,{...C("scrollbar"),orientation:"vertical","data-hidden":s==="never"||void 0,forceMount:!0,onMouseEnter:()=>y(!0),onMouseLeave:()=>y(!1),children:G.jsx(yu,{...C("thumb")})}),G.jsx(Yw,{...C("corner"),"data-hovered":w||void 0,"data-hidden":s==="never"||void 0})]})});oi.displayName="@mantine/core/ScrollArea";const wu=Ge((e,t)=>{const{children:n,classNames:r,styles:h,scrollbarSize:i,scrollHideDelay:d,type:g,dir:c,offsetScrollbars:f,viewportRef:s,onScrollPositionChange:o,unstyled:a,variant:l,viewportProps:u,scrollbars:p,style:m,vars:v,onBottomReached:b,..._}=$e("ScrollAreaAutosize",Fg,e);return G.jsx(ge,{..._,ref:t,style:[{display:"flex",overflow:"auto"},m],children:G.jsx(ge,{style:{display:"flex",flexDirection:"column",flex:1},children:G.jsx(oi,{classNames:r,styles:h,scrollHideDelay:d,scrollbarSize:i,type:g,dir:c,offsetScrollbars:f,viewportRef:s,onScrollPositionChange:o,unstyled:a,variant:l,viewportProps:u,vars:v,scrollbars:p,onBottomReached:b,children:n})})})});oi.classes=bu,wu.displayName="@mantine/core/ScrollAreaAutosize",wu.classes=bu,oi.Autosize=wu;var Pg={root:"m_87cf2631"};const n1={__staticSelector:"UnstyledButton"},sa=ho((e,t)=>{const n=$e("UnstyledButton",n1,e),{className:r,component:h="button",__staticSelector:i,unstyled:d,classNames:g,styles:c,style:f,...s}=n,o=Et({name:i,props:n,classes:Pg,className:r,style:f,classNames:g,styles:c,unstyled:d});return G.jsx(ge,{...o("root",{focusable:!0}),component:h,ref:t,type:h==="button"?"button":void 0,...s})});sa.classes=Pg,sa.displayName="@mantine/core/UnstyledButton";const po=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${Y(e==="bottom"?10:-10)})`},transitionProperty:"transform, opacity"}),aa={fade:{in:{opacity:1},out:{opacity:0},transitionProperty:"opacity"},"fade-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:`translateY(${Y(30)}`},transitionProperty:"opacity, transform"},"fade-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:`translateY(${Y(-30)}`},transitionProperty:"opacity, transform"},"fade-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:`translateX(${Y(30)}`},transitionProperty:"opacity, transform"},"fade-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:`translateX(${Y(-30)}`},transitionProperty:"opacity, transform"},scale:{in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:"scale(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-y":{in:{opacity:1,transform:"scaleY(1)"},out:{opacity:0,transform:"scaleY(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-x":{in:{opacity:1,transform:"scaleX(1)"},out:{opacity:0,transform:"scaleX(0)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"skew-up":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:`translateY(${Y(-20)}) skew(-10deg, -5deg)`},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"skew-down":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:`translateY(${Y(20)}) skew(-10deg, -5deg)`},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-left":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:`translateY(${Y(20)}) rotate(-5deg)`},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-right":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:`translateY(${Y(20)}) rotate(5deg)`},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-100%)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(100%)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"slide-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(100%)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"slide-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-100%)"},common:{transformOrigin:"right"},transitionProperty:"transform, opacity"},pop:{...po("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...po("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...po("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...po("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...po("top"),common:{transformOrigin:"top right"}}},jg={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function r1({transition:e,state:t,duration:n,timingFunction:r}){const h={transitionDuration:`${n}ms`,transitionTimingFunction:r};return typeof e=="string"?e in aa?{transitionProperty:aa[e].transitionProperty,...h,...aa[e].common,...aa[e][jg[t]]}:{}:{transitionProperty:e.transitionProperty,...h,...e.common,...e[jg[t]]}}function i1({duration:e,exitDuration:t,timingFunction:n,mounted:r,onEnter:h,onExit:i,onEntered:d,onExited:g,enterDelay:c,exitDelay:f}){const s=pn(),o=Jf(),a=s.respectReducedMotion?o:!1,[l,u]=W.useState(a?0:e),[p,m]=W.useState(r?"entered":"exited"),v=W.useRef(-1),b=W.useRef(-1),_=W.useRef(-1),S=y=>{const C=y?h:i,M=y?d:g;window.clearTimeout(v.current);const E=a?0:y?e:t;u(E),E===0?(typeof C=="function"&&C(),typeof M=="function"&&M(),m(y?"entered":"exited")):_.current=requestAnimationFrame(()=>{f0.flushSync(()=>{m(y?"pre-entering":"pre-exiting")}),_.current=requestAnimationFrame(()=>{typeof C=="function"&&C(),m(y?"entering":"exiting"),v.current=window.setTimeout(()=>{typeof M=="function"&&M(),m(y?"entered":"exited")},E)})})},w=y=>{if(window.clearTimeout(b.current),typeof(y?c:f)!="number"){S(y);return}b.current=window.setTimeout(()=>{S(y)},y?c:f)};return bb(()=>{w(r)},[r]),W.useEffect(()=>()=>{window.clearTimeout(v.current),cancelAnimationFrame(_.current)},[]),{transitionDuration:l,transitionStatus:p,transitionTimingFunction:n||"ease"}}function Wg({keepMounted:e,transition:t="fade",duration:n=250,exitDuration:r=n,mounted:h,children:i,timingFunction:d="ease",onExit:g,onEntered:c,onEnter:f,onExited:s,enterDelay:o,exitDelay:a}){const{transitionDuration:l,transitionStatus:u,transitionTimingFunction:p}=i1({mounted:h,exitDuration:r,duration:n,timingFunction:d,onExit:g,onEntered:c,onEnter:f,onExited:s,enterDelay:o,exitDelay:a});return l===0?h?G.jsx(G.Fragment,{children:i({})}):e?i({display:"none"}):null:u==="exited"?e?i({display:"none"}):null:G.jsx(G.Fragment,{children:i(r1({transition:t,duration:l,state:u,timingFunction:p}))})}Wg.displayName="@mantine/core/Transition";var Bt={root:"m_5ae2e3c",barsLoader:"m_7a2bd4cd",bar:"m_870bb79","bars-loader-animation":"m_5d2b3b9d",dotsLoader:"m_4e3f22d7",dot:"m_870c4af","loader-dots-animation":"m_aac34a1",ovalLoader:"m_b34414df","oval-loader-animation":"m_f8e89c4b"};const Hg=W.forwardRef(({className:e,...t},n)=>G.jsxs(ge,{component:"span",className:hn(Bt.barsLoader,e),...t,ref:n,children:[G.jsx("span",{className:Bt.bar}),G.jsx("span",{className:Bt.bar}),G.jsx("span",{className:Bt.bar})]}));Hg.displayName="@mantine/core/Bars";const Bg=W.forwardRef(({className:e,...t},n)=>G.jsxs(ge,{component:"span",className:hn(Bt.dotsLoader,e),...t,ref:n,children:[G.jsx("span",{className:Bt.dot}),G.jsx("span",{className:Bt.dot}),G.jsx("span",{className:Bt.dot})]}));Bg.displayName="@mantine/core/Dots";const Ug=W.forwardRef(({className:e,...t},n)=>G.jsx(ge,{component:"span",className:hn(Bt.ovalLoader,e),...t,ref:n}));Ug.displayName="@mantine/core/Oval";const Vg={bars:Hg,oval:Ug,dots:Bg},o1={loaders:Vg,type:"oval"},s1=(e,{size:t,color:n})=>({root:{"--loader-size":Jr(t,"loader-size"),"--loader-color":n?ei(n,e):void 0}}),la=Ge((e,t)=>{const n=$e("Loader",o1,e),{size:r,color:h,type:i,vars:d,className:g,style:c,classNames:f,styles:s,unstyled:o,loaders:a,variant:l,children:u,...p}=n,m=Et({name:"Loader",props:n,classes:Bt,className:g,style:c,classNames:f,styles:s,unstyled:o,vars:d,varsResolver:s1});return u?G.jsx(ge,{...m("root"),ref:t,...p,children:u}):G.jsx(ge,{...m("root"),ref:t,component:a[i],variant:l,size:r,...p})});la.defaultLoaders=Vg,la.classes=Bt,la.displayName="@mantine/core/Loader";var ca={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21"};const Gg={orientation:"horizontal"},a1=(e,{borderWidth:t})=>({group:{"--ai-border-width":Y(t)}}),xu=Ge((e,t)=>{const n=$e("ActionIconGroup",Gg,e),{className:r,style:h,classNames:i,styles:d,unstyled:g,orientation:c,vars:f,borderWidth:s,variant:o,mod:a,...l}=$e("ActionIconGroup",Gg,e),u=Et({name:"ActionIconGroup",props:n,classes:ca,className:r,style:h,classNames:i,styles:d,unstyled:g,vars:f,varsResolver:a1,rootSelector:"group"});return G.jsx(ge,{...u("group"),ref:t,variant:o,mod:[{"data-orientation":c},a],role:"group",...l})});xu.classes=ca,xu.displayName="@mantine/core/ActionIconGroup";const l1={},c1=(e,{size:t,radius:n,variant:r,gradient:h,color:i,autoContrast:d})=>{const g=e.variantColorResolver({color:i||e.primaryColor,theme:e,gradient:h,variant:r||"filled",autoContrast:d});return{root:{"--ai-size":Jr(t,"ai-size"),"--ai-radius":n===void 0?void 0:Yf(n),"--ai-bg":i||r?g.background:void 0,"--ai-hover":i||r?g.hover:void 0,"--ai-hover-color":i||r?g.hoverColor:void 0,"--ai-color":g.color,"--ai-bd":i||r?g.border:void 0}}},si=ho((e,t)=>{const n=$e("ActionIcon",l1,e),{className:r,unstyled:h,variant:i,classNames:d,styles:g,style:c,loading:f,loaderProps:s,size:o,color:a,radius:l,__staticSelector:u,gradient:p,vars:m,children:v,disabled:b,"data-disabled":_,autoContrast:S,mod:w,...y}=n,C=Et({name:["ActionIcon",u],props:n,className:r,style:c,classes:ca,classNames:d,styles:g,unstyled:h,vars:m,varsResolver:c1});return G.jsxs(sa,{...C("root",{active:!b&&!f&&!_}),...y,unstyled:h,variant:i,size:o,disabled:b||f,ref:t,mod:[{loading:f,disabled:b||_},w],children:[G.jsx(Wg,{mounted:!!f,transition:"slide-down",duration:150,children:M=>G.jsx(ge,{component:"span",...C("loader",{style:M}),"aria-hidden":!0,children:G.jsx(la,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...s})})}),G.jsx(ge,{component:"span",mod:{loading:f},...C("icon"),children:v})]})});si.classes=ca,si.displayName="@mantine/core/ActionIcon",si.Group=xu;function u1(e){return W.Children.toArray(e).filter(Boolean)}var Kg={root:"m_4081bf90"};const h1={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},d1=(e,{grow:t,preventGrowOverflow:n,gap:r,align:h,justify:i,wrap:d},{childWidth:g})=>({root:{"--group-child-width":t&&n?g:void 0,"--group-gap":so(r),"--group-align":h,"--group-justify":i,"--group-wrap":d}}),fo=Ge((e,t)=>{const n=$e("Group",h1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,children:c,gap:f,align:s,justify:o,wrap:a,grow:l,preventGrowOverflow:u,vars:p,variant:m,__size:v,mod:b,..._}=n,S=u1(c),w=S.length,y=so(f??"md"),C={childWidth:`calc(${100/w}% - (${y} - ${y} / ${w}))`},M=Et({name:"Group",props:n,stylesCtx:C,className:h,style:i,classes:Kg,classNames:r,styles:d,unstyled:g,vars:p,varsResolver:d1});return G.jsx(ge,{...M("root"),ref:t,variant:m,mod:[{grow:l},b],size:v,..._,children:S})});fo.classes=Kg,fo.displayName="@mantine/core/Group";var Yg={root:"m_b6d8b162"};function p1(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const f1={inherit:!1},g1=(e,{variant:t,lineClamp:n,gradient:r,size:h,color:i})=>({root:{"--text-fz":Qf(h),"--text-lh":qf(h),"--text-gradient":t==="gradient"?ou(r,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":i?ei(i,e):void 0}}),ua=ho((e,t)=>{const n=$e("Text",f1,e),{lineClamp:r,truncate:h,inline:i,inherit:d,gradient:g,span:c,__staticSelector:f,vars:s,className:o,style:a,classNames:l,styles:u,unstyled:p,variant:m,mod:v,size:b,..._}=n,S=Et({name:["Text",f],props:n,classes:Yg,className:o,style:a,classNames:l,styles:u,unstyled:p,vars:s,varsResolver:g1});return G.jsx(ge,{...S("root",{focusable:!0}),ref:t,component:c?"span":"p",variant:m,mod:[{"data-truncate":p1(h),"data-line-clamp":typeof r=="number","data-inline":i,"data-inherit":d},v],size:b,..._})});ua.classes=Yg,ua.displayName="@mantine/core/Text";const[m1,ai]=io("AppShell was not found in tree");var jn={root:"m_89ab340",navbar:"m_45252eee",aside:"m_9cdde9a",header:"m_3b16f56b",main:"m_8983817",footer:"m_3840c879",section:"m_6dcfc7c7"};const v1={},Su=Ge((e,t)=>{const n=$e("AppShellAside",v1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:c,withBorder:f,zIndex:s,mod:o,...a}=n,l=ai();return l.disabled?null:G.jsx(ge,{component:"aside",ref:t,mod:[{"with-border":f??l.withBorder},o],...l.getStyles("aside",{className:h,classNames:r,styles:d,style:i}),...a,__vars:{"--app-shell-aside-z-index":`calc(${s??l.zIndex} + 1)`}})});Su.classes=jn,Su.displayName="@mantine/core/AppShellAside";const y1={},$u=Ge((e,t)=>{var u;const n=$e("AppShellFooter",y1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:c,withBorder:f,zIndex:s,mod:o,...a}=n,l=ai();return l.disabled?null:G.jsx(ge,{component:"footer",ref:t,mod:[{"with-border":f??l.withBorder},o],...l.getStyles("footer",{className:hn({[Gc.classNames.zeroRight]:l.offsetScrollbars},h),classNames:r,styles:d,style:i}),...a,__vars:{"--app-shell-footer-z-index":(u=s??l.zIndex)==null?void 0:u.toString()}})});$u.classes=jn,$u.displayName="@mantine/core/AppShellFooter";const b1={},Cu=Ge((e,t)=>{var u;const n=$e("AppShellHeader",b1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:c,withBorder:f,zIndex:s,mod:o,...a}=n,l=ai();return l.disabled?null:G.jsx(ge,{component:"header",ref:t,mod:[{"with-border":f??l.withBorder},o],...l.getStyles("header",{className:hn({[Gc.classNames.zeroRight]:l.offsetScrollbars},h),classNames:r,styles:d,style:i}),...a,__vars:{"--app-shell-header-z-index":(u=s??l.zIndex)==null?void 0:u.toString()}})});Cu.classes=jn,Cu.displayName="@mantine/core/AppShellHeader";const w1={},ku=Ge((e,t)=>{const n=$e("AppShellMain",w1,e),{classNames:r,className:h,style:i,styles:d,vars:g,...c}=n,f=ai();return G.jsx(ge,{component:"main",ref:t,...f.getStyles("main",{className:h,style:i,classNames:r,styles:d}),...c})});ku.classes=jn,ku.displayName="@mantine/core/AppShellMain";function go(e){return typeof e=="object"?e.base:e}function mo(e){const t=typeof e=="object"&&e!==null&&typeof e.base<"u"&&Object.keys(e).length===1;return typeof e=="number"||typeof e=="string"||t}function vo(e){return!(typeof e!="object"||e===null||Object.keys(e).length===1&&"base"in e)}function x1({baseStyles:e,minMediaStyles:t,maxMediaStyles:n,aside:r,theme:h}){var c,f,s;const i=r==null?void 0:r.width,d="translateX(var(--app-shell-aside-width))",g="translateX(calc(var(--app-shell-aside-width) * -1))";if(r!=null&&r.breakpoint&&!((c=r==null?void 0:r.collapsed)!=null&&c.mobile)&&(n[r==null?void 0:r.breakpoint]=n[r==null?void 0:r.breakpoint]||{},n[r==null?void 0:r.breakpoint]["--app-shell-aside-width"]="100%",n[r==null?void 0:r.breakpoint]["--app-shell-aside-offset"]="0px"),mo(i)){const o=Y(go(i));e["--app-shell-aside-width"]=o,e["--app-shell-aside-offset"]=o}if(vo(i)&&(typeof i.base<"u"&&(e["--app-shell-aside-width"]=Y(i.base),e["--app-shell-aside-offset"]=Y(i.base)),Ze(i).forEach(o=>{o!=="base"&&(t[o]=t[o]||{},t[o]["--app-shell-aside-width"]=Y(i[o]),t[o]["--app-shell-aside-offset"]=Y(i[o]))})),(f=r==null?void 0:r.collapsed)==null?void 0:f.desktop){const o=r.breakpoint;t[o]=t[o]||{},t[o]["--app-shell-aside-transform"]=d,t[o]["--app-shell-aside-transform-rtl"]=g,t[o]["--app-shell-aside-offset"]="0px !important"}if((s=r==null?void 0:r.collapsed)!=null&&s.mobile){const o=Xc(r.breakpoint,h.breakpoints)-.1;n[o]=n[o]||{},n[o]["--app-shell-aside-width"]="100%",n[o]["--app-shell-aside-offset"]="0px",n[o]["--app-shell-aside-transform"]=d,n[o]["--app-shell-aside-transform-rtl"]=g}}function S1({baseStyles:e,minMediaStyles:t,footer:n}){const r=n==null?void 0:n.height,h="translateY(var(--app-shell-footer-height))",i=(n==null?void 0:n.offset)??!0;if(mo(r)){const d=Y(go(r));e["--app-shell-footer-height"]=d,i&&(e["--app-shell-footer-offset"]=d)}vo(r)&&(typeof r.base<"u"&&(e["--app-shell-footer-height"]=Y(r.base),i&&(e["--app-shell-footer-offset"]=Y(r.base))),Ze(r).forEach(d=>{d!=="base"&&(t[d]=t[d]||{},t[d]["--app-shell-footer-height"]=Y(r[d]),i&&(t[d]["--app-shell-footer-offset"]=Y(r[d])))})),n!=null&&n.collapsed&&(e["--app-shell-footer-transform"]=h,e["--app-shell-footer-offset"]="0px !important")}function $1({baseStyles:e,minMediaStyles:t,header:n}){const r=n==null?void 0:n.height,h="translateY(calc(var(--app-shell-header-height) * -1))",i=(n==null?void 0:n.offset)??!0;if(mo(r)){const d=Y(go(r));e["--app-shell-header-height"]=d,i&&(e["--app-shell-header-offset"]=d)}vo(r)&&(typeof r.base<"u"&&(e["--app-shell-header-height"]=Y(r.base),i&&(e["--app-shell-header-offset"]=Y(r.base))),Ze(r).forEach(d=>{d!=="base"&&(t[d]=t[d]||{},t[d]["--app-shell-header-height"]=Y(r[d]),i&&(t[d]["--app-shell-header-offset"]=Y(r[d])))})),n!=null&&n.collapsed&&(e["--app-shell-header-transform"]=h,e["--app-shell-header-offset"]="0px !important")}function C1({baseStyles:e,minMediaStyles:t,maxMediaStyles:n,navbar:r,theme:h}){var c,f,s;const i=r==null?void 0:r.width,d="translateX(calc(var(--app-shell-navbar-width) * -1))",g="translateX(var(--app-shell-navbar-width))";if(r!=null&&r.breakpoint&&!((c=r==null?void 0:r.collapsed)!=null&&c.mobile)&&(n[r==null?void 0:r.breakpoint]=n[r==null?void 0:r.breakpoint]||{},n[r==null?void 0:r.breakpoint]["--app-shell-navbar-width"]="100%",n[r==null?void 0:r.breakpoint]["--app-shell-navbar-offset"]="0px"),mo(i)){const o=Y(go(i));e["--app-shell-navbar-width"]=o,e["--app-shell-navbar-offset"]=o}if(vo(i)&&(typeof i.base<"u"&&(e["--app-shell-navbar-width"]=Y(i.base),e["--app-shell-navbar-offset"]=Y(i.base)),Ze(i).forEach(o=>{o!=="base"&&(t[o]=t[o]||{},t[o]["--app-shell-navbar-width"]=Y(i[o]),t[o]["--app-shell-navbar-offset"]=Y(i[o]))})),(f=r==null?void 0:r.collapsed)==null?void 0:f.desktop){const o=r.breakpoint;t[o]=t[o]||{},t[o]["--app-shell-navbar-transform"]=d,t[o]["--app-shell-navbar-transform-rtl"]=g,t[o]["--app-shell-navbar-offset"]="0px !important"}if((s=r==null?void 0:r.collapsed)!=null&&s.mobile){const o=Xc(r.breakpoint,h.breakpoints)-.1;n[o]=n[o]||{},n[o]["--app-shell-navbar-width"]="100%",n[o]["--app-shell-navbar-offset"]="0px",n[o]["--app-shell-navbar-transform"]=d,n[o]["--app-shell-navbar-transform-rtl"]=g}}function _u(e){return Number(e)===0?"0px":so(e)}function k1({padding:e,baseStyles:t,minMediaStyles:n}){mo(e)&&(t["--app-shell-padding"]=_u(go(e))),vo(e)&&(e.base&&(t["--app-shell-padding"]=_u(e.base)),Ze(e).forEach(r=>{r!=="base"&&(n[r]=n[r]||{},n[r]["--app-shell-padding"]=_u(e[r]))}))}function _1({navbar:e,header:t,footer:n,aside:r,padding:h,theme:i}){const d={},g={},c={};C1({baseStyles:c,minMediaStyles:d,maxMediaStyles:g,navbar:e,theme:i}),x1({baseStyles:c,minMediaStyles:d,maxMediaStyles:g,aside:r,theme:i}),$1({baseStyles:c,minMediaStyles:d,header:t}),S1({baseStyles:c,minMediaStyles:d,footer:n}),k1({baseStyles:c,minMediaStyles:d,padding:h});const f=Zf(Ze(d),i.breakpoints).map(a=>({query:`(min-width: ${ro(a.px)})`,styles:d[a.value]})),s=Zf(Ze(g),i.breakpoints).map(a=>({query:`(max-width: ${ro(a.px)})`,styles:g[a.value]})),o=[...f,...s];return{baseStyles:c,media:o}}function M1({navbar:e,header:t,aside:n,footer:r,padding:h}){const i=pn(),d=Pn(),{media:g,baseStyles:c}=_1({navbar:e,header:t,footer:r,aside:n,padding:h,theme:i});return G.jsx(yg,{media:g,styles:c,selector:d.cssVariablesSelector})}const A1={},Mu=Ge((e,t)=>{const n=$e("AppShellNavbar",A1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:c,withBorder:f,zIndex:s,mod:o,...a}=n,l=ai();return l.disabled?null:G.jsx(ge,{component:"nav",ref:t,mod:[{"with-border":f??l.withBorder},o],...l.getStyles("navbar",{className:h,classNames:r,styles:d,style:i}),...a,__vars:{"--app-shell-navbar-z-index":`calc(${s??l.zIndex} + 1)`}})});Mu.classes=jn,Mu.displayName="@mantine/core/AppShellNavbar";const T1={},Au=ho((e,t)=>{const n=$e("AppShellSection",T1,e),{classNames:r,className:h,style:i,styles:d,vars:g,grow:c,mod:f,...s}=n,o=ai();return G.jsx(ge,{ref:t,mod:[{grow:c},f],...o.getStyles("section",{className:h,style:i,classNames:r,styles:d}),...s})});Au.classes=jn,Au.displayName="@mantine/core/AppShellSection";function E1({transitionDuration:e,disabled:t}){const[n,r]=W.useState(!0),h=W.useRef(),i=W.useRef();return Jc("resize",()=>{r(!0),clearTimeout(h.current),h.current=window.setTimeout(()=>r(!1),200)}),ao(()=>{W.startTransition(()=>{r(!0),clearTimeout(i.current),i.current=window.setTimeout(()=>r(!1),e||0)})},[t,e]),n}const L1={withBorder:!0,offsetScrollbars:!0,padding:0,transitionDuration:200,transitionTimingFunction:"ease",zIndex:db("app")},R1=(e,{transitionDuration:t,transitionTimingFunction:n})=>({root:{"--app-shell-transition-duration":`${t}ms`,"--app-shell-transition-timing-function":n}}),xt=Ge((e,t)=>{const n=$e("AppShell",L1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:c,navbar:f,withBorder:s,padding:o,transitionDuration:a,transitionTimingFunction:l,header:u,zIndex:p,layout:m,disabled:v,aside:b,footer:_,offsetScrollbars:S,mod:w,...y}=n,C=Et({name:"AppShell",classes:jn,props:n,className:h,style:i,classNames:r,styles:d,unstyled:g,vars:c,varsResolver:R1}),M=E1({disabled:v,transitionDuration:a});return G.jsxs(m1,{value:{getStyles:C,withBorder:s,zIndex:p,disabled:v,offsetScrollbars:S},children:[G.jsx(M1,{navbar:f,header:u,aside:b,footer:_,padding:o}),G.jsx(ge,{ref:t,...C("root"),mod:[{resizing:M,layout:m,disabled:v},w],...y})]})});xt.classes=jn,xt.displayName="@mantine/core/AppShell",xt.Navbar=Mu,xt.Header=Cu,xt.Main=ku,xt.Aside=Su,xt.Footer=$u,xt.Section=Au;var Qg={root:"m_4451eb3a"};const N1={},Tu=ho((e,t)=>{const n=$e("Center",N1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:c,inline:f,mod:s,...o}=n,a=Et({name:"Center",props:n,classes:Qg,className:h,style:i,classNames:r,styles:d,unstyled:g,vars:c});return G.jsx(ge,{ref:t,mod:[{inline:f},s],...a("root"),...o})});Tu.classes=Qg,Tu.displayName="@mantine/core/Center";const[I1,O1]=io("List component was not found in tree");var Eu={root:"m_abbac491",item:"m_abb6bec2",itemWrapper:"m_75cd9f71",itemIcon:"m_60f83e5b"};const D1={},Lu=Ge((e,t)=>{const n=$e("ListItem",D1,e),{classNames:r,className:h,style:i,styles:d,vars:g,icon:c,children:f,mod:s,...o}=n,a=O1(),l=c||a.icon,u={classNames:r,styles:d};return G.jsx(ge,{...a.getStyles("item",{...u,className:h,style:i}),component:"li",mod:[{"with-icon":!!l,centered:a.center},s],ref:t,...o,children:G.jsxs("div",{...a.getStyles("itemWrapper",u),children:[l&&G.jsx("span",{...a.getStyles("itemIcon",u),children:l}),G.jsx("span",{...a.getStyles("itemLabel",u),children:f})]})})});Lu.classes=Eu,Lu.displayName="@mantine/core/ListItem";const z1={type:"unordered"},F1=(e,{size:t,spacing:n})=>({root:{"--list-fz":Qf(t),"--list-lh":qf(t),"--list-spacing":so(n)}}),yo=Ge((e,t)=>{const n=$e("List",z1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:c,children:f,type:s,withPadding:o,icon:a,spacing:l,center:u,listStyleType:p,mod:m,...v}=n,b=Et({name:"List",classes:Eu,props:n,className:h,style:i,classNames:r,styles:d,unstyled:g,vars:c,varsResolver:F1});return G.jsx(I1,{value:{center:u,icon:a,getStyles:b},children:G.jsx(ge,{...b("root",{style:{listStyleType:p}}),component:s==="unordered"?"ul":"ol",mod:[{"with-padding":o},m],ref:t,...v,children:f})})});yo.classes=Eu,yo.displayName="@mantine/core/List",yo.Item=Lu;const[P1,Ru]=io("Tabs component was not found in the tree");var bo={root:"m_89d60db1","list--default":"m_576c9d4",list:"m_89d33d6d",panel:"m_b0c91715",tab:"m_4ec4dce6",tabSection:"m_fc420b1f","tab--default":"m_539e827b","list--outline":"m_6772fbd5","tab--outline":"m_b59ab47c","tab--pills":"m_c3381914"};const j1={},Nu=Ge((e,t)=>{const n=$e("TabsList",j1,e),{children:r,className:h,grow:i,justify:d,classNames:g,styles:c,style:f,mod:s,...o}=n,a=Ru();return G.jsx(ge,{...o,...a.getStyles("list",{className:h,style:f,classNames:g,styles:c,props:n,variant:a.variant}),ref:t,role:"tablist",variant:a.variant,mod:[{grow:i,orientation:a.orientation,placement:a.orientation==="vertical"&&a.placement,inverted:a.inverted},s],"aria-orientation":a.orientation,__vars:{"--tabs-justify":d},children:r})});Nu.classes=bo,Nu.displayName="@mantine/core/TabsList";const W1={},Iu=Ge((e,t)=>{const n=$e("TabsPanel",W1,e),{children:r,className:h,value:i,classNames:d,styles:g,style:c,mod:f,keepMounted:s,...o}=n,a=Ru(),l=a.value===i,u=a.keepMounted||s||l?r:null;return G.jsx(ge,{...o,...a.getStyles("panel",{className:h,classNames:d,styles:g,style:[c,l?void 0:{display:"none"}],props:n}),ref:t,mod:[{orientation:a.orientation},f],role:"tabpanel",id:a.getPanelId(i),"aria-labelledby":a.getTabId(i),children:u})});Iu.classes=bo,Iu.displayName="@mantine/core/TabsPanel";const H1={},Ou=Ge((e,t)=>{const n=$e("TabsTab",H1,e),{className:r,children:h,rightSection:i,leftSection:d,value:g,onClick:c,onKeyDown:f,disabled:s,color:o,style:a,classNames:l,styles:u,vars:p,mod:m,...v}=n,b=pn(),{dir:_}=kg(),S=Ru(),w=g===S.value,y=M=>{S.onChange(S.allowTabDeactivation&&g===S.value?null:g),c==null||c(M)},C={classNames:l,styles:u,props:n};return G.jsxs(sa,{...v,...S.getStyles("tab",{className:r,style:a,variant:S.variant,...C}),disabled:s,unstyled:S.unstyled,variant:S.variant,mod:[{active:w,disabled:s,orientation:S.orientation,inverted:S.inverted,placement:S.orientation==="vertical"&&S.placement},m],ref:t,role:"tab",id:S.getTabId(g),"aria-selected":w,tabIndex:w||S.value===null?0:-1,"aria-controls":S.getPanelId(g),onClick:y,__vars:{"--tabs-color":o?ei(o,b):void 0},onKeyDown:ub({siblingSelector:'[role="tab"]',parentSelector:'[role="tablist"]',activateOnFocus:S.activateTabWithKeyboard,loop:S.loop,orientation:S.orientation||"horizontal",dir:_,onKeyDown:f}),children:[d&&G.jsx("span",{...S.getStyles("tabSection",C),"data-position":"left",children:d}),h&&G.jsx("span",{...S.getStyles("tabLabel",C),children:h}),i&&G.jsx("span",{...S.getStyles("tabSection",C),"data-position":"right",children:i})]})});Ou.classes=bo,Ou.displayName="@mantine/core/TabsTab";const qg="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",B1={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,allowTabDeactivation:!1,unstyled:!1,inverted:!1,variant:"default",placement:"left"},U1=(e,{radius:t,color:n,autoContrast:r})=>({root:{"--tabs-radius":Yf(t),"--tabs-color":ei(n,e),"--tabs-text-color":Sw(r,e)?dg({color:n,theme:e,autoContrast:r}):void 0}}),St=Ge((e,t)=>{const n=$e("Tabs",B1,e),{defaultValue:r,value:h,onChange:i,orientation:d,children:g,loop:c,id:f,activateTabWithKeyboard:s,allowTabDeactivation:o,variant:a,color:l,radius:u,inverted:p,placement:m,keepMounted:v,classNames:b,styles:_,unstyled:S,className:w,style:y,vars:C,autoContrast:M,mod:E,...T}=n,L=Sb(f),[$,k]=kb({value:h,defaultValue:r,finalValue:null,onChange:i}),x=Et({name:"Tabs",props:n,classes:bo,className:w,style:y,classNames:b,styles:_,unstyled:S,vars:C,varsResolver:U1});return G.jsx(P1,{value:{placement:m,value:$,orientation:d,id:L,loop:c,activateTabWithKeyboard:s,getTabId:Kf(`${L}-tab`,qg),getPanelId:Kf(`${L}-panel`,qg),onChange:k,allowTabDeactivation:o,variant:a,color:l,radius:u,inverted:p,keepMounted:v,unstyled:S,getStyles:x},children:G.jsx(ge,{ref:t,id:L,variant:a,mod:[{orientation:d,inverted:d==="horizontal"&&p,placement:d==="vertical"&&m},E],...x("root"),...T,children:g})})});St.classes=bo,St.displayName="@mantine/core/Tabs",St.Tab=Ou,St.Panel=Iu,St.List=Nu;function Zg(e,t,n){if(!e||!t)return[];const r=n.indexOf(e),h=n.indexOf(t),i=Math.min(r,h),d=Math.max(r,h);return n.slice(i,d+1)}function Du({node:e,getStyles:t,rootIndex:n,controller:r,expandOnClick:h,selectOnClick:i,isSubtree:d,level:g=1,renderNode:c,flatValues:f,allowRangeSelection:s,expandOnSpace:o}){const a=W.useRef(null),l=(e.children||[]).map(b=>G.jsx(Du,{node:b,flatValues:f,getStyles:t,rootIndex:void 0,level:g+1,controller:r,expandOnClick:h,isSubtree:!0,renderNode:c,selectOnClick:i,allowRangeSelection:s,expandOnSpace:o},b.value)),u=b=>{var _,S,w;if(b.nativeEvent.code==="ArrowRight"&&(b.stopPropagation(),b.preventDefault(),r.expandedState[e.value]?(_=b.currentTarget.querySelector("[role=treeitem]"))==null||_.focus():r.expand(e.value)),b.nativeEvent.code==="ArrowLeft"&&(b.stopPropagation(),b.preventDefault(),r.expandedState[e.value]&&(e.children||[]).length>0?r.collapse(e.value):d&&((S=oo(b.currentTarget,"[role=treeitem]"))==null||S.focus())),b.nativeEvent.code==="ArrowDown"||b.nativeEvent.code==="ArrowUp"){const y=oo(b.currentTarget,"[data-tree-root]");if(!y)return;b.stopPropagation(),b.preventDefault();const C=Array.from(y.querySelectorAll("[role=treeitem]")),M=C.indexOf(b.currentTarget);if(M===-1)return;const E=b.nativeEvent.code==="ArrowDown"?M+1:M-1;if((w=C[E])==null||w.focus(),b.shiftKey){const T=C[E];T&&r.setSelectedState(Zg(r.anchorNode,T.dataset.value,f))}}b.nativeEvent.code==="Space"&&o&&(b.stopPropagation(),b.preventDefault(),r.toggleExpanded(e.value))},p=b=>{var _,S;b.stopPropagation(),s&&b.shiftKey&&r.anchorNode?(r.setSelectedState(Zg(r.anchorNode,e.value,f)),(_=a.current)==null||_.focus()):(h&&r.toggleExpanded(e.value),i&&r.select(e.value),(S=a.current)==null||S.focus())},m=r.selectedState.includes(e.value),v={...t("label"),onClick:p,"data-selected":m||void 0,"data-value":e.value,"data-hovered":r.hoveredNode===e.value||void 0};return G.jsxs("li",{...t("node",{style:{"--label-offset":`calc(var(--level-offset) * ${g-1})`}}),role:"treeitem","aria-selected":m,"data-value":e.value,"data-selected":m||void 0,"data-hovered":r.hoveredNode===e.value||void 0,"data-level":g,tabIndex:n===0?0:-1,onKeyDown:u,ref:a,onMouseOver:b=>{b.stopPropagation(),r.setHoveredNode(e.value)},onMouseLeave:b=>{b.stopPropagation(),r.setHoveredNode(null)},children:[typeof c=="function"?c({node:e,level:g,selected:m,tree:r,expanded:r.expandedState[e.value]||!1,hasChildren:Array.isArray(e.children)&&e.children.length>0,elementProps:v}):G.jsx("div",{...v,children:e.label}),r.expandedState[e.value]&&l.length>0&&G.jsx("ul",{role:"group",...t("subtree"),"data-level":g,children:l})]})}Du.displayName="@mantine/core/TreeNode";function ha(e,t,n=[]){const r=[];for(const h of e)if(Array.isArray(h.children)&&h.children.length>0){const i=ha(h.children,t,n);if(i.currentTreeChecked.length===h.children.length){const d=i.currentTreeChecked.every(c=>c.checked),g={checked:d,indeterminate:!d,value:h.value,hasChildren:!0};r.push(g),n.push(g)}else if(i.currentTreeChecked.length>0){const d={checked:!1,indeterminate:!0,value:h.value,hasChildren:!0};r.push(d),n.push(d)}}else if(t.includes(h.value)){const i={checked:!0,indeterminate:!1,value:h.value,hasChildren:!1};r.push(i),n.push(i)}return{result:n,currentTreeChecked:r}}function Xg(e,t){for(const n of t){if(n.value===e)return n;if(Array.isArray(n.children)){const r=Xg(e,n.children);if(r)return r}}return null}function da(e,t,n=[]){const r=Xg(e,t);return r?!Array.isArray(r.children)||r.children.length===0?[r.value]:(r.children.forEach(h=>{Array.isArray(h.children)&&h.children.length>0?da(h.value,t,n):n.push(h.value)}),n):n}function V1(e,t,n){return n.length===0?!1:n.includes(e)?!0:ha(t,n).result.some(r=>r.value===e&&r.checked)}const G1=rg(V1);function K1(e,t,n){return n.length===0?!1:ha(t,n).result.some(r=>r.value===e&&r.indeterminate)}const Y1=rg(K1);function Jg(e,t,n,r={}){return t.forEach(h=>{r[h.value]=h.value in e?e[h.value]:h.value===n,Array.isArray(h.children)&&Jg(e,h.children,n,r)}),r}function Q1(e,t){const n=[];return e.forEach(r=>n.push(...da(r,t))),n}function em({initialSelectedState:e=[],initialCheckedState:t=[],initialExpandedState:n={},multiple:r=!1}={}){const[h,i]=W.useState([]),[d,g]=W.useState(n),[c,f]=W.useState(e),[s,o]=W.useState(t),[a,l]=W.useState(null),[u,p]=W.useState(null),m=W.useCallback($=>{g(k=>Jg(k,$,c)),o(k=>Q1(k,$)),i($)},[c,s]),v=W.useCallback($=>{g(k=>({...k,[$]:!k[$]}))},[]),b=W.useCallback($=>{g(k=>({...k,[$]:!1}))},[]),_=W.useCallback($=>{g(k=>({...k,[$]:!0}))},[]),S=W.useCallback(()=>{g($=>{const k={...$};return Object.keys(k).forEach(x=>{k[x]=!0}),k})},[]),w=W.useCallback(()=>{g($=>{const k={...$};return Object.keys(k).forEach(x=>{k[x]=!1}),k})},[]),y=W.useCallback($=>f(k=>r?k.includes($)?(l(null),k.filter(x=>x!==$)):(l($),[...k,$]):k.includes($)?(l(null),[]):(l($),[$])),[]),C=W.useCallback($=>{l($),f(k=>r?k.includes($)?k:[...k,$]:[$])},[]),M=W.useCallback($=>{a===$&&l(null),f(k=>k.filter(x=>x!==$))},[]),E=W.useCallback(()=>{f([]),l(null)},[]),T=W.useCallback($=>{const k=da($,h);o(x=>Array.from(new Set([...x,...k])))},[h]),L=W.useCallback($=>{const k=da($,h);o(x=>x.filter(A=>!k.includes(A)))},[h]);return{multiple:r,expandedState:d,selectedState:c,checkedState:s,anchorNode:a,initialize:m,toggleExpanded:v,collapse:b,expand:_,expandAllNodes:S,collapseAllNodes:w,setExpandedState:g,checkNode:T,uncheckNode:L,toggleSelected:y,select:C,deselect:M,clearSelected:E,setSelectedState:f,hoveredNode:u,setHoveredNode:p,getCheckedNodes:()=>ha(h,s).result,isNodeChecked:$=>G1($,h,s),isNodeIndeterminate:$=>Y1($,h,s)}}var tm={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function nm(e){return e.reduce((t,n)=>(t.push(n.value),n.children&&t.push(...nm(n.children)),t),[])}const q1={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},Z1=(e,{levelOffset:t})=>({root:{"--level-offset":so(t)}}),zu=Ge((e,t)=>{const n=$e("Tree",q1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:c,data:f,expandOnClick:s,tree:o,renderNode:a,selectOnClick:l,clearSelectionOnOutsideClick:u,allowRangeSelection:p,expandOnSpace:m,levelOffset:v,...b}=n,_=em(),S=o||_,w=Et({name:"Tree",classes:tm,props:n,className:h,style:i,classNames:r,styles:d,unstyled:g,vars:c,varsResolver:Z1}),y=fb(()=>u&&S.clearSelected()),C=ar(t,y),M=W.useMemo(()=>nm(f),[f]);W.useEffect(()=>{S.initialize(f)},[f]);const E=f.map((T,L)=>G.jsx(Du,{node:T,getStyles:w,rootIndex:L,expandOnClick:s,selectOnClick:l,controller:S,renderNode:a,flatValues:M,allowRangeSelection:p,expandOnSpace:m},T.value));return G.jsx(ge,{component:"ul",ref:C,...w("root"),...b,role:"tree","aria-multiselectable":S.multiple,"data-tree-root":!0,children:E})});zu.displayName="@mantine/core/Tree",zu.classes=tm;const X1="/felix/assets/felix_wasm_bridge_bg-CHdd_nk6.wasm",J1=async(e={},t)=>{let n;if(t.startsWith("data:")){const r=t.replace(/^data:.*?base64,/,"");let h;if(typeof Buffer=="function"&&typeof Buffer.from=="function")h=Buffer.from(r,"base64");else if(typeof atob=="function"){const i=atob(r);h=new Uint8Array(i.length);for(let d=0;d"u"?(0,ah.require)("util").TextDecoder:TextDecoder;let rm=new nx("utf-8",{ignoreBOM:!0,fatal:!0});rm.decode();let pa=null;function fa(){return(pa===null||pa.byteLength===0)&&(pa=new Uint8Array(Pe.memory.buffer)),pa}function So(e,t){return e=e>>>0,rm.decode(fa().subarray(e,e+t))}function Fu(e){return e==null}let li=null;function Nt(){return(li===null||li.buffer.detached===!0||li.buffer.detached===void 0&&li.buffer!==Pe.memory.buffer)&&(li=new DataView(Pe.memory.buffer)),li}let cr=0;const rx=typeof TextEncoder>"u"?(0,ah.require)("util").TextEncoder:TextEncoder;let ga=new rx("utf-8");const ix=typeof ga.encodeInto=="function"?function(e,t){return ga.encodeInto(e,t)}:function(e,t){const n=ga.encode(e);return t.set(n),{read:e.length,written:n.length}};function $o(e,t,n){if(n===void 0){const g=ga.encode(e),c=t(g.length,1)>>>0;return fa().subarray(c,c+g.length).set(g),cr=g.length,c}let r=e.length,h=t(r,1)>>>0;const i=fa();let d=0;for(;d127)break;i[h+d]=g}if(d!==r){d!==0&&(e=e.slice(d)),h=n(h,r,r=d+e.length*3,1)>>>0;const g=fa().subarray(h+d,h+r),c=ix(e,g);d+=c.written,h=n(h,r,d,1)>>>0}return cr=d,h}function Pu(e){const t=typeof e;if(t=="number"||t=="boolean"||e==null)return`${e}`;if(t=="string")return`"${e}"`;if(t=="symbol"){const h=e.description;return h==null?"Symbol":`Symbol(${h})`}if(t=="function"){const h=e.name;return typeof h=="string"&&h.length>0?`Function(${h})`:"Function"}if(Array.isArray(e)){const h=e.length;let i="[";h>0&&(i+=Pu(e[0]));for(let d=1;d1)r=n[1];else return toString.call(e);if(r=="Object")try{return"Object("+JSON.stringify(e)+")"}catch{return"Object"}return e instanceof Error?`${e.name}: ${e.message} +${e.stack}`:r}function ox(e,t){const n=$o(e,Pe.__wbindgen_malloc,Pe.__wbindgen_realloc),r=cr,h=Pe.parse(n,r,Rt(t));return xo(h)}function sx(){let e,t;try{const h=Pe.__wbindgen_add_to_stack_pointer(-16);Pe.type_system_name(h);var n=Nt().getInt32(h+4*0,!0),r=Nt().getInt32(h+4*1,!0);return e=n,t=r,So(n,r)}finally{Pe.__wbindgen_add_to_stack_pointer(16),Pe.__wbindgen_free(e,t,1)}}function ax(e){xo(e)}function lx(e){const t=Ce(e);return typeof t=="boolean"?t?1:0:2}function cx(e){const t=Ce(e);return Rt(t)}function ux(e,t){const n=new Error(So(e,t));return Rt(n)}function hx(e){const t=Ce(e);return typeof t=="object"&&t!==null}function dx(e){return Ce(e)===void 0}function px(e,t){return Ce(e)in Ce(t)}function fx(){const e=new Error;return Rt(e)}function gx(e,t){const n=Ce(t).stack,r=$o(n,Pe.__wbindgen_malloc,Pe.__wbindgen_realloc),h=cr;Nt().setInt32(e+4*1,h,!0),Nt().setInt32(e+4*0,r,!0)}function mx(e,t){let n,r;try{n=e,r=t,console.error(So(e,t))}finally{Pe.__wbindgen_free(n,r,1)}}function vx(e,t){return Ce(e)==Ce(t)}function yx(e,t){const n=Ce(t),r=typeof n=="number"?n:void 0;Nt().setFloat64(e+8*1,Fu(r)?0:r,!0),Nt().setInt32(e+4*0,!Fu(r),!0)}function bx(e,t){const n=Ce(t),r=typeof n=="string"?n:void 0;var h=Fu(r)?0:$o(r,Pe.__wbindgen_malloc,Pe.__wbindgen_realloc),i=cr;Nt().setInt32(e+4*1,i,!0),Nt().setInt32(e+4*0,h,!0)}function wx(e,t){const n=String(Ce(t)),r=$o(n,Pe.__wbindgen_malloc,Pe.__wbindgen_realloc),h=cr;Nt().setInt32(e+4*1,h,!0),Nt().setInt32(e+4*0,r,!0)}function xx(e){return Rt(e)}function Sx(e,t){const n=So(e,t);return Rt(n)}function $x(e,t){const n=Ce(e)[Ce(t)];return Rt(n)}function Cx(e,t,n){Ce(e)[xo(t)]=xo(n)}function kx(){const e=new Array;return Rt(e)}function _x(){const e=new Object;return Rt(e)}function Mx(e,t,n){Ce(e)[t>>>0]=xo(n)}function Ax(e){let t;try{t=Ce(e)instanceof ArrayBuffer}catch{t=!1}return t}function Tx(e){const t=Ce(e).buffer;return Rt(t)}function Ex(e){const t=new Uint8Array(Ce(e));return Rt(t)}function Lx(e,t,n){Ce(e).set(Ce(t),n>>>0)}function Rx(e){return Ce(e).length}function Nx(e){let t;try{t=Ce(e)instanceof Uint8Array}catch{t=!1}return t}function Ix(e,t){const n=Pu(Ce(t)),r=$o(n,Pe.__wbindgen_malloc,Pe.__wbindgen_realloc),h=cr;Nt().setInt32(e+4*1,h,!0),Nt().setInt32(e+4*0,r,!0)}function Ox(e,t){throw new Error(So(e,t))}function Dx(){const e=Pe.memory;return Rt(e)}URL=globalThis.URL;const ur=await J1({"./felix_wasm_bridge_bg.js":{__wbindgen_object_drop_ref:ax,__wbindgen_boolean_get:lx,__wbindgen_object_clone_ref:cx,__wbindgen_error_new:ux,__wbindgen_is_object:hx,__wbindgen_is_undefined:dx,__wbindgen_in:px,__wbg_new_abda76e883ba8a5f:fx,__wbg_stack_658279fe44541cf6:gx,__wbg_error_f851667af71bcfc6:mx,__wbindgen_jsval_loose_eq:vx,__wbindgen_number_get:yx,__wbindgen_string_get:bx,__wbg_String_b9412f8799faab3e:wx,__wbindgen_number_new:xx,__wbindgen_string_new:Sx,__wbg_getwithrefkey_edc2c8960f0f1191:$x,__wbg_set_f975102236d3c502:Cx,__wbg_new_16b304a2cfa7ff4a:kx,__wbg_new_72fb9a18b5ae2624:_x,__wbg_set_d4638f722068f043:Mx,__wbg_instanceof_ArrayBuffer_836825be07d4c9d2:Ax,__wbg_buffer_12d079cc21e14bdb:Tx,__wbg_new_63b92bc8671ed464:Ex,__wbg_set_a47bac70306a19a7:Lx,__wbg_length_c20a40f15020d68a:Rx,__wbg_instanceof_Uint8Array_2b3bbecd033d19f6:Nx,__wbindgen_debug_string:Ix,__wbindgen_throw:Ox,__wbindgen_memory:Dx}},X1),zx=ur.memory,Fx=ur.parse,Px=ur.type_system_name,jx=ur.__wbindgen_malloc,Wx=ur.__wbindgen_realloc,Hx=ur.__wbindgen_add_to_stack_pointer,Bx=ur.__wbindgen_free,Ux=Object.freeze(Object.defineProperty({__proto__:null,__wbindgen_add_to_stack_pointer:Hx,__wbindgen_free:Bx,__wbindgen_malloc:jx,__wbindgen_realloc:Wx,memory:zx,parse:Fx,type_system_name:Px},Symbol.toStringTag,{value:"Module"}));ex(Ux);var im={exports:{}};(function(e,t){(function(){var n="ace",r=function(){return this}();!r&&typeof window<"u"&&(r=window);var h=function(s,o,a){if(typeof s!="string"){h.original?h.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace());return}arguments.length==2&&(a=o),h.modules[s]||(h.payloads[s]=a,h.modules[s]=null)};h.modules={},h.payloads={};var i=function(s,o,a){if(typeof o=="string"){var l=c(s,o);if(l!=null)return a&&a(),l}else if(Object.prototype.toString.call(o)==="[object Array]"){for(var u=[],p=0,m=o.length;pc.length)&&(g=c.length),g-=d.length;var f=c.indexOf(d,g);return f!==-1&&f===g}),String.prototype.repeat||i(String.prototype,"repeat",function(d){for(var g="",c=this;d>0;)d&1&&(g+=c),(d>>=1)&&(c+=c);return g}),String.prototype.includes||i(String.prototype,"includes",function(d,g){return this.indexOf(d,g)!=-1}),Object.assign||(Object.assign=function(d){if(d==null)throw new TypeError("Cannot convert undefined or null to object");for(var g=Object(d),c=1;c>>0,f=arguments[1],s=f>>0,o=s<0?Math.max(c+s,0):Math.min(s,c),a=arguments[2],l=a===void 0?c:a>>0,u=l<0?Math.max(c+l,0):Math.min(l,c);o0;)c&1&&(f+=g),(c>>=1)&&(g+=g);return f};var i=/^\s\s*/,d=/\s\s*$/;r.stringTrimLeft=function(g){return g.replace(i,"")},r.stringTrimRight=function(g){return g.replace(d,"")},r.copyObject=function(g){var c={};for(var f in g)c[f]=g[f];return c},r.copyArray=function(g){for(var c=[],f=0,s=g.length;f65535?2:1}}),ace.define("ace/lib/useragent",["require","exports","module"],function(n,r,h){r.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},r.getOS=function(){return r.isMac?r.OS.MAC:r.isLinux?r.OS.LINUX:r.OS.WINDOWS};var i=typeof navigator=="object"?navigator:{},d=(/mac|win|linux/i.exec(i.platform)||["other"])[0].toLowerCase(),g=i.userAgent||"",c=i.appName||"";r.isWin=d=="win",r.isMac=d=="mac",r.isLinux=d=="linux",r.isIE=c=="Microsoft Internet Explorer"||c.indexOf("MSAppHost")>=0?parseFloat((g.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((g.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),r.isOldIE=r.isIE&&r.isIE<9,r.isGecko=r.isMozilla=g.match(/ Gecko\/\d+/),r.isOpera=typeof opera=="object"&&Object.prototype.toString.call(window.opera)=="[object Opera]",r.isWebKit=parseFloat(g.split("WebKit/")[1])||void 0,r.isChrome=parseFloat(g.split(" Chrome/")[1])||void 0,r.isSafari=parseFloat(g.split(" Safari/")[1])&&!r.isChrome||void 0,r.isEdge=parseFloat(g.split(" Edge/")[1])||void 0,r.isAIR=g.indexOf("AdobeAIR")>=0,r.isAndroid=g.indexOf("Android")>=0,r.isChromeOS=g.indexOf(" CrOS ")>=0,r.isIOS=/iPad|iPhone|iPod/.test(g)&&!window.MSStream,r.isIOS&&(r.isMac=!0),r.isMobile=r.isIOS||r.isAndroid}),ace.define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(n,r,h){var i=n("./useragent"),d="http://www.w3.org/1999/xhtml";r.buildDom=function a(l,u,p){if(typeof l=="string"&&l){var m=document.createTextNode(l);return u&&u.appendChild(m),m}if(!Array.isArray(l))return l&&l.appendChild&&u&&u.appendChild(l),l;if(typeof l[0]!="string"||!l[0]){for(var v=[],b=0;b"u")){if(c){if(u)f();else if(u===!1)return c.push([a,l])}if(!g){var p=u;!u||!u.getRootNode?p=document:(p=u.getRootNode(),(!p||p==u)&&(p=document));var m=p.ownerDocument||p;if(l&&r.hasCssString(l,p))return null;l&&(a+=` +/*# sourceURL=ace/css/`+l+" */");var v=r.createElement("style");v.appendChild(m.createTextNode(a)),l&&(v.id=l),p==m&&(p=r.getDocumentHead(m)),p.insertBefore(v,p.firstChild)}}}if(r.importCssString=s,r.importCssStylsheet=function(a,l){r.buildDom(["link",{rel:"stylesheet",href:a}],r.getDocumentHead(l))},r.scrollbarWidth=function(a){var l=r.createElement("ace_inner");l.style.width="100%",l.style.minWidth="0px",l.style.height="200px",l.style.display="block";var u=r.createElement("ace_outer"),p=u.style;p.position="absolute",p.left="-10000px",p.overflow="hidden",p.width="200px",p.minWidth="0px",p.height="150px",p.display="block",u.appendChild(l);var m=a&&a.documentElement||document&&document.documentElement;if(!m)return 0;m.appendChild(u);var v=l.offsetWidth;p.overflow="scroll";var b=l.offsetWidth;return v===b&&(b=u.clientWidth),m.removeChild(u),v-b},r.computedStyle=function(a,l){return window.getComputedStyle(a,"")||{}},r.setStyle=function(a,l,u){a[l]!==u&&(a[l]=u)},r.HAS_CSS_ANIMATION=!1,r.HAS_CSS_TRANSFORMS=!1,r.HI_DPI=i.isWin?typeof window<"u"&&window.devicePixelRatio>=1.5:!0,i.isChromeOS&&(r.HI_DPI=!1),typeof document<"u"){var o=document.createElement("div");r.HI_DPI&&o.style.transform!==void 0&&(r.HAS_CSS_TRANSFORMS=!0),!i.isEdge&&typeof o.style.animationName<"u"&&(r.HAS_CSS_ANIMATION=!0),o=null}r.HAS_CSS_TRANSFORMS?r.translate=function(a,l,u){a.style.transform="translate("+Math.round(l)+"px, "+Math.round(u)+"px)"}:r.translate=function(a,l,u){a.style.top=Math.round(u)+"px",a.style.left=Math.round(l)+"px"}}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(n,r,h){var i=n("./dom");r.get=function(d,g){var c=new XMLHttpRequest;c.open("GET",d,!0),c.onreadystatechange=function(){c.readyState===4&&g(c.responseText)},c.send(null)},r.loadScript=function(d,g){var c=i.getDocumentHead(),f=document.createElement("script");f.src=d,c.appendChild(f),f.onload=f.onreadystatechange=function(s,o){(o||!f.readyState||f.readyState=="loaded"||f.readyState=="complete")&&(f=f.onload=f.onreadystatechange=null,o||g())}},r.qualifyURL=function(d){var g=document.createElement("a");return g.href=d,g.href}}),ace.define("ace/lib/oop",["require","exports","module"],function(n,r,h){r.inherits=function(i,d){i.super_=d,i.prototype=Object.create(d.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}})},r.mixin=function(i,d){for(var g in d)i[g]=d[g];return i},r.implement=function(i,d){r.mixin(i,d)}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(n,r,h){var i={},d=function(){this.propagationStopped=!0},g=function(){this.defaultPrevented=!0};i._emit=i._dispatchEvent=function(c,f){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var s=this._eventRegistry[c]||[],o=this._defaultHandlers[c];if(!(!s.length&&!o)){(typeof f!="object"||!f)&&(f={}),f.type||(f.type=c),f.stopPropagation||(f.stopPropagation=d),f.preventDefault||(f.preventDefault=g),s=s.slice();for(var a=0;a1&&(v=p[p.length-2]);var _=f[u+"Path"];return _==null?_=f.basePath:m=="/"&&(u=m=""),_&&_.slice(-1)!="/"&&(_+="/"),_+u+m+v+this.get("suffix")},r.setModuleUrl=function(l,u){return f.$moduleUrls[l]=u};var s=function(l,u){if(l==="ace/theme/textmate"||l==="./theme/textmate")return u(null,n("./theme/textmate"));if(o)return o(l,u);console.error("loader is not configured")},o;r.setLoader=function(l){o=l},r.dynamicModules=Object.create(null),r.$loading={},r.$loaded={},r.loadModule=function(l,u){var p;if(Array.isArray(l))var m=l[0],v=l[1];else if(typeof l=="string")var v=l;var b=function(_){if(_&&!r.$loading[v])return u&&u(_);if(r.$loading[v]||(r.$loading[v]=[]),r.$loading[v].push(u),!(r.$loading[v].length>1)){var S=function(){s(v,function(w,y){y&&(r.$loaded[v]=y),r._emit("load.module",{name:v,module:y});var C=r.$loading[v];r.$loading[v]=null,C.forEach(function(M){M&&M(y)})})};if(!r.get("packaged"))return S();d.loadScript(r.moduleUrl(v,m),S),a()}};if(r.dynamicModules[v])r.dynamicModules[v]().then(function(_){_.default?b(_.default):b(_)});else{try{p=this.$require(v)}catch{}b(p||r.$loaded[v])}},r.$require=function(l){if(typeof h.require=="function"){var u="require";return h[u](l)}},r.setModuleLoader=function(l,u){r.dynamicModules[l]=u};var a=function(){!f.basePath&&!f.workerPath&&!f.modePath&&!f.themePath&&!Object.keys(f.$moduleUrls).length&&(console.error("Unable to infer path to ace from script src,","use ace.config.set('basePath', 'path') to enable dynamic loading of modes and themes","or with webpack use ace/webpack-resolver"),a=function(){})};r.version="1.36.2"}),ace.define("ace/loader_build",["require","exports","module","ace/lib/fixoldbrowsers","ace/config"],function(n,r,h){n("./lib/fixoldbrowsers");var i=n("./config");i.setLoader(function(f,s){n([f],function(o){s(null,o)})});var d=function(){return this||typeof window<"u"&&window}();h.exports=function(f){i.init=g,i.$require=n,f.require=n},g(!0);function g(f){if(!(!d||!d.document)){i.set("packaged",f||n.packaged||h.packaged||d.define&&(void 0).packaged);var s={},o="",a=document.currentScript||document._currentScript,l=a&&a.ownerDocument||document;a&&a.src&&(o=a.src.split(/[?#]/)[0].split("/").slice(0,-1).join("/")||"");for(var u=l.getElementsByTagName("script"),p=0;p ["+this.end.row+"/"+this.end.column+"]"},d.prototype.contains=function(g,c){return this.compare(g,c)==0},d.prototype.compareRange=function(g){var c,f=g.end,s=g.start;return c=this.compare(f.row,f.column),c==1?(c=this.compare(s.row,s.column),c==1?2:c==0?1:0):c==-1?-2:(c=this.compare(s.row,s.column),c==-1?-1:c==1?42:0)},d.prototype.comparePoint=function(g){return this.compare(g.row,g.column)},d.prototype.containsRange=function(g){return this.comparePoint(g.start)==0&&this.comparePoint(g.end)==0},d.prototype.intersects=function(g){var c=this.compareRange(g);return c==-1||c==0||c==1},d.prototype.isEnd=function(g,c){return this.end.row==g&&this.end.column==c},d.prototype.isStart=function(g,c){return this.start.row==g&&this.start.column==c},d.prototype.setStart=function(g,c){typeof g=="object"?(this.start.column=g.column,this.start.row=g.row):(this.start.row=g,this.start.column=c)},d.prototype.setEnd=function(g,c){typeof g=="object"?(this.end.column=g.column,this.end.row=g.row):(this.end.row=g,this.end.column=c)},d.prototype.inside=function(g,c){return this.compare(g,c)==0?!(this.isEnd(g,c)||this.isStart(g,c)):!1},d.prototype.insideStart=function(g,c){return this.compare(g,c)==0?!this.isEnd(g,c):!1},d.prototype.insideEnd=function(g,c){return this.compare(g,c)==0?!this.isStart(g,c):!1},d.prototype.compare=function(g,c){return!this.isMultiLine()&&g===this.start.row?cthis.end.column?1:0:gthis.end.row?1:this.start.row===g?c>=this.start.column?0:-1:this.end.row===g?c<=this.end.column?0:1:0},d.prototype.compareStart=function(g,c){return this.start.row==g&&this.start.column==c?-1:this.compare(g,c)},d.prototype.compareEnd=function(g,c){return this.end.row==g&&this.end.column==c?1:this.compare(g,c)},d.prototype.compareInside=function(g,c){return this.end.row==g&&this.end.column==c?1:this.start.row==g&&this.start.column==c?-1:this.compare(g,c)},d.prototype.clipRows=function(g,c){if(this.end.row>c)var f={row:c+1,column:0};else if(this.end.rowc)var s={row:c+1,column:0};else if(this.start.row1?(M++,M>4&&(M=1)):M=1,d.isIE){var A=Math.abs(x.clientX-E)>5||Math.abs(x.clientY-T)>5;(!L||A)&&(M=1),L&&clearTimeout(L),L=setTimeout(function(){L=null},S[M-1]||600),M==1&&(E=x.clientX,T=x.clientY)}if(x._clicks=M,w[y]("mousedown",x),M>4)M=0;else if(M>1)return w[y]($[M],x)}Array.isArray(_)||(_=[_]),_.forEach(function(x){l(x,"mousedown",k,C)})};function p(_){return 0|(_.ctrlKey?1:0)|(_.altKey?2:0)|(_.shiftKey?4:0)|(_.metaKey?8:0)}r.getModifierString=function(_){return i.KEY_MODS[p(_)]};function m(_,S,w){var y=p(S);if(!w&&S.code&&(w=i.$codeToKeyCode[S.code]||w),!d.isMac&&g){if(S.getModifierState&&(S.getModifierState("OS")||S.getModifierState("Win"))&&(y|=8),g.altGr)if((3&y)!=3)g.altGr=0;else return;if(w===18||w===17){var C=S.location;if(w===17&&C===1)g[w]==1&&(c=S.timeStamp);else if(w===18&&y===3&&C===2){var M=S.timeStamp-c;M<50&&(g.altGr=!0)}}}if(w in i.MODIFIER_KEYS&&(w=-1),!(!y&&w===13&&S.location===3&&(_(S,y,-w),S.defaultPrevented))){if(d.isChromeOS&&y&8){if(_(S,y,w),S.defaultPrevented)return;y&=-9}return!y&&!(w in i.FUNCTION_KEYS)&&!(w in i.PRINTABLE_KEYS)?!1:_(S,y,w)}}r.addCommandKeyListener=function(_,S,w){var y=null;l(_,"keydown",function(C){g[C.keyCode]=(g[C.keyCode]||0)+1;var M=m(S,C,C.keyCode);return y=C.defaultPrevented,M},w),l(_,"keypress",function(C){y&&(C.ctrlKey||C.altKey||C.shiftKey||C.metaKey)&&(r.stopEvent(C),y=null)},w),l(_,"keyup",function(C){g[C.keyCode]=null},w),g||(v(),l(window,"focus",v))};function v(){g=Object.create(null)}if(typeof window=="object"&&window.postMessage&&!d.isOldIE){var b=1;r.nextTick=function(_,S){S=S||window;var w="zero-timeout-message-"+b++,y=function(C){C.data==w&&(r.stopPropagation(C),u(S,"message",y),_())};l(S,"message",y),S.postMessage(w,"*")}}r.$idleBlocked=!1,r.onIdle=function(_,S){return setTimeout(function w(){r.$idleBlocked?setTimeout(w,100):_()},S)},r.$idleBlockId=null,r.blockIdle=function(_){r.$idleBlockId&&clearTimeout(r.$idleBlockId),r.$idleBlocked=!0,r.$idleBlockId=setTimeout(function(){r.$idleBlocked=!1},_||100)},r.nextFrame=typeof window=="object"&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),r.nextFrame?r.nextFrame=r.nextFrame.bind(window):r.nextFrame=function(_){setTimeout(_,17)}}),ace.define("ace/clipboard",["require","exports","module"],function(n,r,h){var i;h.exports={lineMode:!1,pasteCancelled:function(){return i&&i>Date.now()-50?!0:i=!1},cancel:function(){i=Date.now()}}}),ace.define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/config","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/clipboard","ace/lib/keys"],function(n,r,h){var i=n("../lib/event"),d=n("../config").nls,g=n("../lib/useragent"),c=n("../lib/dom"),f=n("../lib/lang"),s=n("../clipboard"),o=g.isChrome<18,a=g.isIE,l=g.isChrome>63,u=400,p=n("../lib/keys"),m=p.KEY_MODS,v=g.isIOS,b=v?/\s/:/\n/,_=g.isMobile,S;S=function(w,y){var C=c.createElement("textarea");C.className="ace_text-input",C.setAttribute("wrap","off"),C.setAttribute("autocorrect","off"),C.setAttribute("autocapitalize","off"),C.setAttribute("spellcheck","false"),C.style.opacity="0",w.insertBefore(C,w.firstChild);var M=!1,E=!1,T=!1,L=!1,$="";_||(C.style.fontSize="1px");var k=!1,x=!1,A="",R=0,I=0,N=0,O=Number.MAX_SAFE_INTEGER,D=Number.MIN_SAFE_INTEGER,F=0;try{var B=document.activeElement===C}catch{}this.setNumberOfExtraLines=function(Q){if(O=Number.MAX_SAFE_INTEGER,D=Number.MIN_SAFE_INTEGER,Q<0){F=0;return}F=Q},this.setAriaOptions=function(Q){if(Q.activeDescendant?(C.setAttribute("aria-haspopup","true"),C.setAttribute("aria-autocomplete",Q.inline?"both":"list"),C.setAttribute("aria-activedescendant",Q.activeDescendant)):(C.setAttribute("aria-haspopup","false"),C.setAttribute("aria-autocomplete","both"),C.removeAttribute("aria-activedescendant")),Q.role&&C.setAttribute("role",Q.role),Q.setLabel){C.setAttribute("aria-roledescription",d("text-input.aria-roledescription","editor"));var re="";if(y.$textInputAriaLabel&&(re+="".concat(y.$textInputAriaLabel,", ")),y.session){var ie=y.session.selection.cursor.row;re+=d("text-input.aria-label","Cursor at row $0",[ie+1])}C.setAttribute("aria-label",re)}},this.setAriaOptions({role:"textbox"}),i.addListener(C,"blur",function(Q){x||(y.onBlur(Q),B=!1)},y),i.addListener(C,"focus",function(Q){if(!x){if(B=!0,g.isEdge)try{if(!document.hasFocus())return}catch{}y.onFocus(Q),g.isEdge?setTimeout(P):P()}},y),this.$focusScroll=!1,this.focus=function(){if(this.setAriaOptions({setLabel:y.renderer.enableKeyboardAccessibility}),$||l||this.$focusScroll=="browser")return C.focus({preventScroll:!0});var Q=C.style.top;C.style.position="fixed",C.style.top="0px";try{var re=C.getBoundingClientRect().top!=0}catch{return}var ie=[];if(re)for(var he=C.parentElement;he&&he.nodeType==1;)ie.push(he),he.setAttribute("ace_nocontext","true"),!he.parentElement&&he.getRootNode?he=he.getRootNode().host:he=he.parentElement;C.focus({preventScroll:!0}),re&&ie.forEach(function(ue){ue.removeAttribute("ace_nocontext")}),setTimeout(function(){C.style.position="",C.style.top=="0px"&&(C.style.top=Q)},0)},this.blur=function(){C.blur()},this.isFocused=function(){return B},y.on("beforeEndOperation",function(){var Q=y.curOp,re=Q&&Q.command&&Q.command.name;if(re!="insertstring"){var ie=re&&(Q.docChanged||Q.selectionChanged);T&&ie&&(A=C.value="",Gt()),P()}});var j=function(Q,re){for(var ie=re,he=1;he<=Q-O&&he<2*F+1;he++)ie+=y.session.getLine(Q-he).length+1;return ie},P=v?function(Q){if(!(!B||M&&!Q||L)){Q||(Q="");var re=` + ab`+Q+`cde fg +`;re!=C.value&&(C.value=A=re);var ie=4,he=4+(Q.length||(y.selection.isEmpty()?0:1));(R!=ie||I!=he)&&C.setSelectionRange(ie,he),R=ie,I=he}}:function(){if(!(T||L)&&!(!B&&!q)){T=!0;var Q=0,re=0,ie="";if(y.session){var he=y.selection,ue=he.getRange(),ke=he.cursor.row;ke===D+1?(O=D+1,D=O+2*F):ke===O-1?(D=O-1,O=D-2*F):(keD+1)&&(O=ke>F?ke-F:0,D=ke>F?ke+F:2*F);for(var Ne=[],Ae=O;Ae<=D;Ae++)Ne.push(y.session.getLine(Ae));if(ie=Ne.join(` +`),Q=j(ue.start.row,ue.start.column),re=j(ue.end.row,ue.end.column),ue.start.rowD){var pe=y.session.getLine(D+1);re=ue.end.row>D+1?pe.length:ue.end.column,re+=ie.length+1,ie=ie+` +`+pe}else _&&ke>0&&(ie=` +`+ie,re+=1,Q+=1);ie.length>u&&(Q=A.length&&Q.value===A&&A&&Q.selectionEnd!==I},U=function(Q){T||(M?M=!1:H(C)?(y.selectAll(),P()):_&&C.selectionStart!=R&&P())},K=null;this.setInputHandler=function(Q){K=Q},this.getInputHandler=function(){return K};var q=!1,X=function(Q,re){if(q&&(q=!1),E)return P(),Q&&y.onPaste(Q),E=!1,"";for(var ie=C.selectionStart,he=C.selectionEnd,ue=R,ke=A.length-I,Ne=Q,Ae=Q.length-ie,be=Q.length-he,pe=0;ue>0&&A[pe]==Q[pe];)pe++,ue--;for(Ne=Ne.slice(pe),pe=1;ke>0&&A.length-pe>R-1&&A[A.length-pe]==Q[Q.length-pe];)pe++,ke--;Ae-=pe-1,be-=pe-1;var Je=Ne.length-pe+1;if(Je<0&&(ue=-Je,Je=0),Ne=Ne.slice(0,Je),!re&&!Ne&&!Ae&&!ue&&!ke&&!be)return"";L=!0;var gr=!1;return g.isAndroid&&Ne==". "&&(Ne=" ",gr=!0),Ne&&!ue&&!ke&&!Ae&&!be||k?y.onTextInput(Ne):y.onTextInput(Ne,{extendLeft:ue,extendRight:ke,restoreStart:Ae,restoreEnd:be}),L=!1,A=Q,R=ie,I=he,N=be,gr?` +`:Ne},ee=function(Q){if(T)return Vt();if(Q&&Q.inputType){if(Q.inputType=="historyUndo")return y.execCommand("undo");if(Q.inputType=="historyRedo")return y.execCommand("redo")}var re=C.value,ie=X(re,!0);(re.length>u+100||b.test(ie)||_&&R<1&&R==I)&&P()},se=function(Q,re,ie){var he=Q.clipboardData||window.clipboardData;if(!(!he||o)){var ue=a||ie?"Text":"text/plain";try{return re?he.setData(ue,re)!==!1:he.getData(ue)}catch(ke){if(!ie)return se(ke,re,!0)}}},le=function(Q,re){var ie=y.getCopyText();if(!ie)return i.preventDefault(Q);se(Q,ie)?(v&&(P(ie),M=ie,setTimeout(function(){M=!1},10)),re?y.onCut():y.onCopy(),i.preventDefault(Q)):(M=!0,C.value=ie,C.select(),setTimeout(function(){M=!1,P(),re?y.onCut():y.onCopy()}))},je=function(Q){le(Q,!0)},Re=function(Q){le(Q,!1)},ye=function(Q){var re=se(Q);s.pasteCancelled()||(typeof re=="string"?(re&&y.onPaste(re,Q),g.isIE&&setTimeout(P),i.preventDefault(Q)):(C.value="",E=!0))};i.addCommandKeyListener(C,function(Q,re,ie){if(!T)return y.onCommandKey(Q,re,ie)},y),i.addListener(C,"select",U,y),i.addListener(C,"input",ee,y),i.addListener(C,"cut",je,y),i.addListener(C,"copy",Re,y),i.addListener(C,"paste",ye,y),(!("oncut"in C)||!("oncopy"in C)||!("onpaste"in C))&&i.addListener(w,"keydown",function(Q){if(!(g.isMac&&!Q.metaKey||!Q.ctrlKey))switch(Q.keyCode){case 67:Re(Q);break;case 86:ye(Q);break;case 88:je(Q);break}},y);var Xe=function(Q){if(!(T||!y.onCompositionStart||y.$readOnly)&&(T={},!k)){Q.data&&(T.useTextareaForIME=!1),setTimeout(Vt,0),y._signal("compositionStart"),y.on("mousedown",fr);var re=y.getSelectionRange();re.end.row=re.start.row,re.end.column=re.start.column,T.markerRange=re,T.selectionStart=R,y.onCompositionStart(T),T.useTextareaForIME?(A=C.value="",R=0,I=0):(C.msGetInputContext&&(T.context=C.msGetInputContext()),C.getInputContext&&(T.context=C.getInputContext()))}},Vt=function(){if(!(!T||!y.onCompositionUpdate||y.$readOnly)){if(k)return fr();if(T.useTextareaForIME)y.onCompositionUpdate(C.value);else{var Q=C.value;X(Q),T.markerRange&&(T.context&&(T.markerRange.start.column=T.selectionStart=T.context.compositionStartOffset),T.markerRange.end.column=T.markerRange.start.column+I-T.selectionStart+N)}}},Gt=function(Q){!y.onCompositionEnd||y.$readOnly||(T=!1,y.onCompositionEnd(),y.off("mousedown",fr),Q&&ee())};function fr(){x=!0,C.blur(),C.focus(),x=!1}var Sa=f.delayedCall(Vt,50).schedule.bind(null,null);function Ju(Q){Q.keyCode==27&&C.value.lengthI&&A[be]==` +`?pe=p.end:AeI&&A.slice(0,be).split(` +`).length>2?pe=p.down:be>I&&A[be-1]==" "?(pe=p.right,Je=m.option):(be>I||be==I&&I!=R&&Ae==be)&&(pe=p.right),Ae!==be&&(Je|=m.shift),pe){var gr=re.onCommandKey({},Je,pe);if(!gr&&re.commands){pe=p.keyCodeToString(pe);var $a=re.commands.findKeyCommand(Je,pe);$a&&re.execCommand($a)}R=Ae,I=be,P("")}}};document.addEventListener("selectionchange",ke),re.on("destroy",function(){document.removeEventListener("selectionchange",ke)})}this.destroy=function(){C.parentElement&&C.parentElement.removeChild(C)}},r.TextInput=S,r.$setUserAgentForTests=function(w,y){_=w,v=y}}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/useragent"],function(n,r,h){var i=n("../lib/useragent"),d=0,g=550,c=function(){function o(a){a.$clickSelection=null;var l=a.editor;l.setDefaultHandler("mousedown",this.onMouseDown.bind(a)),l.setDefaultHandler("dblclick",this.onDoubleClick.bind(a)),l.setDefaultHandler("tripleclick",this.onTripleClick.bind(a)),l.setDefaultHandler("quadclick",this.onQuadClick.bind(a)),l.setDefaultHandler("mousewheel",this.onMouseWheel.bind(a));var u=["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"];u.forEach(function(p){a[p]=this[p]},this),a.selectByLines=this.extendSelectionBy.bind(a,"getLineRange"),a.selectByWords=this.extendSelectionBy.bind(a,"getWordRange")}return o.prototype.onMouseDown=function(a){var l=a.inSelection(),u=a.getDocumentPosition();this.mousedownEvent=a;var p=this.editor,m=a.getButton();if(m!==0){var v=p.getSelectionRange(),b=v.isEmpty();(b||m==1)&&p.selection.moveToPosition(u),m==2&&(p.textInput.onContextMenu(a.domEvent),i.isMozilla||a.preventDefault());return}if(this.mousedownEvent.time=Date.now(),l&&!p.isFocused()&&(p.focus(),this.$focusTimeout&&!this.$clickSelection&&!p.inMultiSelectMode)){this.setState("focusWait"),this.captureMouse(a);return}return this.captureMouse(a),this.startSelect(u,a.domEvent._clicks>1),a.preventDefault()},o.prototype.startSelect=function(a,l){a=a||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var u=this.editor;this.mousedownEvent&&(this.mousedownEvent.getShiftKey()?u.selection.selectToPosition(a):l||u.selection.moveToPosition(a),l||this.select(),u.setStyle("ace_selecting"),this.setState("select"))},o.prototype.select=function(){var a,l=this.editor,u=l.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var p=this.$clickSelection.comparePoint(u);if(p==-1)a=this.$clickSelection.end;else if(p==1)a=this.$clickSelection.start;else{var m=s(this.$clickSelection,u);u=m.cursor,a=m.anchor}l.selection.setSelectionAnchor(a.row,a.column)}l.selection.selectToPosition(u),l.renderer.scrollCursorIntoView()},o.prototype.extendSelectionBy=function(a){var l,u=this.editor,p=u.renderer.screenToTextCoordinates(this.x,this.y),m=u.selection[a](p.row,p.column);if(this.$clickSelection){var v=this.$clickSelection.comparePoint(m.start),b=this.$clickSelection.comparePoint(m.end);if(v==-1&&b<=0)l=this.$clickSelection.end,(m.end.row!=p.row||m.end.column!=p.column)&&(p=m.start);else if(b==1&&v>=0)l=this.$clickSelection.start,(m.start.row!=p.row||m.start.column!=p.column)&&(p=m.end);else if(v==-1&&b==1)p=m.end,l=m.start;else{var _=s(this.$clickSelection,p);p=_.cursor,l=_.anchor}u.selection.setSelectionAnchor(l.row,l.column)}u.selection.selectToPosition(p),u.renderer.scrollCursorIntoView()},o.prototype.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting")},o.prototype.focusWait=function(){var a=f(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),l=Date.now();(a>d||l-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},o.prototype.onDoubleClick=function(a){var l=a.getDocumentPosition(),u=this.editor,p=u.session,m=p.getBracketRange(l);m?(m.isEmpty()&&(m.start.column--,m.end.column++),this.setState("select")):(m=u.selection.getWordRange(l.row,l.column),this.setState("selectByWords")),this.$clickSelection=m,this.select()},o.prototype.onTripleClick=function(a){var l=a.getDocumentPosition(),u=this.editor;this.setState("selectByLines");var p=u.getSelectionRange();p.isMultiLine()&&p.contains(l.row,l.column)?(this.$clickSelection=u.selection.getLineRange(p.start.row),this.$clickSelection.end=u.selection.getLineRange(p.end.row).end):this.$clickSelection=u.selection.getLineRange(l.row),this.select()},o.prototype.onQuadClick=function(a){var l=this.editor;l.selectAll(),this.$clickSelection=l.getSelectionRange(),this.setState("selectAll")},o.prototype.onMouseWheel=function(a){if(!a.getAccelKey()){a.getShiftKey()&&a.wheelY&&!a.wheelX&&(a.wheelX=a.wheelY,a.wheelY=0);var l=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var u=this.$lastScroll,p=a.domEvent.timeStamp,m=p-u.t,v=m?a.wheelX/m:u.vx,b=m?a.wheelY/m:u.vy;m=1&&l.renderer.isScrollableBy(a.wheelX*a.speed,0)&&(S=!0),_<=1&&l.renderer.isScrollableBy(0,a.wheelY*a.speed)&&(S=!0),S)u.allowed=p;else if(p-u.allowedd.clientHeight;g||i.preventDefault()}}),ace.define("ace/tooltip",["require","exports","module","ace/lib/dom","ace/lib/event","ace/range","ace/lib/scroll"],function(n,r,h){var i=this&&this.__extends||function(){var p=function(m,v){return p=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(b,_){b.__proto__=_}||function(b,_){for(var S in _)Object.prototype.hasOwnProperty.call(_,S)&&(b[S]=_[S])},p(m,v)};return function(m,v){if(typeof v!="function"&&v!==null)throw new TypeError("Class extends value "+String(v)+" is not a constructor or null");p(m,v);function b(){this.constructor=m}m.prototype=v===null?Object.create(v):(b.prototype=v.prototype,new b)}}(),d=this&&this.__values||function(p){var m=typeof Symbol=="function"&&Symbol.iterator,v=m&&p[m],b=0;if(v)return v.call(p);if(p&&typeof p.length=="number")return{next:function(){return p&&b>=p.length&&(p=void 0),{value:p&&p[b++],done:!p}}};throw new TypeError(m?"Object is not iterable.":"Symbol.iterator is not defined.")},g=n("./lib/dom");n("./lib/event");var c=n("./range").Range,f=n("./lib/scroll").preventParentScroll,s="ace_tooltip",o=function(){function p(m){this.isOpen=!1,this.$element=null,this.$parentNode=m}return p.prototype.$init=function(){return this.$element=g.createElement("div"),this.$element.className=s,this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},p.prototype.getElement=function(){return this.$element||this.$init()},p.prototype.setText=function(m){this.getElement().textContent=m},p.prototype.setHtml=function(m){this.getElement().innerHTML=m},p.prototype.setPosition=function(m,v){this.getElement().style.left=m+"px",this.getElement().style.top=v+"px"},p.prototype.setClassName=function(m){g.addCssClass(this.getElement(),m)},p.prototype.setTheme=function(m){this.$element.className=s+" "+(m.isDark?"ace_dark ":"")+(m.cssClass||"")},p.prototype.show=function(m,v,b){m!=null&&this.setText(m),v!=null&&b!=null&&this.setPosition(v,b),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},p.prototype.hide=function(m){this.isOpen&&(this.getElement().style.display="none",this.getElement().className=s,this.isOpen=!1)},p.prototype.getHeight=function(){return this.getElement().offsetHeight},p.prototype.getWidth=function(){return this.getElement().offsetWidth},p.prototype.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)},p}(),a=function(){function p(){this.popups=[]}return p.prototype.addPopup=function(m){this.popups.push(m),this.updatePopups()},p.prototype.removePopup=function(m){var v=this.popups.indexOf(m);v!==-1&&(this.popups.splice(v,1),this.updatePopups())},p.prototype.updatePopups=function(){var m,v,b,_;this.popups.sort(function($,k){return k.priority-$.priority});var S=[];try{for(var w=d(this.popups),y=w.next();!y.done;y=w.next()){var C=y.value,M=!0;try{for(var E=(b=void 0,d(S)),T=E.next();!T.done;T=E.next()){var L=T.value;if(this.doPopupsOverlap(L,C)){M=!1;break}}}catch($){b={error:$}}finally{try{T&&!T.done&&(_=E.return)&&_.call(E)}finally{if(b)throw b.error}}M?S.push(C):C.hide()}}catch($){m={error:$}}finally{try{y&&!y.done&&(v=w.return)&&v.call(w)}finally{if(m)throw m.error}}},p.prototype.doPopupsOverlap=function(m,v){var b=m.getElement().getBoundingClientRect(),_=v.getElement().getBoundingClientRect();return b.left<_.right&&b.right>_.left&&b.top<_.bottom&&b.bottom>_.top},p}(),l=new a;r.popupManager=l,r.Tooltip=o;var u=function(p){i(m,p);function m(v){v===void 0&&(v=document.body);var b=p.call(this,v)||this;b.timeout=void 0,b.lastT=0,b.idleTime=350,b.lastEvent=void 0,b.onMouseOut=b.onMouseOut.bind(b),b.onMouseMove=b.onMouseMove.bind(b),b.waitForHover=b.waitForHover.bind(b),b.hide=b.hide.bind(b);var _=b.getElement();return _.style.whiteSpace="pre-wrap",_.style.pointerEvents="auto",_.addEventListener("mouseout",b.onMouseOut),_.tabIndex=-1,_.addEventListener("blur",(function(){_.contains(document.activeElement)||this.hide()}).bind(b)),_.addEventListener("wheel",f),b}return m.prototype.addToEditor=function(v){v.on("mousemove",this.onMouseMove),v.on("mousedown",this.hide),v.renderer.getMouseEventTarget().addEventListener("mouseout",this.onMouseOut,!0)},m.prototype.removeFromEditor=function(v){v.off("mousemove",this.onMouseMove),v.off("mousedown",this.hide),v.renderer.getMouseEventTarget().removeEventListener("mouseout",this.onMouseOut,!0),this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},m.prototype.onMouseMove=function(v,b){this.lastEvent=v,this.lastT=Date.now();var _=b.$mouseHandler.isMousePressed;if(this.isOpen){var S=this.lastEvent&&this.lastEvent.getDocumentPosition();(!this.range||!this.range.contains(S.row,S.column)||_||this.isOutsideOfText(this.lastEvent))&&this.hide()}this.timeout||_||(this.lastEvent=v,this.timeout=setTimeout(this.waitForHover,this.idleTime))},m.prototype.waitForHover=function(){this.timeout&&clearTimeout(this.timeout);var v=Date.now()-this.lastT;if(this.idleTime-v>10){this.timeout=setTimeout(this.waitForHover,this.idleTime-v);return}this.timeout=null,this.lastEvent&&!this.isOutsideOfText(this.lastEvent)&&this.$gatherData(this.lastEvent,this.lastEvent.editor)},m.prototype.isOutsideOfText=function(v){var b=v.editor,_=v.getDocumentPosition(),S=b.session.getLine(_.row);if(_.column==S.length){var w=b.renderer.pixelToScreenCoordinates(v.clientX,v.clientY),y=b.session.documentToScreenPosition(_.row,_.column);if(y.column!=w.column||y.row!=w.row)return!0}return!1},m.prototype.setDataProvider=function(v){this.$gatherData=v},m.prototype.showForRange=function(v,b,_,S){var w=10;if(!(S&&S!=this.lastEvent)&&!(this.isOpen&&document.activeElement==this.getElement())){var y=v.renderer;this.isOpen||(l.addPopup(this),this.$registerCloseEvents(),this.setTheme(y.theme)),this.isOpen=!0,this.addMarker(b,v.session),this.range=c.fromPoints(b.start,b.end);var C=y.textToScreenCoordinates(b.start.row,b.start.column),M=y.scroller.getBoundingClientRect();C.pageX=l.length&&(l=void 0),{value:l&&l[m++],done:!l}}};throw new TypeError(u?"Object is not iterable.":"Symbol.iterator is not defined.")},g=n("../lib/dom"),c=n("../lib/event"),f=n("../tooltip").Tooltip,s=n("../config").nls;n("../lib/lang");function o(l){var u=l.editor,p=u.renderer.$gutterLayer,m=new a(u);l.editor.setDefaultHandler("guttermousedown",function(y){if(!(!u.isFocused()||y.getButton()!=0)){var C=p.getRegion(y);if(C!="foldWidgets"){var M=y.getDocumentPosition().row,E=u.session.selection;if(y.getShiftKey())E.selectTo(M,0);else{if(y.domEvent.detail==2)return u.selectAll(),y.preventDefault();l.$clickSelection=u.selection.getLineRange(M)}return l.setState("selectByLines"),l.captureMouse(y),y.preventDefault()}}});var v,b;function _(){var y=b.getDocumentPosition().row,C=u.session.getLength();if(y==C){var M=u.renderer.pixelToScreenCoordinates(0,b.y).row,E=b.$pos;if(M>u.session.documentToScreenRow(E.row,E.column))return S()}if(m.showTooltip(y),!!m.isOpen)if(u.on("mousewheel",S),l.$tooltipFollowsMouse)w(b);else{var T=b.getGutterRow(),L=p.$lines.get(T);if(L){var $=L.element.querySelector(".ace_gutter_annotation"),k=$.getBoundingClientRect(),x=m.getElement().style;x.left=k.right+"px",x.top=k.bottom+"px"}else w(b)}}function S(){v&&(v=clearTimeout(v)),m.isOpen&&(m.hideTooltip(),u.off("mousewheel",S))}function w(y){m.setPosition(y.x,y.y)}l.editor.setDefaultHandler("guttermousemove",function(y){var C=y.domEvent.target||y.domEvent.srcElement;if(g.hasCssClass(C,"ace_fold-widget"))return S();m.isOpen&&l.$tooltipFollowsMouse&&w(y),b=y,!v&&(v=setTimeout(function(){v=null,b&&!l.isMousePressed?_():S()},50))}),c.addListener(u.renderer.$gutter,"mouseout",function(y){b=null,!(!m.isOpen||v)&&(v=setTimeout(function(){v=null,S()},50))},u),u.on("changeSession",S),u.on("input",S)}r.GutterHandler=o;var a=function(l){i(u,l);function u(p){var m=l.call(this,p.container)||this;return m.editor=p,m}return u.prototype.setPosition=function(p,m){var v=window.innerWidth||document.documentElement.clientWidth,b=window.innerHeight||document.documentElement.clientHeight,_=this.getWidth(),S=this.getHeight();p+=15,m+=15,p+_>v&&(p-=p+_-v),m+S>b&&(m-=20+S),f.prototype.setPosition.call(this,p,m)},Object.defineProperty(u,"annotationLabels",{get:function(){return{error:{singular:s("gutter-tooltip.aria-label.error.singular","error"),plural:s("gutter-tooltip.aria-label.error.plural","errors")},security:{singular:s("gutter-tooltip.aria-label.security.singular","security finding"),plural:s("gutter-tooltip.aria-label.security.plural","security findings")},warning:{singular:s("gutter-tooltip.aria-label.warning.singular","warning"),plural:s("gutter-tooltip.aria-label.warning.plural","warnings")},info:{singular:s("gutter-tooltip.aria-label.info.singular","information message"),plural:s("gutter-tooltip.aria-label.info.plural","information messages")},hint:{singular:s("gutter-tooltip.aria-label.hint.singular","suggestion"),plural:s("gutter-tooltip.aria-label.hint.plural","suggestions")}}},enumerable:!1,configurable:!0}),u.prototype.showTooltip=function(p){var m,v=this.editor.renderer.$gutterLayer,b=v.$annotations[p],_;b?_={displayText:Array.from(b.displayText),type:Array.from(b.type)}:_={displayText:[],type:[]};var S=v.session.getFoldLine(p);if(S&&v.$showFoldedAnnotations){for(var w={error:[],security:[],warning:[],info:[],hint:[]},y={error:1,security:2,warning:3,info:4,hint:5},C,M=p+1;M<=S.end.row;M++)if(v.$annotations[M])for(var E=0;Es?$=null:H-$>=f&&(u.renderer.scrollCursorIntoView(),$=null)}}function A(j,P){var H=Date.now(),U=u.renderer.layerConfig.lineHeight,K=u.renderer.layerConfig.characterWidth,q=u.renderer.scroller.getBoundingClientRect(),X={x:{left:_-q.left,right:q.right-_},y:{top:S-q.top,bottom:q.bottom-S}},ee=Math.min(X.x.left,X.x.right),se=Math.min(X.y.top,X.y.bottom),le={row:j.row,column:j.column};ee/K<=2&&(le.column+=X.x.left=c&&u.renderer.scrollCursorIntoView(le):L=H:L=null}function R(){var j=C;C=u.renderer.screenToTextCoordinates(_,S),x(C,j),A(C,j)}function I(){y=u.selection.toOrientedRange(),b=u.session.addMarker(y,"ace_selection",u.getSelectionStyle()),u.clearSelection(),u.isFocused()&&u.renderer.$cursorLayer.setBlinking(!1),clearInterval(w),R(),w=setInterval(R,20),M=0,d.addListener(document,"mousemove",D)}function N(){clearInterval(w),u.session.removeMarker(b),b=null,u.selection.fromOrientedRange(y),u.isFocused()&&!T&&u.$resetCursorStyle(),y=null,C=null,M=0,L=null,$=null,d.removeListener(document,"mousemove",D)}var O=null;function D(){O==null&&(O=setTimeout(function(){O!=null&&b&&N()},20))}function F(j){var P=j.types;return!P||Array.prototype.some.call(P,function(H){return H=="text/plain"||H=="Text"})}function B(j){var P=["copy","copymove","all","uninitialized"],H=["move","copymove","linkmove","all","uninitialized"],U=g.isMac?j.altKey:j.ctrlKey,K="uninitialized";try{K=j.dataTransfer.effectAllowed.toLowerCase()}catch{}var q="none";return U&&P.indexOf(K)>=0?q="copy":H.indexOf(K)>=0?q="move":P.indexOf(K)>=0&&(q="copy"),q}}(function(){this.dragWait=function(){var l=Date.now()-this.mousedownEvent.time;l>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var l=this.editor.container;l.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(l){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var l=this.editor,u=l.container;u.draggable=!0,l.renderer.$cursorLayer.setBlinking(!1),l.setStyle("ace_dragging");var p=g.isWin?"default":"move";l.renderer.setCursorStyle(p),this.setState("dragReady")},this.onMouseDrag=function(l){var u=this.editor.container;if(g.isIE&&this.state=="dragReady"){var p=a(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);p>3&&u.dragDrop()}if(this.state==="dragWait"){var p=a(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);p>0&&(u.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(l){if(this.$dragEnabled){this.mousedownEvent=l;var u=this.editor,p=l.inSelection(),m=l.getButton(),v=l.domEvent.detail||1;if(v===1&&m===0&&p){if(l.editor.inMultiSelectMode&&(l.getAccelKey()||l.getShiftKey()))return;this.mousedownEvent.time=Date.now();var b=l.domEvent.target||l.domEvent.srcElement;if("unselectable"in b&&(b.unselectable="on"),u.getDragDelay()){if(g.isWebKit){this.cancelDrag=!0;var _=u.container;_.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(l,this.onMouseDrag.bind(this)),l.defaultPrevented=!0}}}}).call(o.prototype);function a(l,u,p,m){return Math.sqrt(Math.pow(p-l,2)+Math.pow(m-u,2))}r.DragdropHandler=o}),ace.define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(n,r,h){var i=n("./mouse_event").MouseEvent,d=n("../lib/event"),g=n("../lib/dom");r.addTouchListeners=function(c,f){var s="scroll",o,a,l,u,p,m,v=0,b,_=0,S=0,w=0,y,C;function M(){var x=window.navigator&&window.navigator.clipboard,A=!1,R=function(){var O=f.getCopyText(),D=f.session.getUndoManager().hasUndo();C.replaceChild(g.buildDom(A?["span",!O&&I("selectall")&&["span",{class:"ace_mobile-button",action:"selectall"},"Select All"],O&&I("copy")&&["span",{class:"ace_mobile-button",action:"copy"},"Copy"],O&&I("cut")&&["span",{class:"ace_mobile-button",action:"cut"},"Cut"],x&&I("paste")&&["span",{class:"ace_mobile-button",action:"paste"},"Paste"],D&&I("undo")&&["span",{class:"ace_mobile-button",action:"undo"},"Undo"],I("find")&&["span",{class:"ace_mobile-button",action:"find"},"Find"],I("openCommandPalette")&&["span",{class:"ace_mobile-button",action:"openCommandPalette"},"Palette"]]:["span"]),C.firstChild)},I=function(O){return f.commands.canExecute(O,f)},N=function(O){var D=O.target.getAttribute("action");if(D=="more"||!A)return A=!A,R();D=="paste"?x.readText().then(function(F){f.execCommand(D,F)}):D&&((D=="cut"||D=="copy")&&(x?x.writeText(f.getCopyText()):document.execCommand("copy")),f.execCommand(D)),C.firstChild.style.display="none",A=!1,D!="openCommandPalette"&&f.focus()};C=g.buildDom(["div",{class:"ace_mobile-menu",ontouchstart:function(O){s="menu",O.stopPropagation(),O.preventDefault(),f.textInput.focus()},ontouchend:function(O){O.stopPropagation(),O.preventDefault(),N(O)},onclick:N},["span"],["span",{class:"ace_mobile-button",action:"more"},"..."]],f.container)}function E(){if(!f.getOption("enableMobileMenu")){C&&T();return}C||M();var x=f.selection.cursor,A=f.renderer.textToScreenCoordinates(x.row,x.column),R=f.renderer.textToScreenCoordinates(0,0).pageX,I=f.renderer.scrollLeft,N=f.container.getBoundingClientRect();C.style.top=A.pageY-N.top-3+"px",A.pageX-N.left=2?f.selection.getLineRange(b.row):f.session.getBracketRange(b);x&&!x.isEmpty()?f.selection.setRange(x):f.selection.selectWord(),s="wait"}d.addListener(c,"contextmenu",function(x){if(y){var A=f.textInput.getElement();A.focus()}},f),d.addListener(c,"touchstart",function(x){var A=x.touches;if(p||A.length>1){clearTimeout(p),p=null,l=-1,s="zoom";return}y=f.$mouseHandler.isMousePressed=!0;var R=f.renderer.layerConfig.lineHeight,I=f.renderer.layerConfig.lineHeight,N=x.timeStamp;u=N;var O=A[0],D=O.clientX,F=O.clientY;Math.abs(o-D)+Math.abs(a-F)>R&&(l=-1),o=x.clientX=D,a=x.clientY=F,S=w=0;var B=new i(x,f);if(b=B.getDocumentPosition(),N-l<500&&A.length==1&&!v)_++,x.preventDefault(),x.button=0,$();else{_=0;var j=f.selection.cursor,P=f.selection.isEmpty()?j:f.selection.anchor,H=f.renderer.$cursorLayer.getPixelPosition(j,!0),U=f.renderer.$cursorLayer.getPixelPosition(P,!0),K=f.renderer.scroller.getBoundingClientRect(),q=f.renderer.layerConfig.offset,X=f.renderer.scrollLeft,ee=function(je,Re){return je=je/I,Re=Re/R-.75,je*je+Re*Re};if(x.clientXle?"cursor":"anchor"),le<3.5?s="anchor":se<3.5?s="cursor":s="scroll",p=setTimeout(L,450)}l=N},f),d.addListener(c,"touchend",function(x){y=f.$mouseHandler.isMousePressed=!1,m&&clearInterval(m),s=="zoom"?(s="",v=0):p?(f.selection.moveToPosition(b),v=0,E()):s=="scroll"?(k(),T()):E(),clearTimeout(p),p=null},f),d.addListener(c,"touchmove",function(x){p&&(clearTimeout(p),p=null);var A=x.touches;if(!(A.length>1||s=="zoom")){var R=A[0],I=o-R.clientX,N=a-R.clientY;if(s=="wait")if(I*I+N*N>4)s="cursor";else return x.preventDefault();o=R.clientX,a=R.clientY,x.clientX=R.clientX,x.clientY=R.clientY;var O=x.timeStamp,D=O-u;if(u=O,s=="scroll"){var F=new i(x,f);F.speed=1,F.wheelX=I,F.wheelY=N,10*Math.abs(I)0)if(le==16){for(ye=Re;ye-1){for(ye=Re;ye=0&&U[Gt]==y;Gt--)P[Gt]=i}}}function D(j,P,H){if(!(d=j){for(q=K+1;q=j;)q++;for(X=K,ee=q-1;X=P.length||(q=H[U-1])!=m&&q!=v||(X=P[U+1])!=m&&X!=v?b:(g&&(X=v),X==q?X:b);case M:return q=U>0?H[U-1]:_,q==m&&U+10&&H[U-1]==m)return m;if(g)return b;for(se=U+1,ee=P.length;se=1425&&le<=2303||le==64286;if(q=P[se],je&&(q==p||q==w))return p}return U<1||(q=P[U-1])==_?b:H[U-1];case _:return g=!1,c=!0,i;case S:return f=!0,b;case L:case $:case x:case A:case k:g=!1;case R:return b}}function B(j){var P=j.charCodeAt(0),H=P>>8;return H==0?P>191?u:I[P]:H==5?/[\u0591-\u05f4]/.test(j)?p:u:H==6?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test(j)?T:/[\u0660-\u0669\u066b-\u066c]/.test(j)?v:P==1642?E:/[\u06f0-\u06f9]/.test(j)?m:w:H==32&&P<=8287?N[P&255]:H==254&&P>=65136?w:b}r.L=u,r.R=p,r.EN=m,r.ON_R=3,r.AN=4,r.R_H=5,r.B=6,r.RLE=7,r.DOT="\xB7",r.doBidiReorder=function(j,P,H){if(j.length<2)return{};var U=j.split(""),K=new Array(U.length),q=new Array(U.length),X=[];i=H?l:a,O(U,X,U.length,P);for(var ee=0;eew&&P[ee]0&&U[ee-1]==="\u0644"&&/\u0622|\u0623|\u0625|\u0627/.test(U[ee])&&(X[ee-1]=X[ee]=r.R_H,ee++);U[U.length-1]===r.DOT&&(X[U.length-1]=r.B),U[0]==="\u202B"&&(X[0]=r.RLE);for(var ee=0;ee=0&&(s=this.session.$docRowCache[a])}return s},f.prototype.getSplitIndex=function(){var s=0,o=this.session.$screenRowCache;if(o.length)for(var a,l=this.session.$getRowCacheIndex(o,this.currentRow);this.currentRow-s>0&&(a=this.session.$getRowCacheIndex(o,this.currentRow-s-1),a===l);)l=a,s++;else s=this.currentRow;return s},f.prototype.updateRowLine=function(s,o){s===void 0&&(s=this.getDocumentRow());var a=s===this.session.getLength()-1,l=a?this.EOF:this.EOL;if(this.wrapIndent=0,this.line=this.session.getLine(s),this.isRtlDir=this.$isRtl||this.line.charAt(0)===this.RLE,this.session.$useWrapMode){var u=this.session.$wrapData[s];u&&(o===void 0&&(o=this.getSplitIndex()),o>0&&u.length?(this.wrapIndent=u.indent,this.wrapOffset=this.wrapIndent*this.charWidths[i.L],this.line=oo?this.session.getOverwrite()?s:s-1:o,l=i.getVisualFromLogicalIdx(a,this.bidiMap),u=this.bidiMap.bidiLevels,p=0;!this.session.getOverwrite()&&s<=o&&u[l]%2!==0&&l++;for(var m=0;mo&&u[l]%2===0&&(p+=this.charWidths[u[l]]),this.wrapIndent&&(p+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset),this.isRtlDir&&(p+=this.rtlLineOffset),p},f.prototype.getSelections=function(s,o){var a=this.bidiMap,l=a.bidiLevels,u,p=[],m=0,v=Math.min(s,o)-this.wrapIndent,b=Math.max(s,o)-this.wrapIndent,_=!1,S=!1,w=0;this.wrapIndent&&(m+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);for(var y,C=0;C=v&&yl+m/2;){if(l+=m,u===p.length-1){m=0;break}m=this.charWidths[p[++u]]}return u>0&&p[u-1]%2!==0&&p[u]%2===0?(a0&&p[u-1]%2===0&&p[u]%2!==0?o=1+(a>l?this.bidiMap.logicalFromVisual[u]:this.bidiMap.logicalFromVisual[u-1]):this.isRtlDir&&u===p.length-1&&m===0&&p[u-1]%2===0||!this.isRtlDir&&u===0&&p[u]%2!==0?o=1+this.bidiMap.logicalFromVisual[u]:(u>0&&p[u-1]%2!==0&&m!==0&&u--,o=this.bidiMap.logicalFromVisual[u]),o===0&&this.isRtlDir&&o++,o+this.wrapIndent},f}();r.BidiHandler=c}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(n,r,h){var i=n("./lib/oop"),d=n("./lib/lang"),g=n("./lib/event_emitter").EventEmitter,c=n("./range").Range,f=function(){function s(o){this.session=o,this.doc=o.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var a=this;this.cursor.on("change",function(l){a.$cursorChanged=!0,a.$silent||a._emit("changeCursor"),!a.$isEmpty&&!a.$silent&&a._emit("changeSelection"),!a.$keepDesiredColumnOnChange&&l.old.column!=l.value.column&&(a.$desiredColumn=null)}),this.anchor.on("change",function(){a.$anchorChanged=!0,!a.$isEmpty&&!a.$silent&&a._emit("changeSelection")})}return s.prototype.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},s.prototype.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},s.prototype.getCursor=function(){return this.lead.getPosition()},s.prototype.setAnchor=function(o,a){this.$isEmpty=!1,this.anchor.setPosition(o,a)},s.prototype.getAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},s.prototype.getSelectionLead=function(){return this.lead.getPosition()},s.prototype.isBackwards=function(){var o=this.anchor,a=this.lead;return o.row>a.row||o.row==a.row&&o.column>a.column},s.prototype.getRange=function(){var o=this.anchor,a=this.lead;return this.$isEmpty?c.fromPoints(a,a):this.isBackwards()?c.fromPoints(a,o):c.fromPoints(o,a)},s.prototype.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},s.prototype.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},s.prototype.setRange=function(o,a){var l=a?o.end:o.start,u=a?o.start:o.end;this.$setSelection(l.row,l.column,u.row,u.column)},s.prototype.$setSelection=function(o,a,l,u){if(!this.$silent){var p=this.$isEmpty,m=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(o,a),this.cursor.setPosition(l,u),this.$isEmpty=!c.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||p!=this.$isEmpty||m)&&this._emit("changeSelection")}},s.prototype.$moveSelection=function(o){var a=this.lead;this.$isEmpty&&this.setSelectionAnchor(a.row,a.column),o.call(this)},s.prototype.selectTo=function(o,a){this.$moveSelection(function(){this.moveCursorTo(o,a)})},s.prototype.selectToPosition=function(o){this.$moveSelection(function(){this.moveCursorToPosition(o)})},s.prototype.moveTo=function(o,a){this.clearSelection(),this.moveCursorTo(o,a)},s.prototype.moveToPosition=function(o){this.clearSelection(),this.moveCursorToPosition(o)},s.prototype.selectUp=function(){this.$moveSelection(this.moveCursorUp)},s.prototype.selectDown=function(){this.$moveSelection(this.moveCursorDown)},s.prototype.selectRight=function(){this.$moveSelection(this.moveCursorRight)},s.prototype.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},s.prototype.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},s.prototype.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},s.prototype.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},s.prototype.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},s.prototype.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},s.prototype.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},s.prototype.getWordRange=function(o,a){if(typeof a>"u"){var l=o||this.lead;o=l.row,a=l.column}return this.session.getWordRange(o,a)},s.prototype.selectWord=function(){this.setSelectionRange(this.getWordRange())},s.prototype.selectAWord=function(){var o=this.getCursor(),a=this.session.getAWordRange(o.row,o.column);this.setSelectionRange(a)},s.prototype.getLineRange=function(o,a){var l=typeof o=="number"?o:this.lead.row,u,p=this.session.getFoldLine(l);return p?(l=p.start.row,u=p.end.row):u=l,a===!0?new c(l,0,u,this.session.getLine(u).length):new c(l,0,u+1,0)},s.prototype.selectLine=function(){this.setSelectionRange(this.getLineRange())},s.prototype.moveCursorUp=function(){this.moveCursorBy(-1,0)},s.prototype.moveCursorDown=function(){this.moveCursorBy(1,0)},s.prototype.wouldMoveIntoSoftTab=function(o,a,l){var u=o.column,p=o.column+a;return l<0&&(u=o.column-a,p=o.column),this.session.isTabStop(o)&&this.doc.getLine(o.row).slice(u,p).split(" ").length-1==a},s.prototype.moveCursorLeft=function(){var o=this.lead.getPosition(),a;if(a=this.session.getFoldAt(o.row,o.column,-1))this.moveCursorTo(a.start.row,a.start.column);else if(o.column===0)o.row>0&&this.moveCursorTo(o.row-1,this.doc.getLine(o.row-1).length);else{var l=this.session.getTabSize();this.wouldMoveIntoSoftTab(o,l,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-l):this.moveCursorBy(0,-1)}},s.prototype.moveCursorRight=function(){var o=this.lead.getPosition(),a;if(a=this.session.getFoldAt(o.row,o.column,1))this.moveCursorTo(a.end.row,a.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(a.column=u)}}this.moveCursorTo(a.row,a.column)},s.prototype.moveCursorFileEnd=function(){var o=this.doc.getLength()-1,a=this.doc.getLine(o).length;this.moveCursorTo(o,a)},s.prototype.moveCursorFileStart=function(){this.moveCursorTo(0,0)},s.prototype.moveCursorLongWordRight=function(){var o=this.lead.row,a=this.lead.column,l=this.doc.getLine(o),u=l.substring(a);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var p=this.session.getFoldAt(o,a,1);if(p){this.moveCursorTo(p.end.row,p.end.column);return}if(this.session.nonTokenRe.exec(u)&&(a+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,u=l.substring(a)),a>=l.length){this.moveCursorTo(o,l.length),this.moveCursorRight(),o0&&this.moveCursorWordLeft();return}this.session.tokenRe.exec(p)&&(a-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(o,a)},s.prototype.$shortWordEndIndex=function(o){var a=0,l,u=/\s/,p=this.session.tokenRe;if(p.lastIndex=0,this.session.tokenRe.exec(o))a=this.session.tokenRe.lastIndex;else{for(;(l=o[a])&&u.test(l);)a++;if(a<1){for(p.lastIndex=0;(l=o[a])&&!p.test(l);)if(p.lastIndex=0,a++,u.test(l))if(a>2){a--;break}else{for(;(l=o[a])&&u.test(l);)a++;if(a>2)break}}}return p.lastIndex=0,a},s.prototype.moveCursorShortWordRight=function(){var o=this.lead.row,a=this.lead.column,l=this.doc.getLine(o),u=l.substring(a),p=this.session.getFoldAt(o,a,1);if(p)return this.moveCursorTo(p.end.row,p.end.column);if(a==l.length){var m=this.doc.getLength();do o++,u=this.doc.getLine(o);while(o0&&/^\s*$/.test(u));a=u.length,/\s+$/.test(u)||(u="")}var p=d.stringReverse(u),m=this.$shortWordEndIndex(p);return this.moveCursorTo(o,a-m)},s.prototype.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},s.prototype.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},s.prototype.moveCursorBy=function(o,a){var l=this.session.documentToScreenPosition(this.lead.row,this.lead.column),u;if(a===0&&(o!==0&&(this.session.$bidiHandler.isBidiRow(l.row,this.lead.row)?(u=this.session.$bidiHandler.getPosLeft(l.column),l.column=Math.round(u/this.session.$bidiHandler.charWidths[0])):u=l.column*this.session.$bidiHandler.charWidths[0]),this.$desiredColumn?l.column=this.$desiredColumn:this.$desiredColumn=l.column),o!=0&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var p=this.session.lineWidgets[this.lead.row];o<0?o-=p.rowsAbove||0:o>0&&(o+=p.rowCount-(p.rowsAbove||0))}var m=this.session.screenToDocumentPosition(l.row+o,l.column,u);o!==0&&a===0&&m.row===this.lead.row&&(m.column,this.lead.column),this.moveCursorTo(m.row,m.column+a,a===0)},s.prototype.moveCursorToPosition=function(o){this.moveCursorTo(o.row,o.column)},s.prototype.moveCursorTo=function(o,a,l){var u=this.session.getFoldAt(o,a,1);u&&(o=u.start.row,a=u.start.column),this.$keepDesiredColumnOnChange=!0;var p=this.session.getLine(o);/[\uDC00-\uDFFF]/.test(p.charAt(a))&&p.charAt(a-1)&&(this.lead.row==o&&this.lead.column==a+1?a=a-1:a=a+1),this.lead.setPosition(o,a),this.$keepDesiredColumnOnChange=!1,l||(this.$desiredColumn=null)},s.prototype.moveCursorToScreen=function(o,a,l){var u=this.session.screenToDocumentPosition(o,a);this.moveCursorTo(u.row,u.column,l)},s.prototype.detach=function(){this.lead.detach(),this.anchor.detach()},s.prototype.fromOrientedRange=function(o){this.setSelectionRange(o,o.cursor==o.start),this.$desiredColumn=o.desiredColumn||this.$desiredColumn},s.prototype.toOrientedRange=function(o){var a=this.getRange();return o?(o.start.column=a.start.column,o.start.row=a.start.row,o.end.column=a.end.column,o.end.row=a.end.row):o=a,o.cursor=this.isBackwards()?o.start:o.end,o.desiredColumn=this.$desiredColumn,o},s.prototype.getRangeOfMovements=function(o){var a=this.getCursor();try{o(this);var l=this.getCursor();return c.fromPoints(a,l)}catch{return c.fromPoints(a,a)}finally{this.moveCursorToPosition(a)}},s.prototype.toJSON=function(){if(this.rangeCount)var o=this.ranges.map(function(a){var l=a.clone();return l.isBackwards=a.cursor==a.start,l});else{var o=this.getRange();o.isBackwards=this.isBackwards()}return o},s.prototype.fromJSON=function(o){if(o.start==null)if(this.rangeList&&o.length>1){this.toSingleRange(o[0]);for(var a=o.length;a--;){var l=c.fromPoints(o[a].start,o[a].end);o[a].isBackwards&&(l.cursor=l.start),this.addRange(l,!0)}return}else o=o[0];this.rangeList&&this.toSingleRange(o),this.setSelectionRange(o,o.isBackwards)},s.prototype.isEqual=function(o){if((o.length||this.rangeCount)&&o.length!=this.rangeCount)return!1;if(!o.length||!this.ranges)return this.getRange().isEqual(o);for(var a=this.ranges.length;a--;)if(!this.ranges[a].isEqual(o[a]))return!1;return!0},s}();f.prototype.setSelectionAnchor=f.prototype.setAnchor,f.prototype.getSelectionAnchor=f.prototype.getAnchor,f.prototype.setSelectionRange=f.prototype.setRange,i.implement(f.prototype,g),r.Selection=f}),ace.define("ace/tokenizer",["require","exports","module","ace/lib/report_error"],function(n,r,h){var i=n("./lib/report_error").reportError,d=2e3,g=function(){function c(f){this.splitRegex,this.states=f,this.regExps={},this.matchMappings={};for(var s in this.states){for(var o=this.states[s],a=[],l=0,u=this.matchMappings[s]={defaultToken:"text"},p="g",m=[],v=0;v1?b.onMatch=this.$applyToken:b.onMatch=b.token),S>1&&(/\\\d/.test(b.regex)?_=b.regex.replace(/\\([0-9]+)/g,function(w,y){return"\\"+(parseInt(y,10)+l+1)}):(S=1,_=this.removeCapturingGroups(b.regex)),!b.splitRegex&&typeof b.token!="string"&&m.push(b)),u[l]=v,l+=S,a.push(_),b.onMatch||(b.onMatch=null)}}a.length||(u[0]=0,a.push("$")),m.forEach(function(w){w.splitRegex=this.createSplitterRegexp(w.regex,p)},this),this.regExps[s]=new RegExp("("+a.join(")|(")+")|($)",p)}}return c.prototype.$setMaxTokenCount=function(f){d=f|0},c.prototype.$applyToken=function(f){var s=this.splitRegex.exec(f).slice(1),o=this.token.apply(this,s);if(typeof o=="string")return[{type:o,value:f}];for(var a=[],l=0,u=o.length;lb){var E=f.substring(b,M-C.length);S.type==w?S.value+=E:(S.type&&v.push(S),S={type:w,value:E})}for(var T=0;Td){for(_>2*f.length&&this.reportError("infinite loop with in ace tokenizer",{startState:s,line:f});b1&&o[0]!==a&&o.unshift("#tmp",a),{tokens:v,state:o.length?o:a}},c}();g.prototype.reportError=i,r.Tokenizer=g}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/deep_copy"],function(n,r,h){var i=n("../lib/deep_copy").deepCopy,d;d=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}},(function(){this.addRules=function(f,s){if(!s){for(var o in f)this.$rules[o]=f[o];return}for(var o in f){for(var a=f[o],l=0;l=this.$rowTokens.length;){if(this.$row+=1,c||(c=this.$session.getLength()),this.$row>=c)return this.$row=c-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},g.prototype.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},g.prototype.getCurrentTokenRow=function(){return this.$row},g.prototype.getCurrentTokenColumn=function(){var c=this.$rowTokens,f=this.$tokenIndex,s=c[f].start;if(s!==void 0)return s;for(s=0;f>0;)f-=1,s+=c[f].value.length;return s},g.prototype.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},g.prototype.getCurrentTokenRange=function(){var c=this.$rowTokens[this.$tokenIndex],f=this.getCurrentTokenColumn();return new i(this.$row,f,this.$row,f+c.value.length)},g}();r.TokenIterator=d}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(n,r,h){var i=n("../../lib/oop"),d=n("../behaviour").Behaviour,g=n("../../token_iterator").TokenIterator,c=n("../../lib/lang"),f=["text","paren.rparen","rparen","paren","punctuation.operator"],s=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],o,a={},l={'"':'"',"'":"'"},u=function(v){var b=-1;if(v.multiSelect&&(b=v.selection.index,a.rangeCount!=v.multiSelect.rangeCount&&(a={rangeCount:v.multiSelect.rangeCount})),a[b])return o=a[b];o=a[b]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},p=function(v,b,_,S){var w=v.end.row-v.start.row;return{text:_+b+S,selection:[0,v.start.column+1,w,v.end.column+(w?0:1)]}},m;m=function(v){v=v||{},this.add("braces","insertion",function(b,_,S,w,y){var C=S.getCursorPosition(),M=w.doc.getLine(C.row);if(y=="{"){u(S);var E=S.getSelectionRange(),T=w.doc.getTextRange(E),L=w.getTokenAt(C.row,C.column);if(T!==""&&T!=="{"&&S.getWrapBehavioursEnabled())return p(E,T,"{","}");if(L&&/(?:string)\.quasi|\.xml/.test(L.type)){var $=[/tag\-(?:open|name)/,/attribute\-name/];return $.some(function(O){return O.test(L.type)})||/(string)\.quasi/.test(L.type)&&L.value[C.column-L.start-1]!=="$"?void 0:(m.recordAutoInsert(S,w,"}"),{text:"{}",selection:[1,1]})}else if(m.isSaneInsertion(S,w))return/[\]\}\)]/.test(M[C.column])||S.inMultiSelectMode||v.braces?(m.recordAutoInsert(S,w,"}"),{text:"{}",selection:[1,1]}):(m.recordMaybeInsert(S,w,"{"),{text:"{",selection:[1,1]})}else if(y=="}"){u(S);var k=M.substring(C.column,C.column+1);if(k=="}"){var x=w.$findOpeningBracket("}",{column:C.column+1,row:C.row});if(x!==null&&m.isAutoInsertedClosing(C,M,y))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else if(y==` +`||y==`\r +`){u(S);var A="";m.isMaybeInsertedClosing(C,M)&&(A=c.stringRepeat("}",o.maybeInsertedBrackets),m.clearMaybeInsertedClosing());var k=M.substring(C.column,C.column+1);if(k==="}"){var R=w.findMatchingBracket({row:C.row,column:C.column+1},"}");if(!R)return null;var I=this.$getIndent(w.getLine(R.row))}else if(A)var I=this.$getIndent(M);else{m.clearMaybeInsertedClosing();return}var N=I+w.getTabString();return{text:` +`+N+` +`+I+A,selection:[1,N.length,1,N.length]}}else m.clearMaybeInsertedClosing()}),this.add("braces","deletion",function(b,_,S,w,y){var C=w.doc.getTextRange(y);if(!y.isMultiLine()&&C=="{"){u(S);var M=w.doc.getLine(y.start.row),E=M.substring(y.end.column,y.end.column+1);if(E=="}")return y.end.column++,y;o.maybeInsertedBrackets--}}),this.add("parens","insertion",function(b,_,S,w,y){if(y=="("){u(S);var C=S.getSelectionRange(),M=w.doc.getTextRange(C);if(M!==""&&S.getWrapBehavioursEnabled())return p(C,M,"(",")");if(m.isSaneInsertion(S,w))return m.recordAutoInsert(S,w,")"),{text:"()",selection:[1,1]}}else if(y==")"){u(S);var E=S.getCursorPosition(),T=w.doc.getLine(E.row),L=T.substring(E.column,E.column+1);if(L==")"){var $=w.$findOpeningBracket(")",{column:E.column+1,row:E.row});if($!==null&&m.isAutoInsertedClosing(E,T,y))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(b,_,S,w,y){var C=w.doc.getTextRange(y);if(!y.isMultiLine()&&C=="("){u(S);var M=w.doc.getLine(y.start.row),E=M.substring(y.start.column+1,y.start.column+2);if(E==")")return y.end.column++,y}}),this.add("brackets","insertion",function(b,_,S,w,y){if(y=="["){u(S);var C=S.getSelectionRange(),M=w.doc.getTextRange(C);if(M!==""&&S.getWrapBehavioursEnabled())return p(C,M,"[","]");if(m.isSaneInsertion(S,w))return m.recordAutoInsert(S,w,"]"),{text:"[]",selection:[1,1]}}else if(y=="]"){u(S);var E=S.getCursorPosition(),T=w.doc.getLine(E.row),L=T.substring(E.column,E.column+1);if(L=="]"){var $=w.$findOpeningBracket("]",{column:E.column+1,row:E.row});if($!==null&&m.isAutoInsertedClosing(E,T,y))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(b,_,S,w,y){var C=w.doc.getTextRange(y);if(!y.isMultiLine()&&C=="["){u(S);var M=w.doc.getLine(y.start.row),E=M.substring(y.start.column+1,y.start.column+2);if(E=="]")return y.end.column++,y}}),this.add("string_dquotes","insertion",function(b,_,S,w,y){var C=w.$mode.$quotes||l;if(y.length==1&&C[y]){if(this.lineCommentStart&&this.lineCommentStart.indexOf(y)!=-1)return;u(S);var M=y,E=S.getSelectionRange(),T=w.doc.getTextRange(E);if(T!==""&&(T.length!=1||!C[T])&&S.getWrapBehavioursEnabled())return p(E,T,M,M);if(!T){var L=S.getCursorPosition(),$=w.doc.getLine(L.row),k=$.substring(L.column-1,L.column),x=$.substring(L.column,L.column+1),A=w.getTokenAt(L.row,L.column),R=w.getTokenAt(L.row,L.column+1);if(k=="\\"&&A&&/escape/.test(A.type))return null;var I=A&&/string|escape/.test(A.type),N=!R||/string|escape/.test(R.type),O;if(x==M)O=I!==N,O&&/string\.end/.test(R.type)&&(O=!1);else{if(I&&!N||I&&N)return null;var D=w.$mode.tokenRe;D.lastIndex=0;var F=D.test(k);D.lastIndex=0;var B=D.test(x),j=w.$mode.$pairQuotesAfter,P=j&&j[M]&&j[M].test(k);if(!P&&F||B||x&&!/[\s;,.})\]\\]/.test(x))return null;var H=$[L.column-2];if(k==M&&(H==M||D.test(H)))return null;O=!0}return{text:O?M+M:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(b,_,S,w,y){var C=w.$mode.$quotes||l,M=w.doc.getTextRange(y);if(!y.isMultiLine()&&C.hasOwnProperty(M)){u(S);var E=w.doc.getLine(y.start.row),T=E.substring(y.start.column+1,y.start.column+2);if(T==M)return y.end.column++,y}}),v.closeDocComment!==!1&&this.add("doc comment end","insertion",function(b,_,S,w,y){if(b==="doc-start"&&(y===` +`||y===`\r +`)&&S.selection.isEmpty()){var C=S.getCursorPosition();if(C.column===0)return;for(var M=w.doc.getLine(C.row),E=w.doc.getLine(C.row+1),T=w.getTokens(C.row),L=0,$=0;$=C.column){if(L===C.column){if(!/\.doc/.test(k.type))return;if(/\*\//.test(k.value)){var x=T[$+1];if(!x||!/\.doc/.test(x.type))return}}var A=C.column-(L-k.value.length),R=k.value.indexOf("*/"),I=k.value.indexOf("/**",R>-1?R+2:0);if(I!==-1&&A>I&&A=R&&A<=I||!/\.doc/.test(k.type))return;break}}var N=this.$getIndent(M);if(/\s*\*/.test(E))return/^\s*\*/.test(M)?{text:y+N+"* ",selection:[1,2+N.length,1,2+N.length]}:{text:y+N+" * ",selection:[1,3+N.length,1,3+N.length]};if(/\/\*\*/.test(M.substring(0,C.column)))return{text:y+N+" * "+y+" "+N+"*/",selection:[1,4+N.length,1,4+N.length]}}})},m.isSaneInsertion=function(v,b){var _=v.getCursorPosition(),S=new g(b,_.row,_.column);if(!this.$matchTokenType(S.getCurrentToken()||"text",f)){if(/[)}\]]/.test(v.session.getLine(_.row)[_.column]))return!0;var w=new g(b,_.row,_.column+1);if(!this.$matchTokenType(w.getCurrentToken()||"text",f))return!1}return S.stepForward(),S.getCurrentTokenRow()!==_.row||this.$matchTokenType(S.getCurrentToken()||"text",s)},m.$matchTokenType=function(v,b){return b.indexOf(v.type||v)>-1},m.recordAutoInsert=function(v,b,_){var S=v.getCursorPosition(),w=b.doc.getLine(S.row);this.isAutoInsertedClosing(S,w,o.autoInsertedLineEnd[0])||(o.autoInsertedBrackets=0),o.autoInsertedRow=S.row,o.autoInsertedLineEnd=_+w.substr(S.column),o.autoInsertedBrackets++},m.recordMaybeInsert=function(v,b,_){var S=v.getCursorPosition(),w=b.doc.getLine(S.row);this.isMaybeInsertedClosing(S,w)||(o.maybeInsertedBrackets=0),o.maybeInsertedRow=S.row,o.maybeInsertedLineStart=w.substr(0,S.column)+_,o.maybeInsertedLineEnd=w.substr(S.column),o.maybeInsertedBrackets++},m.isAutoInsertedClosing=function(v,b,_){return o.autoInsertedBrackets>0&&v.row===o.autoInsertedRow&&_===o.autoInsertedLineEnd[0]&&b.substr(v.column)===o.autoInsertedLineEnd},m.isMaybeInsertedClosing=function(v,b){return o.maybeInsertedBrackets>0&&v.row===o.maybeInsertedRow&&b.substr(v.column)===o.maybeInsertedLineEnd&&b.substr(0,v.column)==o.maybeInsertedLineStart},m.popAutoInsertedClosing=function(){o.autoInsertedLineEnd=o.autoInsertedLineEnd.substr(1),o.autoInsertedBrackets--},m.clearMaybeInsertedClosing=function(){o&&(o.maybeInsertedBrackets=0,o.maybeInsertedRow=-1)},i.inherits(m,d),r.CstyleBehaviour=m}),ace.define("ace/unicode",["require","exports","module"],function(n,r,h){for(var i=[48,9,8,25,5,0,2,25,48,0,11,0,5,0,6,22,2,30,2,457,5,11,15,4,8,0,2,0,18,116,2,1,3,3,9,0,2,2,2,0,2,19,2,82,2,138,2,4,3,155,12,37,3,0,8,38,10,44,2,0,2,1,2,1,2,0,9,26,6,2,30,10,7,61,2,9,5,101,2,7,3,9,2,18,3,0,17,58,3,100,15,53,5,0,6,45,211,57,3,18,2,5,3,11,3,9,2,1,7,6,2,2,2,7,3,1,3,21,2,6,2,0,4,3,3,8,3,1,3,3,9,0,5,1,2,4,3,11,16,2,2,5,5,1,3,21,2,6,2,1,2,1,2,1,3,0,2,4,5,1,3,2,4,0,8,3,2,0,8,15,12,2,2,8,2,2,2,21,2,6,2,1,2,4,3,9,2,2,2,2,3,0,16,3,3,9,18,2,2,7,3,1,3,21,2,6,2,1,2,4,3,8,3,1,3,2,9,1,5,1,2,4,3,9,2,0,17,1,2,5,4,2,2,3,4,1,2,0,2,1,4,1,4,2,4,11,5,4,4,2,2,3,3,0,7,0,15,9,18,2,2,7,2,2,2,22,2,9,2,4,4,7,2,2,2,3,8,1,2,1,7,3,3,9,19,1,2,7,2,2,2,22,2,9,2,4,3,8,2,2,2,3,8,1,8,0,2,3,3,9,19,1,2,7,2,2,2,22,2,15,4,7,2,2,2,3,10,0,9,3,3,9,11,5,3,1,2,17,4,23,2,8,2,0,3,6,4,0,5,5,2,0,2,7,19,1,14,57,6,14,2,9,40,1,2,0,3,1,2,0,3,0,7,3,2,6,2,2,2,0,2,0,3,1,2,12,2,2,3,4,2,0,2,5,3,9,3,1,35,0,24,1,7,9,12,0,2,0,2,0,5,9,2,35,5,19,2,5,5,7,2,35,10,0,58,73,7,77,3,37,11,42,2,0,4,328,2,3,3,6,2,0,2,3,3,40,2,3,3,32,2,3,3,6,2,0,2,3,3,14,2,56,2,3,3,66,5,0,33,15,17,84,13,619,3,16,2,25,6,74,22,12,2,6,12,20,12,19,13,12,2,2,2,1,13,51,3,29,4,0,5,1,3,9,34,2,3,9,7,87,9,42,6,69,11,28,4,11,5,11,11,39,3,4,12,43,5,25,7,10,38,27,5,62,2,28,3,10,7,9,14,0,89,75,5,9,18,8,13,42,4,11,71,55,9,9,4,48,83,2,2,30,14,230,23,280,3,5,3,37,3,5,3,7,2,0,2,0,2,0,2,30,3,52,2,6,2,0,4,2,2,6,4,3,3,5,5,12,6,2,2,6,67,1,20,0,29,0,14,0,17,4,60,12,5,0,4,11,18,0,5,0,3,9,2,0,4,4,7,0,2,0,2,0,2,3,2,10,3,3,6,4,5,0,53,1,2684,46,2,46,2,132,7,6,15,37,11,53,10,0,17,22,10,6,2,6,2,6,2,6,2,6,2,6,2,6,2,6,2,31,48,0,470,1,36,5,2,4,6,1,5,85,3,1,3,2,2,89,2,3,6,40,4,93,18,23,57,15,513,6581,75,20939,53,1164,68,45,3,268,4,27,21,31,3,13,13,1,2,24,9,69,11,1,38,8,3,102,3,1,111,44,25,51,13,68,12,9,7,23,4,0,5,45,3,35,13,28,4,64,15,10,39,54,10,13,3,9,7,22,4,1,5,66,25,2,227,42,2,1,3,9,7,11171,13,22,5,48,8453,301,3,61,3,105,39,6,13,4,6,11,2,12,2,4,2,0,2,1,2,1,2,107,34,362,19,63,3,53,41,11,5,15,17,6,13,1,25,2,33,4,2,134,20,9,8,25,5,0,2,25,12,88,4,5,3,5,3,5,3,2],d=0,g=[],c=0;c2?B%y!=y-1:B%y==0}}else{if(!this.blockComment)return!1;var E=this.blockComment.start,A=this.blockComment.end,M=new RegExp("^(\\s*)(?:"+s.escapeRegExp(E)+")"),R=new RegExp("(?:"+s.escapeRegExp(A)+")\\s*$"),$=function(P,H){k(P,H)||(!_||/\S/.test(P))&&(b.insertInLine({row:H,column:P.length},A),b.insertInLine({row:H,column:w},E))},T=function(P,H){var U;(U=P.match(R))&&b.removeInLine(H,P.length-U[0].length,P.length),(U=P.match(M))&&b.removeInLine(H,U[1].length,U[0].length)},k=function(P,H){if(M.test(P))return!0;for(var U=p.getTokens(H),K=0;KO.length&&(N=O.length)}),w==1/0&&(w=N,_=!1,S=!1),C&&w%y!=0&&(w=Math.floor(w/y)*y),I(S?T:$)},this.toggleBlockComment=function(u,p,m,v){var b=this.blockComment;if(b){!b.start&&b[0]&&(b=b[0]);var _=new o(p,v.row,v.column),S=_.getCurrentToken();p.selection;var w=p.selection.toOrientedRange(),y,C;if(S&&/comment/.test(S.type)){for(var M,E;S&&/comment/.test(S.type);){var T=S.value.indexOf(b.start);if(T!=-1){var L=_.getCurrentTokenRow(),$=_.getCurrentTokenColumn()+T;M=new a(L,$,L,$+b.start.length);break}S=_.stepBackward()}for(var _=new o(p,v.row,v.column),S=_.getCurrentToken();S&&/comment/.test(S.type);){var T=S.value.indexOf(b.end);if(T!=-1){var L=_.getCurrentTokenRow(),$=_.getCurrentTokenColumn()+T;E=new a(L,$,L,$+b.end.length);break}S=_.stepForward()}E&&p.remove(E),M&&(p.remove(M),y=M.start.row,C=-b.start.length)}else C=b.start.length,y=m.start.row,p.insert(m.end,b.end),p.insert(m.start,b.start);w.start.row==y&&(w.start.column+=C),w.end.row==y&&(w.end.column+=C),p.selection.fromOrientedRange(w)}},this.getNextLineIndent=function(u,p,m){return this.$getIndent(p)},this.checkOutdent=function(u,p,m){return!1},this.autoOutdent=function(u,p,m){},this.$getIndent=function(u){return u.match(/^\s*/)[0]},this.createWorker=function(u){return null},this.createModeDelegates=function(u){this.$embeds=[],this.$modes={};for(var p in u)if(u[p]){var m=u[p],v=m.prototype.$id,b=i.$modes[v];b||(i.$modes[v]=b=new m),i.$modes[p]||(i.$modes[p]=b),this.$embeds.push(p),this.$modes[p]=b}for(var _=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],S=function(C){(function(M){var E=_[C],T=M[E];M[_[C]]=function(){return this.$delegator(E,arguments,T)}})(w)},w=this,p=0;p<_.length;p++)S(p)},this.$delegator=function(u,p,m){var v=p[0]||"start";if(typeof v!="string"){if(Array.isArray(v[2])){var b=v[2][v[2].length-1],_=this.$modes[b];if(_)return _[u].apply(_,[v[1]].concat([].slice.call(p,1)))}v=v[0]||"start"}for(var S=0;Sthis.row)){var a=f(o,{row:this.row,column:this.column},this.$insertRight);this.setPosition(a.row,a.column,!0)}},s.prototype.setPosition=function(o,a,l){var u;if(l?u={row:o,column:a}:u=this.$clipPositionToDocument(o,a),!(this.row==u.row&&this.column==u.column)){var p={row:this.row,column:this.column};this.row=u.row,this.column=u.column,this._signal("change",{old:p,value:u})}},s.prototype.detach=function(){this.document.off("change",this.$onChange)},s.prototype.attach=function(o){this.document=o||this.document,this.document.on("change",this.$onChange)},s.prototype.$clipPositionToDocument=function(o,a){var l={};return o>=this.document.getLength()?(l.row=Math.max(0,this.document.getLength()-1),l.column=this.document.getLine(l.row).length):o<0?(l.row=0,l.column=0):(l.row=o,l.column=Math.min(this.document.getLine(l.row).length,Math.max(0,a))),a<0&&(l.column=0),l},s}();g.prototype.$insertRight=!1,i.implement(g.prototype,d);function c(s,o,a){var l=a?s.column<=o.column:s.column=u&&(a=u-1,l=void 0);var p=this.getLine(a);return l==null&&(l=p.length),l=Math.min(Math.max(l,0),p.length),{row:a,column:l}},o.prototype.clonePos=function(a){return{row:a.row,column:a.column}},o.prototype.pos=function(a,l){return{row:a,column:l}},o.prototype.$clipPosition=function(a){var l=this.getLength();return a.row>=l?(a.row=Math.max(0,l-1),a.column=this.getLine(l-1).length):(a.row=Math.max(0,a.row),a.column=Math.min(Math.max(a.column,0),this.getLine(a.row).length)),a},o.prototype.insertFullLines=function(a,l){a=Math.min(Math.max(a,0),this.getLength());var u=0;a0,p=l=0&&this.applyDelta({start:this.pos(a,this.getLine(a).length),end:this.pos(a+1,0),action:"remove",lines:["",""]})},o.prototype.replace=function(a,l){if(a instanceof c||(a=c.fromPoints(a.start,a.end)),l.length===0&&a.isEmpty())return a.start;if(l==this.getTextRange(a))return a.end;this.remove(a);var u;return l?u=this.insert(a.start,l):u=a.start,u},o.prototype.applyDeltas=function(a){for(var l=0;l=0;l--)this.revertDelta(a[l])},o.prototype.applyDelta=function(a,l){var u=a.action=="insert";(u?a.lines.length<=1&&!a.lines[0]:!c.comparePoints(a.start,a.end))||(u&&a.lines.length>2e4?this.$splitAndapplyLargeDelta(a,2e4):(d(this.$lines,a,l),this._signal("change",a)))},o.prototype.$safeApplyDelta=function(a){var l=this.$lines.length;(a.action=="remove"&&a.start.row20){o.running=setTimeout(o.$worker,20);break}}o.currentLine=l,u==-1&&(u=l),m<=u&&o.fireUpdateEvent(m,u)}}}return c.prototype.setTokenizer=function(f){this.tokenizer=f,this.lines=[],this.states=[],this.start(0)},c.prototype.setDocument=function(f){this.doc=f,this.lines=[],this.states=[],this.stop()},c.prototype.fireUpdateEvent=function(f,s){var o={first:f,last:s};this._signal("update",{data:o})},c.prototype.start=function(f){this.currentLine=Math.min(f||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},c.prototype.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},c.prototype.$updateOnChange=function(f){var s=f.start.row,o=f.end.row-s;if(o===0)this.lines[s]=null;else if(f.action=="remove")this.lines.splice(s,o+1,null),this.states.splice(s,o+1,null);else{var a=Array(o+1);a.unshift(s,1),this.lines.splice.apply(this.lines,a),this.states.splice.apply(this.states,a)}this.currentLine=Math.min(s,this.currentLine,this.doc.getLength()),this.stop()},c.prototype.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},c.prototype.getTokens=function(f){return this.lines[f]||this.$tokenizeRow(f)},c.prototype.getState=function(f){return this.currentLine==f&&this.$tokenizeRow(f),this.states[f]||"start"},c.prototype.$tokenizeRow=function(f){var s=this.doc.getLine(f),o=this.states[f-1],a=this.tokenizer.getLineTokens(s,o,f);return this.states[f]+""!=a.state+""?(this.states[f]=a.state,this.lines[f+1]=null,this.currentLine>f+1&&(this.currentLine=f+1)):this.currentLine==f&&(this.currentLine=f+1),this.lines[f]=a.tokens},c.prototype.cleanup=function(){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.removeAllListeners()},c}();i.implement(g.prototype,d),r.BackgroundTokenizer=g}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/range"],function(n,r,h){var i=n("./lib/lang"),d=n("./range").Range,g=function(){function c(f,s,o){o===void 0&&(o="text"),this.setRegexp(f),this.clazz=s,this.type=o}return c.prototype.setRegexp=function(f){this.regExp+""!=f+""&&(this.regExp=f,this.cache=[])},c.prototype.update=function(f,s,o,a){if(this.regExp)for(var l=a.firstRow,u=a.lastRow,p={},m=l;m<=u;m++){var v=this.cache[m];v==null&&(v=i.getMatchOffsets(o.getLine(m),this.regExp),v.length>this.MAX_RANGES&&(v=v.slice(0,this.MAX_RANGES)),v=v.map(function(w){return new d(m,w.offset,m,w.offset+w.length)}),this.cache[m]=v.length?v:"");for(var b=v.length;b--;){var _=v[b].toScreenRange(o),S=_.toString();p[S]||(p[S]=!0,s.drawSingleLineMarker(f,_,this.clazz,a))}}},c}();g.prototype.MAX_RANGES=500,r.SearchHighlight=g}),ace.define("ace/undomanager",["require","exports","module","ace/range"],function(n,r,h){var i=function(){function w(){this.$keepRedoStack,this.$maxRev=0,this.$fromUndo=!1,this.$undoDepth=1/0,this.reset()}return w.prototype.addSession=function(y){this.$session=y},w.prototype.add=function(y,C,M){if(!this.$fromUndo&&y!=this.$lastDelta){if(this.$keepRedoStack||(this.$redoStack.length=0),C===!1||!this.lastDeltas){this.lastDeltas=[];var E=this.$undoStack.length;E>this.$undoDepth-1&&this.$undoStack.splice(0,E-this.$undoDepth+1),this.$undoStack.push(this.lastDeltas),y.id=this.$rev=++this.$maxRev}(y.action=="remove"||y.action=="insert")&&(this.$lastDelta=y),this.lastDeltas.push(y)}},w.prototype.addSelection=function(y,C){this.selections.push({value:y,rev:C||this.$rev})},w.prototype.startNewGroup=function(){return this.lastDeltas=null,this.$rev},w.prototype.markIgnored=function(y,C){C==null&&(C=this.$rev+1);for(var M=this.$undoStack,E=M.length;E--;){var T=M[E][0];if(T.id<=y)break;T.id0},w.prototype.canRedo=function(){return this.$redoStack.length>0},w.prototype.bookmark=function(y){y==null&&(y=this.$rev),this.mark=y},w.prototype.isAtBookmark=function(){return this.$rev===this.mark},w.prototype.toJSON=function(){return{$redoStack:this.$redoStack,$undoStack:this.$undoStack}},w.prototype.fromJSON=function(y){this.reset(),this.$undoStack=y.$undoStack,this.$redoStack=y.$redoStack},w.prototype.$prettyPrint=function(y){return y?o(y):o(this.$undoStack)+` +--- +`+o(this.$redoStack)},w}();i.prototype.hasUndo=i.prototype.canUndo,i.prototype.hasRedo=i.prototype.canRedo,i.prototype.isClean=i.prototype.isAtBookmark,i.prototype.markClean=i.prototype.bookmark;function d(w,y){for(var C=y;C--;){var M=w[C];if(M&&!M[0].ignore){for(;C"+w.end.row+":"+w.end.column}function l(w,y){var C=w.action=="insert",M=y.action=="insert";if(C&&M)if(c(y.start,w.end)>=0)m(y,w,-1);else if(c(y.start,w.start)<=0)m(w,y,1);else return null;else if(C&&!M)if(c(y.start,w.end)>=0)m(y,w,-1);else if(c(y.end,w.start)<=0)m(w,y,-1);else return null;else if(!C&&M)if(c(y.start,w.start)>=0)m(y,w,1);else if(c(y.start,w.start)<=0)m(w,y,1);else return null;else if(!C&&!M)if(c(y.start,w.start)>=0)m(y,w,1);else if(c(y.end,w.start)<=0)m(w,y,-1);else return null;return[y,w]}function u(w,y){for(var C=w.length;C--;)for(var M=0;M=0?m(w,y,-1):(c(w.start,y.start)<=0||m(w,g.fromPoints(y.start,w.start),-1),m(y,w,1));else if(!C&&M)c(y.start,w.end)>=0?m(y,w,-1):(c(y.start,w.start)<=0||m(y,g.fromPoints(w.start,y.start),-1),m(w,y,1));else if(!C&&!M)if(c(y.start,w.end)>=0)m(y,w,-1);else if(c(y.end,w.start)<=0)m(w,y,-1);else{var E,T;return c(w.start,y.start)<0&&(E=w,w=b(w,y.start)),c(w.end,y.end)>0&&(T=b(w,y.end)),v(y.end,w.start,w.end,-1),T&&!E&&(w.lines=T.lines,w.start=T.start,w.end=T.end,T=w),[y,E,T].filter(Boolean)}return[y,w]}function m(w,y,C){v(w.start,y.start,y.end,C),v(w.end,y.start,y.end,C)}function v(w,y,C,M){w.row==(M==1?y:C).row&&(w.column+=M*(C.column-y.column)),w.row+=M*(C.row-y.row)}function b(w,y){var C=w.lines,M=w.end;w.end=f(y);var E=w.end.row-w.start.row,T=C.splice(E,C.length),L=E?y.column:y.column-w.start.column;C.push(T[0].substring(0,L)),T[0]=T[0].substr(L);var $={start:f(y),end:M,lines:T,action:w.action};return $}function _(w,y){y=s(y);for(var C=w.length;C--;){for(var M=w[C],E=0;Ethis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(c),this.folds.sort(function(f,s){return-f.range.compareEnd(s.start.row,s.start.column)}),this.range.compareEnd(c.start.row,c.start.column)>0?(this.end.row=c.end.row,this.end.column=c.end.column):this.range.compareStart(c.end.row,c.end.column)<0&&(this.start.row=c.start.row,this.start.column=c.start.column)}else if(c.start.row==this.end.row)this.folds.push(c),this.end.row=c.end.row,this.end.column=c.end.column;else if(c.end.row==this.start.row)this.folds.unshift(c),this.start.row=c.start.row,this.start.column=c.start.column;else throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");c.foldLine=this},g.prototype.containsRow=function(c){return c>=this.start.row&&c<=this.end.row},g.prototype.walk=function(c,f,s){var o=0,a=this.folds,l,u,p,m=!0;f==null&&(f=this.end.row,s=this.end.column);for(var v=0;v0)){var m=d(f,u.start);return p===0?s&&m!==0?-l-2:l:m>0||m===0&&!s?l:-l-1}}return-l-1},c.prototype.add=function(f){var s=!f.isEmpty(),o=this.pointIndex(f.start,s);o<0&&(o=-o-1);var a=this.pointIndex(f.end,s,o);return a<0?a=-a-1:a++,this.ranges.splice(o,a-o,f)},c.prototype.addList=function(f){for(var s=[],o=f.length;o--;)s.push.apply(s,this.add(f[o]));return s},c.prototype.substractPoint=function(f){var s=this.pointIndex(f);if(s>=0)return this.ranges.splice(s,1)},c.prototype.merge=function(){var f=[],s=this.ranges;s=s.sort(function(p,m){return d(p.start,m.start)});for(var o=s[0],a,l=1;l=0},c.prototype.containsPoint=function(f){return this.pointIndex(f)>=0},c.prototype.rangeAtPoint=function(f){var s=this.pointIndex(f);if(s>=0)return this.ranges[s]},c.prototype.clipRows=function(f,s){var o=this.ranges;if(o[0].start.row>s||o[o.length-1].start.row=a)break}if(f.action=="insert")for(var b=l-a,_=-s.column+o.column;pa)break;if(v.start.row==a&&v.start.column>=s.column&&(v.start.column==s.column&&this.$bias<=0||(v.start.column+=_,v.start.row+=b)),v.end.row==a&&v.end.column>=s.column){if(v.end.column==s.column&&this.$bias<0)continue;v.end.column==s.column&&_>0&&pv.start.column&&v.end.column==u[p+1].start.column&&(v.end.column-=_),v.end.column+=_,v.end.row+=b}}else for(var b=a-l,_=s.column-o.column;pl)break;v.end.rows.column)&&(v.end.column=s.column,v.end.row=s.row):(v.end.column+=_,v.end.row+=b):v.end.row>l&&(v.end.row+=b),v.start.rows.column)&&(v.start.column=s.column,v.start.row=s.row):(v.start.column+=_,v.start.row+=b):v.start.row>l&&(v.start.row+=b)}if(b!=0&&p=o)return p;if(p.end.row>o)return null}return null},this.getNextFoldLine=function(o,a){var l=this.$foldData,u=0;for(a&&(u=l.indexOf(a)),u==-1&&(u=0),u;u=o)return p}return null},this.getFoldedRowCount=function(o,a){for(var l=this.$foldData,u=a-o+1,p=0;p=a){b=o?u-=a-b:u=0);break}else v>=o&&(b>=o?u-=v-b:u-=v-o+1)}return u},this.$addFoldLine=function(o){return this.$foldData.push(o),this.$foldData.sort(function(a,l){return a.start.row-l.start.row}),o},this.addFold=function(o,a){var l=this.$foldData,u=!1,p;o instanceof g?p=o:(p=new g(a,o),p.collapseChildren=a.collapseChildren),this.$clipRangeToDocument(p.range);var m=p.start.row,v=p.start.column,b=p.end.row,_=p.end.column,S=this.getFoldAt(m,v,1),w=this.getFoldAt(b,_,-1);if(S&&w==S)return S.addSubFold(p);S&&!S.range.isStart(m,v)&&this.removeFold(S),w&&!w.range.isEnd(b,_)&&this.removeFold(w);var y=this.getFoldsInRange(p.range);y.length>0&&(this.removeFolds(y),p.collapseChildren||y.forEach(function(T){p.addSubFold(T)}));for(var C=0;C0&&this.foldAll(o.start.row+1,o.end.row,o.collapseChildren-1),o.subFolds=[]},this.expandFolds=function(o){o.forEach(function(a){this.expandFold(a)},this)},this.unfold=function(o,a){var l,u;if(o==null)l=new i(0,0,this.getLength(),0),a==null&&(a=!0);else if(typeof o=="number")l=new i(o,0,o,this.getLine(o).length);else if("row"in o)l=i.fromPoints(o,o);else{if(Array.isArray(o))return u=[],o.forEach(function(m){u=u.concat(this.unfold(m))},this),u;l=o}u=this.getFoldsInRangeList(l);for(var p=u;u.length==1&&i.comparePoints(u[0].start,l.start)<0&&i.comparePoints(u[0].end,l.end)>0;)this.expandFolds(u),u=this.getFoldsInRangeList(l);if(a!=!1?this.removeFolds(u):this.expandFolds(u),p.length)return p},this.isRowFolded=function(o,a){return!!this.getFoldLine(o,a)},this.getRowFoldEnd=function(o,a){var l=this.getFoldLine(o,a);return l?l.end.row:o},this.getRowFoldStart=function(o,a){var l=this.getFoldLine(o,a);return l?l.start.row:o},this.getFoldDisplayLine=function(o,a,l,u,p){u==null&&(u=o.start.row),p==null&&(p=0),a==null&&(a=o.end.row),l==null&&(l=this.getLine(a).length);var m=this.doc,v="";return o.walk(function(b,_,S,w){if(!(_S)break;while(p&&v.test(p.type));p=u.stepBackward()}else p=u.getCurrentToken();return b.end.row=u.getCurrentTokenRow(),b.end.column=u.getCurrentTokenColumn(),b}},this.foldAll=function(o,a,l,u){l==null&&(l=1e5);var p=this.foldWidgets;if(p){a=a||this.getLength(),o=o||0;for(var m=o;m=o&&(m=v.end.row,v.collapseChildren=l,this.addFold("...",v))}}},this.foldToLevel=function(o){for(this.foldAll();o-- >0;)this.unfold(null,!1)},this.foldAllComments=function(){var o=this;this.foldAll(null,null,null,function(a){for(var l=o.getTokens(a),u=0;u=0;){var m=l[u];if(m==null&&(m=l[u]=this.getFoldWidget(u)),m=="start"){var v=this.getFoldWidgetRange(u);if(p||(p=v),v&&v.end.row>=o)break}u--}return{range:u!==-1&&v,firstRange:p}},this.onFoldWidgetClick=function(o,a){a instanceof f&&(a=a.domEvent);var l={children:a.shiftKey,all:a.ctrlKey||a.metaKey,siblings:a.altKey},u=this.$toggleFoldWidget(o,l);if(!u){var p=a.target||a.srcElement;p&&/ace_fold-widget/.test(p.className)&&(p.className+=" ace_invalid")}},this.$toggleFoldWidget=function(o,a){if(this.getFoldWidget){var l=this.getFoldWidget(o),u=this.getLine(o),p=l==="end"?-1:1,m=this.getFoldAt(o,p===-1?0:u.length,p);if(m)return a.children||a.all?this.removeFold(m):this.expandFold(m),m;var v=this.getFoldWidgetRange(o,!0);if(v&&!v.isMultiLine()&&(m=this.getFoldAt(v.start.row,v.start.column,1),m&&v.isEqual(m.range)))return this.removeFold(m),m;if(a.siblings){var b=this.getParentFoldRangeData(o);if(b.range)var _=b.range.start.row+1,S=b.range.end.row;this.foldAll(_,S,a.all?1e4:0)}else a.children?(S=v?v.end.row:this.getLength(),this.foldAll(o+1,S,a.all?1e4:0)):v&&(a.all&&(v.collapseChildren=1e4),this.addFold("...",v));return v}},this.toggleFoldWidget=function(o){var a=this.selection.getCursor().row;a=this.getRowFoldStart(a);var l=this.$toggleFoldWidget(a,{});if(!l){var u=this.getParentFoldRangeData(a,!0);if(l=u.range||u.firstRange,l){a=l.start.row;var p=this.getFoldAt(a,this.getLine(a).length,1);p?this.removeFold(p):this.addFold("...",l)}}},this.updateFoldWidgets=function(o){var a=o.start.row,l=o.end.row-a;if(l===0)this.foldWidgets[a]=null;else if(o.action=="remove")this.foldWidgets.splice(a,l+1,null);else{var u=Array(l+1);u.unshift(a,1),this.foldWidgets.splice.apply(this.foldWidgets,u)}},this.tokenizerUpdateFoldWidgets=function(o){var a=o.data;a.first!=a.last&&this.foldWidgets.length>a.first&&this.foldWidgets.splice(a.first,this.foldWidgets.length)}}r.Folding=s}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(n,r,h){var i=n("../token_iterator").TokenIterator,d=n("../range").Range;function g(){this.findMatchingBracket=function(c,f){if(c.column==0)return null;var s=f||this.getLine(c.row).charAt(c.column-1);if(s=="")return null;var o=s.match(/([\(\[\{])|([\)\]\}])/);return o?o[1]?this.$findClosingBracket(o[1],c):this.$findOpeningBracket(o[2],c):null},this.getBracketRange=function(c){var f=this.getLine(c.row),s=!0,o,a=f.charAt(c.column-1),l=a&&a.match(/([\(\[\{])|([\)\]\}])/);if(l||(a=f.charAt(c.column),c={row:c.row,column:c.column+1},l=a&&a.match(/([\(\[\{])|([\)\]\}])/),s=!1),!l)return null;if(l[1]){var u=this.$findClosingBracket(l[1],c);if(!u)return null;o=d.fromPoints(c,u),s||(o.end.column++,o.start.column--),o.cursor=o.end}else{var u=this.$findOpeningBracket(l[2],c);if(!u)return null;o=d.fromPoints(u,c),s||(o.start.column++,o.end.column--),o.cursor=o.start}return o},this.getMatchingBracketRanges=function(c,f){var s=this.getLine(c.row),o=/([\(\[\{])|([\)\]\}])/,a=!f&&s.charAt(c.column-1),l=a&&a.match(o);if(l||(a=(f===void 0||f)&&s.charAt(c.column),c={row:c.row,column:c.column+1},l=a&&a.match(o)),!l)return null;var u=new d(c.row,c.column-1,c.row,c.column),p=l[1]?this.$findClosingBracket(l[1],c):this.$findOpeningBracket(l[2],c);if(!p)return[u];var m=new d(p.row,p.column,p.row,p.column+1);return[u,m]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(c,f,s){var o=this.$brackets[c],a=1,l=new i(this,f.row,f.column),u=l.getCurrentToken();if(u||(u=l.stepForward()),!!u){s||(s=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)").replace(/-close\b/,"-(close|open)")+")+"));for(var p=f.column-l.getCurrentTokenColumn()-2,m=u.value;;){for(;p>=0;){var v=m.charAt(p);if(v==o){if(a-=1,a==0)return{row:l.getCurrentTokenRow(),column:p+l.getCurrentTokenColumn()}}else v==c&&(a+=1);p-=1}do u=l.stepBackward();while(u&&!s.test(u.type));if(u==null)break;m=u.value,p=m.length-1}return null}},this.$findClosingBracket=function(c,f,s){var o=this.$brackets[c],a=1,l=new i(this,f.row,f.column),u=l.getCurrentToken();if(u||(u=l.stepForward()),!!u){s||(s=new RegExp("(\\.?"+u.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)").replace(/-open\b/,"-(close|open)")+")+"));for(var p=f.column-l.getCurrentTokenColumn();;){for(var m=u.value,v=m.length;p"?o=!0:f.type.indexOf("tag-name")!==-1&&(s=!0));while(f&&!s);return f},this.$findClosingTag=function(c,f){var s,o=f.value,a=f.value,l=0,u=new d(c.getCurrentTokenRow(),c.getCurrentTokenColumn(),c.getCurrentTokenRow(),c.getCurrentTokenColumn()+1);f=c.stepForward();var p=new d(c.getCurrentTokenRow(),c.getCurrentTokenColumn(),c.getCurrentTokenRow(),c.getCurrentTokenColumn()+f.value.length),m=!1;do{if(s=f,s.type.indexOf("tag-close")!==-1&&!m){var v=new d(c.getCurrentTokenRow(),c.getCurrentTokenColumn(),c.getCurrentTokenRow(),c.getCurrentTokenColumn()+1);m=!0}if(f=c.stepForward(),f){if(f.value===">"&&!m){var v=new d(c.getCurrentTokenRow(),c.getCurrentTokenColumn(),c.getCurrentTokenRow(),c.getCurrentTokenColumn()+1);m=!0}if(f.type.indexOf("tag-name")!==-1){if(o=f.value,a===o){if(s.value==="<")l++;else if(s.value==="")var S=new d(c.getCurrentTokenRow(),c.getCurrentTokenColumn(),c.getCurrentTokenRow(),c.getCurrentTokenColumn()+1);else return}}}else if(a===o&&f.value==="/>"&&(l--,l<0))var b=new d(c.getCurrentTokenRow(),c.getCurrentTokenColumn(),c.getCurrentTokenRow(),c.getCurrentTokenColumn()+2),_=b,S=_,v=new d(p.end.row,p.end.column,p.end.row,p.end.column+1)}}while(f&&l>=0);if(u&&v&&b&&S&&p&&_)return{openTag:new d(u.start.row,u.start.column,v.end.row,v.end.column),closeTag:new d(b.start.row,b.start.column,S.end.row,S.end.column),openTagName:p,closeTagName:_}},this.$findOpeningTag=function(c,f){var s=c.getCurrentToken(),o=f.value,a=0,l=c.getCurrentTokenRow(),u=c.getCurrentTokenColumn(),p=u+2,m=new d(l,u,l,p);c.stepForward();var v=new d(c.getCurrentTokenRow(),c.getCurrentTokenColumn(),c.getCurrentTokenRow(),c.getCurrentTokenColumn()+f.value.length);if(f.type.indexOf("tag-close")===-1&&(f=c.stepForward()),!(!f||f.value!==">")){var b=new d(c.getCurrentTokenRow(),c.getCurrentTokenColumn(),c.getCurrentTokenRow(),c.getCurrentTokenColumn()+1);c.stepBackward(),c.stepBackward();do if(f=s,l=c.getCurrentTokenRow(),u=c.getCurrentTokenColumn(),p=u+f.value.length,s=c.stepBackward(),f){if(f.type.indexOf("tag-name")!==-1){if(o===f.value)if(s.value==="<"){if(a++,a>0){var _=new d(l,u,l,p),S=new d(c.getCurrentTokenRow(),c.getCurrentTokenColumn(),c.getCurrentTokenRow(),c.getCurrentTokenColumn()+1);do f=c.stepForward();while(f&&f.value!==">");var w=new d(c.getCurrentTokenRow(),c.getCurrentTokenColumn(),c.getCurrentTokenRow(),c.getCurrentTokenColumn()+1)}}else s.value===""){for(var y=0,C=s;C;){if(C.type.indexOf("tag-name")!==-1&&C.value===o){a--;break}else if(C.value==="<")break;C=c.stepBackward(),y++}for(var M=0;Mx&&(this.$docRowCache.splice(x,k),this.$screenRowCache.splice(x,k))},L.prototype.$getRowCacheIndex=function($,k){for(var x=0,A=$.length-1;x<=A;){var R=x+A>>1,I=$[R];if(k>I)x=R+1;else if(k=k));I++);return A=x[I],A?(A.index=I,A.start=R-A.value.length,A):null},L.prototype.setUndoManager=function($){if(this.$undoManager=$,this.$informUndoManager&&this.$informUndoManager.cancel(),$){var k=this;$.addSession(this),this.$syncInformUndoManager=function(){k.$informUndoManager.cancel(),k.mergeUndoDeltas=!1},this.$informUndoManager=d.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},L.prototype.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},L.prototype.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},L.prototype.getTabString=function(){return this.getUseSoftTabs()?d.stringRepeat(" ",this.getTabSize()):" "},L.prototype.setUseSoftTabs=function($){this.setOption("useSoftTabs",$)},L.prototype.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},L.prototype.setTabSize=function($){this.setOption("tabSize",$)},L.prototype.getTabSize=function(){return this.$tabSize},L.prototype.isTabStop=function($){return this.$useSoftTabs&&$.column%this.$tabSize===0},L.prototype.setNavigateWithinSoftTabs=function($){this.setOption("navigateWithinSoftTabs",$)},L.prototype.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},L.prototype.setOverwrite=function($){this.setOption("overwrite",$)},L.prototype.getOverwrite=function(){return this.$overwrite},L.prototype.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},L.prototype.addGutterDecoration=function($,k){this.$decorations[$]||(this.$decorations[$]=""),this.$decorations[$]+=" "+k,this._signal("changeBreakpoint",{})},L.prototype.removeGutterDecoration=function($,k){this.$decorations[$]=(this.$decorations[$]||"").replace(" "+k,""),this._signal("changeBreakpoint",{})},L.prototype.getBreakpoints=function(){return this.$breakpoints},L.prototype.setBreakpoints=function($){this.$breakpoints=[];for(var k=0;k<$.length;k++)this.$breakpoints[$[k]]="ace_breakpoint";this._signal("changeBreakpoint",{})},L.prototype.clearBreakpoints=function(){this.$breakpoints=[],this._signal("changeBreakpoint",{})},L.prototype.setBreakpoint=function($,k){k===void 0&&(k="ace_breakpoint"),k?this.$breakpoints[$]=k:delete this.$breakpoints[$],this._signal("changeBreakpoint",{})},L.prototype.clearBreakpoint=function($){delete this.$breakpoints[$],this._signal("changeBreakpoint",{})},L.prototype.addMarker=function($,k,x,A){var R=this.$markerId++,I={range:$,type:x||"line",renderer:typeof x=="function"?x:null,clazz:k,inFront:!!A,id:R};return A?(this.$frontMarkers[R]=I,this._signal("changeFrontMarker")):(this.$backMarkers[R]=I,this._signal("changeBackMarker")),R},L.prototype.addDynamicMarker=function($,k){if($.update){var x=this.$markerId++;return $.id=x,$.inFront=!!k,k?(this.$frontMarkers[x]=$,this._signal("changeFrontMarker")):(this.$backMarkers[x]=$,this._signal("changeBackMarker")),$}},L.prototype.removeMarker=function($){var k=this.$frontMarkers[$]||this.$backMarkers[$];if(k){var x=k.inFront?this.$frontMarkers:this.$backMarkers;delete x[$],this._signal(k.inFront?"changeFrontMarker":"changeBackMarker")}},L.prototype.getMarkers=function($){return $?this.$frontMarkers:this.$backMarkers},L.prototype.highlight=function($){if(!this.$searchHighlight){var k=new p(null,"ace_selected-word","text");this.$searchHighlight=this.addDynamicMarker(k)}this.$searchHighlight.setRegexp($)},L.prototype.highlightLines=function($,k,x,A){typeof k!="number"&&(x=k,k=$),x||(x="ace_step");var R=new a($,0,k,1/0);return R.id=this.addMarker(R,x,"fullLine",A),R},L.prototype.setAnnotations=function($){this.$annotations=$,this._signal("changeAnnotation",{})},L.prototype.getAnnotations=function(){return this.$annotations||[]},L.prototype.clearAnnotations=function(){this.setAnnotations([])},L.prototype.$detectNewLine=function($){var k=$.match(/^.*?(\r?\n)/m);k?this.$autoNewLine=k[1]:this.$autoNewLine=` +`},L.prototype.getWordRange=function($,k){var x=this.getLine($),A=!1;if(k>0&&(A=!!x.charAt(k-1).match(this.tokenRe)),A||(A=!!x.charAt(k).match(this.tokenRe)),A)var R=this.tokenRe;else if(/^\s+$/.test(x.slice(k-1,k+1)))var R=/\s/;else var R=this.nonTokenRe;var I=k;if(I>0){do I--;while(I>=0&&x.charAt(I).match(R));I++}for(var N=k;N$&&($=k.screenWidth)}),this.lineWidgetWidth=$},L.prototype.$computeWidth=function($){if(this.$modified||$){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var k=this.doc.getAllLines(),x=this.$rowLengthCache,A=0,R=0,I=this.$foldData[R],N=I?I.start.row:1/0,O=k.length,D=0;DN){if(D=I.end.row+1,D>=O)break;I=this.$foldData[R++],N=I?I.start.row:1/0}x[D]==null&&(x[D]=this.$getStringScreenWidth(k[D])[0]),x[D]>A&&(A=x[D])}this.screenWidth=A}},L.prototype.getLine=function($){return this.doc.getLine($)},L.prototype.getLines=function($,k){return this.doc.getLines($,k)},L.prototype.getLength=function(){return this.doc.getLength()},L.prototype.getTextRange=function($){return this.doc.getTextRange($||this.selection.getRange())},L.prototype.insert=function($,k){return this.doc.insert($,k)},L.prototype.remove=function($){return this.doc.remove($)},L.prototype.removeFullLines=function($,k){return this.doc.removeFullLines($,k)},L.prototype.undoChanges=function($,k){if($.length){this.$fromUndo=!0;for(var x=$.length-1;x!=-1;x--){var A=$[x];A.action=="insert"||A.action=="remove"?this.doc.revertDelta(A):A.folds&&this.addFolds(A.folds)}!k&&this.$undoSelect&&($.selectionBefore?this.selection.fromJSON($.selectionBefore):this.selection.setRange(this.$getUndoSelection($,!0))),this.$fromUndo=!1}},L.prototype.redoChanges=function($,k){if($.length){this.$fromUndo=!0;for(var x=0;x<$.length;x++){var A=$[x];(A.action=="insert"||A.action=="remove")&&this.doc.$safeApplyDelta(A)}!k&&this.$undoSelect&&($.selectionAfter?this.selection.fromJSON($.selectionAfter):this.selection.setRange(this.$getUndoSelection($,!1))),this.$fromUndo=!1}},L.prototype.setUndoSelect=function($){this.$undoSelect=$},L.prototype.$getUndoSelection=function($,k){function x(O){return k?O.action!=="insert":O.action==="insert"}for(var A,R,I=0;I<$.length;I++){var N=$[I];if(N.start){if(!A){x(N)?A=a.fromPoints(N.start,N.end):A=a.fromPoints(N.start,N.start);continue}x(N)?(R=N.start,A.compare(R.row,R.column)==-1&&A.setStart(R),R=N.end,A.compare(R.row,R.column)==1&&A.setEnd(R)):(R=N.start,A.compare(R.row,R.column)==-1&&(A=a.fromPoints(N.start,N.start)))}}return A},L.prototype.replace=function($,k){return this.doc.replace($,k)},L.prototype.moveText=function($,k,x){var A=this.getTextRange($),R=this.getFoldsInRange($),I=a.fromPoints(k,k);if(!x){this.remove($);var N=$.start.row-$.end.row,O=N?-$.end.column:$.start.column-$.end.column;O&&(I.start.row==$.end.row&&I.start.column>$.end.column&&(I.start.column+=O),I.end.row==$.end.row&&I.end.column>$.end.column&&(I.end.column+=O)),N&&I.start.row>=$.end.row&&(I.start.row+=N,I.end.row+=N)}if(I.end=this.insert(I.start,A),R.length){var D=$.start,F=I.start,N=F.row-D.row,O=F.column-D.column;this.addFolds(R.map(function(P){return P=P.clone(),P.start.row==D.row&&(P.start.column+=O),P.end.row==D.row&&(P.end.column+=O),P.start.row+=N,P.end.row+=N,P}))}return I},L.prototype.indentRows=function($,k,x){x=x.replace(/\t/g,this.getTabString());for(var A=$;A<=k;A++)this.doc.insertInLine({row:A,column:0},x)},L.prototype.outdentRows=function($){for(var k=$.collapseRows(),x=new a(0,0,0,0),A=this.getTabSize(),R=k.start.row;R<=k.end.row;++R){var I=this.getLine(R);x.start.row=R,x.end.row=R;for(var N=0;N0){var A=this.getRowFoldEnd(k+x);if(A>this.doc.getLength()-1)return 0;var R=A-k}else{$=this.$clipRowToDocument($),k=this.$clipRowToDocument(k);var R=k-$+1}var I=new a($,0,k,Number.MAX_VALUE),N=this.getFoldsInRange(I).map(function(D){return D=D.clone(),D.start.row+=R,D.end.row+=R,D}),O=x==0?this.doc.getLines($,k):this.doc.removeFullLines($,k);return this.doc.insertFullLines($+R,O),N.length&&this.addFolds(N),R},L.prototype.moveLinesUp=function($,k){return this.$moveLines($,k,-1)},L.prototype.moveLinesDown=function($,k){return this.$moveLines($,k,1)},L.prototype.duplicateLines=function($,k){return this.$moveLines($,k,0)},L.prototype.$clipRowToDocument=function($){return Math.max(0,Math.min($,this.doc.getLength()-1))},L.prototype.$clipColumnToRow=function($,k){return k<0?0:Math.min(this.doc.getLine($).length,k)},L.prototype.$clipPositionToDocument=function($,k){if(k=Math.max(0,k),$<0)$=0,k=0;else{var x=this.doc.getLength();$>=x?($=x-1,k=this.doc.getLine(x-1).length):k=Math.min(this.doc.getLine($).length,k)}return{row:$,column:k}},L.prototype.$clipRangeToDocument=function($){$.start.row<0?($.start.row=0,$.start.column=0):$.start.column=this.$clipColumnToRow($.start.row,$.start.column);var k=this.doc.getLength()-1;return $.end.row>k?($.end.row=k,$.end.column=this.doc.getLine(k).length):$.end.column=this.$clipColumnToRow($.end.row,$.end.column),$},L.prototype.setUseWrapMode=function($){if($!=this.$useWrapMode){if(this.$useWrapMode=$,this.$modified=!0,this.$resetRowCache(0),$){var k=this.getLength();this.$wrapData=Array(k),this.$updateWrapData(0,k-1)}this._signal("changeWrapMode")}},L.prototype.getUseWrapMode=function(){return this.$useWrapMode},L.prototype.setWrapLimitRange=function($,k){(this.$wrapLimitRange.min!==$||this.$wrapLimitRange.max!==k)&&(this.$wrapLimitRange={min:$,max:k},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode"))},L.prototype.adjustWrapLimit=function($,k){var x=this.$wrapLimitRange;x.max<0&&(x={min:k,max:k});var A=this.$constrainWrapLimit($,x.min,x.max);return A!=this.$wrapLimit&&A>1?(this.$wrapLimit=A,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},L.prototype.$constrainWrapLimit=function($,k,x){return k&&($=Math.max(k,$)),x&&($=Math.min(x,$)),$},L.prototype.getWrapLimit=function(){return this.$wrapLimit},L.prototype.setWrapLimit=function($){this.setWrapLimitRange($,$)},L.prototype.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},L.prototype.$updateInternalDataOnChange=function($){var k=this.$useWrapMode,x=$.action,A=$.start,R=$.end,I=A.row,N=R.row,O=N-I,D=null;if(this.$updating=!0,O!=0)if(x==="remove"){this[k?"$wrapData":"$rowLengthCache"].splice(I,O);var F=this.$foldData;D=this.getFoldsInRange($),this.removeFolds(D);var B=this.getFoldLine(R.row),j=0;if(B){B.addRemoveChars(R.row,R.column,A.column-R.column),B.shiftRow(-O);var P=this.getFoldLine(I);P&&P!==B&&(P.merge(B),B=P),j=F.indexOf(B)+1}for(j;j=R.row&&B.shiftRow(-O)}N=I}else{var H=Array(O);H.unshift(I,0);var U=k?this.$wrapData:this.$rowLengthCache;U.splice.apply(U,H);var F=this.$foldData,B=this.getFoldLine(I),j=0;if(B){var K=B.range.compareInside(A.row,A.column);K==0?(B=B.split(A.row,A.column),B&&(B.shiftRow(O),B.addRemoveChars(N,0,R.column-A.column))):K==-1&&(B.addRemoveChars(I,0,R.column-A.column),B.shiftRow(O)),j=F.indexOf(B)+1}for(j;j=I&&B.shiftRow(O)}}else{O=Math.abs($.start.column-$.end.column),x==="remove"&&(D=this.getFoldsInRange($),this.removeFolds(D),O=-O);var B=this.getFoldLine(I);B&&B.addRemoveChars(I,A.column,O)}return k&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,k?this.$updateWrapData(I,N):this.$updateRowLengthCache(I,N),D},L.prototype.$updateRowLengthCache=function($,k){this.$rowLengthCache[$]=null,this.$rowLengthCache[k]=null},L.prototype.$updateWrapData=function($,k){var x=this.doc.getAllLines(),A=this.getTabSize(),R=this.$wrapData,I=this.$wrapLimit,N,O,D=$;for(k=Math.min(k,x.length-1);D<=k;)O=this.getFoldLine(D,O),O?(N=[],O.walk((function(F,B,j,P){var H;if(F!=null){H=this.$getDisplayTokens(F,N.length),H[0]=S;for(var U=1;Uk-P;){var H=I+k-P;if($[H-1]>=C&&$[H]>=C){j(H);continue}if($[H]==S||$[H]==w){for(H;H!=I-1&&$[H]!=S;H--);if(H>I){j(H);continue}for(H=I+k,H;H<$.length&&$[H]==w;H++);if(H==$.length)break;j(H);continue}for(var U=Math.max(H-(k-(k>>2)),I-1);H>U&&$[H]U&&$[H]U&&$[H]==y;)H--}else for(;H>U&&$[H]U){j(++H);continue}H=I+k,$[H]==_&&H--,j(H-P)}return A},L.prototype.$getDisplayTokens=function($,k){var x=[],A;k=k||0;for(var R=0;R<$.length;R++){var I=$.charCodeAt(R);if(I==9){A=this.getScreenTabSize(x.length+k),x.push(M);for(var N=1;N39&&I<48||I>57&&I<64?x.push(y):I>=4352&&T(I)?x.push(b,_):x.push(b)}return x},L.prototype.$getStringScreenWidth=function($,k,x){if(k==0)return[0,0];k==null&&(k=1/0),x=x||0;var A,R;for(R=0;R<$.length&&(A=$.charCodeAt(R),A==9?x+=this.getScreenTabSize(x):A>=4352&&T(A)?x+=2:x+=1,!(x>k));R++);return[x,R]},L.prototype.getRowLength=function($){var k=1;return this.lineWidgets&&(k+=this.lineWidgets[$]&&this.lineWidgets[$].rowCount||0),!this.$useWrapMode||!this.$wrapData[$]?k:this.$wrapData[$].length+k},L.prototype.getRowLineCount=function($){return!this.$useWrapMode||!this.$wrapData[$]?1:this.$wrapData[$].length+1},L.prototype.getRowWrapIndent=function($){if(this.$useWrapMode){var k=this.screenToDocumentPosition($,Number.MAX_VALUE),x=this.$wrapData[k.row];return x.length&&x[0]=0)var B=O[D],j=this.$docRowCache[D],P=$>O[F-1];else var P=!F;for(var H=this.getLength()-1,U=this.getNextFoldLine(j),K=U?U.start.row:1/0;B<=$&&(N=this.getRowLength(j),!(B+N>$||j>=H));)B+=N,j++,j>K&&(j=U.end.row+1,U=this.getNextFoldLine(j,U),K=U?U.start.row:1/0),P&&(this.$docRowCache.push(j),this.$screenRowCache.push(B));if(U&&U.start.row<=j)A=this.getFoldDisplayLine(U),j=U.start.row;else{if(B+N<=$||j>H)return{row:H,column:this.getLine(H).length};A=this.getLine(j),U=null}var q=0,X=Math.floor($-B);if(this.$useWrapMode){var ee=this.$wrapData[j];ee&&(I=ee[X],X>0&&ee.length&&(q=ee.indent,R=ee[X-1]||ee[ee.length-1],A=A.substring(R)))}return x!==void 0&&this.$bidiHandler.isBidiRow(B+X,j,X)&&(k=this.$bidiHandler.offsetToCol(x)),R+=this.$getStringScreenWidth(A,k-q)[1],this.$useWrapMode&&R>=I&&(R=I-1),U?U.idxToPosition(R):{row:j,column:R}},L.prototype.documentToScreenPosition=function($,k){if(typeof k>"u")var x=this.$clipPositionToDocument($.row,$.column);else x=this.$clipPositionToDocument($,k);$=x.row,k=x.column;var B=0,A=null,R=null;R=this.getFoldAt($,k,1),R&&($=R.start.row,k=R.start.column);var I,F=0,N=this.$docRowCache,O=this.$getRowCacheIndex(N,$),D=N.length;if(D&&O>=0)var F=N[O],B=this.$screenRowCache[O],j=$>N[D-1];else var j=!D;for(var P=this.getNextFoldLine(F),H=P?P.start.row:1/0;F<$;){if(F>=H){if(I=P.end.row+1,I>$)break;P=this.getNextFoldLine(I,P),H=P?P.start.row:1/0}else I=F+1;B+=this.getRowLength(F),F=I,j&&(this.$docRowCache.push(F),this.$screenRowCache.push(B))}var U="";P&&F>=H?(U=this.getFoldDisplayLine(P,$,k),A=P.start.row):(U=this.getLine($).substring(0,k),A=$);var K=0;if(this.$useWrapMode){var q=this.$wrapData[A];if(q){for(var X=0;U.length>=q[X];)B++,X++;U=U.substring(q[X-1]||0,U.length),K=X>0?q.indent:0}}return this.lineWidgets&&this.lineWidgets[F]&&this.lineWidgets[F].rowsAbove&&(B+=this.lineWidgets[F].rowsAbove),{row:B,column:K+this.$getStringScreenWidth(U)[0]}},L.prototype.documentToScreenColumn=function($,k){return this.documentToScreenPosition($,k).column},L.prototype.documentToScreenRow=function($,k){return this.documentToScreenPosition($,k).row},L.prototype.getScreenLength=function(){var $=0,k=null;if(this.$useWrapMode)for(var x=this.$wrapData.length,A=0,R=0,k=this.$foldData[R++],I=k?k.start.row:1/0;AI&&(A=k.end.row+1,k=this.$foldData[R++],I=k?k.start.row:1/0)}else{$=this.getLength();for(var O=this.$foldData,R=0;Rx));I++);return[A,I]})},L.prototype.getPrecedingCharacter=function(){var $=this.selection.getCursor();if($.column===0)return $.row===0?"":this.doc.getNewLineCharacter();var k=this.getLine($.row);return k[$.column-1]},L.prototype.destroy=function(){this.destroyed||(this.bgTokenizer.setDocument(null),this.bgTokenizer.cleanup(),this.destroyed=!0),this.$stopWorker(),this.removeAllListeners(),this.doc&&this.doc.off("change",this.$onChange),this.selection.detach()},L}();v.$uid=0,v.prototype.$modes=c.$modes,v.prototype.getValue=v.prototype.toString,v.prototype.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},v.prototype.$overwrite=!1,v.prototype.$mode=null,v.prototype.$modeId=null,v.prototype.$scrollTop=0,v.prototype.$scrollLeft=0,v.prototype.$wrapLimit=80,v.prototype.$useWrapMode=!1,v.prototype.$wrapLimitRange={min:null,max:null},v.prototype.lineWidgets=null,v.prototype.isFullWidth=T,i.implement(v.prototype,f);var b=1,_=2,S=3,w=4,y=9,C=10,M=11,E=12;function T(L){return L<4352?!1:L>=4352&&L<=4447||L>=4515&&L<=4519||L>=4602&&L<=4607||L>=9001&&L<=9002||L>=11904&&L<=11929||L>=11931&&L<=12019||L>=12032&&L<=12245||L>=12272&&L<=12283||L>=12288&&L<=12350||L>=12353&&L<=12438||L>=12441&&L<=12543||L>=12549&&L<=12589||L>=12593&&L<=12686||L>=12688&&L<=12730||L>=12736&&L<=12771||L>=12784&&L<=12830||L>=12832&&L<=12871||L>=12880&&L<=13054||L>=13056&&L<=19903||L>=19968&&L<=42124||L>=42128&&L<=42182||L>=43360&&L<=43388||L>=44032&&L<=55203||L>=55216&&L<=55238||L>=55243&&L<=55291||L>=63744&&L<=64255||L>=65040&&L<=65049||L>=65072&&L<=65106||L>=65108&&L<=65126||L>=65128&&L<=65131||L>=65281&&L<=65376||L>=65504&&L<=65510}n("./edit_session/folding").Folding.call(v.prototype),n("./edit_session/bracket_match").BracketMatch.call(v.prototype),c.defineOptions(v.prototype,"session",{wrap:{set:function(L){if(!L||L=="off"?L=!1:L=="free"?L=!0:L=="printMargin"?L=-1:typeof L=="string"&&(L=parseInt(L,10)||!1),this.$wrap!=L)if(this.$wrap=L,!L)this.setUseWrapMode(!1);else{var $=typeof L=="number"?L:null;this.setWrapLimitRange($,$),this.setUseWrapMode(!0)}},get:function(){return this.getUseWrapMode()?this.$wrap==-1?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(L){L=L=="auto"?this.$mode.type!="text":L!="text",L!=this.$wrapAsCode&&(this.$wrapAsCode=L,this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0)))},initialValue:"auto"},indentedSoftWrap:{set:function(){this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0))},initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(L){this.$useWorker=L,this.$stopWorker(),L&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(L){L=parseInt(L),L>0&&this.$tabSize!==L&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=L,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(L){this.setFoldStyle(L)},handlesSet:!0},overwrite:{set:function(L){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(L){this.doc.setNewLineMode(L)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(L){this.setMode(L)},get:function(){return this.$modeId},handlesSet:!0}}),r.EditSession=v}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(n,r,h){var i=n("./lib/lang"),d=n("./lib/oop"),g=n("./range").Range,c=function(){function s(){this.$options={}}return s.prototype.set=function(o){return d.mixin(this.$options,o),this},s.prototype.getOptions=function(){return i.copyObject(this.$options)},s.prototype.setOptions=function(o){this.$options=o},s.prototype.find=function(o){var a=this.$options,l=this.$matchIterator(o,a);if(!l)return!1;var u=null;return l.forEach(function(p,m,v,b){return u=new g(p,m,v,b),m==b&&a.start&&a.start.start&&a.skipCurrent!=!1&&u.isEqual(a.start)?(u=null,!1):!0}),u},s.prototype.findAll=function(o){var a=this.$options;if(!a.needle)return[];this.$assembleRegExp(a);var l=a.range,u=l?o.getLines(l.start.row,l.end.row):o.doc.getAllLines(),p=[],m=a.re;if(a.$isMultiLine){var v=m.length,b=u.length-v,_;e:for(var S=m.offset||0;S<=b;S++){for(var w=0;wM||(p.push(_=new g(S,M,S+v-1,E)),v>2&&(S=S+v-2))}}else for(var T=0;Tx&&p[w].end.row==A;)w--;for(p=p.slice(T,w+1),T=0,w=p.length;T=_;E--)if(C(E,Number.MAX_VALUE,M))return;if(a.wrap!=!1){for(E=S,_=b.row;E>=_;E--)if(C(E,Number.MAX_VALUE,M))return}}};else var w=function(M){var E=b.row;if(!C(E,b.column,M)){for(E=E+1;E<=S;E++)if(C(E,0,M))return;if(a.wrap!=!1){for(E=_,S=b.row;E<=S;E++)if(C(E,0,M))return}}};if(a.$isMultiLine)var y=l.length,C=function(M,E,T){var L=u?M-y+1:M;if(!(L<0||L+y>o.getLength())){var $=o.getLine(L),k=$.search(l[0]);if(!(!u&&kE)&&T(L,k,L+y-1,A))return!0}}};else if(u)var C=function(M,E,T){var L=o.getLine(M),$=[],k,x=0;for(l.lastIndex=0;k=l.exec(L);){var A=k[0].length;if(x=k.index,!A){if(x>=L.length)break;l.lastIndex=x+=i.skipEmptyMatch(L,x,m)}if(k.index+A>E)break;$.push(k.index,A)}for(var R=$.length-1;R>=0;R-=2){var I=$[R-1],A=$[R];if(T(M,I,M,I+A))return!0}};else var C=function(M,E,T){var L=o.getLine(M),$,k;for(l.lastIndex=E;k=l.exec(L);){var x=k[0].length;if($=k.index,T(M,$,M,$+x))return!0;if(!x&&(l.lastIndex=$+=i.skipEmptyMatch(L,$,m),$>=L.length))return!1}};return{forEach:w}},s}();function f(s,o){var a=i.supportsLookbehind();function l(v,b){b===void 0&&(b=!0);var _=a&&o.$supportsUnicodeFlag?new RegExp("[\\p{L}\\p{N}_]","u"):new RegExp("\\w");return _.test(v)||o.regExp?a&&o.$supportsUnicodeFlag?b?"(?<=^|[^\\p{L}\\p{N}_])":"(?=[^\\p{L}\\p{N}_]|$)":"\\b":""}var u=Array.from(s),p=u[0],m=u[u.length-1];return l(p)+s+l(m,!1)}r.Search=c}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(n,r,h){var i=this&&this.__extends||function(){var a=function(l,u){return a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(p,m){p.__proto__=m}||function(p,m){for(var v in m)Object.prototype.hasOwnProperty.call(m,v)&&(p[v]=m[v])},a(l,u)};return function(l,u){if(typeof u!="function"&&u!==null)throw new TypeError("Class extends value "+String(u)+" is not a constructor or null");a(l,u);function p(){this.constructor=l}l.prototype=u===null?Object.create(u):(p.prototype=u.prototype,new p)}}(),d=n("../lib/keys"),g=n("../lib/useragent"),c=d.KEY_MODS,f=function(){function a(l,u){this.$init(l,u,!1)}return a.prototype.$init=function(l,u,p){this.platform=u||(g.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(l),this.$singleCommand=p},a.prototype.addCommand=function(l){this.commands[l.name]&&this.removeCommand(l),this.commands[l.name]=l,l.bindKey&&this._buildKeyHash(l)},a.prototype.removeCommand=function(l,u){var p=l&&(typeof l=="string"?l:l.name);l=this.commands[p],u||delete this.commands[p];var m=this.commandKeyBinding;for(var v in m){var b=m[v];if(b==l)delete m[v];else if(Array.isArray(b)){var _=b.indexOf(l);_!=-1&&(b.splice(_,1),b.length==1&&(m[v]=b[0]))}}},a.prototype.bindKey=function(l,u,p){if(typeof l=="object"&&l&&(p==null&&(p=l.position),l=l[this.platform]),!!l){if(typeof u=="function")return this.addCommand({exec:u,bindKey:l,name:u.name||l});l.split("|").forEach(function(m){var v="";if(m.indexOf(" ")!=-1){var b=m.split(/\s+/);m=b.pop(),b.forEach(function(w){var y=this.parseKeys(w),C=c[y.hashId]+y.key;v+=(v?" ":"")+C,this._addCommandToBinding(v,"chainKeys")},this),v+=" "}var _=this.parseKeys(m),S=c[_.hashId]+_.key;this._addCommandToBinding(v+S,u,p)},this)}},a.prototype._addCommandToBinding=function(l,u,p){var m=this.commandKeyBinding,v;if(!u)delete m[l];else if(!m[l]||this.$singleCommand)m[l]=u;else{Array.isArray(m[l])?(v=m[l].indexOf(u))!=-1&&m[l].splice(v,1):m[l]=[m[l]],typeof p!="number"&&(p=s(u));var b=m[l];for(v=0;vp)break}b.splice(v,0,u)}},a.prototype.addCommands=function(l){l&&Object.keys(l).forEach(function(u){var p=l[u];if(p){if(typeof p=="string")return this.bindKey(p,u);typeof p=="function"&&(p={exec:p}),typeof p=="object"&&(p.name||(p.name=u),this.addCommand(p))}},this)},a.prototype.removeCommands=function(l){Object.keys(l).forEach(function(u){this.removeCommand(l[u])},this)},a.prototype.bindKeys=function(l){Object.keys(l).forEach(function(u){this.bindKey(u,l[u])},this)},a.prototype._buildKeyHash=function(l){this.bindKey(l.bindKey,l)},a.prototype.parseKeys=function(l){var u=l.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(S){return S}),p=u.pop(),m=d[p];if(d.FUNCTION_KEYS[m])p=d.FUNCTION_KEYS[m].toLowerCase();else if(u.length){if(u.length==1&&u[0]=="shift")return{key:p.toUpperCase(),hashId:-1}}else return{key:p,hashId:-1};for(var v=0,b=u.length;b--;){var _=d.KEY_MODS[u[b]];if(_==null)return typeof console<"u"&&console.error("invalid modifier "+u[b]+" in "+l),!1;v|=_}return{key:p,hashId:v}},a.prototype.findKeyCommand=function(l,u){var p=c[l]+u;return this.commandKeyBinding[p]},a.prototype.handleKeyboard=function(l,u,p,m){if(!(m<0)){var v=c[u]+p,b=this.commandKeyBinding[v];return l.$keyChain&&(l.$keyChain+=" "+v,b=this.commandKeyBinding[l.$keyChain]||b),b&&(b=="chainKeys"||b[b.length-1]=="chainKeys")?(l.$keyChain=l.$keyChain||v,{command:"null"}):(l.$keyChain&&((!u||u==4)&&p.length==1?l.$keyChain=l.$keyChain.slice(0,-v.length-1):(u==-1||m>0)&&(l.$keyChain="")),{command:b})}},a.prototype.getStatusText=function(l,u){return u.$keyChain||""},a}();function s(a){return typeof a=="object"&&a.bindKey&&a.bindKey.position||(a.isDefault?-100:0)}var o=function(a){i(l,a);function l(u,p){var m=a.call(this,u,p)||this;return m.$singleCommand=!0,m}return l}(f);o.call=function(a,l,u){f.prototype.$init.call(a,l,u,!0)},f.call=function(a,l,u){f.prototype.$init.call(a,l,u,!1)},r.HashHandler=o,r.MultiHashHandler=f}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(n,r,h){var i=this&&this.__extends||function(){var s=function(o,a){return s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(l,u){l.__proto__=u}||function(l,u){for(var p in u)Object.prototype.hasOwnProperty.call(u,p)&&(l[p]=u[p])},s(o,a)};return function(o,a){if(typeof a!="function"&&a!==null)throw new TypeError("Class extends value "+String(a)+" is not a constructor or null");s(o,a);function l(){this.constructor=o}o.prototype=a===null?Object.create(a):(l.prototype=a.prototype,new l)}}(),d=n("../lib/oop"),g=n("../keyboard/hash_handler").MultiHashHandler,c=n("../lib/event_emitter").EventEmitter,f=function(s){i(o,s);function o(a,l){var u=s.call(this,l,a)||this;return u.byName=u.commands,u.setDefaultHandler("exec",function(p){return p.args?p.command.exec(p.editor,p.args,p.event,!1):p.command.exec(p.editor,{},p.event,!0)}),u}return o.prototype.exec=function(a,l,u){if(Array.isArray(a)){for(var p=a.length;p--;)if(this.exec(a[p],l,u))return!0;return!1}if(typeof a=="string"&&(a=this.commands[a]),!this.canExecute(a,l))return!1;var m={editor:l,command:a,args:u};return m.returnValue=this._emit("exec",m),this._signal("afterExec",m),m.returnValue!==!1},o.prototype.canExecute=function(a,l){return typeof a=="string"&&(a=this.commands[a]),!(!a||l&&l.$readOnly&&!a.readOnly||this.$checkCommandState!=!1&&a.isAvailable&&!a.isAvailable(l))},o.prototype.toggleRecording=function(a){if(!this.$inReplay)return a&&a._emit("changeStatus"),this.recording?(this.macro.pop(),this.off("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=(function(l){this.macro.push([l.command,l.args])}).bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},o.prototype.replay=function(a){if(!(this.$inReplay||!this.macro)){if(this.recording)return this.toggleRecording(a);try{this.$inReplay=!0,this.macro.forEach(function(l){typeof l=="string"?this.exec(l,a):this.exec(l[0],a,l[1])},this)}finally{this.$inReplay=!1}}},o.prototype.trimMacro=function(a){return a.map(function(l){return typeof l[0]!="string"&&(l[0]=l[0].name),l[1]||(l=l[0]),l})},o}(g);d.implement(f.prototype,c),r.CommandManager=f}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(n,r,h){var i=n("../lib/lang"),d=n("../config"),g=n("../range").Range;function c(s,o){return{win:s,mac:o}}r.commands=[{name:"showSettingsMenu",description:"Show settings menu",bindKey:c("Ctrl-,","Command-,"),exec:function(s){d.loadModule("ace/ext/settings_menu",function(o){o.init(s),s.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",description:"Go to next error",bindKey:c("Alt-E","F4"),exec:function(s){d.loadModule("ace/ext/error_marker",function(o){o.showErrorMarker(s,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",description:"Go to previous error",bindKey:c("Alt-Shift-E","Shift-F4"),exec:function(s){d.loadModule("ace/ext/error_marker",function(o){o.showErrorMarker(s,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:c("Ctrl-A","Command-A"),exec:function(s){s.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:c(null,"Ctrl-L"),exec:function(s){s.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:c("Ctrl-L","Command-L"),exec:function(s,o){typeof o=="number"&&!isNaN(o)&&s.gotoLine(o),s.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:c("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(s){s.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:c("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(s){s.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",description:"Toggle fold widget",bindKey:c("F2","F2"),exec:function(s){s.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",description:"Toggle parent fold widget",bindKey:c("Alt-F2","Alt-F2"),exec:function(s){s.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:c(null,"Ctrl-Command-Option-0"),exec:function(s){s.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:c(null,"Ctrl-Command-Option-0"),exec:function(s){s.session.foldAllComments()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:c("Alt-0","Command-Option-0"),exec:function(s){s.session.foldAll(),s.session.unfold(s.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:c("Alt-Shift-0","Command-Option-Shift-0"),exec:function(s){s.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:c("Ctrl-K","Command-G"),exec:function(s){s.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:c("Ctrl-Shift-K","Command-Shift-G"),exec:function(s){s.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:c("Alt-K","Ctrl-G"),exec:function(s){s.selection.isEmpty()?s.selection.selectWord():s.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:c("Alt-Shift-K","Ctrl-Shift-G"),exec:function(s){s.selection.isEmpty()?s.selection.selectWord():s.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:c("Ctrl-F","Command-F"),exec:function(s){d.loadModule("ace/ext/searchbox",function(o){o.Search(s)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(s){s.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:c("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(s){s.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:c("Ctrl-Home","Command-Home|Command-Up"),exec:function(s){s.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:c("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(s){s.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:c("Up","Up|Ctrl-P"),exec:function(s,o){s.navigateUp(o.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:c("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(s){s.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:c("Ctrl-End","Command-End|Command-Down"),exec:function(s){s.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:c("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(s){s.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:c("Down","Down|Ctrl-N"),exec:function(s,o){s.navigateDown(o.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:c("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(s){s.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:c("Ctrl-Left","Option-Left"),exec:function(s){s.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:c("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(s){s.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:c("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(s){s.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:c("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(s){s.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:c("Left","Left|Ctrl-B"),exec:function(s,o){s.navigateLeft(o.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:c("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(s){s.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:c("Ctrl-Right","Option-Right"),exec:function(s){s.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:c("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(s){s.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:c("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(s){s.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:c("Shift-Right","Shift-Right"),exec:function(s){s.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:c("Right","Right|Ctrl-F"),exec:function(s,o){s.navigateRight(o.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(s){s.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:c(null,"Option-PageDown"),exec:function(s){s.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:c("PageDown","PageDown|Ctrl-V"),exec:function(s){s.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(s){s.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:c(null,"Option-PageUp"),exec:function(s){s.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(s){s.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:c("Ctrl-Up",null),exec:function(s){s.renderer.scrollBy(0,-2*s.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:c("Ctrl-Down",null),exec:function(s){s.renderer.scrollBy(0,2*s.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(s){s.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(s){s.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:c("Ctrl-Alt-E","Command-Option-E"),exec:function(s){s.commands.toggleRecording(s)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:c("Ctrl-Shift-E","Command-Shift-E"),exec:function(s){s.commands.replay(s)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:c("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(s){s.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:c("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(s){s.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:c("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(s){s.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:c(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(s){},readOnly:!0},{name:"cut",description:"Cut",exec:function(s){var o=s.$copyWithEmptySelection&&s.selection.isEmpty(),a=o?s.selection.getLineRange():s.selection.getRange();s._emit("cut",a),a.isEmpty()||s.session.remove(a),s.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(s,o){s.$handlePaste(o)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:c("Ctrl-D","Command-D"),exec:function(s){s.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:c("Ctrl-Shift-D","Command-Shift-D"),exec:function(s){s.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:c("Ctrl-Alt-S","Command-Alt-S"),exec:function(s){s.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:c("Ctrl-/","Command-/"),exec:function(s){s.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:c("Ctrl-Shift-/","Command-Shift-/"),exec:function(s){s.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:c("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(s){s.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:c("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(s){s.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:c("Ctrl-H","Command-Option-F"),exec:function(s){d.loadModule("ace/ext/searchbox",function(o){o.Search(s,!0)})}},{name:"undo",description:"Undo",bindKey:c("Ctrl-Z","Command-Z"),exec:function(s){s.undo()}},{name:"redo",description:"Redo",bindKey:c("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(s){s.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:c("Alt-Shift-Up","Command-Option-Up"),exec:function(s){s.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:c("Alt-Up","Option-Up"),exec:function(s){s.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:c("Alt-Shift-Down","Command-Option-Down"),exec:function(s){s.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:c("Alt-Down","Option-Down"),exec:function(s){s.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:c("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(s){s.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:c("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(s){s.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:c("Shift-Delete",null),exec:function(s){if(s.selection.isEmpty())s.remove("left");else return!1},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:c("Alt-Backspace","Command-Backspace"),exec:function(s){s.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:c("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(s){s.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:c("Ctrl-Shift-Backspace",null),exec:function(s){var o=s.selection.getRange();o.start.column=0,s.session.remove(o)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:c("Ctrl-Shift-Delete",null),exec:function(s){var o=s.selection.getRange();o.end.column=Number.MAX_VALUE,s.session.remove(o)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:c("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(s){s.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:c("Ctrl-Delete","Alt-Delete"),exec:function(s){s.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:c("Shift-Tab","Shift-Tab"),exec:function(s){s.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:c("Tab","Tab"),exec:function(s){s.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:c("Ctrl-[","Ctrl-["),exec:function(s){s.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:c("Ctrl-]","Ctrl-]"),exec:function(s){s.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(s,o){s.insert(o)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(s,o){s.insert(i.stringRepeat(o.text||"",o.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:c(null,"Ctrl-O"),exec:function(s){s.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:c("Alt-Shift-X","Ctrl-T"),exec:function(s){s.transposeLetters()},multiSelectAction:function(s){s.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:c("Ctrl-U","Ctrl-U"),exec:function(s){s.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:c("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(s){s.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"autoindent",description:"Auto Indent",bindKey:c(null,null),exec:function(s){s.autoIndent()},scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:c("Ctrl-Shift-L","Command-Shift-L"),exec:function(s){var o=s.selection.getRange();o.start.column=o.end.column=0,o.end.row++,s.selection.setRange(o,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"openlink",bindKey:c("Ctrl+F3","F3"),exec:function(s){s.openLink()}},{name:"joinlines",description:"Join lines",bindKey:c(null,null),exec:function(s){for(var o=s.selection.isBackwards(),a=o?s.selection.getSelectionLead():s.selection.getSelectionAnchor(),l=o?s.selection.getSelectionAnchor():s.selection.getSelectionLead(),u=s.session.doc.getLine(a.row).length,p=s.session.doc.getTextRange(s.selection.getRange()),m=p.replace(/\n\s*/," ").length,v=s.session.doc.getLine(a.row),b=a.row+1;b<=l.row+1;b++){var _=i.stringTrimLeft(i.stringTrimRight(s.session.doc.getLine(b)));_.length!==0&&(_=" "+_),v+=_}l.row+10?(s.selection.moveCursorTo(a.row,a.column),s.selection.selectTo(a.row,a.column+m)):(u=s.session.doc.getLine(a.row).length>u?u+1:u,s.selection.moveCursorTo(a.row,u))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:c(null,null),exec:function(s){var o=s.session.doc.getLength()-1,a=s.session.doc.getLine(o).length,l=s.selection.rangeList.ranges,u=[];l.length<1&&(l=[s.selection.getRange()]);for(var p=0;pf[s].column&&s++,l.unshift(s,0),f.splice.apply(f,l),this.$updateRows()}}},g.prototype.$updateRows=function(){var c=this.session.lineWidgets;if(c){var f=!0;c.forEach(function(s,o){if(s)for(f=!1,s.row=o;s.$oldWidget;)s.$oldWidget.row=o,s=s.$oldWidget}),f&&(this.session.lineWidgets=null)}},g.prototype.$registerLineWidget=function(c){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var f=this.session.lineWidgets[c.row];return f&&(c.$oldWidget=f,f.el&&f.el.parentNode&&(f.el.parentNode.removeChild(f.el),f._inDocument=!1)),this.session.lineWidgets[c.row]=c,c},g.prototype.addLineWidget=function(c){if(this.$registerLineWidget(c),c.session=this.session,!this.editor)return c;var f=this.editor.renderer;c.html&&!c.el&&(c.el=i.createElement("div"),c.el.innerHTML=c.html),c.text&&!c.el&&(c.el=i.createElement("div"),c.el.textContent=c.text),c.el&&(i.addCssClass(c.el,"ace_lineWidgetContainer"),c.className&&i.addCssClass(c.el,c.className),c.el.style.position="absolute",c.el.style.zIndex="5",f.container.appendChild(c.el),c._inDocument=!0,c.coverGutter||(c.el.style.zIndex="3"),c.pixelHeight==null&&(c.pixelHeight=c.el.offsetHeight)),c.rowCount==null&&(c.rowCount=c.pixelHeight/f.layerConfig.lineHeight);var s=this.session.getFoldAt(c.row,0);if(c.$fold=s,s){var o=this.session.lineWidgets;c.row==s.end.row&&!o[s.start.row]?o[s.start.row]=c:c.hidden=!0}return this.session._emit("changeFold",{data:{start:{row:c.row}}}),this.$updateRows(),this.renderWidgets(null,f),this.onWidgetChanged(c),c},g.prototype.removeLineWidget=function(c){if(c._inDocument=!1,c.session=null,c.el&&c.el.parentNode&&c.el.parentNode.removeChild(c.el),c.editor&&c.editor.destroy)try{c.editor.destroy()}catch{}if(this.session.lineWidgets){var f=this.session.lineWidgets[c.row];if(f==c)this.session.lineWidgets[c.row]=c.$oldWidget,c.$oldWidget&&this.onWidgetChanged(c.$oldWidget);else for(;f;){if(f.$oldWidget==c){f.$oldWidget=c.$oldWidget;break}f=f.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:c.row}}}),this.$updateRows()},g.prototype.getWidgetsAtRow=function(c){for(var f=this.session.lineWidgets,s=f&&f[c],o=[];s;)o.push(s),s=s.$oldWidget;return o},g.prototype.onWidgetChanged=function(c){this.session._changedWidgets.push(c),this.editor&&this.editor.renderer.updateFull()},g.prototype.measureWidgets=function(c,f){var s=this.session._changedWidgets,o=f.layerConfig;if(!(!s||!s.length)){for(var a=1/0,l=0;l0&&!o[a];)a--;this.firstRow=s.firstRow,this.lastRow=s.lastRow,f.$cursorLayer.config=s;for(var u=a;u<=l;u++){var p=o[u];if(!(!p||!p.el)){if(p.hidden){p.el.style.top=-100-(p.pixelHeight||0)+"px";continue}p._inDocument||(p._inDocument=!0,f.container.appendChild(p.el));var m=f.$cursorLayer.getPixelPosition({row:u,column:0},!0).top;p.coverLine||(m+=s.lineHeight*this.session.getRowLineCount(p.row)),p.el.style.top=m-s.offset+"px";var v=p.coverGutter?0:f.gutterWidth;p.fixedWidth||(v-=f.scrollLeft),p.el.style.left=v+"px",p.fullWidth&&p.screenWidth&&(p.el.style.minWidth=s.width+2*s.padding+"px"),p.fixedWidth?p.el.style.right=f.scrollBar.getWidth()+"px":p.el.style.right=""}}}},g}();r.LineWidgets=d}),ace.define("ace/keyboard/gutter_handler",["require","exports","module","ace/lib/keys","ace/mouse/default_gutter_handler"],function(n,r,h){var i=n("../lib/keys"),d=n("../mouse/default_gutter_handler").GutterTooltip,g=function(){function f(s){this.editor=s,this.gutterLayer=s.renderer.$gutterLayer,this.element=s.renderer.$gutter,this.lines=s.renderer.$gutterLayer.$lines,this.activeRowIndex=null,this.activeLane=null,this.annotationTooltip=new d(this.editor)}return f.prototype.addListener=function(){this.element.addEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.addEventListener("focusout",this.$blurGutter.bind(this)),this.editor.on("mousewheel",this.$blurGutter.bind(this))},f.prototype.removeListener=function(){this.element.removeEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.removeEventListener("focusout",this.$blurGutter.bind(this)),this.editor.off("mousewheel",this.$blurGutter.bind(this))},f.prototype.$onGutterKeyDown=function(s){if(this.annotationTooltip.isOpen){s.preventDefault(),s.keyCode===i.escape&&this.annotationTooltip.hideTooltip();return}if(s.target===this.element){if(s.keyCode!=i.enter)return;s.preventDefault();var o=this.editor.getCursorPosition().row;this.editor.isRowVisible(o)||this.editor.scrollToLine(o,!0,!0),setTimeout((function(){var a=this.$rowToRowIndex(this.gutterLayer.$cursorCell.row),l=this.$findNearestFoldWidget(a),u=this.$findNearestAnnotation(a);if(!(l===null&&u===null)){if(l===null&&u!==null){this.activeRowIndex=u,this.activeLane="annotation",this.$focusAnnotation(this.activeRowIndex);return}if(l!==null&&u===null){this.activeRowIndex=l,this.activeLane="fold",this.$focusFoldWidget(this.activeRowIndex);return}if(Math.abs(u-a)0||s+o=0&&this.$isFoldWidgetVisible(s-o))return s-o;if(s+o<=this.lines.getLength()-1&&this.$isFoldWidgetVisible(s+o))return s+o}return null},f.prototype.$findNearestAnnotation=function(s){if(this.$isAnnotationVisible(s))return s;for(var o=0;s-o>0||s+o=0&&this.$isAnnotationVisible(s-o))return s-o;if(s+o<=this.lines.getLength()-1&&this.$isAnnotationVisible(s+o))return s+o}return null},f.prototype.$focusFoldWidget=function(s){if(s!=null){var o=this.$getFoldWidget(s);o.classList.add(this.editor.renderer.keyboardFocusClassName),o.focus()}},f.prototype.$focusAnnotation=function(s){if(s!=null){var o=this.$getAnnotation(s);o.classList.add(this.editor.renderer.keyboardFocusClassName),o.focus()}},f.prototype.$blurFoldWidget=function(s){var o=this.$getFoldWidget(s);o.classList.remove(this.editor.renderer.keyboardFocusClassName),o.blur()},f.prototype.$blurAnnotation=function(s){var o=this.$getAnnotation(s);o.classList.remove(this.editor.renderer.keyboardFocusClassName),o.blur()},f.prototype.$moveFoldWidgetUp=function(){for(var s=this.activeRowIndex;s>0;)if(s--,this.$isFoldWidgetVisible(s)){this.$blurFoldWidget(this.activeRowIndex),this.activeRowIndex=s,this.$focusFoldWidget(this.activeRowIndex);return}},f.prototype.$moveFoldWidgetDown=function(){for(var s=this.activeRowIndex;s0;)if(s--,this.$isAnnotationVisible(s)){this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=s,this.$focusAnnotation(this.activeRowIndex);return}},f.prototype.$moveAnnotationDown=function(){for(var s=this.activeRowIndex;s=k.length&&(k=void 0),{value:k&&k[R++],done:!k}}};throw new TypeError(x?"Object is not iterable.":"Symbol.iterator is not defined.")},d=n("./lib/oop"),g=n("./lib/dom"),c=n("./lib/lang"),f=n("./lib/useragent"),s=n("./keyboard/textinput").TextInput,o=n("./mouse/mouse_handler").MouseHandler,a=n("./mouse/fold_handler").FoldHandler,l=n("./keyboard/keybinding").KeyBinding,u=n("./edit_session").EditSession,p=n("./search").Search,m=n("./range").Range,v=n("./lib/event_emitter").EventEmitter,b=n("./commands/command_manager").CommandManager,_=n("./commands/default_commands").commands,S=n("./config"),w=n("./token_iterator").TokenIterator,y=n("./line_widgets").LineWidgets,C=n("./keyboard/gutter_handler").GutterKeyboardHandler,M=n("./config").nls,E=n("./clipboard"),T=n("./lib/keys"),L=function(){function k(x,A,R){this.session,this.$toDestroy=[];var I=x.getContainerElement();this.container=I,this.renderer=x,this.id="editor"+ ++k.$uid,this.commands=new b(f.isMac?"mac":"win",_),typeof document=="object"&&(this.textInput=new s(x.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new o(this),new a(this)),this.keyBinding=new l(this),this.$search=new p().set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=c.delayedCall((function(){this._signal("input",{}),this.session&&!this.session.destroyed&&this.session.bgTokenizer.scheduleStart()}).bind(this)),this.on("change",function(N,O){O._$emitInputEvent.schedule(31)}),this.setSession(A||R&&R.session||new u("")),S.resetOptions(this),R&&this.setOptions(R),S._signal("editor",this)}return k.prototype.$initOperationListeners=function(){this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0),this.$opResetTimer=c.delayedCall(this.endOperation.bind(this,!0)),this.on("change",(function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.docChanged=!0}).bind(this),!0),this.on("changeSelection",(function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.selectionChanged=!0}).bind(this),!0)},k.prototype.startOperation=function(x){if(this.curOp){if(!x||this.curOp.command)return;this.prevOp=this.curOp}x||(this.previousCommand=null,x={}),this.$opResetTimer.schedule(),this.curOp=this.session.curOp={command:x.command||{},args:x.args,scrollTop:this.renderer.scrollTop},this.curOp.selectionBefore=this.selection.toJSON()},k.prototype.endOperation=function(x){if(this.curOp&&this.session){if(x&&x.returnValue===!1||!this.session)return this.curOp=null;if(x==!0&&this.curOp.command&&this.curOp.command.name=="mouse"||(this._signal("beforeEndOperation"),!this.curOp))return;var A=this.curOp.command,R=A&&A.scrollIntoView;if(R){switch(R){case"center-animate":R="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var I=this.selection.getRange(),N=this.renderer.layerConfig;(I.start.row>=N.lastRow||I.end.row<=N.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead);break}R=="animate"&&this.renderer.animateScrolling(this.curOp.scrollTop)}var O=this.selection.toJSON();this.curOp.selectionAfter=O,this.$lastSel=this.selection.toJSON(),this.session.getUndoManager().addSelection(O),this.prevOp=this.curOp,this.curOp=null}},k.prototype.$historyTracker=function(x){if(this.$mergeUndoDeltas){var A=this.prevOp,R=this.$mergeableCommands,I=A.command&&x.command.name==A.command.name;if(x.command.name=="insertstring"){var N=x.args;this.mergeNextCommand===void 0&&(this.mergeNextCommand=!0),I=I&&this.mergeNextCommand&&(!/\s/.test(N)||/\s/.test(A.args)),this.mergeNextCommand=!0}else I=I&&R.indexOf(x.command.name)!==-1;this.$mergeUndoDeltas!="always"&&Date.now()-this.sequenceStartTime>2e3&&(I=!1),I?this.session.mergeUndoDeltas=!0:R.indexOf(x.command.name)!==-1&&(this.sequenceStartTime=Date.now())}},k.prototype.setKeyboardHandler=function(x,A){if(x&&typeof x=="string"&&x!="ace"){this.$keybindingId=x;var R=this;S.loadModule(["keybinding",x],function(I){R.$keybindingId==x&&R.keyBinding.setKeyboardHandler(I&&I.handler),A&&A()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(x),A&&A()},k.prototype.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},k.prototype.setSession=function(x){if(this.session!=x){this.curOp&&this.endOperation(),this.curOp={};var A=this.session;if(A){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange);var R=this.session.getSelection();R.off("changeCursor",this.$onCursorChange),R.off("changeSelection",this.$onSelectionChange)}this.session=x,x?(this.$onDocumentChange=this.onDocumentChange.bind(this),x.on("change",this.$onDocumentChange),this.renderer.setSession(x),this.$onChangeMode=this.onChangeMode.bind(this),x.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),x.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),x.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),x.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),x.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),x.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=x.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.onCursorChange(),this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(x)),this._signal("changeSession",{session:x,oldSession:A}),this.curOp=null,A&&A._signal("changeEditor",{oldEditor:this}),x&&x._signal("changeEditor",{editor:this}),x&&!x.destroyed&&x.bgTokenizer.scheduleStart()}},k.prototype.getSession=function(){return this.session},k.prototype.setValue=function(x,A){return this.session.doc.setValue(x),A?A==1?this.navigateFileEnd():A==-1&&this.navigateFileStart():this.selectAll(),x},k.prototype.getValue=function(){return this.session.getValue()},k.prototype.getSelection=function(){return this.selection},k.prototype.resize=function(x){this.renderer.onResize(x)},k.prototype.setTheme=function(x,A){this.renderer.setTheme(x,A)},k.prototype.getTheme=function(){return this.renderer.getTheme()},k.prototype.setStyle=function(x){this.renderer.setStyle(x)},k.prototype.unsetStyle=function(x){this.renderer.unsetStyle(x)},k.prototype.getFontSize=function(){return this.getOption("fontSize")||g.computedStyle(this.container).fontSize},k.prototype.setFontSize=function(x){this.setOption("fontSize",x)},k.prototype.$highlightBrackets=function(){if(!this.$highlightPending){var x=this;this.$highlightPending=!0,setTimeout(function(){x.$highlightPending=!1;var A=x.session;if(!(!A||A.destroyed)){A.$bracketHighlight&&(A.$bracketHighlight.markerIds.forEach(function(P){A.removeMarker(P)}),A.$bracketHighlight=null);var R=x.getCursorPosition(),I=x.getKeyboardHandler(),N=I&&I.$getDirectionForHighlight&&I.$getDirectionForHighlight(x),O=A.getMatchingBracketRanges(R,N);if(!O){var D=new w(A,R.row,R.column),F=D.getCurrentToken();if(F&&/\b(?:tag-open|tag-name)/.test(F.type)){var B=A.getMatchingTags(R);B&&(O=[B.openTagName.isEmpty()?B.openTag:B.openTagName,B.closeTagName.isEmpty()?B.closeTag:B.closeTagName])}}if(!O&&A.$mode.getMatching&&(O=A.$mode.getMatching(x.session)),!O){x.getHighlightIndentGuides()&&x.renderer.$textLayer.$highlightIndentGuide();return}var j="ace_bracket";Array.isArray(O)?O.length==1&&(j="ace_error_bracket"):O=[O],O.length==2&&(m.comparePoints(O[0].end,O[1].start)==0?O=[m.fromPoints(O[0].start,O[1].end)]:m.comparePoints(O[0].start,O[1].end)==0&&(O=[m.fromPoints(O[1].start,O[0].end)])),A.$bracketHighlight={ranges:O,markerIds:O.map(function(P){return A.addMarker(P,j,"text")})},x.getHighlightIndentGuides()&&x.renderer.$textLayer.$highlightIndentGuide()}},50)}},k.prototype.focus=function(){this.textInput.focus()},k.prototype.isFocused=function(){return this.textInput.isFocused()},k.prototype.blur=function(){this.textInput.blur()},k.prototype.onFocus=function(x){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",x))},k.prototype.onBlur=function(x){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",x))},k.prototype.$cursorChange=function(){this.renderer.updateCursor(),this.$highlightBrackets(),this.$updateHighlightActiveLine()},k.prototype.onDocumentChange=function(x){var A=this.session.$useWrapMode,R=x.start.row==x.end.row?x.end.row:1/0;this.renderer.updateLines(x.start.row,R,A),this._signal("change",x),this.$cursorChange()},k.prototype.onTokenizerUpdate=function(x){var A=x.data;this.renderer.updateLines(A.first,A.last)},k.prototype.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},k.prototype.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},k.prototype.onCursorChange=function(){this.$cursorChange(),this._signal("changeSelection")},k.prototype.$updateHighlightActiveLine=function(){var x=this.getSession(),A;if(this.$highlightActiveLine&&((this.$selectionStyle!="line"||!this.selection.isMultiLine())&&(A=this.getCursorPosition()),this.renderer.theme&&this.renderer.theme.$selectionColorConflict&&!this.selection.isEmpty()&&(A=!1),this.renderer.$maxLines&&this.session.getLength()===1&&!(this.renderer.$minLines>1)&&(A=!1)),x.$highlightLineMarker&&!A)x.removeMarker(x.$highlightLineMarker.id),x.$highlightLineMarker=null;else if(!x.$highlightLineMarker&&A){var R=new m(A.row,A.column,A.row,1/0);R.id=x.addMarker(R,"ace_active-line","screenLine"),x.$highlightLineMarker=R}else A&&(x.$highlightLineMarker.start.row=A.row,x.$highlightLineMarker.end.row=A.row,x.$highlightLineMarker.start.column=A.column,x._signal("changeBackMarker"))},k.prototype.onSelectionChange=function(x){var A=this.session;if(A.$selectionMarker&&A.removeMarker(A.$selectionMarker),A.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var R=this.selection.getRange(),I=this.getSelectionStyle();A.$selectionMarker=A.addMarker(R,"ace_selection",I)}var N=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(N),this._signal("changeSelection")},k.prototype.$getSelectionHighLightRegexp=function(){var x=this.session,A=this.getSelectionRange();if(!(A.isEmpty()||A.isMultiLine())){var R=A.start.column,I=A.end.column,N=x.getLine(A.start.row),O=N.substring(R,I);if(!(O.length>5e3||!/[\w\d]/.test(O))){var D=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:O}),F=N.substring(R-1,I+1);if(D.test(F))return D}}},k.prototype.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},k.prototype.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},k.prototype.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},k.prototype.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},k.prototype.onChangeMode=function(x){this.renderer.updateText(),this._emit("changeMode",x)},k.prototype.onChangeWrapLimit=function(){this.renderer.updateFull()},k.prototype.onChangeWrapMode=function(){this.renderer.onResize(!0)},k.prototype.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},k.prototype.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},k.prototype.getCopyText=function(){var x=this.getSelectedText(),A=this.session.doc.getNewLineCharacter(),R=!1;if(!x&&this.$copyWithEmptySelection){R=!0;for(var I=this.selection.getAllRanges(),N=0;NP.search(/\S|$/)){var F=P.substr(N.column).search(/\S|$/);R.doc.removeInLine(N.row,N.column,N.column+F)}}this.clearSelection();var B=N.column,j=R.getState(N.row),P=R.getLine(N.row),H=I.checkOutdent(j,P,x);if(R.insert(N,x),O&&O.selection&&(O.selection.length==2?this.selection.setSelectionRange(new m(N.row,B+O.selection[0],N.row,B+O.selection[1])):this.selection.setSelectionRange(new m(N.row+O.selection[0],O.selection[1],N.row+O.selection[2],O.selection[3]))),this.$enableAutoIndent){if(R.getDocument().isNewLine(x)){var U=I.getNextLineIndent(j,P.slice(0,N.column),R.getTabString());R.insert({row:N.row+1,column:0},U)}H&&I.autoOutdent(j,R,N.row)}},k.prototype.autoIndent=function(){for(var x=this.session,A=x.getMode(),R=this.selection.isEmpty()?[new m(0,0,x.doc.getLength()-1,0)]:this.selection.getAllRanges(),I="",N="",O="",D=x.getTabString(),F=0;F0&&(I=x.getState(P-1),N=x.getLine(P-1),O=A.getNextLineIndent(I,N,D));var H=x.getLine(P),U=A.$getIndent(H);if(O!==U){if(U.length>0){var K=new m(P,0,P,U.length);x.remove(K)}O.length>0&&x.insert({row:P,column:0},O)}A.autoOutdent(I,x,P)}},k.prototype.onTextInput=function(x,A){if(!A)return this.keyBinding.onTextInput(x);this.startOperation({command:{name:"insertstring"}});var R=this.applyComposition.bind(this,x,A);this.selection.rangeCount?this.forEachSelection(R):R(),this.endOperation()},k.prototype.applyComposition=function(x,A){if(A.extendLeft||A.extendRight){var R=this.selection.getRange();R.start.column-=A.extendLeft,R.end.column+=A.extendRight,R.start.column<0&&(R.start.row--,R.start.column+=this.session.getLine(R.start.row).length+1),this.selection.setRange(R),!x&&!R.isEmpty()&&this.remove()}if((x||!this.selection.isEmpty())&&this.insert(x,!0),A.restoreStart||A.restoreEnd){var R=this.selection.getRange();R.start.column-=A.restoreStart,R.end.column-=A.restoreEnd,this.selection.setRange(R)}},k.prototype.onCommandKey=function(x,A,R){return this.keyBinding.onCommandKey(x,A,R)},k.prototype.setOverwrite=function(x){this.session.setOverwrite(x)},k.prototype.getOverwrite=function(){return this.session.getOverwrite()},k.prototype.toggleOverwrite=function(){this.session.toggleOverwrite()},k.prototype.setScrollSpeed=function(x){this.setOption("scrollSpeed",x)},k.prototype.getScrollSpeed=function(){return this.getOption("scrollSpeed")},k.prototype.setDragDelay=function(x){this.setOption("dragDelay",x)},k.prototype.getDragDelay=function(){return this.getOption("dragDelay")},k.prototype.setSelectionStyle=function(x){this.setOption("selectionStyle",x)},k.prototype.getSelectionStyle=function(){return this.getOption("selectionStyle")},k.prototype.setHighlightActiveLine=function(x){this.setOption("highlightActiveLine",x)},k.prototype.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},k.prototype.setHighlightGutterLine=function(x){this.setOption("highlightGutterLine",x)},k.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},k.prototype.setHighlightSelectedWord=function(x){this.setOption("highlightSelectedWord",x)},k.prototype.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},k.prototype.setAnimatedScroll=function(x){this.renderer.setAnimatedScroll(x)},k.prototype.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},k.prototype.setShowInvisibles=function(x){this.renderer.setShowInvisibles(x)},k.prototype.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},k.prototype.setDisplayIndentGuides=function(x){this.renderer.setDisplayIndentGuides(x)},k.prototype.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},k.prototype.setHighlightIndentGuides=function(x){this.renderer.setHighlightIndentGuides(x)},k.prototype.getHighlightIndentGuides=function(){return this.renderer.getHighlightIndentGuides()},k.prototype.setShowPrintMargin=function(x){this.renderer.setShowPrintMargin(x)},k.prototype.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},k.prototype.setPrintMarginColumn=function(x){this.renderer.setPrintMarginColumn(x)},k.prototype.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},k.prototype.setReadOnly=function(x){this.setOption("readOnly",x)},k.prototype.getReadOnly=function(){return this.getOption("readOnly")},k.prototype.setBehavioursEnabled=function(x){this.setOption("behavioursEnabled",x)},k.prototype.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},k.prototype.setWrapBehavioursEnabled=function(x){this.setOption("wrapBehavioursEnabled",x)},k.prototype.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},k.prototype.setShowFoldWidgets=function(x){this.setOption("showFoldWidgets",x)},k.prototype.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},k.prototype.setFadeFoldWidgets=function(x){this.setOption("fadeFoldWidgets",x)},k.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},k.prototype.remove=function(x){this.selection.isEmpty()&&(x=="left"?this.selection.selectLeft():this.selection.selectRight());var A=this.getSelectionRange();if(this.getBehavioursEnabled()){var R=this.session,I=R.getState(A.start.row),N=R.getMode().transformAction(I,"deletion",this,R,A);if(A.end.column===0){var O=R.getTextRange(A);if(O[O.length-1]==` +`){var D=R.getLine(A.end.row);/^\s+$/.test(D)&&(A.end.column=D.length)}}N&&(A=N)}this.session.remove(A),this.clearSelection()},k.prototype.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},k.prototype.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},k.prototype.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},k.prototype.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var x=this.getSelectionRange();x.start.column==x.end.column&&x.start.row==x.end.row&&(x.end.column=0,x.end.row++),this.session.remove(x),this.clearSelection()},k.prototype.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var x=this.getCursorPosition();this.insert(` +`),this.moveCursorToPosition(x)},k.prototype.setGhostText=function(x,A){this.session.widgetManager||(this.session.widgetManager=new y(this.session),this.session.widgetManager.attach(this)),this.renderer.setGhostText(x,A)},k.prototype.removeGhostText=function(){this.session.widgetManager&&this.renderer.removeGhostText()},k.prototype.transposeLetters=function(){if(this.selection.isEmpty()){var x=this.getCursorPosition(),A=x.column;if(A!==0){var R=this.session.getLine(x.row),I,N;AF.toLowerCase()?1:0});for(var N=new m(0,0,0,0),I=x.first;I<=x.last;I++){var O=A.getLine(I);N.start.row=I,N.end.row=I,N.end.column=O.length,A.replace(N,R[I-x.first])}},k.prototype.toggleCommentLines=function(){var x=this.session.getState(this.getCursorPosition().row),A=this.$getSelectedRows();this.session.getMode().toggleCommentLines(x,this.session,A.first,A.last)},k.prototype.toggleBlockComment=function(){var x=this.getCursorPosition(),A=this.session.getState(x.row),R=this.getSelectionRange();this.session.getMode().toggleBlockComment(A,this.session,R,x)},k.prototype.getNumberAt=function(x,A){var R=/[\-]?[0-9]+(?:\.[0-9]+)?/g;R.lastIndex=0;for(var I=this.session.getLine(x);R.lastIndex=A){var O={value:N[0],start:N.index,end:N.index+N[0].length};return O}}return null},k.prototype.modifyNumber=function(x){var A=this.selection.getCursor().row,R=this.selection.getCursor().column,I=new m(A,R-1,A,R),N=this.session.getTextRange(I);if(!isNaN(parseFloat(N))&&isFinite(N)){var O=this.getNumberAt(A,R);if(O){var D=O.value.indexOf(".")>=0?O.start+O.value.indexOf(".")+1:O.end,F=O.start+O.value.length-D,B=parseFloat(O.value);B*=Math.pow(10,F),D!==O.end&&R=D&&O<=F&&(R=se,B.selection.clearSelection(),B.moveCursorTo(x,D+I),B.selection.selectTo(x,F+I)),D=F});for(var j=this.$toggleWordPairs,P,H=0;H=F&&D<=B&&U.match(/((?:https?|ftp):\/\/[\S]+)/)){j=U.replace(/[\s:.,'";}\]]+$/,"");break}F=B}}catch(K){R={error:K}}finally{try{H&&!H.done&&(I=P.return)&&I.call(P)}finally{if(R)throw R.error}}return j},k.prototype.openLink=function(){var x=this.selection.getCursor(),A=this.findLinkAt(x.row,x.column);return A&&window.open(A,"_blank"),A!=null},k.prototype.removeLines=function(){var x=this.$getSelectedRows();this.session.removeFullLines(x.first,x.last),this.clearSelection()},k.prototype.duplicateSelection=function(){var x=this.selection,A=this.session,R=x.getRange(),I=x.isBackwards();if(R.isEmpty()){var N=R.start.row;A.duplicateLines(N,N)}else{var O=I?R.start:R.end,D=A.insert(O,A.getTextRange(R));R.start=O,R.end=D,x.setSelectionRange(R,I)}},k.prototype.moveLinesDown=function(){this.$moveLines(1,!1)},k.prototype.moveLinesUp=function(){this.$moveLines(-1,!1)},k.prototype.moveText=function(x,A,R){return this.session.moveText(x,A,R)},k.prototype.copyLinesUp=function(){this.$moveLines(-1,!0)},k.prototype.copyLinesDown=function(){this.$moveLines(1,!0)},k.prototype.$moveLines=function(x,A){var R,I,N=this.selection;if(!N.inMultiSelectMode||this.inVirtualSelectionMode){var O=N.toOrientedRange();R=this.$getSelectedRows(O),I=this.session.$moveLines(R.first,R.last,A?0:x),A&&x==-1&&(I=0),O.moveBy(I,0),N.fromOrientedRange(O)}else{var D=N.rangeList.ranges;N.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;for(var F=0,B=0,j=D.length,P=0;PK+1)break;K=q.last}for(P--,F=this.session.$moveLines(U,K,A?0:x),A&&x==-1&&(H=P+1);H<=P;)D[H].moveBy(F,0),H++;A||(F=0),B+=F}N.fromOrientedRange(N.ranges[0]),N.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},k.prototype.$getSelectedRows=function(x){return x=(x||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(x.start.row),last:this.session.getRowFoldEnd(x.end.row)}},k.prototype.onCompositionStart=function(x){this.renderer.showComposition(x)},k.prototype.onCompositionUpdate=function(x){this.renderer.setCompositionText(x)},k.prototype.onCompositionEnd=function(){this.renderer.hideComposition()},k.prototype.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},k.prototype.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},k.prototype.isRowVisible=function(x){return x>=this.getFirstVisibleRow()&&x<=this.getLastVisibleRow()},k.prototype.isRowFullyVisible=function(x){return x>=this.renderer.getFirstFullyVisibleRow()&&x<=this.renderer.getLastFullyVisibleRow()},k.prototype.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},k.prototype.$moveByPage=function(x,A){var R=this.renderer,I=this.renderer.layerConfig,N=x*Math.floor(I.height/I.lineHeight);A===!0?this.selection.$moveSelection(function(){this.moveCursorBy(N,0)}):A===!1&&(this.selection.moveCursorBy(N,0),this.selection.clearSelection());var O=R.scrollTop;R.scrollBy(0,N*I.lineHeight),A!=null&&R.scrollCursorIntoView(null,.5),R.animateScrolling(O)},k.prototype.selectPageDown=function(){this.$moveByPage(1,!0)},k.prototype.selectPageUp=function(){this.$moveByPage(-1,!0)},k.prototype.gotoPageDown=function(){this.$moveByPage(1,!1)},k.prototype.gotoPageUp=function(){this.$moveByPage(-1,!1)},k.prototype.scrollPageDown=function(){this.$moveByPage(1)},k.prototype.scrollPageUp=function(){this.$moveByPage(-1)},k.prototype.scrollToRow=function(x){this.renderer.scrollToRow(x)},k.prototype.scrollToLine=function(x,A,R,I){this.renderer.scrollToLine(x,A,R,I)},k.prototype.centerSelection=function(){var x=this.getSelectionRange(),A={row:Math.floor(x.start.row+(x.end.row-x.start.row)/2),column:Math.floor(x.start.column+(x.end.column-x.start.column)/2)};this.renderer.alignCursor(A,.5)},k.prototype.getCursorPosition=function(){return this.selection.getCursor()},k.prototype.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},k.prototype.getSelectionRange=function(){return this.selection.getRange()},k.prototype.selectAll=function(){this.selection.selectAll()},k.prototype.clearSelection=function(){this.selection.clearSelection()},k.prototype.moveCursorTo=function(x,A){this.selection.moveCursorTo(x,A)},k.prototype.moveCursorToPosition=function(x){this.selection.moveCursorToPosition(x)},k.prototype.jumpToMatching=function(x,A){var R=this.getCursorPosition(),I=new w(this.session,R.row,R.column),N=I.getCurrentToken(),O=0;N&&N.type.indexOf("tag-name")!==-1&&(N=I.stepBackward());var D=N||I.stepForward();if(D){var F,B=!1,j={},P=R.column-D.start,H,U={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(D.value.match(/[{}()\[\]]/g)){for(;P1?j[D.value]++:N.value==="=0;--O)this.$tryReplace(R[O],x)&&I++;return this.selection.setSelectionRange(N),I},k.prototype.$tryReplace=function(x,A){var R=this.session.getTextRange(x);return A=this.$search.replace(R,A),A!==null?(x.end=this.session.replace(x,A),x):null},k.prototype.getLastSearchOptions=function(){return this.$search.getOptions()},k.prototype.find=function(x,A,R){A||(A={}),typeof x=="string"||x instanceof RegExp?A.needle=x:typeof x=="object"&&d.mixin(A,x);var I=this.selection.getRange();A.needle==null&&(x=this.session.getTextRange(I)||this.$search.$options.needle,x||(I=this.session.getWordRange(I.start.row,I.start.column),x=this.session.getTextRange(I)),this.$search.set({needle:x})),this.$search.set(A),A.start||this.$search.set({start:I});var N=this.$search.find(this.session);if(A.preventScroll)return N;if(N)return this.revealRange(N,R),N;A.backwards?I.start=I.end:I.end=I.start,this.selection.setRange(I)},k.prototype.findNext=function(x,A){this.find({skipCurrent:!0,backwards:!1},x,A)},k.prototype.findPrevious=function(x,A){this.find(x,{skipCurrent:!0,backwards:!0},A)},k.prototype.revealRange=function(x,A){this.session.unfold(x),this.selection.setSelectionRange(x);var R=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(x.start,x.end,.5),A!==!1&&this.renderer.animateScrolling(R)},k.prototype.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},k.prototype.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},k.prototype.destroy=function(){this.$toDestroy&&(this.$toDestroy.forEach(function(x){x.destroy()}),this.$toDestroy=null),this.$mouseHandler&&this.$mouseHandler.destroy(),this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy(),this._$emitInputEvent&&this._$emitInputEvent.cancel(),this.removeAllListeners()},k.prototype.setAutoScrollEditorIntoView=function(x){if(x){var A,R=this,I=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var N=this.$scrollAnchor;N.style.cssText="position:absolute",this.container.insertBefore(N,this.container.firstChild);var O=this.on("changeSelection",function(){I=!0}),D=this.renderer.on("beforeRender",function(){I&&(A=R.renderer.container.getBoundingClientRect())}),F=this.renderer.on("afterRender",function(){if(I&&A&&(R.isFocused()||R.searchBox&&R.searchBox.isFocused())){var B=R.renderer,j=B.$cursorLayer.$pixelPos,P=B.layerConfig,H=j.top-P.offset;j.top>=0&&H+A.top<0?I=!0:j.topwindow.innerHeight?I=!1:I=null,I!=null&&(N.style.top=H+"px",N.style.left=j.left+"px",N.style.height=P.lineHeight+"px",N.scrollIntoView(I)),I=A=null}});this.setAutoScrollEditorIntoView=function(B){B||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",O),this.renderer.off("afterRender",F),this.renderer.off("beforeRender",D))}}},k.prototype.$resetCursorStyle=function(){var x=this.$cursorStyle||"ace",A=this.renderer.$cursorLayer;A&&(A.setSmoothBlinking(/smooth/.test(x)),A.isBlinking=!this.$readOnly&&x!="wide",g.setCssClass(A.element,"ace_slim-cursors",/slim/.test(x)))},k.prototype.prompt=function(x,A,R){var I=this;S.loadModule("ace/ext/prompt",function(N){N.prompt(I,x,A,R)})},k}();L.$uid=0,L.prototype.curOp=null,L.prototype.prevOp={},L.prototype.$mergeableCommands=["backspace","del","insertstring"],L.prototype.$toggleWordPairs=[["first","last"],["true","false"],["yes","no"],["width","height"],["top","bottom"],["right","left"],["on","off"],["x","y"],["get","set"],["max","min"],["horizontal","vertical"],["show","hide"],["add","remove"],["up","down"],["before","after"],["even","odd"],["in","out"],["inside","outside"],["next","previous"],["increase","decrease"],["attach","detach"],["&&","||"],["==","!="]],d.implement(L.prototype,v),S.defineOptions(L.prototype,"editor",{selectionStyle:{set:function(k){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:k})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(k){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(k){this.textInput.setReadOnly(k),this.$resetCursorStyle()},initialValue:!1},copyWithEmptySelection:{set:function(k){this.textInput.setCopyWithEmptySelection(k)},initialValue:!1},cursorStyle:{set:function(k){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},enableAutoIndent:{initialValue:!0},autoScrollEditorIntoView:{set:function(k){this.setAutoScrollEditorIntoView(k)}},keyboardHandler:{set:function(k){this.setKeyboardHandler(k)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(k){this.session.setValue(k)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(k){this.setSession(k)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(k){this.renderer.$gutterLayer.setShowLineNumbers(k),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),k&&this.$relativeLineNumbers?$.attach(this):$.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(k){this.$showLineNumbers&&k?$.attach(this):$.detach(this)}},placeholder:{set:function(k){this.$updatePlaceholder||(this.$updatePlaceholder=(function(){var x=this.session&&(this.renderer.$composition||this.session.getLength()>1||this.session.getLine(0).length>0);if(x&&this.renderer.placeholderNode)this.renderer.off("afterRender",this.$updatePlaceholder),g.removeCssClass(this.container,"ace_hasPlaceholder"),this.renderer.placeholderNode.remove(),this.renderer.placeholderNode=null;else if(!x&&!this.renderer.placeholderNode){this.renderer.on("afterRender",this.$updatePlaceholder),g.addCssClass(this.container,"ace_hasPlaceholder");var A=g.createElement("div");A.className="ace_placeholder",A.textContent=this.$placeholder||"",this.renderer.placeholderNode=A,this.renderer.content.appendChild(this.renderer.placeholderNode)}else!x&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"")}).bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},enableKeyboardAccessibility:{set:function(k){var x={name:"blurTextInput",description:"Set focus to the editor content div to allow tabbing through the page",bindKey:"Esc",exec:function(I){I.blur(),I.renderer.scroller.focus()},readOnly:!0},A=function(I){if(I.target==this.renderer.scroller&&I.keyCode===T.enter){I.preventDefault();var N=this.getCursorPosition().row;this.isRowVisible(N)||this.scrollToLine(N,!0,!0),this.focus()}},R;k?(this.renderer.enableKeyboardAccessibility=!0,this.renderer.keyboardFocusClassName="ace_keyboard-focus",this.textInput.getElement().setAttribute("tabindex",-1),this.textInput.setNumberOfExtraLines(f.isWin?3:0),this.renderer.scroller.setAttribute("tabindex",0),this.renderer.scroller.setAttribute("role","group"),this.renderer.scroller.setAttribute("aria-roledescription",M("editor.scroller.aria-roledescription","editor")),this.renderer.scroller.classList.add(this.renderer.keyboardFocusClassName),this.renderer.scroller.setAttribute("aria-label",M("editor.scroller.aria-label","Editor content, press Enter to start editing, press Escape to exit")),this.renderer.scroller.addEventListener("keyup",A.bind(this)),this.commands.addCommand(x),this.renderer.$gutter.setAttribute("tabindex",0),this.renderer.$gutter.setAttribute("aria-hidden",!1),this.renderer.$gutter.setAttribute("role","group"),this.renderer.$gutter.setAttribute("aria-roledescription",M("editor.gutter.aria-roledescription","editor")),this.renderer.$gutter.setAttribute("aria-label",M("editor.gutter.aria-label","Editor gutter, press Enter to interact with controls using arrow keys, press Escape to exit")),this.renderer.$gutter.classList.add(this.renderer.keyboardFocusClassName),this.renderer.content.setAttribute("aria-hidden",!0),R||(R=new C(this)),R.addListener(),this.textInput.setAriaOptions({setLabel:!0})):(this.renderer.enableKeyboardAccessibility=!1,this.textInput.getElement().setAttribute("tabindex",0),this.textInput.setNumberOfExtraLines(0),this.renderer.scroller.setAttribute("tabindex",-1),this.renderer.scroller.removeAttribute("role"),this.renderer.scroller.removeAttribute("aria-roledescription"),this.renderer.scroller.classList.remove(this.renderer.keyboardFocusClassName),this.renderer.scroller.removeAttribute("aria-label"),this.renderer.scroller.removeEventListener("keyup",A.bind(this)),this.commands.removeCommand(x),this.renderer.content.removeAttribute("aria-hidden"),this.renderer.$gutter.setAttribute("tabindex",-1),this.renderer.$gutter.setAttribute("aria-hidden",!0),this.renderer.$gutter.removeAttribute("role"),this.renderer.$gutter.removeAttribute("aria-roledescription"),this.renderer.$gutter.removeAttribute("aria-label"),this.renderer.$gutter.classList.remove(this.renderer.keyboardFocusClassName),R&&R.removeListener())},initialValue:!1},textInputAriaLabel:{set:function(k){this.$textInputAriaLabel=k},initialValue:""},enableMobileMenu:{set:function(k){this.$enableMobileMenu=k},initialValue:!0},customScrollbar:"renderer",hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",displayIndentGuides:"renderer",highlightIndentGuides:"renderer",showGutter:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",hasCssTransforms:"renderer",maxPixelHeight:"renderer",useTextareaForIME:"renderer",useResizeObserver:"renderer",useSvgGutterIcons:"renderer",showFoldedAnnotations:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimeout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",navigateWithinSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"});var $={getText:function(k,x){return(Math.abs(k.selection.lead.row-x)||x+1+(x<9?"\xB7":""))+""},getWidth:function(k,x,A){return Math.max(x.toString().length,(A.lastRow+1).toString().length,2)*A.characterWidth},update:function(k,x){x.renderer.$loop.schedule(x.renderer.CHANGE_GUTTER)},attach:function(k){k.renderer.$gutterLayer.$renderer=this,k.on("changeSelection",this.update),this.update(null,k)},detach:function(k){k.renderer.$gutterLayer.$renderer==this&&(k.renderer.$gutterLayer.$renderer=null),k.off("changeSelection",this.update),this.update(null,k)}};r.Editor=L}),ace.define("ace/layer/lines",["require","exports","module","ace/lib/dom"],function(n,r,h){var i=n("../lib/dom"),d=function(){function g(c,f){this.element=c,this.canvasHeight=f||5e5,this.element.style.height=this.canvasHeight*2+"px",this.cells=[],this.cellCache=[],this.$offsetCoefficient=0}return g.prototype.moveContainer=function(c){i.translate(this.element,0,-(c.firstRowScreen*c.lineHeight%this.canvasHeight)-c.offset*this.$offsetCoefficient)},g.prototype.pageChanged=function(c,f){return Math.floor(c.firstRowScreen*c.lineHeight/this.canvasHeight)!==Math.floor(f.firstRowScreen*f.lineHeight/this.canvasHeight)},g.prototype.computeLineTop=function(c,f,s){var o=f.firstRowScreen*f.lineHeight,a=Math.floor(o/this.canvasHeight),l=s.documentToScreenRow(c,0)*f.lineHeight;return l-a*this.canvasHeight},g.prototype.computeLineHeight=function(c,f,s){return f.lineHeight*s.getRowLineCount(c)},g.prototype.getLength=function(){return this.cells.length},g.prototype.get=function(c){return this.cells[c]},g.prototype.shift=function(){this.$cacheCell(this.cells.shift())},g.prototype.pop=function(){this.$cacheCell(this.cells.pop())},g.prototype.push=function(c){if(Array.isArray(c)){this.cells.push.apply(this.cells,c);for(var f=i.createFragment(this.element),s=0;s_&&(y=b.end.row+1,b=p.getNextFoldLine(y,b),_=b?b.start.row:1/0),y>v){for(;this.$lines.getLength()>w+1;)this.$lines.pop();break}S=this.$lines.get(++w),S?S.row=y:(S=this.$lines.createCell(y,u,this.session,a),this.$lines.push(S)),this.$renderCell(S,u,b,y),y++}this._signal("afterRender"),this.$updateGutterWidth(u)},l.prototype.$updateGutterWidth=function(u){var p=this.session,m=p.gutterRenderer||this.$renderer,v=p.$firstLineNumber,b=this.$lines.last()?this.$lines.last().text:"";(this.$fixedWidth||p.$useWrapMode)&&(b=p.getLength()+v-1);var _=m?m.getWidth(p,b,u):b.toString().length*u.characterWidth,S=this.$padding||this.$computePadding();_+=S.left+S.right,_!==this.gutterWidth&&!isNaN(_)&&(this.gutterWidth=_,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",_))},l.prototype.$updateCursorRow=function(){if(this.$highlightGutterLine){var u=this.session.selection.getCursor();this.$cursorRow!==u.row&&(this.$cursorRow=u.row)}},l.prototype.updateLineHighlight=function(){if(this.$highlightGutterLine){var u=this.session.selection.cursor.row;if(this.$cursorRow=u,!(this.$cursorCell&&this.$cursorCell.row==u)){this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var p=this.$lines.cells;this.$cursorCell=null;for(var m=0;m=this.$cursorRow){if(v.row>this.$cursorRow){var b=this.session.getFoldLine(this.$cursorRow);if(m>0&&b&&b.start.row==p[m-1].row)v=p[m-1];else break}v.element.className="ace_gutter-active-line "+v.element.className,this.$cursorCell=v;break}}}}},l.prototype.scrollLines=function(u){var p=this.config;if(this.config=u,this.$updateCursorRow(),this.$lines.pageChanged(p,u))return this.update(u);this.$lines.moveContainer(u);var m=Math.min(u.lastRow+u.gutterOffset,this.session.getLength()-1),v=this.oldLastRow;if(this.oldLastRow=m,!p||v0;b--)this.$lines.shift();if(v>m)for(var b=this.session.getFoldedRowCount(m+1,v);b>0;b--)this.$lines.pop();u.firstRowv&&this.$lines.push(this.$renderLines(u,v+1,m)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(u)},l.prototype.$renderLines=function(u,p,m){for(var v=[],b=p,_=this.session.getNextFoldLine(b),S=_?_.start.row:1/0;b>S&&(b=_.end.row+1,_=this.session.getNextFoldLine(b,_),S=_?_.start.row:1/0),!(b>m);){var w=this.$lines.createCell(b,u,this.session,a);this.$renderCell(w,u,_,b),v.push(w),b++}return v},l.prototype.$renderCell=function(u,p,m,v){var b=u.element,_=this.session,S=b.childNodes[0],w=b.childNodes[1],y=b.childNodes[2],C=y.firstChild,M=_.$firstLineNumber,E=_.$breakpoints,T=_.$decorations,L=_.gutterRenderer||this.$renderer,$=this.$showFoldWidgets&&_.foldWidgets,k=m?m.start.row:Number.MAX_VALUE,x=p.lineHeight+"px",A=this.$useSvgGutterIcons?"ace_gutter-cell_svg-icons ":"ace_gutter-cell ",R=this.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",I=(L?L.getText(_,v):v+M).toString();if(this.$highlightGutterLine&&(v==this.$cursorRow||m&&v=k&&this.$cursorRow<=m.end.row)&&(A+="ace_gutter-active-line ",this.$cursorCell!=u&&(this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ","")),this.$cursorCell=u)),E[v]&&(A+=E[v]),T[v]&&(A+=T[v]),this.$annotations[v]&&v!==k&&(A+=this.$annotations[v].className),$){var N=$[v];N==null&&(N=$[v]=_.getFoldWidget(v))}if(N){var O="ace_fold-widget ace_"+N,D=N=="start"&&v==k&&vm.right-p.right)return"foldWidgets"},l}();o.prototype.$fixedWidth=!1,o.prototype.$highlightGutterLine=!0,o.prototype.$renderer="",o.prototype.$showLineNumbers=!0,o.prototype.$showFoldWidgets=!0,d.implement(o.prototype,c);function a(l){var u=document.createTextNode("");l.appendChild(u);var p=i.createElement("span");l.appendChild(p);var m=i.createElement("span");l.appendChild(m);var v=i.createElement("span");return m.appendChild(v),l}r.Gutter=o}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(n,r,h){var i=n("../range").Range,d=n("../lib/dom"),g=function(){function f(s){this.element=d.createElement("div"),this.element.className="ace_layer ace_marker-layer",s.appendChild(this.element)}return f.prototype.setPadding=function(s){this.$padding=s},f.prototype.setSession=function(s){this.session=s},f.prototype.setMarkers=function(s){this.markers=s},f.prototype.elt=function(s,o){var a=this.i!=-1&&this.element.childNodes[this.i];a?this.i++:(a=document.createElement("div"),this.element.appendChild(a),this.i=-1),a.style.cssText=o,a.className=s},f.prototype.update=function(s){if(s){this.config=s,this.i=0;var o;for(var a in this.markers){var l=this.markers[a];if(!l.range){l.update(o,this,this.session,s);continue}var u=l.range.clipRows(s.firstRow,s.lastRow);if(!u.isEmpty())if(u=u.toScreenRange(this.session),l.renderer){var p=this.$getTop(u.start.row,s),m=this.$padding+u.start.column*s.characterWidth;l.renderer(o,u,m,p,s)}else l.type=="fullLine"?this.drawFullLineMarker(o,u,l.clazz,s):l.type=="screenLine"?this.drawScreenLineMarker(o,u,l.clazz,s):u.isMultiLine()?l.type=="text"?this.drawTextMarker(o,u,l.clazz,s):this.drawMultiLineMarker(o,u,l.clazz,s):this.drawSingleLineMarker(o,u,l.clazz+" ace_start ace_br15",s)}if(this.i!=-1)for(;this.iw,b==v),l,b==v?0:1,u)},f.prototype.drawMultiLineMarker=function(s,o,a,l,u){var p=this.$padding,m=l.lineHeight,v=this.$getTop(o.start.row,l),b=p+o.start.column*l.characterWidth;if(u=u||"",this.session.$bidiHandler.isBidiRow(o.start.row)){var _=o.clone();_.end.row=_.start.row,_.end.column=this.session.getLine(_.start.row).length,this.drawBidiSingleLineMarker(s,_,a+" ace_br1 ace_start",l,null,u)}else this.elt(a+" ace_br1 ace_start","height:"+m+"px;right:"+p+"px;top:"+v+"px;left:"+b+"px;"+(u||""));if(this.session.$bidiHandler.isBidiRow(o.end.row)){var _=o.clone();_.start.row=_.end.row,_.start.column=0,this.drawBidiSingleLineMarker(s,_,a+" ace_br12",l,null,u)}else{v=this.$getTop(o.end.row,l);var S=o.end.column*l.characterWidth;this.elt(a+" ace_br12","height:"+m+"px;width:"+S+"px;top:"+v+"px;left:"+p+"px;"+(u||""))}if(m=(o.end.row-o.start.row-1)*l.lineHeight,!(m<=0)){v=this.$getTop(o.start.row+1,l);var w=(o.start.column?1:0)|(o.end.column?0:8);this.elt(a+(w?" ace_br"+w:""),"height:"+m+"px;right:"+p+"px;top:"+v+"px;left:"+p+"px;"+(u||""))}},f.prototype.drawSingleLineMarker=function(s,o,a,l,u,p){if(this.session.$bidiHandler.isBidiRow(o.start.row))return this.drawBidiSingleLineMarker(s,o,a,l,u,p);var m=l.lineHeight,v=(o.end.column+(u||0)-o.start.column)*l.characterWidth,b=this.$getTop(o.start.row,l),_=this.$padding+o.start.column*l.characterWidth;this.elt(a,"height:"+m+"px;width:"+v+"px;top:"+b+"px;left:"+_+"px;"+(p||""))},f.prototype.drawBidiSingleLineMarker=function(s,o,a,l,u,p){var m=l.lineHeight,v=this.$getTop(o.start.row,l),b=this.$padding,_=this.session.$bidiHandler.getSelections(o.start.column,o.end.column);_.forEach(function(S){this.elt(a,"height:"+m+"px;width:"+(S.width+(u||0))+"px;top:"+v+"px;left:"+(b+S.left)+"px;"+(p||""))},this)},f.prototype.drawFullLineMarker=function(s,o,a,l,u){var p=this.$getTop(o.start.row,l),m=l.lineHeight;o.start.row!=o.end.row&&(m+=this.$getTop(o.end.row,l)-p),this.elt(a,"height:"+m+"px;top:"+p+"px;left:0;right:0;"+(u||""))},f.prototype.drawScreenLineMarker=function(s,o,a,l,u){var p=this.$getTop(o.start.row,l),m=l.lineHeight;this.elt(a,"height:"+m+"px;top:"+p+"px;left:0;right:0;"+(u||""))},f}();g.prototype.$padding=0;function c(f,s,o,a){return(f?1:0)|(s?2:0)|(o?4:0)|(a?8:0)}r.Marker=g}),ace.define("ace/layer/text_util",["require","exports","module"],function(n,r,h){var i=new Set(["text","rparen","lparen"]);r.isTextToken=function(d){return i.has(d)}}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/layer/lines","ace/lib/event_emitter","ace/config","ace/layer/text_util"],function(n,r,h){var i=n("../lib/oop"),d=n("../lib/dom"),g=n("../lib/lang"),c=n("./lines").Lines,f=n("../lib/event_emitter").EventEmitter,s=n("../config").nls,o=n("./text_util").isTextToken,a=function(){function l(u){this.dom=d,this.element=this.dom.createElement("div"),this.element.className="ace_layer ace_text-layer",u.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this),this.$lines=new c(this.element)}return l.prototype.$updateEolChar=function(){var u=this.session.doc,p=u.getNewLineCharacter()==` +`&&u.getNewLineMode()!="windows",m=p?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=m)return this.EOL_CHAR=m,!0},l.prototype.setPadding=function(u){this.$padding=u,this.element.style.margin="0 "+u+"px"},l.prototype.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},l.prototype.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},l.prototype.$setFontMetrics=function(u){this.$fontMetrics=u,this.$fontMetrics.on("changeCharacterSize",(function(p){this._signal("changeCharacterSize",p)}).bind(this)),this.$pollSizeChanges()},l.prototype.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},l.prototype.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},l.prototype.setSession=function(u){this.session=u,u&&this.$computeTabString()},l.prototype.setShowInvisibles=function(u){return this.showInvisibles==u?!1:(this.showInvisibles=u,typeof u=="string"?(this.showSpaces=/tab/i.test(u),this.showTabs=/space/i.test(u),this.showEOL=/eol/i.test(u)):this.showSpaces=this.showTabs=this.showEOL=u,this.$computeTabString(),!0)},l.prototype.setDisplayIndentGuides=function(u){return this.displayIndentGuides==u?!1:(this.displayIndentGuides=u,this.$computeTabString(),!0)},l.prototype.setHighlightIndentGuides=function(u){return this.$highlightIndentGuides===u?!1:(this.$highlightIndentGuides=u,u)},l.prototype.$computeTabString=function(){var u=this.session.getTabSize();this.tabSize=u;for(var p=this.$tabStrings=[0],m=1;mM&&(w=y.end.row+1,y=this.session.getNextFoldLine(w,y),M=y?y.start.row:1/0),!(w>b);){var E=_[S++];if(E){this.dom.removeChildren(E),this.$renderLine(E,w,w==M?y:!1),C&&(E.style.top=this.$lines.computeLineTop(w,u,this.session)+"px");var T=u.lineHeight*this.session.getRowLength(w)+"px";E.style.height!=T&&(C=!0,E.style.height=T)}w++}if(C)for(;S0;b--)this.$lines.shift();if(p.lastRow>u.lastRow)for(var b=this.session.getFoldedRowCount(u.lastRow+1,p.lastRow);b>0;b--)this.$lines.pop();u.firstRowp.lastRow&&this.$lines.push(this.$renderLinesFragment(u,p.lastRow+1,u.lastRow)),this.$highlightIndentGuide()},l.prototype.$renderLinesFragment=function(u,p,m){for(var v=[],b=p,_=this.session.getNextFoldLine(b),S=_?_.start.row:1/0;b>S&&(b=_.end.row+1,_=this.session.getNextFoldLine(b,_),S=_?_.start.row:1/0),!(b>m);){var w=this.$lines.createCell(b,u,this.session),y=w.element;this.dom.removeChildren(y),d.setStyle(y.style,"height",this.$lines.computeLineHeight(b,u,this.session)+"px"),d.setStyle(y.style,"top",this.$lines.computeLineTop(b,u,this.session)+"px"),this.$renderLine(y,b,b==S?_:!1),this.$useLineGroups()?y.className="ace_line_group":y.className="ace_line",v.push(w),b++}return v},l.prototype.update=function(u){this.$lines.moveContainer(u),this.config=u;for(var p=u.firstRow,m=u.lastRow,v=this.$lines;v.getLength();)v.pop();v.push(this.$renderLinesFragment(u,p,m))},l.prototype.$renderToken=function(u,p,m,v){for(var b=this,_=/(\t)|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\uFEFF\uFFF9-\uFFFC\u2066\u2067\u2068\u202A\u202B\u202D\u202E\u202C\u2069]+)|(\u3000)|([\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3001-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]|[\uD800-\uDBFF][\uDC00-\uDFFF])/g,S=this.dom.createFragment(this.element),w,y=0;w=_.exec(v);){var C=w[1],M=w[2],E=w[3],T=w[4],L=w[5];if(!(!b.showSpaces&&M)){var $=y!=w.index?v.slice(y,w.index):"";if(y=w.index+w[0].length,$&&S.appendChild(this.dom.createTextNode($,this.element)),C){var k=b.session.getScreenTabSize(p+w.index);S.appendChild(b.$tabStrings[k].cloneNode(!0)),p+=k-1}else if(M)if(b.showSpaces){var x=this.dom.createElement("span");x.className="ace_invisible ace_invisible_space",x.textContent=g.stringRepeat(b.SPACE_CHAR,M.length),S.appendChild(x)}else S.appendChild(this.dom.createTextNode(M,this.element));else if(E){var x=this.dom.createElement("span");x.className="ace_invisible ace_invisible_space ace_invalid",x.textContent=g.stringRepeat(b.SPACE_CHAR,E.length),S.appendChild(x)}else if(T){p+=1;var x=this.dom.createElement("span");x.style.width=b.config.characterWidth*2+"px",x.className=b.showSpaces?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",x.textContent=b.showSpaces?b.SPACE_CHAR:T,S.appendChild(x)}else if(L){p+=1;var x=this.dom.createElement("span");x.style.width=b.config.characterWidth*2+"px",x.className="ace_cjk",x.textContent=L,S.appendChild(x)}}}if(S.appendChild(this.dom.createTextNode(y?v.slice(y):v,this.element)),o(m.type))u.appendChild(S);else{var A="ace_"+m.type.replace(/\./g," ace_"),x=this.dom.createElement("span");m.type=="fold"&&(x.style.width=m.value.length*this.config.characterWidth+"px",x.setAttribute("title",s("inline-fold.closed.title","Unfold code"))),x.className=A,x.appendChild(S),u.appendChild(x)}return p+v.length},l.prototype.renderIndentGuide=function(u,p,m){var v=p.search(this.$indentGuideRe);if(v<=0||v>=m)return p;if(p[0]==" "){v-=v%this.tabSize;for(var b=v/this.tabSize,_=0;__[S].start.row?this.$highlightIndentGuideMarker.dir=-1:this.$highlightIndentGuideMarker.dir=1;break}}if(!this.$highlightIndentGuideMarker.end&&u[p.row]!==""&&p.column===u[p.row].length){this.$highlightIndentGuideMarker.dir=1;for(var S=p.row+1;S0){for(var b=0;b=this.$highlightIndentGuideMarker.start+1){if(v.row>=this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(v,p)}}else for(var m=u.length-1;m>=0;m--){var v=u[m];if(this.$highlightIndentGuideMarker.end&&v.row=_;)S=this.$renderToken(w,S,C,M.substring(0,_-v)),M=M.substring(_-v),v=_,w=this.$createLineElement(),u.appendChild(w),w.appendChild(this.dom.createTextNode(g.stringRepeat("\xA0",m.indent),this.element)),b++,S=0,_=m[b]||Number.MAX_VALUE;M.length!=0&&(v+=M.length,S=this.$renderToken(w,S,C,M))}}m[m.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(w,S,null,"",!0)},l.prototype.$renderSimpleLine=function(u,p){for(var m=0,v=0;vthis.MAX_LINE_LENGTH)return this.$renderOverflowMessage(u,m,b,_);m=this.$renderToken(u,m,b,_)}}},l.prototype.$renderOverflowMessage=function(u,p,m,v,b){m&&this.$renderToken(u,p,m,v.slice(0,this.MAX_LINE_LENGTH-p));var _=this.dom.createElement("span");_.className="ace_inline_button ace_keyword ace_toggle_wrap",_.textContent=b?"":"",u.appendChild(_)},l.prototype.$renderLine=function(u,p,m){if(!m&&m!=!1&&(m=this.session.getFoldLine(p)),m)var v=this.$getFoldLineTokens(p,m);else var v=this.session.getTokens(p);var b=u;if(v.length){var _=this.session.getRowSplitData(p);if(_&&_.length){this.$renderWrappedLine(u,v,_);var b=u.lastChild}else{var b=u;this.$useLineGroups()&&(b=this.$createLineElement(),u.appendChild(b)),this.$renderSimpleLine(b,v)}}else this.$useLineGroups()&&(b=this.$createLineElement(),u.appendChild(b));if(this.showEOL&&b){m&&(p=m.end.row);var S=this.dom.createElement("span");S.className="ace_invisible ace_invisible_eol",S.textContent=p==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,b.appendChild(S)}},l.prototype.$getFoldLineTokens=function(u,p){var m=this.session,v=[];function b(S,w,y){for(var C=0,M=0;M+S[C].value.lengthy-w&&(E=E.substring(0,y-w)),v.push({type:S[C].type,value:E}),M=w+E.length,C+=1}for(;My?v.push({type:S[C].type,value:E.substring(0,y-M)}):v.push(S[C]),M+=E.length,C+=1}}var _=m.getTokens(u);return p.walk(function(S,w,y,C,M){S!=null?v.push({type:"fold",value:S}):(M&&(_=m.getTokens(w)),_.length&&b(_,C,y))},p.end.row,this.session.getLine(p.end.row).length),v},l.prototype.$useLineGroups=function(){return this.session.getUseWrapMode()},l}();a.prototype.EOF_CHAR="\xB6",a.prototype.EOL_CHAR_LF="\xAC",a.prototype.EOL_CHAR_CRLF="\xA4",a.prototype.EOL_CHAR=a.prototype.EOL_CHAR_LF,a.prototype.TAB_CHAR="\u2014",a.prototype.SPACE_CHAR="\xB7",a.prototype.$padding=0,a.prototype.MAX_LINE_LENGTH=1e4,a.prototype.showInvisibles=!1,a.prototype.showSpaces=!1,a.prototype.showTabs=!1,a.prototype.showEOL=!1,a.prototype.displayIndentGuides=!0,a.prototype.$highlightIndentGuides=!0,a.prototype.$tabStrings=[],a.prototype.destroy={},a.prototype.onChangeTabSize=a.prototype.$computeTabString,i.implement(a.prototype,f),r.Text=a}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(n,r,h){var i=n("../lib/dom"),d=function(){function g(c){this.element=i.createElement("div"),this.element.className="ace_layer ace_cursor-layer",c.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),i.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)}return g.prototype.$updateOpacity=function(c){for(var f=this.cursors,s=f.length;s--;)i.setStyle(f[s].style,"opacity",c?"":"0")},g.prototype.$startCssAnimation=function(){for(var c=this.cursors,f=c.length;f--;)c[f].style.animationDuration=this.blinkInterval+"ms";this.$isAnimating=!0,setTimeout((function(){this.$isAnimating&&i.addCssClass(this.element,"ace_animate-blinking")}).bind(this))},g.prototype.$stopCssAnimation=function(){this.$isAnimating=!1,i.removeCssClass(this.element,"ace_animate-blinking")},g.prototype.setPadding=function(c){this.$padding=c},g.prototype.setSession=function(c){this.session=c},g.prototype.setBlinking=function(c){c!=this.isBlinking&&(this.isBlinking=c,this.restartTimer())},g.prototype.setBlinkInterval=function(c){c!=this.blinkInterval&&(this.blinkInterval=c,this.restartTimer())},g.prototype.setSmoothBlinking=function(c){c!=this.smoothBlinking&&(this.smoothBlinking=c,i.setCssClass(this.element,"ace_smooth-blinking",c),this.$updateCursors(!0),this.restartTimer())},g.prototype.addCursor=function(){var c=i.createElement("div");return c.className="ace_cursor",this.element.appendChild(c),this.cursors.push(c),c},g.prototype.removeCursor=function(){if(this.cursors.length>1){var c=this.cursors.pop();return c.parentNode.removeChild(c),c}},g.prototype.hideCursor=function(){this.isVisible=!1,i.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},g.prototype.showCursor=function(){this.isVisible=!0,i.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},g.prototype.restartTimer=function(){var c=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&(this.$isSmoothBlinking=!1,i.removeCssClass(this.element,"ace_smooth-blinking")),c(!0),!this.isBlinking||!this.blinkInterval||!this.isVisible){this.$stopCssAnimation();return}if(this.smoothBlinking&&(this.$isSmoothBlinking=!0,setTimeout((function(){this.$isSmoothBlinking&&i.addCssClass(this.element,"ace_smooth-blinking")}).bind(this))),i.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var f=(function(){this.timeoutId=setTimeout(function(){c(!1)},.6*this.blinkInterval)}).bind(this);this.intervalId=setInterval(function(){c(!0),f()},this.blinkInterval),f()}},g.prototype.getPixelPosition=function(c,f){if(!this.config||!this.session)return{left:0,top:0};c||(c=this.session.selection.getCursor());var s=this.session.documentToScreenPosition(c),o=this.$padding+(this.session.$bidiHandler.isBidiRow(s.row,c.row)?this.session.$bidiHandler.getPosLeft(s.column):s.column*this.config.characterWidth),a=(s.row-(f?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:o,top:a}},g.prototype.isCursorInView=function(c,f){return c.top>=0&&c.topc.height+c.offset||l.top<0)&&s>1)){var u=this.cursors[o++]||this.addCursor(),p=u.style;this.drawCursor?this.drawCursor(u,l,c,f[s],this.session):this.isCursorInView(l,c)?(i.setStyle(p,"display","block"),i.translate(u,l.left,l.top),i.setStyle(p,"width",Math.round(c.characterWidth)+"px"),i.setStyle(p,"height",c.lineHeight+"px")):i.setStyle(p,"display","none")}}for(;this.cursors.length>o;)this.removeCursor();var m=this.session.getOverwrite();this.$setOverwrite(m),this.$pixelPos=l,this.restartTimer()},g.prototype.$setOverwrite=function(c){c!=this.overwrite&&(this.overwrite=c,c?i.addCssClass(this.element,"ace_overwrite-cursors"):i.removeCssClass(this.element,"ace_overwrite-cursors"))},g.prototype.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)},g}();d.prototype.$padding=0,d.prototype.drawCursor=null,r.Cursor=d}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(n,r,h){var i=this&&this.__extends||function(){var u=function(p,m){return u=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(v,b){v.__proto__=b}||function(v,b){for(var _ in b)Object.prototype.hasOwnProperty.call(b,_)&&(v[_]=b[_])},u(p,m)};return function(p,m){if(typeof m!="function"&&m!==null)throw new TypeError("Class extends value "+String(m)+" is not a constructor or null");u(p,m);function v(){this.constructor=p}p.prototype=m===null?Object.create(m):(v.prototype=m.prototype,new v)}}(),d=n("./lib/oop"),g=n("./lib/dom"),c=n("./lib/event"),f=n("./lib/event_emitter").EventEmitter,s=32768,o=function(){function u(p,m){this.element=g.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+m,this.inner=g.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent="\xA0",this.element.appendChild(this.inner),p.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,c.addListener(this.element,"scroll",this.onScroll.bind(this)),c.addListener(this.element,"mousedown",c.preventDefault)}return u.prototype.setVisible=function(p){this.element.style.display=p?"":"none",this.isVisible=p,this.coeff=1},u}();d.implement(o.prototype,f);var a=function(u){i(p,u);function p(m,v){var b=u.call(this,m,"-v")||this;return b.scrollTop=0,b.scrollHeight=0,v.$scrollbarWidth=b.width=g.scrollbarWidth(m.ownerDocument),b.inner.style.width=b.element.style.width=(b.width||15)+5+"px",b.$minWidth=0,b}return p.prototype.onScroll=function(){if(!this.skipEvent){if(this.scrollTop=this.element.scrollTop,this.coeff!=1){var m=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-m)/(this.coeff-m)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},p.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},p.prototype.setHeight=function(m){this.element.style.height=m+"px"},p.prototype.setScrollHeight=function(m){this.scrollHeight=m,m>s?(this.coeff=s/m,m=s):this.coeff!=1&&(this.coeff=1),this.inner.style.height=m+"px"},p.prototype.setScrollTop=function(m){this.scrollTop!=m&&(this.skipEvent=!0,this.scrollTop=m,this.element.scrollTop=m*this.coeff)},p}(o);a.prototype.setInnerHeight=a.prototype.setScrollHeight;var l=function(u){i(p,u);function p(m,v){var b=u.call(this,m,"-h")||this;return b.scrollLeft=0,b.height=v.$scrollbarWidth,b.inner.style.height=b.element.style.height=(b.height||15)+5+"px",b}return p.prototype.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},p.prototype.getHeight=function(){return this.isVisible?this.height:0},p.prototype.setWidth=function(m){this.element.style.width=m+"px"},p.prototype.setInnerWidth=function(m){this.inner.style.width=m+"px"},p.prototype.setScrollWidth=function(m){this.inner.style.width=m+"px"},p.prototype.setScrollLeft=function(m){this.scrollLeft!=m&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=m)},p}(o);r.ScrollBar=a,r.ScrollBarV=a,r.ScrollBarH=l,r.VScrollBar=a,r.HScrollBar=l}),ace.define("ace/scrollbar_custom",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(n,r,h){var i=this&&this.__extends||function(){var l=function(u,p){return l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(m,v){m.__proto__=v}||function(m,v){for(var b in v)Object.prototype.hasOwnProperty.call(v,b)&&(m[b]=v[b])},l(u,p)};return function(u,p){if(typeof p!="function"&&p!==null)throw new TypeError("Class extends value "+String(p)+" is not a constructor or null");l(u,p);function m(){this.constructor=u}u.prototype=p===null?Object.create(p):(m.prototype=p.prototype,new m)}}(),d=n("./lib/oop"),g=n("./lib/dom"),c=n("./lib/event"),f=n("./lib/event_emitter").EventEmitter;g.importCssString(`.ace_editor>.ace_sb-v div, .ace_editor>.ace_sb-h div{ + position: absolute; + background: rgba(128, 128, 128, 0.6); + -moz-box-sizing: border-box; + box-sizing: border-box; + border: 1px solid #bbb; + border-radius: 2px; + z-index: 8; +} +.ace_editor>.ace_sb-v, .ace_editor>.ace_sb-h { + position: absolute; + z-index: 6; + background: none; + overflow: hidden!important; +} +.ace_editor>.ace_sb-v { + z-index: 6; + right: 0; + top: 0; + width: 12px; +} +.ace_editor>.ace_sb-v div { + z-index: 8; + right: 0; + width: 100%; +} +.ace_editor>.ace_sb-h { + bottom: 0; + left: 0; + height: 12px; +} +.ace_editor>.ace_sb-h div { + bottom: 0; + height: 100%; +} +.ace_editor>.ace_sb_grabbed { + z-index: 8; + background: #000; +}`,"ace_scrollbar.css",!1);var s=function(){function l(u,p){this.element=g.createElement("div"),this.element.className="ace_sb"+p,this.inner=g.createElement("div"),this.inner.className="",this.element.appendChild(this.inner),this.VScrollWidth=12,this.HScrollHeight=12,u.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,c.addMultiMouseDownListener(this.element,[500,300,300],this,"onMouseDown")}return l.prototype.setVisible=function(u){this.element.style.display=u?"":"none",this.isVisible=u,this.coeff=1},l}();d.implement(s.prototype,f);var o=function(l){i(u,l);function u(p,m){var v=l.call(this,p,"-v")||this;return v.scrollTop=0,v.scrollHeight=0,v.parent=p,v.width=v.VScrollWidth,v.renderer=m,v.inner.style.width=v.element.style.width=(v.width||15)+"px",v.$minWidth=0,v}return u.prototype.onMouseDown=function(p,m){if(p==="mousedown"&&!(c.getButton(m)!==0||m.detail===2)){if(m.target===this.inner){var v=this,b=m.clientY,_=function(T){b=T.clientY},S=function(){clearInterval(M)},w=m.clientY,y=this.thumbTop,C=function(){if(b!==void 0){var T=v.scrollTopFromThumbTop(y+b-w);T!==v.scrollTop&&v._emit("scroll",{data:T})}};c.capture(this.inner,_,S);var M=setInterval(C,20);return c.preventDefault(m)}var E=m.clientY-this.element.getBoundingClientRect().top-this.thumbHeight/2;return this._emit("scroll",{data:this.scrollTopFromThumbTop(E)}),c.preventDefault(m)}},u.prototype.getHeight=function(){return this.height},u.prototype.scrollTopFromThumbTop=function(p){var m=p*(this.pageHeight-this.viewHeight)/(this.slideHeight-this.thumbHeight);return m=m>>0,m<0?m=0:m>this.pageHeight-this.viewHeight&&(m=this.pageHeight-this.viewHeight),m},u.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},u.prototype.setHeight=function(p){this.height=Math.max(0,p),this.slideHeight=this.height,this.viewHeight=this.height,this.setScrollHeight(this.pageHeight,!0)},u.prototype.setScrollHeight=function(p,m){this.pageHeight===p&&!m||(this.pageHeight=p,this.thumbHeight=this.slideHeight*this.viewHeight/this.pageHeight,this.thumbHeight>this.slideHeight&&(this.thumbHeight=this.slideHeight),this.thumbHeight<15&&(this.thumbHeight=15),this.inner.style.height=this.thumbHeight+"px",this.scrollTop>this.pageHeight-this.viewHeight&&(this.scrollTop=this.pageHeight-this.viewHeight,this.scrollTop<0&&(this.scrollTop=0),this._emit("scroll",{data:this.scrollTop})))},u.prototype.setScrollTop=function(p){this.scrollTop=p,p<0&&(p=0),this.thumbTop=p*(this.slideHeight-this.thumbHeight)/(this.pageHeight-this.viewHeight),this.inner.style.top=this.thumbTop+"px"},u}(s);o.prototype.setInnerHeight=o.prototype.setScrollHeight;var a=function(l){i(u,l);function u(p,m){var v=l.call(this,p,"-h")||this;return v.scrollLeft=0,v.scrollWidth=0,v.height=v.HScrollHeight,v.inner.style.height=v.element.style.height=(v.height||12)+"px",v.renderer=m,v}return u.prototype.onMouseDown=function(p,m){if(p==="mousedown"&&!(c.getButton(m)!==0||m.detail===2)){if(m.target===this.inner){var v=this,b=m.clientX,_=function(T){b=T.clientX},S=function(){clearInterval(M)},w=m.clientX,y=this.thumbLeft,C=function(){if(b!==void 0){var T=v.scrollLeftFromThumbLeft(y+b-w);T!==v.scrollLeft&&v._emit("scroll",{data:T})}};c.capture(this.inner,_,S);var M=setInterval(C,20);return c.preventDefault(m)}var E=m.clientX-this.element.getBoundingClientRect().left-this.thumbWidth/2;return this._emit("scroll",{data:this.scrollLeftFromThumbLeft(E)}),c.preventDefault(m)}},u.prototype.getHeight=function(){return this.isVisible?this.height:0},u.prototype.scrollLeftFromThumbLeft=function(p){var m=p*(this.pageWidth-this.viewWidth)/(this.slideWidth-this.thumbWidth);return m=m>>0,m<0?m=0:m>this.pageWidth-this.viewWidth&&(m=this.pageWidth-this.viewWidth),m},u.prototype.setWidth=function(p){this.width=Math.max(0,p),this.element.style.width=this.width+"px",this.slideWidth=this.width,this.viewWidth=this.width,this.setScrollWidth(this.pageWidth,!0)},u.prototype.setScrollWidth=function(p,m){this.pageWidth===p&&!m||(this.pageWidth=p,this.thumbWidth=this.slideWidth*this.viewWidth/this.pageWidth,this.thumbWidth>this.slideWidth&&(this.thumbWidth=this.slideWidth),this.thumbWidth<15&&(this.thumbWidth=15),this.inner.style.width=this.thumbWidth+"px",this.scrollLeft>this.pageWidth-this.viewWidth&&(this.scrollLeft=this.pageWidth-this.viewWidth,this.scrollLeft<0&&(this.scrollLeft=0),this._emit("scroll",{data:this.scrollLeft})))},u.prototype.setScrollLeft=function(p){this.scrollLeft=p,p<0&&(p=0),this.thumbLeft=p*(this.slideWidth-this.thumbWidth)/(this.pageWidth-this.viewWidth),this.inner.style.left=this.thumbLeft+"px"},u}(s);a.prototype.setInnerWidth=a.prototype.setScrollWidth,r.ScrollBar=o,r.ScrollBarV=o,r.ScrollBarH=a,r.VScrollBar=o,r.HScrollBar=a}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(n,r,h){var i=n("./lib/event"),d=function(){function g(c,f){this.onRender=c,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=f||window;var s=this;this._flush=function(o){s.pending=!1;var a=s.changes;if(a&&(i.blockIdle(100),s.changes=0,s.onRender(a)),s.changes){if(s.$recursionLimit--<0)return;s.schedule()}else s.$recursionLimit=2}}return g.prototype.schedule=function(c){this.changes=this.changes|c,this.changes&&!this.pending&&(i.nextFrame(this._flush),this.pending=!0)},g.prototype.clear=function(c){var f=this.changes;return this.changes=0,f},g}();r.RenderLoop=d}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/lib/useragent","ace/lib/event_emitter"],function(n,r,h){var i=n("../lib/oop"),d=n("../lib/dom"),g=n("../lib/lang"),c=n("../lib/event"),f=n("../lib/useragent"),s=n("../lib/event_emitter").EventEmitter,o=512,a=typeof ResizeObserver=="function",l=200,u=function(){function p(m){this.el=d.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=d.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=d.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),m.appendChild(this.el),this.$measureNode.textContent=g.stringRepeat("X",o),this.$characterSize={width:0,height:0},a?this.$addObserver():this.checkForSizeChanges()}return p.prototype.$setMeasureNodeStyles=function(m,v){m.width=m.height="auto",m.left=m.top="0px",m.visibility="hidden",m.position="absolute",m.whiteSpace="pre",f.isIE<8?m["font-family"]="inherit":m.font="inherit",m.overflow=v?"hidden":"visible"},p.prototype.checkForSizeChanges=function(m){if(m===void 0&&(m=this.$measureSizes()),m&&(this.$characterSize.width!==m.width||this.$characterSize.height!==m.height)){this.$measureNode.style.fontWeight="bold";var v=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=m,this.charSizes=Object.create(null),this.allowBoldFonts=v&&v.width===m.width&&v.height===m.height,this._emit("changeCharacterSize",{data:m})}},p.prototype.$addObserver=function(){var m=this;this.$observer=new window.ResizeObserver(function(v){m.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},p.prototype.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var m=this;return this.$pollSizeChangesTimer=c.onIdle(function v(){m.checkForSizeChanges(),c.onIdle(v,500)},500)},p.prototype.setPolling=function(m){m?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},p.prototype.$measureSizes=function(m){var v={height:(m||this.$measureNode).clientHeight,width:(m||this.$measureNode).clientWidth/o};return v.width===0||v.height===0?null:v},p.prototype.$measureCharWidth=function(m){this.$main.textContent=g.stringRepeat(m,o);var v=this.$main.getBoundingClientRect();return v.width/o},p.prototype.getCharacterWidth=function(m){var v=this.charSizes[m];return v===void 0&&(v=this.charSizes[m]=this.$measureCharWidth(m)/this.$characterSize.width),v},p.prototype.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},p.prototype.$getZoom=function(m){return!m||!m.parentElement?1:(Number(window.getComputedStyle(m).zoom)||1)*this.$getZoom(m.parentElement)},p.prototype.$initTransformMeasureNodes=function(){var m=function(v,b){return["div",{style:"position: absolute;top:"+v+"px;left:"+b+"px;"}]};this.els=d.buildDom([m(0,0),m(l,0),m(0,l),m(l,l)],this.el)},p.prototype.transformCoordinates=function(m,v){if(m){var b=this.$getZoom(this.el);m=y(1/b,m)}function _(D,F,B){var j=D[1]*F[0]-D[0]*F[1];return[(-F[1]*B[0]+F[0]*B[1])/j,(+D[1]*B[0]-D[0]*B[1])/j]}function S(D,F){return[D[0]-F[0],D[1]-F[1]]}function w(D,F){return[D[0]+F[0],D[1]+F[1]]}function y(D,F){return[D*F[0],D*F[1]]}this.els||this.$initTransformMeasureNodes();function C(D){var F=D.getBoundingClientRect();return[F.left,F.top]}var M=C(this.els[0]),E=C(this.els[1]),T=C(this.els[2]),L=C(this.els[3]),$=_(S(L,E),S(L,T),S(w(E,T),w(L,M))),k=y(1+$[0],S(E,M)),x=y(1+$[1],S(T,M));if(v){var A=v,R=$[0]*A[0]/l+$[1]*A[1]/l+1,I=w(y(A[0],k),y(A[1],x));return w(y(1/R/l,I),M)}var N=S(m,M),O=_(S(k,y($[0],N)),S(x,y($[1],N)),N);return y(l,O)},p}();u.prototype.$characterSize={width:0,height:0},i.implement(u.prototype,s),r.FontMetrics=u}),ace.define("ace/css/editor-css",["require","exports","module"],function(n,r,h){h.exports=` +.ace_br1 {border-top-left-radius : 3px;} +.ace_br2 {border-top-right-radius : 3px;} +.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;} +.ace_br4 {border-bottom-right-radius: 3px;} +.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;} +.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;} +.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;} +.ace_br8 {border-bottom-left-radius : 3px;} +.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;} +.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;} +.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;} +.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;} +.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;} +.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;} +.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;} + + +.ace_editor { + position: relative; + overflow: hidden; + padding: 0; + font: 12px/normal 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Source Code Pro', 'source-code-pro', monospace; + direction: ltr; + text-align: left; + -webkit-tap-highlight-color: rgba(0, 0, 0, 0); + forced-color-adjust: none; +} + +.ace_scroller { + position: absolute; + overflow: hidden; + top: 0; + bottom: 0; + background-color: inherit; + -ms-user-select: none; + -moz-user-select: none; + -webkit-user-select: none; + user-select: none; + cursor: text; +} + +.ace_content { + position: absolute; + box-sizing: border-box; + min-width: 100%; + contain: style size layout; + font-variant-ligatures: no-common-ligatures; +} + +.ace_keyboard-focus:focus { + box-shadow: inset 0 0 0 2px #5E9ED6; + outline: none; +} + +.ace_dragging .ace_scroller:before{ + position: absolute; + top: 0; + left: 0; + right: 0; + bottom: 0; + content: ''; + background: rgba(250, 250, 250, 0.01); + z-index: 1000; +} +.ace_dragging.ace_dark .ace_scroller:before{ + background: rgba(0, 0, 0, 0.01); +} + +.ace_gutter { + position: absolute; + overflow : hidden; + width: auto; + top: 0; + bottom: 0; + left: 0; + cursor: default; + z-index: 4; + -ms-user-select: none; + -moz-user-select: none; + -webkit-user-select: none; + user-select: none; + contain: style size layout; +} + +.ace_gutter-active-line { + position: absolute; + left: 0; + right: 0; +} + +.ace_scroller.ace_scroll-left:after { + content: ""; + position: absolute; + top: 0; + right: 0; + bottom: 0; + left: 0; + box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset; + pointer-events: none; +} + +.ace_gutter-cell, .ace_gutter-cell_svg-icons { + position: absolute; + top: 0; + left: 0; + right: 0; + padding-left: 19px; + padding-right: 6px; + background-repeat: no-repeat; +} + +.ace_gutter-cell_svg-icons .ace_gutter_annotation { + margin-left: -14px; + float: left; +} + +.ace_gutter-cell .ace_gutter_annotation { + margin-left: -19px; + float: left; +} + +.ace_gutter-cell.ace_error, .ace_icon.ace_error, .ace_icon.ace_error_fold, .ace_gutter-cell.ace_security, .ace_icon.ace_security, .ace_icon.ace_security_fold { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg=="); + background-repeat: no-repeat; + background-position: 2px center; +} + +.ace_gutter-cell.ace_warning, .ace_icon.ace_warning, .ace_icon.ace_warning_fold { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg=="); + background-repeat: no-repeat; + background-position: 2px center; +} + +.ace_gutter-cell.ace_info, .ace_icon.ace_info, .ace_gutter-cell.ace_hint, .ace_icon.ace_hint { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII="); + background-repeat: no-repeat; + background-position: 2px center; +} + +.ace_dark .ace_gutter-cell.ace_info, .ace_dark .ace_icon.ace_info, .ace_dark .ace_gutter-cell.ace_hint, .ace_dark .ace_icon.ace_hint { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC"); +} + +.ace_icon_svg.ace_error { + -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJyZWQiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KPGNpcmNsZSBmaWxsPSJub25lIiBjeD0iOCIgY3k9IjgiIHI9IjciIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPGxpbmUgeDE9IjExIiB5MT0iNSIgeDI9IjUiIHkyPSIxMSIvPgo8bGluZSB4MT0iMTEiIHkxPSIxMSIgeDI9IjUiIHkyPSI1Ii8+CjwvZz4KPC9zdmc+"); + background-color: crimson; +} +.ace_icon_svg.ace_security { + -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0iZGFya29yYW5nZSIgZmlsbD0ibm9uZSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgogICAgICAgIDxwYXRoIGNsYXNzPSJzdHJva2UtbGluZWpvaW4tcm91bmQiIGQ9Ik04IDE0LjgzMDdDOCAxNC44MzA3IDIgMTIuOTA0NyAyIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOEM3Ljk4OTk5IDEuMzQ5MTggMTAuNjkgMy4yNjU0OCAxNCAzLjI2NTQ4VjguMDg5OTJDMTQgMTIuOTA0NyA4IDE0LjgzMDcgOCAxNC44MzA3WiIvPgogICAgICAgIDxwYXRoIGQ9Ik0yIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMy45OSA4LjA4OTkyVjMuMjY1NDhDMTAuNjggMy4yNjU0OCA4IDEuMzQ5MTggOCAxLjM0OTE4Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggNFY5Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggMTBWMTIiLz4KICAgIDwvZz4KPC9zdmc+"); + background-color: crimson; +} +.ace_icon_svg.ace_warning { + -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJkYXJrb3JhbmdlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+Cjxwb2x5Z29uIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHBvaW50cz0iOCAxIDE1IDE1IDEgMTUgOCAxIi8+CjxyZWN0IHg9IjgiIHk9IjEyIiB3aWR0aD0iMC4wMSIgaGVpZ2h0PSIwLjAxIi8+CjxsaW5lIHgxPSI4IiB5MT0iNiIgeDI9IjgiIHkyPSIxMCIvPgo8L2c+Cjwvc3ZnPg=="); + background-color: darkorange; +} +.ace_icon_svg.ace_info { + -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJibHVlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CjxjaXJjbGUgZmlsbD0ibm9uZSIgY3g9IjgiIGN5PSI4IiByPSI3IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjxwb2x5bGluZSBwb2ludHM9IjggMTEgOCA4Ii8+Cjxwb2x5bGluZSBwb2ludHM9IjkgOCA2IDgiLz4KPGxpbmUgeDE9IjEwIiB5MT0iMTEiIHgyPSI2IiB5Mj0iMTEiLz4KPHJlY3QgeD0iOCIgeT0iNSIgd2lkdGg9IjAuMDEiIGhlaWdodD0iMC4wMSIvPgo8L2c+Cjwvc3ZnPg=="); + background-color: royalblue; +} +.ace_icon_svg.ace_hint { + -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0ic2lsdmVyIiBmaWxsPSJub25lIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTYgMTRIMTAiLz4KICAgICAgICA8cGF0aCBkPSJNOCAxMUg5QzkgOS40NzAwMiAxMiA4LjU0MDAyIDEyIDUuNzYwMDJDMTIuMDIgNC40MDAwMiAxMS4zOSAzLjM2MDAyIDEwLjQzIDIuNjcwMDJDOSAxLjY0MDAyIDcuMDAwMDEgMS42NDAwMiA1LjU3MDAxIDIuNjcwMDJDNC42MTAwMSAzLjM2MDAyIDMuOTggNC40MDAwMiA0IDUuNzYwMDJDNCA4LjU0MDAyIDcuMDAwMDEgOS40NzAwMiA3LjAwMDAxIDExSDhaIi8+CiAgICA8L2c+Cjwvc3ZnPg=="); + background-color: silver; +} + +.ace_icon_svg.ace_error_fold { + -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0ibSAxOC45Mjk4NTEsNy44Mjk4MDc2IGMgMC4xNDYzNTMsNi4zMzc0NjA0IC02LjMyMzE0Nyw3Ljc3Nzg0NDQgLTcuNDc3OTEyLDcuNzc3ODQ0NCAtMi4xMDcyNzI2LC0wLjEyODc1IDUuMTE3Njc4LDAuMzU2MjQ5IDUuMDUxNjk4LC03Ljg3MDA2MTggLTAuNjA0NjcyLC04LjAwMzk3MzQ5IC03LjA3NzI3MDYsLTcuNTYzMTE4OSAtNC44NTczLC03LjQzMDM5NTU2IDEuNjA2LC0wLjExNTE0MjI1IDYuODk3NDg1LDEuMjYyNTQ1OTYgNy4yODM1MTQsNy41MjI2MTI5NiB6IiBmaWxsPSJjcmltc29uIiBzdHJva2Utd2lkdGg9IjIiLz4KICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0ibSA4LjExNDc1NjIsMi4wNTI5ODI4IGMgMy4zNDkxNjk4LDAgNi4wNjQxMzI4LDIuNjc2ODYyNyA2LjA2NDEzMjgsNS45Nzg5NTMgMCwzLjMwMjExMjIgLTIuNzE0OTYzLDUuOTc4OTIwMiAtNi4wNjQxMzI4LDUuOTc4OTIwMiAtMy4zNDkxNDczLDAgLTYuMDY0MTc3MiwtMi42NzY4MDggLTYuMDY0MTc3MiwtNS45Nzg5MjAyIDAuMDA1MzksLTMuMjk5ODg2MSAyLjcxNzI2NTYsLTUuOTczNjQwOCA2LjA2NDE3NzIsLTUuOTc4OTUzIHogbSAwLC0xLjczNTgyNzE5IGMgLTQuMzIxNDgzNiwwIC03LjgyNDc0MDM4LDMuNDU0MDE4NDkgLTcuODI0NzQwMzgsNy43MTQ3ODAxOSAwLDQuMjYwNzI4MiAzLjUwMzI1Njc4LDcuNzE0NzQ1MiA3LjgyNDc0MDM4LDcuNzE0NzQ1MiA0LjMyMTQ0OTgsMCA3LjgyNDY5OTgsLTMuNDU0MDE3IDcuODI0Njk5OCwtNy43MTQ3NDUyIDAsLTIuMDQ2MDkxNCAtMC44MjQzOTIsLTQuMDA4MzY3MiAtMi4yOTE3NTYsLTUuNDU1MTc0NiBDIDEyLjE4MDIyNSwxLjEyOTk2NDggMTAuMTkwMDEzLDAuMzE3MTU1NjEgOC4xMTQ3NTYyLDAuMzE3MTU1NjEgWiBNIDYuOTM3NDU2Myw4LjI0MDU5ODUgNC42NzE4Njg1LDEwLjQ4NTg1MiA2LjAwODY4MTQsMTEuODc2NzI4IDguMzE3MDAzNSw5LjYwMDc5MTEgMTAuNjI1MzM3LDExLjg3NjcyOCAxMS45NjIxMzgsMTAuNDg1ODUyIDkuNjk2NTUwOCw4LjI0MDU5ODUgMTEuOTYyMTM4LDYuMDA2ODA2NiAxMC41NzMyNDYsNC42Mzc0MzM1IDguMzE3MDAzNSw2Ljg3MzQyOTcgNi4wNjA3NjA3LDQuNjM3NDMzNSA0LjY3MTg2ODUsNi4wMDY4MDY2IFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4="); + background-color: crimson; +} +.ace_icon_svg.ace_security_fold { + -webkit-mask-image: url("data:image/svg+xml;base64,CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTcgMTQiIGZpbGw9Im5vbmUiPgogICAgPHBhdGggZD0iTTEwLjAwMDEgMTMuNjk5MkMxMC4wMDAxIDEzLjY5OTIgMTEuOTI0MSAxMy40NzYzIDEzIDEyLjY5OTJDMTQuNDEzOSAxMS42NzgxIDE2IDEwLjUgMTYuMTI1MSA2LjgxMTI2VjIuNTg5ODdDMTYuMTI1MSAyLjU0NzY4IDE2LjEyMjEgMi41MDYxOSAxNi4xMTY0IDIuNDY1NTlWMS43MTQ4NUgxNS4yNDE0TDE1LjIzMDcgMS43MTQ4NEwxNC42MjUxIDEuNjk5MjJWNi44MTEyM0MxNC42MjUxIDguNTEwNjEgMTQuNjI1MSA5LjQ2NDYxIDEyLjc4MjQgMTEuNzIxQzEyLjE1ODYgMTIuNDg0OCAxMC4wMDAxIDEzLjY5OTIgMTAuMDAwMSAxMy42OTkyWiIgZmlsbD0iY3JpbXNvbiIgc3Ryb2tlLXdpZHRoPSIyIi8+CiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTcuMzM2MDkgMC4zNjc0NzVDNy4wMzIxNCAwLjE1MjY1MiA2LjYyNTQ4IDAuMTUzNjE0IDYuMzIyNTMgMC4zNjk5OTdMNi4zMDg2OSAwLjM3OTU1NEM2LjI5NTUzIDAuMzg4NTg4IDYuMjczODggMC40MDMyNjYgNi4yNDQxNyAwLjQyMjc4OUM2LjE4NDcxIDAuNDYxODYgNi4wOTMyMSAwLjUyMDE3MSA1Ljk3MzEzIDAuNTkxMzczQzUuNzMyNTEgMC43MzQwNTkgNS4zNzk5IDAuOTI2ODY0IDQuOTQyNzkgMS4xMjAwOUM0LjA2MTQ0IDEuNTA5NyAyLjg3NTQxIDEuODgzNzcgMS41ODk4NCAxLjg4Mzc3SDAuNzE0ODQ0VjIuNzU4NzdWNi45ODAxNUMwLjcxNDg0NCA5LjQ5Mzc0IDIuMjg4NjYgMTEuMTk3MyAzLjcwMjU0IDEyLjIxODVDNC40MTg0NSAxMi43MzU1IDUuMTI4NzQgMTMuMTA1MyA1LjY1NzMzIDEzLjM0NTdDNS45MjI4NCAxMy40NjY0IDYuMTQ1NjYgMTMuNTU1OSA2LjMwNDY1IDEzLjYxNjFDNi4zODQyMyAxMy42NDYyIDYuNDQ4MDUgMTMuNjY5IDYuNDkzNDkgMTMuNjg0OEM2LjUxNjIyIDEzLjY5MjcgNi41MzQzOCAxMy42OTg5IDYuNTQ3NjQgMTMuNzAzM0w2LjU2MzgyIDEzLjcwODdMNi41NjkwOCAxMy43MTA0TDYuNTcwOTkgMTMuNzExTDYuODM5ODQgMTMuNzUzM0w2LjU3MjQyIDEzLjcxMTVDNi43NDYzMyAxMy43NjczIDYuOTMzMzUgMTMuNzY3MyA3LjEwNzI3IDEzLjcxMTVMNy4xMDg3IDEzLjcxMUw3LjExMDYxIDEzLjcxMDRMNy4xMTU4NyAxMy43MDg3TDcuMTMyMDUgMTMuNzAzM0M3LjE0NTMxIDEzLjY5ODkgNy4xNjM0NiAxMy42OTI3IDcuMTg2MTkgMTMuNjg0OEM3LjIzMTY0IDEzLjY2OSA3LjI5NTQ2IDEzLjY0NjIgNy4zNzUwMyAxMy42MTYxQzcuNTM0MDMgMTMuNTU1OSA3Ljc1Njg1IDEzLjQ2NjQgOC4wMjIzNiAxMy4zNDU3QzguNTUwOTUgMTMuMTA1MyA5LjI2MTIzIDEyLjczNTUgOS45NzcxNSAxMi4yMTg1QzExLjM5MSAxMS4xOTczIDEyLjk2NDggOS40OTM3NyAxMi45NjQ4IDYuOTgwMThWMi43NTg4QzEyLjk2NDggMi43MTY2IDEyLjk2MTkgMi42NzUxMSAxMi45NTYxIDIuNjM0NTFWMS44ODM3N0gxMi4wODExQzEyLjA3NzUgMS44ODM3NyAxMi4wNzQgMS44ODM3NyAxMi4wNzA0IDEuODgzNzdDMTAuNzk3OSAxLjg4MDA0IDkuNjE5NjIgMS41MTEwMiA4LjczODk0IDEuMTI0ODZDOC43MzUzNCAxLjEyMzI3IDguNzMxNzQgMS4xMjE2OCA4LjcyODE0IDEuMTIwMDlDOC4yOTEwMyAwLjkyNjg2NCA3LjkzODQyIDAuNzM0MDU5IDcuNjk3NzkgMC41OTEzNzNDNy41Nzc3MiAwLjUyMDE3MSA3LjQ4NjIyIDAuNDYxODYgNy40MjY3NiAwLjQyMjc4OUM3LjM5NzA1IDAuNDAzMjY2IDcuMzc1MzkgMC4zODg1ODggNy4zNjIyNCAwLjM3OTU1NEw3LjM0ODk2IDAuMzcwMzVDNy4zNDg5NiAwLjM3MDM1IDcuMzQ4NDcgMC4zNzAwMiA3LjM0NTYzIDAuMzc0MDU0TDcuMzM3NzkgMC4zNjg2NTlMNy4zMzYwOSAwLjM2NzQ3NVpNOC4wMzQ3MSAyLjcyNjkxQzguODYwNCAzLjA5MDYzIDkuOTYwNjYgMy40NjMwOSAxMS4yMDYxIDMuNTg5MDdWNi45ODAxNUgxMS4yMTQ4QzExLjIxNDggOC42Nzk1MyAxMC4xNjM3IDkuOTI1MDcgOC45NTI1NCAxMC43OTk4QzguMzU1OTUgMTEuMjMwNiA3Ljc1Mzc0IDExLjU0NTQgNy4yOTc5NiAxMS43NTI3QzcuMTE2NzEgMTEuODM1MSA2Ljk2MDYyIDExLjg5OTYgNi44Mzk4NCAxMS45NDY5QzYuNzE5MDYgMTEuODk5NiA2LjU2Mjk3IDExLjgzNTEgNi4zODE3MyAxMS43NTI3QzUuOTI1OTUgMTEuNTQ1NCA1LjMyMzczIDExLjIzMDYgNC43MjcxNSAxMC43OTk4QzMuNTE2MDMgOS45MjUwNyAyLjQ2NDg0IDguNjc5NTUgMi40NjQ4NCA2Ljk4MDE4VjMuNTg5MDlDMy43MTczOCAzLjQ2MjM5IDQuODIzMDggMy4wODYzOSA1LjY1MDMzIDIuNzIwNzFDNi4xNDIyOCAyLjUwMzI0IDYuNTQ0ODUgMi4yODUzNyA2LjgzMjU0IDIuMTE2MjRDNy4xMjE4MSAyLjI4NTM1IDcuNTI3IDIuNTAzNTIgOC4wMjE5NiAyLjcyMTMxQzguMDI2MiAyLjcyMzE3IDguMDMwNDUgMi43MjUwNCA4LjAzNDcxIDIuNzI2OTFaTTUuOTY0ODQgMy40MDE0N1Y3Ljc3NjQ3SDcuNzE0ODRWMy40MDE0N0g1Ljk2NDg0Wk01Ljk2NDg0IDEwLjQwMTVWOC42NTE0N0g3LjcxNDg0VjEwLjQwMTVINS45NjQ4NFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4="); + background-color: crimson; +} +.ace_icon_svg.ace_warning_fold { + -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNC43NzY5IDE0LjczMzdMOC42NTE5MiAyLjQ4MzY5QzguMzI5NDYgMS44Mzg3NyA3LjQwOTEzIDEuODM4NzcgNy4wODY2NyAyLjQ4MzY5TDAuOTYxNjY5IDE0LjczMzdDMC42NzA3NzUgMTUuMzE1NSAxLjA5MzgzIDE2IDEuNzQ0MjkgMTZIMTMuOTk0M0MxNC42NDQ4IDE2IDE1LjA2NzggMTUuMzE1NSAxNC43NzY5IDE0LjczMzdaTTMuMTYwMDcgMTQuMjVMNy44NjkyOSA0LjgzMTU2TDEyLjU3ODUgMTQuMjVIMy4xNjAwN1pNOC43NDQyOSAxMS42MjVWMTMuMzc1SDYuOTk0MjlWMTEuNjI1SDguNzQ0MjlaTTYuOTk0MjkgMTAuNzVWNy4yNUg4Ljc0NDI5VjEwLjc1SDYuOTk0MjlaIiBmaWxsPSIjRUM3MjExIi8+CjxwYXRoIGQ9Ik0xMS4xOTkxIDIuOTUyMzhDMTAuODgwOSAyLjMxNDY3IDEwLjM1MzcgMS44MDUyNiA5LjcwNTUgMS41MDlMMTEuMDQxIDEuMDY5NzhDMTEuNjg4MyAwLjk0OTgxNCAxMi4zMzcgMS4yNzI2MyAxMi42MzE3IDEuODYxNDFMMTcuNjEzNiAxMS44MTYxQzE4LjM1MjcgMTMuMjkyOSAxNy41OTM4IDE1LjA4MDQgMTYuMDE4IDE1LjU3NDVDMTYuNDA0NCAxNC40NTA3IDE2LjMyMzEgMTMuMjE4OCAxNS43OTI0IDEyLjE1NTVMMTEuMTk5MSAyLjk1MjM4WiIgZmlsbD0iI0VDNzIxMSIvPgo8L3N2Zz4="); + background-color: darkorange; +} + +.ace_scrollbar { + contain: strict; + position: absolute; + right: 0; + bottom: 0; + z-index: 6; +} + +.ace_scrollbar-inner { + position: absolute; + cursor: text; + left: 0; + top: 0; +} + +.ace_scrollbar-v{ + overflow-x: hidden; + overflow-y: scroll; + top: 0; +} + +.ace_scrollbar-h { + overflow-x: scroll; + overflow-y: hidden; + left: 0; +} + +.ace_print-margin { + position: absolute; + height: 100%; +} + +.ace_text-input { + position: absolute; + z-index: 0; + width: 0.5em; + height: 1em; + opacity: 0; + background: transparent; + -moz-appearance: none; + appearance: none; + border: none; + resize: none; + outline: none; + overflow: hidden; + font: inherit; + padding: 0 1px; + margin: 0 -1px; + contain: strict; + -ms-user-select: text; + -moz-user-select: text; + -webkit-user-select: text; + user-select: text; + /*with \`pre-line\` chrome inserts   instead of space*/ + white-space: pre!important; +} +.ace_text-input.ace_composition { + background: transparent; + color: inherit; + z-index: 1000; + opacity: 1; +} +.ace_composition_placeholder { color: transparent } +.ace_composition_marker { + border-bottom: 1px solid; + position: absolute; + border-radius: 0; + margin-top: 1px; +} + +[ace_nocontext=true] { + transform: none!important; + filter: none!important; + clip-path: none!important; + mask : none!important; + contain: none!important; + perspective: none!important; + mix-blend-mode: initial!important; + z-index: auto; +} + +.ace_layer { + z-index: 1; + position: absolute; + overflow: hidden; + /* workaround for chrome bug https://github.com/ajaxorg/ace/issues/2312*/ + word-wrap: normal; + white-space: pre; + height: 100%; + width: 100%; + box-sizing: border-box; + /* setting pointer-events: auto; on node under the mouse, which changes + during scroll, will break mouse wheel scrolling in Safari */ + pointer-events: none; +} + +.ace_gutter-layer { + position: relative; + width: auto; + text-align: right; + pointer-events: auto; + height: 1000000px; + contain: style size layout; +} + +.ace_text-layer { + font: inherit !important; + position: absolute; + height: 1000000px; + width: 1000000px; + contain: style size layout; +} + +.ace_text-layer > .ace_line, .ace_text-layer > .ace_line_group { + contain: style size layout; + position: absolute; + top: 0; + left: 0; + right: 0; +} + +.ace_hidpi .ace_text-layer, +.ace_hidpi .ace_gutter-layer, +.ace_hidpi .ace_content, +.ace_hidpi .ace_gutter { + contain: strict; +} +.ace_hidpi .ace_text-layer > .ace_line, +.ace_hidpi .ace_text-layer > .ace_line_group { + contain: strict; +} + +.ace_cjk { + display: inline-block; + text-align: center; +} + +.ace_cursor-layer { + z-index: 4; +} + +.ace_cursor { + z-index: 4; + position: absolute; + box-sizing: border-box; + border-left: 2px solid; + /* workaround for smooth cursor repaintng whole screen in chrome */ + transform: translatez(0); +} + +.ace_multiselect .ace_cursor { + border-left-width: 1px; +} + +.ace_slim-cursors .ace_cursor { + border-left-width: 1px; +} + +.ace_overwrite-cursors .ace_cursor { + border-left-width: 0; + border-bottom: 1px solid; +} + +.ace_hidden-cursors .ace_cursor { + opacity: 0.2; +} + +.ace_hasPlaceholder .ace_hidden-cursors .ace_cursor { + opacity: 0; +} + +.ace_smooth-blinking .ace_cursor { + transition: opacity 0.18s; +} + +.ace_animate-blinking .ace_cursor { + animation-duration: 1000ms; + animation-timing-function: step-end; + animation-name: blink-ace-animate; + animation-iteration-count: infinite; +} + +.ace_animate-blinking.ace_smooth-blinking .ace_cursor { + animation-duration: 1000ms; + animation-timing-function: ease-in-out; + animation-name: blink-ace-animate-smooth; +} + +@keyframes blink-ace-animate { + from, to { opacity: 1; } + 60% { opacity: 0; } +} + +@keyframes blink-ace-animate-smooth { + from, to { opacity: 1; } + 45% { opacity: 1; } + 60% { opacity: 0; } + 85% { opacity: 0; } +} + +.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack { + position: absolute; + z-index: 3; +} + +.ace_marker-layer .ace_selection { + position: absolute; + z-index: 5; +} + +.ace_marker-layer .ace_bracket { + position: absolute; + z-index: 6; +} + +.ace_marker-layer .ace_error_bracket { + position: absolute; + border-bottom: 1px solid #DE5555; + border-radius: 0; +} + +.ace_marker-layer .ace_active-line { + position: absolute; + z-index: 2; +} + +.ace_marker-layer .ace_selected-word { + position: absolute; + z-index: 4; + box-sizing: border-box; +} + +.ace_line .ace_fold { + box-sizing: border-box; + + display: inline-block; + height: 11px; + margin-top: -2px; + vertical-align: middle; + + background-image: + url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="), + url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII="); + background-repeat: no-repeat, repeat-x; + background-position: center center, top left; + color: transparent; + + border: 1px solid black; + border-radius: 2px; + + cursor: pointer; + pointer-events: auto; +} + +.ace_dark .ace_fold { +} + +.ace_fold:hover{ + background-image: + url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="), + url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC"); +} + +.ace_tooltip { + background-color: #f5f5f5; + border: 1px solid gray; + border-radius: 1px; + box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); + color: black; + max-width: 100%; + padding: 3px 4px; + position: fixed; + z-index: 999999; + box-sizing: border-box; + cursor: default; + white-space: pre-wrap; + word-wrap: break-word; + line-height: normal; + font-style: normal; + font-weight: normal; + letter-spacing: normal; + pointer-events: none; + overflow: auto; + max-width: min(60em, 66vw); + overscroll-behavior: contain; +} +.ace_tooltip pre { + white-space: pre-wrap; +} + +.ace_tooltip.ace_dark { + background-color: #636363; + color: #fff; +} + +.ace_tooltip:focus { + outline: 1px solid #5E9ED6; +} + +.ace_icon { + display: inline-block; + width: 18px; + vertical-align: top; +} + +.ace_icon_svg { + display: inline-block; + width: 12px; + vertical-align: top; + -webkit-mask-repeat: no-repeat; + -webkit-mask-size: 12px; + -webkit-mask-position: center; +} + +.ace_folding-enabled > .ace_gutter-cell, .ace_folding-enabled > .ace_gutter-cell_svg-icons { + padding-right: 13px; +} + +.ace_fold-widget { + box-sizing: border-box; + + margin: 0 -12px 0 1px; + display: none; + width: 11px; + vertical-align: top; + + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg=="); + background-repeat: no-repeat; + background-position: center; + + border-radius: 3px; + + border: 1px solid transparent; + cursor: pointer; +} + +.ace_folding-enabled .ace_fold-widget { + display: inline-block; +} + +.ace_fold-widget.ace_end { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg=="); +} + +.ace_fold-widget.ace_closed { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA=="); +} + +.ace_fold-widget:hover { + border: 1px solid rgba(0, 0, 0, 0.3); + background-color: rgba(255, 255, 255, 0.2); + box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7); +} + +.ace_fold-widget:active { + border: 1px solid rgba(0, 0, 0, 0.4); + background-color: rgba(0, 0, 0, 0.05); + box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8); +} +/** + * Dark version for fold widgets + */ +.ace_dark .ace_fold-widget { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC"); +} +.ace_dark .ace_fold-widget.ace_end { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg=="); +} +.ace_dark .ace_fold-widget.ace_closed { + background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg=="); +} +.ace_dark .ace_fold-widget:hover { + box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2); + background-color: rgba(255, 255, 255, 0.1); +} +.ace_dark .ace_fold-widget:active { + box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2); +} + +.ace_inline_button { + border: 1px solid lightgray; + display: inline-block; + margin: -1px 8px; + padding: 0 5px; + pointer-events: auto; + cursor: pointer; +} +.ace_inline_button:hover { + border-color: gray; + background: rgba(200,200,200,0.2); + display: inline-block; + pointer-events: auto; +} + +.ace_fold-widget.ace_invalid { + background-color: #FFB4B4; + border-color: #DE5555; +} + +.ace_fade-fold-widgets .ace_fold-widget { + transition: opacity 0.4s ease 0.05s; + opacity: 0; +} + +.ace_fade-fold-widgets:hover .ace_fold-widget { + transition: opacity 0.05s ease 0.05s; + opacity:1; +} + +.ace_underline { + text-decoration: underline; +} + +.ace_bold { + font-weight: bold; +} + +.ace_nobold .ace_bold { + font-weight: normal; +} + +.ace_italic { + font-style: italic; +} + + +.ace_error-marker { + background-color: rgba(255, 0, 0,0.2); + position: absolute; + z-index: 9; +} + +.ace_highlight-marker { + background-color: rgba(255, 255, 0,0.2); + position: absolute; + z-index: 8; +} + +.ace_mobile-menu { + position: absolute; + line-height: 1.5; + border-radius: 4px; + -ms-user-select: none; + -moz-user-select: none; + -webkit-user-select: none; + user-select: none; + background: white; + box-shadow: 1px 3px 2px grey; + border: 1px solid #dcdcdc; + color: black; +} +.ace_dark > .ace_mobile-menu { + background: #333; + color: #ccc; + box-shadow: 1px 3px 2px grey; + border: 1px solid #444; + +} +.ace_mobile-button { + padding: 2px; + cursor: pointer; + overflow: hidden; +} +.ace_mobile-button:hover { + background-color: #eee; + opacity:1; +} +.ace_mobile-button:active { + background-color: #ddd; +} + +.ace_placeholder { + position: relative; + font-family: arial; + transform: scale(0.9); + transform-origin: left; + white-space: pre; + opacity: 0.7; + margin: 0 10px; + z-index: 1; +} + +.ace_ghost_text { + opacity: 0.5; + font-style: italic; +} + +.ace_ghost_text_container > div { + white-space: pre; +} + +.ghost_text_line_wrapped::after { + content: "\u21A9"; + position: absolute; +} + +.ace_lineWidgetContainer.ace_ghost_text { + margin: 0px 4px +} + +.ace_screenreader-only { + position:absolute; + left:-10000px; + top:auto; + width:1px; + height:1px; + overflow:hidden; +} + +.ace_hidden_token { + display: none; +}`}),ace.define("ace/layer/decorators",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter"],function(n,r,h){var i=n("../lib/dom"),d=n("../lib/oop"),g=n("../lib/event_emitter").EventEmitter,c=function(){function f(s,o){this.canvas=i.createElement("canvas"),this.renderer=o,this.pixelRatio=1,this.maxHeight=o.layerConfig.maxHeight,this.lineHeight=o.layerConfig.lineHeight,this.canvasHeight=s.parent.scrollHeight,this.heightRatio=this.canvasHeight/this.maxHeight,this.canvasWidth=s.width,this.minDecorationHeight=2*this.pixelRatio|0,this.halfMinDecorationHeight=this.minDecorationHeight/2|0,this.canvas.width=this.canvasWidth,this.canvas.height=this.canvasHeight,this.canvas.style.top="0px",this.canvas.style.right="0px",this.canvas.style.zIndex="7px",this.canvas.style.position="absolute",this.colors={},this.colors.dark={error:"rgba(255, 18, 18, 1)",warning:"rgba(18, 136, 18, 1)",info:"rgba(18, 18, 136, 1)"},this.colors.light={error:"rgb(255,51,51)",warning:"rgb(32,133,72)",info:"rgb(35,68,138)"},s.element.appendChild(this.canvas)}return f.prototype.$updateDecorators=function(s){var o=this.renderer.theme.isDark===!0?this.colors.dark:this.colors.light;if(s){this.maxHeight=s.maxHeight,this.lineHeight=s.lineHeight,this.canvasHeight=s.height;var a=(s.lastRow+1)*this.lineHeight;a$.priority?1:0}var p=this.renderer.session.$annotations;if(l.clearRect(0,0,this.canvas.width,this.canvas.height),p){var m={info:1,warning:2,error:3};p.forEach(function(L){L.priority=m[L.type]||null}),p=p.sort(u);for(var v=this.renderer.session.$foldData,b=0;bthis.canvasHeight&&(E=this.canvasHeight-this.halfMinDecorationHeight),y=Math.round(E-this.halfMinDecorationHeight),C=Math.round(E+this.halfMinDecorationHeight)}l.fillStyle=o[p[b].type]||null,l.fillRect(0,w,this.canvasWidth,C-y)}}var T=this.renderer.session.selection.getCursor();if(T){var S=this.compensateFoldRows(T.row,v),w=Math.round((T.row-S)*this.lineHeight*this.heightRatio);l.fillStyle="rgba(0, 0, 0, 0.5)",l.fillRect(0,w,this.canvasWidth,2)}},f.prototype.compensateFoldRows=function(s,o){var a=0;if(o&&o.length>0)for(var l=0;lo[l].start.row&&s=o[l].end.row&&(a+=o[l].end.row-o[l].start.row);return a},f}();d.implement(c.prototype,g),r.Decorator=c}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/config","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/scrollbar_custom","ace/scrollbar_custom","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter","ace/css/editor-css","ace/layer/decorators","ace/lib/useragent","ace/layer/text_util"],function(n,r,h){var i=n("./lib/oop"),d=n("./lib/dom"),g=n("./lib/lang"),c=n("./config"),f=n("./layer/gutter").Gutter,s=n("./layer/marker").Marker,o=n("./layer/text").Text,a=n("./layer/cursor").Cursor,l=n("./scrollbar").HScrollBar,u=n("./scrollbar").VScrollBar,p=n("./scrollbar_custom").HScrollBar,m=n("./scrollbar_custom").VScrollBar,v=n("./renderloop").RenderLoop,b=n("./layer/font_metrics").FontMetrics,_=n("./lib/event_emitter").EventEmitter,S=n("./css/editor-css"),w=n("./layer/decorators").Decorator,y=n("./lib/useragent"),C=n("./layer/text_util").isTextToken;d.importCssString(S,"ace_editor.css",!1);var M=function(){function E(T,L){var $=this;this.container=T||d.createElement("div"),d.addCssClass(this.container,"ace_editor"),d.HI_DPI&&d.addCssClass(this.container,"ace_hidpi"),this.setTheme(L),c.get("useStrictCSP")==null&&c.set("useStrictCSP",!1),this.$gutter=d.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.$gutter.setAttribute("aria-hidden","true"),this.scroller=d.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=d.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new f(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new s(this.content);var k=this.$textLayer=new o(this.content);this.canvas=k.element,this.$markerFront=new s(this.content),this.$cursorLayer=new a(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new u(this.container,this),this.scrollBarH=new l(this.container,this),this.scrollBarV.on("scroll",function(x){$.$scrollAnimation||$.session.setScrollTop(x.data-$.scrollMargin.top)}),this.scrollBarH.on("scroll",function(x){$.$scrollAnimation||$.session.setScrollLeft(x.data-$.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new b(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.on("changeCharacterSize",function(x){$.updateCharacterSize(),$.onResize(!0,$.gutterWidth,$.$size.width,$.$size.height),$._signal("changeCharacterSize",x)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.margin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$keepTextAreaAtCursor=!y.isIOS,this.$loop=new v(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),this.$addResizeObserver(),c.resetOptions(this),c._signal("renderer",this)}return E.prototype.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin(),d.setStyle(this.scroller.style,"line-height",this.lineHeight+"px")},E.prototype.setSession=function(T){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=T,T&&this.scrollMargin.top&&T.getScrollTop()<=0&&T.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(T),this.$markerBack.setSession(T),this.$markerFront.setSession(T),this.$gutterLayer.setSession(T),this.$textLayer.setSession(T),T&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},E.prototype.updateLines=function(T,L,$){if(L===void 0&&(L=1/0),this.$changedLines?(this.$changedLines.firstRow>T&&(this.$changedLines.firstRow=T),this.$changedLines.lastRowthis.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},E.prototype.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},E.prototype.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},E.prototype.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},E.prototype.updateFull=function(T){T?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},E.prototype.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},E.prototype.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},E.prototype.onResize=function(T,L,$,k){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=T?1:0;var x=this.container;k||(k=x.clientHeight||x.scrollHeight),!k&&this.$maxLines&&this.lineHeight>1&&(!x.style.height||x.style.height=="0px")&&(x.style.height="1px",k=x.clientHeight||x.scrollHeight),$||($=x.clientWidth||x.scrollWidth);var A=this.$updateCachedSize(T,L,$,k);if(this.$resizeTimer&&this.$resizeTimer.cancel(),!this.$size.scrollerHeight||!$&&!k)return this.resizing=0;T&&(this.$gutterLayer.$padding=null),T?this.$renderChanges(A|this.$changes,!0):this.$loop.schedule(A|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.$customScrollbar&&this.$updateCustomScrollbar(!0)}},E.prototype.$updateCachedSize=function(T,L,$,k){k-=this.$extraHeight||0;var x=0,A=this.$size,R={width:A.width,height:A.height,scrollerHeight:A.scrollerHeight,scrollerWidth:A.scrollerWidth};if(k&&(T||A.height!=k)&&(A.height=k,x|=this.CHANGE_SIZE,A.scrollerHeight=A.height,this.$horizScroll&&(A.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.setHeight(A.scrollerHeight),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",x=x|this.CHANGE_SCROLL),$&&(T||A.width!=$)){x|=this.CHANGE_SIZE,A.width=$,L==null&&(L=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=L,d.setStyle(this.scrollBarH.element.style,"left",L+"px"),d.setStyle(this.scroller.style,"left",L+this.margin.left+"px"),A.scrollerWidth=Math.max(0,$-L-this.scrollBarV.getWidth()-this.margin.h),d.setStyle(this.$gutter.style,"left",this.margin.left+"px");var I=this.scrollBarV.getWidth()+"px";d.setStyle(this.scrollBarH.element.style,"right",I),d.setStyle(this.scroller.style,"right",I),d.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight()),this.scrollBarH.setWidth(A.scrollerWidth),(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||T)&&(x|=this.CHANGE_FULL)}return A.$dirty=!$||!k,x&&this._signal("resize",R),x},E.prototype.onGutterResize=function(T){var L=this.$showGutter?T:0;L!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,L,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):this.$computeLayerConfig()},E.prototype.adjustWrapLimit=function(){var T=this.$size.scrollerWidth-this.$padding*2,L=Math.floor(T/this.characterWidth);return this.session.adjustWrapLimit(L,this.$showPrintMargin&&this.$printMarginColumn)},E.prototype.setAnimatedScroll=function(T){this.setOption("animatedScroll",T)},E.prototype.getAnimatedScroll=function(){return this.$animatedScroll},E.prototype.setShowInvisibles=function(T){this.setOption("showInvisibles",T),this.session.$bidiHandler.setShowInvisibles(T)},E.prototype.getShowInvisibles=function(){return this.getOption("showInvisibles")},E.prototype.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},E.prototype.setDisplayIndentGuides=function(T){this.setOption("displayIndentGuides",T)},E.prototype.getHighlightIndentGuides=function(){return this.getOption("highlightIndentGuides")},E.prototype.setHighlightIndentGuides=function(T){this.setOption("highlightIndentGuides",T)},E.prototype.setShowPrintMargin=function(T){this.setOption("showPrintMargin",T)},E.prototype.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},E.prototype.setPrintMarginColumn=function(T){this.setOption("printMarginColumn",T)},E.prototype.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},E.prototype.getShowGutter=function(){return this.getOption("showGutter")},E.prototype.setShowGutter=function(T){return this.setOption("showGutter",T)},E.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},E.prototype.setFadeFoldWidgets=function(T){this.setOption("fadeFoldWidgets",T)},E.prototype.setHighlightGutterLine=function(T){this.setOption("highlightGutterLine",T)},E.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},E.prototype.$updatePrintMargin=function(){if(!(!this.$showPrintMargin&&!this.$printMarginEl)){if(!this.$printMarginEl){var T=d.createElement("div");T.className="ace_layer ace_print-margin-layer",this.$printMarginEl=d.createElement("div"),this.$printMarginEl.className="ace_print-margin",T.appendChild(this.$printMarginEl),this.content.insertBefore(T,this.content.firstChild)}var L=this.$printMarginEl.style;L.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",L.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&this.session.$wrap==-1&&this.adjustWrapLimit()}},E.prototype.getContainerElement=function(){return this.container},E.prototype.getMouseEventTarget=function(){return this.scroller},E.prototype.getTextAreaContainer=function(){return this.container},E.prototype.$moveTextAreaToCursor=function(){if(!this.$isMousePressed){var T=this.textarea.style,L=this.$composition;if(!this.$keepTextAreaAtCursor&&!L){d.translate(this.textarea,-100,0);return}var $=this.$cursorLayer.$pixelPos;if($){L&&L.markerRange&&($=this.$cursorLayer.getPixelPosition(L.markerRange.start,!0));var k=this.layerConfig,x=$.top,A=$.left;x-=k.offset;var R=L&&L.useTextareaForIME||y.isMobile?this.lineHeight:1;if(x<0||x>k.height-R){d.translate(this.textarea,0,0);return}var I=1,N=this.$size.height-R;if(!L)x+=this.lineHeight;else if(L.useTextareaForIME){var O=this.textarea.value;I=this.characterWidth*this.session.$getStringScreenWidth(O)[0]}else x+=this.lineHeight+2;A-=this.scrollLeft,A>this.$size.scrollerWidth-I&&(A=this.$size.scrollerWidth-I),A+=this.gutterWidth+this.margin.left,d.setStyle(T,"height",R+"px"),d.setStyle(T,"width",I+"px"),d.translate(this.textarea,Math.min(A,this.$size.scrollerWidth-I),Math.min(x,N))}}},E.prototype.getFirstVisibleRow=function(){return this.layerConfig.firstRow},E.prototype.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(this.layerConfig.offset===0?0:1)},E.prototype.getLastFullyVisibleRow=function(){var T=this.layerConfig,L=T.lastRow,$=this.session.documentToScreenRow(L,0)*T.lineHeight;return $-this.session.getScrollTop()>T.height-T.lineHeight?L-1:L},E.prototype.getLastVisibleRow=function(){return this.layerConfig.lastRow},E.prototype.setPadding=function(T){this.$padding=T,this.$textLayer.setPadding(T),this.$cursorLayer.setPadding(T),this.$markerFront.setPadding(T),this.$markerBack.setPadding(T),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},E.prototype.setScrollMargin=function(T,L,$,k){var x=this.scrollMargin;x.top=T|0,x.bottom=L|0,x.right=k|0,x.left=$|0,x.v=x.top+x.bottom,x.h=x.left+x.right,x.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-x.top),this.updateFull()},E.prototype.setMargin=function(T,L,$,k){var x=this.margin;x.top=T|0,x.bottom=L|0,x.right=k|0,x.left=$|0,x.v=x.top+x.bottom,x.h=x.left+x.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},E.prototype.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},E.prototype.setHScrollBarAlwaysVisible=function(T){this.setOption("hScrollBarAlwaysVisible",T)},E.prototype.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},E.prototype.setVScrollBarAlwaysVisible=function(T){this.setOption("vScrollBarAlwaysVisible",T)},E.prototype.$updateScrollBarV=function(){var T=this.layerConfig.maxHeight,L=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(T-=(L-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>T-L&&(T=this.scrollTop+L,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(T+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},E.prototype.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},E.prototype.freeze=function(){this.$frozen=!0},E.prototype.unfreeze=function(){this.$frozen=!1},E.prototype.$renderChanges=function(T,L){if(this.$changes&&(T|=this.$changes,this.$changes=0),!this.session||!this.container.offsetWidth||this.$frozen||!T&&!L){this.$changes|=T;return}if(this.$size.$dirty)return this.$changes|=T,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",T),this.session&&this.session.$bidiHandler&&this.session.$bidiHandler.updateCharacterWidths(this.$fontMetrics);var $=this.layerConfig;if(T&this.CHANGE_FULL||T&this.CHANGE_SIZE||T&this.CHANGE_TEXT||T&this.CHANGE_LINES||T&this.CHANGE_SCROLL||T&this.CHANGE_H_SCROLL){if(T|=this.$computeLayerConfig()|this.$loop.clear(),$.firstRow!=this.layerConfig.firstRow&&$.firstRowScreen==this.layerConfig.firstRowScreen){var k=this.scrollTop+($.firstRow-Math.max(this.layerConfig.firstRow,0))*this.lineHeight;k>0&&(this.scrollTop=k,T=T|this.CHANGE_SCROLL,T|=this.$computeLayerConfig()|this.$loop.clear())}$=this.layerConfig,this.$updateScrollBarV(),T&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),d.translate(this.content,-this.scrollLeft,-$.offset);var x=$.width+2*this.$padding+"px",A=$.minHeight+"px";d.setStyle(this.content.style,"width",x),d.setStyle(this.content.style,"height",A)}if(T&this.CHANGE_H_SCROLL&&(d.translate(this.content,-this.scrollLeft,-$.offset),this.scroller.className=this.scrollLeft<=0?"ace_scroller ":"ace_scroller ace_scroll-left ",this.enableKeyboardAccessibility&&(this.scroller.className+=this.keyboardFocusClassName)),T&this.CHANGE_FULL){this.$changedLines=null,this.$textLayer.update($),this.$showGutter&&this.$gutterLayer.update($),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators($),this.$markerBack.update($),this.$markerFront.update($),this.$cursorLayer.update($),this.$moveTextAreaToCursor(),this._signal("afterRender",T);return}if(T&this.CHANGE_SCROLL){this.$changedLines=null,T&this.CHANGE_TEXT||T&this.CHANGE_LINES?this.$textLayer.update($):this.$textLayer.scrollLines($),this.$showGutter&&(T&this.CHANGE_GUTTER||T&this.CHANGE_LINES?this.$gutterLayer.update($):this.$gutterLayer.scrollLines($)),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators($),this.$markerBack.update($),this.$markerFront.update($),this.$cursorLayer.update($),this.$moveTextAreaToCursor(),this._signal("afterRender",T);return}T&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update($),this.$showGutter&&this.$gutterLayer.update($),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators($)):T&this.CHANGE_LINES?((this.$updateLines()||T&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update($),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators($)):T&this.CHANGE_TEXT||T&this.CHANGE_GUTTER?(this.$showGutter&&this.$gutterLayer.update($),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators($)):T&this.CHANGE_CURSOR&&(this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight($),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators($)),T&this.CHANGE_CURSOR&&(this.$cursorLayer.update($),this.$moveTextAreaToCursor()),T&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update($),T&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update($),this._signal("afterRender",T)},E.prototype.$autosize=function(){var T=this.session.getScreenLength()*this.lineHeight,L=this.$maxLines*this.lineHeight,$=Math.min(L,Math.max((this.$minLines||1)*this.lineHeight,T))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&($+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&$>this.$maxPixelHeight&&($=this.$maxPixelHeight);var k=$<=2*this.lineHeight,x=!k&&T>L;if($!=this.desiredHeight||this.$size.height!=this.desiredHeight||x!=this.$vScroll){x!=this.$vScroll&&(this.$vScroll=x,this.scrollBarV.setVisible(x));var A=this.container.clientWidth;this.container.style.height=$+"px",this.$updateCachedSize(!0,this.$gutterWidth,A,$),this.desiredHeight=$,this._signal("autosize")}},E.prototype.$computeLayerConfig=function(){var T=this.session,L=this.$size,$=L.height<=2*this.lineHeight,k=this.session.getScreenLength(),x=k*this.lineHeight,A=this.$getLongestLine(),R=!$&&(this.$hScrollBarAlwaysVisible||L.scrollerWidth-A-2*this.$padding<0),I=this.$horizScroll!==R;I&&(this.$horizScroll=R,this.scrollBarH.setVisible(R));var N=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var O=L.scrollerHeight+this.lineHeight,D=!this.$maxLines&&this.$scrollPastEnd?(L.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;x+=D;var F=this.scrollMargin;this.session.setScrollTop(Math.max(-F.top,Math.min(this.scrollTop,x-L.scrollerHeight+F.bottom))),this.session.setScrollLeft(Math.max(-F.left,Math.min(this.scrollLeft,A+2*this.$padding-L.scrollerWidth+F.right)));var B=!$&&(this.$vScrollBarAlwaysVisible||L.scrollerHeight-x+D<0||this.scrollTop>F.top),j=N!==B;j&&(this.$vScroll=B,this.scrollBarV.setVisible(B));var P=this.scrollTop%this.lineHeight,H=Math.ceil(O/this.lineHeight)-1,U=Math.max(0,Math.round((this.scrollTop-P)/this.lineHeight)),K=U+H,q,X,ee=this.lineHeight;U=T.screenToDocumentRow(U,0);var se=T.getFoldLine(U);se&&(U=se.start.row),q=T.documentToScreenRow(U,0),X=T.getRowLength(U)*ee,K=Math.min(T.screenToDocumentRow(K,0),T.getLength()-1),O=L.scrollerHeight+T.getRowLength(K)*ee+X,P=this.scrollTop-q*ee;var le=0;return(this.layerConfig.width!=A||I)&&(le=this.CHANGE_H_SCROLL),(I||j)&&(le|=this.$updateCachedSize(!0,this.gutterWidth,L.width,L.height),this._signal("scrollbarVisibilityChanged"),j&&(A=this.$getLongestLine())),this.layerConfig={width:A,padding:this.$padding,firstRow:U,firstRowScreen:q,lastRow:K,lineHeight:ee,characterWidth:this.characterWidth,minHeight:O,maxHeight:x,offset:P,gutterOffset:ee?Math.max(0,Math.ceil((P+L.height-L.scrollerHeight)/ee)):0,height:this.$size.scrollerHeight},this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(A-this.$padding),le},E.prototype.$updateLines=function(){if(this.$changedLines){var T=this.$changedLines.firstRow,L=this.$changedLines.lastRow;this.$changedLines=null;var $=this.layerConfig;if(!(T>$.lastRow+1)&&!(L<$.firstRow)){if(L===1/0){this.$showGutter&&this.$gutterLayer.update($),this.$textLayer.update($);return}return this.$textLayer.updateLines($,T,L),!0}}},E.prototype.$getLongestLine=function(){var T=this.session.getScreenWidth();return this.showInvisibles&&!this.session.$useWrapMode&&(T+=1),this.$textLayer&&T>this.$textLayer.MAX_LINE_LENGTH&&(T=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(T*this.characterWidth))},E.prototype.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},E.prototype.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},E.prototype.addGutterDecoration=function(T,L){this.$gutterLayer.addGutterDecoration(T,L)},E.prototype.removeGutterDecoration=function(T,L){this.$gutterLayer.removeGutterDecoration(T,L)},E.prototype.updateBreakpoints=function(T){this._rows=T,this.$loop.schedule(this.CHANGE_GUTTER)},E.prototype.setAnnotations=function(T){this.$gutterLayer.setAnnotations(T),this.$loop.schedule(this.CHANGE_GUTTER)},E.prototype.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},E.prototype.hideCursor=function(){this.$cursorLayer.hideCursor()},E.prototype.showCursor=function(){this.$cursorLayer.showCursor()},E.prototype.scrollSelectionIntoView=function(T,L,$){this.scrollCursorIntoView(T,$),this.scrollCursorIntoView(L,$)},E.prototype.scrollCursorIntoView=function(T,L,$){if(this.$size.scrollerHeight!==0){var k=this.$cursorLayer.getPixelPosition(T),x=k.left,A=k.top,R=$&&$.top||0,I=$&&$.bottom||0;this.$scrollAnimation&&(this.$stopAnimation=!0);var N=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;N+R>A?(L&&N+R>A+this.lineHeight&&(A-=L*this.$size.scrollerHeight),A===0&&(A=-this.scrollMargin.top),this.session.setScrollTop(A)):N+this.$size.scrollerHeight-I=1-this.scrollMargin.top||L>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom||T<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left||T>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right)return!0},E.prototype.pixelToScreenCoordinates=function(T,L){var $;if(this.$hasCssTransforms){$={top:0,left:0};var k=this.$fontMetrics.transformCoordinates([T,L]);T=k[1]-this.gutterWidth-this.margin.left,L=k[0]}else $=this.scroller.getBoundingClientRect();var x=T+this.scrollLeft-$.left-this.$padding,A=x/this.characterWidth,R=Math.floor((L+this.scrollTop-$.top)/this.lineHeight),I=this.$blockCursor?Math.floor(A):Math.round(A);return{row:R,column:I,side:A-I>0?1:-1,offsetX:x}},E.prototype.screenToTextCoordinates=function(T,L){var $;if(this.$hasCssTransforms){$={top:0,left:0};var k=this.$fontMetrics.transformCoordinates([T,L]);T=k[1]-this.gutterWidth-this.margin.left,L=k[0]}else $=this.scroller.getBoundingClientRect();var x=T+this.scrollLeft-$.left-this.$padding,A=x/this.characterWidth,R=this.$blockCursor?Math.floor(A):Math.round(A),I=Math.floor((L+this.scrollTop-$.top)/this.lineHeight);return this.session.screenToDocumentPosition(I,Math.max(R,0),x)},E.prototype.textToScreenCoordinates=function(T,L){var $=this.scroller.getBoundingClientRect(),k=this.session.documentToScreenPosition(T,L),x=this.$padding+(this.session.$bidiHandler.isBidiRow(k.row,T)?this.session.$bidiHandler.getPosLeft(k.column):Math.round(k.column*this.characterWidth)),A=k.row*this.lineHeight;return{pageX:$.left+x-this.scrollLeft,pageY:$.top+A-this.scrollTop}},E.prototype.visualizeFocus=function(){d.addCssClass(this.container,"ace_focus")},E.prototype.visualizeBlur=function(){d.removeCssClass(this.container,"ace_focus")},E.prototype.showComposition=function(T){this.$composition=T,T.cssText||(T.cssText=this.textarea.style.cssText),T.useTextareaForIME==null&&(T.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(d.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$cursorLayer.element.style.display="none"):T.markerId=this.session.addMarker(T.markerRange,"ace_composition_marker","text")},E.prototype.setCompositionText=function(T){var L=this.session.selection.cursor;this.addToken(T,"composition_placeholder",L.row,L.column),this.$moveTextAreaToCursor()},E.prototype.hideComposition=function(){if(this.$composition){this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),d.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var T=this.session.selection.cursor;this.removeExtraToken(T.row,T.column),this.$composition=null,this.$cursorLayer.element.style.display=""}},E.prototype.setGhostText=function(T,L){var $=this.session.selection.cursor,k=L||{row:$.row,column:$.column};this.removeGhostText();var x=this.$calculateWrappedTextChunks(T,k);this.addToken(x[0].text,"ghost_text",k.row,k.column),this.$ghostText={text:T,position:{row:k.row,column:k.column}};var A=d.createElement("div");if(x.length>1){var R=this.hideTokensAfterPosition(k.row,k.column),I;x.slice(1).forEach(function(j){var P=d.createElement("div"),H=d.createElement("span");H.className="ace_ghost_text",j.wrapped&&(P.className="ghost_text_line_wrapped"),j.text.length===0&&(j.text=" "),H.appendChild(d.createTextNode(j.text)),P.appendChild(H),A.appendChild(P),I=P}),R.forEach(function(j){var P=d.createElement("span");C(j.type)||(P.className="ace_"+j.type.replace(/\./g," ace_")),P.appendChild(d.createTextNode(j.value)),I.appendChild(P)}),this.$ghostTextWidget={el:A,row:k.row,column:k.column,className:"ace_ghost_text_container"},this.session.widgetManager.addLineWidget(this.$ghostTextWidget);var N=this.$cursorLayer.getPixelPosition(k,!0),O=this.container,D=O.getBoundingClientRect().height,F=x.length*this.lineHeight,B=F0){var O=0;N.push(x[R].length);for(var D=0;D1||Math.abs(T.$size.height-k)>1?T.$resizeTimer.delay():T.$resizeTimer.cancel()}),this.$resizeObserver.observe(this.container)}},E}();M.prototype.CHANGE_CURSOR=1,M.prototype.CHANGE_MARKER=2,M.prototype.CHANGE_GUTTER=4,M.prototype.CHANGE_SCROLL=8,M.prototype.CHANGE_LINES=16,M.prototype.CHANGE_TEXT=32,M.prototype.CHANGE_SIZE=64,M.prototype.CHANGE_MARKER_BACK=128,M.prototype.CHANGE_MARKER_FRONT=256,M.prototype.CHANGE_FULL=512,M.prototype.CHANGE_H_SCROLL=1024,M.prototype.$changes=0,M.prototype.$padding=null,M.prototype.$frozen=!1,M.prototype.STEPS=8,i.implement(M.prototype,_),c.defineOptions(M.prototype,"renderer",{useResizeObserver:{set:function(E){!E&&this.$resizeObserver?(this.$resizeObserver.disconnect(),this.$resizeTimer.cancel(),this.$resizeTimer=this.$resizeObserver=null):E&&!this.$resizeObserver&&this.$addResizeObserver()}},animatedScroll:{initialValue:!1},showInvisibles:{set:function(E){this.$textLayer.setShowInvisibles(E)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(E){typeof E=="number"&&(this.$printMarginColumn=E),this.$showPrintMargin=!!E,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(E){this.$gutter.style.display=E?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},useSvgGutterIcons:{set:function(E){this.$gutterLayer.$useSvgGutterIcons=E},initialValue:!1},showFoldedAnnotations:{set:function(E){this.$gutterLayer.$showFoldedAnnotations=E},initialValue:!1},fadeFoldWidgets:{set:function(E){d.setCssClass(this.$gutter,"ace_fade-fold-widgets",E)},initialValue:!1},showFoldWidgets:{set:function(E){this.$gutterLayer.setShowFoldWidgets(E),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(E){this.$textLayer.setDisplayIndentGuides(E)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightIndentGuides:{set:function(E){this.$textLayer.setHighlightIndentGuides(E)==!0?this.$textLayer.$highlightIndentGuide():this.$textLayer.$clearActiveIndentGuide(this.$textLayer.$lines.cells)},initialValue:!0},highlightGutterLine:{set:function(E){this.$gutterLayer.setHighlightGutterLine(E),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},hScrollBarAlwaysVisible:{set:function(E){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(E){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(E){typeof E=="number"&&(E=E+"px"),this.container.style.fontSize=E,this.updateFontSize()},initialValue:12},fontFamily:{set:function(E){this.container.style.fontFamily=E,this.updateFontSize()}},maxLines:{set:function(E){this.updateFull()}},minLines:{set:function(E){this.$minLines<562949953421311||(this.$minLines=0),this.updateFull()}},maxPixelHeight:{set:function(E){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(E){E=+E||0,this.$scrollPastEnd!=E&&(this.$scrollPastEnd=E,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(E){this.$gutterLayer.$fixedWidth=!!E,this.$loop.schedule(this.CHANGE_GUTTER)}},customScrollbar:{set:function(E){this.$updateCustomScrollbar(E)},initialValue:!1},theme:{set:function(E){this.setTheme(E)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0},hasCssTransforms:{},useTextareaForIME:{initialValue:!y.isMobile&&!y.isIE}}),r.VirtualRenderer=M}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(n,r,h){var i=n("../lib/oop"),d=n("../lib/net"),g=n("../lib/event_emitter").EventEmitter,c=n("../config");function f(l){var u="importScripts('"+d.qualifyURL(l)+"');";try{return new Blob([u],{type:"application/javascript"})}catch{var p=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,m=new p;return m.append(u),m.getBlob("application/javascript")}}function s(l){if(typeof Worker>"u")return{postMessage:function(){},terminate:function(){}};if(c.get("loadWorkerFromBlob")){var u=f(l),p=window.URL||window.webkitURL,m=p.createObjectURL(u);return new Worker(m)}return new Worker(l)}var o=function(l){l.postMessage||(l=this.$createWorkerFromOldConfig.apply(this,arguments)),this.$worker=l,this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){i.implement(this,g),this.$createWorkerFromOldConfig=function(l,u,p,m,v){if(n.nameToUrl&&!n.toUrl&&(n.toUrl=n.nameToUrl),c.get("packaged")||!n.toUrl)m=m||c.moduleUrl(u,"worker");else{var b=this.$normalizePath;m=m||b(n.toUrl("ace/worker/worker.js",null,"_"));var _={};l.forEach(function(S){_[S]=b(n.toUrl(S,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}return this.$worker=s(m),v&&this.send("importScripts",v),this.$worker.postMessage({init:!0,tlns:_,module:u,classname:p}),this.$worker},this.onMessage=function(l){var u=l.data;switch(u.type){case"event":this._signal(u.name,{data:u.data});break;case"call":var p=this.callbacks[u.id];p&&(p(u.data),delete this.callbacks[u.id]);break;case"error":this.reportError(u.data);break;case"log":window.console&&console.log&&console.log.apply(console,u.data);break}},this.reportError=function(l){window.console&&console.error&&console.error(l)},this.$normalizePath=function(l){return d.qualifyURL(l)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker.onerror=function(l){l.preventDefault()},this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(l,u){this.$worker.postMessage({command:l,args:u})},this.call=function(l,u,p){if(p){var m=this.callbackId++;this.callbacks[m]=p,u.push(m)}this.send(l,u)},this.emit=function(l,u){try{u.data&&u.data.err&&(u.data.err={message:u.data.err.message,stack:u.data.err.stack,code:u.data.err.code}),this.$worker&&this.$worker.postMessage({event:l,data:{data:u.data}})}catch(p){console.error(p.stack)}},this.attachToDocument=function(l){this.$doc&&this.terminate(),this.$doc=l,this.call("setValue",[l.getValue()]),l.on("change",this.changeListener,!0)},this.changeListener=function(l){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),l.action=="insert"?this.deltaQueue.push(l.start,l.lines):this.deltaQueue.push(l.start,l.end)},this.$sendDeltaQueue=function(){var l=this.deltaQueue;l&&(this.deltaQueue=null,l.length>50&&l.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:l}))}}).call(o.prototype);var a=function(l,u,p){var m=null,v=!1,b=Object.create(g),_=[],S=new o({messageBuffer:_,terminate:function(){},postMessage:function(y){_.push(y),m&&(v?setTimeout(w):w())}});S.setEmitSync=function(y){v=y};var w=function(){var y=_.shift();y.command?m[y.command].apply(m,y.args):y.event&&b._signal(y.event,y.data)};return b.postMessage=function(y){S.onMessage({data:y})},b.callback=function(y,C){this.postMessage({type:"call",id:C,data:y})},b.emit=function(y,C){this.postMessage({type:"event",name:y,data:C})},c.loadModule(["worker",u],function(y){for(m=new y[p](b);_.length;)w()}),S};r.UIWorkerClient=a,r.WorkerClient=o,r.createWorker=s}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(n,r,h){var i=n("./range").Range,d=n("./lib/event_emitter").EventEmitter,g=n("./lib/oop"),c=function(){function f(s,o,a,l,u,p){var m=this;this.length=o,this.session=s,this.doc=s.getDocument(),this.mainClass=u,this.othersClass=p,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate,!0),this.$others=l,this.$onCursorChange=function(){setTimeout(function(){m.onCursorChange()})},this.$pos=a;var v=s.getUndoManager().$undoStack||s.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=v.length,this.setup(),s.selection.on("changeCursor",this.$onCursorChange)}return f.prototype.setup=function(){var s=this,o=this.doc,a=this.session;this.selectionBefore=a.selection.toJSON(),a.selection.inMultiSelectMode&&a.selection.toSingleRange(),this.pos=o.createAnchor(this.$pos.row,this.$pos.column);var l=this.pos;l.$insertRight=!0,l.detach(),l.markerId=a.addMarker(new i(l.row,l.column,l.row,l.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(u){var p=o.createAnchor(u.row,u.column);p.$insertRight=!0,p.detach(),s.others.push(p)}),a.setUndoSelect(!1)},f.prototype.showOtherMarkers=function(){if(!this.othersActive){var s=this.session,o=this;this.othersActive=!0,this.others.forEach(function(a){a.markerId=s.addMarker(new i(a.row,a.column,a.row,a.column+o.length),o.othersClass,null,!1)})}},f.prototype.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var s=0;s=this.pos.column&&o.start.column<=this.pos.column+this.length+1,u=o.start.column-this.pos.column;if(this.updateAnchors(s),l&&(this.length+=a),l&&!this.session.$fromUndo){if(s.action==="insert")for(var p=this.others.length-1;p>=0;p--){var m=this.others[p],v={row:m.row,column:m.column+u};this.doc.insertMergedLines(v,s.lines)}else if(s.action==="remove")for(var p=this.others.length-1;p>=0;p--){var m=this.others[p],v={row:m.row,column:m.column+u};this.doc.remove(new i(v.row,v.column,v.row,v.column-a))}}this.$updating=!1,this.updateMarkers()}},f.prototype.updateAnchors=function(s){this.pos.onChange(s);for(var o=this.others.length;o--;)this.others[o].onChange(s);this.updateMarkers()},f.prototype.updateMarkers=function(){if(!this.$updating){var s=this,o=this.session,a=function(u,p){o.removeMarker(u.markerId),u.markerId=o.addMarker(new i(u.row,u.column,u.row,u.column+s.length),p,null,!1)};a(this.pos,this.mainClass);for(var l=this.others.length;l--;)a(this.others[l],this.othersClass)}},f.prototype.onCursorChange=function(s){if(!(this.$updating||!this.session)){var o=this.session.selection.getCursor();o.row===this.pos.row&&o.column>=this.pos.column&&o.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",s)):(this.hideOtherMarkers(),this._emit("cursorLeave",s))}},f.prototype.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.off("change",this.$onUpdate),this.session.selection.off("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},f.prototype.cancel=function(){if(this.$undoStackDepth!==-1){for(var s=this.session.getUndoManager(),o=(s.$undoStack||s.$undostack).length-this.$undoStackDepth,a=0;a1?d.multiSelect.joinSelections():d.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(d){d.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(d){d.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(d){d.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],r.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(d){d.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(d){return d&&d.inMultiSelectMode}}];var i=n("../keyboard/hash_handler").HashHandler;r.keyboardHandler=new i(r.multiSelectCommands)}),ace.define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(n,r,h){var i=n("./range_list").RangeList,d=n("./range").Range,g=n("./selection").Selection,c=n("./mouse/multi_select_handler").onMouseDown,f=n("./lib/event"),s=n("./lib/lang"),o=n("./commands/multi_select_commands");r.commands=o.defaultCommands.concat(o.multiSelectCommands);var a=n("./search").Search,l=new a;function u(S,w,y){return l.$options.wrap=!0,l.$options.needle=w,l.$options.backwards=y==-1,l.find(S)}var p=n("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(p.prototype),(function(){this.ranges=null,this.rangeList=null,this.addRange=function(S,w){if(S){if(!this.inMultiSelectMode&&this.rangeCount===0){var y=this.toOrientedRange();if(this.rangeList.add(y),this.rangeList.add(S),this.rangeList.ranges.length!=2)return this.rangeList.removeAll(),w||this.fromOrientedRange(S);this.rangeList.removeAll(),this.rangeList.add(y),this.$onAddRange(y)}S.cursor||(S.cursor=S.end);var C=this.rangeList.add(S);return this.$onAddRange(S),C.length&&this.$onRemoveRange(C),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),w||this.fromOrientedRange(S)}},this.toSingleRange=function(S){S=S||this.ranges[0];var w=this.rangeList.removeAll();w.length&&this.$onRemoveRange(w),S&&this.fromOrientedRange(S)},this.substractPoint=function(S){var w=this.rangeList.substractPoint(S);if(w)return this.$onRemoveRange(w),w[0]},this.mergeOverlappingRanges=function(){var S=this.rangeList.merge();S.length&&this.$onRemoveRange(S)},this.$onAddRange=function(S){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(S),this._signal("addRange",{range:S})},this.$onRemoveRange=function(S){if(this.rangeCount=this.rangeList.ranges.length,this.rangeCount==1&&this.inMultiSelectMode){var w=this.rangeList.ranges.pop();S.push(w),this.rangeCount=0}for(var y=S.length;y--;){var C=this.ranges.indexOf(S[y]);this.ranges.splice(C,1)}this._signal("removeRange",{ranges:S}),this.rangeCount===0&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),w=w||this.ranges[0],w&&!w.isEqual(this.getRange())&&this.fromOrientedRange(w)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new i,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){for(var S=this.ranges.length?this.ranges:[this.getRange()],w=[],y=0;y1){var S=this.rangeList.ranges,w=S[S.length-1],y=d.fromPoints(S[0].start,w.end);this.toSingleRange(),this.setSelectionRange(y,w.cursor==w.start)}else{var C=this.session.documentToScreenPosition(this.cursor),M=this.session.documentToScreenPosition(this.anchor),E=this.rectangularRangeBlock(C,M);E.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(S,w,y){var C=[],M=S.column0;)O--;if(O>0)for(var D=0;C[D].isEmpty();)D++;for(var F=O;F>=D;F--)C[F].isEmpty()&&C.splice(F,1)}return C}}).call(g.prototype);var m=n("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(S){S.cursor||(S.cursor=S.end);var w=this.getSelectionStyle();return S.marker=this.session.addMarker(S,"ace_selection",w),this.session.$selectionMarkers.push(S),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,S},this.removeSelectionMarker=function(S){if(S.marker){this.session.removeMarker(S.marker);var w=this.session.$selectionMarkers.indexOf(S);w!=-1&&this.session.$selectionMarkers.splice(w,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(S){for(var w=this.session.$selectionMarkers,y=S.length;y--;){var C=S[y];if(C.marker){this.session.removeMarker(C.marker);var M=w.indexOf(C);M!=-1&&w.splice(M,1)}}this.session.selectionMarkerCount=w.length},this.$onAddRange=function(S){this.addSelectionMarker(S.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(S){this.removeSelectionMarkers(S.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(S){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(o.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(S){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(o.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(S){var w=S.command,y=S.editor;if(y.multiSelect){if(w.multiSelectAction)w.multiSelectAction=="forEach"?C=y.forEachSelection(w,S.args):w.multiSelectAction=="forEachLine"?C=y.forEachSelection(w,S.args,!0):w.multiSelectAction=="single"?(y.exitMultiSelectMode(),C=w.exec(y,S.args||{})):C=w.multiSelectAction(y,S.args||{});else{var C=w.exec(y,S.args||{});y.multiSelect.addRange(y.multiSelect.toOrientedRange()),y.multiSelect.mergeOverlappingRanges()}return C}},this.forEachSelection=function(S,w,y){if(!this.inVirtualSelectionMode){var C=y&&y.keepOrder,M=y==!0||y&&y.$byLines,E=this.session,T=this.selection,L=T.rangeList,$=(C?T:L).ranges,k;if(!$.length)return S.exec?S.exec(this,w||{}):S(this,w||{});var x=T._eventRegistry;T._eventRegistry={};var A=new g(E);this.inVirtualSelectionMode=!0;for(var R=$.length;R--;){if(M)for(;R>0&&$[R].start.row==$[R-1].end.row;)R--;A.fromOrientedRange($[R]),A.index=R,this.selection=E.selection=A;var I=S.exec?S.exec(this,w||{}):S(this,w||{});!k&&I!==void 0&&(k=I),A.toOrientedRange($[R])}A.detach(),this.selection=E.selection=T,this.inVirtualSelectionMode=!1,T._eventRegistry=x,T.mergeOverlappingRanges(),T.ranges[0]&&T.fromOrientedRange(T.ranges[0]);var N=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),N&&N.from==N.to&&this.renderer.animateScrolling(N.from),k}},this.exitMultiSelectMode=function(){!this.inMultiSelectMode||this.inVirtualSelectionMode||this.multiSelect.toSingleRange()},this.getSelectedText=function(){var S="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var w=this.multiSelect.rangeList.ranges,y=[],C=0;C0);T<0&&(T=0),L>=k&&(L=k-1)}var A=this.session.removeFullLines(T,L);A=this.$reAlignText(A,$),this.session.insert({row:T,column:0},A.join(` +`)+` +`),$||(E.start.column=0,E.end.column=A[A.length-1].length),this.selection.setRange(E)}else{M.forEach(function(O){w.substractPoint(O.cursor)});var R=0,I=1/0,N=y.map(function(O){var D=O.cursor,F=S.getLine(D.row),B=F.substr(D.column).search(/\S/g);return B==-1&&(B=0),D.column>R&&(R=D.column),Bj?S.insert(F,s.stringRepeat(" ",B-j)):S.remove(new d(F.row,F.column,F.row,F.column-B+j)),O.start.column=O.end.column=R,O.start.row=O.end.row=F.row,O.cursor=O.end}),w.fromOrientedRange(y[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}},this.$reAlignText=function(S,w){var y=!0,C=!0,M,E,T;return S.map(function(A){var R=A.match(/(\s*)(.*?)(\s*)([=:].*)/);return R?M==null?(M=R[1].length,E=R[2].length,T=R[3].length,R):(M+E+T!=R[1].length+R[2].length+R[3].length&&(C=!1),M!=R[1].length&&(y=!1),M>R[1].length&&(M=R[1].length),ER[3].length&&(T=R[3].length),R):[A]}).map(w?$:y?C?k:$:x);function L(A){return s.stringRepeat(" ",A)}function $(A){return A[2]?L(M)+A[2]+L(E-A[2].length+T)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}function k(A){return A[2]?L(M+E-A[2].length)+A[2]+L(T)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}function x(A){return A[2]?L(M)+A[2]+L(T)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}}}).call(m.prototype);function v(S,w){return S.row==w.row&&S.column==w.column}r.onSessionChange=function(S){var w=S.session;w&&!w.multiSelect&&(w.$selectionMarkers=[],w.selection.$initRangeList(),w.multiSelect=w.selection),this.multiSelect=w&&w.multiSelect;var y=S.oldSession;y&&(y.multiSelect.off("addRange",this.$onAddRange),y.multiSelect.off("removeRange",this.$onRemoveRange),y.multiSelect.off("multiSelect",this.$onMultiSelect),y.multiSelect.off("singleSelect",this.$onSingleSelect),y.multiSelect.lead.off("change",this.$checkMultiselectChange),y.multiSelect.anchor.off("change",this.$checkMultiselectChange)),w&&(w.multiSelect.on("addRange",this.$onAddRange),w.multiSelect.on("removeRange",this.$onRemoveRange),w.multiSelect.on("multiSelect",this.$onMultiSelect),w.multiSelect.on("singleSelect",this.$onSingleSelect),w.multiSelect.lead.on("change",this.$checkMultiselectChange),w.multiSelect.anchor.on("change",this.$checkMultiselectChange)),w&&this.inMultiSelectMode!=w.selection.inMultiSelectMode&&(w.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())};function b(S){S.$multiselectOnSessionChange||(S.$onAddRange=S.$onAddRange.bind(S),S.$onRemoveRange=S.$onRemoveRange.bind(S),S.$onMultiSelect=S.$onMultiSelect.bind(S),S.$onSingleSelect=S.$onSingleSelect.bind(S),S.$multiselectOnSessionChange=r.onSessionChange.bind(S),S.$checkMultiselectChange=S.$checkMultiselectChange.bind(S),S.$multiselectOnSessionChange(S),S.on("changeSession",S.$multiselectOnSessionChange),S.on("mousedown",c),S.commands.addCommands(o.defaultCommands),_(S))}function _(S){if(!S.textInput)return;var w=S.textInput.getElement(),y=!1;f.addListener(w,"keydown",function(M){var E=M.keyCode==18&&!(M.ctrlKey||M.shiftKey||M.metaKey);S.$blockSelectEnabled&&E?y||(S.renderer.setMouseCursor("crosshair"),y=!0):y&&C()},S),f.addListener(w,"keyup",C,S),f.addListener(w,"blur",C,S);function C(M){y&&(S.renderer.setMouseCursor(""),y=!1)}}r.MultiSelect=b,n("./config").defineOptions(m.prototype,"editor",{enableMultiselect:{set:function(S){b(this),S?this.on("mousedown",c):this.off("mousedown",c)},value:!0},enableBlockSelect:{set:function(S){this.$blockSelectEnabled=S},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(n,r,h){var i=n("../../range").Range,d=r.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(g,c,f){var s=g.getLine(f);return this.foldingStartMarker.test(s)?"start":c=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(s)?"end":""},this.getFoldWidgetRange=function(g,c,f){return null},this.indentationBlock=function(g,c,f){var s=/\S/,o=g.getLine(c),a=o.search(s);if(a!=-1){for(var l=f||o.length,u=g.getLength(),p=c,m=c;++cp){var _=g.getLine(m).length;return new i(p,l,m,_)}}},this.openingBracketBlock=function(g,c,f,s,o){var a={row:f,column:s+1},l=g.$findClosingBracket(c,a,o);if(l){var u=g.foldWidgets[l.row];return u==null&&(u=g.getFoldWidget(l.row)),u=="start"&&l.row>a.row&&(l.row--,l.column=g.getLine(l.row).length),i.fromPoints(a,l)}},this.closingBracketBlock=function(g,c,f,s,o){var a={row:f,column:s},l=g.$findOpeningBracket(c,a);if(l)return l.column++,a.column--,i.fromPoints(l,a)}}).call(d.prototype)}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range","ace/config"],function(n,r,h){var i=n("../line_widgets").LineWidgets,d=n("../lib/dom"),g=n("../range").Range,c=n("../config").nls;function f(o,a,l){for(var u=0,p=o.length-1;u<=p;){var m=u+p>>1,v=l(a,o[m]);if(v>0)u=m+1;else if(v<0)p=m-1;else return m}return-(u+1)}function s(o,a,l){var u=o.getAnnotations().sort(g.comparePoints);if(u.length){var p=f(u,{row:a,column:-1},g.comparePoints);p<0&&(p=-p-1),p>=u.length?p=l>0?0:u.length-1:p===0&&l<0&&(p=u.length-1);var m=u[p];if(!(!m||!l)){if(m.row===a){do m=u[p+=l];while(m&&m.row===a);if(!m)return u.slice()}var v=[];a=m.row;do v[l<0?"unshift":"push"](m),m=u[p+=l];while(m&&m.row==a);return v.length&&v}}}r.showErrorMarker=function(o,a){var l=o.session;l.widgetManager||(l.widgetManager=new i(l),l.widgetManager.attach(o));var u=o.getCursorPosition(),p=u.row,m=l.widgetManager.getWidgetsAtRow(p).filter(function(E){return E.type=="errorMarker"})[0];m?m.destroy():p-=a;var v=s(l,p,a),b;if(v){var _=v[0];u.column=(_.pos&&typeof _.column!="number"?_.pos.sc:_.column)||0,u.row=_.row,b=o.renderer.$gutterLayer.$annotations[u.row]}else{if(m)return;b={displayText:[c("error-marker.good-state","Looks good!")],className:"ace_ok"}}o.session.unfold(u.row),o.selection.moveToPosition(u);var S={row:u.row,fixedWidth:!0,coverGutter:!0,el:d.createElement("div"),type:"errorMarker"},w=S.el.appendChild(d.createElement("div")),y=S.el.appendChild(d.createElement("div"));y.className="error_widget_arrow "+b.className;var C=o.renderer.$cursorLayer.getPixelPosition(u).left;y.style.left=C+o.renderer.gutterWidth-5+"px",S.el.className="error_widget_wrapper",w.className="error_widget "+b.className,b.displayText.forEach(function(E,T){w.appendChild(d.createTextNode(E)),T-1}function lC(z,V){var Z=this.__data__,ne=ka(Z,z);return ne<0?(++this.size,Z.push([z,V])):Z[ne][1]=V,this}vn.prototype.clear=iC,vn.prototype.delete=oC,vn.prototype.get=sC,vn.prototype.has=aC,vn.prototype.set=lC;function yr(z){var V=-1,Z=z==null?0:z.length;for(this.clear();++VKe))return!1;var Ie=ce.get(z);if(Ie&&ce.get(V))return Ie==V;var $t=-1,Kt=!0,ot=Z&i?new Ca:void 0;for(ce.set(z,V),ce.set(V,z);++$t-1&&z%1==0&&z-1&&z%1==0&&z<=d}function jm(z){var V=typeof z;return z!=null&&(V=="object"||V=="function")}function Ro(z){return z!=null&&typeof z=="object"}var Wm=Re?fr(Re):kC;function PC(z){return zC(z)?xC(z):_C(z)}function jC(){return[]}function WC(){return!1}e.exports=FC}(ma,ma.exports);var lm=ma.exports,Ut={};Object.defineProperty(Ut,"__esModule",{value:!0}),Ut.getAceInstance=Ut.debounce=Ut.editorEvents=Ut.editorOptions=void 0;var Qx=["minLines","maxLines","readOnly","highlightActiveLine","tabSize","enableBasicAutocompletion","enableLiveAutocompletion","enableSnippets"];Ut.editorOptions=Qx;var qx=["onChange","onFocus","onInput","onBlur","onCopy","onPaste","onSelectionChange","onCursorChange","onScroll","handleOptions","updateRef"];Ut.editorEvents=qx;var Zx=function(){var e;return typeof window>"u"?(Oe.window={},e=Co,delete Oe.window):window.ace?(e=window.ace,e.acequire=window.ace.require||window.ace.acequire):e=Co,e};Ut.getAceInstance=Zx;var Xx=function(e,t){var n=null;return function(){var r=this,h=arguments;clearTimeout(n),n=setTimeout(function(){e.apply(r,h)},t)}};Ut.debounce=Xx;var Jx=Oe&&Oe.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,h){r.__proto__=h}||function(r,h){for(var i in h)Object.prototype.hasOwnProperty.call(h,i)&&(r[i]=h[i])},e(t,n)};return function(t,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),Hu=Oe&&Oe.__assign||function(){return Hu=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0&&this.handleMarkers(C);var L=this.editor.$options;ui.editorOptions.forEach(function($){L.hasOwnProperty($)?n.editor.setOption($,n.props[$]):n.props[$]&&console.warn("ReactAce: editor option ".concat($," was activated but not found. Did you need to import a related tool or did you possibly mispell the option?"))}),this.handleOptions(this.props),Array.isArray(w)&&w.forEach(function($){typeof $.exec=="string"?n.editor.commands.bindKey($.bindKey,$.exec):n.editor.commands.addCommand($)}),_&&this.editor.setKeyboardHandler("ace/keyboard/"+_),h&&(this.refEditor.className+=" "+h),S&&S(this.editor),this.editor.resize(),c&&this.editor.focus()},t.prototype.componentDidUpdate=function(n){for(var r=n,h=this.props,i=0;i 0!";if(o!=this.$splits){if(o>this.$splits){for(;this.$splitso;)a=this.$editors[this.$splits-1],this.$container.removeChild(a.container),this.$splits--;this.resize()}},this.getSplits=function(){return this.$splits},this.getEditor=function(o){return this.$editors[o]},this.getCurrentEditor=function(){return this.$cEditor},this.focus=function(){this.$cEditor.focus()},this.blur=function(){this.$cEditor.blur()},this.setTheme=function(o){this.$editors.forEach(function(a){a.setTheme(o)})},this.setKeyboardHandler=function(o){this.$editors.forEach(function(a){a.setKeyboardHandler(o)})},this.forEach=function(o,a){this.$editors.forEach(o,a)},this.$fontSize="",this.setFontSize=function(o){this.$fontSize=o,this.forEach(function(a){a.setFontSize(o)})},this.$cloneSession=function(o){var a=new f(o.getDocument(),o.getMode()),l=o.getUndoManager();return a.setUndoManager(l),a.setTabSize(o.getTabSize()),a.setUseSoftTabs(o.getUseSoftTabs()),a.setOverwrite(o.getOverwrite()),a.setBreakpoints(o.getBreakpoints()),a.setUseWrapMode(o.getUseWrapMode()),a.setUseWorker(o.getUseWorker()),a.setWrapLimitRange(o.$wrapLimitRange.min,o.$wrapLimitRange.max),a.$foldData=o.$cloneFoldData(),a},this.setSession=function(o,a){var l;a==null?l=this.$cEditor:l=this.$editors[a];var u=this.$editors.some(function(p){return p.session===o});return u&&(o=this.$cloneSession(o)),l.setSession(o),o},this.getOrientation=function(){return this.$orientation},this.setOrientation=function(o){this.$orientation!=o&&(this.$orientation=o,this.resize())},this.resize=function(){var o=this.$container.clientWidth,a=this.$container.clientHeight,l;if(this.$orientation==this.BESIDE)for(var u=o/this.$splits,p=0;p-1}function RS(e,t){var n=this.__data__,r=ba(n,e);return r<0?n.push([e,t]):n[r][1]=t,this}hi.prototype.clear=AS,hi.prototype.delete=TS,hi.prototype.get=ES,hi.prototype.has=LS,hi.prototype.set=RS;function dr(e){var t=-1,n=e?e.length:0;for(this.clear();++t0&&n.handleMarkers(N,$);for(var x=0;x"u"&&(this.Diff_Timeout<=0?c=Number.MAX_VALUE:c=new Date().getTime()+this.Diff_Timeout*1e3);var f=c;if(i==null||d==null)throw new Error("Null input. (diff_main)");if(i==d)return i?[new t.Diff(h,i)]:[];typeof g>"u"&&(g=!0);var s=g,o=this.diff_commonPrefix(i,d),a=i.substring(0,o);i=i.substring(o),d=d.substring(o),o=this.diff_commonSuffix(i,d);var l=i.substring(i.length-o);i=i.substring(0,i.length-o),d=d.substring(0,d.length-o);var u=this.diff_compute_(i,d,s,f);return a&&u.unshift(new t.Diff(h,a)),l&&u.push(new t.Diff(h,l)),this.diff_cleanupMerge(u),u},t.prototype.diff_compute_=function(i,d,g,c){var f;if(!i)return[new t.Diff(r,d)];if(!d)return[new t.Diff(n,i)];var s=i.length>d.length?i:d,o=i.length>d.length?d:i,a=s.indexOf(o);if(a!=-1)return f=[new t.Diff(r,s.substring(0,a)),new t.Diff(h,o),new t.Diff(r,s.substring(a+o.length))],i.length>d.length&&(f[0][0]=f[2][0]=n),f;if(o.length==1)return[new t.Diff(n,i),new t.Diff(r,d)];var l=this.diff_halfMatch_(i,d);if(l){var u=l[0],p=l[1],m=l[2],v=l[3],b=l[4],_=this.diff_main(u,m,g,c),S=this.diff_main(p,v,g,c);return _.concat([new t.Diff(h,b)],S)}return g&&i.length>100&&d.length>100?this.diff_lineMode_(i,d,c):this.diff_bisect_(i,d,c)},t.prototype.diff_lineMode_=function(i,d,g){var c=this.diff_linesToChars_(i,d);i=c.chars1,d=c.chars2;var f=c.lineArray,s=this.diff_main(i,d,!1,g);this.diff_charsToLines_(s,f),this.diff_cleanupSemantic(s),s.push(new t.Diff(h,""));for(var o=0,a=0,l=0,u="",p="";o=1&&l>=1){s.splice(o-a-l,a+l),o=o-a-l;for(var m=this.diff_main(u,p,!1,g),v=m.length-1;v>=0;v--)s.splice(o,0,m[v]);o=o+m.length}l=0,a=0,u="",p="";break}o++}return s.pop(),s},t.prototype.diff_bisect_=function(i,d,g){for(var c=i.length,f=d.length,s=Math.ceil((c+f)/2),o=s,a=2*s,l=new Array(a),u=new Array(a),p=0;pg);y++){for(var C=-y+b;C<=y-_;C+=2){var M=o+C,E;C==-y||C!=y&&l[M-1]c)_+=2;else if(T>f)b+=2;else if(v){var L=o+m-C;if(L>=0&&L=$)return this.diff_bisectSplit_(i,d,E,T,g)}}}for(var k=-y+S;k<=y-w;k+=2){var L=o+k,$;k==-y||k!=y&&u[L-1]c)w+=2;else if(x>f)S+=2;else if(!v){var M=o+m-k;if(M>=0&&M=$)return this.diff_bisectSplit_(i,d,E,T,g)}}}}return[new t.Diff(n,i),new t.Diff(r,d)]},t.prototype.diff_bisectSplit_=function(i,d,g,c,f){var s=i.substring(0,g),o=d.substring(0,c),a=i.substring(g),l=d.substring(c),u=this.diff_main(s,o,!1,f),p=this.diff_main(a,l,!1,f);return u.concat(p)},t.prototype.diff_linesToChars_=function(i,d){var g=[],c={};g[0]="";function f(l){for(var u="",p=0,m=-1,v=g.length;mc?i=i.substring(g-c):gd.length?i:d,c=i.length>d.length?d:i;if(g.length<4||c.length*2=_.length?[E,T,L,$,M]:null}var o=s(g,c,Math.ceil(g.length/4)),a=s(g,c,Math.ceil(g.length/2)),l;if(!o&&!a)return null;a?o?l=o[4].length>a[4].length?o:a:l=a:l=o;var u,p,m,v;i.length>d.length?(u=l[0],p=l[1],m=l[2],v=l[3]):(m=l[0],v=l[1],u=l[2],p=l[3]);var b=l[4];return[u,p,m,v,b]},t.prototype.diff_cleanupSemantic=function(i){for(var d=!1,g=[],c=0,f=null,s=0,o=0,a=0,l=0,u=0;s0?g[c-1]:-1,o=0,a=0,l=0,u=0,f=null,d=!0)),s++;for(d&&this.diff_cleanupMerge(i),this.diff_cleanupSemanticLossless(i),s=1;s=b?(v>=p.length/2||v>=m.length/2)&&(i.splice(s,0,new t.Diff(h,m.substring(0,v))),i[s-1][1]=p.substring(0,p.length-v),i[s+1][1]=m.substring(v),s++):(b>=p.length/2||b>=m.length/2)&&(i.splice(s,0,new t.Diff(h,p.substring(0,b))),i[s-1][0]=r,i[s-1][1]=m.substring(0,m.length-b),i[s+1][0]=n,i[s+1][1]=p.substring(b),s++),s++}s++}},t.prototype.diff_cleanupSemanticLossless=function(i){function d(b,_){if(!b||!_)return 6;var S=b.charAt(b.length-1),w=_.charAt(0),y=S.match(t.nonAlphaNumericRegex_),C=w.match(t.nonAlphaNumericRegex_),M=y&&S.match(t.whitespaceRegex_),E=C&&w.match(t.whitespaceRegex_),T=M&&S.match(t.linebreakRegex_),L=E&&w.match(t.linebreakRegex_),$=T&&b.match(t.blanklineEndRegex_),k=L&&_.match(t.blanklineStartRegex_);return $||k?5:T||L?4:y&&!M&&E?3:M||E?2:y||C?1:0}for(var g=1;g=m&&(m=v,l=c,u=f,p=s)}i[g-1][1]!=l&&(l?i[g-1][1]=l:(i.splice(g-1,1),g--),i[g][1]=u,p?i[g+1][1]=p:(i.splice(g+1,1),g--))}g++}},t.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/,t.whitespaceRegex_=/\s/,t.linebreakRegex_=/[\r\n]/,t.blanklineEndRegex_=/\n\r?\n$/,t.blanklineStartRegex_=/^\r?\n\r?\n/,t.prototype.diff_cleanupEfficiency=function(i){for(var d=!1,g=[],c=0,f=null,s=0,o=!1,a=!1,l=!1,u=!1;s0?g[c-1]:-1,l=u=!1),d=!0)),s++;d&&this.diff_cleanupMerge(i)},t.prototype.diff_cleanupMerge=function(i){i.push(new t.Diff(h,""));for(var d=0,g=0,c=0,f="",s="",o;d1?(g!==0&&c!==0&&(o=this.diff_commonPrefix(s,f),o!==0&&(d-g-c>0&&i[d-g-c-1][0]==h?i[d-g-c-1][1]+=s.substring(0,o):(i.splice(0,0,new t.Diff(h,s.substring(0,o))),d++),s=s.substring(o),f=f.substring(o)),o=this.diff_commonSuffix(s,f),o!==0&&(i[d][1]=s.substring(s.length-o)+i[d][1],s=s.substring(0,s.length-o),f=f.substring(0,f.length-o))),d-=g+c,i.splice(d,g+c),f.length&&(i.splice(d,0,new t.Diff(n,f)),d++),s.length&&(i.splice(d,0,new t.Diff(r,s)),d++),d++):d!==0&&i[d-1][0]==h?(i[d-1][1]+=i[d][1],i.splice(d,1)):d++,c=0,g=0,f="",s="";break}i[i.length-1][1]===""&&i.pop();var a=!1;for(d=1;dd));o++)f=g,s=c;return i.length!=o&&i[o][0]===n?s:s+(d-f)},t.prototype.diff_prettyHtml=function(i){for(var d=[],g=/&/g,c=//g,s=/\n/g,o=0;o");switch(a){case r:d[o]=''+u+"";break;case n:d[o]=''+u+"";break;case h:d[o]=""+u+"";break}}return d.join("")},t.prototype.diff_text1=function(i){for(var d=[],g=0;gthis.Match_MaxBits)throw new Error("Pattern too long for this browser.");var c=this.match_alphabet_(d),f=this;function s(E,T){var L=E/d.length,$=Math.abs(g-T);return f.Match_Distance?L+$/f.Match_Distance:$?1:L}var o=this.Match_Threshold,a=i.indexOf(d,g);a!=-1&&(o=Math.min(s(0,a),o),a=i.lastIndexOf(d,g+d.length),a!=-1&&(o=Math.min(s(0,a),o)));var l=1<=_;y--){var C=c[i.charAt(y-1)];if(b===0?w[y]=(w[y+1]<<1|1)&C:w[y]=(w[y+1]<<1|1)&C|((v[y+1]|v[y])<<1|1)|v[y+1],w[y]&l){var M=s(b,y-1);if(M<=o)if(o=M,a=y-1,a>g)_=Math.max(1,2*g-a);else break}}if(s(b+1,g)>o)break;v=w}return a},t.prototype.match_alphabet_=function(i){for(var d={},g=0;g"u")c=i,f=this.diff_main(c,d,!0),f.length>2&&(this.diff_cleanupSemantic(f),this.diff_cleanupEfficiency(f));else if(i&&typeof i=="object"&&typeof d>"u"&&typeof g>"u")f=i,c=this.diff_text1(f);else if(typeof i=="string"&&d&&typeof d=="object"&&typeof g>"u")c=i,f=d;else if(typeof i=="string"&&typeof d=="string"&&g&&typeof g=="object")c=i,f=g;else throw new Error("Unknown call format to patch_make.");if(f.length===0)return[];for(var s=[],o=new t.patch_obj,a=0,l=0,u=0,p=c,m=c,v=0;v=2*this.Patch_Margin&&a&&(this.patch_addContext_(o,p),s.push(o),o=new t.patch_obj,a=0,p=m,l=u);break}b!==r&&(l+=_.length),b!==n&&(u+=_.length)}return a&&(this.patch_addContext_(o,p),s.push(o)),s},t.prototype.patch_deepCopy=function(i){for(var d=[],g=0;gthis.Match_MaxBits?(l=this.match_main(d,a.substring(0,this.Match_MaxBits),o),l!=-1&&(u=this.match_main(d,a.substring(a.length-this.Match_MaxBits),o+a.length-this.Match_MaxBits),(u==-1||l>=u)&&(l=-1))):l=this.match_main(d,a,o),l==-1)f[s]=!1,c-=i[s].length2-i[s].length1;else{f[s]=!0,c=l-o;var p;if(u==-1?p=d.substring(l,l+a.length):p=d.substring(l,u+this.Match_MaxBits),a==p)d=d.substring(0,l)+this.diff_text2(i[s].diffs)+d.substring(l+a.length);else{var m=this.diff_main(a,p,!1);if(a.length>this.Match_MaxBits&&this.diff_levenshtein(m)/a.length>this.Patch_DeleteThreshold)f[s]=!1;else{this.diff_cleanupSemanticLossless(m);for(var v=0,b,_=0;_s[0][1].length){var o=d-s[0][1].length;s[0][1]=g.substring(s[0][1].length)+s[0][1],f.start1-=o,f.start2-=o,f.length1+=o,f.length2+=o}if(f=i[i.length-1],s=f.diffs,s.length==0||s[s.length-1][0]!=h)s.push(new t.Diff(h,g)),f.length1+=d,f.length2+=d;else if(d>s[s.length-1][1].length){var o=d-s[s.length-1][1].length;s[s.length-1][1]+=g.substring(0,o),f.length1+=o,f.length2+=o}return g},t.prototype.patch_splitMax=function(i){for(var d=this.Match_MaxBits,g=0;g2*d?(a.length1+=p.length,f+=p.length,l=!1,a.diffs.push(new t.Diff(u,p)),c.diffs.shift()):(p=p.substring(0,d-a.length1-this.Patch_Margin),a.length1+=p.length,f+=p.length,u===h?(a.length2+=p.length,s+=p.length):l=!1,a.diffs.push(new t.Diff(u,p)),p==c.diffs[0][1]?c.diffs.shift():c.diffs[0][1]=c.diffs[0][1].substring(p.length))}o=this.diff_text2(a.diffs),o=o.substring(o.length-this.Patch_Margin);var m=this.diff_text1(c.diffs).substring(0,this.Patch_Margin);m!==""&&(a.length1+=m.length,a.length2+=m.length,a.diffs.length!==0&&a.diffs[a.diffs.length-1][0]===h?a.diffs[a.diffs.length-1][1]+=m:a.diffs.push(new t.Diff(h,m))),l||i.splice(++g,0,a)}}},t.prototype.patch_toText=function(i){for(var d=[],g=0;g"a"}),[T]}},{regex:"/\\w*}",onMatch:function(T,L,$){var k=$.shift();return k&&(k.flag=T.slice(1,-1)),this.next=k&&k.tabstopId?"start":"",[k||T]},next:"start"},{regex:/\$(?:\d+|\w+)/,onMatch:function(T,L,$){return[{text:T.slice(1)}]}},{regex:/\${\w+/,onMatch:function(T,L,$){var k={text:T.slice(2)};return $.unshift(k),[k]},next:"formatStringVar"},{regex:/\n/,token:"newline",merge:!1},{regex:/}/,onMatch:function(T,L,$){var k=$.shift();return this.next=k&&k.tabstopId?"start":"",[k||T]},next:"start"}],formatStringVar:[{regex:/:\/\w+}/,onMatch:function(T,L,$){var k=$[0];return k.formatFunction=T.slice(2,-1),[$.shift()]},next:"formatString"},E,{regex:/:[\?\-+]?/,onMatch:function(T,L,$){T[1]=="+"&&($[0].ifEnd=$[0]),T[1]=="?"&&($[0].expectElse=!0)},next:"formatString"},{regex:"([^:}\\\\]|\\\\.)*:?",token:"",next:"formatString"}]}),y.$tokenizer},y.prototype.tokenizeTmSnippet=function(C,M){return this.getTokenizer().getLineTokens(C,M).tokens.map(function(E){return E.value||E})},y.prototype.getVariableValue=function(C,M,E){if(/^\d+$/.test(M))return(this.variables.__||{})[M]||"";if(/^[A-Z]\d+$/.test(M))return(this.variables[M[0]+"__"]||{})[M.substr(1)]||"";if(M=M.replace(/^TM_/,""),!this.variables.hasOwnProperty(M))return"";var T=this.variables[M];return typeof T=="function"&&(T=this.variables[M](C,M,E)),T??""},y.prototype.tmStrFormat=function(C,M,E){if(!M.fmt)return C;var T=M.flag||"",L=M.guard;L=new RegExp(L,T.replace(/[^gim]/g,""));var $=typeof M.fmt=="string"?this.tokenizeTmSnippet(M.fmt,"formatString"):M.fmt,k=this,x=C.replace(L,function(){var A=k.variables.__;k.variables.__=[].slice.call(arguments);for(var R=k.resolveVariables($,E),I="E",N=0;N=0&&x.splice(A,1)}}C.content?L(C):Array.isArray(C)&&C.forEach(L)},y.prototype.parseSnippetFile=function(C){C=C.replace(/\r/g,"");for(var M=[],E={},T=/^#.*|^({[\s\S]*})\s*$|^(\S+) (.*)$|^((?:\n*\t.*)+)/gm,L;L=T.exec(C);){if(L[1])try{E=JSON.parse(L[1]),M.push(E)}catch{}if(L[4])E.content=L[4].replace(/^\t/gm,""),M.push(E),E={};else{var $=L[2],k=L[3];if($=="regex"){var x=/\/((?:[^\/\\]|\\.)*)|$/g;E.guard=x.exec(k)[1],E.trigger=x.exec(k)[1],E.endTrigger=x.exec(k)[1],E.endGuard=x.exec(k)[1]}else $=="snippet"?(E.tabTrigger=k.match(/^\S*/)[0],E.name||(E.name=k)):$&&(E[$]=k)}}return M},y.prototype.getSnippetByName=function(C,M){var E=this.snippetNameMap,T;return this.getActiveScopes(M).some(function(L){var $=E[L];return $&&(T=$[C]),!!T},this),T},y}();d.implement(m.prototype,g);var v=function(y,C,M){M===void 0&&(M={});var E=y.getCursorPosition(),T=y.session.getLine(E.row),L=y.session.getTabString(),$=T.match(/^\s*/)[0];E.column<$.length&&($=$.slice(0,E.column)),C=C.replace(/\r/g,"");var k=this.tokenizeTmSnippet(C);k=this.resolveVariables(k,y),k=k.map(function(U){return U==` +`&&!M.excludeExtraIndent?U+$:typeof U=="string"?U.replace(/\t/g,L):U});var x=[];k.forEach(function(U,K){if(typeof U=="object"){var q=U.tabstopId,X=x[q];if(X||(X=x[q]=[],X.index=q,X.value="",X.parents={}),X.indexOf(U)===-1){U.choices&&!X.choices&&(X.choices=U.choices),X.push(U);var ee=k.indexOf(U,K+1);if(ee!==-1){var se=k.slice(K+1,ee),le=se.some(function(je){return typeof je=="object"});le&&!X.value?X.value=se:se.length&&(!X.value||typeof X.value!="string")&&(X.value=se.join(""))}}}}),x.forEach(function(U){U.length=0});var A={};function R(U){for(var K=[],q=0;q1?(P=K[K.length-1].length,j+=K.length-1):P+=U.length,H+=U}else U&&(U.start?U.end={row:j,column:P}:U.start={row:j,column:P})}),{text:H,tabstops:x,tokens:k}},b=function(){function y(C){if(this.index=0,this.ranges=[],this.tabstops=[],C.tabstopManager)return C.tabstopManager;C.tabstopManager=this,this.$onChange=this.onChange.bind(this),this.$onChangeSelection=c.delayedCall(this.onChangeSelection.bind(this)).schedule,this.$onChangeSession=this.onChangeSession.bind(this),this.$onAfterExec=this.onAfterExec.bind(this),this.attach(C)}return y.prototype.attach=function(C){this.$openTabstops=null,this.selectedTabstop=null,this.editor=C,this.session=C.session,this.editor.on("change",this.$onChange),this.editor.on("changeSelection",this.$onChangeSelection),this.editor.on("changeSession",this.$onChangeSession),this.editor.commands.on("afterExec",this.$onAfterExec),this.editor.keyBinding.addKeyboardHandler(this.keyboardHandler)},y.prototype.detach=function(){this.tabstops.forEach(this.removeTabstopMarkers,this),this.ranges.length=0,this.tabstops.length=0,this.selectedTabstop=null,this.editor.off("change",this.$onChange),this.editor.off("changeSelection",this.$onChangeSelection),this.editor.off("changeSession",this.$onChangeSession),this.editor.commands.off("afterExec",this.$onAfterExec),this.editor.keyBinding.removeKeyboardHandler(this.keyboardHandler),this.editor.tabstopManager=null,this.session=null,this.editor=null},y.prototype.onChange=function(C){for(var M=C.action[0]=="r",E=this.selectedTabstop||{},T=E.parents||{},L=this.tabstops.slice(),$=0;$2&&(this.tabstops.length&&k.push(k.splice(2,1)[0]),this.tabstops.splice.apply(this.tabstops,k))},y.prototype.addTabstopMarkers=function(C){var M=this.session;C.forEach(function(E){E.markerId||(E.markerId=M.addMarker(E,"ace_snippet-marker","text"))})},y.prototype.removeTabstopMarkers=function(C){var M=this.session;C.forEach(function(E){M.removeMarker(E.markerId),E.markerId=null})},y.prototype.updateTabstopMarkers=function(){if(this.selectedTabstop){var C=this.selectedTabstop.snippetId;this.selectedTabstop.index===0&&C--,this.tabstops.forEach(function(M){M.snippetId===C?this.addTabstopMarkers(M):this.removeTabstopMarkers(M)},this)}},y.prototype.removeRange=function(C){var M=C.tabstop.indexOf(C);M!=-1&&C.tabstop.splice(M,1),M=this.ranges.indexOf(C),M!=-1&&this.ranges.splice(M,1),M=C.tabstop.rangeList.ranges.indexOf(C),M!=-1&&C.tabstop.splice(M,1),this.session.removeMarker(C.markerId),C.tabstop.length||(M=this.tabstops.indexOf(C.tabstop),M!=-1&&this.tabstops.splice(M,1),this.tabstops.length||this.detach())},y}();b.prototype.keyboardHandler=new o,b.prototype.keyboardHandler.bindKeys({Tab:function(y){r.snippetManager&&r.snippetManager.expandWithTab(y)||(y.tabstopManager.tabNext(1),y.renderer.scrollCursorIntoView())},"Shift-Tab":function(y){y.tabstopManager.tabNext(-1),y.renderer.scrollCursorIntoView()},Esc:function(y){y.tabstopManager.detach()}});var _=function(y,C){y.row==0&&(y.column+=C.column),y.row+=C.row},S=function(y,C){y.row==C.row&&(y.column-=C.column),y.row-=C.row};i.importCssString(` +.ace_snippet-marker { + -moz-box-sizing: border-box; + box-sizing: border-box; + background: rgba(194, 193, 208, 0.09); + border: 1px dotted rgba(211, 208, 235, 0.62); + position: absolute; +}`,"snippets.css",!1),r.snippetManager=new m;var w=n("./editor").Editor;(function(){this.insertSnippet=function(y,C){return r.snippetManager.insertSnippet(this,y,C)},this.expandSnippet=function(y){return r.snippetManager.expandWithTab(this,y)}}).call(w.prototype)}),ace.define("ace/autocomplete/popup",["require","exports","module","ace/virtual_renderer","ace/editor","ace/range","ace/lib/event","ace/lib/lang","ace/lib/dom","ace/config","ace/lib/useragent"],function(n,r,h){var i=n("../virtual_renderer").VirtualRenderer,d=n("../editor").Editor,g=n("../range").Range,c=n("../lib/event"),f=n("../lib/lang"),s=n("../lib/dom"),o=n("../config").nls,a=n("./../lib/useragent"),l=function(_){return"suggest-aria-id:".concat(_)},u=a.isSafari?"menu":"listbox",p=a.isSafari?"menuitem":"option",m=a.isSafari?"aria-current":"aria-selected",v=function(_){var S=new i(_);S.$maxLines=4;var w=new d(S);return w.setHighlightActiveLine(!1),w.setShowPrintMargin(!1),w.renderer.setShowGutter(!1),w.renderer.setHighlightGutterLine(!1),w.$mouseHandler.$focusTimeout=0,w.$highlightTagPending=!0,w},b=function(){function _(S){var w=s.createElement("div"),y=v(w);S&&S.appendChild(w),w.style.display="none",y.renderer.content.style.cursor="default",y.renderer.setStyle("ace_autocomplete"),y.renderer.$textLayer.element.setAttribute("role",u),y.renderer.$textLayer.element.setAttribute("aria-roledescription",o("autocomplete.popup.aria-roledescription","Autocomplete suggestions")),y.renderer.$textLayer.element.setAttribute("aria-label",o("autocomplete.popup.aria-label","Autocomplete suggestions")),y.renderer.textarea.setAttribute("aria-hidden","true"),y.setOption("displayIndentGuides",!1),y.setOption("dragDelay",150);var C=function(){};y.focus=C,y.$isFocused=!0,y.renderer.$cursorLayer.restartTimer=C,y.renderer.$cursorLayer.element.style.opacity="0",y.renderer.$maxLines=8,y.renderer.$keepTextAreaAtCursor=!1,y.setHighlightActiveLine(!1),y.session.highlight(""),y.session.$searchHighlight.clazz="ace_highlight-marker",y.on("mousedown",function(x){var A=x.getDocumentPosition();y.selection.moveToPosition(A),T.start.row=T.end.row=A.row,x.stop()});var M,E=new g(-1,0,-1,1/0),T=new g(-1,0,-1,1/0);T.id=y.session.addMarker(T,"ace_active-line","fullLine"),y.setSelectOnHover=function(x){x?E.id&&(y.session.removeMarker(E.id),E.id=null):E.id=y.session.addMarker(E,"ace_line-hover","fullLine")},y.setSelectOnHover(!1),y.on("mousemove",function(x){if(!M){M=x;return}if(!(M.x==x.x&&M.y==x.y)){M=x,M.scrollTop=y.renderer.scrollTop,y.isMouseOver=!0;var A=M.getDocumentPosition().row;E.start.row!=A&&(E.id||y.setRow(A),$(A))}}),y.renderer.on("beforeRender",function(){if(M&&E.start.row!=-1){M.$pos=null;var x=M.getDocumentPosition().row;E.id||y.setRow(x),$(x,!0)}}),y.renderer.on("afterRender",function(){var x=y.getRow(),A=y.renderer.$textLayer,R=A.element.childNodes[x-A.config.firstRow],I=document.activeElement;if(R!==y.selectedNode&&y.selectedNode&&(s.removeCssClass(y.selectedNode,"ace_selected"),I.removeAttribute("aria-activedescendant"),y.selectedNode.removeAttribute(m),y.selectedNode.removeAttribute("id")),y.selectedNode=R,R){s.addCssClass(R,"ace_selected");var N=l(x);R.id=N,A.element.setAttribute("aria-activedescendant",N),I.setAttribute("aria-activedescendant",N),R.setAttribute("role",p),R.setAttribute("aria-roledescription",o("autocomplete.popup.item.aria-roledescription","item")),R.setAttribute("aria-label",y.getData(x).caption||y.getData(x).value),R.setAttribute("aria-setsize",y.data.length),R.setAttribute("aria-posinset",x+1),R.setAttribute("aria-describedby","doc-tooltip"),R.setAttribute(m,"true")}});var L=function(){$(-1)},$=function(x,A){x!==E.start.row&&(E.start.row=E.end.row=x,A||y.session._emit("changeBackMarker"),y._emit("changeHoverMarker"))};y.getHoveredRow=function(){return E.start.row},c.addListener(y.container,"mouseout",function(){y.isMouseOver=!1,L()}),y.on("hide",L),y.on("changeSelection",L),y.session.doc.getLength=function(){return y.data.length},y.session.doc.getLine=function(x){var A=y.data[x];return typeof A=="string"?A:A&&A.value||""};var k=y.session.bgTokenizer;return k.$tokenizeRow=function(x){var A=y.data[x],R=[];if(!A)return R;typeof A=="string"&&(A={value:A});var I=A.caption||A.value||A.name;function N(U,K){U&&R.push({type:(A.className||"")+(K||""),value:U})}for(var O=I.toLowerCase(),D=(y.filterText||"").toLowerCase(),F=0,B=0,j=0;j<=D.length;j++)if(j!=B&&(A.matchMask&1<=B?R="bottom":R="top"),R==="top"?(j.bottom=x.top-this.$borderSize,j.top=j.bottom-B):R==="bottom"&&(j.top=x.top+A+this.$borderSize,j.bottom=j.top+B);var U=j.top>=0&&j.bottom<=O;if(!I&&!U)return!1;U?F.$maxPixelHeight=null:R==="top"?F.$maxPixelHeight=H:F.$maxPixelHeight=P,R==="top"?(N.style.top="",N.style.bottom=O-j.bottom+"px",y.isTopdown=!1):(N.style.top=j.top+"px",N.style.bottom="",y.isTopdown=!0),N.style.display="";var K=x.left;return K+N.offsetWidth>D&&(K=D-N.offsetWidth),N.style.left=K+"px",N.style.right="",y.isOpen||(y.isOpen=!0,this._signal("show"),M=null),y.anchorPos=x,y.anchor=R,!0},y.show=function(x,A,R){this.tryShow(x,A,R?"bottom":void 0,!0)},y.goTo=function(x){var A=this.getRow(),R=this.session.getLength()-1;switch(x){case"up":A=A<=0?R:A-1;break;case"down":A=A>=R?-1:A+1;break;case"start":A=0;break;case"end":A=R;break}this.setRow(A)},y.getTextLeftOffset=function(){return this.$borderSize+this.renderer.$padding+this.$imageSize},y.$imageSize=0,y.$borderSize=1,y}return _}();s.importCssString(` +.ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line { + background-color: #CAD6FA; + z-index: 1; +} +.ace_dark.ace_editor.ace_autocomplete .ace_marker-layer .ace_active-line { + background-color: #3a674e; +} +.ace_editor.ace_autocomplete .ace_line-hover { + border: 1px solid #abbffe; + margin-top: -1px; + background: rgba(233,233,253,0.4); + position: absolute; + z-index: 2; +} +.ace_dark.ace_editor.ace_autocomplete .ace_line-hover { + border: 1px solid rgba(109, 150, 13, 0.8); + background: rgba(58, 103, 78, 0.62); +} +.ace_completion-meta { + opacity: 0.5; + margin-left: 0.9em; +} +.ace_completion-message { + margin-left: 0.9em; + color: blue; +} +.ace_editor.ace_autocomplete .ace_completion-highlight{ + color: #2d69c7; +} +.ace_dark.ace_editor.ace_autocomplete .ace_completion-highlight{ + color: #93ca12; +} +.ace_editor.ace_autocomplete { + width: 300px; + z-index: 200000; + border: 1px lightgray solid; + position: fixed; + box-shadow: 2px 3px 5px rgba(0,0,0,.2); + line-height: 1.4; + background: #fefefe; + color: #111; +} +.ace_dark.ace_editor.ace_autocomplete { + border: 1px #484747 solid; + box-shadow: 2px 3px 5px rgba(0, 0, 0, 0.51); + line-height: 1.4; + background: #25282c; + color: #c1c1c1; +} +.ace_autocomplete .ace_text-layer { + width: calc(100% - 8px); +} +.ace_autocomplete .ace_line { + display: flex; + align-items: center; +} +.ace_autocomplete .ace_line > * { + min-width: 0; + flex: 0 0 auto; +} +.ace_autocomplete .ace_line .ace_ { + flex: 0 1 auto; + overflow: hidden; + text-overflow: ellipsis; +} +.ace_autocomplete .ace_completion-spacer { + flex: 1; +} +.ace_autocomplete.ace_loading:after { + content: ""; + position: absolute; + top: 0px; + height: 2px; + width: 8%; + background: blue; + z-index: 100; + animation: ace_progress 3s infinite linear; + animation-delay: 300ms; + transform: translateX(-100%) scaleX(1); +} +@keyframes ace_progress { + 0% { transform: translateX(-100%) scaleX(1) } + 50% { transform: translateX(625%) scaleX(2) } + 100% { transform: translateX(1500%) scaleX(3) } +} +@media (prefers-reduced-motion) { + .ace_autocomplete.ace_loading:after { + transform: translateX(625%) scaleX(2); + animation: none; + } +} +`,"autocompletion.css",!1),r.AcePopup=b,r.$singleLineEditor=v,r.getAriaId=l}),ace.define("ace/autocomplete/inline_screenreader",["require","exports","module"],function(n,r,h){var i=function(){function d(g){this.editor=g,this.screenReaderDiv=document.createElement("div"),this.screenReaderDiv.classList.add("ace_screenreader-only"),this.editor.container.appendChild(this.screenReaderDiv)}return d.prototype.setScreenReaderContent=function(g){for(!this.popup&&this.editor.completer&&this.editor.completer.popup&&(this.popup=this.editor.completer.popup,this.popup.renderer.on("afterRender",(function(){var f=this.popup.getRow(),s=this.popup.renderer.$textLayer,o=s.element.childNodes[f-s.config.firstRow];if(o){for(var a="doc-tooltip ",l=0;l=0&&c.test(d[s]);s--)f.push(d[s]);return f.reverse().join("")},r.retrieveFollowingIdentifier=function(d,g,c){c=c||i;for(var f=[],s=g;s0)for(var y=this.popup.getFirstVisibleRow();y<=this.popup.getLastVisibleRow();y++){var C=this.popup.getData(y);C&&(!w||C.hideInlinePreview)&&this.$seen(C)}},S.prototype.$onPopupShow=function(w){this.$onPopupChange(w),this.stickySelection=!1,this.stickySelectionDelay>=0&&this.stickySelectionTimer.schedule(this.stickySelectionDelay)},S.prototype.observeLayoutChanges=function(){if(!(this.$elements||!this.editor)){window.addEventListener("resize",this.onLayoutChange,{passive:!0}),window.addEventListener("wheel",this.mousewheelListener);for(var w=this.editor.container.parentNode,y=[];w;)y.push(w),w.addEventListener("scroll",this.onLayoutChange,{passive:!0}),w=w.parentNode;this.$elements=y}},S.prototype.unObserveLayoutChanges=function(){var w=this;window.removeEventListener("resize",this.onLayoutChange,{passive:!0}),window.removeEventListener("wheel",this.mousewheelListener),this.$elements&&this.$elements.forEach(function(y){y.removeEventListener("scroll",w.onLayoutChange,{passive:!0})}),this.$elements=null},S.prototype.onLayoutChange=function(){if(!this.popup.isOpen)return this.unObserveLayoutChanges();this.$updatePopupPosition(),this.updateDocTooltip()},S.prototype.$updatePopupPosition=function(){var w=this.editor,y=w.renderer,C=y.layerConfig.lineHeight,M=y.$cursorLayer.getPixelPosition(this.base,!0);M.left-=this.popup.getTextLeftOffset();var E=w.container.getBoundingClientRect();M.top+=E.top-y.layerConfig.offset,M.left+=E.left-w.renderer.scrollLeft,M.left+=y.gutterWidth;var T={top:M.top,left:M.left};y.$ghostText&&y.$ghostTextWidget&&this.base.row===y.$ghostText.position.row&&(T.top+=y.$ghostTextWidget.el.offsetHeight);var L=w.container.getBoundingClientRect().bottom-C,$=Lthis.filterText&&w.lastIndexOf(this.filterText,0)===0)var y=this.filtered;else var y=this.all;this.filterText=w,y=this.filterCompletions(y,this.filterText),y=y.sort(function(M,E){return E.exactMatch-M.exactMatch||E.$score-M.$score||(M.caption||M.value).localeCompare(E.caption||E.value)});var C=null;y=y.filter(function(M){var E=M.snippet||M.caption||M.value;return E===C?!1:(C=E,!0)}),this.filtered=y},S.prototype.filterCompletions=function(w,y){var C=[],M=y.toUpperCase(),E=y.toLowerCase();e:for(var T=0,L;L=w[T];T++){var $=!this.ignoreCaption&&L.caption||L.value||L.snippet;if($){var k=-1,x=0,A=0,R,I;if(this.exactMatch){if(y!==$.substr(0,y.length))continue e}else{var N=$.toLowerCase().indexOf(E);if(N>-1)A=N;else for(var O=0;O=0&&(F<0||D0&&(k===-1&&(A+=10),A+=I,x=x|1<",c.escapeHTML(M.caption),"","


",c.escapeHTML(a(M.snippet))].join(""))},id:"snippetCompleter"},u=[l,s,o];r.setCompleters=function(M){u.length=0,M&&u.push.apply(u,M)},r.addCompleter=function(M){u.push(M)},r.textCompleter=s,r.keyWordCompleter=o,r.snippetCompleter=l;var p={name:"expandSnippet",exec:function(M){return i.expandWithTab(M)},bindKey:"Tab"},m=function(M,E){v(E.session.$mode)},v=function(M){typeof M=="string"&&(M=g.$modes[M]),M&&(i.files||(i.files={}),b(M.$id,M.snippetFileId),M.modes&&M.modes.forEach(v))},b=function(M,E){!E||!M||i.files[M]||(i.files[M]={},g.loadModule(E,function(T){T&&(i.files[M]=T,!T.snippets&&T.snippetText&&(T.snippets=i.parseSnippetFile(T.snippetText)),i.register(T.snippets||[],T.scope),T.includeScopes&&(i.snippetMap[T.scope].includeScopes=T.includeScopes,T.includeScopes.forEach(function(L){v("ace/mode/"+L)})))}))},_=function(M){var E=M.editor,T=E.completer&&E.completer.activated;if(M.command.name==="backspace")T&&!f.getCompletionPrefix(E)&&E.completer.detach();else if(M.command.name==="insertstring"&&!T){S=M;var L=M.editor.$liveAutocompletionDelay;L?w.delay(L):y(M)}},S,w=c.delayedCall(function(){y(S)},0),y=function(M){var E=M.editor,T=f.getCompletionPrefix(E),L=M.args,$=f.triggerAutocomplete(E,L);if(T&&T.length>=E.$liveAutocompletionThreshold||$){var k=d.for(E);k.autoShown=!0,k.showPopup(E)}},C=n("../editor").Editor;n("../config").defineOptions(C.prototype,"editor",{enableBasicAutocompletion:{set:function(M){M?(this.completers||(this.completers=Array.isArray(M)?M:u),this.commands.addCommand(d.startCommand)):this.commands.removeCommand(d.startCommand)},value:!1},enableLiveAutocompletion:{set:function(M){M?(this.completers||(this.completers=Array.isArray(M)?M:u),this.commands.on("afterExec",_)):this.commands.off("afterExec",_)},value:!1},liveAutocompletionDelay:{initialValue:0},liveAutocompletionThreshold:{initialValue:0},enableSnippets:{set:function(M){M?(this.commands.addCommand(p),this.on("changeMode",m),m(null,this)):(this.commands.removeCommand(p),this.off("changeMode",m))},value:!1}})}),function(){ace.require(["ace/ext/language_tools"],function(n){e&&(e.exports=n)})}()})(p$);var f$={exports:{}};(function(e,t){ace.define("ace/theme/github_light_default-css",["require","exports","module"],function(n,r,h){h.exports=`.ace-github-light-default .ace_gutter { + background: #ffffff; + color: rgba(27, 31, 35, 0.3); +} + +.ace-github-light-default .ace_print-margin { + width: 1px; + background: #e8e8e8; +} + +.ace-github-light-default { + background-color: #FFFFFF; + color: #24292E; +} + +.ace-github-light-default .ace_cursor { + color: #044289; + background: none; +} + +.ace-github-light-default .ace_marker-layer .ace_selection { + background: rgba(3, 102, 214, 0.14); +} + +.ace-github-light-default.ace_multiselect .ace_selection.ace_start { + box-shadow: 0 0 3px 0px #FFFFFF; + border-radius: 2px; +} + +.ace-github-light-default .ace_marker-layer .ace_step { + background: rgb(198, 219, 174); +} + +.ace-github-light-default .ace_marker-layer .ace_bracket { + margin: -1px 0 0 -1px; + border: 1px solid rgba(52, 208, 88, 0); + background: rgba(52, 208, 88, 0.25); +} + +.ace-github-light-default .ace_marker-layer .ace_active-line { + background: #f6f8fa; + border: 2px solid #eeeeee; +} + +.ace-github-light-default .ace_gutter-active-line { + background-color: #f6f8fa; + color: #24292e +} + +.ace-github-light-default .ace_marker-layer .ace_selected-word { + border: 1px solid rgba(3, 102, 214, 0.14); +} + +.ace-github-light-default .ace_fold { + background-color: #D73A49; + border-color: #24292E; +} + +.ace_tooltip.ace-github-light-default { + background-color: #f6f8fa !important; + color: #444d56 !important; + border: 1px solid #444d56 +} + +.ace-github-light-default .language_highlight_error { + border-bottom: dotted 1px #cb2431; + background: none; +} + +.ace-github-light-default .language_highlight_warning { + border-bottom: solid 1px #f9c513; + background: none; +} + +.ace-github-light-default .language_highlight_info { + border-bottom: dotted 1px #1a85ff; + background: none; +} + +.ace-github-light-default .ace_keyword { + color: #D73A49; +} + +.ace-github-light-default .ace_constant { + color: #005CC5; +} + +.ace-github-light-default .ace_support { + color: #005CC5; +} + +.ace-github-light-default .ace_support.ace_constant { + color: #005CC5; +} + +.ace-github-light-default .ace_support.ace_type { + color: #D73A49; +} + +.ace-github-light-default .ace_storage { + color: #D73A49; +} + +.ace-github-light-default .ace_storage.ace_type { + color: #D73A49; +} + +.ace-github-light-default .ace_invalid.ace_illegal { + font-style: italic; + color: #B31D28; +} + +.ace-github-light-default .ace_invalid.ace_deprecated { + font-style: italic; + color: #B31D28; +} + +.ace-github-light-default .ace_string { + color: #032F62; +} + +.ace-github-light-default .ace_string.ace_regexp { + color: #032F62; +} + +.ace-github-light-default .ace_comment { + color: #6A737D; +} + +.ace-github-light-default .ace_variable { + color: #E36209; +} + +.ace-github-light-default .ace_variable.ace_language { + color: #005CC5; +} + +.ace-github-light-default .ace_entity.ace_name { + color: #6F42C1; +} + +.ace-github-light-default .ace_entity { + color: #6F42C1; +} + +.ace-github-light-default .ace_entity.ace_name.ace_tag { + color: #22863A; +} + +.ace-github-light-default .ace_meta.ace_tag { + color: #22863A; +} + +.ace-github-light-default .ace_markup.ace_heading { + color: #005CC5; +} + +.ace-github-light-default .ace_indent-guide { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y; +} + +.ace-github-light-default .ace_indent-guide-active { + background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAZSURBVHjaYvj///9/hivKyv8BAAAA//8DACLqBhbvk+/eAAAAAElFTkSuQmCC") right repeat-y; +} +`}),ace.define("ace/theme/github_light_default",["require","exports","module","ace/theme/github_light_default-css","ace/lib/dom"],function(n,r,h){r.isDark=!1,r.cssClass="ace-github-light-default",r.cssText=n("./github_light_default-css");var i=n("../lib/dom");i.importCssString(r.cssText,r.cssClass,!1)}),function(){ace.require(["ace/theme/github_light_default"],function(n){e&&(e.exports=n)})}()})(f$);function _o(e,t,n){return Object.keys(e[t]).reduce((r,h)=>(r[h]=`var(--mantine-${n}-${h})`,r),{})}function Mm(e,t){return e in t.breakpoints?t.breakpoints[e]:ro(e)}function g$(e){const t=ug(ta,e),n=_o(t,"fontSizes","font-size"),r=_o(t,"lineHeights","line-height"),h=_o(t,"shadows","shadow"),i=_o(t,"radius","radius"),d=_o(t,"spacing","spacing"),g=Object.keys(t.headings.sizes).reduce((f,s)=>(f[s]={fontSize:`var(--mantine-${s}-font-size)`,lineHeight:`var(--mantine-${s}-line-height)`,fontWeight:`var(--mantine-${s}-font-weight)`},f),{}),c=Object.keys(t.colors).reduce((f,s)=>(f[s]={0:`var(--mantine-color-${s}-0)`,1:`var(--mantine-color-${s}-1)`,2:`var(--mantine-color-${s}-2)`,3:`var(--mantine-color-${s}-3)`,4:`var(--mantine-color-${s}-4)`,5:`var(--mantine-color-${s}-5)`,6:`var(--mantine-color-${s}-6)`,7:`var(--mantine-color-${s}-7)`,8:`var(--mantine-color-${s}-8)`,9:`var(--mantine-color-${s}-9)`,filled:`var(--mantine-color-${s}-filled)`,filledHover:`var(--mantine-color-${s}-filled-hover)`,light:`var(--mantine-color-${s}-light)`,lightHover:`var(--mantine-color-${s}-light-hover)`,lightColor:`var(--mantine-color-${s}-light-color)`,outline:`var(--mantine-color-${s}-outline)`,outlineHover:`var(--mantine-color-${s}-outline-hover)`},f),{primary:"var(--mantine-primary-color-filled)",primaryColors:{0:"var(--mantine-primary-color-0)",1:"var(--mantine-primary-color-1)",2:"var(--mantine-primary-color-2)",3:"var(--mantine-primary-color-3)",4:"var(--mantine-primary-color-4)",5:"var(--mantine-primary-color-5)",6:"var(--mantine-primary-color-6)",7:"var(--mantine-primary-color-7)",8:"var(--mantine-primary-color-8)",9:"var(--mantine-primary-color-9)",filled:"var(--mantine-primary-color-filled)",filledHover:"var(--mantine-primary-color-filled-hover)",light:"var(--mantine-primary-color-light)",lightHover:"var(--mantine-primary-color-light-hover)",lightColor:"var(--mantine-primary-color-light-color)",outline:"var(--mantine-primary-color-outline)",outlineHover:"var(--mantine-primary-color-outline-hover)"},white:"var(--mantine-color-white)",black:"var(--mantine-color-black)",text:"var(--mantine-color-text)",body:"var(--mantine-color-body)",error:"var(--mantine-color-error)",placeholder:"var(--mantine-color-placeholder)",anchor:"var(--mantine-color-anchor)",default:"var(--mantine-color-default)",defaultHover:"var(--mantine-color-default-hover)",defaultColor:"var(--mantine-color-default-color)",defaultBorder:"var(--mantine-color-default-border)",dimmed:"var(--mantine-color-dimmed)"});return{scale:"var(--mantine-scale)",cursorType:"var(--mantine-cursor-type)",webkitFontSmoothing:"var(--mantine-webkit-font-smoothing)",mozFontSmoothing:"var(--mantine-moz-font-smoothing)",lineHeight:"var(--mantine-line-height)",fontFamily:"var(--mantine-font-family)",fontFamilyMonospace:"var(--mantine-font-family-monospace)",fontFamilyHeadings:"var(--mantine-font-family-headings)",headingFontWeight:"var(--mantine-heading-font-weight)",radiusDefault:"var(--mantine-radius-default)",breakpoints:t.breakpoints,fontSizes:n,lineHeights:r,shadows:h,radius:i,headings:g,spacing:d,colors:c,rtlSelector:'[dir="rtl"] &',darkSelector:'[data-mantine-color-scheme="dark"] &',lightSelector:'[data-mantine-color-scheme="light"] &',smallerThan:f=>`(max-width: ${Mm(f,t)})`,largerThan:f=>`(min-width: ${Mm(f,t)})`}}const Am={},mn=g$(Am);var m$={exports:{}};(function(e,t){(function(){ace.require(["ace/mode/text"],function(n){e&&(e.exports=n)})})()})(m$);class v$ extends window.ace.acequire("ace/mode/text_highlight_rules").TextHighlightRules{constructor(){super();const t=this.createKeywordMapper({"support.constant":"unit",keyword:"in|let","keyword.long":"forall|Lam|lam|mu","support.type":"Unit"},"identifier");this.$rules={start:[{token:"comment",regex:/#.*$/},{token:"constant.numeric",regex:/(?:0|[1-9]\d*)\b/},{token:t,regex:/[a-zA-Z_][a-zA-Z0-9_]*\b/},{token:"keyword.short",regex:/[∀Λλμ]/},{token:"keyword.operator",regex:/->/},{token:"keyword.operator.long",regex:/~|\/\\|\\\//},{token:"keyword.operator.short",regex:/¬|∧|∨/},{token:"punctuation.operator",regex:/:|\.|=/},{token:"paren.lparen",regex:/[(]/},{token:"paren.rparen",regex:/[)]/},{token:"text",regex:/\s+/}]}}}class y$ extends window.ace.acequire("ace/mode/text").Mode{constructor(){super(),this.HighlightRules=v$,this.$behaviour=this.$defaultBehaviour,this.$id="ace/mode/lambda"}}var b$="_1k61jv80",w$="_1k61jv81",x$="_1k61jv82",S$="_1k61jv83";function Xu(e){return{line:e.row,column:e.column}}function $$(e){return{start:Xu(e.start),end:Xu(e.end)}}function C$(e){return{row:e.start.line,column:e.start.column,text:e.message,type:e.severity.toLowerCase()}}function xa(e,t){return{startRow:e.start.line,startCol:e.start.column,endRow:e.end.line,endCol:e.end.column,className:t,type:"text"}}function k$(e,t,n){const r=e.getTextRange(t);e.replace(t,n);const h=e.getUndoManager();h.add({action:"insert",start:t.end,end:{row:t.end.row,column:t.end.column+n.length},lines:[n]},!1,e),h.add({action:"remove",start:t.start,end:t.end,lines:[r]},!0,e)}const _$=new Map([["forall","\u2200"],["Lam","\u039B"],["lam","\u03BB"],["mu","\u03BC"],["/\\","\u2227"],["\\/","\u2228"],["~","\xAC"]]);function M$({aceRef:e,program:t,setProgram:n,setCursor:r,problems:h,hoveredSyntax:i,cursedSyntax:d}){const[g,c]=W.useState(null),f=W.useMemo(function(){return h.map(C$)},[h]),s=W.useMemo(function(){const u=h.map(function(p){return xa(p,b$)});return g!==null&&u.push(xa(g,S$)),i!==null&&u.push(xa(i,w$)),d!==null&&u.push(xa(d,x$)),u},[h,g,i,d]);W.useEffect(function(){var m;const u=new y$,p=(m=e.current)==null?void 0:m.editor;p==null||p.session.setMode(u),p==null||p.session.setUndoSelect(!1),p==null||p.gotoLine(1,0,!0)},[e]);const o=W.useCallback(function(u,p){var w;if(n(u),p.action!=="insert")return;const m=(w=e.current)==null?void 0:w.editor.session;if(m===void 0){console.error("No editor session.");return}let v,b;if(p.lines.length===1&&p.lines[0]===" "){if(v=m.getTokenAt(p.end.row,p.end.column-1),v===null||v.type!=="keyword.long")return;b=v.value.length+1}else{if(v=m.getTokenAt(p.end.row,p.end.column),v===null||v.type!=="keyword.operator.long"||v.start+v.value.length!==p.end.column)return;b=v.value.length}const _=_$.get(v.value);if(_===void 0){console.error(`Found long keyword/operator without substitution: "${v.value}".`);return}const S={row:p.end.row,column:p.end.column-b};k$(m,Co.Range.fromPoints(S,p.end),_)},[e,n]),a=W.useCallback(function(u){r(Xu(u.getCursor()))},[r]),l=W.useCallback(function(u){c($$(u.getRange()))},[]);return G.jsx(d$,{name:"editor",ref:e,defaultValue:t,focus:!0,width:"100%",height:"100%",onChange:o,onCursorChange:a,onSelectionChange:l,mode:"text",theme:"github_light_default",annotations:f,markers:s,setOptions:{enableBasicAutocompletion:!0,enableLiveAutocompletion:!1,fontFamily:mn.fontFamilyMonospace,fontSize:mn.fontSizes.md,highlightActiveLine:!1,newLineMode:"unix",showPrintMargin:!1,useSoftTabs:!0}})}var A$="_16ts0fz0",T$="_16ts0fz1",E$="_16ts0fz2";function L$({problems:e,onSelect:t}){const n=W.useCallback(function(r){const h=parseInt(r.currentTarget.dataset.index??"");if(isNaN(h)||h<0||h>=e.length){console.error(`Cannot handle click on problem: ${r}`);return}const i=e[h];t(i)},[e,t]);return G.jsx(oi,{type:"scroll",h:"100%",children:G.jsx(ge,{pt:"xs",children:G.jsx(yo,{className:A$,center:!0,icon:G.jsx(y0,{className:E$}),children:e.map(function({start:r,message:h,source:i},d){const{line:g,column:c}=r;return G.jsxs(yo.Item,{"data-index":d,onClick:n,children:[h," ",G.jsxs("span",{className:T$,children:["\u2014 ",i," [Ln ",g,", Col ",c,"]"]})]},d)})})})})}var Tm="y3rta80",R$="y3rta81";function N$(e){return e===0?0:e===1?1:e<.5?Math.pow(2,20*e-10)/2:(2-Math.pow(2,-20*e+10))/2}function I$(e){const t=new Map;function n(i){switch(t.set(i.id,i),i.tag){case"NODE":return r(i);case"TOKEN":return h(i)}}function r(i){return{value:i.id,label:G.jsx("span",{className:Tm,children:i.kind}),children:i.children.map(n)}}function h(i){return{value:i.id,label:G.jsxs("span",{className:Tm,children:[i.kind," \u2014 ",i.text]})}}return[[n(e)],t]}function Em(e,t){return e.lineEm(h.start,t));if(r===void 0)return e;if(r.tag==="NODE"&&Em(t,r.start))return n(r.id),r;e=r}}function D$({syntax:e,cursor:t,setHoveredSyntax:n,setCursedSyntax:r}){const[h,i]=W.useMemo(function(){return e!==void 0?I$(e):[[],new Map]},[e]),d=em(),{expand:g,hoveredNode:c}=d,[f,s]=W.useState(),{scrollableRef:o,targetRef:a,scrollIntoView:l}=Eb({duration:200,easing:N$});return W.useEffect(function(){n(c!==null?i.get(c)??null:null)},[i,c,n]),W.useEffect(function(){let u;e&&(g(e.id),u=t?O$(e,t,g):e),s(u),r(u??null)},[e,t,g,r]),W.useEffect(function(){l({alignment:"center"})},[f,l]),G.jsx(oi,{type:"scroll",h:"100%",viewportRef:o,children:G.jsx(ge,{pt:"xs",pb:"xs",pl:"md",pr:"md",className:"ace-github-light-default",children:G.jsx(zu,{data:h,tree:d,levelOffset:24,renderNode:({node:u,expanded:p,hasChildren:m,elementProps:v})=>G.jsxs(fo,{gap:8,...v,children:[m?G.jsx(v0,{size:16,style:{transform:p?"rotate(180deg)":"rotate(0deg)"}}):G.jsx(m0,{size:16}),G.jsx(ge,{className:u.value===(f==null?void 0:f.id)?R$:void 0,ref:u.value===(f==null?void 0:f.id)?a:void 0,children:u.label})]})})})})}var z$="nibkcg0",F$="nibkcg1",P$="nibkcg2",j$="nibkcg3",W$="nibkcg4",H$="nibkcg5";const B$=`# Simple higher order function +let twice = + \u03BBf:Unit -> Unit. \u03BBu:Unit. f (f u) +in +twice (\u03BBu:Unit. u) unit +`;function U$(){const[e,t]=W.useState("parser"),[n,r]=yb(B$,20),[h,i]=W.useState(),[d,g]=W.useState([]),[c,f]=W.useState(),s=W.useRef(null),[o,a]=W.useState(null),[l,u]=W.useState(null);W.useEffect(function(){const m=performance.now(),{problems:v,syntax:b}=ox(n,{include_trivia:!1}),_=performance.now();console.debug(`Parsing took ${Math.ceil(_-m)} ms.`),g(v),f(b)},[n]);const p=W.useCallback(function(m){var S;if(s.current===null){console.warn("Editor not yet loaded.");return}const v=(S=s.current)==null?void 0:S.editor,{line:b,column:_}=m.start;v.gotoLine(b+1,_,!0),v.focus()},[]);return G.jsxs("div",{className:z$,children:[G.jsxs("div",{className:F$,children:[G.jsx("div",{className:P$,children:G.jsx(M$,{aceRef:s,program:n,setProgram:r,setCursor:i,problems:d,hoveredSyntax:o,cursedSyntax:l})}),G.jsx("div",{className:j$,children:G.jsxs(St,{className:W$,value:e,onChange:t,inverted:!0,children:[G.jsx(St.Panel,{value:"parser",flex:"1 1 0",mih:0,children:G.jsx(D$,{syntax:c,cursor:h,setHoveredSyntax:a,setCursedSyntax:u})}),G.jsx(St.Panel,{value:"checker",flex:1,children:"Panel for the intermediate representation produced by the type checker."}),G.jsx(St.Panel,{value:"interpreter",flex:1,children:"Panel for the value produced by the interpreter."}),G.jsxs(St.List,{children:[G.jsx(St.Tab,{value:"parser",children:"Parser"}),G.jsx(St.Tab,{value:"checker",children:"Type checker"}),G.jsx(St.Tab,{value:"interpreter",children:"Interpreter"})]})]})})]}),G.jsx("div",{className:H$,children:G.jsx(L$,{problems:d,onSelect:p})})]})}function V$(){const{fullscreen:e,toggle:t}=Nb();return W.useEffect(function(){console.log(`One day, we'll type check using the ${sx()}.`)},[]),G.jsx(mg,{theme:Am,children:G.jsxs(xt,{header:{height:64},footer:{height:32},navbar:{width:240,breakpoint:"sm"},children:[G.jsx(xt.Header,{children:G.jsxs(fo,{h:"100%",px:"md",c:"white",bg:mn.colors.blue.filled,justify:"space-between",children:[G.jsxs(ua,{children:[G.jsxs("span",{style:{fontSize:Y(32),fontWeight:700,fontFamily:mn.fontFamilyMonospace},children:["fe\u03BBix"," "]}),"Playground for compiler frontend and programming language experiments."]}),G.jsxs(fo,{gap:"sm",children:[G.jsx(si,{color:"white",size:"md",component:"a",href:"https://github.com/hurryabit/felix",children:G.jsx(x0,{style:{width:"70%",height:"70%",color:mn.colors.blue.filled},stroke:1.5})}),G.jsx(si,{color:"white",size:"md",onClick:()=>alert("Soon!"),children:G.jsx(S0,{style:{width:"70%",height:"70%",color:mn.colors.blue.filled},stroke:1.5})}),G.jsx(si,{color:"white",size:"md",onClick:t,children:e?G.jsx(w0,{style:{width:"70%",height:"70%",color:mn.colors.blue.filled},stroke:1.5}):G.jsx(b0,{style:{width:"70%",height:"70%",color:mn.colors.blue.filled},stroke:1.5})})]})]})}),G.jsx(xt.Footer,{children:G.jsx(Tu,{h:"100%",w:"100%",bg:mn.colors.blue.filled,c:"white",children:G.jsxs(ua,{children:["\xA9 2024"," ",G.jsx("a",{href:"https://github.com/hurryabit/",style:{color:"white"},children:"Martin Huschenbett"})]})})}),G.jsx(xt.Navbar,{}),G.jsx(xt.Main,{h:"100dvh",children:G.jsx(U$,{})})]})})}Oa.createRoot(document.getElementById("root")).render(G.jsx(xh.StrictMode,{children:G.jsx(V$,{})}))})()});export default BC(); diff --git a/assets/index-Dspg__Nu.js b/assets/index-Dspg__Nu.js deleted file mode 100644 index 2d3c0df..0000000 --- a/assets/index-Dspg__Nu.js +++ /dev/null @@ -1,1345 +0,0 @@ -var O$=(Oe,Un)=>()=>(Un||Oe((Un={exports:{}}).exports,Un),Un.exports);var D$=O$((F$,ah)=>{(async()=>{(function(){const e=document.createElement("link").relList;if(e&&e.supports&&e.supports("modulepreload"))return;for(const r of document.querySelectorAll('link[rel="modulepreload"]'))n(r);new MutationObserver(r=>{for(const h of r)if(h.type==="childList")for(const i of h.addedNodes)i.tagName==="LINK"&&i.rel==="modulepreload"&&n(i)}).observe(document,{childList:!0,subtree:!0});function t(r){const h={};return r.integrity&&(h.integrity=r.integrity),r.referrerPolicy&&(h.referrerPolicy=r.referrerPolicy),r.crossOrigin==="use-credentials"?h.credentials="include":r.crossOrigin==="anonymous"?h.credentials="omit":h.credentials="same-origin",h}function n(r){if(r.ep)return;r.ep=!0;const h=t(r);fetch(r.href,h)}})();var Oe=typeof globalThis<"u"?globalThis:typeof window<"u"?window:typeof global<"u"?global:typeof self<"u"?self:{};function Un(e){return e&&e.__esModule&&Object.prototype.hasOwnProperty.call(e,"default")?e.default:e}var lh={exports:{}},To={},ch={exports:{}},de={},fi=Symbol.for("react.element"),Bm=Symbol.for("react.portal"),Um=Symbol.for("react.fragment"),Vm=Symbol.for("react.strict_mode"),Gm=Symbol.for("react.profiler"),Km=Symbol.for("react.provider"),Ym=Symbol.for("react.context"),Qm=Symbol.for("react.forward_ref"),qm=Symbol.for("react.suspense"),Xm=Symbol.for("react.memo"),Zm=Symbol.for("react.lazy"),uh=Symbol.iterator;function Jm(e){return e===null||typeof e!="object"?null:(e=uh&&e[uh]||e["@@iterator"],typeof e=="function"?e:null)}var hh={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},dh=Object.assign,fh={};function wr(e,t,n){this.props=e,this.context=t,this.refs=fh,this.updater=n||hh}wr.prototype.isReactComponent={},wr.prototype.setState=function(e,t){if(typeof e!="object"&&typeof e!="function"&&e!=null)throw Error("setState(...): takes an object of state variables to update or a function which returns an object of state variables.");this.updater.enqueueSetState(this,e,t,"setState")},wr.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")};function ph(){}ph.prototype=wr.prototype;function Ea(e,t,n){this.props=e,this.context=t,this.refs=fh,this.updater=n||hh}var Ta=Ea.prototype=new ph;Ta.constructor=Ea,dh(Ta,wr.prototype),Ta.isPureReactComponent=!0;var gh=Array.isArray,mh=Object.prototype.hasOwnProperty,Ra={current:null},vh={key:!0,ref:!0,__self:!0,__source:!0};function yh(e,t,n){var r,h={},i=null,d=null;if(t!=null)for(r in t.ref!==void 0&&(d=t.ref),t.key!==void 0&&(i=""+t.key),t)mh.call(t,r)&&!vh.hasOwnProperty(r)&&(h[r]=t[r]);var g=arguments.length-2;if(g===1)h.children=n;else if(1>>1,B=N[P];if(0>>1;Ph(H,D))Gh(Q,H)?(N[P]=Q,N[G]=D,P=G):(N[P]=H,N[F]=D,P=F);else if(Gh(Q,D))N[P]=Q,N[G]=D,P=G;else break e}}return O}function h(N,O){var D=N.sortIndex-O.sortIndex;return D!==0?D:N.id-O.id}if(typeof performance=="object"&&typeof performance.now=="function"){var i=performance;e.unstable_now=function(){return i.now()}}else{var d=Date,g=d.now();e.unstable_now=function(){return d.now()-g}}var u=[],p=[],s=1,o=null,a=3,l=!1,c=!1,f=!1,m=typeof setTimeout=="function"?setTimeout:null,v=typeof clearTimeout=="function"?clearTimeout:null,y=typeof setImmediate<"u"?setImmediate:null;typeof navigator<"u"&&navigator.scheduling!==void 0&&navigator.scheduling.isInputPending!==void 0&&navigator.scheduling.isInputPending.bind(navigator.scheduling);function $(N){for(var O=n(p);O!==null;){if(O.callback===null)r(p);else if(O.startTime<=N)r(p),O.sortIndex=O.expirationTime,t(u,O);else break;O=n(p)}}function w(N){if(f=!1,$(N),!c)if(n(u)!==null)c=!0,T(x);else{var O=n(p);O!==null&&I(w,O.startTime-N)}}function x(N,O){c=!1,f&&(f=!1,v(R),R=-1),l=!0;var D=a;try{for($(O),o=n(u);o!==null&&(!(o.expirationTime>O)||N&&!M());){var P=o.callback;if(typeof P=="function"){o.callback=null,a=o.priorityLevel;var B=P(o.expirationTime<=O);O=e.unstable_now(),typeof B=="function"?o.callback=B:o===n(u)&&r(u),$(O)}else r(u);o=n(u)}if(o!==null)var j=!0;else{var F=n(p);F!==null&&I(w,F.startTime-O),j=!1}return j}finally{o=null,a=D,l=!1}}var b=!1,_=null,R=-1,E=5,L=-1;function M(){return!(e.unstable_now()-LN||125P?(N.sortIndex=D,t(p,N),n(u)===null&&N===n(p)&&(f?(v(R),R=-1):f=!0,I(w,D-P))):(N.sortIndex=B,t(u,N),c||l||(c=!0,T(x))),N},e.unstable_shouldYield=M,e.unstable_wrapCallback=function(N){var O=a;return function(){var D=a;a=O;try{return N.apply(this,arguments)}finally{a=D}}}})(Ch),$h.exports=Ch;var uv=$h.exports,hv=W,mt=uv;function Z(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n"u"||typeof window.document>"u"||typeof window.document.createElement>"u"),Da=Object.prototype.hasOwnProperty,dv=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Ah={},Mh={};function fv(e){return Da.call(Mh,e)?!0:Da.call(Ah,e)?!1:dv.test(e)?Mh[e]=!0:(Ah[e]=!0,!1)}function pv(e,t,n,r){if(n!==null&&n.type===0)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return r?!1:n!==null?!n.acceptsBooleans:(e=e.toLowerCase().slice(0,5),e!=="data-"&&e!=="aria-");default:return!1}}function gv(e,t,n,r){if(t===null||typeof t>"u"||pv(e,t,n,r))return!0;if(r)return!1;if(n!==null)switch(n.type){case 3:return!t;case 4:return t===!1;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}function at(e,t,n,r,h,i,d){this.acceptsBooleans=t===2||t===3||t===4,this.attributeName=r,this.attributeNamespace=h,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i,this.removeEmptyString=d}var Ke={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach(function(e){Ke[e]=new at(e,0,!1,e,null,!1,!1)}),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach(function(e){var t=e[0];Ke[t]=new at(t,1,!1,e[1],null,!1,!1)}),["contentEditable","draggable","spellCheck","value"].forEach(function(e){Ke[e]=new at(e,2,!1,e.toLowerCase(),null,!1,!1)}),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach(function(e){Ke[e]=new at(e,2,!1,e,null,!1,!1)}),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach(function(e){Ke[e]=new at(e,3,!1,e.toLowerCase(),null,!1,!1)}),["checked","multiple","muted","selected"].forEach(function(e){Ke[e]=new at(e,3,!0,e,null,!1,!1)}),["capture","download"].forEach(function(e){Ke[e]=new at(e,4,!1,e,null,!1,!1)}),["cols","rows","size","span"].forEach(function(e){Ke[e]=new at(e,6,!1,e,null,!1,!1)}),["rowSpan","start"].forEach(function(e){Ke[e]=new at(e,5,!1,e.toLowerCase(),null,!1,!1)});var za=/[\-:]([a-z])/g;function Fa(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach(function(e){var t=e.replace(za,Fa);Ke[t]=new at(t,1,!1,e,null,!1,!1)}),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach(function(e){var t=e.replace(za,Fa);Ke[t]=new at(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)}),["xml:base","xml:lang","xml:space"].forEach(function(e){var t=e.replace(za,Fa);Ke[t]=new at(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)}),["tabIndex","crossOrigin"].forEach(function(e){Ke[e]=new at(e,1,!1,e.toLowerCase(),null,!1,!1)}),Ke.xlinkHref=new at("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach(function(e){Ke[e]=new at(e,1,!1,e.toLowerCase(),null,!0,!0)});function Pa(e,t,n,r){var h=Ke.hasOwnProperty(t)?Ke[t]:null;(h!==null?h.type!==0:r||!(2g||h[d]!==i[g]){var u=` -`+h[d].replace(" at new "," at ");return e.displayName&&u.includes("")&&(u=u.replace("",e.displayName)),u}while(1<=d&&0<=g);break}}}finally{Ka=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?mi(e):""}function mv(e){switch(e.tag){case 5:return mi(e.type);case 16:return mi("Lazy");case 13:return mi("Suspense");case 19:return mi("SuspenseList");case 0:case 2:case 15:return e=Ya(e.type,!1),e;case 11:return e=Ya(e.type.render,!1),e;case 1:return e=Ya(e.type,!0),e;default:return""}}function Qa(e){if(e==null)return null;if(typeof e=="function")return e.displayName||e.name||null;if(typeof e=="string")return e;switch(e){case kr:return"Fragment";case xr:return"Portal";case ja:return"Profiler";case Wa:return"StrictMode";case Ba:return"Suspense";case Ua:return"SuspenseList"}if(typeof e=="object")switch(e.$$typeof){case Eh:return(e.displayName||"Context")+".Consumer";case Lh:return(e._context.displayName||"Context")+".Provider";case Ha:var t=e.render;return e=e.displayName,e||(e=t.displayName||t.name||"",e=e!==""?"ForwardRef("+e+")":"ForwardRef"),e;case Va:return t=e.displayName||null,t!==null?t:Qa(e.type)||"Memo";case bn:t=e._payload,e=e._init;try{return Qa(e(t))}catch{}}return null}function vv(e){var t=e.type;switch(e.tag){case 24:return"Cache";case 9:return(t.displayName||"Context")+".Consumer";case 10:return(t._context.displayName||"Context")+".Provider";case 18:return"DehydratedFragment";case 11:return e=t.render,e=e.displayName||e.name||"",t.displayName||(e!==""?"ForwardRef("+e+")":"ForwardRef");case 7:return"Fragment";case 5:return t;case 4:return"Portal";case 3:return"Root";case 6:return"Text";case 16:return Qa(t);case 8:return t===Wa?"StrictMode":"Mode";case 22:return"Offscreen";case 12:return"Profiler";case 21:return"Scope";case 13:return"Suspense";case 19:return"SuspenseList";case 25:return"TracingMarker";case 1:case 0:case 17:case 2:case 14:case 15:if(typeof t=="function")return t.displayName||t.name||null;if(typeof t=="string")return t}return null}function wn(e){switch(typeof e){case"boolean":case"number":case"string":case"undefined":return e;case"object":return e;default:return""}}function Ih(e){var t=e.type;return(e=e.nodeName)&&e.toLowerCase()==="input"&&(t==="checkbox"||t==="radio")}function yv(e){var t=Ih(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&typeof n<"u"&&typeof n.get=="function"&&typeof n.set=="function"){var h=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return h.call(this)},set:function(d){r=""+d,i.call(this,d)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(d){r=""+d},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}function Do(e){e._valueTracker||(e._valueTracker=yv(e))}function Nh(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Ih(e)?e.checked?"true":"false":e.value),e=r,e!==n?(t.setValue(e),!0):!1}function zo(e){if(e=e||(typeof document<"u"?document:void 0),typeof e>"u")return null;try{return e.activeElement||e.body}catch{return e.body}}function qa(e,t){var n=t.checked;return Le({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:n??e._wrapperState.initialChecked})}function Oh(e,t){var n=t.defaultValue==null?"":t.defaultValue,r=t.checked!=null?t.checked:t.defaultChecked;n=wn(t.value!=null?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:t.type==="checkbox"||t.type==="radio"?t.checked!=null:t.value!=null}}function Dh(e,t){t=t.checked,t!=null&&Pa(e,"checked",t,!1)}function Xa(e,t){Dh(e,t);var n=wn(t.value),r=t.type;if(n!=null)r==="number"?(n===0&&e.value===""||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if(r==="submit"||r==="reset"){e.removeAttribute("value");return}t.hasOwnProperty("value")?Za(e,t.type,n):t.hasOwnProperty("defaultValue")&&Za(e,t.type,wn(t.defaultValue)),t.checked==null&&t.defaultChecked!=null&&(e.defaultChecked=!!t.defaultChecked)}function zh(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!(r!=="submit"&&r!=="reset"||t.value!==void 0&&t.value!==null))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}n=e.name,n!==""&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,n!==""&&(e.name=n)}function Za(e,t,n){(t!=="number"||zo(e.ownerDocument)!==e)&&(n==null?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}var vi=Array.isArray;function $r(e,t,n,r){if(e=e.options,t){t={};for(var h=0;h"+t.valueOf().toString()+"",t=Fo.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}});function yi(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&n.nodeType===3){n.nodeValue=t;return}}e.textContent=t}var bi={animationIterationCount:!0,aspectRatio:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},bv=["Webkit","ms","Moz","O"];Object.keys(bi).forEach(function(e){bv.forEach(function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),bi[t]=bi[e]})});function Bh(e,t,n){return t==null||typeof t=="boolean"||t===""?"":n||typeof t!="number"||t===0||bi.hasOwnProperty(e)&&bi[e]?(""+t).trim():t+"px"}function Uh(e,t){e=e.style;for(var n in t)if(t.hasOwnProperty(n)){var r=n.indexOf("--")===0,h=Bh(n,t[n],r);n==="float"&&(n="cssFloat"),r?e.setProperty(n,h):e[n]=h}}var wv=Le({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function tl(e,t){if(t){if(wv[e]&&(t.children!=null||t.dangerouslySetInnerHTML!=null))throw Error(Z(137,e));if(t.dangerouslySetInnerHTML!=null){if(t.children!=null)throw Error(Z(60));if(typeof t.dangerouslySetInnerHTML!="object"||!("__html"in t.dangerouslySetInnerHTML))throw Error(Z(61))}if(t.style!=null&&typeof t.style!="object")throw Error(Z(62))}}function nl(e,t){if(e.indexOf("-")===-1)return typeof t.is=="string";switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var rl=null;function il(e){return e=e.target||e.srcElement||window,e.correspondingUseElement&&(e=e.correspondingUseElement),e.nodeType===3?e.parentNode:e}var ol=null,Cr=null,_r=null;function Vh(e){if(e=ji(e)){if(typeof ol!="function")throw Error(Z(280));var t=e.stateNode;t&&(t=as(t),ol(e.stateNode,e.type,t))}}function Gh(e){Cr?_r?_r.push(e):_r=[e]:Cr=e}function Kh(){if(Cr){var e=Cr,t=_r;if(_r=Cr=null,Vh(e),t)for(e=0;e>>=0,e===0?32:31-(Tv(e)/Rv|0)|0}var Bo=64,Uo=4194304;function ki(e){switch(e&-e){case 1:return 1;case 2:return 2;case 4:return 4;case 8:return 8;case 16:return 16;case 32:return 32;case 64:case 128:case 256:case 512:case 1024:case 2048:case 4096:case 8192:case 16384:case 32768:case 65536:case 131072:case 262144:case 524288:case 1048576:case 2097152:return e&4194240;case 4194304:case 8388608:case 16777216:case 33554432:case 67108864:return e&130023424;case 134217728:return 134217728;case 268435456:return 268435456;case 536870912:return 536870912;case 1073741824:return 1073741824;default:return e}}function Vo(e,t){var n=e.pendingLanes;if(n===0)return 0;var r=0,h=e.suspendedLanes,i=e.pingedLanes,d=n&268435455;if(d!==0){var g=d&~h;g!==0?r=ki(g):(i&=d,i!==0&&(r=ki(i)))}else d=n&~h,d!==0?r=ki(d):i!==0&&(r=ki(i));if(r===0)return 0;if(t!==0&&t!==r&&!(t&h)&&(h=r&-r,i=t&-t,h>=i||h===16&&(i&4194240)!==0))return t;if(r&4&&(r|=n&16),t=e.entangledLanes,t!==0)for(e=e.entanglements,t&=r;0n;n++)t.push(e);return t}function $i(e,t,n){e.pendingLanes|=t,t!==536870912&&(e.suspendedLanes=0,e.pingedLanes=0),e=e.eventTimes,t=31-Ot(t),e[t]=n}function Dv(e,t){var n=e.pendingLanes&~t;e.pendingLanes=t,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=t,e.mutableReadLanes&=t,e.entangledLanes&=t,t=e.entanglements;var r=e.eventTimes;for(e=e.expirationTimes;0=Ri),Sd=" ",xd=!1;function kd(e,t){switch(e){case"keyup":return uy.indexOf(t.keyCode)!==-1;case"keydown":return t.keyCode!==229;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function $d(e){return e=e.detail,typeof e=="object"&&"data"in e?e.data:null}var Lr=!1;function dy(e,t){switch(e){case"compositionend":return $d(t);case"keypress":return t.which!==32?null:(xd=!0,Sd);case"textInput":return e=t.data,e===Sd&&xd?null:e;default:return null}}function fy(e,t){if(Lr)return e==="compositionend"||!kl&&kd(e,t)?(e=gd(),qo=vl=Cn=null,Lr=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1=t)return{node:n,offset:t-e};e=r}e:{for(;n;){if(n.nextSibling){n=n.nextSibling;break e}n=n.parentNode}n=void 0}n=Td(n)}}function Id(e,t){return e&&t?e===t?!0:e&&e.nodeType===3?!1:t&&t.nodeType===3?Id(e,t.parentNode):"contains"in e?e.contains(t):e.compareDocumentPosition?!!(e.compareDocumentPosition(t)&16):!1:!1}function Nd(){for(var e=window,t=zo();t instanceof e.HTMLIFrameElement;){try{var n=typeof t.contentWindow.location.href=="string"}catch{n=!1}if(n)e=t.contentWindow;else break;t=zo(e.document)}return t}function _l(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&(t==="input"&&(e.type==="text"||e.type==="search"||e.type==="tel"||e.type==="url"||e.type==="password")||t==="textarea"||e.contentEditable==="true")}function xy(e){var t=Nd(),n=e.focusedElem,r=e.selectionRange;if(t!==n&&n&&n.ownerDocument&&Id(n.ownerDocument.documentElement,n)){if(r!==null&&_l(n)){if(t=r.start,e=r.end,e===void 0&&(e=t),"selectionStart"in n)n.selectionStart=t,n.selectionEnd=Math.min(e,n.value.length);else if(e=(t=n.ownerDocument||document)&&t.defaultView||window,e.getSelection){e=e.getSelection();var h=n.textContent.length,i=Math.min(r.start,h);r=r.end===void 0?i:Math.min(r.end,h),!e.extend&&i>r&&(h=r,r=i,i=h),h=Rd(n,i);var d=Rd(n,r);h&&d&&(e.rangeCount!==1||e.anchorNode!==h.node||e.anchorOffset!==h.offset||e.focusNode!==d.node||e.focusOffset!==d.offset)&&(t=t.createRange(),t.setStart(h.node,h.offset),e.removeAllRanges(),i>r?(e.addRange(t),e.extend(d.node,d.offset)):(t.setEnd(d.node,d.offset),e.addRange(t)))}}for(t=[],e=n;e=e.parentNode;)e.nodeType===1&&t.push({element:e,left:e.scrollLeft,top:e.scrollTop});for(typeof n.focus=="function"&&n.focus(),n=0;n=document.documentMode,Er=null,Al=null,Di=null,Ml=!1;function Od(e,t,n){var r=n.window===n?n.document:n.nodeType===9?n:n.ownerDocument;Ml||Er==null||Er!==zo(r)||(r=Er,"selectionStart"in r&&_l(r)?r={start:r.selectionStart,end:r.selectionEnd}:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection(),r={anchorNode:r.anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset}),Di&&Oi(Di,r)||(Di=r,r=is(Al,"onSelect"),0Or||(e.current=Wl[Or],Wl[Or]=null,Or--)}function we(e,t){Or++,Wl[Or]=e.current,e.current=t}var Ln={},tt=Mn(Ln),ut=Mn(!1),Yn=Ln;function Dr(e,t){var n=e.type.contextTypes;if(!n)return Ln;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var h={},i;for(i in n)h[i]=t[i];return r&&(e=e.stateNode,e.__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=h),h}function ht(e){return e=e.childContextTypes,e!=null}function ls(){xe(ut),xe(tt)}function qd(e,t,n){if(tt.current!==Ln)throw Error(Z(168));we(tt,t),we(ut,n)}function Xd(e,t,n){var r=e.stateNode;if(t=t.childContextTypes,typeof r.getChildContext!="function")return n;r=r.getChildContext();for(var h in r)if(!(h in t))throw Error(Z(108,vv(e)||"Unknown",h));return Le({},n,r)}function cs(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||Ln,Yn=tt.current,we(tt,e),we(ut,ut.current),!0}function Zd(e,t,n){var r=e.stateNode;if(!r)throw Error(Z(169));n?(e=Xd(e,t,Yn),r.__reactInternalMemoizedMergedChildContext=e,xe(ut),xe(tt),we(tt,e)):xe(ut),we(ut,n)}var rn=null,us=!1,jl=!1;function Jd(e){rn===null?rn=[e]:rn.push(e)}function Ny(e){us=!0,Jd(e)}function En(){if(!jl&&rn!==null){jl=!0;var e=0,t=ve;try{var n=rn;for(ve=1;e>=d,h-=d,on=1<<32-Ot(t)+h|n<R?(E=_,_=null):E=_.sibling;var L=a(v,_,$[R],w);if(L===null){_===null&&(_=E);break}e&&_&&L.alternate===null&&t(v,_),y=i(L,y,R),b===null?x=L:b.sibling=L,b=L,_=E}if(R===$.length)return n(v,_),Ae&&qn(v,R),x;if(_===null){for(;R<$.length;R++)_=o(v,$[R],w),_!==null&&(y=i(_,y,R),b===null?x=_:b.sibling=_,b=_);return Ae&&qn(v,R),x}for(_=r(v,_);R<$.length;R++)E=l(_,v,R,$[R],w),E!==null&&(e&&E.alternate!==null&&_.delete(E.key===null?R:E.key),y=i(E,y,R),b===null?x=E:b.sibling=E,b=E);return e&&_.forEach(function(M){return t(v,M)}),Ae&&qn(v,R),x}function f(v,y,$,w){var x=gi($);if(typeof x!="function")throw Error(Z(150));if($=x.call($),$==null)throw Error(Z(151));for(var b=x=null,_=y,R=y=0,E=null,L=$.next();_!==null&&!L.done;R++,L=$.next()){_.index>R?(E=_,_=null):E=_.sibling;var M=a(v,_,L.value,w);if(M===null){_===null&&(_=E);break}e&&_&&M.alternate===null&&t(v,_),y=i(M,y,R),b===null?x=M:b.sibling=M,b=M,_=E}if(L.done)return n(v,_),Ae&&qn(v,R),x;if(_===null){for(;!L.done;R++,L=$.next())L=o(v,L.value,w),L!==null&&(y=i(L,y,R),b===null?x=L:b.sibling=L,b=L);return Ae&&qn(v,R),x}for(_=r(v,_);!L.done;R++,L=$.next())L=l(_,v,R,L.value,w),L!==null&&(e&&L.alternate!==null&&_.delete(L.key===null?R:L.key),y=i(L,y,R),b===null?x=L:b.sibling=L,b=L);return e&&_.forEach(function(k){return t(v,k)}),Ae&&qn(v,R),x}function m(v,y,$,w){if(typeof $=="object"&&$!==null&&$.type===kr&&$.key===null&&($=$.props.children),typeof $=="object"&&$!==null){switch($.$$typeof){case Oo:e:{for(var x=$.key,b=y;b!==null;){if(b.key===x){if(x=$.type,x===kr){if(b.tag===7){n(v,b.sibling),y=h(b,$.props.children),y.return=v,v=y;break e}}else if(b.elementType===x||typeof x=="object"&&x!==null&&x.$$typeof===bn&&sf(x)===b.type){n(v,b.sibling),y=h(b,$.props),y.ref=Hi(v,b,$),y.return=v,v=y;break e}n(v,b);break}else t(v,b);b=b.sibling}$.type===kr?(y=ir($.props.children,v.mode,w,$.key),y.return=v,v=y):(w=Fs($.type,$.key,$.props,null,v.mode,w),w.ref=Hi(v,y,$),w.return=v,v=w)}return d(v);case xr:e:{for(b=$.key;y!==null;){if(y.key===b)if(y.tag===4&&y.stateNode.containerInfo===$.containerInfo&&y.stateNode.implementation===$.implementation){n(v,y.sibling),y=h(y,$.children||[]),y.return=v,v=y;break e}else{n(v,y);break}else t(v,y);y=y.sibling}y=zc($,v.mode,w),y.return=v,v=y}return d(v);case bn:return b=$._init,m(v,y,b($._payload),w)}if(vi($))return c(v,y,$,w);if(gi($))return f(v,y,$,w);ps(v,$)}return typeof $=="string"&&$!==""||typeof $=="number"?($=""+$,y!==null&&y.tag===6?(n(v,y.sibling),y=h(y,$),y.return=v,v=y):(n(v,y),y=Dc($,v.mode,w),y.return=v,v=y),d(v)):n(v,y)}return m}var Wr=af(!0),lf=af(!1),gs=Mn(null),ms=null,jr=null,Kl=null;function Yl(){Kl=jr=ms=null}function Ql(e){var t=gs.current;xe(gs),e._currentValue=t}function ql(e,t,n){for(;e!==null;){var r=e.alternate;if((e.childLanes&t)!==t?(e.childLanes|=t,r!==null&&(r.childLanes|=t)):r!==null&&(r.childLanes&t)!==t&&(r.childLanes|=t),e===n)break;e=e.return}}function Hr(e,t){ms=e,Kl=jr=null,e=e.dependencies,e!==null&&e.firstContext!==null&&(e.lanes&t&&(dt=!0),e.firstContext=null)}function _t(e){var t=e._currentValue;if(Kl!==e)if(e={context:e,memoizedValue:t,next:null},jr===null){if(ms===null)throw Error(Z(308));jr=e,ms.dependencies={lanes:0,firstContext:e}}else jr=jr.next=e;return t}var Xn=null;function Xl(e){Xn===null?Xn=[e]:Xn.push(e)}function cf(e,t,n,r){var h=t.interleaved;return h===null?(n.next=n,Xl(t)):(n.next=h.next,h.next=n),t.interleaved=n,an(e,r)}function an(e,t){e.lanes|=t;var n=e.alternate;for(n!==null&&(n.lanes|=t),n=e,e=e.return;e!==null;)e.childLanes|=t,n=e.alternate,n!==null&&(n.childLanes|=t),n=e,e=e.return;return n.tag===3?n.stateNode:null}var Tn=!1;function Zl(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null,interleaved:null,lanes:0},effects:null}}function uf(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function ln(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function Rn(e,t,n){var r=e.updateQueue;if(r===null)return null;if(r=r.shared,pe&2){var h=r.pending;return h===null?t.next=t:(t.next=h.next,h.next=t),r.pending=t,an(e,n)}return h=r.interleaved,h===null?(t.next=t,Xl(r)):(t.next=h.next,h.next=t),r.interleaved=t,an(e,n)}function vs(e,t,n){if(t=t.updateQueue,t!==null&&(t=t.shared,(n&4194240)!==0)){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,dl(e,n)}}function hf(e,t){var n=e.updateQueue,r=e.alternate;if(r!==null&&(r=r.updateQueue,n===r)){var h=null,i=null;if(n=n.firstBaseUpdate,n!==null){do{var d={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};i===null?h=i=d:i=i.next=d,n=n.next}while(n!==null);i===null?h=i=t:i=i.next=t}else h=i=t;n={baseState:r.baseState,firstBaseUpdate:h,lastBaseUpdate:i,shared:r.shared,effects:r.effects},e.updateQueue=n;return}e=n.lastBaseUpdate,e===null?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function ys(e,t,n,r){var h=e.updateQueue;Tn=!1;var i=h.firstBaseUpdate,d=h.lastBaseUpdate,g=h.shared.pending;if(g!==null){h.shared.pending=null;var u=g,p=u.next;u.next=null,d===null?i=p:d.next=p,d=u;var s=e.alternate;s!==null&&(s=s.updateQueue,g=s.lastBaseUpdate,g!==d&&(g===null?s.firstBaseUpdate=p:g.next=p,s.lastBaseUpdate=u))}if(i!==null){var o=h.baseState;d=0,s=p=u=null,g=i;do{var a=g.lane,l=g.eventTime;if((r&a)===a){s!==null&&(s=s.next={eventTime:l,lane:0,tag:g.tag,payload:g.payload,callback:g.callback,next:null});e:{var c=e,f=g;switch(a=t,l=n,f.tag){case 1:if(c=f.payload,typeof c=="function"){o=c.call(l,o,a);break e}o=c;break e;case 3:c.flags=c.flags&-65537|128;case 0:if(c=f.payload,a=typeof c=="function"?c.call(l,o,a):c,a==null)break e;o=Le({},o,a);break e;case 2:Tn=!0}}g.callback!==null&&g.lane!==0&&(e.flags|=64,a=h.effects,a===null?h.effects=[g]:a.push(g))}else l={eventTime:l,lane:a,tag:g.tag,payload:g.payload,callback:g.callback,next:null},s===null?(p=s=l,u=o):s=s.next=l,d|=a;if(g=g.next,g===null){if(g=h.shared.pending,g===null)break;a=g,g=a.next,a.next=null,h.lastBaseUpdate=a,h.shared.pending=null}}while(!0);if(s===null&&(u=o),h.baseState=u,h.firstBaseUpdate=p,h.lastBaseUpdate=s,t=h.shared.interleaved,t!==null){h=t;do d|=h.lane,h=h.next;while(h!==t)}else i===null&&(h.shared.lanes=0);er|=d,e.lanes=d,e.memoizedState=o}}function df(e,t,n){if(e=t.effects,t.effects=null,e!==null)for(t=0;tn?n:4,e(!0);var r=rc.transition;rc.transition={};try{e(!1),t()}finally{ve=n,rc.transition=r}}function Tf(){return At().memoizedState}function Fy(e,t,n){var r=Dn(e);if(n={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null},Rf(e))If(t,n);else if(n=cf(e,t,n,r),n!==null){var h=ct();jt(n,e,r,h),Nf(n,t,r)}}function Py(e,t,n){var r=Dn(e),h={lane:r,action:n,hasEagerState:!1,eagerState:null,next:null};if(Rf(e))If(t,h);else{var i=e.alternate;if(e.lanes===0&&(i===null||i.lanes===0)&&(i=t.lastRenderedReducer,i!==null))try{var d=t.lastRenderedState,g=i(d,n);if(h.hasEagerState=!0,h.eagerState=g,Dt(g,d)){var u=t.interleaved;u===null?(h.next=h,Xl(t)):(h.next=u.next,u.next=h),t.interleaved=h;return}}catch{}finally{}n=cf(e,t,h,r),n!==null&&(h=ct(),jt(n,e,r,h),Nf(n,t,r))}}function Rf(e){var t=e.alternate;return e===Te||t!==null&&t===Te}function If(e,t){Gi=Ss=!0;var n=e.pending;n===null?t.next=t:(t.next=n.next,n.next=t),e.pending=t}function Nf(e,t,n){if(n&4194240){var r=t.lanes;r&=e.pendingLanes,n|=r,t.lanes=n,dl(e,n)}}var $s={readContext:_t,useCallback:nt,useContext:nt,useEffect:nt,useImperativeHandle:nt,useInsertionEffect:nt,useLayoutEffect:nt,useMemo:nt,useReducer:nt,useRef:nt,useState:nt,useDebugValue:nt,useDeferredValue:nt,useTransition:nt,useMutableSource:nt,useSyncExternalStore:nt,useId:nt,unstable_isNewReconciler:!1},Wy={readContext:_t,useCallback:function(e,t){return qt().memoizedState=[e,t===void 0?null:t],e},useContext:_t,useEffect:kf,useImperativeHandle:function(e,t,n){return n=n!=null?n.concat([e]):null,xs(4194308,4,_f.bind(null,t,e),n)},useLayoutEffect:function(e,t){return xs(4194308,4,e,t)},useInsertionEffect:function(e,t){return xs(4,2,e,t)},useMemo:function(e,t){var n=qt();return t=t===void 0?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=qt();return t=n!==void 0?n(t):t,r.memoizedState=r.baseState=t,e={pending:null,interleaved:null,lanes:0,dispatch:null,lastRenderedReducer:e,lastRenderedState:t},r.queue=e,e=e.dispatch=Fy.bind(null,Te,e),[r.memoizedState,e]},useRef:function(e){var t=qt();return e={current:e},t.memoizedState=e},useState:Sf,useDebugValue:uc,useDeferredValue:function(e){return qt().memoizedState=e},useTransition:function(){var e=Sf(!1),t=e[0];return e=zy.bind(null,e[1]),qt().memoizedState=e,[t,e]},useMutableSource:function(){},useSyncExternalStore:function(e,t,n){var r=Te,h=qt();if(Ae){if(n===void 0)throw Error(Z(407));n=n()}else{if(n=t(),Ue===null)throw Error(Z(349));Jn&30||mf(r,t,n)}h.memoizedState=n;var i={value:n,getSnapshot:t};return h.queue=i,kf(yf.bind(null,r,i,e),[e]),r.flags|=2048,Qi(9,vf.bind(null,r,i,n,t),void 0,null),n},useId:function(){var e=qt(),t=Ue.identifierPrefix;if(Ae){var n=sn,r=on;n=(r&~(1<<32-Ot(r)-1)).toString(32)+n,t=":"+t+"R"+n,n=Ki++,0<\/script>",e=e.removeChild(e.firstChild)):typeof r.is=="string"?e=d.createElement(n,{is:r.is}):(e=d.createElement(n),n==="select"&&(d=e,r.multiple?d.multiple=!0:r.size&&(d.size=r.size))):e=d.createElementNS(e,n),e[Yt]=t,e[Wi]=r,ep(e,t,!1,!1),t.stateNode=e;e:{switch(d=nl(n,r),n){case"dialog":Se("cancel",e),Se("close",e),h=r;break;case"iframe":case"object":case"embed":Se("load",e),h=r;break;case"video":case"audio":for(h=0;hKr&&(t.flags|=128,r=!0,qi(i,!1),t.lanes=4194304)}else{if(!r)if(e=bs(d),e!==null){if(t.flags|=128,r=!0,n=e.updateQueue,n!==null&&(t.updateQueue=n,t.flags|=4),qi(i,!0),i.tail===null&&i.tailMode==="hidden"&&!d.alternate&&!Ae)return rt(t),null}else 2*Fe()-i.renderingStartTime>Kr&&n!==1073741824&&(t.flags|=128,r=!0,qi(i,!1),t.lanes=4194304);i.isBackwards?(d.sibling=t.child,t.child=d):(n=i.last,n!==null?n.sibling=d:t.child=d,i.last=d)}return i.tail!==null?(t=i.tail,i.rendering=t,i.tail=t.sibling,i.renderingStartTime=Fe(),t.sibling=null,n=Ee.current,we(Ee,r?n&1|2:n&1),t):(rt(t),null);case 22:case 23:return Ic(),r=t.memoizedState!==null,e!==null&&e.memoizedState!==null!==r&&(t.flags|=8192),r&&t.mode&1?wt&1073741824&&(rt(t),t.subtreeFlags&6&&(t.flags|=8192)):rt(t),null;case 24:return null;case 25:return null}throw Error(Z(156,t.tag))}function Yy(e,t){switch(Bl(t),t.tag){case 1:return ht(t.type)&&ls(),e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 3:return Br(),xe(ut),xe(tt),nc(),e=t.flags,e&65536&&!(e&128)?(t.flags=e&-65537|128,t):null;case 5:return ec(t),null;case 13:if(xe(Ee),e=t.memoizedState,e!==null&&e.dehydrated!==null){if(t.alternate===null)throw Error(Z(340));Pr()}return e=t.flags,e&65536?(t.flags=e&-65537|128,t):null;case 19:return xe(Ee),null;case 4:return Br(),null;case 10:return Ql(t.type._context),null;case 22:case 23:return Ic(),null;case 24:return null;default:return null}}var Ms=!1,it=!1,Qy=typeof WeakSet=="function"?WeakSet:Set,te=null;function Vr(e,t){var n=e.ref;if(n!==null)if(typeof n=="function")try{n(null)}catch(r){De(e,t,r)}else n.current=null}function rp(e,t,n){try{n()}catch(r){De(e,t,r)}}var ip=!1;function qy(e,t){if(Nl=Yo,e=Nd(),_l(e)){if("selectionStart"in e)var n={start:e.selectionStart,end:e.selectionEnd};else e:{n=(n=e.ownerDocument)&&n.defaultView||window;var r=n.getSelection&&n.getSelection();if(r&&r.rangeCount!==0){n=r.anchorNode;var h=r.anchorOffset,i=r.focusNode;r=r.focusOffset;try{n.nodeType,i.nodeType}catch{n=null;break e}var d=0,g=-1,u=-1,p=0,s=0,o=e,a=null;t:for(;;){for(var l;o!==n||h!==0&&o.nodeType!==3||(g=d+h),o!==i||r!==0&&o.nodeType!==3||(u=d+r),o.nodeType===3&&(d+=o.nodeValue.length),(l=o.firstChild)!==null;)a=o,o=l;for(;;){if(o===e)break t;if(a===n&&++p===h&&(g=d),a===i&&++s===r&&(u=d),(l=o.nextSibling)!==null)break;o=a,a=o.parentNode}o=l}n=g===-1||u===-1?null:{start:g,end:u}}else n=null}n=n||{start:0,end:0}}else n=null;for(Ol={focusedElem:e,selectionRange:n},Yo=!1,te=t;te!==null;)if(t=te,e=t.child,(t.subtreeFlags&1028)!==0&&e!==null)e.return=t,te=e;else for(;te!==null;){t=te;try{var c=t.alternate;if(t.flags&1024)switch(t.tag){case 0:case 11:case 15:break;case 1:if(c!==null){var f=c.memoizedProps,m=c.memoizedState,v=t.stateNode,y=v.getSnapshotBeforeUpdate(t.elementType===t.type?f:Ft(t.type,f),m);v.__reactInternalSnapshotBeforeUpdate=y}break;case 3:var $=t.stateNode.containerInfo;$.nodeType===1?$.textContent="":$.nodeType===9&&$.documentElement&&$.removeChild($.documentElement);break;case 5:case 6:case 4:case 17:break;default:throw Error(Z(163))}}catch(w){De(t,t.return,w)}if(e=t.sibling,e!==null){e.return=t.return,te=e;break}te=t.return}return c=ip,ip=!1,c}function Xi(e,t,n){var r=t.updateQueue;if(r=r!==null?r.lastEffect:null,r!==null){var h=r=r.next;do{if((h.tag&e)===e){var i=h.destroy;h.destroy=void 0,i!==void 0&&rp(t,n,i)}h=h.next}while(h!==r)}}function Ls(e,t){if(t=t.updateQueue,t=t!==null?t.lastEffect:null,t!==null){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function xc(e){var t=e.ref;if(t!==null){var n=e.stateNode;switch(e.tag){case 5:e=n;break;default:e=n}typeof t=="function"?t(e):t.current=e}}function op(e){var t=e.alternate;t!==null&&(e.alternate=null,op(t)),e.child=null,e.deletions=null,e.sibling=null,e.tag===5&&(t=e.stateNode,t!==null&&(delete t[Yt],delete t[Wi],delete t[Pl],delete t[Ry],delete t[Iy])),e.stateNode=null,e.return=null,e.dependencies=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.stateNode=null,e.updateQueue=null}function sp(e){return e.tag===5||e.tag===3||e.tag===4}function ap(e){e:for(;;){for(;e.sibling===null;){if(e.return===null||sp(e.return))return null;e=e.return}for(e.sibling.return=e.return,e=e.sibling;e.tag!==5&&e.tag!==6&&e.tag!==18;){if(e.flags&2||e.child===null||e.tag===4)continue e;e.child.return=e,e=e.child}if(!(e.flags&2))return e.stateNode}}function kc(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.nodeType===8?n.parentNode.insertBefore(e,t):n.insertBefore(e,t):(n.nodeType===8?(t=n.parentNode,t.insertBefore(e,n)):(t=n,t.appendChild(e)),n=n._reactRootContainer,n!=null||t.onclick!==null||(t.onclick=ss));else if(r!==4&&(e=e.child,e!==null))for(kc(e,t,n),e=e.sibling;e!==null;)kc(e,t,n),e=e.sibling}function $c(e,t,n){var r=e.tag;if(r===5||r===6)e=e.stateNode,t?n.insertBefore(e,t):n.appendChild(e);else if(r!==4&&(e=e.child,e!==null))for($c(e,t,n),e=e.sibling;e!==null;)$c(e,t,n),e=e.sibling}var Ye=null,Pt=!1;function In(e,t,n){for(n=n.child;n!==null;)lp(e,t,n),n=n.sibling}function lp(e,t,n){if(Kt&&typeof Kt.onCommitFiberUnmount=="function")try{Kt.onCommitFiberUnmount(Ho,n)}catch{}switch(n.tag){case 5:it||Vr(n,t);case 6:var r=Ye,h=Pt;Ye=null,In(e,t,n),Ye=r,Pt=h,Ye!==null&&(Pt?(e=Ye,n=n.stateNode,e.nodeType===8?e.parentNode.removeChild(n):e.removeChild(n)):Ye.removeChild(n.stateNode));break;case 18:Ye!==null&&(Pt?(e=Ye,n=n.stateNode,e.nodeType===8?Fl(e.parentNode,n):e.nodeType===1&&Fl(e,n),Li(e)):Fl(Ye,n.stateNode));break;case 4:r=Ye,h=Pt,Ye=n.stateNode.containerInfo,Pt=!0,In(e,t,n),Ye=r,Pt=h;break;case 0:case 11:case 14:case 15:if(!it&&(r=n.updateQueue,r!==null&&(r=r.lastEffect,r!==null))){h=r=r.next;do{var i=h,d=i.destroy;i=i.tag,d!==void 0&&(i&2||i&4)&&rp(n,t,d),h=h.next}while(h!==r)}In(e,t,n);break;case 1:if(!it&&(Vr(n,t),r=n.stateNode,typeof r.componentWillUnmount=="function"))try{r.props=n.memoizedProps,r.state=n.memoizedState,r.componentWillUnmount()}catch(g){De(n,t,g)}In(e,t,n);break;case 21:In(e,t,n);break;case 22:n.mode&1?(it=(r=it)||n.memoizedState!==null,In(e,t,n),it=r):In(e,t,n);break;default:In(e,t,n)}}function cp(e){var t=e.updateQueue;if(t!==null){e.updateQueue=null;var n=e.stateNode;n===null&&(n=e.stateNode=new Qy),t.forEach(function(r){var h=o0.bind(null,e,r);n.has(r)||(n.add(r),r.then(h,h))})}}function Wt(e,t){var n=t.deletions;if(n!==null)for(var r=0;rh&&(h=d),r&=~i}if(r=h,r=Fe()-r,r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*Zy(r/1960))-r,10e?16:e,On===null)var r=!1;else{if(e=On,On=null,Ns=0,pe&6)throw Error(Z(331));var h=pe;for(pe|=4,te=e.current;te!==null;){var i=te,d=i.child;if(te.flags&16){var g=i.deletions;if(g!==null){for(var u=0;uFe()-Ac?nr(e,0):_c|=n),pt(e,t)}function xp(e,t){t===0&&(e.mode&1?(t=Uo,Uo<<=1,!(Uo&130023424)&&(Uo=4194304)):t=1);var n=ct();e=an(e,t),e!==null&&($i(e,t,n),pt(e,n))}function i0(e){var t=e.memoizedState,n=0;t!==null&&(n=t.retryLane),xp(e,n)}function o0(e,t){var n=0;switch(e.tag){case 13:var r=e.stateNode,h=e.memoizedState;h!==null&&(n=h.retryLane);break;case 19:r=e.stateNode;break;default:throw Error(Z(314))}r!==null&&r.delete(t),xp(e,n)}var kp;kp=function(e,t,n){if(e!==null)if(e.memoizedProps!==t.pendingProps||ut.current)dt=!0;else{if(!(e.lanes&n)&&!(t.flags&128))return dt=!1,Gy(e,t,n);dt=!!(e.flags&131072)}else dt=!1,Ae&&t.flags&1048576&&ef(t,ds,t.index);switch(t.lanes=0,t.tag){case 2:var r=t.type;As(e,t),e=t.pendingProps;var h=Dr(t,tt.current);Hr(t,n),h=oc(null,t,r,e,h,n);var i=sc();return t.flags|=1,typeof h=="object"&&h!==null&&typeof h.render=="function"&&h.$$typeof===void 0?(t.tag=1,t.memoizedState=null,t.updateQueue=null,ht(r)?(i=!0,cs(t)):i=!1,t.memoizedState=h.state!==null&&h.state!==void 0?h.state:null,Zl(t),h.updater=Cs,t.stateNode=h,h._reactInternals=t,dc(t,r,e,n),t=mc(null,t,r,!0,i,n)):(t.tag=0,Ae&&i&&Hl(t),lt(null,t,h,n),t=t.child),t;case 16:r=t.elementType;e:{switch(As(e,t),e=t.pendingProps,h=r._init,r=h(r._payload),t.type=r,h=t.tag=a0(r),e=Ft(r,e),h){case 0:t=gc(null,t,r,e,n);break e;case 1:t=Yf(null,t,r,e,n);break e;case 11:t=Bf(null,t,r,e,n);break e;case 14:t=Uf(null,t,r,Ft(r.type,e),n);break e}throw Error(Z(306,r,""))}return t;case 0:return r=t.type,h=t.pendingProps,h=t.elementType===r?h:Ft(r,h),gc(e,t,r,h,n);case 1:return r=t.type,h=t.pendingProps,h=t.elementType===r?h:Ft(r,h),Yf(e,t,r,h,n);case 3:e:{if(Qf(t),e===null)throw Error(Z(387));r=t.pendingProps,i=t.memoizedState,h=i.element,uf(e,t),ys(t,r,null,n);var d=t.memoizedState;if(r=d.element,i.isDehydrated)if(i={element:r,isDehydrated:!1,cache:d.cache,pendingSuspenseBoundaries:d.pendingSuspenseBoundaries,transitions:d.transitions},t.updateQueue.baseState=i,t.memoizedState=i,t.flags&256){h=Ur(Error(Z(423)),t),t=qf(e,t,r,n,h);break e}else if(r!==h){h=Ur(Error(Z(424)),t),t=qf(e,t,r,n,h);break e}else for(bt=An(t.stateNode.containerInfo.firstChild),yt=t,Ae=!0,zt=null,n=lf(t,null,r,n),t.child=n;n;)n.flags=n.flags&-3|4096,n=n.sibling;else{if(Pr(),r===h){t=cn(e,t,n);break e}lt(e,t,r,n)}t=t.child}return t;case 5:return ff(t),e===null&&Vl(t),r=t.type,h=t.pendingProps,i=e!==null?e.memoizedProps:null,d=h.children,Dl(r,h)?d=null:i!==null&&Dl(r,i)&&(t.flags|=32),Kf(e,t),lt(e,t,d,n),t.child;case 6:return e===null&&Vl(t),null;case 13:return Xf(e,t,n);case 4:return Jl(t,t.stateNode.containerInfo),r=t.pendingProps,e===null?t.child=Wr(t,null,r,n):lt(e,t,r,n),t.child;case 11:return r=t.type,h=t.pendingProps,h=t.elementType===r?h:Ft(r,h),Bf(e,t,r,h,n);case 7:return lt(e,t,t.pendingProps,n),t.child;case 8:return lt(e,t,t.pendingProps.children,n),t.child;case 12:return lt(e,t,t.pendingProps.children,n),t.child;case 10:e:{if(r=t.type._context,h=t.pendingProps,i=t.memoizedProps,d=h.value,we(gs,r._currentValue),r._currentValue=d,i!==null)if(Dt(i.value,d)){if(i.children===h.children&&!ut.current){t=cn(e,t,n);break e}}else for(i=t.child,i!==null&&(i.return=t);i!==null;){var g=i.dependencies;if(g!==null){d=i.child;for(var u=g.firstContext;u!==null;){if(u.context===r){if(i.tag===1){u=ln(-1,n&-n),u.tag=2;var p=i.updateQueue;if(p!==null){p=p.shared;var s=p.pending;s===null?u.next=u:(u.next=s.next,s.next=u),p.pending=u}}i.lanes|=n,u=i.alternate,u!==null&&(u.lanes|=n),ql(i.return,n,t),g.lanes|=n;break}u=u.next}}else if(i.tag===10)d=i.type===t.type?null:i.child;else if(i.tag===18){if(d=i.return,d===null)throw Error(Z(341));d.lanes|=n,g=d.alternate,g!==null&&(g.lanes|=n),ql(d,n,t),d=i.sibling}else d=i.child;if(d!==null)d.return=i;else for(d=i;d!==null;){if(d===t){d=null;break}if(i=d.sibling,i!==null){i.return=d.return,d=i;break}d=d.return}i=d}lt(e,t,h.children,n),t=t.child}return t;case 9:return h=t.type,r=t.pendingProps.children,Hr(t,n),h=_t(h),r=r(h),t.flags|=1,lt(e,t,r,n),t.child;case 14:return r=t.type,h=Ft(r,t.pendingProps),h=Ft(r.type,h),Uf(e,t,r,h,n);case 15:return Vf(e,t,t.type,t.pendingProps,n);case 17:return r=t.type,h=t.pendingProps,h=t.elementType===r?h:Ft(r,h),As(e,t),t.tag=1,ht(r)?(e=!0,cs(t)):e=!1,Hr(t,n),Df(t,r,h),dc(t,r,h,n),mc(null,t,r,!0,e,n);case 19:return Jf(e,t,n);case 22:return Gf(e,t,n)}throw Error(Z(156,t.tag))};function $p(e,t){return td(e,t)}function s0(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.subtreeFlags=this.flags=0,this.deletions=null,this.childLanes=this.lanes=0,this.alternate=null}function Lt(e,t,n,r){return new s0(e,t,n,r)}function Oc(e){return e=e.prototype,!(!e||!e.isReactComponent)}function a0(e){if(typeof e=="function")return Oc(e)?1:0;if(e!=null){if(e=e.$$typeof,e===Ha)return 11;if(e===Va)return 14}return 2}function Fn(e,t){var n=e.alternate;return n===null?(n=Lt(e.tag,t,e.key,e.mode),n.elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.subtreeFlags=0,n.deletions=null),n.flags=e.flags&14680064,n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=t===null?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Fs(e,t,n,r,h,i){var d=2;if(r=e,typeof e=="function")Oc(e)&&(d=1);else if(typeof e=="string")d=5;else e:switch(e){case kr:return ir(n.children,h,i,t);case Wa:d=8,h|=8;break;case ja:return e=Lt(12,n,t,h|2),e.elementType=ja,e.lanes=i,e;case Ba:return e=Lt(13,n,t,h),e.elementType=Ba,e.lanes=i,e;case Ua:return e=Lt(19,n,t,h),e.elementType=Ua,e.lanes=i,e;case Th:return Ps(n,h,i,t);default:if(typeof e=="object"&&e!==null)switch(e.$$typeof){case Lh:d=10;break e;case Eh:d=9;break e;case Ha:d=11;break e;case Va:d=14;break e;case bn:d=16,r=null;break e}throw Error(Z(130,e==null?e:typeof e,""))}return t=Lt(d,n,t,h),t.elementType=e,t.type=r,t.lanes=i,t}function ir(e,t,n,r){return e=Lt(7,e,r,t),e.lanes=n,e}function Ps(e,t,n,r){return e=Lt(22,e,r,t),e.elementType=Th,e.lanes=n,e.stateNode={isHidden:!1},e}function Dc(e,t,n){return e=Lt(6,e,null,t),e.lanes=n,e}function zc(e,t,n){return t=Lt(4,e.children!==null?e.children:[],e.key,t),t.lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function l0(e,t,n,r,h){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.callbackNode=this.pendingContext=this.context=null,this.callbackPriority=0,this.eventTimes=hl(0),this.expirationTimes=hl(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=hl(0),this.identifierPrefix=r,this.onRecoverableError=h,this.mutableSourceEagerHydrationData=null}function Fc(e,t,n,r,h,i,d,g,u){return e=new l0(e,t,n,g,u),t===1?(t=1,i===!0&&(t|=8)):t=0,i=Lt(3,null,null,t),e.current=i,i.stateNode=e,i.memoizedState={element:r,isDehydrated:n,cache:null,transitions:null,pendingSuspenseBoundaries:null},Zl(i),e}function c0(e,t,n){var r=3"u"||typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE!="function"))try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(Ep)}catch(e){console.error(e)}}Ep(),kh.exports=gt;var Tp=kh.exports;const p0=Un(Tp);var Rp=Tp;Oa.createRoot=Rp.createRoot,Oa.hydrateRoot=Rp.hydrateRoot;var g0={outline:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"none",stroke:"currentColor",strokeWidth:2,strokeLinecap:"round",strokeLinejoin:"round"},filled:{xmlns:"http://www.w3.org/2000/svg",width:24,height:24,viewBox:"0 0 24 24",fill:"currentColor",stroke:"none"}};const or=(e,t,n,r)=>{const h=W.forwardRef(({color:i="currentColor",size:d=24,stroke:g=2,title:u,className:p,children:s,...o},a)=>W.createElement("svg",{ref:a,...g0[e],width:d,height:d,className:["tabler-icon",`tabler-icon-${t}`,p].join(" "),...e==="filled"?{fill:i}:{strokeWidth:g,stroke:i},...o},[u&&W.createElement("title",{key:"svg-title"},u),...r.map(([l,c])=>W.createElement(l,c)),...Array.isArray(s)?s:[s]]));return h.displayName=`${n}`,h};var m0=or("outline","abc","IconAbc",[["path",{d:"M3 16v-6a2 2 0 1 1 4 0v6",key:"svg-0"}],["path",{d:"M3 13h4",key:"svg-1"}],["path",{d:"M10 8v6a2 2 0 1 0 4 0v-1a2 2 0 1 0 -4 0v1",key:"svg-2"}],["path",{d:"M20.732 12a2 2 0 0 0 -3.732 1v1a2 2 0 0 0 3.726 1.01",key:"svg-3"}]]),v0=or("outline","chevron-down","IconChevronDown",[["path",{d:"M6 9l6 6l6 -6",key:"svg-0"}]]),y0=or("outline","circle-x","IconCircleX",[["path",{d:"M12 12m-9 0a9 9 0 1 0 18 0a9 9 0 1 0 -18 0",key:"svg-0"}],["path",{d:"M10 10l4 4m0 -4l-4 4",key:"svg-1"}]]),b0=or("outline","maximize","IconMaximize",[["path",{d:"M4 8v-2a2 2 0 0 1 2 -2h2",key:"svg-0"}],["path",{d:"M4 16v2a2 2 0 0 0 2 2h2",key:"svg-1"}],["path",{d:"M16 4h2a2 2 0 0 1 2 2v2",key:"svg-2"}],["path",{d:"M16 20h2a2 2 0 0 0 2 -2v-2",key:"svg-3"}]]),w0=or("outline","minimize","IconMinimize",[["path",{d:"M15 19v-2a2 2 0 0 1 2 -2h2",key:"svg-0"}],["path",{d:"M15 5v2a2 2 0 0 0 2 2h2",key:"svg-1"}],["path",{d:"M5 15h2a2 2 0 0 1 2 2v2",key:"svg-2"}],["path",{d:"M5 9h2a2 2 0 0 0 2 -2v-2",key:"svg-3"}]]),S0=or("filled","brand-github-filled","IconBrandGithubFilled",[["path",{d:"M5.315 2.1c.791 -.113 1.9 .145 3.333 .966l.272 .161l.16 .1l.397 -.083a13.3 13.3 0 0 1 4.59 -.08l.456 .08l.396 .083l.161 -.1c1.385 -.84 2.487 -1.17 3.322 -1.148l.164 .008l.147 .017l.076 .014l.05 .011l.144 .047a1 1 0 0 1 .53 .514a5.2 5.2 0 0 1 .397 2.91l-.047 .267l-.046 .196l.123 .163c.574 .795 .93 1.728 1.03 2.707l.023 .295l.007 .272c0 3.855 -1.659 5.883 -4.644 6.68l-.245 .061l-.132 .029l.014 .161l.008 .157l.004 .365l-.002 .213l-.003 3.834a1 1 0 0 1 -.883 .993l-.117 .007h-6a1 1 0 0 1 -.993 -.883l-.007 -.117v-.734c-1.818 .26 -3.03 -.424 -4.11 -1.878l-.535 -.766c-.28 -.396 -.455 -.579 -.589 -.644l-.048 -.019a1 1 0 0 1 .564 -1.918c.642 .188 1.074 .568 1.57 1.239l.538 .769c.76 1.079 1.36 1.459 2.609 1.191l.001 -.678l-.018 -.168a5.03 5.03 0 0 1 -.021 -.824l.017 -.185l.019 -.12l-.108 -.024c-2.976 -.71 -4.703 -2.573 -4.875 -6.139l-.01 -.31l-.004 -.292a5.6 5.6 0 0 1 .908 -3.051l.152 -.222l.122 -.163l-.045 -.196a5.2 5.2 0 0 1 .145 -2.642l.1 -.282l.106 -.253a1 1 0 0 1 .529 -.514l.144 -.047l.154 -.03z",key:"svg-0"}]]),x0=or("filled","moon-filled","IconMoonFilled",[["path",{d:"M12 1.992a10 10 0 1 0 9.236 13.838c.341 -.82 -.476 -1.644 -1.298 -1.31a6.5 6.5 0 0 1 -6.864 -10.787l.077 -.08c.551 -.63 .113 -1.653 -.758 -1.653h-.266l-.068 -.006l-.06 -.002z",key:"svg-0"}]]),Zt=function(){return Zt=Object.assign||function(e){for(var t,n=1,r=arguments.length;n"u")return P0;var t=W0(e),n=document.documentElement.clientWidth,r=window.innerWidth;return{left:t[0],top:t[1],right:t[2],gap:Math.max(0,r-n+t[2]-t[0])}},H0=zp(),Qr="data-scroll-locked",B0=function(e,t,n,r){var h=e.left,i=e.top,d=e.right,g=e.gap;return n===void 0&&(n="margin"),` - .`.concat($0,` { - overflow: hidden `).concat(r,`; - padding-right: `).concat(g,"px ").concat(r,`; - } - body[`).concat(Qr,`] { - overflow: hidden `).concat(r,`; - overscroll-behavior: contain; - `).concat([t&&"position: relative ".concat(r,";"),n==="margin"&&` - padding-left: `.concat(h,`px; - padding-top: `).concat(i,`px; - padding-right: `).concat(d,`px; - margin-left:0; - margin-top:0; - margin-right: `).concat(g,"px ").concat(r,`; - `),n==="padding"&&"padding-right: ".concat(g,"px ").concat(r,";")].filter(Boolean).join(""),` - } - - .`).concat(Gs,` { - right: `).concat(g,"px ").concat(r,`; - } - - .`).concat(Ks,` { - margin-right: `).concat(g,"px ").concat(r,`; - } - - .`).concat(Gs," .").concat(Gs,` { - right: 0 `).concat(r,`; - } - - .`).concat(Ks," .").concat(Ks,` { - margin-right: 0 `).concat(r,`; - } - - body[`).concat(Qr,`] { - `).concat(C0,": ").concat(g,`px; - } -`)},Fp=function(){var e=parseInt(document.body.getAttribute(Qr)||"0",10);return isFinite(e)?e:0},U0=function(){W.useEffect(function(){return document.body.setAttribute(Qr,(Fp()+1).toString()),function(){var e=Fp()-1;e<=0?document.body.removeAttribute(Qr):document.body.setAttribute(Qr,e.toString())}},[])},V0=function(e){var t=e.noRelative,n=e.noImportant,r=e.gapMode,h=r===void 0?"margin":r;U0();var i=W.useMemo(function(){return j0(h)},[h]);return W.createElement(H0,{styles:B0(i,!t,h,n?"":"!important")})},Vc=!1;if(typeof window<"u")try{var Qs=Object.defineProperty({},"passive",{get:function(){return Vc=!0,!0}});window.addEventListener("test",Qs,Qs),window.removeEventListener("test",Qs,Qs)}catch{Vc=!1}var qr=Vc?{passive:!1}:!1,G0=function(e){return e.tagName==="TEXTAREA"},Pp=function(e,t){if(!(e instanceof Element))return!1;var n=window.getComputedStyle(e);return n[t]!=="hidden"&&!(n.overflowY===n.overflowX&&!G0(e)&&n[t]==="visible")},K0=function(e){return Pp(e,"overflowY")},Y0=function(e){return Pp(e,"overflowX")},Wp=function(e,t){var n=t.ownerDocument,r=t;do{typeof ShadowRoot<"u"&&r instanceof ShadowRoot&&(r=r.host);var h=jp(e,r);if(h){var i=Hp(e,r),d=i[1],g=i[2];if(d>g)return!0}r=r.parentNode}while(r&&r!==n.body);return!1},Q0=function(e){var t=e.scrollTop,n=e.scrollHeight,r=e.clientHeight;return[t,n,r]},q0=function(e){var t=e.scrollLeft,n=e.scrollWidth,r=e.clientWidth;return[t,n,r]},jp=function(e,t){return e==="v"?K0(t):Y0(t)},Hp=function(e,t){return e==="v"?Q0(t):q0(t)},X0=function(e,t){return e==="h"&&t==="rtl"?-1:1},Z0=function(e,t,n,r,h){var i=X0(e,window.getComputedStyle(t).direction),d=i*r,g=n.target,u=t.contains(g),p=!1,s=d>0,o=0,a=0;do{var l=Hp(e,g),c=l[0],f=l[1],m=l[2],v=f-m-i*c;(c||v)&&jp(e,g)&&(o+=v,a+=c),g instanceof ShadowRoot?g=g.host:g=g.parentNode}while(!u&&g!==document.body||u&&(t.contains(g)||t===g));return(s&&(Math.abs(o)<1||!h)||!s&&(Math.abs(a)<1||!h))&&(p=!0),p},qs=function(e){return"changedTouches"in e?[e.changedTouches[0].clientX,e.changedTouches[0].clientY]:[0,0]},Bp=function(e){return[e.deltaX,e.deltaY]},Up=function(e){return e&&"current"in e?e.current:e},J0=function(e,t){return e[0]===t[0]&&e[1]===t[1]},eb=function(e){return` - .block-interactivity-`.concat(e,` {pointer-events: none;} - .allow-interactivity-`).concat(e,` {pointer-events: all;} -`)},tb=0,Xr=[];function nb(e){var t=W.useRef([]),n=W.useRef([0,0]),r=W.useRef(),h=W.useState(tb++)[0],i=W.useState(zp)[0],d=W.useRef(e);W.useEffect(function(){d.current=e},[e]),W.useEffect(function(){if(e.inert){document.body.classList.add("block-interactivity-".concat(h));var f=k0([e.lockRef.current],(e.shards||[]).map(Up),!0).filter(Boolean);return f.forEach(function(m){return m.classList.add("allow-interactivity-".concat(h))}),function(){document.body.classList.remove("block-interactivity-".concat(h)),f.forEach(function(m){return m.classList.remove("allow-interactivity-".concat(h))})}}},[e.inert,e.lockRef.current,e.shards]);var g=W.useCallback(function(f,m){if("touches"in f&&f.touches.length===2||f.type==="wheel"&&f.ctrlKey)return!d.current.allowPinchZoom;var v=qs(f),y=n.current,$="deltaX"in f?f.deltaX:y[0]-v[0],w="deltaY"in f?f.deltaY:y[1]-v[1],x,b=f.target,_=Math.abs($)>Math.abs(w)?"h":"v";if("touches"in f&&_==="h"&&b.type==="range")return!1;var R=Wp(_,b);if(!R)return!0;if(R?x=_:(x=_==="v"?"h":"v",R=Wp(_,b)),!R)return!1;if(!r.current&&"changedTouches"in f&&($||w)&&(r.current=x),!x)return!0;var E=r.current||x;return Z0(E,m,f,E==="h"?$:w,!0)},[]),u=W.useCallback(function(f){var m=f;if(!(!Xr.length||Xr[Xr.length-1]!==i)){var v="deltaY"in m?Bp(m):qs(m),y=t.current.filter(function(x){return x.name===m.type&&(x.target===m.target||m.target===x.shadowParent)&&J0(x.delta,v)})[0];if(y&&y.should){m.cancelable&&m.preventDefault();return}if(!y){var $=(d.current.shards||[]).map(Up).filter(Boolean).filter(function(x){return x.contains(m.target)}),w=$.length>0?g(m,$[0]):!d.current.noIsolation;w&&m.cancelable&&m.preventDefault()}}},[]),p=W.useCallback(function(f,m,v,y){var $={name:f,delta:m,target:v,should:y,shadowParent:rb(v)};t.current.push($),setTimeout(function(){t.current=t.current.filter(function(w){return w!==$})},1)},[]),s=W.useCallback(function(f){n.current=qs(f),r.current=void 0},[]),o=W.useCallback(function(f){p(f.type,Bp(f),f.target,g(f,e.lockRef.current))},[]),a=W.useCallback(function(f){p(f.type,qs(f),f.target,g(f,e.lockRef.current))},[]);W.useEffect(function(){return Xr.push(i),e.setCallbacks({onScrollCapture:o,onWheelCapture:o,onTouchMoveCapture:a}),document.addEventListener("wheel",u,qr),document.addEventListener("touchmove",u,qr),document.addEventListener("touchstart",s,qr),function(){Xr=Xr.filter(function(f){return f!==i}),document.removeEventListener("wheel",u,qr),document.removeEventListener("touchmove",u,qr),document.removeEventListener("touchstart",s,qr)}},[]);var l=e.removeScrollBar,c=e.inert;return W.createElement(W.Fragment,null,c?W.createElement(i,{styles:eb(h)}):null,l?W.createElement(V0,{gapMode:e.gapMode}):null)}function rb(e){for(var t=null;e!==null;)e instanceof ShadowRoot&&(t=e.host,e=e.host),e=e.parentNode;return t}const ib=R0(Dp,nb);var Gc=W.forwardRef(function(e,t){return W.createElement(Ys,Zt({},e,{ref:t,sideCar:ib}))});Gc.classNames=Ys.classNames;function qe(e){return Object.keys(e)}function Kc(e){return e&&typeof e=="object"&&!Array.isArray(e)}function Yc(e,t){const n={...e},r=t;return Kc(e)&&Kc(t)&&Object.keys(t).forEach(h=>{Kc(r[h])&&h in e?n[h]=Yc(n[h],r[h]):n[h]=r[h]}),n}function ob(e){return e.replace(/[A-Z]/g,t=>`-${t.toLowerCase()}`)}function sb(e){var t;return typeof e!="string"||!e.includes("var(--mantine-scale)")?e:(t=e.match(/^calc\((.*?)\)$/))==null?void 0:t[1].split("*")[0].trim()}function Qc(e){const t=sb(e);return typeof t=="number"?t:typeof t=="string"?t.includes("calc")||t.includes("var")?t:t.includes("px")?Number(t.replace("px","")):t.includes("rem")?Number(t.replace("rem",""))*16:t.includes("em")?Number(t.replace("em",""))*16:Number(t):NaN}function qc(e){return e==="0rem"?"0rem":`calc(${e} * var(--mantine-scale))`}function Vp(e,{shouldScale:t=!1}={}){function n(r){if(r===0||r==="0")return`0${e}`;if(typeof r=="number"){const h=`${r/16}${e}`;return t?qc(h):h}if(typeof r=="string"){if(r===""||r.startsWith("calc(")||r.startsWith("clamp(")||r.includes("rgba("))return r;if(r.includes(","))return r.split(",").map(i=>n(i)).join(",");if(r.includes(" "))return r.split(" ").map(i=>n(i)).join(" ");if(r.includes(e))return t?qc(r):r;const h=r.replace("px","");if(!Number.isNaN(Number(h))){const i=`${Number(h)/16}${e}`;return t?qc(i):i}}return r}return n}const K=Vp("rem",{shouldScale:!0}),no=Vp("em");function Xc(e){return Object.keys(e).reduce((t,n)=>(e[n]!==void 0&&(t[n]=e[n]),t),{})}function Gp(e){return typeof e=="number"?!0:typeof e=="string"?e.startsWith("calc(")||e.startsWith("var(")||e.includes(" ")&&e.trim()!==""?!0:/[0-9]/.test(e.trim().replace("-","")[0]):!1}function ro(e){const t=W.createContext(null);return[({children:n,value:r})=>V.jsx(t.Provider,{value:r,children:n}),()=>{const n=W.useContext(t);if(n===null)throw new Error(e);return n}]}function Kp(e,t){return n=>{if(typeof n!="string"||n.trim().length===0)throw new Error(t);return`${e}-${n}`}}function io(e,t){let n=e;for(;(n=n.parentElement)&&!n.matches(t););return n}function ab(e,t,n){for(let r=e-1;r>=0;r-=1)if(!t[r].disabled)return r;if(n){for(let r=t.length-1;r>-1;r-=1)if(!t[r].disabled)return r}return e}function lb(e,t,n){for(let r=e+1;r{var c;n==null||n(g);const u=Array.from(((c=io(g.currentTarget,e))==null?void 0:c.querySelectorAll(t))||[]).filter(f=>cb(g.currentTarget,f,e)),p=u.findIndex(f=>g.currentTarget===f),s=lb(p,u,r),o=ab(p,u,r),a=i==="rtl"?o:s,l=i==="rtl"?s:o;switch(g.key){case"ArrowRight":{d==="horizontal"&&(g.stopPropagation(),g.preventDefault(),u[a].focus(),h&&u[a].click());break}case"ArrowLeft":{d==="horizontal"&&(g.stopPropagation(),g.preventDefault(),u[l].focus(),h&&u[l].click());break}case"ArrowUp":{d==="vertical"&&(g.stopPropagation(),g.preventDefault(),u[o].focus(),h&&u[o].click());break}case"ArrowDown":{d==="vertical"&&(g.stopPropagation(),g.preventDefault(),u[s].focus(),h&&u[s].click());break}case"Home":{g.stopPropagation(),g.preventDefault(),!u[0].disabled&&u[0].focus();break}case"End":{g.stopPropagation(),g.preventDefault();const f=u.length-1;!u[f].disabled&&u[f].focus();break}}}}const hb={app:100,modal:200,popover:300,overlay:400,max:9999};function db(e){return hb[e]}function Zr(e,t="size",n=!0){if(e!==void 0)return Gp(e)?n?K(e):e:`var(--${t}-${e})`}function oo(e){return Zr(e,"mantine-spacing")}function Yp(e){return e===void 0?"var(--mantine-radius-default)":Zr(e,"mantine-radius")}function Qp(e){return Zr(e,"mantine-font-size")}function qp(e){return Zr(e,"mantine-line-height",!1)}function Zc(e,t){return e in t?Qc(t[e]):Qc(e)}function Xp(e,t){const n=e.map(r=>({value:r,px:Zc(r,t)}));return n.sort((r,h)=>r.px-h.px),n}function fb(){return`mantine-${Math.random().toString(36).slice(2,11)}`}function sr(e){const t=W.useRef(e);return W.useEffect(()=>{t.current=e}),W.useMemo(()=>(...n)=>{var r;return(r=t.current)==null?void 0:r.call(t,...n)},[])}function Xs(e,t){const n=sr(e),r=W.useRef(0);return W.useEffect(()=>()=>window.clearTimeout(r.current),[]),W.useCallback((...h)=>{window.clearTimeout(r.current),r.current=window.setTimeout(()=>n(...h),t)},[n,t])}const Zp=["mousedown","touchstart"];function pb(e,t,n){const r=W.useRef();return W.useEffect(()=>{const h=i=>{const{target:d}=i??{};if(Array.isArray(n)){const g=(d==null?void 0:d.hasAttribute("data-ignore-outside-clicks"))||!document.body.contains(d)&&d.tagName!=="HTML";n.every(u=>!!u&&!i.composedPath().includes(u))&&!g&&e()}else r.current&&!r.current.contains(d)&&e()};return Zp.forEach(i=>document.addEventListener(i,h)),()=>{Zp.forEach(i=>document.removeEventListener(i,h))}},[r,e,n]),r}function gb(e,t){try{return e.addEventListener("change",t),()=>e.removeEventListener("change",t)}catch{return e.addListener(t),()=>e.removeListener(t)}}function mb(e,t){return typeof window<"u"&&"matchMedia"in window?window.matchMedia(e).matches:!1}function vb(e,t,{getInitialValueInEffect:n}={getInitialValueInEffect:!0}){const[r,h]=W.useState(n?t:mb(e)),i=W.useRef();return W.useEffect(()=>{if("matchMedia"in window)return i.current=window.matchMedia(e),h(i.current.matches),gb(i.current,d=>h(d.matches))},[e]),r}function yb(e,t,n={leading:!1}){const[r,h]=W.useState(e),i=W.useRef(null),d=W.useRef(!0),g=()=>window.clearTimeout(i.current);W.useEffect(()=>g,[]);const u=W.useCallback(p=>{g(),d.current&&n.leading?h(p):i.current=window.setTimeout(()=>{d.current=!0,h(p)},t),d.current=!1},[n.leading]);return[r,u]}const so=typeof document<"u"?W.useLayoutEffect:W.useEffect;function bb(e,t){const n=W.useRef(!1);W.useEffect(()=>()=>{n.current=!1},[]),W.useEffect(()=>{if(n.current)return e();n.current=!0},t)}const wb=Sh.useId||(()=>{});function Sb(){const e=wb();return e?`mantine-${e.replace(/:/g,"")}`:""}function xb(e){const t=Sb(),[n,r]=W.useState(t);return so(()=>{r(fb())},[]),typeof e=="string"?e:typeof window>"u"?t:n}function Jc(e,t,n){W.useEffect(()=>(window.addEventListener(e,t,n),()=>window.removeEventListener(e,t,n)),[e,t])}function kb(e,t){typeof e=="function"?e(t):typeof e=="object"&&e!==null&&"current"in e&&(e.current=t)}function $b(...e){return t=>{e.forEach(n=>kb(n,t))}}function ar(...e){return W.useCallback($b(...e),e)}function Cb({value:e,defaultValue:t,finalValue:n,onChange:r=()=>{}}){const[h,i]=W.useState(t!==void 0?t:n);return e!==void 0?[e,r,!0]:[h,(g,...u)=>{i(g),r==null||r(g,...u)},!1]}function Jp(e,t){return vb("(prefers-reduced-motion: reduce)",e,t)}const _b=e=>e<.5?2*e*e:-1+(4-2*e)*e,Ab=({axis:e,target:t,parent:n,alignment:r,offset:h,isList:i})=>{if(!t||!n&&typeof document>"u")return 0;const d=!!n,g=(n||document.body).getBoundingClientRect(),u=t.getBoundingClientRect(),p=s=>u[s]-g[s];if(e==="y"){const s=p("top");if(s===0)return 0;if(r==="start"){const a=s-h;return a<=u.height*(i?0:1)||!i?a:0}const o=d?g.height:window.innerHeight;if(r==="end"){const a=s+h-o+u.height;return a>=-u.height*(i?0:1)||!i?a:0}return r==="center"?s-o/2+u.height/2:0}if(e==="x"){const s=p("left");if(s===0)return 0;if(r==="start"){const a=s-h;return a<=u.width||!i?a:0}const o=d?g.width:window.innerWidth;if(r==="end"){const a=s+h-o+u.width;return a>=-u.width||!i?a:0}return r==="center"?s-o/2+u.width/2:0}return 0},Mb=({axis:e,parent:t})=>{if(!t&&typeof document>"u")return 0;const n=e==="y"?"scrollTop":"scrollLeft";if(t)return t[n];const{body:r,documentElement:h}=document;return r[n]+h[n]},Lb=({axis:e,parent:t,distance:n})=>{if(!t&&typeof document>"u")return;const r=e==="y"?"scrollTop":"scrollLeft";if(t)t[r]=n;else{const{body:h,documentElement:i}=document;h[r]=n,i[r]=n}};function Eb({duration:e=1250,axis:t="y",onScrollFinish:n,easing:r=_b,offset:h=0,cancelable:i=!0,isList:d=!1}={}){const g=W.useRef(0),u=W.useRef(0),p=W.useRef(!1),s=W.useRef(null),o=W.useRef(null),a=Jp(),l=()=>{g.current&&cancelAnimationFrame(g.current)},c=W.useCallback(({alignment:m="start"}={})=>{p.current=!1,g.current&&l();const v=Mb({parent:s.current,axis:t})??0,y=Ab({parent:s.current,target:o.current,axis:t,alignment:m,offset:h,isList:d})-(s.current?0:v);function $(){u.current===0&&(u.current=performance.now());const w=performance.now()-u.current,x=a||e===0?1:w/e,b=v+y*r(x);Lb({parent:s.current,axis:t,distance:b}),!p.current&&x<1?g.current=requestAnimationFrame($):(typeof n=="function"&&n(),u.current=0,g.current=0,l())}$()},[t,e,r,d,h,n,a]),f=()=>{i&&(p.current=!0)};return Jc("wheel",f,{passive:!0}),Jc("touchmove",f,{passive:!0}),W.useEffect(()=>l,[]),{scrollableRef:s,targetRef:o,scrollIntoView:c,cancel:l}}function eg(){const e=window.document;return e.fullscreenElement||e.webkitFullscreenElement||e.mozFullScreenElement||e.msFullscreenElement}function Tb(){const e=window.document;return typeof e.exitFullscreen=="function"?e.exitFullscreen():typeof e.msExitFullscreen=="function"?e.msExitFullscreen():typeof e.webkitExitFullscreen=="function"?e.webkitExitFullscreen():typeof e.mozCancelFullScreen=="function"?e.mozCancelFullScreen():null}function Rb(e){var n,r,h,i,d;const t=e;return((n=t.requestFullscreen)==null?void 0:n.call(t))||((r=t.msRequestFullscreen)==null?void 0:r.call(t))||((h=t.webkitEnterFullscreen)==null?void 0:h.call(t))||((i=t.webkitRequestFullscreen)==null?void 0:i.call(t))||((d=t.mozRequestFullscreen)==null?void 0:d.call(t))}const tg=["","webkit","moz","ms"];function ng(e,{onFullScreen:t,onError:n}){return tg.forEach(r=>{e.addEventListener(`${r}fullscreenchange`,t),e.addEventListener(`${r}fullscreenerror`,n)}),()=>{tg.forEach(r=>{e.removeEventListener(`${r}fullscreenchange`,t),e.removeEventListener(`${r}fullscreenerror`,n)})}}function Ib(){const[e,t]=W.useState(!1),n=W.useRef(),r=W.useCallback(g=>{t(g.target===eg())},[t]),h=W.useCallback(g=>{t(!1),console.error(`[@mantine/hooks] use-fullscreen: Error attempting full-screen mode method: ${g} (${g.target})`)},[t]),i=W.useCallback(async()=>{eg()?await Tb():await Rb(n.current)},[]),d=W.useCallback(g=>{g===null?n.current=window.document.documentElement:n.current=g},[]);return W.useEffect(()=>{if(!n.current&&window.document)return n.current=window.document.documentElement,ng(n.current,{onFullScreen:r,onError:h});if(n.current)return ng(n.current,{onFullScreen:r,onError:h})},[]),{ref:d,toggle:i,fullscreen:e}}function rg(e){const t=new Map;return(...n)=>{const r=JSON.stringify(n);if(t.has(r))return t.get(r);const h=e(...n);return t.set(r,h),h}}function ig(e){var t,n,r="";if(typeof e=="string"||typeof e=="number")r+=e;else if(typeof e=="object")if(Array.isArray(e)){var h=e.length;for(t=0;t{Object.entries(n).forEach(([r,h])=>{t[r]?t[r]=hn(t[r],h):t[r]=h})}),t}function eu({theme:e,classNames:t,props:n,stylesCtx:r}){const h=(Array.isArray(t)?t:[t]).map(i=>typeof i=="function"?i(e,n,r):i||Nb);return Ob(h)}function tu({theme:e,styles:t,props:n,stylesCtx:r}){return(Array.isArray(t)?t:[t]).reduce((h,i)=>typeof i=="function"?{...h,...i(e,n,r)}:{...h,...i},{})}const og=W.createContext(null);function Pn(){const e=W.useContext(og);if(!e)throw new Error("[@mantine/core] MantineProvider was not found in tree");return e}function Db(){return Pn().cssVariablesResolver}function zb(){return Pn().classNamesPrefix}function nu(){return Pn().getStyleNonce}function Fb(){return Pn().withStaticClasses}function Pb(){return Pn().headless}function Wb(){var e;return(e=Pn().stylesTransform)==null?void 0:e.sx}function jb(){var e;return(e=Pn().stylesTransform)==null?void 0:e.styles}function Hb(e){return/^#?([0-9A-F]{3}){1,2}([0-9A-F]{2})?$/i.test(e)}function Bb(e){let t=e.replace("#","");if(t.length===3){const d=t.split("");t=[d[0],d[0],d[1],d[1],d[2],d[2]].join("")}if(t.length===8){const d=parseInt(t.slice(6,8),16)/255;return{r:parseInt(t.slice(0,2),16),g:parseInt(t.slice(2,4),16),b:parseInt(t.slice(4,6),16),a:d}}const n=parseInt(t,16),r=n>>16&255,h=n>>8&255,i=n&255;return{r,g:h,b:i,a:1}}function Ub(e){const[t,n,r,h]=e.replace(/[^0-9,./]/g,"").split(/[/,]/).map(Number);return{r:t,g:n,b:r,a:h||1}}function Vb(e){const t=/^hsla?\(\s*(\d+)\s*,\s*(\d+%)\s*,\s*(\d+%)\s*(,\s*(0?\.\d+|\d+(\.\d+)?))?\s*\)$/i,n=e.match(t);if(!n)return{r:0,g:0,b:0,a:1};const r=parseInt(n[1],10),h=parseInt(n[2],10)/100,i=parseInt(n[3],10)/100,d=n[5]?parseFloat(n[5]):void 0,g=(1-Math.abs(2*i-1))*h,u=r/60,p=g*(1-Math.abs(u%2-1)),s=i-g/2;let o,a,l;return u>=0&&u<1?(o=g,a=p,l=0):u>=1&&u<2?(o=p,a=g,l=0):u>=2&&u<3?(o=0,a=g,l=p):u>=3&&u<4?(o=0,a=p,l=g):u>=4&&u<5?(o=p,a=0,l=g):(o=g,a=0,l=p),{r:Math.round((o+s)*255),g:Math.round((a+s)*255),b:Math.round((l+s)*255),a:d||1}}function ru(e){return Hb(e)?Bb(e):e.startsWith("rgb")?Ub(e):e.startsWith("hsl")?Vb(e):{r:0,g:0,b:0,a:1}}function Zs(e,t){if(e.startsWith("var("))return`color-mix(in srgb, ${e}, black ${t*100}%)`;const{r:n,g:r,b:h,a:i}=ru(e),d=1-t,g=u=>Math.round(u*d);return`rgba(${g(n)}, ${g(r)}, ${g(h)}, ${i})`}function ao(e,t){return typeof e.primaryShade=="number"?e.primaryShade:t==="dark"?e.primaryShade.dark:e.primaryShade.light}function iu(e){return e<=.03928?e/12.92:((e+.055)/1.055)**2.4}function Gb(e){const t=e.match(/oklch\((.*?)%\s/);return t?parseFloat(t[1]):null}function Kb(e){if(e.startsWith("oklch("))return(Gb(e)||0)/100;const{r:t,g:n,b:r}=ru(e),h=t/255,i=n/255,d=r/255,g=iu(h),u=iu(i),p=iu(d);return .2126*g+.7152*u+.0722*p}function lo(e,t=.179){return e.startsWith("var(")?!1:Kb(e)>t}function co({color:e,theme:t,colorScheme:n}){if(typeof e!="string")throw new Error(`[@mantine/core] Failed to parse color. Expected color to be a string, instead got ${typeof e}`);if(e==="bright")return{color:e,value:n==="dark"?t.white:t.black,shade:void 0,isThemeColor:!1,isLight:lo(n==="dark"?t.white:t.black,t.luminanceThreshold),variable:"--mantine-color-bright"};if(e==="dimmed")return{color:e,value:n==="dark"?t.colors.dark[2]:t.colors.gray[7],shade:void 0,isThemeColor:!1,isLight:lo(n==="dark"?t.colors.dark[2]:t.colors.gray[6],t.luminanceThreshold),variable:"--mantine-color-dimmed"};if(e==="white"||e==="black")return{color:e,value:e==="white"?t.white:t.black,shade:void 0,isThemeColor:!1,isLight:lo(e==="white"?t.white:t.black,t.luminanceThreshold),variable:`--mantine-color-${e}`};const[r,h]=e.split("."),i=h?Number(h):void 0,d=r in t.colors;if(d){const g=i!==void 0?t.colors[r][i]:t.colors[r][ao(t,n||"light")];return{color:r,value:g,shade:i,isThemeColor:d,isLight:lo(g,t.luminanceThreshold),variable:h?`--mantine-color-${r}-${i}`:`--mantine-color-${r}-filled`}}return{color:e,value:e,isThemeColor:d,isLight:lo(e,t.luminanceThreshold),shade:i,variable:void 0}}function Jr(e,t){const n=co({color:e||t.primaryColor,theme:t});return n.variable?`var(${n.variable})`:e}function ou(e,t){const n={from:(e==null?void 0:e.from)||t.defaultGradient.from,to:(e==null?void 0:e.to)||t.defaultGradient.to,deg:(e==null?void 0:e.deg)||t.defaultGradient.deg||0},r=Jr(n.from,t),h=Jr(n.to,t);return`linear-gradient(${n.deg}deg, ${r} 0%, ${h} 100%)`}function dn(e,t){if(typeof e!="string"||t>1||t<0)return"rgba(0, 0, 0, 1)";if(e.startsWith("var(")){const i=(1-t)*100;return`color-mix(in srgb, ${e}, transparent ${i}%)`}if(e.startsWith("oklch"))return e.includes("/")?e.replace(/\/\s*[\d.]+\s*\)/,`/ ${t})`):e.replace(")",` / ${t})`);const{r:n,g:r,b:h}=ru(e);return`rgba(${n}, ${r}, ${h}, ${t})`}const ei=dn,Yb=({color:e,theme:t,variant:n,gradient:r,autoContrast:h})=>{const i=co({color:e,theme:t}),d=typeof h=="boolean"?h:t.autoContrast;if(n==="filled"){const g=d&&i.isLight?"var(--mantine-color-black)":"var(--mantine-color-white)";return i.isThemeColor?i.shade===void 0?{background:`var(--mantine-color-${e}-filled)`,hover:`var(--mantine-color-${e}-filled-hover)`,color:g,border:`${K(1)} solid transparent`}:{background:`var(--mantine-color-${i.color}-${i.shade})`,hover:`var(--mantine-color-${i.color}-${i.shade===9?8:i.shade+1})`,color:g,border:`${K(1)} solid transparent`}:{background:e,hover:Zs(e,.1),color:g,border:`${K(1)} solid transparent`}}if(n==="light"){if(i.isThemeColor){if(i.shade===void 0)return{background:`var(--mantine-color-${e}-light)`,hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${K(1)} solid transparent`};const g=t.colors[i.color][i.shade];return{background:dn(g,.1),hover:dn(g,.12),color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${K(1)} solid transparent`}}return{background:dn(e,.1),hover:dn(e,.12),color:e,border:`${K(1)} solid transparent`}}if(n==="outline")return i.isThemeColor?i.shade===void 0?{background:"transparent",hover:`var(--mantine-color-${e}-outline-hover)`,color:`var(--mantine-color-${e}-outline)`,border:`${K(1)} solid var(--mantine-color-${e}-outline)`}:{background:"transparent",hover:dn(t.colors[i.color][i.shade],.05),color:`var(--mantine-color-${i.color}-${i.shade})`,border:`${K(1)} solid var(--mantine-color-${i.color}-${i.shade})`}:{background:"transparent",hover:dn(e,.05),color:e,border:`${K(1)} solid ${e}`};if(n==="subtle"){if(i.isThemeColor){if(i.shade===void 0)return{background:"transparent",hover:`var(--mantine-color-${e}-light-hover)`,color:`var(--mantine-color-${e}-light-color)`,border:`${K(1)} solid transparent`};const g=t.colors[i.color][i.shade];return{background:"transparent",hover:dn(g,.12),color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${K(1)} solid transparent`}}return{background:"transparent",hover:dn(e,.12),color:e,border:`${K(1)} solid transparent`}}return n==="transparent"?i.isThemeColor?i.shade===void 0?{background:"transparent",hover:"transparent",color:`var(--mantine-color-${e}-light-color)`,border:`${K(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:`var(--mantine-color-${i.color}-${Math.min(i.shade,6)})`,border:`${K(1)} solid transparent`}:{background:"transparent",hover:"transparent",color:e,border:`${K(1)} solid transparent`}:n==="white"?i.isThemeColor?i.shade===void 0?{background:"var(--mantine-color-white)",hover:Zs(t.white,.01),color:`var(--mantine-color-${e}-filled)`,border:`${K(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Zs(t.white,.01),color:`var(--mantine-color-${i.color}-${i.shade})`,border:`${K(1)} solid transparent`}:{background:"var(--mantine-color-white)",hover:Zs(t.white,.01),color:e,border:`${K(1)} solid transparent`}:n==="gradient"?{background:ou(r,t),hover:ou(r,t),color:"var(--mantine-color-white)",border:"none"}:n==="default"?{background:"var(--mantine-color-default)",hover:"var(--mantine-color-default-hover)",color:"var(--mantine-color-default-color)",border:`${K(1)} solid var(--mantine-color-default-border)`}:{}},Qb={dark:["#C9C9C9","#b8b8b8","#828282","#696969","#424242","#3b3b3b","#2e2e2e","#242424","#1f1f1f","#141414"],gray:["#f8f9fa","#f1f3f5","#e9ecef","#dee2e6","#ced4da","#adb5bd","#868e96","#495057","#343a40","#212529"],red:["#fff5f5","#ffe3e3","#ffc9c9","#ffa8a8","#ff8787","#ff6b6b","#fa5252","#f03e3e","#e03131","#c92a2a"],pink:["#fff0f6","#ffdeeb","#fcc2d7","#faa2c1","#f783ac","#f06595","#e64980","#d6336c","#c2255c","#a61e4d"],grape:["#f8f0fc","#f3d9fa","#eebefa","#e599f7","#da77f2","#cc5de8","#be4bdb","#ae3ec9","#9c36b5","#862e9c"],violet:["#f3f0ff","#e5dbff","#d0bfff","#b197fc","#9775fa","#845ef7","#7950f2","#7048e8","#6741d9","#5f3dc4"],indigo:["#edf2ff","#dbe4ff","#bac8ff","#91a7ff","#748ffc","#5c7cfa","#4c6ef5","#4263eb","#3b5bdb","#364fc7"],blue:["#e7f5ff","#d0ebff","#a5d8ff","#74c0fc","#4dabf7","#339af0","#228be6","#1c7ed6","#1971c2","#1864ab"],cyan:["#e3fafc","#c5f6fa","#99e9f2","#66d9e8","#3bc9db","#22b8cf","#15aabf","#1098ad","#0c8599","#0b7285"],teal:["#e6fcf5","#c3fae8","#96f2d7","#63e6be","#38d9a9","#20c997","#12b886","#0ca678","#099268","#087f5b"],green:["#ebfbee","#d3f9d8","#b2f2bb","#8ce99a","#69db7c","#51cf66","#40c057","#37b24d","#2f9e44","#2b8a3e"],lime:["#f4fce3","#e9fac8","#d8f5a2","#c0eb75","#a9e34b","#94d82d","#82c91e","#74b816","#66a80f","#5c940d"],yellow:["#fff9db","#fff3bf","#ffec99","#ffe066","#ffd43b","#fcc419","#fab005","#f59f00","#f08c00","#e67700"],orange:["#fff4e6","#ffe8cc","#ffd8a8","#ffc078","#ffa94d","#ff922b","#fd7e14","#f76707","#e8590c","#d9480f"]},sg="-apple-system, BlinkMacSystemFont, Segoe UI, Roboto, Helvetica, Arial, sans-serif, Apple Color Emoji, Segoe UI Emoji",Js={scale:1,fontSmoothing:!0,focusRing:"auto",white:"#fff",black:"#000",colors:Qb,primaryShade:{light:6,dark:8},primaryColor:"blue",variantColorResolver:Yb,autoContrast:!1,luminanceThreshold:.3,fontFamily:sg,fontFamilyMonospace:"ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, Liberation Mono, Courier New, monospace",respectReducedMotion:!1,cursorType:"default",defaultGradient:{from:"blue",to:"cyan",deg:45},defaultRadius:"sm",activeClassName:"mantine-active",focusClassName:"",headings:{fontFamily:sg,fontWeight:"700",textWrap:"wrap",sizes:{h1:{fontSize:K(34),lineHeight:"1.3"},h2:{fontSize:K(26),lineHeight:"1.35"},h3:{fontSize:K(22),lineHeight:"1.4"},h4:{fontSize:K(18),lineHeight:"1.45"},h5:{fontSize:K(16),lineHeight:"1.5"},h6:{fontSize:K(14),lineHeight:"1.5"}}},fontSizes:{xs:K(12),sm:K(14),md:K(16),lg:K(18),xl:K(20)},lineHeights:{xs:"1.4",sm:"1.45",md:"1.55",lg:"1.6",xl:"1.65"},radius:{xs:K(2),sm:K(4),md:K(8),lg:K(16),xl:K(32)},spacing:{xs:K(10),sm:K(12),md:K(16),lg:K(20),xl:K(32)},breakpoints:{xs:"36em",sm:"48em",md:"62em",lg:"75em",xl:"88em"},shadows:{xs:`0 ${K(1)} ${K(3)} rgba(0, 0, 0, 0.05), 0 ${K(1)} ${K(2)} rgba(0, 0, 0, 0.1)`,sm:`0 ${K(1)} ${K(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${K(10)} ${K(15)} ${K(-5)}, rgba(0, 0, 0, 0.04) 0 ${K(7)} ${K(7)} ${K(-5)}`,md:`0 ${K(1)} ${K(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${K(20)} ${K(25)} ${K(-5)}, rgba(0, 0, 0, 0.04) 0 ${K(10)} ${K(10)} ${K(-5)}`,lg:`0 ${K(1)} ${K(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${K(28)} ${K(23)} ${K(-7)}, rgba(0, 0, 0, 0.04) 0 ${K(12)} ${K(12)} ${K(-7)}`,xl:`0 ${K(1)} ${K(3)} rgba(0, 0, 0, 0.05), rgba(0, 0, 0, 0.05) 0 ${K(36)} ${K(28)} ${K(-7)}, rgba(0, 0, 0, 0.04) 0 ${K(17)} ${K(17)} ${K(-7)}`},other:{},components:{}};function ag(e){return e==="auto"||e==="dark"||e==="light"}function qb({key:e="mantine-color-scheme-value"}={}){let t;return{get:n=>{if(typeof window>"u")return n;try{const r=window.localStorage.getItem(e);return ag(r)?r:n}catch{return n}},set:n=>{try{window.localStorage.setItem(e,n)}catch(r){console.warn("[@mantine/core] Local storage color scheme manager was unable to save color scheme.",r)}},subscribe:n=>{t=r=>{r.storageArea===window.localStorage&&r.key===e&&ag(r.newValue)&&n(r.newValue)},window.addEventListener("storage",t)},unsubscribe:()=>{window.removeEventListener("storage",t)},clear:()=>{window.localStorage.removeItem(e)}}}const Xb="[@mantine/core] MantineProvider: Invalid theme.primaryColor, it accepts only key of theme.colors, learn more \u2013 https://mantine.dev/theming/colors/#primary-color",lg="[@mantine/core] MantineProvider: Invalid theme.primaryShade, it accepts only 0-9 integers or an object { light: 0-9, dark: 0-9 }";function su(e){return e<0||e>9?!1:parseInt(e.toString(),10)===e}function cg(e){if(!(e.primaryColor in e.colors))throw new Error(Xb);if(typeof e.primaryShade=="object"&&(!su(e.primaryShade.dark)||!su(e.primaryShade.light)))throw new Error(lg);if(typeof e.primaryShade=="number"&&!su(e.primaryShade))throw new Error(lg)}function ug(e,t){var r;if(!t)return cg(e),e;const n=Yc(e,t);return t.fontFamily&&!((r=t.headings)!=null&&r.fontFamily)&&(n.headings.fontFamily=t.fontFamily),cg(n),n}const au=W.createContext(null),Zb=()=>W.useContext(au)||Js;function fn(){const e=W.useContext(au);if(!e)throw new Error("@mantine/core: MantineProvider was not found in component tree, make sure you have it in your app");return e}function hg({theme:e,children:t,inherit:n=!0}){const r=Zb(),h=W.useMemo(()=>ug(n?r:Js,e),[e,r,n]);return V.jsx(au.Provider,{value:h,children:t})}hg.displayName="@mantine/core/MantineThemeProvider";function Jb(){const e=fn(),t=nu(),n=qe(e.breakpoints).reduce((r,h)=>{const i=e.breakpoints[h].includes("px"),d=Qc(e.breakpoints[h]),g=i?`${d-.1}px`:no(d-.1),u=i?`${d}px`:no(d);return`${r}@media (max-width: ${g}) {.mantine-visible-from-${h} {display: none !important;}}@media (min-width: ${u}) {.mantine-hidden-from-${h} {display: none !important;}}`},"");return V.jsx("style",{"data-mantine-styles":"classes",nonce:t==null?void 0:t(),dangerouslySetInnerHTML:{__html:n}})}function lu(e){return Object.entries(e).map(([t,n])=>`${t}: ${n};`).join("")}function cu(e,t){return(Array.isArray(e)?e:[e]).reduce((n,r)=>`${r}{${n}}`,t)}function ew(e,t){const n=lu(e.variables),r=n?cu(t,n):"",h=lu(e.dark),i=lu(e.light),d=h?cu(t===":host"?`${t}([data-mantine-color-scheme="dark"])`:`${t}[data-mantine-color-scheme="dark"]`,h):"",g=i?cu(t===":host"?`${t}([data-mantine-color-scheme="light"])`:`${t}[data-mantine-color-scheme="light"]`,i):"";return`${r}${d}${g}`}function dg({color:e,theme:t,autoContrast:n}){return(typeof n=="boolean"?n:t.autoContrast)&&co({color:e||t.primaryColor,theme:t}).isLight?"var(--mantine-color-black)":"var(--mantine-color-white)"}function fg(e,t){return dg({color:e.colors[e.primaryColor][ao(e,t)],theme:e,autoContrast:null})}function ea({theme:e,color:t,colorScheme:n,name:r=t,withColorValues:h=!0}){if(!e.colors[t])return{};if(n==="light"){const g=ao(e,"light"),u={[`--mantine-color-${r}-text`]:`var(--mantine-color-${r}-filled)`,[`--mantine-color-${r}-filled`]:`var(--mantine-color-${r}-${g})`,[`--mantine-color-${r}-filled-hover`]:`var(--mantine-color-${r}-${g===9?8:g+1})`,[`--mantine-color-${r}-light`]:ei(e.colors[t][g],.1),[`--mantine-color-${r}-light-hover`]:ei(e.colors[t][g],.12),[`--mantine-color-${r}-light-color`]:`var(--mantine-color-${r}-${g})`,[`--mantine-color-${r}-outline`]:`var(--mantine-color-${r}-${g})`,[`--mantine-color-${r}-outline-hover`]:ei(e.colors[t][g],.05)};return h?{[`--mantine-color-${r}-0`]:e.colors[t][0],[`--mantine-color-${r}-1`]:e.colors[t][1],[`--mantine-color-${r}-2`]:e.colors[t][2],[`--mantine-color-${r}-3`]:e.colors[t][3],[`--mantine-color-${r}-4`]:e.colors[t][4],[`--mantine-color-${r}-5`]:e.colors[t][5],[`--mantine-color-${r}-6`]:e.colors[t][6],[`--mantine-color-${r}-7`]:e.colors[t][7],[`--mantine-color-${r}-8`]:e.colors[t][8],[`--mantine-color-${r}-9`]:e.colors[t][9],...u}:u}const i=ao(e,"dark"),d={[`--mantine-color-${r}-text`]:`var(--mantine-color-${r}-4)`,[`--mantine-color-${r}-filled`]:`var(--mantine-color-${r}-${i})`,[`--mantine-color-${r}-filled-hover`]:`var(--mantine-color-${r}-${i===9?8:i+1})`,[`--mantine-color-${r}-light`]:ei(e.colors[t][Math.max(0,i-2)],.15),[`--mantine-color-${r}-light-hover`]:ei(e.colors[t][Math.max(0,i-2)],.2),[`--mantine-color-${r}-light-color`]:`var(--mantine-color-${r}-${Math.max(i-5,0)})`,[`--mantine-color-${r}-outline`]:`var(--mantine-color-${r}-${Math.max(i-4,0)})`,[`--mantine-color-${r}-outline-hover`]:ei(e.colors[t][Math.max(i-4,0)],.05)};return h?{[`--mantine-color-${r}-0`]:e.colors[t][0],[`--mantine-color-${r}-1`]:e.colors[t][1],[`--mantine-color-${r}-2`]:e.colors[t][2],[`--mantine-color-${r}-3`]:e.colors[t][3],[`--mantine-color-${r}-4`]:e.colors[t][4],[`--mantine-color-${r}-5`]:e.colors[t][5],[`--mantine-color-${r}-6`]:e.colors[t][6],[`--mantine-color-${r}-7`]:e.colors[t][7],[`--mantine-color-${r}-8`]:e.colors[t][8],[`--mantine-color-${r}-9`]:e.colors[t][9],...d}:d}function tw(e){return!!e&&typeof e=="object"&&"mantine-virtual-color"in e}function ti(e,t,n){qe(t).forEach(r=>Object.assign(e,{[`--mantine-${n}-${r}`]:t[r]}))}const pg=e=>{const t=ao(e,"light"),n=e.defaultRadius in e.radius?e.radius[e.defaultRadius]:K(e.defaultRadius),r={variables:{"--mantine-scale":e.scale.toString(),"--mantine-cursor-type":e.cursorType,"--mantine-color-scheme":"light dark","--mantine-webkit-font-smoothing":e.fontSmoothing?"antialiased":"unset","--mantine-moz-font-smoothing":e.fontSmoothing?"grayscale":"unset","--mantine-color-white":e.white,"--mantine-color-black":e.black,"--mantine-line-height":e.lineHeights.md,"--mantine-font-family":e.fontFamily,"--mantine-font-family-monospace":e.fontFamilyMonospace,"--mantine-font-family-headings":e.headings.fontFamily,"--mantine-heading-font-weight":e.headings.fontWeight,"--mantine-heading-text-wrap":e.headings.textWrap,"--mantine-radius-default":n,"--mantine-primary-color-filled":`var(--mantine-color-${e.primaryColor}-filled)`,"--mantine-primary-color-filled-hover":`var(--mantine-color-${e.primaryColor}-filled-hover)`,"--mantine-primary-color-light":`var(--mantine-color-${e.primaryColor}-light)`,"--mantine-primary-color-light-hover":`var(--mantine-color-${e.primaryColor}-light-hover)`,"--mantine-primary-color-light-color":`var(--mantine-color-${e.primaryColor}-light-color)`},light:{"--mantine-primary-color-contrast":fg(e,"light"),"--mantine-color-bright":"var(--mantine-color-black)","--mantine-color-text":e.black,"--mantine-color-body":e.white,"--mantine-color-error":"var(--mantine-color-red-6)","--mantine-color-placeholder":"var(--mantine-color-gray-5)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-${t})`,"--mantine-color-default":"var(--mantine-color-white)","--mantine-color-default-hover":"var(--mantine-color-gray-0)","--mantine-color-default-color":"var(--mantine-color-black)","--mantine-color-default-border":"var(--mantine-color-gray-4)","--mantine-color-dimmed":"var(--mantine-color-gray-6)"},dark:{"--mantine-primary-color-contrast":fg(e,"dark"),"--mantine-color-bright":"var(--mantine-color-white)","--mantine-color-text":"var(--mantine-color-dark-0)","--mantine-color-body":"var(--mantine-color-dark-7)","--mantine-color-error":"var(--mantine-color-red-8)","--mantine-color-placeholder":"var(--mantine-color-dark-3)","--mantine-color-anchor":`var(--mantine-color-${e.primaryColor}-4)`,"--mantine-color-default":"var(--mantine-color-dark-6)","--mantine-color-default-hover":"var(--mantine-color-dark-5)","--mantine-color-default-color":"var(--mantine-color-white)","--mantine-color-default-border":"var(--mantine-color-dark-4)","--mantine-color-dimmed":"var(--mantine-color-dark-2)"}};ti(r.variables,e.breakpoints,"breakpoint"),ti(r.variables,e.spacing,"spacing"),ti(r.variables,e.fontSizes,"font-size"),ti(r.variables,e.lineHeights,"line-height"),ti(r.variables,e.shadows,"shadow"),ti(r.variables,e.radius,"radius"),e.colors[e.primaryColor].forEach((i,d)=>{r.variables[`--mantine-primary-color-${d}`]=`var(--mantine-color-${e.primaryColor}-${d})`}),qe(e.colors).forEach(i=>{const d=e.colors[i];if(tw(d)){Object.assign(r.light,ea({theme:e,name:d.name,color:d.light,colorScheme:"light",withColorValues:!0})),Object.assign(r.dark,ea({theme:e,name:d.name,color:d.dark,colorScheme:"dark",withColorValues:!0}));return}d.forEach((g,u)=>{r.variables[`--mantine-color-${i}-${u}`]=g}),Object.assign(r.light,ea({theme:e,color:i,colorScheme:"light",withColorValues:!1})),Object.assign(r.dark,ea({theme:e,color:i,colorScheme:"dark",withColorValues:!1}))});const h=e.headings.sizes;return qe(h).forEach(i=>{r.variables[`--mantine-${i}-font-size`]=h[i].fontSize,r.variables[`--mantine-${i}-line-height`]=h[i].lineHeight,r.variables[`--mantine-${i}-font-weight`]=h[i].fontWeight||e.headings.fontWeight}),r};function nw({theme:e,generator:t}){const n=pg(e),r=t==null?void 0:t(e);return r?Yc(n,r):n}const uu=pg(Js);function rw(e){const t={variables:{},light:{},dark:{}};return qe(e.variables).forEach(n=>{uu.variables[n]!==e.variables[n]&&(t.variables[n]=e.variables[n])}),qe(e.light).forEach(n=>{uu.light[n]!==e.light[n]&&(t.light[n]=e.light[n])}),qe(e.dark).forEach(n=>{uu.dark[n]!==e.dark[n]&&(t.dark[n]=e.dark[n])}),t}function iw(e){return` - ${e}[data-mantine-color-scheme="dark"] { --mantine-color-scheme: dark; } - ${e}[data-mantine-color-scheme="light"] { --mantine-color-scheme: light; } -`}function gg({cssVariablesSelector:e,deduplicateCssVariables:t}){const n=fn(),r=nu(),h=Db(),i=nw({theme:n,generator:h}),d=e===":root"&&t,g=d?rw(i):i,u=ew(g,e);return u?V.jsx("style",{"data-mantine-styles":!0,nonce:r==null?void 0:r(),dangerouslySetInnerHTML:{__html:`${u}${d?"":iw(e)}`}}):null}gg.displayName="@mantine/CssVariables";function ow(){const e=console.error;console.error=(...t)=>{t.length>1&&typeof t[0]=="string"&&t[0].toLowerCase().includes("extra attributes from the server")&&typeof t[1]=="string"&&t[1].toLowerCase().includes("data-mantine-color-scheme")||e(...t)}}function ni(e,t){var r;const n=e!=="auto"?e:window.matchMedia("(prefers-color-scheme: dark)").matches?"dark":"light";(r=t())==null||r.setAttribute("data-mantine-color-scheme",n)}function sw({manager:e,defaultColorScheme:t,getRootElement:n,forceColorScheme:r}){const h=W.useRef(),[i,d]=W.useState(()=>e.get(t)),g=r||i,u=W.useCallback(s=>{r||(ni(s,n),d(s),e.set(s))},[e.set,g,r]),p=W.useCallback(()=>{d(t),ni(t,n),e.clear()},[e.clear,t]);return W.useEffect(()=>(e.subscribe(u),e.unsubscribe),[e.subscribe,e.unsubscribe]),so(()=>{ni(e.get(t),n)},[]),W.useEffect(()=>{var o;if(r)return ni(r,n),()=>{};r===void 0&&ni(i,n),h.current=window.matchMedia("(prefers-color-scheme: dark)");const s=a=>{i==="auto"&&ni(a.matches?"dark":"light",n)};return(o=h.current)==null||o.addEventListener("change",s),()=>{var a;return(a=h.current)==null?void 0:a.removeEventListener("change",s)}},[i,r]),{colorScheme:g,setColorScheme:u,clearColorScheme:p}}function aw({respectReducedMotion:e,getRootElement:t}){so(()=>{var n;e&&((n=t())==null||n.setAttribute("data-respect-reduced-motion","true"))},[e])}ow();function mg({theme:e,children:t,getStyleNonce:n,withStaticClasses:r=!0,withGlobalClasses:h=!0,deduplicateCssVariables:i=!0,withCssVariables:d=!0,cssVariablesSelector:g=":root",classNamesPrefix:u="mantine",colorSchemeManager:p=qb(),defaultColorScheme:s="light",getRootElement:o=()=>document.documentElement,cssVariablesResolver:a,forceColorScheme:l,stylesTransform:c}){const{colorScheme:f,setColorScheme:m,clearColorScheme:v}=sw({defaultColorScheme:s,forceColorScheme:l,manager:p,getRootElement:o});return aw({respectReducedMotion:(e==null?void 0:e.respectReducedMotion)||!1,getRootElement:o}),V.jsx(og.Provider,{value:{colorScheme:f,setColorScheme:m,clearColorScheme:v,getRootElement:o,classNamesPrefix:u,getStyleNonce:n,cssVariablesResolver:a,cssVariablesSelector:g,withStaticClasses:r,stylesTransform:c},children:V.jsxs(hg,{theme:e,children:[d&&V.jsx(gg,{cssVariablesSelector:g,deduplicateCssVariables:i}),h&&V.jsx(Jb,{}),t]})})}mg.displayName="@mantine/core/MantineProvider";const lw={always:"mantine-focus-always",auto:"mantine-focus-auto",never:"mantine-focus-never"};function cw({theme:e,options:t,unstyled:n}){return hn((t==null?void 0:t.focusable)&&!n&&(e.focusClassName||lw[e.focusRing]),(t==null?void 0:t.active)&&!n&&e.activeClassName)}function uw({selector:e,stylesCtx:t,options:n,props:r,theme:h}){return eu({theme:h,classNames:n==null?void 0:n.classNames,props:(n==null?void 0:n.props)||r,stylesCtx:t})[e]}function vg({selector:e,stylesCtx:t,theme:n,classNames:r,props:h}){return eu({theme:n,classNames:r,props:h,stylesCtx:t})[e]}function hw({rootSelector:e,selector:t,className:n}){return e===t?n:void 0}function dw({selector:e,classes:t,unstyled:n}){return n?void 0:t[e]}function fw({themeName:e,classNamesPrefix:t,selector:n,withStaticClass:r}){return r===!1?[]:e.map(h=>`${t}-${h}-${n}`)}function pw({themeName:e,theme:t,selector:n,props:r,stylesCtx:h}){return e.map(i=>{var d,g;return(g=eu({theme:t,classNames:(d=t.components[i])==null?void 0:d.classNames,props:r,stylesCtx:h}))==null?void 0:g[n]})}function gw({options:e,classes:t,selector:n,unstyled:r}){return e!=null&&e.variant&&!r?t[`${n}--${e.variant}`]:void 0}function mw({theme:e,options:t,themeName:n,selector:r,classNamesPrefix:h,classNames:i,classes:d,unstyled:g,className:u,rootSelector:p,props:s,stylesCtx:o,withStaticClasses:a,headless:l,transformedStyles:c}){return hn(cw({theme:e,options:t,unstyled:g||l}),pw({theme:e,themeName:n,selector:r,props:s,stylesCtx:o}),gw({options:t,classes:d,selector:r,unstyled:g}),vg({selector:r,stylesCtx:o,theme:e,classNames:i,props:s}),vg({selector:r,stylesCtx:o,theme:e,classNames:c,props:s}),uw({selector:r,stylesCtx:o,options:t,props:s,theme:e}),hw({rootSelector:p,selector:r,className:u}),dw({selector:r,classes:d,unstyled:g||l}),a&&!l&&fw({themeName:n,classNamesPrefix:h,selector:r,withStaticClass:t==null?void 0:t.withStaticClass}),t==null?void 0:t.className)}function vw({theme:e,themeName:t,props:n,stylesCtx:r,selector:h}){return t.map(i=>{var d;return tu({theme:e,styles:(d=e.components[i])==null?void 0:d.styles,props:n,stylesCtx:r})[h]}).reduce((i,d)=>({...i,...d}),{})}function hu({style:e,theme:t}){return Array.isArray(e)?[...e].reduce((n,r)=>({...n,...hu({style:r,theme:t})}),{}):typeof e=="function"?e(t):e??{}}function yw(e){return e.reduce((t,n)=>(n&&Object.keys(n).forEach(r=>{t[r]={...t[r],...Xc(n[r])}}),t),{})}function bw({vars:e,varsResolver:t,theme:n,props:r,stylesCtx:h,selector:i,themeName:d,headless:g}){var u;return(u=yw([g?{}:t==null?void 0:t(n,r,h),...d.map(p=>{var s,o,a;return(a=(o=(s=n.components)==null?void 0:s[p])==null?void 0:o.vars)==null?void 0:a.call(o,n,r,h)}),e==null?void 0:e(n,r,h)]))==null?void 0:u[i]}function ww({theme:e,themeName:t,selector:n,options:r,props:h,stylesCtx:i,rootSelector:d,styles:g,style:u,vars:p,varsResolver:s,headless:o,withStylesTransform:a}){return{...!a&&vw({theme:e,themeName:t,props:h,stylesCtx:i,selector:n}),...!a&&tu({theme:e,styles:g,props:h,stylesCtx:i})[n],...!a&&tu({theme:e,styles:r==null?void 0:r.styles,props:(r==null?void 0:r.props)||h,stylesCtx:i})[n],...bw({theme:e,props:h,stylesCtx:i,vars:p,varsResolver:s,selector:n,themeName:t,headless:o}),...d===n?hu({style:u,theme:e}):null,...hu({style:r==null?void 0:r.style,theme:e})}}function Sw({props:e,stylesCtx:t,themeName:n}){var i;const r=fn(),h=(i=jb())==null?void 0:i();return{getTransformedStyles:d=>h?[...d.map(g=>h(g,{props:e,theme:r,ctx:t})),...n.map(g=>{var u;return h((u=r.components[g])==null?void 0:u.styles,{props:e,theme:r,ctx:t})})].filter(Boolean):[],withStylesTransform:!!h}}function Et({name:e,classes:t,props:n,stylesCtx:r,className:h,style:i,rootSelector:d="root",unstyled:g,classNames:u,styles:p,vars:s,varsResolver:o}){const a=fn(),l=zb(),c=Fb(),f=Pb(),m=(Array.isArray(e)?e:[e]).filter($=>$),{withStylesTransform:v,getTransformedStyles:y}=Sw({props:n,stylesCtx:r,themeName:m});return($,w)=>({className:mw({theme:a,options:w,themeName:m,selector:$,classNamesPrefix:l,classNames:u,classes:t,unstyled:g,className:h,rootSelector:d,props:n,stylesCtx:r,withStaticClasses:c,headless:f,transformedStyles:y([w==null?void 0:w.styles,p])}),style:ww({theme:a,themeName:m,selector:$,options:w,props:n,stylesCtx:r,rootSelector:d,styles:p,style:i,vars:s,varsResolver:o,headless:f,withStylesTransform:v})})}function xw(e,t){return typeof e=="boolean"?e:t.autoContrast}function ke(e,t,n){var d;const r=fn(),h=(d=r.components[e])==null?void 0:d.defaultProps,i=typeof h=="function"?h(r):h;return{...t,...i,...Xc(n)}}function du(e){return qe(e).reduce((t,n)=>e[n]!==void 0?`${t}${ob(n)}:${e[n]};`:t,"").trim()}function kw({selector:e,styles:t,media:n,container:r}){const h=t?du(t):"",i=Array.isArray(n)?n.map(g=>`@media${g.query}{${e}{${du(g.styles)}}}`):[],d=Array.isArray(r)?r.map(g=>`@container ${g.query}{${e}{${du(g.styles)}}}`):[];return`${h?`${e}{${h}}`:""}${i.join("")}${d.join("")}`.trim()}function yg(e){const t=nu();return V.jsx("style",{"data-mantine-styles":"inline",nonce:t==null?void 0:t(),dangerouslySetInnerHTML:{__html:kw(e)}})}function $w(e){const{m:t,mx:n,my:r,mt:h,mb:i,ml:d,mr:g,me:u,ms:p,p:s,px:o,py:a,pt:l,pb:c,pl:f,pr:m,pe:v,ps:y,bd:$,bg:w,c:x,opacity:b,ff:_,fz:R,fw:E,lts:L,ta:M,lh:k,fs:C,tt:S,td:A,w:T,miw:I,maw:N,h:O,mih:D,mah:P,bgsz:B,bgp:j,bgr:F,bga:H,pos:G,top:Q,left:X,bottom:J,right:ee,inset:ae,display:ue,flex:He,hiddenFrom:Re,visibleFrom:ye,lightHidden:Ze,darkHidden:Ut,sx:Vt,...fr}=e;return{styleProps:Xc({m:t,mx:n,my:r,mt:h,mb:i,ml:d,mr:g,me:u,ms:p,p:s,px:o,py:a,pt:l,pb:c,pl:f,pr:m,pe:v,ps:y,bd:$,bg:w,c:x,opacity:b,ff:_,fz:R,fw:E,lts:L,ta:M,lh:k,fs:C,tt:S,td:A,w:T,miw:I,maw:N,h:O,mih:D,mah:P,bgsz:B,bgp:j,bgr:F,bga:H,pos:G,top:Q,left:X,bottom:J,right:ee,inset:ae,display:ue,flex:He,hiddenFrom:Re,visibleFrom:ye,lightHidden:Ze,darkHidden:Ut,sx:Vt}),rest:fr}}const Cw={m:{type:"spacing",property:"margin"},mt:{type:"spacing",property:"marginTop"},mb:{type:"spacing",property:"marginBottom"},ml:{type:"spacing",property:"marginLeft"},mr:{type:"spacing",property:"marginRight"},ms:{type:"spacing",property:"marginInlineStart"},me:{type:"spacing",property:"marginInlineEnd"},mx:{type:"spacing",property:"marginInline"},my:{type:"spacing",property:"marginBlock"},p:{type:"spacing",property:"padding"},pt:{type:"spacing",property:"paddingTop"},pb:{type:"spacing",property:"paddingBottom"},pl:{type:"spacing",property:"paddingLeft"},pr:{type:"spacing",property:"paddingRight"},ps:{type:"spacing",property:"paddingInlineStart"},pe:{type:"spacing",property:"paddingInlineEnd"},px:{type:"spacing",property:"paddingInline"},py:{type:"spacing",property:"paddingBlock"},bd:{type:"border",property:"border"},bg:{type:"color",property:"background"},c:{type:"textColor",property:"color"},opacity:{type:"identity",property:"opacity"},ff:{type:"fontFamily",property:"fontFamily"},fz:{type:"fontSize",property:"fontSize"},fw:{type:"identity",property:"fontWeight"},lts:{type:"size",property:"letterSpacing"},ta:{type:"identity",property:"textAlign"},lh:{type:"lineHeight",property:"lineHeight"},fs:{type:"identity",property:"fontStyle"},tt:{type:"identity",property:"textTransform"},td:{type:"identity",property:"textDecoration"},w:{type:"spacing",property:"width"},miw:{type:"spacing",property:"minWidth"},maw:{type:"spacing",property:"maxWidth"},h:{type:"spacing",property:"height"},mih:{type:"spacing",property:"minHeight"},mah:{type:"spacing",property:"maxHeight"},bgsz:{type:"size",property:"backgroundSize"},bgp:{type:"identity",property:"backgroundPosition"},bgr:{type:"identity",property:"backgroundRepeat"},bga:{type:"identity",property:"backgroundAttachment"},pos:{type:"identity",property:"position"},top:{type:"identity",property:"top"},left:{type:"size",property:"left"},bottom:{type:"size",property:"bottom"},right:{type:"size",property:"right"},inset:{type:"size",property:"inset"},display:{type:"identity",property:"display"},flex:{type:"identity",property:"flex"}};function fu(e,t){const n=co({color:e,theme:t});return n.color==="dimmed"?"var(--mantine-color-dimmed)":n.color==="bright"?"var(--mantine-color-bright)":n.variable?`var(${n.variable})`:n.color}function _w(e,t){const n=co({color:e,theme:t});return n.isThemeColor&&n.shade===void 0?`var(--mantine-color-${n.color}-text)`:fu(e,t)}function Aw(e,t){if(typeof e=="number")return K(e);if(typeof e=="string"){const[n,r,...h]=e.split(" ").filter(d=>d.trim()!=="");let i=`${K(n)}`;return r&&(i+=` ${r}`),h.length>0&&(i+=` ${fu(h.join(" "),t)}`),i.trim()}return e}const bg={text:"var(--mantine-font-family)",mono:"var(--mantine-font-family-monospace)",monospace:"var(--mantine-font-family-monospace)",heading:"var(--mantine-font-family-headings)",headings:"var(--mantine-font-family-headings)"};function Mw(e){return typeof e=="string"&&e in bg?bg[e]:e}const Lw=["h1","h2","h3","h4","h5","h6"];function Ew(e,t){return typeof e=="string"&&e in t.fontSizes?`var(--mantine-font-size-${e})`:typeof e=="string"&&Lw.includes(e)?`var(--mantine-${e}-font-size)`:typeof e=="number"||typeof e=="string"?K(e):e}function Tw(e){return e}const Rw=["h1","h2","h3","h4","h5","h6"];function Iw(e,t){return typeof e=="string"&&e in t.lineHeights?`var(--mantine-line-height-${e})`:typeof e=="string"&&Rw.includes(e)?`var(--mantine-${e}-line-height)`:e}function Nw(e){return typeof e=="number"?K(e):e}function Ow(e,t){if(typeof e=="number")return K(e);if(typeof e=="string"){const n=e.replace("-","");if(!(n in t.spacing))return K(e);const r=`--mantine-spacing-${n}`;return e.startsWith("-")?`calc(var(${r}) * -1)`:`var(${r})`}return e}const pu={color:fu,textColor:_w,fontSize:Ew,spacing:Ow,identity:Tw,size:Nw,lineHeight:Iw,fontFamily:Mw,border:Aw};function wg(e){return e.replace("(min-width: ","").replace("em)","")}function Dw({media:e,...t}){const n=Object.keys(e).sort((r,h)=>Number(wg(r))-Number(wg(h))).map(r=>({query:r,styles:e[r]}));return{...t,media:n}}function zw(e){if(typeof e!="object"||e===null)return!1;const t=Object.keys(e);return!(t.length===1&&t[0]==="base")}function Fw(e){return typeof e=="object"&&e!==null?"base"in e?e.base:void 0:e}function Pw(e){return typeof e=="object"&&e!==null?qe(e).filter(t=>t!=="base"):[]}function Ww(e,t){return typeof e=="object"&&e!==null&&t in e?e[t]:e}function jw({styleProps:e,data:t,theme:n}){return Dw(qe(e).reduce((r,h)=>{if(h==="hiddenFrom"||h==="visibleFrom"||h==="sx")return r;const i=t[h],d=Array.isArray(i.property)?i.property:[i.property],g=Fw(e[h]);if(!zw(e[h]))return d.forEach(p=>{r.inlineStyles[p]=pu[i.type](g,n)}),r;r.hasResponsiveStyles=!0;const u=Pw(e[h]);return d.forEach(p=>{g&&(r.styles[p]=pu[i.type](g,n)),u.forEach(s=>{const o=`(min-width: ${n.breakpoints[s]})`;r.media[o]={...r.media[o],[p]:pu[i.type](Ww(e[h],s),n)}})}),r},{hasResponsiveStyles:!1,styles:{},inlineStyles:{},media:{}}))}function Hw(){return`__m__-${W.useId().replace(/:/g,"")}`}function Sg(e){return e.startsWith("data-")?e:`data-${e}`}function Bw(e){return Object.keys(e).reduce((t,n)=>{const r=e[n];return r===void 0||r===""||r===!1||r===null||(t[Sg(n)]=e[n]),t},{})}function xg(e){return e?typeof e=="string"?{[Sg(e)]:!0}:Array.isArray(e)?[...e].reduce((t,n)=>({...t,...xg(n)}),{}):Bw(e):null}function gu(e,t){return Array.isArray(e)?[...e].reduce((n,r)=>({...n,...gu(r,t)}),{}):typeof e=="function"?e(t):e??{}}function Uw({theme:e,style:t,vars:n,styleProps:r}){const h=gu(t,e),i=gu(n,e);return{...h,...i,...r}}const kg=W.forwardRef(({component:e,style:t,__vars:n,className:r,variant:h,mod:i,size:d,hiddenFrom:g,visibleFrom:u,lightHidden:p,darkHidden:s,renderRoot:o,__size:a,...l},c)=>{var _,R;const f=fn(),m=e||"div",{styleProps:v,rest:y}=$w(l),$=(R=(_=Wb())==null?void 0:_())==null?void 0:R(v.sx),w=Hw(),x=jw({styleProps:v,theme:f,data:Cw}),b={ref:c,style:Uw({theme:f,style:t,vars:n,styleProps:x.inlineStyles}),className:hn(r,$,{[w]:x.hasResponsiveStyles,"mantine-light-hidden":p,"mantine-dark-hidden":s,[`mantine-hidden-from-${g}`]:g,[`mantine-visible-from-${u}`]:u}),"data-variant":h,"data-size":Gp(d)?void 0:d||void 0,size:a,...xg(i),...y};return V.jsxs(V.Fragment,{children:[x.hasResponsiveStyles&&V.jsx(yg,{selector:`.${w}`,styles:x.styles,media:x.media}),typeof o=="function"?o(b):V.jsx(m,{...b})]})});kg.displayName="@mantine/core/Box";const ge=kg;function $g(e){return e}function Ve(e){const t=W.forwardRef(e);return t.extend=$g,t.withProps=n=>{const r=W.forwardRef((h,i)=>V.jsx(t,{...n,...h,ref:i}));return r.extend=t.extend,r.displayName=`WithProps(${t.displayName})`,r},t}function uo(e){const t=W.forwardRef(e);return t.withProps=n=>{const r=W.forwardRef((h,i)=>V.jsx(t,{...n,...h,ref:i}));return r.extend=t.extend,r.displayName=`WithProps(${t.displayName})`,r},t.extend=$g,t}const Vw=W.createContext({dir:"ltr",toggleDirection:()=>{},setDirection:()=>{}});function Cg(){return W.useContext(Vw)}const[Gw,Tt]=ro("ScrollArea.Root component was not found in tree");function ri(e,t){const n=sr(t);so(()=>{let r=0;if(e){const h=new ResizeObserver(()=>{cancelAnimationFrame(r),r=window.requestAnimationFrame(n)});return h.observe(e),()=>{window.cancelAnimationFrame(r),h.unobserve(e)}}},[e,n])}const Kw=W.forwardRef((e,t)=>{const{style:n,...r}=e,h=Tt(),[i,d]=W.useState(0),[g,u]=W.useState(0),p=!!(i&&g);return ri(h.scrollbarX,()=>{var o;const s=((o=h.scrollbarX)==null?void 0:o.offsetHeight)||0;h.onCornerHeightChange(s),u(s)}),ri(h.scrollbarY,()=>{var o;const s=((o=h.scrollbarY)==null?void 0:o.offsetWidth)||0;h.onCornerWidthChange(s),d(s)}),p?V.jsx("div",{...r,ref:t,style:{...n,width:i,height:g}}):null}),Yw=W.forwardRef((e,t)=>{const n=Tt(),r=!!(n.scrollbarX&&n.scrollbarY);return n.type!=="scroll"&&r?V.jsx(Kw,{...e,ref:t}):null}),Qw={scrollHideDelay:1e3,type:"hover"},_g=W.forwardRef((e,t)=>{const n=ke("ScrollAreaRoot",Qw,e),{type:r,scrollHideDelay:h,scrollbars:i,...d}=n,[g,u]=W.useState(null),[p,s]=W.useState(null),[o,a]=W.useState(null),[l,c]=W.useState(null),[f,m]=W.useState(null),[v,y]=W.useState(0),[$,w]=W.useState(0),[x,b]=W.useState(!1),[_,R]=W.useState(!1),E=ar(t,L=>u(L));return V.jsx(Gw,{value:{type:r,scrollHideDelay:h,scrollArea:g,viewport:p,onViewportChange:s,content:o,onContentChange:a,scrollbarX:l,onScrollbarXChange:c,scrollbarXEnabled:x,onScrollbarXEnabledChange:b,scrollbarY:f,onScrollbarYChange:m,scrollbarYEnabled:_,onScrollbarYEnabledChange:R,onCornerWidthChange:y,onCornerHeightChange:w},children:V.jsx(ge,{...d,ref:E,__vars:{"--sa-corner-width":i!=="xy"?"0px":`${v}px`,"--sa-corner-height":i!=="xy"?"0px":`${$}px`}})})});_g.displayName="@mantine/core/ScrollAreaRoot";function Ag(e,t){const n=e/t;return Number.isNaN(n)?0:n}function ta(e){const t=Ag(e.viewport,e.content),n=e.scrollbar.paddingStart+e.scrollbar.paddingEnd,r=(e.scrollbar.size-n)*t;return Math.max(r,18)}function Mg(e,t){return n=>{if(e[0]===e[1]||t[0]===t[1])return t[0];const r=(t[1]-t[0])/(e[1]-e[0]);return t[0]+r*(n-e[0])}}function qw(e,[t,n]){return Math.min(n,Math.max(t,e))}function Lg(e,t,n="ltr"){const r=ta(t),h=t.scrollbar.paddingStart+t.scrollbar.paddingEnd,i=t.scrollbar.size-h,d=t.content-t.viewport,g=i-r,u=n==="ltr"?[0,d]:[d*-1,0],p=qw(e,u);return Mg([0,d],[0,g])(p)}function Xw(e,t,n,r="ltr"){const h=ta(n),i=h/2,d=t||i,g=h-d,u=n.scrollbar.paddingStart+d,p=n.scrollbar.size-n.scrollbar.paddingEnd-g,s=n.content-n.viewport,o=r==="ltr"?[0,s]:[s*-1,0];return Mg([u,p],o)(e)}function Eg(e,t){return e>0&&e{e==null||e(r),(n===!1||!r.defaultPrevented)&&(t==null||t(r))}}const[Zw,Tg]=ro("ScrollAreaScrollbar was not found in tree"),Rg=W.forwardRef((e,t)=>{const{sizes:n,hasThumb:r,onThumbChange:h,onThumbPointerUp:i,onThumbPointerDown:d,onThumbPositionChange:g,onDragScroll:u,onWheelScroll:p,onResize:s,...o}=e,a=Tt(),[l,c]=W.useState(null),f=ar(t,R=>c(R)),m=W.useRef(null),v=W.useRef(""),{viewport:y}=a,$=n.content-n.viewport,w=sr(p),x=sr(g),b=Xs(s,10),_=R=>{if(m.current){const E=R.clientX-m.current.left,L=R.clientY-m.current.top;u({x:E,y:L})}};return W.useEffect(()=>{const R=E=>{const L=E.target;l!=null&&l.contains(L)&&w(E,$)};return document.addEventListener("wheel",R,{passive:!1}),()=>document.removeEventListener("wheel",R,{passive:!1})},[y,l,$,w]),W.useEffect(x,[n,x]),ri(l,b),ri(a.content,b),V.jsx(Zw,{value:{scrollbar:l,hasThumb:r,onThumbChange:sr(h),onThumbPointerUp:sr(i),onThumbPositionChange:x,onThumbPointerDown:sr(d)},children:V.jsx("div",{...o,ref:f,"data-mantine-scrollbar":!0,style:{position:"absolute",...o.style},onPointerDown:lr(e.onPointerDown,R=>{R.preventDefault(),R.button===0&&(R.target.setPointerCapture(R.pointerId),m.current=l.getBoundingClientRect(),v.current=document.body.style.webkitUserSelect,document.body.style.webkitUserSelect="none",_(R))}),onPointerMove:lr(e.onPointerMove,_),onPointerUp:lr(e.onPointerUp,R=>{R.preventDefault();const E=R.target;E.hasPointerCapture(R.pointerId)&&E.releasePointerCapture(R.pointerId),document.body.style.webkitUserSelect=v.current,m.current=null})})})}),Ig=W.forwardRef((e,t)=>{const{sizes:n,onSizesChange:r,style:h,...i}=e,d=Tt(),[g,u]=W.useState(),p=W.useRef(null),s=ar(t,p,d.onScrollbarXChange);return W.useEffect(()=>{p.current&&u(getComputedStyle(p.current))},[p]),V.jsx(Rg,{"data-orientation":"horizontal",...i,ref:s,sizes:n,style:{...h,"--sa-thumb-width":`${ta(n)}px`},onThumbPointerDown:o=>e.onThumbPointerDown(o.x),onDragScroll:o=>e.onDragScroll(o.x),onWheelScroll:(o,a)=>{if(d.viewport){const l=d.viewport.scrollLeft+o.deltaX;e.onWheelScroll(l),Eg(l,a)&&o.preventDefault()}},onResize:()=>{p.current&&d.viewport&&g&&r({content:d.viewport.scrollWidth,viewport:d.viewport.offsetWidth,scrollbar:{size:p.current.clientWidth,paddingStart:na(g.paddingLeft),paddingEnd:na(g.paddingRight)}})}})});Ig.displayName="@mantine/core/ScrollAreaScrollbarX";const Ng=W.forwardRef((e,t)=>{const{sizes:n,onSizesChange:r,style:h,...i}=e,d=Tt(),[g,u]=W.useState(),p=W.useRef(null),s=ar(t,p,d.onScrollbarYChange);return W.useEffect(()=>{p.current&&u(window.getComputedStyle(p.current))},[]),V.jsx(Rg,{...i,"data-orientation":"vertical",ref:s,sizes:n,style:{"--sa-thumb-height":`${ta(n)}px`,...h},onThumbPointerDown:o=>e.onThumbPointerDown(o.y),onDragScroll:o=>e.onDragScroll(o.y),onWheelScroll:(o,a)=>{if(d.viewport){const l=d.viewport.scrollTop+o.deltaY;e.onWheelScroll(l),Eg(l,a)&&o.preventDefault()}},onResize:()=>{p.current&&d.viewport&&g&&r({content:d.viewport.scrollHeight,viewport:d.viewport.offsetHeight,scrollbar:{size:p.current.clientHeight,paddingStart:na(g.paddingTop),paddingEnd:na(g.paddingBottom)}})}})});Ng.displayName="@mantine/core/ScrollAreaScrollbarY";const ra=W.forwardRef((e,t)=>{const{orientation:n="vertical",...r}=e,{dir:h}=Cg(),i=Tt(),d=W.useRef(null),g=W.useRef(0),[u,p]=W.useState({content:0,viewport:0,scrollbar:{size:0,paddingStart:0,paddingEnd:0}}),s=Ag(u.viewport,u.content),o={...r,sizes:u,onSizesChange:p,hasThumb:s>0&&s<1,onThumbChange:l=>{d.current=l},onThumbPointerUp:()=>{g.current=0},onThumbPointerDown:l=>{g.current=l}},a=(l,c)=>Xw(l,g.current,u,c);return n==="horizontal"?V.jsx(Ig,{...o,ref:t,onThumbPositionChange:()=>{if(i.viewport&&d.current){const l=i.viewport.scrollLeft,c=Lg(l,u,h);d.current.style.transform=`translate3d(${c}px, 0, 0)`}},onWheelScroll:l=>{i.viewport&&(i.viewport.scrollLeft=l)},onDragScroll:l=>{i.viewport&&(i.viewport.scrollLeft=a(l,h))}}):n==="vertical"?V.jsx(Ng,{...o,ref:t,onThumbPositionChange:()=>{if(i.viewport&&d.current){const l=i.viewport.scrollTop,c=Lg(l,u);u.scrollbar.size===0?d.current.style.opacity="0":d.current.style.opacity="1",d.current.style.transform=`translate3d(0, ${c}px, 0)`}},onWheelScroll:l=>{i.viewport&&(i.viewport.scrollTop=l)},onDragScroll:l=>{i.viewport&&(i.viewport.scrollTop=a(l))}}):null});ra.displayName="@mantine/core/ScrollAreaScrollbarVisible";const mu=W.forwardRef((e,t)=>{const n=Tt(),{forceMount:r,...h}=e,[i,d]=W.useState(!1),g=e.orientation==="horizontal",u=Xs(()=>{if(n.viewport){const p=n.viewport.offsetWidth{const{forceMount:n,...r}=e,h=Tt(),[i,d]=W.useState(!1);return W.useEffect(()=>{const{scrollArea:g}=h;let u=0;if(g){const p=()=>{window.clearTimeout(u),d(!0)},s=()=>{u=window.setTimeout(()=>d(!1),h.scrollHideDelay)};return g.addEventListener("pointerenter",p),g.addEventListener("pointerleave",s),()=>{window.clearTimeout(u),g.removeEventListener("pointerenter",p),g.removeEventListener("pointerleave",s)}}},[h.scrollArea,h.scrollHideDelay]),n||i?V.jsx(mu,{"data-state":i?"visible":"hidden",...r,ref:t}):null});Og.displayName="@mantine/core/ScrollAreaScrollbarHover";const Jw=W.forwardRef((e,t)=>{const{forceMount:n,...r}=e,h=Tt(),i=e.orientation==="horizontal",[d,g]=W.useState("hidden"),u=Xs(()=>g("idle"),100);return W.useEffect(()=>{if(d==="idle"){const p=window.setTimeout(()=>g("hidden"),h.scrollHideDelay);return()=>window.clearTimeout(p)}},[d,h.scrollHideDelay]),W.useEffect(()=>{const{viewport:p}=h,s=i?"scrollLeft":"scrollTop";if(p){let o=p[s];const a=()=>{const l=p[s];o!==l&&(g("scrolling"),u()),o=l};return p.addEventListener("scroll",a),()=>p.removeEventListener("scroll",a)}},[h.viewport,i,u]),n||d!=="hidden"?V.jsx(ra,{"data-state":d==="hidden"?"hidden":"visible",...r,ref:t,onPointerEnter:lr(e.onPointerEnter,()=>g("interacting")),onPointerLeave:lr(e.onPointerLeave,()=>g("idle"))}):null}),vu=W.forwardRef((e,t)=>{const{forceMount:n,...r}=e,h=Tt(),{onScrollbarXEnabledChange:i,onScrollbarYEnabledChange:d}=h,g=e.orientation==="horizontal";return W.useEffect(()=>(g?i(!0):d(!0),()=>{g?i(!1):d(!1)}),[g,i,d]),h.type==="hover"?V.jsx(Og,{...r,ref:t,forceMount:n}):h.type==="scroll"?V.jsx(Jw,{...r,ref:t,forceMount:n}):h.type==="auto"?V.jsx(mu,{...r,ref:t,forceMount:n}):h.type==="always"?V.jsx(ra,{...r,ref:t}):null});vu.displayName="@mantine/core/ScrollAreaScrollbar";function e1(e,t=()=>{}){let n={left:e.scrollLeft,top:e.scrollTop},r=0;return function h(){const i={left:e.scrollLeft,top:e.scrollTop},d=n.left!==i.left,g=n.top!==i.top;(d||g)&&t(),n=i,r=window.requestAnimationFrame(h)}(),()=>window.cancelAnimationFrame(r)}const Dg=W.forwardRef((e,t)=>{const{style:n,...r}=e,h=Tt(),i=Tg(),{onThumbPositionChange:d}=i,g=ar(t,s=>i.onThumbChange(s)),u=W.useRef(),p=Xs(()=>{u.current&&(u.current(),u.current=void 0)},100);return W.useEffect(()=>{const{viewport:s}=h;if(s){const o=()=>{if(p(),!u.current){const a=e1(s,d);u.current=a,d()}};return d(),s.addEventListener("scroll",o),()=>s.removeEventListener("scroll",o)}},[h.viewport,p,d]),V.jsx("div",{"data-state":i.hasThumb?"visible":"hidden",...r,ref:g,style:{width:"var(--sa-thumb-width)",height:"var(--sa-thumb-height)",...n},onPointerDownCapture:lr(e.onPointerDownCapture,s=>{const o=s.target.getBoundingClientRect(),a=s.clientX-o.left,l=s.clientY-o.top;i.onThumbPointerDown({x:a,y:l})}),onPointerUp:lr(e.onPointerUp,i.onThumbPointerUp)})});Dg.displayName="@mantine/core/ScrollAreaThumb";const yu=W.forwardRef((e,t)=>{const{forceMount:n,...r}=e,h=Tg();return n||h.hasThumb?V.jsx(Dg,{ref:t,...r}):null});yu.displayName="@mantine/core/ScrollAreaThumb";const zg=W.forwardRef(({children:e,style:t,...n},r)=>{const h=Tt(),i=ar(r,h.onViewportChange);return V.jsx(ge,{...n,ref:i,style:{overflowX:h.scrollbarXEnabled?"scroll":"hidden",overflowY:h.scrollbarYEnabled?"scroll":"hidden",...t},children:V.jsx("div",{style:{minWidth:"100%",display:"table"},ref:h.onContentChange,children:e})})});zg.displayName="@mantine/core/ScrollAreaViewport";var bu={root:"m_d57069b5",viewport:"m_c0783ff9",viewportInner:"m_f8f631dd",scrollbar:"m_c44ba933",thumb:"m_d8b5e363",corner:"m_21657268"};const Fg={scrollHideDelay:1e3,type:"hover",scrollbars:"xy"},t1=(e,{scrollbarSize:t})=>({root:{"--scrollarea-scrollbar-size":K(t)}}),ii=Ve((e,t)=>{const n=ke("ScrollArea",Fg,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,scrollbarSize:u,vars:p,type:s,scrollHideDelay:o,viewportProps:a,viewportRef:l,onScrollPositionChange:c,children:f,offsetScrollbars:m,scrollbars:v,onBottomReached:y,onTopReached:$,...w}=n,[x,b]=W.useState(!1),_=Et({name:"ScrollArea",props:n,classes:bu,className:h,style:i,classNames:r,styles:d,unstyled:g,vars:p,varsResolver:t1});return V.jsxs(_g,{type:s==="never"?"always":s,scrollHideDelay:o,ref:t,scrollbars:v,..._("root"),...w,children:[V.jsx(zg,{...a,..._("viewport",{style:a==null?void 0:a.style}),ref:l,"data-offset-scrollbars":m===!0?"xy":m||void 0,"data-scrollbars":v||void 0,onScroll:R=>{var k;(k=a==null?void 0:a.onScroll)==null||k.call(a,R),c==null||c({x:R.currentTarget.scrollLeft,y:R.currentTarget.scrollTop});const{scrollTop:E,scrollHeight:L,clientHeight:M}=R.currentTarget;E-(L-M)===0&&(y==null||y()),E===0&&($==null||$())},children:f}),(v==="xy"||v==="x")&&V.jsx(vu,{..._("scrollbar"),orientation:"horizontal","data-hidden":s==="never"||void 0,forceMount:!0,onMouseEnter:()=>b(!0),onMouseLeave:()=>b(!1),children:V.jsx(yu,{..._("thumb")})}),(v==="xy"||v==="y")&&V.jsx(vu,{..._("scrollbar"),orientation:"vertical","data-hidden":s==="never"||void 0,forceMount:!0,onMouseEnter:()=>b(!0),onMouseLeave:()=>b(!1),children:V.jsx(yu,{..._("thumb")})}),V.jsx(Yw,{..._("corner"),"data-hovered":x||void 0,"data-hidden":s==="never"||void 0})]})});ii.displayName="@mantine/core/ScrollArea";const wu=Ve((e,t)=>{const{children:n,classNames:r,styles:h,scrollbarSize:i,scrollHideDelay:d,type:g,dir:u,offsetScrollbars:p,viewportRef:s,onScrollPositionChange:o,unstyled:a,variant:l,viewportProps:c,scrollbars:f,style:m,vars:v,onBottomReached:y,...$}=ke("ScrollAreaAutosize",Fg,e);return V.jsx(ge,{...$,ref:t,style:[{display:"flex",overflow:"auto"},m],children:V.jsx(ge,{style:{display:"flex",flexDirection:"column",flex:1},children:V.jsx(ii,{classNames:r,styles:h,scrollHideDelay:d,scrollbarSize:i,type:g,dir:u,offsetScrollbars:p,viewportRef:s,onScrollPositionChange:o,unstyled:a,variant:l,viewportProps:c,vars:v,scrollbars:f,onBottomReached:y,children:n})})})});ii.classes=bu,wu.displayName="@mantine/core/ScrollAreaAutosize",wu.classes=bu,ii.Autosize=wu;var Pg={root:"m_87cf2631"};const n1={__staticSelector:"UnstyledButton"},ia=uo((e,t)=>{const n=ke("UnstyledButton",n1,e),{className:r,component:h="button",__staticSelector:i,unstyled:d,classNames:g,styles:u,style:p,...s}=n,o=Et({name:i,props:n,classes:Pg,className:r,style:p,classNames:g,styles:u,unstyled:d});return V.jsx(ge,{...o("root",{focusable:!0}),component:h,ref:t,type:h==="button"?"button":void 0,...s})});ia.classes=Pg,ia.displayName="@mantine/core/UnstyledButton";const ho=e=>({in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:`scale(.9) translateY(${K(e==="bottom"?10:-10)})`},transitionProperty:"transform, opacity"}),oa={fade:{in:{opacity:1},out:{opacity:0},transitionProperty:"opacity"},"fade-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:`translateY(${K(30)}`},transitionProperty:"opacity, transform"},"fade-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:`translateY(${K(-30)}`},transitionProperty:"opacity, transform"},"fade-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:`translateX(${K(30)}`},transitionProperty:"opacity, transform"},"fade-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:`translateX(${K(-30)}`},transitionProperty:"opacity, transform"},scale:{in:{opacity:1,transform:"scale(1)"},out:{opacity:0,transform:"scale(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-y":{in:{opacity:1,transform:"scaleY(1)"},out:{opacity:0,transform:"scaleY(0)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"scale-x":{in:{opacity:1,transform:"scaleX(1)"},out:{opacity:0,transform:"scaleX(0)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"skew-up":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:`translateY(${K(-20)}) skew(-10deg, -5deg)`},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"skew-down":{in:{opacity:1,transform:"translateY(0) skew(0deg, 0deg)"},out:{opacity:0,transform:`translateY(${K(20)}) skew(-10deg, -5deg)`},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-left":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:`translateY(${K(20)}) rotate(-5deg)`},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"rotate-right":{in:{opacity:1,transform:"translateY(0) rotate(0deg)"},out:{opacity:0,transform:`translateY(${K(20)}) rotate(5deg)`},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-down":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(-100%)"},common:{transformOrigin:"top"},transitionProperty:"transform, opacity"},"slide-up":{in:{opacity:1,transform:"translateY(0)"},out:{opacity:0,transform:"translateY(100%)"},common:{transformOrigin:"bottom"},transitionProperty:"transform, opacity"},"slide-left":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(100%)"},common:{transformOrigin:"left"},transitionProperty:"transform, opacity"},"slide-right":{in:{opacity:1,transform:"translateX(0)"},out:{opacity:0,transform:"translateX(-100%)"},common:{transformOrigin:"right"},transitionProperty:"transform, opacity"},pop:{...ho("bottom"),common:{transformOrigin:"center center"}},"pop-bottom-left":{...ho("bottom"),common:{transformOrigin:"bottom left"}},"pop-bottom-right":{...ho("bottom"),common:{transformOrigin:"bottom right"}},"pop-top-left":{...ho("top"),common:{transformOrigin:"top left"}},"pop-top-right":{...ho("top"),common:{transformOrigin:"top right"}}},Wg={entering:"in",entered:"in",exiting:"out",exited:"out","pre-exiting":"out","pre-entering":"out"};function r1({transition:e,state:t,duration:n,timingFunction:r}){const h={transitionDuration:`${n}ms`,transitionTimingFunction:r};return typeof e=="string"?e in oa?{transitionProperty:oa[e].transitionProperty,...h,...oa[e].common,...oa[e][Wg[t]]}:{}:{transitionProperty:e.transitionProperty,...h,...e.common,...e[Wg[t]]}}function i1({duration:e,exitDuration:t,timingFunction:n,mounted:r,onEnter:h,onExit:i,onEntered:d,onExited:g,enterDelay:u,exitDelay:p}){const s=fn(),o=Jp(),a=s.respectReducedMotion?o:!1,[l,c]=W.useState(a?0:e),[f,m]=W.useState(r?"entered":"exited"),v=W.useRef(-1),y=W.useRef(-1),$=W.useRef(-1),w=b=>{const _=b?h:i,R=b?d:g;window.clearTimeout(v.current);const E=a?0:b?e:t;c(E),E===0?(typeof _=="function"&&_(),typeof R=="function"&&R(),m(b?"entered":"exited")):$.current=requestAnimationFrame(()=>{p0.flushSync(()=>{m(b?"pre-entering":"pre-exiting")}),$.current=requestAnimationFrame(()=>{typeof _=="function"&&_(),m(b?"entering":"exiting"),v.current=window.setTimeout(()=>{typeof R=="function"&&R(),m(b?"entered":"exited")},E)})})},x=b=>{if(window.clearTimeout(y.current),typeof(b?u:p)!="number"){w(b);return}y.current=window.setTimeout(()=>{w(b)},b?u:p)};return bb(()=>{x(r)},[r]),W.useEffect(()=>()=>{window.clearTimeout(v.current),cancelAnimationFrame($.current)},[]),{transitionDuration:l,transitionStatus:f,transitionTimingFunction:n||"ease"}}function jg({keepMounted:e,transition:t="fade",duration:n=250,exitDuration:r=n,mounted:h,children:i,timingFunction:d="ease",onExit:g,onEntered:u,onEnter:p,onExited:s,enterDelay:o,exitDelay:a}){const{transitionDuration:l,transitionStatus:c,transitionTimingFunction:f}=i1({mounted:h,exitDuration:r,duration:n,timingFunction:d,onExit:g,onEntered:u,onEnter:p,onExited:s,enterDelay:o,exitDelay:a});return l===0?h?V.jsx(V.Fragment,{children:i({})}):e?i({display:"none"}):null:c==="exited"?e?i({display:"none"}):null:V.jsx(V.Fragment,{children:i(r1({transition:t,duration:l,state:c,timingFunction:f}))})}jg.displayName="@mantine/core/Transition";var Ht={root:"m_5ae2e3c",barsLoader:"m_7a2bd4cd",bar:"m_870bb79","bars-loader-animation":"m_5d2b3b9d",dotsLoader:"m_4e3f22d7",dot:"m_870c4af","loader-dots-animation":"m_aac34a1",ovalLoader:"m_b34414df","oval-loader-animation":"m_f8e89c4b"};const Hg=W.forwardRef(({className:e,...t},n)=>V.jsxs(ge,{component:"span",className:hn(Ht.barsLoader,e),...t,ref:n,children:[V.jsx("span",{className:Ht.bar}),V.jsx("span",{className:Ht.bar}),V.jsx("span",{className:Ht.bar})]}));Hg.displayName="@mantine/core/Bars";const Bg=W.forwardRef(({className:e,...t},n)=>V.jsxs(ge,{component:"span",className:hn(Ht.dotsLoader,e),...t,ref:n,children:[V.jsx("span",{className:Ht.dot}),V.jsx("span",{className:Ht.dot}),V.jsx("span",{className:Ht.dot})]}));Bg.displayName="@mantine/core/Dots";const Ug=W.forwardRef(({className:e,...t},n)=>V.jsx(ge,{component:"span",className:hn(Ht.ovalLoader,e),...t,ref:n}));Ug.displayName="@mantine/core/Oval";const Vg={bars:Hg,oval:Ug,dots:Bg},o1={loaders:Vg,type:"oval"},s1=(e,{size:t,color:n})=>({root:{"--loader-size":Zr(t,"loader-size"),"--loader-color":n?Jr(n,e):void 0}}),sa=Ve((e,t)=>{const n=ke("Loader",o1,e),{size:r,color:h,type:i,vars:d,className:g,style:u,classNames:p,styles:s,unstyled:o,loaders:a,variant:l,children:c,...f}=n,m=Et({name:"Loader",props:n,classes:Ht,className:g,style:u,classNames:p,styles:s,unstyled:o,vars:d,varsResolver:s1});return c?V.jsx(ge,{...m("root"),ref:t,...f,children:c}):V.jsx(ge,{...m("root"),ref:t,component:a[i],variant:l,size:r,...f})});sa.defaultLoaders=Vg,sa.classes=Ht,sa.displayName="@mantine/core/Loader";var aa={root:"m_8d3f4000",icon:"m_8d3afb97",loader:"m_302b9fb1",group:"m_1a0f1b21"};const Gg={orientation:"horizontal"},a1=(e,{borderWidth:t})=>({group:{"--ai-border-width":K(t)}}),Su=Ve((e,t)=>{const n=ke("ActionIconGroup",Gg,e),{className:r,style:h,classNames:i,styles:d,unstyled:g,orientation:u,vars:p,borderWidth:s,variant:o,mod:a,...l}=ke("ActionIconGroup",Gg,e),c=Et({name:"ActionIconGroup",props:n,classes:aa,className:r,style:h,classNames:i,styles:d,unstyled:g,vars:p,varsResolver:a1,rootSelector:"group"});return V.jsx(ge,{...c("group"),ref:t,variant:o,mod:[{"data-orientation":u},a],role:"group",...l})});Su.classes=aa,Su.displayName="@mantine/core/ActionIconGroup";const l1={},c1=(e,{size:t,radius:n,variant:r,gradient:h,color:i,autoContrast:d})=>{const g=e.variantColorResolver({color:i||e.primaryColor,theme:e,gradient:h,variant:r||"filled",autoContrast:d});return{root:{"--ai-size":Zr(t,"ai-size"),"--ai-radius":n===void 0?void 0:Yp(n),"--ai-bg":i||r?g.background:void 0,"--ai-hover":i||r?g.hover:void 0,"--ai-hover-color":i||r?g.hoverColor:void 0,"--ai-color":g.color,"--ai-bd":i||r?g.border:void 0}}},oi=uo((e,t)=>{const n=ke("ActionIcon",l1,e),{className:r,unstyled:h,variant:i,classNames:d,styles:g,style:u,loading:p,loaderProps:s,size:o,color:a,radius:l,__staticSelector:c,gradient:f,vars:m,children:v,disabled:y,"data-disabled":$,autoContrast:w,mod:x,...b}=n,_=Et({name:["ActionIcon",c],props:n,className:r,style:u,classes:aa,classNames:d,styles:g,unstyled:h,vars:m,varsResolver:c1});return V.jsxs(ia,{..._("root",{active:!y&&!p&&!$}),...b,unstyled:h,variant:i,size:o,disabled:y||p,ref:t,mod:[{loading:p,disabled:y||$},x],children:[V.jsx(jg,{mounted:!!p,transition:"slide-down",duration:150,children:R=>V.jsx(ge,{component:"span",..._("loader",{style:R}),"aria-hidden":!0,children:V.jsx(sa,{color:"var(--ai-color)",size:"calc(var(--ai-size) * 0.55)",...s})})}),V.jsx(ge,{component:"span",mod:{loading:p},..._("icon"),children:v})]})});oi.classes=aa,oi.displayName="@mantine/core/ActionIcon",oi.Group=Su;function u1(e){return W.Children.toArray(e).filter(Boolean)}var Kg={root:"m_4081bf90"};const h1={preventGrowOverflow:!0,gap:"md",align:"center",justify:"flex-start",wrap:"wrap"},d1=(e,{grow:t,preventGrowOverflow:n,gap:r,align:h,justify:i,wrap:d},{childWidth:g})=>({root:{"--group-child-width":t&&n?g:void 0,"--group-gap":oo(r),"--group-align":h,"--group-justify":i,"--group-wrap":d}}),fo=Ve((e,t)=>{const n=ke("Group",h1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,children:u,gap:p,align:s,justify:o,wrap:a,grow:l,preventGrowOverflow:c,vars:f,variant:m,__size:v,mod:y,...$}=n,w=u1(u),x=w.length,b=oo(p??"md"),_={childWidth:`calc(${100/x}% - (${b} - ${b} / ${x}))`},R=Et({name:"Group",props:n,stylesCtx:_,className:h,style:i,classes:Kg,classNames:r,styles:d,unstyled:g,vars:f,varsResolver:d1});return V.jsx(ge,{...R("root"),ref:t,variant:m,mod:[{grow:l},y],size:v,...$,children:w})});fo.classes=Kg,fo.displayName="@mantine/core/Group";var Yg={root:"m_b6d8b162"};function f1(e){if(e==="start")return"start";if(e==="end"||e)return"end"}const p1={inherit:!1},g1=(e,{variant:t,lineClamp:n,gradient:r,size:h,color:i})=>({root:{"--text-fz":Qp(h),"--text-lh":qp(h),"--text-gradient":t==="gradient"?ou(r,e):void 0,"--text-line-clamp":typeof n=="number"?n.toString():void 0,"--text-color":i?Jr(i,e):void 0}}),la=uo((e,t)=>{const n=ke("Text",p1,e),{lineClamp:r,truncate:h,inline:i,inherit:d,gradient:g,span:u,__staticSelector:p,vars:s,className:o,style:a,classNames:l,styles:c,unstyled:f,variant:m,mod:v,size:y,...$}=n,w=Et({name:["Text",p],props:n,classes:Yg,className:o,style:a,classNames:l,styles:c,unstyled:f,vars:s,varsResolver:g1});return V.jsx(ge,{...w("root",{focusable:!0}),ref:t,component:u?"span":"p",variant:m,mod:[{"data-truncate":f1(h),"data-line-clamp":typeof r=="number","data-inline":i,"data-inherit":d},v],size:y,...$})});la.classes=Yg,la.displayName="@mantine/core/Text";const[m1,si]=ro("AppShell was not found in tree");var Wn={root:"m_89ab340",navbar:"m_45252eee",aside:"m_9cdde9a",header:"m_3b16f56b",main:"m_8983817",footer:"m_3840c879",section:"m_6dcfc7c7"};const v1={},xu=Ve((e,t)=>{const n=ke("AppShellAside",v1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:u,withBorder:p,zIndex:s,mod:o,...a}=n,l=si();return l.disabled?null:V.jsx(ge,{component:"aside",ref:t,mod:[{"with-border":p??l.withBorder},o],...l.getStyles("aside",{className:h,classNames:r,styles:d,style:i}),...a,__vars:{"--app-shell-aside-z-index":`calc(${s??l.zIndex} + 1)`}})});xu.classes=Wn,xu.displayName="@mantine/core/AppShellAside";const y1={},ku=Ve((e,t)=>{var c;const n=ke("AppShellFooter",y1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:u,withBorder:p,zIndex:s,mod:o,...a}=n,l=si();return l.disabled?null:V.jsx(ge,{component:"footer",ref:t,mod:[{"with-border":p??l.withBorder},o],...l.getStyles("footer",{className:hn({[Gc.classNames.zeroRight]:l.offsetScrollbars},h),classNames:r,styles:d,style:i}),...a,__vars:{"--app-shell-footer-z-index":(c=s??l.zIndex)==null?void 0:c.toString()}})});ku.classes=Wn,ku.displayName="@mantine/core/AppShellFooter";const b1={},$u=Ve((e,t)=>{var c;const n=ke("AppShellHeader",b1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:u,withBorder:p,zIndex:s,mod:o,...a}=n,l=si();return l.disabled?null:V.jsx(ge,{component:"header",ref:t,mod:[{"with-border":p??l.withBorder},o],...l.getStyles("header",{className:hn({[Gc.classNames.zeroRight]:l.offsetScrollbars},h),classNames:r,styles:d,style:i}),...a,__vars:{"--app-shell-header-z-index":(c=s??l.zIndex)==null?void 0:c.toString()}})});$u.classes=Wn,$u.displayName="@mantine/core/AppShellHeader";const w1={},Cu=Ve((e,t)=>{const n=ke("AppShellMain",w1,e),{classNames:r,className:h,style:i,styles:d,vars:g,...u}=n,p=si();return V.jsx(ge,{component:"main",ref:t,...p.getStyles("main",{className:h,style:i,classNames:r,styles:d}),...u})});Cu.classes=Wn,Cu.displayName="@mantine/core/AppShellMain";function po(e){return typeof e=="object"?e.base:e}function go(e){const t=typeof e=="object"&&e!==null&&typeof e.base<"u"&&Object.keys(e).length===1;return typeof e=="number"||typeof e=="string"||t}function mo(e){return!(typeof e!="object"||e===null||Object.keys(e).length===1&&"base"in e)}function S1({baseStyles:e,minMediaStyles:t,maxMediaStyles:n,aside:r,theme:h}){var u,p,s;const i=r==null?void 0:r.width,d="translateX(var(--app-shell-aside-width))",g="translateX(calc(var(--app-shell-aside-width) * -1))";if(r!=null&&r.breakpoint&&!((u=r==null?void 0:r.collapsed)!=null&&u.mobile)&&(n[r==null?void 0:r.breakpoint]=n[r==null?void 0:r.breakpoint]||{},n[r==null?void 0:r.breakpoint]["--app-shell-aside-width"]="100%",n[r==null?void 0:r.breakpoint]["--app-shell-aside-offset"]="0px"),go(i)){const o=K(po(i));e["--app-shell-aside-width"]=o,e["--app-shell-aside-offset"]=o}if(mo(i)&&(typeof i.base<"u"&&(e["--app-shell-aside-width"]=K(i.base),e["--app-shell-aside-offset"]=K(i.base)),qe(i).forEach(o=>{o!=="base"&&(t[o]=t[o]||{},t[o]["--app-shell-aside-width"]=K(i[o]),t[o]["--app-shell-aside-offset"]=K(i[o]))})),(p=r==null?void 0:r.collapsed)==null?void 0:p.desktop){const o=r.breakpoint;t[o]=t[o]||{},t[o]["--app-shell-aside-transform"]=d,t[o]["--app-shell-aside-transform-rtl"]=g,t[o]["--app-shell-aside-offset"]="0px !important"}if((s=r==null?void 0:r.collapsed)!=null&&s.mobile){const o=Zc(r.breakpoint,h.breakpoints)-.1;n[o]=n[o]||{},n[o]["--app-shell-aside-width"]="100%",n[o]["--app-shell-aside-offset"]="0px",n[o]["--app-shell-aside-transform"]=d,n[o]["--app-shell-aside-transform-rtl"]=g}}function x1({baseStyles:e,minMediaStyles:t,footer:n}){const r=n==null?void 0:n.height,h="translateY(var(--app-shell-footer-height))",i=(n==null?void 0:n.offset)??!0;if(go(r)){const d=K(po(r));e["--app-shell-footer-height"]=d,i&&(e["--app-shell-footer-offset"]=d)}mo(r)&&(typeof r.base<"u"&&(e["--app-shell-footer-height"]=K(r.base),i&&(e["--app-shell-footer-offset"]=K(r.base))),qe(r).forEach(d=>{d!=="base"&&(t[d]=t[d]||{},t[d]["--app-shell-footer-height"]=K(r[d]),i&&(t[d]["--app-shell-footer-offset"]=K(r[d])))})),n!=null&&n.collapsed&&(e["--app-shell-footer-transform"]=h,e["--app-shell-footer-offset"]="0px !important")}function k1({baseStyles:e,minMediaStyles:t,header:n}){const r=n==null?void 0:n.height,h="translateY(calc(var(--app-shell-header-height) * -1))",i=(n==null?void 0:n.offset)??!0;if(go(r)){const d=K(po(r));e["--app-shell-header-height"]=d,i&&(e["--app-shell-header-offset"]=d)}mo(r)&&(typeof r.base<"u"&&(e["--app-shell-header-height"]=K(r.base),i&&(e["--app-shell-header-offset"]=K(r.base))),qe(r).forEach(d=>{d!=="base"&&(t[d]=t[d]||{},t[d]["--app-shell-header-height"]=K(r[d]),i&&(t[d]["--app-shell-header-offset"]=K(r[d])))})),n!=null&&n.collapsed&&(e["--app-shell-header-transform"]=h,e["--app-shell-header-offset"]="0px !important")}function $1({baseStyles:e,minMediaStyles:t,maxMediaStyles:n,navbar:r,theme:h}){var u,p,s;const i=r==null?void 0:r.width,d="translateX(calc(var(--app-shell-navbar-width) * -1))",g="translateX(var(--app-shell-navbar-width))";if(r!=null&&r.breakpoint&&!((u=r==null?void 0:r.collapsed)!=null&&u.mobile)&&(n[r==null?void 0:r.breakpoint]=n[r==null?void 0:r.breakpoint]||{},n[r==null?void 0:r.breakpoint]["--app-shell-navbar-width"]="100%",n[r==null?void 0:r.breakpoint]["--app-shell-navbar-offset"]="0px"),go(i)){const o=K(po(i));e["--app-shell-navbar-width"]=o,e["--app-shell-navbar-offset"]=o}if(mo(i)&&(typeof i.base<"u"&&(e["--app-shell-navbar-width"]=K(i.base),e["--app-shell-navbar-offset"]=K(i.base)),qe(i).forEach(o=>{o!=="base"&&(t[o]=t[o]||{},t[o]["--app-shell-navbar-width"]=K(i[o]),t[o]["--app-shell-navbar-offset"]=K(i[o]))})),(p=r==null?void 0:r.collapsed)==null?void 0:p.desktop){const o=r.breakpoint;t[o]=t[o]||{},t[o]["--app-shell-navbar-transform"]=d,t[o]["--app-shell-navbar-transform-rtl"]=g,t[o]["--app-shell-navbar-offset"]="0px !important"}if((s=r==null?void 0:r.collapsed)!=null&&s.mobile){const o=Zc(r.breakpoint,h.breakpoints)-.1;n[o]=n[o]||{},n[o]["--app-shell-navbar-width"]="100%",n[o]["--app-shell-navbar-offset"]="0px",n[o]["--app-shell-navbar-transform"]=d,n[o]["--app-shell-navbar-transform-rtl"]=g}}function _u(e){return Number(e)===0?"0px":oo(e)}function C1({padding:e,baseStyles:t,minMediaStyles:n}){go(e)&&(t["--app-shell-padding"]=_u(po(e))),mo(e)&&(e.base&&(t["--app-shell-padding"]=_u(e.base)),qe(e).forEach(r=>{r!=="base"&&(n[r]=n[r]||{},n[r]["--app-shell-padding"]=_u(e[r]))}))}function _1({navbar:e,header:t,footer:n,aside:r,padding:h,theme:i}){const d={},g={},u={};$1({baseStyles:u,minMediaStyles:d,maxMediaStyles:g,navbar:e,theme:i}),S1({baseStyles:u,minMediaStyles:d,maxMediaStyles:g,aside:r,theme:i}),k1({baseStyles:u,minMediaStyles:d,header:t}),x1({baseStyles:u,minMediaStyles:d,footer:n}),C1({baseStyles:u,minMediaStyles:d,padding:h});const p=Xp(qe(d),i.breakpoints).map(a=>({query:`(min-width: ${no(a.px)})`,styles:d[a.value]})),s=Xp(qe(g),i.breakpoints).map(a=>({query:`(max-width: ${no(a.px)})`,styles:g[a.value]})),o=[...p,...s];return{baseStyles:u,media:o}}function A1({navbar:e,header:t,aside:n,footer:r,padding:h}){const i=fn(),d=Pn(),{media:g,baseStyles:u}=_1({navbar:e,header:t,footer:r,aside:n,padding:h,theme:i});return V.jsx(yg,{media:g,styles:u,selector:d.cssVariablesSelector})}const M1={},Au=Ve((e,t)=>{const n=ke("AppShellNavbar",M1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:u,withBorder:p,zIndex:s,mod:o,...a}=n,l=si();return l.disabled?null:V.jsx(ge,{component:"nav",ref:t,mod:[{"with-border":p??l.withBorder},o],...l.getStyles("navbar",{className:h,classNames:r,styles:d,style:i}),...a,__vars:{"--app-shell-navbar-z-index":`calc(${s??l.zIndex} + 1)`}})});Au.classes=Wn,Au.displayName="@mantine/core/AppShellNavbar";const L1={},Mu=uo((e,t)=>{const n=ke("AppShellSection",L1,e),{classNames:r,className:h,style:i,styles:d,vars:g,grow:u,mod:p,...s}=n,o=si();return V.jsx(ge,{ref:t,mod:[{grow:u},p],...o.getStyles("section",{className:h,style:i,classNames:r,styles:d}),...s})});Mu.classes=Wn,Mu.displayName="@mantine/core/AppShellSection";function E1({transitionDuration:e,disabled:t}){const[n,r]=W.useState(!0),h=W.useRef(),i=W.useRef();return Jc("resize",()=>{r(!0),clearTimeout(h.current),h.current=window.setTimeout(()=>r(!1),200)}),so(()=>{W.startTransition(()=>{r(!0),clearTimeout(i.current),i.current=window.setTimeout(()=>r(!1),e||0)})},[t,e]),n}const T1={withBorder:!0,offsetScrollbars:!0,padding:0,transitionDuration:200,transitionTimingFunction:"ease",zIndex:db("app")},R1=(e,{transitionDuration:t,transitionTimingFunction:n})=>({root:{"--app-shell-transition-duration":`${t}ms`,"--app-shell-transition-timing-function":n}}),St=Ve((e,t)=>{const n=ke("AppShell",T1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:u,navbar:p,withBorder:s,padding:o,transitionDuration:a,transitionTimingFunction:l,header:c,zIndex:f,layout:m,disabled:v,aside:y,footer:$,offsetScrollbars:w,mod:x,...b}=n,_=Et({name:"AppShell",classes:Wn,props:n,className:h,style:i,classNames:r,styles:d,unstyled:g,vars:u,varsResolver:R1}),R=E1({disabled:v,transitionDuration:a});return V.jsxs(m1,{value:{getStyles:_,withBorder:s,zIndex:f,disabled:v,offsetScrollbars:w},children:[V.jsx(A1,{navbar:p,header:c,aside:y,footer:$,padding:o}),V.jsx(ge,{ref:t,..._("root"),mod:[{resizing:R,layout:m,disabled:v},x],...b})]})});St.classes=Wn,St.displayName="@mantine/core/AppShell",St.Navbar=Au,St.Header=$u,St.Main=Cu,St.Aside=xu,St.Footer=ku,St.Section=Mu;var Qg={root:"m_4451eb3a"};const I1={},Lu=uo((e,t)=>{const n=ke("Center",I1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:u,inline:p,mod:s,...o}=n,a=Et({name:"Center",props:n,classes:Qg,className:h,style:i,classNames:r,styles:d,unstyled:g,vars:u});return V.jsx(ge,{ref:t,mod:[{inline:p},s],...a("root"),...o})});Lu.classes=Qg,Lu.displayName="@mantine/core/Center";const[N1,O1]=ro("List component was not found in tree");var Eu={root:"m_abbac491",item:"m_abb6bec2",itemWrapper:"m_75cd9f71",itemIcon:"m_60f83e5b"};const D1={},Tu=Ve((e,t)=>{const n=ke("ListItem",D1,e),{classNames:r,className:h,style:i,styles:d,vars:g,icon:u,children:p,mod:s,...o}=n,a=O1(),l=u||a.icon,c={classNames:r,styles:d};return V.jsx(ge,{...a.getStyles("item",{...c,className:h,style:i}),component:"li",mod:[{"with-icon":!!l,centered:a.center},s],ref:t,...o,children:V.jsxs("div",{...a.getStyles("itemWrapper",c),children:[l&&V.jsx("span",{...a.getStyles("itemIcon",c),children:l}),V.jsx("span",{...a.getStyles("itemLabel",c),children:p})]})})});Tu.classes=Eu,Tu.displayName="@mantine/core/ListItem";const z1={type:"unordered"},F1=(e,{size:t,spacing:n})=>({root:{"--list-fz":Qp(t),"--list-lh":qp(t),"--list-spacing":oo(n)}}),vo=Ve((e,t)=>{const n=ke("List",z1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:u,children:p,type:s,withPadding:o,icon:a,spacing:l,center:c,listStyleType:f,mod:m,...v}=n,y=Et({name:"List",classes:Eu,props:n,className:h,style:i,classNames:r,styles:d,unstyled:g,vars:u,varsResolver:F1});return V.jsx(N1,{value:{center:c,icon:a,getStyles:y},children:V.jsx(ge,{...y("root",{style:{listStyleType:f}}),component:s==="unordered"?"ul":"ol",mod:[{"with-padding":o},m],ref:t,...v,children:p})})});vo.classes=Eu,vo.displayName="@mantine/core/List",vo.Item=Tu;const[P1,Ru]=ro("Tabs component was not found in the tree");var yo={root:"m_89d60db1","list--default":"m_576c9d4",list:"m_89d33d6d",panel:"m_b0c91715",tab:"m_4ec4dce6",tabSection:"m_fc420b1f","tab--default":"m_539e827b","list--outline":"m_6772fbd5","tab--outline":"m_b59ab47c","tab--pills":"m_c3381914"};const W1={},Iu=Ve((e,t)=>{const n=ke("TabsList",W1,e),{children:r,className:h,grow:i,justify:d,classNames:g,styles:u,style:p,mod:s,...o}=n,a=Ru();return V.jsx(ge,{...o,...a.getStyles("list",{className:h,style:p,classNames:g,styles:u,props:n,variant:a.variant}),ref:t,role:"tablist",variant:a.variant,mod:[{grow:i,orientation:a.orientation,placement:a.orientation==="vertical"&&a.placement,inverted:a.inverted},s],"aria-orientation":a.orientation,__vars:{"--tabs-justify":d},children:r})});Iu.classes=yo,Iu.displayName="@mantine/core/TabsList";const j1={},Nu=Ve((e,t)=>{const n=ke("TabsPanel",j1,e),{children:r,className:h,value:i,classNames:d,styles:g,style:u,mod:p,keepMounted:s,...o}=n,a=Ru(),l=a.value===i,c=a.keepMounted||s||l?r:null;return V.jsx(ge,{...o,...a.getStyles("panel",{className:h,classNames:d,styles:g,style:[u,l?void 0:{display:"none"}],props:n}),ref:t,mod:[{orientation:a.orientation},p],role:"tabpanel",id:a.getPanelId(i),"aria-labelledby":a.getTabId(i),children:c})});Nu.classes=yo,Nu.displayName="@mantine/core/TabsPanel";const H1={},Ou=Ve((e,t)=>{const n=ke("TabsTab",H1,e),{className:r,children:h,rightSection:i,leftSection:d,value:g,onClick:u,onKeyDown:p,disabled:s,color:o,style:a,classNames:l,styles:c,vars:f,mod:m,...v}=n,y=fn(),{dir:$}=Cg(),w=Ru(),x=g===w.value,b=R=>{w.onChange(w.allowTabDeactivation&&g===w.value?null:g),u==null||u(R)},_={classNames:l,styles:c,props:n};return V.jsxs(ia,{...v,...w.getStyles("tab",{className:r,style:a,variant:w.variant,..._}),disabled:s,unstyled:w.unstyled,variant:w.variant,mod:[{active:x,disabled:s,orientation:w.orientation,inverted:w.inverted,placement:w.orientation==="vertical"&&w.placement},m],ref:t,role:"tab",id:w.getTabId(g),"aria-selected":x,tabIndex:x||w.value===null?0:-1,"aria-controls":w.getPanelId(g),onClick:b,__vars:{"--tabs-color":o?Jr(o,y):void 0},onKeyDown:ub({siblingSelector:'[role="tab"]',parentSelector:'[role="tablist"]',activateOnFocus:w.activateTabWithKeyboard,loop:w.loop,orientation:w.orientation||"horizontal",dir:$,onKeyDown:p}),children:[d&&V.jsx("span",{...w.getStyles("tabSection",_),"data-position":"left",children:d}),h&&V.jsx("span",{...w.getStyles("tabLabel",_),children:h}),i&&V.jsx("span",{...w.getStyles("tabSection",_),"data-position":"right",children:i})]})});Ou.classes=yo,Ou.displayName="@mantine/core/TabsTab";const qg="Tabs.Tab or Tabs.Panel component was rendered with invalid value or without value",B1={keepMounted:!0,orientation:"horizontal",loop:!0,activateTabWithKeyboard:!0,allowTabDeactivation:!1,unstyled:!1,inverted:!1,variant:"default",placement:"left"},U1=(e,{radius:t,color:n,autoContrast:r})=>({root:{"--tabs-radius":Yp(t),"--tabs-color":Jr(n,e),"--tabs-text-color":xw(r,e)?dg({color:n,theme:e,autoContrast:r}):void 0}}),xt=Ve((e,t)=>{const n=ke("Tabs",B1,e),{defaultValue:r,value:h,onChange:i,orientation:d,children:g,loop:u,id:p,activateTabWithKeyboard:s,allowTabDeactivation:o,variant:a,color:l,radius:c,inverted:f,placement:m,keepMounted:v,classNames:y,styles:$,unstyled:w,className:x,style:b,vars:_,autoContrast:R,mod:E,...L}=n,M=xb(p),[k,C]=Cb({value:h,defaultValue:r,finalValue:null,onChange:i}),S=Et({name:"Tabs",props:n,classes:yo,className:x,style:b,classNames:y,styles:$,unstyled:w,vars:_,varsResolver:U1});return V.jsx(P1,{value:{placement:m,value:k,orientation:d,id:M,loop:u,activateTabWithKeyboard:s,getTabId:Kp(`${M}-tab`,qg),getPanelId:Kp(`${M}-panel`,qg),onChange:C,allowTabDeactivation:o,variant:a,color:l,radius:c,inverted:f,keepMounted:v,unstyled:w,getStyles:S},children:V.jsx(ge,{ref:t,id:M,variant:a,mod:[{orientation:d,inverted:d==="horizontal"&&f,placement:d==="vertical"&&m},E],...S("root"),...L,children:g})})});xt.classes=yo,xt.displayName="@mantine/core/Tabs",xt.Tab=Ou,xt.Panel=Nu,xt.List=Iu;function Xg(e,t,n){if(!e||!t)return[];const r=n.indexOf(e),h=n.indexOf(t),i=Math.min(r,h),d=Math.max(r,h);return n.slice(i,d+1)}function Du({node:e,getStyles:t,rootIndex:n,controller:r,expandOnClick:h,selectOnClick:i,isSubtree:d,level:g=1,renderNode:u,flatValues:p,allowRangeSelection:s,expandOnSpace:o}){const a=W.useRef(null),l=(e.children||[]).map(y=>V.jsx(Du,{node:y,flatValues:p,getStyles:t,rootIndex:void 0,level:g+1,controller:r,expandOnClick:h,isSubtree:!0,renderNode:u,selectOnClick:i,allowRangeSelection:s,expandOnSpace:o},y.value)),c=y=>{var $,w,x;if(y.nativeEvent.code==="ArrowRight"&&(y.stopPropagation(),y.preventDefault(),r.expandedState[e.value]?($=y.currentTarget.querySelector("[role=treeitem]"))==null||$.focus():r.expand(e.value)),y.nativeEvent.code==="ArrowLeft"&&(y.stopPropagation(),y.preventDefault(),r.expandedState[e.value]&&(e.children||[]).length>0?r.collapse(e.value):d&&((w=io(y.currentTarget,"[role=treeitem]"))==null||w.focus())),y.nativeEvent.code==="ArrowDown"||y.nativeEvent.code==="ArrowUp"){const b=io(y.currentTarget,"[data-tree-root]");if(!b)return;y.stopPropagation(),y.preventDefault();const _=Array.from(b.querySelectorAll("[role=treeitem]")),R=_.indexOf(y.currentTarget);if(R===-1)return;const E=y.nativeEvent.code==="ArrowDown"?R+1:R-1;if((x=_[E])==null||x.focus(),y.shiftKey){const L=_[E];L&&r.setSelectedState(Xg(r.anchorNode,L.dataset.value,p))}}y.nativeEvent.code==="Space"&&o&&(y.stopPropagation(),y.preventDefault(),r.toggleExpanded(e.value))},f=y=>{var $,w;y.stopPropagation(),s&&y.shiftKey&&r.anchorNode?(r.setSelectedState(Xg(r.anchorNode,e.value,p)),($=a.current)==null||$.focus()):(h&&r.toggleExpanded(e.value),i&&r.select(e.value),(w=a.current)==null||w.focus())},m=r.selectedState.includes(e.value),v={...t("label"),onClick:f,"data-selected":m||void 0,"data-value":e.value,"data-hovered":r.hoveredNode===e.value||void 0};return V.jsxs("li",{...t("node",{style:{"--label-offset":`calc(var(--level-offset) * ${g-1})`}}),role:"treeitem","aria-selected":m,"data-value":e.value,"data-selected":m||void 0,"data-hovered":r.hoveredNode===e.value||void 0,"data-level":g,tabIndex:n===0?0:-1,onKeyDown:c,ref:a,onMouseOver:y=>{y.stopPropagation(),r.setHoveredNode(e.value)},onMouseLeave:y=>{y.stopPropagation(),r.setHoveredNode(null)},children:[typeof u=="function"?u({node:e,level:g,selected:m,tree:r,expanded:r.expandedState[e.value]||!1,hasChildren:Array.isArray(e.children)&&e.children.length>0,elementProps:v}):V.jsx("div",{...v,children:e.label}),r.expandedState[e.value]&&l.length>0&&V.jsx("ul",{role:"group",...t("subtree"),"data-level":g,children:l})]})}Du.displayName="@mantine/core/TreeNode";function ca(e,t,n=[]){const r=[];for(const h of e)if(Array.isArray(h.children)&&h.children.length>0){const i=ca(h.children,t,n);if(i.currentTreeChecked.length===h.children.length){const d=i.currentTreeChecked.every(u=>u.checked),g={checked:d,indeterminate:!d,value:h.value,hasChildren:!0};r.push(g),n.push(g)}else if(i.currentTreeChecked.length>0){const d={checked:!1,indeterminate:!0,value:h.value,hasChildren:!0};r.push(d),n.push(d)}}else if(t.includes(h.value)){const i={checked:!0,indeterminate:!1,value:h.value,hasChildren:!1};r.push(i),n.push(i)}return{result:n,currentTreeChecked:r}}function Zg(e,t){for(const n of t){if(n.value===e)return n;if(Array.isArray(n.children)){const r=Zg(e,n.children);if(r)return r}}return null}function ua(e,t,n=[]){const r=Zg(e,t);return r?!Array.isArray(r.children)||r.children.length===0?[r.value]:(r.children.forEach(h=>{Array.isArray(h.children)&&h.children.length>0?ua(h.value,t,n):n.push(h.value)}),n):n}function V1(e,t,n){return n.length===0?!1:n.includes(e)?!0:ca(t,n).result.some(r=>r.value===e&&r.checked)}const G1=rg(V1);function K1(e,t,n){return n.length===0?!1:ca(t,n).result.some(r=>r.value===e&&r.indeterminate)}const Y1=rg(K1);function Jg(e,t,n,r={}){return t.forEach(h=>{r[h.value]=h.value in e?e[h.value]:h.value===n,Array.isArray(h.children)&&Jg(e,h.children,n,r)}),r}function Q1(e,t){const n=[];return e.forEach(r=>n.push(...ua(r,t))),n}function em({initialSelectedState:e=[],initialCheckedState:t=[],initialExpandedState:n={},multiple:r=!1}={}){const[h,i]=W.useState([]),[d,g]=W.useState(n),[u,p]=W.useState(e),[s,o]=W.useState(t),[a,l]=W.useState(null),[c,f]=W.useState(null),m=W.useCallback(k=>{g(C=>Jg(C,k,u)),o(C=>Q1(C,k)),i(k)},[u,s]),v=W.useCallback(k=>{g(C=>({...C,[k]:!C[k]}))},[]),y=W.useCallback(k=>{g(C=>({...C,[k]:!1}))},[]),$=W.useCallback(k=>{g(C=>({...C,[k]:!0}))},[]),w=W.useCallback(()=>{g(k=>{const C={...k};return Object.keys(C).forEach(S=>{C[S]=!0}),C})},[]),x=W.useCallback(()=>{g(k=>{const C={...k};return Object.keys(C).forEach(S=>{C[S]=!1}),C})},[]),b=W.useCallback(k=>p(C=>r?C.includes(k)?(l(null),C.filter(S=>S!==k)):(l(k),[...C,k]):C.includes(k)?(l(null),[]):(l(k),[k])),[]),_=W.useCallback(k=>{l(k),p(C=>r?C.includes(k)?C:[...C,k]:[k])},[]),R=W.useCallback(k=>{a===k&&l(null),p(C=>C.filter(S=>S!==k))},[]),E=W.useCallback(()=>{p([]),l(null)},[]),L=W.useCallback(k=>{const C=ua(k,h);o(S=>Array.from(new Set([...S,...C])))},[h]),M=W.useCallback(k=>{const C=ua(k,h);o(S=>S.filter(A=>!C.includes(A)))},[h]);return{multiple:r,expandedState:d,selectedState:u,checkedState:s,anchorNode:a,initialize:m,toggleExpanded:v,collapse:y,expand:$,expandAllNodes:w,collapseAllNodes:x,setExpandedState:g,checkNode:L,uncheckNode:M,toggleSelected:b,select:_,deselect:R,clearSelected:E,setSelectedState:p,hoveredNode:c,setHoveredNode:f,getCheckedNodes:()=>ca(h,s).result,isNodeChecked:k=>G1(k,h,s),isNodeIndeterminate:k=>Y1(k,h,s)}}var tm={root:"m_f698e191",subtree:"m_75f3ecf",node:"m_f6970eb1",label:"m_dc283425"};function nm(e){return e.reduce((t,n)=>(t.push(n.value),n.children&&t.push(...nm(n.children)),t),[])}const q1={expandOnClick:!0,allowRangeSelection:!0,expandOnSpace:!0},X1=(e,{levelOffset:t})=>({root:{"--level-offset":oo(t)}}),zu=Ve((e,t)=>{const n=ke("Tree",q1,e),{classNames:r,className:h,style:i,styles:d,unstyled:g,vars:u,data:p,expandOnClick:s,tree:o,renderNode:a,selectOnClick:l,clearSelectionOnOutsideClick:c,allowRangeSelection:f,expandOnSpace:m,levelOffset:v,...y}=n,$=em(),w=o||$,x=Et({name:"Tree",classes:tm,props:n,className:h,style:i,classNames:r,styles:d,unstyled:g,vars:u,varsResolver:X1}),b=pb(()=>c&&w.clearSelected()),_=ar(t,b),R=W.useMemo(()=>nm(p),[p]);W.useEffect(()=>{w.initialize(p)},[p]);const E=p.map((L,M)=>V.jsx(Du,{node:L,getStyles:x,rootIndex:M,expandOnClick:s,selectOnClick:l,controller:w,renderNode:a,flatValues:R,allowRangeSelection:f,expandOnSpace:m},L.value));return V.jsx(ge,{component:"ul",ref:_,...x("root"),...y,role:"tree","aria-multiselectable":w.multiple,"data-tree-root":!0,children:E})});zu.displayName="@mantine/core/Tree",zu.classes=tm;const Z1="/felix/assets/felix_wasm_bridge_bg-CV0-NIcC.wasm",J1=async(e={},t)=>{let n;if(t.startsWith("data:")){const r=t.replace(/^data:.*?base64,/,"");let h;if(typeof Buffer=="function"&&typeof Buffer.from=="function")h=Buffer.from(r,"base64");else if(typeof atob=="function"){const i=atob(r);h=new Uint8Array(i.length);for(let d=0;d"u"?(0,ah.require)("util").TextDecoder:TextDecoder;let rm=new nS("utf-8",{ignoreBOM:!0,fatal:!0});rm.decode();let ha=null;function da(){return(ha===null||ha.byteLength===0)&&(ha=new Uint8Array(Xe.memory.buffer)),ha}function fa(e,t){return e=e>>>0,rm.decode(da().subarray(e,e+t))}function Fu(e){return e==null}let ai=null;function Jt(){return(ai===null||ai.buffer.detached===!0||ai.buffer.detached===void 0&&ai.buffer!==Xe.memory.buffer)&&(ai=new DataView(Xe.memory.buffer)),ai}let cr=0;const rS=typeof TextEncoder>"u"?(0,ah.require)("util").TextEncoder:TextEncoder;let pa=new rS("utf-8");const iS=typeof pa.encodeInto=="function"?function(e,t){return pa.encodeInto(e,t)}:function(e,t){const n=pa.encode(e);return t.set(n),{read:e.length,written:n.length}};function So(e,t,n){if(n===void 0){const g=pa.encode(e),u=t(g.length,1)>>>0;return da().subarray(u,u+g.length).set(g),cr=g.length,u}let r=e.length,h=t(r,1)>>>0;const i=da();let d=0;for(;d127)break;i[h+d]=g}if(d!==r){d!==0&&(e=e.slice(d)),h=n(h,r,r=d+e.length*3,1)>>>0;const g=da().subarray(h+d,h+r),u=iS(e,g);d+=u.written,h=n(h,r,d,1)>>>0}return cr=d,h}function Pu(e){const t=typeof e;if(t=="number"||t=="boolean"||e==null)return`${e}`;if(t=="string")return`"${e}"`;if(t=="symbol"){const h=e.description;return h==null?"Symbol":`Symbol(${h})`}if(t=="function"){const h=e.name;return typeof h=="string"&&h.length>0?`Function(${h})`:"Function"}if(Array.isArray(e)){const h=e.length;let i="[";h>0&&(i+=Pu(e[0]));for(let d=1;d1)r=n[1];else return toString.call(e);if(r=="Object")try{return"Object("+JSON.stringify(e)+")"}catch{return"Object"}return e instanceof Error?`${e.name}: ${e.message} -${e.stack}`:r}function oS(e,t){const n=So(e,Xe.__wbindgen_malloc,Xe.__wbindgen_realloc),r=cr,h=Xe.parse(n,r,Rt(t));return wo(h)}function sS(e){wo(e)}function aS(e){const t=$e(e);return Rt(t)}function lS(e,t){const n=new Error(fa(e,t));return Rt(n)}function cS(e){const t=$e(e);return typeof t=="object"&&t!==null}function uS(e){return $e(e)===void 0}function hS(e,t){return $e(e)in $e(t)}function dS(e){const t=$e(e);return typeof t=="boolean"?t?1:0:2}function fS(){const e=new Error;return Rt(e)}function pS(e,t){const n=$e(t).stack,r=So(n,Xe.__wbindgen_malloc,Xe.__wbindgen_realloc),h=cr;Jt().setInt32(e+4*1,h,!0),Jt().setInt32(e+4*0,r,!0)}function gS(e,t){let n,r;try{n=e,r=t,console.error(fa(e,t))}finally{Xe.__wbindgen_free(n,r,1)}}function mS(e,t){return $e(e)==$e(t)}function vS(e,t){const n=$e(t),r=typeof n=="number"?n:void 0;Jt().setFloat64(e+8*1,Fu(r)?0:r,!0),Jt().setInt32(e+4*0,!Fu(r),!0)}function yS(e,t){const n=$e(t),r=typeof n=="string"?n:void 0;var h=Fu(r)?0:So(r,Xe.__wbindgen_malloc,Xe.__wbindgen_realloc),i=cr;Jt().setInt32(e+4*1,i,!0),Jt().setInt32(e+4*0,h,!0)}function bS(e,t){const n=String($e(t)),r=So(n,Xe.__wbindgen_malloc,Xe.__wbindgen_realloc),h=cr;Jt().setInt32(e+4*1,h,!0),Jt().setInt32(e+4*0,r,!0)}function wS(e){return Rt(e)}function SS(e,t){const n=fa(e,t);return Rt(n)}function xS(e,t){const n=$e(e)[$e(t)];return Rt(n)}function kS(e,t,n){$e(e)[wo(t)]=wo(n)}function $S(){const e=new Array;return Rt(e)}function CS(){const e=new Object;return Rt(e)}function _S(e,t,n){$e(e)[t>>>0]=wo(n)}function AS(e){let t;try{t=$e(e)instanceof ArrayBuffer}catch{t=!1}return t}function MS(e){const t=$e(e).buffer;return Rt(t)}function LS(e){const t=new Uint8Array($e(e));return Rt(t)}function ES(e,t,n){$e(e).set($e(t),n>>>0)}function TS(e){return $e(e).length}function RS(e){let t;try{t=$e(e)instanceof Uint8Array}catch{t=!1}return t}function IS(e,t){const n=Pu($e(t)),r=So(n,Xe.__wbindgen_malloc,Xe.__wbindgen_realloc),h=cr;Jt().setInt32(e+4*1,h,!0),Jt().setInt32(e+4*0,r,!0)}function NS(e,t){throw new Error(fa(e,t))}function OS(){const e=Xe.memory;return Rt(e)}URL=globalThis.URL;const xo=await J1({"./felix_wasm_bridge_bg.js":{__wbindgen_object_drop_ref:sS,__wbindgen_object_clone_ref:aS,__wbindgen_error_new:lS,__wbindgen_is_object:cS,__wbindgen_is_undefined:uS,__wbindgen_in:hS,__wbindgen_boolean_get:dS,__wbg_new_abda76e883ba8a5f:fS,__wbg_stack_658279fe44541cf6:pS,__wbg_error_f851667af71bcfc6:gS,__wbindgen_jsval_loose_eq:mS,__wbindgen_number_get:vS,__wbindgen_string_get:yS,__wbg_String_b9412f8799faab3e:bS,__wbindgen_number_new:wS,__wbindgen_string_new:SS,__wbg_getwithrefkey_edc2c8960f0f1191:xS,__wbg_set_f975102236d3c502:kS,__wbg_new_16b304a2cfa7ff4a:$S,__wbg_new_72fb9a18b5ae2624:CS,__wbg_set_d4638f722068f043:_S,__wbg_instanceof_ArrayBuffer_836825be07d4c9d2:AS,__wbg_buffer_12d079cc21e14bdb:MS,__wbg_new_63b92bc8671ed464:LS,__wbg_set_a47bac70306a19a7:ES,__wbg_length_c20a40f15020d68a:TS,__wbg_instanceof_Uint8Array_2b3bbecd033d19f6:RS,__wbindgen_debug_string:IS,__wbindgen_throw:NS,__wbindgen_memory:OS}},Z1),DS=xo.memory,zS=xo.parse,FS=xo.__wbindgen_malloc,PS=xo.__wbindgen_realloc,WS=xo.__wbindgen_free,jS=Object.freeze(Object.defineProperty({__proto__:null,__wbindgen_free:WS,__wbindgen_malloc:FS,__wbindgen_realloc:PS,memory:DS,parse:zS},Symbol.toStringTag,{value:"Module"}));eS(jS);var li={},Wu={},im={exports:{}};(function(e,t){(function(){var n="ace",r=function(){return this}();!r&&typeof window<"u"&&(r=window);var h=function(s,o,a){if(typeof s!="string"){h.original?h.original.apply(this,arguments):(console.error("dropping module because define wasn't a string."),console.trace());return}arguments.length==2&&(a=o),h.modules[s]||(h.payloads[s]=a,h.modules[s]=null)};h.modules={},h.payloads={};var i=function(s,o,a){if(typeof o=="string"){var l=u(s,o);if(l!=null)return a&&a(),l}else if(Object.prototype.toString.call(o)==="[object Array]"){for(var c=[],f=0,m=o.length;fu.length)&&(g=u.length),g-=d.length;var p=u.indexOf(d,g);return p!==-1&&p===g}),String.prototype.repeat||i(String.prototype,"repeat",function(d){for(var g="",u=this;d>0;)d&1&&(g+=u),(d>>=1)&&(u+=u);return g}),String.prototype.includes||i(String.prototype,"includes",function(d,g){return this.indexOf(d,g)!=-1}),Object.assign||(Object.assign=function(d){if(d==null)throw new TypeError("Cannot convert undefined or null to object");for(var g=Object(d),u=1;u>>0,p=arguments[1],s=p>>0,o=s<0?Math.max(u+s,0):Math.min(s,u),a=arguments[2],l=a===void 0?u:a>>0,c=l<0?Math.max(u+l,0):Math.min(l,u);o0;)u&1&&(p+=g),(u>>=1)&&(g+=g);return p};var i=/^\s\s*/,d=/\s\s*$/;r.stringTrimLeft=function(g){return g.replace(i,"")},r.stringTrimRight=function(g){return g.replace(d,"")},r.copyObject=function(g){var u={};for(var p in g)u[p]=g[p];return u},r.copyArray=function(g){for(var u=[],p=0,s=g.length;p65535?2:1}}),ace.define("ace/lib/useragent",["require","exports","module"],function(n,r,h){r.OS={LINUX:"LINUX",MAC:"MAC",WINDOWS:"WINDOWS"},r.getOS=function(){return r.isMac?r.OS.MAC:r.isLinux?r.OS.LINUX:r.OS.WINDOWS};var i=typeof navigator=="object"?navigator:{},d=(/mac|win|linux/i.exec(i.platform)||["other"])[0].toLowerCase(),g=i.userAgent||"",u=i.appName||"";r.isWin=d=="win",r.isMac=d=="mac",r.isLinux=d=="linux",r.isIE=u=="Microsoft Internet Explorer"||u.indexOf("MSAppHost")>=0?parseFloat((g.match(/(?:MSIE |Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]):parseFloat((g.match(/(?:Trident\/[0-9]+[\.0-9]+;.*rv:)([0-9]+[\.0-9]+)/)||[])[1]),r.isOldIE=r.isIE&&r.isIE<9,r.isGecko=r.isMozilla=g.match(/ Gecko\/\d+/),r.isOpera=typeof opera=="object"&&Object.prototype.toString.call(window.opera)=="[object Opera]",r.isWebKit=parseFloat(g.split("WebKit/")[1])||void 0,r.isChrome=parseFloat(g.split(" Chrome/")[1])||void 0,r.isSafari=parseFloat(g.split(" Safari/")[1])&&!r.isChrome||void 0,r.isEdge=parseFloat(g.split(" Edge/")[1])||void 0,r.isAIR=g.indexOf("AdobeAIR")>=0,r.isAndroid=g.indexOf("Android")>=0,r.isChromeOS=g.indexOf(" CrOS ")>=0,r.isIOS=/iPad|iPhone|iPod/.test(g)&&!window.MSStream,r.isIOS&&(r.isMac=!0),r.isMobile=r.isIOS||r.isAndroid}),ace.define("ace/lib/dom",["require","exports","module","ace/lib/useragent"],function(n,r,h){var i=n("./useragent"),d="http://www.w3.org/1999/xhtml";r.buildDom=function a(l,c,f){if(typeof l=="string"&&l){var m=document.createTextNode(l);return c&&c.appendChild(m),m}if(!Array.isArray(l))return l&&l.appendChild&&c&&c.appendChild(l),l;if(typeof l[0]!="string"||!l[0]){for(var v=[],y=0;y"u")){if(u){if(c)p();else if(c===!1)return u.push([a,l])}if(!g){var f=c;!c||!c.getRootNode?f=document:(f=c.getRootNode(),(!f||f==c)&&(f=document));var m=f.ownerDocument||f;if(l&&r.hasCssString(l,f))return null;l&&(a+=` -/*# sourceURL=ace/css/`+l+" */");var v=r.createElement("style");v.appendChild(m.createTextNode(a)),l&&(v.id=l),f==m&&(f=r.getDocumentHead(m)),f.insertBefore(v,f.firstChild)}}}if(r.importCssString=s,r.importCssStylsheet=function(a,l){r.buildDom(["link",{rel:"stylesheet",href:a}],r.getDocumentHead(l))},r.scrollbarWidth=function(a){var l=r.createElement("ace_inner");l.style.width="100%",l.style.minWidth="0px",l.style.height="200px",l.style.display="block";var c=r.createElement("ace_outer"),f=c.style;f.position="absolute",f.left="-10000px",f.overflow="hidden",f.width="200px",f.minWidth="0px",f.height="150px",f.display="block",c.appendChild(l);var m=a&&a.documentElement||document&&document.documentElement;if(!m)return 0;m.appendChild(c);var v=l.offsetWidth;f.overflow="scroll";var y=l.offsetWidth;return v===y&&(y=c.clientWidth),m.removeChild(c),v-y},r.computedStyle=function(a,l){return window.getComputedStyle(a,"")||{}},r.setStyle=function(a,l,c){a[l]!==c&&(a[l]=c)},r.HAS_CSS_ANIMATION=!1,r.HAS_CSS_TRANSFORMS=!1,r.HI_DPI=i.isWin?typeof window<"u"&&window.devicePixelRatio>=1.5:!0,i.isChromeOS&&(r.HI_DPI=!1),typeof document<"u"){var o=document.createElement("div");r.HI_DPI&&o.style.transform!==void 0&&(r.HAS_CSS_TRANSFORMS=!0),!i.isEdge&&typeof o.style.animationName<"u"&&(r.HAS_CSS_ANIMATION=!0),o=null}r.HAS_CSS_TRANSFORMS?r.translate=function(a,l,c){a.style.transform="translate("+Math.round(l)+"px, "+Math.round(c)+"px)"}:r.translate=function(a,l,c){a.style.top=Math.round(c)+"px",a.style.left=Math.round(l)+"px"}}),ace.define("ace/lib/net",["require","exports","module","ace/lib/dom"],function(n,r,h){var i=n("./dom");r.get=function(d,g){var u=new XMLHttpRequest;u.open("GET",d,!0),u.onreadystatechange=function(){u.readyState===4&&g(u.responseText)},u.send(null)},r.loadScript=function(d,g){var u=i.getDocumentHead(),p=document.createElement("script");p.src=d,u.appendChild(p),p.onload=p.onreadystatechange=function(s,o){(o||!p.readyState||p.readyState=="loaded"||p.readyState=="complete")&&(p=p.onload=p.onreadystatechange=null,o||g())}},r.qualifyURL=function(d){var g=document.createElement("a");return g.href=d,g.href}}),ace.define("ace/lib/oop",["require","exports","module"],function(n,r,h){r.inherits=function(i,d){i.super_=d,i.prototype=Object.create(d.prototype,{constructor:{value:i,enumerable:!1,writable:!0,configurable:!0}})},r.mixin=function(i,d){for(var g in d)i[g]=d[g];return i},r.implement=function(i,d){r.mixin(i,d)}}),ace.define("ace/lib/event_emitter",["require","exports","module"],function(n,r,h){var i={},d=function(){this.propagationStopped=!0},g=function(){this.defaultPrevented=!0};i._emit=i._dispatchEvent=function(u,p){this._eventRegistry||(this._eventRegistry={}),this._defaultHandlers||(this._defaultHandlers={});var s=this._eventRegistry[u]||[],o=this._defaultHandlers[u];if(!(!s.length&&!o)){(typeof p!="object"||!p)&&(p={}),p.type||(p.type=u),p.stopPropagation||(p.stopPropagation=d),p.preventDefault||(p.preventDefault=g),s=s.slice();for(var a=0;a1&&(v=f[f.length-2]);var $=p[c+"Path"];return $==null?$=p.basePath:m=="/"&&(c=m=""),$&&$.slice(-1)!="/"&&($+="/"),$+c+m+v+this.get("suffix")},r.setModuleUrl=function(l,c){return p.$moduleUrls[l]=c};var s=function(l,c){if(l==="ace/theme/textmate"||l==="./theme/textmate")return c(null,n("./theme/textmate"));if(o)return o(l,c);console.error("loader is not configured")},o;r.setLoader=function(l){o=l},r.dynamicModules=Object.create(null),r.$loading={},r.$loaded={},r.loadModule=function(l,c){var f;if(Array.isArray(l))var m=l[0],v=l[1];else if(typeof l=="string")var v=l;var y=function($){if($&&!r.$loading[v])return c&&c($);if(r.$loading[v]||(r.$loading[v]=[]),r.$loading[v].push(c),!(r.$loading[v].length>1)){var w=function(){s(v,function(x,b){b&&(r.$loaded[v]=b),r._emit("load.module",{name:v,module:b});var _=r.$loading[v];r.$loading[v]=null,_.forEach(function(R){R&&R(b)})})};if(!r.get("packaged"))return w();d.loadScript(r.moduleUrl(v,m),w),a()}};if(r.dynamicModules[v])r.dynamicModules[v]().then(function($){$.default?y($.default):y($)});else{try{f=this.$require(v)}catch{}y(f||r.$loaded[v])}},r.$require=function(l){if(typeof h.require=="function"){var c="require";return h[c](l)}},r.setModuleLoader=function(l,c){r.dynamicModules[l]=c};var a=function(){!p.basePath&&!p.workerPath&&!p.modePath&&!p.themePath&&!Object.keys(p.$moduleUrls).length&&(console.error("Unable to infer path to ace from script src,","use ace.config.set('basePath', 'path') to enable dynamic loading of modes and themes","or with webpack use ace/webpack-resolver"),a=function(){})};r.version="1.36.2"}),ace.define("ace/loader_build",["require","exports","module","ace/lib/fixoldbrowsers","ace/config"],function(n,r,h){n("./lib/fixoldbrowsers");var i=n("./config");i.setLoader(function(p,s){n([p],function(o){s(null,o)})});var d=function(){return this||typeof window<"u"&&window}();h.exports=function(p){i.init=g,i.$require=n,p.require=n},g(!0);function g(p){if(!(!d||!d.document)){i.set("packaged",p||n.packaged||h.packaged||d.define&&(void 0).packaged);var s={},o="",a=document.currentScript||document._currentScript,l=a&&a.ownerDocument||document;a&&a.src&&(o=a.src.split(/[?#]/)[0].split("/").slice(0,-1).join("/")||"");for(var c=l.getElementsByTagName("script"),f=0;f ["+this.end.row+"/"+this.end.column+"]"},d.prototype.contains=function(g,u){return this.compare(g,u)==0},d.prototype.compareRange=function(g){var u,p=g.end,s=g.start;return u=this.compare(p.row,p.column),u==1?(u=this.compare(s.row,s.column),u==1?2:u==0?1:0):u==-1?-2:(u=this.compare(s.row,s.column),u==-1?-1:u==1?42:0)},d.prototype.comparePoint=function(g){return this.compare(g.row,g.column)},d.prototype.containsRange=function(g){return this.comparePoint(g.start)==0&&this.comparePoint(g.end)==0},d.prototype.intersects=function(g){var u=this.compareRange(g);return u==-1||u==0||u==1},d.prototype.isEnd=function(g,u){return this.end.row==g&&this.end.column==u},d.prototype.isStart=function(g,u){return this.start.row==g&&this.start.column==u},d.prototype.setStart=function(g,u){typeof g=="object"?(this.start.column=g.column,this.start.row=g.row):(this.start.row=g,this.start.column=u)},d.prototype.setEnd=function(g,u){typeof g=="object"?(this.end.column=g.column,this.end.row=g.row):(this.end.row=g,this.end.column=u)},d.prototype.inside=function(g,u){return this.compare(g,u)==0?!(this.isEnd(g,u)||this.isStart(g,u)):!1},d.prototype.insideStart=function(g,u){return this.compare(g,u)==0?!this.isEnd(g,u):!1},d.prototype.insideEnd=function(g,u){return this.compare(g,u)==0?!this.isStart(g,u):!1},d.prototype.compare=function(g,u){return!this.isMultiLine()&&g===this.start.row?uthis.end.column?1:0:gthis.end.row?1:this.start.row===g?u>=this.start.column?0:-1:this.end.row===g?u<=this.end.column?0:1:0},d.prototype.compareStart=function(g,u){return this.start.row==g&&this.start.column==u?-1:this.compare(g,u)},d.prototype.compareEnd=function(g,u){return this.end.row==g&&this.end.column==u?1:this.compare(g,u)},d.prototype.compareInside=function(g,u){return this.end.row==g&&this.end.column==u?1:this.start.row==g&&this.start.column==u?-1:this.compare(g,u)},d.prototype.clipRows=function(g,u){if(this.end.row>u)var p={row:u+1,column:0};else if(this.end.rowu)var s={row:u+1,column:0};else if(this.start.row1?(R++,R>4&&(R=1)):R=1,d.isIE){var A=Math.abs(S.clientX-E)>5||Math.abs(S.clientY-L)>5;(!M||A)&&(R=1),M&&clearTimeout(M),M=setTimeout(function(){M=null},w[R-1]||600),R==1&&(E=S.clientX,L=S.clientY)}if(S._clicks=R,x[b]("mousedown",S),R>4)R=0;else if(R>1)return x[b](k[R],S)}Array.isArray($)||($=[$]),$.forEach(function(S){l(S,"mousedown",C,_)})};function f($){return 0|($.ctrlKey?1:0)|($.altKey?2:0)|($.shiftKey?4:0)|($.metaKey?8:0)}r.getModifierString=function($){return i.KEY_MODS[f($)]};function m($,w,x){var b=f(w);if(!x&&w.code&&(x=i.$codeToKeyCode[w.code]||x),!d.isMac&&g){if(w.getModifierState&&(w.getModifierState("OS")||w.getModifierState("Win"))&&(b|=8),g.altGr)if((3&b)!=3)g.altGr=0;else return;if(x===18||x===17){var _=w.location;if(x===17&&_===1)g[x]==1&&(u=w.timeStamp);else if(x===18&&b===3&&_===2){var R=w.timeStamp-u;R<50&&(g.altGr=!0)}}}if(x in i.MODIFIER_KEYS&&(x=-1),!(!b&&x===13&&w.location===3&&($(w,b,-x),w.defaultPrevented))){if(d.isChromeOS&&b&8){if($(w,b,x),w.defaultPrevented)return;b&=-9}return!b&&!(x in i.FUNCTION_KEYS)&&!(x in i.PRINTABLE_KEYS)?!1:$(w,b,x)}}r.addCommandKeyListener=function($,w,x){var b=null;l($,"keydown",function(_){g[_.keyCode]=(g[_.keyCode]||0)+1;var R=m(w,_,_.keyCode);return b=_.defaultPrevented,R},x),l($,"keypress",function(_){b&&(_.ctrlKey||_.altKey||_.shiftKey||_.metaKey)&&(r.stopEvent(_),b=null)},x),l($,"keyup",function(_){g[_.keyCode]=null},x),g||(v(),l(window,"focus",v))};function v(){g=Object.create(null)}if(typeof window=="object"&&window.postMessage&&!d.isOldIE){var y=1;r.nextTick=function($,w){w=w||window;var x="zero-timeout-message-"+y++,b=function(_){_.data==x&&(r.stopPropagation(_),c(w,"message",b),$())};l(w,"message",b),w.postMessage(x,"*")}}r.$idleBlocked=!1,r.onIdle=function($,w){return setTimeout(function x(){r.$idleBlocked?setTimeout(x,100):$()},w)},r.$idleBlockId=null,r.blockIdle=function($){r.$idleBlockId&&clearTimeout(r.$idleBlockId),r.$idleBlocked=!0,r.$idleBlockId=setTimeout(function(){r.$idleBlocked=!1},$||100)},r.nextFrame=typeof window=="object"&&(window.requestAnimationFrame||window.mozRequestAnimationFrame||window.webkitRequestAnimationFrame||window.msRequestAnimationFrame||window.oRequestAnimationFrame),r.nextFrame?r.nextFrame=r.nextFrame.bind(window):r.nextFrame=function($){setTimeout($,17)}}),ace.define("ace/clipboard",["require","exports","module"],function(n,r,h){var i;h.exports={lineMode:!1,pasteCancelled:function(){return i&&i>Date.now()-50?!0:i=!1},cancel:function(){i=Date.now()}}}),ace.define("ace/keyboard/textinput",["require","exports","module","ace/lib/event","ace/config","ace/lib/useragent","ace/lib/dom","ace/lib/lang","ace/clipboard","ace/lib/keys"],function(n,r,h){var i=n("../lib/event"),d=n("../config").nls,g=n("../lib/useragent"),u=n("../lib/dom"),p=n("../lib/lang"),s=n("../clipboard"),o=g.isChrome<18,a=g.isIE,l=g.isChrome>63,c=400,f=n("../lib/keys"),m=f.KEY_MODS,v=g.isIOS,y=v?/\s/:/\n/,$=g.isMobile,w;w=function(x,b){var _=u.createElement("textarea");_.className="ace_text-input",_.setAttribute("wrap","off"),_.setAttribute("autocorrect","off"),_.setAttribute("autocapitalize","off"),_.setAttribute("spellcheck","false"),_.style.opacity="0",x.insertBefore(_,x.firstChild);var R=!1,E=!1,L=!1,M=!1,k="";$||(_.style.fontSize="1px");var C=!1,S=!1,A="",T=0,I=0,N=0,O=Number.MAX_SAFE_INTEGER,D=Number.MIN_SAFE_INTEGER,P=0;try{var B=document.activeElement===_}catch{}this.setNumberOfExtraLines=function(Y){if(O=Number.MAX_SAFE_INTEGER,D=Number.MIN_SAFE_INTEGER,Y<0){P=0;return}P=Y},this.setAriaOptions=function(Y){if(Y.activeDescendant?(_.setAttribute("aria-haspopup","true"),_.setAttribute("aria-autocomplete",Y.inline?"both":"list"),_.setAttribute("aria-activedescendant",Y.activeDescendant)):(_.setAttribute("aria-haspopup","false"),_.setAttribute("aria-autocomplete","both"),_.removeAttribute("aria-activedescendant")),Y.role&&_.setAttribute("role",Y.role),Y.setLabel){_.setAttribute("aria-roledescription",d("text-input.aria-roledescription","editor"));var re="";if(b.$textInputAriaLabel&&(re+="".concat(b.$textInputAriaLabel,", ")),b.session){var ie=b.session.selection.cursor.row;re+=d("text-input.aria-label","Cursor at row $0",[ie+1])}_.setAttribute("aria-label",re)}},this.setAriaOptions({role:"textbox"}),i.addListener(_,"blur",function(Y){S||(b.onBlur(Y),B=!1)},b),i.addListener(_,"focus",function(Y){if(!S){if(B=!0,g.isEdge)try{if(!document.hasFocus())return}catch{}b.onFocus(Y),g.isEdge?setTimeout(F):F()}},b),this.$focusScroll=!1,this.focus=function(){if(this.setAriaOptions({setLabel:b.renderer.enableKeyboardAccessibility}),k||l||this.$focusScroll=="browser")return _.focus({preventScroll:!0});var Y=_.style.top;_.style.position="fixed",_.style.top="0px";try{var re=_.getBoundingClientRect().top!=0}catch{return}var ie=[];if(re)for(var he=_.parentElement;he&&he.nodeType==1;)ie.push(he),he.setAttribute("ace_nocontext","true"),!he.parentElement&&he.getRootNode?he=he.getRootNode().host:he=he.parentElement;_.focus({preventScroll:!0}),re&&ie.forEach(function(ce){ce.removeAttribute("ace_nocontext")}),setTimeout(function(){_.style.position="",_.style.top=="0px"&&(_.style.top=Y)},0)},this.blur=function(){_.blur()},this.isFocused=function(){return B},b.on("beforeEndOperation",function(){var Y=b.curOp,re=Y&&Y.command&&Y.command.name;if(re!="insertstring"){var ie=re&&(Y.docChanged||Y.selectionChanged);L&&ie&&(A=_.value="",Vt()),F()}});var j=function(Y,re){for(var ie=re,he=1;he<=Y-O&&he<2*P+1;he++)ie+=b.session.getLine(Y-he).length+1;return ie},F=v?function(Y){if(!(!B||R&&!Y||M)){Y||(Y="");var re=` - ab`+Y+`cde fg -`;re!=_.value&&(_.value=A=re);var ie=4,he=4+(Y.length||(b.selection.isEmpty()?0:1));(T!=ie||I!=he)&&_.setSelectionRange(ie,he),T=ie,I=he}}:function(){if(!(L||M)&&!(!B&&!X)){L=!0;var Y=0,re=0,ie="";if(b.session){var he=b.selection,ce=he.getRange(),Ce=he.cursor.row;Ce===D+1?(O=D+1,D=O+2*P):Ce===O-1?(D=O-1,O=D-2*P):(CeD+1)&&(O=Ce>P?Ce-P:0,D=Ce>P?Ce+P:2*P);for(var Ie=[],Me=O;Me<=D;Me++)Ie.push(b.session.getLine(Me));if(ie=Ie.join(` -`),Y=j(ce.start.row,ce.start.column),re=j(ce.end.row,ce.end.column),ce.start.rowD){var fe=b.session.getLine(D+1);re=ce.end.row>D+1?fe.length:ce.end.column,re+=ie.length+1,ie=ie+` -`+fe}else $&&Ce>0&&(ie=` -`+ie,re+=1,Y+=1);ie.length>c&&(Y=A.length&&Y.value===A&&A&&Y.selectionEnd!==I},G=function(Y){L||(R?R=!1:H(_)?(b.selectAll(),F()):$&&_.selectionStart!=T&&F())},Q=null;this.setInputHandler=function(Y){Q=Y},this.getInputHandler=function(){return Q};var X=!1,J=function(Y,re){if(X&&(X=!1),E)return F(),Y&&b.onPaste(Y),E=!1,"";for(var ie=_.selectionStart,he=_.selectionEnd,ce=T,Ce=A.length-I,Ie=Y,Me=Y.length-ie,be=Y.length-he,fe=0;ce>0&&A[fe]==Y[fe];)fe++,ce--;for(Ie=Ie.slice(fe),fe=1;Ce>0&&A.length-fe>T-1&&A[A.length-fe]==Y[Y.length-fe];)fe++,Ce--;Me-=fe-1,be-=fe-1;var Je=Ie.length-fe+1;if(Je<0&&(ce=-Je,Je=0),Ie=Ie.slice(0,Je),!re&&!Ie&&!Me&&!ce&&!Ce&&!be)return"";M=!0;var pr=!1;return g.isAndroid&&Ie==". "&&(Ie=" ",pr=!0),Ie&&!ce&&!Ce&&!Me&&!be||C?b.onTextInput(Ie):b.onTextInput(Ie,{extendLeft:ce,extendRight:Ce,restoreStart:Me,restoreEnd:be}),M=!1,A=Y,T=ie,I=he,N=be,pr?` -`:Ie},ee=function(Y){if(L)return Ut();if(Y&&Y.inputType){if(Y.inputType=="historyUndo")return b.execCommand("undo");if(Y.inputType=="historyRedo")return b.execCommand("redo")}var re=_.value,ie=J(re,!0);(re.length>c+100||y.test(ie)||$&&T<1&&T==I)&&F()},ae=function(Y,re,ie){var he=Y.clipboardData||window.clipboardData;if(!(!he||o)){var ce=a||ie?"Text":"text/plain";try{return re?he.setData(ce,re)!==!1:he.getData(ce)}catch(Ce){if(!ie)return ae(Ce,re,!0)}}},ue=function(Y,re){var ie=b.getCopyText();if(!ie)return i.preventDefault(Y);ae(Y,ie)?(v&&(F(ie),R=ie,setTimeout(function(){R=!1},10)),re?b.onCut():b.onCopy(),i.preventDefault(Y)):(R=!0,_.value=ie,_.select(),setTimeout(function(){R=!1,F(),re?b.onCut():b.onCopy()}))},He=function(Y){ue(Y,!0)},Re=function(Y){ue(Y,!1)},ye=function(Y){var re=ae(Y);s.pasteCancelled()||(typeof re=="string"?(re&&b.onPaste(re,Y),g.isIE&&setTimeout(F),i.preventDefault(Y)):(_.value="",E=!0))};i.addCommandKeyListener(_,function(Y,re,ie){if(!L)return b.onCommandKey(Y,re,ie)},b),i.addListener(_,"select",G,b),i.addListener(_,"input",ee,b),i.addListener(_,"cut",He,b),i.addListener(_,"copy",Re,b),i.addListener(_,"paste",ye,b),(!("oncut"in _)||!("oncopy"in _)||!("onpaste"in _))&&i.addListener(x,"keydown",function(Y){if(!(g.isMac&&!Y.metaKey||!Y.ctrlKey))switch(Y.keyCode){case 67:Re(Y);break;case 86:ye(Y);break;case 88:He(Y);break}},b);var Ze=function(Y){if(!(L||!b.onCompositionStart||b.$readOnly)&&(L={},!C)){Y.data&&(L.useTextareaForIME=!1),setTimeout(Ut,0),b._signal("compositionStart"),b.on("mousedown",fr);var re=b.getSelectionRange();re.end.row=re.start.row,re.end.column=re.start.column,L.markerRange=re,L.selectionStart=T,b.onCompositionStart(L),L.useTextareaForIME?(A=_.value="",T=0,I=0):(_.msGetInputContext&&(L.context=_.msGetInputContext()),_.getInputContext&&(L.context=_.getInputContext()))}},Ut=function(){if(!(!L||!b.onCompositionUpdate||b.$readOnly)){if(C)return fr();if(L.useTextareaForIME)b.onCompositionUpdate(_.value);else{var Y=_.value;J(Y),L.markerRange&&(L.context&&(L.markerRange.start.column=L.selectionStart=L.context.compositionStartOffset),L.markerRange.end.column=L.markerRange.start.column+I-L.selectionStart+N)}}},Vt=function(Y){!b.onCompositionEnd||b.$readOnly||(L=!1,b.onCompositionEnd(),b.off("mousedown",fr),Y&&ee())};function fr(){S=!0,_.blur(),_.focus(),S=!1}var xa=p.delayedCall(Ut,50).schedule.bind(null,null);function Ju(Y){Y.keyCode==27&&_.value.length<_.selectionStart&&(L||(A=_.value),T=I=-1,F()),xa()}i.addListener(_,"compositionstart",Ze,b),i.addListener(_,"compositionupdate",Ut,b),i.addListener(_,"keyup",Ju,b),i.addListener(_,"keydown",xa,b),i.addListener(_,"compositionend",Vt,b),this.getElement=function(){return _},this.setCommandMode=function(Y){C=Y,_.readOnly=!1},this.setReadOnly=function(Y){C||(_.readOnly=Y)},this.setCopyWithEmptySelection=function(Y){},this.onContextMenu=function(Y){X=!0,F(),b._emit("nativecontextmenu",{target:b,domEvent:Y}),this.moveToMouse(Y,!0)},this.moveToMouse=function(Y,re){k||(k=_.style.cssText),_.style.cssText=(re?"z-index:100000;":"")+(g.isIE?"opacity:0.1;":"")+"text-indent: -"+(T+I)*b.renderer.characterWidth*.5+"px;";var ie=b.container.getBoundingClientRect(),he=u.computedStyle(b.container),ce=ie.top+(parseInt(he.borderTopWidth)||0),Ce=ie.left+(parseInt(ie.borderLeftWidth)||0),Ie=ie.bottom-ce-_.clientHeight-2,Me=function(be){u.translate(_,be.clientX-Ce-2,Math.min(be.clientY-ce-2,Ie))};Me(Y),Y.type=="mousedown"&&(b.renderer.$isMousePressed=!0,clearTimeout(Co),g.isWin&&i.capture(b.container,Me,hi))},this.onContextMenuClose=hi;var Co;function hi(){clearTimeout(Co),Co=setTimeout(function(){k&&(_.style.cssText=k,k=""),b.renderer.$isMousePressed=!1,b.renderer.$keepTextAreaAtCursor&&b.renderer.$moveTextAreaToCursor()},0)}var _o=function(Y){b.textInput.onContextMenu(Y),hi()};i.addListener(_,"mouseup",_o,b),i.addListener(_,"mousedown",function(Y){Y.preventDefault(),hi()},b),i.addListener(b.renderer.scroller,"contextmenu",_o,b),i.addListener(_,"contextmenu",_o,b),v&&eh(x,b,_);function eh(Y,re,ie){var he=null,ce=!1;ie.addEventListener("keydown",function(Ie){he&&clearTimeout(he),ce=!0},!0),ie.addEventListener("keyup",function(Ie){he=setTimeout(function(){ce=!1},100)},!0);var Ce=function(Ie){if(document.activeElement===ie&&!(ce||L||re.$mouseHandler.isMousePressed)&&!R){var Me=ie.selectionStart,be=ie.selectionEnd,fe=null,Je=0;if(Me==0?fe=f.up:Me==1?fe=f.home:be>I&&A[be]==` -`?fe=f.end:MeI&&A.slice(0,be).split(` -`).length>2?fe=f.down:be>I&&A[be-1]==" "?(fe=f.right,Je=m.option):(be>I||be==I&&I!=T&&Me==be)&&(fe=f.right),Me!==be&&(Je|=m.shift),fe){var pr=re.onCommandKey({},Je,fe);if(!pr&&re.commands){fe=f.keyCodeToString(fe);var ka=re.commands.findKeyCommand(Je,fe);ka&&re.execCommand(ka)}T=Me,I=be,F("")}}};document.addEventListener("selectionchange",Ce),re.on("destroy",function(){document.removeEventListener("selectionchange",Ce)})}this.destroy=function(){_.parentElement&&_.parentElement.removeChild(_)}},r.TextInput=w,r.$setUserAgentForTests=function(x,b){$=x,v=b}}),ace.define("ace/mouse/default_handlers",["require","exports","module","ace/lib/useragent"],function(n,r,h){var i=n("../lib/useragent"),d=0,g=550,u=function(){function o(a){a.$clickSelection=null;var l=a.editor;l.setDefaultHandler("mousedown",this.onMouseDown.bind(a)),l.setDefaultHandler("dblclick",this.onDoubleClick.bind(a)),l.setDefaultHandler("tripleclick",this.onTripleClick.bind(a)),l.setDefaultHandler("quadclick",this.onQuadClick.bind(a)),l.setDefaultHandler("mousewheel",this.onMouseWheel.bind(a));var c=["select","startSelect","selectEnd","selectAllEnd","selectByWordsEnd","selectByLinesEnd","dragWait","dragWaitEnd","focusWait"];c.forEach(function(f){a[f]=this[f]},this),a.selectByLines=this.extendSelectionBy.bind(a,"getLineRange"),a.selectByWords=this.extendSelectionBy.bind(a,"getWordRange")}return o.prototype.onMouseDown=function(a){var l=a.inSelection(),c=a.getDocumentPosition();this.mousedownEvent=a;var f=this.editor,m=a.getButton();if(m!==0){var v=f.getSelectionRange(),y=v.isEmpty();(y||m==1)&&f.selection.moveToPosition(c),m==2&&(f.textInput.onContextMenu(a.domEvent),i.isMozilla||a.preventDefault());return}if(this.mousedownEvent.time=Date.now(),l&&!f.isFocused()&&(f.focus(),this.$focusTimeout&&!this.$clickSelection&&!f.inMultiSelectMode)){this.setState("focusWait"),this.captureMouse(a);return}return this.captureMouse(a),this.startSelect(c,a.domEvent._clicks>1),a.preventDefault()},o.prototype.startSelect=function(a,l){a=a||this.editor.renderer.screenToTextCoordinates(this.x,this.y);var c=this.editor;this.mousedownEvent&&(this.mousedownEvent.getShiftKey()?c.selection.selectToPosition(a):l||c.selection.moveToPosition(a),l||this.select(),c.setStyle("ace_selecting"),this.setState("select"))},o.prototype.select=function(){var a,l=this.editor,c=l.renderer.screenToTextCoordinates(this.x,this.y);if(this.$clickSelection){var f=this.$clickSelection.comparePoint(c);if(f==-1)a=this.$clickSelection.end;else if(f==1)a=this.$clickSelection.start;else{var m=s(this.$clickSelection,c);c=m.cursor,a=m.anchor}l.selection.setSelectionAnchor(a.row,a.column)}l.selection.selectToPosition(c),l.renderer.scrollCursorIntoView()},o.prototype.extendSelectionBy=function(a){var l,c=this.editor,f=c.renderer.screenToTextCoordinates(this.x,this.y),m=c.selection[a](f.row,f.column);if(this.$clickSelection){var v=this.$clickSelection.comparePoint(m.start),y=this.$clickSelection.comparePoint(m.end);if(v==-1&&y<=0)l=this.$clickSelection.end,(m.end.row!=f.row||m.end.column!=f.column)&&(f=m.start);else if(y==1&&v>=0)l=this.$clickSelection.start,(m.start.row!=f.row||m.start.column!=f.column)&&(f=m.end);else if(v==-1&&y==1)f=m.end,l=m.start;else{var $=s(this.$clickSelection,f);f=$.cursor,l=$.anchor}c.selection.setSelectionAnchor(l.row,l.column)}c.selection.selectToPosition(f),c.renderer.scrollCursorIntoView()},o.prototype.selectByLinesEnd=function(){this.$clickSelection=null,this.editor.unsetStyle("ace_selecting")},o.prototype.focusWait=function(){var a=p(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y),l=Date.now();(a>d||l-this.mousedownEvent.time>this.$focusTimeout)&&this.startSelect(this.mousedownEvent.getDocumentPosition())},o.prototype.onDoubleClick=function(a){var l=a.getDocumentPosition(),c=this.editor,f=c.session,m=f.getBracketRange(l);m?(m.isEmpty()&&(m.start.column--,m.end.column++),this.setState("select")):(m=c.selection.getWordRange(l.row,l.column),this.setState("selectByWords")),this.$clickSelection=m,this.select()},o.prototype.onTripleClick=function(a){var l=a.getDocumentPosition(),c=this.editor;this.setState("selectByLines");var f=c.getSelectionRange();f.isMultiLine()&&f.contains(l.row,l.column)?(this.$clickSelection=c.selection.getLineRange(f.start.row),this.$clickSelection.end=c.selection.getLineRange(f.end.row).end):this.$clickSelection=c.selection.getLineRange(l.row),this.select()},o.prototype.onQuadClick=function(a){var l=this.editor;l.selectAll(),this.$clickSelection=l.getSelectionRange(),this.setState("selectAll")},o.prototype.onMouseWheel=function(a){if(!a.getAccelKey()){a.getShiftKey()&&a.wheelY&&!a.wheelX&&(a.wheelX=a.wheelY,a.wheelY=0);var l=this.editor;this.$lastScroll||(this.$lastScroll={t:0,vx:0,vy:0,allowed:0});var c=this.$lastScroll,f=a.domEvent.timeStamp,m=f-c.t,v=m?a.wheelX/m:c.vx,y=m?a.wheelY/m:c.vy;m=1&&l.renderer.isScrollableBy(a.wheelX*a.speed,0)&&(w=!0),$<=1&&l.renderer.isScrollableBy(0,a.wheelY*a.speed)&&(w=!0),w)c.allowed=f;else if(f-c.allowedd.clientHeight;g||i.preventDefault()}}),ace.define("ace/tooltip",["require","exports","module","ace/lib/dom","ace/lib/event","ace/range","ace/lib/scroll"],function(n,r,h){var i=this&&this.__extends||function(){var f=function(m,v){return f=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(y,$){y.__proto__=$}||function(y,$){for(var w in $)Object.prototype.hasOwnProperty.call($,w)&&(y[w]=$[w])},f(m,v)};return function(m,v){if(typeof v!="function"&&v!==null)throw new TypeError("Class extends value "+String(v)+" is not a constructor or null");f(m,v);function y(){this.constructor=m}m.prototype=v===null?Object.create(v):(y.prototype=v.prototype,new y)}}(),d=this&&this.__values||function(f){var m=typeof Symbol=="function"&&Symbol.iterator,v=m&&f[m],y=0;if(v)return v.call(f);if(f&&typeof f.length=="number")return{next:function(){return f&&y>=f.length&&(f=void 0),{value:f&&f[y++],done:!f}}};throw new TypeError(m?"Object is not iterable.":"Symbol.iterator is not defined.")},g=n("./lib/dom");n("./lib/event");var u=n("./range").Range,p=n("./lib/scroll").preventParentScroll,s="ace_tooltip",o=function(){function f(m){this.isOpen=!1,this.$element=null,this.$parentNode=m}return f.prototype.$init=function(){return this.$element=g.createElement("div"),this.$element.className=s,this.$element.style.display="none",this.$parentNode.appendChild(this.$element),this.$element},f.prototype.getElement=function(){return this.$element||this.$init()},f.prototype.setText=function(m){this.getElement().textContent=m},f.prototype.setHtml=function(m){this.getElement().innerHTML=m},f.prototype.setPosition=function(m,v){this.getElement().style.left=m+"px",this.getElement().style.top=v+"px"},f.prototype.setClassName=function(m){g.addCssClass(this.getElement(),m)},f.prototype.setTheme=function(m){this.$element.className=s+" "+(m.isDark?"ace_dark ":"")+(m.cssClass||"")},f.prototype.show=function(m,v,y){m!=null&&this.setText(m),v!=null&&y!=null&&this.setPosition(v,y),this.isOpen||(this.getElement().style.display="block",this.isOpen=!0)},f.prototype.hide=function(m){this.isOpen&&(this.getElement().style.display="none",this.getElement().className=s,this.isOpen=!1)},f.prototype.getHeight=function(){return this.getElement().offsetHeight},f.prototype.getWidth=function(){return this.getElement().offsetWidth},f.prototype.destroy=function(){this.isOpen=!1,this.$element&&this.$element.parentNode&&this.$element.parentNode.removeChild(this.$element)},f}(),a=function(){function f(){this.popups=[]}return f.prototype.addPopup=function(m){this.popups.push(m),this.updatePopups()},f.prototype.removePopup=function(m){var v=this.popups.indexOf(m);v!==-1&&(this.popups.splice(v,1),this.updatePopups())},f.prototype.updatePopups=function(){var m,v,y,$;this.popups.sort(function(k,C){return C.priority-k.priority});var w=[];try{for(var x=d(this.popups),b=x.next();!b.done;b=x.next()){var _=b.value,R=!0;try{for(var E=(y=void 0,d(w)),L=E.next();!L.done;L=E.next()){var M=L.value;if(this.doPopupsOverlap(M,_)){R=!1;break}}}catch(k){y={error:k}}finally{try{L&&!L.done&&($=E.return)&&$.call(E)}finally{if(y)throw y.error}}R?w.push(_):_.hide()}}catch(k){m={error:k}}finally{try{b&&!b.done&&(v=x.return)&&v.call(x)}finally{if(m)throw m.error}}},f.prototype.doPopupsOverlap=function(m,v){var y=m.getElement().getBoundingClientRect(),$=v.getElement().getBoundingClientRect();return y.left<$.right&&y.right>$.left&&y.top<$.bottom&&y.bottom>$.top},f}(),l=new a;r.popupManager=l,r.Tooltip=o;var c=function(f){i(m,f);function m(v){v===void 0&&(v=document.body);var y=f.call(this,v)||this;y.timeout=void 0,y.lastT=0,y.idleTime=350,y.lastEvent=void 0,y.onMouseOut=y.onMouseOut.bind(y),y.onMouseMove=y.onMouseMove.bind(y),y.waitForHover=y.waitForHover.bind(y),y.hide=y.hide.bind(y);var $=y.getElement();return $.style.whiteSpace="pre-wrap",$.style.pointerEvents="auto",$.addEventListener("mouseout",y.onMouseOut),$.tabIndex=-1,$.addEventListener("blur",(function(){$.contains(document.activeElement)||this.hide()}).bind(y)),$.addEventListener("wheel",p),y}return m.prototype.addToEditor=function(v){v.on("mousemove",this.onMouseMove),v.on("mousedown",this.hide),v.renderer.getMouseEventTarget().addEventListener("mouseout",this.onMouseOut,!0)},m.prototype.removeFromEditor=function(v){v.off("mousemove",this.onMouseMove),v.off("mousedown",this.hide),v.renderer.getMouseEventTarget().removeEventListener("mouseout",this.onMouseOut,!0),this.timeout&&(clearTimeout(this.timeout),this.timeout=null)},m.prototype.onMouseMove=function(v,y){this.lastEvent=v,this.lastT=Date.now();var $=y.$mouseHandler.isMousePressed;if(this.isOpen){var w=this.lastEvent&&this.lastEvent.getDocumentPosition();(!this.range||!this.range.contains(w.row,w.column)||$||this.isOutsideOfText(this.lastEvent))&&this.hide()}this.timeout||$||(this.lastEvent=v,this.timeout=setTimeout(this.waitForHover,this.idleTime))},m.prototype.waitForHover=function(){this.timeout&&clearTimeout(this.timeout);var v=Date.now()-this.lastT;if(this.idleTime-v>10){this.timeout=setTimeout(this.waitForHover,this.idleTime-v);return}this.timeout=null,this.lastEvent&&!this.isOutsideOfText(this.lastEvent)&&this.$gatherData(this.lastEvent,this.lastEvent.editor)},m.prototype.isOutsideOfText=function(v){var y=v.editor,$=v.getDocumentPosition(),w=y.session.getLine($.row);if($.column==w.length){var x=y.renderer.pixelToScreenCoordinates(v.clientX,v.clientY),b=y.session.documentToScreenPosition($.row,$.column);if(b.column!=x.column||b.row!=x.row)return!0}return!1},m.prototype.setDataProvider=function(v){this.$gatherData=v},m.prototype.showForRange=function(v,y,$,w){var x=10;if(!(w&&w!=this.lastEvent)&&!(this.isOpen&&document.activeElement==this.getElement())){var b=v.renderer;this.isOpen||(l.addPopup(this),this.$registerCloseEvents(),this.setTheme(b.theme)),this.isOpen=!0,this.addMarker(y,v.session),this.range=u.fromPoints(y.start,y.end);var _=b.textToScreenCoordinates(y.start.row,y.start.column),R=b.scroller.getBoundingClientRect();_.pageX=l.length&&(l=void 0),{value:l&&l[m++],done:!l}}};throw new TypeError(c?"Object is not iterable.":"Symbol.iterator is not defined.")},g=n("../lib/dom"),u=n("../lib/event"),p=n("../tooltip").Tooltip,s=n("../config").nls;n("../lib/lang");function o(l){var c=l.editor,f=c.renderer.$gutterLayer,m=new a(c);l.editor.setDefaultHandler("guttermousedown",function(b){if(!(!c.isFocused()||b.getButton()!=0)){var _=f.getRegion(b);if(_!="foldWidgets"){var R=b.getDocumentPosition().row,E=c.session.selection;if(b.getShiftKey())E.selectTo(R,0);else{if(b.domEvent.detail==2)return c.selectAll(),b.preventDefault();l.$clickSelection=c.selection.getLineRange(R)}return l.setState("selectByLines"),l.captureMouse(b),b.preventDefault()}}});var v,y;function $(){var b=y.getDocumentPosition().row,_=c.session.getLength();if(b==_){var R=c.renderer.pixelToScreenCoordinates(0,y.y).row,E=y.$pos;if(R>c.session.documentToScreenRow(E.row,E.column))return w()}if(m.showTooltip(b),!!m.isOpen)if(c.on("mousewheel",w),l.$tooltipFollowsMouse)x(y);else{var L=y.getGutterRow(),M=f.$lines.get(L);if(M){var k=M.element.querySelector(".ace_gutter_annotation"),C=k.getBoundingClientRect(),S=m.getElement().style;S.left=C.right+"px",S.top=C.bottom+"px"}else x(y)}}function w(){v&&(v=clearTimeout(v)),m.isOpen&&(m.hideTooltip(),c.off("mousewheel",w))}function x(b){m.setPosition(b.x,b.y)}l.editor.setDefaultHandler("guttermousemove",function(b){var _=b.domEvent.target||b.domEvent.srcElement;if(g.hasCssClass(_,"ace_fold-widget"))return w();m.isOpen&&l.$tooltipFollowsMouse&&x(b),y=b,!v&&(v=setTimeout(function(){v=null,y&&!l.isMousePressed?$():w()},50))}),u.addListener(c.renderer.$gutter,"mouseout",function(b){y=null,!(!m.isOpen||v)&&(v=setTimeout(function(){v=null,w()},50))},c),c.on("changeSession",w),c.on("input",w)}r.GutterHandler=o;var a=function(l){i(c,l);function c(f){var m=l.call(this,f.container)||this;return m.editor=f,m}return c.prototype.setPosition=function(f,m){var v=window.innerWidth||document.documentElement.clientWidth,y=window.innerHeight||document.documentElement.clientHeight,$=this.getWidth(),w=this.getHeight();f+=15,m+=15,f+$>v&&(f-=f+$-v),m+w>y&&(m-=20+w),p.prototype.setPosition.call(this,f,m)},Object.defineProperty(c,"annotationLabels",{get:function(){return{error:{singular:s("gutter-tooltip.aria-label.error.singular","error"),plural:s("gutter-tooltip.aria-label.error.plural","errors")},security:{singular:s("gutter-tooltip.aria-label.security.singular","security finding"),plural:s("gutter-tooltip.aria-label.security.plural","security findings")},warning:{singular:s("gutter-tooltip.aria-label.warning.singular","warning"),plural:s("gutter-tooltip.aria-label.warning.plural","warnings")},info:{singular:s("gutter-tooltip.aria-label.info.singular","information message"),plural:s("gutter-tooltip.aria-label.info.plural","information messages")},hint:{singular:s("gutter-tooltip.aria-label.hint.singular","suggestion"),plural:s("gutter-tooltip.aria-label.hint.plural","suggestions")}}},enumerable:!1,configurable:!0}),c.prototype.showTooltip=function(f){var m,v=this.editor.renderer.$gutterLayer,y=v.$annotations[f],$;y?$={displayText:Array.from(y.displayText),type:Array.from(y.type)}:$={displayText:[],type:[]};var w=v.session.getFoldLine(f);if(w&&v.$showFoldedAnnotations){for(var x={error:[],security:[],warning:[],info:[],hint:[]},b={error:1,security:2,warning:3,info:4,hint:5},_,R=f+1;R<=w.end.row;R++)if(v.$annotations[R])for(var E=0;Es?k=null:H-k>=p&&(c.renderer.scrollCursorIntoView(),k=null)}}function A(j,F){var H=Date.now(),G=c.renderer.layerConfig.lineHeight,Q=c.renderer.layerConfig.characterWidth,X=c.renderer.scroller.getBoundingClientRect(),J={x:{left:$-X.left,right:X.right-$},y:{top:w-X.top,bottom:X.bottom-w}},ee=Math.min(J.x.left,J.x.right),ae=Math.min(J.y.top,J.y.bottom),ue={row:j.row,column:j.column};ee/Q<=2&&(ue.column+=J.x.left=u&&c.renderer.scrollCursorIntoView(ue):M=H:M=null}function T(){var j=_;_=c.renderer.screenToTextCoordinates($,w),S(_,j),A(_,j)}function I(){b=c.selection.toOrientedRange(),y=c.session.addMarker(b,"ace_selection",c.getSelectionStyle()),c.clearSelection(),c.isFocused()&&c.renderer.$cursorLayer.setBlinking(!1),clearInterval(x),T(),x=setInterval(T,20),R=0,d.addListener(document,"mousemove",D)}function N(){clearInterval(x),c.session.removeMarker(y),y=null,c.selection.fromOrientedRange(b),c.isFocused()&&!L&&c.$resetCursorStyle(),b=null,_=null,R=0,M=null,k=null,d.removeListener(document,"mousemove",D)}var O=null;function D(){O==null&&(O=setTimeout(function(){O!=null&&y&&N()},20))}function P(j){var F=j.types;return!F||Array.prototype.some.call(F,function(H){return H=="text/plain"||H=="Text"})}function B(j){var F=["copy","copymove","all","uninitialized"],H=["move","copymove","linkmove","all","uninitialized"],G=g.isMac?j.altKey:j.ctrlKey,Q="uninitialized";try{Q=j.dataTransfer.effectAllowed.toLowerCase()}catch{}var X="none";return G&&F.indexOf(Q)>=0?X="copy":H.indexOf(Q)>=0?X="move":F.indexOf(Q)>=0&&(X="copy"),X}}(function(){this.dragWait=function(){var l=Date.now()-this.mousedownEvent.time;l>this.editor.getDragDelay()&&this.startDrag()},this.dragWaitEnd=function(){var l=this.editor.container;l.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()),this.selectEnd()},this.dragReadyEnd=function(l){this.editor.$resetCursorStyle(),this.editor.unsetStyle("ace_dragging"),this.editor.renderer.setCursorStyle(""),this.dragWaitEnd()},this.startDrag=function(){this.cancelDrag=!1;var l=this.editor,c=l.container;c.draggable=!0,l.renderer.$cursorLayer.setBlinking(!1),l.setStyle("ace_dragging");var f=g.isWin?"default":"move";l.renderer.setCursorStyle(f),this.setState("dragReady")},this.onMouseDrag=function(l){var c=this.editor.container;if(g.isIE&&this.state=="dragReady"){var f=a(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);f>3&&c.dragDrop()}if(this.state==="dragWait"){var f=a(this.mousedownEvent.x,this.mousedownEvent.y,this.x,this.y);f>0&&(c.draggable=!1,this.startSelect(this.mousedownEvent.getDocumentPosition()))}},this.onMouseDown=function(l){if(this.$dragEnabled){this.mousedownEvent=l;var c=this.editor,f=l.inSelection(),m=l.getButton(),v=l.domEvent.detail||1;if(v===1&&m===0&&f){if(l.editor.inMultiSelectMode&&(l.getAccelKey()||l.getShiftKey()))return;this.mousedownEvent.time=Date.now();var y=l.domEvent.target||l.domEvent.srcElement;if("unselectable"in y&&(y.unselectable="on"),c.getDragDelay()){if(g.isWebKit){this.cancelDrag=!0;var $=c.container;$.draggable=!0}this.setState("dragWait")}else this.startDrag();this.captureMouse(l,this.onMouseDrag.bind(this)),l.defaultPrevented=!0}}}}).call(o.prototype);function a(l,c,f,m){return Math.sqrt(Math.pow(f-l,2)+Math.pow(m-c,2))}r.DragdropHandler=o}),ace.define("ace/mouse/touch_handler",["require","exports","module","ace/mouse/mouse_event","ace/lib/event","ace/lib/dom"],function(n,r,h){var i=n("./mouse_event").MouseEvent,d=n("../lib/event"),g=n("../lib/dom");r.addTouchListeners=function(u,p){var s="scroll",o,a,l,c,f,m,v=0,y,$=0,w=0,x=0,b,_;function R(){var S=window.navigator&&window.navigator.clipboard,A=!1,T=function(){var O=p.getCopyText(),D=p.session.getUndoManager().hasUndo();_.replaceChild(g.buildDom(A?["span",!O&&I("selectall")&&["span",{class:"ace_mobile-button",action:"selectall"},"Select All"],O&&I("copy")&&["span",{class:"ace_mobile-button",action:"copy"},"Copy"],O&&I("cut")&&["span",{class:"ace_mobile-button",action:"cut"},"Cut"],S&&I("paste")&&["span",{class:"ace_mobile-button",action:"paste"},"Paste"],D&&I("undo")&&["span",{class:"ace_mobile-button",action:"undo"},"Undo"],I("find")&&["span",{class:"ace_mobile-button",action:"find"},"Find"],I("openCommandPalette")&&["span",{class:"ace_mobile-button",action:"openCommandPalette"},"Palette"]]:["span"]),_.firstChild)},I=function(O){return p.commands.canExecute(O,p)},N=function(O){var D=O.target.getAttribute("action");if(D=="more"||!A)return A=!A,T();D=="paste"?S.readText().then(function(P){p.execCommand(D,P)}):D&&((D=="cut"||D=="copy")&&(S?S.writeText(p.getCopyText()):document.execCommand("copy")),p.execCommand(D)),_.firstChild.style.display="none",A=!1,D!="openCommandPalette"&&p.focus()};_=g.buildDom(["div",{class:"ace_mobile-menu",ontouchstart:function(O){s="menu",O.stopPropagation(),O.preventDefault(),p.textInput.focus()},ontouchend:function(O){O.stopPropagation(),O.preventDefault(),N(O)},onclick:N},["span"],["span",{class:"ace_mobile-button",action:"more"},"..."]],p.container)}function E(){if(!p.getOption("enableMobileMenu")){_&&L();return}_||R();var S=p.selection.cursor,A=p.renderer.textToScreenCoordinates(S.row,S.column),T=p.renderer.textToScreenCoordinates(0,0).pageX,I=p.renderer.scrollLeft,N=p.container.getBoundingClientRect();_.style.top=A.pageY-N.top-3+"px",A.pageX-N.left=2?p.selection.getLineRange(y.row):p.session.getBracketRange(y);S&&!S.isEmpty()?p.selection.setRange(S):p.selection.selectWord(),s="wait"}d.addListener(u,"contextmenu",function(S){if(b){var A=p.textInput.getElement();A.focus()}},p),d.addListener(u,"touchstart",function(S){var A=S.touches;if(f||A.length>1){clearTimeout(f),f=null,l=-1,s="zoom";return}b=p.$mouseHandler.isMousePressed=!0;var T=p.renderer.layerConfig.lineHeight,I=p.renderer.layerConfig.lineHeight,N=S.timeStamp;c=N;var O=A[0],D=O.clientX,P=O.clientY;Math.abs(o-D)+Math.abs(a-P)>T&&(l=-1),o=S.clientX=D,a=S.clientY=P,w=x=0;var B=new i(S,p);if(y=B.getDocumentPosition(),N-l<500&&A.length==1&&!v)$++,S.preventDefault(),S.button=0,k();else{$=0;var j=p.selection.cursor,F=p.selection.isEmpty()?j:p.selection.anchor,H=p.renderer.$cursorLayer.getPixelPosition(j,!0),G=p.renderer.$cursorLayer.getPixelPosition(F,!0),Q=p.renderer.scroller.getBoundingClientRect(),X=p.renderer.layerConfig.offset,J=p.renderer.scrollLeft,ee=function(He,Re){return He=He/I,Re=Re/T-.75,He*He+Re*Re};if(S.clientXue?"cursor":"anchor"),ue<3.5?s="anchor":ae<3.5?s="cursor":s="scroll",f=setTimeout(M,450)}l=N},p),d.addListener(u,"touchend",function(S){b=p.$mouseHandler.isMousePressed=!1,m&&clearInterval(m),s=="zoom"?(s="",v=0):f?(p.selection.moveToPosition(y),v=0,E()):s=="scroll"?(C(),L()):E(),clearTimeout(f),f=null},p),d.addListener(u,"touchmove",function(S){f&&(clearTimeout(f),f=null);var A=S.touches;if(!(A.length>1||s=="zoom")){var T=A[0],I=o-T.clientX,N=a-T.clientY;if(s=="wait")if(I*I+N*N>4)s="cursor";else return S.preventDefault();o=T.clientX,a=T.clientY,S.clientX=T.clientX,S.clientY=T.clientY;var O=S.timeStamp,D=O-c;if(c=O,s=="scroll"){var P=new i(S,p);P.speed=1,P.wheelX=I,P.wheelY=N,10*Math.abs(I)0)if(ue==16){for(ye=Re;ye-1){for(ye=Re;ye=0&&G[Vt]==b;Vt--)F[Vt]=i}}}function D(j,F,H){if(!(d=j){for(X=Q+1;X=j;)X++;for(J=Q,ee=X-1;J=F.length||(X=H[G-1])!=m&&X!=v||(J=F[G+1])!=m&&J!=v?y:(g&&(J=v),J==X?J:y);case R:return X=G>0?H[G-1]:$,X==m&&G+10&&H[G-1]==m)return m;if(g)return y;for(ae=G+1,ee=F.length;ae=1425&&ue<=2303||ue==64286;if(X=F[ae],He&&(X==f||X==x))return f}return G<1||(X=F[G-1])==$?y:H[G-1];case $:return g=!1,u=!0,i;case w:return p=!0,y;case M:case k:case S:case A:case C:g=!1;case T:return y}}function B(j){var F=j.charCodeAt(0),H=F>>8;return H==0?F>191?c:I[F]:H==5?/[\u0591-\u05f4]/.test(j)?f:c:H==6?/[\u0610-\u061a\u064b-\u065f\u06d6-\u06e4\u06e7-\u06ed]/.test(j)?L:/[\u0660-\u0669\u066b-\u066c]/.test(j)?v:F==1642?E:/[\u06f0-\u06f9]/.test(j)?m:x:H==32&&F<=8287?N[F&255]:H==254&&F>=65136?x:y}r.L=c,r.R=f,r.EN=m,r.ON_R=3,r.AN=4,r.R_H=5,r.B=6,r.RLE=7,r.DOT="\xB7",r.doBidiReorder=function(j,F,H){if(j.length<2)return{};var G=j.split(""),Q=new Array(G.length),X=new Array(G.length),J=[];i=H?l:a,O(G,J,G.length,F);for(var ee=0;eex&&F[ee]0&&G[ee-1]==="\u0644"&&/\u0622|\u0623|\u0625|\u0627/.test(G[ee])&&(J[ee-1]=J[ee]=r.R_H,ee++);G[G.length-1]===r.DOT&&(J[G.length-1]=r.B),G[0]==="\u202B"&&(J[0]=r.RLE);for(var ee=0;ee=0&&(s=this.session.$docRowCache[a])}return s},p.prototype.getSplitIndex=function(){var s=0,o=this.session.$screenRowCache;if(o.length)for(var a,l=this.session.$getRowCacheIndex(o,this.currentRow);this.currentRow-s>0&&(a=this.session.$getRowCacheIndex(o,this.currentRow-s-1),a===l);)l=a,s++;else s=this.currentRow;return s},p.prototype.updateRowLine=function(s,o){s===void 0&&(s=this.getDocumentRow());var a=s===this.session.getLength()-1,l=a?this.EOF:this.EOL;if(this.wrapIndent=0,this.line=this.session.getLine(s),this.isRtlDir=this.$isRtl||this.line.charAt(0)===this.RLE,this.session.$useWrapMode){var c=this.session.$wrapData[s];c&&(o===void 0&&(o=this.getSplitIndex()),o>0&&c.length?(this.wrapIndent=c.indent,this.wrapOffset=this.wrapIndent*this.charWidths[i.L],this.line=oo?this.session.getOverwrite()?s:s-1:o,l=i.getVisualFromLogicalIdx(a,this.bidiMap),c=this.bidiMap.bidiLevels,f=0;!this.session.getOverwrite()&&s<=o&&c[l]%2!==0&&l++;for(var m=0;mo&&c[l]%2===0&&(f+=this.charWidths[c[l]]),this.wrapIndent&&(f+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset),this.isRtlDir&&(f+=this.rtlLineOffset),f},p.prototype.getSelections=function(s,o){var a=this.bidiMap,l=a.bidiLevels,c,f=[],m=0,v=Math.min(s,o)-this.wrapIndent,y=Math.max(s,o)-this.wrapIndent,$=!1,w=!1,x=0;this.wrapIndent&&(m+=this.isRtlDir?-1*this.wrapOffset:this.wrapOffset);for(var b,_=0;_=v&&bl+m/2;){if(l+=m,c===f.length-1){m=0;break}m=this.charWidths[f[++c]]}return c>0&&f[c-1]%2!==0&&f[c]%2===0?(a0&&f[c-1]%2===0&&f[c]%2!==0?o=1+(a>l?this.bidiMap.logicalFromVisual[c]:this.bidiMap.logicalFromVisual[c-1]):this.isRtlDir&&c===f.length-1&&m===0&&f[c-1]%2===0||!this.isRtlDir&&c===0&&f[c]%2!==0?o=1+this.bidiMap.logicalFromVisual[c]:(c>0&&f[c-1]%2!==0&&m!==0&&c--,o=this.bidiMap.logicalFromVisual[c]),o===0&&this.isRtlDir&&o++,o+this.wrapIndent},p}();r.BidiHandler=u}),ace.define("ace/selection",["require","exports","module","ace/lib/oop","ace/lib/lang","ace/lib/event_emitter","ace/range"],function(n,r,h){var i=n("./lib/oop"),d=n("./lib/lang"),g=n("./lib/event_emitter").EventEmitter,u=n("./range").Range,p=function(){function s(o){this.session=o,this.doc=o.getDocument(),this.clearSelection(),this.cursor=this.lead=this.doc.createAnchor(0,0),this.anchor=this.doc.createAnchor(0,0),this.$silent=!1;var a=this;this.cursor.on("change",function(l){a.$cursorChanged=!0,a.$silent||a._emit("changeCursor"),!a.$isEmpty&&!a.$silent&&a._emit("changeSelection"),!a.$keepDesiredColumnOnChange&&l.old.column!=l.value.column&&(a.$desiredColumn=null)}),this.anchor.on("change",function(){a.$anchorChanged=!0,!a.$isEmpty&&!a.$silent&&a._emit("changeSelection")})}return s.prototype.isEmpty=function(){return this.$isEmpty||this.anchor.row==this.lead.row&&this.anchor.column==this.lead.column},s.prototype.isMultiLine=function(){return!this.$isEmpty&&this.anchor.row!=this.cursor.row},s.prototype.getCursor=function(){return this.lead.getPosition()},s.prototype.setAnchor=function(o,a){this.$isEmpty=!1,this.anchor.setPosition(o,a)},s.prototype.getAnchor=function(){return this.$isEmpty?this.getSelectionLead():this.anchor.getPosition()},s.prototype.getSelectionLead=function(){return this.lead.getPosition()},s.prototype.isBackwards=function(){var o=this.anchor,a=this.lead;return o.row>a.row||o.row==a.row&&o.column>a.column},s.prototype.getRange=function(){var o=this.anchor,a=this.lead;return this.$isEmpty?u.fromPoints(a,a):this.isBackwards()?u.fromPoints(a,o):u.fromPoints(o,a)},s.prototype.clearSelection=function(){this.$isEmpty||(this.$isEmpty=!0,this._emit("changeSelection"))},s.prototype.selectAll=function(){this.$setSelection(0,0,Number.MAX_VALUE,Number.MAX_VALUE)},s.prototype.setRange=function(o,a){var l=a?o.end:o.start,c=a?o.start:o.end;this.$setSelection(l.row,l.column,c.row,c.column)},s.prototype.$setSelection=function(o,a,l,c){if(!this.$silent){var f=this.$isEmpty,m=this.inMultiSelectMode;this.$silent=!0,this.$cursorChanged=this.$anchorChanged=!1,this.anchor.setPosition(o,a),this.cursor.setPosition(l,c),this.$isEmpty=!u.comparePoints(this.anchor,this.cursor),this.$silent=!1,this.$cursorChanged&&this._emit("changeCursor"),(this.$cursorChanged||this.$anchorChanged||f!=this.$isEmpty||m)&&this._emit("changeSelection")}},s.prototype.$moveSelection=function(o){var a=this.lead;this.$isEmpty&&this.setSelectionAnchor(a.row,a.column),o.call(this)},s.prototype.selectTo=function(o,a){this.$moveSelection(function(){this.moveCursorTo(o,a)})},s.prototype.selectToPosition=function(o){this.$moveSelection(function(){this.moveCursorToPosition(o)})},s.prototype.moveTo=function(o,a){this.clearSelection(),this.moveCursorTo(o,a)},s.prototype.moveToPosition=function(o){this.clearSelection(),this.moveCursorToPosition(o)},s.prototype.selectUp=function(){this.$moveSelection(this.moveCursorUp)},s.prototype.selectDown=function(){this.$moveSelection(this.moveCursorDown)},s.prototype.selectRight=function(){this.$moveSelection(this.moveCursorRight)},s.prototype.selectLeft=function(){this.$moveSelection(this.moveCursorLeft)},s.prototype.selectLineStart=function(){this.$moveSelection(this.moveCursorLineStart)},s.prototype.selectLineEnd=function(){this.$moveSelection(this.moveCursorLineEnd)},s.prototype.selectFileEnd=function(){this.$moveSelection(this.moveCursorFileEnd)},s.prototype.selectFileStart=function(){this.$moveSelection(this.moveCursorFileStart)},s.prototype.selectWordRight=function(){this.$moveSelection(this.moveCursorWordRight)},s.prototype.selectWordLeft=function(){this.$moveSelection(this.moveCursorWordLeft)},s.prototype.getWordRange=function(o,a){if(typeof a>"u"){var l=o||this.lead;o=l.row,a=l.column}return this.session.getWordRange(o,a)},s.prototype.selectWord=function(){this.setSelectionRange(this.getWordRange())},s.prototype.selectAWord=function(){var o=this.getCursor(),a=this.session.getAWordRange(o.row,o.column);this.setSelectionRange(a)},s.prototype.getLineRange=function(o,a){var l=typeof o=="number"?o:this.lead.row,c,f=this.session.getFoldLine(l);return f?(l=f.start.row,c=f.end.row):c=l,a===!0?new u(l,0,c,this.session.getLine(c).length):new u(l,0,c+1,0)},s.prototype.selectLine=function(){this.setSelectionRange(this.getLineRange())},s.prototype.moveCursorUp=function(){this.moveCursorBy(-1,0)},s.prototype.moveCursorDown=function(){this.moveCursorBy(1,0)},s.prototype.wouldMoveIntoSoftTab=function(o,a,l){var c=o.column,f=o.column+a;return l<0&&(c=o.column-a,f=o.column),this.session.isTabStop(o)&&this.doc.getLine(o.row).slice(c,f).split(" ").length-1==a},s.prototype.moveCursorLeft=function(){var o=this.lead.getPosition(),a;if(a=this.session.getFoldAt(o.row,o.column,-1))this.moveCursorTo(a.start.row,a.start.column);else if(o.column===0)o.row>0&&this.moveCursorTo(o.row-1,this.doc.getLine(o.row-1).length);else{var l=this.session.getTabSize();this.wouldMoveIntoSoftTab(o,l,-1)&&!this.session.getNavigateWithinSoftTabs()?this.moveCursorBy(0,-l):this.moveCursorBy(0,-1)}},s.prototype.moveCursorRight=function(){var o=this.lead.getPosition(),a;if(a=this.session.getFoldAt(o.row,o.column,1))this.moveCursorTo(a.end.row,a.end.column);else if(this.lead.column==this.doc.getLine(this.lead.row).length)this.lead.row0&&(a.column=c)}}this.moveCursorTo(a.row,a.column)},s.prototype.moveCursorFileEnd=function(){var o=this.doc.getLength()-1,a=this.doc.getLine(o).length;this.moveCursorTo(o,a)},s.prototype.moveCursorFileStart=function(){this.moveCursorTo(0,0)},s.prototype.moveCursorLongWordRight=function(){var o=this.lead.row,a=this.lead.column,l=this.doc.getLine(o),c=l.substring(a);this.session.nonTokenRe.lastIndex=0,this.session.tokenRe.lastIndex=0;var f=this.session.getFoldAt(o,a,1);if(f){this.moveCursorTo(f.end.row,f.end.column);return}if(this.session.nonTokenRe.exec(c)&&(a+=this.session.nonTokenRe.lastIndex,this.session.nonTokenRe.lastIndex=0,c=l.substring(a)),a>=l.length){this.moveCursorTo(o,l.length),this.moveCursorRight(),o0&&this.moveCursorWordLeft();return}this.session.tokenRe.exec(f)&&(a-=this.session.tokenRe.lastIndex,this.session.tokenRe.lastIndex=0),this.moveCursorTo(o,a)},s.prototype.$shortWordEndIndex=function(o){var a=0,l,c=/\s/,f=this.session.tokenRe;if(f.lastIndex=0,this.session.tokenRe.exec(o))a=this.session.tokenRe.lastIndex;else{for(;(l=o[a])&&c.test(l);)a++;if(a<1){for(f.lastIndex=0;(l=o[a])&&!f.test(l);)if(f.lastIndex=0,a++,c.test(l))if(a>2){a--;break}else{for(;(l=o[a])&&c.test(l);)a++;if(a>2)break}}}return f.lastIndex=0,a},s.prototype.moveCursorShortWordRight=function(){var o=this.lead.row,a=this.lead.column,l=this.doc.getLine(o),c=l.substring(a),f=this.session.getFoldAt(o,a,1);if(f)return this.moveCursorTo(f.end.row,f.end.column);if(a==l.length){var m=this.doc.getLength();do o++,c=this.doc.getLine(o);while(o0&&/^\s*$/.test(c));a=c.length,/\s+$/.test(c)||(c="")}var f=d.stringReverse(c),m=this.$shortWordEndIndex(f);return this.moveCursorTo(o,a-m)},s.prototype.moveCursorWordRight=function(){this.session.$selectLongWords?this.moveCursorLongWordRight():this.moveCursorShortWordRight()},s.prototype.moveCursorWordLeft=function(){this.session.$selectLongWords?this.moveCursorLongWordLeft():this.moveCursorShortWordLeft()},s.prototype.moveCursorBy=function(o,a){var l=this.session.documentToScreenPosition(this.lead.row,this.lead.column),c;if(a===0&&(o!==0&&(this.session.$bidiHandler.isBidiRow(l.row,this.lead.row)?(c=this.session.$bidiHandler.getPosLeft(l.column),l.column=Math.round(c/this.session.$bidiHandler.charWidths[0])):c=l.column*this.session.$bidiHandler.charWidths[0]),this.$desiredColumn?l.column=this.$desiredColumn:this.$desiredColumn=l.column),o!=0&&this.session.lineWidgets&&this.session.lineWidgets[this.lead.row]){var f=this.session.lineWidgets[this.lead.row];o<0?o-=f.rowsAbove||0:o>0&&(o+=f.rowCount-(f.rowsAbove||0))}var m=this.session.screenToDocumentPosition(l.row+o,l.column,c);o!==0&&a===0&&m.row===this.lead.row&&(m.column,this.lead.column),this.moveCursorTo(m.row,m.column+a,a===0)},s.prototype.moveCursorToPosition=function(o){this.moveCursorTo(o.row,o.column)},s.prototype.moveCursorTo=function(o,a,l){var c=this.session.getFoldAt(o,a,1);c&&(o=c.start.row,a=c.start.column),this.$keepDesiredColumnOnChange=!0;var f=this.session.getLine(o);/[\uDC00-\uDFFF]/.test(f.charAt(a))&&f.charAt(a-1)&&(this.lead.row==o&&this.lead.column==a+1?a=a-1:a=a+1),this.lead.setPosition(o,a),this.$keepDesiredColumnOnChange=!1,l||(this.$desiredColumn=null)},s.prototype.moveCursorToScreen=function(o,a,l){var c=this.session.screenToDocumentPosition(o,a);this.moveCursorTo(c.row,c.column,l)},s.prototype.detach=function(){this.lead.detach(),this.anchor.detach()},s.prototype.fromOrientedRange=function(o){this.setSelectionRange(o,o.cursor==o.start),this.$desiredColumn=o.desiredColumn||this.$desiredColumn},s.prototype.toOrientedRange=function(o){var a=this.getRange();return o?(o.start.column=a.start.column,o.start.row=a.start.row,o.end.column=a.end.column,o.end.row=a.end.row):o=a,o.cursor=this.isBackwards()?o.start:o.end,o.desiredColumn=this.$desiredColumn,o},s.prototype.getRangeOfMovements=function(o){var a=this.getCursor();try{o(this);var l=this.getCursor();return u.fromPoints(a,l)}catch{return u.fromPoints(a,a)}finally{this.moveCursorToPosition(a)}},s.prototype.toJSON=function(){if(this.rangeCount)var o=this.ranges.map(function(a){var l=a.clone();return l.isBackwards=a.cursor==a.start,l});else{var o=this.getRange();o.isBackwards=this.isBackwards()}return o},s.prototype.fromJSON=function(o){if(o.start==null)if(this.rangeList&&o.length>1){this.toSingleRange(o[0]);for(var a=o.length;a--;){var l=u.fromPoints(o[a].start,o[a].end);o[a].isBackwards&&(l.cursor=l.start),this.addRange(l,!0)}return}else o=o[0];this.rangeList&&this.toSingleRange(o),this.setSelectionRange(o,o.isBackwards)},s.prototype.isEqual=function(o){if((o.length||this.rangeCount)&&o.length!=this.rangeCount)return!1;if(!o.length||!this.ranges)return this.getRange().isEqual(o);for(var a=this.ranges.length;a--;)if(!this.ranges[a].isEqual(o[a]))return!1;return!0},s}();p.prototype.setSelectionAnchor=p.prototype.setAnchor,p.prototype.getSelectionAnchor=p.prototype.getAnchor,p.prototype.setSelectionRange=p.prototype.setRange,i.implement(p.prototype,g),r.Selection=p}),ace.define("ace/tokenizer",["require","exports","module","ace/lib/report_error"],function(n,r,h){var i=n("./lib/report_error").reportError,d=2e3,g=function(){function u(p){this.splitRegex,this.states=p,this.regExps={},this.matchMappings={};for(var s in this.states){for(var o=this.states[s],a=[],l=0,c=this.matchMappings[s]={defaultToken:"text"},f="g",m=[],v=0;v1?y.onMatch=this.$applyToken:y.onMatch=y.token),w>1&&(/\\\d/.test(y.regex)?$=y.regex.replace(/\\([0-9]+)/g,function(x,b){return"\\"+(parseInt(b,10)+l+1)}):(w=1,$=this.removeCapturingGroups(y.regex)),!y.splitRegex&&typeof y.token!="string"&&m.push(y)),c[l]=v,l+=w,a.push($),y.onMatch||(y.onMatch=null)}}a.length||(c[0]=0,a.push("$")),m.forEach(function(x){x.splitRegex=this.createSplitterRegexp(x.regex,f)},this),this.regExps[s]=new RegExp("("+a.join(")|(")+")|($)",f)}}return u.prototype.$setMaxTokenCount=function(p){d=p|0},u.prototype.$applyToken=function(p){var s=this.splitRegex.exec(p).slice(1),o=this.token.apply(this,s);if(typeof o=="string")return[{type:o,value:p}];for(var a=[],l=0,c=o.length;ly){var E=p.substring(y,R-_.length);w.type==x?w.value+=E:(w.type&&v.push(w),w={type:x,value:E})}for(var L=0;Ld){for($>2*p.length&&this.reportError("infinite loop with in ace tokenizer",{startState:s,line:p});y1&&o[0]!==a&&o.unshift("#tmp",a),{tokens:v,state:o.length?o:a}},u}();g.prototype.reportError=i,r.Tokenizer=g}),ace.define("ace/mode/text_highlight_rules",["require","exports","module","ace/lib/deep_copy"],function(n,r,h){var i=n("../lib/deep_copy").deepCopy,d;d=function(){this.$rules={start:[{token:"empty_line",regex:"^$"},{defaultToken:"text"}]}},(function(){this.addRules=function(p,s){if(!s){for(var o in p)this.$rules[o]=p[o];return}for(var o in p){for(var a=p[o],l=0;l=this.$rowTokens.length;){if(this.$row+=1,u||(u=this.$session.getLength()),this.$row>=u)return this.$row=u-1,null;this.$rowTokens=this.$session.getTokens(this.$row),this.$tokenIndex=0}return this.$rowTokens[this.$tokenIndex]},g.prototype.getCurrentToken=function(){return this.$rowTokens[this.$tokenIndex]},g.prototype.getCurrentTokenRow=function(){return this.$row},g.prototype.getCurrentTokenColumn=function(){var u=this.$rowTokens,p=this.$tokenIndex,s=u[p].start;if(s!==void 0)return s;for(s=0;p>0;)p-=1,s+=u[p].value.length;return s},g.prototype.getCurrentTokenPosition=function(){return{row:this.$row,column:this.getCurrentTokenColumn()}},g.prototype.getCurrentTokenRange=function(){var u=this.$rowTokens[this.$tokenIndex],p=this.getCurrentTokenColumn();return new i(this.$row,p,this.$row,p+u.value.length)},g}();r.TokenIterator=d}),ace.define("ace/mode/behaviour/cstyle",["require","exports","module","ace/lib/oop","ace/mode/behaviour","ace/token_iterator","ace/lib/lang"],function(n,r,h){var i=n("../../lib/oop"),d=n("../behaviour").Behaviour,g=n("../../token_iterator").TokenIterator,u=n("../../lib/lang"),p=["text","paren.rparen","rparen","paren","punctuation.operator"],s=["text","paren.rparen","rparen","paren","punctuation.operator","comment"],o,a={},l={'"':'"',"'":"'"},c=function(v){var y=-1;if(v.multiSelect&&(y=v.selection.index,a.rangeCount!=v.multiSelect.rangeCount&&(a={rangeCount:v.multiSelect.rangeCount})),a[y])return o=a[y];o=a[y]={autoInsertedBrackets:0,autoInsertedRow:-1,autoInsertedLineEnd:"",maybeInsertedBrackets:0,maybeInsertedRow:-1,maybeInsertedLineStart:"",maybeInsertedLineEnd:""}},f=function(v,y,$,w){var x=v.end.row-v.start.row;return{text:$+y+w,selection:[0,v.start.column+1,x,v.end.column+(x?0:1)]}},m;m=function(v){v=v||{},this.add("braces","insertion",function(y,$,w,x,b){var _=w.getCursorPosition(),R=x.doc.getLine(_.row);if(b=="{"){c(w);var E=w.getSelectionRange(),L=x.doc.getTextRange(E),M=x.getTokenAt(_.row,_.column);if(L!==""&&L!=="{"&&w.getWrapBehavioursEnabled())return f(E,L,"{","}");if(M&&/(?:string)\.quasi|\.xml/.test(M.type)){var k=[/tag\-(?:open|name)/,/attribute\-name/];return k.some(function(O){return O.test(M.type)})||/(string)\.quasi/.test(M.type)&&M.value[_.column-M.start-1]!=="$"?void 0:(m.recordAutoInsert(w,x,"}"),{text:"{}",selection:[1,1]})}else if(m.isSaneInsertion(w,x))return/[\]\}\)]/.test(R[_.column])||w.inMultiSelectMode||v.braces?(m.recordAutoInsert(w,x,"}"),{text:"{}",selection:[1,1]}):(m.recordMaybeInsert(w,x,"{"),{text:"{",selection:[1,1]})}else if(b=="}"){c(w);var C=R.substring(_.column,_.column+1);if(C=="}"){var S=x.$findOpeningBracket("}",{column:_.column+1,row:_.row});if(S!==null&&m.isAutoInsertedClosing(_,R,b))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}else if(b==` -`||b==`\r -`){c(w);var A="";m.isMaybeInsertedClosing(_,R)&&(A=u.stringRepeat("}",o.maybeInsertedBrackets),m.clearMaybeInsertedClosing());var C=R.substring(_.column,_.column+1);if(C==="}"){var T=x.findMatchingBracket({row:_.row,column:_.column+1},"}");if(!T)return null;var I=this.$getIndent(x.getLine(T.row))}else if(A)var I=this.$getIndent(R);else{m.clearMaybeInsertedClosing();return}var N=I+x.getTabString();return{text:` -`+N+` -`+I+A,selection:[1,N.length,1,N.length]}}else m.clearMaybeInsertedClosing()}),this.add("braces","deletion",function(y,$,w,x,b){var _=x.doc.getTextRange(b);if(!b.isMultiLine()&&_=="{"){c(w);var R=x.doc.getLine(b.start.row),E=R.substring(b.end.column,b.end.column+1);if(E=="}")return b.end.column++,b;o.maybeInsertedBrackets--}}),this.add("parens","insertion",function(y,$,w,x,b){if(b=="("){c(w);var _=w.getSelectionRange(),R=x.doc.getTextRange(_);if(R!==""&&w.getWrapBehavioursEnabled())return f(_,R,"(",")");if(m.isSaneInsertion(w,x))return m.recordAutoInsert(w,x,")"),{text:"()",selection:[1,1]}}else if(b==")"){c(w);var E=w.getCursorPosition(),L=x.doc.getLine(E.row),M=L.substring(E.column,E.column+1);if(M==")"){var k=x.$findOpeningBracket(")",{column:E.column+1,row:E.row});if(k!==null&&m.isAutoInsertedClosing(E,L,b))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("parens","deletion",function(y,$,w,x,b){var _=x.doc.getTextRange(b);if(!b.isMultiLine()&&_=="("){c(w);var R=x.doc.getLine(b.start.row),E=R.substring(b.start.column+1,b.start.column+2);if(E==")")return b.end.column++,b}}),this.add("brackets","insertion",function(y,$,w,x,b){if(b=="["){c(w);var _=w.getSelectionRange(),R=x.doc.getTextRange(_);if(R!==""&&w.getWrapBehavioursEnabled())return f(_,R,"[","]");if(m.isSaneInsertion(w,x))return m.recordAutoInsert(w,x,"]"),{text:"[]",selection:[1,1]}}else if(b=="]"){c(w);var E=w.getCursorPosition(),L=x.doc.getLine(E.row),M=L.substring(E.column,E.column+1);if(M=="]"){var k=x.$findOpeningBracket("]",{column:E.column+1,row:E.row});if(k!==null&&m.isAutoInsertedClosing(E,L,b))return m.popAutoInsertedClosing(),{text:"",selection:[1,1]}}}}),this.add("brackets","deletion",function(y,$,w,x,b){var _=x.doc.getTextRange(b);if(!b.isMultiLine()&&_=="["){c(w);var R=x.doc.getLine(b.start.row),E=R.substring(b.start.column+1,b.start.column+2);if(E=="]")return b.end.column++,b}}),this.add("string_dquotes","insertion",function(y,$,w,x,b){var _=x.$mode.$quotes||l;if(b.length==1&&_[b]){if(this.lineCommentStart&&this.lineCommentStart.indexOf(b)!=-1)return;c(w);var R=b,E=w.getSelectionRange(),L=x.doc.getTextRange(E);if(L!==""&&(L.length!=1||!_[L])&&w.getWrapBehavioursEnabled())return f(E,L,R,R);if(!L){var M=w.getCursorPosition(),k=x.doc.getLine(M.row),C=k.substring(M.column-1,M.column),S=k.substring(M.column,M.column+1),A=x.getTokenAt(M.row,M.column),T=x.getTokenAt(M.row,M.column+1);if(C=="\\"&&A&&/escape/.test(A.type))return null;var I=A&&/string|escape/.test(A.type),N=!T||/string|escape/.test(T.type),O;if(S==R)O=I!==N,O&&/string\.end/.test(T.type)&&(O=!1);else{if(I&&!N||I&&N)return null;var D=x.$mode.tokenRe;D.lastIndex=0;var P=D.test(C);D.lastIndex=0;var B=D.test(S),j=x.$mode.$pairQuotesAfter,F=j&&j[R]&&j[R].test(C);if(!F&&P||B||S&&!/[\s;,.})\]\\]/.test(S))return null;var H=k[M.column-2];if(C==R&&(H==R||D.test(H)))return null;O=!0}return{text:O?R+R:"",selection:[1,1]}}}}),this.add("string_dquotes","deletion",function(y,$,w,x,b){var _=x.$mode.$quotes||l,R=x.doc.getTextRange(b);if(!b.isMultiLine()&&_.hasOwnProperty(R)){c(w);var E=x.doc.getLine(b.start.row),L=E.substring(b.start.column+1,b.start.column+2);if(L==R)return b.end.column++,b}}),v.closeDocComment!==!1&&this.add("doc comment end","insertion",function(y,$,w,x,b){if(y==="doc-start"&&(b===` -`||b===`\r -`)&&w.selection.isEmpty()){var _=w.getCursorPosition();if(_.column===0)return;for(var R=x.doc.getLine(_.row),E=x.doc.getLine(_.row+1),L=x.getTokens(_.row),M=0,k=0;k=_.column){if(M===_.column){if(!/\.doc/.test(C.type))return;if(/\*\//.test(C.value)){var S=L[k+1];if(!S||!/\.doc/.test(S.type))return}}var A=_.column-(M-C.value.length),T=C.value.indexOf("*/"),I=C.value.indexOf("/**",T>-1?T+2:0);if(I!==-1&&A>I&&A=T&&A<=I||!/\.doc/.test(C.type))return;break}}var N=this.$getIndent(R);if(/\s*\*/.test(E))return/^\s*\*/.test(R)?{text:b+N+"* ",selection:[1,2+N.length,1,2+N.length]}:{text:b+N+" * ",selection:[1,3+N.length,1,3+N.length]};if(/\/\*\*/.test(R.substring(0,_.column)))return{text:b+N+" * "+b+" "+N+"*/",selection:[1,4+N.length,1,4+N.length]}}})},m.isSaneInsertion=function(v,y){var $=v.getCursorPosition(),w=new g(y,$.row,$.column);if(!this.$matchTokenType(w.getCurrentToken()||"text",p)){if(/[)}\]]/.test(v.session.getLine($.row)[$.column]))return!0;var x=new g(y,$.row,$.column+1);if(!this.$matchTokenType(x.getCurrentToken()||"text",p))return!1}return w.stepForward(),w.getCurrentTokenRow()!==$.row||this.$matchTokenType(w.getCurrentToken()||"text",s)},m.$matchTokenType=function(v,y){return y.indexOf(v.type||v)>-1},m.recordAutoInsert=function(v,y,$){var w=v.getCursorPosition(),x=y.doc.getLine(w.row);this.isAutoInsertedClosing(w,x,o.autoInsertedLineEnd[0])||(o.autoInsertedBrackets=0),o.autoInsertedRow=w.row,o.autoInsertedLineEnd=$+x.substr(w.column),o.autoInsertedBrackets++},m.recordMaybeInsert=function(v,y,$){var w=v.getCursorPosition(),x=y.doc.getLine(w.row);this.isMaybeInsertedClosing(w,x)||(o.maybeInsertedBrackets=0),o.maybeInsertedRow=w.row,o.maybeInsertedLineStart=x.substr(0,w.column)+$,o.maybeInsertedLineEnd=x.substr(w.column),o.maybeInsertedBrackets++},m.isAutoInsertedClosing=function(v,y,$){return o.autoInsertedBrackets>0&&v.row===o.autoInsertedRow&&$===o.autoInsertedLineEnd[0]&&y.substr(v.column)===o.autoInsertedLineEnd},m.isMaybeInsertedClosing=function(v,y){return o.maybeInsertedBrackets>0&&v.row===o.maybeInsertedRow&&y.substr(v.column)===o.maybeInsertedLineEnd&&y.substr(0,v.column)==o.maybeInsertedLineStart},m.popAutoInsertedClosing=function(){o.autoInsertedLineEnd=o.autoInsertedLineEnd.substr(1),o.autoInsertedBrackets--},m.clearMaybeInsertedClosing=function(){o&&(o.maybeInsertedBrackets=0,o.maybeInsertedRow=-1)},i.inherits(m,d),r.CstyleBehaviour=m}),ace.define("ace/unicode",["require","exports","module"],function(n,r,h){for(var i=[48,9,8,25,5,0,2,25,48,0,11,0,5,0,6,22,2,30,2,457,5,11,15,4,8,0,2,0,18,116,2,1,3,3,9,0,2,2,2,0,2,19,2,82,2,138,2,4,3,155,12,37,3,0,8,38,10,44,2,0,2,1,2,1,2,0,9,26,6,2,30,10,7,61,2,9,5,101,2,7,3,9,2,18,3,0,17,58,3,100,15,53,5,0,6,45,211,57,3,18,2,5,3,11,3,9,2,1,7,6,2,2,2,7,3,1,3,21,2,6,2,0,4,3,3,8,3,1,3,3,9,0,5,1,2,4,3,11,16,2,2,5,5,1,3,21,2,6,2,1,2,1,2,1,3,0,2,4,5,1,3,2,4,0,8,3,2,0,8,15,12,2,2,8,2,2,2,21,2,6,2,1,2,4,3,9,2,2,2,2,3,0,16,3,3,9,18,2,2,7,3,1,3,21,2,6,2,1,2,4,3,8,3,1,3,2,9,1,5,1,2,4,3,9,2,0,17,1,2,5,4,2,2,3,4,1,2,0,2,1,4,1,4,2,4,11,5,4,4,2,2,3,3,0,7,0,15,9,18,2,2,7,2,2,2,22,2,9,2,4,4,7,2,2,2,3,8,1,2,1,7,3,3,9,19,1,2,7,2,2,2,22,2,9,2,4,3,8,2,2,2,3,8,1,8,0,2,3,3,9,19,1,2,7,2,2,2,22,2,15,4,7,2,2,2,3,10,0,9,3,3,9,11,5,3,1,2,17,4,23,2,8,2,0,3,6,4,0,5,5,2,0,2,7,19,1,14,57,6,14,2,9,40,1,2,0,3,1,2,0,3,0,7,3,2,6,2,2,2,0,2,0,3,1,2,12,2,2,3,4,2,0,2,5,3,9,3,1,35,0,24,1,7,9,12,0,2,0,2,0,5,9,2,35,5,19,2,5,5,7,2,35,10,0,58,73,7,77,3,37,11,42,2,0,4,328,2,3,3,6,2,0,2,3,3,40,2,3,3,32,2,3,3,6,2,0,2,3,3,14,2,56,2,3,3,66,5,0,33,15,17,84,13,619,3,16,2,25,6,74,22,12,2,6,12,20,12,19,13,12,2,2,2,1,13,51,3,29,4,0,5,1,3,9,34,2,3,9,7,87,9,42,6,69,11,28,4,11,5,11,11,39,3,4,12,43,5,25,7,10,38,27,5,62,2,28,3,10,7,9,14,0,89,75,5,9,18,8,13,42,4,11,71,55,9,9,4,48,83,2,2,30,14,230,23,280,3,5,3,37,3,5,3,7,2,0,2,0,2,0,2,30,3,52,2,6,2,0,4,2,2,6,4,3,3,5,5,12,6,2,2,6,67,1,20,0,29,0,14,0,17,4,60,12,5,0,4,11,18,0,5,0,3,9,2,0,4,4,7,0,2,0,2,0,2,3,2,10,3,3,6,4,5,0,53,1,2684,46,2,46,2,132,7,6,15,37,11,53,10,0,17,22,10,6,2,6,2,6,2,6,2,6,2,6,2,6,2,6,2,31,48,0,470,1,36,5,2,4,6,1,5,85,3,1,3,2,2,89,2,3,6,40,4,93,18,23,57,15,513,6581,75,20939,53,1164,68,45,3,268,4,27,21,31,3,13,13,1,2,24,9,69,11,1,38,8,3,102,3,1,111,44,25,51,13,68,12,9,7,23,4,0,5,45,3,35,13,28,4,64,15,10,39,54,10,13,3,9,7,22,4,1,5,66,25,2,227,42,2,1,3,9,7,11171,13,22,5,48,8453,301,3,61,3,105,39,6,13,4,6,11,2,12,2,4,2,0,2,1,2,1,2,107,34,362,19,63,3,53,41,11,5,15,17,6,13,1,25,2,33,4,2,134,20,9,8,25,5,0,2,25,12,88,4,5,3,5,3,5,3,2],d=0,g=[],u=0;u2?B%b!=b-1:B%b==0}}else{if(!this.blockComment)return!1;var E=this.blockComment.start,A=this.blockComment.end,R=new RegExp("^(\\s*)(?:"+s.escapeRegExp(E)+")"),T=new RegExp("(?:"+s.escapeRegExp(A)+")\\s*$"),k=function(F,H){C(F,H)||(!$||/\S/.test(F))&&(y.insertInLine({row:H,column:F.length},A),y.insertInLine({row:H,column:x},E))},L=function(F,H){var G;(G=F.match(T))&&y.removeInLine(H,F.length-G[0].length,F.length),(G=F.match(R))&&y.removeInLine(H,G[1].length,G[0].length)},C=function(F,H){if(R.test(F))return!0;for(var G=f.getTokens(H),Q=0;QO.length&&(N=O.length)}),x==1/0&&(x=N,$=!1,w=!1),_&&x%b!=0&&(x=Math.floor(x/b)*b),I(w?L:k)},this.toggleBlockComment=function(c,f,m,v){var y=this.blockComment;if(y){!y.start&&y[0]&&(y=y[0]);var $=new o(f,v.row,v.column),w=$.getCurrentToken();f.selection;var x=f.selection.toOrientedRange(),b,_;if(w&&/comment/.test(w.type)){for(var R,E;w&&/comment/.test(w.type);){var L=w.value.indexOf(y.start);if(L!=-1){var M=$.getCurrentTokenRow(),k=$.getCurrentTokenColumn()+L;R=new a(M,k,M,k+y.start.length);break}w=$.stepBackward()}for(var $=new o(f,v.row,v.column),w=$.getCurrentToken();w&&/comment/.test(w.type);){var L=w.value.indexOf(y.end);if(L!=-1){var M=$.getCurrentTokenRow(),k=$.getCurrentTokenColumn()+L;E=new a(M,k,M,k+y.end.length);break}w=$.stepForward()}E&&f.remove(E),R&&(f.remove(R),b=R.start.row,_=-y.start.length)}else _=y.start.length,b=m.start.row,f.insert(m.end,y.end),f.insert(m.start,y.start);x.start.row==b&&(x.start.column+=_),x.end.row==b&&(x.end.column+=_),f.selection.fromOrientedRange(x)}},this.getNextLineIndent=function(c,f,m){return this.$getIndent(f)},this.checkOutdent=function(c,f,m){return!1},this.autoOutdent=function(c,f,m){},this.$getIndent=function(c){return c.match(/^\s*/)[0]},this.createWorker=function(c){return null},this.createModeDelegates=function(c){this.$embeds=[],this.$modes={};for(var f in c)if(c[f]){var m=c[f],v=m.prototype.$id,y=i.$modes[v];y||(i.$modes[v]=y=new m),i.$modes[f]||(i.$modes[f]=y),this.$embeds.push(f),this.$modes[f]=y}for(var $=["toggleBlockComment","toggleCommentLines","getNextLineIndent","checkOutdent","autoOutdent","transformAction","getCompletions"],w=function(_){(function(R){var E=$[_],L=R[E];R[$[_]]=function(){return this.$delegator(E,arguments,L)}})(x)},x=this,f=0;f<$.length;f++)w(f)},this.$delegator=function(c,f,m){var v=f[0]||"start";if(typeof v!="string"){if(Array.isArray(v[2])){var y=v[2][v[2].length-1],$=this.$modes[y];if($)return $[c].apply($,[v[1]].concat([].slice.call(f,1)))}v=v[0]||"start"}for(var w=0;wthis.row)){var a=p(o,{row:this.row,column:this.column},this.$insertRight);this.setPosition(a.row,a.column,!0)}},s.prototype.setPosition=function(o,a,l){var c;if(l?c={row:o,column:a}:c=this.$clipPositionToDocument(o,a),!(this.row==c.row&&this.column==c.column)){var f={row:this.row,column:this.column};this.row=c.row,this.column=c.column,this._signal("change",{old:f,value:c})}},s.prototype.detach=function(){this.document.off("change",this.$onChange)},s.prototype.attach=function(o){this.document=o||this.document,this.document.on("change",this.$onChange)},s.prototype.$clipPositionToDocument=function(o,a){var l={};return o>=this.document.getLength()?(l.row=Math.max(0,this.document.getLength()-1),l.column=this.document.getLine(l.row).length):o<0?(l.row=0,l.column=0):(l.row=o,l.column=Math.min(this.document.getLine(l.row).length,Math.max(0,a))),a<0&&(l.column=0),l},s}();g.prototype.$insertRight=!1,i.implement(g.prototype,d);function u(s,o,a){var l=a?s.column<=o.column:s.column=c&&(a=c-1,l=void 0);var f=this.getLine(a);return l==null&&(l=f.length),l=Math.min(Math.max(l,0),f.length),{row:a,column:l}},o.prototype.clonePos=function(a){return{row:a.row,column:a.column}},o.prototype.pos=function(a,l){return{row:a,column:l}},o.prototype.$clipPosition=function(a){var l=this.getLength();return a.row>=l?(a.row=Math.max(0,l-1),a.column=this.getLine(l-1).length):(a.row=Math.max(0,a.row),a.column=Math.min(Math.max(a.column,0),this.getLine(a.row).length)),a},o.prototype.insertFullLines=function(a,l){a=Math.min(Math.max(a,0),this.getLength());var c=0;a0,f=l=0&&this.applyDelta({start:this.pos(a,this.getLine(a).length),end:this.pos(a+1,0),action:"remove",lines:["",""]})},o.prototype.replace=function(a,l){if(a instanceof u||(a=u.fromPoints(a.start,a.end)),l.length===0&&a.isEmpty())return a.start;if(l==this.getTextRange(a))return a.end;this.remove(a);var c;return l?c=this.insert(a.start,l):c=a.start,c},o.prototype.applyDeltas=function(a){for(var l=0;l=0;l--)this.revertDelta(a[l])},o.prototype.applyDelta=function(a,l){var c=a.action=="insert";(c?a.lines.length<=1&&!a.lines[0]:!u.comparePoints(a.start,a.end))||(c&&a.lines.length>2e4?this.$splitAndapplyLargeDelta(a,2e4):(d(this.$lines,a,l),this._signal("change",a)))},o.prototype.$safeApplyDelta=function(a){var l=this.$lines.length;(a.action=="remove"&&a.start.row20){o.running=setTimeout(o.$worker,20);break}}o.currentLine=l,c==-1&&(c=l),m<=c&&o.fireUpdateEvent(m,c)}}}return u.prototype.setTokenizer=function(p){this.tokenizer=p,this.lines=[],this.states=[],this.start(0)},u.prototype.setDocument=function(p){this.doc=p,this.lines=[],this.states=[],this.stop()},u.prototype.fireUpdateEvent=function(p,s){var o={first:p,last:s};this._signal("update",{data:o})},u.prototype.start=function(p){this.currentLine=Math.min(p||0,this.currentLine,this.doc.getLength()),this.lines.splice(this.currentLine,this.lines.length),this.states.splice(this.currentLine,this.states.length),this.stop(),this.running=setTimeout(this.$worker,700)},u.prototype.scheduleStart=function(){this.running||(this.running=setTimeout(this.$worker,700))},u.prototype.$updateOnChange=function(p){var s=p.start.row,o=p.end.row-s;if(o===0)this.lines[s]=null;else if(p.action=="remove")this.lines.splice(s,o+1,null),this.states.splice(s,o+1,null);else{var a=Array(o+1);a.unshift(s,1),this.lines.splice.apply(this.lines,a),this.states.splice.apply(this.states,a)}this.currentLine=Math.min(s,this.currentLine,this.doc.getLength()),this.stop()},u.prototype.stop=function(){this.running&&clearTimeout(this.running),this.running=!1},u.prototype.getTokens=function(p){return this.lines[p]||this.$tokenizeRow(p)},u.prototype.getState=function(p){return this.currentLine==p&&this.$tokenizeRow(p),this.states[p]||"start"},u.prototype.$tokenizeRow=function(p){var s=this.doc.getLine(p),o=this.states[p-1],a=this.tokenizer.getLineTokens(s,o,p);return this.states[p]+""!=a.state+""?(this.states[p]=a.state,this.lines[p+1]=null,this.currentLine>p+1&&(this.currentLine=p+1)):this.currentLine==p&&(this.currentLine=p+1),this.lines[p]=a.tokens},u.prototype.cleanup=function(){this.running=!1,this.lines=[],this.states=[],this.currentLine=0,this.removeAllListeners()},u}();i.implement(g.prototype,d),r.BackgroundTokenizer=g}),ace.define("ace/search_highlight",["require","exports","module","ace/lib/lang","ace/range"],function(n,r,h){var i=n("./lib/lang"),d=n("./range").Range,g=function(){function u(p,s,o){o===void 0&&(o="text"),this.setRegexp(p),this.clazz=s,this.type=o}return u.prototype.setRegexp=function(p){this.regExp+""!=p+""&&(this.regExp=p,this.cache=[])},u.prototype.update=function(p,s,o,a){if(this.regExp)for(var l=a.firstRow,c=a.lastRow,f={},m=l;m<=c;m++){var v=this.cache[m];v==null&&(v=i.getMatchOffsets(o.getLine(m),this.regExp),v.length>this.MAX_RANGES&&(v=v.slice(0,this.MAX_RANGES)),v=v.map(function(x){return new d(m,x.offset,m,x.offset+x.length)}),this.cache[m]=v.length?v:"");for(var y=v.length;y--;){var $=v[y].toScreenRange(o),w=$.toString();f[w]||(f[w]=!0,s.drawSingleLineMarker(p,$,this.clazz,a))}}},u}();g.prototype.MAX_RANGES=500,r.SearchHighlight=g}),ace.define("ace/undomanager",["require","exports","module","ace/range"],function(n,r,h){var i=function(){function x(){this.$keepRedoStack,this.$maxRev=0,this.$fromUndo=!1,this.$undoDepth=1/0,this.reset()}return x.prototype.addSession=function(b){this.$session=b},x.prototype.add=function(b,_,R){if(!this.$fromUndo&&b!=this.$lastDelta){if(this.$keepRedoStack||(this.$redoStack.length=0),_===!1||!this.lastDeltas){this.lastDeltas=[];var E=this.$undoStack.length;E>this.$undoDepth-1&&this.$undoStack.splice(0,E-this.$undoDepth+1),this.$undoStack.push(this.lastDeltas),b.id=this.$rev=++this.$maxRev}(b.action=="remove"||b.action=="insert")&&(this.$lastDelta=b),this.lastDeltas.push(b)}},x.prototype.addSelection=function(b,_){this.selections.push({value:b,rev:_||this.$rev})},x.prototype.startNewGroup=function(){return this.lastDeltas=null,this.$rev},x.prototype.markIgnored=function(b,_){_==null&&(_=this.$rev+1);for(var R=this.$undoStack,E=R.length;E--;){var L=R[E][0];if(L.id<=b)break;L.id<_&&(L.ignore=!0)}this.lastDeltas=null},x.prototype.getSelection=function(b,_){for(var R=this.selections,E=R.length;E--;){var L=R[E];if(L.rev0},x.prototype.canRedo=function(){return this.$redoStack.length>0},x.prototype.bookmark=function(b){b==null&&(b=this.$rev),this.mark=b},x.prototype.isAtBookmark=function(){return this.$rev===this.mark},x.prototype.toJSON=function(){return{$redoStack:this.$redoStack,$undoStack:this.$undoStack}},x.prototype.fromJSON=function(b){this.reset(),this.$undoStack=b.$undoStack,this.$redoStack=b.$redoStack},x.prototype.$prettyPrint=function(b){return b?o(b):o(this.$undoStack)+` ---- -`+o(this.$redoStack)},x}();i.prototype.hasUndo=i.prototype.canUndo,i.prototype.hasRedo=i.prototype.canRedo,i.prototype.isClean=i.prototype.isAtBookmark,i.prototype.markClean=i.prototype.bookmark;function d(x,b){for(var _=b;_--;){var R=x[_];if(R&&!R[0].ignore){for(;_"+x.end.row+":"+x.end.column}function l(x,b){var _=x.action=="insert",R=b.action=="insert";if(_&&R)if(u(b.start,x.end)>=0)m(b,x,-1);else if(u(b.start,x.start)<=0)m(x,b,1);else return null;else if(_&&!R)if(u(b.start,x.end)>=0)m(b,x,-1);else if(u(b.end,x.start)<=0)m(x,b,-1);else return null;else if(!_&&R)if(u(b.start,x.start)>=0)m(b,x,1);else if(u(b.start,x.start)<=0)m(x,b,1);else return null;else if(!_&&!R)if(u(b.start,x.start)>=0)m(b,x,1);else if(u(b.end,x.start)<=0)m(x,b,-1);else return null;return[b,x]}function c(x,b){for(var _=x.length;_--;)for(var R=0;R=0?m(x,b,-1):(u(x.start,b.start)<=0||m(x,g.fromPoints(b.start,x.start),-1),m(b,x,1));else if(!_&&R)u(b.start,x.end)>=0?m(b,x,-1):(u(b.start,x.start)<=0||m(b,g.fromPoints(x.start,b.start),-1),m(x,b,1));else if(!_&&!R)if(u(b.start,x.end)>=0)m(b,x,-1);else if(u(b.end,x.start)<=0)m(x,b,-1);else{var E,L;return u(x.start,b.start)<0&&(E=x,x=y(x,b.start)),u(x.end,b.end)>0&&(L=y(x,b.end)),v(b.end,x.start,x.end,-1),L&&!E&&(x.lines=L.lines,x.start=L.start,x.end=L.end,L=x),[b,E,L].filter(Boolean)}return[b,x]}function m(x,b,_){v(x.start,b.start,b.end,_),v(x.end,b.start,b.end,_)}function v(x,b,_,R){x.row==(R==1?b:_).row&&(x.column+=R*(_.column-b.column)),x.row+=R*(_.row-b.row)}function y(x,b){var _=x.lines,R=x.end;x.end=p(b);var E=x.end.row-x.start.row,L=_.splice(E,_.length),M=E?b.column:b.column-x.start.column;_.push(L[0].substring(0,M)),L[0]=L[0].substr(M);var k={start:p(b),end:R,lines:L,action:x.action};return k}function $(x,b){b=s(b);for(var _=x.length;_--;){for(var R=x[_],E=0;Ethis.endRow)throw new Error("Can't add a fold to this FoldLine as it has no connection");this.folds.push(u),this.folds.sort(function(p,s){return-p.range.compareEnd(s.start.row,s.start.column)}),this.range.compareEnd(u.start.row,u.start.column)>0?(this.end.row=u.end.row,this.end.column=u.end.column):this.range.compareStart(u.end.row,u.end.column)<0&&(this.start.row=u.start.row,this.start.column=u.start.column)}else if(u.start.row==this.end.row)this.folds.push(u),this.end.row=u.end.row,this.end.column=u.end.column;else if(u.end.row==this.start.row)this.folds.unshift(u),this.start.row=u.start.row,this.start.column=u.start.column;else throw new Error("Trying to add fold to FoldRow that doesn't have a matching row");u.foldLine=this},g.prototype.containsRow=function(u){return u>=this.start.row&&u<=this.end.row},g.prototype.walk=function(u,p,s){var o=0,a=this.folds,l,c,f,m=!0;p==null&&(p=this.end.row,s=this.end.column);for(var v=0;v0)){var m=d(p,c.start);return f===0?s&&m!==0?-l-2:l:m>0||m===0&&!s?l:-l-1}}return-l-1},u.prototype.add=function(p){var s=!p.isEmpty(),o=this.pointIndex(p.start,s);o<0&&(o=-o-1);var a=this.pointIndex(p.end,s,o);return a<0?a=-a-1:a++,this.ranges.splice(o,a-o,p)},u.prototype.addList=function(p){for(var s=[],o=p.length;o--;)s.push.apply(s,this.add(p[o]));return s},u.prototype.substractPoint=function(p){var s=this.pointIndex(p);if(s>=0)return this.ranges.splice(s,1)},u.prototype.merge=function(){var p=[],s=this.ranges;s=s.sort(function(f,m){return d(f.start,m.start)});for(var o=s[0],a,l=1;l=0},u.prototype.containsPoint=function(p){return this.pointIndex(p)>=0},u.prototype.rangeAtPoint=function(p){var s=this.pointIndex(p);if(s>=0)return this.ranges[s]},u.prototype.clipRows=function(p,s){var o=this.ranges;if(o[0].start.row>s||o[o.length-1].start.row=a)break}if(p.action=="insert")for(var y=l-a,$=-s.column+o.column;fa)break;if(v.start.row==a&&v.start.column>=s.column&&(v.start.column==s.column&&this.$bias<=0||(v.start.column+=$,v.start.row+=y)),v.end.row==a&&v.end.column>=s.column){if(v.end.column==s.column&&this.$bias<0)continue;v.end.column==s.column&&$>0&&fv.start.column&&v.end.column==c[f+1].start.column&&(v.end.column-=$),v.end.column+=$,v.end.row+=y}}else for(var y=a-l,$=s.column-o.column;fl)break;v.end.rows.column)&&(v.end.column=s.column,v.end.row=s.row):(v.end.column+=$,v.end.row+=y):v.end.row>l&&(v.end.row+=y),v.start.rows.column)&&(v.start.column=s.column,v.start.row=s.row):(v.start.column+=$,v.start.row+=y):v.start.row>l&&(v.start.row+=y)}if(y!=0&&f=o)return f;if(f.end.row>o)return null}return null},this.getNextFoldLine=function(o,a){var l=this.$foldData,c=0;for(a&&(c=l.indexOf(a)),c==-1&&(c=0),c;c=o)return f}return null},this.getFoldedRowCount=function(o,a){for(var l=this.$foldData,c=a-o+1,f=0;f=a){y=o?c-=a-y:c=0);break}else v>=o&&(y>=o?c-=v-y:c-=v-o+1)}return c},this.$addFoldLine=function(o){return this.$foldData.push(o),this.$foldData.sort(function(a,l){return a.start.row-l.start.row}),o},this.addFold=function(o,a){var l=this.$foldData,c=!1,f;o instanceof g?f=o:(f=new g(a,o),f.collapseChildren=a.collapseChildren),this.$clipRangeToDocument(f.range);var m=f.start.row,v=f.start.column,y=f.end.row,$=f.end.column,w=this.getFoldAt(m,v,1),x=this.getFoldAt(y,$,-1);if(w&&x==w)return w.addSubFold(f);w&&!w.range.isStart(m,v)&&this.removeFold(w),x&&!x.range.isEnd(y,$)&&this.removeFold(x);var b=this.getFoldsInRange(f.range);b.length>0&&(this.removeFolds(b),f.collapseChildren||b.forEach(function(L){f.addSubFold(L)}));for(var _=0;_0&&this.foldAll(o.start.row+1,o.end.row,o.collapseChildren-1),o.subFolds=[]},this.expandFolds=function(o){o.forEach(function(a){this.expandFold(a)},this)},this.unfold=function(o,a){var l,c;if(o==null)l=new i(0,0,this.getLength(),0),a==null&&(a=!0);else if(typeof o=="number")l=new i(o,0,o,this.getLine(o).length);else if("row"in o)l=i.fromPoints(o,o);else{if(Array.isArray(o))return c=[],o.forEach(function(m){c=c.concat(this.unfold(m))},this),c;l=o}c=this.getFoldsInRangeList(l);for(var f=c;c.length==1&&i.comparePoints(c[0].start,l.start)<0&&i.comparePoints(c[0].end,l.end)>0;)this.expandFolds(c),c=this.getFoldsInRangeList(l);if(a!=!1?this.removeFolds(c):this.expandFolds(c),f.length)return f},this.isRowFolded=function(o,a){return!!this.getFoldLine(o,a)},this.getRowFoldEnd=function(o,a){var l=this.getFoldLine(o,a);return l?l.end.row:o},this.getRowFoldStart=function(o,a){var l=this.getFoldLine(o,a);return l?l.start.row:o},this.getFoldDisplayLine=function(o,a,l,c,f){c==null&&(c=o.start.row),f==null&&(f=0),a==null&&(a=o.end.row),l==null&&(l=this.getLine(a).length);var m=this.doc,v="";return o.walk(function(y,$,w,x){if(!($w)break;while(f&&v.test(f.type));f=c.stepBackward()}else f=c.getCurrentToken();return y.end.row=c.getCurrentTokenRow(),y.end.column=c.getCurrentTokenColumn(),y}},this.foldAll=function(o,a,l,c){l==null&&(l=1e5);var f=this.foldWidgets;if(f){a=a||this.getLength(),o=o||0;for(var m=o;m=o&&(m=v.end.row,v.collapseChildren=l,this.addFold("...",v))}}},this.foldToLevel=function(o){for(this.foldAll();o-- >0;)this.unfold(null,!1)},this.foldAllComments=function(){var o=this;this.foldAll(null,null,null,function(a){for(var l=o.getTokens(a),c=0;c=0;){var m=l[c];if(m==null&&(m=l[c]=this.getFoldWidget(c)),m=="start"){var v=this.getFoldWidgetRange(c);if(f||(f=v),v&&v.end.row>=o)break}c--}return{range:c!==-1&&v,firstRange:f}},this.onFoldWidgetClick=function(o,a){a instanceof p&&(a=a.domEvent);var l={children:a.shiftKey,all:a.ctrlKey||a.metaKey,siblings:a.altKey},c=this.$toggleFoldWidget(o,l);if(!c){var f=a.target||a.srcElement;f&&/ace_fold-widget/.test(f.className)&&(f.className+=" ace_invalid")}},this.$toggleFoldWidget=function(o,a){if(this.getFoldWidget){var l=this.getFoldWidget(o),c=this.getLine(o),f=l==="end"?-1:1,m=this.getFoldAt(o,f===-1?0:c.length,f);if(m)return a.children||a.all?this.removeFold(m):this.expandFold(m),m;var v=this.getFoldWidgetRange(o,!0);if(v&&!v.isMultiLine()&&(m=this.getFoldAt(v.start.row,v.start.column,1),m&&v.isEqual(m.range)))return this.removeFold(m),m;if(a.siblings){var y=this.getParentFoldRangeData(o);if(y.range)var $=y.range.start.row+1,w=y.range.end.row;this.foldAll($,w,a.all?1e4:0)}else a.children?(w=v?v.end.row:this.getLength(),this.foldAll(o+1,w,a.all?1e4:0)):v&&(a.all&&(v.collapseChildren=1e4),this.addFold("...",v));return v}},this.toggleFoldWidget=function(o){var a=this.selection.getCursor().row;a=this.getRowFoldStart(a);var l=this.$toggleFoldWidget(a,{});if(!l){var c=this.getParentFoldRangeData(a,!0);if(l=c.range||c.firstRange,l){a=l.start.row;var f=this.getFoldAt(a,this.getLine(a).length,1);f?this.removeFold(f):this.addFold("...",l)}}},this.updateFoldWidgets=function(o){var a=o.start.row,l=o.end.row-a;if(l===0)this.foldWidgets[a]=null;else if(o.action=="remove")this.foldWidgets.splice(a,l+1,null);else{var c=Array(l+1);c.unshift(a,1),this.foldWidgets.splice.apply(this.foldWidgets,c)}},this.tokenizerUpdateFoldWidgets=function(o){var a=o.data;a.first!=a.last&&this.foldWidgets.length>a.first&&this.foldWidgets.splice(a.first,this.foldWidgets.length)}}r.Folding=s}),ace.define("ace/edit_session/bracket_match",["require","exports","module","ace/token_iterator","ace/range"],function(n,r,h){var i=n("../token_iterator").TokenIterator,d=n("../range").Range;function g(){this.findMatchingBracket=function(u,p){if(u.column==0)return null;var s=p||this.getLine(u.row).charAt(u.column-1);if(s=="")return null;var o=s.match(/([\(\[\{])|([\)\]\}])/);return o?o[1]?this.$findClosingBracket(o[1],u):this.$findOpeningBracket(o[2],u):null},this.getBracketRange=function(u){var p=this.getLine(u.row),s=!0,o,a=p.charAt(u.column-1),l=a&&a.match(/([\(\[\{])|([\)\]\}])/);if(l||(a=p.charAt(u.column),u={row:u.row,column:u.column+1},l=a&&a.match(/([\(\[\{])|([\)\]\}])/),s=!1),!l)return null;if(l[1]){var c=this.$findClosingBracket(l[1],u);if(!c)return null;o=d.fromPoints(u,c),s||(o.end.column++,o.start.column--),o.cursor=o.end}else{var c=this.$findOpeningBracket(l[2],u);if(!c)return null;o=d.fromPoints(c,u),s||(o.start.column++,o.end.column--),o.cursor=o.start}return o},this.getMatchingBracketRanges=function(u,p){var s=this.getLine(u.row),o=/([\(\[\{])|([\)\]\}])/,a=!p&&s.charAt(u.column-1),l=a&&a.match(o);if(l||(a=(p===void 0||p)&&s.charAt(u.column),u={row:u.row,column:u.column+1},l=a&&a.match(o)),!l)return null;var c=new d(u.row,u.column-1,u.row,u.column),f=l[1]?this.$findClosingBracket(l[1],u):this.$findOpeningBracket(l[2],u);if(!f)return[c];var m=new d(f.row,f.column,f.row,f.column+1);return[c,m]},this.$brackets={")":"(","(":")","]":"[","[":"]","{":"}","}":"{","<":">",">":"<"},this.$findOpeningBracket=function(u,p,s){var o=this.$brackets[u],a=1,l=new i(this,p.row,p.column),c=l.getCurrentToken();if(c||(c=l.stepForward()),!!c){s||(s=new RegExp("(\\.?"+c.type.replace(".","\\.").replace("rparen",".paren").replace(/\b(?:end)\b/,"(?:start|begin|end)").replace(/-close\b/,"-(close|open)")+")+"));for(var f=p.column-l.getCurrentTokenColumn()-2,m=c.value;;){for(;f>=0;){var v=m.charAt(f);if(v==o){if(a-=1,a==0)return{row:l.getCurrentTokenRow(),column:f+l.getCurrentTokenColumn()}}else v==u&&(a+=1);f-=1}do c=l.stepBackward();while(c&&!s.test(c.type));if(c==null)break;m=c.value,f=m.length-1}return null}},this.$findClosingBracket=function(u,p,s){var o=this.$brackets[u],a=1,l=new i(this,p.row,p.column),c=l.getCurrentToken();if(c||(c=l.stepForward()),!!c){s||(s=new RegExp("(\\.?"+c.type.replace(".","\\.").replace("lparen",".paren").replace(/\b(?:start|begin)\b/,"(?:start|begin|end)").replace(/-open\b/,"-(close|open)")+")+"));for(var f=p.column-l.getCurrentTokenColumn();;){for(var m=c.value,v=m.length;f"?o=!0:p.type.indexOf("tag-name")!==-1&&(s=!0));while(p&&!s);return p},this.$findClosingTag=function(u,p){var s,o=p.value,a=p.value,l=0,c=new d(u.getCurrentTokenRow(),u.getCurrentTokenColumn(),u.getCurrentTokenRow(),u.getCurrentTokenColumn()+1);p=u.stepForward();var f=new d(u.getCurrentTokenRow(),u.getCurrentTokenColumn(),u.getCurrentTokenRow(),u.getCurrentTokenColumn()+p.value.length),m=!1;do{if(s=p,s.type.indexOf("tag-close")!==-1&&!m){var v=new d(u.getCurrentTokenRow(),u.getCurrentTokenColumn(),u.getCurrentTokenRow(),u.getCurrentTokenColumn()+1);m=!0}if(p=u.stepForward(),p){if(p.value===">"&&!m){var v=new d(u.getCurrentTokenRow(),u.getCurrentTokenColumn(),u.getCurrentTokenRow(),u.getCurrentTokenColumn()+1);m=!0}if(p.type.indexOf("tag-name")!==-1){if(o=p.value,a===o){if(s.value==="<")l++;else if(s.value==="")var w=new d(u.getCurrentTokenRow(),u.getCurrentTokenColumn(),u.getCurrentTokenRow(),u.getCurrentTokenColumn()+1);else return}}}else if(a===o&&p.value==="/>"&&(l--,l<0))var y=new d(u.getCurrentTokenRow(),u.getCurrentTokenColumn(),u.getCurrentTokenRow(),u.getCurrentTokenColumn()+2),$=y,w=$,v=new d(f.end.row,f.end.column,f.end.row,f.end.column+1)}}while(p&&l>=0);if(c&&v&&y&&w&&f&&$)return{openTag:new d(c.start.row,c.start.column,v.end.row,v.end.column),closeTag:new d(y.start.row,y.start.column,w.end.row,w.end.column),openTagName:f,closeTagName:$}},this.$findOpeningTag=function(u,p){var s=u.getCurrentToken(),o=p.value,a=0,l=u.getCurrentTokenRow(),c=u.getCurrentTokenColumn(),f=c+2,m=new d(l,c,l,f);u.stepForward();var v=new d(u.getCurrentTokenRow(),u.getCurrentTokenColumn(),u.getCurrentTokenRow(),u.getCurrentTokenColumn()+p.value.length);if(p.type.indexOf("tag-close")===-1&&(p=u.stepForward()),!(!p||p.value!==">")){var y=new d(u.getCurrentTokenRow(),u.getCurrentTokenColumn(),u.getCurrentTokenRow(),u.getCurrentTokenColumn()+1);u.stepBackward(),u.stepBackward();do if(p=s,l=u.getCurrentTokenRow(),c=u.getCurrentTokenColumn(),f=c+p.value.length,s=u.stepBackward(),p){if(p.type.indexOf("tag-name")!==-1){if(o===p.value)if(s.value==="<"){if(a++,a>0){var $=new d(l,c,l,f),w=new d(u.getCurrentTokenRow(),u.getCurrentTokenColumn(),u.getCurrentTokenRow(),u.getCurrentTokenColumn()+1);do p=u.stepForward();while(p&&p.value!==">");var x=new d(u.getCurrentTokenRow(),u.getCurrentTokenColumn(),u.getCurrentTokenRow(),u.getCurrentTokenColumn()+1)}}else s.value===""){for(var b=0,_=s;_;){if(_.type.indexOf("tag-name")!==-1&&_.value===o){a--;break}else if(_.value==="<")break;_=u.stepBackward(),b++}for(var R=0;RS&&(this.$docRowCache.splice(S,C),this.$screenRowCache.splice(S,C))},M.prototype.$getRowCacheIndex=function(k,C){for(var S=0,A=k.length-1;S<=A;){var T=S+A>>1,I=k[T];if(C>I)S=T+1;else if(C=C));I++);return A=S[I],A?(A.index=I,A.start=T-A.value.length,A):null},M.prototype.setUndoManager=function(k){if(this.$undoManager=k,this.$informUndoManager&&this.$informUndoManager.cancel(),k){var C=this;k.addSession(this),this.$syncInformUndoManager=function(){C.$informUndoManager.cancel(),C.mergeUndoDeltas=!1},this.$informUndoManager=d.delayedCall(this.$syncInformUndoManager)}else this.$syncInformUndoManager=function(){}},M.prototype.markUndoGroup=function(){this.$syncInformUndoManager&&this.$syncInformUndoManager()},M.prototype.getUndoManager=function(){return this.$undoManager||this.$defaultUndoManager},M.prototype.getTabString=function(){return this.getUseSoftTabs()?d.stringRepeat(" ",this.getTabSize()):" "},M.prototype.setUseSoftTabs=function(k){this.setOption("useSoftTabs",k)},M.prototype.getUseSoftTabs=function(){return this.$useSoftTabs&&!this.$mode.$indentWithTabs},M.prototype.setTabSize=function(k){this.setOption("tabSize",k)},M.prototype.getTabSize=function(){return this.$tabSize},M.prototype.isTabStop=function(k){return this.$useSoftTabs&&k.column%this.$tabSize===0},M.prototype.setNavigateWithinSoftTabs=function(k){this.setOption("navigateWithinSoftTabs",k)},M.prototype.getNavigateWithinSoftTabs=function(){return this.$navigateWithinSoftTabs},M.prototype.setOverwrite=function(k){this.setOption("overwrite",k)},M.prototype.getOverwrite=function(){return this.$overwrite},M.prototype.toggleOverwrite=function(){this.setOverwrite(!this.$overwrite)},M.prototype.addGutterDecoration=function(k,C){this.$decorations[k]||(this.$decorations[k]=""),this.$decorations[k]+=" "+C,this._signal("changeBreakpoint",{})},M.prototype.removeGutterDecoration=function(k,C){this.$decorations[k]=(this.$decorations[k]||"").replace(" "+C,""),this._signal("changeBreakpoint",{})},M.prototype.getBreakpoints=function(){return this.$breakpoints},M.prototype.setBreakpoints=function(k){this.$breakpoints=[];for(var C=0;C0&&(A=!!S.charAt(C-1).match(this.tokenRe)),A||(A=!!S.charAt(C).match(this.tokenRe)),A)var T=this.tokenRe;else if(/^\s+$/.test(S.slice(C-1,C+1)))var T=/\s/;else var T=this.nonTokenRe;var I=C;if(I>0){do I--;while(I>=0&&S.charAt(I).match(T));I++}for(var N=C;Nk&&(k=C.screenWidth)}),this.lineWidgetWidth=k},M.prototype.$computeWidth=function(k){if(this.$modified||k){if(this.$modified=!1,this.$useWrapMode)return this.screenWidth=this.$wrapLimit;for(var C=this.doc.getAllLines(),S=this.$rowLengthCache,A=0,T=0,I=this.$foldData[T],N=I?I.start.row:1/0,O=C.length,D=0;DN){if(D=I.end.row+1,D>=O)break;I=this.$foldData[T++],N=I?I.start.row:1/0}S[D]==null&&(S[D]=this.$getStringScreenWidth(C[D])[0]),S[D]>A&&(A=S[D])}this.screenWidth=A}},M.prototype.getLine=function(k){return this.doc.getLine(k)},M.prototype.getLines=function(k,C){return this.doc.getLines(k,C)},M.prototype.getLength=function(){return this.doc.getLength()},M.prototype.getTextRange=function(k){return this.doc.getTextRange(k||this.selection.getRange())},M.prototype.insert=function(k,C){return this.doc.insert(k,C)},M.prototype.remove=function(k){return this.doc.remove(k)},M.prototype.removeFullLines=function(k,C){return this.doc.removeFullLines(k,C)},M.prototype.undoChanges=function(k,C){if(k.length){this.$fromUndo=!0;for(var S=k.length-1;S!=-1;S--){var A=k[S];A.action=="insert"||A.action=="remove"?this.doc.revertDelta(A):A.folds&&this.addFolds(A.folds)}!C&&this.$undoSelect&&(k.selectionBefore?this.selection.fromJSON(k.selectionBefore):this.selection.setRange(this.$getUndoSelection(k,!0))),this.$fromUndo=!1}},M.prototype.redoChanges=function(k,C){if(k.length){this.$fromUndo=!0;for(var S=0;Sk.end.column&&(I.start.column+=O),I.end.row==k.end.row&&I.end.column>k.end.column&&(I.end.column+=O)),N&&I.start.row>=k.end.row&&(I.start.row+=N,I.end.row+=N)}if(I.end=this.insert(I.start,A),T.length){var D=k.start,P=I.start,N=P.row-D.row,O=P.column-D.column;this.addFolds(T.map(function(F){return F=F.clone(),F.start.row==D.row&&(F.start.column+=O),F.end.row==D.row&&(F.end.column+=O),F.start.row+=N,F.end.row+=N,F}))}return I},M.prototype.indentRows=function(k,C,S){S=S.replace(/\t/g,this.getTabString());for(var A=k;A<=C;A++)this.doc.insertInLine({row:A,column:0},S)},M.prototype.outdentRows=function(k){for(var C=k.collapseRows(),S=new a(0,0,0,0),A=this.getTabSize(),T=C.start.row;T<=C.end.row;++T){var I=this.getLine(T);S.start.row=T,S.end.row=T;for(var N=0;N0){var A=this.getRowFoldEnd(C+S);if(A>this.doc.getLength()-1)return 0;var T=A-C}else{k=this.$clipRowToDocument(k),C=this.$clipRowToDocument(C);var T=C-k+1}var I=new a(k,0,C,Number.MAX_VALUE),N=this.getFoldsInRange(I).map(function(D){return D=D.clone(),D.start.row+=T,D.end.row+=T,D}),O=S==0?this.doc.getLines(k,C):this.doc.removeFullLines(k,C);return this.doc.insertFullLines(k+T,O),N.length&&this.addFolds(N),T},M.prototype.moveLinesUp=function(k,C){return this.$moveLines(k,C,-1)},M.prototype.moveLinesDown=function(k,C){return this.$moveLines(k,C,1)},M.prototype.duplicateLines=function(k,C){return this.$moveLines(k,C,0)},M.prototype.$clipRowToDocument=function(k){return Math.max(0,Math.min(k,this.doc.getLength()-1))},M.prototype.$clipColumnToRow=function(k,C){return C<0?0:Math.min(this.doc.getLine(k).length,C)},M.prototype.$clipPositionToDocument=function(k,C){if(C=Math.max(0,C),k<0)k=0,C=0;else{var S=this.doc.getLength();k>=S?(k=S-1,C=this.doc.getLine(S-1).length):C=Math.min(this.doc.getLine(k).length,C)}return{row:k,column:C}},M.prototype.$clipRangeToDocument=function(k){k.start.row<0?(k.start.row=0,k.start.column=0):k.start.column=this.$clipColumnToRow(k.start.row,k.start.column);var C=this.doc.getLength()-1;return k.end.row>C?(k.end.row=C,k.end.column=this.doc.getLine(C).length):k.end.column=this.$clipColumnToRow(k.end.row,k.end.column),k},M.prototype.setUseWrapMode=function(k){if(k!=this.$useWrapMode){if(this.$useWrapMode=k,this.$modified=!0,this.$resetRowCache(0),k){var C=this.getLength();this.$wrapData=Array(C),this.$updateWrapData(0,C-1)}this._signal("changeWrapMode")}},M.prototype.getUseWrapMode=function(){return this.$useWrapMode},M.prototype.setWrapLimitRange=function(k,C){(this.$wrapLimitRange.min!==k||this.$wrapLimitRange.max!==C)&&(this.$wrapLimitRange={min:k,max:C},this.$modified=!0,this.$bidiHandler.markAsDirty(),this.$useWrapMode&&this._signal("changeWrapMode"))},M.prototype.adjustWrapLimit=function(k,C){var S=this.$wrapLimitRange;S.max<0&&(S={min:C,max:C});var A=this.$constrainWrapLimit(k,S.min,S.max);return A!=this.$wrapLimit&&A>1?(this.$wrapLimit=A,this.$modified=!0,this.$useWrapMode&&(this.$updateWrapData(0,this.getLength()-1),this.$resetRowCache(0),this._signal("changeWrapLimit")),!0):!1},M.prototype.$constrainWrapLimit=function(k,C,S){return C&&(k=Math.max(C,k)),S&&(k=Math.min(S,k)),k},M.prototype.getWrapLimit=function(){return this.$wrapLimit},M.prototype.setWrapLimit=function(k){this.setWrapLimitRange(k,k)},M.prototype.getWrapLimitRange=function(){return{min:this.$wrapLimitRange.min,max:this.$wrapLimitRange.max}},M.prototype.$updateInternalDataOnChange=function(k){var C=this.$useWrapMode,S=k.action,A=k.start,T=k.end,I=A.row,N=T.row,O=N-I,D=null;if(this.$updating=!0,O!=0)if(S==="remove"){this[C?"$wrapData":"$rowLengthCache"].splice(I,O);var P=this.$foldData;D=this.getFoldsInRange(k),this.removeFolds(D);var B=this.getFoldLine(T.row),j=0;if(B){B.addRemoveChars(T.row,T.column,A.column-T.column),B.shiftRow(-O);var F=this.getFoldLine(I);F&&F!==B&&(F.merge(B),B=F),j=P.indexOf(B)+1}for(j;j=T.row&&B.shiftRow(-O)}N=I}else{var H=Array(O);H.unshift(I,0);var G=C?this.$wrapData:this.$rowLengthCache;G.splice.apply(G,H);var P=this.$foldData,B=this.getFoldLine(I),j=0;if(B){var Q=B.range.compareInside(A.row,A.column);Q==0?(B=B.split(A.row,A.column),B&&(B.shiftRow(O),B.addRemoveChars(N,0,T.column-A.column))):Q==-1&&(B.addRemoveChars(I,0,T.column-A.column),B.shiftRow(O)),j=P.indexOf(B)+1}for(j;j=I&&B.shiftRow(O)}}else{O=Math.abs(k.start.column-k.end.column),S==="remove"&&(D=this.getFoldsInRange(k),this.removeFolds(D),O=-O);var B=this.getFoldLine(I);B&&B.addRemoveChars(I,A.column,O)}return C&&this.$wrapData.length!=this.doc.getLength()&&console.error("doc.getLength() and $wrapData.length have to be the same!"),this.$updating=!1,C?this.$updateWrapData(I,N):this.$updateRowLengthCache(I,N),D},M.prototype.$updateRowLengthCache=function(k,C){this.$rowLengthCache[k]=null,this.$rowLengthCache[C]=null},M.prototype.$updateWrapData=function(k,C){var S=this.doc.getAllLines(),A=this.getTabSize(),T=this.$wrapData,I=this.$wrapLimit,N,O,D=k;for(C=Math.min(C,S.length-1);D<=C;)O=this.getFoldLine(D,O),O?(N=[],O.walk((function(P,B,j,F){var H;if(P!=null){H=this.$getDisplayTokens(P,N.length),H[0]=w;for(var G=1;GC-F;){var H=I+C-F;if(k[H-1]>=_&&k[H]>=_){j(H);continue}if(k[H]==w||k[H]==x){for(H;H!=I-1&&k[H]!=w;H--);if(H>I){j(H);continue}for(H=I+C,H;H>2)),I-1);H>G&&k[H]G&&k[H]G&&k[H]==b;)H--}else for(;H>G&&k[H]<_;)H--;if(H>G){j(++H);continue}H=I+C,k[H]==$&&H--,j(H-F)}return A},M.prototype.$getDisplayTokens=function(k,C){var S=[],A;C=C||0;for(var T=0;T39&&I<48||I>57&&I<64?S.push(b):I>=4352&&L(I)?S.push(y,$):S.push(y)}return S},M.prototype.$getStringScreenWidth=function(k,C,S){if(C==0)return[0,0];C==null&&(C=1/0),S=S||0;var A,T;for(T=0;T=4352&&L(A)?S+=2:S+=1,!(S>C));T++);return[S,T]},M.prototype.getRowLength=function(k){var C=1;return this.lineWidgets&&(C+=this.lineWidgets[k]&&this.lineWidgets[k].rowCount||0),!this.$useWrapMode||!this.$wrapData[k]?C:this.$wrapData[k].length+C},M.prototype.getRowLineCount=function(k){return!this.$useWrapMode||!this.$wrapData[k]?1:this.$wrapData[k].length+1},M.prototype.getRowWrapIndent=function(k){if(this.$useWrapMode){var C=this.screenToDocumentPosition(k,Number.MAX_VALUE),S=this.$wrapData[C.row];return S.length&&S[0]=0)var B=O[D],j=this.$docRowCache[D],F=k>O[P-1];else var F=!P;for(var H=this.getLength()-1,G=this.getNextFoldLine(j),Q=G?G.start.row:1/0;B<=k&&(N=this.getRowLength(j),!(B+N>k||j>=H));)B+=N,j++,j>Q&&(j=G.end.row+1,G=this.getNextFoldLine(j,G),Q=G?G.start.row:1/0),F&&(this.$docRowCache.push(j),this.$screenRowCache.push(B));if(G&&G.start.row<=j)A=this.getFoldDisplayLine(G),j=G.start.row;else{if(B+N<=k||j>H)return{row:H,column:this.getLine(H).length};A=this.getLine(j),G=null}var X=0,J=Math.floor(k-B);if(this.$useWrapMode){var ee=this.$wrapData[j];ee&&(I=ee[J],J>0&&ee.length&&(X=ee.indent,T=ee[J-1]||ee[ee.length-1],A=A.substring(T)))}return S!==void 0&&this.$bidiHandler.isBidiRow(B+J,j,J)&&(C=this.$bidiHandler.offsetToCol(S)),T+=this.$getStringScreenWidth(A,C-X)[1],this.$useWrapMode&&T>=I&&(T=I-1),G?G.idxToPosition(T):{row:j,column:T}},M.prototype.documentToScreenPosition=function(k,C){if(typeof C>"u")var S=this.$clipPositionToDocument(k.row,k.column);else S=this.$clipPositionToDocument(k,C);k=S.row,C=S.column;var B=0,A=null,T=null;T=this.getFoldAt(k,C,1),T&&(k=T.start.row,C=T.start.column);var I,P=0,N=this.$docRowCache,O=this.$getRowCacheIndex(N,k),D=N.length;if(D&&O>=0)var P=N[O],B=this.$screenRowCache[O],j=k>N[D-1];else var j=!D;for(var F=this.getNextFoldLine(P),H=F?F.start.row:1/0;P=H){if(I=F.end.row+1,I>k)break;F=this.getNextFoldLine(I,F),H=F?F.start.row:1/0}else I=P+1;B+=this.getRowLength(P),P=I,j&&(this.$docRowCache.push(P),this.$screenRowCache.push(B))}var G="";F&&P>=H?(G=this.getFoldDisplayLine(F,k,C),A=F.start.row):(G=this.getLine(k).substring(0,C),A=k);var Q=0;if(this.$useWrapMode){var X=this.$wrapData[A];if(X){for(var J=0;G.length>=X[J];)B++,J++;G=G.substring(X[J-1]||0,G.length),Q=J>0?X.indent:0}}return this.lineWidgets&&this.lineWidgets[P]&&this.lineWidgets[P].rowsAbove&&(B+=this.lineWidgets[P].rowsAbove),{row:B,column:Q+this.$getStringScreenWidth(G)[0]}},M.prototype.documentToScreenColumn=function(k,C){return this.documentToScreenPosition(k,C).column},M.prototype.documentToScreenRow=function(k,C){return this.documentToScreenPosition(k,C).row},M.prototype.getScreenLength=function(){var k=0,C=null;if(this.$useWrapMode)for(var S=this.$wrapData.length,A=0,T=0,C=this.$foldData[T++],I=C?C.start.row:1/0;AI&&(A=C.end.row+1,C=this.$foldData[T++],I=C?C.start.row:1/0)}else{k=this.getLength();for(var O=this.$foldData,T=0;TS));I++);return[A,I]})},M.prototype.getPrecedingCharacter=function(){var k=this.selection.getCursor();if(k.column===0)return k.row===0?"":this.doc.getNewLineCharacter();var C=this.getLine(k.row);return C[k.column-1]},M.prototype.destroy=function(){this.destroyed||(this.bgTokenizer.setDocument(null),this.bgTokenizer.cleanup(),this.destroyed=!0),this.$stopWorker(),this.removeAllListeners(),this.doc&&this.doc.off("change",this.$onChange),this.selection.detach()},M}();v.$uid=0,v.prototype.$modes=u.$modes,v.prototype.getValue=v.prototype.toString,v.prototype.$defaultUndoManager={undo:function(){},redo:function(){},hasUndo:function(){},hasRedo:function(){},reset:function(){},add:function(){},addSelection:function(){},startNewGroup:function(){},addSession:function(){}},v.prototype.$overwrite=!1,v.prototype.$mode=null,v.prototype.$modeId=null,v.prototype.$scrollTop=0,v.prototype.$scrollLeft=0,v.prototype.$wrapLimit=80,v.prototype.$useWrapMode=!1,v.prototype.$wrapLimitRange={min:null,max:null},v.prototype.lineWidgets=null,v.prototype.isFullWidth=L,i.implement(v.prototype,p);var y=1,$=2,w=3,x=4,b=9,_=10,R=11,E=12;function L(M){return M<4352?!1:M>=4352&&M<=4447||M>=4515&&M<=4519||M>=4602&&M<=4607||M>=9001&&M<=9002||M>=11904&&M<=11929||M>=11931&&M<=12019||M>=12032&&M<=12245||M>=12272&&M<=12283||M>=12288&&M<=12350||M>=12353&&M<=12438||M>=12441&&M<=12543||M>=12549&&M<=12589||M>=12593&&M<=12686||M>=12688&&M<=12730||M>=12736&&M<=12771||M>=12784&&M<=12830||M>=12832&&M<=12871||M>=12880&&M<=13054||M>=13056&&M<=19903||M>=19968&&M<=42124||M>=42128&&M<=42182||M>=43360&&M<=43388||M>=44032&&M<=55203||M>=55216&&M<=55238||M>=55243&&M<=55291||M>=63744&&M<=64255||M>=65040&&M<=65049||M>=65072&&M<=65106||M>=65108&&M<=65126||M>=65128&&M<=65131||M>=65281&&M<=65376||M>=65504&&M<=65510}n("./edit_session/folding").Folding.call(v.prototype),n("./edit_session/bracket_match").BracketMatch.call(v.prototype),u.defineOptions(v.prototype,"session",{wrap:{set:function(M){if(!M||M=="off"?M=!1:M=="free"?M=!0:M=="printMargin"?M=-1:typeof M=="string"&&(M=parseInt(M,10)||!1),this.$wrap!=M)if(this.$wrap=M,!M)this.setUseWrapMode(!1);else{var k=typeof M=="number"?M:null;this.setWrapLimitRange(k,k),this.setUseWrapMode(!0)}},get:function(){return this.getUseWrapMode()?this.$wrap==-1?"printMargin":this.getWrapLimitRange().min?this.$wrap:"free":"off"},handlesSet:!0},wrapMethod:{set:function(M){M=M=="auto"?this.$mode.type!="text":M!="text",M!=this.$wrapAsCode&&(this.$wrapAsCode=M,this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0)))},initialValue:"auto"},indentedSoftWrap:{set:function(){this.$useWrapMode&&(this.$useWrapMode=!1,this.setUseWrapMode(!0))},initialValue:!0},firstLineNumber:{set:function(){this._signal("changeBreakpoint")},initialValue:1},useWorker:{set:function(M){this.$useWorker=M,this.$stopWorker(),M&&this.$startWorker()},initialValue:!0},useSoftTabs:{initialValue:!0},tabSize:{set:function(M){M=parseInt(M),M>0&&this.$tabSize!==M&&(this.$modified=!0,this.$rowLengthCache=[],this.$tabSize=M,this._signal("changeTabSize"))},initialValue:4,handlesSet:!0},navigateWithinSoftTabs:{initialValue:!1},foldStyle:{set:function(M){this.setFoldStyle(M)},handlesSet:!0},overwrite:{set:function(M){this._signal("changeOverwrite")},initialValue:!1},newLineMode:{set:function(M){this.doc.setNewLineMode(M)},get:function(){return this.doc.getNewLineMode()},handlesSet:!0},mode:{set:function(M){this.setMode(M)},get:function(){return this.$modeId},handlesSet:!0}}),r.EditSession=v}),ace.define("ace/search",["require","exports","module","ace/lib/lang","ace/lib/oop","ace/range"],function(n,r,h){var i=n("./lib/lang"),d=n("./lib/oop"),g=n("./range").Range,u=function(){function s(){this.$options={}}return s.prototype.set=function(o){return d.mixin(this.$options,o),this},s.prototype.getOptions=function(){return i.copyObject(this.$options)},s.prototype.setOptions=function(o){this.$options=o},s.prototype.find=function(o){var a=this.$options,l=this.$matchIterator(o,a);if(!l)return!1;var c=null;return l.forEach(function(f,m,v,y){return c=new g(f,m,v,y),m==y&&a.start&&a.start.start&&a.skipCurrent!=!1&&c.isEqual(a.start)?(c=null,!1):!0}),c},s.prototype.findAll=function(o){var a=this.$options;if(!a.needle)return[];this.$assembleRegExp(a);var l=a.range,c=l?o.getLines(l.start.row,l.end.row):o.doc.getAllLines(),f=[],m=a.re;if(a.$isMultiLine){var v=m.length,y=c.length-v,$;e:for(var w=m.offset||0;w<=y;w++){for(var x=0;xR||(f.push($=new g(w,R,w+v-1,E)),v>2&&(w=w+v-2))}}else for(var L=0;LS&&f[x].end.row==A;)x--;for(f=f.slice(L,x+1),L=0,x=f.length;L=$;E--)if(_(E,Number.MAX_VALUE,R))return;if(a.wrap!=!1){for(E=w,$=y.row;E>=$;E--)if(_(E,Number.MAX_VALUE,R))return}}};else var x=function(R){var E=y.row;if(!_(E,y.column,R)){for(E=E+1;E<=w;E++)if(_(E,0,R))return;if(a.wrap!=!1){for(E=$,w=y.row;E<=w;E++)if(_(E,0,R))return}}};if(a.$isMultiLine)var b=l.length,_=function(R,E,L){var M=c?R-b+1:R;if(!(M<0||M+b>o.getLength())){var k=o.getLine(M),C=k.search(l[0]);if(!(!c&&CE)&&L(M,C,M+b-1,A))return!0}}};else if(c)var _=function(R,E,L){var M=o.getLine(R),k=[],C,S=0;for(l.lastIndex=0;C=l.exec(M);){var A=C[0].length;if(S=C.index,!A){if(S>=M.length)break;l.lastIndex=S+=i.skipEmptyMatch(M,S,m)}if(C.index+A>E)break;k.push(C.index,A)}for(var T=k.length-1;T>=0;T-=2){var I=k[T-1],A=k[T];if(L(R,I,R,I+A))return!0}};else var _=function(R,E,L){var M=o.getLine(R),k,C;for(l.lastIndex=E;C=l.exec(M);){var S=C[0].length;if(k=C.index,L(R,k,R,k+S))return!0;if(!S&&(l.lastIndex=k+=i.skipEmptyMatch(M,k,m),k>=M.length))return!1}};return{forEach:x}},s}();function p(s,o){var a=i.supportsLookbehind();function l(v,y){y===void 0&&(y=!0);var $=a&&o.$supportsUnicodeFlag?new RegExp("[\\p{L}\\p{N}_]","u"):new RegExp("\\w");return $.test(v)||o.regExp?a&&o.$supportsUnicodeFlag?y?"(?<=^|[^\\p{L}\\p{N}_])":"(?=[^\\p{L}\\p{N}_]|$)":"\\b":""}var c=Array.from(s),f=c[0],m=c[c.length-1];return l(f)+s+l(m,!1)}r.Search=u}),ace.define("ace/keyboard/hash_handler",["require","exports","module","ace/lib/keys","ace/lib/useragent"],function(n,r,h){var i=this&&this.__extends||function(){var a=function(l,c){return a=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(f,m){f.__proto__=m}||function(f,m){for(var v in m)Object.prototype.hasOwnProperty.call(m,v)&&(f[v]=m[v])},a(l,c)};return function(l,c){if(typeof c!="function"&&c!==null)throw new TypeError("Class extends value "+String(c)+" is not a constructor or null");a(l,c);function f(){this.constructor=l}l.prototype=c===null?Object.create(c):(f.prototype=c.prototype,new f)}}(),d=n("../lib/keys"),g=n("../lib/useragent"),u=d.KEY_MODS,p=function(){function a(l,c){this.$init(l,c,!1)}return a.prototype.$init=function(l,c,f){this.platform=c||(g.isMac?"mac":"win"),this.commands={},this.commandKeyBinding={},this.addCommands(l),this.$singleCommand=f},a.prototype.addCommand=function(l){this.commands[l.name]&&this.removeCommand(l),this.commands[l.name]=l,l.bindKey&&this._buildKeyHash(l)},a.prototype.removeCommand=function(l,c){var f=l&&(typeof l=="string"?l:l.name);l=this.commands[f],c||delete this.commands[f];var m=this.commandKeyBinding;for(var v in m){var y=m[v];if(y==l)delete m[v];else if(Array.isArray(y)){var $=y.indexOf(l);$!=-1&&(y.splice($,1),y.length==1&&(m[v]=y[0]))}}},a.prototype.bindKey=function(l,c,f){if(typeof l=="object"&&l&&(f==null&&(f=l.position),l=l[this.platform]),!!l){if(typeof c=="function")return this.addCommand({exec:c,bindKey:l,name:c.name||l});l.split("|").forEach(function(m){var v="";if(m.indexOf(" ")!=-1){var y=m.split(/\s+/);m=y.pop(),y.forEach(function(x){var b=this.parseKeys(x),_=u[b.hashId]+b.key;v+=(v?" ":"")+_,this._addCommandToBinding(v,"chainKeys")},this),v+=" "}var $=this.parseKeys(m),w=u[$.hashId]+$.key;this._addCommandToBinding(v+w,c,f)},this)}},a.prototype._addCommandToBinding=function(l,c,f){var m=this.commandKeyBinding,v;if(!c)delete m[l];else if(!m[l]||this.$singleCommand)m[l]=c;else{Array.isArray(m[l])?(v=m[l].indexOf(c))!=-1&&m[l].splice(v,1):m[l]=[m[l]],typeof f!="number"&&(f=s(c));var y=m[l];for(v=0;vf)break}y.splice(v,0,c)}},a.prototype.addCommands=function(l){l&&Object.keys(l).forEach(function(c){var f=l[c];if(f){if(typeof f=="string")return this.bindKey(f,c);typeof f=="function"&&(f={exec:f}),typeof f=="object"&&(f.name||(f.name=c),this.addCommand(f))}},this)},a.prototype.removeCommands=function(l){Object.keys(l).forEach(function(c){this.removeCommand(l[c])},this)},a.prototype.bindKeys=function(l){Object.keys(l).forEach(function(c){this.bindKey(c,l[c])},this)},a.prototype._buildKeyHash=function(l){this.bindKey(l.bindKey,l)},a.prototype.parseKeys=function(l){var c=l.toLowerCase().split(/[\-\+]([\-\+])?/).filter(function(w){return w}),f=c.pop(),m=d[f];if(d.FUNCTION_KEYS[m])f=d.FUNCTION_KEYS[m].toLowerCase();else if(c.length){if(c.length==1&&c[0]=="shift")return{key:f.toUpperCase(),hashId:-1}}else return{key:f,hashId:-1};for(var v=0,y=c.length;y--;){var $=d.KEY_MODS[c[y]];if($==null)return typeof console<"u"&&console.error("invalid modifier "+c[y]+" in "+l),!1;v|=$}return{key:f,hashId:v}},a.prototype.findKeyCommand=function(l,c){var f=u[l]+c;return this.commandKeyBinding[f]},a.prototype.handleKeyboard=function(l,c,f,m){if(!(m<0)){var v=u[c]+f,y=this.commandKeyBinding[v];return l.$keyChain&&(l.$keyChain+=" "+v,y=this.commandKeyBinding[l.$keyChain]||y),y&&(y=="chainKeys"||y[y.length-1]=="chainKeys")?(l.$keyChain=l.$keyChain||v,{command:"null"}):(l.$keyChain&&((!c||c==4)&&f.length==1?l.$keyChain=l.$keyChain.slice(0,-v.length-1):(c==-1||m>0)&&(l.$keyChain="")),{command:y})}},a.prototype.getStatusText=function(l,c){return c.$keyChain||""},a}();function s(a){return typeof a=="object"&&a.bindKey&&a.bindKey.position||(a.isDefault?-100:0)}var o=function(a){i(l,a);function l(c,f){var m=a.call(this,c,f)||this;return m.$singleCommand=!0,m}return l}(p);o.call=function(a,l,c){p.prototype.$init.call(a,l,c,!0)},p.call=function(a,l,c){p.prototype.$init.call(a,l,c,!1)},r.HashHandler=o,r.MultiHashHandler=p}),ace.define("ace/commands/command_manager",["require","exports","module","ace/lib/oop","ace/keyboard/hash_handler","ace/lib/event_emitter"],function(n,r,h){var i=this&&this.__extends||function(){var s=function(o,a){return s=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(l,c){l.__proto__=c}||function(l,c){for(var f in c)Object.prototype.hasOwnProperty.call(c,f)&&(l[f]=c[f])},s(o,a)};return function(o,a){if(typeof a!="function"&&a!==null)throw new TypeError("Class extends value "+String(a)+" is not a constructor or null");s(o,a);function l(){this.constructor=o}o.prototype=a===null?Object.create(a):(l.prototype=a.prototype,new l)}}(),d=n("../lib/oop"),g=n("../keyboard/hash_handler").MultiHashHandler,u=n("../lib/event_emitter").EventEmitter,p=function(s){i(o,s);function o(a,l){var c=s.call(this,l,a)||this;return c.byName=c.commands,c.setDefaultHandler("exec",function(f){return f.args?f.command.exec(f.editor,f.args,f.event,!1):f.command.exec(f.editor,{},f.event,!0)}),c}return o.prototype.exec=function(a,l,c){if(Array.isArray(a)){for(var f=a.length;f--;)if(this.exec(a[f],l,c))return!0;return!1}if(typeof a=="string"&&(a=this.commands[a]),!this.canExecute(a,l))return!1;var m={editor:l,command:a,args:c};return m.returnValue=this._emit("exec",m),this._signal("afterExec",m),m.returnValue!==!1},o.prototype.canExecute=function(a,l){return typeof a=="string"&&(a=this.commands[a]),!(!a||l&&l.$readOnly&&!a.readOnly||this.$checkCommandState!=!1&&a.isAvailable&&!a.isAvailable(l))},o.prototype.toggleRecording=function(a){if(!this.$inReplay)return a&&a._emit("changeStatus"),this.recording?(this.macro.pop(),this.off("exec",this.$addCommandToMacro),this.macro.length||(this.macro=this.oldMacro),this.recording=!1):(this.$addCommandToMacro||(this.$addCommandToMacro=(function(l){this.macro.push([l.command,l.args])}).bind(this)),this.oldMacro=this.macro,this.macro=[],this.on("exec",this.$addCommandToMacro),this.recording=!0)},o.prototype.replay=function(a){if(!(this.$inReplay||!this.macro)){if(this.recording)return this.toggleRecording(a);try{this.$inReplay=!0,this.macro.forEach(function(l){typeof l=="string"?this.exec(l,a):this.exec(l[0],a,l[1])},this)}finally{this.$inReplay=!1}}},o.prototype.trimMacro=function(a){return a.map(function(l){return typeof l[0]!="string"&&(l[0]=l[0].name),l[1]||(l=l[0]),l})},o}(g);d.implement(p.prototype,u),r.CommandManager=p}),ace.define("ace/commands/default_commands",["require","exports","module","ace/lib/lang","ace/config","ace/range"],function(n,r,h){var i=n("../lib/lang"),d=n("../config"),g=n("../range").Range;function u(s,o){return{win:s,mac:o}}r.commands=[{name:"showSettingsMenu",description:"Show settings menu",bindKey:u("Ctrl-,","Command-,"),exec:function(s){d.loadModule("ace/ext/settings_menu",function(o){o.init(s),s.showSettingsMenu()})},readOnly:!0},{name:"goToNextError",description:"Go to next error",bindKey:u("Alt-E","F4"),exec:function(s){d.loadModule("ace/ext/error_marker",function(o){o.showErrorMarker(s,1)})},scrollIntoView:"animate",readOnly:!0},{name:"goToPreviousError",description:"Go to previous error",bindKey:u("Alt-Shift-E","Shift-F4"),exec:function(s){d.loadModule("ace/ext/error_marker",function(o){o.showErrorMarker(s,-1)})},scrollIntoView:"animate",readOnly:!0},{name:"selectall",description:"Select all",bindKey:u("Ctrl-A","Command-A"),exec:function(s){s.selectAll()},readOnly:!0},{name:"centerselection",description:"Center selection",bindKey:u(null,"Ctrl-L"),exec:function(s){s.centerSelection()},readOnly:!0},{name:"gotoline",description:"Go to line...",bindKey:u("Ctrl-L","Command-L"),exec:function(s,o){typeof o=="number"&&!isNaN(o)&&s.gotoLine(o),s.prompt({$type:"gotoLine"})},readOnly:!0},{name:"fold",bindKey:u("Alt-L|Ctrl-F1","Command-Alt-L|Command-F1"),exec:function(s){s.session.toggleFold(!1)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"unfold",bindKey:u("Alt-Shift-L|Ctrl-Shift-F1","Command-Alt-Shift-L|Command-Shift-F1"),exec:function(s){s.session.toggleFold(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleFoldWidget",description:"Toggle fold widget",bindKey:u("F2","F2"),exec:function(s){s.session.toggleFoldWidget()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"toggleParentFoldWidget",description:"Toggle parent fold widget",bindKey:u("Alt-F2","Alt-F2"),exec:function(s){s.session.toggleFoldWidget(!0)},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"foldall",description:"Fold all",bindKey:u(null,"Ctrl-Command-Option-0"),exec:function(s){s.session.foldAll()},scrollIntoView:"center",readOnly:!0},{name:"foldAllComments",description:"Fold all comments",bindKey:u(null,"Ctrl-Command-Option-0"),exec:function(s){s.session.foldAllComments()},scrollIntoView:"center",readOnly:!0},{name:"foldOther",description:"Fold other",bindKey:u("Alt-0","Command-Option-0"),exec:function(s){s.session.foldAll(),s.session.unfold(s.selection.getAllRanges())},scrollIntoView:"center",readOnly:!0},{name:"unfoldall",description:"Unfold all",bindKey:u("Alt-Shift-0","Command-Option-Shift-0"),exec:function(s){s.session.unfold()},scrollIntoView:"center",readOnly:!0},{name:"findnext",description:"Find next",bindKey:u("Ctrl-K","Command-G"),exec:function(s){s.findNext()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"findprevious",description:"Find previous",bindKey:u("Ctrl-Shift-K","Command-Shift-G"),exec:function(s){s.findPrevious()},multiSelectAction:"forEach",scrollIntoView:"center",readOnly:!0},{name:"selectOrFindNext",description:"Select or find next",bindKey:u("Alt-K","Ctrl-G"),exec:function(s){s.selection.isEmpty()?s.selection.selectWord():s.findNext()},readOnly:!0},{name:"selectOrFindPrevious",description:"Select or find previous",bindKey:u("Alt-Shift-K","Ctrl-Shift-G"),exec:function(s){s.selection.isEmpty()?s.selection.selectWord():s.findPrevious()},readOnly:!0},{name:"find",description:"Find",bindKey:u("Ctrl-F","Command-F"),exec:function(s){d.loadModule("ace/ext/searchbox",function(o){o.Search(s)})},readOnly:!0},{name:"overwrite",description:"Overwrite",bindKey:"Insert",exec:function(s){s.toggleOverwrite()},readOnly:!0},{name:"selecttostart",description:"Select to start",bindKey:u("Ctrl-Shift-Home","Command-Shift-Home|Command-Shift-Up"),exec:function(s){s.getSelection().selectFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotostart",description:"Go to start",bindKey:u("Ctrl-Home","Command-Home|Command-Up"),exec:function(s){s.navigateFileStart()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectup",description:"Select up",bindKey:u("Shift-Up","Shift-Up|Ctrl-Shift-P"),exec:function(s){s.getSelection().selectUp()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golineup",description:"Go line up",bindKey:u("Up","Up|Ctrl-P"),exec:function(s,o){s.navigateUp(o.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttoend",description:"Select to end",bindKey:u("Ctrl-Shift-End","Command-Shift-End|Command-Shift-Down"),exec:function(s){s.getSelection().selectFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"gotoend",description:"Go to end",bindKey:u("Ctrl-End","Command-End|Command-Down"),exec:function(s){s.navigateFileEnd()},multiSelectAction:"forEach",readOnly:!0,scrollIntoView:"animate",aceCommandGroup:"fileJump"},{name:"selectdown",description:"Select down",bindKey:u("Shift-Down","Shift-Down|Ctrl-Shift-N"),exec:function(s){s.getSelection().selectDown()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"golinedown",description:"Go line down",bindKey:u("Down","Down|Ctrl-N"),exec:function(s,o){s.navigateDown(o.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordleft",description:"Select word left",bindKey:u("Ctrl-Shift-Left","Option-Shift-Left"),exec:function(s){s.getSelection().selectWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordleft",description:"Go to word left",bindKey:u("Ctrl-Left","Option-Left"),exec:function(s){s.navigateWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolinestart",description:"Select to line start",bindKey:u("Alt-Shift-Left","Command-Shift-Left|Ctrl-Shift-A"),exec:function(s){s.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolinestart",description:"Go to line start",bindKey:u("Alt-Left|Home","Command-Left|Home|Ctrl-A"),exec:function(s){s.navigateLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectleft",description:"Select left",bindKey:u("Shift-Left","Shift-Left|Ctrl-Shift-B"),exec:function(s){s.getSelection().selectLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoleft",description:"Go to left",bindKey:u("Left","Left|Ctrl-B"),exec:function(s,o){s.navigateLeft(o.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectwordright",description:"Select word right",bindKey:u("Ctrl-Shift-Right","Option-Shift-Right"),exec:function(s){s.getSelection().selectWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotowordright",description:"Go to word right",bindKey:u("Ctrl-Right","Option-Right"),exec:function(s){s.navigateWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selecttolineend",description:"Select to line end",bindKey:u("Alt-Shift-Right","Command-Shift-Right|Shift-End|Ctrl-Shift-E"),exec:function(s){s.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotolineend",description:"Go to line end",bindKey:u("Alt-Right|End","Command-Right|End|Ctrl-E"),exec:function(s){s.navigateLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectright",description:"Select right",bindKey:u("Shift-Right","Shift-Right"),exec:function(s){s.getSelection().selectRight()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"gotoright",description:"Go to right",bindKey:u("Right","Right|Ctrl-F"),exec:function(s,o){s.navigateRight(o.times)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectpagedown",description:"Select page down",bindKey:"Shift-PageDown",exec:function(s){s.selectPageDown()},readOnly:!0},{name:"pagedown",description:"Page down",bindKey:u(null,"Option-PageDown"),exec:function(s){s.scrollPageDown()},readOnly:!0},{name:"gotopagedown",description:"Go to page down",bindKey:u("PageDown","PageDown|Ctrl-V"),exec:function(s){s.gotoPageDown()},readOnly:!0},{name:"selectpageup",description:"Select page up",bindKey:"Shift-PageUp",exec:function(s){s.selectPageUp()},readOnly:!0},{name:"pageup",description:"Page up",bindKey:u(null,"Option-PageUp"),exec:function(s){s.scrollPageUp()},readOnly:!0},{name:"gotopageup",description:"Go to page up",bindKey:"PageUp",exec:function(s){s.gotoPageUp()},readOnly:!0},{name:"scrollup",description:"Scroll up",bindKey:u("Ctrl-Up",null),exec:function(s){s.renderer.scrollBy(0,-2*s.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"scrolldown",description:"Scroll down",bindKey:u("Ctrl-Down",null),exec:function(s){s.renderer.scrollBy(0,2*s.renderer.layerConfig.lineHeight)},readOnly:!0},{name:"selectlinestart",description:"Select line start",bindKey:"Shift-Home",exec:function(s){s.getSelection().selectLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"selectlineend",description:"Select line end",bindKey:"Shift-End",exec:function(s){s.getSelection().selectLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"togglerecording",description:"Toggle recording",bindKey:u("Ctrl-Alt-E","Command-Option-E"),exec:function(s){s.commands.toggleRecording(s)},readOnly:!0},{name:"replaymacro",description:"Replay macro",bindKey:u("Ctrl-Shift-E","Command-Shift-E"),exec:function(s){s.commands.replay(s)},readOnly:!0},{name:"jumptomatching",description:"Jump to matching",bindKey:u("Ctrl-\\|Ctrl-P","Command-\\"),exec:function(s){s.jumpToMatching()},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"selecttomatching",description:"Select to matching",bindKey:u("Ctrl-Shift-\\|Ctrl-Shift-P","Command-Shift-\\"),exec:function(s){s.jumpToMatching(!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"expandToMatching",description:"Expand to matching",bindKey:u("Ctrl-Shift-M","Ctrl-Shift-M"),exec:function(s){s.jumpToMatching(!0,!0)},multiSelectAction:"forEach",scrollIntoView:"animate",readOnly:!0},{name:"passKeysToBrowser",description:"Pass keys to browser",bindKey:u(null,null),exec:function(){},passEvent:!0,readOnly:!0},{name:"copy",description:"Copy",exec:function(s){},readOnly:!0},{name:"cut",description:"Cut",exec:function(s){var o=s.$copyWithEmptySelection&&s.selection.isEmpty(),a=o?s.selection.getLineRange():s.selection.getRange();s._emit("cut",a),a.isEmpty()||s.session.remove(a),s.clearSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"paste",description:"Paste",exec:function(s,o){s.$handlePaste(o)},scrollIntoView:"cursor"},{name:"removeline",description:"Remove line",bindKey:u("Ctrl-D","Command-D"),exec:function(s){s.removeLines()},scrollIntoView:"cursor",multiSelectAction:"forEachLine"},{name:"duplicateSelection",description:"Duplicate selection",bindKey:u("Ctrl-Shift-D","Command-Shift-D"),exec:function(s){s.duplicateSelection()},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"sortlines",description:"Sort lines",bindKey:u("Ctrl-Alt-S","Command-Alt-S"),exec:function(s){s.sortLines()},scrollIntoView:"selection",multiSelectAction:"forEachLine"},{name:"togglecomment",description:"Toggle comment",bindKey:u("Ctrl-/","Command-/"),exec:function(s){s.toggleCommentLines()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"toggleBlockComment",description:"Toggle block comment",bindKey:u("Ctrl-Shift-/","Command-Shift-/"),exec:function(s){s.toggleBlockComment()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"modifyNumberUp",description:"Modify number up",bindKey:u("Ctrl-Shift-Up","Alt-Shift-Up"),exec:function(s){s.modifyNumber(1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"modifyNumberDown",description:"Modify number down",bindKey:u("Ctrl-Shift-Down","Alt-Shift-Down"),exec:function(s){s.modifyNumber(-1)},scrollIntoView:"cursor",multiSelectAction:"forEach"},{name:"replace",description:"Replace",bindKey:u("Ctrl-H","Command-Option-F"),exec:function(s){d.loadModule("ace/ext/searchbox",function(o){o.Search(s,!0)})}},{name:"undo",description:"Undo",bindKey:u("Ctrl-Z","Command-Z"),exec:function(s){s.undo()}},{name:"redo",description:"Redo",bindKey:u("Ctrl-Shift-Z|Ctrl-Y","Command-Shift-Z|Command-Y"),exec:function(s){s.redo()}},{name:"copylinesup",description:"Copy lines up",bindKey:u("Alt-Shift-Up","Command-Option-Up"),exec:function(s){s.copyLinesUp()},scrollIntoView:"cursor"},{name:"movelinesup",description:"Move lines up",bindKey:u("Alt-Up","Option-Up"),exec:function(s){s.moveLinesUp()},scrollIntoView:"cursor"},{name:"copylinesdown",description:"Copy lines down",bindKey:u("Alt-Shift-Down","Command-Option-Down"),exec:function(s){s.copyLinesDown()},scrollIntoView:"cursor"},{name:"movelinesdown",description:"Move lines down",bindKey:u("Alt-Down","Option-Down"),exec:function(s){s.moveLinesDown()},scrollIntoView:"cursor"},{name:"del",description:"Delete",bindKey:u("Delete","Delete|Ctrl-D|Shift-Delete"),exec:function(s){s.remove("right")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"backspace",description:"Backspace",bindKey:u("Shift-Backspace|Backspace","Ctrl-Backspace|Shift-Backspace|Backspace|Ctrl-H"),exec:function(s){s.remove("left")},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"cut_or_delete",description:"Cut or delete",bindKey:u("Shift-Delete",null),exec:function(s){if(s.selection.isEmpty())s.remove("left");else return!1},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestart",description:"Remove to line start",bindKey:u("Alt-Backspace","Command-Backspace"),exec:function(s){s.removeToLineStart()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineend",description:"Remove to line end",bindKey:u("Alt-Delete","Ctrl-K|Command-Delete"),exec:function(s){s.removeToLineEnd()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolinestarthard",description:"Remove to line start hard",bindKey:u("Ctrl-Shift-Backspace",null),exec:function(s){var o=s.selection.getRange();o.start.column=0,s.session.remove(o)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removetolineendhard",description:"Remove to line end hard",bindKey:u("Ctrl-Shift-Delete",null),exec:function(s){var o=s.selection.getRange();o.end.column=Number.MAX_VALUE,s.session.remove(o)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordleft",description:"Remove word left",bindKey:u("Ctrl-Backspace","Alt-Backspace|Ctrl-Alt-Backspace"),exec:function(s){s.removeWordLeft()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"removewordright",description:"Remove word right",bindKey:u("Ctrl-Delete","Alt-Delete"),exec:function(s){s.removeWordRight()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"outdent",description:"Outdent",bindKey:u("Shift-Tab","Shift-Tab"),exec:function(s){s.blockOutdent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"indent",description:"Indent",bindKey:u("Tab","Tab"),exec:function(s){s.indent()},multiSelectAction:"forEach",scrollIntoView:"selectionPart"},{name:"blockoutdent",description:"Block outdent",bindKey:u("Ctrl-[","Ctrl-["),exec:function(s){s.blockOutdent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"blockindent",description:"Block indent",bindKey:u("Ctrl-]","Ctrl-]"),exec:function(s){s.blockIndent()},multiSelectAction:"forEachLine",scrollIntoView:"selectionPart"},{name:"insertstring",description:"Insert string",exec:function(s,o){s.insert(o)},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"inserttext",description:"Insert text",exec:function(s,o){s.insert(i.stringRepeat(o.text||"",o.times||1))},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"splitline",description:"Split line",bindKey:u(null,"Ctrl-O"),exec:function(s){s.splitLine()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"transposeletters",description:"Transpose letters",bindKey:u("Alt-Shift-X","Ctrl-T"),exec:function(s){s.transposeLetters()},multiSelectAction:function(s){s.transposeSelections(1)},scrollIntoView:"cursor"},{name:"touppercase",description:"To uppercase",bindKey:u("Ctrl-U","Ctrl-U"),exec:function(s){s.toUpperCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"tolowercase",description:"To lowercase",bindKey:u("Ctrl-Shift-U","Ctrl-Shift-U"),exec:function(s){s.toLowerCase()},multiSelectAction:"forEach",scrollIntoView:"cursor"},{name:"autoindent",description:"Auto Indent",bindKey:u(null,null),exec:function(s){s.autoIndent()},scrollIntoView:"animate"},{name:"expandtoline",description:"Expand to line",bindKey:u("Ctrl-Shift-L","Command-Shift-L"),exec:function(s){var o=s.selection.getRange();o.start.column=o.end.column=0,o.end.row++,s.selection.setRange(o,!1)},multiSelectAction:"forEach",scrollIntoView:"cursor",readOnly:!0},{name:"openlink",bindKey:u("Ctrl+F3","F3"),exec:function(s){s.openLink()}},{name:"joinlines",description:"Join lines",bindKey:u(null,null),exec:function(s){for(var o=s.selection.isBackwards(),a=o?s.selection.getSelectionLead():s.selection.getSelectionAnchor(),l=o?s.selection.getSelectionAnchor():s.selection.getSelectionLead(),c=s.session.doc.getLine(a.row).length,f=s.session.doc.getTextRange(s.selection.getRange()),m=f.replace(/\n\s*/," ").length,v=s.session.doc.getLine(a.row),y=a.row+1;y<=l.row+1;y++){var $=i.stringTrimLeft(i.stringTrimRight(s.session.doc.getLine(y)));$.length!==0&&($=" "+$),v+=$}l.row+10?(s.selection.moveCursorTo(a.row,a.column),s.selection.selectTo(a.row,a.column+m)):(c=s.session.doc.getLine(a.row).length>c?c+1:c,s.selection.moveCursorTo(a.row,c))},multiSelectAction:"forEach",readOnly:!0},{name:"invertSelection",description:"Invert selection",bindKey:u(null,null),exec:function(s){var o=s.session.doc.getLength()-1,a=s.session.doc.getLine(o).length,l=s.selection.rangeList.ranges,c=[];l.length<1&&(l=[s.selection.getRange()]);for(var f=0;fp[s].column&&s++,l.unshift(s,0),p.splice.apply(p,l),this.$updateRows()}}},g.prototype.$updateRows=function(){var u=this.session.lineWidgets;if(u){var p=!0;u.forEach(function(s,o){if(s)for(p=!1,s.row=o;s.$oldWidget;)s.$oldWidget.row=o,s=s.$oldWidget}),p&&(this.session.lineWidgets=null)}},g.prototype.$registerLineWidget=function(u){this.session.lineWidgets||(this.session.lineWidgets=new Array(this.session.getLength()));var p=this.session.lineWidgets[u.row];return p&&(u.$oldWidget=p,p.el&&p.el.parentNode&&(p.el.parentNode.removeChild(p.el),p._inDocument=!1)),this.session.lineWidgets[u.row]=u,u},g.prototype.addLineWidget=function(u){if(this.$registerLineWidget(u),u.session=this.session,!this.editor)return u;var p=this.editor.renderer;u.html&&!u.el&&(u.el=i.createElement("div"),u.el.innerHTML=u.html),u.text&&!u.el&&(u.el=i.createElement("div"),u.el.textContent=u.text),u.el&&(i.addCssClass(u.el,"ace_lineWidgetContainer"),u.className&&i.addCssClass(u.el,u.className),u.el.style.position="absolute",u.el.style.zIndex="5",p.container.appendChild(u.el),u._inDocument=!0,u.coverGutter||(u.el.style.zIndex="3"),u.pixelHeight==null&&(u.pixelHeight=u.el.offsetHeight)),u.rowCount==null&&(u.rowCount=u.pixelHeight/p.layerConfig.lineHeight);var s=this.session.getFoldAt(u.row,0);if(u.$fold=s,s){var o=this.session.lineWidgets;u.row==s.end.row&&!o[s.start.row]?o[s.start.row]=u:u.hidden=!0}return this.session._emit("changeFold",{data:{start:{row:u.row}}}),this.$updateRows(),this.renderWidgets(null,p),this.onWidgetChanged(u),u},g.prototype.removeLineWidget=function(u){if(u._inDocument=!1,u.session=null,u.el&&u.el.parentNode&&u.el.parentNode.removeChild(u.el),u.editor&&u.editor.destroy)try{u.editor.destroy()}catch{}if(this.session.lineWidgets){var p=this.session.lineWidgets[u.row];if(p==u)this.session.lineWidgets[u.row]=u.$oldWidget,u.$oldWidget&&this.onWidgetChanged(u.$oldWidget);else for(;p;){if(p.$oldWidget==u){p.$oldWidget=u.$oldWidget;break}p=p.$oldWidget}}this.session._emit("changeFold",{data:{start:{row:u.row}}}),this.$updateRows()},g.prototype.getWidgetsAtRow=function(u){for(var p=this.session.lineWidgets,s=p&&p[u],o=[];s;)o.push(s),s=s.$oldWidget;return o},g.prototype.onWidgetChanged=function(u){this.session._changedWidgets.push(u),this.editor&&this.editor.renderer.updateFull()},g.prototype.measureWidgets=function(u,p){var s=this.session._changedWidgets,o=p.layerConfig;if(!(!s||!s.length)){for(var a=1/0,l=0;l0&&!o[a];)a--;this.firstRow=s.firstRow,this.lastRow=s.lastRow,p.$cursorLayer.config=s;for(var c=a;c<=l;c++){var f=o[c];if(!(!f||!f.el)){if(f.hidden){f.el.style.top=-100-(f.pixelHeight||0)+"px";continue}f._inDocument||(f._inDocument=!0,p.container.appendChild(f.el));var m=p.$cursorLayer.getPixelPosition({row:c,column:0},!0).top;f.coverLine||(m+=s.lineHeight*this.session.getRowLineCount(f.row)),f.el.style.top=m-s.offset+"px";var v=f.coverGutter?0:p.gutterWidth;f.fixedWidth||(v-=p.scrollLeft),f.el.style.left=v+"px",f.fullWidth&&f.screenWidth&&(f.el.style.minWidth=s.width+2*s.padding+"px"),f.fixedWidth?f.el.style.right=p.scrollBar.getWidth()+"px":f.el.style.right=""}}}},g}();r.LineWidgets=d}),ace.define("ace/keyboard/gutter_handler",["require","exports","module","ace/lib/keys","ace/mouse/default_gutter_handler"],function(n,r,h){var i=n("../lib/keys"),d=n("../mouse/default_gutter_handler").GutterTooltip,g=function(){function p(s){this.editor=s,this.gutterLayer=s.renderer.$gutterLayer,this.element=s.renderer.$gutter,this.lines=s.renderer.$gutterLayer.$lines,this.activeRowIndex=null,this.activeLane=null,this.annotationTooltip=new d(this.editor)}return p.prototype.addListener=function(){this.element.addEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.addEventListener("focusout",this.$blurGutter.bind(this)),this.editor.on("mousewheel",this.$blurGutter.bind(this))},p.prototype.removeListener=function(){this.element.removeEventListener("keydown",this.$onGutterKeyDown.bind(this)),this.element.removeEventListener("focusout",this.$blurGutter.bind(this)),this.editor.off("mousewheel",this.$blurGutter.bind(this))},p.prototype.$onGutterKeyDown=function(s){if(this.annotationTooltip.isOpen){s.preventDefault(),s.keyCode===i.escape&&this.annotationTooltip.hideTooltip();return}if(s.target===this.element){if(s.keyCode!=i.enter)return;s.preventDefault();var o=this.editor.getCursorPosition().row;this.editor.isRowVisible(o)||this.editor.scrollToLine(o,!0,!0),setTimeout((function(){var a=this.$rowToRowIndex(this.gutterLayer.$cursorCell.row),l=this.$findNearestFoldWidget(a),c=this.$findNearestAnnotation(a);if(!(l===null&&c===null)){if(l===null&&c!==null){this.activeRowIndex=c,this.activeLane="annotation",this.$focusAnnotation(this.activeRowIndex);return}if(l!==null&&c===null){this.activeRowIndex=l,this.activeLane="fold",this.$focusFoldWidget(this.activeRowIndex);return}if(Math.abs(c-a)0||s+o=0&&this.$isFoldWidgetVisible(s-o))return s-o;if(s+o<=this.lines.getLength()-1&&this.$isFoldWidgetVisible(s+o))return s+o}return null},p.prototype.$findNearestAnnotation=function(s){if(this.$isAnnotationVisible(s))return s;for(var o=0;s-o>0||s+o=0&&this.$isAnnotationVisible(s-o))return s-o;if(s+o<=this.lines.getLength()-1&&this.$isAnnotationVisible(s+o))return s+o}return null},p.prototype.$focusFoldWidget=function(s){if(s!=null){var o=this.$getFoldWidget(s);o.classList.add(this.editor.renderer.keyboardFocusClassName),o.focus()}},p.prototype.$focusAnnotation=function(s){if(s!=null){var o=this.$getAnnotation(s);o.classList.add(this.editor.renderer.keyboardFocusClassName),o.focus()}},p.prototype.$blurFoldWidget=function(s){var o=this.$getFoldWidget(s);o.classList.remove(this.editor.renderer.keyboardFocusClassName),o.blur()},p.prototype.$blurAnnotation=function(s){var o=this.$getAnnotation(s);o.classList.remove(this.editor.renderer.keyboardFocusClassName),o.blur()},p.prototype.$moveFoldWidgetUp=function(){for(var s=this.activeRowIndex;s>0;)if(s--,this.$isFoldWidgetVisible(s)){this.$blurFoldWidget(this.activeRowIndex),this.activeRowIndex=s,this.$focusFoldWidget(this.activeRowIndex);return}},p.prototype.$moveFoldWidgetDown=function(){for(var s=this.activeRowIndex;s0;)if(s--,this.$isAnnotationVisible(s)){this.$blurAnnotation(this.activeRowIndex),this.activeRowIndex=s,this.$focusAnnotation(this.activeRowIndex);return}},p.prototype.$moveAnnotationDown=function(){for(var s=this.activeRowIndex;s=C.length&&(C=void 0),{value:C&&C[T++],done:!C}}};throw new TypeError(S?"Object is not iterable.":"Symbol.iterator is not defined.")},d=n("./lib/oop"),g=n("./lib/dom"),u=n("./lib/lang"),p=n("./lib/useragent"),s=n("./keyboard/textinput").TextInput,o=n("./mouse/mouse_handler").MouseHandler,a=n("./mouse/fold_handler").FoldHandler,l=n("./keyboard/keybinding").KeyBinding,c=n("./edit_session").EditSession,f=n("./search").Search,m=n("./range").Range,v=n("./lib/event_emitter").EventEmitter,y=n("./commands/command_manager").CommandManager,$=n("./commands/default_commands").commands,w=n("./config"),x=n("./token_iterator").TokenIterator,b=n("./line_widgets").LineWidgets,_=n("./keyboard/gutter_handler").GutterKeyboardHandler,R=n("./config").nls,E=n("./clipboard"),L=n("./lib/keys"),M=function(){function C(S,A,T){this.session,this.$toDestroy=[];var I=S.getContainerElement();this.container=I,this.renderer=S,this.id="editor"+ ++C.$uid,this.commands=new y(p.isMac?"mac":"win",$),typeof document=="object"&&(this.textInput=new s(S.getTextAreaContainer(),this),this.renderer.textarea=this.textInput.getElement(),this.$mouseHandler=new o(this),new a(this)),this.keyBinding=new l(this),this.$search=new f().set({wrap:!0}),this.$historyTracker=this.$historyTracker.bind(this),this.commands.on("exec",this.$historyTracker),this.$initOperationListeners(),this._$emitInputEvent=u.delayedCall((function(){this._signal("input",{}),this.session&&!this.session.destroyed&&this.session.bgTokenizer.scheduleStart()}).bind(this)),this.on("change",function(N,O){O._$emitInputEvent.schedule(31)}),this.setSession(A||T&&T.session||new c("")),w.resetOptions(this),T&&this.setOptions(T),w._signal("editor",this)}return C.prototype.$initOperationListeners=function(){this.commands.on("exec",this.startOperation.bind(this),!0),this.commands.on("afterExec",this.endOperation.bind(this),!0),this.$opResetTimer=u.delayedCall(this.endOperation.bind(this,!0)),this.on("change",(function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.docChanged=!0}).bind(this),!0),this.on("changeSelection",(function(){this.curOp||(this.startOperation(),this.curOp.selectionBefore=this.$lastSel),this.curOp.selectionChanged=!0}).bind(this),!0)},C.prototype.startOperation=function(S){if(this.curOp){if(!S||this.curOp.command)return;this.prevOp=this.curOp}S||(this.previousCommand=null,S={}),this.$opResetTimer.schedule(),this.curOp=this.session.curOp={command:S.command||{},args:S.args,scrollTop:this.renderer.scrollTop},this.curOp.selectionBefore=this.selection.toJSON()},C.prototype.endOperation=function(S){if(this.curOp&&this.session){if(S&&S.returnValue===!1||!this.session)return this.curOp=null;if(S==!0&&this.curOp.command&&this.curOp.command.name=="mouse"||(this._signal("beforeEndOperation"),!this.curOp))return;var A=this.curOp.command,T=A&&A.scrollIntoView;if(T){switch(T){case"center-animate":T="animate";case"center":this.renderer.scrollCursorIntoView(null,.5);break;case"animate":case"cursor":this.renderer.scrollCursorIntoView();break;case"selectionPart":var I=this.selection.getRange(),N=this.renderer.layerConfig;(I.start.row>=N.lastRow||I.end.row<=N.firstRow)&&this.renderer.scrollSelectionIntoView(this.selection.anchor,this.selection.lead);break}T=="animate"&&this.renderer.animateScrolling(this.curOp.scrollTop)}var O=this.selection.toJSON();this.curOp.selectionAfter=O,this.$lastSel=this.selection.toJSON(),this.session.getUndoManager().addSelection(O),this.prevOp=this.curOp,this.curOp=null}},C.prototype.$historyTracker=function(S){if(this.$mergeUndoDeltas){var A=this.prevOp,T=this.$mergeableCommands,I=A.command&&S.command.name==A.command.name;if(S.command.name=="insertstring"){var N=S.args;this.mergeNextCommand===void 0&&(this.mergeNextCommand=!0),I=I&&this.mergeNextCommand&&(!/\s/.test(N)||/\s/.test(A.args)),this.mergeNextCommand=!0}else I=I&&T.indexOf(S.command.name)!==-1;this.$mergeUndoDeltas!="always"&&Date.now()-this.sequenceStartTime>2e3&&(I=!1),I?this.session.mergeUndoDeltas=!0:T.indexOf(S.command.name)!==-1&&(this.sequenceStartTime=Date.now())}},C.prototype.setKeyboardHandler=function(S,A){if(S&&typeof S=="string"&&S!="ace"){this.$keybindingId=S;var T=this;w.loadModule(["keybinding",S],function(I){T.$keybindingId==S&&T.keyBinding.setKeyboardHandler(I&&I.handler),A&&A()})}else this.$keybindingId=null,this.keyBinding.setKeyboardHandler(S),A&&A()},C.prototype.getKeyboardHandler=function(){return this.keyBinding.getKeyboardHandler()},C.prototype.setSession=function(S){if(this.session!=S){this.curOp&&this.endOperation(),this.curOp={};var A=this.session;if(A){this.session.off("change",this.$onDocumentChange),this.session.off("changeMode",this.$onChangeMode),this.session.off("tokenizerUpdate",this.$onTokenizerUpdate),this.session.off("changeTabSize",this.$onChangeTabSize),this.session.off("changeWrapLimit",this.$onChangeWrapLimit),this.session.off("changeWrapMode",this.$onChangeWrapMode),this.session.off("changeFold",this.$onChangeFold),this.session.off("changeFrontMarker",this.$onChangeFrontMarker),this.session.off("changeBackMarker",this.$onChangeBackMarker),this.session.off("changeBreakpoint",this.$onChangeBreakpoint),this.session.off("changeAnnotation",this.$onChangeAnnotation),this.session.off("changeOverwrite",this.$onCursorChange),this.session.off("changeScrollTop",this.$onScrollTopChange),this.session.off("changeScrollLeft",this.$onScrollLeftChange);var T=this.session.getSelection();T.off("changeCursor",this.$onCursorChange),T.off("changeSelection",this.$onSelectionChange)}this.session=S,S?(this.$onDocumentChange=this.onDocumentChange.bind(this),S.on("change",this.$onDocumentChange),this.renderer.setSession(S),this.$onChangeMode=this.onChangeMode.bind(this),S.on("changeMode",this.$onChangeMode),this.$onTokenizerUpdate=this.onTokenizerUpdate.bind(this),S.on("tokenizerUpdate",this.$onTokenizerUpdate),this.$onChangeTabSize=this.renderer.onChangeTabSize.bind(this.renderer),S.on("changeTabSize",this.$onChangeTabSize),this.$onChangeWrapLimit=this.onChangeWrapLimit.bind(this),S.on("changeWrapLimit",this.$onChangeWrapLimit),this.$onChangeWrapMode=this.onChangeWrapMode.bind(this),S.on("changeWrapMode",this.$onChangeWrapMode),this.$onChangeFold=this.onChangeFold.bind(this),S.on("changeFold",this.$onChangeFold),this.$onChangeFrontMarker=this.onChangeFrontMarker.bind(this),this.session.on("changeFrontMarker",this.$onChangeFrontMarker),this.$onChangeBackMarker=this.onChangeBackMarker.bind(this),this.session.on("changeBackMarker",this.$onChangeBackMarker),this.$onChangeBreakpoint=this.onChangeBreakpoint.bind(this),this.session.on("changeBreakpoint",this.$onChangeBreakpoint),this.$onChangeAnnotation=this.onChangeAnnotation.bind(this),this.session.on("changeAnnotation",this.$onChangeAnnotation),this.$onCursorChange=this.onCursorChange.bind(this),this.session.on("changeOverwrite",this.$onCursorChange),this.$onScrollTopChange=this.onScrollTopChange.bind(this),this.session.on("changeScrollTop",this.$onScrollTopChange),this.$onScrollLeftChange=this.onScrollLeftChange.bind(this),this.session.on("changeScrollLeft",this.$onScrollLeftChange),this.selection=S.getSelection(),this.selection.on("changeCursor",this.$onCursorChange),this.$onSelectionChange=this.onSelectionChange.bind(this),this.selection.on("changeSelection",this.$onSelectionChange),this.onChangeMode(),this.onCursorChange(),this.onScrollTopChange(),this.onScrollLeftChange(),this.onSelectionChange(),this.onChangeFrontMarker(),this.onChangeBackMarker(),this.onChangeBreakpoint(),this.onChangeAnnotation(),this.session.getUseWrapMode()&&this.renderer.adjustWrapLimit(),this.renderer.updateFull()):(this.selection=null,this.renderer.setSession(S)),this._signal("changeSession",{session:S,oldSession:A}),this.curOp=null,A&&A._signal("changeEditor",{oldEditor:this}),S&&S._signal("changeEditor",{editor:this}),S&&!S.destroyed&&S.bgTokenizer.scheduleStart()}},C.prototype.getSession=function(){return this.session},C.prototype.setValue=function(S,A){return this.session.doc.setValue(S),A?A==1?this.navigateFileEnd():A==-1&&this.navigateFileStart():this.selectAll(),S},C.prototype.getValue=function(){return this.session.getValue()},C.prototype.getSelection=function(){return this.selection},C.prototype.resize=function(S){this.renderer.onResize(S)},C.prototype.setTheme=function(S,A){this.renderer.setTheme(S,A)},C.prototype.getTheme=function(){return this.renderer.getTheme()},C.prototype.setStyle=function(S){this.renderer.setStyle(S)},C.prototype.unsetStyle=function(S){this.renderer.unsetStyle(S)},C.prototype.getFontSize=function(){return this.getOption("fontSize")||g.computedStyle(this.container).fontSize},C.prototype.setFontSize=function(S){this.setOption("fontSize",S)},C.prototype.$highlightBrackets=function(){if(!this.$highlightPending){var S=this;this.$highlightPending=!0,setTimeout(function(){S.$highlightPending=!1;var A=S.session;if(!(!A||A.destroyed)){A.$bracketHighlight&&(A.$bracketHighlight.markerIds.forEach(function(F){A.removeMarker(F)}),A.$bracketHighlight=null);var T=S.getCursorPosition(),I=S.getKeyboardHandler(),N=I&&I.$getDirectionForHighlight&&I.$getDirectionForHighlight(S),O=A.getMatchingBracketRanges(T,N);if(!O){var D=new x(A,T.row,T.column),P=D.getCurrentToken();if(P&&/\b(?:tag-open|tag-name)/.test(P.type)){var B=A.getMatchingTags(T);B&&(O=[B.openTagName.isEmpty()?B.openTag:B.openTagName,B.closeTagName.isEmpty()?B.closeTag:B.closeTagName])}}if(!O&&A.$mode.getMatching&&(O=A.$mode.getMatching(S.session)),!O){S.getHighlightIndentGuides()&&S.renderer.$textLayer.$highlightIndentGuide();return}var j="ace_bracket";Array.isArray(O)?O.length==1&&(j="ace_error_bracket"):O=[O],O.length==2&&(m.comparePoints(O[0].end,O[1].start)==0?O=[m.fromPoints(O[0].start,O[1].end)]:m.comparePoints(O[0].start,O[1].end)==0&&(O=[m.fromPoints(O[1].start,O[0].end)])),A.$bracketHighlight={ranges:O,markerIds:O.map(function(F){return A.addMarker(F,j,"text")})},S.getHighlightIndentGuides()&&S.renderer.$textLayer.$highlightIndentGuide()}},50)}},C.prototype.focus=function(){this.textInput.focus()},C.prototype.isFocused=function(){return this.textInput.isFocused()},C.prototype.blur=function(){this.textInput.blur()},C.prototype.onFocus=function(S){this.$isFocused||(this.$isFocused=!0,this.renderer.showCursor(),this.renderer.visualizeFocus(),this._emit("focus",S))},C.prototype.onBlur=function(S){this.$isFocused&&(this.$isFocused=!1,this.renderer.hideCursor(),this.renderer.visualizeBlur(),this._emit("blur",S))},C.prototype.$cursorChange=function(){this.renderer.updateCursor(),this.$highlightBrackets(),this.$updateHighlightActiveLine()},C.prototype.onDocumentChange=function(S){var A=this.session.$useWrapMode,T=S.start.row==S.end.row?S.end.row:1/0;this.renderer.updateLines(S.start.row,T,A),this._signal("change",S),this.$cursorChange()},C.prototype.onTokenizerUpdate=function(S){var A=S.data;this.renderer.updateLines(A.first,A.last)},C.prototype.onScrollTopChange=function(){this.renderer.scrollToY(this.session.getScrollTop())},C.prototype.onScrollLeftChange=function(){this.renderer.scrollToX(this.session.getScrollLeft())},C.prototype.onCursorChange=function(){this.$cursorChange(),this._signal("changeSelection")},C.prototype.$updateHighlightActiveLine=function(){var S=this.getSession(),A;if(this.$highlightActiveLine&&((this.$selectionStyle!="line"||!this.selection.isMultiLine())&&(A=this.getCursorPosition()),this.renderer.theme&&this.renderer.theme.$selectionColorConflict&&!this.selection.isEmpty()&&(A=!1),this.renderer.$maxLines&&this.session.getLength()===1&&!(this.renderer.$minLines>1)&&(A=!1)),S.$highlightLineMarker&&!A)S.removeMarker(S.$highlightLineMarker.id),S.$highlightLineMarker=null;else if(!S.$highlightLineMarker&&A){var T=new m(A.row,A.column,A.row,1/0);T.id=S.addMarker(T,"ace_active-line","screenLine"),S.$highlightLineMarker=T}else A&&(S.$highlightLineMarker.start.row=A.row,S.$highlightLineMarker.end.row=A.row,S.$highlightLineMarker.start.column=A.column,S._signal("changeBackMarker"))},C.prototype.onSelectionChange=function(S){var A=this.session;if(A.$selectionMarker&&A.removeMarker(A.$selectionMarker),A.$selectionMarker=null,this.selection.isEmpty())this.$updateHighlightActiveLine();else{var T=this.selection.getRange(),I=this.getSelectionStyle();A.$selectionMarker=A.addMarker(T,"ace_selection",I)}var N=this.$highlightSelectedWord&&this.$getSelectionHighLightRegexp();this.session.highlight(N),this._signal("changeSelection")},C.prototype.$getSelectionHighLightRegexp=function(){var S=this.session,A=this.getSelectionRange();if(!(A.isEmpty()||A.isMultiLine())){var T=A.start.column,I=A.end.column,N=S.getLine(A.start.row),O=N.substring(T,I);if(!(O.length>5e3||!/[\w\d]/.test(O))){var D=this.$search.$assembleRegExp({wholeWord:!0,caseSensitive:!0,needle:O}),P=N.substring(T-1,I+1);if(D.test(P))return D}}},C.prototype.onChangeFrontMarker=function(){this.renderer.updateFrontMarkers()},C.prototype.onChangeBackMarker=function(){this.renderer.updateBackMarkers()},C.prototype.onChangeBreakpoint=function(){this.renderer.updateBreakpoints()},C.prototype.onChangeAnnotation=function(){this.renderer.setAnnotations(this.session.getAnnotations())},C.prototype.onChangeMode=function(S){this.renderer.updateText(),this._emit("changeMode",S)},C.prototype.onChangeWrapLimit=function(){this.renderer.updateFull()},C.prototype.onChangeWrapMode=function(){this.renderer.onResize(!0)},C.prototype.onChangeFold=function(){this.$updateHighlightActiveLine(),this.renderer.updateFull()},C.prototype.getSelectedText=function(){return this.session.getTextRange(this.getSelectionRange())},C.prototype.getCopyText=function(){var S=this.getSelectedText(),A=this.session.doc.getNewLineCharacter(),T=!1;if(!S&&this.$copyWithEmptySelection){T=!0;for(var I=this.selection.getAllRanges(),N=0;NF.search(/\S|$/)){var P=F.substr(N.column).search(/\S|$/);T.doc.removeInLine(N.row,N.column,N.column+P)}}this.clearSelection();var B=N.column,j=T.getState(N.row),F=T.getLine(N.row),H=I.checkOutdent(j,F,S);if(T.insert(N,S),O&&O.selection&&(O.selection.length==2?this.selection.setSelectionRange(new m(N.row,B+O.selection[0],N.row,B+O.selection[1])):this.selection.setSelectionRange(new m(N.row+O.selection[0],O.selection[1],N.row+O.selection[2],O.selection[3]))),this.$enableAutoIndent){if(T.getDocument().isNewLine(S)){var G=I.getNextLineIndent(j,F.slice(0,N.column),T.getTabString());T.insert({row:N.row+1,column:0},G)}H&&I.autoOutdent(j,T,N.row)}},C.prototype.autoIndent=function(){for(var S=this.session,A=S.getMode(),T=this.selection.isEmpty()?[new m(0,0,S.doc.getLength()-1,0)]:this.selection.getAllRanges(),I="",N="",O="",D=S.getTabString(),P=0;P0&&(I=S.getState(F-1),N=S.getLine(F-1),O=A.getNextLineIndent(I,N,D));var H=S.getLine(F),G=A.$getIndent(H);if(O!==G){if(G.length>0){var Q=new m(F,0,F,G.length);S.remove(Q)}O.length>0&&S.insert({row:F,column:0},O)}A.autoOutdent(I,S,F)}},C.prototype.onTextInput=function(S,A){if(!A)return this.keyBinding.onTextInput(S);this.startOperation({command:{name:"insertstring"}});var T=this.applyComposition.bind(this,S,A);this.selection.rangeCount?this.forEachSelection(T):T(),this.endOperation()},C.prototype.applyComposition=function(S,A){if(A.extendLeft||A.extendRight){var T=this.selection.getRange();T.start.column-=A.extendLeft,T.end.column+=A.extendRight,T.start.column<0&&(T.start.row--,T.start.column+=this.session.getLine(T.start.row).length+1),this.selection.setRange(T),!S&&!T.isEmpty()&&this.remove()}if((S||!this.selection.isEmpty())&&this.insert(S,!0),A.restoreStart||A.restoreEnd){var T=this.selection.getRange();T.start.column-=A.restoreStart,T.end.column-=A.restoreEnd,this.selection.setRange(T)}},C.prototype.onCommandKey=function(S,A,T){return this.keyBinding.onCommandKey(S,A,T)},C.prototype.setOverwrite=function(S){this.session.setOverwrite(S)},C.prototype.getOverwrite=function(){return this.session.getOverwrite()},C.prototype.toggleOverwrite=function(){this.session.toggleOverwrite()},C.prototype.setScrollSpeed=function(S){this.setOption("scrollSpeed",S)},C.prototype.getScrollSpeed=function(){return this.getOption("scrollSpeed")},C.prototype.setDragDelay=function(S){this.setOption("dragDelay",S)},C.prototype.getDragDelay=function(){return this.getOption("dragDelay")},C.prototype.setSelectionStyle=function(S){this.setOption("selectionStyle",S)},C.prototype.getSelectionStyle=function(){return this.getOption("selectionStyle")},C.prototype.setHighlightActiveLine=function(S){this.setOption("highlightActiveLine",S)},C.prototype.getHighlightActiveLine=function(){return this.getOption("highlightActiveLine")},C.prototype.setHighlightGutterLine=function(S){this.setOption("highlightGutterLine",S)},C.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},C.prototype.setHighlightSelectedWord=function(S){this.setOption("highlightSelectedWord",S)},C.prototype.getHighlightSelectedWord=function(){return this.$highlightSelectedWord},C.prototype.setAnimatedScroll=function(S){this.renderer.setAnimatedScroll(S)},C.prototype.getAnimatedScroll=function(){return this.renderer.getAnimatedScroll()},C.prototype.setShowInvisibles=function(S){this.renderer.setShowInvisibles(S)},C.prototype.getShowInvisibles=function(){return this.renderer.getShowInvisibles()},C.prototype.setDisplayIndentGuides=function(S){this.renderer.setDisplayIndentGuides(S)},C.prototype.getDisplayIndentGuides=function(){return this.renderer.getDisplayIndentGuides()},C.prototype.setHighlightIndentGuides=function(S){this.renderer.setHighlightIndentGuides(S)},C.prototype.getHighlightIndentGuides=function(){return this.renderer.getHighlightIndentGuides()},C.prototype.setShowPrintMargin=function(S){this.renderer.setShowPrintMargin(S)},C.prototype.getShowPrintMargin=function(){return this.renderer.getShowPrintMargin()},C.prototype.setPrintMarginColumn=function(S){this.renderer.setPrintMarginColumn(S)},C.prototype.getPrintMarginColumn=function(){return this.renderer.getPrintMarginColumn()},C.prototype.setReadOnly=function(S){this.setOption("readOnly",S)},C.prototype.getReadOnly=function(){return this.getOption("readOnly")},C.prototype.setBehavioursEnabled=function(S){this.setOption("behavioursEnabled",S)},C.prototype.getBehavioursEnabled=function(){return this.getOption("behavioursEnabled")},C.prototype.setWrapBehavioursEnabled=function(S){this.setOption("wrapBehavioursEnabled",S)},C.prototype.getWrapBehavioursEnabled=function(){return this.getOption("wrapBehavioursEnabled")},C.prototype.setShowFoldWidgets=function(S){this.setOption("showFoldWidgets",S)},C.prototype.getShowFoldWidgets=function(){return this.getOption("showFoldWidgets")},C.prototype.setFadeFoldWidgets=function(S){this.setOption("fadeFoldWidgets",S)},C.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},C.prototype.remove=function(S){this.selection.isEmpty()&&(S=="left"?this.selection.selectLeft():this.selection.selectRight());var A=this.getSelectionRange();if(this.getBehavioursEnabled()){var T=this.session,I=T.getState(A.start.row),N=T.getMode().transformAction(I,"deletion",this,T,A);if(A.end.column===0){var O=T.getTextRange(A);if(O[O.length-1]==` -`){var D=T.getLine(A.end.row);/^\s+$/.test(D)&&(A.end.column=D.length)}}N&&(A=N)}this.session.remove(A),this.clearSelection()},C.prototype.removeWordRight=function(){this.selection.isEmpty()&&this.selection.selectWordRight(),this.session.remove(this.getSelectionRange()),this.clearSelection()},C.prototype.removeWordLeft=function(){this.selection.isEmpty()&&this.selection.selectWordLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},C.prototype.removeToLineStart=function(){this.selection.isEmpty()&&this.selection.selectLineStart(),this.selection.isEmpty()&&this.selection.selectLeft(),this.session.remove(this.getSelectionRange()),this.clearSelection()},C.prototype.removeToLineEnd=function(){this.selection.isEmpty()&&this.selection.selectLineEnd();var S=this.getSelectionRange();S.start.column==S.end.column&&S.start.row==S.end.row&&(S.end.column=0,S.end.row++),this.session.remove(S),this.clearSelection()},C.prototype.splitLine=function(){this.selection.isEmpty()||(this.session.remove(this.getSelectionRange()),this.clearSelection());var S=this.getCursorPosition();this.insert(` -`),this.moveCursorToPosition(S)},C.prototype.setGhostText=function(S,A){this.session.widgetManager||(this.session.widgetManager=new b(this.session),this.session.widgetManager.attach(this)),this.renderer.setGhostText(S,A)},C.prototype.removeGhostText=function(){this.session.widgetManager&&this.renderer.removeGhostText()},C.prototype.transposeLetters=function(){if(this.selection.isEmpty()){var S=this.getCursorPosition(),A=S.column;if(A!==0){var T=this.session.getLine(S.row),I,N;AP.toLowerCase()?1:0});for(var N=new m(0,0,0,0),I=S.first;I<=S.last;I++){var O=A.getLine(I);N.start.row=I,N.end.row=I,N.end.column=O.length,A.replace(N,T[I-S.first])}},C.prototype.toggleCommentLines=function(){var S=this.session.getState(this.getCursorPosition().row),A=this.$getSelectedRows();this.session.getMode().toggleCommentLines(S,this.session,A.first,A.last)},C.prototype.toggleBlockComment=function(){var S=this.getCursorPosition(),A=this.session.getState(S.row),T=this.getSelectionRange();this.session.getMode().toggleBlockComment(A,this.session,T,S)},C.prototype.getNumberAt=function(S,A){var T=/[\-]?[0-9]+(?:\.[0-9]+)?/g;T.lastIndex=0;for(var I=this.session.getLine(S);T.lastIndex=A){var O={value:N[0],start:N.index,end:N.index+N[0].length};return O}}return null},C.prototype.modifyNumber=function(S){var A=this.selection.getCursor().row,T=this.selection.getCursor().column,I=new m(A,T-1,A,T),N=this.session.getTextRange(I);if(!isNaN(parseFloat(N))&&isFinite(N)){var O=this.getNumberAt(A,T);if(O){var D=O.value.indexOf(".")>=0?O.start+O.value.indexOf(".")+1:O.end,P=O.start+O.value.length-D,B=parseFloat(O.value);B*=Math.pow(10,P),D!==O.end&&T=D&&O<=P&&(T=ae,B.selection.clearSelection(),B.moveCursorTo(S,D+I),B.selection.selectTo(S,P+I)),D=P});for(var j=this.$toggleWordPairs,F,H=0;H=P&&D<=B&&G.match(/((?:https?|ftp):\/\/[\S]+)/)){j=G.replace(/[\s:.,'";}\]]+$/,"");break}P=B}}catch(Q){T={error:Q}}finally{try{H&&!H.done&&(I=F.return)&&I.call(F)}finally{if(T)throw T.error}}return j},C.prototype.openLink=function(){var S=this.selection.getCursor(),A=this.findLinkAt(S.row,S.column);return A&&window.open(A,"_blank"),A!=null},C.prototype.removeLines=function(){var S=this.$getSelectedRows();this.session.removeFullLines(S.first,S.last),this.clearSelection()},C.prototype.duplicateSelection=function(){var S=this.selection,A=this.session,T=S.getRange(),I=S.isBackwards();if(T.isEmpty()){var N=T.start.row;A.duplicateLines(N,N)}else{var O=I?T.start:T.end,D=A.insert(O,A.getTextRange(T));T.start=O,T.end=D,S.setSelectionRange(T,I)}},C.prototype.moveLinesDown=function(){this.$moveLines(1,!1)},C.prototype.moveLinesUp=function(){this.$moveLines(-1,!1)},C.prototype.moveText=function(S,A,T){return this.session.moveText(S,A,T)},C.prototype.copyLinesUp=function(){this.$moveLines(-1,!0)},C.prototype.copyLinesDown=function(){this.$moveLines(1,!0)},C.prototype.$moveLines=function(S,A){var T,I,N=this.selection;if(!N.inMultiSelectMode||this.inVirtualSelectionMode){var O=N.toOrientedRange();T=this.$getSelectedRows(O),I=this.session.$moveLines(T.first,T.last,A?0:S),A&&S==-1&&(I=0),O.moveBy(I,0),N.fromOrientedRange(O)}else{var D=N.rangeList.ranges;N.rangeList.detach(this.session),this.inVirtualSelectionMode=!0;for(var P=0,B=0,j=D.length,F=0;FQ+1)break;Q=X.last}for(F--,P=this.session.$moveLines(G,Q,A?0:S),A&&S==-1&&(H=F+1);H<=F;)D[H].moveBy(P,0),H++;A||(P=0),B+=P}N.fromOrientedRange(N.ranges[0]),N.rangeList.attach(this.session),this.inVirtualSelectionMode=!1}},C.prototype.$getSelectedRows=function(S){return S=(S||this.getSelectionRange()).collapseRows(),{first:this.session.getRowFoldStart(S.start.row),last:this.session.getRowFoldEnd(S.end.row)}},C.prototype.onCompositionStart=function(S){this.renderer.showComposition(S)},C.prototype.onCompositionUpdate=function(S){this.renderer.setCompositionText(S)},C.prototype.onCompositionEnd=function(){this.renderer.hideComposition()},C.prototype.getFirstVisibleRow=function(){return this.renderer.getFirstVisibleRow()},C.prototype.getLastVisibleRow=function(){return this.renderer.getLastVisibleRow()},C.prototype.isRowVisible=function(S){return S>=this.getFirstVisibleRow()&&S<=this.getLastVisibleRow()},C.prototype.isRowFullyVisible=function(S){return S>=this.renderer.getFirstFullyVisibleRow()&&S<=this.renderer.getLastFullyVisibleRow()},C.prototype.$getVisibleRowCount=function(){return this.renderer.getScrollBottomRow()-this.renderer.getScrollTopRow()+1},C.prototype.$moveByPage=function(S,A){var T=this.renderer,I=this.renderer.layerConfig,N=S*Math.floor(I.height/I.lineHeight);A===!0?this.selection.$moveSelection(function(){this.moveCursorBy(N,0)}):A===!1&&(this.selection.moveCursorBy(N,0),this.selection.clearSelection());var O=T.scrollTop;T.scrollBy(0,N*I.lineHeight),A!=null&&T.scrollCursorIntoView(null,.5),T.animateScrolling(O)},C.prototype.selectPageDown=function(){this.$moveByPage(1,!0)},C.prototype.selectPageUp=function(){this.$moveByPage(-1,!0)},C.prototype.gotoPageDown=function(){this.$moveByPage(1,!1)},C.prototype.gotoPageUp=function(){this.$moveByPage(-1,!1)},C.prototype.scrollPageDown=function(){this.$moveByPage(1)},C.prototype.scrollPageUp=function(){this.$moveByPage(-1)},C.prototype.scrollToRow=function(S){this.renderer.scrollToRow(S)},C.prototype.scrollToLine=function(S,A,T,I){this.renderer.scrollToLine(S,A,T,I)},C.prototype.centerSelection=function(){var S=this.getSelectionRange(),A={row:Math.floor(S.start.row+(S.end.row-S.start.row)/2),column:Math.floor(S.start.column+(S.end.column-S.start.column)/2)};this.renderer.alignCursor(A,.5)},C.prototype.getCursorPosition=function(){return this.selection.getCursor()},C.prototype.getCursorPositionScreen=function(){return this.session.documentToScreenPosition(this.getCursorPosition())},C.prototype.getSelectionRange=function(){return this.selection.getRange()},C.prototype.selectAll=function(){this.selection.selectAll()},C.prototype.clearSelection=function(){this.selection.clearSelection()},C.prototype.moveCursorTo=function(S,A){this.selection.moveCursorTo(S,A)},C.prototype.moveCursorToPosition=function(S){this.selection.moveCursorToPosition(S)},C.prototype.jumpToMatching=function(S,A){var T=this.getCursorPosition(),I=new x(this.session,T.row,T.column),N=I.getCurrentToken(),O=0;N&&N.type.indexOf("tag-name")!==-1&&(N=I.stepBackward());var D=N||I.stepForward();if(D){var P,B=!1,j={},F=T.column-D.start,H,G={")":"(","(":"(","]":"[","[":"[","{":"{","}":"{"};do{if(D.value.match(/[{}()\[\]]/g)){for(;F1?j[D.value]++:N.value==="=0;--O)this.$tryReplace(T[O],S)&&I++;return this.selection.setSelectionRange(N),I},C.prototype.$tryReplace=function(S,A){var T=this.session.getTextRange(S);return A=this.$search.replace(T,A),A!==null?(S.end=this.session.replace(S,A),S):null},C.prototype.getLastSearchOptions=function(){return this.$search.getOptions()},C.prototype.find=function(S,A,T){A||(A={}),typeof S=="string"||S instanceof RegExp?A.needle=S:typeof S=="object"&&d.mixin(A,S);var I=this.selection.getRange();A.needle==null&&(S=this.session.getTextRange(I)||this.$search.$options.needle,S||(I=this.session.getWordRange(I.start.row,I.start.column),S=this.session.getTextRange(I)),this.$search.set({needle:S})),this.$search.set(A),A.start||this.$search.set({start:I});var N=this.$search.find(this.session);if(A.preventScroll)return N;if(N)return this.revealRange(N,T),N;A.backwards?I.start=I.end:I.end=I.start,this.selection.setRange(I)},C.prototype.findNext=function(S,A){this.find({skipCurrent:!0,backwards:!1},S,A)},C.prototype.findPrevious=function(S,A){this.find(S,{skipCurrent:!0,backwards:!0},A)},C.prototype.revealRange=function(S,A){this.session.unfold(S),this.selection.setSelectionRange(S);var T=this.renderer.scrollTop;this.renderer.scrollSelectionIntoView(S.start,S.end,.5),A!==!1&&this.renderer.animateScrolling(T)},C.prototype.undo=function(){this.session.getUndoManager().undo(this.session),this.renderer.scrollCursorIntoView(null,.5)},C.prototype.redo=function(){this.session.getUndoManager().redo(this.session),this.renderer.scrollCursorIntoView(null,.5)},C.prototype.destroy=function(){this.$toDestroy&&(this.$toDestroy.forEach(function(S){S.destroy()}),this.$toDestroy=null),this.$mouseHandler&&this.$mouseHandler.destroy(),this.renderer.destroy(),this._signal("destroy",this),this.session&&this.session.destroy(),this._$emitInputEvent&&this._$emitInputEvent.cancel(),this.removeAllListeners()},C.prototype.setAutoScrollEditorIntoView=function(S){if(S){var A,T=this,I=!1;this.$scrollAnchor||(this.$scrollAnchor=document.createElement("div"));var N=this.$scrollAnchor;N.style.cssText="position:absolute",this.container.insertBefore(N,this.container.firstChild);var O=this.on("changeSelection",function(){I=!0}),D=this.renderer.on("beforeRender",function(){I&&(A=T.renderer.container.getBoundingClientRect())}),P=this.renderer.on("afterRender",function(){if(I&&A&&(T.isFocused()||T.searchBox&&T.searchBox.isFocused())){var B=T.renderer,j=B.$cursorLayer.$pixelPos,F=B.layerConfig,H=j.top-F.offset;j.top>=0&&H+A.top<0?I=!0:j.topwindow.innerHeight?I=!1:I=null,I!=null&&(N.style.top=H+"px",N.style.left=j.left+"px",N.style.height=F.lineHeight+"px",N.scrollIntoView(I)),I=A=null}});this.setAutoScrollEditorIntoView=function(B){B||(delete this.setAutoScrollEditorIntoView,this.off("changeSelection",O),this.renderer.off("afterRender",P),this.renderer.off("beforeRender",D))}}},C.prototype.$resetCursorStyle=function(){var S=this.$cursorStyle||"ace",A=this.renderer.$cursorLayer;A&&(A.setSmoothBlinking(/smooth/.test(S)),A.isBlinking=!this.$readOnly&&S!="wide",g.setCssClass(A.element,"ace_slim-cursors",/slim/.test(S)))},C.prototype.prompt=function(S,A,T){var I=this;w.loadModule("ace/ext/prompt",function(N){N.prompt(I,S,A,T)})},C}();M.$uid=0,M.prototype.curOp=null,M.prototype.prevOp={},M.prototype.$mergeableCommands=["backspace","del","insertstring"],M.prototype.$toggleWordPairs=[["first","last"],["true","false"],["yes","no"],["width","height"],["top","bottom"],["right","left"],["on","off"],["x","y"],["get","set"],["max","min"],["horizontal","vertical"],["show","hide"],["add","remove"],["up","down"],["before","after"],["even","odd"],["in","out"],["inside","outside"],["next","previous"],["increase","decrease"],["attach","detach"],["&&","||"],["==","!="]],d.implement(M.prototype,v),w.defineOptions(M.prototype,"editor",{selectionStyle:{set:function(C){this.onSelectionChange(),this._signal("changeSelectionStyle",{data:C})},initialValue:"line"},highlightActiveLine:{set:function(){this.$updateHighlightActiveLine()},initialValue:!0},highlightSelectedWord:{set:function(C){this.$onSelectionChange()},initialValue:!0},readOnly:{set:function(C){this.textInput.setReadOnly(C),this.$resetCursorStyle()},initialValue:!1},copyWithEmptySelection:{set:function(C){this.textInput.setCopyWithEmptySelection(C)},initialValue:!1},cursorStyle:{set:function(C){this.$resetCursorStyle()},values:["ace","slim","smooth","wide"],initialValue:"ace"},mergeUndoDeltas:{values:[!1,!0,"always"],initialValue:!0},behavioursEnabled:{initialValue:!0},wrapBehavioursEnabled:{initialValue:!0},enableAutoIndent:{initialValue:!0},autoScrollEditorIntoView:{set:function(C){this.setAutoScrollEditorIntoView(C)}},keyboardHandler:{set:function(C){this.setKeyboardHandler(C)},get:function(){return this.$keybindingId},handlesSet:!0},value:{set:function(C){this.session.setValue(C)},get:function(){return this.getValue()},handlesSet:!0,hidden:!0},session:{set:function(C){this.setSession(C)},get:function(){return this.session},handlesSet:!0,hidden:!0},showLineNumbers:{set:function(C){this.renderer.$gutterLayer.setShowLineNumbers(C),this.renderer.$loop.schedule(this.renderer.CHANGE_GUTTER),C&&this.$relativeLineNumbers?k.attach(this):k.detach(this)},initialValue:!0},relativeLineNumbers:{set:function(C){this.$showLineNumbers&&C?k.attach(this):k.detach(this)}},placeholder:{set:function(C){this.$updatePlaceholder||(this.$updatePlaceholder=(function(){var S=this.session&&(this.renderer.$composition||this.session.getLength()>1||this.session.getLine(0).length>0);if(S&&this.renderer.placeholderNode)this.renderer.off("afterRender",this.$updatePlaceholder),g.removeCssClass(this.container,"ace_hasPlaceholder"),this.renderer.placeholderNode.remove(),this.renderer.placeholderNode=null;else if(!S&&!this.renderer.placeholderNode){this.renderer.on("afterRender",this.$updatePlaceholder),g.addCssClass(this.container,"ace_hasPlaceholder");var A=g.createElement("div");A.className="ace_placeholder",A.textContent=this.$placeholder||"",this.renderer.placeholderNode=A,this.renderer.content.appendChild(this.renderer.placeholderNode)}else!S&&this.renderer.placeholderNode&&(this.renderer.placeholderNode.textContent=this.$placeholder||"")}).bind(this),this.on("input",this.$updatePlaceholder)),this.$updatePlaceholder()}},enableKeyboardAccessibility:{set:function(C){var S={name:"blurTextInput",description:"Set focus to the editor content div to allow tabbing through the page",bindKey:"Esc",exec:function(I){I.blur(),I.renderer.scroller.focus()},readOnly:!0},A=function(I){if(I.target==this.renderer.scroller&&I.keyCode===L.enter){I.preventDefault();var N=this.getCursorPosition().row;this.isRowVisible(N)||this.scrollToLine(N,!0,!0),this.focus()}},T;C?(this.renderer.enableKeyboardAccessibility=!0,this.renderer.keyboardFocusClassName="ace_keyboard-focus",this.textInput.getElement().setAttribute("tabindex",-1),this.textInput.setNumberOfExtraLines(p.isWin?3:0),this.renderer.scroller.setAttribute("tabindex",0),this.renderer.scroller.setAttribute("role","group"),this.renderer.scroller.setAttribute("aria-roledescription",R("editor.scroller.aria-roledescription","editor")),this.renderer.scroller.classList.add(this.renderer.keyboardFocusClassName),this.renderer.scroller.setAttribute("aria-label",R("editor.scroller.aria-label","Editor content, press Enter to start editing, press Escape to exit")),this.renderer.scroller.addEventListener("keyup",A.bind(this)),this.commands.addCommand(S),this.renderer.$gutter.setAttribute("tabindex",0),this.renderer.$gutter.setAttribute("aria-hidden",!1),this.renderer.$gutter.setAttribute("role","group"),this.renderer.$gutter.setAttribute("aria-roledescription",R("editor.gutter.aria-roledescription","editor")),this.renderer.$gutter.setAttribute("aria-label",R("editor.gutter.aria-label","Editor gutter, press Enter to interact with controls using arrow keys, press Escape to exit")),this.renderer.$gutter.classList.add(this.renderer.keyboardFocusClassName),this.renderer.content.setAttribute("aria-hidden",!0),T||(T=new _(this)),T.addListener(),this.textInput.setAriaOptions({setLabel:!0})):(this.renderer.enableKeyboardAccessibility=!1,this.textInput.getElement().setAttribute("tabindex",0),this.textInput.setNumberOfExtraLines(0),this.renderer.scroller.setAttribute("tabindex",-1),this.renderer.scroller.removeAttribute("role"),this.renderer.scroller.removeAttribute("aria-roledescription"),this.renderer.scroller.classList.remove(this.renderer.keyboardFocusClassName),this.renderer.scroller.removeAttribute("aria-label"),this.renderer.scroller.removeEventListener("keyup",A.bind(this)),this.commands.removeCommand(S),this.renderer.content.removeAttribute("aria-hidden"),this.renderer.$gutter.setAttribute("tabindex",-1),this.renderer.$gutter.setAttribute("aria-hidden",!0),this.renderer.$gutter.removeAttribute("role"),this.renderer.$gutter.removeAttribute("aria-roledescription"),this.renderer.$gutter.removeAttribute("aria-label"),this.renderer.$gutter.classList.remove(this.renderer.keyboardFocusClassName),T&&T.removeListener())},initialValue:!1},textInputAriaLabel:{set:function(C){this.$textInputAriaLabel=C},initialValue:""},enableMobileMenu:{set:function(C){this.$enableMobileMenu=C},initialValue:!0},customScrollbar:"renderer",hScrollBarAlwaysVisible:"renderer",vScrollBarAlwaysVisible:"renderer",highlightGutterLine:"renderer",animatedScroll:"renderer",showInvisibles:"renderer",showPrintMargin:"renderer",printMarginColumn:"renderer",printMargin:"renderer",fadeFoldWidgets:"renderer",showFoldWidgets:"renderer",displayIndentGuides:"renderer",highlightIndentGuides:"renderer",showGutter:"renderer",fontSize:"renderer",fontFamily:"renderer",maxLines:"renderer",minLines:"renderer",scrollPastEnd:"renderer",fixedWidthGutter:"renderer",theme:"renderer",hasCssTransforms:"renderer",maxPixelHeight:"renderer",useTextareaForIME:"renderer",useResizeObserver:"renderer",useSvgGutterIcons:"renderer",showFoldedAnnotations:"renderer",scrollSpeed:"$mouseHandler",dragDelay:"$mouseHandler",dragEnabled:"$mouseHandler",focusTimeout:"$mouseHandler",tooltipFollowsMouse:"$mouseHandler",firstLineNumber:"session",overwrite:"session",newLineMode:"session",useWorker:"session",useSoftTabs:"session",navigateWithinSoftTabs:"session",tabSize:"session",wrap:"session",indentedSoftWrap:"session",foldStyle:"session",mode:"session"});var k={getText:function(C,S){return(Math.abs(C.selection.lead.row-S)||S+1+(S<9?"\xB7":""))+""},getWidth:function(C,S,A){return Math.max(S.toString().length,(A.lastRow+1).toString().length,2)*A.characterWidth},update:function(C,S){S.renderer.$loop.schedule(S.renderer.CHANGE_GUTTER)},attach:function(C){C.renderer.$gutterLayer.$renderer=this,C.on("changeSelection",this.update),this.update(null,C)},detach:function(C){C.renderer.$gutterLayer.$renderer==this&&(C.renderer.$gutterLayer.$renderer=null),C.off("changeSelection",this.update),this.update(null,C)}};r.Editor=M}),ace.define("ace/layer/lines",["require","exports","module","ace/lib/dom"],function(n,r,h){var i=n("../lib/dom"),d=function(){function g(u,p){this.element=u,this.canvasHeight=p||5e5,this.element.style.height=this.canvasHeight*2+"px",this.cells=[],this.cellCache=[],this.$offsetCoefficient=0}return g.prototype.moveContainer=function(u){i.translate(this.element,0,-(u.firstRowScreen*u.lineHeight%this.canvasHeight)-u.offset*this.$offsetCoefficient)},g.prototype.pageChanged=function(u,p){return Math.floor(u.firstRowScreen*u.lineHeight/this.canvasHeight)!==Math.floor(p.firstRowScreen*p.lineHeight/this.canvasHeight)},g.prototype.computeLineTop=function(u,p,s){var o=p.firstRowScreen*p.lineHeight,a=Math.floor(o/this.canvasHeight),l=s.documentToScreenRow(u,0)*p.lineHeight;return l-a*this.canvasHeight},g.prototype.computeLineHeight=function(u,p,s){return p.lineHeight*s.getRowLineCount(u)},g.prototype.getLength=function(){return this.cells.length},g.prototype.get=function(u){return this.cells[u]},g.prototype.shift=function(){this.$cacheCell(this.cells.shift())},g.prototype.pop=function(){this.$cacheCell(this.cells.pop())},g.prototype.push=function(u){if(Array.isArray(u)){this.cells.push.apply(this.cells,u);for(var p=i.createFragment(this.element),s=0;s$&&(b=y.end.row+1,y=f.getNextFoldLine(b,y),$=y?y.start.row:1/0),b>v){for(;this.$lines.getLength()>x+1;)this.$lines.pop();break}w=this.$lines.get(++x),w?w.row=b:(w=this.$lines.createCell(b,c,this.session,a),this.$lines.push(w)),this.$renderCell(w,c,y,b),b++}this._signal("afterRender"),this.$updateGutterWidth(c)},l.prototype.$updateGutterWidth=function(c){var f=this.session,m=f.gutterRenderer||this.$renderer,v=f.$firstLineNumber,y=this.$lines.last()?this.$lines.last().text:"";(this.$fixedWidth||f.$useWrapMode)&&(y=f.getLength()+v-1);var $=m?m.getWidth(f,y,c):y.toString().length*c.characterWidth,w=this.$padding||this.$computePadding();$+=w.left+w.right,$!==this.gutterWidth&&!isNaN($)&&(this.gutterWidth=$,this.element.parentNode.style.width=this.element.style.width=Math.ceil(this.gutterWidth)+"px",this._signal("changeGutterWidth",$))},l.prototype.$updateCursorRow=function(){if(this.$highlightGutterLine){var c=this.session.selection.getCursor();this.$cursorRow!==c.row&&(this.$cursorRow=c.row)}},l.prototype.updateLineHighlight=function(){if(this.$highlightGutterLine){var c=this.session.selection.cursor.row;if(this.$cursorRow=c,!(this.$cursorCell&&this.$cursorCell.row==c)){this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ",""));var f=this.$lines.cells;this.$cursorCell=null;for(var m=0;m=this.$cursorRow){if(v.row>this.$cursorRow){var y=this.session.getFoldLine(this.$cursorRow);if(m>0&&y&&y.start.row==f[m-1].row)v=f[m-1];else break}v.element.className="ace_gutter-active-line "+v.element.className,this.$cursorCell=v;break}}}}},l.prototype.scrollLines=function(c){var f=this.config;if(this.config=c,this.$updateCursorRow(),this.$lines.pageChanged(f,c))return this.update(c);this.$lines.moveContainer(c);var m=Math.min(c.lastRow+c.gutterOffset,this.session.getLength()-1),v=this.oldLastRow;if(this.oldLastRow=m,!f||v0;y--)this.$lines.shift();if(v>m)for(var y=this.session.getFoldedRowCount(m+1,v);y>0;y--)this.$lines.pop();c.firstRowv&&this.$lines.push(this.$renderLines(c,v+1,m)),this.updateLineHighlight(),this._signal("afterRender"),this.$updateGutterWidth(c)},l.prototype.$renderLines=function(c,f,m){for(var v=[],y=f,$=this.session.getNextFoldLine(y),w=$?$.start.row:1/0;y>w&&(y=$.end.row+1,$=this.session.getNextFoldLine(y,$),w=$?$.start.row:1/0),!(y>m);){var x=this.$lines.createCell(y,c,this.session,a);this.$renderCell(x,c,$,y),v.push(x),y++}return v},l.prototype.$renderCell=function(c,f,m,v){var y=c.element,$=this.session,w=y.childNodes[0],x=y.childNodes[1],b=y.childNodes[2],_=b.firstChild,R=$.$firstLineNumber,E=$.$breakpoints,L=$.$decorations,M=$.gutterRenderer||this.$renderer,k=this.$showFoldWidgets&&$.foldWidgets,C=m?m.start.row:Number.MAX_VALUE,S=f.lineHeight+"px",A=this.$useSvgGutterIcons?"ace_gutter-cell_svg-icons ":"ace_gutter-cell ",T=this.$useSvgGutterIcons?"ace_icon_svg":"ace_icon",I=(M?M.getText($,v):v+R).toString();if(this.$highlightGutterLine&&(v==this.$cursorRow||m&&v=C&&this.$cursorRow<=m.end.row)&&(A+="ace_gutter-active-line ",this.$cursorCell!=c&&(this.$cursorCell&&(this.$cursorCell.element.className=this.$cursorCell.element.className.replace("ace_gutter-active-line ","")),this.$cursorCell=c)),E[v]&&(A+=E[v]),L[v]&&(A+=L[v]),this.$annotations[v]&&v!==C&&(A+=this.$annotations[v].className),k){var N=k[v];N==null&&(N=k[v]=$.getFoldWidget(v))}if(N){var O="ace_fold-widget ace_"+N,D=N=="start"&&v==C&&vm.right-f.right)return"foldWidgets"},l}();o.prototype.$fixedWidth=!1,o.prototype.$highlightGutterLine=!0,o.prototype.$renderer="",o.prototype.$showLineNumbers=!0,o.prototype.$showFoldWidgets=!0,d.implement(o.prototype,u);function a(l){var c=document.createTextNode("");l.appendChild(c);var f=i.createElement("span");l.appendChild(f);var m=i.createElement("span");l.appendChild(m);var v=i.createElement("span");return m.appendChild(v),l}r.Gutter=o}),ace.define("ace/layer/marker",["require","exports","module","ace/range","ace/lib/dom"],function(n,r,h){var i=n("../range").Range,d=n("../lib/dom"),g=function(){function p(s){this.element=d.createElement("div"),this.element.className="ace_layer ace_marker-layer",s.appendChild(this.element)}return p.prototype.setPadding=function(s){this.$padding=s},p.prototype.setSession=function(s){this.session=s},p.prototype.setMarkers=function(s){this.markers=s},p.prototype.elt=function(s,o){var a=this.i!=-1&&this.element.childNodes[this.i];a?this.i++:(a=document.createElement("div"),this.element.appendChild(a),this.i=-1),a.style.cssText=o,a.className=s},p.prototype.update=function(s){if(s){this.config=s,this.i=0;var o;for(var a in this.markers){var l=this.markers[a];if(!l.range){l.update(o,this,this.session,s);continue}var c=l.range.clipRows(s.firstRow,s.lastRow);if(!c.isEmpty())if(c=c.toScreenRange(this.session),l.renderer){var f=this.$getTop(c.start.row,s),m=this.$padding+c.start.column*s.characterWidth;l.renderer(o,c,m,f,s)}else l.type=="fullLine"?this.drawFullLineMarker(o,c,l.clazz,s):l.type=="screenLine"?this.drawScreenLineMarker(o,c,l.clazz,s):c.isMultiLine()?l.type=="text"?this.drawTextMarker(o,c,l.clazz,s):this.drawMultiLineMarker(o,c,l.clazz,s):this.drawSingleLineMarker(o,c,l.clazz+" ace_start ace_br15",s)}if(this.i!=-1)for(;this.ix,y==v),l,y==v?0:1,c)},p.prototype.drawMultiLineMarker=function(s,o,a,l,c){var f=this.$padding,m=l.lineHeight,v=this.$getTop(o.start.row,l),y=f+o.start.column*l.characterWidth;if(c=c||"",this.session.$bidiHandler.isBidiRow(o.start.row)){var $=o.clone();$.end.row=$.start.row,$.end.column=this.session.getLine($.start.row).length,this.drawBidiSingleLineMarker(s,$,a+" ace_br1 ace_start",l,null,c)}else this.elt(a+" ace_br1 ace_start","height:"+m+"px;right:"+f+"px;top:"+v+"px;left:"+y+"px;"+(c||""));if(this.session.$bidiHandler.isBidiRow(o.end.row)){var $=o.clone();$.start.row=$.end.row,$.start.column=0,this.drawBidiSingleLineMarker(s,$,a+" ace_br12",l,null,c)}else{v=this.$getTop(o.end.row,l);var w=o.end.column*l.characterWidth;this.elt(a+" ace_br12","height:"+m+"px;width:"+w+"px;top:"+v+"px;left:"+f+"px;"+(c||""))}if(m=(o.end.row-o.start.row-1)*l.lineHeight,!(m<=0)){v=this.$getTop(o.start.row+1,l);var x=(o.start.column?1:0)|(o.end.column?0:8);this.elt(a+(x?" ace_br"+x:""),"height:"+m+"px;right:"+f+"px;top:"+v+"px;left:"+f+"px;"+(c||""))}},p.prototype.drawSingleLineMarker=function(s,o,a,l,c,f){if(this.session.$bidiHandler.isBidiRow(o.start.row))return this.drawBidiSingleLineMarker(s,o,a,l,c,f);var m=l.lineHeight,v=(o.end.column+(c||0)-o.start.column)*l.characterWidth,y=this.$getTop(o.start.row,l),$=this.$padding+o.start.column*l.characterWidth;this.elt(a,"height:"+m+"px;width:"+v+"px;top:"+y+"px;left:"+$+"px;"+(f||""))},p.prototype.drawBidiSingleLineMarker=function(s,o,a,l,c,f){var m=l.lineHeight,v=this.$getTop(o.start.row,l),y=this.$padding,$=this.session.$bidiHandler.getSelections(o.start.column,o.end.column);$.forEach(function(w){this.elt(a,"height:"+m+"px;width:"+(w.width+(c||0))+"px;top:"+v+"px;left:"+(y+w.left)+"px;"+(f||""))},this)},p.prototype.drawFullLineMarker=function(s,o,a,l,c){var f=this.$getTop(o.start.row,l),m=l.lineHeight;o.start.row!=o.end.row&&(m+=this.$getTop(o.end.row,l)-f),this.elt(a,"height:"+m+"px;top:"+f+"px;left:0;right:0;"+(c||""))},p.prototype.drawScreenLineMarker=function(s,o,a,l,c){var f=this.$getTop(o.start.row,l),m=l.lineHeight;this.elt(a,"height:"+m+"px;top:"+f+"px;left:0;right:0;"+(c||""))},p}();g.prototype.$padding=0;function u(p,s,o,a){return(p?1:0)|(s?2:0)|(o?4:0)|(a?8:0)}r.Marker=g}),ace.define("ace/layer/text_util",["require","exports","module"],function(n,r,h){var i=new Set(["text","rparen","lparen"]);r.isTextToken=function(d){return i.has(d)}}),ace.define("ace/layer/text",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/layer/lines","ace/lib/event_emitter","ace/config","ace/layer/text_util"],function(n,r,h){var i=n("../lib/oop"),d=n("../lib/dom"),g=n("../lib/lang"),u=n("./lines").Lines,p=n("../lib/event_emitter").EventEmitter,s=n("../config").nls,o=n("./text_util").isTextToken,a=function(){function l(c){this.dom=d,this.element=this.dom.createElement("div"),this.element.className="ace_layer ace_text-layer",c.appendChild(this.element),this.$updateEolChar=this.$updateEolChar.bind(this),this.$lines=new u(this.element)}return l.prototype.$updateEolChar=function(){var c=this.session.doc,f=c.getNewLineCharacter()==` -`&&c.getNewLineMode()!="windows",m=f?this.EOL_CHAR_LF:this.EOL_CHAR_CRLF;if(this.EOL_CHAR!=m)return this.EOL_CHAR=m,!0},l.prototype.setPadding=function(c){this.$padding=c,this.element.style.margin="0 "+c+"px"},l.prototype.getLineHeight=function(){return this.$fontMetrics.$characterSize.height||0},l.prototype.getCharacterWidth=function(){return this.$fontMetrics.$characterSize.width||0},l.prototype.$setFontMetrics=function(c){this.$fontMetrics=c,this.$fontMetrics.on("changeCharacterSize",(function(f){this._signal("changeCharacterSize",f)}).bind(this)),this.$pollSizeChanges()},l.prototype.checkForSizeChanges=function(){this.$fontMetrics.checkForSizeChanges()},l.prototype.$pollSizeChanges=function(){return this.$pollSizeChangesTimer=this.$fontMetrics.$pollSizeChanges()},l.prototype.setSession=function(c){this.session=c,c&&this.$computeTabString()},l.prototype.setShowInvisibles=function(c){return this.showInvisibles==c?!1:(this.showInvisibles=c,typeof c=="string"?(this.showSpaces=/tab/i.test(c),this.showTabs=/space/i.test(c),this.showEOL=/eol/i.test(c)):this.showSpaces=this.showTabs=this.showEOL=c,this.$computeTabString(),!0)},l.prototype.setDisplayIndentGuides=function(c){return this.displayIndentGuides==c?!1:(this.displayIndentGuides=c,this.$computeTabString(),!0)},l.prototype.setHighlightIndentGuides=function(c){return this.$highlightIndentGuides===c?!1:(this.$highlightIndentGuides=c,c)},l.prototype.$computeTabString=function(){var c=this.session.getTabSize();this.tabSize=c;for(var f=this.$tabStrings=[0],m=1;mR&&(x=b.end.row+1,b=this.session.getNextFoldLine(x,b),R=b?b.start.row:1/0),!(x>y);){var E=$[w++];if(E){this.dom.removeChildren(E),this.$renderLine(E,x,x==R?b:!1),_&&(E.style.top=this.$lines.computeLineTop(x,c,this.session)+"px");var L=c.lineHeight*this.session.getRowLength(x)+"px";E.style.height!=L&&(_=!0,E.style.height=L)}x++}if(_)for(;w0;y--)this.$lines.shift();if(f.lastRow>c.lastRow)for(var y=this.session.getFoldedRowCount(c.lastRow+1,f.lastRow);y>0;y--)this.$lines.pop();c.firstRowf.lastRow&&this.$lines.push(this.$renderLinesFragment(c,f.lastRow+1,c.lastRow)),this.$highlightIndentGuide()},l.prototype.$renderLinesFragment=function(c,f,m){for(var v=[],y=f,$=this.session.getNextFoldLine(y),w=$?$.start.row:1/0;y>w&&(y=$.end.row+1,$=this.session.getNextFoldLine(y,$),w=$?$.start.row:1/0),!(y>m);){var x=this.$lines.createCell(y,c,this.session),b=x.element;this.dom.removeChildren(b),d.setStyle(b.style,"height",this.$lines.computeLineHeight(y,c,this.session)+"px"),d.setStyle(b.style,"top",this.$lines.computeLineTop(y,c,this.session)+"px"),this.$renderLine(b,y,y==w?$:!1),this.$useLineGroups()?b.className="ace_line_group":b.className="ace_line",v.push(x),y++}return v},l.prototype.update=function(c){this.$lines.moveContainer(c),this.config=c;for(var f=c.firstRow,m=c.lastRow,v=this.$lines;v.getLength();)v.pop();v.push(this.$renderLinesFragment(c,f,m))},l.prototype.$renderToken=function(c,f,m,v){for(var y=this,$=/(\t)|( +)|([\x00-\x1f\x80-\xa0\xad\u1680\u180E\u2000-\u200f\u2028\u2029\u202F\u205F\uFEFF\uFFF9-\uFFFC\u2066\u2067\u2068\u202A\u202B\u202D\u202E\u202C\u2069]+)|(\u3000)|([\u1100-\u115F\u11A3-\u11A7\u11FA-\u11FF\u2329-\u232A\u2E80-\u2E99\u2E9B-\u2EF3\u2F00-\u2FD5\u2FF0-\u2FFB\u3001-\u303E\u3041-\u3096\u3099-\u30FF\u3105-\u312D\u3131-\u318E\u3190-\u31BA\u31C0-\u31E3\u31F0-\u321E\u3220-\u3247\u3250-\u32FE\u3300-\u4DBF\u4E00-\uA48C\uA490-\uA4C6\uA960-\uA97C\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFAFF\uFE10-\uFE19\uFE30-\uFE52\uFE54-\uFE66\uFE68-\uFE6B\uFF01-\uFF60\uFFE0-\uFFE6]|[\uD800-\uDBFF][\uDC00-\uDFFF])/g,w=this.dom.createFragment(this.element),x,b=0;x=$.exec(v);){var _=x[1],R=x[2],E=x[3],L=x[4],M=x[5];if(!(!y.showSpaces&&R)){var k=b!=x.index?v.slice(b,x.index):"";if(b=x.index+x[0].length,k&&w.appendChild(this.dom.createTextNode(k,this.element)),_){var C=y.session.getScreenTabSize(f+x.index);w.appendChild(y.$tabStrings[C].cloneNode(!0)),f+=C-1}else if(R)if(y.showSpaces){var S=this.dom.createElement("span");S.className="ace_invisible ace_invisible_space",S.textContent=g.stringRepeat(y.SPACE_CHAR,R.length),w.appendChild(S)}else w.appendChild(this.dom.createTextNode(R,this.element));else if(E){var S=this.dom.createElement("span");S.className="ace_invisible ace_invisible_space ace_invalid",S.textContent=g.stringRepeat(y.SPACE_CHAR,E.length),w.appendChild(S)}else if(L){f+=1;var S=this.dom.createElement("span");S.style.width=y.config.characterWidth*2+"px",S.className=y.showSpaces?"ace_cjk ace_invisible ace_invisible_space":"ace_cjk",S.textContent=y.showSpaces?y.SPACE_CHAR:L,w.appendChild(S)}else if(M){f+=1;var S=this.dom.createElement("span");S.style.width=y.config.characterWidth*2+"px",S.className="ace_cjk",S.textContent=M,w.appendChild(S)}}}if(w.appendChild(this.dom.createTextNode(b?v.slice(b):v,this.element)),o(m.type))c.appendChild(w);else{var A="ace_"+m.type.replace(/\./g," ace_"),S=this.dom.createElement("span");m.type=="fold"&&(S.style.width=m.value.length*this.config.characterWidth+"px",S.setAttribute("title",s("inline-fold.closed.title","Unfold code"))),S.className=A,S.appendChild(w),c.appendChild(S)}return f+v.length},l.prototype.renderIndentGuide=function(c,f,m){var v=f.search(this.$indentGuideRe);if(v<=0||v>=m)return f;if(f[0]==" "){v-=v%this.tabSize;for(var y=v/this.tabSize,$=0;$$[w].start.row?this.$highlightIndentGuideMarker.dir=-1:this.$highlightIndentGuideMarker.dir=1;break}}if(!this.$highlightIndentGuideMarker.end&&c[f.row]!==""&&f.column===c[f.row].length){this.$highlightIndentGuideMarker.dir=1;for(var w=f.row+1;w0){for(var y=0;y=this.$highlightIndentGuideMarker.start+1){if(v.row>=this.$highlightIndentGuideMarker.end)break;this.$setIndentGuideActive(v,f)}}else for(var m=c.length-1;m>=0;m--){var v=c[m];if(this.$highlightIndentGuideMarker.end&&v.row=$;)w=this.$renderToken(x,w,_,R.substring(0,$-v)),R=R.substring($-v),v=$,x=this.$createLineElement(),c.appendChild(x),x.appendChild(this.dom.createTextNode(g.stringRepeat("\xA0",m.indent),this.element)),y++,w=0,$=m[y]||Number.MAX_VALUE;R.length!=0&&(v+=R.length,w=this.$renderToken(x,w,_,R))}}m[m.length-1]>this.MAX_LINE_LENGTH&&this.$renderOverflowMessage(x,w,null,"",!0)},l.prototype.$renderSimpleLine=function(c,f){for(var m=0,v=0;vthis.MAX_LINE_LENGTH)return this.$renderOverflowMessage(c,m,y,$);m=this.$renderToken(c,m,y,$)}}},l.prototype.$renderOverflowMessage=function(c,f,m,v,y){m&&this.$renderToken(c,f,m,v.slice(0,this.MAX_LINE_LENGTH-f));var $=this.dom.createElement("span");$.className="ace_inline_button ace_keyword ace_toggle_wrap",$.textContent=y?"":"",c.appendChild($)},l.prototype.$renderLine=function(c,f,m){if(!m&&m!=!1&&(m=this.session.getFoldLine(f)),m)var v=this.$getFoldLineTokens(f,m);else var v=this.session.getTokens(f);var y=c;if(v.length){var $=this.session.getRowSplitData(f);if($&&$.length){this.$renderWrappedLine(c,v,$);var y=c.lastChild}else{var y=c;this.$useLineGroups()&&(y=this.$createLineElement(),c.appendChild(y)),this.$renderSimpleLine(y,v)}}else this.$useLineGroups()&&(y=this.$createLineElement(),c.appendChild(y));if(this.showEOL&&y){m&&(f=m.end.row);var w=this.dom.createElement("span");w.className="ace_invisible ace_invisible_eol",w.textContent=f==this.session.getLength()-1?this.EOF_CHAR:this.EOL_CHAR,y.appendChild(w)}},l.prototype.$getFoldLineTokens=function(c,f){var m=this.session,v=[];function y(w,x,b){for(var _=0,R=0;R+w[_].value.lengthb-x&&(E=E.substring(0,b-x)),v.push({type:w[_].type,value:E}),R=x+E.length,_+=1}for(;Rb?v.push({type:w[_].type,value:E.substring(0,b-R)}):v.push(w[_]),R+=E.length,_+=1}}var $=m.getTokens(c);return f.walk(function(w,x,b,_,R){w!=null?v.push({type:"fold",value:w}):(R&&($=m.getTokens(x)),$.length&&y($,_,b))},f.end.row,this.session.getLine(f.end.row).length),v},l.prototype.$useLineGroups=function(){return this.session.getUseWrapMode()},l}();a.prototype.EOF_CHAR="\xB6",a.prototype.EOL_CHAR_LF="\xAC",a.prototype.EOL_CHAR_CRLF="\xA4",a.prototype.EOL_CHAR=a.prototype.EOL_CHAR_LF,a.prototype.TAB_CHAR="\u2014",a.prototype.SPACE_CHAR="\xB7",a.prototype.$padding=0,a.prototype.MAX_LINE_LENGTH=1e4,a.prototype.showInvisibles=!1,a.prototype.showSpaces=!1,a.prototype.showTabs=!1,a.prototype.showEOL=!1,a.prototype.displayIndentGuides=!0,a.prototype.$highlightIndentGuides=!0,a.prototype.$tabStrings=[],a.prototype.destroy={},a.prototype.onChangeTabSize=a.prototype.$computeTabString,i.implement(a.prototype,p),r.Text=a}),ace.define("ace/layer/cursor",["require","exports","module","ace/lib/dom"],function(n,r,h){var i=n("../lib/dom"),d=function(){function g(u){this.element=i.createElement("div"),this.element.className="ace_layer ace_cursor-layer",u.appendChild(this.element),this.isVisible=!1,this.isBlinking=!0,this.blinkInterval=1e3,this.smoothBlinking=!1,this.cursors=[],this.cursor=this.addCursor(),i.addCssClass(this.element,"ace_hidden-cursors"),this.$updateCursors=this.$updateOpacity.bind(this)}return g.prototype.$updateOpacity=function(u){for(var p=this.cursors,s=p.length;s--;)i.setStyle(p[s].style,"opacity",u?"":"0")},g.prototype.$startCssAnimation=function(){for(var u=this.cursors,p=u.length;p--;)u[p].style.animationDuration=this.blinkInterval+"ms";this.$isAnimating=!0,setTimeout((function(){this.$isAnimating&&i.addCssClass(this.element,"ace_animate-blinking")}).bind(this))},g.prototype.$stopCssAnimation=function(){this.$isAnimating=!1,i.removeCssClass(this.element,"ace_animate-blinking")},g.prototype.setPadding=function(u){this.$padding=u},g.prototype.setSession=function(u){this.session=u},g.prototype.setBlinking=function(u){u!=this.isBlinking&&(this.isBlinking=u,this.restartTimer())},g.prototype.setBlinkInterval=function(u){u!=this.blinkInterval&&(this.blinkInterval=u,this.restartTimer())},g.prototype.setSmoothBlinking=function(u){u!=this.smoothBlinking&&(this.smoothBlinking=u,i.setCssClass(this.element,"ace_smooth-blinking",u),this.$updateCursors(!0),this.restartTimer())},g.prototype.addCursor=function(){var u=i.createElement("div");return u.className="ace_cursor",this.element.appendChild(u),this.cursors.push(u),u},g.prototype.removeCursor=function(){if(this.cursors.length>1){var u=this.cursors.pop();return u.parentNode.removeChild(u),u}},g.prototype.hideCursor=function(){this.isVisible=!1,i.addCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},g.prototype.showCursor=function(){this.isVisible=!0,i.removeCssClass(this.element,"ace_hidden-cursors"),this.restartTimer()},g.prototype.restartTimer=function(){var u=this.$updateCursors;if(clearInterval(this.intervalId),clearTimeout(this.timeoutId),this.$stopCssAnimation(),this.smoothBlinking&&(this.$isSmoothBlinking=!1,i.removeCssClass(this.element,"ace_smooth-blinking")),u(!0),!this.isBlinking||!this.blinkInterval||!this.isVisible){this.$stopCssAnimation();return}if(this.smoothBlinking&&(this.$isSmoothBlinking=!0,setTimeout((function(){this.$isSmoothBlinking&&i.addCssClass(this.element,"ace_smooth-blinking")}).bind(this))),i.HAS_CSS_ANIMATION)this.$startCssAnimation();else{var p=(function(){this.timeoutId=setTimeout(function(){u(!1)},.6*this.blinkInterval)}).bind(this);this.intervalId=setInterval(function(){u(!0),p()},this.blinkInterval),p()}},g.prototype.getPixelPosition=function(u,p){if(!this.config||!this.session)return{left:0,top:0};u||(u=this.session.selection.getCursor());var s=this.session.documentToScreenPosition(u),o=this.$padding+(this.session.$bidiHandler.isBidiRow(s.row,u.row)?this.session.$bidiHandler.getPosLeft(s.column):s.column*this.config.characterWidth),a=(s.row-(p?this.config.firstRowScreen:0))*this.config.lineHeight;return{left:o,top:a}},g.prototype.isCursorInView=function(u,p){return u.top>=0&&u.topu.height+u.offset||l.top<0)&&s>1)){var c=this.cursors[o++]||this.addCursor(),f=c.style;this.drawCursor?this.drawCursor(c,l,u,p[s],this.session):this.isCursorInView(l,u)?(i.setStyle(f,"display","block"),i.translate(c,l.left,l.top),i.setStyle(f,"width",Math.round(u.characterWidth)+"px"),i.setStyle(f,"height",u.lineHeight+"px")):i.setStyle(f,"display","none")}}for(;this.cursors.length>o;)this.removeCursor();var m=this.session.getOverwrite();this.$setOverwrite(m),this.$pixelPos=l,this.restartTimer()},g.prototype.$setOverwrite=function(u){u!=this.overwrite&&(this.overwrite=u,u?i.addCssClass(this.element,"ace_overwrite-cursors"):i.removeCssClass(this.element,"ace_overwrite-cursors"))},g.prototype.destroy=function(){clearInterval(this.intervalId),clearTimeout(this.timeoutId)},g}();d.prototype.$padding=0,d.prototype.drawCursor=null,r.Cursor=d}),ace.define("ace/scrollbar",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(n,r,h){var i=this&&this.__extends||function(){var c=function(f,m){return c=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(v,y){v.__proto__=y}||function(v,y){for(var $ in y)Object.prototype.hasOwnProperty.call(y,$)&&(v[$]=y[$])},c(f,m)};return function(f,m){if(typeof m!="function"&&m!==null)throw new TypeError("Class extends value "+String(m)+" is not a constructor or null");c(f,m);function v(){this.constructor=f}f.prototype=m===null?Object.create(m):(v.prototype=m.prototype,new v)}}(),d=n("./lib/oop"),g=n("./lib/dom"),u=n("./lib/event"),p=n("./lib/event_emitter").EventEmitter,s=32768,o=function(){function c(f,m){this.element=g.createElement("div"),this.element.className="ace_scrollbar ace_scrollbar"+m,this.inner=g.createElement("div"),this.inner.className="ace_scrollbar-inner",this.inner.textContent="\xA0",this.element.appendChild(this.inner),f.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,u.addListener(this.element,"scroll",this.onScroll.bind(this)),u.addListener(this.element,"mousedown",u.preventDefault)}return c.prototype.setVisible=function(f){this.element.style.display=f?"":"none",this.isVisible=f,this.coeff=1},c}();d.implement(o.prototype,p);var a=function(c){i(f,c);function f(m,v){var y=c.call(this,m,"-v")||this;return y.scrollTop=0,y.scrollHeight=0,v.$scrollbarWidth=y.width=g.scrollbarWidth(m.ownerDocument),y.inner.style.width=y.element.style.width=(y.width||15)+5+"px",y.$minWidth=0,y}return f.prototype.onScroll=function(){if(!this.skipEvent){if(this.scrollTop=this.element.scrollTop,this.coeff!=1){var m=this.element.clientHeight/this.scrollHeight;this.scrollTop=this.scrollTop*(1-m)/(this.coeff-m)}this._emit("scroll",{data:this.scrollTop})}this.skipEvent=!1},f.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},f.prototype.setHeight=function(m){this.element.style.height=m+"px"},f.prototype.setScrollHeight=function(m){this.scrollHeight=m,m>s?(this.coeff=s/m,m=s):this.coeff!=1&&(this.coeff=1),this.inner.style.height=m+"px"},f.prototype.setScrollTop=function(m){this.scrollTop!=m&&(this.skipEvent=!0,this.scrollTop=m,this.element.scrollTop=m*this.coeff)},f}(o);a.prototype.setInnerHeight=a.prototype.setScrollHeight;var l=function(c){i(f,c);function f(m,v){var y=c.call(this,m,"-h")||this;return y.scrollLeft=0,y.height=v.$scrollbarWidth,y.inner.style.height=y.element.style.height=(y.height||15)+5+"px",y}return f.prototype.onScroll=function(){this.skipEvent||(this.scrollLeft=this.element.scrollLeft,this._emit("scroll",{data:this.scrollLeft})),this.skipEvent=!1},f.prototype.getHeight=function(){return this.isVisible?this.height:0},f.prototype.setWidth=function(m){this.element.style.width=m+"px"},f.prototype.setInnerWidth=function(m){this.inner.style.width=m+"px"},f.prototype.setScrollWidth=function(m){this.inner.style.width=m+"px"},f.prototype.setScrollLeft=function(m){this.scrollLeft!=m&&(this.skipEvent=!0,this.scrollLeft=this.element.scrollLeft=m)},f}(o);r.ScrollBar=a,r.ScrollBarV=a,r.ScrollBarH=l,r.VScrollBar=a,r.HScrollBar=l}),ace.define("ace/scrollbar_custom",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/event","ace/lib/event_emitter"],function(n,r,h){var i=this&&this.__extends||function(){var l=function(c,f){return l=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(m,v){m.__proto__=v}||function(m,v){for(var y in v)Object.prototype.hasOwnProperty.call(v,y)&&(m[y]=v[y])},l(c,f)};return function(c,f){if(typeof f!="function"&&f!==null)throw new TypeError("Class extends value "+String(f)+" is not a constructor or null");l(c,f);function m(){this.constructor=c}c.prototype=f===null?Object.create(f):(m.prototype=f.prototype,new m)}}(),d=n("./lib/oop"),g=n("./lib/dom"),u=n("./lib/event"),p=n("./lib/event_emitter").EventEmitter;g.importCssString(`.ace_editor>.ace_sb-v div, .ace_editor>.ace_sb-h div{ - position: absolute; - background: rgba(128, 128, 128, 0.6); - -moz-box-sizing: border-box; - box-sizing: border-box; - border: 1px solid #bbb; - border-radius: 2px; - z-index: 8; -} -.ace_editor>.ace_sb-v, .ace_editor>.ace_sb-h { - position: absolute; - z-index: 6; - background: none; - overflow: hidden!important; -} -.ace_editor>.ace_sb-v { - z-index: 6; - right: 0; - top: 0; - width: 12px; -} -.ace_editor>.ace_sb-v div { - z-index: 8; - right: 0; - width: 100%; -} -.ace_editor>.ace_sb-h { - bottom: 0; - left: 0; - height: 12px; -} -.ace_editor>.ace_sb-h div { - bottom: 0; - height: 100%; -} -.ace_editor>.ace_sb_grabbed { - z-index: 8; - background: #000; -}`,"ace_scrollbar.css",!1);var s=function(){function l(c,f){this.element=g.createElement("div"),this.element.className="ace_sb"+f,this.inner=g.createElement("div"),this.inner.className="",this.element.appendChild(this.inner),this.VScrollWidth=12,this.HScrollHeight=12,c.appendChild(this.element),this.setVisible(!1),this.skipEvent=!1,u.addMultiMouseDownListener(this.element,[500,300,300],this,"onMouseDown")}return l.prototype.setVisible=function(c){this.element.style.display=c?"":"none",this.isVisible=c,this.coeff=1},l}();d.implement(s.prototype,p);var o=function(l){i(c,l);function c(f,m){var v=l.call(this,f,"-v")||this;return v.scrollTop=0,v.scrollHeight=0,v.parent=f,v.width=v.VScrollWidth,v.renderer=m,v.inner.style.width=v.element.style.width=(v.width||15)+"px",v.$minWidth=0,v}return c.prototype.onMouseDown=function(f,m){if(f==="mousedown"&&!(u.getButton(m)!==0||m.detail===2)){if(m.target===this.inner){var v=this,y=m.clientY,$=function(L){y=L.clientY},w=function(){clearInterval(R)},x=m.clientY,b=this.thumbTop,_=function(){if(y!==void 0){var L=v.scrollTopFromThumbTop(b+y-x);L!==v.scrollTop&&v._emit("scroll",{data:L})}};u.capture(this.inner,$,w);var R=setInterval(_,20);return u.preventDefault(m)}var E=m.clientY-this.element.getBoundingClientRect().top-this.thumbHeight/2;return this._emit("scroll",{data:this.scrollTopFromThumbTop(E)}),u.preventDefault(m)}},c.prototype.getHeight=function(){return this.height},c.prototype.scrollTopFromThumbTop=function(f){var m=f*(this.pageHeight-this.viewHeight)/(this.slideHeight-this.thumbHeight);return m=m>>0,m<0?m=0:m>this.pageHeight-this.viewHeight&&(m=this.pageHeight-this.viewHeight),m},c.prototype.getWidth=function(){return Math.max(this.isVisible?this.width:0,this.$minWidth||0)},c.prototype.setHeight=function(f){this.height=Math.max(0,f),this.slideHeight=this.height,this.viewHeight=this.height,this.setScrollHeight(this.pageHeight,!0)},c.prototype.setScrollHeight=function(f,m){this.pageHeight===f&&!m||(this.pageHeight=f,this.thumbHeight=this.slideHeight*this.viewHeight/this.pageHeight,this.thumbHeight>this.slideHeight&&(this.thumbHeight=this.slideHeight),this.thumbHeight<15&&(this.thumbHeight=15),this.inner.style.height=this.thumbHeight+"px",this.scrollTop>this.pageHeight-this.viewHeight&&(this.scrollTop=this.pageHeight-this.viewHeight,this.scrollTop<0&&(this.scrollTop=0),this._emit("scroll",{data:this.scrollTop})))},c.prototype.setScrollTop=function(f){this.scrollTop=f,f<0&&(f=0),this.thumbTop=f*(this.slideHeight-this.thumbHeight)/(this.pageHeight-this.viewHeight),this.inner.style.top=this.thumbTop+"px"},c}(s);o.prototype.setInnerHeight=o.prototype.setScrollHeight;var a=function(l){i(c,l);function c(f,m){var v=l.call(this,f,"-h")||this;return v.scrollLeft=0,v.scrollWidth=0,v.height=v.HScrollHeight,v.inner.style.height=v.element.style.height=(v.height||12)+"px",v.renderer=m,v}return c.prototype.onMouseDown=function(f,m){if(f==="mousedown"&&!(u.getButton(m)!==0||m.detail===2)){if(m.target===this.inner){var v=this,y=m.clientX,$=function(L){y=L.clientX},w=function(){clearInterval(R)},x=m.clientX,b=this.thumbLeft,_=function(){if(y!==void 0){var L=v.scrollLeftFromThumbLeft(b+y-x);L!==v.scrollLeft&&v._emit("scroll",{data:L})}};u.capture(this.inner,$,w);var R=setInterval(_,20);return u.preventDefault(m)}var E=m.clientX-this.element.getBoundingClientRect().left-this.thumbWidth/2;return this._emit("scroll",{data:this.scrollLeftFromThumbLeft(E)}),u.preventDefault(m)}},c.prototype.getHeight=function(){return this.isVisible?this.height:0},c.prototype.scrollLeftFromThumbLeft=function(f){var m=f*(this.pageWidth-this.viewWidth)/(this.slideWidth-this.thumbWidth);return m=m>>0,m<0?m=0:m>this.pageWidth-this.viewWidth&&(m=this.pageWidth-this.viewWidth),m},c.prototype.setWidth=function(f){this.width=Math.max(0,f),this.element.style.width=this.width+"px",this.slideWidth=this.width,this.viewWidth=this.width,this.setScrollWidth(this.pageWidth,!0)},c.prototype.setScrollWidth=function(f,m){this.pageWidth===f&&!m||(this.pageWidth=f,this.thumbWidth=this.slideWidth*this.viewWidth/this.pageWidth,this.thumbWidth>this.slideWidth&&(this.thumbWidth=this.slideWidth),this.thumbWidth<15&&(this.thumbWidth=15),this.inner.style.width=this.thumbWidth+"px",this.scrollLeft>this.pageWidth-this.viewWidth&&(this.scrollLeft=this.pageWidth-this.viewWidth,this.scrollLeft<0&&(this.scrollLeft=0),this._emit("scroll",{data:this.scrollLeft})))},c.prototype.setScrollLeft=function(f){this.scrollLeft=f,f<0&&(f=0),this.thumbLeft=f*(this.slideWidth-this.thumbWidth)/(this.pageWidth-this.viewWidth),this.inner.style.left=this.thumbLeft+"px"},c}(s);a.prototype.setInnerWidth=a.prototype.setScrollWidth,r.ScrollBar=o,r.ScrollBarV=o,r.ScrollBarH=a,r.VScrollBar=o,r.HScrollBar=a}),ace.define("ace/renderloop",["require","exports","module","ace/lib/event"],function(n,r,h){var i=n("./lib/event"),d=function(){function g(u,p){this.onRender=u,this.pending=!1,this.changes=0,this.$recursionLimit=2,this.window=p||window;var s=this;this._flush=function(o){s.pending=!1;var a=s.changes;if(a&&(i.blockIdle(100),s.changes=0,s.onRender(a)),s.changes){if(s.$recursionLimit--<0)return;s.schedule()}else s.$recursionLimit=2}}return g.prototype.schedule=function(u){this.changes=this.changes|u,this.changes&&!this.pending&&(i.nextFrame(this._flush),this.pending=!0)},g.prototype.clear=function(u){var p=this.changes;return this.changes=0,p},g}();r.RenderLoop=d}),ace.define("ace/layer/font_metrics",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/lib/event","ace/lib/useragent","ace/lib/event_emitter"],function(n,r,h){var i=n("../lib/oop"),d=n("../lib/dom"),g=n("../lib/lang"),u=n("../lib/event"),p=n("../lib/useragent"),s=n("../lib/event_emitter").EventEmitter,o=512,a=typeof ResizeObserver=="function",l=200,c=function(){function f(m){this.el=d.createElement("div"),this.$setMeasureNodeStyles(this.el.style,!0),this.$main=d.createElement("div"),this.$setMeasureNodeStyles(this.$main.style),this.$measureNode=d.createElement("div"),this.$setMeasureNodeStyles(this.$measureNode.style),this.el.appendChild(this.$main),this.el.appendChild(this.$measureNode),m.appendChild(this.el),this.$measureNode.textContent=g.stringRepeat("X",o),this.$characterSize={width:0,height:0},a?this.$addObserver():this.checkForSizeChanges()}return f.prototype.$setMeasureNodeStyles=function(m,v){m.width=m.height="auto",m.left=m.top="0px",m.visibility="hidden",m.position="absolute",m.whiteSpace="pre",p.isIE<8?m["font-family"]="inherit":m.font="inherit",m.overflow=v?"hidden":"visible"},f.prototype.checkForSizeChanges=function(m){if(m===void 0&&(m=this.$measureSizes()),m&&(this.$characterSize.width!==m.width||this.$characterSize.height!==m.height)){this.$measureNode.style.fontWeight="bold";var v=this.$measureSizes();this.$measureNode.style.fontWeight="",this.$characterSize=m,this.charSizes=Object.create(null),this.allowBoldFonts=v&&v.width===m.width&&v.height===m.height,this._emit("changeCharacterSize",{data:m})}},f.prototype.$addObserver=function(){var m=this;this.$observer=new window.ResizeObserver(function(v){m.checkForSizeChanges()}),this.$observer.observe(this.$measureNode)},f.prototype.$pollSizeChanges=function(){if(this.$pollSizeChangesTimer||this.$observer)return this.$pollSizeChangesTimer;var m=this;return this.$pollSizeChangesTimer=u.onIdle(function v(){m.checkForSizeChanges(),u.onIdle(v,500)},500)},f.prototype.setPolling=function(m){m?this.$pollSizeChanges():this.$pollSizeChangesTimer&&(clearInterval(this.$pollSizeChangesTimer),this.$pollSizeChangesTimer=0)},f.prototype.$measureSizes=function(m){var v={height:(m||this.$measureNode).clientHeight,width:(m||this.$measureNode).clientWidth/o};return v.width===0||v.height===0?null:v},f.prototype.$measureCharWidth=function(m){this.$main.textContent=g.stringRepeat(m,o);var v=this.$main.getBoundingClientRect();return v.width/o},f.prototype.getCharacterWidth=function(m){var v=this.charSizes[m];return v===void 0&&(v=this.charSizes[m]=this.$measureCharWidth(m)/this.$characterSize.width),v},f.prototype.destroy=function(){clearInterval(this.$pollSizeChangesTimer),this.$observer&&this.$observer.disconnect(),this.el&&this.el.parentNode&&this.el.parentNode.removeChild(this.el)},f.prototype.$getZoom=function(m){return!m||!m.parentElement?1:(Number(window.getComputedStyle(m).zoom)||1)*this.$getZoom(m.parentElement)},f.prototype.$initTransformMeasureNodes=function(){var m=function(v,y){return["div",{style:"position: absolute;top:"+v+"px;left:"+y+"px;"}]};this.els=d.buildDom([m(0,0),m(l,0),m(0,l),m(l,l)],this.el)},f.prototype.transformCoordinates=function(m,v){if(m){var y=this.$getZoom(this.el);m=b(1/y,m)}function $(D,P,B){var j=D[1]*P[0]-D[0]*P[1];return[(-P[1]*B[0]+P[0]*B[1])/j,(+D[1]*B[0]-D[0]*B[1])/j]}function w(D,P){return[D[0]-P[0],D[1]-P[1]]}function x(D,P){return[D[0]+P[0],D[1]+P[1]]}function b(D,P){return[D*P[0],D*P[1]]}this.els||this.$initTransformMeasureNodes();function _(D){var P=D.getBoundingClientRect();return[P.left,P.top]}var R=_(this.els[0]),E=_(this.els[1]),L=_(this.els[2]),M=_(this.els[3]),k=$(w(M,E),w(M,L),w(x(E,L),x(M,R))),C=b(1+k[0],w(E,R)),S=b(1+k[1],w(L,R));if(v){var A=v,T=k[0]*A[0]/l+k[1]*A[1]/l+1,I=x(b(A[0],C),b(A[1],S));return x(b(1/T/l,I),R)}var N=w(m,R),O=$(w(C,b(k[0],N)),w(S,b(k[1],N)),N);return b(l,O)},f}();c.prototype.$characterSize={width:0,height:0},i.implement(c.prototype,s),r.FontMetrics=c}),ace.define("ace/css/editor-css",["require","exports","module"],function(n,r,h){h.exports=` -.ace_br1 {border-top-left-radius : 3px;} -.ace_br2 {border-top-right-radius : 3px;} -.ace_br3 {border-top-left-radius : 3px; border-top-right-radius: 3px;} -.ace_br4 {border-bottom-right-radius: 3px;} -.ace_br5 {border-top-left-radius : 3px; border-bottom-right-radius: 3px;} -.ace_br6 {border-top-right-radius : 3px; border-bottom-right-radius: 3px;} -.ace_br7 {border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px;} -.ace_br8 {border-bottom-left-radius : 3px;} -.ace_br9 {border-top-left-radius : 3px; border-bottom-left-radius: 3px;} -.ace_br10{border-top-right-radius : 3px; border-bottom-left-radius: 3px;} -.ace_br11{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-left-radius: 3px;} -.ace_br12{border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;} -.ace_br13{border-top-left-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;} -.ace_br14{border-top-right-radius : 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;} -.ace_br15{border-top-left-radius : 3px; border-top-right-radius: 3px; border-bottom-right-radius: 3px; border-bottom-left-radius: 3px;} - - -.ace_editor { - position: relative; - overflow: hidden; - padding: 0; - font: 12px/normal 'Monaco', 'Menlo', 'Ubuntu Mono', 'Consolas', 'Source Code Pro', 'source-code-pro', monospace; - direction: ltr; - text-align: left; - -webkit-tap-highlight-color: rgba(0, 0, 0, 0); - forced-color-adjust: none; -} - -.ace_scroller { - position: absolute; - overflow: hidden; - top: 0; - bottom: 0; - background-color: inherit; - -ms-user-select: none; - -moz-user-select: none; - -webkit-user-select: none; - user-select: none; - cursor: text; -} - -.ace_content { - position: absolute; - box-sizing: border-box; - min-width: 100%; - contain: style size layout; - font-variant-ligatures: no-common-ligatures; -} - -.ace_keyboard-focus:focus { - box-shadow: inset 0 0 0 2px #5E9ED6; - outline: none; -} - -.ace_dragging .ace_scroller:before{ - position: absolute; - top: 0; - left: 0; - right: 0; - bottom: 0; - content: ''; - background: rgba(250, 250, 250, 0.01); - z-index: 1000; -} -.ace_dragging.ace_dark .ace_scroller:before{ - background: rgba(0, 0, 0, 0.01); -} - -.ace_gutter { - position: absolute; - overflow : hidden; - width: auto; - top: 0; - bottom: 0; - left: 0; - cursor: default; - z-index: 4; - -ms-user-select: none; - -moz-user-select: none; - -webkit-user-select: none; - user-select: none; - contain: style size layout; -} - -.ace_gutter-active-line { - position: absolute; - left: 0; - right: 0; -} - -.ace_scroller.ace_scroll-left:after { - content: ""; - position: absolute; - top: 0; - right: 0; - bottom: 0; - left: 0; - box-shadow: 17px 0 16px -16px rgba(0, 0, 0, 0.4) inset; - pointer-events: none; -} - -.ace_gutter-cell, .ace_gutter-cell_svg-icons { - position: absolute; - top: 0; - left: 0; - right: 0; - padding-left: 19px; - padding-right: 6px; - background-repeat: no-repeat; -} - -.ace_gutter-cell_svg-icons .ace_gutter_annotation { - margin-left: -14px; - float: left; -} - -.ace_gutter-cell .ace_gutter_annotation { - margin-left: -19px; - float: left; -} - -.ace_gutter-cell.ace_error, .ace_icon.ace_error, .ace_icon.ace_error_fold, .ace_gutter-cell.ace_security, .ace_icon.ace_security, .ace_icon.ace_security_fold { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAABOFBMVEX/////////QRswFAb/Ui4wFAYwFAYwFAaWGAfDRymzOSH/PxswFAb/SiUwFAYwFAbUPRvjQiDllog5HhHdRybsTi3/Tyv9Tir+Syj/UC3////XurebMBIwFAb/RSHbPx/gUzfdwL3kzMivKBAwFAbbvbnhPx66NhowFAYwFAaZJg8wFAaxKBDZurf/RB6mMxb/SCMwFAYwFAbxQB3+RB4wFAb/Qhy4Oh+4QifbNRcwFAYwFAYwFAb/QRzdNhgwFAYwFAbav7v/Uy7oaE68MBK5LxLewr/r2NXewLswFAaxJw4wFAbkPRy2PyYwFAaxKhLm1tMwFAazPiQwFAaUGAb/QBrfOx3bvrv/VC/maE4wFAbRPBq6MRO8Qynew8Dp2tjfwb0wFAbx6eju5+by6uns4uH9/f36+vr/GkHjAAAAYnRSTlMAGt+64rnWu/bo8eAA4InH3+DwoN7j4eLi4xP99Nfg4+b+/u9B/eDs1MD1mO7+4PHg2MXa347g7vDizMLN4eG+Pv7i5evs/v79yu7S3/DV7/498Yv24eH+4ufQ3Ozu/v7+y13sRqwAAADLSURBVHjaZc/XDsFgGIBhtDrshlitmk2IrbHFqL2pvXf/+78DPokj7+Fz9qpU/9UXJIlhmPaTaQ6QPaz0mm+5gwkgovcV6GZzd5JtCQwgsxoHOvJO15kleRLAnMgHFIESUEPmawB9ngmelTtipwwfASilxOLyiV5UVUyVAfbG0cCPHig+GBkzAENHS0AstVF6bacZIOzgLmxsHbt2OecNgJC83JERmePUYq8ARGkJx6XtFsdddBQgZE2nPR6CICZhawjA4Fb/chv+399kfR+MMMDGOQAAAABJRU5ErkJggg=="); - background-repeat: no-repeat; - background-position: 2px center; -} - -.ace_gutter-cell.ace_warning, .ace_icon.ace_warning, .ace_icon.ace_warning_fold { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAMAAAAoLQ9TAAAAmVBMVEX///8AAAD///8AAAAAAABPSzb/5sAAAAB/blH/73z/ulkAAAAAAAD85pkAAAAAAAACAgP/vGz/rkDerGbGrV7/pkQICAf////e0IsAAAD/oED/qTvhrnUAAAD/yHD/njcAAADuv2r/nz//oTj/p064oGf/zHAAAAA9Nir/tFIAAAD/tlTiuWf/tkIAAACynXEAAAAAAAAtIRW7zBpBAAAAM3RSTlMAABR1m7RXO8Ln31Z36zT+neXe5OzooRDfn+TZ4p3h2hTf4t3k3ucyrN1K5+Xaks52Sfs9CXgrAAAAjklEQVR42o3PbQ+CIBQFYEwboPhSYgoYunIqqLn6/z8uYdH8Vmdnu9vz4WwXgN/xTPRD2+sgOcZjsge/whXZgUaYYvT8QnuJaUrjrHUQreGczuEafQCO/SJTufTbroWsPgsllVhq3wJEk2jUSzX3CUEDJC84707djRc5MTAQxoLgupWRwW6UB5fS++NV8AbOZgnsC7BpEAAAAABJRU5ErkJggg=="); - background-repeat: no-repeat; - background-position: 2px center; -} - -.ace_gutter-cell.ace_info, .ace_icon.ace_info, .ace_gutter-cell.ace_hint, .ace_icon.ace_hint { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAAAAAA6mKC9AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAAJ0Uk5TAAB2k804AAAAPklEQVQY02NgIB68QuO3tiLznjAwpKTgNyDbMegwisCHZUETUZV0ZqOquBpXj2rtnpSJT1AEnnRmL2OgGgAAIKkRQap2htgAAAAASUVORK5CYII="); - background-repeat: no-repeat; - background-position: 2px center; -} - -.ace_dark .ace_gutter-cell.ace_info, .ace_dark .ace_icon.ace_info, .ace_dark .ace_gutter-cell.ace_hint, .ace_dark .ace_icon.ace_hint { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABAAAAAQBAMAAADt3eJSAAAAJFBMVEUAAAChoaGAgIAqKiq+vr6tra1ZWVmUlJSbm5s8PDxubm56enrdgzg3AAAAAXRSTlMAQObYZgAAAClJREFUeNpjYMAPdsMYHegyJZFQBlsUlMFVCWUYKkAZMxZAGdxlDMQBAG+TBP4B6RyJAAAAAElFTkSuQmCC"); -} - -.ace_icon_svg.ace_error { - -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJyZWQiIHNoYXBlLXJlbmRlcmluZz0iZ2VvbWV0cmljUHJlY2lzaW9uIj4KPGNpcmNsZSBmaWxsPSJub25lIiBjeD0iOCIgY3k9IjgiIHI9IjciIHN0cm9rZS1saW5lam9pbj0icm91bmQiLz4KPGxpbmUgeDE9IjExIiB5MT0iNSIgeDI9IjUiIHkyPSIxMSIvPgo8bGluZSB4MT0iMTEiIHkxPSIxMSIgeDI9IjUiIHkyPSI1Ii8+CjwvZz4KPC9zdmc+"); - background-color: crimson; -} -.ace_icon_svg.ace_security { - -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0iZGFya29yYW5nZSIgZmlsbD0ibm9uZSIgc2hhcGUtcmVuZGVyaW5nPSJnZW9tZXRyaWNQcmVjaXNpb24iPgogICAgICAgIDxwYXRoIGNsYXNzPSJzdHJva2UtbGluZWpvaW4tcm91bmQiIGQ9Ik04IDE0LjgzMDdDOCAxNC44MzA3IDIgMTIuOTA0NyAyIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOEM3Ljk4OTk5IDEuMzQ5MTggMTAuNjkgMy4yNjU0OCAxNCAzLjI2NTQ4VjguMDg5OTJDMTQgMTIuOTA0NyA4IDE0LjgzMDcgOCAxNC44MzA3WiIvPgogICAgICAgIDxwYXRoIGQ9Ik0yIDguMDg5OTJWMy4yNjU0OEM1LjMxIDMuMjY1NDggNy45ODk5OSAxLjM0OTE4IDcuOTg5OTkgMS4zNDkxOCIvPgogICAgICAgIDxwYXRoIGQ9Ik0xMy45OSA4LjA4OTkyVjMuMjY1NDhDMTAuNjggMy4yNjU0OCA4IDEuMzQ5MTggOCAxLjM0OTE4Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggNFY5Ii8+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTggMTBWMTIiLz4KICAgIDwvZz4KPC9zdmc+"); - background-color: crimson; -} -.ace_icon_svg.ace_warning { - -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJkYXJrb3JhbmdlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+Cjxwb2x5Z29uIHN0cm9rZS1saW5lam9pbj0icm91bmQiIGZpbGw9Im5vbmUiIHBvaW50cz0iOCAxIDE1IDE1IDEgMTUgOCAxIi8+CjxyZWN0IHg9IjgiIHk9IjEyIiB3aWR0aD0iMC4wMSIgaGVpZ2h0PSIwLjAxIi8+CjxsaW5lIHgxPSI4IiB5MT0iNiIgeDI9IjgiIHkyPSIxMCIvPgo8L2c+Cjwvc3ZnPg=="); - background-color: darkorange; -} -.ace_icon_svg.ace_info { - -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiI+CjxnIHN0cm9rZS13aWR0aD0iMiIgc3Ryb2tlPSJibHVlIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CjxjaXJjbGUgZmlsbD0ibm9uZSIgY3g9IjgiIGN5PSI4IiByPSI3IiBzdHJva2UtbGluZWpvaW49InJvdW5kIi8+Cjxwb2x5bGluZSBwb2ludHM9IjggMTEgOCA4Ii8+Cjxwb2x5bGluZSBwb2ludHM9IjkgOCA2IDgiLz4KPGxpbmUgeDE9IjEwIiB5MT0iMTEiIHgyPSI2IiB5Mj0iMTEiLz4KPHJlY3QgeD0iOCIgeT0iNSIgd2lkdGg9IjAuMDEiIGhlaWdodD0iMC4wMSIvPgo8L2c+Cjwvc3ZnPg=="); - background-color: royalblue; -} -.ace_icon_svg.ace_hint { - -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB2aWV3Qm94PSIwIDAgMjAgMTYiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+CiAgICA8ZyBzdHJva2Utd2lkdGg9IjIiIHN0cm9rZT0ic2lsdmVyIiBmaWxsPSJub25lIiBzaGFwZS1yZW5kZXJpbmc9Imdlb21ldHJpY1ByZWNpc2lvbiI+CiAgICAgICAgPHBhdGggY2xhc3M9InN0cm9rZS1saW5lam9pbi1yb3VuZCIgZD0iTTYgMTRIMTAiLz4KICAgICAgICA8cGF0aCBkPSJNOCAxMUg5QzkgOS40NzAwMiAxMiA4LjU0MDAyIDEyIDUuNzYwMDJDMTIuMDIgNC40MDAwMiAxMS4zOSAzLjM2MDAyIDEwLjQzIDIuNjcwMDJDOSAxLjY0MDAyIDcuMDAwMDEgMS42NDAwMiA1LjU3MDAxIDIuNjcwMDJDNC42MTAwMSAzLjM2MDAyIDMuOTggNC40MDAwMiA0IDUuNzYwMDJDNCA4LjU0MDAyIDcuMDAwMDEgOS40NzAwMiA3LjAwMDAxIDExSDhaIi8+CiAgICA8L2c+Cjwvc3ZnPg=="); - background-color: silver; -} - -.ace_icon_svg.ace_error_fold { - -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSI+CiAgPHBhdGggZD0ibSAxOC45Mjk4NTEsNy44Mjk4MDc2IGMgMC4xNDYzNTMsNi4zMzc0NjA0IC02LjMyMzE0Nyw3Ljc3Nzg0NDQgLTcuNDc3OTEyLDcuNzc3ODQ0NCAtMi4xMDcyNzI2LC0wLjEyODc1IDUuMTE3Njc4LDAuMzU2MjQ5IDUuMDUxNjk4LC03Ljg3MDA2MTggLTAuNjA0NjcyLC04LjAwMzk3MzQ5IC03LjA3NzI3MDYsLTcuNTYzMTE4OSAtNC44NTczLC03LjQzMDM5NTU2IDEuNjA2LC0wLjExNTE0MjI1IDYuODk3NDg1LDEuMjYyNTQ1OTYgNy4yODM1MTQsNy41MjI2MTI5NiB6IiBmaWxsPSJjcmltc29uIiBzdHJva2Utd2lkdGg9IjIiLz4KICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0ibSA4LjExNDc1NjIsMi4wNTI5ODI4IGMgMy4zNDkxNjk4LDAgNi4wNjQxMzI4LDIuNjc2ODYyNyA2LjA2NDEzMjgsNS45Nzg5NTMgMCwzLjMwMjExMjIgLTIuNzE0OTYzLDUuOTc4OTIwMiAtNi4wNjQxMzI4LDUuOTc4OTIwMiAtMy4zNDkxNDczLDAgLTYuMDY0MTc3MiwtMi42NzY4MDggLTYuMDY0MTc3MiwtNS45Nzg5MjAyIDAuMDA1MzksLTMuMjk5ODg2MSAyLjcxNzI2NTYsLTUuOTczNjQwOCA2LjA2NDE3NzIsLTUuOTc4OTUzIHogbSAwLC0xLjczNTgyNzE5IGMgLTQuMzIxNDgzNiwwIC03LjgyNDc0MDM4LDMuNDU0MDE4NDkgLTcuODI0NzQwMzgsNy43MTQ3ODAxOSAwLDQuMjYwNzI4MiAzLjUwMzI1Njc4LDcuNzE0NzQ1MiA3LjgyNDc0MDM4LDcuNzE0NzQ1MiA0LjMyMTQ0OTgsMCA3LjgyNDY5OTgsLTMuNDU0MDE3IDcuODI0Njk5OCwtNy43MTQ3NDUyIDAsLTIuMDQ2MDkxNCAtMC44MjQzOTIsLTQuMDA4MzY3MiAtMi4yOTE3NTYsLTUuNDU1MTc0NiBDIDEyLjE4MDIyNSwxLjEyOTk2NDggMTAuMTkwMDEzLDAuMzE3MTU1NjEgOC4xMTQ3NTYyLDAuMzE3MTU1NjEgWiBNIDYuOTM3NDU2Myw4LjI0MDU5ODUgNC42NzE4Njg1LDEwLjQ4NTg1MiA2LjAwODY4MTQsMTEuODc2NzI4IDguMzE3MDAzNSw5LjYwMDc5MTEgMTAuNjI1MzM3LDExLjg3NjcyOCAxMS45NjIxMzgsMTAuNDg1ODUyIDkuNjk2NTUwOCw4LjI0MDU5ODUgMTEuOTYyMTM4LDYuMDA2ODA2NiAxMC41NzMyNDYsNC42Mzc0MzM1IDguMzE3MDAzNSw2Ljg3MzQyOTcgNi4wNjA3NjA3LDQuNjM3NDMzNSA0LjY3MTg2ODUsNi4wMDY4MDY2IFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4="); - background-color: crimson; -} -.ace_icon_svg.ace_security_fold { - -webkit-mask-image: url("data:image/svg+xml;base64,CjxzdmcgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIiB2aWV3Qm94PSIwIDAgMTcgMTQiIGZpbGw9Im5vbmUiPgogICAgPHBhdGggZD0iTTEwLjAwMDEgMTMuNjk5MkMxMC4wMDAxIDEzLjY5OTIgMTEuOTI0MSAxMy40NzYzIDEzIDEyLjY5OTJDMTQuNDEzOSAxMS42NzgxIDE2IDEwLjUgMTYuMTI1MSA2LjgxMTI2VjIuNTg5ODdDMTYuMTI1MSAyLjU0NzY4IDE2LjEyMjEgMi41MDYxOSAxNi4xMTY0IDIuNDY1NTlWMS43MTQ4NUgxNS4yNDE0TDE1LjIzMDcgMS43MTQ4NEwxNC42MjUxIDEuNjk5MjJWNi44MTEyM0MxNC42MjUxIDguNTEwNjEgMTQuNjI1MSA5LjQ2NDYxIDEyLjc4MjQgMTEuNzIxQzEyLjE1ODYgMTIuNDg0OCAxMC4wMDAxIDEzLjY5OTIgMTAuMDAwMSAxMy42OTkyWiIgZmlsbD0iY3JpbXNvbiIgc3Ryb2tlLXdpZHRoPSIyIi8+CiAgICA8cGF0aCBmaWxsLXJ1bGU9ImV2ZW5vZGQiIGNsaXAtcnVsZT0iZXZlbm9kZCIgZD0iTTcuMzM2MDkgMC4zNjc0NzVDNy4wMzIxNCAwLjE1MjY1MiA2LjYyNTQ4IDAuMTUzNjE0IDYuMzIyNTMgMC4zNjk5OTdMNi4zMDg2OSAwLjM3OTU1NEM2LjI5NTUzIDAuMzg4NTg4IDYuMjczODggMC40MDMyNjYgNi4yNDQxNyAwLjQyMjc4OUM2LjE4NDcxIDAuNDYxODYgNi4wOTMyMSAwLjUyMDE3MSA1Ljk3MzEzIDAuNTkxMzczQzUuNzMyNTEgMC43MzQwNTkgNS4zNzk5IDAuOTI2ODY0IDQuOTQyNzkgMS4xMjAwOUM0LjA2MTQ0IDEuNTA5NyAyLjg3NTQxIDEuODgzNzcgMS41ODk4NCAxLjg4Mzc3SDAuNzE0ODQ0VjIuNzU4NzdWNi45ODAxNUMwLjcxNDg0NCA5LjQ5Mzc0IDIuMjg4NjYgMTEuMTk3MyAzLjcwMjU0IDEyLjIxODVDNC40MTg0NSAxMi43MzU1IDUuMTI4NzQgMTMuMTA1MyA1LjY1NzMzIDEzLjM0NTdDNS45MjI4NCAxMy40NjY0IDYuMTQ1NjYgMTMuNTU1OSA2LjMwNDY1IDEzLjYxNjFDNi4zODQyMyAxMy42NDYyIDYuNDQ4MDUgMTMuNjY5IDYuNDkzNDkgMTMuNjg0OEM2LjUxNjIyIDEzLjY5MjcgNi41MzQzOCAxMy42OTg5IDYuNTQ3NjQgMTMuNzAzM0w2LjU2MzgyIDEzLjcwODdMNi41NjkwOCAxMy43MTA0TDYuNTcwOTkgMTMuNzExTDYuODM5ODQgMTMuNzUzM0w2LjU3MjQyIDEzLjcxMTVDNi43NDYzMyAxMy43NjczIDYuOTMzMzUgMTMuNzY3MyA3LjEwNzI3IDEzLjcxMTVMNy4xMDg3IDEzLjcxMUw3LjExMDYxIDEzLjcxMDRMNy4xMTU4NyAxMy43MDg3TDcuMTMyMDUgMTMuNzAzM0M3LjE0NTMxIDEzLjY5ODkgNy4xNjM0NiAxMy42OTI3IDcuMTg2MTkgMTMuNjg0OEM3LjIzMTY0IDEzLjY2OSA3LjI5NTQ2IDEzLjY0NjIgNy4zNzUwMyAxMy42MTYxQzcuNTM0MDMgMTMuNTU1OSA3Ljc1Njg1IDEzLjQ2NjQgOC4wMjIzNiAxMy4zNDU3QzguNTUwOTUgMTMuMTA1MyA5LjI2MTIzIDEyLjczNTUgOS45NzcxNSAxMi4yMTg1QzExLjM5MSAxMS4xOTczIDEyLjk2NDggOS40OTM3NyAxMi45NjQ4IDYuOTgwMThWMi43NTg4QzEyLjk2NDggMi43MTY2IDEyLjk2MTkgMi42NzUxMSAxMi45NTYxIDIuNjM0NTFWMS44ODM3N0gxMi4wODExQzEyLjA3NzUgMS44ODM3NyAxMi4wNzQgMS44ODM3NyAxMi4wNzA0IDEuODgzNzdDMTAuNzk3OSAxLjg4MDA0IDkuNjE5NjIgMS41MTEwMiA4LjczODk0IDEuMTI0ODZDOC43MzUzNCAxLjEyMzI3IDguNzMxNzQgMS4xMjE2OCA4LjcyODE0IDEuMTIwMDlDOC4yOTEwMyAwLjkyNjg2NCA3LjkzODQyIDAuNzM0MDU5IDcuNjk3NzkgMC41OTEzNzNDNy41Nzc3MiAwLjUyMDE3MSA3LjQ4NjIyIDAuNDYxODYgNy40MjY3NiAwLjQyMjc4OUM3LjM5NzA1IDAuNDAzMjY2IDcuMzc1MzkgMC4zODg1ODggNy4zNjIyNCAwLjM3OTU1NEw3LjM0ODk2IDAuMzcwMzVDNy4zNDg5NiAwLjM3MDM1IDcuMzQ4NDcgMC4zNzAwMiA3LjM0NTYzIDAuMzc0MDU0TDcuMzM3NzkgMC4zNjg2NTlMNy4zMzYwOSAwLjM2NzQ3NVpNOC4wMzQ3MSAyLjcyNjkxQzguODYwNCAzLjA5MDYzIDkuOTYwNjYgMy40NjMwOSAxMS4yMDYxIDMuNTg5MDdWNi45ODAxNUgxMS4yMTQ4QzExLjIxNDggOC42Nzk1MyAxMC4xNjM3IDkuOTI1MDcgOC45NTI1NCAxMC43OTk4QzguMzU1OTUgMTEuMjMwNiA3Ljc1Mzc0IDExLjU0NTQgNy4yOTc5NiAxMS43NTI3QzcuMTE2NzEgMTEuODM1MSA2Ljk2MDYyIDExLjg5OTYgNi44Mzk4NCAxMS45NDY5QzYuNzE5MDYgMTEuODk5NiA2LjU2Mjk3IDExLjgzNTEgNi4zODE3MyAxMS43NTI3QzUuOTI1OTUgMTEuNTQ1NCA1LjMyMzczIDExLjIzMDYgNC43MjcxNSAxMC43OTk4QzMuNTE2MDMgOS45MjUwNyAyLjQ2NDg0IDguNjc5NTUgMi40NjQ4NCA2Ljk4MDE4VjMuNTg5MDlDMy43MTczOCAzLjQ2MjM5IDQuODIzMDggMy4wODYzOSA1LjY1MDMzIDIuNzIwNzFDNi4xNDIyOCAyLjUwMzI0IDYuNTQ0ODUgMi4yODUzNyA2LjgzMjU0IDIuMTE2MjRDNy4xMjE4MSAyLjI4NTM1IDcuNTI3IDIuNTAzNTIgOC4wMjE5NiAyLjcyMTMxQzguMDI2MiAyLjcyMzE3IDguMDMwNDUgMi43MjUwNCA4LjAzNDcxIDIuNzI2OTFaTTUuOTY0ODQgMy40MDE0N1Y3Ljc3NjQ3SDcuNzE0ODRWMy40MDE0N0g1Ljk2NDg0Wk01Ljk2NDg0IDEwLjQwMTVWOC42NTE0N0g3LjcxNDg0VjEwLjQwMTVINS45NjQ4NFoiIGZpbGw9ImNyaW1zb24iIHN0cm9rZS13aWR0aD0iMiIvPgo8L3N2Zz4="); - background-color: crimson; -} -.ace_icon_svg.ace_warning_fold { - -webkit-mask-image: url("data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iMjAiIGhlaWdodD0iMTYiIHZpZXdCb3g9IjAgMCAyMCAxNiIgZmlsbD0ibm9uZSIgeG1sbnM9Imh0dHA6Ly93d3cudzMub3JnLzIwMDAvc3ZnIj4KPHBhdGggZmlsbC1ydWxlPSJldmVub2RkIiBjbGlwLXJ1bGU9ImV2ZW5vZGQiIGQ9Ik0xNC43NzY5IDE0LjczMzdMOC42NTE5MiAyLjQ4MzY5QzguMzI5NDYgMS44Mzg3NyA3LjQwOTEzIDEuODM4NzcgNy4wODY2NyAyLjQ4MzY5TDAuOTYxNjY5IDE0LjczMzdDMC42NzA3NzUgMTUuMzE1NSAxLjA5MzgzIDE2IDEuNzQ0MjkgMTZIMTMuOTk0M0MxNC42NDQ4IDE2IDE1LjA2NzggMTUuMzE1NSAxNC43NzY5IDE0LjczMzdaTTMuMTYwMDcgMTQuMjVMNy44NjkyOSA0LjgzMTU2TDEyLjU3ODUgMTQuMjVIMy4xNjAwN1pNOC43NDQyOSAxMS42MjVWMTMuMzc1SDYuOTk0MjlWMTEuNjI1SDguNzQ0MjlaTTYuOTk0MjkgMTAuNzVWNy4yNUg4Ljc0NDI5VjEwLjc1SDYuOTk0MjlaIiBmaWxsPSIjRUM3MjExIi8+CjxwYXRoIGQ9Ik0xMS4xOTkxIDIuOTUyMzhDMTAuODgwOSAyLjMxNDY3IDEwLjM1MzcgMS44MDUyNiA5LjcwNTUgMS41MDlMMTEuMDQxIDEuMDY5NzhDMTEuNjg4MyAwLjk0OTgxNCAxMi4zMzcgMS4yNzI2MyAxMi42MzE3IDEuODYxNDFMMTcuNjEzNiAxMS44MTYxQzE4LjM1MjcgMTMuMjkyOSAxNy41OTM4IDE1LjA4MDQgMTYuMDE4IDE1LjU3NDVDMTYuNDA0NCAxNC40NTA3IDE2LjMyMzEgMTMuMjE4OCAxNS43OTI0IDEyLjE1NTVMMTEuMTk5MSAyLjk1MjM4WiIgZmlsbD0iI0VDNzIxMSIvPgo8L3N2Zz4="); - background-color: darkorange; -} - -.ace_scrollbar { - contain: strict; - position: absolute; - right: 0; - bottom: 0; - z-index: 6; -} - -.ace_scrollbar-inner { - position: absolute; - cursor: text; - left: 0; - top: 0; -} - -.ace_scrollbar-v{ - overflow-x: hidden; - overflow-y: scroll; - top: 0; -} - -.ace_scrollbar-h { - overflow-x: scroll; - overflow-y: hidden; - left: 0; -} - -.ace_print-margin { - position: absolute; - height: 100%; -} - -.ace_text-input { - position: absolute; - z-index: 0; - width: 0.5em; - height: 1em; - opacity: 0; - background: transparent; - -moz-appearance: none; - appearance: none; - border: none; - resize: none; - outline: none; - overflow: hidden; - font: inherit; - padding: 0 1px; - margin: 0 -1px; - contain: strict; - -ms-user-select: text; - -moz-user-select: text; - -webkit-user-select: text; - user-select: text; - /*with \`pre-line\` chrome inserts   instead of space*/ - white-space: pre!important; -} -.ace_text-input.ace_composition { - background: transparent; - color: inherit; - z-index: 1000; - opacity: 1; -} -.ace_composition_placeholder { color: transparent } -.ace_composition_marker { - border-bottom: 1px solid; - position: absolute; - border-radius: 0; - margin-top: 1px; -} - -[ace_nocontext=true] { - transform: none!important; - filter: none!important; - clip-path: none!important; - mask : none!important; - contain: none!important; - perspective: none!important; - mix-blend-mode: initial!important; - z-index: auto; -} - -.ace_layer { - z-index: 1; - position: absolute; - overflow: hidden; - /* workaround for chrome bug https://github.com/ajaxorg/ace/issues/2312*/ - word-wrap: normal; - white-space: pre; - height: 100%; - width: 100%; - box-sizing: border-box; - /* setting pointer-events: auto; on node under the mouse, which changes - during scroll, will break mouse wheel scrolling in Safari */ - pointer-events: none; -} - -.ace_gutter-layer { - position: relative; - width: auto; - text-align: right; - pointer-events: auto; - height: 1000000px; - contain: style size layout; -} - -.ace_text-layer { - font: inherit !important; - position: absolute; - height: 1000000px; - width: 1000000px; - contain: style size layout; -} - -.ace_text-layer > .ace_line, .ace_text-layer > .ace_line_group { - contain: style size layout; - position: absolute; - top: 0; - left: 0; - right: 0; -} - -.ace_hidpi .ace_text-layer, -.ace_hidpi .ace_gutter-layer, -.ace_hidpi .ace_content, -.ace_hidpi .ace_gutter { - contain: strict; -} -.ace_hidpi .ace_text-layer > .ace_line, -.ace_hidpi .ace_text-layer > .ace_line_group { - contain: strict; -} - -.ace_cjk { - display: inline-block; - text-align: center; -} - -.ace_cursor-layer { - z-index: 4; -} - -.ace_cursor { - z-index: 4; - position: absolute; - box-sizing: border-box; - border-left: 2px solid; - /* workaround for smooth cursor repaintng whole screen in chrome */ - transform: translatez(0); -} - -.ace_multiselect .ace_cursor { - border-left-width: 1px; -} - -.ace_slim-cursors .ace_cursor { - border-left-width: 1px; -} - -.ace_overwrite-cursors .ace_cursor { - border-left-width: 0; - border-bottom: 1px solid; -} - -.ace_hidden-cursors .ace_cursor { - opacity: 0.2; -} - -.ace_hasPlaceholder .ace_hidden-cursors .ace_cursor { - opacity: 0; -} - -.ace_smooth-blinking .ace_cursor { - transition: opacity 0.18s; -} - -.ace_animate-blinking .ace_cursor { - animation-duration: 1000ms; - animation-timing-function: step-end; - animation-name: blink-ace-animate; - animation-iteration-count: infinite; -} - -.ace_animate-blinking.ace_smooth-blinking .ace_cursor { - animation-duration: 1000ms; - animation-timing-function: ease-in-out; - animation-name: blink-ace-animate-smooth; -} - -@keyframes blink-ace-animate { - from, to { opacity: 1; } - 60% { opacity: 0; } -} - -@keyframes blink-ace-animate-smooth { - from, to { opacity: 1; } - 45% { opacity: 1; } - 60% { opacity: 0; } - 85% { opacity: 0; } -} - -.ace_marker-layer .ace_step, .ace_marker-layer .ace_stack { - position: absolute; - z-index: 3; -} - -.ace_marker-layer .ace_selection { - position: absolute; - z-index: 5; -} - -.ace_marker-layer .ace_bracket { - position: absolute; - z-index: 6; -} - -.ace_marker-layer .ace_error_bracket { - position: absolute; - border-bottom: 1px solid #DE5555; - border-radius: 0; -} - -.ace_marker-layer .ace_active-line { - position: absolute; - z-index: 2; -} - -.ace_marker-layer .ace_selected-word { - position: absolute; - z-index: 4; - box-sizing: border-box; -} - -.ace_line .ace_fold { - box-sizing: border-box; - - display: inline-block; - height: 11px; - margin-top: -2px; - vertical-align: middle; - - background-image: - url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="), - url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACJJREFUeNpi+P//fxgTAwPDBxDxD078RSX+YeEyDFMCIMAAI3INmXiwf2YAAAAASUVORK5CYII="); - background-repeat: no-repeat, repeat-x; - background-position: center center, top left; - color: transparent; - - border: 1px solid black; - border-radius: 2px; - - cursor: pointer; - pointer-events: auto; -} - -.ace_dark .ace_fold { -} - -.ace_fold:hover{ - background-image: - url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABEAAAAJCAYAAADU6McMAAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAAJpJREFUeNpi/P//PwOlgAXGYGRklAVSokD8GmjwY1wasKljQpYACtpCFeADcHVQfQyMQAwzwAZI3wJKvCLkfKBaMSClBlR7BOQikCFGQEErIH0VqkabiGCAqwUadAzZJRxQr/0gwiXIal8zQQPnNVTgJ1TdawL0T5gBIP1MUJNhBv2HKoQHHjqNrA4WO4zY0glyNKLT2KIfIMAAQsdgGiXvgnYAAAAASUVORK5CYII="), - url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAA3CAYAAADNNiA5AAAAGXRFWHRTb2Z0d2FyZQBBZG9iZSBJbWFnZVJlYWR5ccllPAAAACBJREFUeNpi+P//fz4TAwPDZxDxD5X4i5fLMEwJgAADAEPVDbjNw87ZAAAAAElFTkSuQmCC"); -} - -.ace_tooltip { - background-color: #f5f5f5; - border: 1px solid gray; - border-radius: 1px; - box-shadow: 0 1px 2px rgba(0, 0, 0, 0.3); - color: black; - max-width: 100%; - padding: 3px 4px; - position: fixed; - z-index: 999999; - box-sizing: border-box; - cursor: default; - white-space: pre-wrap; - word-wrap: break-word; - line-height: normal; - font-style: normal; - font-weight: normal; - letter-spacing: normal; - pointer-events: none; - overflow: auto; - max-width: min(60em, 66vw); - overscroll-behavior: contain; -} -.ace_tooltip pre { - white-space: pre-wrap; -} - -.ace_tooltip.ace_dark { - background-color: #636363; - color: #fff; -} - -.ace_tooltip:focus { - outline: 1px solid #5E9ED6; -} - -.ace_icon { - display: inline-block; - width: 18px; - vertical-align: top; -} - -.ace_icon_svg { - display: inline-block; - width: 12px; - vertical-align: top; - -webkit-mask-repeat: no-repeat; - -webkit-mask-size: 12px; - -webkit-mask-position: center; -} - -.ace_folding-enabled > .ace_gutter-cell, .ace_folding-enabled > .ace_gutter-cell_svg-icons { - padding-right: 13px; -} - -.ace_fold-widget { - box-sizing: border-box; - - margin: 0 -12px 0 1px; - display: none; - width: 11px; - vertical-align: top; - - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42mWKsQ0AMAzC8ixLlrzQjzmBiEjp0A6WwBCSPgKAXoLkqSot7nN3yMwR7pZ32NzpKkVoDBUxKAAAAABJRU5ErkJggg=="); - background-repeat: no-repeat; - background-position: center; - - border-radius: 3px; - - border: 1px solid transparent; - cursor: pointer; -} - -.ace_folding-enabled .ace_fold-widget { - display: inline-block; -} - -.ace_fold-widget.ace_end { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAANElEQVR42m3HwQkAMAhD0YzsRchFKI7sAikeWkrxwScEB0nh5e7KTPWimZki4tYfVbX+MNl4pyZXejUO1QAAAABJRU5ErkJggg=="); -} - -.ace_fold-widget.ace_closed { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAGCAYAAAAG5SQMAAAAOUlEQVR42jXKwQkAMAgDwKwqKD4EwQ26sSOkVWjgIIHAzPiCgaqiqnJHZnKICBERHN194O5b9vbLuAVRL+l0YWnZAAAAAElFTkSuQmCCXA=="); -} - -.ace_fold-widget:hover { - border: 1px solid rgba(0, 0, 0, 0.3); - background-color: rgba(255, 255, 255, 0.2); - box-shadow: 0 1px 1px rgba(255, 255, 255, 0.7); -} - -.ace_fold-widget:active { - border: 1px solid rgba(0, 0, 0, 0.4); - background-color: rgba(0, 0, 0, 0.05); - box-shadow: 0 1px 1px rgba(255, 255, 255, 0.8); -} -/** - * Dark version for fold widgets - */ -.ace_dark .ace_fold-widget { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAHklEQVQIW2P4//8/AzoGEQ7oGCaLLAhWiSwB146BAQCSTPYocqT0AAAAAElFTkSuQmCC"); -} -.ace_dark .ace_fold-widget.ace_end { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAUAAAAFCAYAAACNbyblAAAAH0lEQVQIW2P4//8/AxQ7wNjIAjDMgC4AxjCVKBirIAAF0kz2rlhxpAAAAABJRU5ErkJggg=="); -} -.ace_dark .ace_fold-widget.ace_closed { - background-image: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAMAAAAFCAYAAACAcVaiAAAAHElEQVQIW2P4//+/AxAzgDADlOOAznHAKgPWAwARji8UIDTfQQAAAABJRU5ErkJggg=="); -} -.ace_dark .ace_fold-widget:hover { - box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2); - background-color: rgba(255, 255, 255, 0.1); -} -.ace_dark .ace_fold-widget:active { - box-shadow: 0 1px 1px rgba(255, 255, 255, 0.2); -} - -.ace_inline_button { - border: 1px solid lightgray; - display: inline-block; - margin: -1px 8px; - padding: 0 5px; - pointer-events: auto; - cursor: pointer; -} -.ace_inline_button:hover { - border-color: gray; - background: rgba(200,200,200,0.2); - display: inline-block; - pointer-events: auto; -} - -.ace_fold-widget.ace_invalid { - background-color: #FFB4B4; - border-color: #DE5555; -} - -.ace_fade-fold-widgets .ace_fold-widget { - transition: opacity 0.4s ease 0.05s; - opacity: 0; -} - -.ace_fade-fold-widgets:hover .ace_fold-widget { - transition: opacity 0.05s ease 0.05s; - opacity:1; -} - -.ace_underline { - text-decoration: underline; -} - -.ace_bold { - font-weight: bold; -} - -.ace_nobold .ace_bold { - font-weight: normal; -} - -.ace_italic { - font-style: italic; -} - - -.ace_error-marker { - background-color: rgba(255, 0, 0,0.2); - position: absolute; - z-index: 9; -} - -.ace_highlight-marker { - background-color: rgba(255, 255, 0,0.2); - position: absolute; - z-index: 8; -} - -.ace_mobile-menu { - position: absolute; - line-height: 1.5; - border-radius: 4px; - -ms-user-select: none; - -moz-user-select: none; - -webkit-user-select: none; - user-select: none; - background: white; - box-shadow: 1px 3px 2px grey; - border: 1px solid #dcdcdc; - color: black; -} -.ace_dark > .ace_mobile-menu { - background: #333; - color: #ccc; - box-shadow: 1px 3px 2px grey; - border: 1px solid #444; - -} -.ace_mobile-button { - padding: 2px; - cursor: pointer; - overflow: hidden; -} -.ace_mobile-button:hover { - background-color: #eee; - opacity:1; -} -.ace_mobile-button:active { - background-color: #ddd; -} - -.ace_placeholder { - position: relative; - font-family: arial; - transform: scale(0.9); - transform-origin: left; - white-space: pre; - opacity: 0.7; - margin: 0 10px; - z-index: 1; -} - -.ace_ghost_text { - opacity: 0.5; - font-style: italic; -} - -.ace_ghost_text_container > div { - white-space: pre; -} - -.ghost_text_line_wrapped::after { - content: "\u21A9"; - position: absolute; -} - -.ace_lineWidgetContainer.ace_ghost_text { - margin: 0px 4px -} - -.ace_screenreader-only { - position:absolute; - left:-10000px; - top:auto; - width:1px; - height:1px; - overflow:hidden; -} - -.ace_hidden_token { - display: none; -}`}),ace.define("ace/layer/decorators",["require","exports","module","ace/lib/dom","ace/lib/oop","ace/lib/event_emitter"],function(n,r,h){var i=n("../lib/dom"),d=n("../lib/oop"),g=n("../lib/event_emitter").EventEmitter,u=function(){function p(s,o){this.canvas=i.createElement("canvas"),this.renderer=o,this.pixelRatio=1,this.maxHeight=o.layerConfig.maxHeight,this.lineHeight=o.layerConfig.lineHeight,this.canvasHeight=s.parent.scrollHeight,this.heightRatio=this.canvasHeight/this.maxHeight,this.canvasWidth=s.width,this.minDecorationHeight=2*this.pixelRatio|0,this.halfMinDecorationHeight=this.minDecorationHeight/2|0,this.canvas.width=this.canvasWidth,this.canvas.height=this.canvasHeight,this.canvas.style.top="0px",this.canvas.style.right="0px",this.canvas.style.zIndex="7px",this.canvas.style.position="absolute",this.colors={},this.colors.dark={error:"rgba(255, 18, 18, 1)",warning:"rgba(18, 136, 18, 1)",info:"rgba(18, 18, 136, 1)"},this.colors.light={error:"rgb(255,51,51)",warning:"rgb(32,133,72)",info:"rgb(35,68,138)"},s.element.appendChild(this.canvas)}return p.prototype.$updateDecorators=function(s){var o=this.renderer.theme.isDark===!0?this.colors.dark:this.colors.light;if(s){this.maxHeight=s.maxHeight,this.lineHeight=s.lineHeight,this.canvasHeight=s.height;var a=(s.lastRow+1)*this.lineHeight;ak.priority?1:0}var f=this.renderer.session.$annotations;if(l.clearRect(0,0,this.canvas.width,this.canvas.height),f){var m={info:1,warning:2,error:3};f.forEach(function(M){M.priority=m[M.type]||null}),f=f.sort(c);for(var v=this.renderer.session.$foldData,y=0;ythis.canvasHeight&&(E=this.canvasHeight-this.halfMinDecorationHeight),b=Math.round(E-this.halfMinDecorationHeight),_=Math.round(E+this.halfMinDecorationHeight)}l.fillStyle=o[f[y].type]||null,l.fillRect(0,x,this.canvasWidth,_-b)}}var L=this.renderer.session.selection.getCursor();if(L){var w=this.compensateFoldRows(L.row,v),x=Math.round((L.row-w)*this.lineHeight*this.heightRatio);l.fillStyle="rgba(0, 0, 0, 0.5)",l.fillRect(0,x,this.canvasWidth,2)}},p.prototype.compensateFoldRows=function(s,o){var a=0;if(o&&o.length>0)for(var l=0;lo[l].start.row&&s=o[l].end.row&&(a+=o[l].end.row-o[l].start.row);return a},p}();d.implement(u.prototype,g),r.Decorator=u}),ace.define("ace/virtual_renderer",["require","exports","module","ace/lib/oop","ace/lib/dom","ace/lib/lang","ace/config","ace/layer/gutter","ace/layer/marker","ace/layer/text","ace/layer/cursor","ace/scrollbar","ace/scrollbar","ace/scrollbar_custom","ace/scrollbar_custom","ace/renderloop","ace/layer/font_metrics","ace/lib/event_emitter","ace/css/editor-css","ace/layer/decorators","ace/lib/useragent","ace/layer/text_util"],function(n,r,h){var i=n("./lib/oop"),d=n("./lib/dom"),g=n("./lib/lang"),u=n("./config"),p=n("./layer/gutter").Gutter,s=n("./layer/marker").Marker,o=n("./layer/text").Text,a=n("./layer/cursor").Cursor,l=n("./scrollbar").HScrollBar,c=n("./scrollbar").VScrollBar,f=n("./scrollbar_custom").HScrollBar,m=n("./scrollbar_custom").VScrollBar,v=n("./renderloop").RenderLoop,y=n("./layer/font_metrics").FontMetrics,$=n("./lib/event_emitter").EventEmitter,w=n("./css/editor-css"),x=n("./layer/decorators").Decorator,b=n("./lib/useragent"),_=n("./layer/text_util").isTextToken;d.importCssString(w,"ace_editor.css",!1);var R=function(){function E(L,M){var k=this;this.container=L||d.createElement("div"),d.addCssClass(this.container,"ace_editor"),d.HI_DPI&&d.addCssClass(this.container,"ace_hidpi"),this.setTheme(M),u.get("useStrictCSP")==null&&u.set("useStrictCSP",!1),this.$gutter=d.createElement("div"),this.$gutter.className="ace_gutter",this.container.appendChild(this.$gutter),this.$gutter.setAttribute("aria-hidden","true"),this.scroller=d.createElement("div"),this.scroller.className="ace_scroller",this.container.appendChild(this.scroller),this.content=d.createElement("div"),this.content.className="ace_content",this.scroller.appendChild(this.content),this.$gutterLayer=new p(this.$gutter),this.$gutterLayer.on("changeGutterWidth",this.onGutterResize.bind(this)),this.$markerBack=new s(this.content);var C=this.$textLayer=new o(this.content);this.canvas=C.element,this.$markerFront=new s(this.content),this.$cursorLayer=new a(this.content),this.$horizScroll=!1,this.$vScroll=!1,this.scrollBar=this.scrollBarV=new c(this.container,this),this.scrollBarH=new l(this.container,this),this.scrollBarV.on("scroll",function(S){k.$scrollAnimation||k.session.setScrollTop(S.data-k.scrollMargin.top)}),this.scrollBarH.on("scroll",function(S){k.$scrollAnimation||k.session.setScrollLeft(S.data-k.scrollMargin.left)}),this.scrollTop=0,this.scrollLeft=0,this.cursorPos={row:0,column:0},this.$fontMetrics=new y(this.container),this.$textLayer.$setFontMetrics(this.$fontMetrics),this.$textLayer.on("changeCharacterSize",function(S){k.updateCharacterSize(),k.onResize(!0,k.gutterWidth,k.$size.width,k.$size.height),k._signal("changeCharacterSize",S)}),this.$size={width:0,height:0,scrollerHeight:0,scrollerWidth:0,$dirty:!0},this.layerConfig={width:1,padding:0,firstRow:0,firstRowScreen:0,lastRow:0,lineHeight:0,characterWidth:0,minHeight:1,maxHeight:1,offset:0,height:1,gutterOffset:1},this.scrollMargin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.margin={left:0,right:0,top:0,bottom:0,v:0,h:0},this.$keepTextAreaAtCursor=!b.isIOS,this.$loop=new v(this.$renderChanges.bind(this),this.container.ownerDocument.defaultView),this.$loop.schedule(this.CHANGE_FULL),this.updateCharacterSize(),this.setPadding(4),this.$addResizeObserver(),u.resetOptions(this),u._signal("renderer",this)}return E.prototype.updateCharacterSize=function(){this.$textLayer.allowBoldFonts!=this.$allowBoldFonts&&(this.$allowBoldFonts=this.$textLayer.allowBoldFonts,this.setStyle("ace_nobold",!this.$allowBoldFonts)),this.layerConfig.characterWidth=this.characterWidth=this.$textLayer.getCharacterWidth(),this.layerConfig.lineHeight=this.lineHeight=this.$textLayer.getLineHeight(),this.$updatePrintMargin(),d.setStyle(this.scroller.style,"line-height",this.lineHeight+"px")},E.prototype.setSession=function(L){this.session&&this.session.doc.off("changeNewLineMode",this.onChangeNewLineMode),this.session=L,L&&this.scrollMargin.top&&L.getScrollTop()<=0&&L.setScrollTop(-this.scrollMargin.top),this.$cursorLayer.setSession(L),this.$markerBack.setSession(L),this.$markerFront.setSession(L),this.$gutterLayer.setSession(L),this.$textLayer.setSession(L),L&&(this.$loop.schedule(this.CHANGE_FULL),this.session.$setFontMetrics(this.$fontMetrics),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.onChangeNewLineMode=this.onChangeNewLineMode.bind(this),this.onChangeNewLineMode(),this.session.doc.on("changeNewLineMode",this.onChangeNewLineMode))},E.prototype.updateLines=function(L,M,k){if(M===void 0&&(M=1/0),this.$changedLines?(this.$changedLines.firstRow>L&&(this.$changedLines.firstRow=L),this.$changedLines.lastRowthis.layerConfig.lastRow||this.$loop.schedule(this.CHANGE_LINES)},E.prototype.onChangeNewLineMode=function(){this.$loop.schedule(this.CHANGE_TEXT),this.$textLayer.$updateEolChar(),this.session.$bidiHandler.setEolChar(this.$textLayer.EOL_CHAR)},E.prototype.onChangeTabSize=function(){this.$loop.schedule(this.CHANGE_TEXT|this.CHANGE_MARKER),this.$textLayer.onChangeTabSize()},E.prototype.updateText=function(){this.$loop.schedule(this.CHANGE_TEXT)},E.prototype.updateFull=function(L){L?this.$renderChanges(this.CHANGE_FULL,!0):this.$loop.schedule(this.CHANGE_FULL)},E.prototype.updateFontSize=function(){this.$textLayer.checkForSizeChanges()},E.prototype.$updateSizeAsync=function(){this.$loop.pending?this.$size.$dirty=!0:this.onResize()},E.prototype.onResize=function(L,M,k,C){if(!(this.resizing>2)){this.resizing>0?this.resizing++:this.resizing=L?1:0;var S=this.container;C||(C=S.clientHeight||S.scrollHeight),!C&&this.$maxLines&&this.lineHeight>1&&(!S.style.height||S.style.height=="0px")&&(S.style.height="1px",C=S.clientHeight||S.scrollHeight),k||(k=S.clientWidth||S.scrollWidth);var A=this.$updateCachedSize(L,M,k,C);if(this.$resizeTimer&&this.$resizeTimer.cancel(),!this.$size.scrollerHeight||!k&&!C)return this.resizing=0;L&&(this.$gutterLayer.$padding=null),L?this.$renderChanges(A|this.$changes,!0):this.$loop.schedule(A|this.$changes),this.resizing&&(this.resizing=0),this.scrollBarH.scrollLeft=this.scrollBarV.scrollTop=null,this.$customScrollbar&&this.$updateCustomScrollbar(!0)}},E.prototype.$updateCachedSize=function(L,M,k,C){C-=this.$extraHeight||0;var S=0,A=this.$size,T={width:A.width,height:A.height,scrollerHeight:A.scrollerHeight,scrollerWidth:A.scrollerWidth};if(C&&(L||A.height!=C)&&(A.height=C,S|=this.CHANGE_SIZE,A.scrollerHeight=A.height,this.$horizScroll&&(A.scrollerHeight-=this.scrollBarH.getHeight()),this.scrollBarV.setHeight(A.scrollerHeight),this.scrollBarV.element.style.bottom=this.scrollBarH.getHeight()+"px",S=S|this.CHANGE_SCROLL),k&&(L||A.width!=k)){S|=this.CHANGE_SIZE,A.width=k,M==null&&(M=this.$showGutter?this.$gutter.offsetWidth:0),this.gutterWidth=M,d.setStyle(this.scrollBarH.element.style,"left",M+"px"),d.setStyle(this.scroller.style,"left",M+this.margin.left+"px"),A.scrollerWidth=Math.max(0,k-M-this.scrollBarV.getWidth()-this.margin.h),d.setStyle(this.$gutter.style,"left",this.margin.left+"px");var I=this.scrollBarV.getWidth()+"px";d.setStyle(this.scrollBarH.element.style,"right",I),d.setStyle(this.scroller.style,"right",I),d.setStyle(this.scroller.style,"bottom",this.scrollBarH.getHeight()),this.scrollBarH.setWidth(A.scrollerWidth),(this.session&&this.session.getUseWrapMode()&&this.adjustWrapLimit()||L)&&(S|=this.CHANGE_FULL)}return A.$dirty=!k||!C,S&&this._signal("resize",T),S},E.prototype.onGutterResize=function(L){var M=this.$showGutter?L:0;M!=this.gutterWidth&&(this.$changes|=this.$updateCachedSize(!0,M,this.$size.width,this.$size.height)),this.session.getUseWrapMode()&&this.adjustWrapLimit()?this.$loop.schedule(this.CHANGE_FULL):this.$size.$dirty?this.$loop.schedule(this.CHANGE_FULL):this.$computeLayerConfig()},E.prototype.adjustWrapLimit=function(){var L=this.$size.scrollerWidth-this.$padding*2,M=Math.floor(L/this.characterWidth);return this.session.adjustWrapLimit(M,this.$showPrintMargin&&this.$printMarginColumn)},E.prototype.setAnimatedScroll=function(L){this.setOption("animatedScroll",L)},E.prototype.getAnimatedScroll=function(){return this.$animatedScroll},E.prototype.setShowInvisibles=function(L){this.setOption("showInvisibles",L),this.session.$bidiHandler.setShowInvisibles(L)},E.prototype.getShowInvisibles=function(){return this.getOption("showInvisibles")},E.prototype.getDisplayIndentGuides=function(){return this.getOption("displayIndentGuides")},E.prototype.setDisplayIndentGuides=function(L){this.setOption("displayIndentGuides",L)},E.prototype.getHighlightIndentGuides=function(){return this.getOption("highlightIndentGuides")},E.prototype.setHighlightIndentGuides=function(L){this.setOption("highlightIndentGuides",L)},E.prototype.setShowPrintMargin=function(L){this.setOption("showPrintMargin",L)},E.prototype.getShowPrintMargin=function(){return this.getOption("showPrintMargin")},E.prototype.setPrintMarginColumn=function(L){this.setOption("printMarginColumn",L)},E.prototype.getPrintMarginColumn=function(){return this.getOption("printMarginColumn")},E.prototype.getShowGutter=function(){return this.getOption("showGutter")},E.prototype.setShowGutter=function(L){return this.setOption("showGutter",L)},E.prototype.getFadeFoldWidgets=function(){return this.getOption("fadeFoldWidgets")},E.prototype.setFadeFoldWidgets=function(L){this.setOption("fadeFoldWidgets",L)},E.prototype.setHighlightGutterLine=function(L){this.setOption("highlightGutterLine",L)},E.prototype.getHighlightGutterLine=function(){return this.getOption("highlightGutterLine")},E.prototype.$updatePrintMargin=function(){if(!(!this.$showPrintMargin&&!this.$printMarginEl)){if(!this.$printMarginEl){var L=d.createElement("div");L.className="ace_layer ace_print-margin-layer",this.$printMarginEl=d.createElement("div"),this.$printMarginEl.className="ace_print-margin",L.appendChild(this.$printMarginEl),this.content.insertBefore(L,this.content.firstChild)}var M=this.$printMarginEl.style;M.left=Math.round(this.characterWidth*this.$printMarginColumn+this.$padding)+"px",M.visibility=this.$showPrintMargin?"visible":"hidden",this.session&&this.session.$wrap==-1&&this.adjustWrapLimit()}},E.prototype.getContainerElement=function(){return this.container},E.prototype.getMouseEventTarget=function(){return this.scroller},E.prototype.getTextAreaContainer=function(){return this.container},E.prototype.$moveTextAreaToCursor=function(){if(!this.$isMousePressed){var L=this.textarea.style,M=this.$composition;if(!this.$keepTextAreaAtCursor&&!M){d.translate(this.textarea,-100,0);return}var k=this.$cursorLayer.$pixelPos;if(k){M&&M.markerRange&&(k=this.$cursorLayer.getPixelPosition(M.markerRange.start,!0));var C=this.layerConfig,S=k.top,A=k.left;S-=C.offset;var T=M&&M.useTextareaForIME||b.isMobile?this.lineHeight:1;if(S<0||S>C.height-T){d.translate(this.textarea,0,0);return}var I=1,N=this.$size.height-T;if(!M)S+=this.lineHeight;else if(M.useTextareaForIME){var O=this.textarea.value;I=this.characterWidth*this.session.$getStringScreenWidth(O)[0]}else S+=this.lineHeight+2;A-=this.scrollLeft,A>this.$size.scrollerWidth-I&&(A=this.$size.scrollerWidth-I),A+=this.gutterWidth+this.margin.left,d.setStyle(L,"height",T+"px"),d.setStyle(L,"width",I+"px"),d.translate(this.textarea,Math.min(A,this.$size.scrollerWidth-I),Math.min(S,N))}}},E.prototype.getFirstVisibleRow=function(){return this.layerConfig.firstRow},E.prototype.getFirstFullyVisibleRow=function(){return this.layerConfig.firstRow+(this.layerConfig.offset===0?0:1)},E.prototype.getLastFullyVisibleRow=function(){var L=this.layerConfig,M=L.lastRow,k=this.session.documentToScreenRow(M,0)*L.lineHeight;return k-this.session.getScrollTop()>L.height-L.lineHeight?M-1:M},E.prototype.getLastVisibleRow=function(){return this.layerConfig.lastRow},E.prototype.setPadding=function(L){this.$padding=L,this.$textLayer.setPadding(L),this.$cursorLayer.setPadding(L),this.$markerFront.setPadding(L),this.$markerBack.setPadding(L),this.$loop.schedule(this.CHANGE_FULL),this.$updatePrintMargin()},E.prototype.setScrollMargin=function(L,M,k,C){var S=this.scrollMargin;S.top=L|0,S.bottom=M|0,S.right=C|0,S.left=k|0,S.v=S.top+S.bottom,S.h=S.left+S.right,S.top&&this.scrollTop<=0&&this.session&&this.session.setScrollTop(-S.top),this.updateFull()},E.prototype.setMargin=function(L,M,k,C){var S=this.margin;S.top=L|0,S.bottom=M|0,S.right=C|0,S.left=k|0,S.v=S.top+S.bottom,S.h=S.left+S.right,this.$updateCachedSize(!0,this.gutterWidth,this.$size.width,this.$size.height),this.updateFull()},E.prototype.getHScrollBarAlwaysVisible=function(){return this.$hScrollBarAlwaysVisible},E.prototype.setHScrollBarAlwaysVisible=function(L){this.setOption("hScrollBarAlwaysVisible",L)},E.prototype.getVScrollBarAlwaysVisible=function(){return this.$vScrollBarAlwaysVisible},E.prototype.setVScrollBarAlwaysVisible=function(L){this.setOption("vScrollBarAlwaysVisible",L)},E.prototype.$updateScrollBarV=function(){var L=this.layerConfig.maxHeight,M=this.$size.scrollerHeight;!this.$maxLines&&this.$scrollPastEnd&&(L-=(M-this.lineHeight)*this.$scrollPastEnd,this.scrollTop>L-M&&(L=this.scrollTop+M,this.scrollBarV.scrollTop=null)),this.scrollBarV.setScrollHeight(L+this.scrollMargin.v),this.scrollBarV.setScrollTop(this.scrollTop+this.scrollMargin.top)},E.prototype.$updateScrollBarH=function(){this.scrollBarH.setScrollWidth(this.layerConfig.width+2*this.$padding+this.scrollMargin.h),this.scrollBarH.setScrollLeft(this.scrollLeft+this.scrollMargin.left)},E.prototype.freeze=function(){this.$frozen=!0},E.prototype.unfreeze=function(){this.$frozen=!1},E.prototype.$renderChanges=function(L,M){if(this.$changes&&(L|=this.$changes,this.$changes=0),!this.session||!this.container.offsetWidth||this.$frozen||!L&&!M){this.$changes|=L;return}if(this.$size.$dirty)return this.$changes|=L,this.onResize(!0);this.lineHeight||this.$textLayer.checkForSizeChanges(),this._signal("beforeRender",L),this.session&&this.session.$bidiHandler&&this.session.$bidiHandler.updateCharacterWidths(this.$fontMetrics);var k=this.layerConfig;if(L&this.CHANGE_FULL||L&this.CHANGE_SIZE||L&this.CHANGE_TEXT||L&this.CHANGE_LINES||L&this.CHANGE_SCROLL||L&this.CHANGE_H_SCROLL){if(L|=this.$computeLayerConfig()|this.$loop.clear(),k.firstRow!=this.layerConfig.firstRow&&k.firstRowScreen==this.layerConfig.firstRowScreen){var C=this.scrollTop+(k.firstRow-Math.max(this.layerConfig.firstRow,0))*this.lineHeight;C>0&&(this.scrollTop=C,L=L|this.CHANGE_SCROLL,L|=this.$computeLayerConfig()|this.$loop.clear())}k=this.layerConfig,this.$updateScrollBarV(),L&this.CHANGE_H_SCROLL&&this.$updateScrollBarH(),d.translate(this.content,-this.scrollLeft,-k.offset);var S=k.width+2*this.$padding+"px",A=k.minHeight+"px";d.setStyle(this.content.style,"width",S),d.setStyle(this.content.style,"height",A)}if(L&this.CHANGE_H_SCROLL&&(d.translate(this.content,-this.scrollLeft,-k.offset),this.scroller.className=this.scrollLeft<=0?"ace_scroller ":"ace_scroller ace_scroll-left ",this.enableKeyboardAccessibility&&(this.scroller.className+=this.keyboardFocusClassName)),L&this.CHANGE_FULL){this.$changedLines=null,this.$textLayer.update(k),this.$showGutter&&this.$gutterLayer.update(k),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(k),this.$markerBack.update(k),this.$markerFront.update(k),this.$cursorLayer.update(k),this.$moveTextAreaToCursor(),this._signal("afterRender",L);return}if(L&this.CHANGE_SCROLL){this.$changedLines=null,L&this.CHANGE_TEXT||L&this.CHANGE_LINES?this.$textLayer.update(k):this.$textLayer.scrollLines(k),this.$showGutter&&(L&this.CHANGE_GUTTER||L&this.CHANGE_LINES?this.$gutterLayer.update(k):this.$gutterLayer.scrollLines(k)),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(k),this.$markerBack.update(k),this.$markerFront.update(k),this.$cursorLayer.update(k),this.$moveTextAreaToCursor(),this._signal("afterRender",L);return}L&this.CHANGE_TEXT?(this.$changedLines=null,this.$textLayer.update(k),this.$showGutter&&this.$gutterLayer.update(k),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(k)):L&this.CHANGE_LINES?((this.$updateLines()||L&this.CHANGE_GUTTER&&this.$showGutter)&&this.$gutterLayer.update(k),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(k)):L&this.CHANGE_TEXT||L&this.CHANGE_GUTTER?(this.$showGutter&&this.$gutterLayer.update(k),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(k)):L&this.CHANGE_CURSOR&&(this.$highlightGutterLine&&this.$gutterLayer.updateLineHighlight(k),this.$customScrollbar&&this.$scrollDecorator.$updateDecorators(k)),L&this.CHANGE_CURSOR&&(this.$cursorLayer.update(k),this.$moveTextAreaToCursor()),L&(this.CHANGE_MARKER|this.CHANGE_MARKER_FRONT)&&this.$markerFront.update(k),L&(this.CHANGE_MARKER|this.CHANGE_MARKER_BACK)&&this.$markerBack.update(k),this._signal("afterRender",L)},E.prototype.$autosize=function(){var L=this.session.getScreenLength()*this.lineHeight,M=this.$maxLines*this.lineHeight,k=Math.min(M,Math.max((this.$minLines||1)*this.lineHeight,L))+this.scrollMargin.v+(this.$extraHeight||0);this.$horizScroll&&(k+=this.scrollBarH.getHeight()),this.$maxPixelHeight&&k>this.$maxPixelHeight&&(k=this.$maxPixelHeight);var C=k<=2*this.lineHeight,S=!C&&L>M;if(k!=this.desiredHeight||this.$size.height!=this.desiredHeight||S!=this.$vScroll){S!=this.$vScroll&&(this.$vScroll=S,this.scrollBarV.setVisible(S));var A=this.container.clientWidth;this.container.style.height=k+"px",this.$updateCachedSize(!0,this.$gutterWidth,A,k),this.desiredHeight=k,this._signal("autosize")}},E.prototype.$computeLayerConfig=function(){var L=this.session,M=this.$size,k=M.height<=2*this.lineHeight,C=this.session.getScreenLength(),S=C*this.lineHeight,A=this.$getLongestLine(),T=!k&&(this.$hScrollBarAlwaysVisible||M.scrollerWidth-A-2*this.$padding<0),I=this.$horizScroll!==T;I&&(this.$horizScroll=T,this.scrollBarH.setVisible(T));var N=this.$vScroll;this.$maxLines&&this.lineHeight>1&&this.$autosize();var O=M.scrollerHeight+this.lineHeight,D=!this.$maxLines&&this.$scrollPastEnd?(M.scrollerHeight-this.lineHeight)*this.$scrollPastEnd:0;S+=D;var P=this.scrollMargin;this.session.setScrollTop(Math.max(-P.top,Math.min(this.scrollTop,S-M.scrollerHeight+P.bottom))),this.session.setScrollLeft(Math.max(-P.left,Math.min(this.scrollLeft,A+2*this.$padding-M.scrollerWidth+P.right)));var B=!k&&(this.$vScrollBarAlwaysVisible||M.scrollerHeight-S+D<0||this.scrollTop>P.top),j=N!==B;j&&(this.$vScroll=B,this.scrollBarV.setVisible(B));var F=this.scrollTop%this.lineHeight,H=Math.ceil(O/this.lineHeight)-1,G=Math.max(0,Math.round((this.scrollTop-F)/this.lineHeight)),Q=G+H,X,J,ee=this.lineHeight;G=L.screenToDocumentRow(G,0);var ae=L.getFoldLine(G);ae&&(G=ae.start.row),X=L.documentToScreenRow(G,0),J=L.getRowLength(G)*ee,Q=Math.min(L.screenToDocumentRow(Q,0),L.getLength()-1),O=M.scrollerHeight+L.getRowLength(Q)*ee+J,F=this.scrollTop-X*ee;var ue=0;return(this.layerConfig.width!=A||I)&&(ue=this.CHANGE_H_SCROLL),(I||j)&&(ue|=this.$updateCachedSize(!0,this.gutterWidth,M.width,M.height),this._signal("scrollbarVisibilityChanged"),j&&(A=this.$getLongestLine())),this.layerConfig={width:A,padding:this.$padding,firstRow:G,firstRowScreen:X,lastRow:Q,lineHeight:ee,characterWidth:this.characterWidth,minHeight:O,maxHeight:S,offset:F,gutterOffset:ee?Math.max(0,Math.ceil((F+M.height-M.scrollerHeight)/ee)):0,height:this.$size.scrollerHeight},this.session.$bidiHandler&&this.session.$bidiHandler.setContentWidth(A-this.$padding),ue},E.prototype.$updateLines=function(){if(this.$changedLines){var L=this.$changedLines.firstRow,M=this.$changedLines.lastRow;this.$changedLines=null;var k=this.layerConfig;if(!(L>k.lastRow+1)&&!(Mthis.$textLayer.MAX_LINE_LENGTH&&(L=this.$textLayer.MAX_LINE_LENGTH+30),Math.max(this.$size.scrollerWidth-2*this.$padding,Math.round(L*this.characterWidth))},E.prototype.updateFrontMarkers=function(){this.$markerFront.setMarkers(this.session.getMarkers(!0)),this.$loop.schedule(this.CHANGE_MARKER_FRONT)},E.prototype.updateBackMarkers=function(){this.$markerBack.setMarkers(this.session.getMarkers()),this.$loop.schedule(this.CHANGE_MARKER_BACK)},E.prototype.addGutterDecoration=function(L,M){this.$gutterLayer.addGutterDecoration(L,M)},E.prototype.removeGutterDecoration=function(L,M){this.$gutterLayer.removeGutterDecoration(L,M)},E.prototype.updateBreakpoints=function(L){this._rows=L,this.$loop.schedule(this.CHANGE_GUTTER)},E.prototype.setAnnotations=function(L){this.$gutterLayer.setAnnotations(L),this.$loop.schedule(this.CHANGE_GUTTER)},E.prototype.updateCursor=function(){this.$loop.schedule(this.CHANGE_CURSOR)},E.prototype.hideCursor=function(){this.$cursorLayer.hideCursor()},E.prototype.showCursor=function(){this.$cursorLayer.showCursor()},E.prototype.scrollSelectionIntoView=function(L,M,k){this.scrollCursorIntoView(L,k),this.scrollCursorIntoView(M,k)},E.prototype.scrollCursorIntoView=function(L,M,k){if(this.$size.scrollerHeight!==0){var C=this.$cursorLayer.getPixelPosition(L),S=C.left,A=C.top,T=k&&k.top||0,I=k&&k.bottom||0;this.$scrollAnimation&&(this.$stopAnimation=!0);var N=this.$scrollAnimation?this.session.getScrollTop():this.scrollTop;N+T>A?(M&&N+T>A+this.lineHeight&&(A-=M*this.$size.scrollerHeight),A===0&&(A=-this.scrollMargin.top),this.session.setScrollTop(A)):N+this.$size.scrollerHeight-I=1-this.scrollMargin.top||M>0&&this.session.getScrollTop()+this.$size.scrollerHeight-this.layerConfig.maxHeight<-1+this.scrollMargin.bottom||L<0&&this.session.getScrollLeft()>=1-this.scrollMargin.left||L>0&&this.session.getScrollLeft()+this.$size.scrollerWidth-this.layerConfig.width<-1+this.scrollMargin.right)return!0},E.prototype.pixelToScreenCoordinates=function(L,M){var k;if(this.$hasCssTransforms){k={top:0,left:0};var C=this.$fontMetrics.transformCoordinates([L,M]);L=C[1]-this.gutterWidth-this.margin.left,M=C[0]}else k=this.scroller.getBoundingClientRect();var S=L+this.scrollLeft-k.left-this.$padding,A=S/this.characterWidth,T=Math.floor((M+this.scrollTop-k.top)/this.lineHeight),I=this.$blockCursor?Math.floor(A):Math.round(A);return{row:T,column:I,side:A-I>0?1:-1,offsetX:S}},E.prototype.screenToTextCoordinates=function(L,M){var k;if(this.$hasCssTransforms){k={top:0,left:0};var C=this.$fontMetrics.transformCoordinates([L,M]);L=C[1]-this.gutterWidth-this.margin.left,M=C[0]}else k=this.scroller.getBoundingClientRect();var S=L+this.scrollLeft-k.left-this.$padding,A=S/this.characterWidth,T=this.$blockCursor?Math.floor(A):Math.round(A),I=Math.floor((M+this.scrollTop-k.top)/this.lineHeight);return this.session.screenToDocumentPosition(I,Math.max(T,0),S)},E.prototype.textToScreenCoordinates=function(L,M){var k=this.scroller.getBoundingClientRect(),C=this.session.documentToScreenPosition(L,M),S=this.$padding+(this.session.$bidiHandler.isBidiRow(C.row,L)?this.session.$bidiHandler.getPosLeft(C.column):Math.round(C.column*this.characterWidth)),A=C.row*this.lineHeight;return{pageX:k.left+S-this.scrollLeft,pageY:k.top+A-this.scrollTop}},E.prototype.visualizeFocus=function(){d.addCssClass(this.container,"ace_focus")},E.prototype.visualizeBlur=function(){d.removeCssClass(this.container,"ace_focus")},E.prototype.showComposition=function(L){this.$composition=L,L.cssText||(L.cssText=this.textarea.style.cssText),L.useTextareaForIME==null&&(L.useTextareaForIME=this.$useTextareaForIME),this.$useTextareaForIME?(d.addCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText="",this.$moveTextAreaToCursor(),this.$cursorLayer.element.style.display="none"):L.markerId=this.session.addMarker(L.markerRange,"ace_composition_marker","text")},E.prototype.setCompositionText=function(L){var M=this.session.selection.cursor;this.addToken(L,"composition_placeholder",M.row,M.column),this.$moveTextAreaToCursor()},E.prototype.hideComposition=function(){if(this.$composition){this.$composition.markerId&&this.session.removeMarker(this.$composition.markerId),d.removeCssClass(this.textarea,"ace_composition"),this.textarea.style.cssText=this.$composition.cssText;var L=this.session.selection.cursor;this.removeExtraToken(L.row,L.column),this.$composition=null,this.$cursorLayer.element.style.display=""}},E.prototype.setGhostText=function(L,M){var k=this.session.selection.cursor,C=M||{row:k.row,column:k.column};this.removeGhostText();var S=this.$calculateWrappedTextChunks(L,C);this.addToken(S[0].text,"ghost_text",C.row,C.column),this.$ghostText={text:L,position:{row:C.row,column:C.column}};var A=d.createElement("div");if(S.length>1){var T=this.hideTokensAfterPosition(C.row,C.column),I;S.slice(1).forEach(function(j){var F=d.createElement("div"),H=d.createElement("span");H.className="ace_ghost_text",j.wrapped&&(F.className="ghost_text_line_wrapped"),j.text.length===0&&(j.text=" "),H.appendChild(d.createTextNode(j.text)),F.appendChild(H),A.appendChild(F),I=F}),T.forEach(function(j){var F=d.createElement("span");_(j.type)||(F.className="ace_"+j.type.replace(/\./g," ace_")),F.appendChild(d.createTextNode(j.value)),I.appendChild(F)}),this.$ghostTextWidget={el:A,row:C.row,column:C.column,className:"ace_ghost_text_container"},this.session.widgetManager.addLineWidget(this.$ghostTextWidget);var N=this.$cursorLayer.getPixelPosition(C,!0),O=this.container,D=O.getBoundingClientRect().height,P=S.length*this.lineHeight,B=P0){var O=0;N.push(S[T].length);for(var D=0;D1||Math.abs(L.$size.height-C)>1?L.$resizeTimer.delay():L.$resizeTimer.cancel()}),this.$resizeObserver.observe(this.container)}},E}();R.prototype.CHANGE_CURSOR=1,R.prototype.CHANGE_MARKER=2,R.prototype.CHANGE_GUTTER=4,R.prototype.CHANGE_SCROLL=8,R.prototype.CHANGE_LINES=16,R.prototype.CHANGE_TEXT=32,R.prototype.CHANGE_SIZE=64,R.prototype.CHANGE_MARKER_BACK=128,R.prototype.CHANGE_MARKER_FRONT=256,R.prototype.CHANGE_FULL=512,R.prototype.CHANGE_H_SCROLL=1024,R.prototype.$changes=0,R.prototype.$padding=null,R.prototype.$frozen=!1,R.prototype.STEPS=8,i.implement(R.prototype,$),u.defineOptions(R.prototype,"renderer",{useResizeObserver:{set:function(E){!E&&this.$resizeObserver?(this.$resizeObserver.disconnect(),this.$resizeTimer.cancel(),this.$resizeTimer=this.$resizeObserver=null):E&&!this.$resizeObserver&&this.$addResizeObserver()}},animatedScroll:{initialValue:!1},showInvisibles:{set:function(E){this.$textLayer.setShowInvisibles(E)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!1},showPrintMargin:{set:function(){this.$updatePrintMargin()},initialValue:!0},printMarginColumn:{set:function(){this.$updatePrintMargin()},initialValue:80},printMargin:{set:function(E){typeof E=="number"&&(this.$printMarginColumn=E),this.$showPrintMargin=!!E,this.$updatePrintMargin()},get:function(){return this.$showPrintMargin&&this.$printMarginColumn}},showGutter:{set:function(E){this.$gutter.style.display=E?"block":"none",this.$loop.schedule(this.CHANGE_FULL),this.onGutterResize()},initialValue:!0},useSvgGutterIcons:{set:function(E){this.$gutterLayer.$useSvgGutterIcons=E},initialValue:!1},showFoldedAnnotations:{set:function(E){this.$gutterLayer.$showFoldedAnnotations=E},initialValue:!1},fadeFoldWidgets:{set:function(E){d.setCssClass(this.$gutter,"ace_fade-fold-widgets",E)},initialValue:!1},showFoldWidgets:{set:function(E){this.$gutterLayer.setShowFoldWidgets(E),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},displayIndentGuides:{set:function(E){this.$textLayer.setDisplayIndentGuides(E)&&this.$loop.schedule(this.CHANGE_TEXT)},initialValue:!0},highlightIndentGuides:{set:function(E){this.$textLayer.setHighlightIndentGuides(E)==!0?this.$textLayer.$highlightIndentGuide():this.$textLayer.$clearActiveIndentGuide(this.$textLayer.$lines.cells)},initialValue:!0},highlightGutterLine:{set:function(E){this.$gutterLayer.setHighlightGutterLine(E),this.$loop.schedule(this.CHANGE_GUTTER)},initialValue:!0},hScrollBarAlwaysVisible:{set:function(E){(!this.$hScrollBarAlwaysVisible||!this.$horizScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},vScrollBarAlwaysVisible:{set:function(E){(!this.$vScrollBarAlwaysVisible||!this.$vScroll)&&this.$loop.schedule(this.CHANGE_SCROLL)},initialValue:!1},fontSize:{set:function(E){typeof E=="number"&&(E=E+"px"),this.container.style.fontSize=E,this.updateFontSize()},initialValue:12},fontFamily:{set:function(E){this.container.style.fontFamily=E,this.updateFontSize()}},maxLines:{set:function(E){this.updateFull()}},minLines:{set:function(E){this.$minLines<562949953421311||(this.$minLines=0),this.updateFull()}},maxPixelHeight:{set:function(E){this.updateFull()},initialValue:0},scrollPastEnd:{set:function(E){E=+E||0,this.$scrollPastEnd!=E&&(this.$scrollPastEnd=E,this.$loop.schedule(this.CHANGE_SCROLL))},initialValue:0,handlesSet:!0},fixedWidthGutter:{set:function(E){this.$gutterLayer.$fixedWidth=!!E,this.$loop.schedule(this.CHANGE_GUTTER)}},customScrollbar:{set:function(E){this.$updateCustomScrollbar(E)},initialValue:!1},theme:{set:function(E){this.setTheme(E)},get:function(){return this.$themeId||this.theme},initialValue:"./theme/textmate",handlesSet:!0},hasCssTransforms:{},useTextareaForIME:{initialValue:!b.isMobile&&!b.isIE}}),r.VirtualRenderer=R}),ace.define("ace/worker/worker_client",["require","exports","module","ace/lib/oop","ace/lib/net","ace/lib/event_emitter","ace/config"],function(n,r,h){var i=n("../lib/oop"),d=n("../lib/net"),g=n("../lib/event_emitter").EventEmitter,u=n("../config");function p(l){var c="importScripts('"+d.qualifyURL(l)+"');";try{return new Blob([c],{type:"application/javascript"})}catch{var f=window.BlobBuilder||window.WebKitBlobBuilder||window.MozBlobBuilder,m=new f;return m.append(c),m.getBlob("application/javascript")}}function s(l){if(typeof Worker>"u")return{postMessage:function(){},terminate:function(){}};if(u.get("loadWorkerFromBlob")){var c=p(l),f=window.URL||window.webkitURL,m=f.createObjectURL(c);return new Worker(m)}return new Worker(l)}var o=function(l){l.postMessage||(l=this.$createWorkerFromOldConfig.apply(this,arguments)),this.$worker=l,this.$sendDeltaQueue=this.$sendDeltaQueue.bind(this),this.changeListener=this.changeListener.bind(this),this.onMessage=this.onMessage.bind(this),this.callbackId=1,this.callbacks={},this.$worker.onmessage=this.onMessage};(function(){i.implement(this,g),this.$createWorkerFromOldConfig=function(l,c,f,m,v){if(n.nameToUrl&&!n.toUrl&&(n.toUrl=n.nameToUrl),u.get("packaged")||!n.toUrl)m=m||u.moduleUrl(c,"worker");else{var y=this.$normalizePath;m=m||y(n.toUrl("ace/worker/worker.js",null,"_"));var $={};l.forEach(function(w){$[w]=y(n.toUrl(w,null,"_").replace(/(\.js)?(\?.*)?$/,""))})}return this.$worker=s(m),v&&this.send("importScripts",v),this.$worker.postMessage({init:!0,tlns:$,module:c,classname:f}),this.$worker},this.onMessage=function(l){var c=l.data;switch(c.type){case"event":this._signal(c.name,{data:c.data});break;case"call":var f=this.callbacks[c.id];f&&(f(c.data),delete this.callbacks[c.id]);break;case"error":this.reportError(c.data);break;case"log":window.console&&console.log&&console.log.apply(console,c.data);break}},this.reportError=function(l){window.console&&console.error&&console.error(l)},this.$normalizePath=function(l){return d.qualifyURL(l)},this.terminate=function(){this._signal("terminate",{}),this.deltaQueue=null,this.$worker.terminate(),this.$worker.onerror=function(l){l.preventDefault()},this.$worker=null,this.$doc&&this.$doc.off("change",this.changeListener),this.$doc=null},this.send=function(l,c){this.$worker.postMessage({command:l,args:c})},this.call=function(l,c,f){if(f){var m=this.callbackId++;this.callbacks[m]=f,c.push(m)}this.send(l,c)},this.emit=function(l,c){try{c.data&&c.data.err&&(c.data.err={message:c.data.err.message,stack:c.data.err.stack,code:c.data.err.code}),this.$worker&&this.$worker.postMessage({event:l,data:{data:c.data}})}catch(f){console.error(f.stack)}},this.attachToDocument=function(l){this.$doc&&this.terminate(),this.$doc=l,this.call("setValue",[l.getValue()]),l.on("change",this.changeListener,!0)},this.changeListener=function(l){this.deltaQueue||(this.deltaQueue=[],setTimeout(this.$sendDeltaQueue,0)),l.action=="insert"?this.deltaQueue.push(l.start,l.lines):this.deltaQueue.push(l.start,l.end)},this.$sendDeltaQueue=function(){var l=this.deltaQueue;l&&(this.deltaQueue=null,l.length>50&&l.length>this.$doc.getLength()>>1?this.call("setValue",[this.$doc.getValue()]):this.emit("change",{data:l}))}}).call(o.prototype);var a=function(l,c,f){var m=null,v=!1,y=Object.create(g),$=[],w=new o({messageBuffer:$,terminate:function(){},postMessage:function(b){$.push(b),m&&(v?setTimeout(x):x())}});w.setEmitSync=function(b){v=b};var x=function(){var b=$.shift();b.command?m[b.command].apply(m,b.args):b.event&&y._signal(b.event,b.data)};return y.postMessage=function(b){w.onMessage({data:b})},y.callback=function(b,_){this.postMessage({type:"call",id:_,data:b})},y.emit=function(b,_){this.postMessage({type:"event",name:b,data:_})},u.loadModule(["worker",c],function(b){for(m=new b[f](y);$.length;)x()}),w};r.UIWorkerClient=a,r.WorkerClient=o,r.createWorker=s}),ace.define("ace/placeholder",["require","exports","module","ace/range","ace/lib/event_emitter","ace/lib/oop"],function(n,r,h){var i=n("./range").Range,d=n("./lib/event_emitter").EventEmitter,g=n("./lib/oop"),u=function(){function p(s,o,a,l,c,f){var m=this;this.length=o,this.session=s,this.doc=s.getDocument(),this.mainClass=c,this.othersClass=f,this.$onUpdate=this.onUpdate.bind(this),this.doc.on("change",this.$onUpdate,!0),this.$others=l,this.$onCursorChange=function(){setTimeout(function(){m.onCursorChange()})},this.$pos=a;var v=s.getUndoManager().$undoStack||s.getUndoManager().$undostack||{length:-1};this.$undoStackDepth=v.length,this.setup(),s.selection.on("changeCursor",this.$onCursorChange)}return p.prototype.setup=function(){var s=this,o=this.doc,a=this.session;this.selectionBefore=a.selection.toJSON(),a.selection.inMultiSelectMode&&a.selection.toSingleRange(),this.pos=o.createAnchor(this.$pos.row,this.$pos.column);var l=this.pos;l.$insertRight=!0,l.detach(),l.markerId=a.addMarker(new i(l.row,l.column,l.row,l.column+this.length),this.mainClass,null,!1),this.others=[],this.$others.forEach(function(c){var f=o.createAnchor(c.row,c.column);f.$insertRight=!0,f.detach(),s.others.push(f)}),a.setUndoSelect(!1)},p.prototype.showOtherMarkers=function(){if(!this.othersActive){var s=this.session,o=this;this.othersActive=!0,this.others.forEach(function(a){a.markerId=s.addMarker(new i(a.row,a.column,a.row,a.column+o.length),o.othersClass,null,!1)})}},p.prototype.hideOtherMarkers=function(){if(this.othersActive){this.othersActive=!1;for(var s=0;s=this.pos.column&&o.start.column<=this.pos.column+this.length+1,c=o.start.column-this.pos.column;if(this.updateAnchors(s),l&&(this.length+=a),l&&!this.session.$fromUndo){if(s.action==="insert")for(var f=this.others.length-1;f>=0;f--){var m=this.others[f],v={row:m.row,column:m.column+c};this.doc.insertMergedLines(v,s.lines)}else if(s.action==="remove")for(var f=this.others.length-1;f>=0;f--){var m=this.others[f],v={row:m.row,column:m.column+c};this.doc.remove(new i(v.row,v.column,v.row,v.column-a))}}this.$updating=!1,this.updateMarkers()}},p.prototype.updateAnchors=function(s){this.pos.onChange(s);for(var o=this.others.length;o--;)this.others[o].onChange(s);this.updateMarkers()},p.prototype.updateMarkers=function(){if(!this.$updating){var s=this,o=this.session,a=function(c,f){o.removeMarker(c.markerId),c.markerId=o.addMarker(new i(c.row,c.column,c.row,c.column+s.length),f,null,!1)};a(this.pos,this.mainClass);for(var l=this.others.length;l--;)a(this.others[l],this.othersClass)}},p.prototype.onCursorChange=function(s){if(!(this.$updating||!this.session)){var o=this.session.selection.getCursor();o.row===this.pos.row&&o.column>=this.pos.column&&o.column<=this.pos.column+this.length?(this.showOtherMarkers(),this._emit("cursorEnter",s)):(this.hideOtherMarkers(),this._emit("cursorLeave",s))}},p.prototype.detach=function(){this.session.removeMarker(this.pos&&this.pos.markerId),this.hideOtherMarkers(),this.doc.off("change",this.$onUpdate),this.session.selection.off("changeCursor",this.$onCursorChange),this.session.setUndoSelect(!0),this.session=null},p.prototype.cancel=function(){if(this.$undoStackDepth!==-1){for(var s=this.session.getUndoManager(),o=(s.$undoStack||s.$undostack).length-this.$undoStackDepth,a=0;a1?d.multiSelect.joinSelections():d.multiSelect.splitIntoLines()},bindKey:{win:"Ctrl-Alt-L",mac:"Ctrl-Alt-L"},readOnly:!0},{name:"splitSelectionIntoLines",description:"Split into lines",exec:function(d){d.multiSelect.splitIntoLines()},readOnly:!0},{name:"alignCursors",description:"Align cursors",exec:function(d){d.alignCursors()},bindKey:{win:"Ctrl-Alt-A",mac:"Ctrl-Alt-A"},scrollIntoView:"cursor"},{name:"findAll",description:"Find all",exec:function(d){d.findAll()},bindKey:{win:"Ctrl-Alt-K",mac:"Ctrl-Alt-G"},scrollIntoView:"cursor",readOnly:!0}],r.multiSelectCommands=[{name:"singleSelection",description:"Single selection",bindKey:"esc",exec:function(d){d.exitMultiSelectMode()},scrollIntoView:"cursor",readOnly:!0,isAvailable:function(d){return d&&d.inMultiSelectMode}}];var i=n("../keyboard/hash_handler").HashHandler;r.keyboardHandler=new i(r.multiSelectCommands)}),ace.define("ace/multi_select",["require","exports","module","ace/range_list","ace/range","ace/selection","ace/mouse/multi_select_handler","ace/lib/event","ace/lib/lang","ace/commands/multi_select_commands","ace/search","ace/edit_session","ace/editor","ace/config"],function(n,r,h){var i=n("./range_list").RangeList,d=n("./range").Range,g=n("./selection").Selection,u=n("./mouse/multi_select_handler").onMouseDown,p=n("./lib/event"),s=n("./lib/lang"),o=n("./commands/multi_select_commands");r.commands=o.defaultCommands.concat(o.multiSelectCommands);var a=n("./search").Search,l=new a;function c(w,x,b){return l.$options.wrap=!0,l.$options.needle=x,l.$options.backwards=b==-1,l.find(w)}var f=n("./edit_session").EditSession;(function(){this.getSelectionMarkers=function(){return this.$selectionMarkers}}).call(f.prototype),(function(){this.ranges=null,this.rangeList=null,this.addRange=function(w,x){if(w){if(!this.inMultiSelectMode&&this.rangeCount===0){var b=this.toOrientedRange();if(this.rangeList.add(b),this.rangeList.add(w),this.rangeList.ranges.length!=2)return this.rangeList.removeAll(),x||this.fromOrientedRange(w);this.rangeList.removeAll(),this.rangeList.add(b),this.$onAddRange(b)}w.cursor||(w.cursor=w.end);var _=this.rangeList.add(w);return this.$onAddRange(w),_.length&&this.$onRemoveRange(_),this.rangeCount>1&&!this.inMultiSelectMode&&(this._signal("multiSelect"),this.inMultiSelectMode=!0,this.session.$undoSelect=!1,this.rangeList.attach(this.session)),x||this.fromOrientedRange(w)}},this.toSingleRange=function(w){w=w||this.ranges[0];var x=this.rangeList.removeAll();x.length&&this.$onRemoveRange(x),w&&this.fromOrientedRange(w)},this.substractPoint=function(w){var x=this.rangeList.substractPoint(w);if(x)return this.$onRemoveRange(x),x[0]},this.mergeOverlappingRanges=function(){var w=this.rangeList.merge();w.length&&this.$onRemoveRange(w)},this.$onAddRange=function(w){this.rangeCount=this.rangeList.ranges.length,this.ranges.unshift(w),this._signal("addRange",{range:w})},this.$onRemoveRange=function(w){if(this.rangeCount=this.rangeList.ranges.length,this.rangeCount==1&&this.inMultiSelectMode){var x=this.rangeList.ranges.pop();w.push(x),this.rangeCount=0}for(var b=w.length;b--;){var _=this.ranges.indexOf(w[b]);this.ranges.splice(_,1)}this._signal("removeRange",{ranges:w}),this.rangeCount===0&&this.inMultiSelectMode&&(this.inMultiSelectMode=!1,this._signal("singleSelect"),this.session.$undoSelect=!0,this.rangeList.detach(this.session)),x=x||this.ranges[0],x&&!x.isEqual(this.getRange())&&this.fromOrientedRange(x)},this.$initRangeList=function(){this.rangeList||(this.rangeList=new i,this.ranges=[],this.rangeCount=0)},this.getAllRanges=function(){return this.rangeCount?this.rangeList.ranges.concat():[this.getRange()]},this.splitIntoLines=function(){for(var w=this.ranges.length?this.ranges:[this.getRange()],x=[],b=0;b1){var w=this.rangeList.ranges,x=w[w.length-1],b=d.fromPoints(w[0].start,x.end);this.toSingleRange(),this.setSelectionRange(b,x.cursor==x.start)}else{var _=this.session.documentToScreenPosition(this.cursor),R=this.session.documentToScreenPosition(this.anchor),E=this.rectangularRangeBlock(_,R);E.forEach(this.addRange,this)}},this.rectangularRangeBlock=function(w,x,b){var _=[],R=w.column0;)O--;if(O>0)for(var D=0;_[D].isEmpty();)D++;for(var P=O;P>=D;P--)_[P].isEmpty()&&_.splice(P,1)}return _}}).call(g.prototype);var m=n("./editor").Editor;(function(){this.updateSelectionMarkers=function(){this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.addSelectionMarker=function(w){w.cursor||(w.cursor=w.end);var x=this.getSelectionStyle();return w.marker=this.session.addMarker(w,"ace_selection",x),this.session.$selectionMarkers.push(w),this.session.selectionMarkerCount=this.session.$selectionMarkers.length,w},this.removeSelectionMarker=function(w){if(w.marker){this.session.removeMarker(w.marker);var x=this.session.$selectionMarkers.indexOf(w);x!=-1&&this.session.$selectionMarkers.splice(x,1),this.session.selectionMarkerCount=this.session.$selectionMarkers.length}},this.removeSelectionMarkers=function(w){for(var x=this.session.$selectionMarkers,b=w.length;b--;){var _=w[b];if(_.marker){this.session.removeMarker(_.marker);var R=x.indexOf(_);R!=-1&&x.splice(R,1)}}this.session.selectionMarkerCount=x.length},this.$onAddRange=function(w){this.addSelectionMarker(w.range),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onRemoveRange=function(w){this.removeSelectionMarkers(w.ranges),this.renderer.updateCursor(),this.renderer.updateBackMarkers()},this.$onMultiSelect=function(w){this.inMultiSelectMode||(this.inMultiSelectMode=!0,this.setStyle("ace_multiselect"),this.keyBinding.addKeyboardHandler(o.keyboardHandler),this.commands.setDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers())},this.$onSingleSelect=function(w){this.session.multiSelect.inVirtualMode||(this.inMultiSelectMode=!1,this.unsetStyle("ace_multiselect"),this.keyBinding.removeKeyboardHandler(o.keyboardHandler),this.commands.removeDefaultHandler("exec",this.$onMultiSelectExec),this.renderer.updateCursor(),this.renderer.updateBackMarkers(),this._emit("changeSelection"))},this.$onMultiSelectExec=function(w){var x=w.command,b=w.editor;if(b.multiSelect){if(x.multiSelectAction)x.multiSelectAction=="forEach"?_=b.forEachSelection(x,w.args):x.multiSelectAction=="forEachLine"?_=b.forEachSelection(x,w.args,!0):x.multiSelectAction=="single"?(b.exitMultiSelectMode(),_=x.exec(b,w.args||{})):_=x.multiSelectAction(b,w.args||{});else{var _=x.exec(b,w.args||{});b.multiSelect.addRange(b.multiSelect.toOrientedRange()),b.multiSelect.mergeOverlappingRanges()}return _}},this.forEachSelection=function(w,x,b){if(!this.inVirtualSelectionMode){var _=b&&b.keepOrder,R=b==!0||b&&b.$byLines,E=this.session,L=this.selection,M=L.rangeList,k=(_?L:M).ranges,C;if(!k.length)return w.exec?w.exec(this,x||{}):w(this,x||{});var S=L._eventRegistry;L._eventRegistry={};var A=new g(E);this.inVirtualSelectionMode=!0;for(var T=k.length;T--;){if(R)for(;T>0&&k[T].start.row==k[T-1].end.row;)T--;A.fromOrientedRange(k[T]),A.index=T,this.selection=E.selection=A;var I=w.exec?w.exec(this,x||{}):w(this,x||{});!C&&I!==void 0&&(C=I),A.toOrientedRange(k[T])}A.detach(),this.selection=E.selection=L,this.inVirtualSelectionMode=!1,L._eventRegistry=S,L.mergeOverlappingRanges(),L.ranges[0]&&L.fromOrientedRange(L.ranges[0]);var N=this.renderer.$scrollAnimation;return this.onCursorChange(),this.onSelectionChange(),N&&N.from==N.to&&this.renderer.animateScrolling(N.from),C}},this.exitMultiSelectMode=function(){!this.inMultiSelectMode||this.inVirtualSelectionMode||this.multiSelect.toSingleRange()},this.getSelectedText=function(){var w="";if(this.inMultiSelectMode&&!this.inVirtualSelectionMode){for(var x=this.multiSelect.rangeList.ranges,b=[],_=0;_0);L<0&&(L=0),M>=C&&(M=C-1)}var A=this.session.removeFullLines(L,M);A=this.$reAlignText(A,k),this.session.insert({row:L,column:0},A.join(` -`)+` -`),k||(E.start.column=0,E.end.column=A[A.length-1].length),this.selection.setRange(E)}else{R.forEach(function(O){x.substractPoint(O.cursor)});var T=0,I=1/0,N=b.map(function(O){var D=O.cursor,P=w.getLine(D.row),B=P.substr(D.column).search(/\S/g);return B==-1&&(B=0),D.column>T&&(T=D.column),Bj?w.insert(P,s.stringRepeat(" ",B-j)):w.remove(new d(P.row,P.column,P.row,P.column-B+j)),O.start.column=O.end.column=T,O.start.row=O.end.row=P.row,O.cursor=O.end}),x.fromOrientedRange(b[0]),this.renderer.updateCursor(),this.renderer.updateBackMarkers()}},this.$reAlignText=function(w,x){var b=!0,_=!0,R,E,L;return w.map(function(A){var T=A.match(/(\s*)(.*?)(\s*)([=:].*)/);return T?R==null?(R=T[1].length,E=T[2].length,L=T[3].length,T):(R+E+L!=T[1].length+T[2].length+T[3].length&&(_=!1),R!=T[1].length&&(b=!1),R>T[1].length&&(R=T[1].length),ET[3].length&&(L=T[3].length),T):[A]}).map(x?k:b?_?C:k:S);function M(A){return s.stringRepeat(" ",A)}function k(A){return A[2]?M(R)+A[2]+M(E-A[2].length+L)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}function C(A){return A[2]?M(R+E-A[2].length)+A[2]+M(L)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}function S(A){return A[2]?M(R)+A[2]+M(L)+A[4].replace(/^([=:])\s+/,"$1 "):A[0]}}}).call(m.prototype);function v(w,x){return w.row==x.row&&w.column==x.column}r.onSessionChange=function(w){var x=w.session;x&&!x.multiSelect&&(x.$selectionMarkers=[],x.selection.$initRangeList(),x.multiSelect=x.selection),this.multiSelect=x&&x.multiSelect;var b=w.oldSession;b&&(b.multiSelect.off("addRange",this.$onAddRange),b.multiSelect.off("removeRange",this.$onRemoveRange),b.multiSelect.off("multiSelect",this.$onMultiSelect),b.multiSelect.off("singleSelect",this.$onSingleSelect),b.multiSelect.lead.off("change",this.$checkMultiselectChange),b.multiSelect.anchor.off("change",this.$checkMultiselectChange)),x&&(x.multiSelect.on("addRange",this.$onAddRange),x.multiSelect.on("removeRange",this.$onRemoveRange),x.multiSelect.on("multiSelect",this.$onMultiSelect),x.multiSelect.on("singleSelect",this.$onSingleSelect),x.multiSelect.lead.on("change",this.$checkMultiselectChange),x.multiSelect.anchor.on("change",this.$checkMultiselectChange)),x&&this.inMultiSelectMode!=x.selection.inMultiSelectMode&&(x.selection.inMultiSelectMode?this.$onMultiSelect():this.$onSingleSelect())};function y(w){w.$multiselectOnSessionChange||(w.$onAddRange=w.$onAddRange.bind(w),w.$onRemoveRange=w.$onRemoveRange.bind(w),w.$onMultiSelect=w.$onMultiSelect.bind(w),w.$onSingleSelect=w.$onSingleSelect.bind(w),w.$multiselectOnSessionChange=r.onSessionChange.bind(w),w.$checkMultiselectChange=w.$checkMultiselectChange.bind(w),w.$multiselectOnSessionChange(w),w.on("changeSession",w.$multiselectOnSessionChange),w.on("mousedown",u),w.commands.addCommands(o.defaultCommands),$(w))}function $(w){if(!w.textInput)return;var x=w.textInput.getElement(),b=!1;p.addListener(x,"keydown",function(R){var E=R.keyCode==18&&!(R.ctrlKey||R.shiftKey||R.metaKey);w.$blockSelectEnabled&&E?b||(w.renderer.setMouseCursor("crosshair"),b=!0):b&&_()},w),p.addListener(x,"keyup",_,w),p.addListener(x,"blur",_,w);function _(R){b&&(w.renderer.setMouseCursor(""),b=!1)}}r.MultiSelect=y,n("./config").defineOptions(m.prototype,"editor",{enableMultiselect:{set:function(w){y(this),w?this.on("mousedown",u):this.off("mousedown",u)},value:!0},enableBlockSelect:{set:function(w){this.$blockSelectEnabled=w},value:!0}})}),ace.define("ace/mode/folding/fold_mode",["require","exports","module","ace/range"],function(n,r,h){var i=n("../../range").Range,d=r.FoldMode=function(){};(function(){this.foldingStartMarker=null,this.foldingStopMarker=null,this.getFoldWidget=function(g,u,p){var s=g.getLine(p);return this.foldingStartMarker.test(s)?"start":u=="markbeginend"&&this.foldingStopMarker&&this.foldingStopMarker.test(s)?"end":""},this.getFoldWidgetRange=function(g,u,p){return null},this.indentationBlock=function(g,u,p){var s=/\S/,o=g.getLine(u),a=o.search(s);if(a!=-1){for(var l=p||o.length,c=g.getLength(),f=u,m=u;++uf){var $=g.getLine(m).length;return new i(f,l,m,$)}}},this.openingBracketBlock=function(g,u,p,s,o){var a={row:p,column:s+1},l=g.$findClosingBracket(u,a,o);if(l){var c=g.foldWidgets[l.row];return c==null&&(c=g.getFoldWidget(l.row)),c=="start"&&l.row>a.row&&(l.row--,l.column=g.getLine(l.row).length),i.fromPoints(a,l)}},this.closingBracketBlock=function(g,u,p,s,o){var a={row:p,column:s},l=g.$findOpeningBracket(u,a);if(l)return l.column++,a.column--,i.fromPoints(l,a)}}).call(d.prototype)}),ace.define("ace/ext/error_marker",["require","exports","module","ace/line_widgets","ace/lib/dom","ace/range","ace/config"],function(n,r,h){var i=n("../line_widgets").LineWidgets,d=n("../lib/dom"),g=n("../range").Range,u=n("../config").nls;function p(o,a,l){for(var c=0,f=o.length-1;c<=f;){var m=c+f>>1,v=l(a,o[m]);if(v>0)c=m+1;else if(v<0)f=m-1;else return m}return-(c+1)}function s(o,a,l){var c=o.getAnnotations().sort(g.comparePoints);if(c.length){var f=p(c,{row:a,column:-1},g.comparePoints);f<0&&(f=-f-1),f>=c.length?f=l>0?0:c.length-1:f===0&&l<0&&(f=c.length-1);var m=c[f];if(!(!m||!l)){if(m.row===a){do m=c[f+=l];while(m&&m.row===a);if(!m)return c.slice()}var v=[];a=m.row;do v[l<0?"unshift":"push"](m),m=c[f+=l];while(m&&m.row==a);return v.length&&v}}}r.showErrorMarker=function(o,a){var l=o.session;l.widgetManager||(l.widgetManager=new i(l),l.widgetManager.attach(o));var c=o.getCursorPosition(),f=c.row,m=l.widgetManager.getWidgetsAtRow(f).filter(function(E){return E.type=="errorMarker"})[0];m?m.destroy():f-=a;var v=s(l,f,a),y;if(v){var $=v[0];c.column=($.pos&&typeof $.column!="number"?$.pos.sc:$.column)||0,c.row=$.row,y=o.renderer.$gutterLayer.$annotations[c.row]}else{if(m)return;y={displayText:[u("error-marker.good-state","Looks good!")],className:"ace_ok"}}o.session.unfold(c.row),o.selection.moveToPosition(c);var w={row:c.row,fixedWidth:!0,coverGutter:!0,el:d.createElement("div"),type:"errorMarker"},x=w.el.appendChild(d.createElement("div")),b=w.el.appendChild(d.createElement("div"));b.className="error_widget_arrow "+y.className;var _=o.renderer.$cursorLayer.getPixelPosition(c).left;b.style.left=_+o.renderer.gutterWidth-5+"px",w.el.className="error_widget_wrapper",x.className="error_widget "+y.className,y.displayText.forEach(function(E,L){x.appendChild(d.createTextNode(E)),L-1}function t$(z,U){var q=this.__data__,ne=Ca(q,z);return ne<0?(++this.size,q.push([z,U])):q[ne][1]=U,this}vn.prototype.clear=Xk,vn.prototype.delete=Zk,vn.prototype.get=Jk,vn.prototype.has=e$,vn.prototype.set=t$;function vr(z){var U=-1,q=z==null?0:z.length;for(this.clear();++UGe))return!1;var Ne=le.get(z);if(Ne&&le.get(U))return Ne==U;var kt=-1,Gt=!0,ot=q&i?new $a:void 0;for(le.set(z,U),le.set(U,z);++kt-1&&z%1==0&&z-1&&z%1==0&&z<=d}function Wm(z){var U=typeof z;return z!=null&&(U=="object"||U=="function")}function Eo(z){return z!=null&&typeof z=="object"}var jm=Re?fr(Re):y$;function R$(z){return E$(z)?p$(z):b$(z)}function I$(){return[]}function N$(){return!1}e.exports=T$}(ma,ma.exports);var lm=ma.exports,Bt={};Object.defineProperty(Bt,"__esModule",{value:!0}),Bt.getAceInstance=Bt.debounce=Bt.editorEvents=Bt.editorOptions=void 0;var GS=["minLines","maxLines","readOnly","highlightActiveLine","tabSize","enableBasicAutocompletion","enableLiveAutocompletion","enableSnippets"];Bt.editorOptions=GS;var KS=["onChange","onFocus","onInput","onBlur","onCopy","onPaste","onSelectionChange","onCursorChange","onScroll","handleOptions","updateRef"];Bt.editorEvents=KS;var YS=function(){var e;return typeof window>"u"?(Oe.window={},e=ga,delete Oe.window):window.ace?(e=window.ace,e.acequire=window.ace.require||window.ace.acequire):e=ga,e};Bt.getAceInstance=YS;var QS=function(e,t){var n=null;return function(){var r=this,h=arguments;clearTimeout(n),n=setTimeout(function(){e.apply(r,h)},t)}};Bt.debounce=QS;var qS=Oe&&Oe.__extends||function(){var e=function(t,n){return e=Object.setPrototypeOf||{__proto__:[]}instanceof Array&&function(r,h){r.__proto__=h}||function(r,h){for(var i in h)Object.prototype.hasOwnProperty.call(h,i)&&(r[i]=h[i])},e(t,n)};return function(t,n){if(typeof n!="function"&&n!==null)throw new TypeError("Class extends value "+String(n)+" is not a constructor or null");e(t,n);function r(){this.constructor=t}t.prototype=n===null?Object.create(n):(r.prototype=n.prototype,new r)}}(),Hu=Oe&&Oe.__assign||function(){return Hu=Object.assign||function(e){for(var t,n=1,r=arguments.length;n0&&this.handleMarkers(_);var M=this.editor.$options;ci.editorOptions.forEach(function(k){M.hasOwnProperty(k)?n.editor.setOption(k,n.props[k]):n.props[k]&&console.warn("ReactAce: editor option ".concat(k," was activated but not found. Did you need to import a related tool or did you possibly mispell the option?"))}),this.handleOptions(this.props),Array.isArray(x)&&x.forEach(function(k){typeof k.exec=="string"?n.editor.commands.bindKey(k.bindKey,k.exec):n.editor.commands.addCommand(k)}),$&&this.editor.setKeyboardHandler("ace/keyboard/"+$),h&&(this.refEditor.className+=" "+h),w&&w(this.editor),this.editor.resize(),u&&this.editor.focus()},t.prototype.componentDidUpdate=function(n){for(var r=n,h=this.props,i=0;i 0!";if(o!=this.$splits){if(o>this.$splits){for(;this.$splitso;)a=this.$editors[this.$splits-1],this.$container.removeChild(a.container),this.$splits--;this.resize()}},this.getSplits=function(){return this.$splits},this.getEditor=function(o){return this.$editors[o]},this.getCurrentEditor=function(){return this.$cEditor},this.focus=function(){this.$cEditor.focus()},this.blur=function(){this.$cEditor.blur()},this.setTheme=function(o){this.$editors.forEach(function(a){a.setTheme(o)})},this.setKeyboardHandler=function(o){this.$editors.forEach(function(a){a.setKeyboardHandler(o)})},this.forEach=function(o,a){this.$editors.forEach(o,a)},this.$fontSize="",this.setFontSize=function(o){this.$fontSize=o,this.forEach(function(a){a.setFontSize(o)})},this.$cloneSession=function(o){var a=new p(o.getDocument(),o.getMode()),l=o.getUndoManager();return a.setUndoManager(l),a.setTabSize(o.getTabSize()),a.setUseSoftTabs(o.getUseSoftTabs()),a.setOverwrite(o.getOverwrite()),a.setBreakpoints(o.getBreakpoints()),a.setUseWrapMode(o.getUseWrapMode()),a.setUseWorker(o.getUseWorker()),a.setWrapLimitRange(o.$wrapLimitRange.min,o.$wrapLimitRange.max),a.$foldData=o.$cloneFoldData(),a},this.setSession=function(o,a){var l;a==null?l=this.$cEditor:l=this.$editors[a];var c=this.$editors.some(function(f){return f.session===o});return c&&(o=this.$cloneSession(o)),l.setSession(o),o},this.getOrientation=function(){return this.$orientation},this.setOrientation=function(o){this.$orientation!=o&&(this.$orientation=o,this.resize())},this.resize=function(){var o=this.$container.clientWidth,a=this.$container.clientHeight,l;if(this.$orientation==this.BESIDE)for(var c=o/this.$splits,f=0;f-1}function Lx(e,t){var n=this.__data__,r=ba(n,e);return r<0?n.push([e,t]):n[r][1]=t,this}ui.prototype.clear=Cx,ui.prototype.delete=_x,ui.prototype.get=Ax,ui.prototype.has=Mx,ui.prototype.set=Lx;function hr(e){var t=-1,n=e?e.length:0;for(this.clear();++t0&&n.handleMarkers(N,k);for(var S=0;S"u"&&(this.Diff_Timeout<=0?u=Number.MAX_VALUE:u=new Date().getTime()+this.Diff_Timeout*1e3);var p=u;if(i==null||d==null)throw new Error("Null input. (diff_main)");if(i==d)return i?[new t.Diff(h,i)]:[];typeof g>"u"&&(g=!0);var s=g,o=this.diff_commonPrefix(i,d),a=i.substring(0,o);i=i.substring(o),d=d.substring(o),o=this.diff_commonSuffix(i,d);var l=i.substring(i.length-o);i=i.substring(0,i.length-o),d=d.substring(0,d.length-o);var c=this.diff_compute_(i,d,s,p);return a&&c.unshift(new t.Diff(h,a)),l&&c.push(new t.Diff(h,l)),this.diff_cleanupMerge(c),c},t.prototype.diff_compute_=function(i,d,g,u){var p;if(!i)return[new t.Diff(r,d)];if(!d)return[new t.Diff(n,i)];var s=i.length>d.length?i:d,o=i.length>d.length?d:i,a=s.indexOf(o);if(a!=-1)return p=[new t.Diff(r,s.substring(0,a)),new t.Diff(h,o),new t.Diff(r,s.substring(a+o.length))],i.length>d.length&&(p[0][0]=p[2][0]=n),p;if(o.length==1)return[new t.Diff(n,i),new t.Diff(r,d)];var l=this.diff_halfMatch_(i,d);if(l){var c=l[0],f=l[1],m=l[2],v=l[3],y=l[4],$=this.diff_main(c,m,g,u),w=this.diff_main(f,v,g,u);return $.concat([new t.Diff(h,y)],w)}return g&&i.length>100&&d.length>100?this.diff_lineMode_(i,d,u):this.diff_bisect_(i,d,u)},t.prototype.diff_lineMode_=function(i,d,g){var u=this.diff_linesToChars_(i,d);i=u.chars1,d=u.chars2;var p=u.lineArray,s=this.diff_main(i,d,!1,g);this.diff_charsToLines_(s,p),this.diff_cleanupSemantic(s),s.push(new t.Diff(h,""));for(var o=0,a=0,l=0,c="",f="";o=1&&l>=1){s.splice(o-a-l,a+l),o=o-a-l;for(var m=this.diff_main(c,f,!1,g),v=m.length-1;v>=0;v--)s.splice(o,0,m[v]);o=o+m.length}l=0,a=0,c="",f="";break}o++}return s.pop(),s},t.prototype.diff_bisect_=function(i,d,g){for(var u=i.length,p=d.length,s=Math.ceil((u+p)/2),o=s,a=2*s,l=new Array(a),c=new Array(a),f=0;fg);b++){for(var _=-b+y;_<=b-$;_+=2){var R=o+_,E;_==-b||_!=b&&l[R-1]u)$+=2;else if(L>p)y+=2;else if(v){var M=o+m-_;if(M>=0&&M=k)return this.diff_bisectSplit_(i,d,E,L,g)}}}for(var C=-b+w;C<=b-x;C+=2){var M=o+C,k;C==-b||C!=b&&c[M-1]u)x+=2;else if(S>p)w+=2;else if(!v){var R=o+m-C;if(R>=0&&R=k)return this.diff_bisectSplit_(i,d,E,L,g)}}}}return[new t.Diff(n,i),new t.Diff(r,d)]},t.prototype.diff_bisectSplit_=function(i,d,g,u,p){var s=i.substring(0,g),o=d.substring(0,u),a=i.substring(g),l=d.substring(u),c=this.diff_main(s,o,!1,p),f=this.diff_main(a,l,!1,p);return c.concat(f)},t.prototype.diff_linesToChars_=function(i,d){var g=[],u={};g[0]="";function p(l){for(var c="",f=0,m=-1,v=g.length;mu?i=i.substring(g-u):gd.length?i:d,u=i.length>d.length?d:i;if(g.length<4||u.length*2=$.length?[E,L,M,k,R]:null}var o=s(g,u,Math.ceil(g.length/4)),a=s(g,u,Math.ceil(g.length/2)),l;if(!o&&!a)return null;a?o?l=o[4].length>a[4].length?o:a:l=a:l=o;var c,f,m,v;i.length>d.length?(c=l[0],f=l[1],m=l[2],v=l[3]):(m=l[0],v=l[1],c=l[2],f=l[3]);var y=l[4];return[c,f,m,v,y]},t.prototype.diff_cleanupSemantic=function(i){for(var d=!1,g=[],u=0,p=null,s=0,o=0,a=0,l=0,c=0;s0?g[u-1]:-1,o=0,a=0,l=0,c=0,p=null,d=!0)),s++;for(d&&this.diff_cleanupMerge(i),this.diff_cleanupSemanticLossless(i),s=1;s=y?(v>=f.length/2||v>=m.length/2)&&(i.splice(s,0,new t.Diff(h,m.substring(0,v))),i[s-1][1]=f.substring(0,f.length-v),i[s+1][1]=m.substring(v),s++):(y>=f.length/2||y>=m.length/2)&&(i.splice(s,0,new t.Diff(h,f.substring(0,y))),i[s-1][0]=r,i[s-1][1]=m.substring(0,m.length-y),i[s+1][0]=n,i[s+1][1]=f.substring(y),s++),s++}s++}},t.prototype.diff_cleanupSemanticLossless=function(i){function d(y,$){if(!y||!$)return 6;var w=y.charAt(y.length-1),x=$.charAt(0),b=w.match(t.nonAlphaNumericRegex_),_=x.match(t.nonAlphaNumericRegex_),R=b&&w.match(t.whitespaceRegex_),E=_&&x.match(t.whitespaceRegex_),L=R&&w.match(t.linebreakRegex_),M=E&&x.match(t.linebreakRegex_),k=L&&y.match(t.blanklineEndRegex_),C=M&&$.match(t.blanklineStartRegex_);return k||C?5:L||M?4:b&&!R&&E?3:R||E?2:b||_?1:0}for(var g=1;g=m&&(m=v,l=u,c=p,f=s)}i[g-1][1]!=l&&(l?i[g-1][1]=l:(i.splice(g-1,1),g--),i[g][1]=c,f?i[g+1][1]=f:(i.splice(g+1,1),g--))}g++}},t.nonAlphaNumericRegex_=/[^a-zA-Z0-9]/,t.whitespaceRegex_=/\s/,t.linebreakRegex_=/[\r\n]/,t.blanklineEndRegex_=/\n\r?\n$/,t.blanklineStartRegex_=/^\r?\n\r?\n/,t.prototype.diff_cleanupEfficiency=function(i){for(var d=!1,g=[],u=0,p=null,s=0,o=!1,a=!1,l=!1,c=!1;s0?g[u-1]:-1,l=c=!1),d=!0)),s++;d&&this.diff_cleanupMerge(i)},t.prototype.diff_cleanupMerge=function(i){i.push(new t.Diff(h,""));for(var d=0,g=0,u=0,p="",s="",o;d1?(g!==0&&u!==0&&(o=this.diff_commonPrefix(s,p),o!==0&&(d-g-u>0&&i[d-g-u-1][0]==h?i[d-g-u-1][1]+=s.substring(0,o):(i.splice(0,0,new t.Diff(h,s.substring(0,o))),d++),s=s.substring(o),p=p.substring(o)),o=this.diff_commonSuffix(s,p),o!==0&&(i[d][1]=s.substring(s.length-o)+i[d][1],s=s.substring(0,s.length-o),p=p.substring(0,p.length-o))),d-=g+u,i.splice(d,g+u),p.length&&(i.splice(d,0,new t.Diff(n,p)),d++),s.length&&(i.splice(d,0,new t.Diff(r,s)),d++),d++):d!==0&&i[d-1][0]==h?(i[d-1][1]+=i[d][1],i.splice(d,1)):d++,u=0,g=0,p="",s="";break}i[i.length-1][1]===""&&i.pop();var a=!1;for(d=1;dd));o++)p=g,s=u;return i.length!=o&&i[o][0]===n?s:s+(d-p)},t.prototype.diff_prettyHtml=function(i){for(var d=[],g=/&/g,u=//g,s=/\n/g,o=0;o");switch(a){case r:d[o]=''+c+"";break;case n:d[o]=''+c+"";break;case h:d[o]=""+c+"";break}}return d.join("")},t.prototype.diff_text1=function(i){for(var d=[],g=0;gthis.Match_MaxBits)throw new Error("Pattern too long for this browser.");var u=this.match_alphabet_(d),p=this;function s(E,L){var M=E/d.length,k=Math.abs(g-L);return p.Match_Distance?M+k/p.Match_Distance:k?1:M}var o=this.Match_Threshold,a=i.indexOf(d,g);a!=-1&&(o=Math.min(s(0,a),o),a=i.lastIndexOf(d,g+d.length),a!=-1&&(o=Math.min(s(0,a),o)));var l=1<=$;b--){var _=u[i.charAt(b-1)];if(y===0?x[b]=(x[b+1]<<1|1)&_:x[b]=(x[b+1]<<1|1)&_|((v[b+1]|v[b])<<1|1)|v[b+1],x[b]&l){var R=s(y,b-1);if(R<=o)if(o=R,a=b-1,a>g)$=Math.max(1,2*g-a);else break}}if(s(y+1,g)>o)break;v=x}return a},t.prototype.match_alphabet_=function(i){for(var d={},g=0;g"u")u=i,p=this.diff_main(u,d,!0),p.length>2&&(this.diff_cleanupSemantic(p),this.diff_cleanupEfficiency(p));else if(i&&typeof i=="object"&&typeof d>"u"&&typeof g>"u")p=i,u=this.diff_text1(p);else if(typeof i=="string"&&d&&typeof d=="object"&&typeof g>"u")u=i,p=d;else if(typeof i=="string"&&typeof d=="string"&&g&&typeof g=="object")u=i,p=g;else throw new Error("Unknown call format to patch_make.");if(p.length===0)return[];for(var s=[],o=new t.patch_obj,a=0,l=0,c=0,f=u,m=u,v=0;v=2*this.Patch_Margin&&a&&(this.patch_addContext_(o,f),s.push(o),o=new t.patch_obj,a=0,f=m,l=c);break}y!==r&&(l+=$.length),y!==n&&(c+=$.length)}return a&&(this.patch_addContext_(o,f),s.push(o)),s},t.prototype.patch_deepCopy=function(i){for(var d=[],g=0;gthis.Match_MaxBits?(l=this.match_main(d,a.substring(0,this.Match_MaxBits),o),l!=-1&&(c=this.match_main(d,a.substring(a.length-this.Match_MaxBits),o+a.length-this.Match_MaxBits),(c==-1||l>=c)&&(l=-1))):l=this.match_main(d,a,o),l==-1)p[s]=!1,u-=i[s].length2-i[s].length1;else{p[s]=!0,u=l-o;var f;if(c==-1?f=d.substring(l,l+a.length):f=d.substring(l,c+this.Match_MaxBits),a==f)d=d.substring(0,l)+this.diff_text2(i[s].diffs)+d.substring(l+a.length);else{var m=this.diff_main(a,f,!1);if(a.length>this.Match_MaxBits&&this.diff_levenshtein(m)/a.length>this.Patch_DeleteThreshold)p[s]=!1;else{this.diff_cleanupSemanticLossless(m);for(var v=0,y,$=0;$s[0][1].length){var o=d-s[0][1].length;s[0][1]=g.substring(s[0][1].length)+s[0][1],p.start1-=o,p.start2-=o,p.length1+=o,p.length2+=o}if(p=i[i.length-1],s=p.diffs,s.length==0||s[s.length-1][0]!=h)s.push(new t.Diff(h,g)),p.length1+=d,p.length2+=d;else if(d>s[s.length-1][1].length){var o=d-s[s.length-1][1].length;s[s.length-1][1]+=g.substring(0,o),p.length1+=o,p.length2+=o}return g},t.prototype.patch_splitMax=function(i){for(var d=this.Match_MaxBits,g=0;g2*d?(a.length1+=f.length,p+=f.length,l=!1,a.diffs.push(new t.Diff(c,f)),u.diffs.shift()):(f=f.substring(0,d-a.length1-this.Patch_Margin),a.length1+=f.length,p+=f.length,c===h?(a.length2+=f.length,s+=f.length):l=!1,a.diffs.push(new t.Diff(c,f)),f==u.diffs[0][1]?u.diffs.shift():u.diffs[0][1]=u.diffs[0][1].substring(f.length))}o=this.diff_text2(a.diffs),o=o.substring(o.length-this.Patch_Margin);var m=this.diff_text1(u.diffs).substring(0,this.Patch_Margin);m!==""&&(a.length1+=m.length,a.length2+=m.length,a.diffs.length!==0&&a.diffs[a.diffs.length-1][0]===h?a.diffs[a.diffs.length-1][1]+=m:a.diffs.push(new t.Diff(h,m))),l||i.splice(++g,0,a)}}},t.prototype.patch_toText=function(i){for(var d=[],g=0;g=c[1]?(a.length>c[1]&&(f="invalid"),c.shift(),c.shift(),this.next=c.shift()):this.next="",f},regex:/"#*/,next:"start"},{defaultToken:"string.quoted.raw.source.rust"}]},{token:"string.quoted.double.source.rust",regex:'"',push:[{token:"string.quoted.double.source.rust",regex:'"',next:"pop"},{token:"constant.character.escape.source.rust",regex:u},{defaultToken:"string.quoted.double.source.rust"}]},{token:["keyword.source.rust","text","entity.name.function.source.rust","punctuation"],regex:"\\b(fn)(\\s+)((?:r#)?"+p+")(<)(?!<)",push:"generics"},{token:["keyword.source.rust","text","entity.name.function.source.rust"],regex:"\\b(fn)(\\s+)((?:r#)?"+p+")"},{token:["support.constant","punctuation"],regex:"("+p+"::)(<)(?!<)",push:"generics"},{token:"support.constant",regex:p+"::"},{token:"variable.language.source.rust",regex:"\\bself\\b"},g.getStartRule("doc-start"),{token:"comment.line.doc.source.rust",regex:"///.*$"},{token:"comment.line.doc.source.rust",regex:"//!.*$"},{token:"comment.line.double-dash.source.rust",regex:"//.*$"},{token:"comment.start.block.source.rust",regex:"/\\*",stateName:"comment",push:[{token:"comment.start.block.source.rust",regex:"/\\*",push:"comment"},{token:"comment.end.block.source.rust",regex:"\\*/",next:"pop"},{defaultToken:"comment.block.source.rust"}]},{token:["keyword.source.rust","identifier","punctuaction"],regex:"(?:(impl)|("+p+"))(<)(?!<)",stateName:"generics",push:[{token:"keyword.operator",regex:/<<|=/},{token:"punctuaction",regex:"<(?!<)",push:"generics"},{token:"variable.other.source.rust",regex:"'"+p+"(?![\\'])"},{token:"storage.type.source.rust",regex:"\\b(u8|u16|u32|u64|u128|usize|i8|i16|i32|i64|i128|isize|char|bool)\\b"},{token:"keyword",regex:"\\b(?:const|dyn)\\b"},{token:"punctuation",regex:">",next:"pop"},{include:"punctuation"},{include:"operators"},{include:"constants"},{token:"identifier",regex:"\\b"+p+"\\b"}]},{token:o,regex:p},{token:"meta.preprocessor.source.rust",regex:"\\b\\w\\(\\w\\)*!|#\\[[\\w=\\(\\)_]+\\]\\b"},{include:"punctuation"},{include:"operators"},{include:"constants"}],punctuation:[{token:"paren.lparen",regex:/[\[({]/},{token:"paren.rparen",regex:/[\])}]/},{token:"punctuation.operator",regex:/[?:,;.]/}],operators:[{token:"keyword.operator",regex:/\$|[-=]>|[-+%^=!&|<>]=?|[*/](?![*/])=?/}],constants:[{token:"constant.numeric.source.rust",regex:/\b(?:0x[a-fA-F0-9_]+|0o[0-7_]+|0b[01_]+|[0-9][0-9_]*(?!\.))(?:[iu](?:size|8|16|32|64|128))?\b/},{token:"constant.numeric.source.rust",regex:/\b(?:[0-9][0-9_]*)(?:\.[0-9][0-9_]*)?(?:[Ee][+-][0-9][0-9_]*)?(?:f32|f64)?\b/}]},this.embedRules(g,"doc-",[g.getEndRule("start")]),this.normalizeRules()};s.metaData={fileTypes:["rs","rc"],foldingStartMarker:"^.*\\bfn\\s*(\\w+\\s*)?\\([^\\)]*\\)(\\s*\\{[^\\}]*)?\\s*$",foldingStopMarker:"^\\s*\\}",name:"Rust",scopeName:"source.rust"},i.inherits(s,d),r.RustHighlightRules=s}),ace.define("ace/mode/folding/cstyle",["require","exports","module","ace/lib/oop","ace/range","ace/mode/folding/fold_mode"],function(n,r,h){var i=n("../../lib/oop"),d=n("../../range").Range,g=n("./fold_mode").FoldMode,u=r.FoldMode=function(p){p&&(this.foldingStartMarker=new RegExp(this.foldingStartMarker.source.replace(/\|[^|]*?$/,"|"+p.start)),this.foldingStopMarker=new RegExp(this.foldingStopMarker.source.replace(/\|[^|]*?$/,"|"+p.end)))};i.inherits(u,g),(function(){this.foldingStartMarker=/([\{\[\(])[^\}\]\)]*$|^\s*(\/\*)/,this.foldingStopMarker=/^[^\[\{\(]*([\}\]\)])|^[\s\*]*(\*\/)/,this.singleLineBlockCommentRe=/^\s*(\/\*).*\*\/\s*$/,this.tripleStarBlockCommentRe=/^\s*(\/\*\*\*).*\*\/\s*$/,this.startRegionRe=/^\s*(\/\*|\/\/)#?region\b/,this._getFoldWidgetBase=this.getFoldWidget,this.getFoldWidget=function(p,s,o){var a=p.getLine(o);if(this.singleLineBlockCommentRe.test(a)&&!this.startRegionRe.test(a)&&!this.tripleStarBlockCommentRe.test(a))return"";var l=this._getFoldWidgetBase(p,s,o);return!l&&this.startRegionRe.test(a)?"start":l},this.getFoldWidgetRange=function(p,s,o,a){var l=p.getLine(o);if(this.startRegionRe.test(l))return this.getCommentRegionBlock(p,l,o);var c=l.match(this.foldingStartMarker);if(c){var f=c.index;if(c[1])return this.openingBracketBlock(p,c[1],o,f);var m=p.getCommentFoldRange(o,f+c[0].length,1);return m&&!m.isMultiLine()&&(a?m=this.getSectionRange(p,o):s!="all"&&(m=null)),m}if(s!=="markbegin"){var c=l.match(this.foldingStopMarker);if(c){var f=c.index+c[0].length;return c[1]?this.closingBracketBlock(p,c[1],o,f):p.getCommentFoldRange(o,f,-1)}}},this.getSectionRange=function(p,s){var o=p.getLine(s),a=o.search(/\S/),l=s,c=o.length;s=s+1;for(var f=s,m=p.getLength();++sv)break;var y=this.getFoldWidgetRange(p,"all",s);if(y){if(y.start.row<=l)break;if(y.isMultiLine())s=y.end.row;else if(a==v)break}f=s}}return new d(l,c,f,p.getLine(f).length)},this.getCommentRegionBlock=function(p,s,o){for(var a=s.search(/\s*$/),l=p.getLength(),c=o,f=/^\s*(?:\/\*|\/\/|--)#?(end)?region\b/,m=1;++oc)return new d(c,a,y,s.length)}}).call(u.prototype)}),ace.define("ace/mode/rust",["require","exports","module","ace/lib/oop","ace/mode/text","ace/mode/rust_highlight_rules","ace/mode/folding/cstyle"],function(n,r,h){var i=n("../lib/oop"),d=n("./text").Mode,g=n("./rust_highlight_rules").RustHighlightRules,u=n("./folding/cstyle").FoldMode,p=function(){this.HighlightRules=g,this.foldingRules=new u,this.$behaviour=this.$defaultBehaviour};i.inherits(p,d),(function(){this.lineCommentStart="//",this.blockComment={start:"/*",end:"*/",nestable:!0},this.$quotes={'"':'"'},this.$id="ace/mode/rust"}).call(p.prototype),r.Mode=p}),function(){ace.require(["ace/mode/rust"],function(n){e&&(e.exports=n)})}()})(uk);var hk={exports:{}};(function(e,t){ace.define("ace/theme/github_dark-css",["require","exports","module"],function(n,r,h){h.exports=`.ace-github-dark .ace_gutter { - background: #24292e; - color: #7388b5 -} - -.ace-github-dark .ace_print-margin { - width: 1px; - background: #00204b -} - -.ace-github-dark { - background-color: #24292e; - color: #FFFFFF -} - -.ace-github-dark .ace_constant.ace_other, -.ace-github-dark .ace_cursor { - color: #FFFFFF -} - -.ace-github-dark .ace_marker-layer .ace_selection { - background: #003F8E -} - -.ace-github-dark.ace_multiselect .ace_selection.ace_start { - box-shadow: 0 0 3px 0px #24292e; -} - -.ace-github-dark .ace_marker-layer .ace_step { - background: rgb(127, 111, 19) -} - -.ace-github-dark .ace_marker-layer .ace_bracket { - margin: -1px 0 0 -1px; - border: 1px solid #404F7D -} - -.ace-github-dark .ace_marker-layer .ace_active-line { - background: #00346E -} - -.ace-github-dark .ace_gutter-active-line { - background-color: #24292e -} - -.ace-github-dark .ace_marker-layer .ace_selected-word { - border: 1px solid #003F8E -} - -.ace-github-dark .ace_invisible { - color: #404F7D -} - -.ace-github-dark .ace_keyword, -.ace-github-dark .ace_meta, -.ace-github-dark .ace_storage, -.ace-github-dark .ace_storage.ace_type, -.ace-github-dark .ace_support.ace_type { - color: #ff7b72 -} - -.ace-github-dark .ace_keyword.ace_operator { - color: #79c0ff -} - -.ace-github-dark .ace_constant.ace_character, -.ace-github-dark .ace_constant.ace_language, -.ace-github-dark .ace_constant.ace_numeric, -.ace-github-dark .ace_keyword.ace_other.ace_unit, -.ace-github-dark .ace_support.ace_constant, -.ace-github-dark .ace_variable.ace_parameter { - color: #FFC58F -} - -.ace-github-dark .ace_invalid { - color: #FFFFFF; - background-color: #F99DA5 -} - -.ace-github-dark .ace_invalid.ace_deprecated { - color: #FFFFFF; - background-color: #ff7b72 -} - -.ace-github-dark .ace_fold { - background-color: #BBDAFF; - border-color: #FFFFFF -} - -.ace-github-dark .ace_entity.ace_name.ace_function, -.ace-github-dark .ace_support.ace_function, -.ace-github-dark .ace_variable { - color: #BBDAFF -} - -.ace-github-dark .ace_support.ace_class, -.ace-github-dark .ace_support.ace_type { - color: #FFEEAD -} - -.ace-github-dark .ace_heading, -.ace-github-dark .ace_markup.ace_heading, -.ace-github-dark .ace_string { - color: #9fcef6 -} - -.ace-github-dark .ace_entity.ace_name.ace_tag, -.ace-github-dark .ace_entity.ace_other.ace_attribute-name, -.ace-github-dark .ace_meta.ace_tag, -.ace-github-dark .ace_string.ace_regexp, -.ace-github-dark .ace_variable { - color: #FF9DA4 -} - -.ace-github-dark .ace_comment { - color: #7285B7 -} - -.ace-github-dark .ace_indent-guide { - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQImWNgYGBgYJDzqfwPAANXAeNsiA+ZAAAAAElFTkSuQmCC) right repeat-y -} - -.ace-github-dark .ace_indent-guide-active { - background: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAEklEQVQIW2PQ1dX9zzBz5sz/ABCcBFFentLlAAAAAElFTkSuQmCC) right repeat-y; -} - -.ace-github-dark .ace_constant.ace_buildin { - color: #0086B3; -} - -.ace-github-dark .ace_variable.ace_language { - color: #ffffff; -} - `}),ace.define("ace/theme/github_dark",["require","exports","module","ace/theme/github_dark-css","ace/lib/dom"],function(n,r,h){r.isDark=!0,r.cssClass="ace-github-dark",r.cssText=n("./github_dark-css");var i=n("../lib/dom");i.importCssString(r.cssText,r.cssClass,!1)}),function(){ace.require(["ace/theme/github_dark"],function(n){e&&(e.exports=n)})}()})(hk);var dk={exports:{}};(function(e,t){ace.define("ace/theme/github_light_default-css",["require","exports","module"],function(n,r,h){h.exports=`.ace-github-light-default .ace_gutter { - background: #ffffff; - color: rgba(27, 31, 35, 0.3); -} - -.ace-github-light-default .ace_print-margin { - width: 1px; - background: #e8e8e8; -} - -.ace-github-light-default { - background-color: #FFFFFF; - color: #24292E; -} - -.ace-github-light-default .ace_cursor { - color: #044289; - background: none; -} - -.ace-github-light-default .ace_marker-layer .ace_selection { - background: rgba(3, 102, 214, 0.14); -} - -.ace-github-light-default.ace_multiselect .ace_selection.ace_start { - box-shadow: 0 0 3px 0px #FFFFFF; - border-radius: 2px; -} - -.ace-github-light-default .ace_marker-layer .ace_step { - background: rgb(198, 219, 174); -} - -.ace-github-light-default .ace_marker-layer .ace_bracket { - margin: -1px 0 0 -1px; - border: 1px solid rgba(52, 208, 88, 0); - background: rgba(52, 208, 88, 0.25); -} - -.ace-github-light-default .ace_marker-layer .ace_active-line { - background: #f6f8fa; - border: 2px solid #eeeeee; -} - -.ace-github-light-default .ace_gutter-active-line { - background-color: #f6f8fa; - color: #24292e -} - -.ace-github-light-default .ace_marker-layer .ace_selected-word { - border: 1px solid rgba(3, 102, 214, 0.14); -} - -.ace-github-light-default .ace_fold { - background-color: #D73A49; - border-color: #24292E; -} - -.ace_tooltip.ace-github-light-default { - background-color: #f6f8fa !important; - color: #444d56 !important; - border: 1px solid #444d56 -} - -.ace-github-light-default .language_highlight_error { - border-bottom: dotted 1px #cb2431; - background: none; -} - -.ace-github-light-default .language_highlight_warning { - border-bottom: solid 1px #f9c513; - background: none; -} - -.ace-github-light-default .language_highlight_info { - border-bottom: dotted 1px #1a85ff; - background: none; -} - -.ace-github-light-default .ace_keyword { - color: #D73A49; -} - -.ace-github-light-default .ace_constant { - color: #005CC5; -} - -.ace-github-light-default .ace_support { - color: #005CC5; -} - -.ace-github-light-default .ace_support.ace_constant { - color: #005CC5; -} - -.ace-github-light-default .ace_support.ace_type { - color: #D73A49; -} - -.ace-github-light-default .ace_storage { - color: #D73A49; -} - -.ace-github-light-default .ace_storage.ace_type { - color: #D73A49; -} - -.ace-github-light-default .ace_invalid.ace_illegal { - font-style: italic; - color: #B31D28; -} - -.ace-github-light-default .ace_invalid.ace_deprecated { - font-style: italic; - color: #B31D28; -} - -.ace-github-light-default .ace_string { - color: #032F62; -} - -.ace-github-light-default .ace_string.ace_regexp { - color: #032F62; -} - -.ace-github-light-default .ace_comment { - color: #6A737D; -} - -.ace-github-light-default .ace_variable { - color: #E36209; -} - -.ace-github-light-default .ace_variable.ace_language { - color: #005CC5; -} - -.ace-github-light-default .ace_entity.ace_name { - color: #6F42C1; -} - -.ace-github-light-default .ace_entity { - color: #6F42C1; -} - -.ace-github-light-default .ace_entity.ace_name.ace_tag { - color: #22863A; -} - -.ace-github-light-default .ace_meta.ace_tag { - color: #22863A; -} - -.ace-github-light-default .ace_markup.ace_heading { - color: #005CC5; -} - -.ace-github-light-default .ace_indent-guide { - background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAAE0lEQVQImWP4////f4bLly//BwAmVgd1/w11/gAAAABJRU5ErkJggg==") right repeat-y; -} - -.ace-github-light-default .ace_indent-guide-active { - background: url("data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAACCAYAAACZgbYnAAAACXBIWXMAAAsTAAALEwEAmpwYAAAAIGNIUk0AAHolAACAgwAA+f8AAIDpAAB1MAAA6mAAADqYAAAXb5JfxUYAAAAZSURBVHjaYvj///9/hivKyv8BAAAA//8DACLqBhbvk+/eAAAAAElFTkSuQmCC") right repeat-y; -} -`}),ace.define("ace/theme/github_light_default",["require","exports","module","ace/theme/github_light_default-css","ace/lib/dom"],function(n,r,h){r.isDark=!1,r.cssClass="ace-github-light-default",r.cssText=n("./github_light_default-css");var i=n("../lib/dom");i.importCssString(r.cssText,r.cssClass,!1)}),function(){ace.require(["ace/theme/github_light_default"],function(n){e&&(e.exports=n)})}()})(dk);function $o(e,t,n){return Object.keys(e[t]).reduce((r,h)=>(r[h]=`var(--mantine-${n}-${h})`,r),{})}function Am(e,t){return e in t.breakpoints?t.breakpoints[e]:no(e)}function fk(e){const t=ug(Js,e),n=$o(t,"fontSizes","font-size"),r=$o(t,"lineHeights","line-height"),h=$o(t,"shadows","shadow"),i=$o(t,"radius","radius"),d=$o(t,"spacing","spacing"),g=Object.keys(t.headings.sizes).reduce((p,s)=>(p[s]={fontSize:`var(--mantine-${s}-font-size)`,lineHeight:`var(--mantine-${s}-line-height)`,fontWeight:`var(--mantine-${s}-font-weight)`},p),{}),u=Object.keys(t.colors).reduce((p,s)=>(p[s]={0:`var(--mantine-color-${s}-0)`,1:`var(--mantine-color-${s}-1)`,2:`var(--mantine-color-${s}-2)`,3:`var(--mantine-color-${s}-3)`,4:`var(--mantine-color-${s}-4)`,5:`var(--mantine-color-${s}-5)`,6:`var(--mantine-color-${s}-6)`,7:`var(--mantine-color-${s}-7)`,8:`var(--mantine-color-${s}-8)`,9:`var(--mantine-color-${s}-9)`,filled:`var(--mantine-color-${s}-filled)`,filledHover:`var(--mantine-color-${s}-filled-hover)`,light:`var(--mantine-color-${s}-light)`,lightHover:`var(--mantine-color-${s}-light-hover)`,lightColor:`var(--mantine-color-${s}-light-color)`,outline:`var(--mantine-color-${s}-outline)`,outlineHover:`var(--mantine-color-${s}-outline-hover)`},p),{primary:"var(--mantine-primary-color-filled)",primaryColors:{0:"var(--mantine-primary-color-0)",1:"var(--mantine-primary-color-1)",2:"var(--mantine-primary-color-2)",3:"var(--mantine-primary-color-3)",4:"var(--mantine-primary-color-4)",5:"var(--mantine-primary-color-5)",6:"var(--mantine-primary-color-6)",7:"var(--mantine-primary-color-7)",8:"var(--mantine-primary-color-8)",9:"var(--mantine-primary-color-9)",filled:"var(--mantine-primary-color-filled)",filledHover:"var(--mantine-primary-color-filled-hover)",light:"var(--mantine-primary-color-light)",lightHover:"var(--mantine-primary-color-light-hover)",lightColor:"var(--mantine-primary-color-light-color)",outline:"var(--mantine-primary-color-outline)",outlineHover:"var(--mantine-primary-color-outline-hover)"},white:"var(--mantine-color-white)",black:"var(--mantine-color-black)",text:"var(--mantine-color-text)",body:"var(--mantine-color-body)",error:"var(--mantine-color-error)",placeholder:"var(--mantine-color-placeholder)",anchor:"var(--mantine-color-anchor)",default:"var(--mantine-color-default)",defaultHover:"var(--mantine-color-default-hover)",defaultColor:"var(--mantine-color-default-color)",defaultBorder:"var(--mantine-color-default-border)",dimmed:"var(--mantine-color-dimmed)"});return{scale:"var(--mantine-scale)",cursorType:"var(--mantine-cursor-type)",webkitFontSmoothing:"var(--mantine-webkit-font-smoothing)",mozFontSmoothing:"var(--mantine-moz-font-smoothing)",lineHeight:"var(--mantine-line-height)",fontFamily:"var(--mantine-font-family)",fontFamilyMonospace:"var(--mantine-font-family-monospace)",fontFamilyHeadings:"var(--mantine-font-family-headings)",headingFontWeight:"var(--mantine-heading-font-weight)",radiusDefault:"var(--mantine-radius-default)",breakpoints:t.breakpoints,fontSizes:n,lineHeights:r,shadows:h,radius:i,headings:g,spacing:d,colors:u,rtlSelector:'[dir="rtl"] &',darkSelector:'[data-mantine-color-scheme="dark"] &',lightSelector:'[data-mantine-color-scheme="light"] &',smallerThan:p=>`(max-width: ${Am(p,t)})`,largerThan:p=>`(min-width: ${Am(p,t)})`}}const Mm={},mn=fk(Mm);var pk="_1k61jv80",gk="_1k61jv81",mk="_1k61jv82",vk="_1k61jv83";function Zu(e){return{line:e.row,column:e.column}}function yk(e){return{start:Zu(e.start),end:Zu(e.end)}}function bk(e){return{row:e.start.line,column:e.start.column,text:e.message,type:e.severity.toLowerCase()}}function Sa(e,t){return{startRow:e.start.line,startCol:e.start.column,endRow:e.end.line,endCol:e.end.column,className:t,type:"text"}}function wk({aceRef:e,program:t,setProgram:n,setCursor:r,problems:h,hoveredSyntax:i,cursedSyntax:d}){const[g,u]=W.useState(null),p=W.useMemo(function(){return h.map(bk)},[h]),s=W.useMemo(function(){const l=h.map(function(c){return Sa(c,pk)});return g!==null&&l.push(Sa(g,vk)),i!==null&&l.push(Sa(i,gk)),d!==null&&l.push(Sa(d,mk)),l},[h,g,i,d]);W.useEffect(function(){var l;(l=e.current)==null||l.editor.gotoLine(1,0,!0)},[e]);const o=W.useCallback(function(l){r(Zu(l.getCursor()))},[r]),a=W.useCallback(function(l){u(yk(l.getRange()))},[]);return V.jsx(ck,{name:"editor",ref:e,defaultValue:t,focus:!0,width:"100%",height:"100%",onChange:n,onCursorChange:o,onSelectionChange:a,mode:"rust",theme:"github_light_default",annotations:p,markers:s,setOptions:{fontFamily:mn.fontFamilyMonospace,fontSize:mn.fontSizes.md,highlightActiveLine:!1,newLineMode:"unix",showPrintMargin:!1,useSoftTabs:!0}})}var Sk="_16ts0fz0",xk="_16ts0fz1",kk="_16ts0fz2";function $k({problems:e,onSelect:t}){const n=W.useCallback(function(r){const h=parseInt(r.currentTarget.dataset.index??"");if(isNaN(h)||h<0||h>=e.length){console.error(`Cannot handle click on problem: ${r}`);return}const i=e[h];t(i)},[e,t]);return V.jsx(ii,{type:"scroll",h:"100%",children:V.jsx(ge,{pt:"xs",children:V.jsx(vo,{className:Sk,center:!0,icon:V.jsx(y0,{className:kk}),children:e.map(function({start:r,message:h,source:i},d){const{line:g,column:u}=r;return V.jsxs(vo.Item,{"data-index":d,onClick:n,children:[h," ",V.jsxs("span",{className:xk,children:["\u2014 ",i," [Ln ",g,", Col ",u,"]"]})]},d)})})})})}var Lm="y3rta80",Ck="y3rta81";function _k(e){return e===0?0:e===1?1:e<.5?Math.pow(2,20*e-10)/2:(2-Math.pow(2,-20*e+10))/2}function Ak(e){const t=new Map;function n(i){switch(t.set(i.id,i),i.tag){case"NODE":return r(i);case"TOKEN":return h(i)}}function r(i){return{value:i.id,label:V.jsx("span",{className:Lm,children:i.kind}),children:i.children.map(n)}}function h(i){return{value:i.id,label:V.jsxs("span",{className:Lm,children:[i.kind," \u2014 ",i.text]})}}return[[n(e)],t]}function Em(e,t){return e.lineEm(h.start,t));if(r===void 0)return e;if(r.tag==="NODE"&&Em(t,r.start))return n(r.id),r;e=r}}function Lk({syntax:e,cursor:t,setHoveredSyntax:n,setCursedSyntax:r}){const[h,i]=W.useMemo(function(){return e!==void 0?Ak(e):[[],new Map]},[e]),d=em(),{expand:g,hoveredNode:u}=d,[p,s]=W.useState(),{scrollableRef:o,targetRef:a,scrollIntoView:l}=Eb({duration:200,easing:_k});return W.useEffect(function(){n(u!==null?i.get(u)??null:null)},[i,u,n]),W.useEffect(function(){let c;e&&(g(e.id),c=t?Mk(e,t,g):e),s(c),r(c??null)},[e,t,g,r]),W.useEffect(function(){l({alignment:"center"})},[p,l]),V.jsx(ii,{type:"scroll",h:"100%",viewportRef:o,children:V.jsx(ge,{pt:"xs",pb:"xs",pl:"md",pr:"md",className:"ace-github-light-default",children:V.jsx(zu,{data:h,tree:d,levelOffset:24,renderNode:({node:c,expanded:f,hasChildren:m,elementProps:v})=>V.jsxs(fo,{gap:8,...v,children:[m?V.jsx(v0,{size:16,style:{transform:f?"rotate(180deg)":"rotate(0deg)"}}):V.jsx(m0,{size:16}),V.jsx(ge,{className:c.value===(p==null?void 0:p.id)?Ck:void 0,ref:c.value===(p==null?void 0:p.id)?a:void 0,children:c.label})]})})})})}var Ek="nibkcg0",Tk="nibkcg1",Rk="nibkcg2",Ik="nibkcg3",Nk="nibkcg4",Ok="nibkcg5";const Dk=`// Recursive version of Fibonacci. -fn fib_rec(n) { - if n <= 1 { - n - } else { - fib_rec(n-1) + fib_rec(n-1) - } -} - -// Loop-via-tail-recusrsion version of Fibonacci. -fn fib_tailrec(n) { - let mut a = 0; - let mut b = 1; - let rec go = |n| { - if n > 0 { - let c = b; - b = a + b; - a = c; - go(n-1); - } - }; - go(n); - a -} -`;function zk(){const[e,t]=W.useState("parser"),[n,r]=yb(Dk,20),[h,i]=W.useState(),[d,g]=W.useState([]),[u,p]=W.useState(),s=W.useRef(null),[o,a]=W.useState(null),[l,c]=W.useState(null);W.useEffect(function(){const m=performance.now(),{problems:v,syntax:y}=oS(n,{include_trivia:!1}),$=performance.now();console.debug(`Parsing took ${Math.ceil($-m)} ms.`),g(v),p(y)},[n]);const f=W.useCallback(function(m){var w;if(s.current===null){console.warn("Editor not yet loaded.");return}const v=(w=s.current)==null?void 0:w.editor,{line:y,column:$}=m.start;v.gotoLine(y+1,$,!0),v.focus()},[]);return V.jsxs("div",{className:Ek,children:[V.jsxs("div",{className:Tk,children:[V.jsx("div",{className:Rk,children:V.jsx(wk,{aceRef:s,program:n,setProgram:r,setCursor:i,problems:d,hoveredSyntax:o,cursedSyntax:l})}),V.jsx("div",{className:Ik,children:V.jsxs(xt,{className:Nk,value:e,onChange:t,inverted:!0,children:[V.jsx(xt.Panel,{value:"parser",flex:"1 1 0",mih:0,children:V.jsx(Lk,{syntax:u,cursor:h,setHoveredSyntax:a,setCursedSyntax:c})}),V.jsx(xt.Panel,{value:"checker",flex:1,children:"Panel for the intermediate representation produced by the type checker."}),V.jsx(xt.Panel,{value:"interpreter",flex:1,children:"Panel for the value produced by the interpreter."}),V.jsxs(xt.List,{children:[V.jsx(xt.Tab,{value:"parser",children:"Parser"}),V.jsx(xt.Tab,{value:"checker",children:"Type checker"}),V.jsx(xt.Tab,{value:"interpreter",children:"Interpreter"})]})]})})]}),V.jsx("div",{className:Ok,children:V.jsx($k,{problems:d,onSelect:f})})]})}function Fk(){const{fullscreen:e,toggle:t}=Ib();return V.jsx(mg,{theme:Mm,children:V.jsxs(St,{header:{height:64},footer:{height:32},navbar:{width:240,breakpoint:"sm"},children:[V.jsx(St.Header,{children:V.jsxs(fo,{h:"100%",px:"md",c:"white",bg:mn.colors.blue.filled,justify:"space-between",children:[V.jsxs(la,{children:[V.jsxs("span",{style:{fontSize:K(32),fontWeight:700,fontFamily:mn.fontFamilyMonospace},children:["felix"," "]}),"Playground for compiler frontend and programming language experiments."]}),V.jsxs(fo,{gap:"sm",children:[V.jsx(oi,{color:"white",size:"md",component:"a",href:"https://github.com/hurryabit/felix",children:V.jsx(S0,{style:{width:"70%",height:"70%",color:mn.colors.blue.filled},stroke:1.5})}),V.jsx(oi,{color:"white",size:"md",onClick:()=>alert("Soon!"),children:V.jsx(x0,{style:{width:"70%",height:"70%",color:mn.colors.blue.filled},stroke:1.5})}),V.jsx(oi,{color:"white",size:"md",onClick:t,children:e?V.jsx(w0,{style:{width:"70%",height:"70%",color:mn.colors.blue.filled},stroke:1.5}):V.jsx(b0,{style:{width:"70%",height:"70%",color:mn.colors.blue.filled},stroke:1.5})})]})]})}),V.jsx(St.Footer,{children:V.jsx(Lu,{h:"100%",w:"100%",bg:mn.colors.blue.filled,c:"white",children:V.jsxs(la,{children:["\xA9 2024"," ",V.jsx("a",{href:"https://github.com/hurryabit/",style:{color:"white"},children:"Martin Huschenbett"})]})})}),V.jsx(St.Navbar,{}),V.jsx(St.Main,{h:"100dvh",children:V.jsx(zk,{})})]})})}Oa.createRoot(document.getElementById("root")).render(V.jsx(Sh.StrictMode,{children:V.jsx(Fk,{})}))})()});export default D$(); diff --git a/index.html b/index.html index 4578af1..8ad8278 100644 --- a/index.html +++ b/index.html @@ -8,7 +8,7 @@ content="minimum-scale=1, initial-scale=1, width=device-width, user-scalable=no" /> felix - +