From 6a4d7e49dcb5603062bb11996dab000ead52824c Mon Sep 17 00:00:00 2001 From: Stephane Eranian Date: Tue, 6 Dec 2005 08:21:36 -0500 Subject: [PATCH] release 3.5-pre2 https://sourceforge.net/projects/elilo/files/elilo/elilo-3.5pre2/ --- ChangeLog | 35 +- Make.defaults | 45 +- Makefile | 2 +- alloc.c | 4 +- bootparams.c | 5 +- choosers/simple.c | 26 +- choosers/textmenu.c | 20 +- config.c | 18 +- elilo-ia32.efi | Bin 197729 -> 0 bytes elilo-ia64.efi | Bin 356430 -> 374212 bytes elilo.c | 103 ++- elilo.h | 10 +- fileops.c | 8 +- gunzip.c | 224 +++++++ ia64/gzip.h => gzip.h | 38 +- ia32/gzip.c | 2 + ia32/gzip.h | 35 - ia32/gzip_loader.c | 2 + ia32/inflate.c | 1205 ----------------------------------- ia32/system.c | 3 +- ia64/gzip.c | 12 +- ia64/gzip_loader.c | 2 + ia64/plain_loader.c | 4 +- ia64/private.h | 2 + ia64/setjmp.S | 1 + ia64/sysdeps.h | 3 + ia64/system.c | 26 +- ia64/inflate.c => inflate.c | 36 -- initrd.c | 41 +- 29 files changed, 523 insertions(+), 1389 deletions(-) delete mode 100644 elilo-ia32.efi create mode 100644 gunzip.c rename ia64/gzip.h => gzip.h (50%) delete mode 100644 ia32/gzip.h delete mode 100644 ia32/inflate.c rename ia64/inflate.c => inflate.c (97%) diff --git a/ChangeLog b/ChangeLog index 55dad01..239ba95 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,11 +1,34 @@ +2005-12-01 Alex Williamson + * Applied patch from Fred Yang to support the + vmm= boot option. This option specifies the kernel image for a + virtual machine monitor (aka hypervisor). The vmm= and image= + options are used together to load both the hypervisor kernel and + the guest domain kernel into memory. If a vmm= option is not + specified, elilo defaults to the old behavior of loading and booting + to the image= kernel. + * Added support for compressed image= files when used with the vmm= + option. If the image= file is detected to be gzip compressed, the + image will be uncompressed into memory before it is provided to the + hypervisor. Any combination of compressed and uncompressed images + can be used for the image and vmm options. +2005-09-15 Brett Johnson + * Applied patch from Tristan Gingold to add dcache flush and sync with + icache to gzip and plain loaders. This ommision was just noticed now + due to the much larger caches in Montecito, and the smaller size of + Xen (as compared to the linux kernel). +2004-09-27 Brett Johnson + * Increase the hardcoded size of the texmenu chooser menu from 16 to 64 +2004-09-23 Brett Johnson + * Fix for 924147. Thanks to Stephanie Schaaf for a patch + that the fix is based on. 2004-02-19 Brett Johnson - * Fixed bug where default image initrd would carry over to another - image that was selected interactively (iff the newly selected image - did not have an initrd). - * Added support for subnet-specific config files in netfs. + * Fixed bug where default image initrd would carry over to another + image that was selected interactively (iff the newly selected image + did not have an initrd). + * Added support for subnet-specific config files in netfs. 2004-02-17 Brett Johnson * integrated ia32 compressed kernel support from Matt Tolentino - + 2003-08-20 Stephane Eranian * released 3.4 2003-08-19 Stephane Eranian @@ -93,7 +116,7 @@ * released version 3.2 * cleanup some GNU extension in fs/ext2fs.c (variable size array) * updated all documentation. Added netbooting.txt, simple_chooser.txt, - eliloalt.txt, elilovar.txt + eliloalt.txt, elilovar.txt 2002-02-21 Stephane Eranian * added a Linux utility program (elilovar in tools) to set/read/delete the EliloAlt EFI variable used to specify an alternate kernel to boot. diff --git a/Make.defaults b/Make.defaults index 48baaea..0a90776 100644 --- a/Make.defaults +++ b/Make.defaults @@ -95,38 +95,23 @@ ifeq ($(CONFIG_chooser_textmenu),y) CFLAGS += -DCONFIG_CHOOSER_TEXTMENU endif +prefix = /usr/bin/ + # Redhat 8.0 ia32 gcc-3.x version is reported to produce working EFI binaries. + # Redhat 9.0 ia32 gcc-3.x version is reported to produce BAD binaries. +CC = $(prefix)gcc +AS = $(prefix)as +LD = $(prefix)ld +AR = $(prefix)ar +RANLIB = $(prefix)ranlib +OBJCOPY = $(prefix)objcopy + ifeq ($(ARCH),ia64) - prefix = - prefix = /opt/gcc3.1/bin/ - CC = $(prefix)gcc - AS = $(prefix)as - LD = $(prefix)ld - LD = ld - AR = $(prefix)ar - RANLIB = $(prefix)ranlib - OBJCOPY = $(prefix)objcopy + GCC_VERSION=$(shell $(CROSS_COMPILE)$(CC) -v 2>&1 | fgrep 'gcc version' | cut -f3 -d' ' | cut -f1 -d'.') -GCC_VERSION=$(shell $(CROSS_COMPILE)$(CC) -v 2>&1 | fgrep 'gcc version' | cut -f3 -d' ' | cut -f1 -d'.') - -ifneq ($(GCC_VERSION),2) + ifneq ($(GCC_VERSION),2) CFLAGS += -frename-registers -endif -# -# EFI specs allows only lower floating point partition to be used -# -# Redhat 8.0 gcc-3.x version is reported to produce working EFI binaries. -# Redhat 9.0 gcc-3.x version is reported to produce BAD binaries. -# -CFLAGS += -mfixed-range=f32-f127 -else - ifeq ($(ARCH),ia32) - prefix = -# CC = $(prefix)gcc3 - CC = $(prefix)gcc - AS = $(prefix)as - LD = $(prefix)ld - AR = $(prefix)ar - RANLIB = $(prefix)ranlib - OBJCOPY = $(prefix)objcopy endif + + # EFI specs allows only lower floating point partition to be used + CFLAGS += -mfixed-range=f32-f127 endif diff --git a/Makefile b/Makefile index d8ec67d..5015faf 100644 --- a/Makefile +++ b/Makefile @@ -61,7 +61,7 @@ endif FILES = elilo.o getopt.o strops.o loader.o \ fileops.o util.o vars.o alloc.o chooser.o \ config.o initrd.o alternate.o bootparams.o \ - fs/fs.o \ + gunzip.o fs/fs.o \ choosers/choosers.o \ devschemes/devschemes.o \ $(ARCH)/sysdeps.o \ diff --git a/alloc.c b/alloc.c index 373fbdc..349da9f 100644 --- a/alloc.c +++ b/alloc.c @@ -129,7 +129,7 @@ alloc_pages(UINTN pgcnt, EFI_MEMORY_TYPE type, EFI_ALLOCATE_TYPE where, VOID *ad status = BS->AllocatePages(where, type , pgcnt, &tmp); if (EFI_ERROR(status)) { - ERR_PRT((L"allocator: AllocatePages(%d, %d, %d, 0x%lx) failed (%r)\n", where, type, pgcnt, tmp, status)); + VERB_PRT(1, (L"allocator: AllocatePages(%d, %d, %d, 0x%lx) failed (%r)\n", where, type, pgcnt, tmp, status)); return NULL; } /* XXX: will cause warning on IA-32 */ @@ -155,7 +155,7 @@ free(VOID *addr) if (p->addr == addr) goto found; } /* not found */ - ERR_PRT((L"allocator: invalid free @ 0x%lx\n", addr)); + VERB_PRT(1, (L"allocator: invalid free @ 0x%lx\n", addr)); return; found: DBG_PRT((L"free: %s @0x%lx size=%ld\n", diff --git a/bootparams.c b/bootparams.c index a6c9d7c..8859fcc 100644 --- a/bootparams.c +++ b/bootparams.c @@ -38,7 +38,7 @@ * bp : the address of the bootparams otherwise (opaque type) */ VOID * -create_boot_params(CHAR16 *args, memdesc_t *initrd, UINTN *cookie) +create_boot_params(CHAR16 *args, memdesc_t *initrd, memdesc_t *vmcode, UINTN *cookie) { /* * XXX: need cleanup @@ -69,6 +69,7 @@ create_boot_params(CHAR16 *args, memdesc_t *initrd, UINTN *cookie) * Allocate memory for boot parameters. * This CANNOT be EfiLoaderData or EfiLoaderCode as the kernel * frees this region when initializing. + * FIXME: Is this a bug? (since the memory type *is* EfiLoaderData) */ bp = (boot_params_t *)alloc(BOOT_PARAM_MEMSIZE, EfiLoaderData); @@ -95,7 +96,7 @@ create_boot_params(CHAR16 *args, memdesc_t *initrd, UINTN *cookie) */ Memset(bp, 0, BOOT_PARAM_MEMSIZE); - if (sysdeps_create_boot_params(bp, cp, initrd, cookie) == -1) return 0; + if (sysdeps_create_boot_params(bp, cp, initrd, vmcode, cookie) == -1) return 0; /* * Convert kernel command line args from UNICODE to ASCII and put them where diff --git a/choosers/simple.c b/choosers/simple.c index 0af1fa7..b246a91 100644 --- a/choosers/simple.c +++ b/choosers/simple.c @@ -37,6 +37,7 @@ display_label_info(CHAR16 *name) { CHAR16 *desc; CHAR16 initrd_name[CMDLINE_MAXLEN]; + CHAR16 vmcode_name[CMDLINE_MAXLEN]; CHAR16 options_tmp[CMDLINE_MAXLEN]; CHAR16 options[CMDLINE_MAXLEN]; CHAR16 kname[FILENAME_MAXLEN]; @@ -46,9 +47,9 @@ display_label_info(CHAR16 *name) Print(L"desc : %s\n", desc); } - initrd_name[0] = options_tmp[0] = kname[0] = CHAR_NULL; + initrd_name[0] = vmcode_name[0] = options_tmp[0] = kname[0] = CHAR_NULL; - if (find_label(name, kname, options_tmp, initrd_name) == -1) { + if (find_label(name, kname, options_tmp, initrd_name, vmcode_name) == -1) { StrCpy(kname, name); Print(L"\n"); } @@ -56,6 +57,7 @@ display_label_info(CHAR16 *name) Print(L"cmdline: %s %s\n", kname, options); if (initrd_name[0]) Print(L"initrd : %s\n", initrd_name); + if (vmcode_name[0]) Print(L"vmcode : %s\n", vmcode_name); } static VOID @@ -247,6 +249,7 @@ simple_choose(CHAR16 **argv, INTN argc, INTN index, CHAR16 *kname, CHAR16 *cmdli CHAR16 buffer[CMDLINE_MAXLEN]; CHAR16 alt_buffer[CMDLINE_MAXLEN]; CHAR16 initrd_name[CMDLINE_MAXLEN]; + CHAR16 vmcode_name[CMDLINE_MAXLEN]; CHAR16 args[CMDLINE_MAXLEN]; CHAR16 devname[CMDLINE_MAXLEN]; CHAR16 dpath[FILENAME_MAXLEN]; @@ -259,7 +262,7 @@ simple_choose(CHAR16 **argv, INTN argc, INTN index, CHAR16 *kname, CHAR16 *cmdli display_message(); restart: - initrd_name[0] = kname[0] = cmdline[0] = args[0] = CHAR_NULL; + initrd_name[0] = vmcode_name[0] = kname[0] = cmdline[0] = args[0] = CHAR_NULL; /* reset per image loader options */ Memset(&elilo_opt.img_opt, 0, sizeof(elilo_opt.img_opt)); @@ -303,14 +306,14 @@ restart: * if no match is found, the args and initrd arguments may * still be modified by global options in the config file. */ - ret = find_label(argv[index], kname, args, initrd_name); + ret = find_label((index < argc) ? argv[index] : NULL, kname, args, initrd_name, vmcode_name); /* * not found, so assume first argument is kernel name and * not label name */ if (ret == -1) { - if (argv[index]) + if ((index < argc) && argv[index]) StrCpy(kname, argv[index]); else StrCpy(kname, elilo_opt.default_kernel); @@ -335,9 +338,14 @@ restart: StrCpy(elilo_opt.initrd, initrd_name); } + if (elilo_opt.vmcode[0] == CHAR_NULL && vmcode_name[0] != CHAR_NULL) { + StrCpy(elilo_opt.vmcode, vmcode_name); + } + VERB_PRT(1, { Print(L"kernel is '%s'\n", kname); Print(L"arguments are '%s'\n", args); if (elilo_opt.initrd[0]) Print(L"initrd is '%s'\n", elilo_opt.initrd); + if (elilo_opt.vmcode[0]) Print(L"vmm is '%s'\n", elilo_opt.vmcode); }); if (elilo_opt.prompt == 0) { @@ -379,7 +387,8 @@ restart: */ len = StrLen(BOOT_IMG_STR) /* BOOT_IMAGE= */ +StrLen(devname) /* device name */ - +StrLen(kname) /* kernel name */ + /* kernel name */ + +elilo_opt.vmcode[0] ? StrLen(elilo_opt.vmcode) : StrLen(kname) +1 /* space */ +StrLen(args); /* args length */ @@ -389,7 +398,10 @@ restart: } StrCpy(cmdline, L"BOOT_IMAGE="); StrCat(cmdline, devname); - StrCat(cmdline, kname); + if (elilo_opt.vmcode[0]) + StrCat(cmdline, elilo_opt.vmcode); + else + StrCat(cmdline, kname); StrCat(cmdline, L" "); StrCat(cmdline, args); diff --git a/choosers/textmenu.c b/choosers/textmenu.c index aaf2a4b..f64784e 100644 --- a/choosers/textmenu.c +++ b/choosers/textmenu.c @@ -28,7 +28,7 @@ #include "elilo.h" -#define MAX_LABELS 16 +#define MAX_LABELS 64 #define MSGBUFLEN 4096 static UINT8 msgbuf[MSGBUFLEN]; @@ -358,6 +358,7 @@ textmenu_choose(CHAR16 **argv, INTN argc, INTN index, CHAR16 *kname, CHAR16 *cmd # define BOOT_IMG_STR L"BOOT_IMAGE=" CHAR16 label[CMDLINE_MAXLEN]; CHAR16 initrd_name[CMDLINE_MAXLEN]; + CHAR16 vmcode_name[CMDLINE_MAXLEN]; CHAR16 args[CMDLINE_MAXLEN]; CHAR16 devname[CMDLINE_MAXLEN]; CHAR16 dpath[FILENAME_MAXLEN]; @@ -412,16 +413,16 @@ restart: * still be modified by global options in the config file. */ if (label[0]) - ret = find_label(label, kname, args, initrd_name); + ret = find_label(label, kname, args, initrd_name, vmcode_name); else - ret = find_label(argv[index], kname, args, initrd_name); + ret = find_label((index < argc) ? argv[index] : NULL, kname, args, initrd_name, vmcode_name); /* * not found, so assume first argument is kernel name and * not label name */ if (ret == -1) { - if (argv[index]) + if ((index < argc) && argv[index]) StrCpy(kname, argv[index]); else StrCpy(kname, elilo_opt.default_kernel); @@ -448,9 +449,14 @@ restart: StrCpy(elilo_opt.initrd, initrd_name); } + if (elilo_opt.vmcode[0] == CHAR_NULL && vmcode_name[0] != CHAR_NULL) { + StrCpy(elilo_opt.vmcode, vmcode_name); + } + VERB_PRT(1, { Print(L"kernel is '%s'\n", kname); Print(L"arguments are '%s'\n", args); if (elilo_opt.initrd[0]) Print(L"initrd is '%s'\n", elilo_opt.initrd); + if (elilo_opt.vmcode[0]) Print(L"vmm is '%s'\n", elilo_opt.vmcode); }); if (elilo_opt.prompt == 0) { @@ -494,6 +500,7 @@ restart: len = StrLen(BOOT_IMG_STR) /* BOOT_IMAGE= */ +StrLen(devname) /* device name */ +StrLen(kname) /* kernel name */ + +elilo_opt.vmcode[0] ? StrLen(elilo_opt.vmcode) : StrLen(kname) +1 /* space */ +StrLen(args); /* args length */ @@ -505,7 +512,10 @@ restart: } StrCpy(cmdline, L"BOOT_IMAGE="); StrCat(cmdline, devname); - StrCat(cmdline, kname); + if (elilo_opt.vmcode[0]) + StrCat(cmdline, elilo_opt.vmcode); + else + StrCat(cmdline, kname); StrCat(cmdline, L" "); StrCat(cmdline, args); diff --git a/config.c b/config.c index c556484..e24c0c0 100644 --- a/config.c +++ b/config.c @@ -68,6 +68,7 @@ typedef struct boot_image { CHAR16 kname[FILENAME_MAXLEN]; CHAR16 options[MAX_STRING]; CHAR16 initrd[FILENAME_MAXLEN]; + CHAR16 vmcode[FILENAME_MAXLEN]; CHAR16 root[FILENAME_MAXLEN]; CHAR16 fallback[MAX_STRING]; CHAR16 description[MAX_STRING]; @@ -93,6 +94,7 @@ typedef enum { typedef struct { CHAR16 root[FILENAME_MAXLEN]; /* globally defined root fs */ CHAR16 initrd[FILENAME_MAXLEN];/* globally defined initrd */ + CHAR16 vmcode[FILENAME_MAXLEN];/* globally defined boot-time module */ CHAR16 options[MAX_STRING]; CHAR16 default_image_name[MAX_STRING]; CHAR16 message_file[MAX_MESSAGES][FILENAME_MAXLEN]; @@ -144,6 +146,7 @@ static config_option_t global_common_options[]={ {OPT_BOOL, OPT_GLOBAL, L"noedd30", NULL, NULL, &global_config.edd30_no_force}, {OPT_CMD, OPT_GLOBAL, L"append", NULL, NULL, global_config.options}, {OPT_FILE, OPT_GLOBAL, L"initrd", NULL, NULL, global_config.initrd}, +{OPT_FILE, OPT_GLOBAL, L"vmm", NULL, NULL, global_config.vmcode}, {OPT_FILE, OPT_GLOBAL, L"image", do_image, NULL, opt_offsetof(kname)}, {OPT_BOOL, OPT_GLOBAL, L"checkalt", NULL, NULL, &global_config.alt_check}, {OPT_STR, OPT_GLOBAL, L"chooser", NULL, check_chooser, global_config.chooser}, @@ -168,6 +171,7 @@ static config_option_t image_common_options[]={ {OPT_CMD, OPT_IMAGE, L"append", do_options, NULL, opt_offsetof(options)}, {OPT_CMD, OPT_IMAGE, L"literal", do_literal, NULL, NULL}, {OPT_FILE, OPT_IMAGE, L"initrd", NULL, NULL, opt_offsetof(initrd)}, + {OPT_FILE, OPT_IMAGE, L"vmm", NULL, NULL, opt_offsetof(vmcode)}, {OPT_STR, OPT_IMAGE, L"label", NULL, NULL, opt_offsetof(label)}, {OPT_FILE, OPT_IMAGE, L"image", do_image, NULL, opt_offsetof(kname)}, {OPT_STR, OPT_IMAGE, L"description", NULL, NULL, opt_offsetof(description)}, @@ -882,10 +886,10 @@ print_label_list(VOID) { boot_image_t *img, *dfl = global_config.default_image; - if (dfl) Print(L"%s ", dfl->label); + if (dfl) Print(L"\t%s\n", dfl->label); for (img = image_list; img; img = img->next) { - if (img != dfl) Print(L"%s ", img->label); + if (img != dfl) Print(L"\t%s\n", img->label); } } @@ -933,7 +937,7 @@ find_description(CHAR16 *label) } INTN -find_label(CHAR16 *label, CHAR16 *kname, CHAR16 *options, CHAR16 *initrd) +find_label(CHAR16 *label, CHAR16 *kname, CHAR16 *options, CHAR16 *initrd, CHAR16 *vmcode) { boot_image_t *img; @@ -966,6 +970,7 @@ find_label(CHAR16 *label, CHAR16 *kname, CHAR16 *options, CHAR16 *initrd) if (global_config.readonly) StrCat(options, L" ro"); if (global_config.initrd[0]) StrCpy(initrd, global_config.initrd); + if (global_config.vmcode[0]) StrCpy(vmcode, global_config.vmcode); /* make sure we don't get garbage here */ elilo_opt.sys_img_opts = NULL; @@ -1003,12 +1008,17 @@ found: else if (global_config.initrd[0]) StrCpy(initrd, global_config.initrd); + if (img->vmcode[0]) + StrCpy(vmcode, img->vmcode); + else if (global_config.vmcode[0]) + StrCpy(vmcode, global_config.vmcode); + /* * point to architecture dependent options for this image */ elilo_opt.sys_img_opts = &img->sys_img_opts; - DBG_PRT((L"label %s: kname=%s options=%s initrd=%s", img->label, kname, options, initrd)); + DBG_PRT((L"label %s: kname=%s options=%s initrd=%s vmcode=%s", img->label, kname, options, initrd, vmcode)); return 0; } diff --git a/elilo-ia32.efi b/elilo-ia32.efi deleted file mode 100644 index b2ca1c86f36ae382ce6d1b39feaec44a2aa7fdae..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 197729 zcmeFaeRx#G`9HiH7Fb~AM2rv>C2CYqszj|4K@2IIPzwrZ&{k>DYO1YOi@ShmAn{~@ z)8naV#MY`6tyZnJzM!yx!Y1LHfUlAIRcfh5i+a{gC89z^%Kko|d*B;G>-ppP zXJFp>r1Y^zGTvc7nS_-hO4eV z^^ijbmTJ(`!am;=e?Q-Izc{DDx4ys^EAaU`ef|0j@)wNtP4@eIH{yT(E7bqb&Pk)} z{{PS$bSC(dKE8qbzmyz;`oH}*e{;dN!uh|2aiDUiMy{S8!HfH=&>teizH$(9{+0NA zvroP1ipUknTlNFIXWysj|8vS!_g!l! z{s8<*;5~`-`~AvQu-pwlRj)|{!kho-0m`A>n{NK4ui|jP>A?G;_)Jv|NVcE z0yWl0>1Ze&4Z1|`QmeJ^&K>D=L+j253w#$%b6>0U`!2gImWcLsuMGNpn_E%d>>6p+ z?RCQ4c3se#^`-kmuy8}`nhX6tE81gCDh*iUOWmTQeZE-2So$EK+Tm_1Q0m?}!sp|w zYlrcb)fSmxo1F{rx*~)Ij>IcF9Af?S%#c0nOFP5h6`VCy`EaHv zIO8*L>REVIrvJdzt}B%Oho%1)sQ#l(!hdUDI&Jp&jmFPW4G#+knmq+;*uU8z#V>> zfRBt~8!w@aXxt4>1W{{>>;jOrzqFZplsFYmKo54*wpT&k#34p}8`Ah^EiM9D*81W2 z+g^o122HslB(KNIWp;J&UNlq;42taP0G|u-9J2f0tB9UJQIF`x34UMlR8&&~yM}G7 zWgE5a6=>61DlILOmMWyB)ZM8=mgW8feJ`1LQA5||kV|&B7~OEc{vPT3!>OR}q|!n= zT!`jEb`4o2XorJH3B`vz3Gzs5M&nvE?8Mx!(`o00j<3+i*o*k6V_p2-RtnkxmG&x;(6&IUwH%kA!Eg#0L9M9N zZW?CfWof~=n4HNG`77FqB_c;*+>F?-KqwilhK=mK)p6O6 ze*)%TPSoR+zrbIEkorZX?geK9FG1Q|KyI1W(u(ESSNCvb>8%O^boL6J6<|XoP_L_W6Jzn zzLAY`OkxQ>p_e_!apsi(H>N&CielhH{Kj7e2wPPlWmFYCpv@>?FDE9B$(0Y43D z19%9(?r`w5E#m}cKRmX}Xk3GtXPsHO^<|3+lB<%{rqbHCV zE7;tvN&=jNW|EHq&N9wN@aIKlSHQh$BAIgI`RrMz?pYy90#(i?G+7|26*~3hu~Jf} zK9&1}ym(6N*=6dr%dtH-^qf<653`xI+?HNQlIcA*pgQn=XMh`B;? z*;OH6nx1iKEHVEKyK1;)P9tws6;}HJKC)|qm?T5&2Ew%}huaN=YgHD{YF!3=XRfD+!KjqDub)Sp zPetXn@NO{qXq0OYcVm3O>rQw#(8W(TenObm!nD7;9-w53M9EVuSYjy{d2)mJ zDhX-M5A~T_9NU7Wt-sF~?T6J0za-Q~RJ6KNo3d-gyg_Y?4+a1D%XXzca?E=aw(fl> znEJ@trR7=88UO&zxJb|1>%Ihu(9n7`l*_j8H-1GByU@bo=7hgNhYHm=fF6!{07{I- zke-l1wP4ynx4 z0jnO1z^$kO+3M~-m%X^88YFokv75`w{op-Cnzq@g~5r6`Tsr7xy_V{m8!z z`EJ`I@(dM9mtlcl?Sth}I< zv||EmIV(#wtV|n8kDfFUyaj!5X1-+ZIm1|T7@y4-!Mk=~nSX1#Q!!V&4?Xv#p0igb zII#WL!#QZ@+Jgu{mxUsclB}B=RqDQ!aa#D@V)Uc6krdQi#?qwxF#6znhK)jN}Fo9L;ZS_Mq1(SV|laFJu zam;C);39IKS5N5TY+e0NsGfQxms*oR4MnY?`P724lY9*Ta|pEpP?B5N$Xv)sp}1(I zwxISY=x$X7+ZGo}Pme-5w;%W_Sw<@44A7e=drcPQHfbgblb7c=NFy_O1@f$2s<)ir zKI<8(gUPj+DjEyvuWe4j1OqObdw>3rSQ3qQp`5Y0O^x+zLNowTX+L&lsKTlYnLT}t z#Xm>6_R0`MxG(u*!d^$E4!SG!nb^x%Wb_+w<|{VxhCN#fTtW%Wo15xatlwtF_% z5bcJX-;M;v9wjk{9w!4(UBSqoUIdO`6!IHOCZUm9a|0RGXT*+2YJ>FmrRQ0EH)mDf zYCw#MEEDz3o)L;|F=CwnuP9V&#&!KC00oK>s-gpp_aS8pAj7!hH}Z;56&ad42h^G` z77%k^B+}5r2dm9m{z#^TwR{DiCC3?GKvWh~Wl+hQV@7N&P)WxKyP?fTw1kagny5@G=(I}1;6r*I(t5aVBcF3Ts+i|NKE!;9A_PX$ zAY_{_QGBM2#t+aNE>rbTg^{DlCR{SEaN%G@ud=iiCp+l|p5t?DSLAT}*R(cbo1=qd zk+E)LGLHjJ{w^o)xsc`>K8*~I2Pr9O?TCaU>*ZCw@C!_f-$Sm%mjWtYLkZqrKlpkW zSHBfh>A_1WNqMW^Kaoma3J41C`n41;cFw+uYDD zqTM0SCEvl~rwk97V?x>$3Y_~m>)glHk!aD5*wt10|NiT+}{o8yq8bDl~+`JO~9yt%anmPyU{(vLh5TDHbR_Qd+Z=&!7;IP+~t7ewVX@ zUDR6dyA@TD)_V!dg$6x5pK-?8MK z5rgf6b>ZfM?--4J@Mx?qKmmK@^JrfcvHBSsl&S+K2UyZTDGL1ufJ&`7zu=t67{$l! zf}3r!&02G;4|bVItTaeLaJJ9uhr)|EMT+zsu!*`=nD(c(U_F+U?XN&jEPve~;H`?K z{%KEIvX{&Wjaeqj3Io-E)u_Y#K3GrEc>Ek-lDbRQ|4c#pvsuuGf(ODe4u0_^e+0o+ zwxz=Bx#k~{(#Z)FdZI-^f3n%j)W_0g+TSn-XBw-cA<(b3ygM>Nt6SQiv$+;rb_fWo zUPnK(-u$t(2_~*``>_7h;3alV;Y>RkvfdD8Kh#*=&ulBGwftst0qRGSR>%1ObEvhe zwjE<&bs!%Z(a(Qu^}r`XL&dYV4g?RAhw#9%jfv>LH7tc@8HXiI8)Y5)EVLi?OBXnluj{V;ES{@=7;gZ8Jw_ARhpZ%jmr z^XR+OUpWzP0QoC|>INQp@74IA#5v&*=~uQHAO=;cjOgdqo3pGRW3g2RIvh=A7x=)`f@*l|BE3ZNuK=;^Q@Szc=X9lgEKsjii1r$Cj z+XB*P^9bvSQlsEs$QiUt1n%my{e*a&Jrqt3`1aX?)laD&mb3?VN5Q;9=tJ;4KFcz` zeQ^+DU|xZ>p4t|Nd8SwP4b)FX0C^6V$7#@eF@bt5Y?_dnUA|*T38twgB{#gkpa)S0 zr#<`~5~Bb}i+^i2)`zlP==RZ88;lQ=X{$SnsVARq%pjIv%Xx?yfSI``m6FtH(ao|^(-OX2+zT+TJLAABo;Y1z_x-%9eKG8Q%6N}ccB5td|8vDQBt0o zIhTz;tmTEchQ4$khMkB0qh*9`GX6b8cAzQ1XGVh2XGUjPkeV1dgFZfE>0NjQhsjm= ziBnw_K3{np*D6GH&I0q7CD!n*RE2lN-32S%T3EtBkebNpnnDscC&&}OQ&)f?zaL>& zh1j=*ChX&q^7{6Bq{Hh=cta zmUKhwr%;tZ1z_R>J=jBF?kKxiOA4u zvu&g*JLl~ze6LRGvs`^ITI_Csh2GFQ0u9hH{u=u-wJ5gPXl#*g1$DC%oWKU>%>O~2 zZyDTeP-4n;Bu+uLCyfc1iBeMSKgEK`5jlvw7N@!A^)(C1!-_pY%|9NAZiWkQ8mD2_ z6#KiaqEg*Yw-m1#*{b$i1$KBiIt#;&q_As-+kr7w0fzWK+GsUJRzaNp+0^Z1zWP+G z_xgkQ5r;AybT^EW{zGd6ym=T$sH-=YrFFL_X)e#J&nBYedAOUhBLV#TsGbkc_S}kg z&*{kPyj|0+kq#6xCPbwFrLf$V)j!OxYY;Z1Uvq@ux9D{6X5HS{7RFPfJ&}RH5?bVW zzGxA{LG`_&f|!R+c#{==kx07ZVLDYr-q8kLg*Z7TiJn=v2~c5T@8wvV%Rowj21@+Z zt_WD+jdpmWmvg_n9cCM+uUIUR+jHPWr#n?3`$jZ}a9cu1Ll}(aR zx)o?;R9o}Df@^m@`R70X**d*!OY&SSqntYhG)wnLcrXqd@>{3s%R!I>_LYKW?Htu& zbu{-BT$><7yXHmlx6pbLT;R8!t!MO|sF+;=Or(;PR2M)gjGqa6Q94MH8jTF-5Li*E zI{+hV*Cgz@0q5e%0;?urMK>nj$NPBSgP?i5LNfp$5I712pcZro=Ap5-KhU@Vz;efb zBqc5xEyVco5hsyLZ-(MSF4%>ra^#0*k1_9JCs5&pVw{$a`3R>%fN_v>!5-yK6G`n9 z4Ybb>fLI~OHh6rM$fyj6BQHIj`eUAqMOtxVGUFfh*26D3U+y@OnCyT`0|bEr@R>J^ zSQO=9Q3&mIm;lOyF7nM;DTtjp)CSYc3<$SWX@q8o8rSaj^neq3QZ1SFi0d)iH>CX= zr2V~U9|W3r!2#QkoDEIm48u+5zefL0 z_4>~N;(A#4ZB!VtKNWi8#L=;P<5iS;CCd*YuZBzirTrVwK4ldQziYvOF}T34z%L4{ zhXv--6}A0QOH;5f9dsAm{Ds}bX%0tX<7`$qKLA-D8;wWAm*CXlG`J2tjVYs3KSm1j z1Tpo=oZj#w=%v?vYbR$;uxuC2%gB)#eyNhS%zefph$tAIJDjRM7%Ah9r-V&A0T}dZ z{&;|ld^mU^r?S5d0zkPD-CF=yO>Zu)EJfjPHJcMBmFS2w%692)0tahn^M~+jjxY2f z2AC~#conc%_&%4x;bO82|Dn9UgHRo_pH>%ch7&)<5E~q{B*C>z|3PU36*{j5d5Sfj zC30%Zg#`2`VfcUp7lh2jDo%dD8Eqy|JNYL*?iWAZ3oF${wPY9?`*? zWkmU>Kb%7bjy2~G_eBTPwqqo*YP`>&6ogZH+VIrha_txQ6NHr;ntuS8HTIpX>ogRy zqaOi&AEz?d+a80Z&K(tI*J#+3?q68D^$^sCjvh2Ojuy(Hp*3jN$41>xi}4WdCi{IM z$e`~aNTHBG?c_OWH&9kP2&Q&RI1!2>3+SjS2nPL7AcAh`8COy88nFuGw1>OU5SY2J z*)1p!cUj@WImg&jyRA^Ed*e|ATaP|jCiS7Rgg6Q8nl2QuSMr6uPIQ96oz9u7nm_Ji z1xPp^H;43gzc)MM*-3i>Kl^+{5 zAYl8Y&D+sbZTqCNgI595?Q2KGQq!3ncr^xcJD);xeY-#812~}h)4opSm|CP_YAHJgz+*FkS%aFIe7K|QrC_Q;`4nUakyMN>QcvhjUo5BsC+m(lL*W7wSp)EBUXbccVfXcuM2 zo1h`B$FQ4656`j`=}`t}FBp^od9>>Z54g@4kIxYwn8W^dp+bVI;aq@LeX#a5e^vnD zi3VdZAbd_>)dtqn6Pm>2>N1Q{UetMF_7@bO^oN^AViQ64lAQ!d?K*`$ilD%Aryx0SHNMWmCgm1OFB{X3NZr+%m-F8(Qy#j^ijLaotmp9liWdPGHzX zD=^e-37KCHp8GlIz4&>I7kZ5f5)@Jqw_7IT0fn!Z4(#AwG>6^yOt` z3A!tlBRK27Mg4oE{;tw*sb751`eql*Hu^8!8_;ccApTfz$cuX~`6}c|Z+y#kVL2{z zkCjFn&?psQjStwh%Kh1w*f0d;W@naTE(Qy`7Xq}o5lqOfL>_&;^?kV8fho|?ItBp8 z3D0TXHOxCXB}^Z}un3ceyK?bSEx_*(7)!>S^@hl!fqb6$KDeSSw#(`^8eia?A$K-W z-aEF){z>O3fj_wvGdSo>8Ya@-#-fheeZB#tU6CN?-)}!d>?Pc7wvWV2R=CYsY|ARk zc>y5})L7~DJ)DT5#3mwT_OyUwPr}L|s?GV*iuM#Apv!647n+nYMCiZ zO9d#0F8CNf5dYs^_hI-{;QxY(W;e-pq5^v|G-1^T2o?G}($fQazmw-bM|~%}mqQM8 zpXN|wgL2OJ)nxRo@i6DzbET07pmjkMK;IfK46JmgGC0TSVe0}7C|D@UL1HRlkSM^l zK0V`1(VUhxh{P)d>FvUJMWw;92%-v#$MH&}wxWA_2KH=0*;;xmt6;2aI<1F{J4q>^2;l?!Nk+IR)|_h|4!Go6m~ zx5L{o$6mF=Z?P|BX-e}hF2K~G*$5%(gc7VrBhqR>$xkAevjd1?#>?D`C-dVor;jQ{E& zg(qeTCs=rK{1*o)T$Cy7I}!qLCOAX+`>@I={aY-&@4)lX(CU&!LPcx}~nN3KK(G*a6hxCHx1F0O2- z>*nM!Vn0Ez;%o3o_B#-L2k+)kr~;hUAO+{i?p?X#l|)Lk^1}AOZ77?az7T`#r5Qv! z9)3Ca8?hZ2V4|N)euO6&5h@T0@it)cfl^Uhhpsj4Ju0*Y{2@lJ@uOSS7}T!I_J(7zzJwUZ~zN|=aYgv zBPUDZaEb+l0r?WZ4`*g{2Ogu}&Dx7n@<_5bO)SvrC^QWjFA`qWuQex>M0ThCQQO{+ zgu{|n;3>49!E6Qi)EeCk2l>n7JYhaHzSP%<@ObE1?cq+68(t0f(IV2MFHoR` zx$+9+WTnVONYONBoMaV#^!`1Me#0rvZ$LmB@qg$s?bQJv-50y03K7Q!Gh+P|c6?a< z(YD9zcvF#uWyFmpappx3|)oeNs4 zm*Y{LT@x`{aukZ7y_516J{K_*%bRX+Z2V3r;jObLjY1E%Z0 zfth$*E3hA);T&YVs6w4?gEC@=H`z6>j(Xkt+}~nF6U|?bDDSWkU1_tX zZbZZn%Rybo?yXk%sb%Jb{*hb!`^H6Iob#nw_k22XG#q$#&GYuuXRJbEnL?O|rt#%U zQ&z3Ljm-GJ4pN!g1p&-iCji|y4%D2BgU}?N zI<{q8&GUwN1-dw{CT^IQ;=!JpZ~}*p3&)Km-)Glro=;B1uM(K+Tk-{__QVX5w(Eh3 zSizvDwl_{k48EcDF6;`-u{W~XyJvA6stpc`H~drejn!CAah&6`5Mf*Z7`5h}in&9a z%15C<^qmX$_?`uG55xFNN4+x|&>wUl*QtCE1&^3l-25RFxBBmbS^-fvot4b@kqdPP4T)L@pdh0 z((&k=Ia%qACmM~93JBL9nS)_EA#(Y+x^y%HO@yc0s3C86}Y(?_ z63yuI$cPMrt&J6-JluWjGL$V#K#RROt7b!~f)4rsx12w4H-aC0Nkl2*9rgwzh?bC69Hy8VjVA$T%brKq0S-%y3%|`sC&jUN}xPRs%_mcsHT+Qu;O)LU0H2)UF zHp6kwC&V8r14PFfXjMw^q7tTQ2uB1WeXQvLtBK`t?k&4tVmO7}9Rha;RFI6@kKky5 zffL})i1x)51%R(lPwL$q!&M#((}QyJ!jhy73#VE~-Wtn^6tb`;4fwF{9--5defdlTcQqfyZ!cLYM^4XulKJPBJLx|@4OSWy>&9?%?fhEofUlN@Th>@UYLLsZJJ z^o$ZRtg*C#IMII|bv?N%?x#&y<}}giDvl1~Za?LEU6!+JXn)$A2h;^1;wv?D(@=J@ zTUwzTf%jQrAIgqCqG-IfQPBsYNCptYMOu9J2`WcQi?QYtpgJQgoC&>=@M#3fuy<;F@z`NtJXUgs zz<+mSulZWOFc`T|HU@qb|AT7pfNT{&J0zWB&OR1T==;u(bBVPbDUb1U$L31AirWjY zOGvz3j83Pgjp3HUNIxjn7Gkhsst>_|Kbh+mcFB=pQqQVcopQa|$#bdWIW2=$4_Qm* zXDOUMe>@1@Q-BvMDh>-NY))~^37LtL(ET|suRlddCFy0vc>xqf&^BX#i@(4<19p8w zD|acvt$KnIK^)`G<8$Y5*bQeXvZXWi|@uGhT@`S!ckzn;UM`-avbfSN;NBX%Epju4F+ zk%4v-;h~Q|&nXlg=qXgtuQ18AO}4+hFrXX2tqln5jDkw^G5s`^{{639D!q?X>W`cp zQG^M2I@Pj?i6vMhZ_ZBb4-Ys#52F5o+pE{@)#bH!15!zYQ1kaIh;DgT0qL_73!PgH zf$6r;!=?`VqH*tEMqapAO8FL)cg(eD&bG&rnOAOwxeUF{Hu=!*XGM6wCaR#f^$t#@ zornT8ItqakbA5~@m^@h6GEq;XaWOI&LF)(3-=-kjhe8H?M-2-$iTLLY%x?X_q6q(o z>NA)<;Ko3()cf(P0ER>1n14E6o;-OBl3$4;h)gpdsf#7$nG97(DXr!KFDOdSHp=aV z5rys?t8o(R{UT7*9*QYq53&4KO}E;1HdGhMW}m}ydikx_?QZ)3J@1!HgV-5;m;!?i zST~J$azpD+phqccD&nH~6EpfC;E9Y2xK{!*Y#PVLNsn;$U)PPQpGDOBUgM3nIjB9VD*qA@imiJ(%Lx3!p<9Q`^G3gSPP4KBEngQT%26sT8 z+fWMkA3#O1?M;}B6TnaSH@O!c>ch>p;_`jb4>0NMA+ar1O)&aG{zm^^_K@)74buJ_Fnu!o z=e`1rjny6Io)V+68MEEoGr(x1`ep7J82MfU+yt0PeZYB)$?Z0xNvArE2Oj@1s*!@U(RK~4?k8gw=CH$aM<=2Y(HL7?FZQWovkpppXZ3U0SpDA5O*hGAX?-=yW)T3MjuH%12qkAL<}Lvh@AlHByYnX@4Sa7?YMO( z=>8n$ZbR$Km@$yYRp39IObhrTv+R{yF-}k!$K>j(<M6Eu+O(W+@>Dl4{%wTqIBRXfB9fI3i_=^Qa5QrXQ ztrU!fGS*6>l_v;VYzmt~Pk*x{jeEXM=a$M}p9)*`Lriv}piLcZcJ%oNa>W3s*EIb6 z-CW)0Uq~e{MZbyNJz&=4H()pKe9Wx9ut(kW*Brv1U>&e0vQNj`6N{kGLOlz$;U1KP zmcMWt3N-@hEvYVCr4%_tk=LGHhCm=g>KTnH|mY{bTKK+Y^( z!&=n!-LsJ|S4_dPfoM+1`kb5xAV?HZXD}KY*`-(~0NIxWFtLZ3dkT!kRu&QLv8h(x z!vAEtW8kD3U@Un6Z*efvSbeBd*}<&2pVwk+77&$3z;9M;yTGH(Fby|IF#!TZN7~Ef zSzhCi#Fm`#XxPY3dUsz*vw*k_@(eN^wF8)z9ac-~_DrpM*7|KGnP76MHsn0{g0-I>U8+PFO_ApR}))2-P>9FHJK+FI%`7v)`#a0}v|!bapoMuk31dj>P==J!) zcM6ZFgFftH54KmOR`o7Yfg*?}s#)_*2H$ zfsJ)M|YiK=B;7!TE zV`H>=dgJ#2z#j;|OK@)xdZMqe1r~5tz$L#5& zlrhgXucFkqO)fGd_BfP*5`=KL4JdZudd$AGxu@?ucoFW#@}chmV(7=W2mNp3%>nmX zI~z6<5AWP51{RdZ2odC1T)UClsRRtPA|H*01FSKfdT8@Q`Qu z)i&dJudhk*uKHpN9B}70vE4zH=!afMQg^BjCC7jy)-JaiF_4DlC!y)oP*m2MYgRz= z;FJP?W*K+4oPTUbYqq@_>Nxea<>1Hv7`*#&7O#v$q!yn^YFqc9c6WHU#7v_J0q zQ87rRl*WGs^F?Nq=sQA)%;j&xw{SAg){HP%Ql1yVhg9l`Y!BuIaHHE3x(B+(Hn2p> z)x4}E-P3K=Oi}k&p?zp#7r7B>{VnJ;u!Bo%Tm*;T!y(fh zgj3+bE_Ch;3_)9k)+WSNY@6C;>fJp3H|U-wK&WM9a2(mo9u!I_eSG@+IYz=KStG$& z%$8E!-h9i(>)wD11p7aTB({ma3(ivQ0KFJ)a^U0`{q602@E+SU8vl-RLXdxPa={(v zGh+APFH_s_8=Ym_k8l7sN5?Y{imWeslp1ER{4(xb*S3NeZe$q_6c4Lll+H%aQm;Ga zLM5}2EwR{X%>D~JviaHN$cFGk(+Y%?Ek$NBB2s8^e(`tF4HTyvQCgJZUm-I&j>VNl zAa7*7e-dx(#Y#0bVz*2)-jjnxAF+8c?FHe^Ety8vsO-<4Y~;Q zXAO(gBdlH>yfmjE4jrKoV4+qHtnUhz!J!->xMNMBKlaq^N5hbYH4spY*n{|+8KPU1 zpmG*dWv~|n)U~eIm)jq<{xnQ^ZO?q6raNX;ZtU%h*HKAs;w85OH3>v`#EwI8+0mh=Zzg`PO?PZqe7cMC!`KDVtipk`U6JdT<@t{SZRKr{7Lgxh zgJy+; z(WZ=mG4CcffmZ)~6@71Y*8Lvo)JkVvJ!qJE(pmRcrvHeB_vAcLpu!3U&=j7`u1tE8ZL9J(c#>73#ii<|HSWO?Y?YN=FcjqwID z7!R_Zlw1*2C0~$|dW4m(*`WuBt!Dpu>nHXH;{L0o@ITu1w!-28W5o1Ub`0A9(KU2w z0ESd9axw%NZ&McZCxppm$9{mC=cx%#+qi~{jk?N@=lP7-U}QMh`zMlCLI;PodWF|P zT-wo2yKcL+(|Br6$ojfD8M10RtZu9yQ{OrvZ2%Q+RSTNo4!>FR7J?%ka;Zh&qCeftdkOy+Jw(62GK%*lQgYd5 zWa3}|plVdL1E=M01hiGhJ>F`D$eFqoYu?e0c}$rag%MJB8}^u3@Wv$HmN|1WUatKi zi76wN8~)z0iEV8K4n!3a^E8x#YR|F%8{TE5=Kn}Z^dd3{n}g{!y$C#uhEQF_l-ef- z(1yBJ(hhe3Ai@;ecquu`aLXlZ(CrF^*{T^a(yjyGq>=|jbp4ckL?bFrU&ZEYIzTB_ z)i>CcvFZ=O1@`>#ffpv)!>OqvBBbJD!K zgOj8i-AKcQK%?(Be?&dgEwI3na?vsl0^iE(mFdvRT(2BrC75V9RThYih7&Xm$cdOMVM79BBlBM1!FZY(cyWCzPNla)!o()6Omh_JeMH$QOOV`G=1;e z2>RY6Wc%|O@J9EV&{~*9Q3~q}3J|fMNy=N?e~47s7HAnJ0c_ zvT0}`TL0j67l_^gJ8r&u2EVv8fcHr}ibrQYZcUV<<+6)v3LJsB=Lu^J8!akB#0V;OnF3s*ZA3=x?TA(lma3%wdN$lC)zu;waY%@cq_1I>BO+V8^*yDt&RG@EM@B&9PcRaIP zrE(RbIq|WKe;Fu85x`^rrxpoQ9VUf!5A`%8{#=nsjx*7Z62#s_(a-q5ao$uYir_U| z;A-1W2}aMI-pSrQ3mpqw4~K>YHMN_+yep^^flu5s?U-W@=L7dK z%0nSu$phAN+$sc5d!bd0W0*O2h2`4=PEEI%IHTP+-X{j90Rwg4I}X!86gf>#T@Rd~ z4WMJxJvctR$gD99=7l!rUF<&Q78C>0T)Mff@KXByghs~FyU{~ReYKPkgm5%gusHw% zp-B?(IwetP+(-WxeWK8`TF?x0@nI0D>nR5AbI_JBmZA$mWszBfwF$d(iGzC+7=cUV z{MjG_I7DU+T->-V)$@p{9WZJmqr%yJpb1TZjbd1w0Vas+4Krc^1lH5%XB+Sq;wk+c zMA*9cTf|S6#r@~rcoxMZ&IPkVgDJtg>?|CDl$Py}y@ORuxs9!Er82#CkT$liCmc_D zVfZ!tgyef-`Z=WH128MJjZ9qEK#P$f%eU2+NX3%x;vHyla~_yqAeF4mtj9{;tVd=p z97-+JJWpz75u2?co|Fgi2tvGsx-a4jYX7rS*Ue2l!`*XX<~OuH@Nrgsk(0RgO7fbG z(3h;0y#GL5;^bX?ke+rGmOT*y6u(aZy&TzV#LfZJfu+ctg137nwRLkiqw>OYTUf)E zJ(Pa5QHYixL8TQ;3Ggdxq7|}Ov*1CGZSM z(}*n+m=Cx{mkM6dGgaeOvg({SvYWCLX*a-;n@d`~o^F2;xgygOny6clljWw3NNM0` zZ6>EvH@*-dtHYYF@a6a^817d5gM&{efZZf?eaA4dw^sK{iBnc<_uuE-+@s9J#j+4xYG$aHN0)oV(8 z49z&p>syh6)5|1`HFXN4M_J9=FGvONX3@v;s^5zgtnbMnWzPOH5W?NCmGm3&AyA9* zenITTnQt!^5>^i93FyVr-Fui*0n^Kp^t?e?rD9q9v4eDR1X|WGgcmw>_xk7I_cip% z)Kl^M4g%!25zbekZ5QeEmpiM;U#7ykL5NCx_twsXo8O)90%nJ(xb96aRRdWH}9u z*=O5TW9#P+@)?c1vZbv$=#LjFLIm-q@8n^cU9lMi{krE#h{xRb(=zX;@cmr8Un}pi zc%VLRK9kvBEgyBdv{!B36-s`n9?!bx;4P}y^)HrkxQy7fkR9G)#_a`-wC*$L;&OGc zLdn@0KXW#p0A?j7c}}g!Ow=$|Rq&fUh3auAM_D}{jz{8&0t!)cg$8q7KA7mRUh+FL z^QH1hS?DKbp`Vb2t~zRVYUqQr&?h5O8+q1PRc#Okeg_i(eh*=7{HlFFX31F9zrVeZ z>EAT$a55U_U_PVRX}bEUy83r?_0jl+keIEj-;L_Y^H2qT31lTVXniDaR68*OQmuM4 zNxA}RMRE=b<`oL|^9l)T+=4=DWauG^K+?X2c%STq=SbN%u=wSNdSN?|AxAt3fdpqCud1bl(njcV zJUY`#tmU03W=|^-)f{%*Eq3MDdfY{LB;`G0Dro#?*l&bV?B?G^RlzqrB!k8cGVjJs zzM|d_fJPZ9uU~kyFEXL6YB)as!eZ@JB0kV?dzDC#QEg7uBh5X1uT6a3-HpYJL zKJ-I2s;ZAC`t7QK{tgw^bAv1ASnRH-z()yT(y7mFEO&{TEDRxQIkzj&G$C65d5CMZ zDEJHLvi%^F6JNK89M!8O+|*z%O>z z`^=dkUy@s~3iy_KjxN84So+gDp z)71^9nO#}Lh}gwoK9Et1SMIq@INn<@Y5E-6P-|!TrzB-R!#JhPG~u@zU@Yyh0v(7R^0p zFS^256*#>T-_h7PJ{_5AtO}i8c~1C?NPlBhv%dx3X{js5)4t91U#G49k>h*$(@}LF zsZ+VMe>F?g6-8578(pHCsn2uda-=K%%|RyLXt<>iZ`ZTq7)f~^nnI+oe?>WdJb$6| zwxNq^9q&vU{VF?q`~R}Da(MnqtXABu^CSFg+|Cs_I;vBp z^dH=+11b7W{;SJb-l;C(s~7WMO;NAL@YO^4udY+CD)?$KUS(uPaOsjM(0S~t61xH# zrElqysX57tK1-Ke!1T-#sv-0HVA~0|@?n26da=gvNiVQ=Q?@uUS@~(yLGGxP8MUCM z_F?OI?E57|EK&Fy#GsO)Wm}fsJ(Bg*V(Hzl6?B$dK$@W*^`3v-m$PbMv)sSYuo7r% zLVT2kR@}Ofd{`Mn3gH7aed+#9XB(}aCYXv+K|FuKc0G-yVBSv@+3FVreGz==qhTWl zUeqH|eHz-QK#2o{pv+t$Y2Vo(A3>GmbzyF^TJ(15Men&kle=uyFbCKy8K>&~j&GKz z9zr8lxw7~##GB+UauX<3FEN5%`o8!Z)a?^gMxD)M&ws;vX3rnn&|V7NFQ1<=6(?YJ z8mlHv@GlMHg2o($2CJU0zV3@tBEvARcRGCN@@24b@uVo$AylzC#Un&7%56BYn6G12)tw z`;rndBPdfbYaE3RSebmEo`E$J7iSs0J}08KYGL7#Foa#rx!ZTeFvT#de+ReP>q>uC zV&W^Xys>&ys!3d~sppm0{tNsmX!N5?)@%gVibt2nFRp>txuJDa2Y^vN%_|XH5K%Sm zCw-@lz>L5h&i(P_RD)#Ga756m#xTtu$p-{GN=ESkKD}oorwFg`<#emM7!N1& zVYq}pBzOw!Y2o-ImGKH7f+d9GP<<5{ zj|XXxwC_OwpI7!9?)%a4li}_iZS2?%s3rOFlNTj^;&Mvm#ZMljoXf^fHi9{c8C^B` z@ss%r;Bh7m6 z*Kx&`3O6@OR6({`zZR6m_361=FaT$&x99x{zo6GU_hP2J5T{{9{0?LW6tO7OCCAKy z@!}*skLFIhPm!XN6s<2>4;pmKzJd7ag8*MG0J4C+0Lg=SfbT>~>7)Z-8hBz$yozi8 zqM(BlbNA!?q!(N-zEPbAw;ZYDy`0#PSH0pJvo?}rUV1I-q1EvX^1}a{@r{eIOTscs z5n{lQBc=ukosDn6{KAzx5Ov^CMp6zE-xvu9`^Ps3H$T3yU7QARz4MidZ?I~9d_x?z zpX8HPJ8T1w2tR<}UVLLGROYPk-A)Bs0S6<@494+`K5(Udq06;Yf_q-#V19bK@GmYN)T&ps}g_g$R13*h^cJ37gLsuQ0i@T5AG69!k^DYQ}~^+7{4k+n>&fUFvuAXqg7lZ2>WEy za)<*iHgWI>b(66?iW%Krm_^`lmqG7pGU3;zr?v{nx+(T z{XnDEl(R*?=pY>ILl;C7v;_-=^H5em;kQMK8M&mjkd)0HA(MWag0Km>vH)hkRO<<@zuyKn5&TYEh zjeO7mCaA9e9pN|ItblZ(!w_^r*Mv@#w+!IV)&-woLEMOe%MsQksG0ITSP%C-kYso2 z*U?m#aCOK_Jq3RgIwZGvJ?GbfqFnuqM;WoOyLYT7J$FF8f%hwqLW3d4G!`eb8GSM+ zdp>2fJ3}fzhsxf^D&(q&w(uu@xonyn%Se-Om%9Y(lTNy)aA7e!&*Pg;G3s4A+=(rK z(~(0R55uQu?T2zu20x{k*y)Gvy1Kf+nf4!Z z&v;|WhiKd}H$ivRN6xZTx&-iT{hZ?$LR*EXg zsqBaPGKX9Ys6WDS4YJcyU1#MavJs}~?gzXHUgN4((NWz+bZ;wOQ%})5Ii|XF5^+1A zf{>?A6Wrq{5BSk9BxWjzFT7r__r~f=@Xgshfk?R4tm_^YnSc|yMk9CTLP?rj9(Ij8 zHcP@K3Rcm?3dlU%tf6M(b62X~RT1HbWMo$84xfQ6@fIX6B4!zf;ZewU&w2(_IuGS> zp1=k1?}+A=*$urIa5ijR9Kq`YsfoSswUR{nh8^{4xQwsJ;_J?tpIg7Psuef%2aA;vA?j^C>>c%f*_ zDw0>0yD2;^-^$(s;3toPWaf3yFBBCdA9$yck0Ixmps`{{PQ%~JBcpI%0_ttxyb@If z619qeAsFB=(*)c|kn4U#T3~7Y7%7|`&AfeE0mgUD(E4U1@R8yS?bopCq%r<;d7tIH z8`KI_%#!D^ngFqD)b>bZ{zzb9n`04*5Px?v0puK#<31nv3>I6?@ug4WVzn?HgUqrm zm}8h5dV@4J(tQsRTa&$$X(a}qwo0!5Eg`R%h<5-vTT-6)b_PQQwhZLG~9k#Ew-F5z>7T46M`2 zI@h4idLO2+NTJNV8E0eude^T!jb1_;L$O;U1)+kJ?E12JfW^I@6yJ`7z7F>1$be z_4(d-e@;VwqNi+g=HfAabEl#8a#;aiuR!Tf?l4q7O8lRHqmGZnyp8qb- zbLBZ9&vbe=>;Z}>f4)4o%JZ3cHuoH3G#)DtBaB8K!ZPnEM6W41k1KW}mcIcA*?Xa-(diVVO+ZQp+;C<(cHR%n<%2=c8fl;bdi8xhof$ zNKw0qMMrg5Cf_BevzTtfh<%T#rZ3sfmTWsrd+qe(v{Os~g{-o2FRS31g8~6Z8rU|A zj@o3Ie5X(z)lq@_)=&!v>G9VxiwNO$Od57SmkhX=5IjTGUpQl0aq@AL!pzs}%ZGPi zLf(Nakh(EpG&*>!Uj)iG;syw0CaO74hC>EGeOlFDQiGA=hmi)zCnqmOIolS_#3v#H z16pjq)gSx%$1FJdK4_Cspzb9~whh--)QX(yjb`9zy>Z4sZ| z<5Mx8-olgAFJP*TDVarUd0}31RW|Ko`cK((h-uz$q{>rY^!A6Az=CXOtzQc&$tc@R z!$C}EV!FI#Vc$_NI}7}3-pO3Eg(oP}GBa!joW@n8CL%fzzN{OVj|9BSjVc>=;gQ3n zmhcxzItql>AY};iL1x^gN{#gJZRpyD8RY&FW_d&FYtX#Lts@s0&RLucF>XF|ntsDp zW8?8`Etk7caUNo2so*tXoLR#1jrarJA>Uas-dSebWUjI;bN9)rY{l#l+69u zxZsmq=}6NBkYThj6%%FH1wu?ZVM`}SU0Y^=$Zn9=HaVSCB)r--IY~&@H(s$kxZgv< zFv>^$0~qUgIYzszUqw=_y7HmczHoA-VoIk^R01mKFyIbIy-(QEyaC#&nrepS47G%> zKZQoEU-RHSEx&x5U^5GRL=@oq(5lJ{$V*ZXXWO2O%lIlZ%zIenIZZDwo-x|pfPggi zzphqWhP`iJZHG*nUkcdt?1nqFskTNA-9k^Y@nIV9gv;CS7ZM2&xvT@a}5c_>DZ(J7Q}c$o8-AvNT>8A`TmL&)+*etZmgb8 z1HK=|e@k|{MZPUU}49s7{# zktg1Su^b1RvZ~>09-%SrI1xEcWhcu0c{+?gnaqB?&o`igK8`LpY<1^ec{NB2}>UIo&GX?}_J=aiS!8gkE)Sc?)OfS5~ z8*jmZrdy$SZZ7JJt&(xFh%{O+pc--T2*_}vO5n=<9Zg(70%&O_k~f9(+d!1|Nn82> z>#*?{pg8%!-84TfDDNJp97Euz_u#EaCLspQp7SDu%$`L?Y%xIa5)e-N2eMnZ?CdIcU@BEv}TW%eMb*a*iNDQ*w_pui*c{0$lg`8}i>-FSu zs+MHd{XO+2J|fj!}x?+N1^l}x+tfyN=o#;!{mris3vG;xL~QgZW&Ana=@WK4(QO zYytc%v((_oUno6`rXc{)+*#l>artwK_$4qLa3cfbhCWcn{Q>wKQolKJB6ejU+isMi z^0Ds0NC>a1JPc&&L2L|#Q$$%Huq?$r!Y@Wpgdi7|5m18pqr@I3i8#(P4w9qlKtSan z(M|*-_G>yxhEaDe#Z%TTvb_&=1;TX1IRY;Tz6%EEIR91z{|FPbk2t~^!|h0PsKRKx z33WY45&s3+LsFqUB<0FO0{ubxM+6e)*FGAjx&9IF#YcE?VE+hRIYvx`vAX>3*Pw)b zhxkV}=lVyEgNI-HNBaMUG>>Tih+H})(#HBNt7-p86PU5Lf8LE zkpkrI?;m*;@|XURjreunH-(z?kI?C~d^-sWO`sh{cCLR!@Wk$*t{2F|X<)1ex)Vv>`?Ri1&7t0<8QaPar}6h)4T-S=IB87)zjys!@YW1h^i>ssbp- zM{<_H%k`0z5=d_!iNRvwVt5nSaqUXjgJ@k=YnW$Rq*}Z;%Cormpanx17_;UB4R?&nz_{&H=^Ke_}+_bGYn~lqcCgKuR1g>K-7aZ)3lM z44!rZs4*1Zn&&U?<$t*kP*jKW{Vyi+^ZhSpL;UXNf4LmR=zrlv%<;c0hasH&hGJS~ zPcQ$=Jifg_EgjUR_w&CjmpLw84bT*>Pl6|-i|bQH2c%Z8lfwW=TqVvriagGK`rPKc zB94m6l^F2lbNm^qz<)$+&%}$G!bk*5UIR z$l`f>02rztu~haH%bufJNuEMH)PA5@t>9VpPxN!%_X-g1g@5EC^7K<6NmIp<5aR6> z!7KQ8V1$1|@;vxPJ{Ml=GZRBd9H;43?r=kg)(!+rJV?xI9mnZ`TZB zAs)G)wt~xa-hG&jo`Xi&+)ZeDl4^S3Po>eD_;)aylWl+5=A^6W;P<5^R?4=t-+e{W zzZ;~fH=bnwChPuPPw)e;mZlw4zegpf&nwgepU()R~+8rXm=McE8F!k|6 z3s4t3Low03%^BekKa^%-zX|2K#gE%=!v!&R0Y_@ZOgUiG*vTf5?*0*eVa33GP>4Ig zI~P&GYFvf4nDKM@Zo9Eco|cAFI(}APm!jeu8L8iFScKxozLVL%YphR{_e6eVHe)}W zzcCTrVXUg^W2~B4zzupW{F9TYbuE1=EdThs}N~7?-I~i z?LMGhq-2{r2bo#5@+zc~HvkmOxIXg+%5o(RC)^pRdB+%avAiuj; zt{~sFKyOmxrM4xW0ecuCf#iSlSD0AlBRbV8satjG1*W`fkmJ_@u$pxDSLO8wP}bEG z?M@wz{fneL3Hl&Xso!XKX6}AN?lNq7koX-3{Aet%WVByxLBzQdMsl{GQCzbXRh!4I z$46gq0&?DYxYYu`ywd2-}eC%I1VEoe-ryoeJe9W#Q;Tc z0ReRxbG9z{8Mp}zrGD?2?CBaTH3t~JO(-SnjTqt(MG0N~X}rh|;X_ENal3>@g<3yy zj->8S%NwM=?|g;z6?xDuLMqt>9mU%?rs)|kB94$ZIMmRCW28=WtNSwqzZ+WHA5+Lv zLHKA6IWB0|cleQsk70$ky2nCrW>1o8u-<&f#|4A#2!XQ*a5M`|4$#xt1ErDok6c4F zl9wMCjkDxYPD;#>N9_7E8u1ZU=$#-oW;+vSCsV_zLCgYdk8X|#oLL#mcWN1yKOOpI1pEDi+Nk>v|4NNiTI_0Tvc-3 zA4l;Q<}+vb_K;IFS4M%>~~v~w=^ z{TNF|q8r9)$*Hxf^o0*{WsnhDiI%Xrv<#be*7u+aK6(a1EM@NbBwk}39<9a2%&6pd z4z0zE&WSb$d=ONNDFgu=yvU}KI!=K^&L0&0qorwQW!v7=j z|0w)_GX6gW|BuH1-(jiKrR=HlcZ?e8wcp?xyn4>(9uTRDMiczlt_U@ez!C3Mqk@ir^;o3L%!L=co!L zKfr5%FU-TV04aN=2&aCWqx2`T)UWRX68+e49uhyL=;imgD7M!=qp^oW;3CTVr{jeg{RQ%Omix!wL4G&)$1HamxF0R|eoAGyeuO(KsVLF^ zj7K;w^?nZbXHxf-hrFvD*W3to4i`HwPe`#E&5${{#?9qP#C{D>qmHmo#1%e_yX>- z>&1dtx(C#@XW~Ss5&H`s)mFykYG)u1GGiwV{^E2k|B?e0h~?Xu){DWU8wqQEsNp4+ z^#QxcRdEc2=9xcZ&{Y3C$5fyB$ibq6)mx9(=kszI`CtEsy|)jHs=D@uCt-kq(TNx> zDoUtdL_rCn5`zjc6VMVsBxtP)2t>J}c$1j~t$~D-Xig7Dsfe|`-s)rRz1C}M?-e0} zND_DwuvEjxRcyJ}l%k$-QjAI=axHm&zqQYqbIxQE?E60Ne{YnTGyCkl_S$Q&uf6sc ze%Td)DWU*x%>sK0`D?ec`7$X`Q~gP4bPyK5y%HJQSlUm0YXMKymjmq_f5N89(t)rg z8%jTHXg{%I(hZ@;E09PIZv6dGg~=OJM5 zMp2w=5<_(-V6~j1;Xy(n9u@W=GW}KeBbxv>(#HyHp*c1eJ2W4ps$>a8ew2DoI&k@! zzLNP;GO`TEwSnkwu2M8{B*pfC>%nEdQmS)mKpLV`hS#o6xt*B>&BF-fq>#-ykWF0h zCBqWzy#~s)E$JlCy8U<-$2U~3A)yh}usLGA%@M|+fsz%qKJ*VVKBJs&l2fUn2kE3e3O-sy2db!x9Wj=;2inBUw@?C-ymwadAmtvpT1`>?AHX*Du6zSvJS!vt^+ydqW;^i^}T0uV+q&ati^2<^zF z2wh`Cc^fHiTYrmRicgCnh&G>!P^nXSW3SSX{kWeR9wY=|TI_k|mP77^CVy}*bQ;bE zK=0reT&PvTw4w~j<4A;rb=YWK;zR3f{EDTsU%?1{>cg+#O*;~)pykX&xj(~VHNqS0 zv)pEuL+4O2p5>gzx(xd=I~< zFk_zrGX>@Cg?=az<;0FcPSsrjxIeM8kzYUBIIo|!e2#{~3H?yDe?CgF1s@{SZ2`v% zv71@<20#ilLXGrEo9Cq@oiD=qu@8<$IHzNR#+L2t6&!~Wwrt;pTy`67QBc0;gK{0A zECdv1wH`dr-ZJ~01eCX@DkuYeP>wwWDD%4kWqd!a*^OK>*8m(30FJCzcOvE~>wO+2 z;PKvKw_koa{*cBxKjc({8W?-myYoCD>%}MOS)~6Ig|RbHW-u5iz=&?DShitQvfL}6 zZZ6?~R0H;gCi;1;sP6y{)xg2$gVJ^wGlMwQ5XU1YpGIUe;(z+dZ!_Y5F9Se1!vN<; zsEENJn>p+u|69o6GRJT5i-*ax3%35w57ORwVjv5n(Tom?(AL=GDfdBIgkO$#O6EC& zQA%&iXKncrI*p@+*d_RYf7-aCpB@ZJ6-{=9X}$`-f)^fp6-w0c^wc-}J@+bDoF<9$ zM>iG^vj#rF&RGoSFSKz*mh29a?HXcL#@AlIGCaLFa)w~$i_om8SrJT&ep;sWq(}dR zQ99PZ4~XuM|B+|-*<$pjZJ6DG)9pY_?TCUJEFK7XAnBk46Q@heRvdN(GP<2HiY-DM z%a+u{eHmu>C9RX|aDoz{Jz`BX*_daa5l-8R0zF`~wlKE`ir`ucX^}Va#qx1x_ysfi zGD@QdU*e#Hz0-;v2=G1!Y1J=Gh+t#rOH7H9?o?n1q4A)udZMY!^ zZae*Hv-)K&pneP0S+A}pE}6ikE&MDz7PMzRTGtkaMF9td8;~SO-S_}gUm}i(w4zOV zJ$zL0kEt*i&m5P)>ZL2I&Jtg-mgn}_yH`YiF_J$V_)HGfEgwXdV>fCmxb8iK-`M-R z4+qs?#1En~qH8{?Dv=82p@qg4rWiAV&7Tg`t6yS#=sx(cN>SL9xMmd)3qMCu{f7Ri zU}}^;hn0~eq<9Y4w^f7F=C~kc`M~_@mm+sJ>TD|Bn_6$4D1zmn7@1l&0w3&5Oyk&W zFdFY%HaG{rjFRWLG3>QEU>bf_cAV$+6bR-OvwZOuBmA6xqWP17#+-4P#`JO7%3G>E zh&G1w(mMEadPxm^zE|K*PemKFN#n7iBZ^-NUip?|=&KM&S3e4gMrnf)UY*;b@5T}G z$691vK*`gQ;1s>&X`^H{#;Hd1X1sBY9Xu0Dve9wBhbENaZ|Q0wJ5NxxE`Xu4uLt`X-Y1%Skze1EGHkClDK9OO zJJoJO3=JcY6_{5vwK1eH7`h$)F~= ziE@G}jv@v?_NJAKZbr2R^2xab#`L`G+-B{O%mI4InyM-Y7zo3h6i+*FwfG)#(6dQ`(xYRyIHz)wO7dJ698VvhQVFueGjYiOX?~H8R0rT3~{P6N@~(} z6oeZ>k1b_}a6@bnz8ewc2uvkYrBWux?qxO48Nu<$kpm`1{HP{(2SDLBkDeY*=Eie2 zIUC<(bZ%q@lhvi|Kmry>)Zq)zo9qVu0x(@Av<|;w@6!FRQw>dt$1*A7Dzuv06tQme z!McgCE~f{|u#f1*O*JXWHxfB_>%Oe;Oy4eWY_p{nHT#H@GEvH zYt-i7u29;JBu7J`;ncqNn^*7#mF`oi9d_!|Ds{g~&H289vVwr0rTYqN)~Bw&9l3lg zfYLE;k%GS?{t3?yH^Z0+!h~zLwWOXVl&ch389DWmJH>$0oG!nTni7jGrYQ`*S8-fLeBh$Zm>#NwlIK2oo3WRX^2pl<4;uH<@ghwLHZMN8o?JxOyy5FK@H5GoP#Rc z;_rFlfuIj4!vnz`{JO1ag5S&VdO$bgHCW*#^cm%+#;aqH%b~_HV&JES#4o+zzp-L) z!)v$QMDT!J@CX#OXMUXiBQBqL304(jsQQ&j)# z%%}w_XWo#scyF`iKi)E0O|6(HqZV>%gF5?L=1Pm-%n-z5d2>d{zw7 z<=56MV(FZBZxn4|{sA+if6d<_nYYv+bLAjieie(-IB35|3vx6tjc+H8(tZ25Juik6Sm!4jYrd5gHJdc$e4F@rlO8+ zjzePPa@$RSuZEvSmevGQ!^gDujdjeSkJnm)D8uLIhw$XEQceh%aPN;3pl?z{RIdplTs0^U^Kt12!wOyZy0K240qIL2SzRk*)ME1gpIr3T-p^zca|b5F@d-LT~!< z2kDHi-G#XYL($%3Po%X^HcCh68q*9uvtSie(s9j?`+6zO#) zJ2di-`delLUK{oE@%f`)M))k`&?QCh3StP@uAfjDE()N~kah)9x$|hA4vE z=Dmki{YITR2L%k1FZJv$eR@|=F&YO3s9>h;SZE{l2AOJ;=n&O^U+g`op9pOb#?+-3_8wNfSaEfdej>RP zP(xa!2fxtgd;!GShiUJsQso~g#t=Pq)80?&Pee|Y`L?`cyARi&h<4j`DVAHu-pD() zw`1C67-9`@!8MreA}rpqRS;jZk7L}aq)F!laZy@0D;FQw_Le;@6|68eqVf$( z3b6P_)nG)8hVtAg`w$S(J(P%XNQ!?V z{4^TyiER?RhJ$OZ(1^MlbBZBTC7q#-Pv0t!I5ws95RQq=FF8;#)z4pR>rlR6Z4Ev{ zS`gBRs|ODl+Hd)LLoj`B$B=M`tSDzbtc!x1l9eAmP~OV*-{Fo??TkK5XbEk&UhB!K zEZ2G#N}q=6GC;A=h8bzv=UKTW2lhVDkzakF;u^zO-wMgoe|;!cz7vi5AzNZpcVMP) zRCl7rswY?nprZ~T5US(KV67(v7h4LUwoX4&H6B|bMM`3)G4+44lTsU~gY2_Itp7@Wd;D)G)0UiC zhg7r@l;XXAf-sz%wG?~Zpx7sl@x;LC(&VP| z5>1YM&N&#^d+U42bvK}tbyad|I#QY6(MOq9`f}={dukz+uM;I>vuGtjR{v5vIJjXq zHoxV*zxQ+O2(7x-@h5%qaS!-a=^FhDTidj`%BD2~B`bfA>mCkgArywL3wJeto<(p4 z34hH8j|Ssgz}tjs1IOA0WF79!IJ8QS3tRu+9)R}{pK!9BW=RP}u9Zt&Hc(vPC-t?qLZ{TP4C z`q3~lTob*;A#L#=S&w*s#|D!p@AW0U1cpq=oAjrg_x@H8;jpol>{Ju&vinQj?OFH6 zec+ek+7nNr!7Ji#uff;WA^6bWa^8^iE8?{$z608>JX1D->8qWWOytXv@^X{7lutV^ znYbb@d)3V?tOv%M+$oOe$NZ(VU7{0WwUx;PhRT>lbrc97HA!XOo(NG6;M1sWkYyAn9bPSGrS08PT2(YM{? zotPxEvjhHS{K9Q`Keziw$sC1cq)q;M7#*C)=m`!M*rb za{6U3Sh>@XWbN?4=3f)iK&@lsK%skmJAR^us_T@Q^~=X;|1aQA*6Vi(>;Y9%-0_Sb z{yL7%#aBt_j}-V1aPbc+{DWFY2qV(kEyVtOvQ7OyJXHMlmzR(d*WA zqq6d!Xg$NKay;#?ll*ymrs9SEbUiawex`(HT^D|sCX@8~Blz5U1~4_{QLk@eGNcI% z4Ed4I%tmI=*S*D8xJ!Us&8VhsZf6Q+OsWqP)*<|YyL$dK-1chnN9-VUh*8h_$n%$A zyGHzDV+-rVk|BPYq$B)K@!Aj~m61O7nIIK=$ps=dlrfJct4*Bv2u_zNv>mpsz%7Zs z4??I;Mqh+J-Z9pZON}k8PN6yKxS5SX#3O0?Itz*LBu?xVnuj(%5~RQQ`0HeYEkp^6 zVwmMEAuiaEzpyF;pZV+fTyctOs@w+ZQeo5)6cV}PNsrjWP8?K67(!x0^?@OF(j=MK zAN}eyqkcQHv2W~|ka#D75)JgoIn!|N1iHf1cF^NTSBx2sVah%1optPiMhFNnk-F+T zkzmTF)LSov5Una|4sMUJPO20A>QQ)L3yg9J{sC|8qfz@Ycq*oL(60SA-$88(E;47~ z(3IHwbY+}Mp#aGvc9@r9hZjG(_le z9wcKvG87YKIQ9?vK)NPx&rDl3Cv#_>q(u)w=IY5`vDfJI?HTIYZBbhBRa7eBr1+Un zztH@i9DnK;8~*`b{0G1(1O5Yi_zxHS(}8BF?gwxdlKp+vo}DxG)k+*Z?TKAR=VEAb zJLDWsT#lYXKd${&_@}w}r+e{F*A5Qoh5zkj>PHm*w}Bs0;y)8B*2s5CUwZnaBX$AG zSj7-n$A^->P&d}nKfcU)rDPsXmdfxH=~fxAPI2BR-V8@g))DwPeu)2wX%79U^~YW> zx?%RM?Y)v~=|~(+_}h$^Ke?3l{c|ki^19scig9Gk7{4WIOHi7A^$^#qew)r0H#~LE z&^pp~!#PjW)2psYB`+1xBwll&X!Om~DtFU2PuDsID81MGISwvJS8i-%4D{28Y0*sh z*0i6or(h)TEa4I{sLqRDLF%37vG8szS~G`sZSkkAm%YDZ1zfn{jPDe&%=aiVloCamM+FD%heO zA6$8nVbJ0`^fC*(Z_>I4>n&A()#ZgQwOMlz_2<3-bu5tw-%TSye@tU-oDo)1#%e4f^%u+6dYhcBJ15{p$&T^ zma4Z6`9N`a{+A(bu_u3Kdcs>(8T9UkU3wd{jZd9TKVEZuWb{=1cxXc_nl=(mJJ;0y zX4|mO&~wr*r}JvQ#$;{Hyg(q@;g_-2gf~JN!>t1eM6ihPtCw>^^*=?9m(y`*1ip`k zziJBA|D%*)KFe#a~r0SKP3_;mf>FR}g{&mE`8}p3Vx9u*z9$_Jlsy2GTZG**|Jh+J2xrY@YLB3denHz&Un?6A-OXgs#Gj@+t%EXsb4kr|Q~!;r4U(GS zras8ja-`~rp-Jtr2}t7Vp=IB?34ng%)^Ho#aMB4P%Ok8f5H>lrY-h9 z$+U+(C&;1AKW9o4vo7S*hQzzr_5A%W?(eht`x*E55u)>$`};lqMij?}9eV}8O)Z}- zJ6|4W^YILMT*Su=76_vN6jePHB58zyId~@@TTc;a z^HI1qcOf=d%V;jrYiUOK{ha##@zeO$Ya8*o&GAprAF0;wh6T%C0-$gGuACWmrM-MN zTdbgO`L2Fc*6)5I>vubx^}8S7I1VgP!KktS<+*DLLDd)i;~VjB#dRA4zr*_V0#ff( z;ALoQ*qUY>0$>K8GA7j;b80ivKG3VXjLpyDP5ueJx})MINO;~JkNqgX9lDnxbdEE4 zaB#L!Z5hGS^Mm>2-!UFNJtM6f(cbd&yzzx%ttGo4+EL!-gy_BOcPh(=549Fe%)%iY zjeqNh&(==?mqfS@EF+o4I&2pEF|xQUrs0>dR@#WW*`D$ASHfRn>v`E%etu-5W%zf&3FI?dJ6DU6gBHoeYKMMVEzQc6x z_r5|Zd=hS&tnY);a!y_44ks-99%HN+fe!Jm{`?7C63~b@;RPq+w4c!9+|7%b6^esV z%w2}|e99qQ@hmG^b?qf|AbJ&@WFOB?0Xuyz-BD76I(Pj5fr|_CFnOu5`62Upv^xoZ zj$~xLZqfKmW6t<&RRN|fgImqadJ>AWqL^1xqz(=Rry51$5WpRZNmxE&{%#k3VP5mV zW#L^l(}!lI;V1Tucd4bla=wtDRkJ7~>u(b%!!KWc2K!-6+oG5xt-D6Z0j>e1D5V%(XcGGv(C9eI1}ybR7*%D!dJvoDD73E z*0JkVkAIHuMxIP;l(H;}>|^J#bM`R{7d)1BqTC($A;Ia%VO^=^)8@2W*1t4Z^gkFcMaV{mWiE>59UdSXMnp$M5n(Q0aAeKD0X{y%nd9q z)Wkb1)h1g3VXoAKARZzbrsmQ03T-O`#aux=ejW7seds7v)z%06RoUA%_92(F-32%K z2f)c*sQLz8CqSy@#!5^Z?@-{Ju5sIdCay#&5Y>+)q2k>_FGQ;pzhX~8AQiQ0re|c? z=MIRypv@RMo_ z%Up*-GC)d5Mr2%;5gdvmq9R!C8XSrm@WfnT9G3_kHoEI40l|mSb&XT{Y48)sL#PCOei8AGGzPrZCOA+BXEs3}RcbB4Q!ru9Rdf5Uu7pn45y7!l+4Dz#L_ zSWEI?j@}HOj!jwlJ3^2B8(!wWQ*o}oBey-RB{$re25&;LL1(Ebj&Y6Np1T7}72h>x zW~9BF`#x3(R1Uy;0w72eK+a@mK5#jf3&?D@s)xCwUDz>}_N9WzLlUFs$i|51xwd{5 z>cN@k$vw{Ty2jwNX1G>VWVi`jE>sR$?~Mgpy<=2&rX5$%;_ZrHcB63C>cOp`Pr$mU z6cV?&2`$CCffO{Y?l-|^yvfWMeYarfXO8`ehia))l#ZS&>hY2~U z@SJLV>LllG#roOEn@~{JApDB)I-ND8jYkNZ=K;`TAA36)+FT&jrPNu!!{{J|lhbHx z_E+)Rt>@>=Y%l&*`cV8)uK%@Ku+$vq|DY=CI|vP02jMXw&SK-c2qmqpIF-!acoi8! zIPLWJ!L@m+Q8yqH=0ZRA%17Q#1lJ_UxE0;mqmE3EW?HvOb+6AyNsax&`4k>4TZ4Lj zQbNyzD=5ghe+A|3H^Koyt4iK;)WP>U-jf0{dO;2upYWT#Xq}5ndE2&v#w)c|x#(3` zhJp*Q#75!rY%%QEl4xiz6PrN3|!+A^`gOShAL0Mk2q&WayL7 zMr;z~ZB9Q!0-o*+)vdu3&)314?erO1OF9<$MKV;mC|2ns7#>*y1BPSI&=6Z2%D%)5 zN4Ohdv}~dk&X*^rv1rg|SFw9L6(#5MH4^_5i7s2W;aB`WWIR{KWq$FWLdU7?cO_kN zm4;}6*zKS}lKvO|A1()7;ml!dXU&?)Edy`NAxX|;|A;@(fgmJ&a3W#Fz6<@!lT9+q z+KP%nNK@V0 zy%R3oVR(USt36vI*k8&%sr$dM;@&!ND;qWmP(vFB>&MZz zkx}09m+IVS&>!eYyA$JO+6{L`hL&lYi9{ee5>17(PPYy&DJ$=p74+W2rPwENEXDpC z(FR`kmMt zP3hPGB%S>x>OQWX*=*cAI2~9U4EA^t01I&+UWPtYFU&BeWa@?3`IMy>W*Jkm^+GIP zX~(5WdLie0CGUvF9BDZ_+Svx#b2>B~v;j07>%;iz;Unx%$SXqf-_dcGc(`-Z$olv##|}1sHV_K|!dd3cNaG1ie)=Y4F0zQ_R9~IGG0+l^473&FrVr_T=uy3v&t};ax%X zk&3~%c&q&KK(TBGsKKID{QgI<$M#IF!T^8GeVfxAP$oR($NC|5GuLkWBb*^R0RyK8 zL66r1qo7V8JM7F?MoKqZEmH!4Y0EE8;(shrxRJSW9QPHGA^5yAGGN-nG2TeD`o?s; z@G6iY+IB3QV0@;r9Asjrnc8U!ya zh3wX=v)G(WGzXG`qq=dVT4XS!ALFBJ;osWr%&K}&^^aN49aQEU!#TlN|1>-cTP^g= z9)aU&gf2M#C$yn^rXjDjPmgGAvVD!XaRnl=g~_`Kjj}Gi5x*e{=DKGA%B*iB*mY|N z);0w@Py)G2$SL*mf@fY;y`IBdJ3;Xr zT8=$Ut5w$od4MRgZ9+B{ak~b&)ZsmN`yAh*cNI_=(yIunf#+BsG^<=w_-A{RRVKt2-sKwR-|>&5BR1nF~8gV=S21|4$;64IGjd+%^({GTQ>^$U%(Zk365mZw^BA26$PS~2%{$1 zTwg5MwmO>V+Jx=B6IdwQI~z~Qw)gE+ws$9n+N@34-Z*~6SGn5bU zirCx9ub@x+x3?X?WER-lu3z!tTi9EtKI^+u*(z41ZobXJ#D=iGHu{IaSXf`2k=eH! zrQK?n(`=2LHVQX5CH7w_e~6AR)^EIbGx5KIAhD?u>o%|(=4hl6Tk;b5v7Q^F^y2j9 zgBe5G%}L{MUadM9HE)IXG^12XFgjm3H0A^MYEv%JTn#7A&c=>1l>;~mDh<|YKymyt z7-!B~DEln?RiwQi!JuIN2c_xKe@%Q#d8b|7A<7@*=6W(FgH@v7Y5BFTCx-p2n43q+8h9S*(;y~mMc zhJqWk{&F7s#BylMHogLJiXTP=@h{NL4nH71nQ3i>>BIde@aaMumZ#%f%mFe#XigQC z^QUtGyH!|Zrr?T`Ol^1dF;wH{l;F75z{=LiX+5oz(}S&(2LOuL!sPbgE;v5i++jd4SvN@sh8(^#=JLos-U!fk^`Dj2V z@bEA%?;Ga)oBl2))@(tUU~8tW=o{303*>2vlBcxhM6T#3H4o$H=Z@Sj%qc-QbnX5D?)MTf55kQqHs@OF&Lp82VP^Z4=`_5=T^i0#^eCb$Q}?Gf&dwQVD~MYa#uZ^ zg+sAW#?JqKe1oEb9B_Szrs&|=zzR#nnj#VX1p0OT#fm<~m?#6B;sL@glP**%8`KCm z!x}+)_pZ7oRHNhgw~U6Vz;RH+ZRu$r*wjCrpwQpWf!pza78GKhPV@GUBM&1u|MVKB zp=-B=W`eFb*W=f~kA@PspG6LKG{X>KXN)(-u|GBsmu4|z8~cUM5_x7JdIzd8v;oW0 zc(8cn`}X|nZNP4-%@1w3xJ& z?R`{R%g=zF+k_dOngriQ&W8iq#-2l9&3Cep-QVPDOn7A(XHiv)`VzI-Gy8Uee0XR4 z?IilE&>xy;T_N~A3CA8`YL?~duYrVNYK6+>gc22f5V?>DsAKQd@Y8d?H$#ckCm&%P z4gD|haBz;mnY<8E@AOPVk>0SXPr2-~=Y^B1HS z#@06I8b9dW7q}=U?5iW+g5M1S|9Qf9(7WB=Ow$8Hn(6W@f*U=BY~MVTH`o3H3Od|0 zATk^Q{?L<;p_k0H<#;mSsVa~gb8 zjQlPISIXjiQ~Qx0zrTE!BjXXG%!PiYw&xxnfq#b_@dM`CJMTx%?qFhJtM|M$r@yX{ z_R!0MPQ|gAWwpoKr$lhHGuhsr`gztyfV%^h0k+Kq$kY58FEFsPH7!K7IF{d~H~8zl zDZ>ANU-QVoK;%YKTd$yH);tmnL@vhZDe5;!w9l@`=C`0*m8pG(ck%spdyn(SX3zY& z%g^(su)eMEVQ^&?4{poEx6LepMLsgUG%C>)TRc+mb4cJV13Y6^rlJbD5ZGqiJ%fYdC%Fs*8!46dM#O>Gunsk>FF!wXRg zyF2ns?GDxv?h<^UcCdKiEX*rs6q5q<(d?k+=~AHlzk0EB_ehuN6ZEjk1&=*&VN7k2 zzZGpLVDqV)zfkhODETM*nc*j?@(+{z<&uBCKmWbH{I-3^oWn=glQcJ=2m*MpiKn-Q zzgn&xA6RuZBI%2fs;(zRYLUag#*9p3E)D`4(vGv_L1wNb6{+IkOKM++T{p~xbr|j_ z>}?hLFkaBH7>GmLBAzQ;9hS98tVC7gFW$JE-H&Au@F736eOh^ak>H}ONJ zwwm7u^rO%|?WXn&f4$521?KSi+=9|vqAfft_oGl<%>$^o-W%l?Q6$D2BGJ+rGQp3B zu-t2khnccT5f3G?6EN*~xHa}yJS6ce^v9Fek)EH!Yl41)Y072m?qb6*PAbeLeegXR z-B!zPFT7sWw z?>@(n7xzCBKSvxJ(R9MK)!20&3>noIhP0EK*p2wvKUM+NQ-12{;|L!%rzWSF* z`S;*OCCb+=@Ri@vcX`;`E2R9BD34nXgSh0dYAWW+(PEoX&9(2NIX?YJ-ZbTKF9g63 z`5QaSQ<)gQ_-=FUapZ~bG}oR+1JP`*J%`_Knrlb%``^vAQmKF`(z~o^6%ug zhU&H_GEFgx-a)45$5?H{yzBTTd;os>1xP8-UdB)}GTbPI7*4XAO?CPed{D3?z#`$2FyM8>(Ln;iH2as{a9=?3TO$&k{AEwLD^&1_+?`v$=!#rt|#-4${%hoNa2(KN%tOMTz_t1O2>-dE^q`HWE8j`%e-{V^e6LdYLLX)^S_TYUnkTT=_EEh6bHUk)uLsUVIE>+} zC4trO0i5pwRf`j8OS22A4=B__+CPC*X84ef8(b3Ip%x)}LbaWV9%&8#kpV=63ZZsp zw1)qHFq`9lg*Kd~?+~>f4Au1juDn($DkKU-obF$mJBfJFOfO^gCxAi6#tct^^V%~z z18G<+e8g6zxJUS}tOoJ{^#KvKD8geHwfcHIEBZbvazr@XH5^=um^9=UxB5E9>JWij zH=_d}5*Ki!uN09IUxb;Tbp&AUh2YQlHoSM1r91qYqW*`a{tw}~xb<6Ll0NEx2c+zy z{%JN{dj78Zzs7Vn+V87>N8k0|+;{z5->Ur}ewGm5S}8SubZw%Gxo#^9Rrk!orAMSe z05LT?Y|YCEWvT&lFX2NDJ+-!=QPs_G;}giuU!p-Ukv6j%88Pa@P(ub_P{bG<^vs$r zLDb~~d(cD822P5s?!fljOR%n#8W&g5GpxrWc>pZm)jND z3K4Zs(Wi;Vp3_reMc>E5K^|T7@NaM%9S2?s{=RLl8O;Rq;b@}_>(Ox}{sA~LN`D)t zA^Z-ta2~Gk1|H@^LENT342-9aQbuTT_MG@1G=Kcx#L^O8@py#*dlJCxR`jN)Lrl6# znV=)4NQ@QTT;fT;mA_Q`=XUdX25E>90v%2cU>T8waLt^%Ocp# zweLN%e6(ACvGga7JG$P)q+bS`Hq5~jm0-m_D^UknNF^lWd+}FfN!Y``i2sD;AwS#? zgC$pmSCDcq!Xe^1EUgB-hsy<2Jho@pjr7*D;(u`c7l%K-vAzpGx^~+t_&sgmBSAD%^|b-2aT*w3G!~hOPIvod zsp^-W+2hd4Q#d!Q9gvD_TSDSFe^Q?;z5S0dtZx|VvzgkiDA97^A4mqBx-rQ!&QAMn zc%1CVD%&I0odWeOELh|e7MP9mS29vj(g=F&1TM)Vo8)*oBqW*zco2`g9&4}wy%#{C z`3j*Rp>W24gU`bXGQA7yvR!A`4l?~G>aZR5OIaPJ%RTpYl3l-o9mmI|H($O8)sP=3kFXZv^1>4F~r*MQP z^OyucJ3JBMjp_37oYVKqy^=o}uaCiz@fp@{E+OWp5dqFghckKcvtw0V1-pU@7CV=~ zQ+I;Ec6=r>l$S$?>YoBqS`)^NVkiCyJCw1CVh<>ZQ&M+Z=CmH{H96DiFRYBc4NFhw z7UsWG{uTO#&yJ!88-ayrx-#W}Ej+;BJ7{q06xnGa4s8t|ipcVc863`FH98e-A)YbB zbU4aM=6Ww0wHmc;f&7Klw;0)El+`w#fN3gyB{GC#!E7$4X${96MzifJC!;f(JA!6r zdd-_H$RCKF3uZBKvQ>4b)-zzme}QiC_*PrYLK|v-hfEj&hBo~89Xw%D+gy=01P8X( z@+MPm%jfg&<$3s!mPjM&Ov}SCu9myH9~_IpceD zEJu1Dp*#Z%pr;KtW@YEUSAK0(F#r9^3EJ0zs?+kCuo$~%a3J*9+2AI<9qK0-(BIMa z1h8xM^w8sJNJW73@vqUb;13{{N^6+IjpoK~zg<7CJID-Oqw zpd`>_v)wlL-C&%I8zBYQM&xIsW#Zq{QoeQ?+EP$@r2Le;rUI-jcx*1JLLZxRvU-pl zT2%!U)vL#s;xTqL8(}-H3I84E-=mAfro9clR=e$dIA!GJHRqzExUF3lf2;P1eM;ni zLh>JmXTtpBQs+?mTgSB1PrOoebpCOilUy;1cUeZxaN*-1A|^$T72+xXc=<>2>w>(dn(EI32#!b) z%({3#SPc|A&GPKi|lT|Y5;7Hp<>pM~A+az_EiS0pX2DbT}D6OXy@ty^&e4Yt*>!O@r6!i`f|Nq84& z7=8iUJlSEe+Uiy_MBR--nTQWJ8im=Il`x`>de=o=EYzYmYwrx!OPjQvA#KNLddc=< z5+%{YJ0j`&JM}%wZ!k*QF~C9qN~-@!24I)A6L>M$RED0|>I-eQCw3JRN)az~w*L0) zj_=T0;#=$i5T?E-pkVz!kiW_AsrVZz3fAjXsDIms>X{wXJM)@k{XYF2kPpjjm5ci3 zD00NvaJ}fFf;z*80lnLTSnx9w=gwv2@2Cvw*z#uvuNDm~MjaPTo55Mk{Rl=<$jzO8 zU+T97xslM|9)ei_lGG(&dw8lbzAl<}0$$92bNv|cp?^zrr*tnP@GY9jtpesw91@^*OOgit`c{;I3ulz$eKY$zilS_EoY9%tW9m)BM%pX zSD^!q-@5!b-m*S`?^?U<8sg7W41s?sNfDtr&4yp(EPO&ew!m`! z7sErh368zC`|GZ5voyiEjR`0AEGm1g3`nnAjbIK{DDdhZr{64?$}Y%!c2+^5}a-Z>)d82p8+W z6i82P-vWNHZ}?_7I|+Xo%iJTCwZNlF!e8~Hc$+r0{}o+kBQN`n%y5 z>A(Vkux#%exfm1J-TnO z3$#>S`l2Rz9>t*4dPHFT0ns583>wwhuA2QE2lVREeZ0XDinUnOX0feBZPlq1CpJgF zgX`V4LwnX^a(72$qF()iR-FMJ#CaDlMY2WKNHS+M-ZK}$DN&}pJw)67sJ)(6v^qB5 zg?OdSl)r)$H}Ay1JAM-V^$i#wf%CF9lB!q{uXqxO z*E4qle-{t8SwGeI+R=Y7abpCx)fa)9N*h90pJm;1CmO{$^?UT<3t`Mwk~ABdbO%LId=4HM)PGprKq!a`r;7H-fBZJaPG z9)sFNe(_JJc&sY~w`w|&cw-b@&_{Dv@@YK!(!4x4u zw*2<;j#v|3CK9LVQ-d*{;gz5d<)!{UL=w;|wVlr)$Orzgo;jOLbM(6)r0}v?f0Tua zv(5T$JhT;qYx!=nZCG7WeHeZ~3Ek z{MOLp+tCtJd-*=JM=km?>nYL-RwJarj^CH*l8&R5^!h=_V3@27zT1@;K)&es9mN<+ z+f^II7cwrJO<>>-);}6=V*{9gALp`pe=z1|GH5u{p$b z#kkmX`5qH1lJC*6N%+Q$-~lv9fYPs@6R@!V zIQB!ltf@W_@Mge#JL%`ei$k(M0xM-k6^@V;!EYKsBw!lp!0%n7c%0KaKf>@gb`eo9 zg#)C6J=qZ-Vpgm0zme~6=slx&OuPmBmnLVT7{#NpceMYa$FN!{)*?j{WO3>730|1m z&p?k@{N!ky0>+J1vWSWrdD->`ux;#Sykif?7~Ug~EWu7rqj*H^c1o|B_wxClqHpg+ zSPQPE_12k`>=E#_XdK@i@_zIT*syT{wR>ONey6gl;q_*8haTO&#@M`{BPQ&G2x0bl zV#6TWs8cM$4C~A&)vw@z>bo&2!XnD(dj-+$ksMb(XBegHaj58^GCds|&hb(&T_63- zh^{Z=!i)G5jy+gvlw_leGp%z4!5_i_Y7Otl_Li*H@P}#8Nst^I`S}Z}bdg zyc8VQFj(I)6|LD_Q~is;CJQnAx*)cVkIy z?tXJtT0!-55&!z0o1>=!*)f4lfPv|{^qC;W;4*y>9+5fPA!LYM1F6N+SmrqP2W@xY z*oU#nNOSiKjloC>bAby0#p*tTeRw=Sm^oe2Q!3X1nTJs0q|C}6X@@i8_4cq-^=ED8E+RTp5Pc2CA`!TlHpUFsNj2dbeBt_f zc%a5)IEhO8@F%M4xg}G3pe`Me&eAO1j8M5@Pd3!na_YA_o={{~H<;m<^)2@y#oYW; zQ8$bDtW75VTjX};dWMB;N!kjO0*zVtFsid~-5TEHZ{a5|1LSw!&H}lxtl|fVKHKe4 zSG6iB;90p1?M>M2zX3FdFcdc>1Vj6Ja6@tPZ^uT`f1A@#+|tlKCTG$emFfR+dBdFC z2F#gFQJ~9TYc0xcz*%fJwH6J08M~2*y|IOOgBplRN<`OC$kR;)@wsho3)_JlGJn~K z)7X3D9$MT5hsQLbN?JHG7u!(6b@}qDoNFAz^fm$e;h6-uXE`XZu!4{*P>y_>(WAcYNgJpDFoYv-9unGe6pY zgz!g7{*}z1*#Gx$WJR_A?;t~@srLW<8Cm+;{|8>@3EMT-1|maYmI^21Df%^dKy?H7 zhvOIW;)XO#YmH1AuZ1?8HL*RKIi*-$N4xO*ZV~@Ix$QhQRP-G$n5)hJ46rrSdtFmQ z_*mo;FzPvLa9h{0Yfp=wGqw2U#G6yW&YxmoW&0hRazHkm?cEL=34V?%d~Tad-q*Tw zB6IS3APwS8w@0SHZ7+Nt=>w|B;fW!YL(Iahl74>krxJ2Tf}3rWqmkf8Pz%+kOZ8Xg9fjFe&O8p1f!l3+qGy`H4Q6Bt z#E^DfWr!Y>5ubgq46#2F-2B@#rIC@aaQ2dzvi#lAfm&O7d>1U8wmnNU8&0wbL~ffZQM z{m9Js(GKVRGQ4N>AE(A`<{O-&9{*fB{)6aGJ=GwB`Ey_elKcSq$3PKxFSdf%?I;x8i_|i-|<4^uV-2JVuWy zwM+iSp`{z>jjB9n`S`D4sLFnfDpuhywgOk0M>B5bxxVN4@h|7A}hZhE~~#5wmC&yMf}bkY1SF!}c3Fs4J3_Bu_k+3rBKMpecpX&*gxuUiJy$ zS_Eow>eO4XZw8C0ViA3?R)dAzxGnUXtv|~&D9}vYpV^W=na_#- z1l`c18D-i;^}Z>+kk5E;77a^he}JMHcQru4y`x+wy`}kJ5To4O-DypM9b_C5+O;2G zj*PqDCO4beHFAm2PI#})pPix|9Ep>U(wcIc;e>SrRZ+kfx|8?#M|y#`!dL>A8Tw_* z-j1WqIgy~=!nu${e{v**ETLbw@BK`@Z_nG4cyG^700bg$Tz_-y6CTHe*>wcS!P{8t z^x6kFCBZDS`X+XX1pOlC zqch;D;VeC8)gH$rv*D_zW~XH}2WekJeL9z=0#w~gmqiai@? zOdEq%i|8lZY+HO&`7>G8lLF#%cqIx1ih{Hpf{SBnyYDi57C)YzBveMi-B9vt&qs!{ ztQ!O#y)4*DM60-y!FCgI!Wbqc84K$4$#>o!Frb=XK)h8(B0BUrDS}<{c+oQ#j_&fs zm>LOfoCW=Ud}!o$e4ZMajn9n875E%k`6d=JPs?ws_;>U|nV!8I^HIw&b~J;_r}|Kc zuR+vjHM-i=imnR;X7VN1RLoZUcv-qFxSWH|5n^t@Z01vAq?8V%hdFr%hqe5I!wxVT_50 zSXr2Pi+?KJocI903x9Dfwe=BL0{$PW=lqQ9cgMDL>9lOj9`HC5{6gO`UJbuif+;<- zCxAMV4@t5hn_L24clLa)$39CQC(F|8l=C@S=QLsCESc5I)Vn!#J4aAikICyHU7@;G zGKE^Hh*db9LBefgjHYOPnwG z3>W}9zp>_-XT?-2G9glBt%kLR^4k^_O9b)gW=khKVD z7-UPMDK5?N-vM3z+2`x-ku&Ln5KAn+WV+1zFM+=A#w}mfNWjAi>~0+vc|hwvBXXBB z{wXwq@5AiuukTqQ%ShoZU5k||SQL9Djsgk7uQ>~1$f0FT6f-y(#_4J8kgqg|3smBf z++%6Y^*t+h<~4~gEcxO`jH34u_CFGT5%JJR-w(!r23jyJtvUWAk@Nh4|GAzg2Q;*O zA=-V$N>np2{@tTTEu6psekkpX&dcwvybRZahOJ}K1A5yU^e>_DnETTGoK+}2Vw4`y zw&&0_hua`K1EZ(O*f?(|mact4KwQIy;@}k<4i0%(e=z~&S9eyPlE>ph)$h<2@LHR8 zY-IFo9HCn^6ubOz#CoY!{+K$l@=@B`($2;lBJp)@HyC*@LN^Cs1P|@CaOLsh14CL+ z3x5ND{mZ?dA@LLSdPuAOwcd3s+PQbJrN7T*SqF}Nn*U|h>9{|o{=0xIr%`j=&&=2v z_*}Dw^Y3O!7fCiwNY;UR8S)pB9g-hHGTfnBiU#h|qx<#hebM_swtT%yKYlE_O9!D! zI?>VRwuS8y`;`>R{kezqEPWb86$Awx$B~XkbQk#bR7FHkZkMdP*aun&xP1^hJjDNn z^e)|(UwWVtGh`6!4&I_&dWb8_N{_@}C4YmS2lQ6$=*Z}F6wfc+R|PL`SANO<@?j_n zKsZzWTw=bTOE|cwFI2}!5ak*PXcqN_12|2;B^bMfuS*Z8F8CrBc6}e#d$1RFfz0jb zg)jCl-o;+n&);(E_dayP7kfWd?}xO3L{NKQkS9v_?OnY8*y3FUIF`Mw>PCD;@}X}y zXJFCOE+LY+-DmH{zD@ld0T|wo+v&g9Yq5%b*fxP0!-rz8B6mS}e`U*M)of9G(;D{9 z|Nr;@Ed@#g6@evz2Lty8asn6OIVZ3*uq?0ur&lZvlm~{MwDKE~_d)!(ED%B2GJ&-S zPYaSD@!c{&RJFKZzbExPh|i^V`K5Ty!GA8yWq~Mu5h^kC|K0B^@8ZtfY*$X;2Z;7B zN6Dr59P4?$3-1;qM+8_s9JtQ&#@p%&ykCGEk-)rwx31BFT$C>dgb1)JmzqZTQIlU` z)Vc(D3ekGf=vKkE5@`$ZM0%G2{t{rf*luCD4~nAb0-?^rzyrv$RNA#TFdA)I1T3xv z4ARAmwF_dbK&=4ug;Et!v44m(g~HF|--qzuV(I%FP%DaDq}xN1+ofRzdLS8R zm-?)qlHmW3y;+6yhlK_UK@IlK{mA9W2y>7k`E^#<77Ld%Kb{o!xV*uX5j@&ES_;IhvNxi5(1hNYlz4*FE}_Y%~{-xc^I?<@en z_1|~w$FYH;q}r9%SO6JNxKmT!1KimnmopuC9E&tR_D(NT{uQNFPcJ}QNO59Ij#~yA zCR4-9S?YN#N>Nv`e^`$Hxx7L8+y_XC)2V%vDLpn2woAEKE|T8x>fds}A@ne)Q53im znu3zYULc1kO8EQD!SpuCMQ);vp|0}62nUJ-H>H5ZHc&S@I4FHXdehpdx|f3Hiv^;R znuT^9EKALxS~@2%J5Y)``}+HK*f@BwN0dgUwq}dJU3t|SYWk%~Jnk)@Oi?eV(4P5Q zbU9MKkDiL+yFz-II*R#dl^hN2lp?>=eo?b6lD<z(dPnRc6ya`B==u|)CGN%4)l`W|9dS{SUQ@%Txj8FU4ZxeULS;=hOcZ9nCxZ!5>vIleJ_vbQJr?aQkk znFF4jBQ}@PUJjn+CnY!)bn<6^?RWI1i>K2sj*L)OQ6tUsLAnlnp++A?cu&2l{4YNx zT+i2^%kQbXxtuz^-!pA~q{qTq*-wf`sT1y%wB<-szZTkgTnI`(I_)Gi9ul3P@<&Be zDE_1l;%LJEHytI^XiIT5wTnAmA7x)Us5BQQGSZ z+=q8;r{lLQv*9?{lRxS8Qm+vYYON{I%GCGsps7mmYbt&zKZm24Wr73Zxq-z?mn>a& z`NF_WQ^sC7UNqWh)I+YJeIZ>rQb9gRr3X3|{mPms!He+5wJP3cavt02*m1V%N?4}} z_%N|ZGhyHTJ#_4h5;b;e1*;FtCfwCn_ z7cYCL0-Q%)qX$Kx(1)VMq@<+!^G6SqUqc#@uGCGWzl$4t z)sGXchvUIJzM{YEMd(TPo!`fF=tP~OM#>MSLJxhwvGuh=UqW%Lp5tM-Z+fSc_0qPz ztDp{Ho94+keF4TrI4U25+WfWmE}h($E~Pk1q_(D?M`@t-bA4(BSH*Dpk}Or5H@?PE zB6)=V58)AtYum{AN+TwZ^_AB4+ddc5{_FSZTaMMP42*~NbgXs&n%#>-Uv)TrLpfJg z>{{Dv31fUU8+Ky0@CaiK*Wn-aJ?T%2aXb2kHl!HOrLZY;@cTxTm?7TpR7AuaiFbHv zDe$E2CFin7DI@n{Y>=v@{_$mBedLZLsYTd&j!=|kRpYo+yumc3k(BNl8<+^5$nj~i zRPyJH61?`-+q;YsDCh>Zv3nMZd#}KnB z;8QN+L)CAL#E?gco1bfw`=CF_svUlRIhoF`XQ;Twm3nBMfO#_$?&PqSYNS7WLU;uYW$EIT5|bh{7!}iW#8Yz8__C`$;b~Uub&C*@#j_k(K6^X@~X1J>_>+` zomdXJ%F(~fMb68CHe}z=lb(M-TFlt4ivG+4$Gamn#^Kaos``8D@6ySh zv+>p)sW0-$&>Zv!=P>&FE0q50Jul@-d4Ht?ea>sS`k?>vvxOVT38VqJmoW!Nlb#%l z{>z^n3)aAKgNh=lxD@-R1St+z^w$DMpRpenq8z#Efp1;9f1NiAxN#(YD|(S*ic~#$ z5&XFc-~e*0n&DL6{5?@p`olgT`qYUVJ2rumrsiAye98C#b(5pnl|`jZb4GDWp6Sm~ zDkv`}`*Z5@$7~!KWBaLfuSMK}vghp;Wg*l&tXIkcVzrbX`dvI%1isskg=Cw1&t*8i zIosn{#RW^3E?Wq*_|URtn6g}O?_xM5?4f07y|PZJ+Uv?Xy&?CP(y#O#ln3FB>rC!v z&N|uF`yrBEtY->v@{ZyhJe3}%XUkBet4iWr7{#XU6 zL^@5zKR5o@SF7Cil?i>-JQ#W1PZj^jf>tRRqEmjJ&6}h%W9#1*54ZgN=xypua(NkK zm6}{xe$q_w95L{7RI2j+wFc~wR1he+l+OPDXd4;Va{OD4aQ!o)q*^jnT$nRZOYbtt zP%lTGo6vT~P8s!C0uMt)S(V43Mts!ZCRg8!*3#cq6hK1K-$LnUmR3kbH2Y|V)nePiICr%*Dc_^^M9I6dO7MN^VMPUJc?=g$j~ zZ#bS(>vU9fjJ8tABkdifL(!h|5u^mijmpw*x!{w<}LN zs(B)X5iJxWpz7CU{lK4#a^=t;v=rn%@)j){EePA@_8&E?LshQ192>YQz%`am^xENp zi+ud(w+Ie5s~%*Wz+F3#+D5xP)_;HZro2k|HuPh!^!4{`%BvZ<{^{RW9i>8pWsrUL z;W8h$us6t$q*`Ax-e38?>h!jCMlY#Mmf=y}?7f~T)zm?>o7BtXA|*Lq%afC^U&+1f zpI>MDIa2RyoE{$w$$;A zRGJIdd1B7%e4c}v$)aCJT>Iuc1z{?r(6R5yc+mUz&gjz;IP*46{Wp2^wZ9eLrnK@G zy)(T|?~)^X;=L<6aOaQ-#YyJXZ&;8lInXp>Y)X9@bdPFs{3-xhv9(KKK>k=sx+I^n;esHj*&b> zZ;2Ywnc?jvK z$YQ?s{rUA5ZK>+hR52&=RPrAwL_5g-VZW*I4D}D6`hw!0qfCbB{Y|QPBN46_n*w*>Ny!~Ky~6ehm&zEA zc9D96Jxj@<79n@=SxKa;4FZ9CmMx1sw4i*!16=F^DwAW$dyW=StG?6-HiEb0C9m{5 zbR#XCb~&R)^)6K$gj`MlzNrhz0FKmmDi*-DlFJ=Uwj=u%oXU2VD$IL`8@98P|`s< zdnKBlzFJS=NROgUa*Jq5>Gja}a%M+Vt*P2a+dv-jt_pBwiygUfaHekYQ&n-K!sFz9 zO#jkf-su(U1zLF(k?u>!mkR$n9-)^{9Nu)`QCcG4T+WHPw$tHyr#;EvPBemJF*QHw zL>v`0y)hu-O5UXGIe*_rtxOw@SpV&i<*|Un8B-NuC<;u21)PQTEjW8P<)12*gFMRt zsYrU8T&f~)a{-CA#PJ<^OCbFhC4Y=C&a!!X5j+-R>HSPCg||WvDe3m-RwYxH@ixR+ z4_pKq{6DFGDq2WOMVfK!`1it4n3_PXbvpU%RzT(oXmOko-)Kab$3xl`uk^id!|7qRpEXiPvg}n!Wp4%5 zomKYEe7z&Dr0E=#rB`)<$UE0$bNqWRFk*|T0~F<_39)?;e5V!&V zsG0bWPh+9eFO_E}5=jq(5ysSi{yo8pbCeBJwnRm1ocSW}xQG5SxyUJ_R^lehu^JEb zj+iK#dFjR$B$p2OydB!Q7twH8N>k(~9ZwAjh9Nw$I(p1u+5 zp&p>ep>U#14~6c%7JZ{;T$s=6anVCp-kO@tyeKJe^2o=Z|KgtAEyMkHbe6wcI< zPISKS@_tR5jKRsvI}sYUH~&6Lhe2I6O8NE>ysdG3ipAgtXCB+jB^8hh&KPm``4T)i z_S&HzQz=KBOG%~6{!e>fA17B)rCpsw3=qf!0t7*6B!LJ?=p;i35Md^nd<;yIHZuvI z+TAnVGt;JLy6x`C7bpz`Hfmr;h>9${JFbz97eR=rdt=5L(;luhO4+VLj@wP;%(`+{ zrn~2mohMU5aQ$jmhQX+2d#>?f&OC$H-Sv>w+fvgDg8U{f*miKwnwxd3c`o0cIj2AS zcQ)-)V0;GI%;@Z1({Rff4QfE}$~Sd_D8z9XZ(YL^JxU#gFWc&E`0_PvWAGh^?`VAS zLMk;1U%aqOMexNt#76v#My|I((%Uh@9}Q{8BIkINc%nK*ou-)LyV|HjCFZ$oMPk2_=BOC+b!;q55@IFx*RT!jxhWDE6&W2F6FDj}HZm?!6PXl=Mq-h=NYX9dmTAjk8As`Qv1Y6rYsdN> z3mc6?Nwg3@5tNUAP7QUvOx>sss)Lb(qYu9Q;P``Q9K7t{jof{=wl@5S{-r5sYucYR zWBah3*fwkzwh7x2FGYn_mBRas)eYxQzpk{tRL*q4u@^3CY*MWovRycJhvbrU5l13( zscd&5mrtejxtM6SyDiTyQO-njS?tE9a?x@zlQ~AYSJK&1In~{kkxQ+qbhKkbwh)Ej zY+JOur>iwn#7VVGcSpH1nkg3Zcs#M#CcpAMqoA*CfZ=yArpmx3kL>%BytQnj(|7_7|A86vK1 z?8=30-6W+Psx8l{Y(R+xlxUw)GV@|H`{pSOuH#Kk$}(}sjM*uq5BD)okuW})r^G0M zBO=d@QjSfV=iklVqIug7SF35%z`hxXPXQO8XB#B&oQ}WtI$YVrxdP{YC1tvj%xsI2 z+_w+0410yoBiqxN)O6&}YUt?m@vaJI7+nrFaz2Z?^-pMT;0bqIcWWifeJEXkHXVL` z*p4zr6V5NW^Fwbdz+-|Rp8uhrtj9i;d9H+`kZEmt)C_GA?qhSN!upj1GF<(qt4keg z`?YZGLka%cjyaCprmeUh%paV=2CuoY-76f~d5(%R03W9%%q*LC1MQxC0wtQ23GZb5 zy%reB{$@{vJ0Vsk?>v}uD`vLu?z=Ez9R6eanVEmsxh~fV!3bh}miyd{7sd-sY_abV zIa~=x)}MWhW%axIQDzYETN*>mhF#l%tSe0UyfWyT<`9D??gZLcL#=G|urbB9kH2GR;^)XSD^t!$?Q`h; z6IToNbpP3jkz2*DgYhrU;xo|RUr%v$&OLIjC5-pl_U8VHIlE-uyp}nl|N4E&wGQ9& z#R$%`+{OlN7+0qNb^lV!w^sk*t#9`r+3T#{Bl~GkKmQ3LdQR|~ZCRtYwcv378M#Dy z&!N6Y8HelN+{@s2YrNW>EgZ>5tyVs@5y-}$YcY3Sgm0%l8)j!EEXCE_ax+?uw5#OH zKL#9TwqbjaEioAL4%dH1YF|66Vy`}ObmUx#t4HpkGlIKz@+10@Vz@s?^T!3#U)^!t zukY|*cINi~RytQ1oa=GzYGyRtQ81^Uujm2U#z zj-*+o+qsb+Uk{&~yTHx(kG^R7wx7!#*A6d%PZXFM1S9%X&mJZ0$T9xB9~R~O+48f- zhwi5hw^Cg9AGSXut+_+WXwDfM@12_YlG!2Ulbd{gz}41opL(akKu@m`Mh~qA9 z<}*ay7~QHh=By%!vk&?))Yj*4p6uJl_f^w>eE+nOkM?nU2Yuy8`44S%>+#lB+(oCo z*v6F3l)0Bm8~IU-_lC@j#O%BCIX-u;a=6-=dt!?qDYz%VIDF{+3wrZ#Nk`-Ug|U&umTUZ#BQ)J~ke3KFj@- z>6kB=y?NfDp^f|%h_8>I-_CPvBs+9fG`zhj#m_&y28P?dkB9M|mgRh)M|%XVX2#2r za#{_2`6I<&_Hz2y-;1qQTCnYy^5wskc61|@?W-JZj?vND#?eD}2FOF7V02;2GTM&J zHC$6)KNHdXTz@};SsykU9$NQc{rToy?vNF9t8lG&XuBMG!s8gnf+O>rbC$znCUqMA zw(MZsoC2G&WrI=EqHfHzSTJH5bhtf-Tfw)l8~MywK#R9Q14b;KW8+>Mdx!hpazDTA zWoE{HxJcl)n(=+s&fYWTGo37vZ)!GAr4E0Zb-4D7e@BX5M{0Q^>#cbGk!)!44{!Om z8ok{9*RCT2-vXA<_iH#4GGjP*0C_@&chc=D!Fok-KFX^>ALaSMHptq z_gh&j`0ab>_(?eht(&>S zjaVS>6bqJiXo_=1a~k@sl&$O1ohh4|@ZIStlv<0G6@ApaE0Fg=+*BN?td0lk@ctpQ zr^J0D&Xf5@dG_#alJKSpksCv;`2@X{ z-3+;AcT8c9&wX9$#&tUP(V3TfMU>04CHzZ?T7k`Uk@3k-h7`L{fW4<39D-$8tT ziSMiUKK3AAjv*ddS_?(=XXEMb;#M!%fOXM2#1fq)}yIaQ#-jz1(OPmpeNVDEA z^Kp6-chCH{#`*WM=L6-Qg+i%}LyWgv<5S)m*q5=y?oTSnF@2BnSmOff#5Y_p9+=;4 zNHMlD=K?2Zi?020Js05HlvoB!U5GM^h$5W7xVYhG9bA-sy&f26C@iInh!xXqz*&s{ zq%u#ZyU%GXgp@dPEXLm!L@?u@jNP1vao3C`QJ-cV%hu>$_8Q|hZPch+!p~E$Yrz

