-
Notifications
You must be signed in to change notification settings - Fork 0
/
rathegame_150223.html
80 lines (80 loc) · 137 KB
/
rathegame_150223.html
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, minimum-scale=1, maximum-scale=1, user-scalable=no">
<meta name="generator" content="WASM-4 2.4.0">
<script id="wasm4-disk-prefix" type="text/plain">WASM-4 Game</script>
<title>WASM-4 Game</title>
<style>html,body{height:100%;margin:0}@font-face{font-family:wasm4-font;src:url(data:font/woff2;base64,d09GMgABAAAAAAegAA0AAAAAKHwAAAdOAAEAAAAAAAAAAAAAAAAAAAAAAAAAAAAAGhYGYAA0CAQRCArGHLlRC4FCAAE2AiQDgUIEIAWDJgcgG4ggUVRQhkQRbBylAWCR/eGAmzBgcbVSEQV1MFRs8Ts/TVirjdcmzZum+foZqYGq4TdA2FbzSDx8f5+ee7Ns74fim/BWoE4AP1Wwc6lakA20VO54RMrR2gpfsF97s/P3xKMD8UIkBZNFk2ondPz/n9v9G4ROvGcJ9ejaJw8RK4kYUOt8zO4KgUDgofBQGDwMCjsf2FAHKMuSxfQKGICKTqpw8TAYfHywFNs02zbbJDAgUAD+z7l4byADjcSJjXhAkX+V15z5PA0HfmEHdHqW5OfXT1PsVLlV5AkPgm14EPW/1ds0nWuhRkHhmb/7JBfdZazTpbTGMrxynHPs9XO634fF7LHGGYvKrld7xSsgpTyfJqABJJGiNEP0JXXyPy/gUd+Oq0QckHKAEocXne/KDv7oOwSG0MMrDDRgQ0HCAFZ0Ar7LFhgi+t39/2Lzv/+fFLDLD/G/EugBH+CBbj+wXA/giv6ofkm3ZAqiNhrXlgkd4AIQwJg18/ES0QEKIZXedNDpbH9FmDzLD3D97q2rzT3TRXdngPKMRazVYXWiUtlpVnZTprWt4J6wbQiLK7o/u+vhZr91OWHc2/gH+Qyq505NGWB7ui1DWkl94VWLPsznaf1Socl++32X0B1fLASbyLYi6TAO6LlJoPwXg5YAIDQZ2GxXd7yaLzKdTNrAjkIbD1Sca4fUrWmNr+IUViUJVbuuu66KDZXmnH4fMCQ5ukPCRJDdgit52b4Et5RuCK2ZjuBXWu6K6zJkW4qAxA6Y0BWJpS9UgZPLQ3iSuQWAodKrD1VK44bhgApzKGely9pyBS45qWsGAx7ELrGRNkqZX2rpG1no3KgrF9zv29HXdcAmEYpTeqXQunmcM1KNLri1l3ETKhr/jkuZpYQWCtMUkAOA+G31Ezc8TlQCcX0AFiJM8A/Ja5ANNF3s+Aj1HaR91PPZwCslbEBH81Bta7KBGjhAdpteqxIHxKrVrglxhbYG0qRrxPwYd+RA3LtpvfDZhqQKKExdOI4SSCr8hboPCCdUxuYcsLQ2TWw8XO+W8S8kg28tTsGhGLgAGRwq7qpSd5XiJn8+0m7km8BBpAhQ5rqdtpQ58nsk6UVIA1DbFmX+klm8NFI+mk+Ll5BXDAY1ZsGRNeDGIUiLnIISx8u1n++kPlx5KbJLJOSiIDP1dfY4drhKlPE7oTwc9gEI5vBFDpQ2ih/QCB4V+GrFeAMbdFltBSpSqZm9jTuVVM1CVTyG+Haj1uZhNOXIU0xda+WccPIV0vAyy13AXHS7odKqX6lPnNQW29uptFF7hjud+bei1obGQ3mmpvE7YI+21Nlt7iq+tVb3XTcUFG5q31u2uVI1qvk971yZ+/NvzpZV1dNa7Wrems+vXZ7G0bjYrBMdM44xvrdfytxyouoAmPMIUnc0H1njzFfrgVdARZ2VnWXVw+0qv/fX8iYj698zzrSTOlorbpYF7dsMJFE7yW5kV/NV/wwJ/6VW+S3vk6u7s/frQR4kpi7JSQUksyJhl0BSNPS65eUmD+i8UGEYHhd5zmQA0oU5xN+qs8fdwfJZAQaqNDFTgSowOASAVTi4nNRD5CwJVyFK13cHxDEeWVQDvZU3CfsgXuwhIGxxAGE3sxM1QNCL5oTRpAtVec0/pJXNfeLQLO+973quQzeYBhK7GMFx18+4DtE1AX90lFeaawcfPwKbh9CZncWGRig514Ca6r5aIcMk1u7R7OyRfIjVldpkv/8QTig8xMfDoNqXMmPq6rWqoKMWvmXNIhNcLI1TokIhQLNwOGTfZxXWtBtNJFOwSQNl+3DGVwiBVU4+Oq0FeJi5E8VTE1ABD05R60ZWTc49DS4M1nMCCzmZSm7M8UWDSoiGvZPrWrGYd4bKvbh8oXu1Pnv2vrfKud0bz5t2kT7Ti8FNP4L9IJy/PdAULtKZAlxz2FahwUZvcI6aZm61UI4qEJ3XUpHb3NZcIBs7HYrbHf7GgFYvCv4JTMlVK5o9e10zmwVpEoUbhD8pWxVbCX6xdKM4RGTiZ/2PaYEZMh7uAHi1vTTwNaeeqsmWeoX+fERAY8Dlq8IlZUVTrzi35D7ANkN8liq6UConAkh2mBUCA+jNZ4cnuXvJDuFGvEUlaWfzT5MjGonslkNYRjXtmwJEQgbrm1xCr4/AZMWbVPGZ3SvOH9q/AaXqXNGRhP+VuL2mvmu8/zv9BnB5l14cMu1MBSJ04++6QDnTv1bPp6oZnRul1ORTFVkMUlS1LsSh2h2L41VW44wWXcvRhJYwoLfn7pCnX7rB3Zs4otOwC568tbQs/egw8kfbjvhpM06nOc/rWqbg7EicnAydmY7O4nomxNHJws4WxYXFJFGl55716GhGRqqjKI9kp3x0+aiPQqzthaSFKiR6LmZAzFysLXdGb3rZfIi6TEU7jgcy2geINtNWQpaBCnYWTmxqWDw0wzgfrJvzphPhoIstcvGIzuZO4UN1requPbF1HWhqLtgPf3YiwnTA/xIgKAA=)}
</style>
</head>
<body>
<script id="wasm4-cart-json" type="application/json">{"WASM4_CART":"0ax}=0rr910xQP}0E>8S0!kX1u<RsjE$8@$E$8}Fu<7$eE$4Da0!kX2E{-lRu&$[dE/U4b1aL/I0ak$WE$8@$00lse17=v[25N{*z/Qa80rAi6wO#U{BAg/1wDhYjwO#U}BAg/1wO7]y17=v[2v.H-Bw)r>00imlzGVe8z/fa^0%raLB{hz<B8b$11oSjMB{hz<B8b^@1oPIU1Qb5l2l$nm2m7zi1Qbbm1Qb2h2NyCl1o!*B0rAi92MYzQl7)/H3Km^R3TWQ=x([5$y?Xib00&:HByxii01]GUAaAy0wDiCJ0s5%(qwYDn3L0e5^9hUU070*(@0JGj2MLA<FpJdI3*d-}1B*Fr0ZD/LaoB?Koap>z0yl*cmgxnu0.0L0aoiI+eDt=i001byl4rR)10vOf0CS+Xaos+ey9A*E193:s0W4Ol4fvTLaos4]0xHhYaoB&Ty9rW406{W3aP@[*k($^B1WJlgmgxqv14rU2aoiI+eDt&k00jnAl49F>10vOf18n$Zaos+gy9A*E193:s0W4Ol4fvTLaos4]13cz:aoB&Ry9rW406{:5aP@[*k)g{C1Q>CuaoiI+aoIDF001bw4*%GYaP&?!aP@[*aQ5kPkMTg[1vicfa{5hN0ZD/LaoK[vpyNpD10EZO0sF@]aoK]Gy9AZB5oecVaoS!<dfoGd0STtCao:g}2Sz!<aoT$wy9rZ51WJYmaQ5$&aP&8{0ZNw?4fdHMaP.:haoS!<dfoGd0STtCao:g}2Sz!<aoS!<dfp5t0UuESao:g}7=IHkaoT$My9rZ51WKnCaQ5$&l11BK0ZNt&4fc+z0ZE>fk)RE04fdHNao:g}05<@Vao+4py9r:61virdaP@eOkP*a]1Au<t03zy!1T<ALhuA>31WJoaaQ5$>k)g{C1pCn@aoB?gAyyrpaoS!<f8$#l001bAk($^A1rW>l0+@>Z3M]Hp0DyKq0u.H/1UxYOiSGd501PCskMTgLkMTgLkP*d{aw01x0ZD/LaoB&Uy7psF009rjaoS!<c&%xg001bAao+4jya68.huA}51rW>l25kN/05<@-aoT$yy9rT31WJ=oaPT>saQf4)k[mST0rsnDk[k4u3<c>W1rW<@0SUmY03zy!1WJf7c&:l90S:zDao+4myafb.hV:d91viSmaP-+&k[N&P0ymer1%s7n4qEo>03IIi4<q2-0T/5{0ZE>gk[F2B03zy/0W4T&0sO#paoS!<eDt=i001bAao:d[0x6]UaoS!<df6Jg00KFFao:y#4lBL0aoS!<eDuqx01QgPk[E=O0W4Uj5nAu?3M]Kq2YQpP3<c>W1rW<@0STzCiSGd51rW+i5oZ8m0W4Q*0ZN9niSGg61rW>l18oj:05:(XaoS!<k)IcN001}V2oTdn6kwV(ao+4Ay9rQz4<qc11WJVlc&:k<1WJOv0$cjOao(N61VuzZ3M]G[0vX0GhVJ?20ZN9baP-+!k)RiG0sF@]aoK[jAyyrpaoAU^c&:l9001byk)g{C0W4If1zP7X3J-No13)0dmgxkt0W4H%0027X03zte0+@>Waos+fy9rP=aoK[gAyyrpaoAU^eDt=i000xH01jwV0rEWoZ<WBe0ZD&MaoL4w0rLIe13$qWGmA@pc&%xq4fdHMk[4GK0$khr3M]Kq/uY810brRTiSGd513$qWGmA@pk(&>B03zwf/3w#00bs!1iSGd513$F-GmA@paosI603zwf!x-+$0brRRiSGc<3QHY!FpERhFpJf201gZ=leZ7wFb*X(5r8c&Fb?)d^1u&Gaor4jFpJdIleZaxFb*X[5r8c&Fb?>nk(<1D^9Et{01g**0E>eoaoj?t00ky/kP*7V001hAmgxnu03zt7001bxk(>Zz0u.wd0CS+T3&*UyaojXciSGc/3N+#RkTtx40mo5AFb*2UaoiI+aoAajFpJdI4*$V6k(-}C^9Et{01kR90rN-}FpJf206}fia{f9vFpJdI0ZD/LaojZxE}?pH0Dyyyoap>z0u.wd0^2Q^leqx*Fb<sj0STzEhuA>30W4Fe&qwaQ0br[-03zzWhuA<\u00210sF@]aojZ1E}?pH0Dyyyoap>z0u.wd0^2Q^lb-XKFb<sj0STzEhuA>30W4Fe:OZNs0br[-03zzWhuA<\u00210sF@]aojY7yc?>2Ax%[74fdHKaojXeBrQYJ[CW@*0br[-03RL70STtAaoj.1@^YI0ya6b-aoVEr0SSSf3J-M{kMTgLkMTg[06$1c4GV.k01e&[0ZD/LaojYby7psE1{1YiaojXPmHYCx06@?t4fW<Plac?M0STtAk)f7E01o5taos^i0Yy8WaoB?ghuA<\u00211Q=BNl9QFH0STtAk)61D01n#raos^n0Yy8WaoB?ghuA<\u00210$cjLlaNaQ0STtAk)61D01n]paos+dhuA>30ZM(C0SSSf3M]Eo05:(UaoB?ehuA>310vO40SUJJ{jdU[aoJgaFpJdI3M]Kq5nAFvFpJdI3?sr01aILCFpJdIk[E/Q1TFRGFpER3kP*g#4feV]aQf4?aP}<i13^$ieDt+{2sP75ao$gHBu{:^ao+4ty9iWC2X<{hFpJdIaoT$hy9rZ51T<ATao(N71}gFt3M]D)25tv.3J-M}kP*4U001hCmgxnu1WJbD0T{gPk(-!A2TFIn1{d4j1vje14fdHNk]sYf7<c@8k[4GJ1WJAe5rqo>Fb?>naoKXa6HyWNFpERx0u.B^1T<ATa{Hssao:d{3{:>VFcndr5q2B.Fb/%106{T2aPJR?aouj20sO@o3M]Qs5nAFvFpJdI3+VMw0!hCBFpJdIk[E/Q1seIFFpERx1rW!80T{gOaoBC52P%l)0x6#ZaoS!!huA>A{vS@^03zyQFQ&o306%B81P*{<kM:m]1W@>30ZE>il6fxAFb<sj0SUT#03zCh3#c{?3&{.zao+60=vZSEy9iQt001bBl6Y-FFb<sb0Y*qYao+5}=vZSEy9iKr001bBl6fxAFb<sb05:(U3&{-4-qk1m01:WhFpERcaoT$wy9XsWFpERcZYTT603zn10[tFEFb/Toaoj?t00ky!kMTgLkP*4P0SUJoy7pEG0rJu90%nVl0ZG3KeDAf9GmA}/0y)O0ldUTTFb?)l{KE+]ldkKUFb*duFpJdI4*@C70ZD/L0ZD/Laoi$[2O41r0rJua2N-}/])?L)lfO2)Fb?)w{<^>{5q#6?Fb*X(k(<1D2Odqe?1lbE072ceFpER=?1(LK01+6sFpERx06{VE00<8yaojXfiSGBK06{PC0mo5AFb?>nk(-!A!xJR@01PD6}T/q*072#CFpER=?1(LK01+6sFpERx06{-G00<8yaojXfiSGBK06{PC0mo5AFb?>nk(-!A!xJR@01PCskMTgLkMTg[04!fR4G(+j0S@Sml7)?1Fb?(}]NIC(l5tn=Fb*dsFpJdIaojXdiSGA@3QKHTFpER=-p[!j070sMFpERhI?3td03znc0Y*q!4*$XK{jdU[laDJpFb?)?}g9$}5q#6?Fb*X(k)6dF2Odp=06{PC00><<k(-}C^9Et{06{PJ05:]d=4yJD4*$Xb]NIC(5p/pYFb/Tok(-Fp^9Et{07vs%k(:gJiSNKMGmA}j3J-NV04!hT^sV@H4feXK{<^>{leqr!Fb?)<}HB7@5q#6?Fb?>nk(<1DW9:IR01PD6P7)?^072ApFpER=?1(LK01+6sFpER=06{PC0jpdaFb*8/l6g}[Fb?(?}g9$}laDSsFb*duFpJdI3K.N*0rN-}FpJf20738OyA-:7FpJf206{PJ%nS97huB1E070TnSS+oZ2TFCR>ffj}huBpM06{Py0Ut{bFpJdIk(:gJhuHbgGmA}A06}-xlc]PyG[aY703Iv=06}fhaoi$[aVox4aojXwy9iHd03Tr503zm:0x6#VaoiI:eDu[K0T6RCaoi$[bq]PeaoiI:eDv4O0T}xB])?L)aoh$7FpJdI0ZE>deDu[Z4feV]aoi$[brt?E=4yJDk(-2ceDv4S0l-StFb?)t^sV@HaojXQyc/]v5q+{/Fb*Gg04!f]aoi$[b0=kvLZ[pm01f[Hlgs>?b.gz}Fb/%]0rEWoZ<WBb13=]Maoh&Jk#nZ80ZD&Maoj?t0u.wdNA*Cn0bs!1iSGd506#Z(GmA@pk(-!A03znc3#c{=3&*Uy4*%GWldTwmFb<sI06g8WaojZO=X3-Fyc.?T0STtyk[4GK01n&n3=@CI5r?S{Fb/ToaoB$v06{Pc06gb3=4yJDk(-2diSNpDGmA}/03zqd19tT=yc.]ylgxFTFb<sj0SUaW{%B.A01+GEFpERg3QB+U0x71-^sV@Hk(:gJc<6g>GmA}W0@QC#Fb?>naos+gBryM#k(#c][pDmx0br[-05:]N^sV@H0ZD/Lk(-Fp:JYu/03RE!08B47k(:gKhuG#cGmA}/070mUhuG&8GmA}g0sF@]aoAU=o:}7*070mUhuG&8GmA}/06{Py0<6!4Fb/#U3J-NV04!h)=4yJDa{5>/o:}7*06{VA0<6!4Fb?>nl68a90&TI0Fb/#U3J-No0W4It4feV]k)61DTKhVJ06{PJKo4lvSl{lF01n(ola)2zFb*dhFpJdI3QB+n0xHk5=4yJDk(-2ciSNmCGmA}f@t#4FE<oF]FpER=[bNkF03)8BFpER=06{Pp02vP}^9mh[06{PJ04m{3=4yJDk(>ZU0[++IFb?>nk(-qmU+lS006{T2huHaQGmA}kMvKHo00kzK04!h$=4yJDa]%$hAyyrp5sd&%Fb*dDFpJdI5sd&%Fb*dDFpJdIk(-Fp^9mh[03IvJ0ZE>ek(>%]4feV]eDBhyGmA}/0DwLGlhHzcFb*dhFpJdIk(-5e0ZG3KeDBezGmA}<4fdHJk(-qm!xJR@06{PPhuA>A.1Akd03zmMFQ&o306{Pk0[tFEFb*+]mgxnu0t7xzFpERd0sIh!}g9$}5p/pYFb?>nc<4SqGmA}B0ZM/L04!h[=4yJDa{galB%m5PE}*8dk[DQbaQ5$>aoK{50zd2H20&kv0l-StFb*+}k)huP2oTam4[*WY2P%u{13@1HnOPyP13^$fk}>+q0rLIe0ytU*GmA@pc&%xq4fdHNaP&?(aQOoo0ZD/L0ZD/L0ZE>f4G(?n009lhaoS?&ap6a$3<l}X1r^<&2{xS:0$cjPaP&bN3M]S%0$cjRaQOP10yt!>GmA@peDt+[13#}/AyQDraos^&=4yJDyaPz=appBm0DyQs03zqd&lu[80br7cFpJdI3<3!V0ymceaPR#K3KW23k(-Fp^9mh[0726lAy54Nm?2C:]z0&^01:WhFpER=06{Pk0?^}[Fb?>oy9AWp0?^}[Fb*X)k%dTD03znc<n.jv6D^xwFRn&L1#VI]aojXsyc*hD5qkN:Fb*G0L7n7k01+rzFpERck(:gJc<3{6GmA}/E}*edhuHzkGmA}/04!hT^sV@HaP?^haoq]Kk(:gJc<3^2GmA}/0CT[qA3trv0<{j8Fb?>naos+fBv1oiF}9&oc&%xm1-c6#XxPUR03zwf@@Ea90y)O0l4Mql1rW.*k(>%m03zqd0^3-$IH{uUya6b-a]%#Ry9iKy5oI}UG[+x?k[(P=5qbH-Fb/%y06{Pk0(i6kFb?(+y9AWp0(i6kFb/Toaoq]Kk(:gJc<46aGmA}/0CT[+AuUAw0>=^gFb?>naos+fBrQ-K[p(KB0br[-06{^8huHXsGmA}A13#}/Ax%Q}4fdHKlgxLVFb<sj0SUJsHkWJD9ZG&sGmFG501h6)k(-qm-lA{+06#9Ha]%$TaorAt0(SuoFb/Tok(-qm{%B.A01w]]-Q[Xh01:WhFpER=0ZM(N0t7GCFpERc0ZG3Kc<3u{GmA}C0yl-S4feV]aos=Qy9AWp0&TI0Fb*X)4fc%aFpJdI3QINSaPRTf13^$fmgxn0kP*7[^9Et{0br[-03RIl4fdHKldTwmFb<sd3lPWc002p=y9A)z001bzk(<E+03zIj@@Ea96?nYkappymiSGd50ytt-GmA@pa{e}&eDt=p0CT[5Axj713M]Eo3#c{^3&*Uyk(:iAH5<vp6AQJ3kTtw#0&TI0Fb*+]k(<H=00kzK04m]I^sV@Ha{{Qpoap>!03IB!0ylYd0C-!+8ZbK&kM:m]13)n-4fn-{aPRWg0ZE>ek)Z3<03zwf0CS+W3<3!V10vQ!13#}/AuCoF@@E9JN1fZq03zQWNsG*r03zqd0CS+U3&*Uy3QB+v0&TI0Fb*+]leWibl7!l30C:$3c<3G$GmA}vaQppkaQOrpappywmHYC=03Iv=3lYGNkMTg[0ym2Z4fdHTk(>Zz3jD$zapoj(k(-qm@lZdE03zwUeDt+[2n0qNFpERx13)oeaP&?/k(>Zz0sO@o3KX6Sk(-}C5fH%s06g9#aojXciSK4u06{PC0bU14aoum20u..n0.aaL3paUn1P*{>kP*j@3pUE9k(&bfao+4iBrQ@Q0DGs^k(-5g13=]MaoK[om?2Cv1WJf7aQ5nQ3M]Qs@@E9Z13#}/As!H/FpERx06}fhaojZ@0brRRlga./aojZ{0br7lFpJdIao%1&l4rR[0W4E{01.A@apnWHFpJdIaoS!*aoi$[z:svC3j@XSFpERx2oT3&04!g*k(-2m5sXi2Fb*X{aorO+eDxSN03zQWN$c3t03zqd0+@>VaoK[gy9rV/01fexl68ak04m]E^sV@Ha]#E40yuj7yc.?F0<6!4Fb?>pmJiGMk(-5i13^$jk)*6<0ZM&g0u.Li0DYH<k((0H1rW<>3iJJ{kP*7[6gSGiao+4iy9r-?0T?o]c<6s]GmA}A3tIc)03znc5nAr/lgj!*aojZ}0brRRlg1U!5sOc1Fb*X%aos=Ty9AZ404!fZk(-2f5sXi2Fb*X{aoAU=eDxYP03zvPN$c3t03zH?0u.v]0b+75aoJgAFpJdIaoS!/aoi$[z9XdA0$Z@LFpERx0yl^4aPSX)k)?uI3jD[x3KX6Sk(-}C5fH%s06g9#aojXciSK4u06{PC0bU14aP.:haoB?omHYw:0u?E^0ZM<ea{{QpAV>VN03IBDkMTg[13)k-4fdHLk(>Zz0T]braoB>e0Dxj:lh{$95sv##Fb*X(k[E=N0735Ny9iHx)F{#A072#Ly7M?:FpERx3lPvnE}*egaoi$[5j3pZ01+SIFpERx2oTc(04!g?k(:gJ5sXi2Fb*Y0aorO+eDxVO06{O@N$c3t03zH?0u.v]0bU14k(.E=FpJdIaos+fy9rQ213(%5aP&bM3KWtd06{VF0tE&nEJXZ[kM:m]0yWB#0ZE>eld0@gFb<sj0SUH!m?2C:U=JCb03zqd!x-+$0bs7=06{Zeaos^U=X3-FyaPz=k)8i{2TF.Z7:5&B/uY810bs7=06{Zelb&[tlhhKwk{eC]5q2B.Fb/%10ymceaPR#K3KYl%aPT>eeDAf9GmA}/@@Ea90y[po13=]Maoq]Kk#nZ90ZD&Maos[u0rLH/kMTgLkMTgLkMTgLkP*7[KJ@Ge0br[-06#9H4Hh$m0S@Me1{UJ4070p:i@{3Y[pDjw03zqdL*j]i0bs7=06{:faos=[=vZSEyaPz=k)ho}5j3<[071y2lbiE^13(@g0yr6$GmA@peDt+&5q2B.Fb/#Z3QB+UP:iZX6HzkuFQ^.y0yq%}GmA@peDt=p1AU:!l6Y-FFb<so002p/Bu{E75j3pZ?#McV06{YM0u.zeM^gkl0bs7=02(G3FpJdI3<v28070p:i@{3Y[pDjw03zqdL*j]i0bs7=06{:faos=[=vZSEyaPz=k)ho}5j3<[0738OlbiE^13(@g0yr6$GmA@peDt+&5q2B.Fb/#X3QB+UP:iZX6HzkuFQ^.y0yq%}GmA@peDt=p1AU:!l6Y-FFb<so002p/Bu{E75j3<[071y2k)6yNaos={=vZSEyaPz=8XvQKFpERd0$dx{l7[MC0tE&?F}nBLaos=)=vZSEyaPz=k)hoL0yr0@GmA@peDt=p1AV{vk[Ds8k(:i^06{YM0u.zeM^gkl0bs7=02(G3FpJdI3<3/5070p:i@{3Y[pDjw03zqdL*j]i0bs7=06{:faos=[=vZSEyaPz=k)ho}5j3<[fHkX8ZYlU5k(&8el6](HFb<so000@HF}ex401n(ok(:iA2S&53lgxFSFb*X)l6PVEFb<so002p/BryPIMcL2j0bs7=06{:fk[Dr[k(:gZlbiE^13(@g0yr6$GmA@peDt+&5q2B.Fb/%10ymceaPR#K3KYl2aPT>eaQQHnaQn6l0ZD/L0ZD/Lk(-qm+/$=<01Gbl0SSl73QB+A0hO1{Fb?>CAx%>6k((6J2se[A3jE1Ak(-5nk(-FpRo%{C06}cnk)QaH0DYE&3<3/5avdXE04!hF^sV@Hk[v%32UM9W3pa.p2mHRvk(-5kk{eDEk(-FpR{QcE06}cnk)Qa5aQOPy03IBCkTtw#0&TI0Fb*+@k(<H=06{Pd10vZ&0rLH/kMTgLkTtw#0<6!4Fb*5Z00Ar70$dx{aP>1gaoVE60sP5rk(-5ek(-2gyAS=*0T?o]aPSX*aP&bN3QB+o0ylYe0$dx{l7[MC0tE&7JdMMWaos+deDA@rGmA@pl3Nb!13(]s0l-StFb<sICXPIQk[CdCk(:i^03zIj0DF:6FpJdIk(-5e0ZD&M0ZE>ek[(/#06{Pd0yqmy0u?KDkM:m]0ysH5mHYwv13)0il7!l[a{]C1eDt=p10vRg261:9iSGd513(%5aP&?/k($^A0sO@o3M]Bn5nBGheDA@rGmA}kOpDcu03znc5nBGil6}WsaWD8tKaq+h03znc5nBGheDA#sGmA}kOpDcu03znc5nBGvl6}WsaWD8tKaq+h03znc5nBGheDA(pGmA}kOpDcu03znc5nBGIl6}Wsf*L^JKaq+h03znc5nBGheDA]qGmA}kOpDcu03znc5nBGWl6}Wsf*L^JKaq+h03znc5nBGhc<3SCGmA}/jz$!3FpJdIaojXsyc!G[l6}WsaWDbuKaq+h06{Pp0mo5AFb&1E0ZM/LP=#M06HqZx0rUN*kP*7[PAdK(073a8FQ^.^0738Ok[Dr[k(:gJlbiE^01::jFpER=[pl7u06#XElgs>u5j3<[06{PJZYlU45q2B.Fb?[8FpSjJk(:ij0ymn.5j3pZ071y2k)d:JFpJdIlgxzQFb?(%0yq!Fk[Dr[k(:gJlbiE^1}VxpFpER=&lN4a06{(R{w^Gmk(.ESFpJdIl7(OSFb?>vl4Yh7.t(>45rzu(Fb?)[^1u&Gk)P=q0ymt:01+iwFpER=06}+&0tE&?FpSjJl68akKo4SUk[Ds8k}>O8c<3SCGmA}/9=KyGob*d%lbiE^01::jFpERd1pEJ+FpSjJaos^$06}eZ5j3<[071y2k(.EFFpJdIlgxzQFb*X)l4w#45j3<[5j3pZZYlU25q2B.Fb?[8FpSjJaos=&0ymn.5j3<[071y2k(.EFFpJdIaos+ty9rP^01feS0ym2T06{O@NsG*r03zqd0CS+U3&*Uyk(:gJeDuLE0mx5zFb*X(lgs>?b.gz}Fb*8/0ZE>el6fxAFb<sj0STzDmgxkt0yr3%GmA@pa{]C1eDt=p0CS!-iSGcYkMTgLkMTg[13}AK4Hh$m0S-r50r-=M2snv<Ax$Tn4fu}u3M]Wu@@Ea99.3Ot3<3!V1pUwO2snv<Ax$To4fl?V3paUM001bxl6](HFb<sd10vW$002rmB3P?DiSGc/aos+py9rP^01ff?3ipuX0ZG3KeDBezGmA}h06{Pk0&TI0Fb?>nn^$+^03Itd04!f^a]%$DBu{:^aP.Zg0ZE>ek{gd>14rU0k(&bik(:gJeDzV}GmA}/0CS!ZiSM58GmA}/06{PC0h[j%Fb?>neDzP]GmA}/04!hE^sV@HAT-4n0u?Oi03Itd06{Sz0)F]wFb/#U3J-M{kP*7[5ogbF06{Pd1WJbO04!hG^sV@Hk(>ZA06gaT^sV@Hk(:gJiSM58GmA}/04!hD^sV@Hk(-FpRo%{C0ceIHk(-5ik(:gJhuIaEGmA}g0sIf[aQ7dik(-}CRQp3D06{PJ06gaT^sV@Hk(&bik(-5d3&{-403IEM0ZD/LaoB&Un^$+^0u?Ff06{Pp0hX7}Fb?>oyb#u>^sV@Hk(:gJiSL#6GmA}A03zC=lh{$94fn-{k)61D+/$=<01n(o0ZE>elbiFumgxk.03Iwe06{Pp0hO1{Fb?>oyb#u<^sV@Hk(:gJiSM27GmA}A03zC=lh{$94fn-{aPT>ek(@}C+/$=<01n(ok(:gJiSM27GmA}/06{PC0hO1{Fb?>oaPR@LkMTg[1pUt%04!h[=4yJDl3)uj[bWI{1A>%(k(-Fp+GUV&03ROj1A>%>5sv##Fb*+[k)H3(0u.wd0y^I0aojXimHYwv1rW>l25lD[0DyydB%m83N1fZq03Rze2tkHbaojXdmHYwv06{/U4fmNOaoJgCFpJdI4fmNOao-sEFpJdI4fn-{k(-Fp+ftM?06#9HiSNsEGmA}g0sH1Lmgxk.04!h[=4yJDk)q0?[bWI{1A>%(k(-Fp+GUV&03ROj1A>%>5sv##Fb*+[k)H3(03znc0y^H#aojXimHYtu1rW>l25lD[0DyydB%m83N1fZq03Rze2tkHaaojXdmHYtu06{/U4fdHNaoJgCFpJdI4fdHNao-sEFpJdI4feV]k(-Fp+ftM?06{T2iSNsEGmA}f0ZD/L0ZE>e4feV]eDA@rGmA}C06#0Elgs[{k)huP1vi2t0l-StFb?(+yc?s&Ax%.Ja{5syFpJdIa]%$moap}B0yl-Q4fvTMk)x^/0W4Fe1zQl(0DyydB%l]e0Uy-HFpERz0yl@-4fvTMk(<B:0W4If21x46aoS!*5s[u4Fb*2WaoiI=5s[u4Fb*2Wlh{%e0sO#paoB&Un^$!!04!h[=4yJDa]<]Ryc?s&Ax%.Ja{pgieDA#sGmA}/2wMM]0DyydB%l#0N1fZq03RCf2tkHbaos+emHYwv0yl]V4fmNKk)g{*[bWI{1A>%?aoAawFpJdIa]%$moap[A0yl-Q4fmNLk)x^/0u.H/0Uy]MFpERe0u.v+0Uy]MFpERe0yl-f0sIf[k(-Fp+GUV&03zqSiSNvFGmA}f0ZD/L0ZG3KeDA@rGmA}C0sY2{O=G#nlh{%e0T]8qaos^20z9.3k(@hgk(&bg3QB+A0lAAqFb*X[yc?>2Ax%NR0lJGrFb?>n5r}Y}Fb?>naosI6+ftM?01e&[0ZG3KeDA#sGmA}C0sY2{JSyp7lh{%e0T]8qaos=?0z9.3k(@hgk(&bg3QB+A0lAAqFb?>neDA]qGmA}A0+$430Dyy95r}Y}Fb?>naosI6+GUV&01fg{0S-vLby>q{Fb?)Z0bA+Ub.gz}Fb/To0ZD/L0ZG3KeDA]qGmA}/1AV{feDA(pGmA@xa]%#py7ppC0SSPJ0ymt*4fw/#k(%sMk)4WWFpJdIk)oKPk)oKR5rIA)Fb?>tk)P:Tk)4WWFpJdIk)GWXk)xQS5rIA)Fb/#V3QB?W1vieR0t7uyFpERd0sIg8k[33V5q(0*Fb?>Ek[c9Y5q(0*Fb?>rk)/)T5q(0*Fb?>sk)]%W5q(0*Fb?>zk)fEN5q(0*Fb?>Ak)oKQ5q(0*Fb?>ok)GWTk)4WWFpJdIk)6yQk)fEQ5rIA)Fb/%106{SD001bwk(-Fp+ftM?06g8ZaojXceDA#sGmA}.00BzAk(-Fp:JYu/06g8XaojXceDA]qGmA}.00jnyk)Ri>U*F8N071Wa5q+{/Fb*Gg071%i5qkN:Fb*Gg071%iy9XsWFpERchur&dk(-5f0ZE>dk)Zf[03zqd2ULQbk(-qm{%B.A03zqd3tZ*+yhbs203IyKaoB>e0DwHS0rAjJby>q{Fb?>DyA-)bFpJf203zzg06g8<aoT$giSGTj1vi2G01y4Nk(-}C3)kP]1viMkaoT$uy9iTB4qE0*k[4GtNT/{s03znc0DYH!aos+eBrQ-d1t6P:aoK[f5sXi2Fb*X[k((0I03zp+1t6P-aoK[f5sXi2Fb*X[aos+eAV$Jb1t6P.aoK[f5sXi2Fb*X(aorO/eDuh413([#N$c3t03zzg5nAFvFpJdI3/.x<0ZD/L0ZD/L0ZD/L0ZD/L0ZD/L0ZD/L0ZD/L0ZD/L0ZD/L0ZD/L0ZE>d4IX%z0rJua1Qkhq2)}4G4gS)W5Ft->3M]Eo06g8WaoB?eiSGd513(]F001bAk(-}C01PCW0yn+c001byk(-}C03zwf06g8WaoT$>iSGc<3M]Eo06g8WaoB?&iSGd513[$e001bAk(-}C01PCW1vpMriSGd513$DqiSGd50ZUupiSGd50ytloiSGc<3M]Nr!bRJf03zwf!bRJf03zte!bRJf03zqd!bRJf01PCW0ymbP001byk[b<P03zwf96a61aoT$JiSGc<3M]Eo4MTN&aoB?tiSGd513)$?001bAk{5b/01PCW0yt&FiSGd50ZU#HiSGd513#eKiSGd51vi5H000Jqaos^>06g8WaoB<(06g8WaoK[giSGd51vi5H000Jqaos^>06g8WaoB<)06g8WaoK[giSGd51vq?-iSGc<3M]Eo>(r:A03zte0xHhXaoK}606g8WaoU1806g8W4*%GXk(<1D03zte0xHhXaoK}706g8WaoU1806g8W4*%GXk(<1D03zte}2ACQ03zwf{w^kO03zzg{Y9tP01PCW0ys{fiSGd50ZU6hiSGd513$YxiSGd51vp&ziSGc<3M]Eo=hY)903zte=J30a03zwf?t/Op03zzg?VbXq01PCW0yl&H001byk)opH03zwf6GMi]aoT$BiSGc<3M]Eo208.:aoB?liSGd513)X-001bAk]hMZ01PCW0yn[g001byk%vsf03zwfkrn=AaoT${iSGc<3M]Eo(&o6D03zte(&o6D03zwf}#w+T03zzg}#w+T01PCW0yqIxiSGd50ZRUziSGd513@pPiSGd51vnBRiSGc<3M]Eo06g8WaoB?fiSGd513(#H001bAk)6dF01g)?l9OBZFb*X(k)8iK18n}Vk)8iK1zQjdk)OOmk)8i{{YbpR0ZM<glhpGW@%9KfFb}}p5q2B.Fb/$F0rAsM0ZE>el4qGo03znceJJ>ik(-2dyASZ306{T2aPI)o03Iy^0u?KDkM:m]13(@U4fmNMk(>Zz0W4Oh3t}0?3&*UyaojYSy9rZ50ZM&f0ZV?!At}jz0Dxp!aP?^h13^$hmgxnu1rW!Yaos+nz6x3E{5O$L0CT[Oyb#s{aoK]Vy9rW40WdNM01feS03zCWk(-}C01i-D0!iGoaP:%]=4yJDaP?*@0ZD/L0ZE>fk)fW!06{-h0T]8qaoKg}06{Wamgxnu13}oGeDt+[07NF0aoK]SyaPz=aos$w0yrZUFpERhFpJf201f[Jk)f:&3M]Kq3#c{/aoB?fy9rS!01fex.Rb4)070pH01j)<0.B+RaARpdazk?xaARJAxKL^?aA8yA07gWwwGV8kaARpdaw#=)A=jlNxLz43wO(0@BAmB+wPG1qoMb8=aARphB0bKxzF7annPV7}wO(d0wod-IxK#i}ayPq4zyoJGvqZukD1z4tz/L&0xLz3]wofpAvS==nnG-4ZzxJ>uBs[XcaA}:wwmY=Yo)7I>v<2l0CPZZrBy/G3v@#B6zu9QDBAzkmxcp]ax([5$y-)!eA+e*107p-FD2E*Fy?WV@az(mxx>6vIrc0mbAbPJazF5@pvqWikz/)gAvqGZ4Bz&pzxKM09B8U&eC{4ixx(mL-nm^5$aw0X@wN/T>zFsf6aBd)FaS%6>wO@(qaBd)FaARpd0b(:ZwnbE*z!AA!z/ff3A+#{Bwb{B:vpT7&xcqn7C4AYSc1G4Vc1FbAwfrgeasgLvc1E0:wmP4YzGGDgvpKy/vR/QpasgLvc1FbAwfrge099]LzF%-pay]I3CvLq{AYLr?v/O&iz!0M]wftubawL:209r(Jy-)?kx(+znzE<@3vrwGVnpBW2>2vr(r[aBd)Fay/tjy?aV4wO=rI0b(:^aARp9BrC^sazbLmzE:(dzxK4mwGUC[vpJ$n0bl3/D2E*Fv@DHawftJ6azkncaA8deklaS2A=MBT0bVo&z!pblxLzJgyIvr4nG.}?v}u=#zE[2A0b=Y$Ab](lAccdzD1z7I0bW07B8U&eC{4csv@Dx#aAhd9D1z1G0b#:=vrl0Aaw0X$xLzv1azC{uCwg(faztt5A4Rb[z/)gzCwheexK$Y%x(>Fozy$](z/)gzCwheexK$Y%x(>Fow[AT}nPVt3aAhvjBAz^JADL#bBrC1jz/]@dazttbwI9%Rz/oAjayMyez/^arx>}o5D2E*FvpKz4vqG+9e?O:RqE%]XBAzkmxcqn7C4AoUe=XD=Cw*@1y?j.$ayY5be*9.dzE)x&azkqhaPMQ}B98blxcp/8AV/7lBy/G3v@#c*y?mVh099]LzF%-paARTjzGxJlx(v(iwnc6}v@#B6zxP0Fx(^^5A+3q3zE:(1z/65dxK#10ayO!>aARpdz6n)*B-..zzxJ?dCwIKEAb]JhB7F(907!LPayMyiy***+xM4Y$wPw[*p^VxalVm9-wnS=payO!>ayPe4zddJ$wft#dy?k*O07ggjcV*FtwmM/%zGGDgvpKy/vR/QuaPIGx08dj%yt#g{pv8>#S&=s40000:0S@Gol&Wh!03zmw00g6{uesoz5<MA%00000000000000000000000000ig{jIBaobS&y-LS?GE[0000:0T5M8l&Wh!03zmw00b+Zq3x]8ROAfi00000000000000000000000000ig{jIBaobS&y-LQ[N??000jy=sYk3rhgqJgKq[!6UM[6q3x]8Fd.?Z00000000000000000000000000pkQhU0Qj{Ub>3><ywk<0003(5%M0=wMkGPl)tGcQ>Im[?nOdQ0000000000000000000000000000000ig{jSZrU:Sh.by<r$0d000l@668UZrAb!zllYoam43EDmmxPJ0000000000000000000000000000000ig{jSZrU:SoLUd(l(Sj000r$5}&qyrtqnUk{w{2R>DJZmmxPA0000000000000000000000000000000iy22yv5a6ngINso3Nzp000mz=u6y+rtp>wmJ3>d5wu6rub:=i01]ni00000000000000000000000000000000000000000000000000003%t00032000002lj-70000:00SA600000000000000000000000000000000Ao400&M801n&c01Ybg02bzk02LXo02$$s03zmw03?KA04m*E04X9I05axM05KVQ05%@U06ykY06*I:07l!!07W7&089v)08JT}08@{#09xj309/H70ak^b0aV6f0e{)T0fElY0g0P+0gJ@*0h6q(0hPU}0i2}#0iMq40j8U90jz>c0j-7f0kevj0kwHl0l1{r0lLow0m7SB0mQ#G0ndtL0nNRP0o0[T0oKmY0p6Q+0pZ3?0quD[0q#($00if300-J801e/c01P8g022wk02CUo02>}s03qjw03.HA04d^E04O6I051uM05jGO05KYR05:&T06gbX06Ht.00&M7%nSc0@#.pv%nCm.%3cL-%m^c8%9$7G%l{o)ky-.k%mdMj5c8Xf%kuum2MK&7%knL2c&:kD%kuu7l&Wh^%kCoYGA7#K%kj1rl&Wh^%l{o:c&:kD%mOzv2MK&7%m$1o5c8Xf%nCmZkMy=-%nSc0%nSc0%nSc0%9$1&%nSc0%nSaG%nSc0%nS9v%nSc0%nCmu%m^c8%m%$.%m=o.5bk?#%lHZ0{W/p4%l6<S8$gAs%lihu3?5Dx%lby9oyzYS%lihuI$v?=%l6<PozwhX%lHY*3&ecG%l61u8#-84%l{o/{Y7l)@}E304$BJS@qV/%@#g}r0ro70%nPa0%nPa0@@r300q-Z}ULLo0ULLo0Uk!L50p3O:TlMZ+TlMZ+S@Jb10n[$xe8RJ)e8RJ)d/YLH0hpUYS?HWYS?HWYSSi200hpOWS?HQWS?HQWSSi200obh}e8?+Ce8?+Cd/YLH0p3O:TlMZ+TlMZ+S@Jb10q-Z}Tnn&@Tnn&@S@Jb10p3O:UJ&c/UJ&c/Uk!L50eZ?cUzJw.UzJw.Uk!L50e.%I3Yld53Yld53JHeb0o$:T3*F]q3*F]q3JHeb0rae(UL]Z}UL]-uUk!L50SAcI%nA63%nA63@@r301]+K4%nG3#%nG3#%nPa0@#q1r@#q1r@#q1r%n5:}UMaU5%nSc0%nSc0%luR:Th8J^%g(B=%g(B=%kk1xe6Mk-%ieZk%ieZk%dQXYS)5o8%iep8%iep8%dQRWS)5/n%ie*n%ie*n%kCk}e6MtP%ie*8%ie*8%luR:Tn&k1%nSc0%nSc0%n5:}Tn&k1%nSc0%nSc0%luR:UFv@?%g(B=%g(B=%b3>4UGUkp%ieZk%ieZ+%b50A3^u&g%ieZ5%ieZ+%lp^f3^u&)%ieZh%ieZ+%nBjpUFv@?%g(B=%g(CF%nA7]%nSc0@R#]$%9$7G%nG3#%nSc0{5C6(@Es>E@tU!p@#q1r@#q1r@#q1r%nSc0%nSc0%nSc0%nSc0%g(B=%g(B=%g(B=%g(B=%ieZk%ieZk%ieZk%ieZk%iep8%iep8%iep8%iep8%ie*n%ie*n%ie*n%ie*n%ie*8%ie*8%ie*8%ie*8%nSc0%nSc0%nSc0%nSc0%nSc0%nSc0%nSc0%nSc0%g(B=%g(B=%g(%@%g($b%ieZh%ieZh%ie*k%ie*n%ieZ5%ieZ5%ie*k%ie*n%ieZh%ieZ+%ie*k%ie*n%g(B=%g(CF%g(%@%g($b%9$7G@R#]$@R#]$@R#]$@Es>E{5C6({5C6({5C6(]=9@h@#q1r@#q1r@#q1r%nSc0%nSc0%nSc0%nSc0%g(B=%g(B=%g(B=%g(B=%ieZk%ieZk%ieZk%ieZk%iep8%iep8%iep8%iep8%ie*n%ie*n%ie*n%ie*n%ie*8%ie*8%ie*8%ie*8%nSc0%nSc0%nSc0%nSc0%nSc0%nSc0%nSc0%nSc0%g(%@%g(%@%g($8%g(%@%ie*!%ie*!%ie*k%ie*n%ie*8%ie*8%ie*8%ie*8%ie*n%ie*!%ie*!%ie*!%g(%@%g(%@%g($U%g(%@%nSc0@R#]$@R#]$@R#]$@R#]${5C6({5C6({5C6({5z4(%nRw+%nRw:%nSc0%n5VzUL$M4ZYg4dUM9)/%lul:Tnn&@UM6aWTn!]]UJ!{/TlMZ+TnmZhS@EORTe-dlS{lQ:Tn5uB3I]TqS?GMBII!BlQwgyO0@eBC3GcI/3Yp%:Qwu6:0@eBY0]Ktb3Y4#.bkrphTnj2<0@wL%Tlpo$e8Q:mfzDVuTlH4+fA7}KTlLinZU/C0fn+nYULLo0I#AZR%ltamZLMZ93/Ue^I#GZ.ZY1qm%liJ:3/Ue^UM9.>ZYgkVZY7ikULKJ:ZYiC@ZYgkZfA8rU%nP9HZYj6gZY1qcfAd#K%n5:}UM9)/ZY7mkUMaE5%nR@0%luV+%nSc0%nRg+%nRd0%9$f=%luV+%nOr0%nOr0%dJCh%9$f=%nC$jZY4hjZO$jq%dJCh%nD5:ZY4kkZV[*1%ex15%m]&{z#2V0z%ytq%lrP+%m{wyyX:l0z@N3ZZV[*l%lj5ix8c1HN$u{4ZV7IUZNq2Ix698]r&vGJz?spKZNx+aMx^.rMvLl3z(xTrz<yw6O0tpgMvLl1UyY+Pz@)5+UA/JCN$dtyZK/D+ULJ+Jz@%p=UI+>mZKRPhZXImztL.u1z@N3ZZU(a(z%o!ntJ]c/tL:Q+z@K+%tK5k*TlMZ+TnYc0ULLo0TlPL+S{oCYS@G9:%nG4-ZU$)]lGUqFRV3{O%m?hsZXArXI$%xMObOoM%n0<&%nE?aUL$M4UD0FW%lunS%nPa0ZXT$gZO06RZLSw#ZY68{UI#NZUyD$WZKMx=ZXN{hN$vVuI>yoOUzrjVUJugxF}*q9F}%R2UC85WUyW(tF%}N%L9cZ+Tak!LTaDAJMG<74RSG05QtRF<Ql.3ETlL!DTnnE[Qwy!*QuX+UUJ/U!ULzYEMIBR-MIMWETnb}0ULLn#tL+r6tJI(+tJRhKObPu&UL$M4UyG/M0!>x*qVzqFZYe<+ZParlS&A80S@G90ZYgslZYjtG%nSc0@@q&{%nSc0%lGUq}V1wh}1*&!%n5++0oi#hQwLw0{#4zp%kCfzS}-P]3?g9D(v+M8@#@NfaPwytz]d3PS*GmP%0zq3aPs!FZRQ6i3w$eC%0>2}w:7s(Zx$tc0?l4AX/@m7S!?<MS%Pb:aDbJrR6m3aaN7260!L@OdX2B+LQo@=aPs!FTal(5L-aKTM[29.w=wZfZAt1TtatzSNJ-<YS}-P)ZBf8twScOBMlEB}aMou1fuO!{r?6bTR6Y:$aD2%dI$0.DSeHXl(lZ6?wV$)z(&c$O0g9UJ&U[*7S@J7#%nSc0.0p%+}Oi9D0rq]0%nR@0%nR@0%nR@0%nR0+%nR0+%nR0:%nR0:%nNPJ%nNPJ%nNPHZY5--ZXN{gTnh!@UL[IeUL[I6UI{VEG5zdVI#B?wfzHb83/IwwlF$9e3&2k-fzHta3/z0+2ik::8#6ykfzCIE3?$?!ebxkCfzDT>ZXv<gULwJQz@}6%ZXSDZ%nF}%ZY3F0ZVz9}UL[K4%nA0F%m@W{ZVwT}tMgT6%n5:Y%m}g%z#0yktLGyy%kBt=%nER4z#G.pfzHc6%kBt?%nG29ZY7mkZY1qn%kn^n%m=}]fzC)EfAm%L%n5U}%n5:}ULLo0UM7S5%nPa0%nR@}}V3O}S&A8:ZXUel}tYyM&q-?c0008^UJ$JO}tY:W(z*>:S&A8+UJ$JO}kQa/PNW8}apr.=UJ&g*}g6W*b7G-J2R8Om(*9)p}kQg:b9=h+2R8Om(*9)p}g6QCPQI:fapr.=TlY9K}hhh7dW:[GS&A90%nSc0}htoeZM&Bh}eurk%nSc0%bl]K%cxLZ}eurkZXUel%bl]m%cw#J}euq#ULLE5%bl{pZM?>1}euq#Tno41%eVg{UA>HO}euq#TlM+=%nSb#fo]Pr}euq#ULLE5%nSc0ZPasl}eurkZY81F%nSc0%nSc0}eurk%nSc0%nSc0%nA1>000uaZKMp:0@@r2%nA1#00620ZO?bjd/YLG}U*F{S&A60X*<.WSq([%P-dhaS&A61Q6:}4FCPrf0rbj<S&z##F^CNWFz!g)0rb!4r-KUNF^CNWFz-3Wd/UOpsYLIb1{d!90osy=Mh^6PsYLIr1{dR40oBgZrr5f?sYLJ8766R40qMQ3r@.m/sYLMh8VRvX0R{aftl1y+rAo81tr&e*0rcvztl1O1p/)X#z+{Al0rn##P-t4SM0:O(ZM?4:0rmMH0rr8-yl.!5%liJ-rSh%#0rr8#L#Q>*%nFo-r@J700rr90(z*]+%nRw:Tn/i@TlP-+@&i:k%nSc0%nD3R0!w5=S0Nzx%nSc0%nF<CqyBi{u&<Nj%nSc0%m=[PRu0aEvUdUX%nSc0%ki%p}F66(a{aUrUM7T5S]eGj@^Zq@c<Qgv8#:4uS]eHe@S1pbZmUK&m!)n+S]%/&@WoaB%knG>m!!h7S*o&(@S3LZ%kFS{7wG9IS*7nR}AZB0%l6&Qr}#%@S/T#EPSh4J%n5!TtL.L1S/T#S0a/v1%kmbTUL$N3S/U0R0HmE2}HAI:%nRx:S]bMar&Sw6PAf0h%nSc0%m^03Tn&k1Fek{1%nSc0%nG80%nSc0(z%%+%nSc0%nSc0%nRA+%nGk3UMaU4UMaU5%nN#R(&78!tl1T4tl1T5%nF>{IVe[uMh*)-Mh*gI%n2:}SS1jyw=I5fci5O[UJY/#Mg$WYs]T+23h#db3YeuLs[<Gxr@XB!d/H]$QnqR&v!.zGSShl2dGlnY}Sg-Ms[@c{r@.}30@}F+%k/Nxs]7X=sPwwLnDbSv%eA3-v=<SKSq([USq3ZQZLMW:s(@rrn=O?=3f4$-ZV[?}Mf7A}lJv8Y0/E3MZY78fSPxl6KPkvWk=:}:ZY2..IU:gCRt{O{Rt{O}%nPq5(?B9Eo8[}^o8[}>%nSc0%n5+(S@Ja}S@I{}%nSc0%nSc0%nSc0%nO}@Kn[HG%nRw/%f8F5%nBBDS@Fe+%nOu5@#g}q%nAubSq-k^ZY45qZHj?R%n2oVS}-j>fzPggTavtK%m}rHd![)}fxF5}UlIig%m{gFwb977fxE}6%7.Pl%n5:}ULz}jz#20vUyJ?R%l)-6jnGj9ZY5/<f9<k)rKoEy4/eZtULBsZZx89mrKoEv=GQz{yW4Y%yGtkorKoEv=ws3HvU>C<vYi+3rKoEv=v#X0L7<spLaW#6rKoEv=vI=flv>{Jlk&gQrKqe{=FOW53/z0+3JHN1rJ#xi4+^}.R}OeJR(DUWrSqA!%mm]P%nfyh%luS:%nG3#ZSqq9%n5:}%ki[S%nG3#UGA(BkL?yWZV80/%n4lEUGA(BKnYcVUIYAX%kBqbI$c>FQXGSJfxazW}R&$EI]U(7bL)i4fw(<g<M8z08{j3zbJGyoz@NI>L>ZIEfxrVAw93)AZU/a>rRSO)fxDw/KlS.BZV77GrR!hrO9E2NKnt^RZU/a>rPnJotLZO?Kn.zzz%Bw5Rq=l.O8BtFz#V*zz#Y>q}UB2hUy((QtMdUfz#Y>q}2mmcZLa]MtMgU5ZYjul}1L5PfnfxboAg7T%nSc0@@e{$ZK#O43&WfaZYjul%nRw+%nR@0%nPal%nSc0%n50YUM9Y*%n22%%nPal%k)sDObeu+UI&FZ%lq)=%k^octJF<+tJRhKUAq*=%k)udO8)TItK0Imz<(}(ULtaEfzOQFz#Ik3z%wSGz$]bjebAmCUL].PZY2Y$z@}rFMIBJXz$>JhZY2A^ZM%xKMI%(:ZXv^Dz$>Jhz<E46MIBJXZY1mBz$<qItBGraTnb:@UM7S0tMaUmr{kldfzXWHfAo$ftMp.5r}}:[fAd!.z#X::UM9KDTnk*%ULzv!ZYiO1%nO:SZY1jkZXH(fz#V85ZY4zpz#M=pZXT$gUM7S5ZY7mkUMaU5%nR@}%nSc0}L%N@(I{[:%nP7#%nSc0?#HJzFDbVH%nF?]}V3P}FiU=t0SSi1}$^q(SSf40IDRW)dGowE}$^t(R2DqqHYP6aaO#0n(/%PdSS0aWKF36mG8iaV(wtPrS@wdsR#?N5aNl0bQj^pDKPjzp2+?ZbQuWvgQlg4+0rq(S3AtDGyo13dS?{$[yxap#Rkp6GS&LB+UiEi[Qw$nKNP:DRZRx^FUI]SG0@@qURkn!4ZYjulZU#eySSi1{S&yWg%nSc0%kwM:G8+(JF#bKB%nSc0%ltio2lj-50&<3n%nSc0%nG4{S@Ja#S@Jb0%nRA+%nR@}%nSc0}U}#uY8NY*%nRiX%nR@h(I8>7ch[qL%nOt-%nO}hd^AY43htCs%nOt-%nD0kd-}+/G5yku%nOw:%nC<:PA}j!aC2*T(I)pL%m]^ZFt:)>2=:r)Mh^oL%m{Afd4*>fd/L>nrr5x^%m{Afc)wUEde]Icq2=%-%kE^[2Qj!Q2caJ}rr5x.ZV5B%0h7:qt7JZHrSwuxz@^+WPR@i.S]dT/s]T+HtLOS}Q6H**tkf3is]KX.O9D9Jbfx[Gtk!{arSnnWO9jR5d^AX5qVzWOMhWRBtLLkl(I8<[rr8p:S@G9:UL$N4}U}#uS}#+}Tn&41%nSb0UMaU5%m&Q]3&/c7%nG1#fAq6LULsg@fAmmvZXv<GZY7kkfAbG}ZY75lfx5=f%m=TlZY4#BTnjby3*as!%kx*R%ls5tG7{S)3*r<W%k{hV%ajBtLish)I%sqK%lb.L%aTMOMwzAnS]W#E%lrP[%cuX=S*Y[<bisub%k!0E%eIw*My5qUcz=A7ZVx#@S*oV+MGO>WcyQ=sZP8#}0&?[eS}Wb9e1&uffqbdP0!EgKlIIk{e8VX>fqa=l0!vqJ0{G>Ne9:dmfy1*%S^}a30{S2JTeD1FUyJROZV}&0Tnn&@UD1R5%eJ90%lxT:%nPa1%5A60rSAa0(vuUH%lrz@%5A60rSx8#Fqt(U%aiGpZGBYxs]5c]28iJ=%cwJ=Uu2jnw-K^828e0n%amnAI=D3xM5)GR0el43UA/e*F(VC-wSN?(0o4tz3XzgQL37{<s^e{Fwz{{D0*Vb!231V6rH5Wcw+XKQPPCm^231V6rI+#Bw=q#hsMBjF8=Y)rrF)TjSJ3m6k(1z{T65Ods+7nB8U]i*0n)?(tukrowSM]M0ic4:aMV^*3SSD(M6ED)wCFH32.jz3t2]inwU>WRw-WaSk=Q&S0:eVes)z<WSP{XLS{lQ:S-r50rSo2#S}@-}UMaU5%nSb#S@Jb0S]9<S3&*jf%nSb.0@@q%0{xQ:3&/z#%nS7G0@@p[3I<=(3&UUT%nRsW3&*5*TnWSGfzCIEZY6G@UM7B>ULGvQfxf1ifx-xwOb9aetLY-FUzPuWI*$^QMF.+qr@974UzOPCI@^[XMIBver@5x*fre2LTnb:Br@M6$r@4mCebrqjz#J:Fr@XCIr{t>Hv^d0Wz#J:FtMo$NtzwzdvWQm%yYmtlUM7S0yK?WDS!<.QRUTr[ebB=6O2SG*ZK/D^LiO$Hyu+?5tl1T5%eI]g0@w{%Tnn&@Tn&k1%nPa0S@Jb0%nSc0%nS8#@@o1#%nSc0%nSc0%nR(]}2jo[UMaU5%nSc0%nRfW<Oq!-3&*76ULXw1%nG4$R1[1[tMrQ.%nhl:%m]W<wCQ4wTn^-^%n8f-%k^nxwz<FN0@-fbZXB#i%ex+{wz&ox0@-wb%m?AI@^{(vti7Hj2kwf9ZXyw1{<\u002F8}rRSOA8#6yuZXyj%<Dcx[rRO3zz#G{z%m=-@Q#T2-S}=R{z#G.zZY1lewCuf175!{Fz#Ux7%nNShwCuu60r993z#X.%%nRrAthPCt0r8@#3&*76UMaQ-rE+710qDJ]0@@r2%nSb{rJr70S}@-}S@Jb0%nSb#S@I}0%nR@0%nR@0%nSc0%nRd0%nRd0%nRd0%nR@0%lC)+%lC)+%nOr0%nRd0%cw{J%cw{J%nOu:ZYfJlTcF@J%cn<I%nOu:ZYfN1r&GkkUA-9/UM71]ZYfN4yjYP1tA@h*tMd=9UM724F}fn2r*uV+r@2(#tMd=a0]PtARSB7yr@51(r@2)23&33N3I)+6r@5N{r@51*fAb1qG8O+IMIEvTS}&F{UL}N/TnVa0TneO(ZXKZaz#MOlZY76gZY4kl%m@G>UL[)eZY1OuZYgsm%n50:I$^vN%m=U}%nNPS%kkx13&l[6%n5+}%nG40%luR:UM9[5%nRx0%nRcV%nRx0%nEK0%nEK0%l]1F%nEK0%ek]0TeD11TlY/=%ek]0TagfI3Xwwe3^nzD}HwLC3Xwwe3Xi*e3?Hy-S^]W33/F2+fw}AZfAd#KQtQR6fmXSOUyJRMUL$M4QjrjzUyIi8fmXSOfz.BdF}9?3fmT35fnGPld/b[oS^>6Hfm<fDfn=^dbi<^RS!{!PfmZ6Md#C-6bi(i8PN.Q]e8QycG5S/6Hu+/nFz.*QG5vvz7t#iy8#=YkS]9<S7wE>gtLFg0z#M^oS}WnetMfc*UL%4/ZYgtlS@vI:UM9)*%nRw+%nR@}}V2&Y%nSc0%nSc0%nSc0%nSa0rSz{}}MG@0}MG@0%nSa0rSw](Rcr{0Rcr{0%nSa4s]IQ.NX^^#tbx1l}V3N@w+&uRdYNB.S&y1q<]tfSMhdCqdYNB.S&y1qN/zFIw-/$HdqCvqSCm}4y5:S8s(#KrQ-b-XQ-b:4y5:P3rPZanQ-b.MbPrfKyx6-5rPZordqCufdqCvKyx6-5rR-ULdYNAAdYNB!N/zFLs]5hIdYNBB0if#q<]tfTw+WXiNX^^}c)=Ud}V3N}Mg#^7Rcr]#c[tn%%nSa1w=q=h}MG@0FuP1M%nSa4s]UM5%nSc0(I{[:%nSa0rSAa0(I{[:%nSc0%nPe1%nSc0Lk>NZ%nSc0%nAl5%nR@}KPkfX%nR@0%n08a%nPa#N!<4:%nPa0%kkxb%nG1%SO/juZY7iEZU(8aZY7kiSI?mXZY7iEZVzCfZY7njS&dzEZY7mkZVzF}ZXT#bS?pogULFs2ULLo0UJzIuS/Qz:O9f<LO93-JO92m-S]W#}O9lIWO93-JO92s+S{lQ:O9lIWO93-JO92)@S]*sYO9o@*O93-JO8{EcS]ZmXtJO}=tJI(+tJ][!yuYGjyW4<#yW2PkyX*)7q2i#(ULI60ULI60UL$N3S@x2#ZY7mkZY7mkZYiP5%lF%J%nS0%rAi40rR?!Y%alEJ%nRT&rAi40rP5%t%ajh+ZWIIisY[)gs(tMC%ajlJZW!s7wMAwyw-fO=UC#upZW-<OL#T8HMfKkR3ZNJATmy<ywMAwyw-Y}(tB8p?G36lVsY[)gs(>]XtDhmrRxz)srAi40rQb&MTcM:[3mhYLrAi40rPPGN3*K1eG35WBrAi40rR*DZG86esQvK4wsY[)gs[#6PQwm/DQvG^mwMAwyw+/I!Qwm#AG7t)vL#T8HMhmteG8hEt3?aE6wMAwyw=wZ53?%!6Tn?-[sY[)gs]W=!UL$M4UMaJ2rAi40rSo=k%nSc0%5A60rAi40rSjVJZYiQ0(qZ?:rAi40rSiy9fAdmoM%0M{sY[)gs]Gus3&a04sxo0lwMAwywV/+D8S+I(PJdmSL#T8HM5qPAy2%{d2V+IqwMAwywRc}tS]X/]0:eVesY[)gs(uriS]X]}H/ECPrAi40rPCT/S]WTIxJn5jrAi40rRZy<dY3sBt2!N5rAi40rPZsSykC@ErASEcsY[)gs(<zXS&x3#r90NhwMAwyw:94Myw$7eRb-^XL#T8HMeX6=q2^M}S-AXiwMAwyw-b4&Mh/}B<xkR*sY[)gs]bd#S@I}}}C*J}rAi40rSz]@%nR}@%nSc0%luR/%nRc}%nRc}%luR/%ki>@%nOfXZYfJkZU/8h%lo+*%nD=fz#JZoZV>#6%m}vGZXKdaz#J:pZXJN-ZU>wXZXQhktLTK+z@u):ZV87&z#7PhtLTK/z@NP[z@N:gz@@gpx6A(rO8QADz?syytB3zaw%(U1r!u:9tAx+*TcM0PRJ$j+r/!k1Tc46gz<2!)r*w}Yw%3F3z?r=Wz<2S27mn<4cw4)<z&$wzfoRhx8%4l5tAQai8%TC@z%q2kRJ<%UtK5kYr@.z:tCUt1r*uV+r@M90r@XB+tDjZ6S&A80S@x2#S@G90Tn&gl%nSc0%nSb}ZYjul@@q:D%nSc0%nSbTZYjul}2yax%nS8k%nSaN%nSc0}2xLd%nRpk%nRv6%nRx:>(dPZZY7mkZY6$c%nG4$S}@v}ULK[0ULL4kZXT]9IU.{RULJ<5ULLo0ZXT]9G6Gv/TlMZpTlMZ+UJ&7KQuXV:TlMR<TluNTUJ&7KS{lQoTlMvTTluNnUJ&7Id^zRqTlLqpTlq2uUJ&7I5C&4bULJ+JULGZ#ZXT]95C&AbULLo0ULLo0z#cHgKP8nWZY7mkZVodez#M^oS}^A{z$$fkz@>f5ZXFVv7xgx1ZY7q0ZXUel%nG7#TnYr6%nS8#%nSc0%nSc0%m={5%nR(]%nSc0%nSc0@}I0/ZYj9e%nSc0%nGk4}UhJwUMay$%nS8#%n1kB}09yfTn?${%nR(]%m=%3>&I<>yYAF}%nR(]%m#-}PQt=%8VL]}S&z-(@@dGBFTDGP8VA1W00030}tMcj28Js[2l3)C00020Rt=kk27/dd2lf!YS&z-(}tL%wFS^3n2li=:%nR(]@}VS{PYOKJ8#]Zk%nR(]%m=%3>>ZNAUMay$%nS8#%n1kB{#0S$3&*24%nSc0%nGk4}Io(?bldDr%nSc0%nSc0@&h##S@J7#%nSc0%nSc0%nSc0%nRw:S-r50rAi40rSAa0%nR0S0--l2rAi40rSz]@%nR0S0:eVesY[)gs]Url%nN^r3SZ?twMAwyw=wRnZY1]EUt{&/L#T8HMhQ?cfx-xq%5JYiwMAwyw+)PWfmT3g%5&GcsY[)gs]5hcfxDd^%5A60rAi40rR-Q$ULzfK%5A60rAi40rRYS{yYmsL%5A60rAi40rQ0H-v/xwC%5&GcsY[)gs+oTNv/xwC%5JYiwMAwywQ{4CS@u2k%5Cs:L#T8HM8Z<:%nPb0%5JYiwMAwyw=I/g%nSc0%5&GcsY[)gs]XK4%nSc0%5A60rAi40rSz{Y%nR@0%nSc0%nSc0%nR>C%nR>L%nS84%nS84%nG3%ZY7mc%nGIo%nGIE%lh=!fx>.u%l7@j%l7@k%aNBwUz5@B%b5a5X@4!m(W<$QZK==OZNcuovWFGhN$p%hTaDgtUCNQNv=&$AO8Hlzv=sg#O9r$HvU[c:O8v>TQtPQ.ObeA@b7=9^Oa{Y.vU!-fO2uWAY5i{&(?BFUvU!3:N$8Q*%n0&*%n52!v=AY9O9E2S%nPal%kjeaTm#@bUMaU5%nSc0%a1<sfA9C#ZYjul%nSc0%eHO^ZYe/>%nSc0%nSc0%nRw:%nRw+%nSc0%nSc0%nSc0%nSbl%nSc0%nSc0%nSc0%nSbl%nSc0%nSc0%nSb#%nSb/%nSc0%nSc0%nSb#ZYao4%nSc0%nSc0%nSb#TnY)1%nSc0%nSc0%nSb{0@^03%nSc0%nSc0%nSbYbkql9%nSc0%nGk4%nSa/0]Lo*%nSc0UM9[/%nSb0TapuG%nSb#3&*jf%nq]ZUA-t*%nSb#3&*mc%nqG*%lu/:%nSb0S@Ja:(??p[%nSb}UM7S5S@Ja}G8:f%%nSb}3&l[6%nSb#G8-T^%nSb}3:oQg%nSc0Tn&k1%nSb}UMaU5%nSc0(I{[:%nSb}%nSc0%nSc0}U)X{UMaU5%nGk3UMaU4ULo6#tL!y1%nDj3tl1T4tkn@1MF/KT%nFq.Mh*)-MhT*MRSoAg%nBtzw=I5fchnlVRhlb<Uj@t0s]T+23h$&zM5({-3IVaDr@XB!d/KgFr]!2<d!>E?SShl2dGlujr/9<Kywv@br@.}30@[Y?rGJWktky!^sPwwLnDj@^s(>}ds(#WBSq([USq>$pQwnx:s(@rrn=O?=3ifp-3Jv6/yuv>BlJv8Y0@}LE2li#:x62coKPkvWk(VOm8VLM>ywK!6Rt{O{Rt)0}Uk:%<S}YiYo8[}^o8>{>%nPb0%n5+(S@Ja}S@Jb0%b%yZTn&k1%n4nCUMaU5%l7@jQw$j[%m#^7UMaT5ZVqz{Qw$78%lo>dTn&f:UC$+>G8+WZ%b9?LQw?fcTbolyd/YuX%a>i1bi(hdTeRhXeb(MGZO)@ydYPIG%m&y&fy2NqTn5V]frh4LZXGvTz(P?qS}!cyz(M*qUJw7JO2P<lS]=LEO9C/AUJq^:tD9A5yuqE}tLXQLUJnN:tJ{}/tJFV+tLFgAZV!-#yVQ6FtiP3!yV2h7z%s94yVQS[r{uC:yV6.Oz#cCFUJqAar@e!gUJ/b:z#DYoF90Fur@G4#E#{XfZYjul%n5:}tMs:6%nRx:(I{dI%nRw+%nRx:%nG1%SS5(iZY7iEZY7kj%n5+(S}@-}ULLo0ULLp0%luSzS{lQ:TlMZpTlM.+%kH6xS{lO>TaEu1TlM.+%a)XhS&A1(S!^V6S&A8}UzxiMS&A1(S!-cRS&A8W8>%vjFR{DmS]%!&S&A8UI(J!Qlv#kqS}@D&S&A8UI<*VsQkgq0S]/$OS&A8W8>:i#S&hOVS/0/WS&A8}UI.+fS{lsUTbr:NTlM.+%lb3@S{lQ:TkB[@TlM.+%n5F=ywK%gULLo0ULLp0%nG4$L(vX.ZY7mkZY7nk%nRx:(I{dI%nRw+%nRx:%nRxXS@x^k%nSc0ZYjul%nO^)S>06AS@Ja#fy2+u%n5W.S&y0qS&D9#3Ap62ZVIF-S*ocyS?)GfljfxUZLX$UMx!FsS?)GgM)d57ZPao0mu@E[MzFK1>MlL!%n5ZXrH6RJmx7j>(iK5-UI:e}r&9M%rH4GW<\u0021!FYI?0peNn}24r-J}6L2UH1O2QiewMuG%Mq%AtH]NDYtMfiXwMuFDw(+z=H:]b9yYxiEwM]9u7fc&QL7nc5G8.H3M2DXVr*vPWQYq/Tv/LY{SC?/*tb>/6yleE}tl1D032/?BUyZ0ywVz+kyYBClS>XOm%eJp0S&A80UMaU5@qVS[}tZE0Hx4bIu*[6}[=eB+}2!zAmGojgm!6KV-Sb/m}6Wc)2l4D#lgF1Q761af}4^YSm!)5Xk>d[MRt)H]}4P+tmFM{-0p:aWy5O$H}4otkm=T.r1[FXjtkte$}4oqjm=Uui7v[Eur{3%)}4oLemDtlB7v+Aetako!}4doAm=Ume6.bkux}a}#}4sOHm=UoA6.bk[RjmqX}4r(O1]etG1[tT>c7B-g}n4:$Hwp*m0pQ0*1!8B<}5&ccH5K[G0pQ0*.iEN>}6VB&0SP1)li3#+[t-F/}5j@pR2Qqpm/SI*@oyrZ}o1Dc0rr90u&Pz{%nRw/%nPa1%nSc0%nG3#%nG3#%n5:}ZYjul%m=@3ZXO2iZV.Q6UMaU5%ki%UZVUV$ZU*joTn&k1%kFTgz%i<]z>XCcTn&k1%e2#^UC)87UCL[o8VD+u%exh4tDg-7O2Jw<S}![:%eI-a8>:bFtBIN>3GTJN%d]X}8?HrP8&gA)2iw&=%bWlY8?Hsu8&aE}2iw&=%bWA+ty]d>tBkx(r])sZ%d@<0ylj.Zz@Z)0Tl0tZ%luBXG5{YDZXE<Az%pn9%luR:2i@j*ZV}T}TlJY1%bWCT8VL)1ZMowltkCn1%eJ90Tn/i1ZParlTnYc5%nSb1}V3PX%nSc0%nSc0%eV0FS@J9(ZYjul%nSc0%amlhR2QEFfAq7L%nSc0%kZixtl1RV3&*jf%nSc0%k{tXP-t4HlJv2)%nSc0%eJ900rr7SKPkqT%nSb}ZPa9d2(<{.>kUo2S@J6]dYMWFdGxBa}V2L2cJB5LlAc#Yd/YvBS@E/53JH8FS&A6Fx8*](2(U.(nDnD@2R8<Os]TsUwCy3}R2Qj&sGnwdS@r{pRqYcw<]sqORgLYNS}ZI(>7-<*>kTDvw}l(/rPgZStb+KGtk%sSt3}U*rFHLN!=kR4!=gNc!MP3s%ex0#rSA8}rSw)}rSAa0S&#E5%agsL%nSb5%nSb}01e=a%aiPq%nSb1%nSbS006!l%lD0JS&#D5%nSaR0?.jD%nPa}01e:>ZYjs&3mEOc%nN&i006=}ZYam<3AbSTUM6uePB9ulY7&E^3zo6GI#OJ-S46EUS}V%N3imc+I#OJ-S46E%F#O)B04L1w3JC<jHZkKg0d(y2PSk2FP-o=8c)jcv2:RD8Qn>kVMh=Ps00il32=:[PS&o:kS@G90F}sveG8+?idWEdn(I{)MQkC#JS@I{ac1[?e&S5}DS?%Oi(I]=XS/NqZ}2yxRS-YA6%nRw:ZPasl}V3OM3Ayca%nP7#%n6H}%nR@}(I{[:(I^QV(F#YxUM7P#S@Ja}S}@Z{KDDx4TnX]{SSi0#S{lR-k.u2kS}@J>R2Qp>S{lO.n}K7yS{lN-R2P.WS!dkCduQTgS{lQ:SSe##S^}bgS]L7#S&A80S@x2#S!ZUbSRF!]S&A80S@x2#S!&#)R2DR-S&A80S}@-}S/&TgSRHpWS&A80S}@-}S]y5vS]ZmiS&A80S{lQ:S]QhBS/<xkS&A80S{lQ:S}!dvS/:m+TlMZ+S{lQ:S}!{VS*0G4TlMZ+S&A80S@wp-S]WlXZXT$gS&A80S@Iw:}UEj}%nPa0S&A80S@J6#%nSc0%n5!@%n4#W%nP1$UMaU5@?6s@%n4#W%nAv#3JHea{:Q!3%luAW%nBbD0i=C5{<:E!ZNtDd%n5C}01n&b(wcL.fpAgD%k+vM00ri2LZ]Xj3*KL/%k^BCFb)v:M1&R=3&la/%k^x-Fb)v:RdAWc0@weY%lrP}Fb?n5Nn]MC0@weD%b:mX001XLMA19?0@wdUZMnA}000Ab<YbW&0@wj.ZVkv{000Ab}L]5I0]PDCZXQ@b000#r<n+DE2h>)l[bGzr003m6<P3^67w:u%}#t+TrAi#q<YbqXtL:P:}#uI)S&A&l}L{M}ULKH-}$js@%nSc00rr90%nC?sSl+!H%nSb%rx{J-%nF/pPG<%nSb?6*I-#%nA(w0ycW^%nSbqq2*N}%nDE]rZlXq%nSbqml*?L%n5P)SxZHFZYjcxml*XIkJDNAys0j+fAm>C6-V0HlY-ijw+xBgI#DLn6-O<ZrfOefw=I/gI$]V6q$9T:p)C4Ws]XK4ILj4D00L!R1Ne{=r@-j1Ic%t.rAf.Frq@d%rSA9}F}c<7rAfSg1oki3rSA9UR#P*$rAhENrr8h-rSzuu0ZG+JrAh)hq#=X{rSvPxPPAh*rAh<}5c8S{MI{>dxDZw8r25vj%nSb0S!@nQr25zi%nS9l0Ar5}rF?$s1YXM4%l{Klrz=:)rs2ro0z<IhklT$2pZ6&+r49Rv0ydx1jwVX96&!lqrhbl!0z<Ihk$a+(mo9q4k)&F!1YMfJmhcAOk#*-YrJmILrtwEFq9!gKpYHI@rJmJqk#XO0r8(({q#^84rJmKhk#X1Nr8:zd6&!mlrJl$408JW%rs}E}.bTGnrvS-500000rtv[3@1S3drvTbg1SAQ90t2!w%g!!b04Kag6>{UF02nDj%m5xLqYnIj6{5z002nDj%nkX)r24X#6:*=Lrs/Yv%nJ6l6JCro6^T1#r24T$%nSbm0@#d$p/g3*%nC<:%3WE#@$LYq0tD7A%nF?kktTPA@@u4#[KlyPFbQq%4&4[i]hO^?[LJoTao2.rpEO7S=S9$gjx8EQao5bLpF:pQkugX!pzD.8FbVDA4&4[r=S9{Fp@c9g%n1ilpSlc3]hO:!rxH/(%k/$Okqkt4%5A2$6*I-#%caB0kr]hF%5z(gkTkqG%bWB1lQgRJ%5xj*rzSU{%calkr8rL=]8F}[06*I-%liI}06*IY=&rJnrzSU{%nFn#r8rL]kMyS@r6QA.(I)*$13=?-=&s3X1onA3FDbDXrr90&]z!<<%nSb#0rr3#q#=)$%nSc0%nP[m@%/2d%6tW8%nSc0%nJ/A@%%RA%6Hov%mt<W5bZg7%nNO6%nNO2%npjm]yn&S5bK0A%n6Ch%nLsP]tN-fLI*hLZU&>1ZX(BH]8S3{m5RvGX#l>>Y7tK>4?]}U6D*%/PDE/DQw$n[@$LNgr7:c^G?wtvHx4qN@$Ouwrfz0@KDKvULk>NZ@$OK5q@SzeKrPjPLjOqB%g}Y7pLF}cG:4KlHwYx$%ni3?kn:.cPQt&ZQw)ET%nP]6%d#v)Y5/<{Y8o[O%nS00%k:k:ZVtD0ZW}6%%nSc0%n2-6z#9EwfAq7L%nSc0%nPaetMp.k3&*nb%nOGpR2QF{%nOF>R2QF{%nRskSSi1#%nRcXSSi1#%nS6<S@Jb0%n5yYS@Jb0%nS6<S@Jb0%k^TYS@Jb0@@q!&2lj-6@/%dI2lj-6}tZnL0SSi1}g^@g0SSi1}V3LDFDbVC}S)#QP-t4}Rt{NEP-t5NRt{NUP-t0{q2*MSQ3zSSq2*NN0SSdg3JHd!29(.63JHd!2ljZ/S@Ja}Tas^ZS@Ja}SSi0YS@JaXZV]j1S@Ja#zVxYdS@J9+%nO*^S@Ja{z#Y/eS@J9Z%nR8eS@JaTz#Y5KSSi0Y%nRcXSSi1WZYfYKR2QFX%nR)0R2QF>%eUC+%nS8#%5A60rAi40rHPir}V3u!%5A60rAi40rJemCRt{tGZfaPwsY[)gs(?c#q2^GLxJwXBwMAwyw-P(!o8.#?sxgR^L#T8HM6efyd/KhZt2]inwMAwywS<4NS{lR-S--FcsY[)gs^2PwSEOWSc@<nErAi40rG:fsSEOWSc@<nErAi40rG:uxS{lR-S-r50rAi40rG:xTd/KhZt3k0hsY[)gs(=QUo8.#?sxo0lwMAwyw-UAbq2^GLxJpr$L#T8HM8N4hRt{tGZe!/CwMAwywTX[H}V3u!%5&GcsY[)gs/Z&/%nS8#%5A60rAi40rSAa0%mG+0(I{[:%nSb%0rr90%ja4EK]LEY%nSb?rRuy(%5o)oF=C=I%nJ8rrOz%5%4&]FS@Jb0%nk>h0b}]q%5oe[S@Jb0[BoG&0dU4E%5xk]S@Jb0-QMg[0re$$E]PG^S@J1%74zn70q-ZB*eRc&S@IR?5BYV10qQxc%5A6qyx9/60pP%*0qCiEF7mLq{5B%&0pP%*0rq+)S)$au[C&K*.0?s70rr1$S}xx9PA1@>[BczT0rr75S@k$Dw=I/g%nh&%0rr8(S@Dl4tl1T5%nJ8m0rr90rSAa0!=kWH%nSb*0rr90%nSc0%nSc0%nSb%0rr90%nSc0%nG4#Fb/MG%nSc0%nSc0%n5+0?#A-R%lGZ+%lxT:F99=i}#uY@%nG!k%n5@0?%dkw@@r2#%nPe1%nG4#{XH[&Zw[lk%nR@}%nPal{XH)ZT]FC3%nS8k%nRw/@R&*WUMaU5%nSb5%nz!-@OKSLTn=Mb%nR&V%nNLB@RbPSTnS7#%nS5]%nRnZZY5LVS@Iw:{5C5-ZYjb{UM7h]S@Fv0%nSbZUMaPJTn?wFS@EM:%nSb{(&m0.(I{ZfRVlXES@Ja#DJj3w{w+e@(I{[.rSAa0%nSc0@R#]$%nSc0%nSc0%nSc0%nSc0%nSc0%nSc0%d#7Z%nSc0%n2}0%nSc0%e6f6%nSc0S}{Df%nSc0%e7qC%nSb}rR*wd%nSc0}LwYw}V3PSu&1Bn%nSb#RknXwRt{NX%n2*%%nSb-u*g}%rr8@8%n58Z%nS7+%liRXsPwhD%nFq-%nR[A%n2:>yx9z}%nF>{%nRiVrR?$-yx9F%%nO{5%nOCorSn*$yx6U2!=hQG%nDw9S@G538VMD5rSzt:rSmbQS@IvImGcT]rSz]XrR+jCrSz]{P-fvuS@J6$rR+vBrSA90S}{<MS@Ja0S]W$}%nSb}S}]+}Fb/MBS]Z7b%nSc0}UBxZ%nSc0}V3P}(I{[Su&QeRysN70S@Ja#Mh*):%nSb$rSb]$rSo2]rSAa0%nSc0!=juM%ex2Wrr90#%nSc0%nw$$%5YlZq2*N}%nSc0{4C3T%nSa:x-Fbj%nSc0rOz%5%nSa:S&#p0%nSb(t3p[9%5A6:S-(mHshj^=T7?Rl%5A6:S)$fJrCRRnZIiZFrJr6:S@J90rO1]*%ek(%rJr6fyxarGSR{NE%f8D5rAi5W8EJfqS:w=f%g!PlS-r6L0f{P*}J}k%%nSb0S@J91KGbtX%d$kB%nSc0%nSb0S+Oyg%eIv:%nSc0%nSb0S-r70%5#D5%nSc0%nS8k%nPc=RM08(Sq([$%nR<E%nAj/rCv:8Ne^i^%nR<E%nAj/rF+p!Qw$n[%lGCkUL}N/s=c=#y5!kk%ap1#3&^n)w==9IrSAa0%a4Qc3&/LOw==2kS@Jb0%kkpFfAp[gw#H#(tl1T5%m#.CZY7newMQmAs]XK4%nNR3Tnn<}Rc17<s]XK4%nO.[0{HT6<Zn7yo26U(%loN&3Ayca}cZdL2^fB[ZKMqbS!M67}d:2[7]ZInz?6r/ar*)!@-9c#w^IEqz%z&UaFo2u%d@.0L)Kp-tJ=t1PQl(4%n2.}rsf6ttBl(EsG0wx%nP9}s{+lorW$3PRKq5@%nRu-%nSc0IgtUTcy4*n%nOI!%nSb#L7iJPcxSlD%nCQ&%nSb{LXLZOe0mQD%n2j+%eMa]wO7]z0]O1%%k)eT@Y)WD8KHHa0]$s2%kxmy}6(^i1Z&.UIUNFR%b.0}}6}cUk.b^Qeb/RI%cw@I}auz3r!cL=3&Qkc(x&Z]@.J*UsGi=03?$bfKE#{W%cl*Mu))ANUI.8kn$.4v%eJo:vKw3b%lvw#n%/}+@-o6Xv5l%U%nSb#p)N%T@-/A#sxezp%nSc0Me#3C}eurer-J@n%nSc0(IsJX(1*s#M8.R0%nSc0}tWF{Np=H0(I{[:%nReWS@Jb0%nP6%3JHea%nReWFDbVH%nA7)0@@r2%nRgg0SSi1%m=O/q2*N}%nR)A2lj-6%m&mHKPkvX%nR)!m/SI*%m@vuq2*N}(I{&YG8+(J(I:/&0@@r1Mh*&-Lk>NYMhWZ8yxas#k(Z>mQw%Jyq2S.iS@J9-d/YFFbl9+33Jru$3ig05S@J59bk%?MS@u9y0@@l(S@J5<v/y3+S@F>sG8+S@S@J9:G8fdgS@If)Hx460S@Ja:lGKrd3JG$4tMr=:S@Ja#qJ@U)0@@r1UM9W-SSi1#Mxh7ElJv8=%nReWR2QF{(/$HILk>NZ%nRx:%nS2Pd/XOfS@Iw:(I^7G}V3bp3JGg!FC$VfKOIfwRsj+xIVq$w1]ee]0oCZfq1yMFN/v]p8SWNL0oyfQo7BE[yw[hYz@K)S0fTwTd!nh/MI@oPz<Z/>d3yN<S(*I7lJgUbI?}Q/MxF68SuwkulJrs9Tbf&bK=(K3Su[OAMJ9%7%a%:aM6eccS(/}[(I(}@%ajm3c6Cq7d!nt]%nOgj%b-Ic3fnbZo7BFi%nR2T%kkiY0{7{hq1yQ=%nR@}%kTHE0qO[WRsj/>%nSc0%m(-(0ren-}V3c^%nSc0%nFbVKPjRC%nS2%%nSc0%nRx:(I{[-%l{0/)%(8MrSA5#Tn&j{ZL&9>I*#zrrSzu:S@I$>Z5[8z3XRMX1]>P5S@I8NXdWZLon3uCF=qRGyx9ka{.8KsUyGVFKP5^<8VO:g&81$T%ad2DKOJH*N!}Q*&8x<\u002F%add:k(1DPNC@-8Fk=WW)$2gL0qM&0L&vk}1xkKjI@wyJywsH5q2t/e5d!<zI@ntoS}-Ic3JCUS01Ybi0@b@+S}-N]d/U201POJ50@9LhRt.%AS@4ri6-X^B68&6mrSii5Rq.ILrrb&b690FZk(Vvmp#zHNrzVH*694d}3JGq&0n[2Trz=Z{0@@n1UMaQ4S@Jb0%nSc0%nSc0%nR@g(I{[M%nSc0%nSc0%eLg:Rt!k/@@r2#%nS8#@!u>RN/j%#}2yx]%n8J<{#e6rw=r6(<P2nW}RX)-}tcs4N/v$><]ts-<(E@S@{2NLIVn*3Mh*?5<Oqx0%exz2FDa.)N/ooQMhT^GZOzZvFDa.@S}VP{rR&MS%e7ILS@IgCSR6j<S]al:%lgYa0SOBISR]?2S]WmSZVlI50qxI]y5.(JRtv1DZMs/.P.D#pw=E(&rSzfn@^])8S}Dz(rSkA)rr8=W{(19.ItZ^.{5m$>!=kTm}s1fOS@Ja$Fb/MG{5C6(@@r2{%nSc0}M6U@(z%%+@@Pj2Mh*):<\u002F!Z:Fcb=J%3A-2Mh^]+NYuz!006!l%5Ma5MI%kIS^}>VdU6hL%c/@/r@15udX:YMS^}qM%eJ80ywsRhS^}qFIvcw:%luQ:rPO{lF=Ep}S?oA[ULLn:rPK@}Q5Uh*aowBvTnn&YrH3M+ILMvkFUi7AS@xLerH3I$PB2i8015.b(I{&-rH3w:28N6LxAk6j}V3K]6[(Zys.hHj0!vqJP-t4>k.7tmRdEBqkQ@^GP-t5>M4C&ErCIN0p+5FGSq([$(wCyqwPdQGLQQvmSq([$%eVd0Y1!mHS&xl&0@@r2%5xl/ZYiT1%luU*%m?9A3rv[wS@Gd1}L{P@ZXA(<d{l49S@x6#S&AmMfzDT&S?<nPebDoCS&D70S<<eLdPDI1UJ&cr3Ayb00jTcKdPuAQZV}-$3AyaR5v-?.T5PgnTeVd1dYPJHp:^B^dPGGG28AlVS&D71wc:pTdPPPAMwtIA3A%FfwE6y=S-(A%Hkt)g3AyqawK}):Ut@uor!pqKdYPKXwL4yNZzu<1yMXU$lAmk2Rd$KXZIA>CZV4GV0&(on}kKAB%g!OG%knzc3A%FF(z:?mUMaTa%knzcbc7WTS&b]$UMaTq%kXXglAyd^S&c00S@Jb0S^>6$S@Gd1%f8F5}V3P}IHUWIS}@:0%eJ<l&q-&R00001TlMZ+%9#^5FCOP%PA1@@UD1R5Zw$qk3GV>]2MK&yUD1R5UB>(}dUXYQqucX%TeY{mTag+iQn>8<Mrjn&TeP&GS@L$D3w5P<czjHxS@^0Iy5}<}0]/b}b.f3jZxea:ye[>@0q(k+Q>8Z:%3x.1yO+Ry0rr7!xQ8*4%4lo>S+2]B0ro9=Su(G.%7ULlT7wph0rmUHb$S4P%eG7lZIo+G0rq4[36@va%eG75UwQos2ljK7S*rX+%el9oUFc}n0rr85%lGZ+%el10S}@v*0iud@Fb/!LS@Jb0%f8F5(h[-.0007]S@Jb0%eVh0Fb?m+0001)Tn&k1%eMa]0h80z000>kUMaU5%cpvUPR8WG000waUMaU5%b+1PSdkl#5i{q[Tn&g0Tb%{LHYTSIaB%P<Tn?E+TkH2sS4a$[PN)lhTn!n@ULJ>o2=:@1Qkx2LZY3FpZY1kkFgvR1S&y@>%nA0p%nApYF?0?3S&A90%l6D^%nApQQn>z%S&A90%amoJ%nER4yo4rlS{lR:%eVh1%nPa:NYAS)S{n)H%nSc0%nRxFwVz}rTlP3J%nSc0%nSaH8MG*vUJ#k*%nSc0%nSb0T2ef60fkza0o?=f07b6k0g.Bp0qs!u08R8z0ijDE00H:J0aaaO0jZFT020=Y0bQc+0liH*03G!(0d9e}0mYK004#?50ePha0ohMf06F<k0g8jp0pXOu07$(z0hOlE0rgQJ09E[O0j7nT01vMY0a%{+0kNp*02<O(0cD@}0m6s004uR50d@#a0nMuf05&Tk0fD1p0p5wu07tVz0g@3E0qLyJ08?XO0iC5T00.uY0asZ+0j}7*02jw(0b*-}0lBa003Zz50dr=a0m{cf05iBk0e/!p0oAeu06YDz0gq*E0p]gJ08hFO0h!&T008cY09XH+0aC{d0daXC0fWx.0k[<q0k[<q0k[<q0k[<q0k[<q0aC{d0daXC0fWx.0k[<q0aC{d0daXC0fWx.0k[<q09]N80b.=p0fWx.0b.=p0fWx.09]N80b.=p0fWx.0j-7f0nELO044ZD02kIm0nELO0j-7f0fWx.09]N808-^%0aC{d0daXC0aC{d08-^%0aC{d0daXC0aC{d08-^%0aC{d0daXC0aC{d08-^%0aC{d0daXC0aC{d09]N80b.=p0fWx.0b.=p0fWx.09]N80b.=p0fWx.0j-7f0nELO044ZD02kIm0nELO0j-7f0fWx.09]N800ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic200ic2000000osgY0px<\u002F0px<\u002F04F3I080v[0fWD:000000fWD:0jS4f0b@2u0000000000080v[0eHTQ0eHTQ0jS4f0px<\u002F04F3I0000004F3I0ce8u0osgY0000000&M800&M800&M800ic200ic200ic200ic200Ao400Ao400Ao400Ao401Ybg00&M800&M800&M800ic200ic200ic200ic200Ao400Ao400Ao400Ao401Ybg0rqt/%nR@g%nR}@%nSc0%nOf+%nRw/%nO(}%nR}}%nFD/ZYij1%nArdZX:/wULs:{fAc<6ZV[c*z#6=atLK8IfzIsYfzZ^8tLZV?tLLj#fzH+EfAn2mtMf.UtLS3kz$].ofzV(Az#V/1z#H1+ZXKYwz$>DbZXPdaz#JoJZY76kZY3GM%m^Z*ZXJ@}z#KrWz#V8>%nCor%kx#Tz$)[fz#V&m%nPa0%kGqKz$]+#UM6$oZYikTZXQhrZY3F4ZYf9oZYikTfAd}O%nFo!ZYf+5ZYgrqfzX2nZY7maUM7K5%nA1%fAd#K%nPa0ZY7mkZY7mkTn&k1%nSc0%nSc0%nJ1$%g+OG%l(#5%nRx0%m<b<UC$3b%eFI6%nOv5%ktDa8>-o[%eq2W%n2L}%aTbINY4J$ZO&DzZV59)ZNgE-v^ajCz%mPPz@NQ(ZParlv!#Gsz#b>FyVmO@ULopEHt<QcUI{@SG668jULs*$NT$/WI?hjGLkhbP3&Ro0yWd{ZG6Gv#RUIu?3&QB9UI+WyG5z[>IUYNPUM7G1z@u)TLhIQ5G88BtZYiy$fz.IxRUWb^G8O!=z#Ya0z#YVhY8RR7G8R+/fAmW{ZYjtlZYjtlQws}AZYiO(fAq7L%nSc0(I^/-ZYjtlZYjeh%nG44%nSc0%nR@0%nRs0%m^YA%nRw+%nO{0%nF/jZXS?ZZWvg0UL}ukZXB3efzIsYfx:X.tMdS/z${rifzH+Efx&^OtLLiAz$[?:fzQ&kz#8!Sz%mrfZV/Hjz#L#kZXT*0ZP6QcZK^x1ZYgbG%lbsDZV}*a%kDM)ZY4wsZU<XJ%nBj1%n4/Y%nCF<z$%CN%m=R>ZY4#EZY49f3*K:)%eGahZXT77ZY6Dk3XzzGZLY14ZXIy&ZYgcBUyY<(fpmu<ZY7iuZYiOJ%luN!fp4iw%nR}*UMaDJZY1qkfo{hT%nS7#ZYjtlZXT$gTe-t5ZYjql%nSc0%nPal%nGQA%nR)0%nIq-ZY2vR%m^)U%nRv:ZXB7KUL%aT%m!5.%nNRDz#9ptULFL>ZXT%/%n5V3I#D[EZXO>gTneP<ZY7l+8#:I0TlKw-MIEhfZYgsjtMdh3G6G1{r@4mKZYfaDyYl^]G8M)TtLTcWZYfyLUL}K?TnTocz#2ndTn/apZYfR1ZY79lZXJ$6v/uOhZY4$K%nD=jyX?!lv/uKkZY4a$%nFc-lIKLUTn/2cZY6EH%n4@:lG[EOZYiP0UM7Cl%m^)zTa<RTec2Q0UM9)rZXOqgfm*d40@@q2ZYjegZY7mkUD1R5S@Jb0}UH5(ULO9@UMaU5%nR@}<(0es3/EV+3&/H}%nRiXL&ehw3/WRLI#F/w%nOw-NWPXxRUD#>fq{f2UL%^YPQqMVcIS/vfx&^OtLLk[IKoRzcISZnfzX1(tLJ:zS{2<uebu2Bz#cF9z${vdywBYfz#M.tZVWcNZXK]as]LmfUL%?<ZU<XJ%n4SHn=y2#ZY3V$ZO}nN%m}GDKP4<vZY48cZLY4(%k/{Hyw}3FZY72jZK/EKUJq!WSS5-4ZY1KyZV5n{I@>uB3I>a5ULFQ0ULLn+I#0!W3I{^0ULIC5UM9Jg3&Wg9TnYc0ZY7mkZYgslTn?E*%nSbV(I))0%nSb@]8s.P%nS9UIN(8(%nSb++JHkR%nR@fS?tN}%nR@XYR#iGZYiA<SIy&a%nR[[f6U=WZY6F)Nw*JtZYin6yX>55z$]N(KM@!>ZYe[UHuKH3z${g8lzt>P%nO:1LhH{0ZXAY.2.As$%nN[PqMfZp%m@t!Ft-^T%luQIMwRYy%nD^jyj.))%ajpkcw2l-%nFF^s+pl&%ajmJMF${CZXx8NsM@&/%luQ}tL+s0z$<XsSS374%a%fQtMsM1UI{h>3JEcb%ajdVz#Y/!fxdPW3i3O9%kovBZYiP0Tnn<}S@x2#%luS0%nRA+(&m1+UMaU5%n5!}ZYe]=G8+cjz%Caq%ki$NfAn3JG8.1}yMVyi(z/^qfAmvlG8QU?r-9/mMr7i=UL}b?S}-MUS-<uusY^uMyw]WTMIuo00hV)#30n>Ry5PBOywrswKr[&Ar&i7@MIuZz75pgISWhDXMh?r?KOC7tk(K367-D(->PCGMNFr3CMIDSfarWAUM)^<\u0021RtuFMNFyQQy9onEM$AL%S@sstSRIe8PELM?sFfE8N/wouL>{1dXwd55r-*n7P-pX:<[:O]}V3D(r2b?QN/zWM}U(9D%nSc0R9RoP<]thS%nPb0%nSc0}L%Os}V3z}%nR@g%nR}@%nSc0%nF&#ZY7moZYgdc%nR}}%m!3RfzDT}fA8p+ZX:>7ULojCfzE2}fx$>gz#6!EtL:!=ULL4kULKAYtLZU)tLUq0z#2Rkz#V?utMf!+tLUq0z#2!pz#7UXz#V?uz#2hkz#3jBz$>IVZXPcSz#2hkz#3kkz#J7b%m^^vZY6r0z#3kvZYf:a%nCt*%nD=jZY4/fZYgdc%nOx*%nCC!ZY4zlZYfM@ZYiL}ZY44gZY3F4ZYe//ZYim<fAmqLZY6HkZYfR1ZYgktfAd#5UL$L{UM7K5%nA7#fAn5LZYgslZY7mkZY7mkTn?F+}V3P}%nSc0%nSc0%nOhX<]sRH%nR}@%nRw/%nFF^Mh=}I%nRf+%nOf+%m&nZKP7XHZY6H}ZY6W5ZXAYYIUJ?GfzHRofzIgAfzINxS}.ECfzHB0fzHB0fx)lEyws*efzIMEfq$[JfnZ4n2(ekmz%Bv4z&gLzz&d8qnB0h$ZU<X^ZKMqbZLO5lKL>Zmz@zrLUy@O[z?$ATS]jM$z@NF}yLhZrz?%WyIq>n5z@BP]tz921UzLPfH#zkOZU@5>I?z9NZV}/VRqUrQ%l6/8UyPU5%n27US}V}3ZXT%YUIYzXZY7nkS@x2#%nG3#ZXT$g%nSc0%nSc0%nSc0%nSc0%nR}@%nRw/%nSc0%nR}@%nRf+%nFc+%nRw+%nRgIZY6H}ZXx5&%l+$HZYfJnfzHRofr2m?ZVV%Ez#J)Eyn^2:frdu}z%mNtz#0<[S/0/afn=R#z(McXz#0?gQjrj)z?%nSZLX)WZY4Snb7#TjZO3e=%a(KsZYf%U8IwbmUBbCh%dB@J%nReWRI1%%yNOCc%cUt!%nRv+cwhyHtBzdI%c!L9ZYfQ=cv]bxI<*r7ZNx:PfAa$KRR?DOUBy#XZNKH(fAd#K>iw%$UDaP6%c[LqfAlLM}UEj(ZY7mkZPKPpTnYc0ZYjfg%nRx:%nRw/%nSc0%nO+(%nOw:S@Ft5%nPa5%nD61%nC<>rq]Z4ZXQ[F[a*5&Yzl41lht8yTk#SPUC#5le9hVIw-X^NUJotDUB8s$yVQrjIT2}h%ltGwZNci@S}?nxHwm^yUI#Nt%lutEQw/=uG7]rEfw(*oULoPwbc4QbS}Yg0ZU{OifzD/A8IepNG7}Oz%kr@HZXB7]RI4O268jZ8%kr@I%nG30cw)SsQwc$^%kr@J%nD5+cwt1HqUQ$[%kl(+%n5N(RIdU3qVlU7%m=Nz%kj^%>hmxS3JEcb%nG3GZV}&0Y85D6S@x2#%luR:ZYjtm(I{[:%n82}%nG44%nR}MQw$m](Iu6I%m{4g%nRw.0@@a%QuXWXS]/+EZYf@lqVAx%0{V^52ahh8fAc<6LkZukLhDy#Mz*2-fzIsYbkv@Lbh@>TcIS#AfzH!Fbkvy6bh@>RMG+jYz$].obkvymbh^#^S]*cYZXKZbx8dY}v!=W<ZVzq/ZXRIBObe%+RV9IpZXTx@ZXKZrULBO&ObMItZY3F4ZXPmsULHZ>UL}O0ZY6H4ZY3?eZY466ZYgs1ZY7mfZY6H4ZY76gZYiP0fAn55UL$L{ULFQaZYe*jfAq3KZYgslZY7mk%nG3#UMaU5%g!Pq%nSc0%nSc0%nSc0%f8E6%nSc0%nSc0%nSc0@%O&m%nSc0}V3P}%nR@g%dWo5ZYjfg<]tgT%nRw/@#9KefApekNG65#%nO-1@$W71fAdymP-bl-ZY6a+Zzn29ebk!jIT0Jhz${aDfbw22v!+&QS}}*KtLKA#fiU8NHrcypyx7n@tGAiFbw7y/HrjhE2(k-%tGJYSw0QObHqBkknxq{9w5t6yGhFwuHvy2*KITnqGtsr=0%Lz2HwSL0d!6Er5ay(M4{D2mI#J!S0q(/%kMq7v%dDM}UMaU5%nSc0%nSc0%eJ&l%nSc0%nSc0%nSc0%nSc0%nSc0%nSc0%nSc0%nRw:%nSc0%nR@g%nQTH{5yscZYjeh%nRw/%nuZhtk**BZYg9g%nO-1%mSF^S}*ys%nArdZY6a+ZUkZYS}*4%UJ!CSz${aDfwrD0tid1VfzZ^8tLKA#fib2QS]U9xTn/eZtLKQ4fkvJLS]Wn[3&h60tLU9hz!=p!S]WAMI$!ADz$o-9Kj{R/S}@-}d!k&VKmGbJ5a%04yw{V0cH^pT5aDAe5b93%S@t*rLkD/dkL$>YkIAc>S@F]]oAa$(%nP>p%mSF^S@IvofAq7L%nSc0%nuZhtl1P4ZYjul%nSc0%nQTH{5p#/%nSc0%nSaHdXD<yFCy4PZYjul%nSaHKxqN:0{3vfZYjul%nSaJNPt3s36I0VZYjul%nSa^PAV:xnS0HVZYiP/%nSa^ILqC%tab^EUM6&B%nSa^S&vzBtbS>%3&=rT%nS7^yn>*At8sI<3&+//%nR>W2Q2Cjth?>DoAjl=%nR>.nfK>fti-7V8#>U[%nS7{KoPE0t8u/uUM9/t%nSaMS&w%@s+o?Sz#Y*K%nSaJL#-HosN8LJZYjul%nSb0kME*-sPvp$%nSc0%nSa+RcogMtl1D5%nSc0%nSa!3zq0/tl1T5%nSc0%nSb0S&A7RS&A80LME>n0igL+S&#E4X(2GcL(N?m0ic31SVh0kbT@cvL%u*H0h]{0S-]C$dWRcOL#hpYrJez/SSx)hSVV5RL#RN:rJe#0S&An#S0XAZL#RN:rJe#0S&A8{HZnQfL#RN:rJe#0S&Ab}FjHPQL#RN:rJe#0STcxnL9{6-L#RN:mx6o/S!4}XL4H.]1YYr5l8^<+S+ROkwlA9oKqhI}k=E::S!goINKwJyRb.n}p]NC#SSJk16^W4-SA0X#rh&(jS&D9{k=Q&Ht2/g1rHD<-r+/zeM82QO0*NkWrF:+b0*26=yo11U0ih=[S/0!R0&&D?SVa@rrtwJlSS=y51R>15RbZI{01/^xS-r40r8rQf8Dx^qrG]}LS-q>gp)C7YMq{]*0A>?<S-r4:6<l*4RbZI}rCv(3S.=X}p*66uRbZI0kVH^-S-r4:1RB.gQe+h[rriVhS-oj50yM%*Mq{{Y5l8c0S-r41rfZSRS-r50rG]}LS-oiarI--)Qe+g[raY<AS-r4#09iW9Mq{{+rtwJlS.=X(6+%XKSz#}01RB.lS-r4lkU%[G8Dx^qrs@6cS-q>(rz:u2vPuz[1^5$*S-r45k=3@ct2!N5rCtQoSS=x6rAU-^RbZIbp./m}S-r4#0r(D5mGrP*09930rrlp1kVH/:rAuc1L#Q*:rJq&kS-r50rJnp:ye)I1rr94+08JT}6-!t61op.M08MSfkM$d+kMy%:09930rrk]1kVH/:rA5}#rAi04rrbrM08@{#rr94@pYHIY08%To5D@tq09930mo9t/rAi40rAi40rr9h0098?@rrlp1kVE^:09k)lL(H?Y0ieo+SSii46-Xyr09930rrJpk09930rx%L:p/QH}rAi40rAi40rr9h0000f/00co1kVwE#1Y?U6L#Q*:rJr70S-r50rJr70S-r50rJqb+S-r50rJb@#ye)I5rr9Qx08JT}6&!mlrA6c4rrVx51YLU46&!mk079tP6&!llr6)k+FMkYIryit=FMkIYp?QgyFMkXN0Aok}dofwk6&}ec6&!mlrAi40rzVW}p/EP{6&!lqkTU-EG&Ibr1WX<?FMkYIryit=FMh>N0B?=CaYRJs5lGm28c6Vqr92&0L#Q*:rAi3}6&+zvrA6b#6&!llr8:2dFMkYH079s=FMkYIryit=FLYuy6*!N^dofvG1.Xlt6&!lGkVv[<L#Q*:rAi40rAh<(rA6b#6&!m01Yz395MI*mkTIaJFMkYIryit=FDY3Ory^yMIb^K!p?f=rb#)@A0AM42L}Sgq{?D^drJ(]34YVKerLQrk1few3rLVL<l-B*I]${}Dl-B*F]$}Lzl-Nel]$}Mel-Neo]$XR)18s/nrwjwp{?D^drJ(#x4YVKerLSUT1f33prL=D:1eD&.]$!Ev.>Xh#]$!Ri.(mx#]$!Uj.(x.^]$UT$18s/nrwjyL{?D^drJ(D64Y9ugrL.=flZeu>!X$!rq&?ih]#g>Lq&?ih]#jZlq<n5xWz/$mq(9VE]$+Z]lU-P2rwjyL{*)PfrJ(Ov4Wm-l!XLPIlR)}>!X#Osq:pwh]#jZlq:pwdWz/%Xq=0TtB&zjYq<n5E]$+Z]lUfz2rrVk0Te=j1%4&)}t?c2@}kFb[tS3r[z(P&0A1c4K%eJ9XAsDdL%eJ9XAzoWq%eJ9{A7$oJ%eJ9#Tuab@@@u70(z%%+%5x6#Rp@XI%eIyYMO#5ERMcV)tS5.+%eJ9}A80Lo%eJ9}AzrUp%eJ9#U[1LG%eJa0TucyY%4&[0%nSc0@@(m0(z%%Xz!=oKR=%as}L{N{OyUEP%eJ9#OhOdZ%eJ9#U[1LG%eJ9#U$&7l%eJa0TucyY%5x70%nSc0@@u70%nSc0Mx[MJ(z%@Z%eJa0S{oS:%eJa0T2*pX%eJa0TucyY%eJa0(]UmE%eJa0@d1+D%1BAL{]pu]S&#{34YVK$ROB[g1fqp3yqv^9l-)I>S(1#Nl:0O{Y2bpZl-W!/>ed%#l-Ne^S>=W11fex3SXsxp{]pu]S<00x4Zk-eS>-VT1g>UnS>(E:1l13{S>(IF.@W@1(CpD7.%jq5S>(Yt.[91JS>-Y81fex3SXszL{]pu]S&#E64W%n{S>?^fl-$g8}O=Z:q(V>1UeLtZq)9ZmUeOgzq>8{IY2zHrq(V<$S>&=3l-Ne^SXszL{]pu]S&#Pv4YVLj}OuI@l-Ne$UeLC>q(M!PySj7Rq(/iBThR[Nq(V>.ThR@tq(V>eUebh7l-Ne^SUtBk6CS>kr8:2$6+%KGr8sre1PRHppYIkf000Zj000YE000:g002$k08Kzb1R<&qr8:2$6+@$mr1]rj6A[EppZ6/kpZ3?0pYKG{0964+rr9h008@$:6-Xnh0003+08@$:6-Xzl0964+rrc3000Ju5pZ6/kpZ3?0pYTM@kTkGH0rCB^kTkun0r>Z?p^t0X0Azw=rAf20rAf20rAho+rx{J:0r>Z?p^t4D0rCB^kTkGH0rDh2kU}FD1Ybg01WD6/0tN<11oqm402nrlq#/.#02nrBr25jkq#/-f02nrlq#/-f02m:1r6TC-0z&:@1Ybj+1YXM5rAhE/rz=:@rAhE/rz=:@rAf+qk#*]+rAf=grA8%{rAi40rA8%4k#*uNrz=:@rAhE/rz=:@rAi40rAf=lrAi40rAf=lrA8%#rAhE/1YOG4rAhENp/QH}rAi40rz=:Zp/Olgrz=:@1YVpqrA8%#rAi40rA8%#rAi3}ryG[/rAh)1k$a^NrAh)@rtwIlrAi40rtwIlrAi0#rAi40rAi0#ryG[/rAh)@ryG)>k#*=ZrAi3}rtwIlrAi3+p.=#grAi0#1W#A>rAi0#ryG[/rAi40rAi40rAh)@rtwIlrAh)@rtwIl1YXJ4rAi3+p/QE{rAi40rtwIlrz=:@1R>0prz=:}01/+Ck#*[+r8rP(rA8%#rG]{LrA8%kp)C6Yrz=:10A>*<rz=:Y6<l/4rAf=lrCv>3rAf=lp*65-rAhD>kVH=-rAhEM1RBZlrAi40rriT%p/Olg0yM@*1YVpl5l8b0rAi31rfZS!rAi40rG]{LrAh)1rI-.@rAh(@raY&ArAi3#09iVhrAi0#rtwIlrAi0{6+%XFrAh(%1RBYqk#*+%kU%)CrtwIlrs@4[p.=#brz:ud1W#AR1^5%*ryG)>k=3}IrAi40rCtPortwHmrAU.&rtwHBp./l}rAi3#0r(C5rAi50S+OHk00MwaS&A6009940S&A6009940S&o.$[kSF*S&o.}[kSq+Rk*KT[kSF*S&A6-[kSF*S+OHk09940S+OHk08MW(S&A6009940S&o.n09940S?ZK}[kSF*S?ZK}[kPT(tb=m0[kSF*S&A6-[kSF*S+OHk09940S+OHk096i5tbty809940S*1ncZ/symS/NAE[kSF*S/NAE[k9bYS*1nUUVjY6S?&(-[kSF*S+OHk09940S+2rn098<}Riz-7Z/symS.-<cZ/symSZ3OE[kSF*SZ3OAUMX3gS.-<QA8/]rS*1n-[kSF*S+2rk0pGpP%ex-#0Lt$U%d*L#0Q^bU)O<]$1/!PmYh.<hrJr70S-r50rJr70S-r4#6@[pgt2!N5rJr6X22[P5rSAa0%cap@tl1SmYo0kZr@-f!)OB6^6$.8?Yh.<g74gH&S-r50rJr70S-r50rJr6@NP724rI-)0NPiu/rSAa0%3cQ:yxatl%3cQX8T^4[%4&>#6$.8)%5A60rQN3T)P0m!rJr7hYhPIBrI-)0S-r50rGEAZS-r4#rSAa0%e89D7xsADYoMAU2ljX<)O<]$1?RyTYhPIBrQPpPS-r50rJr70S-r50rI(^@S-r4#6@E>8t2!N5rSo1!ZY7m4ZY7/FZY7/FZYa4j%nI*$%nR:@%nR:@%nRg/%nRg/%nO{lZYgcGZY77jZY77jZY7agZY7agZXHYez#0jjz#0mcz#0mcz#0y0z#0y0z#0@Bz#0@Bz#3gfULB%{ULK)[ULK)[ULKs/ULJ+RULI6lz#8Zqz<rM>r*t]Nr*rT*7l[>67l!!47l!!47l!!07l!!07l!!07l!!07l/vg7l/vg7l?R}r*lzXr*uFZr*uFZr@5J(ULB%{ULK)[ULK)[ULKs/ULKs/ULI6lz#9oGz#0jjz#0jjz#0mcz#0mcz#0y0z#0y0z#0@Bz#0@Bz?4/!@Lgb7>KexJ}[Jgk>LdFiftWX)>Ky!LpS[ncq]5Cq1npTePtgBbR$(^Uz[[6z>KhzJ}[K]5>yrKi@Leyj@(f.0c*}3n}]e!tc&s0AkG8IWxyC)4pR#(d!4+#-l?X1-Pt:l0c&GHkF5WmHc*$5m}]jy%c+]YY@^T$F@O9mkc*}3n}}E4ic?]}bfwxa0c?g1lpU1E6!4[&Yq$^N2Pv^5unbnUIz}UL#7W&8r}}u$hcX8f@@xHtZ@mDetq@mMP{T<Soq$}8bfw6o3q$ipM562zT1i0I91noIKPv1xs1nOy.z}F5!q@nr&{T<Soq:prZ}#uZ#gGjJTrr9N7{F.q)6-Z5:ksh2t6*BIOh:TeAF.8&#h:TeAF=vUqh!SK9F=v$7h=G%NdGw#[4{2J66-XkngGvBPrr93[]hC(&6-X^sgEIvrG*dx[h:TeAF.8Y}ksh1IF=vUqh!5H7a]:H<4{fd18uoZ<09k}1L(H!=kugYW6-Xmd]hC(&6-XmdgGjI+FJ<XBgEv-wF.8Y}h:TeAF=vIm4)(}ZdGqu@0b8Zo7611Z08%b9L(H!=h=S<Trr93[%5od#6-X^sgG6[T5Ke8KgEv-wF.9c7gEv-wF=vImh+jjiIt]K74}C(Lci9Y[09k}1L(H!:rJr80%luRXrAik5T5Su1rSz(k%nSc0%nSc0@@r40rJr80%9yYArAik5T5TVBrJrjkS{lQ:S@Jb100010rJr80%9yYAr&6Mh)wxcKMq}eJrLOOm0@@r300010rJr80%9}5Gyo1ql@I#h!(hR7o1L3HLs5&m2rr920rJr80%jsANS&A8g{PvH%X!2a[0rr90%5#C5R2QG}rJr80%jdaGS&A8lsftO&X(z$@rQkek(S:z?<P2oXrJr80%9[zwS{l+W@KD9%UbXUoS[h+0/z>)J@@r40rJr80%5X)[(?ZUs!WX>GUk!ro%jq=0/q[@K(hQ!:000000bx<@@>E.*ST/7f[kTsJrO8:0/iwpP!=kWI0000009.Y*wM(60>}SkroSCjvS[fGp/iwpP!=kWI0000008rMjkO*}cWk1D}oUd.^S{xY+*GTZT!=kWI0000001x.zFenfHBulyoTEwh?S{9H!tu?dc!=kWI0000001J@kKxQ#CBt%S2eus<p(EzZnMS%H&!=kWI0000000&I6<.H)h=[L3K48a$cZsx5XMS%H&!=kWI00000000:GY$QEC0c4H&4DEG?8#]%r%6bK6!=kWI0000000005u&32/0jSpSe<Gyp0AAc1rSAa0%clQW003}qr@e/}%5F&eULL9R8#]@fXi*k}F=qGHZG1pqKoULYrSo1#S:Cs%ZXT!/8#]@oZ7pnz[C/s*%5XF^<qTw+<]hnWrLOa8ZXT}>8(&=0@xHdZ@ibi^}DAZ@CR8g:RtEm)5v.Cm[a%3A8(/{MXXCeA@&k6:S-)apzfVb}Rs%f=0jS0ePzCLF8[J3J@@e{$ZPablS-)e5uBo?kRs?M5rK2Mru&D[.8(/]HuJc^8ZP9M1S-(P/8@}k1Rtk5fS^>6Az#MP]tuWr(}1*mRUt[R*rA=P!8@}$mRtsl)%5A6:UL$xV8=Y(wveuc?Ut[/*rSA9W8@}$r%n5Z]rAi^GUp&)VUk!N5S>XPl@+}R[8=Y]029o^7rR&Z}yn>jkUAeuWUk[R60rf0#UEOMi8:st:0yf&?@q9A]S>aE}UAeV$UmRrC0qYX}yVDC}8@7zSkMLW2>LziUS*Y@/Up[:EUlma<S{6G-tJu:+tKRB+r28Qu}$^s}S&A80UM9D]Uk!N5S]KcW8@}$5yYBBGRcpRk%9*#FS&A80Y&v*hZw[ll0osqW8@}$6Tm5e?S&C>S(Mtz(ZY7ml]-a>[Zw[ll0os]W8@$kmUk-$!%nOtZ%40a?%nSc0^n:gIZw[nlS]LbW8@}@R}tZG{%nSc0%5Do0rQY$/}W!{B1osO&00061%nS9:0kFNm1hB)p16U:8Rc<o5])b-Pz58!L6AxkurA=A{0k[.0.{koZVUPQv(2lR4}7zNkXgNgDCMvLxkVKU:0k&50.{koZV-<Ae}M6U@(r<O>]=Hil[b[}!02oiKZ@6zm.{koZV-<Ae}M6U@(Ayl/{fK1+U)%^g02olHU!%Z6.{koZV-<Ae}Mu&#Y8R*g%k33xW&OODkVI0NW8q/a.{ww.]rnh]}NGQazH.Y^@KCfVzAg)%rAij/TIs/o1jd2E]s$t9@]EcWtqc3R{:FGuxNi<ErAi!0T?T]p0$6LU02nEf6AwcF@^T$F{-{KSsN67QL#:]JTn&k1@#+XH0992k5d!<w}Oi7g@?GV1tiP7/S-Dc2TjK&q/ml%609bp00001zfe9w9{-@<o80L52S*Y}/TjK&q/mWlcPJa$}0rrXskO9[{]^6Rw80L52S&A70TjK:=/oxwy7?DXJ1POLkrJ(D5}L=.CtiYa4yn$#FTjNyK/d9B0sxd=[6-!qX<{Rj?{Zg23xZfqitb+I5TjpiIr@-j8Q/yy}6AwaPE//8M?#Y:PPZ5HRrI-Y}Tn&k1@@r3002nDl6Awdq1QUOxc<*p!dc^*jrAi50S@Jb1000000rqlp@@A90%nJ8:mGrz/@@r5l%5q$#05a*n3[@8z4e/{t@@UH^00f[2mf0q/0002m08KyBrTZU<fBPSzf-y5K@%?E$rz*0=mo9t/rrH4W:3&AirS*btZYRvO.0/:)}-meCrz/<.mo9t/rsyO93(8ONrS*btZYRvOZ@sT>q%D!Krz/*Zmo9t/rwvg>3(8ONrTZU<fBPSzf-PC8%lr3Mrz/*Zmo9t/rwvg>4[e]4rXK}o3[@8z46wNkDG)}0rz/*Zmo9t/rx9a:+UP2O0SSi2000000jff/=GW?#rz/*Zmo9t/rx5ZG08#@FSSi20000000l+Ax<lw(f00fb$Tn&k1%2aV[00030@Xa:m3[@8z3&*nc0p0M:rAl7%Til=dq-nCC3[@7&0$l<(fBPSzfW*a*kK2hFS&x&iTix9]q-ew1fBPSu^/Ww/ZYRvOZ+:p<fZkQqS&x&iTil=dq-nE{ZYRx@gxUz{ZYRvOZ+Zf%fY]ynS&zK=Th1Yn12+30ZYRx@gyL@CfBPSzf.m7OkJX#CS&zK=TjpiI{CV%#fBPSC]dQOb3[@8z3]m#IgUO>eS&z%]TjqZ#{yE6N3[@algxmyP00000000000nsDMS&z%]Tn&0jr@-j2000000%2L30b]P=}to$/@@r3000Ac-Z/shh0ii60ZYdqL)*x9{PDpXEWeKxo2lkq701n$BfJyvr0ii70.o?qKZBPe:>Pn#7Wd%%d8VY-r05j/Y3@]L34fcu?F-F(sz)eDb}z)&wBOUR5Ulg/8Z+u}g3@]K{fXoP(K[@A(z)9]P}A15RTOILoujJ/nUYb9]9z=.o.2KB%KHks2z)9.P}AB+VY.LQPujJl3U?T*g}->b-fSIdnKHksUz)9Kv}GYVPzt)+9X&M9STK?$5(P+BU463sUK/>2iZRs[#@{44iTm#S{ZDdSXTK>lj(P+BI0ii5IK]yTC?$#c9UJ>zNTnc65Dh){B0nRP7(JHn*0fJzaFVRhBz%D5OTmbxu}$^C@BPsV70nSe3(J6#=0fI?{FN7KLUJ<Ut(*:s*pX}kWXDzYiZ$&px(I%][43l44K-3F@UJ<->Ti{MDnbxxOT}dLj[B{jm(I%]!fP.AUS>aIcUJ(7oYvDK(sgUI1uoUh?YW+?+DJm4CZ(:.UM9&]7UiJD!TjEl0MU@]>zA:s^YFT?qtMv+afP?DZMaohbX+-ZuT2F>z*-clTULKI+UmkRW[bJR241TLaZXR0C<O#ZC)*?}o[bM?}%n50YUlj?8.2KGo0d*pj(I{[S000c3%nS900d7WfrAl91T]FC3@@r300m=O$s5W6r002h.!e8cO03nf9rAuf2V>(.x!g.p+4fa<V%4I@p3&]w&BZmpK03yH>M0gk?]J:--BQP@jfX6f6s1@$HfAWKtFbGvJZ&vc=S&Ao4uhT:6E/)E*.1zDcyRYlrZYP<4:rKX=Z}:)*(z%%XlNbPh:ofiWZ<qnHshTtaZZ^NFbPcNTU*(%ZFbyz:r#y#qbN=vnfM*+5%ik)0fB)+Wc0onoU<e)E?$cO>T61E/b}]-Y4fcoat@t>v3)gMEn$<-I]GR<5?NAk3@H}ZSn=O?>0m+7ITXXD!06ivX=<b^sTqeJ[CR9e9r0OT6=&s4C0p2?Hs5Y[m0c{?lZY9r#z5ijW&9k>u!C!MlZC36I4e0Z4s5W6(4cZ=frA=}kyyP&IFemygA9x!&rsyL&fN%75@y!{OfZhPFp.{ilyyQ0LmoftVA2bQ!pY[GnZ&--Us1@zi.0a>fkN1q<yyTLlu?J-YUM.hukM!!7.0j{1s1@zi.0j}:kN1h*S@@y5u?JZ:ZY*!6kNYsPfX6u(Uqoz(fZs$*p.*3%S@J(r!MnOD02qN0p+Sqi4fc02s5nuu4c<>SrAl91S@Jb2ZY3E#09c8:rr9100qf.0%4&>009kxO59W7]yGmimrAl9+rQ9N:S@Kml0000009l{p}c6R@i@8=Qz=HH=rAkq+rQcz:S@NEF0igLL09l{ok=Q?*<]gJCZG23FrAi40rL2igT]NM/04zpV1xJGEk=:fJM3#.kY&w*DrAi40rD4f6}5+(5]D)@D6JIL<k^g2:rEE>EEo9MFL#Q*:rtLCmLZltfTTfuh5lk}1q2*L}rE4OAzb)U4rAi40rro(lk<qoGyya2Q099^l%n5{0rQ0H-yGkfmrAi40rrdKE0o)G-yxyHo09931ZMYHlrQ0H-yGkfmrAi40rr9@k0o)G-yxatm09930rD1ccL#Q*+L#:eF6&oQIyn)H000000000000002}Ut[N8M1:l4S&z)[6&oQMFc82<3[@8z3<lLiSXs>DT5X*/M8N=:%nRvN1YQhykMLE9fBPSzfA?N=xBDO>t37+2rI-Z0(z%+J1Yf[X5KV%dZYRvOZYtbQM&>c7rADh%rAi=jG&kVP1YgtiFbGAJZYRvOZ!+N?soDu8lh)YXrAi/g1Yhy26&p2o%nLQ#fBPSzfCBILu<[Z?0qYX}rAik+6&pw$1YQ3X%nR1h3[@8z3&*pcFg}xi09930rAi4+1YQ^=1YQf$%nRM*000000000000000000005bVzc0p5goTnYcb(S3f[@z=/DFMj@n0AzEV0rtv1iA(Q-0pa0(Ucj>sDSoppT6ewKG&w3L1YL!o1Q0qV(1Z=g.0MuCXM!vda5Ch@@Be%fG?}:H6&liH6+jkW(1-pVUYR[8@A/ufrx{KGrBPFyrx{J:6*O6!6/&p-Yya%:TwKtB/y/cLq9WwqrC5mdL%trHryfY2rQc^M(]RoAS$^p>!d}C:6:8BYL#[6-L(H^:rr#Q6rQoH[J5dSu(RR)8/vKx=r1h7^<ZXueLMgW:ruUzprS7@]J<v[NkukKxEsCJ&mgFi]WiMFVq#=[0rFBXdrrFI!n73Q5Z^!APr25Xo!hJ8UXfUswpYHF0rhBskr1r9y[LufYUV?&y!ee6-<U{ka(<l<&R#M/jr0]MMr1iQcV(VAIUP3Sd/vKi5(f..U(<mB6li40=r05.4r5}1Qz#1ekTxLV1Esk]hSQlW2YA&nqxAeiopYHV-KufC7tiXO*Tvx#7r29gER0+7ZV(#nC00320pZy6jauDMOyu*})Tqd/oLOTq}MfLyC={Z@l00Mw5kQ6ihnB0ykS{lB{T5i67<Y?.-qf]mCk:ttm02nHk04H#Hti-C.Tnn*gS$=v:ZYgs06<}1l02nrg0992009920R#Nvz01WQWtl1T6kMwI00k(i]%5BhED&Kc308{&p001<905cogtlB^6ZZUk.@lz.Iu!oBa(?LFZ%4I}$rUb2N.1fA-yyZIi00=(G1nYC9u?wHvTnaBkZ+C9<rXM=2.0<jhS%#>Z0rVN?59{THu?FTdYzlyw=+O&Yr(535[C?Q=)*Tsu00uEmh%E/?uP&(6Obd6X.]7^^r(HNr9nWZt{xaU/[dkBV/e*P{tSl#]TncX%]uzQ%x4AEYt/VcB^/TLN%nS2Or$rbFsjMQ8(?CxWUR/U=0Ys{c@pdM4pxnig])^0E*YEMbrAntNjO-[a%4&emST()49nyI]hVQ+}])^0EA03mwu&xoV4eB/wh=HK7Y8R&X8%vn3*xhJ%hgLTitN!G^[b{nS4eK]x*F=7>SSi4HyW2$EyxE@whfn!CtN=g#fAX]r@p$mkyFlD{w=JwvTnoAgUld&a%8w1&tN+&Q}#:Z=t>@sfUq1:irrhX[(!?:x{xb4g0pQ7<*ZOz>XbJP<t>{4<{B$w500ug7EcjNh*yD*L06yu?D&[J>]<j<k[vrCY*Cr7m01z)hy=!X$([Emm1uluTDJs6Chd15#03cd>(}^cK01z}dtO3(m[waZo0m/S)DJj3C5b#Rf00*)J[k6n*00y1p001Yb0rr5k@@A90%nJ8:ml*?L}#uZs%5q$#01uTy4/^cQ0mj/$r%7X/00f[2mDEHltl1Ux08KyBrT!)agxWNP0lFkzr$mV0rz*0=mBRr/7x.E*ZEpNarX-h<gy>FOZ@n-xm(<7srz/<.mC1N8/9<vGZ.GVXr(+l(h-z-9Ak+*Ssl-jOrz/*ZmC1N8/d/$*ZzfMWr)H)Fh$[AyE8P8=sl-jOrz/*ZmAtDd:1Zo607xr>r@T#QkLC)>E8b{^l*v9urz/*ZmEg0N(O}2x%4<Bg0)Z#G]y&j!E9+X^2Kj-Trz/*ZmC4Ot/eJ6208#@FS(a<rgXZ}HEcZ?j(/{.n00fb$TjNyK/evEB%nSc0[wCk0{XjZ/Ee^o#%lrP:rAl7%ThO56q-nB(000004AFIykLn2REaLpI/xGrnS&x&iTkA#d3Ph+D4?DOS1j4ITh#0vLEcmZf*V+-rS&x&iTnn<YUqQk13[%xM1kH/ih@sPq?2E4O%k{tYS&zK=TkA%S{CM]w@4G&75azmYh@uzE*%{OssluJ.S&zK=Tk$T9tq{Dq3[%xJ0@$EMh@sPq?0fi/Tj<ONS&z%]T9RvTTQ>k*4?DOE0@$bh5c8Xf@qV/%%jTGMS&z%]S#}xw]z!<>000004/YKe%8m@q}bHA{rr9100lnat%nSa0rN(P$r@-kCrQTX5})lt69-McsrrH2EZ@GBP0kFYpN/y]t%clL&rR{Kh[6O]Hm]&R&rsyMoZ@H3^%hv{pN:>zrscV-^MhUJ#ZSbwtLt$#.q4j5PZ@GCPrMd[pN!pAXyN4<%<]nsX%hQvo^)XL0sQ^Q%Ak$%ErLOYprEf{lscV-TDgd=j}]qY9^]CDFrw::Rt/PoomGry5S=.XG%clLnuI*+4[5G18^]B?Krw:hct/P(Bw+jk.S@J2$u4q{.sn]k0ZSfqN^]B(qrN-YRsi1rvrSA8lS)$9IT/wtYrx<F-@kU7*^]CDFrN/s}s5)ZDs>NB/rQb&Hso5s2%iCCW]tY&gLso+lrOl7gMLE$LrOpDNN!o+Zshj}r%kTdV+Fy=)lUfS$mCGN2/hZp1rOr-s%9$2G@N$[@Yxxj{e6@kg2us=7w.X%y/icP5%j9Co0cIxysk4q!S{9I-yVDjf8=oQjrOWG*/hZp1rLOYprQ9N:sj}j#x1p]wzUTnjz={avw.j&#s5)YH0rr70rN>orUHY4urD4{q}tNy]ZG1lkmk.[!tVGmMS}jNp%nR:(sk6LL02nHlrr90#%5A60rw&rHD@nw)%nSa0rRo-0%nSc0@$2efZZ)zGZ%.0%Hy.-5[XxOM@$1Pf[C&K*%eJ90SX)^RA1zhqZ%P!Um]3QjU*:xqs2<Iyz2grmUz5@Qr[vrItO2}mZ#aGu{xQ3I@qu=!}%79kTl1jltzl6Sr[)VOOdzDm.0<DG4)YQXh#t(9Tlo<$e9eyBty/^Sr]pvK*=}=N[wF0P69E.2h%nM/%kQ$G+JcC63XqqPr]dOW?0:Gi)99Z}gYNHv{T.mLsl4eI+I}*!TasnJr]iew*#4j2*%1aogU3xDX6>=O}@v%y8%-=&%aKn:r]fo>*#1@D*$Z+}h@i%0%i<WbTl<l3D&F!7TagLc0[TPQt&hI@*$*?@CHZPd/l)=3%lGJ+(*7hKN/AD*%k<pVy#sFY*$&2gF7nG5>m!-.s2##YTMF/GN]JFNULzf#YXxo3OD5C?%k0ez/arCZs3zYoYYD{dI#S*ST3iL-[Af=Iz1Sexu!68W@@IP712[M$*#SsL(Y>HJrUblg.1*#gYWhbv2I0Z(W*gW612X0lt&/gQZM??10UtthZ=[=#[w5#r1kSCC{z?/IT2UmCy#+$Oz(P/q0t1BkZZ{FBZ})A+l*y(uYFdy((MinuWec&6UMaR/0s#2xZYjum0ro?p%nSc0[g?#-@%eP7^eTdC%nS9lrrI<:Z*u$?Wn)n91-uFHZe+7h4]&Pf0Azw+0rr9101MfmUWuOF]&E#9!M<+B}D0^mgF!RK1YLE41UZus3{4ROTx:*9hc@KOXM{!9UuX<%+%js>1Ybg06:#=8fG#4J}-%*Y6<Q!WU3AR%VVBC3@xPM%6*I:06:8kNZ+-d94)YJerDKai){dFJW@S87rs!pz]/@GSrrH2sZZ^<g]8N$dM2-N(}!NV1PkUs+]:Ho2h2)QRrsyL&fGBz}yY&-q<)29tYkPe5&LDah+MEth!C]NIrwj?n4cqB6tmL^Y}o/qKzo@$iW7(Y+A@=b5q#=[0rr9100nsDMR-uY(EAfk7udq>OXCND0A@+Xaq#=[4q#=)#0pM!N}.Sesuc?11P5<V!XGyGC{yDY7]z!>ar4[.m4d/{+=O.I4OZlT4*DG[%}2Bz@i$gPPfAq8Mr17C?fWr[:VK=b3]V#d?/e71&<[}ty+ME=cZYjKrpY[GnZZU8zz#)v:KK7@D/d^iAOx]13+MdbekMB!:pY[GnZZWDTA0pJ&k*]+Gm(pm?Bi)cK*Yu&PkM$d/kNYsPfB>PBUOz5^0m%kg8YXd//eIkYtM]O&kOWo#05a*n3>xGKUVj]S0jL9>z==5)jBZuk{.vfd0992000000000000m%ERyxauW00000uSm:O6U<UE%nSbHZw#^:000M00oI:NTn&lB00001tLQMJz#cTq0qQNaUMEfarSB@@06bLVTuY3)pZ68!6%AY*}R+TZRth^?=Ky3[rSHR*0nZZVW]5ogkP6L46Dl3KQ#tJ=3hFI*=OMvKrSHVO0lsx9!0nEb0aV6f5cocVk<p{].UOi2..(]&rSHVO0mwNXna#7<0ou@R004l}0o4<G.UFciVPk/ow=KY70osaW8)v28rp@GR00Ng0p#LR^3hwB0UNZWk0SUlZ0ngvLyGjw-k^ZN(003mY0mg%ORtk3u@@S=YSSpN=0m!b+yGjvmzs)(e08W#TmDQTJrRZOjyIT0ZX=Ul50qiycz$0b{e-/j$02Z2kwCiigRtt9uz^9kw@%YcjZ%e}VCE+o*9AiNJp.{CWL>Ip*3hFJhCuhHWrX$K>U*-N/*HK*}t[^nswlc9AMh*(p.UFcw*F$EUrYbxSTKLj&d?Al(ODF])8ewjKSO}6l.UC>5e7H.4r[j#yy#%xKyxatmz2:Lt8]4QM@}rK63aT%0yC@<9%jm+<yDpaHyYBCIEe<lFu/+8/tLtm7R5:T/y^my?0m}.<yy*EB[bJB?Y-n3juq{}<761sl@%c{J[Bji[0pE0&uSy@D(*7yUY9*>?q#=)#098&}%6Kyf{5w4(%l^4&OmXv[(*9&EYiu1I0rrVd098o=0nGX0hVRz3rQN2<y*a0w(*7NZYit>Errb6}08L{=r6rFED>!Kh0pE1&OO4r3(*7Z+Yiu1Irrhr0Z^4)8Eil/v]NeQ%%l^53zcB9N(*7Z+Yiu1IrrGmoUMaVy%9y)VT]zb}%nGg4OMq[[%nPagZGRCrrsV3zTn&lu%n3WzUM4t&rQoT:UwgkzYybKg(-lqER8tkQOb-Lg!+!(j)]N^a0pcoS%nSb(Yy651(&m1+%2BURtTeqfrEsF$)n.Tn%lDIbrRow6Yy8?9(I{[+0c@IUz3r}WrEROAY&ALY%lF%UNkR7RYy8&5(I%fE0d7<VTPqCxu0)jC](X.-u*B-6R8^?LYy8&4(Jv0!Z<st#TPhwwu01/z!PGsvam38wNrCQwYy8&k(KQ1}[oSBLTPhwwu3jvEu3jS@%lD&0M3GKzYy8&k(PRdGYN4GkTPhwwFaZOVu&wEN%9}5WM3hD7Y)^b:@xuGEYGiyATn(nv])=PQ@A[2NuKcOwSRSTf=<fM+^e62dUo6[TV&ynV!M8M$rAGb09@(MC%nSbC000nJ0q.%YUlUac=&saD%nSc0%nSc0@@r5#ULM0l0p4t1}MGh-T2{wD[bJB*00000PS^UCZw[!B}MGhN0q->0}MGg}UqW0/y+MnK3>Jyu7{AkoUk*R.yn>%H06mcX}MGg:Tt-exUm98[fBBDOv6w<ASSk8RSCkRr01M3u(z{}+USzG)}VBRoZ:6-#aGIIrSSqs:Rco[105%ixS&AUh*Z-!*(Js{8Z)d}4aGzC2ST(7jRcoZg[fOaHUb?Q5soz+oZ6(X7fQw18FuC>gSxc>VSCnnkTpKQ9@&.]][d6j)c[(5-44gWS0j]0<R8<(RS&A44Tom4I(&7aPZZ^Cc000000g4tRFv.1(MfKTlyn>@KT4<N}weMhCU[3W@ZYjum03#uPv5%e6TlV7Fx>Z+J(OJy[Q*uNLtN$VjURlFt3<}&Sv5%e2UKwG/Rcm65}.=dd]LW$gtSDS?Tpc=>fAqzZv5&H{T)Si?Rco[0Yc^ya}fH/0M]Rnq(&U39Z:GI7Fu2SLVf[S(Rco[0Y9^VOT?9nN&x1QK(&U39Z(/0D0irc2?0h8yRco[}T3D(?o%?0-kRI)j@0Um/fS29#0bzvB@oz4%SCnEjT7h[)0G^Cn1}416c[(5-3)C%109VKeTM)N2}MD{#T6eH6u)#v1s]XK50000004m]00AMv7TYzI5%nQRHrJrzay=IFpS@Jb0%f8p0U237#1?H.q}JUs>%iQFsrAlm7V(RExrSAa0%f93lX>&P)1*j({4ZkI4!+al?%5O4YUNTFqM8:XX}QE%#@/^x.7qD]^sg@?d(3X2:se$E1^moAKS&A80S@HDy!1]qgtf37p%fK-n(yX6?1fguY^moEWS>bjgS>bM2BMX.&*z$U.Ujl^r[1>KatDl++L#^e?S&A&kS<#$69oVx4*Cx)}zUnEVTlM+ku-Sn@Rcq!Y(z%2J!VJc64cm458-bK@Y7{ZLYykQ8z#X{6(z%2J%6v}>WG2%E4coq=tqKr(%nDu8OaF+GEPLSnZY9t0!+GgBz$1j[9ozn.tqNdn57^fETi(m3DrYGnFca?p<*tS*uE.B2t&&M1trb^3sjMyqTjs!?utFUbRcq$+(2^Kauh@pkz07=$N(T:U%k!Yb(^>}dxr7h$SCo$0SX<)]t!mrcVfLi&(RsG4Uk8e((&lqIn2(z^(z{hNSYrC.y}jze/6JCqDZy<WzOxaJ[a%eoTe-[1X#}vkS+$SpXW+}VtEjwg9{9y.zVuLl%eJFR%eJo5UdyUfS&Iy=(AjH]UfZfG2Ff%dY8R*g%nSc0%nSc0%nSc0%nSc0%nR)}}:Cn0qsx=*%nMd1}q??Btl1VbkMy=+X#IPgS^N(%]&n2SrSA6k%kr{uuG$+>T3w}M00bs=EYxwZS=ILxeN2fNrzTT}1?uvNow)2mz=8U06B3/az#V&qZJjU5Uwg8qrP##nyP:JlQVuvutB0:vp-orBrJCz+}G?.E}V:72MhV[nZPFKg>Je=atLviYFn2X$pZl=%<x?r9(RG7hH5Zms%gR>1{V.?QyYBBqk(1jRkMOQ5Kxh/}jsWwhH4LgVamMCvXa@v[UFm9vrK$A}02rkKM0L$Zk}n[m73ibTtHmo:ZXQ$s@&i04KGFM-00dLLp*QnJrz6o&rQdnDTi[ceZj97.%eJ71X#[o#01[H%LWsrr!LJn%lhHLfUHT8EY1!lkX#I+gY1QAkkO&T=LWu32Wn^hwrLOGZ@]:N.}NFnTkl7S%DIHwrKq^z+RfBMWTYnwoM2DVp}t1bm(F#ggzN)sZDq$7FwnyFh(nU)n)nc/.Ri?4Z/1N%*(G8*yzE^nVDiBo.zlG$t}z#m))nWe^rJ?V*}MGc!}Sj^yT}hcBX=z^mFbVEFZyP%o@8DZ@P$9z?zOr+{uH1PQzVx=q}tZG@EYxwZSZ6AY0AAbHH2-$F8$:Dj8#u=mZw[lr}tZG}X#IPgS-fd4rAi3:6{hW@mI0om1hB)E[bJM6]<vJ4/z&R%@@r3009930]-k3(05cIn3[%!23&*xx@A]P]kxQ{5BR0$aZ/sxoz39^rZ}&wrgZ(gQqV(=b%9%ZS0l$Mx+RQr!A9@otXEzLsAmGHdg-Ov9@0:-U%9%.wZ@3lR4ab>RtY.M0BQ+vJA6I>-]&zLb01z$e4$2bsAl{=q9mdeL9m*PWb[vY?UMi]5iA#eD01J1kq/L<7U?dkzt&}s<y$[bML[9E]UMcXdw#nz900xl/]&pW1Z<Oun{1OREOB9]rrsY6eUS&VVKX}I$00hHT%nR=?kWBr^!.A95?0oBD!JRQpYUItzKo78L00fCfamH1KkWA>x!.A95*<cTaWCH@-X5o#/wcJpy00f(nq]I-skY3J5<)R[)**w{)B(7}#W(1Y=3rNLG[b(G/p.](h.2nph}Ruvr*/mW-WCH@-W*+.ek(>Q2fB4+%LW0lCfViDC2&r54)0SiP!.WsaW*(ysquqvDZZQEZM0Rj!fT9q^in:BV*#&03rP0&R{CMeOMiF3n[c@Q!<.X2<Al4Djp2g2t?1L8irN>8Hsj^biNo0&#oB}84<*k1f[v&%4}trCCYMmv8rQn}J(??p(]<hiwqVD^$kHoxg099$0rr9100btP2rEGw}EG9qErAi40rzTAg%f@Mt008q*e)513^BA:Bs5W6r0lrRP6<yUqR9Ch=.!/IQ0ylX2C]M}5huhid%4I}$r=EKx0i.R5}2%299sChJ0!tME&4LGr4aOuTs1@$Rr:o=Etj>(}u.{+dg&H>-1hD-f}evEP4e1w2yRYlJr:mv$(S6%+rQoD=fUjRh2HCpGU5F))j:Jw%shTtIr:mF?EoJUJRf#UUfY^N@2HCFFtIK/g)r8!o%ik)9w)xJAtwygrSPygKfWKdk3/A8l2IjFa(&l]-t@t<\u00210=V][MA6#+S*pA.48ra{5ax?J1k02M(^Y0oTXXEpS=urORVcR@%c?uwp0C{6am]KlBjU{v(/%:ns5Y}hUHsG)(^bRi2KsS%:j0&+am]Kp:kpfG(?auVs5W95yTUcv)eNa^0daYJ:f<y%z$%wHuIv-K(WO[m@y!@xtgkte]z&6>03qhC:2-rZz#0yqTKVcNDV-A&s1@BfS)-*9[ccPap.9Lh-$dAnULKJ1[hkt]t<tr?s1@Batgrdu=>>!F!cCIJ:3s%JXO!BH0s:fS[ypZcUqoCg2HJoKZ*onbWf5p82nvZG=<fQu6HR{2.t<gds5nuJ@iej?Z<c3$z3fEj4NA[>1Ybg5qb^I}1[=m5%4&>00ii60%nPa0S/NiC0000000Ac-Z/sjBL#+S0ZxEBl0ii6lrAo3#S.-WX000M001n$BfJyxLRcpRk.4/]H0iilIrAhM=S.-WX008(005j/Y3@xi)SCqo>FMkXLZ]E2brAf2vSZ3LX00xm3Z+u}g3{T/h(z%-xKYtx([t!!O1Ybg1(oCtC01L&eUYb9]9rl7P}MGdCKx2pB@h/@000000iZrXb01Ln{U?T*g}V3R1@>Cp(Kx2rX%f8F6000004Np2Q06lxCTK?$5(I{]=ZY6HHKRH<}%g!Qm0000013=<F06lxCTK>lj(P+CIULImIKP!OY%eJc+S}!)Wz<gk4761sm0nRP7(JHo+000g+FDbYI%eJhES}=R}z<gk4763O%0nSe3(J70=0032YFDbX1@I)yHS<z:fuzNS4s{aS8Z$&px(I%{+rAi4XKPkw6]S40XS]Kc-tJC?+tmW:l[B{jm(I%}IrAi7YS-r45p]-4FS)y.HtJF9JtrX(!YW+?+DJm6BrAi!lL#Q&11fkA5(D/ImslSJ+yD!1:YFT?qtMv^7Rco):L#Q?64xACd(D/Iisnt/gz#b-1UmkRW[bJTSS&Aa+ZPaqv]@R3<Dxnabr@b/@ULKI+Ulj?8.2KJnS&A&l(z*>:S=dYK}eu7E}eu7E}2yx{00Ac-Z/sk1@@r50ZF&8K0j^0TzN<U}zN<U}zu7jp01n$BfJywB@@r60.a:wM4cew*8@}$08@}$08VY-r05j/Y3@]Mh%nSaXFIuB0fYThM%nSc0%nSbW8W0auZ+u}g3@]M[%jpLrK?*n+Z#MDI00000000bZ8XeYFUYb9]9z=:p%nSaYKI*w^Z#MBm000000002W8XeclU?T*g}->d.0001YKJ&aXfYVBMrAi40rAi2Vtrn3ITK?$5(P+DO0001IKU{w$4cevm@A5Vw@R#&S8-<l+TK>lj(P+D=0001IKX+GE0ot82s66JIudSxy8VP<r0nRP7(JHn*0fJzaFM9u:0ot82s66JIrAAhY8VSb20nSe3(J70t43ua6FM6Jw4ceve@ASYo!Mk=i8W2@uZ$&px(I%][fPZ<EKXvFrfY=IuBZL8MrAAhZtmW:l[B{jm(I%]!Z(TXuSXAig.0bSoBZnoUrAAh+yD!N#YW+?+DJm4FZ(:.UL}Z$}.0m$cuWVphrBsqwT3h!HYFT?qtMv+jfP?DZL}#UNfUjBqrAi40rAibiUkjz:UmkRW[bJRC41TLaZFBwN3#+$w%nSc0%nSaq}tcvSUlj?8.2KGo0d*pj(qdS:002r?PAtN{e=U>J@$u4V6b82)6b82)1P!-b1P!-b0UU.s0S&Je0S&Ap1P!-b0TeYd0UU.v1Qb2j1oX=t0S&Gc1Qb2g0UU.s0S&Je0S&Ap1Qb5k1Qb5k1RQ}s0S&Jb0S&Ap6b82)6b82)69OKv0S&Jb0S&A81P!-b1Qa@e0S&Jb0S&Ab1oFSa1Qb5k1o!]h0S&A81oX(i1oFSd1P!-b1Qa@e0S&Je1Qb5k1Qb5h0S&A81P!-b0UVjX6b82)6b82.1P!-b1P!-b0S&Jb0S&Je0S&A81P!-b0TeYd0S&Je1Qb2j1oX=c0S&Gc1Qb2g0Te-e0S&Je0S&A81Qb5k1Qb5k1P!-b0S&Jb0S&Ap6b82)6b82)69OKv0S&Jb0S&Jb1P!-b1Qa@e1P!&e0S&Ab1oF-d1Qb5k1o!]h1P!-b1oX(i1oF-g1P!-b1Qa@e1P!&h1Qb5k1Qb5h0S&A81P!-b1RRK.6b82)6b82.1P!-b1P!-b0Te-e0S&Jb0S&Ab1P!-b1P!-b0Te-e0S&Jb0S&Ab1P!-b1P!-b0Te-e0S&Jb0S&Ab1P!-b1P!-b0Te-e0S&Jb0S&Ap6b82)6b82)69OKv0S&Jb0S&Ab1P!-b1P!-b0Te-e0S&Jb0S&Ab1P!-b1P!-b0Te-e0S&Jb0S&Ab1P!-b1P!-b0Te-e0S&Jb0S&Ab1P!-b1P!-b0UVjX6b82)6b82.1P!-b1P!-b0Te-e0S&Jb0S&Ab1P!-b1P!-b0Te-e0S&Jb0S&Ab1P!-b1P!-b0Te-e0S&Jb0S&Ab1P!-b1P!-b0Te-e0S&Jb0S&Ap6b82)6b82)69OKv0S&Jb0S<2p1P!-b1Qa@e69nss0S&Ab1oGkr1Qb5k1o!]h69njp1oX(i1oGku1P!-b1Qa@e69nsv1Qb5k1QbLv0S&A81P!-b6b7AG0T5Vd0S&Ap1P!-b1P!-b0UU.s0S&Je0S&Ap1P!-b0TeYd0UU.v1Qb2j1oX=t0S&Gc1Qb2g0UU.s0S&Je0S&Ap1Qb5k1Qb5k1RQ}s0S&Jb0S&A80S&Aa1P!-b0Te-e0S&Jb0S&A81P!-b1Qa@e0S&Jb0S&Ab1oFSa1Qb5k1o!]h0S&A81oX(i1oFSd1P!-b1Qa@e0S&Je1Qb5k1Qb5t4?o9W4?o9W4/#!l0T5Vd0S&Ab1P!-b1P!-b0S&Jb0S&Je0S&A81P!-b0TeYd0S&Je1Qb2j1oX=c0S&Gc1Qb2g0Te-e0S&Je0S&A81Qb5k1Qb5k1R84M4/#[o4I63J0S&Aa1P!-b1Qb5h0S&Jb0S&Jb1P!-b1Qa@e1P!&e0S&Ab1oF-d1Qb5k1o!]h1P!-b1oX(i1oF-g1P!-b1Qa@e1P!&h1Qb5k1Qb5u0S&A81P!-b1P!-b0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&Aa1P!-b69OKv0S&Jb0S<2p1P!-b1Qa@e69nss0S&Ab1oGkr1Qb5k1o!]h69njp1oX(i1oGku1P!-b1Qa@e69nsv1Qb5k1QbLv0S&A81P!-b6b7AG0T5Vd0S&Ap1P!-b1P!-b0UU.s0S&Je0S&Ap1P!-b0TeYd0UU.v1Qb2j1oX=t0S&Gc1Qb2g0UU.s0S&Je0S&Ap1Qb5k1Qb5k1RQ}s0S&Jb0S&Am5FbJ=5FbJ=5DS1n0S&A80S&A80U+Xq6CHP.0S&A86AOsq1oFSa1Qb5k1Q1@h0S&Jb1Qb5j1oFSa1P!-b0S&A80S&A80S&A80S&&k1Qb5k1Qb5k5d/A+5D&jt5d]DS1QCzw1oFSa0S&Jk3>i*K0S&A81Qkho2nmdu0S&Je1Qb2i1oX=c0S@Md1oX&e0Te-e0S&A80S@Gm1Qb5k1Qb5k1Ry!q0S&A80S&An0S&Aa1P!-b0Te-e0S&Jb0S&A81P!-b1Qa@e0S&Jb0S&Ab1oFSa1Qb5k1o!]h0S&A81oX(i1oFSd1P!-b1Qa@e0S&Je1Qb5k1Qa@e0S&A81P!-b0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&Aa1P!-b69OKv0S&Jb0S<2p1P!-b1Qa@e69nss0S&Ab1oGkr1Qb5k1o!]h69njp1oX(i1oGku1P!-b1Qa@e69nsv1Qb5k1QbLv0S&A81P!-b6b7AG0T5Vd0S&Ap1P!-b1P!-b0UU.s0S&Je0S&Ap1P!-b0TeYd0UU.v1Qb2j1oX=t0S&Gc1Qb2g0UU.s0S&Je0S&Ap1Qb5k1Qb5k1RQ}s0S&Jb0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A86b7AG0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UURp0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A86b7AG0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UURp0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A86b7AG0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UURp0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A86b7AG0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UURp0S&A80S&Ap0S&A80S&A80UVjX6b82)6b82X0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&Ap6b82)6b82)69njp0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80UVjX6b82)6b82X0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&Ap6b82)6b82)69njp0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80UVjX6b82)6b82X0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&Ap6b82)6b82)69njp0S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80S&A80UVjX6b82)6b82X0S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2p0S&A80S&A869njp0S&A80S<2G6b82)6b82)6bHSG0096106ZC-0096102bzk00ii)ncn?(00000","WASM4_CART_SIZE":55113}</script>
<script>var __defProp=Object.defineProperty,__defProps=Object.defineProperties,__getOwnPropDescs=Object.getOwnPropertyDescriptors,__getOwnPropSymbols=Object.getOwnPropertySymbols,__hasOwnProp=Object.prototype.hasOwnProperty,__propIsEnum=Object.prototype.propertyIsEnumerable,__defNormalProp=(t,e,s)=>e in t?__defProp(t,e,{enumerable:!0,configurable:!0,writable:!0,value:s}):t[e]=s,__spreadValues=(t,e)=>{for(var s in e||(e={}))__hasOwnProp.call(e,s)&&__defNormalProp(t,s,e[s]);if(__getOwnPropSymbols)for(var s of __getOwnPropSymbols(e))__propIsEnum.call(e,s)&&__defNormalProp(t,s,e[s]);return t},__spreadProps=(t,e)=>__defProps(t,__getOwnPropDescs(e)),wasm4=function(t){"use strict";
/**
* @license
* Copyright 2019 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const e=window.ShadowRoot&&(void 0===window.ShadyCSS||window.ShadyCSS.nativeShadow)&&"adoptedStyleSheets"in Document.prototype&&"replace"in CSSStyleSheet.prototype,s=Symbol(),i=new Map;class n{constructor(t,e){if(this._$cssResult$=!0,e!==s)throw Error("CSSResult is not constructable. Use `unsafeCSS` or `css` instead.");this.cssText=t}get styleSheet(){let t=i.get(this.cssText);return e&&void 0===t&&(i.set(this.cssText,t=new CSSStyleSheet),t.replaceSync(this.cssText)),t}toString(){return this.cssText}}const r=(t,...e)=>{const i=1===t.length?t[0]:e.reduce(((e,s,i)=>e+(t=>{if(!0===t._$cssResult$)return t.cssText;if("number"==typeof t)return t;throw Error("Value passed to 'css' function must be a 'css' function result: "+t+". Use 'unsafeCSS' to pass non-literal values, but take care to ensure page security.")})(s)+t[i+1]),t[0]);return new n(i,s)},o=e?t=>t:t=>t instanceof CSSStyleSheet?(t=>{let e="";for(const s of t.cssRules)e+=s.cssText;return(t=>new n("string"==typeof t?t:t+"",s))(e)})(t):t
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/;var a;const l=window.trustedTypes,c=l?l.emptyScript:"",h=window.reactiveElementPolyfillSupport,d={toAttribute(t,e){switch(e){case Boolean:t=t?c:null;break;case Object:case Array:t=null==t?t:JSON.stringify(t)}return t},fromAttribute(t,e){let s=t;switch(e){case Boolean:s=null!==t;break;case Number:s=null===t?null:Number(t);break;case Object:case Array:try{s=JSON.parse(t)}catch(i){s=null}}return s}},u=(t,e)=>e!==t&&(e==e||t==t),p={attribute:!0,type:String,converter:d,reflect:!1,hasChanged:u};class f extends HTMLElement{constructor(){super(),this._$Et=new Map,this.isUpdatePending=!1,this.hasUpdated=!1,this._$Ei=null,this.o()}static addInitializer(t){var e;null!==(e=this.l)&&void 0!==e||(this.l=[]),this.l.push(t)}static get observedAttributes(){this.finalize();const t=[];return this.elementProperties.forEach(((e,s)=>{const i=this._$Eh(s,e);void 0!==i&&(this._$Eu.set(i,s),t.push(i))})),t}static createProperty(t,e=p){if(e.state&&(e.attribute=!1),this.finalize(),this.elementProperties.set(t,e),!e.noAccessor&&!this.prototype.hasOwnProperty(t)){const s="symbol"==typeof t?Symbol():"__"+t,i=this.getPropertyDescriptor(t,s,e);void 0!==i&&Object.defineProperty(this.prototype,t,i)}}static getPropertyDescriptor(t,e,s){return{get(){return this[e]},set(i){const n=this[t];this[e]=i,this.requestUpdate(t,n,s)},configurable:!0,enumerable:!0}}static getPropertyOptions(t){return this.elementProperties.get(t)||p}static finalize(){if(this.hasOwnProperty("finalized"))return!1;this.finalized=!0;const t=Object.getPrototypeOf(this);if(t.finalize(),this.elementProperties=new Map(t.elementProperties),this._$Eu=new Map,this.hasOwnProperty("properties")){const t=this.properties,e=[...Object.getOwnPropertyNames(t),...Object.getOwnPropertySymbols(t)];for(const s of e)this.createProperty(s,t[s])}return this.elementStyles=this.finalizeStyles(this.styles),!0}static finalizeStyles(t){const e=[];if(Array.isArray(t)){const s=new Set(t.flat(1/0).reverse());for(const t of s)e.unshift(o(t))}else void 0!==t&&e.push(o(t));return e}static _$Eh(t,e){const s=e.attribute;return!1===s?void 0:"string"==typeof s?s:"string"==typeof t?t.toLowerCase():void 0}o(){var t;this._$Ep=new Promise((t=>this.enableUpdating=t)),this._$AL=new Map,this._$Em(),this.requestUpdate(),null===(t=this.constructor.l)||void 0===t||t.forEach((t=>t(this)))}addController(t){var e,s;(null!==(e=this._$Eg)&&void 0!==e?e:this._$Eg=[]).push(t),void 0!==this.renderRoot&&this.isConnected&&(null===(s=t.hostConnected)||void 0===s||s.call(t))}removeController(t){var e;null===(e=this._$Eg)||void 0===e||e.splice(this._$Eg.indexOf(t)>>>0,1)}_$Em(){this.constructor.elementProperties.forEach(((t,e)=>{this.hasOwnProperty(e)&&(this._$Et.set(e,this[e]),delete this[e])}))}createRenderRoot(){var t;const s=null!==(t=this.shadowRoot)&&void 0!==t?t:this.attachShadow(this.constructor.shadowRootOptions);return i=s,n=this.constructor.elementStyles,e?i.adoptedStyleSheets=n.map((t=>t instanceof CSSStyleSheet?t:t.styleSheet)):n.forEach((t=>{const e=document.createElement("style"),s=window.litNonce;void 0!==s&&e.setAttribute("nonce",s),e.textContent=t.cssText,i.appendChild(e)})),s;var i,n}connectedCallback(){var t;void 0===this.renderRoot&&(this.renderRoot=this.createRenderRoot()),this.enableUpdating(!0),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostConnected)||void 0===e?void 0:e.call(t)}))}enableUpdating(t){}disconnectedCallback(){var t;null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostDisconnected)||void 0===e?void 0:e.call(t)}))}attributeChangedCallback(t,e,s){this._$AK(t,s)}_$ES(t,e,s=p){var i,n;const r=this.constructor._$Eh(t,s);if(void 0!==r&&!0===s.reflect){const o=(null!==(n=null===(i=s.converter)||void 0===i?void 0:i.toAttribute)&&void 0!==n?n:d.toAttribute)(e,s.type);this._$Ei=t,null==o?this.removeAttribute(r):this.setAttribute(r,o),this._$Ei=null}}_$AK(t,e){var s,i,n;const r=this.constructor,o=r._$Eu.get(t);if(void 0!==o&&this._$Ei!==o){const t=r.getPropertyOptions(o),a=t.converter,l=null!==(n=null!==(i=null===(s=a)||void 0===s?void 0:s.fromAttribute)&&void 0!==i?i:"function"==typeof a?a:null)&&void 0!==n?n:d.fromAttribute;this._$Ei=o,this[o]=l(e,t.type),this._$Ei=null}}requestUpdate(t,e,s){let i=!0;void 0!==t&&(((s=s||this.constructor.getPropertyOptions(t)).hasChanged||u)(this[t],e)?(this._$AL.has(t)||this._$AL.set(t,e),!0===s.reflect&&this._$Ei!==t&&(void 0===this._$EC&&(this._$EC=new Map),this._$EC.set(t,s))):i=!1),!this.isUpdatePending&&i&&(this._$Ep=this._$E_())}async _$E_(){this.isUpdatePending=!0;try{await this._$Ep}catch(e){Promise.reject(e)}const t=this.scheduleUpdate();return null!=t&&await t,!this.isUpdatePending}scheduleUpdate(){return this.performUpdate()}performUpdate(){var t;if(!this.isUpdatePending)return;this.hasUpdated,this._$Et&&(this._$Et.forEach(((t,e)=>this[e]=t)),this._$Et=void 0);let e=!1;const s=this._$AL;try{e=this.shouldUpdate(s),e?(this.willUpdate(s),null===(t=this._$Eg)||void 0===t||t.forEach((t=>{var e;return null===(e=t.hostUpdate)||void 0===e?void 0:e.call(t)})),this.update(s)):this._$EU()}catch(i){throw e=!1,this._$EU(),i}e&&this._$AE(s)}willUpdate(t){}_$AE(t){var e;null===(e=this._$Eg)||void 0===e||e.forEach((t=>{var e;return null===(e=t.hostUpdated)||void 0===e?void 0:e.call(t)})),this.hasUpdated||(this.hasUpdated=!0,this.firstUpdated(t)),this.updated(t)}_$EU(){this._$AL=new Map,this.isUpdatePending=!1}get updateComplete(){return this.getUpdateComplete()}getUpdateComplete(){return this._$Ep}shouldUpdate(t){return!0}update(t){void 0!==this._$EC&&(this._$EC.forEach(((t,e)=>this._$ES(e,this[e],t))),this._$EC=void 0),this._$EU()}updated(t){}firstUpdated(t){}}
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
var m;f.finalized=!0,f.elementProperties=new Map,f.elementStyles=[],f.shadowRootOptions={mode:"open"},null==h||h({ReactiveElement:f}),(null!==(a=globalThis.reactiveElementVersions)&&void 0!==a?a:globalThis.reactiveElementVersions=[]).push("1.3.0");const y=globalThis.trustedTypes,w=y?y.createPolicy("lit-html",{createHTML:t=>t}):void 0,b=`lit$${(Math.random()+"").slice(9)}$`,g="?"+b,v=`<${g}>`,A=document,_=(t="")=>A.createComment(t),x=t=>null===t||"object"!=typeof t&&"function"!=typeof t,k=Array.isArray,$=/<(?:(!--|\/[^a-zA-Z])|(\/?[a-zA-Z][^>\s]*)|(\/?$))/g,S=/-->/g,P=/>/g,E=/>|[ \n\r](?:([^\s"'>=/]+)([ \n\r]*=[ \n\r]*(?:[^ \n\r"'`<>=]|("|')|))|$)/g,C=/'/g,U=/"/g,I=/^(?:script|style|textarea|title)$/i,M=(N=1,(t,...e)=>({_$litType$:N,strings:t,values:e})),T=Symbol.for("lit-noChange"),L=Symbol.for("lit-nothing"),O=new WeakMap,R=A.createTreeWalker(A,129,null,!1);var N;class B{constructor({strings:t,_$litType$:e},s){let i;this.parts=[];let n=0,r=0;const o=t.length-1,a=this.parts,[l,c]=((t,e)=>{const s=t.length-1,i=[];let n,r=2===e?"<svg>":"",o=$;for(let l=0;l<s;l++){const e=t[l];let s,a,c=-1,h=0;for(;h<e.length&&(o.lastIndex=h,a=o.exec(e),null!==a);)h=o.lastIndex,o===$?"!--"===a[1]?o=S:void 0!==a[1]?o=P:void 0!==a[2]?(I.test(a[2])&&(n=RegExp("<\u002F"+a[2],"g")),o=E):void 0!==a[3]&&(o=E):o===E?">"===a[0]?(o=null!=n?n:$,c=-1):void 0===a[1]?c=-2:(c=o.lastIndex-a[2].length,s=a[1],o=void 0===a[3]?E:'"'===a[3]?U:C):o===U||o===C?o=E:o===S||o===P?o=$:(o=E,n=void 0);const d=o===E&&t[l+1].startsWith("/>")?" ":"";r+=o===$?e+v:c>=0?(i.push(s),e.slice(0,c)+"$lit$"+e.slice(c)+b+d):e+b+(-2===c?(i.push(void 0),l):d)}const a=r+(t[s]||"<?>")+(2===e?"<\u002Fsvg>":"");if(!Array.isArray(t)||!t.hasOwnProperty("raw"))throw Error("invalid template strings array");return[void 0!==w?w.createHTML(a):a,i]})(t,e);if(this.el=B.createElement(l,s),R.currentNode=this.el.content,2===e){const t=this.el.content,e=t.firstChild;e.remove(),t.append(...e.childNodes)}for(;null!==(i=R.nextNode())&&a.length<o;){if(1===i.nodeType){if(i.hasAttributes()){const t=[];for(const e of i.getAttributeNames())if(e.endsWith("$lit$")||e.startsWith(b)){const s=c[r++];if(t.push(e),void 0!==s){const t=i.getAttribute(s.toLowerCase()+"$lit$").split(b),e=/([.?@])?(.*)/.exec(s);a.push({type:1,index:n,name:e[2],strings:t,ctor:"."===e[1]?z:"?"===e[1]?G:"@"===e[1]?W:j})}else a.push({type:6,index:n})}for(const e of t)i.removeAttribute(e)}if(I.test(i.tagName)){const t=i.textContent.split(b),e=t.length-1;if(e>0){i.textContent=y?y.emptyScript:"";for(let s=0;s<e;s++)i.append(t[s],_()),R.nextNode(),a.push({type:2,index:++n});i.append(t[e],_())}}}else if(8===i.nodeType)if(i.data===g)a.push({type:2,index:n});else{let t=-1;for(;-1!==(t=i.data.indexOf(b,t+1));)a.push({type:7,index:n}),t+=b.length-1}n++}}static createElement(t,e){const s=A.createElement("template");return s.innerHTML=t,s}}function D(t,e,s=t,i){var n,r,o,a;if(e===T)return e;let l=void 0!==i?null===(n=s._$Cl)||void 0===n?void 0:n[i]:s._$Cu;const c=x(e)?void 0:e._$litDirective$;return(null==l?void 0:l.constructor)!==c&&(null===(r=null==l?void 0:l._$AO)||void 0===r||r.call(l,!1),void 0===c?l=void 0:(l=new c(t),l._$AT(t,s,i)),void 0!==i?(null!==(o=(a=s)._$Cl)&&void 0!==o?o:a._$Cl=[])[i]=l:s._$Cu=l),void 0!==l&&(e=D(t,l._$AS(t,e.values),l,i)),e}class F{constructor(t,e){this.v=[],this._$AN=void 0,this._$AD=t,this._$AM=e}get parentNode(){return this._$AM.parentNode}get _$AU(){return this._$AM._$AU}p(t){var e;const{el:{content:s},parts:i}=this._$AD,n=(null!==(e=null==t?void 0:t.creationScope)&&void 0!==e?e:A).importNode(s,!0);R.currentNode=n;let r=R.nextNode(),o=0,a=0,l=i[0];for(;void 0!==l;){if(o===l.index){let e;2===l.type?e=new H(r,r.nextSibling,this,t):1===l.type?e=new l.ctor(r,l.name,l.strings,this,t):6===l.type&&(e=new q(r,this,t)),this.v.push(e),l=i[++a]}o!==(null==l?void 0:l.index)&&(r=R.nextNode(),o++)}return n}m(t){let e=0;for(const s of this.v)void 0!==s&&(void 0!==s.strings?(s._$AI(t,s,e),e+=s.strings.length-2):s._$AI(t[e])),e++}}class H{constructor(t,e,s,i){var n;this.type=2,this._$AH=L,this._$AN=void 0,this._$AA=t,this._$AB=e,this._$AM=s,this.options=i,this._$Cg=null===(n=null==i?void 0:i.isConnected)||void 0===n||n}get _$AU(){var t,e;return null!==(e=null===(t=this._$AM)||void 0===t?void 0:t._$AU)&&void 0!==e?e:this._$Cg}get parentNode(){let t=this._$AA.parentNode;const e=this._$AM;return void 0!==e&&11===t.nodeType&&(t=e.parentNode),t}get startNode(){return this._$AA}get endNode(){return this._$AB}_$AI(t,e=this){t=D(this,t,e),x(t)?t===L||null==t||""===t?(this._$AH!==L&&this._$AR(),this._$AH=L):t!==this._$AH&&t!==T&&this.$(t):void 0!==t._$litType$?this.T(t):void 0!==t.nodeType?this.k(t):(t=>{var e;return k(t)||"function"==typeof(null===(e=t)||void 0===e?void 0:e[Symbol.iterator])})(t)?this.S(t):this.$(t)}A(t,e=this._$AB){return this._$AA.parentNode.insertBefore(t,e)}k(t){this._$AH!==t&&(this._$AR(),this._$AH=this.A(t))}$(t){this._$AH!==L&&x(this._$AH)?this._$AA.nextSibling.data=t:this.k(A.createTextNode(t)),this._$AH=t}T(t){var e;const{values:s,_$litType$:i}=t,n="number"==typeof i?this._$AC(t):(void 0===i.el&&(i.el=B.createElement(i.h,this.options)),i);if((null===(e=this._$AH)||void 0===e?void 0:e._$AD)===n)this._$AH.m(s);else{const t=new F(n,this),e=t.p(this.options);t.m(s),this.k(e),this._$AH=t}}_$AC(t){let e=O.get(t.strings);return void 0===e&&O.set(t.strings,e=new B(t)),e}S(t){k(this._$AH)||(this._$AH=[],this._$AR());const e=this._$AH;let s,i=0;for(const n of t)i===e.length?e.push(s=new H(this.A(_()),this.A(_()),this,this.options)):s=e[i],s._$AI(n),i++;i<e.length&&(this._$AR(s&&s._$AB.nextSibling,i),e.length=i)}_$AR(t=this._$AA.nextSibling,e){var s;for(null===(s=this._$AP)||void 0===s||s.call(this,!1,!0,e);t&&t!==this._$AB;){const e=t.nextSibling;t.remove(),t=e}}setConnected(t){var e;void 0===this._$AM&&(this._$Cg=t,null===(e=this._$AP)||void 0===e||e.call(this,t))}}class j{constructor(t,e,s,i,n){this.type=1,this._$AH=L,this._$AN=void 0,this.element=t,this.name=e,this._$AM=i,this.options=n,s.length>2||""!==s[0]||""!==s[1]?(this._$AH=Array(s.length-1).fill(new String),this.strings=s):this._$AH=L}get tagName(){return this.element.tagName}get _$AU(){return this._$AM._$AU}_$AI(t,e=this,s,i){const n=this.strings;let r=!1;if(void 0===n)t=D(this,t,e,0),r=!x(t)||t!==this._$AH&&t!==T,r&&(this._$AH=t);else{const i=t;let o,a;for(t=n[0],o=0;o<n.length-1;o++)a=D(this,i[s+o],e,o),a===T&&(a=this._$AH[o]),r||(r=!x(a)||a!==this._$AH[o]),a===L?t=L:t!==L&&(t+=(null!=a?a:"")+n[o+1]),this._$AH[o]=a}r&&!i&&this.C(t)}C(t){t===L?this.element.removeAttribute(this.name):this.element.setAttribute(this.name,null!=t?t:"")}}class z extends j{constructor(){super(...arguments),this.type=3}C(t){this.element[this.name]=t===L?void 0:t}}const V=y?y.emptyScript:"";class G extends j{constructor(){super(...arguments),this.type=4}C(t){t&&t!==L?this.element.setAttribute(this.name,V):this.element.removeAttribute(this.name)}}class W extends j{constructor(t,e,s,i,n){super(t,e,s,i,n),this.type=5}_$AI(t,e=this){var s;if((t=null!==(s=D(this,t,e,0))&&void 0!==s?s:L)===T)return;const i=this._$AH,n=t===L&&i!==L||t.capture!==i.capture||t.once!==i.once||t.passive!==i.passive,r=t!==L&&(i===L||n);n&&this.element.removeEventListener(this.name,this,i),r&&this.element.addEventListener(this.name,this,t),this._$AH=t}handleEvent(t){var e,s;"function"==typeof this._$AH?this._$AH.call(null!==(s=null===(e=this.options)||void 0===e?void 0:e.host)&&void 0!==s?s:this.element,t):this._$AH.handleEvent(t)}}class q{constructor(t,e,s){this.element=t,this.type=6,this._$AN=void 0,this._$AM=e,this.options=s}get _$AU(){return this._$AM._$AU}_$AI(t){D(this,t)}}const J=window.litHtmlPolyfillSupport;
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
var Y,K;null==J||J(B,H),(null!==(m=globalThis.litHtmlVersions)&&void 0!==m?m:globalThis.litHtmlVersions=[]).push("2.2.0");class X extends f{constructor(){super(...arguments),this.renderOptions={host:this},this._$Dt=void 0}createRenderRoot(){var t,e;const s=super.createRenderRoot();return null!==(t=(e=this.renderOptions).renderBefore)&&void 0!==t||(e.renderBefore=s.firstChild),s}update(t){const e=this.render();this.hasUpdated||(this.renderOptions.isConnected=this.isConnected),super.update(t),this._$Dt=((t,e,s)=>{var i,n;const r=null!==(i=null==s?void 0:s.renderBefore)&&void 0!==i?i:e;let o=r._$litPart$;if(void 0===o){const t=null!==(n=null==s?void 0:s.renderBefore)&&void 0!==n?n:null;r._$litPart$=o=new H(e.insertBefore(_(),t),t,void 0,null!=s?s:{})}return o._$AI(t),o})(e,this.renderRoot,this.renderOptions)}connectedCallback(){var t;super.connectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!0)}disconnectedCallback(){var t;super.disconnectedCallback(),null===(t=this._$Dt)||void 0===t||t.setConnected(!1)}render(){return T}}X.finalized=!0,X._$litElement$=!0,null===(Y=globalThis.litElementHydrateSupport)||void 0===Y||Y.call(globalThis,{LitElement:X});const Z=globalThis.litElementPolyfillSupport;null==Z||Z({LitElement:X}),(null!==(K=globalThis.litElementVersions)&&void 0!==K?K:globalThis.litElementVersions=[]).push("3.2.0");
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
const Q=t=>e=>{return"function"==typeof e?(s=t,i=e,window.customElements.define(s,i),i):((t,e)=>{const{kind:s,elements:i}=e;return{kind:s,elements:i,finisher(e){window.customElements.define(t,e)}}})(t,e);
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/var s,i},tt=(t,e)=>"method"===e.kind&&e.descriptor&&!("value"in e.descriptor)?__spreadProps(__spreadValues({},e),{finisher(s){s.createProperty(e.key,t)}}):{kind:"field",key:Symbol(),placement:"own",descriptor:{},originalKey:e.key,initializer(){"function"==typeof e.initializer&&(this[e.key]=e.initializer.call(this))},finisher(s){s.createProperty(e.key,t)}};
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
function et(t){return e=__spreadProps(__spreadValues({},t),{state:!0}),(t,s)=>{return void 0!==s?(i=e,n=s,void t.constructor.createProperty(n,i)):tt(e,t);var i,n};var e}
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
/**
* @license
* Copyright 2017 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
function st(t,e){return(({finisher:t,descriptor:e})=>(s,i)=>{var n;if(void 0===i){const i=null!==(n=s.originalKey)&&void 0!==n?n:s.key,r=null!=e?{kind:"method",placement:"prototype",key:i,descriptor:e(s.key)}:__spreadProps(__spreadValues({},s),{key:i});return null!=t&&(r.finisher=function(e){t(e,i)}),r}{const n=s.constructor;void 0!==e&&Object.defineProperty(s,i,e(i)),null==t||t(n,i)}})({descriptor:s=>{const i={get(){var e,s;return null!==(s=null===(e=this.renderRoot)||void 0===e?void 0:e.querySelector(t))&&void 0!==s?s:null},enumerable:!0,configurable:!0};if(e){const e="symbol"==typeof s?Symbol():"__"+s;i.get=function(){var s,i;return void 0===this[e]&&(this[e]=null!==(i=null===(s=this.renderRoot)||void 0===s?void 0:s.querySelector(t))&&void 0!==i?i:null),this[e]}}return i}})}
/**
* @license
* Copyright 2021 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/var it;null===(it=window.HTMLSlotElement)||void 0===it||it.prototype.assignedElements;const nt=160,rt=160,ot=1024,at=[14743759,8831084,3172432,464929],lt=16,ct=32,ht=64,dt=128,ut=Uint8Array.of(255,255,255,255,255,255,255,255,199,199,199,207,207,255,207,255,147,147,147,255,255,255,255,255,147,1,147,147,147,1,147,255,239,131,47,131,233,3,239,255,157,91,55,239,217,181,115,255,143,39,39,143,37,51,129,255,207,207,207,255,255,255,255,255,243,231,207,207,207,231,243,255,159,207,231,231,231,207,159,255,255,147,199,1,199,147,255,255,255,231,231,129,231,231,255,255,255,255,255,255,255,207,207,159,255,255,255,129,255,255,255,255,255,255,255,255,255,207,207,255,253,251,247,239,223,191,127,255,199,179,57,57,57,155,199,255,231,199,231,231,231,231,129,255,131,57,241,195,135,31,1,255,129,243,231,195,249,57,131,255,227,195,147,51,1,243,243,255,3,63,3,249,249,57,131,255,195,159,63,3,57,57,131,255,1,57,243,231,207,207,207,255,135,59,27,135,97,121,131,255,131,57,57,129,249,243,135,255,255,207,207,255,207,207,255,255,255,207,207,255,207,207,159,255,243,231,207,159,207,231,243,255,255,255,1,255,1,255,255,255,159,207,231,243,231,207,159,255,131,1,57,243,199,255,199,255,131,125,69,85,65,127,131,255,199,147,57,57,1,57,57,255,3,57,57,3,57,57,3,255,195,153,63,63,63,153,195,255,7,51,57,57,57,51,7,255,1,63,63,3,63,63,1,255,1,63,63,3,63,63,63,255,193,159,63,49,57,153,193,255,57,57,57,1,57,57,57,255,129,231,231,231,231,231,129,255,249,249,249,249,249,57,131,255,57,51,39,15,7,35,49,255,159,159,159,159,159,159,129,255,57,17,1,1,41,57,57,255,57,25,9,1,33,49,57,255,131,57,57,57,57,57,131,255,3,57,57,57,3,63,63,255,131,57,57,57,33,51,133,255,3,57,57,49,7,35,49,255,135,51,63,131,249,57,131,255,129,231,231,231,231,231,231,255,57,57,57,57,57,57,131,255,57,57,57,17,131,199,239,255,57,57,41,1,1,17,57,255,57,17,131,199,131,17,57,255,153,153,153,195,231,231,231,255,1,241,227,199,143,31,1,255,195,207,207,207,207,207,195,255,127,191,223,239,247,251,253,255,135,231,231,231,231,231,135,255,199,147,255,255,255,255,255,255,255,255,255,255,255,255,255,1,239,247,255,255,255,255,255,255,255,255,131,249,129,57,129,255,63,63,3,57,57,57,131,255,255,255,129,63,63,63,129,255,249,249,129,57,57,57,129,255,255,255,131,57,1,63,131,255,241,231,129,231,231,231,231,255,255,255,129,57,57,129,249,131,63,63,3,57,57,57,57,255,231,255,199,231,231,231,129,255,243,255,227,243,243,243,243,135,63,63,49,3,7,35,49,255,199,231,231,231,231,231,129,255,255,255,3,73,73,73,73,255,255,255,3,57,57,57,57,255,255,255,131,57,57,57,131,255,255,255,3,57,57,3,63,63,255,255,129,57,57,129,249,249,255,255,145,143,159,159,159,255,255,255,131,63,131,249,3,255,231,231,129,231,231,231,231,255,255,255,57,57,57,57,129,255,255,255,153,153,153,195,231,255,255,255,73,73,73,73,129,255,255,255,57,1,199,1,57,255,255,255,57,57,57,129,249,131,255,255,1,227,199,143,1,255,243,231,231,207,231,231,243,255,231,231,231,231,231,231,231,255,159,207,207,231,207,207,159,255,255,255,143,69,227,255,255,255,255,255,255,255,255,147,147,255,131,41,41,17,41,41,131,255,131,57,9,17,33,57,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,131,17,33,125,33,17,131,255,131,17,9,125,9,17,131,255,131,17,57,85,17,17,131,255,131,17,17,85,57,17,131,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,255,231,255,231,231,199,199,199,255,239,131,41,47,41,131,239,255,195,153,159,3,159,159,1,255,255,165,219,219,219,165,255,255,153,153,195,129,231,129,231,255,231,231,231,255,231,231,231,255,195,153,135,219,225,153,195,255,147,255,255,255,255,255,255,255,195,189,102,94,94,102,189,195,135,195,147,195,255,255,255,255,255,201,147,39,147,201,255,255,255,255,129,249,249,255,255,255,255,255,255,255,255,255,255,255,195,189,70,90,70,90,189,195,131,255,255,255,255,255,255,255,239,215,239,255,255,255,255,255,231,231,129,231,231,255,129,255,199,243,231,195,255,255,255,255,195,231,243,199,255,255,255,255,247,239,255,255,255,255,255,255,255,255,51,51,51,51,9,63,193,149,181,149,193,245,245,255,255,255,255,207,207,255,255,255,255,255,255,255,255,255,247,207,231,199,231,195,255,255,255,255,199,147,147,199,255,255,255,255,255,39,147,201,147,39,255,255,189,59,183,173,217,177,125,255,189,59,183,169,221,187,113,255,29,187,215,45,217,177,125,255,199,255,199,159,57,1,131,255,223,239,199,147,57,1,57,255,247,239,199,147,57,1,57,255,199,147,199,147,57,1,57,255,203,167,199,147,57,1,57,255,147,255,199,147,57,1,57,255,239,215,199,147,57,1,57,255,193,135,39,33,7,39,33,255,195,153,63,63,153,195,247,207,223,239,1,63,3,63,1,255,247,239,1,63,3,63,1,255,199,147,1,63,3,63,1,255,147,255,1,63,3,63,1,255,239,247,129,231,231,231,129,255,247,239,129,231,231,231,129,255,231,195,129,231,231,231,129,255,153,255,129,231,231,231,129,255,135,147,153,9,153,147,135,255,203,167,25,9,1,33,49,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,187,215,239,215,187,255,255,131,57,49,41,25,57,131,255,223,239,57,57,57,57,131,255,247,239,57,57,57,57,131,255,199,147,255,57,57,57,131,255,147,255,57,57,57,57,131,255,247,239,153,153,195,231,231,255,63,3,57,57,57,3,63,255,195,153,153,147,153,137,147,255,223,239,131,249,129,57,129,255,247,239,131,249,129,57,129,255,199,147,131,249,129,57,129,255,203,167,131,249,129,57,129,255,147,255,131,249,129,57,129,255,239,215,131,249,129,57,129,255,255,255,131,233,129,47,131,255,255,255,129,63,63,129,247,207,223,239,131,57,1,63,131,255,247,239,131,57,1,63,131,255,199,147,131,57,1,63,131,255,147,255,131,57,1,63,131,255,223,239,255,199,231,231,129,255,247,239,255,199,231,231,129,255,199,147,255,199,231,231,129,255,147,255,199,231,231,231,129,255,155,135,103,131,57,57,131,255,203,167,3,57,57,57,57,255,223,239,131,57,57,57,131,255,247,239,131,57,57,57,131,255,199,147,131,57,57,57,131,255,203,167,131,57,57,57,131,255,147,255,131,57,57,57,131,255,255,231,255,129,255,231,255,255,255,255,131,49,41,25,131,255,223,239,57,57,57,57,129,255,247,239,57,57,57,57,129,255,199,147,255,57,57,57,129,255,147,255,57,57,57,57,129,255,247,239,57,57,57,129,249,131,63,63,3,57,57,3,63,63,147,255,57,57,57,129,249,131);function pt(t){const e=new URL(location.href),s=e.searchParams.get(t);if(null!=s)return s;return new URL(e.hash.substring(1),e.origin).searchParams.get(t)}function ft(){null==document.fullscreenElement&&document.body.requestFullscreen({navigationUI:"hide"})}const mt="0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ.-:+=^!/*?&<>()[]{}@%$#".split(""),yt=[0,68,0,84,83,82,72,0,75,76,70,65,0,63,62,69,0,1,2,3,4,5,6,7,8,9,64,0,73,66,74,71,81,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,77,0,78,67,0,0,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,79,0,80,0,0];function wt(t,e){let s=0,i=0,n=0;const r=t.length,o=e.length;if(t.length%5==0)for(;i<r;){const r=t.charCodeAt(i++)-32;if(r<0||r>=yt.length)return s;if(n=85*n+yt[r],i%5==0){let t=16777216;for(;t>=1;){if(s>=o)return s;e[s++]=n/t%256,t/=256}n=0}}return s}class bt{constructor(){this.memory=new ArrayBuffer(65536),this.diskBuffer=new ArrayBuffer(ot),this.diskSize=0}read(t){new Uint8Array(this.memory).set(new Uint8Array(t.memory.buffer)),this.diskSize=t.diskSize,new Uint8Array(this.diskBuffer).set(new Uint8Array(t.diskBuffer,0,t.diskSize))}write(t){new Uint8Array(t.memory.buffer).set(new Uint8Array(this.memory)),t.diskSize=this.diskSize,new Uint8Array(t.diskBuffer).set(new Uint8Array(this.diskBuffer,0,this.diskSize))}toBytes(t){t||(t=new Uint8Array(65540+this.diskSize)),t.set(new Uint8Array(this.memory),0);return new DataView(t.buffer,t.byteOffset,t.byteLength).setUint32(65536,this.diskSize),t.set(new Uint8Array(this.diskBuffer,0,this.diskSize),65540),t}fromBytes(t){new Uint8Array(this.memory).set(t.subarray(0,65536));const e=new DataView(t.buffer,t.byteOffset,t.byteLength);this.diskSize=e.getUint32(65536);new Uint8Array(this.diskBuffer).set(t.subarray(65540,65540+this.diskSize))}}const gt=20;class vt{constructor(){this.frame=-1,this.state=new bt,this.inputs=new Array(4),this.predicted=new Array(4);for(let t=0;t<4;++t)this.inputs[t]=0,this.predicted[t]=!0}}class At{constructor(){this.futureInputs=new Map}}class _t{constructor(t,e){this.currentFrame=t,this.runtime=e,this.rollbackIdx=gt,this.history=new Array(gt);for(let s=0;s<gt;++s)this.history[s]=new vt;this.players=new Array(4);for(let s=0;s<4;++s)this.players[s]=new At}addInputs(t,e,s){const i=this.players[t];for(const n of s){if(e>=this.currentFrame)i.futureInputs.has(e)||i.futureInputs.set(e,n);else for(let s=0,i=gt;s<i;++s){const i=this.history[s];if(i.frame==e){i.predicted[t]&&(i.predicted[t]=!1,i.inputs[t]!=n&&(i.inputs[t]=n,this.rollbackIdx=Math.min(s,this.rollbackIdx)));break}}++e}}update(){if(this.rollbackIdx<gt){for(let e=this.rollbackIdx+1;e<gt;++e){const t=this.history[e];for(let s=0;s<4;++s)if(t.predicted[s]){const i=this.history[e-1];t.inputs[s]=i.inputs[s]}}let t=!0;for(;this.rollbackIdx<gt;){const e=this.history[this.rollbackIdx++];t?(t=!1,e.state.write(this.runtime)):e.state.read(this.runtime);for(let t=0;t<4;++t)this.runtime.setGamepad(t,e.inputs[t]);this.runtime.update()}}const t=this.history[19],e=this.history.shift();this.history.push(e),e.frame=this.currentFrame,e.state.read(this.runtime);for(let s=0;s<4;++s){const i=this.players[s];let n=i.futureInputs.get(this.currentFrame);null!=n?(e.predicted[s]=!1,i.futureInputs.delete(this.currentFrame)):(e.predicted[s]=!0,n=t.inputs[s]),e.inputs[s]=n,this.runtime.setGamepad(s,n)}this.runtime.update(),++this.currentFrame}}class xt{constructor(t,e){this.bufferedOutput=[],this.socket=new WebSocket(`wss://aduros.com/webrtc-signal-server/?peerId=${encodeURIComponent(t)}`),this.socket.addEventListener("message",(t=>{const{source:s,message:i}=JSON.parse(t.data);e(s,i)})),this.socket.addEventListener("open",(t=>{for(const e of this.bufferedOutput)this.socket.send(e);this.bufferedOutput.length=0}))}send(t,e){const s=JSON.stringify({target:t,message:e});1==this.socket.readyState?this.socket.send(s):this.bufferedOutput.push(s)}close(){this.socket.close()}}class kt{constructor(t){this.connections=new Map,this.localPeerId=function(){let t="";for(let e=0;e<22;++e)t+="0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".charAt(62*Math.random()>>>0);return t}(),this.signalClient=new xt(this.localPeerId,(async(e,s)=>{switch(s.type){case"OFFER":if(this.connections.has(e))throw new Error("Received offer for a connection we already initiated");{const i=this.createConnection(e);await i.setRemoteDescription(s.description),await i.setLocalDescription(await i.createAnswer()),t(i,e),this.signalClient.send(e,{type:"ANSWER",description:i.localDescription.toJSON()})}break;case"ANSWER":{const t=this.connections.get(e);t&&await t.setRemoteDescription(s.description)}break;case"CANDIDATE":{const t=this.connections.get(e);t&&await t.addIceCandidate(new RTCIceCandidate(s.candidate))}break;case"ABORT":{const t=this.connections.get(e);t&&t.close()}}}))}createConnection(t){const e=new RTCPeerConnection({iceServers:[{urls:"stun:openrelay.metered.ca:80"},{urls:"turn:openrelay.metered.ca:80",username:"openrelayproject",credential:"openrelayproject"},{urls:"turn:openrelay.metered.ca:443",username:"openrelayproject",credential:"openrelayproject"},{urls:"turn:openrelay.metered.ca:443?transport=tcp",username:"openrelayproject",credential:"openrelayproject"},{urls:"stun:stun.l.google.com:19302"}]});return this.connections.set(t,e),e.addEventListener("negotiationneeded",(async()=>{await e.setLocalDescription(await e.createOffer()),this.signalClient.send(t,{type:"OFFER",description:e.localDescription.toJSON()})})),e.addEventListener("icecandidate",(({candidate:e})=>{e&&this.signalClient.send(t,{type:"CANDIDATE",candidate:e.toJSON()})})),e.addEventListener("connectionstatechange",(()=>{const s=e.connectionState;"connected"!=s&&"failed"!=s||this.connections.delete(t)})),e}connect(t){return this.connections.get(t)||this.createConnection(t)}close(){this.signalClient.close();for(const[t,e]of this.connections)e.close()}}const $t=16384;class St{constructor(t){this.chunks=[],this.size=0,t.addEventListener("message",(t=>{if(t.data instanceof ArrayBuffer){const e=new Uint8Array(t.data);this.size+=e.byteLength,this.chunks.push(e)}}))}read(){const t=new Uint8Array(this.size);let e=0;for(const s of this.chunks)t.set(s,e),e+=s.byteLength;return this.chunks.length=0,this.size=0,t}}class Pt{constructor(t){this.channel=t,this.size=0}write(t){this.buffer||(this.buffer=new Uint8Array($t));let e=this.size,s=0;for(;s<t.length;){const i=t.subarray(s,s+$t-e);this.buffer.set(i,e),s+=i.length,e+=i.length,e>=$t&&(e-=$t,this.channel.send(this.buffer))}this.size=e}flush(){this.buffer&&this.size>0&&this.channel.send(this.buffer.subarray(0,this.size)),this.buffer=void 0}}class Et{constructor(t,e=0){this.buffer=t,this.position=e}readBit(){const t=!!(this.buffer[this.position/8>>>0]&1<<(7&this.position));return++this.position,t}readBits(t){let e=0;for(let s=0;s<t;++s)e|=+this.readBit()<<s;return e}}class Ct{constructor(t,e=0){this.buffer=t,this.position=e}write1(){this.buffer[this.position/8>>>0]|=1<<(7&this.position),++this.position}write0(){this.buffer[this.position/8>>>0]&=~(1<<(7&this.position)),++this.position}writeBits(t,e){for(let s=0;s<e;++s)t&1<<s?this.write1():this.write0()}}class Ut{constructor(t=.125){this.discount=t,this.average=0,this.firstUpdate=!0}update(t){if(this.firstUpdate)this.firstUpdate=!1,this.average=t;else{const e=this.discount;this.average=(1-e)*this.average+e*t}}}const It=8+Math.ceil(82.5),Mt=new ArrayBuffer(It);class Tt{constructor(t,e,s,i){this.peerId=t,this.connection=e,this.reliableChannel=s,this.unreliableChannel=i,this.playerIdx=-1,this.frame=0,this.nextNeededFrame=0,this.outboundFrame=0,this.outboundInputs=[],this.ping=new Ut,this.drift=new Ut,this.chunkReader=new St(s),this.chunkWriter=new Pt(s)}addOutboundInput(t,e){if(0==this.outboundFrame&&(this.outboundFrame=t),t<this.outboundFrame){for(let s=this.outboundFrame-t;s>0;--s)this.outboundInputs.unshift(e);this.outboundFrame=t}else{const s=t-this.outboundFrame;if(s>=this.outboundInputs.length){for(let t=this.outboundInputs.length;t<s;++t)this.outboundInputs[t]=t>0?this.outboundInputs[t-1]:0;this.outboundInputs[s]=e}}}sendMessage(t){this.reliableChannel.send(JSON.stringify(t))}sendUnreliableBuffer(t){this.unreliableChannel.send(t)}sendPingRequest(){const t=new DataView(Mt);t.setUint8(0,2),t.setUint32(1,performance.now()>>>0),this.sendUnreliableBuffer(new Uint8Array(Mt,0,5))}sendPingReply(t){const e=new DataView(Mt);e.setUint8(0,3),e.setUint32(1,t),this.sendUnreliableBuffer(new Uint8Array(Mt,0,5))}sendTick(t){const e=new DataView(Mt);e.setUint8(0,1),e.setUint32(1,t),e.setInt8(5,0==this.nextNeededFrame?-127:this.nextNeededFrame-t),e.setInt8(6,this.outboundFrame-t),e.setUint8(7,this.outboundInputs.length);const s=new Ct(new Uint8Array(Mt,8));let i=0;for(const r of this.outboundInputs){const t=i^r;i=r;for(let e=0;e<8;++e)t&1<<e&&(s.write1(),s.writeBits(e,3));s.write0()}const n=8+Math.ceil(s.position/8);this.sendUnreliableBuffer(new Uint8Array(Mt,0,n))}close(){this.reliableChannel.close(),this.unreliableChannel.close(),this.connection.close()}}class Lt{constructor(t){this.runtime=t,this.remotePlayers=new Map,this.localPlayerIdx=-1,this.updateCount=0,this.peerMgr=new kt((async(t,e)=>{const s=Array.from(this.remotePlayers.keys()),i=await this.createRemotePlayer(t,e);i.sendMessage({type:"WELCOME",otherPeers:s}),this.localPlayerIdx>=0&&i.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})}))}host(){this.rollbackMgr=new _t(1,this.runtime),this.localPlayerIdx=0}join(t){const e=this.peerMgr.connect(t);this.createRemotePlayer(e,t).then((t=>{t.sendMessage({type:"JOIN_REQUEST"})}),(t=>{this.runtime.blueScreen(new Error("Failed to connect\nto peer. They may\nbe offline?"))}))}getInviteLink(){return`https://wasm4.org/netplay/#${this.peerMgr.localPeerId}`}close(){for(const t of this.remotePlayers.values())t.close();this.peerMgr.close()}async createRemotePlayer(t,e){function s(e){return new Promise(((s,i)=>{const n=t.createDataChannel("WASM-4",e);n.binaryType="arraybuffer",n.onopen=()=>{s(n)},n.onerror=i}))}const[i,n]=await Promise.all([s({negotiated:!0,id:0}),s({negotiated:!0,id:1,ordered:!1,maxRetransmits:0})]),r=new Tt(e,t,i,n);this.remotePlayers.set(e,r);const o=()=>{this.remotePlayers.has(e)&&(this.remotePlayers.delete(e),this.onleave&&r.playerIdx>=0&&this.onleave(r.playerIdx))};return t.addEventListener("connectionstatechange",(()=>{"disconnected"==t.connectionState&&o()})),i.addEventListener("close",o),n.addEventListener("close",o),i.addEventListener("message",(async t=>{if("string"!=typeof t.data)return;const e=JSON.parse(t.data);switch(e.type){case"WELCOME":for(const t of e.otherPeers)if(!this.remotePlayers.has(t)){const e=this.peerMgr.connect(t),s=await this.createRemotePlayer(e,t);this.localPlayerIdx>=0&&s.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx})}break;case"JOIN_REQUEST":{const t=this.nextPlayerIdx();if(t>=4)r.sendMessage({type:"JOIN_REJECT"}),r.close();else{r.playerIdx=t,r.chunkWriter.write(this.runtime.wasmBuffer);const e=new bt;e.read(this.runtime),r.chunkWriter.write(e.toBytes()),r.chunkWriter.flush(),r.sendMessage({type:"JOIN_REPLY",yourPlayerIdx:r.playerIdx,frame:this.rollbackMgr.currentFrame,stateOffset:this.runtime.wasmBuffer.byteLength}),this.onjoin&&this.onjoin(r.playerIdx)}}break;case"JOIN_REPLY":{for(const e of this.remotePlayers.values())e!=r&&e.sendMessage({type:"PLAYER_INFO",playerIdx:this.localPlayerIdx});const t=r.chunkReader.read(),s=t.subarray(0,e.stateOffset),i=t.subarray(e.stateOffset);await this.runtime.load(s,!1);const n=new bt;n.fromBytes(i),n.write(this.runtime),this.rollbackMgr=new _t(e.frame,this.runtime),this.localPlayerIdx=e.yourPlayerIdx,this.onstart&&this.onstart(this.localPlayerIdx)}break;case"JOIN_REJECT":this.runtime.blueScreen(new Error("Connected, but the\ngame is already\nfull!")),this.close();break;case"PLAYER_INFO":-1==r.playerIdx&&(r.playerIdx=e.playerIdx,this.onjoin&&this.onjoin(r.playerIdx))}})),n.addEventListener("message",(async t=>{const e=t.data,s=new DataView(e);switch(s.getUint8(0)){case 1:if(this.rollbackMgr&&r.playerIdx>=0){const t=s.getUint32(1);if(t>r.frame){const i=s.getInt8(5)+t,n=s.getInt8(6)+t,o=s.getUint8(7),a=new Et(new Uint8Array(e,8)),l=new Array(o);let c=0;for(let t=0;t<o;++t){for(;a.readBit();){c^=1<<a.readBits(3)}l[t]=c}if(r.frame=t,r.nextNeededFrame=n+l.length,0==r.outboundFrame)r.outboundFrame=i;else if(i>r.outboundFrame){const t=i-r.outboundFrame;r.outboundFrame=i,r.outboundInputs.splice(0,t)}const h=t+.5*r.ping.average*60/1e3,d=this.rollbackMgr.currentFrame-h;r.drift.update(d),this.rollbackMgr.addInputs(r.playerIdx,n,l)}}break;case 2:{const t=s.getUint32(1);r.sendPingReply(t)}break;case 3:{const t=s.getUint32(1),e=(performance.now()>>>0)-t;r.ping.update(e)}}})),r}nextPlayerIdx(){t:for(let t=0;t<4;++t)if(this.localPlayerIdx!=t){for(const e of this.remotePlayers.values())if(e.playerIdx==t)continue t;return t}return-1}update(t){if(!this.rollbackMgr)return!1;const e=0==(7&this.updateCount),s=0==(31&this.updateCount);++this.updateCount;const i=this.rollbackMgr.currentFrame,n=i+2;this.rollbackMgr.addInputs(this.localPlayerIdx,n,[t]);let r=!1;for(const o of this.remotePlayers.values())o.addOutboundInput(n,t),o.sendTick(i),(o.nextNeededFrame<i-gt||o.outboundInputs.length>=20)&&(r=!0),s&&o.sendPingRequest();if(e){let t=0;for(const e of this.remotePlayers.values())t=Math.max(e.drift.average,t);t>=1&&(r=!0)}return r||this.rollbackMgr.update(),!r}getSummary(){const t=[{playerIdx:this.localPlayerIdx,ping:-1}];for(const e of this.remotePlayers.values())t.push({playerIdx:e.playerIdx,ping:e.ping.average});return t.sort(((t,e)=>t.playerIdx-e.playerIdx)),t}}var Ot='(()=>{"use strict";var p=44100,q=.15,A=.25,V=class{constructor(){this.freq1=0;this.freq2=0;this.startTime=0;this.attackTime=0;this.decayTime=0;this.sustainTime=0;this.releaseTime=0;this.sustainVolume=0;this.peakVolume=0;this.phase=0;this.pan=0;this.pulseDutyCycle=0;this.noiseSeed=1;this.noiseLastRandom=0}};function M(n,e,t){return n+t*(e-n)}function g(n,e){if(n<e){let t=n/e;return t+t-t*t}else if(n>1-e){let t=(n-(1-e))/e;return 1-(t+t-t*t)}else return 1}var C=class extends AudioWorkletProcessor{constructor(){super();this.time=0,this.channels=new Array(4);for(let e=0;e<4;++e)this.channels[e]=new V;this.port!=null&&(this.port.onmessage=e=>{this.tone(...e.data)})}ramp(e,t,o,T){let m=(this.time-o)/(T-o);return M(e,t,m)}getCurrentFrequency(e){return e.freq2>0?this.ramp(e.freq1,e.freq2,e.startTime,e.releaseTime):e.freq1}getCurrentVolume(e){let t=this.time;return t>=e.sustainTime?this.ramp(e.sustainVolume,0,e.sustainTime,e.releaseTime):t>=e.decayTime?e.sustainVolume:t>=e.attackTime?this.ramp(e.peakVolume,e.sustainVolume,e.attackTime,e.decayTime):this.ramp(0,e.peakVolume,e.startTime,e.attackTime)}tone(e,t,o,T){let m=e&65535,x=e>>16&65535,d=t&255,y=t>>8&255,l=t>>16&255,r=t>>24&255,b=Math.min(o&255,100),f=Math.min(o>>8&255,100),a=T&3,i=T>>2&3,u=T>>4&3,s=this.channels[a];this.time>s.releaseTime&&(s.phase=a==2?.25:0),s.freq1=m,s.freq2=x,s.startTime=this.time,s.attackTime=s.startTime+(p*r/60>>>0),s.decayTime=s.attackTime+(p*l/60>>>0),s.sustainTime=s.decayTime+(p*d/60>>>0),s.releaseTime=s.sustainTime+(p*y/60>>>0),s.pan=u;let c=a==2?A:q;if(s.sustainVolume=c*b/100,s.peakVolume=f?c*f/100:c,a==0||a==1)switch(i){case 0:s.pulseDutyCycle=.125;break;case 1:case 3:default:s.pulseDutyCycle=.25;break;case 2:s.pulseDutyCycle=.5;break}else a==2&&y==0&&(s.releaseTime+=p/1e3>>>0)}process(e,[[t,o]],T){for(let m=0,x=t.length;m<x;++m,++this.time){let d=0,y=0;for(let l=0;l<4;++l){let r=this.channels[l];if(this.time<r.releaseTime){let b=this.getCurrentFrequency(r),f=this.getCurrentVolume(r),a;if(l==3){for(r.phase+=b*b/(1e6/44100*p);r.phase>0;){r.phase--;let i=r.noiseSeed;i^=i>>7,i^=i<<9,i^=i>>13,r.noiseSeed=i,r.noiseLastRandom=((i&1)<<1)-1}a=f*r.noiseLastRandom}else{let i=b/p,u=r.phase+i;if(u>=1&&u--,r.phase=u,l==2)a=f*(2*Math.abs(2*r.phase-1)-1);else{let s,c,k,h=r.pulseDutyCycle;u<h?(s=u/h,c=i/h,k=f):(s=(u-h)/(1-h),c=i/(1-h),k=-f),a=k*g(s,c)}}r.pan!=1&&(y+=a),r.pan!=2&&(d+=a)}}t[m]=d,o[m]=y}return!0}};registerProcessor("wasm4-apu",C);})();\n';class Rt{constructor(){this.audioCtx=new(window.AudioContext||window.webkitAudioContext)({sampleRate:44100})}async init(){const t=this.audioCtx,e=new Blob([Ot],{type:"application/javascript"}),s=URL.createObjectURL(e);try{await t.audioWorklet.addModule(s);const e=new AudioWorkletNode(t,"wasm4-apu",{outputChannelCount:[2]});this.processorPort=e.port,e.connect(t.destination)}catch(i){let e;console.warn("AudioWorklet loading failed, falling back to slow audio",i);const s=(t,s)=>{e=new s};new Function("registerProcessor","AudioWorkletProcessor",Ot)(s,class{}),this.processor=e;const n=t.createScriptProcessor(1024,0,2);n.onaudioprocess=t=>{const s=t.outputBuffer.getChannelData(0),i=t.outputBuffer.getChannelData(1);e.process(null,[[s,i]])},n.connect(t.destination)}}tone(t,e,s,i){const n=this.processorPort;null!=n?n.postMessage([t,e,s,i]):this.processor.tone(t,e,s,i)}unlockAudio(){const t=this.audioCtx;"suspended"==t.state&&t.resume()}pauseAudio(){const t=this.audioCtx;"running"==t.state&&t.suspend()}}class Nt{constructor(t){this.bytes=new Uint8Array(t,160,6400),this.drawColors=new Uint16Array(t,20,1)}clear(){this.bytes.fill(0)}drawPoint(t,e,s){const i=nt*s+e>>>2,n=(3&e)<<1,r=3<<n;this.bytes[i]=t<<n|this.bytes[i]&~r}drawPointUnclipped(t,e,s){e>=0&&e<nt&&s>=0&&s<rt&&this.drawPoint(t,e,s)}drawHLineFast(t,e,s,i){const n=i-(3&i),r=Math.min(e+3&-4,n);if(n-r>3){for(let n=e;n<r;n++)this.drawPoint(t,n,s);const i=nt*s+r>>>2,o=nt*s+n>>>2,a=85*t;this.bytes.fill(a,i,o),e=n}for(let o=e;o<i;o++)this.drawPoint(t,o,s)}drawHLineUnclipped(t,e,s,i){s>=0&&s<rt&&(e<0&&(e=0),i>nt&&(i=nt),e<i&&this.drawHLineFast(t,e,s,i))}drawHLine(t,e,s){const i=15&this.drawColors[0];if(0==i)return;const n=i-1&3;this.drawHLineUnclipped(n,t,e,t+s)}drawVLine(t,e,s){if(e+s<=0||t<0||t>=nt)return;const i=15&this.drawColors[0];if(0==i)return;const n=Math.max(0,e),r=Math.min(rt,e+s),o=i-1&3;for(let a=n;a<r;a++)this.drawPoint(o,t,a)}drawRect(t,e,s,i){const n=Math.max(0,t),r=Math.max(0,e),o=t+s,a=e+i,l=Math.min(o,nt),c=Math.min(a,rt),h=this.drawColors[0],d=15&h,u=h>>>4&15;if(0!==d){const t=d-1&3;for(let e=r;e<c;++e)this.drawHLineFast(t,n,e,l)}if(0!==u){const s=u-1&3;if(t>=0&&t<nt)for(let e=r;e<c;++e)this.drawPoint(s,t,e);if(o>=0&&o<=nt)for(let t=r;t<c;++t)this.drawPoint(s,o-1,t);e>=0&&e<rt&&this.drawHLineFast(s,n,e,l),a>=0&&a<=rt&&this.drawHLineFast(s,n,a-1,l)}}drawOval(t,e,s,i){const n=this.drawColors[0],r=15&n,o=n>>>4&15;if(15===o)return;const a=o-1&3,l=r-1&3,c=s>>>1,h=i>>>1;if(c<=0)return;if(h<=0)return;const d=t+c,u=e+h,p=c*c*2,f=h*h*2;{let t=c,e=0,s=(1-2*c)*h*h,i=c*c,n=f*c,o=0,m=0;for(;n>=o;){if(this.drawPointUnclipped(a,d+t,u+e),this.drawPointUnclipped(a,d+t,u-e),this.drawPointUnclipped(a,d-t,u+e),this.drawPointUnclipped(a,d-t,u-e),0!==r){const s=d-t+1,i=d+t;this.drawHLineUnclipped(l,s,u+e,i),this.drawHLineUnclipped(l,s,u-e,i)}e++,o+=p,m+=i,i+=p,2*m+s>0&&(t--,n-=f,m+=s,s+=f)}}{let t=0,e=h,s=h*h,i=(1-2*h)*c*c,n=0,o=p*h,m=0,y=0;for(;o>=n;)if(this.drawPointUnclipped(a,d+t,u+e),this.drawPointUnclipped(a,d+t,u-e),this.drawPointUnclipped(a,d-t,u+e),this.drawPointUnclipped(a,d-t,u-e),t++,n+=f,m+=s,s+=f,y++,2*m+i>0){if(0!==r){const s=t-y-1,i=d-s,n=d+s+1;this.drawHLineUnclipped(l,i,u+e,n),this.drawHLineUnclipped(l,i,u-e,n)}e--,o-=p,m+=i,i+=p,y=0}}}drawLine(t,e,s,i){const n=15&this.drawColors[0];if(0===n)return;const r=n-1&3;if(e>i){let n=t;t=s,s=n,n=e,e=i,i=n}const o=Math.abs(s-t),a=t<s?1:-1,l=i-e;let c,h=(o>l?o:-l)/2;for(;this.drawPointUnclipped(r,t,e),t!==s||e!==i;)c=h,c>-o&&(h-=l,t+=a),c<l&&(h+=o,e++)}drawText(t,e,s){let i=e;for(let n=0,r=t.length;n<r;++n){const r=t[n];switch(r){case 0:return;case 10:s+=8,i=e;break;default:this.blit(ut,i,s,8,8,0,r-32<<3,8),i+=8}}}blit(t,e,s,i,n,r,o,a,l=!1,c=!1,h=!1,d=!1){const u=this.drawColors[0];let p,f,m,y;d?(c=!c,p=Math.max(0,s)-s,f=Math.max(0,e)-e,m=Math.min(i,rt-s),y=Math.min(n,nt-e)):(p=Math.max(0,e)-e,f=Math.max(0,s)-s,m=Math.min(i,nt-e),y=Math.min(n,rt-s));for(let w=f;w<y;w++)for(let f=p;f<m;f++){const p=e+(d?w:f),m=s+(d?f:w);let y;const b=(o+(h?n-w-1:w))*a+(r+(c?i-f-1:f));if(l){y=t[b>>>2]>>>6-((3&b)<<1)&3}else{y=t[b>>>3]>>>7-(7&b)&1}const g=u>>>(y<<2)&15;0!==g&&this.drawPoint(g-1&3,p,m)}}}const Bt=6409,Dt=3553;class Ft{constructor(t){this.gl=t,this.colorBuffer=new Uint32Array(6400),this.paletteBuffer=new Float32Array(12),this.lastPalette=Array(4),this.paletteLocation=null;const e=new Uint32Array(256);for(let i=0;i<256;++i){const t=i>>6&3,s=i>>4&3,n=i>>2&3,r=3&i;e[i]=t<<30|s<<22|n<<14|r<<6}this.table=e;const s=t.canvas;s.addEventListener("webglcontextlost",(t=>{t.preventDefault()})),s.addEventListener("webglcontextrestored",(()=>{this.initGL()})),this.initGL()}initGL(){const t=this.gl;function e(e,s){const i=t.createShader(e);return t.shaderSource(i,s),t.compileShader(i),i}this.lastPalette=Array(4);const s=e(35633,"\n attribute vec2 pos;\n varying vec2 framebufferCoord;\n\n void main () {\n framebufferCoord = pos*vec2(0.5, -0.5) + 0.5;\n gl_Position = vec4(pos, 0, 1);\n }\n "),i=e(35632,`\n precision mediump float;\n uniform vec3 palette[4];\n uniform sampler2D framebuffer;\n varying vec2 framebufferCoord;\n\n vec3 lookup(float index) {\n vec3 p = palette[0];\n ${Array.from({length:3},((t,e)=>`p = mix(p, palette[${e+1}], step(${((e+1)/4).toFixed(2)}, index));`)).join("\n")}\n return p;\n }\n\n void main () {\n gl_FragColor = vec4(lookup(texture2D(framebuffer, framebufferCoord).r), 1.);\n }\n `),n=t.createProgram();t.attachShader(n,s),t.attachShader(n,i),t.linkProgram(n),t.useProgram(n),this.paletteLocation=t.getUniformLocation(n,"palette"),t.uniform1i(t.getUniformLocation(n,"framebuffer"),0),t.detachShader(n,s),t.deleteShader(s),t.detachShader(n,i),t.deleteShader(i),function(e){const s=t.createTexture();t.activeTexture(e),t.bindTexture(Dt,s),t.texParameteri(Dt,10242,33071),t.texParameteri(Dt,10243,33071),t.texParameteri(Dt,10240,9728),t.texParameteri(Dt,10241,9728)}(33984),t.texImage2D(Dt,0,Bt,nt,rt,0,Bt,5121,null);const r=t.getAttribLocation(n,"pos"),o=t.createBuffer(),a=new Float32Array([-1,-1,-1,1,1,1,1,1,1,-1,-1,-1]);t.bindBuffer(34962,o),t.bufferData(34962,a,35044),t.enableVertexAttribArray(r),t.vertexAttribPointer(r,2,5126,!1,0,0)}composite(t,e){const s=this.gl,i=e.bytes,n=this.colorBuffer,r=this.table,o=this.lastPalette,a=this.paletteBuffer;let l=!1;for(let c=0,h=0;c<4;++c){const e=t[c];l=l||o[c]!==e,a[h++]=(e>>16&255)/255,a[h++]=(e>>8&255)/255,a[h++]=(255&e)/255,o[c]=e}l&&s.uniform3fv(this.paletteLocation,this.paletteBuffer);for(let c=0;c<6400;++c)n[c]=r[i[c]];s.texImage2D(Dt,0,Bt,nt,rt,0,Bt,5121,new Uint8Array(n.buffer)),s.drawArrays(4,0,6)}}class Ht{constructor(t){this.warnedFileSize=!1;const e=document.createElement("canvas");e.width=nt,e.height=rt,this.canvas=e;const s=e.getContext("webgl",{alpha:!1,depth:!1,antialias:!1});if(!s)throw new Error("web-runtime: could not create wegl context");let i;this.compositor=new Ft(s),this.apu=new Rt,this.diskName=t,this.diskBuffer=new ArrayBuffer(ot);try{i=localStorage.getItem(t)}catch(n){}this.diskSize=null!=i?wt(i,new Uint8Array(this.diskBuffer)):0,this.memory=new WebAssembly.Memory({initial:1,maximum:1}),this.data=new DataView(this.memory.buffer),this.framebuffer=new Nt(this.memory.buffer),this.reset(),this.pauseState=0,this.wasmBufferByteLen=0}async init(){await this.apu.init()}setMouse(t,e,s){this.data.setInt16(26,t,!0),this.data.setInt16(28,e,!0),this.data.setUint8(30,s)}setGamepad(t,e){this.data.setUint8(22+t,e)}getSystemFlag(t){return this.data.getUint8(31)&t}unlockAudio(){this.apu.unlockAudio()}pauseAudio(){this.apu.pauseAudio()}reset(t){const e=new Uint32Array(this.memory.buffer);t&&e.fill(0),this.pauseState&=-2,e.set(at,1),this.data.setUint16(20,4611,!0),this.data.setInt16(26,32767,!0),this.data.setInt16(28,32767,!0)}async load(t,e=!0){if(this.wasmBuffer=t,this.wasmBufferByteLen=t.byteLength,t.byteLength>65536&&e)throw new Error("Cart too big!");const s={memory:this.memory,rect:this.framebuffer.drawRect.bind(this.framebuffer),oval:this.framebuffer.drawOval.bind(this.framebuffer),line:this.framebuffer.drawLine.bind(this.framebuffer),hline:this.framebuffer.drawHLine.bind(this.framebuffer),vline:this.framebuffer.drawVLine.bind(this.framebuffer),text:this.text.bind(this),textUtf8:this.textUtf8.bind(this),textUtf16:this.textUtf16.bind(this),blit:this.blit.bind(this),blitSub:this.blitSub.bind(this),tone:this.apu.tone.bind(this.apu),diskr:this.diskr.bind(this),diskw:this.diskw.bind(this),trace:this.trace.bind(this),traceUtf8:this.traceUtf8.bind(this),traceUtf16:this.traceUtf16.bind(this),tracef:this.tracef.bind(this)};await this.safeCall((async()=>{const e=await WebAssembly.instantiate(t,{env:s});this.wasm=e.instance,"function"==typeof this.wasm.exports._start&&this.wasm.exports._start(),"function"==typeof this.wasm.exports._initialize&&this.wasm.exports._initialize()}))}async safeCall(t){if("function"==typeof t)try{await t()}catch(e){if(!(e instanceof WebAssembly.RuntimeError||e instanceof WebAssembly.LinkError||e instanceof WebAssembly.CompileError))throw e;this.blueScreen(e)}}text(t,e,s){const i=new Uint8Array(this.memory.buffer,t);this.framebuffer.drawText(i,e,s)}textUtf8(t,e,s,i){const n=new Uint8Array(this.memory.buffer,t,e);this.framebuffer.drawText(n,s,i)}textUtf16(t,e,s,i){const n=new Uint16Array(this.memory.buffer,t,e>>1);this.framebuffer.drawText(n,s,i)}blit(t,e,s,i,n,r){this.blitSub(t,e,s,i,n,0,0,i,r)}blitSub(t,e,s,i,n,r,o,a,l){const c=new Uint8Array(this.memory.buffer,t),h=1&l,d=2&l,u=4&l,p=8&l;this.framebuffer.blit(c,e,s,i,n,r,o,a,h,d,u,p)}diskr(t,e){const s=Math.min(e,this.diskSize),i=new Uint8Array(this.diskBuffer,0,s);return new Uint8Array(this.memory.buffer,t).set(i),s}diskw(t,e){const s=Math.min(e,ot),i=new Uint8Array(this.memory.buffer,t,s),n=new Uint8Array(this.diskBuffer),r=function(t){const e=t.length,s=e%4,i=s?e+4-s:e;let n="",r=0,o=0;for(;r<i;){const s=r<e?t[r]:0;if(++r,o=256*o+s,r%4==0){let t=52200625;for(;t>=1;){const e=Math.floor(o/t)%85;n+=mt[e],t/=85}o=0}}return n}(i);try{localStorage.setItem(this.diskName,r)}catch(o){}return n.set(i),this.diskSize=s,s}getCString(t){let e="";for(;;){const s=this.data.getUint8(t++);if(0==s)break;e+=String.fromCharCode(s)}return e}print(t,e=!1){e?console.error(t):console.log(t)}trace(t){this.print(this.getCString(t))}traceUtf8(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=(new TextDecoder).decode(s);this.print(i)}traceUtf16(t,e){const s=new Uint8Array(this.memory.buffer,t,e),i=new TextDecoder("utf-16").decode(s);this.print(i)}tracef(t,e){let s,i="";for(;s=this.data.getUint8(t++);)if(37==s)switch(s=this.data.getUint8(t++)){case 37:i+="%";break;case 99:i+=String.fromCharCode(this.data.getInt32(e,!0)),e+=4;break;case 100:case 120:i+=this.data.getInt32(e,!0).toString(100==s?10:16),e+=4;break;case 115:i+=this.getCString(this.data.getUint32(e,!0)),e+=4;break;case 102:i+=this.data.getFloat64(e,!0),e+=8}else i+=String.fromCharCode(s);this.print(i)}start(){this.safeCall(this.wasm.exports.start)}update(){0==this.pauseState&&(this.getSystemFlag(1)||this.framebuffer.clear(),this.safeCall(this.wasm.exports.update))}blueScreen(t){var e;this.pauseState|=1;const s=t=>[...t].map((t=>t.charCodeAt(0))),i=" WASM-4 ",n=8*i.length,r=(160-8*i.length)/2;new Uint32Array(this.memory.buffer).set([1118702,8831084,11184810,16777215],1),this.data.setUint16(20,4611,!0),this.framebuffer.clear(),this.framebuffer.drawHLine(r,19,n),this.data.setUint16(20,4401,!0),this.framebuffer.drawText(s(" WASM-4 "),r,20),this.data.setUint16(20,4611,!0);const o=function(t){let e=t.message;t instanceof WebAssembly.RuntimeError?(t.message.match(/unreachable/)?e="The cartridge has\nreached a code \nsegment marked as\nunreachable.":t.message.match(/out of bounds/)&&(e="The cartridge has\nattempted a memory\naccess that is\nout of bounds."),e+="\n\n\n\n\nHit R to reboot."):t instanceof WebAssembly.LinkError?e="The cartridge has\ntried to import\na missing function.\n\n\n\nSee console for\nmore details.":t instanceof WebAssembly.CompileError&&(e="The cartridge is\ncorrupted.\n\n\n\nSee console for\nmore details.");return e}(t);this.framebuffer.drawText(s(o),9,60),this.composite(),this.print(null!=(e=t.stack)?e:"",!0)}composite(){const t=new Uint32Array(this.memory.buffer,4,16);this.compositor.composite(t,this.framebuffer)}}var jt=Object.defineProperty,zt=Object.getOwnPropertyDescriptor,Vt=(t,e,s,i)=>{for(var n,r=i>1?void 0:i?zt(e,s):e,o=t.length-1;o>=0;o--)(n=t[o])&&(r=(i?n(e,s,r):n(r))||r);return i&&r&&jt(e,s,r),r};class Gt{constructor(){this.gamepad=[0,0,0,0],this.mouseX=0,this.mouseY=0,this.mouseButtons=0}}
/**
* @license
* Copyright 2021 Google LLC
* SPDX-License-Identifier: BSD-3-Clause
*/
function*Wt(t,e){if(void 0!==t){let s=0;for(const i of t)yield e(i,s++)}}t.App=class extends X{constructor(){var t,e;super(),this.hideGamepadOverlay=!1,this.showMenu=!1,this.inputState=new Gt;const s=null!=(e=null==(t=document.getElementById("wasm4-disk-prefix"))?void 0:t.textContent)?e:pt("disk-prefix");this.runtime=new Ht(s+"-disk"),this.init()}async init(){const t=this.runtime;await t.init();const e=t.canvas,s=pt("netplay");s?(this.netplay=this.createNetplay(),this.netplay.join(s)):await t.load(await async function(){var t,e;const s=document.getElementById("wasm4-cart-json");if(s){const{WASM4_CART:e,WASM4_CART_SIZE:i}=JSON.parse(null!=(t=s.textContent)?t:""),n=new Uint8Array(i);return wt(e,n),n}{const t=null!=(e=pt("url"))?e:"cart.wasm",s=await fetch(t);return new Uint8Array(await s.arrayBuffer())}}());let i={toggleDevtools(){},updateCompleted(...t){}};this.netplay||t.start();let n=null;const r=t=>{if(document.body.style.cursor="",t.isPrimary){const s=e.getBoundingClientRect(),i=this.inputState;i.mouseX=Math.fround(nt*(t.clientX-s.left)/s.width),i.mouseY=Math.fround(rt*(t.clientY-s.top)/s.height),i.mouseButtons=7&t.buttons}};window.addEventListener("pointerdown",r),window.addEventListener("pointerup",r),window.addEventListener("pointermove",r),e.addEventListener("contextmenu",(t=>{t.preventDefault()}));const o={2:this.saveGameState.bind(this),4:this.loadGameState.bind(this),r:this.resetCart.bind(this),R:this.resetCart.bind(this),F8:i.toggleDevtools,F9:function(){t.composite(),e.toBlob((t=>{const e=URL.createObjectURL(t),s=document.createElement("a");s.href=e,s.download="wasm4-screenshot.png",s.click(),URL.revokeObjectURL(e)}))},F10:function(){if(null!=n)return;const t="video/webm",s=e.captureStream();n=new MediaRecorder(s,{mimeType:t,videoBitsPerSecond:25e6});const i=[];n.ondataavailable=t=>{i.push(t.data)},n.onstop=()=>{const e=new Blob(i,{type:t}),s=URL.createObjectURL(e),n=document.createElement("a");n.href=s,n.download="wasm4-animation.webm",n.click(),URL.revokeObjectURL(s)},n.start(),setTimeout((()=>{n&&(n.requestData(),n.stop(),n=null)}),4e3)},F11:ft,Enter:this.onMenuButtonPressed.bind(this)},a=e=>{if(e.ctrlKey||e.altKey)return;if(e.srcElement instanceof HTMLElement&&"INPUT"==e.srcElement.tagName)return;const s="keydown"==e.type;if(t.unlockAudio(),document.body.style.cursor="none",s){const t=o[e.key];if(t)return t(),void e.preventDefault()}let i=0,n=0;switch(e.code){case"KeyX":case"KeyV":case"Space":case"Period":n=1;break;case"KeyZ":case"KeyC":case"Comma":n=2;break;case"ArrowUp":n=ht;break;case"ArrowDown":n=dt;break;case"ArrowLeft":n=lt;break;case"ArrowRight":n=ct;break;case"KeyA":case"KeyQ":i=1,n=1;break;case"ShiftLeft":case"Tab":i=1,n=2;break;case"KeyE":i=1,n=ht;break;case"KeyD":i=1,n=dt;break;case"KeyS":i=1,n=lt;break;case"KeyF":i=1,n=ct;break;case"NumpadMultiply":case"NumpadDecimal":i=2,n=1;break;case"NumpadSubtract":case"NumpadEnter":i=2,n=2;break;case"Numpad8":i=2,n=ht;break;case"Numpad5":i=2,n=dt;break;case"Numpad4":i=2,n=lt;break;case"Numpad6":i=2,n=ct}if(0!=n){e.preventDefault();const t=this.inputState.gamepad;s?t[i]|=n:t[i]&=~n}};window.addEventListener("keydown",a),window.addEventListener("keyup",a),top&&top!=window&&(top.addEventListener("keydown",a),top.addEventListener("keyup",a));const l=()=>{if(navigator.getGamepads)for(const t of navigator.getGamepads()){if(null==t||"standard"!=t.mapping)continue;const e=t.buttons,s=t.axes;let i=0;(e[12].pressed||s[1]<-.5)&&(i|=ht),(e[13].pressed||s[1]>.5)&&(i|=dt),(e[14].pressed||s[0]<-.5)&&(i|=lt),(e[15].pressed||s[0]>.5)&&(i|=ct),(e[0].pressed||e[3].pressed||e[5].pressed||e[7].pressed)&&(i|=1),(e[1].pressed||e[2].pressed||e[4].pressed||e[6].pressed)&&(i|=2),e[9].pressed&&(this.showMenu=!0),this.inputState.gamepad[t.index%4]=i}};let c=!1;const h=()=>{if("hidden"==document.visibilityState&&!this.netplay)return;l();let e,s=this.inputState;if(null!=this.menuOverlay){if(this.menuOverlay.applyInput(),!this.netplay)return;s=new Gt}if(this.netplay)e=this.netplay.update(s.gamepad[0]);else{for(let e=0;e<4;++e)t.setGamepad(e,s.gamepad[e]);t.setMouse(s.mouseX,s.mouseY,s.mouseButtons),t.update(),e=!0}e&&!c&&(c=!0,requestAnimationFrame((()=>{c=!1,t.composite()}))),this.hideGamepadOverlay=!!t.getSystemFlag(2)};performance.now();const d=()=>{const t=performance.now();h();const e=performance.now()-t,s=Math.round(1e3/60-e);setTimeout(d,s)};d()}onPointerUp(t){"touch"==t.pointerType&&ft(),this.runtime.unlockAudio()}onMenuButtonPressed(){this.showMenu?this.inputState.gamepad[0]|=1:this.showMenu=!0}closeMenu(){if(this.showMenu){this.showMenu=!1;for(let t=0;t<4;++t)this.inputState.gamepad[t]=0}}saveGameState(){let t=this.savedGameState;null==t&&(t=this.savedGameState=new bt),t.read(this.runtime)}loadGameState(){if(this.netplay)return void this.notifications.show("State loading disabled during netplay");const t=this.savedGameState;null!=t&&t.write(this.runtime)}copyNetplayLink(){this.netplay||(this.netplay=this.createNetplay(),this.netplay.host()),async function(t){try{await navigator.clipboard.writeText(t)}catch{const e=document.createElement("textarea");return e.value=t,e.style.position="fixed",e.style.left="-999999px",e.style.top="-999999px",document.body.appendChild(e),e.focus(),e.select(),new Promise(((t,s)=>{document.execCommand("copy")?t():s(new Error("Failed to copy to clipboard")),e.remove()}))}}(this.netplay.getInviteLink()),this.notifications.show("Netplay link copied to clipboard")}async resetCart(t){this.netplay?this.notifications.show("Reset disabled during netplay"):(t||(t=this.runtime.wasmBuffer),this.runtime.reset(!0),this.runtime.pauseState|=2,await this.runtime.load(t),this.runtime.start(),this.runtime.pauseState&=-3)}createNetplay(){const t=new Lt(this.runtime);return t.onstart=t=>this.notifications.show(`Joined as player ${t+1}`),t.onjoin=t=>this.notifications.show(`Player ${t+1} joined`),t.onleave=t=>this.notifications.show(`Player ${t+1} left`),t}getNetplaySummary(){return this.netplay?this.netplay.getSummary():[]}render(){return M`<div class="content" @pointerup="${this.onPointerUp}">${this.showMenu?M`<wasm4-menu-overlay .app="${this}">`:""}<wasm4-notifications><\u002Fwasm4-notifications>${this.runtime.canvas}<\u002Fdiv>${this.hideGamepadOverlay?"":M`<wasm4-virtual-gamepad .app="${this}">`}`}},t.App.styles=r`:host{width:100%;height:100%;display:flex;align-items:center;justify-content:center;touch-action:none;user-select:none;-webkit-user-select:none;-webkit-tap-highlight-color:transparent;background:#202020}.content{width:100vmin;height:100vmin;overflow:hidden}@media (pointer:coarse) and (max-aspect-ratio:2/3){.content{position:absolute;top:calc((100% - 220px - 100vmin)/ 2)}}.content canvas{width:100%;height:100%;image-rendering:pixelated;image-rendering:crisp-edges}`,Vt([et()],t.App.prototype,"hideGamepadOverlay",2),Vt([et()],t.App.prototype,"showMenu",2),Vt([st("wasm4-menu-overlay")],t.App.prototype,"menuOverlay",2),Vt([st("wasm4-notifications")],t.App.prototype,"notifications",2),t.App=Vt([Q("wasm4-app")],t.App);var qt=Object.defineProperty,Jt=Object.getOwnPropertyDescriptor,Yt=(t,e,s,i)=>{for(var n,r=i>1?void 0:i?Jt(e,s):e,o=t.length-1;o>=0;o--)(n=t[o])&&(r=(i?n(e,s,r):n(r))||r);return i&&r&&qt(e,s,r),r};const Kt=["CONTINUE","SAVE STATE","LOAD STATE","COPY NETPLAY URL","RESET CART"];t.MenuOverlay=class extends X{constructor(){super(),this.lastGamepad=0,this.selectedIdx=0,this.netplaySummary=[]}applyInput(){let t=0;for(const s of this.app.inputState.gamepad)t|=s;const e=t&(t^this.lastGamepad);if(this.lastGamepad=t,3&e){switch(this.selectedIdx){case 0:break;case 1:this.app.saveGameState();break;case 2:this.app.loadGameState();break;case 3:this.app.copyNetplayLink();break;case 4:this.app.resetCart()}this.app.closeMenu()}e&dt&&this.selectedIdx++,e&ht&&this.selectedIdx--,this.selectedIdx=(this.selectedIdx+Kt.length)%Kt.length}connectedCallback(){super.connectedCallback();const t=()=>{this.netplaySummary=this.app.getNetplaySummary()};t(),this.netplayPollInterval=window.setInterval(t,1e3)}disconnectedCallback(){window.clearInterval(this.netplayPollInterval),super.disconnectedCallback()}render(){return M`<div class="menu"><ul>${Wt(Kt,((t,e)=>M`<li class="${this.selectedIdx==e?"selected":""}" }>${t}<\u002Fli>`))}<\u002Ful><\u002Fdiv><div class="netplay-summary">${Wt(this.netplaySummary,(t=>{const e=t.ping<100?"good":t.ping<200?"ok":"bad",s=t.ping<0?M`<span class="ping-you">YOU<\u002Fspan>`:M`<span class="ping-${e}">${Math.ceil(t.ping)}ms<\u002Fspan>`;return M`<div>PLAYER ${t.playerIdx>=0?t.playerIdx+1:"?"} ${s}<\u002Fdiv>`}))}<\u002Fdiv>`}},t.MenuOverlay.styles=r`:host{width:100vmin;height:100vmin;position:absolute;color:#a0a0a0;font:16px wasm4-font;display:flex;align-items:center;justify-content:center;flex-direction:column;background:rgba(0,0,0,.85)}.menu{border:2px solid #f0f0f0;padding:0 1em 0 1em;line-height:2em}.netplay-summary{margin-top:2em;line-height:1.5em}.ping-you{color:#f0f0f0}.ping-good{color:green}.ping-ok{color:#ff0}.ping-bad{color:red}ul{list-style:none;padding-left:0;padding-right:1em}li::before{content:"\\00a0\\00a0"}li.selected::before{content:"> "}li.selected{color:#fff}`,Yt([et()],t.MenuOverlay.prototype,"selectedIdx",2),Yt([et()],t.MenuOverlay.prototype,"netplaySummary",2),t.MenuOverlay=Yt([Q("wasm4-menu-overlay")],t.MenuOverlay);var Xt=Object.defineProperty,Zt=Object.getOwnPropertyDescriptor,Qt=(t,e,s,i)=>{for(var n,r=i>1?void 0:i?Zt(e,s):e,o=t.length-1;o>=0;o--)(n=t[o])&&(r=(i?n(e,s,r):n(r))||r);return i&&r&&Xt(e,s,r),r};function te(t,e,s){t&&(s?t.classList.add(e):t.classList.remove(e))}t.VirtualGamepad=class extends X{constructor(){super(...arguments),this.touchEvents=new Map,this.onPointerEvent=t=>{if("touch"!=t.pointerType)return;switch(t.preventDefault(),t.type){case"pointerdown":case"pointermove":this.touchEvents.set(t.pointerId,t);break;default:this.touchEvents.delete(t.pointerId)}let e=0;if(this.touchEvents.size){const t=100,s=10,i=50,n=.6,r=this.dpad.getBoundingClientRect(),o=r.x+r.width/2,a=r.y+r.height/2,l=this.action1.getBoundingClientRect(),c=l.x+l.width/2,h=l.y+l.height/2,d=this.action2.getBoundingClientRect(),u=d.x+d.width/2,p=d.y+d.height/2;let f,m,y,w,b;for(const g of this.touchEvents.values())f=g.clientX-o,m=g.clientY-a,y=Math.sqrt(f*f+m*m),y<t&&y>s&&(w=f/y,b=m/y,-w>n?e|=lt:w>n&&(e|=ct),-b>n?e|=ht:b>n&&(e|=dt)),f=g.clientX-c,m=g.clientY-h,f*f+m*m<i*i&&(e|=1),f=g.clientX-u,m=g.clientY-p,f*f+m*m<i*i&&(e|=2)}te(this.action1,"pressed",1&e),te(this.action2,"pressed",2&e),te(this.dpad,"pressed-left",e<),te(this.dpad,"pressed-right",e&ct),te(this.dpad,"pressed-up",e&ht),te(this.dpad,"pressed-down",e&dt),this.app.inputState.gamepad[0]=e}}connectedCallback(){super.connectedCallback(),window.addEventListener("pointercancel",this.onPointerEvent),window.addEventListener("pointerdown",this.onPointerEvent),window.addEventListener("pointermove",this.onPointerEvent),window.addEventListener("pointerup",this.onPointerEvent)}disconnectedCallback(){window.removeEventListener("pointercancel",this.onPointerEvent),window.removeEventListener("pointerdown",this.onPointerEvent),window.removeEventListener("pointermove",this.onPointerEvent),window.removeEventListener("pointerup",this.onPointerEvent),super.disconnectedCallback()}onMenuButtonPressed(t){this.app.onMenuButtonPressed(),t.stopImmediatePropagation()}render(){return M`<div class="menu" @pointerdown="${this.onMenuButtonPressed}"><\u002Fdiv><div class="dpad"><\u002Fdiv><div class="action1">X<\u002Fdiv><div class="action2">Z<\u002Fdiv>`}},t.VirtualGamepad.styles=r`:host{display:none}@media (pointer:coarse){:host{display:inherit}}.dpad{pointer-events:none;position:absolute;width:39px;height:120px;left:69px;bottom:30px;background:#444;border-radius:9px}.dpad:before{position:absolute;width:120px;height:39px;top:39px;left:-39px;background:#444;border-radius:9px;content:""}.dpad:after{position:absolute;height:39px;width:39px;top:39px;border-radius:100%;background:#333;content:""}.dpad.pressed-left:before{border-left:4px solid #a93671;width:116px}.dpad.pressed-right:before{border-right:4px solid #a93671;width:116px}.dpad.pressed-up{border-top:4px solid #a93671}.dpad.pressed-down{border-bottom:4px solid #a93671;height:116px}.action1{right:80px;bottom:30px}.action2{right:30px;bottom:90px}.action1,.action2{pointer-events:none;position:absolute;width:60px;height:60px;border:4px solid #a93671;border-radius:50px;color:#a93671;font:24px wasm4-font;text-align:center;line-height:60px}.action1.pressed,.action2.pressed{background:#a93671}.menu{position:absolute;background:#444;width:60px;height:20px;bottom:200px;right:35px;border-radius:10px}`,Qt([st(".dpad")],t.VirtualGamepad.prototype,"dpad",2),Qt([st(".action1")],t.VirtualGamepad.prototype,"action1",2),Qt([st(".action2")],t.VirtualGamepad.prototype,"action2",2),t.VirtualGamepad=Qt([Q("wasm4-virtual-gamepad")],t.VirtualGamepad);var ee=Object.defineProperty,se=Object.getOwnPropertyDescriptor,ie=(t,e,s,i)=>{for(var n,r=i>1?void 0:i?se(e,s):e,o=t.length-1;o>=0;o--)(n=t[o])&&(r=(i?n(e,s,r):n(r))||r);return i&&r&&ee(e,s,r),r};return t.Notifications=class extends X{constructor(){super(...arguments),this.notifications=[]}show(t){this.notifications=this.notifications.concat([t]),setTimeout((()=>{this.notifications=this.notifications.slice(1)}),5e3)}render(){return this.notifications.map((t=>M`<div class="notification">${t}<\u002Fdiv>`))}},t.Notifications.styles=r`:host{width:100vmin;height:100vmin;position:absolute;pointer-events:none;color:#fff;font:24px wasm4-font;display:flex;flex-direction:column}.notification{background:rgba(0,0,0,.85);padding:.5em;animation:appear .5s ease-out}@keyframes appear{from{padding-left:2em;opacity:0}to{opacity:1;padding-left:.5em}}`,ie([et()],t.Notifications.prototype,"notifications",2),t.Notifications=ie([Q("wasm4-notifications")],t.Notifications),Object.defineProperty(t,"__esModule",{value:!0}),t[Symbol.toStringTag]="Module",t}({});
</script>
<wasm4-app></wasm4-app>
</body>
</html>