From 453409aa75c8d4db1779dcac6a2c767b61b29d3e Mon Sep 17 00:00:00 2001 From: Robert Czechowski Date: Tue, 20 Oct 2020 18:27:04 +0200 Subject: [PATCH] Add logo to README.md --- README.md | 22 +++++++++++----------- static/images/medal_logo_small.png | Bin 0 -> 14899 bytes 2 files changed, 11 insertions(+), 11 deletions(-) create mode 100644 static/images/medal_logo_small.png diff --git a/README.md b/README.md index e752018f..ee552686 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -# The Medal Contest Platform +# The Medal Contest Platform ![Logo](static/images/medal_logo_small.png) [![crates.io](https://img.shields.io/crates/v/medal?color=orange)](https://crates.io/crates/medal) [![documentation](https://img.shields.io/crates/v/medal?label=docs)](https://jim.test.bwinf.de/doc/medal/) @@ -52,15 +52,15 @@ The `config.json` configures the plattform (see src/config.rs). Needs `rustc` and `cargo` 1.40 (stable) or higher. -Rust can be obtained here: https://rustup.rs/ +Rust can be obtained here: https://rustup.rs/ -Running +Running ``` make ``` compiles and runs a debug-/test-server. -For production use, a release binary should be compiled and served behind a reverse proxy (nginx, apache, …). +For production use, a release binary should be compiled and served behind a reverse proxy (nginx, apache, …). ``` make release ``` @@ -81,7 +81,7 @@ upstream medal { server { # Other server settings here - + location ~* \.(yaml)$ { deny all; } @@ -92,7 +92,7 @@ server { location /tasks { add_header Cache-Control "public, max-age=604800"; - } + } location / { proxy_pass http://medal; @@ -105,13 +105,13 @@ The following configuration can be used for an Apache 2.4 webserver: ServerSignature Off ProxyPreserveHost On AllowEncodedSlashes NoDecode - + ProxyPass /static/ ! ProxyPass /tasks/ ! ProxyPass /favicon.ico ! ProxyPass / http://[::1]:8080/ ProxyPassReverse / http://[::1]:8080/ - + Alias "/tasks/" "/path/to/medal/tasks/" Alias "/static/" "/path/to/medal/static/" Alias "/favicon.ico" "/path/to/medal/static/images/favicon.png" @@ -119,7 +119,7 @@ The following configuration can be used for an Apache 2.4 webserver: Header set Cache-Control "max-age=604800, public" - + Deny from all @@ -127,7 +127,7 @@ The following configuration can be used for an Apache 2.4 webserver: Require all granted - + Require all granted @@ -139,7 +139,7 @@ The following configuration can be used for an Apache 2.4 webserver: Please format your code with `rustfmt` and check it for warnings with `clippy`. -You can install those with +You can install those with ``` rustup component add rustfmt --toolchain nightly rustup component add clippy diff --git a/static/images/medal_logo_small.png b/static/images/medal_logo_small.png new file mode 100644 index 0000000000000000000000000000000000000000..4fed2db3c58659102809cce4073d437267378440 GIT binary patch literal 14899 zcmV-3I?Tn1P) zaB^>EX>4U6ba`-PAZ2)IW&i+q+O3;uaxA%Sh5vIEUIJ%=%i$Q|9eDZv4ogz2hi5-W zxYbuGm9jFKAaDkd>CS)s=XL+Vf0lA|xiqW2R?mOA=N<?I5Y-M7Wl}&{Br-(AOA03?%t&k1#dsGVq8%v z$}lu@`p!{I$k#Ne#=@_!uj%){@`qGq2FnYxaf8Fp&nadJf8;a_S*YW+0RjH-n5hr5as}7Iket)51G8mRO_S z2Ai0Ol4@$qO;3Z#%DIp~EgLyBN-DXOQcEl5N-v|Pnro@GwknVtEw$WAtF1L_y$ws2 ztyr~YX5B`QJ%NFx*WSAI-p7b;aG}Au2FDNHnQ^9>XPI@jX|vCK1?{R`VAjQe2oO;@^)6cl%+D$j#a_eo^ZolJa*1l%-Z(sk1SqopY7T-+i zxb`z^yz5%~K1C3m6wMhk7IR?6n`VH7j+!%XA?K)>)13JpDT)#qWYOHX9W-N1VLl<2 z8-C{QkD2?o=FJuRx8^PWZ!_mKb^jkT=a{;`&)YxD+7{2PH)EeFR7`!M`uO{?;i3(Z z+W6~F-8mCsyz1S~3zj!wUQ6V^f8 zTL9FkzkVY(H)rTXf7E^J=!Ad+b}w#~y@<+OtJMqo+2Uiqk`&=EhIU%nL_FUUdY$3K zuuCj6?;Q8JGaJ`tu;vJ+&CvE(z;CYmaoj~N)D48(o?AP7-Z(MCnLEx!EV|{B_ZWHRbL!48ZO_)}!Gw`>V|JU{ z@=9Q9>Zi0sMz*nAjg``^T#yMXZV<3@d}@m_Z+o6mrzKswWzMlH+(kO4%K+o7X_mt5 z4~ikwVSDUlq~mG?dl2tF;yQim^LG{_EUl+@m-6RcF<$WcNoo^M(&kK0B?pe!x0lqq z3k-ftzl~%fkW2tIeCJuzM*;V}t$WBP3(W?Ju*t&V4_Qia^&6x;X|C->jbDcRI_FD1A!klGZU$h3pr)>5BT!epL=QIA;@~?Dp$2M$m$z6zs7~E0zjF^ zsxUB<4GFv$FfXElcl@RXDrE((?KNEjPsiTeIwz^8)-c;R%>Ld=01jr}fQNj*p0q*D z4B+-j-Om#)Ah!ic+0C_2tUFAyrN-VW_1exRaco73=8|=Mo2`*Cb3-F@`b;`X>nb-j=%C!-)_2$V=kn)z%$u>d_q+}+jl-raicec!ETcVIipAdq}Z4_{p zIv0s7=AwkPGh!6DLdA;7>Y&8Z`e6A$_kvAG8pza3*^o`qJG9{#nCva~l$t^CA$`>_S&66xfjHu8iInJ#PK9XSJ18hJK18jnz%3TfI zoyu}zQ1fsnFq0ju0+m1_e?xDu74SYc)iRl0ik@jK1Jue)ZWp(l>vz{^#R_-s>6-AD z9En2G#PnT5!sLx;U!~&{A*hzAv6aXV6crF%LL+f2xmM6AR0SHqb@H%mVC7J&;1r~O zpzar&ZAb)<1lW56=Y6*jJFiovnnmZC*f9ww5^O)=Ie~nF10r)nhQ-oB3h7`lmkP<# zgT}yZ>|_x0d@3?GMA5fkV=^d=AEZHPd==_m6iL==+10O~1$+rrjBy(i4+m7_34Gg( z>N|nUCD%L@D^*m&w!lr*P^^^;kwQ@LY?DSK(z9Qs7e&gkHdUIJIYHnBZnrx=dI&g$ zT40shGWoQtSghcT)>>x@;ZJBYsL0lgrO03zNM>ip#Qk8V90DXi=}?qoq+5pgYwLt@ zBOC=fqZdZs$&M8%`JI9EkpmOPVGua=STde=Q!uI_a&2KDs3U-`LKP%CC8eUmIS9yj z8_5^m@sYpj{Svdi7-^be2*i+4A71bG}PK?J3!;y+(*sQ$kfTb8gPjm!V znsGNo6yQT_r?T!)e-H_31TBH?wQaBglZ!wAS5N}vJ%Hv$*z>*5h{+kC7$gC6BT6X3 zwE-Lh11Nx1g63{t1|y<1DtFdP{3)mCWTugk6H2OqXp;`$j=}CHLCD}S`tBG=I}W-I z0N4zTU}KJv<@^H(k9ZA0z8eHYnHP>c^3k`TDhAa=g%3EgkfSk=^~v>CVVD9QqQ-r} zN5VHtrlvx#)bEB6bCUG6Gbgag9r+Cs5*1L0It8+U=ZuBh*=sIrfVq_iy zk31*uMu$Xas+!X6sc&Fqt5SFcO-NYg%XOizVHaJSeCO_hqwEm=@Lsx2`MlvAOcD8j zJEBaedaeb;GdTte?>JN+Wn?5{q!bbvns0PEzj;&{vo7L6Vl5;x;uy&}F*paFq|mvy zd!<%}Iu?~r^(7I2_d-`1#;*Yj1oT9&EF|$!(2sBMVTLMahHx_?pZs+QAiyZ}8ku|` zdyXGYp^9J{f-r+1MC0b&F)O4ZcY!qSQ)9V*yve;2Y@lXRJp*uH`ceM3A#6}}ZxkYt zEk6~$tEBw>H;xCoDNPU&;mkB4X;;_XE|A+OHh91!YZ}v5;Ta4LDuhq>9wGcx7oxaU$(jnXa2VB;U?7GN$;LxY z*XDYoII+tOrOGU3)1VNcnpjjmIVio!r5S}(LmVl3E|C_iV?-%D0$r;gDN#r`!Qw8eVNZLTDF?>hFRz6ZoA@ycAha)X+3-7r zB%$n3T6kzNtxzCR~@Z||UXI|rb9 zLkTKW^7bmrNhAy$A`8(!8mP4#3WMZ;v}?L)c2XYDJwjE$O?|PR?1IGLd<*$W#!2=1 zfj8z}D#`~?CfL*WRRfcc^2o9 zV}`jUnJ>Dh6LH`H55-*}h*XehT4WnUL_(~Mr>@dQr`<}Zz)d1zj7V1Q&d>Yz=lybZ z*}dfcF*NPL1Ktb;8yqE73lJU(08(h` z-vTB~{*o}{|4y96kmi=LrEwN>)99A4lx0) zxdkc!TB7pd9%RnU1PU18jN}!i4cbv_Gt?O2u|+r|8rvQ~6Nzui_>op7!a!V5iyL!N z)Qn2lKFV)whu#Pv6`T|^^_wa|NGKF)B4Vj1fE?6)xQlU5xsZAqdWK9wg0}|Hq$tIf zM;8?jsXT5RBL_4~v=CpoAdq}h?$M)~1nFc$CD|8Z70ag&aGjo`LxiFeTT+{es-PwT z)P)Q=i?jjM_=S%iTp!$5G1c(u78||FtMbSL7<2a!dO{o34uaECRaYASiJqkDkX($4 zygFDGl-a~*f>XFqB0!pTjzd@M=8*9X;hC`wjGUpOUy#C5H{crb^4`HnH)&!3jCy(G z1qd}DT{Ua=f_8m$5RF=Mpg8bf1JTY0TL$axn`5eW;Wf$0#fy@&u25t#NfmHlw9VCf z_AbA+PRqL`NRatn6Bu4<%gG(8-P@=FIdBSzTi3J;C}Wayj_DO^-|o9ek)Nben%^}{ z;WIC4BVcK+=9cQO)J}hgFZt*V=rb1)avsPU4B983VUKa3FB9r9LC;JO81Ov3S`ZNy z;3nWj3!Dx{<2Fi+7-(1350QXKD}%InS==r}y!_-2`K_t-Mm_~2cS$(|WTz#?11|cm0)~|V9CW-IRDdpcf(hnT#RzjN8>b>A&#a+h7%v4Wn=wJk z!N(X(jdEftA79B;Z-7M#_>;)Uvy?AD8m>QxRs0&ajz>TwWReA*&4h~_5eYGk5x$9- zZ|YIX7>!ghcjTftifg6TEEcug98-RqI#{n|iDz#!qW>c_0dT6%?wNAJBqLH`8_?r) z=_M*S*=)FR#(5kGRs=~XVqh4=Z-^Zrff#yOJ2DPH4GF0a@@!7IHz_6v^0GkyFb*hi zBK`~^MD>_@XudqlfV5zw$ZCd51o4B|mt=}IHl%Rjq**7qMTBSu0@MO>tWVyyZ))dO5L=)V_ES-eoSR zJX@dE5pMd)XD3`%?Of4az?XA{5W}i6`C6h#0w?%T$5#&=C}D~;&AZU_Y7y<_zOFn` zbs+ib&p=b%Wb~(TbvVr1&)X7Ee?UI_PCG_Zj*%xb@L zs79cPla^F=jaR+7p?)6aBHb&^0w6l-0X{-!H*D9C=7vL%AZl5}iYUiQUTz;~QxQ;+ zi0-tXk~M~Zk=&TJ>acu_IRfIqYErzY2!9lKV1;)X70iHz?N=>cj>gLZidAjn$?^Dy zMTvmz8Q!^7ZQ6m$>IgqkCTE-FEr$8!k$DM+CdSHYyA7tU8Dg7ThK$iMt^t~u0`-?6 z=JeJYj2nEdL3EsI4FM$JPl5uIcBb-TI{8r(r31PWqfdEZ5>u|{o2AI;4<%`Rr2OWq z@rn)YG($%&!wynVYO?It(L_*ECpaX(9v|ZVfCD}?+czzeK-8i5;a$8<#7y5kendP) zTQKFHx-QhFm}Zr4c}t=HDy;GAm#3?K6_)#ZWf5^~FxUghF;C;IG4g?;CP{{tkQ+kK z%G{^W4#%rNZc`fv$hD(|5=s)Kgc9D; zttf(`YzK&@P~77p>LqivREEw%)laoWQbbWP8BQF1pdfrT79OixafwKLsV1qZPLW|n zBF2*BWQwU}xa0+Wi|HnA2h-*VaP;8bfB&qlc~xjNzIh)s8uF$7Z_bVvY%RT{;$OV z^w@#wrXirWx*OQ*^^tAhcl!O?l%3m#$%~+uIsX=HVEz7Wxlq5~$&W%I(YK%T z;2E%Za6Pq#cqaH{mx*PtGEJ=!=!d^F>(gfsaPdj?t1%52u3sCB~do^V+wt5Do=G0x@H}5W3fXpt$-p{3FDI$suN> z3DyZ<1ACNp$V4#PSIVOUVSD1)Z-*M!L;|*6Wy{nQg-Os#$A9n>=OVFmI{N5FNG1&i zWN&PI!f$jJw+Olwb&J%wB9)b>T5gQoq%LY(TRrd=hud=7m=X#UB@^Pz6tL75n3*2$ z1B%e7ZFmKf6h5-X|CTktibm#y-9y{6eo_`GuBEb|lq@eLDe?0K$>8%(LRRse#-*nE z$M;LvTXC_yRECPBn5E zQFXGwz6e3PAkupgI@w|luGT^gXvfec zz9A}@fFBL9f~*0$3zkvNxI(r7?OV4P``uu~bcABdy9g*PCD2oh9`a{kpM??4rEsza zzc`afB6xcCqC*btvW_l+^gcLx*@v!V!aaMXNhRf$2gL0Q|~-ZJ%0U zN$QlTEqa_9Af&DWL?54%CP8cXtlE8)jtWDo+crtNE%Ks#h@N;zVWpoQ{6iWzf=GmEVN+C{w!FfrtPinbg&N+0c@Rq8^n#{;zEnIV{t zs7PAsw5V+qT3-RPk(-c=cKm2>6v=e8O$^e)if*lv*bwFb$s|9>S+Z6%w+WAe7T=Ln z1$`W}8oaP6l8zKEGD>ts;kXDZ@PS6wO6?DoN-^+~2})?|Te$=9cQUqhF4iNjHqoHq zmYPIS8yrIJE_AZGtCffBV*WoP{AV7=1AFB%aI-+*Hpyn#TN83)l^1yu5`sx9dKWc=PvNAbVav`qGm^{*X*KE{7tIY2=bA|%@a%Nc z&MlmA@M=#q+&%)XQbEix-j&F=iKiuvB7d@>)xfvtksBIH$%T@GJ{il_=0FfRGxxc4 zEfTc8w>GnmKrYX)TvfYJu4Q*EKn->GI^s;u=j|9OYI+dl2Cf$^EA1;EhE*f3@Rp9I zfZcj~dh04!Y#_-OVOKGu6~PlJv%w+e4~2O1ZPC%M>~&ttRygG$5lb^vPeH|a62hI1ZF^2+Zst* z?K8Q#VnIc+Q@{*iy09i75P?&Ar??6pc7ydii1+u21R)#qKZ&K8xo#HdEpHi zrW%$aII;>WS_PfGz)=7XwR>7k6-{%1F^Z>YITPm9UWC-8E@DgS!y{anKdnPg?Lvds zV1W|wbiHm$S`8JF==D!Q_@IX_&@PSCIhE``X-dKsr3N-B!G+|0kLryOTP9q6Eahfg z$Xo4enn%0zAgapsnY$sr9zbyRP;N{Rcu94t9R_kaGI)B0KOtlqLRsz!>8Z6RV4NbC z)WOxxw+$hYdrWNAMow*Vt&|H{pHcqWMF2!nZ*P|hGlPj>unU8#gX`*4>JD1u{J z4d{$018ziJi#{#IwjBgsw9eN-DOo>+`H&qVO{bUN>z@skuji;$Y-(s~4PY7el7hbK zjPC0qzbrLCK^64iYv&y8Xr1a+YeS>14Y}dWA{WuZnikp`Cgj5yHGneR{b^OLzScg0 zfV0yvZRA#ZETT+O7bfU!WHn6$r8%?|n@8138J-q!|Fm<*)($e{8y@YB1I$Ssz=fn9 zN=Ds*8T0KpqYO6iC8dOUgSDXRgy=%jHdQiq#3p5Q(OQ#1lz{SQ ztlBI#TcfxrAy@EiYQ+=nqGglPwDzz%oCrNv89X$_Eoy~m0}(+{+c^s@qI@43ggJ_C zXpXetF63IkXgBQ_IMTAi`r0}*{U_unG1_!+DNJHlJqREza9|ny2NO(PjoEL&? z_Y7<`WJ-1J*ZMx%a%NgRMOjXD__j6&2+d!51jo%UZGut1ddj7BSOcXF69HrdYDmvz zb!mpAfs_m&&24H|(gb;z^uR_$poRFO7N+)oO82TOOtyhPN2>>yPY=m6ZNZ>U;~9u- zN&#a<3E|YxPQk#v2K6)-Y1p)#x=zWYeKL|r z`;g&!-aiPlw`CUW1QM`!N#=4fq86M~blb0sr5*Ts-T9}(X*TUnh4hdaJ-lsI6yY8LO5*Zss^6`)8fStVcTv8E zru0CKRCPw;gAWO8e3oajD?ESzM-4&@mCTP(x1d(9?t~k8%}6a_fpjP~%d-^?U5$7A zN(4%QOf9V;%C(KLYhOO;(@zH64;BR^B^of=vtWdkkrHfv#Ts#xW{NqvAh*}9`X__6 z3qNS3ODEGtkEt!8(!CUV(UKD>f%$U;t9XP2f@x?o6HZj7^2#btEpV$L6$N5o3^=9f zSDL6<1%FVIUi-?nga0vOOWWZ@8c~_qCEJ3S81hBD94U~ajnNg|8(%IR?T-gjlf7pY zy3-R0MNguH)}S5j^}^zWhXX)D0}|TSUJG=pMEnO5h@TN>D7u8P4qh(+8f;ufJRJ+O*io~#cw<;Ob zbBSt=;l2%}gpEjV(V;U^!3PGqfWg`l&hIx=Sz2j`a1mjkg7%7|Up?7LeYpclkj3I{ z?c$+6ytei;Kfr0uHq{!dx9P!$w_TI-;51X9K(rnUV}i|RyRAhM=1-gXj<&<9CmcaR z03{qfKcI&`kdBgz5S3?0Abvt`8}b9O#p(AtZt969v?hqCJ+il(G2ai;yf(9896gRQ zt>)D!#f0YqE?#OpQ%sPm{2~t0nBDTck-GOti2ivRqac$@g(`v7hxur~;Rb&PmcpNex9b=m70i{s=pc%DXi5U=PkCEAa5=_)UOGBlTXM z!=qe6%s`o%`_!54B4P@Nomi@JyY{u4+ux)-$}q^P+CN#yN-38NlQ7X&>k?Yi(q>Su zN0}4|4Guvj14t(%>bvRTn*;cZ(aWeEWq!307ioZE*jt-QDKmtCcDth%?hs*LjL*%d zY3+t`s{?C@nsItC0p73LTsGAp42ChBNR3Z9yw5=ooQNTy{quTsLzq^)z>T&RAXnVc z)@>?Q982VeL^zXB)nZq5WgqYzm~QRimIHrE007gIK^|=ZL}?$O9u>yWkRpoTQRC&a zbDZpWuhiK27e7%A+KsQr;i`A!E>i0W=_v>4A3_q9JTDsK}CHx2)THIKhN8RauN=Va*o>fe@B|+-FsL;ThKBF z+C5oVv)0Ne4|%3VpdwjBxwh$*5ZX4PJu7%r5O)c5w;oeyy$n2rycSGbs4y~%;Gz1q zQp5VE*L#6rOfh1mlTvE5TgJn{C(l3&M+?a&i$c*N(_tztIO8vn@>S0R)F*MZB9*kU z6Wc|CnHow%)q1UJZ>H95v<3f4m%pv&>NQk7nEbjAO~t~eI*frR)Y72!5cPx{7iu~q z!dZ`^4#S%hV1mtwhE}UDVuN)HwYorxWT2!=(}% z=9ryXay#}O*2??5<*5R51;jl;d z6R_(0(@P^}vBj{pXAC2q72c~S%CyDi$k@s|f`|6jPok3!*m^QjTdQAN+}?Nez(E&O zRNzLoYsaw_s>ZZMg<^oADX}os>NH~MawBLLNd*{yS$@7MbC&0?IhRg#{2@4yz*Zk zLSb%pcmECQZN3W)$oyLX00D$)LqkwWLqi~Na&Km7Y-Iodc$|HaJxIeq9K~N#rBW&i z%}~T4Lv^wsD&nYBC_;r$E41ohKKcbs8j=(jN5Qq=;KyRs!Nplu2UkH5`~Y!sbW(JY z691PJTEuv8+>dwn9(V5mu31$yt7jb0blc3Nl0q)ODuiAU29H6+5S0|mm=nb`e8<;4 z0&KlYuq^*`e~x~&U@1UAAf8nW(1}?5Un!E>G?f|hTLoy{-3ex0? zMd1C6z9|nxZ-MZd*IRoZrw>4ux=P;w2Zz9DiL%#y-rd*T+rMYp{rvz)%yO1Y{~}2M z000JJOGiWi000000Qp0^e*gdg32;bRa{vGab^rhdb^$3SZ-4**00(qQO+^Rf3KS3+ zGxaBNVgLXXRY^oaRCwCWTxpOUS9Si*xxKt?c1bg%WweZDG^5QnHn!yra8T?d*g&yV z;v%+_G6`!XRl${Vicl0uAc-N6#Z)CW6d@$}!BP$s0c>orEu$D@OV+NDW~3R7G$U#D zd3*Q0H$S>xzpdY!MI+-@olO)=24Cq#yzzt3ajvo;mQOU#ul=>-V3(xBeHHGVMhQ4fdFEF7z75005FIc0AcRRYnZ0TN9gWf8v_Bn0^rFJ}OQ znLxxKA_Uifk8ihVlM3iiO7~eWoyGh;>fMu#0Z7~#3CBD z4KSlzA_yT;QX(n3{MfMDeX}ck;wmx?LUW_WnpTZi6dvP=pfuf)cj#cw#V04PY`XT0 zx%V9#F!uUG3AOt3-(#cs%S6KV?1#sYhy_nd0%lN|dQ_dO+DE`dG8#d~n!tO3L`@O~ zqq&i=x)rbt^1PX*sFL(gNv-Yu9@4>K}t6I|_!?wg{G0 zP=lgM6xE|beJaisR=?<#iucG|`YvSVr6sTSd>WWfm8?GDsA1@PBQadqc+1I^lbDN# z9srxy^?=vx2irRcp5co{2$oe(0w@sgYN-fOv$AUewpN!&%;Kpb&REsL5bQBnY2N9$ zyg!#Qwhq6vV`UgK^4dMnW@j&nwwJ-idH`TSh(`%R)M834ds52_g`Z<%Rf&zMN7eSn zG8wB{8J1aq4Ya{=^}d|TJ)`^Ha&?Tk_w8LUBD>bJvHCfXu^RB05sNUW)Z@?sQd4)o zHiO7W_)@fxl+>_2LZGch1gfqzwL22er5$(OU3((Sw=oxwe5iq~{{I8n+d&LNFrpC= zxaCS)K_Paf)Fo4;?J2po6!{j$WNr+Z@h|#PvHVSIV0u;}?|43)2uEz&*wcN-YpEqm z%;o1nWcGd&WNimLv|40JadnA2FF-Y_;>ddd0x=;L72c}WQi&xIY8<2D{ouBx`*Zu&+qhAmJ(-L2Z>Y<9j7zh0{k=2sHWxG9@8`tjamRP zG-$n(SC5?Ae@F1_U@3%c38k%16#$oQnau2!LBGK>HI&c2dlly^<<*7dma z_FdJ1Wety|RnC7!!oFWk;mo;o*}6-q@xl8#k%%o1=Op40WOFG%16tuxA@x@Q$UtJo zU;lkbo%mglxfURprT`bDrR?Q7R5~gdq%<%)m%-e8DW!4n@DTEOS%P-!+aj$p014z> z;P8nQ=8~$4w5}g{*N@6gL?RYI1P$7dgZ{v|mu@Yp5?QSvihR8A!j@%~zwDw_iNmpq ze_tsT&JJIygKf$^lyav5Fh(xq;K~~D7hRo~ihGG1?|BLz(}rDSjMlUTWZet^LU7SN zmmpIDg{CAc|5d7%hDJ+MA{ak>WT=RVY9Z*tm^%e#f#Ukk3k@?KxQV47x$q=eZKt_~a*$jn{8yE{ldUL2dm)O4~+I;wFF zpqydM&P$xXnDc@_5U$(aT%JTHUR1PQk0Oys;n_ysk?%Qv{z0&9cL2oq7ji6yX_g0b zVMelqDSDyEnShS=HgtBh1_9maGZ!kDjw*&~nS|CE42`6NXLPKNV$JGU1zHx1j<#!& z9kEMe!22Vk=fPU#ngH=ufIRm~Ty0z_WPic2^2zSrxh2>?di*S;RCQ6Y%uhmT1IGuF z!Pu_;mXJlddNeH9gkhM4K=)?BW+Q`RyFfk9lmqxEd{b9LxujL9)K!pW+dig2Tq?DliJ~`<|MEf@MI%UDG`1zu zP%y&equj7`168FP2+?Q++j_eSNE0Vc4ExVQ$vuj8N9BfadMFvZL+_R*#G+QQ>{5cF z31SJvp=6p?z-Xn^jSS$H!b=HZ)RB~W(o+wp6(wPN|Hfea*vVn!a!%;)lrsaznZc1$ zbHR%C_qLQsM~MnuWyD<|!>~$(f^K4v*vY1b`27Vn2#AW z28YH%)0;9kijfOxIF1HDNW@L7?MReAdj)NbSMe-*W39240kzXhM)4wSN-g)j09f-= z3(Sn`clQKihmQ`1Fi}J025@3vE*QIR`zjxai*S!gD?!3DC7v1SXArk|Wla$xDGNyk zFOZO`PAzQf?Sl3}&Di)PCa2~r)My%Wb7MF+n(|kV(9_*gK8dpDEF&DKQEgyh6z;o< z32YUNX(@oK#xfmDCJ$hxvLS44R)EK zEHm)LH4SP_s)2%;jY9IwF4RFv$`rH+n^I4bxD4EdN!rfsTY|*h;bTJ{rXhk>S-9C# zI6g4rmpd3c`c{ETSGmw^R5Q=J%#0r~m_)$~GKa%*4$`G&V^=4l5gPzuem;#0 z7biTUn?8-HnHls1SM(vtmH! zy;@88%IZ)FT8zYSof2#@$=$zgb8viWU<7lM2O-@&j+~eZuI=k-gAP*= zB&f1GKzDZ+ppwvX7Gsw)I5jvEOtyPdTOIpRQQKMpfG3pmB0&;fUd;l7SuwONxb4LM{1~?|A6Cl~8*c1vm z*4i_5mENu}F0&)h`SV!c*^GG1LMrV50OBzd>pPo^-4RtLl1myHsRZyXV0IU1s&n%h z?_NYnHmzecdFJx~$6f$gcYzqO#F`>BuIqVfdn>6lW@eL~VbnlFLjtB{7NLMU3uk_x zUxEeZlQ}r9w{IGZhJ;gtH#J85&aUNeO1hZ7avIu;8J`!1{Ts$``W1A= z-}W>S?g9YU&HLpO)bT9!Nid_WwK;T5t1R5)fwKEIB%+I+glP)2wwNp6o{L*Pm-gK> zKqS6zZ0zymb#m~pH-lSGgIEZ|Ml`-Ayj`P)!bm| zwd|&?ox8s_?3ZZuSwOx5h})EOprix~a|um_iy$rGBo9KX)G}Jf^fhCObhD6d#>?KZ zv7d;BgWC1Hm_UPyKLNIH0|-t&2|LLj)D=HmCNP_iLm9HFKW26BXF)poZ-BZ85L`C} zC7p_Bn-^7Y%H>@ArU)X``BRt^so4xXLDb1$4mCL1~_>5BE~NzYmWc)h11C9 z)bfz7lS3{$<@eqgqY5>p7Uj-=SGY6Q&^9U9lD$; zgTDSY_-&(M1^WE?30#y1D09gQV@^ers z7v6SC8~`JkzXUgZ)N{w=wUO-TTZdDpF9RfS>dX~v?^_o{;)7==5V39Sy?ZBazHu`S z92&uV%E7Udj2GDMe#$K8x`y^U&J!YU7vYuxaCJ44s=qdwVl(x?vN}3|+?9_-y(22n%8( z4XqWD(`TTS>r0{e?T+=o^8~fLJMr@Ipe4i4ka+xq+uzf2G@wsv>mr_Ue5|2}&Zf(e^9twB$BJ9@i2 z@%!2YK@jm@C%|+Rm0#l@$_UsZHN32NeAJk&X zf?uE9ch4?-^U05{1MK}WKe55djzS0%iI#13^Q;B z>CfgInBM2MzG?IN_Z(LuVjECOgP9&C~f z{+r0D;m<&3Qr)hTd>&eMd1k~$ytxmC)wrVZ&Pr`=ejcfrlb%QQ)cZUe@w+2d;!IQb z=NA0^qBA^GXTJnDH?~%}=^tt3?k>bbk@!YL66=?8t82_8jcoD)vdMGB(hV6$gqip) zqoMIa%euc@)LoV|n|t4}8UOXQhhzE7m2YU}d?4s5Hxh_7^+K45UvE(8q>!FF4e87k z6QRQVjuB~n`1c1Oq)zol z*pe)A$@9o(E|$8+3=8|wmX3#>Fk5a|@;#TGES(zs9F)xTN;mbSR?c0e7{-cpz>cqn zFyhx#t)!bqE;WjLW~}VD#Kud8+3<*9YoNLNv&)*_Rb`Ry+q(t-@#!Jt+duVymifQc z+TBnFlFVjU(M}kVRxsNuBpo?8xhXiAak$P@*%XMxC=2_sRofo_*8RWPjUR*{+BbwT zg>CSeFQB!LBX0W2hqZDZtz-~D5Jn>myA{H0gfQY@5h+2eI{dY?gp^q*Hx22`!Oc%X zI`dW66B(n#=HJ_9%Tt$5P^RZye{t1wTG2nOGd=t_&?+xfKKDMQ@*mgAxed@p_+tqy zED%RPY=L|Pts$XR9$ICgWIiadgxo_Co4;VTzG|3}Zv(b$-tyRr&E=Z>DW>T|{{q!8 z17_-Sb2IOSR`1e~d!S`}xt4`A01`=%I6%Ztv)S-{BAlhUR(WqaV<#pk+jBMLs%JAdv%T0@^)6Y+lq_9bgfERdD2( lQrY>I#tu;XN3ZF7|382;-D`MJFhu|W002ovPDHLkV1f9> literal 0 HcmV?d00001 -- GitLab