From 675dc31e256138e3ab119e55e2e40bab816c97b0 Mon Sep 17 00:00:00 2001 From: Deon George Date: Tue, 11 Sep 2018 23:10:04 +1000 Subject: [PATCH] Instructions for Docker and Raspian --- source/_posts/docker.md | 43 +++++++++++++++++++++++++++++ source/_posts/mbse.md | 54 +++++++++++++++++++++++++++++++++++++ source/_posts/mysticbbs.md | 3 ++- source/_posts/raspian.md | 34 +++++++++++++++++++++++ source/about/index.md | 28 +++++++++++++++---- source/images/docker.png | Bin 0 -> 17530 bytes source/images/mbse.png | Bin 0 -> 5781 bytes source/images/raspian.jpg | Bin 0 -> 29511 bytes themes/hueman/_config.yml | 2 +- 9 files changed, 157 insertions(+), 7 deletions(-) create mode 100644 source/_posts/docker.md create mode 100644 source/_posts/mbse.md create mode 100644 source/_posts/raspian.md create mode 100644 source/images/docker.png create mode 100644 source/images/mbse.png create mode 100644 source/images/raspian.jpg diff --git a/source/_posts/docker.md b/source/_posts/docker.md new file mode 100644 index 0000000..b643a7a --- /dev/null +++ b/source/_posts/docker.md @@ -0,0 +1,43 @@ +--- +title: Installing Docker on a Pi +date: 2018-09-02 22:43:01 +thumbnail: /images/docker.png +comments: false +tags: + - Setup +categories: + - Install + - Docker +--- +## Intro +Installing Docker on a Pi is super easy also. + +First make sure your Raspian is up to date +``` +sudo apt-get update +sudo apt-get upgrade +``` + +Then, all you need to do is run this. + +``` +curl -sSL https://get.docker.com | sudo sh +``` + +And voila, docker is installed: + +```bash +pi@raspian:~$ docker info +Containers: 0 + Running: 0 + Paused: 0 + Stopped: 0 +Images: 0 +Server Version: 18.06.1-ce +Storage Driver: overlay2 + Backing Filesystem: extfs + Supports d_type: true + Native Overlay Diff: true +``` + +Now, you can run [my Mystic BBS](/2018/09/01/mysticbbs/) image or [my MBSE BBS](/2018/09/04/mbse) image. diff --git a/source/_posts/mbse.md b/source/_posts/mbse.md new file mode 100644 index 0000000..00e5ffa --- /dev/null +++ b/source/_posts/mbse.md @@ -0,0 +1,54 @@ +--- +title: Installing MBSE BBS in Docker +date: 2018-09-04 13:07:50 +thumbnail: /images/mbse.png +categories: +- Docker +- MBSE BBS +tags: +- Docker +- BBS +--- +The following is the instructions on how to install [MBSE BBS](http://sourceforge.net/projects/mbsebbs) in a Docker Container. These instructions have been compiled using Docker on a Raspberry Pi. I'll provide instructions in another post on how to get Docker installed. + +My image is available in my Docker Registry and can be obtained by using `docker pull registry.leenooks.net/leenooks/mbse:1.0.7.8`. You can use this image to run a container using `docker run`, or you can use it in a *swarm*, if you have multiple hosts. I actually use Docker Swarm myself. + +**NOTE**: Its important that you separate "data" from the "application" and provide a persistent storage path for your container (otherwise if you recreate your container, you'll loose your data!). On my setup my container persistent storage is storage in `/srv/docker/[CONTAINER]/data`. In the parent path (/srv/docker/[CONTAINER]) I keep my scripts and tools for managing the container and starting it - and since I use Docker Swarm, that is where my `.yml` file is. + +## Preparation +1. Download your favourite Linux OS and install +2. Install Docker +3. Pull the MBSE container with + + ``` + docker pull registry.leenooks.net/leenooks/mbse:1.0.7.8 + ``` + +4. Create your persistent storage destination + + ``` + mkdir -p /srv/docker/mbse/data + ``` +## Starting +5. Start your container with + + ``` + docker run -d --rm -p 10023:23 -v /srv/docker/mbse/data:/opt/mbse/data --name=mbse leenooks/mbse:1.0.7.8 + ``` + The first time the container starts, it will create sub directories and fill your data directory. + + The options on this command line are: + +
OptionReason
-dRun the container in the background
-pPort mapping from the host:container. So using 10023:23 will mean any incoming connections on the *host* to port 10023 will be sent to the *container* on port 23. This will enable you to telnet into your MBSE.
-rmMeans the container will be destroyed when it is stopped. (No problem if *-v* is used below.
-vVolume mapping from the host:container. A value of /srv/docker/mbse/data:/opt/mbse/data means that any data in the *container* written to /opt/mbse/data, will be stored on the *host* /srv/docker/mbse/data.
+ + There are other options you may prefer to use, for example, instead of `--rm`, you may want to use `--restart=always`. + +## Configuration +6. Now your container is running, jump into it and start configuring. + + ``` + docker exec -itu mbse mbse /bin/bash + bin/mbsetup + ``` + +If you need any help, [login](/2018/08/31/chinwag/) to my BBS and send me a message, or if you use another BBS, or a Sysop of a BBS and connected to one of the networks I'm connected to, you can send me a Netmail. See the list of [networks](/networks) that I'm already connected to. diff --git a/source/_posts/mysticbbs.md b/source/_posts/mysticbbs.md index 59386d4..5e659d7 100644 --- a/source/_posts/mysticbbs.md +++ b/source/_posts/mysticbbs.md @@ -7,6 +7,7 @@ categories: - MysticBBS tags: - Docker +- BBS date: 2018-09-01 12:00:00 --- [Mystic BBS](http://mysticbbs.com) is great software to get up and running and get (back) into the BBS scene. @@ -18,7 +19,7 @@ If you would like to get up and running quickly, I've created some Docker Images There are two images:
NameInformation
armv7lThis image is a clean installation of Mystic BBS as provided by the upstream developer. It does have the pre-requisites so that spell is enabled and cryptlib is also installed so that you can use SSH based connections.
armv7l-extrasThis image extends the base image and provides some doors and utilities.
x86_64Just like the image above, however, this is for Intel Linux platforms.
x86_64-extrasThis image extends the base image and provides some doors and utilities.
-To get the images, just install docker onto your linux platform, and then do +To get the images, just install docker onto your Linux platform, and then do `docker pull registry.leenooks.net/leenooks/mysticbbs:1.12a39-[TAG ABOVE]` diff --git a/source/_posts/raspian.md b/source/_posts/raspian.md new file mode 100644 index 0000000..a0d8b3d --- /dev/null +++ b/source/_posts/raspian.md @@ -0,0 +1,34 @@ +--- +title: Installing Raspian on a Pi +date: 2018-09-01 22:26:46 +thumbnail: /images/raspian.jpg +comments: false +tags: + - Setup +categories: + - Install + - Raspian +--- +## Intro +Installing Raspbian on a Pi is super easy. First get hold of [Raspbian](https://www.raspberrypi.org/downloads/raspbian). I use the “Stretch-Lite” version, as it is smaller and I don't need a GUI. + +You’ll need to use a tool to write the image to an SD card. If you have Linux - you can use Linux's dd command. If you use Windows or a Mac, (or you want a GUI for Linux), you can use [etcher](https://etcher.io/). + +### You have two options: + +1. Basic + + A basic install means that you install Raspbian and it consumes the complete capacity of your SD card. This is by far the easiest and less complex setup. + + The image itself as about 1.5G, and when you install it on a (larger) SD card, when Raspbian first boots, it will automatically re-partition the SD card so that the root partition consumes the remaining capacity of the SD card and reboot. On the subsequent reboot it will automatically resize that file system so that it now consumes that remaining capacity. + + +2. Advanced + + An advanced install means that you want to control your file system layout and potentially use more mount points and/or some block devices. I went through this process because I wanted to install [glusterFS](https://www.gluster.org/) on my Pi(s) so that I can share a replicated file system with more than 1 Pi. I needed this because I wanted to use [Docker Swarm](https://docs.docker.com/engine/swarm/) (where your docker containers can float between Pis) and glusterFS provides the consistent persistent storage for those containers. And since glusterFS provides redundancy options, it means I can take a Pi offline (or in case it dies) and my BBS will start on another Pi. + + To do this install, I modified the Raspbian image, so that it wouldn't resize the root file system after a reboot. + + You can achieve this by removing `init=/usr/lib/raspi-config/init_resize.sh` in cmdline.txt (on the boot partition) - it should be at the end of the line. + +Now you can setup [Mystic BBS](http://www.mysticbbs.com/), [MBSE BBS](http://sourceforge.net/projects/mbsebbs) or your favourite BBS software, or follow [my Docker installation](/2018/09/02/docker) if you want to run your BBS’s in docker. diff --git a/source/about/index.md b/source/about/index.md index e1de0f8..fe6b7ee 100644 --- a/source/about/index.md +++ b/source/about/index.md @@ -2,12 +2,30 @@ title: Chinwag BBS date: 2018-08-30 21:27:43 --- -In the early 1990's I ran a two line BBS based from St Kilda, Vic Australia called Doofus BBS. It had FidoNet node 3:632/509. +## About Me -As the Internet came around, BBS's last popularity and I grew up, got busy working, living and parenting. +I started BBSing in the late 80’s early 90s and run a BBS myself out of my home in St Kilda, Australia. While I only had one phone line, it was often quite busy with folks logging on mainly to exchange software. Shareware and Public Domain software was very popular and BBSes were the places to get it. -I recently discovered my old BBS backup disks, and wanted to see if I could bring it back online. While I haven't got there yet, I discovered a huge resurgence of BBS's and thought I'd have a play with that Software once more. +My computer shared the phone line with my voice callers, and if anybody wanted to ring me (voice), they had to let the phone ring twice, hang up and ring again. My BBS was programmed to ignore the second call within 10s and if I wasn't there my answering machine would get it. It was great, no telemarketing calls in those days! -So, today my BBS "Chinwag" is running on a Raspberry Pi in a Docker Container. +I did join FidoNet (3:632/509) and my friends were impressed that they could write a message, and another person anywhere in the world would reply within a few days. I also became a network hub for another network that I cannot remember now - and I recall my computer calling a Sydney BBS at 2am every morning to exchange echomail and netmail. Ahh, the phone bills just to be a sysop. -If you would like to take a look and be a user, you are welcome! If you need any help bringing your own BBS online, [login](/2018/08/31/chinwag/) to mine and send me a message. +How things have changed…. + +## About Chinwag + +I recently discovered my BBS backups from those days and I was (and still am) keen to see if I can get it running again. + +In the meantime, I did a quick google around for BBS software and BBSes in general and was amazed to see the number of people still running BBSes. Reading through the echomail recently, it is also amazing to see the number of folks coming back and setting up a BBS - some for old time sake, some to connect with friends in an environment that is not affected by hackers and SPAM. + +Running a BBS is fairly easy to do these days - no need to worry about modems, fossil drivers etc, and if you get stuck a forum or email gets you help. In fact you can log into somebody else’s BBS to get help, since they are now reachable via telnet (and no phone costs). There is an abundance of software out there and many people are eager to help. + +### Raspberry Pi + +As such my Raspberry Pi that was sitting in my office gathering dust has been powered up and is now running Chinwag. Its probably more powerful than the computer that I had in the 90's! + +I've installed Raspbian, Docker and both Mystic BBS and MBSE BBS. MBSE is my main mail hub, I like it because its written in C and operates more like a Linux BBS application. (I’m a long time Linuxer.) I also like Mystic BBS, the UI is really easy to use, it has nicer navigation and a better editor (IMHO). As I'm still re-learning the art of BBSing, I'll explore other modern legacy(!) BBS software. + +The cost of a Raspberry Pi is about AUD $70 (Pi, Case and SD card) and makes a perfect BBS. + +Your welcome to [login](/2018/08/31/chinwag) and have a play, and even send a message or few. And if you are interested in setting up a similar system, you can follow my posts on how to get started. First, you need to install [Raspbian](/2018/09/01/raspian). diff --git a/source/images/docker.png b/source/images/docker.png new file mode 100644 index 0000000000000000000000000000000000000000..45bd33c5aa0d242499f39e6967cabe22690d0700 GIT binary patch literal 17530 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 literal 0 HcmV?d00001 diff --git a/source/images/raspian.jpg b/source/images/raspian.jpg new file mode 100644 index 0000000000000000000000000000000000000000..aee2c8f567b0d589f3b94dd3dd087d858e3958d6 GIT binary patch literal 29511 zcmcG#2UwHcwk{ev2#EAflp;tK=`|wKg$U9Sq9RfvAR^L20@9Q!ARr(_DS}i%dJDaZ zND-tHigZY*ffR23wfDczTI=p}&b{|JcaV`epJehSA}C4Hh7xmDTDX)%Hk zRe1FL6~hHCZXRAfv8&<|*CZ8{lvPyK)OBy`=^Gdt8Q-(CvbM3cvv+>%^2F86-NW~V z-%J01z@YGm$f)SoZ(@>D-le9czt70b&C4(NTv+s_xawPVO>JF$Lt{s0S9ecuU;n`9 z*!ZuB$=_4c=%wYA)jw1{!K1cvRstZ)Kt`T zf5}Bb>HnADtkg7D$OSG@MYI_9FVX%X z+5a=aUj2WP?7sy2A9BqAbODtAASy~qDjF&(DjHfEGSSl0{zdc`=>I_%{*##gK^Olb zmj9x2@oylEnsr^Bl4ykJZqVj=OG4$EamH3*)~6ZP&HfxU*et+U5^Ajw1*z};z3uBz_(RL0V& z$Db6-hf~30=K!&j+9qHn{OUR2RTNBkwAsKjfBofTW^Gn;Y!+_mcg#nDKto(0gDP(u z&)U`cL^edb5kcIGPmVsoc%OJCH8&_&6=DdvKDi>ssku#@VL0?hXTq8fSEXdX1)VlI zV5;^(?rH*%ZT zH~GTShgEz7Gk)yJ*SSur4GHv}R^ZZLdTt~<-^a6}9t-f$ff1YmIHtGP4T;Y5js=JL z$-JBxcHGa)@N|89d*49zWp(gZpeXBpN}Nqla<6c-K2zZ*I$>0r%su-FzuqWE4^qf2 z6SppNrLHn5(Fe(_Cds#68Bx_j$C{b3_+?;cT0HF9Qc0i8vKrR`X!`PUUApWd-57_j zNVvk8jFsghOhEOTr)7!}>T3C99(bJeZoQ&UE*gokU}3Xseu-pAoVl5PpHkgoEI36RzS~E+o=zC24KkuX%S4XlMlA@4<-+l_c$%0;7CvA{+jgeZao= z?`s_oStm@-tU1rR<@af=_Z@vC9NJ6dhFcnQ<>FaG{l ztgHe>Q`!K2ip)~$v78+^{1W&TiD%sc7u$1|ukP|8gem@@Z(%N;?)!EK2Rnohc9X37 zp)l2-hw=WTOTV-1ewFS{|7gEx%^zA>qBN*tPXFA}ANKfxKw{s*YZSYtC)S~hEg-#D z{X=H_%wzq+)fj5=T|J&tbNGjxl^i#(-o1HX08PddzmW3B*%zc5PgW=TwVG$9HlB>t z&4BpM0gE4< z`||GM+0#Y>Ioscjl=Nd_k<%Y!+5?}M8vI^8vvh@1!GG;t27wmL2#7Lk-1WA3aNu-!^x@ywD>EQhX1UOP}& zaSuQwb>tWK(ttA^@JWcm75Fr~XQ9UQ9MJt*iG>bk)LM5Ah{*jFk(N+&1@G9pkagkW znDBMA3$&Ku3CtlgpP}kczA+$88WL7nGkEf-YR1v2E%cg~0yzoarsf?tCZ8?*28-1U zHN6o@yDG81)#vi?75x$CVR;7Lj$k?J{o)+JYBwht5cBi(t~a17D7z|7(y8rwvSB^N z6UU0W%PH*~1+%2!<-NR=u4VC<{#71*gtH5`7jh16-+kzgNBykf+~?jtz&i$rFF$2< zOJ7x#<18i|-$3=N3EEHnP)WeUF}w0ZAp!JSl8GzZ_{%*m?=v3CkI!Ch1Py6rhVcC) ztA5gQB!~G;^6&6}gn{QH|1+I$!-C!%g6P&&=0&lB)3zJaFi+_*!)L|C3b>Tt7mYrS zrd~5MzGUNlJ8kD!7RuL?_0heKucy*iFgrC@F~wAh+HgeQL_r9^iOa%U!GGJQcV~EM zGGj<~(wdj!tnH#KJPm;J0-Vt!>UGwKCkMp^3XxRsv z$}!a>Y|bgrn8^LDs%C6w>04!_%ntf)QZHY`ZS$X!aR9mplD{022tM5iL#C7KMH5`` z4y2wS>3PlG#sJLQ8_x=3OurMNzSX(m{RhBj=$f&{a~UfgcXJ~yf{wR*Opo{$;p%u% z(NL4u^LanPA1u8MZ<5fvt`wx}EP9HW7Ci zcX$?4;)hp*F*M&w7or(8)be>66L@l;@3>e(vmPt^2zjIH$2nj*{S+y=g{XvVFPB|` z;PfKHkxSL}nIfm&QfD?1xC#Ix)`?)z=N8J!-g_+rz`eZfdM+pgqS5l)dhyRQr1`^+a zJa1!fry-b0viI}VJ3V6tEn%Ym1|Ji=!d$en@{sylIHI27Hq1Z}LreAgdLnaNVsk5R zMU33wVB^%;6!KT{SC?6hv6B7C;~T_sv0sm?a0b|0n3g|WGIDn_8s1;znzz=10DThY z*8_VH7CJ+2h!3-_?e(*o74_ouo=~~FqZC9FR{!sTmTn2Q}G;&B40RJ1pFeBM^uVts!Ix2;yU)GAj$Xr8v&x0%a;d|TMATlP+v>^PR*(B=y} z9xgJBh!QEj)$Hy4(_abCfLS}fixa^t{ZK7!*1Gs5Ak?b~W$q)Dv&N(>_fy6nL`x7{ z0@L7RXN<9?-QS$TlRTYy5(a);zy9{7Hr9$tEKBTtic_V%D1ri)x^(QG^=Q+gz#;k7 zOY?AdrMVUXlx52k3WO$=q@ea zXtwlu&zHcSXf@ei{^jTn$)VW}Eq4jW-^HE7g|&K@2`_xGDi)*jisccDpU7JSY8y4k zPwB#cbm5-s4md7eN`uzBCgGbI8@dvD4mM>qOo8Ycd}h?qAVq zyw%LG?1?}R$5s#X;T}2D<`vu#(1r^vSB#7_0l&COW2_tt!*vtg@dZ6?l}O~6=niFNdPZH1WEJf03Od~PE30%&^;Xh zb&??t<|1=6IMp(KsM9UUZ>4PLY&~0JHc=e6wb?7L?QAW`2lpTv$5+tWL zZ`98LiE?(Y$9HYp%FY4OJ1MJ?boe6LkbUS-QSLX;cpUA8G`@)IhgP4clO2<-bsXzD z&jHbJSsZf71aSc;+rGC~s2PbCxwF_DKVs>BwHD3>6UF-XK)7dc1|8P;mFIj*FX{Sg zqd|(vLTxVvjTUY8*4jZ~a7LUU`o&L}JWGb31an~UWucJoIi6*}ZAxf?ata#?@T z8NcE>#(8W;19+5HN}?Rb#qwu9a*6Hz<(suP)-RL1f0I`IFAu^YksAZ}pD{gM89bOY zv+(T^>?YEi#_~domLZw@BXpV%IbXoiD$}Q z*Se@-(__VS4gjmVzJ7LEPMP*F629__2(%=OHIi*CCc(1tlZ&7sZPKp7p$duN2%AKZ zS}sY9v>)o3lk1vF`!0X#jEaY^A0FIwCawzA;Eg^^?r#+8Eg|V~C^M*udzsP}W0rea zo}{(8yp*V_ApB{$mQKZnH~Jh9D?{*GYyo!H_C0bmn^wzI=5bpQVbkxdG@vm&;&dbN zpBZ7wq_wrvyrb)6T-+T_(}qd&iKOJIzf9rqpV0pSqjX?d-VoH#GHOTO?3>nSR>>h7 z<&SOO!liG1WS*8<3t>O5B7SJrEs=dw5O5AK&fGWHA7Sn&Kc1_jH>2|1*l}uFLJ0lwk9D$}h=K#ZoROh(0&x}I8Ipgoh@o{+!2FySjhkQE+#2@MA;-J0iE_1s# zZJUp*L%v%+oz>q?nwf4{wR6<{#8i5Ne&v#zsaB{Thxr}K7|Dp~&)MG3YEvBb1cpz{ zKhT11nz>2Jdp{y_a@^~@ewCNAZL2z*P;5{AtB!0}!v1%;0PuYLU+qTj+qY`s9AWR` z!rz8SP^~1+NG;3sb^s&DD9yuJVpf;X<&B6-{T){g;eKyO<>xvE#dq7E7j>3f4 zB*EqjxOkHtz~?^u?ZFGGuT)P#s!`ALT*!&+2bOo{ikx> zQ~uCa+!YMC14-2^$Pxup<4OB-Q|K5Q$~I@3V3+73$QeYjm*O<2$7ygnnDN94o4OX$ zH8k+t-*fjb%@WYj8ieNVcs3GH;q=-m)UdjaNNhg`gkCi~%Y3P^ zKU=~cS6uY)+JJ9}a26tLcid(b8AHz23)G)l^mD&z7L)nz9GQ0P6042Bq(;Cxnfsgr zXfESQce1=$+FPyd>U2&ca>u^?t$sr6 zcmtS3Ev^@Xw8NyQl@*mfSp)n2l10eNLWUWx98(Taf2L$+dR6 zSs|&j^2_X*1OTxHE+F2ykT6|Z>+|~X9Ke>l`4w=T>W=Y`yba09v+D&SXT$5=-J|gy zr!qGA>6%(r@6w0t2pRj1aB|MyuJIA${kj#1E4(>T-J~(NqhVq4%Iivk_4V1?#nG}X z6nWkSa6=m~8pRh-(Y^(5<^Cl;2C7DLozT)sJdV5m?1mc81A391*3X}1zmpQN{1G0m zftDB!kLO19H8L;0*~|=_0~C%_$WXZHF>f_Xq7Yx*lyClh2Zv2z`M910=ITP=+{4wB zb(>L?QMI6QuUVD%_ImUC@|ED+?1+@?y|5W+Bkh&RS1`qKx*cY`!p3Mosg%i5h^&dj zXQ#0%Zg=uV!aw?~Lq}RK1|(Ww$vLCso>Rw`^22QgVC8C{R)&_+mdYs~aKK-qVkPk@A-36waAE}rFa$-rjb?c{} z-A)a4l5Y2<@kb0aT`@X5M&>r+p9z!ea{+WadRWE|B$GBxKt*@XjnR9MG3(#<=YS`D z6ed#@f)Ao-hi~qyzY1nb>MLg&qY$v>`^;xH;N!97=LfC0c`RGFyWI4X;Eolx-Kb?V zEp@-^!6)Em|MYh0PklPsd%znM;}w^E<9wYo&~gclHr;{`31Y?bbuk9vMq@AqkHx_( znPCxd#*K!%9U@ZCMdH=^*H%$H1U)RJE_Y}FR`Ga3>rG5@Rh@jl6 zRZqRCIW<4i?Nj(*2>5Gffa!a@fNr*-IN0w;#r%AU>)PiE-9v|7bp;PNTm9(Ov9i6I zp~sBO%F`05@8=zXvYfAzK9pSQj=D}8bb%D6$@<9@ji6Z<;;nx_Ym)DNTeGG>XH$5<#zg0DzoB&$33gw@1FIb zK2<`X=t+9Zf$Pr;onT{GO*Pw%q7|n|g?RL~zMT~s3*k!C&vf4&vsdiS7Z-Gg_QADa zI^K~e`exJR*FMK(+T*cz^>rFDBJN@rPU1eJbfje4EW00FLl>3&@YD;cbHO1cNh6@@ zy*RqKtVKkd)Yb83i|<#O8*d-bl%O!;n7#Xi?+cQ_AC@C9iQ89}Asj~M00x^Lu%J`? zOY4hVqt(cJTeA#D1a^qsTrS(M_QR{H@{aFgWj zy2i?6ML=SgdbNFoHXo*%b=G67cTMAtVbnBJ>VasR=A2kxZ_G|ZB z1>zp$o|*i^!5RF6MIM9QXZZo{<7Nqr#BW~#!u%>`=sRgYVQFIRsY-zojQEf_1| zeakWgT1b2k@)&~j=7=UhCnpx?icjKS9uVxwf>UC=gHM*~!9C3tyEXaq;{&Vv6 z-^~%{zy8HDQ?2by-|L$GD{|$J1u}A(I&@9PC%mD4bCRnbkt^=Ae#@(U`x!KN*&tB{ zehGGYve`Zwy75w9Lr*-d{+V!C;MPIva4qy_vktli)Pw0zb>L0k-u;$6Ve!u5`>^?t9Ht;Ile*QhAU#+Mpw+b}6l5A}-2CCvJDA_m% z2oY3-!t)(ACnuA6IA*c&L$5PTci%?NDMO=&uXH$Ic~6QW(RqX z+2ymhpv*{gw!}Fgq~~V{$Jyitj%UMOCh=f-g8_-g&gw`8_z@(EROU^rTSS80C(vYD z2j}|d8_OAAv2_NDQjBf!hcqShf~(^5Gu>?^g^N~_p^gdMN;p@%8+_yh#i8lov&h2a zcq8E6t@k~6{?(SoICTCa^<1G#FGRTxJ7?}40-2jZT|Qh7zP>|Biyx|jM`=t>9G;ZTUxCwM#P+i?`zpXd7Ea*+#CI|3K%Um6_z@mrQ-bIzZ|K7X~t;v?4tY5BGqO^iJUxEkDw?kG~2 zHI)FJ2?nCxpcZpb)JpFc@E0A3Y){sm-~AN}hpP6U16oUV&m=UT0^jfw8GOfjEm0q4 zAikc!_nG2t!_(f!PZ~W<(E1g?_+~ZU?~Ql5dbYC%^t&Rx1AebHX5#OmS$a^+FuO4^ zWuL)g@`{T;vbe~s_~Oqj1gvWM=iO-8XenpbIiMoR-UtyWCPv&zG|4S;FM}UH ztNk1+II%DzFOgC<t~-clY0SYP#AEg)TNN>Lodw6?({SSJ1j36hxCyCa zJnOnk7%o6F%i_z^%Wl_CpJdv)O*|3Qt$unV_zT4NOaxMu3}RbXCorZkf?Z`nYw@E| zYa62GB)?+N_g3}p1K0OQ68jBx-rs&a5LRbok3umN4w zWGry672^D=JW!QYWMNkTl22XXebjZdvYfdL=RF5>sOMb4TG|_b^zp|xI}^bmUt;#@ z#*XbE+R>qdBr*!qR&t-|wAtOfR68nYS@+Ixg|?SRL~}A^X@O;fOGu!(b?l0x`u^xu zXy5}%m5bV&*m3z~I<<1~Q{*HM*jw^NNr=57slZR7wnBXSXa#yZ6V~4{fBfz7gl8Z+ zG1lJTb+gD9?ZndQEBBdBO@6Q%iM}D_dEAWjwr+>FBWk(gm(Bsxz1^s)rS(LpN@S`1QH^polLDZ2 z&7cas;qKoWDdbVlJfoz*$g!x*1_Q zZWfQta~Sip{+)Aqtn~BPTp}C4g5>>M`Q!w`+o0D%AanT~;DU^;gK&{}4gAX-Vr6`9 zWmFI1R9qrzH}it22KKhXf39U7d-DdU7-Mr%iCIOoZ}R-oc$YM;zOq`!*00*W=-X6P z^AM->yeF9Lag{G`|1F_o;Q_?Z&lhf6?ys7j*`kMf}CU0!Z{ zg|vBT1ftOrKN7ig0(nDUrJWgU4{6%!%NKHK1_vS;N7tiEBtXuy1 zA~A3+e>5g}HDzL`j_X&MOYmH^zes`1!+8CGhMXHT?lW_G&l+?MPpgLhHzh;h`NY2j zBLFR_(=j5sTyzd#m<*p#O1*eL(o8jSn(sUX5;$$+bEGr65$C@0^mfkJ^Ufm09APt|E8>YAIpjp9Vf9 zRnhG9okrO0#z|U^ac49h%rrMG2#wyHeW*4eRr-$aUq@i_9G$o|YyG*aN*{2$?c}-hNT~8&F_T&( z$6Dl$7r6+y`UHWy5Q6h|!c1giY0;&Jj^MksIy66cVm~EMUe+ET7jz0mSu(x_KbVKhNB$_=$;06H>X+ zs_1D2(8`Km_rb~%%G9GYGcv;H&ye2***Scs9+m4!6&MUpJxJU!#gY(HYiO&Au559W zSP0&%#JNz~R3$A^j*;rJpY@NqW+vY)d(pJs-X~K%Qi66%@_qt;&c1E#NKUAIp8ZX2 z^NhoD#>whp19LTZdZUlyEeDAeXKJ=9FOxXFCYE!)k7Mo%9wl7E#TVhW(B;|7!@O=5 zILXbup@UNI)z{6GYW7Of>)qGUx)+0l0zU^9#^EYDGJD&GUr!@@Ak?<~Ujm?AIu2cp zj*VWKY9e%=M~y7a`rypGWCoF$jWWh=KDjrCCWuRJ+(v;e{(SucuY*dM;u1cdh4+r4?%7~+H`ugsh?+PpPxk)By4(pkHYn zMBi+OHRv9JAm5NUAxusi2h!#d?~T7jIes5Z2zyTJ+pj&YnnNoW_Kiu~0jyM>$LDJk z;~VoK5ANi`c%Zsa>=f(~yvkv20Sosw)U_<9Ust`V9B1Wwza+(91Cl$9^sMl+ouf$7{Nu@;bOL+g9lT1rjE#jz z7SU@le23$D;Q=j*9eT2N%r^?ELOmH~Hq__8o4mh%4rtpIG+57l2mVP)uCD<{JA+R* z^+E0yr&cuJH|um|yeTH?^{+G8D0pbcN^?U5N*W-q$j@z9i{YJD&2zYgb0>L>bw4 z2*Qc`hd#n`cYEIJN%z@{?l?v?h(2b_>M#e7>sOpk?gVT=J}h8Nv-vb2ktDInm!yNc zznV+W3YxEl;kZ4Be4n2B2JB@Ga(DfHH~(&jX7zE!IUq%u9N5z>|CLw&4QW%VP&Nm* z0eKGPUc*(fb+29oWV>KYyST;%x;#@?t>>!!I&N@k*KCVEe$T+=4Pri=K5Kq#4-@$w2Fmj{p6RMLO+ejOnf zyac2|ab?faP)yBsKH`#@rdZGkdJ9#-Oe{EZ&LvP|hc+okwbQklA3VR4F4BLKu6&I{ zs8uK0uM!s|KYuR+u2CoSd!`6kubnt2csO21F*%s;|LqodRH^Y2JG|^q|e%|nf z^1W*r7I%<)>;xsE?9t+w@fDuS&ZD8AZ12Qr(=!4LcMMn9aFQE`fkPO{x0*sZ{y5z2 zEe~>#H+J;`?a=AAfS;1Xl4r&1ZIlagYTontvZZJ6&Cwc-enqK4{-!KPGn;xp!*YAg z8z$!f&68ub9mq(q4x@VC$d?y=OgH=J%9&j^(^%))IC@I&rS{R$%_ve3_F(rWsy)HS zkvMs}o)$*CQB5@;%=EnHJ>5|!^!!xkoFrX>LQ9gN<5Yi-!p}+Z3Y^2zlW%yofI6_L zh+`wB3&kq^8B>!zYIHR}Q~k8z@^x7bmuFy#Z;&oIKeR7ns03( z8H}p0J$-fBO{vf0*G@D1fF`7q>^lN+j#!H$uV&YRy%xO-b$9DhubGe7Mc>uhoa~gF zYC?lLf|pBhV6sZQ38T>)>I|$Z^7>?iM@8Bv5jB9ERV+KIScgbRg@nTtzI8BLcj~|w zl9e{SKjYg5a)U%HT!df7&6q%ue7$Id;6^6wPQosS5r@}|z{;yq{+IM>-OlhH2nXp( zKzcVx1{b)rV;S&juybVh)j43#CE1yaik!Rk-55j~pCOhEw%0I)OXZ&%C*u^6pu1MK zq!Ir2D-tanN#hr`v;_#_7`cvYSyS=0GY?xm4cgS`A<;Nhn&10A)3JFgTe#?SaAb}- zB&Wv7w&+?1SMGR)I78u&rHL3BI9(pOSVD(x|0hHDx54{+r2DsSU`oc%44zUsF>#11 zkb$|aH*#K%L5fwZhtj49OPko%(HFq3IFLMKV0Ajs#-CN_rQz18JV!pliOA^*>m-r! zz@61c&lnCXHrS8dM|%=6jBVBwFH=Wl?waNBlS) z`+50;ksICE_S?zBt3fu4pq=5*{e`4axNvF|*V%jz8eF8j8GWQ{w2jaw@)Q>!Ct|mZ zA!qklY7mPb=9NdiU^GPp%}_+wK*yiuyC05Oe~k13$Fs{0dt2biHcMavdtMjo27<3f zi|t8Wocb*Dk!ylkPeOJa^+WZ4zEEtNtJa?J3jr_g~WDHq92ss}RIg zTAi|Z`%+8U{{%-1*4-{$d^sDs51leFc6E}YvIt-Ok~fJNJ7_$*^H-~E59bOFI1YL65)q##{N5u!=#jTXrtphU~;ym{SXc3em0u7n6%@Wz}5_wo_gRX!KzR1aj4` z7+uruu9aJI)2<7<5mZlDW{k*d{#>(NmvXAVO}KUQmW1Y8K*dLp%aHJ(1MYMY&usil zPMS2Ln4%{fr7K{)-!RK^S3VQNhd()H!g&@2gm;m|u=}@Q*+Lzr+Ee7#MmhiGha#kg z?t0`&FH#o!<-Wj zMYKCw=wDQ*PHulnhhY4pmmss#rZQ;AvGk&R;mZD}vzWtY^7aaZzFyH&51Cc}{U#$g zCE2|u{PSrN3I@RA!=eed4`^Gy1Wc0GN|24n16OEil!ot3L93xS6{#qJU-U0*okMyv z%X~|l?*%@1Q35XN6EUFLyGz?4+@oBSA84WJtvdABsK}(jT)uD1%1buWEgclV2iRZ) zsJO=Hxjal&D-~^h)_N~tyaYD#(Y9CSCO=z8RYK6{?F!&PAZK#syH5@xsf7jz<(+c% z7{Ey8F11{ zErh_H@Ev^{UZsN1L)4+gOxJgA@{Rvn=iA?S-&&q2ugyHZp^}?&X0zY&1(oq- zz7G)-2o_ZHg^V9f@6}|mU`1HI+w3<5z0#O@-+MbvkMKUm0#r_ldE@&8c*1fH@Fv@A zz@etikwLz2Z-JeDGfmWW?JzxrluIq;!ra<^#U`}VCTUY!aCC1;%_PfK%tA{@=^7hPhE9H-ixH&tH@ihbM!p5}05+9IC@fJxWurXxikV0>wE%Mh5x) z4n8#rwUu0|+6MlN9IVD>+?VAmq0b>vV@<9z|xIFG&k3xfqgT{EmO5*7WQr_fLDg|eAn8)!( z8Y=zxMtz^iCvuP7Du|aygtua$;`i9HD1;Nv`uq2SDe69EpdfNl{EwermqLgjojAU2 zG|~Cw9FTu$k(HLK=(ktQ8b5n$lM^ot6k3qaGf!aDj3c;!4uh=E+bF)G;p*OcUEE(+aQtM3M zTBcQm$GwhmACHY9<01c+GUxTp18}U6;4e+9#nWoX8}iS;nNr<%NZ%)oc?*QCga@K; zhk7~_M-74w85t`>Txizg(d@bPMzoW6J5?Y4##@zAO(d;8lvn7Sh_@w}`=92mA;YbO z)UaYZYh92xjgNz5aBS{pPqKJtYhRl8M?DH|{{Ar;6lQthOeh6lG4^yp@w<@Zw~~R} zMm4N{hk6_@@&kL52~TkSXz(i`76do0w5exQ`jXD2?+J)jgvG*8&Q2uBNsG&7cfFUd|ZERSKe-e4a zbcg4Q>Xb}PZN-nyot?F&`k09c1?hvvUOtIIg@%q$EhE*6^|fOkoGD#f>&pp zSNj)yF$CWbwMO8M5E_JJp(s%R<{- zPG!UmXGw7lnbhP{cii3qxiKYa;GZ|sjoWNjbbtQ3QrMNx+Rph&58z@_pd+0%o$slw zd^cm!I-Y|fS}Y72N=Hv;-#|oi4W*LTxL(cXdz|uNEDQYRo!lL(GYKlS7whA!AN~~J zIfBCxFU!qu3LH+uuyM0hm? z?{~<|S5~%DeH?yh3bc8# zO1haUoJKFbTv_Y=khCT9RtJAzhmL62kzmO%%C#b1y|8WJbuC=7c1}4}k}1+-Q6 ze*Y$EAD9t>+k@0hDODI;j zDvS+l)3(QJif(}`$b5)sNnM1@&35L{Yf(|0q*oq)ffj?R2ujPE%7Nh}oq^4WV2EqIO>2r1WCRhVX_|}c)v3bDMSCTmn2ihDeM-HkE5-6NA>yS{3*^;8RmG0^ z7Z~d}3eAVTmVDBFvj5~ZP+_WX&Ls}vj~`qp`h)U?X)I~6bO&jbx1eW!A2Bjkvv7=D zcXf4 z*?lJXxu{gW(Jjp95Yf^*(LC064yama2S?{zBSY7noqUwKMa8LceLc5d=ali)-l}T} zVbtT+`k=z0Ac0JDMGF+lDhVZO5Pj*T+pH-JFe$?a& ziNn1ANGo(p=f%drbMu%c6{$5uBDt-`CY(ea5LjMgz@7PP;A_=aed0=-y23fYk75&y zc5=rX!zbs-<#<<>XxI%bR7fV((AKI>*8_~bW8gCtlyii8v$V$(kkSjk+=MlVm0KD2 zlbV8r;nL%8^w`WI)Tk;yeg60A>_2X>WL5JA0XkbjqIC>)LxmlEu|6H6ghJ zdbVdBO;Z!(yYA|Jc)jd20CGCof>iEBRS&blf5O>g?}rXLQy&;N-0zvZesjO0Y^Hd( zx8^y55>Ac#wp5C zxLWZ?j;q=3N7bEqRcXzKe9vQi-sLW+yqFHMJAK)@wmj?Ia~kECU>jsC$$T}-bfL9w zZzaSVqi|d~qAlrh5FpasDAxO``62Y_q^EO`PE3Gv@B8C1mNXq67g_akXiu{_{&_%Q zmwLo83IL-eiH()5xS?ulcw2j26m|FA@5K%dpqofQ#h#U$kWlS&IQ)P zrv681VoN5$CRy&68>S@Cx%DwOITBie%0f&rYfEKyU2{}sqj0(zX?0noH#PevH$yG| zt)lw67|^M^WVr%Cq{YwGNyc^jhJd!Vs$oa|?7IRfylT<(sQqRk!rvxX1ETx1GyXs_ z&{Nv@W8O98EW`!l2`Ho{M9F`{cRgP2xSd!?(2}pm4tFwxY%5t6>W=k}#VultC|r2d zmZ>IV@W@5)9uy-X7y}}RYjZ>`P0VXF#qusT-c9cG^|&<%GTu(q%iQj zrLv$ihqT%^@B6RKiS942Bq##AhB}H5AP?Xj3(S7QQOIwf-_XT;f_fslQs&5&f0<4_ z?Sd<*&RS}QwbxE)TNY?Eb%z38sm8ot?@i`1HaAo8I-s+&(V>D;~6^T(sKlJ$ON zmFd-T(n;k}RN0rQ^+v}(--38|dvM?Bc74m(vf$%XI<~GB zyYxR)$?}k_R!U+~E3-X(Qd_*Kb;1zCoH;+gE~;+6dIl+kTbKP-+CkzRxk^#CU9TQd6v+H+ zPI%ZcHf77n6YJCumw?%m4{~d{U7l4r?yg0ZJr#@moR$AI8#b{9HMxA@}X7vdy@E8eX7qx3o zRt8B|R`6$-af>MZ#+4Xgce9$DaDE|zv$5$RH*ln-MIj%7ygzReod?z`IB^H$Y>bP1 zNR?SGk|5crNVds13F&U@Ng&iBwt<3 z(KRxx6S{Em2qH8+^WAg7lIH2*(k9v{!45HTmFK!2kBI7q-SROKH;LAo1afH8Z%(8! z&}Zzv$jC#nhKkJc$w#TmC1}y_IDnX171tNoVW5HllVhvOC5oWhY1T)M zY1l$qXv7^a^ZhUQo))R4$ppp3PzW8tV7Y?RqiU1ex;8mb-$HY+q|TAtJZ~~L8_MaM zP))H8VbT`E-CH_&RjP?t%!+CpRbrRy+Kp0~qb_5L83?5Lzj`~*s3zMl-3L+WAWfu3 z1x1P=O#}h~5l|7LfOLrTE+QZxAyJUt1OyZiM5IWI^db;?N2-AI5PD6hft2?=Gjq<& zf8JR$v(Bt_&IeYWtmFeL$$dY2U;B4mx4pLEK`FJ#nG#REw1J_=IKk=sRp3@>U4NFE zFtC$Vzk-Ly-rA};E)S912aW&Eb@q={IO^{fCRGW1;L$05(>beB;pi);yZLfx?o^hs z)-CAf1@s&rxfE!1QvB7c!b2bd9IHJkIK5A0Q;)Ali*CegPEs&y$LYn=93vr9#SUz3 zpO7;5$rZKQEEB&}rm2e%q#e#G*83LCN?8Mp- zNG(Zji9MdQa}gt^^L=6}-%TT-v(lk9GcpBnt4Hxsyz*XTXiS?v0K+F%ABQ(I`s!+) z%71-35>-LQ0A0qvCK0e!Vd4Bu+%OzPMSp@UBfCzO#aFf--~S1rxwr%z6N@*$!9@v9HW)#1GQyh^viS8BHi`jI&P03QIvk;CSFx`vKOq+yGwym*3~ z=Mr^~TyuICvWy`x8}9gGLNS#(VOQ{?u~9Q-n^Ai%iZN$j7O#KCa|Fcg(6(J6ZFUbT z96fmwLlZO6{TGNANAf5S}C6&H_Pp$<)%o3ARfPnZasM}7o!b8JwFum8YK^oy>ov=~=J z9i0Pe=gtnB_1OGdpdNE-XM6klV^Z4$*lpzcv*+?BJ-515lBu}B_|B#keEzmvo=9pI zpkTO`$SeWmzCq2zdk;tb$fI{#ZPeGI0Pp~xk~^{lvlQcqq4-6LFR}e+$1Ki4|$geaKf{%lz#^z*#@^vZ~;4TW5zAs|MX!u&pxRDNi%F z3fj3FF2UUtyD0X&c(L>5E)*q1XY(`RWVj#c)iJLvS&-@<3_b;Bd=||Xb|EVmaL5Zb4KT;O3ZOfGdhv1L)gdhM4|IB z;}A2%;L9*Y(`A{wR_{vj1)2m+=Tk(|+GwV&LZ?1gDq4<|lfQ^uCc`QDY8T1i(Yzo# z!??ddMxYbpi^U?JriXA>biOMPf8#u-Di&9PLhd`URPfPyY#>8r@C_aEYm19LrVmKP zvw~fs`43O(U25A?n zAB!njQbQMZ>0hb|WJ9#29)3$Z&Nt{4^R&;5d|f@C7oIifr7$*PWp#g~PfT)WsX|WZ zTT+k0q2ksdNsKs;3pz0WuyzU!#d)pFKm5k4zVSnh)HVMFUE6e?+AJi5$4wK%7iZQ> z;MuIz>`Ug^;CWShXf85#a?)%)rOb34f32#L@!}oaZU>H02wGK0FCPDhqE`t~>4=O+uo$3h{K7z3}i1*co zvl+z6ohMw16y3^}=*%z}{+)4}E83gG^XhlnHVdXz)nc)z2Kb824<_nMtBYPd@>hBK zW=ht7;Th--_b8FpkeEtRB7SAzY?-?r%)-;o++Swh)pWf!h9Pm=yI=quwRz&;@)W$cE|K_6T`16I7d4my8qpeSRAA+r6$Eh}!B+|s8A0CWL4MsUj zhaWXT@%OfDUO7vZjT@(;MuoRMRlRP|pDq^=e`|b{ZD)W00qdt2)lH zvC2W$Sw7i2bgZH+ry5a3`XiKlTDAydcg|!V@@3;BChn<1AC6!HqthcT+`Y6e&GdH- zF;Z=)V$@-PL{d}oA2lNeet}746WpH0Q`srnCqQG?UOIBE`rS9D_ve}Ro9RT;j@f?c zkK#-^z*D+ir*W|)6-=a0pbCc5yt_VYl0C(tCRR@3VZT2I2&uKSr)-i82S)tzlRnwk z!xz7YRa}^f6;Z!uFA)E8pEYpeyECS2C7K!6p}ZUAt3-AX=FKt;vkDcp>CxKB$zyZf z_dGX`9Lf|SP85^52s|+k;jp2ra~~^^`UZ zEY|rN@Ecf6mK!M1FWlqC_|_~-44RV*0HNJ+Gd|qFlDNMRSK{Zkc>if`%G`z_L^%R1 zrz5qyXg72^kxOj_I@ohz(FC+1@hxsv2*u>@wsfM{=^cA(>_bCMoB4 zNuGvsej=DUYKRc7A&M@VQSYeNsBy$`E3!ZPWNo!@_lMoeeoXqkz<}AP*48=df@FIWn zxuYtjw|NMRPYG;s9@sGsiA#wvDKR_4GZl)xpm=9SjE~oNBNU5n&WeEJ4OBU%ajDzV z#WQP}=j#(SvAZlTrFQYXu~Gb=EcbLT+)b2K9|TSClgx-FMq1unE!4x$ni%fl$msoN>eLMk67Vd>`~B7kK$ZG(=T8zQG1hdOX_T^u<4}&)v^NS^Kl%ZrVLn2j{-l zNmBodz{hmETHLEB#-Sw;Ci!?@`>E} zk1Yh3ZPX3gE~*5XndnVOdPE&0V@Osv zZ(_K5d96idnWK;^^^Cgjx~ zY&7YCQz6gjI5D2hxU}QfA<$?>vuPRZJa$NQuw!FTXl2=_0OQDn>%muq@zFh zKQhjk3zdzp&#fPk9+&FWwSmX0i^I43geFVVTT9tY)SSB(z8Ea4wPr<;HREb6IcVnVO1}>s8jb>56q9=+`3V&#-m1YcL} ztiNOM@7r#3}Kzwu~!mfaqmp}akmbFa&n&h?3snOb{!3dH<)A=r=?z4HWKSi z;Yj`Q`S!egormHRGnX8_5{u)^dVcW5Di+U0hYV{W{JHdv+r||PrBV~i5#4V>?>P#; zl6@cyS!@J?T{sR_%A+3<(plIns$=gB%}}@DwEQ@`7UNUATRGn6wGongB=z2uq+X@9 z_1rrTaOrE(L?Xfmzm1NXXlnvjO)9ue&z98?Zr0v)u$y;X0G9;3_^cdjvs9dXxVh?m z)G#R3zgPIQwur^*Y5UVy`E`{*G1m{m`g40OJ$u#ja?dxdZuvqZr_L7jWuUwcFA(^ z)CvR??-vT8D_F-*b-r(Nk?2vOSxGe#?Y}v3IVN8JH|0FCc@9)X3?yA6tCU&5D&VeD z?ypPsZ?z}RY=AM2?+h8}LfemRX6mm;NOU zPn^6w1dz5}TyOKeW8Sd`QM&TzFYUswlcfkXVPrT-9HGnC`i;TGyKrD>>A6lLg;F|y z)UY!3&W~I4Ez}7`OTI@W;Lrk=7F}LgK~aNSQ`4fS(a}RuqX!FJ{7GGR^_3Y z3xiz9@vO5AGUwB|j14W}^RBmFd@*&Z8L{EH*y-HW+gq`~90%x)+gU9di&yZT&21ed zOm$~?e$Y?U90~R(X<(K*zO_1sk&$e0z|PZ90a>If?B`+~JH$*e0`b(QFkpUj&TY@5 za;)Vf#*smIuj`SM;O3DC=sevSj06;jOai#y)2{6{d`JgUt||)GY7NmHfEtx0T^-*y z9=++14s&})DwmVswwgu!xN&BX%z1p&L1ZhU4j|d_)|kau=s$fWAzPgK4V9SBH*1&> zg?jw=@78yJk!k5xI_onSj+~jhOe`X~txtj9VjS35E&Y?))Gm&pDoYOu(Sf?rn=ght zxO4hV225*Y{2pt#gZ!0RfMo-6S0$betS^19#{AkwvDTUbEW9~Jz<>1Zh zk#r0qnk$!I^kpuXZ0Vt6=dK9_OkNfrh%N;Fht)BzX|K@KxWxPCSvrdIW%{_@aojEw-q{CaCLw;x z59%ed3Gg4K`x`@PXLIL5z+t-$x6&dF5@xOSt~8vHom5f0$1Zz*QJ?PW&v@dE)s}b` zUNqt6WD(n8-x!(Eq^#|Ncn#Hw*Va0amnoc2q`HJf^2%2r1<f6i7k+Pnh z-cZa7`e3r0jCursolSzKh^IskwEsmwT_owxrtm;cOqljHF9Y+-X6QqzYt?6A13a}P zFx%}yx*J8=<>qQ^7^5yHw+)fqPy`hiBtUGjEB8w^LN$EZ!ZaVo&+LLl64I^EZyK&F zg84Q*bBXtN#y!3y?u}o&lj2m}_92>@cJADm-*jA6hl$?8AooVoIf7#XPLPHClOnXD z@-g1_@zVDrn`E`lM5up%jv01CQlV~ZI|w~Og`pED7pQ}9j%8vI9<4)=`Vz}p!V#2Y z5IUCA73jJ5kQXLVi)~i@Xi`0qL6#u+g*ILGmxB>j-;KyuPS{yQo&jCbi!DvGBM!yp zuUp3gbXxx42jko2v7&n3P%p}7q)@s$Q0NKw{D=GZKd7w#)oW_6DY+P@EN1EmoE6?; zzO)snv3a6cSNg)*xbdj(>8g2q7*9xo6Sl!l7bWYk&D&te*fgUL8G;5&+h@ zG!^X1H{1CgU(->a_11l7_FIyE&EAgW@W-VSu^ZQK!JfTPVLW9!@}oqnaZv|Tll)VF z=*iTM)F&q|H%`+ToJ@Z)+&2Q1N$F^TGFNKF7Q_S19_Hvv_rW(;kQJYZ-xD>jx7qB~ zb7x0>!`-NR`XQS^E5HBi(jqza>ciDlwr0$v?&5rBWF?v%@u~`To_M3uk7KQH`H+9v zn7PbS@xGlqqS+y0VPRsYs-&bbw$k`jLh&v2XaVOC0PJM^!up2ht?>=Cc9;-XPTx6u zq+Ex9#m80C{Fwet<>Z@gP0{5Kd!$8zF}E=;Y=59#7<{H{mH^bLrYh;_cmiwP7i&(z zrd&yhDyb{)QH8Zrw-b>jxI0T(Bjyrzt87bti?dxFu=p%Kgd%80V`}iI^20rw+ggx$n0 zSy`WNTt1BHlig0D<=36daSWH#4rorGB=HS6UnQvoc7!4ZEue^c3M>)^wRA?ouk@6! zF7ddmikpC9@P0xc6-a(0NowzDSL=Yc0kMW)_awxE7*af4l1BOT@Xz`yjT%bYn4+ln zv+mWD%RuN73-uC_9}9lB)xe1-JqW));?8OB)vjchk@5;ESHbbXQ6y==uM%Vuhwvs! zV|U{+&!OlxlLqo&;lVPkrPlpsE21r z79B(fKiJvCTu$grE_F#&_98fb;%d-Q@g=G<~!LK$>Jl2 zgN)Q6zbVJ`MSkagXYS_o>ZXG$(KZEfy$n zq$i_~YVbAfgG|IY&$vu!!qbv1j&&0z;SD$UjY9jRzMJK$9j}xaW$8QR;NPZTt>C!% z%1~;^B6KQzOHB};k}9tpqsBVQo6E!VL~!_a?u+)5;M;8hx_i$BlHeK$eo6*XfXtOh zG9J2GJ4V(j@*p8AzCW6H9XdYub|p#V#s>F`rr*0hpf@0p0FCbd_7?t|KKw6UL*O~h z->tR4O@fB)DuxfWkPSW$ZbROxB-VXxiB)O8190%q7FEW;5?QAkA?V`|#|k8AYZO5T zyAn+>Y@Wir^*tCU{m!6HJo)+_G2D&W76xgl9;g8VrkZ@FX8K4cB|glp!TK+dLjAtZ zK982K^&R~48a%0^9vw{9;z=rSk*kzte$gB>0e|Y-CU&6EJFWu+ezY5w=qtE9BqZu7 zRKOgO*{BvpU}l&)4taoet{%kR5!Q|LYvP;R(X4`0ZQP40`B~G;W=`=ElsG9R3KGKG zfjJE#z-1B5k|5p}9av<>?{0ESiPu;)0#bxxSk3dM@UQWG{#BA^F>h_wlRqFHjPLI4 zkB!q_7P)mGTu@?H2n}gUXpk{s`iydZ*?fS<^JW5c{rpn&%9v{ zjdHgeJ4mlJS4npPw3yDhg5J21&Qy{(g;UhUR~K zG3-9>jBNI0MGMP{^XFcgxY5FG05l=K16LBzi!WS#(*>;q9sb;v;H;{=xK-%MSq!UT7a(qvc=EsX%n|qhzjO+l{ z%zHA7gh1$wk^}NwU(JClEl_MORPku*5ond|#YEj41t6ipx$37_JJX+4ox<`FBGqv4r){aB&Ngtp|nyy?Q%)Gtqro1o5N zoO&u7RkZ7gzIlBfIaU4dEvmlVv*7Vbd__ws=c*}HDzVbV4mJXAweVO-EbS{%e5)O3{f(*A&F%i(Fx5E z6QfLSyd<2Z63uA2{&>dUQ$MWp#?5Q$gwARY@E;>lkwj)C4MDLP6$QT3bQPgB zN~R%%9x~B>U!z{FtGIdgwYSxz>HK7eOQ33Dm~-i+M+=~Zb953(X%rfKS9o}s&uBi= zbgZTnyuThLtFL}(CXm_d@n>k8iM4no0aOv@VJjh4f^B5XyH}lff9ih7;nc5!cAws; z4d;IZ`~S0R+P}Ldfo(%|NBLXGMq7%svj~3#to-c7`_h^ihNvSKhOq>+77Fc>+ zs$&C>@uisRa_I5{{sxn?7qm6#g6V-=z-i$luhfO(=;;n5Z#5Jj=~kW+@7()mrsgKi zfiY>AE!7@c1rFS`OsyJv(?O)Pc)xr-bS^@E`;3#WBB4$BPrIRZ7KET8+ zGFybF=CgmI=&|AG*t27_J`mq(`JAzouM&T_h`Upr7MNF~0U&TM|7Y3APc4e3-4teD zV1wwqiI2|}O2nm_jyc*MZT!f0k4aSBSdOcmey1Ek57PnrP=ds)_;uM7gd8iC&GQS) znMh*Af2t!tlm^KeCnt}|W&nxNzH*#tHTaIiX4{{XO}W(W6Hxb*I&B$kmU$&YHTS~i zve#8fci9(Dz2cW7o=1UJ?D387k^l$J2Qx(}eY1?X2fNK3mcV+K+Up*Q>CH7g-}Tddo#wc z^uS+q)P6Ku%|K=Muw@>TpXcf(XfTI&{|jVt3;X_%ZhE}3fcA6Qu!Vl=VC1{Fd!Ix+ zPQE?UmuVL8DVaoUXJJ5!Re&bP^)xWL;HDvB=R)A|sqxDh*BZ@%>d31RlzF*p5vQyl zXezYq+X@<9QqrGjFo*B_fC>k(xSgTz{!gX$Gk~>-?Qg!Ve_afvx?MsH_}z9WldIYV zf?mPT(W)CUFRyIK4SzUtfCMY^Z90FMX0!Gw)GkqU(VA7LcXNzi!Qlo0pp}EnNT{6S z9oMup)i>8uJ7B)n&WoE=KJeWNSkv-PM(Kk2)L4loICzK@^uI)CjQ?Ld&A;`!tk8mH_xyB=%?glQAI{U7b^QU>V6*Y{|AR zrkNJpG@jW!Nu|!ztG-ffx`6N`q_*<+Tp98dlrOov((AVAHTW^5;#`34SA&W0a2ET61qX_T4*&Oa{oJhf1+SfW|rYWkzJHQ7 zX>$*DL|m>t74?ERt?T`WH*w}VDJ+UlebLha^Oda8UG5BbGBp3u9eb&(FHUA%T>v*_ zIXnN2Fa5bXgH;2q`E_3TA(7BO3-E@Rm+FUfQ{Nh2_Gjuy^UfwrWsXKimz7+_GyPV9s?jrw7VJMgQsTcjCgKLoEf)X5&cR@{3&drt5=3#)zoG8ywQVUJ z?XT+8OU(IzM#_;%k9PX{`Pa-(8T30evp(N*x#)T~pTU(R99v5~ADNSIFO#1T^qsxV z&c*-D3D1-G#n?t2g7o8{AFyOC$sZ4s?sh5(UrGM(-Y8Dvtj|?UJ}hFM1xQdbY2#7j zAmj$mP0lcfjNH!%`g0XoxH%cW32L)vIVzhzrQv@hZ@6XlKAm83lE2 z@$b~Q3yJeV8ydt36-=Ky??|=|wQo}ZoiDs%7yPq)l}bY$LW&V(a3mCGA7m=?(~Bl8 zN>R7Pz?+O^MFBd^eX-NHFboR9gqvqX=-`*pQDksISHb#(ruZ7t{`uPGZ>!hbkSHqL zZGy^zFeE19M>~x3vA=%EpB(b$gko!bFB+si%NgVle5)N`7o786i&2YMw=lrG2eoQ_ zV2I}aNwiOWVBuJ=Hlv+vvasKt@pndo zKkFjm0?nnB2R<(Rj1QJ5Y1$;rj!aj!pv2z1$?%~k+lJxV>2}6c5T(c?g<+`cs$#Y= z2nc&d8QtMt#PFzr5VFL<{B$_4%fsWSZ<;}DJ3HBbfnI5hq00Xlu4|e=bIB^F_iXXv zcOES(SB^)aJYN3=l0B^0cfu;R%ulf`!dmpqRpyyCq;F@K@*Zr4NxR7&^Ly{rHjLv8&5Nq~CKr2;u%>IJph_sre3Ei>B&#y@#iLzBEyM*u~PGT;e zlJ^^OkuAE?p%00@YpvZB%Zfz2&hDXZBOZ8rdOLVu%iV%`dNX^y zOEexev_=N|ckRPEn;fbD@Y)zTP`^qRF&9cIFq0L4oT5%0Dht^j7^wb%J85hWAOQtA zFWDGKHU8R7$q_qMUzJ~n+_s~)b!p^F`&~L=4o!1f0