From 55bf0433b05d6c0864fbabfc85de88671af020b7 Mon Sep 17 00:00:00 2001 From: cedricve Date: Sun, 27 Dec 2020 20:06:10 +0100 Subject: [PATCH] init commit --- README.md | 63 +++++++++++++++++++++++++++++++++++++++ kerberos-agent-v2-v3.png | Bin 0 -> 32341 bytes 2 files changed, 63 insertions(+) create mode 100644 README.md create mode 100644 kerberos-agent-v2-v3.png diff --git a/README.md b/README.md new file mode 100644 index 0000000..bf25ef7 --- /dev/null +++ b/README.md @@ -0,0 +1,63 @@ +# Kerberos Open Source + +Kerberos Open source (v3) is a cutting edge video surveillance management system made available as Open source (Apache 2.0) with a Commons Clause License on top. This means that all the source code is available for you or your company, and you can use and transform it as long it is for non commercial usage. Read more about the license at the bottom of this page. + +## Previous releases + +This repository contains the next generation of **Kerberos Open Source (v3)**, and is the successor of the machinery and web repositories. A switch in technologies and architecture has been made. + + +## Introduction + +Kerberos.io is a cutting edge video surveillance system with a strong focus on user experience, scalability, resilience, extension and integration. Kerberos.io provides different solutions, but from a high level point of view it comes into two flavours: Kerberos Open Source and Kerberos Enterprise. The main differences, very brief, between Open Source and Enterprise are described below. Both Kerberos Open Source and Kerberos Enterprise can be extended and integrated with Kerberos Storage and/or Kerberos Cloud. + +### Kerberos Open Source + +- Installation in seconds (Kerberos Etcher, Docker, Binaries). +- Simplified and modern user interface. +- Multi architecture (ARMv7, ARMv8, amd64, etc). +- Multi camera support: IP Cameras (MJPEG/H264), USB cameras, Raspberry Pi Cameras. +- Single camera per instance (e.g. One Docker container per camera). +- Cloud integration through Webhooks, MQTT, etc. +- Cloud storage through Kerberos Cloud. +- Non-commercial usage - Commons Clause License (Apache 2.0) + +### Kerberos Enterprise + +- Installation on top of Kubernetes (K8S). +- Camera support for IP camera only (RTSP/H264). +- Massive horizontal scaling, thanks to Kubernetes. +- Management of multiple Kerberos Agents through a single pane of glass. +- Low memory and CPU intensive. +- Modular and extensible design for building own extensions and integrations (e.g. a video analytics platform). +- Commercial licensed and closed source. + +## How it works: A world of Agents 🕵🏼‍♂️ + +Kerberos.io applies the concept of agents. An agent is running next to or on your camera, and is processing a single camera feed. It applies motion based recording and make those recordings available through a user friendly web interface. Kerberos Open Source allows you to connect to other cloud services or custom applications. Kerberos Open Source is perfect for personal usage and/or is a great tool you only have a couple of surveillance cameras to be managed. + +If you are looking for a solution that scales with your video surveillance or video analytics well, [Kerberos Enterprise might be a better fit](https://doc.kerberos.io/enterprise/introduction). + +## Installation +Kerberos Open Source comes with different installation flavours (it includes both the machinery and web repository). The reason is because depending on the use case one option is better than another. A short list of recommendations: + +KiOS: You have a Raspberry Pi, and you only want to run a Kerberos agent on it. +Raspbian: You have a Raspberry Pi, but you want other services running next to the Kerberos agent. +Docker: You have a lot of IP cameras, and/or don't want to mess with dependencies. +Generic: You want to develop/extend Kerberos with your own features, or you want to run a Kerberos agent on a not supported OS/architecure. + +## Common Clause License + +[“Commons Clause” License Condition v1.0](https://commonsclause.com/) + +The Software is provided to you by the Licensor under the License, as defined below, subject to the following condition. + +Without limiting other conditions in the License, the grant of rights under the License will not include, and the License does not grant to you, the right to Sell the Software. + +For purposes of the foregoing, “Sell” means practicing any or all of the rights granted to you under the License to provide to third parties, for a fee or other consideration (including without limitation fees for hosting or consulting/ support services related to the Software), a product or service whose value derives, entirely or substantially, from the functionality of the Software. Any license notice or attribution required by the License must also include this Commons Clause License Condition notice. + +Software: Kerberos Open Source + +License: Apache 2.0 + +Licensor: Kerberos.io diff --git a/kerberos-agent-v2-v3.png b/kerberos-agent-v2-v3.png new file mode 100644 index 0000000000000000000000000000000000000000..fd10146e609c28551968d7c69d6144a1cd44c806 GIT binary patch literal 32341 zcmeFYXH-*9)INFuMT#_0_yJN?P^xt4RX|0G6zLu5ozOx6MWjg+0TDt+dguuqq(~}SuO^*ph9I+`?8tW*F1(7e!6 ze**xdC;%XppdbeTV8-gE4*&p^-dd)906=|*_>fF4gd0ADGvvTCd%EFTJQj3pK{CSb3y6p3!3La@H0Ep0N?7;?x^QW@I ze%tG%dqZ`2CDe0yc>MMx9^lwW001bM@NU;shsO`V4S5%=Vf{ig#E&-P2IhFgq~QWL z0RZ^hXssS5z{BW-6*7E@eVQ#0DyA)IDddwZQzeT#81ZNkv-qqqqDH};1Z>Vt z=U(LP5zn;3=~I*g>j+g*w}P!}s{jDN#p&jySRL`9mV7UxP_ZVs2SoDIOzosa)$=|8 z0N*IK9SVlcpoJgz21w*2ESTvlrA>~c(_8@n_6q@AC45Bht!bufMhdG+=~ynTH+3w4J$|hK#$IyE+bwI8@IW9tA`vU zL4Zse8{VlT0f6zRm6$a}>WQ%VqmTRlR_F1RJ;LfW#L2R(D?g6pCINo}1)UvMScuSO zUTglJj{1m8_W_87`;^8n7DgCGTP0x;%jNMw5&(dm?~O6;6wOH;P>$xb-5SMRs{qp* z0H9o`B=slZjKP4dxcFYPK~9DAF$z1wcKdemd)H^Vz`{2 zH{>O>L9lCzs0DPpyKH8Yg?dZX&roG`_z$tU#%AW1e2lNu9de)uU3IZC?SQVMlcE?w zZO1w#oQ!b0d(zS`Plma#Lk`mT#ZMgj%KWMA0_daoV_Dy7HUI#O_9+>fdH!%UK2>=4 zuo2K9qOP0=ezo-tz{hP@~%Bjryg(#wT>je*Bb;H7STna;1RV0D!P~GY& zgf1`IH)JVeAvm{gc*o<>)L`#nL_7$+9A>!fpvsvsEKyXF8e0+H&H(^GZ;!0>2dN~P zM~Ksw=_4P#Y5c~w1r@yD))+H`*U8(S6HhP6x!Y$(v5>Js)PmD{lj>pfb}Q$59;YFA z9**5d0ZXUgBqgZ!ZP!P#Q08fO+$$Dp!~g#}TP8+r3m%007F>^nNyrL$ycz zuU9|qHj_Aom1ze$#v2bQs37?A9;pj8a5$Vc44~zgW~$qIN%z0qOfYsCn?(uNC$k%t z1vV}?Mv`Ln^cq*@bpyK zo}B?S(MGj}$6~Ejk5oJ!D%es#Fv#5VG_PrXyxtct!bV+sYI`pW2LOO!LSFZgbB-si z>DF5;jXm7VG0;})m6l2+yIRkdOt3KXqnZ|K#(txmD#>C6r}^02Ms8|O$XtvP&6S&A z9vJ}SQ5A{JVMsJ5u!-wa`k~@vV}@97g?ZL5B_}F`vi4Q~0jCQn3cKi9k25j<##s}0 zAm90f%gRhthmX;%Qj_2-cU@y?oP-YU#4+aXny`Ug&bD~O#m%eUWCMUa{yoaA zi*av-+53}q^bOPYf|YMD#_xK%eUqXLPVY7Z$5$XflufbPDNM0yBM}{Ye(uZzZS5mW zIs1s=&M9G~;qsxBkbH%BHnq9GI)N<%1=)oAvzw#<5D`bk9|YeH|K4$wSiFx~ats|i zu+iEkMx^tzZ3jEkuCdMbGHtlDyUGI(3L>tV`s2o-5(^%H>|RFUZ=1ONa%T{jVH z=o$Y%*HC@Y;hhie1pwfp@vtdRS$t}+m!R$t9djH%5ODb{ZIHJ0ZK@9MyPa!;Om`(Z zVE}M`_|fg|?p--3Uq9Iihwf}xMa+m6A0z(J=~2jh>W~BCD25D(2zlP5VexL(MP=+H z;k=E{o6hV{0RNxmA!z_muHvz<=V^KmhJhEh9qc+wx-rJhx6ZKu5Mid;q|vz5kSgs> zXPyRby@|a%_8|izTs4|BB;8Jr1LP{J95i*JvbqxL>R-r+V*=*oISCVimbeA93z#&5 zT(wC<=#Y9*Fk4+vo*RFc5Z-!$3J&YJ za@3Bqm^r^zw$8onz8}B4dBUFFH$PLrEtfWk`vvL)BF^Yx?$oI?l@4_s^Y6*2W2TP{z&dHEOv0bTR&|%3Zsw9fs)yOwq=#Uy*`R-_t~ogb@%{Nr z<+D!l1LDUHWXd3J3$l$>RKLQWIB{l0YqmLu+x8#deW`YwIsA6Oa_oL6(;4wYtv5_UG={ zJ40)Wkz+cKBa_e*Nu90f1M?SVl&Gn{71e3^?@8t^W?i@2*8)n)Ex9g(TX>+_$3Mj8 zXc+OM06-6W&;RG`YS;$^p(pK4mE!54fWto{6w}O(z6Sf!k}r0H(_d#^wSXJkb9u@% zDf?HRY1=^+9ia3QsRU@>@0Qe4kf0Z(;UUd>3-RG@pT<~P>ZF~u4Of>2rM1w9xbNfl z&<=BaUdhXHUKz`Bo&paYcH=@PX-dWEwbXrm; zs>yh(*2=lx(q>?$e*?1Z@Yi%+9mqSRKy~$U8!|tJY74@B{8O@n2Yt_>$S_#B!1Q^L z8m?ZcsgH7=!6j>8#E_Sues4t~@5iiqfx#JUqp>h$Md5)38RMEG!?t6$n*X-L-@m1o z(=B@c6s*ly2)~nJi@41fo;QdPR;#N%w;cGqZydk)!0fI3Z^uEcJg!cGYo=IiE`x2$ zQ;q_q?8s0~?Lf^ef*WI?E4*jrK~`4Gl&reNGg1-en>EFIcs3f&xbbB^TdrxB>4{!b>SJ;@WS@U8H=0!fCMSc^mT#m(;K^6dvptg!W(XuH9;GJooK_rT}c!0 z_TQ0;u+S{=Tscx{8)kVJy|ed?-ASREKn^zYG`GCAQbXoJ#>yj|8xu=+!}qH@r|I+O zUscTFKm7fd)%i$dIo!IV-ry%Wl}#1bvJIv|CT2h?Ec(No-|1qu6f4bar^i=@`j2jT z@)Xm>@e;1OPR5<+cmcOR*sswYdEW18(sHS2zS)XS1LCee7aJnuw06p-DplP3 zgXh}S>i+VbCpOY%bPx6NM7fjM{o+%H90<=HlF;2LOg~Vv^QwCE6~AyT8BhGN-t4SX zSGMAMBJjBW$P52_zpRqiFN1kZZcQn=)65254$_=UK_{3aB8eFbX+*001W!Hp8o@yi z(=S({{$@!dWwIh-C^8m&+nM@FM7w2^;L0P4ne%(}HOwWcv7eUrNSyD&$GuZx8e#`3 z%CvEfi>*02ye;zk_i6E?rEs1Y0&aGg!HkOy>&3mw`l!~rZNgfST1$LSsPSf$yT0Xv z0F%;XVZNN0^z*i9No^#^KgV9ll zjqNbxZ5?W#GJY76d#W-3)racv3Xh(H1Fd8;gU08TY_^&;Dvy~*NCU&6H{EEa@iz(# znBZ=u@SJHSiY@MiwIi7u=IQ$$J!aH11Sv0$)BVxY%gTcOJQBI?54xvOG!b}E3ZF@9 z$mC$JOinmKfv%~wttDRG?|QjWI>@b5gdauI6()M|0c#^uZiGwM?@*dybJt&gV!V-K zTD&l{XA}>+fevTWbo%^Al zC*jxChe>h)!?#eKT;V}e%=`iJEd%=2-{dbEt3N_9cP*7vt|j#lKgbtrgL&!(6>0Ho z@+hizDyfRBb}4q;6sQDSQ)MOp>Odd6`#j`sn2C@XMGl&LCJU$e+JL!!#zqP|?b39{ zcx7rj2hqj=NZr?%-yA?V7=SicOVHI+uSfv?^Q5^79BO2JV%j*H$Asy)JXA39Hcg z`ybtUe?-_^eq3R8=iS6DmRFy=A3eB%^%c%OrkNPqSE4tG~~4PUi(`-sUzxFLY>>xubTSp z(>3NaIey??L3papQ1cU-nO%kJPPo4#^*b?RZ*E8cF28e9(daIB06B%3WvhOR*o!v?qdnF49q75EouIhC4?JDc=j zW}Q}>x#3~YllD)q@L9h7;Z0KR?+fA4f(KdjK;91phxmI-GqhDerLJS0+>%_ehplXm zf%+I+ce@`M(xF%xpDSe3I;Co5Lw*+Y(d}zx_D|WEDAZNePRPrM9$8lH( zBFlVN`Md@Yukm7Tbhgs6c{;QEM-Wef|SI#x57`m69{{ zBdFD3wxZ{L_lr(Fb_wHZJ&~`3ju}}(Gv!{1(sp*#Aq*Mj*^S+(NKzE69}CaY7S0n1 zA&9dC`{af{H|g<*p$YI|@rt*@Q3A%jpxKlysqN}YQ=#f>SC8?zrRS}Jo;P+rmt5X) zRBzIlD1Tydi*jd;_RrV`t=VseKHB9sN$VeK#Etk(++wUw5Yof;(Mf}^t*=|M32=l= z6?@?II^Ut4LB&N+`-CPM6NGnJDQ}z)UjL@;>dAU~-g&u+SmzYD51R&eHi%h+V}w0F z*U8)fxNfbs)C$2V|JxAD|JkA^^=YIk2o3+{|9q=``PYKud2wp&Q8&jc_SUzt0rZxk zXX`>MskvCWEyMKdz3cWDp69LmLqBqtxpg`2r$hQbt!r9e##x*ei)glVK+L6vD`YU7 zRwW4dK)$`qy}f+yX0*t)s&G4=H8W&0Q*^2RqCr7jU>14xC%xuKcoWS6P-!-4H2*fN z8M{~8*IVUDH-EWN1$SO%^%sWH9>UlJ3>s&sPSh^Jn&wi=_gTLzbR0U$KpfO@rW75! zwS4QRf!NOyQo22j6@_Il#`c}lnyZAw5LJEW2s7C-kBgi2y2B#%y2IMtIwG@j!72-vju7>J6~#OQ;NGAlA=TME?U=MDpc;G@9EqgQE4Zdy{_u@ zr>`g=| z$2|1J*T)&wiCp}qIhV?iLCOgM&W76#e=kFi;%AJ0>{gk5bnC4Wj+C@xoOP=*a)Z*p zpqnej znEr7xy=mA(U0W<)o+>?dqr;gFztuX;&Z$}6Ma++RC_h;E8QAHpPfq&#UN^{|nw`ly zFKk&>gWmi$>ocW`wqYfc+VT_Z$u+NBQX<_rOv=SKq(s+~#XPEmuz#h)lpXqIL^gcl z8?y5-D?zNu4dE}gP~8!wFHvX6OP~$|;_M9uhh#D< zcj#ek3tWuCdffR{H{+{e+S6w2v(0`Zos#OgD-*o+=HDFy-0B%Ck(h&ES9xD8Vmg|X zb&MNne)@#Ey5-lL!@EnyBspsi&nIn<)R_$xLu{NI*q?h5)GSl8DIdVtk@7-G7ynAu zM+6kN7CpJy7SxN|QJoh!ME9muZoi2l5cA2KChyJ|ZA*fdaKw#O-Z&^bQh&2BP0IUACE?ko6)goy{PD`@Bnq~3v>FF>Y68R;@ zr@Vh8KXU9^(uULBC3R4z6Vj1wPu`wYJ|vq>VN61z4#)8lh}Sc=@&}*R)+jBaz%o z-%5~XmXA}G>y|mS7tNFDhRwBBC9FcIdPg`Ca;S85ldfZlP7I!H-S}W zY7#x2_vYlec-*6VSsqm!=W|F6rDfC%Lx`19bYjA1a<@j@xUH#@1iZ5)*x`aUDJ{?b zhLR*CE_-EyKOEnTO!JQ~5u$-eb07EJ0V2F<^4dr>pF-gh4L7+1MBHU-ttXWkQWao( zITD`snHjXqGo9@4;MZjhA1-qheISDdYKILw5{p_wz~j3f+`!P2r=PbS;$9A39s11e zQ^E=J)YTSlL6>I@Pad)V)5URk!_a#;rjlZHrNrTFfn|)lyFt19s;qYr5Af$1KMEM? zhRf4gtiB!W`>fPSz=~dTJT4F_`j6m?Z;{k?a~s6xKkzL%(R$^VD$yuO$eqtB4))!h zHE_ym(DqRB`932|t%zqZy~vHrz4N!24ZjuB%XN<5BFUT3Z-yCcJJ|g=X_Z<$2r!JY zT{3yPrR+apQH-xT-CKN8y}!hVf%1_S!lUlimx{)~!HeSF<8$ABK~1a7vvzs3Fi|GMh zHP){eeOgDpDYUMy@jutpGLO;G)8>Qjb7Htl8*CTudYJR4V$c(sjXV~pSbs6m3>%uy zjhm~{j>w;Clgo-7a{P&-4sAxxD5+dZ9@eh*cy4A;Ln1u7DKX*mKwYpOpS(%D_' z);fouCte^>qU%3A!qZ1KbKLS%?jwgn*4n&U+SzW=50b7L#Z2PM1l{ZY^Xr3y8m+P0 zu9#NESu-=pPmjxkN&Wz=ss^Sy00}nvzHVLo`V)jV>Ov>h{`l|Ygi-VPnsSQ&>j{F1 zO}wjm6O7K!w29)g)yYvXZz<79n}Ne8jx7GgDwW6W7hr!={01&t5vqs{bXJtBs<{^APnw+T z&~GY1XN#kQ2liL(Ue{rnIa3^mW@y7q>88L%$Lr>@*Dac~gTa>Uz9HcF`mU#_T{*ge z4*M%PF}w#;;XRDziu}XqADmvAF0QU$oYJ9Tm!6tRK%XWiHLjzbpKfpHe8cJCMBR;+f(xYM&dn z;`@u`-%@a1t)Lbk<9xWn$SM0Y5k9cauLk@?-2d}K;PyF>+q2ADN(LA3fjQ4|qgKbp zbXe~Hmwc(F>6n^>%lWpG|MR?IhS3s)4r~~j^QanAruinr(g(gHkno|gMf(W_e%g<`(P zr4o&wJvxIRFA>@8)z-Y6EDK6YbJLG{)YST!)k3xmldzk-nM;#`MA$AinAen!eWITA zd7x8HR?vx4PO#H+JJ}B@(^}pEvTczI{JYmLN&mG$SBA)Eh3&F3A}$7E##+;feq zokqStsz;Bc7`z+(VqpGDm+r}Q3fZlqQ@L<+$(5)0Dt)y@DBJsTzPY-z`My z8ukP^{7cTOI&OdUAn%$~FOSN@{tZPrzAA@etC7ly|-747{|Lo4O{gu(b$59S*p9&R?6^WT*I+xRRcsJ*r zd29-{+?!3)IxrblL)YYEFzMywxso%w+2F8W?lQBJo7(ivTLauq1^tPeOmh>zdHRc9 zY^Kx0ke+TV^%aGls)cgWJKb8<#FM)!Jm<%ll7UX=@sb$2yGT1np>=D4d?(qsg0t8) z!BwpZX5cyCdE8IJ$OqNFfxRz#_i1CHq3jBNBjYG~7b*uI{>&m?B;?euff_b&8pug} zQD?KlktyS^*OJJQdQ+?;&hjx7(tbJ{Q^_g2H`1dRM%DR+ST<2BU09E~91hky4p*iY zJ54OC2Ua)#5KPMddJetG#fy(0`z2cX@}nEDG07hHU18$dJo%ed9^`8gbLuXbw#0WPz?a$(Sv9c_^v52KLeOhd(kCPtIfi zVZY;_DRu2Gg9%&~s%I7v+PxfRgds9cev#zS(!)r;zUEJ5*XCnv0bo=6QdXw*W=z%) z4?*cp2zbMH1;5%8+|xMLuP8ssgT%;kAqPpe_ncD<_!B*4~t{eHk&mTBkfK&ZcAm zAYSq7F050hmhSO~vyR+k~*zxB>pZ!=#)@W0!3=W4&4@EVGKo&Y8eKEfWJFHPQ zkhxkivDx2(;N#zmJnU0HGD2H@w%dGw#-(+j zQihK?lx>4P-?d$7rGXjfG9mij!2Q_b)$QqBJLf3#$mX2hfRKwmvd-jN9B0o}*rwz= zygK*xcD|lA#`=GB_k)?2D0R9eJroELxqMz~R-M(=Ll*H}9Vr?tQ|(NL~SFSTgLo&$#9!#_0_ zLHi`<+g&QA$5*krUR4TMhVq%HjDI9~KN(;ohGx!%M{6rr#?zr{iii73e?RWUi*z*Q z4J(BINtUk(AE2D1!*YJfrQ`TgLQ6Z$rkNyT3pocbTf*%VcQRJ4n2g+j$7J1-5phFr z+h>F(DqJLT;R&Ib@KB=;d}B3}VIS?`{`IA%2D7=&T}U7o(!#BLCPGs-(;5Bmv4w2r zw^_bcO4TOvrwpnUsClsEj&nzoi!R)_R_QQB=`sF0C@vPBt^Lrl_w3;95w6joQKN7e zI&5ueUOtn!$WlflI+N;6llQkWgx!Q?Iv^_g@K#scRGi~)$Ctd%QX?-_!NQYouUI*}aGsNsYoB4SD-O&N+u!F6JJ8ckm#76QghdxC>p2X+V zl^j%ik5b@vS8%p(#YNBgJjpKQDr?ur7mjsolY_l1Eh)C+q8AssN_?E1yH?vVc%YS5twF%V{HrC($W?1BdZcf--+7udAMZxI-qd&1V z{K@3qt=H>QI?C!k9G&OpV|UZ#bH)Q1gJRw@x<^kE_WJm!5Gx-*YV8k*bC+NFonanb z@$;$bE3(k7wI5kW>l1GA+9c~WHbK=2x|r2}u?|V?HrHqkcgaGb8(kl#w(k;|a>&^q z`m!0Ok#@xh&1y%H<#4aBHtl?AgOjwRA8P_ZQnQ25mBnQ7?4vC-`_pd8h@E_+{7l=+ z&z^b@ZO|n@@vGI4M=R&YNqY^{}snt11ii6 zZ{I#TJVSI&>v{0ZTSL(O)x?`;{V|;y@(3y}3$jvIeKPn?`%yqi9ASPQy@St^9Y1ZE z^5UrNG^3aS^khD|0Y*s1nxn*oDSjBv7Ug!&ykc7E>R?~)a+5(prG`9Wh-eWdQw`_m zJ2idfvr1P7x1gEG6J_vFc<9D0>M~0z&t=x<{hSQCKJi} z(oNFAEj}I|;jA0nyX@MyA{E1JLZ%#5dnps~-A;~bIZKB(J$4{iKhaXH?9-l8M|ix& zSsB~<;;@p*Nua6qZTF`AWz~5li-k(N(Xn{oDG3D%aDBs{3Xy_pyECW6KQB@kf_SUp zL^>~pWcCl~hW=Jmr(kmoDmJmZs(m!4D|{l$fnMB3uBaLh+WLI=TNJ=Ryf;nWJ0j0x z+u^UZpbau1M5)129b9+fKPf}Ku{d0vT%TV3Ejh0$URYWQKEGYId@=jouKHcHQN^t_ z1zA8jpJ>GQMkV?0I=m7V){l9hQHz{Qp&S3Qu7An6j4OH!zL5b9zCmBJFD*F+J2xbm z>1LrS6I;$-(U(sHdX5w*VCRETZJ-G!E?D3Ed7H%6&I^J0a?&cRF# z=1Pewa2bAOZLa7q-FK&_0Yy$db8Jkee2=&!Y)lg1slkurx|Rn`d0z=XAjl9ZSJe2y z($bVT-pfNeR#g60@SLio5Eq~qMI10OYL9PnP`x@v5FWPoL16B@X|+|AVj9pRBlf1> z)Tf!l%<%gLUdCL3#bYEf#e3{&07wKzXL z98?$U`Jw(n+Mp-8g#LdhK0snL2E!E42vP3|$cWm@+sEN7#Lu}4SCU^gTNvNSu5UVob zNil*9DW*JP?iuE6t70K?`0D@$7W$NvGVK8Su5%IQ6i>P89mW*2L8iNP*SQ)e(qF7r zOPwhg=7orHrwP_pK8;bGAyI5R`^@7 zkC<96D{I&Mt=*4Va|e<+!bKrcq_w?MO{UW+YVi{o z^5sbW-hYciw>4pL=>NQv9znH_&2NU~D0toN^IO61&5r$}9xl@kI98nVn^69WJ~30- zU{#g@Er3pE7fP(Cmy&wQ#W)mjt8Jl94GS%co;_7DTMOlC3|tybeXKZFX?YY1L?uc?%387vd+n&`i_`JvnIZ)8Kc;Ipv`Bg#-S)4{ZZ5 z=?0I7oXGgdXStk#;45;8yZk7C|L0}lUz$$}xL}CbeoYdjI5jpnKoNnT${BJXLyGWZ z%wF%)l|OzRK?2V5f0bj8G;)5<_eSz1XNJF6{z}sGZ3nw5_Efg3S9mp=-!U8n$Q)FM zH^7{pw&DsG+ym-OPgeD^Prc-@de@oDb|h~-(hyir6|BS3&$vl=)tqyG3D<`5F0~+g z%ok`o>X{p-t2?$(VY|qM&FSRZYMY4@8)iB(oMLPx+-ZL<0MC+A7( zBcFsugv$-xUUs;CjoLz2z1jS9_1#+ghWa1!#h=+VY)r5vbVW|K)ecwR;wQ!$56iww zrl3^r_o1`P=K`NvdEYfh9Y@=hM(oO_RA8c1mY?vQ#KGx-jdk{;hdF)9%dR?)35Anb z%3(;bnOb(9)gEW8{DXp*jT5SSU*x@Lz(ONs7B__>B$jge-Culk{VHwYRBBeJ(j+pT zvA(zztm2`MZ%xtRU7VpujPk$i1g$R&G%I*KGIg|-+>-GN?5N@BHof7p|Io^=gb?2* zoWZeQ)7UMs=SPg3jo%*iwo5a~!8y;B&D|HjuA3f00(5b$bI=k=hYHKn z?wa)EJ6=7yMx6b)IX@$)#8*NjS7XOz>mIcc6#v{!B4r+b`0|))#>e z#o$g#J*<`qeMNb9^qa}`bS!gr^m7$fbN7RJ0@a{iX>(V~Aaj9_2z+X*YxvhuT@at2 z_V3yD&>65ML%Le_^y55@+L&v*7;ebgU^j$Gyks*ktzag4K$g1|nVWvVQU?_!20jHhcai(|tK-Ee8E$ zM{4h;%Fp;Xj12do94IWyYC{G#-Y>Od&v|0v%Kkqqy-EqU)4l4Ec^~x5!E8W2>&}-2 zRMR7OHS*Rgf{=x9!^^QR{0rk;JN$SKT}l4!DGtUM*SmnB)l}ee?e9RxP=$^!L~8QO z6dhis_yN1zimlg%T(j!T)bN+*g#wJkguqvkzWCp5A$*mt+a z{KfwH1lE_l855tlNSwg&n%LQEL}PZ{9(Au->y}!O0TCK``PF<6XGiNM(kk3%j(J*d z^VE!%`>$oGfN$s4Rn09e@hs8!?p%o$`_kmO&f?l-hl5{_b1H*L0}*tdh^7BfXisyi z7x2Mh8QZLls;|-1v!pDguW*ZX}nWWPRKWr=ut3?tmG% zaG?i=SijOn@5)AWEC<;0KyF14oCsQwonbO-8sDV|$@VB&UczOwfF4wR|3CGD?hd}F zb8tUMUKc-KUGm-#%q=~C4aqHPG;=gsX*&)zUgD2oM+xpCNBYa+<~Y~-1syV4zy)Ba z8-{LI2FtuhmmP);4I7&H6SDU__+bvZaB*eVlR9c1H(o9G1269-h~PgDky{C&?zcC2 z+R>{T?pebG_WZAIcYMVjk~jqEXc|d8dLlR4fIK(-+hP9>rSLd#>4D%0%1P)NGAhq zUWm-X*S0(7Zu>#VWH`|s^r-Mtv|;%zD#~u$v#P_ksnWE4l6}$ddF26?#Qn##q$0%q zL(Xoa%x)3k{NRF{y`2shU9nKE-V=s-IK#=328Jr&`UAA1=0ooH@vnb$sde9x){n?E}@_$Wat_bK$4FW8M*5L$i znmn_0f|{tiSMeubKDQubDx)zJ;U@H-2(lSAEEw~$m!;lpV(v}X8v4^8TY`PPRGw=Z zxb-NsT)P?7EQhYzvIyps%S)u`9sjUV>Eyk@OBxbKz_=Y9wrwrjwa;dlM+K%KgM9_o z#Qm(eS`pK0F4R7eKBBh9oP}2rSNo#!kWKyN;9*GOE`Px#><2xJH_4P+)#bz; zf_)JQUifs^GirboXPGk$nGNA2U{=&@rR~B^(9i$FY}|7(pva8{#MQ9i-wC{``*eC} z`~%?vzZFW?)5;@nwK~R!pxPV-PNAXpnky`kI{tPCy6sTVqq;8GnP5<<8C=zi=@Q=mfb>zLYN3y5Ex%HC2eP?=N4p z$t9dMzYETB+I>^u^mY2bZHEGZw839<)D(d2p;3AcV#rraP!sL*5 z2;b!zofiF~ZmtK3H@*E&wvS54XM=2OlDg+NYa~0s`eX0!pL%&nO*+GX){mS;BwkNcO5fsnfY`LHrx%y zp0`YH^G zKHoga`o-hf`ihvrj^8k3?)rUlGRWNfbjZO5WGCzJDrUDv1xnT##|!5ooGaokMO$V6 zU>pEthRMO+ThARnAs=ySJJu~^seK=cd?N#Vef8Qfy#ZOH(Y;7AwKH;cAg9XfCGFioMGR7%`_hOE}$FT)`Bs&R=y3{rT*4^ni@0A9Z320g=n!E;OB|L3PqRTf5!L z0{}o?3Y6J<<+Ma>Zi0kcr%A`LZb8*d?E{P`BPs>MX?;|>F7F!@;XHYce7kNk>9rFj zj%4QdeNp{;)KmA5qwWu%xsVc-inTm`deb4%G`CnJSz#DzmFZoB$-x^Kq72Sif;oC| zWqDCo0xcKWZ#S<70KoX;$-&;bWOkND*LH=|RQv8mqw2_cHGjFk@f8qrJECcZ+YWXr zIX^jc&mdw5Um@f6Wlrx$-xpVOyNE`#*Lfz42P7|AxuKf8JqQH^ULUpp>9DM`x$HY!$>DDZMzB7-W;ec?a+c_lzzmgdRHGVU@a@O+A1Ns*T_QhHV_!XY@Eq7UAvY#S z`VnWfv71R`Gb{15)T86S$JR|Vzpt*6jlRHWX25qEh93X`pa+t_oIXFqGL~seIlG^f zj(ZD5-E_CS(JVZaKuT2B4ZQkn|~IF(?`LpRx`8vTs#Z z&2%aYEST!z#71ZdW}WO$iGnUfX1Y-;6~&Yl*!^F@zTocDo6&AE6NLpvdj@CvM6E9S zHcgg2R9Am>-qC1}Ixh4%ai18*v(J#f@ot>2DDuYeI1n{*8ZNpgpPFzUv5zcTCkH=D z#pObs)>r@lu;JPEZ(T7f6)t-N6`1kH)EQ;YCn@yn=xdx2wZ|Jz-90!RbM4-ydt>_F zQMqn;*5At}4lHwfp_gvjda(U1Khyu5?Ltr^f&T#j5OZslmDo`J|IG`xV$K17F;Po( z;XiB?01zQ&o-yRGQn?n>$H-bx-SD)kB-pW4l&J5st|s@8tI~0-+Z{T2 z*2e*x8tkQFXkJ!5X)viK3Zfq`88bASt9vHMIrlTch&N_CX@(_4L9^P7$v}r>qMERb z1!Fn!#jS?#5D0&&rR9+26Ily$rAFS1z6%Kw0Las+tW9n&{?=+>*rdb9XjXRROPQ1_ zmG;(ugBJh*)}f0#vI4lcfrP$>xVv{@9-nih!bL>>NJ(f_!>3y8tcikiAnGL_Hk@oExV}n)MwF`GAggsaHgdGb%Bks0ZL5CGV z9@Iv2oEA|AzK~EgHbqr1y(2K(JViqcTb*r(zc1a~Xaycuzi_M*=%y`{L5gnf)^=#J z^-|6d@xif78|P_$Hp{lh_@(uKxd6V>=_RSLSv}ZyHXE|tP3<4v>Jp=TTF?&tD_ZDt z(i$7ggJi8*6_#v60{{^%ce!nL@9&+5U7}PxxNWBtvD_v^7p+X4tr#YG#73D^62*lr zN>XEY)!u|ukKVXJRDdhkSi2axDxr!~V}0V;F8NUcYM$s24GeK97-rwa*hX#mGzV)p z!OKD8>B-i%{6vUmjTN$JMa8^a>YXUrq0FdBuqdR}uWqF;9amF4P!y@r7h{EuiZ6Zu7w^I-Iylvr>AV9=!{UnAb&1gAF zi7M!}M*MG`CirXn4>)~33nD`DbhL`?{O7h1^sd2|-LMhc_?4FUcZsa~cO*_jqNFXX z>AipC`Tx($f@zY|xxuNb;BL@()Pq-ijMA|KsOJtU{Hc&WaI?Qy?MwBsmyUJR^0{pP znz7MuGWQ&P|KdHzhv!hovR*G7>%!B(`Tk=02!g)cz8cS=%f9HW$F`#q)UUaI@7sz1 zkGT4}jNFQlA|fC4FYZ(^DDh~wOdDSIyPxQ>k=oI}=up~s+8eUYH>~ex{gQXMzAimY zWwMcMyE5oJAS5D|DCo#eBJhl*Fs<5~fwY&UZl5r#kJT=&R z8;MqQ<;FGt2fJ>LDED7}+4xpAGpO3~oke_XBXqBJJZG1iFn>y=aA3$wxJfgKw^LDq z>xu{+hY({U>^u(HypRj-Ykp8@z6~m$W~z%cQ;nClU7N?vq>PNI?$%v$%;> zX%E1~jsxo8*FeZ%VddYKRMu;|4(+g zEv-=oVEu=r3-^ks2B_-mf6j}1BW7`RPK2}TSHbWs%sJ^5j4aktCsMW}Iaa$IV@c$v z{zog?6AQh&L73f_0*%%zse}`sRP`O~0^nm=XhbHXEXw8qW=dCZ>p=C+rdx<#n$?_0`hT zFF6JJ2_t6O|9qeOwaS#WyB~fS6sz3z`M@1eq8|)?PQO9_|N5v9jvZpiQW_(UJCreV zV@@y_M@0t!HewuqGV*}@byfGxBq!I(B$h=Axt4&l!@;2l78$cFU%xEBY&l{8fagsQ z?~m$5m7KWEq~i*AigW2LDWbmBNe8FihLUD$E2CI<@eksJV+d*8!*Hlu}y)3v=t+yq&5 zf1|38<+}m^oCA{Z8L@M5QO}hLMfxi;4aA#PKTqTCc0zb{RA=*4e-Th_zXK#4~&BG9H z0drJ6ya(TnsIClilHZhuIkL=Z!>vOe?llANxDQm8oaFS@MkeV2bND^H2VWO^hS{>a z#(Rd*V+l*dH0iE9U4IqU3#}?Yqup}D84fvZwL{H#xD)d@9C5DDUVU=Q$VoD5zK=4pQ z?s%jKpoAb8+(m`M09N}Mb^w|^vP8%Ntq5!W$A9mg*#-3W3}byG6tju1&599fY0awi5_3O>H+>03$H??QhF_DDlD&6*6q|xEwDQ@pA{_^Uk2L99 zYvx$c0Ezg2$QUVb7#PCYG(r0+8;r^5JG05GNg64vNeRU4i6_|_I4wm9MC|V$bSfEO zU~rC0Ps5{;YHv_b|NGyBHM7HgNE&AmF%5uP7A8#G3ym#vr3an=RGxvbMgDZ*8!>aX z*RZny_y(Kd6){;6PGMtSalf|FAxItda)-BUJBhc<+!$h%r(Jxk5L1*80bw;e=SBm3 z{k1QI&?y!95p(-~CS8-hHPC@*%QKer&v(X1P8^2cvOAXZ2l|nuzhNT9azsYHKM6}m zDM|`v0@`n?=btT8?_5sXiK-CUu|XIC=q_|~bsUhZAt(8s z2g@l#Avw2o4xVU9;?>^`|aoM`|Xl^cTUd(0rP(6ce+^Ghq|BI>Q$%w)AsUq)xKUifLDo z;uF&bd~$l`tt+Y(c-!X*bo`Mvlk{SFb;Y*^IS-k$7GLn|ezaegg11gHI^WeZ=r2qA zC8^MhcH_l}?;la*9fFNhU^cn_>-O8tVUD<(*m*7D4Q@B9UxMmGr_6KOOjceU=oMe> ziWq_RHEXCI4@OEVXj*zVFEr^PE(Rhb;vtJTcddtJQl$z`MP`Kw5lKHq+3T9IqftsM z$x1oqhlS7%_iX?CZDH)zE1TE$yMn0nx2y%$r?3yS9WXQsaL~})Hq_4o7z5g?)+MXh z(}mbCZplO*ZUZWR#nw^weGRz9Vl{RC;UGo_8GmD&DDrf2>w=11hm~?4sDB@koW~vJToaR0h zNN10mNCvqt$ zo<)Q_^HWxy_`)X1?fJ9WAd4tmR<}v#mBC&KhcM+MT>H!b?iCi&*z(<}2qM;PU(87K zhwSBScBw0uQ)Bx`XP04;q1rC$Wg}cthCx`LJSenhaw{`NK@MeRIJm>$db>)|isd;< zAl3rG9_x_-IZy$S)fkrLm0rK0){TAu5=^`P74BmwjkhH7P^(FQ=YnW&crp0%a^+J| zz()q6^z|cBzy?!A2z=)92DW=*uc{mS3Ny6grnpDi?O65TR^d6Ek{x4$9HknEK-FQJ4_H zEs}KC>LPp8jF_tlr3HwoKtDEdoDo2409U^%w6XgZ*kTvvt?+iGUCHsU|AV~KJ-jn)g^0= zs_2+9&pZFE29f?l+mx9Xq{#>&yA|=DB<=)pci(PIWYyeuK55?!QnYUW6nfI_c--a~ zSzf!<(!C2pjH=$b51aZwXrJ|Nr)XZJ@))l_Fyu@CG48Z{M^hR-zPGqCZm5j^SvD{X zKD_1aRR7K^Sw(a>Nrs!_SDRZ=dH6!;QsK(!F67`HQE7o_G^<}kS1l$_tV+k!;~%~1 z(~0Hn4g<*6&w{~B+Q(biliuS+PvhtzY7iF>7mYst`*EC!^$u`M;ra?bc^^^j?##uKl?Ih}J!(rH! zEBQd&!=bs$z83yt+%zA{4r6-w0~`oqsk3>QEB$&l^Dl0i*3ZRCKKpTAaLL+4e-*h% zcy=e`F%q>@%i=y+r)|Kp_~f0i-r8GGC$eSFC-&lCBF8$WzCN(YJz^-w`_Z@H!Iz?z zrSJ~;#%ZS2%39Sp(p0$=($1w395&CT$J4ZBVUhwI{WFMd9k)1Ds-zNo{dEVKJ$|GYdXF?n8;6{c15IvD)6@J+X1 z_=9@oM8#Wu^1+wc3G06q{)cM6ZWmsXc6M1zW53_RT%mhwj=v^(rl~W_xr=x z<|_*FI0q<*3HWp^N4Fj(Y4wDJbh!F_Hx19I5D6xZ0I0p_aobFDpf1)SmR`)N{@X1W zZban~t$%#Dwoex_vHz%#=<T;(sncC)y7w(I|N zRkJ^_yuEg$=XJ1AmFYcre0EYsYe#nywSHcv$MWD~zpeM+yk2nr=)X(?^t$JIu1_UL*NoUD*RP$~=dc zZ*sk#v$}}}M$S3#4Icyj^@|>zk$ZuCIrm%sa(J+Z!<-bULD>NxdmEPoB|CffK;+VK z1=slFG4dehNus9Hki~`FCoI$1L>(?DwAoSCvF5h9n|T=-?{H~WqU6d4gZq9L z1-hli5+&@Pbf!UHD|eLEvwxd=>5)`*THH8VKvZrJ^LU7QmIwV@V0z(dn~i?*?BbV@ zbM=!eV@;c5uhkzw-(T?;3Jo(G34=PMR3J13pMLBDKG`myQE-cL}za8dJ6C+xIwoaSKU~tzd zBR=Yn?#tb9sZ|Vc;>S-VZj<}J7cDqjt{or#nXFeH3-P(zuC4XTWmbEc7_QfSzKwaG z6iMGmOi|wMUg>Z6Of66R9dT~`rvVIJ?Gav1dJ9lP>)}<9sgnJWkwwN&{ZVx&a=t7^ zl!gQMjze?>;%c_C>uS4JR%weT9Bd?Z^Xt8>btIDH%5LdMiH!;9D^b8px2>|>B26#)XVYuY_3OEPuAu)t2m*x<>w6aAt294d5jcG>Adg8_u;5L z?I$*O*3dW_EPZFYnp(6Xvbbw_+Fi8<&Vu-&RH#`w8d+ap(yMi_ps};0VE(34ao15bO+;U%^FpM5^$%vI0Xd?H&DMDc zsaZ8Wbgi!|On#%-gdUJ;KwDQ&DhMr>Zx&<%N2@B$_ha|3mNdLIS&> zuy22B){nDW21<_((G@PgXg5)^QUs|m&kpD?3~zL>Sef*pk=^;|nWaZQ{XzvFul|sUAC=R6bSze^NY$F@Y_D0ug8B*36Dgn~tTFJ0swaNWtaIw3 z>n|4`4mnD|@?Gk4gk1TnFjgkJf$q`h$Bzx}UKYP(*u8g!XnwwW-TkUiE zlLmw;j*?3BBKN(dz9e&f>=)$K)u>DBt!d|)2L7v|tpd3%W3Ur1c1122@&m&B@fsoK zsJ4Lck$R@GosW583W)T6sHfiJ8ueHAVY=YVP`cl?{LB=Y^~wG#yf%S$2Z&;cR&Y`;_r zxt7>CqgPO|-|3u|yDARNP6{91`{!0jwcz7#i*%+m*jYJTteFlj16@nQJksUwstaa( zo2rsy`K_utToqb{jrE)HDI(Vl<5?uZ;eH$r(CaL;05X|vGVyX(QRhYX-C{Ofy=sj6 zdYECtDn^Xz4r7t;=7cXs7T|8K+hq6R0f^6!gWq0+OH8!5>Fg($;geh2+uXoitjxBr zr>akOEAsoOj2ckl6buG9wSL&URS~o_ktq%qKC8|7>DN|SQLr&;BxrtbzJPb*kS9vO zWBhcQse3lA-=RHIvAh2r|K9HfV1O2c8m@1wUS>A0*Isp6I30rlhvRg#v2)$)T$x$A zuH8^nOvrLu67xH4O`}Rpn8o@I4mf-x42!hCcAcJ;1bKCETo|B=qwF=Kzi#aMQ1sBA zRP(r0espy~gI`B%*i3}8SQzzh*=sAcT*O&Ni|Vy5*YEL0GD_Wvma+cdPwz+Bqg%Ro zRM(L{3yuJBp66I_R?aSexvZ&IW85w1JG`?N`BEXeIKwQLo>9m#mG(UGA z4y}t2)od?VnQ1F0pu{xzP%ut~{vu`_xj;qQ`t60ES5H8-Zl6*@W1{UzX8n&+c~qH> zemD9axTf*=hAJ8TBN8yZF`w}|*e78Bnwmh=A;TxuK)=WJ%pOSx9}32*(7P%vSdu+B zbp>ZwG8na_R;xemBc2RHLkCn(!&yM!r;9z3wz&Tg4xe0?_%^cyY1f)?p$1h|stiG0 zN)q8MTbIX~?%o=w6EZ&M;?how(@>%Pyd z7U-WAbLsL)O3j<<$>Sc<2{p^jUGcRL7qdVhS|BTsg^xYZzjPrfvrTtP>=(UOyBKCcNYU7wN-jQsOz3s&y z$`JBj`&G2xPWU7`hY*8X@vW}fl8ytS2piY&xXQN-OX3z_Sr|Eeuhw8(M(F_tNy(bCddXgc$;`TC6I zuMehz`f!J5E?OiLdtN#L6inP&lvlLJy6p_PKV=wL=~)A=zxRlgsG#PkQ%)9g#~rbQ z;19t~7IhN-rfV3;$+9}BuO z!f=f}ws|cRh6`BO#QE$!65JLP%{OVPU$HW}7K^{KH7R{yQ24?2>s!K*9XbxD1Z{B% z)fRenoN~*{G(9*HTD+V`L!@%#NvBszt4lswWY%tEcG@Z^c2GQem;NV&=y= z+V85zRxq-gq2CF>RgaE#13|%*k?LCFt;MBL!^nN}EIVgQ%hq!J8TwH@Ju~EX2I}6| z3bwTu+(ooQ2Ma`Aj@B8V^t5*CY0_C72y)xSxuaeguhDHtQ$H-FpU+`-q} zp-3?{GIWEiE1&c99JV8plvbwwtG<1+=q{Sgi0P{BX>BEti*M1O-n$;u=K9&f(xR`f zP}F}v{k~^q0%Y|2bW^eN3i>E_Y-jj%(3M2)>yf5HJrKV{It*(6NM31}JbbC*)n1`t zufII*FPiI97cOm(&-%-$`Yq?izm#Ad%ZUjD*iOqvc;?-|pU#Sr+W5ygu2yODL{xg! zec&?fllVOfuEUp0F(6Tvr=tX_T{^S?nb3_Er}n8M27qJxzuk3wVJbvBgzMiUtwCA) zhvmIQa<{o-3JSx3)ukn`*-MWGBaWvghtGp;rb(ttN9CEm+wTme06J!vP;yPE8V`4U zw$0@^Ku65q&hK-$)5(fJ+|o_L>&p6uk-V?q-ACWuv7hW8=(|ojwuul8KKRYY8MZrJq@eIu#-bU@owC(t)~XJ5q-O3XPMUU z3lNTB5+_#e-WUo)?&J16*iiLoU9ZFJqyqL z+}tzoK+5rp@ySG$ZaG+0920AM5Q;(Ex~I#YoRNr$!kNY!;C7ze(^rFv15C~Dzbn^@ z3qQ1V=A96LP~|oDjvh=2W#Yu%D?OMo4D0E4-i8s@ngHUyp8z3LPK_;G#7fMm4j%*84cm-AV8p;U6A8mH|)7`N&FlR;Ob;wqkS+Fo> z6MMzhd@8efqjK7RkOsP8Zg7K40U6S;|QJkDdO$A|t5(_&4E;b`r!*`n=yl0O){8gcK5Yeo+U zE@?)OJ4Zt}%3rw9?OOx^l z;*Qu``5_RhxZn^7RbGEyK}vxQiwRbiazG1dKRCf3t@J&uo{NF(9B(@Do}$43v9G&% z1L{K1zYWsQu;Blqr5;d z2ik?o>~)55kQ9#*_`;r@a#yDGZYl4~`TpdH!9%A(^)4|XD4`xb;LU3gs{B`|nsEH2 zMf8s$1Bt;bc&94gV|T%C;jIWlhSJNw6iuE>8JZ;9o{+FMK3~H}_uIg7{RL_&-Dc?% zJvcR$l`4@u$J2(lwNcAhtJ~@+b@MS$lnH#&+*qTkWR!r(3P%CZeRyV_=|AAG;;8_e zpenlIPJ3s(&2PD@PZhu!<)CWGBGs&TQ%epAu+|F#E-OE@J-;-7uhBm}uG^(Vzhi0l zP4;)pVl`^)u$kl38_|Yw}d?3zu{qzL_Fs z{v{C=>+2P|EOG4%`x~+wbsVh%g;<=o;ZgTzJ;;75zfGvncEeF|Dc=ddgREtRayzfx zH6RyF$qFsD1(bI!Imc=AG>xy}H8ecDrI=Iv$KR;wy;mY$8uIbTuvH5#6d3ex{o$TU z({0SjFw&2W#z+p(<@2m*yT59)=;jSjz``9<>O4$v(6kV^P=IVpdg^y%r)Bsz z%Ls-5#3L}FD4NnxwH5OEx3^p8ldRV! z+M2n$E}4pkmxBCVYmUc1Tqh^STKyXeq%4xzQd&hpV%_!D5!X9L$1!j-52P$AAQIzQ z0`|CJ#>{K(YA5QG=H2Y{HqT1wIm0U>QI10k=*!2W$DiaZ{G~HWqF1&nmx;juank3S z)y*zl&TbX~95cnD$l>%hPkM*}CRUY@xz=rE=9Rq&3_66(kl+h@xYBk?{4*Aoo*EIw zF++z27?ENT1-vu0aX(**`Yp2f_JSl~QiPUV>?x#X`Ap>OF2>V8TLhxj($ZoUlrVg9 zp!dhT0iUvM`b(d!rIs5{rn@wa?^T6z7A8ezARnb{u_03)F}HGo-xfsYaw z@``XTZP=~exMr1pkrFQYaZ>auN?73HSGj&8`>8y;K|Ax)@rBn-4sqqk9rrl{7g=Wu zAFaRFNq$?$PIAk2%;nih<)C?mho%D$pz1od8C?yR-uTXbYBNt7TDRRSzlfBNS zU6Xx`FlQe>6%Ag0dH93|U?fZf1Kts*wDYn3iKa*`$sq1YO!v7H>a8*94UNBS^*l~* z6XRwnhK>&j!7O%OfD>?m5|D}qB=CvH9?h%*C27*)WCxU3@q3b@n>WBF;?;`ZSv>`g z{dh_d@(>0=xipROweEhXb9tiIKHoJRafp7p5TBzrtC&8zkEFM=za&(T_Tj4?;E{87 z7n$cTP2nmv3^m%g3Z%6aD?s_iHnbs;Zpe~*2X$E62g0)&sHtRyrp8MjFlx!I8Zng8 zOL;!1`dIC=k0Hj|dgVr!rcRJB%mOt%}yp~f~-ey4isH3xUFfIiDI<($ua zWkHlMGacoChi0*|&Nl=pOvnowT3n`tt%L_g~C+2iB@R>O2T|#J#AgIxxJS(WGs*4IyAKF4j z2Jft@BW~`2b4dR0ZV2;%lkx-dQ0$hPLxofcmP93X}!J1rr~ z$3$v!V=PGOVg``G^D3Zxp}2n-p8k~0EY+)f^Gy@5FcIo>{*znY+FI`z!Wn;XAKdcJl zNjl=@7V!j;>H6ED9(f;qH^5h7lJDt)m(}io^#LXC1Hk~^6qdI+;Tc&DFKjgw$36~b zERh`se@9vzl%wRxM?Pk@S=r8Wy$6WDBmkk7Fk~d4 zEn1ko)j&6?X&AS$dFnW<-y42$IOwKM1jy}qE&{jWrOI353@%I#@NzIAh4Rj$|EvDX z>ITYUZcKnCem8GGi@HL9T}{KJ|NfUWpOdsAPlEB%$Vvax>5q!(`e+LPHFLCQwwTbk zGu6zN1MwJozhQ*$-M#zGTvS~6s$VW4`FrYcWDac=dcXl~6S`W8Qa~2VTdL?onr{?O z`zSYSyP}6lN~}eCwzGayW@Y0T;lbt~8dxxS7XWIg&qb%Z6L<;llPC}OU5Q?$g*q%* z*8CImJBv}=N2k$KZ~+=f0CL@*V-aCx{oUK7X@PUT0c7ZmtSp8;y*6+(6 z3Xg8Rd5Aub>o0X{ zoXrhH^)((%4oVeYmB@%W3QPF%0_HFR!2sM|71uFKZVQ<~3Yr?h;YH82W`ie^G%RfG+NcYdk&m0Rk4y(5;#P<7_&p3V)A;~s*OqgK9JPA(~_`+PT?2TWaKLQ!~Lj-x>eX>M$H zP-d;AQIF&GZVIg3A z_GN`E%MD`ySPju&fb?t?vNr3#xfYEutFCrgM6}+*Y51CSkX6D@QF$#gKsru0F92=o zsNp)u9stO%b9R3=mAbzE&;7|n-Sm8)mb#?lv#a)3@W!)MOdhNI`F4@mH-Y~-#^}&s z&z4dJ%>QiPiT@Wb9%sq}08@KsOJkG-q+{=XusNyH<%~y#4+VtVj=uZROTGM_DDF2X zZxPYjDJMNP*|3YBRjSkTP|2NVx~AhHG-}`=(}d}sZn`6Qjo*~nYmy9W@g3=GX!Cr5>zeopO~L~ zC@oKI-V)*60A~ehnt=%^Y5O(4po5|N-4syKa?FoButu>kdU(k}oT_+o$pJFuh3%<= zdTRl!ApLdxe$t}B3f)h=3v(Y*^(aO`~jIdKK;ELN;A#vDsw$;}+g9$C>6*tFg{g z>~r_7V4&#kcn)~p{6NE{BhFn*1+p_HzHTi<*{r*B87H}-AJaq3JebzPoN0ry%vwb$ zdZFs5;1ri*g>ylZXwq~i2O={lissJ_uSLPWrYM=;x<8p1Xu0D)(rzw4iue-#93%N^ zqoguk*ct7jS-U~MXGng=zoy;$_@F?-Fr|ckk?|?Py1v_C5i#1tajl~MW~R9Fj_?*D zwvi}_M!K+Wa!&27QyKFm0)sr5W6uL5#yIq%cEN8aHP7wuc;MLcVu$r0+%JnvsN0fS zVSI@7<6VMgAZHp7wjVnz-pWHrk%R)iwIz5hC)VdK^nJgH4Hs+4P1FC%HefX+_oG?Y zP3+0KKc$G4Y-7E|rM%Ly>k^EOn}{OjA=x&Ms;_lhw)rPpn6(WW3{Yww)4_x`VWygJ zj$~1K5Wum`LKF; zKCd2DJ(za(axRX}lD=z!or;_%K_s`(P@-sC_JdJ0XM5V=aPr%D98^J7i{NHT*z;^j z1Uyd&#(HC!rN8*fwM>qi3-vQM*KO#(?5qGnp!L+r<_cahKfTbY6XotW$G>q+#ji(U zMCTHJsumhho6_1JqpSj~D_Op;WA7uf*>J1x=zlk^{T^K3Y!!<~Us|@66*1F?WGQ&F zA;pS`*f=vB2O3{D=nuga{8^S5pI7>kb{zHGCIjXxX^x9IAIesW9V}?wYrX|WMTs}tsY}RTbcz(LzgHhKbFo;7+P@$>ZttcF&dKzS z*m9w82hA7}lCN*_Z(SdQAom8BLGEO`x~=v~Nser|f&+EYWgg!vuKOm~e#?3p6c|g= z29!<>i!8gUuVS)_K;4kzfMTbP>qqHUo?MGL*4#r zsNIaJky7z}WS+%kedBv;vYPBJQ-4%vAbFp*J6)3O)$$NrYd3dV{D4wd>#vhGSa;3_ zOMUd!pL3Z8OUP1;Bd3BkZpm%xeUG(jIRzUe)=8`z z0Dj4;OjdrmDn>EAGh-AFV8NrF{lfStFJ5UGuVcFik& zyBU?>_pX;|3%4gl2p|q%e&MVl25Cn-K>^jmW^wPJGYJbr*THyz3TxtleDQ2or`g|;_M)MU(ubzKSN0bZc)80-}H_iI(9d*JDm*9 z1e|qU4V-<4NOu!Yi1{bfCk3W{p^q>Yr_QWPJt0<99#&5l)(_e2`Bpsa(r3WOB?uCC z8Ep?CmrSg7Es6zYjQY1`tuDtD^@>C1IbMH;K&XsqhI?`se^)EZu+woM)4J-y@-b_- zNWQ#LU;O?k6A)GJ+TS&Rx5C50*G8%t)2l<%OKDq&7h3wN&EsC87P?n`WuKFWMEvzH zGGq32dIkjcqFhp<-S`ihe?P0Uy}j`0c-#KyTc>0?)g0}5Xj2BI9FJW-91BMugAy=^ zpTNZ0w*u&~j>0yb9$LvWV-DT8Pg(-do~1>gPfB%^hjErBc#OUDvzz10QaWrx4|O6< z_}ye%H5t6XhnG@?cAaZ6eY`1c5p*0D3Cc@#I^mwQR1o|0>Y7{8x_Xx*XI#mO&*sCP zvf<=$c8RTL@PD$r2|*0fK?|a|1CXo_FgCU&i%Q}fTZ;^3&Bb*jD6gr1$x_mP7vsoH zqx198tdiS?+u(ba93;E82Fkko(xF+*xkqBe7;k`j8ZdA_Rvpj9sL^mQAzeOJhHbtn zx%8Uhr0+8io^Qbs)~$H%u6YX?GI9bVtSUlYN-(+QKn1}1X7%>&U9l?nwA8Hx4A=G; z=sUa9k`E)gyA!_pnRt_H+d(jD$-UEi0YQn`wbMVr@GeFR8FRzNgrX#ta?t3TBJkNX zFh3!{GjA6IYAS=p*U|cSaBW$O>SQv3eI@5=BLa+(=kM$nZw}}6_CKNk0!By{nkkp- z)|T4&7R9}#QU7uJe-76Or1y@(MJZ4!o5g_rc&kSAB3CnSiHxvs9~K=)?9JdwF$eer zHS1RCs=lXVk}xG*@KuVCJ<@L6@w~CM&|_eX-WS!Ed@*a^EU>%@%=(+LDm-zsYz^5B zwS_1A10Q~%%W=saR!WNBp9jyV6nE%lg7-ti-!w=#DM(4`?I`a}jxfu)h?Z!)iGL9Y z1{7lBzR!yE16}r7SPT@{piyjgyovhd09fYPVrJZlA7Q+g$Rv+ofn(+67ZI%g2 zfW}T4Ob@b^s^H4wO=L?eBDd|dSmgr4GJf+cm)wXbxN$@9OqtUIUj+=5 zbFthJb#BtJY;AY&66P&ZV<%R8ypkM%Kk>M!w71!8Zn}Kj=mK{dLZ9_bj4ce?AQS%` zT8}%YCZ5)%MuBd=%q!3C7HBe;5ta2xU<)703z@T9Cy_#X*&ZR9s&iY^rf3wo7Hinr z%0t^w9A!@p$oI#P%i@aZ!bdzx2O4sF+?-^%>lucMBtPv+B>YZzZ^^TfZl2;;9OL`E zR!@{(SCi$vn<*f+Y4wzdv5=Zs*erX>Qqj{ck=VOznxM9zDG(*Tb2||4BQFxzA;JYk zwyf3>_6@QfeG6LSd}tk4_?dFu-Dgj}=%B6da6Hox+B!6RK0wek`6inAm}JJh zz44=NG=I+cg$;e1HiB&4e3JHR{=s%B!sNxe-HD%`%1nV6`Alo$q59EDb&H#q6QtaP zVlvU;^WQHNEZw|-IW^G?EdB2LI(~EN;-H4`MN&Yi0;(QiIJ!ke5|$c+bI4!KmBkBB z)7wclvO0YJtNyfwhlc&llUJlM58}oH?Q)}9Ak&srJ`uwlLaWxX$5lalfcWtW#n})> zf7+DQV>Od8tp-_53^BeqMHO=3%XgQUPReECF%^ODjl{2ZvHSfj^$9=4Y}KYo_=heP znlmkDJ}7kwk;H%H)4gC~JLE6_e%^Ef%+RUN~41rRq6Nm8LA zU~uvMWJb#c0~~|^NjZzmXsvqwrn-2VQ{ShPkULd^+uwW6Ur! z1IbC7IB1loFJ~I>Q;C6MXs=+(M;_{qnWU=S-4!Z*RXjjRYE{#9iS-+rh8;m|#_SPG z?mMXi=(xn?85v3mUGYv6khO~^vfS#SHjAIXG;J;SRrN4m%yw-W=R@mpp2$hEb#UrJ z$C7(o`p0gc*e`5MoSUoALELl_CKW6!o`&dU791wGII;>V1PmXCR&cE< zA`$gV?}?!IuRD4L;LQ2RdURv$6>?g!c;z(#?)pFY--&=eQV5P0(jlo21>eCgwo2G$^>q2UOA6>`KIkUrbx z%#-h$|7WWQ1f5;g>ipDIDxkUwI zVMBQ#0BJ$`qh0{~s$imh;Ao5V3hPu(Rm5jYN{cNA&j%yDGhMf> z1e^ZM+KlMzJtQQcvI>H2>Y`i-72R`Q1|6k3Zh1{(5z?>QoDPx&ilbtNKLm` z{K@8nJC35Qj;PZ;*KAV+@!ybw6l?05tgwa`KzW|QPtSP2)yH(THS+0E_${)eOD`S` z7BAez*I`5B=WX)LBClEFA5w5G*&LpN@|uA51=8L1iA2UZ3yHUeTuaa3ACL}xzPMhJ z)|T!(<0Bq)TQ;Cw$SfrN1II!9!5wDZGl|Fo-?y*jJ6=q6B&p_I@S}SPb2c@GD3T7bk#)e|W3zT%i>eQ-oW$3!G^L`^!w#UsS`ZsL|9N#Yp1oH?^plz2Be=pyq4~`L-$OG zvJ}^!4xFgdvkrXbZEC2aUq*xDALcmW{`a*MGUj&3?&2F3SiZ^xg2iwfs2nZqe;^Rg q()5(V@H2j13eFXNIU`V%eiQ>!wChIU9eF*&>z`#*q@j|=f&T|l7uwwb literal 0 HcmV?d00001