From 76aefa56e0dc94a2a131c04a7389b476f839944b Mon Sep 17 00:00:00 2001 From: yoannchb-pro <71560747+yoannchb-pro@users.noreply.github.com> Date: Fri, 31 Mar 2023 12:46:26 -0400 Subject: [PATCH] version update --- CHANGELOG.md | 1 + README.md | 4 +- assets/popup.png | Bin 43120 -> 56487 bytes extension/popup/index.html | 10 +- extension/popup/{ => js}/index.js | 238 +++++++++++++++--------------- extension/popup/js/version.js | 39 +++++ extension/popup/style.css | 6 +- 7 files changed, 175 insertions(+), 123 deletions(-) rename extension/popup/{ => js}/index.js (94%) create mode 100644 extension/popup/js/version.js diff --git a/CHANGELOG.md b/CHANGELOG.md index 5c17867..cbd2985 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -4,6 +4,7 @@ - Removed langage - Added a button next to model to get the last ChatGPT version +- Added update message ## v1.0.0 diff --git a/README.md b/README.md index a0d4bd7..81114df 100644 --- a/README.md +++ b/README.md @@ -20,7 +20,7 @@ If MoodleGPT cannot complete one of your moodle quiz please provide the html cod ## Set up -Go to "Manage my extensions" on your browser, then click on "Load unpacked extension" and select the "extension" folder. Afterwards, click on the extension icons and enter the apiKey obtained from [openai](https://platform.openai.com/). Finally, enter a code that will activate the extension on your moodle page and click on the save button (The extension need to be configured before entering the moodle quiz). +Go to "Manage my extensions" on your browser, then click on "Load unpacked extension" and select the "extension" folder. Afterwards, click on the extension icons and enter the apiKey obtained from [openai](https://platform.openai.com/). Afterward, enter a code that will activate the extension on your moodle page. Finally, click one the reload button next to model and click on the save button (The extension need to be configured before entering the moodle quiz). ## Inject the code into the moodle @@ -38,7 +38,7 @@ Type back the code on the keyboard and the code will be removed from the - Api key: the openai api key. - Code: code that you will need to inject/remove the code. -- GPT Model: the gpt model you want to use (by default it's "gpt-3.5-turbo"). You can click on the reload button to get the latest version of available gpt model for your account but you need to enter the api key first. +- GPT Model: the gpt model you want to use. You can click on the reload button to get the latest version of available gpt model for your account but you need to enter the api key first. - Cursor indication: show a pointer cursor and a hourglass to know when the request is finished. - Title indication: show some informations into the title to know for example if the code have been injected.
![Injected](./assets/title-injected.png) diff --git a/assets/popup.png b/assets/popup.png index 0348af315cb6303f0252ea29cfbe638886e84763..33be60955393112eabcc0b6241104f35e903ef20 100644 GIT binary patch literal 56487 zcmd42^^$2J6$5;K$scH(HS{znD5_H#&g{tlq`2axYvDsd!Rq_(K{@*b z5=cQYt$Yum@hA|van7Rt$f-c>qUE*P?Xz@^A&u%h$)2)n>#?O)*!n)gIp%$XeQ@Gv z!?POg3a7X1e-G?E-afNPx4A!+_~87Gx3oz3Si35Au>$$G#I8%xgN^N)gV+b54z+WY z!Q0NZPq;2VL^a#^Wxc%}_x85)Ko&kM2Y(m8f91-R??53Tq59Q>QIB{GW{s!EP#u9l z(8DRgVDJq_TJrmkFg6evoZkL_%@1LknwnBBNAX1&1mW1`#oXqw(<0KvY?wD(4KmI3 zvEzWU87nnJr;YNAUTXrC?ZvjFa{A7O&994m=D5UJV=+83k4EL^ef6mIe$3m6{D8sqf32{~= z(n2tpYF~(}C>q+=Kx|&B4xJAyoAC>GgV?of3a?-7Drcmb%PDTl5Or7h519_ z(d(cc8MArR7KI6xkEJR=B4Q)dt1}=Q!<=>T?WlbUR1!B=1V(-Cv*uh_TD>5fSn}Xe zWSMB1ERe2QEfxLAKt$amNmi&7rXgq!LKPwSK1{oQ&>3YL}PB^av75F%^?o)#q}Nc<6Ewyjz+v zSPW^&)IZPx#kAC6mxPgXxQ0}h@SVNC)Y;hAgEx{ZZ(gL=y=a_L5GVrQm_NS3dl(wR zaqcc@hijRNMq-B-y<_xdIYYMmI1NPr+#p9-QHBbDmK)&6Nz-IzLvxzY*28dq z-UuS#lR@6Rl1gHPO@4Mb^#(ut=$Wp^UViThxP!%c{n4*TK2}XzyO=aoXd%V8jH*oi?~v=$BP{1y3SP{#&(m^Ozm^NoC6uOluf4*m z6b@wSBFq4A%HK|G8=EmUOmam$QTddL$H7lgb=KI3Fm{vii!hO9Wn*;0yWo*$I#>4P zh*du*DQB@WMLpC;=iu9SK*80F(`sLoC(=)JcvX+j*e*yE0v; zlF!I$N3rL&7b}7R6@L_cCvF(!T-wgAQ69VRQ}~H}@Oc@}s4dIHbi9sp-aVatdAvyX z{_q;unwfkgWTd(Ab2$K8jp4~$;G#MlbFb!*3{VU2nszqIBBtQrs{D3nR6j@ZZ%SLZ zxr!4omT6>4M@}juksMP=XK{OhH+rJbUHFN?h_ze0#JxSM{29>#k831`hrqvaEAnv* zs}$K`spHSm3i&SfSY8Jb5^sh2G@EAoA6p7C1O0Bk z9!|YGJp^OiKk&XnQ{$hvlf@)`J{*+=87yI7w_YdkNG(D*cvEuA+J+4IH4&gRGnDU0 z8O_N-mw`tW9raxp**rzEc{93l+`T+h+(6CHM(cNs12)(Q^lSVsL0&Z7Q>9W$7vWD# ziWPZXE6&A8Pt?fd3T^7TI$6UobfmG*6wG#R9=B-hb{|^*h`fjE;9-_xB2yQ;LhzWs-T~yP^h6Ia?zZ1CK2;XDd(@p~3t0>8Y&Y)T5u!Q> z+m%ia4h^f}=wkO%*-A=5m{F5gj|a5BygHUbl9wm8O|hIMl26)W@Xj6EfG!KSvn@9I zQkM+_!$e6uVRy5bhwH4-%NnHvt2&ZN)4LMzxU$1cZDf%&d@yMPG77L0gAxD%G^Yy_ zyzO3JS_TAwUkwfY7NY2B-rqN9`>8(Up=K&OKQ&xS$O7Pwj!fHHjn@CDGG2w`>ze+wOIJMS7cO0X^mwyIZs^?$8YsVa`(j)VX#SySHeg--~@X{#=rwXtG zNHa1L+ZPsja#-IM@yd{=F0!qkfgzSr-Az}`PuxZ)UnKRG!c&!0ra6jqObc9i&fVZ9zCeT?aeyYFJy@rI_rqm7IN?%ksP$-|XI*M9mTcUUWYIS5E! z>K0hOd@Uts=~-|CVR-`JM=Y?STZdKUnk`ufHZ?`A!<)Rmty0l9mpb*p3p`r?wQ@v5 zJHN04dR(~29#T>8>W^mRrwW16mRjiL&maM(A-x}iV@q_dD&fH|a~0{^n#-iy2kTgp zG{Sa&r5+q_v5`1Ie(Yplh(?o6=K~hxxfP@hUfa(D?z~ebmhm@ zkD{YW-T^u@&qn)_9mUdWW!osjv<%nKm*?L&@GjV)_z#-bmDv5=ce`k1!mr-CT-RcXCAZ`7Ql&JxdN}B)ZT!98vESER6-kg$;jSoRM8o0q z#LoUQyyRv6m&#Jts*2@n1M*eB=l{EF69SgLSYf*esxjqt;ACBkK_wGA3_OUV-5?|9 ze;Z1@s*dye5lj2c@JSOES>lVHLC*7t;R82Z^N4-_vo9ZNS8 z&aNGZYt=?J>K^K;(3-&RY(|j^ZK5xh@$jd$%!lcwH*?Rc$b<;N=yQ%?(jwnB@1tVZ? z)*>ROq&}jYZg62g2)8|7cpZ|Iuy0hTalPPhsV@;T2^+`J4a1|no%3v#Xj7#U7G4fJ zS1*llXZ_WRgZ>y6XCxlAWmBK;qC8;Gi`5IPs4@k*OTn{Jwa6Wd**j>$@AVFA^medy zkU|#51ZO9Ye880Tsszn@v?2!zR=+Iy3J&eb1B_ArF`q)A5`Mc%jjE}U2i{hE8hloL zcBfg`YsNm6>u7p`X08BJ$DX-FOJ^FZu65)#eJ*la%}7;H$fb?4O1D}sfpYs)WN z%)OK#Ris&0SX%t@=3P$j!C#8Ui7+TU@+?J@inNGoDeehiXOhyn0W#_*M?Fiy!3QuA z1>jN?l?l`?k8R$$I|etU*fIO-rXG)(Pb%MGqw`GcOdDvEua(qYLax=bT& z$%A)3uA%+xksApPn3O{4EBA?pmw3 zRnU?9W%$=G`0sk+cRN9@HDLzc-4?C^BsSuvsDyV>i6z^+$!L{_YPro^?)yEJ9>DJX z{I+A9F0}{CE_qtRO^)$!4DE5z7b->7QXvmN zAwI4ypAJog0_=2Q%L_#lzvEp{qJN;YcB8~q+TIH#jbJ&5Y4rMZ)<}Fz>+Ht4t9Dst zHh9%&{hxb4TT5u24uFs$GT1;u?1Ah0PCk(KvZ$ikz&D0Tehr3SHI&3UQCw%-inC%2 z_AAQIh-FJYZnbgthp8gA9h~p&4imGKj}|Mc0?j+DDf>X>u$kl z)|)`jcC;R4s&(re!UNSHStS)ZS_iMUt&Aj|w9U`aeel@PsKWaF47dyrtJ*VU($D_q zDh4=ZIvsJE#(|pJ3x&zA_Db(?#t$rA=BT2L&8pD(b(yIRbjM58Rsj3iDoQR_##VAV zTVkBQ*C@xVIdNj?c3IC_84pW4F9*uLmMuw*aHB2agnz=?JpaZ_XOPu1_hVoobcWVM zX~=*ksT=pI)7=KlOcmM$;#fml(Ghm{cuB=mw-;sgvr3KI7VoG3g4RWcEUi|3K4Bg? z(zw7Klw8S|=hM^h6(OIQLG!peX#pTp_h!vsb=H^%VY!LNABmC|xd(g|h-+yv7tvMf zl1(=mzr@AbJEGL02~GJg^=N7+UVV)+WUjHlT)!>DiwwN{tcxJj zuJ0vAefnC#T=_a)WpmhhV@c{IsM<_GsR;5!`>>}9${&h&CTc~;M~igOxEXI1^kYS{ zl!^ONIYvb-tK+RDH`Q|b8NaYiO=Tc8H!xfPjG3Djh_V8#jowQc;Zx2(i(3oJaEQYsi2Ad&bL+u{BB}9dOr?+q ze~dR;jJN`(q(hapuT~n^p@Lq!aIEPQX>^Z}oDp}8^07+F6v4Tw;&&7VRX?_C2-#V{0=xvL)@nV#YCqE&sN^dfkIRG$ThlWS|;n5E;}^5dxh{39+izy}%l_?45wLxCdR6%bvTxV!QtxOVsE)MI0?dCgP+*Wwj5X!W=VsbEk z{>vhiSPQ(z#5pRMaEq%K&dXm*m!hG%f3%sX)PBBOIu#{z2a#Gb$w1h4ME%-QwJK2F z+;zvD%%|vj9-m^sE~-+CBNGhc)=;W{;5CsPn5KITcg)8rqMtg;ywV@RExi2U1DmSH z8zN3>0G`r_QD?w+M%__-$F`~OT zqK|?P?I62t`S%FwIkRFfLnCYHC=DBS=H>59e0b$FNYC!w&`zJvl)-02IcjZYqFI>m zvIVOXEGA%*q#5{arUc-WUmb6j0;)5+c!BC=ECcDrJDiBv=KpMM}PK673pDi-UzDk;yIL zAsk&}mLu^|$is^a=l@>S(han!UkIzM`?U#yW~NzwgD(g}Iwx5_<>kQ4^_E@Il_5JX z--p4lEg!zE2vK!n1JufmWUnBWxs`ZWzklzrNxdmQlgEDj&^u%>2ma$|g|MuZy&!Ra z(JPz97G^&#`@RXwR|!+b-vC(^#b$M{?Ta|JCw?bKH+Hx4 zqt9Sl-RjeK#~~enHCxaEe5-s)t?0aa_bso~z!Va$Bi-KV&v(4)%!zbm&=PZiw z9KvxIilKAR6Q{^~$lk9veX;)I%W>oJk8FpiqC)Z^^8EJA@d(aJNEyB4-Cp}Z=M`>A z(iYu_Z7aR!^n=$z!f4owa%J>DobOdm zDSYC)<*VGvjy?jw?-v@fGQrU09)j1w&(L+i{kV9+7}WOxh!OhSmTeEJBr4Zj*Z8_~ zQ_IN9s*|*eGK;yqQQV%sUAj96arJKg=3u8Qz+HV^5Y)m`esx=9)r5hTLEhAkL}|(n zs*TQ%=>6r;ZFnt)=~2upJ{Kuu>sZ45Mst^HgCXV`n^qVYu*I+$*PsRB`fZSE3khNW z-VcqpvVfw;Y4)PyP4x7-Ji$prnjWR*Epgc0fyjqk_n@N< z>=5hj`%J~H`DkJ4IA<|ssoEcRQXLjO7HWi}NCZ-g{^Ll~>WCk;Yrf>4f77R-4f5}N z<811$+L+(MvPFN?GlQd@-&#NSHZE#@*8H*ih@)~CAEhX=mm%ub%eer>L-1Z@)3cJl zk(YOcK`q>cakFM;$sF{^lPaEd|NSK6M^_IJWIn(HS?>Yb+J=;|8>&0OsV@SFY_n38 zRR%+V6KC9d*zUBUa5yU;1!@92Yd-&-`FSd-|BKv)S{SoVnOvyIRxVpizS4IGcTm24 zmDqBJR=ygd;k7I!wHAff2qPCl_o?I=KYFCk5b8POD!Z)OQ2UKi%`{PCRA^-BBM|6h z&(gAA#^+*m-J@J?u#laZVZYnmE*$HMQ40@t$SYAv;|KB1nK953VVanQMxY2?b9p<; zF&EMIx8DCq-dte<((=B@45v!Q;pM2(wyUVJvCmMUfPdqXoApxJ`pcQeZrB=MujmGf zoJS|zC(*d4)zTcr(AaP82oj>z^kTBtp{PJw=Ygd`HS^sJ;+GPZNc365I-*VO&JZW~ zqPax4z=-YQ-0%60Cdx+I?}93${n7L30D)^P`RX}4x?>c*yEXnAwMR;ypJnNvZFA6X zphGp2jp_)ndtkOlD4N}O#BYzIqqhe}3OX$l3yfut2P_Ly?s%m+-_HtuPsxHf=;`&k z{Cwg=9;Ekq7sK&6o!b0TWyz$qRhn0&K&rv6P9P@G=qB6QLBHbJRH?}%8)BK98TS4< zeDC4){qggA?l+O7g=-i81&yg{@H&cRLN(iX>mK7D4Fz#UL)JS5zUi^$*eeLVXBIEr zMPsE09gh<=&OsaN$5=g{%0P*3k!fe>VI5+>aTBx&@VH)TC5;lzm>7K#) zmX?}DMRcl*Ce{Z7so>leN!8>6$FAn9t0JrSuFWbvbq~OI*jyw^=e*^J;7xk| zeFEObDROYE_2aHPz0h-V(!9JnydW?5IOjlH;$!o-(fJjK1*ux>!81XZhASI#NU z+0DMlq?U>d4)X3dhQF?FDyoQw_FY`LPz?h?+v7ISLk5gQ)*tfmRHRi9f9wHnA=WlK zvwK!8zua&r(1ww4cfrw*|9+Vt0ikoQ1zg+4(@OU&B>cBDHx7>o5i>u@czHa0X+Fx$ zFtyY?6;|yQO!06*FF$X8pB5qgy%ARdCFuP-k~bhSjBT@e*;J_}xOo<*6@|cxbLZQy zV%)G|BRw>97+VmgfiWBi4msDO&6U&DPj#Zafl8B#DdYRdp&7}@Rs)zHf6F5??)B59 zBf#XaRB)1KSr)ue$FJg(r)+>mvP}kWH``ay#p+gPs3||Hj3pyT&hSt zFgT(1p6~BrlLePdJ3Dql=v|h?-tX|^Zu)sz5VR{?Jdov&X>FD1F?)0#M^xuIo}P(#HMc< z##zywF8F@{(vu4cY-?m*u1y5itC8#$ym9=qCKfKRg>5wyg9!c|rW6ecqXK zG}Cs0;U8yN0?UUwjxWXWKKD>xr~1i$M+*B zb``QolWK8zSi#OPkdqNZXb*D?)i!0IFD4(U%s~a`!DyPuA<9El*ElV;#2gc zt123b{$qC#w0iqdZ)1Di!dr3zfZ|2$+l zN}NG#jr1iuuX$uExP9lnA|E=NhvVf+q70QDVif_RO;^)*P&Fys_`XA+GH=r&||NOA+ zY7LLHnNtNiiLLno_SYFuHk*;F4G;@s^%0(b_;e0ekE|arG_ct}I*d)pW(r|a%T)zl zc{&?v`20`pGYsZ2If4Ct@_DQ_vHmQbtMSx60tgsUV!X4jaT(F9=ZqOS+oO5Ug0bu% zN4L+|&&+al9jr{VNZ_8G*xF41U5KDUt1P&8SQuqIKqd|Ur%$3X?bbQHCPK_G!}v3D zflLrb1L{3y?@MxeH^+vNNr!)JX>;%rg>(lro0`D+4&sao<`J?Hn(#AW!*Kb{!iu|Q52qLy?If*$*d zt2^#K&#q(<^7ZJ!8l_&nJH(5NtM|Y4%4X$~qxy41(anE;b^PvKP$3{vTYCt8x9+Qo z&CiIT3S#?|A;!N_{EnPjgC+(!FL}753%BXv+8ay?`<`|4Ur@X$zg`MeFWa=kPGX@5 z%(LaMM9;=fFOihaQ1`)mh%+5Qp*QE$;6Vr+LG*6?Qu&`Bhg-j%9TEfd+hjW}U!nS; zZ|!v@7%{^4KkUZ+c)HR7*VK*n&?cEj+ok#;(^vZ>?w$r6XpxyQ;P0RXZ6oZQ{6`4K ztSUwE5i)MZ*t1*I*t4Bi24{ESP7QnFMG-}2EXww}RnXMC4Pr7ggOxh^XTQc(9Jpq) z0{I0Rd?>aO*W!4Y$gPFs=Vs0hHh6wvU^-x{ndY155M8 zpVNd2_c&vG)F9IA6o9{BF!2$VY9ShB*d4AtPwoiXg89o8rZz5jMo>(>KKoi2f6VtY zL;cFiZkMB#JLjFQ%>`Jc3wfzNjndC@TOpDeh=<*{J$)BE_P_D!jR@ z>|H=b4#X!cf@j(4E;3}h4sYmHaQebp@nltF_SobraynSHxiYjgxxxLo9%7>nkyu{gJyfSm;JqU#zzs^Iwzi6c9FPd((DP8I*^BRf&uAd|g0{efT~_hT)Fp7E7-}DE+t7 zEt_Cs*yp4_OD8t8lO(o%_U+$zA$@aR*q*FJ%4I7;eT3s*uvOnW|Dj6LalW4%^G-7D zfs4!TN)WG$v<9``16f*PF1TPPR{)$e$H>%HDSWzA*iA9bS{7$SLj#ePO<$i=0Nk6F z;~0n%`(k7<6>)Xcuc!iFv?V3aEn0i8(^!1%HMA}EY0}mVczT14@$hPlXB7lMA{Fsa>O|tPCg|le zb6$d0V08k8p?@>8O)fZc^%c{lak#+uPtLm;i?@%bSWJ$cotT=hhMb6Y-YIlHDDtS{ z%$qHk&-itP5caVf$9}1hY|PT77Oom*0>X|yWuZyI^PvK6z}w2wS`)}sgKBboW$!ppY-GF3Rrj=(wkGdx$O0AeVm2yO-@+uWb8F9x^QrQ^v_GNzpGN4%>`BGCRj=d zPe|Epp?8{cbkv^xQQhO8@E|{xAMW-BHZuwNmJQM#2Dm$U6)zXG1m29>L`P^)3h~hd zmriw)gcKCE=m?GPe!X`f*YF2X|HZoN7<|w!jbD?3C(j0YxPUGWn6u6Gg?Qo(p>ZPy zWYTrYI@uU+uBSdCK#rZ|X}r3di-KQd=;Yk_FIDX)40_G5 zF`a`xyh_gYFUh$YUur4G532pgAo0dxU_0Y^l$jhZPbKHcHJuOir6o5NjHa5x7#y9u zZ=lhzwsDqVBZ^BX{pt1qt^{OgG!-$tc&^`X1qPI8Jq!4RYJHyGO96FdJ58(tE#hMg z!5r;c3K+&iE%Q7Um#)yQlT}I8vp9CVOMP9mz@IsWK|R^|3)Jq_xzs@Sn{18(Ul(3) zh=-cBeWw230uVY?m+Eq|1(L(f8Vkz(>_Yr;3Q#`UWa<54>gVbnDel;GYM(Z1#SiwX zxS$#snV@bJsi0YttLcX4bU<}!V${7Q8bDbJR&j*-EhZTv5EEbbxB7`G%CFc_M@+%Q zk5b}WZkNubE85%_F``cdItsbONbaPXPI&EPt#dP@o0?!@wpE0Hp=`(e8zg!*lhO9j zZ`z}vUfUrns>o~a=>|rT>Jx7jGbLOMeMRZAL0h>a=1m} zBIGR)qezBLMf}Uv7bj#Yf8GK&Nfji34no5>f6@C|!~hPvqONEVyb#W$Uw#T+jT{+k z4@VGYvgF9(e_HXG`TLlUn4c2k?h_RMMVKK*aTjDQK>T<=HAQ~@`iE4x?yUx6rrwhR zK-b1&-I0Hqyv=K_MMpWs?Q?^s`EA7x`AJkQ;Cx%hyjj&KsqbsNzL{YLd6tLFOq^0e z+mPDc^P1QU-Rp#F{x<_1Z?-YO=>kFu;VvHPYSLwIWhjWRhM9?_ z$2DJ>l~Nup?FZ$&iYWR*&X5$>S|?mKRKqyN061~N`!ip2J{iyj^31|ooU*>zTuy{0 zU9jR8;5D9i$2*bMy&&i zI@p>r8S0aj>Q+BP}9U{m5`{onFqqexQPrsSR2%;E=xkHHKT+W;Tzv@rjhp$YUf88ln{e z9b6_R@GQpZZ1YFtzNh+aKudKJt-|&ymp#(9C-u1WyXC=OXu%d)|1_fK$bAr&tipxh zJzEfMk8s#F6(|YJ1_HqLX~VtmXx}`mShkD%AWXH>IhcgScT>=;bw&-p$z`M^>Y^`u zRpSj9N`vk>7Ca!+hDE%xm>0+~z**iq*0W7#`4M_Kh|wC;7-@biJUFXrwDj5XzN4DV z@96g=yT5~U3n_x(Lnj!mF)m<4LP_w)vpLA_Jv(+czsFAz8Du4_k^IXH3n_4$`k^4U z|M#mrb`N4vbflu^*~b>O0oljuzfUYj?%E(0c-ZErIKON$wtYEb(ng?c{Adw)RhpVU z+pbHMc!LY07=k5$EXj(`k62?(Ys(uqOA`XUydkb%H?SnsA=LLouJcTAHO7nd) z?eI^QOJf1u7{LWsRXC*_|H3zl*ql4I=fCN)6BwGj0L^crrp8l+FglqFE$EN^*Eap( zVS6Qj7pBJur}jO3Ala{J#Op};tig+tgb@4xgnFk)US`K%5gYQbTR&O;v41M^G@9Ep zzKGbR+x`6zl(i9hQ^&wz3SVes@#~PPKqB&A<1g>d7oJnYTy}yAtQ1?rAX7i1Yr|R&5-ogbE|GYzg1xH4bXcFMC0|U(_1g`PX^Tn(dTN*tjOEFt6 z&12ec%N`#-W*QjnuLx90%sPUCy*xIyCE6n(_8vg8QgTlRg~BnvAwYIf9bJjXKkVTt z6A7C(j|xV9tdrGe&&X$pS=xr5v=T(0dA*R?sPTV9pFV=(bPHwUF&Bg+rb`Jb&HT~W z%E8fsk0l(nX4pe@{3u;|o8mNIL5I7xNR+^McY<#+gwGDAI2^#LRl^_hdztP+=f zS+%&`Mf}q<%?LiAA@`&b(P;YzOBqSn>HM94!IkG)KUvTOW&e6X$Arby?D>`4Ym?M$ z$KhReep!U5D;Ng^5oXZ`NX(sM`ywE<{J~MzP3m)4XaqAF9r}(RNp?oKvP~+rh{^H( z`j=jI_^0GBI!rJt`MeO&eDfYhBH8+0QY7(m<+W>Ig!yy_vROsEC8*o41RZvkD85R_ zGqk+f-uC}0cFP51t(7xsHnnw6kwKmyEWzFAVZw zyv3Hqy7zp(L44z6mG44l`pu&;q9MFMfIMeKal0I!iWupP04m|)?QP?fk-%Zn9f5ZI z;~mBAn0^THB$lD5sN5{>wy8_Uvt6v_M!H$T)R+I!F2B#LK%PY^?-iW+Oyp`H-)s1T z72erhi<3R)q4-&KrEj%^t@L z8ayh684i9X`yuh4K`&yyk_&b3Nq<57i>cmrkzC?i{T*j)-b=+We*s4a%}rV`6+%N2 ztzHhKBzEfF0`=lYQf(fJN(e3oU0r?)2-AY4Z40^r&q9}%ntzd5+*$M4`$UhWz`TkD zp^Kn;KuE%%&?QNnud+xZ$fSwK0HMN54wfvUQ)}qX*#;w|oy`AA(fPR|A{VP0fge7= zOta{nGj@q16a%UJG4*mqzsdQf@J3y-EZcued&DcU+A}|rd;46aceM zd}4lZv9w<-B0@Bw2OpT?ZjLJW7VwA;jK))VX~a;-v49T3|7{&gi`dd|%7UtlqjN1N zHb0legYnP8DTU2rQO&5|bG(8z9eD%17plmiXJK^9klt_r(Jdao?$m>j!8C>SpD2b( z)1Pk-jOF)QqCF*CjjU0WHL|U$kC(wT2s3UnJtQRbpJNx4d;x>Z2$G*B$VArvRTnVG zKKTFjTF4*KYuA71`41WZYzN&G! z<$hY6LpAW-O>SGbUrqN0t0Wu|%o}nz$=P zo&}JL#=OMef9+d`*G>654%ri{T+FKFR$ay#G$ZZIB^U9X4utWih#7$^=(@vbUMnq` zpEmqmZ7Necv$956HH~m?adLoMMUBNWqHvK%4 zB4l(6_24RzTixc@n%>1s8`RCO(C%WmN1sE}_Vd#*3Gp3`PJer6nrQDiynCn0#Kvm$p*19u*y8sUOPhViH$pEe4&`_dC{iZ9GL2HO(uNeV(94?KQm9 zxoLG0jUGRV{M7zgC7^f>eD~zuN6C9$#WK+PcQR~-mG*o}?8YD7Pc}?-fnvsOE~%~? zI58biC}s)-GE1xFMu;7?*R>~Q1-x+>%e0d5?F3Gm4_Dl%1=~YPA(b&WJOMT1D(K6k|F3m2IKT>n-l`G8PwcvHapT!f>mY{ zcf0xwUZ-Cen~rJnyr#&d6(1}TOGWT|cy$T9?#mZeO7#$v!y1=fcCq=k^XRtUmhwZs z5|uHwZOfRG7MqlfCE3Z$Z|3Qj7tepbRi#@$^!qs0s`nPi?dh(W(*Ix$43_2j?6oQQ z+axJJA{est^x-+~_tU}V7CVIGqUgKMCru2D*E^-mllM2jEBInTpV--phGGjo#8sj2 z9Azl+3UnAhBj#N**Sfs3pnMBR>yuukg^N^YzKVq|>PGSTg3gduC)Cb@r$$vJTJy`g z@~VeTYS(ZBmd{e?jlr~Lb*TSVPk#HK?xXUw+$CdD&9h>?*+6H$MbYmA8JmIE$C|!g z2@;va^#45lrNMXhqxOlWC#s?L?&V=P*fXV`O) z>IY->^gS+FRmwh3&#wMq#i0FI9mUM+(j0c`KbPpML%TCU&wNjzM4zM@>G#vA!|8Ws zRl2#odzOna{#T4Smfa^X{5qAki4DK#OGnFNHAPi9Qy=HMk}pObP{}HMlOC)U##Pxs z!|m5;t30AJpWOdyEa-s_n$vhySNQ9$`o?)e(^h%q06eK@cIVgMuAJaM63+rp($_dv zAF$1`ly$ELAhp|PHaC`_NA0=6{LiGnj!+{HCs7v4b2%q>TCY*TNve8Qj<)yP)+cR&8+W#PwtR8)vr6bF`4)?wQ}cP*gk-3x`fuv+PIX4i>dZQ&V=6Be(;f59m zWKd@|CzOrN!q$gb{Drdc{0m2Ax$i-BcP!vL(=|aDk2iFVdKm7L5Mr8*`Njedbq$5S zY0p*zXG?c{s^H1n<5k%!&s7=r(l6g~cfHw?wjXs4G7aT8x_-6v({9-Nu#_Eh<&zO% z%QBI-c=SdCrZlF2*_eX=)v z>Hnr@&|a&}pS-YAT|(!K)ZUM7?Ej8^O1e_?alQ(O02DXyNTjf1Kt3X+S2~>&QI8~z zGv=?ay0!o%W@^tc!7y^{kp0-t4pXp=>E#0o0CDzcL{m?QercC(>2-(AArAlPh5D8TNB~w@4N;X_X%t>3s z@!^pq6Y?(5MJ&EZ7F&yLnpw@&qDlW{AiR48w_?1f$1K5eTlygl zPDP+%#=A@&^Kw&M#Hem);jo$TdaEFtz)iOxg+_>lbf@2<8%7(UmYMYRNPcOBWc~h* zTaQmg=u5zFC-S|{rk>rV-q{sPL!O?Wts_d-3|7(Ff*!$T{Wp@!o5o3ps^<<(|)_dZ{y ziX>$HxAMlgga3`SQ9od(^Uykl8u{j$P4fLxJp}dOeyj$Us^p)&0~$Vf^cC5{oP<{qyPVnoHgcVqT!e5zx$DoBHE*J`_=p}+6PzTAyL!^Gl9Mc3C0RL&F#OvQNaw)XCJ4ixjEgW zv{oXUYgWy%Dmd&kXv{L)S)8eGU!s@EC{sa&!$?1*=36_T+m!XtqCnB@8Hzgpt<&e3 zE#m%v`{&aeLp}SrHzTcwB4E*dC$Q-FCNo@~(HYBaN%vYKv)4=G)vP$G8&F2=ptFKd zJ)io0!-)xLII<4~=l6^^%_NLlh4!bpu*Xm%BIRY!JLU~t1i1vu&T2@&pepx>l z&ELm`O`2{ZLAuroSL3BuzdnW|eA(^EK<3krq_gY^ue(Vq$^hfb(b+K%zPn)KZNCcn zDj_wch8fZJE6iZpHxFKaV_zv0uca&hlAt*dqhE;Z2ibbvWr=iAx~%4NZz*AtH8I7( zKHxf}4cT%QWxK37O%rSRD<@=wci%o%dmxH&S`Z z*6h*=j#^Sp7hM82B&GPjh)BOHhsIie%a8tS1-zdA@&>K^X7*D~6X07)?taTsz4wWE zV(LPsRc=BRSh!a8YQ_r^ZTdzBXxKUv=Fa@aqc`&Hvxo{Kaz~^`Y*74QZtKP)070kI zp0KR&GjsW|$xXQnh$oy}9ZE4n^Q>RNiMx9m9Rp}xSuCA_UfC7h;)l^)%9CZL=GG;7 zU9JRD3A`xW6vqMnU>C5#qb=q)dQ{Yg2pgkk%3-E2R25b++wEjERIo>vgSJ(a z+Yh3(#-6|G7dXY275QG_S(J^_9#@k4CdOq4Z?AteKlaFE5%Jnpe8&~$a0J2G&A4vz z{x{c$Xjb<99n5$V(s{JR*S?>Q2@|7S65?XORM3#4arO`TDq)GiPtW?m9P`2s_Fi#5<2z8|7*~=2;cQD^bg@{h`*-_u($i$SWrfb9rz$RM z?H@p4h3jv@H&>}LZx*Pl7$+_MhvNZ#2>i8%d1D;uF|OO0lI&%n&Hvg*^jPi99n^g- z{$&IvK4;JxHC00O)%+z#Eq+n@oeh2uQHop8;K)X?-_uWGUfCh|Uf{}lUS7>UI&~*( zB;HL9<94x~&6sdY9aoUyUY|3cIa|~%pwKh_Cg3_PRpzMjqMW(sYn_L=VcM6D&1r@L z*!d<;8A@)}PkPFhm6jOX*qrx?LDnzYWMjtJp|bzpYe&J0TYr%EG&hpBVz6KtmP+lh zfflHHB#@c<>+j^{zv;L|mTgWfjm*ir&wp?9o(6J$E3-(74iTPtr@{!+yVp+0$mvY7 zs^{{>6p^`r1A7j>v&5;sq>s#5WxZGXn;Ab|{H}ebi41`TANKc7+F;;x{(`O~spVD9 z#hn~q$(#*;%V}Y5^Mf&F-0id1%h06*z21Nau=FLo-FZ*k=-;3K_rdmxusFkG3#l&X&k3P!!G2etXEB$575Jsy?O$gsn0S(8krsO%$54H_BxzK%WmcK}t#$LDKJT*^ z-7PshmP}c({V`(sXxrbc$tKXNWolaSjxOkPYnkjGXz9<_#m_&Iewt-0u|Vp_hQx%R zU8<7p!*OwjrbY<`?V4<_ALSJk07>$NwzIGP4|i`F)m9gwD||_YSBjU8zD`fxm>EY2uki2` zYee25jh#K(kHSH`y&rsDf{uiGwy2a=dSg4rLcV{q4Y&*kN)1?QgJWXC*$X52(foBX zqJOf!g8ngWPTG)rjY?E(R|)EZMe7Xoyw}@V+nP`p+%XH*Kqsy3hP{M^sbKvc_Fyd`RSd)IEVa6HhiZS%1j)4FowApwY7t&NH;q1>@zjdtGwVm=Q z3wgp}O|xe&m`L33hx)KjxG@(}Ty9xD zo?`j74O!0adFb6d@7qyhAH{g2Bqui#@gF|l!tZ>BLGK(YT)76BPp`S(qCZ^Af%Gxc zyiFG4jD5(9jKjMuDjuf{Yy0QwVwRCkX6e4s$da9JV{(;xp}~V7FPNP$dMo)!)i+rM zOP)8clx`^zN4M4&mUECzdCLm65qFkYn<&%Ki}u3I?%V2LI!0= zhZC+`-~uw0Pzj|Z2t4R-tc)T#QBOq{{7*koSdl`Yt(#JN zQ|^m6{c1yz8ruJwiQXVU4bX|Q4@~JZ-K@_lKVIR-zQs;%7ezaN5PTa@!ab!7?=ZhJ zMdRRrX&HaK&q;+XWRM@5$2C;lYO_7qK8{}~=SfkZBSabYb5U=!nn9N~J33}vP^5+b z*)=hINQfNjYe%9}^0DAb6T<6c%U}>>90O)&U$}D}5yaUjkq&PW_hNhaz~~X%kPP@) zfg&_b6*AUHW9bJBuU9^0ov5LEc-w(i4uAL_@KeU6Zqtjt z%NbYSJ|rLmwPB~)y+++7gi^r%e)hKJv}1Jkv=$B@l^SBrA&V*J1C^v^LJ?? zVTeiSXT$SGz7(_ykA&V5+L$biMr{-^h)PlHqhXniDRzy8X0fZl$;SFl!F=$f?pt;3 zI3EqYVlZLGE21<9Mydp&A}W8fUii}MFtEQk>VT_XoQb7GK@n17B;!zvqv9!E;CU^g ze_Zit{KfN8_=;lth$XRbk0r~k6+_!TYN{8n4w`m)DDdOUH60jh$@q^1zt@RB%W2@F zwhPx_b^Ye3WkD+om`5S9!qwj^YMVxX$V4rn{`P@LQnGU4jiTnd*^P0&q7udBk4lA$ z?&w7yCLuY5%mIkRnB8xG1I

Ad@__8|`ixj~0T&INBFM>t-E3fPl8tQPxTZOMpcS zvSn&v9UMx$W$p!aKvmD+{5^3@w^fN28A{JbgI*FIqo4UyBRm>I21+p$rrdgA#N*Uh z@ydB5IGq=C9;@?;1XKEnDE?en^o#~cvd?$c{DRkS*TSBH5V8>C0S@g^jhiHI7=(h! z9i;8~92a@gGDzqT*b#ICKJyG4V6tut&N>4oumfRIofjz$aY50q#1Q+#8vIA^f~)p> zpmhJkg2Go0|iWz81C70%&kr7o&RRBOoUjA9v-I;2~9_c-lKSiWdA~=`X3z^3=EF6tz&6RDHAVrq*9z--7g^$J0cM2Vty&W1;6E4*1T@8g91mT*rlUrLg4GP9W7}^e zdZZqI3pPtQPb)g+tBfj5&9%Z?<^-e`GpKQpM+LLvcthJ;jiUmdE^$I-^wO9rS39ty zN86JsjhI6Y=J=DLnEf(-{wA<0dp_+Pi+ z9_-wJqa_s(!pr6{0B_B(sN|yYqUV%C5!RW+oKXWbq?$-4S=Tba`rSMGT)n|&`@#6D zl4o*L?c!(0=FCAse5}G+|NM8qzAjuitCE5zgI|tE+=Wq(%MIVd*IGhis_x(a#99fo zi8sr#c|3LYsr%K3hB%&UUme=CbM=iUP}rF8J;Q!yH$|9 zUvAatKFxLBOxI&{4t%P!x|G;kHHJ+-0e|SSwmciUN}e2PUxzCD0^^-!1ybr`Yt4x~ z+=b_U{n99%_~R}$OxcSs87z=psKk}hJaR&ZH894WCCp5bTp+gFVE0;3)t@E-4rA>Q zrr{nOV3QCq7>AMvtc^4$?pI<=pUhYN0Mi=B-{B!fn9s4P3jyHa;j<2EmrvxPIXM|M zRA+BtyWgH#i^VTpX|SCA{IkJp)duA38di*=$PaTq4Tz0Xk%Q;!NL0UWD*B{eQ!k0P z6~zXt8S1SrtzN*}qQFEeqUmiR5L)>52b^~Wtl*6Fn&24C7FET8%vl$S(4ngwKg^o7 z9GgI{`T1dvh3c7~3m!^3*kJ?v=kcy1?eASer*lR`sMJwFb@|m6M65 zwaGM%6q*`*y>*`48Er0K_NF2Ja?WX6QNev`ak-tCs`*B-3jBi%?(GVJi|$!VdDJ_& z{0x@owoLKUkmDeB+v=0rCyhXhDJ4cr1*h8_ZO}?g)T(2oKBZM=Vk3yrmH3$Ovg{UJ z0GD%T@Vmu`(g6P_xQKe@>bVEBP$p36EWjhsa7Kvedr4yNGP4R?VEkRF`HdQbZG1Pj z{BaP)Cj}ug))I^Jb{9lXkZ4zI)N!R=GO6l7Z4yzH@CLhIQOhQEfc!&U^j`>OaSXyki{=#^d`U+ zAy3chohu~^;}3|S&#rEL$qulSZoZplm2l_4RIF<4OVMt!lxj=T;ceSkNvEKhvvm0$ zcD}Z6&qXyhGNe*tsRZxMDsQ%OTbzswg@OsT<7gwi@)y6*3O-9zHzaHo(M_58BX(Z8 zUXAt%-!pc%Wp3n~>fSdzH21`ZS1e96bFReFsoGFqk2K^*48gOJ)!d?}IKx+bmQ8o= zqr!87Gh^P zFnM|>Z0*2}eGz97B0!e8q?i}n$DbtcsBFRUwW8hs2*TN-2jEYe=^O+1`Ctm*`<=v9 z7{}=iPuo?V;oFCEzi%f$*TmZHi5mum=}#Y|=`@)rH|{k-UYtv*-a+Pa&Y;SL`eu6R zbG#wafWjL-UCFsNK$S1KXJe@QW3O6i_}V8lwDvQA`*u={s1I(xY3jDcUX=6CcVUo( zYQli;1_T<4nr9u}B2tf2lE)1#ad1|eqJFWckVEf^A9ZwAD@u+gQesCs2K^=$Qb!Lj zxI_$s2ZEa=mpfcFhYp z2G(Sv$*{(&3{;P)fW^||zjmMEW5PYGMRlZ!7f+8qmZXW>FmERagK_>Ca~d!RrzOBS7&sur=B!c(XFCOi8WFX!?E6+~^Kll*=cZ;@p7Iz8uQ?(Qdq zikjyg((^~hs$5G~0gU|;o0fx7RK-Umo`s2u%Y;YgG||O-+Q{QypXSVJF#LrvF#6|R z$;64r4rCf8%+nL8UwcoK*6ABKUVf(HD*~dog4tYhk!rzi-#!76?YkMaMvPI>XfdBS zqWtoOz6s(1zVTXc3yGt(j~sl%MH{fQqZ_c09p6^}M&Yz1<#Z6hf263;$23QGkk}6g z~?=KjE z^j>RuTjiJsr_)5pHK=6sF>IsVn&qlH!|XJSW^H}zJ6c}mBrM=x%TOTQ%;K_=Pl5M) zPa5gjeK#(F@LWsv3Wqnwa8j-j^D+E@I)8w4t&X$D3Rp(;-WA$>y{B0DZGNB?>I_V9 ziS$VHLeC@0AH1sU%=muy@TStqlKN;rz&j4Dq6wZOILD znMmZ=s96)4H_?ClEV(b(l6Jk4ac#cu1sI2Pi43~I(4@oW>sEusRszL~F>g!N<^!iR zVmuBxnd#1KxX5iwY5&3iSncbgzGv*Zd>X+I_u@(4;`ci|fE6(R06VUfWhdj3xB+T( zcS@2NcO>5!*`U*!iT)EEJI#S_)dC|?O7yn=uMFH)B9)G-Wgl`zj2~B{6c~eLDLl*x zj?FXTw={)TkJf$XC+!-tUnz?F^XZ@U4PuWmcY)+`caV8z;?VCDevE?cveJB|8 zl%?UP_cD6~??$2u_}g&L%w;1#Pz-6!nC)YnBQ8#oT)1#uHfvk@l#4jP$KX^v>lA=x zAjNk3bTej6mNUO%A_SP!NyWVi z-zTI-BBDf||7cpv7^1t(lW>$rDrHSpGP>M4A91e5=YwHm>E5z)O-J}=) z(vb)0ri@S7cBI2S#|Ra~j+gDdLtgk~)~%(ul%c~$KkP$Z<;9U-Qo!d64pyYg;7|Kt zOfX0%&pEP5-ad1!Uj7YqEDsC+m`F~KmO*={3@%HmtvroI*!si_Rh#tr>OFCZR{^?a z-Qse^H}R7ohY@s}0B99ot?|kBQQ)kApsVdIyc?lJ?~t#KQ$_pWuW+~=)(H|lP`d9e z?}ojDt#Qr~WlkIqcP#p~?}}BzXFAw90(!V4I#;;l^d)pwS0nEW-)n@><1XBgoLSFw zjg>h1zI&Mi;eIppL*_)wuK5y|+}C)_oFSt-BWz`h1=d}Q9eoL=23*3i3(7s)gKnq} zlt%;Du`%jM0=SBJqAP@mU@NZ)%P{}Z6n(Vt;M4R5xNELc>=fa#B);fRB1lC!JD}@( zX%uP2V~XDv@D;h2<0@?j^TZtHrg-ttjwm^xtWEE#4?&*Emq%}E*S|35oZRlzTb`0c zen-lA0rzgu>KIco*7;A?vw_dkt-m?0N|f3hodUf|`?NOJR^rmw33$8t$mLnN751YP zvV=UI=B;|6mtYuJ9n>A&sF);Q=6oG$+MV@Jd$17S7)bsKnpnZQUvZDmb=ojsqBC~u zIa03xOwEuexrA8|pxvZ+f1Kp$wi^_PN*Y+banBMn;G!*s_psPn53M2Zwm>ux%Na_` zHg>Y6arAI7@AH_Pvsaf#cZkQXxO3K68%C02L$tC_WDuZBOVKaStb_jZ@#s?r>gN%1 zjE6p-4^8>I-P^ayzZ{a+C3D>7?kX|ZCN!zRaL4VFV`49Dnp!05jdGhI)$%Ior92h3 z&e_r=@-R2|Y-5%gUdv5{aKbj@=3#r+E@nZ5z`IAFs`-k2!JnhM=uKsGfS#doA z*njKyr$1P=+9UEZAr&496cE>znocJUMWrJ>cBm3)&%# z!FZG#xpll#FinSCFk4_il1Y3P|F!($Gd@JmO`wNKJW=F_vbVV#Y|@v^F~zw1y~H!f zyKF2Nx`Rp-up1D@+h48@Y%DtXa&C|)0ahxG?gT5^kY}AQ=@Ef1gj~mXiW@y8b;fM! zUi>mLYFG#%to#0Msn^Vi|2VtAew2w7+-PXEU z!s^Yppw%kx+T;cKv~C2V94L0qqehsoF3s`6fil|-1J3ABDNz$jyd5~tpy)7vNgT<_ z3ZKXK^WDg(GRck_JI809C*CO;N8}d)t1B24h0)OBx9rU}yhl7`7tM0-Xy89q&E*o4 zH)yqMk_DI*0b=|f(-K^L)jCR$A2x*u3rPzd>Z{l>jM*9WhHUB}GPP#h<3Dyz@f&QJ z$}{%2U<0FC9&-(sPe zz7ig_EPjf0QG$t&5MpzucE@C3jk^9Uzm&kNmtY^Qo$@V?d`~2;<~q&&euZydjLI<} zA5sdD8_14!LG1SDb#GoSuxWCg%ft>ck{Js!<9H52Oz$?9YLTWcpWBAZLU0F`VAXX$K-=;al+o=<)ntvYMu_`OR02 zz0D&_7T{OBbCL~i3iu~kP`v(7unoJ(;viPF(fMoj^QMsi6RD2CN#cemgVU9?lM|-)kP)dF7lH zN6!m0tbZj3RS`$-n6FL^_^~+2*rL)T>l)LvOP+JEr(7WuX7*Ay;sK>?!tHytH5p#p zlAg62GEg?|!v4CGNm?s4tdt`{D^(qw5?y?x%TF5=RzIFm+83V00ymZqwi_VNgFSi8w{H_kvO*2L=1aEFT}u)6p&Wi^!+k zVJ2rj4IT3r!?<2xV^wNg$+k^sr)%?0|soxcFyPdoBe4rbu(G#T#>$6rp6IQIOCKt7L92eun6Erh(s zG;$lcG>X5-@pS(+3nV+>9`bgTe{B+Nb8J5o0^AgEa~Ki}Bs-WbNXn@_O!q!qug;43 zD&GHLK&0~FyXOuwsc}I$sl!|c=f&9{g*{k+ZOuDYq2V_oRfFq&M#{P)gI#J6DK)vY zW?+ev#KqSs_%|g5Mq{@DB{#2Mgh%h9yxL(oxH-}D)H};=)-q{Ac#gh;)a|$uUi4y?~!)r@&4-=2ubV`UOl& zDK0j)+RCp7>*miI;=?<(0TjQ7bqM^|JOmYE&5}8h-wVIg;8WgT*F(R}YAAvF?ylYz zkH*XEwfHkGa$;p{i2B+^vN=oKRXN-^qM~Cj0nwCS4DYcwJJRVi54pKRO0LQGt?dSj zwLysjAD(7!>(u2R8RSVBx;h_5Yol06=W0TwQTG?HGi#}6+Gne=d58X4c^!Gt&bn)# zzy$S@3if`!>1>#=0Fl?FEGu_;>wLft2DC&qp&qiy1~o|ckn8{?FSGoOvmlZ-D;hj8 zw?3{iCN9v_K^1wzWQ|ajjq8bv*B$t#8?{tApXZa*ImcayfBT-%pz0)0s0SHr-n}A8 z5fb>8NGu@3YUqza!ZrT7<} zhZGPZy!QIN>3j|XDGrtk?!lbz^Af+2v|lUVX|{j3f%s%F_{9N9s)B<3?#WI~xO^Fj z2#s6VQY7}}gzj599{LYRp-)#|Rf`<`EzCKvqbe-5DRKVCXT688^1p3|N*+#a__+Spd0EE^`8Rw^4! zZ&Q>Cd~br9Dm|ApP{PkXw5<*_(E@!ZXxgxZ6s+FR`!tL)FAeu+$ULJiLs zIc=>_o*c;+sL13(X{bLJlAVrWU*zv!hC&{cQuY6p1j_~;?d?M|Gc%DW)ez3m{K;c! z(FkR{u?o80$|U12F*RgE4U%=`-)gEyNLo^CjZa&8`!8kx`v;_KFh|&phQ@!Fe%X7;JX3rIE^~%uD(HnNn)B`&-EC&t)Xf>oCnUn#CuNYApj)C6g-L zpk^p;YV}#ulc=LHiiT(zn}x+<@ug)Jo@~s5X-m|9pU8+| zZJp;uY3eq_NI*iGC#6g+#eO%sSHl7&@}icD{+g$aKQ3p28h5BsIR$nU(XT#}PBYej z6Ri$E&pr_;wx*WTj+yzeEkEQ>uhBtBpgnK8L<*oFf%L290eY{J!7pc>7+q@9sryYd z)ds$;z}b2Pf&_Ik?q2cDQx?p#H0l#EK5pn$2DuZS4IgeC>Li&Ye`G@>M^p{Rp7lyt zcXwiqH0Lxzvx!^FfV&T*I!|=uSuI+TyT%OIos*MV2yF~5!jZF6HlXTR()lT$UaWRc zGmL?U<(0px5Xp)#26@7=4$#{k(tmRsUmJ5hG`B5J8;lWU=nUIrrP77$2|@Ns$Sk=>2NHr7bY{T9 zaDnaeS%-bNB(OyR>?Buecvw1}6zs^o-Eq+NvvB@!kOz8cdNP2i9V$lLfGPm;Wz>tS zPjuAveL5{|nkeE#bM}%CEPJkH5$H&YD@_^CFW!GCv9uT9E$k?W3=zX4P}1ddx$_Vp zInbTfY7wOwU_8M0U*ouKc~7VYQs))Nm^`sQ95#=$Pwe>!u2wL8fi`b@{+9wK4x_8& zB7_VqM>?Dv(t8EqdU)^9ZKNw?@vjnK0%YqzoCXjX3j)eZ@#D`?FvB-LKZxecTTYEa zTRbg=xYpf)_oYODrN?4zb^VwiV^L?#{%_Ya@8>6f0J{dCZroQuy*>qu$>3Dl!2iVe zHIietZKlI)!(@gZTmI?)?L9f^jwHxsko&Fr1I(WdJw1I1rrMLGG8m5`vE(CEHO79P z;(#CCKlUjlyhMf$!8Q28OR4lhe|Y(6n4b5`ExU$W0KoJEO1EZAdGzEd)CyI{Cd@@1 zNq&N`+9@@*xi_Q0mTHs97uxhtR@ynmCJx$i>@`51eqtF$3gA>WQyokb{JW%W*i(Cz zW&mTJ&M%f=+b1OPD@H@|5lvQ@`+BIKAxB-KHaFZ(5vtyCGz84_>bd%9KSYDJE$?!8 z8;z#~#JAw&v#Jq_1((%V_h_A9vaD7`BZhFf+#HIIc!Q{pcpEz1Cmt+n7M=S}w4_@W zC4$Frc1SF@s2;R5Tw$GiOb1wX3URgrETdQba~uL5mZYop{M^vCnU*-9W&tu7#9}H zDk-)&-+q4TsD5Us_WffdIopdw`7`9ZV#!yL!+4~Yy+JgqN=Qk9b6^WAw!>?tUkSR4 zK&b#BgGS=_F<|(5wj|S(ft4E+p&^I^I_@r_XfWxI?MScZbt;)j`dlEXlq=-S({!gz zgQFALocE6T!3#7lJ0MN$H;6UMO8Arc%A#%yr3Q^8C)>#` z+#e(d$b7`Q%r3snYpNkV&$L?EUJ-G(lF;#{Q9Poc$xsHE`XC~op1<(22X4l9*Gjvp zw-O7H;ro@A%A@6~y(HB2s;n|5rfLEOc9~KZ`0m>KhOWG92hgyeOpSo>*5cw5$6?Irh8!@oXrTL!5igST&q5NQF>h2LQe@ZHh+zxl<)`Lx`TqM z!E?kx0 zM#W;O`!c3O4*|Y1dK`C;%Vn}?foq`CK6G|S>pl7$*2ScPYE*aq4X9+O8$e|99!9vM87d}9yxb8%s2W^jyls=cP89GO11D<`QeH0a_HZ+yM9n6KULP8B2{ zo)91%8u#Yi#ucWzG6`sHYldA{g{mUx-{q`2fW4&!UpJ03<2RVeTfDr)zksbtld`@A zEopCtu+fNrJIujht{o0<>4|-Hy)gCjd{}7H=!x#KXLZn1*ugk8E&H1u+070&TK&5s zXOB1Z+i1l zgsZ_f+v>{~M!Ti<*ddOag#2_)n!U(6M~pKS79k)gsO8gN1s^Y+A2IHnb-VHyO_-@*(rM1JvCKN*~IW${~Yb zFPnCt;U6KQ9UI0SS`ZI~ra9NsLnO*7kBBku=^haGsdYeZNgr2g*eB9wf$n3`WZJ1Cq zz(SSl{TD5bzGn>kr@o5v4Es23=cD0XsRrJj~e)Q#GN*( z7)aZVsoAs>Y9;Vr-xqJfURlyWK>+3ID14CMlJ%Dlc=#;=X#Vqt_{5f^s_Orr~UT_O(-TR?;u{zL#BuYr^Gy~P}TiJIlLMog(QnL>wi&}pTPBH#* zC|i;r=Q34|WY^QEeya=AYJ+<|L)U@cV@*S@0ofq`r&nN;hTAc_x`QY(U^+=aG3R?E z0bgRNRreJxVx)^mA-X=vBLsV=iIyb(W9fA5mJB^^XAoK@+Jz1%D1hFuvROUsyMayE zb$#F_EqBzcEp7Cq{b+!R+U035F{ZVo-21E_5ARt2ENjsP|76ec)CT^(dIArrRX~9m zV}c5GCb0F-s}8I8OAAdMvR*H%T!0(NW^ASG3P-VQF7L1hDhGlu{98fwyW=0PGMg+O zwM*q>gK41JMvuyIS2rt*!j(to#>Na%OM`pLpH}Zw6W87?IQt6{l|VELv_~pfNtil^ zHi@7G6AJJT2>155zPP`4x4OZ0~&o|I^FxK^Q17UdSqZb zfZm~xhYFruDcOY;$x3%$Brr<(wQmZq(dLgSeql-J-?dKW8vLijDY$Y-ew!9C!tWU( z8m<`YGC@0&{EK9+(9pR*!^Ryfl5Y2i+e}M*OdL_%+{Dl?3Xte9yC3JoJ?y=)+aM4h z#gq<+f34k4o)3@X#y*Uc;J~VNe*nIWAq#`1vRIv6wex;ZW*Zn^1BYXYhS6yI7(W5Gtbk7KWt=Ni^^1d7-&`?0`jsFlHW;nf=?_14Cvh>uCzIY(n8WvivdIdHaXTb zK5H|R&8IB>Hw24F*6dI1jhL@B1;7Dl$~d{9TgWM7{LjGy1!ZV~h$azM$T&><)XcKz zH$LfWVG4hs)Vq)QlAqUq3NgvczGBGTnX%~IRe@$n@u4UGc3FN@j0$gHPan!^UG}0m z7&*PBsajFtu8|!w<9+HWr8R*BzM1?pv>l2Vsl!@|pbW6kTa-MZ~o!A#Cj96ya{U6ieL;u36-D4rpS=QH~c|}T6 z>-F#0e3R6`Nb%CjnP97SEwPo*j{BvgAYXwLb9`|=Lwlpi^w~WZ;1vkk#ms1&aaKrW z@?nk2+LtRImVGbBQ%AKfYqi&VGq>T0^{@R3_&g{%_D9K!taF%{_2IZ|0@)j3@KcZN zg%X*`GW5AOw*sQ={I#wR&qo6d?E>OB{+aE)Coo zS{=l0-$HoKTP2Arwl(`qrfON_S}WaKy4r?*^1ApYr$Lpr#)i~{PlheIa1~y0#LpqGd`G_=u&1< zUy_RmX1SFjLdGo$yvf<(k?u+uo)CtpSJSi&P=xbv3@d7UqM4e>`&g>@@v6W3-PnYq&=o4D;=>$qS$(o&0bY9}g zDTe+P$2Le{k$A5jWAS$yp1cKTjCt8osrfwO?9d%^Rw$z-w-m{bsQ|e77|g2NdXt^G zW*i%{`RRi@c4V}SRttm_NF_Om)bhjJ34WJm-ba(9Y6mF9L^^&X-eTzYNwfkYyB221 z_?}HjR>pf^Y7TVV#?>AM5{kNJJ|=cw;*!AzHjA2#9X}-1CAZd)@h*qCBUWnDVkFc0 zgicpk;#`%K8l7T`)J0idreA+THeKRLMO%7{=^PP9zQJGQyku>c2bMoQU>IN z++b8RhOa7F&eq;V>6^Y=Tk7lJ zlpl3t!TJV^NRhbhfY6_Z-d}6H$cb)H>OHx}@DL6BIHBpV@%2mjLff@AAlt{@<-|{f z@KvPmqEPqu@&R?h8XI~)f1(eOi|{}jx|-2dJUZ2n$=(Y!XJaQzQgr^n@!4AspmbDa?A|cgK_f3 z?_wfBo_XL>Za%BM2tr<$ZLU!dni9?L_qh^hGW$lTqP~x8LoRHuJ#J;bd43K$mc^+; zeELDt%~@CL)%2nXh5Bx*g}Nw#X3H$daUAfcPh8veD$B9Yp;H{+h49cq^oq0U3dxib z?HP@eba{|MUm`T@LY8T^^y~Kh@EML9rJEpfDd%;s`iK!|!Dz7VG%jS6Lc#rj!0fyF zKcBt=Z(v+;L3G6ZZ5bSJfGjl>XGSeGnXNR$mSB5X9DU>xd~5@FY9PhgeM(h4ypu3| zy#Mm8_sAaX1Qd0JT#~PFzz-NPax0~y9}Yj&C?h)P2K0s5-b0B(h;un$}`YY!=9 zzwY%x!Jb+SsNKMx{{4i!GVia)c@y3+gscNc{pC6`$mS4pdH8XBMcNOexn$y=$@iV8 zUmNfqWq-+N=z@}=(A@j-W6pQM=Ba!iQjkG0TQ%8p-bN^sq@l?J0^hdwSadc3o(9)q zlyA380{?@XkN~@dIvw~kCC(RFMED+~jo$~TkukMn3H}5d+K=nJew^+5;xZJ|25FQ~ zYM&3Ud%Ef6>FJIqaU*kgvMDsb7@#R!@rtM|%h)F>7;E{E-3j-c5BF7zCqV<- z2}L4R0E**Cg8Cd&0vdk!vagoT`Ws zFH2mmb*Qff*F5s4CRyiJx50-3^2{L>T&&o`auiomoqIppra6IyMv44g1|%uTiWZw| z9opKB2!!r+ejL_;o^F81SjPMIwLMQaKM+<1ys2%9G!FlHucW}|(%TYkd<$>~cMI!u zcuRSU=yx|c{^eJu`@A;^p^qv@&P{I-W5a2|C#5#nD$CXL=TXrTEYW`i>gcE=I|b5Ycs+WMst zQU3OC2zwZ~^g8tPZ7OCfGA{c)hzWy3(@`T!=^fF6w3U51w8YQ)wgtt1C~Ky4dWfI7u-u(J=0uZ4pot!rG<78V zZK+#lg1?-f*cMCg?h%qF*ZSf7w#nJYDCf?5*3cI>4A+sd#Ry#MZhEZZ43O6D3 zo`P6WeX_`x}~Y?Ye^1 z#b+`o0Fs=KSY02))J|wz%OZmba5~3>{TL01&9>#m4~vT5Yrh}f*ry=3{4=>jcN6Ig zzyP0>(beQqQ|EqE5}M-?Axit9`|%U6f5MVSfRG|_3H4W6{$~{{@U3`k9bT&}woOW> z79FTnHzwn{yKmj1pBTWx>`e7^)nL=byfofP6(Ra#7XNWIBazz8=?N(9 zN(0u>!q2T1Dlr?@XyIl>sHfrGwQurDa^^xAb0flYmO!^ZpvmjBSO+l91-u;6v98e9 zf9=gNvohRQa>jVSek7?Wi`Pk)vH+AyiDRYBjop0@6)uJ!S~unsZ$`9*o_ab?ad3u&__;J z7LWrRTx&;N!gl$Z^PSW=3sxMmt9kLte-*an8?}YCC9eoqI|pMaM?XJ!w0Cw%bdpPd zt{COQvpu$Dy3|JE?OgHNW;LQ$^gb2?_l(*`1`$JGip&W|b63y{U>s)MHl3#?6gb_} zvN2ycN$lpf*orBggZN1q^fueEPssQz`E-3J)KIi8vvLM$Z9dzQsR~Q=xK1Sq~1sG~4TpunIejyOSso0K9F% zHiU5$^_aiU*mAXh46U>RD?M$kC2j?TsGE8O_V^@(Lj>;rFl15rNMVDVx*2ahSs*|V z{h40h($9j}8_GfY;6fFmQ8eXTo?w)!!HK7G_n}iPB>bXY%~_l)Cm2;PQj?3A3A%2! ziSvC#oHbj?u8t?ZKTO+b1f2Mx^g9tTf#HkIcrv}CA3dvXhhyshDKOsH+9jt7`iBrd zF{{*%TwH)2KX-P_jg4AQTWUx}trj~BRA0TJcrnv|jId{UgKMvD{2$UIW#{nTx5+)1 ztcWX@;(I^A-~Gp51e-QK0dEdqJha2FPdQ?KT6t|@*mOvvxsAvxFdjyiEe>NP-6Lm) zVpc1k%A9M_g)e8lBwO{vIt9Hpy;oP@JCg<`Tu<1w6Dt>nE}YQo1iOUGJ~uGYW+72v zZR#o&5k)h49ed5^sQ(b|e=q&`L{mC-@8>9ft@5ngm;&6=Zz0c9 zrs;df0X3I7wAx6-c_z!+`uOf^u178@B8*7^0|#wqd`M7Q>~D^r1}%uOm4tanLKeImltogLSD8Edl-lsXe% zYM>f1b3y=JCgL_ot;SRnEr0XQA4{L&lrmB&GSed(2Y)ucpjfM)-QuV*KNB-}V1YmQ zIU5k|*jZc`x#nh@yj-Oqc=~#Uy`-FV&x1|tvv*1(;!`fpTuRZ9iur8$nzHI&*TH@s zZ5sceSsnR-9P4-Yx%WbnIL-w%K^_P~Fph&TA7^@^I(uhax|FHoFk@F@-IBsAdSp=eat=cuFYzM@)`z1k$JT7~hl=I=J%9UE|hC)(* z8mXg~w$0#|CR8}c$8Z#B%EnctrN7WR(l7;9oZh}?vcS;mf zLMkNPAh)(l6#iyNt08#yiS2a3sGeS|8G;%~mVL~Jx33F+^#t*9FLr^qsyumjy*WMf zd*X0wRs#$Ulk~)X1D?=9k3M({U#?@f79*0F%Ys&J&X{fEC+zD*Q z-i61TFAe%&Y@nK(I&Jwtje{RPy@d4tZuVJEGI~Bc;MGO+Rmq3muTTiJ^>$3buUE-o zzfKWmaK>Lt@}%z8J7|b0=9AT#!qA*q5o@AYcVa)_mVoO+_7UPqp6DabOKMTuE-VrE)8iX^=<^U6{OiY*SZeLtq#fTptAd0iejid~y)j>&7ddOx2M zCS8RIasN9xGU?{mt}PXNlU0@anYB@0R<=Q^+GrfOm5OOXB~yJST6)^CrV|wX5k#8? zdUQUKP62@m4g^Ry6n}pII&Iq}ll#tPD!BOdhX+-930!s*m$dmt{na#f|NURXkFhQ4 z4%40>q)$vrO%f2hv2~}4yjIR(pjDz*QBQ>s&AOU|F)d>BqU2H0RfmTn(h{o>s|!zd ztjo&5WlMM}F3P=k=j}RUr>p;SFRP-n$zOBO$w!xxuMq~`eEiJWwf@xEI13zy{0WS? z;PE?nD7nxG3_-E>wf=1?Ip2AVtNZAqSFNgAwNAOt>+8I`YH%Yzxv+wes*|K7{|4KcjS!;nGyus(C; zxn-Xv%7dh=1V`+3?B`7rgOBiv@^~Ryzzc!dq~c}2{1jAe*w*IeonjMG?WQjR6jE)l z06T%UTY7BGYVL||!rF>DmRyWq56BnI$UaYw4QSlC|CzY-P+lIc6FBFU7@89AKYrP` z&e+4`O}h}u8_eOu`0)@HMP1B6a*>)GH?u^-j7#GqDXb{X6#m(cA68rH;=n8|#}g7J zxI$jR#FrA?)tMd`*9f}3NH)nZOuXnYyP8x^?^67V`YkJ03^5+Zhvdhpi~TU?!ra7*1h?*x^5jE1@WmeU zcohbLAlSsT9BeBu66itQWG^{PgIz3N^AQJEw;(drL9+K4n$WNOevuS6ud=`!eykkI zoRVva3N=fR8{uMrvZd0Zi(>Z9$m&@s+_Kw_WT8Q>?#xSXu04ElgXZI+C;8fd+dF`P z>#8MB%}R8|9~;uLD?mevMc&FCb#ndir7u#GvIxz=N58_I_Zd&Q3*y}Eqyx0D4o`>4 zFTf6ULfq6CX7pvrV7W^WSC4w1k|~IYk-E3eW=XrUcr#0W9lbz6!AlbfPBwggudDW~ zD-R#5-zPV-v+=O;7jp~XXkDm{4cqClF~Ik%KY2}*rnJobkBXWGTDn*q$`QHre;@H zx&6sEW(+li_VK){LHh6 zeSE`~PU(^jq-0V7?C{O#GI>D?Z0N0ppx z!c1@?KHDIzal_a~J#ct8nQZdggC~*KOarEMG1!4ArT%oV^gW)s`=;ie$}!4(GpRU< z(C?ytBL1j?lfQgL&@7XiLE*dk^{Rz-)kWs+ofd9{IjA(_Uz1X!+{wh!83(DZ$H)7V zaMlx|Y+6V^NRgWUm|TBzAzr-HFf<|Eu(?M+q?=CE;Z@JSN306& zT%H?h0)AvbB&)5;6Nj5$C-x{JKU-+`#@^^j@jEeC#1T*{c+ z^cc@3qQd8=FH7KntG%MKIHsA3;2=;kjK6HH3t@YX&ALufbWkRshub5%7n2W3Y5qAO z_i7JFy~H; z2x|=oIn~s#4;SSaakw{cZnl#*?+^0j$DHHRxsvwiIEk zqnORN&TFezFMVGWCtEi5Lhlo*V8}E7%tIu2S}SBiQPND&Wmta##A&gvIm9*Z7P`*SPAf+CTAWQ7$Zi0KcdXsCY(GWQme z8;){E{JAO7tnx?3{8Q*yFmCIVc$lI?W4dtSE@3}A71#LMR$#-)wDG{G64B|;vQ1`Sm?A3XqdjeTwqum^Y)OzC%K1?-tAmpXei zZTngkALXoP=ZOF_w_Sp_9llnX^Z))1!+q0l4dfhix{N)LwGwD^MiQ{dwxW}o3>ilb zIMh6^r)s!)527ORE(dF5yqOAbPfnLx$`UT);25~L7-Fqca>N>aNuVVQ*WB9;DW(Pz2x_MI52GchqR-j_s zBkaULodfOsE~8J~xyL3e-kHZeQW9nrYum}YWh zImjBN8K}{MG{7h!d`7?1q(tst=h-krA=h#QP|0_Op$@>50JTtfrUgVX4)lKqWJ3^3xkq-DLdJF5i zx*cq-dy<-zkg;_A&p?Jmhk~UcCl!rvg}lx9%bQSSCfn{-pw`5*P{&oV~_9O(;CAbAP3=9bH7fy*rJozF0Nb z?3Oadd0^ioW5a$vMb8g=l=0vLb5V!4lTRl%-RCkQ#PaZmpRL}nAP3gh2h2;ky1D%+ z9N4&6(*Ol7aP(xp@(>KGT9f16pC4wnWc(0G7U0uI7W%`G3zr*1tibr3{p=;+g z9M6cjM$nA{OG8W=FRR6{sN^frz^HLKWLWiV{X2h=0QCdc23!%Ege0A5x!p97?Md!cEn3 zNidA|Ne*Tk2p=z1ReOfZR&04WdNiq&uP7|ATk$2Be6aLL8KOY77UfU2I{>+K5=Z?|1rh!5oh{8Q=B3Y9oYAojN;UxgD1Qon{o;YbVYh+#R&Lq zrAxJEKi6JEn<*QLQ_&M!i~5gsNW+wLSg6W3LV% zNG;~+1-}vxuo7`ydatBBBoH8tPT==Y4SqtX-0!cblb)1-_Kkmwp>s@HxFI@Yy&FTgF)b#oyakEcTbc65i@hEMHq18d{o7xjl&v#=VQ`C} zr)OL81MErs$azONU=b7tV^e#|HmxJFJsbj<8fDyCJO!@deo?=Pefc+HkL)rOH=_6t z;I31dZapI)Bh&3D_*9-<(v=nGnt8{I5dsI=h}tgp^esy!*(P&R0+Ym|&~QlJV5HSF zaklv{;)&#`g-ehTW;O`B#Slb`y|dy0kk*H+SN>C0h|oWEEw%m3mA}4?+Bw*9do@Sa z1tcI@G2H*30fTTmIb+$IUJRRA3IM+1uL9iV<)GEf`)fo&O905vjK8F{Fo!KQe+qb;~P|4mAZ5 zk(*7LoZd+iPwfRD7;eab zpS{ona+l6LaC#*v*1WMtTIVfK6g}!l@=FY0~CPYrQlT<*qXs(l3mD$Op$xB-$6|YM@U>l026mHJ3RAgVCoV8h1v00e8 zYdddSAn);cLwdHELB8O8LW2$0+Fj#9ZcAX)1$OvNxuuD`Oo6fNMa9*j2r4-2wptSt zZlaLfAQ(IOvxkM1KT*2=Y1?FbA4aBlt?o;N5ylxP9<_{x#CsXjN@w~y+vcq;J&uJJ zmFk0hb=s8V`dJ!%?i4SbAy;%ev4IrHVAB}z?D_1;{w;)JYd*TWZV@`Q|2$ArSx5?rlF>HduW=8tj;(0*L^FzVvV-!?Y472m+LGx#m8kucC zMv9*FE{vg6_f*SqtuZ^5x5z6vf&+;JR(WT-ct4mB*X6l2t_ygwTmJ;whA(=wx zi9^KYl7yGwUvWu6#`gwUySS8mnd{=5H)DwmqSQ`m+$VbxoO~9>irPHsJvE-Vt2X1` z5IIA(Xlo~2d^?tVI@iY2_q~|Oo2retYCG#g)F9(UnrF{78FXn;%AAwPjxNZ{-G+}n z5-*<>a1Yoz59#Qz#BQ-e4(( zJR!+yjsT4riXQo?pDeILi1};SBmZF(0<7dZ6!8Ynn)p!hc+tF{%`(`kQd)z<0*|9+QkvH@T8zWV~`CAP)VI z#?5zWEfDc=?nD`*7tK?)l4Vv^^AqzG}WIE2Y2aOvq%Qsq3yeiYNP ziVdeub;u1BZ;+-gPJx_nvnoN`f{BR^`+$maY4wG}s&>-hyS;jg2*WHsU55{5(x`bq zOZwX?0{Uql6R$!$Km*ibi$}{6xQD3vduYG4=pQ|TakR_NPuok~t=w<7pME~gR*~lV zDFJDM%i+hif)0IM7kbhhG5`z}93hvr%e$-UZZ8_6 zuYBG(X8CnN?h{H;Hq?;uEbN7tGk2P0|B?&kYt?Yb+mCeA)&m(JVu{d2Ss$~>!pn=H z>%b5Va)}W2fYxM~{VbN{pw`01eM$`_9<==$LOS&zo_w_)0>35tXsQ2ox!dQE<8f%& zph<_fH}%In_Sj~-_-b+lkp>k57qAn-M@UBCJW8+!@n}QK36_Pa+E#rjEvh`t$&tA+ z94*`X4L-C9T_##Dx;Vsw^Na&KkFIIDr8q|< zL;6LO%E~s|x4%dx^8|a?9UO=AQKG$JAmXFLBc-qcdu}+6(4q`Tmza%g zMHTVp)3r=LSg@-Z*~}hUeP&xyb+r{E*BTaXzX^EP94*3>j(tZrBw$c_TS$i&nOa5X z&F%B=w~q^|NVo1<6`*63i##O?4lU*cR%u4<6(c_t*Id}|F4Z%kuMjBxq(&A*d4arT zC`R%Z6ogO3Q=GT(Id5?46EbbIb|va>WfEbCEyCm7F%ct{(8jU$TDBK-6>uSt*N9e} zw;h+S;KJP@Og>Bf0aoXu7s?O=Bx9=rr@D34|5H%O+bw7G&J{>sGbgIackrU?I{N89 zEw#X=O(&jo)?ir5tjC=yX90DvMZttHy;7kZ7fOf&x$E~>BQ(l6-wvJ^XHnM~V*A9x^)d2lhzjCczXH^l&Y& zurB3C^#KJik}#5(NP}_;^#VUVoOTesffgEyqgz9N$^chmzoPHejS^D4!+(k7268K8 zr{lC*CaTe8*a+McV(W;3z9UIcFW@+L;WUs_fgKJvyyj4Cm+9&PMYF>*%!hnub3H7m z_HO4FhIH-5uY#71nGeItK~|wk%r^*p%=wdcAkCn1kW}erHHDU?(T|g33H>)T?D@e^ zVIr+Y_3={?I1^5F-H4Ml#x$TVidKtdaKLj|OkL{iLIbbaokG)c$^HvevyQKq z@EHU|MD%?1m5F)K-A-vGU+G?VxR)VNER9b!e+e-xw6h3OD-U|-!uy@c?uj$fgAd-= zqTOSSo4v$AU*0a@3?d+UerUw^-nOW33oF{x=Q01ASW^|QS?sSIWJ(>_EZ6Z)L4y>F z^5ht=MGh%Uc8WXnyn5;^=_@u!}<$F<;u+hvR;DsYnbP%318H}pHxy4YHsD70HH zWh=;wFa6b{QOS$BT#skMv2_RtIKfg;2UL8rC#C7}UhT?z4-ib!KIPYMbWO{~m%^P- zc&uEQ%;UzGr1EvE4je!}rlTW7`1HN?xh&9}%#`y!wF}VIeNs!~RYKDkz?0&_z=6y( zs=ssEfCXO0G&heN=#L>2a9E3P(NEptZP<1LZM(>}V z_j@Lz_JZ(fg74+ppbVM*pMVLQJu8jSlp2)Kl&sLXc2=I%O-JXCbe$2|+vy!c>e_)Yy6%3Km5n z4qjBV3a9{pzoj#pnb!bn2GL!le7HPY?Jgr~Xe~R`E*sqH^&Sr8gH>W=D5ypb5+HtZ ziifRfwMu+Rirh0cfltmDjxw6C+KfDG9ul{Zn+#^t*P2N>^(CzDLN1}ku5~RK7Dy*4 zwi3q*EGt=4s1_`*TYnhwYSJusm`Hl*@Gqbh?JkPx9(Ye(;-u0%Z&Su!Tdh{6cZClF z;k2Sxjk zl(YEcYPFUbK8IL?eUK1SQAepCtYS#ow{ooBUWcti=s^Hu%zOH=k6rCU*!Zp_lk;2U zNq=b)EspN6VIM=paa?@ncD6bN(i1aG3&`4*a6O_#!bG?f@{*o2QK&zV zP*=l7bbl);8!9%n%&X39&62cVa!l7)M0{FK^agZK2VIL{t>EEVVAvS|nKao7eH3j} z`x#ZtX;M7tHL*GEEpRxcmWN>fQH0bxU@cg=Jc|R)`&r{jL}nLr^x>lezBgOp_2OKO zi3S+D78$J7htOuC-&*0oNXUb;0 zbF?bS9*t9ZJ8nSF0Qit{jdc$XxtBs%H}ww&9LA{jK!@dhPvb^c9t1-ON(}6kXA2Ehl&ZT^$C&lWD0wOZ*-H+yhFq8f< zO|KNtPEJmoT5jms8Bc7L${gOolqgPg2>*sW^qoL}0xV{j{!Q9I3;_RoP%Q(7!WM>z z7-mC&0H-OyS4MmVv#ao!O;k)$8P`Of^g$KSM6OtbvTzH9@Yr=N{y40K>f>TXZE;dr zM)G%%FWoXpAy_SV$Pzc)H*LQNMKXIr+w_!mI0kMtxj%LFjLzlv{69bWZr)9xovcN^pujsS&_V(AXP>` zx7+Uj5jIp(EFkND(qUi_y6T2ZHM;+L5>ZViiTKfp(}n`m&yH!`rBOwB;_7{!l$^BT zbFI4D?W?J8gFB&|AviHpxEXhZbk12dgd$!u12<}>sKpqgJ&==wF^rbm4v62=JMG>o zlo~>TX&IBx^a*!%UW=p#D6yap!sP5_KBure8(Y0=Mjb)==V6lmAW^+%n~I6ZBjVm-Q-@R?O5JKfWV)8AY$ikfg0 zd?YB62dnG>g669=EO9rg7pDWi!hs{SNW7@P)z;3&c_@QM2gr&McWhSo;m$K*=&g$j zFu3(@$)jarXeJtHUt7bYBYRbks2n)Z+`^j#-O1ri_7E(j?0M2zJI99wo@+lv3x!l5I{;sa*s+f zz{GD@vGI^2HBBr<#v_b~G7qtzsrCF}d&+ux_7uCDLC0uyAa?#{(Bb3INGH;KZ!iC; zbLuPs;Kyolj?OJ)rfvpHDkFPd6l%n)W)MnLld8pTAj8JM2(ZH!lI*pTPUXR)1#!qocouLR_7L7;Knkw3ia@tK|pIz?5Hc_4;sy zbP_@}4B+sa);k_B3kFH*!7@&R8BVbn1P9MyXhMtNX9}n7X8{05qHDVNPdeFRXPiQt zv(wOy-AQ%2gPOB-a5iORoZIy8@3D!*i{`X&r2!}%CLA*#95~Dy2girDBjPGPDCFfj z^ei|LRLI{+kPBYNUj@C@R=?tH1gZ*`mRi+2F-lIi7D<0lD9*80EZNqV_NE3o!R#ex z#J+ke(Rs2Yo3FNz=HYjK?Kc=N4R$8}<#Q$-Dpqa$Iq^czCy21&NvSR~{bF=ro7qX> zhM*49W1W1E-M19t$V9LnV(exyB{N6Oix@U|(IkqjlNsTpiP7 %eXnXmbyRf=uq6 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ν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 diff --git a/extension/popup/index.html b/extension/popup/index.html index da3c28b..c62ec07 100644 --- a/extension/popup/index.html +++ b/extension/popup/index.html @@ -6,7 +6,8 @@ MoodleGPT - + + icon -

MoodleGPT

+
+

MoodleGPT

+

+
@@ -36,7 +40,7 @@
- + (message.style.display = "none"), 5000); -} - -//save the configuration -saveBtn.addEventListener("click", function () { - const [apiKey, code, model] = inputsText.map((selector) => - document.querySelector("#" + selector).value.trim() - ); - const [logs, title, cursor, typing, mouseover, infinite, table, timeout] = - inputsCheckbox.map( - (selector) => document.querySelector("#" + selector).checked - ); - - if (!apiKey || !code || !model) { - showMessage("Please complete all the form"); - return; - } - - if (code.length < 3) { - showMessage("The code should at least contain 3 characters"); - return; - } - - chrome.storage.sync.set({ - moodleGPT: { - apiKey, - code, - model, - logs, - title, - cursor, - typing, - mouseover, - infinite, - table, - timeout, - }, - }); - - showMessage("Configuration saved", true); -}); - -//we load back the configuration -chrome.storage.sync.get(["moodleGPT"]).then(function (storage) { - const config = storage.moodleGPT; - - if (config) { - inputsText.forEach((key) => - config[key] - ? (document.querySelector("#" + key).value = config[key]) - : null - ); - inputsCheckbox.forEach( - (key) => (document.querySelector("#" + key).checked = config[key] || "") - ); - } - - //getting the last chatgpt version - const apiKeySelector = document.querySelector("#apiKey"); - const reloadModel = document.querySelector("#reloadModel"); - - let apiKey = apiKeySelector.value; - - function checkFiledApiKey() { - if (apiKey) { - reloadModel.removeAttribute("disabled"); - reloadModel.setAttribute("title", "Get last ChatGPT version"); - return; - } - - reloadModel.setAttribute("disabled", true); - reloadModel.setAttribute("title", "Provide an api key first"); - } - - checkFiledApiKey(); - - apiKeySelector.addEventListener("change", function (event) { - apiKey = apiKeySelector.value.trim(); - checkFiledApiKey(); - }); - - reloadModel.addEventListener("click", async function () { - if (!apiKey) return; - try { - const req = await fetch("https://api.openai.com/v1/models", { - headers: { - Authorization: `Bearer ${apiKey}`, - }, - }); - const rep = await req.json(); - const model = rep.data.find((model) => model.id.includes("gpt")); - document.querySelector("#model").value = model.root; - } catch (err) { - console.error(err); - showMessage("Failed to fetch last ChatGPT version"); - } - }); -}); +const saveBtn = document.querySelector(".save"); +const message = document.querySelector("#message"); + +const inputsText = ["apiKey", "code", "model"]; +const inputsCheckbox = [ + "logs", + "title", + "cursor", + "typing", + "mouseover", + "infinite", + "table", + "timeout", +]; + +function showMessage(messageTxt, valide) { + message.style.color = valide ? "limegreen" : "red"; + message.textContent = messageTxt; + message.style.display = "block"; + setTimeout(() => (message.style.display = "none"), 5000); +} + +//save the configuration +saveBtn.addEventListener("click", function () { + const [apiKey, code, model] = inputsText.map((selector) => + document.querySelector("#" + selector).value.trim() + ); + const [logs, title, cursor, typing, mouseover, infinite, table, timeout] = + inputsCheckbox.map( + (selector) => document.querySelector("#" + selector).checked + ); + + if (!apiKey || !code || !model) { + showMessage("Please complete all the form"); + return; + } + + if (code.length < 3) { + showMessage("The code should at least contain 3 characters"); + return; + } + + chrome.storage.sync.set({ + moodleGPT: { + apiKey, + code, + model, + logs, + title, + cursor, + typing, + mouseover, + infinite, + table, + timeout, + }, + }); + + showMessage("Configuration saved", true); +}); + +//we load back the configuration +chrome.storage.sync.get(["moodleGPT"]).then(function (storage) { + const config = storage.moodleGPT; + + if (config) { + inputsText.forEach((key) => + config[key] + ? (document.querySelector("#" + key).value = config[key]) + : null + ); + inputsCheckbox.forEach( + (key) => (document.querySelector("#" + key).checked = config[key] || "") + ); + } + + getLastChatGPTVersion(); +}); + +//getting the last chatgpt version +function getLastChatGPTVersion() { + const apiKeySelector = document.querySelector("#apiKey"); + const reloadModel = document.querySelector("#reloadModel"); + + let apiKey = apiKeySelector.value; + + function checkFiledApiKey() { + if (apiKey) { + reloadModel.removeAttribute("disabled"); + reloadModel.setAttribute("title", "Get last ChatGPT version"); + return; + } + + reloadModel.setAttribute("disabled", true); + reloadModel.setAttribute("title", "Provide an api key first"); + } + + checkFiledApiKey(); + + apiKeySelector.addEventListener("change", function (event) { + apiKey = apiKeySelector.value.trim(); + checkFiledApiKey(); + }); + + reloadModel.addEventListener("click", async function () { + if (!apiKey) return; + try { + const req = await fetch("https://api.openai.com/v1/models", { + headers: { + Authorization: `Bearer ${apiKey}`, + }, + }); + const rep = await req.json(); + const model = rep.data.find((model) => model.id.includes("gpt")); + document.querySelector("#model").value = model.root; + } catch (err) { + console.error(err); + showMessage("Failed to fetch last ChatGPT version"); + } + }); +} diff --git a/extension/popup/js/version.js b/extension/popup/js/version.js new file mode 100644 index 0000000..b40a183 --- /dev/null +++ b/extension/popup/js/version.js @@ -0,0 +1,39 @@ +const currentVersion = "1.0.1"; +const versionDisplay = document.querySelector("#version"); + +async function getLastVersion() { + const req = await fetch( + "https://raw.githubusercontent.com/yoannchb-pro/MoodleGPT/main/package.json" + ); + const rep = await req.json(); + return rep.version; +} + +function setVersion(version, isCurrent = true) { + if (isCurrent) { + versionDisplay.textContent = "v" + version; + return; + } + + const link = document.createElement("a"); + link.href = "https://github.com/yoannchb-pro/MoodleGPT"; + link.rel = "noopener noreferrer"; + link.target = "_blank"; + link.textContent = "v" + version; + versionDisplay.appendChild(link); + versionDisplay.appendChild(document.createTextNode(" is now available !")); +} + +async function notifyUpdate() { + const lastVersion = await getLastVersion().catch((err) => { + console.error(err); + return currentVersion; + }); + if (currentVersion !== lastVersion) { + setVersion(lastVersion, false); + } else { + setVersion(currentVersion); + } +} + +notifyUpdate(); diff --git a/extension/popup/style.css b/extension/popup/style.css index ecf51c8..afba749 100644 --- a/extension/popup/style.css +++ b/extension/popup/style.css @@ -40,7 +40,7 @@ img { margin-top: 0.75rem; } -h1 { +.title { margin-top: 0.75rem; margin-bottom: 0.75rem; } @@ -98,6 +98,10 @@ a { margin-bottom: 0.75rem; } +#version { + font-size: 0.75rem; +} + #message { display: none; margin-top: 0.75rem;