From 75cbb1ff76f106fc5dc96e2aa06c0bf2e5290364 Mon Sep 17 00:00:00 2001 From: Daniel Hammer Date: Mon, 23 Feb 2026 20:59:26 +0100 Subject: [PATCH] fix: interim README change --- .gitignore | 1 + CLAUDE.md | 76 ----------------------------------- README.md | 26 +----------- programs/src/init/main.cpp | 2 +- programs/src/wiki/obj/main.o | Bin 181080 -> 0 bytes ramdisk.tar | Bin 12902400 -> 12902400 bytes 6 files changed, 3 insertions(+), 102 deletions(-) delete mode 100644 CLAUDE.md delete mode 100644 programs/src/wiki/obj/main.o diff --git a/.gitignore b/.gitignore index 5f392a9..7634e2d 100644 --- a/.gitignore +++ b/.gitignore @@ -12,3 +12,4 @@ programs/obj/ programs/src/*/obj/ programs/lib/libc/liblibc.a programs/gui/icons/ +CLAUDE.md \ No newline at end of file diff --git a/CLAUDE.md b/CLAUDE.md deleted file mode 100644 index 13b38d3..0000000 --- a/CLAUDE.md +++ /dev/null @@ -1,76 +0,0 @@ -# CLAUDE.md - -This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository. - -## Build Commands - -```bash -make # Build full ISO (kernel + programs + ramdisk) -make kernel # Build kernel only -make -C programs # Build all userspace programs only -make run # Build and run in QEMU (requires sudo for tap networking) -make run-bios # Run in QEMU with legacy BIOS boot -make clean # Remove build artifacts (preserves toolchain/limine) -make distclean # Full clean including downloaded dependencies -make toolchain # Build the cross-compilation toolchain -``` - -Building individual components: -```bash -make -C programs/src/desktop # Rebuild desktop environment -make -C programs/src/wikipedia # Rebuild Wikipedia standalone client -make -C programs/src/fetch # Rebuild fetch (HTTP client) -make -C programs/src/doom # Rebuild DOOM port -make -C programs/lib/bearssl # Rebuild BearSSL library -make -C programs/lib/libc # Rebuild minimal libc -``` - -Simple programs (single `main.cpp`) are auto-discovered and built by `programs/GNUmakefile`. Programs with custom build needs (desktop, doom, fetch, wiki, wikipedia) have their own Makefiles in their source directories. - -## Build Pipeline - -`make` → kernel binary + all programs → `scripts/mkramdisk.sh` tars `programs/bin/` → xorriso assembles ISO with Limine bootloader. The ramdisk (USTAR tar) becomes the root filesystem at boot, mounted as drive `0:`. - -## Architecture Overview - -**Kernel** (`kernel/src/`): Preemptive multitasking x86_64 kernel booted via Limine. C++20, freestanding, loaded at `0xffffffff80000000`. Key subsystems: -- `Api/` — Syscall dispatch (`Syscall.cpp`) and Window Server (`WinServer.cpp`) -- `Sched/` — Round-robin scheduler, 10ms time slices, max 16 processes -- `Memory/` — Physical page allocator, paging (per-process PML4), HHDM -- `Net/` — Full TCP/IP stack, sockets, DNS resolver -- `Drivers/` — E1000 NIC, Intel GPU, XHCI USB, PS/2 keyboard/mouse -- `Fs/` — VFS layer with ramdisk driver (reads tar archive) - -**Userspace** (`programs/`): Programs loaded at `0x400000` (see `link.ld`). Entry point is `extern "C" void _start()`. No libc by default — syscalls via `` wrappers. Programs needing libc/BearSSL link against `lib/libc` and `lib/bearssl`. - -## Dual Syscall Headers - -Syscall numbers are defined in **two mirrored copies** of `Api/Syscall.hpp`: -- `kernel/src/Api/Syscall.hpp` — used by kernel -- `programs/include/Api/Syscall.hpp` — used by userspace - -**Both must be kept in sync** when adding or modifying syscalls. The userspace copy also contains shared struct definitions (`WinEvent`, `WinInfo`, `KeyEvent`, `DateTime`, `NetCfg`, etc.) used by both sides. - -Userspace wrappers live in `programs/include/zenith/syscall.h` (inline functions using `syscall1`..`syscall6` asm helpers). - -## GUI: Two Application Models - -**Embedded apps** (compiled into `desktop.elf`): Source in `programs/src/desktop/app_*.cpp`. Render via callbacks (`on_draw`, `on_mouse`, `on_key`). The desktop allocates and manages their pixel buffers. These share a single process. - -**External Window Server apps** (separate ELF processes, e.g. Wikipedia): Create a window via `win_create()` syscall, get a shared-memory pixel buffer, render directly, call `win_present()`. The desktop discovers them via `win_enumerate()`, maps their buffers with `win_map()`, and composites them. Events are forwarded via `win_sendevent()`. The kernel's `WinServer` (`kernel/src/Api/WinServer.cpp`) manages the shared-memory slots. - -## Key Conventions - -- **Compiler**: `x86_64-elf-g++` from `toolchain/local/` (auto-detected, falls back to system g++) -- **Standards**: GNU++20 (C++20 with extensions), freestanding, no exceptions, no RTTI -- **VFS paths**: `driveNum:/path` format, e.g. `0:/os/shell.elf`, `0:/fonts/Roboto-Medium.ttf` -- **Fonts**: TTF files in `programs/gui/fonts/`, copied to `programs/bin/fonts/` by `scripts/copy_fonts.sh` -- **Icons**: SVG files in `programs/gui/icons/` (Flat-Remix set), copied by `scripts/copy_icons.sh` -- **No test framework**: Validation is done by booting in QEMU (`make run`) - -## Adding a New Syscall - -1. Pick next available number in both `kernel/src/Api/Syscall.hpp` and `programs/include/Api/Syscall.hpp` -2. Implement `static ... Sys_Foo(...)` in `kernel/src/Api/Syscall.cpp` -3. Add `case SYS_FOO:` to the dispatch switch in `SyscallDispatch` -4. Add inline wrapper in `programs/include/zenith/syscall.h` diff --git a/README.md b/README.md index 8f2bb18..6b89473 100644 --- a/README.md +++ b/README.md @@ -1,25 +1 @@ -# OS220 -Research project aiming to create a modern kernel and operating system in C++ - -### Kernel -- [x] Global Descriptor Table -- [x] Output via Flanterm by mintsuki -- [x] Memory map scanning -- [x] Kernel-mode heap allocator -- [x] ISR handling (interrupts) -- [x] Exception handling -- [x] Virtual memory paging -- [ ] UEFI runtime service support -- [ ] ACPI & AML support -- [ ] PCI-e -- [ ] HPET timer -- [ ] Object manager -- [ ] Ramdisk -- [ ] Scheduler - -### Kernel C++ library -- [x] new/delete operators -- [x] String stream (`cstringstream`) -- [x] Console output stream via `operator<<` (`kout`, `kerr`) -- [x] Vector/array class -- [ ] String class \ No newline at end of file +# The ZenithOS Operating System diff --git a/programs/src/init/main.cpp b/programs/src/init/main.cpp index 1329f01..71e98a1 100644 --- a/programs/src/init/main.cpp +++ b/programs/src/init/main.cpp @@ -148,7 +148,7 @@ static bool run_service(const char* path, const char* name) { extern "C" void _start() { - log_info("Init system starting (PID 0)"); + log_info("The ZenithOS Operating System"); // ---- Stage 1: Network configuration ---- run_service("0:/os/dhcp.elf", "dhcp"); diff --git a/programs/src/wiki/obj/main.o b/programs/src/wiki/obj/main.o deleted file mode 100644 index 1196cbcf9c652bb20daa6aca7b42ccf11c7522f8..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 181080 zcmeFad3+Q_`aj;)-IGktNyr_pA)Em@!X4zuV4@QZ%Bdh8iy z1lMD6)m3*D5fuYSIJ{VN)%CtsiBZ>EK-c`<&r{tq)yaf}_4xep`}XUV?mC`&o~NFA z>ZzxmuAWpD6dkV%q1l(v#%rORU8-rX|5XoW@;H^JP1UAoo=s^r`^)F~i(OQh^SwWN zSJUzH<_+?6uVJV*lEM0wYY5Dmax{ej)%ey-HC_w4X=2gQQ#YwF8CuUhuag%zJPeIl`GTJ_Jy@?+~x{clcvQ=F%Jp5_NZfA043 zzExu*<0`(Yx;#=uSA2?x9#`=p9!7Mua0 zg8I32k8Vl;sk-4yJX`Y<^}76seG1ti12Z5B-)X+U557}hl8yPaU8(`GLdP+lz`1rqpGnKAV`rH14I^du@@?hobH=X*BkzN&-X@=tM(D*p(Dp4FE@2>#+%38|-c z5i)4O72kuI70aH|ptrs!e?n%G@Pb=bGkO)B+sQSm;sT7GGM z?(54cfX}~bSv^?sY>Ga)&P=O1lvO^jZn>yBbVkJszTD>Jet&Uue%(CXvnlr2szVi( zOREmeUVd8LC3ojlHD_FWex7Gjb91l%5&?^je^o(!1Jt4V*?u|ovwdgy&h(w-JNwKX zz6R|KFaYvJfS4rqp@5+j7^2><>d@edPJl%H;QYYHXwY~P^%f;7-B!UEtDr&4vP$}) z1j$BkuqMi?iAPD@$*%m|L(AUrZK27X(>&3$HMY~XPt5$fIs1H7KSg=2szrHqC!CWU$AFldY_Mt(Gwiv4jmYiXg6r%(ztp`i4i=(R>Pm6k~aRJyz*)vq;x#}$B zsvAe4d^%Dj$;L;~XiHzvY`S*KKzgjIo2>g+O{&M#n&;c44H^XP0|yOe;-E%Bz*&H5 zJO}OZ{Qu46FaF*yelDo3_pCNCNBo#l)jy*5Givwy0xy&CnBnuR-|3rP5P07A1R%6& z`GFmUf!+4}shiS_My1J(*P(9S8h`aJ*vp?iHDnH}CV0!gK&?M;&~xoJPxT!rE2#P0 zQ*#3)a`xx!UsE;OTja^#M`jip=Fj~SfWF+9mzy-UczRhXxa+P@IICiO*^4ry0>?k*FSywN&IJNsJXrbcte`Y{9D^fdw!B<{>#lhYcSwa@35%z?Yx{tX_Yh z;6MJ&qjP-|kIOGO9=RVpn<5(unzfpGPfb1A7H)xLkHcS2f88k}XMf?7jIgZPXc{Ty zJT|v7e{A37lM6j}?I=4jWX}VKS4Q|TOrA}?<`sv3G&HSp0oLL3{Ka2mNQ*?nSZ~FS z&1VB$(<`+8=GXZ##}AFWIAW6LuDzx8zQDHX_dE>|z3WPKUwxzL*_7}44~#MN*jN3& zr+T|V*pK&YDvJA0!OGatzLn;X5Uu6cW6~E&BfE!}OKW{RwJ`9r4-$C6H@z_M3e;j+ zVe#vLNLS6MudNR>EI+$;zi0J@Fr!6* zW;sua0$&AY)MG56oeVmu_9H<10=qmlR|3#iHMW=Lskscvam^m+@9MK44O$@b0|yoB zFXf5G@0aDyv6lg-aG_8^BG3&d(dWR^?ealnx zca&5e8(r~5;GO*JFN$(M^jE*E6&COE*Tv=)*2TVv4wk|B@vOdu0GGW4*2p!J{1;>& z^i?g>#(8S4M_KLu@FWq>88K0!4d#=8>gWe_ow#z<+lcTYAi*uln>Yw z<2urOqte7Rp<{%L+-S3zyFXZ16vusCQz+Gf7?25S2Z z4PxUTuu5Q5E%G@?e-fDS6nrQ4p)4spMe5*LeK%;=?x*!8e^tS5&uWsJ?+J`GWQJC% z%zSkxG>`ik8gTI}NQNZguQT(&01+*$GaLN7(2N+(lfubk;dpMSZ~Xbc&CSpZPtE5@ zSPJz4l9C40BRDkHSlm(HxEJ-I`AEc@R^;b`VXS0O=huaLG#1%MPkhABB&PcJTCL1buL|AAFv+J8igcs1fH7i$Ab6WnS)$qZi z)UbBdl#$*Aw#!Y>zY1#hl)L4|C$Ni5%{){W)lK>gn*QVq&p-eCq`-4+kO+;n3SjR? z0{ij<+X`VMcz$>u+Tq`Jpl5zva#exYpP#+IdixOH%4yAk?c~4vi?{jfX1rG>-#jrKr)3D|* zDVaNej#u+u?uA!5Nb5X%!q5>5@ECd$ZaK#e8@UkAVZ-Q-+)#QBq1!0F9V=@_9Xky9 z-g5`{o=en$?7}fqD(07a&mVljm}$kOix({LPFpgkxMc7-Vqh-a?AGi?`6!rfEQEBxutu_u#zs_H0^95H->QRnv?l~WgC6j z-%hFi66tfCOKz8_b2`8bV9v#GLXjdXjyXTB+-FkES+Bry(>cbY#I z|H+ZWd~F2y*(N8?TS^20OY61+-ScyQ^xUz{y{#hFx9a#<_`bCzfM)|z-H=|8`;(`3 zE(UkivJLsGmTfFrHEA6qNAEVOTy90Du?E)zV54L;u*;v_&~%c*VjIbz{s-e9Lpc5+ z6^(k3NUok81R?zo&Hun55M{HI^ZgbtcxZ!2Xq3YP*zt`Ohj_{)6%}v8EcQv3Bqx~N z*iYB&uXv4T;ImN>YaDeOwtxo-oCHVdl<;K2ms;y{X#8w~asa)c6f}QtsNLU&t#m?Q zuV>Tfyqf0n%fUc+0_~Ps{!zWKOa}VDok9&OS+q7gM8&c{&$!WhHZtPN0pOv*U%cHG zg0%fm)f3yLs{*L@pQka*e1;omdx}mGiytDeC7h)qjdz$<+kpzl1PX-biS9zN2f&y`cMV zDh8w=`?I3Dg%A4zuk-%QC!Sw5>F%vwG=VRiQ;+$>V#{B}v!o#KUVdOtZT<48K#ph_ zd`9twWBjeTmx={Y_ZJ`HRrD(2fCo^nf3H^j>-aj;i(&NC3?swFxC1X*ittNBAoa&7 z|C@s3G5gVd(jQOF9ngR$sYVV&_Urkg-j}-z`vp`4zRuaBcB?(h6RNl7UMGL?UT8wY z3ZmfUI0ME4_$%Hay&6e0Sb?#uv)RpQw!E!<{_IzqrXLmY5Ovl6vSv(d1Q9&fr0G{L z7Z8kpb9t0>ApD3JT|rDrVQdB*%rqj**tq$XU7PJ+VL;_@HLf@Wzk5yfLETeB`^4&l zhNtE+%+l(E!c+4F(D+teIX=lJ9wu+2GZ6?ZtNxh(_7_RErAX5p&wP$4r?+JO9( zst(m7(p>qfVg+c`t3GIYYNEiCy5t5;`3da`)M3A^`27;WBS*_uJi6!)d?^L^28s0c zgU!uShK<)EX_2+o(ES$WhK{^EaE#v?8VmNHw@8zh9D(--lLNaX>30i|vtA!iw@Jt( z`r2!03$g0dgjEF_s}JkTBkHDi`YC%K;!h`kS^K@`no3kRzK@&LPue-6xpWPio1(pL7I7sF*_tnZbPpB*E^ON);r0Lup*hY>E zsm|6xxV7Ke(1wsAQCkxJ|QV$d>QGw(2PeciYR z53E9s&w*HAZ)4sMcpPdx7A>Hwjeo?pI6v@ySF!g=3VZ~<#=Dt^ zv$wMo$LJ7PqHl86+*8N_o3brlXlKuSMs{DF6FOU zxS_EaR3Wg&*?1D{|GWOrB~XSrH}pi@I9?EpDp-+%oQ2a$=9Ctn=PfNMt5{H8=AE~= z)SG1o6^0y}voLE6gZ3Ue7dVD2^m-W+M;LO4ES!vXWnQWQXbwM7>MdXFy=Z>P#ojrk z<@1XdlpJG2Tu6Wxz=eoGFls5H&a;2i;6G7%M6ZzC~!((#A5w& zZ&vTJEW|Z>&$YUN_bb|r&7Fam?THVO^HY6+S9u+gMrFlk=~&bQk3Ea^Bj`uzuOQy6{Xct<94+Gb#a{o4!&(&r7_a8klN;{|g)lZ#9D{d5In9>)v8}1U!@TDy z@de92OvY~5Q(|OZQZu}+ z7=!(PsgS!)a+m(i`~R<{f4BT~T0^4jWnz0vt~(MRaqxc)u!rTJ%!$fB`=HMdk0Jiy za=#Yje%UhMB#r6Ht<0QkmDC258AVdmtlWkACU4ofNkDsP3J4JZ#QY#ML+Er znFl`>M|;yAPZG>y4i3seqWFd4!-F)_4UT-nQSKpZ{gb{1{9hTrVIh-(eC(#~TW46_ zkiIu-h_CMC?|n~`(DDP1?S@_#)!nm?+@nLrq`()xzzd%BwJ(vnzsdep-DMH#a7ZPi z)(HLZ%z-M63@@w}{+S~__RlurV+aJZSA>ORD|(;>{*@zNRalzr*;Gf&;=NPgeSctk zVfHqR-0Y^s;W=o(bdA*iiBODv3;4_R|7i#^oc_ZVI6%_1 z_V2tDZ_BEq0rAv6j7EqFq!t!$0~{tXHpgc*UI0eh?`T{8V^DwO{0Z)#dU5yF{Syhq z-X#3u`Co^59Zw3j_5~2MT@`9+fPt z@h30ZvQM$8G~lqW@ovk1w!K?SIJnx3FB{`)%1rD+unn#sJ39X3bsSbnT|%cF~6 z+4>XQ-|wdVJv$#(_=*m#y;|`uY4b!Pz@{7FBWv{3@YM`OphuIW_a7@si)jCE&mWFo z&48{RW&CQzv*c?jTZMu;pU9VN7Z%sk$a!j9WD`~#q2(Oc5QPf7t;>x$9B*4yOKU8S8a3A~`6fTGTM;j>k8=Ey5k4?eWst^-o#B0&j2^tr zAsX6K+1A%`hxT*mfX&{nrjr%KN0YSPP7*E8rr~MiqK@?i_J(ZFI|yKTYGPrp@neoA_^dDs3jP^_L)RN8V!OwkNrup6XBwlBbPjam2GD{&HBLf= zAQ-fP;x_K$xJ{moA0>}K9SF1sVhW)VNdwNHO=%1eG23i5UX7qe2=WEWZ5NF_5zPpd zUQDqKpbcqDV-$r&zHEFNxTIQ@dr75mdSM9EN^St4q*jZ@v(N>0?;EEhb$kWho%-Y+ zN1Il$aN(TNOSI^MrE?Z8Sx{0oCR+3I(JgP${6!T@gSmlaUhHa0ae!;lx!$r%%F0U? zM#DVurt9Rz%1*3e(OkJ7)375O0-*BwwE%-DEu@S1ks;^5}bYmwqsh{4N?=y(Ut^E#Vy zyLlv4Yv)Kp<4eMqdBBOd_nvta(h`Di{w zrAulRzTXhklEpycomaYeVMxm1<+O0l0_sc&M+3N-gtKNyj+`Ohd2{A3D49FRD?=D_ z7G2`KpyU!cT_hhtcx#69kj-0+S=nZz5dW>(NZlgL@|v+Z0|^Yk$IW?+?7e>x*a8L_WYi)?5B9MJ4KDv2}ZM>_AV=nOJRc z>V^D+orosz+utUyvUYHLTG?>~152o|A;MbrYK_+_YBVG))ssrVJ8Vud=Ft#Ji|f=%?>#^eq^gJ-~s{&Bve!ev`)~mkdNv zGr0Fffdl;J3n!4!74#Ty!HVii*7&w!r$Q~*)53u{UN0e}Z|?C|k3$tswFO@E)V_j* z0}-PsqEo2A)S9fP_C$z*-?&NXGZ>1rC+FhUiWd_7*m*b`2kyp}m5&}f*HgO+&cOE* z^>?wmK?{FL_KiIK(ufI@e58UA@js}ktzE}WoU z$->~OLL3|j)Gond%w>~mn^9kdV>6!X>nGve)Aifk`#iNbQuG43nmQz^f5cnE8^IAf zk1WsHH}OghJ!2f~Jo89XJjHFD8|Er}hq00ya1O_3>8STBm}&?^uk^3W54_l5MoKJj z7^@HBRqw40S{u&R_hTFZ(TD?z4DTfdhkwa7apgRapG3I@c`wm<;=fV;6EChfktD zC*)G#+_8o$A!QSu&Sv)9#hO;YNoU*`V{4fMbC+~N8BnX$Xn4rm|_blwj?r?!ahv*v$Ub4>Y?=OV9 zTW9101y;&LBG57 zi>B+5#^*hUqAvQNX{DqqKQ>@Vw9-+h0SPpa&YT4ukoF^JJlJv!;PNvu{0Fleu<61H z(07{>ltJh7CbZ{Hg)ze?b+aqJfWgHJ_==AUH*38#P2d$D)B#7A@g>|a|2n{&Sv~-p z%II>Onajh9nH(9|R(1Fo&sEzo2Kc;SpQrjHq)3Ty%;8-+*Ih&UVW|V#l|b#~7z`Y3 z^~y;csHN|R>{n#6ESP(m-ZJ8K<1?#npjN9M<8O@u%}>&og*@m=hp-6pt3*!?y|!Q+ z(9^1A+qCkJJX;Iu>1E;ua8oz=rTn@-yi|4AeNpt-Ar-rQPr-g_IBK};X>4NLg~e}i zm<{o8EEn58bO&meg0|$$+ST}1>_8LAL1-4k7&1>vi9C7SP({#ky<{WBbHWBcf>CNQ z;5%r*?;{D*f>FF9@J?{d?FHjySg}9@mW%xC9n4Iju$PGlG*p&}z&l_iG{0mG7ls&O z3^a)uF7S?AH_(nNh#UGK%)jb(n%KT6V1fb9=XHiVnZK%z$J-JOy}2M!pznbOh4|^d z*^TKyMS3L<-?L>5;0#XL@Q* z03}3Q8r^udyAV3n)iP0XbtLbNS4TFGs$0Z%%=ZNGbX-FXt)e{7=*(;5wOFazrP}x< zcGBcHHq>00h~$OBc~-}b8H(D7_MvJ27fa2&}SA}#p!C^^;b*U8yR zOPv01l052GH2h(%mV0_F?;K5YX~Ipg)9BWNZsD#Zfz?jal63ZRr<*QpwzZtmDDqOd zIUs#99!YMlmPLcoi>XLrmqj@l7g3Q8Kg(`7JR?9waLa>5qcZM9I%f@)yF=x!SJS9` zhBv`=AFZ64_8$K7@TdJn#Jz`yTjuT;o==cVNU-@yN+8*5r_#;!s4yPIGvTzd^0`{{ za1ql~^5cjj~)r@L@Ep3_}9?csDc zPA71>JEs#l?d5bQPWRw+5~s5`oy_T;oKE3%FHWa&x;LlOINgWS>74G%=?qTy<8&sc zvpLEk#(g44%ydL*Y$;53~_#{$Ud(VQ;i zbS|e)+j+w*cMfGmMq=<`wZnbnq@t5x{biC3k?PRW#5VM=?<&RBbq}+NhAwR>qUlP*6HqEWcY@9BmYE& zry|{NkrsJ(BBkWOM&28>5ove75-oBgmnZN@M*fA%)3sj3sP^Jdi@e_;b1*dB{S{?z zMw&t0-$c;Tq4m2^bAQJu+_L-!Mv)*}yAK-YQtN(E9}#d9(zCr$2i*IRIIgs8j`nHF zY)Y0CYo8?(ZizhV;{;+r>xbB>7WKLL2x{CCW7HSMJ;)7Bi29Box?yo)x=}yK{`Ff> zvPg?MB>QJIIc)quP4c41oz%`klQZT5NC*!#*Yc^<5HYlhC2++o{WcGOEwU~@} zdJuN47xj1|W%cOGu#IDKMpinN5ZXyLIc*pfy+^lsRA$bwZnBB~CNJ4UwU(-x2U_B- z>ihVu8L_J^OZ51d}ojUGMFPnM6xTVIO3@JJU>4Ydv3ESN4qn7IxZZ4R~7Q-al!wB{2jo?+nR z9I6&+sbpFKr*)y}cNb8wieQYdLwX?9r6*A_nG$)OK#vS=Cly{~GL~pRRRr+Y<-cgq zhjQ{RIIZ*D(1KuH`$H+(0^@R1YNzOaJ|I~Kg*TB#U*j1gdPLE<$~i2u;)$$W5kya} zNsvA0mq>#W>H&8vJCpP*RLI>L$la>q`SJ*84!RQ!@rIpS42s);qEHJi9Lxh2DkO%q zI8P)!S?S4Visjozsw$+3*2@KzpG#^a!4ut7=S3k;8Ce?N+fB7TDrK!D7_Kjo0G@7c za->cp0LDEJ0Ge2(vtm(tPaNG*cH0Nz$THx%T2G{Oh~eZprRQp^btzVYz=dvV+U&C4Zs;tS|+z&Pl-Z< z5VKZk4`&w``RjVz=n!t%h4;dgeG;bZOUx5U(!LnqS57#l{I#Bv>EMSUzi~niw$W5s ziGvu0w&y+Gb~4Gun~Py8fZ` zB1ARV1taBja3J1Lpd5V-QMH@s7bdpfS5^CXR|K5$q^OG z8rU`@Y@_&8?|MAa9g(oza({(G79R-&w+M=$Y3O)i!nbH<9q0de`Wr-(A9Q z=^0f-wF6e-Xmr?ZPx6yzYT9EUpo@D^Jt3o><~r64jS$U7wr`YI);&g`h{G#3!Kv0N!*sbG8y|Z-YDFv1*p0 zUo3}9`&b@?VTAJ_3?rNe5oNUYAQHlqr5dfhg)}EzIte(#NEy)DTgY@mvIo&KY+1VM z5-?nUBc7Z_`{J(N+6^v5S;+$J7{lRTaDx%fGG=R>krBqJ8fP36#;KYTrv2GQhSLXR ztY;g&ouy3w9B2E%Hs`zpLZ%i@{jnt%X@y3X4@-}+_Myt*pH8=-FtnV^H!@^CMBLKY5;mP1$3vo%J;!Wf*BUr*7r`9OfV;97fN`Sm6yiWnA}C-o4Y zW4__^n=R(^t;EU#nBW1L$ zA9x0dyf{KJSFe5pRhRHsbH z^SAvcy@lnmjZSd!ZJaF!u#yzPwe~GGJ5#LjegXmvt^QsA;mB&5!^}&`4L4H4nE5eA z%JmrM-`uhURh&%eqoCMg9tG>kl)fzML;VZQ5UOsH)zEBbd30As8?G67Vxwhs%Zb&7 z3%0Z+G7Q4exL_N@v^UotTprPe6V_mHS3#rg=o&d;A3185DjnZ83GQAusVSFRZCl!k zkVG)y(Fr{yH)?*)Q8y3jC^g4O>TOZBtkg_bEFGLgY_}^qV_#A)DYxA!GL4LZ-7!lC zC{SXgnwh9%`k#ypo0HR((gAa=OjLq*iAYVf>Ei4tUb1Ae04Q4_Z*RG$o$()j+$!gzIHP* zCuIG`eQiy(yOH_WZ$b6Q0X?sgF`y^<+JUWlaDhGAfL=&7>_J*=q~1wXRqb_XlT8cn zTP;=i6~=Xmk($=)NK`|N{?9rbLgBF(?_^}w9g%9NuXd9T^)>vs+I~`!kzw@i*tptF zenA+~W<18oyo9KBU|j7czd~PQjg0^N27L{>P82yBjL?i@Cwi1_%h_Stw{Tm6i$BGV zXz`aWOF8t2)$xbHR&=O5Y;>qRY;>q9OpNBLFlBXN%2tPo7+vFpOD82?XQViTC{}3? zXDM$F*E`#D*?nQk9tczRu#+E`x^~F@4RK=|jJu3XSHC0aV#oyBO**8DD%B7Q+hE*n zWL|besv!emH|Y>n^%Yczsy&JBF}i$3RNH(76{2c4>Ch{vBiopJjf``%e*+t%x?G{Y z+Gg@EM#k4fwN3Xcs!h);Bn2Cpeq_(fp<?Nula8G{4Wh`K1<{i_qaScwVBRSgk+pr@~r#~7Q zn~3V~+t(|M%wq=r?tQH`GU`BeEcI15Jin0gDg!!}&jyU8Ljl4PW^i?;5X5%iYPmXx zHs@_bBJ@G68y!s~VrZE5Etd2kleDBymhjfHeu)xmph(0bN9|IjmSO=9TD3ABune6& zLg=w|B%-mM<}JbrLAFV@=3q^0LxTCJYAN=PN{~Xb*U0wf+V?2r+I~=WCgLHXh-{Ec zJrAD>I8Zr+GgIV*qPNb#N=F2##f(sP@^U?@(~~QPKo`d=HR41iMFie zO2visz9jY4de-ek{g6_l#hj*~lWvv*B14L!MW%RsXo2T1j-<+y#Udb-T$?FN>jA0dok-PwA=O9g%7% zR$w>j5Y;0a?WgsW3x=YvzopR*N!Vt5ho1UAQSE?)?IypVuQrNj^_0_wb*!&;lcU~K zhQ`%nY15PX;1`H$n|%$9tKFnSeLeE=swefraVO#4jUrHdas`OK2dVm5SMCeEb-%!ZYA&1GgC%%u#K$%8}!V=)@@V=H>BMO7M<<- z;Af~!nu20gR68)@@s@ZxG^bRn6`E7_ ze&kUjvB#(*Q4P&0yGe(rs^c1>YEO{o_0*e)YMbL4qG~tk(73974XK7br(V!g;zl2- zuVFpTwpT>knOFN7LSZxh7d^F_sJ7WxTdsIVXpieJ-$LB4ryTnI`f6{3*XpT@b34{o zyGe(}Rh4jPTlVA1~9LGmABU@cWU@XuUwTw!}-v2Uu*88jDS^ z*z`QBH$p!q$hFW%2D#St-oak#`siQ}45bIAl8%#UkdL?eLMH)`by?hW&OBdBwZDNm ziG;Bu=&{nLvUG{t-p$vvEK2SWJ=Bkdtg>T>5Bsvp^3`v5xa?WcGfdeq_3SLaFWD(t zf4H<$B&#$S?u9ULFNP_5SwyQec(t4|QJ$)NO|Xg?YqwPL=)Eb(nbKlfp9Fhdq*eGJ zi(mPmpyL#q&NBR`$le7?j#F&Xb^Kq?vHnwxNkoSo7^TP2@-!LmYg!#Cqv3}UG1qRW zq(GKy?Z!$v%Q^*zzHyq|we|td&UCH4o)fdowd*P|xgCc~B)tZavJafJ{dR*HaJ=Gh za4p@BmajErqZa3RwRXZddqnE-$AOhLUD%LM_CJSlLMUt>ZLdgu>WEZ-1qUlQfrBp# z4~x{H7{iYA^;dLZe-x=3k4W`@>uYdr>zG>F+Q`OjQBXFMtPPa7ZEBHa+!l#mt&H0u z!E2VoxGfSBRAZDym5W8UFlGJ1l#Nl1;CyN;mWV!7sIQeDNM0Dmh;0Z{c7K?%2b^W; zg#R%S-3U<|n7(W{H#uQgH8-Dt4;D(b3c*VpwW5nBR`UG0OSMa+VU)!HU9d>ITqKd` z?2A#aae{H#b;y}~+*J?sV#Bv37&#qz;V(x3t1HisarBcZ`jb@iO*{MM54BISHiLa4SUe zS#8(Wh~&%LuDw|#-_oi!sPS|P7KYfhOsmwgV2MQz*x`P;{OH%&W!l}srRrA?RcOpQ z-*BXvFF>~tAS0VJx&^YqR*hC;B|ap?^R>SoVJM}V z{8fy#hLU?Xq)>|LAraL9QSl4{ML@U3(8U%*0SoaX9YSpP6woaYGncPg$R6#G*laEV z9S&L6i7cweowM7a96`eebPHsTv*wa|sfY_R*~&!h zgP`f0Y+>N;5V8Mk1s9x@_lVdg)b?hZ5G?((h>gO+&;qwQX(VS)i(WYd=ddiWLN#5S13o^I8 zCt2H@bdg0XEpOb?#Xzd#bcX0fQ_@P03Z^ra@=U?MG{!KUMVDaP&Y~~5`I(EfE^>X# zT%rvZ{0j=1C5z^2BV@WW`}v~-y96@_v=$}F3&ooFRX=4+FJs}zFSn)V41 zrB|)2-QttJ#Hf{K=B)I1f|Kb3y{W@idWcef9Q{5_y#G||LdrxMrVGfsDA zh_9JxPJYA5)Z)bpH1RF(S@3gIgymlOTP2jlHQdq>aT}eW?|V+gJndfIS;}e@(U08R zJAxRpufFtCIrs9eIaq|BYS;eUSN-jX3#d-~nY&_xE#R_^j_n&8vj`CHIbZurYv-cp z676A&eTk*#`PyTS0!Hw`$v|+?oCVsBtbk1oPxeoGUZ6djrFKA;o~P~1;vaws!3P!j zP3R>lGM_gv*KVe54ee%d1z~6!@DxC;rt!F6LsXWbFP-Ku(!@2{H0+&7G~$|JBpW%r z*Ni2w)bmP~YGO?S{bEb%`I=bEQt6yJUlZ5LFhXjvCa#OOSY-T{QbRf|!T2v#@L#In zzf{40SrGr_A^gii_?O%GSvM9rbYmfi(Isx9;~T6Si~3WS?2C0{5r)k`t3#-k;jJjyg%jh{AOTzpzQk>0Bv}R5A~6Y3 zsUnUT=xfjMs6he?d{UYtK;SrzAlHD7e=4S#>Nl>T6$FYVc{`~`dmmo3`0B0YhZlEesE@s4dxU$Qsj`_gdO*QD}=OSHUbYM`&3+;fqZm!?*; z=r&B{>F;xlt*NfEq294c26Ex+=Ui>&D7-6C5ek$*}y4n^0ohh16Pn=&pON?)&cg1H@<$>x^fbGp+nZqW~u0o=$M!r;A# zVt4u(GddN;9ns(GPC!<=Kc!PkHU0fgYlvQV`gt=to5alPZ*~isBmK=|Bn17!8U0$B z#Bd*5b*&dgw!71>o6#iaMMU4wpMTVB3jMxW_Z_&AZwR*a<=vR=?)0N(bgn~US|-D( z-RWn|=&RCB3-RsmMLn756#8AW?lD+<=%ki}Un1vicltpy`q`jPi_nd}eF(nOoE#*F z$>dNZ^C+2GT2ij*{Spzw0W$ivGx{`@n{^2_>%z?>Y*!1Ge)a4E8#aYuB|xeKNHRI} zlO%t+HAzn(3Q4AX$X|I)N{}E4Z0<&>llM}B#wBjs2^!AnJBoZv`%1NRQrt$rZXt## zRbqmgIZ4f&re=!O%wi=Ib(xyEQq8PUG6Qb2GREylL~T^6qW-RA@JfjmOZzIe65_U# zXM*#)lq&I%l8Jgt$y`Xk(?PZkV=pgq*b{*OeoSaBgu9PZjL|KfcjGQNL}F$LF60V5 zi!o?{Vu}&{B>a5kr$q2kxzbh}MShZf{bVJ?Z7))HRw-5DMkUk#ugK_Y&yL!n6i%fd zJHd|%KWmjm?NllUykwW|Q%V6p>NF)b6@ke{m$;3-ju!KjDzRM6{87!^sAm48X8x*V zCTu|lp}VLCr7&urnt4OXOr=lmwS*W|PnkE(E4pN!4(@(cHH{ntCNwL3dY45v0>Mx&4DayRM9 z?>`!}DG81SUaD-CFI5CiM22QI?M|Koe{%So<*!)fcsU&$YHK$`FRZoF`>_?Zueq@@ zC2kWtm16O>nrT!r#&^i{7kG_mtgT-b6^DdV8_t069iCY*+%iay-P)=)Oh9O;9{X`CxFD8cdaQY7OB!LYjM8I|X$2R=GFp#4 zvF+MiJ@&j-wL|33bYguy8`GtmBEJFstW5uGBv`y7l}U?UVH6hSu08SuLW@ z0``-Y=52)gI$NXX*GE}V(jb9CJ-IKiIENvOh$iR>r*s5vqMmSZE4U!F9Sr%1~J7zM(C;Wk4%bdVrQ0u-iOM8`iz4h6$!OU|9P6Ss zR$)w#!i=<;A^fo}tq{%QV#EwE8&3~H=TV_89up)r_|h)s$-V0vjW zG2>$lgdmc^iF-^BCnqU{+rdOCg9QwNi+uC9Eh-;8zfFh^7b&O%idIlDt_=fC;=WPDKWevcl6zoZBLs#50X{b z%cI5gaFcL*lRDt%r2BzD7jy?dOfIFOg7-tGgF>WEXZOI!3`U|q4=uPK5W|AQ&w~#V z6EbWOEs7_-pdJjgdnfUt#URFkE#%-BLERvzArcEEbNcY$4^0v=F)Z&M35(*XVwgps zhmJw*k+>*c5*XeU9bw%K4j;^5P*6(Y$U%bCR#5ZULWo!p+EIhh0pcSs{Zi(5wAvB7 z8@Y~dAfO+@1$9=NA8X59DmpqmmPAc59%nalsSJ#7!7Jt-@il?xE1KuA=JjyNnX^*F z&_MXynpDPgfKJS%j*;T^;HJm%u=R+tl|Nr%h>{qnc|j6d#Pmp)jod`<_(59B@zb;u zLf!6>T9~vTqYK8(Z=&(|9+5FU%)%r~o)LtiFu~TY6JuDmCn+6{Q-xII)Hd{Tk}bBN zo}3(-l08PA)&tJ)DTAyzj*iA*_~^^V(2!CIaWQ2O>=5RUrcGtRgX3w5qIY~!jM2Sw z_Zex4g8mP}bju)M5tu=$2Dw5Q7&EDCr&<$_2N89MBtghD7f?b}X0imOhN5;>ADCGD zKyeJxv(s$VWymwENyMl~_-CrP@vjOj#OOF7KHE7CV_{kUplalz_^U*QRQ);5a?(}& z_7e}8WrZ+c2<{iRC;|_2Q+Sq@K=RtWAR4f!j?%d_E2)6^I*&!o{r57X^DT47{nCNx zd~3jBXq`Zm$*NZk$^w-W%O)+9WdA&)S+SgOuq^y$PC zuzp#Ktt~Bwu$GneNzR%q05@(n%M%)>R!aE~3g5~#? zn;Rq7#~{Bx<|Ys4Z}L2sfc%#Us}k{8mG}rc0I)|ApP~FSiF*@)#LSf-U}UDlhOs)RU0o`e%heGDP!(hD5* z>dzBI$bY&6IDXKmSx#wcv zh(+DUu}zq;W>f5U$T1!pmol4D0g;*ki~fUgHDS8iywij=xYPZ#8;?h0pOAB2wrnw# zE4kU9$VUIowIc$#Rgw2b;_-as8}wM|e!3BW>#;QIcb9(2(K{7BlzC+y-PlCV^87rh&$ahBXH@#S=&RL5lm}FRP%Z! zgcNCXYJ%dy`Y_TQrts#f(MkK8IPOYDF~Ae*Dh>$5c625s!JmIA|#Oqk?TQ z1LqP^>q{&NMF6*PAmJ!)7e5 zBQN;|@hBeTUg-F1-FSXn1xucB!S7oQpvM6w#288S7(S_K*-zKAd?v5UGs@=w^@fInNOguOJhWHkvqCZ#d`w9ZWQ9rJx!|K2x0 zH8Iwonm?IbT;;k-vc1!_M<({ToON5!kqYqh&k;glUgEUhRCzStH! zf|m8a3q3iZT1+XPfJ0$@wx#S#!CLZG%KIra=~J3g#4MgUtz7LcsP8fyzVOPVTa)m( zJLNuVa$m~dQ+S{3aM=2xrm54RPMBUceZ>f5!768+0&n>n*L4wi{JYb^PGSa`D6q+d z)m?NJ*vz_)w$eAdK6By0t&-I)~J>?=gb-`#7zM7HcD^LF^=nr@n^m5yY; zI1;Ra#h~Tr=FFywsjAcG&`?G5SVPskLqkHA;(xLL3SJK_cZ!C2bnLSod0GxbGp?n^ zh1E#I73_VaZ8z02(qa*UA-`B58O~-Z)eea%bLuyp)4#REl>YrLbNCn23u$0>8=9Fd zT~UQnHuiw(Ks#EhaIz&?7>5n$q);-`dScyP<-VcC(&$nhR&`@$UcAELPP;^;1JrOI zvz}n+2_~JDD&ZD*U}QqFfF=hupR`)pOeQNh)E!82i_N41PFbqs)b`3!9oJ&1cEBC& z#8vop;t6$;=_%8}2^TUHaV?gvxE4zn*DL*VsJ+rZUMkhRDhGv+qYnUf$doCDJPRIS z+gZG5QHQ(Dm|KhCZWHdei5}{q0pfV4BG{Jk&;M;eLijr*US-xh=qYynxAK+#uh)@Z zx^n-&_Ow9oUxH!9eVI` zbYZ4B@D#k1JB9kO(x$S;rm_;pxZ%o@zpS(x$?ojPsqlBFK7w}F+u+v&oX9xA$5VuN z{H^3x-zo_H0UQ2-N^-*~nnaiVL{cF(k+$R$H&g4)VylQ+rmejir5t-% zIv!W+SIfuEdK5z}!)r40X8kTIy+{8iJ>JycrN>A5CwMT;&`lwk5>c)#q1Rz43}p%AfU*(Vd5n+PAUhteOo>^zo&NX8Ffj|oF>p92 z3iTs8G78-PWVaOh4!f=3{Y`gFVHF4m|IC<2ggD)NM7)xQX*dJHxU_fEQ1EWr3+Y@C zYG|dDA?^l4(e3M4yr%g&cAW>{)7P8pJlpB$!}c^rh=Nzr*3cn{HR*pQgedrP`U@yv zYznUaP~rYBq|+>IMUn~>(2!1gCn#Xr%RKFr8E&*l`?`pqfK0gAXwGti}{ zi31cooxT%Fm zv|#5fTC;3gD6(jwh-uBTX`w*U0*pm#RybM?Q4TOlE7zL??iEG_p7)BkbT{O3y_o~6 z@|IrbiGaK)UFUf)B~iHTE;0o@2;$TteQjjhH?KN@h zWK9q-mv#kqlvaWEVr}yd=g@O=Y#<4_)u}h8246@jkg;IkKd}f5on`)40ijeGwFc#C30Mk80gQ4jS)S8ty%`k~wLIZ^b7&W2 zS|Z~k6e;<%7YIos!*F{^m4dx?m{739OQKMvMX&zN?2{m~lTP8N_9^Ee{a^i$bi#^= z+JShrQM$40nR9HrAjcN93v%)w+6CDY_eNZMK*264 z5+BrFBXiK`c0ooT-!6#%l=eWvaW}5LM&`H^+66gbR=Xgx&utHc#yFfpq^b&$I=($L z=J+$)1v#^{U62E2li4m%llhg|z5K`uYU!?`5Q%Dsimt+|LTShx0oTsFPp8IeOMGW( zCe~7mr#kJBVdUU^?2K4(3;0--QrvX5XF>Q3#Bg!(v{h*E z^r}y>1L;8vtYC>lbUJP^kkos2dz|nVUA13o_{H>JhM=?qKcD)PCk543UD&*w;J#41 zNbAyb@_O@xldSZV_2x;%p>nd=!JNaU=@*g+=u&uBeLM5`Dw6iv*jwa57e#u^RhUAHdnT;nkuUv4pTK#R$-@UUyd%}Bvun`3BS^>G4Qy- zsExqRP#Nr0T2`$qXi4pYw#yYFad1H5=;T%971A5LT0BHP#X|x|r)QYE#OuN+$4mJi z#LrZGtNu7X=Q1DH>vb-!*LUm2u*rS8~WR_;%)r{S@D7XnJoEC|5lcKtKVmE z8 zha;tsO@@b@oNAPU;nYmmh1#WBmYLZ*k`p;y%--iGlwT^RZ<&^bN|fCw?h7y4gW-h2E-^*;3eXqxQX zO;~bCJR^do5Ju26r_(w~AId9u)2KxnQO7S61tF7-a^4FC3;L+Iy1N#=1+{XMjv%6RdQ1G8sX(Qw;a95U6QJ2a7Z@J(Nc0;r0dd$&u*xb>cdFkz*K2 z6MzL_G!m6U0vjqiR^#kN5_BdhMO6)@i@B)Gy-t^MxK6*3&5N^r1XL&DMgo~`>y`t- z6ha_oo7|e*IJz7VQ!Nq*kuVTDi4x8UIMdAifR5>ZAU>s`L73xH0o>DMGx?2xY^UI- z!xck6#=(8_W7!N53vPCXY&J`p0Xf54&vV*ooB5R(>dL*sxC9n-uXsUN$DTeVE&5c{ z>0D8#uchx~*5Y#+&QoXPs9~NkUkY1vRJrmmv%cDgzBdkS=YFBk~;cpasYz@Gvt*H3H(%={~;3s;EM zavWBRzmaS3H?bSVBxx&D-l}cB8wSu@N|EpU6C+DC>bf{kn)F^a$)Exqz%^l)TmJ#`rxRQ>&hAstu0=S=04mYoSyNg9? zZg;&)#|htcUFo)E9BN4^rFA-Fk&ZzfSEiVQ01gOCTU_R5vj2ZeT@hTO(D&CY|wlM*eGl4U00w`bt_G<(O(wU4D zu~~=&%s4`m4!~LFgg+SgksR|6EEi1N?Ks-VC2vW|Ak-+whHD-@dKEd_6!YQ`+O!dXFEp#av+Y7B#;FOVj9TH zJW3QEA|uMQW%LH$kJG+QL-n_5AEjHbJ(ZTnK+eZ} zgqIYLE>m$^X$6pN&NUS8z9!C3Je;;Q%~^y#1%;`G z#}xVwRqCR0&?T$8!a>*|an{6kK_;HkF38=fe@;!kP`fZ(B;?Pj52U7+YvCdxzqE5o z1gWjgwFffs2MCFn}11qGKt-$;2=9* z9xx8&jk<+XwK@ICl=sIzVVZfTxWi?X!BXAfT20?s|0V7^?B&es;{O@X#s7@|obsQ? zHz#nuIpN+!(}IS+9h;z`~&gr0XaJ5unFC<6nCH5Wo^h91!v2JT2^$Pz!EugX`A&EsD5d! zXcK@D)M9Z-S{oY0Am%S(e~hIHdl0FDQT`Ykh*MjXTf8VL<>-cL{>;Sw?a9OJKfGO# z;RWr2bl?rnk1?xa+rxuS1*f>$krt!o=x{gHUUVyJPpi$MQ`-eO_1tzr&cC=_kc$x$ zZ)3vli+LrctttCT%!gFBG|WVIj5%c#13o>nPyCCN-Z5L$e^0uV# zQN#f)HJTo)M3E?Hsi-4fei zW*yUJJzKY9#K|TV)E85-|G=<|?O%nq^Tl?;dJ-S%W&e1vU1tAEzMZ%KlbD^i|81h3w|`;P z&hO!$skL*V=W__2+P@}5pP2H6^PHxLFr%W(=yj! zr`DVK&b~0rFYxwEZS;vSKM^6jM5LLXY4#c7EcHw?A4=QeX!;*vZj5hEG@BFalg*uJFE}b2gn4WH z*NNuWiGNQvH>cG*Dm$57N0|9IL43C`Z-~DqUM1Dtyvq2aVXiiAH1M){AAVfP{gJyZ zfG>>i4D%qMQ~=YA$~R9s86QP&aVT7dIWiZY=-uNegvu{a8zX;-nvXWK&%zO_wJnAu zAxj0q4-A;!J9vmSlPb;1Rl+=!d{v4Hs+qA@3G-@kjo?EnY86N?HCH6vkfav=QJB|4 zhxmMoTJAPuE;27#W`2-ttW9;p*YH6l9dW<V)Z zfE5!Yiw2s*MyjPz=BTwgBABl`SToI2|DZy-%weNV|0K02!i;f9LNk-n&HfJDE^|bs zStG6#W>eZX4mHJGIK})n^$JH}tm#QM(`K4yo^9TZ7==m<@UzTUQa*4DxP(6q@qiV{ zD)1G8xAAJxrRH;;Uhbrp{MBXN6n|Z!T69P2BCx(n)Cr8z2FD=dM_u&09TK}*n71LS zsp5+@NA@qP z=*b^7syHIBQAOzHe#clw)3=H$RI7q?v#Y~$;nn6t#w&(-Tf~1N%banLQVpiyw4Q&o?JcHqTh;DAUczi_9ln zk4Ko-Mm`v6z8v|!V}RzEFNhBX|I~uo53HG~@U7J%m+46{JNG>LqW_Py^MKEy%KrX5 znapDXgcd+Rz<`KI2?<>YN(ey`LJ<%GmH;7vU9f=Z_w8tkl3nCV!H;RH&vnTcia4j7#=MzuUi{i zw>GA3ZDHNomU!Ljl?ipL#dT}H#OhYhw*QTW)qfA`=wI8{t^Tc^?yjfL9TeO=!Vc%x z(xG%Ga9{Hj{@~f1nPbNervH)ipO=K#!3ix|HncM{Li1*(OXkg72r&QUr2fsErOkZT zcxz@=_ATljB-^PLDTn=IQIA-ZLEj#W#iG9a5yxhh-Q2+}i{H|teELX?C-iO|%`|JU zjF&b%vXFKrd=t${N{gnkT~-1;wi9cZ?sN3>0a0pVLewgJjaJErHsSXxV^MNy>XLYj zzDX6)kui3!*$GjsUz8j_JT>YbZ$U>Shf~wYpnKS-kdKdtyXXgyGg;slE5JMBVV@Z7 zJ%VDMn5Yb~EcE<8*Wo zo5lDozSa1d5YKmEK6yJM>SPQ`P2MI{N26(zp72YF*F^2(v8=UGN}DJ)BZ0nq9*c&$ ziF{!aNsZc=RHC8rmQnJ&bhDYTD(b;9@xtgZ^GQLoRXockA74ekg%L&Z+s8$5D#j>2 zB5KN?S@Cg{a4c$`6}8Lf&3W{Xf@4u{I;=1nm=$%cj&ic1{KAB&kvAL2y(pEuXq8l0 z8y)m0iO!4;w61kFX~*p5R^C{L>_}P%8)L!w@!YB?m6A+mu$$aDkTg`zXFHI?8;;>`n@|D{Uvl*G9eQGtpGbQc7fA#4a&!$Ddh*Zj736O7SC8 zqxMwI2*+qQRhn)I-C|Kk+Se{C>X?%w2z0!+r$fr%!t|&J7i?kZcKE@f+%GS zkwc9}EK13W(s;Fy)MlhcovBcx=3!ba>JrY%k6PvLNUEmH3VU!RKKa-CUgij+ISY_52=^dHZ+WH%3@dBIkay)-`K8>4vIx>Q=@}OqHR{x?QV)D zBkD$5ohe{Wt1}f$FaFGrhM4%*MI(_9!}${(Lb&H41YNLLXQn&ob zNKk(@jvXOnf`Ieg$e{*i>-J~H2Np){!-cW6(Ey_ocH9-^#OR-JTgl`3Gb`dwkopqq zb2Nq0G=$PL2Bo}vt?d|_xy_%R4~wWQQYn98QL8MfI7dcpxDJKOs6Rb8Y>^f<3r{ZO zwL)IYH*2N58ry~TG1<6c(kn!dkzUthnD!OtHbV_1UKF*ablPV{ZIh0UQbwf54?!cL z3QkqFIqgiL8pt)Vef$V(%uVgesAUnA+Hujr!=u(mkj+u4rVtMv5w#c}bs57)nNlx} zMQLG2uHmb=185%3<^LU>MLlOMJghb?pPI|Eb?LObuc^T)RMA?;+eTeja~!R;d#whU$fuNu@~|0oo*fImiJJ9^IxdNtO{0yd)2ygt zxHO6S!T9K?6UoJrF3YDIuv+6M+u3vE&2ETV-W_q}jwN-AS`MQ_DY&}RK*&BNO{Yvs z%BBX{I%#-1`oR`3irP^~Y#;WvGWL8Caw&wh+{RNWRO<67Ylp8brQm*|hMXD=7!kGO z=s8d5^i171Wy$mrQ6^>jI4c;|5DlB;lhuus3{^Qkb0);YnwTVR9H--r1Ck^+$0l68 zvd}+qHT_4-?W=3%qz5Ky>JLs&3Je; zWkVZN?-Jta>{Jrh`h-nU6lTTNl4x5Np_aiXGs3a(nPAf{N-BKx^mW)-7&YaccT=G+ zDdb)4vr?(?vqLkvU6|T@snMzBcR4c_Mm=ehOQu16Cue6+PI0$7!=9qd`YCjBqTHug z&Wv+jc8Z6clhSQV2#eRU@FweJc+=@I<5DdAC7?=_5*C$aQH2hx_`G7%dfvFh8FPi` zrqE9AU8zk`wQNp_rHqR@4vjjkHi)C+Cc=Kr3wy1j)?7>JQ0|c@zXbVfqY)URO1?ZA6jJ?2j_-;Fkzb~W!W=2!5vG8%odV|GJ|W?-)=|@NJB@N_V@Nh> z(z(ATYC!@`Mn)~iL>S}5H7xkrKCbjC! zsQs9zH}AM4I)rd5YU+F<=VIXwuT^|poa%I^@Mt>UlSz8iDK8HvyHPH01+B3ReXQv5;96x6ljjyP% zQYf2KsosQ3*oSy+bl|w?aNav2il)(Ng;(PVgW6a~AvNdY3!{#_Bj3_|nj6p-o!@vO zl0YLL`ah)f31icF#Nzb-Na>8qZ|h7!hLl&*$jyi}-)>U>L`ET1Jv&b2BWT3TrZFzx zSVGU%5D1%4ljMQK!7)=;V%27j!yVojw!|hEf6OFb3T7pXt{7e^cI3#m|hlin@hQ zo|YeFhJQ}r(?kXZ@aNNLfKLa+iP7MX_9wMYHx|?q%~Ush>NHax%@!lYKk~>B$Aj z6D$6tQ*3y}eqC-AeoEzIKXy(h2nNW5}`~C(kn}ZEaYr$zF$>bF-jx}X9a?EBP z@-zIlu5>Q6O+zYFLi+zTl<(?G=={18`YwUX9wn4Uv90;6~FXuPvf^32E2Db&OFcfM^c;*X{t>q<8ktblZdC-I(iOoxE1ubQ|l|JIt#fKv@Qc`LsPCOTvL5$ zWYGrUe?S8(9%j&KiLSM9TDEP3@ssUl8MED(9CCNR@6`JKUNw+LXTd@Ytmwx!AS)*$ z6QXURboIk*ai<@~n@`{k4p^cd%DMcr6SYcpzfqsvAZku1G=)ZE5L&0}B<9@=*z<8Q zC}A)s^qoIEH=(WO(gn?)&Zo%uY6TBMtaO&`NyG0?rNJ^<4W~wpmi?gCeng`tV!ZKn zx~9xbM@5yE8Y88c67D5G>7><@lFf)$^YzV;FO~M@%bPdSlz^^}erm3d#=;xI*rs%x za=$s1PnL-sc%nIf>`aJ-t&-N!ppa(JG($^Wh1sC%Qn>Ckb6zmr5M8rNiH9H3ao1Bb zrM|LDJlvg7i$MgzKPVs5k<+As#HlHeMuWsSNt48;s3kW`oHxVkPFstNG{^6je5B!- zI(fkiCo?kwH9eyp$JlcMx?hSu+*#L)ZTXMAn42H=Vy*R+9ZoP^16_v;-=*nkay$>& zIo4j_qHDN$_HrN%{iuWKPKDN*r#1ajXSf+aHN*~#)=|c?mTcdAnyEQ_0U&&pGL0_m zrPvEUy*7~|P1o3o7+rbGi`vadk4*1PS3^_6J8cmSWAFcbaKrqc0r z&khU1yGY1ZW)`PM3sDG3TXh-mZW%zh8C5@k*lLyjxC9!X68{@vlYiXTC2|0XTx$~x zO&(KQ-ABP4PK4Sjzi)~L(FgV8lvGN%+U68zH08rD^%Z*cX@&O0Po>si91w9=Wo*~k z8f|Mc&d5~0N%R0)!@g`7r?l$7J7YjJ9{$?kjA0z)b`Y*ZZ6VKT(_Y;+4V&wIB99Rh zck|n>x-}Z{(s}}S$Mk8hD($C7q)E3iTW+$+PLmSCMP`drPH4$*X3cb}?d&a(Y#&=_QwqVRTmtuTBhdRuU$U1q3=_0pKA-i2 zIkn1+l8=s}eo-sBWHBd-j-<=8cF?;dmAW@}&t}f^lwJ?+wQ*N#W<1uC{5BTh6QP|m zB*e`vtZ+RU(7O#c?1cPfuFf1on#7M^qJ4!XU=JGYvxQgiw1 z7ixMb;n{R76{NJX3+)TOt+FsTun$w+(tatxWN9&!bQT_joLbFwm zr-)~|ZX>a38a@0*0ox3yJ(VhW!)V|`%1tZ>T132YUe0Bm5tuHe8LZ2x}*W=CWV1G5Ehu1D;WQObbU(TQZ0NJVQh zPG1ec6wjP+xzkQC!<71(z&m1fxs@>Je;D-G69hY&Sa)$@4P_eD_hh=Pl2lVlx-_OZ zMXn({M-^o6e)F*{{m`J~<992}7(gl}4G2|@V2@=8;H{aIE`3+oTtnc?$4PuK;OqUS zZJJoMEkq1RFt5f~+hkFxWO(D@HEIJIs~O5V!@~X5P+O1)xM8&ax9UpKUP?L7{bw@W z;i5?<4S(c1>*p)BqRYS>fNr*!ppC0*B`_L2sElqHn3*-1DW$!GQeTH;K#V-(@~JDm z|64qE&K7cQGIJ?ziD8Ft_r)umsJQ-f z3j3>zeAI4}SVEHYDw}jo*q^j*{$}c6W{&rf&$hq(mI~%YPr=+*S1>O%Z0G+~n(RmY zNS~$&R3RSVW}ad^L zWb2Bl;`Mc6AHX!XqBrCnoXe$4=wS8PQ&}Ff$q+PSE8GGf|C)SC9uih+taBeI{L>=f)YvzabYs zbzD%Thf5W7OVwD1S0=8-T-xZ#<^RuC*mLqXMC-;u2}5-IMwON87AB)iTQJ3i&Vz+_ z+l)7jfi-Q`vuWa1n?47{mgaD(CT3n6ezwB4A2u`@!NQ4Vx@Xj_j+yV(?=hKWZ0gsH ziLx`Brn4~8)pUw7g_{z-?qpzXT^V)>@1mA$f+P!mKI5*$EW4MsIjz`M``k)LckE5S zLxPE6%kV`Si_!$HP546H#IR#L{2h-f)Jzi_@6V5)C$lyB zpQwo;J$`dJ`CdOqY{_0x9X69kGrHb{ivxvr#zp%&kqzB&v={SeQb#vdDOu{qKBsv_ zN^L4VDAtN5c62w4ugB1ytljo8vY+jNdbNSUIn&yv=fr-&0{*9&fp%K!tECRup*26XceAE?JJ6(5+z?^rc2y6xl`JtQR43v z5g*t#{K{rQoA4W(%eDtFSrL*AiOr)Z?Ue9IrA8gbxvUotuQ6&}!Usg{E;|L?#uM@v z=_lckOD~d>-8oy5-iW%NN#Y}-;iF`CI8U%Q*y!vv)JY^n*N?1Gm+(R5W`iu?PAL|0O*P{pY8MR7 z;UCWvMiKOd#sDPk#x@+qi)k_yT)8WK6FOZlecb+4yAp`^z7nrvyZDcJ?F>%#OTSf zcsQ8n3*ooHT7Hf(l`iB?r&GW=w9a!1`w%3J)Xp3*8X_mS`;jun$9?Y8$he@EoEe{7?8o4j=>>Z>g(K6CxcpJ&?S7H6ii3esL~e} zQt_A@0959<-$BL6L;Sh|uBG0wz7H~`Opgwk!mcZ1&SJXALq#3_Lhn>kUDt6tqVqf5 znL$G`6}q2^i7Tqx?0+=v&pfser^^#I@GYt~TO-tFYt$vYN7ZJ^9cj>^t%Biwr}KFy zwvHU5OnH^cz$x*h-R$k(sBdvA7Cmx7W>T?6n2NSZ?0p}Jvuv1C>4=*6j4e% zpGt&AO&gYT7uYU*JL0QfHKv$Wt70-wl+)gD7j?Y+tR6qJXOgfN`1UPt*#A(8MdQO) z0{WdP&YSRoI4&DLM24nD;+iUT)bx<7x-@Eg?&l~eZr6hny0y!qs1nkmL#L8he|}(# zw&@{MZhGVmJ%SL$+mhp5!pBsNUtV7;OeNSzg7n}K6+U^jXC)2rn}z37u=JD#KM5Jd z-!PAH)5DIBPz|PsA>;k2tWx5C=4TH%drVWN=Pc;a#lFL%OnNwxA8fnZWD2eF(~Ir0 z>|-?MAw_oFUbm+rZ)Io0><~$gdhQ zCYN_pe(L&G*IRW=Cll$aW?W$&u;@YF)2S@{{4{!|G`u_^J!;#RtVXoq$UmWLl2Myf z3Yljp^vsy`)}8{mj;@MQ<{23-Z_|wNpb_1r$)u-TImh^xR~x#AbEJJQW9)#P0G zG>vEZfp~MS0kpM(RKrK>?4GgD@08kV__R3@w+eSrEp&S!iUi-8SWR`0``*`;h3R|a zA^o%;IZI=zW!$U8!^^o+a8CY(Qlv|>R2jKZg&S9JLA4IwpuW`(-o7)kx7(|j?p1TL zvtyd~jE|Sv%(#sV-D}(!&Agcyn=hBR&oU3?+bpG~kWXjZ8Rj`go_{6B=hHJ`)L=Kp zV(r6Usa13|mpUlE=-}~Dhha1_+qbNc9#}k!F4`QN5w$wnIR39?rJPsYLVD(nj$R$F zPNj=KZK4j;3z0m3g@7N#wV$hGJN(%uU~lX0GNJ0*y0@C1o;0taJVZzQ9O_omO{VWm ziGLd=*P188+tRuB$f!#nO3hYidcOKn^B8WIeo@;IQ9pic*ff6n9ML9hvMH6@H9uNR z5311`uUtZP)U2EpwOYjuw>s*W(7kQccO$i-Og_=A+hOLlRH7HJv<3ew)xv|ETNP9b zqoLtDbv+r~m2QK(11+NDqbQk6sQc~|KQKxe5_KIArQ9C%%p~~NjByAW*gGfuAWDT}&M#XcCk>ofSp7<36=CIfd=;r6lgWC3K( zq>OY2Cvgm2vHH9y4OG{a)*COJUt%Lub`St=gC@w?xe7^ zel+(iqP>8O+-U8fhT`}O;ysHD+-#*}Wk6$^?ru6Cri6dDEv+-1w<-2+;oHmT=1%9j z4fD;B4RJHmB*YVRCALVW>!i^n`N(~6pJoy>o3uylF!A=|0N!^fA!xO2!2I~SU6 zhnmfXc)H1g>nP6-a+=Ld)7s66ARa!6jD3cTdazObJwuW+Mr>nT>|wK%P2K*__8#QS z!;~w9@o+xp#TRvX!ToSI>XkQUNYH9 z;oDpA6#nH1|L#8u|6YXu#vg=FHe7e<;yQJ@=9_%2!uwRUGLt&$(NSM+QT4^0&QU($ zRQIY9sc(koK!>ltx%JM~;db^Fl&;fCZY}>aYWZbkwBK634XJT6a8qkg%PF<>$gIz( zY#X*IXNL4|7=5aY>RReoj)B_=*?BP~^R+SPVw#idjt+hgg6GU`=#JCG={IR@Bk%?P zFoMTboi-unV{Y*A@J6Kdxk^j=r!TReE~ho{#Y7zs|Bc;z-OzOvyQLWawg25;bb`0Pn+U0qX^vuJKf zP+4+vO-U80FDkDJ7SE=mt4o$v7nD>4r<9#kR#aM2T|7T1sVFAfxzNfUZB~xXotigc z%)}tGf1~uqj52!)$|_2xE?Zm@%qyyz6BNyyFrd1;Dl>C_b@k#ZtDHM&T=9bHDVarO zlgCY%Qk2<$YGqATb#_JZ{6&>jxs!^^CXJc1Bsa*Ov#7Egb8nCj`~(1;tf4ySTb&LDixPI=+$*;oO;0 zkefTHX#AAA@J8oNHtX311ru|Es%2Hhv&+jfWF=Ep`cvjrZ~;`6%&w$d${b7?QBqvA zxMogyS#i-xCCi|gGtI2zO&OOvBYRqQUP1P#f?R_r4~YfK%1X-T2J=d&5a(5y9aLW9 zCmuT`chtmVCybuLc{kV=?x4lwcQxl*P`;>QUK(u#M^895EvI+y{uybR1JnDbXQcIA zICvnvu~#FO4jtUrY*j4kJ2Yd!&>^&gRu?W@YFDbNO6pen+qKG)xqX)}s$gEckTSS@ zMAbsdfwaE!()vy$o2u%$Bj#1qm=yb#mR6Qf1)5zkm+~{MZz*ZhR`E%F7gsK-E-9{F zR7ud1VlKfE6^pFZq`VxvQdwPHX4guV7MCopE?ZPlMcbt{6~(;Xw~AE2=FYC3UAG-n zaW$p7RZ_X6q%v=DP&L1-v^uCRt1d6eSyV$AQ=e@^QHq(l3l~yduc)RLHF?n~RY6Tv zNp^Yllwt~^!sPs<$$1l|1`B5|omf*%1zfeLe2HyDRHsK<@hWPC^D0W_rWMbhUCB0! zN7a-DHB=NsscCYR8l5|>AaBZ4YKfE+CDm0yNjc=F=S|=iIIpOBc9m7*AZjYhsTp%+ zE~4gGxyg0(tY}V#YI6BB2LS9r>&32nf@$AL3 zi_5B)1*cTbUQ7v8&Ynjr^Mi8gKx})+8JkxyI&UI{M7>WX7aV7^X(CgmW>3uxO3PbgQa~{kjhZ-m z2Fjk!9MlS`=nTPu4CqghOwSvaS2T7awEZ)z_0cvMZO)>bX5EUI1n{3_<%f-R0a8D$z32 zy^v+;B5M9Y72BI^sq0MZj~-f8UQ)8SXkk_ELK6g)Q6n8)#Dx_cLMcB+*R=@a?+xzz&SbAw{lZdvzHdlE~kEn zGFSHqPBKGq7NL`;O=Z%tQ**{<+Y{QD9BMz*SWNS%4|E7OUn;oVV>n70&bA!n~XJa%nD&+l(D`<WPZ$@J&#tPTLOr+5=`p5p^XagroX@ScVNN-A z{P^t2)ZnR;tTv++&b7eZtgVhKBm*qnzP*0Ak$rz z)|8jm)mf@L6APy0a&M?kl*U&&rRLBX%bu9&v}EdDE{5otndCuTM`1gs`j$S}p6_xe zO&Dwk%R|RudO^8tN=TZyDJtmzo&F^=(dlIG6ol``mRzfF2+am=$;HxV%Tlc2sO{K2k6z;I767fWU+72sI0ZgD`q#`J* zNH1QzIOsQj(ZZ5`b7xo3@Vf8(*$WqzRQ8)&vZS94ed3gUG(@F=#=@$8Rh7m4c)s(0 zIV3&3AN`e86qnb`E$L@R>4Amxeo{$gMM-%-J4mjW+qbyy{JE7?{b*EPG$ABozcI#6pU-1a znhls0nif>|omX6JH|Ca<(#jM&rAnVqg@o|9rqdqTDq(xspvmkJv{~G{H;vp&%UG9! zFh>{DT!b_mCb)Q9DQdb<~TaUdn!!(#UQ)vk?h~ zlFm+OnV*iH0pCVl7>>ChF@IH*aBq{RMw5=wIJ#*uDLwV<&cD(zY4l1mztk24=4Ymj zAB85ags~O+aB8!KSXDKCcELWQ*rFVWR-9>Vw;O&%};8}v12)3 z_(;kX8~T3V+2zFG>)-dcGo(FwX+j{u;Zk=y5RV1J>dfWHLk%BZ$LlI2k+A-!|LgXr z(^`VVO*_EeFlZb}p0Tgz(jNGbu>QBzp%4UfjD1qwwzL%nVbJ);2>E{^B{bd(f^JJSAuDy+yFzDC_K4|pox%;#CVO@{j@USrG z+z`;#-;GW^cYiKF3=VE&&mauCdU!VvKco@gXVR_b^0WMhQ6CZuhSb}mPdUQy%zBRc z!ypW}bvItZphsg!Bn%E~#0!i*_nuf#5sM7(EtEScv(y;gr=FuJpKExpdQRKCTyOZ{ zc7xx+|77@}dJg>;3?E$2q5qEI1M9f_ABZmv?_bBo&%}`Pb3i?Z&Vh#atLI2}fZ=lX zr`@nGFr0fuER-HECmP<@Zty!euZDpWF9R%L;N*`$`V0dnpBr!|pBr!|-3Hw8vjKPF zZNQy)8*rz-HQ-J@H{eb_H{kW<|nC5@3$NB`u@KmKg!*#TMvWmx^;IY3`V(|b?afHe==fsg~8Z58+RoP z^4-n4^)MJ$w=OHEP<;-lf0psG@KeDL5`fP$!P68!2fU}^7lP{&zRd8hjYbyNfOk?l zH-hU3ZUdj8?C%0EQT#r`+czrtKN07#yk4I0@Mk>yMGsG={-(9l56iz{X-Ry4>85*l z{hX|5X2B49UA~HM74fEAVWjnexFJ{2KVyGaqL#3I<{)*Ck#x$;jv zI%rD&BKj+%DX4Nav%h=on{HHcvi;qwgN{%c<&Du|t0U^}zBm?kH{V??$Q;n%e&nR= z{(}Y=(JfTYVdcfl!S=dI?jX6{R7VDzYerQhSdVb)!$CuEOSmZ0H5|w{kQ<^wMy`m< zu}&{D)43MkaF^)1=0?>8gY2zvM^O%IC}!PhnDjt(z048G%)~x(9oN}mV{koa5J8Y$ zkTaCuj^MY<4D+68-Usk|fBQbjtQ*7r#&UqQ9LN_h_{uFVzt-K@kn6Djha2X&Dkcj1 zzmkg!#MG(D@R5frlj!x!?{<+hPE%sX&`XvwtZ4fh50{Y)53ANER1(Iqt`?104*4n(b&%N_i?=Rotn%1N%J%oqeXK$Z)u)k%^TUv2t?bD^w^K} za4rj8v`(SLjrc4N=e*@b>nygo5nt-zXL$Iz9==v_`Uf&*xmxk}*)dwyoA<_k-r?b! z6%V2Ru;QY>P4T9%-=TPCaPtoeXdkzasj%S>u9v(pcW2)%4YhnC*7-wbSX|G!?MVHX z5j7__#o;otW&O$Yl0`qe(BMne<^4d(Xm@Wa4aWCi}t@7T>En>xaf>D zM+d=nkIok!onz53bh?$`I$b-zv;9dLr8!p8_2_)z(fJ-+{O5ByFKxI3phf%B8(jM{ z09@-F56&NMKUU_^c@12r`$p3P1?f(jJ(c!wz%Vpr4jC;Pg)}!+} zxc2{hkNxl9oNiZ65X)4YRJ2Y7xVEnb*Kxh<(fQnCzt_=EBVXitz^DVPW7?l`aGh?A z$9@Gk`|tM8w|R8_;o%*U_U}(7xb`R4!}GzV+$G*xkN#$l&SM__q|#5bZU^+!>}JvV z*%Ms*f3k&Jv!|;V`$O& zlL@ZV9RV)swzP)_S9o;p^61>}(b?g#-{s*SdHA;;o`8;5$JGp+<8u3lafpw3cdYY= zj3*@@C9*a+{a}~JwgX$E>cuBaFi=@Mc z9ZIilI3CT#xW!!Vi_39hFT6d3G*9zzsgK$|!(%_x!$*4fSP!4%;e{SP%fsh;_+k%V z>fvX2__-dw*2Ay%@bw;khlg+W@P|Eon}_f4@RvROO~pH-9=@-*)VDnz{*{OS=;6}t zq#n}0vo?#QBV4vyV!!6?6`zIeG{vW2yQkukZieDwKU8tapOK2ovngXee3FM3dbq^F zySX0_{rSp%8@3lKF2~C}LUd%i?)*mDlj!w-oljNKvAjsXEjnjfZ07qtv7gb+;M}je zVYmL%><*aA@+!9B}Rb`5v8X z9q#(i&mr)l)7=0r{>%NP|8;)%qoY5b(vkd;>r$-GT$VBH2rW9U#o*e{72x8h+`0T; z=Y2moI!9X<%=_Wae9g_b42QerK1j{u(x5d5T*r03N5|gpv-3)>KjPD^u-Ee-d;hL+ zIVNCUrqk^QuJdyUxa8+J@!z9!zDMUWaQ>J_FDdtHJ@)k5z-G~YW`H;H6P*1_qnFGV z=6H0@_vmbPxLdw|a=2T*kAX}6$T%;-Gr#NWncod{=677aCG_H@)}wQuN9Pfxv(U-} z@{e+Le)dI2r1NtSxWsi1bQXbYo%1|8*ErnG&-D&>^Hb)VQjT@kkv!>s=F!;;F8;&) zx*H+P8(eoyvKGv_U*$63rHRAceyJlkSKl&vNqz1EuJdygxX!neJoZ(N{yay2naBPm zkN#&K`)|P|pQXKw!URG4Sq`q_s`1#b0B3#oe0sA-=UI==Up@9;d-%^DofLM27VZC` z9zMdukM-~?z;(Xe+p z!7+|La||;A8NZAETG*ZC*t`C?*B^LnKaRy|;pa1XVSo4>CH~}l_=z6A7M%Ubrk5;N zINa^GZwBX&_Vki;<$jsg+2rVO{_jDY4?BF6Bubx;gX{CcvmSeXZj%@OXiYEiXOF|V zs}`Q*j1SpY;oZTRjii?>GG1lQ`M(%DG94Xm3ZiqA!};mEeW=iKA4GI&p)=F5cXbv! z{&2pH#r8^vyXCS6T-VR99DBEZ{sPX~M^`Y_tDck5N2 z!#O`Ua$>X`>+n$)nfICC{82_P$!EFG!rZO@OB{Qbuk!HQz&T!tl~#j09q#7yz2G|D zEsnjb^N7RU`u~i>3phb6&x7-a8}BO~`!~SZAGiMRb+}vq4{*le9JA!-0`R89^64f0 z@JeTV&Rmw&%3k=xj{Qi1^!b9r-KSDt250~IUaR=?mSfNLB!ynQe5kmkLGYc!M+&6R zpB?=}XVm^-6hcKyNar@`DJofK8-0hz~b@&)Z|KH%c zp8V*s{}r6`%&jLKlC3CnHj(`7?{F?-;p4!Wji#3@$2y$-m-F>ZN5^fy3mp3#5uwjT z4tM*3YLCuo%Dxs_7kcbBIQDM3_c`2+Yn!9v_LDmtd-hZMN%y{|tMi7V=T+$t9 z&4L-=T(8`AbfRPLwxeRl-t7nGJNDeKw#4{pp<~Z!Nd2sKxSQ^BaQ<-9eF~iYclq-k z9e1AS`uUop!+yTcPSNs~qvQJdzQbKVKL+Oy*PjmDcxYiiS$`YG^8*!^`$Ll)&h=*; zy?9yaaC4qQeqP{kw_a^^xT~|r;jAOe_ljp=MY%Z8>m*;r?t$1_jq@vwRK4)UPi{hukzL(-J zMpk&R;&ZV*O7R;|UK13T=LlyiF4v1o72k&PlILc{|4R|)N@d@I4QN@T_*UfGm5R%A zpEoNm&v)LVcpUm$6+a04S;cRH|F0;1opm#KSMiHN_olyT1(4HiJ{)+r> zu6Rq-+m4Dq1b=!c&gU3j`YZks;yqIF+fmQux|aAe7Wptu*^jaE!5qc;`|7+@C@$lS z<%-LA@odHWpyRw$ak=lfPVsk8PwrGa8~H5XFOj&Cp)dDah0Al*FDjik(7xVQd=m2W zW5pMuyuML}ZhC-Uuh#bc;HCn>%e@yhek;?Lno_X1@v_ZP2Kd@}4eD!v%;|4s3Z z*p}z6CEWqA->2+vx78s?MEQ%ojLQ#J{0P{mD}E*PM=RbJ{20Y&qFjm;{}%pTsQ6E) z&sQt{8S>w~&(7n|PhfYyvi}tM`HbSX&naGn?Kc&d>v8{3T)q$Zx#G3Z|61`Sh*vI* zNL(_WI{@`m_?yUwW{Qtt16ooQAA@K!XCd0f56b>9|75Ujk@p)+P-4&PfL2t$1 zhW%j0PeOf@@h0!){%{=1_XK5+u!55m?}2)93OFAwb9_GL3}ycg>@RTaCyO|Jy4NAu zpCb5wztVXg$2{TaxYxV>qU^swdA;h`%bbR#-cj}^W4kHR=S}uUo)_$@co*o8Qv4|B z6e@lw<_ojHIp5@37p(@TDEo_1UaKAZ32cbvYR7&$u{7}O6-TuSWIif!y$?S(Df{)% z*{paq_=67T{P_s&eLFbEH6FJ7@q)6K@r-`T6_|^_*f8;rac8Y%mor4_C z*Ti09L0Y;yob$QT&>+YJ=P(Pv_+yx|UxR(}ToBuj1LF_(dN1pbg#X7mI_&@H$mb%( zPX?FYCzE`*3jL#8hhxqqICr|TWgI@PG>cR8H>=>wg674Hcy=Sj(*7IX|RPr{zdCEpPHCf7~Hz8L<$ zuJq;kjJFieLAvic`rOa-Mt|~)vR?puxgjOxRSHi3Z_+Hxxqg1nE3~wCIOoF}*mqKV zHFytjj+gy85B_90_N*`C+mQ}u{X3vDTJa6w<30M*9edXAfO_s;&u9H@(3$7hGne`P zV#QyEeYN5*f-iG8r+YZkT>~!pAoHWkJ$#d+!~X1n{$|BL27kn(^OT4GUFrM?o%a;~ z9(<4DavkP##p5X7U%@5bJ5YZPXimYCAx6PQ|B#zpi*0_*;t4 z1OFGe#QQAb{no=}}EW~@Pho7u; znqgj9qj(eWl^&gQJ$${=k>}fPRa~y`-K}^Zq`OU-IwX*d=%6BSsIx0RH{1C%9PlCF67LL*hq68V1f_E-bY?5Q9DIRC zr`p3WP&yYvXRYGrgI}Zg4d6E@ejWJT;1X{c;{B6{zp8ZZfzBI>Zvubcqw}eUC$w%@ zzE40WuJ~i%EfjwdJXP_X;D>-qybmDWz8;>Zbl!!|c*WlVpXSk-<>5<}&iBwcRdM;< zld}|$WBh-f;&NU78gPmCDa3n=hyPjW$aRdT6z_y|cY1VodH9z~ryq2_QCz-{w@>k- zVE?<~BfwjvHauUvig-JC_#klUPbNX<2*oFWkMiggc=%kUGYdNN6+aRDWW^VQ*C<{A zekQn-?*kZzU+M7iHcQO=Ee;>&@P{0pL0sl3FF3rwv479u{fNu=K|Xi5tN*>jS^w|w zvnd`7X8&FN?ha>rnRkp*yeZDhCxCM~@_Z^A^YK!L^E|zhUc6K}I(ZhE_fwVq8tgmI zu^;Q$U#jfoI>`+V=Xu#hD6g9oUkSd!;q0eeC%Mnztn()9A5>iKKW%lmdwt^>hqF!_ zZIP1vsuSYqY zbwXSp%TatEbjCWI>v;<7k9RohWPs07ybpMZ!`YwXP_Gs{oOOvKbW1lO=^m&`I=QMcP>~Qu|zJI$#@sr`tBMxVc9Hjd!IQu!8 zUb4KT>?b0B-f`@6#F#!mQucSFo_ytS_EVlC->dlf@bf1}pZmQnm|t|ogPZK9%X@=M zzqbcELzKOI?=)N4?}Pm@%KkH?dz`Xw&I!>n&*2=`_0Ty<@oT}WJ^Cvhd#=x-zsBLL zzXduMDSkirRf<0iex2gm!Ph(7P4|9q$!EEa|Cq9u`*1rw_PadxA2^)jdI$b|toYmD zpE;cUlyvtxoOM2j{f~-&3Z8f%8POtf$$g9F;8K6mQNCR~_C1yTk+2`=@adF})T^P2 z%kvl`9L{k~fKEQR`1va8;R3~_KCf^%k3-}+`Li9)?Ij;N_jvfj;F1p~!k?#={mIaI zQQ6D=!FQGY>9F6U>{mm7ufwO4pH0DkR6H3x)}D-Lk^B+;rr>PG`6>DbI-KD&tYyFB&}D*G+4f70RX&jRpg6rT_Nyu%C0 z{%P>PgNvWH!OxF8Jccj)^WmKCa_B^g%kxOh!L@#S56@6K=Rtp<;_`i@5sF^}`)tLp z0v``9{>XC?3l*34yVBv@Z^-w6&T}~T8`q%!TnEm{@%W(>>27p5=bPNWxLffJu)kmF z%X#Xr4tK{PZ#&!_Z~W$P_Ve%Xvu#J(poR0n)#>K&blQj8F2P`jv(7IV=Zpkrx4B-) z?|x2lILG@4;+m?s{I16dip%rivlag*bQUPy3iY-^@f7e=6z>hbLh-}ES1X^7(d$b3RCYyGwET9@-Xgsh?>W&p+YVv%Y-q@kNjQn;!e!4rhPlys$^{ z(-7|$4tLZ2-r=lsG3nGyJpCX^V3C)Zy;D`zMFH*Nc+y19uWvF?3pkOZi@beCVR=AAo&NWq$|k zhbsFgVLwXQKMeZ`4(EJ$2l+5rad}SYIFEjbW6$Nd1NtXBob~rYzee$Iz*j1shr@It7xen)emq2H-!`<_HvBO#C z66l=aaMr1X&U%Nl{h_#zaHoeq3oiXhC)C^L74HcCs^ap!#Wxfm0Q>h9p8&pF@dEJg z6<-Mcv*PlcS$MDwT>2mBmzp`8+wYywX{q?l;2j*!?eP@U+inhLou6UfL-DV``-4mS z9ffgJmSfNQ=R?21;jDic24s^IKNx(5;-`S0p!g#2QpIlvU!eGn;8lvh3Vw>>FMyxw za5t{A9L{m=gZ+7m{{Vie;@z9mL9|?{cuVjb6<-5>i{fX1Z&Lgv@Xd<<3H%XoDMz^< z^op`S3ePL-QhX5j`wr*)k>3sZm%}-Ks$lJ6Y9ZZYVe>rcarWtHF z>)!#L0~Ox@o~HO?;N2D93Vyi5IW9@Jzr#7*mtj9x@fX350@rcndH8IlBhQzVDE<%V zS1A5(@JhwM0AC3%{>b+|&vooM-q+B6uXZ@c`x|twSNs?7+rYK{y^cNWe**nS9nSjg zTGAUWe@-(Wb>-Uze23yaz;`O%9sF+&=X8HYx*vdxpS#hIeeU5&UFl$2P21>mTglLzK=m=nPkUD)?x{OTot~J{P&CfP zKOYqRrXGF>xYVCr&^b);*T6Fr{}_Cr;=92|gG;=ZA>IidzCh{7b4V46{{sC}JUVB3 z_%%vLo@cs2@iurqW`p8A!0%MNJNQ;`iT5VN`?QC@uXK)t&ThrCz`yY5{NUj&4zcw? z%69^EQWY-%@1(fcrztM>8Q>D{9>hD$!>1{o6Oryr#g7Ls_UJ71@UxW866l<#xIFK5 zsp4nD{z}DHgKq$rc=sXR%^to}>8yj!%ZgtQ{+37QLl57lbRL4v?}~2$PwL*VK0FKF zO!23|JAq5QCt%#z!^1}@op+%#M)7yRCwg>dc=*Xm=X>bXD83hbrQ-4&Tdm@Wc%JD} zaEZ4Z@m}xY4=bH6(0NSpPTu^_pmc!ZpaM-T^=X%BCVfkM9YKPAxUP&)rE^%~5S!CX? zRrYJJ?{>#N+p*uQ?B)5fM;*@N|7Ve(e^&f4@TVQle#-M>FFBlbeuDk0ivJt@O^34% zzj*o3;jGgG&+~nvcsKCR9nKo^J-Z(q&N`!EzfbWjaQUZSTrR95-?M9a7;VrZ{Xiw` zTPR)%-p1jqBhUYI1?T!Xl3ud(Qugxv&k)D{C^4qbk;-14{~70Sj&~#cnW(rtmpRqp z?B_zHQRHyec^*2&ia!fJ-{Gty_baO$&N?5!{uIUE2S3%}tWzAPH(JhdIO}{3`|}n5 zH~8h?(hrn{MkZM2;aioC{DABeivI@vzj$>1=HdTRI_>e?;TMXx1OHy}p5Q+#-b0>W z>}lhZcuz&VZ9F^!T=-;XMO7I6fI*)t!>q=)Wbly_@BJd9sUl0DV;_JY_2bXxSLA>Ulrclvq z-sx~#AEbOYLnlq~d%zC|*E$0{e4NtR2AzqDKLK8-_{-qOD=yCgmxGHxcSSayB_4jM z(s>{HS1SH4_>GG11;0h{Z@@Pxo`~lrH!Ge1{s_4C|0xguyV6O8&U=ct0^g(fA>f}Y z-WB`@aPj99+((G@YS?cG?+h;Wr$2PMDxLw}%cC>U!wZy7K6EB2F3%s&P<$rrPf)xN zd?C2Ry9V)|;^CJmol59jrMNt=yxya8r-yG>I%}Z+tm5Z_zohuJ;IArvHTZ|%67SWB z_X`hC?%l9|xF0$xipz7)?ZCBunuiZnI@_V2rT8}RT*Y4j&r|$m@EPFZ&+Uk}*uzg( zIv+r1mE!M%U*OTX(!=jjI^RI&e#O56e^l`VJV*Oy#RKq{z$MU%TUI~7e;)}r_1($g5LA=j+_&=3SEp$Fo{0#6fJvu*n zc+0*G`-f|x(?;>D!8@Dn_Io`+wg_y)}DZ*ll|o1}T) z?C@-dKjm;p+xgXw+_SI4GZQzF}{xM*`JFKuzSWhoc;M6I{Au!3O+^gU%;m;{xkS2#oHWc)19k$Yw$9M zv!8ds&*k6}7ly~dYGwZ<>@RmX$JGn^S1aBf{AQ(}zzNZ^$+2gDUWNW+4rl%2ptDW! z>EO?K^j~%CS$_}o-*Y(Y%lB12RJ<1YpDTU~_*aVG2>zYJIo+R-?r#p~bme<237ND( zi;N$hhfZ^FDVHy;S%%AnI-@p<5VJvu`?e4^4>2AwI2p8|fo;^%?SQv4k7#o!WG5#n9$ z;a4i1YoK$j;#Yy+;?cR=!=F()_d(}5#qR}wMREDQ&@RRQ4EvA4CEjwx`;~_`8(_;_ z%J(hkv{d{J@DAWw{}2x!u5|tdoud^01bnRGKYCl5NmD1J0}G_YYm zAo?vl{4j8-KQp1zTk%5hfr>8xAFB9#@Uh?$@4bk3vWHhFofXijRD2ou3XjfN9)5$; zIUhPVDK6hDyHoM&V1JL|*ML6(F7f^o@$PW!3#o{jB-wI$)8W$z-36U@6qoOO{c`RwlDBbCl`&>5}xU%)3QojB$%g&tn5bl!x{ zQpIkU&GxjZt%lG}B2ABMl-zk03!#`Cz?K|4?`%>|C z;6HeDVuS5*I^7Q7QXdY7PG`jr1Mi{u5#YTP9|ArMT+;1<@*VBrvy@Igbml5P7JQ*c z=M)dWSn14!&Si=hf?uz=e7|wM;`3p@8C>F(dG1yZ-=%bxL+5S9mx6!j(fPu|qah93 z`x@vZD=y!kY^}K1w^Ll~dw@&4sm*M986IAsbgqRzlN7%ie1=D-*uz&So%^A4y5gI` z&sBUo_yvk@1HT?z;_ZfbH+cAVrSmp)o>lx!@RvL~Z+ZCFO6ODPe5d#x@ZS{w89ZTV z!+P=~cx!NpHy!bI^6;TbrwP87n5B3Uc&VAdMdsYJkz5y+{33RolBuJUGcTxvlPD>e6Hf_!K=X~-o1!-rH5au zbhbigo#GFJ-|o@5&%>WnI{$U<|l+uy!A?GOG65n?%P`n%XB*oLfXMu}9EfMbm4?kP!41>-Z#pQd> zmw9w<@bCwfj(pGg5ydAV-R+9c0e@EUS>U_CCEhNG_k9olMd>VuPB6S-xi1Az2G{zj z9^PB&Tne3jimwG9s`$;|S&FX*F8~*RHKns0I&Uhz6#SnaozFZx9MQ0R*Ffh0#m@zAskqp;QC#fPz$M;n zUZG{E;v?iftl|^E7bq_OXLOa~pX0vmb&AXXf!d<@a?DTvs`xqJqmH!x^7v;az2x`y zk5OEHC-Vfw<^R)_DK7tKr$%x4y~;BcUufM3HYqOu?{=%=;?J{+i$AX@F8;i$xcKv_ z;^NQuia*2|MN0y1%1XWsZfbdR#k-=s1}k2WZ0$!W-V=P8;@{%_^0|u3bL^KZF3+W} zS6uRKlj8D!k{(w4Dfs`i;(e_9!OMzE{)Z#2f#lC+sBg*O+)NI&Cgwd2T>kXsQ*EBy$SufS45jlubWTuwFL)(aA?squrUzTRfgNGEq1pHBlyE;!hoON!2 z{SL)%0)HJ`{LGel_?;@EFC& z@!rP4((=Az&*%LYlMN0&cI>-ZWZr*O_A(w$%C$yPUR#lFGsQQ9w{keAE92o#4(B%a zGwjn8{}lXChqI21(=r^+I%5#TK*dLaAK`G;k#XZ_hqKPfupg`V3E<-$&N?!VEp#~R zd;t676@M9gw!>Mc7SH9DJDhbU971ojELJ=VyvE_IBjfzD6qoVdT8Fd#W6-%=@jJk; zaX9PeM)XF@tqy0MvE2<0?ofOv_}va?o!*G|VTZGh{O-eJik}OeCmqf@AA~mDoepQ6 zU9f*y@z=m#cR1^;fIlB8J~FcUUpbuh<@X@=D*hq#e{wjVm!~CIou*^#r?jKrVc$aW zU%}froOP<8)7|0hPuoMSZcoKiz=tS)6!>t(j{qO(aL%70=r_hWoYS2J`-zGl4?fl5 ztn(S3&na>^>zo1mV#Sw&&v!WI!zSdz$qr}zOg!Ivs>4}-BXrJC{5J5j9M1Y*LjNj< zv(8^(f1Tpbf!_)qBinBDT916Y$FXPqIO^?IhqJ!?e#8@se*pdG9L_p_g`c||&N|=0 z{%ys-1^=hRS!X!>`PSjA)3yh_(ei`hO~K`#)=0bo%D2hU_BgKRtUn3*ox#Ok=9`Bp z`?ZK`h{M^Re55;E@gu==9nR?E^#>P9Ea~wU!nL!@aw>JzCGgDv;O(e-|2AH?{hf4(ekq5J;2{m`lFHm zAA0ycr85OOzbk$Wczmo)U+Tl7@Uw%%+0RngcUF8Bcn@&Nhtbf<@bIxp=Pc+HD834O zio-cSKZAa$!`V;y{`LaJ<@?@M;NoXuqK*GF55Gd`JP3cTQTze$^-AYq&RANWQ1;Km ze!Jq^!Cz210j?*%?$~oaw1)q?6%W9Fa5(4Bm(bs*xO@*hF^|2q-?!p^ay8Oz?%_Sa z<-GYT^m{434?GiG^8ZZuIZ4^K>}A{trYhb9`~;=*G<4>9_~}ZgFLYKZ-Wz<4!#SV3 zLH`DabABEP`Kdw zr-Nu2@8Km%=i6S^zD)72!K=YVAJsot>DaUXz0nV^QTBK&Ik;TeXT$zhhjYA5dRu?) zP&@#?U+LGdW3)Wx*t0*Ca(;0*>o0)L%Zkqjf7{`#vjI9^DgG*WFpi99X+kg7uZ2#c z;%9(22bcWZhVp9f*mJt`P#=0aob|7TP9Mdu1|RHj);S$IV;s&p55PWO@r~e9!Nt$2 z1Lz=HPW15QiZ6%#Y7f62T=Gr6ufAUK9Nb9T=+Sw=!(UK3CqU;V#g7AjQ}Ko1?*LyNyz7sik||Z0>u}C7b-6KJXdka=f#ST;|f5_sfx?}-*t*hK5SH6eh+rL z;*+4i6P!1jnH25Y7mhu*_lx^j{tw?I8O09;f8OD&^E7nca5(Fn4*S0=UIzXlxYYl1 zp>x1QyCNLsK^Ji8Ph{Sdqxe-x_V|^GUx)MBEsBf%yNVx(cDe_gH#u!tlF{KyyKA0d z_oOJ^1iX{ty};8H?*`si@oC_hicbI^;&5&+o#1FTIQx&RF?%XK{Cr2plw*b!x>)fV z@GBk8>7H)QgIg7^1mCRq?HG?ernvlH$Q_E8K<71ZjtfO(_WVQHKZBruR$Ts%TOv9H z*1@UE=o|#j<;(TFnV~^2NZEG)KT6s61Rv*c&d<9t?2d_w-ws~r(Vyekvp+{dzrx|H z{}gm86@L`zjBEqFD!#5)o?D?R*5rSm>?u2uY9@S7aYekNi5c)!Eh z&u?J=km6s0{~28TJRg2O=h(CULC}BQ;jG`JKfTfNmf}g^yTL`@TGMqV$DZ}qAl+Xb z&iV&ICpN_%DfPAkcvEoEuSNoG9edWl4f@?3&ie8@4m}mmgnp*tCx8!9d^-3rhr8*H zSNw7KbDYE3pIYb?DSj&WT!*v1=+rozb#8$DGR3b0uLYNU3*gUH%KjeMU#Iw;;2V|B z66ieO*t4G>fp2#>`zgN%@vP!6L;q!mv(9(W`PjpM^6&$u(!sPy{rL#`O%?wqcuR-7 z>2`29`yU%%WP{F%{|=oVinoV-FU8w{4*};exu2BZ2gvsD8A@jmbWTuw0C=^-xqp5i zC*VgFe-QJ6Cl$XH{rN7%?|}Vhihm3J)MITvasG3<3+-lbu;Oxmf1Khno}8`tSIJiB zF2!Y@`*+31u>-VJOtYWjPv;c7U8DGCm@l8Icplnjcf;Te$CwNoi`h6m;jem~#cE;a_cQJlyU+IPW{w?F};eCwf!v`3j0nar4 z6nv!dhv5^Ae*~Xu`~7o6&OBlfiXG z@=TBB{8e*u8Hd@puM;`P4@D;|NfnRLA9KP20 z=kRNdzYD*OTxJiVulJJ6(Dv-_?|8s?C-`IJGTTrF+?DO*l4mjEpEa)Ef3X`b)!Rq{ zlmjMy1M+-fT)+R~kn!gcf7tlb@OtO?hIGB?_ewM}{x8J0G@d)a*KcinD!ildN8nwI zKM3z-{B3w2A zJ7PPzl6kKu*J_rpuzIu7@vpQ|Wd`kx2Cf?WE4>|l50%2mc| z!`B&a0l(3BGx)v6e*}NPcpUzi@l5!W#)rbUlk;-D3fFNMi{*{Y^2?{LpNDJ!*X=~# z?>m`X#^-Fb+uryjcvs^K;XRDchxavJ1|MjAIs8oHx57sm-vpmz`~~>g#&^PJ8UGTV zF#ah#k6gxI$89NG$9WY__HQ?y=~qYW3FDLX^%>*uzz>jjM-G|PInUqF$FGx5_qXdC zZwzm4d^)_9@hR{Q##g~R8J`ayZ2TqoP~*?T$HHaYCi<>N*XNMyV~E_5PtN0T0p*wV z(g4r?P(c=fBbPjXMxGnUC6E4p`$ps2kmp`<$@3QSJV7pb^#9(U zHvR_kJWnop4kFKM;-5$zh190WjfH$7w@7L|5K3;EWPcH3t9_HgZ z8gB#QSCaDPESVE%J{hm;Czw@Z*f@|Ibf1`R_pfITSDX(~-Z3T=K8ZbXTsV zj4#fNIJS~p^62M7t|XT{DmWn9PM zb8>l4Pmj^H622YHb3I;XYh!#Xwztl3-5yHN|9<4s|I^XWLB@N)N07@nT#Y=_$R*G4 z5x##jjc35K$tBNb<~VuFSX4eSek}YOYz3$iD z%|3+XZ3&m-lxyV0}T=EY?o~g!%z-OBL zZ~AV=N{s7y*DsCharGYKx?lgw9f%rAX_5Tj;G=2r*w~~*;n8`%H zr$qay@w+Hq){FWZe`ahx1O&i$W3F8$Z|WWbBbInOF`$#V|c)z6#ja;g6&5dT}_ zg~;<%z+VdZTgD$ko)5{n|9T#z{nYrncs#M*oSgG?AeV92j&^$oJTu@^jqgUD?0{bo zaQ!_f?Z5W>brY|@hu#v84;nulanl06#`pt>f5`Y_@b?3LEY26S-7gTIZaf$DhZx_F z|Z#4c9_QyNOr}|wsx_+2k*1N{<2>8q7oaZ0plBX`#`zOX5 z!M`_N8{P=xq2qZm`hOxhxBDY27DMf=b1n*c{ZTk^NimFpKp8}e1-Ab;Xe=f zjRC*Y_%4jsW5&P7_Vz6KS+4(DUJdwr(=tA?t;`IXUOi#}i$Tntxm% zzQFhx>@Q`;bw6KgyfflA8Bc@X7w{(o{(|v$F#i8A{xtIMC+F?zYjPPMjjx04UB^eg zDLLn9M=p6fX&Pcas9u-myNH(aUc^P z_OjzsYCL*D!!>!Qaecho3YWvd40mbR()aI)K>VLfdiZ?j`y)RaU7tuU>r3Oi20VkD^9&=GJnx|0apZC5C%B80ndBUwAMg};+|}1S z7n4h#6pqV3CztcLiS8ohdUB5667UDfInPt%lIIe%`y9EpDeb;W&hhUD{0nlMau8VIsVyzze3J=-XfPgvvK_Tki3`kNAP;cL2{0- ziw_a%aY^$uC+9pJ$R*DLwA(A-!va3pxE{yPC6{(DNB{H5rCp6*67ZjrbDm$4OPq#eikBsBXSwfG4R&pGM*aWE#Q60InSBol1Klqb^1^jK}x*k7<%i%>H_osDrSFU^=h_8dkd0meWV*Q?A zT=W0PxW@M}z69rgL&UToZ~kHd^0)cd5B!{ ztVg@s1HL=p`;2cvo-YG_Oe+3z@iOLETN!+1CJX&^c0nHcc%$R&Sm>3}PRJULNqD2mD6k`uo(klS{j6(fun z|1jX+1-wCPSJ@R^k5?m4OY$^#|M)1%y`N7m?P`2Rz=x1?o^j-o=O(l}E8z13zS6k< z|KODY|8>CcF|NPc`?zuaz1`=G>+j^gZd`xg_8oE_htJ7n95lWb-VE0DqTYy{^Ry}BjF70Z$hFsd!_*(;hA35iFoLutg?=wC_F7a}ol-=YUzc1hi$T`m; za>-L0=S#=6jhczpqr?~Zo3R$;9N#J6Y2=*ebaKg~zgIY#T;kWG-D%_;pBwNZa?Z1Y zT=MAe23|@o#}k}3$F3pg_*(;hA35iFoLutg@Ao}JF7caP6m8_qq;T z!@0ukNY`oSL62t{5^8c^Ch`#hcn$p z$`A2q67APAi{j-N|D$HnP5TtLq8tI6XoUM^CuCFl6fRLk9W(+IsY1Rj{h||$KOXj*X7sceTtmpcad}ccgQ*Z8*`x=)T*WX9D-uRct`1sq%Bj@7d1KYk&(#GmdiQdW~o{3>iezaWo0ALA}kHjqoa z{(sq4$21pHvYTb$-9yCUNpcNfjmg`D^6f#e)Nnq2y?pO2bKKGnIF zIpiE)6!2x_oM$b0BTeq6y93_1rw@|l<@jy^9~tmmpo$ED!`Mfxv!)GsuCHro9)xjv_nyZ#*T z1_OLW${${|xxxfk)e9{GDibEBj6VW{AJ@8#NzU<;$YpuU+(pVcLa|0~Hk{wi{g-$X8tT{=GZlXLtwa?bxIIp_I~ zoZ}k}^$Q~H$?|@UhFggZx#Y)g8_On__|Fmlta1GwmA8!R|8;+3 zTz@B`%dn_h(RfMz9(dpxN*;IK)Q82g0-g%^YH}X`>&Q9(z2wp#{obC($R%DbQl2B{ z{BMxQU7TE`d_vCghso!-IIPB4(@d%5Z*zRdOi}M~Hf~G zqe+$c^U32bL@rW(mKjZ=co`r4zMb{t-0mX*e?8#i&vZ#$spT$`zdv5j$s(8SbG*Aq zDIn)|my>h+8gh=`NS^ER){3&b&uNl#d^tJi-$l;x`^Y)|8*+}XH{5rimYZ;VEAnW3 z@Ve6}0eGS^gaKa*U>?GcRIBy!2K(5H>%2YhwFHwFA& za%oq;&+19zeQ{#6lU(|98TzxAT=MAm(tJW5caGD=*uTknoSTgD31$6pe4L!)Gsx$; zI=bFRkaPSDa?U@Goa2|0bNm`|j^9Ym@eh;B_~`fZ>?G$r9|XMqXjj=4Sx%1c7Vz-_ zUqCMX(ewN(jO+Jh{l@sG^`sZ>_npY&?zSF3cLZF2CtcUC#(zrj(jWaktMACCI@eP7 zEI%iCIR3ULy~rhxey>!fas581d$jj+mE8 zIp)PXV_qgNV_sawS<7C`i1$`>)8oly+?wLHK4+15@n&$G21fe@yS{ED@iK0B8NA|k zQ}qjwXC0>M`g_3-8Q0g_cLe-Za#=5}ar;|x8UL=ht^fBR?TTl?_4EGXvR*Rb`g~6P zMffBESJeN8+ezbnaa&)<)p-5BVtpM~oY(ti$|GJXjk)rq@v=x`v6qZz;`V#SwIAOY z*M8K;P9=9syXtKNej0g47k@1JGu*gtqce>!MSQ98OW;=eP#?x`|IK#MpPG+j{7!E@E|D)Qje%_$O#OwQ;R~py% z-}QG6HO~qx{~t`ezR&&_nqS|)Zecuz=f$0jYy1%7`u_FV#`S$_ z{asdVw_FZ3u9TU0eIND)a^2P>{+@tuGrmlMU3o3w`;D*i;W7OlJL#vi`!Kv=9X}(^ z$Km$I<$fsxjh990zR$q;oA3hT{gG&uaeaO1I^+5}%pJz{^_Its>+32n1bnaY`!QbM z8lQ{(r2*Ebj?Y#&e@~i>o4&r0VdC|9{W#v{XP#`S!)0gh)nK6>8R$+#YuPB*USjnj?mc~_osJ?~mV&gThh1Ab?~ zw;9*-iN6?s4cqev#`XUwzYBOn97kn*q@Vi#S#6B}630V5zG}RFUr?Tj*YERLYCH?; z=}O}|?sps4H~F_2*Y9=tt8x8am;C`h6!6CN{Q&B6>G!R53;580|2W|DjO)1D?_pEF zG!VbexPJfJoyIT1ay}aHodJJ6;2#*@ipMGYeQVp`O>i92@l@|%T))Svm+?c$!{4hW z+o$^EKzzcuelM7Q&yDtHHuCHD&{)6D4%(--hG-LF0XJylsGX zw4Y1hCkMQHzz36KmyS04k>uD#BcDW$O)By%a&$TJ9CCi%w~(Bl_bnyo=Y2mVm**E+ zt|I5>ee22j{Qp*RIbYSn-`mz%(M=zv`0nI?BCq2~Qfo0e-&mTi`mbn*TnyKF?GC16=-~&o6#u{NISb-gq7ClsCgA3=~Og)RPJCr~3QS;=G^sL1l4SW-U*X^M1DHtMGNXiS{<(*zn5??~~xPWCs%c|Ya<*XvI4AD&tn z&--Z{F|ycL^ho-W^LU;|&f{53&f}^3vE=6Qe3{~TJoWVxiRbaG_#O!7Jf2fz09=uH z9#7qG#CbfoQhZ0Li1HaZkEg!=AbEH^3j|z|36Ezitz_B4((D{JElv4pfzFjCmzKuT z^0G^_V`(`hC9$+razS>QXj4lX6>HX#v7Ud-hlG%C5R3cfF=c*Ud-2;lVQzgknNojWJ;*vz}qP(OJIHKwF zL9P#}?A+4C`6Y{rTyUzeC|}~H^-fHYbWwC_k#t?UT4TH}Q+nSesqEr}>qBRl4Q-lvCL$-e-7a#=FWUC}aO$R;@Bx|6#+GExO&>?KaV_K>Z*+vWe)9=-A`- z;&c1UQ6W`2Dm^_fS(2M7EG{i{JHOip-LZ-9?-%VL)!Z?_??8D8*S4wCw>Z1Bpc+4- zttz#AOI0|%uj^)E?tD3~{OKqWt8MmMY4x8Yl-*P42c}ofVcxpqSg$ z7A{N{xkZhdOco^OrLq_5d2saL`#)UCxq>|8^SO@9OTB^QZr|e!8nGIYa$l?(XA~$v52mY3?FVtux()OYynBr*nam-BjZATu;xv zMmwvn{c`70#`sCab<>JDKa=k!)zxq6n~zC;F1G%q?#}A!&qaOxe1+z)_3sJP-;4Tv z&5DU@B22fqX?5fGGR9ArU&c>fBC_N6cW2TRP9xo%FDKRU)0Y)6)%wbRbu-nqf6^?! z0L4fw?aNbit*`5^jti4WyZtD%@@ZUzFL9m0RQ}IgLiBmK-hC3D_nfbQskX0a<$Wia zx9#iez`3TrU4O-{a&^mp`E1|9XQ(gB-^5+CeO>;If%Y}<`x@GR1@-One~*TIFDjGh zZJnO%){o5F<&QQNaalMjahjLemacwv%fEDvZ{an>%ksBy7rXq^(Z22fad^YtZ2nPS zC8hR%WuX6=sDD@krIIU|(RJmOybn}e|EDB;#et|V{cq(iw*Tt_{U0VP+ZBD?#owyz zw|49KK>hWo-$^TCs_kq2I&Oeu-mbrL)St*tc3oU1@>EP*{pyzg^0~f+rf5)>U!Lk~ z`?~$6qkX&nj>iYP^>Yf^p7vX($w2>mqy8=pL;}12%?zFnLHl<6E|*|eZt;_fYweCs<^5}! zxAl9+eU&K{HT{gXul4)5{>i-Ee#+uLKCg!DC(YHbZu@y{p>LrKFT%+3cXAhPUzb0L z_HF;)krM+~p7E24YwfpAR|M+c-_uvgcjLoF+t>Q*P~R?pTuy9U*@@$bzZHwcbq3R` zU48dgWxvW=>RVXb#0Sdq>$#SQF8{5rvh>Mx)BOOTM7d%%%y@*ASKI%``tmz%M{Qpg zj!K;7W%giA^>x5eFOI2Bnz-|fqqbke^7s57>&x%q9ku-$mOoij{Th~kbxrm8MNBtn zcKqabi^xY zz8q=IYN|MXHq(YNwe3HH`X(&a49DM*IY-{(kLr~spO29~W>!)(xBoI9nYGQ|A;*77 zsk?)Yi~Jt5%_%iz+$`7b`=#CeTx{&Sf%+rv@U%02Zt-rEsef!_y@n6~>?Jjot<#S5awLce6+&1I?1w-w(546AZ7T>;p{!7}IRbkuj zh4y=E1DGB+*!OCnIe*c<>U40R{?N00L}TBLitJiXr{eYHX_ zb5UQvw_kJU^6PE+edg-cUwpIAI0X&K_)T;dt*`r^+-=*I-22D-ic@g>o#HItU2J`M lO{L1Yo3nvG_VxQo=cu4N6(Yx{>gpG7@x97%%g4pm|39JR6_5Y` diff --git a/ramdisk.tar b/ramdisk.tar index 5879d0821f58e90b9466035961cdaf48b815f47b..cca5647606995dce7c81dfb1e90cbe4863fbf4e8 100644 GIT binary patch delta 9558 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 W;77o#z$xG~a0YlyVW-btDgA#ivliU| delta 8110 zcmZ{p33wD$w#VyM?^!!ZC+SW|r$Z7**wWQqolXdlW)WFs3Fruj1iI4=LWm?l5TS{H zpoU#6M-h|}GPukT0m~UdK^T>9d=HTIxxEpW&uyNM_Z;8&y$8Jix#^`c-#7Jrzp8W3 zJ?Gr*+*_T>x|6$%>xd0(gLqW8Wrfw}libyA!R?VeURiLtl~W@#f-0*s$%L$5s3zUGqpcIsWa?lU-2Nj?a3;+YcATSsV0ad^aB;Zk5mv{Y5hZhST z?|pSO@4Z($69?q}jJ2qh2jw|=rR~;$@b((qzDd7*`}SL%RD6<(w{G3Oz2RhA$y>*j z-yWB%j0dUa74_5O@>)xu@y!d{T&=5G+d@lRt!<6V+AwZc#nka*T<%Jx{atyxYI;w0 zu)EH~iLNWL=O?k}_1N>9*z?EO^XJ&}X6#v$CkO_CnJI?5Lur0rE{^&P(20g-JS4qg zVRM^MT7&AGzPRZI+Na`SFdM!n)gTj8L+lGk#mruK4ktJoKiA$+!eJ zo!_w=kJ1fPZ8ojM!{f5*4>9X!@OvM{%0ajZFR^qgn1#y6(8S9u^BhW6D>eKzB!g8S z)(L|5FG|f>xior~T1j1_7X)@1VKR!h!$x3-aLeQ}V+V}z=d#Fdz$S~!IyL|{*<9AM zod}S_Wdj=vy^YI8=7xPPmrZOM;^cAJ%p$PKha43I3wsk4c3zRf-h=Gmaw==bq!e&D zja@?G_J zL1P{+m$4VofS1eVY&u3MbGaY82pb=l`?KB9S97_7{T;GD$_th3Zj7de%LCZ=XsnjY z1KAWf59RV8){2JfxICDxLSw_YJcQ-IemIw_*eb{)xa?*w_||h-Vj}bbE_+xfVg#E4&2%o;v)9nTjDmV-7`qSh zOfHMnqtSrbFfYyaEuuGOFM@$!+k)ZF&$#RpRB%X9WFxgUR1K;&$0euaR)RyVOS#`Y1P@K{*2L4+EK`wBCdU zSNc4q-+9?t_yungZQTXsBw)T0@2PVCdCV0JF%zIK79G8-=;D2%w->)$`(rL-TNk&b z7a3jLmR@cAGJmD9-w3+qy9q0;R*zc#;RVNlp;p|{kZ!Jk0tT+G22h5$s&(kUd~#y(Rm zFb_ljHFRGBT`LNIgYe%VE&8a&MSlS<;;JIuHYg2{b;L6$lr(}K>vk8n9=>=fA_miip2?32&(YvZLLC6%169(a&>-NV^~<2MfQ3G6Tsl%h_{HV zMx$5{Qon<_#Sjfp+k)^20*15yhQmTfr^Y&1tOdHCV6_v%R**?XBhpY!ji&a&x>;f= zqKvp8Br+j$%tzxT>_b863+}!}sx5v$1 zfOcQp>YB9{F3xCI8Cj=Q`Ii+AEKUqiS~E(JfLH>V){9d?$VP|)Kn zzlAD`kd2>bC=39WG!!OBAx#8AfgQz*5S&)5a}f&WDqR3&L3k7eJ)6dc!fF`gub}$` zR+f<{%!TtT3O5mjwGi4s!QCj_gxMZ4n~lQD&~||#G@j>UfyL)_iuiAGc9f>+3~Jv2 ze44I6xCAicP4KoMQ!HT!e}(QVkVawt5)VTsG^_LS*|y@q%>aFAws94-!fhxF`ePz2 zZ77tX)&+PBhdzK85A4_^3Nm6C4^oHfTEP1<1;RuSTZ~rnz@@t%4)q1I5SIHi!6X>> zX@{_ae98u(#bvOxRzWb&k2&{D=}d7spV(+X&+Zjh@vwMHyo7DX%F<|Gunu?``KBrB zliW0A(o0Gxq!j4URL3+l#imw))i`KV z_Uk}nwLDT`lk)vXa$h$!k1LOU4~{woiP>>F1V|@DF*$UxJr1l`6*}*7D8oON9nneH zsrEYR(Yu(+;~?(*Mjs zYI2`qm=po-GX%mQ^5Ok>FXkgQLBmQ4ct5yZJ#2=PosdV_z~9caarm*EFJ$k>Z06hr zg^^Mw$4LudTmY#*U$6oH$FMcTlzhAn`nzCz<0ph#0wb;x`qMAcOZ1}YARSGR&>v@x zux2DyV>jt2AB2j%$ftJeaoow~NW7w_cFY%uEH2M-!KdO=3SqP1tQrI9x()58Y=D%! z2^E)6?qgelX30iC=QOo<{23}S*H#;==2aL!y;(BuMav%88<#F`!~1g}4NSA1bO>xJWS5>DR|~$7Kgm~a8OsV)=l{x+O{Pgx z?!5nw>C=_-i;HdQLD83@XTy|kqtDOwDBl`=_3WrpY4X)uOydw2SBp~ODE70J${}dQ z>l2jkOuiA8muB?TKCMV*pWiZSPEWB)DJg()yK=~k5L4&&XxAwhvda9H^ReQu)eAdk z%50M%#RsZ^AJl+aFcj2*VPH5I0qQ{jj0B^=XfOuc0mgzm!8kA;OaK$XBrqA=1*U+h zU>cYX8o&%N6Wk5%0lxzGf>~fTm;>$ubHV*!9%uyf!2;Eg65KpA@kLa^7f8()(eB`7 zrUV|0Sk*-N8;vq7EOPz17LKt3t1d z>X8${kMtS~kJq2HINjS@@@hUw$J>6fNHPBq+?WjEace(<|25cIo~V=jUVJW2Ow8%v zR#DxS8@iPoJS;q#$#sM}(-Ynv^jQBgfMJ9I5MY>(UT z*UW9t&>H_?XnxJggnP%Ae451V2vYo|+W3;+r=6JA-eZ%s`P>?MU#Fg38#<#)j!lwe z&9tu9wv7+})tX$t*<`XP=AEHrK2Sm?R&*2F6;j!*rq25k!BMYm{zg-$reXXWLzA!# z;bWru`u{XtO|G~{^13w{b+bv6?#LxyqGgqJ2WipF;gaM=mHfSO)e-J2P4o+C?ANs2 z5qw=#)%x%i?V?p{x6|mbw&xQ4S0j<>PXwvwhkJMy0K$L<+)Q zRhbk1d2}*_ryBo>Ni@>4?!O6Z^9n1c=|)$tMkJqGlTmaUC~uF97}Phq!VjGWcvt=p&V(47&@ae>#1PZOs*Si{uX zyCO4e$(B6W(8+~gp!N1hK9A-oX$YyJ`o;qh?TSjhcGc2|=8Q#L?dzlGgpNjfozQ-5 zJ~+a(UK=9oG?R_Q)?~~Ry?fW|kd41%v(;~QMh+y8dc2CYQ}BYei+Dq64~354IHrz2 z92ukOfV*0oFlt0|C}07#o3`hqJsr8JSz`L{X?$`wvG*ciAy@<+0E@vA&7Vscg z23kQISPoWzm7pE00uO=J;9;-^tOZf94s?J=z<7OAFM(;AQX% zcoqB({2m+z-QYEF1RMp&!0SK-Z-765KY};Gac}~>1>OcH!71<#IIXhx&fK