From ca151cedd9e62f7bae99a6f3ef06c27f23ef5410 Mon Sep 17 00:00:00 2001 From: sigonasr2 Date: Tue, 20 Jun 2023 16:50:56 -0700 Subject: [PATCH] Add Sonic Slash graphics. Fixed Issue #8 such that larger enemies are no longer affected by Battlecry. --- Crawler/Class.cpp | 2 +- Crawler/Crawler.h | 2 +- Crawler/Player.cpp | 2 +- Crawler/Version.h | 2 +- Crawler/assets/nico-warrior.png | Bin 13247 -> 21509 bytes Crawler/assets/nico-warrior.xcf | Bin 18350 -> 32623 bytes Crawler/assets/sonicslash.png | Bin 0 -> 1322 bytes Crawler/pge.data | Bin 155741 -> 159489 bytes Crawler/pge.js | 2 +- Crawler/pge.wasm | Bin 430535 -> 435571 bytes 10 files changed, 5 insertions(+), 5 deletions(-) create mode 100644 Crawler/assets/sonicslash.png diff --git a/Crawler/Class.cpp b/Crawler/Class.cpp index 4bf5cdaf..550c8985 100644 --- a/Crawler/Class.cpp +++ b/Crawler/Class.cpp @@ -55,4 +55,4 @@ std::mapCLASS_DATA={ WARRIOR_WALK_N,WARRIOR_WALK_E,WARRIOR_WALK_S,WARRIOR_WALK_W, WARRIOR_IDLE_N,WARRIOR_IDLE_E,WARRIOR_IDLE_S,WARRIOR_IDLE_W, }}, -}; \ No newline at end of file +}; diff --git a/Crawler/Crawler.h b/Crawler/Crawler.h index 1ee3de8f..49de889f 100644 --- a/Crawler/Crawler.h +++ b/Crawler/Crawler.h @@ -15,7 +15,7 @@ class Crawler : public olc::PixelGameEngine Renderable GFX_Warrior_Sheet,GFX_Slime_Sheet,GFX_Circle, GFX_Effect_GroundSlam_Back,GFX_Effect_GroundSlam_Front, GFX_Heart,GFX_BLOCK_BUBBLE,GFX_Ranger_Sheet,GFX_Wizard_Sheet, - GFX_Battlecry_Effect,GFX_Mana; + GFX_Battlecry_Effect,GFX_Mana,GFX_SonicSlash; std::vectorforegroundEffects,backgroundEffects; public: diff --git a/Crawler/Player.cpp b/Crawler/Player.cpp index 0e2eddbe..9ebb4363 100644 --- a/Crawler/Player.cpp +++ b/Crawler/Player.cpp @@ -262,7 +262,7 @@ void Player::Update(float fElapsedTime){ AddBuff(BuffType::ATTACK_UP,10,0.1); AddBuff(BuffType::DAMAGE_REDUCTION,10,0.1); for(Monster&m:MONSTER_LIST){ - if(geom2d::overlaps(geom2d::circle(pos,12*3.5),geom2d::circle(m.GetPos(),m.GetSizeMult()*12))){ + if(m.GetSizeMult()<=1&&geom2d::overlaps(geom2d::circle(pos,12*3.5),geom2d::circle(m.GetPos(),m.GetSizeMult()*12))){ m.AddBuff(BuffType::SLOWDOWN,5,0.3); } } diff --git a/Crawler/Version.h b/Crawler/Version.h index 227a62ac..24057ef2 100644 --- a/Crawler/Version.h +++ b/Crawler/Version.h @@ -2,7 +2,7 @@ #define VERSION_MAJOR 0 #define VERSION_MINOR 2 #define VERSION_PATCH 0 -#define VERSION_BUILD 53 +#define VERSION_BUILD 56 #define stringify(a) stringify_(a) #define stringify_(a) #a diff --git a/Crawler/assets/nico-warrior.png b/Crawler/assets/nico-warrior.png index 1d80dd0282c3b2523e75ac86c3e850df56c5951e..4983f9ac155756c30c984de1a8232de1de83ef87 100644 GIT binary patch delta 17284 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 M07*qoM6N<$f=3=O(f|Me delta 8891 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 JPDHLkV1gYU9LfLy diff --git a/Crawler/assets/nico-warrior.xcf b/Crawler/assets/nico-warrior.xcf index 65c08b9a12bc6a19bc527126f9ed000bf457092b..5422fba6282885bfef9763b8ba60462714e1e044 100644 GIT binary patch literal 32623 zcmeI5e~et$b>HuMGrKc8yF2@Xq$tr2HImF9l0|AMTM{Kvl=aK99ET$GBa(~;>1sJ7 zw_0+iyG#8r6pa%Eh|?gjyA6u=pVoDa!a)Os3*?8>IIYtfwvjqW(!_O)8bNoEqMA-x zDE7)8NnB1p-*fMqc{7~lQmJam7I$&yocsHp^Uk^V-1F{x@5Jn>O6mETE+IegD5Y z_2mA1U;q5>(mk=^W97veXv&j5e{6B)6!`Pb4b06{7M7eF{A&%GCX>jDD= zpAvq;^XN|k_lowD3m8Fo83{KtnbI;8Gq}oxL zug@&r2QS^V;D2?p{E)6Or5%-|G7g%u%++KXShvYk`!dqnfoVvDhxRuZxC1q~wyD=698H^NckaY1b7!e)=;zIyvG* z`InA-|A_mA8#}2}-Vb5-qXHrbDjJyT4vo-@G9YI|GuOFv+i+5GV7kB>;haBhfli~Xf>@TVWioe z*#p^!dZhNCWH}kd-~)sA58mTSgEtJ`K6qg8qrwx-8{9+Q?fgE_9=+F`c8M+u%BfOt zrQOaxlRC+&YCp@k=NNZ+sr)=^hjaJMS6*0{J#liWbo12IZKZoy%F3mOPS5PWu{1q5 zSF)_d(n5K$yzp%K*nX#VQ1zVq-XpfYMOXYuCvEAcoV)A)FlYT~C+*{BocoPM=eB>a zleU*RaofLi?u)n1oLP9*x5onh$IdMt|G>=_k4ElgZu+ZM>wC;sxn<|p|8cAJ#^+kC z^?yzK-*N8CbCjD%t>61jPoGK_aX0+XefOmns__$;5c_6NO`j<5JFzg!(#L{9_>H}b zOD{n2;{4p~vFi(akDr*CpPOGO?KQA(;l$I^r78PAa6Q>i_sKp`vVUbizgU@`nLT}? zbl_%UFLcF1WZ#+7vrDDf(=#W_i>fhy{P<#dsWheXDcqyog*E1_DLPJ-m!^+RFHI{Q zTB6@QbocY8=1R|&7ZzvdPv5oY!2YQ{rSj>S`C|;}u04-G_Tha8_uPHBa44yGxKJt` zTADsl665Z=_JQYTkMDm-EZTqX?9$@V^1`Fjrx1s04<9V?f9NKPZd}DGeyn`@#L~%Y z58wR3sY@yT#O$$4EB)}oZ29!k^b&Mkd-%X6O+QlRYMxQq$Kf@D*`)lFoeI|;zU}6l zHf#T>ODX^4smlJP+2hCe_Z|A7n>yD(moN1!e4sW_4~KPULi=7 zbB~^!Ezg-`4-(B1T7+wa-~CB`v5W~ySMi~M17s;!x^P*ODx<#wA;C*2d^m-Vr0~%c zJ_ep|@dwmjj-a;G{;q%nWD&V+D0f{7-zuD-da1vWZK+5?ei-A(Jw9*SUj+Ey`;;YV zfz~2h+D;_#m z&3wkKH(hhmes{aLIc!)4%*W!U@I9{8906v5w-KuG`>ouec8z_8#m)Vpn+H%Tc%9axJbAzq=69al-q0;4T+aB5rY|T3ZR#!oyY` z-c##(N{TWmDMt_V;$!bhn;;HvR7^{*hPtu)Nq2(Kn}tF#|1lSI^FSv!= zEci}JOcI1&4V)l-ko;@F#|bT$G49^t23rT+09?)*$Bn~VliPGxh?uR?^;({7ZF3sD>`W-@V#zvIVDZFadHDXM%@9WZgC?B zUvzm0Z7%47OWdU>VtR&)5OWb?lxu*vlr9DiqE@<4!t?Mk!zGc*=3)MD5P?C`3y6R? zFDSMvKk$6yL#~<%LntJDHEl8;`{%5+7mw$y?`*5cc*hAEr&P5%_LQq;zW{c3DpU)< z_9jzLQd@%G9U@Z*DMfYY&ybt1Py#`^9R>gnlJ14{J=B)^>@bnlBnLgj&N0CmyO@6% za)=JV)fOri!PRW*TH|~S^lISM!mCGh=-zi(ub+YocOZKQk+~h08j5YYxeC^c zzmkV5;htns)6aIp#o35-KhcZ3gOuGK;*w`gUz+?i;atG!lzf`3jyqRPzX0mqF=nj>6aN0LX6>G&0S~VT*1p9O z`m;W7`;{I(!G>9XPyAaC?Kde)WcwF<`ZaR?@wYqd91eWX$8XMfc+1avcn6zx{XH-l zptb@0J>WOs?xBD0<4?#z$=?&9-V^g7UJdZm9wHA>!DT8)t%V_%tBi#(=!Pnz7V?!e zo=cVK#-qyXuGw@In&^k-`lhDJ<|z<0qsl}N%)3^F8LGlui>dv6dZ;&>^@_t9eod&y zNLK2gqY21~fJK+BoL8~)O|Uef!<4ATU*h+6$e9S_=OMS)hkTJ)46NuTxx=n>`Vj3+ zgm#!|ZSb8wL;yprFl;EQ{Dc+IpqrICRKdayU8C-`K-UmV*+$5?bt;a^z66gdc^i9{ z%a?_sUm~zQigGT`NCqq8ZUD~YxiWd9FpcNj`3l)d7Ey6)B1t7PTamq*rB%xs z_khdNjOkZ7SY7;%P^YN`pBz_)-8m7v%|LS;P;r&_K`<5+V~Q%-A5j53(rg|H0tlKC zz#~7}0(bLmzv<-!WreCbD90AGTt zAb_5(L;zp<@fAS#M;MJV92HoCTP(pASa$I=DC99Dhg-uIhPv={nM=VDSZh;#sQd^) zxY`%4zOrt#RbbPU^gBXYQoe{G%!-1+I{?%!IbzH*V%d~LZ$JSnDmhsTtf3bge)K+_)s|i~V(~o3hB0rW&KVE==#$Zm2i{Hs z#p@x;B;~8o4Xo?3SnvZ@c9}&I1=yH z+k(}@{s>oT(qY@`k#7vU01s+prrv&9sm6c6uPho*v8)$S+zodpwn~ekn2Bc&j-o%iwM2XjsO7JUFVQ?rrC2SeM=wj=KL9<|1?e zueRoqxOJVa1(^WjkRELSm9Kdw!W*tRNpOTYK7*TQlsP67;!$h2<+oaUnRoChF@y9> z?Hdn5jc9Ni4ML6QTDMpSB0vL(spAKb#CL@OqRB1Bpzii=G6+#5PIN;*75@PZU?3?Xb1WE~a{~#=n}16>K-H9rYl)V)+HM7UeI3huw7=ggy3o zN7ddfwOkfj?b^HQg4Ql2Y9UK@)|RLR%@VtiAvs~R#L4p!R=bG=kzZTB6m@_A;eq&3 z6#32~D{TyG1IJI8{~r7 zeIqy-3XDUx->Bi8^iKIfZ-kC@0SqTIN#%Wz*CBz`=s&-0B<9;BYTuubB7Z=K#B_S6 zynF!Mpzx-yfyA4V(3QYTrLWVr{0<50d-2XCmp4Tga-LHu@`m`!=KT@!@eDviI(;L& z+H-4h$i=gjFjVl3z%6LcS_!3zf2M;IbpXXu!PQWW1?9iF*eIO;?{*9 zJtu`K)uFF&AmB1Jesz53T^sKa^u9LXiLZ@o#&j38IDKV1K%7pTs?x4kK1%j9VKVfd zIZ1vFjg`;PPlm$PswT!Xo=i|fl$VD2@_FjZuP9BD*DkF|^6Dx0^g)iHcn>N!-K?BO z?Y)R<(|c$&25peX2;AwTT@R~6_qgjNmGOGese|att?giHanNf5r=1XaPMFy*I)HfN z1B)u>)>ZZr=$!L~BUF6Sn9esN{MkoA?tl`Jg;zv7frg6>3y zgahpa-OFXavAUN=U_E*qtzPfGyMlwi<9TE=vYK`0S8z&lOOs(}Ysw#knxvrIJ^tXNKag`q;-^zh+JIjG@<(=hj zzLC()w~!F{whZ4WV0>GKZyc0QZFb<>GJGrd@@@Hbw_GlF@oo8BdFRe@if8 z;Tym3t^AJQTRrgYY(4O;ezxAtHxjz}77_yA*5DfjjBji3t!{ivEN1w&2H)zvd|P|n zt<~{`Cth#lZS7qB?AdyXZxkQ_z6sRf8^7?azA@htuTux^L5r)g&KYVBLf_DP`JXh; zs8lcX`Fofr@a^Nb^1dtK3Oar!-<5EkBdx}VdRpFPCY)N9DHm~Qsb!{}dewQ!Y#71S zHoN%VO5kxwzsB$!cS{mKoXj}YYvFM#8szer8&9ysou6Hpcv(gyss8eV$RwiA3 zRej(@TOG92)+*<8Esc|-DST{|L%WvF3DVVSl)cEMg0Og1XNg$BO%g@vD*GT&vN{A@ zcdKGS*Tugq)?$}uSz7edc-zQG9jZv7|4%M;#Cka`)`?dUv1Xy&+|P(uFMF{rcZqem zN33aVorS(F*5zntRPGXMN<`(?c9uJ0O_{iiSckfZ^>S?W5bI^cS_^s^v0kR7ovkur zy{tYE>t)26)YdX$ZE1*g3LjfWtSud}UfxWs%kgrzSeG-)L9Ca(STBnOm&Mw|IMM#M zU98vAVx8DQh&6W5=DtM4dd-V)2s!v93pFqk5NEQzELrcDCLTYs$oR z#5&YPtk+_zhgh#6*0Q(ii1ivRoo&?->oxU(Sg#@0q_)-&YfD3{Q~1~#Vr}V&_1b1) zU60qg#k!tZ3u3+I#d-}Eq&-?4Tw6>QZwu9UG;ApuKU=*{sa_vj;*^n(tv}xFSJReK z!EbJTyJ-iFww}p$GhHT)V^;Sqqb+8K0^LZ}=r^OF;~9MGyo87(W}^&X?W=;-B z7FYuoSOeB!O&xp#)}-#7yiKgBC#+$}32O{B)_?`p2=lD5U49p9@L}2RRL?pImlse| zjPMvdNylEX-7QkaWMo_%%LWmw=wpn+0`Pj4M z*s~0%CiXq`q3!j`aJLMn1o|yH_aUccawbS;Kky!}M!@9!2L=G~#3!E9 zDP_v%DHmC~7{NIewtGrzSzdVJLdm$I^zemhWjq?rhTwmoz8wxxQ)KF?47@O$3$Zb* zaQi~2+VF`w9WtygR^ml6713DEv9Tu7J~0BalC=Vw$qTNj3&tYj4@eFrCq;%`cI7pB zi8)E4US9QuEUr@|a$n$@Ud8#kvcm4$J2JR!V!LD%tnvYBX!)w<>3oQ-pG#Io~UT8LWeYCS&zL<8FFRq=b6e!YgQBOG|2GUHPJ## zLpu!y?bN*v_NjfevtGZLcGfShohc(w+Sxz4sdh5>F6~_F(N5xB+DUoSPD>Bk$>!U% z)ABmniPs>}PD=D>C-oEURA!fU;y6gOlQz1v6aPbeHqlP{JBOR2M?33TD-g6(7Yrlx zLhY=lv~%rMU#M3**SL{Xucx)sd=^1F4M#iIxWROB?W}ier&a9I&UOmgS@+t>J+&WH z*48Q&4ZowEMB3V^`)+6_Np0-}UrV$T)U=bddeBZ~uLbSIiDKGGn%7P_bJo_{+6i~j zPSO(X1g#_eY3-y8+Ud)fc2a^OY3*bT>)f_OJMsURc5=PD*3LDwa}Djp4|E@Iff%$< zWD6jC2$Ns0`4}TUY`y`d(E=WXg2iJX8fInXkx;&l11L>roAgkRjtvxS*I%%_q2QHJ z8~;BK0BQGt`5lfB=-9z1S&zuC&{CtG+up^O3Tm&)+u>v zOE>@YvJNB!3-ao}lmAFpY^}H2cHtrzN`!FqfPn+KajzEp~wCS}mK3}8pKBx>MoPbLs#5FP< z-q1#I7+kkKeOk`aMo7~pGfCqXs02k0sN{l)0p20y2~Of7GI7YEK|GUi--XVjUT4x~ z@gc{n96Eu=|DO**ZvxopRSp9W&dook0*s$RslUzUIX!&j4-xdbMRp>x-ZQH=n&{O>(tY95 z3SVcZ>34!pnzxqeokIwdsDb>kQL6-w!9X3oz-a|jhpwrTzvjLp} z&w~3p(Aj9U@yP~jBz2+&bT**VaOec8e%ydg@O%S04ML|u=rqV-3hLz>(Aj{_26Q%{ zvjLrrs_5Kw)S^N?L1&{XI&08bgU%Xs)}XUSi5hgaA#~QD)6$@`2Au)Vg8MqqS%Xfi zztc_Dpp!aL4LWPkX*hHORX?slCwRUFod%)PAaojpPU_`r&{>1d8g$m6vj&|tqjS?y ziwgAwoi(F#Q@Pavm_%-`MiLUaz1n2Z%j(t06m*8eGZXJPx&3)tmHa_nj=rRxsJ)%^D+7vXYP;*jVt$am52N1&<^atDqiEQr;OV*>;RVxHc-z2k0v~1$ zh|%I=1KxrUGdE@3(r|Sc-w%t&^OtDw+7*D z1Ku{^EosFDyuAc|6yZt2k1_fghhLi0#_503;(@m{cxwUPG9PJ98barXm{T;b3^S(` zn0GYyjH1<-f~V_lgcodvfVVYx3qH)e6EkxZYw#9)nE5Ef+%{H&w;{fDLmb{xw?Mfq zv^P#Y&0mv@UwF>y!P^?Vg}%ueyfp}KYw)%PZ%HfG;O!;wqXV+p>{k<_i(r6 z``c(bM7kGhtI_ZG8HtX8a_4}W{h@fJeBD&T3NeVoit@v)57L|NR0%50ACT?znv6oP zYpq5Tj<%S|vdl2CS#R*2nI;0)j3YR~tR#z0FmAwiUFM7?~DY#Uoa9`jPRA3 z{h@fJe2vgsxg+%CtzP)ufbR`KrNQ?AyL*T4^lp4-mdi5x#AZ#xcV?joT(gnj1T&T_ zOu@JY-+>vRW-dX^vT3MUI74~O&T3PuLWEVA!wQ7&eXKxVGO4i0K0pK z@APhbXKwNDK$X5|&e6P*%r6PNJkR)>_;1xbBl~a*cH#uK>bR{7{qd2o3dp9FUr{HM zMyV$_!j}0_U@q*davaNM!U;Z=&o|0(W{E6>OuB2-8P_O`G320}a z(pXrmGkVBqj5*goq5?p!x@Bw5`J0v|Nsxm%!i``SQ5iU=n zys)a{A5~0nKTe;X;5qu4B;bIClbZK`rH4Y5Oehp}oP^0d zG_Jjmr%3ye5xXus=tHaWRY2__I&j3|1-Mb9toju0eX<&tv{Zi7WSokN5>cg~{gU3t zAWL}*7V`vF`#9^DyaoO6k+9~;x*sOQ)ElL&;0WuRPeaOV*PvYl{BG|O`r`#Ft6c_C z#yX)jL~Z3*ef;hRDPyPLgGpJ}o_x*zj6WwQ;g1!K*^Nv(27Sr>%~A4H+3 z^Ar}^ywWZ(;hV?B^HHve(lu&%cG9@oQM%umA!U@`0T*@Mt^#T|)qzME@dDf^LXEDE zaP8Rq^+BqLcXq3aixN?#pq-;hneADSEcP$stk&|?^utHO3a@?6Fd?SiC}jmlSj~MJ zQfB)n?Wed7?fp`JykKRu-$Ke*6}4ijtsHBu-v@FH*)#cIQr5LQQfZas8dy(U18OTi z9$NCadRID9X5|uG<@(`B8Puw+ytSorNLiaAjVht28_!$1FP~@aE`<7iXPcz^F^^L= zTjN?V)-0UVnvRrpQJC;S6pA`eVWG_{?S~V-d0adn<(ep6qn2MSjjJ7{`#maBM)@6Z zQP=G%p!Ss=h?Eg8z>Ol*==uoP-ql|pq>6ZF->$eQ5mgG>Lrcp1?kQs{rq+@PW?QYE zy|`9P*)z$CsYlGTVhScJrtUU*@6zQJ^YV&`l(kpPYVW@M&BjwV$8@8Nzvn{`p1wi$ zUE;40^se(s{{^4Yz0)(#oLHDYbNU#G@0`12e5B{R2E^ar^{wZ8Mlt=jSWCqcPK3K; zOGTeoeImf*(~ycLWkHwzh0lNX7d?FL-+1`q&jfhN!=L;40Qtz6{$Bc8fZq!6e+Kvi z538b)zv}h?_XK!bfDd{|iJ@!kwUiu7=Rh8NSKbOCY{Y)`=^dY@C(-r3EdK!>ofYB6 zY&%Ww(0VU{^Eei&*>72Wz7x>o&NuDxm}t|-)I$g7iviTUJPPhP!BOKye$~EJaVI+M zKi|W(;A<87W`bTOE1REJoVRh^Aea6teH;EE#dShpAGjWht`0oQ7dP$((^nNZMdKee z&iouHccnr#`&-0#5rTcMqv}2hrgJ2m8401qq4IZROL<;$YTpOB6S|WiYLigS{7xvr z$EU)VMEvJ;psrPQ|HV~vze)~gckRRl@1oNZtaA!F%)&t&)^zqi0BzJpJ(?xsb*>Bt zM&xqP0gnvJa)#X3NY)pOcsqUT2x&TRuk#LC)+6%ucu$M!=Z>`85uK&Uhff||32vWX z;_P?C1L7^NZNweja8)v#B!0FCEqyuym@nsl&0LXtjNnXV5p*BaI=+ftN zMWIjw>R?aTGCAf4&ChH|_vPlV{pDpBj4N9;>0W0zTWnPoo|Df>r= zccPf19B9TVY|J4)eItXzg^I_# zAT;LNeXS-R-7)+|a4q1~0-L9|xqdbKXgjWvB~F%&K?>-%HE zc^H-{Puz=J&_p>FKi*eW9k{2>5AlRWuUQ>hfAi@a2)co`Ily)Y7XhH2 ZZ+ctu_c0SY0RvXwRnpc(f9-9_{{{AhHzoi8 delta 399 zcmaF=k8xc;;{+$h!i~{>Nzv#DHNKC^VH;vPS2P)y(SB~Do&mdDLMH=9mnLAkphzw!lNeNF8a%4 zqd56iu~fZ{FT@)6X;69*ga(tJfaC`V-{vlawmS@=?VmzumpM>+4TN?*0HNJ@AhbIh iloo^1YEaq?Oe-_EyFmrQpmZ9PE`!o-o2QlBEX>4Tx04R}tkv&MmKp2MKrfNkh4i*)0$WWauh>AE$6^me@v=v%)FuC*(nlvOS zE{=k0!NH%!s)LKOt`4q(Aov5~>f)s6A|-y86k5c1aCZ;yeecWNcYshYGu7;v094H~ zlCh|m$*zilS9BqSL0ShSX6o_OVj7;~>mEM7-$i(qcio?(SILecKiu)$>b`5 zkz)ZBsE`~#_#gc4t(l*ibd!Qnp!3DHKSqJTF3_mi_V=-EH%AO zrG<}xzHQ**x~0i`z~v4w^rTCMdXU*+f^BkuSK$?2Bd;=UD z0%HZrUiWx+cYELdt!eh}2U2cwnqD!uYybcN24YJ`L;z6$paAY-`p+8x000SaNLh0L z01FcU01FcV0GgZ_00007bV*G`2j>P97a<>yP#F;b00SmTL_t(|+U?t~cH1x%$8n`+ zr`Rj%Be-mELF*auYxE5^mcqaUjtz$G8A@_G)WWj#5sKR35slP4i5%t1vgAL~_rrSX z6UUCF-@Uf16aWAK00000000000000000000000000000000000BtgHuX#Mu0Q$MaV zerjO47{I`k2XI+bn$rM~zyN)6&)?@vDW%Gy(yRHFBnGCOzzkww;wAL`@>Sn2Uy~ik z^!!N42irevgZRt0zg|0r+$)i#yK6(tpsV>--#&cJV&--^zhg@=*YA^ab(j5Pq||$U zWYPmSlepF{k!_@;HWRwODxPo?l98Ghv&R%-XDM4*dN7%PZ;Y=iNi!gXn7ixxI8QLzdp5+lH>6 zK@Xg%V+&XMShV7kMr|jlV=Y71-rIK&#@O$E%fJAR)bmS8E%j{Dey^7o{5TFRL+WeY z8NiuLKrSz<#ClOBbmE#N^JcgHf1G9yoO;W^0Pd;hH}nNe#4_%($pBx8E~{eo>{%h1oT6kG-tY*NZA4OJ-a3QJ(`6 zn95*g>(iU$XWng}ciRRj)e9vwn3#-7sr!p6ZBx2y&o5OU%xv%~w{6Ta+;xp|A1NFA z-S!aef_cuQ^TJwaV8TdXL`}Id_pee#AtkhL&);X|+`nRdJAQ(A?@AeML?4$I&Bo$(-4ygRH;I|C#|=FxpEo`f)#^71$6ykFJ zCHI&6UmD)aeG^@HqC$_ zR<`FCsQs>d>b*R#992zXzgTR4VB96%qv5l@OBZc+H(1z!KI%GFzyG>b6F%txune!1 z8t*MC>FuIo>ML$%lG?*(=UOWI2_1_PdThFV;sVl}W~D3GRycAzkkpAQ3L0Ev)ZBS1 z2s!Nq`v?dob+|uxHaXqa+FIX895UM31(C}lYFA4#^tq=maNgb)0XP9gd5KFPDWa}A z0O+cNqDn2UbAy6-)Y;R5%L1}O0uuGfmO`6lS364RZkgEDM zX{x2sQCj7C8zEAYbEl6MY=u{NxJOT;` z!vr6kaYbcEXTLt>>?#weqFK9DWv4dC3wap)hv8-fF@LdO>kMIOQE$M6b@%$AFHwVF z$ipMAr+7}~GBv8BLVMmB_=|44f2Fp~F~C6s>9AS`f5~3b#e(BOpT0nwN6ymist{`G89|&kT`~w*V%0m=NR%7P3~D(>{J#h3_b|HPS>oNaHl8Hzvk~z{A@jBLNiLQXVNYZ1EwgsFFpJ#?yK`4 z?J=jp$Hd2aE_%VnT_pco-7%=wN5eoGmBp4z2SCq=v`y1W#bUNERQ0h*bxEq~zU~CR2p!>-oDbP~w>(zNOl?lp(%#QydYcX27PUxg)v%wA^iTS%xj85fQ5EI4+Ls%v5M7qd}j^G7i}$M4#mWcz(hFgr6OGZ{Q?Z>seCa0B{{QH-sz?aTC4QRR$}vbZBb>`Z(tf^7KP zo4xA z<|l{6dRy+(I_ZD8b9u+`NOs7e0;OzhoDwik zO5UFavDja7$#8>uU?Ksa7Wd~JlTPPz8oZB?hPc1il3JrDe%_8zEgcC8)&DknD2@Ul zRyJq#saqs}rz=di4=lZEVErhlS-ThhQTi6*4VzOv5r3*Z_M}((Uc*lLyNGbFjHq@+ zLUh%_-9qAb)4$ye@gl~y9nnpxcLIBz8pQ3$yLkPt)2k&H2I}jZgP$uB*atS$pz_X$ ztN7sqwt~Ut@g?#2!p;%P8scnMzk={Byr{4QCWn{YX^lLws z{&nLvmA8Ul3zizCF+4(WaMKTke#W}~dN<6i0QuS;nT#9?5fu@^o_U+PWPfgWOq-MS z?17TL!M@U1^n|mzh8}gPc+A0rfw9t+vS|~_Ho696S+;71{!E~?P(ncBH_LdQo(%#4mlW>>~xD@#kF9l;=tA|p_K$Xvse zUsOOJw$nwnv0I``-TIBlBU;lfX}E`yUA=FrNZETuhU)bB8Ok3n`%8=iaIa4q6omK} zFfjsTvR%EL^f^Y2`|}&)&iaTr=TPVb%ZuY8MwuNWDv7#E!>!_0J9pjbGwU`m^9DD` znO=QP=JAkEHT5xHPGwfyFsoD}C5VZ6Zmwvog<9IUMKA@bqVd$P^$>NPW^dj}GgH*A zhZLNT?5Hkh)QMK-eg&LXqugZ;T%~bO+8Arp{Xte(#e|}y6iCBJ=$uYZ?#PN^SW903 z8%`90sM-Qi*1qiR3E)d&$I3bbG%J2!@dRoWVM*@{qA2E`5@LB{ai{2y)@S4nkRQ~eMkSrd>%1*K>ruo6D)&zZaFnh5Zi zPwbEAEwFvEL3x&0c8dp(<6bn47@kxZnlapsgf$|mg@sbRpdZsojx zGmN}ZFfTGaX1?6?;#lM-Wsr=WUk5W0_g+pK?4oe>xw*xIqvmw)E?9VKvY2*S6PHk~ zw6n=E57GadVe!GDfIA5*kMu*g5{7s@y!}~=gXe>*u5Udc^4GQX%naP?9`#)N%Utwg zbOzH{0&WG^31zB8cjF8*F|59bfo4pb@q82~6WUln=q8-xCOGrFdd0@%Z>HKRW8Xw~ zt7pb6i;;)XiTA}_oR%o{H{>E!umszQO#mt6C~mNetZ`RtYkX&$+Wlgd`OsKRft28Q zSj(vHg(kuIL9aaH%S`t2)zfWLY5&2m;n5w*1nnp93dl{OS!AArHL^!>S-Kc)B3!xK z=O09O;xBgp2hpAQi{1Z0bkB=h0%;Rvg;b;l3pS8kK(GJB-X{k913Gx<(48NKv%t_f zIsM`^{khTatR71--h87!Ym|DD?XPvL^D8EXJw4MAqA036c)a$FzameT_3?D+rBvc^ z2?IW5ACjw~sbk@VzNeiApi4rs`U2mF_xWx=JlX+~x(wV1{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret};readAsync=(filename,onload,onerror,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,binary?undefined:"utf8",(err,data)=>{if(err)onerror(err);else onload(binary?data.buffer:data)})};if(!Module["thisProgram"]&&process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);if(typeof module!="undefined"){module["exports"]=Module}process.on("uncaughtException",ex=>{if(ex!=="unwind"&&!(ex instanceof ExitStatus)&&!(ex.context instanceof ExitStatus)){throw ex}});var nodeMajor=process.versions.node.split(".")[0];if(nodeMajor<15){process.on("unhandledRejection",reason=>{throw reason})}quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow};Module["inspect"]=()=>"[Emscripten Module object]"}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=(url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=title=>document.title=title}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.error.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;if(typeof WebAssembly!="object"){abort("no native wasm support detected")}var wasmMemory;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort(text)}}var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="pge.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}catch(err){abort(err)}}function getBinaryPromise(binaryFile){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"&&!isFileURI(binaryFile)){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{if(!response["ok"]){throw"failed to load wasm binary file at '"+binaryFile+"'"}return response["arrayBuffer"]()}).catch(()=>getBinary(binaryFile))}else{if(readAsync){return new Promise((resolve,reject)=>{readAsync(binaryFile,response=>resolve(new Uint8Array(response)),reject)})}}}return Promise.resolve().then(()=>getBinary(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>{return WebAssembly.instantiate(binary,imports)}).then(instance=>{return instance}).then(receiver,reason=>{err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(binaryFile)&&!isFileURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(binaryFile,imports,callback)})})}else{return instantiateArrayBuffer(binaryFile,imports,callback)}}function createWasm(){var info={"env":wasmImports,"wasi_snapshot_preview1":wasmImports};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmMemory=Module["asm"]["memory"];updateMemoryViews();wasmTable=Module["asm"]["__indirect_function_table"];addOnInit(Module["asm"]["__wasm_call_ctors"]);removeRunDependency("wasm-instantiate");return exports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult);return{}}var tempDouble;var tempI64;var ASM_CONSTS={44396:()=>{window.onunload=Module._olc_OnPageUnload},44440:($0,$1)=>{Module.olc_AspectRatio=$0/$1;Module.olc_AssumeDefaultShells=document.querySelectorAll(".emscripten").length>=3?true:false;var olc_ResizeHandler=function(){let isFullscreen=document.fullscreenElement!=null;let width=isFullscreen?window.innerWidth:Module.canvas.parentNode.clientWidth;let height=isFullscreen?window.innerHeight:Module.canvas.parentNode.clientHeight;let viewWidth=width;let viewHeight=width/Module.olc_AspectRatio;if(viewHeight>height){viewWidth=height*Module.olc_AspectRatio;viewHeight=height}viewWidth=parseInt(viewWidth);viewHeight=parseInt(viewHeight);setTimeout(function(){if(Module.olc_AssumeDefaultShells)Module.canvas.parentNode.setAttribute("style","width: 100%; height: 70vh; margin-left: auto; margin-right: auto;");Module.canvas.setAttribute("width",viewWidth);Module.canvas.setAttribute("height",viewHeight);Module.canvas.setAttribute("style",`width: ${viewWidth}px; height: ${viewHeight}px;`);Module._olc_PGE_UpdateWindowSize(viewWidth,viewHeight);Module.canvas.focus()},200)};var olc_Init=function(){if(Module.olc_AspectRatio===undefined){setTimeout(function(){Module.olc_Init()},50);return}let resizeObserver=new ResizeObserver(function(entries){Module.olc_ResizeHandler()}).observe(Module.canvas.parentNode);let mutationObserver=new MutationObserver(function(mutationsList,observer){setTimeout(function(){Module.olc_ResizeHandler()},200)}).observe(Module.canvas.parentNode,{attributes:false,childList:true,subtree:false});window.addEventListener("fullscreenchange",function(e){setTimeout(function(){Module.olc_ResizeHandler()},200)})};Module.olc_ResizeHandler=Module.olc_ResizeHandler!=undefined?Module.olc_ResizeHandler:olc_ResizeHandler;Module.olc_Init=Module.olc_Init!=undefined?Module.olc_Init:olc_Init;Module.olc_Init()}};function ExitStatus(status){this.name="ExitStatus";this.message=`Program terminated with exit(${status})`;this.status=status}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){callbacks.shift()(Module)}}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24;this.set_type=function(type){HEAPU32[this.ptr+4>>2]=type};this.get_type=function(){return HEAPU32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAPU32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAPU32[this.ptr+8>>2]};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)};this.set_adjusted_ptr=function(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr};this.get_adjusted_ptr=function(){return HEAPU32[this.ptr+16>>2]};this.get_exception_ptr=function(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return HEAPU32[this.excPtr>>2]}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast}function setErrNo(value){HEAP32[___errno_location()>>2]=value;return value}var PATH={isAbs:path=>path.charAt(0)==="/",splitPath:filename=>{var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:(parts,allowAboveRoot)=>{var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:path=>{var isAbsolute=PATH.isAbs(path),trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(p=>!!p),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:path=>{var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:path=>{if(path==="/")return"/";path=PATH.normalize(path);path=path.replace(/\/$/,"");var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},join:function(){var paths=Array.prototype.slice.call(arguments);return PATH.normalize(paths.join("/"))},join2:(l,r)=>{return PATH.normalize(l+"/"+r)}};function initRandomFill(){if(typeof crypto=="object"&&typeof crypto["getRandomValues"]=="function"){return view=>crypto.getRandomValues(view)}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require("crypto");var randomFillSync=crypto_module["randomFillSync"];if(randomFillSync){return view=>crypto_module["randomFillSync"](view)}var randomBytes=crypto_module["randomBytes"];return view=>(view.set(randomBytes(view.byteLength)),view)}catch(e){}}abort("initRandomDevice")}function randomFill(view){return(randomFill=initRandomFill())(view)}var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(heapOrArray,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str}var TTY={ttys:[],init:function(){},shutdown:function(){},register:function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open:function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close:function(stream){stream.tty.ops.fsync(stream.tty)},fsync:function(stream){stream.tty.ops.fsync(stream.tty)},read:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};function mmapAlloc(size){abort()}var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node;parent.timestamp=node.timestamp}return node},getFileDataAsTypedArray:function(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage:function(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr:function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr:function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup:function(parent,name){throw FS.genericErrors[44]},mknod:function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename:function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}}delete old_node.parent.contents[old_node.name];old_node.parent.timestamp=Date.now();old_node.name=new_name;new_dir.contents[new_name]=old_node;new_dir.timestamp=old_node.parent.timestamp;old_node.parent=new_dir},unlink:function(parent,name){delete parent.contents[name];parent.timestamp=Date.now()},rmdir:function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.timestamp=Date.now()},readdir:function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries},symlink:function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink:function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read:function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length{assert(arrayBuffer,`Loading data file "${url}" failed (no arrayBuffer).`);onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)},event=>{if(onerror){onerror()}else{throw`Loading data file "${url}" failed.`}});if(dep)addRunDependency(dep)}var preloadPlugins=Module["preloadPlugins"]||[];function FS_handledByPreloadPlugin(byteArray,fullname,finish,onerror){if(typeof Browser!="undefined")Browser.init();var handled=false;preloadPlugins.forEach(function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,onerror);handled=true}});return handled}function FS_createPreloadedFile(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency(`cp ${fullname}`);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}if(FS_handledByPreloadPlugin(byteArray,fullname,finish,()=>{if(onerror)onerror();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url,byteArray=>processData(byteArray),onerror)}else{processData(url)}}function FS_modeStringToFlags(str){var flagModes={"r":0,"r+":2,"w":512|64|1,"w+":512|64|2,"a":1024|64|1,"a+":1024|64|2};var flags=flagModes[str];if(typeof flags=="undefined"){throw new Error(`Unknown file open mode: ${str}`)}return flags}function FS_getMode(canRead,canWrite){var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode}var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,lookupPath:(path,opts={})=>{path=PATH_FS.resolve(path);if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};opts=Object.assign(defaults,opts);if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=path.split("/").filter(p=>!!p);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath:node=>{var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?`${mount}/${path}`:mount+path}path=path?`${node.name}/${path}`:node.name;node=node.parent}},hashName:(parentid,name)=>{var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode:node=>{var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:node=>{var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:(parent,name)=>{var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:(parent,name,mode,rdev)=>{var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:node=>{FS.hashRemoveNode(node)},isRoot:node=>{return node===node.parent},isMountpoint:node=>{return!!node.mounted},isFile:mode=>{return(mode&61440)===32768},isDir:mode=>{return(mode&61440)===16384},isLink:mode=>{return(mode&61440)===40960},isChrdev:mode=>{return(mode&61440)===8192},isBlkdev:mode=>{return(mode&61440)===24576},isFIFO:mode=>{return(mode&61440)===4096},isSocket:mode=>{return(mode&49152)===49152},flagsToPermissionString:flag=>{var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:(node,perms)=>{if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup:dir=>{var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:(dir,name)=>{try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:(dir,name,isdir)=>{var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:(node,flags)=>{if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:()=>{for(var fd=0;fd<=FS.MAX_OPEN_FDS;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStream:fd=>FS.streams[fd],createStream:(stream,fd=-1)=>{if(!FS.FSStream){FS.FSStream=function(){this.shared={}};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}},flags:{get:function(){return this.shared.flags},set:function(val){this.shared.flags=val}},position:{get:function(){return this.shared.position},set:function(val){this.shared.position=val}}})}stream=Object.assign(new FS.FSStream,stream);if(fd==-1){fd=FS.nextfd()}stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:fd=>{FS.streams[fd]=null},chrdev_stream_ops:{open:stream=>{var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:()=>{throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice:(dev,ops)=>{FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts:mount=>{var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:(populate,callback)=>{if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`)}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:(type,opts,mountpoint)=>{var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:mountpoint=>{var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup:(parent,name)=>{return parent.node_ops.lookup(parent,name)},mknod:(path,mode,dev)=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:(path,mode)=>{mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:(path,mode)=>{mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:(path,mode)=>{var dirs=path.split("/");var d="";for(var i=0;i{if(typeof dev=="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink:(oldpath,newpath)=>{if(!PATH_FS.resolve(oldpath)){throw new FS.ErrnoError(44)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var newname=PATH.basename(newpath);var errCode=FS.mayCreate(parent,newname);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(63)}return parent.node_ops.symlink(parent,newname,oldpath)},rename:(old_path,new_path)=>{var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node;if(!old_dir||!new_dir)throw new FS.ErrnoError(44);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(75)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH_FS.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(28)}relative=PATH_FS.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(55)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var errCode=FS.mayDelete(old_dir,old_name,isdir);if(errCode){throw new FS.ErrnoError(errCode)}errCode=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(errCode){throw new FS.ErrnoError(errCode)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(63)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(10)}if(new_dir!==old_dir){errCode=FS.nodePermissions(old_dir,"w");if(errCode){throw new FS.ErrnoError(errCode)}}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}},rmdir:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,true);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node)},readdir:path=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(54)}return node.node_ops.readdir(node)},unlink:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,false);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.unlink(parent,name);FS.destroyNode(node)},readlink:path=>{var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(44)}if(!link.node_ops.readlink){throw new FS.ErrnoError(28)}return PATH_FS.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))},stat:(path,dontFollow)=>{var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(44)}if(!node.node_ops.getattr){throw new FS.ErrnoError(63)}return node.node_ops.getattr(node)},lstat:path=>{return FS.stat(path,true)},chmod:(path,mode,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})},lchmod:(path,mode)=>{FS.chmod(path,mode,true)},fchmod:(fd,mode)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}FS.chmod(stream.node,mode)},chown:(path,uid,gid,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{timestamp:Date.now()})},lchown:(path,uid,gid)=>{FS.chown(path,uid,gid,true)},fchown:(fd,uid,gid)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}FS.chown(stream.node,uid,gid)},truncate:(path,len)=>{if(len<0){throw new FS.ErrnoError(28)}var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(31)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(28)}var errCode=FS.nodePermissions(node,"w");if(errCode){throw new FS.ErrnoError(errCode)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})},ftruncate:(fd,len)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.truncate(stream.node,len)},utime:(path,atime,mtime)=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})},open:(path,flags,mode)=>{if(path===""){throw new FS.ErrnoError(44)}flags=typeof flags=="string"?FS_modeStringToFlags(flags):flags;mode=typeof mode=="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path=="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(44)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}if(!created){var errCode=FS.mayOpen(node,flags);if(errCode){throw new FS.ErrnoError(errCode)}}if(flags&512&&!created){FS.truncate(node,0)}flags&=~(128|512|131072);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false});if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1}}return stream},close:stream=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed:stream=>{return stream.fd===null},llseek:(stream,offset,whence)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(70)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(28)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read:(stream,buffer,offset,length,position)=>{if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.read){throw new FS.ErrnoError(28)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write:(stream,buffer,offset,length,position,canOwn)=>{if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.write){throw new FS.ErrnoError(28)}if(stream.seekable&&stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;return bytesWritten},allocate:(stream,offset,length)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(offset<0||length<=0){throw new FS.ErrnoError(28)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(43)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(138)}stream.stream_ops.allocate(stream,offset,length)},mmap:(stream,length,position,prot,flags)=>{if((prot&2)!==0&&(flags&2)===0&&(stream.flags&2097155)!==2){throw new FS.ErrnoError(2)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(2)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(43)}return stream.stream_ops.mmap(stream,length,position,prot,flags)},msync:(stream,buffer,offset,length,mmapFlags)=>{if(!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},munmap:stream=>0,ioctl:(stream,cmd,arg)=>{if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(59)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile:(path,opts={})=>{opts.flags=opts.flags||0;opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error(`Invalid encoding type "${opts.encoding}"`)}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret},writeFile:(path,data,opts={})=>{opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);if(typeof data=="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)},cwd:()=>FS.currentPath,chdir:path=>{var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,"x");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories:()=>{FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices:()=>{FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var randomBuffer=new Uint8Array(1024),randomLeft=0;var randomByte=()=>{if(randomLeft===0){randomLeft=randomFill(randomBuffer).byteLength}return randomBuffer[--randomLeft]};FS.createDevice("/dev","random",randomByte);FS.createDevice("/dev","urandom",randomByte);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories:()=>{FS.mkdir("/proc");var proc_self=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:()=>{var node=FS.createNode(proc_self,"fd",16384|511,73);node.node_ops={lookup:(parent,name)=>{var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>stream.path}};ret.parent=ret;return ret}};return node}},{},"/proc/self/fd")},createStandardStreams:()=>{if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},ensureErrnoError:()=>{if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.name="ErrnoError";this.node=node;this.setErrno=function(errno){this.errno=errno};this.setErrno(errno);this.message="FS error"};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[44].forEach(code=>{FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack=""})},staticInit:()=>{FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS}},init:(input,output,error)=>{FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit:()=>{FS.init.initialized=false;for(var i=0;i{var ret=FS.analyzePath(path,dontResolveLastLink);if(!ret.exists){return null}return ret.object},analyzePath:(path,dontResolveLastLink)=>{try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret},createPath:(parent,path,canRead,canWrite)=>{parent=typeof parent=="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current},createFile:(parent,name,properties,canRead,canWrite)=>{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile:(parent,name,data,canRead,canWrite,canOwn)=>{var path=name;if(parent){parent=typeof parent=="string"?parent:FS.getPath(parent);path=name?PATH.join2(parent,name):parent}var mode=FS_getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data=="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:stream=>{stream.seekable=false},close:stream=>{if(output&&output.buffer&&output.buffer.length){output(10)}},read:(stream,buffer,offset,length,pos)=>{var bytesRead=0;for(var i=0;i{for(var i=0;i{if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;if(typeof XMLHttpRequest!="undefined"){throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")}else if(read_){try{obj.contents=intArrayFromString(read_(obj.url),true);obj.usedBytes=obj.contents.length}catch(e){throw new FS.ErrnoError(29)}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}},createLazyFile:(parent,name,url,canRead,canWrite)=>{function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(from,to)=>{if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}return intArrayFromString(xhr.responseText||"",true)};var lazyArray=this;lazyArray.setDataGetter(chunkNum=>{var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]=="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]=="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){FS.forceLoadFile(node);return fn.apply(null,arguments)}});function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,HEAP8,ptr,length,position);return{ptr:ptr,allocated:true}};node.stream_ops=stream_ops;return node}};function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt:function(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return PATH.join2(dir,path)},doStat:function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-54}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAPU32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;var atime=stat.atime.getTime();var mtime=stat.mtime.getTime();var ctime=stat.ctime.getTime();tempI64=[Math.floor(atime/1e3)>>>0,(tempDouble=Math.floor(atime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+56>>2]=tempI64[0],HEAP32[buf+60>>2]=tempI64[1];HEAPU32[buf+64>>2]=atime%1e3*1e3;tempI64=[Math.floor(mtime/1e3)>>>0,(tempDouble=Math.floor(mtime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+72>>2]=tempI64[0],HEAP32[buf+76>>2]=tempI64[1];HEAPU32[buf+80>>2]=mtime%1e3*1e3;tempI64=[Math.floor(ctime/1e3)>>>0,(tempDouble=Math.floor(ctime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+88>>2]=tempI64[0],HEAP32[buf+92>>2]=tempI64[1];HEAPU32[buf+96>>2]=ctime%1e3*1e3;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+104>>2]=tempI64[0],HEAP32[buf+108>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},getStreamFromFD:function(fd){var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream}};function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.createStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 5:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 6:case 7:return 0;case 16:case 8:return-28;case 9:setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:case 21505:{if(!stream.tty)return-59;return 0}case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-59;return 0}case 21519:{if(!stream.tty)return-59;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;return 0}case 21524:{if(!stream.tty)return-59;return 0}default:return-28}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?SYSCALLS.get():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var nowIsMonotonic=true;function __emscripten_get_now_is_monotonic(){return nowIsMonotonic}function __emscripten_throw_longjmp(){throw Infinity}function _abort(){abort("")}function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(!Browser.mainLoop.running){Browser.mainLoop.running=true}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){var timeUntilNextTick=Math.max(0,Browser.mainLoop.tickStartTime+value-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,timeUntilNextTick)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(typeof setImmediate=="undefined"){var setImmediates=[];var emscriptenMainLoopMessageId="setimmediate";var Browser_setImmediate_messageHandler=event=>{if(event.data===emscriptenMainLoopMessageId||event.data.target===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}};addEventListener("message",Browser_setImmediate_messageHandler,true);setImmediate=function Browser_emulated_setImmediate(func){setImmediates.push(func);if(ENVIRONMENT_IS_WORKER){if(Module["setImmediates"]===undefined)Module["setImmediates"]=[];Module["setImmediates"].push(func);postMessage({target:emscriptenMainLoopMessageId})}else postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){setImmediate(Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}var _emscripten_get_now;if(ENVIRONMENT_IS_NODE){global.performance=require("perf_hooks").performance}_emscripten_get_now=()=>performance.now();function setMainLoop(browserIterationFunc,fps,simulateInfiniteLoop,arg,noSetTiming){assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=browserIterationFunc;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;function checkIsRunning(){if(thisMainLoopId0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}out('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(!checkIsRunning())return;setTimeout(Browser.mainLoop.runner,0);return}if(!checkIsRunning())return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else if(Browser.mainLoop.timingMode==0){Browser.mainLoop.tickStartTime=_emscripten_get_now()}Browser.mainLoop.runIter(browserIterationFunc);if(!checkIsRunning())return;if(typeof SDL=="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0){_emscripten_set_main_loop_timing(0,1e3/fps)}else{_emscripten_set_main_loop_timing(1,1)}Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"unwind"}}function handleException(e){if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)}function _proc_exit(code){EXITSTATUS=code;if(!keepRuntimeAlive()){if(Module["onExit"])Module["onExit"](code);ABORT=true}quit_(code,new ExitStatus(code))}function exitJS(status,implicit){EXITSTATUS=status;_proc_exit(status)}var _exit=exitJS;function maybeExit(){if(!keepRuntimeAlive()){try{_exit(EXITSTATUS)}catch(e){handleException(e)}}}function callUserCallback(func){if(ABORT){return}try{func();maybeExit()}catch(e){handleException(e)}}function safeSetTimeout(func,timeout){return setTimeout(()=>{callUserCallback(func)},timeout)}var Browser={mainLoop:{running:false,scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;setMainLoop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()},updateStatus:function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining{assert(img.complete,"Image "+name+" could not be decoded");var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext("2d");ctx.drawImage(img,0,0);preloadedImages[name]=canvas;URL.revokeObjectURL(url);if(onload)onload(byteArray)};img.onerror=event=>{out("Image "+url+" could not be decoded");if(onerror)onerror()};img.src=url};preloadPlugins.push(imagePlugin);var audioPlugin={};audioPlugin["canHandle"]=function audioPlugin_canHandle(name){return!Module.noAudioDecoding&&name.substr(-4)in{".ogg":1,".wav":1,".mp3":1}};audioPlugin["handle"]=function audioPlugin_handle(byteArray,name,onload,onerror){var done=false;function finish(audio){if(done)return;done=true;preloadedAudios[name]=audio;if(onload)onload(byteArray)}var b=new Blob([byteArray],{type:Browser.getMimetype(name)});var url=URL.createObjectURL(b);var audio=new Audio;audio.addEventListener("canplaythrough",()=>finish(audio),false);audio.onerror=function audio_onerror(event){if(done)return;err("warning: browser could not fully decode audio "+name+", trying slower base64 approach");function encode64(data){var BASE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var PAD="=";var ret="";var leftchar=0;var leftbits=0;for(var i=0;i=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;safeSetTimeout(()=>{finish(audio)},1e4)};preloadPlugins.push(audioPlugin);function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===Module["canvas"]||document["mozPointerLockElement"]===Module["canvas"]||document["webkitPointerLockElement"]===Module["canvas"]||document["msPointerLockElement"]===Module["canvas"]}var canvas=Module["canvas"];if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(()=>{});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(()=>{});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener("pointerlockchange",pointerLockChange,false);document.addEventListener("mozpointerlockchange",pointerLockChange,false);document.addEventListener("webkitpointerlockchange",pointerLockChange,false);document.addEventListener("mspointerlockchange",pointerLockChange,false);if(Module["elementPointerLock"]){canvas.addEventListener("click",ev=>{if(!Browser.pointerLock&&Module["canvas"].requestPointerLock){Module["canvas"].requestPointerLock();ev.preventDefault()}},false)}}},createContext:function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false,majorVersion:2};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}if(typeof GL!="undefined"){contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}}}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx=="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach(callback=>callback());Browser.init()}return ctx},destroyContext:function(canvas,useWebGL,setInModule){},fullscreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullscreen:function(lockPointer,resizeCanvas){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;if(typeof Browser.lockPointer=="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas=="undefined")Browser.resizeCanvas=false;var canvas=Module["canvas"];function fullscreenChange(){Browser.isFullscreen=false;var canvasContainer=canvas.parentNode;if((document["fullscreenElement"]||document["mozFullScreenElement"]||document["msFullscreenElement"]||document["webkitFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.exitFullscreen=Browser.exitFullscreen;if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullscreen=true;if(Browser.resizeCanvas){Browser.setFullscreenCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas){Browser.setWindowedCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}if(Module["onFullScreen"])Module["onFullScreen"](Browser.isFullscreen);if(Module["onFullscreen"])Module["onFullscreen"](Browser.isFullscreen)}if(!Browser.fullscreenHandlersInstalled){Browser.fullscreenHandlersInstalled=true;document.addEventListener("fullscreenchange",fullscreenChange,false);document.addEventListener("mozfullscreenchange",fullscreenChange,false);document.addEventListener("webkitfullscreenchange",fullscreenChange,false);document.addEventListener("MSFullscreenChange",fullscreenChange,false)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullscreen=canvasContainer["requestFullscreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullscreen"]?()=>canvasContainer["webkitRequestFullscreen"](Element["ALLOW_KEYBOARD_INPUT"]):null)||(canvasContainer["webkitRequestFullScreen"]?()=>canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]):null);canvasContainer.requestFullscreen()},exitFullscreen:function(){if(!Browser.isFullscreen){return false}var CFS=document["exitFullscreen"]||document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["msExitFullscreen"]||document["webkitCancelFullScreen"]||(()=>{});CFS.apply(document,[]);return true},nextRAF:0,fakeRequestAnimationFrame:function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)},requestAnimationFrame:function(func){if(typeof requestAnimationFrame=="function"){requestAnimationFrame(func);return}var RAF=Browser.fakeRequestAnimationFrame;RAF(func)},safeSetTimeout:function(func,timeout){return safeSetTimeout(func,timeout)},safeRequestAnimationFrame:function(func){return Browser.requestAnimationFrame(()=>{callUserCallback(func)})},getMimetype:function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]},getUserMedia:function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)},getMovementX:function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0},getMovementY:function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0},getMouseWheelDelta:function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail/3;break;case"mousewheel":delta=event.wheelDelta/120;break;case"wheel":delta=event.deltaY;switch(event.deltaMode){case 0:delta/=100;break;case 1:delta/=3;break;case 2:delta*=80;break;default:throw"unrecognized mouse wheel delta mode: "+event.deltaMode}break;default:throw"unrecognized mouse wheel event: "+event.type}return delta},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}},resizeListeners:[],updateResizeListeners:function(){var canvas=Module["canvas"];Browser.resizeListeners.forEach(listener=>listener(canvas.width,canvas.height))},setCanvasSize:function(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen>>2];flags=flags|8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module["canvas"]);Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen>>2];flags=flags&~8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module["canvas"]);Browser.updateResizeListeners()},updateCanvasDimensions:function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module["forcedAspectRatio"]&&Module["forcedAspectRatio"]>0){if(w/h>2];if(param==12321){var alphaSize=HEAP32[attribList+4>>2];EGL.contextAttributes.alpha=alphaSize>0}else if(param==12325){var depthSize=HEAP32[attribList+4>>2];EGL.contextAttributes.depth=depthSize>0}else if(param==12326){var stencilSize=HEAP32[attribList+4>>2];EGL.contextAttributes.stencil=stencilSize>0}else if(param==12337){var samples=HEAP32[attribList+4>>2];EGL.contextAttributes.antialias=samples>0}else if(param==12338){var samples=HEAP32[attribList+4>>2];EGL.contextAttributes.antialias=samples==1}else if(param==12544){var requestedPriority=HEAP32[attribList+4>>2];EGL.contextAttributes.lowLatency=requestedPriority!=12547}else if(param==12344){break}attribList+=8}}if((!config||!config_size)&&!numConfigs){EGL.setErrorCode(12300);return 0}if(numConfigs){HEAP32[numConfigs>>2]=1}if(config&&config_size>0){HEAP32[config>>2]=62002}EGL.setErrorCode(12288);return 1}};function _eglChooseConfig(display,attrib_list,configs,config_size,numConfigs){return EGL.chooseConfig(display,attrib_list,configs,config_size,numConfigs)}function webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(ctx){return!!(ctx.dibvbi=ctx.getExtension("WEBGL_draw_instanced_base_vertex_base_instance"))}function webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(ctx){return!!(ctx.mdibvbi=ctx.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance"))}function webgl_enable_WEBGL_multi_draw(ctx){return!!(ctx.multiDrawWebgl=ctx.getExtension("WEBGL_multi_draw"))}var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],stringCache:{},stringiCache:{},unpackAlignment:4,recordError:function recordError(errorCode){if(!GL.lastError){GL.lastError=errorCode}},getNewId:function(table){var ret=GL.counter++;for(var i=table.length;i>2]:-1;source+=UTF8ToString(HEAP32[string+i*4>>2],len<0?undefined:len)}return source},createContext:function(canvas,webGLContextAttributes){if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;function fixedGetContext(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver=="webgl"==gl instanceof WebGLRenderingContext?gl:null}canvas.getContext=fixedGetContext}var ctx=canvas.getContext("webgl2",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:function(ctx,webGLContextAttributes){var handle=GL.getNewId(GL.contexts);var context={handle:handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault=="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:function(contextHandle){GL.currentContext=GL.contexts[contextHandle];Module.ctx=GLctx=GL.currentContext&&GL.currentContext.GLctx;return!(contextHandle&&!GLctx)},getContext:function(contextHandle){return GL.contexts[contextHandle]},deleteContext:function(contextHandle){if(GL.currentContext===GL.contexts[contextHandle])GL.currentContext=null;if(typeof JSEvents=="object")JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas);if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas)GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined;GL.contexts[contextHandle]=null},initExtensions:function(context){if(!context)context=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(GLctx);webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(GLctx);if(context.version>=2){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query_webgl2")}if(context.version<2||!GLctx.disjointTimerQueryExt){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query")}webgl_enable_WEBGL_multi_draw(GLctx);var exts=GLctx.getSupportedExtensions()||[];exts.forEach(function(ext){if(!ext.includes("lose_context")&&!ext.includes("debug")){GLctx.getExtension(ext)}})}};function _eglCreateContext(display,config,hmm,contextAttribs){if(display!=62e3){EGL.setErrorCode(12296);return 0}var glesContextVersion=1;for(;;){var param=HEAP32[contextAttribs>>2];if(param==12440){glesContextVersion=HEAP32[contextAttribs+4>>2]}else if(param==12344){break}else{EGL.setErrorCode(12292);return 0}contextAttribs+=8}if(glesContextVersion<2||glesContextVersion>3){EGL.setErrorCode(12293);return 0}EGL.contextAttributes.majorVersion=glesContextVersion-1;EGL.contextAttributes.minorVersion=0;EGL.context=GL.createContext(Module["canvas"],EGL.contextAttributes);if(EGL.context!=0){EGL.setErrorCode(12288);GL.makeContextCurrent(EGL.context);Module.useWebGL=true;Browser.moduleContextCreatedCallbacks.forEach(function(callback){callback()});GL.makeContextCurrent(null);return 62004}else{EGL.setErrorCode(12297);return 0}}function _eglCreateWindowSurface(display,config,win,attrib_list){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(config!=62002){EGL.setErrorCode(12293);return 0}EGL.setErrorCode(12288);return 62006}function _eglDestroyContext(display,context){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(context!=62004){EGL.setErrorCode(12294);return 0}GL.deleteContext(EGL.context);EGL.setErrorCode(12288);if(EGL.currentContext==context){EGL.currentContext=0}return 1}function _eglDestroySurface(display,surface){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(surface!=62006){EGL.setErrorCode(12301);return 1}if(EGL.currentReadSurface==surface){EGL.currentReadSurface=0}if(EGL.currentDrawSurface==surface){EGL.currentDrawSurface=0}EGL.setErrorCode(12288);return 1}function _eglGetDisplay(nativeDisplayType){EGL.setErrorCode(12288);return 62e3}function _eglInitialize(display,majorVersion,minorVersion){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(majorVersion){HEAP32[majorVersion>>2]=1}if(minorVersion){HEAP32[minorVersion>>2]=4}EGL.defaultDisplayInitialized=true;EGL.setErrorCode(12288);return 1}function _eglMakeCurrent(display,draw,read,context){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(context!=0&&context!=62004){EGL.setErrorCode(12294);return 0}if(read!=0&&read!=62006||draw!=0&&draw!=62006){EGL.setErrorCode(12301);return 0}GL.makeContextCurrent(context?EGL.context:null);EGL.currentContext=context;EGL.currentDrawSurface=draw;EGL.currentReadSurface=read;EGL.setErrorCode(12288);return 1}function _eglSwapBuffers(dpy,surface){if(!EGL.defaultDisplayInitialized){EGL.setErrorCode(12289)}else if(!Module.ctx){EGL.setErrorCode(12290)}else if(Module.ctx.isContextLost()){EGL.setErrorCode(12302)}else{EGL.setErrorCode(12288);return 1}return 0}function _eglSwapInterval(display,interval){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(interval==0)_emscripten_set_main_loop_timing(0,0);else _emscripten_set_main_loop_timing(1,interval);EGL.setErrorCode(12288);return 1}function _eglTerminate(display){if(display!=62e3){EGL.setErrorCode(12296);return 0}EGL.currentContext=0;EGL.currentReadSurface=0;EGL.currentDrawSurface=0;EGL.defaultDisplayInitialized=false;EGL.setErrorCode(12288);return 1}var readEmAsmArgsArray=[];function readEmAsmArgs(sigPtr,buf){readEmAsmArgsArray.length=0;var ch;buf>>=2;while(ch=HEAPU8[sigPtr++]){buf+=ch!=105&buf;readEmAsmArgsArray.push(ch==105?HEAP32[buf]:HEAPF64[buf++>>1]);++buf}return readEmAsmArgsArray}function runEmAsmFunction(code,sigPtr,argbuf){var args=readEmAsmArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}function _emscripten_asm_const_int(code,sigPtr,argbuf){return runEmAsmFunction(code,sigPtr,argbuf)}function _emscripten_cancel_main_loop(){Browser.mainLoop.pause();Browser.mainLoop.func=null}function _emscripten_date_now(){return Date.now()}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function getHeapMax(){return 2147483648}function emscripten_realloc_buffer(size){var b=wasmMemory.buffer;try{wasmMemory.grow(size-b.byteLength+65535>>>16);updateMemoryViews();return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var JSEvents={inEventHandler:0,removeAllEventListeners:function(){for(var i=JSEvents.eventHandlers.length-1;i>=0;--i){JSEvents._removeHandler(i)}JSEvents.eventHandlers=[];JSEvents.deferredCalls=[]},registerRemoveEventListeners:function(){if(!JSEvents.removeEventListenersRegistered){__ATEXIT__.push(JSEvents.removeAllEventListeners);JSEvents.removeEventListenersRegistered=true}},deferredCalls:[],deferCall:function(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var i in JSEvents.deferredCalls){var call=JSEvents.deferredCalls[i];if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction:targetFunction,precedence:precedence,argsList:argsList});JSEvents.deferredCalls.sort(function(x,y){return x.precedence2?UTF8ToString(cString):cString}var specialHTMLTargets=[0,typeof document!="undefined"?document:0,typeof window!="undefined"?window:0];function findEventTarget(target){target=maybeCStringToJsString(target);var domElement=specialHTMLTargets[target]||(typeof document!="undefined"?document.querySelector(target):undefined);return domElement}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function registerFocusEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.focusEvent)JSEvents.focusEvent=_malloc(256);var focusEventHandlerFunc=function(e=event){var nodeName=JSEvents.getNodeNameForTarget(e.target);var id=e.target.id?e.target.id:"";var focusEvent=JSEvents.focusEvent;stringToUTF8(nodeName,focusEvent+0,128);stringToUTF8(id,focusEvent+128,128);if(getWasmTableEntry(callbackfunc)(eventTypeId,focusEvent,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:focusEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_blur_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerFocusEventCallback(target,userData,useCapture,callbackfunc,12,"blur",targetThread)}function findCanvasEventTarget(target){return findEventTarget(target)}function _emscripten_set_canvas_element_size(target,width,height){var canvas=findCanvasEventTarget(target);if(!canvas)return-4;canvas.width=width;canvas.height=height;return 0}function _emscripten_set_focus_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerFocusEventCallback(target,userData,useCapture,callbackfunc,13,"focus",targetThread)}function registerKeyEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.keyEvent)JSEvents.keyEvent=_malloc(176);var keyEventHandlerFunc=function(e){var keyEventData=JSEvents.keyEvent;HEAPF64[keyEventData>>3]=e.timeStamp;var idx=keyEventData>>2;HEAP32[idx+2]=e.location;HEAP32[idx+3]=e.ctrlKey;HEAP32[idx+4]=e.shiftKey;HEAP32[idx+5]=e.altKey;HEAP32[idx+6]=e.metaKey;HEAP32[idx+7]=e.repeat;HEAP32[idx+8]=e.charCode;HEAP32[idx+9]=e.keyCode;HEAP32[idx+10]=e.which;stringToUTF8(e.key||"",keyEventData+44,32);stringToUTF8(e.code||"",keyEventData+76,32);stringToUTF8(e.char||"",keyEventData+108,32);stringToUTF8(e.locale||"",keyEventData+140,32);if(getWasmTableEntry(callbackfunc)(eventTypeId,keyEventData,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),allowsDeferredCalls:true,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:keyEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_keydown_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerKeyEventCallback(target,userData,useCapture,callbackfunc,2,"keydown",targetThread)}function _emscripten_set_keyup_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerKeyEventCallback(target,userData,useCapture,callbackfunc,3,"keyup",targetThread)}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop){var browserIterationFunc=getWasmTableEntry(func);setMainLoop(browserIterationFunc,fps,simulateInfiniteLoop)}function getBoundingClientRect(e){return specialHTMLTargets.indexOf(e)<0?e.getBoundingClientRect():{"left":0,"top":0}}function fillMouseEventData(eventStruct,e,target){HEAPF64[eventStruct>>3]=e.timeStamp;var idx=eventStruct>>2;HEAP32[idx+2]=e.screenX;HEAP32[idx+3]=e.screenY;HEAP32[idx+4]=e.clientX;HEAP32[idx+5]=e.clientY;HEAP32[idx+6]=e.ctrlKey;HEAP32[idx+7]=e.shiftKey;HEAP32[idx+8]=e.altKey;HEAP32[idx+9]=e.metaKey;HEAP16[idx*2+20]=e.button;HEAP16[idx*2+21]=e.buttons;HEAP32[idx+11]=e["movementX"];HEAP32[idx+12]=e["movementY"];var rect=getBoundingClientRect(target);HEAP32[idx+13]=e.clientX-rect.left;HEAP32[idx+14]=e.clientY-rect.top}function registerMouseEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.mouseEvent)JSEvents.mouseEvent=_malloc(72);target=findEventTarget(target);var mouseEventHandlerFunc=function(e=event){fillMouseEventData(JSEvents.mouseEvent,e,target);if(getWasmTableEntry(callbackfunc)(eventTypeId,JSEvents.mouseEvent,userData))e.preventDefault()};var eventHandler={target:target,allowsDeferredCalls:eventTypeString!="mousemove"&&eventTypeString!="mouseenter"&&eventTypeString!="mouseleave",eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:mouseEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_mousedown_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerMouseEventCallback(target,userData,useCapture,callbackfunc,5,"mousedown",targetThread)}function _emscripten_set_mousemove_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerMouseEventCallback(target,userData,useCapture,callbackfunc,8,"mousemove",targetThread)}function _emscripten_set_mouseup_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerMouseEventCallback(target,userData,useCapture,callbackfunc,6,"mouseup",targetThread)}function registerTouchEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.touchEvent)JSEvents.touchEvent=_malloc(1696);target=findEventTarget(target);var touchEventHandlerFunc=function(e){var t,touches={},et=e.touches;for(var i=0;i>3]=e.timeStamp;var idx=touchEvent>>2;HEAP32[idx+3]=e.ctrlKey;HEAP32[idx+4]=e.shiftKey;HEAP32[idx+5]=e.altKey;HEAP32[idx+6]=e.metaKey;idx+=7;var targetRect=getBoundingClientRect(target);var numTouches=0;for(var i in touches){t=touches[i];HEAP32[idx+0]=t.identifier;HEAP32[idx+1]=t.screenX;HEAP32[idx+2]=t.screenY;HEAP32[idx+3]=t.clientX;HEAP32[idx+4]=t.clientY;HEAP32[idx+5]=t.pageX;HEAP32[idx+6]=t.pageY;HEAP32[idx+7]=t.isChanged;HEAP32[idx+8]=t.onTarget;HEAP32[idx+9]=t.clientX-targetRect.left;HEAP32[idx+10]=t.clientY-targetRect.top;idx+=13;if(++numTouches>31){break}}HEAP32[touchEvent+8>>2]=numTouches;if(getWasmTableEntry(callbackfunc)(eventTypeId,touchEvent,userData))e.preventDefault()};var eventHandler={target:target,allowsDeferredCalls:eventTypeString=="touchstart"||eventTypeString=="touchend",eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:touchEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_touchend_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerTouchEventCallback(target,userData,useCapture,callbackfunc,23,"touchend",targetThread)}function _emscripten_set_touchmove_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerTouchEventCallback(target,userData,useCapture,callbackfunc,24,"touchmove",targetThread)}function _emscripten_set_touchstart_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerTouchEventCallback(target,userData,useCapture,callbackfunc,22,"touchstart",targetThread)}function registerWheelEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.wheelEvent)JSEvents.wheelEvent=_malloc(104);var wheelHandlerFunc=function(e=event){var wheelEvent=JSEvents.wheelEvent;fillMouseEventData(wheelEvent,e,target);HEAPF64[wheelEvent+72>>3]=e["deltaX"];HEAPF64[wheelEvent+80>>3]=e["deltaY"];HEAPF64[wheelEvent+88>>3]=e["deltaZ"];HEAP32[wheelEvent+96>>2]=e["deltaMode"];if(getWasmTableEntry(callbackfunc)(eventTypeId,wheelEvent,userData))e.preventDefault()};var eventHandler={target:target,allowsDeferredCalls:true,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:wheelHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_wheel_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){target=findEventTarget(target);if(!target)return-4;if(typeof target.onwheel!="undefined"){return registerWheelEventCallback(target,userData,useCapture,callbackfunc,9,"wheel",targetThread)}else{return-1}}function _emscripten_set_window_title(title){setWindowTitle(UTF8ToString(title))}var ENV={};function getExecutableName(){return thisProgram||"./this.program"}function getEnvStrings(){if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":lang,"_":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings}function stringToAscii(str,buffer){for(var i=0;i>0]=str.charCodeAt(i)}HEAP8[buffer>>0]=0}function _environ_get(__environ,environ_buf){var bufSize=0;getEnvStrings().forEach(function(string,i){var ptr=environ_buf+bufSize;HEAPU32[__environ+i*4>>2]=ptr;stringToAscii(string,ptr);bufSize+=string.length+1});return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(function(string){bufSize+=string.length+1});HEAPU32[penviron_buf_size>>2]=bufSize;return 0}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function doReadv(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function convertI32PairToI53Checked(lo,hi){return hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var offset=convertI32PairToI53Checked(offset_low,offset_high);if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function doWritev(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(typeof offset!=="undefined"){offset+=curr}}return ret}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doWritev(stream,iov,iovcnt);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _glAttachShader(program,shader){GLctx.attachShader(GL.programs[program],GL.shaders[shader])}function _glBindBuffer(target,buffer){if(target==35051){GLctx.currentPixelPackBufferBinding=buffer}else if(target==35052){GLctx.currentPixelUnpackBufferBinding=buffer}GLctx.bindBuffer(target,GL.buffers[buffer])}function _glBindTexture(target,texture){GLctx.bindTexture(target,GL.textures[texture])}function _glBindVertexArray(vao){GLctx.bindVertexArray(GL.vaos[vao])}var _glBindVertexArrayOES=_glBindVertexArray;function _glBlendFunc(x0,x1){GLctx.blendFunc(x0,x1)}function _glBufferData(target,size,data,usage){if(true){if(data&&size){GLctx.bufferData(target,HEAPU8,usage,data,size)}else{GLctx.bufferData(target,size,usage)}}else{GLctx.bufferData(target,data?HEAPU8.subarray(data,data+size):size,usage)}}function _glClear(x0){GLctx.clear(x0)}function _glClearColor(x0,x1,x2,x3){GLctx.clearColor(x0,x1,x2,x3)}function _glCompileShader(shader){GLctx.compileShader(GL.shaders[shader])}function _glCreateProgram(){var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;program.maxUniformLength=program.maxAttributeLength=program.maxUniformBlockNameLength=0;program.uniformIdCounter=1;GL.programs[id]=program;return id}function _glCreateShader(shaderType){var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id}function _glDeleteProgram(id){if(!id)return;var program=GL.programs[id];if(!program){GL.recordError(1281);return}GLctx.deleteProgram(program);program.name=0;GL.programs[id]=null}function _glDeleteShader(id){if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null}function _glDeleteTextures(n,textures){for(var i=0;i>2];var texture=GL.textures[id];if(!texture)continue;GLctx.deleteTexture(texture);texture.name=0;GL.textures[id]=null}}function _glDrawArrays(mode,first,count){GLctx.drawArrays(mode,first,count)}function _glEnable(x0){GLctx.enable(x0)}function _glEnableVertexAttribArray(index){GLctx.enableVertexAttribArray(index)}function __glGenObject(n,buffers,createFunction,objectTable){for(var i=0;i>2]=id}}function _glGenBuffers(n,buffers){__glGenObject(n,buffers,"createBuffer",GL.buffers)}function _glGenTextures(n,textures){__glGenObject(n,textures,"createTexture",GL.textures)}function _glGenVertexArrays(n,arrays){__glGenObject(n,arrays,"createVertexArray",GL.vaos)}var _glGenVertexArraysOES=_glGenVertexArrays;function _glGetShaderInfoLog(shader,maxLength,length,infoLog){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull}function _glLinkProgram(program){program=GL.programs[program];GLctx.linkProgram(program);program.uniformLocsById=0;program.uniformSizeAndIdsByName={}}function computeUnpackAlignedImageSize(width,height,sizePerPixel,alignment){function roundedToNextMultipleOf(x,y){return x+y-1&-y}var plainRowSize=width*sizePerPixel;var alignedRowSize=roundedToNextMultipleOf(plainRowSize,alignment);return height*alignedRowSize}function colorChannelsInGlTextureFormat(format){var colorChannels={5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4};return colorChannels[format-6402]||1}function heapObjectForWebGLType(type){type-=5120;if(type==0)return HEAP8;if(type==1)return HEAPU8;if(type==2)return HEAP16;if(type==4)return HEAP32;if(type==6)return HEAPF32;if(type==5||type==28922||type==28520||type==30779||type==30782)return HEAPU32;return HEAPU16}function heapAccessShiftForWebGLHeap(heap){return 31-Math.clz32(heap.BYTES_PER_ELEMENT)}function emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat){var heap=heapObjectForWebGLType(type);var shift=heapAccessShiftForWebGLHeap(heap);var byteSize=1<>shift,pixels+bytes>>shift)}function _glReadPixels(x,y,width,height,format,type,pixels){if(true){if(GLctx.currentPixelPackBufferBinding){GLctx.readPixels(x,y,width,height,format,type,pixels)}else{var heap=heapObjectForWebGLType(type);GLctx.readPixels(x,y,width,height,format,type,heap,pixels>>heapAccessShiftForWebGLHeap(heap))}return}var pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,format);if(!pixelData){GL.recordError(1280);return}GLctx.readPixels(x,y,width,height,format,type,pixelData)}function _glShaderSource(shader,count,string,length){var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)}function _glTexImage2D(target,level,internalFormat,width,height,border,format,type,pixels){if(true){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels)}else if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,heap,pixels>>heapAccessShiftForWebGLHeap(heap))}else{GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,null)}return}GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat):null)}function _glTexParameteri(x0,x1,x2){GLctx.texParameteri(x0,x1,x2)}function _glUseProgram(program){program=GL.programs[program];GLctx.useProgram(program);GLctx.currentProgram=program}function _glVertexAttribPointer(index,size,type,normalized,stride,ptr){GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)}function _glViewport(x0,x1,x2,x3){GLctx.viewport(x0,x1,x2,x3)}function isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]){}return sum}var MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value=="number"?value.toString():value||"";while(str.length0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}return thisDate.getFullYear()}return thisDate.getFullYear()-1}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":function(date){return leadingNulls(date.tm_mday+arraySum(isLeapYear(date.tm_year+1900)?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}return"PM"},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"\t"},"%u":function(date){return date.tm_wday||7},"%U":function(date){var days=date.tm_yday+7-date.tm_wday;return leadingNulls(Math.floor(days/7),2)},"%V":function(date){var val=Math.floor((date.tm_yday+7-(date.tm_wday+6)%7)/7);if((date.tm_wday+371-date.tm_yday-2)%7<=2){val++}if(!val){val=52;var dec31=(date.tm_wday+7-date.tm_yday-1)%7;if(dec31==4||dec31==5&&isLeapYear(date.tm_year%400-1)){val++}}else if(val==53){var jan1=(date.tm_wday+371-date.tm_yday)%7;if(jan1!=4&&(jan1!=3||!isLeapYear(date.tm_year)))val=1}return leadingNulls(val,2)},"%w":function(date){return date.tm_wday},"%W":function(date){var days=date.tm_yday+7-(date.tm_wday+6)%7;return leadingNulls(Math.floor(days/7),2)},"%y":function(date){return(date.tm_year+1900).toString().substring(2)},"%Y":function(date){return date.tm_year+1900},"%z":function(date){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":function(date){return date.tm_zone},"%%":function(){return"%"}};pattern=pattern.replace(/%%/g,"\0\0");for(var rule in EXPANSION_RULES_2){if(pattern.includes(rule)){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}pattern=pattern.replace(/\0\0/g,"%");var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm,loc){return _strftime(s,maxsize,format,tm)}var FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};var readMode=292|73;var writeMode=146;Object.defineProperties(FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}});FS.FSNode=FSNode;FS.createPreloadedFile=FS_createPreloadedFile;FS.staticInit();Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_unlink"]=FS.unlink;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createDevice"]=FS.createDevice;Module["requestFullscreen"]=function Module_requestFullscreen(lockPointer,resizeCanvas){Browser.requestFullscreen(lockPointer,resizeCanvas)};Module["requestAnimationFrame"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module["setCanvasSize"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module["pauseMainLoop"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module["resumeMainLoop"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module["getUserMedia"]=function Module_getUserMedia(){Browser.getUserMedia()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};var preloadedImages={};var preloadedAudios={};var GLctx;var decodeBase64=typeof atob=="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(shouldRunNow)callMain();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"])shouldRunNow=false;run(); +var Module=typeof Module!="undefined"?Module:{};if(!Module.expectedDataFileDownloads){Module.expectedDataFileDownloads=0}Module.expectedDataFileDownloads++;(function(){if(Module["ENVIRONMENT_IS_PTHREAD"]||Module["$ww"])return;var loadPackage=function(metadata){var PACKAGE_PATH="";if(typeof window==="object"){PACKAGE_PATH=window["encodeURIComponent"](window.location.pathname.toString().substring(0,window.location.pathname.toString().lastIndexOf("/"))+"/")}else if(typeof process==="undefined"&&typeof location!=="undefined"){PACKAGE_PATH=encodeURIComponent(location.pathname.toString().substring(0,location.pathname.toString().lastIndexOf("/"))+"/")}var PACKAGE_NAME="pge.data";var REMOTE_PACKAGE_BASE="pge.data";if(typeof Module["locateFilePackage"]==="function"&&!Module["locateFile"]){Module["locateFile"]=Module["locateFilePackage"];err("warning: you defined Module.locateFilePackage, that has been renamed to Module.locateFile (using your locateFilePackage for now)")}var REMOTE_PACKAGE_NAME=Module["locateFile"]?Module["locateFile"](REMOTE_PACKAGE_BASE,""):REMOTE_PACKAGE_BASE;var REMOTE_PACKAGE_SIZE=metadata["remote_package_size"];function fetchRemotePackage(packageName,packageSize,callback,errback){if(typeof process==="object"&&typeof process.versions==="object"&&typeof process.versions.node==="string"){require("fs").readFile(packageName,function(err,contents){if(err){errback(err)}else{callback(contents.buffer)}});return}var xhr=new XMLHttpRequest;xhr.open("GET",packageName,true);xhr.responseType="arraybuffer";xhr.onprogress=function(event){var url=packageName;var size=packageSize;if(event.total)size=event.total;if(event.loaded){if(!xhr.addedTotal){xhr.addedTotal=true;if(!Module.dataFileDownloads)Module.dataFileDownloads={};Module.dataFileDownloads[url]={loaded:event.loaded,total:size}}else{Module.dataFileDownloads[url].loaded=event.loaded}var total=0;var loaded=0;var num=0;for(var download in Module.dataFileDownloads){var data=Module.dataFileDownloads[download];total+=data.total;loaded+=data.loaded;num++}total=Math.ceil(total*Module.expectedDataFileDownloads/num);if(Module["setStatus"])Module["setStatus"](`Downloading data... (${loaded}/${total})`)}else if(!Module.dataFileDownloads){if(Module["setStatus"])Module["setStatus"]("Downloading data...")}};xhr.onerror=function(event){throw new Error("NetworkError for: "+packageName)};xhr.onload=function(event){if(xhr.status==200||xhr.status==304||xhr.status==206||xhr.status==0&&xhr.response){var packageData=xhr.response;callback(packageData)}else{throw new Error(xhr.statusText+" : "+xhr.responseURL)}};xhr.send(null)}function handleError(error){console.error("package error:",error)}var fetchedCallback=null;var fetched=Module["getPreloadedPackage"]?Module["getPreloadedPackage"](REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE):null;if(!fetched)fetchRemotePackage(REMOTE_PACKAGE_NAME,REMOTE_PACKAGE_SIZE,function(data){if(fetchedCallback){fetchedCallback(data);fetchedCallback=null}else{fetched=data}},handleError);function runWithFS(){function assert(check,msg){if(!check)throw msg+(new Error).stack}Module["FS_createPath"]("/","assets",true,true);function DataRequest(start,end,audio){this.start=start;this.end=end;this.audio=audio}DataRequest.prototype={requests:{},open:function(mode,name){this.name=name;this.requests[name]=this;Module["addRunDependency"](`fp ${this.name}`)},send:function(){},onload:function(){var byteArray=this.byteArray.subarray(this.start,this.end);this.finish(byteArray)},finish:function(byteArray){var that=this;Module["FS_createDataFile"](this.name,null,byteArray,true,true,true);Module["removeRunDependency"](`fp ${that.name}`);this.requests[this.name]=null}};var files=metadata["files"];for(var i=0;i{throw toThrow};var ENVIRONMENT_IS_WEB=typeof window=="object";var ENVIRONMENT_IS_WORKER=typeof importScripts=="function";var ENVIRONMENT_IS_NODE=typeof process=="object"&&typeof process.versions=="object"&&typeof process.versions.node=="string";var scriptDirectory="";function locateFile(path){if(Module["locateFile"]){return Module["locateFile"](path,scriptDirectory)}return scriptDirectory+path}var read_,readAsync,readBinary,setWindowTitle;if(ENVIRONMENT_IS_NODE){var fs=require("fs");var nodePath=require("path");if(ENVIRONMENT_IS_WORKER){scriptDirectory=nodePath.dirname(scriptDirectory)+"/"}else{scriptDirectory=__dirname+"/"}read_=(filename,binary)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);return fs.readFileSync(filename,binary?undefined:"utf8")};readBinary=filename=>{var ret=read_(filename,true);if(!ret.buffer){ret=new Uint8Array(ret)}return ret};readAsync=(filename,onload,onerror,binary=true)=>{filename=isFileURI(filename)?new URL(filename):nodePath.normalize(filename);fs.readFile(filename,binary?undefined:"utf8",(err,data)=>{if(err)onerror(err);else onload(binary?data.buffer:data)})};if(!Module["thisProgram"]&&process.argv.length>1){thisProgram=process.argv[1].replace(/\\/g,"/")}arguments_=process.argv.slice(2);if(typeof module!="undefined"){module["exports"]=Module}process.on("uncaughtException",ex=>{if(ex!=="unwind"&&!(ex instanceof ExitStatus)&&!(ex.context instanceof ExitStatus)){throw ex}});var nodeMajor=process.versions.node.split(".")[0];if(nodeMajor<15){process.on("unhandledRejection",reason=>{throw reason})}quit_=(status,toThrow)=>{process.exitCode=status;throw toThrow};Module["inspect"]=()=>"[Emscripten Module object]"}else if(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER){if(ENVIRONMENT_IS_WORKER){scriptDirectory=self.location.href}else if(typeof document!="undefined"&&document.currentScript){scriptDirectory=document.currentScript.src}if(scriptDirectory.indexOf("blob:")!==0){scriptDirectory=scriptDirectory.substr(0,scriptDirectory.replace(/[?#].*/,"").lastIndexOf("/")+1)}else{scriptDirectory=""}{read_=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.send(null);return xhr.responseText};if(ENVIRONMENT_IS_WORKER){readBinary=url=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,false);xhr.responseType="arraybuffer";xhr.send(null);return new Uint8Array(xhr.response)}}readAsync=(url,onload,onerror)=>{var xhr=new XMLHttpRequest;xhr.open("GET",url,true);xhr.responseType="arraybuffer";xhr.onload=()=>{if(xhr.status==200||xhr.status==0&&xhr.response){onload(xhr.response);return}onerror()};xhr.onerror=onerror;xhr.send(null)}}setWindowTitle=title=>document.title=title}else{}var out=Module["print"]||console.log.bind(console);var err=Module["printErr"]||console.error.bind(console);Object.assign(Module,moduleOverrides);moduleOverrides=null;if(Module["arguments"])arguments_=Module["arguments"];if(Module["thisProgram"])thisProgram=Module["thisProgram"];if(Module["quit"])quit_=Module["quit"];var wasmBinary;if(Module["wasmBinary"])wasmBinary=Module["wasmBinary"];var noExitRuntime=Module["noExitRuntime"]||true;if(typeof WebAssembly!="object"){abort("no native wasm support detected")}var wasmMemory;var ABORT=false;var EXITSTATUS;function assert(condition,text){if(!condition){abort(text)}}var HEAP8,HEAPU8,HEAP16,HEAPU16,HEAP32,HEAPU32,HEAPF32,HEAPF64;function updateMemoryViews(){var b=wasmMemory.buffer;Module["HEAP8"]=HEAP8=new Int8Array(b);Module["HEAP16"]=HEAP16=new Int16Array(b);Module["HEAP32"]=HEAP32=new Int32Array(b);Module["HEAPU8"]=HEAPU8=new Uint8Array(b);Module["HEAPU16"]=HEAPU16=new Uint16Array(b);Module["HEAPU32"]=HEAPU32=new Uint32Array(b);Module["HEAPF32"]=HEAPF32=new Float32Array(b);Module["HEAPF64"]=HEAPF64=new Float64Array(b)}var wasmTable;var __ATPRERUN__=[];var __ATINIT__=[];var __ATMAIN__=[];var __ATEXIT__=[];var __ATPOSTRUN__=[];var runtimeInitialized=false;var runtimeKeepaliveCounter=0;function keepRuntimeAlive(){return noExitRuntime||runtimeKeepaliveCounter>0}function preRun(){if(Module["preRun"]){if(typeof Module["preRun"]=="function")Module["preRun"]=[Module["preRun"]];while(Module["preRun"].length){addOnPreRun(Module["preRun"].shift())}}callRuntimeCallbacks(__ATPRERUN__)}function initRuntime(){runtimeInitialized=true;if(!Module["noFSInit"]&&!FS.init.initialized)FS.init();FS.ignorePermissions=false;TTY.init();callRuntimeCallbacks(__ATINIT__)}function preMain(){callRuntimeCallbacks(__ATMAIN__)}function postRun(){if(Module["postRun"]){if(typeof Module["postRun"]=="function")Module["postRun"]=[Module["postRun"]];while(Module["postRun"].length){addOnPostRun(Module["postRun"].shift())}}callRuntimeCallbacks(__ATPOSTRUN__)}function addOnPreRun(cb){__ATPRERUN__.unshift(cb)}function addOnInit(cb){__ATINIT__.unshift(cb)}function addOnPostRun(cb){__ATPOSTRUN__.unshift(cb)}var runDependencies=0;var runDependencyWatcher=null;var dependenciesFulfilled=null;function getUniqueRunDependency(id){return id}function addRunDependency(id){runDependencies++;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}}function removeRunDependency(id){runDependencies--;if(Module["monitorRunDependencies"]){Module["monitorRunDependencies"](runDependencies)}if(runDependencies==0){if(runDependencyWatcher!==null){clearInterval(runDependencyWatcher);runDependencyWatcher=null}if(dependenciesFulfilled){var callback=dependenciesFulfilled;dependenciesFulfilled=null;callback()}}}function abort(what){if(Module["onAbort"]){Module["onAbort"](what)}what="Aborted("+what+")";err(what);ABORT=true;EXITSTATUS=1;what+=". Build with -sASSERTIONS for more info.";var e=new WebAssembly.RuntimeError(what);throw e}var dataURIPrefix="data:application/octet-stream;base64,";function isDataURI(filename){return filename.startsWith(dataURIPrefix)}function isFileURI(filename){return filename.startsWith("file://")}var wasmBinaryFile;wasmBinaryFile="pge.wasm";if(!isDataURI(wasmBinaryFile)){wasmBinaryFile=locateFile(wasmBinaryFile)}function getBinary(file){try{if(file==wasmBinaryFile&&wasmBinary){return new Uint8Array(wasmBinary)}if(readBinary){return readBinary(file)}throw"both async and sync fetching of the wasm failed"}catch(err){abort(err)}}function getBinaryPromise(binaryFile){if(!wasmBinary&&(ENVIRONMENT_IS_WEB||ENVIRONMENT_IS_WORKER)){if(typeof fetch=="function"&&!isFileURI(binaryFile)){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{if(!response["ok"]){throw"failed to load wasm binary file at '"+binaryFile+"'"}return response["arrayBuffer"]()}).catch(()=>getBinary(binaryFile))}else{if(readAsync){return new Promise((resolve,reject)=>{readAsync(binaryFile,response=>resolve(new Uint8Array(response)),reject)})}}}return Promise.resolve().then(()=>getBinary(binaryFile))}function instantiateArrayBuffer(binaryFile,imports,receiver){return getBinaryPromise(binaryFile).then(binary=>{return WebAssembly.instantiate(binary,imports)}).then(instance=>{return instance}).then(receiver,reason=>{err("failed to asynchronously prepare wasm: "+reason);abort(reason)})}function instantiateAsync(binary,binaryFile,imports,callback){if(!binary&&typeof WebAssembly.instantiateStreaming=="function"&&!isDataURI(binaryFile)&&!isFileURI(binaryFile)&&!ENVIRONMENT_IS_NODE&&typeof fetch=="function"){return fetch(binaryFile,{credentials:"same-origin"}).then(response=>{var result=WebAssembly.instantiateStreaming(response,imports);return result.then(callback,function(reason){err("wasm streaming compile failed: "+reason);err("falling back to ArrayBuffer instantiation");return instantiateArrayBuffer(binaryFile,imports,callback)})})}else{return instantiateArrayBuffer(binaryFile,imports,callback)}}function createWasm(){var info={"env":wasmImports,"wasi_snapshot_preview1":wasmImports};function receiveInstance(instance,module){var exports=instance.exports;Module["asm"]=exports;wasmMemory=Module["asm"]["memory"];updateMemoryViews();wasmTable=Module["asm"]["__indirect_function_table"];addOnInit(Module["asm"]["__wasm_call_ctors"]);removeRunDependency("wasm-instantiate");return exports}addRunDependency("wasm-instantiate");function receiveInstantiationResult(result){receiveInstance(result["instance"])}if(Module["instantiateWasm"]){try{return Module["instantiateWasm"](info,receiveInstance)}catch(e){err("Module.instantiateWasm callback failed with error: "+e);return false}}instantiateAsync(wasmBinary,wasmBinaryFile,info,receiveInstantiationResult);return{}}var tempDouble;var tempI64;var ASM_CONSTS={44460:()=>{window.onunload=Module._olc_OnPageUnload},44504:($0,$1)=>{Module.olc_AspectRatio=$0/$1;Module.olc_AssumeDefaultShells=document.querySelectorAll(".emscripten").length>=3?true:false;var olc_ResizeHandler=function(){let isFullscreen=document.fullscreenElement!=null;let width=isFullscreen?window.innerWidth:Module.canvas.parentNode.clientWidth;let height=isFullscreen?window.innerHeight:Module.canvas.parentNode.clientHeight;let viewWidth=width;let viewHeight=width/Module.olc_AspectRatio;if(viewHeight>height){viewWidth=height*Module.olc_AspectRatio;viewHeight=height}viewWidth=parseInt(viewWidth);viewHeight=parseInt(viewHeight);setTimeout(function(){if(Module.olc_AssumeDefaultShells)Module.canvas.parentNode.setAttribute("style","width: 100%; height: 70vh; margin-left: auto; margin-right: auto;");Module.canvas.setAttribute("width",viewWidth);Module.canvas.setAttribute("height",viewHeight);Module.canvas.setAttribute("style",`width: ${viewWidth}px; height: ${viewHeight}px;`);Module._olc_PGE_UpdateWindowSize(viewWidth,viewHeight);Module.canvas.focus()},200)};var olc_Init=function(){if(Module.olc_AspectRatio===undefined){setTimeout(function(){Module.olc_Init()},50);return}let resizeObserver=new ResizeObserver(function(entries){Module.olc_ResizeHandler()}).observe(Module.canvas.parentNode);let mutationObserver=new MutationObserver(function(mutationsList,observer){setTimeout(function(){Module.olc_ResizeHandler()},200)}).observe(Module.canvas.parentNode,{attributes:false,childList:true,subtree:false});window.addEventListener("fullscreenchange",function(e){setTimeout(function(){Module.olc_ResizeHandler()},200)})};Module.olc_ResizeHandler=Module.olc_ResizeHandler!=undefined?Module.olc_ResizeHandler:olc_ResizeHandler;Module.olc_Init=Module.olc_Init!=undefined?Module.olc_Init:olc_Init;Module.olc_Init()}};function ExitStatus(status){this.name="ExitStatus";this.message=`Program terminated with exit(${status})`;this.status=status}function callRuntimeCallbacks(callbacks){while(callbacks.length>0){callbacks.shift()(Module)}}function ExceptionInfo(excPtr){this.excPtr=excPtr;this.ptr=excPtr-24;this.set_type=function(type){HEAPU32[this.ptr+4>>2]=type};this.get_type=function(){return HEAPU32[this.ptr+4>>2]};this.set_destructor=function(destructor){HEAPU32[this.ptr+8>>2]=destructor};this.get_destructor=function(){return HEAPU32[this.ptr+8>>2]};this.set_caught=function(caught){caught=caught?1:0;HEAP8[this.ptr+12>>0]=caught};this.get_caught=function(){return HEAP8[this.ptr+12>>0]!=0};this.set_rethrown=function(rethrown){rethrown=rethrown?1:0;HEAP8[this.ptr+13>>0]=rethrown};this.get_rethrown=function(){return HEAP8[this.ptr+13>>0]!=0};this.init=function(type,destructor){this.set_adjusted_ptr(0);this.set_type(type);this.set_destructor(destructor)};this.set_adjusted_ptr=function(adjustedPtr){HEAPU32[this.ptr+16>>2]=adjustedPtr};this.get_adjusted_ptr=function(){return HEAPU32[this.ptr+16>>2]};this.get_exception_ptr=function(){var isPointer=___cxa_is_pointer_type(this.get_type());if(isPointer){return HEAPU32[this.excPtr>>2]}var adjusted=this.get_adjusted_ptr();if(adjusted!==0)return adjusted;return this.excPtr}}var exceptionLast=0;var uncaughtExceptionCount=0;function ___cxa_throw(ptr,type,destructor){var info=new ExceptionInfo(ptr);info.init(type,destructor);exceptionLast=ptr;uncaughtExceptionCount++;throw exceptionLast}function setErrNo(value){HEAP32[___errno_location()>>2]=value;return value}var PATH={isAbs:path=>path.charAt(0)==="/",splitPath:filename=>{var splitPathRe=/^(\/?|)([\s\S]*?)((?:\.{1,2}|[^\/]+?|)(\.[^.\/]*|))(?:[\/]*)$/;return splitPathRe.exec(filename).slice(1)},normalizeArray:(parts,allowAboveRoot)=>{var up=0;for(var i=parts.length-1;i>=0;i--){var last=parts[i];if(last==="."){parts.splice(i,1)}else if(last===".."){parts.splice(i,1);up++}else if(up){parts.splice(i,1);up--}}if(allowAboveRoot){for(;up;up--){parts.unshift("..")}}return parts},normalize:path=>{var isAbsolute=PATH.isAbs(path),trailingSlash=path.substr(-1)==="/";path=PATH.normalizeArray(path.split("/").filter(p=>!!p),!isAbsolute).join("/");if(!path&&!isAbsolute){path="."}if(path&&trailingSlash){path+="/"}return(isAbsolute?"/":"")+path},dirname:path=>{var result=PATH.splitPath(path),root=result[0],dir=result[1];if(!root&&!dir){return"."}if(dir){dir=dir.substr(0,dir.length-1)}return root+dir},basename:path=>{if(path==="/")return"/";path=PATH.normalize(path);path=path.replace(/\/$/,"");var lastSlash=path.lastIndexOf("/");if(lastSlash===-1)return path;return path.substr(lastSlash+1)},join:function(){var paths=Array.prototype.slice.call(arguments);return PATH.normalize(paths.join("/"))},join2:(l,r)=>{return PATH.normalize(l+"/"+r)}};function initRandomFill(){if(typeof crypto=="object"&&typeof crypto["getRandomValues"]=="function"){return view=>crypto.getRandomValues(view)}else if(ENVIRONMENT_IS_NODE){try{var crypto_module=require("crypto");var randomFillSync=crypto_module["randomFillSync"];if(randomFillSync){return view=>crypto_module["randomFillSync"](view)}var randomBytes=crypto_module["randomBytes"];return view=>(view.set(randomBytes(view.byteLength)),view)}catch(e){}}abort("initRandomDevice")}function randomFill(view){return(randomFill=initRandomFill())(view)}var PATH_FS={resolve:function(){var resolvedPath="",resolvedAbsolute=false;for(var i=arguments.length-1;i>=-1&&!resolvedAbsolute;i--){var path=i>=0?arguments[i]:FS.cwd();if(typeof path!="string"){throw new TypeError("Arguments to path.resolve must be strings")}else if(!path){return""}resolvedPath=path+"/"+resolvedPath;resolvedAbsolute=PATH.isAbs(path)}resolvedPath=PATH.normalizeArray(resolvedPath.split("/").filter(p=>!!p),!resolvedAbsolute).join("/");return(resolvedAbsolute?"/":"")+resolvedPath||"."},relative:(from,to)=>{from=PATH_FS.resolve(from).substr(1);to=PATH_FS.resolve(to).substr(1);function trim(arr){var start=0;for(;start=0;end--){if(arr[end]!=="")break}if(start>end)return[];return arr.slice(start,end-start+1)}var fromParts=trim(from.split("/"));var toParts=trim(to.split("/"));var length=Math.min(fromParts.length,toParts.length);var samePartsLength=length;for(var i=0;i=55296&&c<=57343){len+=4;++i}else{len+=3}}return len}function stringToUTF8Array(str,heap,outIdx,maxBytesToWrite){if(!(maxBytesToWrite>0))return 0;var startIdx=outIdx;var endIdx=outIdx+maxBytesToWrite-1;for(var i=0;i=55296&&u<=57343){var u1=str.charCodeAt(++i);u=65536+((u&1023)<<10)|u1&1023}if(u<=127){if(outIdx>=endIdx)break;heap[outIdx++]=u}else if(u<=2047){if(outIdx+1>=endIdx)break;heap[outIdx++]=192|u>>6;heap[outIdx++]=128|u&63}else if(u<=65535){if(outIdx+2>=endIdx)break;heap[outIdx++]=224|u>>12;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}else{if(outIdx+3>=endIdx)break;heap[outIdx++]=240|u>>18;heap[outIdx++]=128|u>>12&63;heap[outIdx++]=128|u>>6&63;heap[outIdx++]=128|u&63}}heap[outIdx]=0;return outIdx-startIdx}function intArrayFromString(stringy,dontAddNull,length){var len=length>0?length:lengthBytesUTF8(stringy)+1;var u8array=new Array(len);var numBytesWritten=stringToUTF8Array(stringy,u8array,0,u8array.length);if(dontAddNull)u8array.length=numBytesWritten;return u8array}var UTF8Decoder=typeof TextDecoder!="undefined"?new TextDecoder("utf8"):undefined;function UTF8ArrayToString(heapOrArray,idx,maxBytesToRead){var endIdx=idx+maxBytesToRead;var endPtr=idx;while(heapOrArray[endPtr]&&!(endPtr>=endIdx))++endPtr;if(endPtr-idx>16&&heapOrArray.buffer&&UTF8Decoder){return UTF8Decoder.decode(heapOrArray.subarray(idx,endPtr))}var str="";while(idx>10,56320|ch&1023)}}return str}var TTY={ttys:[],init:function(){},shutdown:function(){},register:function(dev,ops){TTY.ttys[dev]={input:[],output:[],ops:ops};FS.registerDevice(dev,TTY.stream_ops)},stream_ops:{open:function(stream){var tty=TTY.ttys[stream.node.rdev];if(!tty){throw new FS.ErrnoError(43)}stream.tty=tty;stream.seekable=false},close:function(stream){stream.tty.ops.fsync(stream.tty)},fsync:function(stream){stream.tty.ops.fsync(stream.tty)},read:function(stream,buffer,offset,length,pos){if(!stream.tty||!stream.tty.ops.get_char){throw new FS.ErrnoError(60)}var bytesRead=0;for(var i=0;i0){result=buf.slice(0,bytesRead).toString("utf-8")}else{result=null}}else if(typeof window!="undefined"&&typeof window.prompt=="function"){result=window.prompt("Input: ");if(result!==null){result+="\n"}}else if(typeof readline=="function"){result=readline();if(result!==null){result+="\n"}}if(!result){return null}tty.input=intArrayFromString(result,true)}return tty.input.shift()},put_char:function(tty,val){if(val===null||val===10){out(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync:function(tty){if(tty.output&&tty.output.length>0){out(UTF8ArrayToString(tty.output,0));tty.output=[]}}},default_tty1_ops:{put_char:function(tty,val){if(val===null||val===10){err(UTF8ArrayToString(tty.output,0));tty.output=[]}else{if(val!=0)tty.output.push(val)}},fsync:function(tty){if(tty.output&&tty.output.length>0){err(UTF8ArrayToString(tty.output,0));tty.output=[]}}}};function mmapAlloc(size){abort()}var MEMFS={ops_table:null,mount:function(mount){return MEMFS.createNode(null,"/",16384|511,0)},createNode:function(parent,name,mode,dev){if(FS.isBlkdev(mode)||FS.isFIFO(mode)){throw new FS.ErrnoError(63)}if(!MEMFS.ops_table){MEMFS.ops_table={dir:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,lookup:MEMFS.node_ops.lookup,mknod:MEMFS.node_ops.mknod,rename:MEMFS.node_ops.rename,unlink:MEMFS.node_ops.unlink,rmdir:MEMFS.node_ops.rmdir,readdir:MEMFS.node_ops.readdir,symlink:MEMFS.node_ops.symlink},stream:{llseek:MEMFS.stream_ops.llseek}},file:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:{llseek:MEMFS.stream_ops.llseek,read:MEMFS.stream_ops.read,write:MEMFS.stream_ops.write,allocate:MEMFS.stream_ops.allocate,mmap:MEMFS.stream_ops.mmap,msync:MEMFS.stream_ops.msync}},link:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr,readlink:MEMFS.node_ops.readlink},stream:{}},chrdev:{node:{getattr:MEMFS.node_ops.getattr,setattr:MEMFS.node_ops.setattr},stream:FS.chrdev_stream_ops}}}var node=FS.createNode(parent,name,mode,dev);if(FS.isDir(node.mode)){node.node_ops=MEMFS.ops_table.dir.node;node.stream_ops=MEMFS.ops_table.dir.stream;node.contents={}}else if(FS.isFile(node.mode)){node.node_ops=MEMFS.ops_table.file.node;node.stream_ops=MEMFS.ops_table.file.stream;node.usedBytes=0;node.contents=null}else if(FS.isLink(node.mode)){node.node_ops=MEMFS.ops_table.link.node;node.stream_ops=MEMFS.ops_table.link.stream}else if(FS.isChrdev(node.mode)){node.node_ops=MEMFS.ops_table.chrdev.node;node.stream_ops=MEMFS.ops_table.chrdev.stream}node.timestamp=Date.now();if(parent){parent.contents[name]=node;parent.timestamp=node.timestamp}return node},getFileDataAsTypedArray:function(node){if(!node.contents)return new Uint8Array(0);if(node.contents.subarray)return node.contents.subarray(0,node.usedBytes);return new Uint8Array(node.contents)},expandFileStorage:function(node,newCapacity){var prevCapacity=node.contents?node.contents.length:0;if(prevCapacity>=newCapacity)return;var CAPACITY_DOUBLING_MAX=1024*1024;newCapacity=Math.max(newCapacity,prevCapacity*(prevCapacity>>0);if(prevCapacity!=0)newCapacity=Math.max(newCapacity,256);var oldContents=node.contents;node.contents=new Uint8Array(newCapacity);if(node.usedBytes>0)node.contents.set(oldContents.subarray(0,node.usedBytes),0)},resizeFileStorage:function(node,newSize){if(node.usedBytes==newSize)return;if(newSize==0){node.contents=null;node.usedBytes=0}else{var oldContents=node.contents;node.contents=new Uint8Array(newSize);if(oldContents){node.contents.set(oldContents.subarray(0,Math.min(newSize,node.usedBytes)))}node.usedBytes=newSize}},node_ops:{getattr:function(node){var attr={};attr.dev=FS.isChrdev(node.mode)?node.id:1;attr.ino=node.id;attr.mode=node.mode;attr.nlink=1;attr.uid=0;attr.gid=0;attr.rdev=node.rdev;if(FS.isDir(node.mode)){attr.size=4096}else if(FS.isFile(node.mode)){attr.size=node.usedBytes}else if(FS.isLink(node.mode)){attr.size=node.link.length}else{attr.size=0}attr.atime=new Date(node.timestamp);attr.mtime=new Date(node.timestamp);attr.ctime=new Date(node.timestamp);attr.blksize=4096;attr.blocks=Math.ceil(attr.size/attr.blksize);return attr},setattr:function(node,attr){if(attr.mode!==undefined){node.mode=attr.mode}if(attr.timestamp!==undefined){node.timestamp=attr.timestamp}if(attr.size!==undefined){MEMFS.resizeFileStorage(node,attr.size)}},lookup:function(parent,name){throw FS.genericErrors[44]},mknod:function(parent,name,mode,dev){return MEMFS.createNode(parent,name,mode,dev)},rename:function(old_node,new_dir,new_name){if(FS.isDir(old_node.mode)){var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(new_node){for(var i in new_node.contents){throw new FS.ErrnoError(55)}}}delete old_node.parent.contents[old_node.name];old_node.parent.timestamp=Date.now();old_node.name=new_name;new_dir.contents[new_name]=old_node;new_dir.timestamp=old_node.parent.timestamp;old_node.parent=new_dir},unlink:function(parent,name){delete parent.contents[name];parent.timestamp=Date.now()},rmdir:function(parent,name){var node=FS.lookupNode(parent,name);for(var i in node.contents){throw new FS.ErrnoError(55)}delete parent.contents[name];parent.timestamp=Date.now()},readdir:function(node){var entries=[".",".."];for(var key in node.contents){if(!node.contents.hasOwnProperty(key)){continue}entries.push(key)}return entries},symlink:function(parent,newname,oldpath){var node=MEMFS.createNode(parent,newname,511|40960,0);node.link=oldpath;return node},readlink:function(node){if(!FS.isLink(node.mode)){throw new FS.ErrnoError(28)}return node.link}},stream_ops:{read:function(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=stream.node.usedBytes)return 0;var size=Math.min(stream.node.usedBytes-position,length);if(size>8&&contents.subarray){buffer.set(contents.subarray(position,position+size),offset)}else{for(var i=0;i0||position+length{assert(arrayBuffer,`Loading data file "${url}" failed (no arrayBuffer).`);onload(new Uint8Array(arrayBuffer));if(dep)removeRunDependency(dep)},event=>{if(onerror){onerror()}else{throw`Loading data file "${url}" failed.`}});if(dep)addRunDependency(dep)}var preloadPlugins=Module["preloadPlugins"]||[];function FS_handledByPreloadPlugin(byteArray,fullname,finish,onerror){if(typeof Browser!="undefined")Browser.init();var handled=false;preloadPlugins.forEach(function(plugin){if(handled)return;if(plugin["canHandle"](fullname)){plugin["handle"](byteArray,fullname,finish,onerror);handled=true}});return handled}function FS_createPreloadedFile(parent,name,url,canRead,canWrite,onload,onerror,dontCreateFile,canOwn,preFinish){var fullname=name?PATH_FS.resolve(PATH.join2(parent,name)):parent;var dep=getUniqueRunDependency(`cp ${fullname}`);function processData(byteArray){function finish(byteArray){if(preFinish)preFinish();if(!dontCreateFile){FS.createDataFile(parent,name,byteArray,canRead,canWrite,canOwn)}if(onload)onload();removeRunDependency(dep)}if(FS_handledByPreloadPlugin(byteArray,fullname,finish,()=>{if(onerror)onerror();removeRunDependency(dep)})){return}finish(byteArray)}addRunDependency(dep);if(typeof url=="string"){asyncLoad(url,byteArray=>processData(byteArray),onerror)}else{processData(url)}}function FS_modeStringToFlags(str){var flagModes={"r":0,"r+":2,"w":512|64|1,"w+":512|64|2,"a":1024|64|1,"a+":1024|64|2};var flags=flagModes[str];if(typeof flags=="undefined"){throw new Error(`Unknown file open mode: ${str}`)}return flags}function FS_getMode(canRead,canWrite){var mode=0;if(canRead)mode|=292|73;if(canWrite)mode|=146;return mode}var FS={root:null,mounts:[],devices:{},streams:[],nextInode:1,nameTable:null,currentPath:"/",initialized:false,ignorePermissions:true,ErrnoError:null,genericErrors:{},filesystems:null,syncFSRequests:0,lookupPath:(path,opts={})=>{path=PATH_FS.resolve(path);if(!path)return{path:"",node:null};var defaults={follow_mount:true,recurse_count:0};opts=Object.assign(defaults,opts);if(opts.recurse_count>8){throw new FS.ErrnoError(32)}var parts=path.split("/").filter(p=>!!p);var current=FS.root;var current_path="/";for(var i=0;i40){throw new FS.ErrnoError(32)}}}}return{path:current_path,node:current}},getPath:node=>{var path;while(true){if(FS.isRoot(node)){var mount=node.mount.mountpoint;if(!path)return mount;return mount[mount.length-1]!=="/"?`${mount}/${path}`:mount+path}path=path?`${node.name}/${path}`:node.name;node=node.parent}},hashName:(parentid,name)=>{var hash=0;for(var i=0;i>>0)%FS.nameTable.length},hashAddNode:node=>{var hash=FS.hashName(node.parent.id,node.name);node.name_next=FS.nameTable[hash];FS.nameTable[hash]=node},hashRemoveNode:node=>{var hash=FS.hashName(node.parent.id,node.name);if(FS.nameTable[hash]===node){FS.nameTable[hash]=node.name_next}else{var current=FS.nameTable[hash];while(current){if(current.name_next===node){current.name_next=node.name_next;break}current=current.name_next}}},lookupNode:(parent,name)=>{var errCode=FS.mayLookup(parent);if(errCode){throw new FS.ErrnoError(errCode,parent)}var hash=FS.hashName(parent.id,name);for(var node=FS.nameTable[hash];node;node=node.name_next){var nodeName=node.name;if(node.parent.id===parent.id&&nodeName===name){return node}}return FS.lookup(parent,name)},createNode:(parent,name,mode,rdev)=>{var node=new FS.FSNode(parent,name,mode,rdev);FS.hashAddNode(node);return node},destroyNode:node=>{FS.hashRemoveNode(node)},isRoot:node=>{return node===node.parent},isMountpoint:node=>{return!!node.mounted},isFile:mode=>{return(mode&61440)===32768},isDir:mode=>{return(mode&61440)===16384},isLink:mode=>{return(mode&61440)===40960},isChrdev:mode=>{return(mode&61440)===8192},isBlkdev:mode=>{return(mode&61440)===24576},isFIFO:mode=>{return(mode&61440)===4096},isSocket:mode=>{return(mode&49152)===49152},flagsToPermissionString:flag=>{var perms=["r","w","rw"][flag&3];if(flag&512){perms+="w"}return perms},nodePermissions:(node,perms)=>{if(FS.ignorePermissions){return 0}if(perms.includes("r")&&!(node.mode&292)){return 2}else if(perms.includes("w")&&!(node.mode&146)){return 2}else if(perms.includes("x")&&!(node.mode&73)){return 2}return 0},mayLookup:dir=>{var errCode=FS.nodePermissions(dir,"x");if(errCode)return errCode;if(!dir.node_ops.lookup)return 2;return 0},mayCreate:(dir,name)=>{try{var node=FS.lookupNode(dir,name);return 20}catch(e){}return FS.nodePermissions(dir,"wx")},mayDelete:(dir,name,isdir)=>{var node;try{node=FS.lookupNode(dir,name)}catch(e){return e.errno}var errCode=FS.nodePermissions(dir,"wx");if(errCode){return errCode}if(isdir){if(!FS.isDir(node.mode)){return 54}if(FS.isRoot(node)||FS.getPath(node)===FS.cwd()){return 10}}else{if(FS.isDir(node.mode)){return 31}}return 0},mayOpen:(node,flags)=>{if(!node){return 44}if(FS.isLink(node.mode)){return 32}else if(FS.isDir(node.mode)){if(FS.flagsToPermissionString(flags)!=="r"||flags&512){return 31}}return FS.nodePermissions(node,FS.flagsToPermissionString(flags))},MAX_OPEN_FDS:4096,nextfd:()=>{for(var fd=0;fd<=FS.MAX_OPEN_FDS;fd++){if(!FS.streams[fd]){return fd}}throw new FS.ErrnoError(33)},getStream:fd=>FS.streams[fd],createStream:(stream,fd=-1)=>{if(!FS.FSStream){FS.FSStream=function(){this.shared={}};FS.FSStream.prototype={};Object.defineProperties(FS.FSStream.prototype,{object:{get:function(){return this.node},set:function(val){this.node=val}},isRead:{get:function(){return(this.flags&2097155)!==1}},isWrite:{get:function(){return(this.flags&2097155)!==0}},isAppend:{get:function(){return this.flags&1024}},flags:{get:function(){return this.shared.flags},set:function(val){this.shared.flags=val}},position:{get:function(){return this.shared.position},set:function(val){this.shared.position=val}}})}stream=Object.assign(new FS.FSStream,stream);if(fd==-1){fd=FS.nextfd()}stream.fd=fd;FS.streams[fd]=stream;return stream},closeStream:fd=>{FS.streams[fd]=null},chrdev_stream_ops:{open:stream=>{var device=FS.getDevice(stream.node.rdev);stream.stream_ops=device.stream_ops;if(stream.stream_ops.open){stream.stream_ops.open(stream)}},llseek:()=>{throw new FS.ErrnoError(70)}},major:dev=>dev>>8,minor:dev=>dev&255,makedev:(ma,mi)=>ma<<8|mi,registerDevice:(dev,ops)=>{FS.devices[dev]={stream_ops:ops}},getDevice:dev=>FS.devices[dev],getMounts:mount=>{var mounts=[];var check=[mount];while(check.length){var m=check.pop();mounts.push(m);check.push.apply(check,m.mounts)}return mounts},syncfs:(populate,callback)=>{if(typeof populate=="function"){callback=populate;populate=false}FS.syncFSRequests++;if(FS.syncFSRequests>1){err(`warning: ${FS.syncFSRequests} FS.syncfs operations in flight at once, probably just doing extra work`)}var mounts=FS.getMounts(FS.root.mount);var completed=0;function doCallback(errCode){FS.syncFSRequests--;return callback(errCode)}function done(errCode){if(errCode){if(!done.errored){done.errored=true;return doCallback(errCode)}return}if(++completed>=mounts.length){doCallback(null)}}mounts.forEach(mount=>{if(!mount.type.syncfs){return done(null)}mount.type.syncfs(mount,populate,done)})},mount:(type,opts,mountpoint)=>{var root=mountpoint==="/";var pseudo=!mountpoint;var node;if(root&&FS.root){throw new FS.ErrnoError(10)}else if(!root&&!pseudo){var lookup=FS.lookupPath(mountpoint,{follow_mount:false});mountpoint=lookup.path;node=lookup.node;if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}if(!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}}var mount={type:type,opts:opts,mountpoint:mountpoint,mounts:[]};var mountRoot=type.mount(mount);mountRoot.mount=mount;mount.root=mountRoot;if(root){FS.root=mountRoot}else if(node){node.mounted=mount;if(node.mount){node.mount.mounts.push(mount)}}return mountRoot},unmount:mountpoint=>{var lookup=FS.lookupPath(mountpoint,{follow_mount:false});if(!FS.isMountpoint(lookup.node)){throw new FS.ErrnoError(28)}var node=lookup.node;var mount=node.mounted;var mounts=FS.getMounts(mount);Object.keys(FS.nameTable).forEach(hash=>{var current=FS.nameTable[hash];while(current){var next=current.name_next;if(mounts.includes(current.mount)){FS.destroyNode(current)}current=next}});node.mounted=null;var idx=node.mount.mounts.indexOf(mount);node.mount.mounts.splice(idx,1)},lookup:(parent,name)=>{return parent.node_ops.lookup(parent,name)},mknod:(path,mode,dev)=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);if(!name||name==="."||name===".."){throw new FS.ErrnoError(28)}var errCode=FS.mayCreate(parent,name);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.mknod){throw new FS.ErrnoError(63)}return parent.node_ops.mknod(parent,name,mode,dev)},create:(path,mode)=>{mode=mode!==undefined?mode:438;mode&=4095;mode|=32768;return FS.mknod(path,mode,0)},mkdir:(path,mode)=>{mode=mode!==undefined?mode:511;mode&=511|512;mode|=16384;return FS.mknod(path,mode,0)},mkdirTree:(path,mode)=>{var dirs=path.split("/");var d="";for(var i=0;i{if(typeof dev=="undefined"){dev=mode;mode=438}mode|=8192;return FS.mknod(path,mode,dev)},symlink:(oldpath,newpath)=>{if(!PATH_FS.resolve(oldpath)){throw new FS.ErrnoError(44)}var lookup=FS.lookupPath(newpath,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var newname=PATH.basename(newpath);var errCode=FS.mayCreate(parent,newname);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.symlink){throw new FS.ErrnoError(63)}return parent.node_ops.symlink(parent,newname,oldpath)},rename:(old_path,new_path)=>{var old_dirname=PATH.dirname(old_path);var new_dirname=PATH.dirname(new_path);var old_name=PATH.basename(old_path);var new_name=PATH.basename(new_path);var lookup,old_dir,new_dir;lookup=FS.lookupPath(old_path,{parent:true});old_dir=lookup.node;lookup=FS.lookupPath(new_path,{parent:true});new_dir=lookup.node;if(!old_dir||!new_dir)throw new FS.ErrnoError(44);if(old_dir.mount!==new_dir.mount){throw new FS.ErrnoError(75)}var old_node=FS.lookupNode(old_dir,old_name);var relative=PATH_FS.relative(old_path,new_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(28)}relative=PATH_FS.relative(new_path,old_dirname);if(relative.charAt(0)!=="."){throw new FS.ErrnoError(55)}var new_node;try{new_node=FS.lookupNode(new_dir,new_name)}catch(e){}if(old_node===new_node){return}var isdir=FS.isDir(old_node.mode);var errCode=FS.mayDelete(old_dir,old_name,isdir);if(errCode){throw new FS.ErrnoError(errCode)}errCode=new_node?FS.mayDelete(new_dir,new_name,isdir):FS.mayCreate(new_dir,new_name);if(errCode){throw new FS.ErrnoError(errCode)}if(!old_dir.node_ops.rename){throw new FS.ErrnoError(63)}if(FS.isMountpoint(old_node)||new_node&&FS.isMountpoint(new_node)){throw new FS.ErrnoError(10)}if(new_dir!==old_dir){errCode=FS.nodePermissions(old_dir,"w");if(errCode){throw new FS.ErrnoError(errCode)}}FS.hashRemoveNode(old_node);try{old_dir.node_ops.rename(old_node,new_dir,new_name)}catch(e){throw e}finally{FS.hashAddNode(old_node)}},rmdir:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,true);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.rmdir){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.rmdir(parent,name);FS.destroyNode(node)},readdir:path=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;if(!node.node_ops.readdir){throw new FS.ErrnoError(54)}return node.node_ops.readdir(node)},unlink:path=>{var lookup=FS.lookupPath(path,{parent:true});var parent=lookup.node;if(!parent){throw new FS.ErrnoError(44)}var name=PATH.basename(path);var node=FS.lookupNode(parent,name);var errCode=FS.mayDelete(parent,name,false);if(errCode){throw new FS.ErrnoError(errCode)}if(!parent.node_ops.unlink){throw new FS.ErrnoError(63)}if(FS.isMountpoint(node)){throw new FS.ErrnoError(10)}parent.node_ops.unlink(parent,name);FS.destroyNode(node)},readlink:path=>{var lookup=FS.lookupPath(path);var link=lookup.node;if(!link){throw new FS.ErrnoError(44)}if(!link.node_ops.readlink){throw new FS.ErrnoError(28)}return PATH_FS.resolve(FS.getPath(link.parent),link.node_ops.readlink(link))},stat:(path,dontFollow)=>{var lookup=FS.lookupPath(path,{follow:!dontFollow});var node=lookup.node;if(!node){throw new FS.ErrnoError(44)}if(!node.node_ops.getattr){throw new FS.ErrnoError(63)}return node.node_ops.getattr(node)},lstat:path=>{return FS.stat(path,true)},chmod:(path,mode,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{mode:mode&4095|node.mode&~4095,timestamp:Date.now()})},lchmod:(path,mode)=>{FS.chmod(path,mode,true)},fchmod:(fd,mode)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}FS.chmod(stream.node,mode)},chown:(path,uid,gid,dontFollow)=>{var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:!dontFollow});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}node.node_ops.setattr(node,{timestamp:Date.now()})},lchown:(path,uid,gid)=>{FS.chown(path,uid,gid,true)},fchown:(fd,uid,gid)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}FS.chown(stream.node,uid,gid)},truncate:(path,len)=>{if(len<0){throw new FS.ErrnoError(28)}var node;if(typeof path=="string"){var lookup=FS.lookupPath(path,{follow:true});node=lookup.node}else{node=path}if(!node.node_ops.setattr){throw new FS.ErrnoError(63)}if(FS.isDir(node.mode)){throw new FS.ErrnoError(31)}if(!FS.isFile(node.mode)){throw new FS.ErrnoError(28)}var errCode=FS.nodePermissions(node,"w");if(errCode){throw new FS.ErrnoError(errCode)}node.node_ops.setattr(node,{size:len,timestamp:Date.now()})},ftruncate:(fd,len)=>{var stream=FS.getStream(fd);if(!stream){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(28)}FS.truncate(stream.node,len)},utime:(path,atime,mtime)=>{var lookup=FS.lookupPath(path,{follow:true});var node=lookup.node;node.node_ops.setattr(node,{timestamp:Math.max(atime,mtime)})},open:(path,flags,mode)=>{if(path===""){throw new FS.ErrnoError(44)}flags=typeof flags=="string"?FS_modeStringToFlags(flags):flags;mode=typeof mode=="undefined"?438:mode;if(flags&64){mode=mode&4095|32768}else{mode=0}var node;if(typeof path=="object"){node=path}else{path=PATH.normalize(path);try{var lookup=FS.lookupPath(path,{follow:!(flags&131072)});node=lookup.node}catch(e){}}var created=false;if(flags&64){if(node){if(flags&128){throw new FS.ErrnoError(20)}}else{node=FS.mknod(path,mode,0);created=true}}if(!node){throw new FS.ErrnoError(44)}if(FS.isChrdev(node.mode)){flags&=~512}if(flags&65536&&!FS.isDir(node.mode)){throw new FS.ErrnoError(54)}if(!created){var errCode=FS.mayOpen(node,flags);if(errCode){throw new FS.ErrnoError(errCode)}}if(flags&512&&!created){FS.truncate(node,0)}flags&=~(128|512|131072);var stream=FS.createStream({node:node,path:FS.getPath(node),flags:flags,seekable:true,position:0,stream_ops:node.stream_ops,ungotten:[],error:false});if(stream.stream_ops.open){stream.stream_ops.open(stream)}if(Module["logReadFiles"]&&!(flags&1)){if(!FS.readFiles)FS.readFiles={};if(!(path in FS.readFiles)){FS.readFiles[path]=1}}return stream},close:stream=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(stream.getdents)stream.getdents=null;try{if(stream.stream_ops.close){stream.stream_ops.close(stream)}}catch(e){throw e}finally{FS.closeStream(stream.fd)}stream.fd=null},isClosed:stream=>{return stream.fd===null},llseek:(stream,offset,whence)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(!stream.seekable||!stream.stream_ops.llseek){throw new FS.ErrnoError(70)}if(whence!=0&&whence!=1&&whence!=2){throw new FS.ErrnoError(28)}stream.position=stream.stream_ops.llseek(stream,offset,whence);stream.ungotten=[];return stream.position},read:(stream,buffer,offset,length,position)=>{if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.read){throw new FS.ErrnoError(28)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesRead=stream.stream_ops.read(stream,buffer,offset,length,position);if(!seeking)stream.position+=bytesRead;return bytesRead},write:(stream,buffer,offset,length,position,canOwn)=>{if(length<0||position<0){throw new FS.ErrnoError(28)}if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(FS.isDir(stream.node.mode)){throw new FS.ErrnoError(31)}if(!stream.stream_ops.write){throw new FS.ErrnoError(28)}if(stream.seekable&&stream.flags&1024){FS.llseek(stream,0,2)}var seeking=typeof position!="undefined";if(!seeking){position=stream.position}else if(!stream.seekable){throw new FS.ErrnoError(70)}var bytesWritten=stream.stream_ops.write(stream,buffer,offset,length,position,canOwn);if(!seeking)stream.position+=bytesWritten;return bytesWritten},allocate:(stream,offset,length)=>{if(FS.isClosed(stream)){throw new FS.ErrnoError(8)}if(offset<0||length<=0){throw new FS.ErrnoError(28)}if((stream.flags&2097155)===0){throw new FS.ErrnoError(8)}if(!FS.isFile(stream.node.mode)&&!FS.isDir(stream.node.mode)){throw new FS.ErrnoError(43)}if(!stream.stream_ops.allocate){throw new FS.ErrnoError(138)}stream.stream_ops.allocate(stream,offset,length)},mmap:(stream,length,position,prot,flags)=>{if((prot&2)!==0&&(flags&2)===0&&(stream.flags&2097155)!==2){throw new FS.ErrnoError(2)}if((stream.flags&2097155)===1){throw new FS.ErrnoError(2)}if(!stream.stream_ops.mmap){throw new FS.ErrnoError(43)}return stream.stream_ops.mmap(stream,length,position,prot,flags)},msync:(stream,buffer,offset,length,mmapFlags)=>{if(!stream.stream_ops.msync){return 0}return stream.stream_ops.msync(stream,buffer,offset,length,mmapFlags)},munmap:stream=>0,ioctl:(stream,cmd,arg)=>{if(!stream.stream_ops.ioctl){throw new FS.ErrnoError(59)}return stream.stream_ops.ioctl(stream,cmd,arg)},readFile:(path,opts={})=>{opts.flags=opts.flags||0;opts.encoding=opts.encoding||"binary";if(opts.encoding!=="utf8"&&opts.encoding!=="binary"){throw new Error(`Invalid encoding type "${opts.encoding}"`)}var ret;var stream=FS.open(path,opts.flags);var stat=FS.stat(path);var length=stat.size;var buf=new Uint8Array(length);FS.read(stream,buf,0,length,0);if(opts.encoding==="utf8"){ret=UTF8ArrayToString(buf,0)}else if(opts.encoding==="binary"){ret=buf}FS.close(stream);return ret},writeFile:(path,data,opts={})=>{opts.flags=opts.flags||577;var stream=FS.open(path,opts.flags,opts.mode);if(typeof data=="string"){var buf=new Uint8Array(lengthBytesUTF8(data)+1);var actualNumBytes=stringToUTF8Array(data,buf,0,buf.length);FS.write(stream,buf,0,actualNumBytes,undefined,opts.canOwn)}else if(ArrayBuffer.isView(data)){FS.write(stream,data,0,data.byteLength,undefined,opts.canOwn)}else{throw new Error("Unsupported data type")}FS.close(stream)},cwd:()=>FS.currentPath,chdir:path=>{var lookup=FS.lookupPath(path,{follow:true});if(lookup.node===null){throw new FS.ErrnoError(44)}if(!FS.isDir(lookup.node.mode)){throw new FS.ErrnoError(54)}var errCode=FS.nodePermissions(lookup.node,"x");if(errCode){throw new FS.ErrnoError(errCode)}FS.currentPath=lookup.path},createDefaultDirectories:()=>{FS.mkdir("/tmp");FS.mkdir("/home");FS.mkdir("/home/web_user")},createDefaultDevices:()=>{FS.mkdir("/dev");FS.registerDevice(FS.makedev(1,3),{read:()=>0,write:(stream,buffer,offset,length,pos)=>length});FS.mkdev("/dev/null",FS.makedev(1,3));TTY.register(FS.makedev(5,0),TTY.default_tty_ops);TTY.register(FS.makedev(6,0),TTY.default_tty1_ops);FS.mkdev("/dev/tty",FS.makedev(5,0));FS.mkdev("/dev/tty1",FS.makedev(6,0));var randomBuffer=new Uint8Array(1024),randomLeft=0;var randomByte=()=>{if(randomLeft===0){randomLeft=randomFill(randomBuffer).byteLength}return randomBuffer[--randomLeft]};FS.createDevice("/dev","random",randomByte);FS.createDevice("/dev","urandom",randomByte);FS.mkdir("/dev/shm");FS.mkdir("/dev/shm/tmp")},createSpecialDirectories:()=>{FS.mkdir("/proc");var proc_self=FS.mkdir("/proc/self");FS.mkdir("/proc/self/fd");FS.mount({mount:()=>{var node=FS.createNode(proc_self,"fd",16384|511,73);node.node_ops={lookup:(parent,name)=>{var fd=+name;var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);var ret={parent:null,mount:{mountpoint:"fake"},node_ops:{readlink:()=>stream.path}};ret.parent=ret;return ret}};return node}},{},"/proc/self/fd")},createStandardStreams:()=>{if(Module["stdin"]){FS.createDevice("/dev","stdin",Module["stdin"])}else{FS.symlink("/dev/tty","/dev/stdin")}if(Module["stdout"]){FS.createDevice("/dev","stdout",null,Module["stdout"])}else{FS.symlink("/dev/tty","/dev/stdout")}if(Module["stderr"]){FS.createDevice("/dev","stderr",null,Module["stderr"])}else{FS.symlink("/dev/tty1","/dev/stderr")}var stdin=FS.open("/dev/stdin",0);var stdout=FS.open("/dev/stdout",1);var stderr=FS.open("/dev/stderr",1)},ensureErrnoError:()=>{if(FS.ErrnoError)return;FS.ErrnoError=function ErrnoError(errno,node){this.name="ErrnoError";this.node=node;this.setErrno=function(errno){this.errno=errno};this.setErrno(errno);this.message="FS error"};FS.ErrnoError.prototype=new Error;FS.ErrnoError.prototype.constructor=FS.ErrnoError;[44].forEach(code=>{FS.genericErrors[code]=new FS.ErrnoError(code);FS.genericErrors[code].stack=""})},staticInit:()=>{FS.ensureErrnoError();FS.nameTable=new Array(4096);FS.mount(MEMFS,{},"/");FS.createDefaultDirectories();FS.createDefaultDevices();FS.createSpecialDirectories();FS.filesystems={"MEMFS":MEMFS}},init:(input,output,error)=>{FS.init.initialized=true;FS.ensureErrnoError();Module["stdin"]=input||Module["stdin"];Module["stdout"]=output||Module["stdout"];Module["stderr"]=error||Module["stderr"];FS.createStandardStreams()},quit:()=>{FS.init.initialized=false;for(var i=0;i{var ret=FS.analyzePath(path,dontResolveLastLink);if(!ret.exists){return null}return ret.object},analyzePath:(path,dontResolveLastLink)=>{try{var lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});path=lookup.path}catch(e){}var ret={isRoot:false,exists:false,error:0,name:null,path:null,object:null,parentExists:false,parentPath:null,parentObject:null};try{var lookup=FS.lookupPath(path,{parent:true});ret.parentExists=true;ret.parentPath=lookup.path;ret.parentObject=lookup.node;ret.name=PATH.basename(path);lookup=FS.lookupPath(path,{follow:!dontResolveLastLink});ret.exists=true;ret.path=lookup.path;ret.object=lookup.node;ret.name=lookup.node.name;ret.isRoot=lookup.path==="/"}catch(e){ret.error=e.errno}return ret},createPath:(parent,path,canRead,canWrite)=>{parent=typeof parent=="string"?parent:FS.getPath(parent);var parts=path.split("/").reverse();while(parts.length){var part=parts.pop();if(!part)continue;var current=PATH.join2(parent,part);try{FS.mkdir(current)}catch(e){}parent=current}return current},createFile:(parent,name,properties,canRead,canWrite)=>{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(canRead,canWrite);return FS.create(path,mode)},createDataFile:(parent,name,data,canRead,canWrite,canOwn)=>{var path=name;if(parent){parent=typeof parent=="string"?parent:FS.getPath(parent);path=name?PATH.join2(parent,name):parent}var mode=FS_getMode(canRead,canWrite);var node=FS.create(path,mode);if(data){if(typeof data=="string"){var arr=new Array(data.length);for(var i=0,len=data.length;i{var path=PATH.join2(typeof parent=="string"?parent:FS.getPath(parent),name);var mode=FS_getMode(!!input,!!output);if(!FS.createDevice.major)FS.createDevice.major=64;var dev=FS.makedev(FS.createDevice.major++,0);FS.registerDevice(dev,{open:stream=>{stream.seekable=false},close:stream=>{if(output&&output.buffer&&output.buffer.length){output(10)}},read:(stream,buffer,offset,length,pos)=>{var bytesRead=0;for(var i=0;i{for(var i=0;i{if(obj.isDevice||obj.isFolder||obj.link||obj.contents)return true;if(typeof XMLHttpRequest!="undefined"){throw new Error("Lazy loading should have been performed (contents set) in createLazyFile, but it was not. Lazy loading only works in web workers. Use --embed-file or --preload-file in emcc on the main thread.")}else if(read_){try{obj.contents=intArrayFromString(read_(obj.url),true);obj.usedBytes=obj.contents.length}catch(e){throw new FS.ErrnoError(29)}}else{throw new Error("Cannot load without read() or XMLHttpRequest.")}},createLazyFile:(parent,name,url,canRead,canWrite)=>{function LazyUint8Array(){this.lengthKnown=false;this.chunks=[]}LazyUint8Array.prototype.get=function LazyUint8Array_get(idx){if(idx>this.length-1||idx<0){return undefined}var chunkOffset=idx%this.chunkSize;var chunkNum=idx/this.chunkSize|0;return this.getter(chunkNum)[chunkOffset]};LazyUint8Array.prototype.setDataGetter=function LazyUint8Array_setDataGetter(getter){this.getter=getter};LazyUint8Array.prototype.cacheLength=function LazyUint8Array_cacheLength(){var xhr=new XMLHttpRequest;xhr.open("HEAD",url,false);xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);var datalength=Number(xhr.getResponseHeader("Content-length"));var header;var hasByteServing=(header=xhr.getResponseHeader("Accept-Ranges"))&&header==="bytes";var usesGzip=(header=xhr.getResponseHeader("Content-Encoding"))&&header==="gzip";var chunkSize=1024*1024;if(!hasByteServing)chunkSize=datalength;var doXHR=(from,to)=>{if(from>to)throw new Error("invalid range ("+from+", "+to+") or no bytes requested!");if(to>datalength-1)throw new Error("only "+datalength+" bytes available! programmer error!");var xhr=new XMLHttpRequest;xhr.open("GET",url,false);if(datalength!==chunkSize)xhr.setRequestHeader("Range","bytes="+from+"-"+to);xhr.responseType="arraybuffer";if(xhr.overrideMimeType){xhr.overrideMimeType("text/plain; charset=x-user-defined")}xhr.send(null);if(!(xhr.status>=200&&xhr.status<300||xhr.status===304))throw new Error("Couldn't load "+url+". Status: "+xhr.status);if(xhr.response!==undefined){return new Uint8Array(xhr.response||[])}return intArrayFromString(xhr.responseText||"",true)};var lazyArray=this;lazyArray.setDataGetter(chunkNum=>{var start=chunkNum*chunkSize;var end=(chunkNum+1)*chunkSize-1;end=Math.min(end,datalength-1);if(typeof lazyArray.chunks[chunkNum]=="undefined"){lazyArray.chunks[chunkNum]=doXHR(start,end)}if(typeof lazyArray.chunks[chunkNum]=="undefined")throw new Error("doXHR failed!");return lazyArray.chunks[chunkNum]});if(usesGzip||!datalength){chunkSize=datalength=1;datalength=this.getter(0).length;chunkSize=datalength;out("LazyFiles on gzip forces download of the whole file when length is accessed")}this._length=datalength;this._chunkSize=chunkSize;this.lengthKnown=true};if(typeof XMLHttpRequest!="undefined"){if(!ENVIRONMENT_IS_WORKER)throw"Cannot do synchronous binary XHRs outside webworkers in modern browsers. Use --embed-file or --preload-file in emcc";var lazyArray=new LazyUint8Array;Object.defineProperties(lazyArray,{length:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._length}},chunkSize:{get:function(){if(!this.lengthKnown){this.cacheLength()}return this._chunkSize}}});var properties={isDevice:false,contents:lazyArray}}else{var properties={isDevice:false,url:url}}var node=FS.createFile(parent,name,properties,canRead,canWrite);if(properties.contents){node.contents=properties.contents}else if(properties.url){node.contents=null;node.url=properties.url}Object.defineProperties(node,{usedBytes:{get:function(){return this.contents.length}}});var stream_ops={};var keys=Object.keys(node.stream_ops);keys.forEach(key=>{var fn=node.stream_ops[key];stream_ops[key]=function forceLoadLazyFile(){FS.forceLoadFile(node);return fn.apply(null,arguments)}});function writeChunks(stream,buffer,offset,length,position){var contents=stream.node.contents;if(position>=contents.length)return 0;var size=Math.min(contents.length-position,length);if(contents.slice){for(var i=0;i{FS.forceLoadFile(node);return writeChunks(stream,buffer,offset,length,position)};stream_ops.mmap=(stream,length,position,prot,flags)=>{FS.forceLoadFile(node);var ptr=mmapAlloc(length);if(!ptr){throw new FS.ErrnoError(48)}writeChunks(stream,HEAP8,ptr,length,position);return{ptr:ptr,allocated:true}};node.stream_ops=stream_ops;return node}};function UTF8ToString(ptr,maxBytesToRead){return ptr?UTF8ArrayToString(HEAPU8,ptr,maxBytesToRead):""}var SYSCALLS={DEFAULT_POLLMASK:5,calculateAt:function(dirfd,path,allowEmpty){if(PATH.isAbs(path)){return path}var dir;if(dirfd===-100){dir=FS.cwd()}else{var dirstream=SYSCALLS.getStreamFromFD(dirfd);dir=dirstream.path}if(path.length==0){if(!allowEmpty){throw new FS.ErrnoError(44)}return dir}return PATH.join2(dir,path)},doStat:function(func,path,buf){try{var stat=func(path)}catch(e){if(e&&e.node&&PATH.normalize(path)!==PATH.normalize(FS.getPath(e.node))){return-54}throw e}HEAP32[buf>>2]=stat.dev;HEAP32[buf+8>>2]=stat.ino;HEAP32[buf+12>>2]=stat.mode;HEAPU32[buf+16>>2]=stat.nlink;HEAP32[buf+20>>2]=stat.uid;HEAP32[buf+24>>2]=stat.gid;HEAP32[buf+28>>2]=stat.rdev;tempI64=[stat.size>>>0,(tempDouble=stat.size,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+40>>2]=tempI64[0],HEAP32[buf+44>>2]=tempI64[1];HEAP32[buf+48>>2]=4096;HEAP32[buf+52>>2]=stat.blocks;var atime=stat.atime.getTime();var mtime=stat.mtime.getTime();var ctime=stat.ctime.getTime();tempI64=[Math.floor(atime/1e3)>>>0,(tempDouble=Math.floor(atime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+56>>2]=tempI64[0],HEAP32[buf+60>>2]=tempI64[1];HEAPU32[buf+64>>2]=atime%1e3*1e3;tempI64=[Math.floor(mtime/1e3)>>>0,(tempDouble=Math.floor(mtime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+72>>2]=tempI64[0],HEAP32[buf+76>>2]=tempI64[1];HEAPU32[buf+80>>2]=mtime%1e3*1e3;tempI64=[Math.floor(ctime/1e3)>>>0,(tempDouble=Math.floor(ctime/1e3),+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+88>>2]=tempI64[0],HEAP32[buf+92>>2]=tempI64[1];HEAPU32[buf+96>>2]=ctime%1e3*1e3;tempI64=[stat.ino>>>0,(tempDouble=stat.ino,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[buf+104>>2]=tempI64[0],HEAP32[buf+108>>2]=tempI64[1];return 0},doMsync:function(addr,stream,len,flags,offset){if(!FS.isFile(stream.node.mode)){throw new FS.ErrnoError(43)}if(flags&2){return 0}var buffer=HEAPU8.slice(addr,addr+len);FS.msync(stream,buffer,offset,len,flags)},varargs:undefined,get:function(){SYSCALLS.varargs+=4;var ret=HEAP32[SYSCALLS.varargs-4>>2];return ret},getStr:function(ptr){var ret=UTF8ToString(ptr);return ret},getStreamFromFD:function(fd){var stream=FS.getStream(fd);if(!stream)throw new FS.ErrnoError(8);return stream}};function ___syscall_fcntl64(fd,cmd,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(cmd){case 0:{var arg=SYSCALLS.get();if(arg<0){return-28}var newStream;newStream=FS.createStream(stream,arg);return newStream.fd}case 1:case 2:return 0;case 3:return stream.flags;case 4:{var arg=SYSCALLS.get();stream.flags|=arg;return 0}case 5:{var arg=SYSCALLS.get();var offset=0;HEAP16[arg+offset>>1]=2;return 0}case 6:case 7:return 0;case 16:case 8:return-28;case 9:setErrNo(28);return-1;default:{return-28}}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_ioctl(fd,op,varargs){SYSCALLS.varargs=varargs;try{var stream=SYSCALLS.getStreamFromFD(fd);switch(op){case 21509:case 21505:{if(!stream.tty)return-59;return 0}case 21510:case 21511:case 21512:case 21506:case 21507:case 21508:{if(!stream.tty)return-59;return 0}case 21519:{if(!stream.tty)return-59;var argp=SYSCALLS.get();HEAP32[argp>>2]=0;return 0}case 21520:{if(!stream.tty)return-59;return-28}case 21531:{var argp=SYSCALLS.get();return FS.ioctl(stream,op,argp)}case 21523:{if(!stream.tty)return-59;return 0}case 21524:{if(!stream.tty)return-59;return 0}default:return-28}}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}function ___syscall_openat(dirfd,path,flags,varargs){SYSCALLS.varargs=varargs;try{path=SYSCALLS.getStr(path);path=SYSCALLS.calculateAt(dirfd,path);var mode=varargs?SYSCALLS.get():0;return FS.open(path,flags,mode).fd}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return-e.errno}}var nowIsMonotonic=true;function __emscripten_get_now_is_monotonic(){return nowIsMonotonic}function __emscripten_throw_longjmp(){throw Infinity}function _abort(){abort("")}function _emscripten_set_main_loop_timing(mode,value){Browser.mainLoop.timingMode=mode;Browser.mainLoop.timingValue=value;if(!Browser.mainLoop.func){return 1}if(!Browser.mainLoop.running){Browser.mainLoop.running=true}if(mode==0){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setTimeout(){var timeUntilNextTick=Math.max(0,Browser.mainLoop.tickStartTime+value-_emscripten_get_now())|0;setTimeout(Browser.mainLoop.runner,timeUntilNextTick)};Browser.mainLoop.method="timeout"}else if(mode==1){Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_rAF(){Browser.requestAnimationFrame(Browser.mainLoop.runner)};Browser.mainLoop.method="rAF"}else if(mode==2){if(typeof setImmediate=="undefined"){var setImmediates=[];var emscriptenMainLoopMessageId="setimmediate";var Browser_setImmediate_messageHandler=event=>{if(event.data===emscriptenMainLoopMessageId||event.data.target===emscriptenMainLoopMessageId){event.stopPropagation();setImmediates.shift()()}};addEventListener("message",Browser_setImmediate_messageHandler,true);setImmediate=function Browser_emulated_setImmediate(func){setImmediates.push(func);if(ENVIRONMENT_IS_WORKER){if(Module["setImmediates"]===undefined)Module["setImmediates"]=[];Module["setImmediates"].push(func);postMessage({target:emscriptenMainLoopMessageId})}else postMessage(emscriptenMainLoopMessageId,"*")}}Browser.mainLoop.scheduler=function Browser_mainLoop_scheduler_setImmediate(){setImmediate(Browser.mainLoop.runner)};Browser.mainLoop.method="immediate"}return 0}var _emscripten_get_now;if(ENVIRONMENT_IS_NODE){global.performance=require("perf_hooks").performance}_emscripten_get_now=()=>performance.now();function setMainLoop(browserIterationFunc,fps,simulateInfiniteLoop,arg,noSetTiming){assert(!Browser.mainLoop.func,"emscripten_set_main_loop: there can only be one main loop function at once: call emscripten_cancel_main_loop to cancel the previous one before setting a new one with different parameters.");Browser.mainLoop.func=browserIterationFunc;Browser.mainLoop.arg=arg;var thisMainLoopId=Browser.mainLoop.currentlyRunningMainloop;function checkIsRunning(){if(thisMainLoopId0){var start=Date.now();var blocker=Browser.mainLoop.queue.shift();blocker.func(blocker.arg);if(Browser.mainLoop.remainingBlockers){var remaining=Browser.mainLoop.remainingBlockers;var next=remaining%1==0?remaining-1:Math.floor(remaining);if(blocker.counted){Browser.mainLoop.remainingBlockers=next}else{next=next+.5;Browser.mainLoop.remainingBlockers=(8*remaining+next)/9}}out('main loop blocker "'+blocker.name+'" took '+(Date.now()-start)+" ms");Browser.mainLoop.updateStatus();if(!checkIsRunning())return;setTimeout(Browser.mainLoop.runner,0);return}if(!checkIsRunning())return;Browser.mainLoop.currentFrameNumber=Browser.mainLoop.currentFrameNumber+1|0;if(Browser.mainLoop.timingMode==1&&Browser.mainLoop.timingValue>1&&Browser.mainLoop.currentFrameNumber%Browser.mainLoop.timingValue!=0){Browser.mainLoop.scheduler();return}else if(Browser.mainLoop.timingMode==0){Browser.mainLoop.tickStartTime=_emscripten_get_now()}Browser.mainLoop.runIter(browserIterationFunc);if(!checkIsRunning())return;if(typeof SDL=="object"&&SDL.audio&&SDL.audio.queueNewAudioData)SDL.audio.queueNewAudioData();Browser.mainLoop.scheduler()};if(!noSetTiming){if(fps&&fps>0){_emscripten_set_main_loop_timing(0,1e3/fps)}else{_emscripten_set_main_loop_timing(1,1)}Browser.mainLoop.scheduler()}if(simulateInfiniteLoop){throw"unwind"}}function handleException(e){if(e instanceof ExitStatus||e=="unwind"){return EXITSTATUS}quit_(1,e)}function _proc_exit(code){EXITSTATUS=code;if(!keepRuntimeAlive()){if(Module["onExit"])Module["onExit"](code);ABORT=true}quit_(code,new ExitStatus(code))}function exitJS(status,implicit){EXITSTATUS=status;_proc_exit(status)}var _exit=exitJS;function maybeExit(){if(!keepRuntimeAlive()){try{_exit(EXITSTATUS)}catch(e){handleException(e)}}}function callUserCallback(func){if(ABORT){return}try{func();maybeExit()}catch(e){handleException(e)}}function safeSetTimeout(func,timeout){return setTimeout(()=>{callUserCallback(func)},timeout)}var Browser={mainLoop:{running:false,scheduler:null,method:"",currentlyRunningMainloop:0,func:null,arg:0,timingMode:0,timingValue:0,currentFrameNumber:0,queue:[],pause:function(){Browser.mainLoop.scheduler=null;Browser.mainLoop.currentlyRunningMainloop++},resume:function(){Browser.mainLoop.currentlyRunningMainloop++;var timingMode=Browser.mainLoop.timingMode;var timingValue=Browser.mainLoop.timingValue;var func=Browser.mainLoop.func;Browser.mainLoop.func=null;setMainLoop(func,0,false,Browser.mainLoop.arg,true);_emscripten_set_main_loop_timing(timingMode,timingValue);Browser.mainLoop.scheduler()},updateStatus:function(){if(Module["setStatus"]){var message=Module["statusMessage"]||"Please wait...";var remaining=Browser.mainLoop.remainingBlockers;var expected=Browser.mainLoop.expectedBlockers;if(remaining){if(remaining{assert(img.complete,"Image "+name+" could not be decoded");var canvas=document.createElement("canvas");canvas.width=img.width;canvas.height=img.height;var ctx=canvas.getContext("2d");ctx.drawImage(img,0,0);preloadedImages[name]=canvas;URL.revokeObjectURL(url);if(onload)onload(byteArray)};img.onerror=event=>{out("Image "+url+" could not be decoded");if(onerror)onerror()};img.src=url};preloadPlugins.push(imagePlugin);var audioPlugin={};audioPlugin["canHandle"]=function audioPlugin_canHandle(name){return!Module.noAudioDecoding&&name.substr(-4)in{".ogg":1,".wav":1,".mp3":1}};audioPlugin["handle"]=function audioPlugin_handle(byteArray,name,onload,onerror){var done=false;function finish(audio){if(done)return;done=true;preloadedAudios[name]=audio;if(onload)onload(byteArray)}var b=new Blob([byteArray],{type:Browser.getMimetype(name)});var url=URL.createObjectURL(b);var audio=new Audio;audio.addEventListener("canplaythrough",()=>finish(audio),false);audio.onerror=function audio_onerror(event){if(done)return;err("warning: browser could not fully decode audio "+name+", trying slower base64 approach");function encode64(data){var BASE="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/";var PAD="=";var ret="";var leftchar=0;var leftbits=0;for(var i=0;i=6){var curr=leftchar>>leftbits-6&63;leftbits-=6;ret+=BASE[curr]}}if(leftbits==2){ret+=BASE[(leftchar&3)<<4];ret+=PAD+PAD}else if(leftbits==4){ret+=BASE[(leftchar&15)<<2];ret+=PAD}return ret}audio.src="data:audio/x-"+name.substr(-3)+";base64,"+encode64(byteArray);finish(audio)};audio.src=url;safeSetTimeout(()=>{finish(audio)},1e4)};preloadPlugins.push(audioPlugin);function pointerLockChange(){Browser.pointerLock=document["pointerLockElement"]===Module["canvas"]||document["mozPointerLockElement"]===Module["canvas"]||document["webkitPointerLockElement"]===Module["canvas"]||document["msPointerLockElement"]===Module["canvas"]}var canvas=Module["canvas"];if(canvas){canvas.requestPointerLock=canvas["requestPointerLock"]||canvas["mozRequestPointerLock"]||canvas["webkitRequestPointerLock"]||canvas["msRequestPointerLock"]||(()=>{});canvas.exitPointerLock=document["exitPointerLock"]||document["mozExitPointerLock"]||document["webkitExitPointerLock"]||document["msExitPointerLock"]||(()=>{});canvas.exitPointerLock=canvas.exitPointerLock.bind(document);document.addEventListener("pointerlockchange",pointerLockChange,false);document.addEventListener("mozpointerlockchange",pointerLockChange,false);document.addEventListener("webkitpointerlockchange",pointerLockChange,false);document.addEventListener("mspointerlockchange",pointerLockChange,false);if(Module["elementPointerLock"]){canvas.addEventListener("click",ev=>{if(!Browser.pointerLock&&Module["canvas"].requestPointerLock){Module["canvas"].requestPointerLock();ev.preventDefault()}},false)}}},createContext:function(canvas,useWebGL,setInModule,webGLContextAttributes){if(useWebGL&&Module.ctx&&canvas==Module.canvas)return Module.ctx;var ctx;var contextHandle;if(useWebGL){var contextAttributes={antialias:false,alpha:false,majorVersion:2};if(webGLContextAttributes){for(var attribute in webGLContextAttributes){contextAttributes[attribute]=webGLContextAttributes[attribute]}}if(typeof GL!="undefined"){contextHandle=GL.createContext(canvas,contextAttributes);if(contextHandle){ctx=GL.getContext(contextHandle).GLctx}}}else{ctx=canvas.getContext("2d")}if(!ctx)return null;if(setInModule){if(!useWebGL)assert(typeof GLctx=="undefined","cannot set in module if GLctx is used, but we are a non-GL context that would replace it");Module.ctx=ctx;if(useWebGL)GL.makeContextCurrent(contextHandle);Module.useWebGL=useWebGL;Browser.moduleContextCreatedCallbacks.forEach(callback=>callback());Browser.init()}return ctx},destroyContext:function(canvas,useWebGL,setInModule){},fullscreenHandlersInstalled:false,lockPointer:undefined,resizeCanvas:undefined,requestFullscreen:function(lockPointer,resizeCanvas){Browser.lockPointer=lockPointer;Browser.resizeCanvas=resizeCanvas;if(typeof Browser.lockPointer=="undefined")Browser.lockPointer=true;if(typeof Browser.resizeCanvas=="undefined")Browser.resizeCanvas=false;var canvas=Module["canvas"];function fullscreenChange(){Browser.isFullscreen=false;var canvasContainer=canvas.parentNode;if((document["fullscreenElement"]||document["mozFullScreenElement"]||document["msFullscreenElement"]||document["webkitFullscreenElement"]||document["webkitCurrentFullScreenElement"])===canvasContainer){canvas.exitFullscreen=Browser.exitFullscreen;if(Browser.lockPointer)canvas.requestPointerLock();Browser.isFullscreen=true;if(Browser.resizeCanvas){Browser.setFullscreenCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}else{canvasContainer.parentNode.insertBefore(canvas,canvasContainer);canvasContainer.parentNode.removeChild(canvasContainer);if(Browser.resizeCanvas){Browser.setWindowedCanvasSize()}else{Browser.updateCanvasDimensions(canvas)}}if(Module["onFullScreen"])Module["onFullScreen"](Browser.isFullscreen);if(Module["onFullscreen"])Module["onFullscreen"](Browser.isFullscreen)}if(!Browser.fullscreenHandlersInstalled){Browser.fullscreenHandlersInstalled=true;document.addEventListener("fullscreenchange",fullscreenChange,false);document.addEventListener("mozfullscreenchange",fullscreenChange,false);document.addEventListener("webkitfullscreenchange",fullscreenChange,false);document.addEventListener("MSFullscreenChange",fullscreenChange,false)}var canvasContainer=document.createElement("div");canvas.parentNode.insertBefore(canvasContainer,canvas);canvasContainer.appendChild(canvas);canvasContainer.requestFullscreen=canvasContainer["requestFullscreen"]||canvasContainer["mozRequestFullScreen"]||canvasContainer["msRequestFullscreen"]||(canvasContainer["webkitRequestFullscreen"]?()=>canvasContainer["webkitRequestFullscreen"](Element["ALLOW_KEYBOARD_INPUT"]):null)||(canvasContainer["webkitRequestFullScreen"]?()=>canvasContainer["webkitRequestFullScreen"](Element["ALLOW_KEYBOARD_INPUT"]):null);canvasContainer.requestFullscreen()},exitFullscreen:function(){if(!Browser.isFullscreen){return false}var CFS=document["exitFullscreen"]||document["cancelFullScreen"]||document["mozCancelFullScreen"]||document["msExitFullscreen"]||document["webkitCancelFullScreen"]||(()=>{});CFS.apply(document,[]);return true},nextRAF:0,fakeRequestAnimationFrame:function(func){var now=Date.now();if(Browser.nextRAF===0){Browser.nextRAF=now+1e3/60}else{while(now+2>=Browser.nextRAF){Browser.nextRAF+=1e3/60}}var delay=Math.max(Browser.nextRAF-now,0);setTimeout(func,delay)},requestAnimationFrame:function(func){if(typeof requestAnimationFrame=="function"){requestAnimationFrame(func);return}var RAF=Browser.fakeRequestAnimationFrame;RAF(func)},safeSetTimeout:function(func,timeout){return safeSetTimeout(func,timeout)},safeRequestAnimationFrame:function(func){return Browser.requestAnimationFrame(()=>{callUserCallback(func)})},getMimetype:function(name){return{"jpg":"image/jpeg","jpeg":"image/jpeg","png":"image/png","bmp":"image/bmp","ogg":"audio/ogg","wav":"audio/wav","mp3":"audio/mpeg"}[name.substr(name.lastIndexOf(".")+1)]},getUserMedia:function(func){if(!window.getUserMedia){window.getUserMedia=navigator["getUserMedia"]||navigator["mozGetUserMedia"]}window.getUserMedia(func)},getMovementX:function(event){return event["movementX"]||event["mozMovementX"]||event["webkitMovementX"]||0},getMovementY:function(event){return event["movementY"]||event["mozMovementY"]||event["webkitMovementY"]||0},getMouseWheelDelta:function(event){var delta=0;switch(event.type){case"DOMMouseScroll":delta=event.detail/3;break;case"mousewheel":delta=event.wheelDelta/120;break;case"wheel":delta=event.deltaY;switch(event.deltaMode){case 0:delta/=100;break;case 1:delta/=3;break;case 2:delta*=80;break;default:throw"unrecognized mouse wheel delta mode: "+event.deltaMode}break;default:throw"unrecognized mouse wheel event: "+event.type}return delta},mouseX:0,mouseY:0,mouseMovementX:0,mouseMovementY:0,touches:{},lastTouches:{},calculateMouseEvent:function(event){if(Browser.pointerLock){if(event.type!="mousemove"&&"mozMovementX"in event){Browser.mouseMovementX=Browser.mouseMovementY=0}else{Browser.mouseMovementX=Browser.getMovementX(event);Browser.mouseMovementY=Browser.getMovementY(event)}if(typeof SDL!="undefined"){Browser.mouseX=SDL.mouseX+Browser.mouseMovementX;Browser.mouseY=SDL.mouseY+Browser.mouseMovementY}else{Browser.mouseX+=Browser.mouseMovementX;Browser.mouseY+=Browser.mouseMovementY}}else{var rect=Module["canvas"].getBoundingClientRect();var cw=Module["canvas"].width;var ch=Module["canvas"].height;var scrollX=typeof window.scrollX!="undefined"?window.scrollX:window.pageXOffset;var scrollY=typeof window.scrollY!="undefined"?window.scrollY:window.pageYOffset;if(event.type==="touchstart"||event.type==="touchend"||event.type==="touchmove"){var touch=event.touch;if(touch===undefined){return}var adjustedX=touch.pageX-(scrollX+rect.left);var adjustedY=touch.pageY-(scrollY+rect.top);adjustedX=adjustedX*(cw/rect.width);adjustedY=adjustedY*(ch/rect.height);var coords={x:adjustedX,y:adjustedY};if(event.type==="touchstart"){Browser.lastTouches[touch.identifier]=coords;Browser.touches[touch.identifier]=coords}else if(event.type==="touchend"||event.type==="touchmove"){var last=Browser.touches[touch.identifier];if(!last)last=coords;Browser.lastTouches[touch.identifier]=last;Browser.touches[touch.identifier]=coords}return}var x=event.pageX-(scrollX+rect.left);var y=event.pageY-(scrollY+rect.top);x=x*(cw/rect.width);y=y*(ch/rect.height);Browser.mouseMovementX=x-Browser.mouseX;Browser.mouseMovementY=y-Browser.mouseY;Browser.mouseX=x;Browser.mouseY=y}},resizeListeners:[],updateResizeListeners:function(){var canvas=Module["canvas"];Browser.resizeListeners.forEach(listener=>listener(canvas.width,canvas.height))},setCanvasSize:function(width,height,noUpdates){var canvas=Module["canvas"];Browser.updateCanvasDimensions(canvas,width,height);if(!noUpdates)Browser.updateResizeListeners()},windowedWidth:0,windowedHeight:0,setFullscreenCanvasSize:function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen>>2];flags=flags|8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module["canvas"]);Browser.updateResizeListeners()},setWindowedCanvasSize:function(){if(typeof SDL!="undefined"){var flags=HEAPU32[SDL.screen>>2];flags=flags&~8388608;HEAP32[SDL.screen>>2]=flags}Browser.updateCanvasDimensions(Module["canvas"]);Browser.updateResizeListeners()},updateCanvasDimensions:function(canvas,wNative,hNative){if(wNative&&hNative){canvas.widthNative=wNative;canvas.heightNative=hNative}else{wNative=canvas.widthNative;hNative=canvas.heightNative}var w=wNative;var h=hNative;if(Module["forcedAspectRatio"]&&Module["forcedAspectRatio"]>0){if(w/h>2];if(param==12321){var alphaSize=HEAP32[attribList+4>>2];EGL.contextAttributes.alpha=alphaSize>0}else if(param==12325){var depthSize=HEAP32[attribList+4>>2];EGL.contextAttributes.depth=depthSize>0}else if(param==12326){var stencilSize=HEAP32[attribList+4>>2];EGL.contextAttributes.stencil=stencilSize>0}else if(param==12337){var samples=HEAP32[attribList+4>>2];EGL.contextAttributes.antialias=samples>0}else if(param==12338){var samples=HEAP32[attribList+4>>2];EGL.contextAttributes.antialias=samples==1}else if(param==12544){var requestedPriority=HEAP32[attribList+4>>2];EGL.contextAttributes.lowLatency=requestedPriority!=12547}else if(param==12344){break}attribList+=8}}if((!config||!config_size)&&!numConfigs){EGL.setErrorCode(12300);return 0}if(numConfigs){HEAP32[numConfigs>>2]=1}if(config&&config_size>0){HEAP32[config>>2]=62002}EGL.setErrorCode(12288);return 1}};function _eglChooseConfig(display,attrib_list,configs,config_size,numConfigs){return EGL.chooseConfig(display,attrib_list,configs,config_size,numConfigs)}function webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(ctx){return!!(ctx.dibvbi=ctx.getExtension("WEBGL_draw_instanced_base_vertex_base_instance"))}function webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(ctx){return!!(ctx.mdibvbi=ctx.getExtension("WEBGL_multi_draw_instanced_base_vertex_base_instance"))}function webgl_enable_WEBGL_multi_draw(ctx){return!!(ctx.multiDrawWebgl=ctx.getExtension("WEBGL_multi_draw"))}var GL={counter:1,buffers:[],programs:[],framebuffers:[],renderbuffers:[],textures:[],shaders:[],vaos:[],contexts:[],offscreenCanvases:{},queries:[],samplers:[],transformFeedbacks:[],syncs:[],stringCache:{},stringiCache:{},unpackAlignment:4,recordError:function recordError(errorCode){if(!GL.lastError){GL.lastError=errorCode}},getNewId:function(table){var ret=GL.counter++;for(var i=table.length;i>2]:-1;source+=UTF8ToString(HEAP32[string+i*4>>2],len<0?undefined:len)}return source},createContext:function(canvas,webGLContextAttributes){if(!canvas.getContextSafariWebGL2Fixed){canvas.getContextSafariWebGL2Fixed=canvas.getContext;function fixedGetContext(ver,attrs){var gl=canvas.getContextSafariWebGL2Fixed(ver,attrs);return ver=="webgl"==gl instanceof WebGLRenderingContext?gl:null}canvas.getContext=fixedGetContext}var ctx=canvas.getContext("webgl2",webGLContextAttributes);if(!ctx)return 0;var handle=GL.registerContext(ctx,webGLContextAttributes);return handle},registerContext:function(ctx,webGLContextAttributes){var handle=GL.getNewId(GL.contexts);var context={handle:handle,attributes:webGLContextAttributes,version:webGLContextAttributes.majorVersion,GLctx:ctx};if(ctx.canvas)ctx.canvas.GLctxObject=context;GL.contexts[handle]=context;if(typeof webGLContextAttributes.enableExtensionsByDefault=="undefined"||webGLContextAttributes.enableExtensionsByDefault){GL.initExtensions(context)}return handle},makeContextCurrent:function(contextHandle){GL.currentContext=GL.contexts[contextHandle];Module.ctx=GLctx=GL.currentContext&&GL.currentContext.GLctx;return!(contextHandle&&!GLctx)},getContext:function(contextHandle){return GL.contexts[contextHandle]},deleteContext:function(contextHandle){if(GL.currentContext===GL.contexts[contextHandle])GL.currentContext=null;if(typeof JSEvents=="object")JSEvents.removeAllHandlersOnTarget(GL.contexts[contextHandle].GLctx.canvas);if(GL.contexts[contextHandle]&&GL.contexts[contextHandle].GLctx.canvas)GL.contexts[contextHandle].GLctx.canvas.GLctxObject=undefined;GL.contexts[contextHandle]=null},initExtensions:function(context){if(!context)context=GL.currentContext;if(context.initExtensionsDone)return;context.initExtensionsDone=true;var GLctx=context.GLctx;webgl_enable_WEBGL_draw_instanced_base_vertex_base_instance(GLctx);webgl_enable_WEBGL_multi_draw_instanced_base_vertex_base_instance(GLctx);if(context.version>=2){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query_webgl2")}if(context.version<2||!GLctx.disjointTimerQueryExt){GLctx.disjointTimerQueryExt=GLctx.getExtension("EXT_disjoint_timer_query")}webgl_enable_WEBGL_multi_draw(GLctx);var exts=GLctx.getSupportedExtensions()||[];exts.forEach(function(ext){if(!ext.includes("lose_context")&&!ext.includes("debug")){GLctx.getExtension(ext)}})}};function _eglCreateContext(display,config,hmm,contextAttribs){if(display!=62e3){EGL.setErrorCode(12296);return 0}var glesContextVersion=1;for(;;){var param=HEAP32[contextAttribs>>2];if(param==12440){glesContextVersion=HEAP32[contextAttribs+4>>2]}else if(param==12344){break}else{EGL.setErrorCode(12292);return 0}contextAttribs+=8}if(glesContextVersion<2||glesContextVersion>3){EGL.setErrorCode(12293);return 0}EGL.contextAttributes.majorVersion=glesContextVersion-1;EGL.contextAttributes.minorVersion=0;EGL.context=GL.createContext(Module["canvas"],EGL.contextAttributes);if(EGL.context!=0){EGL.setErrorCode(12288);GL.makeContextCurrent(EGL.context);Module.useWebGL=true;Browser.moduleContextCreatedCallbacks.forEach(function(callback){callback()});GL.makeContextCurrent(null);return 62004}else{EGL.setErrorCode(12297);return 0}}function _eglCreateWindowSurface(display,config,win,attrib_list){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(config!=62002){EGL.setErrorCode(12293);return 0}EGL.setErrorCode(12288);return 62006}function _eglDestroyContext(display,context){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(context!=62004){EGL.setErrorCode(12294);return 0}GL.deleteContext(EGL.context);EGL.setErrorCode(12288);if(EGL.currentContext==context){EGL.currentContext=0}return 1}function _eglDestroySurface(display,surface){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(surface!=62006){EGL.setErrorCode(12301);return 1}if(EGL.currentReadSurface==surface){EGL.currentReadSurface=0}if(EGL.currentDrawSurface==surface){EGL.currentDrawSurface=0}EGL.setErrorCode(12288);return 1}function _eglGetDisplay(nativeDisplayType){EGL.setErrorCode(12288);return 62e3}function _eglInitialize(display,majorVersion,minorVersion){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(majorVersion){HEAP32[majorVersion>>2]=1}if(minorVersion){HEAP32[minorVersion>>2]=4}EGL.defaultDisplayInitialized=true;EGL.setErrorCode(12288);return 1}function _eglMakeCurrent(display,draw,read,context){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(context!=0&&context!=62004){EGL.setErrorCode(12294);return 0}if(read!=0&&read!=62006||draw!=0&&draw!=62006){EGL.setErrorCode(12301);return 0}GL.makeContextCurrent(context?EGL.context:null);EGL.currentContext=context;EGL.currentDrawSurface=draw;EGL.currentReadSurface=read;EGL.setErrorCode(12288);return 1}function _eglSwapBuffers(dpy,surface){if(!EGL.defaultDisplayInitialized){EGL.setErrorCode(12289)}else if(!Module.ctx){EGL.setErrorCode(12290)}else if(Module.ctx.isContextLost()){EGL.setErrorCode(12302)}else{EGL.setErrorCode(12288);return 1}return 0}function _eglSwapInterval(display,interval){if(display!=62e3){EGL.setErrorCode(12296);return 0}if(interval==0)_emscripten_set_main_loop_timing(0,0);else _emscripten_set_main_loop_timing(1,interval);EGL.setErrorCode(12288);return 1}function _eglTerminate(display){if(display!=62e3){EGL.setErrorCode(12296);return 0}EGL.currentContext=0;EGL.currentReadSurface=0;EGL.currentDrawSurface=0;EGL.defaultDisplayInitialized=false;EGL.setErrorCode(12288);return 1}var readEmAsmArgsArray=[];function readEmAsmArgs(sigPtr,buf){readEmAsmArgsArray.length=0;var ch;buf>>=2;while(ch=HEAPU8[sigPtr++]){buf+=ch!=105&buf;readEmAsmArgsArray.push(ch==105?HEAP32[buf]:HEAPF64[buf++>>1]);++buf}return readEmAsmArgsArray}function runEmAsmFunction(code,sigPtr,argbuf){var args=readEmAsmArgs(sigPtr,argbuf);return ASM_CONSTS[code].apply(null,args)}function _emscripten_asm_const_int(code,sigPtr,argbuf){return runEmAsmFunction(code,sigPtr,argbuf)}function _emscripten_cancel_main_loop(){Browser.mainLoop.pause();Browser.mainLoop.func=null}function _emscripten_date_now(){return Date.now()}function _emscripten_memcpy_big(dest,src,num){HEAPU8.copyWithin(dest,src,src+num)}function getHeapMax(){return 2147483648}function emscripten_realloc_buffer(size){var b=wasmMemory.buffer;try{wasmMemory.grow(size-b.byteLength+65535>>>16);updateMemoryViews();return 1}catch(e){}}function _emscripten_resize_heap(requestedSize){var oldSize=HEAPU8.length;requestedSize=requestedSize>>>0;var maxHeapSize=getHeapMax();if(requestedSize>maxHeapSize){return false}var alignUp=(x,multiple)=>x+(multiple-x%multiple)%multiple;for(var cutDown=1;cutDown<=4;cutDown*=2){var overGrownHeapSize=oldSize*(1+.2/cutDown);overGrownHeapSize=Math.min(overGrownHeapSize,requestedSize+100663296);var newSize=Math.min(maxHeapSize,alignUp(Math.max(requestedSize,overGrownHeapSize),65536));var replacement=emscripten_realloc_buffer(newSize);if(replacement){return true}}return false}var JSEvents={inEventHandler:0,removeAllEventListeners:function(){for(var i=JSEvents.eventHandlers.length-1;i>=0;--i){JSEvents._removeHandler(i)}JSEvents.eventHandlers=[];JSEvents.deferredCalls=[]},registerRemoveEventListeners:function(){if(!JSEvents.removeEventListenersRegistered){__ATEXIT__.push(JSEvents.removeAllEventListeners);JSEvents.removeEventListenersRegistered=true}},deferredCalls:[],deferCall:function(targetFunction,precedence,argsList){function arraysHaveEqualContent(arrA,arrB){if(arrA.length!=arrB.length)return false;for(var i in arrA){if(arrA[i]!=arrB[i])return false}return true}for(var i in JSEvents.deferredCalls){var call=JSEvents.deferredCalls[i];if(call.targetFunction==targetFunction&&arraysHaveEqualContent(call.argsList,argsList)){return}}JSEvents.deferredCalls.push({targetFunction:targetFunction,precedence:precedence,argsList:argsList});JSEvents.deferredCalls.sort(function(x,y){return x.precedence2?UTF8ToString(cString):cString}var specialHTMLTargets=[0,typeof document!="undefined"?document:0,typeof window!="undefined"?window:0];function findEventTarget(target){target=maybeCStringToJsString(target);var domElement=specialHTMLTargets[target]||(typeof document!="undefined"?document.querySelector(target):undefined);return domElement}function stringToUTF8(str,outPtr,maxBytesToWrite){return stringToUTF8Array(str,HEAPU8,outPtr,maxBytesToWrite)}var wasmTableMirror=[];function getWasmTableEntry(funcPtr){var func=wasmTableMirror[funcPtr];if(!func){if(funcPtr>=wasmTableMirror.length)wasmTableMirror.length=funcPtr+1;wasmTableMirror[funcPtr]=func=wasmTable.get(funcPtr)}return func}function registerFocusEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.focusEvent)JSEvents.focusEvent=_malloc(256);var focusEventHandlerFunc=function(e=event){var nodeName=JSEvents.getNodeNameForTarget(e.target);var id=e.target.id?e.target.id:"";var focusEvent=JSEvents.focusEvent;stringToUTF8(nodeName,focusEvent+0,128);stringToUTF8(id,focusEvent+128,128);if(getWasmTableEntry(callbackfunc)(eventTypeId,focusEvent,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:focusEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_blur_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerFocusEventCallback(target,userData,useCapture,callbackfunc,12,"blur",targetThread)}function findCanvasEventTarget(target){return findEventTarget(target)}function _emscripten_set_canvas_element_size(target,width,height){var canvas=findCanvasEventTarget(target);if(!canvas)return-4;canvas.width=width;canvas.height=height;return 0}function _emscripten_set_focus_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerFocusEventCallback(target,userData,useCapture,callbackfunc,13,"focus",targetThread)}function registerKeyEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.keyEvent)JSEvents.keyEvent=_malloc(176);var keyEventHandlerFunc=function(e){var keyEventData=JSEvents.keyEvent;HEAPF64[keyEventData>>3]=e.timeStamp;var idx=keyEventData>>2;HEAP32[idx+2]=e.location;HEAP32[idx+3]=e.ctrlKey;HEAP32[idx+4]=e.shiftKey;HEAP32[idx+5]=e.altKey;HEAP32[idx+6]=e.metaKey;HEAP32[idx+7]=e.repeat;HEAP32[idx+8]=e.charCode;HEAP32[idx+9]=e.keyCode;HEAP32[idx+10]=e.which;stringToUTF8(e.key||"",keyEventData+44,32);stringToUTF8(e.code||"",keyEventData+76,32);stringToUTF8(e.char||"",keyEventData+108,32);stringToUTF8(e.locale||"",keyEventData+140,32);if(getWasmTableEntry(callbackfunc)(eventTypeId,keyEventData,userData))e.preventDefault()};var eventHandler={target:findEventTarget(target),allowsDeferredCalls:true,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:keyEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_keydown_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerKeyEventCallback(target,userData,useCapture,callbackfunc,2,"keydown",targetThread)}function _emscripten_set_keyup_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerKeyEventCallback(target,userData,useCapture,callbackfunc,3,"keyup",targetThread)}function _emscripten_set_main_loop(func,fps,simulateInfiniteLoop){var browserIterationFunc=getWasmTableEntry(func);setMainLoop(browserIterationFunc,fps,simulateInfiniteLoop)}function getBoundingClientRect(e){return specialHTMLTargets.indexOf(e)<0?e.getBoundingClientRect():{"left":0,"top":0}}function fillMouseEventData(eventStruct,e,target){HEAPF64[eventStruct>>3]=e.timeStamp;var idx=eventStruct>>2;HEAP32[idx+2]=e.screenX;HEAP32[idx+3]=e.screenY;HEAP32[idx+4]=e.clientX;HEAP32[idx+5]=e.clientY;HEAP32[idx+6]=e.ctrlKey;HEAP32[idx+7]=e.shiftKey;HEAP32[idx+8]=e.altKey;HEAP32[idx+9]=e.metaKey;HEAP16[idx*2+20]=e.button;HEAP16[idx*2+21]=e.buttons;HEAP32[idx+11]=e["movementX"];HEAP32[idx+12]=e["movementY"];var rect=getBoundingClientRect(target);HEAP32[idx+13]=e.clientX-rect.left;HEAP32[idx+14]=e.clientY-rect.top}function registerMouseEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.mouseEvent)JSEvents.mouseEvent=_malloc(72);target=findEventTarget(target);var mouseEventHandlerFunc=function(e=event){fillMouseEventData(JSEvents.mouseEvent,e,target);if(getWasmTableEntry(callbackfunc)(eventTypeId,JSEvents.mouseEvent,userData))e.preventDefault()};var eventHandler={target:target,allowsDeferredCalls:eventTypeString!="mousemove"&&eventTypeString!="mouseenter"&&eventTypeString!="mouseleave",eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:mouseEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_mousedown_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerMouseEventCallback(target,userData,useCapture,callbackfunc,5,"mousedown",targetThread)}function _emscripten_set_mousemove_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerMouseEventCallback(target,userData,useCapture,callbackfunc,8,"mousemove",targetThread)}function _emscripten_set_mouseup_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerMouseEventCallback(target,userData,useCapture,callbackfunc,6,"mouseup",targetThread)}function registerTouchEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.touchEvent)JSEvents.touchEvent=_malloc(1696);target=findEventTarget(target);var touchEventHandlerFunc=function(e){var t,touches={},et=e.touches;for(var i=0;i>3]=e.timeStamp;var idx=touchEvent>>2;HEAP32[idx+3]=e.ctrlKey;HEAP32[idx+4]=e.shiftKey;HEAP32[idx+5]=e.altKey;HEAP32[idx+6]=e.metaKey;idx+=7;var targetRect=getBoundingClientRect(target);var numTouches=0;for(var i in touches){t=touches[i];HEAP32[idx+0]=t.identifier;HEAP32[idx+1]=t.screenX;HEAP32[idx+2]=t.screenY;HEAP32[idx+3]=t.clientX;HEAP32[idx+4]=t.clientY;HEAP32[idx+5]=t.pageX;HEAP32[idx+6]=t.pageY;HEAP32[idx+7]=t.isChanged;HEAP32[idx+8]=t.onTarget;HEAP32[idx+9]=t.clientX-targetRect.left;HEAP32[idx+10]=t.clientY-targetRect.top;idx+=13;if(++numTouches>31){break}}HEAP32[touchEvent+8>>2]=numTouches;if(getWasmTableEntry(callbackfunc)(eventTypeId,touchEvent,userData))e.preventDefault()};var eventHandler={target:target,allowsDeferredCalls:eventTypeString=="touchstart"||eventTypeString=="touchend",eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:touchEventHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_touchend_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerTouchEventCallback(target,userData,useCapture,callbackfunc,23,"touchend",targetThread)}function _emscripten_set_touchmove_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerTouchEventCallback(target,userData,useCapture,callbackfunc,24,"touchmove",targetThread)}function _emscripten_set_touchstart_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){return registerTouchEventCallback(target,userData,useCapture,callbackfunc,22,"touchstart",targetThread)}function registerWheelEventCallback(target,userData,useCapture,callbackfunc,eventTypeId,eventTypeString,targetThread){if(!JSEvents.wheelEvent)JSEvents.wheelEvent=_malloc(104);var wheelHandlerFunc=function(e=event){var wheelEvent=JSEvents.wheelEvent;fillMouseEventData(wheelEvent,e,target);HEAPF64[wheelEvent+72>>3]=e["deltaX"];HEAPF64[wheelEvent+80>>3]=e["deltaY"];HEAPF64[wheelEvent+88>>3]=e["deltaZ"];HEAP32[wheelEvent+96>>2]=e["deltaMode"];if(getWasmTableEntry(callbackfunc)(eventTypeId,wheelEvent,userData))e.preventDefault()};var eventHandler={target:target,allowsDeferredCalls:true,eventTypeString:eventTypeString,callbackfunc:callbackfunc,handlerFunc:wheelHandlerFunc,useCapture:useCapture};return JSEvents.registerOrRemoveHandler(eventHandler)}function _emscripten_set_wheel_callback_on_thread(target,userData,useCapture,callbackfunc,targetThread){target=findEventTarget(target);if(!target)return-4;if(typeof target.onwheel!="undefined"){return registerWheelEventCallback(target,userData,useCapture,callbackfunc,9,"wheel",targetThread)}else{return-1}}function _emscripten_set_window_title(title){setWindowTitle(UTF8ToString(title))}var ENV={};function getExecutableName(){return thisProgram||"./this.program"}function getEnvStrings(){if(!getEnvStrings.strings){var lang=(typeof navigator=="object"&&navigator.languages&&navigator.languages[0]||"C").replace("-","_")+".UTF-8";var env={"USER":"web_user","LOGNAME":"web_user","PATH":"/","PWD":"/","HOME":"/home/web_user","LANG":lang,"_":getExecutableName()};for(var x in ENV){if(ENV[x]===undefined)delete env[x];else env[x]=ENV[x]}var strings=[];for(var x in env){strings.push(`${x}=${env[x]}`)}getEnvStrings.strings=strings}return getEnvStrings.strings}function stringToAscii(str,buffer){for(var i=0;i>0]=str.charCodeAt(i)}HEAP8[buffer>>0]=0}function _environ_get(__environ,environ_buf){var bufSize=0;getEnvStrings().forEach(function(string,i){var ptr=environ_buf+bufSize;HEAPU32[__environ+i*4>>2]=ptr;stringToAscii(string,ptr);bufSize+=string.length+1});return 0}function _environ_sizes_get(penviron_count,penviron_buf_size){var strings=getEnvStrings();HEAPU32[penviron_count>>2]=strings.length;var bufSize=0;strings.forEach(function(string){bufSize+=string.length+1});HEAPU32[penviron_buf_size>>2]=bufSize;return 0}function _fd_close(fd){try{var stream=SYSCALLS.getStreamFromFD(fd);FS.close(stream);return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function doReadv(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.read(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(curr>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function convertI32PairToI53Checked(lo,hi){return hi+2097152>>>0<4194305-!!lo?(lo>>>0)+hi*4294967296:NaN}function _fd_seek(fd,offset_low,offset_high,whence,newOffset){try{var offset=convertI32PairToI53Checked(offset_low,offset_high);if(isNaN(offset))return 61;var stream=SYSCALLS.getStreamFromFD(fd);FS.llseek(stream,offset,whence);tempI64=[stream.position>>>0,(tempDouble=stream.position,+Math.abs(tempDouble)>=1?tempDouble>0?+Math.floor(tempDouble/4294967296)>>>0:~~+Math.ceil((tempDouble-+(~~tempDouble>>>0))/4294967296)>>>0:0)],HEAP32[newOffset>>2]=tempI64[0],HEAP32[newOffset+4>>2]=tempI64[1];if(stream.getdents&&offset===0&&whence===0)stream.getdents=null;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function doWritev(stream,iov,iovcnt,offset){var ret=0;for(var i=0;i>2];var len=HEAPU32[iov+4>>2];iov+=8;var curr=FS.write(stream,HEAP8,ptr,len,offset);if(curr<0)return-1;ret+=curr;if(typeof offset!=="undefined"){offset+=curr}}return ret}function _fd_write(fd,iov,iovcnt,pnum){try{var stream=SYSCALLS.getStreamFromFD(fd);var num=doWritev(stream,iov,iovcnt);HEAPU32[pnum>>2]=num;return 0}catch(e){if(typeof FS=="undefined"||!(e.name==="ErrnoError"))throw e;return e.errno}}function _glAttachShader(program,shader){GLctx.attachShader(GL.programs[program],GL.shaders[shader])}function _glBindBuffer(target,buffer){if(target==35051){GLctx.currentPixelPackBufferBinding=buffer}else if(target==35052){GLctx.currentPixelUnpackBufferBinding=buffer}GLctx.bindBuffer(target,GL.buffers[buffer])}function _glBindTexture(target,texture){GLctx.bindTexture(target,GL.textures[texture])}function _glBindVertexArray(vao){GLctx.bindVertexArray(GL.vaos[vao])}var _glBindVertexArrayOES=_glBindVertexArray;function _glBlendFunc(x0,x1){GLctx.blendFunc(x0,x1)}function _glBufferData(target,size,data,usage){if(true){if(data&&size){GLctx.bufferData(target,HEAPU8,usage,data,size)}else{GLctx.bufferData(target,size,usage)}}else{GLctx.bufferData(target,data?HEAPU8.subarray(data,data+size):size,usage)}}function _glClear(x0){GLctx.clear(x0)}function _glClearColor(x0,x1,x2,x3){GLctx.clearColor(x0,x1,x2,x3)}function _glCompileShader(shader){GLctx.compileShader(GL.shaders[shader])}function _glCreateProgram(){var id=GL.getNewId(GL.programs);var program=GLctx.createProgram();program.name=id;program.maxUniformLength=program.maxAttributeLength=program.maxUniformBlockNameLength=0;program.uniformIdCounter=1;GL.programs[id]=program;return id}function _glCreateShader(shaderType){var id=GL.getNewId(GL.shaders);GL.shaders[id]=GLctx.createShader(shaderType);return id}function _glDeleteProgram(id){if(!id)return;var program=GL.programs[id];if(!program){GL.recordError(1281);return}GLctx.deleteProgram(program);program.name=0;GL.programs[id]=null}function _glDeleteShader(id){if(!id)return;var shader=GL.shaders[id];if(!shader){GL.recordError(1281);return}GLctx.deleteShader(shader);GL.shaders[id]=null}function _glDeleteTextures(n,textures){for(var i=0;i>2];var texture=GL.textures[id];if(!texture)continue;GLctx.deleteTexture(texture);texture.name=0;GL.textures[id]=null}}function _glDrawArrays(mode,first,count){GLctx.drawArrays(mode,first,count)}function _glEnable(x0){GLctx.enable(x0)}function _glEnableVertexAttribArray(index){GLctx.enableVertexAttribArray(index)}function __glGenObject(n,buffers,createFunction,objectTable){for(var i=0;i>2]=id}}function _glGenBuffers(n,buffers){__glGenObject(n,buffers,"createBuffer",GL.buffers)}function _glGenTextures(n,textures){__glGenObject(n,textures,"createTexture",GL.textures)}function _glGenVertexArrays(n,arrays){__glGenObject(n,arrays,"createVertexArray",GL.vaos)}var _glGenVertexArraysOES=_glGenVertexArrays;function _glGetShaderInfoLog(shader,maxLength,length,infoLog){var log=GLctx.getShaderInfoLog(GL.shaders[shader]);if(log===null)log="(unknown error)";var numBytesWrittenExclNull=maxLength>0&&infoLog?stringToUTF8(log,infoLog,maxLength):0;if(length)HEAP32[length>>2]=numBytesWrittenExclNull}function _glLinkProgram(program){program=GL.programs[program];GLctx.linkProgram(program);program.uniformLocsById=0;program.uniformSizeAndIdsByName={}}function computeUnpackAlignedImageSize(width,height,sizePerPixel,alignment){function roundedToNextMultipleOf(x,y){return x+y-1&-y}var plainRowSize=width*sizePerPixel;var alignedRowSize=roundedToNextMultipleOf(plainRowSize,alignment);return height*alignedRowSize}function colorChannelsInGlTextureFormat(format){var colorChannels={5:3,6:4,8:2,29502:3,29504:4,26917:2,26918:2,29846:3,29847:4};return colorChannels[format-6402]||1}function heapObjectForWebGLType(type){type-=5120;if(type==0)return HEAP8;if(type==1)return HEAPU8;if(type==2)return HEAP16;if(type==4)return HEAP32;if(type==6)return HEAPF32;if(type==5||type==28922||type==28520||type==30779||type==30782)return HEAPU32;return HEAPU16}function heapAccessShiftForWebGLHeap(heap){return 31-Math.clz32(heap.BYTES_PER_ELEMENT)}function emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat){var heap=heapObjectForWebGLType(type);var shift=heapAccessShiftForWebGLHeap(heap);var byteSize=1<>shift,pixels+bytes>>shift)}function _glReadPixels(x,y,width,height,format,type,pixels){if(true){if(GLctx.currentPixelPackBufferBinding){GLctx.readPixels(x,y,width,height,format,type,pixels)}else{var heap=heapObjectForWebGLType(type);GLctx.readPixels(x,y,width,height,format,type,heap,pixels>>heapAccessShiftForWebGLHeap(heap))}return}var pixelData=emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,format);if(!pixelData){GL.recordError(1280);return}GLctx.readPixels(x,y,width,height,format,type,pixelData)}function _glShaderSource(shader,count,string,length){var source=GL.getSource(shader,count,string,length);GLctx.shaderSource(GL.shaders[shader],source)}function _glTexImage2D(target,level,internalFormat,width,height,border,format,type,pixels){if(true){if(GLctx.currentPixelUnpackBufferBinding){GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels)}else if(pixels){var heap=heapObjectForWebGLType(type);GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,heap,pixels>>heapAccessShiftForWebGLHeap(heap))}else{GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,null)}return}GLctx.texImage2D(target,level,internalFormat,width,height,border,format,type,pixels?emscriptenWebGLGetTexPixelData(type,format,width,height,pixels,internalFormat):null)}function _glTexParameteri(x0,x1,x2){GLctx.texParameteri(x0,x1,x2)}function _glUseProgram(program){program=GL.programs[program];GLctx.useProgram(program);GLctx.currentProgram=program}function _glVertexAttribPointer(index,size,type,normalized,stride,ptr){GLctx.vertexAttribPointer(index,size,type,!!normalized,stride,ptr)}function _glViewport(x0,x1,x2,x3){GLctx.viewport(x0,x1,x2,x3)}function isLeapYear(year){return year%4===0&&(year%100!==0||year%400===0)}function arraySum(array,index){var sum=0;for(var i=0;i<=index;sum+=array[i++]){}return sum}var MONTH_DAYS_LEAP=[31,29,31,30,31,30,31,31,30,31,30,31];var MONTH_DAYS_REGULAR=[31,28,31,30,31,30,31,31,30,31,30,31];function addDays(date,days){var newDate=new Date(date.getTime());while(days>0){var leap=isLeapYear(newDate.getFullYear());var currentMonth=newDate.getMonth();var daysInCurrentMonth=(leap?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR)[currentMonth];if(days>daysInCurrentMonth-newDate.getDate()){days-=daysInCurrentMonth-newDate.getDate()+1;newDate.setDate(1);if(currentMonth<11){newDate.setMonth(currentMonth+1)}else{newDate.setMonth(0);newDate.setFullYear(newDate.getFullYear()+1)}}else{newDate.setDate(newDate.getDate()+days);return newDate}}return newDate}function writeArrayToMemory(array,buffer){HEAP8.set(array,buffer)}function _strftime(s,maxsize,format,tm){var tm_zone=HEAP32[tm+40>>2];var date={tm_sec:HEAP32[tm>>2],tm_min:HEAP32[tm+4>>2],tm_hour:HEAP32[tm+8>>2],tm_mday:HEAP32[tm+12>>2],tm_mon:HEAP32[tm+16>>2],tm_year:HEAP32[tm+20>>2],tm_wday:HEAP32[tm+24>>2],tm_yday:HEAP32[tm+28>>2],tm_isdst:HEAP32[tm+32>>2],tm_gmtoff:HEAP32[tm+36>>2],tm_zone:tm_zone?UTF8ToString(tm_zone):""};var pattern=UTF8ToString(format);var EXPANSION_RULES_1={"%c":"%a %b %d %H:%M:%S %Y","%D":"%m/%d/%y","%F":"%Y-%m-%d","%h":"%b","%r":"%I:%M:%S %p","%R":"%H:%M","%T":"%H:%M:%S","%x":"%m/%d/%y","%X":"%H:%M:%S","%Ec":"%c","%EC":"%C","%Ex":"%m/%d/%y","%EX":"%H:%M:%S","%Ey":"%y","%EY":"%Y","%Od":"%d","%Oe":"%e","%OH":"%H","%OI":"%I","%Om":"%m","%OM":"%M","%OS":"%S","%Ou":"%u","%OU":"%U","%OV":"%V","%Ow":"%w","%OW":"%W","%Oy":"%y"};for(var rule in EXPANSION_RULES_1){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_1[rule])}var WEEKDAYS=["Sunday","Monday","Tuesday","Wednesday","Thursday","Friday","Saturday"];var MONTHS=["January","February","March","April","May","June","July","August","September","October","November","December"];function leadingSomething(value,digits,character){var str=typeof value=="number"?value.toString():value||"";while(str.length0?1:0}var compare;if((compare=sgn(date1.getFullYear()-date2.getFullYear()))===0){if((compare=sgn(date1.getMonth()-date2.getMonth()))===0){compare=sgn(date1.getDate()-date2.getDate())}}return compare}function getFirstWeekStartDate(janFourth){switch(janFourth.getDay()){case 0:return new Date(janFourth.getFullYear()-1,11,29);case 1:return janFourth;case 2:return new Date(janFourth.getFullYear(),0,3);case 3:return new Date(janFourth.getFullYear(),0,2);case 4:return new Date(janFourth.getFullYear(),0,1);case 5:return new Date(janFourth.getFullYear()-1,11,31);case 6:return new Date(janFourth.getFullYear()-1,11,30)}}function getWeekBasedYear(date){var thisDate=addDays(new Date(date.tm_year+1900,0,1),date.tm_yday);var janFourthThisYear=new Date(thisDate.getFullYear(),0,4);var janFourthNextYear=new Date(thisDate.getFullYear()+1,0,4);var firstWeekStartThisYear=getFirstWeekStartDate(janFourthThisYear);var firstWeekStartNextYear=getFirstWeekStartDate(janFourthNextYear);if(compareByDay(firstWeekStartThisYear,thisDate)<=0){if(compareByDay(firstWeekStartNextYear,thisDate)<=0){return thisDate.getFullYear()+1}return thisDate.getFullYear()}return thisDate.getFullYear()-1}var EXPANSION_RULES_2={"%a":function(date){return WEEKDAYS[date.tm_wday].substring(0,3)},"%A":function(date){return WEEKDAYS[date.tm_wday]},"%b":function(date){return MONTHS[date.tm_mon].substring(0,3)},"%B":function(date){return MONTHS[date.tm_mon]},"%C":function(date){var year=date.tm_year+1900;return leadingNulls(year/100|0,2)},"%d":function(date){return leadingNulls(date.tm_mday,2)},"%e":function(date){return leadingSomething(date.tm_mday,2," ")},"%g":function(date){return getWeekBasedYear(date).toString().substring(2)},"%G":function(date){return getWeekBasedYear(date)},"%H":function(date){return leadingNulls(date.tm_hour,2)},"%I":function(date){var twelveHour=date.tm_hour;if(twelveHour==0)twelveHour=12;else if(twelveHour>12)twelveHour-=12;return leadingNulls(twelveHour,2)},"%j":function(date){return leadingNulls(date.tm_mday+arraySum(isLeapYear(date.tm_year+1900)?MONTH_DAYS_LEAP:MONTH_DAYS_REGULAR,date.tm_mon-1),3)},"%m":function(date){return leadingNulls(date.tm_mon+1,2)},"%M":function(date){return leadingNulls(date.tm_min,2)},"%n":function(){return"\n"},"%p":function(date){if(date.tm_hour>=0&&date.tm_hour<12){return"AM"}return"PM"},"%S":function(date){return leadingNulls(date.tm_sec,2)},"%t":function(){return"\t"},"%u":function(date){return date.tm_wday||7},"%U":function(date){var days=date.tm_yday+7-date.tm_wday;return leadingNulls(Math.floor(days/7),2)},"%V":function(date){var val=Math.floor((date.tm_yday+7-(date.tm_wday+6)%7)/7);if((date.tm_wday+371-date.tm_yday-2)%7<=2){val++}if(!val){val=52;var dec31=(date.tm_wday+7-date.tm_yday-1)%7;if(dec31==4||dec31==5&&isLeapYear(date.tm_year%400-1)){val++}}else if(val==53){var jan1=(date.tm_wday+371-date.tm_yday)%7;if(jan1!=4&&(jan1!=3||!isLeapYear(date.tm_year)))val=1}return leadingNulls(val,2)},"%w":function(date){return date.tm_wday},"%W":function(date){var days=date.tm_yday+7-(date.tm_wday+6)%7;return leadingNulls(Math.floor(days/7),2)},"%y":function(date){return(date.tm_year+1900).toString().substring(2)},"%Y":function(date){return date.tm_year+1900},"%z":function(date){var off=date.tm_gmtoff;var ahead=off>=0;off=Math.abs(off)/60;off=off/60*100+off%60;return(ahead?"+":"-")+String("0000"+off).slice(-4)},"%Z":function(date){return date.tm_zone},"%%":function(){return"%"}};pattern=pattern.replace(/%%/g,"\0\0");for(var rule in EXPANSION_RULES_2){if(pattern.includes(rule)){pattern=pattern.replace(new RegExp(rule,"g"),EXPANSION_RULES_2[rule](date))}}pattern=pattern.replace(/\0\0/g,"%");var bytes=intArrayFromString(pattern,false);if(bytes.length>maxsize){return 0}writeArrayToMemory(bytes,s);return bytes.length-1}function _strftime_l(s,maxsize,format,tm,loc){return _strftime(s,maxsize,format,tm)}var FSNode=function(parent,name,mode,rdev){if(!parent){parent=this}this.parent=parent;this.mount=parent.mount;this.mounted=null;this.id=FS.nextInode++;this.name=name;this.mode=mode;this.node_ops={};this.stream_ops={};this.rdev=rdev};var readMode=292|73;var writeMode=146;Object.defineProperties(FSNode.prototype,{read:{get:function(){return(this.mode&readMode)===readMode},set:function(val){val?this.mode|=readMode:this.mode&=~readMode}},write:{get:function(){return(this.mode&writeMode)===writeMode},set:function(val){val?this.mode|=writeMode:this.mode&=~writeMode}},isFolder:{get:function(){return FS.isDir(this.mode)}},isDevice:{get:function(){return FS.isChrdev(this.mode)}}});FS.FSNode=FSNode;FS.createPreloadedFile=FS_createPreloadedFile;FS.staticInit();Module["FS_createPath"]=FS.createPath;Module["FS_createDataFile"]=FS.createDataFile;Module["FS_createPreloadedFile"]=FS.createPreloadedFile;Module["FS_unlink"]=FS.unlink;Module["FS_createLazyFile"]=FS.createLazyFile;Module["FS_createDevice"]=FS.createDevice;Module["requestFullscreen"]=function Module_requestFullscreen(lockPointer,resizeCanvas){Browser.requestFullscreen(lockPointer,resizeCanvas)};Module["requestAnimationFrame"]=function Module_requestAnimationFrame(func){Browser.requestAnimationFrame(func)};Module["setCanvasSize"]=function Module_setCanvasSize(width,height,noUpdates){Browser.setCanvasSize(width,height,noUpdates)};Module["pauseMainLoop"]=function Module_pauseMainLoop(){Browser.mainLoop.pause()};Module["resumeMainLoop"]=function Module_resumeMainLoop(){Browser.mainLoop.resume()};Module["getUserMedia"]=function Module_getUserMedia(){Browser.getUserMedia()};Module["createContext"]=function Module_createContext(canvas,useWebGL,setInModule,webGLContextAttributes){return Browser.createContext(canvas,useWebGL,setInModule,webGLContextAttributes)};var preloadedImages={};var preloadedAudios={};var GLctx;var decodeBase64=typeof atob=="function"?atob:function(input){var keyStr="ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=";var output="";var chr1,chr2,chr3;var enc1,enc2,enc3,enc4;var i=0;input=input.replace(/[^A-Za-z0-9\+\/\=]/g,"");do{enc1=keyStr.indexOf(input.charAt(i++));enc2=keyStr.indexOf(input.charAt(i++));enc3=keyStr.indexOf(input.charAt(i++));enc4=keyStr.indexOf(input.charAt(i++));chr1=enc1<<2|enc2>>4;chr2=(enc2&15)<<4|enc3>>2;chr3=(enc3&3)<<6|enc4;output=output+String.fromCharCode(chr1);if(enc3!==64){output=output+String.fromCharCode(chr2)}if(enc4!==64){output=output+String.fromCharCode(chr3)}}while(i0){return}preRun();if(runDependencies>0){return}function doRun(){if(calledRun)return;calledRun=true;Module["calledRun"]=true;if(ABORT)return;initRuntime();preMain();if(Module["onRuntimeInitialized"])Module["onRuntimeInitialized"]();if(shouldRunNow)callMain();postRun()}if(Module["setStatus"]){Module["setStatus"]("Running...");setTimeout(function(){setTimeout(function(){Module["setStatus"]("")},1);doRun()},1)}else{doRun()}}if(Module["preInit"]){if(typeof Module["preInit"]=="function")Module["preInit"]=[Module["preInit"]];while(Module["preInit"].length>0){Module["preInit"].pop()()}}var shouldRunNow=true;if(Module["noInitialRun"])shouldRunNow=false;run(); diff --git a/Crawler/pge.wasm b/Crawler/pge.wasm index 36b2190413699d5f204ce10bdeebc55eb1ec5dac..7131773dc5efec2985ebef593bb60b3ff0e01eaf 100644 GIT binary patch delta 168736 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 I67b>w03MO1@&Et; delta 164498 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 xO-^2;TV`P5R9t4-zK7`sVxi`E9YMuA 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