From e6bc8cbb6f4f114da893779559c6813eda74ce33 Mon Sep 17 00:00:00 2001 From: starlitskies Date: Thu, 2 Nov 2023 17:59:11 +0500 Subject: [PATCH] feat(landing): fix a few errors and add an insturction --- public/img/steps/1.png | Bin 0 -> 44913 bytes src/js/main.js | 79 ++++++++++++++++--- src/js/overlay.js | 98 ++++++++++++------------ src/scss/main.scss | 166 ++++++++++++++++++++++++++-------------- src/scss/variables.scss | 2 + 5 files changed, 228 insertions(+), 117 deletions(-) create mode 100644 public/img/steps/1.png diff --git a/public/img/steps/1.png b/public/img/steps/1.png new file mode 100644 index 0000000000000000000000000000000000000000..a81e0758100c768afc2c1a04efab1e22953e31ed GIT binary patch literal 44913 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�W2ljT_3w?M`p{Yg{JwAx zaxq!}A^;^qQ8V|c69O}#RRy7&boUa*+1;a5^rhQT_K4dcHAhvJ^VEL*D|Y!0*duP_ zu>bl_CdwST`vl=r;+BROl>Wx_(6!L>aED#5JX~_rZ84YItUVxUyGO&ob8q6!bOgV{ ztmR-)^HXkLMMpjIWs;kRpw9@rxZ#_Rhe{0KeW5jCc zo73`Ow9s{U-Mq<$ng}4Ei(%Cgr5Y$gbba7=5R*U0eDSaLGeHw&)lB6pz_EMdW2GY2 zSGVp=L5!!EFII-1#NJ_KY#P_{JlLX9=v;6-+*vj%?lkAQfQj>o-*Ewjv>qwPeDgFB z`P4#PU7e6#HXt}yr^;>nck*MMB6FoeQ@LFA=QcKDpB}w_`SRud=G@QvdS8G4^0Klg zCBA;SxmK_x_njqv?~^0g8K+TWxVILEX8xzr(l|>Ivv$e|k*ek8WwW-pN8dWy+fOFm zP!q{g=ku(cR^+frm>bXzcipg2+j?!7WP6;7K^41!dyXb|@~ijh$&VkRS~R&%i@n>6 zeGCeLK|w7oErz^x$-xvC7=zq4fAKZE8UJ|4S$}0^rQ*eM0-ufk@?f#}`FHBsH+jr| zN6<+gY%S1rUMGOFs5$tPt(L9MSyQBur$16)a&;gbu1njMboZH0aPZXuVIH0+ zaGc$u_CDei6nt;Fwvdset)t^`IZLl%r_^q$Ddx$OClvQA!+D)Q{dg9iCEgn&7_qU9 z?X2A5alWkRO7j=JilgJ>W;$@8Dv$jF#Y17wgZXW@Srad>lZm=FT2_{pmTtQ%a`)&E zJy~k05~0e<%D(=;7q_R&M32`DpFcmGOY-i`)roadfA(x5QP7!6*kgWvzCTlm&dkiL zH*m~jQ%+eKHBe~Q{F+Cu@F1S|x%!J2_eS%y3ez((=3bt=AS5KzbT5)Y;RG(EtfE37 zs*og%i;H`FwAm5wOu=K0fBkxa-IPSkIh73g;*t`EH-`s{c}@a}TV)qwaI6NL5Jdz( z0)%9Ui6;rIiE%G5=Zf0ztxZ%`3Q3UN@&yC2bniuL=p%+pIcbYz#KgqByo9s0IzB$Q zdGlsGp69b?&$PA4yF}!=E?mAwR1#DqNvx7C>pByyfxph8p{hzmPCi)WzWeFZCve4! zmoGd2=|-T^o-{W%Pv;?{qkDG8ylsq(>WY1f=K8-Hy^$XHYV@x#yTpOcgfytkBGT+Qahs+aiw05ve$nc%i*-9M6Sk-4i-QE$-~IZtX*J?J)i*Lp!NKb z$o@1T3kyqnsC)+cAnvq-UPnq7-4w>ihEWoq!`3IoeQQW++v7YjD;?cbeIQ}Zy`F51)t+pUfu--SE*N*GAg=B|<6eb_{mkiKmaaX&)8 z$}PeSnUQh2KbJ(itfH*^&1y*EBPvIWn~VHO$!$KqSj+St3oTqovMF5)ahNY&ypUZU zF-!84xE2)=vA)?MBJ+VuQE5B~8v{K|;IW0}TxglV&%CJ>q!P7khKHV)B6du zu{?;BA=%jL5IJpoa5Hm0Gv#hLZE@}3zkJ+Lp=ld3*_F1@D))5_=E&8FE5+ZxKP>o_ zDj9a2kWkC&Lt>(!(;u-NLMp1aV?X++;-|iR`C|Md(Dz8^Nx7JVlT!l=X1oK0y46}v zSB65QQ76yx!a_5bgix$MKKb3J7+TpGeT#YeRV`NE>}OhXa#+(tA>4Ab3WbliR0>Wh z_^d5Q%GD;LUP)tE8TR<>ojg?i#!De_;45fnBK#^`{S`k{k>kVN=F@FhV z*?BWrU$uzset6e6cb8Bt7UVjpO|9WIW-$m#$>^`1vmDhAVvc_0&H+A+q@P?ORUF^lw^Y z6O#zMi2UN>J7Xr>u1o!#qw-Cr8S;rip`kNY-{5eQAHQ*PbzQG^hrcBgz6!c#MaHXH zsTiHb9x8EV#k1{lW>FAsYIz)+>oNfYD$Y6b-MiAhUP#RPp4(~#muIu+Fl&rQo$T!m zM|xr(&G$+8`uLph)w*`=nzDTTued@$8})1iW5OTa!Em6eN75~Vq=!=3{ln!>i;bZaZYlD?W!ZoeWWX~KDJvGIC&$B7 zYgGkt_r%4;a||ao=Q>2(wgN1>@(e_*MfR>!A_9pHlODJ?3Iw|cOn%zt10kA!W%al9_+5xoD!F%UQxVpSAv)|Q4!Y#Kwz+FI{f4c-?NG&45dJ3Le|>8X;EGSasw9?Z;SwB|05gW9pY zw50h1i|OEo+tHq#wKcn|##{Kz5fp<-v#OoJ=Q$^lk&%9^1Pq*3b*o3@E6+%vc+KyeODx8PPh2}!9n{ZzeWqXb?4XV3&A8D z?-+LGJ742aROU+$Y`GmHWn!CzwN~2`c%Lspk^1@eCZ9FsA{#X|wWOpZQ+j$@+6O`B zw?ey35p-o`WyIJeaq2Vfb&JP;mfA>49ySdsk&xS*`SP*m92n}NkjGwly>zi=RH~CUnC|_kk%i)#*8r1 zt9TKrMNp?Hy5pJ^IW zv$JDR_;`DnlFJyYL@bfy3-#@Gf=uJz^y+K@t9W82I)%w?3{CkdJ*^v%{aU^QLTbLu z`J5+Vp(`VjItUPo9kukpH!B?t4UK|StJP1uyJwO;N<5->FLB3?>+jo z@l3ggmf*HrF&2m_oHYuJsp_H|MPm6vY4+jK(Kkp)7>d48(bT*5L~P^pR_WIuy6BUo z=On|Z(v4FinE#j#M}gvN7(-n~1JeF?8$UpqIezDF5^bCu=@@xA<9u;gdxdeqvrHDPd-t=m;zol zHa6hNqg3Vz`US?#Kq$(3H%^Ena`dYNz&(3=V-TC2lGLG;{K`Va(hFpnvW$vUQoNk1 z^p@d=NXZrlUb?cp?+kl>zoY!#a+^hMW7E!EC81)$1}`ysa2!nk=gUVC?{+CT7DmOP!+{&8&L z1r+S8yaK+c+;w~Dv%)0nHVH--ihw1n^HTEkR~kD}LS=)Q?kE#C$1N;v|HtmDgf$ zUM+%F0@XOvQF@|uS7f5~o$Li)eDR3j7SKR2j1!{T(m%bx*a)uvFy`O| zUd+b<2h4K$Wv{$&4v5eGcuOLS(<3F&9`T25Hk=PXNg@1^&0S{PH*8%qB>%AgKg@EB zIa#W)raQU`nmV7E^i)GL%Oubq38U|SM_7!F{`O<*L6w*k<|KV7^V8>S zSSGj@#vrb!$C^UR;P0%C|AzK2MnCwKf7=A%#eZg*G!UZCihX*JWVtBD6p{!L-m@++ zy0`oRIfIglVmBqwWn%XHawdPMqDL#x*YuU9qh6r*68>+KHNBN0{<6~_RLd;NIE20A z!Py^*6~&RAASJoVb)jb^;0Ut*$7+=nW9jL<)d%Cw=JP($qUD*Da-LT?32`BR*NmTB zsm?8(+|q-zn{8dhIJ0RMTKBq=9bL*En!&bsb3%ldN4fEHlp@g$Qc_ZKa&lr~Vk)X? z@GF|f{-7dAttOka#?VQ=1v(bf@3pfu0F_?D*zyhyE9+9Ef^h92px(hkGlijVR;_)v zeSbTTd6odu>ZzDHcEO<*t^{^Wf3v}!Qb+vO<4dEl#SP(ytfjwfci?-Fk*5hf-k z$|@`@zzN`mI=z)?yXGb2k4HV4{P=R@TjhnD&k^ATI56O8*yMSMk>Wr7)SbZD8QDNR zFA>$wyeT}9qkNDCSTw%iT)k>^?c4J{Yal9DiCOoyx)fSFin4xyY5@5(y>GE~D7*#p zzPkAB**3<`tDaE^dxWma{x>4I)B>G5(r<~Ye`mCbaDBqx4Cgh}2+tx#>FVlY;!#!F zj0tmnr16zc60QOpDy2%ey1S2+J6)ww&DAajSo-OCA0YcL0|Nt{ot=w)c_7M2U@Z?6 zW`IzEl?;ZX@s$WAciLUi^9_Ifx-L^G)op8jVtzg@A)y?Ka(@2Z4H4AH$T3hn3#dqt zCM+$NY-)~oj`khCM9|RCOaVgVHf@8l75Cb}Yu^NbEvzf2YXM&r3Jxwd_WIUV_ktr- z3C$Agn_Zn7l|F_63f&x34c zJ6Rv7OYx^K4Y0?I06_7i{uhr6rXt3i(KKRP;At9D19gVq2_4AdT2**4_N(U<~Z zs+)o@K7c?dY7Wfc@tbQ8VBviR-d5A~t|Gp=Kgo|igphHY_UAtXoAp{0gPM2<%=Nq-xGt^Q^LI|KN@j(N#kUz*)sWks0~s9NHjsg!Mx;h=H}**z*ACEc2>tu$7^5njd^tS_3Z+g$4UkVs3SIIyyQ!D=Vup&)pFawixK?X?@F`S4Tmsf`YDBP{Ui_tzWxEUItz@u^s{4vbkQy%xn%=w1l`gGA*qe1giV@`-g^fQade2 zEBS?mKkgqG**Z9YR#{w8aR@Ywj+Pc=6HsK;vmu08MX`4ANl2VGXXR$2p4Iu^xpSxC z=TAD{4cN;6$Ant zHR*lZaRBl5_Vze0tgWmPVF6K5zW5uPn}>h0^Q?zUze1eCIUMfqU%Ge^I89z!n(qvC z8FkptFzO@$C+1tXZr!;vGh|aECnfd$RHae&!|vlI`<$o_bY=nzmVtLqPfvpo=(sxS z2~5?ry;_yEMWr|@rDaN+wTxYkOic;NYuSHSL?mf9Yzu_d+18QT+KHBE7M&972AYdB zQPI)c0J>aVT!vu>ZSmXyeX6Ugv9ZyprnDAxXE=L45YiwI)A_zw9ZignC!?gSG-)M1 z!c~UwooS7g6c?Xx-rU$gYvv$CiFh7FnLN?f9&89E0cKzJtPay74RRm&)*C!(2`mWP z=a6NUl$3y@|44cXwgmOy0MbgrJ*xyU5h0hgrx3!!9M5I9|MVz)6eCz>z9lWy8hb2Y3 z?f?RQsEBEXLQ;E2M-uc9vh%8gBrm#f23sg0+2w3q9~f0?dsmRI68hd3W?H<^60R_x zRW|t*wo%!4peY0vj5Y9jR-KP8x~G#0ktdo_x!y>@Apha}I?g8e1}^DcjMIit_gjMX ze}FiJmXrhp1VAF^wH_v|+1lKcQBe4qk_!q4gd;ecnef|=B#~1{tk9v*DzVmkty1^l zzMUu|ln(2$>MF+tW%}e zC|8~0=1sXTX-&Y`YK%Gb%8jk8fO3c6{~0XK&dp_82rViqDjD-~hm*W6Xx7xy0&@2Y zaGSMO$e$oBW1jN=5Uu_Bcsr0nY;x|lfIz}PjqSvF(Wa3Ry#rQe&SBNa9JaFC3Qnbu zrTYK4GMLZ^bB@YoT4WW0^avEO@j`JQKeBJd z`o4K{S#&LyIt1UczB9Pi_84M?=`Umuj$ zL=kUc0f7VXKv5YsV^1L$PWwsBh&_Iq#FxjIi!PiNjCe0ZP?vv-n5X_h>65>lieHaw zXAq*5eTc-~_f22O+N*_Ye@RT#i=>y+94o`3(a`~N+qbo~g-%;ee{wXx{^;!F6c7-A zmGJVarFODv7fDq*h$rcJ0dJzBrVh({@J{2VpG0k~GTVj05}O+1=67vvZ2-$4N5c~L z4-Nn*>AK+wQEQzWTC+@BqyfTaUPXe|e6CL;q;0 zu%ncOD%w*hpW?hW30#iV$FKqC8t2O~p6?}aiu z&2w^cf`Wp?PHe;=2KFGylJi+F&CSKWd-p>ZB`YUa{Pip1_os7AavmNY5Kqc9C!$4# zg+`-Jj*d~hJRkRfdy$rPebEz~)yr9f_E9`tZ*MQ;tGYwD4ISNup*lqXHRQY&Yj2|y z5`x$iWMm>uZqL@fz6|eUwb9hk>EhAT)nzT&grXaVev$erf(kX)kwi^OD#gB3-*oJ< zW;k7s+~PRlKNs>7oz15qoG7oZ9KhA(SI8NPF~QCC~fV zZ{MB8WQgE7Dm5TR`C?UhX}02qS9 z>!&nJ@%So&hOVU434A!74t8|)+O=wr{S7FC1fnhk-}3S}x}L&;75D=T0e6-aDl92k z9Vlejv^F(0efEroY#I%P#+u;+fB~vN&1#E)+KL@|gMvawRh7rE9?O2~_wV1>g!EFJ zy!Y;@XLN;vw8#0qp}_jVUyP-9&; zXA=dSuDFNgTt8gQs{ur~4w%%>&+mcfL3dwYAEa;{-dD{{P2aohoSjANCVh*GogO}X z85Y(7xG60zAwIqg?hNEyP(T16QctFm5x^LM#A{<-vg&iN2&2XjJA3g}0Eht95f$}`AS5C8+X~s6yNECO>c`WQFI@Do64}5RnX<{s zvZBn02q&A~-=`hu#@T)q172&nABOm6l#XXLmGg2I7E6#&w&6V|8t! z4q6UqOq>>0;V>tktA5z4W3xTqNyo-!1tR|2w{O8f&&ZE9S~>QzE8+Y>0*dFep(?8u z;pTQ|iDH6QI4O^LI21WBa?RdkFcd&F^HONeLost6bu}9)1z=a8M1;xe7 z?Z88wft~=?gjhcX9unvFY$5R!?g8xy@HDFXwzt@e^($Vmt*Sk`M2+YB8!E7f!)zPm zj=nqtYKo`82_&DnN=!SPXM8-_m(5A@=HBg)G?@8*6Cqs7K)yieJ1&1jtN^|PG;s%9 zW*LlDX>|_cJI0^f3cwP-o??CdG=~h#=J|+8ne|0F`yn(Z@-j2AG|Vo*(}QiFgox@g zc^ZYZbT(MEGz%0IqkkdQu-29f)|MHO-ToIaKCw5>g_j;nQB$7cU!f_mM-WGAOzo%$ zJj;~H?#7|G*Vf#;0Qm#xF_VoB2F7?srM(oqYv!E>H&;z2YaZs=;}bo1b=c*Q@F-C& zzOpquBluI<9-+1_e*}VpvZDC2ICdLjs(eZ!wUnk$W^t`)^d*0V8}yh;cvRJZjqE_o588?aPD|3e;FF}T*|sJs9pBO@2ryGp_<9M|W}1+>3e^4m{K zCBIjEKk4Z0eG2?Y#c&FS9f0#ek4(JxoXK6&&os|lukOc0JdVSq^Zb!m$^{J(m2=OZ zKNl1fob`VL&=bgyF~|}veax3^*-8r0FO?%+wnRuox$28^b3Z*<0Lep@+MphT)SC?x z3e44Ss(iX&Py~6J=u3V3_Ll0ohs2F}2S(q5XcRQ=^87PVDUH{>iJjx3`U*(#*78t^ zvX_=6v}-{8FpV4Z1M%~L8xbjKDKu|4N}(wOzXuAX%{1~{KL0{(Xu;j6#~?3(0`3z| zFZTYPRSbs#dgz3EclZ4R_ZLaRp3tG|0%kKw2P7}?&6}SPJJ930XES;P9t^E(8_*~K zuZd%!1$dewkA3?MLAR!Gn%dgh_V)JO)v>YsXBYM{p1iB}JVZAw{&ar^Ty8$}Z5c8G z@L-s={6Bd1#=tO83=jw?fPXono^?E&f@ z8XN=}GBPzy_PwF@>MwVC z9+UzY`WQrSJP~`9`7P)x00A$D2^2KTl#|27!-Jewp`W+Av2g$Pxy z1yqDZkX*B~7vW53>F7X%4_;mOS4(JmY;cZUf*EhrD-G|hH zh$P5L(69lecl=GrEni5#N+9?EaD#pU3}jkb3ZLvvfusgj={@7p_u1K3AbCL@my?lk zUoP(Z@#9Bto`E-v1i>)I@OO}he!`>Cqg4Rk(C!9JK4{N%b#;}cy1TnOFZTX|K9YB~ zeyQyQBuGHahm*k^kitobiC=)w0`oGMmoG!ZYD&@+-fRVzh3W=vH3MB;%D2UE(fTmq z+M9s9Rnm;#_t|fV2?YaRnVFr1LtBAHjZM|II(RD#vs6I=hveA{j1dGBXkfK*Gt9Nc zZ?+4r);Bhyb1DotFfwKW0J@AvHGOR837uG5+cmHsyMAR8E}a;EMpdRzO-25%C5`1W*6^_3Qts zm<%)Iz&KQ{ewB7!pUq$qld$k;YwL5+a{wv8u~ueG?ZA){K!ebL0GPx9mxp5pc?4J@ zm|<&oH-pgv`VX-D2EL*X_pG#~q?$k{0stKy6LSyB9TfVBH|j8ZgywwUE0te~6=hvN z6GyX?B^bM6Ij1Y1znc>AN#XV(JeVuuRt4<+qw9Hfpa762!36yfm}B0jH)*D#Y0RaI3 zeD@l!V{pvU2O`jEfJ*@2xc`#I7r^)Q@^Y2^jP#N60VVV-dEpkBnVI6j#1msdfXDvT z63Fx3Ah%ZM=fO`!KlH#5iKD&!6}S)3dHD=MhuM&@u&^j3XVHIV0rK)}L`Bap@^|Ba zc#~gJk|gNNUX8Z_9{Dqr;!UJkWd;n99YY=hd{N(VPtaxU6Exfu6@Nn_+1%WO-rVHW zRAORc^Jxx9GL-jiF<9h%e}_`=k@J|ptRcS@Yf3AduHB{*YbtujtSx3qa{dkpxw=pg zh*fiwlW+utzKRe(&>aFYJ3TYwN9~0k2!NRM=#iq8d`tQ4#2y$2fSR|^sgZKusD3+A z?gZ5aJ=tXumC|F8nwl!;IRBCY2)!W$Zd;)^54jwSM1bK-N1%<_$8>dbUY-eJhb!q2 z2soW@TxL$+BDIi2l6OF0(=T^q+RTv;N&&qWEXPY;YcK?v3j(&hv~)Zc!U(NX$$zH_&Axe#V46Nt zEM_jA$RwRh$G(8}@33)H3g7%?MTF1o+qa=NdF`gaZ3YIovM?v-I^bT=G@;f&CQcv64ZDuRb|ggxUm@KO4%3xRS;f z-HC6z>+Ab7u?9_a5EHi=g6^lOk!~>4%5`by#(W+4^~(y-NzTsjaMh zW6C)>Ie~)I*4}PPF7?6aOkKF?a7^eh)rfmUyctKeqFaAx*37Z=V*OOCcL~CM8<1=m zIqx56Oaul7f=DL%?wU%T{sVv~APIp^S6W_<9(Q7?Z~Ia){;%V5(A(z+i+BkbvbqqqWl+XyyL!yz0&2y;ge}@Om}SagbMNX=$M=2!yHQ z&7_IQc|y71jjn)4?u)r185Ql^vBxTdYXGQts`QW@A9cz z@R9P9RRc0OD9Fyw!E3=$bc!vuVLtLLh~vO0M4NMWmWMdB3T|_AbAyTnoB|YDIM(UM zC1r5zFq?pGYD2FctPMF9aEn2e8?Vm{O&0B)X{q5LoZ3M%D<*g}e2iE$ffSNCbSj>M z))g9xtAFENT-<%gwBW3rJU6MSZSKjO%{BtF8TX__78h@W26~N3sMK1tB_D7N#cIrT zE)fdiXpOfBFR#43BHEJ1}UMi5DW9@$FubXfmS~Q?bK-0O( z>sX-rC^{}~esYq_xG5Z#5J^%mwbmn5Nw33ZXk-)|6eJNsT1(k!Q4Amp2+%_;B_d>} z`I@$HNJfSkoXpJIlrJ;jjxdwEy9;9krBL?_YEDA=M)COG=k$N>rE6@X*?zR*KjW#d;cJ-ZfQ_A;vWrYOwK*0xL#Dk2O) zNFE1A0m%65ou)GkL@OxRbY~Li?>4o9NgeF%LE)QQS@D{z$1ZS`<%Au8tezn3DX`Kt zIEWre02Blm42vdFo&;1W<0gC-mh7mgD0GxA55+c9=dvgh82u|1rN{cZEJ#&sVV)7Sg0GavLPVW0k(p?N5ZCko9D~A zFkFLN)Ev$nat2`H%Y;FsC=?2s`@|gj9x%WJ6&!d8jO)%mn;Gtc{!9iqJ@^Q;S)fgl z3UX1-@G_tqfU@^s!{F1<->J#B57L{sG56I6vjVqo zU7Cu%TtdC@dWsspxuQyFra^%w>GvlTj!*Vm7|@ERb4e<@)ric`Uu)&40WwI&X?Rfu z^QjOd50J#sp#r@j&;YZ$7G~QMTUC9$VW1WY+EpB!qrIsx2uqN5MLlwriL-R7%{x;7 zm{dVJ0E}HnVwoWuZ@4x{^41vgh!NZE2;QH-w=Z2KR?Swo0%8sPtp-vIwB*EMNLrSY zTA}X%bEgx3{s@4c02^|k7*Fv5rA7{D4U|&1DlY(-ZQ@T?7XImwf#e6!nA3LrI~an2 zmeyy<7S@Kwe1pY{U<6+BQ2o49P%Gs>++PR9;Md0of*^GOUI#SUIA#Lq)790r&4S<| zn{2N3zddE?O>A#&)2q&t@I4)hxZ*w`H4Kk0R1NcG_V|{>99Qz}4EZmj{yr3c#E5l$ zPmEA+i-m+y#zjA2x`yz-k8$HJG8m3IIw7*KSi7=$u5_Y4#{T`587hC(;4AQKgVMtJ z3=0~$VFt_#whNjb!pUi5K|}w1Z3E0FsAkD@k>X^}JRLatOVI zrQj4(MFeJ{Ir3b`_wcht{(VeckzBwe$#fPT@o=HHy7qVa;qlqVqI;2K6euxSwZSLx ze6CcfjW~+T<6{4Q;fAvP3=);L#l#ouFTKl49;48*#eQqN#klLAgMmjyq!&>x?AN(s zHvQF9vU#|i>FGQBS2wn>&X$k<79yB7kyc7U;V>x~{XvPvc;u^?E1Uiu5#d!;LKGnu zQL+UA1_*|zmspQ;!u>g9CZ{U7dmgf*zsBes>>tOE@(C%4Ko3VT@ou0ZhUr+}*Cj6E z0=t)q4Y%Zz6Ed z^2&d0m8;y141B;EI_W4waFxdO@a&nQTLH{jtwP(H>2>w+eGnfBTwW84z|c87!gV&V zlcgN1PM_Fl_4o?!!OSKKpHPhV!~R)>g};HXP2s1J#FuGB1|Ev-xgvrbf_OxUetBZx z{(H;o-ADp6;DRHCH{m$D(zJ5(7h46ks&Gpgu!I z^^@X=MnBXvPDFyp%3*VjVeQ_2LKff9sS9`5WvswX3H+|!&McSRGYGH#et77ke$Ea9 zgZc8FJH8F1E%^+V|HsyMfMfmkeP2eRRAhw8ULjkdviHd7B4i~g8e|k@B_Y|_3E|R( zM4>54l$EVCm6cIR$gJMaPxtda@ADk5<35hNf8qL#b9}#_bxKKLo80F4h^$A9dM!ke z*uA;3Zmm+DRP1Z9Oz$?zn|H+5F-4xoj%MA8I*2Tq>7aa4KLV8it|DObVfJClkQ4$a z^1w`nniU**-E2s4uX+om$K!HZL2eS+Fx?;_Ep5O1P$n@_@}*0^Ho1Q0zIXoM>(qFo ziaU3_y}UG7S}~&05P}tl!g28H1>Nh>3m3k2{A3EG_7L67oPE41 zIFN=UzDbcMRxdvQRsoR?55#;t{Mk!k+NntG`XQHDSkzUgn7EL6fC8MGPJn)jnM7h( zetGP~iPG+|=69Ti|6{B!PM;O*1y z3Fr}7E2~P3*-qHFbqYCEq^-MuCRkXu#Hib&3Y7;-JMhhmdE)q4uzxKJsp3Q$2GzOU zSklU!64X4+WMOzjgPKv+^A@_rLid)1a$1tJ#iz;DP~f57{dsqIRl!hR)I-&=11DE# zyYRYVBR}__FXhjhF&9^M9g^9hXnKtPPfrI`-tdAs`{6@}=!kn`J(_v<_HB#Fx7Sqo zYhNABxc4L1SYXc9>uS?m?^s2;FwwEzAD6QA7{^uxx`?K@oj4IYQS?#)V~T?nR)@1e ztL((WOsGTun#>!4E&DI&ebfsNn%1w|;MPp}{ElA3fR3cGWqG?bnN0o|!B6k!&M1Ir zqkI(^|0Ve=#O-q|s&kM?(;D5C!|xy2gB7S*jBTQDuMv=VMKP@N7iqR~KD;Ovyk@wo zU_N{YmL+esd=kk?V=KL)fX(F&#BJ_ispkEFN9m zp!RuDUz%scH*G6R4V2%^g2>>}qQ2 z$l&0G3mG{%{gA~*uG_rBXT&7D10@|C56&~YadX1ynpIx2Y{yz|`X}c-X(gFXv@Gi6 zFE+Hxd#0Ro$aJxZe}aJng%yE$0SE@EQ8Zs$iuzDmS{lF*R8sg`V16&#+F&;Hfzj`- zXMY?^o;y$cu@N)GPjSXY7wftbFXxrZ*}QQS83O-CG;PEm-_z#v%AbDN0?RxNZt z+ohzIK|--=LE1C{1uR#}b7xOah{%qlpDCpM5st>HY)7e2(#Je}Hb zz1#!2T0?5bj4R^JzXqp&59hTtjf-@OUM{kr(c(!14D{(5u%9b0@URz}CCfeq?b`JS zE!~BHG2l4>A%M@Dpqc~>yoTYhpACQ&0JVN&U58Pvv-Fa3n_U=0UX(m{1Qc*hwcFYr)AvAFJ4<*W+iUcvG4m%EtV>etY9ykVN9H08f_q-sG zTx2bq4*s`xQSfj{;uu@3fI68gB_d78lHCfOD&D}LKR}^VI^h!>lGcQS!e3onJgRUE z@N-9p`C~^Y%;=n)`l0q%f{hO&(ZtB8xvA;tmyw~NPeG@^AG2sds{QVvpQP3(-YD7z zRP}_vtj3p#q#>fs(W_f@rqk>_x#7T_)z{lHLT@|~v;S)lX>#>aK?j$FhQT50-5_J5 zRSdd)A>aU3n7)JY`qiDD18Hb;p@pKjFXB;~s1eA%e=X=~?6HddVR}CqGmM{Y9iKg` zuC6XhiF~(9Ss87`b{Uy=#fsIW-1p}EXVc4q578$;X(yTHCj9;Zm&_Wc8Edy3v9#w~ z61c1-@!97mx(FE^Fply+&+h*X@o4h+X)j-JP%(3j*KbY|sY>>O2WvCOwiZeT4TpC$ zdtJtkL;;(n_a{~{y4z5&XdJ^!uU>cmYzdV*3QQ3?24GBfrJVa+cb<65zVq2-UW+18 zw(-coqV6#a95Mzmlzan=$HEh=OB&iGAe}63N3n9b!MFJ0mih#aR4Zp^!JOp8QxUFA z4l3X4+n1a+^78KO_66LBR;LsCM&OX(jW!ARLTFM@AUx$0a49NEgV7J(NTAf9v~dXp z)(Un5PtGbG%V=sOyDk46=w>DAR+?$ewKJFOUtC{P&{c1I9^QbEo;; znu}Z&%(1;!uAg`OzPZPv?m(=j$dQ?FMkUeeT-GKFcdZVNQw>7cKLX5IgkhL}I4X9s zcwqaR3+7)69X}Uw{%2cCkaStu9SxZXzEsa8uQ$ekOu3y2eP+szm267E`vcD#s}pBn zk6Go$5HrJcW&noXf2~j9zU@Q&5jUwv{oE;MRtFRv?YwNVwao1PbmYqJbJG zAKT&^#-YypkpcyXg8PxLaj@FHe6^o@gtdS4P?z%TvE=&lH7oRQfLB9oVt^3m&;h;m z2Y1j1{uI2~)tH_o7^1LdCH*Vrg--EBr6>VOsgft5?P5FyeF}#k1y5a35`4kHvl8K^ zWl-IB_-?tT%aorx&%UK_y{N6f#aEgKTCTF^|CgUmc_eLWPmxo5dTQ&+kBvLWkmZxL zU1}-Lj6~>QM$xj`XCLMT&I#X@A8wY*NJ6})jzw}`_bc&Vn*aGQ>PB7!7Yt?=`y2n_ z?|C4nqI)ZZoLeazD=K5KQv0)L{Z|Qum(1~4I(CBf&lzJYq)#|nmujx`aMJdt4!M4e zQs1xhRq|uz3QeqR+8s9MS3v)0MJ><2VIP(AJ6?79O|xGkkg znF_}fY!H5%=Po?Jw#QVGdR&$+45iD9!oYqth z{Ns_i; zw;=~!*`+s%rV}ZP1+?Lc;T_;ot|oWgKBOPs0RI~4ubVw#a zWY#W>Tm==-G_LvZavPW^u#+$k%jw@NErs0aKIEuxPM2r`I@Z<7yl~;d`}HX*3E{ql z=H#OtxliGyX5Vm-m%pGWF41Vc_IF8*Hyzc_OGeomkX5Y7AyROPsGAgytkj-|d>7=eac(ukJJXQj0!O zSK@Yq^sl@0mmCflr@WO2>*~tezRkn4EyRY2QDc^i8vXvjhUGXzmmH9RX~vG zPU5$=$#}!(Lv5{(D?W%!RXcr42ep;;Ww&7a@2oFb3SZg*HV1$o0OFck2IP4eYbi`( zgU3$}H70^ox?NQT6aVb=G)jNatx(tQs0fbLQvj?8S`7*k5SvZCy;fnDkAk{XK-IK3 zc);^<%C&1jV_hOZBq8&~N2rL3x&h3DJG>*HqqFlADiLg85Al-X)&JNaOk(_D+=0NL zAn3{uxwwGX`xx+LYq1H~Gw`7h-9q=b6%KxElO!8(61BB|Ap>C9y7k-l?`_A$RaJRN z5E7{u?~T=~fKd-u23aENxe_3bUxO`Vw?b>DjPe8wBnkqM@YhNgK0+S=B?l@#Z`ElG zaqM+O4Fp+m#S`2?6^daz3lP-+-R6D+}@Y1D$rAJqHojG~*=qPr> zosgyCTQRcWk%egIbyL%&NtwLn>rvyh!ByAUyG$tYt!?8|7hH47e+%)JYN(TY6P_0U z8AbU*$jE`%16YMnjD`f6NhZKvh@IcwJpsK7Az%4*0dfqK%DjG{1^xnlM_mf4;0UOc zoS^^~5Q+Xxt^hKB|(I8b%ug~UVea2Au3 zBny!k6d>!soPfyy0VipFvm?L@1t2QgAZT8}iSWQ6FQxH_@WuuQ2Rj8$T}03X%oo9b z7LJ@v@Bv{DCSnxaFUk|tn;S^@9X6naG5@g?C8eh7y-tNn3l4bF=&RDr!{c~nvtQp# zL;Ll;(@jM2-NO{!GGR7pBwKz2C61II~x>3mb%5+Ki{h#KSqN?sDZIsLI&*y z$QmW$Ip_>;ZwCy<&b533UL{5JS7TeBqy`8uzdRRUS6^eBT!A8E#xr&(NF=h901ig1l_%_Ufl)JPcpZ$F-S}7 z*h1=o)C_-tQ5ZZmu*#2e|9)R*XX2Z~qFK^i0uaLS^MArvCVNNcg`%h-%aJ4Z5F!LkF6?n4!oo0;6am(I z2K_bFUnT)e3{;`J1O(168YB&YZbLo{|B&rNi$Y0gvX>!zg=1-WXozv=g$=*6uYX#a zdKB_kZRO4wcIp0QmIe83i`j^k3xORniLyHI~o{rW+q+`AcJN_)2p(?cI4$S# zL%-A-l-Zs=d$y7ghSRv5`392!&x;l^2c|u@h#PZ_Y3c2)0tD1kyNsz?>pvC7Z6`jT z*=+{4)6wxGCS!W-A6IXHmr25ptE(YontirG-F#Ep_5+-oH}7)q5+>HBt7&OzaZ}I& z@x&HZRj4to`+Qx;cwS@D8>Gs{bpq1nA9e>jW7tEfE z3&DBR4BO^EAFKon?9-mtB?Zx19sXoN3;Jtm=!zLUa736^-*W5-aXeZXe3 zYW3=UwV%>|DBa*o62^uDyvYM`9Vte$-ycl^33Ezr{(RF1e-Cl3AM|R(q`FMXwJt%$ zL8P=y>;~oNgHHj`_YQmgyLV-FRpZ!Z3^?TFpa~QKHlnZJzP;%`h?xla zi$-rbuFkV&;dxV&VSXnR$#~BbIZhvZ2S)lL{c7B~5jKYLj9 zLL&nl2Gz{^s}hA$!iN)FhkN_=1{HSu(28 zMc_%WDIcT>I4su{@05Z(irvuNzqdBfQQ6~~%j>plBLhh?PU6Ca^U=Oh&LVXZw-h!H zh(E1%D_?Vm=Sx?(^Pxl2Z;zG5Zr$~&zrX+eUH-By^Mgkg3>Y`|TnPN4r)2dr(U#6> z*ta^7SM5B%W-6ZnjgMRLw!5HFL;DxvaS_Wa=ezjI~+l zJ1?|u**KdUcJP8>ihWw4$o1U`hI34wda?8xDG^w1A_JA4-_rLV?BNR(pf7&1)O9~D z{Nx^n_w|-WEo1)jUx+6I%iKjkro|q+|fmEpkT$C<7|KrNQ^V-)q1-7 zOSQa)olaaNYvl5lt0aM0qgH=cBk51mOhPm-9`0jG67K!F&Ls9c++~kX4pgZ$I}u-@U^<>X+d~gN@1-l)yMqQgWFE+aOy_-q#6g7Yn`S z{lv28eY1?7S&J8BZf5#FA8d(a3cERPGFc`wZg92WomDY&yaFSQnm|c?44MS}@yG2@ z>i>m4tLPp{Uq`1JGF0+;=n?B18Z64<$NFv$qRfYw28JKw$NAhOOfODpdoEbqd3c&{ zzJXj0a%wc-ahEQ=fmRvI7U>gYUXZ(TI`B(N-$I8VIw2LtZ?*Qfitq*fKU&|*UEy$lVHmki5`%^MyryD(u8tVXm`EtU@*ccY27U;K8 zM?%;uZBy=ytpoifA}^fr`5v!tts_B|o$Gj2<#=B?CIl~1nv7D=7dZKP5jk#9nfXef zh?@tz0HhDQLeABz?-1BUVqCu-`-eJZRneSyX5}-?5$0%d=1==K8wtE5FE)OaO4}6L zBO(8++gZJGamBQCID#Ysc zWv8a9{owll@2${nlDx3lpm8H&Xn6eSL-8KYVvrz|g<=U~7~#-IY5r=T$}nw}9ZWny zBgZbH%72URLrvD5ABUwDM#)V}R%#7P51~8dc>~fLFNqGO7DU52f;YlpX z^Zan6A}L+|a5S_~K=XnB;K^>n=~@mbhSjj~!bM2TB!>W?TNngEK|!8qkswRO?oQ~7 z&0hYGos1|TCg2vn1WO2-Kh)M#No*mrv$Mz|+-bCdmHxItcq8o|ebuKz;;h0OB^q>1 zFA7VZ?(R?-my7?Pd3sXiOL*hlrMoTnXpga;%Xdi7lnhdMEe{x7)bYVu%p=XczP*K2{SqPq8?( zpwqBbhht1OjK8sjZkMUZg7}^g(XU74=L7RZ0{Rmfd<7Ho2OoCxYQ7c&i=1b)vY@;6 z)&(Rp7}6dzXrlRh@^|Hwk**q(nt-3YN9)=9;XLv8934frhs(%fadM(8Hhec2@&CO8>wSQeJ z_4d9KDV4UmA5G0{8WONK2ySH)SK(E1^N-h8V!3N(O(K=!nfhQuhX#D;HD3?I_v%8LW81_!(uQsnYqwUB0G=`DTZ@ zbcTEVlf{Eh`ZJPWsHaH0z9J`C`$F7Byf#8$ohD28W~Sna!_kdluPL4TS7kO(bTYnp zAMqb|eR*Hr!=#fzI6)%Y@er|RvPQNpX9V|Z?Jx0ZQ{`!+Fs-u+7HP-n#?`>ATo+wWPiXdp?6|-|GryCKfpYbxzFh0(0n#ly;dF83h=Q^#Z+*NIL zu_@<2+4cEwzS+q%l9HAnTx3}^>hsZY|Mi5Ck&#zegrPqMx5j*k(M1KN6=eJyHpIg* zjU?ZUD%)U#?oHlgjrsVc562@x5=Z7c!9f@QS2<6s6Ww1?GCbt> zFlI9ujz3t-q0f8$`2xdnQDMVk@Qv3ELS_yfI|kj6i28S2?Z^mVRtFm!YOWPyn79Gp zKlFJB`_)V;$STX0NEru~yM{-Udz*@|tVGEENY%QnsA zcvE@4)ug0T;S#xBKnPMYG8W*=JZ!4PQqRS{X%k&2&;>WQ!b%<~eF~H2$Z?HvO|57T zIbCVfzDn&6f{RvCKaO{=(hAh#k!|X-BHmkm{vk`tqz9O2I^sZ$VD9YIrgGP_7dNnU zWsWFjUm8l(q~=AK7IE=sRoPA77WrtTYguva1?LhahII6;lJ+> z7JKp`oMJWrFW@uVB}NzKnXh%)%^$g8Pc7rwu)Dc6hn1GRw(0Hb z3x2}>w|u@b3*I`@mA&yh+jhfp>l+puHqvV*z5VIRE#$6e9i{tFWt`(!kKhisknMX4 z@c#F`aiiBv4tucH3^4`gHt~ktR%qPpSuJqzNCKcBXw8KBPO^$q?S$W%>%OLpsmN!S z&Nq5(xN#$@dCs7vf6ziRUWk!4#=+mk#by4_sYGF0kS=60031IwfJAU@K)|K9+~Et? z9*?`!you4Gl1o_{o?ClvWL79PlL*iFo)d9APhu4wWdwgzm?B5*+6@cQ-k#pceg;se*-kH39yG>L*X0Kv!}(sH49hdWECl zz@C?{(UgkB;vgz4+?b`F1#BiEp#zv5<>nnPb_)k{+Y?-L?uA|YBz~Go;iktY@{Wr% z|BAoULA$=#RC>FZ*ca$cApVE`Is8Yd9#}L505DNejP}j3WKZhKgH@h<_~;SpqD<8X zfRu3ovt$_bdP?@oU|sT9XfxX?JjNWhAhooGeyGbpbDyjZV%-(RS~s-%WaK4~J_hgw zswnEYvt57){hl7!(if=MjKy^M0`cyC>`NCgw! zR#ujFlR>uAFDMHIi=ZC~-UdE<7`MaO;axsqW7CJnhD6ricgOLsPLd7y>5AnS!1Acf$mApuUJf@WodzmL-4nhKpgI>ZPK6L-Fy!x& zlb&7#6j!L;i$0k}xW;W!+4wIBVEhn}AjCgR_SbG8L2F=YXqfod*GVFy8pxIRz&&kq?-9yPMQNECD|Q zKr|U-hgUoSa0q@X2rp**kgaXTj}yX5JTD6juV9Ch2Xz9#g+!S5kky38hi;@a>i43+ z{EHU|Q@x8soyGjf$kim6Uq~7tE2(VxJfSvHS&x1o(CG$+0)M>bm$UyOc*a8bj~CCi z@te3xY-l^Hp&=d1w9UmKGu3aHLSyv1LMh42(ecKHn0D10$8*Tf?0H^-7*<>U@eDjL zVfzX~SK)&p?u39@Jv|0L3J}h^d%y2OMRDhjgrsDCh+3gp&POmv=p#v?Ft37B%g@V0 zAG~6@Ub#py|MN034P;o<-ZWU9h&?;9O+p-K{Jlau|`WJwgbLG(^{m z=Rul4vtwGA->qO4uvV4`a-lX7A28-3C@S zB`HbER1vDh3k(RMB7|?WL6^BUwDlhajaXDvlr`Ml)kP3k`!`Q-TH}HlB>mi{$J_D9 zW_McQ`SYjfRn&^q1Y)_L07)eHH{^?5lLujZ04OV-P)1Q0tZIy&!_fP|X9v*{pkYOGaYhW3EbgccBM;wZ2VMV^;XW5Sr? zS#AL;2_qllgM$QDFyV|xpNUsbB^M*};RW)?ZY*P|SO88-gl7Oe2POdE!V$JrjBn~A zXwc9s)?kgs(2{nlc@OZN^r<2zv*hr4}m@D;6IXye$K;4bmn zqW%AOy0Ckcb%*t_Y+ zuU`l*7{bKW8O{KWl_q7|RkTk`UA-2A4N*!2Rf~rQjt`Uq#ynWQHS5-W>%Osp)Uhp+ zAf1fmW-aTnQqyR-ySqC&W+yal!*`Q+(~-u5_)u8(L)f9C6OJkkM!O0x00SRBd;sl> zA&WoY>6&swhiS$kzJ2>+7@tUpG6VL3$#TU*EB-gIa`N{MP+?D>3c#?Ahed*x_5yl? zhhxa&KX-0v=STl%c*)>GaH$GYQL6>B0E!nB7UG_)zhGu#>QA=u4*9RL&^Z_?Ty@>2 z&5ymHm3`(P(@t|xtw4o6~URc?(_wPOtIPbB6(mP9bO*sRpIZ;!Q$(|hTMNvP;V9=ti8Qb%8Wu{1|` zt7+O#_AhMT=P0c72Q{R|v(lUnX6?^OU?5?+Z31jLFfc%MdQT$wQ#h#!>KFV(mRium zw(qAguv;0$!aLEfHpf`wD7uR?HpKxD9Vj+a^RkhGTFpQSFH#B0}} zlX{P{JwQ<5y7q0NqoYF<22LtK`jq&BsSbev>!11d7V&;kqN0V^#DJ^rH8VrnoiEl& z8fT=3gWm3Gyh_a^Ea>PkK!O+bj)S-K`~E(o3`1L#B!#d=z=RlENB-)3L=*%bHmMv- z6DWDCK81ya*#9kSX~f@efKAf- z)Ts<8T)@70d6iQ$QI-4xX@?+oW^Va{@^UYj`T|9;T7LQT$r-uB;M}m-2qP!Wfp~Oq zOcvg8qTNJcx)(x}^>>dWaFx)xU=Ea4@W=BWueZ=|`3xuRjODuXH=Sy;yB5E06GnG8 zv-{?FtjX}xy|jj*4k=WjM?$^t#R}i_6{7#_x_gTYvJ-q(y;>Cv%(!est;oxuOqQ0C zI*x{QV=HxI3=n%%gX);*n6@YN6tLPOJPJnUBE#h<5sht=kPYoW(Q*WeQht)5jwbo* z{zD-lf3eidA5q^(-wBx)9upV4N7tVz+EBgx>uwfSOg6>3hs}$qWYK-wBLp)-4aBZT ziEogN8*ZxnX|ydTirYWjBh@&60jhX(F9aVDc&ruvOJavbWn1H*Tdarz?*OfgOTXbuUcckmap5+Wl>Z@4pHY0Vg7>yTBZW0) zr)Jt@-*sO{(`Y36Y|SADb`4(hz^lK5)d-mAc&nSRVba^_^2JUthhkzku>T>@?rIAI z{0Mm7SA-vcJH*>eZ($CNd zo^{U?wwTzxjrn47h%N)K zEf?njhS_v)0Ues@6z;1x?X$knNWYL3=E^Z6xB8qaRE&q3YIe+=`s{HF9f=b3B-B|@zHC#TAG_D zq^FCYwyV`}yk=Tql500qP}HXsHFh0x$%8t5QT?Xb{?15is52{NqP;>c&m%_jCX;m7BFV=Ty z^E^(B|A*C>7B3ardM6!F)!&V0_|14Vr!5)?5m-{7Uh#)Z0WH;?2m!`C zei*SqpjU_d4F-BMWJH$e#YASWG?JJ1G3dDvZs=|BTw84X)B=6Me7*A0Zo9=9mS`Y% zm<>1w46n$zt+0eKjB5kx4Zv?!H%u#5`l!%z3mh`3oYt{JSAHJb^6gZX^)Ew8s2vi@ z8=zJ-OhVr(L_&C{iNGTkdJ7Un1dz0%E+P7zf`Z1IFTKf`EK=KtqUybTIaosdj2Xvw z{W#fg)hVr+q*ZA@T(*|8hOKrzh6O5O#1js^Yh10#(ydXx_3E9<%@q4`tC)4%H z0jfNgwMe+4<_52A^53Hwuc-&*2pZmrzNomyLx^wn>eavW)EL9k8Io?hTLW4Po8G)# ztiaIHVOZ$+S*?pAzn^bp4_&v-V(Nk7_f-6v51GZT0HX_d4yg#3ZiJsQ<3h$)78mj{ z)BG-jB=VGr@zXg1{xyi?mY9*bBJV#G9$@UoCaPVCsrULk%gB{txj|O&6W$5x6Y+cK z%%$X0ww$Ow-ze6nA>yX>b3Xi&LU_mR#LDG81X103@lss`^R#bUL-9_g2;2K+CY!oi zcN%kOCP-Y+efi5$D`4~$9Vez{bjiw-es4Pd)+k9>lRCPg^-rdF!RK3ijA4ug9={*T zp7)T8<6&cIF9?1l`~FOdNe(%4w|j)W9Y%s)z9s=x1v7?G?JDwPi|oP$)sn*+Sp?U+ z2Y;HqbjwIcxlLl(IWNK5&aSxA`Qv&`mS;A54fg5yWr%(eG`UAZ(tP7$(#Q-(NEj{Qb|AIkjcei^WbKn zh}}ZtyW(tnp5&$Qj!8DQZ&QpUi4>z!YXbWZ-yo4~yVqdwnX%ujz)_c{jfsYpJ^(7PbSXgSOe8X$@QVK=*Q9k#lx7=DrE)7tHo zQ)i!V))nX%dx8L969a`JBOybOcSYp;PE29^TR^Tn-qQI#qFSerC!bewV$MHtAf`n5 z+!}@!vFh{PGiq|3yzz=yY3Vf^13Q_+_&t}NQ$7nnGEeWWuu~_YX4l2FftXJZ{0kaViqm7c5D1UNAG`A7B1ba)DF<}SLadf0 zyF#af+y&*TaC~2^-aa^SaOj2|AY6%Tqy`>ndmj`aezPl_Um(pon9RLipt)FaPtc}Y zUGtfW7w{vc)(0#twM;n@uWZ$2DKOIh%K$N3dFxhfKzCN6Y0sT53W!Lkrn&8&ewo{K z6m24~ep72_X$2N~IXRtGSR(+6?YyVboEK_zMJ2tdjnX7*ZISYPd;Pqpd=Ix_(o9X9 z>+qR^4287k1rWhhR+1@}c({0CL0ea8q+3xQD_-CSZVyqB9pU~R*?~EnZw}8HzCcG~GYneo2KxaUr}es0 z<9)c-HEUFU56_e+UW-sJ77P_Oyv#^&J)BX(N`>;&-6qQHlxm~FpO-@IdCYxyW{c!L zBjesm};O^c1Vg zPkZ!S&}%6%v~Z`*mNO4Gqm0clh<|27(qI_7r`Tyv*Iy388e~KpKR#Hx&9yjmb&L^;<~5G5{@TSunSxe@eL z2Yda@L>D>fS@D9md)A{6uKQ+A-Lsd*hiOSGH`pbYleACc3iq~xv6qyhc?R9tTgGg= z{n%D6-#h&{2rWBdv%MBf{!W=%5~iUCW~!R1ykZ@AS3aB%*X~=k}CfmzY9)$;a9xrz1^pfx93sWpz*l|TRkr|AzR9+Yg3^L z#Iorx*MD43K>RNQmq3-*Qi0Z$&PmejvZl#hY159&J07RLCwGe*zvr#Uth^DOx8X^xl#Wf&9pu@V z49iB*?Atmk9=?BEqJ@qh_nAGZ!CVST1#R(CIT~g9mwry(X}@aBcHzFhIk7j0N3AL~ zX5-!<9IY=@qUapa8*QrPf9~H^ZIPcoa@;1utNwlZ%6+FF=QR@PQ%g)RW*cIAJhyOigv!bKO(JIA1F3ea9?zmO0gc3nDq9%rjoVt^99egdP__eT8tgVGUn1hD!6X& zma*htopFm3!ugy3^AZ&g7I-Ud#1WzTDb?jhd&Jx9wu#)Yde57apUqAPO16uzk*|MKIJ&Dp9kZU`OAUGOw* z8QHiTac!Zn8J|=BWu}t)XXXlqhQ8gtXEro6oY>*0-FkGmGylY9B~6_V539yb4-CtT ze=Y+Pp$d!(;@Lult(wW&ti&TR@;i`LSS!BmxI?Cqze3a&^kB(XuCT$l*Ll?UBzzH& z0{eb{Z|i>oUD{>jUUi_s9f8p0RmuMNpkv_c;L+&$dtb@0&FhxJiJ3;E#_WpW>K%Kw z&8fCG1m{cCm@l?${-z(iyXt9u(=EOb)uZ2+CqI7e$(B0&8sTOi02c!-M+PFHK!UCW z>hr*t5VV|lb4LV-u!>3m`Ye>=Go_HRLg~n_q%;e`FAzPqKf#2y3wBc|FOk)D&$VeI z;v5!Vfto-B51(3~|H9A1PEJmzFT+mrAZY2Xk=0m#3o^hn6B8}Kn(P&N{P;06L(rbi ze~2JkrF&dZO$+?*!YTb)Z&HDEv6*Z^21w8}kVOh*2=sppSYYH%q$mz!1d@ekM3MzW zk(IT@BK{o9TeY$WZ|&YCbf#7PjYzae+j^`gy{qzbm)TfQ$LtFKx+ zQtk8()p!uIfNH(r`2mmzxbHx@^ZCn{TL7>C(rS709v`tZJFy7_2mlKZ4-BhTS-eKD z6H@KaXkG!r$qO|WfEuEk_G^KB3Z@oR2~b3-0#gMl002?z1C;h(K@q`;ZQL*mAA2=u z57q5ZSA))f0OjlqN0r@g#5W>T?#swX^iK}Ub6 zRP(vEInH^{EWdrbD-5;^^Yj;if$%$_4*)FN+}PN0R1r8Z0ZqWT0+04buwrO-+&-f* zuYo=k`Ne$@=#q8=WdRc8iD7|rPW1VL$l%w|4FiBDg~D~R$tjTF>H*xq%!{)m?m;RB z0E$Fd%MaFtLx0Rb5;e;X1ipd8Usy=6q6Gb3^t)CoL{dKe)kZ_(2_B#fuw93#pFh2Q zeRq2gMY-M(NR2P2(a4{Sda6zFP=SVu%N)FG#qpe6BZcj7rs3enxcq#fS>k*E0+We~ z%3Vv)S#ab$03-%!*52&hhVgnE>E*z&0VhNGLX1S)8;ECuBoCGXxOp~gQSLw>-@kC5ag0g&jR~i12^`o}_ysQ@ecUXr~~lv8ibR5a5{6;@l*> zC9^=Ofkw)$UKIanDBjW{!lxegBEIqKasQ-sW$V06~a=14-7Cz?=lb|3vlI+oKyVxSm_y75UUXDuzh_w7!&pcTNEphBz_OF{QEO;O*x;G+4KHFAT{5 z?EsA)1L}*jLUMBW{9Yp>OhpBlSBTr|h;)XAlt}tMt4pePc3EBwq>cGYzeum0X{dsT zNSsOxGFMbM5mZhLXiP02{vcG0O%1Q%;94*Rz#8^|UB)sb8*=X! zGS&dZIaavE*4BmqLdV^F9~!DZJ_9ZSs49>edJ;}mBaI@gefBjt1U7DN!`Pjc%Q#mE z=p0EFlM|@gwTFnuM-qB1d`g&>Fon+{vbJMvzaZ6{_ejc!>y?0jAJwF2M;4KW@Vh3I zUM)i=ihi@nD8g>+rCS{0g#r5Ojfm43OvH{IMaj5By zQbOCVqcb#|GEt4OFAE?SKS%<_-i`0<5-I8%`TUuNX!HNhh5XfbfB|X**mnE1UHU;% zl9DhY0t*3)O&lTwnK*v=%Ri5H!RiLL)w`-=`a#6YR2uICt%kwFfuk#-F((wF@QUI< z9pCJ&c#jzMu;Qp-IRxhj%pFd&^qO4|1ON^Qgw7OP8^JF9PMa7UJml$#q*u+ma#6#% z&g(C+otCrEzndtkky*3|DcP;tmpk>h_$zLMJQ7U9^z7`1>Hr1O{NiFnWTb+a6G0Aw z{6w7SY7%e*!j%Yq4$A=?apPd65Fx%cNf;X#Xk1fM1y}@s13;(tUm|(I?*&Al7B(e3 z&l?jlv9Uq(KdvL{9lH&ci{O(0I^b-XT5u9TVz+nKL2Lv7;}?z{^gj#9g)uwlO>1hgP<@)gDnPC>SbC~chU1r((O*AMp#`6xb)7ikt? z8mS|2gJNTZJ@QE)wDf;*Tp`#E5(`|QSersZLX1AsJc0B8hb@_n?^ag!hmIdnw7}o- z`VD}lZ#~P}qEqPc`KG>e%M5qFMo#(IZ1V;Nqv;EpIV=%{rb#H4P4_xGI|BfO$d?#? z7^AfO*Y_2}cP_JrY8Q{SUDf zD+-2guoc(zp4HWf2O+tI4QHA0@lAgF21DN&@QB!4UgW++Fle@OMp6=R=o|ZTlllMb z*AjJ8-`@JNn{yK@<#4$5fj`swN#WMU$thYEO_!^eLvn`n_x~wsdHE6txZ(g48bSpy zJ^;53;+1f`B0%=%N33A7MII^2j9>Vl#eQt%SS$=TQIS+yu{Rog0&I;gFvo!YI^>9R zr(Yv31Y?m{Qji96=W0uHb2OGiWb>0_R3joHX#cTyAF=cji6y+e;PQ7B%P8Ve&;0m- zlZs{LtlZr(olz%@h1{Ak*hbp2+rQ)a^FqMW^qR~FA;Ct5n{B6yx(%XD<8akM=7J0( zzKmd)G1q-zfPcB_xO{0wk%vLqRZ4 zIyaAmA3aCE3pUXAC1F_W#|`L7$_T~5_Yyj6h*>Z<@b`CdYieq0*mzs}Zv=MyJ?_7j zWG|$s@0h&DKXq<*t;PYePLePSJ(aA%B22Qiw6>XFUhIDFM=8#0?yn}8JK%B<6reB! zWm^p-7EV;`4_>EF2V+_j#}B-5!O9QjhXV)IA-Z@Gq@NZTkkNQR=c_{jkuSnPvk!@f zOCQek4{`@0a1<;)=I09w{pmb|TTubhEWZYm;@2!{-ZAU@lNidM!@|{N5@%fk zH&HtlPwdmg66VI+f`}r}nFPOqjU01kpPgK69!|tnQF(xsw5Q)5W84v@t8q?|Y+M@~ z;AT{v$;mUwM(?1BA3-UH;vIF}LzsY2W8g8r1Cxeb($ZZ4XG}LZs^7?=4Pz9!S(lyW zy1S*lMY4nQF@M!zJYg1BL-*j|r?KzDD3tL?35RzuFoB*VGL%5eoSt}vYKS;p>?$lg zC?2qCR{Kp@pFV(Lhn+F@@?}Ka$op8FhEop@olqtQfy4|;=vrBs$JTbAKyCcYh%vpk)!i*QV--TwnkcdF5}QZg<9&cbT3k>snl zHAg)p``WeN7(-&h!qDBcqnfFy!paX?DHs(eJ_&5(ZFpCMQ=rL#^VaL14d1}j6n6W~ zvd$Xd6MQ-KAt#WMkSNB>0TD)n!v_o?SHOmeZ872m?<|h0Ge%seKQ`{qzm4`6%_Y5> zbz(mgLCe8%+RnVU@?zJWFAo+@Jy><%a+7$9($Y4ZcmZ7op2t^g@x&=Om3Aj=ZQo!u zN3ja2OKaA5O`PlJ|LFeZ2uN(Ca-x2FL-w#<$lzhKu-$DF|H#!<*;prt~^fKY(c zE=$6?cIU7$NGB}cn3*Pf{LoHhWo2O*1^4~zZgfn{1gj`iK08qm z1E*AFOU=&y{^`>XTpoI{77wrhaHe+o&NiU88t$`bevfdvM1f8{Gp%T7#te1UCjKDgL71=`Gs#1q55` z1d4sUh6Q-S|KL?&#Ni;M0faD6PNFm@g42Ny)dN&RxP4EL^^ATK742#*t*u#DTOj#_ z`i)Q`y%AB(Qt>Io<@JP}hpz`aLkFLqGFnM2vzThy2v@fdSVtP@wVtS|f1f8v`}0~$ zvxi!U1=-SDrq)?sE=&04eD*`^ktj8xc6f_NXt^I$7~17#m9OBLA7N=gicnvu3tU1F zKcEc6Vls~n5U(uj>eWYx;)5n@-zr3?qc$J>`qjjVCKML}*#y?^FAzxJJ_(-=CM$6c zPG~4eZ6AyqU8uQm6ou-@33TaL;4rh#qPm4P#Nx)@t#|9*JwCTnlLacWpR=>3CMHBw z>zFR%aReO0*8CG*f28?Or)Zkcxpy8bNAk$(`!9s@c7Ll9@o5s=AZfa;O5#Srj7G+| zS<1_`G)@MHLg>4HY7iwLd{K{^y9H4nzQef#9=cmCs}h8&l|OF~aFz|%NIC1287d*M za6VvflJIpwAV+!v)`zQ1jpHPxi?x%!FujznGEFScS?nRc$cL^TX{tuS45j55lny?9 z+_zmpa{2dg9hBA7{ac|Bm5#2jHH1tO*a zI|bUgD;4V8E=DE^+5^Wj)UG5Lmnf&|>rBYoq zVd-S?+lbs3c5>CS`L=?ozRQHNUq_A|AugL+*%OV~jy_U6W_raKK)WuvS|(OKYT!UA zaJqT{1@McT4Yh1jL@W2!STirwYmjbHjY7?4+K2R4z)tq)cK@Mgj6jU+C^SkxsP}kQ zu$$_1=NV91cx6jncVJv4|0VrL>frLLR2FBDp*>bzXSHg5>a?S1+_5}7y z3-7`=F^g0q7~wKCoNX6r-&wR_cZ{RoA~&Z9vcnP{XT#q8TPR2hIWAJu&M!p#VJzA`9u;K}^Q5sw7 znn~$?d_?M+5u;67giM;Igd75WQS)q;N=-=k0jR+B@L|J~RHz2f3?9W0#u3FRMQHdH z6sFXUgj0^npG z^*@b;3k`!$szpgJ9RoAM{?pzg@g)`~d7#rnkMW}V`}p|V>)NYHqaQWQA4`%*>%S0M zfX7QHI#2*W@h*H%s}l)*_%M*%C;H0ILw;J0NeZ5x`FNC|>|ySMa+Ah%n%ZGT>lp61 zW+r|lSY?<(wnY}T<5xicS8v;jItnvA=>TSY2KqlJi;)7b(2NG{9+*E=q`22BTY6C| z*Dj7rN)$km2Gd^1uQx|X9hm57FX)~?$yU%CQ>`kVCmWNtGf#jNDx9HDUA}eXxBkP5 zz}XgZ-toU&8&Ym>)+nZj(hv)Pi&H-;Se$+WjU@gPSA#Ft9kA=_HdH{;b=b|#I~C_H zMnKPrx*UmwqNN=0OQ3bs(0!jbV2i36s+1!+L9kL6<088A)@jZsuR&dL`c zSv6S18~&$U`K)O*#rMK*r2A|paPZ`3HzHx1(7UDxX^oJO_FgvhwOE+9P}(8b4n%Yv zUUqNkft@>cyn=T~=;3S=4e6Ih*_7_DOC4kz*W}GfAZbYMeaO@%6rot}JA?CL zk%7^(fchAuFL7KDP_|O*wIJvaV7E;{;mSuLXM6{acG|SLOMC&sBORyf47?CjzQOJQ z@fDgFG(!eA685t|o9rt@f77`8igAAIeh*pm8Z#;ld3_FxYRJ#92a5FtIM3#)YExSq zG%56?ku2Pw@j6{KWDV`w^{%s%l>|S2!(FW=8KYDyl|@pnShfWuRQtqwl9Vh83JP$Hrv=;GW+e|rXu>gr+SQg~c-)zpnN180r)Fny zR`3H{CoWm8T)>+p=~Jgq!T3OIa8b=CY84}!}2nfPN`85>7Kvvhz>E}qA_%uF5cw_{jP11l2vQ8D+*?!ZI8BJmvhHf*g2I)oo{wD;U;maHV|&<HzCM$pdgCW;XwF=+-(84E)ifK(uJkCWpZ+N;r8gFqHY$e_ZFw9N?&lx{d%c8?EjKR~{5UwaD% zj1FfEhd&#t^}$wv&w!s%1Z6F>)5l@4P3dOX1!GB4bEl6QOT52apG(6HEBz90RK`EI z>Rv=vCwD3>vEphjzDhZ9$ba5$dVI99v<(Qw56i6A(iw?gG{GfpB5R}g`1cf3^`g# zI)!bM6(i}yb9Y*`@Sm%;KS|0OaCpPhfwJgeMsn^D-c*z8&`;Xg#|bq?RgLoz1!2a$c(ys_B@t0L_5UKl0j&Ut-Y@p$)6 z$#eNl9}9GtN{2aUGsip4t3bD?6SvA|1QNTheGAnx8Yw#eWp}jJb{?U|)#4>nVZsf1 zk(p?l-D6@ZCT{ttyE4oG9T(pr8z>)n>ljc2$JjgN)V>Wzh*81$x~c5j{( zGs5b}XInIx()364{L`Q6%5Eo=9{77uhK_p+Eyx_#Q@o7&OY}~$e8UB2aI1uSu&Rkj zw+H7JE#;a}dukm(Fp5_{Gy1aS5vU)Z|Aw5?$~d(8)({Di)FnLmuGOEOp1@beiTa-$ zL=T@G*uZvN%GB^^yfD7RPjIvHkzamwaOs+7Ig{6rzjp0#KEc7#TP}A+zi&9I(fNV3 zF8xM>>vQL|<%QEG-6_5`mqs5{?sgM0;HOD=M_Z}u3-s9$8!1+s`HfVfs6$k>tY_FT zCjn(Alo%l?C`eYdP3Vn-1z``W$Y;lGR@?l2e47oLzJ>rr#9bkq<;JG=pUZZ*KWn4X z_@v;2@!@*a`7I6BF(1w-F}e2&1t-D_>V|&GDP{SCFs~ZvNWsx|syNOf9rMKB&l>5G zd30|cbXH}v+Q$Z!xp2(Buxk7xv%{uN^Ie=g+0}F6u?R6o+T8!$iPBGP^dkVdMAObg zeN9TO2Pqt`)bSMJr!(|^a^~VHavjA>XsWSRbRawvs5|JPi5pn~dw?la9PWY^`?ym?q3dY8dIX za>9mVQRQh9%MzXYZ=J5a8dXMz>`IBeve;`~4QfT9Thu@7%9x5Y*`PAxm~XR+Vs;od z!-K?Nf|u1}+?1gT`V8gYA*ID!rM%v>r6lv4E#%Z|wHwZYPJ4%(x-!%m-6G7}V0k6z zw@RZ76QV?^Y4#cackr7D{H>~eR5HDf{NsZOe>MLKd`LA?iLx~So_eX<67?O2nZSJL z_y0lb_;F8P(ixJ~er}r)3iViF=Xo0vc#^1cGgK?hyu}0V!rK_wbFsFlHDx}CH6Ofc zpxp6sYoLHfHJ3|O_aCI2e_{lm!j5XA16%BaC})=gIi*LCCHOYA8}=bjnHZQ_{)D&6 zTX76O!Y2_jY`I4c+07NjZ{~!&Pfm@Mni$)~k}|e8hmqxYakd&dL+x;wp)*fHylgfN zPPZ&Mts5z)UMHd-gRB5Npt;aM@g+*;eLf?_Eb*@sAQt~rc>uN5@}c!{j(!Awc}mK1 z@{@q*U;?RV0G%BP`B3%u$oP$la@=9vcHi$E_sW%Q%uAz%H!*cJp7>4QEJ2rLgTwM& zQjz;bH^uS4v#zMzu&}EwC|msb7h6V=?vPGn$%HF9AE?+6Zxo-Qx;@RPr0UZvGLxERH`VCQXk6uVAW;LdyWVGHoscC|~g#6^^fX_d$| +
+
+
+ + + + + + Customize your overlay according to your stream. +
+
+ + + + + + It's absolutely free! There is support for many popular streaming programs like OBS and others. +
+
+ + + + + + Setup once and everything will always work! +
+
+
+ + +
+
+

Profile

@@ -91,7 +126,7 @@ document.querySelector('#app').innerHTML = ` placeholder="NICKNAME#TAG" autocomplete="off" /> - @@ -312,15 +346,14 @@ document.querySelector('#app').innerHTML = ` style="width: 100%" x-transition x-show="search" - @click="editorContinue=true" + @click="contentContainer = false; generateContainer = true" id="submitButton" - class="button" type="submit" > Submit

-
+
-
+
Made with ❤️ © 2023 Valory
  • @@ -437,6 +469,31 @@ document.querySelector('#app').innerHTML = `
+
` diff --git a/src/js/overlay.js b/src/js/overlay.js index 1074e15..ff039b9 100644 --- a/src/js/overlay.js +++ b/src/js/overlay.js @@ -8,32 +8,32 @@ const apiUrl = 'https://api.henrikdev.xyz/valorant' // Color Settings const { textColor, primaryColor, bgColor, progressRankColor, progressRankBgColor } = { - textColor: urlParams.get("textColor").replace("#", ""), - primaryColor: urlParams.get("primaryColor").replace("#", ""), - bgColor: urlParams.get("bgColor").replace("#", ""), - progressRankColor: urlParams.get("progressRankColor").replace("#", ""), - progressRankBgColor: urlParams.get("progressRankBgColor").replace("#", "") + textColor: urlParams.get('textColor').replace('#', ''), + primaryColor: urlParams.get('primaryColor').replace('#', ''), + bgColor: urlParams.get('bgColor').replace('#', ''), + progressRankColor: urlParams.get('progressRankColor').replace('#', ''), + progressRankBgColor: urlParams.get('progressRankBgColor').replace('#', '') }; // Checks -const alphabg = urlParams.get("alphaBg") === "yes" ? "yes" : "no"; -const alphagradbg = urlParams.get("alphaGradBg") === "yes" ? "yes" : "no"; -const wlStatCheck = urlParams.get("wlstat") === "yes" ? "yes" : "no"; -const progressRankCheck = urlParams.get("progressrank") === "yes" ? "yes" : "no"; -const lastMatchPtsCheck = urlParams.get("lastMatchPts") === "yes" ? "yes" : "no"; +const alphabg = urlParams.get('alphaBg') === 'yes' ? 'yes' : 'no'; +const alphagradbg = urlParams.get('alphaGradBg') === 'yes' ? 'yes' : 'no'; +const wlStatCheck = urlParams.get('wlstat') === 'yes' ? 'yes' : 'no'; +const progressRankCheck = urlParams.get('progressrank') === 'yes' ? 'yes' : 'no'; +const lastMatchPtsCheck = urlParams.get('lastMatchPts') === 'yes' ? 'yes' : 'no'; const { NICKNAME, TAG} = { - NICKNAME: urlParams.get("nickname"), - TAG: urlParams.get("tag") + NICKNAME: urlParams.get('nickname'), + TAG: urlParams.get('tag') }; let lastMatchId = ''; let win = 0; let lose = 0; -const loading = document.querySelector("#loading"); -const overlay = document.querySelector("#overlay"); +const loading = document.querySelector('#loading'); +const overlay = document.querySelector('#overlay'); overlay.innerHTML = `
@@ -60,21 +60,21 @@ overlay.innerHTML = ` overlay.style.display = "none"; // Elements -const imgRank = document.getElementById("imgRank"); -const imgPTS = document.getElementById("imgPTS"); -const playerRank = document.getElementById("playerRank"); -const progressRank = document.getElementById("progressrank"); -const rankBlock = document.getElementById("rankBlock"); -const gradbg = document.getElementById("elements"); -const wlStat = document.getElementById("wlstat"); -const lastMatchPts = document.getElementById("lastmatchpts"); -const lastMatchPtsValue = document.getElementById("lastmatchptsvalue"); -const cssStyle = document.querySelector(":root").style; - -const wlValue = document.getElementById("WLvalue"); -const winValue = document.getElementById("winValue"); -const loseValue = document.getElementById("loseValue"); -const wlProccent = document.getElementById("wlProccent"); +const imgRank = document.getElementById('imgRank'); +const imgPTS = document.getElementById('imgPTS'); +const playerRank = document.getElementById('playerRank'); +const progressRank = document.getElementById('progressrank'); +const rankBlock = document.getElementById('rankBlock'); +const gradbg = document.getElementById('elements'); +const wlStat = document.getElementById('wlstat'); +const lastMatchPts = document.getElementById('lastmatchpts'); +const lastMatchPtsValue = document.getElementById('lastmatchptsvalue'); +const cssStyle = document.querySelector(':root').style; + +const wlValue = document.getElementById('WLvalue'); +const winValue = document.getElementById('winValue'); +const loseValue = document.getElementById('loseValue'); +const wlProccent = document.getElementById('wlProccent'); async function main(nickname, tag) { const [puuid, region] = await getPuuidWithRegion(nickname, tag); @@ -83,7 +83,7 @@ async function main(nickname, tag) { await decorateCard() await checkData(region, puuid) loading.remove() - overlay.style.display = "block"; + overlay.style.display = 'block'; setIntervalAsync(checkData, 30000, region, puuid); } @@ -110,11 +110,11 @@ async function getPlayerInformation(region, puuid) { async function getLeaderboard(region, puuid) { const response = await fetch(`${apiUrl}/v1/leaderboard/${region}?puuid=${puuid}`); const data = await response.json() - return data.status === 404 ? " " : data.data[0].leaderboardRank; + return data.status === 404 ? ' ' : data.data[0].leaderboardRank; } async function decorateCard() { - document.getElementById("mainText").style.color = `#${textColor}`; + document.getElementById('mainText').style.color = `#${textColor}`; wlValue.style.color = `#${textColor}`; playerRank.style.color = `#${primaryColor}`; winValue.style.color = `#${primaryColor}`; @@ -127,11 +127,11 @@ async function decorateCard() { progressBarColor.setProperty('--progressrank-after-color', `#${progressRankColor}`); progressBarColor.setProperty('--progressrank-color', `#${progressRankBgColor}45`); - rankBlock.style.backgroundColor = alphabg === "yes" ? "transparent" : `#${bgColor}40`; - gradbg.style.backgroundImage = alphagradbg === "yes" ? "none" : "linear-gradient(rgb(255 0 0 / 0%), rgb(0 0 0 / 57%))"; - wlStat.style.display = wlStatCheck === "yes" ? "none" : ""; - progressRank.style.display = progressRankCheck === "yes" ? "none" : ""; - lastMatchPts.style.display = lastMatchPtsCheck === "yes" ? "none" : ""; + rankBlock.style.backgroundColor = alphabg === 'yes' ? 'transparent' : `#${bgColor}40`; + gradbg.style.backgroundImage = alphagradbg === 'yes' ? 'none' : 'linear-gradient(rgb(255 0 0 / 0%), rgb(0 0 0 / 57%))'; + wlStat.style.display = wlStatCheck === 'yes' ? 'none' : ''; + progressRank.style.display = progressRankCheck === 'yes' ? 'none' : ''; + lastMatchPts.style.display = lastMatchPtsCheck === 'yes' ? 'none' : ''; } async function updatePlayerCard(region, puuid) { @@ -144,38 +144,38 @@ async function updatePlayerCard(region, puuid) { ] = await getPlayerInformation(region, puuid); if (playerMmr > 100) { - playerMmr = "0"; + playerMmr = '0'; } imgRank.src = `/img/ranks/${playerTier}.png`; let actualProcent = `${playerMmr}%`; - if (playerLastGamePts === "nRanked") { + if (playerLastGamePts === 'nRanked') { playerRank.innerHTML = playerElo; } else if (playerTier === 27) { const leaderboardRank = await getLeaderboard(region, puuid); - if (leaderboardRank !== " ") { + if (leaderboardRank !== ' ') { playerRank.innerHTML = `${playerElo} #${leaderboardRank}`; } } else { playerRank.innerHTML = `${playerElo} - ${playerMmrText}RR`; } - cssStyle.setProperty("--progresspontinho", actualProcent); + cssStyle.setProperty('--progresspontinho', actualProcent); - if (playerLastGamePts === "nRanked") { + if (playerLastGamePts === 'nRanked') { lastMatchPtsValue.innerHTML = `Unranked`; } else if (playerTier >= 24 && playerLastGamePts === 0) { lastMatchPtsValue.innerHTML = `${playerLastGamePts}pts`; } else if (playerTier >= 24) { if (playerLastGamePts >= 1) { lastMatchPtsValue.innerHTML = `+${playerLastGamePts}pts`; - actualProcent = "100%"; - cssStyle.setProperty("--progresspontinho", actualProcent); + actualProcent = '100%'; + cssStyle.setProperty('--progresspontinho', actualProcent); } else if (playerLastGamePts <= -1) { lastMatchPtsValue.innerHTML = `${playerLastGamePts}pts`; - actualProcent = "0%"; - cssStyle.setProperty("--progresspontinho", actualProcent); + actualProcent = '0%'; + cssStyle.setProperty('--progresspontinho', actualProcent); } } else { lastMatchPtsValue.innerHTML = `${playerLastGamePts}pts`; @@ -225,7 +225,7 @@ async function winlose(region, puuid) { if (won === true) { win += 1; lastMatchId = dataMatches.data[0].metadata.matchid; - } else if (won === false && tied === "N") { + } else if (won === false && tied === 'N') { lose += 1; lastMatchId = dataMatches.data[0].metadata.matchid; } @@ -247,9 +247,9 @@ async function getWonInfo(puuid, dataMatches) { const playerTeamWon = dataMatches.data[0].teams[playerTeam_].has_won if (red_won === false && blue_won === false) { - tied = "Y"; + tied = 'Y'; } else { - tied = "N"; + tied = 'N'; } return [playerTeamWon, tied]; } diff --git a/src/scss/main.scss b/src/scss/main.scss index 4770a00..04ad63c 100644 --- a/src/scss/main.scss +++ b/src/scss/main.scss @@ -18,6 +18,7 @@ body { height: auto; display: block; margin: 0; + overflow: hidden; } span { margin: 0; @@ -66,7 +67,7 @@ input { } &:read-only { background: none; - box-shadow: inset 0 0 0 2px #2b2c2e; + box-shadow: inset 0 0 0 1px hsla(0,0%,100%,.15); } } select { @@ -90,7 +91,7 @@ button { line-height: 1; font-size: 14px; width: fit-content; - padding: 14px; + padding: 14px 18px; border-radius: 0.75rem; font-weight: 600; background: none; @@ -108,55 +109,28 @@ button { stroke: #ffffff; transition: all 0.2s; } - &:hover { - background-color: $background-color_3; - border-color: $border-color_1; - } - &:active { - background-color: $background-color_4; - color: $color_4; - border-color: $border-color_2; - svg { - stroke: hsla(0, 0%, 100%, 0.5); + + &.fill { + background-color: $background-color_11; + color: $color_8; + &:hover { + color: $color_8; + background-color: $background-color_15; + } + &:active { + color: $color_8; + background-color: $background-color_16; } } - &:focus { - background-color: $background-color_4; - color: $color_4; - border-color: $border-color_2; - } -} -.button { - line-height: 1; - font-size: 14px; - width: fit-content; - padding: 14px; - border-radius: 0.75rem; - font-weight: 600; - background: none; - transition: all 0.2s; - text-decoration: none; - cursor: pointer; - color: $color_3; - border: 1px solid hsla(0, 0%, 100%, 0.3); - text-align: center; - display: flex; - align-items: center; - justify-content: center; - gap: 6px; - svg { - stroke: #ffffff; - transition: all 0.2s; + + &.icons { + padding: 6px; } + &:hover { background-color: $background-color_3; border-color: $border-color_1; } - &:focus { - background-color: $background-color_4; - color: $color_4; - border-color: $border-color_2; - } &:active { background-color: $background-color_4; color: $color_4; @@ -166,6 +140,9 @@ button { } } } + + + .button_2 { border: 1px solid transparent; color: $color_1; @@ -176,9 +153,6 @@ button { &:active { border: 1px solid hsla(0, 0%, 100%, 0.2); } - &:focus { - border: 1px solid hsla(0, 0%, 100%, 0.2); - } } .button_2.red { border: 1px solid transparent; @@ -193,11 +167,6 @@ button { color: $color_6; border: 1px solid var(--red-color); } - &:focus { - --red-color: rgb(93, 0, 10); - color: $color_6; - border: 1px solid var(--red-color); - } } .start { width: 100vw; @@ -238,12 +207,39 @@ button { flex-direction: column; align-items: center; padding: 35px; + + .info { + display: flex; + margin: 0 6px; + flex-direction: column; + gap: 32px; + padding: 0 8px; + + .info__content { + display: grid; + gap: 12px; + + .info__subcontent { + display: flex; + gap: 12px; + align-items: center; + line-height: 1.3; + } + } + + .info__buttons { + display: flex; + gap: 12px; + justify-content: center; + } + } + .content { display: flex; margin: 0 6px; flex-direction: column; gap: 18px; - max-height: 620px; + max-height: 550px; overflow-y: scroll; &::-webkit-scrollbar-track { border-radius: 10px; @@ -551,10 +547,7 @@ input.nickname { max-width: 320px; text-align: center; font-size: 18px; - background: -webkit-linear-gradient(#fff, #ccc); - background-clip: text; - -webkit-background-clip: text; - -webkit-text-fill-color: transparent; + color: rgba(255, 255, 255, 0.8); } footer { margin-top: 36px; @@ -620,3 +613,62 @@ footer { cursor: pointer; } } + + +.modal { + z-index: 2; + width: 100%; + height: 100%; + position: fixed; + background-color: rgba(0, 0, 0, 0.5); + display: flex; + align-items: center; + justify-content: center; + backdrop-filter: blur(10px); + + .modal__content { + display: flex; + background-color: $background-color_6; + padding: 60px; + border-radius: 33px; + width: 730px; + overflow: hidden; + gap: 50px; + box-shadow: rgba(245, 244, 244, 0.05) 0px 0px 0px 1px inset, rgba(0, 0, 0, 0.04) 0px 2px 8px, rgba(0, 0, 0, 0.05) 0px 30px 70px; + .modal__leftside { + display: contents; + img { + width: 45%; + border-radius: 33px; + box-shadow: -500px -700px 200px 500px rgba(93, 183, 210, 0.4); + } + } + .modal__rightside { + display: flex; + gap: 20px; + flex-direction: column; + .modal__title { + font-size: 24px; + font-weight: 700; + } + .modal__steps { + display: flex; + gap: 12px; + flex: 1; + flex-direction: column; + + .modal__step { + line-height: 1.25; + font-size: 16px; + display: flex; + gap: 8px; + + .number { + font-size: 20px; + font-weight: 700; + } + } + } + } + } +} \ No newline at end of file diff --git a/src/scss/variables.scss b/src/scss/variables.scss index c27e2d1..ec782b7 100644 --- a/src/scss/variables.scss +++ b/src/scss/variables.scss @@ -26,6 +26,8 @@ $background-color_11: #fff; $background-color_12: #c9cbcd; $background-color_13: #6e79d6; $background-color_14: #535db3; +$background-color_15: rgb(243 244 246); +$background-color_16: rgb(229 231 235); $border-color_1: hsla(0, 0%, 100%, 0.5); $border-color_2: hsla(0, 0%, 100%, 0.2);