s;UbYf4TN0^9XqBKVr#v2nkhX3M-WP6ag<|6jW;V5^2+3PvNnfKjO5BpXU+y2W@ zN3#oo6N%kDxg0tqqXcIOe3zb5&;JPjoY!FRyZFZ@eKlwT-;AWYKzrW8ceuPGrMHW0 z^6YSayLomU26uV*d-q%5JLg4Hx2r&V@O@0uFMy67W{0too-hnQ8R<*$Z5@W+kF@m} z({5?~uMjXwy1&eQO@rFmNgBSu{$@W@a9TM9>?*mB#`DXyh-=*CI2U*de~&c(rFUoG z!(6$UwG!ii-Fr4O8xyy9PQaW9ZiZjDZ&+?Z|1i4@rav?Oal~d%<&HIXjqC{(^F~ze zAFY5q=Hd*&?XT3so(W_x_n-5MBBoH1-3K3jb&>e1ed{X6c1F|`O7MT1^{VL;yzXnX z2+|oXiE&)#J7$b!s2`)A&u{cE>AJC=jQ7is-=4Fuy99iKfU`c@&PIIl(E=PR%(!Xf z2G8=Qvj)J7@Je`vAbRr<%sA4Wd+UZWYw&ADPbHyt^rLGAll=EHLK zU5R{4r`et4+|R|iLrxnt!y;zAcqG}pb|qSyV+HMJ>&O|m*}LcS#pd78GW(_UsS--y zzX)bp@9)WH6lV`Go_J`R1fL&_YOi)j8b1He`*j@SNBRuUPfy|~ZECa#<#N=fzVx6& zKg098_W1j`X+L@xeb=n%-)eiDdF`@KU7dbr!W|c>zVBpl# z&TGH;>9!}9|9DZyyPilieeI1~KluLacpmpWXd^A58gQb z-PM`Z@$cUIt8=dB;lrJi)E#^8sNOMn$IEvNfT#VI!M}m!R|}A3X7!GNU4Og&S4u^D zhs#GGji`I@FQFc+MAV(Q8ePtJ(2mi3kj#UQbw}&eTl=FU^F2>NAo%Zm3SP&LmVhIa zJS7>`(r-LCM(J;4j7q(@|Ks1i>zN4;9H$2F9(~^CPjp{-^krSX?LIs6v};>GiS%X0 zmfu=ip8HtVzy9#B^l;mM=zX={KlVZJFE{z$J*;g$5qo7-lOun^BOmc|gp5edo z$y?v~-UH7}xM!T|J?FA-EzLhQE=`+9k z{>j(B@$7_uj2L-O*5CS*m47ZRzw`F=ypOH_@_TMt|D##wOy4tM*T+@mv3Z+rx^r0l z?;4hV_PNC`-1Ik;cY!Hy^XhAU@beE1E&amLL(hEXylcMji6=J=E$V~*^G$hQ{y_JI z`(w{ec<|>&eofnZkKdnvcEUGqGU>k9-c=huf^?tZzo_@Yq2G6YVEzL)KL5b$r``P7 z_@keD{VO;6*Kg{4?dJ2QLf;RY{LPEMHTcl$o;{XklJ~!O>JHx?Q%mQ5>x|c)negBh zkbmiSE~)?R(orwXes;orSvB^toBr_6kN#!mQ_CKHX2Pw1FxStYe&4S*O-KHdP5olS z(ldvpXAMiA_2tJFpSv6NztYra^04%jVd=AnrOz3bj?J7kyY_-P7tXz?e*S`ng?v?7 zrSAvq(Mk=0j(g7h*1)ho)$1eb>~#?}4_|ddMAhM2!MBR9`fx<80A2@L0Nspl1-~Bv zO+s!?$`~dxkhCTD-(r6$)mJx4dazPe2jAK1;{y)f4}7#p-RI!j9sFen-{Hvlli;z0 zQoDfjd^A5tZFKaR>&vfk@U4#g$qrrx&hys%)H-Gn!IBW#%#T= zbNIJGzSXW<@Cx+r`+zU!BMyIGgOA_g;){HIi;FMu@q1kSav$$=@g^U?-^G{t_;weM z`}mh#e1(tibnzA+f5^pG`S@-Zzskp-aPez=e2?g$o0nr`ys>xqL+WO)B|H_igr?A1; z?N7jZAA;O(8+_t6)cre<^R!8CLb?yX>z+Au4$%t*;#dO2F<2impEwr!Vo;B5f&Nw0 zV_`%MTpm$_p!~X@X@`kn5wImsz|$A3A1Nv_L<(c}o(Kwq#z9AsZz7(x0IiaOKXwu* z_$#E~A0P#P&B>r>(>N*Y)k_MWh@Jw9$2Q`mm@-sIk4L$rXj7IqhH9S*3i*Ackgsvb zA7mQxqwk2Qw^1L^8_9nf|BU<@bIT~T>(PkX{ZvFf3_9`Yi25$*9;Eky?gyo>8~}Y8 z=`jQNO+L_3-;SuspvQyOg6_R5q8dO?N4f>{Y|uTRvq1NQUJjZDZ3Uf-a*Cj3q&I=q zB7G0&Mx?ic?f~5Zx&?F>=vL6jL9Ko^KlAMY-T?Xw&=%0Yfu=!Eehl(Jr-5z(y%=;i z=pxXqplQ$@pgGWq&qUM>pp!xG0Br!h8?+X55VQrfA9SS8j_<+`&|JGg(JYn96KF5c zA0mxrsZ^0hvs4B_(d?C1f#VsP%2D5o@Hv`F^vMWkh?P1}G;<{i9Bxs$6clbzSp^EW zsC0tD9V#0^$AjJtiWy~P2PmGQsyqRTE?fC2=!u{QKqrD$AonEDaVQ@lrgAzcp3|w! z0-Xf91e7)F10VEPgP_n~MZd50S4mLs(@zfb8RYm3|Je%PsN!4x;wZHd-#+|iyGL=Y zj6OaOrN31wspi76>g6S|GGQXo1iIp#?$1wspi76>g6S|GGQXo1iIp#?$1wspi76>g6 zS|GGQXo1iIp#?$1wspi76>g6S|GGQXo1iIp#?$1wspi76>g6S|GGQXo1iIp#?$1wspi76>g6S|GGQ zXo1iIp#?$1Raa-$@qq!|9uu%_e?~$Uq$Ffp?ihy6Po*h;VTF&3suhDwQMd-akw+h`ZbcfJgLU#*&Lg*f$`-JWn z`ijs4Lf;fRX0NIDIH41To-TB<&^n22JB02Ox=UzP=x(8p3w=W9fY3cc z_X^!7bWrGip)U)4Md*;w143UD`le9zy!fZku|mfQtr0p==p>=13ylh$EOe^SX+mQ{ zYlY4gI!|bw&<3GPgfUM+lBTE-63?R&|N~S zLU#*&T<8-*2ZZhsI`&y(&xt~#LZ=CxE3`pqT@MmLbnR-7rIO6 z<3jfc9TfVC(AR{H*<x3>5+9dQUp=qH7p*INKBy@|=KB3!%?i9LP z=z!3DLSGhoK&bj}i7P@U37sr7CUlx8vq5FltEc6wj zQzc$+l>V|==oX>(3f(GnyU-m%cM07s^a-JRgzgi%U+61B4+woz=$Ic$y9%8s^mL(< zg-#P%D|DXF2BA$tTZCRGG%fT7p%tMUg>DkMS!l1&Ekf@Wdauwvp<9J+6S`e!zt9~* zcM9Dlv?_GB(8q;7A#_0K9-(`M?h`sFbidG-g}x$mNaz8fuL*rqsCvQJdyLSrLdOZM z5js)mB%!AZjS8JCbgIy4LSsT}h0YZ^PiURc2BAxYHVOUTH&YBX{-3nKmhVUO+UkE& zW+*GP!2hHLMyrSsCz}ML)hM05ca_0MtI;~$=cQ#AA!)Dc-2|ojO}^1)S3&O|FymSNv^rj0 zfsKsb6C>(TASa+ctH&#qyf~toB|RFV<7X>1MbcMcBV-VB3A6X{HnkH~iruNy?@>kO z{~3ztUm8)YDbrcd7&b}XC)ek(inol?mYe{thmJ>jRz#gE{L@i>d`?7NDe2Fnp#FG7 zt&#MfP^BBbI7+Y4nLml^Rg`zST>n=TTvt-6R??WZsptZwR!aGw0Y10_`!kZBi~7e= z|BHqHZs2OEQk`=Bb?7s=D59pz^)yVs^{I$r%d-57z!yI!qK4%9L$FsRrqo(Ve;!S? z@oC>)??rukuZSqHX#4zzJ@75Q77{ExzZRj2$#*pRAQ5K*rP ze=XXl4EtF9j-@_mzxRs#GUQj$z8Oh>8uA7g`t4OkM(%CUb6CG8kYCMIYQ6AJ$Mu0a zr9L3(^N~(orc_qSKZuO6Ga{-_uD=ev<{_m$mHu!a`BB-i!v8SZFTNt8*e<+&0`%MH z=zl%z-RIQz3fQB;vB$5`MfME%_Jvrle@#%oKR5_^F|^+-k$)n}D=hZ?>qWGGl>a*VPjp7a^I!UL?`_rU29RhIHrvf)ni>$8FNzr^?7 zDX?b+?fGr7|2J@b(CI%vKzsMkR_ZK~mw|t956ar(AoNwIM%1U|`pe)i92-%KB;A4Q z)rk?+Dd~Oi&%v6AdS24gP~JdoME#?rzkv4J>a^ck;6LEBF9S`Dqu*^%q;k1Zw@UtJ zP@n$EN?j!B?;+jk_|HbfgThXwT0v>Q3s8PP;>%USzYX=<>G;>ND6bCwakgClDBJ6A zh#!*vHE0z63~^fCwUobFsr`~Z5%w5B{!=AA8R^(LN_|MugQ)Lrr@ri$1q2uN6YBR* zC~xSGN~MJV80rgqMJ4@hlo!8VsY`|bT%?ojN?j}0kB9w}Cq&c&N#BC{#NHQCCkg*M zaJ?VbFOlo_Azg!DXwyFgUO)mS*81#){MZ&h9zFy)Imf<(NLL$_sz*Jk|D(`1zAU0( z5}lqye@iR%PAUIupwY9G`k17nW55q191A|?k5bu`0o#j)pKp@%vzqNd69X^6Kmq;33O3;&9a_vJ4`x-c%H>V*FR*ngeVUr)mI{fQLFUCI9Jo{cr{U%4$I+6b=%75OBcPxJ@^qc7DcRT8ve#Vc-uR_1-6!?eaKLhPK z=(J}G?KRhLk2BF;W#oq$bo{*r_DUk2*zqO-ybkeiDs*J|GoVir<7ZCnxfk-17|*Q# z+z$T1oKk0^Ui7a^&|X#a7xq)8zX|OX|P2l`jhU*<~s^WY!ETIhP= zpGbc||2RpmzX18W(Vobr<$VSA=|%tTmFwSNLA z1LzN9q`vhiZxD@zkfZr?X#WF_eHNpAs&L*Wk=G8sB)7EjxKHN4}ad``18xCZ|_;Yzy2BZ z9YA@Pio7dOpBS!RC+VkAe!tT{*1*2~@So{&{bsaB1=piUv;B)GH}+Mf?vm?YLVe;0 zZl9I(4)9;+$h#2ohqfbLgVO#VWJS^53xq!kYCkocub_Sf^oJ_|lK-Q$$Bc-2Q_@}V zw{aMctv~(y-v$0S#>*+f{{hrzn#2DT@EQomltAMN)R<^2)yuR0;3Fa+rIzal+wTtwX==?_BRWTQX+#vm{H4nJQ1JMCf+bkZ%C? z!<0(PI~x7(0PJPkzmfGtf{44F`p8)#|V19d#T!(9`c#~3$OSIPk zv_s95h{6!A(^sIp9gaWTNPf&8Y=7SdzQJ!QMYWi}2)if2k7m{WmW6%NPXC(&`y^qX z3xt0*>Nf`Q(%SDCw%>aqDlONaMtx$AKi4up>VKYG{}|e1F)wZZ=Xi{ z_O66a3;zM6;}Cwfq(6`Hk{G{Uk@PyW7lp5u^tmXn4&~8bS-;)j--Pyo8Fc+tLcgdJ z|DQ+whbAkvQ1}-?za;$0#)G4fvHycg-6YpP0euR~l)4Q#<^LbhA=vX|x&9xxoaxBmJP>Q`9guRq=c`wpEDQLBXi2`YyEhhnt;e}W_Ias2zkY}n;~ygeWF+wA!F zuTWlfRz&TR{Jrqkvg5B6`ZGHFKOi6NGXaiO>-ZDgM-_gEi}-N8GzI)a^CIfM(T?Pw z4F33fe|`U3T<=AHvHqJzI*RoqmK2&li}vkx<_o_>{=zHha&r9&)Mt{jez^<&z0uL< zGM1122ba_GeuDb!aO(3Bv|sdcf4(~j`Nuf<51_o*L8We&`o4kotvOpMENQg7`{^$$ z(5ECl3ijRxdjr<~u@?4BBHn&ju74c)W9YBee;1>?2B*9pv}X+cWr6U25BXzgkJ}`D zG4!u>^uGc1kE1<*Z28duG4#Jhk{-`MaKMib??8GGX}ezjFw#Tl&({81QQjb&;-^yI zskq*U$%)-RxeEHWIQsqy_34GbpC{!l2Bov!An7V-!SS!#&>jPI5!ENxe+hrBgTKBc z>B~@lAL5aX*D$RbJO@LZT)zwTD~$Ko+gHHQl?KR=>;DY-v3SIrKimfXLBy{ma{WH| z;lMQI?GFrrzaRZ+x?H~!@@l{g5xRYs;(8VHn`XIwKJ2mGY2VH0XoFacC58Va*dvMg zO1q@TqCRy~vHp|v7tp?O%&%-b{4naD#CSRY`J4~zg1*V)BkI4Tyob@=Tb=g48TKzb z_Wup^83X@^8|eIh0sn4?zXbhi3Q9dG(FlqgN}_)*Py@ccjTW2dsX4@ zDbc4L`t^^Cc~V5SAS+?)@946!3=y^)zK>5)76ClsJ3(~#6u$dFkZy)H9SO4#J3j=KJrc= zgA-ijTp%&Du+PJByyhquxeN$b_AQSEYhW)tCX?#Y==$x{Ld^*P@~W>KGli_B*0RXqd=y~lT*XVqM) zRGtB*q=%5_Kk-cm5DX4#UD38zdnr*)wW1b2l1`*@xqREuB&&0KF_THOr&SU`*R*nb zIzdnsPPIHN>uG$40?1E*6i%}|-RaC4@@?|;0icWD=pn87d^rKQ*F#X2*09e*vgviK zsH%7fr5?a{@GM&v5t@8+fae$>Nkn_o7G#OyXWFY55d>qsqu}#kdqO4A6?|kRepUkr z_meqD`8=FC4^49sj`4k-o!6v_C6-t5O4nuwR_V8P=5_AySN6KdRv;S#NI#JNd2U$` z0@)Pc*$rfK0KqV$_ImoTtbIVZ73241#>>7yE?$f+w`HaCiELM@Ba^(sB9v1Do{Gmq z;-s|Q*En>JnogA>PTf7+2S4# zudjxjz5ucoNEBnfU$2{pT<#*b1KI0IrkuNhR0BNRYZ(Y2{{duQAlEm635A|OwA8qR2%rDN~?D=ZHX9r>#+Qp=by;3Bi<0NE5k<^tjUG@~Kq zFwzb=$m}_kbLBNY&+H3k1GzPTFk;^xKxP4{4InK2lL3Sy(S06*gla-f$9Y~yWEGI@ zfpM@MNTto{L!J_lp#V|=G6-AyK6X2hSjI*E2}m-4Y-g?j@^$8FcXRQM8h0S2O(kNV z?&)l!delRx;UIGD3e@7aKzegl4tcouJ<#PM$6}h&hg^OwCIN}(UF0kv)c{fpq^{`l z)B!035YFS{Yh9jIK#~Xxep#(R`U6N8km!1s=LR5!0CGF!Y;bx02?!TtzT|%Le8fc_ z1`@r|MV@7@ibd?mIN7tRwewUD0l)e=a`oM6a}jwBNdIjXN#)9kRIy`CT_6{CS=A=X z!(8Km)CG`t68X5xGaX3ZW*6b^bpIzTGNb7tb{$p!Q6IUGoj?sZ$Xs?NwbVf_oJr&j zuXM;^XHwk`&s=smb*F<|$j+o5b`f@E75|uD`dlr!;vg4t%BDW&A?18$22HN2UM+Zi z3F@Wpv~q~705TTqDuhJ^x5eiJKwid5+DAHp><=JCAY%f#DnMQd@O%u&PypEiWLzK@ zcXfEz%apY=)7`Tozg8XaauHdO&#Biugc^Pkxh8qJh21s21`7@B{r`%klj>3JP0M9reQ4i_PrCKw&k{S$XcnWy>0tokb z`abPSo&#jyZi{r4Ixy&?$9X<4f>kmgrvbTQpR>7UG#PIxZ1EA}nQeDDi1z2l9Au96 z%!MwZc`kS4T%`SQlFOt0@D`7UtO6gjB#B@*(Qlm`kp2MAIv@=Jo?C!Kw_2Sk z=T0C?0zCHusjPA5WA_sYA%@@-d2&y(%i?tPUneGxaT<9X4GbSA*ohQGQN!t=Y{tRSi02w_N{=DCorRBgCdOeZ9@3HP$&j!253Za}@(j7idLRmSp^R0T;|?GL zzjt~51xWH$7kLm!zlYee)EkxuBX^3jrotC}$-7zB0n5Yd&r)&#`8kl9Ke{|`GS``| zhU1ThCj@xT1Tyrxo9jX#b$_u4_M>LiLd^cRN0gcS5#jLgeQbyO2#1H~0tg3#!2mKB z$S(s3CpWLUh#q(z!y-&0v`?3d%p^~bi_}ui_5i|MI|2xG z-sK|N6L!1EOt#lK=Q}#jqRv;jh~6#i2_Ve%SO8(^F9ZYE$wa;ighx~j(i|^lIR}X2 zrist<2<6nd$RLnvK=QAE)M1eDbG-p1ibnI1qmDt{=etM^khoVc<+BsEDsfuUkczk8c0*I-4Z9$=pC~NQnn~TUbK-8I5pPp{4GqdgM2jC7yvPmQM zo^KK6N+VZnyenr7kQ$joj#7HJ8AeLhySZ)!Pkg@31&cMUMa+l=EOsAw3fR6irL(LD zfK((J8~^zxkY3#HG(6%6*b}x$DN{~hXIAy0llgMKi(JuwoacyOo?v(~?OE(GX1jYa ziuk#H0iFTe%kq)G08zM`Wsvydh1$+M@8|RIL}cYmSI!wg1_OS`yBYmwxjejgp^kRt zECo`KvC`DN6-afA%ToX{h_X%T3F#OElP$8MOiO3FYXYTz6uBxF+tTU1ooI{xi58*d zx3KhWF7od{`n?{9T+N)U*9F?^>);uXnV!-4dqAR|Z&30tDEV3|xl}Gm+7Y0(D=@T$9{f|3Jw&*J=XpT-R$3kmaM~U< zUZkZpmV##>;2R$RG8kyDP9RlpjAO1IAjyC=ZUPeX;wo&2n1%KV#Dq_Rrv@j5e5-yA z$e`!Xl-v(Qt*|;1`6iI6=Pg8dVunv3896#aqH+TP$O!H%NOa}#;~&E>fV$l#YO(wr$XK_hm zdS0ia7H*3SO?1negIvi#D=!4ne~rs?4Uhs32l*Pd0~zuxmJk=O@x}s{b=88x`no{u zy%D*hfq1xuNMHu?B_OeY&wmX_<(;k#pCsb(psba=k5mZEGxvdKC@`A;8i?|GN+WlK zXxhtM$$tS)_1zYUH?}NX3KpJ?HFZzOs5dmtA{24-31~0O>J5*HHih-Qp7+KVHLYx3 zf|>^A>Zc-CuQysz&Kw|xeO3;UdLTod&*M(Ip7%z*c^!F{gD3Voo2!JC0tP*duofZD z`zd+8i*y1>2I9{K$_ey~Ekpvo`dK2LeHz7x@qi7h`rmZr9EI3ZeZwO9coNmDvj`KX zf+rqWH_ZT|0<)$|fefxOyHBP~FDDOH&`ga|i+i%^ChY6qaD_zxtE<7YHSgx?0J8Bz zF0uwlO8~h82=8SZ$;~a4g!7jH$y>pb3+VF|AR7Zbj|1uRmYc_=wC)3BFCZ!6LOV--5C}#VnELLlkv=2p!Cy$RM0bhJD&$+qE{AoX!uDNEziP5 zjSZRBo{qAI@cJdlRTr@QLLfUlIppaCGPK6Z$)<50Ae}BI1N!uUXRzDyFxN&PyS;iP z;4H;5akn>p3Ook_W%UE8u5so37mzIhYdi_0-;2k$GSjO|r^27J!F0}Wy2E!-ZC9Ldjc9>3?v;u;y`wIa-goUp@&dv8*>G$ zaRZPsf%f`GAe#cE-v=bQ#jiH= z744Z%tj-j>Gr0usQ7dlo;a9$(bbpX*DwE6R@`=t&uAthp>v{?ZNhOuew5NJ-_(tE{ z#uiLAkK4r~feC%nI-SSaMxDE)db)ivnRI$~EYX1)s#Z0$8tn1)LDh~phQc3`F8LGveu5gRKjJ;h)4OVv~w3xx6 zfYq7xg<_^uQeBy@^7=xigi6}|;d~pimNIf$xuo>II{T$s4Q|~*&96cS@A$WM=JTaY z(HwW~$mLs8xkOvOt1I7~u&v{vuz!b`drhX;nlEL`>m@B>ls@!2Tmam~%EHfFwwx)Z za;hy)c?okTTN1pbE0zTjq5c| zwyQ((8u7+CY|}Z)qM>t{R5v{yCu}ptY#V=K?v?HCKsAdQKdCTZ#_e{T*r3}(1{?(U zQ@pB+f^LC0g|^x_aZ|o6m0MKeoxpq>HV<*oJe9*CbnSjNkuRY7HbF=55^Xs&qL;#r zf3yvDku7g2lUeO0^w0u#!^r@9-8vdNn_8ABJ9>0y%FqI5&CTr@FRAB|NbwZ0dr9kS zxNxGQm}-ON3(5dyur$AQRm@La5%bejL%6B4`RUcibj{ATf*4hLYLbhbrVbSnL;zO9^H1B+!!ZN;p_a~-6_2Ilm0&`f3cMi)dSP+%*< zYdKZOO30N&TfPUusnk~TaQ)lBXs@;T;%b`%NpwZ>>ln>=XiaUxyh6-PXAo-xU9hCG zsoAp<9gH`sbweYM>x)7*rAN1H2|EB-8)GC(@w5{h1H+xs-2B#KnRq}44#t>^2@FPE zxPPgULs+^@uhAEEXX;9oRwwj{CZ1VJwDx3kX{CSa%Wym%=0QbaY1N+VDRm~~z!63g z`Y2~&}R}b_$@Sw>N9~hcu@tCWVOlR5<+$BUDqJjw& z0igzRi#N#O3vWi9bB*1oe|xGegC1rg{uSN%wcVVul~f|p)0I!Bv$Odton51UHDuPr zVTM&195S;CO59eBm_uaYqZ=|!+15Dxgsx|;ubp`Qf`)RwA=8GzGpE3`09~}~6}~KA z#vST~YtVwKskt-TUS2t;*32mMgGZRUrMgOb48|OyD}@OipMBzlLM2481$i`oK9@re z38;fPnV#jykhG#~H-Df-bGZj!-m~U*qGr@X6)rVl0Q42~d$750cV#MDUX(9tjjzm> zJ6p0{8Tu=PHS`qVUmV@6W{sF~sxM&FPy38s(Plu>k4xG3)}~uk7n+bZ=qHKLHA||P>A-XuV<@8|W@%>Dg1A~PVitzEImb0qd)=c_m~XA$z>yBY!ta9K z9M+7@&LH8{GTxR|(wxm`m0ZTSp*2Fhtqs=lxL1~1m7XO?@GnVM^$RkU5jSnfu7M}7 z!(kykB$>*nweX%qSzN{zw4hPI(ot#>U2wE zGqvYXM_b9w0(jO+JF~Z)--`w?FuYekntWM$ z&qRdjupUs~1~*!oDW|kYYe{<50ki4}m7e67((E)|cSY8WVcU+g8l)XrIJ+)oW{prN z#`uh0XO?3r91Sje8Z1q<)nju-=1pc&r6=txy9;=H%r~uRCXO|VfdV_8#mrI!8Sz3| z#1pyx6YK)Uba&$%CvbJarq00=9 zUJcMgWHM*Ff*+gY0%9CDBNAAA=-maoN9YCj6&XGG;`qXY8dlkvvoESucy1i_w*7#0 z6W`NL37uDDvSzV9f@)?2(>+*ESyq(o*$-RB{89=3iysb)ty(F>?GDag?TnQQxPjT} zl-`8f*06^Tq!7R^Of0=!$ZnWv!Oza_l;d-n7E{97L?l%J9kl&Lygt zBN&lZ<#SjrH*xu-yO%#LRtXw?ft-7gqvUo(GA7XT3MkxwwN*LeHJhHUV{0Rk%XFmL z*6T;D%}$KfyBX^R>H#%PU|gU_ubyIxp3tI4_If_VjizVI=;m+30>6m)c02ZN^j1FPBRtI z@mXfkkb;ngc{*oqfid3g>S!FN-7wN{!O+}OD7f*san^FhVZzUd-iOg1(F3zOy|d@_ zipKbwIfsM|XK>UV)td^zJp3K1DjP zm#Hw(bxODWu$gO1FQ>JEz7e8Zi8`6CHXl9BEydp%TV_`9o;4cNSbAjJvrfy}@S>k@ zD0Y?BW-%R?ZM=o;*~NOR((0tW*>w5gk*9To*)Wu*Syjfdc~5)kTDk?jGIUB-aeR;i zt;yNWAuULcY3%l7HF1WP*4qdkwzN?4o5Ao8_h5E^2?dN%+_I9Au(N}u96(Q8b1G*l z=?jH&i`II5FtFd`PGLO}_30Fs-ntujAidiN_8`ZFGkQ0HPTZ`g{nB_ID_SFtnJrZ} zp0>2LsNGk(l*g!hI46|s;4~M@^{%e!NG-t2I{ZCQ<9m*mN^9A{**2bbJuq|9YaGwf oNU8<>utd)51-5ENk51(r!7`0B1v-P88}0{g2~djJ3c diff --git a/elilo-ia64.efi b/elilo-ia64.efi index 9022ad4c1cde8dc77de262d743147feeaab1ea6b..6404430014ace23d61eb390794157c083caec929 100644 GIT binary patch literal 374212 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 z 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�za2jb^^~7cd3yMe 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

