+
+
- Save the settings
- Go back to the commit page and open the popup again
@@ -110,12 +127,12 @@ You are good to go! You can also pin the extension to the toolbar for easy acces
- Files that cannot be diffed with the ecu.test Diff-Viewer can still be opened individually for both the old and new versions
- Click on a file and click on "Show new" or "Show old"
-
+
- Files supported by the ecu.test Diff-Viewer will open directly in the viewer
- Click on a file and click on "Show diff"
-
+
- ecu.test Diff-Viewer will be opened
diff --git a/docs/DeveloperGuide.md b/docs/DeveloperGuide.md
index 589a970..29fb02c 100644
--- a/docs/DeveloperGuide.md
+++ b/docs/DeveloperGuide.md
@@ -51,7 +51,7 @@ Open the ecu.test diff project in your IDE of choice and run the following termi
If you want to build the ecu.test diff extension locally for development purposes or for production use, you have access to different scripts:
-**Note:** All of these scripts can be found and modified within the './package.json' of the project.
+**Note:** All of these scripts can be found and modified within the `./package.json` of the project.
**Firefox:**
@@ -76,18 +76,9 @@ For integration and testing into your browser, you have to note some differences
In **Chrome/Edge** you can select the `./dist` folder inside you browser windows for importing the extension.
-In **Firefox**, you can test the extension only in debug-mode.
-You have to klick on 'debug add-ons' and can afterward select a .zip file for the import.
-You can create the .zip file on your own or use the tool web-ext (from mozilla).
-
-```
-npm install web-ext
-cd ./dist
-web-ext build
-```
-
-This tooling also provides help in the [signing process](https://extensionworkshop.com/documentation/develop/extensions-and-the-add-on-id/)
-which is required for the use of add-ons without a debug-mode in firefox.
+In **Firefox**, you can test the extension only in debug-mode on the [debugging page](about:debugging#/runtime/this-firefox) (click on 'debug add-ons' when managing addons).
+You have to . The [debugging page](about:debugging#/runtime/this-firefox) opens.
+Select a typical file in `./dist` folder, e.g. `./dist/manifest.json`.
## Testing / Linting / Code formatting
@@ -100,7 +91,7 @@ Select the files you want to format and run the following command:
```bash
# check all files
-npm prettier:check
+npm run prettier:check
# fix findings for all files
npm run prettier:write .
@@ -192,6 +183,15 @@ See the following store-specific information, to handle release specification in
- a mozilla developer account is required
- any secrets that are necessary for the publication process are set as `Actions secret`
- any additional information, see [Submitting an add-on](https://extensionworkshop.com/documentation/publish/submitting-an-add-on/)
+ - _Note_:
+ - The tool `web-ext` (from mozilla) will help you in the [signing process](https://extensionworkshop.com/documentation/develop/extensions-and-the-add-on-id/) which is required for the use of add-ons without a debug-mode in firefox.
+
+ For example, install it globally.
+ ```
+ npm install web-ext -g
+ cd ./dist
+ web-ext build
+ ```
- after publishing the application, a review is usually pending and will be published afterward
- _Note_:
- the add-on may be subject to additional review.
diff --git a/docs/images/chrome/add_host_dialog.png b/docs/images/chrome/add_host_dialog.png
new file mode 100644
index 0000000000000000000000000000000000000000..96b4c904ac106f061892f1ff829f2af169b19951
GIT binary patch
literal 22042
zcmd?RcT`i`8!d{*!a+q86cnT=i6{tIKokflJs?ebNl+1K(tBts3L?^ifP(ZcO{4?@
zfupD>J)s1FfPj<`iaHCkh4cVhP>&I)_nT- zLemj)oPdwQc)uBKDxfDdgTlZUq+nL&W}{V!>`xWM*<@5kyq=}vdb_l{Ku|(o&6R)n z_kva@ifjX5j-!1qw; zuqXJjmp8+OsCX_4u-DbO?tR1&d^m|)H8W^5T!cGUi&W`+xcmCm(273AexOrvUZu$A zPfD9lTnboq4L($LM*ELIK%M&UItq+ }nL@9pPo43RNZ#l5(^na&1q5c%FW7c~jx}kjNpqnG4(Bf{qe~PkOXo9J+Qs zDc7$mM0-AxNpHX&YV6&EwAu|r@lb(=O`6IQ%)n3XcnrhLUBdXiT>+g>m}k5=P2B?i z!RaW(a^FWi^;4j>Fv(z5K$4u!X I4F!F!cyh@z-CwH&u(!^Ll6@nD1NZ#GhWk>Zs3L znV(N|Jco37D}N<1yYP+5X(nW&3o|vc-U5cXHO$;Zf+qtD`D_zQRkE=0o!04rQ^%!H zcZ hLqNXL<+&+iR-!4sx{6>xd~%#?+MD4U*T3<$$AsNm;gs0KSEW zM*(EpgzO|wzsR?{9%$n={dz{Yo+g2O%w>w?5tSzHPGA1emhH~-ZQ_Xf$q}8aBTtm5 zPwr_Dro0CddS80R-_h8Y#bN!t`qDvh+xcAht9VT&@NCS`>aujPth?B;sh*aP^yU@; zUT=C{+PUpJs(G_HgM4f9&h{j?o_0XN``Fy7^5tUdKhyT8M31FyZ{+bXt7Aj|0BH@x z96iCl75|7Ko}Sno9o2Z shmA2ofrj?9 z#H>mKdQafhK@R=52!_o;Q7tx(sD6(wsUCvX UuO{*x+^H(T!^^PFZ^1Ta_Wj@oy+TV>R5-q(;3*BgIxUnr?Xo0o--LzXQ*D# zJec0SlX}aKi|`{$wU9hL2R|I&I!ix7e09-!Lkjh4I*?3xTa}@a`S^HME)b+GYBF{` zePWy=WUeDU$Z5vDWKxhFrms~Y8QGr6YA)#eV^?tf4U#IoTI$W6LAL^&C5bmwzPrj$ z?dTp^JbQeB9Ut-3Q3mhSqvPzw`N?~VOUM4Skuuk5ajbXN@EpRAyyqaR5NY`WuJQ9z zeIFNc?I)|>pN !>z)3H3$8FGwVd+PVPaFxPBX+;;Ij65r4?VWIN>Q%(s_}E^IkVcv;wj1 z+NI&CG8+AA{Z(u)nVcD#xcDc%WN#(OU<6dDK R?X1QZh`f$PgpADxHP zvebk!1kLXc5HjEhNf7ch;rv1eG+LGa1rqJ`ZL>60r5}{4dFn^k1oc+rdaK;u^)E~b zz 0|kn`-lGdItd^Y0JAw3>EN#ta#lfbb;vfCI~EpYgzuM zjEON$yu5?WX2aE?s^v2$^N&^d75=_nZ+AlE%*4b7f#7I*wX6N{eto{T;yt;QDoS|w zehs;6+Zxq*2R+!eCca+_uP{tjzVzGZD9wU&Q83p$o=C497Wbv|48Gml6)_>sw}nsM?mp){)Y#x2 zF;t(~$<_bP^O42s7q~O^2M=Y#R>wn2!LOQF;TO$6Nj8ymI2nPr8c#Ur+bZrm@}{RH zDqz6HYMr>n-4Gn-Xj+zS$B#_4LN5*1mgU=ef6o5kJVN7HcWMtFRoV6@%GyNb{ag!@ ze4)ie==JrIbkpcG72=|-L~-eO=B>A5#JaN%A>&z?)hdf$i)oZM1IwP}rNhM1(kqok zNtZvAX06GFj$12UI SRRSH1=_`5xP?hx!E(T!4{?r`Wb1fvI<+ zt$C?4Ts;I=pC)_tY
b& m_mbMlgB}H4B7;X`GFZXhnzHh~^ tS+S;@Ix~S- R4=d zNs{91`Wj`hwZZA ux|Y 08T>BJ&m>KI`EOI&@b{B@ zoG#`jCa?cEvK7!+_g!YAw&BAqu)4#?tyY$2>jGL?gBl#RRp%{d2lSk>lMf(EmkW}! z;=9yUqxx#%yBg^3i1l3WE#4&=Ppye~r&8b=@*{BfC*Gr!`Zo J*(Tn;w@;Ucrz2@q7G|!1(oWoj>(r zIakwR0 XoDUxiR}+DnUy!+uvqY>lwOkw z&+7kcB|msrYz{8(zB@gTcHHwkuo~&v*F^M-y=jP2ZsIaoDfW03xKx5}7f+IztV*jn zHhk#(&8`lBqOj97E8A&mGFR9mY}fhTPf5q9Sk`FOEQ 6+1wNdgO|bi{>DVeIrlsG^_I5eTCSZQ@1#zqTfwqU|`f@*dnEiq(^n zYj=o2yW>+!I~PK&t0sjrn ;T!&=-0_B&fYrjf+I 6#anzkH4c~ z`pZ{r@jM!OSUugmwC%tX4>4(QX(WkPrmgwbQ89aCy)10K!_Ym+Jh3xD#;+tj54~;U zUJi)sMP`zgj+vvIZU-N-8?J}hF0b}rx4s5*BOlaUc{ZxJx7ykT7hpL&FH+>XlqO&B zE}($iB^ZW@p46@?*K8M460T@HNuzB|4*9>EpOt7e$N#mWr}fS#)EeMO_t|6pmNI+s zZnskW3cRxVXcAP0fm2;`q2c|U<)?RlYgi5s hVI?M9>~UM~ JLM4eT4qZG7)OK}P2? zO4Z>4y4zKq_ao6Aq5CA;`=cF(0=0d}irmgh-TrlVN7MWK-cE85#>E==4CvSMOKnY% z%`4K|PZyIy_iZC@4DK#PljarD^IP*R{Z&gv*zhWdm)zgIOop!qpnRQXym%-H{mQeP z2~OQ5dMtluq)!PK1JZ=#>T#<~e&fU^p8c(fdPfCLGDx@xo|YP)&4zll8pAd9L1=1< z#?$RyKbCBosty-)$`NY2h%NEruIszQkR482|0uJ?yB>4<`w}5gQqkpp-gYIPP(mrm z_c1xztmqk#=rSc(^g?syql~23$q45Q_q~SR=Cji=c1MpEH~cDY*mP_hU1u15%v$8y z{xKIR$5Z(_O1&v(%)syY^eX)OY4a-1C@T(KrnY3#cp87FeDH?JrVB2+gAkOe`5>Tn z@LgQuQfJ|8O9;B=HX~m=h#9rTC=*`v^;BN?6ke!x)6@F0M^T#PTfz(jc4~#ABFMLP zc!+dEcfINt&6{cEJQo TXlR+uFv!TTO(NE3H%G<;plb~&gM?I=r!68rT68=o3eU4LC z|L@%<*Cq5M^I->?v%GKl$6ISZ=&Jb7pE&FYE6Z1S97HNjuAR|Isryn{;F4SrH~X{o z?_sF9?)5n)Rcbc={%Z`3V>0qL#H y-<>zDhXGRGcU1ak?1RjXw?KJufTO}k_qoM^6mcZ0M2#DU9)30;RO;T?C)5CVpP1%9< zX|`^u-5Ii1f}M($(LqCi_C(>FDVM}(G8E4^IpBw$`DvJKUn 7v`H3J&bVsAa#> z_m@+7+m)xwfPLks05x~YxWv-ldU^@IX4zoK^Zx!Ci514YQ*gC1%EOj?CbZ~jD`1;l!T+T`or zo@YIv77UP_2l8lYpT!ms!K9OL_r7t;*fbvnUw3$%N#&0B&4+z15d_MXnZ~X8_qhNy zblv`znGH#0m5$_gXcKY!Vv%XtN1esV{3~b4#^ZVxSJch4r6(z*f4U}Ltq4{VcG6wL z?E4`N`IYasg3wMvzZxsx=N^PA{#>0Db5k|a#=!7a?<^3qoIz(S*$9Z{oVezGk5~mX zxLI5ewBH4CL882RjGhkJBG-TlIhqGaZ$UfO8;fe!J9qfZUefKma@UpuN1pP`6sc)6 z%Xv=y=x}Qh$I-_x{^Oh6TubvE4F{ghc1PG8Fc8!^4%ZW`te#XES`?;KY;!1Xyt7Nu z{IAZ6e;$wVgk)=IdkZLKPF%iUy=(WrqZk6bwPA} SxO8G?7HYdj=ZouM4Y9EMZC zUeBn+<{FPlroHHjp39On+0r0p5#ry+rF3ug7Z`~6blzZHV>)M~PJqi=Hy5IV&(qax z^+{ecfI3d*xlduC1T3|M1G|tsVE$0m3!QktJ*GiBrU?&$r;>up=|7Xc%p8{trb4@j zwrdsGiI*TddNArGVAI+Y&jo_L9Zwme8A(gd_P?{c5Raj#@iZb)Mbk6+u|q$2+h33E zG?Qkp^hDG{Uer^{p{v87R{|t|y5$HewG_(ug53eCUGVJb434hyv(!gyTxWdE6enI; z4+6?_PEouwBx_vYQ;&9dyS~#gbe7Q1Q81;Jowz=sob3Gv8nvTRQWJ9D_-OqTPttFd zVe3*b(*-4fJN7m{J)IK>_|Odu;Mx+`!4BS0!K;x8t)GziX)-)jG?8ueT#c@h^7Xfd z6Rnp!=;K1Cn5Zskt9xc7aeR2qNGRVRWI9llyWr4$b~wsGx03dczfeiLR?~w1u0Y{w zr{kH0LyP?Vi#!dhs`_&0l8lk(3|>yi&zt|NQM_gQmGW<4-8J?baY@`Ulq~&JYt;}m zm!B2&HaxqKyau+mx&x}&=_NAm%-Z-OjH;AbqRX$eP6wNN5_9r{P)>BnQz76=dA0{> z5(!KI^K)8O-TozLy3ksNIDD-t@@V{bSfIK7^9hA{^N0VeYu+;K8!Zw%)GaGdqcsfd z^qp)=MGWu<{Q6J=tQe{-8u? ~p5oqo4x;6Mam1 f*T8x+fp!aDM7w_2drS+jV$3PP-)8ga*^xOQQ%lHS zeakAraJBbkF T{+A^~v{FWwav?K}Lf<9LjRS7?c%Z6(am=Be2`fu4tyw!36-erA@g2ch7 z7%q6lxVdBT_?1Cd Rr+eNvuLz zvAG1&d4ofh1~tpw?BVtA3c4@Z>scfWnD8cz)j95X$yiwacg&Ul&$IjWyFJi`2IYeQ zr<|5`Tf{k9CQk==4FQ$$H>CN{$2LZJta@Pf-m@FC*~_9$J|R|SWBrDcg-h+S|KJG) zzJ;gr{0aAp?FkL``nCCi-8v4X?&kw<3l107ovE<5<4Y-Rm!tiYf{shiIm+0r>J2NO zXM->3uji+9qiy`Qj^pS &B}4wCKCcrHj6@J zR|>Nv!y{Q*gj_t|@vlcX$N0VtJ8l*o-LE >m_5hmB9Y;T{|My1f$?jXEVs(oSHHcMZVY!>{kL1Wimu0Ug z?;J??I;(+cn1&&IT_xZMdHJ_oJ-%_WZjp*7;yn>Y2cSzjv0rawVI|b#3!BZxOGYw? z;1f2-yngq{^i%Ma7#dmpG?j>_OJSWGyreWR%E}>5GSHO|lY~}YXyP}kh!t40)W+Rj zI0`979XSx0AZ~GgVCTCz>1VzoW_eD;$I*Y(c)_Wnb-K`3XIfJ)4^-`R`E~6W|9;6! z&owdhh!@kEq^ WaTUybn8yo z&sXl+V$_W8&%IfRadfHwQN;N_C4I+n{I*q>waaeCaeX;%6&|S>vu5H3-nkR?0|_Vd zTc9+x)?7)Gu{u8Fxly+U9ML{NtYn-i8Z?yoC7I~wwkwTNGeyM`p%s!}@XIdv;O6Gs z2l!!s!28~>_xt&Hy+3!Kd)*^i{wdAw$)LoeyKu+8fYTPd%lre?p&Y+%+IL&U=}+?B z^wLVu@td1F0ZToXVIM%6vSKO5X{vlB-5h=KQqGS@$2-Fcp|DJh)^)0wi28?&9XMF4 z=a^eyeGPG5O#_V()>+%~;NtqFm9>A8PAIC5oPI1oEiH{#!YS<9o25$V-|4-|&+gJ| z54T|9NtUJvP>}eq(21YMEUJrUO%zIeIfdnSN}r3?DJx5VFI#oXh=Af=eBqw^>#EP) z(CrH{QdZ8dSX>;J`?b)&n1asV!7u!)wPy3s?)CmN=3fg`g(pPG`CK7_3H__z&Z3$M zWBWk%*bDK*#wSYu#&zY^{wVLa{EV)8ZSK;6D=PY?bcK(~jQ=WbB{uU$i2HL*kmeV+ zAi1m~1y&g}5VEf{#je9IN91>>%HV_X-rOW6 cbZ1P!D$pt6VOX8sbJJ96(o@@Wkx|ko` zh9fK#Owyys5k *GGQXwMbzm%mVwZC+}k6cjth5-UZaDG#YHO$pcWqSf$yz zcw7+^Bvn~ju@NI-g}Z278uOY}hMS%W>TY8Kv`j&qQ^vie=e)sGLJ*Hi$$3OihUY3W zT){gw#Kb98&_qyA#QNuuARUJLRM${Y>va2R8{nJVKqkcXur$(GxHx3jLN#;FpLBR% z6=k97rEZ7lR#>2St*LLdpx9)giUyUTeN!}bHURt>965rzvg&d8k|>BPF*vyh>9}Hx z2 6Q03r2CoHvHyTAF9JYN_ielAT&qI+;q1-iOf#aT& z6jYkm!KosI^L!>jIt`=LJ~Csd0iIEB32oS{=hX0|bqN?cXmkhgxf2qb#JcMa%7PLh zp-1h;T-Ys2j}$%mV6{klEvs=#Dojm9{d&NuLjW4D?JmSyd%F5%JIz{_Qp~cKXHeL| z`WShF2pDbPiN=+oDm=Ze{s ugA!^RT94zg4dm_@1fpYQ1I$ zqJrntQm~_tlIzHES=B+jkhxnl5-G#pnx;PLc)kk|W(<0!$&(_kvF>y;w#3M`( `Gm!)R_vSqBO>{r1o}av^fzq=ja-56e)A#pvUOpE3FAgih>VO1=Jr2n z<-|Raj@sj6V){UiSj9=Q@O61L?qV^HFz3*qA}y&a9nxbZAW0IBy6Mbdo?{>?d|7Wq zs=O{o+DUtfgjWSaO7KZ7eztj7)`Cj+DyS6p{TOwClxu0jE#_O=xQwR_cAUKWR@lXv z-C4Gl81MD=qSxaApC~s_vca*^+I_RhN
T4V|rN*LV0XIM(ZV zpLxl~6*5uWl9xF5ICj3O4YveBmtieREjBz{cll(3 J5D|04gJ+<)cr;{{ga6 B@ZJCb literal 0 HcmV?d00001 diff --git a/docs/images/chrome/configuration.png b/docs/images/chrome/configuration.png index 606d5144b4bbb1a97eca92ce33fa7db8662be5d1..808db6273dde3e38b2a9374eca7ff1e83fe0e7b2 100644 GIT binary patch literal 30873 zcmeFYcTkhx*Ds2qpweuJfPjdKQWd0^2#BaOr57QhM5G4k5R!-}C`FViND*lwB}xkr zNI+D2FOeFM76>Gigg`=)8@}Z?@B7C+GiUC-GxwZ1e=y xKmf$9@I}$G)0FT k%=qLmjjG+qY-Nhc9+Mjj39(3AXj6N=`@(M5)ud%L ;4HIm6BV?}+UmU&6Ph$h~1ljP#wV zN&tu0|9 R@8zBfQ>Zg8R z*~cc${}2OjoxUGa|BRaVCeLp-GRbe*0Ct`KvB&t`@mFIuL#laTBMuI7@Cz6@Bfu%l z%Ga`&Fw1f8vv>5G0LS$sxe|?gRD MtBNsxKAUcBIiYc zsP-@?Lk3W%Pym}WBpe2nvNGX5gJ>jYBs)K~9{7EAHYpcA;r5H3ZHeQ+&vH61DV*Wv z_}E7Y!NV!@SXa+gOnWS!X~be!Y=)4ExyKZFabsq31ZVuS8V){4u!aYxY1hsG3kqqH zbxZ=>O($p*HzmW`Sd9 pg+av_ltU0E7vNK( zD50 F$LbyC9sTgSm=q(rq~Um#ky3Z@+6*Kid;e@F0F!RxIRnl{To|k z?-uJxS@`<0(fl)}dVQ`lG2?071VxImp1tK6y1fi;YcXZE!o$YrE4(|)^B2-s%G1&) z*r~OFO4EIcx{xc=(+Jp!zHO^VO;Zvq?dbv`AkVh7fn`%tAbmg6+taBDjwU-anZv5o zri%cj0^9SI-23^N%frv=C58@aPp z>& YhY%okue zoqyv_`hHw5cm^B-2(9fZbMJR%%p*9Nn+3Q7+SIP*XF%0!2l0azuzRfV>z&O8`!Hc! z1<#_2V1jGQ#)yMwcCC$@lp!ps>2?X$x#^#a&WE>`Ff8@yrTRv_Ud-|divPGJe>hb% z)Ms#*-W~`k8nfC|BJ}r3v^J5J%ckLfB2U;%14DkQY?Qb~;$Ye=t0cjy$;wsQrjF@L zBHRIzLviRtf3uj{L2S+WFSC}fQZhw;1#C5 ZUR&a9o>QzWq6>Cnl zZsqxS{!}QMYQWOl!G@-Fq_O7ZTl|kTZ0n>0LUXm(zRYNFg7M&;o&rB&tw*Sy4t0bI zVro1pcu1GXav7gr4{ezr#BD$Q6 z!w2*Hy5p)hEE((Qwkl#K)d(+5CXk!V z@uY%2Fl{0zQnL-SfWq)=X9Lm=;MB#d0=YQ8-FR02=@12lp@w;_ZPIRYLfKKqO7HVd z!@#9`K6UGF8eTF92=r)JmJxCMoOD7auQo#5vbWe}=qqh=5~Ml!1!i?y!pwdf3zzbD zbCPVunZws|`FR(BJHt)0x544&=u-VZ0+Vm?+oRqaOa2P)AkIp0Cpf|0@8#L-dK9P6 z(k)hZt2G&a3&OMd<44lBz4S4?B?2ASZ~;?^+~}j;=%JcIFx+XNMeE~l*^hmQpnTdJ zo2+?DEn9s+F0hCjrVl5*fDJCzXw^%6MwM{r!-0o(%fq=@U}w63-(Vo?bjbauk?1sC z6LU+%w Y-g#qTOW%v<7s>i4g}v9g^WOxr7Ss6#oXP Z*2y;(0a!RqwV2%e%AOlCz()J5RX zFui*Tqq*>S?X}>Z@Hmu%IN&oz+L0~*PU^h*dlp6;P_bY+lIXQox~mNdg5%?y+(I-Q zvBDw(pkdzA+$td|ZlZwjS8On2QZCRPMTZ#+n>~aaEjnZ)wK~&cR+N(_3P=@9ds7`< z=Ndmzf3~_Skz2b*>5f@Rc!}V) BdNOuO?NO01y` zh4gF+XwBC1p(uiWehv=18sDt9fh~(pX~i`T z9?>PnK^z;wqdQY2fk)qk^*HNBWj(-q%J%TD8cn%}@|%=CrEm(WykXjX8Ry8&=|c>1 z0&)R>T%1HyWX|{{@1=cU`aA90dDV_nK_kKET8TdIMSAEoAIEvIUpOXh(H!irWGcnb zzKJuMyFylDRg50#@92eXDDRA#!?II#VdjHCMZ8=4j`e1F0&Z}j+rgEB#Y&LmW!g%> zLgd!Ky85qnI1WMRX#`1!{8?~8Hv~ID0v6XQ2wr04F#-E~9VJIXq9**KejiTCaVA6E zcNq6H!q(^;)yG=qH-jYt>J#D;JJFB08F`A6vV#-gLz!0~qfX|=bQ0^5IpS`_u0&On z+yJvpzXZ~uw|I8$`_nY_h!NehYdw)iw%d0`ddVf6aXHnU{WzwbjKXQQtsnHg7|!zE zNayiMo|M5$?BuO5f7xkJ34qi*Gqv~rtS=7Pu-VTPT^ZE|!4NS9>Ex;jOB9#3v)Gf$ zXVV9ektaOvtUFOsP%y7ow~`q Emgv7o??{ek>`Nrdw88K)^`hm!`yy8C6 zWWTzkYF(aRHkDYLD5 a*x9bcT5xVW6LyAeL6-C|Px=1~PS7 r6H @@iJZcEdwPPZrx2xF$W3Q47fndk_m z^&xtu+>S7oO)#RgoGEI+bf~Pa=<`}gA >7JS&~mgH@tj*Tp( zQ1wH1 e_%Qs#v^%M!FN4c?r%sA#w8`+8!tLG-cm3s`S+ECor6x()$SaJ)Sw zD%pcVQ*?1$m pVC0+yN_b2t`>%PvK}eIHPe $#+Y4!xwv=(e}UtE|_7|G#F^kwTq9|3k;-l!q95?QCbeSHmz}T zU+?apm(SdCJa~WaG|KO*c7*>q!K~~4ByU}%D%*z+X}uax@&xm4PG`YBuBx_Qi8tAN z5-tYKh*BNsU+qIQkSC07Uct76dJksDiXtHi8E%Za`*(%b6%-L{?~Ga~5quX#PypkD zBOBA0nYysxzye4@y%6h_IU_WmsFPFopmYMg+|%Trn)YRWGfJ0X1P{myr)7q2AeMbJ zY~BWZM{e#C!6611z}t&UdNwSrcK$-(c)ht# ^l9(8>?TxU!Az}s9c zM;K9&`{>YZT;4;8lOSPQ8K)3b{g}pt0=JrNC-!2=8s?_+-N}6YG}EYg1P1H#f_ZBa zLgrF!@n154- q`Lx#>84 LW3u3%0Y-5u^#KZMW6|;b>0GCt?fY`{pJl $F)ZYGr`~q)k?U-P^(5!z0jtG#VG2;pHd-d zUwGke>qz=ip5l~e)?^OGo`M2gqMBGuJ|w0@VvwAxgTXpaq95wCEyE#a8VJWVg8y9b zoB0Gs)*miDtF_8gIX^h2U7L$TpPKOqomfghM29oLX*yFsExt8Q65j-@(fxWK3%;79 z&IFJ`3GShPq`|Lu=OpGP*Z{*3KA>O(hu>A*P4WNbEOt~os5%qU47k-8hV$5c+A{y$ z5m<$A`^sM!)d|9BTrx^{rP2st{=`k<@d-m!Zk?R+=QhHt?}zkU@Wa9eCo`OrQEbbc zvr|9WxR}s8-iawPfamjsQf^Mj_H92t!U%h`l5U0{Ehh8TQ+Wfegj>G_ef6AIfI3q^ z$9^B99}LcrB;j=0*3Kk{;DFO67*ZggR#lS{8S_S02daCR@dB15zI~Xn!^ddu^}gkp zSR>C@;}Ws-So_Icgy^~nCSioqrq)Ovyrq@U?jB8&iu2CTYt_dbU!2B?MgZ?28yj4f zj_fQ8V($zNGO@Zr+wXU$fx&GP={)nlDjZA4A 912Di(IkF#T5CB7Sn1l zUz`1(7DIAi)KK<$dH)n4JeZ#F|J4CP>Sl#aLEbIZJ({oBfFn6Si*HacjawzCg9QrH z)h(eibA(*r)Tp$qm0G%gRA)@i0RuEMIELZ8$`c#iStPBP%;(d`T-B{3ASS3Tz_t?o z%~_&hhmf;05;i;Vwoh?jLveFuhS>pgA{}JQ=oNFB8uW#M4IM(z=l1y(=ilM^hT`wN zfn-SfOid2l>vO82 Incp)E-i#=>M7aOXUD6`XX%jjJva;df|G|*D z2ACy((QopUgWip+Z6`mkE`{c(QI-VwRsas7A>IVA=X*Ri|I%WAR__B;CbbVy+YB(H zE(eqPb4X1j3qVi7bIg%`)^>2od@dg@2_=h>vh8v9(y7_*0B;l1a*UUrL+cmA?%2XI z3E&0AH@ma IiT;+ci=#$Q1B|ah8rJz!GgT*H R=27%Hu z8bYT5oJ=|fC(zd#E3~<&ns{A3N CkzL2b`gdeb&mI+RrUIpI0Hj9 IqwG>+|R_5N@Pi 0dh@3v~V49n4YVm9FZMqZQ=q5WS6O&|Q zc2M=EklSv*rFu(3_`v_|GUoW`H+>1tNyP7WhFN0)PZf{891Fs?{FB7_QaNk)AdhU( zY#P{m7x3leR%he0G1Vc}Pc?$ybvZcn*h|%$G)u74Ns|WbbW%QHFOl_(C`p!59s1em z5=>zyldf+aV!RRylz@K+upfHaeKqXt)!6b@o)7A?LeI(*`q{7h*wfA`>$3-N+?_te z&Jl84kB}noCB+WD=@Vf8oK*ksoyNOF%# RVx&P6W|Ka=of7od> zpipKC0gX$kSTv$ pObYJlzxu^Z2C>LCM z_x45WXGiMzW@xRGgEKgORD1FF2X0puy0L _Pf)Q%?Qv3tGIqn>)PhZk+v!4)tiGdkhHpe-) 9a*^M0t R^7UD%YzZa{hw?C15kq&Zqt z!b+u7gj8URTc>3`!brTdnNy (OtdDqC~6Hcrsk z>!&1H?)w_@ZYry##EIX_Nz#(L#3dHAF4bK5BQ#H+bw-*DuP_OsEF<~XXZRS(B*4*- zDZg6lEkKoepeo?1-JQI0<6hx~W_SGx>iF|w0_r$zlC$%5#lp_k^c9^lL==o|9 zy*N nxvw zw7CPKsJdG@`K#I*&j%JL`H!5j4>zv%f=uDObLZPdAlr@|u7xK?j=#QVQSbGVv0dhw zztDcFWc*hRWEhuH@z_6a$AtAEzM?GbWpYYSa=QO1N1V?}7~0T5!~@hVmSPcVRJ{_` z&7ZxjgSAU2dpE{qV0$ERfs(7TMVQ2>jlL|Xc1cn$6B(t1=dFZ2iMNu=kWxn2$;pcM zFAy3}jneNHBo{Bb^}HJ($P_#d{&9u)>LhK_MFJ@IlUOfdlS-?(0SqElcQB1ss5O70 zG>Ri%x+oX?IR#PowAZ0aSkUF^q!`25#PQ+jB~Zn82Q?2JY*bE4k1AQhrn5U6;K_J0 z9#`hXzv5d{?TBrgWCb7@u+)^osa|QfJL!uIFNi&ap-?J;3xn4giUj*4svwiwGwqcN z$QgHvM?;$$Ouu-qno_zm7#i>Mbh$fa3c@xOO6VC>MhHM_p%+UZ*sv-qwXd;T=*sl) z_7@EHN^I;=UByy*~_$gzE$tq?NReZ$7@+mpnyGT+Y^yK!+{9;L3hlU%Mxx>dAe? zMo6sXXLiO@te2m@DQczhXI;ouK7zh;ukgf=E)lre$-qLoGb!Dtn}f>w*^VA4Gq-8G zvbd8@6?r}d$wm_&*{E}yFMsR^=r55U)+uyy2(szus*G&86zOKuQT|HEBj^ITWFE7c zF%)>rU)(PWn>I-jDHz-Ierx|NStkt9^_0FI-5w$dK9vh>B#8+YQ$n5BzK@JZ%UTLS zbC6a<=D5jt{{#EoT1eS-TdX;aLX^p9(64dd*8uXg-wsN@l=vF!oyb^rlqb0@t_)nK zss_Gw&@jfdBzk@g 992JzJZ z-Z=|ucSms%_W7H ;rn#=f+?xsO<=LbRa> z9}!@zntsT)f@f967O00_@wCLwoyP<&ZMgM+;DafO+ZC1hcZr#bI zQ^Zs0G%}%i`0!=<4?0c`J=vE%**8XNO$}u}_R9>ekI@FKXRj^lq$pvlq^eFj!aM0_ zw$Ghdl4&5H2ONa3N-HEjR`v*8;7LS@(8_daL;|q(7k`9gr-DYf8J%1-MVj7hZU6E5 z1n1+ayPjyyKDKqfSf?Y{-nD$woysV@{;q3i@q%Rzvvee(W(uIuip;VP?(p+@?cpRk zI|0QvF??)M_aad1Rod0JWrR#pUdLvB6hB47jVgL-b3e%|A3aY81_RVq2Wa7Ci`6HT zh^O4LQJeM$*gz?9vkyM~PQ!`k)x|H0bR}x3`@60N?3p!(9P)%E{Bbq()QIS{p)yHM zw`b!zZeZ@tKVsQulTGoq$PWRW{m gIB+6PeaeK6m+2z}ReRUU=Zk@Q(R zGfIxp#lW2S8DLV1AhFD$7xA{y18v&bBc_{>3mBU7aKH8vHm^dmXWUcrH(Peh`eRt# z46YoAVtQc{LPa+`CbPz}hnn?KV kJtW;jG23&C#C4 za;+RgHoB145MZE{8TY^?pCLu}WG0oPeVz 8K1M48 zpU+g_|7i>6Ib6ExH$C;>0RhH#GJ@tFdbi_~c;l2o-8O^rGQqc3<%_>s*K06zmQZJC zxCv`@H(C hS#F`o@2uA>>`7e2unq#;*27uDHbXSev#C z%7^@*Xd2&v)w508qwXn PWr(uSJ< zH5Por;@aakRz86>I)iSl^!K#YBMjx4{`zsgwVs0$g-c7bt~6dYjxL?kCYO|p3HsO` zqNu>5%B5~*KNu3y$B6p2U`AgBPr}98^VTRjk5VxbjgNfm#u@p3VVBIP8G{jUcg!w+YRyD z9A|a?Bxu&~-T7kFdtQ_#6!|(o*df2aarh&W=f)6G$0uiocpzR*pG8M_-I;PKyruIv z93hzt$HmNrn^+0GTAl@+pfz?98)Bv*ZThzQ7?Li-(6XSu-M*+0wD?Ad9qQIBIg(Mz zm-F%;7Ug d{u-6Q=xS8p*6N;kp zRwCDl;d^!zIj2jOMGVn=NNVe;-b;~~deM$gE+bjsFJ*Ugd!|v)j6A2d54^FHhebwT zz*I;?LNOC7kiIYsX?`d}Mgo9YE7Cr^?o&AJS0XfMuTXm?-E?zM<()ojCdfVf2RwFo z&guTp<{rtSn|%l$u@4Q63uF~`PShiPX-eZut(9uyCsXCW< Xt$O$A_n)DAg-)ktQHj*}@d~Z)@>(d7YZZqXHm50Q?89`+YT3ZINeii2BThbv z!7qg`#!B2_WRyFos@Ot^ba4&x_-5U?9ZvU_e6k~I?iqDF5h+>_G-{Gw%>T>8=2s>ohjZs&oJx8$n5u9RXKVn|5a8Rz)jEqC_rJ#4{U&Hb(owqoGb^ zq}HlkBu^l52i%BzyA--8x$-v$z_~zo=og1Oe2lbMT@8~MZf*$)8wYQe(r0DZbZcFV zQG4y{6QGG5VtU~Ckd{6yv!p~%s &}{fb|w60+@5&;ZOIKE}N`lur`iK#^0>&LPGzcB1NA4NoAUYl-;iXGKV* zn`0=#&_k#ob^ZpSwQORM|5kU`P*qHiWiYRZbY6_n?R0;~j&elKA%c?t+oq=7K|EUu=h=QEwtHaLB%R6K%lTaL{r|R;owxvO^dHj*Tlt)+9cp2gqbq;X z@SYVZ)g#vWL+RM#;hTh2RgRC~ d`_8665Goo0BK|N9C}aNbIE9zK`GzW4tXx z?{dti&)+Z6wmGlklG6Hm4N>gZzqI^fiX9K-xZW_YP4-XSo3j>E$za!WvE8-*x&oVk z89{ck?mCW*^boMQm!B@h$dp=mqo$@fIsV8l=H>v$3fN5z|FvmvOxM6TgyVYnG1}g$ zrFX!jeH`nC_@YZOpDJV;8@V}t2<5UDi|P16-V*0H3VZ?E+f~W`dXt9P6)LaI+_n17 z^3g@}>#8l`s@4)!w>Opf2G&d}s|tkU*t?9e34;i5yh5NQXn-e)UwSW`e|M{Gjk~ zE}P_4nz(*gWg?`Q3Hp6k$59M??Kbq0BVPO7Nkhu~zx?pOC#{(e`}xE(`=-^9aqD3y z2b-&C;9qZ5)Q2l9-}o@( 4YmDhUCzHurad!r zr-K^3*cW+LI7@jI0r0zeMt9IxK))nkf{n5De76#5KP3A&{M%ih^3udF!`2p+^tZ}z z_d>mUCx?yxJx7xE`M}`bq+=ugunWL1iS=sQEnk$k)#3$s-7cqJC_y8gh%{i-;>3~@ zP+BZYxNzO>#0;A--FtuYfhk6_euX$ab9izVG&O7tnlcQ+p6M*=EGX|5Z}4`jOSVf8 zc-M}#X-^d!2X#WNEp%JNVLt|pK;wmEHyTTJ@LKt#LiG2k18nh(` ZqEa9y;zeLhieu%q~JGhqA`!DmQZ2hdeV2i!|f$FvUn%{lOQn6c%h;xC` zP*?ca{CuDGmr$3mqL?SdEP~6#x?<5){k}nsmi#*Eo#JkIi(&}UGDFRzhJ}7mJhbBT zwvaPAf0h&4K+XkhTw{y&L+8Ku_xuRMX?bdJR8GY*b6xd)D?$6NR8rZ~i^km%X75Hc zFSB?UXU|E#28hX5+W4dy_=K>p^^ZeE*!p-?@t>o^$mRmAjVitBQ1=(QPb*4g5&`9j zp2%^hpn;dn&x0S?LKV8Ss>5*>O#|aeepGQrXptuWZH7*z>njnTrhw7kp9-@i$plaa z*PanE{!0Oe;Rf(D#W}%u!J@9S&~Z+o@j~>m_X;YQAbpJgb(hJ)K~Y+sS>#{#1xe+2 zw!Mta1%!0=v@4Ou3Y5T!GpSh;*NnS`Vl!Kf+Q=og?Y~-UI)9-$LA1MWzi(R)xKi3l z$%VsPPGQG6e|3HrEOE8|sc&ybd0&c>Ti#>PAE*BaK$-L>mb&dY+9Tci_?aFHC3Dq! z26Ncev8HWchUvl<^G;9mn>l;LXZ}O{f7dh>(+A9trWrZzZ=>8Y3c9b^x&3!h_j1Vc z9%yij9h!K=nzk999JZ*eZVtzasdP{Fd=19ln%q}pZf?6L)`Ek7s~LsSXTGO(cmC$< zA;zBhwJG?E5$DL3>?iw_za%8~uW=yjf7B0Pc<*G2_5Ycq|Noc~?2HTBF>{a={<$Av zKmX;l p1?c!ruiLVx|@ITGkfTV+h)eru&nn zw^sb5WCK)5!S1r(XvoLtfl$XtE9lc#=Z_!m#CLG@67C%Yigi~o*mD?9A_Fq}a>xK& zVYa}iji-27Qei4T?sFEVJShWJ;yTMz#m$~f>HS+X1;g>AUCPaL-6sCYi-wjqw;NMF zXy&{8Jaqf~o&4|wz=ML4o*J%Ezh0T*vCvyQ zW_m$Q zA189t~oCi?W>%|%v^ H-A5ZOM_-%8Z(G#+usXrC9uxF<$I#|u0% zG!3-$Q+4g!4%Qah^zsIrNi5WHWZQR95Iy^%#++6UKDmaIZ=mnDoHt24F{(_(0t(DJ zvwU(XJnyzhwtM12>cwKXSKg3zgOkXVuaV8{aAztv@)kS$l|MLC@S?*JBt|nG_aFq> zZ@V47%`2Zq3qH)S(*73 z-BHvBSmXaTzss0hVBlgMq(blw+b7@S4_tPmY0dXNnrAyEnb8WAv&hy^dn!t( 0mTU3) $MU zS4oLahFkDK)aN@Q+O3~nz-0LUIXLcI%&(=Xq@_6IDVkPBzDME_x`FGipz-`dhjqm= z%|3{O5QGPgG5Sb5s^{d$iWkUKpGHT;`4JT ven|x0kOlN*4nb{CrS05 z#-*#iQ+dUX=;Qy