From 6d93ad6203345223687c632e99a054c061886754 Mon Sep 17 00:00:00 2001 From: Caleb Fultz Date: Wed, 21 Aug 2024 18:03:33 -0400 Subject: [PATCH] refactor --- assets/cash-money.mp3 | Bin 0 -> 56160 bytes assets/icon.png | Bin 0 -> 70149 bytes css/base.css | 89 +++++++++++++++++++++++++++++++++++ css/components.css | 106 ++++++++++++++++++++++++++++++++++++++++++ css/themes.css | 102 ++++++++++++++++++++++++++++++++++++++++ index.html | 63 ++++++++++++++++++------- js/api.js | 37 +++++++++++++++ js/card.js | 68 +++++++++++++++++++++++++++ js/csv.js | 44 ++++++++++++++++++ js/main.js | 93 ++++++++++++++++++++++++++++++++++++ js/menu.js | 4 ++ js/popup.js | 40 ++++++++++++++++ js/randomWords.js | 32 +++++++++++++ js/storage.js | 24 ++++++++++ js/sw.js | 54 +++++++++++++++++++++ js/theme.js | 19 ++++++++ manifest.json | 4 +- offline.html | 7 +-- 18 files changed, 762 insertions(+), 24 deletions(-) create mode 100644 assets/cash-money.mp3 create mode 100644 assets/icon.png create mode 100644 css/base.css create mode 100644 css/components.css create mode 100644 css/themes.css create mode 100644 js/api.js create mode 100644 js/card.js create mode 100644 js/csv.js create mode 100644 js/main.js create mode 100644 js/menu.js create mode 100644 js/popup.js create mode 100644 js/randomWords.js create mode 100644 js/storage.js create mode 100644 js/sw.js create mode 100644 js/theme.js diff --git a/assets/cash-money.mp3 b/assets/cash-money.mp3 new file mode 100644 index 0000000000000000000000000000000000000000..04abc8e6cc1a88948f925dc7885987c377f29fb4 GIT binary patch literal 56160 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
`|#yrTrd;gfy zyRx=q!|T(#z8~#&X9-PZ2uwcJ_N()$^4&
PDz#RFQe@(+aJ)u&d9>sCl3Ir*mh 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⁢S8asJB4ky{dWQ6s`>A= z&6INDsgJB<$bvT+@PlF8xdI_YaGc{)a0(akB3we;SB3i`K_{3fI@Gcban4pyS{mWy z>Ho4tXEkLP5gS#h>#|bT&H2AAKA?B$klk<%Euh&hX<5+Ul!F;pk=&1UGVxX#9GAr z?DsnB=^iuXo%rv&T;$k-+Ti-WzR)-;UOshGc>{f$Jf>eznsgqyP>q(hEs~YXRO+F; z$S2ULw12{vqg@Hf*|}B~0jN^QKtvm>=nPUWn7{wnj-b>41V(Pd`uyG?LMg3D4-D{= zRNhAoDp7aS*u64->OQORH@(!_I`9c<`W=bsh z)T>ezITvDm=^*`K(q{xhl3s z@J=bZPT)G{Y}ef|EZ=f8ZRwo+r41j_T$oVnL0x9Dz+gXq-4azlmiUHK$s70`y}dB` zk+IxWQO~w%k=j$9bQ)`4v4kF?3TX)6yC!xQ3h+wE^w6g?XM6^(6PY#N}LCA#}z8d7T2KrG6q5zswKJs#dn`y zNDXZ=43n(FD+}rPTAu40_nGb4*p~UB1Qp|0 zc613Ux7QR&?EKtD7Povplg6zbF<{R^8F_-<-Qb;et?Pg2GyEaS0FO>2FPl`5j_t0h zo0&GVjiaUS%_@PZUq|hqNILzUQ%op|u4LaAA3VKPk=Z~yAL2Sp8gG)RYi`aBhwswr z`FT7rXQ7eJ*QQceJnihVJe5?_wBZ2HzH;zLocZeXaoy0MYiMkReheSCrgC^SI^qE@NY1z2+=4krvdIpy8TWwZObrQQCfo0Jj#+k7{C`wCsP76{R9G0Ps z;$Hl;qOrJo9oNt$lJN7#ulOaQ`gGK&6uLSz8btCKWWUs?3^w*g3^Q05|2*GT!_ic^ ziMRRmJNNuE4QQ6ag(1w&Gqos_#yrkIC}r%=eH{D$y#N>o<};T?`>zQZLTgPV*@z+H z@`I@lJtu@-2R^C*r zSO_%TsRVp&AAeHWTIxmz)JWUfcvkfKLFz(zO{!?S8V5s~Zw_qazr5?$t`mu!&qtUT z3whzx_Y8?|-$Hh-sIPl}(?K=8eh92jTX_APjR6qLHkUZ%&4UwGvh_4)d`xNc4 zv5~K<`|sgCm%ko^eh1oy8ITn2d9*4!(W3khy+Q55#!oTVYBQ3&u?WxI|KXHd z5u=NFf{1{sx}^_>s)ACN4L_IZdv99W+}~erK5uEin^`>q-@y{w5lEWN0kf%KTX9{{ z?>l8z)*`xMOKy|UHeTO*;4l!>igDJ^!bVQI-ra)b)x)>sCbni=jCPEDO!keL60Q8b zfS#t;a~H2=3niC@1r13!N#8Rl6z-n@mFH{?Or zX-rQYVXZ0qsaDqcZJ5WX(f?%%Z?0(axyp-ZZ?Kf=QON-PN>sE}T}(cN4R4HZDuW+4 zgbUy9u51%eVSU9t4?ioy8*Ayp+XBK8Zrh-Xn7x=B`Uk6xxHn-$l*H%4VIBTwyi6(op{V*P97qpv{~o@d8nh6Ex=5T3cT=@!@t%^in~`mv53 zmksjwZJ)UqSb5Jxy)Su(Cpx!u6J_SnIWhZe^B3Hn0_*O|{bYRJ7dE`F7WggOOm_g~ zue6Q^&1*J|OKsuudsL`dKcU!$?g2=gIvAd9x#0=PwCL`CIoCWT>Et`U66yMU9OG3) z0y4~*&B)-N$GMNWwvG&X)2*t<`%Zi2*;rxOSr>o0+-6Fp`^POWCx}1kodPi6H-B!Z18}U`Cz~G zjYX`Y0r0lmE?>wk1?ft!Epb2rU!L4j9B#S?(4mmv z)=uBda_ai%pJY96RH|R+Y+@Vfu4KN*YzntX6z1SFCOs9e1RokZe1fPVj~kv0sA-I! z%fMSBIZ&5rqC(qdXJfcV@_yA%bEZ2ei_cNbtV8wZYUb=FvR#IM@bwT4EK3KF#gryX zmnv5-QORMH&2XUy{2(m{4KEMRS+kj|cXE>=*#48dH0L%5ZO7!AEH!kn+-ub5I?I?6U{x=vj7kXcM>wN*uOOIciC*+uOUHgLORh^RLH z<+t11FoHHZvET$O$(Nio4K>@GsUR+JVa_~%c>QzKtacDzfklqbZx21I&X8tFkJ&jN zw^F-$|514C2*=tD-4tQN(!k#Kyq>l1r4QMhQ5;@cM%w%19!S$w{fg$H;?E{i#}B z7xbMM-sUg5IV$Jr?4|0gw0{Xs7sMDSGVU5IVywNhD|)AiPg-GvDcfv)BO-8UaCT1A zZjSKqd)@Ia(Qb>QSoZbqk z6df_dMbZ#=g>^aaGMVyGCrte=__7ci@p z5+)ZS_O;{F)BfD61p^cn0NGI$AU&+eXqCy5U>Zj`O zOD;K&P%b|32LAc`9&qa|QP^EVDL!2JjObAV?Cfkp)0Z)P7Qr`mW8DpD->7-S1M1Sm zV{6L@6>8@=2Upy2ul6<@7ze9Fs1vJT8@Z;L6gip2*$M6GkrK)7_y+7<%WxN;7d}0C zxq3SBzoau}?myNxALHeRF~*O1y@1^PUz;9Q_7Q1q(=-y(Z5jR)v#Z;->|AW{hj^W+ zKX4J!H5n}TdC8}n3{` zZ1(3>_HLo?Y&?D0=gG~_P1|fH!3`Nv@U1E#3`XEUCq$N_gHH~j!J;#QOXZZdip*8F z$WUw3#3+F-6)vMD6tIzJQCgTw(@$!wBLzcty4$_VA2bMC$VI?mal2W>s$uiKZ3-yH z+?J?NB3^wv`s!V^!@g@iQ75t9p+P@rSjSgWH9#mhsVrZf8GDJ;>5utFulJ} zIvnQt-<1YhDmvuT=mH>1YK;T>I2nyfVVOEpiIVtF@v>AXvEcO3)(0&8S#DEQ;27^* zNiSKmkgs0eg>u#m<@Y?Znn4R>J6DL^_+f1RV8JslOu5~lZzU zZGBCHZpJ||wT{vXHp!uqvg`1+8Nsxti(M6KHlA?9h}Bf;Q0eqkJzVasg9r*vG}Otl zviblBe_fi>!PiIbM%8ermJKqcC94v)q4}NWiT>Wc$ut~+cUQyX&w;y=)f=n&;lD+J zDe81)j*cWld{9l!2=_kJ=R#t|Fm=IhZq0-Sf{In?8yAlX2V$tK0vw~ys{jO8>z79b zr|X#qtwe=qutHxt6a0p%F*7kJiwok77-$UC4s@3)$xcLm4PCnv_l*fr4Q4H8ZL(>y zjKUI5>?Q~3aPTGce^tOyo}JxR9b?PK2{`qG-z%p1<9cbv@q+?kT#*V{_0Es)(C(QR zczbTB(xA_N3^f}(OkklBhpc`hrhT-y@@oZyL<%O-1aDbVj8AfV{tYpGM&SSQlGX9> z6j=22ujq@PB4O-$mk3mz0|BqMQ7E$IGdu>Mb_zN*^*EpZGwYZoREX#=0G4d1=z=}Z z+V*w{W+rHx5UrO}>O~o?|Hx{Ub5EKn)6Fxjm8ir{I@SuTvR!kpuTre?Jy>^IHe=B0B=n_1L`p5ZQfB2*Dc!$Ytv=*2D|*AlIl#dDiY zwW2E{SX9j@a+y5JCMe9q=Zdou*(TbK@~ji}J#02_KA0z==@3|O&-eAR=@#tOj2TQX z+wpiG%BPHr36=UMTjp|3JL2OI@`?>9Jq`gDo+37>5TW4)9^^!g0#wCa53f!8 z?$-0}yAoA`E)m{WB~WfpD3X3e)&~EtK26qF#G}HxopIjd%=eVc!tgk&$N}Re#*M_&%BG=t6MPrwGf?Rc3qNIKQMx^(zA!qzwA8NeNL2w|? zo7cj`tfISbzZr0jpHE%mEPYY7jO)m_*GN-Bi0t_Pop_tvMVgWk&-&M`tM;6Y;- z3|$kg>o-j-Jqm0s`@9<)Iy+}yUtzZW{ypGFAro2H+CtD_t?OO~CZW!m7tHRk06PNB zBW7Ebh;?G0WW{vhyla8pe4d;98r05o)G-azq?nfbtmK$%bGkLNMbmy_y=s-}NWZ&e zDyw3ei8B_^?_huVH_CrO{=#oDeKJQC#OH958NX;a+jC6i~Gt2H{UL=NsdPBT#=+ z(-jyD-lKLt0vv^W7@FUnP*4v4Z*@MqRFU`Hm{zh@0OWG02+}e#(fg?3v!j;s=s!1a zwFweX(GNJstnQnzFD&Ae*UPfnWR-~D6WX$8uyBg3zocIJN#0=t!9I+xjo1fftJ$DK zwVRdfDrbr4_p{+|g!j7cC#vY(mON_Q&T%2>#r2~QA?c6U<>7q`p!P}(t5~^=hC72V zJ*BHCe=dtXBhS%FstL=OKY-ZF61v zzS+IspyFx!poU6Ly{U=#JD8_OaG(kZ8C|3W=kXxF22zodcub5&ZL3u;gL>Bv#-`}K zr!{tbV?@5DbeVk2ksb0I>&B=w*YOF%tZ=4JDQX2zU!Mhri*5UHq${5 z*+pyBU+I)`R0n?DGq-YoTvq++Vh9PI-_K2yvVwAz;}eo20W$bK4}BE=4xN()8-=hI z15x6Wc=a!(3<~}R1YIC9*14n_eN zgktUEQILaCn4Iy4c^BzU#PL4wG>&_H7-{iVkw!EWF35CLb5`z#Ne$>~)hlwT#QFs5 zwZzFkTFDV@PZ*_~tQ8|-Zxv&7=G(m)<9L}d66NQcvzV_tMc%(T`t6#6{5=+*a`n@8 z^}Um~|MZ#X7@BUys`|1I=Gn!Xmwy=2U97_*_u20|V1appI_7xLLVK_p-rnbqYr)DW znKMx3$-ap;XWe$P_{Yc)`;fpMA4kDHql(;bxJPXSM}fe_^F`N-2+%TTw)wBz-!`=n zN_x3{*Wg$%8?;4=3|#wHjgq0)c*jMug>PLpX^x;1Z z!5sXelGQ!>YDVbXpfd)H3!lJ&v&^wF_lU#8a*o4H_fM)GXhq+2F^QKua$!>H#Z|;>y&bV@RXbdghfamFmNPSIn4H50MkvjsOUj$4dJq+*m3~sr{-5ChP1Q z)+`@+Q&GB^VibMWw3j!-y!gd#aH!>XW>Lw$dv>rrRI(8!j#^Gz64JQ3bMX> zJyv^c5w~&vZWTXW5q1~8B<6We`?2WubxGS*4*$640|!vlNoUU9L`x(jry|&RNca{o z>qnjw5R?;V+=P@wRoHcv84%eMgxba<5HeqlQNxyJG#iQm2^lyAK(Yd#d zlOI@rr3TI$o2u~!>eDOBiA_uSuiNDY??B8czF-P@ z8sVqNMh0-mNF9T>HD8EX{G7m`i=LwTA?jup6!F?9*Y|m>bxF3L&f^a@>D7Cf0W3N` z>_uT0@=De*4k*yB&Vb$fL8HP}By#d~Fo9QK?E{KX2}<}B2}0#TUpU=h;>SM}1;u5< zXIR48f@x<$^T)A52WqYIv{|HNBQ(L4VE~rT>m2iUG40!CUo)TIga-ewrZ3UM(TT_* zN=;kk4R0vq>u$z(@#oCHi&4t1Sh^Udl+O&Bot!&o3aUCaVj-Fv;zLsllwH79ttz zpFZcKN^jhg=E<~#p%r+Wh!%J^Dpx4nJ{3Bn8?DeY4wFC2$>Uh#YT`(uhKbdD{bL@& z@fI{WsG)QD@HIi}xZtRAI5?>zTcYH!CSv}#~SKvG$77!VW3%g{1bL13?2v{dJV$yUpUIiG8O_1?5 z4ZH{`+jmGn70jS9=8=C^oHXiob62ZGbrz{sa63L7m65C`zfhsiWgdtUZfRC8@3{z% zG=Q;Ef=T$ZD0XC*-({tQNJjWTlSX5z)i{%vu6?uaFByP?v%G$+I;H; zd~)BNjQr3j>i)>-dAf=>M`fuYVFbJNoBo8P5rqkGz4AnX0tzbp)yZ!0xg+u>*;h z%qhSNNgq40hYMEhw-;A*N%Z=)FimYojn!T4`(X9~k7WY{Fj$8IxC;O~Y zoWs+JUfifUT}Jej%Vif0Qn_@Db4@6c?@xWj%7WkjDl~uYxr54^sKR7i=oHdFH8H&| zS#FLXEerkd9C5%aHHZ9|@;wXx_B|ll87Pebla51s+T*@@AnjljLf#8o`~KD$TA8_q z>eq6kx+710nYBZ(p1k3Ni^@Zf3P3H{{m9lPf zZyC2;vNw>qRP*o-%qf0KhfkqvbLY_#EjW|i_+uF`H@eM{MU;6uLs(MyXD%)aNK(bX zD_DF}s)yxG)*}Ei>1C!^(us=_%1AbnwkEdN<>WRAzFybtL0Np;8AW}+lXixq&F=1RMjnR7iJ!6orI zrBbN0nMrIl04ySSuxhnO?w8(u%A&rycW+f_VX@SFNn#wic#HTdTR+1@Xd z)Bhlg<$S#>IOknw*e9L)FE6yutB^ObYPq_`a4Y?9)|j-s z4@)nGnPGS|B8Rz$zR;>`;+On3BZvX~$tN|_D0|xwi7@9{+NxydkaIiXUH8s1_R%2qwX-2UVFUZ|+LyOu zfHS97r-g@yw^woeRag_m`bcv`ns?=-xoH50>Rne~llEO>le$D#Zi@!~ERX549`w}% zZDtrlG6LemFVO{BBrZ}32-cCO5jd`?l@)g4C{0_F$I^63XwtHAxY_a}o;BUG#;vsx zy|`9xlGABI{+pNhpq+gkzZyFE*T>`AKvcMz`Ku&YQ^E}S9O=@z2fJwtJsM;BLoYdT z!i?4aphyNB?Hp8R9e|9vESmqg_q$<16>iO(DwT}W=;A-`DI^KqNZ%^uc4(D8=Ukfp zPy7QMjWSKarvj?Le<2b*PlXgS@mDe@9zC8T<>=TUo~iP3A+U0yt^A>G5T#r;^$|;` zw1dhztc#C5K-mQAtGqo0G3sPJ!yY0xHd#L zVn=Xtgi62bj2C*5j}sw5|2HV*_7a-Y6-Hr&n4fC!OlqXG5#WoktCGb+xaOcS(G-M^ zehD#aHe+Mb-+ciPG0UNz^XQr4L#*X%ZnCC)!Ymz6gJ?#&2FG(uvl41EZ{eXv zu;!qnhp2p6I;G9n;+Pfl4@Q5;GR%(8gR&94`8nylgFVx_lZ-tv;r}Z7tdb<4UK0vE z(QbqsOj@dBdD5^REYfsQ*(8@-hAifW*0mDtYO~hS+^u3KbYsA0Y+=7g#H30Q6sBds zS)=~0An%3iUeQCo&lzuQ=io1 zGM3&7rK7iIjc6pGge|9XtF^2*n6?J}C$G+uHIpRm8e;-QJ5n>3_xmMU;DO>mv-Mu- zwzCssrv|;U@nzH9K9{YRvZ-T>tVj^?+VX_e*i08VFb5}8no{x~a{K@91z=;}*Jq*n z#ob|Tn*ZWDv2Gh3tKPOuT~IStR%aSYOshZ(DNd479;+yU%238~fIh5UDMgD}%7G+3 zW_#bJvDik%5z5O6We(GAB>o`iCbK7j(cIJdXTOT&+d(1a;UnqcR^xHRNaOZ4^+lWO zV8KNk*o6{;A1-Q09|LKy`OBEc)G~cDEH=!KKEczSW?0dw5Tb@;7(6Hd)+Q&Ov$;os zb|nuf3M2#>m25^k9@u(h+8&{p){SBlr{Kv~NFgv#)96bTg_ja6=qx)Gtzeegs$0nU z6{CsuErk@?n{mvlrpEEN?bB@^FFne0l|-fR&UNM8%#JQf=C|@7w2_FcpQ0riVQg*L zFZ0vyb_{3k>))CraSZNW<3e1W{A=%OU03+W1ZTRFV_9yR&KLNx?-m5Cd0U*|n~-Db z%?XJ0iEPQOB!^y(u!G(=rI7o!56!8-Yfh%Y8aL)!l1bWwNp4 zQZW>h_y$dE__|HtkOwF*?<%WbQAoI~f(?5)jnag3vV>}eQl8Cg3J>~rUKa}5myMej z-`@AOqi4wJVj(6_()Ynw*g5FYaxz>F3W51|`9QK=P4&f8Ry)j#S~BCeIhl0rJC^>A zDO;WaL!HS1DW)_7G)QB1${25EUX5OwY3tFM^(B$o5G?Bn7m`V}1 z!p9j1y)KEe0oo7-4MK=C{3g<}9L)zc>mWiX$`MqG0S zQj=H4O;UXqhnM3PX}nn%NAm%ms7FddH@G@m8!Waud94I(Trz$+*4r=|N|7U*5ps?q z2K5Gn;uyrsQYgj|d&1fnCYYi*{+Fcq2gTdhJ4=5oO@f!jao7MZS_a6ffE3!0n(4L?+O5g^F#+%cerNqou`X{&r$D~c<%K2NvUv^bRo6EciQwT&zJ z-G!gBFsHP@dpn?O_>l(Eh>=hx++-NRF#~!-y!fC4#@ds7_DsIdxvv1?BiW4rz-S7B={O4g?`^qQH)VCf+Vls!|4d}E-TP8kV#JnpRR5b2L%rH z$&2w4x!Mc=A5GutmzJGZ7dq6$v zJQ0kAG*E29GKP`gyW?mTg~J0)4q#?ypqhe{5zyi5oSyxZ&BxYFnx6`4brTHbv#Ry zXdIi}ZM}a}4jb)fE^}hD_W%8kZAu~gu~S)=_{#J2_aE!GXt*qX4n)UfH6uQvtxAd? zO*XuHa%jDLx;K*6Kg=%bx^K33K>US$Y(PwLV7N zrK4tqJ-_0WA;6zjl!y>uC%!%R`=`gm3g|j&c>22@+Ui6}+jP72!=^^K4~LBBt79TfZ1c*-nyI@t*ec05T2KPLvO@BNhCaa5 z9n98ZE3{$kU;_r-WTn)S$hHG3Q$SDNP}K&0eeUOXZC4|SxQqunf@0}6T@R#}f8Eb7 zr`;Hsk%pnpo`h{jKP=_By0)UCc_Pg9lTHtF94?}Hx&`{@^t7rN{y{QBo6`}Lz#amv zt<}xY#|kCH@}Qk4!wRhJF^3Q)dG>VtQqj)OE(>sohB4;1vaD`G`<(fh+G?P>Rps8R zQheN{E~{ln6{ki^$emKaa9M6Bw-!T7xwb}`>_mn-=KZ|y|9W9Rp8lFvcRnPoW)ifi zFi5iw9h`cK2Er3)A`n6tXNZI`*P)y4=yi_QsAPM=W!^Pfsd)|&AkuH8Vq-1tr|x)G21VnvL}NvLt>*LwX> zErc`5%q+*%>`qXm-37x^hfpaLg%GyO6x3vdvY3>`*A3Ff(7RckH)D(b0cV5=C;@D- z0C=pwq;>e73$|*=en^$40IK-`@#OGSY6uZ)SGUGJa+i|HNs$v<+2D@4oy~yB3!ZfT z6Y2plIrqY|o^TaJV6H8q`h8E6QJfQ2mCrXFSbhTgv>T!vVUZi0?AqUgeZ>>>y%}?r z;Xwx>hl@=pzg~-`o2np|NH4CVTP~db{lhhkFhcD|tJ?mkOVK4E*>Ox__}ZI3Q)j)^ zujmmNg=Is$xM+a@S*sKuBk=YsW)NctM0S59V!}Q%hC!3TGLy8(PFTz^)jV4TyXjZ2 z*c$IVWuqxJI0|m~O59R)@G(KOY4FeK%6;l4c$2q($Tsxz(+w;#yk%mY-#xywkka2j zY}dHKtxdq`wRy%aZ9E2@uD?w9v20Cc3vI3}n|T_iv;~vAIp?NX$8PMZ%H=g>P#V)w z>cAaoVNmgk?Ipp`>LjI?;zy_50r}JS;m~sHTfaHV@$$(zuJ`^l75P!5-h}K31DVC> zR8m>t8v!qlLZrSbBR!YG(T=dlJJy#tVAn@RO^o}yZzel?dtFr4$tCl!%0jaL z+kUGF(VK11jA-$;@CI}(Cp^C2nT;hlJa4}DLX!Z<&wy%G&BS0e?{aeq}u>W*-ehikt(G)fbGK zIJutwM&UrBRe}_cwViT4bY$N-BD63Q&?1vse5NRXR)o@Mw4cjsss<7zk4czfPl(A> zN$?K>7RL++?MFYwQM-#Dw~z;#nYJ-`PvT6TKBx7h?{F??82)%W;M|)h?bNa z-i_EY+u@)%x58k}9I{&(x>1*aQK~WedevMBe%wRvwK0?n0gtg`byJ2{hq=qyU=qLQ zP@1RpREzK;clT%@KmS68yRRc0tk9ymF2LUQ#75Lc(z1DU zLNC&-R5U4QD}O{$@!FK_#62YN-l6NjJkpxTQBU@r!OBtFvw9Wd!@FZ^lQg=OknS8A zp0qNaN`?{p%QDn=JQc)7yhUAP;?SvP!YXV;} zRNs?%6KLEUypLPOB1Id{o=6xrR?lp zIP8k{HF$7*cq)8#_w&fu!FWp%~l&VZ(+(z)n=BH71Z<@8YsElYHrw-j^ge&FI z1A8X}5I>+EpPuaJEgym?#nxSiH}d(N=jRXEI^!isZ3i$N_(f_OFa}s3zuXkO?i&wr zXGLY=V=ku>OX-XY17<#zDflsJh^97@U?@`mI#mC-CX>7eqjj?{#>kLEB4EP)wr?lD zO@Z7inbe6tUI`%q{Qv*dDxd&(fiNJ(;WPdv1RFpe2odlp9fC>bxHJ;pJqZ2Mlzq{l z*}a?X`^ppk-9^tvQ1thYW|IQSyp@>aTS5*U3_kU!=VZIun_oL5?yWkv8>Vv7NRNRk z*EC}OoUi=5kF$fG?=PFe{SNwC+fuqWO+LAqP~th#LFMBLTPl*hzwmE-YaV+dvwCV% z+&c@AVN@#;__*3k?`0C-vO&_p{W{|WjJ%ATE>hRe=V9(&hz<1k`xKU?bwjZbD2NIy zs=nAbae-5STH)Y)b?~nsITE1ue8ld?936~b^2J<+ z&E?K0XHg^B*EgR-21xjLXd$vF?5j#}B#}*MnzKYD=O;fT;!!CB@5Os_Me_0%S0hZ~ zR3f~WbPo+#&GWdd(eO)Mf8k@m#-nxLFd9-I+CKJRLSUsfmJZ2QTb){puZX3&9-3qv z0*U$;0P8#WFE6_P6)dPM;oai}yi^f}H$@~}9jce>4EWDe_CW~%tHU4RAz$QYy2cTE zj(FDaEw)=~KHYPDi|EX`BW)kvO;3Ay439MAgams(cTha@)5*#2@Dy=x7Ol%4-C|}r z3A8r^maXdT9^Qmzebm;HZDY>#Ux9gq5Md6LNw&u=V_6GLHSrcbpC0*yTi@b@dzyM% z&M&TTQg8MtEf(SD<}OP#IxCR*u%T7Y#J;bh4Nv;t-RPg|ukP|wj1N|Rn#W6=a!)h$BIT|zzuZDb4?u7jAZU^9MG#6 zd|wPhIuVpOrj0-+HJ7lCEQt-b%#d-w@EVyLW3cv2nQbC&yu=PTtU`Wo3JskCb`Hu6 zx*2=Yap|Sh62g93$iF`B!o8jk7BWnKE#ht^8_fyJw1`HI)O1)=XGXP2P4tfb5OxlVJUjuP;Ky^lxiOZbTbQTJBSfG31n zysPC%C{(9QR5LdMp=?F|z&y9defymZkXk8XcM2ptfpocWL=izzIp@Ld+oQa@ zbVDK-?Puh~|AzItGaHfV+L0YGvd>$4R8`?)TAo;ZV03U%uKhu&z4X1zeIbJ2eM?F| zyw5XYqP`{D`C<|G!QO6e^9u%5gavo`69gRC#Ally3FA_m##6&et@sH{*PQaj=ipI* z5oeZ}h(0=v*-&T8?|B~Yso~?PVc=td{9`F=&$}3gZLzZ|VNNUUJdVO4$*L$wlX+(( zoJ%)y#g#>|-=;l!Ir5vxg%-N_<6U9vNM~Sh|92p3`&Y31GBEoCMvltvqlC5|C^s%tE z!k?~R`KIFcl3gMC3&~)+y(hiQ$M`c(%s zLBE&Y((nf2j5aGVD@@Y$is)T?lS_FLBjPGV#$~nS`ms zRuK*1HfFFQMGF4ShQE-HVu$BIrFEh`{v^gU(^!S+wFEHP8i>gHFgo6nZ2QUKU=JTy znx_|{iM#K+DzaXV5ONbC0?=CRwQ*74lYCAB%qWmz93#MfDB3SmIgq`L-GRGh)zEahKsS;#B70e~^%TsBe-wm)Lm zQ8rtf+Q29A9H?^w0A>gTJ3Bk2s(^2Y@-FG5pf}-vU}9vC=PQ@Pea&1}X4TJ^VRE5R z^*1@`Ir#FFr~H9)ni#S7^ppjjV;c<&L`ien%L&e`SO#TM)Z+__(41Xx!3cjWEYsJ) zCo(dYm=4L&1>V87JEn&GK?^E~hy+X=Y?&_6Wdckt=sCXjAWEt2paD9k&v+^5e6t@_ zir!oquL2i&vxp;y%u9u5Iys(<2n;eGFjra3RJt_}~33|Je8#S46AaB`Lv!S_3M3?iW>}V3UD^k0w{| zV5Y~daB82x(Pc#UJWiFC1f8?61HBtkQhF=G`Lxfy(CYV*#TzfB;I5C5HD7zoPufgSie$GXh;b+D!X&Oi_| z4N8cSsl`}&Dlz1@Q0M;F?=D*P)CWutbuNr)Yhqjm9lKD9gpV6 zaQNk(n%W|m8W^W|_JsCzS6Fx4kyA7`OVVmEhIk|+dw2UWHMG!YFNF1a;XF%#rz4gTK0URLpUK3p-8YwT%VGUTm@m{rz6l~y-}Xb(Tu z*Y=Ud<`p;`MiU$!voiZAgj!;BtQ6i|NjrS+|IXy__l5X7c#OlDxdvu!)`R%D-CD1w z>=f+7uoTe|;h~{)YumU@SZ2t+NJLXRWs!9i5%JaQBT2=%V)n^UAO@_3G_W^x-o6rT z+990d%XIG8=JD15Y|2%^+m(LsFhNyJeD-94_{5*6fw50BG;bERSmcM^k6Lq2kw3o^ zg?B_?YWo1y)z9=N#%rzDHDG^q^cGXD{V+yDrOmzne}@!yEhRT~Qx;R><&-Txu*7rg z`KG+Q8c=Y*^9g6Sqd7q)VKP)Ury2ermT6whBa`E}8CN`rp_I9EIq2vn|H%Fx@l9>V zZVJWni22Ur_z|;fWOkFFz9W~7jo`0jR0zfpXRGHON$h6(l%*iUj>jqVQkEr}GB$mJ zCQI4#Ftn8LBCr+*4;TeS*yUeJvcVQo8eDwFP%}dP_R`V$bY)s(1;W$9Rs!PW5sE)Duwt&j*45lYkt7n2? zZ(^BlaJ0|rr&4VQ{6m<{5zf~TR7Ij%Aw6S7;TjazUcR@T{`T=N{VN7AmM0FcTKaQd z2I>H*QGLU9t1(iOIL$Ah07j=`V*{IuCk8)sn;X*L*s)6fJ+23!^*)+n+jN3jvbIkQ>Q<(nl9(PRtKvv~E`wga@J>30=*gR5=_PGbi2wN! z&o_E*6@()1!vV?zlhIa6OQf{I1)*k6OtZ+-ftskc$+ zSDeU%S|W6;g!)q)!KWr)d?|tdrfvp$m$D8~7$3Ab;-PAN>I}f z2!rbSRt0V2HEpsMF(e~+!mpU5(x|`MsGd);t;vkc1Le+~j`uK_^tARfF>EU^PN)y* z<(#$I(tAE`PpadM!&C@~X%o)YL8xpHxtVB(6CQ~LTOF1c2eNl(>iLB3Ox;WLd7 z{pdC5sEWuG2H3~pmLGoe9Buoi@5*qLNP?)6!w zJ3+cXHDNee1f=hJXe1G1B;F$6&5xMXBbxO)C`%FjN_kwb(}5eof+E2UuSUE&C5QAdMKsTY2|4|( zbsEjjC$%cShf~TmW-8!;vVNh#X2t9`d)n(Skyc4sTUZfNlCWi^7aY8fxfXSvVu- z$=|ZxR(+489nyTdP7p&SA{+HA!u`M0Ssv*$KtDcd%g^;}v?Y0%IBpKVfoGkv6u_SR zf*%&beEX6_=j>C{j9W3>!BEw5JTVY7t2|Q`ESz*V7?6*I9unckT#m50Gh^RvB-Iy5 z$W%a!(0VMmZt9YypGoDU;PmbPv;a6T)IVksam*Vfodz&+v<6O49lAT@J$ys)g8E=0 zVmtTszr`V1O-miAknAu$if6!umVZ3o^?w5zhH@G9TG zOgs=rTFD`x>5Yjy&^Gx?T{2{pn}(U6y<&h26lT)R_qOejNM$AqP@n87+CJWy9DX%M zj#4cWIA>zmge7>?_xd+R)k758%4C>F)knQsNoZ>oPy)w6m|ZcT6U8lU$1#x~NLprlwqAQ?+zb99vtY5-up?Prsh! zqk;$OF7qf@db*?d*TsD8qZz3l1Fn4b*l^9J9PmdMtL%O~&gzGh0nveyI`us*v6ndp zrGbt)y&ELObSxg7i@#Y0Tuu0p6xH_}?ft*gNmh<@nw0tHxFC1#SGyx)kJMCS zW##aDoS|mVdE0Z{A62=k=&;8nED`x^;%ALKCa7e!a&CPQ?i}xjgTg1gZk&6G-GLQF zM~6;OY8jo2_w-_4sO)B7EOE6Wj;FLss10mJT-~&+Ltr+@*gd1_7pYv*pfPu{8 zpTBI3<@2mMr2C!pYJj$n7C4PK)<;&{ z$0x5@L<{4Dxz(A^K_wHN1ngH0aYJ{(n(VF=n_yABb&pluXkYKp7M zEwsV|Khuv7oG}?Y1PpK7c>QPvy2ShjrAmR6H&zb{J1FwPCykjoHTD@kf7mGLh@hHGK{^cKjeIhGT#`)HN%bsHve&7ihwII0QHcl;>^_m3D?VxM zR{GrYKd6Qm+49EJd&Oj2=qUp|VmcOR=g&$vqphs%mn28lBr$qbu89JGo+hF@(d?-V z3zhpW9W}X5)Ck>)Z5=a+;?{Hs70=ew4KCHRRN03&Q%W!kE6U@@u`Qe~JjwLA-S(eH z+y3n)P_n1U>~Wgkf$y{@QK3YJb78x7-x8Y8)3Q6|Z+U#`R1Y&4Lpv+2^P8E((p~c= z1jPTBy#_j$p5sMX&OVl?+g>$P7BqO}>XK;8Co-HNMNzP1H>W_jR|qQo++b{+CYHvK zH<^hCl1l_3a3wAq3pOmq%zZy|)^KO~Wq?pCI+|!O7T<7lB!yJUaX~nILWP~brIwfG zT|51fd&>4lHzh+2g5>ryD;U81=jj#0SzWH_?_p@^E*K}RIox|?QAYTx0K&@ zaT?j|7_PrROwFB2x+*<*6ot%l-~Ml+2@TS>o8{q)Y-p;;Ei3=1cT7|gSs-x4>Ls%j zfREG3g9=AAgF*bqZvP}tWu3khh|z0Spr3esAebdu*zX@Ybp4C{;5D3T@erm&mBmlM zc)yd34=0Y3LyYfy!*6WToy4*1cH$`OrSH=2!~!&K8(yV~Hm$BP?)skM`Jt(Kj$MRz+~ zcD|e>5<-uekKd9n3|kWF?0@O^=18Ti)ASIi(iC$qkz5NyA2U`6_?Z_>jh(;}WWh~t z8=54RpuK!%8KezvOEyJL_3At!D!c8(=AV)UV>iiThoa|YM0uA(+f#?HLd~vyt$L!M zE!OgVl5b3jU0UeoceNG#Aa#LI@GVcDdM(rb<2)dkskk}uzxpS|bRUe{|2|cah_9=r z@o~ok#@?;+FQ+%6788ZTX?$2fF%(QZ9W;Y>Y?WtW#llQ}08BM(Z71E}J9wDDygi{> zrnJ+x^#5vAUSXQim+!=#)v`7A1vh0X!#mhI$;lNtu06!SZOrK-A5RP>Z^a6xJ;dIq z4ZgZ3kE*`CJSf$m6X))?pONaRRH6TTg6~kfjKQ*nl>h5u9Otw@QlkH?Y?TPj2H80)lP<8wWkFFR zOd$siF$%_~Q6>amOq}Saej~9sA~JHEh@WeEb*{nKXckFHUUY|eBYjkd)KuOOy!$UE zc5t=+S?J4AI{RN&=ee){ zull7(hu71yg2!npQ2a-6MK~Y0+xoF_b+v4_9rx3C{o;;>v#sgAg7W4xUJS>|<;gS# z2d3vSzqPaWM8^1kZ``Zr{$0NnvRKI=$Hc7BMxhsraA*-{pWJ#_mu<-+b)9jCr!$C67xufqNWvGChSP(I;p&q5x(2-`WBJ?I+M#q?ARMe&y zq2vA?#M1diAy&Xc#_WBZNh#TdyxYBi60L;=rSUfrY>FxoTwF$IwJ!++^HJbqVCmnS z)amJ)^LYPZCH72fA$kt_-A(s|N3@UkX(lct)k#0d{ji;&vo)8Ou@hv{^=ki&vI-yf z8I)S{aPIveIDhx7$6Laen-sf}hL8W@CYRj{@*I1Zl&v|)v*hCPbwjPwGhKgkDjwc5xogl$aO%x0@6F2e9GLj?OVljxS8V}}NQ`b$k zu@Yo7UT=S_e>t^C+c>4q9+=wuJ=oaldsmd7k3(8c_GaX|^XTp<1aR&{<4+Ku&2=vC z#}g`z?#|!DUjGNp{`v{OrSdrtiZ0Exb%NqVHK_35bUsmRJ79O%b{*)rC|p=}0h1JL zUTau;Wd!azSzYUD9^CDCIkhj=xMQwZ?5wSg+5v^lXgZBco)Skt_R%*qPIIW*u;#mt zyg@LH!~2G=`wrTW3Kl##4&3PMR_*EUww?j4WxeF15y5|Y@cb_!Z3N7_Hjb>fGuoOo zyqK$8lu-zta&co-yP$u1hUY(YUJ#=NS!&b&q6j@%a&K)C6my0A3*<0QRB4LDc zHq#(Owhr)UqIREnlNB^I zSkMDe?p^g+UH0c!53XNo!F2xb)OmLe#5ziGC$)aCl{7CQx!#Nr&^Z!@Yn z{~>FSXHiMD#P_KD@MR1%^16mIkuTozii4+p6)J@t15Kz$~NylrCtu0ph!HGGYHsI04 z(yTcL=H4u!j}%j%w=w1Nc&y602{N4cH|XY|+1u6WYjs{D*JHFX)>ccvAxtWT@`Q(f zK}n#b9*5l<3}Zo54F@>HwTt2pW$_F3|7}CPfQqd&675CmYe2m0dRdkZG^|A0VwXAr zHBFOH{hPQ%pXT-*#e$d~kGpYqZ*$%k^7fUTvCm5c&7rXr5Ap}!X*eg3?fS^3M9VZl zz)Lq^%%A*BOFx@EcboCZ;jioaw?eg%Al{s9KG}N%e-QMW3sT`~f-f%)GoRyZpHt^X zUSp1%s+qyDq!JrS9|k@N^>WH&4p=f$Tk_le14Vk8dG_s=Xlak*N!j$1E%{tm>EH`+ zXV6tmlNPcHf1`S2g&$dO&<}Vn>Q7MZ$y*86(mSj5sT}_|N^(-_RhfNW=Ug!UDi_J3 zNmix_kHUb^3$x!_)Oo@1uGM#QXc3+Ozb#;5sB%uIpt)1Lv%SGYs@FB%RtixX=6TAn zS-2&XQ&f>|_(KC4>~)YE%dnDHZl!o!w-|s&^mYrggO~CcCm4~Nstt40g!(*AgYSxS zp*2kdYmsy)dFbKe9t)={u3m$r7_BVeG)Jk_e#9eX9gGSE;vq+d0?AM$Nm7&So7$$M z{|#zep|&(k+ums3iMgSTzv*<;!v)=gx83Fg@7jB4s>eSwHufGJa!jy;I=5ji_>Say zErYj4`IS8{3bFA9f7=HvLAm13XX=w5Q+xcl&BB4ye_*4x3(J7ZgXEL1a7|f?lT&Pbqv?20{3%@PDK)z} zxJRMKYybA;V9A@o&p4Vt8iN1ZZ0>)TQkUb=z!(~7XnI56oV*pE6!^5&^5@(rnDWfm zHRnhQY5G|I;AAcr>5K^m&UF5{Pd;$+ZyAZaG`|ec5w=~-neGn*!f+l#8>V(luAQT6 zQ*bTeHjXM`!Ua!+Z=}`G8q+iKh0sC$H&>OlhZJtTUJ=bPKhYvQ41=A#ns-Lt>lP>+*_Byfodr1?cq;^-MZ;E;?(Wk-KssV@` z`!g)dE2c>$W}Z@hJR-0OJTYI{GiN|Z1hzH_khNT_(LHuX%-lYi#$^>)CrCA-KHv~z#^^*F`!#vy(uM;M9m6?rsjfIikG zp|OTVDv^VbV^y&z>67d2&!?J%E9w`buz`=rij+Q}#a$J+4C%8`8cV|g+5jA9o>Pq_ z9PaSflM8?TyeKcSmwz>@s^NN}a~X40q4|LPp2A~#G|9#D)g&%p5XY; zW&=~%XLPFkU{BaDJ#W5%DA0dR)q)d!WVqo@N05bd9BwH#IvFNg8s4gzA}B6xZ5|VZ zq%$8M5nH@7B{pHnG|9?t<5&pUu}^!CvSJWJ4|nT3>h11!yfMvFBY!R8r~xZ*A48@( zFqv2W9$h*?ENM~R+*9_|@51$f=lWI1^7v-g->g z?YGH1efZ{z-2MmqC8evE>8+P!g{8j;m%SdlET5LGlS78smuzGG<9+-Pbnj#m2I zJPCgc|HRX6EzWu~h05a7+pQ|!ZN5WBn1)iTmqvW0Z>ep`*u3J{3&>Z0x}UW#B^b*WJ_pEu#jh@z~T#IhfzuR5CVe07_jH z7JCo$_3Cg4YeW7zj%~-1nEVXgUekXgd_F3S6?%r=`U2+G1v#&{FK5LpzX?9XBctB7 zL)sq#9^GX{?7eXySBarEIp4b=#Jh&Xx|o6BKFS#HY+yYGGmk8v!QtK?_ypAQ-LS=R z_;}2+xFSuK%^xmr3W3?dmeRJZ#2yA1K;nKkwfuz`@)qni(Zh>hXjw*wbx;bzE}-!y zt{b6`19_(+GvZ-M2Kpl8vb1@o{k46R>P;<5RI;-a$8~=XmLj!_Xar5_B3x9=H2=>JQ&$!_=&eb+0n(qLcvD&8mQbylco!K-^mYaH1Gu=QoP7bK44w^S=m~OkKy_3z z8A2+a3vF)R{`kYaDF~)Tfy|A>XOJ(s5j2d_Hxfb%k0sFpxhn3~L#4{iweSy{&f~YW zJ$;3Z!Go0!S-&9`4%O`uY1H|(ecs*7x9i&XMP``OLS?|a69c%X!xxI@B%^W?TH)6; z>lj79E>(aVJ@(8ufR}{P36EckHTXx5B4pN`Yi7oMxrGe;#uu6UP!JW4lO)0YMP-7D z<((Ax0923}j9(?Ap@5H8SNqq(#VH*DEgV^^QQzW*Iy%R0NT(Uyo8R zPe9w?p8e|OgBX;(F3yZ@IXK%Iq$FNgd58`gmH-1T3xbo&{9j^`;}hz=D2(q?%zeMj zFOQJ9b97)_=&gdMYh2O*`&6lw7K>llM3vv&yIOlzGPI4NX{yziKlXh8kgoQxm?i3R zeGIEQ0#$Z#Cf@odyvCo%Y1lJl&6nHCdHouq>!@}{fj$fI4jdzdFq-_0&1Rl8(?UW6 z<`C=lq9vSDU$5vT0`e2tkFQC5~@sZ^ck!l!94Z!UN8oU zAX8U<^$5(e!H$B%QEJAj?s7?7S!K+k%a4*6!K9A8)Fg+3Q7fn_Ox$;EC(zEH9U`yl z-IfiKpq1^%AF}>g;1!JYcc;-*jL!}B(;=X{_$r3eKYc}*@_c)$*byZ=JPnn z&mY?bAI^*}9!R$qJyKf~3NH}vTe@F1rE>wVE=IjJ)u_B7IeY^XSTqRzbDJuF4bJEG z+M@|o+kM2ewRm@i$)>13{d5S!>N17soqO#H#2H&h8^%cu&|H#Q0jUv<>J*5S6(0vQT4$-C_)-<6)&m;veG#(UdMx!Twf1$Y2$kC7+ zwzum;Q7-UrV5E^oS6nLAy6Z&s=o68LmMinxW((F&^P&fVBGB-p9wSZykfb(q@MKA5U|#0dh&)OnICYube}oOGDWlxpXFmgf zOAu0T5s7(qLLPcs%WOF1p#)rqfzeT|kiYY|0m%HDsMBRUuxQIdAJW;*26z zpdN+}AqFd9EWufpM+yHUd?#);AV|Ceu2nzuCxkfLp8rkM)~M#eD3|7ErPl55JCs52 z4dW1&avIna-71h09PXhJOJ_0N=(LW3F5I6^{`=JNL&D^^6igOp$9%qn=1bp7e=Eiq zbFOZ5)4h8o`!f-(Yl;qflVC!WYA7t>3Y2m{Nz1KuSfW#5*YA`qq1<`NVNzLjg;$t0 zMi1J9Ynw(o`ypdO00gpMp)eNt)X~|UUC}~??^${&60<5eKO4NCU-k#Lxh#zJ5@06) z!(Mg}1|z@8c+M;2JM#A$#`zq>!iL4c@H7$lAV=uBBgGYV&zhuZe|zg|lxQci3No9J zJR*~JeUn6|=>T9#$@qkI;AM>OSc9_HPR+(pm1{R0h6prfIqNtW=J1o9#O1#a^Ir%? zt$^JV2?rz2U}8uF8H3^wZH_hkc$&waAdw;SVPs_Ffq@H{$$y-U*o;ldwjdMY;$Bn) zXn{Xd&WFBoUD$iR3O;S(cIg3Z5HCaW%f3nryZY;Ic7#?W+8LN;m$baWEJ>64z6QcS zw|s^_aMgB_*gJ1+V7Q$UnB4xQ9yjb6JJ><&Yp<&I(>3)Ernu1gXW*!iyv%4~zhBWQ zK<9A*g>$b=sfCw-oQiRBf~}oS_B$R`OYcXv)Z(B6;Xi12?HTArZ!B*W(UDuhmo&ca z*uN9BcF7IejmsC~r=`fM{z%X|JoXu|Hq|1CqW7_6u-2U*K>;zhlF2L#>apzo(_j2F*HmH+Jm4!qsL;Z%gv z+Dl}W2&g$kMu+b&Y27O(=T+K#^e74y(VQU%UNQFCIdP!S;sIC?9#Q~5&wzI^% zBTC>HWhSwB#R?^fEItXnsX}IQvZP*$s+1AA=r@s)d^WB9%G)F5TcMa!^%EI?D2)fs9MmmRAX(#T33aAii7Vt-vGDJC z2fr@~jIYP(Q?N!W#ULv(pZ%W}pb_;Lx?~1lf2%I&hrc7Fu8ix_F2}&vGsQ8^6xt|s z9X3w%+82>%c895k3?%C@m$6`l9WAdX-1B98>+<)d(ldMGB>z6GAz2jN*}GSP(2Jgfeaaa4m3uq@l7l>PnU!qCc>Wu zodzrr1y>knI_EgF z=i`P?!pqy6-%ISOsTrTGD3(kvXZ}x|3O|CbfN9&re?mTt7GSuAp|wOGmP@!k8vE;X znAiE11U4ijEYYmu^i+TRD61b|@iT)kc~J7;(7}0k=qKuWx9ohgR<*ll|70SnW?Kmx z8`1p*5YT%L5iw6OA=ojH_5Bpbj#_W%Ib&;1YU;L;YPy{^KddUx>gPy@K8TD=j-q{? zh>=5yud%^HLox|d-3Vy2O{i~8elSyQ{O;H|v8Ffm27k}HOiyL$9IAU#P-5*b0>PT_ z1IttgrnH}6XaW!@8l7Fpuf@3NaduXt!k+Uc$6}5Xd_Mt~Q>#`W6|oAS=QIdvolt#* ztfeKul*AAt6yTk*Y}6%5M1V&YMFN$d(g|+d{1K$k>l7OF(@Qf4dz~X-{vwB$?b?d< znF>DOyV`(275W+Ep`2{voY<^qUbQ*b^4}|PVei~_%$Ny@JHTg+e2=C~zL=>VU|F<- zL69i>=+zP^zy*dwJxyb<%Ge&P0>NZMbvV2#NlNP+R z#m*pOtTVNMrIT=Y&U#o~qJ^d{h6nkZk(=9^fC@{Mfc^s0TJ2rn$uCQ7uG>To8y<-n zZ83j22bKa+5PLV%g|~JAyx)eyVC>~bl8Q9p%jr+nbhP_mD3atc*RP74!dWn_vJ2Jy z#r*GzaDvf@`9`nAc8bL%KzVCl0_Zy;jy>YY7}*_G^Qdru_}>!hFB^-F?)Gm$SQh9_ z<({=}Nmws2b>0@-{H1Pe0s>J@DTW_+hKEC^oFtl{`8qRjN^3H&fjk#})^AoJ{CWbe zOInlEgfF2Zkk_3e@PSJSWCsA%2{w3L z2%hH5h4!|k;nN%wmXM}X;ULcidHdh5*aB85i7_cnaU>88@H-8M%t?UA^?IhRWYlF; zYuE{Wr9@5o=ifspWSNoiZrlBA?Oolkh^Yf`@5G`zC>vYI)sJPxp9E>YHNz{LG%G z5_T!2Yy@^WcN9GQc*O5=mOAhQ=Q?wQ{0IthOgDjs60QaGw1d;{4yC{GI9d z$5i#9-s zlhBR*TW-D1Uc&6@OF475U3xoDo$rSbOSzya^0#0!zF(e_@PmiZeAAQ#-o$+_!!18e zYH8sAA5C8w6-TsmJNN{5hXBFd-JQYREqHKu*Wf{e6C@-^uwcO@I1G~D?gZDtd42Ew zUjLjmvsO=^K2^JR?NdAAgH-~;WyrUXekpjL=m;FvlA~dlpZ4aaLwYhhlJQ_&_2$FUl+clb zjw7#Df$Vd~_2ypvS7V^^QGN%i7(Ar`ZMLl4IVSjf!rlLNJa!NgCuHeT_t)C=*E4UT(>J5sZEm0-Ofw+HA_Y1Gtm4(X zro2QpP!sS;Yk4ghATjwjd zDQ~dF!;;sUMV%z}n7K=p)+w!(UFdUakmFh`(C){C9mymOj01oBn)W8_6faC1?vDK( zsB8Z|uZ8H->n=^K0EGm8Y>+7WcRDy%p^>-45y58#TM7~ZalPU6;=`#9iQcKsUO3LN zr=%v>G--&IwA@#+1jM;a+K7ewd-L|}wkpiMl<@L417BO7{w6uDtQqWogmo8vXj{2@ z>Rji35`%_{DD*rQGS{gh2e~HJT?yI+76uY?HU?r1VZI$QS+lq~w)q!nL;6Jy1zup? z`us__B4Y!bj8WkySB`$d;qK9q$e6aK+Iy>musD~jrvP@z6t?d0m#!o@bZSinzTw(B$sB0|Eu=k?d%ko}gB zg!&r{aZ-qQ;Xr;f*L>5y#6ltu1M=N8*4zEgc4V%A%p{j^7OjpXMinAAaCra>BSi~0 zpK6TNaDJnJMv2y85hn^&Dt;QZh7YV@P>by+lc7u>i?YydN32h_1r_kL&0bd<{^<~%_0xkz~1o)U~FB)3EpM~fQ`MWWGX%(h6RO0Y7a!A{~2F{Q>+=3cP& z2*@ZAA2F}CHZe7*C_%-1jEYwlRG(x~PEbiq_V~9TCRlYb`A*c>y2p9GDA2B@xyGu! z9NFN}#jl50bu&NUE? z{0f`gCITs6dr$=ZFKMU9T6si7#yFn(IL?PcuNBB8FWq&w6!2OZF30_QE8-&-XVZf& zAJ_X)FjKU$Fh~OmGLtKYN5zn6rgnZw{sL3uLy#E>N<0sKQY;YD$>@if^EUWFjjWh9yp~Vm7bR##at6fh<=oI`?j+V>!B7dzbb1>?he9t~xexq{}J+ zDkZ0p1XHTbM4lNNm31I+DU|U!P`|s;M8|5f@%GU@9C=y54CF)uC89t0cBnC#=!Z!g$3)hMNY4X*mN}Gb1N)1BfYeEFh%#Ffjxb(ISc}`_ zMkiRs;@z>WWR?^aqLlT*aIpasUJHVeyBfEV#T9q0`RWFmdE5AJBK-x=(*DQPm7sfMPFK}1_5yxd!_d`{F=!G1mKJ}Tpw)hsB4`Jbz(dAk6-qNOU zQIM@b3dNcfu6gd7+vRVx>`l(lNOmPMeu9){}tnOr>6}M>WqRn(Z4(R)$jK87ye#~;>tfs9{3f-E>v`U z;d!ZZTJ&?vf87j(ogZwHO0_4fGk%G|i)fXbsH^!HmG}=07 zHZrjK#0;YQxb-=_S8D4+j*egM&yny|?ycgwj<)&{U<})6?;%qf?O>aTJcVeo3s4;1 z8zXAUdRwH1Z{i>$qi9;Tmcw78hoqoigQM2P3CX)*W+6KYA!+L`6XteosBV(|fl>Hn zdQ*!|ja_S&CAc#mYD!fgjH2AS#0;E-oXI{Sw6>}7d?p=1=}@TY{=I(o;+0ZHd6QIHu~my;Me=Ear7>s7v}Kdu#eZRd;dSr9@#6qyWu?W zQ@Q_#)S{4ol$3(}ip_=7hKD_Fd7J+*V=8gzh^TZU!1#kiCKH=JV^c=Uw2m!tee{BI z?U|)$sdREWm`dry)xCQZmE}15l@rSd6|8%yDkDEeS)ZUZt9peUFFf$k>zeU@K z47W-N`;i_rX&of)Et{ftRevTi`HtaTkp_>RBRW<4dtjBaX0Qm_(!>b0=4 zvXFMW$bBd#^CKZbt#M?u&$+Tm*h<7l<1M)?vJ?l2n=w*rV0Q)m3T#Sdr6VL#x%)nk zx6`ga61{i}so;j6j4df1f>_^+A4A0op8c$*t%V<9K$w_ll;#zNCO{r~eu-P#9a4DK zX5$ahUCaYZi?*Qo8TROBY$F{BR!G0V%x9=)HUfo zDq%$a8vB9+9V*JVbaqbXcwJW{!W!5wTb--g*D!e3VRquKawJaEQ1bcgTk@R+FWH|s4Go$$i^S~JrdvskV{68O~x6< zrt*1(fr;oakKJN%<~LTurd?4r|MDbqy;IH~-|$HLue5pA_P5Yun9nVe3moT9;iz zZ}*`uTM15GH^@gN`dwxSPCRzOO-a^q;TJd!iZqFI==gG!7D*MN;A!je`C5+4@7cD7 z&;N8oTud*lX-LW@;=|^DZX3?-IZC^kk)@3kJk6v$6GKI>(3^}fnCMP?@=6#P;Y2b@ z$PLyQQA0$|(Yt+7B<`=D$*bw3?&)oqMyx+p{Tj$jI5IJ7?ad);$uV~R;vvH~#?-<) zO94e#N~a>0Orv=dRO_CmftsSQ48Ki*EQK-@b1;SL=oPiEXXqx9MNE*YK;3I0?c6ai ztP}l(BJwzgc+ZQitc!=17_9k8hAIv|R-1I6?s>EDKNLU_D5#=O_^F28O3SU1oaYOM zzQ@SfhM#xQ#v`T3aBQJyZ(%Uf?GveMK{Usj)5TKF^5-@idLo`%FT|l5JA*edIz8AC zMxc+Jiknh`Kac2kk*KM93{$W-QUyiTARSZHiWBo5{ko3+8(o3^mz%M1WwL?LgF8f) z1Z6MMyffU-?TpO}4{~-S0;CxHdRaMZ?I{ma8tO?`lt*V#2mxh10qRB&l7i10d%(F- zf|?(w3L1X76X^4Q5N)s;s9;$>W7{eaKDKm*_}VptUF}z!tfg$1ONk}|1!*Y-z;Jui zu4a4o*KZ*^Mr4%xa|Q7}ZFR8;JoTWk8A72q5ukE>X$Wr}wIz@Hj#iptGzRVN5;*cN z>Cu>}OO1g4{Tw`pnM;F@fBNMheY-J9%9n+NvQzT!=!);bG|D^pU$8zAM)`&z9R|D# zH0Y~2U=zQIMjZ)TF?3Q+6(DdXX;A5@$rEa^uQTJS{_}29howW%@cqFZl`{M0(tP$E z$y*-MsE%2JYNL4o$^GAAl;X-FDw0Q3EnPu$-7crMgU-?wK7W_Zm*9b-LDzROiE?>e zeFdjnF2b(K>mtz;n0M_-aD>ZJ{m!N)Qv>I(rlJQ%%;v=p5y(3)+RYTpbbdycQdO-+hd zo$4H4rDBE#CF3aHxVf<4Q`Py!cL27%!jfd+ErkO@?>RUzgOK&4P2jij^H_4VuuJcZ@)h~1SwDD9;!*CQhQMffQ+C0jgUJG5q~_C@=+!t6IyyQwA{+|~ z3!+p{GKC1ZADg;3d_RA7MbceEDP-nN$W@a6i|L7X$YuC;HS5p2?b^r`a3R-32hkJ}s+1+}dWfJk6U78H-dwpU+`Z(j`<>S*c*DH^dE?n{2{N zb(0$%+f=wR()08`jdCZlEcrjUpUemot#wTheDU+s^&DjYr}Ml;-9u~FeVJE>JO00} z5|)-E-+Rw`yxvhjr79`EMOa;{q>+o zz-RH2b;!RZ^EcM+hosGVE@b3ba9^rg`$XT9vtBmQYi=9UC1BFg)ms=DOT1oRT7iw9 z3;byGMpznB&F(g+0lJ@CPjHVasSp)p!)B+6^OP=S%p8rP+34GK40=%K;JLfe4dEm_ z&KCNL$H^l7(z?8*9v>lBes`|Wox)J)7l9RW9+@#_6NSyn#y0K5PeM*E3zqt>LzDcT zv`1u;D_aP&EdzEB&pq+_xZ83kG07^K#nsh1seTw28x)O`IsNe+VgCNT=zasX2?otC zHBTUNwWSL(VVCTupo!LpX_6E0+Bgz>MMz=2o8yVGqs1Q=R96DS!+jb1Xd{J-`mc}c zA9-L+nOpygixPLEJSiCRX)8vzqgqTK?tVi}Q75$EW*X>D!Jo7B1Ad^wsHqI}tsWQL zwM$`G0}+wU8#2ftXZK_sK@RDoOZ4lWO}|6v1T(%SE~YjU=P9H~zzcF;Y*bcr8zCay0n!m?+>#oJ()UrW9eV=h2 zBs_ap?;dh*7n)U37!Y3|;)^TSX>?a!PPcTz4`E6Ky3ybDs`7=sgMfmX`5<(aI9a^Y$P4Fex$=pIS{8nHC>Bl)@#(KR1@M z014^v?B3f092!qZCk>^KK3>pDj>wP@PZuIc>Vjk7d&{&`P>H2DH|V}!$quF?3q?+r z#tqwy(&3y}A6?$`eR})-OLEG)t(UaZZS(WMhqI+KKmpT*NA*5hSQr93z|Cgo&$&6T zOBBQbtFihT7}{Tc))n2hLY5siqV|*Wy{~KuGF6%k9CAK8fLBN+-+QMn4p`O8l0|Bz zX)wjBq0F8Xca#cqO5(>DuRc9x(VlUwafxw_lw#%6CtFq5J2_Q1)_1985rOHx&;9!o z8xvPTEX(ous>V#!H81D-!8Rr-$y+a5Uju$;PBNDU+ID`sOfKdg59yR|(%M{EY>cv0 z%%Jx>QVgpEeA%bYr_{zWSO~0lxT5K?k+b`De@DDN^zqG^L=O}b8{1^ zp5bBe-w&BYW`5yqZ9hO^<7r|Ay zYrMG}%j_I}V2WOzn8W2r%n9SwowCmp}GyCzhVs-VFyGa4B&q8t)XCwP097hP&y{P9{fD`P|A50@lg< zp5)8j{U7HK`nLCrF}t65d$!wZHa)*?%+9&XM2o(>z^*p2Lj9Jnu=-Phg5~n^Qm>(C zfq%-#QBPn0<2G?Q{(oSyjEqdssb|r4+kW9TT0%m86N&jJAsIL?))lv8Uu=~E!QRtN z%h6qKU~UnRr1Cwj4V#^>&z?klQ*B6;m6ey3GJJ9&%=7lg}0_MukuytrO z8j(GJ-i}=FZ!{tUBcl>dWGglg`Y+Et*v|ETzcXQgiMRw^2!vpe6r!{QwJW;q)(r|hRPl%Nz`NmDb=7;53SB-F^=oBokHNuGZsf z&^x}P=fTXe2H4bUtAV+U9~V~^if2!_#l^d9dL)^Z3Sn9gWgxm8AMS_0W7*&5KG15) zGAXqNy@=Mxr_&d*h*wDUbZV+(IG6mgqSs z5O%t|P;Vvr`gA4wc-*)$`YX!FLdi8rdfVlB z>e>;v7L2#bb?f_-!&t zIvnFAQ8UgJsZ;$jVCYyF5uOW!^got+y_eB3FsXhHHX9ocuBVeJZ&D2UqaFp!bi)!8 zQ@E!Wc4nfLt80Fw=`mMV*H|W%6A>SH!}BUDSJ&2Z2?{D!%06=x4px;0y z%MRQO4#!qR1RI!{?cJ`BYtQoh`JfA^hkyGujn9{U&W_K|b{gc-jE>dG>}0oqdJJTX z2c|;@Jy-G^y7a&P5#w#zlPkZ+ir#i+`J9_$84!@mtNKZ+Btsf9a(T%Ol!&xS%@{wM zIyHYAIVN)bG-Auj&aR)sMFhCkI^Q$15=LOVHq^I$Tu!?x&qz#8#*Lx&FLWh)YL|F@ z#Sd$L)3aLS%L3=ieToge)^AmfoT^2T#@@qFf9Is!s0pL!StW{I+MEf6P1* zJJijPDBGJF>LwTNL+DJAbK?Ix*jWWyahN?4RZ&rCsB0ZRS#B|0T{!SQLs$X!I*gJ7 zamk=T6cCoTESt3Yg=x8e98^L|URQ^F$zK2a z=t5`5x{Wcw5f+bkm?YzOSK+AZ0d)wMDhRfD?Q3G=G<4}vtM?vF+qx}EBpqXJ> zaZ5bI!;{o$9t2lyEa*dAR=ZKMOt|H4HT2@p)UJ3h%=IDeeT(TVHrL%Qw0@-05(u1-4o9 zaigi5AelEe-j^jCYGkC;13tQ8AU(Y-Lo*Xe#*d!J`u3HUlFE>m8KEElFgboDhDL7% zf9+*IT+oH|4E(&x&o-SrGxD4BAN=aWEhMDWWSp5aKU6Vw+8<2+oHC>_EMS^q4jl@yLJ)8a~KoI_sp^8H4E2m-=wjz z5eOJYHH7|!c!<6HIDq0}@JTp*!rh3km(Bc|NDI)}{3qq<1(7+bz$%%!_~y1hL-4Vc zm2eqx=`IQgoBv8Cp}$KUB*JyYz)YD(*5489H@EhynKrI}88^7B84uk)8+Zx4?DnQ? zw{fbDrHx+<-2gpo$z^5f*Zr7pmjJ`l(=&X|DLjovYW@X3_kqs^Xr!I^PNsc*Q=mrF zu}lwgA_;A>IZm8g>FVrRIAHubg)i4@P(H5xXb0$^w)^B0j0fEjpjXnD8DJsm_o#<= z@l#JZK2HQ`m*<@Q{rv;(9i2#0lA8El?WVx4Z0URzp+G<5fAYNqHL#X0pUj;2v?RSy z$ZaJ53E3z2?Rf6~4ql?4Gs+*`n22EXhNJ@IQ1aZ zpYVwUUb}B6kH_kdgwMJ?Poutr{)l?r^w9q%l+$di@Dqw>V_-3KpMzYc#Xbf5t6ruO zNbFG8>sdSeZnlQ(O*y4aP%fC7B2=Po7fcHIx57+Jil?~gs_6Lr#o4hX3I4se2R$yY zuRSgw)PUh((_U_VIO}7{Ai*a+H+TNxn=1uHrt@;zYuZl?AA_*WS!S-_w$6pi-pKFU zQ^%8f7h29B7JU8If&Nm7{t`fW&13ovbaQN;Ij?%SxbDJ#|L>@_v8%qhtkKH%A` zUUCR;U<6$SX9^f2R3aZawn>-1_!I1bj}fM~lLZ!~PAylO8W~~g!X9WOuHkE>{TlnF zd)lfK$6Zv}Z~y&xh0z6E?y~#nFi+4o3}0VkrMqZTCSThj+$$n8o%z|d`zUtb91>CwKyl~^x1*2urE{s8##GlS( zN*F71k=ZQkDiVh5I@s5&dq_S$?s>Yoxgl=sT4lG`r1y`X?|3LG-yv$@Dk(A2ecH!? zNQH1os>>74_LW7K*N*V06k1&-c8ovam49ra*Nj&oXbAm*iqwM(VmaBjRRdi%aP;7% zt=6zL^9xjEc0qP`m^sD~$GSl4u*LOd8#jNYLK|JYU)b;|Z5S>Ep!~uDuAD@rSwswU zc8;9y`JGLKWJ#$p`<98D+nZ6ZRlE{f7VvM@7k8>$JLJy=Bc+n}{R!aWO5!-tKW=}% zy7G*|1|VscjRrG$GonWJ)3%`5@Y7Kzyf=Iu`BM$N1_zvdP1QqZC)9>j0JL-^3}?WO zA{um;s#hh~zG?=3$uz=t+;NW=bbG6cf>Hqzgg@7!QPysikg?r}jgUlzSI5rU56|GF zNH3%W{1TZWx(o5bI>;}SGv0rNEOzHVLa*Ns)^gcnv`zo^5f5%+um~af$t14Z%wXYy zNV{+VYjgKYN)f-0;++@;>HC53Z(bunekB?RGop6F1sh6Axhyf+GF}_+=9c8zB>P<2 zm3EZqb7-&-MP3hKZGo!w-fe?-Yj}wncU|h(h=2WqPeUCYtI}SMF1shL%QLP6qAR)b zCWz6IRp{~3Xbp4jm($shsz1P+{6#mwdg?lxJ@Glb3E(A7s{G_CO36c+qBQ#x^`V(d z1KfLf$W#DWLsm3OVjk~`jtGUg$+oUj6Q1TldwY9v!iZ#9RS#2M^D1)v3q7BvBWcFc zk>JjwY0qiHQ}2jnb5kjU<6UHl)!$z>6xQf${;SyI3q88dCX1ZAQdv(6i(&ZE(K(m~ zGOanPNr%&ZB(Z&|mJ`})Y3Yo{k9fp-%SE2jYpqBLdeLWs8?ylgwgvbS%U~lqxw?9u zEb-0F&$B2S{M%^pI$7v+7AC+IG`qeL`)?pv zkzxhrbrQHJDAa=!1{KK#cTqZBx!q#%Mltg20lgo?dP&mAKd9az@=H!s^8%X841Z&O z9$ywQ=@LI@Aod_X3&9l|jpb!s)3K0&ylX@`^%1}Q0Xa7=Gs7w>?-878U=C5#Llt(S zB4Re8IrvvcVTAB>%5-5{LUay&7QD=Vu*x+C1IX}!j>N3V4RT`A9 zjb)(wbmm#t_*<`g%um?TO=!o-O)71`o=yWkhzV!VO^7so@57oEpwu_#@6DWy@X4hL z<=^&k>q$wTVe$4f#?yyz<)~mwbLLI7c61C}iKfw7+Syewqb(S9W4w%&hLDkwbzBUR zt+WGYP_ZaYazJ%-(YxP4WKSoKe_UGpPnza|0cP@!s%f+=s$pT3MVosQc{~1-=?vGnkcMeGsueht&%iL;d5q^gvml7Dg zNi$Tr+~M*FOpyiK8k!|PILtI`OUwg@PVW-9LHe{Ifoq{fy{vDyvxZd|(j;gg+Ek=h_JHBO0ra)KRKx}X$mH34^d zWbya!Xh_tg=9vBucX0_<2`qeWfip%tc@u;UFP!K=1_rhO2VyA8^YU8QuBOB~tj+s~ z&>{EoV(2Z0^}QZ}0UxeC4k8?|m%Q3nGsC;Zk*Lb6!O{EvCfy+g0OEoCrwhI4q$dQ= zE`at`3Bp3u@vrGlQFRq%^nU>)f~d|x8m_+=iC(|_Ni4fJA*X%IC6hnengj9PUNM*H zpeCJK5z=l>){!~4V^dmma$1Y>9Nl9s{Ji)*tfQl-`WmZF*)b`6)4H#Mp+b}lT?5iM zZTwD|XRwjP_pN9dfxOA`5|t{osy4g)J3y0JCWZR>D~WqP=&J|#I;yA9kgYty!q5&I zoHi0ws$PT(wbd6saNcuvd@kJA^?cgC_#7D-S()Wp{wfUjEj?`a*URQ6b#``k(8FN` z8mw`Y>f4WG;2F)H!IWm(grE((t_7e4+!(Q}%!h0uRKs#hDKX|Z((ho0V_#eT!iikYt5oRj5i&A63pYz!*zImz4?38h<|69nGM=A9b%ihg zJZ@`}%(I?G$b8s5lS z^%Ze&+gB!{a&q!daICjGWVLWUGkVia zvFdNh>>(#PX4UprhhG+K9UaD!^vD^HTmOd`XsRVEd1$oDI!h8m%8AWvPTKg(O1>R3 z*le4pC2F`QI{9*S>06&w9vnbb>p}Ls%B}emf<-Dh18>~3N|SnFVoNp1juV7QQw-<9 zQH=2J`MZg;8HTy;LOC8m?j!cXY`<QYqbvxA^3BXjlD^>Fl{wVoxVZ^gXVEG$ zKHy!FYx+Dc+e#zwMu61uyO4Fl*Da8+OYze$T9=OPBF%!2Cy~9|PX(Z!0iBdaj+0Pm zl}ez{d2Pc}jqx+GRL|fb^8Wt5XP+(6<)2(I+p!jn$edl|HFIgv!-6^a5P{}}Xo^cq zyCmpeR=@Y9c0ols%NJwt!N$f0xMwVSg_wp=;MWJSvn~Cv_NOeldtNnrwTcx&AF?)@ zj6PG*qRg1M3zJ{@xlLZ|#%=P_&;B|Gah8a3REHp}SF9%53y{i6fxz-gqrX{g$r%R9 zGdjtQmp-Koa3)#Vy2tA$vlE6-pF6p!s7QkV^*Oz%i<}ZKOaH(%9+RY zLF?v%YO8W?_YV>AWeMUK3ZVZ5@Q+`{unl;3b4GU*vdmwy&<%3B?dP<2vWYfgtqY+; z4EsSI9;1S4n({=2ujL8m?&96~bWEkRa(UDlHU2p{^DjgVYSofhC$8@1{v1|F9kNf9@Dy;U4Z?x%K`n3&0+4*SnU zUMl9p(HvKm^sb{WAy&hgF%1s2_J8u0VgDK~&OC&7p0_;<(HV#ljquSzj~9yAIhHR( zOc{{F-q&x3-dqVp6_(-26O)N1QBUyLx~q`)Kie^krvqVt#1UFR<5W~sq;KVSFcCwi#&cAYZu4SU%#}&oET6192But=zXY=hqCpN1s9$^$}JLVj5Oig=EJ^ z5d(?>`HJZ4J=*V-e@-B)jPajU=yhve4`(Z!TwG?3ZuD$nH%6hIZMABMm!fu@#GD0c znh+esUg__aB(sMR$7W8 zACrB62#M5LZx)7ECpm>qN~@@n`K&#;ll{*B7bBd31G%kK9xyt`zza>aNPinQXXm7L{LVd^aw;~#w z+)Lz|RP&zv_@~T;!BJNK4D7I`R{!QApr@I{w{*IA`NYG+L+e>Q*=jB1(HVGw4q%UH z;R}Vw){>nmJ%z_E;XoUrvSMSY$q~Ri03vKE=Sbey#wneSb7?VFeYY^)-5~tK@D3hr z7gWVB8vKxP==H0PzV+{iiFF?qJ*>PsUc%AUp+CLB>LT1gpioA@GB~Kr0Y*WdQ5 z%-t8D9oNLO7_?A^RF$wMYIBU}U3 z#|WcLuk53=#jvhf(wcY+R?V%9l||L6MfWm0{1-Z^T?Ec@W=lwP>E93ajV;OmLob|T z_UYPLe(ekf@cuxSM!LT68*e}BQpQH)CB^9DtiA=a8b2E?uhJ@gR;x&qFRgU#A(m-b zE(g9VOACev!linl==TRW`BEH!z0l;_cJ(FrlTEZ}BXJA6bsumax96=SBwPfoA9?|# z7SvRVwR}J}Vw?@Zx zYNa1U!pBE8AB?wa6%jmhf`6bc9Gh2{{ZWNlwX7CX_+3RNL?l+n!)_iz3rM_5Q}d1- zWxMpnQvBaWd{>3Xhx;*m*4Wr0Q!#5PN?J<`GR&HGX=w|27KQ=vR*R)btpYu^zfyC` zc6F?|>t^vK;452s*{X~ANC#OGGEn;@BqaQ6o5u(vG)t#L+X(QqFs1&65(>RqSY555 zC;eBB7)TjIU0-qcc-$BK8HkS|Hi|IZCrknmHFh4GmsR2P{@mTr=g}Sp?YS*|=n-tt zjZ0aOLY3=%*YoI~h)zSup+1wf4P9HtDUm&57rql8jf>Z^S1C3V;W~THOwoN?GeVKR zK!8{2(t$bKQ7!AoiKlu2{^id<$~xP9Y{Y6YUi3yK1O+!T_06c`OQI#sI;Y1revKkn z=<0W43~1s5J!+y4up7Q^y&vX(zjq&lTA34S*C+doP+gs!*+kE5wzg^&5Icv1Q-Pb$ z2Oz1XJ@4B}9%~lK9K+qgY>scBG!@6FR7F*ruj!5xhklUC>rs+NU9Fc|8vK@^lvST} zpACJhxU8Rd4SwiKSsZ_!ET^G8qafAw?OXYj5T5E4%!H3I@7dg^zuDU@jcF<}P0i;$ zWv9QY)_tk`5kPjA4HbiK4b%DHW$|L*z6}ujVcI@8H>W2@nx%d#H1b3Jk7ESMFRXL`ue}3tpmL1b1~77) zwfpp3C}jT~HZwyGQHIB5OV!#SIj6PZ2-|bQGFIXb29X)^Z1SK#Si$h()cZ^I+OilT%Y#q=fFe)c%+d; z(TIVj$=7jYY(-S)gxo%Pzl{lcexR%^ExmVkPI8?8;qK)%u((LlznLnST*cMHQtDNX z-yK9!JZ)c13(`nDXfmpa2eG=cn#ggp3f1L-N*PP0?SY1zp}Bd*@`;|UaFT zTfeF2=|cfIxmy(o$OHARwL~6&^h%Yk)bO55eXDdka+sPQ%Z>2tlPZw92*FG^yFbDN zwN+-W2Nc+VNQItoDUFQ?Gz9cJ z;Yz2!39D9U4{md%k3@}FUn*z91y=vkR5yjIV-E8s`3Zcxzj6d>djYTxADWo|7E=NT z392Z&>4?S}LJOYkYjC z&!kNyH3#ETpUdJ%mgCdjyF2J7!IDPbJ;}MH#JbKvz?01p3djW9~%! z3i_d=Xv8DcExTEkL2;jZ_1v$z=hb$%h5JAdao{C&a&p2?07R>cPJ^=*>i*{&QkjMv zcCXEI-A*TtN^p|+a(;y^b)at{t5>4@0s=yUg2l6kth_WvS4B2|i%)%8AxKk3R!b4L zmPL}}=_RWuBfY(w`Z131Pvlg`{D&boq-{+6x4WYmEdIKSC>pE}N;=ag<}32L(@)u# zX7!gez$qrYMDE{=6A&vZ%{G+DhJ1B)`5;PkF~`WG zhVF?$7z_p!gJ|B5ztGk%ao>u_6U%85w3af`fFoF%LIb;{u+RTh)i$)ZD+6pxd`Udx zA2GOpJ2rna`Wi^5)=oXLdFa{iM1YzXX=C>{Frm(sf3w1D`q`B?htS$6jX9EmS1U~C z_dziO5+rZSE@p4&DuZ8nsUqc<8w_y&~f9a`{`v#(3+`<8p+qW{C0<9_C5LqTeE;<25XO5tsU&9Ca6RY%YYpT98dZpm*)P- z`Y)6YJMO*9y3EGNWpmU1`!E$IO2CD=ta1t2phyi|KIBsYj&EZcB-71#c0@?Z%R8u{ zchJKQQ!e$xO~&Sbqw_`n z`yj@|lS!U`Y#^ZL5BjK?o6u@dtet^4+G9ZJ=vyPlfEpiGd$QLr4TtTBb7bD#E3&xQ z_iTPg;%L6whxI&)LZv#(vK#h5y78-bvZ31Cd_fy)W6UbRo30lY{O}y|w_4v^>*td% zf9m{M>9l=aOUuy1gRrC=t{&eD8w=>h6sbUf|6-o(l;?2c-1sTk2eD@}dh?6oLC6vE zS0Y`sP%URgUH_SQS%NaEc~U5h)5e=sF5|?P%$e>AM6I|IA}W+kqF_+?Th7V!5=;&%NvcsN9nGI-i;`@z&Ri*m zxr?<9*JID1G3JQpygxv_Wny1^CZ&vu47qAjlT{!K;Z`Ni_UR61STsMXTXlf{EnTvL zubP~Ncy~hoe73eD<~sPt#My;Rmg%wf=0aT5kQ3Bk7?S%{KlkFF4am5?B?QE2{?18B zvNO-zaRN|Q$k89uO9ockHX0)R+eMaqT&SLZU0Naq;MS(w@XL$1Yu7!!YxgsMMMZ_~ ztt(xKGHEqbYV~WYe`o*USI4LSF$*m$9E%AYmFOG$)!j`}cOfZHUW&+m4Z~&S%)-af zSkeTBuSPsu+-ih+2U^e>$8d8(uj16r?0>KPJ@Za4MDVZ7nW~^s4L;&z{HG$#K7Avc z(60919BPxph(Cjh)ZV=>{aZ|d_;*i2_ZP+9(%cJ%@p{*UoATwSWc@C2->Ww$vF+8J z4U@kE8FtLfY7ouD7tsU%K9~lQmH#1_sZ)V>QnG9d2Z+DH?F&es<=L$586wW}ClClL zSV>k&=k`|O?o_oF^|>sN8`wRIeNa_7(_YF#4Oe@M`u8)#cn+>(D2#efPog+pLah=1$LgU z2r$T8jfCwMar9Th>+#jCA=Gv~FvHH)_g!CaT}d!w^#`AvNQ&3iQ}=~(Mi(AWy(zuz zT(1AuMc|+bq5k@`AtIo7T7oH6+J zq>Tgd7w?0i1Hn^DoxM4#wE7Gxd~Ub`%lRQhAzNjVDB;PXLaWsFj ze%ED=v}+SdwOsEiE`#dA*5s({xOQ>uBYQpOhZdTos?9b;n&YotLv(Wdc9fdujq;)IGx+s$Uq|8i5*Y^( z#g@skd)SOk+nl7cY8?-hiq9&mg5Z25NOtAG_d1i&Nh_|lMzW1+2L*V*ac?z zpy4`;w(`dC8rR+T%)P$1e#=44P0d&X8Ln%GjW2!)36FOA!jIXzeq;tmgkAh1wJ9jl zo5wBP-O!5*uI&rIFJtDAk+n5|?@CTiCJdQB@qr@-mT5f9Nk|&p>%?D0sh(wn#vFB` z9=F|^Ydw5Lj-!;jzO+>^mssz<*d5t__8_u^1A?6fSo%RGPg$IsUw@O4Kkq_68NJK+ z1|MMRZk9m9FTz%c$*?Q9@%KltHYvjAhI^>I)w}pEKulOSK6RuG59(yxnG48PJJ`+) z@2W#(=SLXjmeJ!sVpDj?n3h8*W|b%8Xh<|P!wyq%@UXEbKd!rAFyA!e-5lR3I=u0> z<)&=%WPF%_8T5{X2l8Bz-k4CovA@%}8uB^<>+OMj+~;?2+1#~U0eGJ~2wX69Sl{*(o36-#6q zMVzTxGXNlMGScn&A%OYNr4CfPR#sMW^5B138f*)#hRx=_(?xpTs; z`0pvQ#Yn>*hsg{dV#Le$LrqQVLSEf}+-+P(nBh;MB1o%e8A{mm8WDxgJM!Bjg;<_y z-;yw*&+71ucy6sc5EK7AtADLGCwy5pcPsrc>GSpIb=cAS)|<_Sn#h^m!?f9E^^>{GnU2QZ*Mi6 z8Gf=PuxZ+x8NYk#r+A_F>Rs>ceFI7c1%2m~_w?o2&J6WW-+LX7D;i(DaC+`C_`>og zC?)U6G)Nt=kN-EGsne~)UpzjVFwz)2~;-GwRT>U%}HywdGQQzsWl}=;j|C zy-HHIFQSyvN)x3}wR2uYQ+Su@#Y710gW+~&oSj!CF2&|Zah@5=D3GaSH}~}U@przm zqA}_k5VNS-@(x}tyrc_&U(ZP;ZYJ9}{}o+7peJrIti1`nLuq%i5vu6+i%=p$cx6@( zR))_Kd3HAJ$wHW%oU9Bp^F591Tk;JI%p((U!IqmQK zV_zRI&u-<(Nm|bTFHF`nT=$e69KqE-{U%d+y_BKHO6HQ!MwR^3#9{?bq)ttn(2Hzh zw8*f|hvE(@LB8tn#SeMzJ+r}K+n9&#zX_tg5R*E1l`?!wOB<-X4X7*sW&cmyhpdrgL7T$P^y^yKKEwXie5=;HAHA(*&~vVs?zSs zXQj5Sd+@eseQ#5KTxK`-g`C`M@XQHd%0o*1WRYX3=U=z@p1MD{-A}$#`B8an4)|%$Aa{6w6;gl>=inZe#6hvUw8$NK0@t|>e z)FDBg4smZkWBf}(q)s6dF9q~1!1)belQSqRR1i`r8ZV2MCKgj)zN%qhfve?wG!e37N+!F<<% z&K86%&HzXk26%pBNuZy*@H}FR|9Wwr?1^zws5I`@@`LTMo(;@!2xRy01^eDphyI=5 z-&Vu74G^%{^CBJa^`Krw95vQk_*M|x*v6U`XCGE^usM6)$94MVlQTnkGwui|?hT^c zL__Jlxlqa1Qr>_|l05)^o&v#vkaZHP^$XHQ8Zye~V*n^@MoNoUOO8(ASW6rz^sVx~ zf_0MS&UW6A_`oyq5RV7^S#+H*)wK}LYL(67NdmwcICd-lMAP_U)_up?zb;13ll;IM zn|FXg6Y$wXh}p}cGrmoLuT(C52)f-NXM>5$ojazFF}-8>ath#1Q)HQ`lkAAj+SFc* zcwW3sZytD4lp1`t{d9EPP8B+D@@D3D^p)z~VwVQ;Oh{BO$K5w<=f{ur*vp&33M+-- z*Y>}mK2Wd*9Mf+xzZwPSX<6@sk8MeadaS>vIg#CVlJVjuWU*(6C;FEp(~~=6--lzP ztVpo}`BCpp7pKIYCjlW+YZ1}=yHDnwaTcgl{-hknVQp?=3@YS8jSih!mg4LcfSLGw zvKd(gF5OHO&Q7~bjA%k*PRp{7FpBL975gN4P! zIq4dBED`}a)669=iLNT9x9muMk`01_n>&e~`XYGCb{$5fu}I!`a@@SVYCwxOnV-5S zf9tJp;R+YNt$hiNU2W_8mW6gT_xee0XIl$tCuHs|d`N~c&Vx235Pn>6qR+Vuc?mIk zNIVba;;k`#>3`6+b+jpklS5u$VWlxhI_2dFo=saS7c$$edCrlC!%C&}J`dgUN+U&8 zta{^pY0ZATY5K&8hNE3pM-H3)zEEu{0{hn+qPzi15voQ&3KWpz>+97EiePeE()UH&MMv-+C+ z)>ZXCc7!MWs?$c_L%mHNdHt>x_HqMsTmZQQ1EW@)E0(+}7SX#r*Hjj}s1?$QN%|%o5QlM~_FshIp=A%(2010=k&U|WoPzAqGHo?)qvy6p`4LJ$ za56g?;r2;kZi6uwU0(%vzG50N9hP$goAG!p=GN9QHHxBAPl7rnl#UFk(Em2l?q(-+ zMp{B?7HgJ9G?J`~o`SQj_wepJ=ueJyB9ERtrEp<=;oWyzH{+HlB|6$^TW@P_^o*KN?rA^fC7n literal 0 HcmV?d00001 diff --git a/css/base.css b/css/base.css new file mode 100644 index 0000000..8626bbc --- /dev/null +++ b/css/base.css @@ -0,0 +1,89 @@ +/* base.css */ +:root { + --background-color: #f0f0f0; + --text-color: #333; + --card-background: #ffffff; + --button-background: #007acc; + --button-hover: #005fa3; +} + +body { + font-family: 'Sorts Mill Goudy', serif; + background-color: var(--background-color); + color: var(--text-color); + margin: 0; + padding: 20px; +} + +.container { + max-width: 600px; + margin: 0 auto; + background-color: var(--card-background); + padding: 20px; + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.1); + border-radius: 8px; +} + +h1 { + text-align: center; + margin-bottom: 20px; +} + +form div { + margin-bottom: 15px; +} + +label { + display: block; + margin-bottom: 5px; +} + +input, select, textarea { + width: 100%; + padding: 8px; + box-sizing: border-box; + border: 1px solid #ccc; + border-radius: 4px; + background-color: var(--card-background); + color: var(--text-color); +} + +button { + display: block; + width: 100%; + padding: 10px; + background-color: var(--button-background); + color: white; + border: none; + border-radius: 4px; + cursor: pointer; + margin-top: 10px; +} + +button:hover { + background-color: var(--button-hover); +} + +#csv-output { + margin-top: 20px; + height: 200px; + background-color: var(--card-background); + color: var(--text-color); +} + +footer { + text-align: center; + font-size: 0.5rem; + color: #666; + margin-top: 0px; + padding: 1px; +} + +footer a { + color: #007acc; + text-decoration: none; +} + +footer a:hover { + text-decoration: underline; +} diff --git a/css/components.css b/css/components.css new file mode 100644 index 0000000..2350708 --- /dev/null +++ b/css/components.css @@ -0,0 +1,106 @@ +/* components.css */ +.mana-icon { + font-family: 'mana', sans-serif; + font-size: 24px; + cursor: pointer; + padding: 5px; + margin-right: 10px; +} + +.mana-icon:hover { + opacity: 0.8; +} + + +.menu { + position: relative; + display: inline-block; +} + +.hamburger-menu { + cursor: pointer; + font-size: 30px; + color: var(--text-color); +} + +.menu-content { + display: none; /* Ensure it's hidden by default */ + position: absolute; + top: 40px; + left: 0; + background-color: var(--background-color); + box-shadow: 0 8px 16px rgba(0, 0, 0, 0.2); + padding: 10px; + z-index: 1; + min-width: 150px; + border-radius: 4px; +} + +.menu-content.show { + display: block; /* Display menu when toggled */ +} + +.zoom-modal { + display: none; /* Ensure modal is hidden by default */ + position: fixed; + z-index: 1000; + padding-top: 100px; + left: 0; + top: 0; + width: 100%; + height: 100%; + overflow: auto; + background-color: rgba(0, 0, 0, 0.8); +} + +.zoomed-image { + margin: auto; + display: block; + width: 80%; + max-width: 700px; +} + +/* Dark mode styles */ +/* Dark mode styles */ +body.dark-mode .menu-content { + background-color: #333; +} + +body.dark-mode .hamburger-menu, +body.dark-mode .menu-content label, +body.dark-mode .menu-content input { + color: white; +} + +.card-popup { + position: fixed; + bottom: 20px; + right: 20px; + max-width: 20%; + z-index: 1000; + background-color: rgba(0, 0, 0, 0.7); + padding: 10px; + border-radius: 8px; + box-shadow: 0 4px 8px rgba(0, 0, 0, 0.2); + opacity: 0; + transition: opacity 0.5s ease-in-out; + display: none; +} + +.card-popup img { + width: 100%; + height: auto; + border-radius: 4px; +} + +@media (max-width: 600px) { + .card-popup { + max-width: 40%; + } +} + +@media (max-width: 400px) { + .card-popup { + max-width: 60%; + } +} diff --git a/css/themes.css b/css/themes.css new file mode 100644 index 0000000..55fca66 --- /dev/null +++ b/css/themes.css @@ -0,0 +1,102 @@ +/* Light and Dark mode base theme */ +:root { + --background-color: #f0f0f0; + --text-color: #333; + --card-background: #ffffff; + --button-background: #007acc; + --button-hover: #005fa3; +} + +@media (prefers-color-scheme: dark) { + :root { + --background-color: #1e1e1e; + --text-color: #ffffff; + --card-background: #2e2e2e; + --button-background: #1f6fb2; + --button-hover: #145b8c; + } +} + +/* Mana Color Themes */ +.theme-white { + --background-color: #f9f8f6; + --text-color: #1e1e1e; + --card-background: #ffffff; + --button-background: #e5e5e5; + --button-hover: #cccccc; +} + +.theme-blue { + --background-color: #d7e7f9; + --text-color: #002d72; + --card-background: #e0f2ff; + --button-background: #007acc; + --button-hover: #005fa3; +} + +.theme-black { + --background-color: #333333; + --text-color: #ffffff; + --card-background: #444444; + --button-background: #1f1f1f; + --button-hover: #000000; +} + +.theme-red { + --background-color: #fbe4e4; + --text-color: #8b0000; + --card-background: #ffe5e5; + --button-background: #d32f2f; + --button-hover: #b71c1c; +} + +.theme-green { + --background-color: #e7f4e7; + --text-color: #004d00; + --card-background: #e0ffe0; + --button-background: #388e3c; + --button-hover: #2e7d32; +} + +/* Dark Mode Variants for Mana Themes */ +@media (prefers-color-scheme: dark) { + .theme-white { + --background-color: #1e1e1e; + --text-color: #ffffff; + --card-background: #333333; + --button-background: #555555; + --button-hover: #777777; + } + + .theme-blue { + --background-color: #001f3f; + --text-color: #ffffff; + --card-background: #002d72; + --button-background: #005fa3; + --button-hover: #007acc; + } + + .theme-black { + --background-color: #000000; + --text-color: #e5e5e5; + --card-background: #1c1c1c; + --button-background: #333333; + --button-hover: #555555; + } + + .theme-red { + --background-color: #330000; + --text-color: #ffaaaa; + --card-background: #8b0000; + --button-background: #b71c1c; + --button-hover: #d32f2f; + } + + .theme-green { + --background-color: #002200; + --text-color: #ccffcc; + --card-background: #004d00; + --button-background: #2e7d32; + --button-hover: #388e3c; + } +} diff --git a/index.html b/index.html index ff0e330..b9bdfd9 100644 --- a/index.html +++ b/index.html @@ -1,28 +1,33 @@ + MTG Card CSV Generator - + + + + + - - + +
@@ -69,11 +89,22 @@

- + + + + + + + + + diff --git a/js/api.js b/js/api.js new file mode 100644 index 0000000..5c81406 --- /dev/null +++ b/js/api.js @@ -0,0 +1,37 @@ +// api.js + +export async function fetchCardSuggestions(query) { + try { + const response = await fetch(`https://api.scryfall.com/cards/autocomplete?q=${encodeURIComponent(query)}`); + if (!response.ok) { + throw new Error('Network response was not ok'); + } + const data = await response.json(); + return data.data; + } catch (error) { + console.error('Fetch error:', error); + return []; + } +} + +export async function fetchCardDetails(cardName, setCode) { + const response = await fetch(`https://api.scryfall.com/cards/named?exact=${encodeURIComponent(cardName)}&set=${encodeURIComponent(setCode)}`); + const data = await response.json(); + + if (data.object === 'error') { + return null; + } + + return { + set: data.set.toUpperCase(), + card_id: data.collector_number, + mana_cost: data.mana_cost || 'N/A', + power: data.power || 'N/A', + toughness: data.toughness || 'N/A', + type: data.type_line.split('—')[0].trim(), + rarity: data.rarity || 'N/A', + price: data.prices.usd || '0.00', + imageUrl: data.image_uris ? data.image_uris.small : null, + name: data.name + }; +} diff --git a/js/card.js b/js/card.js new file mode 100644 index 0000000..5ee6d2f --- /dev/null +++ b/js/card.js @@ -0,0 +1,68 @@ +// card.js + +import { updateCardDetails, loadCollection } from './storage.js'; +import { showCardPopup } from './popup.js'; + +export async function addCard(cardList) { + const cardName = document.getElementById('card-name').value; + const setCodeInput = document.getElementById('set-code'); + const cardIdInput = document.getElementById('card-id'); + + let setCode = setCodeInput.value; + let cardId = cardIdInput.value; + + const cardDetails = await fetchCardDetails(cardName, setCode); + + if (cardDetails) { + if (!setCode) { + setCode = cardDetails.set; + setCodeInput.value = setCode; + } + if (!cardId) { + cardId = cardDetails.card_id; + cardIdInput.value = cardId; + } + + const cardData = { + name: cardName, + set: setCode, + card_id: cardId, + quantity: document.getElementById('quantity').value, + foil: document.getElementById('foil').value, + mana_cost: cardDetails.mana_cost, + power: cardDetails.power, + toughness: cardDetails.toughness, + type: cardDetails.type, + rarity: cardDetails.rarity, + price: cardDetails.price + }; + + updateCardDetails(cardData); + cardList.push(cardData); // Add the card to the list + showCardPopup(cardData.name, cardDetails.imageUrl, cardDetails.price); + } else { + alert("Card not found with the given name."); + } +} + +export async function fetchCardDetails(cardName, setCode) { + const response = await fetch(`https://api.scryfall.com/cards/named?exact=${encodeURIComponent(cardName)}&set=${encodeURIComponent(setCode)}`); + const data = await response.json(); + + if (data.object === 'error') { + return null; + } + + return { + set: data.set.toUpperCase(), + card_id: data.collector_number, + mana_cost: data.mana_cost || 'N/A', + power: data.power || 'N/A', + toughness: data.toughness || 'N/A', + type: data.type_line.split('—')[0].trim(), + rarity: data.rarity || 'N/A', + price: data.prices.usd || '0.00', + imageUrl: data.image_uris ? data.image_uris.small : null, + name: data.name + }; +} diff --git a/js/csv.js b/js/csv.js new file mode 100644 index 0000000..314a930 --- /dev/null +++ b/js/csv.js @@ -0,0 +1,44 @@ +// csv.js + +import { getRandomWordsFromFile } from './randomWords.js'; + +export function generateCSVContent(cardList) { + let csvContent = "Card Name,Set,Card ID,Quantity,Foil,Mana Type,Power,Toughness,Type,Rarity\n"; + cardList.forEach(card => { + const escapedValues = [ + card.name, + card.set, + card.card_id, + card.quantity, + card.foil, + card.mana_cost, + card.power, + card.toughness, + card.type, + card.rarity + ].map(value => `"${value.replace(/"/g, '""')}"`); // Escape any existing quotes by doubling them + csvContent += escapedValues.join(",") + "\n"; + }); + return csvContent; +} + +export async function downloadCSV(cardList) { + const csvContent = generateCSVContent(cardList); + const randomFileName = getRandomWordsFromFile(); + + // Create a blob with the CSV content + const blob = new Blob([csvContent], { type: 'text/csv;charset=utf-8;' }); + const url = URL.createObjectURL(blob); + + // Create a temporary link element + const link = document.createElement("a"); + link.setAttribute("href", url); + link.setAttribute("download", `${randomFileName}.csv`); + document.body.appendChild(link); + + // Trigger the download + link.click(); + + // Clean up and remove the link + document.body.removeChild(link); +} diff --git a/js/main.js b/js/main.js new file mode 100644 index 0000000..2d020d3 --- /dev/null +++ b/js/main.js @@ -0,0 +1,93 @@ +// main.js + +import { addCard } from './card.js'; +import { downloadCSV } from './csv.js'; +import { saveCollection, loadCollection, clearCollection } from './storage.js'; +import { setTheme, applySavedTheme } from './theme.js'; +import { fetchCardSuggestions } from './api.js'; + +document.addEventListener('DOMContentLoaded', () => { + applySavedTheme(); + + let cardList = loadCollection(); + + document.getElementById('add-card-button').addEventListener('click', () => { + addCard(cardList); + updateCSVContent(cardList); + }); + + document.getElementById('download-csv-button').addEventListener('click', () => downloadCSV(cardList)); + document.getElementById('save-collection-button').addEventListener('click', () => saveCollection(cardList)); + + document.getElementById('clear-collection-button').addEventListener('click', () => { + if (confirm("Are you sure you want to clear your collection? This action cannot be undone.")) { + cardList = []; // Reset the card list + clearCollection(cardList); + updateCSVContent(cardList); + } + }); + + document.getElementById('card-name').addEventListener('input', async function() { + const query = this.value.trim(); + if (query.length < 2) { + document.getElementById('suggestions').innerHTML = ''; + return; + } + const suggestions = await fetchCardSuggestions(query); + const suggestionsDiv = document.getElementById('suggestions'); + suggestionsDiv.innerHTML = ''; + + suggestions.forEach(suggestion => { + const div = document.createElement('div'); + div.textContent = suggestion; + div.onclick = () => { + document.getElementById('card-name').value = suggestion; + suggestionsDiv.innerHTML = ''; + }; + suggestionsDiv.appendChild(div); + }); + }); + + document.getElementById('sound-threshold').addEventListener('input', (event) => { + const soundThreshold = parseFloat(event.target.value); + localStorage.setItem('soundThreshold', soundThreshold); + }); + + document.getElementById('hamburger-menu').addEventListener('click', () => { + const menuContent = document.getElementById('menu-content'); + menuContent.classList.toggle('show'); + }); + + const isDarkMode = window.matchMedia && window.matchMedia('(prefers-color-scheme: dark)').matches; + if (isDarkMode) { + document.body.classList.add('dark-mode'); + } +}); + +// Update the CSV content in the textarea +function updateCSVContent(cardList) { + // Sort the cardList by set and then by card ID + cardList.sort((a, b) => { + if (a.set < b.set) return -1; + if (a.set > b.set) return 1; + return parseInt(a.card_id) - parseInt(b.card_id); + }); + + let csvContent = "Card Name,Set,Card ID,Quantity,Foil,Mana Type,Power,Toughness,Type,Rarity\n"; + cardList.forEach(card => { + const escapedValues = [ + card.name || '', + card.set || '', + card.card_id || '', + card.quantity || '', + card.foil || '', + card.mana_type || '', + card.power || '', + card.toughness || '', + card.type || '', + card.rarity || '' + ].map(value => `"${(value !== undefined ? value : '').replace(/"/g, '""')}"`); + csvContent += escapedValues.join(",") + "\n"; + }); + document.getElementById('csv-output').value = csvContent; +} diff --git a/js/menu.js b/js/menu.js new file mode 100644 index 0000000..634f111 --- /dev/null +++ b/js/menu.js @@ -0,0 +1,4 @@ +export function toggleMenu() { + const menuContent = document.getElementById('menu-content'); + menuContent.classList.toggle('show'); +} diff --git a/js/popup.js b/js/popup.js new file mode 100644 index 0000000..11e52f7 --- /dev/null +++ b/js/popup.js @@ -0,0 +1,40 @@ +// popup.js + +export async function showCardPopup(cardName, imageUrl, price) { + const soundThreshold = parseFloat(localStorage.getItem('soundThreshold')) || 1.00; + const cardPopup = document.getElementById('card-popup'); + + cardPopup.innerHTML = ` +
+ ${cardName} +
+ ${cardName} +
+ Price: $${price} +
+ `; + cardPopup.style.display = 'block'; + cardPopup.style.opacity = 1; + + // Check if the price exceeds the sound threshold and play sound + if (parseFloat(price) >= soundThreshold) { + playSound(); // Play the sound if the price exceeds the threshold + } + + // Dissolve the popup after a few seconds + setTimeout(() => { + cardPopup.style.opacity = 0; + setTimeout(() => { + cardPopup.style.display = 'none'; + }, 500); + }, 3000); +} + +function playSound() { + const audio = new Audio('assets/cash-money.mp3'); + audio.play().then(() => { + console.log('Sound played successfully'); + }).catch(error => { + console.error('Error playing sound:', error); + }); +} diff --git a/js/randomWords.js b/js/randomWords.js new file mode 100644 index 0000000..db17189 --- /dev/null +++ b/js/randomWords.js @@ -0,0 +1,32 @@ +// randomWords.js + +export const randomWords = [ + "nonstop", "detailed", "aspiring", "shock", "play", "bashful", "long", "quarter", + "six", "charge", "dock", "crabby", "dime", "wry", "story", "wiry", "rampant", + "return", "dare", "open", "shame", "many", "brush", "babies", "stem", "squeeze", + "judge", "heavenly", "defeated", "optimal", "invention", "object", "change", + "sink", "verdant", "jaded", "adjoining", "muddled", "switch", "helpless", + "motionless", "skirt", "shrug", "trip", "haircut", "oven", "lip", "habitual", + "yielding", "bag", "wheel", "attach", "ticket", "visit", "reflect", "suppose", + "present", "wound", "voyage", "real", "aunt", "religion", "redundant", "necessary", + "fail", "flower", "unpack", "join", "gamy", "tired", "welcome", "rightful", "jeans", + "obscene", "spring", "basket", "battle", "utter", "descriptive", "caring", "fry", + "resonant", "supply", "geese", "pets", "impulse", "scintillating", "tame", "release", + "tail", "depend", "lively", "nondescript", "punishment", "meek", "crooked", + "representative", "twist", "manage", "bored", "grotesque", "demonic", "camp", + "temporary", "coil", "passenger", "appliance", "clam", "smoggy", "tasteless", "guess", + "verse", "drab", "peep", "business", "paper", "female", "admire", "way", "moor", + "breezy", "opposite", "comparison", "tank", "suit", "ludicrous", "minister", "stiff", + "whine", "request", "camera", "internal", "improve", "unnatural", "decisive", "exist", + "grip", "electric", "bathe", "scandalous", "steer", "humdrum", "action", "rot", + "roll", "quartz", "amused", "sidewalk", "roll", "curve" +]; + +export function getRandomWordsFromFile() { + let randomWordsSelected = []; + for (let i = 0; i < 3; i++) { + const randomIndex = Math.floor(Math.random() * randomWords.length); + randomWordsSelected.push(randomWords[randomIndex]); + } + return randomWordsSelected.join('-'); +} \ No newline at end of file diff --git a/js/storage.js b/js/storage.js new file mode 100644 index 0000000..3b695d4 --- /dev/null +++ b/js/storage.js @@ -0,0 +1,24 @@ +// storage.js + +export function saveCollection(cardList) { + localStorage.setItem('cardList', JSON.stringify(cardList)); +} + +export function loadCollection() { + const savedCollection = localStorage.getItem('cardList'); + if (savedCollection) { + return JSON.parse(savedCollection); + } + return []; +} + +export function updateCardDetails(cardData) { + const cardList = loadCollection(); + cardList.push(cardData); + saveCollection(cardList); +} + +export function clearCollection(cardList) { + cardList.length = 0; // Clear the cardList array + saveCollection(cardList); // Save the empty list to localStorage +} diff --git a/js/sw.js b/js/sw.js new file mode 100644 index 0000000..27567c9 --- /dev/null +++ b/js/sw.js @@ -0,0 +1,54 @@ +// This is the service worker with the combined offline experience (Offline page + Offline copy of pages) + +const CACHE = "pwabuilder-offline-page"; + +importScripts('https://storage.googleapis.com/workbox-cdn/releases/5.1.2/workbox-sw.js'); + +// TODO: replace the following with the correct offline fallback page i.e.: const offlineFallbackPage = "offline.html"; +const offlineFallbackPage = "ToDo-replace-this-name.html"; + +self.addEventListener("message", (event) => { + if (event.data && event.data.type === "SKIP_WAITING") { + self.skipWaiting(); + } +}); + +self.addEventListener('install', async (event) => { + event.waitUntil( + caches.open(CACHE) + .then((cache) => cache.add(offlineFallbackPage)) + ); +}); + +if (workbox.navigationPreload.isSupported()) { + workbox.navigationPreload.enable(); +} + +workbox.routing.registerRoute( + new RegExp('/*'), + new workbox.strategies.StaleWhileRevalidate({ + cacheName: CACHE + }) +); + +self.addEventListener('fetch', (event) => { + if (event.request.mode === 'navigate') { + event.respondWith((async () => { + try { + const preloadResp = await event.preloadResponse; + + if (preloadResp) { + return preloadResp; + } + + const networkResp = await fetch(event.request); + return networkResp; + } catch (error) { + + const cache = await caches.open(CACHE); + const cachedResp = await cache.match(offlineFallbackPage); + return cachedResp; + } + })()); + } +}); \ No newline at end of file diff --git a/js/theme.js b/js/theme.js new file mode 100644 index 0000000..d57cfa1 --- /dev/null +++ b/js/theme.js @@ -0,0 +1,19 @@ +export function setTheme(theme) { + // Remove all theme classes first + document.body.classList.remove('theme-white', 'theme-blue', 'theme-black', 'theme-red', 'theme-green'); + + // Add the selected theme class if it exists + if (theme) { + document.body.classList.add(theme); + } + + // Save the selected theme to localStorage + localStorage.setItem('selectedTheme', theme); +} + +export function applySavedTheme() { + const savedTheme = localStorage.getItem('selectedTheme'); + if (savedTheme) { + setTheme(savedTheme); + } +} diff --git a/manifest.json b/manifest.json index f45d790..09598b9 100644 --- a/manifest.json +++ b/manifest.json @@ -8,12 +8,12 @@ "description": "A PWA for generating CSV files with Magic: The Gathering card details", "icons": [ { - "src": "icon.png", + "src": "assets/icon.png", "sizes": "192x192", "type": "image/png" }, { - "src": "icon.png", + "src": "assets/icon.png", "sizes": "512x512", "type": "image/png" } diff --git a/offline.html b/offline.html index e0db80a..3e36e2f 100644 --- a/offline.html +++ b/offline.html @@ -8,8 +8,7 @@ - - +
@@ -27,9 +26,5 @@ This app is not affiliated with Wizards of the Coast or Hasbro. All rights and trademarks are owned by their respective owners.

- -