WQvTT#Uj2aZw^O(q6uq2E;nl~5zwoY3y%m%{ zNa59A7yeQTFDm~?3a@@p_(xOtfb!QwP|6KTI zQ@Ht!Qz_j1L$JS7Ki02@6lXuWAYtbtDgKhmQ%Ue|PVm=L{N@KHQ@Hi_Rthg`{&OkZ z`un`%>Hc2SbtLoW6_YcCSIbiW(Zssbs}u596Zkm^d?JCrDuGWX@K+}AsRaIt1a9ka zCa1}BJi%{kqP*>d;>O>+TI8Qk;jJ%HRn_-5RHX_?3MduyeIhq2B28PsA_8frml>GS z*GEho#)iZ{ zkMngC!|P`-U)aN!%f9L+(L>|zXlq=gE&e)-Pg(pZiw72et;J_8zR2P=i@(O=4T~RX z@w&y2u=sY1A8zp-7C+45J1x#vl=#c0#b0g7@3MH@;w_8+o5ekgA7JsM#rL=Ppv4zh z{6UNFXYsbhUuyAf7T?$63oUN%-zF^n3rl{H#jmh<+~V)D_;QQC*xEO?MEW259_V|Z z?}5Gt`X1t@1<1j`Q-7` zaCsiNE03p#%X75h zWBsW*+d*5hIagPQOS!aKt2!q*Cq-OQjN{AA(X8yKWH zeAO|+>z`p>6Zx~zzx$)+PC^8QFTg`mh&Rq)Zv3_c4`Cr5>|ov!`E7V;3-Q>Gna4!k zm+($J{U#O+M1BtSE_-gJ!n-hx^e473XmT+{&&JpM3g&U)|HPt$ zxF`MPiJs4hp611_p1Y(UYb{n_0b#S zb%^*U@fBCk9}yQ64-5awT+)fU3x{M+yC-gcE&Z7I1e|*Kf7;c1zpjzTX=A`%O4Y7D+=do)IEqps<%~OP!~H7#3AwK zb_NOI??!Pgzl-%GIDFM6*h$>`AoH~7pOpA-J<7oNp^XNTKNt1*GcNr#CC@=NerREy zAwQVsn;TAMEl`jDt9Lzflkqck5MDL?U!{I3Jop;(rtlk09(xCKPxu;CKz4SYU~c-o zDtfv*nJ2|RhYN3C%e*6cmWY4Uc>+ZKIvGcUJ^AfYu}AgTbC=||`uklw=^0|=|Muam zKM6bN^-sK${mUiJjr}Rp?~|-Yi9NSSo@`yqz>K3qM82DK>!o_A-uS1O*L1B)C2>f+ zGs2*Q_@mc(M!qM%-7fWZui|LoFgNvHXY%9-b7~L0{(`{M?fNK#nE3785})RI?hw=A(rCI9Vr+eb_T$wM_2c;inoIWG=dkwC)BYNH? z{*3qJ!ylOblJVk+{P(24Vu!MxmhgY!UHj*1uGiT4a%0aoMUacBGm$6B{$x)c_!hn= zJ@LC)FfGN7l)TzC@dJO+>p_w4p2Wu;ep6qRe%US0*+=vBYYqOZ{dp=M2cqZK(ysPP zxZVzbt$r(hOH04kgx@3WY8}Gu6|>Ys(vPjLuwYZWF+@ z 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 diff --git a/elilo.c b/elilo.c index 19731c9..6bdd6bd 100644 --- a/elilo.c +++ b/elilo.c @@ -34,6 +34,7 @@ #include "elilo.h" #include "vars.h" +#include "gzip.h" #include "getopt.h" #include "fileops.h" @@ -84,13 +85,23 @@ do_kernel_load(CHAR16 *kname, kdesc_t *kd) } INTN -kernel_load(EFI_HANDLE image, CHAR16 *kname, kdesc_t *kd, memdesc_t *imem) +kernel_load(EFI_HANDLE image, CHAR16 *kname, kdesc_t *kd, memdesc_t *imem, memdesc_t *mmem) { + CHAR16 kernel[CMDLINE_MAXLEN]; + /* + * Do the vm image switch here + * if there is "vmm=" then elilo should load image specified + * in "vmm=" and then give the "image" to vmm as target kernel image + */ + if (elilo_opt.vmcode[0]) + StrCpy(kernel, elilo_opt.vmcode); + else + StrCpy(kernel, kname); /* * Now let's try to load the kernel ! */ - switch(do_kernel_load(kname, kd)) { + switch(do_kernel_load(kernel, kd)) { case ELILO_LOAD_SUCCESS: break; @@ -101,6 +112,7 @@ kernel_load(EFI_HANDLE image, CHAR16 *kname, kdesc_t *kd, memdesc_t *imem) case ELILO_LOAD_ABORTED: /* we drop initrd in case we aborted the load */ elilo_opt.initrd[0] = CHAR_NULL; + elilo_opt.vmcode[0] = CHAR_NULL; /* will go back to interactive selection */ elilo_opt.prompt = 1; @@ -111,22 +123,22 @@ kernel_load(EFI_HANDLE image, CHAR16 *kname, kdesc_t *kd, memdesc_t *imem) } VERB_PRT(3, Print(L"kernel loaded in [0x%lx-0x%lx] entry=0x%lx\n", - (UINT64)kd->kstart, (UINT64)kd->kend, (UINT64)kd->kentry)); + (unsigned long)kd->kstart, (unsigned long)kd->kend, (unsigned long)kd->kentry)); if (elilo_opt.initrd[0]) { if (sysdeps_initrd_get_addr(kd, imem) == -1) goto exit_error; - switch(load_initrd(elilo_opt.initrd, imem)) { + switch(load_file(elilo_opt.initrd, imem)) { case ELILO_LOAD_SUCCESS: break; case ELILO_LOAD_ERROR: goto exit_error; case ELILO_LOAD_ABORTED: - /* the free_kmem() is the responsibility of the loader */ - + free_kmem(); /* we drop initrd in case we aborted the load */ elilo_opt.initrd[0] = CHAR_NULL; + elilo_opt.vmcode[0] = CHAR_NULL; elilo_opt.prompt = 1; elilo_opt.timeout = ELILO_DEFAULT_TIMEOUT; elilo_opt.delay = 0; @@ -134,10 +146,52 @@ kernel_load(EFI_HANDLE image, CHAR16 *kname, kdesc_t *kd, memdesc_t *imem) return ELILO_LOAD_RETRY; } } + + if (elilo_opt.vmcode[0]) { + + mmem->start_addr = 0; /* let the allocator decide */ + + switch(load_file(kname, mmem)) { + case ELILO_LOAD_SUCCESS: + break; + case ELILO_LOAD_ERROR: + goto exit_error; + case ELILO_LOAD_ABORTED: + if (imem->start_addr) + free(imem->start_addr); + free_kmem(); + /* we drop initrd in case we aborted the load */ + elilo_opt.initrd[0] = CHAR_NULL; + elilo_opt.vmcode[0] = CHAR_NULL; + elilo_opt.prompt = 1; + elilo_opt.timeout = ELILO_DEFAULT_TIMEOUT; + elilo_opt.delay = 0; + + return ELILO_LOAD_RETRY; + } + + /* Test for a compressed image and unzip if found */ + if (gzip_probe(mmem->start_addr, mmem->size) == 0 && + gunzip_image(mmem) != ELILO_LOAD_SUCCESS) { + if (imem->start_addr) + free(imem->start_addr); + free(mmem->start_addr); + free_kmem(); + /* we drop initrd in case we aborted the load */ + elilo_opt.initrd[0] = CHAR_NULL; + elilo_opt.vmcode[0] = CHAR_NULL; + elilo_opt.prompt = 1; + elilo_opt.timeout = ELILO_DEFAULT_TIMEOUT; + elilo_opt.delay = 0; + + return ELILO_LOAD_RETRY; + } + } return ELILO_LOAD_SUCCESS; exit_error: free_kmem(); if (imem->start_addr) free(imem->start_addr); + if (mmem->start_addr) free(mmem->start_addr); return ELILO_LOAD_ERROR; } @@ -152,7 +206,7 @@ main_loop(EFI_HANDLE dev, CHAR16 **argv, INTN argc, INTN index, EFI_HANDLE image UINTN cookie; EFI_STATUS status = EFI_SUCCESS; kdesc_t kd; - memdesc_t imem; + memdesc_t imem, mmem; INTN r; /* @@ -164,12 +218,12 @@ main_loop(EFI_HANDLE dev, CHAR16 **argv, INTN argc, INTN index, EFI_HANDLE image for(;;) { kname[0] = cmdline_tmp[0] = cmdline[0] = CHAR_NULL; - imem.start_addr = 0; imem.pgcnt = 0; + imem.start_addr = 0; imem.pgcnt = 0; imem.size = 0; elilo_opt.sys_img_opts = NULL; if (kernel_chooser(argv, argc, index, kname, cmdline_tmp) == -1) goto exit_error; - switch (kernel_load(image, kname, &kd, &imem)) { + switch (kernel_load(image, kname, &kd, &imem, &mmem)) { case ELILO_LOAD_SUCCESS: goto do_launch; case ELILO_LOAD_ERROR: @@ -187,7 +241,7 @@ do_launch: close_devices(); /* No console output permitted after create_boot_params()! */ - if ((bp=create_boot_params(cmdline, &imem, &cookie)) == 0) goto error; + if ((bp=create_boot_params(cmdline, &imem, &mmem, &cookie)) == 0) goto error; /* terminate bootservices */ status = BS->ExitBootServices(image, cookie); @@ -221,6 +275,7 @@ elilo_help(VOID) Print(L"-v verbose level(can appear multiple times)\n"); Print(L"-a always check for alternate kernel image\n"); Print(L"-i file load file as the initial ramdisk\n"); + Print(L"-m file load file as additional boot time vmm module\n"); Print(L"-C file indicate the config file to use\n"); Print(L"-P parse config file only (verify syntax)\n"); Print(L"-D enable debug prints\n"); @@ -491,6 +546,13 @@ efi_main (EFI_HANDLE image, EFI_SYSTEM_TABLE *system_tab) } StrCpy(elilo_opt.initrd, Optarg); break; + case 'm': + if (StrLen(Optarg) >= FILENAME_MAXLEN-1) { + Print(L"vmm module filename is limited to %d characters\n", FILENAME_MAXLEN); + goto do_exit; + } + StrCpy(elilo_opt.vmcode, Optarg); + break; case 'C': if (StrLen(Optarg) >= FILENAME_MAXLEN-1) { Print(L"config filename is limited to %d characters\n", FILENAME_MAXLEN); @@ -607,11 +669,19 @@ efi_main (EFI_HANDLE image, EFI_SYSTEM_TABLE *system_tab) * if there was an error when parsing the config file, then * we force interactive mode to give a chance to the user. * We also clear the error. - */ - if (ret && argc == 1) { - Print(L"forcing interactive mode because of errors\n"); + */ + if (ret != EFI_SUCCESS) { + Print(L"forcing interactive mode due to config file error(s)\n"); elilo_opt.prompt = 1; } + /* + * However, if the user specified a kernel on the command line + * then we don't go to interactive mode, even if there was an option in + * the config file telling us to do so. + */ + if (argc > Optind) { + elilo_opt.prompt = 0; + } /* * If EDD30 EFI variable was not set to TRUE (or not defined), we @@ -627,13 +697,6 @@ efi_main (EFI_HANDLE image, EFI_SYSTEM_TABLE *system_tab) ret = EFI_LOAD_ERROR; - /* - * if the user specified a kernel on the command line - * then we don't go to interactive mode even if it - * was set in the config file or set because of an - * error parsing the config file. - */ - if (argc > Optind) elilo_opt.prompt = 0; /* set default timeout if going interactive */ diff --git a/elilo.h b/elilo.h index 7f0d768..74f740d 100644 --- a/elilo.h +++ b/elilo.h @@ -81,6 +81,7 @@ typedef struct { UINTN delay; /* delay before booting the image */ UINTN verbose; /* verbosity level [1-5] */ CHAR16 initrd[FILENAME_MAXLEN]; /* name of file for initial ramdisk */ + CHAR16 vmcode[FILENAME_MAXLEN]; /* name of file for boot time module*/ UINT8 delay_set; /* mark whether or not delay was specified on cmdline */ UINT8 edd30_on; /* true is EDD30 variable is TRUE */ UINT8 edd30_no_force; /* don't force EDD30 variable to true */ @@ -112,6 +113,7 @@ extern EFI_SYSTEM_TABLE *systab; typedef struct { VOID *start_addr; UINTN pgcnt; + UINTN size; } memdesc_t; typedef struct { @@ -169,7 +171,7 @@ extern VOID U2ascii(CHAR16 *, CHAR8 *, UINTN); /* from config.c (more in config.h) */ extern EFI_STATUS read_config(CHAR16 *); extern VOID print_config_options(VOID); -extern INTN find_label(CHAR16 *, CHAR16 *, CHAR16 *, CHAR16 *); +extern INTN find_label(CHAR16 *, CHAR16 *, CHAR16 *, CHAR16 *, CHAR16 *); extern VOID print_label_list(VOID); extern INTN config_init(VOID); extern CHAR16 *get_message_filename(INTN which); @@ -178,13 +180,13 @@ extern VOID *get_next_description(VOID *prev, CHAR16 **label, CHAR16 **descripti extern CHAR16 *get_config_file(VOID); /* from initrd.c */ -extern INTN load_initrd(CHAR16 *, memdesc_t *); +extern INTN load_file(CHAR16 *, memdesc_t *); /* from alternate.c */ extern INTN alternate_kernel(CHAR16 *, INTN); /* from bootparams.c */ -extern VOID *create_boot_params (CHAR16 *, memdesc_t *, UINTN *); +extern VOID *create_boot_params (CHAR16 *, memdesc_t *, memdesc_t *, UINTN *); extern VOID free_boot_params(VOID *bp); /* @@ -192,7 +194,7 @@ extern VOID free_boot_params(VOID *bp); */ -extern INTN sysdeps_create_boot_params(boot_params_t *, CHAR8 *, memdesc_t *, UINTN *); +extern INTN sysdeps_create_boot_params(boot_params_t *, CHAR8 *, memdesc_t *, memdesc_t *, UINTN *); extern VOID sysdeps_free_boot_params(boot_params_t *); extern INTN sysdeps_init(EFI_HANDLE dev); extern INTN sysdeps_initrd_get_addr(kdesc_t *, memdesc_t *); diff --git a/fileops.c b/fileops.c index 1678f0f..85f3485 100644 --- a/fileops.c +++ b/fileops.c @@ -391,22 +391,22 @@ fops_setdefaults(struct config_file *defconf, CHAR16 *kname, UINTN maxlen, CHAR1 boot_dev->fops->setdefaults(boot_dev->fops->intf, defconf, kname, maxlen, devpath); } i=0; while (i= MAX_DEFAULT_CONFIGS) { Print(L"ERROR: i = %d, MAX_DEFAULT_CONFIGS is not large enough\n", i); return EFI_INVALID_PARAMETER; } -//#endif +#endif StrnCpy(defconf[i].fname, FILEOPS_ARCH_DEFAULT_CONFIG, maxlen-1); StrnCpy(defconf[i+1].fname, FILEOPS_DEFAULT_CONFIG, maxlen-1); -//#ifdef ELILO_DEBUG +#ifdef ELILO_DEBUG VERB_PRT(3,Print(L"Default config filename list:\n")); for (i=0; i + * + * Copyright (C) 2001-2003 Hewlett-Packard Co. + * Contributed by Stephane Eranian + * + * Copyright (C) 2001 Silicon Graphics, Inc. + * Contributed by Brent Casavant + * + * This file is part of the ELILO, the EFI Linux boot loader. + * + * ELILO is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation; either version 2, or (at your option) + * any later version. + * + * ELILO is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with ELILO; see the file COPYING. If not, write to the Free + * Software Foundation, 59 Temple Place - Suite 330, Boston, MA + * 02111-1307, USA. + * + * Please check out the elilo.txt for complete documentation on how + * to use this program. + */ + +#include +#include + +#include "elilo.h" + +#include "gzip.h" + +#define LD_NAME L"gunzip" + +#define memzero(s, n) Memset((VOID *)(s), 0, (n)) +#define memcpy(a,b,n) Memcpy((VOID *)(a),(b),(n)) + +/* size of output buffer */ +#define WSIZE 0x8000 /* Window size must be at least 32k, */ + /* and a power of two */ +/* + * gzip declarations + */ +#define OF(args) args +#define FUNC_STATIC static + +typedef unsigned char uch; +typedef unsigned short ush; +typedef unsigned long ulg; + +/* + * static parameters to gzip helper functions + * we cannot use paramters because API was not + * designed that way + */ +static uch *inbuf; /* input buffer (compressed data) */ +static uch *window; /* output buffer (uncompressed data) */ + +static VOID *outbuf; +unsigned char *outptr; +static unsigned long outsize; + +static unsigned inptr = 0; /* index of next byte to be processed in inbuf */ +static unsigned outcnt = 0; /* bytes in output buffer */ + +#define get_byte() inbuf[inptr++] + +/* Diagnostic functions */ +#ifdef INFLATE_DEBUG +# define Assert(cond,msg) {if(!(cond)) error(msg);} +int stderr; +# define Trace(x) Print(L"line %d:\n", __LINE__); +# define Tracev(x) {if (verbose) Print(L"line %d:\n", __LINE__) ;} +# define Tracevv(x) {if (verbose>1) Print(L"line %d:\n", __LINE__) ;} +# define Tracec(c,x) {if (verbose && (c)) Print(L"line %d:\n", __LINE__) ;} +# define Tracecv(c,x) {if (verbose>1 && (c)) Print(L"line %d:\n", __LINE__) ;} +#else +# define Assert(cond,msg) +# define Trace(x) +# define Tracev(x) +# define Tracevv(x) +# define Tracec(c,x) +# define Tracecv(c,x) +#endif + +static void flush_window(void); +static void error(char *m); +static long bytes_out; + +static void error(char *m); + +#define gzip_malloc(size) (void *)alloc(size, 0) +#define gzip_free(where) free(where) + +#include "inflate.c" + +/* + * Run a set of bytes through the crc shift register. If s is a NULL + * pointer, then initialize the crc shift register contents instead. + * Return the current crc in either case. + * + * Input: + * S pointer to bytes to pump through. + * N number of bytes in S[]. + */ +static void +updcrc(unsigned char *s, unsigned n) +{ + register unsigned long c; + /* crc is defined in inflate.c */ + + c = crc; + while (n--) { + c = crc_32_tab[((int)c ^ (*s++)) & 0xff] ^ (c >> 8); + } + crc = c; + return; +} + +/* + * Clear input and output buffers + */ +static void +clear_bufs(void) +{ + outcnt = 0; + inptr = 0; +} + +/* + * Write the output window window[0..outcnt-1] holding uncompressed + * data and update crc. + */ +void +flush_window(void) +{ + /* + * We'll end up relying on the CRC check and size check failing + * if there's actually more data than we expect. + */ + if (!outcnt || bytes_out + outcnt > outsize) + return; + + updcrc(window, outcnt); + + Memcpy(outptr, window, outcnt); + outptr += outcnt; + bytes_out += outcnt; + + outcnt = 0; +} + +static void +error(char *x) +{ + ERR_PRT((L"%s : %a", LD_NAME, x)); + /* will eventually exit with error from gunzip() */ +} + +static INT32 +decompress(VOID) +{ + INT32 ret; + + clear_bufs(); + makecrc(); + Print(L"Uncompressing... "); + ret = gunzip(); + if (ret == 0) Print(L"done\n"); + return ret == 0 ? 0 : -1; +} + +int +gunzip_image(memdesc_t *image) +{ + UINTN pgcnt; + + inbuf = image->start_addr; + + /* + * Last 4 bytes of gzip'd image indicates the uncompressed size + */ + outsize = inbuf[image->size - 1] << 24 | inbuf[image->size - 2] << 16 | + inbuf[image->size - 3] << 8 | inbuf[image->size - 4]; + + pgcnt = EFI_SIZE_TO_PAGES(outsize); + + outbuf = alloc_pages(pgcnt, EfiLoaderData, AllocateAnyPages, 0); + if (outbuf == NULL) { + ERR_PRT((L"%s : allocate output buffer failed\n", LD_NAME)); + return -1; + } + outptr = outbuf; + + window = (void *)alloc(WSIZE, 0); + if (window == NULL) { + ERR_PRT((L"%s : allocate output window failed\n", LD_NAME)); + free(outbuf); + return -1; + } + + bytes_out = 0; + + if (decompress() != 0) { + free(window); + free(outbuf); + return ELILO_LOAD_ERROR; + } + + free(window); + free(image->start_addr); + + image->start_addr = outbuf; + image->size = outsize; + image->pgcnt = pgcnt; + + return ELILO_LOAD_SUCCESS; +} diff --git a/ia64/gzip.h b/gzip.h similarity index 50% rename from ia64/gzip.h rename to gzip.h index 69749df..88b53f6 100644 --- a/ia64/gzip.h +++ b/gzip.h @@ -26,10 +26,42 @@ #ifndef __GZIP_H__ #define __GZIP_H__ - -int gzip_probe(unsigned char *, unsigned long); +int gunzip_image(memdesc_t *); int gunzip_kernel(fops_fd_t, kdesc_t *); -#define LD_NAME L"gzip_ia64" +/* gzip flag byte */ +#define ASCII_FLAG 0x01 /* bit 0 set: file probably ASCII text */ +#define CONTINUATION 0x02 /* bit 1 set: continuation of multi-part gzip file */ +#define EXTRA_FIELD 0x04 /* bit 2 set: extra field present */ +#define ORIG_NAME 0x08 /* bit 3 set: original file name present */ +#define COMMENT 0x10 /* bit 4 set: file comment present */ +#define ENCRYPTED 0x20 /* bit 5 set: file is encrypted */ +#define RESERVED 0xC0 /* bit 6,7: reserved */ + +/* + * check for valid gzip signature + * return: + * 0 : valid gzip archive + * -1: invalid gzip archive + */ +static inline int +gzip_probe(unsigned char *buf, unsigned long size) +{ + if (size < 4) return -1; + + if (buf[0] != 037 || + ((buf[1] != 0213) && (buf[1] != 0236))) return -1; + + /* We only support method #8, DEFLATED */ + if (buf[2] != 8) return -1; + + if ((buf[3] & ENCRYPTED) != 0) return -1; + + if ((buf[3] & CONTINUATION) != 0) return -1; + + if ((buf[3] & RESERVED) != 0) return -1; + + return 0; +} #endif /* __GZIP_H__ */ diff --git a/ia32/gzip.c b/ia32/gzip.c index fdd7284..fff5f6d 100644 --- a/ia32/gzip.c +++ b/ia32/gzip.c @@ -34,6 +34,8 @@ #include "gzip.h" #include "private.h" +#define LD_NAME L"gzip_ia32" + #define memzero(s, n) Memset((VOID *)(s), 0, (n)) #define memcpy(a,b,n) Memcpy((VOID *)(a),(b),(n)) diff --git a/ia32/gzip.h b/ia32/gzip.h deleted file mode 100644 index 296bf3c..0000000 --- a/ia32/gzip.h +++ /dev/null @@ -1,35 +0,0 @@ -/* - * Copyright (C) 2001-2002 Hewlett-Packard Co. - * Contributed by Stephane Eranian - * - * This file is part of the ELILO, the EFI Linux boot loader. - * - * ELILO is free software; you can redistribute it and/or modify - * it under the terms of the GNU General Public License as published by - * the Free Software Foundation; either version 2, or (at your option) - * any later version. - * - * ELILO is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the - * GNU General Public License for more details. - * - * You should have received a copy of the GNU General Public License - * along with ELILO; see the file COPYING. If not, write to the Free - * Software Foundation, 59 Temple Place - Suite 330, Boston, MA - * 02111-1307, USA. - * - * Please check out the elilo.txt for complete documentation on how - * to use this program. - */ - -#ifndef __GZIP_H__ -#define __GZIP_H__ - - -int gzip_probe(unsigned char *, unsigned long); -int gunzip_kernel(fops_fd_t, kdesc_t *); - -#define LD_NAME L"gzip_ia32" - -#endif /* __GZIP_H__ */ diff --git a/ia32/gzip_loader.c b/ia32/gzip_loader.c index 687b301..2e11b84 100644 --- a/ia32/gzip_loader.c +++ b/ia32/gzip_loader.c @@ -30,6 +30,8 @@ #include "loader.h" #include "gzip.h" +#define LD_NAME L"gzip_ia32" + static INTN gzip_probe_format(CHAR16 *kname) { diff --git a/ia32/inflate.c b/ia32/inflate.c deleted file mode 100644 index 5532250..0000000 --- a/ia32/inflate.c +++ /dev/null @@ -1,1205 +0,0 @@ -#define DEBG(x) -#define DEBG1(x) -/* inflate.c -- Not copyrighted 1992 by Mark Adler - version c10p1, 10 January 1993 */ - -/* - * Adapted for booting Linux by Hannu Savolainen 1993 - * based on gzip-1.0.3 - * - * Nicolas Pitre , 1999/04/14 : - * Little mods for all variable to reside either into rodata or bss segments - * by marking constant variables with 'const' and initializing all the others - * at run-time only. This allows for the kernel uncompressor to run - * directly from Flash or ROM memory on embeded systems. - */ - -/* - Inflate deflated (PKZIP's method 8 compressed) data. The compression - method searches for as much of the current string of bytes (up to a - length of 258) in the previous 32 K bytes. If it doesn't find any - matches (of at least length 3), it codes the next byte. Otherwise, it - codes the length of the matched string and its distance backwards from - the current position. There is a single Huffman code that codes both - single bytes (called "literals") and match lengths. A second Huffman - code codes the distance information, which follows a length code. Each - length or distance code actually represents a base value and a number - of "extra" (sometimes zero) bits to get to add to the base value. At - the end of each deflated block is a special end-of-block (EOB) literal/ - length code. The decoding process is basically: get a literal/length - code; if EOB then done; if a literal, emit the decoded byte; if a - length then get the distance and emit the referred-to bytes from the - sliding window of previously emitted data. - - There are (currently) three kinds of inflate blocks: stored, fixed, and - dynamic. The compressor deals with some chunk of data at a time, and - decides which method to use on a chunk-by-chunk basis. A chunk might - typically be 32 K or 64 K. If the chunk is incompressible, then the - "stored" method is used. In this case, the bytes are simply stored as - is, eight bits per byte, with none of the above coding. The bytes are - preceded by a count, since there is no longer an EOB code. - - If the data is compressible, then either the fixed or dynamic methods - are used. In the dynamic method, the compressed data is preceded by - an encoding of the literal/length and distance Huffman codes that are - to be used to decode this block. The representation is itself Huffman - coded, and so is preceded by a description of that code. These code - descriptions take up a little space, and so for small blocks, there is - a predefined set of codes, called the fixed codes. The fixed method is - used if the block codes up smaller that way (usually for quite small - chunks), otherwise the dynamic method is used. In the latter case, the - codes are customized to the probabilities in the current block, and so - can code it much better than the pre-determined fixed codes. - - The Huffman codes themselves are decoded using a multi-level table - lookup, in order to maximize the speed of decoding plus the speed of - building the decoding tables. See the comments below that precede the - lbits and dbits tuning parameters. - */ - - -/* - Notes beyond the 1.93a appnote.txt: - - 1. Distance pointers never point before the beginning of the output - stream. - 2. Distance pointers can point back across blocks, up to 32k away. - 3. There is an implied maximum of 7 bits for the bit length table and - 15 bits for the actual data. - 4. If only one code exists, then it is encoded using one bit. (Zero - would be more efficient, but perhaps a little confusing.) If two - codes exist, they are coded using one bit each (0 and 1). - 5. There is no way of sending zero distance codes--a dummy must be - sent if there are none. (History: a pre 2.0 version of PKZIP would - store blocks with no distance codes, but this was discovered to be - too harsh a criterion.) Valid only for 1.93a. 2.04c does allow - zero distance codes, which is sent as one code of zero bits in - length. - 6. There are up to 286 literal/length codes. Code 256 represents the - end-of-block. Note however that the static length tree defines - 288 codes just to fill out the Huffman codes. Codes 286 and 287 - cannot be used though, since there is no length base or extra bits - defined for them. Similarly, there are up to 30 distance codes. - However, static trees define 32 codes (all 5 bits) to fill out the - Huffman codes, but the last two had better not show up in the data. - 7. Unzip can check dynamic Huffman blocks for complete code sets. - The exception is that a single code would not be complete (see #4). - 8. The five bits following the block type is really the number of - literal codes sent minus 257. - 9. Length codes 8,16,16 are interpreted as 13 length codes of 8 bits - (1+6+6). Therefore, to output three times the length, you output - three codes (1+1+1), whereas to output four times the same length, - you only need two codes (1+3). Hmm. - 10. In the tree reconstruction algorithm, Code = Code + Increment - only if BitLength(i) is not zero. (Pretty obvious.) - 11. Correction: 4 Bits: # of Bit Length codes - 4 (4 - 19) - 12. Note: length code 284 can represent 227-258, but length code 285 - really is 258. The last length deserves its own, short code - since it gets used a lot in very redundant files. The length - 258 is special since 258 - 3 (the min match length) is 255. - 13. The literal/length and distance code bit lengths are read as a - single stream of lengths. It is possible (and advantageous) for - a repeat code (16, 17, or 18) to go across the boundary between - the two sets of lengths. - */ - -#ifdef RCSID -static char rcsid[] = "#Id: inflate.c,v 0.14 1993/06/10 13:27:04 jloup Exp #"; -#endif - -#ifndef FUNC_STATIC - -#if defined(STDC_HEADERS) || defined(HAVE_STDLIB_H) -# include -# include -#endif - -#include "gzip.h" -#define FUNC_STATIC -#endif /* !FUNC_STATIC */ - -#define slide window - -/* Huffman code lookup table entry--this entry is four bytes for machines - that have 16-bit pointers (e.g. PC's in the small or medium model). - Valid extra bits are 0..13. e == 15 is EOB (end of block), e == 16 - means that v is a literal, 16 < e < 32 means that v is a pointer to - the next table, which codes e - 16 bits, and lastly e == 99 indicates - an unused code. If a code with e == 99 is looked up, this implies an - error in the data. */ -struct huft { - uch e; /* number of extra bits or operation */ - uch b; /* number of bits in this code or subcode */ - union { - ush n; /* literal, length base, or distance base */ - struct huft *t; /* pointer to next level of table */ - } v; -}; - - -/* Function prototypes */ -FUNC_STATIC int huft_build OF((unsigned *, unsigned, unsigned, - const ush *, const ush *, struct huft **, int *)); -FUNC_STATIC int huft_free OF((struct huft *)); -FUNC_STATIC int inflate_codes OF((struct huft *, struct huft *, int, int)); -FUNC_STATIC int inflate_stored OF((void)); -FUNC_STATIC int inflate_fixed OF((void)); -FUNC_STATIC int inflate_dynamic OF((void)); -FUNC_STATIC int inflate_block OF((int *)); -FUNC_STATIC int inflate OF((void)); - - -/* The inflate algorithm uses a sliding 32 K byte window on the uncompressed - stream to find repeated byte strings. This is implemented here as a - circular buffer. The index is updated simply by incrementing and then - ANDing with 0x7fff (32K-1). */ -/* It is left to other modules to supply the 32 K area. It is assumed - to be usable as if it were declared "uch slide[32768];" or as just - "uch *slide;" and then malloc'ed in the latter case. The definition - must be in unzip.h, included above. */ -/* unsigned wp; current position in slide */ -#define wp outcnt -#define flush_output(w) (wp=(w),flush_window()) - -/* Tables for deflate from PKZIP's appnote.txt. */ -static const unsigned border[] = { /* Order of the bit length code lengths */ - 16, 17, 18, 0, 8, 7, 9, 6, 10, 5, 11, 4, 12, 3, 13, 2, 14, 1, 15}; -static const ush cplens[] = { /* Copy lengths for literal codes 257..285 */ - 3, 4, 5, 6, 7, 8, 9, 10, 11, 13, 15, 17, 19, 23, 27, 31, - 35, 43, 51, 59, 67, 83, 99, 115, 131, 163, 195, 227, 258, 0, 0}; - /* note: see note #13 above about the 258 in this list. */ -static const ush cplext[] = { /* Extra bits for literal codes 257..285 */ - 0, 0, 0, 0, 0, 0, 0, 0, 1, 1, 1, 1, 2, 2, 2, 2, - 3, 3, 3, 3, 4, 4, 4, 4, 5, 5, 5, 5, 0, 99, 99}; /* 99==invalid */ -static const ush cpdist[] = { /* Copy offsets for distance codes 0..29 */ - 1, 2, 3, 4, 5, 7, 9, 13, 17, 25, 33, 49, 65, 97, 129, 193, - 257, 385, 513, 769, 1025, 1537, 2049, 3073, 4097, 6145, - 8193, 12289, 16385, 24577}; -static const ush cpdext[] = { /* Extra bits for distance codes */ - 0, 0, 0, 0, 1, 1, 2, 2, 3, 3, 4, 4, 5, 5, 6, 6, - 7, 7, 8, 8, 9, 9, 10, 10, 11, 11, - 12, 12, 13, 13}; - - - -/* Macros for inflate() bit peeking and grabbing. - The usage is: - - NEEDBITS(j) - x = b & mask_bits[j]; - DUMPBITS(j) - - where NEEDBITS makes sure that b has at least j bits in it, and - DUMPBITS removes the bits from b. The macros use the variable k - for the number of bits in b. Normally, b and k are register - variables for speed, and are initialized at the beginning of a - routine that uses these macros from a global bit buffer and count. - - If we assume that EOB will be the longest code, then we will never - ask for bits with NEEDBITS that are beyond the end of the stream. - So, NEEDBITS should not read any more bytes than are needed to - meet the request. Then no bytes need to be "returned" to the buffer - at the end of the last block. - - However, this assumption is not true for fixed blocks--the EOB code - is 7 bits, but the other literal/length codes can be 8 or 9 bits. - (The EOB code is shorter than other codes because fixed blocks are - generally short. So, while a block always has an EOB, many other - literal/length codes have a significantly lower probability of - showing up at all.) However, by making the first table have a - lookup of seven bits, the EOB code will be found in that first - lookup, and so will not require that too many bits be pulled from - the stream. - */ - -FUNC_STATIC ulg bb; /* bit buffer */ -FUNC_STATIC unsigned bk; /* bits in bit buffer */ - -FUNC_STATIC const ush mask_bits[] = { - 0x0000, - 0x0001, 0x0003, 0x0007, 0x000f, 0x001f, 0x003f, 0x007f, 0x00ff, - 0x01ff, 0x03ff, 0x07ff, 0x0fff, 0x1fff, 0x3fff, 0x7fff, 0xffff -}; - -#define NEXTBYTE() (uch)get_byte() -#define NEEDBITS(n) {while(k<(n)){b|=((ulg)NEXTBYTE())<>=(n);k-=(n);} - - -/* - Huffman code decoding is performed using a multi-level table lookup. - The fastest way to decode is to simply build a lookup table whose - size is determined by the longest code. However, the time it takes - to build this table can also be a factor if the data being decoded - is not very long. The most common codes are necessarily the - shortest codes, so those codes dominate the decoding time, and hence - the speed. The idea is you can have a shorter table that decodes the - shorter, more probable codes, and then point to subsidiary tables for - the longer codes. The time it costs to decode the longer codes is - then traded against the time it takes to make longer tables. - - This results of this trade are in the variables lbits and dbits - below. lbits is the number of bits the first level table for literal/ - length codes can decode in one step, and dbits is the same thing for - the distance codes. Subsequent tables are also less than or equal to - those sizes. These values may be adjusted either when all of the - codes are shorter than that, in which case the longest code length in - bits is used, or when the shortest code is *longer* than the requested - table size, in which case the length of the shortest code in bits is - used. - - There are two different values for the two tables, since they code a - different number of possibilities each. The literal/length table - codes 286 possible values, or in a flat code, a little over eight - bits. The distance table codes 30 possible values, or a little less - than five bits, flat. The optimum values for speed end up being - about one bit more than those, so lbits is 8+1 and dbits is 5+1. - The optimum values may differ though from machine to machine, and - possibly even between compilers. Your mileage may vary. - */ - - -FUNC_STATIC const int lbits = 9; /* bits in base literal/length lookup table */ -FUNC_STATIC const int dbits = 6; /* bits in base distance lookup table */ - - -/* If BMAX needs to be larger than 16, then h and x[] should be ulg. */ -#define BMAX 16 /* maximum bit length of any code (16 for explode) */ -#define N_MAX 288 /* maximum number of codes in any set */ - - -FUNC_STATIC unsigned hufts; /* track memory usage */ - - -FUNC_STATIC int huft_build(b, n, s, d, e, t, m) -unsigned *b; /* code lengths in bits (all assumed <= BMAX) */ -unsigned n; /* number of codes (assumed <= N_MAX) */ -unsigned s; /* number of simple-valued codes (0..s-1) */ -const ush *d; /* list of base values for non-simple codes */ -const ush *e; /* list of extra bits for non-simple codes */ -struct huft **t; /* result: starting table */ -int *m; /* maximum lookup bits, returns actual */ -/* Given a list of code lengths and a maximum table size, make a set of - tables to decode that set of codes. Return zero on success, one if - the given code set is incomplete (the tables are still built in this - case), two if the input is invalid (all zero length codes or an - oversubscribed set of lengths), and three if not enough memory. */ -{ - unsigned a; /* counter for codes of length k */ - unsigned c[BMAX+1]; /* bit length count table */ - unsigned f; /* i repeats in table every f entries */ - int g; /* maximum code length */ - int h; /* table level */ - register unsigned i; /* counter, current code */ - register unsigned j; /* counter */ - register int k; /* number of bits in current code */ - int l; /* bits per table (returned in m) */ - register unsigned *p; /* pointer into c[], b[], or v[] */ - register struct huft *q; /* points to current table */ - struct huft r; /* table entry for structure assignment */ - struct huft *u[BMAX]; /* table stack */ - unsigned v[N_MAX]; /* values in order of bit length */ - register int w; /* bits before this table == (l * h) */ - unsigned x[BMAX+1]; /* bit offsets, then code stack */ - unsigned *xp; /* pointer into x */ - int y; /* number of dummy codes added */ - unsigned z; /* number of entries in current table */ - -DEBG("huft1 "); - - /* Generate counts for each bit length */ - memzero(c, sizeof(c)); - - p = b; i = n; - do { - Tracecv(*p, (stderr, (n-i >= ' ' && n-i <= '~' ? "%c %d\n" : "0x%x %d\n"), - n-i, *p)); - c[*p]++; /* assume all entries <= BMAX */ - p++; /* Can't combine with above line (Solaris bug) */ - } while (--i); - if (c[0] == n) /* null input--all zero length codes */ - { - *t = (struct huft *)NULL; - *m = 0; - return 0; - } - -DEBG("huft2 "); - - /* Find minimum and maximum length, bound *m by those */ - l = *m; - for (j = 1; j <= BMAX; j++) - if (c[j]) - break; - k = j; /* minimum code length */ - if ((unsigned)l < j) - l = j; - for (i = BMAX; i; i--) - if (c[i]) - break; - g = i; /* maximum code length */ - if ((unsigned)l > i) - l = i; - *m = l; - -DEBG("huft3 "); - - /* Adjust last length count to fill out codes, if needed */ - for (y = 1 << j; j < i; j++, y <<= 1) - if ((y -= c[j]) < 0) - return 2; /* bad input: more codes than bits */ - if ((y -= c[i]) < 0) - return 2; - c[i] += y; - -DEBG("huft4 "); - - /* Generate starting offsets into the value table for each length */ - x[1] = j = 0; - p = c + 1; xp = x + 2; - while (--i) { /* note that i == g from above */ - *xp++ = (j += *p++); - } - -DEBG("huft5 "); - - /* Make a table of values in order of bit lengths */ - p = b; i = 0; - do { - if ((j = *p++) != 0) - v[x[j]++] = i; - } while (++i < n); - -DEBG("h6 "); - - /* Generate the Huffman codes and for each, make the table entries */ - x[0] = i = 0; /* first Huffman code is zero */ - p = v; /* grab values in bit order */ - h = -1; /* no tables yet--level -1 */ - w = -l; /* bits decoded == (l * h) */ - u[0] = (struct huft *)NULL; /* just to keep compilers happy */ - q = (struct huft *)NULL; /* ditto */ - z = 0; /* ditto */ -DEBG("h6a "); - - /* go through the bit lengths (k already is bits in shortest code) */ - for (; k <= g; k++) - { -DEBG("h6b "); - a = c[k]; - while (a--) - { -DEBG("h6b1 "); - /* here i is the Huffman code of length k bits for value *p */ - /* make tables up to required level */ - while (k > w + l) - { -DEBG1("1 "); - h++; - w += l; /* previous table always l bits */ - - /* compute minimum size table less than or equal to l bits */ - z = (z = g - w) > (unsigned)l ? l : z; /* upper limit on table size */ - if ((f = 1 << (j = k - w)) > a + 1) /* try a k-w bit table */ - { /* too few codes for k-w bit table */ -DEBG1("2 "); - f -= a + 1; /* deduct codes from patterns left */ - xp = c + k; - while (++j < z) /* try smaller tables up to z bits */ - { - if ((f <<= 1) <= *++xp) - break; /* enough codes to use up j bits */ - f -= *xp; /* else deduct codes from patterns */ - } - } -DEBG1("3 "); - z = 1 << j; /* table entries for j-bit table */ - - /* allocate and link in new table */ - if ((q = (struct huft *)gzip_malloc((z + 1)*sizeof(struct huft))) == - (struct huft *)NULL) - { - if (h) - huft_free(u[0]); - return 3; /* not enough memory */ - } -DEBG1("4 "); - hufts += z + 1; /* track memory usage */ - *t = q + 1; /* link to list for huft_free() */ - *(t = &(q->v.t)) = (struct huft *)NULL; - u[h] = ++q; /* table starts after link */ - -DEBG1("5 "); - /* connect to last table, if there is one */ - if (h) - { - x[h] = i; /* save pattern for backing up */ - r.b = (uch)l; /* bits to dump before this table */ - r.e = (uch)(16 + j); /* bits in this table */ - r.v.t = q; /* pointer to this table */ - j = i >> (w - l); /* (get around Turbo C bug) */ - u[h-1][j] = r; /* connect to last table */ - } -DEBG1("6 "); - } -DEBG("h6c "); - - /* set up table entry in r */ - r.b = (uch)(k - w); - if (p >= v + n) - r.e = 99; /* out of values--invalid code */ - else if (*p < s) - { - r.e = (uch)(*p < 256 ? 16 : 15); /* 256 is end-of-block code */ - r.v.n = (ush)(*p); /* simple code is just the value */ - p++; /* one compiler does not like *p++ */ - } - else - { - r.e = (uch)e[*p - s]; /* non-simple--look up in lists */ - r.v.n = d[*p++ - s]; - } -DEBG("h6d "); - - /* fill code-like entries with r */ - f = 1 << (k - w); - for (j = i >> w; j < z; j += f) - q[j] = r; - - /* backwards increment the k-bit code i */ - for (j = 1 << (k - 1); i & j; j >>= 1) - i ^= j; - i ^= j; - - /* backup over finished tables */ - while ((i & ((1 << w) - 1)) != x[h]) - { - h--; /* don't need to update q */ - w -= l; - } -DEBG("h6e "); - } -DEBG("h6f "); - } - -DEBG("huft7 "); - - /* Return true (1) if we were given an incomplete table */ - return y != 0 && g != 1; -} - - - -FUNC_STATIC int huft_free(t) -struct huft *t; /* table to free */ -/* Free the malloc'ed tables built by huft_build(), which makes a linked - list of the tables it made, with the links in a dummy first entry of - each table. */ -{ - register struct huft *p, *q; - - - /* Go through linked list, freeing from the malloced (t[-1]) address. */ - p = t; - while (p != (struct huft *)NULL) - { - q = (--p)->v.t; - gzip_free((char*)p); - p = q; - } - return 0; -} - - -FUNC_STATIC int inflate_codes(tl, td, bl, bd) -struct huft *tl, *td; /* literal/length and distance decoder tables */ -int bl, bd; /* number of bits decoded by tl[] and td[] */ -/* inflate (decompress) the codes in a deflated (compressed) block. - Return an error code or zero if it all goes ok. */ -{ - register unsigned e; /* table entry flag/number of extra bits */ - unsigned n, d; /* length and index for copy */ - unsigned w; /* current window position */ - struct huft *t; /* pointer to table entry */ - unsigned ml, md; /* masks for bl and bd bits */ - register ulg b; /* bit buffer */ - register unsigned k; /* number of bits in bit buffer */ - - - /* make local copies of globals */ - b = bb; /* initialize bit buffer */ - k = bk; - w = wp; /* initialize window position */ - - /* inflate the coded data */ - ml = mask_bits[bl]; /* precompute masks for speed */ - md = mask_bits[bd]; - for (;;) /* do until end of block */ - { - NEEDBITS((unsigned)bl) - if ((e = (t = tl + ((unsigned)b & ml))->e) > 16) - do { - if (e == 99) - return 1; - DUMPBITS(t->b) - e -= 16; - NEEDBITS(e) - } while ((e = (t = t->v.t + ((unsigned)b & mask_bits[e]))->e) > 16); - DUMPBITS(t->b) - if (e == 16) /* then it's a literal */ - { - slide[w++] = (uch)t->v.n; - Tracevv((stderr, "%c", slide[w-1])); - if (w == WSIZE) - { - flush_output(w); - w = 0; - } - } - else /* it's an EOB or a length */ - { - /* exit if end of block */ - if (e == 15) - break; - - /* get length of block to copy */ - NEEDBITS(e) - n = t->v.n + ((unsigned)b & mask_bits[e]); - DUMPBITS(e); - - /* decode distance of block to copy */ - NEEDBITS((unsigned)bd) - if ((e = (t = td + ((unsigned)b & md))->e) > 16) - do { - if (e == 99) - return 1; - DUMPBITS(t->b) - e -= 16; - NEEDBITS(e) - } while ((e = (t = t->v.t + ((unsigned)b & mask_bits[e]))->e) > 16); - DUMPBITS(t->b) - NEEDBITS(e) - d = w - t->v.n - ((unsigned)b & mask_bits[e]); - DUMPBITS(e) - Tracevv((stderr,"\\[%d,%d]", w-d, n)); - - /* do the copy */ - do { - n -= (e = (e = WSIZE - ((d &= WSIZE-1) > w ? d : w)) > n ? n : e); -#if !defined(NOMEMCPY) && !defined(INFLATE_DEBUG) - if (w - d >= e) /* (this test assumes unsigned comparison) */ - { - memcpy(slide + w, slide + d, e); - w += e; - d += e; - } - else /* do it slow to avoid memcpy() overlap */ -#endif /* !NOMEMCPY */ - do { - slide[w++] = slide[d++]; - Tracevv((stderr, "%c", slide[w-1])); - } while (--e); - if (w == WSIZE) - { - flush_output(w); - w = 0; - } - } while (n); - } - } - - - /* restore the globals from the locals */ - wp = w; /* restore global window pointer */ - bb = b; /* restore global bit buffer */ - bk = k; - - /* done */ - return 0; -} - - - -FUNC_STATIC int inflate_stored() -/* "decompress" an inflated type 0 (stored) block. */ -{ - unsigned n; /* number of bytes in block */ - unsigned w; /* current window position */ - register ulg b; /* bit buffer */ - register unsigned k; /* number of bits in bit buffer */ - -DEBG(""); - return 0; -} - - - -FUNC_STATIC int inflate_fixed() -/* decompress an inflated type 1 (fixed Huffman codes) block. We should - either replace this with a custom decoder, or at least precompute the - Huffman tables. */ -{ - int i; /* temporary variable */ - struct huft *tl; /* literal/length code table */ - struct huft *td; /* distance code table */ - int bl; /* lookup bits for tl */ - int bd; /* lookup bits for td */ - unsigned l[288]; /* length list for huft_build */ - -DEBG(" 1) - { - huft_free(tl); - - DEBG(">"); - return i; - } - - - /* decompress until an end-of-block code */ - if (inflate_codes(tl, td, bl, bd)) - return 1; - - - /* free the decoding tables, return */ - huft_free(tl); - huft_free(td); - return 0; -} - - - -FUNC_STATIC int inflate_dynamic() -/* decompress an inflated type 2 (dynamic Huffman codes) block. */ -{ - int i; /* temporary variables */ - unsigned j; - unsigned l; /* last length */ - unsigned m; /* mask for bit lengths table */ - unsigned n; /* number of lengths to get */ - struct huft *tl; /* literal/length code table */ - struct huft *td; /* distance code table */ - int bl; /* lookup bits for tl */ - int bd; /* lookup bits for td */ - unsigned nb; /* number of bit length codes */ - unsigned nl; /* number of literal/length codes */ - unsigned nd; /* number of distance codes */ -#ifdef PKZIP_BUG_WORKAROUND - unsigned ll[288+32]; /* literal/length and distance code lengths */ -#else - unsigned ll[286+30]; /* literal/length and distance code lengths */ -#endif - register ulg b; /* bit buffer */ - register unsigned k; /* number of bits in bit buffer */ - -DEBG(" 288 || nd > 32) -#else - if (nl > 286 || nd > 30) -#endif - return 1; /* bad lengths */ - -DEBG("dyn1 "); - - /* read in bit-length-code lengths */ - for (j = 0; j < nb; j++) - { - NEEDBITS(3) - ll[border[j]] = (unsigned)b & 7; - DUMPBITS(3) - } - for (; j < 19; j++) - ll[border[j]] = 0; - -DEBG("dyn2 "); - - /* build decoding table for trees--single level, 7 bit lookup */ - bl = 7; - if ((i = huft_build(ll, 19, 19, NULL, NULL, &tl, &bl)) != 0) - { - if (i == 1) - huft_free(tl); - return i; /* incomplete code set */ - } - -DEBG("dyn3 "); - - /* read in literal and distance code lengths */ - n = nl + nd; - m = mask_bits[bl]; - i = l = 0; - while ((unsigned)i < n) - { - NEEDBITS((unsigned)bl) - j = (td = tl + ((unsigned)b & m))->b; - DUMPBITS(j) - j = td->v.n; - if (j < 16) /* length of code in bits (0..15) */ - ll[i++] = l = j; /* save last length in l */ - else if (j == 16) /* repeat last length 3 to 6 times */ - { - NEEDBITS(2) - j = 3 + ((unsigned)b & 3); - DUMPBITS(2) - if ((unsigned)i + j > n) - return 1; - while (j--) - ll[i++] = l; - } - else if (j == 17) /* 3 to 10 zero length codes */ - { - NEEDBITS(3) - j = 3 + ((unsigned)b & 7); - DUMPBITS(3) - if ((unsigned)i + j > n) - return 1; - while (j--) - ll[i++] = 0; - l = 0; - } - else /* j == 18: 11 to 138 zero length codes */ - { - NEEDBITS(7) - j = 11 + ((unsigned)b & 0x7f); - DUMPBITS(7) - if ((unsigned)i + j > n) - return 1; - while (j--) - ll[i++] = 0; - l = 0; - } - } - -DEBG("dyn4 "); - - /* free decoding table for trees */ - huft_free(tl); - -DEBG("dyn5 "); - - /* restore the global bit buffer */ - bb = b; - bk = k; - -DEBG("dyn5a "); - - /* build the decoding tables for literal/length and distance codes */ - bl = lbits; - if ((i = huft_build(ll, nl, 257, cplens, cplext, &tl, &bl)) != 0) - { -DEBG("dyn5b "); - if (i == 1) { - error(" incomplete literal tree\n"); - huft_free(tl); - } - return i; /* incomplete code set */ - } -DEBG("dyn5c "); - bd = dbits; - if ((i = huft_build(ll + nl, nd, 0, cpdist, cpdext, &td, &bd)) != 0) - { -DEBG("dyn5d "); - if (i == 1) { - error(" incomplete distance tree\n"); -#ifdef PKZIP_BUG_WORKAROUND - i = 0; - } -#else - huft_free(td); - } - huft_free(tl); - return i; /* incomplete code set */ -#endif - } - -DEBG("dyn6 "); - - /* decompress until an end-of-block code */ - if (inflate_codes(tl, td, bl, bd)) - return 1; - -DEBG("dyn7 "); - - /* free the decoding tables, return */ - huft_free(tl); - huft_free(td); - - DEBG(">"); - return 0; -} - - - -FUNC_STATIC int inflate_block(e) -int *e; /* last block flag */ -/* decompress an inflated block */ -{ - unsigned t; /* block type */ - register ulg b; /* bit buffer */ - register unsigned k; /* number of bits in bit buffer */ - - DEBG(""); - - /* bad block type */ - return 2; -} - - - -FUNC_STATIC int inflate() -/* decompress an inflated entry */ -{ - int e; /* last block flag */ - int r; /* result code */ - unsigned h; /* maximum struct huft's malloc'ed */ - - /* initialize window, bit buffer */ - wp = 0; - bk = 0; - bb = 0; - - - /* decompress until the last block */ - h = 0; - do { - hufts = 0; - if ((r = inflate_block(&e)) != 0) { - return r; - } - if (hufts > h) - h = hufts; - } while (!e); - - /* Undo too much lookahead. The next read will be byte aligned so we - * can discard unused bits in the last meaningful byte. - */ - while (bk >= 8) { - bk -= 8; - inptr--; - } - - /* flush out slide */ - flush_output(wp); - - - /* return success */ -#ifdef INFLATE_DEBUG -#ifdef EFI_COMPILE - Print(L"<%d> ", h); -#else - printf("<%d> ", h); -#endif -#endif /* INFLATE_DEBUG */ - return 0; -} - -/********************************************************************** - * - * The following are support routines for inflate.c - * - **********************************************************************/ - -static ulg crc_32_tab[256]; -static ulg crc; /* initialized in makecrc() so it'll reside in bss */ -#define CRC_VALUE (crc ^ 0xffffffffUL) - -/* - * Code to compute the CRC-32 table. Borrowed from - * gzip-1.0.3/makecrc.c. - */ - -static void -makecrc(void) -{ -/* Not copyrighted 1990 Mark Adler */ - - unsigned long c; /* crc shift register */ - unsigned long e; /* polynomial exclusive-or pattern */ - int i; /* counter for all possible eight bit values */ - int k; /* byte being shifted into crc apparatus */ - - /* terms of polynomial defining this crc (except x^32): */ - static const int p[] = {0,1,2,4,5,7,8,10,11,12,16,22,23,26}; - - /* Make exclusive-or pattern from polynomial */ - e = 0; - for (i = 0; i < sizeof(p)/sizeof(int); i++) - e |= 1L << (31 - p[i]); - - crc_32_tab[0] = 0; - - for (i = 1; i < 256; i++) - { - c = 0; - for (k = i | 256; k != 1; k >>= 1) - { - c = c & 1 ? (c >> 1) ^ e : c >> 1; - if (k & 1) - c ^= e; - } - crc_32_tab[i] = c; - } - - /* this is initialized here so this code could reside in ROM */ - crc = (ulg)0xffffffffUL; /* shift register contents */ -} - -/* gzip flag byte */ -#define ASCII_FLAG 0x01 /* bit 0 set: file probably ASCII text */ -#define CONTINUATION 0x02 /* bit 1 set: continuation of multi-part gzip file */ -#define EXTRA_FIELD 0x04 /* bit 2 set: extra field present */ -#define ORIG_NAME 0x08 /* bit 3 set: original file name present */ -#define COMMENT 0x10 /* bit 4 set: file comment present */ -#define ENCRYPTED 0x20 /* bit 5 set: file is encrypted */ -#define RESERVED 0xC0 /* bit 6,7: reserved */ - -/* - * check for valid gzip signature - * return: - * 0 : valid gzip archive - * -1: invalid gzip archive - */ -int -gzip_probe(uch *buf, unsigned long size) -{ - /* FIXME this is wrong here! FIXME!!!!*/ - if (size < 4) return -1; - - if (buf[0] != 037 || - ((buf[1] != 0213) && (buf[1] != 0236))) return -1; - - /* We only support method #8, DEFLATED */ - if (buf[2] != 8) return -1; - - if ((buf[3] & ENCRYPTED) != 0) return -1; - - if ((buf[3] & CONTINUATION) != 0) return -1; - - if ((buf[3] & RESERVED) != 0) return -1; - - return 0; -} - - -/* - * Do the uncompression! - */ -static int gunzip(void) -{ - uch flags; - unsigned char magic[2]; /* magic header */ - char method; - ulg orig_crc = 0; /* original crc */ - ulg orig_len = 0; /* original uncompressed length */ - int res; - - magic[0] = (unsigned char)get_byte(); - magic[1] = (unsigned char)get_byte(); - method = (unsigned char)get_byte(); - - if (magic[0] != 037 || - ((magic[1] != 0213) && (magic[1] != 0236))) { - error("bad gzip magic numbers"); - return -1; - } - - /* We only support method #8, DEFLATED */ - if (method != 8) { - error("internal error, invalid method"); - return -1; - } - - flags = (uch)get_byte(); - if ((flags & ENCRYPTED) != 0) { - error("Input is encrypted\n"); - return -1; - } - if ((flags & CONTINUATION) != 0) { - error("Multi part input\n"); - return -1; - } - if ((flags & RESERVED) != 0) { - error("Input has invalid flags\n"); - return -1; - } - (ulg)get_byte(); /* Get timestamp */ - ((ulg)get_byte()) << 8; - ((ulg)get_byte()) << 16; - ((ulg)get_byte()) << 24; - - (void)get_byte(); /* Ignore extra flags for the moment */ - (void)get_byte(); /* Ignore OS type for the moment */ - - if ((flags & EXTRA_FIELD) != 0) { - unsigned len = (unsigned)get_byte(); - len |= ((unsigned)get_byte())<<8; - while (len--) (void)get_byte(); - } - - /* Get original file name if it was truncated */ - if ((flags & ORIG_NAME) != 0) { - /* Discard the old name */ - while (get_byte() != 0) /* null */ ; - } - - /* Discard file comment if any */ - if ((flags & COMMENT) != 0) { - while (get_byte() != 0) /* null */ ; - } - - /* Decompress */ - if ((res = inflate())) { - switch (res) { - case 0: - break; - case 1: - error("invalid compressed format (err=1)"); - break; - case 2: - error("invalid compressed format (err=2)"); - break; - case 3: - error("out of memory"); - break; - default: - error("invalid compressed format (other)"); - } - return -1; - } - - /* Get the crc and original length */ - /* crc32 (see algorithm.doc) - * uncompressed input size modulo 2^32 - */ - orig_crc = (ulg) get_byte(); - orig_crc |= (ulg) get_byte() << 8; - orig_crc |= (ulg) get_byte() << 16; - orig_crc |= (ulg) get_byte() << 24; - - orig_len = (ulg) get_byte(); - orig_len |= (ulg) get_byte() << 8; - orig_len |= (ulg) get_byte() << 16; - orig_len |= (ulg) get_byte() << 24; - - /* Validate decompression */ - if (orig_crc != CRC_VALUE) { - error("crc error"); - return -1; - } - if (orig_len != bytes_out) { - error("length error"); - return -1; - } - return 0; -} - - diff --git a/ia32/system.c b/ia32/system.c index 7c2228a..1dbbc58 100644 --- a/ia32/system.c +++ b/ia32/system.c @@ -164,6 +164,7 @@ sysdeps_create_boot_params( boot_params_t *bp, CHAR8 *cmdline, memdesc_t *initrd, + memdesc_t *vmcode, /* no use for ia32 now*/ UINTN *cookie) { mmap_desc_t mdesc; @@ -270,7 +271,7 @@ sysdeps_create_boot_params( if (initrd->start_addr && initrd->pgcnt) { /* %%TBD - This will probably have to be changed. */ bp->s.initrd_start = (UINT32)initrd->start_addr; - bp->s.initrd_size = (UINT32)(initrd->pgcnt * EFI_PAGE_SIZE); + bp->s.initrd_size = (UINT32)(initrd->size); /* * This is the RAMdisk root device for RedHat 2.2.x diff --git a/ia64/gzip.c b/ia64/gzip.c index bb5a065..01e28c8 100644 --- a/ia64/gzip.c +++ b/ia64/gzip.c @@ -37,6 +37,8 @@ #include "private.h" #include "setjmp.h" +#define LD_NAME L"gzip_ia64" + #define memzero(s, n) Memset((VOID *)(s), 0, (n)) #define memcpy(a,b,n) Memcpy((VOID *)(a),(b),(n)) @@ -68,6 +70,7 @@ typedef struct segment { #define CHUNK_FL_VALID 0x1 #define CHUNK_FL_LOAD 0x2 +#define CHUNK_FL_X 0x4 #define CHUNK_CAN_LOAD(n) chunks[(n)].flags |= CHUNK_FL_LOAD #define CHUNK_NO_LOAD(n) chunks[(n)].flags &= ~CHUNK_FL_LOAD @@ -391,6 +394,9 @@ first_block (const char *buf, long blocksize) continue; } + if (bswap32(phdrs[i].p_flags) & PF_X) + chunks[i].flags |= CHUNK_FL_X; + CHUNK_CAN_LOAD(i); /* mark no load chunk */ VERB_PRT(3, @@ -433,7 +439,7 @@ first_block (const char *buf, long blocksize) if (alloc_kmem((void *)low_addr, pages) == -1) { VOID *new_addr; - ERR_PRT((L"%s : AllocatePages(%d, 0x%lx) for kernel failed\n", LD_NAME, pages, low_addr)); + VERB_PRT(1, (L"%s : AllocatePages(%d, 0x%lx) for kernel failed\n", LD_NAME, pages, low_addr)); if (ia64_can_relocate() == 0) { ERR_PRT((L"relocation is disabled, cannot load kernel")); @@ -458,7 +464,7 @@ first_block (const char *buf, long blocksize) /* unsigned arithmetic */ load_offset = (UINTN) (new_addr - ROUNDDOWN((UINTN) low_addr,256*MB)); - ERR_PRT((L"low_addr=0x%lx new_addr=0x%lx offset=0x%lx", low_addr, new_addr, load_offset)); + VERB_PRT(1, (L"low_addr=0x%lx new_addr=0x%lx offset=0x%lx", low_addr, new_addr, load_offset)); /* * correct various addresses for non-zero load_offset @@ -566,6 +572,8 @@ tail: if (cnt > outcnt) cnt = outcnt; Memcpy(dst, src, cnt); + if (cp->flags & CHUNK_FL_X) + flush_dcache (dst, cnt); file_offset += cnt; outcnt -= cnt; diff --git a/ia64/gzip_loader.c b/ia64/gzip_loader.c index 4e06db4..a84851f 100644 --- a/ia64/gzip_loader.c +++ b/ia64/gzip_loader.c @@ -30,6 +30,8 @@ #include "loader.h" #include "gzip.h" +#define LD_NAME L"gzip_ia64" + static INTN gzip_probe_format(CHAR16 *kname) { diff --git a/ia64/plain_loader.c b/ia64/plain_loader.c index 92d009e..150f7a0 100644 --- a/ia64/plain_loader.c +++ b/ia64/plain_loader.c @@ -288,7 +288,7 @@ load_elf(fops_fd_t fd, kdesc_t *kd) if (alloc_kmem(low_addr, pages) == -1) { VOID *new_addr; - ERR_PRT((L"%s : AllocatePages(%d, 0x%lx) for kernel failed\n", LD_NAME, pages, low_addr)); + VERB_PRT(1, (L"%s : AllocatePages(%d, 0x%lx) for kernel failed\n", LD_NAME, pages, low_addr)); if (ia64_can_relocate() == 0) { ERR_PRT((L"relocation is disabled, cannot load kernel")); @@ -387,6 +387,8 @@ load_elf(fops_fd_t fd, kdesc_t *kd) ret = read_file(fd, filesz, (CHAR8 *)phdrs[i].p_paddr); if (ret == ELILO_LOAD_ABORTED) goto load_abort; if (ret == ELILO_LOAD_ERROR) goto out; + if (bswap32(phdrs[i].p_flags) & PF_X) + flush_dcache ((CHAR8 *)phdrs[i].p_paddr, filesz); /* * update file position diff --git a/ia64/private.h b/ia64/private.h index bb09faf..c8f34c7 100644 --- a/ia64/private.h +++ b/ia64/private.h @@ -31,5 +31,7 @@ extern INTN query_fpswa(VOID **); extern INTN ia64_can_relocate(); +extern void flush_dcache (CHAR8 *addr, UINT64 len); + #endif /* __ELILO_PRIVATE_IA64_H__ */ diff --git a/ia64/setjmp.S b/ia64/setjmp.S index ce7e67c..4bc2103 100644 --- a/ia64/setjmp.S +++ b/ia64/setjmp.S @@ -78,6 +78,7 @@ setjmp: /* __sigsetjmp(__jmp_buf buf, int savemask) */ + .proc __sigsetjmp __sigsetjmp: //.prologue ASM_UNW_PRLG_RP|ASM_UNW_PRLG_PFS, ASM_UNW_PRLG_GRSAVE(2) alloc loc1=ar.pfs,2,2,2,0 diff --git a/ia64/sysdeps.h b/ia64/sysdeps.h index ab447fb..e11e6b7 100644 --- a/ia64/sysdeps.h +++ b/ia64/sysdeps.h @@ -65,8 +65,11 @@ typedef struct ia64_boot_params { UINTN initrd_start; /* virtual address where the initial ramdisk begins */ UINTN initrd_size; /* how big is the initial ramdisk */ + UINTN vmcode_start; /* virtual address where the boot time vmcode begins */ + UINTN vmcode_size; /* how big is the boot module */ UINTN loader_addr; /* start address of boot loader */ UINTN loader_size; /* size of loader code & data */ + } boot_params_t; typedef struct sys_img_options { diff --git a/ia64/system.c b/ia64/system.c index 388d435..bb826ef 100644 --- a/ia64/system.c +++ b/ia64/system.c @@ -39,7 +39,7 @@ extern loader_ops_t plain_loader, gzip_loader; * IA-64 specific boot paramters initialization routine */ INTN -sysdeps_create_boot_params(boot_params_t *bp, CHAR8 *cmdline, memdesc_t *initrd, UINTN *cookie) +sysdeps_create_boot_params(boot_params_t *bp, CHAR8 *cmdline, memdesc_t *initrd, memdesc_t *vmcode, UINTN *cookie) { UINTN cols, rows; SIMPLE_TEXT_OUTPUT_INTERFACE *conout; @@ -64,7 +64,12 @@ sysdeps_create_boot_params(boot_params_t *bp, CHAR8 *cmdline, memdesc_t *initrd, bp->efi_memdesc_version = mdesc.desc_version; bp->command_line = (UINTN)cmdline; bp->initrd_start = (UINTN) initrd->start_addr; - bp->initrd_size = initrd->pgcnt << EFI_PAGE_SHIFT; + bp->initrd_size = initrd->size; + DBG_PRT((L"Got initrd @ 0x%lx (%d bytes)", initrd->start_addr, initrd->size)); + + bp->vmcode_start = (UINTN) vmcode->start_addr; + bp->vmcode_size = vmcode->size; + DBG_PRT((L"Got vmcode @ 0x%lx (%d bytes)", vmcode->start_addr, vmcode->size)); /* fetch console parameters: */ conout = systab->ConOut; @@ -135,3 +140,20 @@ sysdeps_initrd_get_addr(kdesc_t *kd, memdesc_t *imem) return 0; } +/* Flush data cache [addr; addr + len], and sync with icache. */ +void +flush_dcache (CHAR8 *addr, UINT64 len) +{ + /* Cache line length is at least 32. */ + UINT64 a = (UINT64)addr & ~0x1f; + + VERB_PRT(3, Print(L"Flush 0x%lx-", a)); + + /* Flush data. */ + for (len = (len + 31) & ~0x1f; len > 0; len -= 0x20, a += 0x20) + asm volatile ("fc %0" : : "r" (a)); + /* Sync and serialize. Maybe extra. */ + asm volatile (";; sync.i;; srlz.i;;"); + + VERB_PRT(3, Print(L"0x%lx\n", a)); +} diff --git a/ia64/inflate.c b/inflate.c similarity index 97% rename from ia64/inflate.c rename to inflate.c index 8273c98..843c93b 100644 --- a/ia64/inflate.c +++ b/inflate.c @@ -1053,42 +1053,6 @@ makecrc(void) crc = (ulg)0xffffffffUL; /* shift register contents */ } -/* gzip flag byte */ -#define ASCII_FLAG 0x01 /* bit 0 set: file probably ASCII text */ -#define CONTINUATION 0x02 /* bit 1 set: continuation of multi-part gzip file */ -#define EXTRA_FIELD 0x04 /* bit 2 set: extra field present */ -#define ORIG_NAME 0x08 /* bit 3 set: original file name present */ -#define COMMENT 0x10 /* bit 4 set: file comment present */ -#define ENCRYPTED 0x20 /* bit 5 set: file is encrypted */ -#define RESERVED 0xC0 /* bit 6,7: reserved */ - -/* - * check for valid gzip signature - * return: - * 0 : valid gzip archive - * -1: invalid gzip archive - */ -int -gzip_probe(uch *buf, unsigned long size) -{ - if (size < 4) return -1; - - if (buf[0] != 037 || - ((buf[1] != 0213) && (buf[1] != 0236))) return -1; - - /* We only support method #8, DEFLATED */ - if (buf[2] != 8) return -1; - - if ((buf[3] & ENCRYPTED) != 0) return -1; - - if ((buf[3] & CONTINUATION) != 0) return -1; - - if ((buf[3] & RESERVED) != 0) return -1; - - return 0; -} - - /* * Do the uncompression! */ diff --git a/initrd.c b/initrd.c index 92b6f44..09ed0f0 100644 --- a/initrd.c +++ b/initrd.c @@ -29,7 +29,7 @@ #include "elilo.h" /* - * This function allocates memory for the initial ramdisk (initrd) and loads it to memory + * This function allocates memory for file image and loads it to memory * OUTPUTS: * - ELILO_LOAD_SUCCESS: if everything works * - ELILO_LOAD_ABORTED: in case the user decided to abort loading @@ -38,12 +38,12 @@ * Adapted from Bill Nottingham patch for ELI. */ INTN -load_initrd(CHAR16 *filename, memdesc_t *initrd) +load_file(CHAR16 *filename, memdesc_t *image) { EFI_STATUS status; - VOID *start_addr = initrd->start_addr; - UINT64 size = 0; + VOID *start_addr = image->start_addr; UINTN pgcnt; + UINT64 size = 0; fops_fd_t fd; INTN ret = ELILO_LOAD_ERROR; @@ -53,46 +53,48 @@ load_initrd(CHAR16 *filename, memdesc_t *initrd) /* Open the file */ status = fops_open(filename, &fd); if (EFI_ERROR(status)) { - ERR_PRT((L"Open initrd file %s failed: %r", filename, status)); + ERR_PRT((L"Open file %s failed: %r", filename, status)); return -1; } - DBG_PRT((L"initrd_open %s worked", filename)); + DBG_PRT((L"open %s worked", filename)); /* warning: this function allocates memory */ status = fops_infosize(fd, &size); if (EFI_ERROR(status)) { - ERR_PRT((L"Couldn't read initrd file %s info %r",filename, status)); + ERR_PRT((L"Couldn't read file %s info %r", filename, status)); goto error; } + image->size = size; + /* round up to get required number of pages (4KB) */ - initrd->pgcnt = pgcnt = EFI_SIZE_TO_PAGES(size); - - + image->pgcnt = pgcnt = EFI_SIZE_TO_PAGES(image->size); start_addr = alloc_pages(pgcnt, EfiLoaderData, start_addr ? AllocateAddress : AllocateAnyPages, start_addr); if (start_addr == NULL) { - ERR_PRT((L"Failed to allocate %d pages for initrd", pgcnt)); + ERR_PRT((L"Failed to allocate %d pages for %s image", pgcnt, + filename)); goto error; } - VERB_PRT(2, Print(L"initrd: total_size: %ld bytes base: 0x%lx pages %d\n", - size, (UINT64)start_addr, pgcnt)); + VERB_PRT(2, Print(L"%s image: total_size: %ld bytes base: 0x%lx " + "pages %d\n", filename, image->size, + (UINTN)start_addr, pgcnt)); - Print(L"Loading initrd %s...", filename); + Print(L"Loading file %s...", filename); - ret = read_file(fd, size, start_addr); + ret = read_file(fd, image->size, start_addr); fops_close(fd); if (ret != ELILO_LOAD_SUCCESS) { - ERR_PRT((L"read initrd(%s) failed: %d", filename, ret)); + ERR_PRT((L"read image(%s) failed: %d", filename, ret)); goto error; } Print(L"done\n"); - initrd->start_addr = start_addr; + image->start_addr = start_addr; return ELILO_LOAD_SUCCESS; @@ -103,8 +105,9 @@ error: * make sure nothing is passed to kernel * in case of error. */ - initrd->start_addr = 0; - initrd->pgcnt = 0; + image->start_addr = 0; + image->pgcnt = 0; + image->size = 0; return ret; }